OpenFlow and Open Networking - An Introduction and Overview

3,082 views

Published on

Peter Christy's introduction to OpenFlow - Background on the reasons why researchers became interested in OpenFlow. Paul Baran's clever solution for transmitting voice communications as a series of packets. A brief history of OpenFlow. And a look at OpenFlow beyond the research phase. Finally the author introduces a radical thought - Software Defined Networks (SDN) without OpenFlow.

Published in: Technology, Business
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,082
On SlideShare
0
From Embeds
0
Number of Embeds
27
Actions
Shares
0
Downloads
263
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

OpenFlow and Open Networking - An Introduction and Overview

  1. 1. OpenFlow and Open Networking An Introduction and Overview Peter Christy, IRG, pchristy@irg-intl.com February 2012 February 2012 1
  2. 2. What?: Modernizing the Control Plane• This is all about modernizing switch the control plane of a network switch switch switch switch switch switch switch switch switch February 2012 2
  3. 3. What?: Modernizing the Control Plane• This is all about modernizing switch the control plane of a network switch o The data plane does the work of moving switch switch packets through the network switch switch switch switch switch switch February 2012 3
  4. 4. What?: Modernizing the Control Plane• This is all about modernizing switch the control plane of a network switch o The data plane does the work of moving switch switch packets through the network o The control plane is the means by which the switch data plane is configured, and how switch exceptions are handled switch switch switch switch February 2012 4
  5. 5. The Data Plane• A network consists of a set of switch interconnected switches. switch switch switch switch switch switch switch switch switch February 2012 5
  6. 6. The Data Plane• A network consists of a set of switch interconnected switches. switch• Each switch is a “server” system switch switch with a purpose built operating switch switch system and application software, as switch well as specialized hardware in the switch switch form of line cards and packet forwarding hardware (PFH). switch Server Applications O/S Kernel PFH February 2012 6
  7. 7. The Data Plane• A network consists of a set of switch interconnected switches.• Each switch is a “server” system switch switch with a purpose built operating switch system and application software, as switch well as specialized hardware in the switch form of line cards and packet switch forwarding hardware (PFH). switch switch• The packet forwarding hardware operates by examining the various header bits on the packet, switch consulting a set of rules stored in high speed associative memory (CAM) and if an applicable rule is Server Applications CAM found, using the rule data to select rules the output link, assign a queuing O/S priority, and possibility rewrite some of the header bits. PFH Kernel PFH February 2012 7
  8. 8. The Control Plane• For most packets in a data center switch or SP network, the actions of the switch network are dictated by stored switch switch rules, executed by the PFH switch switch switch switch switch switch CAM rules PFH February 2012 8
  9. 9. The Control Plane• For most packets in a data center switch or SP network, the actions of the switch network are dictated by stored switch switch rules, executed by the PFH switch switch• The “control plane” is the means switch by which the PFH rules are switch switch managed. switch CAM rules PFH February 2012 9
  10. 10. The Control Plane• For most packets in a data center switch or SP network, the actions of the network are dictated by stored switch switch switch rules, executed by the PFH• The “control plane” is the means switch switch by which the PFH rules are switch managed. switch switch• This can be done by command-line interactions with a network switch administrator (switch configuration) and then through the exchange of standardized CAM control information with adjacent rules switches (e.g., routing protocols) PFH February 2012 10
  11. 11. History of OpenFlow• “OpenFlow” began as an idea switch about how research networks switch could be built. switch switch switch switch switch switch switch switch February 2012 11
  12. 12. History of OpenFlow• “OpenFlow” began as an idea switch about how research networks switch could be built. switch switch• Why not just build an experimental switch switch network? switch o Researchers can’t generally afford to buy switch switch new devices and a build a new network. switch February 2012 12
  13. 13. History of OpenFlow• “OpenFlow” began as an idea about switch how research networks could be built. switch• Why not just build an experimental switch switch network? o Researchers can’t generally afford to buy new switch switch devices and a build a new network. switch• Why not add experimental software to switch switch existing switches? o Modern switches are all different because they each have proprietary and different software switch architecture internally, so writing additional code for them is difficult or impractical. Applications O/S Kernel PFH February 2012 13
  14. 14. History of OpenFlow• “OpenFlow” began as an idea switch about how research networks could be built. switch switch• Why not just build an experimental switch network? switch switch o Researchers can’t generally afford to buy new devices and a build a new network. switch• Why not add experimental switch switch software to existing switches? o Modern switches are all different because they each have proprietary and different switch software architecture internally, so writing additional code for them is difficult or impractical.• What about programming the CAM PFH?  rules o In contrast to the software designs, PFH hardware is all similar. What about directly programming the Packet Forwarding PFH Hardware? February 2012 14
  15. 15. OpenFlow: a PFH Control Protocol• OpenFlow is a protocol by switch which the PFH hardware in a switch switch switch switch can be managed by software executing in a switch switch switch separate server, external to switch switch the switch, in a standardized way. switch OpenFlow Applications Controller Application O/S The OpenFlow Protocol Server Kernel PFH February 2012 15
  16. 16. Why Modernize?• Paul Baran invented the Internet CO CO at Rand in the early 1960’s. CO C5 CO CO CO CO February 2012 16
  17. 17. Why Modernize?• Paul Baran invented the Internet CO CO at Rand in the early 1960’s. CO• WWII and the ensuing Cold War demonstrated C5 CO CO 1. the necessity of reliable communications for defense or in a war and 2. the lethal destruction possible with missiles, long-range bombers, and nuclear CO weapons. CO February 2012 17
  18. 18. Why Modernize?• Paul Baran invented the CO CO Internet at Rand in the early CO 1960’s.• WWII and the ensuing Cold War demonstrated CO C5 CO 1. the necessity of reliable communications for defense or in a war and 2. the lethal destruction possible with CO missiles, long-range bombers, and CO nuclear weapons.• The phone system in the US at the time was a centralized circuit-switching system that would be very easy to disrupt or destroy. February 2012 18
  19. 19. Why Modernize?• Paul Baran invented the CO CO Internet at Rand in the early CO 1960’s.• WWII and the ensuing Cold War demonstrated CO C5 CO 1. the necessity of reliable communications for defense or in a war and 2. the lethal destruction possible with CO missiles, long-range bombers, and CO nuclear weapons.• The phone system in the US at the time was a centralized circuit-switching system that would be very easy to disrupt or destroy. February 2012 19
  20. 20. Baran’s Clever Solution• Packetized Voice switch Communications switch switch switch o Transform voice communications connections into sequences of switch switch packets of voice data. switch switch switch switch February 2012 20
  21. 21. Baran’s Clever Solution• Packetized Voice switch Communications switch switch switch o Transform voice communications connections into sequences of switch switch packets of voice data. switch o Transmit each packet independently. switch switch switch February 2012 21
  22. 22. Baran’s Clever Solution• Packetized Voice switch Communications switch switch switch o Transform voice communications connections into sequences of switch switch packets of voice data. switch o Transmit each packet independently. switch switch o Have the packet forwarding devices strictly autonomous systems so that the destruction or failure of one switch causes no additional failures. February 2012 22
  23. 23. Baran’s Clever Solution• Packetized Voice switch Communications switch switch switch o Transform voice communications connections into sequences of switch switch packets of voice data. switch o Transmit each packet independently. switch switch o Have the packet forwarding devices strictly autonomous systems so that the destruction or failure of one switch causes no additional failures. o Baran’s analysis demonstrated that the resulting voice communications system could still function if 50% of the packet forwarding devices were destroyed! February 2012 23
  24. 24. Baran’s Clever Solution• Packetized Voice switch Communications switch switch switch o Transform voice communications connections into sequences of switch switch packets of voice data. switch o Transmit each packet independently. switch switch o Have the packet forwarding devices strictly autonomous systems so that the destruction or failure of one switch causes no additional failures. o Baran’s analysis demonstrated that the resulting voice communications system could still function if 50% of the legacy Baran “survivability” the packet forwarding devices were control plane architecture destroyed! February 2012 24
  25. 25. Now fast-forward 50 years• Networks are used much more for data communications than voice communications February 2012 25
  26. 26. Now fast-forward 50 years• Networks are used much more switch for data communications than switch switch voice communications switch• A large data center network or switch switch SP network will have switch switch switch thousands of switches. switch Data Center February 2012 26
  27. 27. Now fast-forward 50 years• Networks are used much more switch for data communications than switch switch voice communications switch• A large data center network or switch switch SP network will have switch switch switch thousands of switches.• Survivability is no longer a switch worry. Data Center February 2012 27
  28. 28. Now fast-forward 50 years• Networks are used much more switch for data communications than switch switch voice communications switch• A large data center network or switch switch SP network will have switch switch switch thousands of switches.• Survivability is no longer a switch worry. Data Center• We want the network to operate as a coherent whole. February 2012 28
  29. 29. Now fast-forward 50 years• Networks are used much more switch for data communications than switch voice communications switch switch• A large data center network or switch switch SP network will have switch thousands of switches. switch switch• Survivability is no longer a worry. switch• We want the network to Data Center operate as a coherent whole.• Managing the network with the legacy “Baran” control plane architecture is really hard February 2012 29
  30. 30. What does modernization mean?• Think of a data center network as server just another distributed server server application (switches are servers server server with specialized PFH included). server server server server server server Data Center February 2012 30
  31. 31. What does modernization mean?• Think of a data center network as server just another distributed server server application (switches are servers server server with specialized PFH included). server• Consider how servers are server server coordinated in data centers server server today Google File System o A shared file system like GFS (Google) server Data Center February 2012 31
  32. 32. What does modernization mean?• Think of a data center network as server just another distributed server server application (switches are servers server server with specialized PFH included). server• Consider how servers are server server coordinated in data centers server server today Facebook memcached o A shared file system like GFS (Google) server o A shared caching system like memcached (Facebook). Data Center February 2012 32
  33. 33. What does modernization mean?• Think of a data center network as server just another distributed server server application (switches are servers server server with specialized PFH included). server• Consider how servers are server server coordinated in data centers server server today Broadcast Communications o A shared file system like GFS (Google) server o A shared caching system like memcached (Facebook). Data Center o Broadcast network communications to all servers. February 2012 33
  34. 34. What does modernization mean?• Think of a data center network as server just another distributed server server application (switches are servers server server with specialized PFH included). server• Consider how servers are server server coordinated in data centers server server today o A shared file system like GFS (Google) server o A shared caching system like memcached (Facebook). Data Center o Broadcast network communications to all servers. o Direct network communication between any two servers. February 2012 34
  35. 35. What does modernization mean?• Think of a data center network as just another distributed server server application (switches are servers server server with specialized PFH included). server• Consider how servers are server coordinated in data centers server server today server server o A shared file system like GFS (Google) o A shared caching system like memcached (Facebook). o Broadcast network communications to all server servers. Data Center o Direct network communication between any two servers.• All of these are prohibited by a legacy control plane architecture that was created to maximize survivability. February 2012 35
  36. 36. An OF implemented control plane• We use existing switches switch modified to add an OpenFlow switch switch control port switch switch switch switch switch switch switch February 2012 36
  37. 37. An OF implemented control plane• We use existing switches switch modified to add an OpenFlow switch switch control port switch• We implement the control plane switch switch in the OpenFlow controller switch switch switch (remember, it’s just a server application) switch OpenFlow Controller Application Server February 2012 37
  38. 38. An OF implemented control plane• We use existing switches switch modified to add an OpenFlow switch control port switch switch• We implement the control plane switch switch in the OpenFlow controller switch (remember, it’s just a server switch switch application)• We do anything we want, no switch longer constrained by the survivability design architecture or by the internal OpenFlow software design of the Controller switches Application Server February 2012 38
  39. 39. What is a “Flow” Anyway?• Ethernet networking is between the MAC addresses of the network interfaces on systems.• IP networking assigns each system an IP number and then switches traffic based on the IP number throughout the internet until the final switch that knows the associated MAC address of the destination• The Internet was initially designed to switch primarily on IP number. February 2012 39
  40. 40. • What is a “Flow” Anyway? Ethernet networking is between the MAC addresses of the network interfaces on systems.• IP networking assigns each system an IP number and then switches traffic based on the IP number throughout the internet until the final switch that knows the associated MAC address of the destination• The Internet was initially designed to switch primarily on IP number.• But networking is really done between logical ports on the systems, not with the system generally. A browser makes a connection to Port 80 on the destination system -- the Web server on a system by convention.• A flow represents the packets between a specific port on the transmitting system to a specific port on the destination system. February 2012 40
  41. 41. • What is a “Flow” Anyway? Ethernet networking is between the • Larry Roberts, the individual that MAC addresses of the network funded the original ARPAnet research, interfaces on systems. tried to build two companies based on• IP networking assigns each system an IP number and then switches traffic based the premise that routing across the on the IP number throughout the entire Internet should be done on a flow internet until the final switch that basis (Caspian Networks and the knows the associated MAC address of Anagran networks each built flow-based the destination routers).• The Internet was initially designed to switch primarily on IP number. • But to do what Roberts wanted to do• But networking is really done between required that flow-based routing be logical ports on the systems, not with accepted throughout the Internet. That the system generally. A browser makes a wasn’t going to happen. connection to Port 80 on the destination system -- the Web server on a system by convention.• A flow represents the packets between a specific port on the transmitting system to a specific port on the destination system. February 2012 41
  42. 42. • What is a “Flow” Anyway? Ethernet networking is between the • Larry Roberts, the individual that MAC addresses of the network funded the original ARPAnet research, interfaces on systems. tried to build two companies based on• IP networking assigns each system an IP the premise that routing across the number and then switches traffic based entire Internet should be done on a flow on the IP number throughout the basis (Caspian Networks and the internet until the final switch that Anagran networks each built flow-based knows the associated MAC address of routers). the destination • But to do what Roberts wanted to do• The Internet was initially designed to required that flow-based routing be switch primarily on IP number. accepted throughout the Internet. That• But networking is really done between wasn’t going to happen. logical ports on the systems, not with • OpenFlow adopts flow-based processing the system generally. A browser makes a but only within a single network. To the connection to Port 80 on the rest of the network it is still a destination system -- the Web server on conventional TCP/IP network. a system by convention. • Being able to switch on an individual flow• A flow represents the packets between basis enable innovative ways of doing a specific port on the transmitting security (for example) but requires system to a specific port on the larger (more expensive) CAM’s in the destination system. PFH, and requires fast controller response to a new flow. February 2012 42
  43. 43. OpenFlow for Research• Modify an existing network switch (e.g., the Stanford campus switch switch switch network) so that the switches support OpenFlow. switch switch switch• Create a research control switch switch plane• Gets better if “Hybrid” switch switch operation is possible o Let the existing flows be managed by OpenFlow the legacy network Controller o Let the OpenFlow controller manage Application the new “research” flows Server February 2012 43
  44. 44. OpenFlow Beyond Research• Network management requirements for virtualized, cloud data centers o Fast provisioning of virtual networks• Impact of the edge “switch” now being in the hypervisor o A modern control plane can be implemented within the Virtual Switch that is part of the hypervisor• Desire for more flexible asset use in network service providers o Move as much “network” processing as possible (e.g., firewall, VPN termination) to execute as virtual machine on conventional servers (less expensive CPU, use of shared resources). o Be able to provision these now virtualized services on-demand without having to speculatively provision features in a network device• Desire to speed up innovation in networking broadly• Cost minimization and use of common processor resources in very large web properties February 2012 44
  45. 45. A Radical Thought: SDN without OpenFlow!• The primary SDN goal is to • ConteXtream modernize the control plane in o Building SDN’s for Verizon and Comcast order to solve real, vexing network o The switching elements are VM’s that management issues (like creating use an interesting distributed-hash virtual networks). algorithm• Juniper QFabric: o Clearly a form of SDN, but no OF o Clearly SDN (a modernized control plane) • SDN Controllers o “Controller” distributed to each Top of Rack Switch; communications between controller o An interesting and challenging and PFH would not use OF. distributed system problem with• Nicira: tradeoffs o Designed for building virtual networks in o OF is great for research and for limited Cloud systems based on a hypervisor. adaptation to existing networks (e.g., o The switch is a vSwitch (see Nicira’s NEC). contribution to the Open vSwitch effort) o Direct controller / PFH interface is o The controller is (I think) distributed to much higher performance (seems each virtual server cluster. important for doing pure flow-based o I don’t think OF is used to talk to the processing) vSwitches in the cluster. February 2012 45
  46. 46. Current status• Openflow.org -> ONF (upcoming 2nd ONF Summit at Stanford)• Continuing work o on OF in conjunction with controller implementation o on the best way to create the data plane fabric o in virtual switch technology and “overlay” networks• Some interesting issues o No enterprise “killer apps” yet o Market insertion in general is a challenge o Transfer of value from hardware to software February 2012 46
  47. 47. Follow up• pchristy@irg-intl.com• Thanks! February 2012 47

×