SlideShare ist ein Scribd-Unternehmen logo
1 von 57
www.opennaas.orghttp://www.opennaas.org/
Overview
Pau Minoves, September 2012
Objective
• A software project, that feeds from research.
– Enable long-term research to happen on top of it.
• And leverage past research and assets.
• Create a community that allows several stakeholders to
contribute and benefit from a common NaaS software
stack.
• Open Source, Open community.
– Solid base functionality that can be used on a production
environement.
• Users increase life span.
• Faster research output adoption.
THE COMMUNITY
3
www.opennaas.org
• All pointers to
relevant
information and
news at our
homepage.
• You are
welcome to the
mailing list!
4
Open forge
• Code, both stable
and development
branches available
online.
• One-click fork.
Open forge
• All code
contributions
(internal and
external) are
queued for public
review and
discussion.
6
Developer tools
• Continuous
build system
is available
online.
7
get & compile & install
• Built it from scratch:
8
$ git clone git://github.com/dana-i2cat/opennaas.git
$ cd opennaas
$ git checkout develop # optional
$ mvn install
$ cd opennaas
$ mvn clean
$ git pull git://github.com/dana-i2cat/opennaas.git
$ mvn install
$ cp –r platform/target/opennaas-0.10 /srv
$ cd /srv/opennaas-0.10
$ ./bin/opennaas.sh
• Update from source:
• Run it:
Fetch code
Fetch unstable
Built it
Clean past built
Fetch updates
Built it
Enjoy!
Distribution Overview
9
• OSGi
– List, start, stop
– --help
• Features.
• Configuration.
THE APPROACH
10
OpenNaaS Key Requirements
• On demand (commonly user-triggered) provisioning of
network resources.
• Recursive delegation of access right over managed resources.
• Lightweight Abstracted operational model.
– Decoupled from actual vendor-specific details.
– Flexible enough to accomodate diferent designs and orientations
– Fixed enough so common tools can be build and reused across
plugins.
• Security.
• Lifecycle.
• Monitoring.
• Deployment and upgrade.
• Service orchestration.
OpenNaaS Stakeholders
• Network Operators
with an interest on
NaaS:
– NREN.
– Cloud Datacenter.
– New services for ISP’s.
• ISV and integrators
– middleware-network
orchestration.
• Developers and
network researchers.
FUSE ServiceMix
Platform
Extensions
Third Party plugins
OTSdistribution
OpenNaaS Platform
• For developers and researchers:
– Modern IDEs available
– Maven based build system and
dependency management
– Plugin howto documentation
– Several available open source
plugins as reference
– An open OpenNaaS community
– Comercial support for underlying
technologies
• Leverage building blocks, both using
existing resources or for creating
new ones.
– Resource Respository and Manager
– Protocol Session Manager
– Standard Capabilities
– Protocol Endpoints for remoting
(SOAP, REST, etc).
– Platform manager
– *.apache.org deployment ready
libraries.
• While plugins can chose to use
technologies like hibernate, spring or
ESB, they don’t have to.
NETWORK INTELIGENCE
See Mantychore FP7 use cases
THE TOOL
NaaS Lightweight Abstraction
Capability
Resource
RPC
Platform
CLI
Persistence
Queue
Resource
Manager
. . .
Security
Protocol Session Manager
Resource Lifecycle
Resource Layer
RouterResource
NetworkResource
BoDResource
OpticalSwitch
Resource
...
Remoting
Scripting
GUI
OpenNebula
OpenStackNS
NSA(NSI)
...
3P
Extensions
3P
Middleware
OpenNaaS Architecture
Network Intelligence
• Integration with Northbound
Middleware
• IaaS/Cloud managers
• Other NMS.
• The user
NaaS Layer
• Network HAL abstraction to
infrastructure.
• Resources manageable by the user.
• Access controlled by the Sec.
Manager.
Platform
• Reusable building blocks, common to
all extensions.
• Controls access to the infrastructure.
• Integrity, Policy, etc..
Managed infrastructure
BoD
OpenNaaS Platform Base Components
• ResourceManager.
– Manages the persistence and lifecycle of Resources.
– There is a ResourceManager repository implementation for
each ResourceType.
• Which acts as a Factory for that type.
– Implements also Profiles, we’ll see that later.
– Which brings us to the NaaS abstraction reusable concepts;
• Resource
• Resource Type
• Capability
• Action
• ActionSet
• Profile
OpenNaaS Platform Base Components
• Reusable concepts:
– A Resource represents a manageable unit inside the NaaS
concept.
• A Resource can be a switch, a router, a link, a logical router, a
network, etc…
– Instantiations of a Resource Type.
• Resources share a simple lifecycle:
– Initialized, loaded in memory.
– Active, accepts calls.
Capability
Resource
RPC
Router
OpenNaaS Platform Base Components
• Reusable concepts:
– A Resource represents a
manageable unit inside the NaaS
concept.
• A Resource is decomposed in:
– A model
– An array of Capabilities.
• The ResourceType defines:
– The model.
– Which Capabilities are allowed.
• Which Capabilities are actually
callable will depend on that actual
Resource instance.
» The Resource can be
interrogated.
Capabil
Resourc
RPC
Router
Chassis
GRE
OSPF
OpenNaaS Platform Base Components
• Reusable concepts:
– A Capability is an interface to a given
Resource functionality.
• I.e. for a router:
– OSPF, IPv6, Create/manage logical routers,
etc.
• Callable by the user.
– This interface is, as the Model,
abstracted and vendor neutral.
– Internally the Capability, is
implemented for each kind of device.
• Hence, some capabilities might not be
available for some vendors.
– The Capability is the HAL limit for
OpenNaaS.
Capabil
Resourc
RPC
Router
Chassis
GRE
OSPF
OpenNaaS Platform Base Components
• Internally, Capabilities need a way to
abstract implementation details of the
devices.
– They use Actions.
• An Action is a vendor (and protocol)
specific implementation of a
configuration modification.
– It can be Queue’d.
– It can be undone (rollback).
• Actions are grouped into an ActionSet.
• On Action.execute(), the action usually
asks to the ProtocolSessionManager
for an appropriate ProtocolSession to
communicate with the device.
Capabil
Resourc
RPC
OpenNaaS Platform Base Components
• An Action can be implemented
from scratch:
– Just fill the execute() method with
some code.
• Or reused from some adaptors
we have.
– Most importantly, netconf actions
are very XML-intensive.
– They use a digester rule set for
XML processing
– And Velocity for XML creation.
Capabil
Resourc
RPC
OpenNaaS Platform Base Components
• A Profile is an alternative set of
ActionSets.
• They can be deployed at runtime to
the container.
• On creation time, a Profile can be
specified for a given Resource.
• When looking for an Action to execute
(or queue), Capabilities will first check
the Profile for an alternative Action.
– If found, it will be executed instead of
the default one.
• This is a mechanism for OpenNaaS
administrators to modify behaviour of
default capabilities.
Capabil
Resourc
RPC
OpenNaaS Platform Base Components
• The QueueManager is used to
stack all Actions to be executed.
– All modifications can be done over
the network at once.
– Allows rollback of Actions.
– Objective: the network-wide
rollback of actions.
– It is both a Capability and a OSGI
Service.
• The user can check and manipulate
the Queue as a Capability.
• The rest of Capabilities can work
with it via the OSGi registry.
– Saves a lot of serialization.
Capabil
Resourc
RPC
PLATFORM
Fuse ServiceMix
• Standards based
• Open Source
• State of the art technologies
– OSGi, Java 6, Apache SF, Scala, etc
– Roll your own
• Componetized compilation of Apache library.
• Documented
• Comercial support.
• Portable
– Linux, Windows, Mac.
• Not always the latest library versions…
Platform
• Based on a component container:
– OSGi R4 (Apache Felix’s implementation)
• Mainly, this allows:
– The application is split components, and they are:
• Started and stopped at runtime.
– Which can be explored and manipulated via the CLI
– Which can be handled programmatically (via events, RPC, etc).
• Installed and updated from a (remote) repository.
– Components are isolated from each other.
• Classes from a bundle cannot import from other bundles.
• Unless explicitly allowed to.
• There is a service publication/consumption registry.
• On OSGi, these components are called bundles.
– A bundle is a jar + some special lines on the MANIFEST.
– Features.xml allow to specify a version of the platform + an initial set
bundles.
Component Architecture
Operating System
Java 6 VM
OSGi Container
OSGi
FUSE
NaaS
NaaS
Plug-in
FUSE
NaaS
NaaS
Plug-in
Plug-in
FUSE
NaaS
Plug-in
Plug-in
Plug-in
Bundles
OSGiDistrib.
Exported functionality
Deploy, Upgrade, Monitor, etc
Modern IDE, Remote debug, etc
Unix, Linux, MacOS, Windows, etc
Bundle lifecycle
OpenNaaS Platform
• Embeddable and interoperable.
– Component of a bigger middleware
• i.e. a cloud management infrastructure.
– L-GPLv3 for the platform.
• Foundation of the NaaS layer.
• Reusable concepts across plugins
– Resource, Capability, Action, Lifecycle.
– A command toolset and remoting layer is built around this
concepts.
– Etc
• Shared but defined roadmap.
OpenNaaS Platform Base Components
• Leverage building blocks:
– Resource Respository and Manager
• Handles lifecycle and persistence.
– Protocol Session Manager
• Mantains protocol session lifecycle, with an eye on session reusability.
• Additional protocols can be added
– Standard Capabilities
• Queue (for configuration deployment).
– Protocol Endpoints for remoting (SOAP, REST, etc).
– Platform manager
– *.apache.org deployment ready libraries.
• While plugins can chose to use technologies like hibernate, spring or ESB,
they don’t have to.
OpenNaaS Platform Base Components
• Protocol Session Manager
– Implements the ProtocolSession abstraction
• Currently we have these implementations:
– Netconf (IRTF).
– Onesys (EMS Module).
– CLI (Telnet, SSH).
– TL1 (TCP, SSL).
– Manages ProtocolSession lifecycle.
• Performs pooling, if possible.
• Reuses sessions (keeps them alive for some minutes).
• ProtocolSession events.
– Isolates ProtocolSession usage from credentials.
• Loads and pairs ProtocolSessionContexts with appropiate device.
• transport://user:password@ip:port/subsystem
Transactional Queue
35
Network
Queue
Router
Queue
Router
Queue
Router
Queue
Client begin
Write candidate
Configuration
and validate
Write candidate
Configuration
and validate
Write candidate
Configuration
and validate
Transactional Queue
36
Network
Queue
Router
Queue
Router
Queue
Router
Queue
Client begin
Activate new
configuration
Activate new
configuration
Activate new
configuration
Ok
commit
Ok
Transactional Queue
37
Network
Queue
Router
Queue
Router
Queue
Router
Queue
Client begin
Discard changes,
load previous conf
if necessary
Discard changes,
load previous conf
if necessary
Discard changes,
load previous conf
if necessary
Fail!
SAMPLE WORKFLOW
workflow
Client
Router
Queue
OSPFospf.activate(…)
Queue.addAction( OSPFAction.ACTIVATE, …)
> resource:list
> ospf:activate router:A …
GET http://opennaas/resourceManager/list
resources {
router [ “A”, “B” ]
}
GET http://opennaas/router/A/ospf
activated = false
POST http://opennaas/router/A/ospf/activate
ospfservice {
running.mospf = true.
area { … }
}
200 OK
workflow
Client
Router
Queue
OSPFqueue.list()
> queue:list router:A
…
GET http://opennaas/router/A/queue
queue [ OSPFAction.ACTIVATE ]
Actions[]
workflow
Client
Router
Queue
OSPFqueue.execute()
> queue:execute router:A
POST http://opennaas/router/A/queue/execute
timeout = 0
200 OK
workflow
Client
Router
Queue
OSPFqueue.execute()
> queue:execute router:A
POST http://opennaas/router/A/queue/execute
timeout = 0
200 OK
getConnection( router:A, “netconf”);
workflow
Client
Router
Queue
OSPFqueue.execute() Execute Action
User
Params
<configuration>
#set($logicalRouter = "false")
#if(!$elementName.equals(""))
#set($logicalRouter = "true")
#end
#if($logicalRouter.equals("true"))
<logical-systems>
<name>$elementName</name>
#end
<protocols>
<ospf>
#foreach($ospfAreaConfig in $param.getOSPFAreaConfiguration())
#set($ospfArea = $ospfAreaConfig.getOSPFArea())
<area>
<name>$ipUtilsHelper.ipv4LongToString($ospfArea.getAreaID())</name>
#foreach($ospfPep in $ospfArea.getEndpointsInArea())
##replace the content on interface with given name
<interface operation="replace">
<name>$ospfPep.getName()</name>
##ENABLED/DISABLED
#if($ospfPep.getEnabledState().toString().equals($disabledState))
<disable/>
#end
</interface>
#end
</area>
#end
</ospf>
</protocols>
#if($logicalRouter.equals("true"))
</logical-systems>
#end
</configuration>
workflow
Client
Router
Queue
OSPFospf.getConfiguration() Parse new
configuration into
the model
> queue:execute router:A
OK
>
POST http://opennaas/router/A/queue/execute
timeout = 0
200 OK
GET http://opennaas/router/A/ospf/info
ospfservice {
running.mospf = true.
area { … }
}
EXTENSIONS
NaaS Lightweight Abstraction
Capability
Resource
RPC
Router
47
OSPF
• activate
• deactivate
• configure
• getConfiguration
• configureArea
• addInterfaces
• ....
IPV4
• setipv4
• setInterfaceDescrip
Chassis
• upPhysicInterface
• downPhysicInterface
• createSubInterface
• setEncapsulation
• createLogicalRouter
• addInterfacesToLR
• ....
GRE Tunnel
• createGRETunnel
• deleteGRETunnel
• showGRETunnelConf
Static Route
• createStaticRoute
• removeStaticRoute
BoD
48
L2BOD
• requestConnection
• shutDownConnection
Network
49
Basic Network
• addResource
• removeResource
• L2attach
• l2detach
Net OSPF
• activateOSPF
• deactivateOSPF
ROADM
50
Connections
• makeConnection
• removeConnection
Monitoring
• clearAlarms
• getAlarms
MACBridge
51
VLAN Aware Bridge
• createVLANConfiguration
• deleteVLANConfiguration
• addStaticVLANRegistration
• deleteStaticVLANRegistration
ROADMAP
Roadmap
• Extensions and platform upgrades are performed according to:
– Research projects
– Internal initiatives from i2CAT
– Initiatives from third party extensions
– Privately funded projects from industry
• The roadmap is open to discussion on the usual project forums
(i.e. mailing lists).
Extensions Roadmap
Done Current Short-term (<6m) Mid-Term (>6m)
L1 ROADM
L2 BoD Domain client
• AutoBAHN
BoD Domain Server
• Porting Harmony IDB
BoD Domain Server
• NSI interface.
L2 / L3 Router
L3 Network
Manager GUI
Security Manager
• SAML Idp
Cloud Manager
connectors
• OpenStack NetworkS
ervice drop-in
replacement
• OpenNebula 3.0
• Energy consumption
metrics.
• Infrastructure
Marketplace.
OpenFlow Controller
Extensions Roadmap by Project
2012 2013 2014 2015 2016
Mantychore UC1 UC2
NOVI SFA Adapter
GEYSERS MAC Bridge
CONTENT
OFERTIE
SODALES
GN3+
Wifi/TDM Resources
OpenFlow SLA Manager
Wifi/TDM Orchestrator
ARN Resource
GN3
Third Party Extensions
• Mantychore extensions are ASLv2, so they can be
used as foundation for additional extensions
– Additional extensions can have any license.
• New extensions can have any license.
• Possibility to be hosted on private repositories.
– And both be installed with a platform well-known
command
• feature:install http://net.biz/3rd.party.feature
• Can leverage both platform functionality and
default extensions.
BACKUP
57

