...
We intend to abstract the applications from syntactical processing of information encoding with external world and provide a framework in which the applications only need to implement the business logic and seamlessly support any interface language like REST, NETCONF etc. As a part of this goal following work is proposed in Falcon and Golden Eye release.
Proposed Workwork
Proposed Falcon Deliverabledeliverable:
Basic YANG Utils supporting:
Basic built-In data type.
Individual YANG file support.
Sample application (with manual REST implementation)
Proposed Golden Eye Release Deliverablerelease deliverable:
Advanced YANG Utils supporting:
...
Sample application (with automated REST implementation)
YANG Utils
...
details:
Overview
YANG Utils are the basic building block to achieve the final goal of abastracting the language based Syntax/Semantics processing by APPs. These UTILS intend to have following:
- YANG Parser for parsing YANG file.
- Translator tool for auto-generation of JAVA corresponding to a given YANG.
- Metadata generation which will be an input for NBI/SBI automation.
Example
REST NBI
...
automation details:
Overview
With the current REST mechanism, every APP must perform the Manual Rest Registration and implement the manual CODEC function, thereby slowing down the APP development and increasing chances for manual error. Current REST NBI Mechanism is depicted in below figure:
...
As a part of this project we intend to model the NBI Interface and augment the REST NBI Framework to Automate the URI Registration and CODEC Implementation, thereby reducing manual error and faster application development. Proposed REST NBI Mechanism is depicted in below figure:
Benefit &
...
impact analysis:
Benefit to
...
service provider
Modeled based Services/Network Visibility
YANG based Standard Interface Representation.
Seamless Standard YANG based Application Adaptation.
Benefit to ONOS
...
developers
Smaller Learning Curve
Provides Faster APP Development.
Better Quality due to Automation.
Modeled based application interface.
Impact on
...
existing system
Augments the existing work.
No impact on existing system.
...
Long Term Objective:
Abstraction and Automation automation of:
- NBI framework where in application's can seamlessly support any NBI interface.
- NETCONF SBI framework. (Extend support to ONOS NETCONF team with for metadata and class generation).
- Modeling Driver Behavior and help applications to use it seamlessly.
- Modeling of resource information. Application(s) can maintain information of their interest, associated with resource in the resource manager.
Below figure gives the long term objective of YANG in ONOS.
Sample Application
RoadMap
application (SFC)
End to End abstraction using YANG
- Applications expose service model interfaces and map it to network model based on business logic.
- Drivers maps the generic network model to corresponding device specific model.
- SBI use the device model to encode the information in protocol packets.
Below figure depicts the E2E YANG based abstraction.