Packet processing method and device

The packet processing method in IPv6 networks uses a coalition channel to unify control and management signaling, addressing inefficiencies in existing IPv6 networks by simplifying protocol usage and improving bandwidth utilization.

JP7623039B2Active Publication Date: 2025-01-28HUAWEI TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2023535438
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2021-02-10
Filing Date
2021-11-17
Publication Date
2025-01-28
Estimated Expiration
2041-11-17

AI Technical Summary

Technical Problem

Current IPv6 networks require multiple protocol links for each control and management function, leading to inefficient control and management due to the complexity of sending various control and management messages, which occupies bandwidth and reduces service data transmission efficiency.

Method used

A packet processing method using a general coalition channel in IPv6 packets to transport multiple control and management messages, reducing the need for multiple protocols and simplifying signaling by using a unified TLV encapsulation in the IPv6 extended header.

Benefits of technology

This approach enhances control and management efficiency by reducing signaling overhead, allowing high-speed path processing and supporting various control and management functions without redundant protocol layers, applicable to both SRV6 and non-SRV6 nodes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007623039000001
    Figure 0007623039000001
  • Figure 0007623039000002
    Figure 0007623039000002
  • Figure 0007623039000003
    Figure 0007623039000003
Patent Text Reader

Abstract

An embodiment of this application discloses a packet processing method. In one example, an association channel may be carried within an IPv6 packet to provide multiple different types of control channels. The association channel may be transmitted along with user data. Each type of control channel may carry at least one type of control and management message, and one type of control and management message may implement one type of control and management function. In other words, an IPv6 packet may contain at least one type of control and management message. In an IPv6 network, particularly an SRv6 network, all different types of control and management information between transceiver nodes may be carried based on a general association channel. For example, when multiple control and management functions need to be implemented for an IPv6 network, all different types of control and management messages can be carried using the association channel without using multiple protocols to carry those multiple types of control and management messages, effectively improving the efficiency of control and management on the IPv6 network.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] child The application relates to the field of communications, and in particular to a packet processing method and apparatus. [Background technology]

[0002] To perform control and management on an Internet Protocol version 6 (IPv6) network, control and management messages may be transmitted between nodes in the IPv6 network. For example, control and management messages may be transmitted between a head node and a tail node on a transmission path. A node receiving a control and management message may perform a corresponding operation based on the control and management message to perform control and management on the IPv6 network. One type of control and management message may implement one type of control and management function. Control and management on an IPv6 network covers multiple aspects, such as determining latency and packet loss of a transmission path, in another example, testing connectivity of a transmission path, and in another example, performing resource management on a transmission path.

[0003] Currently, it is necessary to design an independent protocol for each control and management function to carry control and management messages. As a result, it is necessary to establish multiple protocol links between nodes in an IPv6 network to perform control and management of various functions on the IPv6 network. Thus, it is complicated to transmit various control and management messages. Therefore, the efficiency of performing control and management on an IPv6 network is low. Summary of the Invention

[0004] One embodiment of this application provides a packet processing method for implementing control and management on an IPv6 network.

[0005] According to a first aspect, an embodiment of the present application provides a packet processing method, which may be performed, for example, by a first communication device. The first communication device may correspond to a head node or an intermediate node on a transmission path of the first IPv6 packet. In one example, the first communication device may obtain a first IPv6 packet, which includes an association channel. The association channel may carry a plurality of different types of control channels, each type of control channel may carry at least one type of control and management message, and one type of control and management message may implement one type of control and management function. The control and management message may be, for example, a protocol message. In other words, the first IPv6 packet includes at least one type of control and management message. After obtaining the first IPv6 packet, the first communication device may forward the first IPv6 packet.

[0006] In this application, a general association channel is designed in an IPv6 packet, and various different types of control channels can be carried by using the association channel. Therefore, when multiple control and management functions need to be implemented for an IPv6 network, one general association channel can carry multiple different types of control channels, i.e., multiple types of control and management messages can be carried in one general association channel without using multiple protocols to carry the multiple types of control and management messages. Therefore, the amount of control and management signaling between network devices is reduced, the transmission method of control and management signaling is simplified, and some new control and management channels can be implemented in the IPv6 packet. v6In the network, the association channel may support a signaling communication channel SCC, a management communication channel MCC, and a fault indication channel in the embodiment of this application. For example, the association channel may support a signaling communication channel SCC, a management communication channel MCC, and a fault indication channel in the embodiment of this application, improving the efficiency of control and management on the IPv6 network. By carrying control and management messages of multiple protocols, one packet may be used to carry multiple TLV fields, thereby reducing the amount of packets transmitting control and management information between devices. In one possible implementation, the association channel may be in a general TLV format, and the TLV encapsulation may be performed in an IPv6 extension header to unify and simplify the packet encapsulation and transmission of control and management messages, and reduce device maintenance parameters such as User Datagram Protocol port number entries. Furthermore, based on the association channel in this application, the transmission of control and management messages in a TLV format with variable length may be further supported by extension. Thus, more channel maintenance information may be carried. Based on the solution provided in this embodiment of this application, the message transmission is performed using an IPv6 packet header, and fast path processing of the contents of the packet header can be performed on the device forwarding plane, improving the message processing efficiency.

[0007] In one implementation, the association channel in this application can be carried within an IPv6 extension header, thus supporting sending the association channel along with user data and implementing in-situ flow information telemetry.

[0008] In one implementation, the association channel in this application may instead be carried within the payload of an IPv6 packet.

[0009] In one implementation, the first communication device may generate the first IPv6 packet if the first communication device represents a head node on a transmission path of the first IPv6 packet.

[0010] In one particular implementation, the transmission path is an IPv6 tunnel, which may be, for example, an IP-encapsulated virtual extensible local area network (VXLAN) tunnel, or may be an SRv6 tunnel.

[0011] In one implementation, when the first communication device corresponds to an intermediate node on the transmission path of the first IPv6 packet, in a specific implementation, when the first communication device obtains the first IPv6 packet, for example, the first communication device can receive a second IPv6 packet from an upstream node of the first communication device, where the second IPv6 packet includes an association channel. After receiving the second IPv6 packet, the first communication device can process the second IPv6 packet based on the association channel to obtain the first IPv6 packet. For example, the first communication device can add corresponding information (e.g., a local timestamp) to the second IPv6 packet based on at least one type of control and management message carried in the association channel to obtain the first IPv6 packet. Based on the method in this application, the intermediate node can analyze the association channel. For example, the intermediate node can record related OAM detection information, resource reservation information, or fault indication information in the association channel. Thus, more sophisticated control and management can be implemented.

[0012] According to a second aspect, an embodiment of the present application provides a packet processing method. The method can be performed, for example, by a first communication device, which can correspond to a tail node on a transmission path of the first IPv6 packet. In one example, the first communication device can receive a first IPv6 packet, the first IPv6 packet including an association channel, the association channel can carry multiple different types of control channels, each type of control channel carrying at least one type of control and management message. After receiving the first IPv6 packet, the first communication device can perform an operation corresponding to the at least one type of control and management message. Since the first IPv6 packet includes an association channel, when multiple control and management functions need to be implemented for an IPv6 network, multiple types of control and management messages can be carried using the association channel without using multiple protocols to carry the multiple types of control and management messages, improving the efficiency of control and management on the IPv6 network. Also, there is no need to run multiple protocols between nodes on the transmission path of the first IPv6 packet. Therefore, the bandwidth occupied by running multiple protocols is reduced, and the service data transmission efficiency is correspondingly improved.

[0013] Regarding the first and second aspects: In one implementation, the association channel may carry at least one control and management message, the control and management message being a message for controlling and / or managing a path. To enable a node receiving the first IPv6 packet to determine a path associated with the association channel, the first IPv6 packet may further include identification information, the identification information being used to identify a first path, the first path being a transmission path of the first IPv6 packet. Thus, the node receiving the first IPv6 packet may identify an association relationship between the association channel in the first IPv6 packet and the first path, to determine at least one control and management message in the association channel for controlling and / or managing the first path. Furthermore, the node receiving the first IPv6 packet may perform a corresponding operation based on the identification information and the at least one control and management message in the association channel.

[0014] In one implementation, the above-mentioned identification information may be, for example, a path identifier (path ID).

[0015] In one implementation, the identifying information may identify an end-to-end path or may identify a path segment within the end-to-end path.

[0016] In one implementation, the identification information may be conveyed within the association channel or outside the association channel.

[0017] In one implementation, if the first IPv6 packet is an SRv6 packet, a segment list included in the SRH of the SRv6 packet may indicate the transmission path of the SRv6 packet. Thus, the identification information may be carried by using the segment list of the SRv6 packet, i.e., the identification information may be the segment list of the SRv6 packet. In this implementation, hop-by-hop and end-to-end control and management of a particular node in the SRv6 transmission path may be implemented. For example, for OAM discovery, hop-by-hop and end-to-end connectivity monitoring and performance measurement may be supported. For example, for resource reservation management, hop-by-hop resource reservation management may be supported.

[0018] In one implementation, for an SRv6 packet, the SRH of the SRv6 packet may further include a path segment field, and the value of the path segment field is used to identify the SRv6 path. If the first IPv6 packet used as the SRv6 packet includes a path segment field, the value of the path segment field is used to identify the transmission path of the first IPv6 packet. Thus, the identification information may be carried in the path segment field of the SRv6 packet instead.

[0019] In one implementation, in addition to including the association channel, the extension header of the first IPv6 packet can further include indication information, where the indication information indicates the association channel, in this case, the node receiving the first IPv6 packet can determine that the extension header of the first IPv6 packet includes the association channel based on the indication information.

[0020] In one implementation, the extension header of the first IPv6 packet may be a Hop-by-Hop (HBH) options header, in which case the HBH options header of the first IPv6 packet may include the association channel. Also, the extension header of the first IPv6 packet may be a Destination Options Header (DOH), in which case the DOH of the first IPv6 packet may include the association channel.

[0021] In one implementation, if the first IPv6 packet is an SRv6 packet, the extension header of the first IPv6 packet may be an SRH. In this case, the SRH of the first IPv6 packet may include an association channel. Certainly, if the first IPv6 packet is an SRv6 packet, the extension header of the first IPv6 packet may be a DOH.

[0022] In one implementation, one TLV field may be extended to carry the above-mentioned indication information. In one implementation, when a TLV field carries the indication information, in one example, the type field of the TLV field may carry the indication information. Thus, another field of the TLV field can further carry other information, so that the TLV field can carry more information.

[0023] In one implementation, when the first IPv6 packet is an SRv6 packet, the indication information may also be carried using an undefined field in the SRH of the SRv6 packet, for example, a flag field in the SRH. In this way, there is no need to extend a new field to carry the indication information, and the extension of the SRv6 packet is suppressed.

