A method includes generating address allocation capability indication information and sending the address allocation capability indication information to a second node. The address allocation capability indication information indicates an address allocation capability of a first node, so that the address allocation capability is notified to the second node through the address allocation capability indication information.
Legal claims defining the scope of protection, as filed with the USPTO.
generating address allocation capability indication information indicating an address allocation capability of the first node; and sending the address allocation capability indication information to a second node. . A method implemented by a first node, the method comprising:
claim 1 . The method of, wherein the address allocation capability indicates that the first node has an address allocation capability, the first node does not have an address allocation capability, or the first node has an address allocation proxy capability.
claim 1 . The method of, wherein sending the address allocation capability indication information comprises sending a wireless adjacency protocol packet, wherein the wireless adjacency protocol packet comprises the address allocation capability indication information.
claim 1 . The method of, wherein sending the address allocation capability indication information comprises sending a link-state routing protocol packet, wherein the link-state routing protocol packet comprises the address allocation capability indication information, or sending a non-link-state routing protocol packet, wherein the non-link-state routing protocol packet comprises the address allocation capability indication information.
claim 2 . The method of, further comprising receiving a first packet from the second node, wherein the first packet comprises a first address configuration message, and wherein the first address configuration message allocates or releases a first communication address for the second node.
claim 5 first request information requesting to allocate the first communication address for the second node; lease renewal information requesting to renew the first communication address; release information indicating to release the first communication address; second request information requesting to allocate the first communication address for the second node when a current communication address of the second node is unavailable; or confirmation information indicating to confirm use of the first communication address or confirm release of the first communication address. . The method of, wherein the first address configuration message comprises at least one of:
claim 5 . The method of, wherein the first packet further comprises address type indication information, and wherein the address type indication information indicates a type of the first communication address.
claim 7 . The method of, wherein the type is a first address type for routing and forwarding in a communication domain or for identifying an application, or wherein the type is a second address type for identifying an application.
claim 8 . The method of, wherein when the type is the first address type, the first address type is 2 bytes, and wherein when the type is the second address type, the second address type is an extensible address type, an Internet Protocol version 4 (IPv4) address type, or an Internet Protocol version 6 (IPv6) address type.
claim 9 . The method of, wherein when the first communication address identifies an application, the first communication address is identifies at least one application on the second node, and wherein when the first communication address and identifies an application, the first communication address further identifies a first application on the second node and on another node.
claim 5 . The method of, wherein the first packet further comprises a message type, and wherein the message type indicates whether the first packet comprises the first address configuration message.
claim 5 . The method of, wherein the address allocation capability indication information indicates that the first node has the address allocation capability, wherein the method further comprises sending a second packet to the second node based on the first packet, and wherein a packet type of the second packet is the same as a packet type of the first packet.
claim 12 . The method of, wherein the second packet comprises the first communication address.
claim 13 . The method offurther comprising setting a status of the first communication address to an allocated state.
claim 12 consent information, wherein the consent information indicates that the first communication address has been allocated or the first communication address has been renewed; or rejection information, wherein the rejection information indicates to reject allocation of the first communication address or reject renewal of the first communication address. . The method of, wherein the second packet comprises a second address configuration message, and wherein the second address configuration message comprises at least one of:
claim 5 . The method of, wherein the address allocation capability indication information indicates that the first node has the address allocation proxy capability, wherein the method further comprises sending a third packet to a third node based on the first packet, wherein the third packet comprises a third address configuration message, and wherein the third address configuration message allocates or releases the first communication address for the second node.
receiving address allocation capability indication information from a first node, wherein the address allocation capability indication information indicates an address allocation capability of the first node, wherein the address allocation capability indicates that the first node has an address allocation capability, the first node does not have an address allocation capability, or the first node has an address allocation proxy capability; and sending a first packet to the first node based on the address allocation capability indication information, wherein the first packet comprises a first address configuration message, and wherein the first address configuration message is for allocating and releasing a first communication address for the second node. . A method implemented by a second node, the method comprising:
19 -. (canceled)
claim 17 . The method offurther comprising receiving a second packet from the first node, and wherein a packet type of the second packet is the same as a packet type of the first packet.
a memory configured to store computer instructions; and generate address allocation capability indication information indicating an address allocation capability of the first node; and send the address allocation capability indication information to a second node. one or more processors configured to execute the computer instructions to cause the first node to: . A first node comprising:
claim 21 . The first node of, wherein the address allocation capability indicates that the first node has an address allocation capability, the first node does not have an address allocation capability, or the first node has an address allocation proxy capability.
Complete technical specification and implementation details from the patent document.
This is a continuation of Int'l Patent App. No. PCT/CN2022/109174 filed on Jul. 29, 2022, which is incorporated by reference.
This disclosure relates to the field of wireless communication technologies, and in particular, to a communication method and apparatus.
As wireless communication technologies continuously develop, intelligent application scenarios such as a wireless battery management system (BMS), a sensor network, a smart home, a smart cockpit, smart driving, smart manufacturing, and smart transportation emerge. A smart home scenario is used as an example. The smart home scenario may include at least one communication domain, one communication domain includes one primary node and at least one secondary node, and any two nodes may communicate with each other based on a communication address.
In the communication domain, a node usually obtains the communication address based on a Dynamic Host Configuration Protocol (DHCP), and a large quantity of broadcast messages or multicast messages are used, resulting in an increase in radio resource overheads. Therefore, in a process in which the node obtains the communication address, how to reduce radio resource overheads is an urgent technical problem to be resolved.
This disclosure provides a communication method and apparatus, to indicate an address allocation capability of a node. This helps reduce radio resource overheads.
According to a first aspect, this disclosure provides a communication method. The method is applied to a first node, and may be performed by the first node, or may be performed by a module in the first node, for example, performed by a chip, a processor, or the like in the first node. The method may include: generating address allocation capability indication information, and sending the address allocation capability indication information to a second node. The address allocation capability indication information indicates an address allocation capability of the first node.
It can be learned that, the first node notifies the second node of the address allocation capability of the first node through the address allocation capability indication information, and the second node does not need to search, by using a broadcast message or a multicast message, for a node having an address allocation capability, so that radio resource overheads and time can be reduced. The second node learns of the address allocation capability of the first node, so that the second node determines whether to initiate an address request to the first node, to reduce unnecessary address request packets, and further reduce radio resource overheads.
The second node is directly connected to the first node, that is, the second node and the first node are mutually neighboring nodes. In this disclosure, an address is a communication address. Unless otherwise specified, the address and the communication address may be replaced with each other.
Optionally, the address allocation capability indication information specifically indicates that if the first node has an address allocation capability, the first node may allocate a communication address for another node, for example, may allocate a communication address for the second node. Therefore, when receiving an address request packet of the other node, the first node may allocate the communication address for the other node, so that the other node can quickly obtain the allocated communication address. Alternatively, if the first node has an address allocation proxy capability, the first node can relay an address request, address allocation, and the like for another node. Therefore, the first node may request a communication address for another node from a node having an address allocation capability, to reduce radio resource overheads. Alternatively, if the first node does not have an address allocation capability, the first node cannot allocate a communication address, and cannot relay an address request, address allocation, or the like for another node. Therefore, the first node may request a communication address from a node having an address allocation capability, to reduce unnecessary address request packets.
In a possible implementation, the address allocation capability indication information is carried in a wireless adjacency protocol (WAP) packet. The WAP packet is a packet transmitted in a process of establishing a neighbor relationship. In the process of establishing the neighbor relationship, the address allocation capability indication information is carried in the WAP packet. This can save signaling overheads.
In another possible implementation, the address allocation capability indication information is carried in a wireless link-state (WLS) routing protocol packet. When a WLS packet is deployed in a communication domain to which the first node and the second node belong, the address allocation capability indication information is carried in the WLS packet, so that signaling overheads can be reduced.
In still another possible implementation, the address allocation capability indication information is carried in a non-link-state routing protocol packet. When a non-link-state routing protocol is deployed in the communication domain to which the first node and the second node belong, the address allocation capability indication information is carried in the non-link-state routing protocol packet or a newly defined protocol packet, and may be advertised in a broadcast or multicast manner. Therefore, that a neighboring node learns of the address allocation capability of the first node is not limited.
Optionally, when the address allocation capability indication information indicates that the first node has the address allocation capability or the first node has the address allocation proxy capability, the method further includes: receiving a first packet from the second node, where the first packet includes a first address configuration message, and the first address configuration message is used to allocate or release a first communication address for the second node.
The first address configuration message may include first request information used to request to allocate the first communication address for the second node, that is, request to allocate a new communication address for the second node. Alternatively, the first address configuration message may include lease renewal information used to request to renew the first communication address, that is, request to renew an existing communication address. Alternatively, the first address configuration message may include release information indicates to release the first communication address, that is, the second node actively requests to release an existing communication address. Alternatively, the first address configuration message may include second request information used to request to allocate the first communication address for the second node when a current communication address of the second node is unavailable, that is, request to allocate a new communication address for the second node when the current communication address is unavailable. Alternatively, the first address configuration message may include confirmation information indicating to confirm use of the first communication address, namely, indicating to confirm use of the allocated first communication address; or indicating to confirm release of the first communication address. That is, when a packet indicating to release the first communication address is received, the first address configuration message is fed back, to indicate to confirm the release of the first communication address. Different information included in the address configuration message indicates different requests, so that overheads of the address configuration message can be reduced.
Further, the first packet further includes address type indication information indicating a type of the first communication address. For example, the first address configuration message includes the first request information, and the address type indication information indicates a type of a first communication address that is requested to be allocated, so that a node having an address allocation capability allocates the first communication address of the type.
The type of the first communication address may be a first address type or a second address type. The first address type is used for routing and forwarding in a communication domain or is used to identify an application, and the second address type is used to identify an application, and may be an extensible address type, an Internet Protocol version 4 (IPv4) address type, or an Internet Protocol version 6 (IPv6) address type. A communication address used to identify an application may be understood as a service address.
An address length corresponding to the first address type is 2 bytes. When the type of the first communication address is the first address type, compared with another address type, the first address type is concise and shorter, so that more payloads are transmitted in a valid data frame. This improves a payload ratio.
When the type of the first communication address is an IPv4 address type or an IPv6 address type, a basis is provided for deploying an IP application in a spark link network. When the type of the first communication address is an extensible address type, the first communication address is compatible with a special addressing mode of a special network (for example, Internet of things (IoT)).
When the first communication address is used to identify an application, the first communication address is specifically used to identify some or all applications on the second node, that is, some or all applications share one service address; or the first communication address is specifically used to identify one application on the second node, that is, one application may correspond to one service address. Alternatively, when the first communication address is an anycast address, and is used to identify an application, the first communication address is specifically used to identify a first application on the second node and the first application on another node. That is, for a service address of the anycast address, same applications deployed on different nodes may share one service address.
Further, the first packet further includes a message type, and the message type indicates whether the first packet includes the first address configuration message, so that the first node may perform an address configuration-related operation when the first packet includes the first address configuration message, and perform another operation when the first packet includes another message. This improves execution efficiency of the first node.
In a possible implementation, the address allocation capability indication information indicates that the first node has the address allocation capability. After the receiving a first packet from the second node, the method further includes: sending a second packet to the second node based on the first packet, where a packet type of the second packet is the same as a packet type of the first packet. The second packet is used to respond to the first packet.
When the first address configuration message in the first packet includes the first request information or the second request information, the second packet may be as follows.
When the first node agrees to allocate the first communication address for the second node, the second packet includes the first communication address, so that the second node learns of the first communication address based on the second packet, and then performs routing and forwarding and/or identifies an application on the second node based on the first communication address. Further, the first node sets a status of the first communication address to an allocated state, to manage the status of the communication address. This reduces a probability of allocating a same communication address for two or more nodes. Further, the second packet further includes a second address configuration message, and the second address configuration message may include consent information indicating that the first communication address has been allocated.
When the first node refuses to allocate the first communication address for the second node, the second packet does not include the first communication address, and includes the second address configuration message. The second address configuration message may include rejection information indicating to reject allocation of the first communication address.
When the first address configuration message in the first packet includes lease renewal information, the second packet may be as follows.
When the first node agrees to renew the first communication address, the second packet includes a lease period of the first communication address, so that the second node updates a lease of the first communication address, and does not need to request the communication address again. This saves address space of the communication address. Further, the second packet further includes a second address configuration message, and the second address configuration message may include consent information indicating that the first communication address has been renewed.
When the first node refuses to renew the first communication address, the second packet includes the second address configuration message, and the second address configuration message may include rejection information indicating to reject renewal of the first communication address.
In a possible implementation, the address allocation capability indication information indicates that the first node has the address allocation proxy capability. After the receiving a first packet from the second node, the method further includes: sending a third packet to a third node based on the first packet, where the third packet includes a third address configuration message, and the third address configuration message is used to allocate or release the first communication address for the second node. A packet type of the third packet is different from a packet type of the first packet.
The third node has an address allocation capability, and the third node is directly connected or not directly connected to the first node.
The third address configuration message may include first request information used to request to allocate the first communication address for the second node, that is, request to allocate a new communication address for the second node. Alternatively, the first address configuration message may include lease renewal information used to request to renew the first communication address, that is, request to renew an existing communication address. Alternatively, the third address configuration message may include release information indicates to release the first communication address, that is, the second node actively requests to release an existing communication address. Alternatively, the third address configuration message may include second request information used to request to allocate the first communication address for the second node when a current communication address of the second node is unavailable, that is, request to allocate a new communication address for the second node when the current communication address is unavailable. Alternatively, the third address configuration message may include confirmation information indicating to confirm use of the first communication address, namely, indicating to confirm use of the allocated first communication address; or indicating to confirm release of the first communication address. That is, when a packet indicating to release the first communication address is received, the first address configuration message is fed back, to indicate to confirm the release of the first communication address. Different information included in the address configuration message indicates different requests, so that overheads of the address configuration message can be reduced.
Further, the third packet further includes address type indication information indicating a type of the first communication address. For example, the third address configuration message includes the first request information, and the address type indication information indicates a type of a first communication address that is requested to be allocated, so that the third node allocates the first communication address of the type.
Further, the third packet further includes a message type, and the message type whether the third packet includes the third address configuration message, so that the third node determines whether the third packet includes the third address configuration message.
Further, after the sending a third packet to a third node, the method further includes: receiving a fourth packet from the third node, where a packet type of the fourth packet is the same as a packet type of the third packet. The fourth packet is used to respond to the third packet.
When the third address configuration message in the third packet includes the first request information or the second request information, the fourth packet may be as follows.
When the third node agrees to allocate the first communication address for the second node, the fourth packet includes the first communication address. Further, the third node sets a status of the first communication address to an allocated state, to manage the status of the communication address. This reduces a probability of allocating a same communication address for two or more nodes. Further, the fourth packet further includes a fourth address configuration message, and the fourth address configuration message may include consent information indicating that the first communication address has been allocated.
When the third node refuses to allocate the first communication address for the second node, the fourth packet does not include the first communication address, and includes the fourth address configuration message. The fourth address configuration message may include rejection information indicating to reject allocation of the first communication address.
When the third address configuration message in the third packet includes lease renewal information, the fourth packet may be as follows.
When the third node agrees to renew the first communication address, the fourth packet includes a lease period of the first communication address. Further, the fourth packet further includes a fourth address configuration message, and the fourth address configuration message may include consent information indicating that the first communication address has been renewed.
When the third node refuses to renew the first communication address, the fourth packet includes the fourth address configuration message, and the fourth address configuration message may include rejection information indicating to reject renewal of the first communication address.
Further, after the receiving a fourth packet from the third node, the method further includes: sending a second packet to the second node based on the fourth packet. A packet type of the second packet is the same as a packet type of the first packet, and is different from the packet type of the fourth packet.
If the fourth packet includes the first communication address, the second packet includes the first communication address.
If the fourth packet includes the fourth address configuration message, and the fourth address configuration message includes the consent information, the second packet includes the second address configuration message, and the second address configuration message includes the consent information. If the fourth packet includes the fourth address configuration message, and the fourth address configuration message includes the rejection information, the second packet includes the second address configuration message, and the second address configuration message includes the rejection information. That is, content of the fourth packet is the same as content of the second packet.
According to a second aspect, this disclosure provides a communication method. The method is applied to a second node, and may be performed by the second node, or may be performed by a module in the second node, for example, performed by a chip, a processor, or the like in the second node. The method may include: receiving address allocation capability indication information from a first node, where the address allocation capability indication information indicates an address allocation capability of the first node.
It can be learned that, the second node learns of the address allocation capability of the first node through the address allocation capability indication information, and does not need to search, by using a broadcast message or a multicast message, for a node having an address allocation capability, so that radio resource overheads and time can be reduced. The second node learns of the address allocation capability of the first node, and may determine whether to initiate an address request to the first node, to reduce unnecessary address request packets, and further reduce radio resource overheads.
Optionally, the address allocation capability indication information specifically indicates that if the first node has an address allocation capability, the second node may initiate an address request to the first node, to quickly obtain an allocated communication address. Alternatively, if the first node has an address allocation proxy capability, the second node may request, through the first node, a communication address from a node having an address allocation capability, to reduce radio resource overheads. Alternatively, if the first node does not have an address allocation capability, the second node does not request a communication address from the first node, and does not request, through the first node, a communication address from a node having an address allocation capability, to reduce unnecessary address request packets.
In a possible implementation, the address allocation capability indication information is carried in a WAP packet. The WAP packet is a packet transmitted in a process of establishing a neighbor relationship. In the process of establishing the neighbor relationship, the address allocation capability indication information is carried in the WAP packet. This can save signaling overheads.
In another possible implementation, the address allocation capability indication information is carried in a WLS packet. When a WLS is deployed in a communication domain to which the first node and the second node belong, the address allocation capability indication information is carried in the WLS packet, so that signaling overheads can be reduced.
In still another possible implementation, the address allocation capability indication information is carried in a non-link-state routing protocol packet. When a non-link-state routing protocol is deployed in the communication domain to which the first node and the second node belong, the address allocation capability indication information is carried in the non-link-state routing protocol packet or a newly defined protocol packet, and may be advertised in a broadcast or multicast manner. Therefore, that a neighboring node learns of the address allocation capability of the first node is not limited.
Optionally, when the address allocation capability indication information indicates that the first node has the address allocation capability, or the first node has the address allocation proxy capability, the method further includes: sending a first packet to the first node based on the address allocation capability indication information, where the first packet includes a first address configuration message, and the first address configuration message is used to allocate or release a first communication address for the second node.
The first address configuration message may include first request information used to request to allocate the first communication address for the second node, that is, request to allocate a new communication address for the second node. Alternatively, the first address configuration message may include lease renewal information used to request to renew the first communication address, that is, request to renew an existing communication address. Alternatively, the first address configuration message may include release information indicates to release the first communication address, that is, the second node actively requests to release an existing communication address. Alternatively, the first address configuration message may include second request information used to request to allocate the first communication address for the second node when a current communication address of the second node is unavailable, that is, request to allocate a new communication address for the second node when the current communication address is unavailable. Alternatively, the first address configuration message may include confirmation information indicating to confirm use of the first communication address, namely, indicating to confirm use of the allocated first communication address; or indicating to confirm release of the first communication address. That is, when a packet indicating to release the first communication address is received, the first address configuration message is fed back, to indicate to confirm the release of the first communication address. Different information included in the address configuration message indicates different requests, so that overheads of the address configuration message can be reduced.
Further, the first packet further includes address type indication information indicating a type of the first communication address. For example, the first address configuration message includes the first request information, and the address type indication information indicates a type of a first communication address that is requested to be allocated, so that a node having an address allocation capability allocates the first communication address of the type.
The type of the first communication address may be a first address type or a second address type. The first address type is used for routing and forwarding in a communication domain or is used to identify an application, and the second address type is used to identify an application, and may be an extensible address type, an IPv4 address type, or an IPv6 address type. A communication address used to identify an application may be understood as a service address.
An address length corresponding to the first address type is 2 bytes. When the type of the first communication address is the first address type, compared with another address type, the first address type is concise and shorter, so that more payloads are transmitted in a valid data frame. This improves a payload ratio.
When the type of the first communication address is an IPv4 address type or an IPv6 address type, a basis is provided for deploying an IP application in a spark link network. When the type of the first communication address is an extensible address type, the first communication address is compatible with a special addressing mode of a special network (for example, IoT).
When the first communication address is used to identify an application, the first communication address is specifically used to identify some or all applications on the second node, that is, some or all applications share one service address; or the first communication address is specifically used to identify one application on the second node, that is, one application may correspond to one service address. Alternatively, when the first communication address is an anycast address, and is used to identify an application, the first communication address is specifically used to identify a first application on the second node and the first application on another node. That is, for a service address of the anycast address, same applications deployed on different nodes may share one service address.
Further, the first packet further includes a message type, and the message type indicates whether the first packet includes the first address configuration message, so that the first node may perform an address configuration-related operation when the first packet includes the first address configuration message, and perform another operation when the first packet includes another message. This improves execution efficiency of the first node.
Further, after the sending a first packet to the first node, the method further includes: receiving a second packet from the first node, where a packet type of the second packet is the same as a packet type of the first packet. The second packet is used to respond to the first packet.
When the first address configuration message in the first packet includes the first request information or the second request information, the second packet may be as follows.
When the first node agrees to allocate the first communication address for the second node, the second packet includes the first communication address, so that the second node learns of the first communication address based on the second packet, and then performs routing and forwarding and/or identifies an application on the second node based on the first communication address. Further, the first node sets a status of the first communication address to an allocated state, to manage the status of the communication address. This reduces a probability of allocating a same communication address for two or more nodes. Further, the second packet further includes a second address configuration message, and the second address configuration message may include consent information indicating that the first communication address has been allocated.
When the first node refuses to allocate the first communication address for the second node, the second packet does not include the first communication address, and includes the second address configuration message. The second address configuration message may include rejection information indicating to reject allocation of the first communication address.
When the first address configuration message in the first packet includes lease renewal information, the second packet may be as follows.
When the first node agrees to renew the first communication address, the second packet includes a lease period of the first communication address, so that the second node updates a lease of the first communication address, and does not need to request the communication address again. This saves address space of the communication address. Further, the second packet further includes a second address configuration message, and the second address configuration message may include consent information indicating that the first communication address has been renewed.
When the first node refuses to renew the first communication address, the second packet includes the second address configuration message, and the second address configuration message may include rejection information indicating to reject renewal of the first communication address.
Optionally, when the second node has an address allocation proxy capability, and the address allocation capability indication information indicates that the first node has an address allocation capability, the method further includes: receiving a seventh packet from a fourth node, where the seventh packet includes a seventh address configuration message, and the seventh address configuration message is used to allocate or release a second communication address for the fourth node.
The fourth node is directly connected to the second node, and the second node may notify, through the address allocation capability indication information, the fourth node that the second node has the address allocation proxy capability. The seventh packet is similar to the first packet in the first aspect. For details, refer to the specific description of the first packet in the first aspect. Details are not described herein again.
Further, after the receiving a seventh packet, the method further includes: sending an eighth packet to the first node based on the seventh packet. The eighth packet is similar to the third packet in the first aspect. For details, refer to the specific description of the first packet in the first aspect. Details are not described herein again.
Further, after the sending an eighth packet to the first node, the method further includes: receiving a ninth packet from the first node. The ninth packet is similar to the fourth packet in the first aspect. For details, refer to the specific description of the fourth packet in the first aspect. Details are not described herein again.
Further, after the receiving a ninth packet from the first node, the method further includes: sending a tenth packet to the fourth node based on the ninth packet. The eighth packet is similar to the second packet in the first aspect. For details, refer to the specific description of the second packet in the first aspect. Details are not described herein again.
Optionally, the method further includes: sending a query request message to a fifth node, where the query request message includes a third communication address, a type of the third communication address is the second address type, the query request message is used to request to query a fourth communication address corresponding to the third communication address, and a type of the fourth communication address is the first address type. The fifth node may provide a mapping query function.
According to a third aspect, this disclosure provides a communication apparatus, where the communication apparatus includes a module or a unit configured to perform the method according to any one of the first aspect or the second aspect.
In a possible design, the communication apparatus includes a processing unit configured to generate address allocation capability indication information and a communication unit configured to send the address allocation capability indication information to a second node, where the address allocation capability indication information indicates an address allocation capability of a first node.
Optionally, the address allocation capability indication information indicates that the first node has an address allocation capability, the address allocation capability indication information indicates that the first node does not have an address allocation capability, or the address allocation capability indication information indicates that the first node has an address allocation proxy capability.
Optionally, the address allocation capability indication information is carried in a wireless adjacency protocol packet.
Optionally, the address allocation capability indication information is carried in a link-state routing protocol packet; or the address allocation capability indication information is carried in a non-link-state routing protocol packet.
Optionally, the communication unit is further configured to receive a first packet from the second node, where the first packet includes a first address configuration message, and the first address configuration message is used to allocate or release a first communication address for the second node.
Optionally, the first address configuration message includes at least one of the following: first request information, where the first request information is used to request to allocate the first communication address for the second node; lease renewal information, where the lease renewal information is used to request to renew the first communication address; release information, where the release information indicates to release the first communication address; second request information, where the second request information is used to request to allocate the first communication address for the second node when a current communication address of the second node is unavailable; and confirmation information, where the confirmation information indicates to confirm use of the first communication address or confirm release of the first communication address.
Optionally, the first packet further includes address type indication information, and the address type indication information indicates a type of the first communication address.
Optionally, the type of the first communication address is a first address type or a second address type, and the second address type is an extensible address type, an IPv4 address type, or an IPv6 address type.
Optionally, the first address type is used for routing and forwarding in a communication domain or is used to identify an application, and an address length corresponding to the first address type is 2 bytes; and the second address type is used to identify an application.
Optionally, when the first communication address is used to identify an application, the first communication address is specifically used to identify some or all applications on the second node, or is specifically used to identify one application on the second node; or when the first communication address is an anycast address, and is used to identify an application, the first communication address is specifically used to identify a first application on the second node and the first application on another node.
Optionally, the first packet further includes a message type, and the message type indicates whether the first packet includes the first address configuration message.
Optionally, the address allocation capability indication information indicates that the first node has the address allocation capability. The communication unit is further configured to send a second packet to the second node based on the first packet, where a packet type of the second packet is the same as a packet type of the first packet.
Optionally, the second packet includes the first communication address.
Optionally, the processing unit is further configured to set a status of the first communication address to an allocated state.
Optionally, the second packet includes a second address configuration message, and the second address configuration message includes at least one of the following: consent information, where the allocation information indicates that the first communication address has been allocated or the first communication address has been renewed; and rejection information, where the rejection information indicates to reject allocation of the first communication address or reject renewal of the first communication address.
Optionally, the address allocation capability indication information indicates that the first node has the address allocation proxy capability. The communication unit is further configured to send a third packet to a third node based on the first packet, where the third packet includes a third address configuration message, and the third address configuration message is used to allocate or release the first communication address for the second node.
Optionally, the third address configuration message includes at least one of the following: first request information, where the first request information is used to request to allocate the first communication address for the second node; lease renewal information, where the lease renewal information is used to request to renew the first communication address; release information, where the release information indicates to release the first communication address; second request information, where the second request information is used to request to allocate the first communication address for the second node when a current communication address of the second node is unavailable; and confirmation information, where the confirmation information indicates to confirm use of the first communication address or confirm release of the first communication address.
Optionally, the third packet further includes address type indication information, and the address type indication information indicates a type of the first communication address.
Optionally, the third packet further includes a message type, and the message type indicates whether the third packet includes the third address configuration message.
Optionally, a packet type of the third packet is different from a packet type of the first packet.
Optionally, the communication unit is further configured to receive a fourth packet from the third node, where a packet type of the fourth packet is the same as a packet type of the third packet.
Optionally, the fourth packet includes the first communication address.
Optionally, the fourth packet includes a fourth address configuration message, and the fourth address configuration message includes at least one of the following: consent information, where the allocation information indicates that the first communication address has been allocated or the first communication address has been renewed; and rejection information, where the rejection information indicates to reject allocation of the first communication address or reject renewal of the first communication address.
Optionally, the communication unit is further configured to send a second packet to the second node based on the fourth packet, where a packet type of the second packet is the same as a packet type of the first packet.
Optionally, the second packet includes the first communication address.
Optionally, the second packet includes a second address configuration message, and the second address configuration message includes at least one of the following: consent information, where the allocation information indicates that the first communication address has been allocated or the first communication address has been renewed; and rejection information, where the rejection information indicates to reject allocation of the first communication address or reject renewal of the first communication address.
For technical effects brought by any one of the third aspect and the possible implementations, refer to descriptions of technical effects corresponding to the first aspect and the corresponding implementations.
In another possible design, the communication apparatus includes: a communication unit configured to receive address allocation capability indication information from a first node, where the address allocation capability indication information indicates an address allocation capability of the first node.
Optionally, the address allocation capability indication information indicates that the first node has an address allocation capability, the address allocation capability indication information indicates that the first node does not have an address allocation capability, or the address allocation capability indication information indicates that the first node has an address allocation proxy capability.
Optionally, the communication unit is further configured to send a first packet to the first node based on the address allocation capability indication information, where the first packet includes a first address configuration message, and the first address configuration message is used to allocate or release a first communication address for the second node.
Optionally, the communication unit is further configured to receive a second packet from the first node, where a packet type of the second packet is the same as a packet type of the first packet.
Optionally, the second packet includes the first communication address.
For technical effects brought by any one of the third aspect and the possible implementations, refer to descriptions of technical effects corresponding to the second aspect and the corresponding implementations.
According to a fourth aspect, an embodiment of this disclosure provides a communication apparatus, including a processor. The processor is coupled to a memory, and may be configured to execute instructions in the memory, to implement the method in any one of the first aspect and the second aspect and any one of the possible implementations of the first aspect and the second aspect. Optionally, the communication apparatus further includes the memory. Optionally, the communication apparatus further includes a communication interface, and the processor is coupled to the communication interface.
According to a fifth aspect, an embodiment of this disclosure provides a communication apparatus, including a logic circuit and a communication interface. The communication interface is configured to receive information or send information. The logic circuit is configured to receive information or send information through the communication interface, so that the communication apparatus performs the method in any one of the first aspect and the second aspect and any one of the possible implementations of the first aspect and the second aspect.
According to a sixth aspect, an embodiment of this disclosure provides a computer-readable storage medium, where the computer-readable storage medium is configured to store a computer program (which may also be referred to as code or instructions). When the computer program is run on a computer, the method in any one of the first aspect and the second aspect and any one of the possible implementations of the first aspect and the second aspect are implemented.
According to a seventh aspect, an embodiment of this disclosure provides a computer program product, where the computer program product includes a computer program (which may also be referred to as code or instructions). When the computer program is run, a computer is enabled to perform the method in any one of the first aspect and the second aspect and any one of the possible implementations of the first aspect and the second aspect.
According to an eighth aspect, an embodiment of this disclosure provides a chip, where the chip includes a processor, the processor is configured to execute instructions, and when the processor executes the instructions, the chip is enabled to perform the method in any one of the first aspect and the second aspect and any one of the possible implementations of the first aspect and the second aspect. Optionally, the chip further includes a communication interface, and the communication interface is configured to receive a signal or send a signal.
According to a ninth aspect, an embodiment of this disclosure provides a terminal device, where the terminal device includes at least one of the communication apparatus according to the third aspect, the communication apparatus according to the fourth aspect, the communication apparatus according to the fifth aspect, or the chip according to the eighth aspect.
According to a tenth aspect, an embodiment of this disclosure provides a system, where the system includes a terminal device and at least one of the communication apparatus according to the third aspect, the communication apparatus according to the fourth aspect, the communication apparatus according to the fifth aspect, or the chip according to the eighth aspect.
In addition, in a process of performing the method according to the first aspect and any possible implementation, or the method according to the second aspect and any possible implementation, a process of sending information and/or receiving information and the like in the foregoing method may be understood as a process of outputting information by the processor and/or a process of receiving input information by the processor. When outputting the information, the processor may output the information to a transceiver (or a communication interface or a sending module), so that a transceiver transmits the information. After the information is output by the processor, other processing may further be performed on the information before the information arrives at the transceiver. Similarly, when the processor receives the input information, the transceiver (or the communication interface or the sending module) receives the information, and inputs the information into the processor. Further, after the transceiver receives the information, other processing may be performed on the information before the information is input into the processor.
Based on the foregoing principle, for example, sending information in the foregoing method may be understood as outputting information by the processor. For another example, receiving information may be understood as receiving input information by the processor.
Optionally, operations such as transmission, sending, and receiving related to the processor may be more generally understood as operations such as output, receiving, and input of the processor, unless otherwise specified, or provided that the operations do not contradict actual functions or internal logic of the operations in related descriptions.
Optionally, in a process of performing the method according to the first aspect and any possible implementation, or the method according to the second aspect and any possible implementation, the processor may be a processor specially configured to perform these methods, or may be a processor that executes these methods by executing computer instructions in a memory, for example, a general-purpose processor. The memory may be a non-transitory memory, for example, a read-only memory (ROM). The memory and the processor may be integrated on a same chip, or may be separately disposed on different chips. A type of the memory and a manner of disposing the memory and the processor are not limited in embodiments of this disclosure.
In a possible implementation, the at least one memory is located outside the apparatus.
In still another possible implementation, the at least one memory is located in the apparatus.
In still another possible implementation, a part of the at least one memory is located in the apparatus, and the other part of the at least one memory is located outside the apparatus.
In this disclosure, the processor and the memory may alternatively be integrated into one component, that is, the processor and the memory may alternatively be integrated.
In this disclosure, the first node notifies the second node of the address allocation capability of the first node through the address allocation capability indication information, and the second node does not need to search, by using a broadcast message or a multicast message, for a node having an address allocation capability, so that radio resource overheads and time can be reduced. The second node learns of the address allocation capability of the first node, so that the second node determines whether to initiate an address request to the first node, to reduce unnecessary address request packets, and further reduce radio resource overheads.
In this disclosure, words such as “first” and “second” are used to distinguish same items or similar items with basically same functions and effects. A person skilled in the art may understand that the words “first” and “second” do not limit a quantity or an execution sequence, and the words “first” and “second” are not necessarily limited to be different. A term “and/or” describes an association relationship for describing associated objects and indicates that three relationships may exist. For example, A and/or B may indicate the following three cases: Only A exists, both A and B exist, and only B exists. A character “/” generally indicates an “or” relationship between the associated objects.
It should be understood that in this disclosure, “at least one” means one or more, and “a plurality of” means two or more. In addition, “equal to” in this disclosure may be used together with “greater than”, or may be used together with “less than”. When “equal to” and “greater than” are used together, a technical solution of “greater than” is adopted. When “equal to” and “less than” are used together, a technical solution of “less than” is adopted.
The following first describes related names or terms in this disclosure, to facilitate understanding by a person skilled in the art.
The node is an electronic device having a communication capability, and is also referred to as a communication node. For example, the node may include an independent device like a handheld terminal, a vehicle, a vehicle-mounted device, a network side device, user equipment, an access terminal, a subscriber unit, a subscriber station, a mobile station, a mobile console, a remote station, a remote terminal, a wireless communication device, a user agent, or a user apparatus, or may be a component (for example, a chip or an integrated circuit) included in the independent device. The node may be any possible intelligent terminal device (for example, a mobile phone), intelligent transportation device (for example, a vehicle or an uncrewed aerial vehicle), intelligent manufacturing device, smart home device (for example, a large screen, a sound box, or a printer), or the like.
For example, when the node is a vehicle-mounted device, the node may be a vehicle cockpit (cockpit domain) device, or a module in the vehicle cockpit device, for example, one or more of modules such as a cockpit domain controller (CDC), a camera, a screen, a microphone, a speaker, an electronic key, or a passive entry passive start system controller. In a vehicle, the node may also be a wireless battery management system, or a battery management unit (BMU) or a battery control unit (BCU) in the wireless battery management system.
For example, when the node is a handheld terminal, the node may be a mobile phone, a wearable device, a tablet computer (pad), a computer with a data sending and receiving function (like a notebook computer or a palmtop computer), or the like.
The node in this disclosure may be applied to a plurality of application scenarios, for example, the following application scenarios: a mobile internet (MI), industrial control, self-driving, transportation safety, IoT, a smart city, and a smart home.
The node in this disclosure may be used in a plurality of network types, for example, applied to one or more of the following network types: a Spark Link network, a Long-Term Evolution (LTE) network, a 5th-generation mobile communication technology (5G), a wireless local area network (for example, Wi-Fi), Bluetooth (BT), Zigbee, or a vehicle-mounted short-range wireless communication network.
In some application scenarios or some network types, names of devices having similar communication capabilities may not be referred to as nodes. However, for ease of description, devices having communication capabilities are collectively referred to as nodes in embodiments of this disclosure.
A communication system (for example, a Spark Link communication system) usually includes a plurality of nodes, and the nodes may communicate with each other to transmit data. A vehicle-mounted communication system is used as an example. A plurality of communication domains may exist in a vehicle. The communication domain is a system that includes a group of nodes that have a communication relationship and a communication connection relationship (namely, a communication link) between communication nodes, and is usually used to implement a specific function. For example, one communication domain may include one primary node and at least one secondary node, and a primary node and a secondary node, or a primary node and a primary node, or a secondary node and a secondary node may communicate with each other. The primary node may manage the secondary node, has a resource allocation function, and is responsible for allocating resources for the secondary node. The secondary node obeys scheduling of the primary node, and communicates with the primary node and/or with another node by using resources allocated by the primary node. For a communication domain, any two nodes in the communication domain may communicate based on a communication address.
In some specific implementation scenarios, the primary node may also be referred to as a management (grant, G) node, a G node, or a control node, and the secondary node may also be referred to as a terminal (T) or a T node. A communication link from the G node to the T node may be referred to as a G link or a downlink, and a communication link from the T node to the G node may be referred to as a T link or an uplink.
For a communication domain, a topology of the communication domain may be a single-hop star topology, a three-layer multi-hop tree topology, a multi-hop tree topology, or the like.
1 FIG. 1 FIG. 1 1 2 For example, refer to a single-hop star topology shown in (a) in. In (a) in, a communication domainincludes a G node and a plurality of T nodes (for example, a Tnode, a Tnode, . . . , and a Tn node), and each T node is connected to the G node. Communication between the G node and the T node may be bidirectional unicast, or may be G->T broadcast communication.
1 FIG. Optionally, a structure shown in (a) inis applicable to an in-vehicle communication scenario. For example, in the in-vehicle communication scenario, the G node may be a telematics box (T-BOX), the T node may be a user terminal in a vehicle, and the user terminal may be, for example, a mobile phone, a headset, a speaker, or a vehicle-mounted device. The T-BOX may also be referred to as a remote vehicle-mounted terminal or a vehicle-to-everything communication terminal. For example, the T-BOX may establish a communication connection to the mobile phone, to implement control such as opening a door, locking a door, controlling a vehicle window, and turning on and off an air conditioner.
1 FIG. 1 FIG. 2 1 2 3 1 2 3 4 1 2 2 3 4 3 2 3 1 For example, refer to a three-layer multi-hop tree topology shown in (b) in. In (b) in, a communication domainincludes a Gnode, a Gnode, a Gnode, a Tnode, a Tnode, a Tnode, and a Tnode, where the Tnode and the Tnode are connected to the Gnode, the Tnode and the Tnode are connected to the Gnode, and the Gnode and the Gnode are connected to the Gnode.
1 2 3 2 2 1 2 1 2 1 2 1 2 2 3 3 1 1 1 2 1 1 2 The Gnode may be used as a general management node, and the Gnode and the Gnode may be nodes having dual identities. The Gnode is used as an example. For communication between the Gnode and the Gnode, the Gnode may be used as a T node, and the Gnode may be used as a G node. For communication between the Gnode and the Tnode, the Gnode may be used as a G node, and the Tnode may be used as a T node. The node having dual identities may be indicated as G(T). In this case, the Gnode may be indicated as G(T), and the Gnode may be indicated as G(T). For the three-layer multi-hop tree topology, communication between the G node and the T node may be bidirectional unicast (for example, bidirectional unicast between the Gnode and the Tnode may be indicated as G-G(T)-T), or may be broadcast (for example, G->G(T)->T).
1 FIG. 2 FIG. 2 FIG. 2 FIG. 1 FIG. Optionally, the structure shown in (b) inis applicable to a wireless BMS scenario. For the wireless BMS scenario, refer to. In, a general control node is used as a general management node, an aggregation node is a node having dual identities, and a BMU in a BMS is used as a T node. A BCU in the BMS may be used as a G node, the BCU does not work, and the BMU continues to work. Therefore, the BCU is not shown in. The structure shown in (b) inis further applicable to a battery pack/cell storage scenario and the like.
1 FIG. 1 FIG. 2 1 2 3 4 1 2 3 1 2 2 4 4 2 3 2 1 3 1 1 2 3 4 For example, refer to a multi-hop tree topology shown in (c) in. In (c) in, a communication domainincludes a Gnode, a Gnode, a Gnode, a Gnode, a Tnode, a Tnode, and a Tnode, where the Tnode is connected to the Gnode, the Tnode is connected to the Gnode, the Gnode may be connected to the Gnode and the Gnode, the Gnode is connected to the Gnode, and the Gnode is connected to the Gnode. The Gnode may be used as a general management node, and the Gnode, the Gnode, and the Gnode may be nodes having dual identities.
1 FIG. 3 FIG. 3 FIG. 3 FIG. 3 FIG. 3 FIG. 3 FIG. 1 FIG. Optionally, the structure shown in (c) inis applicable to a smart home scenario. For the smart home scenario, refer to. In, gateway/customer premises equipment (CPE) is used as a general management node, a sub-router, a large screen, a mobile phone, and an air conditioner are nodes having dual identities, and a water heater, a smart curtain, a sound box, a microphone, a printer, and a smart lock are used as T nodes. In the smart home scenario, the T node may have an IP address (for example, the printer inhas an IP address), or may have no IP address (for example, the water heater, the smart curtain, and the smart lock inhave no IP address); and a G(T) node may have an IP address (for example, the sub-router inhas an IP address), or may have no IP address (for example, the air conditioner inhas no IP address). The structure shown in (c) inis also applicable to a large-scale sensor network with low power consumption. For example, in the large-scale sensor network with low power consumption, a root node may be used as a general management node, a backbone node may be used as G(T), and a leaf node may be used as the T node.
The following describes an application scenario and a system architecture of this disclosure.
4 FIG. 4 FIG. 4 FIG. 401 402 407 408 414 415 is an example diagram of a topology of a mesh network according to this disclosure. The topology shown inincludes an M node, an I nodeto an I node, and an E nodeto an E node. Optionally, the topology further includes an A node. It should be noted that a quantity of nodes shown inis used as an example, and does not constitute a limitation on this disclosure.
The I node is an intermediate node or an intermediate routing node, may be understood as an address allocator, an address resolver, or an address requestor, or may be understood as a data packet sender or receiver, and has a data packet forwarding capability in a network. The I node may be, for example, a wireless intermediate system (WIS) node. As an address allocator, the I node has an address allocation capability or an address allocation proxy capability. The address allocation capability indicates that the I node can allocate an address, and the address allocation proxy capability indicates that the I node cannot allocate an address, but can relay an address request and address allocation for another node. As an address requestor, the I node may request a communication address for the I node. The I node may further serve as an address request agent, and may request a communication address for another node (for example, an adjacent node).
The E node is an end node, and may be understood as an address requestor, or may be understood as a data packet sender or receiver, but does not have a data packet forwarding capability in a network. The E node may be, for example, a wireless end system (WES) node. The I node and the E node are physical nodes or physical units, and may be understood as nodes or units that actually exist.
401 401 401 The M nodeplays a role of a manager, and is injected with an allocable address type and address space during network initialization. The M nodeis mainly responsible for address allocation. Considering reliability of network management, one or more backup M nodes may exist in the network. The M node is a function node, a function unit, a logical node, or a logical unit, and may be understood as a virtual node or unit. A function of the M nodemay be implemented by using an I node, that is, the I node has an address allocation capability, and the M node is essentially the I node. The M node may also be described as a Manager node.
415 415 415 The A nodeis an address resolver node, and mainly provides a mapping query function, for example, a mapping query function between a non-spark link network address and a Spark Link network address (SLNA). Two parties communicating with each other by using the non-spark link network address may query the A nodefor the spark link network address of each other, to construct a spark link network layer packet based on the spark link network address, and perform addressing and forwarding by using the spark link network address. The A node is a function node, a function unit, a logical node, or a logical unit, and may be understood as a virtual node or unit. A function of the A nodemay be implemented by using an I node, that is, the I node has a mapping query function, and the A node is essentially the I node. The A node may also be described as an address resolver node.
It should be noted that an I node may have a function of the M node, and may further have a function of the A node; or an I node has a function of the M node, and another I node has a function of the A node.
4 FIG. 1 FIG. 4 FIG. 1 FIG. 4 FIG. 1 FIG. 4 FIG. 2 FIG. 3 FIG. 1 2 3 1 4 1 It may be understood that the network shown inmay be a communication domain, and the several topologies shown inmay be a subset of the topology shown in. For example, the Gnode, the Gnode, and the Gnode in (b) inmay be the I node in, the Tnode to the Tnode in (b) inmay be the E node in, and the Gnode may have a function of the M node. Further, the general control node and the aggregation node inmay be used as the I node, and the general control node may have a function of the M node. The BMU can function as the E node and request a communication address from the general control node. The gateway/CPE, the sub-router, the large screen, the mobile phone, and the air conditioner inmay be used as the I node, and the gateway/CPE may have a function of the M node. The water heater, the smart curtain, and the intelligent lock may be used as the E node, and request a communication address from the gateway/CPE.
2 FIG. 3 FIG. Further, this embodiment may be applied to an in-vehicle communication scenario, a wireless BMS scenario (as shown in), a battery pack/cell storage scenario, a smart home scenario (as shown in), and intelligent application scenarios such as a smart cockpit, smart driving, smart manufacturing, and smart transportation.
5 FIG. 501 502 501 502 501 502 501 502 502 501 Manner 1: The first nodehas a function of the M node, and the second nodeis a node directly connected to the first node, and may be an I node or an E node. The second nodemay request a communication address of the second nodefrom the first node. 5 FIG. 501 502 501 501 502 501 502 Manner 2: The wireless communication system shown infurther includes a third node having a function of the M node. The third node is directly connected or not directly connected to the first nodehaving an address allocation agent capability, and the second nodeconfigured to request the communication address is directly connected to the first node. The first nodemay request a communication address from the third node for the second node. The first nodemay be an I node, and the second nodemay be an I node or an E node. 5 FIG. 502 502 501 502 501 502 Manner 3: The wireless communication system shown infurther includes a third node configured to request a communication address, the third node is directly connected to the second nodehaving an address allocation agent capability, and the second nodeis directly connected or not directly connected to the first nodehaving a function of the M node. The second nodemay request a communication address form the first nodefor the third node. The second nodemay be an I node, and the third node may be an I node or an E node. An example in which communication nodes include a first node and a second node is used.is a schematic diagram of a possible wireless communication system according to this disclosure. The wireless communication system includes a first nodeand a second node. That one communication domain includes one M node is used as an example. A combination manner of the first nodeand the second nodemay be any one of the following manners.
It should be understood that the wireless communication system may further include more nodes. For ease of description, the nodes are shown as the first node and the second node herein.
For a communication domain, there is no specific solution to how adjacent nodes learn of an address allocation capability of each other. Therefore, this disclosure provides a communication method and apparatus, to indicate an address allocation capability of a node, to allocate a communication address. Before the communication method is described, the communication address provided in this disclosure is described.
(1) An SLNA is used for routing and forwarding in a communication domain. In other words, routing and forwarding are performed based on the SLNA in the communication domain. To be specific, each node in the communication domain may be configured with the SLNA, and the SLNA may be considered as a default address type. The SLNA can also be understood as an address that can be managed by a network. The SLNA may also be described as a Spark Link base address or a base address. The SLNA may also be used to identify an application, that is, serve as a service address. For example, a type of the SLNA is referred to as type 1, and a byte length of the SLNA is 2 bytes. (2) An extensible address is used to identify an application, that is, serves as a service address. The extensible address can be understood as a user-defined address type with a variable byte length of 1 byte to 16 bytes. For example, a type of the extensible address is referred to as type 2 (type 2). (3) An IPv4 address is used to identify an application, that is, serves as a service address. A maximum byte length of the IPv4 address is 4 bytes. For example, a type of the IPv4 address is referred to as type 4. (4) An IPv6 address is used to identify an application, that is, serves as a service address. A maximum byte length of the IPv6 address is 16 bytes. For example, a type of the IPv6 address is referred to as type 6. This disclosure provides the following types of communication address.
Identifying an application may describe identifying an application service or the like. Addresses of the four types can be used as service addresses. For ease of differentiation, in this disclosure, the type of the spark link network address is used as a first address type, and the types of the extensible address, the IPv4 address, and the IPv6 address are used as second address types, namely, non-spark link network addresses.
0.0 is not used as a communication address of a node but as a default routing address in network routing addressing; 127.1 is used as a local loopback address; 127.2 is used as a default unicast address of all M nodes (manager node anycast address); 127.3 is used as a default unicast address of all A nodes (address resolver node anycast address); and 127.4 to 127.255 is reserved for future use. a. Unicast: An address ranges from 0.0 to 127.255, where 128.0 is used as a multi-hop multicast address listened to by all M nodes (all manager nodes multicast address); 128.1 is used as a multi-hop multicast address listened to by all A nodes (all address resolver nodes multicast address); 128.2 is used as a multi-hop multicast address listened to by all intermediate nodes (all WIS nodes multicast address); 128.3 is used as a multi-hop multicast address listened to by all end nodes (all WES nodes multicast address); 128.4 is used as a single-hop multicast address listened to by an intermediate node within a link local range (link local WIS nodes multicast address); 128.5 is used as a single-hop multicast address listened to by an end node within a link local range (link local WES nodes multicast address); and 128.6 to 128.255 is reserved for protocol extension. b. Multicast: An address ranges from 128.0 to 200.255, where c. Broadcast: A broadcast address is 255.255. d. Reservation: An address ranges from 201.0 to 255.254. The SLNA can be classified into unicast, multicast, broadcast, and anycast types. For example, address ranges corresponding to different types are as follows:
For a node in the communication domain, the node may request a separate service address for an application of the node, or may reuse an SLNA of the node, or a plurality of applications may share one service address. Same applications deployed on different nodes may use a same service address, and the service address is an anycast address. The application uses advertisement and subscription modes. A plurality of nodes can request a same multicast address.
The following describes the communication method provided in this disclosure.
6 FIG. is a schematic flowchart of a communication method according to this disclosure. The method may include but is not limited to the following steps.
601 S: A first node generates address allocation capability indication information.
The address allocation capability indication information indicates an address allocation capability of the first node, for example, indicates whether the first node has an address allocation capability, or whether the first node has an address allocation proxy capability. Further, the address allocation capability indication information indicates that the first node has an address allocation capability, or indicates that the first node does not have an address allocation capability, or indicates that the first node has an address allocation proxy capability. If the first node has an address allocation capability, it indicates that the first node can allocate an address for another node, for example, can allocate an SLNA or a service address for the other node. If the first node has an address allocation proxy capability, it indicates that the first node cannot allocate an address for another node, but can relay an address request, address allocation, and the like for another node. If the first node does not have an address allocation capability, it indicates that the first node cannot allocate an address for another node, and cannot relay an address request and address allocation for the other node.
For example, the address allocation capability indication information may be indicated by using a 2-bit (bits) value. For example, if the 2-bit value is 00, it indicates that the first node does not have an address allocation capability; if the 2-bit value is 01, it indicates that the first node has an address allocation capability; if the 2-bit value is 10, it indicates that the first node has an address allocation proxy capability; and if the 2-bit value is 11, it indicates that reservation is performed.
Optionally, the first node may generate the address allocation capability indication information based on whether the first node has the address allocation capability.
602 S: The first node sends the address allocation capability indication information to a second node. Correspondingly, the second node receives the address allocation capability indication information from the first node.
The second node is directly connected to the first node. That is, the second node is a neighboring node of the first node. That the first node sends the address allocation capability indication information to a second node may be understood as that the first node notifies the second node of the address allocation capability of the first node through the address allocation capability indication information. Adjacent nodes notify each other of an address allocation capability based on address allocation capability indication information, to determine whether to initiate an address request.
7 FIG. In a first implementation, the address allocation capability indication information is carried in a WAP packet. The packet may also be described as a PDU. That is, in a process of establishing a neighbor relationship between the first node and the second node, the first node sends a WAP PDU to the second node. The WAP PDU carries the address allocation capability indication information. Optionally, the WAP PDU may be a hello PDU. The hello PDU includes a node capability TLV. For a definition of the node capability TLV, refer to.
7 FIG. type, having a byte length of 1 byte and indicating a type of the node capability TLV, for example, type 4; length, having a byte length of 1 byte, indicating a length of the node capability TLV, and ranging from 0 to 255; and node capability sub-TLV, having a variable byte length and indicating an extensible node capability set. For example, as shown in, the definition of the node capability TLV may include at least one of the following:
It should be noted that the node capability TLV appears only once in the hello PDU. The hello PDU sent by the first node (the I node or the E node) has only one node capability TLV. If the hello PDU received by the second node (the I node or the E node) has more than one node capability TLVs, the second node discards the hello PDU.
sub-type, having a byte length of 1 byte and indicating a type of the node general capability sub-TLV, for example, type 1; length (Length), having a byte length of 1 byte, indicating a length of the node general capability sub-TLV, and ranging from 0 to 255; and A field, occupying 2 bits, where a value of the 2 bits indicates address allocation capability indication information. For example, if the value is 00, it indicates that there is no address allocation capability; if the value is 01, it indicates that there is an address allocation capability; if the value is 10, it indicates that there is an address allocation proxy capability; and if the value is 11, it indicates reservation. The extensible node capability set may include sub-TLVs of one or more nodes. For example, a node general capability sub-TLV may include address allocation capability indication information. The node general capability sub-TLV may indicate a node general capability sub-TLV of a first node. A node general capability sub-TLV definition may include at least one of the following:
It should be noted that the node general capability sub-TLV appears only once in the hello PDU. If the hello PDU received by the second node (the I node or the E node) has more than one node general capability sub-TLVs, the second node discards the hello PDU.
7 FIG. In a second implementation, the address allocation capability indication information is carried in a WLS packet, and the WLS packet is for example, a link state packet (link state PDU). That is, the first node advertises the address allocation capability indication information in a link state packet of the first node. When receiving the link state packet, the second node records an address allocation capability of the first node. Optionally, the link state packet includes a node capability TLV. For a definition of the node capability TLV, refer to. For details, refer to the description of the node capability TLV in the first implementation. A prerequisite of the second implementation is that a WLS is deployed in a communication domain (including the first node and the second node). In other words, this implementation depends on that a network routing protocol of the communication domain is the WLS.
7 FIG. In a third implementation, the address allocation capability indication information is carried in a non-link-state routing protocol packet, and a non-link-state routing protocol is, for example, an ad hoc on-demand distance vector (AODV) routing protocol. A prerequisite of the third implementation is that the non-link-state routing protocol (for example, AODV) is deployed in a communication domain (including the first node and the second node). In other words, this implementation depends on that a network routing protocol of the communication domain is the non-link-state routing protocol. For the non-link-state routing protocol, a new protocol PDU may be defined to advertise the address allocation capability indication information. For example, the address allocation capability indication information may be advertised in a broadcast or multicast manner. In this disclosure, the non-link-state routing protocol packet is used as an example to describe the new protocol PDU. In actual application, another name may be used for description. Optionally, the non-link-state routing packet includes a node capability TLV. For a definition of the node capability TLV, refer to. For details, refer to the description of the node capability TLV in the first implementation.
The foregoing three implementations are used as examples, and do not constitute a limitation on this disclosure. In actual application, the address allocation capability indication information may be carried in another PDU.
6 FIG. In the embodiment shown in, the adjacent nodes notify each other of an address allocation capability based on address allocation capability indication information, and there is no need to search, by using a broadcast message or a multicast message, for a node having an address allocation capability, so that radio resource overheads and time can be reduced. The second node learns of the address allocation capability of the first node, so that the second node determines whether to initiate an address request to the first node, to reduce unnecessary address request packets, and further reduce radio resource overheads.
Manner (1): The first node has an address allocation capability, and the second node does not have an address allocation capability. The first node may be an I node that has a function of the M node, and the second node may be an I node or an E node that does not have an address allocation capability. Manner (2): The first node has an address allocation proxy capability, and the second node does not have an address allocation capability. The first node may be an I node having an address allocation proxy capability, and the second node may be an I node or an E node that does not have an address allocation capability. In the manner (2), the communication domain further includes a third node having an address allocation capability, that is, the third node may be an I node that has a function of the M node. The third node may be directly connected or not directly connected to the first node. Manner (3): The first node has an address allocation capability, and the second node has an address allocation proxy capability. The first node may be an I node that has a function of the M node, and the second node may be an I node having an address allocation proxy capability. Optionally, in the manner (3), the communication domain may further include a fourth node that does not have an address allocation capability, and the fourth node is directly connected to the second node. The fourth node may be an I node or an E node. Manner (4): Neither the first node nor the second node has an address allocation capability. The first node may be an I node or an E node, and the second node may be an I node or an E node. That one communication domain includes one M node is used as an example. A combination manner of an address allocation capability of the first node and an address allocation capability of the second node may be the following.
8 FIG. 13 FIG.A 13 FIG.B For the foregoing manner (1) to manner (3), a process of requesting a communication address may be further performed. For the manner (1), the second node directly requests the communication address from the first node. Refer to an embodiment shown infor this process. For the manner (2), the second node may request the communication address through the first node from the third node. Refer to an embodiment shown inandfor this process. For the manner (3), the fourth node may request the communication address through the second node from the first node. This is similar to the manner (2).
8 FIG. 8 FIG. 8 FIG. is a schematic flowchart of another communication method according to this disclosure. In, a first node has a function of an M node (that is, has an address allocation capability), a second node is a newly added I node or E node (no communication address is allocated), and the second node is directly connected to the first node. The method shown inmay include but is not limited to the following steps.
701 S: The first node sends address allocation capability indication information to the second node. Correspondingly, the second node receives the address allocation capability indication information from the first node. The address allocation capability indication information indicates that the first node has an address allocation capability.
702 S: The second node sends a first packet to the first node. Correspondingly, the first node receives the first packet from the second node. The first packet includes a first address configuration message, and the first address configuration message is used to allocate a first communication address for the second node.
When learning that the first node has an address allocation capability, the second node sends the first packet to the first node. A packet type of the first packet may be a general message PDU (GMP). The GMP is used for one-hop communication between a node and a directly connected node when the node does not have a communication address. The GMP is used only for one-hop communication. A prerequisite is that a neighbor relationship has been established between two nodes that use the GMP for communication. A valid neighbor relationship indicates that security authentication is successful. Compared with a DHCP packet, the GMP can reduce radio resource overheads. Compared with an IPv6 neighbor discovery protocol packet, the GMP can reduce radio resource overheads.
9 FIG. network layer protocol identifier, used to identify a GMP; version, used to identify a version number of the GMP, for example, Version 1; message type, indicating a message type carried in the GMP, where for example, if the message type is 1, it indicates that information carried in the GMP is an address configuration message; source system identifier, namely, a local system identifier; source interface identifier, namely, an identifier of an air interface for sending a packet locally; PDU length, a length of an entire packet, including a packet header; checksum, a checksum of an entire packet; sequence number, used to prevent retransmission attacks; and variable length fields. For example, when the message type is 1, the variable length fields carry content of the address configuration message. For example, refer to a GMP format shown in. The format may include at least one of the following fields:
10 FIG. message type, for example, 1, indicating that a message is an address configuration message; message length, indicating a length of the address configuration message, and being indicated by two bytes; original request address system identifier (ID); manager address, an address of an M node responsible for allocating an address, where when a packet sent by a request end (a node requesting a communication address) carries the address configuration message, the field may be 0; and variable length fields, various TLVs in the address configuration message. For example, refer to a format of the address configuration shown in. The format may include at least one of the following fields:
11 FIG. address configuration length; M field, occupying 1 bit, where for example, when a value of the bit is 0, it indicates a unicast address; and when a value of the bit is 1, it indicates a multicast address; address type or also referred to as an address family, indicating a type of a communication address that is requested, released, or renewed, where the address type may be classified into four types: SLNA, type 1; extensible address, type 2; IPv4 address, type 4; and IPv6 address, type 6; when a value of the A field is 0, it indicates first request information (apply) used by a request end to request to allocate a new communication address; when a value of the A field is 1, it indicates lease renewal information (renew lease) used by the request end to request to renew an existing communication address; when a value of the A field is 2, it indicates consent information (ack) indicating that a responder agrees to allocate or renew a communication address; or indicating that the responder has allocated a communication address or has renewed a communication address; when a value of the A field is 3, it indicates rejection information (nck) indicating that the responder refuses to allocate or renew a communication address; A field, where a value of the A field indicates an address configuration action, for example: when a value of the A field is 5, it indicates second request information (reapply) used by the request end to request to allocate a new communication address when the request end finds that a current communication address is in conflict or is unavailable; and when a value of the A field is 6, it indicates confirmation information (confirm) indicating the request end to confirm use of an allocated communication address or confirm release of the communication address (the request end is a node that requests to allocate a communication address, or may be described as a client, or the like; and the responder is a node that allocates a communication address, or may be described as a server, or the like); when a value of the A field is 4, it indicates release information (release) used by the request end to indicate to release a communication address, that is, the request end actively requests to release the communication address; request transaction number, where the transaction number is used to distinguish different requests (for example, requesting a communication address or releasing a communication address), and a response message may also carry the transaction number to respond to a specific request; service information length, indicating a length of next service information; service information, namely, description information of the service information, for example, an application ID, where when the field is not filled, it indicates that a communication address is not a communication address of a specific application, and the communication address may have a plurality of purposes and is not an anycast address; and if the communication address is an anycast address, the service information cannot be empty; lease period, indicating a lease period of a communication address, and in a unit of second, where when a communication address is requested, the lease period cannot be less than 300 seconds; address number, where when a communication address is requested, this field indicates a quantity of communication addresses to be requested; and when a communication address is renewed or is not requested, this field indicates a quantity of pieces of subsequent address information; and address information list, including one or more pieces of address information. For example, refer to a TLV of the address configuration message shown in. The TLV may include at least one of the following fields:
12 FIG. For example, refer to the address information shown in. The address information includes address information of four address types. For example, for an SLNA (address type=1, that is, type=1), address information of the SLNA includes a specific SLNA. For another example, for an extensible address (address type=1, that is, type=1), address information of the extensible address includes an address prefix length and an address prefix of the extensible address.
11 FIG. A first packet, for example, a first GMP, includes a first address configuration message, and the first address configuration message includes first request information used to request to allocate a new communication address, for example, a first communication address, to the second node. For example, based on, a value of the A field in the first address configuration message is 0.
11 FIG. 8 FIG. 11 FIG. Optionally, the first packet further includes address type indication information indicating a type of a communication address requested to be allocated, namely, a type of the first communication address. For example, based on, the first address configuration message further includes an address type. In the embodiment shown in, the type of the first communication address is an SLNA. That is, a newly added node requests an SLNA first time, to perform routing and forwarding in a communication domain based on the SLNA. In this case, based on, the address type in the first address configuration message is type 1.
9 FIG. Optionally, the first packet further includes a message type indicating whether the first packet includes the first address configuration message. For example, based on, if Message type is 1, it indicates that the first packet includes the first address configuration message; and if Message type is another value, it indicates that the first packet does not include the first address configuration message.
703 S: The first node allocates the first communication address for the second node, and sets a status of the first communication address to an allocated state.
When receiving the first packet, the first node determines whether to allocate the first communication address for the second node. If the first node can allocate the first communication address for the second node, the first node allocates the first communication address for the second node. After the allocation, the first node sets a status of the first communication address to an allocated state, so that the first node manages communication addresses of nodes.
11 FIG. Optionally, the first packet further includes a lease period indicating time for requesting to lease the first communication address. For example, based on, the first address configuration message further includes a lease period. The second node may set leasable time of the first communication address based on the lease period. For example, a lease period carried in the first packet is 350 seconds, and the second node may set the leasable time to 350 seconds, 400 seconds, or the like. This depends on a specific situation.
704 S: The first node sends a second packet to the second node. Correspondingly, the second node receives the second packet from the first node. The second packet includes the first communication address.
After allocating the first communication address for the second node, the first node sends the second packet to the second node. A packet type of the second packet is the same as a packet type of the first packet, and may be a GMP.
11 FIG. 12 FIG. The second packet includes a second address configuration message, and the second address configuration message includes consent information indicating that the first communication address has been allocated. For example, based on, a value of the A field in the second address configuration message is 2. The second packet further includes the first communication address. For example, based on, an address information list in the second address configuration message includes an SLNA of the second node.
Optionally, the second packet further includes leasable time of the first communication address.
705 S: The second node saves and validates the first communication address.
When receiving the second packet, the second node obtains the first communication address from the second packet, and stores the first communication address. The validating the first communication address may be understood as using the first communication address to perform routing and/or forwarding when routing and/or forwarding need/needs to be performed.
706 S: The second node sends a fifth packet to the first node. Correspondingly, the first node receives the fifth packet from the second node. The fifth packet includes a fifth address configuration message.
A packet type of the fifth packet is the same as a packet type of the first packet, and may be a GMP.
11 FIG. The fifth packet includes the fifth address configuration message, and the fifth address configuration message includes confirmation information indicating to confirm use of the first communication address. For example, based on, a value of the A field in the fifth address configuration message is 6.
707 S: The first node sets the status of the first communication address to a leased state.
When receiving the fifth packet, the first node sets the status of the first communication address to a leased state, so that the first node manages communication addresses of nodes.
8 FIG. In the embodiment shown in, when learning that the first node has an address allocation capability, the second node requests the first node to allocate an SLNA for the second node, so that the second node dynamically obtains the SLNA, and the first node manages or controls the second node. The SLNA is concise and short. This facilitates transmission of more payloads in a valid data frame and improves a payload ratio.
8 FIG. 11 FIG. 705 707 In, an example in which the first node agrees to allocate the first communication address for the second node is used. If the first node refuses to allocate the first communication address for the second node, the second address configuration message in the second packet includes rejection information indicating to reject allocation of the first communication address. For example, based on, a value of the A field in the second address configuration message is 3. Further, step Sto step Sare not performed. Optionally, after receiving the second packet, the second node may send the first packet to the first node again, to request the communication address.
13 FIG.A 13 FIG.B 13 FIG.A 13 FIG.B 13 FIG.A 13 FIG.B andare a schematic flowchart of still another communication method according to this disclosure. Inand, a third node has a function of an M node (that is, has an address allocation capability), a second node is a newly added I node or E node (no communication address is allocated), and a first node has an address allocation proxy capability. The first node is directly connected or not directly connected to the third node, and the second node is directly connected to the first node. The method shown inandmay include but is not limited to the following steps.
801 S: The first node sends address allocation capability indication information to the second node. Correspondingly, the second node receives the address allocation capability indication information from the first node. The address allocation capability indication information indicates that the first node has an address allocation proxy capability.
802 S: The second node sends a first packet to the first node. Correspondingly, the first node receives the first packet from the second node. The first packet includes a first address configuration message, and the first address configuration message is used to allocate a first communication address for the second node.
8 FIG. When learning that the first node has an address allocation proxy capability, the second node sends the first packet to the first node, to request the first node to relay an address request for the second node. A packet type of the first packet may be a GMP. For a GMP format and the first packet, refer to detailed descriptions of the GMP format and the first packet in the embodiment shown in. Details are not described herein again.
803 S: The first node generates a third packet based on the first packet. The third packet includes a third address configuration message, and the third address configuration message is used to allocate the first communication address for the second node.
When receiving the first packet, the first node extracts the first address configuration message from the first packet (that is, decapsulates the first packet to obtain the first address configuration message), and encapsulates the first address configuration message into the third packet. The third packet includes the third address configuration message, and content carried in the third address configuration message is the same as content carried in the first address configuration message.
A packet type of the third packet is different from the packet type of the first packet, and the packet type of the third packet may be an address configuration protocol (ACP) packet. The ACP is a protocol that works on a connection-less transport protocol (CLTP). The ACP adopts a client-server mode and has an independent port number (for example, a port number of a client is 5, and a port number of a server is 6). The ACP is defined between an address request agent and an address allocation agent to request and configurate an address, that is, an ACP is defined between a node having an address allocation proxy capability and a node having an address allocation capability to request and configurate an address (for example, renewing an address).
The address request agent is responsible for encapsulation and decapsulation, and does not record a communication address of an address requestor. That is, the address request agent is stateless. For the address allocator, recorded stateful data may be as small as possible, to reduce load of the address allocator, for example, record a correspondence between the address requestor and the communication address of the address requestor, and optionally record a status (for example, an allocated state or a leased state) of the communication address.
Compared with a DHCP packet, an ACP packet reduces radio resource consumption. Compared with an IPv6 neighbor discovery protocol packet, the ACP packet can reduce radio resource consumption and support a multi-hop wireless access network.
A. After the third node establishes a neighbor relationship with the first node, the first node is already configured with an SLNA. B. The first node has learned of an SLNA of the third node. A prerequisite for allocating, by the node having the address allocation capability, a communication address for an indirectly connected node, namely, a prerequisite for allocating, by the third node, the first communication address for the second node includes:
The first node may learn of the SLNA of the third node in a manner a or manner b. Manner a: The third node has a default anycast address (unicast) (manager node anycast address), for example, 127.2. The anycast address is known to all nodes having an address allocation proxy capability. Manner b: When the third node does not use a default anycast address, the first node records a unicast address of the first node when requesting the SLNA for the third node.
The second node may also learn of the SLNA of the third node in the foregoing manner a.
804 S: The first node sends the third packet to the third node. Correspondingly, the third node receives the third packet from the first node.
11 FIG. The third packet includes the third address configuration message, and the third address configuration message includes first request information used to request to allocate a new communication address, for example, a first communication address, for the second node. For example, based on, a value of the A field in the third address configuration message is 0.
11 FIG. 8 FIG. 11 FIG. Optionally, the third packet further includes address type indication information indicating a type of a communication address requested to be allocated, namely, a type of the first communication address. For example, based on, the third address configuration message further includes an address type. In the embodiment shown in, the type of the first communication address is an SLNA. That is, a newly added node requests an SLNA first time, to perform routing and forwarding in a communication domain based on the SLNA. In this case, based on, the address type in the third address configuration message is type 1.
9 FIG. Optionally, the third packet further includes a message type indicating whether the third packet includes the third address configuration message. For example, based on, if the message type is 1, it indicates that the third packet includes the third address configuration message; and if the message type is another value, it indicates that the third packet does not include the third address configuration message.
805 805 703 8 FIG. S: The third node allocates the first communication address for the second node, and sets a status of the first communication address to an allocated state. For step S, refer to the specific description of step Sin the embodiment shown in. Details are not described herein again.
806 S: The third node sends a fourth packet to the first node. Correspondingly, the first node receives the fourth packet from the third node. The fourth packet includes the first communication address.
After allocating the first communication address for the second node, the third node sends the fourth packet to the first node. A packet type of the fourth packet is the same as the packet type of the third packet, and may be an ACP packet.
11 FIG. 12 FIG. The fourth packet includes a fourth address configuration message, and the fourth address configuration message includes consent information indicating that the first communication address has been allocated. For example, based on, a value of the A field in the fourth address configuration message is 2. The fourth packet further includes the first communication address. For example, based on, an address information list in the fourth address configuration message includes an SLNA of the second node.
Optionally, the fourth packet further includes leasable time of the first communication address.
807 S: The first node generates a second packet based on the fourth packet.
When receiving the fourth packet, the first node extracts the fourth address configuration message from the fourth packet, and encapsulates the fourth address configuration message into the second packet. The second packet includes a second address configuration message, and content carried in the second address configuration message is the same as content carried in the fourth address configuration message.
The packet type of the fourth packet is different from a packet type of the second packet. The packet type of the fourth packet is an ACP packet, and the packet type of the second packet is a GMP.
808 S: The first node sends the second packet to the second node. Correspondingly, the second node receives the second packet from the first node.
11 FIG. 12 FIG. The second packet includes the second address configuration message, and the second address configuration message includes consent information indicating that the first communication address has been allocated. For example, based on, a value of the A field in the second address configuration message is 2. The second packet further includes the first communication address. For example, based on, an address information list in the second address configuration message includes an SLNA of the second node.
Optionally, the second packet further includes leasable time of the first communication address.
809 S: The second node saves and validates the first communication address.
810 S: The second node sends a fifth packet to the first node. Correspondingly, the first node receives the fifth packet from the second node. The fifth packet includes a fifth address configuration message.
809 810 705 706 8 FIG. For step Sand step S, refer to the specific description of step Sand step Sin the embodiment shown in. Details are not described herein again.
811 S: The first node generates a sixth packet based on the fifth packet.
When receiving the fifth packet, the first node extracts the fifth address configuration message from the fifth packet, and encapsulates the fifth address configuration message into the sixth packet. The sixth packet includes a sixth address configuration message, and content carried in the sixth address configuration message is the same as content carried in the fifth address configuration message.
A packet type of the fifth packet is different from a packet type of the sixth packet. The packet type of the sixth packet is an ACP packet, and the packet type of the fifth packet is a GMP.
812 S: The first node sends the sixth packet to the third node. Correspondingly, the third node receives the sixth packet from the first node.
11 FIG. The sixth packet includes the sixth address configuration message, and the sixth address configuration message includes confirmation information indicating to confirm use of the first communication address. For example, based on, a value of the A field in the sixth address configuration message is 6.
813 S: The third node sets the status of the first communication address to a leased state.
813 707 8 FIG. For step S, refer to the specific description of step Sin the embodiment shown in. Details are not described herein again.
13 FIG.A 13 FIG.B In the embodiment shown inand, when learning that the first node has an address allocation proxy capability, the second node requests the first node to request an SLNA from the third node for the second node. Therefore, a newly added node that is not directly connected to the M node can request to obtain the SLNA, to dynamically obtain the SLNA, so that the first node manages or controls the second node.
13 FIG.A 13 FIG.B 11 FIG. 809 813 Inand, that the third node agrees to allocate the first communication address for the second node is used as an example. If the third node refuses to allocate the first communication address for the second node, the fourth address configuration message in the fourth packet includes rejection information indicating to reject allocation of the first communication address. For example, based on, a value of the A field in the fourth address configuration message is 3. Further, the second address configuration message in the second packet includes the rejection information. Further, step Sto step Sare not performed.
In an optional embodiment, the first node has a function of the M node (that is, has an address allocation capability), the second node has an address allocation proxy capability, the fourth node is a newly added I node or E node (no communication address is allocated), the first node is directly connected or not directly connected to the second node, and the fourth node is directly connected to the second node. After the second node notifies the fourth node that the second node has the address allocation proxy capability, the method may include the following steps.
8001 S: The fourth node sends a seventh packet to the second node. Correspondingly, the second node receives the seventh packet from the fourth node.
13 FIG.A 13 FIG.B 13 FIG.A 13 FIG.B The seventh packet includes a seventh address configuration message, and the seventh address configuration message is used to request to allocate a second communication address for the fourth node. The seventh packet is similar to the first packet in the embodiment shown inand. For details, refer to the specific description of the first packet in the embodiment shown inand. Details are not described herein again.
8002 8002 803 13 FIG.A 13 FIG.B 13 FIG.A 13 FIG.B S: The second node generates an eighth packet based on the seventh packet. Step Sis similar to step S, and the eighth packet is similar to the third packet in the embodiment shown inand. For details, refer to the specific description of the third packet in the embodiment shown inand. Details are not described herein again.
8003 S: The second node sends the eighth packet to the first node. Correspondingly, the first node receives the eighth packet from the second node.
8004 S: The first node allocates the second communication address for the fourth node, and sets a status of the second communication address to an allocated state.
8005 13 FIG.A 13 FIG.B 13 FIG.A 13 FIG.B S: The first node sends a ninth packet to the second node. Correspondingly, the second node receives the ninth packet from the first node. The ninth packet includes the second communication address. The ninth packet is similar to the fourth packet in the embodiment shown inand. For details, refer to the specific description of the fourth packet in the embodiment shown inand. Details are not described herein again.
8006 8006 807 13 FIG.A 13 FIG.B 13 FIG.A 13 FIG.B S: The second node generates a tenth packet based on the ninth packet. Step Sis similar to step S, and the tenth packet is similar to the second packet in the embodiment shown inand. For details, refer to the specific description of the second packet in the embodiment shown inand. Details are not described herein again.
8007 S: The second node sends the tenth packet to the fourth node. Correspondingly, the fourth node receives the tenth packet from the second node.
8008 8008 809 S: The fourth node saves and validates the second communication address. Step Sis similar to step S.
8009 S: The fourth node sends an eleventh packet to the second node. Correspondingly, the second node receives the eleventh packet from the fourth node.
8010 S: The second node generates a twelfth packet based on the eleventh packet.
8011 S: The second node sends the twelfth packet to the first node. Correspondingly, the first node receives the twelfth packet from the second node.
8012 S: The first node sets the status of the second communication address to a leased state.
8008 8012 809 813 13 FIG.A 13 FIG.B 13 FIG.A 13 FIG.B Step Sto step Sare similar to step Sto step Sin the embodiment shown inand. Refer to the specific description of the embodiment shown inand. Details are not described herein again.
8 FIG. 13 FIG.A 13 FIG.B ,, anddescribe how a newly joined second node requests to obtain an SLNA. In a process of obtaining the SLNA, a node that has learned of the SLNA may learn an SLNA of the M node. For example, the second address configuration message of the second packet includes a manager address, and the manager address is the SLNA of the M node. The second node that has learned of the SLNA may request a service address from the first node that has an address allocation capability, and the second node is directly connected or not directly connected to the first node.
14 FIG. 14 FIG. is a schematic flowchart of still another communication method according to this disclosure. The method shown inmay include but is not limited to the following steps.
901 1 1 S: A second node sends a packetto a first node. Correspondingly, the first node receives the packetfrom the second node.
1 1 1 1 11 FIG. The packetincludes an address configuration message. The address configuration messageincludes first request information used to request to allocate a new communication address, for example, a communication address, for the second node. For example, based on, a value of the A field in the first address configuration message is 0.
1 1 1 1 1 11 FIG. 14 FIG. Optionally, the packetfurther includes address type indication information indicating a type of a communication address requested to be allocated, namely, a type of the communication address. For example, based on, the address configuration messagefurther includes an address type. In the embodiment shown in, the type of the communication addressis a service address, and may be an SLNA, an extensible address, an IPv4 address, or an IPv6 address. For example, the address type in the address configuration messageis type 2.
1 1 1 1 The communication addressmay identify some or all applications on the second node, that is, the some or all applications may share one service address. The communication addressmay also identify one application on the second node, that is, the second node requests a service address for the application. Alternatively, the communication addressmay be an anycast address, and is specifically used to identify a first application on the second node and the first application on another node when the communication addressis used to identify an application. That is, for a service address of the anycast address, same applications deployed on different nodes may share one service address.
902 1 1 S: The first node allocates the communication addressfor the second node, and sets a status of the communication addressto an allocated state.
903 2 2 1 S: The first node sends a packetto the second node. Correspondingly, the second node receives the packetfrom the first node. The second packet includes the communication address.
904 1 S: The second node saves and validates the communication address.
905 5 5 5 5 S: The second node sends a packetto the first node. Correspondingly, the first node receives the packetfrom the second node. The packetincludes an address configuration message.
906 1 S: The first node sets the status of the communication addressto a leased state.
902 906 703 707 An implementation process of step Sto step Sis similar to an implementation process of step Sto step S, and details are not described herein again.
1 2 3 1 2 3 It should be noted that if the second node is directly connected to the first node, the packet, the packet, and the packetare GMPs; or if the second node is not directly connected to the first node, the packet, the packet, and the packetare ACP packets.
14 FIG. In the embodiment shown in, when learning of an SLNA of the first node, the second node may directly request a service address from the first node, and does not need to perform relay forwarding through a node having an address allocation proxy capability. This saves time and radio resources.
The second node that has learned of the SLNA may request to renew the first communication address from the first node that has an address allocation capability, and the second node is directly connected or not directly connected to the first node.
15 FIG. 15 FIG. is a schematic flowchart of still another communication method according to this disclosure. The method shown inmay include but is not limited to the following steps.
1001 1 1 S: A second node sends a packetto a first node. Correspondingly, the first node receives the packetfrom the second node.
1 1 1 11 FIG. The packetincludes an address configuration message, and the address configuration messageincludes lease renewal information used to request to renew a first communication address. For example, based on, a value of the A field in the first address configuration message is 1.
1 1 11 FIG. Optionally, the packetfurther includes address type indication information indicating a type of the first communication address requested to be renewed. For example, based on, the address configuration messagefurther includes an address type.
1 1 The second node may send the packetto the first node when a remaining lease period of the first communication address reaches a threshold. For example, when the remaining lease period of the first communication address is less than 40%, the packetis sent to the first node.
1002 S: The first node renews the first communication address for the second node, and updates a lease.
1 After receiving the packet, the first node checks whether the first communication address can be renewed. If the first communication address can be renewed, the first node renews the first communication address for the second node, and updates the lease. The lease includes a lease period.
1003 2 2 S: The first node sends a packetto the second node. Correspondingly, the second node receives the packetfrom the first node. The second packet includes a lease period of the first communication address.
2 2 2 The lease period of the first communication address herein is a lease period obtained after the first node updates the lease. For example, the remaining lease period is prolonged. The packetincludes an address configuration message, and a value of an A field in the address configuration messageis 2.
1004 S: The second node updates the lease of the first communication address.
2 The second node updates the lease of the first communication address based on the packet.
1 2 1 2 It should be noted that if the second node is directly connected to the first node, the packetand the packetare GMPs; or if the second node is not directly connected to the first node, the packetand the packetare ACP packets.
15 FIG. In the embodiment shown in, the second node may request to renew the first communication address from the first node, to prolong use time.
15 FIG. 11 FIG. 2 2 2 1004 2 1 In, an example in which the first node agrees to renew the first communication address for the second node is used. If the first node refuses to renew the first communication address for the second node, the address configuration messagein the packetincludes rejection information indicating to reject renewal of the first communication address. For example, based on, the value of the A field in the address configuration messageis 3. Further, step Sis not performed. Optionally, after receiving the packet, the second node may send the packetto the first node again, to request to renew the communication address.
The foregoing describes in detail the methods provided in embodiments of this disclosure. The following provides an apparatus for implementing any method in embodiments of this disclosure. For example, an apparatus is provided, including units (or means) for implementing steps performed by a node in any one of the foregoing methods.
16 FIG. is a schematic diagram of a structure of a communication apparatus according to an embodiment of this disclosure.
16 FIG. 110 1101 1102 1101 1102 As shown in, the communication apparatusmay include a communication unitand a processing unit. The communication unitand the processing unitmay be software, hardware, or a combination of software and hardware.
1101 1101 1101 1101 The communication unitmay implement a sending function and/or a receiving function, and the communication unitmay also be described as a transceiver unit, an obtaining unit, or a sending unit. The communication unitmay alternatively be a unit that integrates an obtaining unit and a sending unit. The obtaining unit is configured to implement a receiving function, and the sending unit is configured to implement a sending function. Optionally, the communication unitmay be configured to receive information sent by another apparatus, or may be configured to send information to the other apparatus.
110 110 110 110 In a possible design, the communication apparatusmay correspond to the first node in the foregoing method embodiment. For example, the communication apparatusmay be the first node, or may be a chip in the first node. The communication apparatusmay include a unit configured to perform operations performed by the first node in the foregoing method embodiment, and units in the communication apparatusare configured to implement the operations performed by the first node in the foregoing method embodiment. The units are described as follows.
1102 The processing unitgenerates address allocation capability indication information.
1101 The communication unitsends the address allocation capability indication information to a second node. The address allocation capability indication information indicates an address allocation capability of the first node.
Optionally, the address allocation capability indication information indicates that the first node has an address allocation capability, the address allocation capability indication information indicates that the first node does not have an address allocation capability, or the address allocation capability indication information indicates that the first node has an address allocation proxy capability.
Optionally, the address allocation capability indication information is carried in a wireless adjacency protocol packet.
Optionally, the address allocation capability indication information is carried in a link-state routing protocol packet; or the address allocation capability indication information is carried in a non-link-state routing protocol packet.
1101 Optionally, the communication unitis further configured to receive a first packet from the second node, where the first packet includes a first address configuration message, and the first address configuration message is used to allocate or release a first communication address for the second node.
Optionally, the first address configuration message includes at least one of the following: first request information, where the first request information is used to request to allocate the first communication address for the second node; lease renewal information, where the lease renewal information is used to request to renew the first communication address; release information, where the release information indicates to release the first communication address; second request information, where the second request information is used to request to allocate the first communication address for the second node when a current communication address of the second node is unavailable; and confirmation information, where the confirmation information indicates to confirm use of the first communication address or confirm release of the first communication address.
Optionally, the first packet further includes address type indication information, and the address type indication information indicates a type of the first communication address.
Optionally, the type of the first communication address is a first address type or a second address type, and the second address type is an extensible address type, an IPv4 address type, or an IPv6 address type.
Optionally, the first address type is used for routing and forwarding in a communication domain or is used to identify an application, and an address length corresponding to the first address type is 2 bytes; and the second address type is used to identify an application.
Optionally, when the first communication address is used to identify an application, the first communication address is specifically used to identify some or all applications on the second node, or is specifically used to identify one application on the second node; or when the first communication address is an anycast address, and is used to identify an application, the first communication address is specifically used to identify a first application on the second node and the first application on another node.
Optionally, the first packet further includes a message type, and the message type indicates whether the first packet includes the first address configuration message.
Optionally, the address allocation capability indication information indicates that the first node has the address allocation capability. The communication unit is further configured to send a second packet to the second node based on the first packet, where a packet type of the second packet is the same as a packet type of the first packet.
Optionally, the second packet includes the first communication address.
1102 Optionally, the processing unitis further configured to set a status of the first communication address to an allocated state.
Optionally, the second packet includes a second address configuration message, and the second address configuration message includes at least one of the following: consent information, where the allocation information indicates that the first communication address has been allocated or the first communication address has been renewed; and rejection information, where the rejection information indicates to reject allocation of the first communication address or reject renewal of the first communication address.
1101 Optionally, the address allocation capability indication information indicates that the first node has the address allocation proxy capability. The communication unitis further configured to send a third packet to a third node based on the first packet. The third packet includes a third address configuration message, and the third address configuration message is used to allocate or release the first communication address for the second node.
Optionally, the third address configuration message includes at least one of the following: first request information, where the first request information is used to request to allocate the first communication address for the second node; lease renewal information, where the lease renewal information is used to request to renew the first communication address; release information, where the release information indicates to release the first communication address; second request information, where the second request information is used to request to allocate the first communication address for the second node when a current communication address of the second node is unavailable; and confirmation information, where the confirmation information indicates to confirm use of the first communication address or confirm release of the first communication address.
Optionally, the third packet further includes address type indication information, and the address type indication information indicates a type of the first communication address.
Optionally, the third packet further includes a message type, and the message type indicates whether the third packet includes the third address configuration message.
Optionally, a packet type of the third packet is different from a packet type of the first packet.
1101 Optionally, the communication unitis further configured to receive a fourth packet from the third node, where a packet type of the fourth packet is the same as a packet type of the third packet.
Optionally, the fourth packet includes the first communication address.
Optionally, the fourth packet includes a fourth address configuration message, and the fourth address configuration message includes at least one of the following: consent information, where the allocation information indicates that the first communication address has been allocated or the first communication address has been renewed; and rejection information, where the rejection information indicates to reject allocation of the first communication address or reject renewal of the first communication address.
1101 Optionally, the communication unitis further configured to send a second packet to the second node based on the fourth packet, where a packet type of the second packet is the same as a packet type of the first packet.
Optionally, the second packet includes the first communication address.
Optionally, the second packet includes a second address configuration message, and the second address configuration message includes at least one of the following: consent information, where the allocation information indicates that the first communication address has been allocated or the first communication address has been renewed; and rejection information, where the rejection information indicates to reject allocation of the first communication address or reject renewal of the first communication address.
110 110 110 110 In another possible design, the communication apparatusmay correspond to the second node in the foregoing method embodiment. For example, the communication apparatusmay be the second node, or may be a chip in the second node. The communication apparatusmay include a unit configured to perform operations performed by the second node in the foregoing method embodiment, and units in the communication apparatusare configured to implement the operations performed by the second node in the foregoing method embodiment. The units are described as follows.
1101 The communication unitis configured to receive address allocation capability indication information from the first node, where the address allocation capability indication information indicates an address allocation capability of the first node.
Optionally, the address allocation capability indication information indicates that the first node has an address allocation capability, the address allocation capability indication information indicates that the first node does not have an address allocation capability, or the address allocation capability indication information indicates that the first node has an address allocation proxy capability.
Optionally, the address allocation capability indication information is carried in a wireless adjacency protocol packet.
Optionally, the address allocation capability indication information is carried in a link-state routing protocol packet; or the address allocation capability indication information is carried in a non-link-state routing protocol packet.
1101 Optionally, the communication unitis further configured to send a first packet to the first node based on the address allocation capability indication information, where the first packet includes a first address configuration message, and the first address configuration message is used to allocate or release a first communication address for the second node.
Optionally, the first address configuration message includes at least one of the following: first request information, where the first request information is used to request to allocate the first communication address for the second node; lease renewal information, where the lease renewal information is used to request to renew the first communication address; release information, where the release information indicates to release the first communication address; second request information, where the second request information is used to request to allocate the first communication address for the second node when a current communication address of the second node is unavailable; and confirmation information, where the confirmation information indicates to confirm use of the first communication address or confirm release of the first communication address.
Optionally, the first packet further includes address type indication information, and the address type indication information indicates a type of the first communication address.
Optionally, the type of the first communication address is a first address type or a second address type, and the second address type is an extensible address type, an IPv4 address type, or an IPv6 address type.
Optionally, the first address type is used for routing and forwarding in a communication domain or is used to identify an application, and an address length corresponding to the first address type is 2 bytes; and the second address type is used to identify an application.
Optionally, when the first communication address is used to identify an application, the first communication address is specifically used to identify some or all applications on the second node, or is specifically used to identify one application on the second node; or when the first communication address is an anycast address, and is used to identify an application, the first communication address is specifically used to identify a first application on the second node and the first application on another node.
Optionally, the first packet further includes a message type, and the message type indicates whether the first packet includes the first address configuration message.
1101 Optionally, the communication unitis further configured to receive a second packet from the first node, where a packet type of the second packet is the same as a packet type of the first packet.
Optionally, the second packet includes the first communication address.
Optionally, the second packet includes a second address configuration message, and the second address configuration message includes at least one of the following: consent information, where the allocation information indicates that the first communication address has been allocated or the first communication address has been renewed; and rejection information, where the rejection information indicates to reject allocation of the first communication address or reject renewal of the first communication address.
1101 Optionally, when the second node has an address allocation proxy capability, and the address allocation capability indication information indicates that the first node has the address allocation capability, the communication unitis further configured to receive a seventh packet from a fourth node, where the seventh packet includes a seventh address configuration message, and the seventh address configuration message is used to allocate or release a second communication address for the fourth node.
The fourth node is directly connected to the second node, and the second node may notify, through the address allocation capability indication information, the fourth node that the second node has the address allocation proxy capability.
1101 Optionally, the communication unitis further configured to: after receiving the seventh packet, send an eighth packet to the first node based on the seventh packet.
1101 Optionally, the communication unitis further configured to receive a ninth packet from the first node after sending the eighth packet to the first node.
1101 Optionally, the communication unitis further configured to: after receiving the ninth packet from the first node, send a tenth packet to the fourth node based on the ninth packet.
1101 Optionally, the communication unitis further configured to send a query request message to a fifth node, where the query request message includes a third communication address, a type of the third communication address is the second address type, the query request message is used to request to query a fourth communication address corresponding to the third communication address, and a type of the fourth communication address is the first address type. The fifth node may provide a mapping query function.
11 FIG. According to this embodiment of this disclosure, the units in the apparatus shown inmay be separately or all combined into one or more other units, or one or more units in the apparatus may be further split into a plurality of units with more detailed functions. This can implement a same operation without affecting implementation of technical effects of this embodiment of this disclosure. The foregoing units are obtained through division based on logical functions. In actual application, a function of one unit may be implemented by a plurality of units, or functions of a plurality of units are implemented by one unit. In another embodiment of this disclosure, because the node may alternatively include another unit, in actual application, these functions may alternatively be implemented with assistance of the other unit, and may be implemented by a plurality of units in collaboration.
6 FIG. 8 FIG. 13 FIG.A 13 FIG.B 14 FIG. 15 FIG. It should be noted that for implementation of each unit, refer to corresponding descriptions of the method embodiments shown in,,,,, and.
110 16 FIG. In the communication apparatusdescribed in, the first node notifies the second node of the address allocation capability of the first node through the address allocation capability indication information, so that the second node determines whether to initiate an address request.
17 FIG. is a schematic diagram of a structure of a communication apparatus according to an embodiment of this disclosure.
120 17 FIG. 17 FIG. 17 FIG. It should be understood that a communication apparatusshown inis merely an example. The communication apparatus in this embodiment of this disclosure may further include another component, or include a component with a function similar to that of each component in, or does not necessarily need to include all components in.
120 1201 1202 The communication apparatusincludes a communication interfaceand at least one processor.
120 1201 1202 120 The communication apparatusmay correspond to a first node or a second node. The communication interfaceis configured to receive and send a message, information, or a packet, and the at least one processorexecutes a program instruction, so that the communication apparatusimplements a corresponding procedure of the method performed by a corresponding node in the foregoing method embodiment.
120 120 120 120 In a possible design, the communication apparatusmay correspond to the first node in the foregoing method embodiment. For example, the communication apparatusmay be the first node, or may be a chip in the first node. The communication apparatusmay include a component configured to perform an operation performed by the first node in the foregoing method embodiment. In addition, each component in the communication apparatusis separately configured to implement the operation performed by the first node in the foregoing method embodiment. For details, refer to corresponding descriptions of the first node in the foregoing method embodiment.
120 120 120 120 In another possible design, the communication apparatusmay correspond to the second node in the foregoing method embodiment. For example, the communication apparatusmay be the second node, or may be a chip in the second node. The communication apparatusmay include a component configured to perform an operation performed by the second node in the foregoing method embodiment. In addition, each component in the communication apparatusis separately configured to implement the operation performed by the second node in the foregoing method embodiment. For details, refer to corresponding descriptions of the second node in the foregoing method embodiment.
18 FIG. For a case in which the communication apparatus may be a chip or a chip system, refer to a schematic diagram of a structure of a chip shown in.
18 FIG. 130 1301 1302 1301 1302 1301 1302 As shown in, a chipincludes a processorand an interface. There may be one or more processors, and there may be a plurality of interfaces. It should be noted that functions corresponding to each of the processorand the interfacemay be implemented by using a hardware design, or may be implemented by using a software design, or may be implemented by using a combination of software and hardware. This is not limited herein.
130 1303 1303 Optionally, the chipmay further include a memory, and the memoryis configured to store necessary program instructions and data.
1301 1303 1302 1301 1302 1301 In this disclosure, the processormay be configured to invoke, from the memory, a program for implementing the communication method provided in one or more embodiments of this disclosure on the first node or the second node, and execute instructions included in the program. The interfacemay be configured to output an execution result of the processor. In this disclosure, the interfacemay be further configured to output each message, information, or packet of the processor.
6 FIG. 8 FIG. 13 FIG.A 13 FIG.B 14 FIG. 15 FIG. For the communication method provided in one or more embodiments of this disclosure, refer to embodiments shown in,,,,, and. Details are not described herein again.
The processor in this embodiment may be a central processing unit (CPU), or the processor may be another general-purpose processor, a digital signal processor (DSP), an application specific-integrated circuit (ASIC), an FPGA, another programmable logic device, a discrete gate or a transistor logic device, a discrete hardware component, or the like. The general-purpose processor may be a microprocessor, or may be any other processor or the like.
The memory in this embodiment is configured to provide storage space, and the storage space may store data such as an operating system and a computer program. The memory includes but is not limited to a random access memory (RAM), a read-only memory (ROM), an erasable programmable ROM (EPROM), or a compact disc ROM (CD-ROM).
6 FIG. 8 FIG. 13 FIG.A 13 FIG.B 14 FIG. 15 FIG. According to the method provided in embodiments of this disclosure, an embodiment further provides a computer-readable storage medium. The computer-readable storage medium stores a computer program. When the computer program is run on one or more processors, the methods shown in,,,,, andmay be implemented.
6 FIG. 8 FIG. 13 FIG.A 13 FIG.B 14 FIG. 15 FIG. According to the method provided in embodiments of this disclosure, an embodiment further provides a computer program product. The computer program product includes a computer program. When the computer program is run on a processor, the methods shown in,,,,, andmay be implemented.
110 120 130 An embodiment of this disclosure provides a terminal device. The terminal device includes at least one of the communication apparatus, the communication apparatus, or the chip.
110 120 130 An embodiment of this disclosure further provides a system. The system includes at least one terminal device, and/or at least one of the communication apparatus, the communication apparatus, or the chip.
An embodiment of this disclosure further provides a processing apparatus, including a processor and an interface. The processor is configured to perform the method in any one of the foregoing method embodiments.
It should be understood that the processing apparatus may be a chip. For example, the processing apparatus may be a general-purpose processor, a DSP, an application-specific integrated circuit (ASIC), a an FPGA or another programmable logic device, a discrete gate or transistor logic device, a discrete hardware component, may be a system on chip (SoC), may be a CPU, a network processor (NP), a DSP, a micro controller unit (MCU), or a programmable logic device (PLD) or another integrated chip. The processor may implement or perform the methods, the steps, and logical block diagrams that are disclosed in embodiments of this disclosure. The general-purpose processor may be a microprocessor, or may be any other conventional processor or the like. The steps of the methods disclosed with reference to embodiments of this disclosure may be directly executed and completed by a hardware decoding processor, or may be executed and completed by using a combination of hardware and software modules in a decoding processor. A software module may be located in a mature storage medium in the art, for example, a RAM, a flash memory, a ROM, a programmable read-only memory (PROM), an electrically erasable programmable memory, or a register. The storage medium is located in the memory, and the processor reads information in the memory and completes the steps in the foregoing methods in combination with hardware of the processor.
It may be understood that the memory in embodiments of this disclosure may be a volatile memory or a non-volatile memory, or may include a volatile memory and a non-volatile memory. The non-volatile memory may be a read-only memory (read-only memory, ROM), a PROM, an EPROM, an electrically EPROM (EEPROM), or a flash memory. The volatile memory may be a RAM, and is used as an external cache. Through an example but not a limitative description, many forms of RAMs may be used, for example, a static RAM (SRAM), a dynamic RAM (DRAM), a synchronous DRAM (SDRAM), a double data rate SDRAM (DDR SDRAM), an enhanced SDRAM (ESDRAM), a synchlink DRAM (SLDRAM), and a direct rambus RAM (DR RAM). It should be noted that the memories of the systems and methods described in the text are intended to include, but are not limited to these and any other suitable types of memories.
All or some of the foregoing embodiments may be implemented by using software, hardware, firmware, or any combination thereof. When software is used for implementation, the implementation may be totally or partially implemented in a form of a computer program product. The computer program product includes one or more computer instructions. When the computer instructions are loaded and executed on a computer, all or some of the procedures or functions according to embodiments of this disclosure are generated. The computer may be a general-purpose computer, a dedicated computer, a computer network, or another programmable apparatus. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. The computer-readable storage medium may be any usable medium accessible by a computer, or a data storage device, like a server or a data center integrating one or more usable media. The usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, or a magnetic tape), an optical medium (for example, a high-density digital video disc), a semiconductor medium (for example, a solid-state disk), or the like.
Units in the foregoing apparatus embodiments completely correspond to the electronic device in the method embodiments, and corresponding modules or units perform corresponding steps. For example, a communication unit (transceiver) performs receiving or sending steps in the method embodiments, and other steps except the sending or receiving steps may be performed by a processing unit (processor). For a specific function of the unit, refer to the corresponding method embodiment. There may be one or more processors.
It may be understood that in embodiments of this disclosure, the electronic device may perform some or all steps in embodiments of this disclosure. These steps or operations are merely examples. In embodiments of this disclosure, other operations or variations of various operations may be further performed. In addition, the steps may be performed in a sequence different from a sequence presented in embodiments of this disclosure, and not all the operations in embodiments of this disclosure may be performed.
A person of ordinary skill in the art may be aware that, in combination with the examples described in embodiments disclosed in this specification, units and algorithm steps may be implemented by electronic hardware or a combination of computer software and electronic hardware. Whether the functions are performed by hardware or software depends on particular applications and design constraint conditions of the technical solutions. A person skilled in the art may use different methods to implement the described functions for each particular application, but it should not be considered that the implementation goes beyond the scope of this disclosure.
It may be clearly understood by a person skilled in the art that, for the purpose of convenient and brief description, for a detailed working process of the foregoing system, apparatus, and unit, refer to a corresponding process in the foregoing method embodiments. Details are not described herein again.
In several embodiments provided in this disclosure, it should be understood that the disclosed system, apparatus, and method may be implemented in other manners. For example, the described apparatus embodiment is merely an example. For example, division into the units is merely logical function division and may be other division in actual implementation. For example, a plurality of units or components may be combined or integrated into another system, or some features may be ignored or not performed. In addition, the displayed or discussed mutual couplings or direct couplings or communication connections may be implemented by using some interfaces. The indirect couplings or communication connections between the apparatuses or units may be implemented in electronic, mechanical, or other forms.
The foregoing descriptions are merely specific implementations of this disclosure, but are not intended to limit the protection scope of this disclosure. Any variation or replacement readily figured out by a person skilled in the art within the technical scope disclosed in this disclosure shall fall within the protection scope of this disclosure.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
January 29, 2025
April 30, 2026
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.