A wireless channel distributed access method
By introducing a mechanism in which task nodes seize the time slot blocks occupied by their neighbor nodes in the wireless ad hoc network, the problem of insufficient resource allocation in the prior art is solved, and the fairness of resource allocation in the communication process is improved.
Patent Information
- Application Number
- CN202410842890.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-06-27
- Publication Date
- 2025-05-13
- Estimated Expiration
- 2044-06-27
AI Technical Summary
The existing wireless ad hoc network protocol fails to ensure fairness in resource allocation, which may cause nodes with small ID to occupy the channel for a long time, while other nodes cannot access normally, affecting communication efficiency.
By defining the task node preempts the time slot block occupied by its neighbor node, the difference in the number of time slot blocks occupied is calculated. If the set threshold is exceeded, the task node preempts the time slot block until sufficient resources are obtained or the occupancy difference of all neighbor nodes is less than the threshold.
It effectively avoids the fairness problem caused by long-term resource occupation by individual nodes, and improves the fairness of resource allocation of each node in wireless ad hoc network communication.
Smart Images

Figure CN118574221B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of wireless communication, relates to wireless ad hoc network communication, and specifically relates to a wireless channel distributed access method. Background Art
[0002] The radio station self-organizing network adopts a decentralized structure, and there is no absolute control center in the entire network. It is also a peer-to-peer network, in which all nodes are equal, and each node coordinates its actions with each other through distributed algorithms and hierarchical network protocols. The wireless channel used by each node for communication is a traditional one-hop shared broadcast channel. At the same time, only one node is allowed to occupy the channel to send, and other nodes are in the receiving state. If multiple nodes are in the sending state at the same time, a collision will occur, resulting in reception failure; this requires a MAC protocol to coordinate the timing of each node accessing the channel to avoid collisions; in the self-organizing network, time division multiple access technology is used to access the channel (TDMA: the wireless channel is divided into several time slots according to time, and each user can occupy N time slots each time they access the channel). The MAC protocol adopts a step-by-step channel resource allocation protocol to coordinate users in the network to access the channel without collision. Users can dynamically apply for the required channel resources according to the actual business volume, and release the resources after the business is sent.
[0003] The MAC protocol of the ad hoc network logically divides the wireless channel into signaling channel and data channel. The signaling channel consists of multiple time slots and is used to transmit MAC protocol signaling and other signaling. The data channel consists of time slots other than signaling time slots and is used to transmit service messages. The MAC protocol signaling coordinates the timing of each user accessing the data channel. The signaling time slot and the data time slot cycle, and the cycle period is the frame. A typical frame structure is as follows Figure 2 As shown: there are M signaling time slots in a frame, which can support M nodes to send signaling once per frame, and the remaining data time slots are divided into K time slot blocks. Each time slot block contains n data time slots, and each time slot block has three states: 1. Idle, no node is using it; 2. Receiving, the sending node is receiving neighbor node data in this time slot block; 3. Sending, the sending node is using or is about to use this time slot block to send data.
[0004] Each time a node sends a signal, it notifies the time slot block status of all current nodes. If the time slot block is in the receiving state, it will also carry the data sending node ID of the time slot block, which is used to confirm the sending node.
[0005] When a node has a service to send, it searches for an idle time slot block from the available resource pool. An idle time slot block is a time slot block that is in an idle state and has no neighboring node in a receiving state. It is marked as a sending state, and the current state of all time slot blocks is announced in the node's signaling time slot, and then waits for other neighboring nodes to respond, that is, waits for one frame of time. If the time slot block marked as a sending state by this node is announced by all neighboring nodes as receiving and the data sending node ID is the same as this node's ID, then the application is considered successful and data can be sent. Otherwise, the application is considered failed, the time slot block state is cleared and re-applied. After receiving the signaling of the node, the neighboring node marks the local state of the time slot block in the sending state as receiving, and records the sending node ID, and then announces the current time slot block state in the signaling to notify the sending node that the application is successful. When multiple nodes apply for the same time slot block resource at the same time, the neighboring nodes need to perform conflict arbitration. The arbitration principle is that the node with a smaller ID has priority. So when a node receives multiple neighboring nodes applying for the same resource, the sending ID of the resource block is recorded as the smallest among all applicants.
[0006] As mentioned above, the existing self-organizing network protocol does not require a central node. Each node completes resource coordination through interactive signaling. When there is a resource conflict, the conflict resolution principle is to prioritize nodes with smaller IDs. This can ensure that the decision results of each node are consistent after a conflict occurs. However, the fairness of the access channel is not considered here, which may cause nodes with smaller IDs to continue to occupy the channel, while other nodes cannot access the channel. Summary of the invention
[0007] In view of the defects of the above-mentioned prior art, the present invention discloses a distributed access method for wireless channels.
[0008] The wireless channel distributed access method of the present invention comprises the following steps:
[0009] Step 1. Define the node that needs to apply for the time slot block as the task node. The task node first occupies the idle time slot block according to the task requirements. If the current idle time slot block is sufficient, the task node will directly carry out the task;
[0010] Step 2. If there are not enough idle time slot blocks, the idle time slot blocks are occupied and the time slot block preemption process is entered;
[0011] Step 3. For all neighbor nodes of the task node, find the neighbor node that occupies the most resource blocks, calculate the difference between the number of time slot blocks occupied by the neighbor node and the number of time slot blocks occupied by the task node, if it is not less than the set number threshold, the task node will seize a time slot block occupied by the neighbor node;
[0012] Step 4. Repeat steps 2 to 3 until the task node obtains enough time slot blocks, or the difference between the number of time slot blocks occupied by all neighbor nodes of the task node and the number of time slot blocks occupied by the task node is less than the set number threshold;
[0013] Step 5. After step 4, if the difference between the number of time slot blocks occupied by all neighbor nodes and the number of time slot blocks occupied by the task node is less than the set number threshold, and the task node still has not obtained enough time slot blocks, it waits until the next frame and continues to repeat steps 2 to 4 until the task node obtains enough time slot blocks.
[0014] Preferably, the neighbor node is a single-hop neighbor node of the task node, and the specific process of the task node seizing the time slot block includes:
[0015] Step 31. The task node sends a resource signaling to mark all the idle time slot blocks that have been seized and the time slot blocks to be occupied that have been occupied by the single-hop neighbor node as the sending state;
[0016] Step 32. When any single-hop neighbor node receives the resource signaling sent by the task node, if it finds that a time slot block marked in the resource signaling is in the sending state and the time slot block is occupied by this node, then this node gives up this time slot block and marks it as the receiving state. If the time slot block is not occupied by this node, it is also marked as the receiving state and sends out resource signaling to update the time slot block state.
[0017] Preferably, the neighbor node also includes a two-hop neighbor node of the task node. For the two-hop neighbor node, the specific process of the task node seizing the time slot block is as follows:
[0018] Step 33. When any node AS receives resource signaling issued by a non-task node, if it finds that a time slot block marked in the resource signaling is in the receiving state and the time slot block is occupied by this node AS, the node AS unconditionally gives up the time slot block and marks it as idle.
[0019] Preferably, the quantity threshold is 2.
[0020] Preferably, step 35 is also included. When any node AK receives the resource signaling of the task node, if it is found that a time slot block is marked as being in the sending state in the resource signaling sent by the task node, and the time slot block is currently occupied by a single-hop or double-hop neighbor node of the node AK, conflict resolution is required, and the winner of the conflict resolution obtains the time slot block.
[0021] Preferably, the specific method of conflict resolution is to count the total number of time slot blocks currently occupied by all resource applicants. The one with fewer occupied time slot blocks has a higher priority. If the number of occupied time slot blocks is the same, the one with a smaller identity tag number is given priority. The resource applicants include the task node described in step 35 and the neighbor node occupying the time slot block.
[0022] The present invention can avoid that individual nodes occupy resources for a long time during communication, causing other nodes to be unable to participate in communication normally, by identifying nodes that occupy more resources and preempting their occupied resources, thereby improving the fairness of resource allocation of each node during wireless ad hoc network communication. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] Figure 1 The figure shows a specific implementation diagram of the wireless ad hoc network of the present invention;
[0024] Figure 2 Shown is a schematic diagram of a specific implementation of a frame in wireless ad hoc network communication;
[0025] Figure 3 The figure is a schematic flow chart of a specific implementation of the access method of the present invention;
[0026] Figure 4 It is a schematic diagram of a specific implementation method of a task node preempting a time slot block for a single-hop neighbor node;
[0027] Figure 5 It is a schematic diagram of a specific implementation method of a task node preempting a time slot block for a double-hop neighbor node;
[0028] Figure 6 The figure is a flowchart of a specific implementation of the conflict resolution process of the present invention. DETAILED DESCRIPTION
[0029] In order to more intuitively and clearly describe the specific details of the technical solution of the present invention, a detailed description will be given below in conjunction with specific embodiments and example drawings.
[0030] In order to make the purpose, technical solution and advantages of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in combination with the specific implementation methods of the present invention and the corresponding drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0031] like Figure 1As shown, the wireless channel distributed access method of the present invention is based on a wireless communication network of an ad hoc network, including a plurality of wireless communication nodes with equal status, such as Figure 1 As shown, each wireless communication node can directly contact other wireless communication nodes for communication as single-hop neighbor nodes of the node, for example Figure 1 In the example, the single-hop neighbor nodes of node A1 are nodes A5, A7 and A8.
[0032] The access method includes: Figure 3 As shown, the following steps are included:
[0033] Step 1. Define the node that needs to apply for the time slot block as the task node. The task node first occupies the idle time slot block according to the task requirements. If the current idle time slot block is sufficient, the task node will directly carry out the task;
[0034] Step 2. If there are not enough idle time slot blocks, the idle time slot blocks are occupied and the time slot block preemption process is entered;
[0035] Step 3. For all neighbor nodes of the task node, find the neighbor node that occupies the most resource blocks, calculate the difference between the number of time slot blocks occupied by the neighbor node and the number of time slot blocks occupied by the task node, if it is not less than the set number threshold, the task node will seize a time slot block occupied by the neighbor node;
[0036] The neighbor nodes usually include only single-hop neighbor nodes, and may also be set to include single-hop neighbor nodes and two-hop neighbor nodes;
[0037] Step 4. Repeat steps 2 to 3 until the task node obtains enough time slot blocks, or the difference between the number of time slot blocks occupied by all neighbor nodes of the task node and the number of time slot blocks occupied by the task node is less than the set number threshold;
[0038] Step 5. After steps 1 to 4, if the difference between the number of time slot blocks occupied by all neighbor nodes and the number of time slot blocks occupied by the task node is less than the set number threshold, and the task node still has not obtained enough time slot blocks, it waits until the next frame and continues to repeat steps 2 to 4 until enough time slot blocks are obtained.
[0039] After obtaining enough time slot blocks, the task node starts to execute the task.
[0040] Figure 3 In the specific implementation shown, the quantity threshold is set to 2
[0041] Among them, in step 3, for a single-hop neighbor node, the specific process of the task node preempting a time slot block occupied by the neighbor node is as follows: Figure 4 As shown, specifically:
[0042] Step 31. The task node sends a resource signaling to mark all the idle time slot blocks that have been seized and the time slot blocks to be occupied that have been occupied by the single-hop neighbor node as the sending state;
[0043] Step 32. When any single-hop neighbor node receives the resource signaling sent by the task node, if it finds that a time slot block marked in the resource signaling is in the sending state and the time slot block is occupied by this node, it means that the task node needs to seize the time slot block. This node gives up this time slot block and marks it as the receiving state. If the time slot block is not occupied by this node, it also marks it as the receiving state and sends out a resource signaling that updates the time slot block state.
[0044] When the single-hop neighbor node cannot provide enough time slot blocks, the task node performs step 3 on the neighbor nodes with more than two hops. The so-called two-hop neighbor nodes refer to those that cannot directly contact the task node but can establish contact through only one node, such as Figure 1 As shown, the two-hop neighbor nodes of node A1 include nodes A2, A4, and A9; similarly, the three-hop neighbor nodes refer to neighbor nodes that can establish connections through only two nodes, and the definition of more-hop neighbor nodes is similar.
[0045] For a two-hop neighbor node, the specific process of the task node preempting a time slot block that has been occupied by the neighbor node is as follows: Figure 5 As shown, specifically:
[0046] Step 33. When any node AS receives resource signaling issued by a non-task node, the node issuing the resource signaling is defined as the signaling notifier node AF;
[0047] If it is found that a time slot block marked in the resource signaling is in the receiving state, it indicates that the time slot block is marked and occupied by the single-hop neighbor node of the signaling notifier node AF in step 31 and marked as the receiving state in step 32, and the time slot block is occupied by the current node AS, and the signaling notifier node AF in the resource signaling does not occupy the time slot block, which means that a single-hop neighbor node of the signaling notifier node AF wants to occupy the time slot block, then the node AS unconditionally gives up the time slot block and marks it as idle.
[0048] Since resource signaling can only be transmitted between single-hop neighboring nodes, if the time slot block occupied by any node is marked as receiving state in the resource signaling received by any node AS, it means that the signaling notifier node AF of the resource signaling received by the node AS is not the task node, but the updated resource signaling sent in step 32 after receiving the resource signaling sent by the task node, thereby realizing the task node's occupation of the time slot block of the two-hop neighboring node.
[0049] For example Figure 1In the wireless ad hoc network shown, the task node is A1, and the single-hop neighbor nodes of A1 include A5, A7 and A8. When the task node A1 fails to obtain enough time slot blocks from the above-mentioned single-hop neighbor nodes, the single-hop neighbor nodes A5, A7, A8 respectively issue resource signaling. After the single-hop neighbor nodes of A5, A7, A8, that is, the two-hop task nodes A2, A4, A9 of the task node A1, receive the resource signaling, they find that the time slot block they occupy is marked as receiving state in the resource signaling, so they give up this time slot block and mark it as idle state.
[0050] When there are more than two task nodes, conflicts may occur for the time slot blocks to be occupied, and conflict resolution can be performed through step 35.
[0051] Step 35. When any node AK receives the resource signaling from the task node, if it finds that a time slot block is marked as being in the sending state in the resource signaling sent by the task node, and the time slot block is currently occupied by a single-hop or double-hop neighbor node of the node AK, it indicates that a resource conflict occurs and conflict resolution is required;
[0052] Since each task node in the present invention only obtains time slot blocks from single-hop and two-hop neighbor nodes, for two task nodes that are far apart, if there is no common single-hop and two-hop nodes between the two, there will be no occupancy conflict between the two. The conflict will only occur when two nodes that are far apart serve as task nodes at the same time. The two task nodes may simultaneously requisition the time slot blocks occupied by their own single-hop or two-hop neighbor nodes.
[0053] For example Figure 1 In the wireless ad hoc network shown, node A7 serves as a single-hop neighbor node of node A2 and node A5. In a certain frame Z1, node A5 occupies time slot block T1 as a task node. In the next frame Z2, node A2 also wants to occupy time slot block T1 as a task node. At this time, task node A2 issues a resource signaling to mark time slot block T1 as a sending state. After receiving the resource signaling, the single-hop neighbor node A7 of task node A2 finds that time slot block T1 is occupied by its own single-hop neighbor node, namely task node A5, indicating a resource conflict.
[0054] Similarly, if time slot block T1 is occupied by node A7's two-hop neighbor node A8 in frame Z1, and node A2 as a task node also wants to occupy time slot block T1 in the next frame Z2, task node A2's single-hop neighbor node A7 receives resource signaling and finds that time slot block T1 is occupied by its own two-hop neighbor node A8, indicating a resource conflict.
[0055] When a two-hop neighbor node sends resource signaling, it can only be transmitted to a single-hop neighbor node within one frame. Therefore, the instant resource signaling sent by the two-hop neighbor node cannot be transmitted within this frame, and this situation does not need to be considered.
[0056] The conflict resolution method is to count the total number of time slot blocks currently occupied by all resource applicants, and the resource applicants include the task node described in step 35 and the neighbor node occupying the time slot block; the one with fewer occupied time slot blocks has a higher priority. If the number of occupied time slot blocks is the same, the one with a smaller ID, i.e., identity tag number, is given priority. The conflict handling process is as follows: Figure 6 shown.
[0057] The present invention can avoid that individual nodes occupy resources for a long time during communication, causing other nodes to be unable to participate in communication normally, by identifying nodes that occupy more resources and preempting their occupied resources, thereby improving the fairness of resource allocation of each node during wireless ad hoc network communication.
[0058] It will be appreciated by those skilled in the art that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0059] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0060] The foregoing describes various preferred embodiments of the present invention. Unless the preferred implementation modes in various preferred embodiments are obviously self-contradictory or based on a certain preferred implementation mode, various preferred implementation modes can be arbitrarily superimposed and used in combination. The embodiments and specific parameters in the embodiments are only for clearly describing the invention verification process of the inventor, and are not used to limit the patent protection scope of the present invention. The patent protection scope of the present invention shall still be based on its claims. All equivalent structural changes made using the contents of the description and drawings of the present invention should be included in the protection scope of the present invention.
Claims
1. A wireless channel distributed access method, characterized in that , including the following steps: Step 1. Define the node that needs to apply for the time slot block as the task node. The task node first occupies the idle time slot block according to the task requirements. If the current idle time slot block is sufficient, the task node will directly carry out the task; Step 2. If there are not enough idle time slot blocks, the idle time slot blocks are occupied and the time slot block preemption process is entered; Step 3. For all neighbor nodes of the task node, find the neighbor node that occupies the most resource blocks, calculate the difference between the number of time slot blocks occupied by the neighbor node and the number of time slot blocks occupied by the task node, if it is not less than the set number threshold, the task node will seize a time slot block occupied by the neighbor node; The step 3 also includes a step 35, when there are more than two task nodes, conflict resolution is performed through step 35; Step 35. When any node AK receives the resource signaling from the task node, if it is found that a time slot block is marked as being in the sending state in the resource signaling sent by the task node, and the time slot block is currently occupied by a single-hop or double-hop neighbor node of the node AK, a conflict resolution is required, and the winner of the conflict resolution obtains the time slot block; The specific method of conflict resolution is to count the total number of time slot blocks currently occupied by all resource applicants, and the one with fewer occupied time slot blocks has a higher priority. If the number of occupied time slot blocks is the same, the one with a smaller identity tag number is given priority. The resource applicant includes the task node described in step 35 and the neighbor node occupying the time slot block, and the neighbor node occupying the time slot block is another task node. Step 4. Repeat steps 2 to 3 until the task node obtains enough time slot blocks, or the difference between the number of time slot blocks occupied by all neighbor nodes of the task node and the number of time slot blocks occupied by the task node is less than the set number threshold; Step 5. After step 4, if the difference between the number of time slot blocks occupied by all neighbor nodes and the number of time slot blocks occupied by the task node is less than the set number threshold, and the task node still has not obtained enough time slot blocks, it waits until the next frame and continues to repeat steps 2 to 4 until the task node obtains enough time slot blocks.
2. The wireless channel distributed access method according to claim 1, characterized in that: The neighbor node is a single-hop neighbor node of the task node. The specific process of the task node preempting the time slot block includes: Step 31. The task node sends a resource signaling to mark all the idle time slot blocks that have been seized and the time slot blocks to be occupied that have been occupied by the single-hop neighbor node as the sending state; Step 32. When any single-hop neighbor node receives the resource signaling sent by the task node, if it finds that a time slot block marked in the resource signaling is in the sending state and the time slot block is occupied by this node, then this node gives up this time slot block and marks it as the receiving state. If the time slot block is not occupied by this node, it is also marked as the receiving state and sends out resource signaling to update the time slot block state.
3. The wireless channel distributed access method according to claim 2, characterized in that: The neighbor nodes also include two-hop neighbor nodes of the task node. For the two-hop neighbor nodes, the specific process of the task node seizing the time slot block is as follows: Step 33. When any node AS receives resource signaling issued by a non-task node, if it finds that a time slot block marked in the resource signaling is in the receiving state and the time slot block is occupied by this node AS, the node AS unconditionally gives up the time slot block and marks it as idle.
4. The wireless channel distributed access method according to claim 1, characterized in that: The quantity threshold is 2.
Citation Information
Patent Citations
Communication resource management method of wireless network and node
CN117750552A