TFI2014 Session I - State of SDN - Karen “Shelly” Cadora
-
Upload
colorado-internet-society-co-isoc -
Category
Technology
-
view
84 -
download
1
description
Transcript of TFI2014 Session I - State of SDN - Karen “Shelly” Cadora
![Page 1: TFI2014 Session I - State of SDN - Karen “Shelly” Cadora](https://reader033.fdocuments.net/reader033/viewer/2022060123/5596ff2d1a28abb3778b4798/html5/thumbnails/1.jpg)
Postponing Complexity Collapse
Shelly Cadora
Technical Marketing Engineer, Cisco Systems
@scadora
APIs and Config Automation
![Page 2: TFI2014 Session I - State of SDN - Karen “Shelly” Cadora](https://reader033.fdocuments.net/reader033/viewer/2022060123/5596ff2d1a28abb3778b4798/html5/thumbnails/2.jpg)
The future is already here.
It’s just not evenly distributed
William Gibson
![Page 3: TFI2014 Session I - State of SDN - Karen “Shelly” Cadora](https://reader033.fdocuments.net/reader033/viewer/2022060123/5596ff2d1a28abb3778b4798/html5/thumbnails/3.jpg)
3
SDN Is The Future
Source: http://blogs.gartner.com/andrew-lerner/2014/06/16/the-state-of-sdn-adoption/
![Page 4: TFI2014 Session I - State of SDN - Karen “Shelly” Cadora](https://reader033.fdocuments.net/reader033/viewer/2022060123/5596ff2d1a28abb3778b4798/html5/thumbnails/4.jpg)
4
NETCONF is an IETF Config Management Protocol
V 1.0
• RFC 3535 Background and requirements
• RFC 4741 1.0 Base NETCONF Protocol
• RFC 4742NETCONF over SSH
V 1.1
• RFC 6241 – 1.1 Base NETCONF Protocol
• RFC 6242 –NETCONF over SSH
Extensions
• RFC 5277 Notifications
• RFC 5717 Partial Locking
• RFC 6243 With defaults
• RFC 6244 NETCONF + YANG Architectural Overview
Content
Operations
Messages
Transport
Protocol Stack
Goals: Easy to Use, Accessible, Separate Config and
Operational Data, Error Checking, Backup/Restore,
Human and Machine Friendly, Lots of Tooling
![Page 5: TFI2014 Session I - State of SDN - Karen “Shelly” Cadora](https://reader033.fdocuments.net/reader033/viewer/2022060123/5596ff2d1a28abb3778b4798/html5/thumbnails/5.jpg)
5
NETCONF <get-config> Response<?xml version="1.0"?>
<rpc-reply message-id="11">
<data>
<Configuration>
<Hostname MajorVersion="1" MinorVersion="0">teddy</Hostname>
<IPDomain MajorVersion="2" MinorVersion="0">
<VRFTable MajorVersion="2" MinorVersion="0">
<VRF><Naming><VRFName>default</VRFName></Naming>
<Name>cisco.com</Name>
</VRF></VRFTable></IPDomain>
...
</Configuration> </data>
</rpc-reply>
]]>]]>
![Page 6: TFI2014 Session I - State of SDN - Karen “Shelly” Cadora](https://reader033.fdocuments.net/reader033/viewer/2022060123/5596ff2d1a28abb3778b4798/html5/thumbnails/6.jpg)
6
REST: An Architectural Style and An API
HTTP GET
HTML
Describes how data
should be displayed
to please human
viewer
HTTP GET
JSON/XML
Describes data in a
format applications
can understand
{"ids":[303776224, 19449911, 607032789,
86544242, 2506725913, 17631389],
"next_cursor":0, "next_cursor_str":"0",
"previous_cursor":0, "previous_cursor_str":"0"}
Web Browsing REST API
![Page 7: TFI2014 Session I - State of SDN - Karen “Shelly” Cadora](https://reader033.fdocuments.net/reader033/viewer/2022060123/5596ff2d1a28abb3778b4798/html5/thumbnails/7.jpg)
7
Routers Can Have REST APIs
JSON Format
• JavaScript Object Notation
• A light-weight, open standard, human
readable data interchange format
• A more compact alternative to XML
• RFC 4627
![Page 8: TFI2014 Session I - State of SDN - Karen “Shelly” Cadora](https://reader033.fdocuments.net/reader033/viewer/2022060123/5596ff2d1a28abb3778b4798/html5/thumbnails/8.jpg)
8
And So Can Networks (via a Controller)
![Page 9: TFI2014 Session I - State of SDN - Karen “Shelly” Cadora](https://reader033.fdocuments.net/reader033/viewer/2022060123/5596ff2d1a28abb3778b4798/html5/thumbnails/9.jpg)
9
DevOps: Applying IT Automation Tools to Networks
![Page 10: TFI2014 Session I - State of SDN - Karen “Shelly” Cadora](https://reader033.fdocuments.net/reader033/viewer/2022060123/5596ff2d1a28abb3778b4798/html5/thumbnails/10.jpg)
10
Software Designed Networking
APIs
Automation
Separation of Concerns
Data ModelsPrinciple of
Least Knowledge
Abstraction
Architectural Style
Design Patterns
![Page 11: TFI2014 Session I - State of SDN - Karen “Shelly” Cadora](https://reader033.fdocuments.net/reader033/viewer/2022060123/5596ff2d1a28abb3778b4798/html5/thumbnails/11.jpg)
What programming tools give you is the ability to manage complexity. The limiting factor for a lot of programming projects is our brains, our limited ability to manage complexity...
What good programming languages and good programming style allows us to do is postpone complexity collapse, postpone the point where we can’t make any more changes
Allen Downey
![Page 12: TFI2014 Session I - State of SDN - Karen “Shelly” Cadora](https://reader033.fdocuments.net/reader033/viewer/2022060123/5596ff2d1a28abb3778b4798/html5/thumbnails/12.jpg)
Thanks