Method for implementing mac protocol based on clustering management and multi-priority scheduling

By using a MAC protocol based on cluster management and multi-priority scheduling, the network structure of the UAV ad hoc network is dynamically adjusted, solving the problems of difficult node access and low resource utilization, and realizing efficient network expansion and resource management.

CN116406015BActive Publication Date: 2026-05-01XIDIAN UNIV
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
XIDIAN UNIV
Filing Date
2023-03-20
Publication Date
2026-05-01

AI Technical Summary

Technical Problem

Traditional MAC protocols are difficult for nodes to access in UAV ad hoc networks, resulting in poor network flexibility and scalability, and low network resource utilization under low load.

Method used

The MAC protocol adopts cluster management and multi-priority scheduling. It dynamically changes the time frame length of the protocol through the cluster mechanism and introduces a time slot resource scheduling algorithm, which is decomposed into two stages: cluster management and time slot allocation. The network structure is dynamically adjusted to meet the needs of nodes for fast access and to perform differentiated management according to different priority services.

Benefits of technology

It improves the network scalability and flexibility of UAV self-organizing networks, enhances network resource utilization, and solves the problem of low resource utilization of traditional MAC protocols under low load.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116406015B_ABST
    Figure CN116406015B_ABST
Patent Text Reader

Abstract

The application discloses a MAC protocol implementation method based on clustering management and multi-priority scheduling, and is implemented according to the following steps: first, a node with completed initialization interacts neighbor information by periodically sending a HELLO packet, and then each node has neighbor information within a two-hop range, and a clustering degree value of the node is calculated based on multiple interaction packets; then, if there is no cluster head within the two-hop range, a cluster head election process is completed based on a clustering management mechanism, and the cluster is organized into clusters; if there is a cluster head within the two-hop range, window information broadcasted by the cluster head is listened to, and network access is requested within the window; finally, after clustering is completed, the cluster head periodically completes cluster group maintenance, information aggregation and time slot resource scheduling according to a TDMA time frame structure; and the method divides the cluster into multiple clusters for independent management through the clustering mechanism, and solves the problems of difficult node access, poor flexibility and poor expansibility of the network of the traditional MAC protocol.
Need to check novelty before this filing date? Find Prior Art

Description

MAC Protocol Implementation Method Based on Cluster Management and Multi-Priority Scheduling Technical Field

[0001] This invention belongs to the field of UAV ad hoc network communication protocol technology, and relates to a MAC protocol implementation method based on cluster management and multi-priority scheduling. Background Technology

[0002] With the continuous development of information technology, various new types of networks are emerging. Unmanned Aerial Vehicle (UAV) Ad Hoc Network (UANET), as a novel network architecture, extends the concepts of Mobile Ad Hoc Network (MANET) and Vehicular Ad Hoc Networks (VANET) to UAV communication. UAV nodes can both transmit and receive data and perform routing and relay functions. All nodes acquire network information through information exchange, enabling them to autonomously build highly adaptable distributed networks. Compared to traditional wireless mobile ad hoc networks, UANET, with its high-speed mobility, rapid deployment, and dynamic topology, can achieve autonomous, intelligent, and collaborative networking. Due to the crucial strategic importance of unmanned swarm warfare, UANET will inevitably become an indispensable component of modern military warfare.

[0003] In UANET, the Medium Access Control (MAC) protocol, as a low-level component of the architecture, controls channel access and provides each node in the network with a way to access the channel. It plays a crucial role in transmission latency, delivery success rate, and access efficiency. However, due to the large number of UAV nodes, high-speed movement, and dynamic changes in topology in UANET scenarios, traditional MAC protocols, while effectively eliminating channel collisions and achieving high throughput performance in high-load networks, suffer from static channel allocation methods that make it difficult for nodes to access the network. This results in poor network flexibility and scalability, and also leads to low network resource utilization under low load conditions. Summary of the Invention

[0004] The purpose of this invention is to provide a MAC protocol implementation method based on cluster management and multi-priority scheduling, which solves the problems of difficult access for each node and poor network flexibility and scalability in traditional MAC protocols.

[0005] The technical solution adopted in this invention is a MAC protocol implementation method based on cluster management and multi-priority scheduling, which is implemented according to the following steps:

[0006] Step 1: After each node of the drone is powered on, it first performs a self-test and initialization of the hardware and software, and waits for T1 time. During T1 time, each node of the drone listens to the neighbor information broadcast by the surrounding nodes. Based on the information listened to, it determines whether there is a cluster head within two hops of the drone node. If there is a cluster head, the drone node enters the waiting to join the network stage. If there is no cluster head, the drone node enters the information interaction stage.

[0007] Step 2: During the information exchange phase, each node of the UAV periodically sends HELLO packets within time T2 to exchange information. If each node of the UAV detects a cluster head node within two hops, it directly enters the waiting to join the network phase. Otherwise, each node of the UAV continues to exchange information until time T2 is exceeded, at which point each node of the UAV enters the cluster head generation phase.

[0008] Step 3: In the cluster head generation stage, each node of the UAV completes the cluster head election through the cluster management mechanism, thus completing the process of generating the cluster head and cluster group;

[0009] Step 4: Each node of the drone continues to determine whether it is a cluster head. If it is, it enters the cluster maintenance phase; if not, it is a cluster node and each cluster node enters the waiting to join the network phase.

[0010] Step 5: During the cluster maintenance phase, each cluster head sends NMOP packets according to the TDMA time frame structure period. At the same time, each cluster node in the waiting-to-join-network phase continuously listens to the NMOP packet information broadcast by the cluster head within time T3 and determines whether the NMOP packet information contains network access window information. If it does, the cluster node in the waiting-to-join-network phase obtains the corresponding window information and enters the network access request phase. If the cluster node in the waiting-to-join-network phase does not detect network access window information in the NMOP packet within time T3, it returns to step 1 to continue the operation.

