level. There is a substantial paucity of such tools in the 
academic community. To the best of our knowledge, 
there are few existing system-level 5G simulators. 5G-
LENA (Patriciello, 2019), based on ns3
1
 is an evolu-
tion  of  the  LENA  simulator  (Baldo,  2011)  and  the 
mmWave simulation module from ns3. It is focused on 
the simulation of MAC and PHY layer of NR and pro-
vides tools for the evaluation of Bandwidth Parts man-
agement. However, it does not model dual-connectiv-
ity  scenarios  or  configurations  with  coexisting  LTE-
Advanced and 5G networks. There are also other 5G 
simulators,  notably  5GK-Simulator
2
,  Vienna  5G  SL 
simulator  (Müller  et al,  2018)  and  WiSE  (Jao  et al, 
2018). These model the MAC layer and the physical 
link  to  a  high  level of  fidelity,  so  that  users  can  test 
(e.g.)  new  transmission  and  decoding  schemes.  The 
purpose of a system-level simulator is fundamentally 
different, i.e.,  to  allow  the  testing of  end-to-end  ser-
vices and scenarios, possibly at a large scale, including 
layer-3,  layer-4,  and  application-layer  protocols  and 
logic. Some of the above tools do provide a system-
level  execution  mode,  which  allows  simulating  link-
level aspects on a large scale, by introducing simplifi-
cation in modelling while significantly increasing exe-
cution efficiency. However, none of them simulate ap-
plication packets flowing through the network. 
In this paper, we present Simu5G
3
, a new 5G sim-
ulator  based  on  the  well-known  SimuLTE  library 
(Virdis et al, 2014, 2015, 2019), used by industry and 
academia. Simu5G is based on the OMNeT++ simula-
tion framework, and  provides a collection of  models 
with well-defined interfaces, which can be instantiated 
and connected to build arbitrarily complex simulation 
scenarios.  Simu5G  incorporates  all  the  models  from 
the INET library, which allows one to simulate generic 
TCP/IP networks including 5G NR layer-2 interfaces. 
In particular, Simu5G simulates the data plane of the 
5G RAN (rel. 16) and core network. It allows simula-
tion of 5G communications in both Frequency Division 
Duplexing  (FDD)  and  Time  Division  Duplexing 
(TDD) modes, with heterogeneous gNBs (macro, mi-
cro, pico etc.), possibly communicating via the X2 in-
terface to support handover and inter-cell interference 
coordination. Dual connectivity between an eNB (LTE 
base station) and a gNB (5G NR base station) is also 
available.  3GPP-compliant  protocol  layers  are  pro-
vided, whereas the physical layer is modelled via real-
istic, customizable channel models. Resource schedul-
ing  in  both  uplink  and  downlink  directions  is  sup-
ported, with support for Carrier Aggregation and mul-
tiple numerologies, as specified by the 3GPP standard 
 
1
 https://www.nsnam.org/, last accessed April 2020. 
2
 http://5gopenplatform.org, last accessed on April 2020. 
(3GPP  TR  38.300,  TR  38.211).  Simu5G  supports  a 
large variety of models for mobility of UEs, including 
vehicular mobility.  
Simu5G allows one to code and test, for instance, 
resource  allocation  and  management  schemes  in  5G 
networks,  e.g.  selecting  which  UEs  to  target,  using 
which modulation scheme, etc., taking into account in-
ter-cell interference coordination, carrier selection, en-
ergy efficiency and so on. Moreover, it allows one to 
instantiate scenarios where a user application, running 
at the UE, communicates with a MEC application re-
siding at a MEC host (Nardini et al, 2018), to evaluate 
(e.g.) the round-trip latency of a new-generation ser-
vice,  inclusive  of  the  computation  time  at  the  MEC 
host. More to the point, Simu5G can run in real-time 
emulation  mode,  enabling  interaction  with  real  de-
vices. In fact, on one hand OMNeT++ allows real-time 
scheduling of events; on the other hand, the INET li-
brary allows can be configured so as to exchange IP 
packets  between  local  applications  or  network  inter-
faces and the simulator. These IP packets are processed 
by the simulator as if they were traversing the 5G cel-
lular network. The above two features concur to allow 
a user to run live networked applications having an em-
ulated 5G network in the middle, using the same code-
base for both simulations and live prototyping, which 
abates the developing time and makes results more re-
liable and easier to demonstrate. 
The rest of the paper is organized as follows. Sec-
tion 2 briefly reviews the OMNeT++ framework and 
the SimuLTE library. Section 3 describes Simu5G. Its 
validation is described in Section 4, whereas Section 5 
shows profiling results and the performance evaluation 
of two exemplary simulation scenarios. Section 6 con-
cludes the paper and outlines future work.  
2  BACKGROUND 
This section  introduces basic  notions  of  cellular net-
works,  then  it  describes  the  OMNeT++  simulation 
framework and the INET library, and finally the Sim-
uLTE library, on which Simu5G is built.  
2.1  An Overview of Cellular Networks 
In  this  section  we  provide  enough  background  for  a 
reader to understand the modelling concepts described 
in the rest of this paper. The basic concepts underlying 
are common to both 4G (LTE) and 5G (NR) cellular 
networks, as standardized by the 3GPP. For this rea- 
 
3
 http://simu5g.org/, last accessed on April 2020.