Active Networks Jennifer Rexford. Nice Quotation from the Tennenhouse Paper There is presently a disconnect between what users consider to be “inside”

Slides:



Advertisements
Similar presentations
Jennifer Rexford Princeton University MW 11:00am-12:20pm Network Virtualization COS 597E: Software Defined Networking.
Advertisements

Supercharging PlanetLab : a high performance, Multi-Application, Overlay Network Platform Written by Jon Turner and 11 fellows. Presented by Benjamin Chervet.
Spring 2000CS 4611 Introduction Outline Statistical Multiplexing Inter-Process Communication Network Architecture Performance Metrics.
Extensibility, Safety and Performance in the SPIN Operating System Presented by Allen Kerr.
Lecture 6 Overlay Networks CPE 401/601 Computer Network Systems slides are modified from Jennifer Rexford.
1 Improving the Performance of Distributed Applications Using Active Networks Mohamed M. Hefeeda 4/28/1999.
1 In VINI Veritas: Realistic and Controlled Network Experimentation Jennifer Rexford with Andy Bavier, Nick Feamster, Mark Huang, and Larry Peterson
Resource Management – a Solution for Providing QoS over IP Tudor Dumitraş, Frances Jen-Fung Ning and Humayun Latif.
CS 268: Active Networks Ion Stoica May 6, 2002 (* Based on David Wheterall presentation from SOSP ’99)
4-1 Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving side, delivers.
Department of Computer Science, Purdue University Active Networks: Applications, Security, Safety and Architectures Author: Konstantinos Psounis Stanford.
Chapter 4 Network Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 14.
1 GENI: Global Environment for Network Innovations Jennifer Rexford Princeton University
10 - Network Layer. Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving.
Networking Theory (Part 1). Introduction Overview of the basic concepts of networking Also discusses essential topics of networking theory.
1 GENI: Global Environment for Network Innovations Jennifer Rexford On behalf of Allison Mankin (NSF)
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
1 Network Management Active Networks. 2 Network Management.
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
The Future of the Internet Jennifer Rexford ’91 Computer Science Department Princeton University
Active Networks Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
Jennifer Rexford Princeton University MW 11:00am-12:20pm Data-Center Traffic Management COS 597E: Software Defined Networking.
Bandwidth DoS Attacks and Defenses Robert Morris Frans Kaashoek, Hari Balakrishnan, Students MIT LCS.
Lecture 1, 1Spring 2003, COM1337/3501Computer Communication Networks Rajmohan Rajaraman COM1337/3501 Textbook: Computer Networks: A Systems Approach, L.
Active Network Applications Tom Anderson University of Washington.
CECS 5460 – Assignment 3 Stacey VanderHeiden Güney.
Enabling Innovation Inside the Network Jennifer Rexford Princeton University
Jennifer Rexford Fall 2010 (TTh 1:30-2:50 in COS 302) COS 561: Advanced Computer Networks Programmable.
Protocol Layering Chapter 10. Looked at: Architectural foundations of internetworking Architectural foundations of internetworking Forwarding of datagrams.
Software-Defined Networks Jennifer Rexford Princeton University.
QoS Architectures for Connectionless Networks
Internet Addresses. Universal Identifiers Universal Communication Service - Communication system which allows any host to communicate with any other host.
Data Communications and Computer Networks Chapter 4 CS 3830 Lecture 18 Omar Meqdadi Department of Computer Science and Software Engineering University.
Network Layer4-1 Chapter 4: Network Layer Chapter goals: r understand principles behind network layer services: m network layer service models m forwarding.
1 Liquid Software Larry Peterson Princeton University John Hartman University of Arizona
Introduction 1-1 EKT355/4 ADVANCED COMPUTER NETWORK MISS HASNAH AHMAD School of Computer & Communication Engineering.
Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Network Layer introduction.
Putting Intelligence in Internetworking: an Architecture of Two Level Overlay EE228 Project Anshi Liang Ye Zhou.
Data and Computer Communications Circuit Switching and Packet Switching.
Management for IP-based Applications Mike Fisher BTexaCT Research
TCOM 509 – Internet Protocols (TCP/IP) Lecture 03_b Protocol Layering Instructor: Dr. Li-Chuan Chen Date: 09/15/2003 Based in part upon slides of Prof.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
1 Mobile Networks logica Contents Confidential & Proprietary to Logica © 2001 Application-Level Active Networks Presented at Dublin Breakfast Briefing,
A Survey of Active Network Research By:Tennehouse,Smith,Sincoskie,Wettherall,Minden Presented By:Prashant, Ravikiran, Ashutosh.
1 Pre-Introduction What is computer network?. 2 Pre-Introduction Suppose you want to build a computer network The question is: –What available technologies.
Introduction to Active Network Technology Bernhard Plattner Computer Engineering and Networks Laboratory ETH Zurich, Switzerland.
Introduction to Grids By: Fetahi Z. Wuhib [CSD2004-Team19]
Forwarding.
July 12th 1999Kits Workshop 1 Active Networking at Washington University Dan Decasper.
High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98.
CellSDN: Software-Defined Cellular Core networks Xin Jin Princeton University Joint work with Li Erran Li, Laurent Vanbever, and Jennifer Rexford.
1 Firewalls - Introduction l What is a firewall? –Firewalls are frequently thought of as a very complex system that is some sort of magical, mystical..
End-to-End Principle Brad Karp UCL Computer Science CS 6007/GC15/GA07 25 th February, 2009.
Zurich Research Laboratory IBM Zurich Research Laboratory Adaptive End-to-End QoS Guarantees in IP Networks using an Active Network Approach Roman Pletka.
Network Layer4-1 Chapter 4 Network Layer All material copyright J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A Top Down.
Copyright 2002 Stephen F. Bush1 Three Points to Remember Active Networks Are Cool Active Networks Are Cool Active Networks Can Be At Least As Secure As.
Danilo Florissi, Yechiam Yemini (YY), Sushil da Silva, Hao Huang Columbia University, New York, NY 10027
Network Processing Systems Design
25/09/ Firewall, IDS & IPS basics. Summary Firewalls Intrusion detection system Intrusion prevention system.
Road to SDN Review the main features of SDN
University of Maryland College Park
Martin Casado, Nate Foster, and Arjun Guha CACM, October 2014
ANTS Goals Today’s networks lack flexibility …
Transport Protocols Relates to Lab 5. An overview of the transport protocols of the TCP/IP protocol suite. Also, a short discussion of UDP.
Software Defined Networking (SDN)
Extending MPLS/BGP VPNs to End-Systems
Chapter 11. Frame Relay Background Frame Relay Protocol Architecture
Software interoperability in the NGN Service layer
EE 122: Lecture 22 (Overlay Networks)
Presentation transcript:

