PySatSim is a dynamic system simulator for satellite Radio Resource Management (RRM) studies. It implements a geostationary multi-spot beam satellite scenario with a focus on FWD link modelling based on DVB-S2x. However, in contrast to e.g. SNS3, PySatSim is intended to be much faster enabling larger scale and longer simulations, with somewhat simplified assumptions in e.g. protocol modelling details.

Since SINR for a satellite link may be quite stable, lowering simulator time resolution has potential from simulator performance perspective. Furthermore, considering that the average SINR is mainly dependent on the set of active beams at a time and the position of the receiver, the mapping of SINR to MODCOD and further to throughput requires reliably simple capacity computation under e.g. DVB-S2X specification. By implementing a simulator to combine similar beam groups of a beam hopping plan together, the average SINR at the receiver remains accurate and average throughputs match with both low and high time resolutions. The focus of simulator is to focus on longer term radio resource management algorithms (e.g. beam hopping) rather than shorter term (e.g. scheduling, ACM).

PySatSim is based on a Python library of generic models meant to provide a platform for modeling any wireless link/network. The wireless channel model of the simulator is designed with co-existence of mutually interfering nodes in mind to be able to evaluate interference situation with overlapping channels. This has applications in evaluating technologies with frequency reuse, different technologies operating in the same frequency bands, or even inter-satellite interference. From simulator perspective, dynamically increasing the number of carriers is also an option for future studies.

To support SINR evaluation, the simulator has nodes with mobility and antenna models along with different propagation models and delays. To evaluate the capacity, the simulator has several traffic models and modulation and coding schemes from efficiency calculation perspective along with different types of physical layer schedulers. The upper protocol layers are designed to be lightweight in order to optimize simulator to run for long periods of time. The default scenario is the same as in SNS3, i.e. a GEO satellite over Europe with 72 spot beams with 4-color frequency re-use on forward link. The spot-beam pattern is illustrated in figure below.

The main differences between PySatSim and SNS3 are summarized in table below.


  1. L. Sormunen, R. U. Mondal, J. Puttonen and J. Kurjenniemi, “Flexible Simulation Framework for High Throughput Satellite System Radio Resource Management”, Ka and Broadband Communications Conference, Sorrento, Italy, September 30 – October 2, 2019.