ECE544: Communication Networks-II Spring 2009 Hang Liu Lecture 5 Includes teaching materials from D. Raychaudhuri, 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 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.
4 IP Address (IPv4)  A unique 32-bit number  Identifies an interface (on a host, on a router, …)  Represented in dotted-quad notation
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.
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.
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.
Spring 2003CS 4611 Routing Outline Algorithms Scalability.
ECE544: Communication Networks-II, Spring 2007 D. Raychaudhuri Lecture 5 Includes teaching materials from L. Peterson.
Computer Networking Inter-Domain Routing BGP (Border Gateway Protocol)
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.
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.
Extending Networks. Three Levels of Extension Physical Layer –Repeaters Link Layer –Bridges –Switches Network –Routers: “Connecting networks”
Subnetting and CIDR Textbook Ch 3.2.5
© 2009 Cisco Systems, Inc. All rights reserved. ROUTE v1.0—6-1 Connecting an Enterprise Network to an ISP Network Considering the Advantages of Using BGP.
Spring 2002CS 4611 Routing Outline Algorithms Scalability.
Computer Networking Inter-Domain Routing BGP (Border Gateway Protocol)
CSS 432: Subnetting, CIDR, and Global Internet
CS 6401 Efficient Addressing Outline Addressing Subnetting Supernetting.
Computer Networks Layering and Routing Dina Katabi
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.
Unicast Routing Protocols  A routing protocol is a combination of rules and procedures that lets routers in the internet inform each other of changes.
© 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.
Routing protocols Basic Routing Routing Information Protocol (RIP) Open Shortest Path First (OSPF)
1 Internet Protocol. 2 Connectionless Network Layers Destination, source, hop count Maybe other stuff –fragmentation –options (e.g., source routing) –error.
Efficient Addressing Outline Addressing Subnetting Supernetting CS 640.
1 Routing Distance Vector Routing Link State Routing Hierarchical Routing Routing for Mobile Hosts.
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
Routing in the Internet The Global Internet consists of Autonomous Systems (AS) interconnected with eachother: Stub AS: small corporation Multihomed AS:
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)
Internet Protocols. ICMP ICMP – Internet Control Message Protocol Each ICMP message is encapsulated in an IP packet – Treated like any other datagram,
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.
Routing in the Inernet Outcomes: –What are routing protocols used for Intra-ASs Routing in the Internet? –The Working Principle of RIP and OSPF –What is.
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.
1 COMP 431 Internet Services & Protocols The IP Internet Protocol Jasleen Kaur April 21, 2016.
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.
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.
CSS432 Subnetting and CIDR Textbook Ch3. 2
TRANSPORT LAYER BY, Parthasarathy.g.
Routing BY, P.B.SHANMATHI.
ECE544: Communication Networks-II, Spring 2016
UNIT III ROUTING.
Chapter 26 IPv6 Addressing
ECE544: Communication Networks-II, Spring 2006
COMP/ELEC 429/556 Introduction to Computer Networks
Presentation transcript:

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

Today’s Lecture Recap –Switching & Routing Scalable Addressing –Sub-netting –Classless Routing (CIDR) Inter-domain routing (BGP) –Global Internet routing –BGP protocol outline IPv6

Internetwork Phy layer Header Ethernet Header IP Header TCP/UDP Header Data Payload Ethernet Trailer Phy layer Trailer H 3 H 2 H5 H 8 H 9 H 7 H10 H 6 H 1 H 4 Ethernet Switching IP Routing R ETH FDDI IP Phy H IP ETH TCP Appl. Phy S ETH ETH Bridging Phy

How Is a Packet Sent A host bootup: use DHCP to get its own IP address, default router IP address, domain name, DNS server, etc. To send a packet to:” –DNS to resolve the IP address and then form the packet (more on higher layers later) –Check if the dest. is in the same network once an IP packet passed to the network layer If the dest belongs to the same network, send to dest. directly (nexthop = dest) Otherwise, send to the default router (nexthop = default router) –Discover nexthop’s layer 2 address (Ethernet MAC address) using ARP –Put IP packet in Ethernet frame (add Ethernet header) dest. Ethernet addr = nexthop MAC addr, source Ethernet addr = sender MAC addr No change to IP, Dest. IP addr = original IP dest., source IP addr. = original IP source –Ethernet switch forwards the frame toward “nexthop”, (dest host or default router) according to dest. Ethernet addr using switch forwarding table Switch forwarding table is established by learning and Spanning Tree Protocol –In the default router, remove Ethernet header and pass the packet to IP layer, decide which output port and next hop to send based on dest IP addr using the IP forwarding table Router IP forwarding table is established by Distance Vector or Link State routing protocol Phy layer Header Ethernet Header IP Header TCP/UDP Header Data Payload Ethernet Trailer Phy layer Trailer