Weitere ähnliche Inhalte

Was ist angesagt?

Data Models and Consumer Idioms Using Apache Kafka for Continuous Data Stream...
Data Models and Consumer Idioms Using Apache Kafka for Continuous Data Stream...Data Models and Consumer Idioms Using Apache Kafka for Continuous Data Stream...
Data Models and Consumer Idioms Using Apache Kafka for Continuous Data Stream...
Erik Onnen
 
Search onhadoopsfhug081413
Search onhadoopsfhug081413Search onhadoopsfhug081413
Search onhadoopsfhug081413
gregchanan
 
What's New in OpenLDAP
What's New in OpenLDAPWhat's New in OpenLDAP
What's New in OpenLDAP
LDAPCon
 

Was ist angesagt? (20)

Developing Real-Time Data Pipelines with Apache Kafka
Developing Real-Time Data Pipelines with Apache KafkaDeveloping Real-Time Data Pipelines with Apache Kafka
Developing Real-Time Data Pipelines with Apache Kafka
 
A la rencontre de Kafka, le log distribué par Florian GARCIA
A la rencontre de Kafka, le log distribué par Florian GARCIAA la rencontre de Kafka, le log distribué par Florian GARCIA
A la rencontre de Kafka, le log distribué par Florian GARCIA
 
