Communication delay optimization method in wireless ad hoc network
By preallocating the time slots in the transmission cycle of the ad hoc network, dynamic time slots, static time slots and preallocated dynamic time slots are introduced, which solves the communication delay problem caused by the large number of nodes in the ad hoc network mode, and achieves more efficient resource utilization and reduced delay effects.
Patent Information
- Application Number
- CN202411931996.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-26
- Publication Date
- 2025-04-25
AI Technical Summary
In the ad hoc network mode, the more nodes the ad hoc network broadcast cycle increases, resulting in a multiple increase in communication delay.
By preallocating the time slots in the transmission cycle of the ad hoc network, dynamic time slots, static time slots and preallocated dynamic time slots are introduced. Dynamic time slots are used for resource announcement transmission, static time slots are used for resource scheduling, and preallocated dynamic time slots are used for direct data transmission.
It reduces communication delay, improves resource utilization efficiency, is compatible with large data traffic transmission, and restores pre-allocated dynamic time slot configuration when not needed.
Smart Images

Figure CN119893688A_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the technical field of wireless ad hoc network communication, and in particular relates to a method for optimizing communication delay in a wireless ad hoc network. Background Art
[0002] In the ad hoc network mode, it is necessary to achieve an integrated design of link access and link, and to ensure both access link services and backhaul link services through time division multiplexing. Currently, the access backhaul link in the ad hoc network mode is guaranteed by time division multiplexing, and the time slot ratio in the wireless frame is fixed. The disadvantages of this method are obvious. The fixed time slot ratio means that it cannot be adjusted according to the traffic volume of the access or backhaul link, which will lead to a waste of wireless resources.
[0003] During the communication process of the ad hoc network, currently only broadcast data can be sent in static time slots, resource negotiation can be performed, dynamic time slot resource scheduling can be performed, and point-to-point data can be sent. Each node needs to apply for a static time slot to send data. When there are multiple points of connection between the two points of communication, each node needs to apply for resources and schedule and send resources. This will greatly increase the transmission delay. In extreme cases, if the data arrives and misses the static time slot resource negotiation, the time slot resource request can only be sent in the next static time slot of the next node, and in the next ad hoc network cycle. This is equivalent to data needing to wait for more than two ad hoc network cycles at one node. If each node in the middle needs to wait for one more ad hoc network cycle, the delay of this packet of data will be extremely large. Therefore, in the current ad hoc network mode, there is a problem that the more nodes there are, the longer the ad hoc network broadcast cycle increases, and the communication delay also increases exponentially. Summary of the invention
[0004] The purpose of the present invention is to provide a method for optimizing communication delay in a wireless ad hoc network to solve the problem that in the current ad hoc network mode, the more nodes there are, the longer the ad hoc network broadcast cycle is, and the communication delay also increases exponentially.
[0005] To achieve the above object, the present invention adopts the following technical solution:
[0006] On the one hand, this specification provides a method for optimizing communication delay in a wireless ad hoc network, comprising:
[0007] Step 102, pre-allocate the time slots in the ad hoc network transmission cycle to obtain a new ad hoc network transmission cycle; the time slots in the new ad hoc network transmission cycle include dynamic time slots, static time slots and pre-allocated dynamic time slots; the dynamic time slots are used to send data based on resource notifications; the static time slots are used to send data of the corresponding nodes or send resource notifications for resource scheduling; the pre-allocated dynamic time slots are used to directly send data of the corresponding nodes;
[0008] Step 104, if the scheduled time slot is a pre-allocated dynamic time slot, determine whether the number of pre-allocated dynamic time slots configured by the target base station where the pre-allocated dynamic time slot is located meets the amount of data to be sent, if so, send it directly, if not, apply for a dynamic time slot for sending;
[0009] Step 106, if the scheduled time slot is a dynamic time slot, data transmission is performed based on the resource notification;
[0010] Step 108, if the scheduled time slot is a static time slot, determine whether the resource amount of the static time slot meets the amount of data to be sent, if so, send it directly, if not, apply for a dynamic time slot for sending.
[0011] On the other hand, this specification provides a communication delay optimization device in a wireless ad hoc network, comprising:
[0012] A time slot pre-allocation module is used to pre-allocate time slots in a self-organizing network transmission cycle to obtain a new self-organizing network transmission cycle; the time slots in the new self-organizing network transmission cycle include dynamic time slots, static time slots and pre-allocated dynamic time slots; the dynamic time slots are used to send data based on resource notifications; the static time slots are used to send data of the corresponding node or send resource notifications for resource scheduling; the pre-allocated dynamic time slots are used to directly send data of the corresponding node;
[0013] The pre-allocated dynamic time slot scheduling module is used to determine whether the number of pre-allocated dynamic time slots configured by the target base station where the pre-allocated dynamic time slot is located meets the amount of data to be sent if the scheduled time slot is a pre-allocated dynamic time slot. If so, it is sent directly; if not, a dynamic time slot is applied for sending;
[0014] A dynamic time slot scheduling module, used for sending data based on resource notification if the scheduled time slot is a dynamic time slot;
[0015] The static time slot scheduling module is used to determine whether the resource amount of the static time slot meets the amount of data to be sent if the scheduled time slot is a static time slot. If so, it is sent directly; if not, a dynamic time slot is applied for sending.
[0016] Based on the above technical solution, this specification can achieve the following technical effects:
[0017] This method studies the pre-allocation of dynamic time slots, aiming to omit the process of static time slot resource negotiation in the process of low business volume, combine dynamic time slots with static time slots, introduce pre-configured dynamic time slots, static time slots can send point-to-point data, dynamic time slots do not need static time slot resource negotiation and directly send data according to certain rules, while it is also compatible with the transmission of large-volume business, in which a single node can occupy all time slot resources, and the pre-allocated dynamic time slot configuration can be restored after no scheduling, thereby solving the problem that in the current self-organizing network mode, the more nodes there are, the longer the self-organizing network broadcast cycle is, and the communication delay also increases exponentially. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] Figure 1 The present invention is a flowchart of a method for optimizing communication delay in a wireless ad hoc network according to an embodiment of the present invention.
[0019] Figure 2 FIG. 4 is a schematic diagram of determining a data scrambling code according to an embodiment of the present invention.
[0020] Figure 3 Schematic diagram of the overall architecture of the data link layer in one embodiment of the present invention.
[0021] Figure 4 Schematic diagram of the overall architecture of the RRC layer in one embodiment of the present invention.
[0022] Figure 5 FIG. 4 is a schematic diagram of the overall architecture of the MAC layer in an embodiment of the present invention.
[0023] Figure 6 This is a schematic diagram of three base stations horizontally connected in one embodiment of the present invention.
[0024] Figure 7 The present invention is a schematic diagram of the structure of a communication delay optimization device in a wireless ad hoc network according to an embodiment of the present invention.
[0025] Figure 8 The figure is a schematic diagram of an electronic device according to the present invention. DETAILED DESCRIPTION
[0026] The present invention is further described in detail below in conjunction with the accompanying drawings and specific embodiments. The advantages and features of the present invention will become more apparent from the following description and claims. It should be noted that the drawings are all in very simplified form and are not in precise proportions, and are only used to conveniently and clearly assist in explaining the purpose of the embodiments of the present invention.
[0027] It should be noted that, in order to clearly explain the content of the present invention, the present invention specifically cites multiple embodiments to further illustrate different implementations of the present invention, wherein the multiple embodiments are enumerated rather than exhaustive. In addition, for the sake of brevity of explanation, the contents mentioned in the previous embodiments are often omitted in the subsequent embodiments. Therefore, the contents not mentioned in the subsequent embodiments can refer to the previous embodiments accordingly.
[0028] Example 1
[0029] Please refer to Figure 1 , Figure 1 The figure shows a method for optimizing communication delay in a wireless ad hoc network provided by this embodiment. In this embodiment, the method includes:
[0030] Step 102, pre-allocate the time slots in the ad hoc network transmission cycle to obtain a new ad hoc network transmission cycle; the time slots in the new ad hoc network transmission cycle include dynamic time slots, static time slots and pre-allocated dynamic time slots; the dynamic time slots are used to send data based on resource notifications; the static time slots are used to send data of the corresponding nodes or send resource notifications for resource scheduling; the pre-allocated dynamic time slots are used to directly send data of the corresponding nodes;
[0031] In this embodiment, one implementation of step 102 is:
[0032] Step 202, determining a preconfigured cross-connection period based on the determined number of nodes in the ad hoc network transmission period and the number of cross-connection dynamic time slots;
[0033] Step 204, determining the number of pre-allocated dynamic time slots and the corresponding pre-configured node index based on the number of nodes in the ad hoc network transmission period;
[0034] Step 206, determining idle dynamic time slots and static time slots in the pre-configured cross-connection period; each static time slot corresponds to a base station ID;
[0035] Step 208, based on the preconfigured node index and the base station ID of the static time slot, pre-allocate the dynamic time slot to the static time slot and the idle dynamic time slot in turn, and obtain a new ad hoc network transmission period after the dynamic time slot is pre-allocated.
[0036] In this embodiment, one implementation of step 208 is:
[0037] Step 302, configuring a pre-allocated dynamic time slot with a pre-configured node index identical to its base station ID for the static time slot;
[0038] Step 304: Allocate the remaining pre-allocated dynamic time slots to the idle dynamic time slots in sequence according to the size of the pre-configured node index, and obtain a new ad hoc network transmission period after the dynamic time slots are pre-allocated.
[0039] In this embodiment, one implementation of step 304 is:
[0040] Step 3042: If the preconfigured cross-connection period is an even period, the remaining pre-allocated dynamic time slots are allocated to the idle dynamic time slots in descending order according to the pre-configured node indexes, to obtain a new ad hoc network transmission period after the dynamic time slots are pre-allocated;
[0041] Step 3044: if the preconfigured cross-connection period is an odd period, the remaining pre-allocated dynamic time slots are allocated to the idle dynamic time slots in ascending order according to the pre-configured node indexes to obtain a new ad hoc network transmission period after the dynamic time slots are pre-allocated.
[0042] Step 104, if the scheduled time slot is a pre-allocated dynamic time slot, determine whether the number of pre-allocated dynamic time slots configured by the target base station where the pre-allocated dynamic time slot is located meets the amount of data to be sent, if so, send it directly, if not, apply for a dynamic time slot for sending;
[0043] In this embodiment, one implementation of step 104 is:
[0044] Step 402, if the scheduled time slot is a pre-allocated dynamic time slot, determining the target base station where the pre-allocated dynamic time slot is located;
[0045] Step 404, determining whether there is buffered data in the target base station, and if so, calculating the target number of time slots required to send the buffered data;
[0046] In this embodiment, one implementation of step 404 is:
[0047] Based on the modulation and coding level and the number of wireless resources available for a single time slot, the amount of data that can be carried by a single time slot is calculated;
[0048] Based on the amount of buffered data of the target base station and the amount of data that can be carried by a single time slot, the target number of time slots required for sending the buffered data is calculated.
[0049] In this embodiment, when the target number of time slots obtained by calculation is 0, but the amount of cached data of the target base station is not 0, the target number of time slots is set to 1.
[0050] Step 406, determine whether the target time slot number is less than or equal to the pre-allocated dynamic time slot number configured by the target base station. If so, send directly; if not, deduct the pre-allocated dynamic time slot number configured by the target base station and apply for additional dynamic time slots for sending.
[0051] Step 106, if the scheduled time slot is a dynamic time slot, data transmission is performed based on the resource notification;
[0052] Step 108, if the scheduled time slot is a static time slot, determine whether the resource amount of the static time slot meets the amount of data to be sent, if so, send it directly, if not, apply for a dynamic time slot for sending.
[0053] In this embodiment, one implementation of step 108 is:
[0054] Step 502, if the scheduled time slot is a static time slot, then obtain the amount of data to be sent in the static time slot;
[0055] Step 504, determine whether the amount of data to be sent in the static time slot is less than or equal to the amount of data that can be carried by the single time slot. If so, send it directly. If not, send the corresponding resource notification in the static time slot and apply for a dynamic time slot for sending.
[0056] In this embodiment, referring to Figure 2, if the called time slot is a static time slot, the pre-configured node index of the base station where the static time slot is located is used to add data interference; if the called time slot is a dynamic time slot or a pre-allocated dynamic time slot, the pre-configured node index of the base station at the data receiving end is used to add data interference.
[0057] Specifically,
[0058] 1. Overall structure of the method
[0059] refer to Figure 3-Figure 5 Dynamic resource negotiation is mainly distributed in the RRC layer and MAC layer in the data link layer. The RRC layer consists of node maintenance, routing management, broadcast transceiver, time slot resource management, timer management, configuration file reading and inter-module interaction management. The MAC layer consists of node maintenance, resource allocation, broadcast transceiver, time slot resource management, timer management, configuration file reading and inter-module interaction management.
[0060] 2. Detailed design of the method
[0061] The number of time slots occupied by the backhaul link within a 5ms half-frame is configurable, and the number of time slots occupied by the static time slot is configurable.
[0062] Table 1 Time slot structure of 5ms half frame
[0063]
[0064] Table 1 shows a 5ms frame structure. The ad hoc network consists of time slots 5 to 9, of which time slots 5 to 8 are dynamic time slots used to send data between two ad hoc network nodes, and time slot 9 is a static time slot used to broadcast the broadcast data of this node, including node discovery, resource application and other messages. One static time slot can be configured in the 5ms frame structure, and one static time slot can only be associated with one node.
[0065] Table 2 Example of time domain resource occupancy of access and backhaul links within a 40ms period
[0066]
[0067] Table 2 shows the transmission period of an ad hoc network consisting of 8 ad hoc network nodes. There is a static time slot of 5 ms, corresponding to one node. There are 8 nodes in total, and the transmission period of an ad hoc network of 8 nodes is 40 ms.
[0068] Time slots 5 to 9 belong to base station ID0. Because the scheduling time is ahead of the air interface time, the resource application time will be earlier than the actual transmission time. If base station ID0 finds that there is data to be scheduled in time slot 5, base station ID0 will broadcast the resource application message in time slot 9, and the scrambling code used for the broadcast is the base station index of base station ID0. The remaining base stations ID1 to ID7 receive the resource announcement message of base station ID0 in time slot 9. Time slots 15 to 19 belong to base station ID1. Because the scheduling time is ahead of the air interface time, the resource application time will be earlier than the actual transmission time. If base station ID1 finds that there is data to be scheduled in time slot 15, base station ID1 will broadcast the resource application message in time slot 19, and the scrambling code used for the broadcast is the base station index of base station ID1. The remaining base stations ID0, ID2 to ID7 receive the resource announcement message of base station ID1 in time slot 19, and broadcast their own resource conditions in their corresponding time slots. After a complete ad hoc network cycle, base station ID0 will obtain the dynamic time slot index that can send point-to-point data in the next ad hoc network cycle. It will send point-to-point data in this time slot, and the corresponding base station will receive it in this time slot. The receiving end will use its own base station index for descrambling. Point-to-point data sent in the dynamic time slot is scrambled using the base station index of the receiving end.
[0069] If there is a packet of data sent from base station ID0 to base station ID2 via base station ID1, base station ID0 receives the data in time slot 5 of ad hoc network cycle 0, applies for resources, and sends it in ad hoc network cycle 1. If base station ID1 receives and processes it before time slot 15, it will send a resource application in time slot 19 of ad hoc network cycle 1 and send data in ad hoc network cycle 2. In this way, it takes at least three ad hoc network cycles for a packet of data to be sent from base station ID0 to base station ID2.
[0070] Now we introduce the pre-allocation of dynamic time slots in self-organizing networks. The original dynamic time slots in self-organizing networks are pre-allocated according to certain rules.
[0071] First, the number of self-organizing network time slots in a self-organizing network cycle is calculated. Then, according to certain rules, dynamic time slots are initialized. After initialization, there are dynamic time slots in the initial time slot ratio of the self-organizing network, and dynamic time slots and static time slots are pre-allocated.
[0072] The initialization rules are as follows:
[0073] 1. First, confirm the pre-configured period cross-link dynamic time slot * N. When the cross-link dynamic time slot * N > the number of nodes, the value of the cross-link dynamic time slot * N is the pre-configured cross-link period.
[0074] For example, if the horizontal dynamic time slot in this embodiment is 5, then 5*1<8, 5*2>8, and 10 is the pre-configured period. Pre-allocation is performed with every 10 dynamic time slots as one pre-configured horizontal period.
[0075] 2. The node ID sent in the static time slot during the current pre-configured horizontal connection period is first deducted from the current number of all nodes.
[0076] For example, in the first 10ms, if the static time slots are 0 and 1, the nodes that need to be pre-allocated are 2, 3, 4, 5, 6, and 7.
[0077] For example, in the second 10ms, if the static time slots are 2 and 3, the nodes that need to be pre-allocated are 0, 1, 4, 5, 6, and 7.
[0078] 3. Put the pre-allocated time slots into the idle dynamic time slots in order. Even-numbered cycles are arranged from large to small, and odd-numbered cycles are arranged from small to large.
[0079] The time slot allocation after initialization is shown in Table 3:
[0080] Table 3 Time slot allocation table after dynamic time slot initialization
[0081]
[0082]
[0083] If the scheduled time slot is a dynamic time slot pre-allocated by the ad hoc network, first read the target base station index corresponding to the pre-allocated time slot. Query the internal cache data to see if there is cache data for the corresponding base station. If so, calculate the number of time slots required for the data volume.
[0084] First, according to the modulation and coding level and the number of available wireless resources in a single time slot, the amount of data that can be carried by a single time slot is calculated. Then, the required time slot is calculated using the data storage capacity calculated by the base station\the amount of data carried by a single time slot. When the calculated number of time slots is 0 and the amount of data cached by the base station is not 0, the number of time slots is set to 1.
[0085] It should be noted here that if the calculated number of time slots is less than the total pre-configured number of the corresponding base station index configuration within the self-organizing network cycle, a dynamic time slot will not be applied for separately. Otherwise, after deducting the total pre-configured number of the corresponding base station index configuration within the self-organizing network cycle, the corresponding resource notification will be sent in the static time slot to apply for additional dynamic resources.
[0086] For example, referring to Table 3, if there is a packet of data (cached data under base station ID6) sent from base station ID6 to base station ID4, it passes through base station ID2. Base station ID6 receives the data in time slot 5 of self-organizing network cycle 0. At this time, base station ID6 no longer needs to apply for resources. When time slot 6 (pre-allocated dynamic time slot) is scheduled, it directly sends it. The remaining base stations receive it in time slot 6. Other base stations that do not have a one-hop relationship with base station ID6 cannot receive the data sent by base station ID6. Those that have a one-hop relationship with base station ID6 will not forward the data if they find that they cannot reach base station ID4 after parsing. At this time, base station ID2 receives it and finds that it needs to forward it. Base station ID2 will send the data directly in time slot 27 without applying for resources. Therefore, it only takes one-quarter of the self-organizing network time slot for data to go from base station ID6 to base station ID4.
[0087] It should be noted that the pre-allocated dynamic time slot can be used for both dynamic and static purposes, a semi-static design. The pre-allocated ID of the time slot is X, and the base station corresponding to ID X can use X as the scrambling code to broadcast and send data in this time slot.
[0088] If the scheduling time slot is a dynamic time slot, scheduling is performed according to the configuration information in the resource notification, and the original process remains unchanged.
[0089] Specifically, dynamic time slot transmission requires an interaction of one superframe period (number of nodes*number of 5ms time slots, superframe period of 8 nodes is 8*10=80) to confirm resource usage of the next superframe period.
[0090] If the scheduled time slot is a static time slot, and if the static time slot resources can carry all the required transmission data, there is no need to apply for dynamic resources, and the data can be sent directly. The resource application process is omitted, which is also the purpose of introducing pre-allocated time slots. The transmission uses the index of the base station corresponding to the static time slot for data scrambling.
[0091] It should be noted here that static time slot resources are fixedly allocated during program initialization and cannot be used by other nodes to send data, only by this node.
[0092] For example, if there is a packet of data sent from base station ID0 to base station ID2, it passes through base station ID1. Base station ID0 receives the data in time slot 5 of self-organizing network cycle 0. At this time, base station ID0 no longer needs to apply for resources. When time slot 9 (static time slot) is scheduled, it directly sends it. The other base stations receive it in time slot 9. Other base stations that do not have a one-hop relationship with base station ID0 cannot receive the data sent by base station ID0. Those that have a one-hop relationship with base station ID0 will not forward the data after parsing if they find that they cannot reach base station ID2. At this time, base station ID1 receives it and finds that it needs to forward it. Base station ID1 will send the data directly in time slot 9 without applying for resources. Therefore, it only takes one-quarter of the self-organizing network time slot for data to go from base station ID0 to base station ID2.
[0093] It should be noted that the base stations passed through are only assumed for the purpose of illustration. The actual route is determined according to the networking mode. The more base stations passed through, the more time-saving the solution is.
[0094] refer to Figure 6 , an example of communication delay optimization:
[0095] It is known that three base stations are cross-connected, and the base station cross-connection and NR access adopt time division, and the real-time slot ratio of the base station cross-connection and NR access is set to 1:1. Carry out PC1 and PC3 ping packets, and carry out PC1 and PC2 ping packets.
[0096] Table 4 Base station cross-connection test record
[0097] Serial number Test items Test value Remark 1 Delay from PC1 to PC2 (9+12+10) / 3=10.34ms 2 Delay from PC2 to PC1 (11+10+13) / 3=11.34ms 3 Delay from PC1 to PC3 (16+19+17) / 3=17.3ms 4 Delay from PC3 to PC1 (21+19+20) / 3=20ms
[0098] It is known that in a chain-like network, the one-way two-node ping packet delay is 20ms before optimization and 35ms for three nodes.
[0099] It can be seen that after using this method for optimization, the delay of the two-node ping packet is much lower than 20ms before optimization, and the delay of the three-node ping packet is much lower than 35ms before optimization. Therefore, this method has a significant effect in optimizing communication delay.
[0100] In summary, this method studies the pre-allocation of dynamic time slots, aiming to eliminate the process of static time slot resource negotiation during low business volume, combine dynamic time slots with static time slots, and introduce pre-configured dynamic time slots. Static time slots can send point-to-point data, and dynamic time slots do not require static time slot resource negotiation and directly send data according to certain rules. At the same time, it is also compatible with the transmission of large-scale business data, in which a single node can occupy all time slot resources, and the pre-allocated dynamic time slot configuration can be restored after no scheduling, thereby solving the current problem in the self-organizing network mode that the more nodes there are, the longer the self-organizing network broadcast cycle is, and the communication delay also increases exponentially.
[0101] Example 2
[0102] Please refer to Figure 7 , Figure 7 The figure shows a communication delay optimization device in a wireless ad hoc network provided by this embodiment. In this embodiment, the device includes:
[0103] A time slot pre-allocation module is used to pre-allocate time slots in a self-organizing network transmission cycle to obtain a new self-organizing network transmission cycle; the time slots in the new self-organizing network transmission cycle include dynamic time slots, static time slots and pre-allocated dynamic time slots; the dynamic time slots are used to send data based on resource notifications; the static time slots are used to send data of the corresponding node or send resource notifications for resource scheduling; the pre-allocated dynamic time slots are used to directly send data of the corresponding node;
[0104] The pre-allocated dynamic time slot scheduling module is used to determine whether the number of pre-allocated dynamic time slots configured by the target base station where the pre-allocated dynamic time slot is located meets the amount of data to be sent if the scheduled time slot is a pre-allocated dynamic time slot. If so, it is sent directly; if not, a dynamic time slot is applied for sending;
[0105] A dynamic time slot scheduling module, used for sending data based on resource notification if the scheduled time slot is a dynamic time slot;
[0106] The static time slot scheduling module is used to determine whether the resource amount of the static time slot meets the amount of data to be sent if the scheduled time slot is a static time slot. If so, it is sent directly; if not, a dynamic time slot is applied for sending.
[0107] Optionally, the time slot pre-allocation module includes:
[0108] A pre-configured cross-connection period determination submodule, used to determine the pre-configured cross-connection period based on the determined number of nodes in the self-organizing network transmission period and the number of cross-connection dynamic time slots;
[0109] A submodule for determining the number of pre-allocated dynamic time slots, used to determine the number of pre-allocated dynamic time slots and the corresponding pre-configured node index based on the number of nodes in the ad hoc network transmission cycle;
[0110] The allocated time slot determination submodule is used to determine the idle dynamic time slots and static time slots in the pre-configured cross-connection period; each static time slot corresponds to a base station ID;
[0111] The dynamic time slot pre-allocation submodule is used to allocate pre-allocated dynamic time slots to static time slots and idle dynamic time slots in turn based on the pre-configured node index and the base station ID of the static time slot, and obtain a new ad hoc network transmission period after the dynamic time slot is pre-allocated.
[0112] Optionally, the dynamic time slot pre-allocation submodule includes:
[0113] A static time slot pre-allocation unit, configured to configure a pre-allocated dynamic time slot with a pre-configured node index identical to its base station ID for the static time slot;
[0114] The idle dynamic time slot allocation unit is used to allocate the remaining pre-allocated dynamic time slots to the idle dynamic time slots in sequence according to the size of the pre-configured node index, and obtain a new self-organizing network transmission period after the dynamic time slots are pre-allocated.
[0115] Optionally, the idle dynamic time slot allocation unit includes:
[0116] An even cycle allocation subunit, for allocating the remaining pre-allocated dynamic time slots to the idle dynamic time slots in descending order according to the pre-configured node index if the pre-configured cross-connection cycle is an even cycle, to obtain a new self-organizing network transmission cycle after the dynamic time slot is pre-allocated;
[0117] The odd cycle allocation subunit is used to allocate the remaining pre-allocated dynamic time slots to the idle dynamic time slots in order from small to large according to the pre-configured node index if the pre-configured cross-connection cycle is an odd cycle, so as to obtain a new self-organizing network transmission cycle after the dynamic time slot is pre-allocated.
[0118] Optionally, the pre-allocated dynamic time slot scheduling module includes:
[0119] A target base station determination submodule, used to determine the target base station where the pre-allocated dynamic time slot is located if the scheduled time slot is a pre-allocated dynamic time slot;
[0120] The target time slot number calculation submodule is used to determine whether there is cached data in the target base station, and if so, calculate the target time slot number required to send the cached data;
[0121] The pre-allocated dynamic time slot data sending submodule is used to determine whether the target time slot number is less than or equal to the pre-allocated dynamic time slot number configured by the target base station. If so, it is sent directly. If not, after deducting the pre-allocated dynamic time slot number configured by the target base station, additional dynamic time slots are applied for sending.
[0122] Optionally, the target time slot quantity calculation submodule includes:
[0123] A data volume calculation unit that can be carried by a single time slot is used to calculate the data volume that can be carried by a single time slot based on the modulation and coding level and the number of wireless resources that can be used in a single time slot;
[0124] The target time slot quantity calculation unit is used to calculate the target time slot quantity required for sending the cached data based on the data quantity of the cached data of the target base station and the data quantity that can be carried by a single time slot.
[0125] Optionally, when the target number of time slots obtained by calculation is 0, but the amount of cached data of the target base station is not 0, the target number of time slots is set to 1.
[0126] Optionally, the static time slot scheduling module includes:
[0127] A submodule for determining the amount of data in a static time slot, for obtaining the amount of data to be sent in the static time slot if the scheduled time slot is a static time slot;
[0128] The static time slot data sending submodule is used to determine whether the amount of data to be sent in the static time slot is less than or equal to the amount of data that the single time slot can carry. If so, it is sent directly. If not, the corresponding resource notification is sent in the static time slot to apply for a dynamic time slot for sending.
[0129] Optionally, if the called time slot is a static time slot, the pre-configured node index of the base station where the static time slot is located is used to add data interference; if the called time slot is a dynamic time slot or a pre-allocated dynamic time slot, the pre-configured node index of the base station at the data receiving end is used to add data interference.
[0130] Based on this, this device studies the pre-allocation of dynamic time slots, aiming to eliminate the process of static time slot resource negotiation during low business volume, combine dynamic time slots with static time slots, and introduce pre-configured dynamic time slots. Static time slots can send point-to-point data, and dynamic time slots do not require static time slot resource negotiation and directly send data according to certain rules. At the same time, it is also compatible with the transmission of large-scale business volume. A single node can occupy all time slot resources, and the pre-allocated dynamic time slot configuration can be restored after no scheduling, thereby solving the current problem in the self-organizing network mode that the more nodes there are, the longer the self-organizing network broadcast cycle is, and the communication delay also increases exponentially.
[0131] Example 3
[0132] Please refer to Figure 8 , this embodiment provides an electronic device, which includes a processor, an internal bus, a network interface, a memory and a non-volatile memory, and of course may also include hardware required for other services. The processor reads the corresponding computer program from the non-volatile memory into the memory and then runs it, forming a communication delay optimization method in a wireless ad hoc network at the logical level. Of course, in addition to the software implementation method, this specification does not exclude other implementation methods, such as logic devices or a combination of software and hardware, etc., that is, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.
[0133] The network interface, processor and memory can be connected to each other through a bus system. The above bus can be divided into an address bus, a data bus, a control bus, etc.
[0134] The memory is used to store programs. Specifically, the program may include program code, and the program code includes computer operation instructions. The memory may include a read-only memory and a random access memory, and provides instructions and data to the processor.
[0135] The processor is used to execute the program stored in the above memory, and specifically perform:
[0136] Step 102, pre-allocate the time slots in the ad hoc network transmission cycle to obtain a new ad hoc network transmission cycle; the time slots in the new ad hoc network transmission cycle include dynamic time slots, static time slots and pre-allocated dynamic time slots; the dynamic time slots are used to send data based on resource notifications; the static time slots are used to send data of the corresponding nodes or send resource notifications for resource scheduling; the pre-allocated dynamic time slots are used to directly send data of the corresponding nodes;
[0137] Step 104, if the scheduled time slot is a pre-allocated dynamic time slot, determine whether the number of pre-allocated dynamic time slots configured by the target base station where the pre-allocated dynamic time slot is located meets the amount of data to be sent, if so, send it directly, if not, apply for a dynamic time slot for sending;
[0138] Step 106, if the scheduled time slot is a dynamic time slot, data transmission is performed based on the resource notification;
[0139] Step 108: If the scheduled time slot is a static time slot, determine whether the amount of resources in the static time slot meets the amount of data to be sent. If so, send it directly; if not, apply for a dynamic time slot for sending.
[0140] The processor may be an integrated circuit chip with signal processing capability. In the implementation process, each step of the above method may be completed by an integrated logic circuit of the processor hardware or by instructions in the form of software.
[0141] Based on the same invention, the embodiment of this specification also provides a computer-readable storage medium, which stores one or more programs. When the one or more programs are executed by an electronic device including multiple application programs, the electronic device executes Figure 1-Figure 6 A corresponding embodiment provides a method for optimizing communication delay in a wireless ad hoc network.
[0142] Those skilled in the art will appreciate that the embodiments of this specification may be provided as methods, systems, or computer program products. Therefore, this specification may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, this specification may take the form of a computer program product implemented on one or more computer-readable storage media containing computer-usable program code.
[0143] In addition, for the above-mentioned specific implementation of the system, since it is basically similar to the method implementation, the description is relatively simple, and the relevant parts can be referred to the partial description of the method implementation. Moreover, it should be noted that in each module of the system of the present application, the components therein are logically divided according to the functions to be implemented, but the present application is not limited thereto, and the components can be re-divided or combined as needed.
[0144] The various embodiments in this specification are described in a progressive manner, and the same or similar parts between the various embodiments can be referenced to each other. Each embodiment focuses on the differences between it and other embodiments.
[0145] The above is a description of a specific embodiment of the present specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps described in the claims can be performed in an order different from that in the embodiments and still achieve the desired results. In addition, the specific order or sequential order shown in the process depicted in the drawings is not necessarily required to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0146] The above is only an embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.
Claims
1. A method for optimizing communication delay in a wireless ad hoc network, characterized in that: include: Pre-allocating time slots in a self-organizing network transmission cycle to obtain a new self-organizing network transmission cycle; the time slots in the new self-organizing network transmission cycle include dynamic time slots, static time slots and pre-allocated dynamic time slots; the dynamic time slots are used to send data based on resource notifications; the static time slots are used to send data of the corresponding nodes or send resource notifications for resource scheduling; the pre-allocated dynamic time slots are used to directly send data of the corresponding nodes; If the scheduled time slot is a pre-allocated dynamic time slot, determine whether the number of pre-allocated dynamic time slots configured by the target base station where the pre-allocated dynamic time slot is located meets the amount of data to be sent. If so, send it directly; if not, apply for a dynamic time slot for sending; If the scheduled time slot is a dynamic time slot, data transmission is performed based on the resource announcement; If the scheduled time slot is a static time slot, determine whether the amount of resources in the static time slot meets the amount of data to be sent. If so, send it directly; if not, apply for a dynamic time slot for sending.
2. The method according to claim 1, characterized in that The pre-allocation of time slots in the self-organizing network transmission cycle to obtain a new self-organizing network transmission cycle includes: Determine a preconfigured cross-connection period based on the determined number of nodes in the self-organizing network transmission period and the number of cross-connection dynamic time slots; Determine the number of pre-allocated dynamic time slots and the corresponding pre-configured node index based on the number of nodes in the ad hoc network transmission cycle; Determine idle dynamic time slots and static time slots in a preconfigured cross-connection period; each static time slot corresponds to a base station ID; Based on the preconfigured node index and the base station ID of the static time slot, the pre-allocated dynamic time slot is allocated to the static time slot and the idle dynamic time slot in turn, and a new ad hoc network transmission period after the dynamic time slot is pre-allocated is obtained.
3. The method according to claim 2, characterized in that The base station ID of the pre-configured node index and static time slot is allocated to the static time slot and the idle dynamic time slot in turn, and the new ad hoc network transmission cycle after the dynamic time slot is pre-allocated is obtained, which includes: Configure the static time slot with a pre-allocated dynamic time slot with the same pre-configured node index as its base station ID; The remaining pre-allocated dynamic time slots are sequentially allocated to the idle dynamic time slots according to the size of the pre-configured node index, and a new ad hoc network transmission period after the dynamic time slots are pre-allocated is obtained.
4. The method according to claim 3, characterized in that The method of allocating the remaining pre-allocated dynamic time slots to the idle dynamic time slots in sequence according to the size of the pre-configured node index to obtain a new ad hoc network transmission period after the dynamic time slots are pre-allocated comprises: If the preconfigured cross-connection period is an even period, the remaining pre-allocated dynamic time slots are allocated to the idle dynamic time slots in order from large to small according to the pre-configured node indexes, to obtain a new self-organizing network transmission period after the dynamic time slots are pre-allocated; If the preconfigured cross-connection period is an odd period, the remaining pre-allocated dynamic time slots are allocated to the idle dynamic time slots in order from small to large according to the pre-configured node indexes to obtain a new ad hoc network transmission period after the dynamic time slots are pre-allocated.
5. The method according to claim 1, characterized in that If the scheduled time slot is a pre-allocated dynamic time slot, determining whether the number of pre-allocated dynamic time slots configured by the target base station where the pre-allocated dynamic time slot is located meets the amount of data to be sent, and if so, directly sending, and if not, applying for a dynamic time slot for sending includes: If the scheduled time slot is a pre-allocated dynamic time slot, determining the target base station where the pre-allocated dynamic time slot is located; Determine whether there is cached data in the target base station, and if so, calculate the target number of time slots required to send the cached data; Determine whether the target time slot number is less than or equal to the number of pre-allocated dynamic time slots configured by the target base station. If so, send it directly. If not, deduct the number of pre-allocated dynamic time slots configured by the target base station and apply for additional dynamic time slots for sending.
6. The method according to claim 5, characterized in that The calculation of the target number of time slots required for sending the buffered data comprises: Based on the modulation and coding level and the number of wireless resources available for a single time slot, the amount of data that can be carried by a single time slot is calculated; Based on the amount of buffered data of the target base station and the amount of data that can be carried by a single time slot, the target number of time slots required for sending the buffered data is calculated.
7. The method according to claim 6, characterized in that When the target number of time slots obtained by calculation is 0, but the amount of cached data of the target base station is not 0, the target number of time slots is set to 1.
8. The method according to claim 6, characterized in that If the scheduled time slot is a static time slot, determining whether the amount of resources in the static time slot meets the amount of data to be sent, if so, directly sending the data, if not, applying for a dynamic time slot for sending includes: If the scheduled time slot is a static time slot, the amount of data to be sent in the static time slot is obtained; Determine whether the amount of data to be sent in the static time slot is less than or equal to the amount of data that can be carried by the single time slot. If so, send it directly. If not, send the corresponding resource notification in the static time slot and apply for a dynamic time slot for sending.
9. The method according to claim 1, characterized in that: If the called time slot is a static time slot, the pre-configured node index of the base station where the static time slot is located is used for data interference; if the called time slot is a dynamic time slot or a pre-allocated dynamic time slot, the pre-configured node index of the base station at the data receiving end is used for data interference.
10. A communication delay optimization device in a wireless ad hoc network, characterized in that: include: A time slot pre-allocation module is used to pre-allocate time slots in a self-organizing network transmission cycle to obtain a new self-organizing network transmission cycle; the time slots in the new self-organizing network transmission cycle include dynamic time slots, static time slots and pre-allocated dynamic time slots; the dynamic time slots are used to send data based on resource notifications; the static time slots are used to send data of the corresponding node or send resource notifications for resource scheduling; the pre-allocated dynamic time slots are used to directly send data of the corresponding node; The pre-allocated dynamic time slot scheduling module is used to determine whether the number of pre-allocated dynamic time slots configured by the target base station where the pre-allocated dynamic time slot is located meets the amount of data to be sent if the scheduled time slot is a pre-allocated dynamic time slot. If so, it is sent directly; if not, a dynamic time slot is applied for sending; A dynamic time slot scheduling module, used for sending data based on resource notification if the scheduled time slot is a dynamic time slot; The static time slot scheduling module is used to determine whether the resource amount of the static time slot meets the amount of data to be sent if the scheduled time slot is a static time slot. If so, it is sent directly; if not, a dynamic time slot is applied for sending.
Citation Information
Cited By
Unmanned flight ad hoc network communication resource scheduling method
CN121692416A