Resource Planning and Provisioning
The Resource Orchestrator (RO) is in charge of the resource planning, it interprets and manage the incoming requests and forwards it to the appropriate Resource Manager on its same island. It interacts with the Monitoring System to provide measurements, statistics and resources provisioned per slice.
The Computing Resource Manager module (C-RM) allows to provision and manage VMs on different physical servers. It is based on the OFELIA Virtualisation Technology Aggregate Manager.
The Software-Defined Networking Resource Manager (SDN-RM) module allows an experimenter to request, update and delete OpenFlow resources. It is based on the OFELIA Software-Defined Aggregate Manager, which is in turn based on Stanford’s Opt-in Manager.
Monitoring System (MS) module aggregates and manages both monitoring and topology (slice and physical) information. This module also aims to provide a detailed representation of this data through its corresponding section in the Expedient GUI.
Inter-domain networking between SDN slices
The Transit Network Resource Manager (TN-RM) provides an inter-island connectivity using the Network Service Interface provisioning service. This service allows on reserving the point-to-point connectivity between the FELIX islands.
Stitching Entity Resource Manager (SE-RM) is a module that is in charge of interconnecting the external connection points with the local SDN island. In fact, this is ensured by the switching rules configuration (e.g. adding OpenFlow flows) on the switching device (Stitching Entity). The stitching concept has been introduced by the GENI (Global Environment for Network Innovations).
End User Tools and API
Expedient, the management GUI, offers functionalities to create and manage a new project (a container for slices or experiments) with slices and RMs attached to them. The Expedient users also have access to a history of their actions and system messages. They can manage user privileges over their projects and update/modify their own personal information, SSH keys, certificates etc.
The C-BAS (AAA) module helps keep consistency in the information and manages the permissions of the users, projects, slices, etc. It has a distributed architecture, i.e., there is a C-BAS module per island but all C-BAS modules exchange important information like, certificate revocation lists.
The public monitoring tool provides live status and general overview of the available infrastructure useful for administrators and experimenters. They can be noticed when something is wrong in the infrastructure (server down, unreachable switch, etc.) and latter they can know which resources are available for the experiment.
The latest source code is available on FELIX GitHub repository