Download presentation
Presentation is loading. Please wait.
1
Shivkumar Kalyanaraman 1 Routing II: Protocols (RIP, EIGRP, OSPF, PNNI, IS-IS) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute shivkuma@ecse.rpi.edu Based in part upon slides of Prof. Raj Jain (OSU), S. Keshav (Cornell), J. Kurose (U Mass)
2
Shivkumar Kalyanaraman 2 RIP, RIPv2, EIGRP OSPF, PNNI, IS-IS: LS efficiency & robustness Link state distribution, DB synchronization, NBMAs etc Refs: Chap 16,14 Books: “Interconnections” by Perlman, “OSPF” by John Moy, “Routing in Internet” by Huitema. Reference: RFC 2328: OSPF Version 2: In HTMLIn HTML Reading: Notes for Protocol Design, E2e Principle, IP and Routing: In PDFIn PDF Reading: Routing 101: Notes on Routing: In PDF | In MS WordIn PDF In MS Word Reference: Tsuchiya, "The Landmark Hierarchy: A New Hierarchy for Routing in Very Large Networks""The Landmark Hierarchy: A New Hierarchy for Routing in Very Large Networks" Overview
3
Shivkumar Kalyanaraman 3 RIP: Routing Information Protocol Uses hop count as metric (max: 16 is infinity) Tables (vectors) “advertised” to neighbors every 30 s. Each advertisement: upto 25 entries No advertisement for 180 sec: neighbor/link declared dead routes via neighbor invalidated new advertisements sent to neighbors (Triggered updates) 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
Shivkumar Kalyanaraman 4 RIPv1 Problems (Continued) q Split horizon/poison reverse does not guarantee to solve count-to-infinity problem q 16 = infinity => RIP for small networks only! q Slow convergence q Broadcasts consume non-router resources q RIPv1 does not support subnet masks (VLSMs) q No authentication
5
Shivkumar Kalyanaraman 5 RIPv2 q Why ? Installed base of RIP routers q Provides: q VLSM support q Authentication q Multicasting q “Wire-sharing” by multiple routing domains, q Tags to support EGP/BGP routes. q Uses reserved fields in RIPv1 header. q First route entry replaced by authentication info.
6
Shivkumar Kalyanaraman 6 E-IGRP (Interior Gateway Routing Protocol) CISCO proprietary; successor of RIP (late 80s) Several metrics (delay, bandwidth, reliability, load etc) Uses TCP to exchange routing updates Loop-free routing via Distributed Updating Alg. (DUAL) based on diffused computation Freeze entry to particular destination Diffuse a request for updates Other nodes may freeze/propagate the diffusing computation (tree formation) Unfreeze when updates received. Tradeoff: temporary un-reachability for some destinations
7
Shivkumar Kalyanaraman 7 Link State vs. Distance Vector Link State (LS) advantages: More stable (aka fewer routing loops) Faster convergence than distance vector Easier to discover network topology, troubleshoot network. Can do better source-routing with link-state Type & Quality-of-service routing (multiple route tables) possible Caveat: With path-vector-type (paths instead of distances) DV routing, these differences blur…
8
Shivkumar Kalyanaraman 8 Link State Protocols q Key: Create a network “map” at each node. q 1. Node collects the state of its connected links and forms a “Link State Packet” (LSP) q 2. Flood LSP => reaches every other node in the network and everyone now has a network map. q 3. Given map, run Dijkstra’s shortest path algorithm (SPF) => get paths to all destinations q 4. Routing table = next-hops of these paths. q 5. Hierarchical routing: organization of areas, and filtered control plane information flooded.
9
Shivkumar Kalyanaraman 9 Link State Issues q Reliable Flooding: sequence #s, age q LSA types, Neighbor discovery and maintainence (hello) q Efficiency in Broadcast LANs, NBMA, Pt-Mpt subnets: designated router (DR) concept q Areas and Hierarchy q Area types: Normal, Stub, NSSA: filtering q External Routes (from other ASs), interaction with inter-domain routing. q Advanced topics: incremental SPF algorithms
10
Shivkumar Kalyanaraman 10 Reliable Flooding…
11
Shivkumar Kalyanaraman 11 Topology Dissemination q A.k.a LSP distribution q 1. Flood LSPs on links except incoming link q Require at most 2E transfers for n/w with E edges q 2. Sequence numbers to detect duplicates q Why? Routers/links may go down/up q Issue: wrap-around, larger sequence number is not the most recent!
12
Shivkumar Kalyanaraman 12 Sequence Number Space Organization q Circular space: S1 > S2 > S3 > S1 q Accidental bit errors in switch memory caused this problem in ARPANET q Lollipop sequence: Start with S0, increment till you reach circle and then view it as a circular space q No ambiguity in lollipop handle q Linear space: OSPFv2. q If Smax reached, expicitly delete Smax LSA before wrapping around
13
Shivkumar Kalyanaraman 13 Topology Dissemination (Continued) q Checksum field: q Drop packet if in error, get retransmission from neighbor q Age field (similar to TTL) q Number of seconds since LSA originated q Periodically incremented after acceptance q Originating router refreshes LSA after 30 min q Delete if Age = MaxAge q Low age field + large seq # => that LSA is flapping or frequently changing …
14
Shivkumar Kalyanaraman 14 Recovering from a partition On partition, LSP databases can get out of synch Databases described by database descriptor records Routers on each side of a newly restored link talk to each other to update databases (determine missing and out-of- date LSPs) => selective synchronization
15
Shivkumar Kalyanaraman 15 LSA-types, Neighbor & flooding Adjacencies in Different Subnets
16
Shivkumar Kalyanaraman 16 OSPF Router-LSA: Scenario
17
Shivkumar Kalyanaraman 17 Neighbor Discovery & Relationship Every OSPF router sends out 'hello' packets Hello packets used to determine if neighbor is up Hello packets sent periodically (short intervals) HelloInterval = 10s (in example) Assumes neighbor dead if no response within RouterDeadInterval = 40s (in example) This is also called an “adjacency” Note that adjacency is a logical routing relationship and is more than physical connection. It consumes bandwidth and computation resources Becomes an issue if large number of adj need to be maintained
18
Shivkumar Kalyanaraman 18 Neighbor … Once an adjacency is established, trade information Neighbor relationship is bi-directional as a result of OSPF hello packets Local topology information is packaged in a "link state announcement“ (LSA) Multiple types of LSAs: (detail later) Initial DB synchronization New announcements are sent ONCE, and only updated if there's a change Or every 45mins...
19
Shivkumar Kalyanaraman 19 Hello: Packet Format
20
Shivkumar Kalyanaraman 20 Router-LSA:
21
Shivkumar Kalyanaraman 21 Database Synchronization q LS Database (LSDB): collection of the Link State Advertisements (LSAs) accepted at a node. q This is the “map” for Dijkstra algorithm q When the connection between two neighbors comes up, the routers must wait for their LS DBs to be synchronized. q Else routing loops and black holes due to inconsistency q OSPF technique: q Source sends only LSA headers, then q Neighbor requests LSAs that are more recent. q Those LSAs are sent over q After sync, the neighbors are said to be “fully adjacent”
22
Shivkumar Kalyanaraman 22 Recap: IP Subnet Model q Each subnet assigned one or more address prefixes. q Each address prefix is called an IP subnet q IP routes to subnets, not to individual hosts q Two hosts on different IP subnets have to go through one or more routers. q Even if they are on the same “physical” network
23
Shivkumar Kalyanaraman 23 IP Subnet Model (Contd) q Two hosts or routers on a common subnet can send packets “directly” to one another q Two routers cannot exchange routing information directly unless they have one or more IP subnets in common q All these issues will be strained as we study OSPF adjacency operation over different subnets
24
Shivkumar Kalyanaraman 24 Broadcast Media Issues q Multiple (N) OSPF routers attached to a common subnet q Problems: q One “physical link” vs N*(N-1) “adjacencies” q How many “links” to be counted for Dijkstra algo?
25
Shivkumar Kalyanaraman 25 Broadcast net: # links for DIjkstra q Each router is assumed to be “linked” to every other router for the purposes of Dijkstra. q Hello protocol optimization: q Each node multicasts Hello to 224.0.0.5 (multicast address “AllSPFRouters”) q The Hello multicast message also indicates acks for other routers’ Hellos by listing their RouterIDs q “Link” relationship for purposes of Dijkstra maintained by each node sending a single Hello packet, instead of N packets. q What about “flooding adjacencies”, I.e., q Whom to send (flood) LSAs when a router generates or learns a new LSA? q Does it need to synchronize DBs with all nodes ?
26
Shivkumar Kalyanaraman 26 Flooding Adjacencies : option 1 q Using Router-LSAs … q O(N) Router-LSAs, with O(N 2 ) adjacency info q Multicast of Router-LSAs does not solve O(N 2 ) DB synchronization issue
27
Shivkumar Kalyanaraman 27 Flooding Adjacencies: option 2 q New LSA-type: Network-LSA … q O(N) Router-LSAs + 1 network-LSA+ O(N) adjacencies q Converted O(N 2 ) adjacency problem into O(N) problem
28
Shivkumar Kalyanaraman 28 Recap: O(N 2 ) model O(N) model Question: Who creates the network-LSA?
29
Shivkumar Kalyanaraman 29 Designated Router (DR) q One router elected as a designated router (DR) q Each router maintains flooding adjacency with the DR, I.e., sends acks of LSAs to DR q DR informs each router of other routers on LAN q DR generates the network-LSA on subnet’s behalf after synchronizing with all routers
30
Shivkumar Kalyanaraman 30 DR, BDR … continued q Backup DR (BDR) also syncs with all routers, and takes over if DR dies (typically 5 s wait) q Total: 2N – 1 adjacencies q Multicast-based optimization: q New LSAs, Hellos sent to AllSPFRouters avoids DR re-advertising new information q LSA acks sent to AllDRRouters avoids separate copies to be sent to DR and BDR q DR election: q First router on net = DR, second = BDR q RouterPriority: [0, 127] indicated in Hello packet=> highest priority router becomes DR q If network is partitioned and healed, the two DRs are reduced to one by looking at RouterPriority
31
Shivkumar Kalyanaraman 31 Network-LSA Example: Summary DR
32
Shivkumar Kalyanaraman 32 What if subnet does not support broadcast? q Non-Broadcast Multiple Access (NBMA) media q NBMA segments may support more than 2 routers, and allow any two routers to communicate directly, but do not support data-link broadcast/mcast capability q Eg:X.25, SMDS, Frame-Relay, ATM etc q Connection-oriented (VC-based) communication q Each VC is costly => setting up full mesh for Hellos is prohibitively expensive q Two flooding adjacency models in OSPF: q Non-Broadcast Multiple Access (NBMA) model q Point-to-Multipoint (pt-mpt) Model q Different tradeoffs…
33
Shivkumar Kalyanaraman 33 NBMA Subnet Model q Neighbor discovery: manually configured q Dijkstra SPF views NBMA as a full mesh! q Most routers assigned a RouterPriority = 0 q Other routers: eligible to become DRs => q ID of all routers in the NBMA configured q Maintains VCs and Hellos with all routers eligible to become DRs (RouterPriority > 0) q Enables election of new DR if current one fails q DR and BDR only maintain VCs and Hellos with all routers on NBMA q DB synchronization works same as broadcast subnet q Flooding in NBMA always goes through DR q Multicast not available to optimize LSA flooding. q DR generates network-LSA just like broadcast subnet
34
Shivkumar Kalyanaraman 34 NBMA vs Pt-Mpt Subnet Model q Key assumption in NBMA model: q Each router on the subnet can communicate with every other (same as IP model) q But this requires a “full mesh” of expensive PVCs at the lower layer! q Many organizations have a hub-and-spoke PVC setup, a.k.a. “partial mesh” q Conversion into NBMA model requires multiple IP subnets, and complex configuration (see fig on next slide) q OSPF’s pt-mpt subnet model breaks the rule that two routers on the same network must be able to talk directly q Can turn partial PVC mesh into a single IP subnet
35
Shivkumar Kalyanaraman 35 Partial Mesh F-Relay: NBMA model
36
Shivkumar Kalyanaraman 36 Partial Mesh F-Relay: pt-mpt model
37
Shivkumar Kalyanaraman 37 Pt-Mpt Subnet Model q Each router: single OSPF interface, but multiple neighbor relationships q Note that neighbor relationships not formed to nodes to which direct PVC does not exist. q Key differences: q No DRs or BDRs! Just hellos over the PVCs. Make sure that the communication is bi-directional. q I.e. Partial mesh is viewed in Dijkstra as a partial mesh. Full mesh view not forced like in NBMA model. q Sometimes auto-configuration is possible. q Loss in efficiency because the DB synchronization has to be done between every peer. q O(n^2) if full mesh. So, in true full PVC mesh situations, it is better to operate subnet as an NBMA
38
Shivkumar Kalyanaraman 38 Hierarchical Routing
39
Shivkumar Kalyanaraman 39 Why Hierarchy? q Information hiding (filtered) => computation, bandwidth, storage saved => efficiency => scalability q Address abstraction vs Topology Abstraction q Multiple paths possible between two areas
40
Shivkumar Kalyanaraman 40 Hierarchical OSPF
41
Shivkumar Kalyanaraman 41 Area q Configured area ID q A set of address prefixes q Do not have to be contiguous q So a prefix can be in only one area q A set of router IDs q Router functions may be interior, inter-area, or external
42
Shivkumar Kalyanaraman 42 Hierarchical OSPF Two-level hierarchy: local area, backbone. Link-state advertisements only in area each nodes has detailed area topology; only know direction (shortest path) to nets in other areas. Two-level restriction avoids count-to-infinity issues in backbone routing. Area border routers (ABR): “summarize” distances to nets in own area, advertise to other Area Border routers. Backbone routers: uses a DV-style routing between backbone routers Boundary routers (AS-BRs): connect to other ASs (generate “external” records)
43
Shivkumar Kalyanaraman 43 Sample Area Configuration 10.2.0.0/24
44
Shivkumar Kalyanaraman 44 Summary-LSA Example
45
Shivkumar Kalyanaraman 45 Externals and Aggregation 1 q A full ISP routing table has approximately 100K routes! q But will you do anything differently if you know all of them and have a single ISP? q Multiple ISP situations call for complex OSPF and BGP design q Never redistribute IGPs into BGP! (later…) q Redistribute BGP into IGPs with extreme care
46
Shivkumar Kalyanaraman 46 Externals & Aggregation 2 q In an enterprise q Limit externals from subordinate domains (e.g., RIP) to be within area (area-scope) q Flood only in area 0 and in area with ASBR q Allow externals from Internet, peer domains to go outside Area 0… q Only when there will be significant path differences q Do things with defaults where possible
47
Shivkumar Kalyanaraman 47 Type 1 and Type 2 externals q Type 2: q Default type for routes distributed into OSPF q EGP costs very different from IGP costs q Exit based on external (EGP) cost only q Type 1 q Needs to be set explicitly: not default q IGP costs can be compared and summed q Selects exit based on internal + external costs
48
Shivkumar Kalyanaraman 48 Stubbiness: A Means of Controlling Externals
49
Shivkumar Kalyanaraman 49 Normal Areas q Flood AS-external-LSAs (type 5) across area- boundaries (AS flooding scope) q ASBR-summary-LSAs (type 4) advertises location of ASBR (area flooding scope)
50
Shivkumar Kalyanaraman 50 Stub Areas q AS-external-LSAs (type 5) not flooded into stub areas q Summary-LSA flooded only optionally q Default route to ABR for all non-area prefixes q Paths may be inefficient, cannot place an ASBR in stub areas
51
Shivkumar Kalyanaraman 51 Not-So-Stubby-Areas (NSSA) q A subset of external LSAs may be flooded q Use Type-7 LSAs for such external routes q Used to import RIP domain routes and flood it externally, but keep default route for BGP routes
52
Shivkumar Kalyanaraman 52 IS-IS Overview q The Intermediate Systems to Intermediate System Routing Protocol ( IS-IS) was originally designed to route the ISO Connectionless Network Protocol (CLNP). (ISO10589 or RFC 1142) q Adapted for routing IP in addition to CLNP (RFC1195) as Integrated or Dual IS-IS (1990) q IS-IS is a Link State Protocol similar to the Open Shortest Path First (OSPF). OSPF supports only IP q IS-IS competed neck-to-neck with OSPF. q OSPF deployed in large enterprise networks q IS-IS deployed in several large ISPs
53
Shivkumar Kalyanaraman 53 IS-IS Terminology Intermediate system (IS) - Router Designated Intermediate System (DIS) - Designated Router Pseudonode - Broadcast link emulated as virtual node by DIS End System (ES) - Network Host or workstation Network Service Access Point (NSAP) - Network Layer Address Subnetwork Point of attachment (SNPA) - Datalink interface Packet data Unit (PDU) - Analogous to IP Packet Link State PDU (LSP) - Routing information packet Level 1 and Level 2 – Area 0 and lower areas
54
Shivkumar Kalyanaraman 54 Functional Comparison q Protocols are recognizably similar in function and mechanism (common heritage) q Link state algorithms q Two level hierarchies q Designated Router on LANs q Widely deployed (ISPs vs enterprises) q Multiple interoperable implementations q OSPF more “optimized” by design (and therefore significantly more complex) q IS-IS not designed from the start as an IP routing protocol (and is therefore a bit clunky in places)
55
Shivkumar Kalyanaraman 55 Sample comparison points q Encapsulation q OSPF runs on top of IP=> Relies on IP fragmentation for large LSAs q IS-IS runs directly over L2 (next to IP) => fragmentation done by IS-IS q Media support q Both protocols support LANs and point-to-point links in similar ways q IS-IS supports NBMA in a manner similar to OSPF pt- mpt model: as a set of point-to-point links q OSPF NBMA mode is configuration-heavy and risky (all routers must be able to reach DR; bad news if VC fails)
56
Shivkumar Kalyanaraman 56 Packet Encoding q OSPF is “efficiently” encoded q Positional fields, 32-bit alignment q Only LSAs are extensible (not Hellos, etc.) q Unrecognized types not flooded. Opaque-LSAs recently introduced. q IS-IS is mostly Type-Length-Value (TLV) encoded q No particular alignment q Extensible from the start (unknown types ignored but still flooded) q All packet types are extensible q Nested TLVs provide structure for more granular extension
57
Shivkumar Kalyanaraman 57 IS-IS LS Database: Generic Packet Format Intra-domain Routing Protocol Discriminator Length Indicator TLV Fields Version/Protocol ID Extension ID Length RRR PDU Type Version Reserved Maximum Area Addresses Packet-Specific Header Fields No. of Octets 1 1 1 1 1 1 1 1
58
Shivkumar Kalyanaraman 58 More detailed comparison provided as a reference (not covered in class)…
59
Shivkumar Kalyanaraman 59 Private Network to Node Interface (PNNI) q Link State Routing Protocol for ATM Networks q “A hierarchy mechanism ensures that this protocol scales well for large world-wide ATM networks. A key feature of the PNNI hierarchy mechanism is its ability to automatically configure itself in networks in which the address structure reflects the topology…”
60
Shivkumar Kalyanaraman 60 PNNI Features q Scales to very large networks. q Supports hierarchical routing. q Supports QoS. q Supports multiple routing metrics and attributes. q Uses source routed connection setup. q Operates in the presence of partitioned areas. q Provides dynamic routing, responsive to changes in resource availability. q Separates the routing protocol used within a peer group from that used among peer groups. q Interoperates with external routing domains, not necessarily using PNNI. q Supports both physical links and tunneling over VPCs.
61
Shivkumar Kalyanaraman 61 PNNI Terminology (partial) q Peer group: A group of nodes at the same hierarchy q Border node: one link crosses the boundary q Logical group node: Representation of a group as a single point q Child node: Any node at the next lower hierarchy level q Parent node: LGN at the next higher hierarchy level q Logical links: links between logical nodes q Peer group leader (PGL): Represents a group at the next higher level. q Node with the highest "leadership priority" and highest ATM address is elected as a leader. q PGL acts as a logical group node. q Uses same ATM address with a different selector value. q Peer group ID: Address prefixes up to 13 bytes
62
Shivkumar Kalyanaraman 62 PNNI Terminology
63
Shivkumar Kalyanaraman 63 Hierarchical Routing: PNNI
64
Shivkumar Kalyanaraman 64 Source Routing q Source specifies route as a list of all intermediate systems in the route. Abstracts out area hops. q Designated Transit List (DTL) Source route across each level of hierarchy q Entry switch of each peer group specifies complete route through that group q Set of DTLs and manipulations implemented as a stack q DTL example: next slide
65
Shivkumar Kalyanaraman 65 DTL Example
66
Shivkumar Kalyanaraman 66 Crank back and Alternate Path Routing q If a call fails along a particular route: q It is cranked back to the originator of the top DTL q The originator finds another route or q Cranks back to the generator of the higher level source route
67
Shivkumar Kalyanaraman 67 Summary q DV Protocols: RIP, EIGRP q LS Protocols: OSPF, IS-IS, PNNI
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.