SlideShare a Scribd company logo
1 of 32
Download to read offline
1
The Future of Networking,
and the Past of Protocols
Scott Shenker
with Martín Casado, Teemu Koponen, Nick McKeown
(and many others….)
2
Software-Defined Networking
•  SDN clearly has advantages over status quo
•  But is SDN the “right” solution?
•  My talk: Not what SDN is, but why SDN is
3
Key to Internet Success: Layers
Applications
…built on…
…built on…
…built on…
…built on…
Reliable (or unreliable) transport
Best-effort global packet delivery
Best-effort local packet delivery
Physical transfer of bits
4
The Importance of Layering
•  Decomposed delivery into fundamental components
•  Independent but compatible innovation at each layer
•  An amazing success…
•  …but an academic failure
5
Built an Artifact, Not a Discipline
•  Other fields in “systems”: OS, DB, etc.
-  Teach basic principles
-  Are easily managed
-  Continue to evolve
•  Networking:
-  Teach big bag of protocols
-  Notoriously difficult to manage
-  Evolves very slowly
6
Why Does Networking Lag Behind?
•  Networks used to be simple
•  New control requirements led to great complexity
•  Fortunately, the infrastructure still works...
-  Only because of your great ability to master complexity
•  This ability to master complexity is both a blessing…
-  …and a curse!
7
A Simple Story About Complexity
•  ~1985: Don Norman visits Xerox PARC
-  Talks about user interfaces and stick shifts
8
What Was His Point?
•  The ability to master complexity is not the same as
the ability to extract simplicity
•  When first getting systems to work….
-  Focus on mastering complexity
•  When making system easy to use and understand
-  Focus on extracting simplicity
•  You will never succeed in extracting simplicity
-  If don’t recognize it is different from mastering complexity
9
What Is My Point?
•  Networking has never made the distinction…
•  And therefore has never made the transition
-  Still focused on mastering complexity
-  Little emphasis on extracting simplicity from control plane
•  Extracting simplicity builds intellectual foundations
-  Necessary for creating a discipline….
10
An Example Transition: Programming
•  Machine languages: no abstractions
-  Mastering complexity was crucial
•  Higher-level languages: OS and other abstractions
-  File system, virtual memory, abstract data types, ...
•  Modern languages: even more abstractions
-  Object orientation, garbage collection,…
Abstractions key to extracting simplicity
11
“The Power of Abstraction”
“Modularity based on abstraction
is the way things get done”
− Barbara Liskov
Abstractions è Interfaces è Modularity
What abstractions do we have in networking?
12
Layers are Great Abstractions
•  Layers only deal with the data plane
•  We have no powerful control plane abstractions!
•  How do we find those abstractions?
•  Define our problem, and then decompose it.
13
The Network Control Problem
•  Compute the configuration of each physical device
-  E.g., Forwarding tables, ACLs,…
•  Operate without communication guarantees
•  Operate within given network-level protocol
Only people who love complexity would find
this a reasonable request
14
Programming Analogy
•  What if programmers had to:
-  Specify where each bit was stored
-  Explicitly deal with all internal communication errors
-  Within a programming language with limited expressability
•  Programmers would redefine problem:
-  Define a higher level abstraction for memory
-  Build on reliable communication abstractions
-  Use a more general language
•  Abstractions divide problem into tractable pieces
-  Make task of control program easier…
15
From Requirements to Abstractions
1.  Operate without communication guarantees
Need an abstraction for distributed state
2.  Compute the configuration of each physical device
Need an abstraction that simplifies configuration
3.  Operate within given network-level protocol
Need an abstraction for general forwarding model
16
1. Distributed State Abstraction
•  Shield mechanisms from vagaries of distributed state
-  While allowing access to this state
•  Natural abstraction: global network view
-  Annotated network graph provided through an API
•  Control mechanism is now program using API
-  No longer a distributed protocol, now just a graph algorithm
-  E.g. Use Dijkstra rather than Bellman-Ford
17
2. Specification Abstraction
•  Control program should express desired behavior
•  It should not be responsible for implementing that
behavior on physical network infrastructure
•  Natural abstraction: simplified model of network
-  Simple model only enough detail to specify goals
•  This is “network virtualization”
18
Simple Example: Access Control
Global
Network
View
Abstract
Network
Model
19
3. Forwarding Abstraction
•  Control plane needs flexible forwarding model
•  Abstraction should not constrain control program
-  Should support whatever forwarding behaviors needed
•  It should hide details of underlying hardware
-  Crucial for evolving beyond vendor-specific solutions
20
•  SDN is defined precisely by these three abstractions
-  Distribution, forwarding, configuration
•  SDN not just a random good idea…
•  ...can be “derived” from decomposing network control
•  Fundamental validity and general applicability
My Entire Talk in One Sentence
21
Realizing These Abstractions
•  Core challenge:
-  make distributed control problem a logically centralized one
•  This involves designing a common distribution layer
-  Gathers information from network elements (topology)
-  Disseminates control commands to network elements
•  This is done by a “Network Operating System”
22
Control	
  Program	
  