[0024] In one implementation, the TLV field may further include a channel type field, which indicates the type of the control channel carried by the association channel. In one example, the type field of the TLV field carries the above-mentioned indication information, which indicates that the content carried in the TLV is an association channel. The value field of the TLV field includes a channel type field, which indicates the type of the control channel carried by the association channel. When the association channel carries multiple types of control channels, the value field of the TLV field may include multiple channel type fields, which have a one-to-one correspondence with the multiple types of control channels.

[0025] In one implementation, when an association channel is carried using a TLV field, if the association channel carries multiple types of control channels, the TLV field can include indication information of each type of control channel, and the indication information of each type of control channel indicates the type of the control channel included in the TLV field. For example, the indication information of each type of control channel can be carried in the value field of the TLV field. The indication information of each control channel may be the value of an indication bit corresponding to each control channel, or a specific value indicating each control channel. This is not particularly limited in this embodiment of the application. For example, in the TLV field, if the values ​​of the indication bits corresponding to control channel 1 and control channel 2 are both 1, and the values ​​of the indication bits corresponding to other control channels are 0, it indicates that the TLV field includes control channel 1 and control channel 2. The indication bit referred to here may include, for example, 1 bit. In another example, if the value field of the TLV field includes the value 1, and the value 1 corresponds to control channel 1, it indicates that the TLV field includes control channel 1.

[0026] In one implementation, the at least one type of control channel carried by the association channel may include, for example, one or more of an OAM channel, a fault indication channel, a resource management channel, a signaling communication channel (SCC), and a management communication channel (MCC). The control and management message carried by the OAM channel may be, for example, an OAM message. The OAM message is a collective term for a set of messages for performing operation, management, and maintenance on an end-to-end IPv6 path, for example, an SRv6 path. The control and management message carried by the fault indication channel may be, for example, a fault indication message, where the fault indication message records fault indication information of the first path. The control and management message carried by the resource management channel may be, for example, a resource management message, where the resource management message is used to perform resource management on a path, for example, the first path. The SCC is used to provide an independent channel for transmitting control information between two nodes on the IPv6 path. The MCC is used to provide an independent channel for transmitting management information between two nodes on the IPv6 path. In one implementation, for example, the control and management message carried by the resource management channel may include one or more of a resource reservation request message, a resource status update message, and a resource reservation cancellation message. The resource reservation request message instructs a node on the first path to reserve resources, the resource status update message is used to collect available resources of the nodes on the first path, and the resource reservation cancellation message is used to cancel the resource reservation request, where the first path referred to here is the transmission path of the first IPv6 packet. It may be understood that when the control channel carried by the association channel includes a resource management channel, the first IPv6 packet includes a resource reservation request message, a resource status update message, or a resource reservation cancellation message.

[0027] In one implementation, the first IPv6 packet may be a service packet. In other words, the data payload of the first IPv6 packet carries user data. If the first IPv6 packet is a service packet, control and management can be performed on the IPv6 network when the service packet is transmitted, based on the status when the IPv6 network transmits the actual service packet. In this way, control and management can be performed with the traffic. For example, OAM messages are carried in the association channel to implement in-situ flow information telemetry.

[0028] In one implementation, the first IPv6 packet may be a measurement packet. If the first IPv6 packet is a measurement packet, control and management can be performed on the IPv6 network according to requirements. In one example, an association channel can be carried in the payload of the IPv6 packet. For example, control and management can be performed on the IPv6 network before a service packet is transmitted, and the service packet is transmitted after the transmission quality of the IPv6 network is optimized, thereby improving the service quality of the IPv6 network.

[0029] According to a third aspect, an embodiment of this application provides a packet processing method. For example, the method may be performed by a first communication device. The first communication device may correspond to a head node or an intermediate node on a transmission path of a first IPv6 packet. In one example, the first communication device may obtain a first IPv6 packet, the first IPv6 packet including a failure indication channel, and the failure indication channel records failure indication information of a first path. The first path may be, for example, a transmission path of the first IPv6 packet. After obtaining the first IPv6 packet, the first communication device may forward the first IPv6 packet. It can be seen that by using this solution, the failure indication information existing on the first path can be quickly transmitted to another node, such as a tail node, on the first path through a data plane, so that when a node, such as a tail node, on the first path determines that the first path has a failure, corresponding measures can be quickly and efficiently taken, and the quality of service is prevented from being affected by the failed first path.

[0030] In one implementation, the first communication device may receive a second IPv6 packet from an upstream node, the second IPv6 packet including a fault indication channel. After receiving the second IPv6 packet, the first communication device may record first fault indication information in the fault indication channel of the second IPv6 packet to obtain the first IPv6 packet. The first fault indication information referred to here may be fault indication information determined by the first communication device, and the first fault indication information may be, for example, a bit error rate and / or a packet loss rate of the first communication device. Thus, the first communication device may transmit the first fault indication information determined by the first communication device to a downstream node of the first communication device on the first path via a data plane.

[0031] According to a fourth aspect, an embodiment of the present application provides a packet processing method. For example, the method may be performed by a first communication device. The first communication device may correspond to a tail node on a transmission path of a first IPv6 packet. In one example, the first communication device may receive a first Internet Protocol version 6 (IPv6) packet, the first IPv6 packet includes a failure indication message, and the failure indication message is used to record the failure indication information of the first path. The first path referred to here is the transmission path of the first IPv6 packet. After receiving the first IPv6 packet, the first communication device may obtain the failure indication information of the first path. It can be seen that by using this solution, the failure indication information present on the first path can be quickly transmitted to another node, such as a tail node, on the first path via a data plane, so that the node, such as a tail node, on the first path obtains the failure indication information of the first path. Furthermore, corresponding measures can be taken quickly and efficiently, for example, the failure indication information of the first path is sent back to the head node so that the head node can perform path switching, or the head node is notified to perform path switching, thus preventing the service quality from being affected by the failed first path.

[0032] Regarding the third and fourth aspects: In one implementation, the extension header of the first IPv6 packet further includes an association channel, the association channel carrying multiple types of control channels, each type of control channel carrying at least one type of control and management message, and the at least one type of control and management message including a fault indication message. In this case, since the extension header of the first IPv6 packet includes the association channel, when it is necessary to implement multiple control and management functions for the IPv6 network, the multiple types of control and management messages can be carried using the association channel without using multiple protocols to carry the multiple types of control and management messages, thereby improving the efficiency of control and management on the IPv6 network. In one implementation, the extension header includes indication information, and the indication information indicates the association channel.

[0033] In one implementation, the federation channel can be carried within an IPv6 extension header to implement ad-hoc flow information telemetry.

[0034] In one implementation, the association channel may instead be carried within the payload of an IPv6 packet.

[0035] In one implementation, the extension header is a Hop-by-Hop (HBH) Options Header or a Destination Options Header (DOH).

[0036] In one implementation, the first IPv6 packet is a segment routing Internet Protocol version 6 (SRv6) packet.

[0037] In one implementation, the extension header is a segment routing header (SRH).

[0038] In one implementation, the indication information is carried within a TLV field.

[0039] In one implementation, the type field of the TLV field carries the indication information.

[0040] In one implementation, the TLV field includes a channel type field that indicates the type of control channel carried by the association channel.

[0041] In one implementation, the at least one type of control channel further includes any one or more of an OAM channel, a resource management channel, a signaling communication channel (SCC), and a management communication channel (MCC).

[0042] In one implementation, the resource management channel carries one or more of a resource reservation request message, a resource status update message, and a resource reservation cancellation message.

[0043] In one implementation, the first IPv6 packet includes identification information, and the identification information is used to identify the first path, where the first path is a transmission path of the first IPv6 packet.

[0044] In one implementation, the identification information is used by a node on the first path to identify an association relationship between the association channel and the first path.

[0045] In one implementation, the first IPv6 packet is a segment routing Internet Protocol version 6 (SRv6) packet, and a segment list or a path segment of the SRv6 packet carries the identifying information.

[0046] In one implementation, the association channel includes identification information used to identify the first path.

[0047] According to a fifth aspect, the application provides a communication device including a transceiver unit and a processing unit. The transceiver unit is configured to perform receiving and transmitting operations according to the first aspect or any one of the first aspects, and the processing unit is configured to perform operations other than receiving and transmitting operations according to the first aspect or any one of the first aspects. Alternatively, the transceiver unit is configured to perform receiving and transmitting operations according to the second aspect or any one of the second aspects, and the processing unit is configured to perform operations other than receiving and transmitting operations according to the second aspect or any one of the second aspects. Alternatively, the transceiver unit is configured to perform receiving and transmitting operations according to the third aspect or any one of the third aspects, and the processing unit is configured to perform operations other than receiving and transmitting operations according to the third aspect or any one of the third aspects. Alternatively, the transceiver unit is configured to perform receiving and transmitting operations according to the fourth aspect or any one of the fourth aspects, and the processing unit is configured to perform operations other than receiving and transmitting operations according to the fourth aspect or any one of the fourth aspects.

[0048] According to a sixth aspect, the application provides a communications apparatus comprising a memory and a processor, the memory configured to store program code and the processor configured to execute instructions in the program code, the communications apparatus being enabled to perform a method according to the first aspect or any one of the first aspects, alternatively the communications apparatus being enabled to perform a method according to the second aspect or any one of the second aspects, alternatively the communications apparatus being enabled to perform a method according to the third aspect or any one of the third aspects, alternatively the communications apparatus being enabled to perform a method according to the fourth aspect or any one of the fourth aspects.

[0049] According to a seventh aspect, the application provides a communications device, the communications device comprising a communications interface and a processor. The communications interface is configured to perform receive and transmit operations according to the first aspect or any one of the first aspects, the processor being configured to perform operations other than receive and transmit operations according to the first aspect or any one of the first aspects. Alternatively, the communications interface is configured to perform receive and transmit operations according to the second aspect or any one of the second aspects, the processor being configured to perform operations other than receive and transmit operations according to the second aspect or any one of the second aspects. Alternatively, the communications interface is configured to perform receive and transmit operations according to the third aspect or any one of the third aspects, the processor being configured to perform operations other than receive and transmit operations according to the third aspect or any one of the third aspects. Alternatively, the communications interface is configured to perform receive and transmit operations according to the fourth aspect or any one of the fourth aspects, the processor being configured to perform operations other than receive and transmit operations according to the fourth aspect or any one of the fourth aspects.

[0050] According to an eighth aspect, the application provides a computer readable storage medium storing instructions which, when executed on a computer, enable the computer to perform a method according to the first aspect or any one of the first aspects, alternatively enable the computer to perform a method according to the second aspect or any one of the second aspects, alternatively enable the computer to perform a method according to the third aspect or any one of the third aspects, or alternatively enable the computer to perform a method according to the fourth aspect or any one of the fourth aspects.

[0051] According to a ninth aspect, the application provides a communications system comprising a communications device according to the fifth or sixth or seventh aspect, the communications device performing a method according to the first aspect or any one of the first aspects, or a communications device according to the fifth or sixth or seventh aspect, the communications device performing a method according to the second aspect or any one of the second aspects.