[0011] Step 6: During the network access request phase, cluster nodes in the network access request phase will send network access requests within the corresponding time period according to the window information and enter the waiting response phase. At the same time, each cluster head receives the network access request information sent by the nodes in its own cluster, writes the network access response into the NMOP packet, and broadcasts it in the next cycle. Each cluster node in the waiting response phase continuously receives the NMOP packet information sent by the cluster head during time T4 and determines whether the NMOP packet information contains its own node ID information. If it contains its own node ID information, it means that the network access is successful and enters the information aggregation phase. If no information containing its own node ID is detected within time T4, it enters the waiting network access phase and returns to the execution of step 5.

[0012] Step 7: During the information aggregation phase, each cluster node waits for the arrival of the time slot and sends a CIC packet based on the information aggregation time slot arrangement information in the NMOP packet sent by the cluster head. The cluster head summarizes and classifies all the collected CIC packet information, and completes the centralized scheduling of time slot resources based on the queue information and channel quality information of each cluster node in the CIC packet. At the same time, the cluster head also updates the backup cluster head based on the clustering metric value of each cluster node in the CIC packet and determines whether the cluster head switching condition is triggered. Finally, the cluster head publishes the time slot allocation result and backup cluster head information through TSA packets, and its one-hop neighbor broadcasts and floods it to the entire cluster.

[0013] Step 8: After receiving the TSA packets sent by their respective cluster heads, the cluster nodes in each cluster send data according to the time slot allocation results. Each cluster node can only send data within its allocated time slot and remains in a receiving state at other times. At the same time, each cluster node determines whether the standby cluster head has been activated based on the received TSA packet information. If activated, the standby cluster head is promoted to the new cluster head and replaces the original cluster head to maintain the cluster. The new cluster head enters the cluster maintenance phase and returns to the operation in Step 5 above. If not activated, it continues to act as a member node and obey the unified management of the cluster head, and returns to the operation in Step 7 above.

[0014] The invention is further characterized by:

[0015] Step 2 specifically includes the HELLO grouping information:

[0016] The fields include group type identifier, node ID, neighbor node ID, cluster head ID for election or request to join, current cluster metric value, and request to join network identifier. All fields default to 0 if not specified.

[0017] The specific cluster management mechanism in step 3 is as follows:

[0018] Step 3.1: Each node of the UAV calculates its own clustering metric value based on the HELLO grouping information exchanged between nodes in Step 2.

[0019] The specific method for calculating the clustering measure value of a node itself, as described in step 3.1, is as follows:

[0020] The clustering metric comprehensively considers factors such as the average neighbor distance, average link hold time, and the difference between ideal node degrees for each node on the UAV. The final clustering metric is obtained by weighting the various factors measured at each node of the UAV. for:

[0021]

[0022] in, , and The weight values ​​for different factors satisfy... and ;

[0023] The average neighbor distance index is corrected for the distribution reliability function;

[0024] The average link hold time is obtained by averaging the link hold times of all one-hop neighbor nodes.

[0025] The optimal node degree difference between two hops. , , The calculation formulas are as follows:

[0026]

[0027]

[0028]

[0029] in, For nodes and The distance between; Represents a node A set of neighbors that jumps one hop; Represents a node The degree of a node, i.e., the number of all one-hop neighbors; , and These represent the distances from the center node. The distance is , and The number of one-hop neighbor nodes; This represents the transmission coverage radius of the node; for It may remain at Duration of coverage; Indicates the total number of nodes in the cluster; Indicates the degree of a two-hop node, i.e., the node The number of all one-hop and two-hop neighbors.

[0030] Step 3.2: Each node of the UAV compares its clustering measure value with the other node and selects the node with the largest clustering measure value within a two-hop range as the cluster head.

[0031] The NMOP packet information in step 5 is as follows:

[0032] NMOP packets contain: packet type identifier, cluster ID, cluster head ID, node ID in the current cluster, one-hop neighbor ID of the cluster head, network entry window information, and information aggregation phase time slot arrangement field. The values ​​of each field are all defaulted to 0 when not determined.

[0033] The specific TDMA time frame structure in step 5 is as follows:

[0034] The TDMA time frame structure divides time into superframes, and N+1 superframes form a complete TDMA superframe. The 0th superframe of the TDMA superframe is used for network time synchronization, and so on. Each superframe is used for cluster management and data transmission. Each superframe can be further divided into four frames in time: cluster control frame, information aggregation frame, time slot allocation control frame, and data transmission frame.

[0035] The specific CIC and TSA packet information in step 7 is as follows:

[0036] CIC group information includes: group type identifier, neighbor node ID, the current node's CI block, and several other nodes' CI blocks. Each CI block contains not only the node ID and the clustering metric value for the current period, but also the length information of each priority queue of the node and the queue head delay information.

[0037] TSA packet information includes: packet type identifier, cluster ID, cluster head ID, spare cluster head ID, cluster head switching flag bit, and several time slot allocation results (TSAR).

[0038] In step 7, a distance-based aggregation transmission strategy is used between the cluster head and each cluster node. Specifically, the distance-based aggregation transmission strategy is as follows:

[0039] For nodes that are two hops away from the cluster head, information is sent first. For nodes that are one hop away from the cluster head, information from the two hop nodes is received and aggregated before being sent to the cluster head.

[0040] The specific steps of the time slot resource scheduling algorithm in step 7 are as follows:

[0041] Step 7.1: The cluster head first obtains the queue information of all nodes in the cluster, and then calculates the priority of each service queue based on the QoS requirements, channel quality indicators, queue length and queue head delay of each node in the cluster.