So#ware	
  Defined	
  Network	
  (SDN)	
  
	
  
	
  
	
  
	
  
	
  
Network OS
Global Network View
Tradi4onal	
  Control	
  Mechanisms	
  Network	
  of	
  Switches	
  and/or	
  Routers	
  
Distributed algorithm running between neighbors
e.g. routing, access control
23
Major Change in Paradigm
•  No longer designing distributed control protocols
•  Now just defining a centralized control function
Configuration = Function(view)
•  This spells the end for distributed protocols
-  Easier to write, reason about, maintain, ….
•  Beginning of the “software era” of networking
-  Rate of change, nature of standards, different culture, etc.
24
2. Specification Abstraction
•  Abstraction is a simplified model of network
•  Control program merely configures abstract model
-  Abstract configuration = Function(abstract model)
•  Requires a new shared control layer:
-  Map abstract configuration to physical configuration
25
	
  
	
  
	
  
	
  
	
  
	
  
Network OS
Global Network View
Abstract Network Model
Control	
  Program	
  Network	
  Virtualiza4on	
  
So#ware	
  Defined	
  Network	
  
26
3. Forwarding Abstraction
•  Switches have two “brains”
-  Management CPU (smart but slow)
-  Forwarding ASIC (fast but dumb)
•  Need a forwarding abstraction for both
-  CPU abstraction can be almost anything
•  ASIC abstraction is much more subtle: OpenFlow
•  All this assumes switches are unit of abstraction
-  Why not fast, cheap fabrics? (in datacenters)
27
Keep in Mind
•  As we debate the finer points of OpenFlow
-  OF is a detail in the overall SDN architecture
•  OpenFlow is crucial for the industry
-  But a minor piece architecturally
•  Don’t let the tail wag the dog…
28
Dog: Clean Separation of Concerns
•  Control prgm: specify behavior on abstract model
-  Driven by Operator Requirements
•  Net Virt’n: map abstract model to global view
-  Driven by Specification Abstraction
•  NOS: map global view to physical switches
-  API: driven by Distributed State Abstraction
-  Switch/fabric interface: driven by Forwarding Abstraction
29
Final Words
•  Future of networking lies in finding right abstractions
-  The era of “a new protocol per problem” is over
•  Takes years to internalize and evaluate abstractions
-  Even longer to adjust to software-oriented culture
•  We are in the early stages of an intellectual voyage
-  We should keep our minds open while charting our course
30
Thank You…..

More Related Content

Similar to The Future of Networking, and the Past of Protocols

MPLS in DC and inter-DC networks: the unified forwarding mechanism for networ...
MPLS in DC and inter-DC networks: the unified forwarding mechanism for networ...MPLS in DC and inter-DC networks: the unified forwarding mechanism for networ...
MPLS in DC and inter-DC networks: the unified forwarding mechanism for networ...Dmitry Afanasiev
 