Layer 2 vs. Layer 3 Layer 2 switching –Based on MAC address –Self configuring and plug & play –Transparent to protocols above the MAC layer –Fast and inexpensive –Flat –Does not scale to extremely large networks –Does not limit the scope of broadcasts Layer 3 routing –Based on IP address –Must get IP address (DHCP or manual assign) –Easily connect LANs that uses different link protocols (heterogeneous) –Hierarchical addressing –Scalable to large network by subnet routing –Broadcast limited only in a subnet

Distance Vector vs. Link State Distance Vector A node exchanges routing info only with its directly connected neighbors Exchanged routing info: distance to all nodes in its routing table (everything this node has learned) Route computation: Distributed Bellman- Ford Link State A node floods its link- state advertisement to all the nodes in the network Exchanged routing info: the state of the links to its directly connected links Route computation: Dijkstra’s algorithm

Scalable IP Addressing

How to Make Routing Scale Flat versus Hierarchical Addresses Traditional way: fixed network part and host part –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) High demand for class B addresses –Still Too Many Networks routing tables do not scale route propagation protocols do not scale NetworkHost A: NetworkHost B: NetworkHost C:

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 –One IP network number is allocated to several physical networks, each becomes a subnet. –All hosts on the same physical network have the same subnet number Subnet masks define variable partition of host part Subnets visible only within site Network number Host number Class B address Subnetted address Subnet mask ( ) 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 Forwarding table:(SubnetNumber, SubnetMask, NextHop)

Classless Interdomain Routing (CIDR) Assign block of contiguous network numbers to nearby networks Classless Inter-Domain Routing (CIDR), also called supernetting –Multiple contiguous network numbers are aggregated Protocol uses a (length, value) pair length = # of bits in network prefix value/length notation for CIDR address: – /12 denotes a netmask with 12 leading 1 bits, i.e. FF.F0.0.0 Use CIDR bit mask to identify block size

Classless Interdomain Routing (CIDR) Routers can aggregate routes with a single advertisement -> use longest prefix match –Many different customer networks connected to a provider network share a common, shorter address prefix. 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 ( xxxxxxxx) Corporation Y ( xxxxxxxx) Route Aggregation with CIDR

BGP Overview

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

Autonomous System (AS) Autonomous System: a network under a single administrative control (routing domain) –Hierarchically aggregate routing information AS 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

BGP-4: Border Gateway Protocol Inter-domain routing protocol, eBGP Each AS has: –one or more border routers –one BGP speaker that advertises: local networks other reachable networks (transit AS only) gives path information

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

BGP Path Advertise the reachability of a network (length, value) in a sequence of AS’s the path traverse Policy –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 –Use AS X to reach prefix p iff AS Z does not advertises reachability to p, but AS X advertises reachability to this prefix

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)

Path Suboptimality hop red path vs 2 hop green path

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)

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: open 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: update 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

Routing Area AS divided into routing areas in OSPF, another level of hierarchy for routing scalability Area : Backbone area, All other areas are connected to it, and inter-area routing happens via routers connected to the backbone area and to their own associated areas. Stub area: does not receive external routes except the default route, but does receive inter-area routes (allows the routers in the stub area to pick the best route to another area) Area Area Backbone Area Area

IP Version 6 Features –128-bit addresses (classless) –Support for real-time service –Security support –autoconfiguration –Enhanced routing functionality, including support for mobile hosts 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

46 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 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

48 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

54 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

Autoconfiguration LAN: 3ffe:b00:c18:1::/64 Ethernet0 MAC address: 02:60:3E:FF:FE:47:15:30 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

56 Today’s Homework Peterson & Davie, Chap Download and browse IPv6 and BGP RFC’s