provisioning vpns on an heterogeneous network with opendaylight and netconf_bcom

29
Gwenael LAMBROUIN Santa Clara, CA, USA 2015-07-28 / Provisioning VPNs on a heterogeneous network infrastructure with OpenDaylight and NETCONF / 20/03/2022

Upload: irt-b-com

Post on 14-Aug-2015

140 views

Category:

Technology


0 download

TRANSCRIPT

Gwenael LAMBROUIN

Santa Clara, CA, USA2015-07-28

/ Provisioning VPNs on a heterogeneous network

infrastructure with OpenDaylight and NETCONF /

15/04/2023

28/07/15 / 2Diffusion : confidentiel28/07/15 / 2Diffusion : confidentiel28/07/15 / 2Diffusion : confidentiel / 2Diffusion : public

Contents

› Part 1•The Problem to Solve

•Key Technical Issues

•Why OpenDaylight (ODL)?

› Part 2•Our implementation

› Part 3•Ongoing work with ODL

•Feedback on ODL

28/07/15 / 3Diffusion : confidentiel28/07/15 / 3Diffusion : confidentiel28/07/15 / 3Diffusion : confidentiel / 3Diffusion : public

›faster service delivery & improved self-service

›through automation

›on an example: L2VPN

The Problem to Solve

28/07/15 / 4Diffusion : confidentiel28/07/15 / 4Diffusion : confidentiel28/07/15 / 4Diffusion : confidentiel / 4Diffusion : public

The Problem to Solve

28/07/15 / 5Diffusion : confidentiel28/07/15 / 5Diffusion : confidentiel28/07/15 / 5Diffusion : confidentiel / 5Diffusion : public

The Problem to Solve

28/07/15 / 6Diffusion : confidentiel28/07/15 / 6Diffusion : confidentiel28/07/15 / 6Diffusion : confidentiel / 6Diffusion : public

The Problem to Solve

28/07/15 / 7Diffusion : confidentiel28/07/15 / 7Diffusion : confidentiel28/07/15 / 7Diffusion : confidentiel / 7Diffusion : public

›Abstraction

›Error management

›Resource allocation

›Orchestration

Key Technical Issues

28/07/15 / 8Diffusion : confidentiel28/07/15 / 8Diffusion : confidentiel28/07/15 / 8Diffusion : confidentiel / 8Diffusion : public

›Simplifies service logic

›Makes it possible to change the hardware

›What is the good level?

Abstraction

28/07/15 / 9Diffusion : confidentiel28/07/15 / 9Diffusion : confidentiel28/07/15 / 9Diffusion : confidentiel / 9Diffusion : public

›Configurations can fail

›Errors must be detected

›A recovery plan is needed

Error Management

28/07/15 / 10Diffusion : confidentiel28/07/15 / 10Diffusion : confidentiel28/07/15 / 10Diffusion : confidentiel / 10Diffusion : public

›open source

›backed-up by industry

›NETCONF

›abstraction (MD-SAL/YANG)

›to evaluate ODL

Why OpenDaylight (ODL)?

28/07/15 / 11Diffusion : confidentiel28/07/15 / 11Diffusion : confidentiel28/07/15 / 11Diffusion : confidentiel / 11Diffusion : public

Contents

› Part 1•The Problem to Solve

•Key Technical Issues

•Why OpenDaylight (ODL)?

› Part 2•Our implementation

› Part 3•Ongoing work with ODL

•Feedback on ODL

28/07/15 / 12Diffusion : confidentiel28/07/15 / 12Diffusion : confidentiel28/07/15 / 12Diffusion : confidentiel / 12Diffusion : public

Our Implementation

28/07/15 / 13Diffusion : confidentiel28/07/15 / 13Diffusion : confidentiel28/07/15 / 13Diffusion : confidentiel / 13Diffusion : public

The Generic Device Driver

28/07/15 / 14Diffusion : confidentiel28/07/15 / 14Diffusion : confidentiel28/07/15 / 14Diffusion : confidentiel / 14Diffusion : public

›Better than CLI•structured

•explicit failures

›But some useful features are optional•eg « commit »

Comments on NETCONF

28/07/15 / 15Diffusion : confidentiel28/07/15 / 15Diffusion : confidentiel28/07/15 / 15Diffusion : confidentiel / 15Diffusion : public