[0052] According to a tenth aspect, the application provides a communications system comprising a communications device according to the fifth or sixth or seventh aspect, the communications device performing a method according to the third aspect or any one of the third aspects, or a communications device according to the fifth or sixth or seventh aspect, the communications device performing a method according to the fourth aspect or any one of the fourth aspects. [Brief description of the drawings]

[0053] In order to more clearly describe the technical solutions in the embodiments of this application or in the prior art, the following briefly introduces the accompanying drawings used to describe the embodiments or the prior art. It is obvious that the accompanying drawings in the following description only show some embodiments of this application, and those skilled in the art can still derive other accompanying drawings from these accompanying drawings without creative efforts. [Figure 1a] 1 is a schematic diagram of an IPv6 network configuration according to one embodiment of the present application. [Figure 1b] 1 is a schematic flowchart of a packet processing method according to an embodiment of the present application. [Figure 2a-1] FIG. 2 is a schematic diagram of a structure of a TLV field according to one embodiment of the present application; [Figure 2a-2] FIG. 2 is a schematic diagram of a structure of a TLV field according to one embodiment of the present application; [Figure 2b] FIG. 2 is a schematic diagram of a structure of a fault indication message according to an embodiment of the present application; [Figure 2c]A schematic diagram of a structure of a message resource reservation request message according to an embodiment of the present application. [Figure 2d] FIG. 2 is a schematic diagram of a structure of a resource status update message according to an embodiment of the present application; [Figure 2e] FIG. 2 is a schematic diagram of a structure of a resource cancellation message according to an embodiment of the present application; [Figure 2f] 2 is a schematic diagram of a first IPv6 packet structure according to an embodiment of the present application; [Figure 2g] 2 is a schematic diagram of a first IPv6 packet structure according to an embodiment of the present application; [Diagram 3] 1 is a schematic flowchart of a packet processing method according to an embodiment of the present application. [Figure 4] 1 is a schematic flowchart of a packet processing method according to an embodiment of the present application. [Diagram 5] 1 is a schematic flowchart of a packet processing method according to an embodiment of the present application. [Figure 6] 1 is a schematic diagram of a configuration of a communication device according to an embodiment of the present application; [Figure 7] 1 is a schematic diagram of a configuration of a communication device according to an embodiment of the present application; [Figure 8] 1 is a schematic diagram of a configuration of a communication device according to an embodiment of the present application; DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0054] One embodiment of this application provides a packet processing method for implementing control and management on an IPv6 network.

[0055] Please refer to FIG. 1a, which is a schematic diagram of an IPv6 network configuration according to one embodiment of this application.

[0056] In the network scenario shown in FIG. 1a, a customer edge (CE) CE1 may communicate with a CE2 by using an IPv6 network 100. Node provider edge (PE) devices PE1, PE2, and provider backbone (P) devices P1, P2, P3, and P4 are all nodes in the IPv6 network 100. Transmission path 1: PE1-P1-P2-PE2 is a transmission path in the IPv6 network 100. In one example, the IPv6 network 100 may be a network to which a segment routing (SR) technology is applied, that is, the IPv6 network 100 may be a segment routing Internet Protocol version 6 (SRv6) network. In this case, the above-mentioned nodes PE1, PE2, P1, P2, P3, and P4 may all be nodes that support SRv6 forwarding. In one example, the network may further include a control and management device, such as a controller configured to control and / or manage the network devices, for example, the controller may perform path calculations based on the network topology.

[0057] In one example, the IPv6 network 100 is an SRv6 network, and the controller calculates a transmission path in the SRv6 network and delivers a segment list indicating the SRv6 forwarding path to a node in the SRv6 network. For example, the controller can deliver a segment list indicating the transmission path 1 to PE1, and PE1 can generate an SRv6 packet based on the segment list indicating the transmission path 1. In another example, the controller can deliver a segment list indicating the transmission path PE2-P2-P1-PE1 to PE2, and PE2 can generate an SRv6 packet based on the segment list indicating the transmission path PE2-P2-P1-PE1.

[0058] Note that Fig. 1a is shown only for ease of understanding and does not constitute a limitation on the embodiments of this application. The network architecture of the IPv6 network is not limited to the form shown in Fig. 1a.

[0059] Currently, control and management on an IPv6 network covers multiple aspects, such as determining the latency and packet loss of a transmission path (e.g., transmission path 1 shown in FIG. 1a) in another example, testing the connectivity of the transmission path in another example, and performing resource management on the transmission path in another example. It is necessary to design a protocol independently for each control and management function to carry the control and management message. As a result, the efficiency of performing control and management on an IPv6 network is low. In addition, for a node, running multiple protocols occupies bandwidth, which results in a decrease in service data transmission efficiency. Currently, an example is provided for illustration of using a protocol to carry the control and management message to implement the corresponding control and management function.

[0060] Example 1: The ping function of the IPv6 protocol may be used to implement connectivity and availability detection for a segment routing Internet Protocol version 6 (SRv6) segment identifier (SID). The SID referred to here may be, for example, the SID corresponding to node PE2 shown in FIG. 1a. The trace route function of the IPv6 protocol may be used to implement hop-by-hop fault localization from a packet detection point to a destination address and trace the path of the SRv6 SID. The path between the packet detection point and the destination address referred to here may be, for example, the transmission path 1 shown in FIG. 1a.

[0061] Example 2: User Datagram Protocol (UDP) packets may be used to carry two-way active measurement protocol (TWAMP) packets and simple two-way active measurement protocol (STAMP) packets separately as measurement packets, and the measurement packets are sent between PE1 and PE2 to measure the two-way latency, one-way packet loss rate, and one-way jitter between PE1 and PE2.

[0062] Example 3: The bidirectional forwarding detection (BFD) protocol may be used to implement failure detection. For specific details, see the relevant explanatory parts of Request for Comments (RFC) 5880, which will not be described in detail here.

[0063] Example 4: Resource reservation protocol (RSVP) may be used to implement the resource reservation function. For specific details, please refer to the relevant explanatory parts of RFC 3209, and details will not be described here.

[0064] However, in the methods of implementing the corresponding control and management functions shown in the above four examples, each method supports only some of the control and management functions. In addition, each method needs to use IP upper layer protocol encapsulation, the node needs to support the upper layer protocol function, and the control plane of the upper layer protocol is required for processing. The IP upper layer protocol encapsulation referred to here refers to layer 4 (L4) protocol encapsulation, L5 protocol encapsulation, L6 protocol encapsulation, or L7 protocol encapsulation. In order to simultaneously implement multiple control and management functions described in the above four examples, session identification information with similar functions between different protocols is carried separately (e.g., both STAMP and BFD carry UDP port numbers), leading to redundant and repeatedly carried information.

[0065] Example 5: In an SRv6 packet, such as an SRv6 packet transmitted by PE1 to PE2 using transmission path 1, a 0-bit stain marker may be defined in the segment routing header (SRH) of the SRv6 packet, which is used as a basis for whether to collect and output telemetry data. If a received packet carries a 0-bit stain marker in an SRv6 node, such as P1, P2, or PE2, the node may copy the original received SRv6 packet, add a timestamp to the copied SRv6 packet, and send the packet to the controller to perform data collection. The controller may process the collected data information to obtain a traffic sampling result of a segment of an SRv6 path on or in the transmission path 1, for example, to obtain a transmission latency of a segment of an SRv6 path on or in the transmission path 1. Certainly, in addition to adding a timestamp to the copied SRv6 packet, a node receiving a 0-bit dye marker may add other data to the copied SRv6 packet, which will not be described one by one here.

[0066] However, the scheme for implementing the corresponding control and management functions shown in Example 5 defines a 0-bit staining marker in the SRH, and therefore this scheme is only applicable to SRv6 forwarding scenarios, and not to pure IPv6 forwarding nodes that do not use an SRH for forwarding.

[0067] With the emergence of application scenarios such as industrial Internet, IP layer technology is introduced into the industrial field, which uses the original "physical layer + link layer + application layer" as the mainstream protocol stack, and is used as an interconnection technology to implement long-distance and large-scale transmission between operation technology (OT) systems. In addition, industrial OT systems are generally closed systems, and a very simplified protocol stack is required to realize efficient transmission within an autonomous system. Therefore, it is impossible to introduce too many protocols to implement multiple different control and management functions, such as operation, administration and maintenance (OAM), management communication channel (MCC), and IP layer resource reservation.

[0068] In view of this, an embodiment of this application provides a packet processing method. The packet processing method provided in this embodiment of this application can be applied to an IPv6 network. The network structure of the IPv6 network is not particularly limited in this embodiment of this application. For example, the architecture of the IPv6 network may be shown in FIG. 1a. In some examples, some or all nodes in the IPv6 network may support SRv6. The first path referred to in the following embodiment may be, for example, the transmission path 1 shown in FIG. 1a.

[0069] Before describing the packet processing method provided in this embodiment of the present application, first, terms related to the embodiment of the present application will be explained.

[0070] Association Channel: An association channel can provide a control channel. In this application, one association channel can be used to provide multiple different types of control channels. In other words, a general association channel is used to carry different types of control channels. If necessary, one association channel can carry one or more control channels. Each type of control channel can carry at least one type of control and management message.

[0071] Control Channel: A control channel carries control and management messages, and one control channel may carry at least one type of control and management message.

[0072] Control and management message: A control and management message is a message that can control and / or manage a path, such as a tunnel. The format of the control and management message and the specific content of the control and management message are not particularly limited in the embodiments of this application, as long as the control and management message can implement a corresponding control and / or management function. In one example, one type of control and management message can be used to implement one type of control function or one type of management function.

[0073] The packet processing method will now be described with reference to the accompanying drawings.

[0074] Note that a type length value (TLV) field referred to in this embodiment of the application may include three fields: type, length, and value. When the length of a TLV field is fixed, the TLV field in this application may instead be a type value (TV) field that does not include a length field.

[0075] Please refer to Fig. 1b, which is a schematic flow chart of a packet processing method according to an embodiment of this application. The packet processing method 100 shown in Fig. 1b can be executed by a first communication device, and the first communication device can correspond to a node in an IPv6 network. For example, the first communication device may correspond to the node PE1 shown in Fig. 1a, or the node P1 shown in Fig. 1a.

[0076] The communication device referred to in this embodiment of the application may be a network device, such as a switch or a router, a component part on a network device, such as a board or a line card on a network device, a functional module on a network device, or a chip configured to implement the method in this application, which is not particularly limited in this embodiment of the application. The communication device may be directly connected, for example, but not limited to, using an Ethernet cable or an optical cable.

[0077] In this embodiment of the application, a communication device corresponds to a node, which means that the communication device may be the node itself or may be a component part on the node. A node in this embodiment of the application may be a network device such as a switch or a router.

[0078] Figures 2a-1 to 2g in the embodiments of this application are merely shown as possible examples to facilitate understanding of the related content referred to in the embodiments of this application, and do not constitute limitations on the embodiments of this application.

[0079] The method 100 may include, for example, the following steps S101 and S102.