MPLS in DC and inter-DC networks: the unified forwarding mechanism for networ...
MPLS in DC and inter-DC networks: the unified forwarding mechanism for networ...MPLS in DC and inter-DC networks: the unified forwarding mechanism for networ...
MPLS in DC and inter-DC networks: the unified forwarding mechanism for networ...Yandex
 
Some Musings on OpenFlow and SDN for Enterprise Networks
Some Musings on OpenFlow and SDN for Enterprise NetworksSome Musings on OpenFlow and SDN for Enterprise Networks
Some Musings on OpenFlow and SDN for Enterprise NetworksOpen Networking Summits
 
bruce-sdn.pptx
bruce-sdn.pptxbruce-sdn.pptx
bruce-sdn.pptxSameer Ali
 
Software-Defined Networking Layers presentation
Software-Defined Networking Layers presentationSoftware-Defined Networking Layers presentation
Software-Defined Networking Layers presentationAbdullah Salama
 
Topic02-Architecture.pptx
Topic02-Architecture.pptxTopic02-Architecture.pptx
Topic02-Architecture.pptxImXaib
 
btNOG 5: Network Automation
btNOG 5: Network AutomationbtNOG 5: Network Automation
btNOG 5: Network AutomationAPNIC
 
Re-engineering Engineering: from a cathedral to a bazaar?
Re-engineering Engineering: from a cathedral to a bazaar?Re-engineering Engineering: from a cathedral to a bazaar?
Re-engineering Engineering: from a cathedral to a bazaar?Open Networking Summits
 
IEEE HPSR 2017 Keynote: Softwarized Dataplanes and the P^3 trade-offs: Progra...
IEEE HPSR 2017 Keynote: Softwarized Dataplanes and the P^3 trade-offs: Progra...IEEE HPSR 2017 Keynote: Softwarized Dataplanes and the P^3 trade-offs: Progra...
IEEE HPSR 2017 Keynote: Softwarized Dataplanes and the P^3 trade-offs: Progra...Christian Esteve Rothenberg
 
OpenStack Infrastructure at any Scale - Simple is BEST!? - - OpenStack最新情報セミ...
OpenStack Infrastructure at any Scale - Simple is BEST!? -  - OpenStack最新情報セミ...OpenStack Infrastructure at any Scale - Simple is BEST!? -  - OpenStack最新情報セミ...
OpenStack Infrastructure at any Scale - Simple is BEST!? - - OpenStack最新情報セミ...VirtualTech Japan Inc.
 
lect4_SDNbasic_openflow.pptx
lect4_SDNbasic_openflow.pptxlect4_SDNbasic_openflow.pptx
lect4_SDNbasic_openflow.pptxJesicaDcruz1
 
Network architecure (3).pptx
Network architecure (3).pptxNetwork architecure (3).pptx
Network architecure (3).pptxKaythry P
 

Similar to The Future of Networking, and the Past of Protocols (20)

MPLS in DC and inter-DC networks: the unified forwarding mechanism for networ...
MPLS in DC and inter-DC networks: the unified forwarding mechanism for networ...MPLS in DC and inter-DC networks: the unified forwarding mechanism for networ...
MPLS in DC and inter-DC networks: the unified forwarding mechanism for networ...
 
MPLS in DC and inter-DC networks: the unified forwarding mechanism for networ...
MPLS in DC and inter-DC networks: the unified forwarding mechanism for networ...MPLS in DC and inter-DC networks: the unified forwarding mechanism for networ...
MPLS in DC and inter-DC networks: the unified forwarding mechanism for networ...
 
SDN approach.pptx
SDN approach.pptxSDN approach.pptx
SDN approach.pptx
 
Some Musings on OpenFlow and SDN for Enterprise Networks
Some Musings on OpenFlow and SDN for Enterprise NetworksSome Musings on OpenFlow and SDN for Enterprise Networks
Some Musings on OpenFlow and SDN for Enterprise Networks
 
10. Lec X- SDN.pptx
10. Lec X- SDN.pptx10. Lec X- SDN.pptx
10. Lec X- SDN.pptx
 
bruce-sdn.pptx
bruce-sdn.pptxbruce-sdn.pptx
bruce-sdn.pptx
 
SDN Abstractions
SDN AbstractionsSDN Abstractions
SDN Abstractions
 
Software-Defined Networking Layers presentation
Software-Defined Networking Layers presentationSoftware-Defined Networking Layers presentation
Software-Defined Networking Layers presentation
 
Topic02-Architecture.pptx
Topic02-Architecture.pptxTopic02-Architecture.pptx
Topic02-Architecture.pptx
 
btNOG 5: Network Automation
btNOG 5: Network AutomationbtNOG 5: Network Automation
btNOG 5: Network Automation
 
Re-engineering Engineering: from a cathedral to a bazaar?
Re-engineering Engineering: from a cathedral to a bazaar?Re-engineering Engineering: from a cathedral to a bazaar?
Re-engineering Engineering: from a cathedral to a bazaar?
 
IEEE HPSR 2017 Keynote: Softwarized Dataplanes and the P^3 trade-offs: Progra...
IEEE HPSR 2017 Keynote: Softwarized Dataplanes and the P^3 trade-offs: Progra...IEEE HPSR 2017 Keynote: Softwarized Dataplanes and the P^3 trade-offs: Progra...
IEEE HPSR 2017 Keynote: Softwarized Dataplanes and the P^3 trade-offs: Progra...
 
Module 1
Module 1Module 1
Module 1
 
4_SDN.pdf
4_SDN.pdf4_SDN.pdf
4_SDN.pdf
 
Introduction to SDN
Introduction to SDNIntroduction to SDN
Introduction to SDN
 
sdnppt.pdf
sdnppt.pdfsdnppt.pdf
sdnppt.pdf
 
OpenStack Infrastructure at any Scale - Simple is BEST!? - - OpenStack最新情報セミ...
OpenStack Infrastructure at any Scale - Simple is BEST!? -  - OpenStack最新情報セミ...OpenStack Infrastructure at any Scale - Simple is BEST!? -  - OpenStack最新情報セミ...
OpenStack Infrastructure at any Scale - Simple is BEST!? - - OpenStack最新情報セミ...
 
lect4_SDNbasic_openflow.pptx
lect4_SDNbasic_openflow.pptxlect4_SDNbasic_openflow.pptx
lect4_SDNbasic_openflow.pptx
 
Sdn&security
Sdn&securitySdn&security
Sdn&security
 
Network architecure (3).pptx
Network architecure (3).pptxNetwork architecure (3).pptx
Network architecure (3).pptx
 

More from Open Networking Summits

CORD: Central Office Re-architected as a Datacenter
CORD: Central Office Re-architected as a DatacenterCORD: Central Office Re-architected as a Datacenter
CORD: Central Office Re-architected as a DatacenterOpen Networking Summits
 
[Webinar Slides] Programming the Network Dataplane in P4
[Webinar Slides] Programming the Network Dataplane in P4[Webinar Slides] Programming the Network Dataplane in P4
[Webinar Slides] Programming the Network Dataplane in P4Open Networking Summits
 
OPNFV Webinar – No Time to Wait: Accelerating NFV Time to Market Through Open...
OPNFV Webinar – No Time to Wait: Accelerating NFV Time to Market Through Open...OPNFV Webinar – No Time to Wait: Accelerating NFV Time to Market Through Open...
OPNFV Webinar – No Time to Wait: Accelerating NFV Time to Market Through Open...Open Networking Summits
 
