WO2022110535A1 - Packet sending method, device, and system - Google Patents
Packet sending method, device, and system Download PDFInfo
- Publication number
- WO2022110535A1 WO2022110535A1 PCT/CN2021/073628 CN2021073628W WO2022110535A1 WO 2022110535 A1 WO2022110535 A1 WO 2022110535A1 CN 2021073628 W CN2021073628 W CN 2021073628W WO 2022110535 A1 WO2022110535 A1 WO 2022110535A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- identifier
- network
- packet
- segment
- network device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/80—Ingress point selection by the source endpoint, e.g. selection of ISP or POP
- H04L45/85—Selection among different networks
Definitions
- the present application relates to the field of communication technologies, and in particular, to a method, device, apparatus, system, and computer-readable storage medium for sending a message.
- a cloud server can be centrally deployed, and an application system can run on the cloud server for users, such as individual users or enterprise users, to access the cloud server through terminals.
- the way that users access the cloud server through the terminal is usually: the operator establishes an end-to-end connection tunnel between the metropolitan area network connected to the user terminal and the backbone network where the cloud service is located, so that the user can access the cloud based on the tunnel. Server, using this tunnel can guarantee the network quality of users.
- the present application provides a method, device, device, system and computer-readable storage medium for sending a message to solve the problems in the related art.
- the technical solutions are as follows:
- a method for sending a message which includes: a first network device obtains a first message, and an Internet Protocol (Internet Protocol, IP) extension header of the first message includes a first identifier, the first An identifier is used to indicate the service requirement corresponding to the first packet.
- the first network device may determine the path indication information corresponding to the first packet based on the first identifier and the second identifier.
- the destination address of the first packet includes the second identifier, and the path here is
- the indication information includes: a network slice identifier and/or a segment identifier list.
- the first network device updates the first packet based on the path indication information to obtain the second packet, and sends the second packet.
- the packet can be identified according to the corresponding network slice or segment identifier list.
- the forwarding tunnel indicated by the segment identifier list is used for forwarding, which can reduce the configuration of the tunnel in the network and simplify the network.
- the second identification includes a segment identification.
- the segment identification is a VPN segment identification or an intent segment identification.
- the above-mentioned method for determining path indication information based on the first identifier and the second identifier is: determining a forwarding policy for the first packet based on the second identifier, where the forwarding policy includes the first identifier and the path indication The first corresponding relationship of information; the above-mentioned path indication information is determined based on the first identifier and the first corresponding relationship.
- the above-mentioned method for determining path indication information based on the first identifier and the second identifier is: determining a third identifier corresponding to the first identifier based on the first identifier; determining a forwarding policy of the first packet based on the second identifier , the forwarding strategy includes a second correspondence between the third identifier and the path indication information; and the path indication information is determined based on the third identifier and the second correspondence.
- a method for sending a message includes: a first network device obtains a first message, an Internet Protocol IP header of the first message includes a first identifier, and the first identifier is used to indicate the service requirement corresponding to the first packet; after obtaining the first packet, the first network device determines the corresponding path indication information based on the first identifier, where the path indication information includes: a network slice identifier; One message gets the second message, and sends the second message.
- the first network device includes a correspondence between the first identifier and the path indication information, and the above-mentioned implementation manner of determining the corresponding path indication information based on the first identifier is: based on the first identifier and this correspondence The relationship determines the path indication information.
- the first identifier includes a network slice identifier, and the first identifier instructs the first network device to determine the network slice identifier based on the first identifier.
- the second packet includes the above path indication information.
- the path indication information is a network slice identifier, and the above-mentioned network slice identifier is included in the HBH or destination option header of the second packet.
- the first identifier includes a segment identifier
- the segment routing header SRH of the first packet includes the first identifier
- the IP extension header includes the above-mentioned SRH.
- the first identifier includes an intent segment identifier, and the intent segment identifier is used to instruct the first network device to determine based on the first identifier Corresponding path indication information.
- the first identifier further includes an indicator identifier, where the indicator identifier is used to indicate that the first identifier is an intent segment identifier.
- a method for sending a message includes: a first network device obtains a first message, a hop-by-hop option header HBH or a destination option header of the first message includes a first identifier, and the first An identifier is used to indicate the service requirement corresponding to the first packet; after obtaining the first packet, the first network device can determine the path indication information corresponding to the first packet based on the first identifier, where the path indication information includes: a segment identifier list. The first network device updates the first packet based on the segment identifier list to obtain a second packet, and sends the second packet.
- the second packet includes the segment identifier list.
- the first identifier includes an intent identifier
- an HBH or a destination option header of the first packet includes the intent identifier
- the IP extension header includes an HBH or a destination option header.
- the obtaining of the first packet by the first network includes: the first network device receives the packet sent by the second network device, and the first network device receives the packet sent by the second network device.
- the message includes the first identifier.
- the first packet is a packet sent by the second network device, or the first network device may generate the first packet based on the packet sent by the second network device.
- the first network device belongs to the first network, the second network device belongs to the second network, and the first network is different from the second network.
- At least two network devices included in the above-mentioned first network may perform determining corresponding path indication information based on the first identifier, and the at least two network devices include the above-mentioned first network device.
- At least two network devices included in the second network may also perform determining the corresponding path indication information based on the first identifier.
- the first network and the second network belong to different interior gateway protocol IGP domains, or the first network and the second network belong to different autonomous systems AS.
- the first network is a network that supports network slicing
- the second network is a network that supports SRv6.
- the network slice identifier includes a slice identifier SliceID and/or a flexible algorithm identifier.
- a method for sending a message comprising: obtaining a first identifier by a first network device, where the first identifier corresponds to a service requirement; and generating a first message by the first network device, the first message
- the IP extension header of the Internet Protocol includes a first identification
- the first packet also includes a second identification
- the destination address of the first packet includes the second identification or the segment routing header SRH of the first packet includes the second identification ;
- the first network device sends the first message to the second network device, and the first identifier and the second identifier in the first message are used to enable the second network device to determine the correspondence of the first message based on the first identifier and the second identifier path indication information, where the path indication information includes a list of network slice identifiers and/or segment identifiers.
- the second identifier includes a virtual private network segment identifier VPN SID or an intent segment identifier.
- the hop-by-hop option header or the destination option header of the first packet includes the first identifier.
- a fifth aspect provides a method for sending a message, the method comprising: obtaining a first identifier by a first network device, where the first identifier corresponds to a service requirement; and generating a first message by the first network device, and the first message is The hop-by-hop option header HBH or the destination option header includes a first identifier; the first network device sends a first packet to the second network device, where the first identifier is used to enable the second network device to determine the first packet based on the first identifier Corresponding path indication information, where the path indication information includes a first segment identifier list.
- the first identification includes an intent identification.
- the above-mentioned obtaining the first identifier is specifically: the first network device receives the second segment identifier list sent by the control device, and the second segment identifier list includes the first identifier.
- a sixth aspect provides a method for sending an identifier, the method comprising: a control device obtaining a first identifier, the first identifier corresponding to a service requirement; determining a first segment identifier list corresponding to the target service, where the first segment identifier list is Including a first identifier, the first segment identifier list is used to indicate the first forwarding path through which the message corresponding to the target service passes, the first forwarding path passes through the first network device included in the first network, and the first identifier is used for
- the first network device is made to determine corresponding path indication information based on the first identifier, where the path indication information includes: a network slice identifier and ⁇ or a second segment identifier list; the first network device sends the first segment identifier list.
- At least two network devices included in the first network may perform determining corresponding path indication information based on the first identifier, and the at least two network devices included in the first network include the above-mentioned first network device.
- the first segment identifier list is carried in a link state protocol packet or a path calculation unit communication protocol packet and sent.
- a seventh aspect provides a network device, the network device includes: an obtaining module, a processing module, and a sending module, the obtaining module is used to obtain a first packet, and the Internet Protocol IP extension header of the first packet includes the first packet.
- an identifier the first identifier is used to indicate the service requirement corresponding to the first packet;
- the processing module is used to determine the path indication information corresponding to the first packet based on the first identifier and the second identifier, and the The destination address includes a second identifier, and the path indication information includes: a network slice identifier and/or a segment identifier list; the processing module is further configured to update the first message based on the path indication information to obtain the second message;
- the sending module is configured to send Second message.
- the processing module is configured to: determine a forwarding policy of the first packet based on the second identifier, where the forwarding policy includes a first correspondence between the first identifier and the path indication information; the processing module, further for determining path indication information based on the first identifier and the first correspondence.
- the processing module is configured to: determine a third identifier corresponding to the first identifier based on the first identifier; the processing module is further configured to determine a forwarding policy of the first packet based on the second identifier, where the forwarding policy includes The second correspondence between the third identifier and the path indication information; the processing module is further configured to determine the path indication information based on the third identifier and the second correspondence.
- a network device comprising: an obtaining module, a processing module and a sending module, the obtaining module is used to obtain a first message, and the Internet Protocol IP header of the first message includes the first identifier, the first identifier is used to indicate the service requirement corresponding to the first packet; the processing module is used to determine the corresponding path indication information based on the first identifier, and the path indication information includes: the network slice identifier; the processing module, also used The second message is obtained by updating the first message based on the path indication information; the sending module is used for sending the second message.
- the processing module is configured to: determine the path indication information based on the first identifier and a corresponding relationship, where the corresponding relationship is a corresponding relationship between the first identifier and the path indication information.
- the processing module is configured to: encapsulate the path indication information into the second packet.
- a network device comprising: an obtaining module, a processing module and a sending module, the obtaining module is used to obtain a first packet, the hop-by-hop option header HBH or the destination option header of the first packet is in the Including a first identifier, the first identifier is used to indicate the service requirement corresponding to the first message; the processing module is used to determine the path indication information corresponding to the first message based on the first identifier, and the path indication information includes: a segment identifier list; the sending module is configured to update the first message based on the segment identifier list to obtain the second message, and send the second message.
- the processing module is configured to encapsulate the segment identifier list into the second packet.
- a tenth aspect provides a network device, the network device includes: an obtaining module, a processing module and a sending module, the obtaining module is used to obtain a first identifier, the first identifier corresponds to a service requirement; the processing module is configured with In generating the first message, the Internet Protocol IP extension header of the first message includes the first identification, the first message also includes the second identification, and the destination address of the first message includes the second identification or the first identification.
- the segment routing header SRH of the packet includes a second identifier; the sending module is configured to send the first packet to the second network device, and the first identifier and the second identifier are used to make the second network device based on the first identifier and the second identifier.
- the second identifier determines path indication information corresponding to the first packet, where the path indication information includes a network slice identifier and/or a segment identifier list.
- a network device in an eleventh aspect, includes an obtaining module, a processing module and a sending module, the obtaining module is used to obtain a first identifier, the first identifier corresponds to a service requirement; the processing module is configured with In generating the first message, the IP header of the first message includes a first identifier; the sending module is used to send the first message to the second network device, and the first identifier is used to make the second network The device determines corresponding path indication information based on the first identifier, where the path indication information includes a network slice identifier.
- a twelfth aspect provides a network device, the network device includes an obtaining module, a processing module and a sending module, the obtaining module is used to obtain a first identifier, and the first identifier corresponds to a service requirement; the processing module is configured with For generating the first message, the hop-by-hop option header HBH or the destination option header of the first message includes a first identifier; the sending module is used to send the first message to the second network device, and the first identifier is used The second network device determines corresponding path indication information based on the first identifier, where the path indication information includes a segment identifier list.
- a thirteenth aspect a control device, characterized in that it includes an obtaining module, a processing module and a sending module, the obtaining module is used to obtain a first identifier, and the first identifier corresponds to a service requirement; the processing module is used to obtain a first identifier.
- the first segment identifier list includes a first identifier
- the first segment identifier list is used to indicate the first forwarding path through which the message corresponding to the target service passes, the first forwarding path Passing through the first network device included in the first network
- the first identifier is used to enable the first network device to determine corresponding path indication information based on the first identifier, where the path indication information includes: a network slice identifier and ⁇ or a list of second segment identifiers ;
- the sending module is used to send the first segment of the identification list.
- the processing module is configured to: calculate and obtain the above-mentioned first segment identification list according to the service requirements corresponding to the target service.
- a fourteenth aspect provides a communication device, the device comprising: a communication interface and a processor.
- the processor is configured to perform execution to control the communication interface to receive signals, and to control the communication interface to send signals, and when the processor executes the instructions, the processor causes the processor to execute the above-mentioned first to thirteenth aspects or any one of them method in a possible implementation.
- the communication device further includes a memory.
- the memory is used to store the above-mentioned instructions.
- processors there are one or more processors and one or more memories.
- the memory may be integrated with the processor, or the memory may be provided separately from the processor.
- a fifteenth aspect provides a communication system, the system includes a first network device and a second network device, the first network device is configured to perform the first aspect - the third aspect or any of the first to third aspects In the method in a possible implementation manner, the second network device is configured to execute the method in any possible implementation manner of the fourth aspect - the sixth aspect or the fourth aspect to the sixth aspect.
- a sixteenth aspect provides a computer program (product), the computer program (product) comprising: computer program code, which, when executed by a computer, causes the computer to execute the methods in the above aspects.
- a seventeenth aspect provides a computer-readable storage medium, where the computer-readable storage medium stores programs or instructions, and when the programs or instructions are run on a computer, the methods in the above aspects are performed.
- a chip including a processor for invoking and executing instructions stored in the memory from a memory, so that a communication device on which the chip is installed performs the methods in the above aspects.
- a nineteenth aspect provides another chip, comprising: an input interface, an output interface, a processor, and a memory, the input interface, the output interface, the processor, and the memory are connected through an internal connection path, and the processor is used to execute codes in the memory , when the code is executed, the processor is used to perform the methods in the above aspects.
- FIG. 1 is a schematic diagram of a network fragmentation provided by the present application.
- FIG. 2 is a schematic diagram of a network fragmentation provided by the present application.
- FIG. 3 is a schematic diagram of a network scenario provided by the present application.
- FIG. 5 is a schematic flowchart of a message sending method provided by the present application.
- FIG. 6 is a schematic flowchart of a method for sending an identification provided by the present application.
- FIG. 7 is a schematic diagram of a path arrangement and processing process performed by a control device provided by the present application.
- FIG. 8 is an application example diagram of a message sending method provided by the present application.
- FIG. 9 is an application example diagram of a message sending method provided by the present application.
- 10 is an example diagram of a mapping relationship between an aggregated route and an aggregated tunnel provided by the application
- FIG. 11 is a diagram of an application example of a message sending method provided by the present application.
- FIG. 12 is a schematic structural diagram of a network device provided by this application.
- FIG. 13 is a schematic structural diagram of a network device provided by this application.
- FIG. 14 is a schematic structural diagram of a network device provided by this application.
- 15 is a schematic structural diagram of a network device provided by this application.
- 16 is a schematic structural diagram of a network device provided by this application.
- FIG. 17 is a schematic diagram of a network system provided by this application.
- Segment Routing It is a protocol designed to forward packets in the network based on the concept of source routing. SR divides the network path into segments, and assigns segment IDs (Segment IDs, SIDs) to these segments and network nodes. By arranging the SIDs in an orderly manner, the SID List (SID List, also known in SR-MPLS) can be obtained. called label stack), SID List can indicate a forwarding path.
- SID List also known in SR-MPLS
- label stack SID List
- SID List can indicate a forwarding path.
- the data package can be compared to luggage, and SR can be compared to the label attached to the luggage.
- the data packet will be forwarded first to the node corresponding to SID1, then to the node corresponding to SID2, and then to the node corresponding to SID3.
- the full name of SR-MPLS in Chinese and English is Segment Routing Multi-Protocol Label Switching.
- Segment routing (SR v6) based on Internet Protocol Version 6 (IPv6): refers to the application of SR technology in IPv6 networks. Use IPv6 address (128bits) as the representation of SID.
- IPv6 address (128bits) as the representation of SID.
- network devices that support SRv6 will query the local segment identification table (local SID table) according to the destination address (Destination Address, DA) in the data packet.
- DA Destination Address
- the data packet can be forwarded from the outbound interface corresponding to the SID; if the destination address of the data packet is If there is no longest match with each SID in the local segment identification table, the IPv6 forwarding table is checked again, and the longest matching forwarding is performed according to the IPv6 forwarding table.
- IPv6 packets are composed of IPv6 standard header + extension header (0...n) + payload.
- SRv6 extension header To implement SRv6 based on the IPv6 forwarding plane, a new IPv6 extension header, called the SRH extension header, is added.
- the extension header specifies an IPv6 explicit path and stores the IPv6 segment list.
- the head node adds an SRH extension header to the IPv6 packet, and the intermediate node can forward it according to the path information contained in the SRH extension header.
- Segment List in the form of IPv6 addresses, which is similar to the label stack information in the multi-protocol label switching (MPLS) network.
- the Segment List composed of one or more segment IDs (Segment ID, SID) arranged is used to indicate the explicit path in the SR; the other is the remaining segment (Segment Left, SL), SL is a pointer, used to indicate The current segment ID.
- Segment ID List A list containing a set of segment IDs. After receiving the data packet, the head node in the segment routing network inserts a SID List into the data packet to display the indication. a forwarding path.
- the value of the DA field of the IPv6 packet is constantly changing, and its value is determined by the SL and the Segment List.
- the pointer SL points to a currently pending segment, for example, when it points to the Segment List[2] , you need to copy the IPv6 address of Segment List[2] to the DA field.
- the node can decrement the SL by 1 and shift the pointer to A new segment is added, and the corresponding segment identifier (that is, the IPv6 address format) after the SL is reduced by one is copied to the DA field, and the packet is forwarded to the next node.
- the node can pop up the SRH packet header, and then process the packet in the next step. If the node does not support SR, then there is no need to process the SRH information in the IPv6 packet, and it only needs to search the IPv6 routing table based on the IPv6 destination address field and perform ordinary IPv6 forwarding.
- SR Policy is a traffic engineering mechanism of SR.
- an SR Policy includes a headend, a color, and an endpoint, as well as a list of segment identifiers that indicate the forwarding path.
- Headend is used to identify the head node that executes the SR Policy
- Color is used to associate SR with service attributes, such as low latency, high bandwidth and other service attributes, to summarize the service capabilities of the SR Policy
- Endpoint is used to identify The destination address of the SR Policy.
- an SR Policy is determined by (headend, color, endpoint). For the same headend, it can also use (color, endpoint) to determine a Policy.
- the SR policy can include one or more segment ID lists to implement load balancing, multi-path backup and other functions.
- the head node can determine the segment ID list corresponding to the message according to the SR policy, so as to determine the forwarding path for forwarding the message, and encapsulate the segment ID list into the message for explicit or decentralized indication. path.
- Service requirements for network quality can include one or more of the following: delay range, bandwidth range, packet loss rate range, specifying a certain path/node and specifying not to pass a certain path path/node etc.
- the above range can be a specific value range, or the range can refer to a certain index being better or optimal in the network.
- the delay range can be less than or equal to a specific delay value, such as 20 milliseconds, or the delay range.
- the bandwidth range can be greater than or equal to a specific bandwidth value, such as 2G, or the bandwidth range is large bandwidth, etc.
- the network that transmits the service packet can meet the network quality required by the service by providing corresponding network slices, forwarding tunnels, and the like.
- Segment ID (segment ID, SID), which can represent a node or a link.
- SID Segment ID
- the SID is represented as a 128-bit value
- SR-MPLS the SID is represented as a label value
- Intent SID A special SID representing service quality assurance, also known as Intent SID, which can be used to indicate the network quality requirements of the target service on the network.
- the network quality requirements can be such as delay, bandwidth, specific path, etc. one or more of the.
- a unified intent SID can be assigned to the multiple sub-networks, or different intent SIDs can be assigned to different sub-networks, or Assign a separate intent SID to a device.
- the intent SID is not used to guide routing in the network domain where it functions, but is only used to determine path indication information.
- the intent SID can also play a role of guiding routing in the network where the device is located.
- the intent SID may have the following functions: a device in the network may, based on the intent SID, determine corresponding path indication information for the message corresponding to the target service, where the path indication information may be one or more of the following: A list of network slice IDs or segment IDs. The device in the network may determine the corresponding path indication information only based on the intent SID, or may determine the corresponding path indication information based on the intent SID and other identifiers together.
- Intent identifier an identifier representing service quality assurance, which can be used to indicate the network quality requirements of the target service on the network.
- the network quality requirements can be one or more of delay, bandwidth, and specific paths.
- the multiple sub-networks can use the same intent ID to express the same network quality requirement, or use the same intent ID to correspond to different network quality requirements in different sub-networks.
- the intent ID is not a segment ID.
- Network slice segment identifier A special SID representing a network slice, also known as a network slice SID, which can be an instance of an intent SID and can be used to indicate a network on a network device in the network Slice, or used to indicate the same network slice on multiple network devices in the network, consistent with the intent SID, in the former case, the AlgoSID can also play the role of guiding routing, in the latter case, the AlgoSID In the network domain in which it functions, it is not used to guide routing, but only to determine the network slice identity.
- the network slice SID may have the following functions: a device in the network may determine a corresponding network slice for a packet according to the network slice SID. When the network slice SID is only an identification of one device, the network slice SID also has the function of indicating the route to this network device.
- the network slicing technology can also be understood as a virtual network technology.
- the network slicing technology can adopt a flexible algorithm (Flexible Algorithm, Flex-Algo) network slicing or forwarding layer slicing technology, or other forms of network slicing technology.
- the network slice can be represented by: Flex-Algo identifier or slice identifier (SliceID).
- the network is planned into multiple planes through the Flex-Algo algorithm to form multiple topologies, and each topology is configured with a special Flex-Algo algorithm.
- the Flex-Algo algorithm ranges from 128 to 255.
- the default Flex-Algo 0 algorithm topology exists in the network.
- a network node, or a partial link of the network node, can be deployed into one or more Flex-Algo algorithms.
- Figure 1 is an example of network sharding. This example shows an example of Flex-Algo forming a sharding topology.
- the network includes network nodes, namely network device 0 to network device 9. At least 3 network slices can be planned in the network, corresponding to 3 Flex-Algos.
- Each Flex-Algo algorithm supports a series of path calculation factors, such as :
- the path calculation factor of Flex-Algo 0 can be defined as the minimum cost, and this Flex-Algo can include all nodes;
- the path calculation factor of Flex-Algo 128 can be defined as the minimum delay, and includes network nodes 1-4 shown in solid lines in Figure 1, and network nodes 0 and 9;
- the path calculation factor of the Flex-Algo 129 can be defined as the minimum traffic engine-metric (TE-Metric) value, and includes network nodes 5-8, and network nodes 0 and 9, shown in dashed lines in FIG. 1 .
- TE-Metric minimum traffic engine-metric
- the devices in the network can flexibly select the Algo algorithm according to the service or network deployment requirements.
- the network can be sliced according to the metric, delay, TE Metric, etc., and the following figure can be obtained. Schematic diagram of network sharding.
- the forwarding plane SliceID is enabled in the virtual routing and forwarding (VRF) instance of the traditional network control plane.
- VRF virtual routing and forwarding
- the forwarding plane packet carries the SliceID, and the hop-by-hop node identification of the intermediate transmission packet is reported.
- the SliceID in this article also restricts the traffic to be forwarded in specific reserved resources to ensure the SLA of the sharded service.
- the overall pre-fragmentation method can be used, that is, the entire basic network port According to certain bandwidth requirements (such as convergence ratio, port percentage, etc.), flexible Ethernet (FlexE)/channelized sub-interfaces are used for resource guarantee and configuration, and a fragmented network covering the entire network is generated. Each fragment corresponds to The port reserves a certain bandwidth.
- bandwidth requirements such as convergence ratio, port percentage, etc.
- the network sliced through SliceID supports a flexible network slice virtual private network (VPN) bearer scheme.
- One network slice can share a single VRF instance, or multiple network slices can share a VRF instance, and differentiate services through different services.
- Code point differentiated services code point, DSCP
- DSCP differentiate services code point
- FIG. 2 a schematic diagram of a network for network slicing through SliceID is shown.
- the network includes three shards: SliceID1, SliceID2, and SliceID3.
- the three network slices serve the three slice services Slice Service 1, Slice Service 2, and Slice Service 3 respectively.
- the service corresponds to three different virtual local area network (VLAN)/DSCP access bearer network logical interfaces, and each logical interface is bound to a VRF instance.
- VLAN virtual local area network
- the network side plans a globally unique SliceID for each network slice.
- the public network side device uses the sliceID to map to the specific reserved resources corresponding to the network slice on the forwarding plane to ensure the service of each slice.
- Service Level Agreement (SLA) requirements An operator's existing bearer network may also be called a default fragment, and the forwarding resources under each physical interface can be allocated to the default fragment and each service fragment.
- the Layer 3 attributes of the physical interface are shared by all network segments, including the IPv6 address/link cost on the physical main interface, the Layer 3 neighbors of the physical interface, and the link delay measured based on the physical main interface.
- the "resource reservation" sub-interfaces of each network slice occupy the reserved resources under the physical main interface, and configure the corresponding slice IDs for these "resource reservation" sub-interfaces.
- Default fragmentation The physical bearer network before fragmentation, which bears the basic Interior Gateway Protocol (IGP)/Border Gateway Protocol (Border Gateway Protocol, BGP) protocol, and services that do not specify a fragmentation are in the default fragmentation
- IGP Interior Gateway Protocol
- BGP Border Gateway Protocol
- the default shard can also be used as the disaster recovery backup shard for the service shard.
- Service shards shards created based on service SLA requirements. Different service shards can be logically or physically isolated. For example, each VPN instance shares a shard exclusively or multiple VPNs share a shard (DSCP mapping shard).
- DSCP mapping shard In an IPv6 network, SliceID is used to identify a slice, and the control plane completes the mapping between the network slice identifier SliceID and the "reserved resources" of the forwarding plane slice.
- services enter different network segments according to service identifiers.
- IP header It can be divided into a basic header or an extended header, that is, the header can include a basic header or an extended header, where the basic header can also be called a standard header.
- the IP header is an IPv6 header
- the IPv6 header may include an IPv6 basic header and an IPv6 extension header.
- the IPv6 extension header may include one or more of a destination option header, a hop-by-hop options header (HBH), an SRH, and the like.
- the network includes a backbone network (core), a metropolitan area network (metro) 1, optionally, a metropolitan area network (metro) 2, or more metropolitan area networks.
- a backbone network core
- a metropolitan area network metro
- it includes access (ACC) device ACC1, aggregation (aggregation, AGG) device AGG1 and (metro core node, MC) device MC1; in the backbone network, including PE1, PE2, PE3, PE4, Operator (Provider, P) equipment: P1, P2, P3, and P4.
- the metropolitan area network includes network equipment such as ACC2, AGG2, and MC2.
- PE1 and PE2 are connected with the MC equipment of the metropolitan area network, for example, PE1 is connected with MC1, and PE3 and PE4 are connected with the MV equipment of the metropolitan area network 2, for example, PE3 is connected with MC2.
- more networks may also be included, such as private networks of enterprise customers, more metropolitan area networks, or other backbone networks.
- the ACC device, the AGG device and the MC device are used as examples, which are applied to other scenarios, such as wireless network access scenarios.
- the ACC device can also be called a customer site gateway (CSG) device, and the AGG device can also be It is called an aggregation site gateway (ASG) device, and the MC device may also be called a radio service gateway (RSG) device.
- CSG customer site gateway
- ASSG aggregation site gateway
- RSG radio service gateway
- service packets are usually transmitted through a large network, which may include multiple small networks, such as backbone networks or metropolitan area networks, because E2E tunnels may span multiple networks.
- a large network which may include multiple small networks, such as backbone networks or metropolitan area networks, because E2E tunnels may span multiple networks.
- AS autonomous system
- IGP Interior Gateway Protocol
- the backbone network uses network slicing technology to ensure network quality
- the metropolitan area network adopts SRv6 technology for network quality assurance.
- the backbone network and the metropolitan area network 1 here belong to different IGP domains, or belong to different ASs.
- the cloud operator edge device (provider edge, PE) device will become the tunnel PE aggregation node of each metropolitan area network private line service, and a large number of tunnels need to be created.
- PE provider edge
- the controller needs to manage, control, and operate the large number of tunnels. With the development of services, the number of tunnels created on network devices will increase, and the number of tunnels managed by control devices will also increase.
- the present application provides various technical solutions for solving the problem of too many tunnels configured in the above network in order to ensure service quality.
- FIG. 4 a schematic flowchart of a message sending method provided by the present application is provided, including the following steps:
- the first network device obtains the first packet, and the IP extension header of the packet includes the first identifier.
- the first identifier is used to indicate a service requirement corresponding to the first packet, and the first identifier may be the above-mentioned intent SID or intent identifier.
- the manner in which the first network device obtains the first packet includes the following two cases:
- Case 1 Receive a packet sent by the second network device, and the packet is the first packet.
- Case 2 After receiving the message sent by the second network device, the first network device updates the message to obtain the first message. For example, when the message includes a segment identifier list, the first network device can update the DA of the message according to the segment identifier list, and the first message obtained by the first network device is the message after updating the DA.
- the above-mentioned second network device may be in the same network as the first network device, or may be in a different network.
- the second network device may be, for example, an ACC1 device or an MC1 device of the metropolitan area network 1 in the network shown in FIG. 3 .
- the first network device may be, for example, a device such as PE1 or PE2 in the backbone network in the network shown in FIG. 3 , or a device such as MC2 in the metropolitan area network 2 .
- the P2 device of the backbone network in the network shown in FIG. 3 may be the second network device
- the PE1 may be the first network device.
- the first identifier may be a segment identifier, such as an intent segment identifier.
- the SRH of the first packet includes the first identifier.
- the SRH may also include the foregoing second identifier.
- the first identifier may be an intent identifier, and at this time, the HBH of the packet may include the first identifier.
- the packet sent by the second network device to the first network device includes the first identifier, and the identifier corresponds to the service requirement.
- the manner in which the first identifier is included in the packet sent by the second network device to the first network device includes but is not limited to the following situations:
- Case A The second network device obtains the first identifier sent by the control device, and then encapsulates it into a message.
- the control device can calculate an end-to-end forwarding path according to the network topology and service requirements, such as from the MAN 1-backbone-MAN 2 shown in Figure 3, and the forwarding path can correspond to a segment
- the identification list that is, the segment identification list indicates this forwarding path.
- the segment identifier list may include at least one identifier, and the at least one identifier includes the first identifier. For example, if the service needs to focus on ensuring the quality of the forwarding path of the backbone network, the control device may only send the first identifier applicable to the backbone network to the second network device.
- the first identifier may be the segment identifier of PE1, and the forwarding path passes through PE1.
- the segment identifier list obtained by the second network device may only include the first identifier: such as intent SID: IntentSID1, this SID represents the final confirmation of the forwarding path of the A service in the backbone network according to the service requirements corresponding to IntentSID1.
- the segment identifier list may include IntentSID2, IntentSID1, and IntentSID3, and the first identifier may be, for example, IntentSID1, IntentSID2, or IntentSID3.
- IntentSID1 may be the intent SID of ACC1 or the intent SID of at least two devices in metropolitan area network 1, and the at least two devices may be edge devices in metropolitan area network 1, such as ACC1 and MC1.
- IntentSID2 may be the intent SID on PE1 or the intent SID of at least two devices in the backbone network, and the at least two devices may be edge devices in the backbone network, such as PE1, PE2, PE3, and PE4.
- the IntentSID3 may be the intent SID on the ACC2 or the intent SID of at least two devices in the metropolitan area network 2, and the at least two devices may be edge devices in the metropolitan area network 2, such as ACC2 and MC2.
- the intent SID is the intent SID of at least two devices, which means that at least two network devices included in the first network can determine the path indication information corresponding to the packet based on the first identifier.
- the control device may also send the intent identifier to the second network device according to the network planning in combination with the planning of each network.
- the intent identifier may have different meanings in each network, or may have the same meaning in multiple networks.
- the control device can send an intent identifier to ACC1, where the intent identifier can be IntentID1, which can act on the backbone network, metro network 1, etc. shown in FIG. 3 at the same time, which can represent services on both the backbone network and metro network
- the requirements are such as: low latency.
- IntentID1 represents that the target service requires low latency for backbone network services, and requires high bandwidth and low latency for metropolitan area network services.
- control device may send the segment identifier list obtained by the above calculation through the link state protocol message or the path calculation unit communication protocol message.
- Case B The second network device encapsulates the first identifier in the received packet according to the obtained configured first identifier.
- the second network device can also obtain the first identifier configured by the administrator through the management device, the management interface, and the like in an unlimited manner. Then, in the received message, the first identifier is encapsulated, and then the message is sent to the first network device.
- Case C The second network device receives a packet sent by its upstream device, and the packet carries the first identifier.
- the second network device when it receives a packet sent by ACC1, the packet already carries the first identifier.
- the IP extension header in the packet sent by the second network device to the first network device includes the above-mentioned first identifier.
- the IP extension header can be an HBH or a destination option header.
- the destination address of the packet further includes a second identifier.
- the first network device determines path indication information corresponding to the first packet based on the first identifier and the second identifier.
- the destination address (destination address, DA) in the message received by the first network device may be the above-mentioned second identifier, or, the second network device After updating the DA of the message to obtain the first message, the DA of the first message is the above-mentioned second identifier. That is, the DA of the first packet includes the second identifier.
- the above-mentioned second identifier is a segment identifier, such as a virtual private network (virtual private network, VPN) SID, an intent segment identifier or other segment identifiers, and the second identifier is also carried in the SRH of the first packet.
- the second identifier is the destination address in the foregoing IPv6 packet header, and is not carried in the SRH of the first packet.
- the foregoing second identifier may be used by the first network device to perform routing addressing, determine a forwarding policy, and the like based on the second identifier.
- the above path indication information includes one or more of the following: a network slice identifier, a segment identifier list, best effort (best effort, BE) forwarding, and the like.
- the network slice identifier may be used to identify a network slice for forwarding the first packet, and the network slice identifier may only be the identifier of the slice by the first network device, or may be the first network device where the first network device is located.
- the identifier of the slice of multiple devices in a network, the network slice identifier can be one or both of the flexible slice identifier or sliceID.
- the segment identifier list may be used to indicate a forwarding tunnel for forwarding the first packet, which may include one or more segment identifiers, and the segment identifiers may include one of a network segment identifier, an intent segment identifier, or other segment identifiers. or more.
- the first network device determines the corresponding path indication information based on the first identifier and the second identifier, including but not limited to the following ways:
- the first network device determines a forwarding policy corresponding to the first packet based on the second identifier, where the forwarding policy includes a first correspondence between the first identifier and the path indication information.
- the first network device may determine the path indication information based on the first identifier and the first correspondence.
- the forwarding policy may include only one correspondence, and in another example, the forwarding policy may include multiple correspondences. That is, the forwarding policy may be a single policy or a policy group.
- the corresponding relationship may be as shown in Table 1, where the table includes the second identifier, the first identifier, and path indication information.
- the identification information included in the first packet is as follows: the second identification is VPNSID1 indicating the sending direction of the first packet, and the first identification is the intent SID of the packet, such as IntentSID1. Then, according to the corresponding relationship shown in Table 1, it can be known that the first packet can determine that the path indication information corresponding to the first packet is 129, and in this example, 129 is a flexible algorithm identifier.
- VPNSID1 IntentSID1 129 VPNSID1 IntentSID2 128
- the corresponding relationship may be as shown in Table 2.
- the first network device may determine the forwarding policy as shown in Table 2 through the second identifier, and then determine that its corresponding path indication information is 129 through IntentSID1.
- Table 3 illustrates a case where the forwarding policy is a policy group, and the forwarding policy may be shown as the policy group policy group10 shown below.
- the policy group includes a corresponding relationship between the first identifier and the path indication information, that is, includes a corresponding policy between the first identifier and the path indication information.
- the first network device can determine the policy group10 shown in Table 3 through the second identifier such as VPNSID1.
- the policy group10 includes multiple correspondences, that is, multiple detailed policies, wherein the intentSID1 corresponds to the policy1, and the service requirements of the intentSID1 are: Low latency and large bandwidth, and policy1 is an SR policy or a segment ID list.
- the policy1 is an SR policy, it can determine a corresponding segment ID list.
- the forwarding path indicated by the segment identifier list can meet the transmission requirements of low delay and large bandwidth.
- the path indication information corresponding to IntentSID2 includes the segment identifier list provided by policy2 and sliceID1. It indicates that when the intent SID in the packet is intentSID2, the packet is sent according to the network slice indicated by sliceID in the forwarding path corresponding to the segment identifier list indicated by policy2.
- the first identifier in the third correspondence is intentSID8, which is an intent identifier
- the corresponding path indication information is sliceID1, indicating that when the first identifier in the packet is intentSID8, the first identifier can be sent based on the network slice indicated by sliceID1. a message.
- the first network device determines a third identifier corresponding to it based on the first identifier, and determines a forwarding policy corresponding to the first packet based on the second identifier, where the forwarding policy includes the first correspondence between the third identifier and the path indication information. relation.
- the first network device may determine the path indication information based on the third identifier and the second correspondence.
- the first network device also determines a third identifier corresponding to the first identifier based on the first identifier.
- the first network device further stores the correspondence between the first identifier and the third identifier, as shown in Table 4 below.
- the first network device may determine the path indication information corresponding to it based on any one of the various examples provided in the first manner above.
- This application will not repeat them here.
- the method of adding the third identifier can make the control device use the same intent SID to realize the service arrangement of the whole network, and each network or each device is configured with a different third identifier, which can be passed through the first identifier and the third identifier.
- Corresponding relationship, obtaining corresponding path indication information is more conducive to the realization of hierarchical network management.
- the first network device updates the first packet based on the path indication information to obtain the second packet.
- the first network device may update the first packet to obtain the second packet.
- the manner in which the first network device updates the first packet to obtain the second packet includes, but is not limited to, the following manners: Manner 1, after determining the path indication information, the first network device may encapsulate the path indication information into the first packet
- the second packet is obtained in the middle, so that the device that needs to continue to forward the packet can forward the packet according to the path indication information obtained by the first network device, which can reduce the configuration of tunnel information in the network.
- the path indication information is a segment identifier list
- the first network device may encapsulate a new IPv6 header for the first packet, the IPv6 header includes an SRH, and the SRH includes path indication information A list of corresponding segment IDs.
- the path indication information is a network slice identifier
- the first network device may encapsulate a new IPv6 header for the first packet, where the IPv6 header includes an HBH or a destination option header, where the HBH Or the destination option header includes the network slice identifier corresponding to the path indication information.
- the path indication information is a flexible algorithm identifier and a network slice identifier
- the first network device may encapsulate a new IPv6 packet header for the first packet
- the IPv6 packet header includes at least one HBH
- the flexible algorithm identifier and network slice identifier described above are included in at least one HBH, that is, the flexible algorithm identifier and the network slice identifier can be carried in the same HBH or in different HBHs.
- the first network device may also not encapsulate the path indication information.
- the first network device may determine an outbound interface for sending the first packet according to the path indication information. After determining the outgoing interface of the first packet, the first network device may update the first packet according to information such as a media access control (Media Access Control, MAC) address of the outgoing interface to obtain a second packet.
- Media Access Control Media Access Control
- the path indication information is a segment identifier list
- the segment identifier list may only include a segment identifier, and when the segment identifier is the SID of the first network device itself, the first network device may determine to send the data according to the SID.
- the outbound interface of the first packet may be a media access control (Media Access Control, MAC) address of the outgoing interface.
- the first network device updates the first packet to obtain the second packet
- the first network device may also update the first packet based on other methods, such as updating an existing HBH header.
- This application does not limit the manner in which the first network device updates the first packet.
- the first network device may send the second packet based on the path indication information. As shown in Table 1, after the first network device determines that the corresponding path indication information is the flexible algorithm identifier 129, it can send the second packet according to the flexible algorithm identifier 129. During this process, the first network device may also combine The destination address of the second packet and the flexible algorithm identifier determine the exit for sending the second packet, and the like.
- FIG. 5 a schematic flowchart of a message sending method provided by the present application is provided, including the following steps:
- the first network device obtains a first packet, where the first packet includes a first identifier.
- Case A The IP header of the first packet includes the first identifier.
- the IP header of the first message may be the above-mentioned basic header or extended header, which is not limited herein.
- the first identifier may be the above-mentioned intent SID, intent identifier or network segment identifier.
- the network slice identifier can correspond to, for example, a flexible algorithm identifier or sliceID on PE1, which corresponds to a network slice on PE1.
- the first identifier can correspond to a network slice in the backbone network, that is, the AlgoSID can be the identifiers of at least two network devices in the network, and the at least two devices can be edge devices in the backbone network, such as PE1, PE2 , PE3 and PE4 or more devices.
- the AlgoSID mentioned here and later is an identifier of at least two devices, which means that at least two network devices included in the first network can determine the path indication information corresponding to the first packet based on the first identifier.
- Case B The HBH or destination option header of the first packet includes a first identifier, and the first identifier is an intent ID.
- the above-mentioned first identifier is used to indicate the service requirement corresponding to the first packet.
- the manner in which the first network device obtains the first packet includes the following two cases:
- Case 1 Receive a packet sent by the second network device, and the packet is the first packet.
- Case 2 After the first network device receives the message sent by the second network device, and updates the message, the updated message is the first message obtained by the first network device. For example, when the message includes a segment identifier list, the first network device can update the DA of the message according to the segment identifier list, and the first message obtained by the first network device is the message after updating the DA.
- the above-mentioned second network device may be in the same network as the first network device, or may be in a different network.
- the second network device may be, for example, an ACC1 device or an MC1 device of the metropolitan area network 1 in the network shown in FIG. 3 .
- the first network device may be, for example, a device such as PE1 or PE2 in the backbone network in the network shown in FIG. 3 , or a device such as MC2 in the metropolitan area network 2 .
- the P2 device of the backbone network in the network shown in FIG. 3 may be the second network device
- the PE1 may be the first network device.
- the first identifier may be a segment identifier, such as an intent segment identifier or a network segment identifier.
- the SRH of the first packet includes the first identifier.
- the first identifier may be an intent ID, and when the first identifier is an intent ID, the first identifier may be included in the HBH or destination option of the first packet.
- the first identifier may be carried in the IP header of the packet sent by the second network device to the first network device.
- the first identifier may be carried in the HBH or destination option header of the packet sent by the second network device to the first network device and include the above-mentioned first identifier.
- the first network device determines corresponding path indication information based on the first identifier.
- the path indication information is the network slice identifier.
- the network slice identifier may be used to identify a network slice for forwarding the first packet, and the network slice identifier may only be the identifier of the slice by the first network device, or may be the first network device where the first network device is located.
- the identifier of the slice of multiple devices in a network, the network slice identifier can be one or both of the flexible slice identifier or sliceID.
- the first network device determines the corresponding path indication information based on the first identifier, including but not limited to the following ways:
- the first network device includes a correspondence between the first identifier and the path indication information, and the first network device determines the path indication information based on the correspondence between the first identifier and the path indication information.
- the corresponding relationship may be as shown in Table 5, and the first network device may determine that its corresponding path indication information is 129 through IntentSID1.
- the first network device determines a third identifier corresponding to the first identifier based on the first identifier, and determines the path indication information based on the correspondence between the third identifier and the path indication information.
- the first network device may determine the path indication information based on the third identifier and the above-mentioned corresponding relationship.
- the first network device also determines a third identifier corresponding to the first identifier based on the first identifier.
- the first network device also stores a correspondence between the first identifier and the third identifier, as shown in Table 6 below.
- the first network device After the first network device obtains the third identifier based on the first identifier, it can then determine the path indication information corresponding to it based on the manner provided in the first manner above. This application will not repeat them here.
- the path indication information is a list of segment identifiers. That is, the first network device may determine the corresponding segment identifier list based on the intent ID and the segment identifier list, or the corresponding relationship between the intent ID and the SR Policy.
- S515 The first network device updates the first packet to obtain the second packet.
- Case A The manner in which the first network device updates the first packet to obtain the second packet is similar to the manner in which the path indication information in S415 is the network slice identifier in the method embodiment shown in FIG. Repeat.
- Situation B The manner in which the first network device updates the first packet to obtain the second packet is similar to the manner in which the path indication information in S415 is a segment identifier list in the method embodiment shown in FIG. Repeat.
- the first network device may send the second packet based on the path indication information. As shown in Table 1, after the first network device determines that the corresponding path indication information is the flexible algorithm identifier 129, it can send the second packet according to the flexible algorithm identifier 129. During this process, the first network device may also combine The destination address of the second packet and the flexible algorithm identifier determine the exit for sending the second packet, and the like.
- FIG. 6 a schematic flowchart of an identification sending method provided by the present application is provided.
- the method flow is applied to a control device in a network, and includes the following steps:
- the control device obtains the first identifier.
- the control device may be a controller, a management device, an orchestrator, or a certain router, switch, etc. in the network.
- the first identifier corresponds to the service requirement.
- the first identifier is the first identifier in the method embodiment shown in FIG. 4 or FIG. 5 above, and the first identifier may be an intent segment identifier or a network segment identifier.
- control device obtains the first identifier includes but is not limited to the following manners:
- Manner 1 The control device generates the first identifier. For example, the control device generates an intent segment identifier based on network service planning and the like.
- the control device receives the first identifier sent by the network device.
- the control device may receive a message carrying the first identifier sent by the network device, where the message may be a link state protocol message or a path computing unit communication protocol message, so as to obtain the first identifier from the message.
- the control device determines a first segment identifier list corresponding to the target service, where the first segment identifier list includes the above-mentioned first identifier.
- the control device may determine the segment identifier list corresponding to the target service based on network planning, or may also be connected with other service systems.
- the first segment identifier list includes the above-mentioned first identifier.
- the first segment identifier list also includes other segment identifiers, such as network segment identifiers, intent segment identifiers, VPN SIDs, and the like.
- the first segment identifier list determined by the control device may be a segment identifier list indicating the end-to-end forwarding path of the forwarding target service message.
- the segment identifier list of the end-to-end forwarding path from the network to the metropolitan area network 2 may also be a segment identifier list indicating a certain segment path, for example, a segment identifier list indicating only the forwarding path of the backbone network.
- the foregoing forwarding path may be sent to a device such as ACC1 or PE1 through a first network device included in the first network.
- the first identifier may be used to enable the first network device to determine corresponding path indication information based on the first identifier, where the path indication information includes: a network slice identifier and/or a second segment identifier list.
- S615 The control device sends the first segment of the identification list.
- the control device may send the segment identifier list to one or more devices in the network.
- the first segment identifier list may be sent to the head node of the forwarding path, for example, may be sent to devices such as ACC1 or PE1.
- the control device may send the above-mentioned first segment identification list through a link state protocol message or a path calculation unit communication protocol message.
- the first identifier is an intent identifier
- the first network device may be the network device PE1 as shown in FIG. 3 .
- PE1 can receive a message sent from MC1, and the message carries an intent identifier.
- the intent identifier may be updated by ACC1 into the message after receiving the message.
- the HBH of the packet carries the intent identifier.
- PE1 determines the corresponding sliceID identifying the network slice according to the intent identifier, and forwards the packet based on the sliceID.
- PE1 can also update the packet, strip the existing HBH header of the packet, and encapsulate a new HBH header for the packet.
- the new HBH includes the sliceID, which is in the subnet that supports network slicing.
- other devices in the device can forward the packet on the corresponding network slice according to the SliceID. For example, in the scenario where different Flex-Algos plan the same Locator address, the Flex-Algo ID that identifies the Flex-Algo network slice can be carried in the IPv6 extension header HBH. In the subnet that supports network slicing, according to the Flex-Algo ID Instructs packets to be forwarded on the corresponding network slice.
- Example 2 define an AlgoSID.
- the definition of the AlgoSID can be shown in Table 7 below.
- AlgoSID The action of AlgoSID is as follows:
- the slice ID is obtained according to the correspondence between the AlgoSID and the network slice ID. , and encapsulate the slice ID into the packet HBH to instruct the packet to be forwarded in the specified slice.
- the corresponding relationship is also called the mapping relationship, which is specifically mapped on PE1.
- the mapping relationship is shown in Table 8 below:
- the controller arranges the path, it can arrange the Algo SID into the E2E tunnel SID List according to the quality requirements of the service on the network, and the ACC1 encapsulates the Algo SID in the SRH of the packet.
- the device converts the Algo SID into an "intent ID” or “slice ID” according to the correspondence between the Algo SID and the network slice identifier. ”, encapsulate the intent ID or Flex-Algo ID in the packet HBH.
- the packet is forwarded according to the intent ID or Flex-Algo ID in the routing table corresponding to the Flex-Algo, and the packets corresponding to the target service are restricted to be forwarded in this network slice.
- Steps 1-6 shown in Figure 7 are as follows:
- the orchestrator arranges paths according to business requirements, such as SLA requirements.
- the orchestrator requests the controller to obtain the SID corresponding to the intent.
- the request can carry Flex-Algo information and backbone (Core) network entry and exit PE node information;
- the controller obtains the first identifier-AlgoSID corresponding to the Flex-Algo on the specified incoming PE node according to the Flex-Algo information and the incoming and outgoing node information in the instructions of the orchestrator, and returns it to the orchestrator;
- the arranger arranges and sends the path SID List to the network device ACC through the controller, which carries the AlgoSID;
- the tunnel head node in the network device encapsulates SRH with AlgoSID, such as ACC1 encapsulates SRH;
- Metro1 and Metro2 are networks that support SRv6 Policy
- the backbone network is a network that supports flex-aglo network slicing.
- the scheduler arranges the end-to-end forwarding tunnel according to the service requirements of the target service, as shown in Figure 8: the (AGG1 SID, MC1 SID) of the forwarding path in the Metro1 network are the segment identifiers of AGG1 and MC1, respectively, representing the target service
- the packets need to be forwarded through AGG1 and MC1 of Metro1.
- MC2 SID, AGG2 SID, ACC2 SID Indicates the (MC2 SID, AGG2 SID, ACC2 SID) of the path in the Metro2 network, which are the segment identifiers of MC2, AGG2, and ACC2, respectively.
- the tunnels in Metro1 and Metro2 are respectively SID Lists in the form of SRv6 Policy tunnels.
- Algo SID1-128 represents the Flex-Algo 128 of the PE1 node, which plays the role of indicating the shard and can also play the role of specifying the route of the PE. effect.
- the orchestrator can obtain the information of the head node and the tail node of the backbone network capable of slicing, and the orchestrator can select the Flex-Algo of the CORE network, such as AlgoSID1-128, for the core network according to the business intent.
- the orchestrator may obtain the corresponding relationship between the intent ID or the AlgoSID and the network slice identifier in advance. In an example, the mapping relationship is shown in Table 9 below:
- Intent ID/AlgoSID Slice ID Intent 1 (guaranteed bandwidth)
- Flex-Algo 128 Intent 2 (guaranteed low latency)
- Flex-Algo 129 Intention 3 (do not take the XXX link)
- the orchestrator After the orchestrator obtains the above segment identifier list, it can send the segment identifier list to ACC1, and the forwarding process of the message shown in Figure 8 is as follows:
- Metro1 After the ACC1 of Metro1 receives the message corresponding to the target service sent by the customer terminal equipment (customer-premises equipment, CPE), it will obtain a list of segment identifiers (AGG1 SID, MC1 SID, AlgoSID1-128, MC2 SID, AGG2 SID), and obtain the AGG2 VPN SID according to the destination address of the message, encapsulate it into the message, and then forward the message.
- AGG1 SID segment identifiers
- the active SID of the packet is AlgoSID1-128, then PE1 determines the corresponding path indication information according to AlgoSID1-128 as slice ID: 128, then PE1 can slice the slice.
- the ID 128 is encapsulated into the HBH of the packet, and the 128 slice is selected to continue to forward the packet.
- PE2 AlgoSID2-129 PE2 AlgoSID2-130 130
- the (AGG1 SID, MC1 SID) representing the path in the Metro1 network in the message SID List in Figure 8 and the (MC2 SID, AGG2 SID, ACC2 SID) representing the path in the Metro2 network are only used to express the paths in different networks , and the paths in these networks can also be expressed by bonding segment identifiers (bonding SIDs, BSIDs). That is, the head node ACC1 may also obtain the segment identifier list including the BSID, and the network device transmitting the packet may expand the BSID after receiving the packet, and reseal the SRH of the local tunnel in the outer layer of the packet. .
- the edge network Since the edge network only accesses local users, the number of access users and tunnels is much less than that of the converged network like the backbone network. Therefore, the technical solution focuses on solving the problem of too many tunnels on the backbone network.
- the above technical solutions can also be applied to the edge metro network to further reduce the number of tunnels on the edge metro network.
- the present invention is not limited to the network and scenario of application.
- this technical solution does not require a large number of edge network devices to be upgraded to support HBH, new AlgoSID devices can be automatically generated, and SRv6 Policy can be deployed on edge networks that do not support network slicing and HBH; the backbone that supports slicing and HBH carrying slice ID or intent ID Network upgrade deploys Flex-Algo network slicing or network slicing with SliceID; therefore, it is more suitable for scenarios where edge network cannot be upgraded to support network slicing, backbone network supports network slicing and HBH carries slice ID or intent ID, and this kind of scenario is exactly The most likely problems encountered in network deployment at present.
- Example 3 Uniformly allocate a dedicated SID representing the same Flex-Algo slice in the entire subnet.
- the core difference between this technical solution and Example 2 is that the AlgoSID in Example 2 is allocated for each device in the same network.
- the AlgoSID in this example is for the same slice, and the same AlgoSID is allocated, and the network devices are not distinguished.
- nodes are not distinguished, and different Algo SIDs are assigned to each slice.
- Algo SID-128 in the above figure represents the slice Flex-Algo 128 in the Core network. This SID only serves to indicate the slice. , which does not distinguish between nodes. That is, the AlgoSID may be the SIDs of at least two devices in a certain network.
- a special type of SID is newly defined, such as a flexible slice anycast segment identifier (AlgoAnycastSID), which may be a special type of AlgoSID.
- AlgoAnycastSID An example of its Function definition is shown in Table 11 below:
- AlgoAnycastSID The action of AlgoAnycastSID is as follows:
- the device When the device receives the SRv6 packet and the current active SID in the SRH is AlgoAnycastSID, it obtains the slice ID according to the mapping relationship between the AlgoAnycastSID and the network slice ID, and encapsulates the slice ID in the packet HBH, instructing the packet to be specified in the specified Forward in slices.
- the mapping relationship can be shown in Table 12 below:
- the MAN aggregated route can be advertised to the backbone network, and the AlgoAnycastSID Locator aggregated by the backbone network can be advertised to the MAN.
- Backbone network traffic is forwarded according to the aggregation route. Therefore, the orchestrator only needs to issue the intent and does not need to know the boundary nodes of the backbone network, which greatly reduces the requirements of the orchestrator.
- the tunnel head node device encapsulates the AlgoAnycastSID in the E2E SRH.
- the metropolitan area network such as metro1
- the PE that receives the traffic first, such as PE1 or PE2, converts the AlgoAnycastSID into "Flex-Algo ID” and encapsulates it in the HBH.
- Other devices in the backbone network check the routing table of the corresponding Flex-Algo according to the "intent ID or Flex-Algo ID" in the HBH, which means that the traffic is constrained to be forwarded in this network slice.
- Networks that support network slicing such as all nodes in the backbone network or all edge nodes, such as PE equipment, assign an identical AlgoSID to each shard, which is equivalent to all nodes sharing a SID in the same Flex-Algo slice, which can The Locator address is saved and the implementation is simpler.
- the AlgoAnycastSID needs to be consistent across the entire subnet.
- the orchestrator does not need to orchestrate the boundary points of the slicing network, but only needs to directly orchestrate the business requirements of the slicing network, which greatly simplifies the processing of the orchestrator.
- Example 4 Through the unified intent SID of the whole network and the SID that can guide the direction of packet forwarding, such as VPN SID, the service traffic can be guided to select a network slice or a tunnel or directly forward the local IP (Native IP) without the need for Establishing a large number of E2E tunnels can better solve the problem of massive tunnels.
- This example can briefly include the following steps:
- the Locator routes of each subnet are aggregated and advertised to other networks.
- the corresponding Policy group is found according to the default route or aggregation route of its VPNSID;
- the orchestrator specifies the corresponding intent SID for the target service and sends it to the head node of the tunnel. After entering the subnet, it finds the corresponding Policy group according to the VPNSID, and then selects the Policy Group according to the intent ID mapped by the intent SID. specific tunnels or slices.
- the device When the device receives an SRv6 packet and the current active SID in the SRH is the IntentSID, it obtains the service SLA according to the mapping relationship between the IntentSID and network resources, such as network forwarding channel resources, such as network slices, policy tunnels, and BE forwarding.
- network forwarding channel resources such as network slices, policy tunnels, and BE forwarding.
- the path indication information of the forwarding channel instruct the packet to be forwarded in the corresponding network channel.
- the SRH of the SRv6 Policy corresponding to the IntentSID is encapsulated in the message to guide forwarding.
- the slice ID is obtained according to the mapping relationship between the IntentSID and the slice ID, and the slice ID is encapsulated in the packet HBH to guide the packet in the specified slice. forwarded in.
- BE forwarding is performed directly according to VPNSID or next-hop SID.
- the packets of the target service such as from CPE1 to CPE2, are forwarded through the backbone network and multiple metropolitan area networks.
- each network can create a Policy Group within its own network.
- the Policy Group can use a mask to match the destination address.
- the Policy Group can contain SRv6 Policy, Flex-Algo slice, SliceID slice, SRv6 BE et al.
- the backbone network it can be matched to Policy Group10 through the Metro2 aggregation route:
- MC2 aggregates all Locators of Metro2 and releases it to PE3.
- the backbone networks PE1 and PE2 aggregate the Locators of the backbone network and publish them to the Metro1 network, and publish the aggregated Locators of Metro2 to Metro1. Conversely, the way to release from Metro1 to Metro2 is the same.
- Metro2 MC2 establishes the SRv6 Policy tunnel and Policy Group within the domain to the ACC2 Locator. And match the endpoint/mask exactly, associate the Locator route with the Group, and classify the traffic matching the route.
- PE1 uses the aggregated route of Metro2 as the endpoint (Endpoint) to establish an SRv6 Policy/SRv6 Policy Group, and uses the endpoint/mask (mask) to accurately match, associate the Locator route with the Group, and match the traffic of the route to flow Classification.
- Metro1 establishes an SRv6 Policy/SRv6 Policy Group with the default route as the Endpoint, and matches exactly with the endpoint/mask, associates the Locator route with the Group, and classifies the traffic matching the route.
- FIG. 10 an example of the mapping relationship between the aggregated routes and aggregated tunnels formed between different subnets is shown in FIG. 10 .
- Metro 2 aggregated route->Policy Group 1 where the aggregated route prefix of Metro2 can be such as: prefix1.
- Metro 3 aggregated route->Policy Group 2 where the aggregated route prefix of Metro2 can be such as: prefix2.
- Metro 4 aggregated route -> Policy Group 3 where the aggregated route prefix of Metro2 can be such as: prefix3.
- Metro 1 aggregated route->Policy Group 1 where the aggregated route prefix of Metro1 can be such as: prefix4.
- Metro 2 aggregated route -> Policy Group 2 where the aggregated route prefix of Metro2 can be such as: prefix5.
- Metro 3 aggregated route->Policy Group 3 where the aggregated route prefix of Metro2 can be such as: prefix6.
- Metro 4 aggregated route->Policy Group 4 where the aggregated route prefix of Metro2 can be such as: prefix7.
- a unified intent SID is planned for the entire network. This SID is not used for addressing and only carries service intent.
- the high-order bits of the intent SID can use a special value to identify the SID as a special SID that carries the intent ID.
- An intent ID can express the meaning of the forwarding requirements of both the metropolitan area network and the backbone network; if the metropolitan area network has more types of intent IDs, the backbone network needs to set the ratio of "intent ID: forwarding tunnel or slice" to "N:1" ” mapping relationship. Therefore, when planning the intent SID of the whole network, it can be planned according to the hierarchical aggregation, so as to reduce the configuration of such "N:1" mapping relationship.
- ACC1 in the Metro1 network after receiving the target service message sent by CPE1, the DA of the message is the address of CPE2, then ACC1 checks the private network routing table according to the DA to obtain the VPNSID corresponding to the message as ACC2 VPN SID, according to this SID, look up the routing table to match the default route, or aggregate the route, the route is associated with the SRv6 Policy Group.
- ACC1 After ACC1 determines the Policy Group according to the VPNSID, ACC1 obtains the stack top SID in the SRH according to the configuration requirements, such as the intent SID shown in the figure, and then maps it to the corresponding intent ID according to the intent SID, and determines the corresponding SRv6 to which the traffic is to be drained by the intent ID. Policy or network slice. If the intent ID is mapped to a Policy tunnel, ACC1 encapsulates the SRH of the Policy tunnel in the outer layer of the packet; if the intent ID is mapped to a network slice, the slice ID is encapsulated in an IPv6 HBH to indicate that the packet is in the specified slice Forward. If the mapping is Native IP forwarding, only check the routing table according to the VPNSID and go to SRv6 BE forwarding.
- the determined path indication information is the policy tunnel, that is, the segment identifier list (AGG1 SID, MC1 SID) ), update it into the packet, so that the packet is forwarded in Metro1 according to the tunnel indicated by this segment ID list.
- MC1 matches the default route according to the ACC2 VPNSID, and forwards it to PE1 through BE.
- PE1 on the Core network receives the packet, it matches the Metro2 aggregated route according to the VPNSID and diverts the traffic to the aggregated SRv6 Policy Group of Metro2. After the Policy Group is determined, PE1 obtains the top-of-stack SID in the SRH according to the configuration requirements, that is, the intent SID, and then maps the intent SID to the corresponding intent ID, and determines the corresponding SRv6 Policy or network slice to which the traffic is directed based on the intent ID.
- the segment ID list (P1 SID, P2 SID, PE3 SID) of the Policy tunnel is encapsulated in the outer layer of the packet; if it is a network slice, the slice ID is encapsulated in IPv6 HBH to indicate that the packet is in the specified Intra-slice forwarding. If the mapping is Native IP forwarding, only the routing table is checked according to the ACC2 VPNSID and forwarded by SRv6 BE.
- the packet is forwarded to PE3 of the Core network after the SRv6 Policy is terminated or the network slicing is forwarded according to the above information, and the route is aggregated according to the ACC2 VPN SID and forwarded to MC2 through BE.
- MC2 matches the ACC2 Locator route according to the ACC2 VPNSID, and diverts traffic to the corresponding SRv6 Policy Group.
- ACC2 obtains the intent SID at the top of the stack in the SRH according to the configuration requirements, maps it to the corresponding intent ID according to the intent SID, and determines the corresponding SRv6 Policy or network slice to which the traffic is directed based on the intent ID. If the intent ID directly matches a Policy tunnel, such as (AGG2 SID, ACC2 SID), the packet is forwarded according to this tunnel. If it matches a network slice, the slice ID is encapsulated in IPv6 HBH to indicate that the packet is forwarded within the specified slice. If the mapping is Native IP forwarding, only the routing table is checked according to the ACC2 VPNSID and forwarded by SRv6 BE.
- Example 5 Each subnet uses an independent intent SID to complete segment tunnel forwarding.
- This example is an extension of Example 4 above.
- Example 4 Adopt the unified intent SID of the whole network, push the intent SID into the top of the SRH stack of the target service, carry it from the head node to the end node of the end-to-end tunnel, and indicate the SLA requirement of service forwarding through the intent ID mapped to the intent SID , and use VPNSID for packet routing and forwarding. That is, the VPN SID with routing capability and the intent SID with service SLA requirements are used as a whole to complete forwarding, so that the network does not need to create an E2E tunnel.
- This technical solution requires the overall planning intent SID of the network.
- Each subnet entry node first records the current intent SID in the SID list of the received target packet as the SID indicating the service SLA, and then the SID List is shifted backward to the next intent SID, and the intent SID is used to check the route matching to the corresponding SRv6 Policy Group.
- ACC1 After ACC1 receives the message of the target service sent by CPE1, the DA of the message is the address of CPE2, and the corresponding segment identifier list is determined as (MI intent SID, core intent SID, M2 intent SID), and ACC1 according to this DA checks the private network routing table and obtains that the VPNSID corresponding to the packet is the ACC2 VPN SID. According to this SID, the routing table is checked to match the default route, or the aggregated route is associated with the SRv6 Policy Group. Then ACC1 determines its corresponding segment identifier list as (AGG1 SID, MC1 SID) according to the M1 intent SID, and encapsulates it into the message.
- the Core network PE1 When the Core network PE1 receives the packet, the current Active SID of the packet is "Core Intent SID", then PE1 records the “Core Intent SID” and shifts it to the next SID in the SID List as “M2 Intent SID” ".
- the Metro2 aggregated route is matched according to the "M2 intent SID” and then the traffic is diverted to the aggregated SRv6 Policy Group of Metro2. After the Policy Group is determined, PE1 maps the recorded "Core Intent SID” to the corresponding Intent ID according to the configuration requirements, and determines the corresponding SRv6 Policy or network slice to which the traffic is to be diverted from the Intent ID.
- the segment ID list (P1 SID, P2 SID, PE3 SID) of the Policy tunnel is encapsulated in the outer layer of the packet; if it is a network slice, the slice ID is encapsulated in IPv6 HBH to indicate that the packet is in the specified Intra-slice forwarding. If the mapping is Native IP forwarding, only check the routing table according to the "M2 intent SID" and go to SRv6 BE forwarding.
- the Metor2 network MC2 When the Metor2 network MC2 receives the message, the current Active SID of the message is "M2 intent SID", then MC2 records the “M2 intent SID” and shifts it to the next SID in the SID List as “ACC2 VPN SID” ". After matching the route according to "ACC2 VPN SID", the traffic is diverted to the SRv6 Policy Group. After the Policy Group is determined, MC2 maps the recorded "M2 Intent SID” to the corresponding Intent ID according to the configuration requirements, and determines the segment ID list (AGG2 SID, ACC2 SID) corresponding to the corresponding SRv6 Policy to be drained by the Intent ID. The outer layer of the packet is forwarded.
- the segment ID list AAGG2 SID, ACC2 SID
- the main difference between the forwarding processing in Example 5 and Example 4 is that the forwarding is based on the SID List formed by the intent SID.
- the intent SID in Example 5 also has routing capabilities.
- the ingress interface node of each subnet needs to be based on the current SID and the next The SID coordination is completed.
- the current SID is used to identify the service SLA in this subnet, and the next SID after the offset is used for routing, matching the corresponding aggregation tunnel Policy Group.
- the VPNSID and the role type in the common SRv6 Policy are used after the destination is finally reached.
- the present application provides an apparatus (for example, a repeater/network device) having a function of implementing the behavior of the network device in the above method.
- the functions can be implemented based on hardware, and can also be implemented based on hardware executing corresponding software.
- the hardware or software includes one or more modules corresponding to the above functions. See, for example, Figures 12, 13 and 14 below.
- FIG. 12 is a schematic structural diagram of a network device 1200 provided by an embodiment of the present application.
- the network device 1200 may be configured to execute the first network device in the method shown in FIG. 4 or FIG. 5 above.
- the method that is, the network device 1200 can be used to execute the network device in any of the above-mentioned exemplary methods in FIG. 7 to FIG. 11 , such as the method executed by PE1.
- the network device 1200 includes: an obtaining module 1201 , a processing module 1202 , and a sending module 1203 .
- the obtaining module 1201 may be configured to execute the related method of the network device obtaining the first packet including the first identifier in the above method embodiments; the processing module 1202 may be configured to execute the method of determining the correspondence of the first packet according to the first identifier in the above method related methods such as path indication information, obtaining the second packet, etc.; the sending module 1203 can be configured to execute the related method of sending the second packet in the above method.
- the network device 1200 and the foregoing packet processing method embodiments belong to the same concept, and only the steps performed by each unit of the network device 1200 are exemplified here, but it does not mean that it does not execute the steps in the foregoing embodiments. For other steps or optional methods, the specific implementation process thereof is detailed in the relevant description of the above method example section, which is not repeated here.
- FIG. 13 is a schematic structural diagram of a network device 1300 provided by an embodiment of the present application, where the network device 1300 may be configured to execute the method performed by the second network device in the method shown in FIG. 4 or FIG. 5 above.
- the method that is, the network device 1300 can be used to execute the method performed by the network device in any of the above-mentioned exemplary methods in FIGS. 7-11 , such as the method executed by ACC1 or MC1.
- the network device 1300 includes: an obtaining module 1301 , a processing module 1302 , and a sending module 1303 .
- the obtaining module 1301 can be used to execute the method related to the network device obtaining the first identifier in the above method; the processing module 1302 can be used to execute the method related to generating the first packet including the first identifier in the above method; the sending module 1303 can be used for executing the related method of sending the first message in the above method.
- the network device provided in FIG. 13 performs the above-mentioned packet sending method
- only the division of the above-mentioned functional units is used as an example for illustration.
- the above-mentioned functions can be allocated by Different functional units are completed, that is, the internal structure of the network device is divided into different functional units to complete all or part of the functions described above; or a unified functional unit is used to complete the functions of the above-mentioned multiple units.
- the network device 1300 and the foregoing packet processing method embodiments belong to the same concept, and only the steps performed by each unit of the network device are illustrated here, but it does not mean that it does not execute the steps in the foregoing embodiments. For other steps or optional methods, the specific implementation process thereof is detailed in the relevant description of the above method example section, which is not repeated here.
- FIG. 14 is a schematic structural diagram of a control device 1400 provided by an embodiment of the present application, and the control device 1400 can be used to execute the control device execution in the method shown in FIG. 4 , FIG. 5 or FIG. 6 above.
- method that is: the control device 1400 can be used to execute the method executed by the control device in any of the above-mentioned exemplary methods in FIGS. 7 to 11 .
- the network device 1400 includes: an obtaining module 1401 , a processing module 1402 , and a sending module 1403 .
- the obtaining module 1401 can be used to execute the related method for the control device to obtain the first identifier in the above method; the processing module 1402 can be used to execute the related method of determining the first segment identifier list corresponding to the target service in the above method; the sending module 1403, A related method of transmitting a segment identification list including the first identification may be used to perform the above method.
- control device 1400 belongs to the same concept as the above-mentioned method for processing a message and a method for sending an identifier. Only the steps performed by each unit of the control device are illustrated here, but it does not mean that the above-mentioned implementation is not implemented. For other steps or optional methods in the example, the specific implementation process thereof can be found in the relevant description of the above method example section, and details are not repeated here.
- the embodiments of the present application further provide a network device, and the hardware structure of the network device is introduced below.
- FIG. 15 is a schematic structural diagram of a network device 1500 provided by an embodiment of the present application.
- the apparatus 1500 can execute the first network device, the second network device or the control device shown in FIG. 4 , FIG. 5 , and FIG. 6 ; or the first network device shown in FIG. 7 to FIG. 11 such as PE1 , the second network device such as ACC1 or MC1, or a method for controlling device execution.
- the apparatus 1500 includes at least one processor 1501 , a communication bus 1502 and at least one communication interface 1504 , and optionally, the apparatus 1500 may further include a memory 1503 .
- the network device 1500 may be implemented by a general bus architecture, such as the communication bus 1502 shown in FIG. 15 .
- the processor 1501 may be a general-purpose CPU, NP, microprocessor, or may be one or more integrated circuits for implementing the solutions of the present application, such as application-specific integrated circuits (ASIC), programmable logic A device (programmable logic device, PLD) or a combination thereof.
- ASIC application-specific integrated circuits
- PLD programmable logic A device
- the above-mentioned PLD can be a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a general-purpose array logic (generic array logic, GAL) or any combination thereof.
- the communication bus 1502 is used to transfer information between the aforementioned components.
- the communication bus 1502 can be divided into an address bus, a data bus, a control bus, and the like. For ease of presentation, only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus.
- the memory 1503 can be read-only memory (ROM) or other types of static storage devices that can store static information and instructions, or can be random access memory (RAM) or can store information and instructions Other types of dynamic storage devices, it can also be electrically erasable programmable read-only memory (electrically erasable programmable read-only memory, EEPROM), compact disc read-only memory (CD-ROM) or other optical disk storage , optical disc storage (including compact disc, laser disc, optical disc, digital versatile disc, blu-ray disc, etc.), magnetic disk storage medium or other magnetic storage device, or can be used to carry or store desired program code in the form of instructions or data structures and any other medium that can be accessed by a computer, but is not limited thereto.
- the memory 1503 may exist independently and be connected to the processor 1501 through the communication bus 1502 .
- the memory 1503 may also be integrated with the processor 1501.
- the communication interface 1504 uses any transceiver-like device for communicating with other devices or a communication network.
- the communication interface 1504 includes a wired communication interface and may also include a wireless communication interface.
- the wired communication interface may be, for example, an Ethernet interface.
- the Ethernet interface can be an optical interface, an electrical interface or a combination thereof.
- the wireless communication interface may be a wireless local area network (wireless local area networks, WLAN) interface, a cellular network communication interface or a combination thereof, and the like.
- the communication interface 1504 can also be used to receive a configuration instruction, so that the processor 801 can obtain the first identifier according to the instruction of the configuration instruction, obtain the first message according to the first identifier, and the like.
- the network device may also include other communication interfaces with which configuration instructions are received.
- the network device 1500 may include multiple processors, such as the processor 1501 and the processor 1505 shown in FIG. 15 .
- processors can be a single-core processor (single-CPU) or a multi-core processor (multi-CPU).
- a processor herein may refer to one or more devices, circuits, and/or processing cores for processing data (eg, computer program instructions).
- the memory 1503 is used to store the program code 1510 for executing the solutions of the present application, and the processor 1501 can execute the program code 1510 stored in the memory 1503 . That is, the network device 1500 can implement the method provided by the method embodiment through the processor 1501 and the program code 1510 in the memory 1503 .
- FIG. 16 is a schematic structural diagram of a network device 1600 provided by an embodiment of the present application.
- the apparatus 1500 can execute the first network device, the second network device or the control device shown in FIG. 4 , FIG. 5 , and FIG. 6 ; or the first network device shown in FIG. 7 to FIG. 11 such as PE1 , the second network device such as ACC1 or MC1, or a method for controlling device execution.
- the apparatus 1600 includes a main control board and one or more interface boards, and the main control board is communicatively connected with the interface boards.
- the main control board is also called the main processing unit (MPU) or the route processor card (route processor card).
- MPU main processing unit
- route processor card route processor card
- the main control board is responsible for the control and management of each component in the device 1600, including routing calculation, equipment management and maintenance functions .
- Interface boards also known as line processing units (LPUs) or line cards, are used to forward data.
- the apparatus 1600 may also include a switch fabric board, the switch fabric board is communicatively connected to the main control board and the interface board, the switch fabric board is used to forward data between the interface boards, and the switch fabric board may also be referred to as a switch fabric Board unit (switch fabric unit, SFU).
- the interface board includes a central processing unit, a memory, a forwarding chip and a physical interface card (PIC).
- the central processing unit is connected in communication with the memory, the network processor and the physical interface card, respectively.
- the memory is used to store the forwarding table.
- the forwarding chip is used to forward the received message based on the forwarding table stored in the memory. If the destination address of the message is the address of the device 1600, the message is sent to the central processing unit (CPU), such as Processing by the central processing unit 1631; if the destination address of the message is not the address of the device 1600, the next hop and outgoing interface corresponding to the destination address are found from the forwarding table according to the destination address, and the message is forwarded to the destination address the corresponding outgoing interface.
- the forwarding chip may be a network processor (NP).
- the PIC also known as a daughter card, can be installed on the interface board and is responsible for converting photoelectric signals into data packets and forwarding the data packets to the forwarding chip for processing after checking the validity of the data packets.
- the central processing unit can also perform the function of a forwarding chip, for example, software forwarding is implemented based on a general-purpose CPU, so that a forwarding chip is not required in the interface board.
- the communication connection between the main control board, the interface board, and the switching network board can be realized through the bus.
- the forwarding chip may be implemented by an application-specific integrated circuit (ASIC) or a field programmable gate array (FPGA).
- ASIC application-specific integrated circuit
- FPGA field programmable gate array
- the apparatus 1600 includes a control plane and a forwarding plane
- the control plane includes a main control board and a central processing unit
- the forwarding plane includes various components that perform forwarding, such as memory, PIC, and NP.
- the control plane performs functions such as routers, generating forwarding tables, processing signaling and protocol packets, and configuring and maintaining device status.
- the control plane delivers the generated forwarding tables to the forwarding plane.
- the forwarding table forwards the message received by the PIC of the device 1600 by looking up the table.
- the forwarding table issued by the control plane can be stored in the memory.
- the control plane and forwarding plane may be completely separate and not on the same device.
- main control boards there may be one or more main control boards, and when there are multiple main control boards, they may include the main main control board and the backup main control board.
- a network device may have at least one switching network board, and the switching network board realizes data exchange between multiple interface boards, providing large-capacity data exchange and processing capabilities. Therefore, the data access and processing capabilities of network devices in a distributed architecture are greater than those in a centralized architecture.
- the form of the network device can also be that there is only one board, that is, there is no switching network board, and the functions of the interface board and the main control board are integrated on this board.
- the central processing unit on the board can be combined into a central processing unit on this board to perform the functions of the two superimposed, the data exchange and processing capacity of this form of equipment is low (for example, low-end switches or routers and other networks. equipment).
- the specific architecture used depends on the specific networking deployment scenario, and there is no restriction here.
- the present application provides a network device, where the network device includes a controller and a first forwarding sub-device.
- the first forwarding sub-device includes: an interface board, and further, may also include a switching network board.
- the first forwarding sub-device is configured to perform the function of the interface board in the above-mentioned FIG. 16 , and further, may also perform the function of the switching network board in the above-mentioned FIG. 16 .
- the controller includes a receiver, a processor, a transmitter, random access memory, read only memory, and a bus. Wherein, the processor is respectively coupled to the receiver, the transmitter, the random access memory and the read only memory through the bus.
- the basic input/output system solidified in the read-only memory or the bootloader in the embedded system is used to start the controller, and the controller is guided to enter the normal operation state.
- the application program and the operating system are run in the random access memory, so that the processor executes the functions of the above-mentioned main control board.
- the steps of the methods or algorithms described in conjunction with the disclosure of the present application may be implemented in a hardware manner, or may be implemented in a manner in which a processor executes software instructions.
- the software instructions can be composed of corresponding software modules, and the software modules can be stored in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, removable hard disk, CD-ROM, or any other form of storage known in the art in the medium.
- An exemplary storage medium is coupled to the processor, such that the processor can read information from, and write information to, the storage medium.
- the storage medium can also be an integral part of the processor.
- the processor and storage medium may reside in an ASIC. Alternatively, the ASIC may be located in the user equipment. Of course, the processor and storage medium may also exist in the user equipment as discrete components.
- the present application provides a computer storage medium for storing programs, codes or instructions used by the above-mentioned network device.
- the processor or hardware device executes these programs, codes or instructions, the functions or steps of the above-mentioned network device can be completed.
- An embodiment of the present application further provides a chip system, including: a processor, where the processor is coupled with a memory, the memory is used to store a program or an instruction, and when the program or instruction is executed by the processor, the The system-on-a-chip implements the method in any of the above method examples.
- the number of processors in the chip system may be one or more.
- the processor can be implemented by hardware or by software.
- the processor may be a logic circuit, an integrated circuit, or the like.
- the processor may be a general-purpose processor implemented by reading software codes stored in memory.
- the memory may be integrated with the processor, or may be provided separately from the processor, which is not limited in this application.
- the memory can be a non-transitory processor, such as a read-only memory ROM, which can be integrated with the processor on the same chip, or can be provided on different chips.
- the setting method of the processor is not particularly limited.
- the system-on-chip may be a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), or a system on chip (SoC), It can also be a central processing unit (CPU), a network processor (NP), a digital signal processing circuit (DSP), or a microcontroller (microcontroller).
- controller unit, MCU it can also be a programmable logic device (PLD) or other integrated chips.
- each step in the above method examples may be implemented by hardware integrated logic circuits in a processor or instructions in the form of software.
- the method steps disclosed in conjunction with the embodiments of the present application may be directly embodied as being executed by a hardware processor, or executed by a combination of hardware and software modules in the processor.
- the present application provides a network system, as shown in FIG. 17 , the network system includes a first network device and a second network device.
- the first network device may execute the method executed by the first network device shown in FIG. 4 , FIG. 5 , and FIG. 6 , or the method executed by the first network device shown in FIG. 7 to FIG. 11 such as PE1; the first network device
- the device may perform the method performed by the second network device shown in FIG. 4 , FIG. 5 , and FIG. 6 , or the method performed by the second network device shown in FIG. 7 to FIG. 11 such as ACC1 or MC1 .
- the network system further includes a control device, and the control device can perform the methods performed by the control devices shown in FIG. 4 , FIG. 5 , and FIG. 6 , or the methods performed by the control devices shown in FIGS. 7 to 11 .
- the functions described in this application may be implemented in hardware or in a combination of hardware and software.
- the software may be stored on or transmitted over as one or more instructions or code on a computer-readable medium.
- Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another.
- a storage medium can be any available medium that can be accessed by a general purpose or special purpose computer.
- processors mentioned in the embodiments of the present invention may be a central processing unit (Central Processing Unit, CPU), and may also be other general-purpose processors, digital signal processors (Digital Signal Processors, DSP), application-specific integrated circuits ( Application Specific Integrated Circuit, ASIC), off-the-shelf Programmable Gate Array (Field Programmable Gate Array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
- a general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
- the memory mentioned in the embodiments of the present invention may be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory.
- the non-volatile memory can be ROM, PROM, erasable EPROM, EEPROM or flash memory.
- Volatile memory may be random access memory RAM, which acts as an external cache.
- RAM random access memory RAM, which acts as an external cache.
- many forms of RAM are available, such as SRAM, DRAM, SDRAM, DDR SDRAM, ESDRAM, SLDRAM, and DR RAM, among others.
- memory described herein is intended to include, but not be limited to, these and any other suitable types of memory.
- the size of the sequence numbers of the above-mentioned processes does not imply the sequence of execution, some or all of the steps may be executed in parallel or sequentially, and the execution sequence of each process should be determined by its function and inherent logic , and should not constitute any limitation on the implementation process of the embodiments of the present application.
- the disclosed system, apparatus and method may be implemented in other manners.
- the apparatus embodiments described above are only illustrative.
- the division of the units is only a logical function division. In actual implementation, there may be other division methods.
- multiple units or components may be combined or Can be integrated into another system, or some features can be ignored, or not implemented.
- the shown or discussed mutual coupling or direct coupling or communication connection may be through some interfaces, indirect coupling or communication connection of devices or units, and may be in electrical, mechanical or other forms.
- the units described as separate components may or may not be physically separated, and components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution in this embodiment.
- each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
- the functions, if implemented in the form of software functional units and sold or used as independent products, may be stored in a computer-readable storage medium.
- the technical solution of the present application can be embodied in the form of a software product in essence, or the part that contributes to the prior art or the part of the technical solution.
- the computer software product is stored in a storage medium, including Several instructions are used to cause a computer device (which may be a personal computer, a server, a network device or a terminal device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application.
- the aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or optical disk and other media that can store program codes .
- each apparatus embodiment may refer to the relevant method embodiments in the relevant method embodiments. partially understood.
- each device embodiment of the present invention only show a simplified design of the corresponding device.
- the apparatus may include any number of transmitters, receivers, processors, memories, etc., to implement the functions or operations performed by the apparatus in each apparatus embodiment of the present invention, and all apparatuses that can implement the present application All are within the scope of protection of this application.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本申请要求于2020年11月27日提交中国国家知识产权局,申请号202011368375.5、申请名称为“一种数据处理方法、装置及系统”的中国专利申请的优先权,这篇中国专利申请的全部内容通过引用结合在本申请中。This application claims the priority of the Chinese patent application filed on November 27, 2020, with the application number 202011368375.5 and the application name "A data processing method, device and system", all of this Chinese patent application The contents are incorporated herein by reference.
本申请涉及通信技术领域,特别涉及报文发送的方法、设备、装置、系统及计算机可读存储介质。The present application relates to the field of communication technologies, and in particular, to a method, device, apparatus, system, and computer-readable storage medium for sending a message.
在一些场景,如云计算场景中,通过将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算能力、存储空间和各种软件服务。在云计算系统中,可以集中部署云服务器,应用系统可以运行在该云服务器上,以供用户,例如个人用户或企业用户,通过终端访问该云服务器。In some scenarios, such as cloud computing scenarios, by distributing computing tasks on a resource pool composed of a large number of computers, various application systems can obtain computing power, storage space and various software services as needed. In a cloud computing system, a cloud server can be centrally deployed, and an application system can run on the cloud server for users, such as individual users or enterprise users, to access the cloud server through terminals.
用户通过终端访问云服务器的方式通常是:运营商为在用户的终端所连接的城域网与云服务所在的骨干网之间建立一条端到端连接的隧道,以便于用户基于该隧道访问云服务器,使用该隧道可以保障用户的网络质量。The way that users access the cloud server through the terminal is usually: the operator establishes an end-to-end connection tunnel between the metropolitan area network connected to the user terminal and the backbone network where the cloud service is located, so that the user can access the cloud based on the tunnel. Server, using this tunnel can guarantee the network quality of users.
然而,基于这种方式建立隧道,不同的用户或不同的业务常常需要配置不同的隧道或流量工程,导致产生海量的隧道或流量工程隧道,网络复杂。However, when tunnels are established in this way, different users or different services often need to configure different tunnels or traffic engineering, resulting in a large number of tunnels or traffic engineering tunnels, and the network is complex.
发明内容SUMMARY OF THE INVENTION
本申请提供了一种报文发送的方法、装置、设备、系统及计算机可读存储介质,以解决相关技术的问题,技术方案如下:The present application provides a method, device, device, system and computer-readable storage medium for sending a message to solve the problems in the related art. The technical solutions are as follows:
第一方面,提供了一种报文发送方法,该包括:第一网络设备获得第一报文,该第一报文的因特网协议(Internet Protocol,IP)扩展头中包括第一标识,这个第一标识用于指示第一报文对应的业务要求。第一网络设备在获得第一报文后,可以基于第一标识和第二标识,确定第一报文对应的路径指示信息,第一报文的目的地址中包括这个第二标识,这里的路径指示信息包括:网络切片标识和/或段标识列表。第一网络设备基于路径指示信息更新第一报文得到第二报文,并发送第二报文。In a first aspect, a method for sending a message is provided, which includes: a first network device obtains a first message, and an Internet Protocol (Internet Protocol, IP) extension header of the first message includes a first identifier, the first An identifier is used to indicate the service requirement corresponding to the first packet. After obtaining the first packet, the first network device may determine the path indication information corresponding to the first packet based on the first identifier and the second identifier. The destination address of the first packet includes the second identifier, and the path here is The indication information includes: a network slice identifier and/or a segment identifier list. The first network device updates the first packet based on the path indication information to obtain the second packet, and sends the second packet.
通过根据获得的报文中的与业务要求对应的第一标识和第二标识确定报文对应的路径指示信息,如网络切片标识和/或段标识列表,使得报文可以按照对应的网络切片或段标识列表指示的转发隧道来进行转发,可以减少对网络中的隧道的配置,简化网络。By determining the path indication information corresponding to the packet according to the first identifier and the second identifier corresponding to the service requirement in the obtained packet, such as the network slice identifier and/or the segment identifier list, the packet can be identified according to the corresponding network slice or segment identifier list. The forwarding tunnel indicated by the segment identifier list is used for forwarding, which can reduce the configuration of the tunnel in the network and simplify the network.
在一种可能的实现方式中,该第二标识包括段标识。在一个示例中,该段标识为VPN段标识或意图段标识。In a possible implementation manner, the second identification includes a segment identification. In one example, the segment identification is a VPN segment identification or an intent segment identification.
在一种可能的实现方式中,上述基于第一标识和第二标识确定路径指示信息的方法为:基于第二标识确定第一报文的转发策略,这个转发策略中包括第一标识和路径指示信息的 第一对应关系;基于第一标识和第一对应关系确定得到上述路径指示信息。In a possible implementation manner, the above-mentioned method for determining path indication information based on the first identifier and the second identifier is: determining a forwarding policy for the first packet based on the second identifier, where the forwarding policy includes the first identifier and the path indication The first corresponding relationship of information; the above-mentioned path indication information is determined based on the first identifier and the first corresponding relationship.
在一种可能的实现方式中,上述基于第一标识和第二标识确定路径指示信息的方法为:基于第一标识确定与其对应的第三标识;基于第二标识确定第一报文的转发策略,该转发策略包括第三标识和路径指示信息的第二对应关系;基于第三标识和第二对应关系确定路径指示信息。In a possible implementation manner, the above-mentioned method for determining path indication information based on the first identifier and the second identifier is: determining a third identifier corresponding to the first identifier based on the first identifier; determining a forwarding policy of the first packet based on the second identifier , the forwarding strategy includes a second correspondence between the third identifier and the path indication information; and the path indication information is determined based on the third identifier and the second correspondence.
第二方面,提供了一种报文发送方法,该方法包括:第一网络设备获得第一报文,该第一报文的因特网协议IP报文头中包括第一标识,该第一标识用于指示第一报文对应的业务要求;在获得第一报文后,第一网络设备基于第一标识确定对应的路径指示信息,该路径指示信息包括:网络切片标识;基于路径指示信息更新第一报文得到第二报文,并发送第二报文。In a second aspect, a method for sending a message is provided, the method includes: a first network device obtains a first message, an Internet Protocol IP header of the first message includes a first identifier, and the first identifier is used to indicate the service requirement corresponding to the first packet; after obtaining the first packet, the first network device determines the corresponding path indication information based on the first identifier, where the path indication information includes: a network slice identifier; One message gets the second message, and sends the second message.
在一种可能的实现方式中,第一网络设备中包括有第一标识和路径指示信息的对应关系,上述基于第一标识确定对应的路径指示信息的实现方式为:基于第一标识和这个对应关系确定路径指示信息。In a possible implementation manner, the first network device includes a correspondence between the first identifier and the path indication information, and the above-mentioned implementation manner of determining the corresponding path indication information based on the first identifier is: based on the first identifier and this correspondence The relationship determines the path indication information.
在一种可能的实现方式中,该第一标识包括网络切片段标识,所述第一标识指示所述第一网络设备基于所述第一标识确定所述网络切片标识。In a possible implementation manner, the first identifier includes a network slice identifier, and the first identifier instructs the first network device to determine the network slice identifier based on the first identifier.
结合第二方面或第一方面中任一种可能的实现方式,在一种可能的实现方式中,该第二报文包括上述路径指示信息。在一种可能的实现中,该路径指示信息为网络切片标识,第二报文的HBH或目的选项头中包括上述网络切片标识。With reference to the second aspect or any possible implementation manner of the first aspect, in a possible implementation manner, the second packet includes the above path indication information. In a possible implementation, the path indication information is a network slice identifier, and the above-mentioned network slice identifier is included in the HBH or destination option header of the second packet.
结合第二方面或第一方面中任一种可能的实现方式,在一种可能的实现方式中,该第一标识包括段标识,第一报文的分段路由头SRH中包括第一标识,该IP扩展头包括上述SRH。With reference to the second aspect or any possible implementation manner of the first aspect, in a possible implementation manner, the first identifier includes a segment identifier, and the segment routing header SRH of the first packet includes the first identifier, The IP extension header includes the above-mentioned SRH.
结合第二方面或第一方面中任一种可能的实现方式,在一种可能的实现方式中,该第一标识包括意图段标识,意图段标识用于指示第一网络设备基于第一标识确定对应的路径指示信息。在一种可能的实现方式中,该第一标识中还包括指示标识,该指示标识用于指示第一标识为意图段标识。With reference to the second aspect or any possible implementation manner of the first aspect, in a possible implementation manner, the first identifier includes an intent segment identifier, and the intent segment identifier is used to instruct the first network device to determine based on the first identifier Corresponding path indication information. In a possible implementation manner, the first identifier further includes an indicator identifier, where the indicator identifier is used to indicate that the first identifier is an intent segment identifier.
第三方面,提供了一种报文发送方法,该方法包括:第一网络设备获得第一报文,该第一报文的逐跳选项头HBH或目的选项头中包括第一标识,该第一标识用于指示第一报文对应的业务要求;第一网络设备在获得第一报文之后,可以基于第一标识确定第一报文对应的路径指示信息,该路径指示信息包括:段标识列表。第一网络设备基于段标识列表更新第一报文得到第二报文,并发送该第二报文。In a third aspect, a method for sending a message is provided, the method includes: a first network device obtains a first message, a hop-by-hop option header HBH or a destination option header of the first message includes a first identifier, and the first An identifier is used to indicate the service requirement corresponding to the first packet; after obtaining the first packet, the first network device can determine the path indication information corresponding to the first packet based on the first identifier, where the path indication information includes: a segment identifier list. The first network device updates the first packet based on the segment identifier list to obtain a second packet, and sends the second packet.
在一种可能的实现方式中,该第二报文中包括该段标识列表。In a possible implementation manner, the second packet includes the segment identifier list.
在一种可能的实现方式中,该第一标识包括意图标识,该第一报文的HBH或目的选项头中包括该意图标识,上述IP扩展头包括HBH或目的选项头。In a possible implementation manner, the first identifier includes an intent identifier, an HBH or a destination option header of the first packet includes the intent identifier, and the IP extension header includes an HBH or a destination option header.
结合上述第一方面、第二方面或第三方面中任一种可能的实现方式,上述第一网络获得第一报文包括,包括:第一网络设备接收第二网络设备发送的报文,该报文包括第一标识。第一报文为该第二网络设备发送的报文,或第一网络设备可以基于该第二网络设备发送的报文生成第一报文。其中,第一网络设备属于第一网络,第二网络设备属于第二网络,第一网络与第二网络不同。With reference to any possible implementation manner of the first aspect, the second aspect or the third aspect, the obtaining of the first packet by the first network includes: the first network device receives the packet sent by the second network device, and the first network device receives the packet sent by the second network device. The message includes the first identifier. The first packet is a packet sent by the second network device, or the first network device may generate the first packet based on the packet sent by the second network device. The first network device belongs to the first network, the second network device belongs to the second network, and the first network is different from the second network.
在一种可能的实现方式中,上述第一网络包括的至少两台网络设备可以执行基于第 一标识确定对应的路径指示信息,至少两台网络设备包括上述第一网络设备。In a possible implementation manner, at least two network devices included in the above-mentioned first network may perform determining corresponding path indication information based on the first identifier, and the at least two network devices include the above-mentioned first network device.
在一种可能的实现方式中,上述第二网络包括的至少两台网络设备也可以执行基于第一标识确定对应的路径指示信息。In a possible implementation manner, at least two network devices included in the second network may also perform determining the corresponding path indication information based on the first identifier.
在一种可能的实现方式中,第一网络和第二网络属于不同的内部网关协议IGP域,或第一网络和第二网络属于不同的自治系统AS。In a possible implementation manner, the first network and the second network belong to different interior gateway protocol IGP domains, or the first network and the second network belong to different autonomous systems AS.
在一种可能的实现方式中,第一网络为支持网络切片的网络,第二网络为支持SRv6的网络。In a possible implementation manner, the first network is a network that supports network slicing, and the second network is a network that supports SRv6.
在一种可能的实现方式中,网络切片标识包括分片标识SliceID和/或灵活算法标识。In a possible implementation manner, the network slice identifier includes a slice identifier SliceID and/or a flexible algorithm identifier.
第四方面、提供了一种报文发送方法,该方法包括:第一网络设备获得第一标识,该第一标识与业务要求对应;第一网络设备生成第一报文,该第一报文的因特网协议IP扩展头中包括第一标识,该第一报文还包括第二标识,该第一报文的目的地址包括第二标识或第一报文的分段路由头SRH包括第二标识;第一网络设备向第二网络设备发送第一报文,第一报文中的第一标识和第二标识用于使第二网络设备基于第一标识和第二标识确定第一报文对应的路径指示信息,这里的路径指示信息包括网络切片标识和/或段标识列表。In a fourth aspect, a method for sending a message is provided, the method comprising: obtaining a first identifier by a first network device, where the first identifier corresponds to a service requirement; and generating a first message by the first network device, the first message The IP extension header of the Internet Protocol includes a first identification, the first packet also includes a second identification, the destination address of the first packet includes the second identification or the segment routing header SRH of the first packet includes the second identification ; The first network device sends the first message to the second network device, and the first identifier and the second identifier in the first message are used to enable the second network device to determine the correspondence of the first message based on the first identifier and the second identifier path indication information, where the path indication information includes a list of network slice identifiers and/or segment identifiers.
在一种可能的实现方式中,该第二标识包括虚拟私有网络段标识VPN SID或意图段标识。In a possible implementation manner, the second identifier includes a virtual private network segment identifier VPN SID or an intent segment identifier.
在一种可能的实现方式中,第一报文的逐跳选项头或目的选项头中包括第一标识。In a possible implementation manner, the hop-by-hop option header or the destination option header of the first packet includes the first identifier.
第五方面、提供了一种报文发送方法,该方法包括:第一网络设备获得第一标识,第一标识与业务要求对应;第一网络设备生成第一报文,该第一报文的逐跳选项头HBH或目的选项头中包括第一标识;第一网络设备向第二网络设备发送第一报文,该第一标识用于使第二网络设备基于第一标识确定第一报文对应的路径指示信息,该路径指示信息包括第一段标识列表。A fifth aspect provides a method for sending a message, the method comprising: obtaining a first identifier by a first network device, where the first identifier corresponds to a service requirement; and generating a first message by the first network device, and the first message is The hop-by-hop option header HBH or the destination option header includes a first identifier; the first network device sends a first packet to the second network device, where the first identifier is used to enable the second network device to determine the first packet based on the first identifier Corresponding path indication information, where the path indication information includes a first segment identifier list.
在一种可能的实现方式中,该第一标识包括意图标识。In a possible implementation manner, the first identification includes an intent identification.
在一种可能的实现方式中,上述获得第一标识,具体为:第一网络设备接收控制设备发送的第二段标识列表,该第二段标识列表中包括第一标识。In a possible implementation manner, the above-mentioned obtaining the first identifier is specifically: the first network device receives the second segment identifier list sent by the control device, and the second segment identifier list includes the first identifier.
第六方面、提供了一种标识发送方法,该方法包括:控制设备获得第一标识,该第一标识与业务要求对应;确定目标业务对应的第一段标识列表,该第一段标识列表中包括第一标识,该第一段标识列表用于指示上述目标业务对应的报文经过的第一转发路径,该第一转发路径经过第一网络包括的第一网络设备,该第一标识用于使第一网络设备基于第一标识确定对应的路径指示信息,该路径指示信息包括:网络切片标识和\或第二段标识列表;第一网络设备发送该第一段标识列表。A sixth aspect provides a method for sending an identifier, the method comprising: a control device obtaining a first identifier, the first identifier corresponding to a service requirement; determining a first segment identifier list corresponding to the target service, where the first segment identifier list is Including a first identifier, the first segment identifier list is used to indicate the first forwarding path through which the message corresponding to the target service passes, the first forwarding path passes through the first network device included in the first network, and the first identifier is used for The first network device is made to determine corresponding path indication information based on the first identifier, where the path indication information includes: a network slice identifier and\or a second segment identifier list; the first network device sends the first segment identifier list.
在一种可能的实现方式中,该第一网络包括的至少两台网络设备可以执行基于第一标识确定对应的路径指示信息,第一网络包括的至少两台网络设备包括上述第一网络设备。In a possible implementation manner, at least two network devices included in the first network may perform determining corresponding path indication information based on the first identifier, and the at least two network devices included in the first network include the above-mentioned first network device.
在一种可能的实现方式中,该第一段标识列表携带在链路状态协议报文或路径计算单元通信协议报文中发送。In a possible implementation manner, the first segment identifier list is carried in a link state protocol packet or a path calculation unit communication protocol packet and sent.
第七方面,提供了一种网络设备,该网络设备包括:获得模块、处理模块和发送模块, 该获得模块,用于获得第一报文,第一报文的因特网协议IP扩展头中包括第一标识,该第一标识用于指示第一报文对应的业务要求;处理模块,用于基于第一标识和第二标识,确定第一报文对应的路径指示信息,该第一报文的目的地址中包括第二标识,路径指示信息包括:网络切片标识和/或段标识列表;处理模块,还用于基于路径指示信息更新第一报文得到第二报文;发送模块,用于发送第二报文。A seventh aspect provides a network device, the network device includes: an obtaining module, a processing module, and a sending module, the obtaining module is used to obtain a first packet, and the Internet Protocol IP extension header of the first packet includes the first packet. an identifier, the first identifier is used to indicate the service requirement corresponding to the first packet; the processing module is used to determine the path indication information corresponding to the first packet based on the first identifier and the second identifier, and the The destination address includes a second identifier, and the path indication information includes: a network slice identifier and/or a segment identifier list; the processing module is further configured to update the first message based on the path indication information to obtain the second message; the sending module is configured to send Second message.
在一种可能的实现方式中,该处理模块用于:基于第二标识确定第一报文的转发策略,该转发策略包括第一标识和路径指示信息的第一对应关系;该处理模块,还用于基于第一标识和第一对应关系确定路径指示信息。In a possible implementation manner, the processing module is configured to: determine a forwarding policy of the first packet based on the second identifier, where the forwarding policy includes a first correspondence between the first identifier and the path indication information; the processing module, further for determining path indication information based on the first identifier and the first correspondence.
在一种可能的实现方式中,该处理模块用于:基于第一标识确定与其对应的第三标识;该处理模块还用于,基于第二标识确定第一报文的转发策略,转发策略包括第三标识和路径指示信息的第二对应关系;该处理模块还用于,基于第三标识和第二对应关系确定路径指示信息。In a possible implementation manner, the processing module is configured to: determine a third identifier corresponding to the first identifier based on the first identifier; the processing module is further configured to determine a forwarding policy of the first packet based on the second identifier, where the forwarding policy includes The second correspondence between the third identifier and the path indication information; the processing module is further configured to determine the path indication information based on the third identifier and the second correspondence.
第八方面,提供了一种网络设备,包括:获得模块、处理模块和发送模块,该获得模块,用于获得第一报文,该第一报文的因特网协议IP报文头中包括第一标识,该第一标识用于指示第一报文对应的业务要求;该处理模块,用于基于第一标识确定对应的路径指示信息,路径指示信息包括:网络切片标识;该处理模块,还用于基于路径指示信息更新第一报文得到第二报文;该发送模块,用于发送第二报文。In an eighth aspect, a network device is provided, comprising: an obtaining module, a processing module and a sending module, the obtaining module is used to obtain a first message, and the Internet Protocol IP header of the first message includes the first identifier, the first identifier is used to indicate the service requirement corresponding to the first packet; the processing module is used to determine the corresponding path indication information based on the first identifier, and the path indication information includes: the network slice identifier; the processing module, also used The second message is obtained by updating the first message based on the path indication information; the sending module is used for sending the second message.
在一种可能的实现方式中,该处理模块用于:基于第一标识和对应关系确定路径指示信息,该对应关系为第一标识和路径指示信息的对应关系。In a possible implementation manner, the processing module is configured to: determine the path indication information based on the first identifier and a corresponding relationship, where the corresponding relationship is a corresponding relationship between the first identifier and the path indication information.
在一种可能的实现方式中,该处理模块用于:将路径指示信息封装到第二报文中。In a possible implementation manner, the processing module is configured to: encapsulate the path indication information into the second packet.
第九方面、提供了一种网络设备,包括:获得模块、处理模块和发送模块,该获得模块,用于获得第一报文,该第一报文的逐跳选项头HBH或目的选项头中包括第一标识,该第一标识用于指示第一报文对应的业务要求;该处理模块,用于基于第一标识确定第一报文对应的路径指示信息,该路径指示信息包括:段标识列表;该发送模块,用于基于段标识列表更新第一报文得到第二报文,并发送第二报文。In a ninth aspect, a network device is provided, comprising: an obtaining module, a processing module and a sending module, the obtaining module is used to obtain a first packet, the hop-by-hop option header HBH or the destination option header of the first packet is in the Including a first identifier, the first identifier is used to indicate the service requirement corresponding to the first message; the processing module is used to determine the path indication information corresponding to the first message based on the first identifier, and the path indication information includes: a segment identifier list; the sending module is configured to update the first message based on the segment identifier list to obtain the second message, and send the second message.
在一种可能的实现方式中,该处理模块,用于将段标识列表封装到第二报文中。In a possible implementation manner, the processing module is configured to encapsulate the segment identifier list into the second packet.
第十方面、提供了一种网络设备,该网络设备包括:获得模块、处理模块和发送模块,该获得模块,用于获得第一标识,该第一标识与业务要求对应;该处理模块,用于生成第一报文,该第一报文的因特网协议IP扩展头中包括第一标识,该第一报文还包括第二标识,该第一报文的目的地址包括第二标识或第一报文的分段路由头SRH包括第二标识;该发送模块,用于向第二网络设备发送第一报文,第一标识和第二标识用于使第二网络设备基于第一标识和第二标识确定第一报文对应的路径指示信息,该路径指示信息包括网络切片标识和/或段标识列表。A tenth aspect provides a network device, the network device includes: an obtaining module, a processing module and a sending module, the obtaining module is used to obtain a first identifier, the first identifier corresponds to a service requirement; the processing module is configured with In generating the first message, the Internet Protocol IP extension header of the first message includes the first identification, the first message also includes the second identification, and the destination address of the first message includes the second identification or the first identification. The segment routing header SRH of the packet includes a second identifier; the sending module is configured to send the first packet to the second network device, and the first identifier and the second identifier are used to make the second network device based on the first identifier and the second identifier. The second identifier determines path indication information corresponding to the first packet, where the path indication information includes a network slice identifier and/or a segment identifier list.
第十一方面、提供了一种网络设备,该网络设备包括获得模块、处理模块和发送模块,该获得模块,用于获得第一标识,该第一标识与业务要求对应;该处理模块,用于生成第一报文,该第一报文的IP报文头中包括第一标识;该发送模块,用于向第二网络设备发送第一报文,该第一标识用于使第二网络设备基于第一标识确定对应的路径指示信息,该路径指示信息包括网络切片标识。In an eleventh aspect, a network device is provided, the network device includes an obtaining module, a processing module and a sending module, the obtaining module is used to obtain a first identifier, the first identifier corresponds to a service requirement; the processing module is configured with In generating the first message, the IP header of the first message includes a first identifier; the sending module is used to send the first message to the second network device, and the first identifier is used to make the second network The device determines corresponding path indication information based on the first identifier, where the path indication information includes a network slice identifier.
第十二方面、提供了一种网络设备,该网络设备包括获得模块、处理模块和发送模 块,该获得模块,用于获得第一标识,该第一标识与业务要求对应;该处理模块,用于生成第一报文,该第一报文的逐跳选项头HBH或目的选项头中包括第一标识;该发送模块,用于向第二网络设备发送第一报文,该第一标识用于使第二网络设备基于第一标识确定对应的路径指示信息,该路径指示信息包括段标识列表。A twelfth aspect provides a network device, the network device includes an obtaining module, a processing module and a sending module, the obtaining module is used to obtain a first identifier, and the first identifier corresponds to a service requirement; the processing module is configured with For generating the first message, the hop-by-hop option header HBH or the destination option header of the first message includes a first identifier; the sending module is used to send the first message to the second network device, and the first identifier is used The second network device determines corresponding path indication information based on the first identifier, where the path indication information includes a segment identifier list.
第十三方面、一种控制设备,其特征在于,包括获得模块、处理模块和发送模块,该获得模块,用于获得第一标识,该第一标识与业务要求对应;该处理模块,用于确定目标业务对应的第一段标识列表,该第一段标识列表中包括第一标识,该第一段标识列表用于指示目标业务对应的报文经过的第一转发路径,该第一转发路径经过第一网络包括的第一网络设备,该第一标识用于使第一网络设备基于第一标识确定对应的路径指示信息,该路径指示信息包括:网络切片标识和\或第二段标识列表;该发送模块,用于发送第一段标识列表。A thirteenth aspect, a control device, characterized in that it includes an obtaining module, a processing module and a sending module, the obtaining module is used to obtain a first identifier, and the first identifier corresponds to a service requirement; the processing module is used to obtain a first identifier. Determine the first segment identifier list corresponding to the target service, the first segment identifier list includes a first identifier, and the first segment identifier list is used to indicate the first forwarding path through which the message corresponding to the target service passes, the first forwarding path Passing through the first network device included in the first network, the first identifier is used to enable the first network device to determine corresponding path indication information based on the first identifier, where the path indication information includes: a network slice identifier and\or a list of second segment identifiers ; The sending module is used to send the first segment of the identification list.
在一种可能的实现方式中,该处理模块,用于:根据目标业务对应的业务要求,计算得到上述第一段标识列表。In a possible implementation manner, the processing module is configured to: calculate and obtain the above-mentioned first segment identification list according to the service requirements corresponding to the target service.
第十四方面、提供了一种通信设备,该设备包括:通信接口和处理器。该处理器,用于执行执行,以控制通信接口接收信号,并控制通信接口发送信号,并且当该处理器执行指令时,使得该处理器执行上述第一方面至第十三方面或其任一种可能的实施方式中的方法。A fourteenth aspect provides a communication device, the device comprising: a communication interface and a processor. The processor is configured to perform execution to control the communication interface to receive signals, and to control the communication interface to send signals, and when the processor executes the instructions, the processor causes the processor to execute the above-mentioned first to thirteenth aspects or any one of them method in a possible implementation.
在一种可能的实现方式中,该通信设备还包括存储器。该存储器用于存储上述指令。In one possible implementation, the communication device further includes a memory. The memory is used to store the above-mentioned instructions.
在一种可能的实现方式中,处理器为一个或多个,存储器为一个或多个。In a possible implementation manner, there are one or more processors and one or more memories.
在一种可能的实现方式中,存储器可以与处理器集成在一起,或者存储器与处理器分离设置。In one possible implementation, the memory may be integrated with the processor, or the memory may be provided separately from the processor.
第十五方面,提供了一种通信系统,该系统包括第一网络设备以及第二网络设备,第一网络设备用于执行第一方面-第三方面或第一方面至第三方面中的任一种可能的实施方式中的方法,第二网络设备用于执行第四方面-第六方面或第四方面至第六方面中的任一种可能的实施方式中的方法。A fifteenth aspect provides a communication system, the system includes a first network device and a second network device, the first network device is configured to perform the first aspect - the third aspect or any of the first to third aspects In the method in a possible implementation manner, the second network device is configured to execute the method in any possible implementation manner of the fourth aspect - the sixth aspect or the fourth aspect to the sixth aspect.
第十六方面,提供了一种计算机程序(产品),计算机程序(产品)包括:计算机程序代码,当计算机程序代码被计算机运行时,使得计算机执行上述各方面中的方法。A sixteenth aspect provides a computer program (product), the computer program (product) comprising: computer program code, which, when executed by a computer, causes the computer to execute the methods in the above aspects.
第十七方面,提供了一种计算机可读存储介质,计算机可读存储介质存储程序或指令,当程序或指令在计算机上运行时,上述各方面中的方法被执行。A seventeenth aspect provides a computer-readable storage medium, where the computer-readable storage medium stores programs or instructions, and when the programs or instructions are run on a computer, the methods in the above aspects are performed.
第十八方面,提供了一种芯片,包括处理器,用于从存储器中调用并运行存储器中存储的指令,使得安装有芯片的通信设备执行上述各方面中的方法。In an eighteenth aspect, a chip is provided, including a processor for invoking and executing instructions stored in the memory from a memory, so that a communication device on which the chip is installed performs the methods in the above aspects.
第十九方面,提供另一种芯片,包括:输入接口、输出接口、处理器和存储器,输入接口、输出接口、处理器以及存储器之间通过内部连接通路相连,处理器用于执行存储器中的代码,当代码被执行时,处理器用于执行上述各方面中的方法。A nineteenth aspect provides another chip, comprising: an input interface, an output interface, a processor, and a memory, the input interface, the output interface, the processor, and the memory are connected through an internal connection path, and the processor is used to execute codes in the memory , when the code is executed, the processor is used to perform the methods in the above aspects.
图1为本申请提供的一种网络分片示意图;1 is a schematic diagram of a network fragmentation provided by the present application;
图2为本申请提供的一种网络分片示意图;2 is a schematic diagram of a network fragmentation provided by the present application;
图3为本申请提供的网络场景示意图;3 is a schematic diagram of a network scenario provided by the present application;
图4为本申请提供的一种报文发送方法流程示意图;4 is a schematic flowchart of a message sending method provided by the present application;
图5为本申请提供的一种报文发送方法流程示意图;5 is a schematic flowchart of a message sending method provided by the present application;
图6为本申请提供的一种标识发送方法流程示意图;6 is a schematic flowchart of a method for sending an identification provided by the present application;
图7为本申请提供的一种控制设备进行路径编排和处理过程示意图;FIG. 7 is a schematic diagram of a path arrangement and processing process performed by a control device provided by the present application;
图8为本申请提供的一种报文发送方法的应用示例图;FIG. 8 is an application example diagram of a message sending method provided by the present application;
图9为本申请提供的一种报文发送方法的应用示例图;FIG. 9 is an application example diagram of a message sending method provided by the present application;
图10为本申请提供的一种聚合路由和聚合隧道的映射关系示例图;10 is an example diagram of a mapping relationship between an aggregated route and an aggregated tunnel provided by the application;
图11为本申请提供的一种报文发送方法的应用示例图;FIG. 11 is a diagram of an application example of a message sending method provided by the present application;
图12为本申请提供的一种网络设备结构示意图;12 is a schematic structural diagram of a network device provided by this application;
图13为本申请提供的一种网络设备结构示意图;13 is a schematic structural diagram of a network device provided by this application;
图14为本申请提供的一种网络设备结构示意图;14 is a schematic structural diagram of a network device provided by this application;
图15为本申请提供的一种网络装置结构示意图;15 is a schematic structural diagram of a network device provided by this application;
图16为本申请提供的一种网络装置结构示意图;16 is a schematic structural diagram of a network device provided by this application;
图17为本申请提供的一种网络系统示意图。FIG. 17 is a schematic diagram of a network system provided by this application.
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和实施方式对本发明实施例作进一步的详细说明。In order to enable those skilled in the art to better understand the solution of the present invention, the embodiments of the present invention will be further described in detail below with reference to the accompanying drawings and the implementation manner.
分段路由(Segment Routing,SR):是基于源路由的理念而设计的在网络中转发数据包的一种协议。SR将网络路径划分为一个个段,并且为这些段和网络节点分配分段标识(Segment ID,SID),通过对SID进行有序排列,可以得到SID列表(SID List,在SR-MPLS中也称标签栈),SID List可以指示一条转发路径。通过SR技术,可以指定携带了SID List的数据包经过的节点以及路径,从而满足流量调优的要求。做一个类比,数据包可以比作行李,SR可以比作行李上贴的标签,如果要将行李从A地区发送到D地区,途径B地区和C地区,则可以在始发地A地区给行李贴上一个标签“先到B地区,再到C地区,最后到D地区”,这样一来,各个地区只需识别行李上的标签,依据行李的标签将行李从一个地区转发至另一个地区即可。在SR技术中,头节点会向数据包添加标签,中间节点可以根据标签转发至下一个节点,直至数据包到达目的节点。例如在数据包的包头中,插入<SID1,SID2,SID3>,则数据包packet会首先转发给SID1对应的节点,之后转发给SID2对应的节点,之后转发给SID3对应的节点。其中,SR-MPLS的中英文全称为分段路由多协议标签交换(Segment Routing Multi-Protocol Label Switching)。Segment Routing (SR): It is a protocol designed to forward packets in the network based on the concept of source routing. SR divides the network path into segments, and assigns segment IDs (Segment IDs, SIDs) to these segments and network nodes. By arranging the SIDs in an orderly manner, the SID List (SID List, also known in SR-MPLS) can be obtained. called label stack), SID List can indicate a forwarding path. Through the SR technology, you can specify the nodes and paths that the data packets carrying the SID List pass through, so as to meet the requirements of traffic optimization. To make an analogy, the data package can be compared to luggage, and SR can be compared to the label attached to the luggage. If you want to send the luggage from area A to area D, and pass through area B and area C, you can send the luggage to area A at the origin. Put a label "first to B area, then to C area, and finally to D area", so that each area only needs to identify the label on the luggage, and forward the luggage from one area to another according to the label of the bag. Can. In the SR technology, the head node will add a label to the data packet, and the intermediate node can forward it to the next node according to the label until the data packet reaches the destination node. For example, if <SID1, SID2, SID3> is inserted in the header of the data packet, the data packet will be forwarded first to the node corresponding to SID1, then to the node corresponding to SID2, and then to the node corresponding to SID3. Among them, the full name of SR-MPLS in Chinese and English is Segment Routing Multi-Protocol Label Switching.
基于互联网协议第6版(Internet Protocol Version 6,IPv6)的分段路由(SR v6):是指将SR技术应用在IPv6网络中。使用IPv6地址(128bits)作为SID的表现形式。在转发数据包时,支持SRv6的网络设备会按照数据包中的目的地址((Destination Address,DA),查询本地段标识表(local SID table),当数据包的目的地址与本地段标识表中的任一SID最长匹配时,则按照本地段标识表中的SID相关的策略,执行该策略对应的操作,例如,可以将数据包从SID对应的出接口转发出去;如果数据包的目的地址与本地段标识表中的每个SID均不最长匹配,则再查IPv6的转发表,按照IPv6的转发表进行最长匹配转发。Segment routing (SR v6) based on Internet Protocol Version 6 (IPv6): refers to the application of SR technology in IPv6 networks. Use IPv6 address (128bits) as the representation of SID. When forwarding data packets, network devices that support SRv6 will query the local segment identification table (local SID table) according to the destination address (Destination Address, DA) in the data packet. When any SID of the SID matches the longest, according to the policy related to the SID in the local segment identification table, the operation corresponding to the policy is executed. For example, the data packet can be forwarded from the outbound interface corresponding to the SID; if the destination address of the data packet is If there is no longest match with each SID in the local segment identification table, the IPv6 forwarding table is checked again, and the longest matching forwarding is performed according to the IPv6 forwarding table.
分段路由头(Segment Routing Header,SRH):IPv6报文是由IPv6标准头+扩展头(0...n)+负载Payload组成。为了基于IPv6转发平面实现SRv6,新增加一种IPv6扩展头,称作SRH扩展头,该扩展头指定一个IPv6的显式路径,存储的是IPv6的段列表。头节点在IPv6报文增加一个SRH扩展头,中间节点就可以按照SRH扩展头里包含的路径信息转发。具体地,在SRH中有两个关键信息,一个是IPv6地址形式的段列表(Segment List),类似于多协议标签交换(multi-protocol label switching,MPLS)网络中的标签栈信息,由有序排列的1个或多个段标识(Segment ID,SID)构成的Segment List用于指示SR里的显式路径;另外一个则是剩余段(Segment Left,SL),SL是一个指针,用于指示当前的段标识。Segment Routing Header (SRH): IPv6 packets are composed of IPv6 standard header + extension header (0...n) + payload. To implement SRv6 based on the IPv6 forwarding plane, a new IPv6 extension header, called the SRH extension header, is added. The extension header specifies an IPv6 explicit path and stores the IPv6 segment list. The head node adds an SRH extension header to the IPv6 packet, and the intermediate node can forward it according to the path information contained in the SRH extension header. Specifically, there are two key pieces of information in the SRH, one is the segment list (Segment List) in the form of IPv6 addresses, which is similar to the label stack information in the multi-protocol label switching (MPLS) network. The Segment List composed of one or more segment IDs (Segment ID, SID) arranged is used to indicate the explicit path in the SR; the other is the remaining segment (Segment Left, SL), SL is a pointer, used to indicate The current segment ID.
段标识列表(segment ID List,SID List):包含了一组段标识的列表,段路由网络中的头节点在接收到数据报文后,在数据报文中插入1个SID List可以显示地指示一条转发路径。Segment ID List (SID List): A list containing a set of segment IDs. After receiving the data packet, the head node in the segment routing network inserts a SID List into the data packet to display the indication. a forwarding path.
在SRv6网络中,IPv6报文的DA字段的值是一个不断变换的,它的取值由SL和Segment List共同决定,当指针SL指向一个当前待处理的段,例如指向Segment List[2]时,需要将Segment List[2]的IPv6地址复制到DA字段。In the SRv6 network, the value of the DA field of the IPv6 packet is constantly changing, and its value is determined by the SL and the Segment List. When the pointer SL points to a currently pending segment, for example, when it points to the Segment List[2] , you need to copy the IPv6 address of Segment List[2] to the DA field.
在转发层面,如果节点支持SR,且该节点的段标识出现在了IPv6报文中的目的地址中,那么该节点在收到报文后,可以将SL进行减1操作,将指针偏移向新的段,并且将SL减一后对应的段标识(即IPv6地址格式)复制到DA字段,再向下一个节点转发报文。通常,当SL字段减为0时,节点可以弹出SRH报文头,然后对报文进行下一步处理。如果节点不支持SR,那么就不需要处理IPv6报文里面的SRH信息,仅依据IPv6目的地址字段,查找IPv6路由表,进行普通的IPv6转发即可。At the forwarding level, if the node supports SR, and the segment ID of the node appears in the destination address in the IPv6 packet, after receiving the packet, the node can decrement the SL by 1 and shift the pointer to A new segment is added, and the corresponding segment identifier (that is, the IPv6 address format) after the SL is reduced by one is copied to the DA field, and the packet is forwarded to the next node. Usually, when the SL field is reduced to 0, the node can pop up the SRH packet header, and then process the packet in the next step. If the node does not support SR, then there is no need to process the SRH information in the IPv6 packet, and it only needs to search the IPv6 routing table based on the IPv6 destination address field and perform ordinary IPv6 forwarding.
SR策略(SR Policy)是一种SR的流量工程机制。通常,一个SR Policy包括头节点(headend)、颜色标识(color)以及目的标识(endpoint),以及指示转发路径的段标识列表。其中,Headend用于标识执行SR Policy的头节点,Color用于SR与业务属性相关联,例如与低时延、高带宽等业务属性相关联,以概括该SR Policy的服务能力,Endpoint用于标识SR Policy的目的地址。通常,通过(headend,color,endpoint)来确定一条SR Policy。对同一个headend来说,其也可以通过(color,endpoint)来确定一条Policy。SR policy可以包括一个或多个段标识列表,以实现负载均衡,多路径备份等工能。头节点在转发报文时,可以根据该SR policy确定报文对应的段标识列表,从而确定转发该报文的转发路径,并将该段标识列表封装到报文中以显式或分散的指示路径。SR Policy (SR Policy) is a traffic engineering mechanism of SR. Generally, an SR Policy includes a headend, a color, and an endpoint, as well as a list of segment identifiers that indicate the forwarding path. Among them, Headend is used to identify the head node that executes the SR Policy, Color is used to associate SR with service attributes, such as low latency, high bandwidth and other service attributes, to summarize the service capabilities of the SR Policy, and Endpoint is used to identify The destination address of the SR Policy. Usually, an SR Policy is determined by (headend, color, endpoint). For the same headend, it can also use (color, endpoint) to determine a Policy. The SR policy can include one or more segment ID lists to implement load balancing, multi-path backup and other functions. When forwarding a message, the head node can determine the segment ID list corresponding to the message according to the SR policy, so as to determine the forwarding path for forwarding the message, and encapsulate the segment ID list into the message for explicit or decentralized indication. path.
业务要求:业务对对网络质量的要求,该网络质量可以包括以下中的一项或多项:时延范围、带宽范围、丢包率范围、指定经过某条路径/节点和指定不经过某条路径/节点等。上述范围可以为具体值范围,或者该范围可以指某个指标为网络中较优或最优,如该时延范围可以为小于等于某个具体时延值,如20毫秒,或该时延范围指低时延;该带宽范围可以为大于等于某个具体带宽值如2G,或该带宽范围为大带宽等。传输该业务报文的网络可以通过提供对应的网络切片、转发隧道等方式来满足业务要求的网络质量。Service requirements: Service requirements for network quality, which can include one or more of the following: delay range, bandwidth range, packet loss rate range, specifying a certain path/node and specifying not to pass a certain path path/node etc. The above range can be a specific value range, or the range can refer to a certain index being better or optimal in the network. For example, the delay range can be less than or equal to a specific delay value, such as 20 milliseconds, or the delay range. Refers to low latency; the bandwidth range can be greater than or equal to a specific bandwidth value, such as 2G, or the bandwidth range is large bandwidth, etc. The network that transmits the service packet can meet the network quality required by the service by providing corresponding network slices, forwarding tunnels, and the like.
段标识(segment ID,SID),可以代表一个节点或者一条链路,在SRv6中,SID表现为一个128比特的值;在SR-MPLS中,SID表现为一个标签值,一个SRv6的段标识中可以包括功能部分,该功能部分指示该段标识对应的网络设备需要执行对应的功能、动作。Segment ID (segment ID, SID), which can represent a node or a link. In SRv6, the SID is represented as a 128-bit value; in SR-MPLS, the SID is represented as a label value, and an SRv6 segment identifier It may include a function part, the function part indicates that the network device corresponding to the segment identifier needs to perform the corresponding function and action.
意图段标识(IntentSID):一种代表业务质量保障的特殊SID,也可以称为意图SID,可用于指示目标业务对网络的网络质量要求,网络质量要求可如时延、带宽、特定路径等中的一项或多项。当一个大网络中包括多个子网络时,为了表达相同的网络质量要求,可以为这多个子网络分配一个统一的意图SID,或者,也可以为不同的子网络分别分配不同的意图SID,也可以为某台设备分配独立的意图SID。在为子网络分配相同意图SID的情况下,意图SID在其发挥作用的网络域内,不用于指导路由,仅用于确定路径指示信息。在为某台设备分配独立的意图SID的情况下,该意图SID在该台设备所处的网络内,还可以起到指导路由的作用。在一个示例中:意图SID可以具备如下功能:网络中的设备可以基于该意图SID,为该目标业务对应的报文确定对应的路径指示信息,该路径指示信息可以为以下一项或多项:网络切片标识或段标识列表。网络中的设备可以仅基于该意图SID确定对应的路径指示信息,也可以基于该意图SID和其他标识一起确定对应的路径指示信息。意图标识:一种代表业务质量保障的标识,可用于指示目标业务对网络的网络质量要求,网络质量要求可如时延、带宽、特定路径等中的一项或多项。当一个大网络中包括多个子网络时,这多个子网络可以采用同样的意图ID表达同样的网络质量要求,或者,用相同的意图ID在不同的子网络中对应不同的网络质量要求。与意图SID相比,意图标识并不是段标识。Intent SID: A special SID representing service quality assurance, also known as Intent SID, which can be used to indicate the network quality requirements of the target service on the network. The network quality requirements can be such as delay, bandwidth, specific path, etc. one or more of the. When a large network includes multiple sub-networks, in order to express the same network quality requirements, a unified intent SID can be assigned to the multiple sub-networks, or different intent SIDs can be assigned to different sub-networks, or Assign a separate intent SID to a device. In the case of assigning the same intent SID to the sub-network, the intent SID is not used to guide routing in the network domain where it functions, but is only used to determine path indication information. In the case of allocating an independent intent SID to a device, the intent SID can also play a role of guiding routing in the network where the device is located. In an example, the intent SID may have the following functions: a device in the network may, based on the intent SID, determine corresponding path indication information for the message corresponding to the target service, where the path indication information may be one or more of the following: A list of network slice IDs or segment IDs. The device in the network may determine the corresponding path indication information only based on the intent SID, or may determine the corresponding path indication information based on the intent SID and other identifiers together. Intent identifier: an identifier representing service quality assurance, which can be used to indicate the network quality requirements of the target service on the network. The network quality requirements can be one or more of delay, bandwidth, and specific paths. When a large network includes multiple sub-networks, the multiple sub-networks can use the same intent ID to express the same network quality requirement, or use the same intent ID to correspond to different network quality requirements in different sub-networks. In contrast to the intent SID, the intent ID is not a segment ID.
网络切片段标识(AlgoSID):一种代表网络切片的特殊SID,也可以被称为网络切片SID,可以是意图SID的一种实例,可用于指示网络中的某台网络设备上的某个网络切片,或用于指示网络中的多台网络设备上的同一个网络切片,与意图SID一致,在前一种情况下,AlgoSID还可以起到指导路由的作用,在后一种情况下,AlgoSID在其发挥作用的网络域内,不用于指导路由,仅用于确定网络切片标识。网络切片SID可以具备如下功能:网络中的设备可以根据该网络切片SID,为报文确定对应的网络切片。当网络切片SID仅为一台设备的标识时,则该网络切片SID还具有指示到这台网络设备的路由的作用。Network slice segment identifier (AlgoSID): A special SID representing a network slice, also known as a network slice SID, which can be an instance of an intent SID and can be used to indicate a network on a network device in the network Slice, or used to indicate the same network slice on multiple network devices in the network, consistent with the intent SID, in the former case, the AlgoSID can also play the role of guiding routing, in the latter case, the AlgoSID In the network domain in which it functions, it is not used to guide routing, but only to determine the network slice identity. The network slice SID may have the following functions: a device in the network may determine a corresponding network slice for a packet according to the network slice SID. When the network slice SID is only an identification of one device, the network slice SID also has the function of indicating the route to this network device.
网络切片:网络切片技术也可以理解为虚拟网络技术,网络切片技术可采用灵活算法(Flexible Algorithm,Flex-Algo)网络切片或转发层面的分片技术,也可以是其他形式的网络切片技术。其中网络切片可以采用:Flex-Algo标识或分片标识(SliceID)表示。Network slicing: The network slicing technology can also be understood as a virtual network technology. The network slicing technology can adopt a flexible algorithm (Flexible Algorithm, Flex-Algo) network slicing or forwarding layer slicing technology, or other forms of network slicing technology. The network slice can be represented by: Flex-Algo identifier or slice identifier (SliceID).
1)Flex-Algo的原理1) Principle of Flex-Algo
在Flex-Algo场景中,通过Flex-Algo算法将网络规划成多个平面,形成多个拓扑,每个拓扑配置一个特别的算法Flex-Algo。Flex-Algo算法从128~255范围。网络中存在默认Flex-Algo 0算法拓扑。In the Flex-Algo scenario, the network is planned into multiple planes through the Flex-Algo algorithm to form multiple topologies, and each topology is configured with a special Flex-Algo algorithm. The Flex-Algo algorithm ranges from 128 to 255. The default Flex-Algo 0 algorithm topology exists in the network.
可以将一个网络节点、或该网络节点的部分链路部署到某一个或者多个Flex-Algo算法中。如图1所示,图1是网络分片示例,本示例示出了一种Flex-Algo形成分片拓扑的例子。该网络中,包括网络节点,即网络设备0至网络设备9,可以在该网络中规划至少3个网络切片,对应3个Flex-Algo,每个Flex-Algo算法支持一系列算路因子,如:A network node, or a partial link of the network node, can be deployed into one or more Flex-Algo algorithms. As shown in Figure 1, Figure 1 is an example of network sharding. This example shows an example of Flex-Algo forming a sharding topology. The network includes network nodes, namely network device 0 to network device 9. At least 3 network slices can be planned in the network, corresponding to 3 Flex-Algos. Each Flex-Algo algorithm supports a series of path calculation factors, such as :
Flex-Algo 0的算路因子可定义为代价(cost)最小,这个Flex-Algo可包括所有节点;The path calculation factor of Flex-Algo 0 can be defined as the minimum cost, and this Flex-Algo can include all nodes;
Flex-Algo 128的算路因子可以定义为时延最小,并包含图1中实线示出的网络节点1-4,与网络节点0和9;The path calculation factor of Flex-
Flex-Algo 129的算路因子可以定义为流量工程度量值(traffic engine-metirc,TE-Metric)最小,并包含图1中使用虚线示出的网络节点5-8,与网络节点0和9。The path calculation factor of the Flex-
网络中的设备可以根据业务或网络部署需求灵活选择Algo算法,如,可以根据度量值(metric)、时延(delay)、TE Metric等,对网络进行切片计算后可得到如下图2所示的网络分片示意图。The devices in the network can flexibly select the Algo algorithm according to the service or network deployment requirements. For example, the network can be sliced according to the metric, delay, TE Metric, etc., and the following figure can be obtained. Schematic diagram of network sharding.
2)SliceID切片原理2) SliceID slicing principle
通过引入全局网络分片标识SliceID,在传统网络控制面虚拟路由转发(virtual routing and forwarding,VRF)实例中使能转发面SliceID,转发面报文携带SliceID,中间传输报文的逐跳节点识别报文中的SliceID并约束流量在特定预留资源中转发,保障分片业务的SLA。By introducing the global network slice identifier SliceID, the forwarding plane SliceID is enabled in the virtual routing and forwarding (VRF) instance of the traditional network control plane. The forwarding plane packet carries the SliceID, and the hop-by-hop node identification of the intermediate transmission packet is reported. The SliceID in this article also restricts the traffic to be forwarded in specific reserved resources to ensure the SLA of the sharded service.
在SliceID方式的分片部署中,对于不同业务,如:移动业务、专线业务等网络承载的各种希望预留网络转发资源的业务,可采用整体预分片的方式,即对整个基础网端口都按照一定带宽要求(如收敛比、端口百分比等),采用灵活以太(Flexible Ethernet,FlexE)/信道化子接口进行资源保障和配置,生成一个覆盖全网的分片网络,每个分片对应的端口预留一定的带宽。In the fragmentation deployment of the SliceID mode, for different services, such as mobile services, private line services and other services carried by the network that wish to reserve network forwarding resources, the overall pre-fragmentation method can be used, that is, the entire basic network port According to certain bandwidth requirements (such as convergence ratio, port percentage, etc.), flexible Ethernet (FlexE)/channelized sub-interfaces are used for resource guarantee and configuration, and a fragmented network covering the entire network is generated. Each fragment corresponds to The port reserves a certain bandwidth.
通过SliceID进行切片的网络支持灵活的网络切片虚拟专用网(virtual private network,VPN)承载方案,一个网络分片可独享一个VRF实例,或多个网络分片共享一个VRF实例,通过不同区分服务编码点(differentiated services code point,DSCP)入多个分片。The network sliced through SliceID supports a flexible network slice virtual private network (VPN) bearer scheme. One network slice can share a single VRF instance, or multiple network slices can share a VRF instance, and differentiate services through different services. Code point (differentiated services code point, DSCP) into multiple shards.
如图2所示,示出了一种通过SliceID进行网络切片的网络示意图。该网络中包括三个分片,分别为:SliceID1,SliceID2,SliceID3。这3个网络分片分别为3个分片业务分片业务1、分片业务2和分片业务3服务。业务对应三个不同的虚拟局域网(virtual local area network,VLAN)/DSCP接入承载网不同逻辑接口,每个逻辑接口分别绑定一个VRF实例。As shown in FIG. 2 , a schematic diagram of a network for network slicing through SliceID is shown. The network includes three shards: SliceID1, SliceID2, and SliceID3. The three network slices serve the three slice
网络侧为每个网络分片规划全局唯一的SliceID,当业务的报文到达网络后,公网侧设备通过SliceID映射到转发面对应网络分片特定的预留资源,保障每个分片业务的服务水平协议(Service Level Agreement,SLA)要求。运营商已有的承载网也可称为默认分片,每一个物理接口下的转发资源可分配给默认分片及各业务分片。物理接口的3层属性对所有网络分片共享,包括物理主接口上的IPv6地址/链路开销等,物理口的三层邻居,基于物理主接口测量得出的链路时延,基于物理主接口分配的邻接SID标签等。每个网络分片“资源预留”子接口占用物理主接口下的预留资源,并为这些“资源预留”子接口配置对应的SliceID。The network side plans a globally unique SliceID for each network slice. After the service packet reaches the network, the public network side device uses the sliceID to map to the specific reserved resources corresponding to the network slice on the forwarding plane to ensure the service of each slice. Service Level Agreement (SLA) requirements. An operator's existing bearer network may also be called a default fragment, and the forwarding resources under each physical interface can be allocated to the default fragment and each service fragment. The
默认分片:分片前的物理承载网络,承载基础的内部网关协议(Interior Gateway Protocol,IGP)/边界网关协议(Border Gateway Protocol,BGP)协议,未指定分片的业务均在默认分片中承载,默认分片也可以作为业务分片的容灾备份分片。Default fragmentation: The physical bearer network before fragmentation, which bears the basic Interior Gateway Protocol (IGP)/Border Gateway Protocol (Border Gateway Protocol, BGP) protocol, and services that do not specify a fragmentation are in the default fragmentation The default shard can also be used as the disaster recovery backup shard for the service shard.
业务分片:基于业务SLA要求创建的分片,不同业务分片之间可以逻辑或者物理隔离,如:每个VPN实例独享分片或者多个VPN共享一个分片(DSCP映射分片)。在IPv6网络中,用SliceID来标识分片,控制面完成网络分片标识SliceID与转发面分片“预留资源”的映射。业务在用户接入侧根据业务标识进入不同的网络分片。Service shards: shards created based on service SLA requirements. Different service shards can be logically or physically isolated. For example, each VPN instance shares a shard exclusively or multiple VPNs share a shard (DSCP mapping shard). In an IPv6 network, SliceID is used to identify a slice, and the control plane completes the mapping between the network slice identifier SliceID and the "reserved resources" of the forwarding plane slice. On the user access side, services enter different network segments according to service identifiers.
IP报文头:可分为基础头或扩展头,即该报文头可以包括基础头,还可以包括扩展头, 其中基础头也可以称为标准头。在一个示例中,该IP报文头为IPv6报文头,该IPv6报文头可以包括IPv6基础头和IPv6扩展头。IPv6扩展头可以包括目的选项头、逐跳选项头(hop-by-hop options header,HBH)、SRH中的一项或多项等。IP header: It can be divided into a basic header or an extended header, that is, the header can include a basic header or an extended header, where the basic header can also be called a standard header. In an example, the IP header is an IPv6 header, and the IPv6 header may include an IPv6 basic header and an IPv6 extension header. The IPv6 extension header may include one or more of a destination option header, a hop-by-hop options header (HBH), an SRH, and the like.
以上,简单介绍了本申请实施例的相关技术,下面将结合图3所示的网络场景介绍本申请提供的技术方案。在该网络中,包括骨干网(core)、城域网(metro)1,可选的,还包括城域网(metro)2,或者更多的城域网。在城域网1中,包括接入(access,ACC)设备ACC1,汇聚(aggregation,AGG)设备AGG1和(metro core node,MC)设备MC1;骨干网中,包括PE1、PE2、PE3、PE4、运营商(Provider,P)设备:P1、P2、P3、P4,城域网中包括ACC2、AGG2、MC2等网络设备。其中,PE1和PE2与城域网的MC设备相连,如PE1与MC1相连,PE3和PE4与城域网2的MV设备相连,如PE3与MC2相连。本网络场景中,还可以包括更多的网络,如企业客户的私有网络,更多的城域网,或者其他的骨干网等。以上,使用了ACC设备、AGG设备和MC设备作为示例,应用于其他场景,如无线网络接入场景,该ACC设备也可以称为用户侧网关(customer site gateway,CSG)设备,AGG设备也可以称为汇聚侧网关(aggregation site gateway,ASG)设备,MC设备也可以称为无线业务侧网关(radio service gateway,RSG)设备。In the above, the related technologies of the embodiments of the present application are briefly introduced, and the technical solutions provided by the present application will be introduced below in conjunction with the network scenario shown in FIG. 3 . The network includes a backbone network (core), a metropolitan area network (metro) 1, optionally, a metropolitan area network (metro) 2, or more metropolitan area networks. In
在如图3所示的网络中,为了为业务提供相应的SLA,通常需建立端到端(end to end,E2E)的SRv6 Policy或者采用上述的网络切片技术,为业务提供确定性的时延、带宽等业务质量要求的转发路径。尤其是针对SLA要求高的专线业务,为保障网络租户的业务质量,需为每个租户创建正反向E2E隧道,为了进行隧道保护和业务保护,还需要创建配套的备份隧道,以上为某一个业务所创建的往返隧道、保护隧道、本地隧道等,总计可达20-30条,这极大挑战了网络设备隧道承载能力、控制器管理和维护隧道的能力。尤其是在专线上云的业务场景下,业务报文通常经过一个较大的网络传输,该网络中可以包括多个小的网络,如骨干网或城域网,由于E2E隧道可能会跨越多个自治系统(autonomous system,AS)或内部网关协议(Interior Gateway Protocol,IGP)域,所经节点数量太多,端到端的隧道配置极为复杂。尤其是当该业务需要经过多个网络传输的时候,当多个网络采用不同的网络技术来为业务提供服务时,配置更为复杂,如,骨干网采用网络切片技术来进行网络质量保障,而城域网采用SRv6技术来进行网络质量保障的时候。在一个示例中,这里的骨干网和城域网1属于不同的IGP域,或者属于不同的AS。在一种场景中,云运营商边缘设备(provider edge,PE)设备将成为各城域网专线业务的隧道PE汇聚节点,需要创建海量的隧道。在较大型网络中,不仅仅是上云专线,B2B专线在整个网络中也会创建海量的隧道,控制器需对这海量的隧道进行管理、控制和运维。随着业务的发展,网络设备上创建的隧道数量会越来越多、控制设备管控的隧道数量也会越来越多。In the network shown in Figure 3, in order to provide corresponding SLAs for services, it is usually necessary to establish an end-to-end (E2E) SRv6 Policy or adopt the above-mentioned network slicing technology to provide deterministic latency for services , bandwidth and other service quality requirements. Especially for private line services with high SLA requirements, to ensure the service quality of network tenants, it is necessary to create forward and reverse E2E tunnels for each tenant. For tunnel protection and service protection, it is also necessary to create supporting backup tunnels. The above is a certain one. The total number of round-trip tunnels, protection tunnels, and local tunnels created by services can reach 20-30, which greatly challenges the tunnel bearing capacity of network equipment and the ability of controllers to manage and maintain tunnels. Especially in the private line cloud service scenario, service packets are usually transmitted through a large network, which may include multiple small networks, such as backbone networks or metropolitan area networks, because E2E tunnels may span multiple networks. In autonomous system (AS) or Interior Gateway Protocol (IGP) domains, there are too many nodes and the end-to-end tunnel configuration is extremely complicated. Especially when the service needs to be transmitted through multiple networks, when multiple networks use different network technologies to provide services for the service, the configuration is more complicated. For example, the backbone network uses network slicing technology to ensure network quality, while When the metropolitan area network adopts SRv6 technology for network quality assurance. In an example, the backbone network and the
本申请提供了多种技术方案,用于解决上述网络中为了保障业务质量,配置隧道数量过多的问题。The present application provides various technical solutions for solving the problem of too many tunnels configured in the above network in order to ensure service quality.
如图4所示,提供了一个本申请提供的一种报文发送方法的流程示意图,包括如下步骤:As shown in FIG. 4 , a schematic flowchart of a message sending method provided by the present application is provided, including the following steps:
S405:第一网络设备获得第一报文,该报文的IP扩展头中包括第一标识。S405: The first network device obtains the first packet, and the IP extension header of the packet includes the first identifier.
该第一标识用于指示第一报文对应的业务要求,该第一标识可以为上述意图SID或者意图标识。The first identifier is used to indicate a service requirement corresponding to the first packet, and the first identifier may be the above-mentioned intent SID or intent identifier.
第一网络设备获得第一报文的方式包括以下两种情况:The manner in which the first network device obtains the first packet includes the following two cases:
情况1、接收第二网络设备发送的报文,该报文即为第一报文。Case 1: Receive a packet sent by the second network device, and the packet is the first packet.
情况2、第一网络设备接收第二网络设备发送的报文后,更新该报文,得到第一报文。如,当该报文包括段标识列表,则第一网络设备可以根据该段标识列表,更新该报文的DA,则第一网络设备获得的第一报文为更新DA后的报文。Case 2: After receiving the message sent by the second network device, the first network device updates the message to obtain the first message. For example, when the message includes a segment identifier list, the first network device can update the DA of the message according to the segment identifier list, and the first message obtained by the first network device is the message after updating the DA.
上述第二网络设备可以和第一网络设备在同一个网络中,或者也可以在不同的网络中。应用于图3所示的网络中,该第二网络设备可以为,例如:图3所示的网络中城域网1的ACC1设备或MC1设备。第一网络设备可以为例如图3所示的网络中骨干网的PE1或PE2等设备,或者,城域网2中的MC2等设备。再例如:图3所示的网络中的骨干网的P2设备可以为第二网络设备,PE1可以为第一网络设备。The above-mentioned second network device may be in the same network as the first network device, or may be in a different network. Applied to the network shown in FIG. 3 , the second network device may be, for example, an ACC1 device or an MC1 device of the
在一个示例中,该第一标识可以为段标识,如:意图段标识,当该第一标识为段标识时,第一报文的SRH中包括第一标识。可选的,该SRH也可以包括上述第二标识。在另一个示例中,该第一标识可以为意图标识,则此时,报文的HBH中可以包括该第一标识。In an example, the first identifier may be a segment identifier, such as an intent segment identifier. When the first identifier is a segment identifier, the SRH of the first packet includes the first identifier. Optionally, the SRH may also include the foregoing second identifier. In another example, the first identifier may be an intent identifier, and at this time, the HBH of the packet may include the first identifier.
即,第二网络设备向第一网络设备发送的报文中包括第一标识,该标识与业务要求对应。其中,第二网络设备向第一网络设备发送的报文中包括第一标识的方式包括但不限于如下几种情况:That is, the packet sent by the second network device to the first network device includes the first identifier, and the identifier corresponds to the service requirement. The manner in which the first identifier is included in the packet sent by the second network device to the first network device includes but is not limited to the following situations:
情况A:第二网络设备获得控制设备发送的第一标识,后,将其封装到报文中。Case A: The second network device obtains the first identifier sent by the control device, and then encapsulates it into a message.
控制设备可以根据网络的拓扑以及业务的需求,如从如图3所示的城域网1-骨干网-城域网2之间,计算一条端到端的转发路径,该转发路径可以对应一个段标识列表,即,该段标识列表指示了这条转发路径。在该段标识列表中,可以包括至少1个标识,这些至少1个标识中包括第一标识。比如,该业务需要重点保障骨干网的转发路径的质量,则控制设备可以仅向第二网络设备发送可应用于骨干网的第一标识。例如,该第一标识可以是PE1的段标识,则该转发路径经过PE1。在一个示例中,第二网络设备获得的段标识列表可以仅包括第一标识:如意图SID:IntentSID1,该SID代表了A业务在骨干网中按照IntentSID1对应的业务要求来最终确认转发路径。在另一个示例中,该段标识列表可以包括IntentSID2,IntentSID1,IntentSID3,第一标识可以为如IntentSID1、IntentSID2或IntentSID3。其中,IntentSID1可以为ACC1的意图SID或者是城域网1中至少两台设备的意图SID,这至少两台设备可以是城域网1中的边缘设备如,ACC1和MC1。IntentSID2可以为PE1上的意图SID或者是骨干网中至少两台设备的意图SID,这至少两台设备可以是骨干网中的边缘设备如,PE1、PE2、PE3和PE4。IntentSID3可以为ACC2上的意图SID或者是城域网2中至少两台设备的意图SID,这至少两台设备可以是城域网2中的边缘设备如,ACC2和MC2。这里以及后续所说的意图SID为至少两台设备的意图SID,是指第一网络包括的至少两台网络设备可以执行基于第一标识确定报文对应的路径指示信息。The control device can calculate an end-to-end forwarding path according to the network topology and service requirements, such as from the MAN 1-backbone-
控制设备也可以结合各个网络的规划,根据网络的规划向第二网络设备发送意图标识。该意图标识可以是在每个网络中的含义不一样,也可以是在多个网络中的含义一致。如,控制设备可以向ACC1发送意图标识,该意图标识可以如IntentID1,该IntentID1可以同时作用于图3所示的骨干网、城域网1等,其可以在骨干网和城域网均表示业务要求为如:低时延。或者IntentID1代表了目标业务对骨干网的业务要求为低时延,对城域网业务要求为高带宽以及低时延。The control device may also send the intent identifier to the second network device according to the network planning in combination with the planning of each network. The intent identifier may have different meanings in each network, or may have the same meaning in multiple networks. For example, the control device can send an intent identifier to ACC1, where the intent identifier can be IntentID1, which can act on the backbone network,
以上,控制设备可以通过链路状态协议报文或路径计算单元通信协议报文发送上述计 算得到的段标识列表。In the above, the control device may send the segment identifier list obtained by the above calculation through the link state protocol message or the path calculation unit communication protocol message.
情况B:第二网络设备根据获得的配置的第一标识,在接收到的报文中,封装第一标识。Case B: The second network device encapsulates the first identifier in the received packet according to the obtained configured first identifier.
第二网络设备也可以获得管理人员通过管理设备、管理接口等不限方式配置的第一标识。然后在接收到的报文中,封装第一标识,后向第一网络设备发送该报文。The second network device can also obtain the first identifier configured by the administrator through the management device, the management interface, and the like in an unlimited manner. Then, in the received message, the first identifier is encapsulated, and then the message is sent to the first network device.
情况C:第二网络设备接收其上游设备发送的报文,该报文中即携带了第一标识。Case C: The second network device receives a packet sent by its upstream device, and the packet carries the first identifier.
在一个示例中,当第二网络设备是图3中的MC1时,其在接收到由ACC1发送的报文时,该报文中即已经携带了该第一标识。In an example, when the second network device is MC1 in FIG. 3 , when it receives a packet sent by ACC1, the packet already carries the first identifier.
以上,第二网络设备向第一网络设备发送的报文中的IP扩展头中包括上述第一标识。该IP扩展头可以为HBH或目的选项头。In the above, the IP extension header in the packet sent by the second network device to the first network device includes the above-mentioned first identifier. The IP extension header can be an HBH or a destination option header.
在一个示例中,该的报文的目的地址中还包括第二标识。In an example, the destination address of the packet further includes a second identifier.
S410:第一网络设备基于第一标识和第二标识确定第一报文对应的路径指示信息。S410: The first network device determines path indication information corresponding to the first packet based on the first identifier and the second identifier.
对应于上述第一网络设备获得第一报文的两种情况,则第一网络设备接收到的报文中的目的地址(destination address,DA)可以为上述第二标识,或者,第二网络设备更新该报文的DA得到第一报文后,该第一报文的DA为上述第二标识。即:该第一报文的DA中包括第二标识。Corresponding to the two situations in which the first network device obtains the first message, the destination address (destination address, DA) in the message received by the first network device may be the above-mentioned second identifier, or, the second network device After updating the DA of the message to obtain the first message, the DA of the first message is the above-mentioned second identifier. That is, the DA of the first packet includes the second identifier.
在一个示例中,上述第二标识为段标识,如虚拟私有网络(virtual private network,VPN)SID,意图段标识或其他段标识,该第二标识还携带在第一报文的SRH中。在另一个示例中,该第二标识即为上述IPv6报文头中的目的地址,并不携带在第一报文的SRH中。上述第二标识可用于第一网络设备基于第二标识进行路由寻址、确定转发策略等。In an example, the above-mentioned second identifier is a segment identifier, such as a virtual private network (virtual private network, VPN) SID, an intent segment identifier or other segment identifiers, and the second identifier is also carried in the SRH of the first packet. In another example, the second identifier is the destination address in the foregoing IPv6 packet header, and is not carried in the SRH of the first packet. The foregoing second identifier may be used by the first network device to perform routing addressing, determine a forwarding policy, and the like based on the second identifier.
上述路径指示信息包括以下的一项或多项:网络切片标识、段标识列表、尽力而为(best effort,BE)的转发等等。其中,网络切片标识可用于标识一个用于转发第一报文的网络切片,该网络切片标识可以仅仅是的第一网络设备对该切片的标识,也可以是该第一网络设备所处的第一网络中的多台设备对该切片的标识,网络切片标识可以为灵活切片标识或sliceID中的一项或两项。段标识列表可用于指示一条用于转发第一报文的转发隧道,其中可以包括一个或多个段标识,这里面的段标识可以包括网络切片段标识、意图段标识或其他段标识中的一个或多个。The above path indication information includes one or more of the following: a network slice identifier, a segment identifier list, best effort (best effort, BE) forwarding, and the like. The network slice identifier may be used to identify a network slice for forwarding the first packet, and the network slice identifier may only be the identifier of the slice by the first network device, or may be the first network device where the first network device is located. The identifier of the slice of multiple devices in a network, the network slice identifier can be one or both of the flexible slice identifier or sliceID. The segment identifier list may be used to indicate a forwarding tunnel for forwarding the first packet, which may include one or more segment identifiers, and the segment identifiers may include one of a network segment identifier, an intent segment identifier, or other segment identifiers. or more.
第一网络设备基于第一标识和第二标识确定对应的路径指示信息,包括但不限于如下几种方式:The first network device determines the corresponding path indication information based on the first identifier and the second identifier, including but not limited to the following ways:
方式一、第一网络设备基于第二标识确定第一报文对应的转发策略,该转发策略中包括第一标识和路径指示信息的第一对应关系。Manner 1: The first network device determines a forwarding policy corresponding to the first packet based on the second identifier, where the forwarding policy includes a first correspondence between the first identifier and the path indication information.
则第一网络设备可以基于第一标识和第一对应关系,确定该路径指示信息。Then, the first network device may determine the path indication information based on the first identifier and the first correspondence.
在一个示例中,该转发策略可以仅包括一个对应关系,在另一个示例中,该转发策略可以包括多个对应关系。即,该转发策略,可以是单条策略,也可以是一个策略组。In one example, the forwarding policy may include only one correspondence, and in another example, the forwarding policy may include multiple correspondences. That is, the forwarding policy may be a single policy or a policy group.
在一个示例中,该对应关系可如表1所示,该表中包括了第二标识、第一标识和路径指示信息。其中,第一报文包括的标识信息如下:第二标识为指示该第一报文发送方向的VPNSID1,第一标识为该一报文的意图SID如IntentSID1。则根据表1所示的对应关系可知,第一报文可确定第一报文对应的路径指示信息为129,在这个示例中,129为灵活算法标识。In an example, the corresponding relationship may be as shown in Table 1, where the table includes the second identifier, the first identifier, and path indication information. The identification information included in the first packet is as follows: the second identification is VPNSID1 indicating the sending direction of the first packet, and the first identification is the intent SID of the packet, such as IntentSID1. Then, according to the corresponding relationship shown in Table 1, it can be known that the first packet can determine that the path indication information corresponding to the first packet is 129, and in this example, 129 is a flexible algorithm identifier.
表1Table 1
在一个示例中,该对应关系可如表2所示,第一网络设备可以通过第二标识确定到如表2所示的转发策略,后通过IntentSID1确定其对应的路径指示信息为129。In an example, the corresponding relationship may be as shown in Table 2. The first network device may determine the forwarding policy as shown in Table 2 through the second identifier, and then determine that its corresponding path indication information is 129 through IntentSID1.
表2Table 2
在另一个示例中,表3示例了一种转发策略为策略组的情况,该转发策略可为如下所示的策略组policy group10所示。In another example, Table 3 illustrates a case where the forwarding policy is a policy group, and the forwarding policy may be shown as the policy group policy group10 shown below.
表3table 3
该策略组中包括第一标识与路径指示信息的对应关系,即包括了第一标识与路径指示信息的对应策略。第一网络设备可以通过第二标识如VPNSID1确定到如表3所示的policy group10,该policy group10包括多个对应关系,即多个详细策略,其中,intentSID1与policy1对应,该intentSID1的业务要求为低时延以及大带宽,而policy1为一个SR policy或者一个段标识列表,当该policy1为SR policy时,其可以确定一个对应的段标识列表。该段标识列表指示的转发路径能满足低时延以及大带宽的传输要求。同理,IntentSID2对应的路径指示信息包括policy2提供的段标识列表以及sliceID1。其表明,当报文中的意图SID为intentSID2时,在policy2指示的段标识列表对应的转发路径中,按sliceID指示的网络切片发送报文。第三个对应关系中的第一标识为intentSID8,其为意图标识,其对应的路径指示信息为sliceID1,表明当报文中的第一标识为intentSID8时,可以基于sliceID1指示的网络切片发送该第一报文。The policy group includes a corresponding relationship between the first identifier and the path indication information, that is, includes a corresponding policy between the first identifier and the path indication information. The first network device can determine the policy group10 shown in Table 3 through the second identifier such as VPNSID1. The policy group10 includes multiple correspondences, that is, multiple detailed policies, wherein the intentSID1 corresponds to the policy1, and the service requirements of the intentSID1 are: Low latency and large bandwidth, and policy1 is an SR policy or a segment ID list. When the policy1 is an SR policy, it can determine a corresponding segment ID list. The forwarding path indicated by the segment identifier list can meet the transmission requirements of low delay and large bandwidth. Similarly, the path indication information corresponding to IntentSID2 includes the segment identifier list provided by policy2 and sliceID1. It indicates that when the intent SID in the packet is intentSID2, the packet is sent according to the network slice indicated by sliceID in the forwarding path corresponding to the segment identifier list indicated by policy2. The first identifier in the third correspondence is intentSID8, which is an intent identifier, and the corresponding path indication information is sliceID1, indicating that when the first identifier in the packet is intentSID8, the first identifier can be sent based on the network slice indicated by sliceID1. a message.
方式二、第一网络设备基于第一标识确定与其对应的第三标识,并基于第二标识确定第一报文对应的转发策略,该转发策略中包括第三标识和路径指示信息的第一对应关系。Mode 2: The first network device determines a third identifier corresponding to it based on the first identifier, and determines a forwarding policy corresponding to the first packet based on the second identifier, where the forwarding policy includes the first correspondence between the third identifier and the path indication information. relation.
则第一网络设备可以基于第三标识和第二对应关系,确定该路径指示信息。Then, the first network device may determine the path indication information based on the third identifier and the second correspondence.
在这个方式中,第一网络设备还基于第一标识确定与其对应的第三标识。在一个示例中,第一网络设备还保存有第一标识与第三标识的对应关系,如下表4所示。In this manner, the first network device also determines a third identifier corresponding to the first identifier based on the first identifier. In an example, the first network device further stores the correspondence between the first identifier and the third identifier, as shown in Table 4 below.
表4Table 4
则第一网络设备可以基于第一标识获得第三标识之后,再基于如上方式一所示中提供的多种示例中的任一种方式确定与其对应的路径指示信息。本申请在此不再赘述。增加第 三标识的方式可以使得控制设备使用如同一个意图SID即可实现全网业务编排,而每个网络或每台设备上配置不同的第三标识,即可通过第一标识与第三标识的对应关系,获得对应的路径指示信息,更利于实现分层的网络管理。Then, after obtaining the third identifier based on the first identifier, the first network device may determine the path indication information corresponding to it based on any one of the various examples provided in the first manner above. This application will not repeat them here. The method of adding the third identifier can make the control device use the same intent SID to realize the service arrangement of the whole network, and each network or each device is configured with a different third identifier, which can be passed through the first identifier and the third identifier. Corresponding relationship, obtaining corresponding path indication information, is more conducive to the realization of hierarchical network management.
S415:第一网络设备基于路径指示信息更新第一报文,得到第二报文。S415: The first network device updates the first packet based on the path indication information to obtain the second packet.
第一网络设备在确定该第一报文对应的路径指示信息后,可以更新该第一报文,得到第二报文。第一网络设备更新第一报文得到第二报文的方式包括但不限于以下方式:方式一、第一网络设备在确定该路径指示信息之后,可以将该路径指示信息封装到第一报文中得到第二报文,使得后续需要继续转发该报文的设备可以根据第一网络设备已经获得的路径指示信息转发报文,这样可以减少网络中的隧道信息的配置。After determining the path indication information corresponding to the first packet, the first network device may update the first packet to obtain the second packet. The manner in which the first network device updates the first packet to obtain the second packet includes, but is not limited to, the following manners:
在一个示例中,路径指示信息为段标识列表,则第一网络设备可以为该第一报文封装新的IPv6报文头,该IPv6报文头中包括SRH,在该SRH中包括路径指示信息对应的段标识列表。In an example, the path indication information is a segment identifier list, then the first network device may encapsulate a new IPv6 header for the first packet, the IPv6 header includes an SRH, and the SRH includes path indication information A list of corresponding segment IDs.
在另一个示例中,路径指示信息为网络切片标识,则第一网络设备可以为该第一报文封装新的IPv6报文头,该IPv6报文头中包括HBH或目的选项头,在该HBH或目的选项头中包括路径指示信息对应的网络切片标识。In another example, the path indication information is a network slice identifier, and the first network device may encapsulate a new IPv6 header for the first packet, where the IPv6 header includes an HBH or a destination option header, where the HBH Or the destination option header includes the network slice identifier corresponding to the path indication information.
在另一个示例中,路径指示信息为灵活算法标识和网络切片标识,则第一网络设备可以为该第一报文封装新的IPv6报文头,该IPv6报文头中包括至少1个HBH,在至少1个HBH中包括上述灵活算法标识和网络切片标识,即灵活算法标识和网络切片标识可以携带在同一个HBH里,也可以携带在不同的HBH里。In another example, the path indication information is a flexible algorithm identifier and a network slice identifier, then the first network device may encapsulate a new IPv6 packet header for the first packet, and the IPv6 packet header includes at least one HBH, The flexible algorithm identifier and network slice identifier described above are included in at least one HBH, that is, the flexible algorithm identifier and the network slice identifier can be carried in the same HBH or in different HBHs.
方式二、第一网络设备也可以不封装路径指示信息。当该路径指示信息为网络切片标识或段标识列表,则第一网络设备可以根据该路径指示信息确定发送该第一报文的出接口。在确定该第一报文的出接口后,则第一网络设备可以根据该出接口的媒体接入控制(Media Access Control,MAC)地址等信息更新该第一报文,得到第二报文。当该路径指示信息为段标识列表的情况下,该段标识列表可以仅包括一个段标识,当该段标识为第一网络设备自身的SID的情况下,第一网络设备可以根据该SID确定发送该第一报文的出接口。Manner 2: The first network device may also not encapsulate the path indication information. When the path indication information is a network slice identifier or a segment identifier list, the first network device may determine an outbound interface for sending the first packet according to the path indication information. After determining the outgoing interface of the first packet, the first network device may update the first packet according to information such as a media access control (Media Access Control, MAC) address of the outgoing interface to obtain a second packet. When the path indication information is a segment identifier list, the segment identifier list may only include a segment identifier, and when the segment identifier is the SID of the first network device itself, the first network device may determine to send the data according to the SID. The outbound interface of the first packet.
以上仅为第一网络设备更新第一报文得到第二报文的示例,第一网络设备还可以基于其他方式,如更新已有的HBH头等的方式更新第一报文。本申请不对第一网络设备更新第一报文的方式进行限定。The above is only an example in which the first network device updates the first packet to obtain the second packet, and the first network device may also update the first packet based on other methods, such as updating an existing HBH header. This application does not limit the manner in which the first network device updates the first packet.
S420:发送第二报文。S420: Send the second message.
第一网络设备在确定上述对应的路径指示信息后,即可基于路径指示信息发送第二报文。如表1所示,当第一网络设备确定对应的路径指示信息为灵活算法标识129后,即可根据灵活算法标识129发送该第二报文,在该过程中,第一网络设备还可以结合第二报文的目的地址以及该灵活算法标识确定发送该第二报文的出口等。After determining the corresponding path indication information, the first network device may send the second packet based on the path indication information. As shown in Table 1, after the first network device determines that the corresponding path indication information is the
如图5所示,提供了一个本申请提供的一种报文发送方法流程示意图,包括如下步骤:As shown in FIG. 5 , a schematic flowchart of a message sending method provided by the present application is provided, including the following steps:
S505:第一网络设备获得第一报文,该第一报文包括第一标识。S505: The first network device obtains a first packet, where the first packet includes a first identifier.
以下,分两种情况对本方法的方案进行详细介绍。In the following, the scheme of the method will be described in detail in two cases.
情况A:该第一报文的IP报文头中包括第一标识。Case A: The IP header of the first packet includes the first identifier.
本第一报文的IP报文头可以为上述基础头或扩展头,在此不做限定。该第一标识可以为上述意图SID、意图标识或网络切片段标识。当该第一标识为网络切片段标识,如灵活 算法段标识(AlgoSID)时,则该网络切片段标识可以对应如PE1上的一个灵活算法标识或sliceID,其对应PE1上的一个网络切片。或者该第一标识可以对应骨干网中的一个网络切片,即,该AlgoSID可以为网络中的至少两台网络设备的标识,这至少两台设备可以是骨干网中的边缘设备如,PE1、PE2、PE3和PE4或更多的设备。这里以及后续所说的AlgoSID为至少两台设备的标识,是指第一网络包括的至少两台网络设备可以基于第一标识确定第一报文对应的路径指示信息。The IP header of the first message may be the above-mentioned basic header or extended header, which is not limited herein. The first identifier may be the above-mentioned intent SID, intent identifier or network segment identifier. When the first identifier is a network slice identifier, such as a flexible algorithm segment identifier (AlgoSID), then the network slice identifier can correspond to, for example, a flexible algorithm identifier or sliceID on PE1, which corresponds to a network slice on PE1. Or the first identifier can correspond to a network slice in the backbone network, that is, the AlgoSID can be the identifiers of at least two network devices in the network, and the at least two devices can be edge devices in the backbone network, such as PE1, PE2 , PE3 and PE4 or more devices. The AlgoSID mentioned here and later is an identifier of at least two devices, which means that at least two network devices included in the first network can determine the path indication information corresponding to the first packet based on the first identifier.
情况B:该第一报文的HBH或目的选项头中包括第一标识,该第一标识为意图ID。Case B: The HBH or destination option header of the first packet includes a first identifier, and the first identifier is an intent ID.
上述第一标识用于指示第一报文对应的业务要求。The above-mentioned first identifier is used to indicate the service requirement corresponding to the first packet.
以上情况A和情况B,第一网络设备获得第一报文的方式均包括以下两种情况:In the above cases A and B, the manner in which the first network device obtains the first packet includes the following two cases:
情况1、接收第二网络设备发送的报文,该报文即为第一报文。Case 1: Receive a packet sent by the second network device, and the packet is the first packet.
情况2、第一网络设备接收第二网络设备发送的报文后,更新该报文,则该更新后的报文,即为第一网络设备获得的第一报文。如,当该报文包括段标识列表,则第一网络设备可以根据该段标识列表,更新该报文的DA,则第一网络设备获得的第一报文为更新DA后的报文。Case 2: After the first network device receives the message sent by the second network device, and updates the message, the updated message is the first message obtained by the first network device. For example, when the message includes a segment identifier list, the first network device can update the DA of the message according to the segment identifier list, and the first message obtained by the first network device is the message after updating the DA.
上述第二网络设备可以和第一网络设备在同一个网络中,或者也可以在不同的网络中。应用于图3所示的网络中,该第二网络设备可以为,例如:图3所示的网络中城域网1的ACC1设备或MC1设备。第一网络设备可以为例如图3所示的网络中骨干网的PE1或PE2等设备,或者,城域网2中的MC2等设备。再例如:图3所示的网络中的骨干网的P2设备可以为第二网络设备,PE1可以为第一网络设备。The above-mentioned second network device may be in the same network as the first network device, or may be in a different network. Applied to the network shown in FIG. 3 , the second network device may be, for example, an ACC1 device or an MC1 device of the
在情况A的一个示例中,该第一标识可以为段标识,如:意图段标识或网络切片段标识,当该第一标识为段标识时,第一报文的SRH中包括第一标识。在另一个示例中,该第一标识可以为意图ID,当该第一标识为意图ID时,第一报文的HBH或目的选项多中可以包括第一标识。In an example of case A, the first identifier may be a segment identifier, such as an intent segment identifier or a network segment identifier. When the first identifier is a segment identifier, the SRH of the first packet includes the first identifier. In another example, the first identifier may be an intent ID, and when the first identifier is an intent ID, the first identifier may be included in the HBH or destination option of the first packet.
其中,针对情况A,该第一标识可以携带在第二网络设备向第一网络设备发送的报文的IP报文头中。针对情况B,该第一标识可以携带在第二网络设备向第一网络设备发送的报文的HBH或目的选项头中包括上述第一标识。Wherein, for the case A, the first identifier may be carried in the IP header of the packet sent by the second network device to the first network device. For case B, the first identifier may be carried in the HBH or destination option header of the packet sent by the second network device to the first network device and include the above-mentioned first identifier.
以上,关于IP报文头以及第二网络设备向第一网络设备发送的报文中包括第一标识的多种情况与图4所示的方法实施例中的S405以及相关内容类似,本申请在此不再赘述。S510:第一网络设备基于第一标识确定对应的路径指示信息。Above, the IP packet header and the various situations in which the first identifier is included in the packet sent by the second network device to the first network device are similar to S405 and related contents in the method embodiment shown in FIG. 4 . This will not be repeated here. S510: The first network device determines corresponding path indication information based on the first identifier.
情况A:Case A:
路径指示信息为网络切片标识。其中,网络切片标识可用于标识一个用于转发第一报文的网络切片,该网络切片标识可以仅仅是的第一网络设备对该切片的标识,也可以是该第一网络设备所处的第一网络中的多台设备对该切片的标识,网络切片标识可以为灵活切片标识或sliceID中的一项或两项。The path indication information is the network slice identifier. The network slice identifier may be used to identify a network slice for forwarding the first packet, and the network slice identifier may only be the identifier of the slice by the first network device, or may be the first network device where the first network device is located. The identifier of the slice of multiple devices in a network, the network slice identifier can be one or both of the flexible slice identifier or sliceID.
第一网络设备基于第一标识确定对应的路径指示信息,包括但不限于如下几种方式:The first network device determines the corresponding path indication information based on the first identifier, including but not limited to the following ways:
方式一、第一网络设备包括第一标识和路径指示信息的对应关系,则第一网络设备基于第一标识和路径指示信息的对应关系确定路径指示信息。Manner 1: The first network device includes a correspondence between the first identifier and the path indication information, and the first network device determines the path indication information based on the correspondence between the first identifier and the path indication information.
在一个示例中,该对应关系可如表5所示,第一网络设备可以通过IntentSID1确定其对应的路径指示信息为129。In an example, the corresponding relationship may be as shown in Table 5, and the first network device may determine that its corresponding path indication information is 129 through IntentSID1.
表5table 5
方式二、第一网络设备基于第一标识确定与其对应的第三标识,并基于第三标识和路径指示信息的对应关系确定路径指示信息。Manner 2: The first network device determines a third identifier corresponding to the first identifier based on the first identifier, and determines the path indication information based on the correspondence between the third identifier and the path indication information.
则第一网络设备可以基于第三标识和上述对应关系,确定该路径指示信息。Then, the first network device may determine the path indication information based on the third identifier and the above-mentioned corresponding relationship.
在这个方式中,第一网络设备还基于第一标识确定与其对应的第三标识。在一个示例中,第一网络设备还保存有第一标识与第三标识的对应关系,如下表6所示。In this manner, the first network device also determines a third identifier corresponding to the first identifier based on the first identifier. In an example, the first network device also stores a correspondence between the first identifier and the third identifier, as shown in Table 6 below.
表6Table 6
则第一网络设备可以基于第一标识获得第三标识之后,再基于如上方式一所示中提供的方式确定与其对应的路径指示信息。本申请在此不再赘述。Then, after the first network device obtains the third identifier based on the first identifier, it can then determine the path indication information corresponding to it based on the manner provided in the first manner above. This application will not repeat them here.
情况B:Case B:
该路径指示信息为段标识列表。即,第一网络设备可以基于意图ID与段标识列表,或者意图ID与SR Policy的对应关系,确定与其对应的段标识列表。The path indication information is a list of segment identifiers. That is, the first network device may determine the corresponding segment identifier list based on the intent ID and the segment identifier list, or the corresponding relationship between the intent ID and the SR Policy.
S515:第一网络设备更新第一报文,得到第二报文。S515: The first network device updates the first packet to obtain the second packet.
情况A:第一网络设备更新第一报文得到第二报文的方式与图4所示的方法实施例中的S415中的路径指示信息为网络切片标识的方式类似,本申请在此不再赘述。Case A: The manner in which the first network device updates the first packet to obtain the second packet is similar to the manner in which the path indication information in S415 is the network slice identifier in the method embodiment shown in FIG. Repeat.
情况B:第一网络设备更新第一报文得到第二报文的方式与图4所示的方法实施例中的S415中的路径指示信息为段标识列表的方式类似,本申请在此不再赘述。Situation B: The manner in which the first network device updates the first packet to obtain the second packet is similar to the manner in which the path indication information in S415 is a segment identifier list in the method embodiment shown in FIG. Repeat.
S520:发送第二报文。S520: Send the second packet.
第一网络设备在确定上述对应的路径指示信息后,即可基于路径指示信息发送第二报文。如表1所示,当第一网络设备确定对应的路径指示信息为灵活算法标识129后,即可根据灵活算法标识129发送该第二报文,在该过程中,第一网络设备还可以结合第二报文的目的地址以及该灵活算法标识确定发送该第二报文的出口等。After determining the corresponding path indication information, the first network device may send the second packet based on the path indication information. As shown in Table 1, after the first network device determines that the corresponding path indication information is the
如图6所示,提供了一个本申请提供的一种标识发送方法流程示意图,本方法流程应用于网络中的控制设备,包括如下步骤:As shown in FIG. 6 , a schematic flowchart of an identification sending method provided by the present application is provided. The method flow is applied to a control device in a network, and includes the following steps:
S605:控制设备获得第一标识。S605: The control device obtains the first identifier.
控制设备可以为网络中的控制器、管理设备、编排器或者某台路由器、交换机等。该第一标识与业务要求对应。该第一标识即为如上图4、或图5中所示的方法实施例中的第一标识,该第一标识可以为意图段标识或网络切片段标识。The control device may be a controller, a management device, an orchestrator, or a certain router, switch, etc. in the network. The first identifier corresponds to the service requirement. The first identifier is the first identifier in the method embodiment shown in FIG. 4 or FIG. 5 above, and the first identifier may be an intent segment identifier or a network segment identifier.
控制设备获得第一标识的方式包括但不限于如下方式:The manner in which the control device obtains the first identifier includes but is not limited to the following manners:
方式一、控制设备生成第一标识。如,控制设备基于网络业务的规划等,生成意图段标识。Manner 1: The control device generates the first identifier. For example, the control device generates an intent segment identifier based on network service planning and the like.
方式二、控制设备接收网络设备发送的第一标识。控制设备可以接收网络设备发送的携带第一标识的报文,该报文可以为链路状态协议报文或路径计算单元通信协议报文,从 而从报文中获得第一标识。Manner 2: The control device receives the first identifier sent by the network device. The control device may receive a message carrying the first identifier sent by the network device, where the message may be a link state protocol message or a path computing unit communication protocol message, so as to obtain the first identifier from the message.
S610:控制设备确定目标业务对应的第一段标识列表,该第一段标识列表包括上述第一标识。S610: The control device determines a first segment identifier list corresponding to the target service, where the first segment identifier list includes the above-mentioned first identifier.
控制设备可以基于网络规划,或者也其他业务系统对接,从而确定目标业务对应的段标识列表。该第一段标识列表中包括上述第一标识。The control device may determine the segment identifier list corresponding to the target service based on network planning, or may also be connected with other service systems. The first segment identifier list includes the above-mentioned first identifier.
可选的,该第一段标识列表中还包括其他段标识,如网络切片段标识、意图段标识、VPN SID等等。Optionally, the first segment identifier list also includes other segment identifiers, such as network segment identifiers, intent segment identifiers, VPN SIDs, and the like.
控制设备确定的第一段标识列表,可以是指示转发目标业务报文的端到端转发路径的段标识列表,如应用于图3所示的场景中,可以是指示从城域网1到骨干网到城域网2的端到端的转发路径的段标识列表,也可以是,进指示某一段路径的段标识列表,如,仅指示了骨干网的转发路径的段标识列表。在一个示例中,上述转发路径经过第一网络包括的第一网络设备,如可以发送给ACC1或者PE1等设备。该第一标识可用于使第一网络设备基于第一标识确定对应的路径指示信息,这里的路径指示信息包括:网络切片标识和/或第二段标识列表。The first segment identifier list determined by the control device may be a segment identifier list indicating the end-to-end forwarding path of the forwarding target service message. As applied to the scenario shown in The segment identifier list of the end-to-end forwarding path from the network to the
S615:控制设备发送第一段标识列表。S615: The control device sends the first segment of the identification list.
控制设备在确定目标业务对应的第一段标识列表后,可以发送该段标识列表给网络中的一台或多台设备。应用于图3所示的网络场景中,可以将该第一段标识列表发送给上述转发路径的头节点,如可以发送给ACC1或者PE1等设备。After determining the first segment identifier list corresponding to the target service, the control device may send the segment identifier list to one or more devices in the network. Applied to the network scenario shown in FIG. 3 , the first segment identifier list may be sent to the head node of the forwarding path, for example, may be sent to devices such as ACC1 or PE1.
控制设备可以通过链路状态协议报文或路径计算单元通信协议报文中发送上述第一段标识列表。The control device may send the above-mentioned first segment identification list through a link state protocol message or a path calculation unit communication protocol message.
以上,简要介绍了本申请提供的技术方案,以下再将上述图4、图5、或图6所示的方法实施例应用于图3所示的网络场景中,详细介绍本申请提供的技术方案的应用。The technical solutions provided by the present application have been briefly introduced above, and the method embodiments shown in FIG. 4 , FIG. 5 , or FIG. 6 will be applied to the network scenario shown in FIG. 3 , and the technical solutions provided by the present application will be described in detail below. Applications.
示例一,第一标识为意图标识,第一网络设备可为如图3中所示的网络设备PE1。PE1可以接收从MC1发送过来的报文,在该报文中携带有意图标识。该意图标识可以为ACC1在接收到报文后更新到报文中的。在一个示例中,该报文的HBH中携带有意图标识。Example 1, the first identifier is an intent identifier, and the first network device may be the network device PE1 as shown in FIG. 3 . PE1 can receive a message sent from MC1, and the message carries an intent identifier. The intent identifier may be updated by ACC1 into the message after receiving the message. In an example, the HBH of the packet carries the intent identifier.
则,PE1接收到该报文后,根据该意图标识确定对应的标识网络切片的sliceID,并基于该sliceID转发该报文。可选的,PE1还可以更新该报文,剥离该报文已有的HBH头,并为该报文封装新的HBH头,新的HBH中包括该sliceID,则在支持网络切片的子网内的其他设备,在接收到该报文后,即可根据此SliceID在对应的网络切片上转发该报文。如,在不同Flex-Algo规划相同Locator地址的场景下,可以在IPv6扩展头HBH中携带标识Flex-Algo网络切片的Flex-Algo ID,在支持网络切片的子网内,根据此Flex-Algo ID指导报文在对应的网络切片上转发。Then, after receiving the packet, PE1 determines the corresponding sliceID identifying the network slice according to the intent identifier, and forwards the packet based on the sliceID. Optionally, PE1 can also update the packet, strip the existing HBH header of the packet, and encapsulate a new HBH header for the packet. The new HBH includes the sliceID, which is in the subnet that supports network slicing. After receiving the packet, other devices in the device can forward the packet on the corresponding network slice according to the SliceID. For example, in the scenario where different Flex-Algos plan the same Locator address, the Flex-Algo ID that identifies the Flex-Algo network slice can be carried in the IPv6 extension header HBH. In the subnet that supports network slicing, according to the Flex-Algo ID Instructs packets to be forwarded on the corresponding network slice.
示例二,定义一种AlgoSID。该AlgoSID的定义可如下表7所示。Example 2, define an AlgoSID. The definition of the AlgoSID can be shown in Table 7 below.
表7Table 7
AlgoSID的动作如下:The action of AlgoSID is as follows:
当网络设备收到SRv6报文后,当SRH中的当前活跃(active)SID为AlgoSID时,即当网络设备确定其可以处理该AlgoSID,则根据此AlgoSID与网络切片ID的对应关系,获得切片ID,并将切片ID封入报文HBH中,指导报文在指定切片中转发。本文中,将对应关系也称为映射关系,具体映射在PE1上,映射关系如下表8所示:After the network device receives the SRv6 packet, when the current active SID in the SRH is the AlgoSID, that is, when the network device determines that it can process the AlgoSID, the slice ID is obtained according to the correspondence between the AlgoSID and the network slice ID. , and encapsulate the slice ID into the packet HBH to instruct the packet to be forwarded in the specified slice. In this paper, the corresponding relationship is also called the mapping relationship, which is specifically mapped on PE1. The mapping relationship is shown in Table 8 below:
表8Table 8
1.控制器在编排路径时,可根据业务对网络的质量要求,将此Algo SID编排入E2E的隧道SID List中,ACC1将此Algo SID封装在报文的SRH中。1. When the controller arranges the path, it can arrange the Algo SID into the E2E tunnel SID List according to the quality requirements of the service on the network, and the ACC1 encapsulates the Algo SID in the SRH of the packet.
2.当报文进入该子网时,SRH中的当前处理SID为该Algo SID,则设备根据此Algo SID与网络切片标识的对应关系,将此Algo SID转换成“意图ID”或者“切片ID”,在报文HBH中封装意图ID或Flex-Algo ID。报文根据此意图ID或Flex-Algo ID查对应Flex-Algo的路由表转发,将目标业务对应的报文约束在此网络切片中转发。2. When the packet enters the subnet, the current processing SID in the SRH is the Algo SID, then the device converts the Algo SID into an "intent ID" or "slice ID" according to the correspondence between the Algo SID and the network slice identifier. ”, encapsulate the intent ID or Flex-Algo ID in the packet HBH. The packet is forwarded according to the intent ID or Flex-Algo ID in the routing table corresponding to the Flex-Algo, and the packets corresponding to the target service are restricted to be forwarded in this network slice.
在一个示例中,控制设备进行路径编排和处理的过程如下图7所示。图7中所示的步骤1-6分别如下所示:In an example, the process of routing and processing by the control device is shown in FIG. 7 below. Steps 1-6 shown in Figure 7 are as follows:
1.编排器根据业务要求,如SLA要求编排路径。1. The orchestrator arranges paths according to business requirements, such as SLA requirements.
2.编排器向控制器获取意图对应的SID的请求。该请求中可以携带Flex-Algo信息和骨干(Core)网络入出PE节点信息;2. The orchestrator requests the controller to obtain the SID corresponding to the intent. The request can carry Flex-Algo information and backbone (Core) network entry and exit PE node information;
3.控制器根据编排器的指令中的Flex-Algo信息和入出的节点信息,获取指定入PE节点上该Flex-Algo所对应的第一标识-AlgoSID,返回给编排器;3. The controller obtains the first identifier-AlgoSID corresponding to the Flex-Algo on the specified incoming PE node according to the Flex-Algo information and the incoming and outgoing node information in the instructions of the orchestrator, and returns it to the orchestrator;
4.编排器编排并通过控制器向网络设备ACC下发路径SID List,携带有AlgoSID;4. The arranger arranges and sends the path SID List to the network device ACC through the controller, which carries the AlgoSID;
5.网络设备中的隧道头节点封装SRH,带有AlgoSID,如ACC1封装SRH;5. The tunnel head node in the network device encapsulates SRH with AlgoSID, such as ACC1 encapsulates SRH;
6.支持Flex-Algo切片的Core网络PE1收到报文后,其当前SID为AlgoSID,则将AlgoSID转换成意图ID或者Flex-Algo ID封装在HBH中。6. After the Core network PE1 that supports Flex-Algo slicing receives the packet, and its current SID is AlgoSID, it converts the AlgoSID to the intent ID or Flex-Algo ID and encapsulates it in the HBH.
在如图8所示,应用在图3所示的网络中,Metro1和Metro2为支持SRv6 Policy的网络,骨干网为支持flex-aglo网络切片的网络。编排器根据目标业务的业务要求编排端到端转发隧道,如图8中所示:Metro1网络中的转发路径的(AGG1 SID,MC1 SID),分别为AGG1和MC1的段标识,代表该目标业务的报文需要经过Metro1的AGG1和MC1转发。表示Metro2网络中路径的(MC2 SID,AGG2 SID,ACC2 SID),分别为MC2、AGG2、ACC2的段标识。Metro1和Metro2中的隧道分别为SRv6 Policy隧道形式的SID List。在骨干网中,可以提前为不同Flex-Algo网络切片规划相同的Locator地址,如:Algo SID1-128 代表PE1节点的Flex-Algo 128,起指示分片的作用,还可以起到指定PE的路由的作用。编排器可以获得骨干网有切片能力的头节点和尾节点的信息,编排器可以为core网络中根据业务意图选择CORE网络的Flex-Algo,如AlgoSID1-128。其中,该编排器可以预先获得意图ID或者AlgoSID与网络切片标识的对应关系。在一个示例中,该映射关系如下表9所示:As shown in Figure 8, applied to the network shown in Figure 3, Metro1 and Metro2 are networks that support SRv6 Policy, and the backbone network is a network that supports flex-aglo network slicing. The scheduler arranges the end-to-end forwarding tunnel according to the service requirements of the target service, as shown in Figure 8: the (AGG1 SID, MC1 SID) of the forwarding path in the Metro1 network are the segment identifiers of AGG1 and MC1, respectively, representing the target service The packets need to be forwarded through AGG1 and MC1 of Metro1. Indicates the (MC2 SID, AGG2 SID, ACC2 SID) of the path in the Metro2 network, which are the segment identifiers of MC2, AGG2, and ACC2, respectively. The tunnels in Metro1 and Metro2 are respectively SID Lists in the form of SRv6 Policy tunnels. In the backbone network, the same Locator address can be planned for different Flex-Algo network slices in advance, for example: Algo SID1-128 represents the Flex-
表9Table 9
在编排器获得上述段标识列表后,可以将该段标识列表发送给ACC1,则如图8所示的报文的转发过程如下所示:After the orchestrator obtains the above segment identifier list, it can send the segment identifier list to ACC1, and the forwarding process of the message shown in Figure 8 is as follows:
1、Metro1的ACC1在接收到客户终端设备(customer-premises equipment,CPE)发送的目标业务对应的报文后,将获得的段标识列表(AGG1 SID、MC1 SID、AlgoSID1-128、MC2 SID、AGG2 SID),以及根据该报文的目的地址获得AGG2 VPN SID封装到该报文中,后转发该报文。1. After the ACC1 of Metro1 receives the message corresponding to the target service sent by the customer terminal equipment (customer-premises equipment, CPE), it will obtain a list of segment identifiers (AGG1 SID, MC1 SID, AlgoSID1-128, MC2 SID, AGG2 SID), and obtain the AGG2 VPN SID according to the destination address of the message, encapsulate it into the message, and then forward the message.
2、在Core网络的入接点PE1接收到该报文后,该报文的active SID为AlgoSID1-128,则PE1根据AlgoSID1-128确定对应的路径指示信息为切片ID:128,则PE1可以将切片ID 128封装到该报文的HBH中,选择128切片继续转发该报文。2. After the access point PE1 of the Core network receives the packet, the active SID of the packet is AlgoSID1-128, then PE1 determines the corresponding path indication information according to AlgoSID1-128 as slice ID: 128, then PE1 can slice the slice. The
3、Core网络中的其他设备如P1、P2等设备在接收到该报文后,将根据该报文中携带的切片ID128查对应Flex-Algo的路由表进行转发。3. After receiving the packet, other devices in the Core network such as P1 and P2 will check the routing table of the corresponding Flex-Algo according to the slice ID128 carried in the packet and forward it.
这里,core网络的PE节点设备上设置有Algo SID和切片ID的对应关系如下表10所示:Here, the corresponding relationship between Algo SID and slice ID is set on the PE node device of the core network, as shown in Table 10 below:
表10Table 10
其中,如图8中报文SID List中表示Metro1网络中路径的(AGG1 SID,MC1 SID)以及表示Metro2网络中路径的(MC2 SID,AGG2 SID,ACC2 SID)只用来表达不同网络中的路径,这些网络中的路径也可以用绑定段标识(bonding SID,BSID)来表达。即,头节点ACC1获得的也可以是包括了BSID的段标识列表,则传输该报文的网络设备可以在接收到该报文后,将BSID展开,在报文外层再封本地隧道的SRH。由于边缘的网络只接入本地的用户,因此其接入用户量和隧道量比向骨干网一样的汇聚网络要少很多,因此本技术方案的重点解决了骨干网络的隧道过多的问题。当然如果某个城域网络也支持Flex-Algo网络切片和HBH,也可以将以上技术方案应用在边缘的城域网络上,进一步降低边缘的城域网络的隧道数量。本发明不限于应用的网络和场景。同时,本技术方案不需要边缘网络大量设备升级支持HBH,新增的AlgoSID设备可以自动生成,不支持网络切片和HBH的边缘网络可以部署SRv6 Policy;支持切片和HBH携带切片ID或意图ID的骨干网升级部署Flex-Algo网络切片或与SliceID配合的网络切片;因此更适合于边缘网络无法升级支持网络切片,骨干网支持网络切片和HBH携带切片ID或意图ID的场景,而这类场景正是目前网络部署最可能遇到的问题。Among them, the (AGG1 SID, MC1 SID) representing the path in the Metro1 network in the message SID List in Figure 8 and the (MC2 SID, AGG2 SID, ACC2 SID) representing the path in the Metro2 network are only used to express the paths in different networks , and the paths in these networks can also be expressed by bonding segment identifiers (bonding SIDs, BSIDs). That is, the head node ACC1 may also obtain the segment identifier list including the BSID, and the network device transmitting the packet may expand the BSID after receiving the packet, and reseal the SRH of the local tunnel in the outer layer of the packet. . Since the edge network only accesses local users, the number of access users and tunnels is much less than that of the converged network like the backbone network. Therefore, the technical solution focuses on solving the problem of too many tunnels on the backbone network. Of course, if a certain metro network also supports Flex-Algo network slicing and HBH, the above technical solutions can also be applied to the edge metro network to further reduce the number of tunnels on the edge metro network. The present invention is not limited to the network and scenario of application. At the same time, this technical solution does not require a large number of edge network devices to be upgraded to support HBH, new AlgoSID devices can be automatically generated, and SRv6 Policy can be deployed on edge networks that do not support network slicing and HBH; the backbone that supports slicing and HBH carrying slice ID or intent ID Network upgrade deploys Flex-Algo network slicing or network slicing with SliceID; therefore, it is more suitable for scenarios where edge network cannot be upgraded to support network slicing, backbone network supports network slicing and HBH carries slice ID or intent ID, and this kind of scenario is exactly The most likely problems encountered in network deployment at present.
示例三、为整个子网内统一分配表征相同Flex-Algo切片的专有SID,本技术方案与示例二的核心区别为,示例二中的AlgoSID是为同一个网络中的每台设备分配的。而本示例中的AlgoSID是针对同一个切片,分配同样的AlgoSID,不区分网络设备。对支持网络切片的网络,不区分节点,针对每个切片分配不同的Algo SID,比如上图中的Algo SID-128代表Core网络中的切片Flex-Algo 128,此SID只起指示分片的作用,不区分节点。即,该AlgoSID可以是某一个网络中的至少两台设备的SID。Example 3: Uniformly allocate a dedicated SID representing the same Flex-Algo slice in the entire subnet. The core difference between this technical solution and Example 2 is that the AlgoSID in Example 2 is allocated for each device in the same network. However, the AlgoSID in this example is for the same slice, and the same AlgoSID is allocated, and the network devices are not distinguished. For networks that support network slicing, nodes are not distinguished, and different Algo SIDs are assigned to each slice. For example, Algo SID-128 in the above figure represents the slice Flex-
针对这种SID,新定义一种特殊类型的SID,如灵活切片任播段标识(AlgoAnycastSID),其可以是AlgoSID的一种特殊类型。其Function定义示例如下表11所示:For this kind of SID, a special type of SID is newly defined, such as a flexible slice anycast segment identifier (AlgoAnycastSID), which may be a special type of AlgoSID. An example of its Function definition is shown in Table 11 below:
表11Table 11
AlgoAnycastSID的动作如下:The action of AlgoAnycastSID is as follows:
当设备收到SRv6报文,且SRH中的当前active SID为AlgoAnycastSID时,则根据此AlgoAnycastSID与网络切片ID的映射关系,获得切片ID,并将切片ID封入报文HBH中,指导报文在指定切片中转发。该映射关系可如下表12所示:When the device receives the SRv6 packet and the current active SID in the SRH is AlgoAnycastSID, it obtains the slice ID according to the mapping relationship between the AlgoAnycastSID and the network slice ID, and encapsulates the slice ID in the packet HBH, instructing the packet to be specified in the specified Forward in slices. The mapping relationship can be shown in Table 12 below:
表12Table 12
而编排器与“示例二”类似,可以保存和管理如下对应关系如下表13所示:Similar to "Example 2", the orchestrator can save and manage the following correspondences as shown in Table 13 below:
表13Table 13
在本示例提供的技术方案中,可以将城域网汇聚路由发布到骨干网,骨干网汇聚的AlgoAnycastSID Locator发布到城域网。骨干网流量根据汇聚路由转发。因此编排器只需下发意图,无需知道骨干网的边界节点,大大降低编排器的要求。In the technical solution provided in this example, the MAN aggregated route can be advertised to the backbone network, and the AlgoAnycastSID Locator aggregated by the backbone network can be advertised to the MAN. Backbone network traffic is forwarded according to the aggregation route. Therefore, the orchestrator only needs to issue the intent and does not need to know the boundary nodes of the backbone network, which greatly reduces the requirements of the orchestrator.
在转发过程中,隧道头节点设备将此AlgoAnycastSID封装在E2E SRH中,但是,报文在离开城域网,如metro1后,只根据其DA,也即AlgoAnycastSID进行路由查表转发,并不关心从哪个节点进入骨干网。During the forwarding process, the tunnel head node device encapsulates the AlgoAnycastSID in the E2E SRH. However, after the packet leaves the metropolitan area network, such as metro1, it only performs routing lookup table forwarding according to its DA, that is, the AlgoAnycastSID, and does not care about the packet from the MAN. Which node enters the backbone network.
在流量进入骨干网后,首先收到流量的PE,如PE1或者PE2节点将此AlgoAnycastSID转换成“Flex-Algo ID”,封装在HBH中。骨干网中其他设备根据此HBH中的“意图ID或Flex-Algo ID”查对应Flex-Algo的路由表转发,也即将流量约束在此网络切片中转发了。After the traffic enters the backbone network, the PE that receives the traffic first, such as PE1 or PE2, converts the AlgoAnycastSID into "Flex-Algo ID" and encapsulates it in the HBH. Other devices in the backbone network check the routing table of the corresponding Flex-Algo according to the "intent ID or Flex-Algo ID" in the HBH, which means that the traffic is constrained to be forwarded in this network slice.
与示例二相比,此方案特点和优势:Compared with Example 2, the features and advantages of this solution:
1.支持网络切片的网络,如骨干网所有节点或所有边缘节点,如PE设备,针对每个分片分配一个相同的AlgoSID,相当于所有节点在同一个Flex-Algo切片内共用一个SID,可以节约Locator地址,实现更简单,该AlgoAnycastSID需要整个子网一致。1. Networks that support network slicing, such as all nodes in the backbone network or all edge nodes, such as PE equipment, assign an identical AlgoSID to each shard, which is equivalent to all nodes sharing a SID in the same Flex-Algo slice, which can The Locator address is saved and the implementation is simpler. The AlgoAnycastSID needs to be consistent across the entire subnet.
2.编排器无需编排到切片网络的边界点,只需直接编排对切片网络的业务要求,极 大简化了编排器的处理。2. The orchestrator does not need to orchestrate the boundary points of the slicing network, but only needs to directly orchestrate the business requirements of the slicing network, which greatly simplifies the processing of the orchestrator.
示例四、通过全网统一的意图SID和可以指导报文转发方向的SID,如VPN SID来指导业务流量选择某个网络切片或者某个隧道或者直接进行本地IP(Native IP)转发,而不需要建立大量E2E的隧道,更好的解决了海量隧道的问题。本示例可简要包括如下步骤:Example 4. Through the unified intent SID of the whole network and the SID that can guide the direction of packet forwarding, such as VPN SID, the service traffic can be guided to select a network slice or a tunnel or directly forward the local IP (Native IP) without the need for Establishing a large number of E2E tunnels can better solve the problem of massive tunnels. This example can briefly include the following steps:
1.建立基于尾节点+掩码的隧道组(即聚合隧道),如基于骨干网建立基于尾节点和掩码的隧道组,将基于远端网络每个尾节点的隧道在本子网中合并归类成基于某个子网的一条隧道,降低去往远端网络的隧道数量;1. Establish a tunnel group based on tail node + mask (that is, aggregate tunnel), such as establishing a tunnel group based on tail node and mask based on the backbone network, and combine the tunnels based on each tail node of the remote network in this subnet. Classify into a tunnel based on a certain subnet, reducing the number of tunnels to the remote network;
2.各子网的Locator路由汇聚发布到其他网络,报文进入每个子网时根据其VPNSID的默认路由或汇聚路由找到对应的Policy group;2. The Locator routes of each subnet are aggregated and advertised to other networks. When the packet enters each subnet, the corresponding Policy group is found according to the default route or aggregation route of its VPNSID;
3.编排器为目标业务指定对应的意图SID,并发送给隧道的头节点,当进入子网后,根据VPNSID找到对应的Policy group后,再根据意图SID所映射的意图ID来选择Policy Group中的具体隧道或切片。3. The orchestrator specifies the corresponding intent SID for the target service and sends it to the head node of the tunnel. After entering the subnet, it finds the corresponding Policy group according to the VPNSID, and then selects the Policy Group according to the intent ID mapped by the intent SID. specific tunnels or slices.
在这个示例中,对意图SID的定义示例如下表14所示:In this example, an example of the definition of the intent SID is shown in Table 14 below:
表14Table 14
IntentSID的动作如下:The action of the IntentSID is as follows:
当设备收到SRv6报文,SRH中的当前active SID为IntentSID,则根据此IntentSID与网络资源,如:网络转发通道资源,如网络切片、Policy隧道、BE转发等的映射关系,获得符合业务SLA的转发通道的路径指示信息,根据该路径指示信息指导报文在对应的网络通道中转发。When the device receives an SRv6 packet and the current active SID in the SRH is the IntentSID, it obtains the service SLA according to the mapping relationship between the IntentSID and network resources, such as network forwarding channel resources, such as network slices, policy tunnels, and BE forwarding. The path indication information of the forwarding channel, according to the path indication information, instruct the packet to be forwarded in the corresponding network channel.
IntentSID对应的动作的具体的处理方式包括但不限于如下几种:The specific processing methods of the actions corresponding to the IntentSID include but are not limited to the following:
1)当IntentSID映射的通道资源为SRv6 Policy,则将此IntentSID对应的SRv6 Policy的SRH封装在报文中指导转发。1) When the channel resource mapped by the IntentSID is an SRv6 Policy, the SRH of the SRv6 Policy corresponding to the IntentSID is encapsulated in the message to guide forwarding.
2)当IntentSID映射的通道资源为网络切片,如Flex-Algo或者SliceID切片,则根据IntentSID与切片ID的映射关系,获得切片ID,并将切片ID封入报文HBH中,指导报文在指定切片中转发。2) When the channel resource mapped by the IntentSID is a network slice, such as a Flex-Algo or a SliceID slice, the slice ID is obtained according to the mapping relationship between the IntentSID and the slice ID, and the slice ID is encapsulated in the packet HBH to guide the packet in the specified slice. forwarded in.
3)当IntentSID映射的通道资源为Native IP转发,则直接根据VPNSID或下一跳SID进行BE转发。3) When the channel resource mapped by IntentSID is Native IP forwarding, BE forwarding is performed directly according to VPNSID or next-hop SID.
下面,结合图9介绍本示例,如图9所示,以端到端的隧道,目标业务的报文如从CPE1到CPE2,穿越了骨干网和多个城域网进行转发。This example is described below with reference to Figure 9. As shown in Figure 9, with an end-to-end tunnel, the packets of the target service, such as from CPE1 to CPE2, are forwarded through the backbone network and multiple metropolitan area networks.
1)在图3所示的网络中,各网络可以创建自己网内的Policy Group,该Policy Group可以用掩码和目的地址匹配,Policy Group内可以包含SRv6 Policy、Flex-Algo切片、SliceID切片、SRv6 BE等。1) In the network shown in Figure 3, each network can create a Policy Group within its own network. The Policy Group can use a mask to match the destination address. The Policy Group can contain SRv6 Policy, Flex-Algo slice, SliceID slice, SRv6 BE et al.
Policy Group可以包含的隧道、切片类型模型如下示例:Examples of tunnel and slice type models that a Policy Group can contain are as follows:
比如在骨干网,通过Metro2聚合路由可匹配到Policy Group10:For example, in the backbone network, it can be matched to Policy Group10 through the Metro2 aggregation route:
Policy Group10内,包含的转发模型如下:In Policy Group10, the forwarding models included are as follows:
意图ID1->policy 1(低时延+大带宽)Intent ID1->policy 1 (low latency + large bandwidth)
意图ID2->policy 2(低时延+高可靠)+SliceID 1Intent ID2->policy 2 (low latency + high reliability)+
意图ID3->policy 3(低时延+低抖动)Intent ID3->policy 3 (low latency + low jitter)
意图ID4->FlexAlgo 128(低时延)Intent ID4->FlexAlgo 128 (low latency)
意图ID5->FlexAlgo 128(低时延)+SliceID 1Intent ID5->FlexAlgo 128 (low latency)+
意图ID6->FlexAlgo 128(低时延)+SliceID 2Intent ID6->FlexAlgo 128 (low latency)+
意图ID7->policy 5(大带宽+…)Intent ID7->policy 5 (large bandwidth+…)
意图ID8->SliceID 1Intent ID8->
意图ID9->SliceID 2Intent ID9->
......
意图ID N->native ip(BE)Intent ID N->native ip(BE)
2)各子网的Locator汇聚后发布的其他子网中。MC2将Metro2的所有Locator聚合后发布给PE3。骨干网PE1和PE2将骨干网的Locator汇聚后发布到Metro1网络中,并将Metro2的汇聚Locator发布到Metro1中。反之,从Metro1向Metro2的方向发布方式一样。2) In other subnets published after the Locators of each subnet are aggregated. MC2 aggregates all Locators of Metro2 and releases it to PE3. The backbone networks PE1 and PE2 aggregate the Locators of the backbone network and publish them to the Metro1 network, and publish the aggregated Locators of Metro2 to Metro1. Conversely, the way to release from Metro1 to Metro2 is the same.
3)Metro2:MC2建立到ACC2 Locator的域内SRv6 Policy隧道以及Policy Group。并以endpoint/mask精确匹配,将Locator路由和Group关联,匹配该路由的流量做流分类。3) Metro2: MC2 establishes the SRv6 Policy tunnel and Policy Group within the domain to the ACC2 Locator. And match the endpoint/mask exactly, associate the Locator route with the Group, and classify the traffic matching the route.
4)骨干网:PE1以Metro2的聚合路由为端点(Endpoint)建立SRv6 Policy/SRv6 Policy Group,并以endpoint/掩码(mask)精确匹配,将Locator路由和Group关联,匹配该路由的流量做流分类。4) Backbone network: PE1 uses the aggregated route of Metro2 as the endpoint (Endpoint) to establish an SRv6 Policy/SRv6 Policy Group, and uses the endpoint/mask (mask) to accurately match, associate the Locator route with the Group, and match the traffic of the route to flow Classification.
5)Metro1:ACC1以默认路由为Endpoint建立SRv6 Policy/SRv6 Policy Group,并以endpoint/mask精确匹配,将Locator路由和Group关联,匹配该路由的流量做流分类。5) Metro1: ACC1 establishes an SRv6 Policy/SRv6 Policy Group with the default route as the Endpoint, and matches exactly with the endpoint/mask, associates the Locator route with the Group, and classifies the traffic matching the route.
如上所述,则不同的子网之间形成的聚合路由和聚合隧道的映射关系示例如图10所示。As described above, an example of the mapping relationship between the aggregated routes and aggregated tunnels formed between different subnets is shown in FIG. 10 .
Metro 1上的路由:Routing on Metro 1:
Metro 2聚合路由->Policy Group 1,其中,Metro2的聚合路由前缀可如:prefix1。
Metro 3聚合路由->Policy Group 2,其中,Metro2的聚合路由前缀可如:prefix2。
Metro 4聚合路由->Policy Group 3,其中,Metro2的聚合路由前缀可如:prefix3。
用VPNSID查路由流分类。Use VPNSID to check routing traffic classification.
Core上的路由:Routing on Core:
Metro 1聚合路由->Policy Group 1,其中,Metro1的聚合路由前缀可如:prefix4。
Metro 2聚合路由->Policy Group 2,其中,Metro2的聚合路由前缀可如:prefix5。
Metro 3聚合路由->Policy Group 3,其中,Metro2的聚合路由前缀可如:prefix6。
Metro 4聚合路由->Policy Group 4,其中,Metro2的聚合路由前缀可如:prefix7。
用VPNSID查路由流分类Use VPNSID to check routing traffic classification
2.意图SID规划2. Intent SID Planning
全网规划统一的意图SID,此SID不用来寻址,只携带业务意图。该意图SID的高位比特位可用一个特殊值标识此SID是携带意图ID的特殊SID。一个意图ID可以同时表述城域网和骨干网的转发要求含义;如果城域网的意图ID类型更丰富,则骨干网需要设置“意图ID:转发隧道或切片”的比例关系为”N:1”的映射关系。因此在规划全网意图SID时,可以按层次化可汇聚来规划,以便减少这类“N:1”映射关系的配置。A unified intent SID is planned for the entire network. This SID is not used for addressing and only carries service intent. The high-order bits of the intent SID can use a special value to identify the SID as a special SID that carries the intent ID. An intent ID can express the meaning of the forwarding requirements of both the metropolitan area network and the backbone network; if the metropolitan area network has more types of intent IDs, the backbone network needs to set the ratio of "intent ID: forwarding tunnel or slice" to "N:1" ” mapping relationship. Therefore, when planning the intent SID of the whole network, it can be planned according to the hierarchical aggregation, so as to reduce the configuration of such "N:1" mapping relationship.
下面,将结合图9所示的转发面报文转发流程来详细介绍本示例提供的技术方案,包括如下步骤:Below, the technical solution provided by this example will be described in detail in conjunction with the packet forwarding process on the forwarding plane shown in FIG. 9 , including the following steps:
1.Metro1网络中的ACC1,在接收到CPE1发送的目标业务报文后,该报文的DA为CPE2的地址,则ACC1根据该DA查私网路由表获取该报文对应的VPNSID为ACC2 VPN SID,根据此SID查路由表匹配默认路由,或者聚合路由,该路由关联好了SRv6 Policy Group。ACC1根据VPNSID确定Policy Group后,ACC1根据配置要求获取SRH中的栈顶SID,如图中所示的意图SID,再根据意图SID映射到对应的意图ID,并由意图ID确定引流到的对应SRv6 Policy或者网络切片。若该意图ID映射的是Policy隧道,则ACC1将Policy隧道的SRH封装在报文外层;若映射的是网络切片,则将切片ID封装在IPv6 HBH中,用以指示报文在指定切片内转发。如映射的是Native IP转发,则只根据VPNSID查路由表走SRv6 BE转发。1. ACC1 in the Metro1 network, after receiving the target service message sent by CPE1, the DA of the message is the address of CPE2, then ACC1 checks the private network routing table according to the DA to obtain the VPNSID corresponding to the message as ACC2 VPN SID, according to this SID, look up the routing table to match the default route, or aggregate the route, the route is associated with the SRv6 Policy Group. After ACC1 determines the Policy Group according to the VPNSID, ACC1 obtains the stack top SID in the SRH according to the configuration requirements, such as the intent SID shown in the figure, and then maps it to the corresponding intent ID according to the intent SID, and determines the corresponding SRv6 to which the traffic is to be drained by the intent ID. Policy or network slice. If the intent ID is mapped to a Policy tunnel, ACC1 encapsulates the SRH of the Policy tunnel in the outer layer of the packet; if the intent ID is mapped to a network slice, the slice ID is encapsulated in an IPv6 HBH to indicate that the packet is in the specified slice Forward. If the mapping is Native IP forwarding, only check the routing table according to the VPNSID and go to SRv6 BE forwarding.
在本示例中,ACC1在获得对应的段标识列表(意图SID,ACC2 VPN SID)后,根据该VPN SID和意图SID,确定的路径指示信息为policy隧道,即段标识列表(AGG1 SID,MC1 SID),则将其更新到报文中,使得该报文在Metro1中按照此段标识列表指示的隧道进行转发。In this example, after ACC1 obtains the corresponding segment identifier list (intent SID, ACC2 VPN SID), according to the VPN SID and intent SID, the determined path indication information is the policy tunnel, that is, the segment identifier list (AGG1 SID, MC1 SID) ), update it into the packet, so that the packet is forwarded in Metro1 according to the tunnel indicated by this segment ID list.
2.当报文转发到Metro1网络中MC1上,使得SRv6 Policy终结或者网络切片转发完后,则MC1根据ACC2 VPNSID匹配默认路由,走BE转发给PE1。2. When the packet is forwarded to MC1 in the Metro1 network, so that the SRv6 Policy is terminated or the network slice is forwarded, MC1 matches the default route according to the ACC2 VPNSID, and forwards it to PE1 through BE.
3.Core网络中PE1收到报文后,根据VPNSID匹配Metro2聚合路由后引流到Metro2的聚合SRv6 Policy Group中。确定Policy Group后,PE1根据配置要求获取SRH中的栈顶SID,即意图SID,再根据意图SID映射到对应的意图ID,并由意图ID确定引流到的对应SRv6 Policy或者网络切片。如是Policy隧道,则Policy隧道的段标识列表(P1 SID,P2 SID,PE3 SID)封装在报文外层;如果是网络切片,则将切片ID封装在IPv6 HBH中,用以指示报文在指定切片内转发。如映射的是Native IP转发,则只根据ACC2 VPNSID查路由表走SRv6 BE转发。3. After PE1 on the Core network receives the packet, it matches the Metro2 aggregated route according to the VPNSID and diverts the traffic to the aggregated SRv6 Policy Group of Metro2. After the Policy Group is determined, PE1 obtains the top-of-stack SID in the SRH according to the configuration requirements, that is, the intent SID, and then maps the intent SID to the corresponding intent ID, and determines the corresponding SRv6 Policy or network slice to which the traffic is directed based on the intent ID. If it is a Policy tunnel, the segment ID list (P1 SID, P2 SID, PE3 SID) of the Policy tunnel is encapsulated in the outer layer of the packet; if it is a network slice, the slice ID is encapsulated in IPv6 HBH to indicate that the packet is in the specified Intra-slice forwarding. If the mapping is Native IP forwarding, only the routing table is checked according to the ACC2 VPNSID and forwarded by SRv6 BE.
4.报文根据上述信息转发到Core网络的PE3上SRv6 Policy终结或者网络切片转发完后,根据ACC2 VPN SID聚合路由,走BE转发给MC2。4. The packet is forwarded to PE3 of the Core network after the SRv6 Policy is terminated or the network slicing is forwarded according to the above information, and the route is aggregated according to the ACC2 VPN SID and forwarded to MC2 through BE.
5.Metro2网络中MC2根据ACC2 VPNSID匹配ACC2的Locator路由,引流到对应的SRv6 Policy Group。确定Policy Group后,ACC2根据配置要求获取SRH中的栈顶的意图SID,再根据意图SID映射到对应的意图ID,并由意图ID确定引流到的对应SRv6 Policy或者网络切片。如果该意图ID直接匹配一条Policy隧道,如(AGG2 SID,ACC2 SID),则报文根据此隧道转发。如果匹配网络切片,则将切片ID封装在IPv6 HBH中,用以指示报文在指定切片内转发。如映射的是Native IP转发,则只根据ACC2 VPNSID查路由表走SRv6 BE转发。5. In the Metro2 network, MC2 matches the ACC2 Locator route according to the ACC2 VPNSID, and diverts traffic to the corresponding SRv6 Policy Group. After the Policy Group is determined, ACC2 obtains the intent SID at the top of the stack in the SRH according to the configuration requirements, maps it to the corresponding intent ID according to the intent SID, and determines the corresponding SRv6 Policy or network slice to which the traffic is directed based on the intent ID. If the intent ID directly matches a Policy tunnel, such as (AGG2 SID, ACC2 SID), the packet is forwarded according to this tunnel. If it matches a network slice, the slice ID is encapsulated in IPv6 HBH to indicate that the packet is forwarded within the specified slice. If the mapping is Native IP forwarding, only the routing table is checked according to the ACC2 VPNSID and forwarded by SRv6 BE.
示例五、各子网采用独立的意图SID完成分段隧道转发,本示例为对上述示例四的扩 展。示例四采用全网统一的意图SID,将此意图SID压入目标业务的SRH栈顶,从端到端隧道的首节点携带到尾节点,通过意图SID映射的意图ID来指示业务转发的SLA要求,而使用VPNSID进行报文路由转发。即整体使用了具有路由能力的VPNSID和具有业务SLA要求的意图SID结合起来完成转发,使得网络无需创建E2E隧道。此技术方案要求网络整体规划意图SID。Example 5. Each subnet uses an independent intent SID to complete segment tunnel forwarding. This example is an extension of Example 4 above. Example 4: Adopt the unified intent SID of the whole network, push the intent SID into the top of the SRH stack of the target service, carry it from the head node to the end node of the end-to-end tunnel, and indicate the SLA requirement of service forwarding through the intent ID mapped to the intent SID , and use VPNSID for packet routing and forwarding. That is, the VPN SID with routing capability and the intent SID with service SLA requirements are used as a whole to complete forwarding, so that the network does not need to create an E2E tunnel. This technical solution requires the overall planning intent SID of the network.
本示例在上述方案基础上进一步扩展,为每个子网独立分配不同的意图SID,将意图SID以SID List的形式封装的报文SRH中指导报文转发。每个子网入口节点首先记录其接收到的目标报文的SID LIST中当前的意图SID作为指示业务SLA的SID,然后SID List向后偏移到下一个意图SID,以此意图SID来查路由匹配到对应的SRv6 Policy Group。This example is further extended on the basis of the above solution. Different intent SIDs are independently assigned to each subnet, and the intent SIDs are encapsulated in the form of SID List in the SRH to guide packet forwarding. Each subnet entry node first records the current intent SID in the SID list of the received target packet as the SID indicating the service SLA, and then the SID List is shifted backward to the next intent SID, and the intent SID is used to check the route matching to the corresponding SRv6 Policy Group.
其报文的转发流程参见图11所示:The packet forwarding process is shown in Figure 11:
ACC1在接收到CPE1发送的目标业务的报文后,该报文的DA为CPE2的地址,确定其对应的段标识列表为(MI意图SID,core意图SID,M2意图SID),且ACC1根据该DA查私网路由表获取该报文对应的VPNSID为ACC2 VPN SID,根据此SID查路由表匹配默认路由,或者聚合路由,该路由关联好了SRv6 Policy Group。则ACC1根据M1意图SID确定其对应的段标识列表为(AGG1 SID,MC1 SID),并将其封装到报文中。After ACC1 receives the message of the target service sent by CPE1, the DA of the message is the address of CPE2, and the corresponding segment identifier list is determined as (MI intent SID, core intent SID, M2 intent SID), and ACC1 according to this DA checks the private network routing table and obtains that the VPNSID corresponding to the packet is the ACC2 VPN SID. According to this SID, the routing table is checked to match the default route, or the aggregated route is associated with the SRv6 Policy Group. Then ACC1 determines its corresponding segment identifier list as (AGG1 SID, MC1 SID) according to the M1 intent SID, and encapsulates it into the message.
当Core网络PE1收到该报文时,该报文的当前Active SID为“Core意图SID”,则PE1记录“Core意图SID”,并在SID List中偏移到下一个SID为“M2意图SID”。根据“M2意图SID”匹配Metro2聚合路由后引流到Metro2的聚合SRv6 Policy Group中。确定Policy Group后,PE1根据配置要求,从记录的“Core意图SID”映射到对应的意图ID,并由意图ID确定引流到的对应SRv6 Policy或者网络切片。如是Policy隧道,则Policy隧道的段标识列表(P1 SID,P2 SID,PE3 SID)封装在报文外层;如果是网络切片,则将切片ID封装在IPv6 HBH中,用以指示报文在指定切片内转发。如映射的是Native IP转发,则只根据“M2意图SID”查路由表走SRv6 BE转发。When the Core network PE1 receives the packet, the current Active SID of the packet is "Core Intent SID", then PE1 records the "Core Intent SID" and shifts it to the next SID in the SID List as "M2 Intent SID" ". The Metro2 aggregated route is matched according to the "M2 intent SID" and then the traffic is diverted to the aggregated SRv6 Policy Group of Metro2. After the Policy Group is determined, PE1 maps the recorded "Core Intent SID" to the corresponding Intent ID according to the configuration requirements, and determines the corresponding SRv6 Policy or network slice to which the traffic is to be diverted from the Intent ID. If it is a Policy tunnel, the segment ID list (P1 SID, P2 SID, PE3 SID) of the Policy tunnel is encapsulated in the outer layer of the packet; if it is a network slice, the slice ID is encapsulated in IPv6 HBH to indicate that the packet is in the specified Intra-slice forwarding. If the mapping is Native IP forwarding, only check the routing table according to the "M2 intent SID" and go to SRv6 BE forwarding.
当Metor2网络MC2收到该报文时,该报文的当前Active SID为“M2意图SID”,则MC2记录“M2意图SID”,并在SID List中偏移到下一个SID为“ACC2 VPN SID”。根据“ACC2 VPN SID”匹配路由后引流到SRv6 Policy Group中。确定Policy Group后,MC2根据配置要求,从记录的“M2意图SID”映射到对应的意图ID,并由意图ID确定引流到的对应SRv6 Policy对应的段标识列表(AGG2 SID,ACC2 SID)封装在报文外层,进行转发。When the Metor2 network MC2 receives the message, the current Active SID of the message is "M2 intent SID", then MC2 records the "M2 intent SID" and shifts it to the next SID in the SID List as "ACC2 VPN SID" ". After matching the route according to "ACC2 VPN SID", the traffic is diverted to the SRv6 Policy Group. After the Policy Group is determined, MC2 maps the recorded "M2 Intent SID" to the corresponding Intent ID according to the configuration requirements, and determines the segment ID list (AGG2 SID, ACC2 SID) corresponding to the corresponding SRv6 Policy to be drained by the Intent ID. The outer layer of the packet is forwarded.
示例五与示例四的转发处理主要不同点在于依据意图SID形成的SID List转发,示例五中的意图SID还具有路由能力,每个子网的入接口节点需要根据SID List中的当前SID和下一个SID配合完成,收到报文时当前SID用于标识本子网中的业务SLA,偏移后的下一个SID用于路由,匹配对应的汇聚隧道Policy Group。VPNSID与普通的SRv6 Policy中的作用类型,在最后到达目的地后使用。The main difference between the forwarding processing in Example 5 and Example 4 is that the forwarding is based on the SID List formed by the intent SID. The intent SID in Example 5 also has routing capabilities. The ingress interface node of each subnet needs to be based on the current SID and the next The SID coordination is completed. When a packet is received, the current SID is used to identify the service SLA in this subnet, and the next SID after the offset is used for routing, matching the corresponding aggregation tunnel Policy Group. The VPNSID and the role type in the common SRv6 Policy are used after the destination is finally reached.
以上,介绍了本申请提供的方法实施例,以下介绍本申请提供的网络设备。The method embodiments provided by the present application are described above, and the network equipment provided by the present application is described below.
本申请提供了一种装置(例如转发器/网络设备),所述装置具有实现上述方法中的网络设备行为的功能。所述功能可以基于硬件实现,也可以基于硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。例如参见下图图12、图13和图14。The present application provides an apparatus (for example, a repeater/network device) having a function of implementing the behavior of the network device in the above method. The functions can be implemented based on hardware, and can also be implemented based on hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions. See, for example, Figures 12, 13 and 14 below.
如图12所示,图12是本申请实施例提供的一种网络设备1200的结构示意图,该网络设备1200可用于执行如上述图4或图5所示的方法中的第一网络设备执行的方法,即:该网络设备1200可用于执行上述图7-图11中任一示例方法中的网络设备,如PE1所执行的方法。如图12所示,网络设备1200包括:获得模块1201,处理模块1202,发送模块1203。该获得模块1201可用于执行上述方法实施例中的网络设备获得包括第一标识的第一报文的相关方法;处理模块1202,可用于执行上述方法中的根据第一标识确定第一报文对应的路径指示信息、获得第二报文等相关方法;发送模块1203,可用于执行上述方法中的发送第二报文的相关方法。As shown in FIG. 12 , FIG. 12 is a schematic structural diagram of a
需要说明的一点是,图12提供的网络设备在进行如上所述的报文发送的方法时,仅以上述各功能单元的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将网络设备的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能;或者用统一个功能单元完成上述多个单元的功能。应理解,网络设备1200与上述报文处理的方法实施例属于同一构思,在此仅针对该网络设备的各单元执行的步骤进行了举例说明,但并不代表其就不执行上述实施例中的其他步骤或可选方法,其具体实现过程详见上述方法示例部分的相关描述,这里不再赘述。It should be noted that, when the network device provided in FIG. 12 performs the above-mentioned packet sending method, only the division of the above-mentioned functional units is used for illustration. In practical applications, the above-mentioned functions can be allocated by Different functional units are completed, that is, the internal structure of the network device is divided into different functional units to complete all or part of the functions described above; or a unified functional unit is used to complete the functions of the above-mentioned multiple units. It should be understood that the
如图13所示,图13是本申请实施例提供的一种网络设备1300的结构示意图,该网络设备1300可用于执行如上述图4或图5所示的方法中的第二网络设备执行的方法,即:该网络设备1300可用于执行上述图7-图11中任一示例方法中的网络设备,如ACC1或MC1所执行的方法。如图13所示,网络设备1300包括:获得模块1301,处理模块1302,发送模块1303。该获得模块1301可用于执行上述方法中的网络设备获得第一标识的相关方法;处理模块1302,可用于执行上述方法中的生成包括第一标识的第一报文相关方法;发送模块1303,可用于执行上述方法中的发送第一报文的相关方法。As shown in FIG. 13 , FIG. 13 is a schematic structural diagram of a
需要说明的一点是,图13提供的网络设备在进行如上所述的报文发送的方法时,仅以上述各功能单元的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将网络设备的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能;或者用统一个功能单元完成上述多个单元的功能。应理解,网络设备1300与上述报文处理的方法实施例属于同一构思,在此仅针对该网络设备的各单元执行的步骤进行了举例说明,但并不代表其就不执行上述实施例中的其他步骤或可选方法,其具体实现过程详见上述方法示例部分的相关描述,这里不再赘述。It should be noted that, when the network device provided in FIG. 13 performs the above-mentioned packet sending method, only the division of the above-mentioned functional units is used as an example for illustration. In practical applications, the above-mentioned functions can be allocated by Different functional units are completed, that is, the internal structure of the network device is divided into different functional units to complete all or part of the functions described above; or a unified functional unit is used to complete the functions of the above-mentioned multiple units. It should be understood that the
如图14所示,图14是本申请实施例提供的一种控制设备1400的结构示意图,该控制设备1400可用于执行如上述图4、图5或图6所示的方法中的控制设备执行的方法,即:该控制设备1400可用于执行上述图7-图11中任一示例方法中的控制设备所执行的方法。如图14所示,网络设备1400包括:获得模块1401,处理模块1402,发送模块1403。该获得模块1401可用于执行上述方法中的控制设备获得第一标识的相关方法;处理模块1402,可用于执行上述方法中的确定目标业务对应的第一段标识列表的相关方法;发送模块1403,可用于执行上述方法中的发送包括第一标识的段标识列表的相关方法。As shown in FIG. 14 , FIG. 14 is a schematic structural diagram of a
需要说明的一点是,图14提供的控制设备在进行如上所述的标识发送的方法时,仅以上述各功能单元的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将控制设备的内部结构划分成不同的功能单元,以完成以上 描述的全部或者部分功能;或者用统一个功能单元完成上述多个单元的功能。应理解,控制设备1400与上述报文处理的方法、标识发送的方法属于同一构思,在此仅针对该控制设备的各单元执行的步骤进行了举例说明,但并不代表其就不执行上述实施例中的其他步骤或可选方法,其具体实现过程详见上述方法示例部分的相关描述,这里不再赘述。It should be noted that, when the control device provided in FIG. 14 performs the above-mentioned method for sending the identifier, only the division of the above-mentioned functional units is used as an example for illustration. The functional unit of the control device is completed, that is, the internal structure of the control device is divided into different functional units to complete all or part of the functions described above; or a unified functional unit is used to complete the functions of the above-mentioned multiple units. It should be understood that the
与本申请提供的方法实施例以及虚拟装置实施例相对应,本申请实施例还提供了一种网络装置,下面对该网络装置的硬件结构进行介绍。Corresponding to the method embodiments and the virtual device embodiments provided by the present application, the embodiments of the present application further provide a network device, and the hardware structure of the network device is introduced below.
图15是本申请实施例提供的一种网络装置1500的结构示意图。该装置1500可以执行图4、图5、图6的第一网络设备、第二网络设备或控制设备;或图7-图11所示的第一网络设备如PE1、第二网络设备如ACC1或MC1、或者控制设备执行的方法。参见图15所示的装置结构示意图,该装置1500包括至少一个处理器1501,通信总线1502以及至少一个通信接口1504,可选地,该装置1500还可以包括存储器1503。FIG. 15 is a schematic structural diagram of a
可选的,该网络装置1500可以由一般性的总线体系结构来实现,如图15所示的通信总线1502。Optionally, the
处理器1501可以是一个通用CPU、NP、微处理器、或者可以是一个或多个用于实现本申请方案的集成电路,例如,专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。The
通信总线1502用于在上述组件之间传送信息。通信总线1502可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。The
存储器1503可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,也可以是随机存取存储器(random access memory,RAM)或者可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only Memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。存储器1503可以是独立存在,并通过通信总线1502与处理器1501相连接。存储器1503也可以和处理器1501集成在一起。The
通信接口1504使用任何收发器一类的装置,用于与其它设备或通信网络通信。通信接口1504包括有线通信接口,还可以包括无线通信接口。其中,有线通信接口例如可以为以太网接口。以太网接口可以是光接口,电接口或其组合。无线通信接口可以为无线局域网(wireless local area networks,WLAN)接口,蜂窝网络通信接口或其组合等。该通信接口1504,还可以用于接收配置指令,使得处理器801可以根据配置指令的指示,获得第一标识、根据第一标识获得第一报文等。该网络装置还可以包括其他通信接口,用其他 通信接口接收配置指令。
在具体实现中,作为一种示例,网络装置1500可以包括多个处理器,如图15中所示的处理器1501和处理器1505。这些处理器中的每一个可以是一个单核处理器(single-CPU),也可以是一个多核处理器(multi-CPU)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(如计算机程序指令)的处理核。In a specific implementation, as an example, the
在一些实施例中,存储器1503用于存储执行本申请方案的程序代码1510,处理器1501可以执行存储器1503中存储的程序代码1510。也即是,网络设备1500可以通过处理器1501以及存储器1503中的程序代码1510,来实现方法实施例提供的方法。In some embodiments, the
图16是本申请实施例提供的一种网络装置1600的结构示意图。该装置1500可以执行图4、图5、图6的第一网络设备、第二网络设备或控制设备;或图7-图11所示的第一网络设备如PE1、第二网络设备如ACC1或MC1、或者控制设备执行的方法。参见图16所示的装置结构示意图。该装置1600包括主控板和一个或多个接口板,主控板与接口板通信连接。主控板也称为主处理单元(main processing unit,MPU)或路由处理卡(route processor card),主控板负责对装置1600中各个组件的控制和管理,包括路由计算、设备管理和维护功能。接口板也称为线卡(line processing unit,LPU)或线卡(line card),用于转发数据。在一些实施例中,装置1600也可以包括交换网板,交换网板与主控板、接口板通信连接,交换网板用于转发接口板之间的数据,交换网板也可以称为交换网板单元(switch fabric unit,SFU)。接口板包括中央处理器、存储器、转发芯片和物理接口卡(physical interface card,PIC)。中央处理器与存储器、网络处理器和物理接口卡分别通信连接。存储器用于存储转发表。转发芯片用于基于存储器中保存的转发表转发接收到的报文,如果报文的目的地址为装置1600的地址,则将该报文上送至中央处理器(central processing unit,CPU),如中央处理器1631处理;如果报文的目的地址不是装备1600的地址,则根据该目的地址从转发表中查找到该目的地址对应的下一跳和出接口,将该报文转发到该目的地址对应的出接口。转发芯片可以是网络处理器(network processor,NP)。PIC也称为子卡,可安装在接口板上,负责将光电信号转换为数据报文并对数据报文进行合法性检查后转发给转发芯片处理。在一些实施例中,中央处理器也可执行转发芯片的功能,比如基于通用CPU实现软件转发,从而接口板中不需要转发芯片。主控板、接口板、交换网板之间的通信连接可以通过总线来实现。在一些实施例中,转发芯片可以通过专用集成电路(application-specific integrated circuit,ASIC)或现场可编程门阵列(field programmable gate array,FPGA)实现。FIG. 16 is a schematic structural diagram of a
在逻辑上,装置1600包括控制面和转发面,控制面包括主控板和中央处理器,转发面包括执行转发的各个组件,比如存储器、PIC和NP。控制面执行路由器、生成转发表、处理信令和协议报文、配置与维护设备的状态等功能,控制面将生成的转发表下发给转发面,在转发面,NP基于控制面下发的转发表对装置1600的PIC收到的报文查表转发。控制面下发的转发表可以保存在存储器中。在有些实施例中,控制面和转发面可以完全分离,不在同一设备上。Logically, the
值得说明的是,主控板可能有一块或多块,有多块的时候可以包括主用主控板和备用主控板。接口板可能有一块或多块,网络设备的数据处理能力越强,提供的接口板越多。接口板上的物理接口卡也可以有一块或多块。交换网板可能没有,也可能有一块或多块, 有多块的时候可以共同实现负荷分担冗余备份。在集中式转发架构下,网络设备可以不需要交换网板,接口板承担整个系统的业务数据的处理功能。在分布式转发架构下,网络设备可以有至少一块交换网板,通过交换网板实现多块接口板之间的数据交换,提供大容量的数据交换和处理能力。所以,分布式架构的网络设备的数据接入和处理能力要大于集中式架构的设备。可选地,网络设备的形态也可以是只有一块板卡,即没有交换网板,接口板和主控板的功能集成在该一块板卡上,此时接口板上的中央处理器和主控板上的中央处理器在该一块板卡上可以合并为一个中央处理器,执行两者叠加后的功能,这种形态设备的数据交换和处理能力较低(例如,低端交换机或路由器等网络设备)。具体采用哪种架构,取决于具体的组网部署场景,此处不做任何限定。It is worth noting that there may be one or more main control boards, and when there are multiple main control boards, they may include the main main control board and the backup main control board. There may be one or more interface boards. The stronger the data processing capability of the network device, the more interface boards are provided. There can also be one or more physical interface cards on the interface board. There may be no switching fabric boards, or there may be one or more boards. When there are multiple boards, they can jointly implement load sharing and redundant backup. Under the centralized forwarding architecture, the network device does not need to switch the network board, and the interface board is responsible for the processing function of the service data of the entire system. Under the distributed forwarding architecture, a network device may have at least one switching network board, and the switching network board realizes data exchange between multiple interface boards, providing large-capacity data exchange and processing capabilities. Therefore, the data access and processing capabilities of network devices in a distributed architecture are greater than those in a centralized architecture. Optionally, the form of the network device can also be that there is only one board, that is, there is no switching network board, and the functions of the interface board and the main control board are integrated on this board. The central processing unit on the board can be combined into a central processing unit on this board to perform the functions of the two superimposed, the data exchange and processing capacity of this form of equipment is low (for example, low-end switches or routers and other networks. equipment). The specific architecture used depends on the specific networking deployment scenario, and there is no restriction here.
在一种可能的设计中,本申请提供了一种网络设备,该网络装置包括控制器和第一转发子设备。第一转发子设备包括:接口板,进一步,还可以包括交换网板。第一转发子设备用于执行上述图16中的接口板的功能,进一步,还可以执行上述图16中交换网板的功能。所述控制器包括接收器、处理器、发送器、随机存取存储器、只读存储器以及总线。其中,处理器通过总线分别耦接接收器、发送器、随机存取存储器以及只读存储器。其中,当需要运行控制器时,通过固化在只读存储器中的基本输入/输出系统或者嵌入式系统中的引导系统(bootloader)进行启动,引导控制器进入正常运行状态。在控制器进入正常运行状态后,在随机存取存储器中运行应用程序和操作系统,使得该处理器执行上述中主控板的功能。In a possible design, the present application provides a network device, where the network device includes a controller and a first forwarding sub-device. The first forwarding sub-device includes: an interface board, and further, may also include a switching network board. The first forwarding sub-device is configured to perform the function of the interface board in the above-mentioned FIG. 16 , and further, may also perform the function of the switching network board in the above-mentioned FIG. 16 . The controller includes a receiver, a processor, a transmitter, random access memory, read only memory, and a bus. Wherein, the processor is respectively coupled to the receiver, the transmitter, the random access memory and the read only memory through the bus. Wherein, when the controller needs to be operated, the basic input/output system solidified in the read-only memory or the bootloader in the embedded system is used to start the controller, and the controller is guided to enter the normal operation state. After the controller enters the normal operation state, the application program and the operating system are run in the random access memory, so that the processor executes the functions of the above-mentioned main control board.
结合本申请公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于用户设备中。当然,处理器和存储介质也可以作为分立组件存在于用户设备中。The steps of the methods or algorithms described in conjunction with the disclosure of the present application may be implemented in a hardware manner, or may be implemented in a manner in which a processor executes software instructions. The software instructions can be composed of corresponding software modules, and the software modules can be stored in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, removable hard disk, CD-ROM, or any other form of storage known in the art in the medium. An exemplary storage medium is coupled to the processor, such that the processor can read information from, and write information to, the storage medium. Of course, the storage medium can also be an integral part of the processor. The processor and storage medium may reside in an ASIC. Alternatively, the ASIC may be located in the user equipment. Of course, the processor and storage medium may also exist in the user equipment as discrete components.
本申请提供了一种计算机存储介质,用于储存为上述网络设备所用的程序、代码或指令,当处理器或硬件设备执行这些程序、代码或指令时可以完成上述网络设备的功能或步骤。The present application provides a computer storage medium for storing programs, codes or instructions used by the above-mentioned network device. When the processor or hardware device executes these programs, codes or instructions, the functions or steps of the above-mentioned network device can be completed.
本申请实施例还提供一种芯片系统,包括:处理器,所述处理器与存储器耦合,所述存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得该芯片系统实现上述任一方法示例中的方法。An embodiment of the present application further provides a chip system, including: a processor, where the processor is coupled with a memory, the memory is used to store a program or an instruction, and when the program or instruction is executed by the processor, the The system-on-a-chip implements the method in any of the above method examples.
可选地,该芯片系统中的处理器可以为一个或多个。该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。Optionally, the number of processors in the chip system may be one or more. The processor can be implemented by hardware or by software. When implemented in hardware, the processor may be a logic circuit, an integrated circuit, or the like. When implemented in software, the processor may be a general-purpose processor implemented by reading software codes stored in memory.
可选地,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请并不限定。示例性的,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请对存储器的类型,以及存储器与处理器的设置方式不作具体限定。Optionally, there may also be one or more memories in the chip system. The memory may be integrated with the processor, or may be provided separately from the processor, which is not limited in this application. Exemplarily, the memory can be a non-transitory processor, such as a read-only memory ROM, which can be integrated with the processor on the same chip, or can be provided on different chips. The setting method of the processor is not particularly limited.
示例性的,该芯片系统可以是现场可编程门阵列(field programmable gate array,FPGA),可以是专用集成芯片(application specific integrated circuit,ASIC),还可以是系统芯片(system on chip,SoC),还可以是中央处理器(central processor unit,CPU),还可以是网络处理器(network processor,NP),还可以是数字信号处理电路(digital signal processor,DSP),还可以是微控制器(micro controller unit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。Exemplarily, the system-on-chip may be a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), or a system on chip (SoC), It can also be a central processing unit (CPU), a network processor (NP), a digital signal processing circuit (DSP), or a microcontroller (microcontroller). controller unit, MCU), it can also be a programmable logic device (PLD) or other integrated chips.
应理解,上述方法示例中的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本申请实施例所公开的方法步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。It should be understood that each step in the above method examples may be implemented by hardware integrated logic circuits in a processor or instructions in the form of software. The method steps disclosed in conjunction with the embodiments of the present application may be directly embodied as being executed by a hardware processor, or executed by a combination of hardware and software modules in the processor.
本申请提供了一种网络系统,如图17所示,该网络系统包括第一网络设备和第二网络设备。该第一网络设备可以执行如图4、图5、图6的第一网络设备所执行的方法,或图7-图11所示的第一网络设备如PE1所执行的方法;该第一网络设备可以执行如图4、图5、图6的第二网络设备所执行的方法,或图7-图11所示的第二网络设备如ACC1或MC1所执行的方法。The present application provides a network system, as shown in FIG. 17 , the network system includes a first network device and a second network device. The first network device may execute the method executed by the first network device shown in FIG. 4 , FIG. 5 , and FIG. 6 , or the method executed by the first network device shown in FIG. 7 to FIG. 11 such as PE1; the first network device The device may perform the method performed by the second network device shown in FIG. 4 , FIG. 5 , and FIG. 6 , or the method performed by the second network device shown in FIG. 7 to FIG. 11 such as ACC1 or MC1 .
可选的,该网络系统还包括控制设备,该控制设备可以执行如图4、图5、图6的控制设备所执行的方法,或图7-图11所示的控制设备所执行的方法。Optionally, the network system further includes a control device, and the control device can perform the methods performed by the control devices shown in FIG. 4 , FIG. 5 , and FIG. 6 , or the methods performed by the control devices shown in FIGS. 7 to 11 .
本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请所描述的功能可以用硬件或者用硬件和软件的组合来实现。当使用硬件和软件的组合实现时,可以将这些软件存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。Those skilled in the art should appreciate that, in one or more of the above examples, the functions described in this application may be implemented in hardware or in a combination of hardware and software. When implemented using a combination of hardware and software, the software may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage medium can be any available medium that can be accessed by a general purpose or special purpose computer.
应理解,本发明实施例中提及的处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。It should be understood that the processor mentioned in the embodiments of the present invention may be a central processing unit (Central Processing Unit, CPU), and may also be other general-purpose processors, digital signal processors (Digital Signal Processors, DSP), application-specific integrated circuits ( Application Specific Integrated Circuit, ASIC), off-the-shelf Programmable Gate Array (Field Programmable Gate Array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
还应理解,本发明实施例中提及的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是ROM、PROM、可擦除EPROM、EEPROM或闪存。易失性存储器可以是随机存取存储器RAM,其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如SRAM、DRAM、SDRAM、DDR SDRAM、ESDRAM、SLDRAM和DR RAM等。It should also be understood that the memory mentioned in the embodiments of the present invention may be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. Among them, the non-volatile memory can be ROM, PROM, erasable EPROM, EEPROM or flash memory. Volatile memory may be random access memory RAM, which acts as an external cache. By way of example and not limitation, many forms of RAM are available, such as SRAM, DRAM, SDRAM, DDR SDRAM, ESDRAM, SLDRAM, and DR RAM, among others.
应注意,本文描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。It should be noted that the memory described herein is intended to include, but not be limited to, these and any other suitable types of memory.
在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,部分或全部步骤可以并行执行或先后执行,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。In various embodiments of the present application, the size of the sequence numbers of the above-mentioned processes does not imply the sequence of execution, some or all of the steps may be executed in parallel or sequentially, and the execution sequence of each process should be determined by its function and inherent logic , and should not constitute any limitation on the implementation process of the embodiments of the present application.
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以 硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。Those of ordinary skill in the art can realize that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Skilled artisans may implement the described functionality using different methods for each particular application, but such implementations should not be considered beyond the scope of this application.
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the above-described systems, devices and units may refer to the corresponding processes in the foregoing method embodiments, which will not be repeated here.
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided in this application, it should be understood that the disclosed system, apparatus and method may be implemented in other manners. For example, the apparatus embodiments described above are only illustrative. For example, the division of the units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored, or not implemented. On the other hand, the shown or discussed mutual coupling or direct coupling or communication connection may be through some interfaces, indirect coupling or communication connection of devices or units, and may be in electrical, mechanical or other forms.
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The units described as separate components may or may not be physically separated, and components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution in this embodiment.
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,网络设备或者终端设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。The functions, if implemented in the form of software functional units and sold or used as independent products, may be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can be embodied in the form of a software product in essence, or the part that contributes to the prior art or the part of the technical solution. The computer software product is stored in a storage medium, including Several instructions are used to cause a computer device (which may be a personal computer, a server, a network device or a terminal device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or optical disk and other media that can store program codes .
本发明各方法实施例之间相关部分可以相互参考;各装置实施例所提供的装置用于执行对应的方法实施例所提供的方法,故各装置实施例可以参考相关的方法实施例中的相关部分进行理解。The relevant parts of the various method embodiments of the present invention may refer to each other; the apparatus provided by each apparatus embodiment is used to execute the method provided by the corresponding method embodiment, so each apparatus embodiment may refer to the relevant method embodiments in the relevant method embodiments. partially understood.
本发明各装置实施例中给出的装置结构图仅示出了对应的装置的简化设计。在实际应用中,该装置可以包含任意数量的发射器,接收器,处理器,存储器等,以实现本发明各装置实施例中该装置所执行的功能或操作,而所有可以实现本申请的装置都在本申请的保护范围之内。The device structure diagrams given in each device embodiment of the present invention only show a simplified design of the corresponding device. In practical applications, the apparatus may include any number of transmitters, receivers, processors, memories, etc., to implement the functions or operations performed by the apparatus in each apparatus embodiment of the present invention, and all apparatuses that can implement the present application All are within the scope of protection of this application.
本发明各实施例中提供的消息/帧/指示信息、模块或单元等的名称仅为示例,可以使用其他名称,只要消息/帧/指示信息、模块或单元等的作用相同即可。The names of messages/frames/indication information, modules or units provided in the embodiments of the present invention are only examples, and other names may be used as long as the messages/frames/indication information, modules or units have the same functions.
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。The terms used in the embodiments of the present invention are only for the purpose of describing specific embodiments, and are not intended to limit the present invention. As used in the embodiments of the present invention and the appended claims, the singular forms "a," "the," and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. It will also be understood that the term "and/or" as used herein refers to and includes any and all possible combinations of one or more of the associated listed items.
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,不同的实施例可以进行组合,以上所述仅为本发明的具体实施方式 而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何组合、修改、等同替换、改进等,均应包含在本发明的保护范围之内。以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。The specific embodiments described above further describe the purpose, technical solutions and beneficial effects of the present invention in detail. It should be understood that different embodiments can be combined, and the above are only specific embodiments of the present invention. , is not used to limit the protection scope of the present invention, any combination, modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention should be included within the protection scope of the present invention. As mentioned above, the above embodiments are only used to illustrate the technical solutions of the present application, but not to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand: The technical solutions described in the embodiments are modified, or some technical features thereof are equivalently replaced; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the scope of the technical solutions of the embodiments of the present application.
Claims (35)
Priority Applications (12)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202180005994.4A CN115004656B (en) | 2020-11-27 | 2021-01-25 | A message sending method, device and system |
| EP21896055.7A EP4239973A4 (en) | 2020-11-27 | 2021-01-25 | Packet sending method, device, and system |
| CN202110184038.9A CN114567544A (en) | 2020-11-27 | 2021-02-10 | Route notification method, device and system |
| CN202110261406.5A CN114629836A (en) | 2020-11-27 | 2021-03-10 | Data transmission method and device based on segmented routing |
| EP21208939.5A EP4009608B1 (en) | 2020-11-27 | 2021-11-18 | Segment routing-based data transmission method and apparatus |
| US17/535,164 US20220174009A1 (en) | 2020-11-27 | 2021-11-24 | Segment Routing-Based Data Transmission Method and Apparatus |
| PCT/CN2021/133763 WO2022111666A1 (en) | 2020-11-27 | 2021-11-27 | Route advertisement method, apparatus, and system |
| JP2023532189A JP7609382B2 (en) | 2020-11-27 | 2021-11-27 | Route advertisement method, device, and system |
| KR1020237019967A KR20230104716A (en) | 2020-11-27 | 2021-11-27 | Root advertising method, apparatus, and system |
| EP21897166.1A EP4236245A4 (en) | 2020-11-27 | 2021-11-27 | ROUTE ADVERTISING METHOD, APPARATUS AND SYSTEM |
| US18/324,676 US12368669B2 (en) | 2020-11-27 | 2023-05-26 | Packet sending method, device, and system |
| US18/324,350 US20230327986A1 (en) | 2020-11-27 | 2023-05-26 | Route Advertisement Method, Apparatus, and System |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202011368375 | 2020-11-27 | ||
| CN202011368375.5 | 2020-11-27 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US18/324,676 Continuation US12368669B2 (en) | 2020-11-27 | 2023-05-26 | Packet sending method, device, and system |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2022110535A1 true WO2022110535A1 (en) | 2022-06-02 |
Family
ID=81755288
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2021/073628 Ceased WO2022110535A1 (en) | 2020-11-27 | 2021-01-25 | Packet sending method, device, and system |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2022110535A1 (en) |
Cited By (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20220247663A1 (en) * | 2021-02-04 | 2022-08-04 | Nokia Solutions And Networks Oy | Service differentiation based on constrained network topology slicing |
| CN115051944A (en) * | 2022-07-15 | 2022-09-13 | 中国电信股份有限公司 | End-to-end slice creating method, device, equipment and storage medium |
| CN115297493A (en) * | 2022-07-22 | 2022-11-04 | 武汉烽火技术服务有限公司 | SRv6 network slice configuration management method and system |
| CN116346584A (en) * | 2023-02-28 | 2023-06-27 | 新华三技术有限公司 | Communication method and device |
| WO2024002101A1 (en) * | 2022-06-30 | 2024-01-04 | 中国移动通信有限公司研究院 | Packet transmission method and apparatus, related device, and storage medium |
| WO2024066553A1 (en) * | 2022-09-29 | 2024-04-04 | 华为技术有限公司 | Message processing method, and information processing method and apparatus |
| WO2024140314A1 (en) * | 2022-12-26 | 2024-07-04 | 中兴通讯股份有限公司 | User traffic redirection method and apparatus based on service aware network, and traffic engineering implementation method and apparatus based on service aware network |
| CN118803010A (en) * | 2024-04-08 | 2024-10-18 | 中国移动通信有限公司研究院 | A communication method, network device, storage medium, and computer program product |
| WO2024255870A1 (en) * | 2023-06-16 | 2024-12-19 | 华为技术有限公司 | Information notification method and apparatus |
| WO2025024150A1 (en) * | 2023-07-21 | 2025-01-30 | Level 3 Communications, Llc | Enhanced systems and methods for persistent network paths |
| WO2025180331A1 (en) * | 2024-02-28 | 2025-09-04 | 中国移动通信有限公司研究院 | Information processing method and apparatus, device, storage medium and computer program product |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110266594A (en) * | 2019-06-28 | 2019-09-20 | Ut斯达康通讯有限公司 | The Segment routing retransmission method and device of across a network slice |
| WO2019235984A1 (en) * | 2018-06-08 | 2019-12-12 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and network nodes for managing actions occurring in a network slice of a communication network |
| CN111385206A (en) * | 2018-12-29 | 2020-07-07 | 北京华为数字技术有限公司 | Message forwarding method, network system, related equipment and computer storage medium |
| CN111541613A (en) * | 2020-04-27 | 2020-08-14 | 鹏城实验室 | Data processing method based on SRv6 and related equipment |
-
2021
- 2021-01-25 WO PCT/CN2021/073628 patent/WO2022110535A1/en not_active Ceased
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2019235984A1 (en) * | 2018-06-08 | 2019-12-12 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and network nodes for managing actions occurring in a network slice of a communication network |
| CN111385206A (en) * | 2018-12-29 | 2020-07-07 | 北京华为数字技术有限公司 | Message forwarding method, network system, related equipment and computer storage medium |
| CN110266594A (en) * | 2019-06-28 | 2019-09-20 | Ut斯达康通讯有限公司 | The Segment routing retransmission method and device of across a network slice |
| CN111541613A (en) * | 2020-04-27 | 2020-08-14 | 鹏城实验室 | Data processing method based on SRv6 and related equipment |
Non-Patent Citations (1)
| Title |
|---|
| SOFTBANK CORP., CISCO SYSTEMS.: "Discussion on Network Instance and IP domain/Slicing", 3GPP DRAFT; C4-191205-NWINSTANCE-DISCUSSION, 3RD GENERATION PARTNERSHIP PROJECT (3GPP), MOBILE COMPETENCE CENTRE ; 650, ROUTE DES LUCIOLES ; F-06921 SOPHIA-ANTIPOLIS CEDEX ; FRANCE, vol. CT WG4, no. Xi'an, P.R.China; 20190408 - 20190412, 29 March 2019 (2019-03-29), Mobile Competence Centre ; 650, route des Lucioles ; F-06921 Sophia-Antipolis Cedex ; France , XP051689758 * |
Cited By (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20220247663A1 (en) * | 2021-02-04 | 2022-08-04 | Nokia Solutions And Networks Oy | Service differentiation based on constrained network topology slicing |
| US12413500B2 (en) * | 2021-02-04 | 2025-09-09 | Nokia Solutions And Networks Oy | Service differentiation based on constrained network topology slicing |
| WO2024002101A1 (en) * | 2022-06-30 | 2024-01-04 | 中国移动通信有限公司研究院 | Packet transmission method and apparatus, related device, and storage medium |
| CN115051944A (en) * | 2022-07-15 | 2022-09-13 | 中国电信股份有限公司 | End-to-end slice creating method, device, equipment and storage medium |
| CN115297493B (en) * | 2022-07-22 | 2024-12-17 | 烽火通信科技股份有限公司 | SRv6 network slice configuration management method and system |
| CN115297493A (en) * | 2022-07-22 | 2022-11-04 | 武汉烽火技术服务有限公司 | SRv6 network slice configuration management method and system |
| WO2024066553A1 (en) * | 2022-09-29 | 2024-04-04 | 华为技术有限公司 | Message processing method, and information processing method and apparatus |
| WO2024140314A1 (en) * | 2022-12-26 | 2024-07-04 | 中兴通讯股份有限公司 | User traffic redirection method and apparatus based on service aware network, and traffic engineering implementation method and apparatus based on service aware network |
| CN116346584A (en) * | 2023-02-28 | 2023-06-27 | 新华三技术有限公司 | Communication method and device |
| WO2024255870A1 (en) * | 2023-06-16 | 2024-12-19 | 华为技术有限公司 | Information notification method and apparatus |
| WO2025024150A1 (en) * | 2023-07-21 | 2025-01-30 | Level 3 Communications, Llc | Enhanced systems and methods for persistent network paths |
| WO2025180331A1 (en) * | 2024-02-28 | 2025-09-04 | 中国移动通信有限公司研究院 | Information processing method and apparatus, device, storage medium and computer program product |
| CN118803010A (en) * | 2024-04-08 | 2024-10-18 | 中国移动通信有限公司研究院 | A communication method, network device, storage medium, and computer program product |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN115004656B (en) | A message sending method, device and system | |
| WO2022110535A1 (en) | Packet sending method, device, and system | |
| US10645060B2 (en) | Method, device and system for forwarding message | |
| US10708083B2 (en) | Traffic engineering service mapping | |
| WO2020134139A1 (en) | Service data forwarding method, network device, and network system | |
| JP2021530912A (en) | Network slice control method and device, computer readable storage medium | |
| WO2016066072A1 (en) | Method and device for realizing communication between nvo3 network and mpls network | |
| WO2021008497A1 (en) | Data transmission method, network node, and storage medium | |
| WO2022048418A1 (en) | Method, device and system for forwarding message | |
| WO2015192501A1 (en) | Address information publishing method and apparatus | |
| CN113132235B (en) | Data message processing method based on virtual circuit and construction method of forwarding table item | |
| WO2020212998A1 (en) | Network address allocation in a virtual layer 2 domain spanning across multiple container clusters | |
| WO2017124709A1 (en) | Method of establishing traffic engineering tunnel and device | |
| WO2023045871A1 (en) | Packet processing method, network device and system | |
| CN110417655B (en) | Method and device for forwarding data message | |
| WO2021082575A1 (en) | Packet forwarding method, apparatus, storage medium, and system | |
| WO2022166465A1 (en) | Message processing method and related apparatus | |
| WO2021077972A1 (en) | Packet forwarding method, device, and storage medium | |
| WO2023274083A1 (en) | Route publishing method and apparatus, packet forwarding method and apparatus, device, and storage medium | |
| WO2023082779A1 (en) | Packet forwarding method, electronic device, and storage medium | |
| WO2024012316A1 (en) | Packet processing method and device, network node and storage medium | |
| JP7528373B2 (en) | PACKET TRANSMISSION METHOD, CORRESPONDENCE RELATIONSHIP ACQUISITION METHOD, DEVICE, AND SYSTEM | |
| WO2023050981A1 (en) | Allocation method and apparatus for virtual private network service identifier, and message processing method and apparatus | |
| CN115473765A (en) | Message transmission method, device and system | |
| WO2023109398A1 (en) | Packet transmission method and apparatus |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| ENP | Entry into the national phase |
Ref document number: 2021896055 Country of ref document: EP Effective date: 20230530 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |