SlideShare a Scribd company logo
1 of 50
6.888
Lecture 14:
Software Defined Networking
Mohammad Alizadeh
Spring 2016
 Many thanks to Nick McKeown (Stanford), Jennifer Rexford (Princeton), Scott
Shenker (Berkeley), Nick Feamster (Princeton), Li Erran Li (Columbia), Yashar
Ganjali (Toronto)
1
Outline
What is SDN?
OpenFlow basics
Why is SDN happening now? (a brief history)
4D discussion
2
What is SDN?
3
Software Defined Network
A network in which the control plane is
physically separate from the data plane.
and
A single (logically centralized) control plane
controls several forwarding devices.
4
Software Defined Network (SDN)
Packet
Forwarding
Packet
Forwarding
Packet
Forwarding
Packet
Forwarding
Packet
Forwarding
Control
Control
Control
Control
Control
Global Network Map
Control Plane
Control
Program
Control
Program
Control
Program
5
What You Said
“Overall, the idea of SDN feels a little bit unsettling
to me because it is proposing to change one of the
main reasons for the success of computer
networks: fully decentralized control. Once we
introduce a centralized entity to control the network
we have to make sure that it doesn’t fail, which I
think is very difficult.”
6
Entire backbone
runs on SDN
A Major Trend in Networking
Bought for $1.2 billion
(mostly cash) 7
The Networking “Planes”
Data plane: processing and delivery of packets with local
forwarding state
– Forwarding state + packet header  forwarding decision
– Filtering, buffering, scheduling
Control plane: computing the forwarding state in routers
– Determines how and where packets are forwarded
– Routing, traffic engineering, failure detection/recovery, …
Management plane: configuring and tuning the network
– Traffic engineering, ACL config, device provisioning, …
8
Timescales
Data Control Management
Time-
scale
Packet
(nsec)
Event (10
msec to sec)
Human (min
to hours)
Location Linecard
hardware
Router
software
Humans or
scripts
9
Data and Control Planes
Switching
Fabric
Processor
Line card
Line card
Line card
Line card
Line card
Line card
data plane
control plane
10
Data Plane
Streaming algorithms on packets
– Matching on some header bits
– Perform some actions
Example: IP Forwarding
host host host
LAN 1
... host host host
LAN 2
...
router router router
WAN WAN
1.2.3.4 1.2.3.7 1.2.3.156 5.6.7.8 5.6.7.9
1.2.3.0/24
5.6.7.0/24
forwarding table 11
Control Plane
Compute paths the packets will follow
– Populate forwarding tables
– Traditionally, a distributed protocol
Example: Link-state routing (OSPF, IS-IS)
– Flood the entire topology to all nodes
– Each node computes shortest paths
– Dijkstra’s algorithm
12
13
1
2
3
“If , send to 3”
Data
“If a packet is going to B,
then send it to output 3”
1. Figure out which routers and links are present.
2. Run Dijkstra’s algorithm to find shortest paths.
14
Management Plane
Traffic Engineering: setting the weights
– Inversely proportional to link capacity?
– Proportional to propagation delay?
– Network-wide optimization based on traffic?
3
2
2
1
1
3
1
4
5
3
3
15
Challenges
(Too) many task-specific control mechanisms
– No modularity, limited functionality
Indirect control
– Must invert protocol behavior, “coax” it to do what you want
– Ex. Changing weights instead of paths for TE
Uncoordinated control
– Cannot control which router updates first
Interacting protocols and mechanisms
– Routing, addressing, access control, QoS
The network is
• Hard to reason about
• Hard to evolve
• Expensive
16
Example 1: Inter-domain Routing
Today’s inter-domain routing protocol, BGP, artificially
constrains routes
- Routing only on destination IP address blocks
- Can only influence immediate neighbors
- Very difficult to incorporate other information
Application-specific peering
– Route video traffic one way, and non-video another
Blocking denial-of-service traffic
– Dropping unwanted traffic further upstream
Inbound traffic engineering
– Splitting incoming traffic over multiple peering links
17
Two locations, each with data center &
front office
All routers exchange routes over all links
R1 R2
R5
R4
R3
Chicago (chi)
New York (nyc)
Data Center Front Office
Example 2: Access Control
18
R1 R2
R5
R4
R3
Chicago (chi)
New York (nyc)
Data Center
chi-DC
chi-FO
nyc-DC
nyc-FO
Front Office
Example 2: Access Control
19
R1 R2
R5
R4
R3
Data Center
chi-DC
chi-FO
nyc-DC
nyc-FO
Packet filter:
Drop nyc-FO -> *
Permit *
Packet filter:
Drop chi-FO -> *
Permit *
Front Office
chi
nyc
Example 2: Access Control
20
A new short-cut link added between data centers
Intended for backup traffic between centers
R1 R2
R5
R4
R3
Data Center
Packet filter:
Drop nyc-FO -> *
Permit *
Packet filter:
Drop chi-FO -> *
Permit *
Front Office
chi
nyc
Example 2: Access Control
21
Oops – new link lets packets violate access control policy!
Routing changed, but
Packet filters don’t update automatically
R1 R2
R5
R4
R3
Data Center
Packet filter:
Drop nyc-FO -> *
Permit *
Packet filter:
Drop chi-FO -> *
Permit *
Front Office
chi
nyc
Example 2: Access Control
22
Custom Hardware
Custom Hardware
Custom Hardware
Custom Hardware
Custom Hardware
OS
OS
OS
OS
OS
Network OS
Feature Feature
How SDN Changes the Network
Feature Feature
Feature Feature
Feature Feature
Feature Feature
Feature Feature
23
23
Control Program 1
Network OS
1. Open interface to packet forwarding
3. Consistent, up-to-date global network view 2. At least one Network OS
probably many.
Open- and closed-source
Software Defined Network (SDN)
Packet
Forwarding
Packet
Forwarding
Packet
Forwarding
Packet
Forwarding
Packet
Forwarding
Control Program 2
24
24
Network OS
Network OS: distributed system that creates a
consistent, up-to-date network view
– Runs on servers (controllers) in the network
– NOX, ONIX, Floodlight, Trema, OpenDaylight, HyperFlow,
Kandoo, Beehive, Beacon, Maestro, … + more
Uses forwarding abstraction to:
– Get state information from forwarding elements
– Give control directives to forwarding elements
25
Control Program A Control Program B
Network OS
Software Defined Network (SDN)
Packet
Forwarding
Packet
Forwarding
Packet
Forwarding
Packet
Forwarding
Packet
Forwarding
26
Control Program
Control program operates on view of network
– Input: global network view (graph/database)
– Output: configuration of each network device
Control program is not a distributed system
– Abstraction hides details of distributed state
27
Forwarding Abstraction
Purpose: Standard way of defining forwarding state
– Flexible
• Behavior specified by control plane
• Built from basic set of forwarding primitives
– Minimal
• Streamlined for speed and low-power
• Control program not vendor-specific
OpenFlow is an example of such an abstraction
28
Network OS
Software Defined Network
29
Global Network View
Control Program
Virtual Topology
Network Hypervisor
Virtualization Simplifies Control Program
A
B
A
B
Abstract Network View
Global Network View
AB drop
Hypervisor then inserts flow entries as needed
AB drop
AB drop
30
Does SDN Simplify the Network?
31
What You Said
“However, I remain skeptical that such an
approach will actually simplify much in the long
run. That is, the basic paradigm in networks
(layers) is in fact a simple model. However, the
ever-changing performance and functionality goals
have forced more complexity into network design.
I'm not sure if SDN will be able to maintain its
simplified model as goals continue to evolve.”
32
Does SDN Simplify the Network?
Abstraction doesn’t eliminate complexity
- NOS, Hypervisor are still complicated pieces of code
SDN main achievements
- Simplifies interface for control program (user-specific)
- Pushes complexity into reusable code (SDN platform)
Just like compilers….
33
OpenFlow Basics
34
OpenFlow Protocol
Data Path (Hardware)
Control Path OpenFlow
Ethernet Switch
Network OS
Control Program A Control Program B
OpenFlow Basics
35
Control Program A Control Program B
Network OS
OpenFlow Basics
Packet
Forwarding
Packet
Forwarding
Packet
Forwarding
Flow
Table(s)
“If header = p, send to port 4”
“If header = ?, send to me”
“If header = q, overwrite header with r,
add header s, and send to ports 5,6”
36
Primitives <Match, Action>
Match arbitrary bits in headers:
– Match on any header, or new header
– Allows any flow granularity
Action
– Forward to port(s), drop, send to controller
– Overwrite header with mask, push or pop
– Forward at specific bit-rate
Header Data
Match: 1000x01xx0101001x
OpenFlow Rules
Exploit the flow table in switches, routers, and chipsets
Rule
(exact & wildcard)
Action Statistics
Rule
(exact & wildcard)
Action Statistics
Rule
(exact & wildcard)
Action Statistics
Rule
(exact & wildcard)
Default Action Statistics
Flow 1.
Flow 2.
Flow 3.
Flow N.
Why is SDN happening now?
39
The Road to SDN
Active Networking: 1990s
- First attempt make networks programmable
- Demultiplexing packets to software programs, network
virtualization, …
Control/Dataplane Separation: 2003-2007
- ForCes [IETF],
RCP, 4D [Princeton, CMU],
SANE/Ethane [Stanford/Berkeley]
- Open interfaces between data and control plane, logically
centralized control
OpenFlow API & Network Oses: 2008
- OpenFlow switch interface [Stanford]
- NOX Network OS [Nicira]
40
N. Feamster et al., “The Road to SDN: An Intellectual History of Programmable Networks”, ACM
SIGCOMM CCR 2014.
SDN Drivers
Rise of merchant switching silicon
- Democratized switching
- Vendors eager to unseat incumbents
Cloud / Data centers
- Operators face real network management problems
- Extremely cost conscious; desire a lot of control
The right balance between vision & pragmatism
- OpenFlow compatible with existing hardware
A “killer app”: Network virtualization
41
Virtualization is Killer App for SDN
Consider a multi-tenant datacenter
- Want to allow each tenant to specify virtual topology
- This defines their individual policies and requirements
Datacenter’s network hypervisor compiles these
virtual topologies into set of switch configurations
- Takes 1000s of individual tenant virtual topologies
- Computes configurations to implement all simultaneously
This is what people are paying money for….
- Enabled by SDN’s ability to virtualize the network
4D
43
4D
Decision: all management and control logic
Dissemination: communicating with routers
Discovery: topology and traffic monitoring
Data: packet handling
routers
Decision
Dissemination
Discovery
Data
Network-level
objectives
Direct
control
Network-
wide views
What You Said
“The paper reads more like a thought-exercise or
meta discussion of the future SDN field than a
presentation of research. I am surprised sigcomm
published it.”
“some good things about the way the paper was
structured was that it mentioned that it had a lot of
future work to do and didn't think it was a final
solution. By at least addressing that it needs to
continue to expand, the authors acknowledge they
don't know the merits behind their solution…”
45
What You Said
“The most compelling aspect of SDN and of the 4D
Approach proposed, in my opinion, is the ability to
enable innovation. However, SDN taken to the
extreme proposed in the 4D approach seems to
me to significantly limit scalability and increase
complexity.”
46
What You Said
“My concern is that, previous designs that is aware
of the delay of updating network view, take the
consideration right on their control (they have
control rules and protocol that touch this directly).
But SDN tries to hide this nature from the
programmers. I am not sure if the design of the
software, in the absence of these concerns, will
end up with expected results.”
47
Practical Challenges
Scalability
– Decision elements responsible for many routers
Reliability
– Surviving failures of decision elements and routers
Response time
– Delays between decision elements and routers
Consistency
– Ensuring multiple decision elements behave consistently
Security
– Network vulnerable to attacks on decision elements
Interoperability
– Legacy routers and neighboring domains
48
Next Time…
49
50

More Related Content

Similar to SDN approach.pptx

Radisys/Wind River: The Telcom Cloud - Deployment Strategies: SDN/NFV and Vir...
Radisys/Wind River: The Telcom Cloud - Deployment Strategies: SDN/NFV and Vir...Radisys/Wind River: The Telcom Cloud - Deployment Strategies: SDN/NFV and Vir...
Radisys/Wind River: The Telcom Cloud - Deployment Strategies: SDN/NFV and Vir...Radisys Corporation
 
Distributed Clouds and Software Defined Networking
Distributed Clouds and Software Defined NetworkingDistributed Clouds and Software Defined Networking
Distributed Clouds and Software Defined NetworkingUS-Ignite
 
SDN Security Talk - (ISC)2_3
SDN Security Talk - (ISC)2_3SDN Security Talk - (ISC)2_3
SDN Security Talk - (ISC)2_3Wen-Pai Lu
 
ONOS: Open Network Operating System. An Open-Source Distributed SDN Operating...
ONOS: Open Network Operating System. An Open-Source Distributed SDN Operating...ONOS: Open Network Operating System. An Open-Source Distributed SDN Operating...
ONOS: Open Network Operating System. An Open-Source Distributed SDN Operating...ON.LAB
 
Introduction to Software Defined Networking (SDN) presentation by Warren Finc...
Introduction to Software Defined Networking (SDN) presentation by Warren Finc...Introduction to Software Defined Networking (SDN) presentation by Warren Finc...
Introduction to Software Defined Networking (SDN) presentation by Warren Finc...APNIC
 
SDN Multi-Controller Domain.pptx
SDN Multi-Controller Domain.pptxSDN Multi-Controller Domain.pptx
SDN Multi-Controller Domain.pptxSandeep Maurya
 
btNOG 9 presentation Introduction to Software Defined Networking
btNOG 9 presentation Introduction to Software Defined NetworkingbtNOG 9 presentation Introduction to Software Defined Networking
btNOG 9 presentation Introduction to Software Defined NetworkingAPNIC
 
Naveen nimmu sdn future of networking
Naveen nimmu sdn   future of networkingNaveen nimmu sdn   future of networking
Naveen nimmu sdn future of networkingOpenSourceIndia
 
Naveen nimmu sdn future of networking
Naveen nimmu sdn   future of networkingNaveen nimmu sdn   future of networking
Naveen nimmu sdn future of networkingsuniltomar04
 
Software-Defined Networking(SDN):A New Approach to Networking
Software-Defined Networking(SDN):A New Approach to NetworkingSoftware-Defined Networking(SDN):A New Approach to Networking
Software-Defined Networking(SDN):A New Approach to NetworkingAnju Ann
 
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014SAMeh Zaghloul
 
An overview of SDN & Openflow
An overview of SDN & OpenflowAn overview of SDN & Openflow
An overview of SDN & OpenflowPeyman Faizian
 