[0080] S101: Obtain a first IPv6 packet, the first IPv6 packet including an association channel, the association channel carrying a plurality of different types of control channels, each type of control channel carrying at least one type of control and management message.

[0081] In this embodiment of the application, when the first communication device corresponds to a head node on the transmission path of the first IPv6 packet, the first communication device may generate the first IPv6 packet. When the first communication device corresponds to an intermediate node on the transmission path of the first IPv6 packet, the first communication device may receive a second IPv6 packet from an upstream node, the second IPv6 packet includes an association channel, and the first communication device may process the second IPv6 packet based on the association channel in the second IPv6 packet to obtain the first IPv6 packet. Note that the specific content of the association channel included in the second IPv6 packet may be different from the specific content included in the association channel in the first IPv6 packet, and may certainly be the same. Whether they are the same or different depends on whether the node needs to process the association channel in the received packet. This is not particularly limited in this embodiment of the application. Certainly, when the first communication device corresponds to an intermediate node on the transmission path of the first IPv6 packet, the first communication device may instead receive the first IPv6 packet from the upstream node. For the specific implementation of the processing performed by the first communication device on the second IPv6 packet based on the association channel, please refer to the relevant description below, and details will not be described here.

[0082] In this embodiment of the application, to improve the efficiency of control and management on an IPv6 network, an IPv6 packet may be extended and a general field may be extended in the IPv6 packet to reflect the association channel. The general field may carry at least one control channel, and one type of control channel corresponds to at least one type of control and management message. The payload of the IPv6 packet may be extended and a general field may be extended in the payload to reflect the association channel, or an extension header of the IPv6 packet may be extended and a general field may be extended to reflect the association channel. In other words, the association channel may be carried in the payload of the first IPv6 packet or in the extension header of the first IPv6 packet.

[0083] In one example, when an extension header of an IPv6 packet is extended, a field can be extended to carry indication information, and the indication information indicates that the extension header of the IPv6 packet carries an association channel. In other words, in one example, in a first IPv6 packet, the extension header of the first IPv6 packet includes an association channel, and the extension header of the first IPv6 packet further includes indication information, and the indication information indicates that the extension header of the first IPv6 packet includes an association channel.

[0084] In one implementation of this embodiment of the application, the indication information may be carried in a type length value (TLV) field of the extension header. In other words, when the extension header of the IPv6 packet is extended, the TLV field may be extended to carry the indication information. Illustrative example: The extension header of the first IPv6 packet includes a TLV field 1, and the TLV field 1 carries the indication information. In one example, the type field of the extended TLV field may carry the indication information.

[0085] In one implementation of this embodiment of the application, the association channel may instead be carried in a TLV field of an extension header. In other words, when an extension header of an IPv6 packet is extended, the TLV field may be extended to carry the association channel. Illustrative example: The extension header of a first IPv6 packet includes TLV field 2, which carries the association channel.

[0086] In one implementation, when an association channel is carried using the TLV field 2, if the association channel carries multiple types of control channels, the TLV field 2 can include indication information of each type of control channel, and the indication information of each type of control channel indicates the type of the control channel included in the TLV field 2. For example, the indication information of each type of control channel can be carried in the value field of the TLV field 2. The indication information of each control channel may be the value of an indication bit corresponding to each control channel, or may be a specific value indicating each control channel. This is not particularly limited in this embodiment of the application. For example, in the TLV field 2, if the values ​​of the indication bits corresponding to the control channel 1 and the control channel 2 are both 1, and the values ​​of the indication bits corresponding to the other control channels are 0, it indicates that the TLV field includes the control channel 1 and the control channel 2. The indication bit referred to here may include, for example, 1 bit. In another example, if the value field of the TLV field includes the value 1, and the value 1 corresponds to the control channel 1, it indicates that the TLV field includes the control channel 1. The value 1 referred to here may be conveyed, for example, in the channel type field shown in FIG. 2a-1 or FIG. 2a-2.

[0087] It should be noted that in one implementation of this embodiment of the present application, the indication information and the association channel may be carried in the same TLV field, i.e., TLV field 1 and TLV field 2 may be the same TLV field. In this case, the indication information may be carried in the type field of the TLV field, and the association channel is carried in the value field of the TLV field. By using this solution, when an IPv6 packet is extended, it is not necessary to extend multiple TLV fields, but only one TLV field needs to be extended.

[0088] In one implementation, when the indication information and the association channel can be carried in the same TLV field, the TLV field can further include a channel type field, which indicates the type of the control channel carried by the association channel. In this case, the type field of the TLV field carries the indication information, which indicates that the content carried in the TLV field is an association channel. The value field of the TLV field includes a channel type field, which indicates the type of the control channel carried by the association channel. When the association channel carries multiple types of control channels, the value field of the TLV field can include multiple channel type fields, which have a one-to-one correspondence with the multiple types of control channels.

[0089] In this case, please refer to Figure 2a-1 and Figure 2a-2 for the structure of the TLV field. Figure 2a-1 and Figure 2a-2 are both schematic diagrams of the structure of the TLV field according to one embodiment of this application. Figure 2a-1 shows the structure of the TLV field when the association channel carries one type of control channel, and Figure 2a-2 shows the structure of the TLV field when the association channel carries multiple types of control channels.

[0090] In Figures 2a-1 and 2a-2: The type field 201 conveys indication information.

[0091] Channel type field 202 and channel type field 204 convey the channel type.

[0092] Reserved fields are fields that are set aside for later extension of the TLV fields, and reserved fields are optional fields.

[0093] The value field 203 carries at least one control and management message carried by the control channel indicated by the channel type 202. In one example, the value field 203 can include at least one sub-TLV, where one sub-TLV carries one type of control and management message. The length of the value field 203 may be determined based on the control and management message carried, or may be a fixed length, which is not limited herein.

[0094] The value field 205 carries at least one control and management message carried by the channel type 204. In one example, the value field 205 can include at least one sub-TLV, where one sub-TLV carries one type of control and management message. The length of the value field 205 can be determined based on the control and management message carried, or can be a fixed length, which is not limited herein. In one example, the at least one control and management message carried in the value field 203 or the value field 205 can be understood as a protocol data unit (PDU) carrying the control and management message.

[0095] In yet another example, to avoid excessive extension of the extension header of the IPv6 packet, an undefined field in the extension header of the IPv6 packet may carry the indication information. Considering that a flags field in the SRH of the SRv6 packet is not clearly defined in the SRv6 packet, in some embodiments, when the first IPv6 packet is an SRv6 packet, a flags field in the SRH of the first IPv6 packet includes the indication information.

[0096] In this embodiment of the application, the at least one type of control channel carried by the management channel may include, for example, one or more of an OAM channel, a fault indication channel, a resource management channel, a signaling communication channel (SCC), and an MCC.

[0097] The control and management messages carried by the OAM channel may be, for example, OAM messages. The OAM messages are a collective term for a set of messages for performing operation, management, and maintenance on an end-to-end IPv6 path, for example, an SRv6 path. The OAM channel in this application may support hop-by-hop detection and may also support end-to-end detection. The OAM messages include, but are not limited to, connectivity check messages, client signal failure indication messages, one-way / two-way packet loss measurement messages, one-way / two-way latency measurement messages, and link loopback messages. The connectivity check messages are used to perform connectivity checks on the IPv6 path. The client signal failure indication messages are used to detect whether a client signal failure exists on the IPv6 path. The one-way / two-way packet loss measurement messages are used to detect one-way / two-way packet loss on the SRv6 path. The one-way / two-way latency measurement messages are used to detect one-way / two-way latency of the IPv6 path. The link loopback messages are used to perform loopback detection on the IPv6 path. In one example, when the OAM message corresponds to a plurality of different types of messages, the OAM channel corresponds to a plurality of different types of OAM channels, e.g., when the OAM message is a connectivity check message, the OAM channel corresponds to a connectivity check channel and carries the connectivity check message.

[0098] The format of the OAM message is not limited in this embodiment of the application, as long as the message can implement the corresponding OAM detection function. The format of the packet carrying the OAM message is also not particularly limited in this embodiment of the application. In one example, if the OAM message is a connectivity check message, for example, the channel type can indicate that the control channel is a connectivity check channel, and the value field carries the connectivity check message.

[0099] The control and management message carried by the fault indication channel may be, for example, a fault indication message. The control and management message carried by the fault indication channel records fault indication information of the first path. In this case, the first communication device corresponds to a node on the first path, and the first path may be a transmission path of the first IPv6 packet. The first path referred to here may be an end-to-end path or a segment of a path, which is not limited herein. In one example, the fault indication message may include one or more of the fault indication information, for example, forward fault indication information and / or backward fault indication information. The forward fault indication information indicates that there is a fault in an upstream node of the first communication device on the transmission path of the first IPv6 packet, for example, that there is a fault in an intermediate node on the transmission path of the first IPv6 packet. The upstream node referred to here may be, for example, that the bit error rate of the upstream node is higher than a certain threshold, or that the packet loss rate of the upstream node is higher than a certain threshold, which is not limited herein. The backward failure indication information indicates that there is a failure in a downstream node of the first communication device on the transmission path of the first IPv6 packet, for example, that there is a failure in a tail node on the transmission path of the first IPv6 packet. Similarly, the failure of the downstream node referred to herein may be, for example, that the bit error rate of the downstream node is higher than a certain threshold, or that the packet loss rate of the downstream node is higher than a certain threshold, which is not limited herein. In yet another example, the failure indication information may reflect, for example, a failure state of the first path. For example, the failure indication information may include one or more of signal fail (SF), signal degrade (SD), bit error rate higher than a certain threshold, packet loss rate higher than a certain threshold, and latency higher than a certain threshold. In this case, the control and management message carried by the failure indication channel may include, for example, indication bits corresponding to various types of failure indication information. In another implementation, the failure indication information may be, for example, information such as bit error rate and packet loss rate of a node on the first path.In this case, the control and management message carried by the failure indication channel may for example include a specific value of the bit error rate and / or a specific value of the packet loss rate. Optionally, the failure indication message may further include an identifier of the first path.

[0100] In one example, when the channel type field in the association channel indicates a failure indication channel, the value field of the TLV field carrying the association channel contains a failure indication message. For example, in Fig. 2a-1, the channel type field 202 indicates a failure indication channel and the value field 203 carries a failure indication message. In another example, in Fig. 2a-2, the channel type field 204 indicates a failure indication channel and the value field 205 carries a failure indication message.

[0101] In yet another example, the failure indication message is carried in a TLV field, and the TLV field referred to here can be carried in the value field 203 of the TLV field shown in Fig. 2a-1, or can be carried in the value field 203 or 205 of the TLV field shown in Fig. 2a-2. Referring to Fig. 2b, Fig. 2b is a schematic diagram of a structure of a failure indication message according to one embodiment of this application. Regarding Fig. 2b, the following should be noted:

