15-744: Computer Networking L-7 Routing Issues. L -7; 2-6-02© Srinivasan Seshan, 20022 New Routing Ideas Border Gateway Protocol (BGP) cont. Overlay networks.

Slides:



Advertisements
Similar presentations
Transitioning to IPv6 April 15,2005 Presented By: Richard Moore PBS Enterprise Technology.
Advertisements

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.
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.
Fundamentals of Computer Networks ECE 478/578 Lecture #18: Policy-Based Routing Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
UNIT-IV Computer Network Network Layer. Network Layer Prepared by - ROHIT KOSHTA In the seven-layer OSI model of computer networking, the network layer.
1 Interdomain Routing Protocols. 2 Autonomous Systems An autonomous system (AS) is a region of the Internet that is administered by a single entity and.
CSE University of Washington Multipath Routing Protocols in AdHoc Networks.
1 Improving the Performance of Distributed Applications Using Active Networks Mohamed M. Hefeeda 4/28/1999.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
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)
CS 164: Global Internet Slide Set In this set... More about subnets Classless Inter Domain Routing (CIDR) Border Gateway Protocol (BGP) Areas with.
MOBILITY SUPPORT IN IPv6
15-744: Computer Networking L-6 Routing Issues. L -6; © Srinivasan Seshan, New Routing Ideas Border Gateway Protocol (BGP) cont. Overlay.
15-744: Computer Networking L-7 Routing Issues. L -7; © Srinivasan Seshan, Routing Alternatives Overlay routing techniques Landmark hierarchies.
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.
CS335 Networking & Network Administration Tuesday, May 18, 2010.
IPv6 Mobility David Bush. Correspondent Node Operation DEF: Correspondent node is any node that is trying to communicate with a mobile node. This node.
15-744: Computer Networking L-5 Inter-Domain Routing.
Routing and Routing Protocols
15-744: Computer Networking L-6 Inter-Domain Routing.
CS335 Networking & Network Administration Tuesday, April 20, 2010.
Lecture Week 3 Introduction to Dynamic Routing Protocol Routing Protocols and Concepts.
1 Multi-Protocol Label Switching (MPLS) presented by: chitralekha tamrakar (B.S.E.) divya krit tamrakar (B.S.E.) Rashmi shrivastava(B.S.E.) prakriti.
Mobile IP Performance Issues in Practice. Introduction What is Mobile IP? –Mobile IP is a technology that allows a "mobile node" (MN) to change its point.
Introduction to Routing and Routing Protocols By Ashar Anwar.
Lecture 2 TCP/IP Protocol Suite Reference: TCP/IP Protocol Suite, 4 th Edition (chapter 2) 1.
Unicast Routing Protocols  A routing protocol is a combination of rules and procedures that lets routers in the internet inform each other of changes.
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
15-744: Computer Networking L-15 Changing the Network.
Introduction to Networks CS587x Lecture 1 Department of Computer Science Iowa State University.
UNIT IP Datagram Fragmentation Figure 20.7 IP datagram.
HAIR: Hierarchical Architecture for Internet Routing Anja Feldmann TU-Berlin / Deutsche Telekom Laboratories Randy Bush, Luca Cittadini, Olaf Maennel,
Jennifer Rexford Fall 2014 (TTh 3:00-4:20 in CS 105) COS 561: Advanced Computer Networks BGP.
Computer Networking Inter-Domain Routing BGP (Border Gateway Protocol)
1 Route Optimization for Large Scale Network Mobility Assisted by BGP Feriel Mimoune, Farid Nait-Abdesselam, Tarik Taleb and Kazuo Hashimoto GLOBECOM 2007.
CSC 600 Internetworking with TCP/IP Unit 7: IPv6 (ch. 33) Dr. Cheer-Sun Yang Spring 2001.
COP 5611 Operating Systems Spring 2010 Dan C. Marinescu Office: HEC 439 B Office hours: M-Wd 2:00-3:00 PM.
Packet switching network Data is divided into packets. Transfer of information as payload in data packets Packets undergo random delays & possible loss.
Networking Fundamentals. Basics Network – collection of nodes and links that cooperate for communication Nodes – computer systems –Internal (routers,
15-744: Computer Networking L-6 Evolving the Network.
Introduction to Mobile IPv6
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.
Introducing a New Concept in Networking Fluid Networking S. Wood Nov Copyright 2006 Modern Systems Research.
Spring 2010CS 3321 Interdomain Routing. Spring 2010CS 3322 How to Make Routing Scale Flat versus Hierarchical Addresses Inefficient use of Hierarchical.
15-744: Computer Networking L-19 Active Networks.
1 Transport Layer: Basics Outline Intro to transport UDP Congestion control basics.
Inter-domain Routing Outline Border Gateway Protocol.
Lecture 13 IP V4 & IP V6. Figure Protocols at network layer.
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.
COS 561: Advanced Computer Networks
CS 457 – Lecture 10 Internetworking and IP
15-744: Computer Networking
Network Core and QoS.
CS 268: Computer Networking
Dynamic Routing and OSPF
COS 561: Advanced Computer Networks
COS 561: Advanced Computer Networks
COS 561: Advanced Computer Networks
Inter-domain Routing Outline Homework #3 solutions
EE 122: Lecture 22 (Overlay Networks)
BGP Instability Jennifer Rexford
Computer Networks Protocols
Internet Protocol version 6 (IPv6)
Network Core and QoS.
Presentation transcript:

15-744: Computer Networking L-7 Routing Issues

L -7; © Srinivasan Seshan, New Routing Ideas Border Gateway Protocol (BGP) cont. Overlay networks Active networks Assigned reading [S+99] The End-to-End Effects of Internet Path Selection [W99] Active network vision and reality: lessons from a capsule-based system

L -7; © Srinivasan Seshan, Outline Multi-Homing Stability Issues Overlay Routing Active Networks

L -7; © Srinivasan Seshan, Multi-homing With multi-homing, a single network has more than one connection to the Internet. Improves reliability and performance: Can accommodate link failure Bandwidth is sum of links to Internet Challenges Getting policy right (MED, etc..) Addressing

L -7; © Srinivasan Seshan, Multi-homing to Multiple Providers Major issues: Addressing Aggregation Customer address space: Delegated by ISP1 Delegated by ISP2 Delegated by ISP1 and ISP2 Obtained independently ISP1ISP2 ISP3 Customer

L -7; © Srinivasan Seshan, Address Space from one ISP Customer uses address space from ISP1 ISP1 advertises /16 aggregate Customer advertises /24 route to ISP2 ISP2 relays route to ISP1 and ISP3 ISP2-3 use /24 route ISP1 routes directly Problems with traffic load? / /24 ISP1ISP2 ISP3 Customer

L -7; © Srinivasan Seshan, Pitfalls ISP1 aggregates to a /19 at border router to reduce internal tables. ISP1 still announces /16. ISP1 hears /24 from ISP2. ISP1 routes packets for customer to ISP2! Workaround: ISP1 must inject /24 into I-BGP / /16 ISP1ISP2 ISP3 Customer /24

L -7; © Srinivasan Seshan, Address Space from Both ISPs ISP1 and ISP2 continue to announce aggregates Load sharing depends on traffic to two prefixes Lack of reliability: if ISP1 link goes down, part of customer becomes inaccessible. Customer may announce prefixes to both ISPs, but still problems with longest match as in case / /24 ISP1ISP2 ISP3 Customer

L -7; © Srinivasan Seshan, Address Space Obtained Independently Offers the most control, but at the cost of aggregation. Still need to control paths Many ISP’s ignore advertisements of less than /19 ISP1ISP2 ISP3 Customer

L -7; © Srinivasan Seshan, Outline Multi-Homing Stability Issues Overlay Routing Active Networks

L -7; © Srinivasan Seshan, Signs of Routing Instability Record of BGP messages at major exchanges Discovered orders of magnitude larger than expected updates Bulk were duplicate withdrawals Stateless implementation of BGP – did not keep track of information passed to peers Impact of few implementations Strong frequency (30/60 sec) components Interaction with other local routing/links etc.

L -7; © Srinivasan Seshan, Route Flap Storm Overloaded routers fail to send Keep_Alive message and marked as down I-BGP peers find alternate paths Overloaded router re-establishes peering session Must send large updates Increased load causes more routers to fail!

L -7; © Srinivasan Seshan, Route Flap Dampening Routers now give higher priority to BGP/Keep_Alive to avoid problem Associate a penalty with each route Increase when route flaps Exponentially decay penalty with time When penalty reaches threshold, suppress route

L -7; © Srinivasan Seshan, BGP Limitations: Oscillations AS 0 AS 2 AS 1 R (*R,1R,2R) (0R,*R,2R)(0R,1R,*R)

L -7; © Srinivasan Seshan, BGP Limitations: Oscillations AS 0 AS 2 AS 1 R (-,*1R,2R) (*0R,-,2R) (*0R,1R,-) W W W    (*R,1R,2R) (0R,*R,2R) (0R,1R,*R)

L -7; © Srinivasan Seshan, BGP Limitations: Oscillations AS 0 AS 2 AS 1 R (-,*1R,2R) (-,-,*2R) (01R,*1R,-) 01R    (-,*1R,2R) (*0R,-,2R) (*0R,1R,-)

L -7; © Srinivasan Seshan, BGP Limitations: Oscillations AS 0 AS 2 AS 1 R (-,-,*2R) (*01R,10R,-) 10R    (-,*1R,2R) (-,-,*2R) (01R,*1R,-)

L -7; © Srinivasan Seshan, BGP Limitations: Oscillations AS 0 AS 2 AS 1 R (-,-,-) (-,-,*20R) (*01R,10R,-) 20R    (-,-,*2R) (*01R,10R,-)

L -7; © Srinivasan Seshan, BGP Limitations: Oscillations AS 0 AS 2 AS 1 R (-,*12R,-) (-,-,*20R) (*01R,-,-) 12R    (-,-,-) (-,-,*20R)(*01R,10R,-)

L -7; © Srinivasan Seshan, BGP Limitations: Oscillations AS 0 AS 2 AS 1 R (-,*12R,21R) (-,-,-)(*01R,-,-) 21R (-,*12R,-) (-,-,*20R)(*01R,-,-)  

L -7; © Srinivasan Seshan, BGP Oscillations Can possible explore every possible path through network  (n-1)! Combinations Limit between update messages (MinRouteAdver) reduces exploration Forces router to process all outstanding messages Typical Internet failover times New/shorter link  60 seconds Results in simple replacement at nodes Down link  180 seconds Results in search of possible options Longer link  120 seconds Results in replacement or search based on length

L -7; © Srinivasan Seshan, Outline Multi-Homing Stability Issues Overlay Routing Active Networks

L -7; © Srinivasan Seshan, Overlay Routing Basic idea: Treat multiple hops through IP network as one hop in overlay network Run routing protocol on overlay nodes Why? For performance – can run more clever protocol on overlay For efficiency – can make core routers very simple For functionality – can provide new features such as multicast, active processing, IPv6

L -7; © Srinivasan Seshan, 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 Basic technique: tunnel packets Tunnels IP-in-IP encapsulation Poor interaction with firewalls, multi-path routers, etc.

L -7; © Srinivasan Seshan, Examples IP V6 & IP Multicast Tunnels between routers supporting feature Mobile IP Home agent tunnels packets to mobile host’s location QOS Needs some support from intermediate routers

L -7; © Srinivasan Seshan, Overlay for Efficiency Multi-path routing More efficient use of links or QOS Need to be able to direct packets based on more than just destination address  can be computationally expensive What granularity? Per source? Per connection? Per packet? Per packet  re-ordering Per source, per flow  coarse grain vs. fine grain Take advantage of relative duration of flows Most bytes on long flows

L -7; © Srinivasan Seshan, Edge vs. Core Routers Island of routers Edges can perform complex computation to classify flow Cores do extremely simple forwarding How to communicate computation results MPLS Dynamic packet state

L -7; © Srinivasan Seshan, 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

L -7; © Srinivasan Seshan, 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

L -7; © Srinivasan Seshan, 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

L -7; © Srinivasan Seshan, 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

L -7; © Srinivasan Seshan, 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?

L -7; © Srinivasan Seshan, Future of Overlay Application specific overlays Why should overlay nodes only do routing? Caching Intercept requests and create responses Transcoding Changing content of packets to match available bandwidth Peer-to-peer applications

L -7; © Srinivasan Seshan, Outline Multi-Homing Stability Issues Overlay Routing Active Networks

L -7; © Srinivasan Seshan, 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 Solution Allow computation in routers to support new protocol deployment

L -7; © Srinivasan Seshan, 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

L -7; © Srinivasan Seshan, Why not IP? 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) Online auctions Sensor data mixing and fusion Active networks makes such applications easy to develop and deploy

L -7; © Srinivasan Seshan, Variations on Active Networks Programmable routers More flexible than current configuration mechanism For use by administrators or privileged users Active control 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

L -7; © Srinivasan Seshan, 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

L -7; © Srinivasan Seshan, 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

L -7; © Srinivasan Seshan, 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 is MD5 of code

L -7; © Srinivasan Seshan, 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

L -7; © Srinivasan Seshan, 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 If no code at node requests code from “previous address” node Likely to have code since it was recently used

L -7; © Srinivasan Seshan, 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

L -7; © Srinivasan Seshan, 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?

L -7; © Srinivasan Seshan, Functions Provided by 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

L -7; © Srinivasan Seshan, 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

L -7; © Srinivasan Seshan, 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.

L -7; © Srinivasan Seshan, 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?

L -7; © Srinivasan Seshan, Next Lecture: Mobile Routing Mobile IP Ad-hoc networks Assigned reading [Joh96] Scalable Support for Transparent Mobile Host Internetworking [BMJ+98] A Performance Comparison of Multi- Hop Wireless Ad Hoc Routing Protocols