Fundamentals of Apache Kafka
Fundamentals of Apache KafkaFundamentals of Apache Kafka
Fundamentals of Apache Kafka
 
Introducing Kafka-on-Pulsar: bring native Kafka protocol support to Apache Pu...
Introducing Kafka-on-Pulsar: bring native Kafka protocol support to Apache Pu...Introducing Kafka-on-Pulsar: bring native Kafka protocol support to Apache Pu...
Introducing Kafka-on-Pulsar: bring native Kafka protocol support to Apache Pu...
 
Data Models and Consumer Idioms Using Apache Kafka for Continuous Data Stream...
Data Models and Consumer Idioms Using Apache Kafka for Continuous Data Stream...Data Models and Consumer Idioms Using Apache Kafka for Continuous Data Stream...
Data Models and Consumer Idioms Using Apache Kafka for Continuous Data Stream...
 
Fabric8 mq
Fabric8 mqFabric8 mq
Fabric8 mq
 
Managing enterprise users in Hadoop ecosystem
Managing enterprise users in Hadoop ecosystemManaging enterprise users in Hadoop ecosystem
Managing enterprise users in Hadoop ecosystem
 
Apache Con 2021 : Apache Bookkeeper Key Value Store and use cases
Apache Con 2021 : Apache Bookkeeper Key Value Store and use casesApache Con 2021 : Apache Bookkeeper Key Value Store and use cases
Apache Con 2021 : Apache Bookkeeper Key Value Store and use cases
 
