Presented by Amjad Outline Routing on the Internet. RIP OSPF BGP Broadcast and multicast routing. Routing Information Protocol (RIP) Routing Information Protocol (RIP) is a dynamic routing protocol that uses hop count as a routing metric to find the best path between the source and the destination network. Features of RIP 1. 2. 3. 4. Updates of the network are exchanged periodically. Updates (routing information) are always broadcast. Full routing tables are sent in updates. Routers always trust routing information received from neighbor routers. RIP: Example z w A y x D B C Routing table in router D Destination subnet Next router # hops to destination w y z x A B B -- 2 2 7 1 …. …. .... 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 OSPF advertisement carries one entry per neighbor advertisements flooded to entire AS carried in OSPF messages directly over IP (rather than TCP or UDP IS-IS routing protocol: nearly identical to OSPF Hierarchical OSPF boundary router backbone router backbone area border routers area 3 internal routers area 1 area 2 Internet inter-AS routing: BGP BGP (Border Gateway Protocol): the de facto inter-domain routing protocol “glue that holds the Internet together” BGP provides each AS a means to: eBGP: obtain subnet reachability information from neighboring ASs. iBGP: propagate reachability information to all AS-internal routers. determine “ good ” routes to other networks based on reachability information and policy. allows subnet to advertise its existence to rest of Internet: “I am here” BGP basics BGP session: two BGP routers (“peers”) exchange BGP messages: advertising paths to different destination network prefixes (“path vector” protocol) exchanged over semi-permanent TCP connections when AS3 advertises a prefix to AS1: AS3 promises it will forward datagrams towards that prefix AS3 can aggregate prefixes in its advertisement 3c 3b other networks 3a BGP message AS3 2c 1c 1a AS1 1d 2a 1b 2b AS2 other networks Network Layer BGP basics: distributing path information using eBGP session between 3a and 1c, AS3 sends prefix reachability info to AS1. 1c can then use iBGP do distribute new prefix info to all routers in AS1 1b can then re-advertise new reachability info to AS2 over 1b-to-2a eBGP session when router learns of new prefix, it creates entry for prefix in its forwarding table. eBGP session 3b other networks 3a AS3 iBGP session 2c 1c 1a AS1 1d 2a 1b 2b AS2 other networks Network Layer Broadcast routing Deliver packets from source to all other nodes. Source duplication is inefficient: duplicate duplicate creation/transmission R1 R1 duplicate R2 R2 R3 R4 source duplication R3 R4 in-network duplication Source duplication: how does source determine recipient addresses? Spanning tree First construct a spanning tree. Nodes then forward/make copies only along spanning tree. A A B B c c D F D E F G (a) broadcast initiated at A E G (b) broadcast initiated at D Multicast routing: problem statement Goal: find a tree (or trees) connecting routers having local multicast group members legend tree: not all paths between routers used group member shared-tree: same tree used by all group members not group source-based: different tree from each sender to rcvrs member router with a group member router without group member shared tree source-based trees Shortest path tree Multicast forwarding tree: tree of shortest path routes from source to all receivers. Dijkstra’s algorithm LEGEND s: source R1 1 2 R2 3 router with attached group member R4 5 4 R3 R6 R5 6 R7 i router with no attached group member link used for forwarding, i indicates order link added by algorithm