## 3 Implementation Strategy of Dynamic Routing Protocol for Awareness Combat Networks
### Node Status Routing
#### 3.1.3 Design and Implementation of Routing Control Selection Module  
The design of the routing protocol is composed of five functional modules: initialization and main control module, packet processing and sending module, packet reception processing module, and routing control selection module. Its core is the routing control selection module [14; 15]. (1) DTN Initialization and Main Control Module  
The DTN initialization module is the main control module of the routing mechanism. As long as the node running the AODV protocol receives the link failure message from the node to the next hop node, the DTN initialization module will turn on a timer. If the data packet is successfully passed to the destination node of the DTN before the timer expires, the DTN initialization module sends a \"successful\" control message to the node running the AODV protocol. If the data packet is not successfully passed to the destination node of the DTN when the timer expires, the DTN initialization module sends a \"failure\" control message to the node running the AODV protocol. After receiving the message, the node broadcasts the error message RERR to the neighbor node according to the AODV protocol, and runs the routing maintenance or routing of the AODV protocol. In this way, it rediscovers the process, as shown in Figure 7.  
(2) DTN packet processing transmission module  
The DTN packet processing module first acquires the data packets which have not been sent by the AODV protocol, and adds the DTN Baotou to the DTN package. The DTN package is stored in the storage area of the DTN overlay layer of the node, and then a copy of the DTN packet is generated as the data to be sent. Query the DTN routing table of the node to get the next hop address. The node sends the DTN packets to be sent to the storage area of the DTN coverage layer of the next hop node. After the next hop node receives the DTN package, it returns a reply message (including the ID number  
Figure 7: DTN initialization module processing and main control process. of the DTN packet, the last hop address), and if the node does not receive a reply message from the next hop, a new copy of the DTN packet will be generated, and the ID number of the DTN packet is changed to the next hop node, as shown in Figure 8.  
(3) DTN packet reception processing module  
When the DTN packet sent by the last hop node is received, the next hop node determines whether the DTN packet has been processed through the ID number of the DTN package. If the package is processed, it is discarded; if it is not processed, it is put in the storage area and a reply message is sent to the next hop node. If the node is the destination node of the DTN package, the node will remove the DTN Baotou, restore the DTN packet into the original data packet, and continue to run the AODV protocol to handle the packet. The node receives the reply message from the next hop node and removes the DTN packet in the storage area according to the DTN package ID in the reply message, as shown in Figure 9.  
Figure 8: Sending of the DTN package process. (4) DTN routing control selection module  
It is important to make full use of AODV's routing discovery mechanism to build the DTN routing table. The DTN routing table records every route established by route discovery when running AODV protocol, and updates only with time without deleting routing records. When the link is disconnected or the node moves so that the adjacent nodes are no longer adjacent, the relevant routing marks in the DTN routing table are \"invalid\". When link recovery or node mobility allows nodes to have new neighbor nodes, the relevant routing marks in the DTN routing table are \"valid\". Nodes look for whether the DTN routing table has a marked \"valid\" route to the destination node. If there is, the address of the next hop node is returned; if not, the DTN route discovery is performed, as shown in Figure 10. The node obtains the adjacent node information by running the AODV protocol to see if there is a reachable neighbor node.