A message processing method and related device

By introducing indication information into IPv6 packets, the problem of low parsing efficiency in existing technologies is solved, achieving the effects of quickly determining the extended header and improving encapsulation efficiency.

CN116418763BActive Publication Date: 2026-11-06HUAWEI TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202111640062.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-12-29
Publication Date
2026-11-06
Estimated Expiration
2041-12-29

AI Technical Summary

Technical Problem

Existing technologies require traversing all Next Header fields to determine specific extended headers when parsing IPv6 packets, resulting in low parsing efficiency.

Method used

By introducing first indication information into the message to indicate the type and location of the extended header, communication devices can quickly determine the extended header to be processed, reducing decision time.

Benefits of technology

It improves message parsing and encapsulation efficiency, reduces the time required to determine specific extended headers, and enhances the processing capabilities of communication devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116418763B_ABST
    Figure CN116418763B_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a packet processing method and related equipment, which can be applied to the scenario of packet encapsulation and analysis at the network layer. The method comprises: receiving a first packet sent by a first communication device, the first packet comprising first indication information, at least one extension header and user data, the first indication information being used to indicate the type of the at least one extension header; and determining, based on the first indication information, whether there is an extension header to be processed by a second communication device in the at least one extension header. Since the first indication information included in the first packet is used to indicate the type of the at least one extension header, the second communication device can determine, based on the first indication information, whether there is an extension header to be processed by the second communication device in the at least one extension header. Compared with the prior art in which all next header fields need to be traversed before a specific extension header can be determined, the first indication information can improve the efficiency of the second communication device in analyzing the first packet.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of network technology, and in particular to a message processing method and related equipment. Background Technology

[0002] With the rapid growth of emerging businesses such as artificial intelligence and big data, the demand for network devices to provide low-latency packet forwarding capabilities is increasing. The main factors affecting packet forwarding latency include packet parsing efficiency and encapsulation efficiency. Network layer protocols complete data transmission tasks through the following process: the transmitted data is used as the payload, a header is added to the payload for encapsulation, and the encapsulated header and payload are sent out as a single packet. Routing nodes along the route parse the packet header to read the transmission instructions and complete the data transmission task. The network layer protocol header includes a basic header and extended headers. The basic header is a mandatory part required for network transmission; the extended header is optional and is added to enable special network capabilities.

[0003] Currently, Internet Protocol version 6 (IPv6) uses a Next Header approach to indicate the presence of extension headers. The IPv6 base header is fixed-length and includes a Next Header field. When the Next Header field takes a specific value, it indicates that subsequent fields in the base header constitute extension headers. Extension headers are represented as Next Header, Length, Options. The Next Header field in the extension header has the same semantics as the Next Header field in the base header. That is, when the Next Header field in the extension header takes a specific value, subsequent fields remain extension headers until the Next Header field value is no longer a specific value, indicating that subsequent fields constitute the payload.

[0004] However, the above-mentioned method of using Next Header results in the need to traverse all NextHeader fields to determine a specific extended header when parsing the message, which leads to low parsing efficiency. Summary of the Invention

[0005] This application provides a message processing method and related equipment, which allows a network device to determine a specific extended header of interest to the network device through a first indication information in a first message.

[0006] The first aspect of this application provides a message processing method that can be applied to message encapsulation and parsing scenarios at the network layer. The method includes: receiving a first message sent by a first communication device, the first message including first indication information, at least one extended header, and user data; the first indication information indicating the type of the at least one extended header, the type being related to the function implemented by the communication device in the path of transmitting user data; and determining, based on the first indication information, whether there is an extended header to be processed by a second communication device in the at least one extended header.

[0007] In this embodiment, the second communication device receives a first message sent by the first communication device. Since the first message includes first indication information to indicate the type of at least one extended header, the second communication device can determine whether any of the at least one extended headers contain an extended header to be processed by the second communication device based on the first indication information. Compared to the prior art, which requires traversing all Next Header fields to determine a specific extended header, using the first indication information improves the efficiency of the second communication device in parsing the first message.

[0008] Optionally, in one possible implementation of the first aspect, the aforementioned extended header contains an extended header to be processed, and the method further includes: performing an operation corresponding to the target type based on the extended header to be processed, wherein the target type is the type of the extended header to be processed.

[0009] In this possible implementation, if the first message includes an extended header to be processed by the second communication device, the second communication device can perform an operation corresponding to the target type based on the extended header to be processed. Compared to the prior art, which requires traversing all Next Header fields to determine a specific extended header and then performing corresponding operations based on that specific extended header, the second communication device in this embodiment can perform corresponding operations based on the type of extended header indicated by the first indication information, reducing the time required to determine a specific extended header and improving the efficiency of parsing the first message.

[0010] Optionally, in one possible implementation of the first aspect, the first message includes at least two extended headers, and the first indication information is used to indicate the type of the at least two extended headers and the position of the at least two extended headers in the first message.

[0011] In this possible implementation, if the first message includes at least two extended headers, the second communication device can also determine the positions of at least two extended headers in the first message based on the first indication information, thereby improving the efficiency of the second communication device in processing the first message.

[0012] Optionally, in one possible implementation of the first aspect, the aforementioned first indication information includes multiple bits, each of which is used to indicate whether a corresponding type of extended header exists in the first message; the order of the bits in the first indication information indicating the presence of a corresponding type of extended header has a specific mapping relationship with the positional order of at least two extended headers in the first message. For example, the order may be consistent or reversed.

[0013] In this possible implementation, by mapping the bits in the first indication information to the positions of at least two extended headers in the first message, the second communication device can quickly locate the position of the extended headers based on the first indication information, thereby improving the efficiency of the second communication device in parsing the first message.

[0014] Optionally, in one possible implementation of the first aspect, each of the aforementioned bits being 1 indicates that a corresponding type of extended header exists in the first message.

[0015] In this possible implementation, 1 bit in the first indication information is used to indicate the type of extended header. Specifically, a bit of 1 indicates that there is an extended header of the corresponding type in the first message. In this method, the number of bits occupied by the first indication information is relatively small, which can improve the encapsulation efficiency of the first message.

[0016] Optionally, in one possible implementation of the first aspect, the type of the aforementioned extended header includes at least one of the following: route type, fragmentation type, authentication header type, encapsulated security payload type, hop-by-hop option type, and destination option type.

[0017] In this possible implementation, the type of the extended header can be a type involved in the IPv6 protocol, or a type set according to actual needs, which allows the method of this application embodiment to be applied to the IPv6 protocol and other protocols.

[0018] Optionally, in one possible implementation of the first aspect, the first message further includes second indication information, which is used to indicate that the first message has at least one extended header.

[0019] In this possible implementation, the second communication device can first determine whether the first message includes an extended header based on the second indication information. If an extended header is included, the type of the extended header is then determined based on the first indication information. If no extended header is included, the first indication information can be ignored, thereby improving the parsing efficiency of the second communication device.

[0020] Optionally, in one possible implementation of the first aspect, the first message is encapsulated using a bitmap offset (BOV) method. The first message includes a basic header and at least one extended header. The basic header includes a bitmap, a time-to-live (TTL) field for the first message, a source address field, and a destination address field. The bitmap includes third indication information, first indication information, and extended indication bits. The third indication information is used to indicate the presence of a TTL field, a source address field, and a destination address field in the first message. The extended indication bits are used to determine the length of the bitmap.

[0021] One possible implementation is illustrated in the BOV scenario, specifically the first message structure example. In the original BOV approach, when the bitmap already has many preceding bits configured, the newly designed function can only request positions further down the bitmap, resulting in very low encapsulation efficiency (due to a long bitmap). Introducing first indicator information into the BOV avoids the problem of a rapid drop in encapsulation efficiency caused by an excessively long bitmap due to the newly designed function.

[0022] A second aspect of this application provides a message processing method applicable to message encapsulation and parsing scenarios at the network layer. The method includes: generating a first message, the header of which includes first indication information, at least one extended header, and user data; the first indication information indicating the type of the at least one extended header, the type being related to the function implemented by the communication device in the path transmitting the user data; and sending the first message to a second communication device.

[0023] In this embodiment, on the one hand, during the generation of the first message, the first communication device adds first indication information to the first message. Since the first indication information is used to indicate the type of extended header in the first message, and the number of bits occupied by the first indication information is small, the encapsulation efficiency of the first message can be improved. On the other hand, during the parsing and / or forwarding of the first message by subsequent devices on the transmission path (such as the second communication device), the subsequent devices on the transmission path can quickly determine the extended header to be processed based on the type of extended header in the first message indicated by the first indication information, thereby improving the efficiency of subsequent devices in parsing and forwarding the first message.

[0024] Optionally, in one possible implementation of the second aspect, the above steps further include: receiving Internet Control Message Protocol (ICMP) information sent by the second network device, wherein the ICMP information is used to indicate that the second network device cannot forward the first message; fragmenting the first message; and sending the fragmented first message to the second network device.

[0025] In this possible implementation, if the first message is too large and the second communication device cannot forward it, the first communication device will also receive ICMP information, then fragment the first message, and send the fragmented first message to the second communication device, so that the second communication device can forward the data in the first message normally.