[0102] The type field of the TLV field shown in Figure 2b indicates that the control and management message carried in the TLV field is a fault indication message; a path ID field (optional) carries an identifier of the first path, the identifier of the first path may not be carried in the failure indication message; The flags (flags) field carries one or more of the above-mentioned failure indication information. For example, in one example, the flags field includes two indication bits. One indication bit indicates forward failure indication information, and another indication bit indicates backward failure indication information. When the indication bit indicating forward failure indication information has a value of 1, it indicates that the failure indication message includes forward failure indication information, and when the indication bit indicating backward failure indication information has a value of 1, it indicates that the failure indication message includes backward failure indication information. In yet another example, the flags field includes five indication bits, and the five indication bits can indicate five types of failure indication information, which are SF, SD, bit error rate higher than a specific threshold, packet loss rate higher than a specific threshold, and latency higher than a specific threshold, and one indication bit indicates one type of failure indication information. In another example, the flags field includes a field carrying a bit error rate and a field carrying a packet loss rate.

[0103] In addition, in yet another example, the fault indication message may include multiple types of messages, for example, a link status indication message and a link parameter indication message. The link status indication message may include one or more of the fault indication information, such as SF, SD, a bit error rate higher than a specific threshold, a packet loss rate higher than a specific threshold, and a latency higher than a specific threshold. The link parameter indication message may include information, such as a bit error rate and a packet loss rate. In this case, the type field shown in FIG. 2b may indicate one of the link status indication message or the link parameter indication message. Correspondingly, when the type field shown in FIG. 2b indicates the link status indication message, the flag field shown in FIG. 2b includes one or more of the fault indication information, such as SF, SD, a bit error rate higher than a specific threshold, a packet loss rate higher than a specific threshold, and a latency higher than a specific threshold. When the type field shown in FIG. 2b indicates the link parameter indication message, the flag field shown in FIG. 2b includes one or more of the fault indication information, such as a bit error rate and a packet loss rate.

[0104] The control and management messages carried by the resource management channel are used to perform resource management on a path, e.g., the first path, where the first communication device corresponds to a node on the first path, and the first path may be a transmission path of a first IPv6 packet.

[0105] The control and management message carried by the resource management channel may be, for example, a resource management message. The resource management message may include multiple types of messages. In one example, the resource management message may include a resource reservation request message that instructs a node on the first path to reserve resources. For example, the resource reservation request message may carry SLA information, such as bandwidth and latency. In yet another example, the resource management message may include a resource status update message that is used to collect available resources of a node on the first path, such as resource information, such as bandwidth, buffers, and latency, that can be provided by a node on the first path. In another example, the resource management message may include a resource reservation cancellation message that is used to cancel a resource reservation request.

[0106] For understanding the resource reservation request message, please refer to Fig. 2c. Fig. 2c is a schematic diagram of the structure of the resource reservation request message according to one embodiment of this application. The resource reservation request message is carried in a TLV field. The TLV fields mentioned here may be carried in the value field of the TLV field shown in Fig. 2a-1 or Fig. 2a-2. Please note the following about Fig. 2c.

[0107] A message type field indicates that the resource management message carried in the TLV field is a resource reservation request message; The Path ID field indicates an identifier for the first path, The desired bandwidth indicates the bandwidth requested to be reserved.

[0108] Regarding the resource reservation request message, it should be noted that FIG. 2c is merely an example, and does not constitute a limitation to this embodiment of this application.

[0109] For understanding the resource status update message, please refer to Fig. 2d. Fig. 2d is a schematic diagram of the structure of the resource status update message according to one embodiment of this application. The resource status update message is carried in a TLV field. The TLV fields mentioned here may be carried in the value field of the TLV field shown in Fig. 2a-1 or Fig. 2a-2. Please note the following about Fig. 2d.

[0110] the message type field indicates that the resource management message carried in the TLV field is a resource status update message; The Path ID field indicates an identifier for the first path, node ID[i] carries an identifier for node i on the first path, where the value of i is less than or equal to n and greater than or equal to 0, and the first path includes at least (n+1) nodes; Interface ID [i] denotes the interface identifier of node i, offered bandwidth[i] denotes the bandwidth that can be provided by node i, Offered latency[i] denotes the latency that can be offered by node i.

[0111] Regarding the resource status update message, it should be noted that FIG. 2d is merely an example, and does not constitute a limitation to this embodiment of the application.

[0112] For understanding the resource cancel message, please refer to Fig. 2e. Fig. 2e is a schematic diagram of the structure of the resource cancel message according to one embodiment of this application. The resource cancel message is carried in a TLV field. The TLV fields mentioned here may be carried in the value field of the TLV field shown in Fig. 2a-1 or Fig. 2a-2. Please note the following about Fig. 2e.

[0113] The message type field indicates that the resource management message carried in the TLV field is a resource cancel message; The Path ID field indicates the identifier of the path for which the resource reservation is to be cancelled.

[0114] Certainly, the resource cancellation message may further include other optional fields, such as information on the desired quality of service, the resource reservation style, and the requested bandwidth, etc., which is not particularly limited in this embodiment of this application.

[0115] Regarding the resource revocation message, it should be noted that FIG. 2e is merely an example, and does not constitute a limitation to this embodiment of the application.

[0116] It should be noted that the resource management message in this embodiment of the application may instead be an RSVP message, such as the RSVP message mentioned in RFC 3209, or may be a message obtained after corresponding extensions are made to the mentioned RSVP message, which is not particularly limited in this embodiment of the application.

[0117] The SCC is configured to provide an independent channel for transmitting SCC messages between two nodes on an IPv6 path, and the SCC messages are used to transmit control information.

[0118] The MCC is configured to provide an independent channel for transmitting MCC messages between two nodes on an IPv6 path, and the MCC messages are used to transmit management information.

[0119] Regarding MCC and SCC, please note that in a conventional IPv6 network, there is no independent channel for transmitting management or control information between any two nodes. Therefore, an independent control and management mechanism is required to transmit management and control messages. MCC implements the effect of transmitting management messages without using an independent control and management mechanism, and SCC implements the effect of transmitting control messages without using an independent control and management mechanism.

[0120] The specific format of the SCC message and the MCC message is not particularly limited in this embodiment of the present application. In one example, for the format of the SCC message and the MCC message, please refer to the relevant description part in RFC 5718, and the details will not be described here.

[0121] As mentioned above, the association channel may carry at least one control and management message, which is a message for controlling and / or managing a path. In this embodiment of the application, in order to enable a node receiving the first IPv6 packet to determine a path associated with the association channel, the first IPv6 packet may further include identification information, which is used to identify a first path, which is a transmission path of the first IPv6 packet. Thus, the node receiving the first IPv6 packet may identify an association relationship between the association channel in the first IPv6 packet and the first path, so as to determine at least one control and management message in the association channel for controlling and / or managing the first path. Furthermore, the node receiving the first IPv6 packet may perform a corresponding operation based on the identification information and the at least one control and management message in the association channel.

[0122] Regarding the identification information for identifying the first path, please note the following.

[0123] In one example, if the first IPv6 packet is an SRv6 packet, a segment list included in the SRH of the SRv6 packet may indicate the transmission path of the SRv6 packet. Therefore, the identification information may be carried by using the segment list of the SRv6 packet, i.e., the identification information may be the segment list of the SRv6 packet. The segment list may include some SIDs. The SID indicates an intermediate node through which the transmission path passes, or the SID indicates an SRv6 adjacent link included in the transmission path. An adjacent link between two nodes refers to a link used for direct communication between the two nodes. When one node transmits a packet to the other node by using an adjacent link, the other node is the next hop of the preceding node. Also, in the SRv6 packet, the SRH of the SRv6 packet may further include a path segment field, where the path segment field includes 128 bits, and the value of the path segment field is used to identify the SRv6 path. If the first IPv6 packet used as an SRv6 packet includes a path segment field, the value of the path segment field is used to identify the transmission path of the first IPv6 packet. Therefore, the identification information may be carried in the path segment field of the SRv6 packet instead. In one example, the extension header of the first IPv6 packet referred to in this embodiment of the application may be a hop-by-hop (HBH) options header. In other words, the HBH options header of the first IPv6 packet may include the association channel. In yet another example, the extension header of the first IPv6 packet referred to in this embodiment of the application may be a destination options header (DOH). In other words, the DOH of the first IPv6 packet may include the association channel. In another example, if the first IPv6 packet is an SRv6 packet, the extension header of the first IPv6 packet referred to in this embodiment of the application may be an SRH. In other words, the SRH of the first IPv6 packet may include the association channel.Certainly, when the first IPv6 packet is an SRv6 packet, the extension header of the first IPv6 packet may be a DOH. In other words, when the first IPv6 packet is an SRv6 packet, the DOH of the first IPv6 packet may include an association channel.

[0124] When the SRH of the first IPv6 packet carries an association channel, please refer to Figure 2f for the structure of the first IPv6 packet. Figure 2f is a schematic diagram of the structure of the first IPv6 packet according to an embodiment of this application.

[0125] For the TLV carrying the association channel shown in Figure 2f, please refer to the description of Figure 2a-1 or Figure 2a-2, and it will not be described again here. For the other fields shown in Figure 2f, please refer to the relevant description in RFC 8200 and RFC 8754, and it will not be described in detail here.

[0126] When the DOH of the first IPv6 packet carries an association channel, please refer to Fig. 2g for the structure of the first IPv6 packet. Fig. 2g is a schematic diagram of the structure of the first IPv6 packet according to an embodiment of this application.

[0127] For the TLV carrying the association channel shown in Figure 2g, please refer to the description of Figure 2a-1 or Figure 2a-2, and it will not be described again here. For the other fields shown in Figure 2f, please refer to the relevant description in RFC 8200, and it will not be described in detail here.

[0128] It should be noted that Figures 2f and 2g are shown only for ease of understanding and do not constitute limitations on this embodiment of the present application. For example, in one example, the first IPv6 packet shown in Figure 2f may further include a DOH, and the first IPv6 packet shown in Figure 2g may further include an SRH. If Figure 2g includes an SRH, the DOH may be placed between the SRH and the IPv6 base header, and a hop-by-hop control channel may be implemented. The DOH may instead be a DOH between the SRH and the payload. In this case, an end-to-end control channel may be supported.

[0129] It should be noted that the first IPv6 packet in this embodiment of the application may be a service packet or a measurement packet. This is not particularly limited in this embodiment of the application. It can be understood that if the first IPv6 packet is a service packet, when the service packet is transmitted, control and management can be performed on the IPv6 network based on the status when the IPv6 network transmits the actual service packet. That is, in this application, a control channel together with the traffic can be implemented based on the data plane. If the first IPv6 packet is a measurement packet, control and management can be performed on the IPv6 network according to the requirements. For example, control and management can be performed on the IPv6 network before the service packet is transmitted, and the service packet is transmitted after the transmission quality of the IPv6 network is optimized, thereby improving the service quality of the IPv6 network.

[0130] S102: Forward the first IPv6 packet.

