Message transmission method, device, related equipment and storage medium

By carrying slice identifiers in the source address field of the message header, the problem of introducing slice ID in 5G bearer network slicing technology is solved, and fine-grained slices and large-scale slice support of the forwarding surface are realized, which improves processing efficiency and compatibility.

CN115334589BActive Publication Date: 2025-04-08CHINA MOBILE COMM LTD RES INST +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202110513378.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-05-11
Publication Date
2025-04-08
Estimated Expiration
2041-05-11

AI Technical Summary

Technical Problem

In 5G bearer network slicing technology, how to effectively introduce slice ID to the forwarding surface to achieve isolation between different services and high-quality service guarantee.

Method used

By carrying slice identifiers in the source address field of the message header, messages with slice identifiers are generated and transmitted, so that the slice ID and physical resources are associated and isolated on the forwarding plane.

Benefits of technology

It realizes fine-grained slicing on the forwarding surface, supports large-scale slicing scenarios, improves processing efficiency and compatibility, and does not have security risks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115334589B_ABST
    Figure CN115334589B_ABST
Patent Text Reader

Abstract

The present application discloses a message transmission method, device, network node and storage medium. The method includes: a first network node determines a slice identifier of a first message; based on the slice identifier and the first message, a second message is generated; a source address field in a message header of the second message carries the slice identifier; and the second message is sent.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of Internet Protocol (IP) networks, and in particular to a message transmission method, apparatus, related equipment and storage medium. Background Art

[0002] Network slicing is one of the key technologies of the fifth generation mobile communication technology (5G). Network slicing refers to the diversion management of network data similar to traffic management. Its essence is to divide the existing physical network into multiple virtual networks of different types at the logical level, and divide them according to the service needs of different users, such as latency, bandwidth, reliability and other indicators, so as to cope with complex and changing application scenarios. Through network slicing, mobile network operators can divide users into different types, each of which has different service requests, and manage the slice types and services that each user is eligible to use according to the service level agreement (SLA).

[0003] The 5G bearer network is part of the 5G end-to-end service path, and bearer network slicing means: by virtualizing the network topology resources (such as links, nodes, ports and internal resources of network elements), multiple logical virtual transmission subnets are divided in the transmission hardware facilities. The virtual transmission subnet has independent management plane, control plane and forwarding plane, and independently supports various services, so as to achieve isolation between different services.

[0004] From the perspective of IP forwarding, data transmission mainly includes two aspects: the control plane and the forwarding plane. Therefore, the bearer network slicing technology is also mainly distributed in the control plane and the forwarding plane.

[0005] For bearer network slicing technology, slice IDs need to be introduced on the forwarding plane. How to introduce slice IDs is a problem that needs to be solved urgently. Summary of the invention

[0006] In order to solve the related technical problems, the embodiments of the present application provide a message transmission method, apparatus, related equipment and storage medium.

[0007] The technical solution of the embodiment of the present application is implemented as follows:

[0008] The embodiment of the present application provides a message transmission method, which is applied to a first network node, including:

[0009] Determine a slice identifier of the first message;

[0010] Based on the slice identifier and the first message, a second message is generated; the source address field in the message header of the second message carries the slice identifier;

[0011] The second message is sent.

[0012] In the above scheme, the message header of the second message also carries the first information, and the first information indicates that the source address field of the second message header carries the slice identifier.

[0013] In the above solution, the traffic class (Traffic Class) field or the flow label (Flow Label) field in the message header of the second message carries the first information.

[0014] In the above scheme, the function field in the segment identifier (SID) of the source address field in the message header of the second message carries the slice identifier.

[0015] In the above solution, determining the slice identifier of the first message includes:

[0016] Determining a service characteristic of the first message;

[0017] Search the slice identifier corresponding to the service characteristics of the first message in the first table; the first table is at least provided with a correspondence between the service characteristics and the slice identifier.

[0018] In the above scheme, the method further includes:

[0019] Receiving second information sent by a software defined network (SDN) controller or a network management system; the second information at least includes a service feature and a corresponding slice identifier;

[0020] The first table is formed using the second information.

[0021] In the above solution, the sending of the second message includes:

[0022] Determining an outbound interface for the second message;

[0023] Searching in a second table for a physical resource corresponding to an outbound interface of the second message and the slice identifier; the second table at least includes a correspondence between an outbound interface, a slice identifier, and a physical resource;

[0024] The second message is sent using the found physical resources.

[0025] In the above solution, determining the outgoing interface of the second message includes:

[0026] The outbound interface of the second message is determined by searching the routing table.

[0027] In the above scheme, the method further includes:

[0028] Receiving third information sent by the SDN or the network management system; the third information at least includes a correspondence between an outbound interface, a slice identifier, and a physical resource;

[0029] The second table is formed using the third information.

[0030] The embodiment of the present application further provides a message transmission method, which is applied to a second network node, including:

[0031] Receive a second message; the source address field in the message header of the second message carries a slice identifier;

[0032] The second message is forwarded using the slice identifier.

[0033] In the above scheme, the message header of the second message also carries the first information, and the first information indicates that the source address field of the second message header carries the slice identifier.

[0034] In the above solution, the Traffic Class field or the Flow Label field in the message header of the second message carries the first information.

[0035] In the above scheme, the function field in the SID of the source address field in the message header of the second message carries the slice identifier.

[0036] In the above solution, the step of forwarding the second message by using the slice identifier includes:

[0037] Determine the outgoing interface of the second message by searching the routing forwarding table;

