ECE544: Communication Networks-II, Spring 2007 D. Raychaudhuri Lecture 5 Includes teaching materials from L. Peterson.

Slides:



Advertisements
Similar presentations
TCOM 509 – Internet Protocols (TCP/IP) Lecture 06_b Subnetting,Supernetting, CIDR IPv6 Instructor: Dr. Li-Chuan Chen Date: 10/06/2003 Based in part upon.
Advertisements

1 May, 2007: American Registry for Internet Numbers (ARIN) “advises the Internet community that migration to IPv6 numbering resources is necessary for.
1 IPv6. 2 Problem: 32-bit address space will be completely allocated by Solution: Design a new IP with a larger address space, called the IP version.
IP Version 6 Next generation IP Prof. P Venkataram ECE Dept. IISc.
1 o Two issues in practice – Scale – Administrative autonomy o Autonomous system (AS) or region o Intra autonomous system routing protocol o Gateway routers.
CS Summer 2003 CS672: MPLS Architecture, Applications and Fault-Tolerance.
Routing: Exterior Gateway Protocols and Autonomous Systems Chapter 15.
CS4550 Computer Networks II IP : internet protocol, part 3 : routing policies, IPv6.
Computer Networks: Global Internet Global Internet.
CS 164: Global Internet Slide Set In this set... More about subnets Classless Inter Domain Routing (CIDR) Border Gateway Protocol (BGP) Areas with.
ECE544: Communication Networks-II Spring 2009 Hang Liu Lecture 5 Includes teaching materials from D. Raychaudhuri, L. Peterson.
Spring 2003CS 4611 Routing Outline Algorithms Scalability.
1 Routing Distance Vector Routing Link State Routing Hierarchical Routing Routing for Mobile Hosts Subnetting Classless Inter-Domain Routing (Supernet)
Computer Networking Inter-Domain Routing BGP (Border Gateway Protocol)
Spring Routing & Switching Umar Kalim Dept. of Communication Systems Engineering 17/04/2007.
Computer Networking Lecture 10: Inter-Domain Routing
ECE544: Communication Networks-II, Spring 2011 D. Raychaudhuri Lecture 5 Includes teaching materials from L. Peterson, J. Kurose, K. Almeroth.
15-744: Computer Networking L-5 Intra-Domain Routing.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Exterior Gateway Protocols: EGP, BGP-4, CIDR Shivkumar Kalyanaraman Rensselaer Polytechnic Institute.
15-744: Computer Networking L-5 Inter-Domain Routing.
Subnetting and CIDR Textbook Ch 3.2.5
Spring 2002CS 4611 Routing Outline Algorithms Scalability.
Jennifer Rexford Princeton University MW 11:00am-12:20pm Wide-Area Traffic Management COS 597E: Software Defined Networking.
Computer Networking Inter-Domain Routing BGP (Border Gateway Protocol)
CSS 432: Subnetting, CIDR, and Global Internet
CS 6401 Efficient Addressing Outline Addressing Subnetting Supernetting.
Inter-domain Routing Outline Border Gateway Protocol.
TCP/IP Protocol Suite 1 Chapter 14 Upon completion you will be able to: Unicast Routing Protocols: RIP, OSPF, and BGP Distinguish between intra and interdomain.
1 Routing Outline Algorithms Scalability. 2 Overview Forwarding vs Routing –forwarding: to select an output port based on destination address and routing.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco Public BSCI Module 8 Lessons 1 and 2 1 BSCI Module 8 Lessons 1 and 2 Introducing IPv6 and Defining.
Introduction to BGP.
1 Introduction to Computer Networks Ilam University By: Dr. Mozafar Bag-Mohammadi Routing.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking BGP, Flooding, Multicast routing.
CCNA 1 Module 10 Routing Fundamentals and Subnets.
Efficient Addressing Outline Addressing Subnetting Supernetting CS 640.
1 Routing Distance Vector Routing Link State Routing Hierarchical Routing Routing for Mobile Hosts.
1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Routing.
Interior Gateway Protocol. Introduction An IGP (Interior Gateway Protocol) is a protocol for exchanging routing information between gateways (hosts with.
14-Oct-154/598N: Computer Networks Internet Structure - Past NSFNET backbone Stanford BARRNET regional Berkeley PARC NCAR UA UNM Westnet regional UNL KU.
Lecture 4: BGP Presentations Lab information H/W update.
Border Gateway Protocol
Computer Networking Inter-Domain Routing BGP (Border Gateway Protocol)
Xuan Zheng (modified by M. Veeraraghavan) 1 BGP overview BGP operations BGP messages BGP decision algorithm BGP states.
CSC 600 Internetworking with TCP/IP Unit 7: IPv6 (ch. 33) Dr. Cheer-Sun Yang Spring 2001.
Network Layer4-1 The Internet Network layer forwarding table Host, router network layer functions: Routing protocols path selection RIP, OSPF, BGP IP protocol.
TCOM 509 – Internet Protocols (TCP/IP) Lecture 06_a Routing Protocols: RIP, OSPF, BGP Instructor: Dr. Li-Chuan Chen Date: 10/06/2003 Based in part upon.
1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag-Mohammadi Routing.
IPv6 Internet Protocol Version Information management 2 Groep T Leuven – Information department 2/24 Internet Protocol Version 6 (IPv6)
23-Dec-154/598N: Computer Networks Overview 4.2: Routing Forwarding vs Routing –forwarding: to select an output port based on destination address and routing.
An internet is a combination of networks connected by routers. When a datagram goes from a source to a destination, it will probably pass through many.
CS 640: Introduction to Computer Networks Aditya Akella Lecture 11 - Inter-Domain Routing - BGP (Border Gateway Protocol)
Spring 2010CS 3321 Interdomain Routing. Spring 2010CS 3322 How to Make Routing Scale Flat versus Hierarchical Addresses Inefficient use of Hierarchical.
Spring 2006CS 3321 Interdomain Routing. Spring 2006CS 3322 How to Make Routing Scale Flat versus Hierarchical Addresses Inefficient use of Hierarchical.
Spring 2008CPE Computer Networks1 Routing: Part II Outline Algorithms Scalability Reading: Section 4.3.
Inter-domain Routing Outline Border Gateway Protocol.
Inter-Domain Routing. Routing Hierarchies Flat routing doesn’t scale –Each node cannot be expected to have routes to every destination (or destination.
Computer Networking Inter-Domain Routing BGP (Border Gateway Protocol)
IPv6. What is an IP address?  Each host on a TCP/IP network is uniquely identified at the IP layer with an address.  An Internet Protocol (IP) address.
© 2006 Cisco Systems, Inc. All rights reserved. BSCI v3.0—8-1 Implementing IPv6 Defining IPv6 Addressing.
ROUTING ON THE INTERNET COSC Jun-16. Routing Protocols  routers receive and forward packets  make decisions based on knowledge of topology.
1 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
1 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
IPv6 Internet Protocol, Version 6 Yen-Cheng Chen NCNU
CSS432 Subnetting and CIDR Textbook Ch3. 2
IP Addressing Introductory material.
ECE544: Communication Networks-II, Spring 2016
IP Addressing Introductory material.
IP Addressing Introductory material.
Chapter 26 IPv6 Addressing
ECE544: Communication Networks-II, Spring 2006
Presentation transcript:

ECE544: Communication Networks-II, Spring 2007 D. Raychaudhuri Lecture 5 Includes teaching materials from L. Peterson

Today’s Lecture Routing metrics Scalable IP routing IPv6 Inter-domain routing (BGP)

Routing Metrics

Metric choices Static metrics (e.g., hop count) –good only if links are homogeneous –not the case in the Internet Static metrics do not take into account: –link delay –link capacity –link load (hard to measure)

Original ARPANET metric Cost proportional to queue size –instantaneous queue length as delay estimator Problems : –did not take into account link speed –poor indicator of expected delay due to rapid fluctuations –delay may be longer even if queue size is small due to contention for other resources

New metric Delay = (depart time - arrival time) + transmission time + link propagation delay –(depart time - arrival time) captures queuing –transmission time captures link capacity –link propagation delay captures the physical length of the link Measurements averaged over 10 seconds –Update sent if difference > threshold, or every 50 seconds

Performance of new metric Works well for light to moderate load –static values dominate Oscillates under heavy load –queuing dominates Reason: there is no correlation between original and new values of delay after re-routing!

Specific problems Range is too wide –9.6 Kbps highly loaded link can appear 127 times costlier than 56 Kbps lightly loaded link –can make a 127-hop path look better than 1-hop No limit in reported delay variation All nodes calculate routes simultaneously –triggered by link update

Consequences Low network utilization (50% in example) Congestion can spread elsewhere Routes could oscillate between short and long paths Large swings lead to frequent route updates –more messages –frequent SPT re-calculation

Revised link metric Better metric: packet delay = f(queueing, transmission, propagation). When lightly loaded, transmission and propagation are good predictors When heavily loaded queueing delay is dominant and so transmission and propagation are bad predictors

Routing metric v.s. link utilization %100%25%75% 225 New metric (routing units) Utilization 9.6 satellite 9.6 terrestrial 56 terrestrial 56 satellite 90

Observations Cost of highly loaded link never more than 3*cost when idle Most expensive link is 7 * least expensive link High-speed satellite link is more attractive than low-speed terrestrial link

Routing dynamics Link reported cost Utilization Bounded oscillation Metric map Network response

Routing dynamics Reported cost Utilization Metric map Network response Easing in a new link

Scalable IP Routing

How to Make Routing Scale Flat versus Hierarchical Addresses Inefficient use of Hierarchical Address Space –class C with 2 hosts (2/255 = 0.78% efficient) –class B with 256 hosts (256/65535 = 0.39% efficient) Still Too Many Networks –routing tables do not scale –route propagation protocols do not scale

Internet Structure Recent Past NSFNET backbone Stanford BARRNET regional Berkeley P ARC NCAR UA UNM Westnet regional UNL KU ISU MidNet regional …

Internet Structure Today Backbone service provider Peering point Peering point Large corporation Small corporation “ Consumer ” ISP “Consumer” ISP “ Consumer” ISP

Subnetting Add another level to address/routing hierarchy: subnet Subnet masks define variable partition of host part Subnets visible only within site Network numberHost number Class B address Subnet mask ( ) Subnetted address Network numberHost IDSubnet ID

Subnet Example Forwarding table at router R1 Subnet Number Subnet Mask Next Hop interface interface R2 Subnet mask: Subnet number: H1 R Subnet mask: Subnet number: R2 H Subnet mask: Subnet number: H3

Supernetting (CIDR) Assign block of contiguous network numbers to nearby networks Called CIDR: Classless Inter-Domain Routing Protocol uses a (length, value) pair length = # of bits in network prefix Use CIDR bit mask to identify block size All routers must understand CIDR addressing Routers can aggregate routes with a single advertisement -> use longest prefix match

Supernetting (CIDR) Routers can aggregate routes with a single advertisement -> use longest prefix match Hex/length notation for CIDR address: –C /12 denotes a netmask with 12 leading 1 bits, i.e. FF.F0.0.0 Routing table uses “longest prefix match” – (16 bit prefix) = port #1 – (24 bit prefix) = port #2 –then DA= matches port #1 –and DA = matches port#2

Chapter 4, Figure 26 Border gateway (advertises path to ) Regional network Corporation X ( ) Corporation Y ( ) Route Aggregation with CIDR

IP Version 6 Features –128-bit addresses (classless) –multicast –real-time service –authentication and security –autoconfiguration –end-to-end fragmentation –protocol extensions Header –40-byte “base” header –extension headers (fixed order, mostly fixed length) fragmentation source routing authentication and security other options

IP Service IPv4 Solution IPv6 Solution Mobile IP with Direct Routing DHCP Mobile IP IGMP/PIM/Multicast BGP IP Multicast MLD/PIM/Multicast BGP,Scope Identifier MLD/PIM/Multicast BGP,Scope Identifier Mobility Autoconfiguration Serverless, Reconfiguration, DHCP Serverless, Reconfiguration, DHCP IPv6 Technology Scope 32-bit, Network Address Translation 128-bit, Multiple Scopes 128-bit, Multiple Scopes Addressing Range Quality-of-Service Differentiated Service, Integrated Service Security IPSec Mandated, works End-to-End IPSec

IPv4 & IPv6 Header Comparison VersionIHLType of ServiceTotal Length IdentificationFlags Fragment Offset Time to LiveProtocolHeader Checksum Source Address Destination Address OptionsPadding VersionTraffic ClassFlow Label Payload Length Next Header Hop Limit Source Address Destination Address IPv4 Header Header IPv6 Header - field’s name kept from IPv4 to IPv6 - fields not kept in IPv6 - Name & position changed in IPv6 - New field in IPv6 Legend

27 IPv6 Addressing IPv6 Addressing rules are covered by multiples RFC’s –Architecture defined by RFC 2373 Address Types are : –Unicast : One to One (Global, Link local, Site local, Compatible) –Anycast : One to Nearest (Allocated from Unicast) –Multicast : One to Many –Reserved A single interface may be assigned multiple IPv6 addresses of any type (unicast, anycast, multicast) –No Broadcast Address -> Use Multicast

IPv6 Address Representation 16-bit fields in case insensitive colon hexadecimal representation 2031:0000:130F:0000:0000:09C0:876A:130B Leading zeros in a field are optional: 2031:0:130F:0:0:9C0:876A:130B Successive fields of 0 represented as ::, but only once in an address: 2031:0:130F::9C0:876A:130B 2031::130F::9C0:876A:130B 0:0:0:0:0:0:0:1 => ::1 0:0:0:0:0:0:0:0 => :: IPv4-compatible address representation 0:0:0:0:0:0: = :: = ::C0A8:1E01

29 IPv6 Addressing Prefix Format (PF) Allocation –PF = : Reserved –PF = 001 : Aggregatable Global Unicast Address –PF = : Link Local Use Addresses (FE80::/10) –PF = : Site Local Use Addresses (FEC)::/10) –PF = : Multicast Addresses (FF00::/8) –Other values are currently Unassigned (approx. 7/8th of total) All Prefix Formats have to support EUI-64 bits Interface ID setting –But Multicast

Aggregatable Global Unicast Addresses Aggregatable Global Unicast addresses are: –Addresses for generic use of IPv6 –Structured as a hierarchy to keep the aggregation See draft-ietf-ipngwg-addr-arch-v3-07 Interface ID Global Routing Prefix SLA bits345 bits16 bits ProviderSiteHost

Address Allocation The allocation process is under reviewed by the Registries: –IANA allocates 2001::/16 to registries –Each registry gets a /23 prefix from IANA –Formely, all ISP were getting a /35 –With the new proposal, Registry allocates a /36 (immediate allocation) or /32 (initial allocation) prefix to an IPv6 ISP –Policy is that an ISP allocates a /48 prefix to each end customer –ftp://ftp.cs.duke.edu/pub/narten/ietf/global-ipv6-assign txt ISP prefix Site prefix LAN prefix /32 /48/64 Registry /23 Bootstrap process - RFC2450 Interface ID

Hierarchical Addressing & Aggregation –Larger address space enables: Aggregation of prefixes announced in the global routing table. Efficient and scalable routing. ISP 2001:0410::/32 Customer no 2 IPv6 Internet 2001::/ :0410:0002:/ :0410:0001:/48 Customer no 1 Only announces the /32 prefix

Link-local addresses for use during auto-configuration and when no routers are present: Site-local addresses for independence from Global Reachability, similar to IPv4 private address space Link-Local & Site-Local Unicast Addresses interface ID interface IDSLA*

Multicast Addresses (RFC 2375) low-order flag indicates permanent / transient group; three other flags reserved scope field: 1 - node local –2 - link-local –5 - site-local –8 - organization-local –B - community-local –E - global –(all other values reserved) 4112 bits8 group IDscopeflags

35 more on IPv6 Addressing 80 bits32 bits16 bits IPv4 Address ……………………………0000 IPv6 Addresses with Embedded IPv4 Addresses 80 bits32 bits16 bits IPv4 AddressFFFF0000……………………………0000 IPv4 mapped IPv6 address

IPv6 Addressing Examples LAN: 3ffe:b00:c18:1::/64 Ethernet0 MAC address: e router# show ipv6 interface Ethernet0 Ethernet0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::260:3EFF:FE47:1530 Global unicast address(es): 2001:410:213:1:260:3EFF:FE47:1530, subnet is 2001:410:213:1::/64 Joined group address(es): FF02::1:FF47:1530 FF02::1 FF02::2 MTU is 1500 bytes interface Ethernet0 ipv6 address 2001:410:213:1::/64 eui-64

BGP Overview

BGP-4: Border Gateway Protocol AS (Autonomous System) Types –stub AS: has a single connection to one other AS carries local traffic only –multihomed AS: has connections to more than one AS refuses to carry transit traffic –transit AS: has connections to more than one AS carries both transit and local traffic Each AS has: –one or more border routers –one BGP speaker that advertises: local networks other reachable networks (transit AS only) gives path information

Example EGP IGP EGP IGP EGP

Path Suboptimality hop red path vs 2 hop green path

Choices Link state or distance vector? –no universal metric - policy decisions Problems with distance-vector: –Bellman-Ford algorithm may not converge Problems with link state: –metric used by routers not the same - loops –LS database too large - entire Internet –may expose policies to other AS’s

Solution: Path Vectors Each routing update carries the entire path Loops are detected as follows: –when AS gets route check if AS already in path –if yes, reject route –if no, add self and advertise route further Advantage: –metrics are local - AS chooses path, protocol ensures no loops

Problems Routing table size –need an entry for all paths to all networks Required memory= O(N + M*A) * K) –N: number of networks –M: mean AS distance –A: number of AS’s –K: number of BGP peers Problem reduced with CIDR