[0042] The specific calculation method for the priority of each business queue in step 7.1 is as follows:

[0043] Priority of queue j of node i The calculation formula is as follows:

[0044]

[0045] Where k is the k-th TDMA superframe, i is a node i, and j is the j-th queue of node i. It is the maximum packet loss rate that queue j of node i can accept. It is the latency threshold that queue j of node i can tolerate, through and Reflecting the QoS differences of various business types, j can be divided into three priorities: high, mid, and low. It is the queue length of queue type j of node i after the k-th TDMA superframe mapping, and the specific calculation formula is as follows:

[0046]

[0047] in, This represents the MAC layer queue length of queue j of the i-th node in the k-th TDMA superframe. , , The model mapping parameters for the three types of business can be adjusted according to the differences in business flows. ;

[0048] It is a delay priority function based on protection boundary optimization, and the calculation formula is as follows:

[0049]

[0050] in, This represents the head packet waiting time of queue type j of node i in the kth TDMA superframe, where PT is the protection threshold. .

[0051] In the first TDMA superframe nodes The mean SINR after sampling multiple received packets. The update formula is as follows:

[0052]

[0053] in, It is a time window constant used to smooth system performance and fairness.

[0054] The delay mean factor of queue j of node i in the k-th TDMA superframe is represented by the following formula:

[0055]

[0056] Step 7.2: Based on the priority of the queue, the scheduler in the cluster head allocates time slots to each node in the cluster according to the number of available time slots.

[0057] The activation condition for whether the backup cluster head is activated in step 8 is:

[0058] The node ID receiving the TSA packet information is equal to the backup cluster head ID in the TSA packet information, and the cluster head switching flag is 1.

[0059] The beneficial effects of this invention are:

[0060] This invention relates to a MAC protocol implementation method based on cluster management and multi-priority scheduling. This method decomposes the MAC protocol in UANET into two stages: cluster management and time slot allocation. By dynamically changing the time frame length of the protocol through the clustering mechanism, it can meet the fast access requirements of nodes and enhance the scalability and flexibility of the network. At the same time, this method introduces a time slot resource scheduling algorithm to further realize differentiated treatment of services with different priorities and efficient management of time slot resources, solving the problem of low network resource utilization of traditional MAC protocols under low load. Attached Figure Description

[0061] Figure 1 is an overall flowchart of the MAC protocol implementation method based on cluster management and multi-priority scheduling of the present invention;

[0062] Figure 2 is a schematic diagram of the structure of the HELLO group in the MAC protocol implementation method based on cluster management and multi-priority scheduling of the present invention;

[0063] Figure 3 is a schematic diagram of the NMOP packet structure in the MAC protocol implementation method based on cluster management and multi-priority scheduling of the present invention;

[0064] Figure 4 is a schematic diagram of the time frame structure of the TDMA protocol in the MAC protocol implementation method based on cluster management and multi-priority scheduling of the present invention;

[0065] Figure 5 is a schematic diagram of the CIC packet structure in the MAC protocol implementation method based on cluster management and multi-priority scheduling of the present invention;

[0066] Figure 6 is a schematic diagram of the structure of the CI block in the MAC protocol implementation method based on cluster management and multi-priority scheduling of the present invention;

[0067] Figure 7 is a schematic diagram of the TSA packet structure in the MAC protocol implementation method based on cluster management and multi-priority scheduling of the present invention;

[0068] Figure 8 is a schematic diagram of centralized data slot scheduling of the MAC protocol implementation method based on cluster management and multi-priority scheduling of the present invention;

[0069] Figure 9 is a schematic diagram of the specific implementation process of the MAC protocol implementation method based on cluster management and multi-priority scheduling of the present invention. Detailed Implementation

[0070] The present invention will now be described in detail with reference to the accompanying drawings and specific embodiments.

[0071] This invention is based on a MAC protocol implementation method using cluster management and multi-priority scheduling, as shown in Figure 1. The method is implemented according to the following steps:

[0072] Step 1: After each node of the drone is powered on, it first performs self-checks and initialization of the hardware and software, and waits for T1 time. During T1 time, each node of the drone listens to the neighbor information broadcast by the surrounding nodes. Based on the information listened to, it determines whether there is a cluster head within two hops of the drone node. If there is a cluster head, the drone node enters the waiting to join the network stage. If there is no cluster head, the drone node enters the information interaction stage. The waiting time T1 is to prevent the phenomenon of multiple nodes not powered on or just powered on, and to avoid each node becoming an isolated node when it is powered on. After T1 time, each node enters the information interaction stage.

[0073] Step 2: During the information exchange phase, each node of the drone periodically sends HELLO packets to exchange information within time T2. If each node of the drone detects a cluster head node within a two-hop range, it directly enters the waiting to join the network phase. Otherwise, each node of the drone continues to exchange information until time T2 is exceeded, at which point each node of the drone enters the cluster head generation phase. After the information exchange of time T2, each node will have neighbor information within a two-hop range.

[0074] The HELLO grouping information in step 2 includes:

[0075] The fields include group type identifier, node ID, neighbor node ID, cluster head ID for election or request to join, current cluster metric value, and request to join network identifier. All fields default to 0 when not specified.