[0038] Searching the physical resource corresponding to the output interface and the slice identifier in the third table; the second table at least has a corresponding relationship between the output interface, the slice identifier and the physical resource;

[0039] The second message is forwarded using the found physical resources.

[0040] In the above scheme, the method further includes:

[0041] Receiving fourth information sent by the SDN or the network management system; the fourth information at least includes a correspondence between an outbound interface, a slice identifier, and a physical resource;

[0042] The third table is formed using the fourth information.

[0043] The embodiment of the present application also provides a message transmission device, including:

[0044] A first determining unit, used to determine a slice identifier of a first message;

[0045] A generating unit, configured to generate a second message based on the slice identifier and the first message; the source address field in the message header of the second message carries the slice identifier;

[0046] A transmission unit, configured to send the second message.

[0047] The embodiment of the present application also provides a message transmission device, including:

[0048] A receiving unit, configured to receive a second message; a source address field in a message header of the second message carries a slice identifier;

[0049] A forwarding unit is used to forward the second message using the slice identifier.

[0050] The embodiment of the present application further provides a first network node, including:

[0051] A first processor is configured to determine a slice identifier of a first message; and generate a second message based on the slice identifier and the first message; a source address field in a message header of the second message carries the slice identifier;

[0052] The first communication interface is used to send the second message.

[0053] The embodiment of the present application further provides a second network node, including: a second communication interface and a second processor; wherein,

[0054] The second communication interface is used to receive a second message; the source address field in the message header of the second message carries a slice identifier;

[0055] The second processor is used to forward the second message through the second communication interface using the slice identifier.

[0056] The embodiment of the present application further provides a first network node, comprising: a first processor and a first memory for storing a computer program that can be run on the processor,

[0057] The first processor is used to execute the steps of any one of the above-mentioned methods on the first network node side when running the computer program.

[0058] The embodiment of the present application further provides a second network node, including: a second processor and a second memory for storing a computer program that can be run on the processor,

[0059] Wherein, the second processor is used to execute the steps of any one of the above-mentioned methods on the second network node side when running the computer program.

[0060] An embodiment of the present application further provides a storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the computer program implements the steps of any of the above-mentioned methods on the first network node side, or implements the steps of any of the above-mentioned methods on the second network node side.

[0061] The message transmission method, apparatus, related equipment and storage medium provided in the embodiments of the present application, the first network node determines the slice identifier of the first message; based on the slice identifier and the first message, a second message is generated; the source address field in the message header of the second message carries the slice identifier; the second message is sent; the second network node receives the second message; the source address field in the message header of the second message carries the slice identifier; the second message is forwarded using the slice identifier. The solution provided in the embodiments of the present application, in which the source address field in the message header carries the slice identifier, does not have security risks, has strong feasibility, high processing efficiency, and strong compatibility with related technologies. BRIEF DESCRIPTION OF THE DRAWINGS

[0062] Figure 1 A schematic diagram of a method flow for message transmission according to an embodiment of the present application;

[0063] Figure 2 A schematic diagram of the process of planning slices for an embodiment of the present application;

[0064] Figure 3 This is a schematic diagram of an IPv6 message format according to an embodiment of the present application;

[0065] Figure 4 This is a schematic diagram of an SRv6 message format according to an embodiment of the present application;

[0066] Figure 5 This is a schematic diagram of a SID format according to an embodiment of the present application;

[0067] Figure 6 This is a flow chart of another method for message transmission according to an embodiment of the present application;

[0068] Figure 7 A schematic diagram of the process of message forwarding in the application embodiment of this application;

[0069] Figure 8 This is a schematic diagram of the structure of a message transmission device according to an embodiment of the present application;

[0070] Fig. 9 This is a schematic diagram of the structure of another message transmission device according to an embodiment of the present application;

[0071] Fig.10 This is a schematic diagram of the structure of the first network node in an embodiment of the present application;

[0072] Fig.11 This is a schematic diagram of the second network node structure of an embodiment of the present application. DETAILED DESCRIPTION

[0073] The present application is further described in detail below in conjunction with embodiments.

[0074] The bearer network slicing technology is also mainly distributed in the control plane and forwarding plane.

[0075] The control plane technology mainly includes flexible algorithm (FlexAlgo) technology. FlexAlgo technology is extended through the internal gateway protocol (IGP) segment routing (SR, Segment Routing), that is, different segment identifiers (SIDs) are assigned to the same device. Different SIDs represent different FlexAlgo planes, and in each FlexAlgo plane, the cost type (MetricType), calculation type (CalcType) and link color (LinkColor) are combined for SPF calculation, and for each FlexAlgo plane, SPF calculation is performed separately, thereby forming an independent routing forwarding table entry.

[0076] FlexAlgo technology can currently only achieve coarse-grained slicing at the physical link level, and because FlexAlgo technology requires the expansion of the control plane protocol, the system overhead is too large and cannot support large-scale slicing, that is, it cannot support scenarios with many slices.

[0077] The forwarding plane technology is: introduce the slice ID into the forwarding plane, carry the slice ID in the message, and the forwarding device associates the slice ID with the physical resource, and combines it with the corresponding physical isolation technology to achieve end-to-end high-quality SLA, that is, to achieve the end-to-end quality assurance service guarantee requirements. The forwarding plane technical solution can achieve fine-grained slicing at the sub-interface level. At the same time, since there is no need to extend the control plane protocol, it will not bring too much overhead to the system and can support large-scale slicing.

