Time slot allocation method and system suitable for underwater dynamic topology network

By sorting nodes in the water acoustic communication network and using the time slot expansion mechanism of the mutual pixel fixed access period, the problems of uneven and insufficient time slot allocation in the water acoustic communication network are solved, and the smooth access of new nodes and efficient utilization of network resources are achieved.

CN119697771AActive Publication Date: 2025-03-25SOUTHEAST UNIV
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
CN202411596611.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-11
Publication Date
2025-03-25
Estimated Expiration
2044-11-11

AI Technical Summary

Technical Problem

There are problems in the aquatic communication network with uneven time slot allocation, insufficient time slots and no predicted conditions, which leads to fierce competition in channel resources and making it difficult to achieve efficient and stable networks.

Method used

By classifying nodes that do not cause channel conflicts, creating a conflict-free set, and through the time slot expansion and allocation mechanism of the mutual pixel fixed access period, channel resources are allocated to newly added nodes to achieve flexible expansion and allocation of time slots.

Benefits of technology

It effectively solves the problems of mobile node access and network expansion, ensures that new nodes can obtain channel resources without conflict, and improves the resource utilization and stability of the network.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119697771A_ABST
    Figure CN119697771A_ABST
Patent Text Reader

Abstract

The invention discloses a time slot allocation method and system suitable for an underwater dynamic topology network. Firstly, nodes are classified through a node independent set classification method based on underwater acoustic channel space-time non-interference, and then time slot expansion and distribution are carried out on the accessed nodes through a relatively prime fixed access period dynamic access time slot distribution mechanism. And finally, realizing whole-network channel resource information synchronization through a time slot delay capacity expansion mechanism, and updating the whole-network channel resource information. According to the invention, the problems of mobile node access and network capacity expansion can be effectively solved, channel resources can be allocated to newly added nodes, the channel resources are fully utilized, and the stability of the network is ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to a time slot allocation method and system suitable for an underwater dynamic topology network, belonging to the technical field of underwater acoustic communication. Background Art

[0002] In underwater acoustic communication networks, communication time is extended, channel bandwidth is narrow, and network topology often changes dynamically, resulting in fierce competition for channel resources. On the one hand, the node deployment cycle is long, and new nodes will join or leave; on the other hand, underwater mobile nodes are often used to perform some highly mobile tasks and need to be able to quickly access the network. In order to cope with such complex underwater acoustic dynamic network topology, it is very important to design an efficient MAC protocol to fully utilize channel resources.

[0003] There are the following difficulties in allocating time slots in a dynamic topology network:

[0004] (1) No foreseeable conditions

[0005] For a dynamic topology network, specific information in the network, such as the actual number of nodes in the network and the network topology, is unknown, which makes it difficult to achieve uniformity and correctness with the overall network when initializing the time slot.

[0006] (2) Uneven allocation of time slots

[0007] The traditional time slot allocation scheme is to allocate a time slot for each node in the network. However, when the number of time slots initially set is greater than the number of nodes, empty time slots will appear. At this time, how to allocate empty time slots to achieve the best performance of the entire network?

[0008] (3) Insufficient time slots

[0009] When there are too many nodes in the network and the number of time slots set during initialization can no longer meet the overall network needs, there will be a situation where there are not enough time slots. How to deal with this situation and allocate channel resources to newly added nodes without conflict? Summary of the invention

[0010] Purpose of the invention: In order to solve the above problems existing in the prior art, the purpose of the present invention is to propose a time slot allocation method and system suitable for underwater dynamic topology networks to achieve access of mobile nodes and network expansion.

[0011] Technical solution: To achieve the above purpose, the technical solution adopted by the present invention is:

[0012] A time slot allocation method applicable to an underwater dynamic topology network comprises the following steps:

[0013] Classify nodes that will not cause channel conflicts and create a conflict-free set consisting of multiple node subsets. Nodes in each node subset can occupy the same channel resources.

[0014] New nodes access the network through the time slot numbers reserved by the mutually prime fixed access cycle, and channel resources are allocated to the newly added nodes in the network through the time slot expansion and time slot allocation mechanism; when the total number of time slots is less than the total number of sets in the conflict-free list, the total number of time slots is increased to be mutually prime with the access cycle; if time slot expansion occurs, the expanded time slots are given to the new nodes; if time slot expansion does not occur, time slots are allocated according to node subsets;

