Simulating Large Networks Under ns-3.
While doing research on a very large network scenario under ns-3, it will really consume LOT of time. For example, if you need to simulate an LTE network with 500eNB nodes and around 10 UE nodes per eNB then you have to face a lot of troubles. It will really test the capability of the LTE/EPC simulation module and ns-3.
If we need to simulate few seconds of such a large simulation, then, it will consume several hours or even several days on a computer with decent hardware. If you will be working on such a large network simulation, developing and testing the code(that may have a bug) then it will only show such errors after several hours or even days. This will really increase the project/code development time. Often we will stuck-up at somewhere because of the limitations of the simulator.
About the Simulation
This simple(?) simulation is based on the original LENA example script. For better visualization, we just added few lines in the original script to enable NetAnim logs and custom icons for eNB nodes and UE nodes. Even though the animation functionalities of LTE/EPC simulations are not fully supported by NetAnim, we can visualize this large network scenario using some basic, supported animation functionalities of NetAnim.
See the following 500 eNB node scenario. It was simulated only for 0.01 seconds – in fact, within this small time, the scenario will not even start any traffic- but this tiny 0.01-second simulation consumed several minutes (around 20 minutes) to end on my Intel Core i7 Laptop with 8Gb Ram – SSD+HDD hybrid Harddisk (this test scenario doesn’t contain any mobile nodes with X2 handover). Further NetAnim was able to open this large scenario only after several minutes (could not imagine playing it on NetAnim- just zooming the scenario itself consumed several minutes) – of course, we can skip the AnimationInterface part to minimize the simulation time. In addition to that, often we will stuck-up at somewhere because of the limitations of the simulator.
Experiment and Results
The following are some of the NetAnim outputs of a 500 eNB node scenario (with few UEs per eNB). I tried to simulate this very large network scenario only for 0.01 seconds – in fact, within this small time, the scenario will not even start any traffic or even the nodes will not be ready for active communication. But this tiny 0.01-second simulation itself consumed several minutes (around 20 minutes) to end on my Intel Core i7 Laptop with 8Gb Ram – SSD+HDD hybrid Harddisk. This test scenario doesn’t contain any mobile nodes with X2 handover – if we include mobility and handover, then it will again increase the simulation time to a considerable level). Further NetAnim was able to open this large scenario only after several minutes (I could not imagine playing it on NetAnim- just zooming the scenario itself consumed several minutes) – of course, we can skip the AnimationInterface part to minimize the simulation time.
Even NetAnim was able to open this large scenario only after several minutes (I could not imagine playing it on NetAnim- just zooming the scenario itself consumed several minutes) – So, as a lesson, we should avoid the Animation-Interface part to minimize the simulation time in large network scenario.
Visualizing the NetAnim Output at Different Zoom Levels.
The 500eNB LTE Network Scenario
While opening the scenario under the NetAnim, we can not even ‘see’ any individual eNB Node or UE node.
Zoom Level 1
Even after pressing the + (zoom) button a few times, we can not able to distinguish any individual eNB Node or UE node.
Zoom Level 2
After pressing the + (zoom) button few more times, we can able to distinguish eNB Nodes (and a portion of the network)
Zoom Level 3
After pressing the + (zoom) button few more times, we can able to see eNB Nodes as well as UE nodes (and a portion of the network)
Zoom Level 4
After pressing the + (zoom) button few more times, we can clearly able to see eNB Nodes and UE Nodes (and a portion of the network)
Conclusion
To run and get some screenshots of this large, 0.01-second empty simulation, it consumed more than 2 hours. As you know, large network simulations of ns-3 will consume several hours to end. In addition to that, if you wish to visualize such a large network scenario using NetAnim, then you have to enable AnimationInterface related code and it will increase the simulation time to a considerable level. Most importantly, animation and visualization of such a large network will not be practically possible with NetAnim. Even NetAnim will consume several minutes just to open the simulation in its animation window. So that, you can not really visualize the animation by playing it on any decent hardware. Most importantly, somewhere (google group?) it is mentioned that the handover process in a large network scenario may end up or crash because of some bugs/limitations of the presently available version of the LTE module. So, one should consider all these important aspects before starting specific research on a large network scenario.