[0078] When carrying a slice ID in a message, it is necessary to consider the location of the slice ID. The slice ID can be carried in the Hop-by-Hop field in the IPv6 message header. However, the Hop-by-Hop field requires the forwarding device to process hop by hop, which poses a risk of DOS attacks and is currently difficult to implement in practice.

[0079] The Flow Label field in the IPv6 packet header can carry the slice ID. However, since the Flow Label field is mainly used for traffic load balancing, it currently has 20 bits. In actual applications, some bits can be allocated to carry the slice ID when the impact of traffic load balancing is small. The larger the number of slices, the greater the impact on traffic load balancing. It is necessary to consider the balance between the two.

[0080] The slice ID can be carried in the destination address field in the IPv6 packet header. However, for SRv6 technology, the destination address is obtained from the segment list (SegmentList) during the forwarding process, and there is a possibility of change, so the slice ID cannot be planned. In addition, in G-SRv6 technology, the compression of the destination address also makes the planning of the slice ID infeasible.

[0081] Based on this, in various embodiments of the present application, the source address field in the message header carries a slice identifier, such as a slice ID, which does not pose a security risk, is highly feasible, and is compatible with related technologies.

[0082] It should be noted that: in the embodiment of the present application, the first network node and the third network node are network edge nodes, which can be called PE nodes, PE routers, PE devices, etc., such as operator edge nodes in the backbone network; correspondingly, the second network node is a network forwarding node, which can be called P node, P router, P device, etc., such as operator nodes in the backbone network.

[0083] The present application embodiment provides a message transmission method, which is applied to a first network node, such as Figure 1 As shown, the method includes:

[0084] Step 101: Determine a slice identifier of a first message;

[0085] Step 102: Generate a second message based on the slice identifier and the first message; the source address field in the message header of the second message carries the slice identifier;

[0086] Step 103: Send the second message.

[0087] The second message is an IPv6 message, and the second message is obtained by encapsulating the first message.

[0088] In one embodiment, the specific implementation of step 101 may include:

[0089] Determining a service characteristic of the first message;

[0090] Search the slice identifier corresponding to the service characteristics of the first message in the first table; the first table is at least provided with a correspondence between the service characteristics and the slice identifier.

[0091] The first network node may obtain the service characteristics of the first message from the configuration information of the device.

[0092] In actual application, slice identifiers can be globally allocated through unified planning and configuration. For example, the SDN controller or network management system globally plans slice identifiers according to the characteristics of user services (such as VLAN, virtual private network (VPN), or DSCP, etc.), that is, the slice identifiers are allocated to the corresponding user services. At this time, the SDN controller or network management system needs to send the formed slice planning information to the first network node so that the first network node can obtain the slice identifier of the first message accordingly.

[0093] Based on this, in one embodiment, the method may further include:

[0094] Receiving second information sent by the SDN controller or the network management system; the second information at least includes service characteristics and corresponding slice identifiers;

[0095] The first table is formed using the second information.

[0096] For example, Figure 2 As shown, assuming that there are three VPN services from three user edge routers (CE) (CE1, CE2 and CE3 respectively), the corresponding VPN IDs are VPN1, VPN2 and VPN3 respectively, and the SDN controller or network management system plans the corresponding bandwidth (BW) requirements according to different VPN services (which can also be understood as different VPN users) (the corresponding BW requirements can be planned according to user requirements), and allocates different slice identifiers according to the BW requirements, that is, allocates the required BW and slice identifiers to different VPN users, and sends the information to the PE1 device to form a slice planning table, as shown in Table 1.

[0097] VPN ID Slice ID Resource Information VPN1 1 BW: 10G VPN2 2 BW: 20G VPN3 3 BW: 30G

[0098] Table 1

[0099] Here, the SDN controller or network management system (also referred to as network management) can be understood as the manager of network equipment, and its functions may include configuration distribution, information monitoring, path planning, etc. In SDN, the SDN controller can be used to uniformly plan configuration and globally allocate slice identifiers; in non-SDN, the network management system can be used to uniformly plan configuration and globally allocate slice identifiers.

[0100] The source address field in the message header of the second message carries the slice identifier, that is, the slice identifier of the first message is set in the source address field in the message header of the second message.

[0101] Figure 3 The format of IPv6 message is shown as Figure 3As shown, the source address field of the IPv6 message header carries a slice identifier, such as a slice ID. In this way, if the forwarding device does not support the slicing function, the source address field retains the existing meaning, and the message is forwarded according to the relevant IPv6 forwarding mechanism, and there is no compatibility problem. If the forwarding device supports the slicing function, the source address field can be parsed for the slice identifier, so as to forward the message based on the slice identifier.

[0102] For SRv6 and G-SRv6 technologies. During SRv6 message forwarding, Figure 4 As shown, the first network node (i.e., the ingress device) carries a slice identifier in the source address of the outer IPv6 header of the SRv6 message encapsulation, for example, the slice identifier can be set in the lower 16 bits of the source address field. In this way, if the forwarding device does not support the slicing function, the source address field retains the existing meaning, and the message can be forwarded according to the relevant SRv6 forwarding mechanism, and there is no compatibility problem. If the forwarding device supports the slicing function, the source address field can be parsed for the slice identifier, so as to forward the message based on the slice identifier.

[0103] In one embodiment, the function field in the SID of the source address field in the message header of the second message may carry the slice identifier. Figure 5 As shown, the lower 16 bits reserved in the Function field can carry the slice identifier.

[0104] In actual application, as long as the IP and SRv6 SID are planned reasonably, there is enough address space in the source address field to carry the slice identifier. Taking 16 bits as an example, a maximum of 65535 slices can be supported, which can meet the future carrying needs of thousands of industries and meet the demands of large-scale slicing.

