A common problem in elastic optical networks is to study the behavior of different resources allocation algorithms, such as signal modulation formats or quality of service, in optical networks in dynamic scenarios where connections are assigned and released following different traffic profiles.To achieve this, one of the busiest tools is simulators. Normally each research group has its own simulator created entirely by them, which works on a particular simulation scenario, generating multiple versions of the same simulator. For this reason, this project aims to create a tool that allows focusing on the creation of algorithms, generating a common platform for simulation. We present a C ++ library that contains the most common modules belonging to an event-oriented simulator for flexible grid optical networks. This library allows researchers to worry about algorithm generation rather than maintaining/modifying a simulator. The final product is a library capable of being included in any program written in C ++, allowing the design of resource allocation algorithms through macros used in the same source file of the user that uses the library.
MotivationThe need for communications through the internet is being increasingly demanded [1]. In this context, today, it is common to speak of high-speed communications on computers and mobile devices. To make this possible, the infrastructure that supports these transmission rates must have the capacity demanded, which is naturally delivered by networks composed of fiber optics, known as optical networks [2].Optical networks comprise a set of nodes connected by another set of optical links. Optical links can carry information within a portion of the spectrum of light on the C-band [3]. They established communication between a pair of nodes using a specific wavelength within the C-band, which cannot be used at the same time by another pair of nodes on the same link. This last feature is called Wavelength Division Multiplexing (WDM) [4], where each wavelength is a communication channel. When a link does not connect a pair of nodes, they can communicate using a set of links that is known as a route. In addition, the communication established between each pair of nodes uses a specific modulation format [5].In the past, the bandwidth used by each connection in this type of network was fixed, typically 50 GHz [6]. This caused communications that demand little bandwidth to be sub-occupying the spectrum, wasting a big part of the spectrum. This is how, for example, a 10 Gbps communication that is modulated with a BPSK format and used 12.5 GHz, does not occupy all the assigned spectrum, leaving 37.5 GHz free (wasting) [7].It is in this context that elastic optical networks (EONs) appeared, which have a flexible spectrum of allocation [8]. Thus, the spectrum available on each link is divided into fundamental units typically called Frequency slot units