Active Networks Jennifer Rexford

Nice Quotation from the Tennenhouse Paper There is presently a disconnect between what users consider to be “inside” the network and the practitioner’s perspective, which is somewhat restricted. For example, web browsers allow users to interact with what they perceive to be “the network” without distinguishing among the many routers, domain name servers, and web servers that conspire to provide the service. It may be time for practitioners to reevaluate their abstractions and start thinking about the network at a higher level.

Passive Networks Dumb store-and-forward network –Smart end hosts implement key functions –Simple routers store and forward packets –Limited network processing (e.g., routing, forwarding, buffering, and packet scheduling) Packet header used in a simple way –Common, standardized format –Causes one of a small set of operations to occur –Packet forwarded or dropped based on those rules –Network (largely) ignores higher-layer headers

Active Networks Packet == data + code –Smart hosts, as before –Active nodes that can execute code on the data –Active packets that carry code to active nodes Postscript analogy –Contains both your data, and the program the printer runs to print your data Definition: Active networks allow an individual user, or groups of users, to inject customized programs into the nodes of the network.

Motivation for Active Networks High-level goal –Leverage computation in the network User pull –Automatically adaptive streaming –Data aggregation to reduce data volumes –Computation closer to users to reduce latency Industry push –Ad-hoc collection of middleboxes emerging –Replace with generic, multi-purpose active nodes –Otherwise, proliferation of active components will happen anyway, without any common framework

