WO2021204129A1 - 分段路由头压缩方法及装置、业务处理方法及装置、计算机设备及计算机可读介质 - Google Patents
分段路由头压缩方法及装置、业务处理方法及装置、计算机设备及计算机可读介质 Download PDFInfo
- Publication number
- WO2021204129A1 WO2021204129A1 PCT/CN2021/085734 CN2021085734W WO2021204129A1 WO 2021204129 A1 WO2021204129 A1 WO 2021204129A1 CN 2021085734 W CN2021085734 W CN 2021085734W WO 2021204129 A1 WO2021204129 A1 WO 2021204129A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- segment identifier
- node
- sid
- compressed segment
- expanded
- Prior art date
Links
- 230000006835 compression Effects 0.000 title claims abstract description 65
- 238000007906 compression Methods 0.000 title claims abstract description 65
- 238000000034 method Methods 0.000 title claims abstract description 42
- 238000003672 processing method Methods 0.000 title claims abstract description 18
- 238000012545 processing Methods 0.000 claims abstract description 36
- 238000003860 storage Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 7
- 238000010295 mobile communication Methods 0.000 abstract 1
- 230000006870 function Effects 0.000 description 73
- 238000010586 diagram Methods 0.000 description 26
- 230000008569 process Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001568 sexual effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- 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/34—Source routing
-
- 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/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/04—Protocols for data compression, e.g. ROHC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/659—Internet protocol version 6 [IPv6] addresses
Definitions
- the present disclosure relates to the field of wireless communication technology.
- Segment Routing is a technology that implements source routing.
- RFC8402 defines SR mechanisms based on SR-MPLS (Multi-Protocol Label Switching) forwarding plane and SRv6 based on IPv6 (Internet Protocol Version 6, Internet Protocol Version 6) forwarding plane.
- IPv6 Internet Protocol Version 6, Internet Protocol Version 6
- SRv6 can be implemented directly based on the IPv6 extended routing header, without adding additional encapsulation, and realizes the unification of IP (Internet Protocol) forwarding and tunnel forwarding.
- SRv6 uses the 128-bit format segment ID (SID) with the same IPv6 address, and divides the segment ID into two parts, the locator and the function, a flexible network and Business mixed programming, so SRv6 has been widely recognized by the industry.
- SID segment ID
- One aspect of the embodiments of the present disclosure provides a segment routing header (Segment Routing Header, SRH) compression method, including: configuring a common compressed segment identifier (C-SID) for each node on a segment routing path, and assigning At least one node on the segment routing path is configured with an extended compressed segment identifier (EC-SID), the EC-SID of the at least one node includes at least a function field; the generation includes the C-SID of each node and the EC-SID of the at least one node In the segment list, the EC-SID of the at least one node is next to and after the C-SID of the at least one node; and the segment list is carried in the SRH of the service message.
- C-SID common compressed segment identifier
- EC-SID extended compressed segment identifier
- Another aspect of the embodiments of the present disclosure also provides a service processing method, which is applied to a node of a segment routing path, including: obtaining a segment list from the SRH of the received service message, wherein the segment list includes the segment The C-SID configured by each node of the routing path and the EC-SID configured by at least one node, and the EC-SID configured by the at least one node is next to and located after the C-SID configured by the at least one node; and, in response to determining the distribution
- the current compressed segment to be processed in the segment list is identified as EC-SID, then the content of the function field of the EC-SID is obtained, and the content definition operation is performed.
- a segment routing header compression device which includes a configuration module, a generation module, and a processing module.
- the configuration module is configured to configure a C-SID for each node on the segmented routing path, and configure an EC-SID for at least one node on the segmented routing path, and the EC-SID of the at least one node includes at least a functional field;
- the module is configured to generate a segment list including the C-SID of each node and the EC-SID of the at least one node; in the segment list, the EC-SID of the at least one node is next to and located at the C-SID of the at least one node -After the SID; and, the processing module is configured to carry the segment list in the SRH of the service message.
- a service processing device which is applied to a node of a segmented routing path, and includes an acquisition module and a processing module.
- the obtaining module is configured to obtain a segment list from the SRH of the received service message, where the segment list includes the C-SID configured by each node of the segment routing path and the EC-SID configured by at least one node, and The EC-SID configured by the at least one node is next to and located after the C-SID configured by the at least one node; and the processing module is configured to respond to determining that the compressed segment identifier currently to be processed in the segment list is the EC-SID.
- SID obtain the content of the function field of EC-SID, and perform the operation defined by the content.
- Another aspect of the embodiments of the present disclosure also provides a computer device, including: one or more processors and a storage device; wherein, one or more programs are stored on the storage device.
- the above one or more processors implement the above segment routing header compression method or service processing method.
- Another aspect of the embodiments of the present disclosure also provides a computer-readable medium on which a computer program is stored, wherein the computer program implements the above-mentioned segment routing header compression method or service processing method when the computer program is executed.
- FIG. 1 is a schematic flowchart of a method for compressing a segment routing header according to an embodiment of the disclosure.
- Figure 2a is a schematic diagram of a C-SID provided by an embodiment of the disclosure.
- Figure 2b is a schematic diagram of a single E-C-SID provided by an embodiment of the disclosure.
- Figure 2c is a schematic diagram of a combined E-C-SID provided by an embodiment of the disclosure.
- Fig. 3a is a schematic diagram of an example of C-SID and E-C-SID provided by an embodiment of the disclosure.
- Fig. 3b is a schematic diagram of an example of C-SID and E-C-SID provided by an embodiment of the disclosure.
- Fig. 3c is a schematic diagram of an example of a combined E-C-SID provided by an embodiment of the disclosure.
- FIG. 4 is a schematic flowchart of a service processing method provided by an embodiment of the disclosure.
- FIG. 5 is a schematic flowchart of a service processing method provided by an embodiment of the disclosure.
- Fig. 6a is a network topology diagram in the uSID scenario provided by an embodiment of the disclosure.
- Fig. 6b is a schematic diagram of the destination address (DA) in the IPv6 packet header in Fig. 6a.
- Fig. 7a is a network topology diagram in a C-SID scenario provided by an embodiment of the disclosure.
- Fig. 7b is a schematic diagram of the SRH using a single E-C-SID in Fig. 7a.
- Fig. 7c is a schematic diagram of the SRH adopting the combined E-C-SID in Fig. 7a.
- FIG. 8 is a schematic structural diagram of a segment routing header compression device provided by an embodiment of the disclosure.
- FIG. 9 is a schematic structural diagram of a service processing apparatus provided by an embodiment of the disclosure.
- the description of the service path uses a segment list composed of a series of 128-bit segment identifiers. Therefore, the overhead of the message header is too large.
- the industry has proposed a variety of segmented routing header compression solutions, such as the uSID solution (draft-filsfils-spring-net-pgm-extension-srv6-usid-02).
- the uSID scheme uses a 16-bit common prefix and a 16-bit compression identification.
- the scheme only discusses segment routing header compression, and does not explain how to implement network programming functions.
- the other segment routing header compression scheme is the common compressed segment identification (C-SID) scheme, (draft-li-spring-compressed-srv6-np-00), although it can be used to achieve segment routing header compression At the same time, it provides flexible programmability, but its programmability is only provided at the tail node of the forwarding path, and cannot be provided at the intermediate node.
- C-SID common compressed segment identification
- embodiments of the present disclosure provide a method for compressing segment routing headers.
- FIG. 1 it is a schematic flowchart of a method for compressing a segment routing header provided by an embodiment of the present disclosure.
- the method for compressing segment routing headers may include steps 11 to 13.
- C-SID is configured for each node on the segment routing path
- E-C-SID is additionally configured for at least some nodes on the segment routing path
- the E-C-SID includes at least a function field
- the segment routing header compression device configures C-SID for each node on the segment routing path, and configures E-C-SID for some of the nodes.
- some nodes on the segmented routing path are only configured with C-SID; some nodes are configured with both C-SID and E-C-SID.
- each node can spread the C-SID to the entire SR domain through IGP (Interior Gateway Protocol), and transfer the EC-SID to the entire SR domain. SID is diffused through IGP or only stored locally.
- each node can use a global routing table to store its own C-SID; a node configured with an E-C-SID can use a local segment identification table to store its expanded and compressed segment routing identification.
- the common compressed segment identifier includes a locator (Locator) field and a function (Function) field.
- the extended compressed segment identifier (EC-SID)
- the SID includes at least a function (Function) field.
- the functional field of the E-C-SID can support the End type business processing function defined by IANA (The Internet Assigned Numbers Authority).
- the length of the C-SID and E-C-SID and the bytes occupied by each field can be set according to different application scenarios, which will be described in detail in combination with specific application scenarios later.
- step 12 a segment list including C-SID and E-C-SID is generated.
- the E-C-SID is next to and behind the C-SID of the node to which it belongs.
- the source node of the segment routing path calculates and generates a segment list.
- the segment list adopts a compressed segment identification format, and presses the C-SID of each node, or C-SID and EC, according to the needs of network programming. -SID.
- the compressed segment identifiers of the nodes on the segment routing path are arranged according to the forwarding order of the service message, and the C-SID of the same node is located before the E-C-SID of the node.
- step 13 the segment list is carried in the SRH of the service message.
- the segment list is carried in the SRH of the service message, and the segment list includes C-SID and EC-SID, so that when the service message is forwarded, each node on the segment routing path Realize the transmission of information in C-SID and EC-SID between them, greatly reducing SRv6 overhead.
- each node on the segment routing path is configured with C-SID, and at least some nodes on the segment routing path are additionally configured with EC-SID, the EC-SID includes at least the function Field; generate a segment list including C-SID and EC-SID; in the segment list, the EC-SID is next to and behind the C-SID of the node to which it belongs; the segment list is carried in the SRH of the service message.
- the use of EC-SID including function fields can improve the network programming ability of the node while maintaining the compression characteristics of the segment identification, and realize the expansion of the service function of the node; and the expanded compression identification can not only be deployed in the branch
- the tail node of the segment routing path can also be deployed at the intermediate node, thereby improving the wide applicability and flexibility of business processing.
- the embodiments of the present disclosure greatly reduce the overhead of SRv6, while retaining flexible network programming capabilities, which is conducive to the rapid deployment of SRv6 on the existing network.
- the E-C-SID may further include an Argument field.
- the parameter field is an optional field and can be used to carry custom parameters to implement more complex functions, such as service chain (Service Function Chain, SFC) related functions.
- E-C-SID can not only use function fields to implement simple business processing (such as the End type defined by IANA), but also use parameter fields to implement more complex business functions.
- the E-C-SID can be classified as a single E-C-SID or a combined E-C-SID.
- a single E-C-SID includes a functional field.
- the combined E-C-SID includes multiple functional fields, and each functional field is used to implement different parts of the same function. In other words, a complete function can be realized only after all the functional fields of a combined E-C-SID are combined.
- the compressed segment identifier includes two types: C-SID and extended segment identifier (that is, extended compressed segment identifier EC-SID).
- C-SID extended compressed segment identifier
- EC-SID extended compressed segment identifier
- Distinguishing between C-SID and E-C-SID by defining the flag field may include the following methods (1) and (2).
- the C-SID and E-C-SID include a first flag field for denoting as C-SID or E-C-SID.
- FIG. 3a which is a schematic diagram of an example of C-SID and E-C-SID provided by the embodiments of the present disclosure, the length of C-SID and E-C-SID can both be 16 bits.
- the difference between C-SID and E-C-SID is that the value of the first bit of the compressed segment identifier is different. When the first bit is 0, it means that the compressed segment identifier is C-SID, and when the first bit is 1, it means that the compressed segment identifier is E-C-SID.
- the SRH of the service message includes a second flag field used to indicate that each compressed segment identifier in the segment list is C-SID or E-C-SID. That is, the preset bit of the SRH of the service message is used as the second flag field to indicate whether the corresponding compressed segment identifier is C-SID or E-C-SID.
- Distinguishing between C-SID and EC-SID by defining new functions can include: the C-SID of the node that has been configured with EC-SID includes functional fields, and the functional fields of this C-SID are used to define the node to which this C-SID belongs.
- the EC-SID That is to say, for a node configured with EC-SID (such as node X), as shown in Figure 2a, its C-SID includes a function field, and the function field defines and processes the node to which this C-SID belongs (that is, node X).
- the EC-SID (ie the next compressed segment identifier of the C-SID of node X in the segment list), the EC-SID can be a single EC-SID shown in Figure 2b, or it can be the one shown in Figure 2c Combine EC-SID.
- the E-C-SID may include two types: a single E-C-SID and a combined E-C-SID.
- the distinction between a single E-C-SID and a combined E-C-SID can be achieved by defining a length field or defining a flag field.
- the method of defining a length field to distinguish between a single E-C-SID and a combined E-C-SID includes the following methods (1) and (2).
- the C-SID includes a first length field used to indicate the length of the E-C-SID of the belonging node, and the length is a multiple of the length of a single E-C-SID. That is, for a node configured with an E-C-SID (for example, node X), the first length field of the C-SID defines the type of E-C-SID of the node (that is, node X). If the value of the first length field is 1, it means that the EC-SID of the node X is a single EC-SID; if the value of the first length field is greater than or equal to 2, it means that the EC-SID of the node X is a combination EC-SID.
- the E-C-SID includes a second length field used to indicate the length of the E-C-SID, and the length is a multiple of the length of a single E-C-SID.
- FIG. 3c it is a schematic diagram of an example of the combined E-C-SID provided by the embodiment of the disclosure. If the length of a single EC-SID is 32 bits, the EC-SID includes a 4-bit second length field. As shown in Figure 3c, the length of the EC-SID is 64 bits, which is twice the length of a single EC-SID (32 bits) Therefore, the value of the second length field is 2, the length of the function field is 44 bits, and the remaining bits are parameter fields.
- Distinguishing between a single E-C-SID and a combined E-C-SID by defining a flag field includes: the E-C-SID includes a third flag field used to indicate whether it is the last E-C-SID of the node to which it belongs.
- the value of the third flag field in the EC-SID can be used to determine whether the extended compression field (that is, the extended compression segment identifier) is a single EC-SID or a combined EC-SID.
- the value of the third flag field indicates Is the last EC-SID of the node to which it belongs, it means that the EC-SID is a single EC-SID; if the value of the third flag field indicates that it is not the last EC-SID of the node to which it belongs, it means that the EC-SID is a combined EC -SID.
- the embodiment of the present disclosure also provides a service processing method, which can be applied to the nodes of the segmented routing path, each node on the segmented routing path is configured with C-SID, and at least some nodes on the segmented routing path are additionally configured with EC-SID , EC-SID includes at least function fields.
- FIG. 4 it is a schematic flowchart of a service processing method provided by an embodiment of the present disclosure.
- the service processing method may include step 21 and step 22.
- a segment list is obtained from the SRH of the received service message, where the segment list includes C-SID and E-C-SID, and the E-C-SID is next to and located after the C-SID of the node to which it belongs.
- the node on the segment routing path receives the service message sent by the previous hop node, it obtains the segment list from the SRH of the service message.
- the SRH of the service message is compressed using the segment routing header compression method provided in the foregoing embodiment.
- the segment routing header compression device before forwarding the service message, the segment routing header compression device generates a segment list including C-SID and E-C-SID to achieve SRH compression.
- step 22 if the currently to-be-processed compressed segment identifier in the segment list is E-C-SID, the content of the function field of the E-C-SID is obtained, and the operation defined by the content is performed.
- the service processing device determines whether the compressed segment identifier currently to be processed is an EC-SID according to the segment list, and if so, obtains the content of the function field of the EC-SID to be processed, and executes the definition Operate to realize the function of network programming of this node. If the currently to-be-processed compressed segment identifier is C-SID, it will be processed according to the existing process. For example, if the C-SID includes a function field, the content of the function field of the C-SID is obtained, and the operation defined by the content is performed.
- the segment list is obtained from the SRH of the received service message, where the segment list includes C-SID and EC-SID, and the EC-SID is next to and located at the C of the node to which it belongs.
- -After SID if the current compressed segment identifier to be processed in the segment list is EC-SID, then obtain the content of the function field of the EC-SID, and execute the operation defined by the content.
- the E-C-SID including the function field can be used to improve the network programming ability of the node while maintaining the compression characteristic of the segmentation identification, and realize the expansion of the service function of the node.
- the expanded and compressed identifier can be deployed not only at the end node of the segmented routing path, but also at the intermediate node, thereby improving the wide applicability and flexibility of business processing.
- the embodiments of the present disclosure greatly reduce the overhead of SRv6, while retaining flexible network programming capabilities, which is conducive to the rapid deployment of SRv6 on the existing network.
- the compressed segment identifier currently to be processed in the segment list is considered to be an E-C-SID.
- the value of the first flag field preset in the compressed segment identifier currently to be processed is a flag indicating an E-C-SID.
- the first bit of the compressed segment identifier is the first flag field
- a value of 0 in the first flag field indicates that the compressed segment identifier is C-SID
- a value of 1 in the first flag field indicates the compressed segment Identified as EC-SID.
- Condition b The value of the second flag field preset in the SRH of the service message indicates that the currently to-be-processed compressed segment identifier is an E-C-SID.
- Condition c The function field of the last processed C-SID in the segment list has defined the E-C-SID of the node to which the process belongs.
- the Function field of the last processed C-SID in the segment list has been defined to process the EC-SID of the node to which the C-SID belongs, it means that the node has been configured with an extended compression identifier (that is, an extended compression identifier).
- Compressed segment identifier EC-SID Compressed segment identifier
- the next compressed segment identifier of the C-SID in the segment list is the EC-SID.
- EC-SID includes a single EC-SID or a combined EC-SID
- a single EC-SID includes a functional field
- a combined EC-SID includes multiple functional fields.
- Each functional field is used to implement different parts of the same function. .
- the content of the function field of the EC-SID is obtained, and the operation defined by the content is executed (ie, step 22). ), may include step 31 to step 33.
- step 31 it is judged whether the E-C-SID is a combined E-C-SID, if yes, go to step 32; otherwise, go to step 33.
- the E-C-SID is considered to be a combined E-C-SID if one of the following d-f conditions is met.
- Condition d The value of the preset first length field in the C-SID of the node to which the EC-SID belongs is greater than or equal to 2.
- the first length field is used to indicate the length of the EC-SID of the node to which it belongs, and the length is the length of a single EC-SID multiple.
- the value of the second length field preset in the E-C-SID is greater than or equal to 2.
- the second length field is used to indicate the length of the E-C-SID, and the length is a multiple of the length of a single E-C-SID. For example, if the length of a single EC-SID is 32 bits, and the EC-SID includes a 4-bit second number length field, the compressed segment identifier currently to be processed in the segment list is the EC-SID shown in Figure 3c, and its length It is 64 bits, which is twice the length of a single EC-SID (32 bits). Therefore, the value of the second length field is 2. Therefore, the EC-SID is a combined EC-SID.
- Condition f The value of the third flag field preset in the E-C-SID indicates that it is not the last E-C-SID of the node to which it belongs. In other words, if the value of the third flag field indicates that it is the last EC-SID of the node to which it belongs, it means that the EC-SID is a single EC-SID; if the value of the third flag field indicates that it is not the last EC-SID of the node to which it belongs EC-SID, it means that the EC-SID is a combined EC-SID.
- step 32 the content of each function field of the E-C-SID is obtained, the content of each function field is combined, and the operation of the combined content definition is performed.
- the compressed segment identifier currently to be processed in the segment list is EC-SID, and it is a combined EC-SID
- the content of each function field of the combined EC-SID will be obtained separately, and the content of each function field of the combined EC-SID will be obtained.
- step 33 the content of the function field of the E-C-SID is obtained, and the operation defined by the content is executed.
- the compressed segment identifier currently to be processed in the segment list is an EC-SID and is a single EC-SID
- obtain the content of the function field of the single EC-SID and execute the content of the content. Defined operation.
- the segment routing header compression method and service processing method provided by the embodiments of the present disclosure can be applied to uSID scenarios and C-SID scenarios.
- the following describes the solutions of the embodiments of the present disclosure in detail in combination with the uSID scenario and the C-SID scenario.
- Fig. 6a is a network topology diagram in the uSID scenario provided by an embodiment of the disclosure
- Fig. 6b is a schematic diagram of DA in the IPv6 packet header in Fig. 6a.
- the uSID scheme is used for segment routing header compression.
- the 128 bits of the segment identifier in the SRH are divided into one uSID block and multiple uSIDs.
- uSID block is a common prefix, and each uSID represents a node or adjacency. Both uSID block and uSID can use 16 bits.
- a new DA can be formed by combining uSID shift and uSID block.
- the C-SID and E-C-SID can be distinguished by the value of the first flag field in the compressed segment identifier.
- the length of the compressed segment identifier is 16 bits.
- the difference between C-SID and EC-SID lies in the first bit (that is, the first flag field). When the value of this bit is 0, it means C-SID, which is 1 o'clock means EC-SID.
- A, B, C, D, E, and F are network nodes in the SR domain, and an A-B-E-F-D SRv6 tunnel is created (as shown by the arrow in Figure 6a).
- Plan uSID Block as 0010, configure C-SID as 000A/000B/000C/000D/000E/000F in node A/B/C/D/E/F respectively, and install these C-SIDs separately after being spread through the IGP protocol In the global routing table of all nodes.
- the node D is also configured with an E-C-SID with a value of FF88, and the E-C-SID is installed in the local segment identification table of the node D.
- Node A generates an SRv6 tunnel using uSID compression format, and the DA in its IPv6 header is: 10:B:E:F:D:FF88::. Define the End operation in the E-C-SID of node D to realize network programming processing.
- the service processing flow is as follows: After node A generates the segment list, it forwards the service message to the next hop node B. Node B obtains the segment list from the SRH of the received service message, determines that there is an unprocessed compressed segment identifier in the segment list, obtains the next compressed segment identifier through shifting, and determines the current compression to be processed
- the segment identifier is the C-SID (ie, the C-SID of the node E), and the service message is forwarded to the next hop node E according to the instruction of the C-SID.
- Node E obtains the segment list from the SRH of the received service message, determines that there is an unprocessed compressed segment identifier in the segment list, obtains the next compressed segment identifier through shifting, and determines the current compression to be processed
- the segment identifier is the C-SID (that is, the C-SID of node F), and the service message is forwarded to the next hop node F according to the instruction of the C-SID.
- Node F obtains the segment list from the SRH of the received service message, determines that there is an unprocessed compression segment identifier in the segment list, obtains the next compression segment identifier through shifting, and determines the current compression to be processed
- the segment identifier is C-SID (ie, the C-SID of node D). After operating according to the instructions of the C-SID, it is determined that there is an unprocessed compression segment identifier in the segment list, and the next compression segment is obtained by shifting.
- Segment identifier it is determined that the current compressed segment identifier to be processed is EC-SID (ie the EC-SID of node D), the content of the function field of the EC-SID of node D is obtained, and the corresponding operation is performed. At this time, divide There is no unprocessed SID in the segment list, and the business processing flow ends.
- the segment list that originally required 4*128 bits can be compressed into a 128-bit DA, which realizes the segment routing header compression of SRv6 and provides network programming capabilities.
- the network programming ability is only reflected in the tail node (node D) of the SRv6 tunnel, the network programming ability can also be realized at the intermediate point of the tunnel.
- Fig. 7a is a network topology diagram in a C-SID scenario provided by an embodiment of the disclosure
- Fig. 7b is a schematic diagram of an SRH using a single E-C-SID in Fig. 7a.
- the C-SID scheme is used to compress the segment routing header.
- the compressed segment identifier is divided into a common prefix part and a node/adjacent identifier part, but the common prefix of the compressed segment identifier is only reflected in the IPv6 DA, and only the compressed node/ Adjacent to the identification part.
- C-SID compression header
- a function field is set in the C-SID of the node where the E-C-SID has been configured to define and process the E-C-SID of the node to which the C-SID belongs.
- a 32-bit compressed segment identifier length is used, and the first 16 bits in the C-SID are defined as a locator field (Locator), and the last 16 bits are defined as a function field (Function).
- the locator field usually occupies more bits in practical applications, for example, the division method of 20bits
- E-C-SID defines the first 16 bits as a function field, and the last 16 bits as a parameter field (Argument). This is also a division method for ease of presentation, which can be flexibly divided according to actual needs.
- A, B, C, D, E, and F are network nodes in the SR domain, and an A-B-E-F-D SRv6 tunnel is created (as shown by the arrow in Figure 7a).
- C-SIDs are diffused through the IGP protocol, they are installed in the global routing tables of all nodes. Define a new End operation in the C-SID of node F: End.XF, which means that the E-C-SID needs to be processed.
- the node F is configured with an E-C-SID (single E-C-SID) with a value of FA:88.
- the E-C-SID is installed in the local segment identification table of the node F to realize a local service chain function.
- Node A generates an SRv6 tunnel, using the C-SID compression format, and its SRH is shown in Figure 7b.
- the End operation defined by the original C-SID compression scheme remains unchanged, usually replacing the last 32bits in DA with the C-SID pointed to by the current SL (SegmentsLeft) pointer. If the last C-SID is 128bits, directly replace the entire DA.
- the service processing flow is as follows: After node A generates the segment list, it forwards the service message to the next hop node B. Node B obtains the segment list from the SRH of the received service message, determines that there is an unprocessed compressed segment identifier in the segment list, and obtains the next compressed segment identifier by subtracting 1 from SL, and determines that it is currently pending
- the compressed segment identifier of is C-SID (that is, the C-SID of node E), and the service message is forwarded to the next hop node E according to the instruction of the C-SID.
- Node E obtains the segment list from the SRH of the received service message, determines that there is an unprocessed segment identifier in the segment list, and obtains the next compressed segment identifier by subtracting 1 from SL, and determines the current to-be-processed
- the compressed segment identifier is the C-SID (that is, the C-SID of node F), and the service message is forwarded to the next hop node F according to the instruction of the C-SID.
- Node F obtains the segment list from the SRH of the received service message, determines that there is an unprocessed compressed segment identifier in the segment list, and obtains the next compressed segment identifier by subtracting 1 from SL, and determines that it is currently pending
- the compressed segment identifier of is EC-SID (that is, the EC-SID of node F), the content of the function field of the EC-SID is obtained, and the operation defined by the content is executed.
- Node F determines that there is an unprocessed compressed segment identifier in the segment list, and obtains the next compressed segment identifier by subtracting 1 from SL, and determines that the current compressed segment identifier to be processed is C-SID (that is, the C-SID of node D). -SID), forward the service message to the next hop node D according to the instruction of the C-SID.
- Node D obtains the segment list from the SRH of the received service message, determines that there is no unprocessed compressed segment identifier in the segment list, and the process ends.
- segment list that originally required 4*128 bits can be compressed into 5*32 bits, which implements SRv6 segmentation routing header compression and provides network programming capabilities.
- the combined EC-SID can also be used to achieve programming to achieve more complex coding functions.
- the format of the combined EC-SID can be as shown in Figure 3c, which can include 2 32 bits, where the first 4 bits are the first length field, which is used to indicate the length of the combined EC-SID, that is, a multiple of 32 bits; the last 16 bits represent the parameter field, and the remaining bits in the middle represent the function field.
- node A generates an SRv6 tunnel using a C-SID compression format, and its SRH is shown in FIG. 7c, which is a schematic diagram of SRH using a combined E-C-SID in FIG. 7a.
- the business processing procedures of nodes A, B, E, and D are all the same as the business processing procedures of a single EC-SID in the previous embodiment.
- node F obtains the two functional fields of the EC-SID of node F (ie 28 bits And 16bits) content, after the content is combined, the operation defined by the combined content is executed.
- the embodiment of the present disclosure further provides a segment routing header compression device, as shown in FIG. 8, which is a schematic structural diagram of the segment routing header compression device provided by the embodiment of the disclosure.
- the segment routing header compression device may include a configuration module 101, a generation module 102, and a processing module 103.
- the configuration module 101 may be configured to configure a C-SID for each node on the segmented routing path, and additionally configure an E-C-SID for at least some of the nodes on the segmented routing path, the E-C-SID includes at least functional fields.
- the generating module 102 may be configured to generate a segment list including C-SID and E-C-SID; in the segment list, the E-C-SID is next to and behind the C-SID of the node to which it belongs.
- the processing module 103 may be configured to carry the segment list in the SRH of the service message.
- the E-C-SID may also include a parameter field.
- the EC-SID can be a single EC-SID or a combined EC-SID.
- the single EC-SID includes one function field, and the combined EC-SID includes multiple function fields, and each function field is used to implement the same function. Different parts of the.
- C-SID and E-C-SID may include a first flag field for denoting as C-SID or E-C-SID.
- the SRH of the service message may include a second flag field for indicating that each compressed segment identifier in the segment list is C-SID or E-C-SID.
- the C-SID of the node configured with the E-C-SID may include a function field, and the function field of the C-SID is used to define the E-C-SID of the node to which the C-SID belongs.
- the C-SID may include a first length field for indicating the length of the E-C-SID of the belonging node, and the length is a multiple of the length of a single E-C-SID.
- the E-C-SID may include a second length field for indicating the length of the E-C-SID, and the length is a multiple of the length of a single E-C-SID.
- the E-C-SID may include a third flag field for indicating whether it is the last E-C-SID of the belonging node.
- the embodiment of the present disclosure also provides a service processing device, which is applied to the nodes of the segmented routing path, each node on the segmented routing path is configured with C-SID, and at least some of the nodes on the segmented routing path are additionally An EC-SID is configured, and the EC-SID includes at least function fields.
- FIG. 9 it is a schematic structural diagram of a service processing apparatus provided by an embodiment of the present disclosure.
- the service processing apparatus may include an acquisition module 201 and a processing module 202.
- the obtaining module 201 may be configured to obtain a segment list from the SRH of the received service message, where the segment list includes C-SID and E-C-SID, and the E-C-SID is immediately adjacent to and located after the C-SID of the node to which it belongs.
- the processing module 202 may be configured to, if the currently to-be-processed compressed segment identifier in the segment list is an E-C-SID, obtain the content of the function field of the E-C-SID, and execute the operation defined by the content.
- the processing module 202 may be configured to, if one of the following conditions is met, determine that the compressed segment identifier currently to be processed in the segment list is EC-SID: the current compressed segment identifier to be processed is pre-processed. Set the value of the first flag field to indicate the EC-SID flag; the preset value of the second flag field in the SRH of the service message indicates that the current compressed segment identifier to be processed is the flag of the EC-SID; in the segment list The function field of the last processed C-SID has defined the EC-SID of the node to which the process belongs.
- the E-C-SID may be a single E-C-SID, and the single E-C-SID includes one functional field.
- the processing module 202 may be configured to, if the E-C-SID is a single E-C-SID, obtain the content of the functional field of the single E-C-SID, and execute the operation defined by the content.
- the E-C-SID may be a combined E-C-SID, and the combined E-C-SID includes multiple function fields, and each function field is used to implement different parts of the same function.
- the processing module 202 may be configured to, if the E-C-SID is a combined E-C-SID, obtain the content of each function field of the combined E-C-SID, combine the content of each function field, and perform the operation of defining the combined content.
- the processing module 202 may be configured to determine that the EC-SID is a combined EC-SID if one of the following conditions is met: the value of the first length field preset in the C-SID of the node to which the EC-SID belongs Greater than or equal to 2, the first length field is used to indicate the length of the EC-SID of the node to which it belongs, and the length is a multiple of the length of a single EC-SID; the preset second length field in the EC-SID is greater than or equal to 2, the first The second length field is used to indicate the length of the current EC-SID, which is a multiple of the length of a single EC-SID; the preset value of the third flag field in the EC-SID indicates that it is not the last EC-SID of the node to which it belongs.
- the embodiments of the present disclosure also provide a computer device, which includes: one or more processors and a storage device; wherein, one or more programs are stored on the storage device, and when the one or more programs are When executed by or multiple processors, the foregoing one or more processors implement the segment routing header compression method provided in any one of the foregoing embodiments.
- the embodiments of the present disclosure also provide a computer device, which includes: one or more processors and a storage device; wherein, one or more programs are stored on the storage device, and when the one or more programs are When executed by or multiple processors, the foregoing one or multiple processors implement the service processing method provided by any one of the foregoing embodiments.
- the embodiments of the present disclosure also provide a computer-readable medium on which a computer program is stored, wherein the computer program implements the segment routing header compression method provided in any of the above-mentioned embodiments when the computer program is executed.
- the embodiments of the present disclosure also provide a computer-readable medium on which a computer program is stored, wherein the computer program implements the service processing method provided by any of the above-mentioned embodiments when the computer program is executed.
- the functional modules/units in the device can be implemented as software, firmware, hardware, and appropriate combinations thereof.
- the division between functional modules/units mentioned in the above description does not necessarily correspond to the division of physical components; for example, a physical component may have multiple functions, or a function or step may consist of several physical components.
- the components are executed cooperatively.
- Some physical components or all physical components can be implemented as software executed by a processor, such as a central processing unit, a digital signal processor, or a microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit .
- Such software may be distributed on a computer-readable medium, and the computer-readable medium may include a computer storage medium (or a non-transitory medium) and a communication medium (or a transitory medium).
- the term computer storage medium includes volatile and non-volatile data implemented in any method or technology for storing information (such as computer-readable instructions, data structures, program modules, or other data). Sexual, removable and non-removable media.
- Computer storage media include but are not limited to RAM, ROM, EEPROM, flash memory or other memory technologies, CD-ROM, digital versatile disk (DVD) or other optical disk storage, magnetic cassettes, magnetic tapes, magnetic disk storage or other magnetic storage devices, or Any other medium used to store desired information and that can be accessed by a computer.
- communication media usually contain computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as carrier waves or other transmission mechanisms, and may include any information delivery media. .
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本公开实施例涉及无线通信技术领域,尤其涉及一种分段路由头压缩方法,包括:为分段路由路径上的各节点配置普通压缩分段标识,并为分段路由路径上的至少一个节点配置扩展压缩分段标识,该至少一个节点的扩展压缩分段标识至少包括功能字段;生成包括各节点的普通压缩分段标识和该至少一个节点的扩展压缩分段标识的分段列表;在分段列表中,该至少一个节点的扩展压缩分段标识紧邻并位于该至少一个节点的普通压缩分段标识之后;以及,将分段列表携带在业务报文的分段路由头中。本公开实施例还提供一种业务处理方法、分段路由头压缩装置、业务处理装置、计算机设备和计算机可读介质。
Description
本公开涉及无线通信技术领域。
分段路由(Segment Routing,SR)是一种实现源路由的技术。RFC8402定义了基于MPLS(Multi-Protocol Label Switching,多协议标签交换)转发面的SR-MPLS和基于IPv6(Internet Protocol Version 6,互联网协议第6版)转发面的SRv6两种标准的SR机制。随着IPv4(Internet Protocol version 4,互联网协议第4版)的地址耗尽和物联网的飞速发展,已有越来越多的网络部署了IPv6。SRv6可直接基于IPv6扩展路由头实现,无需添加额外封装,实现了IP(Internet Protocol,网际互连协议)转发和隧道转发的统一。同时由于SRv6采用了IPv6地址相同的128-bit格式的分段标识(Segment ID,SID),并将分段标识分为定位符(Locator)和功能(Function)两部分,可以实现灵活的网络和业务混合编程,因此SRv6得到了业界的广泛认可。
发明内容
本公开实施例的一个方面提供一种分段路由头(Segment Routing Header,SRH)压缩方法,包括:为分段路由路径上的各节点配置普通压缩分段标识(C-SID),并为分段路由路径上的至少一个节点配置扩展压缩分段标识(E-C-SID),该至少一个节点的E-C-SID至少包括功能字段;生成包括各节点的C-SID和该至少一个节点的E-C-SID的分段列表;在该分段列表中,该至少一个节点的E-C-SID紧邻并位于该至少一个节点的C-SID之后;以及,将分段列表携带在业务报文的SRH中。
本公开实施例的又一方面还提供一种业务处理方法,应用于分 段路由路径的节点,包括:从接收到的业务报文的SRH中获取分段列表,其中,分段列表包括分段路由路径的各节点配置的C-SID和至少一个节点配置的E-C-SID,且该至少一个节点配置的E-C-SID紧邻并位于该至少一个节点配置的C-SID之后;以及,响应于确定分段列表中当前待处理的压缩分段标识为E-C-SID,则获取E-C-SID的功能字段的内容,并执行内容定义的操作。
本公开实施例的又一方面还提供一种分段路由头压缩装置,包括配置模块、生成模块和处理模块。配置模块被配置为,为分段路由路径上各的节点配置C-SID,并为分段路由路径上的至少一个节点配置E-C-SID,该至少一个节点的E-C-SID至少包括功能字段;生成模块被配置为,生成包括各节点的C-SID和该至少一个节点的E-C-SID的分段列表;在分段列表中,该至少一个节点的E-C-SID紧邻并位于该至少一个节点的C-SID之后;以及,处理模块被配置为,将分段列表携带在业务报文的SRH中。
本公开实施例的又一方面还提供一种业务处理装置,应用于分段路由路径的节点,包括获取模块和处理模块。获取模块被配置为,从接收到的业务报文的SRH中获取分段列表,其中,分段列表包括分段路由路径的各节点配置的C-SID和至少一个节点配置的E-C-SID,且该至少一个节点配置的E-C-SID紧邻并位于该至少一个节点配置的C-SID之后;以及,处理模块被配置为,响应于确定分段列表中的当前待处理的压缩分段标识为E-C-SID,获取E-C-SID的功能字段的内容,并执行内容定义的操作。
本公开实施例的又一方面还提供一种计算机设备,包括:一个或多个处理器以及存储装置;其中,存储装置上存储有一个或多个程序,当上述一个或多个程序被上述一个或多个处理器执行时,使得上述一个或多个处理器实现上述的分段路由头压缩方法或业务处理方法。
本公开实施例的又一方面还提供了一种计算机可读介质,其上存储有计算机程序,其中,该计算机程序被执行时实现上述的分段路由头压缩方法或业务处理方法。
图1为本公开实施例提供的分段路由头压缩方法的一种流程示意图。
图2a为本公开实施例提供的C-SID的一种示意图。
图2b为本公开实施例提供的单一E-C-SID的一种示意图。
图2c为本公开实施例提供的组合E-C-SID的一种示意图。
图3a为本公开实施例提供的C-SID和E-C-SID的一个示例的示意图。
图3b为本公开实施例提供的C-SID和E-C-SID的一个示例的示意图。
图3c为本公开实施例提供的组合E-C-SID的一个示例的示意图。
图4为本公开实施例提供的业务处理方法的一种流程示意图。
图5为本公开实施例提供的业务处理方法的一种流程示意图。
图6a为本公开实施例提供的uSID场景下的一种网络拓扑图。
图6b为图6a中IPv6报文头中目标地址(Destination Address,DA)的一种示意图。
图7a为本公开实施例提供的C-SID场景下的一种网络拓扑图。
图7b为图7a中采用单一E-C-SID的SRH的一种示意图。
图7c为图7a中采用组合E-C-SID的SRH的一种示意图。
图8为本公开实施例提供的分段路由头压缩装置的一种结构示意图。
图9为本公开实施例提供的业务处理装置的一种结构示意图。
在下文中将参考附图更充分地描述示例实施例,但是所述示例实施例可以以不同形式来体现且不应当被解释为限于本文阐述的实施例。反之,提供这些实施例的目的在于使本公开透彻和完整,并将使本领域技术人员充分理解本公开的范围。
如本文所使用的,术语“和/或”包括一个或多个相关列举条目 的任何和所有组合。
本文所使用的术语仅用于描述特定实施例,且不意欲限制本公开。如本文所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。还将理解的是,当本说明书中使用术语“包括”和/或“由……制成”时,指定存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其他特征、整体、步骤、操作、元件、组件和/或其群组。
本文所述实施例可借助本公开的理想示意图而参考平面图和/或截面图进行描述。因此,可根据制造技术和/或容限来修改示例图示。因此,实施例不限于附图中所示的实施例,而是包括基于制造工艺而形成的配置的修改。因此,附图中例示的区具有示意性属性,并且图中所示区的形状例示了元件的区的具体形状,但并不旨在是限制性的。
除非另外限定,否则本文所用的所有术语(包括技术和科学术语)的含义与本领域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本公开的背景下的含义一致的含义,且将不解释为具有理想化或过度形式上的含义,除非本文明确如此限定。
在SRv6方案中,业务路径的描述采用了一系列128-bit的分段标识所组成的分段列表,因此,报文头开销过大。为解决该问题,业界提出了多种分段路由头压缩的解决方案,比如uSID方案(draft-filsfils-spring-net-pgm-extension-srv6-usid-02)。uSID方案采用16-bit的共同前缀和16-bit的压缩标识,但是,该方案只讨论了分段路由头压缩,并未说明如何实现网络编程功能。如果要实现网络编程功能,则16bits既要表示定位符,又要实现功能,其长度是不够的;如果增加至32bits,可获得一定编程能力(比如,划分32bits中的20bits为定位符,12bits为功能),但其编程能力仍比较弱,且压缩效率降低。而另一种分段路由头压缩方案为普通压缩分段标识(C-SID)方案,(draft-li-spring-compressed-srv6-np-00),其虽然可以在实现 分段路由头压缩的同时提供灵活的可编程能力,但其可编程能力仅在转发路径的尾节点提供,无法在中间节点提供。
针对相关技术存在的上述不足,本公开实施例提供一种分段路由头压缩方法。如图1所示,其为本公开实施例提供的分段路由头压缩方法的一种流程示意图,该分段路由头压缩方法可包括步骤11~步骤13。
在步骤11中,为分段路由路径上各节点配置C-SID,并为分段路由路径上的至少部分节点额外配置E-C-SID,E-C-SID至少包括功能字段。
在本步骤中,分段路由头压缩装置为分段路由路径上的每个节点配置C-SID,并为其中某些节点配置E-C-SID。也就是说,分段路由路径上有些节点只配置了C-SID;有些节点既配置了C-SID,又配置了E-C-SID。在本步骤中,分段路由头压缩装置将C-SID和E-C-SID配置到相应的节点后,各节点可以将C-SID通过IGP(内部网关协议)扩散到整个SR域,并将E-C-SID通过IGP扩散或仅在本地保存。在一些实施中,各节点可利用全局路由表存储各自的C-SID;配置有E-C-SID的节点,可利用本地分段标识表存储其扩展压缩分段路由标识。
如图2a所示,其为本公开实施例提供的C-SID的一种示意图。普通压缩分段标识(C-SID)包括定位符(Locator)字段和功能(Function)字段。如图2b和2c所示,其分别为本公开实施例提供的单一E-C-SID的一种示意图,和本公开实施例提供的组合E-C-SID的一种示意图,扩展压缩分段标识(E-C-SID)至少包括功能(Function)字段。E-C-SID的功能字段可以支持如IANA(The Internet Assigned Numbers Authority,互联网数字分配机构)定义的终结(End)类型的业务处理功能。
在一些实施中,C-SID和E-C-SID的长度以及各字段占用的字节可根据应用场景不同而设定,后续将结合具体的应用场景进行详细说明。
在步骤12中,生成包括C-SID和E-C-SID的分段列表,在分段 列表中,E-C-SID紧邻并位于所属节点的C-SID之后。
在本步骤中,分段路由路径的源节点计算并生成分段列表,分段列表采用压缩分段标识格式,并按网络编程需要压入各节点的C-SID,或者,C-SID和E-C-SID。在分段列表中,分段路由路径上各节点的压缩分段标识按照业务报文的转发顺序排列,同一个节点的C-SID位于该节点的E-C-SID之前。
在步骤13中,将分段列表携带在业务报文的SRH中。
在本步骤中,将分段列表携带在业务报文的SRH中,而分段列表包括C-SID和E-C-SID,这样,在转发业务报文时,就可以在分段路由路径上各节点之间实现C-SID和E-C-SID中信息的传输,大幅降低SRv6开销。
根据本公开实施例提供的分段路由头压缩方法,为分段路由路径上各节点配置C-SID,并为分段路由路径上的至少部分节点额外配置E-C-SID,E-C-SID至少包括功能字段;生成包括C-SID和E-C-SID的分段列表;在分段列表中,E-C-SID紧邻并位于所属节点的C-SID之后;将分段列表携带在业务报文的SRH中。根据本公开提供的实施例,采用包括功能字段的E-C-SID,可以在保持分段标识压缩特性的同时提高节点的网络编程能力,实现节点的业务功能扩展;且扩展压缩标识不但可以部署在分段路由路径的尾节点,还可以部署在中间节点,从而提高业务处理的广泛适用性和灵活性。本公开实施例在大幅降低SRv6开销的同时,又保留了灵活的网络编程能力,有利于快速推进SRv6在现网的落地部署。
在一些实施例中,如图2b和图2c所示,E-C-SID还可以包括参数(Argument)字段。参数字段为可选字段,可以用来携带自定义参数,以实现较为复杂的功能,例如,业务链(Service Function Chain,SFC)相关功能。E-C-SID不仅可以利用功能字段实现简单的业务处理(如IANA定义的End类型),还可以利用参数字段实现比较复杂的业务功能。
在一些实施例中,E-C-SID可以分为单一E-C-SID或组合E-C-SID。如图2b所示,单一E-C-SID包括一个功能字段。如图2c 所示,组合E-C-SID包括多个功能字段,且各功能字段用于分别实现同一功能的不同部分。也就是说,一个组合E-C-SID的所有功能字段组合之后才能实现一个完整的功能。
在本公开实施例中,压缩分段标识包括两类:C-SID和扩展分段标识(也即扩展压缩分段标识E-C-SID),区分C-SID和E-C-SID可以通过定义标志字段或定义新增功能两种方式实现。
通过定义标志字段的方式区分C-SID和E-C-SID可包括以下方式(1)和(2)。
(1)C-SID和E-C-SID包括用于表示为C-SID或E-C-SID的第一标志字段。如图3a所示,其为本公开实施例提供的C-SID和E-C-SID的一个示例的示意图,C-SID和E-C-SID的长度均可为16bits。C-SID与E-C-SID的区别在于压缩分段标识的首位的值不同,首位为0时表示该压缩分段标识为C-SID,首位为1时表示该压缩分段标识为E-C-SID。
(2)业务报文的SRH包括用于表示分段列表内的各压缩分段标识为C-SID或E-C-SID的第二标志字段。也就是说,将业务报文的SRH的预设位作为第二标志字段,用来表示相应压缩分段标识是C-SID还是E-C-SID。
通过定义新增功能的方式区分C-SID和E-C-SID可包括:已配置E-C-SID的节点的C-SID包括功能字段,该C-SID的功能字段用于定义处理本C-SID所属节点的E-C-SID。也就是说,对于配置了E-C-SID的节点(例如节点X)而言,如图2a所示,其C-SID包括功能字段,在该功能字段定义处理本C-SID所属节点(即节点X)的E-C-SID(即分段列表中节点X的C-SID的下一个压缩分段标识),该E-C-SID可以为图2b所示的单一E-C-SID,也可以为图2c所示的组合E-C-SID。
在本公开实施例中,E-C-SID可包括两类:单一E-C-SID和组合E-C-SID,区分单一E-C-SID和组合E-C-SID可以通过定义长度字段或定义标志字段两种方式实现。
通过定义长度字段的方式区分单一E-C-SID和组合E-C-SID包 括以下方式(1)和(2)。
(1)C-SID包括用于表示所属节点的E-C-SID长度的第一长度字段,该长度为单一E-C-SID长度的倍数。也就是说,对于配置了E-C-SID的节点(例如节点X)而言,在其C-SID的第一长度字段定义该节点(即节点X)的E-C-SID的类型。若该第一长度字段的值为1,则说明该节点X的E-C-SID为单一E-C-SID;若该第一长度字段的值大于或等于2,则说明该节点X的E-C-SID为组合E-C-SID。
(2)E-C-SID包括用于表示本E-C-SID长度的第二长度字段,该长度为单一E-C-SID长度的倍数。如图3c所示,其为本公开实施例提供的组合E-C-SID的一个示例的示意图。若单一E-C-SID的长度为32bits,E-C-SID包括4-bit的第二长度字段,如图3c所示的E-C-SID的长度为64bits,是单一E-C-SID的长度(32bits)的2倍,因此,第二长度字段的值为2,功能字段的长度为44bits,剩余位为参数字段。
通过定义标志字段的方式区分单一E-C-SID和组合E-C-SID包括:E-C-SID包括用于表示是否为所属节点最后一个E-C-SID的第三标志字段。也就是说,可以通过E-C-SID中的第三标志字段的值判断该扩展压缩字段(也即扩展压缩分段标识)是单一E-C-SID还是组合E-C-SID,若第三标志字段的值表示为所属节点的最后一个E-C-SID,则说明该E-C-SID为单一E-C-SID;若第三标志字段的值表示为不是所属节点的最后一个E-C-SID,则说明该E-C-SID为组合E-C-SID。
本公开实施例还提供一种业务处理方法,可应用于分段路由路径的节点,分段路由路径上各节点配置有C-SID,分段路由路径上至少部分节点还额外配置有E-C-SID,E-C-SID至少包括功能字段。如图4所示,其为本公开实施例提供的业务处理方法的一种流程示意图,该业务处理方法可包括步骤21和步骤22。
在步骤21中,从接收到的业务报文的SRH中获取分段列表,其中,分段列表包括C-SID和E-C-SID,E-C-SID紧邻并位于所属节点的C-SID之后。
在本步骤中,分段路由路径上的节点接收到上一跳节点发送的 业务报文后,从业务报文的SRH中获取分段列表。业务报文的SRH采用前述实施例提供的分段路由头压缩方法进行压缩。也就是说,在进行业务报文转发之前,分段路由头压缩装置生成包括C-SID和E-C-SID的分段列表,实现SRH的压缩。
在步骤22中,若分段列表中当前待处理的压缩分段标识为E-C-SID,则获取E-C-SID的功能字段的内容,并执行该内容定义的操作。
在本步骤中,业务处理装置根据分段列表判断当前待处理的压缩分段标识是否为E-C-SID,若是,则获取该待处理的E-C-SID的功能字段的内容,并执行该内容定义的操作,从而实现本节点网络编程的功能。若当前待处理的压缩分段标识为C-SID,则按照现有流程处理。例如,如果该C-SID包括功能字段,则获取该C-SID的功能字段的内容,并执行该内容定义的操作。
根据本公开实施例提供的业务处理方法,从接收到的业务报文的SRH中获取分段列表,其中,分段列表包括C-SID和E-C-SID,E-C-SID紧邻并位于所属节点的C-SID之后;若分段列表中当前待处理的压缩分段标识为E-C-SID,则获取E-C-SID的功能字段的内容,并执行该内容定义的操作。根据本公开提供的实施例,采用包括功能字段的E-C-SID,可以在保持分段标识压缩特性的同时提高节点的网络编程能力,实现节点的业务功能扩展。且扩展压缩标识不但可以部署在分段路由路径的尾节点,还可以部署在中间节点,从而提高业务处理的广泛适用性和灵活性。本公开实施例在大幅降低SRv6开销的同时,又保留了灵活的网络编程能力,有利于快速推进SRv6在现网的落地部署。
在一些实施例中,若满足以下a-c条件之一,则认为分段列表中当前待处理的压缩分段标识为E-C-SID。
条件a:当前待处理的压缩分段标识中预设第一标志字段的值为表示E-C-SID的标志。如图3a所示,压缩分段标识的首位为第一标志字段,第一标志字段的值为0表示该压缩分段标识为C-SID,第一标志字段的值为1表示该压缩分段标识为E-C-SID。
条件b:业务报文的SRH中预设第二标志字段的值为表示当前待处理的压缩分段标识是E-C-SID的标志。
条件c:分段列表中上一个处理的C-SID的功能字段已定义处理所属节点的E-C-SID。如图2a所示,若分段列表中上一个处理的C-SID的功能(Function)字段已定义处理该C-SID所属节点的E-C-SID,说明该节点已配置了扩展压缩标识(即扩展压缩分段标识E-C-SID),相应的,分段列表中该C-SID的下一个压缩分段标识(即当前待处理的压缩分段标识)即为E-C-SID。
如前所述,E-C-SID包括单一E-C-SID或组合E-C-SID,单一E-C-SID包括一个功能字段,组合E-C-SID包括多个功能字段,各功能字段用于分别实现同一功能的不同部分。
在一些实施例中,如图5所示,其为本公开实施例提供的业务处理方法的一种流程示意图,获取E-C-SID的功能字段的内容,并执行该内容定义的操作(即步骤22),可包括步骤31~步骤33。
在步骤31中,判断E-C-SID是否为组合E-C-SID,若是,则执行步骤32;否则,执行步骤33。
在一些实施例中,若满足以下d-f条件之一,则认为E-C-SID为组合E-C-SID。
条件d:E-C-SID所属节点的C-SID中预设第一长度字段的值大于或等于2,第一长度字段用于表示所属节点的E-C-SID的长度,长度为单一E-C-SID长度的倍数。
条件e:E-C-SID中预设第二长度字段的值大于或等于2,第二长度字段用于表示本E-C-SID的长度,长度为单一E-C-SID长度的倍数。例如,若单一E-C-SID的长度为32bits,E-C-SID包括4-bit的第二数量长度字段,分段列表中当前待处理的压缩分段标识为图3c所示的E-C-SID,其长度为64bits,是单一E-C-SID长度(32bits)的2倍,因此第二长度字段的值为2,因此,该E-C-SID为组合E-C-SID。
条件f:E-C-SID中预设第三标志字段的值为表示不是所属节点的最后一个E-C-SID。也就是说,若第三标志字段的值表示其为所属节点的最后一个E-C-SID,则说明该E-C-SID为单一E-C-SID;若第 三标志字段的值表示其不是所属节点的最后一个E-C-SID,则说明该E-C-SID为组合E-C-SID。
在步骤32中,获取E-C-SID的各功能字段的内容,组合各功能字段的内容,并执行组合后的内容定义的操作。
在本步骤中,若判断出分段列表中当前待处理的压缩分段标识为E-C-SID,且为组合E-C-SID,则分别获取该组合E-C-SID的各个功能字段的内容,将获取到的内容组合,确定并执行组合后的内容所定义的操作。
在步骤33中,获取E-C-SID的功能字段的内容,并执行该内容定义的操作。
在本步骤中,若判断出分段列表中当前待处理的压缩分段标识为E-C-SID,且为单一E-C-SID,则获取该单一E-C-SID的功能字段的内容,并执行该内容所定义的操作。
本公开实施例提供的分段路由头压缩方法和业务处理方法可以应用于uSID场景和C-SID场景。为了清楚描述本公开实施例的方案,以下分别结合uSID场景和C-SID场景,对本公开实施例的方案进行详细说明。
图6a为本公开实施例提供的uSID场景下的一种网络拓扑图,图6b为图6a中IPv6报文头中DA的一种示意图。如图6a和6b所示的uSID场景,采用uSID方案进行分段路由头压缩。在uSID场景下,将SRH中分段标识的128bits划分为一个uSID block和多个uSID。uSID block为共同前缀,每个uSID表示一个节点或邻接。uSID block和uSID可均采用16bits,业务报文每经过一个节点时,可通过uSID移位与uSID block组合形成新的DA。
在本实施例中,可通过压缩分段标识中第一标志字段的值区分C-SID和E-C-SID。具体地,如图3a所示,压缩分段标识的长度为16bits,C-SID和E-C-SID的区别在于首位(即第一标志字段),该位的值为0时表示C-SID,为1时表示E-C-SID。
如图6a所示,A、B、C、D、E、F为SR域的网络节点,创建一个A-B-E-F-D的SRv6隧道(如图6a中箭头所示)。规划uSID Block 为0010,在节点A/B/C/D/E/F分别配置C-SID为000A/000B/000C/000D/000E/000F,这些C-SID在通过IGP协议扩散后,分别安装在所有节点的全局路由表中。节点D还配置有值为FF88的E-C-SID,该E-C-SID安装在节点D的本地分段标识表中。
节点A生成SRv6隧道,采用uSID压缩格式,其IPv6头中的DA为:10:B:E:F:D:FF88::。在节点D的E-C-SID中定义End操作,实现网络编程处理。
业务处理流程如下:节点A生成分段列表后,将业务报文转发到下一跳节点B。节点B从接收到的业务报文的SRH中获取分段列表,判断出分段列表中有未处理的压缩分段标识,通过移位获取下一个压缩分段标识,判断出当前待处理的压缩分段标识为C-SID(即节点E的C-SID),根据该C-SID的指示,将业务报文转发到下一跳节点E。节点E从接收到的业务报文的SRH中获取分段列表,判断出分段列表中有未处理的压缩分段标识,通过移位获取下一个压缩分段标识,判断出当前待处理的压缩分段标识为C-SID(即节点F的C-SID),根据该C-SID的指示,将业务报文转发到下一跳节点F。节点F从接收到的业务报文的SRH中获取分段列表,判断出分段列表中有未处理的压缩分段标识,通过移位获取下一个压缩分段标识,判断出当前待处理的压缩分段标识为C-SID(即节点D的C-SID),根据该C-SID的指示操作之后,判断出分段列表中有未处理的压缩分段标识,通过移位获取下一个压缩分段标识,判断出当前待处理的压缩分段标识为E-C-SID(即节点D的E-C-SID),获取该节点D的E-C-SID的功能字段的内容,并执行相应操作,此时,分段列表中没有未处理的SID,业务处理流程结束。
在本实施例中,可以将原本需要4*128bits的分段列表压缩在一个128-bit的DA中,实现了SRv6的分段路由头压缩,同时提供了网络编程能力。需要说明的是,虽然本实施例中,网络编程能力仅体现在SRv6隧道尾节点(节点D),但在隧道中间点也可以实现网络编程能力。
图7a为本公开实施例提供的C-SID场景下的一种网络拓扑图, 图7b为图7a中采用单一E-C-SID的SRH的一种示意图。如图7a和7b所示的C-SID场景,采用C-SID方案进行分段路由头压缩。在C-SID场景下,将压缩分段标识分为共同前缀部分和节点/邻接标识部分,但压缩分段标识的共同前缀只体现在IPv6的DA中,在SRH中只携带压缩后的节点/邻接标识部分。业务报文每经过一个节点时,取SRH中相应的压缩头(C-SID)替换DA中的相应位。为实现编程能力,在C-SID的末尾放置一个128-bit的压缩分段标识。
在本实施例中,通过在已配置E-C-SID的节点的C-SID中设置功能字段,用于定义处理本C-SID所属节点的E-C-SID。具体地,如图3b所示,采用32-bit的压缩分段标识长度,定义C-SID中前16bits为定位符字段(Locator),后16bits为功能字段(Function)。此处为方便表述,按16bits|16bits来划分,实际应用中定位符字段通常占更多位,比如采用20bits|12bits的划分方式。E-C-SID定义前16bits为功能字段(Function),后16bits为参数字段(Argument),此处也是为便于表述的划分方式,实际可按需灵活划分。
如图7a所示,A、B、C、D、E、F为SR域的网络节点,创建一个A-B-E-F-D的SRv6隧道(如图7a中箭头所示)。规划SR域的共同前缀为2001,在节点A/B/C/D/E/F分别配置C-SID为A:0/B:0/C:0/D:0/E:0/F:0,这些C-SID通过IGP协议扩散后,分别安装在所有节点的全局路由表中。在节点F的C-SID中定义一个新的End操作:End.XF,表示需要处理E-C-SID。另外,在节点F配置值为FA:88的E-C-SID(单一E-C-SID),该E-C-SID安装在节点F的本地分段标识表中,实现本地的一个业务链功能。
节点A生成SRv6隧道,采用C-SID压缩格式,其SRH如图7b所示。原有的C-SID压缩方案定义的End操作不变,通常为用当前SL(Segments Left)指针指向的C-SID替换DA中的末尾32bits,如果最后一个C-SID为128bits,则直接替换整个DA。
业务处理流程如下:节点A生成分段列表后,将业务报文转发到下一跳节点B。节点B从接收到的业务报文的SRH中获取分段列表, 判断出分段列表中有未处理的压缩分段标识,通过将SL减1获取下一个压缩分段标识,判断出当前待处理的压缩分段标识为C-SID(即节点E的C-SID),根据该C-SID的指示,将业务报文转发到下一跳节点E。节点E从接收到的业务报文的SRH中获取分段列表,判断出分段列表中有未处理的分段标识,通过将SL减1获取下一个压缩分段标识,判断出当前待处理的压缩分段标识为C-SID(即节点F的C-SID),根据该C-SID的指示,将业务报文转发到下一跳节点F。节点F从接收到的业务报文的SRH中获取分段列表,判断出分段列表中有未处理的压缩分段标识,通过将SL减1获取下一个压缩分段标识,判断出当前待处理的压缩分段标识为E-C-SID(即节点F的E-C-SID),获取该E-C-SID的功能字段的内容,并执行该内容定义的操作。节点F判断出分段列表中有未处理的压缩分段标识,通过将SL减1获取下一个压缩分段标识,判断出当前待处理的压缩分段标识为C-SID(即节点D的C-SID),根据该C-SID的指示,将业务报文转发到下一跳节点D。节点D从接收到的业务报文的SRH中获取分段列表,判断出分段列表中没有未处理的压缩分段标识,流程结束。
在本实施例中,可以将原本需要4*128bits的分段列表压缩为5*32bits,实现了SRv6的分断路由头压缩,同时提供了网络编程能力。
在图7a和图7b所示的C-SID场景下,也可以采用组合E-C-SID实现编程,以实现更复杂的编码功能,其中组合E-C-SID的格式可如图3c所示,可以包含2个32bits,其中,前4bits为第一长度字段,用于表示本组合E-C-SID的长度,即32bits的倍数;最后16bits表示参数字段,中间其余位表示功能字段。
在本实施例中,节点A生成SRv6隧道,采用C-SID压缩格式,其SRH如图7c所示,其为图7a中采用组合E-C-SID的SRH的一种示意图。节点A、B、E、D的业务处理流程均与前一实施例的单一E-C-SID的业务处理流程相同,区别仅在于节点F分别获取节点F的E-C-SID的两个功能字段(即28bits和16bits)的内容,对内容进行组合之后,执行组合后的内容所定义的操作。
基于相同的技术构思,本公开实施例还提供一种分段路由头压缩装置,如图8所示,其为本公开实施例提供的分段路由头压缩装置的一种结构示意图。分段路由头压缩装置可包括配置模块101、生成模块102和处理模块103。
配置模块101可被配置为,为分段路由路径上各节点配置C-SID,并为分段路由路径上的至少部分节点额外配置E-C-SID,E-C-SID至少包括功能字段。
生成模块102可被配置为生成包括C-SID和E-C-SID的分段列表;在分段列表中,E-C-SID紧邻并位于所属节点的C-SID之后。
处理模块103可被配置为将分段列表携带在业务报文的SRH中。
在一些实施例中,E-C-SID还可包括参数字段。
在一些实施例中,E-C-SID可为单一E-C-SID或组合E-C-SID,单一E-C-SID包括一个功能字段,组合E-C-SID包括多个功能字段,且各功能字段用于分别实现同一功能的不同部分。
在一些实施例中,C-SID和E-C-SID可包括用于表示为C-SID或E-C-SID的第一标志字段。
在一些实施例中,业务报文的SRH可包括用于表示分段列表内的各压缩分段标识为C-SID或E-C-SID的第二标志字段。
在一些实施例中,已配置E-C-SID的节点的C-SID可包括功能字段,C-SID的功能字段用于定义处理本C-SID所属节点的E-C-SID。
在一些实施例中,C-SID可包括用于表示所属节点的E-C-SID长度的第一长度字段,该长度为单一E-C-SID长度的倍数。
在一些实施例中,E-C-SID可包括用于表示本E-C-SID长度的第二长度字段,该长度为单一E-C-SID长度的倍数。
在一些实施例中,E-C-SID可包括用于表示是否为所属节点最后一个E-C-SID的第三标志字段。
基于相同的技术构思,本公开实施例还提供一种业务处理装置,应用于分段路由路径的节点,分段路由路径上各节点配置有C-SID,分段路由路径上至少部分节点还额外配置有E-C-SID,E-C-SID至少包括功能字段。如图9所示,其为本公开实施例提供的业务处理装置 的一种结构示意图,业务处理装置可包括获取模块201和处理模块202。
获取模块201可被配置为从接收到的业务报文的SRH中获取分段列表,其中,分段列表包括C-SID和E-C-SID,E-C-SID紧邻并位于所属节点的C-SID之后。
处理模块202可被配置为,若分段列表中当前待处理的压缩分段标识为E-C-SID,则获取E-C-SID的功能字段的内容,并执行该内容定义的操作。
在一些实施例中,处理模块202可被配置为,若满足以下条件之一,则确定分段列表中当前待处理的压缩分段标识为E-C-SID:当前待处理的压缩分段标识中预设第一标志字段的值为表示E-C-SID的标志;业务报文的SRH中预设第二标志字段的值为表示当前待处理的压缩分段标识是E-C-SID的标志;分段列表中上一个处理的C-SID的功能字段已定义处理所属节点的E-C-SID。
在一些实施例中,E-C-SID可为单一E-C-SID,单一E-C-SID包括一个功能字段。处理模块202可被配置为,若E-C-SID为单一E-C-SID,则获取单一E-C-SID的功能字段的内容,并执行该内容定义的操作。
在一些实施例中,E-C-SID可为组合E-C-SID,组合E-C-SID包括多个功能字段,各功能字段用于分别实现同一功能的不同部分。处理模块202可被配置为,若E-C-SID为组合E-C-SID,则获取组合E-C-SID的各功能字段的内容,组合各功能字段的内容,并执行组合后的内容定义的操作。
在一些实施例中,处理模块202可被配置为,若满足以下条件之一,则确定E-C-SID为组合E-C-SID:E-C-SID所属节点的C-SID中预设第一长度字段的值大于或等于2,第一长度字段用于表示所属节点的E-C-SID的长度,该长度为单一E-C-SID长度的倍数;E-C-SID中预设第二长度字段的值大于或等于2,第二长度字段用于表示本E-C-SID的长度,该长度为单一E-C-SID长度的倍数;E-C-SID中预设第三标志字段的值表示不是所属节点的最后一个E-C-SID。
本公开实施例还提供了一种计算机设备,该计算机设备包括:一个或多个处理器以及存储装置;其中,存储装置上存储有一个或多个程序,当上述一个或多个程序被上述一个或多个处理器执行时,使得上述一个或多个处理器实现上述任一实施例提供的分段路由头压缩方法。
本公开实施例还提供了一种计算机设备,该计算机设备包括:一个或多个处理器以及存储装置;其中,存储装置上存储有一个或多个程序,当上述一个或多个程序被上述一个或多个处理器执行时,使得上述一个或多个处理器实现上述任一实施例提供的业务处理方法。
本公开实施例还提供了一种计算机可读介质,其上存储有计算机程序,其中,该计算机程序被执行时实现上述任一实施例提供的分段路由头压缩方法。
本公开实施例还提供了一种计算机可读介质,其上存储有计算机程序,其中,该计算机程序被执行时实现上述任一实施例提供的业务处理方法。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存 储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
本文已经公开了示例实施例,并且虽然采用了具体术语,但它们仅用于并仅应当被解释为一般说明性含义,并且不用于限制的目的。在一些实例中,对本领域技术人员显而易见的是,除非另外明确指出,否则可单独使用与特定实施例相结合描述的特征、特性和/或元素,或可与其他实施例相结合描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解,在不脱离由所附的权利要求阐明的本发明的范围的情况下,可进行各种形式和细节上的改变。
Claims (14)
- 一种分段路由头压缩方法,包括:为分段路由路径上的各节点配置普通压缩分段标识,并为所述分段路由路径上的至少一个节点配置扩展压缩分段标识,所述至少一个节点的所述扩展压缩分段标识至少包括功能字段;生成包括各节点的普通压缩分段标识和所述至少一个节点的所述扩展压缩分段标识的分段列表;在所述分段列表中,所述至少一个节点的所述扩展压缩分段标识紧邻并位于所述至少一个节点的普通压缩分段标识之后;以及将所述分段列表携带在业务报文的分段路由头中。
- 如权利要求1所述的方法,其中,所述至少一个节点的所述扩展压缩分段标识还包括参数字段。
- 如权利要求1或2所述的方法,其中,所述至少一个节点的所述扩展压缩分段标识为单一扩展压缩分段标识或组合扩展压缩分段标识;其中,所述单一扩展压缩分段标识包括一个功能字段;以及所述组合扩展压缩分段标识包括多个功能字段,且所述多个功能字段用于分别实现同一功能的不同部分。
- 如权利要求1所述的方法,其中,任一压缩分段标识包括:第一标志字段,所述第一标志字段用于表示所述任一压缩分段标识为普通压缩分段标识或扩展压缩分段标识;或者所述业务报文的所述分段路由头包括:第二标志字段,所述第二标志字段用于表示所述分段列表内的任一压缩分段标识为普通压缩分段标识或扩展压缩分段标识;或者所述至少一个节点的所述普通压缩分段标识包括:用于定义处理所述至少一个节点的所述扩展压缩分段标识的功能字段。
- 如权利要求1所述的方法,其中,所述至少一个节点的所述普通压缩分段标识包括:第一长度字段;所述第一长度字段用于表示所述至少一个节点的所述扩展压缩分段标识的第一长度,且所述第一长度为单一扩展压缩分段标识的长度的倍数;或者所述至少一个节点的所述扩展压缩分段标识包括:第二长度字段;所述第二长度字段用于表示所述至少一个节点的所述扩展压缩分段标识的第二长度,且所述第二长度为单一扩展压缩分段标识的长度的倍数;或者所述至少一个节点的所述扩展压缩分段标识包括:第三标志字段;所述第三标志字段用于表示所述至少一个节点的所述扩展压缩分段标识是否为所述至少一个节点的最后一个扩展压缩分段标识。
- 一种业务处理方法,应用于分段路由路径的节点,包括:从接收到的业务报文的分段路由头中获取分段列表;其中,所述分段列表包括所述分段路由路径的各节点配置的普通压缩分段标识和至少一个节点配置的扩展压缩分段标识,且所述至少一个节点配置的扩展压缩分段标识紧邻并位于所述至少一个节点配置的普通压缩分段标识之后;以及响应于确定所述分段列表中的当前待处理的压缩分段标识为扩展压缩分段标识,获取所述扩展压缩分段标识的功能字段的内容,并执行所述内容定义的操作。
- 如权利要求6所述的方法,其中,确定所述当前待处理的压缩分段标识为所述扩展压缩分段标识,包括:响应于确定满足以下条件之一,确定所述当前待处理的压缩分段标识为所述扩展压缩分段标识:所述当前待处理的压缩分段标识中的预设第一标志字段的值为表示扩展压缩分段标识的标志;所述业务报文的所述分段路由头中的预设第二标志字段的值为表示所述当前待处理的压缩分段标识是扩展压缩分段标识的标志;以及所述分段列表中的已处理的普通压缩分段标识的功能字段定义处理所述已处理的普通压缩分段标识所属的节点的扩展压缩分段标识;其中,在所述分段列表中,所述已处理的普通压缩分段标识紧邻并位于所述当前待处理的压缩分段标识之前。
- 如权利要求6所述的方法,其中,所述扩展压缩分段标识包括单一扩展压缩分段标识,所述单一扩展压缩分段标识包括一个功能字段;以及获取所述扩展压缩分段标识的所述功能字段的所述内容,并执行所述内容定义的操作,包括:响应于确定所述扩展压缩分段标识为所述单一扩展压缩分段标识,获取所述单一扩展压缩分段标识的所述一个功能字段的内容,并执行所述一个功能字段的所述内容定义的操作。
- 如权利要求6所述的方法,其中,所述扩展压缩分段标识包括组合扩展压缩分段标识,所述组合扩展压缩分段标识包括多个功能字段,所述多个功能字段用于分别实现同一功能的不同部分;以及获取所述扩展压缩分段标识的所述功能字段的所述内容,并执行所述内容定义的操作,包括:响应于确定所述扩展压缩分段标识为所述组合扩展压缩分段标识,获取所述组合扩展压缩分段标识的所述多个功能字段的内容,组合所述多个功能字段的所述内容,并执行组合后的内容定义的操作。
- 如权利要求9所述的方法,还包括:响应于确定满足以下条件之一,确定所述扩展压缩分段标识为所述组合扩展压缩分段标识:所述扩展压缩分段标识所属的节点的普通压缩分段标识中的预设第一长度字段的值大于或等于2,所述第一长度字段用于表示所述 扩展压缩分段标识的第一长度,所述第一长度为单一扩展压缩分段标识的长度的倍数;所述扩展压缩分段标识中的预设第二长度字段的值大于或等于2,所述第二长度字段用于表示所述扩展压缩分段标识的第二长度,所述第二长度为单一扩展压缩分段标识的长度的倍数;以及所述扩展压缩分段标识中的预设第三标志字段的值表示所述扩展压缩分段标识不是所述扩展压缩分段标识所属的节点的最后一个扩展压缩分段标识。
- 一种分段路由头压缩装置,包括配置模块、生成模块和处理模块,其中:所述配置模块被配置为,为分段路由路径上的各节点配置普通压缩分段标识,并为所述分段路由路径上的至少一个节点配置扩展压缩分段标识,所述至少一个节点的所述扩展压缩分段标识至少包括功能字段;所述生成模块被配置为,生成包括各节点的普通压缩分段标识和所述至少一个节点的所述扩展压缩分段标识的分段列表;在所述分段列表中,所述至少一个节点的所述扩展压缩分段标识紧邻并位于所述至少一个节点的普通压缩分段标识之后;以及所述处理模块被配置为,将所述分段列表携带在业务报文的分段路由头中。
- 一种业务处理装置,应用于分段路由路径的节点,包括获取模块和处理模块,其中:所述获取模块被配置为,从接收到的业务报文的分段路由头中获取分段列表;其中,所述分段列表包括所述分段路由路径的各节点配置的普通压缩分段标识和至少一个节点配置的扩展压缩分段标识,且所述至少一个节点配置的扩展压缩分段标识紧邻并位于所述至少一个节点配置的普通压缩分段标识之后;以及所述处理模块被配置为,响应于确定所述分段列表中的当前待 处理的压缩分段标识为扩展压缩分段标识,获取所述扩展压缩分段标识的功能字段的内容,并执行所述内容定义的操作。
- 一种计算机设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1-5任一项所述的分段路由头压缩方法或如权利要求6-10任一项所述的业务处理方法。
- 一种计算机可读介质,其上存储有计算机程序,其中,所述程序被执行时实现如权利要求1-5任一项所述的分段路由头压缩方法或如权利要求6-10任一项所述的业务处理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP21785071.8A EP4135274A4 (en) | 2020-04-07 | 2021-04-06 | METHOD FOR COMPRESSING SEGMENT ROUTING HEADERS, SERVICE PROCESSING METHOD AND APPARATUS, COMPUTER APPARATUS AND COMPUTER READABLE MEDIUM |
US17/917,580 US20230145372A1 (en) | 2020-04-07 | 2021-04-06 | Segment routing header compression method and apparatus, service processing method and apparatus, computer device and computer-readable medium |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010266043.X | 2020-04-07 | ||
CN202010266043.XA CN113497760B (zh) | 2020-04-07 | 2020-04-07 | 分段路由头压缩方法、业务处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021204129A1 true WO2021204129A1 (zh) | 2021-10-14 |
Family
ID=77995538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/085734 WO2021204129A1 (zh) | 2020-04-07 | 2021-04-06 | 分段路由头压缩方法及装置、业务处理方法及装置、计算机设备及计算机可读介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230145372A1 (zh) |
EP (1) | EP4135274A4 (zh) |
CN (1) | CN113497760B (zh) |
WO (1) | WO2021204129A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115362661B (zh) * | 2020-04-16 | 2024-05-17 | 华为技术有限公司 | 对用于分段路由的具有不同大小的分段进行混合 |
CN116489237A (zh) * | 2022-01-13 | 2023-07-25 | 大唐移动通信设备有限公司 | 数据包处理方法、装置及网络设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109688057A (zh) * | 2018-12-13 | 2019-04-26 | Ut斯达康通讯有限公司 | 基于ipv6的段路由网络的报文转发方法及装置 |
US20190260657A1 (en) * | 2018-02-21 | 2019-08-22 | Cisco Technology, Inc. | In-band performance loss measurement in ipv6/srv6 software defined networks |
CN110557329A (zh) * | 2018-05-30 | 2019-12-10 | 中兴通讯股份有限公司 | 一种报文转发的方法、装置和节点 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9537769B2 (en) * | 2013-03-15 | 2017-01-03 | Cisco Technology, Inc. | Opportunistic compression of routing segment identifier stacks |
CN109218189B (zh) * | 2017-07-03 | 2022-04-29 | 中兴通讯股份有限公司 | 跨域的路径的标识信息的确定方法、装置及存储介质 |
US10404600B2 (en) * | 2017-09-12 | 2019-09-03 | Google Llc | Mechanism and apparatus for path protection when using compressed segment routing label stacks |
CN108429685B (zh) * | 2018-04-28 | 2020-08-04 | 电子科技大学 | 一种基于分段路由技术的服务功能链寻路方法 |
CN110266594B (zh) * | 2019-06-28 | 2021-07-30 | Ut斯达康通讯有限公司 | 跨网络切片的分段路由转发方法及装置 |
-
2020
- 2020-04-07 CN CN202010266043.XA patent/CN113497760B/zh active Active
-
2021
- 2021-04-06 WO PCT/CN2021/085734 patent/WO2021204129A1/zh unknown
- 2021-04-06 US US17/917,580 patent/US20230145372A1/en active Pending
- 2021-04-06 EP EP21785071.8A patent/EP4135274A4/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190260657A1 (en) * | 2018-02-21 | 2019-08-22 | Cisco Technology, Inc. | In-band performance loss measurement in ipv6/srv6 software defined networks |
CN110557329A (zh) * | 2018-05-30 | 2019-12-10 | 中兴通讯股份有限公司 | 一种报文转发的方法、装置和节点 |
CN109688057A (zh) * | 2018-12-13 | 2019-04-26 | Ut斯达康通讯有限公司 | 基于ipv6的段路由网络的报文转发方法及装置 |
Non-Patent Citations (1)
Title |
---|
See also references of EP4135274A4 * |
Also Published As
Publication number | Publication date |
---|---|
EP4135274A1 (en) | 2023-02-15 |
EP4135274A4 (en) | 2023-10-18 |
CN113497760A (zh) | 2021-10-12 |
US20230145372A1 (en) | 2023-05-11 |
CN113497760B (zh) | 2024-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111147383B (zh) | 报文转发的方法、发送报文的装置和接收报文的装置 | |
CN111628995B (zh) | 基于SRv6的SID压缩方法、装置、设备及存储介质 | |
WO2021179732A1 (zh) | 报文封装方法、报文转发方法、通告方法、电子设备、和存储介质 | |
US20200274798A1 (en) | Segment Routing Network Processing of Packets including Packets having a Segment Identifier Structure Providing Processing and/or Memory Efficiencies | |
CN113259238B (zh) | 分段标识的处理方法及设备 | |
EP3742685B1 (en) | Packet processing method and device | |
EP3780517B1 (en) | Method and apparatus for processing multicast data packet | |
WO2021204129A1 (zh) | 分段路由头压缩方法及装置、业务处理方法及装置、计算机设备及计算机可读介质 | |
US20230188463A1 (en) | Data packet processing method and device | |
CN109714274B (zh) | 一种获取对应关系的方法和路由设备 | |
CN111988266B (zh) | 一种处理报文的方法 | |
US20230370298A1 (en) | Message header processing method and apparatus, storage medium and electronic device | |
CN114553638A (zh) | 一种通信方法、设备和系统 | |
WO2021151381A1 (zh) | 分段标识的处理方法及设备 | |
WO2021197141A1 (zh) | 业务处理方法、装置、设备及存储介质 | |
WO2022184169A1 (zh) | 报文转发方法、系统、存储介质及电子装置 | |
US20220263760A1 (en) | Method, apparatus, and device for load balancing in bit index explicit replication network | |
CN113542118B (zh) | 分段路由头压缩方法、业务处理方法及装置 | |
CN114726775B (zh) | 一种路由信息发送方法、报文发送方法及相关装置 | |
CN113765800A (zh) | 传输报文的方法、装置、系统、设备及可读存储介质 | |
WO2023029627A1 (zh) | 报文转发方法、装置、设备及存储介质 | |
CN115515253A (zh) | 单o-ru与双o-du的通信连接方法及系统 | |
CN115499366A (zh) | 报文传输方法以及装置 | |
JP2019009773A (ja) | 情報伝送方法、装置及び電子機器 | |
EP4214914B1 (en) | First node, second node, and methods performed thereby for configuring handling of two or more ingress member flows |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21785071 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2021785071 Country of ref document: EP Effective date: 20221107 |