The Generic Device Driver

28/07/15 / 16Diffusion : confidentiel28/07/15 / 16Diffusion : confidentiel28/07/15 / 16Diffusion : confidentiel / 16Diffusion : public

<cmd>interface GigabitEthernet3</cmd> <cmd>no ip address</cmd><cmd>no shut</cmd><cmd>negotiation auto</cmd> <cmd>service instance 1 ethernet</cmd> <cmd>encapsulation untagged</cmd> <cmd>bridge-domain 1</cmd> <cmd>end</cmd>

Example 1

28/07/15 / 17Diffusion : confidentiel28/07/15 / 17Diffusion : confidentiel28/07/15 / 17Diffusion : confidentiel / 17Diffusion : public

<routing-instances><instance><name>orange_vpn</name><interface operation="create">GigabitEthernet 0/0/3</interface>…

Example 2

28/07/15 / 18Diffusion : confidentiel28/07/15 / 18Diffusion : confidentiel28/07/15 / 18Diffusion : confidentiel / 18Diffusion : public

The Generic Device Driver

28/07/15 / 19Diffusion : confidentiel28/07/15 / 19Diffusion : confidentiel28/07/15 / 19Diffusion : confidentiel / 19Diffusion : public

String vendor="Cisco"; // or "Juniper"Driver driver = Driver.build(vendor);driver.open(deviceAddress, login, password);driver.addL2vpnPort("orange_vpn", 1, "GigabitEthernet3");driver.close();

Example

28/07/15 / 20Diffusion : confidentiel28/07/15 / 20Diffusion : confidentiel28/07/15 / 20Diffusion : confidentiel / 20Diffusion : public

The Generic Device Driver

28/07/15 / 21Diffusion : confidentiel28/07/15 / 21Diffusion : confidentiel28/07/15 / 21Diffusion : confidentiel / 21Diffusion : public

POST http://[...]/l2vpn:add-l2vpn-port

{ "device-id" : "v_lightblue_site1", "vpn-name" : "orange_vpn", "vpn-number" : 1, "port-name" : "GigabitEthernet3"}

Example

28/07/15 / 22Diffusion : confidentiel28/07/15 / 22Diffusion : confidentiel28/07/15 / 22Diffusion : confidentiel / 22Diffusion : public

L2VPN Service Orchestrator

28/07/15 / 23Diffusion : confidentiel28/07/15 / 23Diffusion : confidentiel28/07/15 / 23Diffusion : confidentiel / 23Diffusion : public

L2VPN Service Orchestrator

28/07/15 / 24Diffusion : confidentiel28/07/15 / 24Diffusion : confidentiel28/07/15 / 24Diffusion : confidentiel / 24Diffusion : public

›Error recovery strategies•rollback on error

•continue on error

›What is the better strategy?•It depends!

L2VPN Service Orchestrator

28/07/15 / 25Diffusion : confidentiel28/07/15 / 25Diffusion : confidentiel28/07/15 / 25Diffusion : confidentiel / 25Diffusion : public

Contents

› Part 1•The Problem to Solve

•Key Technical Issues

•Why OpenDaylight (ODL)?

› Part 2•Our implementation

› Part 3•Ongoing work with ODL

•Feedback on ODL

28/07/15 / 26Diffusion : confidentiel28/07/15 / 26Diffusion : confidentiel28/07/15 / 26Diffusion : confidentiel / 26Diffusion : public

›Move orchestration to ODL

›Experiment with data persistency

›Develop a CLI driver

Ongoing Work with ODL

28/07/15 / 27Diffusion : confidentiel28/07/15 / 27Diffusion : confidentiel28/07/15 / 27Diffusion : confidentiel / 27Diffusion : public

›Cons•Hard to learn, hard to master

›Pros•Stable

•Bug & patch processes work

•Friendly & responsive community

Feedback on ODL

28/07/15 / 28Diffusion : confidentiel28/07/15 / 28Diffusion : confidentiel28/07/15 / 28Diffusion : confidentiel / 28Diffusion : public

›ODL can manage network devices

›We are ready to share our code

›… if there is interest!

Conclusion

www.b-com.com

Thanks

/ [email protected] /

http://slideshare.net/b-com