[0026] Optionally, in one possible implementation of the second aspect, the first message described above includes at least two extended headers, and the first indication information is used to indicate the type of the at least two extended headers and the position of the at least two extended headers in the first message.

[0027] In this possible implementation, if the first message includes at least two extended headers, the second communication device can also determine the positions of at least two extended headers in the first message based on the first indication information, thereby improving the efficiency of the second communication device in processing the first message.

[0028] Optionally, in one possible implementation of the second aspect, the aforementioned first indication information includes multiple bits, each of which is used to indicate whether a corresponding type of extended header exists in the first message; the order of the bits in the first indication information indicating the presence of a corresponding type of extended header has a specific mapping relationship with the positional order of at least two extended headers in the first message. For example, the order may be consistent or reversed.

[0029] In this possible implementation, by mapping the bits in the first indication information to the positions of at least two extended headers in the first message, the second communication device can quickly locate the position of the extended headers based on the first indication information, thereby improving the efficiency of the second communication device in parsing the first message.

[0030] Optionally, in one possible implementation of the second aspect, each of the aforementioned bits being 1 indicates that a corresponding type of extended header exists in the first message.

[0031] In this possible implementation, 1 bit in the first indication information is used to indicate the type of extended header. Specifically, a bit of 1 indicates that there is an extended header of the corresponding type in the first message. In this method, the number of bits occupied by the first indication information is relatively small, which can improve the encapsulation efficiency of the first message.

[0032] Optionally, in one possible implementation of the second aspect, the type of the aforementioned extended header includes at least one of the following: route type, fragmentation type, authentication header type, encapsulated security payload type, hop-by-hop option type, and destination option type.

[0033] In this possible implementation, the type of the extended header can be a type involved in the IPv6 protocol, or a type set according to actual needs, which allows the method of this application embodiment to be applied to the IPv6 protocol and other protocols.

[0034] Optionally, in one possible implementation of the second aspect, the first message further includes second indication information, which is used to indicate that the first message has at least one extended header.

[0035] In this possible implementation, the second communication device can first determine whether the first message includes an extended header based on the second indication information. If an extended header is included, the type of the extended header is then determined based on the first indication information. If no extended header is included, the first indication information can be ignored, thereby improving the parsing efficiency of the second communication device.

[0036] Optionally, in one possible implementation of the second aspect, the first message is encapsulated using the Bitmap Offset Value (BOV) method. The first message includes a basic header and at least one extended header. The basic header includes a bitmap, a Time-to-Live (TTL) field for the first message, a source address field, and a destination address field. The bitmap includes third indication information, first indication information, and extended indication bits. The third indication information is used to indicate the presence of a TTL field, a source address field, and a destination address field in the first message. The extended indication bits are used to determine the length of the bitmap.

[0037] One possible implementation is illustrated in the BOV scenario, specifically the first message structure example. In the original BOV approach, when the bitmap already has many preceding bits configured, the newly designed function can only request positions further down the bitmap, resulting in very low encapsulation efficiency (due to a long bitmap). Introducing first indicator information into the BOV avoids the problem of a rapid drop in encapsulation efficiency caused by an excessively long bitmap due to the newly designed function.

[0038] A third aspect of this application provides a message processing method applicable to message encapsulation and parsing scenarios at the network layer. The method includes: receiving a first message sent by a first communication device, the first message including second indication information and user data, the second indication information indicating whether the first message contains an extended header; and determining whether the first message includes an extended header based on the second indication information.

[0039] In this embodiment, the second communication device can determine whether the first message includes an extended header by using the second indication information in the first message. This allows the second communication device to quickly determine whether the first message includes an extended header, thereby improving the efficiency of parsing the first message.

[0040] Optionally, in one possible implementation of the third aspect, the aforementioned second indication information is used to indicate that the first message has an extended header, and the first message also includes the first indication information, which is used to indicate the type of at least one extended header, the type of which is related to the function implemented by the communication device in the path of transmitting user data; the aforementioned steps further include: determining, based on the first indication information, whether there is an extended header to be processed by the second communication device in at least one extended header.

[0041] In this possible implementation, the second communication device can first determine whether the first message includes an extended header based on the second indication information. If an extended header is included, the type of the extended header is then determined based on the first indication information. If no extended header is included, the first indication information can be ignored, thereby improving the parsing efficiency of the second communication device.

[0042] A fourth aspect of this application provides a message processing method applicable to message encapsulation and parsing scenarios at the network layer. The method includes: generating a first message, the first message including second indication information and user data, the second indication information indicating whether the first message has an extended header; and sending the first message to a second communication device.

[0043] In this embodiment, the first communication device adds second indication information to the first message, enabling the second communication device to determine whether the first message includes an extended header based on the second indication information. This allows the second communication device to quickly determine whether the first message includes an extended header, thereby improving the efficiency of parsing the first message.

[0044] A fifth aspect of this application provides a second communication device that can be applied to message encapsulation and parsing scenarios at the network layer. The second communication device includes: a receiving unit for receiving a first message sent by a first communication device, the first message including first indication information, at least one extended header, and user data; the first indication information indicating the type of the at least one extended header, the type being related to the function implemented by the communication device in the path transmitting the user data; and a determining unit for determining, based on the first indication information, whether there is an extended header to be processed by the second communication device in the at least one extended header.

[0045] Optionally, in one possible implementation of the fifth aspect, the aforementioned extended header contains an extended header to be processed, and the second communication device further includes: an execution unit, used to perform an operation corresponding to a target type based on the extended header to be processed, wherein the target type is the type of the extended header to be processed.

[0046] Optionally, in one possible implementation of the fifth aspect, the first message described above includes at least two extended headers, and the first indication information is used to indicate the type of the at least two extended headers and the position of the at least two extended headers in the first message.

[0047] Optionally, in one possible implementation of the fifth aspect, the first indication information mentioned above includes multiple bits, each of which is used to indicate whether a corresponding type of extended header exists in the first message; the order of the bits in the first indication information used to indicate the presence of a corresponding type of extended header is mapped to the positional order of at least two extended headers in the first message.

[0048] Alternatively, in one possible implementation of the fifth aspect, each of the aforementioned bits being 1 indicates that a corresponding type of extended header exists in the first message.

[0049] Alternatively, in one possible implementation of the fifth aspect, the type of the aforementioned extended header includes at least one of the following: route type, fragmentation type, authentication header type, encapsulated security payload type, hop-by-hop option type, and destination option type.

[0050] Optionally, in one possible implementation of the fifth aspect, the first message further includes second indication information, which is used to indicate that the first message has at least one extended header.

[0051] Optionally, in one possible implementation of the fifth aspect, the first message described above is encapsulated using a bitmap offset (BOV) method. The first message includes a basic header and at least one extended header. The basic header includes a bitmap, a Time-to-Live (TTL) field for the first message, a source address field, and a destination address field. The bitmap includes third indication information, first indication information, and extended indication bits. The third indication information is used to indicate the presence of a TTL field, a source address field, and a destination address field in the first message. The extended indication bits are used to determine the length of the bitmap.

[0052] A sixth aspect of this application provides a first communication device applicable to network layer message encapsulation and parsing scenarios. The first communication device includes: a generation unit for generating a first message, the header of which includes first indication information, at least one extended header, and user data; the first indication information indicating the type of the at least one extended header, the type being related to the function implemented by the communication device in the path transmitting the user data; and a sending unit for sending the first message to a second communication device.

[0053] Optionally, in one possible implementation of the sixth aspect, the first communication device further includes: a receiving unit, configured to receive Internet Control Message Protocol (ICMP) information sent by the second network device, wherein the ICMP information is used to indicate that the second network device cannot forward the first message; and a fragmentation unit, configured to fragment the first message and send the fragmented first message to the second network device.

[0054] Optionally, in one possible implementation of the sixth aspect, the first message described above includes at least two extended headers, and the first indication information is used to indicate the type of the at least two extended headers and the position of the at least two extended headers in the first message.

[0055] Optionally, in one possible implementation of the sixth aspect, the first indication information mentioned above includes multiple bits, each of which is used to indicate whether a corresponding type of extended header exists in the first message; the order of the bits in the first indication information used to indicate the presence of a corresponding type of extended header is mapped to the positional order of at least two extended headers in the first message.

[0056] Alternatively, in one possible implementation of the sixth aspect, each of the aforementioned bits being 1 indicates that an extended header of the corresponding type exists in the first message.

[0057] Alternatively, in one possible implementation of the sixth aspect, the type of the aforementioned extended header includes at least one of the following: route type, fragmentation type, authentication header type, encapsulated security payload type, hop-by-hop option type, and destination option type.

[0058] Optionally, in one possible implementation of the sixth aspect, the first message further includes second indication information, which is used to indicate that the first message has at least one extended header.

[0059] Optionally, in one possible implementation of the sixth aspect, the first message described above is encapsulated using the Bitmap Offset Value (BOV) method. The first message includes a basic header and at least one extended header. The basic header includes a bitmap, a Time-to-Live (TTL) field for the first message, a source address field, and a destination address field. The bitmap includes third indication information, first indication information, and extended indication bits. The third indication information is used to indicate the presence of a TTL field, a source address field, and a destination address field in the first message. The extended indication bits are used to determine the length of the bitmap.

