UNICAST ROUTING PROTOCOLS Major Functions: Define the domain of operation (Internal/External to the ISPs), and interaction with other protocols if needed (e.g., External protocols EGP). Specify how routers exchange messages to share information & report changes. Enables a network to make dynamic adjustments to its conditions. Unicast routing in the Internet, challenge? Yes! Large number of routers and a huge number of hosts; hence immense number of alternative routes for each packet, one is only the optimal (search routing tables for Which one?)! Huge routing tables space longer search time. Hierarchical Routing (HR) is the solution! In addition, each ISP administrator can have own control running different suiting routing algorithm for their optimal choice of domain equipment.
Internet Structure Before discussing unicast routing protocols, we need to understand the structure of today’s Internet. The Internet has changed from a tree-like structure, with a single backbone, to a multi-backbone structure run by different private corporations today.
20.3 Figure 20.14: Internet structure Except for the Peering points, every component is considered an ISP Autonomous System AS.
Internet Structure Hierarchical Routing (HR) is when we consider each component in Fig (Internet Structure), except peering points, as an ISP Autonomous System (AS). Each AS runs its own routing protocol, that fits its need based on its optimal architectural design, called Interior Gateway Protocol (IGP)– Intra-domain(AS) Routing Protocol. Two major IGP routing protocols: Routing Information Protocol (RIP)– Most widely used based on DV routing algorithm. Open Shortest Path First Protocol (OSPF)– Based on LS routing algorithm. In order to glue the Ass together, an Exterior Gateway Protocol (EGP)– also called Interdomain Routing Protocol. One major EGP routing protocol: Border Gateway Protocol V4 (BGP4) – Complex, based on PV(Path Vector) routing algorithm, with reachability information of networks in the Internet.
Routing Information Protocol The Routing Information Protocol (RIP) is one of the most widely used intradomain routing protocols based on the distance-vector routing algorithm we described earlier. RIP was started as part of the Xerox Network System (XNS), but it was the Berkeley Software Distribution (BSD) version of UNIX that helped make the use of RIP widespread.
20.6 Figure 20.15: Hop counts in RIP
20.7 Figure 20.16: Forwarding tables
20.8 Figure 20.17: RIP message format
Figure shows a more realistic example of the operation of RIP in an autonomous system. First, the figure shows all forwarding tables after all routers have been booted. Then we show changes in some tables when some update messages have been exchanged. Finally, we show the stabilized forwarding tables when there is no more change. Example
20.10 Figure 20.18: Example of an autonomous system using RIP (Part I)
20.11 Figure 20.18: Example of an autonomous system using RIP (Part II)
Open Shortest Path First Open Shortest Path First (OSPF) is also an intradomain routing protocol like RIP, but it is based on the link-state routing protocol we described earlier in the chapter. OSPF is an open protocol, which means that the specification is a public document.
20.13 Figure 4.73: Example of an autonomous system using RIP (Part III)
20.14 Figure 20.19: Metric in OSPF
20.15 Figure 20.20: Forwarding tables in OSPF
20.16 Figure 20.21: Areas in an autonomous system
20.17 Figure 20.22: Five different LSPs (Part I)
20.18 Figure 20.22: Five different LSPs (Part II)
20.19 Figure 20.23: OSPF message formats (Part I) Attention
20.20 Figure 20.23: OSPF message formats (Part II) Attention
Border Gateway Protocol The Border Gateway Protocol version 4 (BGP4) is the only interdomain routing protocol used in the Internet today. BGP4 is based on the path-vector algorithm we described before, but it is tailored to provide information about the reachability of networks in the Internet.
20.22 Figure 20.24: A sample internet with four ASs
20.23 Figure20.25: eBGP operation
20.24 Figure 20.26: Combination of eBGP and iBGP sessions in our internet
20.25 Figure 20.27: Finalized BGP path tables (Part I)
20.26 Figure 20.27: Finalized BGP path tables (Part II)
20.27 Figure 20.27: Finalized BGP path tables (Part III)
20.28 Figure 20.28: Forwarding tables after injection from BGP (Part I)
20.29 Figure 20.28: Forwarding tables after injection from BGP (Part II)
20.30 Figure 20.29: Format of path attribute
20.31 Figure 20.30: Flow diagram for route selection
20.32 Figure 20.30: BGP messages