[0131] After obtaining the first IPv6 packet, the first communication device may forward the first IPv6 packet, and the node receiving the first IPv6 packet may perform a corresponding operation based on the at least one type of control and management message carried on the association channel to implement a control and management function corresponding to the at least one type of control and management message.

[0132] In some embodiments, after receiving the first IPv6 packet, an intermediate node on the transmission path of the first IPv6 packet may perform an operation corresponding to the at least one type of control and management message. The operations performed by the intermediate node based on the first IPv6 packet are not described in detail here, and reference should be made to the following section regarding the operations performed by the first communication device based on the second IPv6 packet.

[0133] In some embodiments, after receiving the first IPv6 packet, a tail node on the transmission path of the first IPv6 packet may perform an operation corresponding to the at least one type of control and management message.

[0134] In one example, when the association channel of the first IPv6 packet includes an OAM channel, i.e., when the first IPv6 packet includes an OAM message, for example, the tail node may upload a timestamp to the controller. In another example, the tail node may calculate the transmission latency of the first IPv6 packet based on the timestamp included in the received OAM message and a local timestamp.

[0135] In yet another example, if the association channel of the first IPv6 packet includes a failure indication channel, i.e., if the first IPv6 packet includes a failure indication message, the tail node may obtain the failure indication information carried in the failure indication message. In addition, in one example, the tail node may perform corresponding operations based on the failure indication information. Illustrative example: If the failure indication message included in the association channel of the first IPv6 packet includes forward failure indication information, the tail node may, for example, return an IPv6 packet carrying backward failure indication information to the head node. If the failure indication message included in the association channel of the first IPv6 packet includes backward failure indication information, the tail node may, for example, verify whether the tail node has a failure, for example, verify whether the packet loss rate and / or bit error rate of the tail node exceeds a certain threshold. If the failure indication message included in the association channel of the first IPv6 packet includes one or more of SF, SD, a bit error rate higher than a certain threshold, a packet loss rate higher than a certain threshold, and a latency higher than a certain threshold, the tail node may, for example, notify the head node to perform a path switch. If the fault indication message included in the association channel of the first IPv6 packet includes the bit error rate and packet loss rate of each node, the tail node may, for example, upload fault indication information, such as the bit error rate and packet loss rate, to the controller or return the fault indication information to the head node of the first IPv6 packet.

[0136] In another example, if the association channel of the first IPv6 packet includes a resource management channel:

[0137] If the association channel of the first IPv6 packet includes a reservation request message, the tail node may reserve corresponding resources for the first path based on the resource reservation request message, for example. If the association channel of the first IPv6 packet includes a resource status update message, the available resource information of the tail node is added to the first IPv6 packet, and the available resource information is returned to the head node of the first path. Please refer to Fig. 2d for understanding. Assuming that the tail node corresponds to the node ID[n] shown in Fig. 2d, the tail node may record the bandwidth that can be provided by the tail node in the Provided Bandwidth[n] field shown in Fig. 2d, and record the latency that can be provided by the tail node in the Provided Latency[n] field shown in Fig. 2d. If the association channel of the first IPv6 packet includes a resource reservation cancellation message, the first communication device may release the resources reserved for the first path indicated by the resource reservation cancellation message, for example.

[0138] From the above explanation, the following can be understood:

[0139] Since the extension header of the first IPv6 packet includes the association channel, when it is necessary to implement multiple control and management functions for a communication network, multiple types of control and management messages can be carried using the association channel without using multiple protocols to carry those multiple control and management messages, thereby improving the efficiency of control and management on the IPv6 network.

[0140] Compared with the methods described in Examples 1, 2, 3, and 4, the method 100 has the following technical advantages.

[0141] 1. Association channels carry control and management messages for multiple protocols and therefore can carry multiple TLV fields using one packet, reducing the amount of packets transmitting control and management information between nodes.

[0142] 2. Association channels can be carried using common TLV fields. TLV encapsulation is performed within IPv6 extension headers to eliminate other network layers, e.g. UDP, unifying and simplifying the encapsulation and transmission of packets containing control and management messages, and reducing device maintenance parameters, e.g. UDP port number entries.

[0143] 3. The transmission of control and management messages in TLV format with variable length can be supported by extension, so that more channel maintenance information can be conveyed.

[0144] 4. Message transmission is performed using IPv6 packet headers, so that the contents of the packet headers can be subjected to high-speed path processing on the device forwarding plane, improving message processing efficiency.

[0145] Compared to the scheme described in Example 5, since the association channel can be carried in multiple IPv6 extension headers, such as carried in the HBH options header or DOH, the method 100 can be applied not only to SRv6 nodes, but also to IPv6 nodes that do not support SR.

[0146] Also, existing IP layer protocols do not support MCC and SCC. Moreover, ICMPv6 can indicate diagnostic information, such as path connectivity and reachability, but cannot indicate node or network fault information. The BFD diagnostic word can indicate the reason why the BFD session status last changed, i.e., it indicates to the node the change in protocol status on the control plane of the BFD protocol, but cannot indicate node or network fault information. The method 100 can support functions such as indicating MCC, SCC, and node or network fault information. When a node needs to support a new upper layer protocol, the control and management information required by the upper layer protocol can be carried by using the association channel without redesigning the new upper layer protocol. Therefore, the protocol scalability is good, and the amount of node protocols and maintenance complexity are reduced.

[0147] In addition, in multiple different types of network convergence scenarios, the federated channel can carry multiple types of control and management messages within the IP extension header, simplifying the protocol stack without adding another layer protocol, reducing the complexity of node implementation, and improving the deployability in industrial scenarios.

[0148] As mentioned above, the first communication device can correspond to a head node on the transmission path of the first IPv6 packet, or can correspond to an intermediate node on the transmission path of the first IPv6 packet. In one example, when the first communication device corresponds to an intermediate node on the transmission path of the first IPv6 packet, in one example, the first communication device can receive a second IPv6 packet from an upstream node, the second IPv6 packet includes an association channel, and the first communication device can process the second IPv6 packet according to the association channel in the second IPv6 packet to obtain the first IPv6 packet.

[0149] In the following, as an example to explain a specific implementation in which the first communication device processes the second IPv6 packet based on the association channel in the second IPv6 packet, an example is used in which the first communication device corresponds to an intermediate node 1 on the transmission path of the first IPv6 packet.

[0150] In one example, when the association channel of the second IPv6 packet includes an OAM channel, i.e., when the association channel of the second IPv6 packet includes an OAM message, in some embodiments, for example, the first communication device may add a local timestamp of the intermediate node 1 to the second IPv6 packet to obtain the first IPv6 packet. In another example, the first communication device may add packet loss information of the intermediate node 1 to the second IPv6 packet to obtain the first IPv6 packet. In one example, the first communication device may add the timestamp and / or packet loss information of the intermediate node 1 to an extension header of the second IPv6 packet. In one example, to avoid excessive extension of the second IPv6 packet, the timestamp and / or packet loss information of the intermediate node 1 may be carried in a value field of a TLV carrying an OAM message. In yet another example, an additional TLV may be extended in the extension header of the second IPv6 packet to carry the timestamp and / or packet loss information of the intermediate node 1. The extension headers referred to herein include, but are not limited to, the HBH optional header, the DOH, and the SRH.

[0151] In another example, when the association channel includes a failure indication channel, i.e., when the association channel of the second IPv6 packet includes a failure indication message, in some embodiments, the intermediate node 1 may record the failure indication information confirmed by the intermediate node 1, such as, for example, a packet loss rate and / or a bit error rate, in the second IPv6 packet to obtain the first IPv6 packet. In one example, to avoid excessive extension of the second IPv6 packet, the bit error rate and / or the packet loss rate of the intermediate node 1 may be carried in the value field of the TLV carrying the failure indication message. In yet another example, an additional TLV may be extended in the extension header of the second IPv6 packet to carry the packet loss rate and / or the bit error rate of the intermediate node 1. The extension headers referred to herein include, but are not limited to, the HBH option header, the DOH, and the SRH.

[0152] In yet another example, when the association channel includes a resource management channel and the resource management channel carries a status update message, the first communication device may, for example, add available resource information of the intermediate node 1 to the second IPv6 packet to obtain the first IPv6 packet. For understanding, please refer to Fig. 2d. Assuming that the intermediate node 1 corresponds to the node ID[0] shown in Fig. 2d, the first communication device may record the bandwidth that can be provided by the intermediate node 1 in the provided bandwidth[0] field shown in Fig. 2d, and record the latency that can be provided by the intermediate node 1 in the provided latency[0] field shown in Fig. 2d.

[0153] In some embodiments, if the first communication device corresponds to an intermediate node on the transmission path of the first IPv6 packet, the first communication device may, after receiving the second IPv6 packet, perform another operation based on at least one type of control and management message carried in the management channel of the second IPv6 packet.

[0154] For example, if the association channel of the second IPv6 packet includes an OAM message, the first communication device may further transmit a timestamp and / or packet loss information of the intermediate node 1 to the controller. In another example, if the association channel of the second IPv6 packet includes a resource reservation request message, the first communication device may reserve corresponding resources for the first path, for example, based on the resource reservation request indication. If the association channel of the second IPv6 packet includes a resource reservation cancellation message, the first communication device may release resources reserved for the first path, for example, indicated by the resource reservation cancellation message.

[0155] In an IPv6 network, for a path, such as the first path, it is particularly important to determine whether the first path has a failure. When a node on the first path, such as a head node or a tail node, determines that the first path has a failure, it can take corresponding measures, such as performing a path switch, to prevent the quality of service from being affected by the failed first path.

[0156] Currently, when there is a failure in the first path, a node on the first path can report an alarm to the management plane. However, after receiving the alarm, the management plane needs to manually resolve the failure on site, which is inefficient.

[0157] In view of this, an embodiment of this application provides a packet processing method, which will be described below with reference to the accompanying drawings.

[0158] Fig. 3 is a schematic flowchart of a packet processing method according to an embodiment of this application. The packet processing method 200 shown in Fig. 3 can be executed by a first communication device. The first communication device corresponds to a node in an IPv6 network, and can be, for example, a head node or an intermediate node on a first path. The packet processing method 200 shown in Fig. 3 can include, for example, the following steps S201 and S202.

[0159] S201: Obtain a first IPv6 packet, the first IPv6 packet including a fault indication channel, and the fault indication channel records fault indication information of a first path.

[0160] When the first communication device corresponds to a head node on the first path, the first communication device may generate a first IPv6 packet. When the first communication device corresponds to an intermediate node on the first path, the first communication device may receive a second IPv6 packet from an upstream node. In one example, the second IPv6 packet also includes a failure indication channel. After receiving the second IPv6 packet, the first communication device may process the second IPv6 packet to obtain the first IPv6 packet. The first path referred to here may be the transmission path of the first IPv6 packet. The failure notification channel referred to here included in the second IPv6 packet may include, for example, failure notification information recorded in the second IPv6 packet by an upstream node of the first communication device. Certainly, when the first communication device corresponds to an intermediate node on the first path, the first communication device may instead receive the first IPv6 packet from an upstream node.