Introducing HerdDB - a distributed JVM embeddable database built upon Apache ...
Introducing HerdDB - a distributed JVM embeddable database built upon Apache ...Introducing HerdDB - a distributed JVM embeddable database built upon Apache ...
Introducing HerdDB - a distributed JVM embeddable database built upon Apache ...
 
Hive2.0 sql speed-scale--hadoop-summit-dublin-apr-2016
Hive2.0 sql speed-scale--hadoop-summit-dublin-apr-2016Hive2.0 sql speed-scale--hadoop-summit-dublin-apr-2016
Hive2.0 sql speed-scale--hadoop-summit-dublin-apr-2016
 
DrupalCampLA 2014 - Drupal backend performance and scalability
DrupalCampLA 2014 - Drupal backend performance and scalabilityDrupalCampLA 2014 - Drupal backend performance and scalability
DrupalCampLA 2014 - Drupal backend performance and scalability
 
Dfs in iaa_s
Dfs in iaa_sDfs in iaa_s
Dfs in iaa_s
 
Pulsar Summit Asia - Structured Data Stream with Apache Pulsar
Pulsar Summit Asia - Structured Data Stream with Apache PulsarPulsar Summit Asia - Structured Data Stream with Apache Pulsar
Pulsar Summit Asia - Structured Data Stream with Apache Pulsar
 
Apache Pulsar First Overview
Apache PulsarFirst OverviewApache PulsarFirst Overview
Apache Pulsar First Overview
 
Modern Distributed Messaging and RPC
Modern Distributed Messaging and RPCModern Distributed Messaging and RPC
Modern Distributed Messaging and RPC
 
Using Apache Spark with IBM SPSS Modeler
Using Apache Spark with IBM SPSS ModelerUsing Apache Spark with IBM SPSS Modeler
Using Apache Spark with IBM SPSS Modeler
 
Best Practices for Enterprise Continuous Delivery of Oracle Fusion Middlewa...
Best Practices for Enterprise Continuous Delivery of Oracle Fusion Middlewa...Best Practices for Enterprise Continuous Delivery of Oracle Fusion Middlewa...
Best Practices for Enterprise Continuous Delivery of Oracle Fusion Middlewa...
 
Search onhadoopsfhug081413
Search onhadoopsfhug081413Search onhadoopsfhug081413
Search onhadoopsfhug081413
 
What's New in OpenLDAP
What's New in OpenLDAPWhat's New in OpenLDAP
What's New in OpenLDAP
 
How Pulsar Stores Your Data - Pulsar Summit NA 2021
How Pulsar Stores Your Data - Pulsar Summit NA 2021How Pulsar Stores Your Data - Pulsar Summit NA 2021
How Pulsar Stores Your Data - Pulsar Summit NA 2021
 

Andere mochten auch

Chosen cover girl images based on planned sketches
Chosen cover girl images based on planned sketchesChosen cover girl images based on planned sketches
Chosen cover girl images based on planned sketches
samanthaking95
 
Tutorial Youtube: 06 Mengedit Video via Youtube Editor
Tutorial Youtube: 06 Mengedit Video via Youtube EditorTutorial Youtube: 06 Mengedit Video via Youtube Editor
Tutorial Youtube: 06 Mengedit Video via Youtube Editor
Vega Aminkusumo
 
My survey results
My survey resultsMy survey results
My survey results
samanthaking95
 
Tutorial Youtube: 07 Membuat Slideshow
Tutorial Youtube: 07 Membuat Slideshow Tutorial Youtube: 07 Membuat Slideshow
Tutorial Youtube: 07 Membuat Slideshow
Vega Aminkusumo
 
Who would be the audience for your product?
Who would be the audience for your product?Who would be the audience for your product?
Who would be the audience for your product?
samanthaking95
 
Sprinboard Community Startup Guide
Sprinboard Community Startup GuideSprinboard Community Startup Guide
Sprinboard Community Startup Guide
Heather Cato
 
Tutorial Youtube: 04 Mengunggah Video
Tutorial Youtube: 04 Mengunggah VideoTutorial Youtube: 04 Mengunggah Video
Tutorial Youtube: 04 Mengunggah Video
Vega Aminkusumo
 