[0015] When the time slot expansion occurs, a network-wide broadcast is triggered. The broadcast packet contains the latest time slot cycle information and the time slot information required by the new node. The old cycle before the time slot expansion is used when sending the broadcast packet. The time slot expansion is performed when all nodes in the network receive the broadcast packet.

[0016] Preferably, the location information is combined with the following two conditions to determine whether there is a channel conflict between the new node and other nodes in the network. If two nodes meet one of the conditions, it is determined that there is no channel conflict;

[0017] Condition 1: There is no conflict between the channels in their respective communication ranges;

[0018] Condition 2: There are no nodes in the communication range conflict area.

[0019] Preferably, when a new node requests to join, the step of classifying nodes that will not cause channel conflicts includes:

[0020] Update the Euclidean distance between nodes;

[0021] Determine whether there is a channel conflict between nodes in the network based on the distance array and node position;

[0022] Update the conflict-free list. When a new node is added, add the new node to the conflict-free list. If there is a node set that does not conflict with the new node, add it to that set. If not, create a separate node set that only contains the new node and add it to the conflict-free list.

[0023] Preferably, when a new node accesses the network through a time slot number reserved in a fixed access period, it can directly communicate with neighboring nodes and obtain information through timely interaction.

[0024] Preferably, the constant set when the fixed access period is initialized is coprime with the number of time slots in the network, and the remainders obtained by dividing any multiple of the fixed access period during initialization by the number of time slots after expansion are different, thereby ensuring that the probability of a time slot in the actual network period being occupied by a time slot used for new node access in the fixed access period is equal.

[0025] Preferably, the step of allocating time slots to the newly added nodes comprises:

[0026] 1) Create a matrix end_result to copy the time slot allocation results of the original network and use it to store the final selected time slot allocation scheme. At the same time, initialize an empty matrix Vec to store temporary time slot allocation results;

[0027] 2) Initialize the maximum number of time slots occupied by each node The minimum time slot uniformity variance S 2 min =INT_MAX; INT_MAX is the preset maximum integer;

[0028] 3) Determine whether time slot expansion has occurred. If so, assign the expanded time slot to the new node, modify the time slot allocation result in end_result, and jump to step 11), otherwise continue;

[0029] 4) Determine whether the newly added node is a separate set that only contains itself in the conflict-free list. Otherwise, directly allocate the time slot occupied by the node set it joins to the new node, modify the time slot allocation result in end_result, and jump to step 11). If yes, continue;

[0030] 5) Take the node set V that occupies the largest number of time slots in the conflict-free list i and from the node set V i The corresponding time slot set L i In, randomly select the jth time slot and assign it to the new node;

[0031] 6) Put the current time slot allocation scheme into Vec and calculate the average number of time slots occupied by each node in Vec and the time slot uniformity variance S 2 ;

[0032] 7) Judgment Is it greater than If yes, it means that the average number of time slots occupied by the nodes in the time slot allocation scheme in Vec is greater than the time slot allocation scheme in end_result, otherwise jump to step 9);

[0033] 8) Update the solution in end_result and set S 2 mim =S 2 , return to step 5);

[0034] 9) Judgment Is it equal to Otherwise, stop the time slot allocation, indicating that the time slot allocation scheme in Vec is inferior to the time slot allocation scheme in end_result, and jump to step 11), if yes, continue;

[0035] 10) Determine S 2 Is it less than S? 2 min If yes, it means that the time slot allocation uniformity of the time slot allocation scheme in Vec is better than the time slot allocation scheme in end_result, return to step 8), otherwise continue;

[0036] 11) Allocation is completed.

[0037] Preferably, the delayed expansion time in the broadcast packet is calculated by simulating the sending of the broadcast packet, starting from the central node, simulating the forwarding of the broadcast packet according to the time slot, and marking each point where the broadcast packet is received until all nodes in the network are covered. At this time, the entire network is updated, the time point is recorded, and it is placed in the broadcast packet.

[0038] A time slot allocation system suitable for an underwater dynamic topology network, comprising:

[0039] The node classification module is used to classify nodes that will not cause channel conflicts and create a conflict-free set consisting of multiple node subsets. The nodes in each node subset can occupy the same channel resources.

