WO2023284774A1 - Procédé de traitement de message et appareil associé - Google Patents

Procédé de traitement de message et appareil associé Download PDF

Info

Publication number
WO2023284774A1
WO2023284774A1 PCT/CN2022/105410 CN2022105410W WO2023284774A1 WO 2023284774 A1 WO2023284774 A1 WO 2023284774A1 CN 2022105410 W CN2022105410 W CN 2022105410W WO 2023284774 A1 WO2023284774 A1 WO 2023284774A1
Authority
WO
WIPO (PCT)
Prior art keywords
sid
node
message
field
segment
Prior art date
Application number
PCT/CN2022/105410
Other languages
English (en)
Chinese (zh)
Inventor
杜芳芳
平善明
薛奇
方晟
Original Assignee
华为技术有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2023284774A1 publication Critical patent/WO2023284774A1/fr

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/34Source routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/14Routing performance; Theoretical aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/06Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]

Definitions

  • the present application relates to the technical field of communications, and in particular to a message processing method and a related device.
  • the segment routing (segment routing, SR) node is based on the segment routing traffic engineering policy of Internet Protocol Version 6-Segment Routing (IPv6SR or SRv6).
  • IPv6SR or SRv6 Internet Protocol Version 6-Segment Routing
  • SR-TE Policy provides a flexible way to select forwarding paths, which can meet different forwarding requirements of users.
  • rational use of SR-TE Policy to select the forwarding path will not only facilitate the management and planning of the network by managers, but also effectively reduce the forwarding pressure on network devices.
  • SRv6TE FRR SRv6 intermediate node protection
  • intermediate nodes have important functions, for example, the intermediate node is responsible for security protection or responsible for billing. If the message bypasses the SID corresponding to the above-mentioned intermediate node with important functions, it will have a serious adverse impact on the business.
  • the embodiment of the present application proposes a message processing method, including:
  • the first node obtains the first message, the first message includes a plurality of segment identifiers (segment id, SID) arranged in sequence, and the plurality of segment identifiers are used to indicate the forwarding path of the first message, so
  • the plurality of SIDs includes a first SID and a second SID, and the first SID is arranged before the second SID.
  • the fact that the first SID is arranged before the second SID may mean that the forwarding path of the message needs to pass through the first SID first, and then pass through the second SID.
  • the remaining segment (segment left, SL) pointer first points to the first SID, and then points to the second SID.
  • the first packet first arrives at the node corresponding to the first SID, and then the first packet arrives at the node corresponding to the second SID;
  • the first node determines that the first SID is unreachable. For example, when the first node detects a failure of the first SID, the first node determines that the first SID is unreachable. Alternatively, when the first node fails to find a route according to the first SID, the first node determines that the first SID is unreachable.
  • the first node determines whether the first SID is allowed to be bypassed according to a first field corresponding to the first SID, and the first field is included in the first message;
  • the first node determines that the second SID is reachable
  • the first node forwards the first packet according to the second SID.
  • the first packet is discarded. To avoid the continuation of abnormal business.
  • the first field is located in a segment routing header (segment routing header, SRH) of the first packet.
  • segment routing header segment routing header
  • the first field is included in an optional tag length value Optional TLV field in the SRH, where the value part in the Optional TLV indicates whether one or more SIDs are allowed to be Bypass.
  • the value part in the optional TLV includes 8 bits, and when the SRH includes 5 SIDs, 5 bits in the 8 bits correspond to the 5 SIDs respectively.
  • the SID corresponding to the bit is not allowed to be bypassed; when the value of the bit is "0", the SID corresponding to the bit is allowed to be bypassed. It can be understood that when the value of a bit is "1", the SID corresponding to the bit is not allowed to be bypassed; when the value of the bit is empty, the SID corresponding to the bit is allowed to be bypassed.
  • the first field is located in the first SID. That is, each SID includes a field, which indicates whether the SID is allowed to be bypassed.
  • the first field is located in the parameter args field of the first SID.
  • the first field is located in any unused bit in the args field of the first SID.
  • the first field is the last bit in the parameter args field of the first SID.
  • the SID corresponding to the bit is not allowed to be bypassed; when the value of the bit is "0", the SID corresponding to the bit is allowed to be bypassed.
  • the first packet includes at least one segment list (segment list), where the segment list includes the first SID and the second SID.
  • the first packet includes multiple segment lists, where the multiple segment lists include a first segment list and a second segment list.
  • the first-segment list includes a first SID
  • the second-segment list includes a second SID.
  • the arrangement order of the first segment list is before the second segment list, and the first message first arrives at the node corresponding to the SID in the first segment list, and secondly arrives at the node corresponding to the SID in the second segment list.
  • the first packet includes an outer Internet Protocol version 6 IPv6 header and an inner IPv6 header
  • the first segment list is included in the outer IPv6 header
  • the first A two-segment list is included in the inner IPv6 header.
  • the first SID or the second SID includes service chain SFC path information.
  • a service classifier node Service classifier, SC
  • SC Service classifier node
  • the first SID or the second SID includes service chain path information, so that the first message is forwarded along the service chain path.
  • the embodiment of the present application proposes a message processing method, including:
  • the second node encapsulates the data message to obtain the first message, the first message includes a plurality of segment identifiers SID arranged in sequence, and the plurality of segment identifiers are used to indicate the Forwarding paths, the multiple SIDs include a first SID and a second SID, the first SID is arranged before the second SID,
  • the first message includes a first field corresponding to the first SID, and the first field is used to indicate whether the first SID is bypassed.
  • the second node may learn which SIDs are allowed to be bypassed and which SIDs are not allowed to be bypassed according to static configuration (for example, command line configuration).
  • the second node may also learn which SIDs are allowed to be bypassed and which SIDs are not allowed to be bypassed by receiving the control message from the controller.
  • special fields are used to mark which segment identification SIDs are allowed to be bypassed, and which SIDs are not allowed to be bypassed.
  • SID segment identification SIDs
  • SID is unreachable
  • the SID is bypassed and directly jumps to the subsequent SID to forward the message, thereby ensuring that the message must pass through the corresponding SID with important functions. middle node. To ensure the normal execution of business.
  • the second node receives a control packet from the controller, where the control packet carries indication information, and the indication information is used to indicate whether the first SID is allowed to be bypassed;
  • the second node determines the value of the first field according to the indication information in the control packet. For example, if the indication information in the control node indicates that the first node is not allowed to be bypassed, then the second node encapsulates the data message to obtain the first message. In the first message, the value of the first field is "1". A value of "1" for the first field indicates that the first SID is not allowed to be bypassed.
  • control message is a Path Computation Element Communication Protocol (Path Computation Element Communication Protocol, PCEP) message, or the control message is a Border Gateway Protocol (Border Gateway Protocol, BGP) message.
  • PCEP Path Computation Element Communication Protocol
  • BGP Border Gateway Protocol
  • the indication information is located in the segment of type B in the control message-sub-mark length value Type B Segment Sub- TLVs.
  • the indication information is located in the unused bits of the Flags field of the Type-B segment-sub-flag length value.
  • the indication information is located in a reserved field of the Flags field of the Type-B segment-sub-flag length value.
  • the indication information is located in the Internet Protocol Version 6 section routing-explicit routing object subsection of the control message. Object SRv6-ERO Subobject field.
  • the indication information is located in unused bits of the Flags field of the SRv6-ERO Subobject field.
  • the indication information is located in a reserved field of the SRv6-ERO Subobject field.
  • the embodiment of the present application proposes a message processing method, including:
  • the controller sends a control message to the second node, where the control message carries indication information, and the indication information is used to indicate whether the first SID is allowed to be bypassed, so that the second node performs data processing according to the indication information.
  • the segment list of the first message includes the first SID, and the first message also includes a first field determined according to the indication information, and the first field is used to indicate the Whether the above-mentioned first SID is bypassed.
  • the controller may send a control message to the second node, where the control message is used to notify the second node which SIDs are allowed to be bypassed and which SIDs are not allowed to be bypassed.
  • special fields are used to mark which segment identification SIDs are allowed to be bypassed, and which SIDs are not allowed to be bypassed. Therefore, when the SID is normal, the forwarding path of the message carrying the SID must pass through the SID, thereby ensuring that the message must pass through the intermediate node with important functions corresponding to the SID. To ensure the normal execution of business.
  • control message is a PCEP message of the Path Computation Element Communication Protocol, or the control message is a Border Gateway Routing Protocol BGP message.
  • the indication information is located in the segment of type B in the control message-sub-mark length value Type B Segment Sub- TLVs.
  • the indication information is located in the unused bits of the Flags field of the Type-B segment-sub-flag length value.
  • the indication information is located in a reserved field of the type B segment-submark length value.
  • the indication information is located in the Internet Protocol Version 6 section routing-explicit routing object subsection of the control message. Object SRv6-ERO Subobject field.
  • the indication information is located in unused bits of the Flags field of the SRv6-ERO Subobject field.
  • the indication information is located in a reserved field of the SRv6-ERO Subobject field.
  • the embodiment of the present application proposes a network device, including:
  • a transceiver module configured to obtain a first message, the first message includes a plurality of segment identifiers SIDs arranged in sequence, the plurality of segment identifiers are used to indicate the forwarding path of the first message, and the plurality of segment identifiers are used to indicate the forwarding path of the first message.
  • the SID includes a first SID and a second SID, the first SID is arranged before the second SID;
  • a processing module configured to determine that the first SID is unreachable
  • the processing module is further configured to determine whether the first SID is allowed to be bypassed according to the first field corresponding to the first SID, and the first field is included in the first message;
  • the processing module is further configured to determine that the second SID is reachable when the first SID is allowed to be bypassed;
  • the transceiver module is further configured to forward the first message according to the second SID.
  • the processing module is further configured to discard the first packet when the first SID is not allowed to be bypassed.
  • the first field is located in a segment routing header SRH of the first packet.
  • the first field is included in an optional tag length value Optional TLV field in the SRH, where the value part in the Optional TLV indicates whether one or more SIDs are allowed to be Bypass.
  • the first field is located in the first SID.
  • the first field is located in the parameter args field of the first SID.
  • the first field is the last bit in the parameter args field of the first SID.
  • the first packet includes at least one segment list, where the segment list includes the first SID and the second SID.
  • the first message includes multiple segment lists, where the multiple segment lists include a first segment list and a second segment list, and the first segment list includes the first segment list A SID, the second segment list includes the second SID.
  • the first packet includes an outer Internet Protocol version 6 IPv6 header and an inner IPv6 header
  • the first segment list is included in the outer IPv6 header
  • the first A two-segment list is included in the inner IPv6 header.
  • the first SID or the second SID includes service chain SFC path information.
  • the embodiment of the present application proposes a network device, including:
  • a processing module configured to perform encapsulation processing on the data message to obtain a first message, the first message includes a plurality of segment identifiers SIDs arranged in sequence, and the plurality of segment identifiers are used to indicate that the first message A forwarding path of the text, the multiple SIDs include a first SID and a second SID, and the first SID is arranged before the second SID,
  • the first message includes a first field corresponding to the first SID, and the first field is used to indicate whether the first SID is bypassed.
  • the transceiver module is configured to receive a control message from the controller, where the control message carries indication information, and the indication information is used to indicate whether the first SID is allowed to be bypassed;
  • the processing module is further configured to determine the value of the first field according to the indication information in the control message.
  • control message is a PCEP message of the Path Computation Element Communication Protocol, or the control message is a Border Gateway Routing Protocol BGP message.
  • the indication information is located in the segment of type B in the control message-sub-mark length value Type B Segment Sub- TLVs.
  • the indication information is located in the unused bits of the Flags field of the Type-B segment-sub-flag length value.
  • the indication information is located in a reserved field of the Flags field of the Type-B segment-sub-flag length value.
  • the indication information is located in the Internet Protocol Version 6 section routing-explicit routing object subsection of the control message. Object SRv6-ERO Subobject field.
  • the indication information is located in unused bits of the Flags field of the SRv6-ERO Subobject field.
  • the indication information is located in a reserved field of the SRv6-ERO Subobject field.
  • the embodiment of the present application proposes a network device, including:
  • a transceiver module configured to send a control message to the second node, where the control message carries indication information, and the indication information is used to indicate whether the first SID is allowed to be bypassed, so that the second node according to the indication
  • the information encapsulates the data message, the segment list of the first message includes the first SID, and the first message also includes a first field determined according to the indication information, and the first field uses to indicate whether the first SID is bypassed.
  • control message is a PCEP message of the Path Computation Element Communication Protocol, or the control message is a Border Gateway Routing Protocol BGP message.
  • the indication information is located in the segment of type B in the control message-sub-mark length value Type B Segment Sub- TLVs.
  • the indication information is located in the unused bits of the Flags field of the Type-B segment-sub-flag length value.
  • the indication information is located in a reserved field of the type B segment-submark length value.
  • the indication information is located in the Internet Protocol Version 6 section routing-explicit routing object subsection of the control message. Object SRv6-ERO Subobject field.
  • the indication information is located in unused bits of the Flags field of the SRv6-ERO Subobject field.
  • the indication information is located in a reserved field of the SRv6-ERO Subobject field.
  • a network device including a processor and a communication interface; the processor is configured to execute instructions, so that the network device executes the method according to any implementation manner of the first aspect.
  • a network device which includes a processor and a communication interface; the processor is configured to execute instructions, so that the network device executes the method in any implementation manner of the second aspect.
  • a ninth aspect provides a network device, which includes a processor and a communication interface; the processor is configured to execute instructions, so that the network device executes the method in any implementation manner of the third aspect.
  • a communication system includes the network device according to the fourth aspect, the network device according to the fifth aspect, and the network device according to the sixth aspect.
  • a communication system includes the network device of the seventh aspect, the network device of the eighth aspect, and the network device of the ninth aspect.
  • a twelfth aspect of the present application provides a computer storage medium, which may be non-volatile; computer-readable instructions are stored in the computer storage medium, and when the computer-readable instructions are executed by a processor, the first A method in any implementation manner of the aspect, the second aspect, or the third aspect.
  • the thirteenth aspect of the present application provides a computer program product containing instructions, which, when run on a computer, cause the computer to execute the method in any one of the implementation manners of the first aspect, the second aspect, or the third aspect.
  • a fourteenth aspect of the present application provides a chip system, which includes a processor, configured to support a network device to implement the functions involved in the above aspect, for example, send or process the data and/or information involved in the above method.
  • the chip system further includes a memory, and the memory is used for storing necessary program instructions and data of the network device.
  • the system-on-a-chip may consist of chips, or may include chips and other discrete devices.
  • Figure 3b is a schematic diagram of a segment list field
  • FIG. 4 is a schematic diagram of a SID field
  • FIG. 5 is a schematic diagram of a scenario of the ISIS protocol
  • FIG. 6 is a schematic diagram of an embodiment of a message processing method proposed in an embodiment of the present application.
  • FIG. 7 is a schematic structural diagram of a segment-sub-mark length value of type B.
  • Fig. 9 is a schematic diagram of the structure of the IP version 6 segment routing-explicit routing object sub-object
  • FIG. 10 is a schematic diagram of an application scenario proposed by the embodiment of the present application.
  • FIG. 11 is a schematic structural diagram of a message header in an embodiment of the present application.
  • FIG. 12 is a schematic diagram of another scenario proposed by the embodiment of the present application.
  • FIG. 15 is a schematic structural diagram of a network device 1500 provided in an embodiment of the present application.
  • FIG. 17 is a schematic structural diagram of a network device 1700 provided in an embodiment of the present application.
  • FIG. 18 is a schematic diagram of a network system 1800 proposed by an embodiment of the present application.
  • FIG. 19 is a schematic diagram of a network system 1900 proposed by an embodiment of the present application.
  • the naming or numbering of the steps in this application does not mean that the steps in the method flow must be executed in the time/logic sequence indicated by the naming or numbering.
  • the execution order of the technical purpose is changed, as long as the same or similar technical effect can be achieved.
  • the division of units presented in this application is a logical division. In actual application, there may be other division methods. For example, multiple units can be combined or integrated in another system, or some features can be ignored. , or not, in addition, the shown or discussed mutual coupling or direct coupling or communication connection may be through some interfaces, and the indirect coupling or communication connection between units may be electrical or other similar forms, this Applications are not limited.
  • the units or subunits described as separate components may or may not be physically separated, may or may not be physical units, or may be distributed into multiple circuit units, and some or all of them may be selected according to actual needs unit to realize the purpose of the application scheme.
  • Segment routing It is a protocol designed based on the concept of source routing to forward data packets in the network. SR divides the network path into segments, and assigns segment identifiers (segment id, SID) to these segments and network nodes. By arranging the SIDs in an orderly manner, a segment list (SID List, also known as SID in SR-MPLS) can be obtained. Called label stack), SID List can indicate a forwarding path.
  • SID List also known as SID in SR-MPLS
  • the data packet will first be forwarded to the node corresponding to SID1, then forwarded to the node corresponding to SID2, and then forwarded 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 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.
  • the network device supporting 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 policy corresponding to the SID in the local segment identifier table is used to execute the operation corresponding to the policy.
  • the data packet can be forwarded from the outgoing interface corresponding to the SID; if the destination address of the data packet If there is no longest match with each SID in the local segment identification table, then check the IPv6 forwarding table again, and perform longest matching forwarding according to the IPv6 forwarding table.
  • Segment routing header An IPv6 packet is composed of IPv6 standard header + extension header (0...n) + payload.
  • SRH extension header a new IPv6 extension header is added, called the SRH extension header.
  • This extension header specifies an IPv6 explicit path and stores IPv6 Segment List information. Its function is the same as that of the Segment in SR MPLS. List same.
  • the head node adds an SRH extension header to the IPv6 message, and the intermediate node can forward it according to the path information contained in the SRH extension header.
  • Segment List in the form of an IPv6 address, which is similar to label stack information in a multi-protocol label switching (MPLS) network, organized by The Segment List composed of multiple segment identifiers (segment id, SID) arranged to indicate the explicit path in SR; the other is the remaining segment (segment left, SL), SL is a pointer, used to indicate the current segment logo.
  • SID segment identifiers
  • the value of the DA field of the IPv6 message is constantly changing, and its value is determined by the SL and the Segment List.
  • the pointer SL points to a segment currently to be processed, such as pointing to the Segment List[2]
  • the IPv6 address of Segment List[2] needs to be copied to the DA field.
  • the node can decrement SL by 1 after receiving the message, and shift the pointer to A new segment, and copy the corresponding segment identifier (that is, the IPv6 address format) after SL minus one to the DA field, and then forward the message to the next node.
  • the node can pop out the SRH message header, and then process the message in the next step. If the node does not support SR, then there is no need to process the SRH information in the IPv6 message, and it only needs to search the IPv6 routing table according to 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 node (headend), a color identifier (color), a destination identifier (endpoint), and a segment identifier list indicating a forwarding path.
  • Headend is used to identify the head node that executes SR Policy
  • Color is used to associate SR with business attributes, such as low latency, high bandwidth and other business attributes, to summarize the service capabilities of the SR Policy
  • Endpoint is used to identify Destination address of SR Policy.
  • an SR Policy is determined by (headend, color, endpoint). For the same headend, it can also determine a Policy through (color, endpoint).
  • SR policy can include one or more segment identification lists to achieve load balancing, multi-path backup and other functions.
  • head node When the head node forwards a message, it can determine the segment identification 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 identification list into the message to display or disperse the indication path .
  • Routing prefix composed of IP address and subnet mask.
  • the length of the subnet mask can be 128 bits, or less than 128 bits.
  • the routing prefix can be written as: A1::1/32 or A1::1/128, where A1::1 is an IP address, and 32 or 128 indicates the length of the subnet mask.
  • Segment routing traffic engineering intermediate node protection (segment routing IPv6 traffic engineering fast reroute, SRv6TE FRR): in the segment routing traffic engineering policy (segment routing traffic engineering policy, sR-TE) based on Internet Protocol Version 6 (IPv6) Policy), the upstream node of the intermediate node (midpoint) can replace the intermediate node to complete the processing of the forwarding message, and this upstream node can be called a proxy forwarding (proxy forwarding) node.
  • IPv6 Internet Protocol Version 6
  • FIG. 1 is a schematic diagram of a communication system in which an intermediate node fails.
  • a message is sent from node A, passes through node B, node D, and node E in sequence, and reaches node F, as shown by the dotted arrow in Figure 1 .
  • the intermediate node D fails.
  • the upstream node B (proxy forwarding node) of the intermediate node D can perceive the interface failure of the next hop (intermediate node D) of the message, then the node B modifies the parameters in the message so that the message bypasses the faulty node D , go through node C and node E, and reach node F, as shown by the solid arrow in Figure 1.
  • the specific process is as follows:
  • Node A forwards the message to the destination node F, and specifies to pass through the intermediate node D in the SR extended message header (segment routing header, SRH) of the message.
  • SR extended message header segment routing header
  • FIG. 2 is an example diagram of a message format in an embodiment of the present application.
  • the format of the message may include but not limited to three parts.
  • the first part is the IPv6 message header 201, and this part includes a version field, which is used to indicate the IPv6 protocol version corresponding to the message.
  • the next header (next header) field is used to indicate the type of the next header.
  • the value of the next-level packet header field is 43, which means that the next-level packet header of the IPv6 packet header 201 is SRH.
  • the source address (source address) field is used to indicate the source address of the packet.
  • the destination address (destination address) field is used to indicate the destination address of the packet.
  • the segment list (segment list) field is used to carry the information of the intermediate node or the information of the destination node that the message needs to pass through. It is understandable that Segment List[0] is generally the information of the destination node. It is understandable that the node can first read the value of SL, and then read the corresponding Segment List according to the value of SL. Exemplarily, if the node reads that the value of SL is 1, the node will read Segment List[1].
  • the cooperation of SL and Segment List in the message can make the next intermediate node that the current message needs to reach be updated through the change of SL during the forwarding process of the message.
  • the third part is the type length value (tag length value, TLV), and TLV is an optional (optional) variable (variable) in the SRH header.
  • the fourth part is IPv6 message payload (IPv6 payload) 204, which is used to carry the data of the message.
  • the message actually includes some existing fields, which are omitted in the embodiment of the present application for brief description, and will not be repeated here.
  • the message may also include other fields to implement other functions, which is not limited in this embodiment of the present application.
  • Figure 3a is one of the schematic diagrams of the segment list field.
  • the Segment List is generally 128 bits, and the embodiment of this application uses 128 bits as an example for description.
  • the field of the SID is also 128 bits, and the Segment List of this line is a SID.
  • Fig. 3b is the second schematic diagram of the segment list field.
  • the SID field only needs 32 bits, then the row Segment List can include 4 SIDs. It is understandable that when there are not up to 4 compressed SIDs in the actual situation (for example, only 3 SIDs are included in a row of Segment List), the corresponding position can be left blank. null.
  • the segment list includes a non-compressed segment identifier (segment id, SID) or includes multiple compressed SIDs.
  • SID segment id
  • the position of the SID can be determined through a SID index (sid index, SI) parameter and SL.
  • SI SID index
  • Fig. 4 is a schematic diagram of the SID field.
  • an uncompressed SID field may include three parts, a location identifier (locator) field, a function (function) field, and a variable (args) field.
  • the Locator field includes the common prefix part (common prefix) and the device identification part (nodeid)
  • the Function field is used to indicate the functions supported by the node
  • the Args field can be used to implement custom functions or carry some parameters.
  • the compressed SID Compared with the uncompressed SID, the compressed SID generally omits the common prefix part and the parameter part, so that the length of the SID is reduced to 32 bits.
  • the compressed format may use a generalized segment identifier (generalized segment identifier, G-SID), or other compressed formats, which are not limited in this embodiment of the present application.
  • Fig. 1 when node A sends a message (message state 1), the destination address of the IPv6 part in the message is 4::, indicating that the next intermediate node of the message is node D.
  • the device identifier of the first SID in the SRH part is 6::, indicating that the destination node of the message is node F, and the device identifier of the second SID is 4::, indicating that the message is designated to pass through the intermediate node D.
  • node B After node B processes the message into state 2, node B establishes a path from the message to node F according to the state 2 message.
  • the cost of the path B-D-E-F is 30 (except for special marks, the cost between each node is 10), and the cost of the path B-C-E-F is 1020. Therefore, for node B, the primary next hop of the destination address 6:: is still node D.
  • node A deletes the routing forwarding entry to node D, so when node A forwards according to 4:: table lookup, it cannot hit Routing, at this time, node A will act as a proxy forwarding node to perform proxy forwarding behavior, SL is reduced by 1, and the lower layer SID 6:: is updated to the outer IPv6 packet header, and then forwarded to node B according to the destination address 6:: table lookup .
  • node B If node B completes the convergence, it forwards the packet to node F according to the shortest path after convergence; if node B does not complete the convergence, it forwards the packet to node F through the backup path according to the TI-LFA process. In the above manner, the faulty node D is bypassed.
  • IPv6-based segment routing traffic engineering intermediate node protection segment routing IPv6 traffic engineering fast reroute, SRv6TE FRR.
  • segment routing IPv6 traffic engineering fast reroute SRv6TE FRR.
  • ISIS intermediate system to intermediate system
  • Figure 5 is a schematic diagram of the scenario of the ISIS protocol.
  • ISIS n domain includes node Acc1, node Acc2, node Acc3 and node Acc4;
  • ISIS m domain includes node P11, node P12, node P13 and node P14.
  • ISIS n domain and ISIS m domain include node Agg1 and node Agg2, wherein, node Acc2 is connected with node P11 through node Agg1, and node Acc2 is connected with node P12 through node Agg2.
  • This scenario also includes edge node PE1 and edge node PE2.
  • the node Acc1 is the head node, and the stack corresponding to the SRv6 policy (SRv6Policy) of the node Acc1 is ⁇ BSID2, PE1 ⁇ .
  • the IPv6 header is called the outer layer IPv6 header of the message, and the header indicates that the final destination of the message is the node PE1, and the next-hop node of the message is the node Agg1.
  • node Agg1 When the packet arrives at node Agg1, node Agg1 processes the packet as follows: Node Agg1 acts as the bonding node "BSID2" and attaches the new SRv6 policy to the packet.
  • the stack corresponding to the new SRv6 policy is ⁇ P11, P13 ⁇
  • the outer IPv6 header indicates that the nodes that the message needs to pass through are: nodes P11 and P13.
  • the inner layer IPv6 header indicates that the destination of the message is the node PE1.
  • the node P11 uses the segment identifier "P13" to search for a route, it finds that the outgoing interface of the route is down (down), and triggers TE-FRR. Since the segment identification in the outer IPv6 header has been processed at this time, it is necessary to jump to the inner IPv6 header and use the segment identification included in the inner IPv6 header to search for a route. For example, use "VPNSID1" in the inner IPv6 header to look up routes. Complete packet forwarding.
  • the above TE-FRR is called the TE-FRR technology across IPv6 headers.
  • the intermediate node is responsible for security protection or responsible for billing.
  • the SID corresponding to the above-mentioned nodes with important functions is allowed to be bypassed by default.
  • node D in FIG. 1 has important functions. If the node D fails, the forwarding path of the message does not include the SID corresponding to the node D.
  • the node P11 in FIG. 5 has an important function, and if the node P11 fails, the forwarding path of the message does not include the SID corresponding to the node P11. Therefore, if the message bypasses the SID corresponding to the above-mentioned intermediate node with important functions, it will have a serious adverse impact on the business.
  • an embodiment of the present application proposes a packet processing method.
  • the embodiments of the present application will be described in detail below.
  • FIG. 6 is a schematic diagram of an embodiment of a message processing method proposed in an embodiment of the present application.
  • a message processing method proposed in the embodiment of the present application includes:
  • the first node acquires the first packet.
  • the first node is an intermediate node.
  • the first node obtains the first message from the second node, and the second node is the head node.
  • the first packet is a packet obtained by encapsulating the data packet by the second node. It can be understood that the first packet may also be a packet obtained by encapsulating other packets by the second node, such as a bare IPv6 packet or a policy packet, etc., which is not limited here.
  • the first packet includes multiple segment identifiers SIDs, where the multiple SIDs are used to indicate a forwarding path of the first packet. For example, if the multiple SIDs include: SID1, SID2, and SID3, then the multiple SIDs indicate that the forwarding path of the first message is SID1 to SID2 to SID3.
  • the multiple SIDs include a first SID and a second SID, wherein the first SID is arranged before the second SID. That is, the forwarding path of the message needs to pass through the first SID first, and then pass through the second SID. Alternatively, the remaining segment (segment left, SL) pointer first points to the first SID, and then points to the second SID. Alternatively, the first packet first arrives at the node corresponding to the first SID, and the first packet next arrives at the node corresponding to the second SID.
  • the first packet includes at least one segment list (segment list), where the segment list includes the first SID and the second SID.
  • segment list includes the first SID and the second SID.
  • the segment list in addition to the first SID and the second SID, the segment list also includes multiple SIDs, such as the third SID, etc., as shown in Table 1-2:
  • the first packet includes multiple segment lists, where the multiple segment lists include a first segment list and a second segment list.
  • the first-segment list includes a first SID
  • the second-segment list includes a second SID.
  • the arrangement order of the first segment list is before the second segment list, and the first message first arrives at the node corresponding to the SID in the first segment list, and secondly arrives at the node corresponding to the SID in the second segment list.
  • the first segment list may include multiple SIDs
  • the second segment list may include multiple SIDs.
  • the first segment list includes: the first SID and the third SID, etc.
  • the second segment list includes: Second SID and fourth SID etc.
  • the first list is shown in Table 2-1
  • the second list is shown in Table 2-2:
  • the first message includes a first list and a second list, and the first list shown in Table 2-1 above and the second list shown in Table 2-2 are included in the first message
  • the order of arrangement is: the first segment list is before the second segment list, the first message first arrives at the node corresponding to the SID in the first segment list (such as the first SID), and then arrives at the node corresponding to the SID in the second segment list ( For example the second SID).
  • the first packet may also include more segment lists, which is not limited here.
  • the first packet includes an outer IPv6 header and an inner IPv6 header. Then, the first segment list is included in the outer layer IPv6 header, and the second segment list is included in the inner layer IPv6 header.
  • each SID is allowed to be bypassed can be determined in multiple ways. Exemplarily, the SID corresponding to the "End.as" node is not allowed to be bypassed.
  • the second node may configure whether each SID is allowed to be bypassed through command line configuration (or called static configuration).
  • command line configuration or called static configuration
  • it can be configured in the form of Table 3.
  • the first SID is "index 10 sid ipv6 2002:DB8:300::333", and the first SID is not allowed to be bypassed.
  • the second node may receive a control packet from the controller, where the control packet carries indication information.
  • the indication information indicates whether the first SID is allowed to be bypassed, so that the second node encapsulates the data packet according to the indication information, the segment list of the first packet includes the first SID, and the first packet also It includes a first field determined according to the indication information, where the first field is used to indicate whether the first SID is bypassed.
  • the second node determines the value of the first field according to the indication information in the control message. For example, if the indication information in the control node indicates that the first node is not allowed to be bypassed, then the second node encapsulates the data message to obtain the first message. In the first packet, the value of the first field is "1". A value of "1" for the first field indicates that the first SID is not allowed to be bypassed.
  • control message is a Path Computation Element Communication Protocol (PCEP) message
  • PCEP Path Computation Element Communication Protocol
  • BGP Border Gateway routing protocol
  • the indication information is located in the Type B segment-sub-label length value (Type B Segment Sub-TLV) in the control message. This indication indicates whether the SID in the Type B Segment Sub-TLV field is allowed to be bypassed.
  • the control message is a BGP SRv6Policy message, and the controller sends the SRv6Policy to the second node through the control message.
  • Type B Segment Sub-TLV is a schematic diagram of the structure of the segment-submark length value of type B.
  • Type B Segment Sub-TLV includes version (type) field, length (length) field, flags (flags) field, reserved (reserved) field, SRv6SID field, and, SRv6 node behavior and SID structure (SRv6endpoint behavior and SID structure) field .
  • the indication information may be located in the tag field.
  • FIG. 8 is a schematic structural diagram of the Flags field.
  • bits 0-3 in the flag field are V, A, S, and B fields respectively. Therefore, the indication information may be located in unused bits of the flag field, such as any one of the 4th to 7th bits.
  • the indication information is located in the last bit of the flag field, that is, the seventh bit.
  • the seventh bit When the value of the seventh bit is "1", it indicates that the SID of the Type B Segment Sub-TLV field (that is, the first SID) is not allowed to be bypassed; when the value of the seventh bit is "0", it indicates that the Type B Segment Sub-TLV field is not allowed to be bypassed; The SID (i.e. the first SID) of the B Segment Sub-TLV field is allowed to be bypassed.
  • the indication information may be located in a reserved field.
  • the indication information is located in any unused bit of the reserved field in the Type B Segment Sub-TLV field.
  • the indication information is located in the Internet Protocol Version 6 Segment Routing-Explicit Routing Object Subobject (SRv6-ERO Subobject) in the control message.
  • the indication information indicates whether the SID in the SRv6-ERO Subobject field is allowed to be bypassed.
  • the path computation element server path computation element server, PCE Server
  • PCE Server path computation element server
  • PCC path computation client
  • FIG. 9 is a schematic structural diagram of a sub-object of an IP version 6 segment routing-explicit routing object.
  • SRv6-ERO Subobject includes L field, version (type) field, length (length) field, NT field, flags (flags) field, V field, T field, F field, S field, reserved (reserved) field, SRv6 node behavior (SRv6endpoint behavior) field, SID structure (SID structure) field, SRv6SID field, NAI field and SID structure field.
  • the indication information may be located in the tag field.
  • the indication information may be located in unused bits of the flag field.
  • the indication information may be located in a reserved field.
  • the indication information is located in any unused bit of the reserved field in the SRv6-ERO Subobject field.
  • the first node determines that the first SID is unreachable.
  • the first node after the first node obtains the first packet, the first node detects whether the first SID is reachable.
  • the first node determines that the first SID is unreachable.
  • the first node fails to find a route according to the first SID, the first node determines that the first SID is unreachable.
  • the first node determines that the first SID is unreachable.
  • the first node when the first node detects that the link corresponding to the first SID is faulty through bidirectional forwarding detection (bidirectional forwarding detection, BFD), the first node determines that the first SID is unreachable.
  • bidirectional forwarding detection BFD
  • the first node determines whether the first SID is allowed to be bypassed according to the first field corresponding to the first SID.
  • the first node determines whether the first SID is allowed to be bypassed according to the first field corresponding to the first SID.
  • the first SID includes one SID as an example for description. It can be understood that when the first SID includes multiple SIDs, the multiple bits in the first field correspond to the multiple SIDs respectively.
  • a new field is defined in the first packet, and the newly defined field indicates whether each SID in the first packet is allowed to be bypassed.
  • the first message includes: the first SID, the second SID, the third SID and the fourth SID as an example, as shown in Table 4:
  • Each bit in the above newly defined field uniquely corresponds to a SID, wherein the value of each bit indicates whether the corresponding SID is allowed to be bypassed. For example: a value of "0" indicates that the corresponding SID is allowed to be bypassed, and a value of "1" indicates that the corresponding SID is not allowed to be bypassed. It can be understood that, in another manner, a value of "1” indicates that the corresponding SID is allowed to be bypassed, and a value of "0” indicates that the corresponding SID is not allowed to be bypassed.
  • the field corresponding to the first SID among the newly defined fields is called the first field.
  • the first node When the first SID is unreachable, the first node further reads the first field corresponding to the first SID, and judges whether the first SID is allowed to be bypassed.
  • the first node when the first node detects that the first SID is reachable, the first node may not read the first field. To shorten the processing time of the message.
  • a new field is defined in the first packet, and the newly defined field indicates which SIDs in the first packet are not allowed to be bypassed.
  • the first message includes: a first SID, a second SID, a third SID and a fourth SID as an example, as shown in Table 5:
  • the first node After the first node determines that a certain SID is unreachable, it further reads whether the newly defined field includes the SID, and if so, the SID is not allowed to be bypassed. If the newly defined field does not include the SID, the SID is allowed to be bypassed.
  • a new field is defined in the first packet, and the newly defined field indicates which SIDs in the first packet are allowed to be bypassed.
  • the first message includes: a first SID, a second SID, a third SID and a fourth SID as an example, as shown in Table 6:
  • the first node After the first node determines that a certain SID is unreachable, it further reads whether the newly defined field includes the SID, and if not, the SID is not allowed to be bypassed. If the newly defined field includes the SID, the SID is allowed to be bypassed.
  • the first field is located in a segment routing header (segment routing header, SRH) of the first packet.
  • segment routing header segment routing header
  • the first field is included in an optional tag length value (optional TLV) field in the SRH, wherein the value part (value) in the optional TLV indicates whether one or more SIDs are bypassed.
  • optional tag length value optional TLV
  • the value part in the optional TLV includes 8 bits, and when the SRH includes 5 SIDs, 5 bits in the 8 bits correspond to the 5 SIDs respectively.
  • the SID corresponding to the bit is not allowed to be bypassed; when the value of the bit is "0", the SID corresponding to the bit is allowed to be bypassed. It can be understood that when the value of a bit is "1", the SID corresponding to the bit is not allowed to be bypassed; when the value of the bit is empty, the SID corresponding to the bit is allowed to be bypassed.
  • the first field is located in the first SID. That is, each SID includes a field, which indicates whether the SID is allowed to be bypassed.
  • the first field is located in the parameters (args) field of the first SID.
  • the first field is located in any unused bit in the args field of the first SID.
  • the first field is located in the last bit of the args field of the first SID.
  • the SID corresponding to the bit is not allowed to be bypassed; when the value of the bit is "0", the SID corresponding to the bit is allowed to be bypassed.
  • the first SID is not allowed to be bypassed, and the first packet is discarded.
  • the first node discards the first packet.
  • step 604 is an optional step, and when the first SID is not allowed to be bypassed, the first node may also back up the first message, which is not limited here.
  • the first SID is allowed to be bypassed, and the first node forwards the first packet according to the second SID.
  • the first node forwards the first message according to the second SID. Specifically, the first node determines the forwarding path of the first message according to the second SID in the first message that is arranged after the first SID.
  • the first packet first arrives at the node corresponding to the first SID, and secondly arrives at the node corresponding to the second SID.
  • the SIDs included in the SL list in the first message are "SID1", “SID2", “SID3” and "SID4".
  • the first node determines that SID2 is unreachable and SID2 is allowed to be bypassed
  • the first node forwards the first message according to SID3 and SID4 that are arranged after SID2.
  • the first node deflects the SL pointer to SID3, and checks whether SID3 is reachable. If reachable, forward the first packet to SID3; if not reachable, further check whether SID3 is allowed to be bypassed, if allowed, deflect the SL pointer to SID4, and check whether SID4 is reachable, and so on.
  • the first segment list of the first message is included in the outer layer IPv6 header, and the first segment list includes the first SID;
  • the second segment list includes In the layer IPv6 header, the second segment list includes the second SID.
  • the first node Since the first SID is the last SID of the outer IPv6 header at this time, the first node needs to determine the first packet according to the inner IPv6 header. The forwarding path of the text. If it is not allowed, that is, the first field corresponding to the first SID indicates that the first SID is not allowed to be bypassed, the first node discards the first packet.
  • special fields are used to mark which segment identification SIDs are allowed to be bypassed, and which SIDs are not allowed to be bypassed. Therefore, when the SID is normal, the forwarding path of the message carrying the SID must pass through the SID, thereby ensuring that the message must pass through the intermediate node with important functions corresponding to the SID. To ensure the normal execution of business.
  • FIG. 10 is a schematic diagram of an application scenario proposed by the embodiment of the present application.
  • the application scenario includes a first node, a second node, an edge node, and a controller controlling the first node and the second node.
  • the second node is the head node
  • the first node is the intermediate node
  • the first node includes: the node corresponding to SID0, the node corresponding to SID1, the node corresponding to SID2, the node corresponding to SID3, the node corresponding to SID4, and the node corresponding to SID5 node.
  • the second node receives a control packet from the controller.
  • the control information included in the control message indicates that SID3 is not allowed to be bypassed, that is, the node corresponding to SID3 is not allowed to be bypassed.
  • the second node obtains the data packet, and encapsulates the data packet to obtain the first packet.
  • the packet header of the first packet is shown in FIG. 11 , and FIG. 11 is a schematic structural diagram of a packet header in an embodiment of the present application.
  • the first field corresponding to SID3 in the packet header indicates that the SID3 is not allowed to be bypassed (that is, the first SID is not allowed to be bypassed).
  • the second node forwards the first message to the next-hop node (the node corresponding to SID5), and so on.
  • the node corresponding to SID4 detects whether the next-hop node (SID3) indicated by the segment list in the first message is reachable. If SID3 is unreachable, the first node checks whether the SID3 is allowed to be bypassed (that is, checks the first field corresponding to SID3). If SID3 is not allowed to be bypassed, the node corresponding to SID4 discards the first packet.
  • SID3 is allowed to be bypassed (that is, the first SID is allowed to be bypassed). Then the node corresponding to SID4 continues to detect whether the next hop node (the node corresponding to SID2) in the segment list is reachable (the second SID is SID2). If SID2 is reachable, then the node corresponding to SID4 forwards the first message to the node corresponding to SID2 according to the SID2, that is, the node corresponding to SID3 forwards the first message according to the second SID (SID2) (forwarding the node corresponding to SID2) first message).
  • SID2 the node corresponding to SID2
  • SID2 forwards the first message according to the second SID (SID2) (forwarding the node corresponding to SID2) first message).
  • the first node checks whether the SID2 is allowed to be bypassed (that is, checks the first field corresponding to SID2). If SID2 is allowed to be bypassed, the node corresponding to SID4 continues to check whether the next hop node (node corresponding to SID1) in the segment list is reachable. If SID1 is reachable, the node corresponding to SID4 forwards the first packet to the node corresponding to SID1.
  • FIG. 12 is a schematic diagram of another scenario proposed by the embodiment of the present application.
  • the application scenario includes a first node, a second node, an edge node, and a controller controlling the first node and the second node.
  • the second node is the head node
  • the first node is the intermediate node
  • the first node includes: the node corresponding to SID1, the node corresponding to SID2, the node corresponding to SID3, the node corresponding to SID4, the node corresponding to SID5, the node corresponding to SID6 , and the node corresponding to SID7.
  • the node corresponding to SID5, the node corresponding to SID6, and the node corresponding to SID7 belong to the ISIS n domain
  • the node corresponding to SID1, the node corresponding to SID2, the node corresponding to SID3 and the node corresponding to SID4 belong to the ISIS m domain.
  • the first SID is SID5 as an example for description.
  • the second node receives the control message from the controller.
  • the control information included in the control message indicates that SID5 is not allowed to be bypassed, that is, the node corresponding to SID5 is not allowed to be bypassed.
  • the second node obtains the data packet, and encapsulates the data packet to obtain the first packet.
  • the packet header of the first packet is shown in FIG. 13 , and FIG. 13 is a schematic structural diagram of a packet header in an embodiment of the present application.
  • the SIDs included in the outer IPv6 header are: SID5, SID6, and SID7; the SIDs included in the inner IPv6 header are: SID1, SID2, SID3, and SID4.
  • the first packet is firstly forwarded along the path indicated by the outer IPv6 header, and secondly forwarded along the path indicated by the inner IPv6 header.
  • the first field corresponding to SID5 in the packet header indicates that the SID5 is not allowed to be bypassed.
  • the second node forwards the first message to the next-hop node (the node corresponding to SID7), and so on.
  • the node corresponding to SID6 detects whether the next-hop node (the node corresponding to SID5) indicated in the segment list in the first message is reachable. If SID5 is unreachable (the first SID is unreachable), the first node checks whether the SID5 is allowed to be bypassed (that is, checks the first field corresponding to SID5). If SID5 is not allowed to be bypassed, the node corresponding to SID6 discards the first packet.
  • the SID6 node detects whether the next-hop node (the node corresponding to SID4) in the segment list of the inner layer IPv6 header is reachable (the second SID is SID4). If SID4 is reachable, the node corresponding to SID6 forwards the first message to the node corresponding to SID4 (that is, forwards the first message according to the second SID).
  • the packet processing method proposed in the embodiment of the present application may also be applied to a service function chain (service function chain, SFC) scenario.
  • SFC service function chain
  • Business chain technology is a technology that provides orderly services to the application layer.
  • SFC is used to logically connect the services on the network device to form an orderly service combination. Specifically, by adding service chain path information to the original message, the message will pass through the specified path sequentially.
  • FIG. 14 is a schematic diagram of another scenario proposed by the embodiment of the present application. In Fig.
  • the service chain scenario includes: a second node, the second node is used as a service classifier node (Service classifier, SC); a first node, the first node is used as a service function forwarder node (service function forwarder, SFF), specifically,
  • the first node includes: service forwarding node 1, service forwarding node 2 and service forwarding node 3; tail node (tail end).
  • the service classification node After the second node receives the data message, that is, after the service classification node receives the data message, the service classification node encapsulates the service chain path information in the message to generate the first message.
  • the service chain path information can be encapsulated in the SRH header, which includes the SID of the service function node (service function, SF), such as the SID of the SFF1 node (service forwarding node 1), the SID of the SFF2 node, and the SID of the SFF3 node. SID.
  • the above SID includes service chain path information.
  • the SRH header also includes a first field, which indicates whether the corresponding SID is allowed to be bypassed. For some SFF nodes, which have important functions, for example, the SFF2 node is a firewall or a traffic accounting unit, then the SFF2 node is not allowed to be bypassed.
  • the following introduces the network device in the embodiment of the present application, and the network device introduced in the following has any function of the first node, the second node or the controller in the foregoing method embodiment.
  • FIG. 15 is a schematic structural diagram of a network device 1500 provided in the embodiment of the present application.
  • the network device 1500 includes: a transceiver module 1501 for performing step 601 or 605; a processing module 1502 for performing step 602 , 603 or 604.
  • the network device 1500 may correspond to the first node, the second node or the controller in the above method embodiments, and each unit in the network device 1500 and the above-mentioned other operations and/or functions are to realize the first node, the second node or the controller in the method embodiments respectively.
  • each unit in the network device 1500 and the above-mentioned other operations and/or functions are to realize the first node, the second node or the controller in the method embodiments respectively.
  • the various steps and methods implemented by the second node or the controller reference may be made to the foregoing method embodiments for specific details, and details are not repeated here for brevity.
  • the network device 1500 When the network device 1500 processes packets, it only uses the division of the above-mentioned functional modules as an example for illustration. In practical applications, the above-mentioned function allocation can be completed by different functional modules according to needs, that is, the internal structure of the network device 1500 is divided into different function modules to complete all or part of the functions described above.
  • the network device 1500 provided in the above embodiment is based on the same idea as the method in the above embodiment corresponding to FIG. 1 or FIG. 14 , and its specific implementation process is detailed in the above method embodiment, and will not be repeated here.
  • FIG. 16 is a schematic structural diagram of a network device 1600 provided in an embodiment of the present application.
  • the network device 1600 shown in FIG. 16 shows some specific features, those skilled in the art will realize from the embodiments of the present application that for the sake of brevity, various other features are not shown in FIG. Further relevant aspects of the embodiments disclosed in the application examples.
  • the network device 1600 includes one or more processing units (eg, CPU) 1601, a network interface 1602, a programming interface 1603, a memory 1604, and one or more communication buses 1605 for Interconnect the various components.
  • the network device 1600 may also omit or add some functional components or units based on the foregoing examples.
  • the network interface 1602 is used to connect with one or more other network devices/servers in the network system.
  • communication bus 1605 includes circuitry that interconnects and controls communication between system components.
  • Memory 1604 may include nonvolatile memory, for example, read-only memory (read-only memory, ROM), programmable read-only memory (programmable ROM, PROM), erasable programmable read-only memory (erasable PROM, EPROM) , Electrically Erasable Programmable Read-Only Memory (electrically EPROM, EEPROM) or flash memory.
  • Memory 1604 may also include volatile memory, which may be random access memory (RAM), which acts as an external cache.
  • the network device 1600 may have any function of the first node, the second node, or the controller in the method embodiments corresponding to FIGS. 1-14 above.
  • the network device 1600 corresponds to the first node, the second node or the controller in the above-mentioned method embodiments, and each module in the network device 1600 and the above-mentioned other operations and/or functions are respectively to realize the first node in the above-mentioned method embodiments
  • each module in the network device 1600 and the above-mentioned other operations and/or functions are respectively to realize the first node in the above-mentioned method embodiments
  • FIGS. 1-14 For specific details of various steps and methods implemented by a node, a second node, or a controller, refer to the method embodiments corresponding to the foregoing FIGS. 1-14 , and for brevity, details are not repeated here.
  • the network interface 1602 on the network device 1600 can complete the data sending and receiving operation, or the processor can call the program code in the memory, and cooperate with the network interface 1602 to realize the function of the sending and receiving unit when necessary .
  • the network device 1600 is configured to execute the packet processing method provided in the embodiment of the present application, for example, execute the packet processing method corresponding to the above embodiments shown in FIGS. 1-14 .
  • the specific structure of the network device described in FIG. 16 of this application may be as shown in FIG. 17 .
  • FIG. 17 is a schematic structural diagram of a network device 1700 provided in an embodiment of the present application.
  • the network device 1700 includes: a main control board 1710 and an interface board 1730 .
  • the main control board 1710 is also called a main processing unit (main processing unit, MPU) or a route processor (route processor). , equipment maintenance, protocol processing functions.
  • the main control board 1710 includes: a CPU 1711 and a memory 1712 .
  • the interface board 1730 is also called a line processing unit (line processing unit, LPU), a line card (line card), or a service board.
  • the interface board 1730 is used to provide various service interfaces and implement data packet forwarding. Service interfaces include but are not limited to Ethernet interfaces, POS (Packet over SONET/SDH) interfaces, etc.
  • the interface board 1730 includes: a central processing unit 1731 , a network processor 1732 , a forwarding entry storage 1734 and a physical interface card (physical interface card, PIC) 1733 .
  • the CPU 1731 on the interface board 1730 is used to control and manage the interface board 1730 and communicate with the CPU 1711 on the main control board 1710 .
  • the network processor 1732 is configured to implement message forwarding processing.
  • the form of the network processor 1732 may be a forwarding chip.
  • the physical interface card 1733 is used to implement the interconnection function of the physical layer. The original traffic enters the interface board 1730 through this, and the processed packets are sent out from the physical interface card 1733 .
  • the physical interface card 1733 includes at least one physical interface, which is also called a physical interface, and the physical interface may be a Flexible Ethernet (FlexE) physical interface.
  • the physical interface card 1733 is also called a daughter card, which can be installed on the interface board 1730, and is responsible for converting the photoelectric signal into a message, checking the validity of the message and forwarding it to the network processor 1732 for processing.
  • the central processing unit 1731 of the interface board 1730 can also execute the functions of the network processor 1732 , such as implementing software forwarding based on a general-purpose CPU, so that the interface board 1730 does not need the network processor 1732 .
  • the network device 1700 includes multiple interface boards.
  • the network device 1700 further includes an interface board 1740 , and the interface board 1740 includes: a central processing unit 1741 , a network processor 1742 , a forwarding entry storage 1744 and a physical interface card 1743 .
  • the network device 1700 further includes a switching fabric unit 1720 .
  • the SFU 1720 may also be called a SFU (switch fabric unit, SFU).
  • SFU switch fabric unit
  • the switching fabric board 1720 is used to complete the data exchange between the interface boards.
  • the interface board 1730 and the interface board 1740 may communicate through the switching fabric board 1720 .
  • the main control board 1710 is coupled to the interface board.
  • the main control board 1710, the interface board 1730, the interface board 1740, and the switching fabric board 1720 are connected through a system bus and/or a system backplane to implement intercommunication.
  • an inter-process communication protocol IPC
  • IPC inter-process communication
  • the network device 1700 includes a control plane and a forwarding plane.
  • the control plane includes a main control board 1710 and a central processing unit 1731.
  • the forwarding plane includes various components for performing forwarding, such as a forwarding entry storage 1734, a physical interface card 1733, and a network processing Device 1732.
  • the control plane performs functions such as publishing routes, generating forwarding tables, processing signaling and protocol packets, configuring and maintaining device status, etc., and the control plane sends the generated forwarding tables to the forwarding plane.
  • the forwarding table issued by the following table looks up and forwards the packets received by the physical interface card 1733.
  • the forwarding table delivered by the control plane may be stored in the forwarding table item storage 1734 . In some embodiments, the control plane and the forwarding plane may be completely separated and not on the same device.
  • the transceiver unit in the network device 1600 may be equivalent to the physical interface card 1733 or the physical interface card 1743 in the network device 1700; the acquisition unit 16041 and the processing unit 16042 in the network device 1600 may be equivalent to the central processing unit
  • the processor 1711 or the central processing unit 1731 may also correspond to program codes or instructions stored in the memory 1712.
  • the operations on the interface board 1740 in the embodiment of the present application are consistent with the operations on the interface board 1730 , and are not repeated for brevity.
  • the network device 1700 in this embodiment may correspond to the first node, the second node or the controller in each of the foregoing method embodiments, and the main control board 1710, the interface board 1730 and/or the interface board in the network device 1700 1740 may implement the functions and/or various steps implemented by the first node, the second node, or the controller in each of the foregoing method embodiments, and details are not repeated here for brevity.
  • main control boards there may be one or more main control boards, and when there are multiple main control boards, it may include the main main control board and the standby 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 it provides. There may also be one or more physical interface cards on the interface board. There may be no SFU, or there may be one or more SFUs. When there are multiple SFUs, they can jointly implement load sharing and redundant backup. Under the centralized forwarding architecture, the network device does not need a switching network board, and the interface board undertakes the processing function of the service data of the entire system.
  • the network device can have at least one SFU, through which the data exchange between multiple interface boards can be realized, and large-capacity data exchange and processing capabilities can be provided.
  • the form of the network device can also be that there is only one board, that is, there is no switching fabric board, and the functions of the interface board and the main control board are integrated on this board.
  • the central processing unit and the main control board on the interface board can be combined into one central processing unit on the one board to perform the superimposed functions of the two. Which architecture to use depends on the specific networking deployment scenario, and there is no unique limitation here.
  • the foregoing first network device may be implemented as a virtualization device.
  • the virtualization device may be a virtual machine (virtual machine, VM) running a program for sending packets, a virtual router or a virtual switch.
  • Virtualization devices are deployed on hardware devices (eg, physical servers).
  • the first network device may be implemented based on a common physical server combined with a network functions virtualization (network functions virtualization, NFV) technology.
  • network functions virtualization network functions virtualization
  • the embodiment of the present application also provides a computer-readable storage medium, including instructions, which, when run on a computer, enable the computer to control the network device to execute any one of the implementation manners shown in the foregoing method embodiments.
  • the embodiment of the present application also provides a computer program product, the computer program product includes computer program code, and when the computer program code is run on the computer, the computer is made to execute any one of the implementation manners shown in the foregoing method embodiments.
  • the embodiment of the present application also provides a computer program product, which, when the computer program product runs on the network device, causes the network device to execute the first node and the second node in the above method embodiments corresponding to Figures 1-14 or a method executed by the controller.
  • the embodiment of the present application also provides a chip system, including a processor and an interface circuit, and the interface circuit is configured to receive instructions and transmit them to the processor.
  • the processor is configured to implement the method in any one of the foregoing method embodiments.
  • the chip system further includes a memory, and there may be one or more processors in the chip system.
  • the processor can be realized 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, and implements the method in any of the above method embodiments by reading the software code stored in the memory.
  • the memory can be integrated with the processor, or can be set 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 respectively arranged on different chips.
  • the setting method of the processor is not specifically limited.
  • FIG. 18 is a schematic diagram of a network system 1800 proposed by an embodiment of the present application.
  • the network system 1800 includes: a first node 1801 , a second node 1802 and a controller 1803 .
  • the first node 1801 and the second node 1802 may be, for example, physical devices such as routers, switches, or gateways, or virtual devices that support route advertisement and packet forwarding. In this embodiment, specific types of the first node 1801 and the second node 1802 are not limited.
  • the controller 1803 may be a server that manages the first node 1801 and the second node 1802 described above.
  • the first node 1801 may be the network device 1500 , the network device 1600 or the network device 1700 .
  • the second node 1802 may be the network device 1500 , the network device 1600 or the network device 1700 .
  • the controller 1803 may be the network device 1500 , the network device 1600 or the network device 1700 .
  • FIG. 19 is a schematic diagram of a network system 1900 proposed by an embodiment of the present application.
  • the network system 1900 includes: a first network device 1901 , a first intermediate network device 1902 , a second intermediate network device 1903 and a controller 1904 .
  • the first network device 1901, the first intermediate network device 1902, and the second intermediate network device 1903 may be, for example, physical devices such as routers, switches, or gateways, or virtual devices that support route advertisement and packet forwarding. This embodiment does not limit specific types of the first network device 1901 , the first intermediate network device 1902 , and the second intermediate network device 1903 .
  • the controller 1904 may be a server that manages the above-mentioned first network device 1901 , first intermediate network device 1902 and second intermediate network device 1903 .
  • the second intermediate network device 1903 may be node B, node C, node D, node E, or other nodes in node F that are different from the first intermediate network device 1902 .
  • the controller 1904 is not shown in the scenario shown in FIG. 1 .
  • the first network device 1901, the first intermediate network device 1902, and the second intermediate network device 1903 belong to the same Interior Gateway Protocols (Interior Gateway Protocols, IGP) domain.
  • IGP Interior Gateway Protocols
  • the first network device 1901 and the first intermediate network device 1902 belong to the same Interior Gateway Protocols (Interior Gateway Protocols, IGP) domain.
  • the first intermediate network device 1902 and the second intermediate network device 1903 belong to different IGP domains.
  • the first network device 1901 may be the head node Acc1.
  • the first intermediate network device 1902 may be node Acc2, node Acc3 or node Acc4.
  • the second intermediate network device 1903 may be a node P11, a node P12, a node P13, or a node P14.
  • the first intermediate network device 1902 determines that the first SID is unreachable, and the first intermediate network device 1902 determines whether the first SID is allowed to be bypassed according to the first field corresponding to the first SID , the first field is included in the first packet.
  • the first intermediate network device 1902 determines that the second SID is reachable. The first intermediate network device 1902 forwards the first packet to the second intermediate network device 1903 according to the second SID.
  • the first network device 1901 receives a control packet sent by the controller 1904, where the control packet includes indication information.
  • the indication information indicates that the second intermediate network device 1903 is not allowed to be bypassed.
  • the above-mentioned network devices in various product forms respectively have any functions of the first node, the second node or the controller in the above-mentioned method embodiments, which will not be repeated here.
  • B corresponding to A means that B is associated with A, and B can be determined according to A.
  • determining B according to A does not mean determining B only according to A, and B may also be determined according to A and/or other information.
  • the disclosed system, device and method can be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components can be combined or integrated. to another system, or some features may be ignored, or not implemented.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection of devices or units may be in electrical, mechanical or other forms.
  • a unit described as a separate component may or may not be physically separated, and a component displayed as a unit may or may not be a physical unit, that is, it may be located in one place, or may be distributed to multiple network units. Part or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, each unit may exist separately physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated units can be implemented in the form of hardware or in the form of software functional units.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Un procédé de traitement de message et un appareil associé sont divulgués dans les modes de réalisation de la présente demande. Dans ces modes de réalisation, les identifiants de segment (SID) étant autorisés à être contournés et les SID n'étant pas autorisés à être contournés sont marqués au moyen de champs spéciaux. Ainsi, lorsqu'un SID n'est pas joignable, le SID est contourné uniquement après confirmation du fait que le SID est autorisé à être contourné, et le SID passe directement à un SID suivant pour transmettre un message. De cette façon, on s'assure que le message doit passer un nœud intermédiaire qui correspond au SID et qui a une fonction importante. Par conséquent, l'exécution normale d'un service est garantie.