In what ways does your media product use, develop or challenge forms and conv...
In what ways does your media product use, develop or challenge forms and conv...In what ways does your media product use, develop or challenge forms and conv...
In what ways does your media product use, develop or challenge forms and conv...
samanthaking95
 

Andere mochten auch (20)

Happy Family: istruzioni per l'uso
Happy Family: istruzioni per l'usoHappy Family: istruzioni per l'uso
Happy Family: istruzioni per l'uso
 
Chosen cover girl images based on planned sketches
Chosen cover girl images based on planned sketchesChosen cover girl images based on planned sketches
Chosen cover girl images based on planned sketches
 
Tutorial Youtube: 06 Mengedit Video via Youtube Editor
Tutorial Youtube: 06 Mengedit Video via Youtube EditorTutorial Youtube: 06 Mengedit Video via Youtube Editor
Tutorial Youtube: 06 Mengedit Video via Youtube Editor
 
Tutorial Youtube: 08 Menampilkan Channel Trailer
 Tutorial Youtube: 08 Menampilkan Channel Trailer Tutorial Youtube: 08 Menampilkan Channel Trailer
Tutorial Youtube: 08 Menampilkan Channel Trailer
 
A Call to Spiritual Reformation Chapter 1
A Call to Spiritual Reformation Chapter 1A Call to Spiritual Reformation Chapter 1
A Call to Spiritual Reformation Chapter 1
 
Livet pĂĄ marginen - om utvikling og marginalisering i Bengal
Livet pĂĄ marginen - om utvikling og marginalisering i BengalLivet pĂĄ marginen - om utvikling og marginalisering i Bengal
Livet pĂĄ marginen - om utvikling og marginalisering i Bengal
 
Presentazione App Brian's Travels
Presentazione App Brian's TravelsPresentazione App Brian's Travels
Presentazione App Brian's Travels
 
My survey results
My survey resultsMy survey results
My survey results
 
Tutorial Youtube: 07 Membuat Slideshow
Tutorial Youtube: 07 Membuat Slideshow Tutorial Youtube: 07 Membuat Slideshow
Tutorial Youtube: 07 Membuat Slideshow
 
11 Tips Melangsingkan Tubuh Secara Alami
11 Tips Melangsingkan Tubuh Secara Alami11 Tips Melangsingkan Tubuh Secara Alami
11 Tips Melangsingkan Tubuh Secara Alami
 
Who would be the audience for your product?
Who would be the audience for your product?Who would be the audience for your product?
Who would be the audience for your product?
 
Sprinboard Community Startup Guide
Sprinboard Community Startup GuideSprinboard Community Startup Guide
Sprinboard Community Startup Guide
 
Tutorial Youtube: 04 Mengunggah Video
Tutorial Youtube: 04 Mengunggah VideoTutorial Youtube: 04 Mengunggah Video
Tutorial Youtube: 04 Mengunggah Video
 
E commerce untuk ukm
E commerce untuk ukmE commerce untuk ukm
E commerce untuk ukm
 
Vann til alle - Peruviansk tegneserie
Vann til alle - Peruviansk tegneserieVann til alle - Peruviansk tegneserie
Vann til alle - Peruviansk tegneserie
 
In what ways does your media product use, develop or challenge forms and conv...
In what ways does your media product use, develop or challenge forms and conv...In what ways does your media product use, develop or challenge forms and conv...
In what ways does your media product use, develop or challenge forms and conv...
 
5213
52135213
5213
 
Sudah Olah Raga Tapi Masih Gemuk?
Sudah Olah Raga Tapi Masih Gemuk?Sudah Olah Raga Tapi Masih Gemuk?
Sudah Olah Raga Tapi Masih Gemuk?
 
Menurunkan Berat Badan, Nutrishake Step By Step
Menurunkan Berat Badan, Nutrishake Step By StepMenurunkan Berat Badan, Nutrishake Step By Step
Menurunkan Berat Badan, Nutrishake Step By Step
 
Den glemte vannkrisa fivas og for um brosjyre_2009
Den glemte vannkrisa fivas og for um brosjyre_2009Den glemte vannkrisa fivas og for um brosjyre_2009
Den glemte vannkrisa fivas og for um brosjyre_2009
 

Ă„hnlich wie OpenNaaS Overview Complete

Accumulo Summit 2015: Real-Time Distributed and Reactive Systems with Apache ...
Accumulo Summit 2015: Real-Time Distributed and Reactive Systems with Apache ...Accumulo Summit 2015: Real-Time Distributed and Reactive Systems with Apache ...
Accumulo Summit 2015: Real-Time Distributed and Reactive Systems with Apache ...
Accumulo Summit
 

Ă„hnlich wie OpenNaaS Overview Complete (20)

Sanger, upcoming Openstack for Bio-informaticians
Sanger, upcoming Openstack for Bio-informaticiansSanger, upcoming Openstack for Bio-informaticians
Sanger, upcoming Openstack for Bio-informaticians
 
Flexible compute
Flexible computeFlexible compute
Flexible compute
 
Openstack - An introduction/Installation - Presented at Dr Dobb's conference...
 Openstack - An introduction/Installation - Presented at Dr Dobb's conference... Openstack - An introduction/Installation - Presented at Dr Dobb's conference...
Openstack - An introduction/Installation - Presented at Dr Dobb's conference...
 
IPMI is dead, Long live Redfish
IPMI is dead, Long live RedfishIPMI is dead, Long live Redfish
IPMI is dead, Long live Redfish
 
Tips Tricks and Tactics with Cells and Scaling OpenStack - May, 2015
Tips Tricks and Tactics with Cells and Scaling OpenStack - May, 2015Tips Tricks and Tactics with Cells and Scaling OpenStack - May, 2015
Tips Tricks and Tactics with Cells and Scaling OpenStack - May, 2015
 