[0105] Moreover, the slice ID is carried in the source address, and the forwarding device only needs to parse the specific field in the source address in the message header, which has high processing efficiency and little performance impact, and will not introduce new difficulties to the forwarding device (forwarding chip).

[0106] In actual application, when the source address field carries a slice identifier, an identifier bit can be set in the message. The forwarding device uses the identifier bit to determine whether to parse the source address field for the slice identifier. This can improve processing efficiency.

[0107] Based on this, in one embodiment, the message header of the second message also carries first information, and the first information indicates that the source address field of the second message header carries the slice identifier.

[0108] The first information may be encapsulated in the Traffic Class field or the Flow Label field of the message header. That is, the Traffic Class field or the Flow Label field in the message header of the second message carries the first information, that is, the Traffic Class field or the Flow Label field in the message header of the second message is set to the first information.

[0109] Exemplarily, the first information may be 1 bit. When it is set to 1, it indicates that the source address field needs to be parsed for the slice identifier. When it is set to 0, it indicates that the source address field does not need to be parsed for the slice identifier.

[0110] When the SDN controller or network management system assigns slice identifiers to different user services and associates the slice identifiers with actual physical resources (also understood as link resources) for the forwarding device, the forwarding device identifies the slice identifier in the source address and matches the corresponding physical resources to forward the message, ultimately realizing the end-to-end network slicing function of the bearer network.

[0111] Similarly, for the first network node, it is necessary to match the corresponding physical resources according to the slice identifier so as to send the second message.

[0112] Based on this, in one embodiment, the specific implementation of step 103 may include:

[0113] Determining an outbound interface for the second message;

[0114] Searching in a second table for a physical resource corresponding to an outbound interface of the second message and the slice identifier; the second table at least includes a correspondence between an outbound interface, a slice identifier, and a physical resource;

[0115] The second message is sent using the found physical resources.

[0116] In one embodiment, the determining the outgoing interface of the second message includes:

[0117] The outbound interface of the second message is determined by searching the routing table.

[0118] Here, when the second message is an IPv6 message, the outbound interface of the second message is determined by searching the IPv6 routing table; when the second message is an SRv6 message, the outbound interface of the second message is determined by searching the SRv6 routing table (also called a segment routing (SR) table).

[0119] The second table may be referred to as a slice forwarding table. When the SDN controller or the network management system allocates slice identifiers to different user services and associates the slice identifiers with actual physical resources, the SDN controller or the network management system needs to send the contents of the slice forwarding table items to the first network node and the second network node so that the first network node and the second network node can send and forward messages based on the slice forwarding table.

[0120] Based on this, in one embodiment, the method may further include:

[0121] Receiving third information sent by the SDN or the network management system; the third information at least includes a correspondence between an outbound interface, a slice identifier, and a physical resource;

[0122] The second table is formed using the third information.

[0123] Here, in actual application, the SDN controller or network management system can plan physical resources according to the bandwidth information of the service, so that the forwarding device can combine link resource isolation technology (such as Flexible Ethernet (FlexE), QoS, VLAN, etc.) to achieve physical resource binding.

[0124] Exemplarily, for the three slices in the above example, the slice IDs are 1, 2, and 3 respectively. For example, the physical interface GE1 / 0 / 0 is divided into BW, and a corresponding G.MTN sub-interface is generated for each message forwarding device. The corresponding information such as the slice ID and the resource interface is sent to the corresponding message forwarding device, i.e., the first network node and the second network node, to form a slice forwarding table, as shown in Table 2.

[0125]

[0126]

[0127] Table 2

[0128] Accordingly, the embodiment of the present application also provides a message transmission method, which is applied to a second network node, such as Figure 6 As shown, the method includes:

[0129] Step 601: receiving a second message; the source address field in the message header of the second message carries a slice identifier;

[0130] Step 602: Use the slice identifier to forward the second message.

[0131] In actual application, the second network node receives a second message sent from a previous-hop network node; the previous-hop network node may be the first network node or another network forwarding node on a path corresponding to the second message.

[0132] In step 601, the second network node parses the source address field in the message header of the second message to obtain a slice identifier.

[0133] In one embodiment, the message header of the second message also carries first information, and the first information indicates that the source address field of the second message header carries the slice identifier; accordingly, the second network node determines the need to parse the slice identifier of the source address field of the second message header based on the first information.

[0134] In one embodiment, the Traffic Class field or the Flow Label field in the message header of the second message carries the first information, that is, the second network node obtains the first information by parsing the Traffic Class field or the FlowLabel field.

[0135] In one embodiment, when the Function field in the SID of the source address field in the message header of the second message carries the slice identifier, the second network node parses the Function field in the SID to obtain the slice identifier.

[0136] In one embodiment, the forwarding of the second message by using the slice identifier includes:

[0137] Determine the outgoing interface of the second message by searching the routing forwarding table;

[0138] Searching in a third table the physical resource corresponding to the outgoing interface of the second message and the slice identifier; the second identifier is at least provided with a correspondence between the outgoing interface, the slice identifier and the physical resource;

[0139] The second message is forwarded using the found physical resources.

[0140] In one embodiment, the method may further include:

[0141] Receiving fourth information sent by the SDN or the network management system; the fourth information at least includes a correspondence between an outbound interface, a slice identifier, and a physical resource;

[0142] The third table is formed using the fourth information.

[0143] Correspondingly, after receiving the second message, the third network node decapsulates the second message similar to the related art. The third network node receives the second message sent by the previous hop network node.