Software Defined Networking: Enabling The Mobile Workplace
Software Defined Networking: Enabling The Mobile WorkplaceSoftware Defined Networking: Enabling The Mobile Workplace
Software Defined Networking: Enabling The Mobile WorkplaceOpen Networking Summits
 
Software Defined Networks Network Function Virtualization Pivotal Technologies
Software Defined Networks Network Function Virtualization Pivotal TechnologiesSoftware Defined Networks Network Function Virtualization Pivotal Technologies
Software Defined Networks Network Function Virtualization Pivotal TechnologiesOpen Networking Summits
 
Spreading NFV through the Network: the ETSI NFV use cases
Spreading NFV through the Network: the ETSI NFV use casesSpreading NFV through the Network: the ETSI NFV use cases
Spreading NFV through the Network: the ETSI NFV use casesOpen Networking Summits
 
Ranges & Cross-Entrance Consistency with OpenFlow
Ranges & Cross-Entrance Consistency with OpenFlowRanges & Cross-Entrance Consistency with OpenFlow
Ranges & Cross-Entrance Consistency with OpenFlowOpen Networking Summits
 
On the Necessity of Time-based Updates in SDN
On the Necessity of Time-based Updates in SDNOn the Necessity of Time-based Updates in SDN
On the Necessity of Time-based Updates in SDNOpen Networking Summits
 
Control Exchange Points: Providing QoS-en abled End-to-End Services via SDN-b...
Control Exchange Points: Providing QoS-en abled End-to-End Services via SDN-b...Control Exchange Points: Providing QoS-en abled End-to-End Services via SDN-b...
Control Exchange Points: Providing QoS-en abled End-to-End Services via SDN-b...Open Networking Summits
 
ESPRES: Easy Scheduling and Prioritization for SDN
ESPRES: Easy Scheduling and Prioritization for SDNESPRES: Easy Scheduling and Prioritization for SDN
ESPRES: Easy Scheduling and Prioritization for SDNOpen Networking Summits
 
SDN & OPTICAL FLOW STEERING FOR NETWORK FUNCTION VIRTUALIZATION
SDN & OPTICAL FLOW STEERING FOR NETWORK FUNCTION VIRTUALIZATIONSDN & OPTICAL FLOW STEERING FOR NETWORK FUNCTION VIRTUALIZATION
SDN & OPTICAL FLOW STEERING FOR NETWORK FUNCTION VIRTUALIZATIONOpen Networking Summits
 
SoftMoW: A Dynamic and Scalable Software Defined Architecture for Cellular WANs
SoftMoW: A Dynamic and Scalable Software Defined Architecture for Cellular WANsSoftMoW: A Dynamic and Scalable Software Defined Architecture for Cellular WANs
SoftMoW: A Dynamic and Scalable Software Defined Architecture for Cellular WANsOpen Networking Summits
 
RadioVisor - A Slicing Plane for Radio Access Networks
RadioVisor - A Slicing Plane for Radio Access NetworksRadioVisor - A Slicing Plane for Radio Access Networks
RadioVisor - A Slicing Plane for Radio Access NetworksOpen Networking Summits
 
Enabling SDN in old school networks with Software-Controlled Routing Protocols
Enabling SDN in old school networks with Software-Controlled Routing ProtocolsEnabling SDN in old school networks with Software-Controlled Routing Protocols
Enabling SDN in old school networks with Software-Controlled Routing ProtocolsOpen Networking Summits
 

More from Open Networking Summits (20)

CORD: Central Office Re-architected as a Datacenter
CORD: Central Office Re-architected as a DatacenterCORD: Central Office Re-architected as a Datacenter
CORD: Central Office Re-architected as a Datacenter
 
[Webinar Slides] Programming the Network Dataplane in P4
[Webinar Slides] Programming the Network Dataplane in P4[Webinar Slides] Programming the Network Dataplane in P4
[Webinar Slides] Programming the Network Dataplane in P4
 
