NS3-AI.

Introduction

This project is being worked on by Jose Saul Castillo Ipiña and Gabriel Aldair Villagrán Saucedo for the Machine Learning course, under Dr. Juan Carlos Cuevas Tello and Dr. Pedro David Arjona Villicaña as advisor, our main goal is to understand how the simulator works and how we can implement the AI algorithms using the ns3-ai module. ns-3 is an open source simulator which is very helpful for research and educational use in networking. Inside of ns-3 we can use a lot of modules such as ndnSIM, NetSimulyzer, ns3-gym, etc. For this project we are going to use the module ns3-ai that will help us to use AI algorithms in an easier way.

ns3-ai

ns3-ai is a module developed for the ns-3 simulator. It is an open source networking simulation tool implemented in C++ and python and is highly used for network research and education and in combination with ns3-ai provides a high-efficiency solution to enable the data interaction between ns-3 and other python based AI frameworks. Ns3 can be installed in different operating systems and it has different ways to do it, in this case I’m going to use Ubuntu 20.04 and the detailed installation guide step by step that I use to install ns-3 and ns3-ai can be found here:

https://github.com/GabrielVillagran/ns3-ai

The simulator provides us with environments for testing AI algorithms on most of all network layers by building simulation scenarios.

image

This image give us a brief information about the network layers based on OSI model, you can find more information about the OSI model (Network layers) on this link OSI Model Reference Chart (cisco.com)