[0144] In the message transmission method provided in the embodiment of the present application, the first network node determines the slice identifier of the first message; based on the slice identifier and the first message, a second message is generated; the source address field in the message header of the second message carries the slice identifier; the second message is sent; the second network node receives the second message; the source address field in the message header of the second message carries the slice identifier; the second message is forwarded using the slice identifier. The solution provided in the embodiment of the present application carries the slice identifier in the source address field in the message header, does not have security risks, has strong feasibility, high processing efficiency, and strong compatibility with related technologies.

[0145] The present application is further described in detail below in conjunction with application examples.

[0146] In this application embodiment, there are three VPN services, and the VPN IDs are VPN1, VPN2, and VPN3. The SDN controller or network management system plans the corresponding BW requirements according to different VPN services, and allocates different slice IDs according to the bandwidth requirements. For the forwarding device, it plans the corresponding hardware resources according to the bandwidth requirements, such as the G.MTN sub-interface, and associates the interface information with the slice ID, including:

[0147] First, the SDN controller or network management system allocates the required BW and slice ID for different VPN services, and sends this information to the PE device to form a slice planning table, as shown in Table 1.

[0148] Secondly, the SDN controller or network management system plans physical resources for each slice based on the BW information, so that the forwarding device can bind the slice to the physical resources in combination with the link resource isolation technology. For example, the bandwidth of the physical interface GE1 / 0 / 0 is divided, and the corresponding G.MTN sub-interface is generated for each forwarding device to realize the forwarding of the message. For each forwarding device, the SDN controller or network management system sends the corresponding information such as the slice ID and resource interface to the forwarding device (PE1, P1 and P2), thereby forming a slice forwarding table, as shown in Table 2.

[0149] In this application embodiment, the SRv6 policy is used for message forwarding. Figure 7 Describe the message forwarding process.

[0150] PE1 receives a message (a message of one of the three VPN services, including an IP header and a payload). First, PE1 inherits the SRv6 Policy encapsulation method and encapsulates the message. The encapsulated message includes an IP head, payload, SRH, IPv6 destination address (DA), and IPv6 source address (SA). Then, it searches Table 1 according to the VPN information of the message, obtains the slice ID, and encapsulates the obtained slice ID into the lower 16 bits of the SID field of the SRv6 message header source address. Then, according to the SRv6 forwarding mechanism, it searches the SR forwarding table entry and confirms the physical outbound interface. Finally, it searches Table 2 according to the physical outbound interface and the slice ID, obtains the resource interface, and forwards the message according to the resource interface. As shown in Table 3, the slice ID is set at the last bit of the SID.

[0151] Outbound interface Slice ID SRv6 SID GE1 / 0 / 0 1 End A1:1:1:1::1:1 GE1 / 0 / 0 2 End A1:1:1:1::1:2 GE1 / 0 / 0 3 End A1:1:1:1::1:3

[0152] Table 3

[0153] After P1 receives the message, it first searches the SR forwarding table entry according to the SRv6 forwarding mechanism to confirm the physical outbound interface. It then parses the slice ID carried in the source address of the SRv6 message header, searches the slice forwarding table it maintains according to the physical outbound interface and slice ID, obtains the resource interface, and forwards the message according to the resource interface.

[0154] After receiving the message, P2 performs the same forwarding operation as P1.

[0155] After receiving the message, PE2 decapsulates the message according to the SRv6 forwarding mechanism.

[0156] From the above description, it can be seen that the solution provided by the embodiment of the present application carries the slice ID in the source address field of the IPv6 message header, does not pose a security risk, is highly implementable, supports IPv6, SRv6, and G-SRv6 network forwarding, and is naturally compatible with devices that do not support the slicing function. The number of physical slices supported depends on the number of slice ID bits reserved in the source address field. Taking 16 bits as an example, 65,536 physical slices can be supported. If the address planning allows, more bits can be reserved to increase the number of slices.

[0157] In addition, the SDN controller or network management system uniformly plans the user slice ID and the corresponding resource information, thereby associating the slice ID with the physical link resources, which can not only achieve resource isolation between physical ports, but also achieve resource isolation within the same physical port.

[0158] The forwarding device confirms the outgoing interface of the message according to the message forwarding table (i.e., the routing forwarding table, such as the IPv6 forwarding table or the SRv6 forwarding table), and then uses the slice ID carried in the source address field of the message header to determine the actual physical resources and resource interface under the outgoing interface, and finally forwards the message according to the resource interface, thereby realizing finer-grained slicing under the same physical interface. The solution of the embodiment of the present application adds a slice information table lookup forwarding process on the forwarding plane, does not involve other operations, and has little impact on system performance.

[0159] The solution of the embodiment of the present application introduces slice identifiers into the forwarding plane, which can be combined with the FlexAlgo solution of the control plane to form two-level slicing of the control plane and the forwarding plane. The control plane implements coarse-grained slicing at the interface level, and the forwarding plane implements fine-grained slicing at the sub-interface level.

[0160] In order to implement the method of the embodiment of the present application, the embodiment of the present application further provides a message transmission device, which is arranged on the first network node, such as Figure 8 As shown, the device comprises:

[0161] A first determining unit 801 is used to determine a slice identifier of a first message;

[0162] A generating unit 802 is configured to generate a second message based on the slice identifier and the first message; the source address field in the message header of the second message carries the slice identifier;

[0163] The transmission unit 803 is configured to send the second message.

[0164] In one embodiment, the first determining unit 801 is used to:

[0165] Determining a service characteristic of the first message;

[0166] Search the slice identifier corresponding to the service characteristics of the first message in the first table; the first table is at least provided with a correspondence between the service characteristics and the slice identifier.

[0167] In one embodiment, the first determining unit 801 is further configured to:

[0168] Receiving second information sent by the SDN controller or the network management system; the second information at least includes service characteristics and corresponding slice identifiers;

[0169] The first table is formed using the second information.

[0170] In one embodiment, the transmission unit 803 is used to:

[0171] Determining an outbound interface for the second message;

[0172] Searching in a second table for a physical resource corresponding to an outbound interface of the second message and the slice identifier; the second table at least includes a correspondence between an outbound interface, a slice identifier, and a physical resource;

[0173] The second message is sent using the found physical resources.

[0174] In one embodiment, the determining the outgoing interface of the second message includes:

[0175] The transmission unit 803 determines the outgoing interface of the second message by searching the routing forwarding table.

[0176] In one embodiment, the transmission unit 803 is further configured to:

[0177] Receiving third information sent by the SDN or the network management system; the third information at least includes a correspondence between an outbound interface, a slice identifier, and a physical resource;

[0178] The second table is formed using the third information.

[0179] In actual application, the first determination unit 801 and the transmission unit 803 can be implemented by a processor in the message transmission device in combination with a communication interface; the generation unit 802 can be implemented by a processor in the message transmission device.

[0180] In order to implement the method on the second network node side of the embodiment of the present application, the embodiment of the present application also provides a message transmission device, which is arranged on the second network node, such as Fig. 9 As shown, the device comprises:

[0181] The receiving unit 901 is configured to receive a second message; the source address field in the message header of the second message carries a slice identifier;

[0182] The forwarding unit 902 is used to forward the second message using the slice identifier.

[0183] In one embodiment, the forwarding unit 902 is used to:

[0184] Determine the outgoing interface of the second message by searching the routing forwarding table;

[0185] Searching in a third table the physical resource corresponding to the outgoing interface of the second message and the slice identifier; the second identifier is at least provided with a correspondence between the outgoing interface, the slice identifier and the physical resource;

[0186] The second message is forwarded using the found physical resources.

[0187] Here, in one embodiment, the receiving unit 901 is further used for:

[0188] Receiving fourth information sent by the SDN or the network management system; the fourth information at least includes a correspondence between an outbound interface, a slice identifier, and a physical resource;

[0189] The forwarding unit 902 is further configured to form the third table using the fourth information.

[0190] In actual application, the receiving unit 901 and the forwarding unit 902 can be implemented by a processor in a message transmission device in combination with a communication interface.

[0191] It should be noted that: when the message transmission device provided in the above embodiment performs message transmission, only the division of the above program modules is used as an example. In actual application, the above processing can be assigned to different program modules as needed, that is, the internal structure of the device is divided into different program modules to complete all or part of the above-described processing. In addition, the message transmission device provided in the above embodiment and the message transmission method embodiment belong to the same concept, and the specific implementation process is detailed in the method embodiment, which will not be repeated here.

[0192] Based on the hardware implementation of the above program module, and in order to implement the method of the first network node side of the embodiment of the present application, the embodiment of the present application also provides a first network node, such as Fig.10 As shown, the first network node 1000 includes:

[0193] The first communication interface 1001 is capable of exchanging information with other network nodes;

[0194] A first processor 1002 is connected to the first communication interface 1001 to implement information interaction with other network nodes, and is used to execute the method provided by one or more technical solutions on the first network node side when running a computer program;

[0195] A first memory 1003 , in which the computer program is stored.

[0196] Specifically, the first processor 1002 is used to determine a slice identifier of the first message; and generate a second message based on the slice identifier and the first message; the source address field in the message header of the second message carries the slice identifier;

[0197] The first communication interface 1001 is used to send the second message.

[0198] In one embodiment, the first processor 1002 is configured to:

[0199] Determining a service characteristic of the first message;

[0200] Search the slice identifier corresponding to the service characteristics of the first message in the first table; the first table is at least provided with a correspondence between the service characteristics and the slice identifier.

[0201] In one embodiment, the first communication interface 1001 is further used to receive second information sent by the SDN controller or the network management system; the second information at least includes a service feature and a corresponding slice identifier;

[0202] The first processor 1002 is further configured to form the first table using the second information.

[0203] In one embodiment, the first processor 1002 is configured to:

[0204] Determining an outbound interface for the second message;

[0205] Searching in a second table for a physical resource corresponding to an outbound interface of the second message and the slice identifier; the second table at least includes a correspondence between an outbound interface, a slice identifier, and a physical resource;

[0206] The second message is sent using the found physical resources.

[0207] In one embodiment, the determining the outgoing interface of the second message includes:

[0208] The first processor 1002 determines an outgoing interface of the second message through a routing forwarding table.

[0209] In one embodiment, the first communication interface 1001 is further used to receive third information sent by the SDN or the network management system; the third information at least includes a correspondence between an outbound interface, a slice identifier and a physical resource;

[0210] The first processor 1002 is further configured to form the second table using the third information.

[0211] It should be noted that the specific processing process of the first processor 1002 can be understood by referring to the above method.

[0212] Of course, in actual application, the various components in the first network node 1000 are coupled together through the bus system 1004. It can be understood that the bus system 1004 is used to realize the connection and communication between these components. In addition to the data bus, the bus system 1004 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, Fig.10 Various buses are labeled as bus system 1004 .

