Presentation is loading. Please wait.

Presentation is loading. Please wait.

Shivkumar Kalyanaraman 1 Routing II: Protocols (RIP, EIGRP, OSPF, PNNI, IS-IS) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute

Similar presentations


Presentation on theme: "Shivkumar Kalyanaraman 1 Routing II: Protocols (RIP, EIGRP, OSPF, PNNI, IS-IS) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute"— Presentation transcript:

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


Download ppt "Shivkumar Kalyanaraman 1 Routing II: Protocols (RIP, EIGRP, OSPF, PNNI, IS-IS) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute"

Similar presentations


Ads by Google