[0060] A seventh aspect of this application provides a second communication device that can be applied to network layer message encapsulation and parsing scenarios. The second communication device includes: a receiving unit for receiving a first message sent by a first communication device, the first message including second indication information and user data, the second indication information indicating whether the first message contains an extended header; and a determining unit for determining whether the first message includes an extended header based on the second indication information.

[0061] Optionally, in one possible implementation of the seventh aspect, the aforementioned second indication information is used to indicate that the first message has an extended header, and the first message also includes first indication information, which is used to indicate the type of at least one extended header, the type of which is related to the function implemented by the communication device in the path of transmitting user data; the aforementioned determining unit is further used to determine, based on the first indication information, whether there is an extended header to be processed by the second communication device in at least one extended header.

[0062] An eighth aspect of this application provides a first communication device that can be applied to packet encapsulation and parsing scenarios at the network layer. The first communication device includes: a generation unit for generating a first packet, the first packet including second indication information and user data, the second indication information indicating whether the first packet has an extended header; and a sending unit for sending the first packet to a second communication device.

[0063] A ninth aspect of this application provides a second communication device for executing the method in the first aspect or any possible implementation thereof, or for executing the method in the third aspect or any possible implementation thereof.

[0064] The tenth aspect of this application provides a first communication device, which is used to execute the method in the aforementioned second aspect or any possible implementation of the second aspect, or to execute the method in the aforementioned fourth aspect or any possible implementation of the fourth aspect.

[0065] The eleventh aspect of this application provides a communication system, including the second communication device of the ninth aspect mentioned above, and / or the second communication device of the tenth aspect mentioned above.

[0066] A twelfth aspect of this application provides a chip including a processor and a data interface. The processor reads instructions stored in a memory through the data interface to execute the method of the first aspect or any possible implementation thereof; or to execute the method of the second aspect or any possible implementation thereof; or to execute the method of the third aspect or any possible implementation thereof; or to execute the method of the fourth aspect or any possible implementation thereof. In specific implementations, the chip can be implemented as a central processing unit (CPU), microcontroller unit (MCU), microprocessor (MPU), digital signal processor (DSP), system-on-chip (SoC), application-specific integrated circuit (ASIC), field-programmable gate array (FPGA), or programmable logic device (PLD).

[0067] A thirteenth aspect of this application provides a computer-readable medium storing program code that, when executed on a computer, causes the computer to perform the methods described in the first aspect or any possible method described in the first aspect; causes the computer to perform the methods described in the second aspect or any possible method described in the second aspect; causes the computer to perform the methods described in the third aspect or any possible method described in the third aspect; and causes the computer to perform the methods described in the fourth aspect or any possible method described in the fourth aspect. Such computer-readable storage includes, but is not limited to, one or more of the following: read-only memory (ROM), programmable ROM (PROM), erasable PROM (EPROM), flash memory, electrically EPROM (EEPROM), and hard drive.

[0068] The fourteenth aspect of this application provides a computer program product that, when executed on a computer, causes the computer to perform the method in the first aspect or any possible implementation thereof; or causes the computer to perform the method in the second aspect or any possible implementation thereof; or causes the computer to perform the method in the third aspect or any possible implementation thereof; or causes the computer to perform the method in the fourth aspect or any possible implementation thereof.

[0069] The technical effects of aspects five, nine, eleven, twelfth, thirteenth, and fourteenth, or any of their possible implementations, can be found in the first aspect or the technical effects of different possible implementations of the first aspect, and will not be repeated here.

[0070] The technical effects of the sixth, tenth, eleventh, twelfth, thirteenth, and fourteenth aspects or any one of their possible implementations can be found in the second aspect or the technical effects of different possible implementations of the second aspect, and will not be repeated here.

[0071] The technical effects of aspects seven, nine, eleven, twelfth, thirteenth, and fourteenth, or any of their possible implementations, can be found in aspect three or the technical effects of different possible implementations of aspect three, and will not be repeated here.

[0072] The technical effects of aspects eight, ten, eleven, twelfth, thirteenth, and fourteenth, or any one of their possible implementations, can be found in aspect four or the technical effects of different possible implementations of aspect four, and will not be repeated here.

[0073] As can be seen from the above technical solutions, the embodiments of this application have the following advantages: When a second communication device receives a first message sent by a first communication device, the first indication information included in the first message is used to indicate the type of at least one extended header. Compared to the prior art, which requires traversing all Next Header fields to determine a specific extended header, in this embodiment, the second communication device can determine whether there is an extended header to be processed by the second communication device in at least one extended header based on the first indication information. This reduces the time required to determine a specific extended header, thereby improving the efficiency of the second communication device in parsing the first message. Attached Figure Description

[0074] Figure 1 A schematic diagram of a communication system provided in an embodiment of the present invention;

[0075] Figure 2 A flowchart illustrating a message processing method provided in this application embodiment;

[0076] Figures 3 to 8 Several structural diagrams of the first message provided for embodiments of this application;

[0077] Figure 9 Another flowchart illustrating a message processing method provided in this application embodiment;

[0078] Figure 10 Another schematic diagram of the structure of the first message provided in the embodiments of this application;

[0079] Figure 11 A schematic diagram of the structure of the second communication device provided in the embodiments of this application;

[0080] Figure 12 A schematic diagram of the structure of the first communication device provided in the embodiments of this application;

[0081] Figure 13 This is another structural schematic diagram of the second communication device provided in the embodiments of this application;

[0082] Figure 14 Another structural schematic diagram of the first communication device provided in the embodiments of this application;

[0083] Figure 15 This is a schematic diagram of the structure of a communication device provided in an embodiment of this application. Detailed Implementation

[0084] This application provides a message processing method and related equipment, which allows a network device to determine a specific extended header of interest to the network device through a first indication information in a first message.

[0085] The technical solutions of the embodiments of the present invention will now be described with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of the present invention, and not all of them. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative effort are within the scope of protection of the present invention.

[0086] Furthermore, in the embodiments of this application, the words "exemplary," "for example," etc., are used to indicate that they are examples, illustrations, or descriptions. Any embodiment or design scheme described as "exemplary" in this application should not be construed as being more preferred or advantageous than other embodiments or design schemes. Specifically, the use of the term "exemplary" is intended to present the concept in a concrete manner.

[0087] In this application, "at least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can mean: A alone, A and B together, and B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can mean: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or multiple.

[0088] To facilitate understanding, the relevant terms and concepts mainly involved in the embodiments of this application will be introduced below.

[0089] 1. Network layer

[0090] The network layer is the third layer in the Open Systems Interconnection (OSI) model (the Internet layer in the TCP / IP model). It provides routing and addressing functions, enabling interconnection between two systems and determining the optimal path. It also has some congestion and flow control capabilities. Furthermore, because the network layer functions in the TCP / IP protocol suite are defined and implemented by the IP protocol, it is also called the IP layer. Routers operate at the network layer.

[0091] 2. IP Protocol

[0092] The IP protocol is a crucial protocol in the TCP / IP protocol suite and forms the core of its operation. IP defines addressing methods and datagram encapsulation structures. As a connectionless service, IP is responsible for transmitting datagrams between source and destination addresses. Its primary function is to transmit datagrams across interconnected networks, routing them between modules via network addresses to their destinations. For example, in the IP protocol, an IP address identifies a host, and a routing table plans the data transmission path (route) between two hosts. Commonly used IP protocol versions include IPv4 (IP4 version 4) and IPv6 (IPv6 version 6).

[0093] 3. Internet Control Message Protocol (ICMP)

[0094] ICMP is a connectionless protocol used to transmit error reporting and control information. As a network layer protocol, ICMP primarily facilitates the exchange of control information between hosts and routers, including error reporting, exchanging restricted control and status information, etc. ICMP messages are automatically sent when IP data cannot reach its destination or when an IP router cannot forward packets at the current transmission rate. Furthermore, ICMP is a crucial member of the network layer in the TCP / IP model, forming the network layer along with IP, Address Resolution Protocol (ARP), Reverse Address Resolution Protocol (RARP), and Internet Group Management Protocol (IGMP).

[0095] 4. Packaging

[0096] Encapsulation refers to the process of adding additional protocol header information to data before transmission. In general terms, it involves mapping business data to the payload of a specific encapsulation protocol, filling in the corresponding protocol header, forming a data packet encapsulated by the protocol, and completing rate adaptation.

[0097] 5. Decapsulation

[0098] Decapsulation is the reverse process of encapsulation. It involves disassembling the protocol packet, processing the information in the packet header, and extracting the business information data from the payload. Encapsulation and decapsulation are an inverse process.

[0099] 6. Basic header

[0100] The basic header, also known simply as the header, is referred to as the basic header in this embodiment to distinguish it from the extended header. It mainly includes control information used for addressing and routing. It can also be understood as control information that is permanently present in the data packet. For example, for an IPv4 data packet, the basic header size is 20 octets, or 160 bits. For an IPv6 data packet, the basic header size is 40 octets, or 320 bits.

[0101] 7. Extension header