[0161] In this embodiment of the application, the failure indication channel may be carried in the payload of the first IPv6 packet or in an extension header of the first IPv6 packet. The extension header referred to here may be an HBH option header. In other words, the HBH option header of the first IPv6 packet may include the failure indication message. In yet another example, the extension header referred to here may be a DOH. In other words, the DOH of the first IPv6 packet may include the failure indication message. In another example, if the first IPv6 packet is an SRv6 packet, the extension header referred to here may be an SRH. In other words, the SRH of the first IPv6 packet may include the failure indication message.

[0162] In one example, the failure indication channel may be configured to carry a failure indication message. The failure indication message may be carried in an extended TLV. The extended TLV may be an independent TLV, which does not carry other types of control channels in addition to carrying the failure indication channel. The extended TLV may instead be a TLV carrying an association channel. In this case, in addition to carrying the failure indication channel, the TLV may also carry other control channels. For the structure of the TLV carrying the failure indication message and the failure indication information that may be carried in the failure indication message, please refer to the description of the failure indication message in the method 100, and details will not be described here.

[0163] It should be noted that the TLV carrying the fault indication message can be carried in the value field of the TLV including the association channel, for example. For example, the TLV carrying the fault indication message can be carried in the value field of the TLV field shown in Fig. 2a-1 or Fig. 2a-2. For the TLV including the association channel, please refer to the relevant description in the method 100, and the details will not be described here.

[0164] It should be noted that the first IPv6 packet in this embodiment of the application may be a service packet or a measurement packet. This is not particularly limited in this embodiment of the application. It can be understood that if the first IPv6 packet is a service packet, the failure indication information when the IPv6 network transmits the actual service packet can be determined. If the first IPv6 packet is a measurement packet, the failure indication information of the first path can be determined according to the requirement. For example, in order to determine a transmission path that satisfies the service quality of the service and guarantee the service quality, the failure indication information of the first path can be determined before the service packet is transmitted. The fact that the first IPv6 packet is a service packet indicates that the data payload of the first IPv6 packet carries user data. If the first IPv6 packet is a measurement packet, the data payload of the first IPv6 packet does not carry user data.

[0165] S202: Forward the first IPv6 packet.

[0166] After obtaining the first IPv6 packet, the first communication device may forward the first IPv6 packet. A node that receives the first IPv6 packet, such as a tail node on the transmission path of the first IPv6 packet, may perform corresponding operations based on the failure indication message. For the operation part performed by the node that receives the first IPv6 packet based on the failure indication information, please refer to the operation part performed by the tail node based on the failure indication message in the method 100, and the details will not be described again here.

[0167] It can be seen that by using the method 200, a function of determining failure indication information of a first path in an IPv6 network can be implemented. Specifically, the failure indication information in the first path can be quickly transmitted to another node, such as a tail node, on the first path through a data plane, so that when a node, such as a tail node, on the first path determines that the first path has a failure, corresponding measures can be quickly and efficiently taken, and service quality is prevented from being affected by the failed first path.

[0168] It can be understood that in the method 200, when a TLV carrying a fault indication message is carried in a value field of a TLV including an association channel, the first IPv6 packet carries an association channel, and the association channel carries a plurality of different types of control channels. Each type of control channel carries at least one type of control and management message, and the plurality of different types of control and management messages includes a fault indication channel. For the association universal channel, please refer to the relevant description of the method 100, and the details will not be described again here. Correspondingly, for the manner in which the first communication device processes the association channel when the first IPv6 packet in the method 200 carries the association channel, please refer to the relevant description of the method 100, and the details will not be described again here.

[0169] An embodiment of the present application further provides a packet processing method 300. Please refer to Fig. 4, which is a schematic flowchart of a packet processing method according to an embodiment of the present application. The method 300 shown in Fig. 4 may be performed by a tail node on a transmission path of the first IPv6 packet in the method 100. For example, the method 300 may include the following steps S301 and S302.

[0170] S301: Receive a first Internet Protocol version 6 (IPv6) packet, the first IPv6 packet including an association channel, the association channel carrying a plurality of different types of control channels, each type of control channel carrying at least one type of control and management message.

[0171] S302: Perform an operation corresponding to the at least one type of control and management message.

[0172] For the specific implementation of method 300, please refer to the relevant description of method 100, and the details will not be described again here.

[0173] In addition, for the association channel, the control channel, the control and management messages, and the operations corresponding to the control and management messages in the method 300, please refer to the relevant description parts in the method 100, and the details will not be described again here.

[0174] An embodiment of the present application further provides a packet processing method 400. Please refer to Fig. 5, which is a schematic flowchart of a packet processing method according to an embodiment of the present application. The method 400 shown in Fig. 5 may be performed by a tail node on a transmission path of the first IPv6 packet in the method 200. For example, the method 400 may include the following S401 and S402.

[0175] S401: A tail node of a first path receives a first Internet Protocol version 6 (IPv6) packet, the first IPv6 packet includes a fault indication channel, and the fault indication channel records fault indication information of the first path.

[0176] S402: Obtain fault indication information for the first path.

[0177] For a specific implementation of the method 400, please refer to the relevant description of the method 200, and the details will not be described again here.

[0178] In addition, for operations corresponding to the fault indication message and the control and management message in the method 400, please refer to the relevant description parts in the method 200, and the details will not be described again here.

[0179] In addition, an embodiment of the present application further provides a communication device 600 as shown in Fig. 6. Fig. 6 is a schematic diagram of a configuration of a communication device according to an embodiment of the present application. The communication device 600 includes a transceiver unit 601 and a processing unit 602. The communication device 600 may be configured to perform the method 100, the method 200, the method 300, or the method 400 in the above-mentioned embodiments.

[0180] In one example, the communication device 600 may perform the method 100 in the above-mentioned embodiment. When the communication device 600 is configured to perform the method 100 in the above-mentioned embodiment, the transceiver unit 601 is configured to perform the receiving and transmitting operations in the method 100 (in this application, the receiving and transmitting operations are operations related to receiving and / or transmitting). The processing unit 602 is configured to perform operations other than the receiving and transmitting operations in the method 100. For example, the processing unit 602 is configured to obtain a first IPv6 packet, the first IPv6 packet including an association channel, the association channel carrying a plurality of different types of control channels, each type of control channel carrying at least one type of control and management message. The transceiver unit 601 is configured to forward the first IPv6 packet.

[0181] In one example, the communication device 600 may perform the method 200 in the above-mentioned embodiment. When the communication device 600 is configured to perform the method 200 in the above-mentioned embodiment, the transceiver unit 601 is configured to perform the receiving and transmitting operations in the method 200. The processing unit 602 is configured to perform an operation other than the receiving and transmitting operations in the method 200. For example, the processing unit 602 is configured to obtain a first IPv6 packet, the first IPv6 packet includes a failure indication channel, and the failure indication channel records failure indication information of a first path. The transceiver unit 601 is configured to forward the first IPv6 packet.

[0182] In one example, the communication device 600 may perform the method 300 in the above embodiment. When the communication device 600 is configured to perform the method 300 in the above embodiment, the transceiver unit 601 is configured to perform the receiving and transmitting operations in the method 300. The processing unit 602 is configured to perform an operation other than the receiving and transmitting operations in the method 300. For example, the transceiver unit 601 is configured to receive a first Internet Protocol version 6 (IPv6) packet, the first IPv6 packet including an association channel, the association channel carrying a plurality of different types of control channels, each type of control channel carrying at least one type of control and management message. The processing unit 602 is configured to perform an operation corresponding to the at least one type of control and management message.

[0183] In one example, the communication device 600 may perform the method 400 in the above-mentioned embodiment. When the communication device 600 is configured to perform the method 400 in the above-mentioned embodiment, the transceiver unit 601 is configured to perform the receiving and transmitting operations in the method 400. The processing unit 602 is configured to perform an operation other than the receiving and transmitting operations in the method 400. For example, the transceiver unit 601 is configured to receive a first Internet Protocol version 6 (IPv6) packet, the first IPv6 packet includes a failure indication channel, and the failure indication channel records failure indication information of a first path. The processing unit 602 is configured to obtain the failure indication information of the first path.

[0184] In addition, an embodiment of the present application further provides a communication device 700 as shown in Fig. 7. Fig. 7 is a schematic diagram of a configuration of a communication device according to an embodiment of the present application. The communication device 700 includes a communication interface 701 and a processor 702 connected to the communication interface 701. The communication device 700 may be configured to perform the method 100, the method 200, the method 300, or the method 400 in the above-mentioned embodiments.

[0185] In one example, the communication device 700 may perform the method 100 in the above-mentioned embodiment. When the communication device 700 is configured to perform the method 100 in the above-mentioned embodiment, the communication interface 701 is configured to perform the receiving and transmitting operations in the method 100. The processor 702 is configured to perform an operation other than the receiving and transmitting operations in the method 100. For example, the processor 702 is configured to obtain a first IPv6 packet, the first IPv6 packet including an association channel, the association channel carrying a plurality of different types of control channels, each type of control channel carrying at least one type of control and management message. The communication interface 701 is configured to forward the first IPv6 packet.

[0186] In one example, the communication device 700 may perform the method 200 in the above embodiment. When the communication device 700 is configured to perform the method 200 in the above embodiment, the communication interface 701 is configured to perform the receiving and transmitting operations in the method 200. The processor 702 is configured to perform an operation other than the receiving and transmitting operations in the method 200. For example, the processor 702 is configured to obtain a first IPv6 packet, the first IPv6 packet includes a failure indication channel, and the failure indication channel records failure indication information of a first path. The communication interface 701 is configured to forward the first IPv6 packet.

[0187] In one example, the communication device 700 may perform the method 300 in the above embodiment. When the communication device 700 is configured to perform the method 300 in the above embodiment, the communication interface 701 is configured to perform the receiving and transmitting operations in the method 300. The processor 702 is configured to perform an operation other than the receiving and transmitting operations in the method 300. For example, the communication interface 701 is configured to receive a first Internet Protocol version 6 (IPv6) packet, the first IPv6 packet including an association channel, the association channel carrying a plurality of different types of control channels, each type of control channel carrying at least one type of control and management message. The processor 702 is configured to perform an operation corresponding to the at least one type of control and management message.

[0188] In one example, the communication device 700 may perform the method 400 in the above-mentioned embodiment. When the communication device 700 is configured to perform the method 400 in the above-mentioned embodiment, the communication interface 701 is configured to perform the receiving and transmitting operations in the method 400. The processor 702 is configured to perform an operation other than the receiving and transmitting operations in the method 400. For example, the communication interface 701 is configured to receive a first Internet Protocol version 6 (IPv6) packet, the first IPv6 packet includes a failure indication channel, and the failure indication channel records the failure indication information of the first path. The processor 702 is configured to obtain the failure indication information of the first path.

[0189] In addition, an embodiment of the present application further provides a communication device 800 as shown in Fig. 8. Fig. 8 is a schematic diagram of a configuration of a communication device according to an embodiment of the present application.

