A time slot allocation method and apparatus for a wireless ad hoc network
By setting fixed broadcast and control time slots in the wireless ad hoc network system and dynamically adjusting the allocation of dynamic time slots through network time slot information packets, the problems of uneven node bandwidth and wasted time slots are solved, thereby improving network transmission efficiency and bandwidth utilization.
Patent Information
- Application Number
- CN202211139422.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-19
- Publication Date
- 2026-01-20
- Estimated Expiration
- 2042-09-19
AI Technical Summary
In existing wireless ad hoc network systems, issues such as uneven node bandwidth demand, wasted time slots, resource waste caused by fixed time slot allocation, and node number sensitivity have not been effectively resolved.
Each node is assigned a fixed broadcast time slot and a control time slot, and the allocation of dynamic time slots is dynamically adjusted through network time slot information packets. Nodes modify their network time slot information packets according to the information packets of neighboring nodes, and allocate dynamic time slots as needed to meet data transmission requirements.
It improves the efficiency of dynamic time slot utilization and network transmission bandwidth, reduces time slot waste, adapts to changes in the number of nodes, and reduces sensitivity to the number of nodes.
Smart Images

Figure CN115568022B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of communication, and in particular to a time slot allocation method and device for wireless ad hoc network. BACKGROUND
[0002] In today's wireless ad hoc network system, wireless nodes are increasing, system functions are more and more complex, and network size and hierarchy are larger and larger. In addition, the running environment of the ad hoc network is often more complex, especially in the wireless communication application scene, the signal environment is variable and easy to be interfered, and the communication data is easy to produce errors.
[0003] In the existing wireless ad hoc network system based on TDMA, the general wireless resource allocation method is to equally divide the time slots to each node, and each node transmits data in its own transmission time slot, and other nodes receive data in the time slot.
[0004] The inventor found that the existing technical solution has at least the following problems in the process of implementing the present application:
[0005] 1) In many scenarios, the bandwidth required by the nodes is not equal. Some nodes need to transmit high-bandwidth data, such as audio and video data, etc.; and some nodes only need to transmit low-bandwidth data, such as control data, sensor data, etc. The equal division of time slots causes the waste of time slots.
[0006] 2) In the case that two nodes are far apart, the communication of the two nodes does not interfere with each other. But the fixed time slot division method makes the two nodes not transmit data in the same time slot, causing the waste of time slots.
[0007] 3) In some scenarios, the demand of nodes for bandwidth is not continuous, but periodic. And the fixed time slot allocation method causes continuous occupation of time slots.
[0008] 4) In the case of node network disconnection or power failure, the fixed time slot occupied by the node cannot be released to other nodes in the network, which causes the phenomenon of empty time slot occupation.
[0009] 5) The fixed time slot is sensitive to the number of nodes. In the wireless ad hoc network, a large number of nodes will result in low bandwidth allocated to each node, which cannot meet the demand of the node for bandwidth. SUMMARY
[0010] Therefore, the embodiment of the present application provides a time slot allocation method and device for a wireless ad hoc network, and the technical scheme comprises: setting a broadcast time slot and a control time slot with fixed positions for each node in a wireless superframe; each node sends its broadcast information in its broadcast time slot and sends its network time slot information packet in its control time slot; each node modifies its network time slot information packet according to the network time slot information packet of a one-hop neighboring node received by the node; and each node adjusts the occupied dynamic time slots according to its network time slot information packet and the data amount to be transmitted, and modifies its network time slot information packet according to the adjustment result. The technical scheme of the embodiment of the present application enables each node to occupy dynamic time slots only when data is transmitted, and meanwhile, one node can multiplex the same dynamic time slots with nodes other than its neighboring nodes, thereby improving the use efficiency of dynamic time slots and the network transmission bandwidth, and being not sensitive to the number of nodes and having a wide application range.
[0011] In a first aspect, the embodiment of the present application provides a time slot allocation method for a wireless ad hoc network, which comprises: setting a broadcast time slot and a plurality of control time slots with fixed positions for each node in each wireless superframe, and the other time slots of the wireless superframe are dynamic time slots; a first node sends its broadcast information in its broadcast time slot and sends its network time slot information packet in its control time slot, and the network time slot information packet of the first node comprises information about the dynamic time slots occupied by the first node and its neighboring nodes, and the first node is any node of the wireless ad hoc network; the first node modifies its network time slot information packet according to the network time slot information packet of a one-hop neighboring node received by the first node, and when the first node and one of its neighboring nodes simultaneously occupy one dynamic time slot and the priority of the first node is lower than that of the neighboring node, the first node releases the dynamic time slot, and the one-hop neighboring node of the first node is the node sending the broadcast message received by the first node; and the first node adjusts the occupied dynamic time slots according to its network time slot information packet and the data amount to be transmitted, and modifies its network time slot information packet according to the adjustment result.
[0012] According to the above, the network time slot information packet of one node comprises information about the dynamic time slots occupied by the node and its neighboring nodes, so that each node can multiplex the same dynamic time slots with nodes other than its neighboring nodes, and each node only occupies dynamic time slots when data is transmitted, and the technical scheme of the present application improves the use efficiency of dynamic time slots and the network transmission bandwidth. Meanwhile, the positions of the broadcast time slot and the control time slot of each node are fixed, and the number of nodes is not sensitive, and the present application has a wide application range.
[0013] In a possible implementation of the first aspect, each wireless superframe comprises N equal-length complex frames, and N is the number of nodes of the wireless ad hoc network; and the broadcast time slot and the control time slot of node i are located in the i-th complex frame of each wireless superframe.
[0014] According to the above, the broadcast time slot and the control time slot of each node are located at fixed positions of the corresponding complex frame, and the number of the time slots is small, so that the superframe structure of the present application is not sensitive to the number of nodes and is suitable for various node number scenarios.
[0015] In a possible implementation of the first aspect, the first node adjusts the occupied dynamic time slots according to its network time slot information package and the amount of data to be transmitted, and modifies its network time slot information package according to the adjustment result, comprising: determining the amount of data to be transmitted in the next super frame from the application layer when the current super frame ends, adjusting the occupied dynamic time slots according to the amount of data required time slots and the network time slot information package of the first node, and modifying its network time slot information package according to the adjustment result.
[0016] From the above, each node allocates dynamic time slots in a super frame as needed in a time unit of super frame, which improves the utilization rate of dynamic time slots.
[0017] In a possible implementation of the first aspect, further comprising: when the first node does not receive the broadcast message of one of its one-hop neighbor nodes in two consecutive super frames, the dynamic time slots occupied by the one-hop neighbor node are recovered, and the network time slot information package of the first node is modified accordingly.
[0018] From the above, a node is evaluated in a time unit of 2 super frames for power failure or network disconnection, which not only recovers the time slots occupied by the node, but also reduces the influence of wireless interference or fading.
[0019] In a possible implementation of the first aspect, the neighbor nodes of the first node include its one-hop neighbor nodes and its two-hop neighbor nodes, and the two-hop neighbor nodes of the first node are the nodes remaining after the first node and each one-hop neighbor node of the first node are removed from the one-hop neighbor nodes of each one-hop neighbor node of the first node.
[0020] From the above, the neighbor nodes of a node are controlled within 2 hops, which controls interference and improves dynamic time slot multiplexing rate.
[0021] In a possible implementation of the first aspect, the network time slot information package of the first node includes the time slot state and the occupied node of each dynamic time slot; when a dynamic time slot is not occupied by the first node and the neighbor nodes of the first node, the time slot state of the dynamic time slot in the network time slot information package of the first node is idle, and the occupied node is 0; when a dynamic time slot is occupied by the first node or the neighbor nodes of the first node, the occupied node of the dynamic time slot in the network time slot information package of the first node is the node identifier occupying the dynamic time slot, and the time slot state indicates the relationship between the node occupying the dynamic time slot and the first node.
[0022] From the above, the network time slot information package of a node includes the occupied node and the time slot state of the dynamic time slots occupied by itself and its neighbor nodes, which facilitates each neighbor node to modify its own network time slot information package, thereby avoiding time slot conflicts and performing time slot multiplexing.
[0023] In a possible implementation of the first aspect, the first node modifies its network time slot information packet according to the network time slot information packet of a one-hop neighboring node received by the first node, and at least includes: when it is determined according to the network time slot information packet of each node received by the first node and the network time slot information packet of the first node that a dynamic time slot is occupied by at least two nodes, determining the occupied node and the time slot state of the dynamic time slot in the network time slot information packet of the first node according to the priority of each node in the at least two nodes.
[0024] According to the above, when there is a time slot conflict, the occupied node is determined according to the priority of the node, and the data transmission between nodes conforms to the service priority requirement.
[0025] In the second aspect, the embodiment of the present application provides a time slot allocation device for a wireless ad hoc network, which includes: a superframe configuration module, configured to set a fixed-position broadcast time slot and a plurality of fixed-position control time slots for each node in each wireless superframe, and the other time slots in the wireless superframe are dynamic time slots; an information broadcast module, configured to send broadcast information of the first node in the broadcast time slot of the first node, and send a network time slot information packet of the first node in the control time slot of the first node, the network time slot information packet of the first node including information that each dynamic time slot is occupied by the first node and its neighboring nodes, and the first node is any node in the wireless ad hoc network; a time slot information modification module, configured to modify the network time slot information packet of the first node according to the network time slot information packet of a one-hop neighboring node received by the first node, and the one-hop neighboring node of the first node is a sending node of the broadcast message received by the first node; and a time slot allocation module, configured to adjust the occupied dynamic time slot according to the network time slot information packet of the first node and the data amount to be transmitted, and modify the network time slot information packet of the first node according to the adjustment result.
[0026] According to the above, the network time slot information packet of a node includes information that each dynamic time slot is occupied by the node and its neighboring nodes, so that each node can multiplex the same dynamic time slot with nodes other than its neighboring nodes, and each node only occupies the dynamic time slot during data transmission, and the technical scheme of the present application improves the use efficiency of the dynamic time slot and the network transmission bandwidth. Meanwhile, the position of the broadcast time slot and the control time slot of the node is fixed, and the node number is not sensitive, and the use is wide.
[0027] In a possible implementation of the first aspect, each wireless superframe includes N equal-length complex frames, and N is the number of nodes in the wireless ad hoc network; and the broadcast time slot and the control time slot of the node i are located in the i th complex frame in each wireless superframe.
[0028] According to the above, the broadcast time slot and the control time slot of each node are located at a fixed position in the corresponding complex frame, and the number is small, so that the superframe structure of the present application is not sensitive to the number of nodes, and is suitable for various node number scenes.
[0029] In a possible implementation of the second aspect, the time slot allocation module is specifically configured to: determine the amount of data to be transmitted in the next superframe from the application layer when the current superframe of the first node ends, adjust the occupied dynamic time slots according to the amount of data required time slots and the network time slot information package of the first node, and modify the network time slot information package of the first node according to the adjustment result.
[0030] From the above, each node allocates dynamic time slots in a superframe as needed in a superframe unit, which improves the utilization rate of dynamic time slots.
[0031] In a possible implementation of the second aspect, the time slot allocation module is specifically configured to: determine the amount of data to be transmitted in the next superframe from the application layer when the current superframe of the first node ends, adjust the occupied dynamic time slots according to the amount of data required time slots and the network time slot information package of the first node, and modify the network time slot information package of the first node according to the adjustment result.
[0032] From the above, a node is evaluated in a 2-superframe time unit, which not only recovers the time slots occupied by the node, but also reduces the influence of wireless interference or fading.
[0033] In a possible implementation of the second aspect, the neighbor nodes of the first node include the one-hop neighbor nodes of the first node and the two-hop neighbor nodes of the first node, and the two-hop neighbor nodes of the first node are nodes remaining after the first node and the one-hop neighbor nodes of the first node are removed from the one-hop neighbor nodes of the first node.
[0034] From the above, the neighbor nodes of a node are controlled within 2 hops, which controls interference and improves dynamic time slot multiplexing rate.
[0035] In a possible implementation of the second aspect, the network time slot information package of the first node includes the time slot state and the occupied node of each dynamic time slot; when a dynamic time slot is not occupied by the first node and the neighbor nodes of the first node, the time slot state of the dynamic time slot in the network time slot information package of the first node is idle, and the occupied node is 0; when a dynamic time slot is occupied by the first node or the neighbor nodes of the first node, the occupied node of the dynamic time slot in the network time slot information package of the first node is the node identifier occupying the dynamic time slot, and the time slot state indicates the relationship between the node occupying the dynamic time slot and the first node.
[0036] From the above, the network time slot information package of a node includes the occupied node and the time slot state of the dynamic time slot occupied by itself and the neighbor nodes, which facilitates the modification of the network time slot information package of each neighbor node, thereby avoiding time slot conflicts and performing time slot multiplexing.
[0037] In a possible implementation of the second aspect, the time slot information modification module is specifically configured to determine the occupied node and the time slot state of the dynamic time slot in the network time slot information packet of the first node according to the priority of each node in the at least two nodes when it is determined that the dynamic time slot is occupied by at least two nodes according to the network time slot information packet of each node received by the first node and the network time slot information packet of the first node.
[0038] From the above, when there is a time slot conflict, the occupied node is determined according to the priority of the node, and the data transmission between nodes conforms to the service priority requirement.
[0039] In the third aspect, an embodiment of the present application provides a node of a wireless ad hoc network, including the node having the device in any of the embodiments of the second aspect.
[0040] In the fourth aspect, an embodiment of the present application provides a wireless ad hoc network, including at least two nodes of the third aspect.
[0041] In the fifth aspect, an embodiment of the present application provides a computing device, including,
[0042] a bus;
[0043] a communication interface connected with the bus;
[0044] at least one processor connected with the bus; and
[0045] at least one memory connected with the bus and storing program instructions, the program instructions being executed by the at least one processor to make the at least one processor execute any of the embodiments of the first aspect or any of the embodiments of the second aspect.
[0046] In the sixth aspect, an embodiment of the present application provides a computer readable storage medium, which stores program instructions, the program instructions being executed by a computer to make the computer execute any of the embodiments of the first aspect or any of the embodiments of the second aspect. BRIEF DESCRIPTION OF DRAWINGS
[0047] Figure 1 a flowchart of a time slot allocation method for a wireless ad hoc network according to an embodiment of the present application;
[0048] Figure 2 a flowchart of a time slot allocation method for a wireless ad hoc network according to another embodiment of the present application;
[0049] Figure 3 a schematic diagram of a neighbor node relationship among three nodes;
[0050] Figure 4 a schematic diagram of a one-hop neighbor node relationship among four nodes;
[0051] Figure 5 Figure 1 is a structure diagram of a wireless ad hoc network time slot allocation device according to an embodiment of the present application;
[0052] Figure 6 Figure 2 is a structure diagram of a wireless ad hoc network time slot allocation device according to another embodiment of the present application;
[0053] Figure 7 Figure 3 is a structure diagram of a computing device according to an embodiment of the present application. DETAILED DESCRIPTION
[0054] In the following description, "some embodiments" are described, which describe a subset of all possible embodiments, but it can be understood that "some embodiments" can be the same subset or different subsets of all possible embodiments, and can be combined with each other without conflict.
[0055] In the following description, the terms "first\second\third, etc." or module A, module B, module C, etc. are used only to distinguish similar objects or to distinguish different embodiments, and do not represent a specific order of the objects. It can be understood that the specific order or sequence can be interchanged as permitted, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein.
[0056] In the following description, the labels indicating steps such as S110, S120, etc. do not necessarily mean that the steps are executed in this order, and the order of the steps can be interchanged or executed simultaneously as permitted.
[0057] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which the present application belongs. The terms used herein are only for the purpose of describing the embodiments of the present application and are not intended to limit the present application.
[0058] The embodiments of the present application provide a wireless ad hoc network time slot allocation method and allocation device, which include: each node sends its broadcast information in its broadcast time slot and sends its network time slot information packet in its control time slot; each node modifies its network time slot information packet according to the network time slot information packet of the one-hop neighbor node it receives; each node adjusts the occupied dynamic time slot according to its network time slot information packet and the amount of data to be transmitted, and modifies its network time slot information packet according to the adjustment result. The technical scheme of the embodiments of the present application has the following advantages:
[0059] 1) In the initial stage, the nodes only occupy a small number of fixed time slots for exchanging network time slot information packets. When a node needs to send data, it dynamically allocates a dynamic time slot for data transmission. This on-demand allocation of dynamic time slots can maximize the utilization of dynamic time slots and improve the network data transmission bandwidth.
[0060] 2) The dynamic time slots are shared between a node and nodes other than its neighboring nodes. For nodes more than two hops apart, data transmission in the same time slot does not affect data reception by nodes in the surrounding area. Therefore, the dynamic time slots can be fully reused to improve network transmission bandwidth.
[0061] 3) The nodes do not continuously occupy dynamic time slots for a long time, but dynamically apply for dynamic time slots. Each node only occupies a dynamic time slot when it needs to send data, and releases the occupied time slot after data transmission. At this time, other nodes can reuse the dynamic time slot just used, so as to realize time-sharing reuse of dynamic time slots and improve network transmission efficiency.
[0062] 4) The number of nodes in the network is not sensitive. The nodes in the network only occupy dynamic time slots when they need data transmission, and do not occupy network bandwidth resources at ordinary times. Therefore, the number of nodes in the network is not sensitive to the scheme, and is only related to the network architecture and the total data bandwidth transmitted by the nodes in the network.
[0063] The embodiments of the application also correspondingly use the wireless ad hoc network node, the wireless ad hoc network, the computing device and the storage medium of the above technical solutions.
[0064] The embodiments of the application will be described below with reference to the accompanying drawings. First, a wireless ad hoc network time slot allocation method embodiment one will be described. Figure 1 A wireless ad hoc network time slot allocation method embodiment one is introduced.
[0065] In the wireless ad hoc network time slot allocation method embodiment one, fixed broadcast time slots and control time slots are set for each node in a wireless superframe; each node sends its broadcast information in its broadcast time slot and sends its network time slot information packet in its control time slot; each node modifies its network time slot information packet according to the network time slot information packet of a one-hop neighboring node received by it; each node adjusts the occupied dynamic time slots according to its network time slot information packet and the amount of data to be transmitted, and modifies its network time slot information packet according to the adjustment result. The technical scheme of the embodiment of the application only occupies dynamic time slots when data transmission is needed, and a node can reuse the same dynamic time slot with nodes other than its neighboring nodes, thereby improving the use efficiency of dynamic time slots and the network transmission bandwidth, and being not sensitive to the number of nodes, and having a wide application.
[0066] Figure 1 A flowchart of a wireless ad hoc network time slot allocation method embodiment one is shown, which includes steps S110 to S140.
[0067] For the convenience of description, the first node is taken as an example for illustration, and the first node can be any node of the wireless ad hoc network.
[0068] S110: setting a fixed-position broadcast time slot and a plurality of fixed-position control time slots for each node in each wireless superframe, and other time slots of the wireless superframe being dynamic time slots.
[0069] In the above, the TDMA combines the time slots into a wireless superframe periodically distributed in time sequence, and each wireless superframe includes a plurality of time slots, the length of which is related to the number of nodes of the wireless ad hoc network, and the more the number of nodes, the longer the wireless frame.
[0070] In some embodiments, the broadcast time slots and the control time slots of the nodes are concentrated in the head or middle part of the wireless superframe; in other embodiments, the broadcast time slots and the control time slots of the nodes are uniformly distributed in the wireless superframe.
[0071] From the above, the fixed-position broadcast time slots and the control time slots are set so that the broadcast time slots and the control time slots of the nodes do not interfere with each other, and the information of the nodes in the broadcast time slots and the control time slots is accurately received by the corresponding neighboring nodes.
[0072] S120: the first node sends its broadcast information in its broadcast time slot and sends its network time slot information package in its control time slot, and the network time slot information package of the first node includes information that each dynamic time slot is occupied by the first node and its neighboring nodes.
[0073] In the above, the broadcast information is used to identify each node, and a node takes the sending node of the broadcast information it receives as a one-hop neighboring node of the node.
[0074] In some embodiments, the neighboring nodes of a node include one-hop neighboring nodes and two-hop neighboring nodes, and the two-hop neighboring nodes of a node are nodes remaining after the one-hop neighboring nodes of the node and the node itself are removed from the one-hop neighboring nodes of the node. In other embodiments, the neighboring nodes of a node include one-hop neighboring nodes, two-hop neighboring nodes and other neighboring nodes.
[0075] From the above, the network time slot information package of the first node includes information that each dynamic time slot is occupied by the first node and its neighboring nodes, so that the dynamic time slots outside the range of the first node and its neighboring nodes continue to be multiplexed, the utilization rate of the dynamic time slots is improved, and at the same time, the conflict of the time slots within the range of the first node and its neighboring nodes is avoided, and the interference is reduced.
[0076] S130: The first node modifies its network time slot information packet according to the network time slot information packet of its one-hop neighbor node, and releases a dynamic time slot when the first node and its one neighbor node simultaneously occupy the dynamic time slot and the priority of the first node is lower than that of the neighbor node.
[0077] In some embodiments, when the first node and its one neighbor node simultaneously occupy a dynamic time slot and the priority of the first node is lower than that of the neighbor node according to the network time slot information packet of each node received by the first node and the network time slot information packet of the first node, the first node releases the dynamic time slot.
[0078] In some embodiments, when the first node and its one neighbor node simultaneously occupy a dynamic time slot and the priority of the first node is lower than that of the neighbor node according to the network time slot information packet of each node received by the first node and the network time slot information packet of the first node, the first node releases the dynamic time slot.
[0079] In some embodiments, when a dynamic time slot is occupied by at least two nodes according to the network time slot information packet of each node received by the first node and the network time slot information packet of the first node, the occupation information of the dynamic time slot in the network time slot information packet of the first node is determined according to the priority of each node in the at least two nodes.
[0080] Accordingly, the first node modifies its network time slot information packet according to the network time slot information packet of its one-hop neighbor node, thereby avoiding interference when the first node occupies a dynamic time slot.
[0081] S140: The first node adjusts the occupied dynamic time slot according to its network time slot information packet and the amount of data to be transmitted, and modifies its network time slot information packet according to the adjustment result.
[0082] In some embodiments, the step includes multiple scenarios:
[0083] 1) A scenario in which the amount of data to be transmitted is from 0 to a certain amount of data, i.e., a start transmission scenario, in which the first node is started to be allocated a dynamic time slot according to the amount of data to be transmitted;
[0084] 2) A scenario in which the amount of data to be transmitted is from one amount of data to another amount of data, i.e., an intermediate transmission scenario, in which the occupied dynamic time slot of the first node is adjusted according to the amount of data to be transmitted;
[0085] 3) A scenario in which the amount of data to be transmitted is from a certain amount of data to 0, i.e., an end transmission scenario, in which the first node starts to occupy a dynamic time slot is released.
[0086] From the above, in the initial stage, the nodes only occupy a small number of fixed time slots for exchanging network time slot information packets. When the nodes need to send data, dynamic time slots are dynamically allocated for data transmission. This on-demand allocation of dynamic time slots can maximize the utilization of dynamic time slots and improve the data transmission bandwidth of the whole network. Meanwhile, the nodes do not continuously occupy dynamic time slots for a long time, but dynamically apply for dynamic time slots. Each node only occupies dynamic time slots when it needs to send data, and releases the occupied time slots after the data transmission is completed. At this time, other nodes can reuse the dynamic time slots just used by the nodes, so as to realize time-sharing multiplexing of dynamic time slots and improve the transmission efficiency of the network. The number of nodes in the network is not sensitive. The nodes in the network do not occupy network bandwidth resources at ordinary times. Therefore, the number of nodes in the network is not sensitive to the number of nodes in the network, and is only related to the network architecture and the total data bandwidth transmitted by the nodes in the network.
[0087] It should be emphasized that steps S120, S130 and S140 are performed in parallel, and are operated according to the triggering conditions of each step. After any step is operated, the operation is performed again according to the triggering conditions of each step.
[0088] In summary, in the first embodiment of the time slot allocation method of the wireless ad hoc network, the broadcast time slots and the control time slots of each node are set in the wireless superframe; each node sends its broadcast information in its broadcast time slot and sends its network time slot information packet in its control time slot; each node modifies its network time slot information packet according to the network time slot information packet of the one-hop neighbor node received by the node; and each node adjusts the occupied dynamic time slots according to its network time slot information packet and the data amount to be transmitted, and modifies its network time slot information packet according to the adjustment result. The technical scheme of the embodiment of the application realizes that each node only occupies dynamic time slots when data transmission is needed, and one node can reuse the same dynamic time slots with nodes other than its neighbor nodes, so as to improve the use efficiency of dynamic time slots and the network transmission bandwidth, and the number of nodes is not sensitive, and the use is wide.
[0089] The following will be described in detail Figures 2 to 4 The second embodiment of the time slot allocation method of the wireless ad hoc network is introduced.
[0090] The second embodiment of the time slot allocation method of the wireless ad hoc network inherits the method of the first embodiment of the time slot allocation method of the wireless ad hoc network, has all the advantages thereof, and enhances the following technical scheme: each wireless superframe includes a complex frame corresponding to the maximum number of nodes, the broadcast time slot and the control time slot of each node are at the fixed position of the complex frame of the node, and the time slots required by each node are allocated in the time unit of the complex frame; when a node does not receive the broadcast message of one one-hop neighbor node in two consecutive superframes, the dynamic time slots occupied by the one-hop neighbor node are recovered.
[0091] Figure 2An embodiment of a time slot allocation method of a wireless ad hoc network is shown in the flowchart of Figure 2, which comprises steps S210 to S250.
[0092] For the convenience of description, the first node is taken as an example for illustration, and the first node can be any node of the wireless ad hoc network.
[0093] S210: Each wireless superframe comprises a superframe corresponding to the maximum number of nodes, and each node is provided with a fixed-position broadcast time slot and a plurality of fixed-position control time slots in the corresponding superframe, and other time slots of the wireless superframe are dynamically allocated dynamic time slots for each node.
[0094] Table 1 shows the structure of a wireless superframe, the length of which is N*M, comprising N superframes, N being the number of nodes of the wireless ad hoc network, each superframe comprising M time slots, each time slot having a length of t, and the time of the wireless superframe being N*M*t. M is greater than 1+K, K being the number of control time slots of each node, and by way of example, M is greater than or equal to 2 times N.
[0095] Table 1 wireless superframe structure
[0096]
[0097]
[0098] In Table 1, the broadcast time slot of node i is in the first position of the i-th superframe of each wireless superframe, denoted as Si,1(B1), and the control time slots of node i are in the 2nd to 4th positions of the i-th superframe (i.e. K=3), denoted as Si,2(Fi), Si,3(Fi) and Si,4(Fi), wherein i=1, 2, …, N.
[0099] From the above, through the wireless superframe structure of Table 1, each node can determine the time slots for obtaining the broadcast information and network time slot information packets of other nodes.
[0100] S220: The first node transmits its broadcast information in its broadcast time slot and transmits its network time slot information packet in its control time slot, and the network time slot information packet of the first node comprises information that each dynamic time slot is occupied by the first node and its one-hop and two-hop neighboring nodes.
[0101] In which the broadcast information is used to identify each node, and the first node takes the transmitting node of the broadcast information it receives as a one-hop neighboring node, and the two-hop neighboring nodes of the first node are the nodes remaining after the first node and each one-hop neighboring node of the first node are removed from the one-hop neighboring nodes of each one-hop neighboring node of the first node.
[0102] Each table entry of the network time slot information package of the first node corresponds to a dynamic time slot, and includes an identifier of the dynamic time slot, an occupying node of the dynamic time slot, and a time slot state of the dynamic time slot. When a dynamic time slot is not occupied by the first node and by a neighboring node of the first node, the occupying node of the dynamic time slot in the network time slot information package of the first node is 0, and the time slot state is idle;
[0103] When a dynamic time slot is occupied by the first node or by a neighboring node of the first node, the occupying node of the dynamic time slot in the network time slot information package of the first node is an identifier of the node occupying the dynamic time slot, and the time slot state is a relationship between the node occupying the dynamic time slot and the first node.
[0104] For example, when the time slot state of a dynamic time slot of the first node is 0 / 1 / 2 / 3, it respectively represents idle / occupying node is the first node itself / one-hop neighboring node of the first node / two-hop neighboring node of the first node.
[0105] From the above, the network time slot information package of a node includes the occupying state of a dynamic time slot within two-hop neighboring nodes, thereby realizing multiplexing of the dynamic time slot outside the two-hop neighboring nodes.
[0106] S230: The first node modifies the network time slot information package thereof according to the network time slot information package of the one-hop neighboring node received thereby.
[0107] When it is determined from the latest network time slot information package of each node received by the first node that a dynamic time slot is idle and the dynamic time slot is occupied by a neighboring node in the network time slot information package of the first node, the occupying node of the dynamic time slot in the network time slot information package of the first node is modified to be empty, and the time slot state is modified to be idle.
[0108] When it is determined from the latest network time slot information package of each one-hop neighboring node received by the first node that a dynamic time slot is occupied by at least one one-hop neighboring node of the first node and the dynamic time slot is not occupied by the first node in the network time slot information package of the first node, the occupying node of the dynamic time slot in the network time slot information package of the first node is set to the one-hop neighboring node with the highest priority among the at least one one-hop neighboring node, and the time slot state of the dynamic time slot is set accordingly.
[0109] If it is judged from the latest network time slot information packet of each one-hop neighbor node received by the first node that a dynamic time slot is occupied by at least one neighbor node of the first node and the dynamic time slot is occupied by the first node in the network time slot information packet of the first node, the first node releases the dynamic time slot when the priority of the at least one neighbor node is higher than that of the first node, and modifies the occupying node of the dynamic time slot to the neighbor node with the highest priority in the network time slot information packet of the first node, and modifies the time slot state of the dynamic time slot accordingly.
[0110] It is emphasized that if a dynamic time slot is not occupied by one-hop neighbor node A of the first node in the latest network time slot information packet of the one-hop neighbor node A, the dynamic time slot is judged not to be occupied by the one-hop neighbor node A even if it is judged to be occupied by the one-hop neighbor node A in the latest network time slot information packet of other one-hop neighbor node of the first node.
[0111] Figure 3 The process example of the network time slot information packet update is illustrated by taking the occupation of dynamic time slot d by three nodes X, Y and Z as an example, node Y is a one-hop neighbor node of node X, and node Z is a one-hop neighbor node of node Y and a two-hop neighbor node of node X.
[0112] 1) Node Z occupies the dynamic time slot d in the network time slot information packet of node X, and the time slot state of the dynamic time slot d in the network time slot information packet of node Y received by node X is empty, which indicates that the dynamic time slot d is occupied by node Z and then released, so the occupying node of the dynamic time slot d in the network time slot information packet of node X is set to null, and the time slot state is set to idle.
[0113] 2) The dynamic time slot d in the network time slot information packet of node Y received by node X is occupied by node Y, which is discussed in the following three cases:
[0114] 2.1) The dynamic time slot d is idle in the network time slot information packet of node X, so the occupying node of the dynamic time slot d in the network time slot information packet of node X is filled with node Y, and the time slot state is 2.
[0115] 2.2) Node X occupies the dynamic time slot d in the network time slot information packet of node X, if the priority of node X is higher than that of node Y, the occupying node and the time slot state of the dynamic time slot d in the network time slot information packet of node X remain unchanged; if the priority of node X is lower than that of node Y, the occupying node of the dynamic time slot d in the network time slot information packet of node X is modified to node Y and the time slot state is modified to 2.
[0116] 2.3) If the priority of node Z is higher than that of node Y, the occupying node and the time slot status of dynamic time slot d in the network time slot information packet of node X remain unchanged; if the priority of node Z is lower than that of node Y, the occupying node of dynamic time slot d in the network time slot information packet of node X is modified to node Y and the time slot status is modified to 2.
[0117] 3) If dynamic time slot d in the network time slot information packet of node Y received by node X is occupied by node Z, the following two cases are discussed:
[0118] 3.1) If dynamic time slot d in the network time slot information packet of node X is idle, the occupying node of dynamic time slot d in the network time slot information packet of node X is filled with node Z and the time slot status is 3;
[0119] 3.2) If dynamic time slot d in the network time slot information packet of node X is occupied by node X, if the priority of node X is higher than that of node Z, the occupying node and the time slot status of dynamic time slot d in the network time slot information packet of node X remain unchanged; if the priority of node X is lower than that of node Z, the occupying node of dynamic time slot d in the network time slot information packet of node X is modified to node Z and the time slot status is modified to 3.
[0120] From the above, the nodes modify their network time slot information packets according to the network time slot information packets of their one-hop neighboring nodes, so that each node synchronizes the dynamic time slot occupation information with its one-hop and two-hop neighboring nodes, thereby avoiding interference.
[0121] S240: The first node determines the amount of data to be transmitted in the next superframe from the application layer at the end of the current superframe, adjusts the occupied dynamic time slots according to the amount of data required and the network time slot information packet of the first node, and modifies the network time slot information packet according to the adjustment result.
[0122] 1) In the scenario where the amount of data to be transmitted by the first node in the next superframe is from 0 to a certain amount of data, i.e., the scenario where transmission starts, the first node allocates the occupied dynamic time slots for the first node in the next superframe according to its network time slot information packet, and modifies the network time slot information packet accordingly.
[0123] 2) In the scenario where the amount of data to be transmitted by the first node in the next multiframe is from one data volume to another, i.e., the intermediate transmission scenario, when the time slot required for the amount of data to be transmitted by the first node is greater than the dynamic time slot currently occupied by the first node, the first node adds the occupied dynamic time slot for the first node in the next multiframe according to its network time slot information packet, and modifies its network time slot information packet accordingly; when the time slot required for the amount of data to be transmitted by the first node is less than the dynamic time slot currently occupied by the first node, the first node releases the excess dynamic time slot occupied by the first node in the next multiframe according to its network time slot information packet, and modifies its network time slot information packet accordingly.
[0124] 3) When the amount of data to be transmitted by the first node in the next multiframe decreases from a certain amount to 0, the transmission ends. In the next multiframe, the first node releases the occupied dynamic time slot and modifies its network time slot information packet accordingly.
[0125] As described above, each node adjusts the dynamic time slot it occupies based on the amount of data to be transmitted in the next multiframe, thereby enabling each node to allocate time slots as needed.
[0126] S250: When the first node does not receive a broadcast message from one of its one-hop neighbor nodes in two consecutive superframes, it reclaims the dynamic time slot occupied by that one-hop neighbor node and modifies the network time slot information packet of the first node accordingly.
[0127] Specifically, if a one-hop neighbor of the first node suddenly loses power, loses network access, or suddenly moves rapidly to a location outside the coverage of the first node, this step will remove that one-hop neighbor from the first node's one-hop neighbor list, reclaim the dynamic time slot occupied by that one-hop neighbor, and modify the network time slot information packet of the first node accordingly.
[0128] Therefore, when a node loses network connection or power, the dynamic time slot it occupies will be reclaimed by other nodes. Other nodes can then reuse the dynamic time slots of the node that has lost network connection or power, maximizing time slot utilization.
[0129] The following is based on Figure 4 Using the four nodes shown and the superframe structure shown in Table 2 as examples, this paper introduces the dynamic time slot allocation process and the network time slot information packet (hereinafter referred to as NSIP) update process in Embodiment 2 of this method. The four nodes are identified as 1, 2, 3, and 4, respectively. Node 1 can only communicate with node 2, node 2 can only communicate with node 1 and node 3, node 3 can only communicate with node 2 and node 4, and node 4 can only communicate with node 3. Nodes that can communicate with each other are one-hop neighbors.
[0130] Table 2 shows the wireless superframe structure of this example, the network maximum node number is 32, each superframe contains 64 slots, one slot time is 1 millisecond (t=lms), and one wireless superframe period is 1*32*64=2048 milliseconds.
[0131] Table 2 shows the wireless superframe structure of this example, the network maximum node number is 32, each superframe contains 64 slots, one slot time is 1 millisecond (t=lms), and one wireless superframe period is 1*32*64=2048 milliseconds.
[0132] S1,1 (B1) S1,2 (F1) S1,3 (F1) S1,4 (F1) S1,5 S1,6 … S1,62 S1,63 S1,64 S2,1 (B2) S2,2 (F2) S2,3 (F2) S2,4 (F2) S2,5 S2,6 … S2,62 S2,63 S2,64 S3,1 (B3) S3,2 (F3) S3,3 (F3) S3,4 (F3) S3,5 S3,6 … S3,62 S3,63 S3,64 … … … … … … … … … … S32,1 (B32) S32,2 (F32) S32,3 (F32) S32,4 (F32) S32,5 S32,6 … S32,62 S32,63 S32,64
[0133] This example sequence includes three processes: process one, node 1 transmits data to node 3; process two, node 2 transmits data to node 3; process three, node 4 transmits data to node 1.
[0134] Process one: node 1 needs to transmit data to node 3 in the current superframe.
[0135] Node 1 calculates the data transmission rate according to the amount of data to be transmitted in the next superframe, and then converts it into the required number of dynamic slots. The corresponding number of dynamic slots is occupied in the local NSIP package, and the updated NSIP package is broadcasted, and at the same time node 1 sends data on the allocated sending slot.
[0136] (1) If 2 dynamic slots are needed to transmit data at present, the NSIP package of node 1 is as follows:
[0137]
[0138]
[0139] (2) Node 2 receives the NSIP sent by node 1, then updates its own NSIP package and broadcasts the NSIP package. At this time, the NSIP package of node 2 is as follows:
[0140] Slot number Slot status Occupied node Sx,5 2 (one-hop neighbor occupied) 1 Sx,6 2 (one-hop neighbor occupied) 1 Sx,7 0 0 … 0 0 Sx,64 0 0
[0141] (3) Node 3 receives the NSIP of node 2, and also updates its own NSIP package and broadcasts the NSIP package. At this time, the NSIP package of node 3 is as follows:
[0142] Slot number Slot status Occupied node Sx,5 3 (two-hop neighbor occupied) 1 Sx,6 3 (two-hop neighbor occupied) 1 Sx,7 0 0 … 0 0 Sx,64 0 0
[0143] Node 4 receives the NSIP of node 3, and since it is a 3-hop neighbor, it occupies it, so it does not update its own NSIP, at this time all slots in the NSIP of node 4 are still in idle state.
[0144] Process two: node 2 needs to transmit data to node 3 after several superframes of node 1 starting to transmit data.
[0145] (1) Node 2 calculates that the number of dynamic time slots it needs to occupy is 1. Then the NSIP packet of node 2 is updated as follows:
[0146]
[0147]
[0148] (2) Node 1 receives the NSIP of node 2, and updates the NSIP of the node as follows:
[0149] Slot number Slot status Occupied node Sx,5 1 (self occupied) 1 Sx,6 1 (self occupied) 1 Sx,7 2 (one-hop neighbor occupied) 2 … 0 0 Sx,64 0 0
[0150] (3) Node 3 receives the NSIP of node 2, and updates the NSIP of the node as follows:
[0151] Slot number Slot status Occupied node Sx,5 3 (two-hop neighbor occupied) 1 Sx,6 3 (two-hop neighbor occupied) 1 Sx,7 2 (one-hop neighbor occupied) 2 … 0 0 Sx,64 0 0
[0152] (4) Node 4 receives the NSIP packet of node 3, and updates the NSIP packet of the node as follows:
[0153] Slot number Slot status Occupied node Sx,5 0 0 Sx,6 0 0 Sx,7 3 (two-hop neighbor occupied) 2 … 0 0 Sx,64 0 0
[0154] Process three: Node 4 needs to transmit data to node 1 after several re-frames of node 2 start to transmit data.
[0155] (1) Node 4 calculates that the number of dynamic time slots it needs to occupy is 3. Since time slot 7 has been occupied by the adjacent node (node 2) within 2 hops, node 4 can only use time slots 5, 6 and 8. Therefore, the NSIP packet of node 4 is updated as follows:
[0156] Slot number Slot status Occupied node Sx,5 1 4 Sx,6 1 4 Sx,7 3 (two-hop neighbor occupied) 2 Sx,8 1 4 … 0 0
[0157] (2) Node 3 receives the NSIP of node 4, and updates the NSIP of the node as follows:
[0158] Slot number Slot status Occupied node Sx,5 2 (one-hop neighbor occupied) 4 Sx,6 2 (one-hop neighbor occupied) 4 Sx,7 2 (one-hop neighbor occupied) 2 Sx,8 2 (one-hop neighbor occupied) 4 … 0 0
[0159] (3) Node 2 receives the NSIP of node 3, and updates the NSIP of the node as follows:
[0160] Slot number Slot status Occupied node Sx,5 2 (one-hop neighbor occupied) 1 Sx,6 2 (one-hop neighbor occupied) 1 Sx,7 1 (self occupied) 2 Sx,8 3 (two-hop neighbor occupied) 4 … 0 0
[0161] (4) Node 1 receives the NSIP packet of node 2, and does not update its own NSIP since it is occupied by 3-hop adjacent nodes. At this time, the NSIP of node 1 remains unchanged, as follows:
[0162]
[0163]
[0164] The above process shows that three nodes 1, 2 and 4 obtain the dynamic time slots for sending data according to the one-hop neighboring node NSIP and the state of the node NSIP, wherein in process 3, the node 1 and the node 4 simultaneously occupy the time slot Sx, 5 and the time slot Sx, 6, because the node 1 and the node 4 are outside the two-hop neighboring nodes of each other, and do not affect the transmission of data. The dynamic time slot acquisition scheme not only ensures the correct transmission of data, but also fully utilizes the time slot resources.
[0165] In summary, the second embodiment of the time slot allocation method for the wireless ad hoc network inherits the method of the first embodiment of the time slot allocation method for the wireless ad hoc network, and simultaneously performs the following enhancements: each wireless superframe includes a maximum number of node corresponding superframe, the broadcast time slot and the control time slot of each node are in the fixed position of its superframe, and the time slots required by each node are allocated in the time unit of the superframe; when a node does not receive the broadcast message of one of its one-hop neighboring nodes in two consecutive superframes, the dynamic time slot occupied by the one-hop neighboring node is recovered. The second embodiment of the time slot allocation method for the wireless ad hoc network not only realizes that the nodes within the two-hop neighboring nodes of a node avoid interference and the nodes outside the two-hop neighboring nodes of a node multiplex dynamic time slots in the time unit of the superframe, but also realizes that the dynamic time slots occupied by the nodes with broken network and power supply and the nodes with fast movement are recovered in the unit of two superframes, further reduces the interference of the wireless ad hoc network, and further improves the use efficiency of the dynamic time slots of the ad hoc network and the network transmission bandwidth.
[0166] Figure 5 An embodiment of a time slot allocation device for a wireless ad hoc network is shown, which includes a superframe configuration module 510, an information broadcast module 520, a time slot information modification module 530, and a time slot allocation module 540.
[0167] For ease of description, the first node is taken as an example for illustration, and the first node can be any node of the wireless ad hoc network.
[0168] The superframe configuration module 510 is configured to set a fixed broadcast time slot and a plurality of fixed control time slots for each node in each wireless superframe, and the other time slots of the wireless superframe are dynamic time slots. The working principle and advantages thereof are described with reference to step S110 of the first embodiment of the time slot allocation method for the wireless ad hoc network.
[0169] The information broadcast module 520 is configured to send the broadcast information of the first node in its broadcast time slot, and send the network time slot information packet of the first node in its control time slot, wherein the network time slot information packet of the first node includes the information that each dynamic time slot is occupied by the first node and its neighboring nodes. The working principle and advantages thereof are described with reference to step S120 of the first embodiment of the time slot allocation method for the wireless ad hoc network.
[0170] The time slot information modification module 530 is configured to modify the network time slot information packet of the first node according to the network time slot information packet of the one-hop neighbor node received by the first node, and release the dynamic time slot when the first node and the one-hop neighbor node simultaneously occupy the dynamic time slot and the priority of the first node is lower than that of the one-hop neighbor node. The working principle and advantages of the time slot information modification module 530 can refer to step S130 of the wireless ad hoc network time slot allocation method embodiment one.
[0171] The time slot allocation module 540 is configured to adjust the occupied dynamic time slot according to the network time slot information packet of the first node and the data amount to be transmitted, and modify the network time slot information packet of the first node according to the adjustment result. The working principle and advantages of the time slot allocation module 540 can refer to step S140 of the wireless ad hoc network time slot allocation method embodiment one.
[0172] Figure 6 An embodiment of a wireless ad hoc network time slot allocation device is shown, which comprises a superframe configuration module 610, an information broadcast module 620, a time slot information modification module 630, a time slot allocation module 640, and a time slot recovery module 650.
[0173] For the convenience of description, the first node is taken as an example for description. The first node can be any node of the wireless ad hoc network.
[0174] The superframe configuration module 610 is configured to configure a maximum number of nodes corresponding to a superframe in each wireless superframe, set a fixed broadcast time slot and a plurality of fixed control time slots for each node in the corresponding superframe of each node, and dynamically allocate dynamic time slots for each node in other time slots of the wireless superframe. The working principle and advantages of the superframe configuration module 610 can refer to step S210 of the wireless ad hoc network time slot allocation method embodiment two.
[0175] The information broadcast module 620 is configured to send the broadcast information of the first node in the broadcast time slot of the first node, and send the network time slot information packet of the first node in the control time slot of the first node. The network time slot information packet of the first node comprises information that each dynamic time slot is occupied by the first node and one-hop neighbor node and two-hop neighbor node. The working principle and advantages of the information broadcast module 620 can refer to step S220 of the wireless ad hoc network time slot allocation method embodiment two.
[0176] The time slot information modification module 630 is configured to modify the network time slot information packet of the first node according to the network time slot information packet of the one-hop neighbor node received by the first node. The working principle and advantages of the time slot information modification module 630 can refer to step S230 of the wireless ad hoc network time slot allocation method embodiment two.
[0177] The time slot allocation module 640 is configured to determine the amount of data to be transmitted in the next super frame from the application layer at the end of the current super frame of the first node, adjust the occupied dynamic time slots according to the required time slots of the data and the network time slot information packet of the first node, and modify the network time slot information packet of the first node according to the adjustment result. The working principle and advantages thereof can refer to step S240 of the second embodiment of the time slot allocation method of the wireless ad hoc network.
[0178] The time slot recovery module 650 is configured to recover the dynamic time slots occupied by a one-hop neighbor node of the first node and modify the network time slot information packet of the first node accordingly when the first node does not receive the broadcast message of the one-hop neighbor node in two consecutive super frames. The working principle and advantages thereof can refer to step S250 of the second embodiment of the time slot allocation method of the wireless ad hoc network.
[0179] The application further provides a node of a wireless ad hoc network, which comprises the node of the wireless ad hoc network of the first embodiment of the time slot allocation device or the node of the wireless ad hoc network of the second embodiment of the time slot allocation device.
[0180] The application further provides a wireless ad hoc network, which comprises at least two nodes of the wireless ad hoc network of the first embodiment of the node or the wireless ad hoc network of the second embodiment of the node.
[0181] The application further provides a computing device, which will be described below in combination with Figure 7 in detail.
[0182] The computing device 700 comprises a processor 710, a memory 720, a communication interface 730, and a bus 740.
[0183] It should be understood that the communication interface 730 in the computing device 700 shown in the figure can be used for communication between other devices.
[0184] The processor 710 can be connected with the memory 720. The memory 720 can be used for storing program codes and data. Therefore, the memory 720 can be an internal storage unit of the processor 710, an external storage unit independent of the processor 710, or a component comprising the internal storage unit of the processor 710 and the external storage unit independent of the processor 710.
[0185] Optionally, the computing device 700 can further include a bus 740. The bus 740 can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The bus 740 can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one bus is represented in the figure, but it does not mean that there is only one bus or only one type of bus.
[0186] It should be understood that the processor 710 can be a central processing unit (CPU) in the embodiments of the present application. The processor can also be other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gates or transistor logic, discrete hardware components, etc. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor. Alternatively, the processor 710 can be one or more integrated circuits for executing relevant programs to implement the technical solutions provided by the embodiments of the present application.
[0187] The memory 720 can include read-only memory and random access memory, and provide instructions and data to the processor 710. Part of the processor 710 can also include a non-volatile random access memory. For example, the processor 710 can also store device type information.
[0188] When the computing device 700 is running, the processor 710 executes computer execution instructions in the memory 720 to perform the operation steps of each method embodiment.
[0189] It should be understood that the computing device 700 according to the embodiments of the present application can correspond to the execution of the corresponding subject in the method according to the embodiments of the present application, and the above and other operations and / or functions of each module in the computing device 700 are respectively for implementing the corresponding flow of each method of the embodiments, and for brevity, will not be repeated here.
[0190] Those skilled in the art can clearly understand that the units and algorithm steps of each example described in combination with the embodiments disclosed herein can be realized by electronic hardware or a combination of computer software and electronic hardware. Whether the functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present application.
[0191] Those skilled in the art can clearly understand that, for the convenience and brevity of the description, the specific working processes of the above-described system, device and unit can refer to the corresponding processes in the foregoing method embodiments, which will not be repeated here.
[0192] In several embodiments provided by the present application, it should be understood that the disclosed system, device and method can be implemented in other ways. For example, the above-described device embodiments are merely schematic, for example, the division of the units is only a logical function division, and actual implementation can have another division manner, for example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the units shown or discussed can be indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
[0193] The units described as separate components can or can not be physically separated, and the components shown as units can or can not be physical units, that is, they can be located in one place, or can be distributed on multiple network units. Part or all of the units can be selected according to actual needs to achieve the purpose of the embodiment.
[0194] In addition, each functional unit in each embodiment of the present application can be integrated into a processing unit, or each unit can exist physically independently, or two or more units can be integrated into one unit.
[0195] If the functions are realized in the form of software function units and sold or used as independent products, they can be stored in a computer readable storage medium. Based on this understanding, the technical solutions of the present application essentially or the parts that contribute to the prior art or parts of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application. The aforementioned storage medium includes a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and various program code storage media.
[0196] The embodiments of the present application also provide a computer readable storage medium, which stores a computer program. The program is executed by a processor to perform the operation steps of the methods.
[0197] The computer storage medium of the embodiments of the present application can adopt any combination of one or more computer readable media. The computer readable medium can be a computer readable signal medium or a computer readable storage medium. The computer readable storage medium can be, but is not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or component, or any combination thereof. More specific examples (non-exhaustive list) of the computer readable storage medium include an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this document, the computer readable storage medium can be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, device or component.
[0198] The computer readable signal medium can include a data signal propagated in a baseband or as a part of a carrier wave, in which a computer readable program code is borne. Such a propagated data signal can take various forms, including but not limited to an electromagnetic signal, an optical signal or any suitable combination thereof. The computer readable signal medium can also be any computer readable medium that is not a computer readable storage medium and can send, propagate or transmit a program for use by or in connection with an instruction execution system, device or component.
[0199] The program code embodied on the computer readable media can be transmitted using any appropriate medium, including, but not limited to, wireless, wire line, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
[0200] Computer program code for carrying out operations of the present application can be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code can execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computer (for example, through the Internet using an Internet Service Provider).
[0201] Note that the above merely describes the preferred embodiments of the present application and the principles of the technology applied. Those skilled in the art will understand that the present application is not limited to the specific embodiments described herein, and that various obvious changes, reconfigurations and substitutions can be made without departing from the scope of the present application. Therefore, although the present application has been described in detail through the above embodiments, the present application is not limited to the above embodiments, and can include more other equivalent embodiments without departing from the concept of the present application, and all of them belong to the protection scope of the present application.
Claims
1. A time slot allocation method for a wireless ad hoc network, characterized in that, include: In each wireless superframe, a fixed-location broadcast time slot and several fixed-location control time slots are set for each node, while the other time slots in the wireless superframe are dynamic time slots; The first node transmits its broadcast information in its broadcast time slot and its network time slot information packet in its control time slot. The network time slot information packet of the first node includes information about the occupation of each dynamic time slot by the first node and its neighboring nodes. The first node can be any node in the wireless ad hoc network. The neighboring nodes of the first node include its first-hop neighbor and its second-hop neighbor. The first-hop neighbor of the first node is the node that sent the broadcast message received by the first node. The second-hop neighbor of the first node is the first-hop neighbor of each of the first-hop neighbors of the first node, excluding the first node itself and its other first-hop neighbors. The remaining nodes; wherein, the network time slot information packet of the first node includes the time slot status and occupying node of each dynamic time slot; when a dynamic time slot is not occupied by the first node and is not occupied by the first node's neighboring nodes, the time slot status of the dynamic time slot in the network time slot information packet of the first node is idle, and the occupying node is 0; when a dynamic time slot is occupied by the first node or by the first node's neighboring nodes, the occupying node of the dynamic time slot in the network time slot information packet of the first node is the identifier of the node occupying the dynamic time slot, and the time slot status indicates the relationship between the node occupying the dynamic time slot and the first node; The first node modifies its network time slot information packet based on the network time slot information packets received from its one-hop neighbor nodes. Specifically, when it determines from the latest network time slot information packets received from all its neighbor nodes that a dynamic time slot is entirely idle and that the dynamic time slot is occupied by one of its neighbor nodes in the first node's network time slot information packet, the first node modifies the occupying node of the dynamic time slot to empty and changes the time slot status to idle in its network time slot information packet. Furthermore, when the first node and one of its neighbor nodes simultaneously occupy a dynamic time slot and the first node's priority is lower than that of the neighbor node, the first node releases the dynamic time slot. In the network time slot information packet, the node occupying the dynamic time slot is set as the neighboring node, and the time slot status of the dynamic time slot is set accordingly; wherein, when a dynamic time slot is occupied by at least one of the neighboring nodes of the first node and the dynamic time slot is not occupied by the first node in the network time slot information packet of the first node, and the node with the highest priority among the at least one neighboring nodes is not occupied by the dynamic time slot in the network time slot information packet of the first node, the node occupying the dynamic time slot is set as the node with the highest priority in the network time slot information packet of the first node, and the time slot status of the dynamic time slot is set accordingly; The first node adjusts the dynamic time slot it occupies based on its network time slot information packets and the amount of data to be transmitted, and modifies its network time slot information packets based on the adjustment results.
2. The method according to claim 1, characterized in that... Each wireless superframe consists of N equal-length multiframes, where N is the number of nodes in the wireless ad hoc network. The broadcast and control time slots of node i are located in the i-th multiframe of each wireless superframe.
3. The method according to claim 2, characterized in that, The first node adjusts the dynamic time slot it occupies based on its network time slot information packets and the amount of data to be transmitted, and modifies its network time slot information packets according to the adjustment result, including: When the current multiframe ends, the first node determines the amount of data to be transmitted in the next multiframe from the application layer, adjusts the occupied dynamic time slots according to the time slots required for the data amount and the network time slot information packets of the first node, and modifies its network time slot information packets according to the adjustment results.
4. The method according to claim 2, characterized in that, Also includes: When the first node does not receive a broadcast message from one of its one-hop neighbor nodes in two consecutive superframes, it reclaims the dynamic time slot occupied by that one-hop neighbor node and modifies the network time slot information packet of the first node accordingly.
5. A time slot allocation device for a wireless ad hoc network, characterized in that, include: The superframe configuration module is used to set a fixed-location broadcast time slot and several fixed-location control time slots for each node in each wireless superframe. The other time slots in the wireless superframe are dynamic time slots. The information broadcasting module is used by the first node to send its broadcast information in its broadcast time slot and its network time slot information packet in its control time slot. The network time slot information packet of the first node includes information about the occupation of each dynamic time slot by the first node and its neighboring nodes. The first node can be any node in the wireless ad hoc network. The neighboring nodes of the first node include its first-hop neighbor and its second-hop neighbor. The first-hop neighbor of the first node is the sending node of the broadcast message received by the first node. The second-hop neighbor of the first node is the first-hop neighbor of each of the first-hop neighbors of the first node excluding the first node and each of the first node's first hop neighbors. The remaining nodes after the neighboring nodes; wherein, the network time slot information packet of the first node includes the time slot status and occupying node of each dynamic time slot; when a dynamic time slot is not occupied by the first node and is not occupied by the neighboring nodes of the first node, the time slot status of the dynamic time slot in the network time slot information packet of the first node is idle, and the occupying node is 0; when a dynamic time slot is occupied by the first node or by the neighboring nodes of the first node, the occupying node of the dynamic time slot in the network time slot information packet of the first node is the identifier of the node occupying the dynamic time slot, and the time slot status indicates the relationship between the node occupying the dynamic time slot and the first node; The time slot information modification module is used by the first node to modify its network time slot information packet based on the network time slot information packets received from its one-hop neighbor nodes. Specifically, when it is determined from the latest network time slot information packets received from all neighbor nodes that a dynamic time slot is entirely idle and is occupied by one of its neighbor nodes in the first node's network time slot information packet, the first node modifies the occupying node of the dynamic time slot to empty and changes the time slot status to idle in its network time slot information packet. Furthermore, when the first node and one of its neighbor nodes simultaneously occupy a dynamic time slot and the first node's priority is lower than that of the neighbor node, the first node releases the dynamic time slot. In the network time slot information packet of the first node, the node occupying the dynamic time slot is set as the neighboring node, and the time slot status of the dynamic time slot is set accordingly; wherein, when a dynamic time slot is occupied by at least one of the neighboring nodes of the first node and the dynamic time slot is not occupied by the first node in the network time slot information packet of the first node, and the node with the highest priority among the at least one neighboring nodes is not occupied by the dynamic time slot in the network time slot information packet of the first node, the node occupying the dynamic time slot is set as the node with the highest priority in the network time slot information packet of the first node, and the time slot status of the dynamic time slot is set accordingly; The time slot allocation module is used by the first node to adjust the dynamic time slot it occupies based on its network time slot information packets and the amount of data to be transmitted, and to modify its network time slot information packets based on the adjustment results.
6. A node for a wireless ad hoc network, characterized in that, include: A node having the device of claim 5.
7. A wireless ad hoc network, characterized in that, include: At least two of the nodes described in claim 6.
Citation Information
Patent Citations
Distributed resource allocation method for wireless Ad-hoc network
CN109219144A
Broadcast time slot determination method and device, equipment and storage medium
CN112383491A