[0102] Extension headers primarily contain information used to implement special functions (such as routing, timestamps, fragmentation, and large packets). For example, these special functions are achieved by adding extension headers after the base IPv6 header. In other words, extension headers can be understood as optional control information within a data packet.

[0103] 8. Tag / Type Length Value (TLV)

[0104] TLV is a structure consisting of a data type (tag), a data length, and a data value, and can describe almost any data type. The definition of TLV includes three fields: a tag field, a length field, and a value field. The value of the length field is actually the length of the value field.

[0105] 9. Bitmap offset value (BOV)

[0106] BOV (Browser-on-Video) encapsulation is a novel header encapsulation method that does not distinguish between a basic header and an extended header; all fields are indicated by a bitmap table. The bitmap is a binary sequence of 0s and 1s, its length specified by a preceding specific field (bitmap length). When a specific bit in the bitmap is 1, it indicates the existence of a specific subsequent field, and the position of that field is indicated by the corresponding offset field value, while the value of that field is indicated by the value field value. In certain scenarios, the length of the value field can be predetermined, in which case the offset field can be omitted to save encapsulation overhead. It should be noted that the BOV mentioned later in this application is an improvement on this, namely, adding first and / or second indication information to the bitmap of the basic header. When the bitmap has already configured many preceding bits, newly designed functions can only request positions further down the bitmap, resulting in very low encapsulation efficiency (due to a long bitmap). Introducing first and / or second indication information into BOV can avoid the problem of a rapid decrease in encapsulation efficiency caused by newly designed functions.

[0107] Figure 1 A schematic diagram of a communication system is provided. This communication system may include: a first terminal device 101, a second terminal device 102, a first forwarding device 103, and a second forwarding device 104. The first terminal device 101 communicates with the second terminal device 102 through the first forwarding device 103 and the second forwarding device 104.

[0108] The specific process of data transmission between the first terminal device 101 and the second terminal device 102 may include: the first terminal device 101 uses the data to be transmitted as the payload, adds a header encapsulation to the payload, and sends the header encapsulation and payload as a message to the first forwarding device 103. The first forwarding device 103 receives the message sent by the first terminal device 101, parses the header of the message to obtain the transmission path, and forwards the message to the second forwarding device 104 based on the transmission path. The second forwarding device 104 performs operations similar to those of the first forwarding device 103. Finally, the second terminal device 102 receives the message forwarded by the second forwarding device 104, parses the message to obtain the data in the payload, thereby realizing data transmission between the first terminal device 101 and the terminal device 103.

[0109] It is understandable that during the above data transmission process, the first forwarding device 103 and the second forwarding device 104 may also perform certain processing based on the extended header of the message (e.g., authentication header, encapsulation of security payload, fragmentation, etc.), and may also add or modify the extended header in the message header (e.g., add a route type extended header) and send the updated message to the next-hop device.

[0110] In this embodiment, only two terminal devices (i.e., the first terminal device 101 and the second terminal device 102) and two forwarding devices (i.e., the first forwarding device 103 and the second forwarding device 104) are used as examples for illustrative purposes. In practical applications, the communication system in this embodiment may have more or fewer forwarding devices and terminal devices, and this embodiment does not limit the number of forwarding devices and terminal devices.

[0111] In this embodiment, the first forwarding device 103 and the second forwarding device 104 can be any intermediate network device with wireless / wired transceiver capabilities. For example, at the network layer, the first forwarding device 103 and the second forwarding device 104 can be routers.

[0112] The terminal device (i.e., the first terminal device 101 or the second terminal device 102) in this application embodiment is a device with wireless / wired transceiver capabilities. It can be deployed on land, including indoors or outdoors, handheld, wearable, or vehicle-mounted; it can also be deployed on water (such as on ships); and it can also be deployed in the air (e.g., on airplanes, balloons, and satellites). This terminal device can be a mobile phone, tablet computer, computer with wireless transceiver capabilities, virtual reality (VR) terminal device, augmented reality (AR) terminal device, wireless terminal in industrial control, vehicle-mounted terminal device, wireless terminal in self-driving, wireless terminal in remote medical care, wireless terminal in smart grid, wireless terminal in transportation safety, wireless terminal in smart city, wireless terminal in smart home, wearable terminal device, etc. The embodiments of this application do not limit the application scenarios. Terminal equipment may also be referred to as a terminal, user equipment (UE), access terminal equipment, vehicle-mounted terminal, industrial control terminal, UE unit, UE station, mobile station, mobile station, remote station, remote terminal equipment, mobile device, UE agent, or UE device, etc. Terminal equipment can be fixed or mobile. Additionally, terminal equipment can also be a chip system used to implement UE functions.

[0113] Generally, the processing required by the first forwarding device 103 and the second forwarding device 104 is determined by the extended header in the message. Currently, Internet Protocol version 6 (IPv6) uses a Next Header to indicate the presence of extended headers. The IPv6 base header is fixed-length and contains a Next Header field. When the Next Header field has a specific value, it indicates that the subsequent fields of the base header are extended headers. Extended headers are represented as Next Header, Length, Options. The Next Header field in the extended header has the same semantics as the Next Header field in the base header. That is, when the Next Header field in the extended header has a specific value, the subsequent fields are still extended headers until the Next Header field value is no longer a special value, indicating that the subsequent fields are payload.

[0114] However, the above-mentioned method of using Next Header results in the need to traverse all NextHeader fields to determine a specific extended header when parsing the message, which leads to low parsing efficiency.

[0115] To address the aforementioned issues, embodiments of this application provide a message processing method, which allows a network device to determine a specific extended header of interest to the network device through first indication information in a first message.

[0116] The following is combined Figure 1 The communication system shown describes the message processing method in the embodiments of this application. Please refer to... Figure 2 One embodiment of the message processing method provided in this application includes steps 201 to 204. The first communication device and the second communication device can be the aforementioned... Figure 1 Any two devices in the above, for example: the first communication device is the aforementioned Figure 1 The first terminal device 101 shown is the second communication device described above. Figure 1 The first relay device 103 shown. For example, the first communication device is the aforementioned... Figure 1 The first forwarding device 103 shown is the second communication device described above. Figure 1 The second forwarding device 104 shown. For example, the first communication device is the aforementioned... Figure 1 The second forwarding device 104 shown is the second communication device mentioned above. Figure 1 The second terminal device 102 shown is an example. Specific details are not limited here. Furthermore, this method can be executed by a communication device (either a first or second communication device) or by a component of the communication device (e.g., a processor, chip, or chip system). It is understood that the first and second communication devices can be chips or units or physical devices with transceiver functions. If the first communication device sends a message, the second communication device receives the message; if the second communication device sends a message, the first communication device receives the message. In this embodiment, the first communication device is used as the sending end device, and the second communication device as the receiving end device for illustration.

[0117] Step 201: The first communication device generates the first message.

[0118] The first communication device and the second communication device in this application embodiment can be the aforementioned Figure 1 Any two devices mentioned above, without specific limitations here. Unless otherwise specified, the following discussion assumes that the first communication device is one of the aforementioned... Figure 1 The first terminal device shown, and the second communication device are the aforementioned Figure 1 The first forwarding device shown in the figure is used as an example for description.

[0119] Optionally, the first communication device is the aforementioned Figure 1 The first terminal device, after acquiring the user data to be transmitted to the second terminal device, encapsulates the user data by adding a basic header and / or an extended header to obtain a first message. The user data can also be referred to as the payload. The length and encoding method of the extended header are set by the specific protocol or actual needs, and are not limited here. Furthermore, if an extended header exists, it is located between the basic header and the payload. For example, the structure of the first message can be as follows: Figure 3 As shown, it is important to note that Figure 3 The structure shown does not limit the number of bytes occupied by the base header, extended header, and payload. For example, the payload may occupy more or fewer bytes than the base header.

[0120] The first message in this embodiment includes first indication information, at least one extended header, and payload. The first indication information is used to indicate the type of at least one extended header, which is related to the functions implemented by the communication device in the path of transmitting user data (e.g., routing, encryption, and authentication). Alternatively, it can be understood that the type indicated by the first indication information is the type of extended header present in the first message, that is, the first indication information can be used to indicate whether a corresponding type of extended header exists.

[0121] Optionally, when the first message includes at least two extended headers, the first indication information can be used not only to indicate the types of the at least two extended headers, but also to indicate the positions of the at least two extended headers in the first message. Specifically, the order in which the extended header types in the first indication information indicate the presence of the extended headers in the first message has a specific mapping relationship with the order of the positions of the at least two extended headers in the first message (e.g., consistent order, reversed order, etc.). It is acceptable as long as the positions of the extended headers in the first message can be determined based on the first indication information. For example, the first bit of the first indication information can correspond to the position of the first extended header in the first message, or the position of the second extended header in the first message, etc., and no specific limitation is made here.

[0122] In this embodiment of the application, the position of the extended header in the first message can be determined based on at least one of the following: the order in which the extended header types are indicated in the first indication information, the length of the extended header, and the preset extended header length.