[0190] The communication device 800 may be configured to perform the method 100, the method 200, the method 300, or the method 400 in the above-mentioned embodiments.

[0191] As shown in FIG. 8, the communication device 800 may include a processor 810, a memory 820 coupled to the processor 810, and a transceiver 830. The transceiver 830 may be, for example, a communication interface, an optical module, or the like. The processor 810 may be a central processing unit (CPU), a network processor (NP), or a combination of a CPU and an NP. Alternatively, the processor may be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The PLD may be a complex programmable logic device (CPLD), a field programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof. The processor 810 may be a single processor or may include multiple processors. Memory 820 may include volatile memory, such as random access memory (RAM). Memory may also include non-volatile memory, such as read-only memory (ROM), flash memory, a hard disk drive (HDD), or a solid-state drive (SSD). Memory 820 may also include a combination of the above types. Memory 820 may include a single memory or multiple memories.In one implementation, the memory 820 stores computer-readable instructions, which include a number of software modules, such as a transmitting module 821, a processing module 822, and a receiving module 823. After executing each software module, the processor 810 may perform a corresponding operation based on the instructions of each software module. In this embodiment, the operations performed by the software modules are actually operations performed by the processor 810 based on the instructions of the software modules.

[0192] In one example, the communication device 800 may perform the method 100 in the above-mentioned embodiment. When the communication device 800 is configured to perform the method 100 in the above-mentioned embodiment, the transceiver 830 is configured to perform the receiving and transmitting operations in the method 100. The processor 810 is configured to perform an operation other than the receiving and transmitting operations in the method 100. For example, the processor 810 is configured to obtain a first IPv6 packet, the first IPv6 packet including an association channel, the association channel carrying a plurality of different types of control channels, each type of control channel carrying at least one type of control and management message. The transceiver 830 is configured to forward the first IPv6 packet.

[0193] In one example, the communication device 800 may perform the method 200 in the above embodiment. When the communication device 800 is configured to perform the method 200 in the above embodiment, the transceiver 830 is configured to perform the receiving and transmitting operations in the method 200. The processor 810 is configured to perform an operation other than the receiving and transmitting operations in the method 200. For example, the processor 810 is configured to obtain a first IPv6 packet, the first IPv6 packet including a failure indication channel, and the failure indication channel records failure indication information of a first path. The transceiver 830 is configured to forward the first IPv6 packet.

[0194] In one example, the communication device 800 may perform the method 300 in the above embodiment. When the communication device 800 is configured to perform the method 300 in the above embodiment, the transceiver 830 is configured to perform the receiving and transmitting operations in the method 300. The processor 810 is configured to perform operations other than the receiving and transmitting operations in the method 300. For example, the transceiver 830 is configured to receive a first Internet Protocol version 6 (IPv6) packet, the first IPv6 packet including an association channel, the association channel carrying a plurality of different types of control channels, each type of control channel carrying at least one type of control and management message. The processor 810 is configured to perform operations corresponding to the at least one type of control and management message.

[0195] In one example, the communication device 800 may perform the method 400 in the above embodiment. When the communication device 800 is configured to perform the method 400 in the above embodiment, the transceiver 830 is configured to perform the receiving and transmitting operations in the method 400. The processor 810 is configured to perform an operation other than the receiving and transmitting operations in the method 400. For example, the transceiver 830 is configured to receive a first Internet Protocol version 6 (IPv6) packet, the first IPv6 packet including a failure indication channel, and the failure indication channel records the failure indication information of the first path. The processor 810 is configured to obtain the failure indication information of the first path.

[0196] The application further provides a computer-readable storage medium that stores instructions that, when executed on a computer, enable the computer to perform any one or more operations of the methods in any of the above-described embodiments (e.g., method 100, method 200, method 300, and method 400).

[0197] The application further provides a computer program product including a computer program that, when executed on a computer, enables the computer to perform any one or more operations of the methods in any of the above-described embodiments (e.g., method 100, method 200, method 300, and method 400).

[0198] The application further provides a communication device for performing the method 100 and a communication system including a communication device for performing the method 300 mentioned in the above embodiments.

[0199] The application further provides a communication system including a communication device for performing the method 200 and a communication device for performing the method 400 mentioned in the above embodiments.

[0200] The present application further provides a communication system including at least one memory and at least one processor, wherein the at least one memory stores instructions and the at least one processor executes the instructions, such that the communication system performs any one or more operations in method 100 and any one or more operations in method 300 in the above-mentioned embodiments of the present application.

[0201] The present application further provides a communication system including at least one memory and at least one processor, wherein the at least one memory stores instructions and the at least one processor executes the instructions, such that the communication system performs any one or more operations in method 200 and any one or more operations in method 400 in the above-mentioned embodiments of the present application.

[0202] In the specification, claims, and accompanying drawings of this application, the terms "first," "second," "third," "fourth," and the like (when present) are used to distinguish between similar objects and need not be used to describe a particular order or sequence. It should be understood that the terms so used are interchangeable in appropriate circumstances, and thus the embodiments of this application described herein can be implemented in an order other than that shown in the drawings or described herein. Additionally, the terms "comprise" and "have" and any variations thereof are intended to cover a non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units need not be limited to the steps or units explicitly recited, but may include other steps or units not explicitly recited or that are inherent in the process, method, product, or apparatus.

[0203] It can be clearly understood by those skilled in the art that, for the purpose of simple and concise description, the specific operation processes of the above-mentioned systems, devices and units can be referred to the corresponding processes in the above-mentioned method embodiments, and the details will not be described again here.

[0204] In some embodiments provided in this application, it should be understood that the disclosed system, device, and method may be implemented in other ways. For example, the described device embodiment is merely an example. For example, the unit division is merely a logical service division, and other ways may exist in actual implementation. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not implemented. In addition, the shown or described mutual couplings or direct couplings or communication connections may be implemented via some interfaces. Indirect couplings or communication connections between devices or units may be implemented in electronic, mechanical, or other forms.

[0205] The units described as separate parts may or may not be physically separate, and the components shown as units may or may not be physical units, i.e., they may be located in one place or distributed among multiple network units, and some or all of those units may be selected according to actual requirements to achieve the objectives of the solutions of the embodiments.

[0206] In addition, multiple service units in the embodiments of this application may be integrated into one processing unit, or each of the units may exist physically alone, or two or more units may be integrated into one unit. The integrated units may be implemented in the form of hardware or software service units.

[0207] When the integrated unit is implemented in the form of a software service unit and sold or used as an independent product, the integrated unit may be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application may be essentially implemented in the form of a software product, or a part of the technical solution may be implemented in the form of a software product. The computer software product is stored in a storage medium and includes some instructions that instruct a computer device (such as a personal computer, a server, a network device, and the like) to execute all or part of the steps of the method described in the embodiments of this application. The above-mentioned storage medium includes any medium that can store program code, such as a USB flash drive, a removable hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.

[0208] Those skilled in the art should recognize that in one or more of the above examples, the services described in the present invention may be implemented using hardware, software, firmware, or any combination thereof. If the services are implemented using software, they may be stored on or transmitted as one or more instructions or code on a computer-readable medium. Computer-readable media includes computer storage media and communication media, and communication media includes any medium that facilitates the transfer of a computer program from one place to another. Storage media may be any available medium that can be accessed by a general purpose or special purpose computer.

[0209] The objectives, technical solutions and beneficial effects of the present invention are further described in detail in the above specific implementations. It should be understood that the above is only a specific implementation of the present invention.

[0210] The above-mentioned embodiments are merely used to describe the technical solutions of this application, and are not intended to limit the technical solutions. Although this application has been described in detail with reference to the above-mentioned embodiments, those skilled in the art should understand that the technical solutions described in the above-mentioned embodiments can still be modified or equivalently substituted for parts of the technical features, and such modifications or substitutions will not cause the essence of the corresponding technical solutions to depart from the spirit and scope of the technical solutions in the embodiments of this application.

Claims

1. 1. A packet processing method, comprising: receiving a first Internet Protocol version 6 (IPv6) packet, the first IPv6 packet having an association channel, the association channel carrying a plurality of different types of control channels, each type of control channel carrying at least one type of control and management message; obtaining said at least one type of control and management message; having the association channel is carried in a Type Length Value (TLV) field in an extension header of the first IPv6 packet; A type field of the TLV field carries an indication of the association channel, a channel type field of the TLV field indicates a type of a control channel carried by the association channel, and a value field of the TLV field carries the control and management message. method.

2. The method described in claim 1, wherein the extension header is a hop-by-hop (HBH) options header or a destination options header (DOH).

3. 2. The method of claim 1, wherein the first IPv6 packet is a Segment Routing Internet Protocol version 6 (SRv6) packet.

4. The method described in claim 3, wherein the extension header is a segment routing header (SRH).

5. 2. The method of claim 1, wherein the first IPv6 packet has an identification information, the identification information being used to identify a first path, the first path being a transmission path of the first IPv6 packet.

6. The method of claim 5 , wherein the identification information is used by nodes on the first path to identify an association relationship between the association channel and the first path.

7. 6. The method of claim 5, wherein the first IPv6 packet is a segment routing Internet Protocol version 6 (SRv6) packet, and a segment list or a path segment of the SRv6 packet carries the identifying information.

8. The plurality of different types of control channels include: Operation, Administration and Maintenance (OAM) channel, fault indication channel, resource management channel, signaling communication channel (SCC), and management communication channel (MCC); The method of claim 1 , comprising any two or more of:

9. The method of claim 8, wherein the control and management messages carried by the fault indication channel record fault indication information.

10. The method of claim 1 , wherein a payload of the first IPv6 packet carries user data.

11. 1. A packet processing method, comprising: obtaining a first Internet Protocol version 6 (IPv6) packet, the first IPv6 packet having an association channel, the association channel carrying a plurality of different types of control channels, each type of control channel carrying at least one type of control and management message; forwarding the first IPv6 packet; having the association channel is carried in a Type Length Value (TLV) field in an extension header of the first IPv6 packet; A type field of the TLV field carries an indication of the association channel, a channel type field of the TLV field indicates a type of a control channel carried by the association channel, and a value field of the TLV field carries the control and management message. method.

12. A communication device having a memory and a processor, the memory is configured to store program code; The processor is configured to execute instructions in the program code such that the communication device performs a method according to any one of claims 1 to 11. Communications equipment.

13. A computer program product comprising a program, which, when said program is executed on a processor, performs the method according to any one of claims 1 to 11.

14. A communication device for carrying out the method according to any one of claims 1 to 10; and a communication device for carrying out the method according to claim 11. A communication system having the above configuration.

Citation Information

Patent Citations

  • Communication apparatus for ethernet (r) OAM frame, OAM frame processing method and processing program

    JP2011223496A

  • Multifunctional control channel for pseudowire emulation

    US20110090909A1

  • System and method for dataplane-signaled packet capture in ipv6 environment

    US20170250907A1