Presentation is loading. Please wait.

Presentation is loading. Please wait.

Hierarchical Routing Our routing study thus far – an idealization

Similar presentations


Presentation on theme: "Hierarchical Routing Our routing study thus far – an idealization"— Presentation transcript:

1 Hierarchical Routing Our routing study thus far – an idealization
all routers are identical the network is “flat” … not true in practice Why? administrative autonomy internet = network of networks each network admin may want to control routing in its own network scale: with 55 million+ destination hosts: can’t store all destinations in routing tables! routing table exchange would swamp links! 4: Network Layer

2 Hierarchical Routing gateway routers
aggregate routers into regions, called “autonomous systems” (AS) routers in same AS run same routing protocol “intra-AS” routing (i.e., within an AS) protocol routers in different AS can run different intra-AS routing protocol special routers in AS run intra-AS routing protocol with all other routers in AS also responsible for routing to destinations outside AS run inter-AS routing (i.e., between AS) protocol with other gateway routers 4: Network Layer

3 Intra-AS and Inter-AS routing
b C A B d A.a A.c C.b B.a c Gateways: perform inter-AS routing amongst themselves perform intra-AS routers with other routers in their AS c network layer inter-AS, intra-AS routing in gateway A.c data link layer physical layer 4: Network Layer

4 Intra-AS and Inter-AS routing
between A and B a b C A B d c A.a A.c C.b B.a Host h2 Host h1 Intra-AS routing within AS B Intra-AS routing within AS A We’ll examine specific inter-AS and intra-AS Internet routing protocols shortly (section 4.5) 4: Network Layer

5 The Internet Network layer
Host, router network layer functions… three major components: Transport layer: TCP, UDP IP protocol addressing conventions datagram format packet handling conventions Routing protocols path selection RIP, OSPF, BGP Network layer routing table ICMP protocol error reporting router “signaling” Link layer Physical layer 4: Network Layer

6 IP Addressing: introduction
IP address: 32-bit identifier for host or router interface interface: connection between host or router and the physical link routers typically have multiple interfaces hosts typically have only one IP addresses are associated with the interface, not the host or the router dotted-decimal notation: = 223 1 1 1 4: Network Layer

7 IP Addressing IP address:
network part (high order bits) host part (low order bits) What’s a network ? (from the IP address perspective) device interfaces with the same network part of their IP address hosts can physically reach each other without an intervening router LAN Example: network consisting of 3 IP networks (for IP addresses starting with 223, the first 24 bits are the network address – more later) 4: Network Layer

8 IP Addressing How to find the networks?
Detach each interface from routers create “islands of isolated networks Interconnected system consisting of six networks 4: Network Layer

9 IP Addresses Given the notion of a “network”, let’s look closer at IP addresses: “classful” addressing - class A to network host (24 bits) 27 = 127 networks 224 = 16.8 million+ hosts 214 = 16,384 networks 216 = 65,536 hosts 221 = 2 million+ networks 28 = 256 hosts 24 = 16 networks 228 = million+ hosts B to 10 network host (16 bits) to C 110 network host (8 bits) to D 1110 multicast address (28 bits) 32 bits What is the address space size (number of hosts) for each class? 4: Network Layer

10 IP addressing: CIDR classful addressing:
inefficient use of address space, address space exhaustion e.g., class B network is allocated enough addresses for 65K hosts, even if only 2K hosts exist in that network CIDR: Classless InterDomain Routing network portion of address of arbitrary length address format: a.b.c.d/x, where x is # bits in the network portion of an address network part host /23 4: Network Layer

11 IP addresses: how to get one?
Hosts (host portion): hard-coded by system admin in a file DHCP: Dynamic Host Configuration Protocol: dynamically get address (RFC 2131): “plug-and-play” host broadcasts “DHCP discover” msg DHCP server responds with “DHCP offer” msg host requests IP address: “DHCP request” msg DHCP server sends address: “DHCP ack” msg 4: Network Layer

12 IP addresses: how to get one?
Network (network portion): get allocated portion of ISP’s address space: ISP's block /20 Organization /23 Organization /23 Organization /23 … … …. Organization /23 4: Network Layer

13 Hierarchical addressing: route aggregation
Hierarchical addressing allows efficient advertisement of routing information: Organization 0 /23 Organization 1 /23 “Send me anything with addresses beginning /20” Organization 2 /23 . Fly-By-Night-ISP . Internet Routing Hierarchy Organization 7 /23 “Send me anything with addresses beginning /16” ISPs-R-Us 4: Network Layer

14 Hierarchical addressing: more specific routes
ISPs-R-Us has a more specific route to Organization 1 (longest prefix matching): Organization 0 /23 “Send me anything with addresses beginning /20” Organization 2 /23 . Fly-By-Night-ISP . Internet Routing Hierarchy Organization 7 /23 “Send me anything with addresses beginning /16 or /23” ISPs-R-Us Organization 1 /23 4: Network Layer