[0123] Furthermore, there is no limitation on how many bits in the first indication information correspond to one extended header type. To facilitate reducing message length and transmission / reception overhead, this paper only describes an example of using 1 bit to indicate the type of one extended header. For example, the first indication information includes 3 bits, which are used to indicate the types of three extended headers respectively. The first bit in the first indication information indicates the type of the first extended header in the first message, the second bit indicates the type of the second extended header in the first message, and the third bit indicates the type of the third extended header in the first message. It is understood that 2 or more bits in the first indication information can also be used to indicate the type of one extended header; this is not limited here.

[0124] Optionally, the type of extended header and the first order in the embodiments of this application may be as shown in Table 1, wherein the first order is the order of indication of the first indication information.

[0125] Table 1

[0126]

[0127] In this embodiment, at least one extended header can be at least one of those listed in Table 1 above. Furthermore, the types, quantities, and first order of the six extended headers described above are merely examples. In practical applications, the types, quantities, and first order of extended headers can be set according to actual needs. The first order is described below with reference to Table 1. Specifically, the first bit in the first indication information is used to indicate whether extended header R (i.e., routing type) exists. The second bit in the first indication information is used to indicate whether extended header F (i.e., fragmentation type) exists. The third bit in the first indication information is used to indicate whether extended header A (i.e., authentication header type) exists. The fourth bit in the first indication information is used to indicate whether extended header E (i.e., encapsulated security payload type) exists. The fifth bit in the first indication information is used to indicate whether extended header H (i.e., hop-by-hop type) exists. The sixth bit in the first indication information is used to indicate whether extended header D (i.e., destination type) exists.

[0128] Additionally, a type can correspond to one or more extended headers in a message. For example, the hop-by-hop option type can correspond to one or more extended headers, but this is not specifically limited here.

[0129] Optionally, the first message includes a basic header, at least one extended header, and a payload. The basic header includes first indication information and other fields. The other fields are necessary header information for transmitting the first message; for example, for IP packets, these other fields may include: a version field, a header length field, a type of service field, a total message length field, a time to live (TTL) field, a source IP address, a destination IP address field, etc.

[0130] Optionally, the first indication information includes multiple bits, each of which is used to indicate whether a corresponding type of extended header exists in the first message. For example, the first indication information includes 6 bits, with each bit using "0" or "1" to indicate whether a corresponding type of extended header exists. Specifically, 1 bit indicates the presence of a corresponding type of extended header, and 0 bits indicate the absence of a corresponding type of extended header.

[0131] Example 1: Describe the structure of the first message as follows: the first message includes the six extended header types listed in Table 1 above; the first indication information is 6 bits; each bit in the first indication information indicates the presence of a certain type of extended header; the order of the six extended header types in the first indication information is consistent with the order of the six extended header types in the first message (e.g., the bit order in Table 1); and the number of each type of extended header is one. Figure 4 As shown, the first message includes a base header, extended headers, and a payload. The base header includes first indication information and other fields, while the extended header includes six types: R, F, A, E, H, and D. The six bits of the first indication information are all "11111". The bits that are "1" indicate the presence of the corresponding type of extended header, and the bits that are "0" indicate its absence. Specifically, the first bit of the first indication information is "1", indicating the presence of extended header R (routing type). The second bit is "1", indicating the presence of extended header F (fragmentation type). The third bit is "1", indicating the presence of extended header A (authentication header type). The fourth bit is "1", indicating the presence of extended header E (encapsulated security payload type). The fifth bit is "1", indicating the presence of extended header H (hop-by-hop type). The 6th bit in the first indication information is "1", indicating the presence of extended header D (i.e., destination type). It can be seen that the first message contains six types of extended headers, and the order of these six types in the first message is consistent with the order in which the first indication information indicates the presence of the six extended header types.

[0132] Figure 4 Taking the case where all six extended header types are present (i.e., the 6 bits of the first indication information are "111111") as an example, the case where the first message does not include all six types can be handled as follows: Figure 5 As shown. The following only describes... Figure 5 and Figure 4 The differences and similarities will not be elaborated upon here.

[0133] Example 2: Figure 5 The first indication information has 6 bits set to "111101", meaning the first bit is "1", indicating the presence of extended header R (routing type). The second bit is "1", indicating the presence of extended header F (fragmentation type). The third bit is "1", indicating the presence of extended header A (authentication header type). The fourth bit is "1", indicating the presence of extended header E (encapsulated security payload type). The fifth bit is "0", indicating the absence of extended header H (hop-by-hop type). The sixth bit is "1", indicating the presence of extended header D (destination type). It can be seen that the first message contains five types of extended headers, and the order of these five types in the first message matches the order in which the first indication information indicates the presence of the five extended header types (i.e., ignoring the bits indicating the absence of extended header types). Alternatively, it can be understood that determining the position of the corresponding type of extended header also requires considering the number of "0" bits in the first indication information, such as... Figure 5 As shown in the example, since one bit in the first indication information is "0", the extended header indicated by the 6th bit in the first indication information is actually located in the 5th position of the extended header. The 5th bit of the first indication information being 0 indicates that the extended header corresponding to the type indicated by the 5th bit does not exist. As shown in Table 1, the 5th bit is used to indicate type H. That is, the first message does not have an extended header of type H.

[0134] Optionally, the first message further includes second indication information, which indicates that the first message contains at least one extended header. In this case, the communication device can first determine whether the first message contains an extended header based on the second indication information. If the second indication information indicates that the first message contains an extended header, the communication device can then further determine the type of the extended header in the first message based on the first indication information, thereby determining whether the first message contains an extended header that needs to be processed. It is understood that if the first message does not contain an extended header, the first indication information indicating the type of the extended header is unnecessary. That is, if the second indication information indicates that the first message does not contain an extended header, the first indication information may not be present.

[0135] Optionally, the second indication information uses 1 bit to indicate that the first message has at least one extended header. For example, if 1 bit in the second indication information is "1", it indicates that the first message has at least one extended header.

[0136] Example 3: Figure 6 As shown, the first message includes a base header, extended headers, and a payload. The base header includes second indication information, first indication information, and other fields. The first indication information and other fields are consistent with the previous... Figure 4 The corresponding descriptions are similar, so they will not be repeated here.

[0137] In this embodiment, the positions of the first indication information and the second indication information in the basic header, as well as whether multiple bits in the first indication information are consecutive, are not limited. They can be set according to actual needs and the specifications of the protocol used. Specific details are not limited here.

[0138] Optionally, the first message is encapsulated using Bitmap Offset Value (BOV) encapsulation. The first message includes a basic header, at least one extended header, and a payload. The basic header includes a bitmap, a Time-to-Live (TTL) field, a source address field, and a destination address field. The bitmap includes third indication information, first indication information, and an extension indication bit. The third indication information indicates the presence of the TTL, source address, and destination address fields in the first message, and the extension indication bit determines the length of the bitmap. The description of the BOV method can be found in the previous description and will not be repeated here. For example, the extension indication bit can indicate whether to extend the bitmap by a preset number of bytes. The following description uses an extension step of 1 byte (i.e., 8 bits) as an example.

[0139] Example 4: Taking the first message as an example, encapsulated using BOV (Browser-on-Video) format, with the bitmap field having an 8-bit extension step (e.g., a 16-bit bitmap). An 8-bit extension step can be understood as follows: the length of the bitmap field is 8 bits or a multiple of 8 bits, and the last bit of every 8 bits in the bitmap (which can be called the extension indicator bit) indicates whether the bitmap is extended. If the extension indicator bit is "1", it means the bitmap is extended by 1 8-bit. If the extension indicator bit is "0", it means the bitmap is no longer extended. The structure of the first message can be as follows: Figure 7 As shown. The first message includes a basic header, an extended header, and a payload. The basic header includes a bitmap, a Time-to-Live (TTL) field, a source address field, and a destination address field. The bitmap includes third indication information, first indication information, and extended indication bits. The third indication information is 3 bits ("111"). The first bit of the third indication information is "1", indicating the presence of a TTL field in the first message. The second bit of the third indication information is "1", indicating the presence of a destination address field in the first message. The third bit of the third indication information is "1", indicating the presence of a source address field in the first message. Bits 8 and 16 of the bitmap are extended indication bits. Since the bitmap consists of 16 bits, the value of the 16th bit is "0", indicating that no further bitmap expansion is performed after the 16th bit. Simultaneously, the value of the 8th bit is "1", indicating that an 8-bit extension is performed after the 8th bit. Bits 10 to 15 of the bitmap contain the first indication information. The first indication information is 6 bits (“000001”). The order of the extension types indicated by the first indication information is as described in Table 1 above. Specifically, the 10th bit in the bitmap indicates the presence of extension header R (i.e., routing type). The 11th bit in the bitmap indicates the presence of extension header F (i.e., fragmentation type). The 12th bit in the bitmap indicates the presence of extension header A (i.e., authentication header type). The 13th bit in the bitmap indicates the presence of extension header E (i.e., encapsulated security payload type). The 14th bit in the bitmap indicates the presence of extension header H (i.e., hop-by-hop type). The 15th bit in the bitmap indicates the presence of extension header D (i.e., destination type). Specifically, by… Figure 7As can be seen, the 10th bit in the bitmap is "0", indicating that the extended header R (i.e., routing type) does not exist. The 11th bit in the bitmap is "0", indicating that the extended header F (i.e., fragmentation type) does not exist. The 12th bit in the bitmap is "0", indicating that the extended header A (i.e., authentication header type) does not exist. The 13th bit in the bitmap is "0", indicating that the extended header E (i.e., encapsulated security payload type) does not exist. The 14th bit in the bitmap is "0", indicating that the extended header H (i.e., hop-by-hop type) does not exist. The 15th bit in the bitmap is "1", indicating that the extended header D (i.e., destination type) exists. And the value of extended header D is as follows... Figure 7 The extended header is shown in the image.