[0076] The structure of the HELLO packet is shown in Figure 2. The Type field, occupying 4 bits, distinguishes different packet types. The NodeID field represents the ID of the sending node; CHID represents the cluster head ID for which the node is requesting to join; the CM field represents the clustering metric value measured by the node; the NC field represents the number of one-hop neighbors of the cluster head, occupying 4 bits, with each node having a maximum of 16 one-hop neighbors; the J flag indicates whether the packet is used to request to join a cluster. If J is set, CHID represents the cluster head ID for which the node is requesting to join, and Forward noede ID represents the node ID used to forward the packet; if J is 0, both CHID and Forward noede ID are invalid; the Rev field is a reserved field used for protocol extensions; the Neighbor ID field represents the node's neighbor ID table, occupying 4 bits. Each bit. During the cluster maintenance phase, Node ID, CH ID, J, and Forward node ID are used to request joining the cluster; CRC is used to check the packet.

[0077] During the cluster generation phase, all nodes exchange neighbor information through the Node ID, NC, and Neighbor ID fields, maintain a local two-hop neighbor information table, and calculate clustering metrics based on this grouping. During the cluster head election phase, Node ID and CM are used in the relevant algorithms for electing the cluster head.

[0078] Step 3: In the cluster head generation stage, each node of the UAV completes the cluster head election through the cluster management mechanism, thus completing the process of generating the cluster head and cluster group;

[0079] The specific cluster management mechanism in step 3 is as follows:

[0080] Step 3.1: Each node of the UAV calculates its own clustering metric value based on the HELLO grouping information exchanged between nodes in Step 2.

[0081] The specific method for calculating the clustering measure value of a node itself, as described in step 3.1, is as follows:

[0082] The clustering measure value comprehensively considers factors such as average neighbor distance, average link hold time, and the difference between ideal node degrees for two hops. The final clustering measure value is obtained by weighting the various factors measured by each node of the UAV. for:

[0083]

[0084] in, , and The weight values ​​for different factors satisfy... and ;

[0085] The average neighbor distance index is corrected for the distribution reliability function;

[0086] The average link hold time is obtained by averaging the link hold times of all one-hop neighbor nodes.

[0087] The optimal node degree difference between two hops. , , The calculation formulas are as follows:

[0088]

[0089]

[0090]

[0091] in, For nodes and The distance between; Represents a node A set of neighbors that jumps one hop; Represents a node The degree of a node, i.e., the number of all one-hop neighbors; , and These represent the distances from the center node. The distance is , and The number of one-hop neighbor nodes; This represents the transmission coverage radius of the node; for It may remain at Duration of coverage; Indicates the total number of nodes in the cluster; Indicates the degree of a two-hop node, i.e., the node The number of all one-hop and two-hop neighbors.

[0092] Step 3.2: Each node of the UAV compares its clustering measure value with the other node and selects the node with the largest clustering measure value within a two-hop range as the cluster head.

[0093] Step 4: Each node of the drone continues to determine whether it is a cluster head. If it is, it enters the cluster maintenance phase; if not, it is a cluster node and each cluster node enters the waiting to join the network phase.

[0094] Step 5: During the cluster maintenance phase, each cluster head sends Network Manager Operational Packet (NMOP) according to the time division multiple access (TDMA) time frame structure period. At the same time, each node in the waiting-to-join-the-network phase continuously listens for the NMOP packet information broadcast by the cluster head within time T3 and determines whether the NMOP packet information contains the network access window information. If it does, the cluster node in the waiting-to-join-the-network phase obtains the corresponding window information and enters the network access request phase. If the node in the waiting-to-join-the-network phase does not detect the network access window information in the NMOP packet within time T3, it returns to step 1 to continue the operation.

[0095] The specific NMOP packet information in step 5 is as follows:

[0096] NMOP packets contain: packet type identifier, cluster ID, cluster head ID, node ID in the current cluster, one-hop neighbor ID of the cluster head, network entry window information, and information aggregation phase time slot arrangement field. The values ​​of each field are all defaulted to 0 when not determined.

[0097] The specific structure of the NMOP group is shown in Figure 3. The Type field, occupying 4 bits, is used to distinguish the group types. The ClusterID field indicates the cluster ID number, occupying 7 bits, and can identify up to 128 sub-clusters. The CHID field indicates the ID of the cluster head, occupying 10 bits, and can identify up to 1024 nodes. The StandbyCHID field is used to declare the standby cluster head ID. The T field indicates whether the standby cluster head ID is effective. If it is set to 1, it indicates that the designated standby cluster head will be promoted to the new cluster head in the next cycle; if it is set to 0, it is ineffective. The OLNC field indicates the number of nodes in the current cluster, occupying 5 bits, and each sub-cluster can accommodate up to 32 nodes. The NC field indicates the number of one-hop neighbors of the cluster head, occupying 4 bits, and each node can have up to 16 one-hop neighbors. The RWC field indicates the number of time slots occupied by the requested network entry window. ICC indicates the number of time slots occupied by information aggregation. The FTSAO field represents the offset of the FTSA field from the start of the packet, in bytes; the ICTSAO field represents the offset of the ICTSA field from the start of the packet, in bytes; the PTK Len field represents the length of the NMOP packet, in bytes; the Seq Num field is the packet sequence number used in the broadcast flooding phase; if a node receives the same packet, it is discarded; the Rev field is a reserved field used for protocol extensions; the Time field is the node's timestamp used for coarse synchronization; the OLNI field is a set of node IDs within the current cluster; nodes applying to join the network can use this field to determine whether their network entry was successful; the FTSA field is the set of the sending order of each node in the one-hop neighbor forwarding phase of the control frame, and its starting position is indicated by the FTSAO field; the ICTSA field is the set of time slot arrangements in the information aggregation phase of the information frame, and its starting position is indicated by the ICTSAO field; this field enables the function of gradually aggregating the entire network information from the edge nodes of the cluster to the cluster head, greatly saving cluster maintenance time; CRC is used to check packets; the Und field indicates that the size of the field needs to be determined according to the actual situation.

[0098] The specific TDMA time frame structure in step 5 is as follows:

