Rick McGeer Chief Scientist, US IGNITE

Slides:



Advertisements
Similar presentations
Symantec 2010 Windows 7 Migration Global Results.
Advertisements

Process Description and Control
Distributed Systems Architectures
INDIANAUNIVERSITYINDIANAUNIVERSITY GENI Global Environment for Network Innovation James Williams Director – International Networking Director – Operational.
1 Chapter 12 File Management Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
Distributed Data Processing
Welcome to Middleware Joseph Amrithraj
The Platform as a Service Model for Networking Eric Keller, Jennifer Rexford Princeton University INM/WREN 2010.
Towards Software Defined Cellular Networks
SLP – Endless Possibilities What can SLP do for your school? Everything you need to know about SLP – past, present and future.
2  Industry trends and challenges  Windows Server 2012: Beyond virtualization  Complete virtualization platform  Improved scalability and performance.
1 Using Bayesian Network for combining classifiers Leonardo Nogueira Matos Departamento de Computação Universidade Federal de Sergipe.
1 © 2004, Cisco Systems, Inc. All rights reserved. CCNA 1 v3.1 Module 9 TCP/IP Protocol Suite and IP Addressing.
The Instageni Initiative
Layering and the network layer CS168, Fall 2014 Sylvia Ratnasamy
The Case for Enterprise Ready Virtual Private Clouds Timothy Wood, Alexandre Gerber *, K.K. Ramakrishnan *, Jacobus van der Merwe *, and Prashant Shenoy.
Internet2 and AL2S Eric Boyd Senior Director of Strategic Projects
Title or Title Event/Date Presenter, PresenterTitle, Internet2 Network Virtualization & the Internet2 Innovation Platform To keep our community at the.
Xen , Linux Vserver , Planet Lab
Internet2 Network: Convergence of Innovation, SDN, and Cloud Computing Eric Boyd Senior Director of Strategic Projects.
Chapter 9 Designing Systems for Diverse Environments.
1 In VINI Veritas: Realistic and Controlled Network Experimentation Jennifer Rexford with Andy Bavier, Nick Feamster, Mark Huang, and Larry Peterson
1 GENI: Global Environment for Network Innovations Jennifer Rexford Princeton University
1 GENI: Global Environment for Network Innovations Jennifer Rexford On behalf of Allison Mankin (NSF)
FI-WARE – Future Internet Core Platform FI-WARE Cloud Hosting July 2011 High-level description.
Virtualization and the Cloud
Middleware for P2P architecture Jikai Yin, Shuai Zhang, Ziwen Zhang.
SaaS, PaaS & TaaS By: Raza Usmani
For more notes and topics visit:
Cloud computing is the use of computing resources (hardware and software) that are delivered as a service over the Internet. Cloud is the metaphor for.
National Science Foundation Arlington, Virginia January 7-8, 2013 Tom Lehman University of Maryland Mid-Atlantic Crossroads.
Software-Defined Networks Jennifer Rexford Princeton University.
Sponsored by the National Science Foundation GENI and Cloud Computing Niky RIga GENI Project Office
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. GENI Mesoscale and The.
M.A.Doman Short video intro Model for enabling the delivery of computing as a SERVICE.
The Cluster Computing Project Robert L. Tureman Paul D. Camp Community College.
Software-Defined Networking - Attributes, candidate approaches, and use cases - MK. Shin, ETRI M. Hoffmann, NSN.
1 Introduction to Middleware. 2 Outline What is middleware? Purpose and origin Why use it? What Middleware does? Technical details Middleware services.
1 ©2010 HP Created on xx/xx/xxxxof 222 Nick Bastin, Andy Bavier, Jessica Blaine, Joe Mambretti, Rick McGeer, Rob Ricci, Nicki Watts PlanetWorks, HP, University.
Sponsored by the National Science Foundation GENI Exploring Networks of the Future
Rick McGeer Chief Scientist, US Ignite March 17, 2014.
Securing the Network Infrastructure. Firewalls Typically used to filter packets Designed to prevent malicious packets from entering the network or its.
Server Performance, Scaling, Reliability and Configuration Norman White.
Sponsored by the National Science Foundation Achieving the Programmable WAN: Introduction Marshall Brinn, GPO March 18,
SDN Management Layer DESIGN REQUIREMENTS AND FUTURE DIRECTION NO OF SLIDES : 26 1.
NETWORKING FUNDAMENTALS. Network+ Guide to Networks, 4e2.
Extending OVN Forwarding Pipeline Topology-based Service Injection
Internet of Things. IoT Novel paradigm – Rapidly gaining ground in the wireless scenario Basic idea – Pervasive presence around us a variety of things.
Globus and PlanetLab Resource Management Solutions Compared M. Ripeanu, M. Bowman, J. Chase, I. Foster, M. Milenkovic Presented by Dionysis Logothetis.
Architecture & Cybersecurity – Module 3 ELO-100Identify the features of virtualization. (Figure 3) ELO-060Identify the different components of a cloud.
Rick McGeer Chief Scientist, US IGNITE October 28, 2013.
IGENI Presentation for ORCA Cluster Meeting, GEC 11 Presented By iGENI Consortium: International Center for Advanced Internet Research, Northwestern University.
Active Networks Jennifer Rexford. Nice Quotation from the Tennenhouse Paper There is presently a disconnect between what users consider to be “inside”
Chapter 16 Client/Server Computing Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William.
Instructor Materials Chapter 7: Network Evolution
SDN challenges Deployment challenges
CompTIA Security+ Study Guide (SY0-401)
By: Raza Usmani SaaS, PaaS & TaaS By: Raza Usmani
The DPIaaS Controller Prototype
Clouds , Grids and Clusters
GENUS Virtualisation Service for GÉANT and European NRENs
NextGENI: The Nation’s Edge Cloud
Processes The most important processes used in Web-based systems and their internal organization.
Introduction to Cloud Computing
Software Defined Networking (SDN)
CompTIA Security+ Study Guide (SY0-401)
Cloud Computing and Cloud Networking
Software Defined Networking (SDN)
NSF cloud Chameleon: Phase 2 Networking
GENI Exploring Networks of the Future
Presentation transcript:

Rick McGeer Chief Scientist, US IGNITE December 9, 2013

Distributed Clouds and Software Defined Networking Complementary Technologies for the Next-Generation Internet

Or, A Post-Hoc Justification for the Last 10 Years of My Life

Need logos: Internet-2, SAVI, Glab, UCSD, CNS

The Future is Distributed Clouds integrated with Software-Defined-Networks!

SDN is a set of abstractions over the networking control plane Proxies are an essential element of the Internet Architecture Shouldn’t there be an abstraction architecture for proxies?

Network Challenges Original Concept of the Network: dumb pipe between smart endpoints Content-agnostic routing Rates controlled by endpoints Content- and user-agnostic forwarding Clean separation of concerns Routing and forwarding by network elements Rate control, admission control, security at endpoints

Clean separation of concerns doesn’t work very well Need application-aware stateful forwarding (e.g., multicast) Need QoS guarantees and network-aware endpoints For high-QoS applications For lousy links Need in-network security and admission control Endpoint security easily overwhelmed…

Some Examples Load-balanced end-system multicast Adaptive/DPI-based Intrusion Detection In-network transcoding to multiple devices Web and file content distribution networks Link-sensitive store-and-forward connection-splitting TCP proxies Email proxies (e.g., MailShadow) In-network compression engines (Riverbed) Adaptive firewall In-situ computation for data reduction from high-bandwidth sensors (e.g., high-resolution cameras)

Common Feature All of these examples require some combination of in-network and endpoint services Information from the network Diversion to a proxy Line-rate packet filtering All require endpoint processing Stateful processing Connection-splitting Filesystem access Three central use cases Optimization of network resources, especially bandwidth Proximity to user for real-time response In-situ sensor processing

Historic Solution: Middleboxes Dedicated network appliances to perform specific function Gets the job done, but… Appliances proliferate (one or more per task) Opaque Interact unpredictably… Don’t do everything E.g., generalized in-situ processing engine for data reduction APST, 2005: “The ability to support…multiple coexisting overlays [of proxies]…becomes the crucial universal piece of the [network] architecture.”

OpenFlow and SDN L2/L3 Technology to permit software-defined control of network forwarding and routing What it’s not: On-the-fly software decisions about routing and forwarding In-network connection-splitting store-and-forward In-network on-the-fly admission control In-network content distribution Magic…. What it is: Table-driven routing and forwarding decisions (including drop and multicast) Callback protocol from a switch to a controller when entry not in table (“what do I do now?”) Protocol which permits the controller to update the switch

Openflow rationalizes routing. It does nothing about endpoint services

abstract in-network endpoint (a.k.a. “middlebox”) Question: Wouldn’t it be nice to abstract in-network endpoint (a.k.a. “middlebox”) services as well?

Question II: Wouldn’t It be nice to Put “Endpoints” where We need them, not just Where we are?

In-Network Processing L4/L7 Services provided by nodes in the network TCP/Application layer proxies Stateful/DPI based intrusion detection Application-layer admission control Application-layer load-balancing …. Key features Stateful processing Transport/Application layer information required