Introduction to Apache Mesos and DC/OS
Introduction to Apache Mesos and DC/OSIntroduction to Apache Mesos and DC/OS
Introduction to Apache Mesos and DC/OS
 
OpenNaas overview
OpenNaas overviewOpenNaas overview
OpenNaas overview
 
HPC and cloud distributed computing, as a journey
HPC and cloud distributed computing, as a journeyHPC and cloud distributed computing, as a journey
HPC and cloud distributed computing, as a journey
 
Introduction to Kafka and Zookeeper
Introduction to Kafka and ZookeeperIntroduction to Kafka and Zookeeper
Introduction to Kafka and Zookeeper
 
Openstack – An introduction
Openstack – An introductionOpenstack – An introduction
Openstack – An introduction
 
OpenHPC: A Comprehensive System Software Stack
OpenHPC: A Comprehensive System Software StackOpenHPC: A Comprehensive System Software Stack
OpenHPC: A Comprehensive System Software Stack
 
GCE11 Apache Rave Presentation
GCE11 Apache Rave PresentationGCE11 Apache Rave Presentation
GCE11 Apache Rave Presentation
 
Real-Time Distributed and Reactive Systems with Apache Kafka and Apache Accumulo
Real-Time Distributed and Reactive Systems with Apache Kafka and Apache AccumuloReal-Time Distributed and Reactive Systems with Apache Kafka and Apache Accumulo
Real-Time Distributed and Reactive Systems with Apache Kafka and Apache Accumulo
 
Accumulo Summit 2015: Real-Time Distributed and Reactive Systems with Apache ...
Accumulo Summit 2015: Real-Time Distributed and Reactive Systems with Apache ...Accumulo Summit 2015: Real-Time Distributed and Reactive Systems with Apache ...
Accumulo Summit 2015: Real-Time Distributed and Reactive Systems with Apache ...
 
Apereo OAE - Bootcamp
Apereo OAE - BootcampApereo OAE - Bootcamp
Apereo OAE - Bootcamp
 
Benefits of disaggregation and open source networking in data centers
Benefits of disaggregation and open source networking in data centersBenefits of disaggregation and open source networking in data centers
Benefits of disaggregation and open source networking in data centers
 
OpenStack London Meetup, 18 Nov 2015
OpenStack London Meetup, 18 Nov 2015OpenStack London Meetup, 18 Nov 2015
OpenStack London Meetup, 18 Nov 2015
 
spack_hpc.pptx
spack_hpc.pptxspack_hpc.pptx
spack_hpc.pptx
 
Top 10 dev ops tools (1)
Top 10 dev ops tools (1)Top 10 dev ops tools (1)
Top 10 dev ops tools (1)
 
OpenStack 101
OpenStack 101OpenStack 101
OpenStack 101
 

KĂĽrzlich hochgeladen

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

KĂĽrzlich hochgeladen (20)

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 

