Communication method, communication device, communication equipment, and computer storage medium
The method automates SRv6 Locator address assignment through new DHCPv6 options, addressing the manual configuration challenge and enhancing network configuration efficiency in communication systems.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-03-15
- Publication Date
- 2026-03-10
AI Technical Summary
Current technologies for assigning IPv4/IPv6 addresses, such as DHCPv4 and DHCPv6, do not support automatic configuration of SRv6 Locator addresses, which are distinct from IPv4/IPv6 addresses and require manual configuration.
A communication method and device that utilize new options in DHCPv6 messages to convey SRv6 Locator information, including specific fields for type codes, IA identifiers, time periods, and other parameters to automate the assignment of SRv6 Locator addresses.
Enables automated assignment of SRv6 Locator addresses, facilitating efficient and automated network configuration in communication systems like GSM, LTE, and 5G networks.
Smart Images

Figure 2026508441000001_ABST
Abstract
Description
[Technical Field]
[0001] The present application relates to the field of communications technology, and in particular to a communication method, a communication device, a communication equipment, and a computer storage medium.
[0002] (CROSS-REFERENCE TO RELATED APPLICATIONS) This application claims priority from a Chinese patent application bearing application number 202310258244.9, filed with the China Patent Office on March 16, 2023, the entire contents of which are incorporated herein by reference. [Background technology]
[0003] Currently, Internet Protocol Version 4 (IPv4) Dynamic Host Configuration Protocol for IPv4 (DHCPv4) / Internet Protocol Version 6 (IPv6) Dynamic Host Configuration Protocol for IPv6 (DHCPv6) are technologies for assigning IPv4 / IPv6 addresses to clients. On the other hand, SRv6 is a segment routing (SR) solution based on IPv6 extensions. Locator addresses in SRv6 are an address resource that is completely different from IPv4 / IPv6 addresses and can currently only be configured manually. Summary of the Invention [Problem to be solved by the invention]
[0004] To solve the existing technical problems, embodiments of the present invention provide a communication method, a communication device, a communication equipment, and a computer storage medium. [Means for solving the problem]
[0005] To achieve the above objectives, the technical solutions of the embodiments of the present invention are implemented as follows:
[0006] In a first aspect, an embodiment of the present invention provides a communication method applied to a client device, the method comprising: receiving a first message transmitted from a DHCPv6 server, the first message including first information representing network node identifier (Locator) information assigned to the client device; The first message includes a first option and a second option nested in the first option, and the first option and / or the second option are used to convey the first information.
[0007] In the above solution, the first option includes a first field for representing a first type code, and the second option includes a second field for representing a second type code, and the first type code and the second type code are used to indicate a Locator information allocation service; The second option further includes a third field for carrying the Locator information.
[0008] In the above solution, the first option is A fourth field to indicate the length of the option, a fifth field for representing an identity association (IA) identifier; a sixth field for representing a first time period during which the client device sends a request to the server that assigned the address to extend the address's valid lifetime; and and a seventh field for representing a second time period during which the client device sends a request to any server discoverable by the client device to extend the valid lifetime of the address.
[0009] In the above solution, the second option is An eighth field to indicate the length of the option, A ninth field for representing the preferred lifetime of the Locator information; A tenth field to represent the valid lifetime of the specified assigned prefix, An eleventh field for indicating the length of the Locator information; A twelfth field to indicate the length of the SRv6-related Function information, A thirteenth field to indicate the length of the SRv6 related variables (Args) information, a fourteenth field to indicate the common prefix block length, and Further includes at least one fifteenth field for representing other information.
[0010] In the above solution, when a first message transmitted from a plurality of DHCPv6 servers is received, the communication method includes: The method further includes selecting a first DHCPv6 server from the plurality of DHCPv6 servers, and determining Locator information included in the first message transmitted from the first DHCPv6 server as target Locator information.
[0011] In the above solution, the communication method includes sending a second message including at least information of the first DHCPv6 server; receiving a third message sent from the first DHCPv6 server, the third message being for confirming Locator information assigned to the client device; The second message and / or the third message includes the first option and the second option nested within the first option.
[0012] In the above solution, before receiving the first message transmitted from the DHCPv6 server, the communication method further includes transmitting a fourth message to the DHCPv6 server to request allocation of locator information; The fourth message includes the first option and the second option nested within the first option.
[0013] In a second aspect, an embodiment of the present invention further provides a communication method applied to a DHCPv6 server, the method comprising: sending a first message to a client device, the first message including first information representing network node identifier (Locator) information assigned to the client device; The first message includes a first option and a second option nested in the first option, and the first option and / or the second option are used to convey the first information.
[0014] In the above solution, the first option includes a first field for representing a first type code, and the second option includes a second field for representing a second type code, and the first type code and the second type code are used to indicate a Locator information allocation service; The second option further includes a third field for carrying the Locator information.
[0015] In the above solution, the first option is A fourth field to indicate the length of the option, a fifth field for representing an identity association (IA) identifier; a sixth field for representing a first time period during which the client device sends a request to the server that assigned the address to extend the address's valid lifetime; and and a seventh field for representing a second time period during which the client device sends a request to any server discoverable by the client device to extend the valid lifetime of the address.
[0016] In the above solution, the second option is An eighth field to indicate the length of the option, A ninth field for representing the preferred lifetime of the Locator information; A tenth field to represent the valid lifetime of the specified assigned prefix, An eleventh field for indicating the length of the Locator information; A twelfth field to indicate the length of the SRv6-related Function information, A thirteenth field to indicate the length of the SRv6 related variables (Args) information, a fourteenth field to indicate the common prefix block length, and Further includes at least one fifteenth field for representing other information.
[0017] In the above solution, the communication method further includes receiving a second message sent from the client device, the second message including at least information of a first DHCPv6 server, and the second message including the first option and the second option nested in the first option.
[0018] In the above solution, when the DHCPv6 server is a first DHCPv6 server, the communication method further includes sending a third message to the client device, the third message being for confirming Locator information assigned to the client device; The third message includes the first option and the second option nested within the first option.
[0019] In the above solution, the communication method further includes receiving a fourth message transmitted from the client device, the fourth message being for requesting allocation of locator information from a DHCPv6 server; The fourth message includes the first option and the second option nested within the first option.
[0020] In a third aspect, an embodiment of the present invention further provides a communication apparatus applicable to a client device, the communication apparatus comprising: a first receiving unit configured to receive a first message transmitted from a DHCPv6 server, the first message including first information representing locator information assigned to the client device; The first message includes a first option and a second option nested in the first option, and the first option and / or the second option are used to convey the first information.
[0021] In a fourth aspect, an embodiment of the present invention further provides a communication device applied to a DHCPv6 server, the communication device comprising: a second sending unit configured to send a first message to a client device, the first message including first information representing locator information assigned to the client device; The first message includes a first option and a second option nested in the first option, and the first option and / or the second option are used to convey the first information.
[0022] In a fifth aspect, an embodiment of the present invention further provides a computer-readable storage medium having stored thereon a computer program, the program being configured to, when executed by a processor, implement the steps of the communication method according to the first or second aspect of the embodiment of the present invention.
[0023] In a sixth aspect, an embodiment of the present invention further provides a communication device, the communication device comprising: a memory; a processor; and a computer program stored in the memory and executable by the processor, the computer program executing the program causing the processor to perform the steps of the communication method described in the above first or second aspect of the embodiment of the present invention. [Effects of the Invention]
[0024] In a communication method, a communication device, a communication equipment, and a computer storage medium provided in embodiments of the present invention, the communication method includes a client device receiving a first message sent from a DHCPv6 server, the first message including first information representing network node identifier (Locator) information assigned to the client device, the first message including a first option and a second option nested in the first option, the first option and / or the second option being used to carry the first information. By adopting the technical solution of the embodiments of the present invention, two new options different from those used to assign conventional IPv4 or IPv6 addresses are defined, and Locator information is carried or indicated via the new options, thereby realizing assignment of SRv6 Locator information. [Brief explanation of the drawings]
[0025] [Figure 1] 1 is a schematic diagram of a scene in which a communication method according to an embodiment of the present invention is applied; [Figure 2] FIG. 1 is a schematic diagram of an SRv6 message format in an embodiment of the present invention. [Figure 3] FIG. 2 is a schematic diagram of an SID format in an embodiment of the present invention. [Figure 4] 1 is a flowchart 1 of a communication method according to an embodiment of the present invention. [Figure 5a] 1 is a schematic diagram of an option format in a communication method according to an embodiment of the present invention; [Figure 5b]1 is a schematic diagram of an option format in a communication method according to an embodiment of the present invention; [Figure 6] 2 is a flowchart 2 of a communication method according to an embodiment of the present invention. [Figure 7] 2 is an interaction flowchart of a communication method according to an embodiment of the present invention; [Figure 8] 1 is a schematic diagram illustrating a configuration of a communication device according to an embodiment of the present invention. [Figure 9] 2 is a schematic diagram illustrating a configuration of a communication device according to an embodiment of the present invention. [Figure 10] 1 is a schematic diagram illustrating a hardware configuration of a communication device according to an embodiment of the present invention. DETAILED DESCRIPTION OF THE INVENTION
[0026] The present invention will now be described in more detail with reference to the drawings and specific examples.
[0027] The technical solutions of the embodiments of the present invention may be applied to various communication systems, such as a Global System of Mobile communication (GSM) system, a Long Term Evolution (LTE) system, or a 5G system, etc. Optionally, a 5G system or a 5G network may also be referred to as a New Radio (NR) system or an NR network.
[0028] For example, a communication system to which an embodiment of the present invention is applied may include a network device and a terminal device (which may also be referred to as a terminal, a communication terminal, etc.), and the network device may be a device that communicates with the terminal device. Here, the network device can provide communication coverage within a certain area and can communicate with terminals located within this area. Optionally, the network device may be a base station in each communication system, for example, an evolved base station (eNB: Evolutional Node B) in an LTE system, or a base station (gNB) in a 5G system or an NR system.
[0029] It should be understood that in the embodiments of the present application, a device having a communication function in a network / system may be referred to as a communication device. The communication device may include a network device and a terminal having a communication function, and the network device and the terminal device may be the above-mentioned specific devices, and will not be described again here. The communication device may further include other devices in a communication system, such as other network entities such as a network controller and a mobility management entity, but the embodiments of the present application are not limited thereto.
[0030] It should be understood that the terms "system" and "network" are always used interchangeably herein. The term "and / or" herein only describes the association relationship between associated objects and indicates that three relationships may exist. For example, A and / or B can represent three cases: A exists independently, both A and B exist, and B exists independently. Furthermore, the symbol " / " herein generally indicates that the relationship between the preceding and following associated objects is an "or" relationship.
[0031] Terms such as "first," "second," and the like in the present specification and claims are used to distinguish between similar objects and are not necessarily used to describe a particular order or context. It should be understood that data used in this manner may be interchanged where appropriate, so that the embodiments of the present invention described herein may be performed in orders other than those shown or described herein. Furthermore, the terms "comprise," "have," and variations thereof are intended to be non-exclusive inclusive. For example, a process, method, system, product, or device incorporating a series of steps or units need not be limited to those explicitly recited, but may include others not explicitly recited or inherent in the process, method, product, or device.
[0032] Before describing a communication method according to an embodiment of the present invention, a brief description of DHCPv6 and SRv6 will be given first.
[0033] FIG. 1 is a schematic diagram of a scenario in which a communication method according to an embodiment of the present invention is applied. As shown in FIG. 1, DHCPv6 adopts a client / server communication model. A client device (e.g., an optical network terminal (ONT), a client-side desktop router, an optical network unit (ONU), a router, a switch, a client-side 4G / 5G CPE router, etc.) cooperates with an edge device (i.e., a server side) of an operator network (e.g., a broadband remote access server (BRAS), a service router (SR), a public data network (PDN) gateway (P-GW), a user plane function (UPF), etc.) to automatically obtain an IPv6 address from the server side via the DHCPv6 protocol.
[0034] FIG. 2 is a schematic diagram of an SRv6 message format in an embodiment of the present invention. As shown in FIG. 2, an SRv6 message includes an IPv6 header, a segment routing header (SRH), and a payload. A Next Header value of 43 in the IPv6 header indicates that the lower-layer header is a routing extension header. The SRv6 data plane can employ segment routing header (SRH) encapsulation, in which segment list (SL) information is encapsulated, with each segment being a 128-bit IPv6 address. An SRv6 tunnel is a management entity for the corresponding SID list and is presented to a service, just like other tunnels. An SRv6 tunnel can carry all known types of payload, such as Layer 2, Layer 3, Multi-Protocol Label Switching (MPLS), Transmission Control Protocol (TCP), and User Datagram Protocol (UDP).
[0035] An SRv6 SID can be understood as the IP address of a router, and an SID list represents a list of IP addresses in the entire routing path. As shown in FIG. 3, an SRv6 SID may be a 128-bit programmable SID and may include a Locator, a Function (FUNCT), and Arguments (ARGS). Here, the Locator has a location function and is a network node identifier in the SRv6 protocol system. It is an identifier assigned to a specific network node in a network topology and is used to forward data packets to the network node. In another embodiment, the Locator may also be referred to as a location identifier. A route corresponding to the Locator is published by a network node to the network via an Interior Gateway Protocol (IGP) and is used to help other devices forward data packets to the node network that published the Locator. In the SRv6 SID, the Locator length is variable and is used to adapt to networks of various sizes. Locator can be further subdivided into B and N, where B identifies the SRv6 SID block, is usually assigned to a specific subnet by an operator, and is usually represented by a prefix, and N is an identifier for distinguishing nodes within the subnet (Node identifier). In the case of a compressible SID, the Locator length = length of B + length of N. Function (FUNCT) is used to express the forwarding operation to be performed and corresponds to the opcode of a computer instruction. In SRv6 network programming, different forwarding behaviors are described by the Function part, for example, forwarding a data packet to a specified link, or forwarding by table lookup in a specified table. Arguments (ARGS) are optional fields that indicate corresponding parameters when the command is executed. These parameters may include data flow, service, or other related information.
[0036] An embodiment of the present invention provides a communication method. Figure 4 is a flowchart 1 of the communication method according to the embodiment of the present invention. As shown in Figure 4, the communication method includes the following steps:
[0037] In step 101, a client device receives a first message sent from a DHCPv6 server, the first message including first information representing Locator information assigned to the client device, the first message including a first option and a second option nested in the first option, and the first option and / or the second option are used to convey the first information.
[0038] In this embodiment, the first message includes a first option and a second option nested in the first option. By defining two new options different from those used to assign conventional IPv4 or IPv6 addresses, locator information is carried or indicated through the new options, thereby realizing allocation of SRv6 locator information. Here, the locator information is a network node identifier segment in the SRv6 protocol architecture and is mainly used to configure an SID, thereby realizing corresponding route forwarding. The locator information may include one or more locators.
[0039] In other embodiments, the first option may also be referred to as a first option field in the first message, and the second option may also be referred to as a second option field nested in the first option field in the first message, or may be referred to as a sub-option or sub-option field.
[0040] In this embodiment, the first message may be a message sent from a server (DHCPv6 server) to a client (DHCPv6 client) during an interaction process between the client (DHCPv6 client) and the server (DHCPv6 server) in the DHCPv6 protocol. In some alternative embodiments, the first message may be an advertise message.
[0041] In this embodiment, the first information (i.e., locator information) can be carried or indicated via a first option and / or a second option in a message. In the following embodiment, a case where the second option carries or indicates the first information (i.e., locator information) will be specifically described as an example.
[0042] In some alternative embodiments of the present invention, the first option includes a first field for representing a first type code, the second option includes a second field for representing a second type code, the first type code and the second type code are used to indicate a Locator information allocation service, and the second option further includes a third field for carrying the Locator information.
[0043] In this embodiment, on the one hand, the assigned locator information is conveyed or indicated via a third field in a second option nested in the first option. On the other hand, the first option in the message includes a first field for representing a first type code, and the second option in the message includes a second field for representing a second type code. The first type code and the second type code are used to indicate a locator information assignment service. Therefore, after receiving the message, the receiver can determine that the message is related to a locator information assignment service. In the case of a DHCPv6 server, the receiver can assign locator information based on the newly added first and second options (i.e., the locator information is conveyed or indicated via the second option in the first message).
[0044] In some alternative embodiments of the invention, the first option is: A fourth field to indicate the length of the option, a fifth field to represent an Identity Association (IA) identifier; a sixth field for representing a first time period during which the client device sends a request to the server that assigned the address to extend the address's valid lifetime; and and a seventh field for representing a second time period during which the client device sends a request to any server discoverable by the client device to extend the valid lifetime of the address.
[0045] In this embodiment, as shown in Figure 5a, the first field is, for example, an OPTION_IA_SRV6_LOCATOR field, which represents a newly defined or assigned first type code. The fourth field is, for example, an Option-len field, which represents the option length of the first option, which is usually 12 bytes plus the length of the nested second option (such as the IA_SRV6_LOCATOR-options field in the figure).
[0046] The fifth field above, for example, is the IAID field, a structure that allows DHCPv6 servers and clients to identify, group, and manage a set of related IPv6 addresses. Each IA contains one IAID and associated configuration information. The identity of an IA is uniquely determined by its IAID, and IAIDs for the same client must not be duplicated. IAIDs must not be lost or changed due to factors such as device restarts.
[0047] The sixth field is, for example, a T1 field, and the seventh field is, for example, a T2 field.
[0048] In some alternative embodiments of the invention, the second option comprises: An eighth field to indicate the length of the option, A ninth field for representing the preferred lifetime of the Locator information; A tenth field to represent the valid lifetime of the specified assigned prefix, An eleventh field for indicating the length of the Locator information; A twelfth field to indicate the length of the SRv6-related Function information, A thirteenth field to indicate the length of the SRv6 related variables (Args) information, a fourteenth field to indicate the common prefix block length, and Further includes at least one fifteenth field for representing other information.
[0049] In this embodiment, the second option may further include other information related to the locator information, such as the length of the locator information and the preferred lifetime of the locator information. In other embodiments, the second option may further include other information. As shown in FIG. 5b, the second field may be, for example, an OPTION_IALOCATOR field, and represents a newly defined or assigned second type code. The third field may be, for example, an SRv6-Locator field, and is used to indicate or carry the locator information.
[0050] The eighth field above may be an Option-len field, which represents the option length of the second option, and is typically 28 bytes plus the length of the IALocator-options field. The ninth field above may be a Preferred-lifetime field, which represents the preferred lifetime of the assigned designated Locator. The tenth field above may be a Valid-lifetime field, which represents the valid lifetime of the assigned prefix, where the Valid-lifetime must be greater than or equal to the Preferred-lifetime.
[0051] The above-mentioned 11th field may be a Locator Length (LOC-Len) field, which indicates the length of the Locator field.
[0052] The twelfth field above may be a function length (Func-len) field, which indicates the length of the function (Func) field.
[0053] The thirteenth field above may be a variable (Args) length (Args-len) field.
[0054] The above-mentioned 14th field may be a common prefix block length (LB-len) field.
[0055] The 15th field above may be an IALocator-options field, which represents any other supplemental information that needs to be conveyed.
[0056] In some alternative embodiments of the present invention, before receiving the first message sent from the DHCPv6 server, the communication method further includes sending a fourth message to the DHCPv6 server to request allocation of Locator information, the fourth message including the first option and the second option nested in the first option.
[0057] In this embodiment, the client device may also send a fourth message to the DHCPv6 server before receiving the first message sent from the DHCPv6 server, where the fourth message is for requesting the DHCPv6 server to assign Locator information. Optionally, the fourth message may be multicast by the client device. Optionally, the fourth message may be a solicit message.
[0058] Here, the fourth message also includes a new first option and a second option nested in the first option. If the fourth message is a solicit message, the solicit message has the meaning of requesting a query. Through the new first option included in the fourth message and the second option nested in the first option, the fourth message has the meaning of requesting allocation of locator information.
[0059] In some alternative embodiments of the present invention, when a first message transmitted from a plurality of DHCPv6 servers is received, the communication method further includes selecting a first DHCPv6 server from the plurality of DHCPv6 servers and determining Locator information included in the first message transmitted from the first DHCPv6 server as target Locator information.
[0060] In some alternative embodiments, the communication method further includes sending a second message including at least information of the first DHCPv6 server, and receiving a third message sent from the first DHCPv6 server, the third message being for confirming Locator information assigned to the client device, and the second message and / or the third message including the first option and the second option nested in the first option.
[0061] In this embodiment, the client device may receive the first message from multiple DHCPv6 servers. For example, if the client device multicasts the fourth message, multiple DHCPv6 servers may receive the fourth message. In this case, the client device may receive the first message from multiple DHCPv6 servers. Furthermore, the client device selects a first DHCPv6 server (or a target DHCPv6 server) from the multiple DHCPv6 servers. Here, the client device selects the first DHCPv6 server from the multiple DHCPv6 servers according to a predetermined condition. Exemplarily, the predetermined condition may be a priority, i.e., the client device selects the server with the highest priority as the first DHCPv6 server according to the priorities of the multiple DHCPv6 servers. Alternatively, the predetermined condition may be a predetermined selection rule, and the client device selects one server from the multiple DHCPv6 servers as the first DHCPv6 server according to the selection rule. This embodiment is not limited thereto.
[0062] In this embodiment, each DHCPv6 server can carry or indicate the locator information assigned by that DHCPv6 server via a third field in a second option nested in the first option in the first message. After selecting or determining the first DHCPv6 server, the client device determines the locator information carried or indicated by the second option in the first message sent from the first DHCPv6 server as the selected locator information or target locator information.
[0063] In this embodiment, after selecting a first DHCPv6 server (or a target DHCPv6 server), the client device can send a second message to multiple DHCPv6 servers, where the second message includes at least information of the first DHCPv6 server (e.g., an identifier of the first DHCPv6 server), allowing all related DHCPv6 servers to obtain the target DHCPv6 server determined by the DHCPv6 client. Optionally, the second message may be a request message. Optionally, the client device can send the second message (e.g., the request message) to multiple DHCPv6 servers via a multicast manner. Furthermore, the client device can receive a third message from the first DHCPv6 server, where the third message is for confirming the locator information (or the target locator information) assigned to the client device. That is, the first DHCPv6 server sends the third message to determine to assign and use the locator information (or the target locator information) to the client device. Optionally, the third message may be a reply message.
[0064] Here, the second message and / or the third message include the first option and the second option nested in the first option. When the second message is a request message and the third message is a reply message, the second message and the third message include the first option and the second option nested in the first option, thereby giving the second message and the third message a new meaning in this embodiment. Here, optionally, the second message can carry information about the selected first DHCPv6 server via a conventional option or a message header parameter, and the third message can also carry confirmation information for confirming the locator information assigned to the client device via a conventional option or a message header parameter.
[0065] Based on the above embodiment, an embodiment of the present invention further provides a communication method. Figure 6 is a flowchart 2 of the communication method according to the embodiment of the present invention. As shown in Figure 6, the communication method includes the following steps:
[0066] In step 201, a DHCPv6 server sends a first message to a client device, the first message including first information representing Locator information assigned to the client device, the first message including a first option and a second option nested in the first option, the first option and / or the second option being used to convey the first information.
[0067] In this embodiment, the first message includes a first option and a second option nested in the first option, and by defining two new options different from those used to assign conventional IPv4 or IPv6 addresses, locator information is carried or indicated through the new options, thereby realizing the assignment of SRv6 locator information.
[0068] In some alternative embodiments of the present invention, the first option includes a first field for representing a first type code, the second option includes a second field for representing a second type code, the first type code and the second type code are used to indicate a Locator information allocation service, and the second option further includes a third field for carrying the Locator information.
[0069] In this embodiment, on the one hand, the assigned locator information is conveyed or indicated via a third field in a second option nested in the first option. On the other hand, the first option in the message includes a first field for representing a first type code, and the second option in the message includes a second field for representing a second type code. The first type code and the second type code are used to indicate a locator information assignment service. Therefore, after receiving the message, the receiver can determine that the message is related to a locator information assignment service. In the case of a DHCPv6 server, the receiver can assign locator information based on the newly added first and second options (i.e., the locator information is conveyed or indicated via the second option in the first message).
[0070] In some alternative embodiments of the invention, the first option is: A fourth field to indicate the length of the option, a fifth field for representing an identity association (IA) identifier; a sixth field for representing a first time period during which the client device sends a request to the server that assigned the address to extend the address's valid lifetime; and and a seventh field for representing a second time period during which the client device sends a request to any server discoverable by the client device to extend the valid lifetime of the address.
[0071] In this embodiment, as shown in Figure 5a, the first field is, for example, an OPTION_IA_SRV6_LOCATOR field, which represents a newly defined or assigned first type code. The fourth field is, for example, an Option-len field, which represents the option length of the first option, which is usually 12 bytes plus the length of the nested second option (such as IA_SRV6_LOCATOR-options in the figure).
[0072] The fifth field above, for example, is the IAID field, a structure that allows DHCPv6 servers and clients to identify, group, and manage a set of related IPv6 addresses. Each IA contains one IAID and associated configuration information. The identity of an IA is uniquely determined by its IAID, and IAIDs for the same client must not be duplicated. IAIDs must not be lost or changed due to factors such as device restarts.
[0073] The sixth field is, for example, a T1 field, and the seventh field is, for example, a T2 field.
[0074] In some alternative embodiments of the invention, the second option comprises: An eighth field to indicate the length of the option, A ninth field for representing the preferred lifetime of the Locator information; A tenth field to represent the valid lifetime of the specified assigned prefix, An eleventh field for indicating the length of the Locator information; A twelfth field to indicate the length of the SRv6-related Function information, A thirteenth field to indicate the length of the SRv6 related variables (Args) information, a fourteenth field to indicate the common prefix block length, and Further includes at least one fifteenth field for representing other information.
[0075] In this embodiment, the second option may further include other information related to the locator information, such as the length of the locator information and the preferred lifetime of the locator information. In other embodiments, the second option may further include other information. As shown in FIG. 5b, the second field may be, for example, an OPTION_IALOCATOR field, and represents a newly defined or assigned second type code. The third field may be, for example, an SRv6-Locator field, and is used to indicate or carry the locator information.
[0076] The eighth field above may be an Option-len field, which represents the option length of the second option, and is typically 28 bytes plus the length of the IALocator-options field. The ninth field above may be a Preferred-lifetime field, which represents the preferred lifetime of the assigned designated Locator. The tenth field above may be a Valid-lifetime field, which represents the valid lifetime of the assigned prefix, where the Valid-lifetime must be greater than or equal to the Preferred-lifetime.
[0077] The above-mentioned 11th field may be a Locator Length (LOC-Len) field, which indicates the length of the Locator field.
[0078] The twelfth field above may be a function length (Func-len) field, which indicates the length of the function (Func) field.
[0079] The thirteenth field above may be a variable (Args) length (Args-len) field.
[0080] The above-mentioned 14th field may be a common prefix block length (LB-len) field.
[0081] The 15th field above may be an IALocator-options field, which represents any other supplemental information that needs to be conveyed.
[0082] In some alternative embodiments of the present invention, the communication method further includes receiving a second message sent from the client device, the second message including information of at least a first DHCPv6 server, and the second message including the first option and the second option nested within the first option.
[0083] In some alternative embodiments, when the DHCPv6 server is a first DHCPv6 server, the communication method further includes sending a third message to the client device, the third message being for confirming Locator information assigned to the client device, the third message including the first option and the second option nested within the first option.
[0084] In this embodiment, after selecting a first DHCPv6 server (or a target DHCPv6 server), the client device can send a second message to multiple DHCPv6 servers, where the second message includes at least information of the first DHCPv6 server (e.g., an identifier of the first DHCPv6 server), allowing all related DHCPv6 servers to obtain the target DHCPv6 server determined by the DHCPv6 client. Optionally, the second message may be a request message. Optionally, the client device can send the second message (e.g., the request message) to multiple DHCPv6 servers via a multicast manner. Furthermore, if the DHCPv6 server is the first DHCPv6 server, i.e., if the DHCPv6 server is the target server selected by the client device, the DHCPv6 server sends a third message to the client device, where the third message is for confirming locator information (or target locator information) assigned to the client device. That is, the first DHCPv6 server sends a third message to determine that the locator information (or target locator information) is to be assigned to the client device for use. Optionally, the third message may be a reply message.
[0085] Here, the second message and / or the third message include the first option and the second option nested in the first option. When the second message is a request message and the third message is a reply message, the second message and the third message include the first option and the second option nested in the first option, thereby giving the second message and the third message a new meaning in this embodiment. Here, optionally, the second message can carry information about the selected first DHCPv6 server via a conventional option or a message header parameter, and the third message can also carry confirmation information for confirming the locator information assigned to the client device via a conventional option or a message header parameter.
[0086] In some alternative embodiments of the present invention, the communication method further includes receiving a fourth message sent from the client device, the fourth message being for requesting allocation of Locator information from a DHCPv6 server, the fourth message including the first option and the second option nested within the first option.
[0087] In this embodiment, before the DHCPv6 server sends the first message to the client device, the client device can send a fourth message to the DHCPv6 server, the fourth message being for requesting the DHCPv6 server to assign Locator information. Optionally, the fourth message may be multicast by the client device. Optionally, the fourth message may be a solicit message.
[0088] Here, the fourth message also includes a new first option and a second option nested in the first option. If the fourth message is a solicit message, the solicit message has the meaning of requesting a query. Through the new first option included in the fourth message and the second option nested in the first option, the fourth message has the meaning of requesting allocation of locator information.
[0089] Hereinafter, a communication method according to an embodiment of the present invention will be described in detail with reference to a specific example.
[0090] 7 is an interaction flowchart of a communication method according to an embodiment of the present invention. As shown in FIG. 7, the communication method may include the following steps:
[0091] In step 31, the DHCPv6 client transmits a solicit message to multiple DHCPv6 servers via multicast to request the DHCPv6 servers to assign Locator information.
[0092] Here, a solicit message carries a first option and a second option nested within the first option.
[0093] In step 32, the DHCPv6 server returns a message to the DHCPv6 client indicating the advertise, Locator information assigned to the DHCPv6 client, and other necessary configuration parameters.
[0094] Here, the advertise message carries a first option and a second option nested within the first option, and indicates the assigned locator information via a third field in the second option (such as the SRv6-Locator field in Figure 5b).
[0095] In step 33, the DHCPv6 client selects the server with the highest priority as the first DHCPv6 server and sends a request message to all associated DHCPv6 servers via multicast to indicate the ID of the first DHCPv6 server.
[0096] Here, a request message carries a first option and a second option nested within the first option.
[0097] In step 34, the first DHCPv6 server sends a reply message to the DHCPv6 client to determine whether to allocate target locator information and other necessary network configuration parameters to the DHCPv6 client for use.
[0098] Here, the reply message carries a first option and a second option nested within the first option.
[0099] In this way, the request and allocation of an SRv6 locator can be realized through the above-mentioned DHCPv6 protocol interaction flow.
[0100] Based on the above embodiment, an embodiment of the present invention further provides a communication device applied to a client device. Figure 8 is a schematic diagram 1 showing the configuration of a communication device according to an embodiment of the present invention. As shown in Figure 8, the communication device includes a first receiving unit 41 configured to receive a first message sent from a DHCPv6 server, the first message including first information representing locator information assigned to the client device, the first message including a first option and a second option nested in the first option; The first option and / or the second option are used to convey the first information.
[0101] In some alternative embodiments of the present invention, the first option includes a first field for representing a first type code, and the second option includes a second field for representing a second type code, the first type code and the second type code being used to indicate a Locator information allocation service; The second option further includes a third field for carrying the Locator information.
[0102] In some alternative embodiments of the invention, the first option is: A fourth field to indicate the length of the option, a fifth field for representing an identity association (IA) identifier; a sixth field for representing a first time period during which the client device sends a request to the server that assigned the address to extend the address's valid lifetime; and and a seventh field for representing a second time period during which the client device sends a request to any server discoverable by the client device to extend the valid lifetime of the address.
[0103] In some alternative embodiments of the invention, the second option comprises: An eighth field to indicate the length of the option, A ninth field for representing the preferred lifetime of the Locator information; A tenth field to represent the valid lifetime of the specified assigned prefix, An eleventh field for indicating the length of the Locator information; A twelfth field to indicate the length of the SRv6-related Function information, A thirteenth field to indicate the length of the SRv6 related variables (Args) information, a fourteenth field to indicate the common prefix block length, and Further includes at least one fifteenth field for representing other information.
[0104] In some alternative embodiments of the present invention, the communication device further comprises a first processing unit 42; The first processing unit 42 is configured, when the first receiving unit 41 receives a first message transmitted from a plurality of DHCPv6 servers, to select a first DHCPv6 server from the plurality of DHCPv6 servers and determine Locator information included in the first message transmitted from the first DHCPv6 server as target Locator information.
[0105] In some alternative embodiments of the present invention, the communication device further comprises a first sending unit 43, the first sending unit 43 being configured to send a second message, the second message including at least information of the first DHCPv6 server; the first receiving unit 41 is further configured to receive a third message sent from the first DHCPv6 server, the third message being for confirming Locator information assigned to the client device; The second message and / or the third message includes the first option and the second option nested within the first option.
[0106] In some alternative embodiments of the present invention, the communication device further comprises a first transmitting unit 43, wherein the first transmitting unit 43 is configured to transmit a fourth message before the first receiving unit 41 receives a first message transmitted from a DHCPv6 server, the fourth message being for requesting allocation of Locator information from the DHCPv6 server, and the fourth message including the first option and the second option nested in the first option.
[0107] In an embodiment of the present invention, the first processing unit 42 in the communication device can be realized by a central processing unit (CPU), a digital signal processor (DSP), a microcontroller unit (MCU) or a field-programmable gate array (FPGA) in practical applications, and the first transmitting unit 43 and the first receiving unit 41 in the communication device can be realized by combining with a communication module (including a basic communication kit, an operating system, a communication module, a standardized interface and protocol, etc.) and a transceiver antenna in practical applications.
[0108] An embodiment of the present invention further provides a communication device applied to a DHCPv6 server. Fig. 9 is a schematic diagram 2 illustrating a configuration of the communication device according to the embodiment of the present invention. As shown in Fig. 9, the communication device includes a second sending unit 51 configured to send a first message to a client device, the first message including first information representing locator information assigned to the client device; The first message includes a first option and a second option nested in the first option, and the first option and / or the second option are used to convey the first information.
[0109] In some alternative embodiments of the present invention, the first option includes a first field for representing a first type code, and the second option includes a second field for representing a second type code, the first type code and the second type code being used to indicate a Locator information allocation service; The second option further includes a third field for carrying the Locator information.
[0110] In some alternative embodiments of the invention, the first option is: A fourth field to indicate the length of the option, a fifth field for representing an identity association (IA) identifier; a sixth field for representing a first time period during which the client device sends a request to the server that assigned the address to extend the address's valid lifetime; and and a seventh field for representing a second time period during which the client device sends a request to any server discoverable by the client device to extend the valid lifetime of the address.
[0111] In some alternative embodiments of the invention, the second option comprises: An eighth field to indicate the length of the option, A ninth field for representing the preferred lifetime of the Locator information; A tenth field to represent the valid lifetime of the specified assigned prefix, An eleventh field for indicating the length of the Locator information; A twelfth field to indicate the length of the SRv6-related Function information, A thirteenth field to indicate the length of the SRv6 related variables (Args) information, a fourteenth field to indicate the common prefix block length, and Further includes at least one fifteenth field for representing other information.
[0112] In some alternative embodiments of the present invention, the communication device further comprises a second receiving unit 52, the second receiving unit 52 configured to receive a second message sent from the client device, the second message including information of at least a first DHCPv6 server, and the second message including the first option and the second option nested in the first option.
[0113] In some alternative embodiments of the present invention, the second sending unit 51 is further configured to send a third message to the client device when the DHCPv6 server is a first DHCPv6 server, the third message being for confirming Locator information assigned to the client device, the third message including the first option and the second option nested in the first option.
[0114] In some alternative embodiments of the present invention, the communication device further comprises a second receiving unit 52, the second receiving unit 52 being configured to receive a fourth message sent from the client device, the fourth message being for requesting allocation of Locator information from a DHCPv6 server, the fourth message including the first option and the second option nested within the first option.
[0115] In an embodiment of the present invention, the second transmitting unit 51 and the second receiving unit 52 in the device can be realized in practical application by combining with a communication module (including a basic communication kit, an operating system, a communication module, a standardized interface and protocol, etc.) and a transceiver antenna.
[0116] It should be noted that when the communication device provided by the above embodiments performs communication, only the division of each of the above program modules is taken as an example for description, but in actual application, the above processes can be assigned to different program modules to complete as needed, that is, the internal structure of the device can be divided into different program modules to complete all or part of the above processes.In addition, the communication device provided by the above embodiments belongs to the same concept as the communication method embodiments, and the specific implementation process thereof can be referred to the method embodiments, and will not be repeated here.
[0117] An embodiment of the present invention further provides a communication device, which is the client device or DHCPv6 server in the above-mentioned embodiment. Figure 10 is a schematic diagram showing a hardware configuration of the communication device according to the embodiment of the present invention. As shown in Figure 10, the communication device includes a memory 62, a processor 61, and a computer program stored in the memory 62 and executable by the processor 61, and when the processor 61 executes the program, it realizes the steps of the communication method applied to the client device or the DHCPv6 server.
[0118] Optionally, the communication device may further include at least one network interface 63. Here, each component in the communication device is coupled via a bus system 64. As can be understood, the bus system 64 is configured to realize connection communication between these components. The bus system 64 includes a power bus, a control bus, and a status signal bus in addition to a data bus. However, for clarity of explanation, all various buses are represented as the bus system 64 in FIG. 10.
[0119] It is understood that memory 62 may be volatile or nonvolatile memory, or may include both volatile and nonvolatile memory. Here, nonvolatile memory may be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), ferromagnetic random access memory (FRAM), flash memory, magnetic surface memory, optical disk, or compact disc read-only memory (CD-ROM), which may be magnetic disk memory or magnetic tape memory. Volatile memory may be random access memory (RAM) used as an external cache.By way of example and not limitation, many forms of RAM are available, such as static random access memory (SRAM), synchronous static random access memory (SSRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), SyncLink dynamic random access memory (SLDRAM), and direct Rambus random access memory (DRRAM). Memory 62 as described in embodiments of the present invention is intended to include, but is not limited to, these and any other suitable types of memory.
[0120] The methods disclosed in the above embodiments of the present invention may be applied to or realized by the processor 61. The processor 61 may be an integrated circuit chip with signal processing capabilities. In the realization process, each step of the above method may be completed by an integrated logic circuit of hardware in the processor 61 or by instructions in the form of software. The processor 61 may be a general-purpose processor, a DSP, or other programmable logic device, a discrete gate or transistor logic device, a discrete hardware component, etc. The processor 61 may implement or execute each method, step, and logic block diagram disclosed in the embodiments of the present invention. The general-purpose processor may be a microprocessor, any conventional processor, etc. The steps of the methods disclosed in the embodiments of the present invention may be directly embodied as being executed by a hardware decoding processor, or may be executed by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, which is located in the memory 62, and the processor 61 reads information stored in the memory 62 and completes the steps of the above method in combination with the hardware.
[0121] In an exemplary embodiment, the communications device may be implemented by one or more Application Specific Integrated Circuits (ASICs), DSPs, Programmable Logic Devices (PLDs), Complex Programmable Logic Devices (CPLDs), FPGAs, general-purpose processors, controllers, MCUs, microprocessors, or other electronic elements to perform the above methods.
[0122] In an exemplary embodiment, the embodiment of the present invention further provides a computer-readable storage medium, such as a memory 62, containing a computer program, which can be executed by the processor 61 of the communication device to complete the steps of the above method. The computer-readable storage medium may be a memory, such as FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, magnetic surface memory, optical disk, or CD-ROM, or may be various devices including one or any combination of the above memories.
[0123] A computer-readable storage medium provided in an embodiment of the present invention stores a computer program, which, when executed by a processor, implements the steps of the communication method applied to a client device or a DHCPv6 server.
[0124] The methods disclosed in the several method embodiments provided herein can be combined in any manner to obtain new method embodiments, provided that they are not inconsistent.
[0125] The features disclosed in the several product embodiments provided herein may be combined in any manner, unless inconsistent, to obtain new product embodiments.
[0126] The features disclosed in the several method or device embodiments provided herein may be combined in any manner, unless inconsistent, to obtain new method or device embodiments.
[0127] It should be understood that in some embodiments provided herein, the disclosed devices and methods can be realized in other ways. The device embodiments described above are merely illustrative. For example, the division of the units is merely a division of logical functions. 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 implemented. Furthermore, the mutual coupling, direct coupling, or communication connection between each component shown or described may be an indirect coupling or communication connection via some interfaces, devices, or units, and may be in an electrical, mechanical, or other form.
[0128] The units described as separate elements may or may not be physically separated, and the elements shown as units may or may not be physical units, i.e., they may be located in one place or may be distributed across multiple network units, and some or all of the units may be selected according to actual needs to achieve the objective of the solution of this embodiment.
[0129] Furthermore, the functional units in each embodiment of the present invention may all be integrated into one processing unit, each unit may be used individually as one unit, or two or more units may be integrated into one unit. The integrated unit may be realized in the form of hardware, or may be realized in the form of hardware plus a software functional unit.
[0130] Those skilled in the art can understand that all or part of the steps of the above method embodiments can be completed by hardware associated with program instructions, and the program can be stored in a computer-readable storage medium, which performs the steps of the above method embodiments when the program is executed, and the storage medium can include various media that can store program code, such as removable storage, ROM, RAM, magnetic disk, or optical disk.
[0131] Alternatively, the above-mentioned integrated units of the present invention may be realized in the form of software functional modules and stored in a computer-readable storage medium when sold or used as an independent product. Based on this understanding, the essential parts of the technical solutions of the embodiments of the present invention, i.e., the parts that contribute to the prior art, may be embodied in the form of a software product, and the computer software product is stored in one storage medium and includes several instructions for causing one computer device (which may be a personal computer, a server, a network device, etc.) to execute all or part of the methods described in each embodiment of the present invention. The above-mentioned storage medium includes various media capable of storing program code, such as removable storage, ROM, RAM, magnetic disk, or optical disk.
[0132] The above content is merely a specific embodiment of the present invention, and the protection scope of the present invention is not limited thereto. Any modifications or replacements that can be easily thought of by those skilled in the art within the technical scope disclosed in the present invention should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention should be subject to the protection scope of the claims.
Claims
1. A communication method applied to a client device, comprising: receiving a first message sent from a Network Protocol version 6 (IPv6) Dynamic Host Configuration Protocol (DHCPv6) server, the first message including first information representing network node identifier (Locator) information assigned to the client device; A communication method, wherein the first message includes a first option and a second option nested in the first option, and the first option and / or the second option are used to convey the first information.
2. the first option includes a first field for representing a first type code, and the second option includes a second field for representing a second type code, the first type code and the second type code being used to indicate an allocation service of the Locator information; the second option further includes a third field for carrying the Locator information. The communication method according to claim 1 .
3. The first option is A fourth field to indicate the length of the option; a fifth field for representing an Identity Association (IA) identifier; a sixth field for representing a first time period during which the client device sends a request to the server that assigned it an address to extend the valid lifetime of the address; and a seventh field for representing a second time period during which the client device sends a request to any server discoverable by the client device to extend the valid lifetime of the address; The communication method according to claim 2 .
4. The second option is an eighth field for indicating the length of the option; a ninth field for indicating a preferred lifetime of the Locator information; a tenth field for indicating the valid lifetime of the specified assigned prefix; an eleventh field for indicating the length of the Locator information; A twelfth field for indicating the length of SRv6-related function information; A thirteenth field for representing the length of the SRv6 related variables (Args) information; a fourteenth field for indicating the common prefix block length; and further comprising at least one fifteenth field for representing other information; The communication method according to claim 2 .
5. When the first message transmitted from a plurality of DHCPv6 servers is received, the communication method includes: selecting a first DHCPv6 server from the plurality of DHCPv6 servers, and determining Locator information included in the first message transmitted from the first DHCPv6 server as target Locator information; The communication method according to any one of claims 1 to 4.
6. The communication method includes: sending a second message including at least information of the first DHCPv6 server; receiving a third message sent from the first DHCPv6 server, the third message being for confirming the Locator information assigned to the client device; the second message and / or the third message includes the first option and the second option nested in the first option; The communication method according to claim 5.
7. Before receiving the first message transmitted from the DHCPv6 server, the communication method includes: sending a fourth message to the DHCPv6 server to request assignment of Locator information; the fourth message includes the first option and the second option nested in the first option; The communication method according to any one of claims 1 to 6.
8. A communication method applied to a DHCPv6 server, comprising: sending a first message to a client device, the first message including first information representing network node identifier (Locator) information assigned to the client device; A communication method, wherein the first message includes a first option and a second option nested in the first option, and the first option and / or the second option are used to convey the first information.
9. the first option includes a first field for representing a first type code, and the second option includes a second field for representing a second type code, the first type code and the second type code being used to indicate an allocation service of the Locator information; the second option further includes a third field for carrying the Locator information. The communication method according to claim 8.
10. The first option is A fourth field to indicate the length of the option; a fifth field for representing an Identity Association (IA) identifier; a sixth field for representing a first time period during which the client device sends a request to the server that assigned it an address to extend the valid lifetime of the address; and a seventh field for representing a second time period during which the client device will send a request to any server it can find to extend the valid lifetime of the address; further comprising at least one of: The communication method according to claim 9.
11. The second option is an eighth field for indicating the length of the option; a ninth field for indicating a preferred lifetime of the Locator information; a tenth field for indicating the valid lifetime of the specified assigned prefix; an eleventh field for indicating the length of the Locator information; A twelfth field for indicating the length of SRv6-related function information; A thirteenth field for representing the length of the SRv6 related variables (Args) information; a fourteenth field for indicating the common prefix block length; and further comprising at least one fifteenth field for representing other information; The communication method according to claim 9.
12. The communication method includes: receiving a second message sent from the client device, the second message including at least information of a first DHCPv6 server, the second message including the first option and the second option nested in the first option; The communication method according to any one of claims 8 to 11.
13. When the DHCPv6 server is the first DHCPv6 server, the communication method includes: and transmitting a third message to the client device, the third message being for confirming the Locator information assigned to the client device; the third message includes the first option and the second option nested in the first option; The communication method according to claim 12.
14. The communication method includes: receiving a fourth message sent from the client device, the fourth message being for requesting assignment of Locator information from the DHCPv6 server; the fourth message includes the first option and the second option nested in the first option; A communication method according to any one of claims 8 to 13.
15. A communication device applied to a client device, a first receiving unit configured to receive a first message sent from a DHCPv6 server, the first message including first information representing network node identifier (Locator) information assigned to the client device; A communication device, wherein the first message includes a first option and a second option nested in the first option, and the first option and / or the second option are used to convey the first information.
16. A communication device applied to a DHCPv6 server, a second sending unit configured to send a first message to a client device, the first message including first information representing network node identifier (Locator) information assigned to the client device; A communication device, wherein the first message includes a first option and a second option nested in the first option, and the first option and / or the second option are used to convey the first information.
17. A computer-readable storage medium on which a computer program is stored, When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are realized, or A computer-readable storage medium, on which the computer program is implemented, when executed by a processor, the steps of the method according to any one of claims 8 to 14.
18. A communication device comprising: a memory; a processor; and a computer program stored in the memory and executable by the processor, When the processor executes the program, the processor performs the steps of the method according to any one of claims 1 to 7, or A communications device, wherein the processor, when executing the program, implements the steps of the method according to any one of claims 8 to 14.