Understanding network and service virtualization
Understanding network and service virtualizationUnderstanding network and service virtualization
Understanding network and service virtualizationSDN Hub
 
Introduction to OpenFlow, SDN and NFV
Introduction to OpenFlow, SDN and NFVIntroduction to OpenFlow, SDN and NFV
Introduction to OpenFlow, SDN and NFVKingston Smiler
 
Software Defined Networks
Software Defined NetworksSoftware Defined Networks
Software Defined NetworksShreeya Shah
 

Similar to SDN approach.pptx (20)

Radisys/Wind River: The Telcom Cloud - Deployment Strategies: SDN/NFV and Vir...
Radisys/Wind River: The Telcom Cloud - Deployment Strategies: SDN/NFV and Vir...Radisys/Wind River: The Telcom Cloud - Deployment Strategies: SDN/NFV and Vir...
Radisys/Wind River: The Telcom Cloud - Deployment Strategies: SDN/NFV and Vir...
 
Distributed Clouds and Software Defined Networking
Distributed Clouds and Software Defined NetworkingDistributed Clouds and Software Defined Networking
Distributed Clouds and Software Defined Networking
 
SDN Security Talk - (ISC)2_3
SDN Security Talk - (ISC)2_3SDN Security Talk - (ISC)2_3
SDN Security Talk - (ISC)2_3
 