[0040] The dynamic access and time slot allocation module is used for new nodes to access the network through the time slot numbers reserved by the mutually prime fixed access cycle, and allocate channel resources to the newly added nodes in the network through the time slot expansion and time slot allocation mechanism; when the total number of time slots is less than the total number of sets in the conflict-free list, the total number of time slots is increased to be mutually prime with the access cycle; if the time slot expansion occurs, the expanded time slots are given to the new node; if the time slot expansion does not occur, the time slots are allocated according to the node subset;

[0041] And the delayed expansion module is used to trigger the whole network broadcast when the time slot expansion occurs. The broadcast packet contains the latest time slot cycle information and the time slot information required by the new node. When sending the broadcast packet, the old cycle before the time slot expansion is used. When all nodes in the network receive the broadcast packet, the time slot expansion is performed.

[0042] A computer system comprises a memory, a processor and a computer program / instruction stored in the memory and executable on the processor. When the computer program / instruction is executed by the processor, the steps of a time slot allocation method applicable to an underwater dynamic topology network are implemented.

[0043] A computer program product comprises a computer program / instruction, wherein when the computer program / instruction is executed by a processor, the steps of a time slot allocation method applicable to an underwater dynamic topology network are implemented.

[0044] Beneficial effects: The present invention provides a time slot allocation method and system suitable for underwater dynamic topology networks. First, nodes are classified by a node independent set classification method based on the non-interference of time and space in underwater acoustic channels. Then, time slots are expanded and allocated for accessed nodes by a node dynamic access time slot allocation mechanism through a mutually prime fixed access cycle. Finally, a time slot delay expansion mechanism is used to synchronize the channel resource information of the entire network and update the channel resource information of the entire network. The present invention can effectively solve the problems of mobile node access and network expansion, and can allocate channel resources for newly added nodes. It can ensure that the probability of a time slot in the actual network cycle being occupied by a time slot used for new node access in a fixed access cycle is equal, making full use of channel resources and ensuring the stability of the network. BRIEF DESCRIPTION OF THE DRAWINGS

[0045] Figure 1 It is a flowchart of the present invention;

[0046] Figure 2 This is a schematic diagram of the modules in the topology information updating phase;

[0047] Figure 3 A schematic diagram of the module for the time slot allocation result generation phase;

[0048] Figure 4 It is a schematic diagram of the module of the time slot information synchronization stage;

[0049] Figure 5 This is a schematic diagram of 16 fixed nodes access in the example;

[0050] Figure 6 It is a schematic diagram of mobile node access in the example;

[0051] Figure 7 This is a schematic diagram of the final time slot allocation results in the example. DETAILED DESCRIPTION

[0052] The embodiments of the present invention are further described below in conjunction with the accompanying drawings:

[0053] like Figure 1As shown, a time slot allocation method suitable for an underwater dynamic topology network disclosed in an embodiment of the present invention mainly includes the following steps: first, nodes are classified by a node independent set classification method based on the non-interference of time and space in the underwater acoustic channel, specifically, nodes that will not cause channel conflicts are classified, and a conflict-free set composed of multiple node subsets is created, and the nodes in each node subset can occupy the same channel resources; then, time slots are expanded and allocated for the accessed nodes by a node dynamic access time slot allocation mechanism through a mutually prime fixed access cycle, specifically, the new node accesses the network through the time slot number reserved by the mutually prime fixed access cycle, and the time slot expansion and time slot allocation mechanism is used for Allocate channel resources to newly added nodes in the network; when the total number of time slots is less than the total number of sets in the conflict-free list, increase the total number of time slots to be coprime with the access period; if time slot expansion occurs, give the expanded time slots to the new node; if time slot expansion does not occur, allocate time slots according to the node subset; finally, synchronize the channel resource information of the entire network through a time slot delay expansion mechanism, and update the channel resource information of the entire network. Specifically, when time slot expansion occurs, trigger a network-wide broadcast, the broadcast packet contains the latest time slot cycle information and the time slot information required by the new node, and the old cycle before the time slot expansion is used when sending the broadcast packet. When all nodes in the network receive the broadcast packet, the time slot expansion is performed. The relevant access mechanism and processing flow involved in the embodiment of the present invention are described in detail below.

[0054] In the embodiment of the present invention, the underwater fixed node and the mobile node access the original network through a fixed access mechanism;

[0055] The fixed access mechanism designs a fixed access cycle specifically for new node access. The fixed access cycle is a fixed value set during initialization (init_cycle). The time slot number used for new node access in the cycle is res_timeslot. The time slot number (now_timeslot) of the current time (now_time) can be calculated through the fixed value set for the fixed access cycle. When the calculated time slot number of the current time is equal to the time slot number used for new node access, the nodes in the network will be in an unsendable state.

[0056] The fixed value set when the fixed access period is initialized and the number of time slots in the network (timeslotNums) must be relatively prime to ensure that the probability of a time slot in the actual network period being occupied by a time slot used for new node access in the fixed access period is equal. Assuming that the fixed access period and the number of time slots in the network are relatively prime at initialization, the remainder (remainder) obtained by dividing any multiple of the fixed access period at initialization by the number of time slots after expansion is different. For any positive integer k, the remainder of the multiple of the fixed access period at initialization divided by the number of time slots in the network is set as remainder. The set of these remainders is equivalent to {0,1,2,...,timeslotNums-1}, and 0≤remainder≤timeslotNums-1. Remainder can be expressed as:

[0057] remainder=k*init_cycle%timeslotNums#

[0058] After receiving the request packet for the new node to join, the central node will classify the nodes that will not cause channel conflicts according to the channel conflict avoidance mechanism. The data packet obtained by the central node contains the location information of the new node. The location information combined with the following two conditions can be used to determine whether there is a channel conflict problem between the new node and other nodes in the network. Condition one: There is no conflict in the channels within the respective communication ranges; Condition two: There are no nodes within the conflict area within the communication range. In order to solve the channel conflict problem caused by hidden terminals, the channel conflict relationship between nodes is detected, and a conflict-free set consisting of multiple node subsets is created. Nodes in each node subset can occupy the same channel resources. Exemplarily, its contents include: a module for updating the node Euclidean distance, a module for determining node conflicts, and a module for updating the conflict-free list. The overall structure is as follows: Figure 2 shown.

[0059] In this example, the Update Node Euclidean Distance module is used to update the Euclidean distance between nodes. The Euclidean distance refers to the distance between two points in a geometric space. For two points (x1, y1) and (x2, y2) on a two-dimensional plane, the Euclidean distance d can be expressed as:

[0060]

[0061] When a new node joins or leaves, the topology needs to be updated to help allocate time slots with the latest topology. The steps are as follows:

[0062] 1) First determine whether the topology has changed. If not, the module will not start;

[0063] 2) Secondly, create a new distance array based on the latest topological situation;

[0064] 3) If a new node is added, the original distance array is directly copied to the new distance array, and then the Euclidean distance between the new node and other nodes is calculated according to the distance formula;

[0065] 4) If the node exits, the distance array information of the exited node is cleared;

[0066] 5) Update the distance array and store it.

[0067] In this example, the node conflict judgment module is mainly used to judge whether there is a channel conflict problem between nodes in the network. The input is the node number of any two nodes, the updated distance array and the node position corresponding to the node number, and the output is conflict or no conflict. The steps are as follows:

[0068] 1) Input any two nodes i and j;

[0069] 2) Determine whether the communication distances of the two input nodes coincide. Here, the judgment is made based on the distance array. If they do not coincide, it returns no conflict, otherwise, proceed to the next step of judgment;

[0070] 3) Determine whether there is a node in the communication overlap area of ​​two nodes. There are two main steps. First, according to the node location information, select all nodes that exist in the communication range of node i and mark them as set S;

[0071] 4) Secondly, the distance between the nodes in the set S and node j is calculated. If there is a node k that is also within the communication range of node j, it is considered that there will be a channel conflict between node i and node j, and a conflict is returned. Otherwise, no conflict is returned.

[0072] In this example, the update non-conflict list module is mainly used to update the non-conflict list. It will be started when the topology information in the network changes. When a new node is added, the new node can be added to the non-conflict list. If there is a node set that does not conflict with the new node, it will be added to the set. If not, a node set containing only the new node will be created separately and added to the non-conflict list to assist in the subsequent time slot allocation in spatial multiplexing. The steps are as follows:

[0073] 1) Determine whether there is a node that has not been added to the conflict-free list. If so, select a node i from the nodes that have not been added to the conflict-free list, otherwise jump to step 6);

[0074] 2) Determine whether node i has been added to a set. If yes, return to step 1), otherwise continue to determine;

[0075] 3) Determine whether all node sets have been selected. If not, select an unselected node set v from the shared time slot list. If yes, jump to step 5);

[0076] 4) Determine whether there is a conflict between node i and the nodes in set v. If there is a conflict, return to step 3 to continue selecting the next shared set. Otherwise, add it to the set and return to step 2).

[0077] 5) Create a node set containing only node i and add it to the conflict-free list;

[0078] 6) End.

[0079] Channel resources are allocated to newly added nodes in the network through the slot expansion and flexible slot allocation mechanism. In this embodiment, a fixed access period dedicated to new node access is designed. When a mobile node accesses the network through the slot number reserved in the fixed access period, it can directly communicate with neighbor nodes and obtain information through timely interaction. After a new node accesses the network through the fixed access period, in order to enable all nodes in the network to have channel resources available, the central node will combine the node independent set based on the spatio-temporal non-interference of the underwater acoustic channel for slot expansion and slot allocation. Exemplarily, its content includes: a slot expansion module, a slot allocation module, and the overall structure is as Figure 3 shown.

[0080] In this example, the slot expansion module is used to determine whether slot expansion needs to occur in the network and complete the expansion. It mainly judges through the total number of slots timeslotNums in the network and the total number of sets m in the conflict-free list. When timeslotNums < m, slot expansion will be triggered, and the steps are as follows:

[0081] 1) Determine whether the total number of slots timeslotNums is less than m. If it is less, trigger slot expansion; otherwise, do not trigger expansion;

[0082] 2) If slot expansion is triggered, the total number of slots timeslotNums will continue to increase until the total number of slots timeslotNums is relatively prime to the access period init_cycle, and then timeslotNums stops increasing.

[0083] In this example, the slot allocation module is used to allocate slots to newly added nodes, thereby generating a new slot allocation result.

[0084] First, it will judge whether slot expansion has occurred. If slot expansion has occurred, the expanded slots will be given to the new nodes;

[0085] Secondly, if there is no time slot expansion, it will be determined whether the newly added node is a separate set that only contains itself in the conflict-free list. If so, on the one hand, in order to ensure the fairness of channel resource use, each node will be allocated at least one time slot. On the other hand, in order to improve channel resource utilization, the existing node time slot allocation method in the network is changed to allocate time slot resources to the new node. If not, it means that the new node has joined the old node set. At this time, the new node is directly allocated the time slot set in the time slot list corresponding to the node set it has joined. The steps are as follows:

[0086] 1) Create the matrix end_result and copy the time slot allocation results of the original network, and use it to store the final selected time slot allocation scheme. At the same time, initialize the empty matrix Vec to store the temporary time slot allocation results;

[0087] 2) Initialize the maximum number of time slots occupied by each node on average The minimum time slot uniformity variance S 2 min = INT_MAX;

[0088] 3) Determine whether the time slot expansion has occurred. If so, give the expanded time slot to the new node, modify the time slot allocation result in end_result and jump to step 11), otherwise continue;

[0089] 4) Determine whether the newly added node is a separate set that only contains itself in the conflict-free list. If not, directly allocate the time slot occupied by the node set it joins to the new node, modify the time slot allocation result in end_result, and jump to step 11). If yes, continue;

[0090] 5) Take the node set V that occupies the largest number of time slots in the conflict-free list i and from the node set v i The corresponding time slot set L i In, randomly select the jth time slot and assign it to the new node;

[0091] 6) Put the current time slot allocation scheme into Vec and calculate the average number of time slots occupied by each node in Vec and the time slot uniformity variance S 2 , which can be expressed as follows:

[0092]

[0093] Among them, X i is the number of time slots occupied by each node, there are N nodes in total, X i >0,S 2 is the variance of the uniformity of time slot allocation in the whole network, variance S 2 The smaller the value, the more evenly the time slots are allocated.

[0094] 7) Judgment Is it greater than If yes, it means that the average number of time slots occupied by the nodes in the time slot allocation scheme in Vec is greater than the time slot allocation scheme in end_result, otherwise jump to step 9);

[0095] 8) Update the solution in end_result and set S 2 min =S 2 , return to step 5);

[0096] 9) Judgment Is it equal to Otherwise, stop the time slot allocation, which means that the time slot allocation scheme in Vec is inferior to the time slot allocation scheme in end_result, and jump to step 11). If yes, continue;

[0097] 10) Determine S 2 Is it less than S? 2 min , it means that the time slot allocation uniformity of the time slot allocation scheme in Vec is better than the time slot allocation scheme in end_result, return to step 8), otherwise continue;

[0098] 11) Allocation is completed.

[0099] Through the mechanism of time slot delay expansion, the whole network channel resource information synchronization is realized and the whole network channel resource information is updated. For example, its content includes: whole network broadcast module, point-to-point sending module, and the overall structure is as follows: Figure 4 shown.

[0100] In this example, when the time slot expansion occurs, the whole network broadcast module will be triggered. The module will generate a broadcast packet with the highest priority, which contains the latest time slot cycle information and the time slot information required by the new node.

[0101] When sending the broadcast packet, the old cycle before the time slot expansion is still used. The time slot expansion can only be performed when all nodes in the network have received the broadcast packet. Therefore, the delayed expansion method is adopted here to give the entire network a unified delayed expansion time so that all nodes in the network can complete the synchronization of the time slot cycle before switching the time slot.

[0102] The delay expansion time is calculated by simulating the sending of broadcast packets. It starts from the central node, simulates the forwarding of broadcast packets according to time slots, and marks each point where the broadcast packet is received until all nodes in the network are covered. At this time, the entire network is updated, the time point is recorded, and it is put into the broadcast packet.

[0103] The steps are as follows:

[0104] 1) Receive the request packet from the new node to join, and perform time slot allocation to expand the time slot capacity;

[0105] 2) Generate a broadcast packet, initialize the delay expansion time t=0, and initialize the simulated sending time send_t to the time when the central node sends the data packet;

[0106] 3) Mark the central node, indicating that the central node can send the broadcast packet;

[0107] 4) Determine whether all nodes have received the broadcast packet, if yes, jump to step 9), otherwise continue;

[0108] 5) Update the delayed expansion time t=t+slotsize, where slotsize is the time slot size;

[0109] 6) Update the simulated sending time send_t = send_t + slotsize, and calculate the current time slot i;

[0110] 7) Determine whether there is a node k that receives the broadcast packet in the time slot i, that is, it is marked, otherwise return to step 5), if yes, continue;

[0111] 8) Mark the nodes within the communication range of node k and return to step 4).

[0112] 9) Write the time t into the broadcast packet, write the new time slot period, and write the new node time slot and routing related information.

[0113] 10) Send broadcast packet;

[0114] 11) End.

[0115] In this example, when the point-to-point sending module does not expand the time slot, it enters the point-to-point sending module and generates a unicast packet for point-to-point communication. The module will generate a response packet containing the time slot information of the new node, and the time slot information and routing information in the original network will be sent to the new node. Secondly, it will determine whether there is a change in the time slot allocation of any nodes in the original network. If there is a change, a time slot adjustment packet will be generated and sent to these nodes. The time slot adjustment packet contains the latest time slot allocation results of these nodes. The steps are as follows:

[0116] 1) After receiving the request packet from the new node, the time slot is allocated but no time slot expansion occurs;

[0117] 2) Generate a response packet, write the time slot and routing information of the new node, and send the response packet;

[0118] 3) Determine whether all node time slots in the network have been traversed, if yes, jump to step 7), otherwise continue;

[0119] 4) Select a node i that has not been traversed;

[0120] 5) Whether the time slot allocation of node i has changed;

[0121] 6) Generate a time slot adjustment packet, fill in the latest time slot allocation result of node i, send the time slot adjustment packet, and return to step 3);

[0122] 7) End.

[0123] The following examples illustrate the implementation process and effects of the present invention:

[0124] Figure 5 This is a schematic diagram of 16 fixed nodes being connected in sequence. The arrows in the figure indicate the order in which the nodes are connected in sequence, starting from node 0 and ending at node 15. Figure 6 This is a scenario where a mobile node accesses the network. The red dot represents the mobile node, which moves in the direction of the black arrow in the figure.

[0125] In order to simulate the unknown situation of the entire network, the initialization number of time slots is set to 5, which is smaller than the total number of nodes in the network. At the same time, the time slot number reserved for new node access is set to 12, and the access period is set to 13.

[0126] The time slot allocation results calculated in this example are as follows Figure 7 As shown, a square represents a node, and the pattern represents its allocated time slot. The same pattern indicates that the allocated time slots are consistent.

[0127] The example results show that the node independent set classification method based on the non-interference of time and space in the underwater acoustic channel, the dynamic access time slot allocation mechanism of nodes through mutual prime fixed access cycle in complex underwater acoustic environment, and the time slot delay expansion mechanism have achieved ideal expected results. The protocol has good performance both in the case of network topology changes and network stability.

[0128] Based on the same inventive concept, an embodiment of the present invention discloses a time slot allocation system suitable for an underwater dynamic topology network, comprising: a node classification module, used to classify nodes that will not generate channel conflicts, and create a conflict-free set composed of multiple node subsets, and the nodes in each node subset can occupy the same channel resources; a dynamic access and time slot allocation module, used for new nodes to access the network through time slot numbers reserved by mutually prime fixed access cycles, and to allocate channel resources to newly added nodes in the network through time slot expansion and time slot allocation mechanisms; when time slot expansion is performed when the total number of time slots is less than the total number of sets in the conflict-free list, the total number of time slots is increased to be mutually prime with the access cycle; if time slot expansion occurs, the expanded time slots are given to the new node; if time slot expansion does not occur, the time slots are allocated according to the node subsets; and a delayed expansion module, used to trigger a network-wide broadcast when time slot expansion occurs, the broadcast packet contains the latest time slot cycle information and the time slot information required by the new node, the old cycle before the time slot expansion is used when the broadcast packet is sent, and the time slot expansion is performed after all nodes in the network receive the broadcast packet.

[0129] Based on the same inventive concept, an embodiment of the present invention discloses a computer system, including a memory, a processor, and a computer program / instructions stored in the memory and executable on the processor. When the computer program / instructions are executed by the processor, the steps of a time slot allocation method applicable to an underwater dynamic topology network are implemented.

[0130] Based on the same inventive concept, an embodiment of the present invention discloses a computer program product, including a computer program / instruction, which, when executed by a processor, implements the steps of a time slot allocation method applicable to an underwater dynamic topology network.

[0131] The embodiments of the present invention are described in detail above. The description of the above embodiments is only used to help understand the method of the present invention and its core concept. At the same time, for those skilled in the art, according to the concept of the present invention, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as limiting the present invention.

Claims

1. A time slot allocation method suitable for underwater dynamic topology network, characterized in that: The following steps are involved: Classify nodes that will not cause channel conflicts and create a conflict-free set consisting of multiple node subsets. Nodes in each node subset can occupy the same channel resources. New nodes access the network through the time slot numbers reserved by the mutually prime fixed access cycle, and channel resources are allocated to the newly added nodes in the network through the time slot expansion and time slot allocation mechanism; when the total number of time slots is less than the total number of sets in the conflict-free list, the total number of time slots is increased to be mutually prime with the access cycle; if time slot expansion occurs, the expanded time slots are given to the new nodes; if time slot expansion does not occur, time slots are allocated according to node subsets; When the time slot expansion occurs, a network-wide broadcast is triggered. The broadcast packet contains the latest time slot cycle information and the time slot information required by the new node. The old cycle before the time slot expansion is used when sending the broadcast packet. The time slot expansion is performed when all nodes in the network receive the broadcast packet.

2. A time slot allocation method applicable to an underwater dynamic topology network according to claim 1, characterized in that: The location information is combined with the following two conditions to determine whether there is a channel conflict between the new node and other nodes in the network. If two nodes meet one of the conditions, it is determined that there is no channel conflict; Condition 1: There is no conflict between the channels in their respective communication ranges; Condition 2: There are no nodes in the communication range conflict area.

3. A time slot allocation method applicable to an underwater dynamic topology network according to claim 2, characterized in that: When a new node requests to join, the steps of classifying nodes that will not cause channel conflicts include: Update the Euclidean distance between nodes; Determine whether there is a channel conflict between nodes in the network based on the distance array and node position; Update the conflict-free list. When a new node is added, add the new node to the conflict-free list. If there is a node set that does not conflict with the new node, add it to that set. If not, create a separate node set that only contains the new node and add it to the conflict-free list.

4. A time slot allocation method applicable to an underwater dynamic topology network according to claim 1, characterized in that: When a new node accesses the network through the time slot number reserved in the fixed access cycle, it can directly communicate with neighboring nodes and obtain information through timely interaction.

5. The time slot allocation method applicable to an underwater dynamic topology network according to claim 1, characterized in that: The constant value set when the fixed access period is initialized is coprime with the number of time slots in the network. The remainders obtained by dividing any multiple of the fixed access period during initialization by the number of time slots after expansion are different, thereby ensuring that the probability of a time slot in the actual network period being occupied by a time slot used for new node access in the fixed access period is equal.