Motivation for Active Networks (Continued) Big mismatch in rates of innovation –Applications change quickly (e.g., Web, P2P, IM) –The network changes slowly Deploying new network technology is hard –Delay for standardization (at the IETF) –Additional delays for vendors to implement and service providers to deploy the new technology Better to decouple services from hardware –Minimize the amount of global agreement –Load new services on demand

Motivating Examples Customized packet-drop policy –User watching video stream (MPEG) –Congestion leads to bandwidth limits –Drop selectively the B frames –Requires application-specific intelligence Other examples –Forward error correction: adapt to loss rate. –TCP-SYN filtering –Web caching –Reliable multicast (or any multicast) –Support for mobility

Enabling Technologies for Active Networks Component-based software engineering –Building blocks for composing software Code mobility (e.g,. Java) –Though previously between end hosts, not network nodes –Innovation in safe and efficient code mobility Field-programmable gate arrays (FPGAs) –Enabling higher speed of packet processing Research in programming languages –And PL folks’ interest in networking

Two Models of Active Networks (ANs) Active networks are active in two ways –Switches run code on data flowing through them –Individuals can inject programs into the network Programmable switches: discrete ANs –Separation of program loading and execution –E.g. program loading only by network operator –Packet is demultiplexed to the right program Capsules: integrated ANs –Every packet is a program, and carries its code –Perhaps in a restricted programming language

Three Parts to an Active Network Execution environment –Virtual machine with access to node resources –General, Turing-complete vs. restricted models Active applications –Provide an end-to-end, customized service –Load code on to the routers to program the VM Node operating system –Support multiple execution environments at once –Provide safety between execution environments

Example: Capsules Capsule = code + data –Extension of IP packet format Type that identifies the code that should handle the capsule –E.g., may indicate a Java class Code runs in transient execution environment –Destroyed when the capsule evaluation ends Active storage –Capsules can leave information behind in a node’s non-transient storage for subsequent capsules External methods cached on the node

Concerns: Security, Safety, and Performance Protection –Can my service damage yours? –Need to run code in a sandbox Resource management –Can my service consume arbitrary resources? –Need careful control over resource allocation Performance –Can my program complete quickly enough to avoid introducing excessive latency? –Need to limit the complexity of the programs –… or run them only on lower-speed links

Safety and Security Programs ensured to terminate Limited amount of resources consumed Type-checked programs Basic error handling No interference due to concurrent execution

Efficiency and Performance Running programs on packets –Questionable on higher-speed links –E.g., where you have just a few nsec per packet Feasible at the edge (e.g., 100 Mbps, 1 Gbps) –Firewall, NAT, shaper, proxy, intrusion detection Feasible for control plane in the core –Running routing protocols Computer architecture advances help –Faster conventional processors –Network processors and FPGAs –Multi-processor cores

Stepping Back Was active networks a success or failure? –General idea of computation and services inside the network? –Need for a principled approach to middleboxes, and a blurring of router vs. general network node? –Specific mechanism of packets carrying code? Devil in the details –What granularity: packets vs. flows –When is code loaded: on demand vs. in advance –Who programs: user vs. network operator

What’s the Difference? What’s the difference between active networks and virtualized infrastructures? –PlanetLab, VINI, and GENI What’s the difference between active networks and middleboxes? –Firewall, NAT, proxy, gateway, shaper, transcoder What’s the difference between active networks and overlay networks? –PlanetLab, RON, Akamai, etc.