RPL routing optimization method based on residual energy and load constraint
By introducing the standard deviation ETX value and node energy load constraints into the RPL protocol, the Multi-MRHOF optimization scheme solves the problem of incomplete network performance in the RPL protocol, optimizes route selection, reduces energy consumption and latency, improves packet reception rate, and extends network lifetime.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- HUZHOU COLLEGE
- Filing Date
- 2023-10-20
- Publication Date
- 2026-04-21
AI Technical Summary
The single routing metric in the RPL protocol leads to an incomplete assessment of network performance. Choosing unreliable paths may cause node energy depletion, shorten network lifespan, cause load imbalance, and affect network service quality.
The Multi-MRHOF optimization scheme based on energy and load constraints is adopted. The optimal path is selected by calculating the standard deviation of ETX values between links, and node energy and traffic load constraints are set to avoid low-energy nodes and overloaded nodes, thereby optimizing DODAG construction and route maintenance.
The simulation results show that the end-to-end latency is reduced by 9.67%, the average power consumption of nodes is reduced by 7.3%, and the data packet reception rate is increased by 13.2%. This reduces node energy consumption, network latency, improves data packet reception rate, and extends network lifetime.
Smart Images

Figure CN121907744A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of wireless sensor network technology, specifically to an RPL routing optimization method based on residual energy and load constraints. Background Technology
[0002] RPL (routing protocol for low-power and lossy networks) is a network transport protocol specifically designed for low-power and lossy networks (LLNs), providing real-time and reliable data transmission services. The objective function (OF) in the RPL protocol is the algorithmic mechanism for constructing routes; it can be modified according to the requirements of specific applications and is constantly being designed and improved.
[0003] The RPL protocol's standard objective function OF0 constructs a DODAG based on the hop count (HC) between nodes. HC reflects communication latency and indirectly causes energy loss. The objective function MRHof is based on the average transmission count (ETX). ETX is calculated by the average expected value of retransmitted data and reflects the quality of the link, which also indirectly affects node energy consumption. However, because both standard objective functions of the RPL protocol use a single routing metric, network performance evaluation is not comprehensive enough. While selecting unreliable paths, nodes with low remaining energy may be included, which can easily lead to premature energy depletion and shutdown of nodes, thus affecting the entire network's lifespan. As network nodes become increasingly dense or in scenarios dealing with critical constraints, a single routing metric can easily lead to problems such as unreliable links, long hops, low-quality transmission, and excessive energy consumption.
[0004] Specifically, the standard objective function OF is used to select parent nodes (forwarding nodes). However, as the number of nodes increases and the network scales up, the probability of long hops in data transmission increases significantly, making the network complex and redundant. This phenomenon has a significant impact on the quality of service (QoS) and greatly limits the service of IoT applications. OF0 selects a parent without considering link quality, only trying to find a path with the fewest hops. This metric is obviously inefficient because it does not consider the impact of long hops and energy consumption on QoS. Another standard objective function, MRHOF, is based on the average transmission count (ETX). ETX is calculated by the average expected value of retransmitted data and can reflect the quality of the link, which can also indirectly affect the energy consumption of nodes. MRHOF only considers the ETX metric and not other metrics. Each node takes the parent node with the lower ETX value as its preferred parent node. This ranking mechanism based on the lower ETX value can also affect other network performance, making it more prone to swarming.
[0005] To better understand this phenomenon, Figure 1 For example, suppose nodes e and d in the diagram have ETX values of 4 and 5 respectively, and they are both candidate parent nodes for nodes a, b, and c. Since node e's ETX value is lower than node d's, all relevant nodes in the region will choose node e as their preferred parent node because it broadcasts a lower routing cost. This will cause node e to have excessive data traffic, thus increasing its energy consumption; while node d will be idle, resulting in a highly unbalanced load across the entire network. If a new node joins the network and broadcasts a lower ETX value, the nodes will switch their preferred parent again, leading to frequent parent changes and network instability. An unstable network will inevitably have a substantial impact on QoS. Furthermore, load imbalance is considered a major drawback of RPL; overloaded nodes consume energy much faster than other nodes in the network. This phenomenon is even more severe if the overloaded node is near the root node, as nodes near the root node have higher data traffic and consume energy faster than other nodes.
[0006] Therefore, an RPL routing optimization method based on residual energy and load constraints is needed to solve the above problems. Summary of the Invention
[0007] To address the shortcomings of existing technologies, the purpose of this invention is to provide an RPL routing optimization method based on residual energy and load constraints. This method proposes a Multi-MRHOF optimization scheme based on the standard deviation of ETX values between energy and load constraints. The optimal path is calculated by using the standard deviation of ETX values between each link. Energy constraints are added to prevent low-energy nodes from being selected as parents, and load constraints are added to prevent overloaded nodes from consuming energy too quickly and damaging the network. This method can reduce node energy consumption, reduce network latency, improve packet reception rate, and indirectly extend the lifespan of the entire network.
[0008] To achieve the above objectives, the technical solution adopted by the present invention is as follows:
[0009] A method for RPL route optimization based on residual energy and load constraints, the key of which includes the following steps:
[0010] Step 1: In the DODAG construction phase, construct the DODAG based on the optimal path strategy according to the RPL routing protocol;
[0011] The specific process of constructing DODAG based on the optimal path strategy described in step 1 is as follows:
[0012] Step 1.1: In the RPL network, construct the DODAG starting from the root node;
[0013] Step 1.2: The root node of DODAG sends DIO information via broadcast. Each node in the RPL network receives and forwards the DIO information. When each node returns DAO information to the root node, it adds the ETX value as a field to the DAO information.
[0014] Step 1.3: After receiving the DAO message, the root node calculates the standard deviation of each information transmission path based on the ETX value and obtains the information transmission path with the smallest standard deviation.
[0015] Step 1.4: The root node replies with DAO-ACK information to other nodes, and adds the rpl_option_path_member field to the DAO-ACK information when replying. The rpl_option_path_member field contains the IPv6 address prefixes of other nodes in the information transmission path with the smallest standard deviation from the source node to the root node.
[0016] Step 1.5: After receiving the DAO-ACK information from the root node, other nodes match the address field in the DAO-ACK information to form the DODAG of the required network topology.
[0017] Step 2: During the route maintenance phase, based on the strategy of avoiding low-energy nodes, set the remaining energy constraints of the nodes and update the routing table of the constructed DODAG.
[0018] Step 3: During the data transmission phase, load balancing strategy is used to evaluate the load of all parent nodes in the DODAG after the routing table is updated. When the evaluation shows that a parent node is in a state of traffic overload, the parent node is switched according to the strategy of avoiding low-energy nodes and the data transmission path is updated. Otherwise, the original network topology is maintained and data transmission is performed.
[0019] Furthermore, the calculation process for the standard deviation of each information transmission path by the root node in step 1.3 is as follows:
[0020]
[0021] Where S is the standard deviation, ETX i Let ETX be the value between the two nodes during the i-th information transmission. This represents the average ETX value along this information transmission path, and n represents the number of information transmissions along this path.
[0022] Furthermore, the specific steps of the strategy based on avoiding low-energy nodes are as follows:
[0023] S1. Collect the remaining energy information of each node in DODAG;
[0024] S2. Obtain the remaining energy of each parent node based on the remaining energy information of each node;
[0025] S3. Evaluate and select based on the remaining energy of each parent node, and allocate load to each parent node;
[0026] S4. The node continuously sends DIO information and control information, updates the node's remaining energy information, and realizes the update of the DODAG routing table.
[0027] Furthermore, the specific process of collecting the remaining energy information of each node in DODAG in step S1 is as follows:
[0028] The parent node records its remaining energy in the user options field and sends it to the child node via DIO information;
[0029] After receiving the DIO information sent by the parent node, the child node sends DAO information to the parent node.
[0030] The remaining energy information of each node is calculated based on the DAO information.
[0031] Furthermore, the remaining energy of each parent node is calculated in step S2 as follows:
[0032] R e =E0-E c
[0033] Among them, R e E represents the remaining energy of the parent node, and E0 represents the initial energy of the parent node. c =E CPU +E CPU +E RX +E TX E represents the energy already consumed by the parent node. CPU E is the energy consumed by the CPU operating module. CPU The energy consumed by the LPM hibernation module, E RX The energy consumed by the RX listening module, E TX Energy consumed by the TX transmission module.
[0034] Furthermore, in step S3, the evaluation and selection based on the remaining energy of each parent node, and the specific steps for allocating load to each parent node are as follows:
[0035] A1. Calculate the percentage of remaining energy for each parent node based on its remaining energy.
[0036] A2. Categorize each parent node based on the percentage of remaining energy:
[0037] When determining whether the remaining energy percentage of a parent node is less than the first threshold T1, if so, the parent node is a low-energy node.
[0038] If the remaining energy percentage of a parent node is greater than the first threshold T1 and less than the second threshold T2, then the parent node is a medium-energy node.
[0039] If the remaining energy percentage of a parent node is greater than the second threshold T2, then the parent node is a high-energy node.
[0040] A3. Distribute traffic load to each parent node based on the classification results:
[0041] If the current parent node is a low-energy node, the parent node will set the Status value in the DAO-ACK information to between 128 and 255, and send DIO information to the child node. After receiving the DIO information, the child node will delete the parent node in the routing table and reselect a new parent node based on the remaining energy of the candidate parent node.
[0042] If the current parent node is a medium-energy node, the parent node will set the Status position in the DAO-ACK information to between 1 and 127 and send DIO information to the child node. After receiving the DIO information, the child node will check in the routing table whether there is a parent node with more remaining energy. If not, the current network topology will be maintained. If there is, the parent node with more remaining energy will be selected as the new parent node.
[0043] If the current parent node is a high-energy node, then the parent node will set the Status position in the DAO-ACK message to 0, send DIO information to the child node, and maintain the current network topology.
[0044] Furthermore, the values of the first threshold T1 and the second threshold T2 are 20% and 60%, respectively.
[0045] Furthermore, the specific steps in step 3 for evaluating the load of all parent nodes in the DODAG after updating the routing table and updating the data transmission path based on the traffic load balancing strategy are as follows:
[0046] Step 3.1: When the network starts running, the root node begins to send DIO information to build the network topology. After receiving the DIO information, the child nodes select their parent nodes and broadcast again according to the process of sending DIO information in the RPL protocol.
[0047] Step 3.2: After all nodes within the transmission range in the network topology have been added to the DODAG, perform load metric evaluation, determine whether the parent node is in a state of traffic overload and mark the status, and send DIO information to the child nodes.
[0048] Step 3.3: After receiving the DIO message sent by the parent node, the child node checks the status flag. If the current parent node is in a state of traffic overload, the child node deletes the parent node information in the current routing table and selects the parent node with higher remaining energy as the preferred parent node according to the low-energy node avoidance strategy, thus realizing the parent node conversion. Otherwise, the child node sends DAO information to the parent node to maintain the original network topology.
[0049] Furthermore, the specific process of determining whether the parent node is in a state of traffic overload and marking the status in step 3.2 is as follows:
[0050] The parent node calculates the data packets received from all its child nodes;
[0051] Determine whether the number of data packets received by the parent node is greater than the number of data packets it sends. If so, determine that the parent node is in a state of overload; otherwise, determine that the parent node is in a state of normal traffic.
[0052] Add the user field rpl_option_path_load to the user option field of the DIO information, and set the corresponding field value as a status flag according to the traffic load status of the parent node. The field value is set to 1 to indicate that the parent node is currently in a traffic overload state, and set to 0 to indicate that the parent node is in a normal traffic state.
[0053] This invention proposes a routing strategy that optimizes metrics to improve issues such as low link quality, rapid energy consumption, and unbalanced load. The scheme primarily optimizes two aspects: topology construction and route maintenance. During the DODAG construction phase, the concept of sample standard deviation is introduced to replace the original method of selecting the optimal path using ETX. A standard deviation-based ETX routing metric is adopted, enabling the selection of a route with low volatility and high stability within the entire network topology, thereby improving the low link quality problem. During the route maintenance phase, node energy constraints are set; nodes with energy below a certain threshold cannot be used as relay nodes and can only be used as sending nodes. Because low-energy nodes have weak transmission and reception capabilities, and once their energy is depleted, the entire network topology changes, and the route repair mechanism is activated, which accelerates the consumption of limited resources, using them as source transmission nodes can reduce their transmission power consumption, extend their working time, and improve the overall network lifespan. During the data transmission phase, a traffic load threshold is set to comprehensively consider the traffic load of all parent nodes. If it exceeds the set value, the child nodes are notified to switch parent nodes. This aims to balance the data traffic in the network, alleviate the load pressure on high-traffic nodes, reduce power consumption, and improve the overall network transmission quality.
[0054] The significant advantages of this invention are: Addressing the problems of low-quality transmission and excessive energy consumption caused by unreliable links, an improved RPL objective function, Multi-MRHOF, is proposed. This objective function replaces the traditional ETX metric with the standard deviation ETX, calculating the optimal path based on the standard deviation of ETX values between each link. Furthermore, it sets energy and traffic load constraints on routing nodes. The added energy constraint prevents low-energy nodes from being selected as parents, and the added load constraint prevents overloaded nodes from consuming energy too quickly and damaging the network. This improves routing topology construction and maintenance, effectively reducing node energy consumption, reducing network latency, increasing packet reception rate, and indirectly extending the overall network lifetime. Simulation results show that Multi-MRHOF can reduce end-to-end latency by at least 9.67%, average node power consumption by 7.3%, and packet reception rate by at least 13.2%. Attached Figure Description
[0055] Figure 1 This is a diagram illustrating the link congestion phenomenon;
[0056] Figure 2 This is a schematic diagram of an ETX link;
[0057] Figure 3 This is a diagram of routing information;
[0058] Figure 4 This is a flowchart of a strategy to avoid low-energy nodes;
[0059] Figure 5 This is a flowchart of a traffic load balancing strategy;
[0060] Figure 6 These are deployment diagrams for scenarios with different numbers of nodes;
[0061] Figure 7 This is a statistical chart of the average end-to-end delay results;
[0062] Figure 8 This is a statistical chart of average power consumption results;
[0063] Figure 9 This is a data packet reception rate statistics chart. Detailed Implementation
[0064] The specific embodiments and working principles of the present invention will be further described in detail below with reference to the accompanying drawings.
[0065] like Figure 1 As shown, an RPL routing optimization method based on residual energy and load constraints is described, with the following specific steps:
[0066] Step 1: In the DODAG construction phase, construct the DODAG based on the optimal path strategy according to the RPL routing protocol;
[0067] The core of the optimal path strategy lies in optimizing the routing metric, which selects a highly stable and reliable path. For ease of description, the following... Figure 2 For example, by observation, we can see that there are two paths from source node a to node f: path 1: a→b→d→f; path 2: a→c→e→g→f. Using the traditional method to construct a DODAG, node a will transmit via path 1. Nodes b and c are both candidate parent nodes, but the ETX value of the link containing node b is smaller, so a will preferentially choose node b for transmission. As shown in the diagram, the link ETX of path 1 is larger. ETX reflects the number of transmissions, indicating that more transmissions are required. The ETX difference of each hop in path 2 is smaller than that of path 1, indicating that this link is more stable. This brings to mind standard deviation, a statistical measure used to measure the dispersion or variability of a set of data. The larger the standard deviation, the greater the deviation of the data points from the mean, and the more dispersed the data distribution; the smaller the standard deviation, the smaller the deviation of the data points from the mean, and the more concentrated the data distribution. The standard deviation is calculated by summing the squares of the differences between each data point and the mean, finding the average, and then taking the square root. We apply this method to link selection to choose a path with low volatility. The specific process is as follows:
[0068] Step 1.1: In the RPL network, construct the DODAG starting from the root node;
[0069] Step 1.2: The root node of DODAG broadcasts DIO information. Each node in the RPL network receives and forwards this DIO information, such as... Figure 3 As shown, in order to obtain the standard deviation, the ETX value is added as a field to the DAO information containing the sending node and its neighboring nodes when each node returns DAO information to the root node. Finally, this information is returned to the root node of the DODAG.
[0070] The most common link metric is Expected Transmissions (ETX): This metric can be used to represent the quality of the link between a node and its neighboring nodes. Its main benefit is that it improves packet delivery efficiency in the network, ensures the reliability of the transmission link, and thus indirectly optimizes energy consumption in the network. The lower the ETX value, the higher the link quality. The ETX metric can be calculated using the following formula (1):
[0071]
[0072] Among them, Df With D r These represent the forward outgoing rate and the reverse incoming rate from the source node to the destination node, respectively. A node will preferentially select the link with the lowest ETX value among its neighbors as its preferred parent node.
[0073] (1) DIO: DIO message information contains a lot of DODAG information, such as RPL Instance, DODAG version number, node Rank value, etc., as shown in Table 1.
[0074] Table 1. DIO Message Information Illustration
[0075]
[0076] The DODAG structure is as follows: RPL Instance ID (1 byte) indicates the location of the DODAG to which the node belongs; Version Number (1 byte) represents the current DODAG version; Rank (2 bytes) can be understood as the relative distance of the node from the root node; G (Grounded) (1 bit) indicates whether the advertised DODAG meets the requirements of the application; if this flag is set to 1, the DODAG is grounded; if it is set to 0, the DODAG is floating; MOP (Mode of Operation) (3 bits) represents four network routing modes: 0 represents uplink-only routing, 1 represents a non-stored routing mode with a routing table only at the root node, 2 represents a stored routing table without multicast support, and 3 represents a stored routing mode with multicast support; Prf (Preference) (3 bits) represents the priority of the root node in the current network topology; the larger the value, the higher the priority. DTSN (1 byte) represents the sequence number of the DAO message, mainly used for downlink routing maintenance; DODAGID is used to identify the DODAG.
[0077] (2) DAO: DAO messages are control messages used by nodes to respond to DIO messages. In the construction of a DODAG, they can be used to maintain downlink routes. However, the application mode of DAO messages will differ depending on the routing mode. In storage mode routing, child nodes have their own routing tables, so they can directly respond to the parent node's DIO messages to construct downlink routes. In non-storage mode, only the root node has a complete routing table, and all control messages need to be sent through the root node to construct downlink routes. The structure of the DAO control message is shown in Table 2.
[0078] Table 2. DAO Message Information Illustration
[0079]
[0080] The RPL Instance ID occupies 1 byte and must be consistent with the RPL Instance ID in DIO; K is a 1-bit flag bit that indicates whether the receiver needs to return a DAO-ACK control message; D is a 1-bit flag bit that indicates whether the DODAG ID field exists. If it does not exist, it is set to 0, and if it is set to 1, it indicates that the local RPL Instance ID is used.
[0081] (3) DAO-ACK: The DAO-ACK message is used by a node to send a reply to the node that sent the DAO message after receiving it. In stored routing mode, the parent node sends the DAO-ACK. In non-stored routing mode, the root node is responsible for sending the DAO-ACK. The DAO-ACK message format is shown in Table 3.
[0082] Table 3. DAO-ACK Message Information Illustration
[0083]
[0084] The DAO Sequence occupies 1 byte and is used in the DAO-ACK message to reply to a specific DAO message. Its sequence number value corresponds to the sequence number in the DAO message, and the two must be consistent. The Status bit occupies 1 byte. A status bit of 0 indicates unconditional acceptance. Status bits from 1 to 127 indicate non-absolute rejection, meaning that the node sending the message is willing to act as the parent node, but it is recommended that the receiving node find and replace other parent nodes. Status bits between 128 and 255 indicate rejection, meaning that the node sending the message does not want to act as the parent node.
[0085] Step 1.3: After receiving the DAO message, the root node of DODAG calculates the standard deviation of each information transmission path based on the ETX value and obtains the information transmission path with the smallest standard deviation.
[0086] by Figure 2 For example, calculate the average ETX value for path 1, denoted as . The average ETX value for path 2 was calculated using the same method.
[0087]
[0088]
[0089] The standard deviation S1 of path 1 and the standard deviation S2 of path 2 are calculated by introducing the sample standard deviation formula, where:
[0090] The formula for sample standard deviation is:
[0091]
[0092] The standard deviation S1 of path 1 and the standard deviation S2 of path 2 are calculated as follows:
[0093]
[0094]
[0095] Where S is the standard deviation, ETX i Let ETX be the value between the two nodes during the i-th information transmission. This represents the average ETX value along this information transmission path, and n represents the number of information transmissions along this path.
[0096] The calculation results from the above formula show that the standard deviation S2 of path 2 is smaller than S1, which means that link 2 is more reliable and stable, has better quality, and has fewer retransmissions.
[0097] Step 1.4: The DAO-ACK message is similar to the DAO message. The root node forwards the DAO-ACK information to other nodes and adds the rpl_option_path_member field to the DAO-ACK information when replying to it. The rpl_option_path_member field contains the IPv6 address prefixes of other nodes in the information transmission path with the smallest standard deviation from the source node to the root node.
[0098] Step 1.5: After receiving the DAO-ACK information from the root node, other nodes match the address field in the DAO-ACK information to form the DODAG of the required network topology.
[0099] Step 2: During the route maintenance phase, based on the strategy of avoiding low-energy nodes, set the remaining energy constraints of the nodes and update the routing table of the constructed DODAG.
[0100] A node's energy consumption consists of four power consumption modules: CPU power consumption, LPM sleep power consumption, RX listener power consumption, and TX transmission power consumption. The energy consumed by these four modules depends on the duration of operation of each module. However, directly testing these four power consumption modules is very difficult. The Cooja simulation tool can use additional functional plugins to present the various functional modules of a node in a visual view.
[0101] The remaining energy of a node is calculated by subtracting the total energy of the four modules from its initial energy. This allows for the classification and constraint of the remaining energy of nodes, preventing near-death nodes, improving energy utilization efficiency, and reducing the overhead of route repair. The flowchart for the strategy to avoid low-energy nodes is shown below. Figure 4 As shown, the specific process is as follows:
[0102] S1. During the route maintenance phase, the remaining energy information of each node in the DODAG is first collected to make effective choices when allocating load to the nodes. The specific process is as follows:
[0103] The parent node records its remaining energy in the user options field and sends it to the child node via DIO information;
[0104] After receiving the DIO information sent by the parent node, the child node sends DAO information to the parent node.
[0105] The remaining energy information of each node is calculated based on the DAO information.
[0106] S2. Obtain the remaining energy of each parent node based on the remaining energy information of each node;
[0107] The remaining energy of each parent node is calculated as follows:
[0108] R e =E0-E c (8)
[0109] Among them, R e E represents the remaining energy of the parent node, and E0 represents the initial energy of the parent node. c =E CPU +E CPU +E RX +E TX E represents the energy already consumed by the parent node. CPU E is the energy consumed by the CPU operating module. CPU The energy consumed by the LPM hibernation module, E RX The energy consumed by the RX listening module, E TX Energy consumed by the TX transmission module.
[0110] S3. Evaluate and select based on the remaining energy of each parent node, and allocate load to each parent node. The specific steps are as follows:
[0111] A1. Calculate the percentage of remaining energy for each parent node based on its remaining energy.
[0112] A2. To ensure network stability, nodes are classified by energy level, such as high-energy nodes, medium-energy nodes, and low-energy nodes. This avoids the overhead caused by frequent parent node changes. Each parent node is classified based on its remaining energy percentage:
[0113] When determining whether the remaining energy percentage of a parent node is less than the first threshold T1, if so, the parent node is a low-energy node.
[0114] If the remaining energy percentage of a parent node is greater than the first threshold T1 and less than the second threshold T2, then the parent node is a medium-energy node.
[0115] If the remaining energy percentage of a parent node is greater than the second threshold T2, then the parent node is a high-energy node.
[0116] The first threshold T1 and the second threshold T2 are set to 20% and 60% respectively (these can also be adjusted according to actual needs). Medium-energy nodes and high-energy nodes can still be selected as parent nodes for data relay.
[0117] A3. Based on the node classification results, traffic load is allocated to each parent node. Nodes with higher energy levels are allocated more load and have higher priority, while nodes with energy levels below a certain threshold are instructed by control information to refuse to serve as parent nodes and are only used for data transmission. Child nodes need to reselect another suitable node from the candidate parent list as their parent node.
[0118] If the current parent node is a low-energy node, the parent node will set the Status value in the DAO-ACK information to between 128 and 255, and send DIO information to the child node. After receiving the DIO information, the child node will delete the parent node in the routing table and reselect a new parent node based on the remaining energy of the candidate parent node.
[0119] If the current parent node is a medium-energy node, the parent node will set the Status position in the DAO-ACK information to between 1 and 127 and send DIO information to the child node. After receiving the DIO information, the child node will check in the routing table whether there is a parent node with more remaining energy. If not, the current network topology will be maintained. If there is, the parent node with more remaining energy will be selected as the new parent node.
[0120] If the current parent node is a high-energy node, then the parent node will set the Status position in the DAO-ACK message to 0, send DIO information to the child node, and maintain the current network topology.
[0121] S4. The node continuously sends DIO information and control information, and periodically updates the node's remaining energy information to update the DODAG routing table, thereby ensuring energy balance.
[0122] Step 3: During the data transmission phase, load balancing strategy is used to evaluate the load of all parent nodes in the DODAG after the routing table is updated. When the evaluation shows that a parent node is in a state of traffic overload, the parent node is switched according to the strategy of avoiding low-energy nodes and the data transmission path is updated. Otherwise, the original network topology is maintained and data transmission is performed.
[0123] In the overall network topology, nodes near the root node send and receive data packets very frequently, resulting in significantly higher data traffic compared to other nodes. This excessively frequent data packet transmission and reception leads to excessive energy consumption for the nodes. Since nodes are typically powered by batteries, which are disposable devices, they will cease operation prematurely once their energy is depleted. This can have a substantial impact on the network topology. Therefore, a strategy is needed to alleviate node traffic pressure and distribute the traffic load across the network nodes as evenly as possible.
[0124] Data traffic is the total amount of data transmitted over a network within a certain time period. In this paper, we measure traffic load by calculating the data traffic of a node. The load metric is calculated based on the number of child nodes owned by the parent node. Based on the load metric, the child node selects a parent node with low load from the list of candidate parent nodes.
[0125] The flow load is calculated using formulas (8) and (9), as follows:
[0126]
[0127]
[0128] Where TD represents the total amount of node data, and C(i) represents the number of child nodes; LP x This indicates the traffic load of a parent node in the candidate parent list, calculated as the sum of data communication traffic from all child nodes. This step is performed by sending DIO messages in the RPL protocol, and its most important purpose is to assess node energy and load congestion levels while sending DIO messages.
[0129] During data transmission, when a neighboring node is detected to be experiencing traffic overload, the load status of the neighboring nodes and remaining energy are comprehensively considered. The transmission path of the current node is then modified to alleviate the traffic overload pressure. After the current network traffic load is relieved, the node can use control information to evaluate its previous parent node. If the corresponding constraints are met, it can reselect that node as the parent node for data transmission.
[0130] The flowchart of the traffic load balancing strategy is as follows: Figure 5 As shown, the specific steps are as follows:
[0131] Step 3.1: When the network starts running, the root node begins to send DIO information to build the network topology. After receiving the DIO information, the child nodes select their parent nodes and broadcast again according to the process of sending DIO information in the RPL protocol. Before the DODAG is built, the process of sending DIO is repeated to update the state of the network topology at all times.
[0132] Step 3.2: After all nodes within the transmission range in the network topology have been added to the DODAG, a load metric assessment is performed to determine whether the parent node is in a state of traffic overload and to mark the status. DIO information is then sent to the child nodes. The specific process is as follows:
[0133] The parent node calculates the data packets received from all its child nodes;
[0134] Determine whether the number of data packets received by the parent node is greater than the number of data packets it sends. If so, determine that the parent node is in a state of overload; otherwise, determine that the parent node is in a state of normal traffic.
[0135] Add the user field rpl_option_path_load to the user option field of the DIO information, and set the corresponding field value as a status flag according to the traffic load status of the parent node. The field value is set to 1 to indicate that the parent node is in a traffic overload state, and set to 0 to indicate that the parent node is in a normal traffic state.
[0136] Step 3.3: After receiving the DIO message sent by the parent node, the child node checks the status flag. If the current parent node is in a state of traffic overload, the child node deletes the parent node information from the current routing table and selects the parent node with higher remaining energy as the preferred parent node according to the low-energy node avoidance strategy, thus realizing the parent node conversion. Otherwise, the child node sends DAO information to the parent node to maintain the original network topology and achieve traffic load balancing.
[0137] Finally, the Cooja simulation tool was used for simulation. During the simulation, the method described in this embodiment was compared with the standard objective functions OF0 and MRHOF under the same deployment structure. The main performance indicators compared were network latency, overall network power consumption, and packet reception rate. The effectiveness of the algorithm was verified by these indicators.
[0138] The simulation environment was deployed within a 250m × 250m square area. To more closely resemble the working conditions of real-world sensor nodes, a distance-loss-based radio mode was selected, and the transmission and reception success rates of the nodes were set to 80%. One receiving node was designated as the root node, and the remaining nodes were designated as transmitting nodes. The locations of different numbers of transmitting nodes are distributed as follows. Figure 6 As shown in the figure, the settings for the remaining simulation parameters are shown in Table 4.
[0139] Table 4 Simulation Parameter Configuration Table
[0140]
[0141] In the Cooja simulator, network node data is tracked and recorded by calling the collect-view plugin. The performance of the newly designed objective function Multi-MRHOF, OF0, and MRHOF was compared with those of OF0 and MRHOF in networks with 5, 10, 15, 20, 25, and 30 sending nodes and 1 root node. See Appendix. Figure 6 The study statistically analyzed performance metrics such as end-to-end latency, network power consumption, packet reception rate, and routing overhead.
[0142] (1) Average end-to-end delay
[0143] End-to-end latency of a data packet refers to the time elapsed from when data is sent from the source node to when it is received by the destination node. Average end-to-end latency can be expressed as:
[0144] S = t1 - t0 (10)
[0145]
[0146] In the above formula, S represents the node's latency; t0 and t1 represent the times when data is sent and received; A eed S represents the end-to-end latency of the entire network; i The delay is represented by _i_th, which is the time it takes for the i-th data to be sent and received; n represents the number of data packets received by the destination node.
[0147] according to Figure 7From an overall trend perspective, OF0 latency shows a sharp increase with the increase in the number of nodes. With 30 transmitting nodes, Multi-MRHOF reduces latency by 54.8% compared to OF0, demonstrating superior end-to-end latency performance. However, for MRHOF, the performance difference is not significant with a small number of nodes because Multi-MRHOF, being an improvement on MRHOF, retains some of its functionalities. But as the number of nodes increases, at 30 nodes, Multi-MRHOF reduces latency by 9.67% compared to MRHOF. Multi-MRHOF selects an optimal path, choosing a more stable one, thus reducing network latency.
[0148] (2) Average network power consumption
[0149] The specific calculation method for network power consumption has been described in the testing process above. Power consumption is one of the important performance indicators of LLNs, as it relates to the entire network lifecycle. The measured average power consumption is the average of the sum of the CPU power, LPM power, RX power, and TX power of each node in the network. Figure 8 As shown, when the number of network nodes is relatively small, the power consumption difference among the three is not significant because the network data traffic is low and communication between nodes is infrequent. However, when the number of nodes increases to 30, data communication in the network becomes more frequent. At this point, Multi-MRHOF reduces power consumption by 7.3% compared to OF0 and by 17.74% compared to MRHOF. As the network scale continues to expand, Multi-MRHOF demonstrates a greater performance advantage over the other two because it employs a strategy of avoiding low-energy nodes, thus balancing the overall network energy consumption and effectively reducing network power consumption while achieving load balancing.
[0150] (3) Data packet reception rate
[0151] The data packet reception rate refers to the ratio of data packets successfully transmitted to the destination node in a network to the total number of data packets sent. This metric can be used to represent the transmission performance of a network, and its calculation method is shown in formula (12).
[0152]
[0153] In the above formula, PDR represents the data packet reception rate; S represents the total number of data packets received by the receiving node; and T represents the total number of data packets sent by the source node.
[0154] Depend on Figure 9As the number of nodes in the network increases, the number of data packets also increases, easily causing network congestion, and packet loss and retransmission become very frequent. When the network increases to 30 nodes, the average packet reception rate of OF0 drops to 47%, while MRH0 and Multi-MRHOF are 53% and 60% respectively, improving the packet reception rate by at least 13.2%. This is because Multi-MRHOF avoids routing to nodes with low remaining energy; the lower the energy, the weaker the signal it receives and transmits, making it prone to packet loss. Simultaneously, through traffic load balancing strategies, it can reduce data traffic congestion at nodes, thus making network transmission smoother and improving packet reception.
[0155] This embodiment proposes a routing strategy to optimize metric standards, addressing issues such as poor link quality, rapid energy consumption, unbalanced load, and poor link service quality caused by the overly simplistic routing metrics in RPL. The solution primarily optimizes topology construction and route maintenance. In the DODAG construction phase, from the perspective of RPL routing metrics, an ETX metric optimization scheme based on standard deviation is proposed. By introducing the concept of sample standard deviation, it replaces the original method of selecting the optimal path using ETX. This is achieved through the objective function Multi-MRHOF, which selects a route path with low fluctuation and high stability across the entire network topology, thus improving routing paths and alleviating the problem of poor link quality. In the route maintenance phase, node remaining energy constraints are set, designating low-energy nodes only as data transmission nodes to balance network energy consumption, extend operating time, and improve the overall network lifespan. In the data transmission phase, a traffic load threshold is set, comprehensively considering the traffic load of all parent nodes. If the load exceeds the set value, child nodes are notified to switch parent nodes, achieving load balancing, alleviating the load pressure on high-traffic nodes, reducing power consumption, and improving the overall network transmission quality. Simulation results show that this scheme outperforms the standard objective function in terms of packet reception rate, power consumption reduction, network lifetime extension, and network latency.
[0156] The technical solution provided by this invention has been described in detail above. Specific examples have been used to illustrate the principles and implementation methods of this invention. The descriptions of the embodiments above are only for the purpose of helping to understand the method and core ideas of this invention. It should be noted that those skilled in the art can make several improvements and modifications to this invention without departing from the principles of this invention, and these improvements and modifications also fall within the protection scope of the claims of this invention.
Claims
1. An RPL routing optimization method based on residual energy and load constraints, characterized in that, Includes the following steps: Step 1: In the DODAG construction phase, construct the DODAG based on the optimal path strategy according to the RPL routing protocol; The specific process of constructing DODAG based on the optimal path strategy described in step 1 is as follows: Step 1.1: In the RPL network, construct the DODAG starting from the root node; Step 1.2: The root node of DODAG sends DIO information via broadcast. Each node in the RPL network receives and forwards the DIO information. When each node returns DAO information to the root node, it adds the ETX value as a field to the DAO information. Step 1.3: After receiving the DAO message, the root node calculates the standard deviation of each information transmission path based on the ETX value and obtains the information transmission path with the smallest standard deviation. Step 1.4: The root node replies with DAO-ACK information to other nodes, and adds the rpl_option_path_member field to the DAO-ACK information when replying. The rpl_option_path_member field contains the IPv6 address prefixes of other nodes in the information transmission path with the smallest standard deviation from the source node to the root node. Step 1.5: After receiving the DAO-ACK information from the root node, other nodes match the address field in the DAO-ACK information to form the DODAG of the required network topology. Step 2: During the route maintenance phase, based on the strategy of avoiding low-energy nodes, set the remaining energy constraints of the nodes and update the routing table of the constructed DODAG. Step 3: During the data transmission phase, load balancing strategy is used to evaluate the load of all parent nodes in the DODAG after the routing table is updated. When the evaluation shows that a parent node is in a state of traffic overload, the parent node is switched according to the strategy of avoiding low-energy nodes and the data transmission path is updated. Otherwise, the original network topology is maintained and data transmission is performed.
2. The RPL routing optimization method based on residual energy and load constraints according to claim 1, characterized in that: The calculation process for the standard deviation of each information transmission path in step 1.3 by the root node is as follows: Where S is the standard deviation, ETX i Let ETX be the value between the two nodes during the i-th information transmission. This represents the average ETX value along this information transmission path, and n represents the number of information transmissions along this path.
3. The RPL routing optimization method based on residual energy and load constraints according to claim 1, characterized in that: The specific steps of the strategy based on avoiding low-energy nodes are as follows: S1. Collect the remaining energy information of each node in DODAG; S2. Obtain the remaining energy of each parent node based on the remaining energy information of each node; S3. Evaluate and select based on the remaining energy of each parent node, and allocate load to each parent node; S4. The node continuously sends DIO information and control information, updates the node's remaining energy information, and realizes the update of the DODAG routing table.
4. The RPL routing optimization method based on residual energy and load constraints according to claim 3, characterized in that: The specific process of collecting the remaining energy information of each node in DODAG in step S1 is as follows: The parent node records its remaining energy in the user options field and sends it to the child node via DIO information; After receiving the DIO information sent by the parent node, the child node sends DAO information to the parent node. The remaining energy information of each node is calculated based on the DAO information.
5. The RPL routing optimization method based on residual energy and load constraints according to claim 3, characterized in that: The remaining energy of each parent node is calculated in step S2 as follows: R e <E0-E c Among them, R e E represents the remaining energy of the parent node, and E0 represents the initial energy of the parent node. c =E CPU +E CPU +E RX +E TX E represents the energy already consumed by the parent node. CPU E is the energy consumed by the CPU operating module. CPU The energy consumed by the LPM hibernation module, E RX The energy consumed by the RX listening module, E TX Energy consumed by the TX transmission module.
6. The RPL routing optimization method based on residual energy and load constraints according to claim 3, 4, or 5, characterized in that: In step S3, the load is allocated to each parent node based on the remaining energy of that parent node. The specific steps are as follows: A1. Calculate the percentage of remaining energy for each parent node based on its remaining energy. A2. Categorize each parent node based on the percentage of remaining energy: When determining whether the remaining energy percentage of a parent node is less than the first threshold T1, if so, the parent node is a low-energy node. If the remaining energy percentage of a parent node is greater than the first threshold T1 and less than the second threshold T2, then the parent node is a medium-energy node. If the remaining energy percentage of a parent node is greater than the second threshold T2, then the parent node is a high-energy node. A3. Distribute traffic load to each parent node based on the classification results: If the current parent node is a low-energy node, the parent node will set the Status value in the DAO-ACK information to between 128 and 255, and send DIO information to the child node. After receiving the DIO information, the child node will delete the parent node in the routing table and reselect a new parent node based on the remaining energy of the candidate parent node. If the current parent node is a medium-energy node, the parent node will set the Status position in the DAO-ACK information to between 1 and 127 and send the DIO information to the child node. After receiving the DIO information, the child node will check in the routing table whether there is a parent node with more remaining energy. If not, the current network topology will be maintained. If there is, the parent node with more remaining energy will be selected as the new parent node. If the current parent node is a high-energy node, then the parent node will set the Status position in the DAO-ACK message to 0, send DIO information to the child node, and maintain the current network topology.
7. The RPL routing optimization method based on residual energy and load constraints according to claim 6, characterized in that: The first threshold T1 and the second threshold T2 are 20% and 60%, respectively.
8. The RPL routing optimization method based on residual energy and load constraints according to claim 3, 4, 5, or 7, characterized in that: The specific steps in step 3 for evaluating the load of all parent nodes in the DODAG after updating the routing table and updating the data transmission path based on the traffic load balancing strategy are as follows: Step 3.1: When the network starts running, the root node begins to send DIO information to build the network topology. After receiving the DIO information, the child nodes select their parent nodes and broadcast again according to the process of sending DIO information in the RPL protocol. Step 3.2: After all nodes within the transmission range in the network topology have been added to the DODAG, perform load metric evaluation, determine whether the parent node is in a state of traffic overload and mark the state, and send DIO information to the child nodes. Step 3.3: After receiving the DIO message sent by the parent node, the child node checks the status flag. If the current parent node is in a state of traffic overload, the child node deletes the parent node information in the current routing table and selects the parent node with higher remaining energy as the preferred parent node according to the low-energy node avoidance strategy, thus realizing the parent node conversion. Otherwise, the child node sends DAO information to the parent node to maintain the original network topology.
9. The RPL routing optimization method based on residual energy and load constraints according to claim 8, characterized in that: Step 3.2 involves load metric assessment to determine whether the parent node is in a state of traffic overload and then marking the status as follows: The parent node calculates the data packets received from all its child nodes; Determine whether the number of data packets received by the parent node is greater than the number of data packets it sends. If so, determine that the parent node is in a state of overload; otherwise, determine that the parent node is in a state of normal traffic. Add the user field rpl_option_path_load to the user option field of the DIO information, and set the corresponding field value as a status flag according to the traffic load status of the parent node. The field value is set to 1 to indicate that the parent node is currently in a traffic overload state, and set to 0 to indicate that the parent node is in a normal traffic state.