OPNFV Webinar – No Time to Wait: Accelerating NFV Time to Market Through Open...
OPNFV Webinar – No Time to Wait: Accelerating NFV Time to Market Through Open...OPNFV Webinar – No Time to Wait: Accelerating NFV Time to Market Through Open...
OPNFV Webinar – No Time to Wait: Accelerating NFV Time to Market Through Open...
 
Learnings from Carrier SDN Deployments
Learnings from Carrier SDN DeploymentsLearnings from Carrier SDN Deployments
Learnings from Carrier SDN Deployments
 
Software Defined Networking: Enabling The Mobile Workplace
Software Defined Networking: Enabling The Mobile WorkplaceSoftware Defined Networking: Enabling The Mobile Workplace
Software Defined Networking: Enabling The Mobile Workplace
 
Application Driven SDN
Application Driven SDNApplication Driven SDN
Application Driven SDN
 
Software Defined Networks Network Function Virtualization Pivotal Technologies
Software Defined Networks Network Function Virtualization Pivotal TechnologiesSoftware Defined Networks Network Function Virtualization Pivotal Technologies
Software Defined Networks Network Function Virtualization Pivotal Technologies
 
NFV & SDN Customer Deployments
NFV & SDN Customer DeploymentsNFV & SDN Customer Deployments
NFV & SDN Customer Deployments
 
Automation of end-to-end QOS
Automation of end-to-end QOSAutomation of end-to-end QOS
Automation of end-to-end QOS
 
Building a Digital Telco
Building a Digital TelcoBuilding a Digital Telco
Building a Digital Telco
 
Spreading NFV through the Network: the ETSI NFV use cases
Spreading NFV through the Network: the ETSI NFV use casesSpreading NFV through the Network: the ETSI NFV use cases
Spreading NFV through the Network: the ETSI NFV use cases
 
BeHop : SDN for Dense WiFi Networks
BeHop : SDN for Dense WiFi NetworksBeHop : SDN for Dense WiFi Networks
BeHop : SDN for Dense WiFi Networks
 
Ranges & Cross-Entrance Consistency with OpenFlow
Ranges & Cross-Entrance Consistency with OpenFlowRanges & Cross-Entrance Consistency with OpenFlow
Ranges & Cross-Entrance Consistency with OpenFlow
 
On the Necessity of Time-based Updates in SDN
On the Necessity of Time-based Updates in SDNOn the Necessity of Time-based Updates in SDN
On the Necessity of Time-based Updates in SDN
 
Control Exchange Points: Providing QoS-en abled End-to-End Services via SDN-b...
Control Exchange Points: Providing QoS-en abled End-to-End Services via SDN-b...Control Exchange Points: Providing QoS-en abled End-to-End Services via SDN-b...
Control Exchange Points: Providing QoS-en abled End-to-End Services via SDN-b...
 
ESPRES: Easy Scheduling and Prioritization for SDN
ESPRES: Easy Scheduling and Prioritization for SDNESPRES: Easy Scheduling and Prioritization for SDN
ESPRES: Easy Scheduling and Prioritization for SDN
 
SDN & OPTICAL FLOW STEERING FOR NETWORK FUNCTION VIRTUALIZATION
SDN & OPTICAL FLOW STEERING FOR NETWORK FUNCTION VIRTUALIZATIONSDN & OPTICAL FLOW STEERING FOR NETWORK FUNCTION VIRTUALIZATION
SDN & OPTICAL FLOW STEERING FOR NETWORK FUNCTION VIRTUALIZATION
 
SoftMoW: A Dynamic and Scalable Software Defined Architecture for Cellular WANs
SoftMoW: A Dynamic and Scalable Software Defined Architecture for Cellular WANsSoftMoW: A Dynamic and Scalable Software Defined Architecture for Cellular WANs
SoftMoW: A Dynamic and Scalable Software Defined Architecture for Cellular WANs
 