Routing table size

BGP Example Speaker for AS2 advertises reachability to P and Q –network , , , and , can be reached directly from AS2 Speaker for backbone advertises –networks , , , and can be reached along the path (AS1, AS2). Speaker can cancel previously advertised paths Backbone network (AS 1) Regional provider A (AS 2) Regional provider B (AS 3) Customer P (AS 4) Customer Q (AS 5) Customer R (AS 6) Customer S (AS 7)

Interior BGP peers IGP cannot propagate all the information required by BGP External routers in an AS use interior BGP (IBGP) connections to communicate External routers agree on routes and inform IGP IBGP

Interconnecting BGP peers BGP uses TCP to connect peers Advantages: –BGP much simpler –no need for periodic refresh –incremental updates Disadvantages –congestion control on a routing protocol?

Hop-by-hop model BGP advertises to neighbors only those routes that it uses –consistent with the hop-by-hop Internet paradigm –e.g., AS1 cannot tell AS2 to route to other AS’s in a manner different than what AS2 has chosen (need source routing for that)

Policy with BGP BGP provides capability for enforcing various policies Policies are not part of BGP: they are provided to BGP as configuration information BGP enforces policies by choosing paths from multiple alternatives and controlling advertisement to other AS’s

Examples of BGP policies A multihomed AS refuses to act as transit –limit path advertisement A multihomed AS can become transit for some AS’s –only advertise paths to some AS’s An AS can favor or disfavor certain AS’s for traffic transit from itself