Middleboxes and the Network Classic View: Proxies and Middleboxes are a necessary evil that breaks the “end-to-end principle” (Network should be a dumb pipe between endpoints) Modern View (Peterson): “Proxies play a fundamental role in the Internet architecture: They bridge discontinuities between different regions of the Internet. To be effective, however, proxies need to coordinate and communicate with each other.” Generalized Modern View (this talk): Proxies and Middleboxes are special cases of a general need: endpoint processing in the network. We need to merge the Cloud and the Network.

Going From Today to Tomorrow Today: Middleboxes Tomorrow: In-network general-purpose processors fronted by OpenFlow switches Advantages of Middleboxes Specialized processing at line rate Disadvantages of middleboxes Nonexistent programming environment Opaque configuration Vendor-specific updates Only common functions get done Interact unpredictably…

Anatomy of a Middlebox

Generalized Architecture

The Future

Advantages of the Generalizing and Factoring the Middlebox Transparent Open programming environment: Linux + OpenFlow Much broader range of features and functions Interactions between middleboxes mediated by OpenFlow rules Verifiable Predictable Updates are software uploads

OpenFlow + In Network Processing Line-rate processing Largely implementable on COTS switches Packet handling on a per-flow basis Rapid rule update Unified view of the network L2-L7 services

But I Need Proxies Everywhere… Proxies are needed where I need endpoint processing In-situ data reduction Next to users Where I need filtering Can’t always predict these in advance for every service! So I need a small cloud everywhere, so I can instantiate a middlebox anywhere Solution = Distributed “EC2” + OpenFlow network “Slice”: Virtual Network of Virtual Machines OpenFlow creates Virtual Network “EC2” lets me instantiate VM’s everywhere

program routing protocols OpenFlow lets us program routing protocols Question: how can we program a network of middleboxes?

Shenker’s SDN Architecture Specification of a virtual network, with explicit forwarding instructions Translation onto OpenFlow rules on physical network Effectuation on physical network

Perfect for L1-L3

Key Function we want: Add Processing Anywhere in the Virtual Network

Going from Virtual Network to Virtual Distributed System Specification of a virtual distributed cloud, with explicit forwarding instructions BETWEEN specified VMs Translation onto OpenFlow rules on physical network AND instantiation on physical machines at appropriate sites Effectuation on physical network AND physical clouds

Key Points Federated Clouds can be somewhat heterogeneous Must support common API Can have some variants (switch variants still present a common interface through OpenFlow) DSOS is simply a mixture of three known components: Network Operating System Cloud Managers (e.g., ProtoGENI, Eucalytpus, OpenStack) Tools to interface with Network OS and Cloud Managers (nascent tools under development)

Implications for OpenFlow/SDN Southbound API (i.e., OpenFlow): minimal and anticipated in 1.5 “Support for L4/L7 services”, aka, seamless redirection Northbound API Joint allocation of virtual machines and networks Location-aware allocation of virtual machines WAN-aware allocation of networks QoS controls between sites Build on/extend successful architectures “Neutron for the WAN”

Implications for Cloud Architectures Key problem we’ve rarely considered: how do we easily instantiate and stitch together services at multiple sites/multiple providers? Multiple sites is easy, multiple providers is not Need easy way to instantiate from multiple providers Common AUP/Conventions? Probably Common form of identity/multiple IDs? Multiple or bottom-up (e.g. Facebook) Common API? Absolutely Need to understand what’s important and what isn’t E.g. very few web services charge for bandwidth

Initial Attempts Ignite Technical Architecture/GENI Racks GENI Mesoscale SAVI JGN-X …

With Credit To…

GENI Mesoscale Nationwide network of small local clouds Each cloud 80-150 worker cores Several TB of disk OpenFlow-native local switching Interconnected over OpenFlow-based L2 Network Local “Aggregate Manager” (aka controller) Two main designs with common API InstaGENI (ProtoGENI-based) ExoGENI (ORCA/OpenStack-based) Global Allocation through federate aggregate managers User allocation of networks and slices through tools (GENI portal, Flack)

GENI And The Distributed Cloud Stack Physical Resources GENI Racks, Emulab, GENI backbone Cloud OS ProtoGENI, ExoGENI… Orchestration Layer GENI Portal, Flack…

Instageni rack topology of 222 ©2010 HP Created on xx/xx/xxxx

U.S. Ignite City Technical Architecture Existing head-end Existing ISP connects Most equipment not shown Layer 3 GENI control plane Layer 2 connect to subscribers OpenFlow switch(es) Flowvisor Remote management Instrumentation Aggregate manager Measurement Programmable servers Storage Video switch (opt) Home Layer 2 Ignite Connect (1 GE or 10GE) New GENI / Ignite rack pair

GENI Mesoscale Deployment