OpenNaaS Overview Complete

  • 2. Objective • A software project, that feeds from research. – Enable long-term research to happen on top of it. • And leverage past research and assets. • Create a community that allows several stakeholders to contribute and benefit from a common NaaS software stack. • Open Source, Open community. – Solid base functionality that can be used on a production environement. • Users increase life span. • Faster research output adoption.
  • 4. www.opennaas.org • All pointers to relevant information and news at our homepage. • You are welcome to the mailing list! 4
  • 5. Open forge • Code, both stable and development branches available online. • One-click fork.
  • 6. Open forge • All code contributions (internal and external) are queued for public review and discussion. 6
  • 7. Developer tools • Continuous build system is available online. 7
  • 8. get & compile & install • Built it from scratch: 8 $ git clone git://github.com/dana-i2cat/opennaas.git $ cd opennaas $ git checkout develop # optional $ mvn install $ cd opennaas $ mvn clean $ git pull git://github.com/dana-i2cat/opennaas.git $ mvn install $ cp –r platform/target/opennaas-0.10 /srv $ cd /srv/opennaas-0.10 $ ./bin/opennaas.sh • Update from source: • Run it: Fetch code Fetch unstable Built it Clean past built Fetch updates Built it Enjoy!
  • 9. Distribution Overview 9 • OSGi – List, start, stop – --help • Features. • Configuration.
  • 11. OpenNaaS Key Requirements • On demand (commonly user-triggered) provisioning of network resources. • Recursive delegation of access right over managed resources. • Lightweight Abstracted operational model. – Decoupled from actual vendor-specific details. – Flexible enough to accomodate diferent designs and orientations – Fixed enough so common tools can be build and reused across plugins. • Security. • Lifecycle. • Monitoring. • Deployment and upgrade. • Service orchestration.
  • 12. OpenNaaS Stakeholders • Network Operators with an interest on NaaS: – NREN. – Cloud Datacenter. – New services for ISP’s. • ISV and integrators – middleware-network orchestration. • Developers and network researchers. FUSE ServiceMix Platform Extensions Third Party plugins OTSdistribution
  • 13. OpenNaaS Platform • For developers and researchers: – Modern IDEs available – Maven based build system and dependency management – Plugin howto documentation – Several available open source plugins as reference – An open OpenNaaS community – Comercial support for underlying technologies • Leverage building blocks, both using existing resources or for creating new ones. – Resource Respository and Manager – Protocol Session Manager – Standard Capabilities – Protocol Endpoints for remoting (SOAP, REST, etc). – Platform manager – *.apache.org deployment ready libraries. • While plugins can chose to use technologies like hibernate, spring or ESB, they don’t have to.
  • 15. See Mantychore FP7 use cases
  • 18. Platform CLI Persistence Queue Resource Manager . . . Security Protocol Session Manager Resource Lifecycle Resource Layer RouterResource NetworkResource BoDResource OpticalSwitch Resource ... Remoting Scripting GUI OpenNebula OpenStackNS NSA(NSI) ... 3P Extensions 3P Middleware OpenNaaS Architecture Network Intelligence • Integration with Northbound Middleware • IaaS/Cloud managers • Other NMS. • The user NaaS Layer • Network HAL abstraction to infrastructure. • Resources manageable by the user. • Access controlled by the Sec. Manager. Platform • Reusable building blocks, common to all extensions. • Controls access to the infrastructure. • Integrity, Policy, etc.. Managed infrastructure BoD
  • 19. OpenNaaS Platform Base Components • ResourceManager. – Manages the persistence and lifecycle of Resources. – There is a ResourceManager repository implementation for each ResourceType. • Which acts as a Factory for that type. – Implements also Profiles, we’ll see that later. – Which brings us to the NaaS abstraction reusable concepts; • Resource • Resource Type • Capability • Action • ActionSet • Profile
  • 20. OpenNaaS Platform Base Components • Reusable concepts: – A Resource represents a manageable unit inside the NaaS concept. • A Resource can be a switch, a router, a link, a logical router, a network, etc… – Instantiations of a Resource Type. • Resources share a simple lifecycle: – Initialized, loaded in memory. – Active, accepts calls. Capability Resource RPC Router
  • 21. OpenNaaS Platform Base Components • Reusable concepts: – A Resource represents a manageable unit inside the NaaS concept. • A Resource is decomposed in: – A model – An array of Capabilities. • The ResourceType defines: – The model. – Which Capabilities are allowed. • Which Capabilities are actually callable will depend on that actual Resource instance. » The Resource can be interrogated. Capabil Resourc RPC Router Chassis GRE OSPF
  • 22. OpenNaaS Platform Base Components • Reusable concepts: – A Capability is an interface to a given Resource functionality. • I.e. for a router: – OSPF, IPv6, Create/manage logical routers, etc. • Callable by the user. – This interface is, as the Model, abstracted and vendor neutral. – Internally the Capability, is implemented for each kind of device. • Hence, some capabilities might not be available for some vendors. – The Capability is the HAL limit for OpenNaaS. Capabil Resourc RPC Router Chassis GRE OSPF
  • 23. OpenNaaS Platform Base Components • Internally, Capabilities need a way to abstract implementation details of the devices. – They use Actions. • An Action is a vendor (and protocol) specific implementation of a configuration modification. – It can be Queue’d. – It can be undone (rollback). • Actions are grouped into an ActionSet. • On Action.execute(), the action usually asks to the ProtocolSessionManager for an appropriate ProtocolSession to communicate with the device. Capabil Resourc RPC
  • 24. OpenNaaS Platform Base Components • An Action can be implemented from scratch: – Just fill the execute() method with some code. • Or reused from some adaptors we have. – Most importantly, netconf actions are very XML-intensive. – They use a digester rule set for XML processing – And Velocity for XML creation. Capabil Resourc RPC
  • 25. OpenNaaS Platform Base Components • A Profile is an alternative set of ActionSets. • They can be deployed at runtime to the container. • On creation time, a Profile can be specified for a given Resource. • When looking for an Action to execute (or queue), Capabilities will first check the Profile for an alternative Action. – If found, it will be executed instead of the default one. • This is a mechanism for OpenNaaS administrators to modify behaviour of default capabilities. Capabil Resourc RPC
  • 26. OpenNaaS Platform Base Components • The QueueManager is used to stack all Actions to be executed. – All modifications can be done over the network at once. – Allows rollback of Actions. – Objective: the network-wide rollback of actions. – It is both a Capability and a OSGI Service. • The user can check and manipulate the Queue as a Capability. • The rest of Capabilities can work with it via the OSGi registry. – Saves a lot of serialization. Capabil Resourc RPC
  • 28. Fuse ServiceMix • Standards based • Open Source • State of the art technologies – OSGi, Java 6, Apache SF, Scala, etc – Roll your own • Componetized compilation of Apache library. • Documented • Comercial support. • Portable – Linux, Windows, Mac. • Not always the latest library versions…
  • 29. Platform • Based on a component container: – OSGi R4 (Apache Felix’s implementation) • Mainly, this allows: – The application is split components, and they are: • Started and stopped at runtime. – Which can be explored and manipulated via the CLI – Which can be handled programmatically (via events, RPC, etc). • Installed and updated from a (remote) repository. – Components are isolated from each other. • Classes from a bundle cannot import from other bundles. • Unless explicitly allowed to. • There is a service publication/consumption registry. • On OSGi, these components are called bundles. – A bundle is a jar + some special lines on the MANIFEST. – Features.xml allow to specify a version of the platform + an initial set bundles.
  • 30. Component Architecture Operating System Java 6 VM OSGi Container OSGi FUSE NaaS NaaS Plug-in FUSE NaaS NaaS Plug-in Plug-in FUSE NaaS Plug-in Plug-in Plug-in Bundles OSGiDistrib. Exported functionality Deploy, Upgrade, Monitor, etc Modern IDE, Remote debug, etc Unix, Linux, MacOS, Windows, etc
  • 32. OpenNaaS Platform • Embeddable and interoperable. – Component of a bigger middleware • i.e. a cloud management infrastructure. – L-GPLv3 for the platform. • Foundation of the NaaS layer. • Reusable concepts across plugins – Resource, Capability, Action, Lifecycle. – A command toolset and remoting layer is built around this concepts. – Etc • Shared but defined roadmap.
  • 33. OpenNaaS Platform Base Components • Leverage building blocks: – Resource Respository and Manager • Handles lifecycle and persistence. – Protocol Session Manager • Mantains protocol session lifecycle, with an eye on session reusability. • Additional protocols can be added – Standard Capabilities • Queue (for configuration deployment). – Protocol Endpoints for remoting (SOAP, REST, etc). – Platform manager – *.apache.org deployment ready libraries. • While plugins can chose to use technologies like hibernate, spring or ESB, they don’t have to.
  • 34. OpenNaaS Platform Base Components • Protocol Session Manager – Implements the ProtocolSession abstraction • Currently we have these implementations: – Netconf (IRTF). – Onesys (EMS Module). – CLI (Telnet, SSH). – TL1 (TCP, SSL). – Manages ProtocolSession lifecycle. • Performs pooling, if possible. • Reuses sessions (keeps them alive for some minutes). • ProtocolSession events. – Isolates ProtocolSession usage from credentials. • Loads and pairs ProtocolSessionContexts with appropiate device. • transport://user:password@ip:port/subsystem
  • 35. Transactional Queue 35 Network Queue Router Queue Router Queue Router Queue Client begin Write candidate Configuration and validate Write candidate Configuration and validate Write candidate Configuration and validate
  • 36. Transactional Queue 36 Network Queue Router Queue Router Queue Router Queue Client begin Activate new configuration Activate new configuration Activate new configuration Ok commit Ok
  • 37. Transactional Queue 37 Network Queue Router Queue Router Queue Router Queue Client begin Discard changes, load previous conf if necessary Discard changes, load previous conf if necessary Discard changes, load previous conf if necessary Fail!
  • 39. workflow Client Router Queue OSPFospf.activate(…) Queue.addAction( OSPFAction.ACTIVATE, …) > resource:list > ospf:activate router:A … GET http://opennaas/resourceManager/list resources { router [ “A”, “B” ] } GET http://opennaas/router/A/ospf activated = false POST http://opennaas/router/A/ospf/activate ospfservice { running.mospf = true. area { … } } 200 OK
  • 40. workflow Client Router Queue OSPFqueue.list() > queue:list router:A … GET http://opennaas/router/A/queue queue [ OSPFAction.ACTIVATE ] Actions[]
  • 41. workflow Client Router Queue OSPFqueue.execute() > queue:execute router:A POST http://opennaas/router/A/queue/execute timeout = 0 200 OK
  • 42. workflow Client Router Queue OSPFqueue.execute() > queue:execute router:A POST http://opennaas/router/A/queue/execute timeout = 0 200 OK getConnection( router:A, “netconf”);
  • 43. workflow Client Router Queue OSPFqueue.execute() Execute Action User Params <configuration> #set($logicalRouter = "false") #if(!$elementName.equals("")) #set($logicalRouter = "true") #end #if($logicalRouter.equals("true")) <logical-systems> <name>$elementName</name> #end <protocols> <ospf> #foreach($ospfAreaConfig in $param.getOSPFAreaConfiguration()) #set($ospfArea = $ospfAreaConfig.getOSPFArea()) <area> <name>$ipUtilsHelper.ipv4LongToString($ospfArea.getAreaID())</name> #foreach($ospfPep in $ospfArea.getEndpointsInArea()) ##replace the content on interface with given name <interface operation="replace"> <name>$ospfPep.getName()</name> ##ENABLED/DISABLED #if($ospfPep.getEnabledState().toString().equals($disabledState)) <disable/> #end </interface> #end </area> #end </ospf> </protocols> #if($logicalRouter.equals("true")) </logical-systems> #end </configuration>
  • 44. workflow Client Router Queue OSPFospf.getConfiguration() Parse new configuration into the model > queue:execute router:A OK > POST http://opennaas/router/A/queue/execute timeout = 0 200 OK GET http://opennaas/router/A/ospf/info ospfservice { running.mospf = true. area { … } }
  • 47. Router 47 OSPF • activate • deactivate • configure • getConfiguration • configureArea • addInterfaces • .... IPV4 • setipv4 • setInterfaceDescrip Chassis • upPhysicInterface • downPhysicInterface • createSubInterface • setEncapsulation • createLogicalRouter • addInterfacesToLR • .... GRE Tunnel • createGRETunnel • deleteGRETunnel • showGRETunnelConf Static Route • createStaticRoute • removeStaticRoute
  • 49. Network 49 Basic Network • addResource • removeResource • L2attach • l2detach Net OSPF • activateOSPF • deactivateOSPF
  • 51. MACBridge 51 VLAN Aware Bridge • createVLANConfiguration • deleteVLANConfiguration • addStaticVLANRegistration • deleteStaticVLANRegistration
  • 53. Roadmap • Extensions and platform upgrades are performed according to: – Research projects – Internal initiatives from i2CAT – Initiatives from third party extensions – Privately funded projects from industry • The roadmap is open to discussion on the usual project forums (i.e. mailing lists).
  • 54. Extensions Roadmap Done Current Short-term (<6m) Mid-Term (>6m) L1 ROADM L2 BoD Domain client • AutoBAHN BoD Domain Server • Porting Harmony IDB BoD Domain Server • NSI interface. L2 / L3 Router L3 Network Manager GUI Security Manager • SAML Idp Cloud Manager connectors • OpenStack NetworkS ervice drop-in replacement • OpenNebula 3.0 • Energy consumption metrics. • Infrastructure Marketplace. OpenFlow Controller
  • 55. Extensions Roadmap by Project 2012 2013 2014 2015 2016 Mantychore UC1 UC2 NOVI SFA Adapter GEYSERS MAC Bridge CONTENT OFERTIE SODALES GN3+ Wifi/TDM Resources OpenFlow SLA Manager Wifi/TDM Orchestrator ARN Resource GN3
  • 56. Third Party Extensions • Mantychore extensions are ASLv2, so they can be used as foundation for additional extensions – Additional extensions can have any license. • New extensions can have any license. • Possibility to be hosted on private repositories. – And both be installed with a platform well-known command • feature:install http://net.biz/3rd.party.feature • Can leverage both platform functionality and default extensions.

Hinweis der Redaktion

  1. Pointers:User documentationHow-tosVideoSoftwareMailing lists