[0213] The first memory 1003 in the embodiment of the present application is used to store various types of data to support the operation of the first network node 1000. Examples of such data include: any computer program used to operate on the first network node 1000.

[0214] The method disclosed in the above embodiment of the present application can be applied to the first processor 1002, or implemented by the first processor 1002. The first processor 1002 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the hardware integrated logic circuit or software instructions in the first processor 1002. The above-mentioned first processor 1002 may be a general-purpose processor, a digital signal processor (DSP, Digital Signal Processor), or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. The first processor 1002 can implement or execute the various methods, steps and logic block diagrams disclosed in the embodiments of the present application. A general-purpose processor may be a microprocessor or any conventional processor, etc. In combination with the steps of the method disclosed in the embodiment of the present application, it can be directly embodied as a hardware decoding processor to execute, or it can be executed by a combination of hardware and software modules in the decoding processor. The software module may be located in a storage medium, which is located in the first memory 1003, and the first processor 1002 reads the information in the first memory 1003 and completes the steps of the above method in combination with its hardware.

[0215] In an exemplary embodiment, the first network node 1000 may be implemented by one or more application specific integrated circuits (ASICs), DSPs, programmable logic devices (PLDs), complex programmable logic devices (CPLDs), field programmable gate arrays (FPGAs), general-purpose processors, controllers, microcontrollers (MCUs), microprocessors, or other electronic components to execute the aforementioned method.

[0216] Based on the hardware implementation of the above program module, and in order to implement the method of the second network node side of the embodiment of the present application, the embodiment of the present application also provides a second network node, such as Fig.11 As shown, the second network node 1100 includes:

[0217] The second communication interface 1101 is capable of exchanging information with other network nodes;

[0218] The second processor 1102 is connected to the second communication interface 1101 to implement information interaction with other network nodes, and is used to execute the method provided by one or more technical solutions on the second network node side when running the computer program;

[0219] The second memory 1103 , and the computer program is stored in the second memory 1103 .

[0220] Specifically, the second communication interface 1101 is used to receive a second message; the source address field in the message header of the second message carries a slice identifier;

[0221] The second processor 1102 is used to forward the second message through the second communication interface using the slice identifier.

[0222] In one embodiment, the second processor 1102 is configured to:

[0223] Determine the outgoing interface of the second message by searching the routing forwarding table;

[0224] Searching in a third table the physical resource corresponding to the outgoing interface of the second message and the slice identifier; the second identifier is at least provided with a correspondence between the outgoing interface, the slice identifier and the physical resource;

[0225] The second message is forwarded through the second communication interface 1101 using the found physical resources.

[0226] Here, the second communication interface 1101 is further used to receive fourth information sent by the SDN or the network management system; the fourth information at least includes a correspondence between an outbound interface, a slice identifier and a physical resource;

[0227] The second processor 1102 is further configured to form the third table using the fourth information.

[0228] It should be noted that the specific processing process of the second processor 1102 and the second communication interface 1101 can be understood by referring to the above method.

[0229] Of course, in actual application, the various components in the second network node 1100 are coupled together through the bus system 1104. It can be understood that the bus system 1104 is used to realize the connection and communication between these components. In addition to the data bus, the bus system 1104 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, Fig.11 Various buses are labeled as bus system 1104 .

[0230] The second memory 1103 in the embodiment of the present application is used to store various types of data to support the operation of the second network node 1100. Examples of such data include: any computer program used to operate on the second network node 1100.

[0231] The method disclosed in the above embodiment of the present application can be applied to the second processor 1102, or implemented by the second processor 1102. The second processor 1102 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the hardware integrated logic circuit or software instructions in the second processor 1102. The above-mentioned second processor 1102 may be a general-purpose processor, DSP, or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. The second processor 1102 can implement or execute the various methods, steps and logic block diagrams disclosed in the embodiments of the present application. A general-purpose processor may be a microprocessor or any conventional processor, etc. In combination with the steps of the method disclosed in the embodiment of the present application, it can be directly embodied as a hardware decoding processor to execute, or it can be executed by a combination of hardware and software modules in the decoding processor. The software module may be located in a storage medium, which is located in the second memory 1103, and the second processor 1102 reads the information in the second memory 1103 and completes the steps of the above method in combination with its hardware.

[0232] In an exemplary embodiment, the second network node 1100 may be implemented by one or more ASICs, DSPs, PLDs, CPLDs, FPGAs, general purpose processors, controllers, MCUs, Microprocessors, or other electronic components to perform the aforementioned methods.

[0233] It can be understood that the memory (first memory 1003, second memory 1103) of the embodiment of the present application can be a volatile memory or a non-volatile memory, and can also include both volatile and non-volatile memories. Among them, the non-volatile memory can be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a magnetic random access memory (FRAM), a ferromagnetic random access memory, a flash memory, a magnetic surface memory, an optical disc, or a compact disc read-only memory (CD-ROM); the magnetic surface memory can be a disk memory or a tape memory. The volatile memory can be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static random access memory (SRAM), synchronous static random access memory (SSRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM, SyncLink Dynamic Random Access Memory), and direct RAM bus random access memory (DRRAM, Direct Rambus Random Access Memory).The memories described in the embodiments of the present application are intended to include, but are not limited to, these and any other suitable types of memories.

[0234] In an exemplary embodiment, the embodiment of the present application further provides a storage medium, namely a computer storage medium, specifically a computer-readable storage medium, for example, including a first memory 1003 storing a computer program, and the computer program can be executed by the first processor 1002 of the first network node 1000 to complete the steps of the aforementioned first network node side method. For another example, including a second memory 1103 storing a computer program, the computer program can be executed by the second processor 1102 of the second network node 1100 to complete the steps of the aforementioned second network node side method. The computer-readable storage medium can be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, magnetic surface storage, optical disk, or CD-ROM.