BGP-4 Latest version of BGP BGP-4 supports CIDR

Routing information bases (RIB) Routes are stored in RIBs Adj-RIBs-In: routing info that has been learned from other routers (unprocessed routing info) Loc-RIB: local routing information selected from Adj-RIBs-In (routes selected locally) Adj-RIBs-Out: info to be advertised to peers (routes to be advertised)

BGP common header LengthType Marker (security and message delineation) Types: OPEN, UPDATE, NOTIFICATION, KEEPALIVE

Optional parameters BGP OPEN message LengthType: update Marker (security and message delineation) version My autonomous systemHold time BGP identifier Parameter length My AS: id assigned to that AS Hold timer: max interval between KEEPALIVE or UPDATE messages BGP ID: address of one interface (same for all messages)

BGP UPDATE message LengthType: open Marker (security and message delineation) Withdrawn....routes len Withdrawn routes (variable) Path attribute len Path attributes (variable) Network layer reachability information (NLRI) (variable) UPDATE message reports information on a SINGLE path, but can report multiple withdrawn routes...

NLRI Network Level Reachability Information –list of IP address prefixes encoded as follows: Length (1 byte) Prefix (variable)

Data BGP NOTIFICATION message Length Type: NOTIFICATION Marker (security and message delineation) Error code Error sub-code Used for error notification

BGP KEEPALIVE message Length Type: KEEPALIVE Marker (security and message delineation) Sent periodically to peers to ensure connectivity If hold_time is zero, messages are not sent

Policy routing TZXY U V Assume Y forbids T’s traffic T cannot reach X, but X can reach T!

Options Advertise all paths: –Path 1: through T can reach /23 –Path 2: through T can reach /24 –Path 3: through T can reach /24 But this does not reduce routing tables! We would like to advertise: –Path 1: through T can reach /22

Sources RFC1771: main BGP RFC RFC : application, experiences, and analysis of BGP RFC1965: AS confederations for BGP Christian Huitema’s book “Routing in the Internet”, chapters 8 and 9. Tutorial/sld022.htm (Cisco tutorial) Tutorial/sld022.htm

69 Today’s Homework Peterson & Davie, Chap (3 rd Ed) Download and browse IPv6 and BGP RFC’s