How does the GNS3 work? Jeremy (creator of GNS3) explains the GNS3 architecture. Note: The Server component is also called the Compute Server or Compute.
GNS3 consists of four parts:
– the user interface or GUI (gns3-gui or gns3-web projects)
– the controller (gns3-server project)
– the compute server (part of the gns3-server project)
– the emulators (Qemu, Dynamips, VirtualBox…)
The controller pilots everything, it manages the state of each project. Only one controller should run.
The GUI displays a topology representing a project on a canvas and allow to perform actions on given project, sending API requests to the controller.
The compute controls emulators to run nodes. A compute that is on the same server as the controller is the same process.
The compute usually starts an emulator instance for each node.
GNS3 Architecture: https://gns3-server.readthedocs.io/en/latest/general.html