RadioVisor - A Slicing Plane for Radio Access Networks
RadioVisor - A Slicing Plane for Radio Access NetworksRadioVisor - A Slicing Plane for Radio Access Networks
RadioVisor - A Slicing Plane for Radio Access Networks
 
Enabling SDN in old school networks with Software-Controlled Routing Protocols
Enabling SDN in old school networks with Software-Controlled Routing ProtocolsEnabling SDN in old school networks with Software-Controlled Routing Protocols
Enabling SDN in old school networks with Software-Controlled Routing Protocols
 

Recently uploaded

Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 

The Future of Networking, and the Past of Protocols

  • 1.
  • 2.
  • 3. 1 The Future of Networking, and the Past of Protocols Scott Shenker with Martín Casado, Teemu Koponen, Nick McKeown (and many others….)
  • 4. 2 Software-Defined Networking •  SDN clearly has advantages over status quo •  But is SDN the “right” solution? •  My talk: Not what SDN is, but why SDN is
  • 5. 3 Key to Internet Success: Layers Applications …built on… …built on… …built on… …built on… Reliable (or unreliable) transport Best-effort global packet delivery Best-effort local packet delivery Physical transfer of bits
  • 6. 4 The Importance of Layering •  Decomposed delivery into fundamental components •  Independent but compatible innovation at each layer •  An amazing success… •  …but an academic failure
  • 7. 5 Built an Artifact, Not a Discipline •  Other fields in “systems”: OS, DB, etc. -  Teach basic principles -  Are easily managed -  Continue to evolve •  Networking: -  Teach big bag of protocols -  Notoriously difficult to manage -  Evolves very slowly
  • 8. 6 Why Does Networking Lag Behind? •  Networks used to be simple •  New control requirements led to great complexity •  Fortunately, the infrastructure still works... -  Only because of your great ability to master complexity •  This ability to master complexity is both a blessing… -  …and a curse!
  • 9. 7 A Simple Story About Complexity •  ~1985: Don Norman visits Xerox PARC -  Talks about user interfaces and stick shifts
  • 10. 8 What Was His Point? •  The ability to master complexity is not the same as the ability to extract simplicity •  When first getting systems to work…. -  Focus on mastering complexity •  When making system easy to use and understand -  Focus on extracting simplicity •  You will never succeed in extracting simplicity -  If don’t recognize it is different from mastering complexity
  • 11. 9 What Is My Point? •  Networking has never made the distinction… •  And therefore has never made the transition -  Still focused on mastering complexity -  Little emphasis on extracting simplicity from control plane •  Extracting simplicity builds intellectual foundations -  Necessary for creating a discipline….
  • 12. 10 An Example Transition: Programming •  Machine languages: no abstractions -  Mastering complexity was crucial •  Higher-level languages: OS and other abstractions -  File system, virtual memory, abstract data types, ... •  Modern languages: even more abstractions -  Object orientation, garbage collection,… Abstractions key to extracting simplicity
  • 13. 11 “The Power of Abstraction” “Modularity based on abstraction is the way things get done” − Barbara Liskov Abstractions è Interfaces è Modularity What abstractions do we have in networking?
  • 14. 12 Layers are Great Abstractions •  Layers only deal with the data plane •  We have no powerful control plane abstractions! •  How do we find those abstractions? •  Define our problem, and then decompose it.
  • 15. 13 The Network Control Problem •  Compute the configuration of each physical device -  E.g., Forwarding tables, ACLs,… •  Operate without communication guarantees •  Operate within given network-level protocol Only people who love complexity would find this a reasonable request
  • 16. 14 Programming Analogy •  What if programmers had to: -  Specify where each bit was stored -  Explicitly deal with all internal communication errors -  Within a programming language with limited expressability •  Programmers would redefine problem: -  Define a higher level abstraction for memory -  Build on reliable communication abstractions -  Use a more general language •  Abstractions divide problem into tractable pieces -  Make task of control program easier…
  • 17. 15 From Requirements to Abstractions 1.  Operate without communication guarantees Need an abstraction for distributed state 2.  Compute the configuration of each physical device Need an abstraction that simplifies configuration 3.  Operate within given network-level protocol Need an abstraction for general forwarding model
  • 18. 16 1. Distributed State Abstraction •  Shield mechanisms from vagaries of distributed state -  While allowing access to this state •  Natural abstraction: global network view -  Annotated network graph provided through an API •  Control mechanism is now program using API -  No longer a distributed protocol, now just a graph algorithm -  E.g. Use Dijkstra rather than Bellman-Ford
  • 19. 17 2. Specification Abstraction •  Control program should express desired behavior •  It should not be responsible for implementing that behavior on physical network infrastructure •  Natural abstraction: simplified model of network -  Simple model only enough detail to specify goals •  This is “network virtualization”
  • 20. 18 Simple Example: Access Control Global Network View Abstract Network Model
  • 21. 19 3. Forwarding Abstraction •  Control plane needs flexible forwarding model •  Abstraction should not constrain control program -  Should support whatever forwarding behaviors needed •  It should hide details of underlying hardware -  Crucial for evolving beyond vendor-specific solutions
  • 22. 20 •  SDN is defined precisely by these three abstractions -  Distribution, forwarding, configuration •  SDN not just a random good idea… •  ...can be “derived” from decomposing network control •  Fundamental validity and general applicability My Entire Talk in One Sentence
  • 23. 21 Realizing These Abstractions •  Core challenge: -  make distributed control problem a logically centralized one •  This involves designing a common distribution layer -  Gathers information from network elements (topology) -  Disseminates control commands to network elements •  This is done by a “Network Operating System”
  • 24. 22 Control  Program   So#ware  Defined  Network  (SDN)             Network OS Global Network View Tradi4onal  Control  Mechanisms  Network  of  Switches  and/or  Routers   Distributed algorithm running between neighbors e.g. routing, access control
  • 25. 23 Major Change in Paradigm •  No longer designing distributed control protocols •  Now just defining a centralized control function Configuration = Function(view) •  This spells the end for distributed protocols -  Easier to write, reason about, maintain, …. •  Beginning of the “software era” of networking -  Rate of change, nature of standards, different culture, etc.
  • 26. 24 2. Specification Abstraction •  Abstraction is a simplified model of network •  Control program merely configures abstract model -  Abstract configuration = Function(abstract model) •  Requires a new shared control layer: -  Map abstract configuration to physical configuration
  • 27. 25             Network OS Global Network View Abstract Network Model Control  Program  Network  Virtualiza4on   So#ware  Defined  Network  
  • 28. 26 3. Forwarding Abstraction •  Switches have two “brains” -  Management CPU (smart but slow) -  Forwarding ASIC (fast but dumb) •  Need a forwarding abstraction for both -  CPU abstraction can be almost anything •  ASIC abstraction is much more subtle: OpenFlow •  All this assumes switches are unit of abstraction -  Why not fast, cheap fabrics? (in datacenters)
  • 29. 27 Keep in Mind •  As we debate the finer points of OpenFlow -  OF is a detail in the overall SDN architecture •  OpenFlow is crucial for the industry -  But a minor piece architecturally •  Don’t let the tail wag the dog…
  • 30. 28 Dog: Clean Separation of Concerns •  Control prgm: specify behavior on abstract model -  Driven by Operator Requirements •  Net Virt’n: map abstract model to global view -  Driven by Specification Abstraction •  NOS: map global view to physical switches -  API: driven by Distributed State Abstraction -  Switch/fabric interface: driven by Forwarding Abstraction
  • 31. 29 Final Words •  Future of networking lies in finding right abstractions -  The era of “a new protocol per problem” is over •  Takes years to internalize and evaluate abstractions -  Even longer to adjust to software-oriented culture •  We are in the early stages of an intellectual voyage -  We should keep our minds open while charting our course