15 IP addressing: the last word...
Q: How does an ISP get a block of addresses? A: ICANN: Internet Corporation for Assigned Names and Numbers (RFC 2050) non-profit organization allocates addresses via regional registries (mid-2000) ARIN - North and South America, part of Africa RIPE – Europe and surrounding countries APNIC – Asia Pacific region manages DNS assigns domain names, resolves disputes 4: Network Layer

16 Getting a datagram from source to dest.
routing table* in A dest. net. next router #hops IP datagram: misc. fields source IP addr dest data A B E addresses remain unchanged, as the datagram travels from source to destination address fields of interest here (provided by the source host A) * Note – more on this later 4: Network Layer

17 Getting a datagram from source to dest.
misc fields data dest. net. next router #hops Starting at A, given an IP datagram addressed to B: look up network address of B find B is on same network as A link layer will send datagram directly to B inside link-layer frame B and A are directly connected A B E 4: Network Layer

18 Getting a datagram from source to dest.
misc fields dest. net. next router #hops data Starting at A, destination E: look up network address of E E on different network A, E not directly attached routing table: next hop router to E is link layer sends datagram to router inside link-layer frame datagram arrives at continued….. A B E 4: Network Layer

19 Getting a datagram from source to dest.
network router #hops interface dest next misc fields data Arriving at , destined for look up network address of E E on same network as router’s interface router, E directly attached link layer sends datagram to inside link-layer frame via interface datagram arrives at !!! A B E 4: Network Layer

20 Next Lesson: IP Structure and Routing in the Internet
4: Network Layer

21 32 bit destination IP address
IP datagram format IP protocol version number 32 bits total datagram length (bytes) header length (bytes) head. len. type of service ver. datagram length for fragmentation/ reassembly fragment offset “type” of data 16-bit identifier flgs max number of remaining hops (decremented at each router) time to live upper layer header checksum 32 bit source IP address 32 bit destination IP address upper layer protocol to deliver payload to (e.g. TCP, UDP, … see RFC 1700) Options (if any) e.g. timestamp, record route taken, specify list of routers to visit (field is rarely used in practice). data (variable length, typically a TCP or UDP segment) 4: Network Layer

22 IP Fragmentation & Reassembly
network links have MTU (Max. Transfer Unit) size - largest possible link-level frame. different link types, different MTUs large IP datagram divided (“fragmented”) within net one datagram becomes several datagrams “reassembled” only at final destination IP header bits used to identify and order related fragments fragmentation: in: one large datagram out: 3 smaller datagrams reassembly 4: Network Layer

23 IP Fragmentation and Reassembly
ID =x offset =0 More bit length =3980 One large datagram becomes several smaller datagrams ID =x offset =0 More bit =1 length =1480 ID =x offset =1480 More bit =1 length ID =x offset =2960 More bit =0 length =1020 Note: Offset is actually specified as number of 8-byte (64-bit) units. 4: Network Layer

24 Transport and application layer in the network core?
data link physical application transport Application and transport layer uses in the core routing table updates/broadcasts router management router error reporting application transport network data link physical 4: Network Layer

25 ICMP: Internet Control Message Protocol
Type Code description echo reply (ping) dest network unreachable dest host unreachable dest protocol unreachable dest port unreachable dest network unknown dest host unknown source quench (congestion control - not used) echo request (ping) route advertisement* router discovery* TTL expired bad IP header used by hosts, routers, gateways to communicate network-level information error reporting: unreachable host, network, port, protocol echo request/reply (used by ping) network-layer “above” IP: ICMP messages are carried in IP datagrams ICMP message: type, code, and checksum, plus header and first 8 bytes of IP datagram causing error/ response (See RFC 792, 1296*) 4: Network Layer

26 Routing in the Internet
The Global Internet consists of Autonomous Systems (AS) interconnected with each other: Stub AS: small corporation Multi-homed AS: large corporation (no transit) Transit AS: provider Two-level routing: Intra-AS: administrator is responsible for choice Inter-AS: unique standard 4: Network Layer

27 Internet AS Hierarchy Inter-AS border (exterior gateway) routers
Intra-AS (interior gateway) routers 4: Network Layer

28 Intra-AS Routing Also known as Interior Gateway Protocols (IGP)
Most common IGPs: RIP: Routing Information Protocol (legacy) OSPF: Open Shortest Path First (common) EIGRP: Enhanced Interior Gateway Routing Protocol (proprietary – Cisco Systems) 4: Network Layer

29 RIP ( Routing Information Protocol)
Distance vector algorithm Included in BSD-UNIX Distribution in 1982 RFC 1058 (version 1), RFC 1723 (version 2) Distance metric: # of hops (max = 15 hops) Can you guess why? Distance vectors: exchanged every 30 seconds via Response Message (also called advertisement) Each advertisement: routing info for maximum of 25 destination nets within the AS 4: Network Layer