6. A time slot allocation method applicable to an underwater dynamic topology network according to claim 1, characterized in that: The steps of allocating time slots for newly added nodes include: 1) Create a matrix end_result to copy the time slot allocation results of the original network and use it to store the final selected time slot allocation scheme. At the same time, initialize an empty matrix Vec to store temporary time slot allocation results; 2) Initialize the maximum number of time slots occupied by each node The minimum time slot uniformity variance S 2 min =INT_MAX; INT_MAX is the preset maximum integer; 3) Determine whether time slot expansion has occurred. If so, assign the expanded time slot to the new node, modify the time slot allocation result in end_result, and jump to step 11), otherwise continue; 4) Determine whether the newly added node is a separate set that only contains itself in the conflict-free list. Otherwise, directly allocate the time slot occupied by the node set it joins to the new node, modify the time slot allocation result in end_result, and jump to step 11). If yes, continue; 5) Take the node set V that occupies the largest number of time slots in the conflict-free list i and from the node set V i The corresponding time slot set L i In, randomly select the jth time slot and assign it to the new node; 6) Put the current time slot allocation scheme into Vec and calculate the average number of time slots occupied by each node in Vec and the time slot uniformity variance S 2 ; 7) Judgment Is it greater than If yes, it means that the average number of time slots occupied by the nodes in the time slot allocation scheme in Vec is greater than the time slot allocation scheme in end_result, otherwise jump to step 9); 8) Update the solution in end_result and set S 2 min =S 2 , return to step 5); 9) Judgment Is it equal to Otherwise, stop the time slot allocation, indicating that the time slot allocation scheme in Vec is inferior to the time slot allocation scheme in end_result, and jump to step 11), if yes, continue; 10) Determine S 2 Is it less than S? 2 min If yes, it means that the time slot allocation uniformity of the time slot allocation scheme in Vec is better than the time slot allocation scheme in end_result, return to step 8), otherwise continue; 11) Allocation is completed.

7. The time slot allocation method applicable to an underwater dynamic topology network according to claim 1, characterized in that: The delay expansion time in the broadcast packet is calculated by simulating the sending of the broadcast packet. It starts from the central node, simulates the forwarding of the broadcast packet according to the time slot, and marks each point where the broadcast packet is received until all nodes in the network are covered. At this time, the entire network is updated, the time point is recorded, and it is put into the broadcast packet.

8. A time slot allocation system suitable for underwater dynamic topology network, characterized in that: include: The node classification module is used to classify nodes that will not cause channel conflicts and create a conflict-free set consisting of multiple node subsets. The nodes in each node subset can occupy the same channel resources. The dynamic access and time slot allocation module is used for new nodes to access the network through the time slot numbers reserved by the mutually prime fixed access cycle, and allocate channel resources to the newly added nodes in the network through the time slot expansion and time slot allocation mechanism; when the total number of time slots is less than the total number of sets in the conflict-free list, the total number of time slots is increased to be mutually prime with the access cycle; if the time slot expansion occurs, the expanded time slots are given to the new node; if the time slot expansion does not occur, the time slots are allocated according to the node subset; And the delayed expansion module is used to trigger the whole network broadcast when the time slot expansion occurs. The broadcast packet contains the latest time slot cycle information and the time slot information required by the new node. When sending the broadcast packet, the old cycle before the time slot expansion is used. When all nodes in the network receive the broadcast packet, the time slot expansion is performed.

9. A computer system comprising a memory, a processor, and a computer program / instruction stored in the memory and executable on the processor, characterized in that: When the computer program / instructions are executed by the processor, the steps of a time slot allocation method applicable to an underwater dynamic topology network according to any one of claims 1 to 7 are implemented.

10. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instructions are executed by the processor, the steps of a time slot allocation method applicable to an underwater dynamic topology network according to any one of claims 1 to 7 are implemented.

Citation Information

Patent Citations

  • Time division multiplex protocol method applicable to underwater sound communication network

    CN102035728A

  • Distributed dynamic time division multiple address protocol method for underwater acoustic communication network

    CN102201873A

  • Rapid adaptive control method based on channel state run

    CN104994593A

  • Network time slot division method and device

    CN110536454A

  • Ad hoc network centralized adaptive time slot allocation method and device

    CN115866612A