OpenFlow: Enabling Innovation in Campus Networks Nick McKeown Tom Anderson Hari Balakrishnan Stanford University University of Washington MIT Guru Parulkar Larry Peterson Jennifer Rexford Stanford University Princeton University Princeton University Scott Shenker Jonathan Turner University of California, Washington University in Berkeley St. Louis This article is an editorial note submitted to CCR. It has NOT been peer reviewed. Authors take full responsibility for this article’s technical content. Comments can be posted through CCR Online. ABSTRACT to experiment with production traffic, which have created an This whitepaper proposes OpenFlow: a way for researchers exceedingly high barrier to entry for new ideas. Today, there to run experimental protocols in the networks they use ev- is almost no practical way to experiment with new network ery day. OpenFlow is based on an Ethernet switch, with protocols (e.g., new routing protocols, or alternatives to IP) an internal flow-table, and a standardized interface to add in sufficiently realistic settings (e.g., at scale carrying real and remove flow entries. Our goal is to encourage network- traffic) to gain the confidence needed for their widespread ing vendors to add OpenFlow to their switch products for deployment. The result is that most new ideas from the net- deployment in college campus backbones and wiring closets. working research community go untried and untested; hence We believe that OpenFlow is a pragmatic compromise: on the commonly held belief that the network infrastructure has one hand, it allows researchers to run experiments on hetero- “ossified”. geneous switches in a uniform way at line-rate and with high Having recognized the problem, the networking commu- port-density; while on the other hand, vendors do not need nity is hard at work developing programmable networks, to expose the internal workings of their switches. In addition such as GENI [1] a proposed nationwide research facility to allowing researchers to evaluate their ideas in real-world for experimenting with new network architectures and dis- traffic settings, OpenFlow could serve as a useful campus tributed systems. These programmable networks call for component in proposed large-scale testbeds like GENI. Two programmable switches and routers that (using virtualiza- buildings at Stanford University will soon run OpenFlow tion) can process packets for multiple isolated experimen- networks, using commercial Ethernet switches and routers. tal networks simultaneously. For example, in GENI it is We will work to encourage deployment at other schools; and envisaged that a researcher will be allocated a slice of re- We encourage you to consider deploying OpenFlow in your sources across the whole network, consisting of a portion university network too. of network links, packet processing elements (e.g. routers) and end-hosts; researchers program their slices to behave as they wish. A slice could extend across the backbone, into Categories and Subject Descriptors access networks, into college campuses, industrial research C.2 [Internetworking]: Routers labs, and include wiring closets, wireless networks, and sen- sor networks. General Terms Virtualized programmable networks could lower the bar- rier to entry for new ideas, increasing the rate of innovation Experimentation, Design in the network infrastructure. But the plans for nationwide facilities are ambitious (and costly), and it will take years Keywords for them to be deployed. This whitepaper focuses on a shorter-term question closer Ethernet switch, virtualization, flow-based to home: As researchers, how can we run experiments in our campus networks? If we can figure out how, we can 1. THE NEED FOR PROGRAMMABLE start soon and extend the technique to other campuses to NETWORKS benefit the whole community. To meet this challenge, several questions need answering, Networks have become part of the critical infrastructure including: In the early days, how will college network admin- of our businesses, homes and schools. This success has been istrators get comfortable putting experimental equipment both a blessing and a curse for networking researchers; their (switches, routers, access points, etc.) into their network? work is more relevant, but their chance of making an im- How will researchers control a portion of their local net- pact is more remote. The reduction in real-world impact of work in a way that does not disrupt others who depend on any given network innovation is because the enormous in- it? And exactly what functionality is needed in network stalled base of equipment and protocols, and the reluctance ACM SIGCOMM Computer Communication Review 69 Volume 38, Number 2, April 2008 Scope of OpenFlow Switch Specification switches to enable experiments? Our goal here is to propose a new switch feature that can help extend programmability into the wiring closet of college campuses. OpenFlow One approach - that we do not take - is to persuade Switch Controller commercial “name-brand” equipment vendors to provide an OpenFlow open, programmable, virtualized platform on their switches sw Secure Protocol and routers so that researchers can deploy new protocols, Channel PC while network administrators can take comfort that the SSL equipment is well supported. This outcome is very unlikely in the short-term. Commercial switches and routers do not hw Flow typically provide an open software platform, let alone pro- Table vide a means to virtualize either their hardware or software. The practice of commercial networking is that the standard- ized external interfaces are narrow (i.e., just packet forward- ing), and all of the switch’s internal flexibility is hidden. The internals differ from vendor to vendor, with no standard platform for researchers to experiment with new ideas. Fur- ther, network equipment vendors are understandably ner- vous about opening up interfaces inside their boxes: they have spent years deploying and tuning fragile distributed protocols and algorithms, and they fear that new experi- Figure 1: Idealized OpenFlow Switch. The Flow ments will bring networks crashing down. And, of course, Table is controlled by a remote controller via the open platforms lower the barrier-to-entry for new competi- Secure Channel. tors. A few open software platforms already exist, but do not have the performance or port-density we need. The simplest • Capable of supporting a broad range of research. example is a PC with several network interfaces and an op- erating system. All well-known operating systems support • Assured to isolate experimental traffic from production routing of packets between interfaces, and open-source im- traffic. plementations of routing protocols exist (e.g., as part of the • Linux distribution, or from XORP [2]); and in most cases it Consistent with vendors’ need for closed platforms. is possible to modify the operating system to process packets in almost any manner (e.g., using Click [3]). The problem, This paper describes the OpenFlow Switch—a specifica- of course, is performance: A PC can neither support the tion that is an initial attempt to meet these four goals. number of ports needed for a college wiring closet (a fanout of 100+ ports is needed per box), nor the packet-processing 2. THE OPENFLOW SWITCH performance (wiring closet switches process over 100Gbits/s The basic idea is simple: we exploit the fact that most of data, whereas a typical PC struggles to exceed 1Gbit/s; modern Ethernet switches and routers contain flow-tables and the gap between the two is widening). (typically built from TCAMs) that run at line-rate to im- Existing platforms with specialized hardware for line-rate plement firewalls, NAT, QoS, and to collect statistics. While processing are not quite suitable for college wiring clos- each vendor’s flow-table is different, we’ve identified an in- ets either. For example, an ATCA-based virtualized pro- teresting common set of functions that run in many switches grammable router called the Supercharged PlanetLab Plat- and routers. OpenFlow exploits this common set of func- form [4] is under development at Washington University, tions. and can use network processors to process packets from OpenFlow provides an open protocol to program the flow- many interfaces simultaneously at line-rate. This approach table in different switches and routers. A network admin- is promising in the long-term, but for the time being is tar- istrator can partition traffic into production and research geted at large switching centers and is too expensive for flows. Researchers can control their own flows - by choosing widespread deployment in college wiring closets. At the the routes their packets follow and the processing they re- other extreme is NetFPGA [5] targeted for use in teaching ceive. In this way, researchers can try new routing protocols, and research labs. NetFPGA is a low-cost PCI card with security models, addressing schemes, and even alternatives a user-programmable FPGA for processing packets, and 4- to IP. On the same network, the production traffic is isolated ports of Gigabit Ethernet. NetFPGA is limited to just four and processed in the same way as today. network interfaces—insufficient for use in a wiring closet. The datapath of an OpenFlow Switch consists of a Flow Thus, the commercial solutions are too closed and inflex- Table, and an action associated with each flow entry. The ible, and the research solutions either have insufficient per- set of actions supported by an OpenFlow Switch is exten- formance or fanout, or are too expensive. It seems unlikely sible, but below we describe a minimum requirement for that the research solutions, with their complete generality, all switches. For high-performance and low-cost the data- can overcome their performance or cost limitations. A more path must have a carefully prescribed degree of flexibility. promising approach is to compromise on generality and to This means forgoing the ability to specify arbitrary handling seek a degree of switch flexibility that is: of each packet and seeking a more limited, but still useful, • Amenable to high-performance and low-cost imple- range of actions.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages6 Page
-
File Size-