30 RIP (Routing Information Protocol)
z w x y A D B C Destination Network Next Router Num. of hops to dest. w A 2 y B 2 z B 7 x … … … Routing table in D 4: Network Layer

31 RIP: Link Failure and Recovery
If no advertisement heard after 180 sec --> neighbor/link declared dead routes via that neighbor are invalidated new advertisements sent to neighbors neighbors in turn send out new advertisements (if tables changed) link failure info quickly propagates to entire net poison reverse used to prevent ping-pong loops (infinite distance = 16 hops) 4: Network Layer

32 RIP Table processing example (BSD UNIX)
RIP routing tables managed by application-level process called route-d (BSD UNIX daemon) advertisements sent in UDP packets, periodically repeated 4: Network Layer

33 RIP Table example (continued)
Router: giroflee.eurocom.fr Destination Gateway Flags Ref Use Interface UH lo0 U fa0 U le0 U qaa0 U le0 default UG Three attached class C networks (LANs) Router only knows routes to attached LANs Default router used to “go up” to next logical level Route multicast address: Loopback interface (for debugging) 4: Network Layer

34 Problems/limitations with RIP
Good for small systems, but doesn’t scale well Count-to-infinity problem… poisoned reverse only Comparatively slow convergence 1979 – RIP version 2, link state algorithm 1988 – IETF initiates work on replacement 1990 – OSPF became new standard 4: Network Layer

35 OSPF (Open Shortest Path First)
“open”: publicly available Uses Link State algorithm LS packet dissemination Topology map at each node Route computation using Dijkstra’s algorithm However…. OSPF advertisement carries only one entry per neighbor router Advertisements disseminated to entire AS (via flooding) 4: Network Layer

36 OSPF “advanced” features (not in RIP)
Security: all OSPF messages are authenticated (to prevent malicious intrusion); TCP connections used Multiple same-cost paths allowed (only one path in RIP) For each link, multiple cost metrics for different Types Of Service (e.g., satellite link cost set “low” for best effort; high for real time) Integrated uni- and multicast support: Multicast OSPF (MOSPF) uses same topology data base as OSPF Hierarchical OSPF in large domains. 4: Network Layer

37 Hierarchical OSPF 4: Network Layer

38 Hierarchical OSPF Two-level hierarchy: local area and backbone.
link-state advertisements only in local area each node has detailed area topology; only know direction (shortest path) to nets in other areas. Area border routers: “summarize” distances to nets in own area, advertise to other Area Border routers. Backbone routers: run OSPF routing, limited to backbone. Boundary routers: connect to other ASs. (Note: synonymous with the “gateway routers” we discussed in section 4.3) 4: Network Layer

39 EIGRP (Enhanced Interior Gateway Routing Protocol)
CISCO proprietary; successor of RIP (mid 80’s) uses Distance Vector, like RIP several cost metrics (delay, bandwidth, reliability, load etc) uses TCP (!) to exchange routing updates Loop-free routing via a distributed update routing algorithm (called DUAL) based on diffused computation 4: Network Layer

40 Inter-AS routing 4: Network Layer

41 Internet inter-AS routing: BGP
BGP (Border Gateway Protocol): the de facto standard Path Vector protocol: similar to Distance Vector protocol each Border Gateway broadcasts to neighbors (peers) the entire path (I.e, sequence of ASs) to destination E.g., Gateway X may send its path to destination Z: Path (X,Z) = X,Y1,Y2,Y3,…,Z 4: Network Layer

42 Internet inter-AS routing: BGP
Suppose: gateway X send its path to peer gateway W W may or may not select a path offered by X cost, policy (don’t route via competitors AS), loop prevention reasons. If W selects a path advertised by X, then: Path (W,Z) = W, Path (X,Z) Note: X can control incoming traffic by controlling its route advertisements to peers: e.g., don’t want to route traffic to Z -> don’t advertise any routes to Z 4: Network Layer

43 Internet inter-AS routing: BGP
BGP messages exchanged using TCP. BGP messages: OPEN: opens TCP connection to peer and authenticates sender UPDATE: advertises new path (or withdraws old) KEEPALIVE keeps connection alive in absence of UPDATES; also ACKs OPEN request NOTIFICATION: reports errors in previous message; also used to close connection 4: Network Layer

44 Why different Intra- and Inter-AS routing ?
Policy: Inter-AS: admin wants control over how its traffic is routed, who routes through its net. Intra-AS: single admin, so no policy decisions needed Scale: hierarchical routing saves table size, reduces update traffic Performance: Intra-AS: can focus on performance Inter-AS: policy may dominate over performance 4: Network Layer


Download ppt "Hierarchical Routing Our routing study thus far – an idealization"

Similar presentations


Ads by Google