boulder: intent based nbi

22
Campus SDN Boulder Project Features Open Source SDN Software

Upload: trinhhanh

Post on 25-Jan-2017

235 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Boulder: Intent Based NBI

Campus SDN Boulder Project

Features Open Source SDN Software

Page 2: Boulder: Intent Based NBI

Introduction to the Boulder Project!Mathieu Lemay – Boulder / Inocybe Technologies !

David Lenrow – NBI Chair / HP!Chris Janz – Boulder Chair / Ciena

!

Page 3: Boulder: Intent Based NBI

The Problem!The Epochs of SDN!

Page 4: Boulder: Intent Based NBI

Campus SDN

à From ONF’s SDN White Paper (2012)!!

à https://www.opennetworking.org/images/stories/downloads/sdn-resources/white-papers/wp-sdn-

newnorm.pdf !

à The functions of the application and control layers were left ~ undefined !à This was held to not matter much (“just standardize OpenFlow”) !

Back at the beginning... !

Page 5: Boulder: Intent Based NBI

Campus SDN

à Application & control planes: distinct? !

Network programming: a !à “specialist art”!

First and Second Epoch of SDN !

Page 6: Boulder: Intent Based NBI

Campus SDN

• Writing applications with OpenFlow semantics is error-prone and difficult!

• Applications coexistence is difficult.!

• Applications are bound to the controller logic.!

• Language binding limits the reusability of

applications.!

Today's SDN Controller !

Page 7: Boulder: Intent Based NBI

The Solution!Introduction to Intent Networking!

Page 8: Boulder: Intent Based NBI

Campus SDN

Intent: !  Is non-prescriptive (fully non-prescriptive request constraints = “pure intent”)!  Is portable (“pure intent” request = fully portable across controller planes)!  Is universal (any application request is expressible in intent terms)!  Renders application plane and controller plane implementations mutually

independent!  Usefully maximizes degrees of freedom in controller plane function!  Supports request conflict resolution by controller planes (by including

appropriate request context & excluding unnecessary request constraints)!  Naturally creates “buyer-seller” paradigm (application plane-controller plane) !

Intent NBI : Principles & Benefits !

Page 9: Boulder: Intent Based NBI

Campus SDN

Application Plane!

Controller Plane!

Infrastructure Plane!

à Network service consuming systems!

à Network service delivery systems!

à Information & sphere of action “native” to each plane, defines and constrains the

interaction between them: !à A.P. says “What” (doesn’t care how) !

à C.P. reasons “How” (doesn’t care why)! Intent !

Intent !

APIs !

Intent: Third Epoch of SDN !

Page 10: Boulder: Intent Based NBI

Campus SDN Proposal!

Using an Intent Framework! • Simplifies application development.!

• Tell the network what you want it to do.!

• Manage the resources and the application

lifecycle !

Today's SDN Controller !

Page 11: Boulder: Intent Based NBI

Boulder Prototype!Launching the Boulder Intent Project!

Page 12: Boulder: Intent Based NBI

Campus SDN Proposal!The Open SDN Stack!

Whitebox Switch!

Networking OS!

Open Virtual Switch!

Open Controller!

Open Intent Runtime!

SDN Applications!

The missing layer for SDN applications. Research has been done in this area (Frenetic, Maple, OpenDaylight GBP, ONOS Intents, etc.). There is an urgent need for standardization and reference implementation.!

The Missing Layer !

Page 13: Boulder: Intent Based NBI

Campus SDN

Proposal!The JVM of SDN Controllers !

Source Code! Intent Code ! Boulder! Host Controller!

Page 14: Boulder: Intent Based NBI

Campus SDN Open Source SDN – Boulder Project !

Introducing the ONF's OpenSource SDN Boulder Project.!!

14 !

Page 15: Boulder: Intent Based NBI

Campus SDN

Proposal!Application Portability! • Provide a Controller-

Neutral Intent Framework!• Implement a Runtime for OpenDaylight and ideally another controller such

as ONOS.!• Should not be tied to the

controller’s native language.!

A new way to write applications !

Page 16: Boulder: Intent Based NBI

Campus SDN How it works?!

16 !

Boulder exposes Intent as a Grammar!- Subject(s) (Who?)!- Predicate (What?)!

- Object/Target(s) (Who?)!

Boulder allows you to define more context to the negotiation!

- Constraints (How?)!- Conditions (When?)!

Page 17: Boulder: Intent Based NBI

Campus SDN Boulder Timeline!

17 !

Initial Design ! ONS Summit Proof of Concept!

Community Involvement!

Launched in March 2015!

March - June 2015 !

Get Involved NOW!!

Page 18: Boulder: Intent Based NBI

Campus SDN Boulder to ONOS Mapping !

Boulder!

ONOS Intent!

Boulder Steps for ONOS:!1)  Application Init !2)  Capability Request (Verbs, EP)!3)  Capability Reponses (Verbs , EP)!4)  Intents Pushed to Engine !5)  Engine Pushed to ONOS!

1 !

2 !ONOS Runtime !

Engine!

Application!

3 ! 4 !

5 !

Internal ONOS Intent: !l HostToHost Intent !l Path Intent!

Page 19: Boulder: Intent Based NBI

Campus SDN Boulder to OpenDaylight !

Boulder!

OpenDaylight !

Boulder Steps for ONOS:!1)  Application Init !2)  Capability Request (Verbs, EP)!3)  Capability Reponses (Verbs , EP)!4)  Engine Pushed to OpenDaylight NIC (Native Grammar)!

1 !

2 !

NIC!

Application!

3 ! 4 ! Internal OpenDaylight Intent: !l NIC Project (Allow)!l Group Based Policy (Policy)!

Page 20: Boulder: Intent Based NBI

Demo Application!Simple Service Function Chaining Application!

Page 21: Boulder: Intent Based NBI

Campus SDN

Proposal!Sample Application!

Page 22: Boulder: Intent Based NBI

Campus SDN More Resources!

Demonstration Video! https://youtu.be/hukaRkWFsX4 !

!Source Code !

https://github.com/OpenNetworkingFoundation/BOULDER-Intent-NBI!!

Code Review !http://review.inocybe.com → Temporary!

!Additional Documentation https://groups.opensourcesdn.org/wg/IntentNBI/

dashboard!!

Open to Everyone! (Non-Members too)!