Distributed Clouds and NSFNet: Back to the Future GENI today is NSFNet circa 1985 GENI and the SFA: Set of standards (e.g., TCP/IP) Mesoscale: Equivalent to NSF Backbone GENIRacks: Hardware/software instantiation of standards that sites can deploy instantly Equivalent to VAX 11 running Berkeley Unix InstaGENI cluster running ProtoGENI and OpenFlow Other instantiations which are interoperable VNode (Aki Nakao, University of Tokyo and NICT) Tomato (Dennis Schwerdel, TU-Kaiserslautern)

JGN-X (Japan)

SAVI (Canada)

Ofelia (EU)

“Testbeds” vs “Clouds” JGN-X, GENI, SAVI, Ofelia, GLab, OneLab are all described as “Testbeds” But they are really Clouds Tests require realistic services History of testbeds: Academic ResearchAcademic/Research servicesCommercial services Expect similar evolution here (but commercial will come faster)

Programming Environment for Distributed Clouds Problem: Allocating and configuring distributed clouds is a pain Allocate network of VM’s Build VM’s and deploy images Deploy and run software But most slices are mostly the same Automate commonly-used actions and pre-allocate typical slices 5-minute rule: Build, deploy, and execute “Hello, World” in five minutes Decide what to build: start with sample application

TransGeo: A Model TransCloud Application Scalable, Ubiquitous Geographic Information System Open and Public Anyone can contribute layers Anyone can host computation Why GIS? Large and active community Characterized by large data sets (mostly satellite images) Much open-source easily deployable software, standard data formats Computation naturally partitions and is loosely-coupled Collaborations across geographic regions and continents Very pretty…

TransGeo Architecture

TransGeo Sites (May 2013)

Opening up TransGEO: The GENI Experiment Engine Key Idea: Genericize and make available the infrastructure behind the TransGEO demo Open to every GENI, FIRE, JGN-X, Ofelia, SAVI…experimenter who wants to use it TransGEO is a trivial application on a generic infrastructure Perhaps 1000 lines of Python code on top of Key-Value Store Layer 2 network Sandboxed Python programming environment Messaging Service Deployment Service GIS Libraries

GENI Experiment Engine Permanent, Long-Running, Distributed File System Permanent, Long-Running, GENI-wide Message Service Permanent, Long-Running, Distributed Python Environment Permanent, world-wide Layer-2 VLANs on high-performance networks All offered in slices All shared by many experimenters Model: Google App Engine Advantage for GENI: Efficient use of resources Advantage for Experimenters: Up and running in no time

GENI Experiment Engine Architecture

Staged Rollout Permanent Layer-2 Network Spring 2014 Shared File System based on (Swift) Spring 2014 Python environment Summer 2014

Thanks and Credits Joe Mambretti, Fei Yeh, Jim Chen Northwestern/ iCAIR Andy Bavier, Marco Yuen, Larry Peterson, Jude Nelson, Tony Mack PlanetWorks/Princeton Chris Benninger, Chris Matthews, Chris Pearson, Andi Bergen, Paul Demchuk, Yanyan Zhuang, Ron Desmarais, Stephen Tredger, Yvonne Coady, Hausi Muller University of Victoria Heidi Dempsey, Marshall Brinn, Vic Thomas, Niky Riga, Mark Berman, Chip Elliott BBN/GPO Rob Ricci, Leigh Stoller, Gary Wong University of Utah Glenn Ricart, William Wallace, Joe Konstan US Ignite Paul Muller, Dennis Schwerdel TU-Kaiserslautern Amin Vahdat, Alvin AuYoung, Alex Snoeren, Tom DeFanti UCSD

Thanks and Credits Nick Bastin Barnstormer Softworks Shannon Champion Matrix Integration Jessica Blaine, Jack Brassil, Kevin Lai, Narayan Krishnan, Dejan Milojicic, Norm Jouppi, Patrick Scaglia, Nicki Watts, Michaela Mezo, Bill Burns, Larry Singer, Rob Courtney, Randy Anderson, Sujata Banerjee, Charles Clark HP Aki Nakao University of Tokyo

Conclusions Distributed Clouds are nothing new… But this is OK… Akamai was basically the first Distributed Cloud Single Application, now generalizing But this is OK… Web simply wrapped existing services Now in vogue with telcos (“Network Function Virtualization”) What’s new/different in GENI/JGN-X/SAVI/Ofelia…. Support from programmable networks “Last frontier” for software in systems Open Problems Siting VMs! Complex network/compute/storage optimization problems Needs “http”-like standardization of APIs at IaaS, PaaS layers

Links http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.20.123&rep=rep1&type=pdf http://pages.cs.wisc.edu/~akella/CS838/F09/838-Papers/APST05.pdf http://www.youtube.com/watch?v=eXsCQdshMr4

Thanks!