560 likes | 745 Views
COMP 416 Internet Protocols and Software. Instructor: Zhijun Wang Today’s contents Unicast Routing Protocols (Chap. 14) Multicast Routing Protocols (Chap.15) Project is available online Quiz #1 will be given in the last 1 hour. Chapter 14. Unicast Routing Protocols: RIP, OSPF, and BGP.
E N D
COMP 416 Internet Protocols and Software Instructor: Zhijun Wang Today’s contents • Unicast Routing Protocols (Chap. 14) • Multicast Routing Protocols (Chap.15) • Project is available online • Quiz #1 will be given in the last 1 hour TCP/IP Protocol Suite
Chapter 14 Unicast Routing Protocols:RIP, OSPF, and BGP Objectives • Distinguish between intra and interdomain routing • Understand distance vector routing and RIP • Understand link state routing and OSPF • Understand path vector routing and BGP TCP/IP Protocol Suite
Routing and Routing Table Routing refers to the way routing tables are created go help forwarding. A router receives a packet from a network and passes it to another network. A routing table has an entry for each destination or a combination of destination. A routing table can be either static or dynamic. A static table is one with manual entries. A dynamic table is updated automatically where there is a change somewhere in the Internet. A routing protocol is a combination of rules that lets routers in the Internet inform each other of changes. TCP/IP Protocol Suite
INTRA- AND INTERDOMAIN ROUTING Routing inside an autonomous system (AS) is referred to as intradomain routing. Routing between autonomous systems is referred to as interdomain routing. C An AS is a group of networks and routers under the authority of a single administration. A B Figure 1 TCP/IP Protocol Suite
Figure 2Popular routing protocols Routing Information Protocol Open Shortest Path First Broader Gateway Protocol TCP/IP Protocol Suite
DISTANCE VECTOR ROUTING In distance vector routing, the least cost route between any two nodes is the route with minimum distance. In this protocol each node maintains a vector (table) of minimum distances to every node. Figure 3 TCP/IP Protocol Suite
Figure 4Initialization of tables in distance vector routing At the begin, each node can know only the distance between itself and its immediate neighbors, those directly connected to it. TCP/IP Protocol Suite
Figure 5Updating in distance vector routing • Table updating: • (1) The receiving node needs to add the • cost between itself and the sending • node to each entry • (2) The receiving node needs to add the • name of the sending node as the next • node in the route. • (a) if the next-node entry is different, choose • entry with smaller value. • (b) if the next-node entry is the same, choose • the new entry. In distance vector routing, each node shares its routing table with its immediate neighbors periodically (normally 30 seconds) and when there is a change. TCP/IP Protocol Suite
14.3 RIP-RFC1058 The Routing Information Protocol (RIP) is an intradomain routing protocol used inside an autonomous system. It is a very simple protocol based on distance vector routing. 1. In an autonomous system,we are dealing with router and networks. The router has routing tables, networks don’t. 2. The destination in a routing table is a network, which means the first column defines a network address. 3. The metric used by RIP is very simple; the distance is defined as the number of hops (links) to be used to reach the destination. 4. Infinity is defined as 16, which means that any route in autonomous system using RIP cannot have more than 15 hops. 5. The next node column defines the address of the router to which the packet is to be sent to reach its destination. TCP/IP Protocol Suite
Figure 7Example of a domain using RIP TCP/IP Protocol Suite
Figure 8RIP timers RIP uses timer to support its operation. The periodic timer controls the sending of messages; The expiration timer governs the validity of a route, each entry has an expiration timer. The garbage collection timer advertise failure of a route. TCP/IP Protocol Suite
Example1 A routing table has 20 entries. It does not receive information about five routes for 200 s. How many timers are running at this time? SolutionThe 21 timers are listed below:Periodic timer: 1 Expiration timer: 20 − 5 = 15 Garbage collection timer: 5 TCP/IP Protocol Suite
14.4 LINK STATE ROUTING In link state routing, if each node in the domain has the entire topology of the domain, the node can use Dijkstra’s algorithm to build a routing table. Figure 9. Concept of link state TCP/IP Protocol Suite
Link state knowledge Link state routing is based on the assumption that, although the global knowledge about the topology is not clear, each node has partial knowledge: it knows the state (type, condition, and cost) of its links. • Building routing tables showing the least-cost node to every node: • Creation of the states of the links by each node, called the link state packet (LSP). • Dissemination of LSPs to every other router, called flooding, in an efficient and • reliable way. • Formation of a shortest path tree for each node. • Calculation of a routing table based on the shortest path tree. TCP/IP Protocol Suite
Formation of shortest path tree: Dijkstra Algorithm The algorithm divided the nodes into two sets: tentative and permanent. It finds the neighbors of a current node, makes them tentative, examines them, and if they have the shortest path, make them permanent. TCP/IP Protocol Suite
Figure 10Example of formation of shortest path tree Routing table of node A TCP/IP Protocol Suite
14.5 OSPF-RFC2328 The Open Shortest Path First (OSPF) protocol is an intradomain routing protocol based on link state routing. Its domain is also an autonomous system (AS). 2 1 4 3 OSPF divides AS into areas. An area is a collection of networks, hosts, and routers all contained within an AS. Routers inside an area flood the area with the routing information. At the border of an area, special routers called area border routers summarizes the information about the area and sends it to other areas. Among the area inside an AS is a special area called backbone. The routers inside the backbone are called backbone routers. TCP/IP Protocol Suite
Types of links In OSPF, a connection is called a link. Four types of links have been defined: point-to-point, transient, stub and virtual. A point-to-point link connects two routers without any other host or router in between. TCP/IP Protocol Suite
Transient link A transient link is a network with several routers attached to it. A designated router (DR) is elected by other routers. 1) Synchronize the link-state database by establishing adjacencies with all the routers in the network 2) Originate link-state advertisements on behalf of the network. TCP/IP Protocol Suite
Stub link A stub link is a network that is connected to only one router. Virtual link:When the link between two routers is broken, the administration may create a virtual link between them using a longer path that probably goes through several routers. TCP/IP Protocol Suite
Example of an AS and its graphical representation in OSPF x TCP/IP Protocol Suite
Types of OSPF packets OSPF uses five different types of packets. OSPF packets are encapsulated in IP datagrams. OSPF common header TCP/IP Protocol Suite
Link state update packet and LSA general header Link state update packet used by router to advertise the state of its links. Link state update packet Link state advertisement (LSA) general header TCP/IP Protocol Suite
Router link A router link defines the links of a true router. A true router uses this advertisement to announce information about all of its links and what is the other side of the link (neighbors). The router link LSA advertises all of the links of a router. TCP/IP Protocol Suite
Router link LSA Link types, link identification, and link data TCP/IP Protocol Suite
Example2 In Figure below, which router(s) sends out router link LSAs? SolutionAll routers advertise router link LSAs.a. R1 has two links, N1 and N2.b. R2 has one link, N2.c. R3 has two links, N2 and N3. TCP/IP Protocol Suite
Network link A network link defines the links of a network.A designated router, on behalf of the transient network, distributes this type of LSP packet. Network link advertisement format TCP/IP Protocol Suite
Summary link to network Summary link advertisement to network LSA is used by area border router to announce the existing of other networks outside the area. Packet format TCP/IP Protocol Suite
Summary link to AS boundary router Summary link advertisement to AS boundary router is used to announce the network to which the AS boundary router is attached. Packet format TCP/IP Protocol Suite
External link External link advertisement provides the information of available networks outside the AS. Packet format TCP/IP Protocol Suite
Hello packet Hello message is used to create neighborhood relationships and to test the reachability of neighbors. When a router is connected to the system for the first time or after a failure, it needs the complete link state database immediately. After the connection with Hello message, all neighbors send database description message back. TCP/IP Protocol Suite
Link state request and acknowledgement packet Link state request packet is sent by a router that needs information about a specific route or routes. Link state acknowledgement packet is used to acknowledge the receipt of every link state update packet. TCP/IP Protocol Suite
14.6 PATH VECTOR ROUTING • Distance vector and link state routing are both intradomain routing protocols. • They can be used inside an autonomous system (AS), but not between ASs. • Distance vector routing is subject to instability of there is more than a few • hops in the domain of operation. • Link state routing needs a huge amount of resources to calculate routing • tables and also creates heavy traffic because of flooding. Path vector routing is similar to distance vector routing. There is at least one node, called the speaker node, in each AS that creates a routing table and advertises it to speaker nodes in the neighboring ASs. TCP/IP Protocol Suite
Initial routing tables in path vector routing TCP/IP Protocol Suite
Stabilized tables for four autonomous systems Table updating: When a speaker node receives a two-column table from a neighbor, it updates its own table by adding the nodes that are not in its routing table and adding its own AS and the AS that sent the table. After exchange information, each speaker has a table and knows how to reach each other node in other ASs. TCP/IP Protocol Suite
BGP-RFC1771 Border Gateway Protocol (BGP) is an interdomain routing protocol using path vector routing. It first appeared in 1989 and has gone through four versions. The exchange of routing information between two routers using BGP takes place in a session. There are two types of sessions: external BGP (E-BGP) and internal BGP (I-BGP). E-BGP session is used to exchange information between two speaker nodes belonging to two different ASs. The I-BGP session is used to exchange routing information between two routers inside an AS. TCP/IP Protocol Suite
Figure Types of BGP messages There are four types of messages. BGP uses the services of TCP on port 179. BGP packet header TCP/IP Protocol Suite
Open message To create a neighborhood relationship, a router running BGP opens a TCP connection with a neighbor and sends an open message. If the neighbor accepts the neighborhood relationship, it responses with a keepalive message. This message will be exchanged regularly to tell each other that they are alive. TCP/IP Protocol Suite
Update message Update message is used by a router to withdraw destinations that have been advertised previously, announce a route to a new destination, or both. TCP/IP Protocol Suite
Notification message Notification message is sent by a router whenever an error condition is detected or a router wants to close the connection. TCP/IP Protocol Suite
Error codes TCP/IP Protocol Suite
Chapter 15 Multicasting andMulticast Routing Protocols Objectives • Differentiate between a unicast and a multicast message • Understand multicast link state routing and MOSPF • Understand the Protocol Independent Multicast Protocols TCP/IP Protocol Suite
UNICAST and MULTICAST A message can be unicast, multicast, or broadcast. Let us clarify these terms as they relate to the Internet. In unicast communication, there is one source and one destination. The relationship between the source and destination is one-to-one. In unicasting, the router forwards the received packet through only one of its interfaces. TCP/IP Protocol Suite
Multicasting In multicast communication, there is one source and a group of destinations. The relationship is one-to-many. In multicasting, the router may forward the received packetthrough several of its interfaces. Multicasting has many applications today such as access to distributed databases, information dissemination, teleconferencing, and distance learning. TCP/IP Protocol Suite
Multicasting versus multiple unicasting Emulation of multicasting through multiple unicasting is not efficient and may create long delays, particularly with a large group. TCP/IP Protocol Suite
Shortest path tree in unicast routing In unicast routing, each router in the domain has a table that defines a shortest path tree to possible destinations. TCP/IP Protocol Suite
Source-based tree approach There are two types of shortest path tree in multicast routing: source-based tree and group-shared tree. In the source-based tree approach, each router needs to have one shortest path tree for each group. TCP/IP Protocol Suite
Group-shared tree approach In the group-shared tree approach, only the core router, which has a shortest path tree for each group, is involved in multicasting. TCP/IP Protocol Suite
Taxonomy of common multicast protocols MOSPF: Multicast Open Shortest Path First DVMRP: Distance Vector Multicast Routing Protocol PIM: Protocol Independent Multicast PIM-DM: PIM, Dense Mode PIM-SM: PIM, Sparse Mode CBT: Core-Based Tree No multicast router available in today’s Internet TCP/IP Protocol Suite
Multicasting Routing Protocols MOSPF is a multicast link state routing using source-based tree approach. DVMRP is a multicast distance vector routing. The Core-Based Tree (CBT) protocol is a group-shared protocol that uses a core as the root of the tree. The autonomous system is divided into regions and a core (center router or rendezvous router) is chosen for each region. PIM-DM is used in a dense multicast environment, such as a LAN. PIM-SM is used in a sparse multicast environment such as a WAN. TCP/IP Protocol Suite