ONOS: Open Network Operating System. An Open-Source Distributed SDN Operating...
ONOS: Open Network Operating System. An Open-Source Distributed SDN Operating...ONOS: Open Network Operating System. An Open-Source Distributed SDN Operating...
ONOS: Open Network Operating System. An Open-Source Distributed SDN Operating...
 
Introduction to Software Defined Networking (SDN) presentation by Warren Finc...
Introduction to Software Defined Networking (SDN) presentation by Warren Finc...Introduction to Software Defined Networking (SDN) presentation by Warren Finc...
Introduction to Software Defined Networking (SDN) presentation by Warren Finc...
 
Introduction to Software Defined Networking (SDN)
Introduction to Software Defined Networking (SDN)Introduction to Software Defined Networking (SDN)
Introduction to Software Defined Networking (SDN)
 
SDN Multi-Controller Domain.pptx
SDN Multi-Controller Domain.pptxSDN Multi-Controller Domain.pptx
SDN Multi-Controller Domain.pptx
 
OpenFlow Tutorial
OpenFlow TutorialOpenFlow Tutorial
OpenFlow Tutorial
 
btNOG 9 presentation Introduction to Software Defined Networking
btNOG 9 presentation Introduction to Software Defined NetworkingbtNOG 9 presentation Introduction to Software Defined Networking
btNOG 9 presentation Introduction to Software Defined Networking
 
Networking revolution
Networking revolutionNetworking revolution
Networking revolution
 
Naveen nimmu sdn future of networking
Naveen nimmu sdn   future of networkingNaveen nimmu sdn   future of networking
Naveen nimmu sdn future of networking
 
Naveen nimmu sdn future of networking
Naveen nimmu sdn   future of networkingNaveen nimmu sdn   future of networking
Naveen nimmu sdn future of networking
 
SDN basics
SDN basicsSDN basics
SDN basics
 
10 sdn-vir-6up
10 sdn-vir-6up10 sdn-vir-6up
10 sdn-vir-6up
 
Software-Defined Networking(SDN):A New Approach to Networking
Software-Defined Networking(SDN):A New Approach to NetworkingSoftware-Defined Networking(SDN):A New Approach to Networking
Software-Defined Networking(SDN):A New Approach to Networking
 
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
SDN 101: Software Defined Networking Course - Sameh Zaghloul/IBM - 2014
 
An overview of SDN & Openflow
An overview of SDN & OpenflowAn overview of SDN & Openflow
An overview of SDN & Openflow
 
Understanding network and service virtualization
Understanding network and service virtualizationUnderstanding network and service virtualization
Understanding network and service virtualization
 
Introduction to OpenFlow, SDN and NFV
Introduction to OpenFlow, SDN and NFVIntroduction to OpenFlow, SDN and NFV
Introduction to OpenFlow, SDN and NFV
 
Software Defined Networks
Software Defined NetworksSoftware Defined Networks
Software Defined Networks
 

Recently uploaded

Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionDr.Costas Sachpazis
 
DATA ANALYTICS PPT definition usage example
DATA ANALYTICS PPT definition usage exampleDATA ANALYTICS PPT definition usage example
DATA ANALYTICS PPT definition usage examplePragyanshuParadkar1
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girlsssuser7cb4ff
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfAsst.prof M.Gokilavani
 
Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...VICTOR MAESTRE RAMIREZ
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ
 
Work Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvWork Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvLewisJB
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...asadnawaz62
 
Effects of rheological properties on mixing
Effects of rheological properties on mixingEffects of rheological properties on mixing
Effects of rheological properties on mixingviprabot1
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.eptoze12
 
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEINFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEroselinkalist12
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AIabhishek36461
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)Dr SOUNDIRARAJ N
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 