PCT/CN2022/105410 2021-07-15 2022-07-13 Procédé de traitement de message et appareil associé WO2023284774A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110800586.XA CN115622930A (zh) 2021-07-15 2021-07-15 一种报文处理方法以及相关装置
CN202110800586.X 2021-07-15

Publications (1)

Publication Number Publication Date
WO2023284774A1 true WO2023284774A1 (fr) 2023-01-19

Family

ID=84856149

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/105410 WO2023284774A1 (fr) 2021-07-15 2022-07-13 Procédé de traitement de message et appareil associé

Country Status (2)

Country Link
CN (1) CN115622930A (fr)
WO (1) WO2023284774A1 (fr)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116915685B (zh) * 2023-09-06 2023-12-12 新华三技术有限公司 报文传输方法、装置及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109981458A (zh) * 2019-03-08 2019-07-05 华为技术有限公司 一种确定报文转发路径的方法、网络节点及系统
CN111628995A (zh) * 2020-05-26 2020-09-04 新华三信息安全技术有限公司 基于SRv6的SID压缩方法、装置、设备及存储介质
CN111682996A (zh) * 2019-03-11 2020-09-18 华为技术有限公司 网络中报文转发的方法、网络节点、网络系统
WO2021089004A1 (fr) * 2019-11-06 2021-05-14 华为技术有限公司 Procédé de transmission de message, nœud mandataire et support de stockage

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109981458A (zh) * 2019-03-08 2019-07-05 华为技术有限公司 一种确定报文转发路径的方法、网络节点及系统
CN111682996A (zh) * 2019-03-11 2020-09-18 华为技术有限公司 网络中报文转发的方法、网络节点、网络系统
WO2021089004A1 (fr) * 2019-11-06 2021-05-14 华为技术有限公司 Procédé de transmission de message, nœud mandataire et support de stockage
CN111628995A (zh) * 2020-05-26 2020-09-04 新华三信息安全技术有限公司 基于SRv6的SID压缩方法、装置、设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
S. MATSUSHIMA, ED. SOFTBANK C. FILSFILS M. KOHNO P. CAMARILLO, ED. CISCO SYSTEMS, INC. D. VOYER BELL CANADA C. PERKINS FUTUREWEI: "Segment Routing IPv6 for Mobile User Plane; draft-ietf-dmm-srv6-mobile-uplane-09.txt", SEGMENT ROUTING IPV6 FOR MOBILE USER PLANE; DRAFT-IETF-DMM-SRV6-MOBILE-UPLANE-09.TXT; INTERNET-DRAFT: DMM WORKING GROUP, INTERNET ENGINEERING TASK FORCE, IETF; STANDARDWORKINGDRAFT, INTERNET SOCIETY (ISOC) 4, RUE DES FALAISES CH- 1205 GENEVA, SWITZER, no. 09, 13 July 2020 (2020-07-13), Internet Society (ISOC) 4, rue des Falaises CH- 1205 Geneva, Switzerland , pages 1 - 30, XP015140705 *