[0140] It is understandable that the length of the bitmap field, the expansion step, the position of the first indicator information in the bitmap, etc., are just examples. In actual applications, they can be set according to needs or protocol specifications, and are not limited here.

[0141] Example 5: Building upon Example 4, the bitmap in the first message can also include second indication information to indicate whether the first message contains an extended header. The first message is as follows: Figure 8 As shown, with Figure 7 The similarities will not be elaborated here. Figure 8 and Figure 7 The difference lies in the value of the 9th bit of the bitmap. In this example, taking the 9th bit of the bitmap as the second indication information, the 9th bit is "1", which is used to indicate that the first message has an extended header.

[0142] It is understandable that the positions of the third, second, and first indication information in the bitmap can be set according to actual needs, and no specific restrictions are made here.

[0143] Step 202: The first communication device sends a first message to the second communication device. Correspondingly, the second communication device receives the first message sent by the first communication device.

[0144] After generating the first message, the first communication device sends the first message to the second communication device. Correspondingly, the second communication device receives the first message sent by the first communication device.

[0145] Step 203: The second communication device determines, based on the first indication information, whether there is an extended header to be processed by the second communication device in at least one extended header.

[0146] After receiving the first message, the second communication device can parse the basic header of the first message to obtain the first indication information. Since the first indication information is used to indicate the type of extended header in the first message, the second communication device can determine whether there is an extended header to be processed by the second communication device in the first message based on the type of extended header present in the first message.

[0147] If a second communication device has an extended header to process, then step 204 is executed. If no second communication device has an extended header to process, then the second communication device forwards the first message to the next-hop device.

[0148] The following example illustrates how a second communication device determines, based on first indication information, whether an extended header to be processed by the second communication device exists in a first message.

[0149] Optionally, since the first indication information indicates the type of extended header in the first message, the second communication device can determine the type of extended header in the first message based on the first indication information.

[0150] It is understandable that the order of the first indication information type is preset by the first communication device and the second communication device, that is, the second communication device has already obtained the first order as shown in Table 1.

[0151] For example, continuing with Example 1 above, the second communication device receives, as Figure 4 Following the first message shown, the first instruction information can be determined to be "111111", and thus the first message can be determined to include six types of extended headers, namely extended header R, extended header F, extended header A, extended header E, extended header H and extended header D.

[0152] For example, continuing with Example 2 above, the second communication device receives, as Figure 5 Following the first message shown, the first instruction information can be determined to be "111101", and thus the first message can be determined to include five types of extended headers, namely extended header R, extended header F, extended header A, extended header E and extended header D.

[0153] For example, continuing with Example 4 above, the second communication device receives, as Figure 7 Following the first message shown, it can be determined that the first indication information is "000001", and thus it can be determined that the first message includes an extended header type, namely extended header D.

[0154] Optionally, if the first message contains a routing type extension header and the destination address in the routing options is the address of the second communication device, then the routing type extension header is an extension header to be processed by the second communication device. If the first message contains a routing type extension header and the destination address in the routing options is not the address of the second communication device, then the routing type extension header is not an extension header to be processed by the second communication device.

[0155] Optionally, if the first message contains a fragmentation-type extended header, and the second communication device cannot send the first message completely to the next-hop device, an ICMP message is sent to the first communication device. This ICMP message instructs the source to fragment the first message and retransmit the fragmented message. Of course, if the first message contains a fragmentation-type extended header, and the second communication device is the target node (i.e., the destination on the transmission path), the fragmentation-type extended header is an extended header to be processed because the target node needs to integrate the fragments.

[0156] Optionally, if the first message contains an extended header of the authentication header type, and the second communication device is an intermediate device on the transmission path (i.e., not the source or destination), then the extended header of the authentication header type is not an extended header to be processed by the second communication device. If the first message contains an extended header of the authentication header type, and the second communication device is either the source or the destination on the transmission path, then the extended header of the authentication header type is an extended header to be processed by the second communication device.

[0157] Optionally, if the first message contains an extended header of type Encapsulated Secure Payload, and the second communication device is an intermediate device on the transmission path (i.e., not the source or destination), then the extended header of type Encapsulated Secure Payload is not an extended header to be processed by the second communication device. If the first message contains an extended header of type Encapsulated Secure Payload, and the second communication device is either the source or the destination on the transmission path, then the extended header of type Encapsulated Secure Payload is an extended header to be processed by the second communication device.

[0158] Optionally, if the first message contains a hop-by-hop option type extension header, since hop-by-hop options refer to options that all nodes on the path of transmitting user data need to be checked, the second communication device can determine that the hop-by-hop option type extension header in the first message is an extension header to be processed.

[0159] Optionally, if the first message contains a destination option type extension header, since destination options are options that are only processed by the last-hop device (i.e., the target node) on the path transmitting user data, if the second communication device is the last-hop device, then the second communication device can determine that the destination option type extension header in the first message is an extension header to be processed. If the second communication device is not the last-hop device, then the second communication device can determine that the destination option type extension header in the first message is not an extension header to be processed.

[0160] It is understandable that the extended header to be processed by the second communication device can be set according to actual needs. The above description is just an example and no specific limitation is made here.

[0161] Step 204: The second communication device performs the operation corresponding to the target type based on the extended header to be processed. This step is optional.

[0162] Optionally, if the second communication device determines that an extended header to be processed exists in the first message, the second communication device may determine the position of the extended header in the first message based on at least one of the following: the order of extended header types indicated in the first indication information, the length of the extended header, and a preset extended header length. Then, it may perform the operation corresponding to the target type based on the extended header to be processed.

[0163] For example, continuing with Example 1 above, the second communication device receives, as Figure 4 Following the first message shown, the first indication information can be determined to be "111111", thus indicating that the first message includes six extended header types: extended header R, extended header F, extended header A, extended header E, extended header H, and extended header D. In this case, the order of the types indicated by the first indication information is consistent with the order in which the various types of extended headers appear in the extended headers.

[0164] For example, continuing with Example 2 above, the second communication device receives, as Figure 5 Following the first message shown, the first indication information can be determined to be "111101", thus indicating that the first message includes five types of extended headers: extended header R, extended header F, extended header A, extended header E, and extended header D. Since one bit in the first indication information is "0", the extended header indicated by the 6th bit in the first indication information is actually located at position 6-1=5 in the extended header, that is, at the 5th position in the extended header.

[0165] For example, continuing with Example 4 above, the second communication device receives, as Figure 7Following the first message shown, the first indication information can be determined to be "000001", thus confirming that the first message includes an extended header type, namely Extended Header D. Since 5 bits in the first indication information are "0", the extended header indicated by the 6th bit in the first indication information is actually located at position 6-5=1 in the extended header, that is, at position 1 in the extended header.

[0166] Similar to step 203, this step includes several scenarios, which are described below.

[0167] Optionally, if the extended header to be processed includes a routing type extended header, the second communication device will fill in the second communication device address (e.g., IP address) into the base header to facilitate subsequent tracking of the transmission path of the first message.

[0168] Optionally, if the extended header to be processed includes a fragmentation type extended header, and the second communication device cannot send the first message completely to the next-hop device, a fourth indication message is sent to the first communication device. This fourth indication message is used to instruct the source end to fragment the first message and retransmit the fragmented message. Of course, if the first message contains a fragmentation type extended header, and the second communication device is the target node (i.e., the destination on the transmission path), the second communication device integrates multiple packets through the fragmentation type extended header to obtain complete user data.

[0169] Optionally, if the extended header to be processed includes an extended header of the authentication header type, and the second communication device is the source or destination on the transmission path, then the second communication device provides at least one of the following processing for the first message: authentication, integrity verification, replay protection, etc.

[0170] Optionally, if the extended header to be processed includes an extended header of the encapsulated secure payload type, and the second communication device is the source or destination on the transmission path, then the second communication device provides at least one of the following processing for the first message: authentication, integrity verification, replay protection, encryption, etc.

[0171] Optionally, if the extended header to be processed includes a hop-by-hop option type extended header, the second communication device adds or modifies information in the base header of the first message. For example, it may fill in a timestamp of forwarding the first message in the base header to facilitate subsequent measurement of the transmission duration of the first message between transmission path routes. Another example is filling in the address of the second communication device in the base header to facilitate subsequent tracing of the transmission path of the first message. Yet another example is that the second communication device may look up a forwarding table based on the hop-by-hop option type extended header and perform forwarding operations according to the forwarding table.

[0172] Optionally, if the extended header to be processed includes an extended header of the destination address type, and the second communication device is the destination on the transmission path, then the second communication device processes the first message. This processing is related to the functions that the second communication device can perform, and is not specifically limited here.