[0099] The TDMA time frame structure, as shown in Figure 4, divides time into superframes. N+1 superframes constitute a complete TDMA superframe. The 0th superframe is used for network time synchronization, and so on. Each superframe is used for cluster management and data transmission. Each superframe can be further divided into four frames in time: cluster control frame, information aggregation frame, time slot allocation control frame, and data transmission frame, as detailed below:

[0100] The cluster control frame is divided into a cluster head (CH) broadcast phase and a one-hop neighbor forwarding phase, where the number of 'a' is dynamically specified by the cluster head based on its one-hop neighbor information. This control frame is used to broadcast NMOP packets, which carry cluster maintenance information, the size of the entry window (b), the size of the information aggregation phase (c), and the transmission order.

[0101] The information convergence frame is divided into two stages: the network entry window and the information convergence. Nodes that have not yet joined the network can send a network entry request to the cluster head through the network entry window. Nodes that have already joined the network send their Cluster Information Converge (CIC) packets at the corresponding time according to the information convergence schedule. These packets contain the node's neighbor information, priority queue information, channel quality information, and clustering metric values.

[0102] In the time slot allocation control frame, after the information aggregation is completed, the cluster head summarizes and classifies all the received information, executes the time slot resource scheduling algorithm based on the collected queue information and channel quality, calculates the priority of each cluster node queue, and completes the reasonable allocation of data time slots. In addition, the backup cluster head will be updated according to the clustering metric value. All of the above information will be broadcast during this stage.

[0103] Data transmission frames are generated by cluster nodes sending data according to time slots. Nodes can only send data within their assigned time slots and remain in a receiving state at other times.

[0104] Step 6: During the network access request phase, cluster nodes in the network access request phase will send network access requests within the corresponding time period according to the window information and enter the waiting response phase. At the same time, each cluster head receives the network access request information sent by the nodes in its own cluster, writes the network access response into the NMOP packet, and broadcasts it in the next cycle. Meanwhile, each cluster node in the waiting response phase continuously receives the NMOP packet information sent by the cluster head within time T4 and determines whether the NMOP packet information contains its own node ID information. If it contains its own node ID information, it means that the network access is successful and enters the information aggregation phase. If no information containing its own node ID is detected within time T4, it enters the waiting network access phase and returns to the execution of step 5.

[0105] Step 7: During the information aggregation phase, each cluster node waits for the arrival of the time slot and sends a CIC packet based on the information aggregation time slot arrangement information in the NMOP packet sent by the cluster head. The cluster head summarizes and classifies all the collected CIC packet information, and completes centralized scheduling of time slot resources based on the queue information and channel quality information of each cluster node in the CIC packet. At the same time, the cluster head also updates the backup cluster head based on the clustering metric value of each cluster node in the CIC packet and determines whether the cluster head switching condition is triggered. Finally, the cluster head publishes the time slot allocation result and backup cluster head information through TSA packets, and its one-hop neighbor broadcasts and floods it to the entire cluster.

[0106] The CIC packet information and TSA packet information in step 7 are as follows:

[0107] CIC group information includes: group type identifier, neighbor node ID, the current node's CI block, and several other nodes' CI blocks. Each CI block contains not only the node ID and the clustering metric value for the current period, but also the length information of each priority queue of the node and the queue head delay information.

[0108] The structure of the CIC packet is shown in Figure 5. The Type field distinguishes different packet types. The ClusterID field indicates the cluster ID, occupying 7 bits and capable of identifying up to 128 sub-clusters. The CHID field indicates the cluster head ID, occupying 10 bits and capable of identifying up to 1024 nodes. The F field indicates whether the packet needs to be aggregated and transmitted by other nodes; nodes two hops from the cluster head need to set F to 1. The CIBC field indicates the number of CIBs contained in the packet; for packets with F set to 1, the CIBC value must be 1, meaning nodes two hops from the cluster head do not need to aggregate information from other nodes. The CIBO field indicates the offset of the CIB set from the start of the packet, in bytes. The CIBC and CIBO fields only need to be exchanged between one-hop neighbors and do not need to be aggregated to the cluster head. The NC field indicates the number of one-hop neighbors of the cluster head, occupying 4 bits; each node can have a maximum of 16 one-hop neighbors. The PTK Len field indicates the length of the NMOP packet, in bytes. The Rev field is a reserved field for protocol extensions. The Neighbor ID field represents the node's neighbor ID table, occupying 4 bits. Each CIB occupies 64 bits; CIBs represent information blocks that need to be aggregated to the cluster head. Nodes two hops from the cluster head have only one CIB, while the number of CIBs for nodes one hop from the cluster head is indicated by the CIBC field; CRC is used to check packets.

[0109] Further, in the CI block, as shown in Figure 6, the Node ID field represents the node's ID. FQ Len, HQ Len, MQLen, and LQ Len represent the length information of the node's pending forwarding, high, medium, and low priority queues, respectively, represented by the number of DATA packets. The SINR field represents the channel quality index measured in the previous cycle. If a node actively leaves the network, the Q flag needs to be set to 1 to notify all its neighbors and cluster heads to update their neighbor information tables and joining node tables, respectively. The HQ Delay, MQDelay, and LQ Delay fields represent the head delay information of the high, medium, and low priority queues, respectively. The CM field represents the clustering metric value measured by the node, used for electing a backup cluster head.

[0110] TSA packets include: packet type identifier, cluster ID, cluster head ID, spare cluster head ID, cluster head switching flag, and several time slot allocation results (TSAR).