Also Published As

Publication number Publication date
CN115622930A (zh) 2023-01-17

Similar Documents

Publication Publication Date Title
CN111713079B (zh) 包括段路由的分组网络互通
CN108702331B (zh) Sr应用段与服务功能链(sfc)报头元数据的集成
EP4102785A1 (fr) Procédé et appareil de traitement de message, et dispositif de réseau et support de stockage
EP1609279B1 (fr) Procede permettant des mises a jour recursives de routages bgp dans des reseaux mpls
CA3080526C (fr) Routeur virtuel a virtualisation ip mpls pop insensible aux defaillances
WO2021169258A1 (fr) Procédé d'acheminement de message, procédé de publication d'informations de routage, appareil et système
US7839767B2 (en) Path reroute in a computer network
CN113381933B (zh) SRv6网络中双向转发检测的方法与系统
JP7479489B2 (ja) パケット送信方法、デバイス、およびシステム
CN112202669A (zh) 使用分段路由的弹性多协议标签交换(mpls)环
CN113079089A (zh) 业务链的故障保护方法、装置、设备、系统及存储介质
US11929923B2 (en) Packet transmission method and apparatus
WO2023011149A1 (fr) Procédé de communication basé sur un routage de segment sur la version 6 du protocole internet (srv6)
WO2023274083A1 (fr) Procédé et appareil de publication de route, procédé et appareil de réacheminement de paquets, dispositif, et support de stockage
WO2023284774A1 (fr) Procédé de traitement de message et appareil associé
US11082540B2 (en) Network operations including protocol processing of a packet updating an operations data field of a different protocol
WO2024067084A1 (fr) Procédé de détection de défaut de chemin et appareil associé
WO2023236880A1 (fr) Procédé de commande de message et dispositif associé
CN116074395A (zh) 一种报文发送方法及装置
CN115426305A (zh) 报文处理方法、装置及系统

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: 22841407

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE