A method of borrowing and gifting based on pre-allocated resources
By using resource borrowing and donation methods between nodes, resource allocation is proactively adjusted based on the actual business volume and resource needs of each node, thus solving the problem of resource mismatch in the pre-allocation method and improving resource utilization and the efficiency of the communication system.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-30
- Publication Date
- 2026-04-07
AI Technical Summary
In existing technologies, the pre-allocation of resources fails to effectively consider the actual resource requirements of each node, resulting in a mismatch between resource pre-allocation and demand, which affects resource utilization.
By using resource borrowing and donation methods between nodes, resource allocation can be proactively adjusted based on the actual business volume and resource needs of each node, thereby optimizing resource utilization.
It improved resource utilization, solved the problem of resource pre-allocation and demand mismatch, reduced resource conflicts, and improved the efficiency of the communication system.
Smart Images

Figure CN116233853B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the basic technical field of channel sharing, and in particular to a method for borrowing and donating pre-allocated resources. Background Technology
[0002] In wireless communication systems with limited wireless resources, it is necessary to flexibly allocate and dynamically schedule available network resources to provide a certain quality of service (QoS) guarantee for the service transmission of each node within the network. Static Time Division Multiple Access (TDMA) is a widely used resource allocation method. In a single-channel communication system, nodes transmit local services during their pre-allocated transmission time and listen for services from other nodes at other times. When multi-frequency resources exist, Frequency Division Multiple Access (FDMA) technology is added to TDMA, allowing different nodes to transmit their respective services simultaneously on different frequencies, thereby improving service transmission efficiency. With the continuous increase in transmission demand, distributed adaptive TDMA technology further improves resource utilization. This technology, based on static TDMA, uses spatial multiplexing to allow nodes more than two hops away to simultaneously transmit local services on the same frequency.
[0003] Resources are allocated based on pre-allocation methods such as static TDMA and distributed adaptive TDMA. Nodes only send services on the resources allocated locally, which can simply and effectively avoid resource collisions and improve resource utilization efficiency. However, it does not take into account the actual resource needs of each node, and also brings about the problem of mismatch between resource pre-allocation and resource demand.
[0004] Therefore, overcoming the shortcomings of the existing technology is an urgent problem to be solved in this technical field. Summary of the Invention
[0005] This invention proposes a borrowing and gifting method based on pre-allocated resources, which solves the problem of mismatch between resource pre-allocation and resource demand caused by the failure to consider the actual resource needs of each node in the pre-allocation resource allocation technology, thereby further improving resource utilization.
[0006] The present invention achieves the above objectives through the following technical solutions:
[0007] This invention provides a method for borrowing and donating pre-allocated resources, the method comprising:
[0008] When sending a service, the first node that has obtained pre-allocated resources carries its own amount of service to be sent and information on the allocated resources. Based on the information on the allocated resources and its own amount of service to be sent, the first node calculates whether it needs to borrow resources from neighboring nodes.
[0009] If the first node has no pending services, it will allocate the pre-allocated resources it has acquired to neighboring nodes that need resources, based on the resource requirements of the neighboring nodes that the first node has collected.
[0010] Preferably, the method further includes:
[0011] Whether a resource needs to be borrowed from a second node is determined based on whether the first node has a pre-allocated resource block in a certain time slot. The first node and the second node are separated by a preset distance, and the second node obtains the pre-allocated resource block.
[0012] If the first node has a pre-allocated resource block in a certain time slot, it does not need to borrow the pre-allocated resource block of the second node in the current time slot;
[0013] If the first node does not have any allocated resource blocks in a certain time slot, it needs to borrow the pre-allocated resource blocks of the second node in the current time slot.
[0014] Preferably, if the first node does not allocate a resource block in a certain time slot, it needs to borrow a pre-allocated resource block from the second node in the current time slot. The method includes:
[0015] The second node receives and parses the first information sent by the first node to obtain the first amount of service to be sent and the first number of pre-allocated resources of the first node;
[0016] If the first amount of traffic to be sent is greater than the first number of pre-allocated resources, then the first node borrows pre-allocated resources from the second node, and the amount of pre-allocated resources borrowed is the difference between the first amount of traffic to be sent and the first number of pre-allocated resources.
[0017] If the first amount of traffic to be sent is less than or equal to the first number of pre-allocated resources, then the first node will not borrow pre-allocated resources from the second node.
[0018] Preferably, based on the resource needs of neighboring nodes collected by the first node, the pre-allocated resources that have been acquired are given to neighboring nodes that need resources. The method includes:
[0019] The first node that has obtained the pre-allocated resources determines whether to give the resources to its neighboring nodes based on the local volume of traffic to be sent.
[0020] If the local pending service volume is greater than 0, the first node will not pre-allocate resources.
[0021] If the local pending service volume is equal to 0, the first node uses resource granting signaling to grant the pre-allocated resources to the neighboring node.
[0022] Preferably, if the local pending service volume is 0, then the first node uses resource granting signaling to grant the pre-allocated resources to its neighboring nodes. The specific method includes:
[0023] The first node uses a gift signaling to gift an idle resource block to the neighboring node, wherein the gift signaling carries the address of the receiving node and the resource block address identifier;
[0024] Check the resource borrowing information recorded locally by the first node, and donate the idle resource block to the neighboring node with the largest resource borrowing amount;
[0025] If there are multiple neighboring nodes with the largest resource borrowing capacity, the idle resource block will be gifted to one of the neighboring nodes.
[0026] Preferably, the method by which the first node uses gift signaling to gift idle resource blocks to the neighboring node further includes:
[0027] The neighboring node parses the gift signaling information to obtain the node address of the receiving resource;
[0028] If the address of the node receiving the resource is different from the address of the neighboring node, it proves that the idle resource block was not given to the neighboring node.
[0029] If the address of the node receiving the resource is the same as the address of the neighboring node, it proves that the neighboring node is the resource receiving node. Continue to parse the resource block address identifier in the gift signaling information, and the neighboring node occupies the idle resource block to transmit services.
[0030] Preferably, the method further includes:
[0031] If the third node receives the donation signal from the first node and determines that the third node is a resource receiving node, it determines, in addition to the first node, whether there are other neighboring nodes occupying the donated resources, and whether the other neighboring nodes are separated from the third node by a preset distance.
[0032] If it exists, the third node will not borrow resources from the first node;
[0033] If it does not exist, the third node borrows the resources of the first node to send the service.
[0034] Preferably, the method for determining whether there are other neighboring nodes occupying the donated resources, and whether the other neighboring nodes are separated from the third node by a preset distance, includes:
[0035] The third node parses the address of the first node and the resource block address identifier, and checks the allocation status of the resource block address identifier in the resource allocation table stored locally by the third node;
[0036] If the number of nodes occupying the resource block address identifier in the local storage resource allocation table is one, then check whether the corresponding node address is the first node address;
[0037] If the corresponding node address is not the address of the first node, then it is determined that an error has occurred in the resource granting of the first node;
[0038] If the corresponding node address is the address of the first node, then it is determined that there is no conflict, and the third node occupies the idle resource block to transmit services.
[0039] Preferably, the method for determining whether there are other neighboring nodes occupying the donated resources, and whether these other neighboring nodes are separated from the third node by a preset distance, further includes:
[0040] If there are multiple nodes occupying resource block address identifiers in the local storage resource allocation table, then it is determined in turn whether the nodes occupying the resource block address identifiers are separated from the third node by a preset distance.
[0041] If the address of the node occupying the resource block address identifier is the same as the first node address, no processing is performed;
[0042] If the address of the node occupying the resource block address identifier is different from the address of the first node and is separated from the third node by a preset distance, a conflict is determined to have occurred, and the third node does not occupy resources to send services and no processing is performed.
[0043] If the address of the node occupying the resource block address identifier is different from the address of the first node, and there is no preset distance between it and the third node, then it is determined that there is no conflict, and the third node occupies the resource to send local services.
[0044] In a second aspect, the present invention provides an electronic device including a memory, a processor, and a computer program stored in the memory and executable on the processor, the processor executing the program to implement the borrowing and gifting method based on pre-allocated resources as described in the first aspect.
[0045] The beneficial effects of this invention are:
[0046] The present invention provides a borrowing and donation method based on pre-allocated resources. On the basis of pre-allocated resources, the method borrows and donates resources according to the actual business needs of nodes, thereby further improving the resource utilization rate and solving the problem of mismatch between pre-allocated resources and node resource needs in the pre-allocated resource method.
[0047] The mechanism in this invention, in which the source node of pre-allocated resources actively determines the resource donation and designates the resource receiving node, solves the conflict problem of nodes competing to acquire resources.
[0048] In this invention, the resource receiving node determines its own usage of the donated resource based on the usage of the donated resource by neighboring nodes within two hops, thus resolving resource conflict issues locally without the need for interaction. Attached Figure Description
[0049] To more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings used in the embodiments of the present invention will be briefly described below. Obviously, the drawings described below are merely some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without any creative effort.
[0050] Figure 1 This is a schematic diagram of a borrowing and gifting method based on pre-allocated resources provided by the present invention;
[0051] Figure 2 This invention provides a resource borrowing information processing flow in a borrowing and donation method based on pre-allocated resources;
[0052] Figure 3 This invention provides a resource donation processing flow in a borrowing and donation method based on pre-allocated resources;
[0053] Figure 4 This is a schematic diagram of the resource pre-allocation and node connection relationship in this second embodiment;
[0054] Figure 5 This is a schematic diagram of resource borrowing conflicts in Embodiment 2.
[0055] Figure 6 This invention provides a conflict resolution process in a borrowing and gifting method based on pre-allocated resources.
[0056] Figure 7 This is a block diagram of an electronic device structure provided in Embodiment 3. Detailed Implementation
[0057] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention.
[0058] In the description of this invention, the terms "inner", "outer", "longitudinal", "lateral", "upper", "lower", "top", "bottom", "left", "right", "front", "rear", etc., indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. They are only for the convenience of describing this invention and do not require that this invention be constructed and operated in a specific orientation. Therefore, they should not be construed as limiting this invention.
[0059] In various embodiments of the present invention, the symbol “ / ” indicates that it has two functions at the same time, while the symbol “A and / or B” indicates that the combination between the preceding and following objects connected by the symbol includes three cases: “A”, “B”, and “A and B”.
[0060] Furthermore, the technical features involved in the various embodiments of the present invention described below can be combined with each other as long as they do not conflict with each other. The present invention will now be described in detail with reference to the accompanying drawings and embodiments.
[0061] Example 1:
[0062] To optimize the performance of pre-allocated resource scheduling, this embodiment provides a borrowing and gifting method based on pre-allocated resources, such as... Figure 1 As shown, the method includes the following steps:
[0063] S101: When sending a service, the first node that has obtained pre-allocated resources carries its own pending service volume and allocated resource information. Based on the allocated resource information and its own pending service volume, the first node calculates whether it needs to borrow resources from neighboring nodes. The preset distance between the neighboring nodes and the first node is set to 1 hop in this embodiment.
[0064] Based on the pre-allocated resources, this embodiment obtains the resource needs of nodes through interaction between neighboring nodes, and borrows or donates resources according to the local resource needs.
[0065] When sending a service, the first node carries the amount of service to be sent (Q_STAT) and the allocated resource information (R_STAT) of this node.
[0066] The pending data volume Q_STAT represents the service information that needs to be sent locally using transmission resources, such as the total pending data q of the first node. size The total transmission resources required for the data to be sent are q. size / mac mtu Mac mtu This indicates the amount of data that a resource block can send, or the bit information for saving signaling resources as shown in the following formula.
[0067]
[0068] in, This represents the base of the exponent in the formula (default value is 2). This indicates the number of bits sent by the first node. pow represents the exponent, and int represents the integer type.
[0069] The allocated resource R_STAT information uses n bits to sequentially represent the resource acquisition status of the next n time slots after the current time slot. A "0" indicates that the first node has no pre-allocated resource blocks in this time slot and needs to borrow resource blocks pre-allocated by a neighboring node in the current time slot; a "1" indicates that the first node has pre-allocated resource blocks in this time slot and does not need to borrow pre-allocated resource blocks from a neighboring node in the current time slot. For example, if the resources in the first time slot are allocated to this node, the first bit in the n bits is represented as "1"; if no resources are allocated to this node in the time slot, the first bit is represented as "0".
[0070] When a neighboring node receives a service sent by the first node, it first parses out the first node's pending service volume Q_STAT and allocated resources R_STAT. Then, it determines the first node's resource requirements based on the relationship between the two. If the first node does not need to borrow resources, the neighboring node does not perform any processing locally. If the first node needs to borrow resources, it records the relevant information locally on the neighboring node.
[0071] The methods for the first node to borrow resources from neighboring nodes also include:
[0072] Whether a resource needs to be borrowed from a second node is determined based on whether the first node has a pre-allocated resource block in a certain time slot. The first node and the second node are separated by a preset distance, and the second node obtains the pre-allocated resource block.
[0073] If the first node has a pre-allocated resource block in a certain time slot, it does not need to borrow the pre-allocated resource block of the second node in the current time slot;
[0074] If the first node does not have any allocated resource blocks in a certain time slot, it needs to borrow the pre-allocated resource blocks of the second node in the current time slot.
[0075] If a node needs to borrow a resource block pre-allocated by a neighboring node in the current time slot, and the first node has not allocated a resource block in a certain time slot, then the first node needs to borrow a pre-allocated resource block from the second node in the current time slot. The methods include:
[0076] The second node receives and parses the first information sent by the first node to obtain the first amount of service to be sent and the first number of pre-allocated resources of the first node;
[0077] If the first amount of traffic to be sent is greater than the first number of pre-allocated resources, then the first node borrows pre-allocated resources from the second node, and the amount of pre-allocated resources borrowed is the difference between the first amount of traffic to be sent and the first number of pre-allocated resources.
[0078] If the first amount of traffic to be sent is less than or equal to the first number of pre-allocated resources, then the first node will not borrow pre-allocated resources from the second node.
[0079] The specific processing procedure is as follows: Figure 2 The process shown determines whether the first node needs to borrow resources.
[0080] S201: Begin.
[0081] S202: The second node receives and parses the first information sent by the first node, obtains the first pending transmission volume Q_STAT and the first pre-allocated resource count R_STAT of the first node, and calculates the pre-allocated resource count R1_STAT. Specifically, the pre-allocated resource count R1_STAT of the information source node is calculated based on the allocated resource R_STAT values. R1_STAT is the number of "1"s in R_STAT, i.e., the sum of the digits in R_STAT.
[0082] S203: Determine whether the first amount of service to be sent, Q_STAT, is less than or equal to the number of pre-allocated resources, R1_STAT. If yes, proceed to S205; otherwise, proceed to S204.
[0083] S204: If the amount of traffic to be sent, Q_STAT, is greater than the number of pre-allocated resources, R1_STAT, then the pre-allocated resources of the first node do not meet the resource requirements of the traffic to be sent, and the pre-allocated resources of the neighboring nodes need to be borrowed. The number of resources to be borrowed, QB_STAT, is equal to Q_STAT - R1_STAT.
[0084] S205: If the amount of traffic to be sent, Q_STAT, is less than or equal to the number of pre-allocated resources, R1_STAT, then the pre-allocated resources of the first node meet the resource requirements of the traffic to be sent, meaning the first node does not need to borrow pre-allocated resources from its neighboring nodes. At this point, the receiving node makes no record and the process ends.
[0085] Example 2:
[0086] To optimize the performance of the pre-allocated resource scheduling method, this second embodiment provides a borrowing and gifting method based on pre-allocated resources, such as... Figure 1 As shown, the method also includes the following steps:
[0087] S102: If the first node has no service to be sent, then according to the resource requirements of the neighboring nodes collected by the first node, the pre-allocated resources already obtained are given to the neighboring nodes that need resources.
[0088] In this embodiment, the granting of pre-allocated resources is determined by the source node of the resource, while a resource receiving node is specified. In this embodiment, the resource receiving node determines its own allocation method for the granted resource based on the allocation status of its neighboring nodes within two hops.
[0089] Based on the resource needs of neighboring nodes collected by the first node, the pre-allocated resources are donated to neighboring nodes that need resources. The method includes:
[0090] The first node that has obtained the pre-allocated resources determines whether to give the resources to its neighboring nodes based on the local volume of traffic to be sent.
[0091] If the local pending service volume is greater than 0, the first node will not pre-allocate resources.
[0092] If the local pending service volume is equal to 0, the first node uses resource granting signaling to grant the pre-allocated resources to the neighboring node.
[0093] The first node uses the resource gifting signaling GIVE to gift pre-allocated idle resource blocks to neighboring nodes that need the resources. The gifting signaling GIVE carries the sending node address Src_Addr (i.e., the node address of the node transferring the reserved resources), the receiving node address Rcv_Addr (i.e., the node address of the node occupying the resources), and the address identifier of the resource block Given_RB.
[0094] For example, if Q_STAT > 0, the first node has pending business volume, then it is determined that there is business to be sent locally, and no resource grant will be made.
[0095] If the first node's local pending traffic Q_STAT = 0, it is determined that there is no pending traffic locally, and the resource block can be donated to the required node. The first node checks the resource borrowing information QB_STAT of its neighboring nodes and determines to donate the local reserved resources to the node with the largest QB_STAT, in order to minimize the latency of the node's traffic and meet the timeliness requirements of traffic transmission.
[0096] If multiple nodes have the largest QB_STAT, the resources will be gifted to one of them, and a GIVE signaling message will be sent. For example, the resources can be gifted to the node with the largest or smallest ID among the multiple nodes, or other methods can be used, with the aim of selecting a unique recipient node.
[0097] When the pre-allocated resources arrive at the first node, the processing flow is as follows: Figure 3As shown, the resource allocation to neighboring nodes is determined based on the local pending traffic volume Q_STAT of the first node.
[0098] S301: Start.
[0099] S302: Determine whether the local pending service volume Q_STAT of the first node is greater than 0. If not, proceed to S303; if yes, proceed to S307.
[0100] S303: Find the resource borrowing count of neighboring nodes that need to borrow resources in the local record, and grant the resources to the node that borrows the most resources.
[0101] S304: Determine whether the number of resources to be borrowed by multiple nodes is the same and whether the amount of resources to be borrowed is the largest. If yes, proceed to S305; otherwise, proceed to S306.
[0102] S305: Select the node with the smallest node ID and give it to the recipient.
[0103] S306: Send a GIVE signal to donate resources to the selected node.
[0104] S307: Send local service, end.
[0105] If the local pending service volume is equal to 0, the first node uses resource granting signaling to grant the pre-allocated resources to its neighboring nodes. Specific methods include:
[0106] The first node uses a gift signaling to gift an idle resource block to the neighboring node, wherein the gift signaling carries the address of the receiving node and the resource block address identifier;
[0107] Check the resource borrowing information recorded locally by the first node, and donate the idle resource block to the neighboring node with the largest resource borrowing amount;
[0108] If there are multiple neighboring nodes with the largest resource borrowing capacity, the idle resource block will be given to the neighboring node with the smallest ID.
[0109] For example, when a neighboring node receives the resource gift signaling GIVE from the first node, it parses the resource receiving node address Rcv_Addr to determine whether the local node is a resource receiving node:
[0110] If Rcv_Addr ≠ Local_Addr, the resource is not gifted to the local machine and no action is taken.
[0111] If Rcv_Addr = Local_Addr, and the local node is the resource receiving node, then it parses the resource block address identifier Given_RB in the signaling information and occupies that resource to transmit local services.
[0112] The method by which the first node uses a gift signaling mechanism to gift an idle resource block to its neighboring node also includes:
[0113] The neighboring node parses the gift signaling information to obtain the node address of the receiving resource;
[0114] If the address of the node receiving the resource is different from the address of the neighboring node, it proves that the idle resource block was not given to the neighboring node.
[0115] If the address of the node receiving the resource is the same as the address of the neighboring node, it proves that the neighboring node is the resource receiving node. Continue to parse the resource block address identifier in the gift signaling information, and the neighboring node occupies the idle resource block to transmit services.
[0116] In this embodiment, during resource borrowing and gifting, nodes only borrow and gift resources based on the resource needs of their one-hop neighbors. Therefore, when gifting resources, nodes cannot consider conflicts that might occur when the receiving node uses the borrowed resources. In a pre-allocated resource communication system without spatial reuse, where each time-frequency resource is allocated to only one node, no conflicts arise during resource borrowing and gifting. However, when spatial reuse exists, the node receiving the gifted resources may conflict with its local neighbors at the point of resource borrowing. Figure 4 Given the resource allocation and node connection relationships shown, node A and 2-hop external node D spatially reuse the shared time-frequency location 2. When node A borrows resource number 2 to node B according to the resource borrowing and gifting rules, the resource occupancy is as follows. Figure 5 The pre-allocated resources table is shown. At this time, nodes B and D simultaneously occupy resource 2. When nodes B and D simultaneously send local services on resource 2, the two service messages will conflict at node C, as shown below. Figure 5 The node connection relationship is shown in the diagram.
[0117] In this embodiment, a conflict detection and backoff approach is used to resolve the conflict problem. When the third node receives the resource donation signaling from the first node, it first determines whether there are other nodes within two hops that occupy the donated resource, in addition to the resource donation signaling source node (i.e., the first node). If there are, the local node does not borrow the resource; if not, it borrows the resource to send local services.
[0118] The method for resolving conflicts includes: if a third node receives a gift signal from the first node and determines that the third node is a resource receiving node, then, in addition to the first node, it determines whether there are other neighboring nodes occupying the gifted resources, and whether these other neighboring nodes are separated from the third node by a preset distance. In this embodiment, the preset distance is set to 2 hops.
[0119] If it exists, the third node will not borrow resources from the first node;
[0120] If it does not exist, the third node borrows the resources of the first node to send the service.
[0121] The method for determining whether there are other neighboring nodes occupying the donated resources, and whether the other neighboring nodes are separated from the third node by a preset distance, includes:
[0122] The third node parses the address of the first node and the resource block address identifier, and checks the allocation status of the resource block address identifier in the resource allocation table stored locally by the third node;
[0123] If the number of nodes occupying the resource block address identifier in the local storage resource allocation table is one, then check whether the corresponding node address is the first node address;
[0124] If the corresponding node address is not the address of the first node, then it is determined that an error has occurred in the resource granting of the first node;
[0125] If the corresponding node address is the address of the first node, then it is determined that there is no conflict, and the third node occupies the idle resource block to transmit services.
[0126] For example, if only one node occupies the resource block Given_RB in the resource allocation table stored locally on the third node, then check the node address Node_Addr and determine whether the node is the signaling source node:
[0127] If Node_Addr ≠ Src_Addr, then it is determined that an error has occurred in the node resource grant, and no action is taken;
[0128] If Node_Addr = Src_Addr, then there is no conflict, and the local service is sent directly using the Given_RB resource.
[0129] The method for determining whether there are other neighboring nodes occupying the donated resources, and whether these other neighboring nodes are separated from the third node by a preset distance, further includes:
[0130] If there are multiple nodes occupying resource block address identifiers in the local storage resource allocation table, then it is determined in turn whether the nodes occupying the resource block address identifiers are separated from the third node by a preset distance.
[0131] If the address of the node occupying the resource block address identifier is the same as the first node address, no processing is performed;
[0132] If the address of the node occupying the resource block address identifier is different from the address of the first node and is separated from the third node by a preset distance, a conflict is determined to have occurred, and the third node does not occupy resources to send services and no processing is performed.
[0133] If the address of the node occupying the resource block address identifier is different from the address of the first node, and there is no preset distance between it and the third node, then it is determined that there is no conflict, and the third node occupies the resource to send local services.
[0134] For example, if the resource allocation table in local storage does not contain only one node occupying the resource block Given_RB, then the nodes occupying that resource, Node_Addr, are checked sequentially. i Is it a local 2-hop node?
[0135] If Node_Addr i =Src_Addr, no processing;
[0136] If Node_Addr i ≠Src_Addr, and Node_Addr i If it is a local neighbor node within 2 hops, it is determined that a conflict has occurred at the Given_RB resource, and the local node backs off, does not occupy the resource to send local services, and does not perform any processing locally;
[0137] If none of the nodes occupying the resource block Given_RB, except for Src_Addr, are local neighbors within 2 hops, then it is determined that there is no conflict at the location where the resource was given, and the resource is directly occupied to send local services.
[0138] Conflict resolution process as follows Figure 6 As shown.
[0139] S401: Start.
[0140] S402: Parse the receiving node address Rcv_Addr of the gifted resource in the gift signaling GIVE.
[0141] S403: Determine if Rcv_Addr is Local_Addr. If yes, proceed to S404; otherwise, proceed to S410.
[0142] S404: Parse the signaling Src_Addr and Given_RB, and check the resource allocation table in the local storage.
[0143] S405: Determine if the number of nodes occupying the resource block address identifier is 1. If yes, proceed to S406; otherwise, proceed to S407.
[0144] S406: Determine if Node_Addr is Src_Addr. If yes, proceed to S408; otherwise, proceed to S410.
[0145] S407: Determine Node_Addr i Is it Src_Addr? If yes, proceed to S408; otherwise, proceed to S410.
[0146] S408: There is no conflict when donating resources. The resource is used to send local business, and then S410 is performed.
[0147] S409: Determine if there is a node that is a local 2-hop node. If yes, proceed to S410; otherwise, proceed to S408.
[0148] S410: End.
[0149] Example 3:
[0150] This third embodiment provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. The processor executes the program to implement the borrowing and gifting method based on pre-allocated resources in any of the above embodiments.
[0151] like Figure 7 As shown, the electronic device 10 may include: a processor 100, a memory 101, a bus 102 and a communication interface 103. The processor 100, the communication interface 103 and the memory 101 are connected through the bus 102. The memory 101 stores a computer program that can run on the processor 100. When the processor 100 runs the computer program, it executes the borrowing and gifting method based on pre-allocated resources provided in Embodiment 1 and Embodiment 2.
[0152] The memory 101 may include high-speed random access memory (RAM), and may also include non-volatile memory, such as at least one disk storage device. Communication between this system network element and at least one other network element is achieved through at least one communication interface 103 (which can be wired or wireless), such as the Internet, wide area network, local area network, metropolitan area network, etc.
[0153] Bus 102 can be an ISA bus, PCI bus, or EISA bus, etc. Buses can be divided into address buses, data buses, control buses, etc. Memory 101 is used to store programs. After receiving execution instructions, processor 100 executes the program. The borrowing and gifting methods based on pre-allocated resources provided in Embodiments 1 and 2 can be applied to processor 100, or implemented by processor 100.
[0154] Processor 100 may be an integrated circuit chip with signal processing capabilities. In implementation, each step of the above method can be completed by the integrated logic circuitry in the hardware of processor 100 or by instructions in software form. Processor 100 can be a general-purpose processor, including a Central Processing Unit (CPU), a Network Processor (NP), etc.; it can also be a Digital Signal Processor (DSP), Application-Specific Integrated Circuit (ASIC), Field-Programmable Gate Array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the borrowing and gifting method, steps, and logic block diagram based on pre-allocated resources provided in Embodiments 1 and 2. The general-purpose processor can be a microprocessor or any conventional processor. The borrowing and gifting method based on pre-allocated resources provided in Embodiments 1 and 2 can be directly manifested as execution by a hardware decoding processor, or execution by a combination of hardware and software modules in the decoding processor. The software modules can reside in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. The storage medium is located in memory 101. The processor 100 reads the information in memory 101 and, in conjunction with its hardware, completes the steps of the above method.
[0155] The electronic device provided in this embodiment three is based on the same inventive concept as the methods provided in embodiments one and two, and has the same beneficial effects as the methods used, operated or implemented therein.
[0156] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A method for borrowing and donating pre-allocated resources, characterized in that, The methods include: When sending a service, the first node that has obtained pre-allocated resources carries its own amount of service to be sent and information on the allocated resources. Based on the information on the allocated resources and its own amount of service to be sent, the first node calculates whether it needs to borrow resources from neighboring nodes. If the first node has no pending service, then based on the resource requirements of neighboring nodes collected by the first node, the pre-allocated resources it has acquired are given to the neighboring nodes that need resources. The method for borrowing and donating pre-allocated resources further includes: Whether a resource needs to be borrowed from a second node is determined based on whether the first node has a pre-allocated resource block in a certain time slot. The first node and the second node are separated by a preset distance, and the second node obtains the pre-allocated resource block. If the first node has a pre-allocated resource block in a certain time slot, it does not need to borrow the pre-allocated resource block of the second node in the current time slot; If the first node does not have a resource block allocated in a certain time slot, it needs to borrow the pre-allocated resource block of the second node in the current time slot; in, If the first node has not allocated any resource blocks in a certain time slot, it needs to borrow the pre-allocated resource blocks of the second node in the current time slot. The method includes: The second node receives and parses the first information sent by the first node to obtain the first amount of service to be sent and the first number of pre-allocated resources of the first node; If the first amount of traffic to be sent is greater than the first number of pre-allocated resources, then the first node borrows pre-allocated resources from the second node, and the amount of pre-allocated resources borrowed is the difference between the first amount of traffic to be sent and the first number of pre-allocated resources. If the first volume of traffic to be sent is less than or equal to the first pre-allocated resource quantity, then the first node will not borrow pre-allocated resources from the second node; and Based on the resource needs of neighboring nodes collected by the first node, the pre-allocated resources are donated to neighboring nodes that need resources. The method includes: The first node that has obtained the pre-allocated resources determines whether to give the resources to its neighboring nodes based on the local volume of traffic to be sent. If the local pending service volume is greater than 0, the first node will not pre-allocate resources. If the local pending service volume is 0, the first node uses resource granting signaling to grant the pre-allocated resources to its neighboring nodes; and If the local pending service volume is equal to 0, the first node uses resource granting signaling to grant the pre-allocated resources to its neighboring nodes. Specific methods include: The first node uses a gift signaling to gift an idle resource block to the neighboring node, wherein the gift signaling carries the address of the receiving node and the resource block address identifier; Check the resource borrowing information recorded locally by the first node, and donate the idle resource block to the neighboring node with the largest resource borrowing amount; If there are multiple neighboring nodes with the largest resource borrowing capacity, the idle resource block will be gifted to one of the neighboring nodes.
2. The borrowing and donation method based on pre-allocated resources as described in claim 1, characterized in that, The method by which the first node uses gift signaling to gift idle resource blocks to the neighboring node further includes: The neighboring node parses the gift signaling information to obtain the node address of the receiving resource; If the address of the node receiving the resource is different from the address of the neighboring node, it proves that the idle resource block was not given to the neighboring node. If the address of the node receiving the resource is the same as the address of the neighboring node, it proves that the neighboring node is the resource receiving node. Continue to parse the resource block address identifier in the gift signaling information, and the neighboring node occupies the idle resource block to transmit services.
3. The borrowing and gifting method based on pre-allocated resources as described in claim 2, characterized in that, The method also includes: If the third node receives the donation signal from the first node and determines that the third node is a resource receiving node, it determines, in addition to the first node, whether there are other neighboring nodes occupying the donated resources, and whether the other neighboring nodes are separated from the third node by a preset distance. If it exists, the third node will not borrow resources from the first node; If it does not exist, the third node borrows the resources of the first node to send the service.
4. The borrowing and gifting method based on pre-allocated resources as described in claim 3, characterized in that, The method for determining whether there are other neighboring nodes occupying the donated resources, and whether the other neighboring nodes are separated from the third node by a preset distance, includes: The third node parses the address of the first node and the resource block address identifier, and checks the allocation status of the resource block address identifier in the resource allocation table stored locally by the third node; If the number of nodes occupying the resource block address identifier in the local storage resource allocation table is one, then check whether the corresponding node address is the first node address; If the corresponding node address is not the address of the first node, then it is determined that an error has occurred in the resource granting of the first node; If the corresponding node address is the address of the first node, then it is determined that there is no conflict, and the third node occupies the idle resource block to transmit services.
5. The borrowing and gifting method based on pre-allocated resources as described in claim 4, characterized in that, The method for determining whether there are other neighboring nodes occupying the donated resources, and whether these other neighboring nodes are separated from the third node by a preset distance, further includes: If there are multiple nodes occupying resource block address identifiers in the local storage resource allocation table, then it is determined in turn whether the nodes occupying the resource block address identifiers are separated from the third node by a preset distance. If the address of the node occupying the resource block address identifier is the same as the first node address, no processing is performed; If the address of the node occupying the resource block address identifier is different from the address of the first node and is separated from the third node by a preset distance, a conflict is determined to have occurred, and the third node does not occupy resources to send services and no processing is performed. If the address of the node occupying the resource block address identifier is different from the address of the first node, and there is no preset distance between it and the third node, then it is determined that there is no conflict, and the third node occupies the resource to send local services.
6. An electronic device, characterized in that, It includes a memory, a processor, and a computer program stored in the memory and executable on the processor, the processor executing the program to implement the borrowing and gifting method based on pre-allocated resources as described in any one of claims 1-5.
Citation Information
Patent Citations
Techniques for guaranteeing bandwidth via aggregate traffic
CN1886933A