[0111] The structure of a TSA packet is shown in Figure 7. The Type field distinguishes different packet types; the ClusterID field indicates the cluster ID, occupying 7 bits, and can identify up to 128 sub-clusters; the CHID field indicates the cluster head ID, occupying 10 bits, and can identify up to 1024 nodes; the StandbyCHID field declares the standby cluster head ID, and the T field indicates whether the standby cluster head ID is effective. If set to 1, it indicates that the designated standby cluster head will be promoted to the new cluster head in the next cycle; if set to 0, it is ineffective; the PTK Len field indicates the length of the NMOP packet in bytes; the Seq Num field is the packet sequence number used in the broadcast flooding phase. If a node receives the same packet, it will be discarded; the NC field indicates the number of one-hop neighbors of the cluster head, occupying 4 bits, and each node can have a maximum of 16 one-hop neighbors; the TSARC field indicates the number of TSARs in the time slot allocation result. Each data time slot is indicated by one or more TSAR fields, occupying a total of 8 bits. The first 5 bits are used to identify the node, using the ICTSA order from the information aggregation phase in the NMOP packet to represent the node ID, saving transmission overhead. The middle 2 bits are used to distinguish the four different queues. When the last bit is set to 1, it indicates that the same time slot is reused, and when it is set to 0, the subsequent time slot is used. The Rev field is a reserved field for protocol extension. The FTSA field is the set of transmission order of each node in the one-hop neighbor forwarding phase of the control frame, and its starting position is indicated by the FTSAO field. The CRC is used to check the packet.

[0112] Figure 8 illustrates the centralized scheduling of time slot resources in step 7. When various services arrive at a node, they are classified into high, medium, and low priorities and stored in the corresponding buffer queues. If there are packets to be forwarded, they are placed in the forwarding buffer queue. Cluster members report their queue information and channel quality information to the cluster head via CIC packets at appropriate times. After receiving the reports, the cluster head summarizes them and updates its local virtual queue information. Then, the cluster head executes the time slot resource scheduling algorithm, which considers QoS requirements, Channel Quality Indicator (CQI), and queue length. Team First Delay Based on basic information, the queue length is mapped, the mean delay factor and proportional fairness factor based on QoS and channel quality are calculated for each priority level, different delay priority functions are selected according to whether the delay exceeds the protection threshold, and finally the priority of each service queue is calculated. The cluster head's scheduler allocates time slots to each node based on the number of available time slots. The allocation results are then broadcast via TSA packets.

[0113] In step 7, a distance-based aggregation transmission strategy is adopted between the cluster head and each cluster node. The distance-based aggregation transmission strategy is specifically as follows:

[0114] For nodes that are two hops away from the cluster head, information is sent first. For nodes that are one hop away from the cluster head, information from the two hop nodes is received and aggregated before being sent to the cluster head.

[0115] The specific steps of the time slot resource scheduling algorithm in step 7 are as follows:

[0116] Step 7.1: The cluster head first obtains the queue information of all nodes in the cluster, and then calculates the priority of each service queue based on the QoS requirements, channel quality indicators, queue length and queue head delay of each node in the cluster.

[0117] The specific calculation method for the priority of each business queue in step 7.1 is as follows:

[0118] Priority of queue j of node i The calculation formula is as follows:

[0119]

[0120] Where k is the k-th TDMA superframe, i is a node i, and j is the j-th queue of node i. It is the maximum packet loss rate that queue j of node i can accept. It is the latency threshold that queue j of node i can tolerate, through and Reflecting the QoS differences of various business types, j can be divided into three priorities: high, mid, and low. It is the queue length of queue type j of node i after the k-th TDMA superframe mapping, and the specific calculation formula is as follows:

[0121]

[0122] in, This represents the MAC layer queue length of queue j of the i-th node in the k-th TDMA superframe. , , The model mapping parameters for the three types of business can be adjusted according to the differences in business flows. ;

[0123] It is a delay priority function based on protection boundary optimization, and the calculation formula is as follows:

[0124]

[0125] in, This represents the head packet waiting time of queue type j of node i in the kth TDMA superframe, where PT is the protection threshold. .

[0126] In the first TDMA superframe nodes The mean SINR after sampling multiple received packets. The update formula is as follows:

[0127]

[0128] in, It is a time window constant used to smooth system performance and fairness.

[0129] The delay mean factor of queue j of node i in the k-th TDMA superframe is represented by the following formula:

[0130]

[0131] Step 7.2: Based on the priority of the queue, the scheduler in the cluster head allocates time slots to each node in the cluster according to the number of available time slots. The principle of time slot allocation is to allocate different time slots to nodes within a two-hop range to prevent collisions and hidden station issues. Nodes outside the two-hop range can reuse time slots to improve the utilization of channel resources and access efficiency, and increase network throughput. In addition, the cluster head updates the backup cluster head based on the clustering metric of each node and determines whether the cluster head switching condition is triggered. Finally, the cluster head publishes the time slot allocation results and backup cluster head information through TSA packets.

[0132] Step 8: After receiving the TSA packets sent by their respective cluster heads, the nodes in each cluster send data according to the time slot allocation results. Each node can only send data within its allocated time slot and remains in receiving state at other times. At the same time, each node determines whether the standby cluster head has been activated based on the received TSA packet information. If activated, the standby cluster head is promoted to the new cluster head and replaces the original cluster head to maintain the cluster. The new cluster head enters the cluster maintenance phase and returns to the operation in Step 5 above. If not activated, it continues to act as a member node and obey the unified management of the cluster head, and returns to the operation in Step 7 above.