[0173] In one possible implementation, the message processing method provided in this application includes steps 201 to 203. In this approach, the second communication device can determine whether at least one extended header contains an extended header to be processed by the second communication device based on the first indication information. Compared to the prior art, which requires traversing all Next Header fields to determine a specific extended header, the first indication information method improves the efficiency of the second communication device in parsing the first message.

[0174] In another possible implementation, the message processing method provided in this application includes steps 201 to 204. In this method, the second communication device can determine whether there is an extended header to be processed by the second communication device in the first message based on the first indication information. If such a header exists, the second communication device can perform the corresponding operation. Compared to the prior art, this improves the efficiency of the second communication device in parsing and forwarding the first message.

[0175] In this embodiment, on the one hand, during the generation of the first message, the first communication device adds first indication information to the first message. Since the first indication information is used to indicate the type of extended header in the first message, and the number of bits occupied by the first indication information is small, the encapsulation efficiency of the first message can be improved. On the other hand, during the parsing and / or forwarding of the first message by subsequent devices on the transmission path (such as the second communication device), the subsequent devices on the transmission path can quickly determine the extended header to be processed based on the type of extended header in the first message indicated by the first indication information, thereby improving the efficiency of subsequent devices in parsing and forwarding the first message. Furthermore, for the original BOV method, when the bitmap has already been configured with many preceding bits, the newly designed function can only request positions further and further down the bitmap, resulting in very low encapsulation efficiency (the bitmap is very long). By introducing the first indication information into the BOV, the problem of a rapid decrease in encapsulation efficiency caused by the newly designed function making the bitmap too long can be avoided.

[0176] Please see Figure 9 Another embodiment of the message processing method provided in this application includes steps 901 to 904. The descriptions of the first communication device and the second communication device are as described above. Figure 2 The descriptions in the illustrated embodiments are similar and will not be repeated here.

[0177] Step 901: The first communication device generates the first message.

[0178] The first message in this step is the same as the one mentioned above. Figure 2 The description of the first message in step 201 is similar and will not be repeated here. The difference is that the first message in this step includes second indication information, but may not necessarily include the first indication information. This second indication information is used to indicate whether the first message has an extended header.

[0179] In one possible implementation, the second indication information indicates that the first message has an extended header, and the first message includes the first indication information in addition to the second indication information. In this case, the foregoing can be referred to. Figure 2 The description and examples of the first message including the second instruction information in the illustrated embodiments will not be repeated here.

[0180] It is understood that the second indication information can be one bit or more bits; that is, one bit can be used to indicate whether the first message has an extended header, or more bits can be used to indicate whether the first message has an extended header. This application embodiment only describes an example where the second indication information uses one bit to indicate whether the first message has an extended header. Furthermore, the position of the second indication information in the first message can be set according to actual needs, and is not limited here.

[0181] For example, if the second indication information is "1", indicating that the first message has an extended header, then the first message is as described above. Figure 6 As shown, it also includes second indication information, used to indicate the type of extended header present in the first message. In another possible implementation, the second indication information indicates that the first message does not have an extended header, and the first message does not include the first indication information.

[0182] For example, if the second indication information is "0", indicating that there is no extended header in the first message, then the first message is as follows: Figure 10 As shown, the first message includes a basic header and a payload. The basic header includes second indication information and other fields. For a description of the other fields and payload, please refer to the previous description; it will not be repeated here.

[0183] In step 902, the first communication device sends a first message to the second communication device. Correspondingly, the second communication device receives the first message sent by the first communication device.

[0184] This step is the same as the one mentioned above. Figure 2 Step 202 in the illustrated embodiment is similar to that described herein, and will not be repeated here.

[0185] Step 903: The second communication device determines whether the first message has an extended header based on the second indication information.

[0186] After receiving the first message, the second communication device can determine whether there is an extended header in the first message based on the second indication information in the first message.

[0187] For example, continuing the above example, if the second indication information is "0", the second communication device determines that there is no extended header in the first message. If the second indication information is "1", the second communication device determines that there is an extended header in the first message.

[0188] If the first message contains an extended header, then proceed to step 904. If the first message does not contain second indication information, then the second communication device forwards the first message to the next-hop device.

[0189] Step 904: Determine whether there is an extended header to be processed in the first message based on the first indication information. This step is optional.

[0190] This step is the same as the one mentioned above. Figure 2 Step 203 in the illustrated embodiment is similar and will not be repeated here.

[0191] In this embodiment, on the one hand, by introducing second indication information into the first message, communication devices along the transmission path can determine whether an extended header exists in the first message. If an extended header exists in the first message, the communication device can further determine the type of the extended header based on the first indication information, and thus determine whether there is an extended header to be processed. This improves parsing efficiency compared to IPv6 or the original BOV scheme, enhancing the parsing efficiency of the communication device for the first message. For example, compared to existing technologies, IPv6 eliminates the computational overhead of parsing the Next Header. On the other hand, during the parsing and / or forwarding of the first message by subsequent devices along the transmission path (e.g., a second communication device), the subsequent devices can quickly determine the extended header to be processed based on the type of extended header indicated by the first indication information in the first message, thereby improving the efficiency of subsequent devices in parsing and forwarding the first message.

[0192] The message processing method in the embodiments of this application has been described above. The communication device in the embodiments of this application is described below. The communication device (e.g., the first communication device and the second communication device) provided in the embodiments of this application can be applied to the message encapsulation and parsing scenario of the network layer.

[0193] Please see Figure 11 One embodiment of the second communication device provided in this application includes:

[0194] The receiving unit 1101 is used to receive a first message sent by the first communication device. The first message includes first indication information, at least one extended header, and user data. The first indication information is used to indicate the type of at least one extended header, and the type is related to the function implemented by the communication device in the path of transmitting user data.

[0195] The determining unit 1102 is used to determine, based on the first indication information, whether there is an extended header to be processed by the second communication device in at least one extended header.

[0196] Optionally, if there is an extension header to be processed in the extension header, the second communication device in this embodiment further includes: an execution unit 1103, used to perform an operation corresponding to the target type based on the extension header to be processed, wherein the target type is the type of the extension header to be processed.

[0197] In this embodiment, the operations performed by each unit in the second communication device are the same as those described above. Figures 2 to 8 The embodiments shown are similar and will not be repeated here.

[0198] In this embodiment, the receiving unit 1101 receives a first message sent by the first communication device. Since the first message includes first indication information to indicate the type of at least one extended header, the determining unit 1102 can determine whether there is an extended header to be processed by the second communication device in at least one extended header based on the first indication information. Compared with the prior art, which requires traversing all Next Header fields to determine a specific extended header, the efficiency of the second communication device in parsing the first message can be improved by using the first indication information.

[0199] Please see Figure 12 One embodiment of the first communication device provided in this application includes:

[0200] The generation unit 1201 is used to generate a first message. The header of the first message includes first indication information, at least one extended header, and user data. The first indication information is used to indicate the type of at least one extended header, and the type is related to the function implemented by the communication device in the path of transmitting user data.

[0201] The sending unit 1202 is used to send a first message to the second communication device.

[0202] Optionally, the first communication device in this embodiment further includes: a receiving unit 1203, used to receive Internet Control Message Protocol (ICMP) information sent by the second network device, wherein the ICMP information is used to indicate that the second network device cannot forward the first message;

[0203] Optionally, the first communication device in this embodiment further includes a fragmentation unit 1204, used to fragment the first message and send the fragmented first message to the second network device.

[0204] In this embodiment, the operations performed by each unit in the first communication device are the same as those described above. Figures 2 to 8 The embodiments shown are similar and will not be repeated here.

[0205] In this embodiment, on the one hand, during the generation of the first message, the generation unit 1201 adds first indication information to the first message. Since the first indication information is used to indicate the type of extended header in the first message, and the number of bits occupied by the first indication information is small, the encapsulation efficiency of the first message can be improved. On the other hand, during the parsing and / or forwarding of the first message by subsequent devices (e.g., the second communication device) on the transmission path, the subsequent devices on the transmission path can quickly determine the extended header to be processed based on the type of extended header in the first message indicated by the first indication information, thereby improving the efficiency of subsequent devices in parsing and forwarding the first message.

[0206] Please see Figure 13 Another embodiment of the second communication device provided in this application includes:

[0207] The receiving unit 1301 is used to receive a first message sent by the first communication device. The first message includes second indication information, which is used to indicate whether the first message has an extended header.

[0208] The determining unit 1302 is used to determine whether the first message includes an extended header based on the second indication information.

[0209] In this embodiment, the operations performed by each unit in the second communication device are the same as those described above. Figure 9 The embodiments shown are similar and will not be repeated here.

[0210] In this embodiment, the second communication device can determine whether the first message includes an extended header by using the second indication information in the first message. This allows the second communication device to quickly determine whether the first message includes an extended header, thereby improving the efficiency of parsing the first message.

[0211] Please see Figure 14 Another embodiment of the first communication device provided in this application includes:

[0212] The generation unit 1401 is used to generate a first message, which includes second indication information and user data. The second indication information is used to indicate whether the first message has an extended header.

[0213] The sending unit 1402 sends a first message to the second communication device.

[0214] In this embodiment, the operations performed by each unit in the first communication device are the same as those described above. Figure 9 The embodiments shown are similar and will not be repeated here.

