15-744: Computer Networking L-6 Evolving the Network.

Slides:



Advertisements
Similar presentations
XIA: Efficient Support for Evolvable Internetworking Dongsu HanAshok AnandFahad Dogar Boyan LiHyeontaek LimMichel Machado Arvind MukundanWenfei Wu Aditya.
Advertisements

Internetworking II: MPLS, Security, and Traffic Engineering
CPSC Network Layer4-1 IP addresses: how to get one? Q: How does a host get IP address? r hard-coded by system admin in a file m Windows: control-panel->network->configuration-
Transitioning to IPv6 April 15,2005 Presented By: Richard Moore PBS Enterprise Technology.
Computer Networks20-1 Chapter 20. Network Layer: Internet Protocol 20.1 Internetworking 20.2 IPv IPv6.
COS 461 Fall 1997 Routing COS 461 Fall 1997 Typical Structure.
20.1 Chapter 20 Network Layer: Internet Protocol Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
IP datagrams Service paradigm, IP datagrams, routing, encapsulation, fragmentation and reassembly.
1 Internet Protocol Version 6 (IPv6) What the caterpillar calls the end of the world, nature calls a butterfly. - Anonymous.
Network Layer IPv6 Slides were original prepared by Dr. Tatsuya Suda.
OpenFlow overview Joint Techs Baton Rouge. Classic Ethernet Originally a true broadcast medium Each end-system network interface card (NIC) received every.
Packet Switching COM1337/3501 Textbook: Computer Networks: A Systems Approach, L. Peterson, B. Davie, Morgan Kaufmann Chapter 3.
Group #1: Protocols for Wireless Mobile Environments.
UNIT-IV Computer Network Network Layer. Network Layer Prepared by - ROHIT KOSHTA In the seven-layer OSI model of computer networking, the network layer.
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.
Internet Networking Spring 2006 Tutorial 12 Web Caching Protocols ICP, CARP.
15-441: Computer Networking Lecture 26: Networking Future.
CS 268: Active Networks Ion Stoica May 6, 2002 (* Based on David Wheterall presentation from SOSP ’99)
Internet Indirection Infrastructure Ion Stoica UC Berkeley.
Chapter 4 Network Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 14.
15-744: Computer Networking L-6 Routing Issues. L -6; © Srinivasan Seshan, New Routing Ideas Border Gateway Protocol (BGP) cont. Overlay.
Slide Set 15: IP Multicast. In this set What is multicasting ? Issues related to IP Multicast Section 4.4.
COS 420 Day 20. Agenda Group Project Discussion Protocol Definition Due April 12 Paperwork Due April 29 Assignment 3 Due Assignment 4 is posted Last Assignment.
CS 268: Project Suggestions Ion Stoica February 6, 2003.
Computer Networking Lecture 24 – Multicast.
Anycast Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
Multicast Communication
Peter Parnes, CDT1/22 Media Scaling of IP-Multicast Streams in Heterogeneous Networks Peter Parnes LTU-CDT/Marratech Roxy Workshop Media Scaling.
15-744: Computer Networking L-7 Routing Issues. L -7; © Srinivasan Seshan, New Routing Ideas Border Gateway Protocol (BGP) cont. Overlay networks.
Institute of Technology Sligo - Dept of Computing Chapter 11 Layer 3 Protocols Paul Flynn.
The Future of the Internet Jennifer Rexford ’91 Computer Science Department Princeton University
1 Version 3.0 Module 10 Routing Fundamentals and Subnetting.
Communication Part IV Multicast Communication* *Referred to slides by Manhyung Han at Kyung Hee University and Hitesh Ballani at Cornell University.
1 Internet Protocol: Forwarding IP Datagrams Chapter 7.
Computer Networks 2 Lecture 1 Multicast.
G64INC Introduction to Network Communications Ho Sooi Hock Internet Protocol.
Lecture 2 TCP/IP Protocol Suite Reference: TCP/IP Protocol Suite, 4 th Edition (chapter 2) 1.
M.Menelaou CCNA2 ROUTING. M.Menelaou ROUTING Routing is the process that a router uses to forward packets toward the destination network. A router makes.
Protocols and the TCP/IP Suite
UNIT IP Datagram Fragmentation Figure 20.7 IP datagram.
1 Flow Identification Assume you want to guarantee some type of quality of service (minimum bandwidth, maximum end-to-end delay) to a user Before you do.
CSC 600 Internetworking with TCP/IP Unit 7: IPv6 (ch. 33) Dr. Cheer-Sun Yang Spring 2001.
Networking Fundamentals. Basics Network – collection of nodes and links that cooperate for communication Nodes – computer systems –Internal (routers,
Multimedia & Mobile Communications Lab.
Computer Networking Lecture 12 – Multicast.
Networking Named Content Van Jacobson, Diana K. Smetters, James D. Thornton, Michael F. Plass, Nicholas H. Briggs, Rebecca L. Braynard.
1 Computer Communication & Networks Lecture 21 Network Layer: Delivery, Forwarding, Routing Waleed.
CSC 600 Internetworking with TCP/IP Unit 5: IP, IP Routing, and ICMP (ch. 7, ch. 8, ch. 9, ch. 10) Dr. Cheer-Sun Yang Spring 2001.
W&L Page 1 CCNA CCNA Training 3.4 Describe the technological requirements for running IPv6 in conjunction with IPv4 Jose Luis Flores /
Introducing a New Concept in Networking Fluid Networking S. Wood Nov Copyright 2006 Modern Systems Research.
CS 6401 Overlay Networks Outline Overlay networks overview Routing overlays Resilient Overlay Networks Content Distribution Networks.
15-744: Computer Networking L-19 Active Networks.
1 Switching and Forwarding Sections Connecting More Than Two Hosts Multi-access link: Ethernet, wireless –Single physical link, shared by multiple.
Fabric: A Retrospective on Evolving SDN Presented by: Tarek Elgamal.
Atrium Router Project Proposal Subhas Mondal, Manoj Nair, Subhash Singh.
Mobile IP THE 12 TH MEETING. Mobile IP  Incorporation of mobile users in the network.  Cellular system (e.g., GSM) started with mobility in mind. 
I3 and Active Networks Supplemental slides Aditya Akella 03/23/2007.
15-744: Computer Networking
Scaling the Network: The Internet Protocol
Overlay Networking Overview.
Software Defined Networking (SDN)
CPE 401/601 Computer Network Systems
15-744: Computer Networking
CS 268: Computer Networking
Lecture 6 Overlay Networks
Scaling the Network: The Internet Protocol
Lecture 6 Overlay Networks
EE 122: Lecture 22 (Overlay Networks)
Computer Networks Protocols
Presentation transcript:

15-744: Computer Networking L-6 Evolving the Network

Adding New Functionality to the Internet Networks evolution Overlay networks Next generation architecture Readings: [W99] Active network vision and reality:lessons from a capsule-based system [XIA] XIA: Efficient Support for Evolvable Internetworking Optional reading Future Internet Architecture: Clean-Slate Versus Evolutionary Research 2

A History of Internet Evolution Many success stories 1983  Flag day switch from NCP to IP 1988  /etc/hosts to DNS 1996  TCP SACK  EGP to BGP [1..4] 3

A History of Internet Evolution But also many failures 1986  IP Multicast 1997  IntServ 1998  DiffServ 1995  IPv6 Internet capabilities, traceback schemes, explicit congestion control, content-oriented processing, … 4

A History of Internet Evolution Hard to change IP …especially after IP Applications Technology Innovation both above and below IP

Clean-Slate vs. Evolutionary Successes of the 80s followed by failures of the 90’s IP Multicast QoS RED (and other AQMs) ECN … Concern that Internet research was dead Difficult to deploy new ideas What did catch on was limited by the backward compatibility required 6

NSF Programs Stagnation 100x100  Clean Slate Design PlanetLab Overcoming the Internet Impasse through Virtualization  GENI FIND  FIA (aka FIND phase 2) Phase 1 – 50 “small” projects Phase 2 – 4 large “integrative” projects Named Data Networking MobilityFirst NEBULA eXpressive Internet Architecture 7

8 Outline Active Networks Overlay Routing Architectures for Incremental Deployment

9 Why Active Networks? Traditional networks route packets looking only at destination Also, maybe source fields (e.g. multicast) Problem: Rate of deployment of new protocols and applications is too slow Applications that do more than IP forwarding Firewalls Web proxies and caches Transcoding services Nomadic routers (mobile IP) Transport gateways (snoop) Reliable multicast (lightweight multicast, PGM)

10 Active Networks Nodes (routers) receive packets: Perform computation based on their internal state and control information carried in packet Forward zero or more packets to end points depending on result of the computation Users and apps can control behavior of the routers End result: network services richer than those by the simple IP service model

11 Variations on Active Networks Programmable routers (e.g. OpenFlow) More flexible than current configuration mechanism For use by administrators or privileged users Active control (e.g. SDN) Forwarding code remains the same Useful for management/signaling/measurement of traffic “Active networks” Computation occurring at the network (IP) layer of the protocol stack  capsule based approach Programming can be done by any user Source of most active debate

12 Case Study: MIT ANTS System Conventional Networks: All routers perform same computation Active Networks: Routers have same runtime system Tradeoffs between functionality, performance and security

13 System Components Capsules Active Nodes: Execute capsules of protocol and maintain protocol state Provide capsule execution API and safety using OS/language techniques Code Distribution Mechanism Ensure capsule processing routines automatically/dynamically transfer to node as needed

14 Capsules Each user/flow programs router to handle its own packets Code sent along with packets Code sent by reference Protocol: Capsules that share the same processing code May share state in the network Capsule ID (i.e. name) is MD5 of code

15 Capsules Active Node IP Router Active Node Capsule IP HeaderVersionDataType Previous Address Type Dependent Header Files ANTS-specific header Capsules are forwarded past normal IP routers

16 Capsules Active Node 1 IP Router Active Node 2 Capsule Request for code Capsule When node receives capsule uses “type” to determine code to run What if no such code at node? Requests code from “previous address” node Likely to have code since it was recently used

17 Capsules Active Node 1 IP Router Active Node 2 Capsule Code Sent Code is transferred from previous node Size limited to 16KB Code is signed by trusted authority (e.g. IETF) to guarantee reasonable global resource use

18 Research Questions Execution environments What can capsule code access/do? Safety, security & resource sharing How isolate capsules from other flows, resources? Performance Will active code slow the network? Applications What type of applications/protocols does this enable?

19 Functions Provided to Capsule Environment Access Querying node address, time, routing tables Capsule Manipulation Access header and payload Control Operations Create, forward and suppress capsules How to control creation of new capsules? Storage Soft-state cache of app-defined objects

20 Safety, Resource Mgt, Support Safety: Provided by mobile code technology (e.g. Java) Resource Management: Node OS monitors capsule resource consumption Support: If node doesn’t have capsule code, retrieve from somewhere on path

21 Applications/Protocols Limitations Expressible  limited by execution environment Compact  less than 16KB Fast  aborted if slower than forwarding rate Incremental  not all nodes will be active Proof by example Host mobility, multicast, path MTU, Web cache routing, etc.

22 Discussion Active nodes present lots of applications with a desirable architecture Key questions Is all this necessary at the forwarding level of the network? Is ease of deploying new apps/services and protocols a reality?

23 Outline Active Networks Overlay Routing (Detour) Overlay Routing (RON) Multi-Homing

24 Overlay Routing Basic idea: Treat multiple hops through IP network as one hop in “virtual” overlay network Run routing protocol on overlay nodes Basic technique: tunnel packets Tunnels IP-in-IP encapsulation Poor interaction with firewalls, multi-path routers, etc. Why? For performance – can run more clever protocol on overlay For functionality – can provide new features such as multicast, active processing, IPv6

25 Overlay for Performance [S+99] Why would IP routing not give good performance? Policy routing – limits selection/advertisement of routes Early exit/hot-potato routing – local not global incentives Lack of performance based metrics – AS hop count is the wide area metric How bad is it really? Look at performance gain an overlay provides

26 Quantifying Performance Loss Measure round trip time (RTT) and loss rate between pairs of hosts ICMP rate limiting Alternate path characteristics 30-55% of hosts had lower latency 10% of alternate routes have 50% lower latency 75-85% have lower loss rates

27 Overlay for Features How do we add new features to the network? Does every router need to support new feature? Choices Reprogram all routers  active networks Support new feature within an overlay Examples: IP V6 & IP Multicast Tunnels between routers supporting feature Mobile IP Home agent tunnels packets to mobile host’s location

28 Bandwidth Estimation RTT & loss for multi-hop path RTT by addition Loss either worst or combine of hops – why? Large number of flows  combination of probabilities Small number of flows  worst hop Bandwidth calculation TCP bandwidth is based primarily on loss and RTT 70-80% paths have better bandwidth 10-20% of paths have 3x improvement

29 Possible Sources of Alternate Paths A few really good or bad AS’s No, benefit of top ten hosts not great Better congestion or better propagation delay? How to measure? Propagation = 10th percentile of delays Both contribute to improvement of performance What about policies/economics?

30 Overlay Challenges “Routers” no longer have complete knowledge about link they are responsible for How do you build efficient overlay Probably don’t want all N 2 links – which links to create? Without direct knowledge of underlying topology how to know what’s nearby and what is efficient?

31 Overview IP Multicast Service Basics Multicast Routing Basics Overlay Multicast Reliability Congestion Control

32 Multicast Unicast: one source to one destination Multicast: one source to many destinations Two main functions: Efficient data distribution Logical naming of a group

33 Example Applications Broadcast audio/video Push-based systems Software distribution Web-cache updates Teleconferencing (audio, video, shared whiteboard, text editor) Multi-player games Server/service location Other distributed applications

34 Multicast – Efficient Data Distribution Src

35 Multicast Router Responsibilities Learn of the existence of multicast groups (through advertisement) Identify links with group members Establish state to route packets Replicate packets on appropriate interfaces Routing entry: Src, incoming interfaceList of outgoing interfaces

36 Supporting Multicast on the Internet IP Application Internet architecture Network ? ? At which layer should multicast be implemented?

37 IP Multicast CMU Berkeley MIT UCSD routers end systems multicast flow Highly efficient Good delay

38 End System Multicast MIT1 MIT2 CMU1 CMU2 UCSD MIT1 MIT2 CMU2 Overlay Tree Berkeley CMU1 CMU Berkeley MIT UCSD

39 Quick deployment All multicast state in end systems Computation at forwarding points simplifies support for higher level functionality Potential Benefits Over IP Multicast MIT1 MIT2 CMU1 CMU2 CMU Berkeley MIT UCSD

40 Concerns with End System Multicast Self-organize recipients into multicast delivery overlay tree Must be closely matched to real network topology to be efficient Performance concerns compared to IP Multicast Increase in delay Bandwidth waste (packet duplication) MIT2 Berkeley MIT1 UCSD CMU2 CMU1 IP Multicast MIT2 Berkeley MIT1 CMU1 CMU2 UCSD End System Multicast

41 Overview IP Multicast Service Basics Multicast Routing Basics Overlay Multicast Reliability Congestion Control

Proposed -Centric Networking Content: Named Data Networking Mobility: MobilityFirst Cloud: Nebula Can we support heterogeneous communication types on a single Internet architecture? Problem: Focusing on one communication type may hinder using other communication types, as occurred to IP 42

Future -Centric Networking Service, content, mobility, and cloud did not receive much attention before Yet more networking styles may be useful in the future E.g., DTN, wide-area multicast, …? Can we support future communication types without redesigning the Internet architecture? Problem: Introducing additional communication types to the existing network can be very challenging 43

Legacy Router May Prevent Innovation Can we allow use of a new communication type even when the network is yet to natively support it? Problem: Using a new communication type may require every legacy router in the network to be upgraded “I got a computer with Awesome-Networking announced at Sigcomm 2022! Can I use it right now?” Internet “Ouch, we just replaced all of our routers built in Can you wait for another 10 years for new routers?” 44

XIA’s Goals and Design Pillars Support multiple communication types concurrently (heterogeneity) Support future communication types (flexibility) Allow using new communication types at any point (incremental deployment) “Principal types”“Fallbacks” 45

Principal Types Define your own communication model 46

Principals Current Internet XIA IP address Host0xF63C7A4… Principal type Type-specific identifier Service0x8A37037…Content0x47BF217…Future… Hash of host’s public key Hash of content Hash of service’s public key 47

Principal Definition 1: Address Allocation and Intrinsic Security XIA uses self-certifying identifiers that guarantee security properties for communication operation Host ID is a hash of its public key – accountability (AIP) Content ID is a hash of the content – correctness Does not rely on external configuration Intrinsic security is specific to the principal type Example: retrieve content using … Content XID: content is correct Service XID: the right service provided content Host XID: content was delivered from right host 48

Principal Definition 2: Type-Specific Semantics 49 Contact a host Use a service Retrieve content Host0xF63C7A4…Service0x8A37037…Content0x47BF217…

Principal Definition 3: Type-Specific Processing 50 XIA router Host-specific processing Common processing Service-specific processing Content-specific processing … InputOutput Type-specific processing examples Service: load balancing or service migration Content: content caching

Routers with Different Capabilities Routers are not required to support every principal type The only requirement: Host-based communication Host Common Host-only router Host Common Service Service-enabled router Host Common Content-enabled router Content 51

Using Principal Types that are Not Understood by Legacy Routers? Legacy router without content support Want to communicate using content principals Content-enabled router 52

Fallbacks Tomorrow’s communication types… today! 53

Fallbacks: Alternative Ways for Routers to Fulfill Intent of Packet Content Intent: Retrieve Fallback: Contact, who understands request What the network does: With content-enabled routers, use for routing Otherwise, use for routing (always succeeds) Content Host Content 54

DAG-Based Address Your address is more than a number 55

DAG (Direct Acyclic Graph)-Based Addressing Enables Fallbacks IntentPacket sender Routing choice Another routing choice (with lower priority) This host knows how to handle content request Fallback Content Host 56

Service Binding with DAG ServiceWeb service Initial contact to a service ServiceWeb service HostServer #57 When a particular host should serve subsequent service requests “Late binding” 57

DAGs Support Scoping and Iterative Refinement Client side Server-side domain hierarchy AD 0 HID S CID S 58

Incremental Deployment of XIA on IPv4 Network 4ID: IPv4 address as an XID IPv4 tunneling between XIA network islands Typically used as a fallback 4ID S HID S AD S Represents IPv4 address of AD S 59

4ID in Action (1) Partially Deployed XIA Networks XIA Network CXIA Network SIPv4 Network 4ID S AD S Entering IPv4 network: Encapsulate XIA packet with IP header Entering XIA network: Remove IP header for native XIA packet processing Works for arbitrary pairs of XIA networks 60

4ID in Action (2) Fully Deployed XIA Networks XIA Network CXIA Network SXIA Network C 4ID S AD S Use native XIA forwarding and ignore fallback Seamless incremental deployment of XIA 61

Next Lecture Software-based routers Readings: RouteBricks: Exploiting Parallelism To Scale Software Routers (read sections 1-2) The Click Modular Router (read whole paper) 62