Introduction to Low Earth Orbit (LEO).
A Low Earth Orbit (LEO) satellite network is a type of satellite communication system where satellites are placed in low Earth orbits, typically at altitudes ranging from a few hundred to a few thousand kilometres above the Earth’s surface. LEO satellites orbit the Earth at a relatively high speed, completing one orbit in around 90 minutes to 2 hours.
Introduction to ns-3-leo Module
In [1], the authors present ns-3-leo, a module for the discrete event network simulator ns-3, which includes models for the network mobility and link characteristics of Low Earth Orbit (LEO) satellite mega-constellations. The initial goal of that project has been to create a simulation environment in which existing routing protocols from the Wireless Sensor Network (WSN) and Mobile Ad-hoc Network (MANET) areas can be evaluated in these types of networks.
Installing ns-3 and ns-3-leo module
The following article presents the way of installing ns-3 and ns-3-leo module:
The following screenshot shows the typical successful compilation of ns-3 with leo module.
Run the example simulation as follows:
$ ./waf --run=leo-circular-orbit-tracing-example
You may end up with errors like the following:
You may avoid this error by doing the following and running the script again.
Now the simulation will run successfully and will end with the following terminal outputs:
3D Visualization of the Satellite Network
It is possible to visualize the network scenario like below as explained in [1]
The above is a still image from[1] a 24 hours sped-up animation of the Starlink constellation. (Airports in the USA are shown in green as an example of areas with a high population density).
Visualization of the LEO network through 2D Animation with NetAnim
The following code will create the necessary 2D traces for NetAnim:
The following screenshot shows the output of the initial state of LEO Satellites with with NetAnim 2D visualization tool:
The following gif animation shows the simulation LEO Network with NetAnim 2D visualization tool:
Since it is a 2D projection of 3D model, all the satellites in one particular longitude were projected in the same x-y plane; so that forming a small cluster of satellite nodes moving along in groups (around the imaginary Earth at centre).
Installing the NetSimulyzer add-on module under ns-3
The following article explains the way of installing the NetSimylyzer add-on module under ns-3
Installing NetSimulyzer 3D Visualization Support Add-on Module in ns-3 under Debian/Ubuntu
After a successful installation of NetSimulyzer ns-3 add-on, you will see it in the list of compiled modules. Carefully note the two modules ‘leo’ and ‘netsimulyzer’ in the highlighted section:
Installing the NetSimulyzer 3D Visualization Tool Under Linux
The following article explains the way of installing the NetSimylyzer 3D visualization tool under Linux.
Installing NetSimulyzer 3D Visualization Tool under Debian/Ubuntu
Visualization of the LEO network through 3D NetSimulyzer Visualization Tool.
The following is the 3D model of the Earth used in this simulation. It is not scaled to the original actual size of Earth in side the virtual 3D scenario.
Important Notes: The following is the 3D model of the Satellite used in this simulation. It is abnormally scaled to a higher size in the virtual 3D scenario so that it can be visualized in a better way. It means that the Earth is not at the correct scale.
The Orbits of the satellites are approximately the correct scale but the distance between Earth and the satellites seems to be a little bit high because of the low size of the Eatch Model.
The size of the satellites were abnormally made huge so that it can be seen on the visualizer (in actual scale, the satellites will not be visible. In real case, the satellites will be much closer to the Earth’s Surface as shown in the above still image from[1] (a 24 hours sped-up animation of the Starlink constellation.).
The following screenshot shows the output of the initial state of LEO Satellites with NetSimulyzer 3D visualization tool:
The following gif animation shows the simulation LEO Network with NetSimulyzer 3D visualization tool:
Important Notes:
A low Earth orbit (LEO) is, as the name suggests, an orbit that is relatively close to Earth’s surface. It is normally at an altitude of less than 1000 km but could be as low as 160 km above Earth – which is low compared to other orbits, but still very far above Earth’s surface. By comparison, most commercial aeroplanes do not fly at altitudes much greater than approximately 14 km, so even the lowest LEO is more than ten times higher than that[6].
In the above simulation, the Earth is not rotating. But in some cases (GEO), the satellites will be geostationary. It means the satellites should rotate along with the actual rotation of the Earth. Unlike satellites in GEO that must always orbit along Earth’s equator, LEO satellites do not always have to follow a particular path around Earth in the same way[6].
Correcting the Scaling of Earth model.
The accuracy related with scaling the size of Eath has been corrected in the following simulation output. Now the LEO satellites are really at very low orbits.
The following is the actual source code used to simulate the above 3D scenario.
Caution :
It should be noted that the NetSimulyzer will not support simulating this kind of large 3D Network by default. To make it possible few changes were made on the original source code of the NetSimulyzer.
The technical information about those changes were not discussed in this article. This article is only show the possibility of 3D visualization of the very large LEO satellite network using ns-3 along with NetSimulyzer.
Conclusion
It is possible to visualize the simulated network in a better way by showing node connectivity (with lines), transmissions (with the expanding sphere). We may explore the possibilities of further 3D visualization functionalities of Satellite Networks using NetSimylyzer in another article..
ns-3-leo is a simple, fine extension for simulating leo satellite networks under ns-3. It is possible to run complex simulations for scholarly research work and get good, attractive analytical graphs for a research publication as explained in the following article:
Generating Genuine, Quality Tables & Graphs for Publication.
References :
- T. Schubert et al.: ns-3-leo: Evaluation Tool for Satellite Swarm Communication Protocols
- https://gitlab.ibr.cs.tu-bs.de/tschuber/ns-3-leo
- https://en.wikipedia.org/wiki/Satellite_internet_constellation
- https://github.com/usnistgov/NetSimulyzer-ns3-module
- https://github.com/usnistgov/NetSimulyzer
- https://www.esa.int/ESA_Multimedia/Images/2020/03/Low_Earth_orbit