[0235] It should be noted that: "first", "second", etc. are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.

[0236] In addition, the technical solutions described in the embodiments of the present application can be combined arbitrarily without conflict.

[0237] The above description is only a preferred embodiment of the present application and is not intended to limit the protection scope of the present application.

Claims

1. A message transmission method, characterized in that: Applied to a first network node, comprising: Determine a slice identifier of the first message; Based on the slice identifier and the first message, a second message is generated; the source address field in the message header of the second message carries the slice identifier; Sending the second message; wherein, The message header of the second message also carries first information, and the first information indicates that the source address field of the second message header carries the slice identifier.

2. The method according to claim 1, characterized in that The traffic level field or the traffic label field in the message header of the second message carries the first information.

3. The method according to claim 1, characterized in that The function field in the segment identifier SID of the source address field in the message header of the second message carries the slice identifier.

4. The method according to claim 1, characterized in that: The determining a slice identifier of the first message includes: Determining a service characteristic of the first message; Search the slice identifier corresponding to the service characteristics of the first message in the first table; the first table is at least provided with a correspondence between the service characteristics and the slice identifier.

5. The method according to claim 4, characterized in that The method further comprises: Receiving second information sent by a software defined network SDN controller or a network management system; the second information at least includes a service feature and a corresponding slice identifier; The first table is formed using the second information.

6. The method according to any one of claims 1 to 5, characterized in that: The sending of the second message includes: Determining an outgoing interface of the second message; Searching in a second table for a physical resource corresponding to an outbound interface of the second message and the slice identifier; the second table at least includes a correspondence between an outbound interface, a slice identifier, and a physical resource; The second message is sent using the found physical resources.

7. The method according to claim 6, characterized in that The determining the outgoing interface of the second message includes: The outbound interface of the second message is determined by searching the routing table.

8. The method according to claim 6, characterized in that The method further comprises: Receiving third information sent by the SDN or the network management system; the third information at least includes a correspondence between an outbound interface, a slice identifier, and a physical resource; The second table is formed using the third information.

9. A message transmission method, characterized in that: Applied to a second network node, comprising: Receive a second message; the source address field in the message header of the second message carries a slice identifier; The second message is forwarded using the slice identifier; wherein, The message header of the second message also carries first information, and the first information indicates that the source address field of the second message header carries the slice identifier.

10. The method according to claim 9, characterized in that The traffic level field or the traffic label field in the message header of the second message carries the first information.

11. The method according to claim 9, characterized in that The function field in the SID of the source address field in the message header of the second message carries the slice identifier.

12. The method according to any one of claims 9 to 11, characterized in that: The forwarding the second message by using the slice identifier includes: Determine the outgoing interface of the second message by searching the routing forwarding table; Searching for a physical resource corresponding to the outbound interface and the slice identifier in a third table; the third table at least includes a correspondence between the outbound interface, the slice identifier, and the physical resource; The second message is forwarded using the found physical resources.

13. The method according to claim 12, characterized in that The method further comprises: Receiving fourth information sent by the SDN or the network management system; the fourth information at least includes a correspondence between an outbound interface, a slice identifier, and a physical resource; The third table is formed using the fourth information.

14. A message transmission device, characterized in that: include: A first determining unit, used to determine a slice identifier of a first message; A generating unit, configured to generate a second message based on the slice identifier and the first message; The source address field in the message header of the second message carries the slice identifier; A transmission unit, configured to send the second message; wherein, The message header of the second message also carries first information, and the first information indicates that the source address field of the second message header carries the slice identifier.

15. A message transmission device, characterized in that: include: A receiving unit, configured to receive a second message; The source address field in the message header of the second message carries a slice identifier; A forwarding unit, configured to forward the second message using the slice identifier; wherein: The message header of the second message also carries first information, and the first information indicates that the source address field of the second message header carries the slice identifier.

16. A first network node, characterized in that: include: A first processor, configured to determine a slice identifier of a first message; and generate a second message based on the slice identifier and the first message; The source address field in the message header of the second message carries the slice identifier; The first communication interface is used to send the second message; wherein, The message header of the second message also carries first information, and the first information indicates that the source address field of the second message header carries the slice identifier.

17. A second network node, characterized in that: include: A second communication interface and a second processor; wherein, The second communication interface is used to receive a second message; the source address field in the message header of the second message carries a slice identifier; The second processor is used to forward the second message through the second communication interface using the slice identifier; wherein, The message header of the second message also carries first information, and the first information indicates that the source address field of the second message header carries the slice identifier.

18. A first network node, characterized in that: include: a first processor and a first memory for storing a computer program executable on the processor, Wherein, when the first processor is used to run the computer program, the steps of the method described in any one of claims 1 to 8 are executed.

19. A second network node, characterized in that: include: a second processor and a second memory for storing a computer program executable on the processor, Wherein, when the second processor is used to run the computer program, the steps of the method described in any one of claims 9 to 13 are executed.

20. A storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the computer program implements the steps of the method according to any one of claims 1 to 8, or implements the steps of the method according to any one of claims 9 to 13.

Citation Information

Patent Citations

  • Message transmission method, device and system

    CN111050361A

  • Systems and methods for indication of slice to the transport network layer (TNL) for inter radio access network (RAN) communication

    US20180270743A1