Giter VIP home page Giter VIP logo

un-orchestrator's Introduction

Universal Node Repository Summary

This repository contains the current implementation of the Universal Node and is divided in different sub-modules. Please check individual README's in each subfolder.

An high-level overview of this software is given by the picture blow.

universal-node

Orchestrator

The Universal Node orchestrator (un-orchestrator) is the main component of the Universal Node (UN). It handles the orchestration of compute and network resources within a UN, hence managing the complete lifecycle of computing containers (e.g., VMs, Docker, DPDK processes) and networking primitives (e.g., OpenFlow rules, logical switching instances, etc).

In a nutshell, when it receives a new Network Functions Forwarding Graph (NF-FG) to be deployed, it does the following operations:

  • retrieve the most appropriate images for the selected virtual network functions (VNFs) through the VNF name resolver;
  • configure the virtual switch (vSwitch) to create a new logical switching instance (LSI) and the ports required to connect it to the VNFs to be deployed;
  • deploy and start the VNFs;
  • translate the rules to steer the traffic into OpenFlow flowmod messages to be sent to the vSwitch (some flowmod are sent to the new LSI, others to the LSI-0, i.e. an LSI that steers the traffic towards the proper graph.)

Similarly, the un-orchestrator takes care of updating or destroying a graph, when the proper messages are received.

Name Resolver

The Name Resolver is a module that returns a set of implementations for a given NF. It is exploited by the un-orchestrator each time that a NF must be started in order to translate the 'abstract' name (e.g., firewall) into the proper suitable software image (e.g., firewall_vmimage_abc).

Virtualizer

The Virtualizer is a module that enables the un-orchestrator to interact with the upper layers of the Unify architecture, by means of the NF-FG defined in UNIFY. It in fact converts that NF-FG in the native representation accepted by the un-orchestrator.

The virtualizer operates as operates as follows:

  • it receives the NFFG commands through its northbound interface, based on the virtualizer library defined in UNIFY that implements the official NF-FG specification;
  • converts those commands in the NFFG formalism natively supported by the un-orchestrator;
  • through its southbound API, sends the equivalent command to the un-orchestrator.

This module is only required to integrate the un-orchestrator with the upper layers of the Unify architecture. Instead, it is not needed when the un-orchestrator is controller through its native interface; in the case, the native NF-FG specification must be used.

NFs

This folder contains some examples of virtual network functions that are known to work on the UN.

Use-cases

This folder contains some running use-cases for the UN, including configuration files and VNFs.

un-orchestrator's People

Contributors

ivanocerrato avatar patricktomassone avatar snuccio avatar frisso avatar mauriciovasquezbernal avatar stefanopet91 avatar cicciob92 avatar gpz76 avatar stevenvanrossem avatar akoepsel avatar amedeosapio avatar msune avatar rbrtbnfgl avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.