Hello ns-3 community,
I am sharing an open-source simulation platform I built for 6G Non-Terrestrial Network (NTN) research. It integrates the mmWave and SNS3 satellite modules into a single
pre-configured ns-3.43 package that builds and runs out of the box.
What it solves:
Getting mmWave (5G-NR) and SNS3 satellite modules to work together on the same ns-3 build requires patching the LTE module for dual-connectivity APIs and fixing several header
incompatibilities between ns-3.42 and ns-3.43. This toolkit does that for you.
What is included:
- ns-3.43 with patched LTE module (dual-connectivity extensions: X2 PDCP/RLC, RRC connection switching, inter-RAT handover, McUeNetDevice)
- mmWave module integrated and building clean (NR numerology 2/3, EESM, SVD beamforming, HARQ, 16 examples)
- SNS3 satellite module support (SGP4 orbits, Starlink/Kuiper/Iridium TLE data, 72 spot beams, ISL routing)
- 3GPP TR 38.811 NTN propagation models (Dense Urban, Urban, Suburban, Rural) from ns-3.43 core
- A ready-to-run integrated example (scratch/ntn-tn-integrated-analysis.cc) that creates real mmWave packet-level simulation alongside LEO constellation orbital mechanics
Research contribution — NTN-CHO Framework (separate repo):
A novel TTE-aware Conditional Handover algorithm for LEO satellite networks implementing the 3GPP Rel-17 CHO state machine. It predicts beam coverage duration and selects handover targets that are both strong enough and stable long enough to complete the procedure. Includes pre-generated datasets comparing 4 algorithms, CesiumJS 3D visualization, and Python analysis tools for publication figures.
Repositories:
- Platform:
https://github.com/Muhammaduazir69/ns3-ntn-toolkit - CHO Research Module:
https://github.com/Muhammaduazir69/ntn-cho-framework Quick start:
git clone
https://github.com/Muhammaduazir69/ns3-ntn-toolkit.git cd ns3-ntn-toolkit/contrib
git clone
https://github.com/sns3/sns3-satellite.git satellite
git clone
https://github.com/Muhammaduazir69/ntn-cho-framework.git ntn-cho
cd ..
./ns3 configure --enable-examples
./ns3 build
./ns3 run "ntn-tn-integrated-analysis --algorithm=tte-aware --simTime=10"
Feedback, issues, and contributions are welcome.
Muhammad Uzair