Recently uploaded (20)

Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
 
DATA ANALYTICS PPT definition usage example
DATA ANALYTICS PPT definition usage exampleDATA ANALYTICS PPT definition usage example
DATA ANALYTICS PPT definition usage example
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girls
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
 
Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
 
Design and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdfDesign and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdf
 
Work Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvWork Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvv
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
 
Effects of rheological properties on mixing
Effects of rheological properties on mixingEffects of rheological properties on mixing
Effects of rheological properties on mixing
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEINFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AI
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 

SDN approach.pptx

  • 1. 6.888 Lecture 14: Software Defined Networking Mohammad Alizadeh Spring 2016  Many thanks to Nick McKeown (Stanford), Jennifer Rexford (Princeton), Scott Shenker (Berkeley), Nick Feamster (Princeton), Li Erran Li (Columbia), Yashar Ganjali (Toronto) 1
  • 2. Outline What is SDN? OpenFlow basics Why is SDN happening now? (a brief history) 4D discussion 2
  • 4. Software Defined Network A network in which the control plane is physically separate from the data plane. and A single (logically centralized) control plane controls several forwarding devices. 4
  • 5. Software Defined Network (SDN) Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Control Control Control Control Control Global Network Map Control Plane Control Program Control Program Control Program 5
  • 6. What You Said “Overall, the idea of SDN feels a little bit unsettling to me because it is proposing to change one of the main reasons for the success of computer networks: fully decentralized control. Once we introduce a centralized entity to control the network we have to make sure that it doesn’t fail, which I think is very difficult.” 6
  • 7. Entire backbone runs on SDN A Major Trend in Networking Bought for $1.2 billion (mostly cash) 7
  • 8. The Networking “Planes” Data plane: processing and delivery of packets with local forwarding state – Forwarding state + packet header  forwarding decision – Filtering, buffering, scheduling Control plane: computing the forwarding state in routers – Determines how and where packets are forwarded – Routing, traffic engineering, failure detection/recovery, … Management plane: configuring and tuning the network – Traffic engineering, ACL config, device provisioning, … 8
  • 9. Timescales Data Control Management Time- scale Packet (nsec) Event (10 msec to sec) Human (min to hours) Location Linecard hardware Router software Humans or scripts 9
  • 10. Data and Control Planes Switching Fabric Processor Line card Line card Line card Line card Line card Line card data plane control plane 10
  • 11. Data Plane Streaming algorithms on packets – Matching on some header bits – Perform some actions Example: IP Forwarding host host host LAN 1 ... host host host LAN 2 ... router router router WAN WAN 1.2.3.4 1.2.3.7 1.2.3.156 5.6.7.8 5.6.7.9 1.2.3.0/24 5.6.7.0/24 forwarding table 11
  • 12. Control Plane Compute paths the packets will follow – Populate forwarding tables – Traditionally, a distributed protocol Example: Link-state routing (OSPF, IS-IS) – Flood the entire topology to all nodes – Each node computes shortest paths – Dijkstra’s algorithm 12
  • 13. 13
  • 14. 1 2 3 “If , send to 3” Data “If a packet is going to B, then send it to output 3” 1. Figure out which routers and links are present. 2. Run Dijkstra’s algorithm to find shortest paths. 14
  • 15. Management Plane Traffic Engineering: setting the weights – Inversely proportional to link capacity? – Proportional to propagation delay? – Network-wide optimization based on traffic? 3 2 2 1 1 3 1 4 5 3 3 15
  • 16. Challenges (Too) many task-specific control mechanisms – No modularity, limited functionality Indirect control – Must invert protocol behavior, “coax” it to do what you want – Ex. Changing weights instead of paths for TE Uncoordinated control – Cannot control which router updates first Interacting protocols and mechanisms – Routing, addressing, access control, QoS The network is • Hard to reason about • Hard to evolve • Expensive 16
  • 17. Example 1: Inter-domain Routing Today’s inter-domain routing protocol, BGP, artificially constrains routes - Routing only on destination IP address blocks - Can only influence immediate neighbors - Very difficult to incorporate other information Application-specific peering – Route video traffic one way, and non-video another Blocking denial-of-service traffic – Dropping unwanted traffic further upstream Inbound traffic engineering – Splitting incoming traffic over multiple peering links 17
  • 18. Two locations, each with data center & front office All routers exchange routes over all links R1 R2 R5 R4 R3 Chicago (chi) New York (nyc) Data Center Front Office Example 2: Access Control 18
  • 19. R1 R2 R5 R4 R3 Chicago (chi) New York (nyc) Data Center chi-DC chi-FO nyc-DC nyc-FO Front Office Example 2: Access Control 19
  • 20. R1 R2 R5 R4 R3 Data Center chi-DC chi-FO nyc-DC nyc-FO Packet filter: Drop nyc-FO -> * Permit * Packet filter: Drop chi-FO -> * Permit * Front Office chi nyc Example 2: Access Control 20
  • 21. A new short-cut link added between data centers Intended for backup traffic between centers R1 R2 R5 R4 R3 Data Center Packet filter: Drop nyc-FO -> * Permit * Packet filter: Drop chi-FO -> * Permit * Front Office chi nyc Example 2: Access Control 21
  • 22. Oops – new link lets packets violate access control policy! Routing changed, but Packet filters don’t update automatically R1 R2 R5 R4 R3 Data Center Packet filter: Drop nyc-FO -> * Permit * Packet filter: Drop chi-FO -> * Permit * Front Office chi nyc Example 2: Access Control 22
  • 23. Custom Hardware Custom Hardware Custom Hardware Custom Hardware Custom Hardware OS OS OS OS OS Network OS Feature Feature How SDN Changes the Network Feature Feature Feature Feature Feature Feature Feature Feature Feature Feature 23 23
  • 24. Control Program 1 Network OS 1. Open interface to packet forwarding 3. Consistent, up-to-date global network view 2. At least one Network OS probably many. Open- and closed-source Software Defined Network (SDN) Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Control Program 2 24 24
  • 25. Network OS Network OS: distributed system that creates a consistent, up-to-date network view – Runs on servers (controllers) in the network – NOX, ONIX, Floodlight, Trema, OpenDaylight, HyperFlow, Kandoo, Beehive, Beacon, Maestro, … + more Uses forwarding abstraction to: – Get state information from forwarding elements – Give control directives to forwarding elements 25
  • 26. Control Program A Control Program B Network OS Software Defined Network (SDN) Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding Packet Forwarding 26
  • 27. Control Program Control program operates on view of network – Input: global network view (graph/database) – Output: configuration of each network device Control program is not a distributed system – Abstraction hides details of distributed state 27
  • 28. Forwarding Abstraction Purpose: Standard way of defining forwarding state – Flexible • Behavior specified by control plane • Built from basic set of forwarding primitives – Minimal • Streamlined for speed and low-power • Control program not vendor-specific OpenFlow is an example of such an abstraction 28
  • 29. Network OS Software Defined Network 29 Global Network View Control Program Virtual Topology Network Hypervisor
  • 30. Virtualization Simplifies Control Program A B A B Abstract Network View Global Network View AB drop Hypervisor then inserts flow entries as needed AB drop AB drop 30
  • 31. Does SDN Simplify the Network? 31
  • 32. What You Said “However, I remain skeptical that such an approach will actually simplify much in the long run. That is, the basic paradigm in networks (layers) is in fact a simple model. However, the ever-changing performance and functionality goals have forced more complexity into network design. I'm not sure if SDN will be able to maintain its simplified model as goals continue to evolve.” 32
  • 33. Does SDN Simplify the Network? Abstraction doesn’t eliminate complexity - NOS, Hypervisor are still complicated pieces of code SDN main achievements - Simplifies interface for control program (user-specific) - Pushes complexity into reusable code (SDN platform) Just like compilers…. 33
  • 35. OpenFlow Protocol Data Path (Hardware) Control Path OpenFlow Ethernet Switch Network OS Control Program A Control Program B OpenFlow Basics 35
  • 36. Control Program A Control Program B Network OS OpenFlow Basics Packet Forwarding Packet Forwarding Packet Forwarding Flow Table(s) “If header = p, send to port 4” “If header = ?, send to me” “If header = q, overwrite header with r, add header s, and send to ports 5,6” 36
  • 37. Primitives <Match, Action> Match arbitrary bits in headers: – Match on any header, or new header – Allows any flow granularity Action – Forward to port(s), drop, send to controller – Overwrite header with mask, push or pop – Forward at specific bit-rate Header Data Match: 1000x01xx0101001x
  • 38. OpenFlow Rules Exploit the flow table in switches, routers, and chipsets Rule (exact & wildcard) Action Statistics Rule (exact & wildcard) Action Statistics Rule (exact & wildcard) Action Statistics Rule (exact & wildcard) Default Action Statistics Flow 1. Flow 2. Flow 3. Flow N.
  • 39. Why is SDN happening now? 39
  • 40. The Road to SDN Active Networking: 1990s - First attempt make networks programmable - Demultiplexing packets to software programs, network virtualization, … Control/Dataplane Separation: 2003-2007 - ForCes [IETF], RCP, 4D [Princeton, CMU], SANE/Ethane [Stanford/Berkeley] - Open interfaces between data and control plane, logically centralized control OpenFlow API & Network Oses: 2008 - OpenFlow switch interface [Stanford] - NOX Network OS [Nicira] 40 N. Feamster et al., “The Road to SDN: An Intellectual History of Programmable Networks”, ACM SIGCOMM CCR 2014.
  • 41. SDN Drivers Rise of merchant switching silicon - Democratized switching - Vendors eager to unseat incumbents Cloud / Data centers - Operators face real network management problems - Extremely cost conscious; desire a lot of control The right balance between vision & pragmatism - OpenFlow compatible with existing hardware A “killer app”: Network virtualization 41
  • 42. Virtualization is Killer App for SDN Consider a multi-tenant datacenter - Want to allow each tenant to specify virtual topology - This defines their individual policies and requirements Datacenter’s network hypervisor compiles these virtual topologies into set of switch configurations - Takes 1000s of individual tenant virtual topologies - Computes configurations to implement all simultaneously This is what people are paying money for…. - Enabled by SDN’s ability to virtualize the network
  • 43. 4D 43
  • 44. 4D Decision: all management and control logic Dissemination: communicating with routers Discovery: topology and traffic monitoring Data: packet handling routers Decision Dissemination Discovery Data Network-level objectives Direct control Network- wide views
  • 45. What You Said “The paper reads more like a thought-exercise or meta discussion of the future SDN field than a presentation of research. I am surprised sigcomm published it.” “some good things about the way the paper was structured was that it mentioned that it had a lot of future work to do and didn't think it was a final solution. By at least addressing that it needs to continue to expand, the authors acknowledge they don't know the merits behind their solution…” 45
  • 46. What You Said “The most compelling aspect of SDN and of the 4D Approach proposed, in my opinion, is the ability to enable innovation. However, SDN taken to the extreme proposed in the 4D approach seems to me to significantly limit scalability and increase complexity.” 46
  • 47. What You Said “My concern is that, previous designs that is aware of the delay of updating network view, take the consideration right on their control (they have control rules and protocol that touch this directly). But SDN tries to hide this nature from the programmers. I am not sure if the design of the software, in the absence of these concerns, will end up with expected results.” 47
  • 48. Practical Challenges Scalability – Decision elements responsible for many routers Reliability – Surviving failures of decision elements and routers Response time – Delays between decision elements and routers Consistency – Ensuring multiple decision elements behave consistently Security – Network vulnerable to attacks on decision elements Interoperability – Legacy routers and neighboring domains 48
  • 50. 50

Editor's Notes

  1. Talk about forwarding & control planes
  2. 38