[0215] In this embodiment, by adding a second instruction to the first message, the first communication device can enable the second communication device to quickly determine whether the first message includes an extended header, thereby improving the efficiency of parsing the first message.

[0216] See Figure 15 This application provides a schematic diagram of another communication device. It can be applied to network layer message encapsulation and parsing scenarios, and the communication device can be the aforementioned... Figures 2 to 10 The illustrated embodiment includes a first or second communication device. This communication device may include a processor 1501, a memory 1502, and a communication interface 1503. The processor 1501, memory 1502, and communication interface 1503 are interconnected via a line. The memory 1502 stores program instructions and data.

[0217] In one possible implementation, the memory 1502 stores the aforementioned Figures 2 to 10 In the corresponding implementation, the program instructions and data corresponding to the steps executed by the second communication device. Processor 1501 is used to execute the aforementioned... Figures 2 to 10 The steps performed by the second communication device are shown in any of the embodiments illustrated. Communication interface 1503 can be used for receiving and sending messages, and for performing the aforementioned steps. Figures 2 to 10 The steps related to acquisition, transmission, and reception performed by the second communication device in any of the embodiments shown.

[0218] In another possible implementation, the aforementioned memory 1502 stores... Figures 2 to 10 In the corresponding implementation, the program instructions and data corresponding to the steps executed by the first communication device. Processor 1501 is used to execute the aforementioned... Figures 2 to 10 The steps performed by the first communication device are shown in any of the embodiments illustrated. Communication interface 1503 can be used for receiving and sending messages, and for performing the aforementioned steps. Figures 2 to 10 The steps related to acquisition, transmission, and reception performed by the first communication device in any of the embodiments shown.

[0219] It is understandable that communication equipment may include, relative to Figure 15 More or fewer components are merely illustrative in this application and are not intended to limit the scope of the application.

[0220] In addition, embodiments of this application provide a communication system, which includes the features described above. Figure 11 The second communication device shown, and / or as described above Figure 12 The first communication device shown. Or the communication system includes the aforementioned Figure 13 The second communication device shown, and / or as described above Figure 14 The first communication device shown.

[0221] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces, or indirect coupling or communication connection between apparatuses or units, and may be electrical, mechanical, or other forms.

[0222] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0223] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated units described above can be implemented wholly or partially through software, hardware, firmware, or any combination thereof.

[0224] When an integrated unit is implemented using software, it can be implemented wholly or partially in the form of a computer program product. A computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the flow or function according to embodiments of the present invention is generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state disk (SSD)).

[0225] The terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such terms are interchangeable where appropriate; this is merely a way of distinguishing objects with the same attributes in the embodiments of this application. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion, so that a process, method, system, product, or apparatus that comprises a series of elements is not necessarily limited to those elements but may include other elements not explicitly listed or inherent to those processes, methods, products, or apparatuses.

Claims

1. A message processing method, characterized in that, The method includes: The first message sent by the first communication device is received. The first message is encapsulated using the Bitmap Offset Value (BOV) method. The first message includes a base header, at least one extended header, and user data. The base header includes a bitmap. The bitmap includes first indication information. The first indication information is used to indicate the type of the at least one extended header. The type is related to the function implemented by the communication device in the path of transmitting the user data. Based on the first indication information, it is determined whether there is a second communication device to process an extended header in the at least one extended header.

2. The method according to claim 1, characterized in that, The method further includes: The extended header to be processed is present in the extended header. The operation corresponding to the target type is performed based on the extended header to be processed, where the target type is the type of the extended header to be processed.

3. The method according to claim 1 or 2, characterized in that, The first message includes at least two extended headers, and the first indication information is used to indicate the type of the at least two extended headers and the position of the at least two extended headers in the first message.

4. The method according to claim 3, characterized in that, The first indication information includes multiple bits, each of which is used to indicate whether a corresponding type of extended header exists in the first message; the order of the bits in the first indication information indicating the presence of the corresponding type of extended header is mapped to the positional order of the at least two extended headers in the first message.

5. The method according to claim 4, characterized in that, If any of the multiple bits is 1, it indicates that the first message contains an extended header of the corresponding type.

6. The method according to claim 1, characterized in that, The type of the extended header includes at least one of the following: routing type, fragmentation type, authentication header type, encapsulated secure payload type, hop-by-hop option type, and destination option type.

7. The method according to claim 1, characterized in that, The first message also includes second indication information, which is used to indicate that the first message contains at least one extended header.

8. The method according to claim 1, characterized in that, The basic header also includes a Time-to-Live (TTL) field for the first message, a source address field, and a destination address field for the first message. The bitmap also includes third indication information and extended indication bits. The third indication information is used to indicate that the TTL field, the source address field, and the destination address field exist in the first message. The extended indication bits are used to determine the length of the bitmap.

9. A message processing method, characterized in that, The method includes: A first message is generated. The first message is encapsulated using the Bitmap Offset Value (BOV) method. The first message includes a base header, at least one extended header, and user data. The base header includes a bitmap, and the bitmap includes first indication information. The first indication information is used to indicate the type of the at least one extended header. The type is related to the function implemented by the communication device in the path of transmitting the user data. The first message is sent to the second communication device.

10. The method according to claim 9, characterized in that, The method further includes: Receive Internet Control Message Protocol (ICMP) information sent by the second network device, wherein the ICMP information is used to indicate that the second network device cannot forward the first message; The first message is fragmented, and the fragmented first message is sent to the second network device.

11. The method according to claim 9 or 10, characterized in that, The first message includes at least two extended headers, and the first indication information is used to indicate the type of the at least two extended headers and the position of the at least two extended headers in the first message.

12. The method according to claim 11, characterized in that, The first indication information includes multiple bits, each of which is used to indicate whether a corresponding type of extended header exists in the first message; the order of the bits in the first indication information indicating the presence of the corresponding type of extended header is mapped to the positional order of the at least two extended headers in the first message.

13. The method according to claim 12, characterized in that, If any of the multiple bits is 1, it indicates that the first message contains an extended header of the corresponding type.

14. The method according to claim 9, characterized in that, The type of the extended header includes at least one of the following: routing type, fragmentation type, authentication header type, encapsulated secure payload type, hop-by-hop option type, and destination option type.

15. The method according to claim 9, characterized in that, The first message also includes second indication information, which is used to indicate that the first message contains at least one extended header.

16. The method according to claim 9, characterized in that, The basic header also includes a Time-to-Live (TTL) field for the first message, a source address field, and a destination address field for the first message. The bitmap also includes third indication information and extended indication bits. The third indication information is used to indicate that the TTL field, the source address field, and the destination address field exist in the first message. The extended indication bits are used to determine the length of the bitmap.

17. A second communication device, characterized in that, The second communication device includes: The receiving unit is configured to receive a first message sent by a first communication device. The first message is encapsulated using a bitmap offset value (BOV) method. The first message includes a base header, at least one extended header, and user data. The base header includes a bitmap, and the bitmap includes first indication information. The first indication information is used to indicate the type of the at least one extended header, and the type is related to the function implemented by the communication device in the path of transmitting the user data. The determining unit is configured to determine, based on the first indication information, whether there is an extended header to be processed by the second communication device in the at least one extended header.

18. The device according to claim 17, characterized in that, The extended header contains the extended header to be processed, and the second communication device further includes: An execution unit is configured to perform an operation corresponding to a target type based on the extension header to be processed, wherein the target type is the type of the extension header to be processed.

19. A first communication device, characterized in that, The first communication device includes: A generation unit is used to generate a first message. The first message is encapsulated using a bitmap offset value (BOV) method. The first message includes a base header, at least one extended header, and user data. The base header includes a bitmap, and the bitmap includes first indication information. The first indication information is used to indicate the type of the at least one extended header. The type is related to the function implemented by the communication device in the path of transmitting the user data. The sending unit is used to send the first message to the second communication device.

20. The device according to claim 19, characterized in that, The first communication device further includes: The receiving unit is configured to receive Internet Control Message Protocol (ICMP) information sent by the second network device, wherein the ICMP information is used to indicate that the second network device cannot forward the first message; The fragmentation unit is used to fragment the first packet and send the fragmented first packet to the second network device.

21. A second communication device, characterized in that, include: A processor coupled to a memory for storing programs or instructions that, when executed by the processor, cause the second communication device to perform the method as described in any one of claims 1 to 8.

22. A first communication device, characterized in that, include: A processor coupled to a memory for storing programs or instructions that, when executed by the processor, cause the first communication device to perform the method as described in any one of claims 9 to 16.

23. A communication system, characterized in that, It includes the second communication device as described in claim 21, and / or the first communication device as described in claim 22.

24. A computer storage medium, characterized in that, Includes computer instructions that, when executed on an electronic device, cause the electronic device to perform the method as described in any one of claims 1 to 8.

25. A computer program product, characterized in that, When the computer program product is run on a computer, it causes the computer to perform the method as described in any one of claims 9 to 16.

Citation Information

Patent Citations

  • Transmitting apparatus and receiving apparatus and signal processing method thereof

    CN111447242A

  • IPv6 message processing method and device

    CN112468397A

  • Packet repeater

    JP2011071701A