A dynamic time slot networking method, device, equipment and storage medium
By dynamically adjusting time slots based on node data volume in a network without a central node, the problem of inflexible time slot allocation in existing technologies is solved, achieving dynamic time slot networking with high channel utilization and high speed, which is suitable for wireless communication networks.
Patent Information
- Application Number
- CN202111012925.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-08-31
- Publication Date
- 2026-01-20
- Estimated Expiration
- 2041-08-31
AI Technical Summary
Existing TNDA-based time-slot networking technology cannot flexibly adjust time slot allocation when the number of nodes increases and data transmission demand increases, leading to a decline in network performance. Furthermore, the failure of the central node can cause the network to collapse, especially affecting the timeliness and reliability of data transmission in critical scenarios.
In the absence of a central node, the nodes dynamically adjust the time slots according to the size of the data to be transmitted. By utilizing the sending time slot and time slot backoff mechanism, time slots are flexibly allocated to each node, thereby achieving dynamic time slot networking.
It improves network channel utilization, enhances resilience and transmission rate, is suitable for a wide range of application scenarios, and reduces dependence on central nodes.
Smart Images

Figure CN115767731B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of wireless communication, in particular to a dynamic time slot networking method, device, equipment and storage medium. BACKGROUND
[0002] The time slot networking technology based on TNDA (TiNe Division Nultiple Access) refers to a technology of dividing a specific time period into multiple time slots, and allocating the multiple time slots to multiple nodes respectively, so that the multiple nodes entering the network share the channel communication based on the time slots occupied by the nodes. The related field usually adopts centralized TDNA technology for networking to obtain a centralized master-slave network. Whether based on fixed time slot networking or dynamic time slot networking, the communication quality and network robustness of the centralized master-slave network depend on the performance of the center node.
[0003] For the centralized master-slave network obtained based on fixed time slot networking, as the number of nodes in the network increases and the node data transmission demand increases, the fixed time slot TDMA technology cannot flexibly change the function according to the node service, resulting in a long time period in the network and time slot waste, which leads to a reduction in the transmission rate of the data link transmission layer and affects the network performance. The failure of the center node means the collapse of the entire network, which can easily cause the loss of timely message transmission and the destruction of data in some important rescue and actual combat exercises and other scenarios.
[0004] For the centralized master-slave network obtained based on dynamic time slot networking, the existing technology dynamically allocates time slots to nodes based on a complex algorithm mechanism. However, in actual network applications, the complex algorithm mechanism has high requirements for device performance and cost, and the efficiency of time slot allocation depends on the performance of the center node. SUMMARY
[0005] The embodiments of the present application provide a dynamic time slot networking method, device, equipment and storage medium, which can dynamically network nodes without a center node, and achieve the effect of flexibly allocating time slots to nodes according to node services.
[0006] The first aspect of the embodiments of the present application provides a dynamic time slot networking method, which comprises:
[0007] When any data transmission period reaches the first allocated time slot corresponding to the current node, and the to-be-transmitted data of the current node is greater than a preset threshold, the current node determines a sending time slot according to the size of the to-be-transmitted data; wherein the sending time slot is at least one time slot adjacent to the first allocated time slot; and the current node is any node in a preset communication network.
[0008] The current node broadcasts the sending time slot to idle nodes; wherein the idle nodes are at least one node which does not perform data transmission in the preset communication network;
[0009] When any node in the idle nodes determines that the sending time slot contains the corresponding second allocation time slot, the second allocation time slot is updated to a time slot after the last time slot in the sending time slot;
[0010] The current node performs data transmission by using the sending time slot.
[0011] Optionally, the method further comprises:
[0012] Before the start of any data transmission period, a node receiving a reference time frame performs local clock alignment according to the reference time frame to obtain a feedback time frame, and returns the feedback time frame to a node broadcasting the reference time frame, so as to determine that the node receiving the reference time frame is a first online node; wherein the reference time frame is a local time of a node having a highest node number in the preset communication network;
[0013] When any data transmission period proceeds to a first allocation time slot corresponding to a current node, and the current node has data to be transmitted which is greater than a preset threshold, the current node determines a sending time slot according to the size of the data to be transmitted, comprising:
[0014] When any data transmission period proceeds to a first allocation time slot corresponding to a current first online node, and the current first online node has data to be transmitted which is greater than a preset threshold, the current first online node determines a sending time slot according to the size of the data to be transmitted.
[0015] Optionally, the method further comprises:
[0016] Before the start of any data transmission period, a node not receiving a reference time frame broadcasts a local time as the reference time frame to other nodes in the preset communication network when the local node number is a highest node number;
[0017] When receiving a feedback time frame returned by the other nodes in the preset communication network, it is determined that the node not receiving the reference time frame is a second online node; wherein the feedback time frame is obtained by clock alignment of the other nodes in the preset communication network according to the reference time frame;
[0018] When any data transmission period proceeds to a first allocation time slot corresponding to a current node, and the current node has data to be transmitted which is greater than a preset threshold, the current node determines a sending time slot according to the size of the data to be transmitted, comprising:
[0019] when the current second online node corresponds to the first allocated time slot in the current data transmission cycle, and the to-be-transmitted data of the current second online node is greater than the preset threshold, the current second online node determines the transmission time slot according to the size of the to-be-transmitted data.
[0020] Optionally, the method further comprises:
[0021] when the current node corresponds to the first allocated time slot in the current data transmission cycle, and the to-be-transmitted data of the current node is less than or equal to the preset threshold, data transmission is performed using the first allocated time slot.
[0022] when the current node corresponds to the first allocated time slot in the current data transmission cycle, and the to-be-transmitted data of the current node is zero, the data transmission cycle is switched to the next time slot of the first allocated time slot.
[0023] Optionally, before the current node corresponds to the first allocated time slot in the current data transmission cycle, the method further comprises:
[0024] before the start of the first data transmission cycle, each node is initially time-slotted according to the priority of the node number corresponding to each node, to obtain an initial allocated time slot corresponding to each node.
[0025] when the to-be-transmitted data of a target node corresponding to a target initial allocated time slot is detected for the first time in the current data transmission cycle and is greater than the preset threshold, the target node adjusts the initial allocated time slots corresponding to the remaining nodes on the basis of the target initial allocated time slot according to the size of the to-be-transmitted data.
[0026] Optionally, the method further comprises:
[0027] before the start of the first data transmission cycle, a frequency hopping frequency point is set for each node in the preset communication network.
[0028] the node receiving the reference time frame performs local clock alignment according to the reference time frame to obtain a feedback time frame, and returns the feedback time frame to the node broadcasting the reference time frame, so as to determine that the node receiving the reference time frame is the first online node, comprising:
[0029] the node receiving the reference time frame performs local clock alignment according to the reference time frame to obtain a feedback time frame, and returns the feedback time frame to the node broadcasting the reference time frame through the frequency hopping frequency point, so as to determine that the node receiving the reference time frame is the first online node.
[0030] Optionally, the method further comprises:
[0031] setting a frequency hopping frequency point for each node in the preset communication network before the start of the first data transmission period;
[0032] broadcasting, by a node that has not received a reference time frame, a local time as the reference time frame to other nodes in the preset communication network when the local node number is the highest level node number, including:
[0033] broadcasting, by a node that has not received a reference time frame, a local time as the reference time frame to other nodes in the preset communication network and a new node through the frequency hopping frequency point when the local node number is the highest level node number, so that the new node accesses the preset communication network according to the reference time frame.
[0034] A second aspect of the embodiments of the application provides a dynamic time slot networking device, the device comprising:
[0035] A determination module is configured to, when a current node corresponds to a first allocated time slot in an arbitrary data transmission period and the current node has data to be transmitted greater than a preset threshold, determine a transmission time slot for the current node according to the size of the data to be transmitted; wherein the transmission time slot is at least one time slot adjacent to the first allocated time slot; and the current node is an arbitrary node in a preset communication network.
[0036] A first broadcast module is configured to broadcast the transmission time slot to an idle node by the current node; wherein the idle node is at least one node in the preset communication network that has not performed data transmission.
[0037] An update module is configured to, when an arbitrary node in the idle node determines that the transmission time slot contains a second allocated time slot corresponding to the idle node, update the second allocated time slot to a time slot after the last time slot in the transmission time slot.
[0038] A transmission module is configured to perform data transmission by the current node using the transmission time slot.
[0039] Optionally, the device further comprises:
[0040] A receiving module is configured to, before the start of an arbitrary data transmission period, align a local clock according to a reference time frame by a node that has received the reference time frame, obtain a feedback time frame, and return the feedback time frame to a node that broadcasts the reference time frame, so as to determine that the node that has received the reference time frame is a first online node; wherein the reference time frame is a local time of a node with the highest level node number in the preset communication network.
[0041] The determination module comprises:
[0042] The first determining submodule is configured to, when any data transmission period reaches a first allocated time slot corresponding to a current first online node and the current first online node has data to be transmitted greater than a preset threshold, determine a transmission time slot of the current first online node according to a size of the data to be transmitted.
[0043] Optionally, the apparatus further comprises:
[0044] The second broadcasting module is configured to, before any data transmission period starts, broadcast a local time as a reference time frame to other nodes in the preset communication network when a node that has not received the reference time frame is a node with a highest node number.
[0045] The returning module is configured to, when receiving a feedback time frame returned by other nodes in the preset communication network, determine that the node that has not received the reference time frame is a second online node, wherein the feedback time frame is obtained by other nodes in the preset communication network according to the reference time frame.
[0046] The determining module comprises:
[0047] The second determining submodule is configured to, when any data transmission period reaches a first allocated time slot corresponding to a current second online node and the current second online node has data to be transmitted greater than a preset threshold, determine a transmission time slot of the current second online node according to a size of the data to be transmitted.
[0048] Optionally, the apparatus further comprises:
[0049] The transmission module is configured to, when any data transmission period reaches a first allocated time slot corresponding to a current node and the current node has data to be transmitted less than or equal to a preset threshold, perform data transmission by using the first allocated time slot.
[0050] The switching module is configured to, when any data transmission period reaches a first allocated time slot corresponding to a current node and the current node has no data to be transmitted, switch the data transmission period to a next time slot of the first allocated time slot.
[0051] Optionally, the apparatus further comprises:
[0052] The pre-booking module is configured to, before a first data transmission period starts, perform initial time slot pre-booking for each node according to a priority level of a node number corresponding to each node, to obtain an initial allocated time slot corresponding to each node.
[0053] The adjusting module is configured to, when it is detected for the first time in any data transmission period that the to-be-transmitted data of the target node corresponding to the target initial allocation time slot is greater than the preset threshold, adjust, by the target node, the initial allocation time slots corresponding to the remaining nodes based on the target initial allocation time slot according to the size of the to-be-transmitted data.
[0054] Optionally, the apparatus further comprises:
[0055] The first setting module is configured to set a frequency hopping frequency point for each node in the preset communication network before the start of the first data transmission period.
[0056] The receiving module comprises:
[0057] The receiving sub-module is configured to enable a node receiving a reference time frame to perform local clock alignment according to the reference time frame, to obtain a feedback time frame, and to return the feedback time frame to a node broadcasting the reference time frame through the frequency hopping frequency point, so as to determine that the node receiving the reference time frame is a first online node.
[0058] Optionally, the apparatus further comprises:
[0059] The second setting module is configured to set a frequency hopping frequency point for each node in the preset communication network before the start of the first data transmission period.
[0060] The second broadcasting module comprises:
[0061] The broadcasting sub-module is configured to enable a node not receiving a reference time frame to broadcast a local time as a reference time frame to other nodes and a new node in the preset communication network through the frequency hopping frequency point when the local node number is the highest node number, so that the new node accesses the preset communication network according to the reference time frame.
[0062] The third aspect of the embodiments of the present application provides a readable storage medium having a computer program stored thereon, and the computer program is executed by a processor to implement the steps in the method of the first aspect of the present application.
[0063] The fourth aspect of the embodiments of the present application provides an electronic device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, and the processor executes the computer program to implement the steps of the method of the first aspect of the present application.
[0064] The embodiment of the present application sets initial reserved time slots for each node in a preset communication network according to the priority of node number, in each data transmission period, starts time slot reservation for a target node corresponding to a first time slot for transmitting data according to the initial reserved time slot of the node, determines whether the target node needs to reserve more time slots to send the data to be transmitted according to the size of the data to be transmitted in the target node, specifically determines whether the target node needs to reserve a sending time slot, in the case that the target node needs to reserve a sending time slot, the target node broadcasts a reservation frame to all nodes not performing data transmission, the nodes not performing data transmission update their corresponding second allocated time slot when their corresponding time slot is included in the sending time slot. After the target node sends the complete data using the sending time slot, the data transmission period continues the data transmission of the next node, and specifically, the data transmission of the node corresponding to the first time slot after the sending time slot of the target node is performed. All nodes in the preset communication network complete the purpose of dynamically allocating time slots to each node according to the data requirement through the above time slot reservation and time slot yielding, dynamically allocate time slots according to the data length of each node without a central node, avoid communication collision, and effectively allocate time slots according to different transmission data lengths of the nodes in the network, thereby allocating frequency points. Since there is no central node, the embodiment of the present application changes the dependency of the traditional networking mode on the master-slave mode and the disadvantage of low channel utilization rate. The performance requirements of high channel utilization rate, high speed, high invulnerability and wide application scenarios are achieved. BRIEF DESCRIPTION OF DRAWINGS
[0065] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following will briefly introduce the drawings needed to be used in the description of the embodiments of the present application. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.
[0066] Figure 1 is a flow chart of the dynamic time slot networking of the embodiments of the present application;
[0067] Figure 2 is an initial allocated time slot structure diagram of multiple nodes in an example of the present application;
[0068] Figure 3 is a mode diagram of time synchronization of each node in an example of the present application;
[0069] Figure 4 is a mode diagram of time synchronization of each node in another example of the present application;
[0070] Figure 5 is an example diagram of the time sequence structure of each node after time alignment in an example of the present application;
[0071] Figure 6 is a flow chart of a dynamic time slot networking method proposed by an embodiment of the present application;
[0072] Figure 7 is a timing structure diagram of a data transmission period in an example of the present application;
[0073] Figure 8 is a schematic diagram of a dynamic time slot networking device proposed by an embodiment of the present application. DETAILED DESCRIPTION
[0074] The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work fall within the scope of protection of the present application.
[0075] Figure 1 is a flow chart of a dynamic time slot networking method proposed by an embodiment of the present application, as shown in Figure 1 the present application first performs initial configuration on all nodes in a preset communication network. The preset communication network can be a wireless communication network, a satellite communication network, etc. The functions of the multiple nodes included in the preset communication network in the network are the same, and there is no central node for managing other nodes. The nodes can be radios, mobile terminals, relay stations, etc. The initial configuration on all nodes includes: 1, setting the frequency hopping pattern of the nodes, the frequency hopping patterns of all nodes in the preset communication network are the same, so as to ensure that different nodes are at the same frequency at any time; 2, setting the node number according to the actual needs of the multiple nodes in the application.
[0076] In an example of the present application, each vehicle in the vehicle fleet is configured with a radio. When passing through an unmanned desert area, the radio 1 on the lead vehicle is set with a node number ID1, the radio 2 on the second vehicle immediately behind the lead vehicle is set with a node number ID2, and so on, the radios on the 10 vehicles in the vehicle fleet are set with node numbers ID1 to ID10 respectively.
[0077] Continuing to refer to Figure 1 , after the initial configuration is completed, initial synchronization is performed on all nodes in the preset communication network. The TDNA technology usually divides the time axis into multiple cyclic data transmission periods, each period is divided into multiple time slots, and the multiple time slots are respectively allocated to different nodes, so that the multiple nodes share the channel communication based on the time slots they occupy. After all nodes complete the data transmission in the current data transmission period, they enter the next data transmission period. The specific method for performing initial synchronization on all nodes in the preset communication network includes:
[0078] Before the first data transmission cycle starts, each node is initially time-slot reserved according to the priority of the node number corresponding to each node, and the initial allocated time slot corresponding to each node is obtained;
[0079] In an example of the present application, the node numbered ID1 is allocated time slot 2, the node numbered ID2 is allocated time slot 3, the node numbered ID3 is allocated time slot 4, and so on, and the node numbered IDN is allocated time slot N+1. The initial allocated time slot structure diagram of the multiple nodes in an example of the present application is as follows: Figure 2 , Figure 2 The initial allocated time slot structure diagram of the multiple nodes in an example of the present application is as follows, and the node with the initial allocated time slot of time slot 1 has the highest priority of transmitting data.
[0080] Before the first data transmission cycle starts, each node is allocated an initial allocated time slot, and the initial allocated time slot is the initial basis for time slot allocation in the Mth data transmission cycle. In other words, for any data transmission cycle, the time slot corresponding to the first node for time slot allocation is the initial time slot of the node. Starting from the first node for time slot allocation, each node is allocated a time slot through time slot reservation. Starting from the second node for time slot allocation, the allocated time slot corresponding to each node can be an updated allocated time slot.
[0081] When it is detected for the first time in any data transmission cycle that the to-be-transmitted data of the target node corresponding to the target initial allocated time slot is greater than the preset threshold, the target node adjusts the initial allocated time slots corresponding to the remaining nodes on the basis of the target initial allocated time slot according to the size of the to-be-transmitted data.
[0082] For example, assuming that the third data transmission cycle is reached, time slot 1 is detected for the first time as the target initial allocation time slot of node ID1, and according to the size of the data to be transmitted by node ID1, it is determined whether node ID1 needs to reserve time slot 2 and time slot 3 after time slot 1. In the case where time slot 2 and time slot 3 after time slot 1 do not need to be reserved, node ID1 directly uses time slot 1 for data transmission; in the case where time slot 2 and time slot 3 after time slot 1 need to be reserved, node ID2 and node ID3 corresponding to time slot 2 and time slot 3 are time slot yielding. Since node ID1 is the target node detected for the first time in the third data transmission cycle, the target node is the first node to perform time slot reservation in the third data transmission cycle, and thus, on the basis of the initial allocation time slot of the target node, it is determined whether the allocation time slot corresponding to the next node of the target node needs to be updated from the initial allocation time slot to the sum of the initial allocation time slot and the time slot reserved by node ID1, i.e., whether time slot 2 corresponding to node ID2 is updated to time slot 4 corresponding to node ID2, and whether time slot 3 corresponding to node ID3 is updated to time slot 5 corresponding to node ID3, according to whether the initial allocation time slot of the target node is updated to time slot 2 or time slot 3.
[0083] After the initial time slot reservation for each node is completed, time alignment for the nodes in the preset communication network is started, i.e., the time synchronization stage in the initial synchronization is started, and whether each node is online is determined by time synchronization of multiple nodes.
[0084] At the start of any data transmission cycle, each node performs time synchronization in the first time slot of the any data transmission cycle and executes the duty synchronization stage to ensure that each node in the any data transmission cycle is online.
[0085] The time synchronization of each node before the start of the first data transmission cycle belongs to the initial synchronization stage, and the time synchronization of each node in the first time slot of any data transmission cycle from the first data transmission cycle to the Mth data transmission cycle belongs to the duty synchronization stage.
[0086] In the preset communication network, at the start of any data transmission cycle, the nodes are divided into nodes sending reference time frames and nodes receiving reference time frames, and the node sending the reference time frame is the node with the highest node number priority in the current node. The time of the node with the highest node number priority in the current node is taken as a reference to adjust the time of other nodes so that the time of all nodes is synchronized.
[0087] For the node sending the reference time frame, the method for determining whether the node is online is as follows:
[0088] Before starting of any data transmission cycle, the node which does not receive the reference time frame broadcasts the local time as the reference time frame to other nodes in the preset communication network when the local node number is the highest node number. Upon receiving the feedback time frame returned by other nodes in the preset communication network, it is determined that the node which does not receive the reference time frame is a second online node; wherein the feedback time frame is obtained by clock alignment of other nodes in the preset communication network according to the reference time frame. Confirming the second online node means confirming that the node sending the reference time frame is online.
[0089] An example of the present application adopts the way of updating the virtual master node to complete time alignment of each node. As shown in Figure 3 Figure 3 is a mode diagram of time synchronization of each node in an example of the present application, as shown in Figure 3 The virtual master node 1 broadcasts the local time as the reference time frame to the virtual slave node 1 to the virtual slave node N, and the virtual slave node 1 to the virtual slave node N adjusts the local time according to the reference time frame to ensure time synchronization of each node in the preset communication network. After the virtual slave node 1 to the virtual slave node N complete clock alignment, the feedback time frame is obtained and sent to the virtual master node to ensure that it is online. In this example, the virtual master node is the node with node number ID1, and specifically at the beginning of the first data transmission cycle, the node ID1 determines that it will not receive the reference time frame sent by other nodes, and determines that its node number is the highest node number among all current node numbers, and becomes the virtual master node 1. After other nodes receive the time frame sent by the node ID1, it is determined that there is a virtual master node, and automatically becomes the virtual slave node 1 to the virtual slave node N. The virtual slave node 1 to the virtual slave node N is the node ID2 to the node IDN+1.
[0090] Figure 4 is a mode diagram of time synchronization of each node in another example of the present application, as shown in Figure 4 and Figure 1 In another example of the present application, the node ID1 is offline, and starts a competition cycle. The node ID2 to the node ID N+1 cannot receive the reference time frame sent by the node ID1. At this time, the node ID2 determines that it will not receive the reference time frame sent by other nodes, and determines that its node number is the highest node number among all current node numbers, and becomes the virtual master node. After other nodes receive the time frame sent by the node ID2, it is determined that there is a virtual master node, and automatically becomes the virtual slave node 2 to the virtual slave node N. The virtual slave node 2 to the virtual slave node N is the node ID3 to the node IDN+1, thereby completing the competition cycle.
[0091] For the node receiving the reference time frame, the method for determining its online is as follows:
[0092] Before the start of any data transmission cycle, the node receiving the reference time frame performs local clock alignment according to the reference time frame, obtains a feedback time frame, and returns the feedback time frame to the node broadcasting the reference time frame to determine that the node receiving the reference time frame is the first online node; wherein the reference time frame is the local time of the node with the highest node number in the preset communication network. Determining the first online node means determining that the node receiving the reference time frame is online.
[0093] With reference to Figure 3 , after the virtual slave nodes 1 to N return the feedback time frame to the virtual master node, each determines itself to be online.
[0094] Before the start of the first data transmission cycle, a frequency hopping frequency point is set for each node in the preset communication network. The frequency hopping frequency point set before the start of the first data transmission cycle is used at the start of any subsequent data transmission cycle to enable each node to send a reference time frame through the frequency hopping frequency point or send a feedback time frame through the frequency hopping frequency point at the initial synchronization stage or the service synchronization stage, i.e. at the first time slot of any data transmission cycle, so that each node uses the same frequency point to send and receive data at the first time slot, thereby ensuring the completion of time alignment.
[0095] Figure 5 is an example timing structure diagram of each node after the time alignment of the present application is completed. As Figure 5 shown, before the first data transmission cycle, nodes 1 to 10 in the preset communication network correspond to different time slots, and the frequency points of nodes 1 to 10 are all frequency hopping frequency points f1. In the first data transmission cycle 1, node 1 acts as the original virtual master node, broadcasts a reference time frame using the frequency hopping frequency point f1 at time slot 1 of the data transmission cycle 1 to perform service synchronization, and the original virtual master node is the first determined virtual master node. Nodes 2 to 10 feed back a feedback time frame to node 1 using the frequency hopping frequency point f1 at time slot 1 of the data transmission cycle 1, for example, node 2 acts as a virtual slave node 1 and feeds back a feedback time frame to node 1 using the frequency hopping frequency point f1. At time slot 2 of the data transmission cycle 1, node 1 acts as the original virtual master node as the first current node for data transmission, and starts to perform the data sending step.
[0096] The node receiving the reference time frame performs local clock alignment according to the reference time frame, obtains a feedback time frame, and returns the feedback time frame to the node broadcasting the reference time frame to determine that the node receiving the reference time frame is the first online node, including: the node receiving the reference time frame performs local clock alignment according to the reference time frame, obtains a feedback time frame, and returns the feedback time frame to the node broadcasting the reference time frame through the hopping frequency point to determine that the node receiving the reference time frame is the first online node.
[0097] In the duty synchronization phase at the beginning of any data transmission period, late entry of a new node is also performed. When the previous data transmission period is performed, the new node keeps at the hopping frequency point until all nodes complete data transmission in the previous data transmission period, and then starts the current data transmission period. After the new node receives the reference time frame sent by the node with the highest priority of node number, the new node performs clock alignment according to the reference time frame, obtains a feedback time frame, and sends the feedback time frame to the node with the highest priority of node number, thereby completing the late entry of the new node.
[0098] The node not receiving the reference time frame broadcasts the local time as the reference time frame to other nodes in the preset communication network when the local node number is the highest level node number, including: the node not receiving the reference time frame broadcasts the local time as the reference time frame to other nodes and the new node in the preset communication network through the hopping frequency point when the local node number is the highest level node number, so that the new node accesses the preset communication network according to the reference time frame.
[0099] After synchronization of all nodes is completed in the first time slot of each data transmission period and specific online nodes are determined, data transmission tasks of each node are sequentially performed from the first time slot of each data transmission period, and dynamic time slot networking is performed on each node, so that time slots are allocated to each node according to the size of data to be transmitted by the node. Figure 6 is a step flowchart of the dynamic time slot networking method proposed in the embodiment of the application, as shown in Figure 6 The steps are as follows:
[0100] Step S61: when a current node reaches a first allocated time slot corresponding to the current node in any data transmission period and data to be transmitted by the current node is greater than a preset threshold, the current node determines a sending time slot according to the size of the data to be transmitted; the sending time slot is at least one time slot adjacent to the first allocated time slot; and the current node is any node in the preset communication network.
[0101] The preset threshold is determined according to the performance of the node radio frequency chip and the network bandwidth, and is usually the maximum number of bytes that can be transmitted in one time slot.
[0102] Since the initial configuration time slot of the node is determined, the time slot reservation is sequentially performed on each node in the order of the initial configuration time slot of the node in any data transmission period.
[0103] In another embodiment of the present application, the current node is an online node in the current data transmission period, and the online node in the current data transmission period is determined according to the method for determining the online node in the preset communication network proposed in other embodiments of the present application.
[0104] When the first allocated time slot corresponding to the current node is reached in any data transmission period, and the to-be-transmitted data of the current node is greater than the preset threshold, the current node determines the transmission time slot according to the size of the to-be-transmitted data.
[0105] When the first allocated time slot corresponding to the current first online node is reached in any data transmission period, and the to-be-transmitted data of the current first online node is greater than the preset threshold, the current first online node determines the transmission time slot according to the size of the to-be-transmitted data.
[0106] When the first allocated time slot corresponding to the current node is reached in any data transmission period, and the to-be-transmitted data of the current node is greater than the preset threshold, the current node determines the transmission time slot according to the size of the to-be-transmitted data.
[0107] When the first allocated time slot corresponding to the current second online node is reached in any data transmission period, and the to-be-transmitted data of the current second online node is greater than the preset threshold, the current second online node determines the transmission time slot according to the size of the to-be-transmitted data.
[0108] Figure 7 is a timing structure diagram of a data transmission period in an example of the present application, as shown in Figure 7 In an example of the present application, after the duty synchronization of the data transmission period is completed in time slot 1, the original virtual master node is performed first, that is, the reservation time slot of node ID1 is performed first, Figure 7 The reservation time slot (time slot 2) of node ID1 is the first allocated time slot of node ID1. Since node ID1 is the first detected target node, the reservation time slot (time slot 2) of node ID1 is also the initial allocated time slot of node ID1.
[0109] Node ID1 determines that the local data to be transmitted is greater than the preset threshold. Based on the size of the data to be transmitted, Node ID1 determines that the data to be transmitted requires two time slots to complete the data transmission. Therefore, Node ID1 determines time slot 3 as the transmission time slot, and thus uses time slot 2 and time slot 3 to transmit the data to be transmitted together.
[0110] Step S62: The current node broadcasts the transmission time slot to the idle node; wherein the idle node is at least one node in the preset communication network that has not transmitted data.
[0111] Continue to refer to Figure 7 In the example above, node ID1 sends a reservation frame to the node originally corresponding to time slot 3, which means node ID1 sends a reservation frame to node ID2, and also to virtual slave node 1. Since the data transmission cycle has not yet reached the initial reservation time slot originally corresponding to node ID2, node ID2 is an idle node. Node ID1 sends reservation frames to node ID3, which originally corresponds to time slot 4, as well as nodes ID4, ID5, etc. Node ID3 is virtual slave node 2, node ID4 is virtual slave node 3, and node ID5 is virtual slave node 4.
[0112] Step S63: When any node among the idle nodes determines that the transmission time slot contains its corresponding second allocation time slot, the second allocation time slot is updated to the time slot after the last time slot in the transmission time slot.
[0113] Continue to refer to Figure 7 In the example above, node ID2 detects that its local corresponding time slot is time slot 3, which is the same as the time slot 3 sent by node ID1. It then performs time slot backoff and updates its original initial reserved time slot to time slot 4, thus delaying its own reserved time slot. In this example, since node ID2 has not yet performed time slot backoff, node ID2's second allocated time slot is the initial reserved time slot obtained by node ID2 based on its node number. After this delay, node ID2's subsequent second allocated time slots are all time slots that have been updated at least once, and are no longer the initial reserved time slots.
[0114] Correspondingly, node ID3, node ID4, etc., following node ID2 will also be sequentially postponed according to the received transmission time slot. The method for postponing node ID3 and node ID4 is the same as the method for postponing node 2, and will not be repeated in this embodiment.
[0115] Step S64: The current node uses the transmission time slot to transmit data.
[0116] Continue to refer to Figure 7In the example above, after node ID1 completes data transmission using time slots 2 and 3, the data transmission cycle begins for the node corresponding to the next time slot. That is, the data transmission cycle begins for the node corresponding to time slot 4. Node ID2, corresponding to time slot 4, continues to monitor the relationship between the size of its local data to be transmitted and a preset threshold. Node ID2 determines that data transmission requires three time slots, thus determining that the sending time slots are time slots 5 and 6. Node ID2 then uses time slots 4, 5, and 6 to transmit its local data to be transmitted. Node ID2 sends the reservation frame to node ID3, which originally corresponded to time slot 5, and node ID4, which originally corresponded to time slot 6. When nodes ID3 and ID4 determine that their second allocated time slots are the same as one of node ID2's sending time slots, they perform time slot backoff, updating their original second allocated time slots to time slots 7 and 8.
[0117] Another embodiment of this application proposes a method for dynamically allocating time slots to nodes during dynamic time slot networking, which further includes:
[0118] When the data transmission cycle reaches the first allocated time slot corresponding to the current node, and the data to be transmitted locally at the current node is less than or equal to a preset threshold, the data transmission is performed using the first allocated time slot.
[0119] When any data transmission cycle reaches the first allocated time slot corresponding to the current node, and the data to be transmitted locally on the current node is zero, the data transmission cycle is switched to the next time slot of the first allocated time slot.
[0120] Implementing dynamic time slot allocation for nodes also requires dynamic switching of time slots.
[0121] Continue to refer to Figure 7 The original virtual master node has 0 data to be transmitted locally, which means node ID1 has 0 data to be transmitted locally. The virtual slave node 1 also has 0 data to be transmitted locally, which means node ID2 has 0 data to be transmitted locally. Node ID1 directly switches time slot 2 to time slot 3, so that the data transmission cycle begins to allocate and transmit the time slot corresponding to node ID2 in time slot 3. Node ID2 directly switches time slot 3 to time slot 4, so that the data transmission cycle begins to allocate and transmit the time slot corresponding to node ID3 in time slot 4. Node ID3 reserves time slots 5 and 6, which means slave node 2 reserves time slots 5 and 6. Time slots 5 and 6 are used as transmission time slots, and node ID3 uses time slots 4, 5 and 6 together to transmit its local data to be transmitted.
[0122] The embodiment of the present application sets initial reserved time slots for each node in a preset communication network according to the priority of node number, and in each data transmission period, starts to reserve time slots for a target node corresponding to a first time slot for transmitting data according to the initial reserved time slot of the node, determines whether the target node needs to reserve more time slots to send the data to be transmitted according to the size of the data to be transmitted by the target node, and specifically determines whether the target node needs to reserve a sending time slot, in the case that the target node needs to reserve a sending time slot, the target node broadcasts a reserved frame to all nodes not performing data transmission, and the nodes not performing data transmission update their corresponding second allocated time slots when their corresponding time slots are included in the sending time slot. After the target node transmits the complete data using the sending time slot, the data transmission period continues the data transmission of the next node, and specifically, the data transmission of the node corresponding to the first time slot after the sending time slot of the target node is performed. All nodes in the preset communication network complete the purpose of dynamically allocating time slots to each node according to data requirements through the above time slot reservation and time slot yielding, dynamically allocate time slots according to the data length of each node without a central node, avoid communication collision, and effectively allocate time slots according to different transmission data lengths to allocate frequency points. Since there is no central node, the embodiment of the present application changes the dependency of the traditional networking mode on the master-slave mode and the low channel utilization rate. The performance requirements of high channel utilization rate, high speed, high invulnerability and wide application scenarios are achieved.
[0123] Based on the same inventive concept, the embodiment of the present application provides a dynamic time slot networking device. Figure 8 is a schematic diagram of the dynamic time slot networking device provided by the embodiment of the present application. As shown in Figure 8 , the device comprises:
[0124] The determining module 81 is configured to, when the first allocated time slot corresponding to the current node is reached in any data transmission period and the data to be transmitted by the current node is greater than a preset threshold, make the current node determine a sending time slot according to the size of the data to be transmitted; wherein the sending time slot is at least one time slot adjacent to the first allocated time slot; and the current node is any node in the preset communication network.
[0125] The first broadcasting module 82 is configured to make the current node broadcast the sending time slot to idle nodes; wherein the idle nodes are at least one node not performing data transmission in the preset communication network.
[0126] The updating module 83 is configured to, when any node in the idle nodes determines that the second allocated time slot corresponding to the idle node is included in the sending time slot, update the second allocated time slot to a time slot after the last time slot in the sending time slot.
[0127] transmitting module 84, configured to enable the current node to perform data transmission by using the sending time slot.
[0128] Optionally, the apparatus further comprises:
[0129] receiving module, configured to enable a node receiving a reference time frame to perform local clock alignment according to the reference time frame before the start of any data transmission period, to obtain a feedback time frame, and to return the feedback time frame to a node broadcasting the reference time frame, so as to determine that the node receiving the reference time frame is a first online node; wherein the reference time frame is the local time of a node having the highest node number in the preset communication network.
[0130] The determining module comprises:
[0131] The first determining submodule is configured to enable the current first online node to determine a sending time slot according to the size of the data to be transmitted when the data to be transmitted of the current first online node is greater than a preset threshold.
[0132] Optionally, the apparatus further comprises:
[0133] The second broadcasting module is configured to enable a node not receiving a reference time frame to broadcast a local time as a reference time frame to other nodes in the preset communication network when the local node number is the highest node number before the start of any data transmission period.
[0134] The returning module is configured to determine that the node not receiving a reference time frame is a second online node when the feedback time frame returned by other nodes in the preset communication network is received; wherein the feedback time frame is obtained by clock alignment of the other nodes in the preset communication network according to the reference time frame.
[0135] The determining module comprises:
[0136] The second determining submodule is configured to enable the current second online node to determine a sending time slot according to the size of the data to be transmitted when the data to be transmitted of the current second online node is greater than a preset threshold.
[0137] Optionally, the apparatus further comprises:
[0138] The transmitting module is configured to enable the current node to perform data transmission by using the first allocated time slot when the data to be transmitted of the current node is less than or equal to a preset threshold.
[0139] The switching module is configured to switch the data transmission period to a next time slot of the first allocated time slot when the data transmission period is in the first allocated time slot corresponding to the current node and the to-be-transmitted data of the current node is zero.
[0140] Optionally, the apparatus further comprises:
[0141] The reservation module is configured to perform initial time slot reservation for each node according to the priority of the node number corresponding to each node before the start of the first data transmission period, to obtain an initial allocated time slot corresponding to each node.
[0142] The adjustment module is configured to, when the to-be-transmitted data of a target node corresponding to a target initial allocated time slot is greater than the preset threshold value for the first time in any data transmission period, the target node adjusts the initial allocated time slots corresponding to the remaining nodes on the basis of the target initial allocated time slot according to the size of the to-be-transmitted data.
[0143] Optionally, the apparatus further comprises:
[0144] The first setting module is configured to set a frequency hopping frequency point for each node in the preset communication network before the start of the first data transmission period.
[0145] The receiving module comprises:
[0146] The receiving submodule is configured to enable a node receiving a reference time frame to perform local clock alignment according to the reference time frame, to obtain a feedback time frame, and to return the feedback time frame to a node broadcasting the reference time frame through the frequency hopping frequency point, so as to determine that the node receiving the reference time frame is a first online node.
[0147] Optionally, the apparatus further comprises:
[0148] The second setting module is configured to set a frequency hopping frequency point for each node in the preset communication network before the start of the first data transmission period.
[0149] The second broadcasting module comprises:
[0150] The broadcasting submodule is configured to enable a node not receiving a reference time frame to broadcast a local time as a reference time frame to other nodes and a new node in the preset communication network through the frequency hopping frequency point when the local node number is the highest level node number, so that the new node accesses the preset communication network according to the reference time frame.
[0151] Based on the same inventive concept, another embodiment of the present application provides a readable storage medium, which stores a computer program, and the computer program is executed by a processor to implement the steps in the dynamic time slot networking method according to any one of the above embodiments of the present application.
[0152] Based on the same inventive concept, another embodiment of the present application provides an electronic device, which comprises a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor is executed to implement the steps in the dynamic time slot networking method according to any one of the above embodiments of the present application.
[0153] For the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts are described in the part of the method embodiment.
[0154] Each embodiment in the present specification is described in a progressive or illustrative manner, and each embodiment focuses on the difference from other embodiments. The same and similar parts between each embodiment can be referred to each other.
[0155] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a device, or a computer program product. Therefore, the embodiments of the present application can be in the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Moreover, the embodiments of the present application can be in the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0156] The embodiments of the present application are described with reference to the flowcharts and / or block diagrams according to the method, device, and computer program product of the embodiments of the present application. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, and the combination of the flows and / or blocks in the flowcharts and / or block diagrams can be implemented by computer program instructions. These computer program instructions can be provided to a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing terminal devices to produce a machine, so that the instructions executed by the computer or other programmable data processing terminal devices produce a device implemented in the flowcharts and / or block diagrams. Figure 1 The device that implements the function specified in one flow or multiple flows and / or blocks Figure 1 The device that implements the function specified in one flow or multiple flows and / or blocks
[0157] These computer program instructions can also be stored in a computer-readable storage medium, which can guide the computer or other programmable data processing terminal devices to work in a specific way, so that the instructions stored in the computer-readable storage medium produce a manufactured product including instruction devices, which implement the flowcharts and / or block diagrams. Figure 1one or more processes and / or blocks Figure 1 the function specified in the one or more blocks or one or more blocks.
[0158] These computer program instructions can also be loaded into computer or other programmable data processing terminal devices, so that a series of operation steps are performed on the computer or other programmable terminal devices to generate a computer-implemented process, so that the instructions executed on the computer or other programmable terminal devices provide a process for implementing the flow Figure 1 one or more processes and / or blocks Figure 1 Figure 1 the function specified in the one or more blocks or one or more blocks.
[0159] Although the preferred embodiments of the present application have been described, those skilled in the art who have the basic inventive concept can make further changes and modifications to the embodiments. Therefore, the appended claims are intended to include the preferred embodiments and all changes and modifications falling within the scope of the embodiments of the present application.
[0160] Finally, it should also be noted that, in this paper, the relationship terms such as first and second are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply that there is any such actual relationship or order between the entities or operations. Moreover, the terms "include", "contain" or any other variants thereof are intended to cover non-exclusive inclusion, so that the process, method, article or terminal device including a series of elements not only includes those elements, but also includes other elements not explicitly listed or inherent to such process, method, article or terminal device. Without more limitations, the element defined by the statement "including a" does not exclude the presence of other identical elements in the process, method, article or terminal device including the element.
[0161] The above provides a dynamic time slot networking method, device, equipment and storage medium, the above description of the embodiments is only for helping to understand the method of the present application and its core idea; at the same time, for those skilled in the art, according to the idea of the present application, there will be changes in specific implementation mode and application range, and the above description should not be understood as the limitation of the present application.
Claims
1. A dynamic time-slot networking method, characterized in that, The method includes: When any data transmission cycle reaches the first allocated time slot corresponding to the current node, and the data to be transmitted by the current node is greater than a preset threshold, the current node determines a transmission time slot based on the size of the data to be transmitted; wherein, the transmission time slot is at least one time slot adjacent to the first allocated time slot; and the current node is any node in the preset communication network. The current node broadcasts the transmission time slot to the idle node; wherein the idle node is at least one node in the preset communication network that is not transmitting data. When any node among the idle nodes determines that the transmission time slot contains its corresponding second allocation time slot, the second allocation time slot is updated to the time slot after the last time slot in the transmission time slot; The current node uses the transmission time slot to transmit data; When the data transmission cycle reaches the first allocated time slot corresponding to the current node, and the data to be transmitted locally at the current node is less than or equal to a preset threshold, the data transmission is performed using the first allocated time slot. When any data transmission cycle reaches the first allocated time slot corresponding to the current node, and the data to be transmitted locally on the current node is zero, the data transmission cycle is switched to the next time slot of the first allocated time slot.
2. The method according to claim 1, characterized in that, The method further includes: Before the start of any data transmission cycle, the node that receives the reference time frame performs local clock alignment based on the reference time frame to obtain a feedback time frame, and returns the feedback time frame to the node that broadcast the reference time frame, so as to determine that the node that receives the reference time frame is the first online node; wherein, the reference time frame is the local time of the node with the highest level node number in the preset communication network; When any data transmission cycle reaches the first allocated time slot corresponding to the current node, and the data to be transmitted by the current node is greater than a preset threshold, the current node determines the transmission time slot based on the size of the data to be transmitted, including: When any data transmission cycle reaches the first allocated time slot corresponding to the current first online node, and the data to be transmitted by the current first online node is greater than a preset threshold, the current first online node determines the transmission time slot based on the size of the data to be transmitted.
3. The method according to claim 1, characterized in that, The method further includes: Before the start of any data transmission cycle, if a node that has not received a reference time frame has the highest-level node number in its local node number, it will broadcast its local time as a reference time frame to other nodes in the preset communication network. Upon receiving a feedback time frame from other nodes in the preset communication network, the node that has not received the reference time frame is determined to be the second online node; wherein, the feedback time frame is obtained by other nodes in the preset communication network through clock alignment based on the reference time frame; When any data transmission cycle reaches the first allocated time slot corresponding to the current node, and the data to be transmitted by the current node is greater than a preset threshold, the current node determines the transmission time slot based on the size of the data to be transmitted, including: When any data transmission cycle reaches the first allocated time slot corresponding to the current second online node, and the data to be transmitted by the current second online node is greater than a preset threshold, the current second online node determines the transmission time slot according to the size of the data to be transmitted.
4. The method according to claim 1, characterized in that, Before any data transmission cycle reaches the first allocated time slot corresponding to the current node, the method further includes: Before the start of the first data transmission cycle, each node is initially scheduled for a time slot based on the priority level of its corresponding node number, thus obtaining the initial allocated time slot for each node. When the target node's data to be transmitted is detected to be greater than the preset threshold for the first time in any data transmission cycle, the target node adjusts the initial allocation time slots corresponding to the other nodes based on the size of the data to be transmitted and the target initial allocation time slot.
5. The method according to claim 2, characterized in that, The method further includes: Before the first data transmission cycle begins, a frequency hopping point is set for each node in the preset communication network; The node that receives the reference time frame performs local clock alignment based on the reference time frame to obtain a feedback time frame, and returns the feedback time frame to the node that broadcast the reference time frame, thereby determining that the node that receives the reference time frame is the first online node, including: The node that receives the reference time frame performs local clock alignment based on the reference time frame to obtain a feedback time frame, and returns the feedback time frame to the node that broadcasts the reference time frame through the frequency hopping point, so as to determine that the node that receives the reference time frame is the first online node.
6. The method according to claim 3, characterized in that, The method further includes: Before the first data transmission cycle begins, a frequency hopping point is set for each node in the preset communication network; When a node that has not received a reference time frame has the highest-level node number in its local node network, it broadcasts its local time as the reference time frame to other nodes in the preset communication network, including: When a node that has not received a reference time frame has the highest-level node number in its local node, it broadcasts its local time as a reference time frame to other nodes and new nodes in the preset communication network through the frequency hopping point, so that the new node can access the preset communication network according to the reference time frame.
7. A dynamic time-slot networking device, characterized in that, The device includes: A determining module is configured to, during any data transmission cycle, reach the first allocated time slot corresponding to the current node, and when the data to be transmitted by the current node is greater than a preset threshold, cause the current node to determine a transmission time slot based on the size of the data to be transmitted; wherein, the transmission time slot is at least one time slot adjacent to the first allocated time slot; and the current node is any node in a preset communication network; The first broadcast module is used to enable the current node to broadcast the transmission time slot to an idle node; wherein the idle node is at least one node in the preset communication network that is not transmitting data. The update module is used to update the second allocated time slot to a time slot after the last time slot in the transmission time slot when any node in the idle nodes determines that the transmission time slot contains its corresponding second allocated time slot; The transmission module is used to enable the current node to transmit data using the transmission time slot; The transmission module is used to transmit data using the first allocated time slot when the data to be transmitted at the current node is less than or equal to a preset threshold during any data transmission cycle. The switching module is used to switch the data transmission cycle to the next time slot of the first allocated time slot when the current node reaches the first allocated time slot in any data transmission cycle and the local data to be transmitted of the current node is zero.
8. A readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the steps of the method as described in any one of claims 1-6.
9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes, it implements the steps of the method as described in any one of claims 1-6.
Citation Information
Patent Citations
Method for realizing dynamic time slot networking based on time division multiple access technology
CN112584442A