Performance Evaluation of Routing Algorithm in Satellite Self-Organizing Network on OMNeT++ Platform
Abstract
:1. Introduction
- A novel routing strategy for satellite self-organizing network, shortest queue length-cluster-based routing protocol is proposed, which considers nodes’ queue length when making routing decisions;
- A satellite self-organizing network simulation platform is built based on OMNeT++. In this platform, some functions are designed and implemented, including initial network forming, cluster maintenance, data generation and routing, etc.;
- The delay and packet loss performance of the proposed algorithm are tested and compared with GPSR and Dijkstra.
2. Related Works
2.1. Topology-Based Routing Algorithms
Self-Organizing Routing Algorithm | Characteristics | Delay | Packet Delivery Rate |
---|---|---|---|
Topology-based routing algorithm | Route calculation is based on the network’s topological structure and is divided into active and passive methods. | OLSR: up to 2 s [12] AODV: up to 4 s [12] | OLSR: 20–80% [12] AODV: about 85% [12] |
Location-based routing algorithm | Routing is calculated based on the geographical location of the nodes. | GPSR and its improved algorithm: up to 0.45 s [13] | GPSR and its improved algorithm: up to 95% [13] |
Cluster-based routing algorithm | Divide the network into layers and categorize routing into inter-cluster and intra-cluster. | CBRP: up to 2.2 s [14] | CRBP: higher than 90% [14] |
2.2. Location-Based Routing Algorithm
2.3. Cluster-Based Routing Algorithm
3. Shortest Queue Length-Cluster-Based Routing Protocol
- Cluster head: The cluster heads are generally located at the center of the cluster and are responsible for managing the cluster structure, maintaining network topology information, routing computation, and forwarding data packets;
- Cluster member: The cluster members orbit around the cluster head, directly connected to the cluster head. When a node has data to forward, it sends the data to the cluster head;
- Ground control node: The ground control node can communicate with all satellites in the network. When receiving a request to join the network from a satellite node, the ground control node assigns it to the nearest cluster head or creates a new cluster head, and allocates time slots for it;
- User: Users on the ground send data to a certain satellite. The data can be forwarded to the destination through the satellite network, and finally arrive at another user.
3.1. Initial Cluster Creation Process
- The ground control node receives a network access request from a node;
- The ground node determines whether there is a cluster head that is close enough to the node. If there is, the node is assigned to the nearest cluster head; if not, the node becomes a new cluster head;
- After the assignment is completed, the ground node updates the local cluster structure information and ends the node’s cluster allocation process.
3.2. Topology Information Maintenance Mechanism
- After the periodic cluster maintenance is completed, if the local cluster structure has been changed, the cluster head updates the connection table and sends it to neighboring cluster heads;
- After receiving the broadcast connection table, the neighboring cluster head first checks if it is a new connection table. If it is, create a new connection table locally and update the local connection table list. If not, proceed to the next step;
- Determine whether the connection table is the latest table of the corresponding cluster. If it is, update the local connection table list. Otherwise, discard this table;
- Repeat the above three steps in a cycle until the connection table floods over the entire network.
3.3. Specific Routing Process of SQL-CBRP
- When a cluster head node CH has a data packet to forward, it determines whether the destination node is within its cluster. If it is, the packet is sent directly to the destination node. If not, it consults the connection table;
- If the local connection table indicates that there is a neighbor node closer to the destination node, then proceed to the next step. Otherwise, it is determined that the routing has failed;
- Among the neighbor nodes closer to the destination node, compare their queue lengths and select the node with the shortest queue length as the next hop.
Algorithm 1 Routing Algorithm Based on Shortest Queue Length |
Input: destination node Dest, neighbor cluster heads’set N |
Output: Nexthop; |
1: Calculate the distance between this node and the destination node DistanceLocal |
2: if Dest is in this cluster then |
3: Nexthop <- Dest |
4: else |
5: for each neighbor n ∈N do |
6: Calculate distance between neighbor n and destination node |
7: end for |
8: if there are neighbors closer to destination than this node then |
9: Nexthop <- id of the neighbor with shortest queue length |
10: else |
11: Nexthop <- −1 |
12: end if |
13: end if |
14: return Nexthop |
4. Satellite Self-Organizing Network Simulation Platform Based on OMNeT++
- Component-based simulation models: OMNeT++ models are based on components, which means that models can be constructed from multiple modular components, facilitating the building and expansion of models.
- Flexible simulation process design: OMNeT++ allows users to freely design the simulation process, including the implementation of network protocols and the transmission of packets. Therefore, users can design the network structure and node behavior according to the specific conditions of their research network scenarios.
- Graphical User Interface (GUI): OMNeT++ provides a GUI that enables users to visually observe the simulation process. By observing, users can confirm whether the designed and implemented functions operate correctly, thus verifying and modifying the design process.
4.1. Network Domain
4.2. Module Domain
4.3. Function Domain
4.3.1. Initial Network Formation
- The joining satellite node sends a network access request message to the ground node;
- Based on the location information of the joining node and current network cluster structure, the ground node performs an initial cluster allocation for the new joining node. After the allocation is completed, the ground node sends a message to the joining node carrying the assigned node ID, cluster information, whether it is a cluster head, time slots, and other information;
- The joining node takes corresponding actions based on its assigned status. If it is assigned as a member node, it sends a message to the cluster head node, informing its own ID information and time slot. If it is assigned as a cluster head, it broadcasts a “hello” message to its neighbors to announce its presence, while also listening for messages from neighboring cluster heads and new joining member nodes in its cluster to establish a local connection table.
4.3.2. Cluster Maintenance
- Cluster head node. The cluster head node maintenance process is shown in Figure 5a. The cluster maintenance of the cluster head is periodically triggered. By using the “ScheduleAt()” method in OMNeT++, the network layer module of the cluster head can send a message object to itself after a certain period. This method can be used to set a timer to periodically trigger cluster maintenance. After the cluster head triggers the cluster maintenance operation, it first broadcasts an “isConnected” message to the member nodes to confirm whether the member nodes are still within their connection range. If any node has left the cluster, the cluster head updates the local connection table and floods this new connection table. Meanwhile, the member with the highest connection degree (i.e., it has the most neighbors in the cluster) is elected as the sub-head, and a message is sent to this member to notify it of becoming the sub-head. When the cluster head is damaged due to certain circumstances, the sub-head can become the new cluster head to manage other member nodes. This can effectively avoid the direct demise of the cluster after the cluster head is damaged, thereby reducing the frequency of cluster structure changes and enhancing the stability of the network;
- Member nodes. The cluster maintenance process of member nodes is shown in Figure 5b. A timer is also set within the member nodes. If a member node receives an “isConnected” message from the cluster head before the timer is up, it resets the timer and sends its own position information and node ID in a “Reply” message to the cluster head for updating the local connection table and for the next sub-head election. If the timer is up and the member node still has not received a message from the cluster head, it is considered that the node has left the communication range of the cluster head due to its movement. Therefore, the node changes its status to “isolate” and switches to performing the cluster maintenance methods of an isolated node;
- Isolate nodes. The process for isolated nodes to join a cluster is shown in Figure 5c. An isolated node listens for broadcast messages from cluster heads. If it receives a broadcast message from a cluster head, it sends a network access request to the cluster head. Then, a timer starts counting. If the node receives a confirmation message from the cluster head before the timer is up, the node changes its state to “member”. If the timer is up and the node still has not received a confirmation message from the cluster head, it continues to listen for cluster head broadcasts.
4.3.3. Time Slot Allocation
- When the ground node receives the satellite node’s network access request, after assigning the cluster affiliation in the network layer, the Mac layer allocates an idle time slot to the node and sends the time slot information to the node through a message;
- After the node receives the message containing the time slot information, it informs the cluster head of its time slot information through a message;
- The cluster head updates the utilization of time slot resources in the cluster.
- The isolated node sends a network access request to the cluster head;
- After receiving the access request, the cluster head checks if there are any remaining idle time slots in the cluster. If there are idle time slots, proceed to the next step;
- The cluster head allocates an idle time slot to the new joining node and notifies the node through a message.
4.3.4. Data Generation and Forwarding
5. Simulation Analysis
5.1. Simulation Parameters
5.2. Simulation Results
5.2.1. Performance of Different Types of Packets
5.2.2. Performance of Different Packet-Sending Probability
5.2.3. Performance under Load Imbalance Conditions
6. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
References
- Zhang, J.; Chang, C.; Zhang, Y.; Li, R.; Wang, K.; Zhang, X. Survey on Routing Technology of Mega Constellation. Space-Integr.-Giround Inf. Netw. 2024, 5, 2–13. [Google Scholar]
- Liu, J.; Zhang, X.; Zhang, R.; Huang, T.; Yu, F.R. Reliable and low-overhead clustering in LEO small satellite networks. IEEE Internet Things J. 2021, 9, 14844–14856. [Google Scholar] [CrossRef]
- Radhakrishnan, R.; Edmonson, W.W.; Afghah, F.; Rodriguez-Osorio, R.M.; Pinto, F.; Burleigh, S.C. Survey of inter-satellite communication for small satellite systems: Physical layer to network layer view. IEEE Commun. Surv. Tutor. 2016, 18, 2442–2473. [Google Scholar] [CrossRef]
- Hui, L.; Xue, Z.; Ma, W. A TDMA-based Combined MAC Protocol forthe Small Satellite Formation System. Space Electron. Technol. 2016, 13, 23–28. [Google Scholar]
- Zhang, J.; Wang, K.; Li, R.; Chang, Z.; Zhang, X.; Wang, W. MaCro: Mega-Constellations Routing Systems with Multi-Edge Cross-Domain Features. IEEE Wirel. Commun. 2023, 30, 69–76. [Google Scholar] [CrossRef]
- Liu, G.-P.; Zhang, S. A Survey on Formation Control of Small Satellites. Proc. IEEE 2018, 106, 440–457. [Google Scholar] [CrossRef]
- Yan, F.; Nie, H.; Xia, W.; Shen, L. Inter-satellite link connection strategy for large-scale low earth orbit satellite networks. J. Commun. 2024, 45, 100–109. [Google Scholar]
- Wei, W.; Fu, L.; Wang, K.; Lu, X.; Zhou, Z. Survey of routing technologies for the satellite Internet. J. Xidian Univ. 2024, accepted. [Google Scholar]
- Cao, X.; Li, Y.; Xiong, X.; Wang, J. Dynamic Routings in Satellite Networks: An Overview. Sensors 2022, 22, 4552. [Google Scholar] [CrossRef] [PubMed]
- Singh, J.; Singh, G.; Gupta, D.; Muhammad, G.; Nauman, A. OCI-OLSR: An Optimized Control Interval-Optimized Link State Routing-Based Efficient Routing Mechanism for Ad-Hoc Networks. Processes 2023, 11, 1419. [Google Scholar] [CrossRef]
- Yang, B. Research on the Improvement of AODV Routing Protocol in ad Hoc Networks of UAVs. Master’s Thesis, Xian University of Technology, Xian, China, 2023. [Google Scholar]
- Yang, M. Research and Optimization of Routing Link Selection Method in Wireless ad Hoc Network. Master’s Thesis, Harbin University of Science and Technology, Harbin, China, 2023. [Google Scholar]
- Dong, L. Research on Mobile ad Hoc Network Routing Technology. Master’s Thesis, Beijing University of Post and Telecommunication, Beijing, China, 2023. [Google Scholar]
- Zhang, Y. Research on the Networking Technology of the Large-Scale Small Satellites Cluster. Master’s Thesis, University of Chinese Academy of Sciences, Beijing, China, 2021. [Google Scholar]
- Xu, J. Research on Centralized Adaptive Hybrid Routing Mechanism for ad Hoc Network. Master’s Thesis, Beijing University of Post and Telecommunication, Beijing, China, 2015. [Google Scholar]
- Bao, X.; Li, H.; Zhao, G.; Chang, L.; Zhou, J.; Li, Y. Efficient clustering V2V routing based on PSO in VANETs. Measurement 2020, 152, 107306. [Google Scholar] [CrossRef]
- Wang, K. Research on Highly Reliable Routing Control Systems and Methods for Satellite Network. Master’s Thesis, Beijing University of Post and Telecommunication, Beijing, China, 2024. [Google Scholar]
- Guo, G. Research and Implementation on a Network Layer Protocol of High-Rate Wireless ad Hoc Network. Master’s Thesis, Beijing University of Post and Telecommunication, Beijing, China, 2019. [Google Scholar]
- Cheng, C.; Ren, X.; Xu, S. Starlink and its operational analysis. Command Control Simul. 2024, 46, 154–160. [Google Scholar]
- Wang, C.; XU, P.; Zhang, S.-b.; Wang, L.-q.; Wang, W.-d. Research and implementation of dynamic routing protocol for LEO satellites based on Linux system. J. Beijing Univ. Posts Telecommun. 2020, 43, 94. [Google Scholar]
- Xiao, K.; Liu, X.; Wei, H.; Fei, Z. Application of the on the move phased array satellite communication antenna in emergency communication. Chang. Inf. Commun. 2023, 36, 187–190. [Google Scholar]
- Feng, B. Research on Preprocessing Algorithm of G.722 Wideband Speech Signal. Master’s Thesis, Dalian University of Technology, Dalian, China, 2009. [Google Scholar]
Parameter Name | Parameter Value |
---|---|
Number of satellite nodes | 80 |
Distance between leaders | 600–700 km |
Distance between leader and follower | 100 km |
Nodes’ speed | 7.6 km/s |
Nodes’ longest queue length | 9 |
Rate of packet generation | 1 packet/s |
Bandwidth of cluster head | 30 Mbps [20] |
Simulation duration | 1500 s |
Message service’s data rate | 15 Mbps [21] |
Voice service’s data rate | 64 kbps [22] |
Video service’s data rate | 8 Mbps |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Wang, G.; Zhang, J.; Zhang, Y.; Liu, C.; Chang, Z. Performance Evaluation of Routing Algorithm in Satellite Self-Organizing Network on OMNeT++ Platform. Electronics 2024, 13, 3963. https://doi.org/10.3390/electronics13193963
Wang G, Zhang J, Zhang Y, Liu C, Chang Z. Performance Evaluation of Routing Algorithm in Satellite Self-Organizing Network on OMNeT++ Platform. Electronics. 2024; 13(19):3963. https://doi.org/10.3390/electronics13193963
Chicago/Turabian StyleWang, Guoquan, Jiaxin Zhang, Yilong Zhang, Chang Liu, and Zhaoyang Chang. 2024. "Performance Evaluation of Routing Algorithm in Satellite Self-Organizing Network on OMNeT++ Platform" Electronics 13, no. 19: 3963. https://doi.org/10.3390/electronics13193963
APA StyleWang, G., Zhang, J., Zhang, Y., Liu, C., & Chang, Z. (2024). Performance Evaluation of Routing Algorithm in Satellite Self-Organizing Network on OMNeT++ Platform. Electronics, 13(19), 3963. https://doi.org/10.3390/electronics13193963