[0133] This invention is based on a MAC protocol implementation method using cluster management and multi-priority scheduling. It decomposes the MAC protocol in UANET into two stages: cluster management and time slot allocation. The cluster mechanism dynamically changes the frame length of the protocol, and the cluster is divided into multiple independently managed clusters. The cluster head completes the reasonable allocation of time slot resources within the cluster and the maintenance of the cluster based on the QoS requirements, channel quality, queue information, and cluster metric values ​​of the cluster members. This solves the problems of difficult node access and poor network flexibility and scalability when using static channel allocation in traditional MAC protocols. Furthermore, the introduction of a time slot resource scheduling algorithm further enables differentiated treatment of services with different priorities and efficient management of time slot resources, effectively improving network resource utilization.

[0134] The activation condition for whether the backup cluster head is activated in step 8 is as follows:

[0135] The node ID receiving the TSA packet information is equal to the backup cluster head ID in the TSA packet information, and the cluster head switching flag is 1.

[0136] The present invention is based on a MAC protocol implementation method of cluster management and multi-priority scheduling. The specific implementation principle is shown in Figure 9, and is as follows:

[0137] Node 1, acting as the cluster head, sends an NMOP packet during the cluster head broadcast phase, which is then flooded to the entire cluster by its one-hop neighbors 2, 3, 4, and 5. Nodes 13 and 14, not yet joined, move to the cluster head's two-hop range at this time and compete to send HELLO packets to request joining within the joining window. To accelerate cluster maintenance without losing information about cluster edge nodes, a convergence-based transmission strategy is adopted. Starting from the cluster head's two-hop nodes 6, 7, 8, 9, 10, 11, and 12, CIC packets are transmitted from farthest to nearest. Nodes 2, 3, 4, and 5 within the cluster head's one-hop range collect this information and merge it into their own CIC packets, sending them to the cluster head in their assigned transmission slots. After convergence, the cluster head collects information from all nodes and completes slot allocation. The cluster head broadcasts the resource allocation results via TSA packets, which are then flooded to the entire cluster by its one-hop neighbors 2, 3, 4, and 5. During the data transmission phase, forwarded joining requests, relay data, and other information requiring forwarding are prioritized.

[0138] In mobile ad hoc networks with large scale, numerous nodes, and highly dynamic topology, this method satisfies the rapid access needs of nodes and enhances network scalability. On the other hand, it also enables differentiated treatment of services with different priorities and efficient management of time slot resources, effectively improving network resource utilization.

Claims

1. A MAC protocol implementation method based on cluster management and multi-priority scheduling, characterized in that, The specific implementation is as follows: Step 1: After each node of the drone powers on, it first performs self-checks and initialization of hardware and software, and waits for time T1. During time T1, each node of the drone listens to the neighbor information broadcast by surrounding nodes. Based on the listened information, it determines whether there is a cluster head within two hops of the drone node. If a cluster head exists, the drone node enters the waiting to join the network stage; if no cluster head exists, the drone node enters the information interaction stage. Step 2: During the information interaction stage, each node of the drone periodically sends HELLO packets for information interaction within time T2. If each node of the drone detects a cluster head node within two hops, it directly enters the waiting to join the network stage; otherwise, each node of the drone continues to interact with information until time T2 is exceeded, after which each node of the drone enters the cluster head generation stage. Step 3: During the cluster head generation stage, each node of the drone completes the cluster head election through the cluster management mechanism, completing the cluster head and cluster generation process. The specific cluster management mechanism in Step 3 is as follows: Step 3.1: Each node of the drone calculates its own clustering metric value based on the HELLO packets exchanged by each node in Step 2. Step 3:

2. Each node of the UAV compares its clustering metric value with others and selects the node with the largest clustering metric value within a two-hop range as the cluster head; Step 4. Each node of the UAV continues to determine whether it is a cluster head. If it is, it enters the cluster maintenance phase; if not, it is a cluster node and each cluster node enters the waiting-to-join-network phase; Step 5. During the cluster maintenance phase, each cluster head sends NMOP packets according to the TDMA time frame structure period. At the same time, each cluster node in the waiting-to-join-network phase continuously listens to the NMOP packet information broadcast by the cluster head within time T3 and determines whether the NMOP packet information contains network access window information. If so, the cluster node in the waiting-to-join-network phase obtains the corresponding window information and enters the network access request phase. In the request phase, if time T3 is exceeded and the cluster node in the waiting-to-join-network phase does not detect the network entry window information in the NMOP packet, then return to step 1 to continue the operation; Step 6: In the network entry request phase, the cluster node in the network entry request phase will send a network entry request within the corresponding time period according to the window information and enter the waiting-for-response phase. At the same time, each cluster head receives the network entry request information sent by the nodes in its own cluster, writes the network entry response into the NMOP packet, and broadcasts it in the next cycle. Each cluster node in the waiting-for-response phase continuously receives the NMOP packet information sent by the cluster head within time T4 and determines whether the NMOP packet information contains its own node's ID information. If it contains its own node's ID information... If the ID information is found, it indicates successful network access and the information aggregation phase begins. If no information containing its own node ID is detected within T4 time, the waiting phase for network access begins, and the process returns to step 5. Step 7: In the information aggregation phase, each cluster node waits for the arrival of the time slot and sends a CIC packet based on the information aggregation time slot arrangement information in the NMOP packet sent by the cluster head. The cluster head summarizes and classifies all collected CIC packet information, and completes centralized scheduling of time slot resources based on the queue information and channel quality information of each cluster node in the CIC packet. At the same time, the cluster head also updates the backup cluster head based on the clustering metric value of each cluster node in the CIC packet and determines whether the cluster head switching condition is triggered. Finally, the cluster... First, the time slot allocation results and backup cluster head information are published via TSA packets, and then broadcast and flooded to the entire cluster by its one-hop neighbor. In step 8, after receiving the TSA packets sent by their respective cluster heads, cluster nodes within each cluster send data according to the time slot allocation results. Each cluster node can only send data within its allocated time slot; otherwise, it remains in a receiving state. Simultaneously, each cluster node determines whether the backup cluster head has been activated based on the received TSA packet information. If activated, the backup cluster head is promoted to the new cluster head, replacing the original cluster head in maintaining the cluster. The new cluster head enters the cluster maintenance phase, and the process returns to step 5. If not activated, it continues as a member node under the unified management of the cluster head, and the process returns to step 7. The HELLO grouping information in step 2 specifically includes: grouping type identifier, node ID, neighbor node ID, cluster head ID for election or request to join, current clustering metric value, and request to join network identifier field. All field values ​​are defaulted to 0 when not determined. The specific method for calculating the clustering metric value of its own node in step 3.1 is as follows: The clustering metric value comprehensively considers the average neighbor distance, average link hold time, and two-hop ideal node degree difference between each node of the UAV. The final clustering metric value is obtained by weighting the various factors measured by each node of the UAV. for: in, 、 and The weight values ​​for different factors satisfy... and ; The average neighbor distance index is corrected for the distribution reliability function; The average link hold time is obtained by averaging the link hold times of all one-hop neighbor nodes. The optimal node degree difference between two hops. 、 、 The calculation formulas are as follows: in, For nodes and The distance between; Represents a node A set of neighbors that jumps one hop; Represents a node The degree of a node, i.e., the number of all one-hop neighbors; 、 and These represent the distances from the center node. The distance is 、 and The number of one-hop neighbor nodes; This represents the transmission coverage radius of the node; for It may remain at Duration of coverage; Indicates the total number of nodes in the cluster; Indicates the degree of a two-hop node, i.e., the node The number of all one-hop and two-hop neighbors; the NMOP packet information in step 5 is as follows: the NMOP packet includes: packet type identifier, cluster ID, cluster head ID, node ID in the current cluster, one-hop neighbor ID of the cluster head, network entry window information, and information aggregation phase time slot arrangement field. The value of each field is defaulted to 0 when it is not determined; the TDMA time frame structure in step 5 is as follows: the TDMA time frame structure divides time into superframes, and N+1 superframes form a complete TDMA superframe. The 0th superframe of the TDMA superframe is used for network time synchronization, and the 1st superframe is used for network time synchronization. Each superframe is used for cluster management and data transmission. Each superframe can be further divided into four frames in time: cluster control frame, information aggregation frame, time slot allocation control frame, and data transmission frame.

2. The MAC protocol implementation method based on cluster management and multi-priority scheduling according to claim 1, characterized in that, The CIC and TSA packet information in step 7 is as follows: The CIC packet information includes: packet type identifier, neighbor node ID, the CI block of this node, and several CI blocks of other nodes. Each CI block includes not only the node ID and the clustering metric value for this period, but also the length information of each priority queue of the node and the queue head delay information. The TSA packet information includes: packet type identifier, cluster ID, cluster head ID, spare cluster head ID, cluster head switching flag, and several time slot allocation results (TSAR). In step 7, the cluster head and each cluster node adopt a distance-based aggregation transmission strategy. The distance-based aggregation transmission strategy is as follows: nodes that are two hops away from the cluster head send information first, and nodes that are one hop away from the cluster head receive information from the two-hop nodes and aggregate it to send to the cluster head.

3. The MAC protocol implementation method based on cluster management and multi-priority scheduling according to claim 1, characterized in that, The specific steps of the time slot resource scheduling algorithm in step 7 are as follows: Step 7.1: The cluster head first obtains the queue information of all nodes in the cluster, and then calculates the priority of each service queue based on the QoS requirements, channel quality indication, queue length and queue head delay information of each node in the cluster; Step 7.2: Based on the priority of the queue, the scheduler in the cluster head allocates time slots to each node in the cluster according to the number of available time slots.

4. The MAC protocol implementation method based on cluster management and multi-priority scheduling according to claim 3, characterized in that, The specific calculation method for the priority of each business queue in step 7.1 is as follows: the priority of queue j of node i. The calculation formula is as follows: Where k is the k-th TDMA superframe, i is a node i, and j is the j-th queue of node i. It is the maximum packet loss rate that queue j of node i can accept. It is the latency threshold that queue j of node i can tolerate, through and Reflecting the QoS differences of various services, j can be divided into three priorities: high, mid, and low. It is the queue length of queue type j of node i after the k-th TDMA superframe mapping, and the specific calculation formula is as follows: in, This represents the MAC layer queue length of queue j of the i-th node in the k-th TDMA superframe. 、 、 The model mapping parameters for the three types of business can be adjusted according to the differences in business flows. ; It is a delay priority function based on protection boundary optimization, and the calculation formula is as follows: in, This represents the head packet waiting time of queue type j of node i in the kth TDMA superframe, where PT is the protection threshold. ; In the first TDMA superframe nodes The mean SINR after sampling multiple received packets. The update formula is as follows: in, It is a time window constant used to smooth system performance and fairness; The calculation formula is as follows: in, This represents the mean delay factor of queue j of node i in the k-th TDMA superframe.

5. The MAC protocol implementation method based on cluster management and multi-priority scheduling according to claim 1, characterized in that, The activation condition for whether the backup cluster head is activated in step 8 is: the node ID receiving the TSA packet information is equal to the backup cluster head ID in the TSA packet information, and the cluster head switching flag is 1.

Citation Information

Patent Citations

  • Method for clustering vehicle mounted Ad hoc network based on signal strength

    CN101207572A

  • Cluster head coordination based MAC / route integrated self-organization network design method

    CN104618245A

  • Multi-node cooperation unmanned aerial vehicle ad hoc network clustering topology reconstruction method

    CN113271643A