TCP/IP Protocol Suite 1 Chapter 14 Chapter 14 Upon completion you will be able to: Unicast Routing Protocols: Unicast Routing Protocols: RIP, OSPF, and BGP RIP, OSPF, and BGP • Distinguish between intradomain and interdomain routing • Understand distance vector routing and RIP • Understand link state routing and OSPF • Understand path vector routing and BGP Objectives
66
Embed
TCP/IP Protocol Suite 1 Chapter 14 Upon completion you will be able to: Unicast Routing Protocols: RIP, OSPF, and BGP Distinguish between intradomain and.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
TCP/IP Protocol Suite 1
Chapter 14Chapter 14
Upon completion you will be able to:
Unicast Routing Protocols:Unicast Routing Protocols:RIP, OSPF, and BGPRIP, OSPF, and BGP
• Distinguish between intradomain and interdomain routing• Understand distance vector routing and RIP• Understand link state routing and OSPF• Understand path vector routing and BGP
Objectives
TCP/IP Protocol Suite 2
Figure 14.1 Autonomous systems
An autonomous system is a set of networks and routers underthe control of a single administrative authority.Routing within an autonomous system is intradomain routing.Routing between autonomous systems is interdomain routing.
TCP/IP Protocol Suite 3
Figure 14.2 Popular routing protocols
TCP/IP Protocol Suite 4
14.2 DISTANCE VECTOR ROUTING
In distance vector routing, the least cost route between any two nodes is 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 the route with minimum distance. In this protocol each node maintains a vector (table) of minimum distances to every nodevector (table) of minimum distances to every node
The topics discussed in this section include:The topics discussed in this section include:
Initialization Initialization Sharing Sharing Updating Updating When to Share When to Share Two-Node Loop Instability Two-Node Loop Instability Three-Node Instability Three-Node Instability
TCP/IP Protocol Suite 5
Figure 14.3 Distance vector routing tables
TCP/IP Protocol Suite 6
Figure 14.4 Initialization of tables in distance vector routing
In distance vector routing, each node shares its table withits immediate neighbor periodically (eg every 30s) and when there is a change.
TCP/IP Protocol Suite 7
Figure 14.5 Updating in distance vector routing
Step 1: Add cost (2) to table received from neighbor (C).Step 2: Compare Modified Table with Old Table (row by row).If Next node entry is different, select the row with the smallercost. If tie, keep the old one.If Next node entry the same, select the new row value (regard-less of whether new value is smaller or not).
TCP/IP Protocol Suite 8
Figure 14.6 Two-node instability – what can happen with distance vector routing
Both A and B knowwhere X is.
Link between A and Xfails. A updates itstable immediately.
But before A can tell B,B sends its info to A!
A, using B’s info, up-dates its table (error!).Then A send its tableto B and B updates itstable (more error).
Figure 14.6 Two-node instability – what can happen with distance vector routing
Possible Solutions to two-node instability:
1. Define infinity to be a much smaller value, such as 100.Then it doesn’t take too long to become stable. But nowyou can’t use distance vector routing in large networks.
2. Split Horizon – instead of flooding entire table to eachnode, only part of its table is sent. More precisely, if nodeB thinks that the optimum router to reach X is via A, thenB does not need to advertise this piece of info to A – theinfo has already come from A.
3. Split Horizon and Poison Reverse – Normally, the distancevector protocol uses a timer. If there is no news about aroute, the node deletes the route from its table. So when Anever hears from B about the route to X, it deletes it.Instead, Node B still advertises the value for X, but if thesource of info is A, it replaces the distance with infinity, saying “Do not use this value; what I know about this routecomes from you.”
TCP/IP Protocol Suite 10
Figure 14.7 Three-node instability – no solutions here!
TCP/IP Protocol Suite 11
14.3 RIP
The Routing Information Protocol (RIP) is an intradomain routing The Routing Information Protocol (RIP) is an intradomain routing protocol used inside an autonomous system. It is a very simple protocol protocol used inside an autonomous system. It is a very simple protocol based on distance vector routing. based on distance vector routing.
The topics discussed in this section include:The topics discussed in this section include:
RIP Message Format RIP Message Format Requests and Responses Requests and Responses Timers in RIP Timers in RIP RIP Version 2 RIP Version 2 Encapsulation Encapsulation
TCP/IP Protocol Suite 12
Figure 14.8 Example of a domain using RIP
Note the metric usedhere for Costis simply thehop count.
TCP/IP Protocol Suite 13
Figure 14.9 RIP message format
Command: request (1) or response (2)Version: 1 or 2 (version 2 shown in a couple slides)Family: TCP/IP has value 2Network address: address of the destination networkDistance: hop count from the advertising router to the destinationnetwork
TCP/IP Protocol Suite 14
Figure 14.10 Request messages
A request message is sent by a router that has just come up or bya router that has some time-out entries.
A response message is sent in answer to a request (solicited response,or simply every 30 seconds (unsolicited). Response message formatshown in previous slide.
TCP/IP Protocol Suite 15
Figure 14.11 shows the update message sent from router R1 to router R2 in Figure 14.8. The message is sent out of interface 130.10.0.2.
Example 1
See Next Slide
The message is prepared with the combination of split horizon and poison reverse strategy in mind. Router R1 has obtained information about networks 195.2.4.0, 195.2.5.0, and 195.2.6.0 from router R2. When R1 sends an update message to R2, it replaces the actual value of the hop counts for these three networks with 16 (infinity) to prevent any confusion for R2. The figure also shows the table extracted from the message. Router R2 uses the source address of the IP datagram carrying the RIP message from R1 (130.10.02) as the next hop address.
TCP/IP Protocol Suite 16
Figure 14.11 Solution to Example 1
Hop=16 means dest.is unreachable (onlyworks on smaller networks)
TCP/IP Protocol Suite 17
Figure 14.12 RIP timers
Periodic timer: controls the advertising of regular updates
Expiration timer: governs the validity of a router. When arouter receives info, sets timer to 180s. No update within180s? Route set to 16, which means unreachable.
Garbage collection timer: Set to 120s after route set to 16.When timer expires, then toss route info.
TCP/IP Protocol Suite 18
Figure 14.13 RIP version 2 format
Note: Version 2 supports subnet masks
TCP/IP Protocol Suite 19
14.4 LINK STATE ROUTING
In link state routing, if each node in the domain has the entire topology 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 of the domain, the node can use Dijkstra’s algorithm to build a routing table.table.
The topics discussed in this section include:The topics discussed in this section include:
Building Routing Tables Building Routing Tables
TCP/IP Protocol Suite 20
Figure 14.15 Concept of link state routing
Every router has knowledge about the network, but fromits own perspective.
TCP/IP Protocol Suite 21
Figure 14.16 Link state knowledge
Each router knows (maintains) its states of its links.
Each router floods this info (via a Link State Packet) to otherrouters periodically (when there is a change in the topology,or every 60 to 120 minutes).
Each router takes in this data and, using Dijkstra’salgorithm, creates the shortest path tree and correspondingrouting table.
TCP/IP Protocol Suite 22
Figure 14.17 Dijkstra algorithm
TCP/IP Protocol Suite 23
Figure 14.18 Example of formation of shortest path tree
TCP/IP Protocol Suite 24
Table 14.1 Table 14.1 Routing table for node ARouting table for node A
Now let’s try using the Dijkstra’s algorithm introduced in TDC 361.
TCP/IP Protocol Suite 25
TCP/IP Protocol Suite 26
14.5 OSPF
The Open Shortest Path First (OSPF) protocol is an intradomain The Open Shortest Path First (OSPF) protocol is an intradomain routing protocol based on link state routing. Its domain is also an routing protocol based on link state routing. Its domain is also an autonomous system. autonomous system.
The topics discussed in this section include:The topics discussed in this section include:
Areas Areas Metric Metric Types of Links Types of Links Graphical Representation Graphical Representation OSPF Packets OSPF Packets Link State Update Packet Link State Update Packet Other Packets Other Packets Encapsulation Encapsulation
TCP/IP Protocol Suite 27
Figure 14.19 Areas in an autonomous system
OSPF divides an autonomous system into areas. All networksinside an area must be connected.
Notice area border router; backbones; backbone routers;boundary routers
The cost associated with a route is called the metric. Metriccould be min delay, max thruput, etc.
TCP/IP Protocol Suite 28
Figure 14.21 Point-to-point link
No hosts in between; T-1 connection common
TCP/IP Protocol Suite 29
Figure 14.22 Transient link
A network with several routers attached to it; all LANs and some WANshave transient links; b. is unrealistic because too many advertisements.In c., one of the routers also becomes labeled the designated router.
TCP/IP Protocol Suite 30
Figure 14.23 Stub link
TCP/IP Protocol Suite 31
Figure 14.24 Example of an Autonomous System and its graphical representation in OSPF
What kind of networks are the dotted lines?Are there any stub networks here? What are the transient networks?
TCP/IP Protocol Suite 32
Figure 14.25 Types of OSPF packets
OSPF works by transferring packets. What are the differenttypes of packets?
The link state update packets are the most important, but seethe next slide.
TCP/IP Protocol Suite 33
When a router just came up, it cannot wait for all link state packets. Neighbors will send it a database description (not the full database but like an outline). From this, the router can then ask for information it does not have.
Establishes and maintains neighbor relationships.
Requests pieces of the topological database from neighbor routers. These messages are exchanged after a router discovers (by examining database-description packets) that parts of its topological database are out of date.
Responds to a link-state request packet. These messages also are used for the regular dispersal of LSAs. Several LSAs can be included within a single link-state update packet.
•Ack-nowledges link-state update packets.
Type 1 2 3 4 5
TCP/IP Protocol Suite 34
Figure 14.26 OSPF common header
All packets have a common header.Type is 1 to 5 as shown on previous slide.
Actually 64 bitsSo this common header is 24 bytes total length
TCP/IP Protocol Suite 35
Figure 14.27 Link state update packet
This is the general form of the link state update packet.
It is used by a router to advertise the state of its links.
Note that this packet contains one or more LSAs (the yellowpart).
TCP/IP Protocol Suite 36
Figure 14.28 LSA general header
This is the general header for each LSA.
Link state age-seconds elapsed since this message was firstgenerated.E: if 1, then this area is a stub areaT: if 1, router can handle multiple types of serviceLink state type: 1(router link), 2(network link), etc. (next slide)Advertising router: IP address of router advertising this msg.Link state sequence number: simply a sequence numberChecksum is actually based on Fletcher’s checksum
•Router Links (RL) (Type 1) are generated by all routers. These links describe the state of the router interfaces inside a particular area. These links are only flooded inside the router's area.
•Network Links (NL) (type 2) are generated by a DR (Designated Router) of a particular segment; these are an indication of the routers connected to that segment.
•Summary Links (SL) are the inter-area links (type 3); these links will list the networks inside other areas but still belonging to the autonomous system. Summary links are injected by the ABR (Area Border Router) from the backbone into other areas and from other areas into the backbone. These links are used for aggregation between areas.
•AS boundary router summary links are type 4 links that point to the ASBR (Autonomous System Boundary Router). This is to make sure that all routers know the way to exit the autonomous system.
•External Links (EL) (type 5), these are injected by the ASBR into the domain.
TCP/IP Protocol Suite 38
Figure 14.29 Router link
This is a router link LSA (one of the 5 kinds of LSAs).It is used to define the links of a true router.
For example, given the following network, what might therouter link LSA look like?
TCP/IP Protocol Suite 39
Figure 14.30 Router link LSA
For what to enter in Link ID, Link data,and Link type, see the next slide.
Default typeof service, foll.by other typesof service
TCP/IP Protocol Suite 40
Table 14.2 Table 14.2 Link types, link identification, and link dataLink types, link identification, and link data
TCP/IP Protocol Suite 41
Give the router link LSA sent by router 10.24.7.9 in Figure 14.31.
Example 3
SolutionThis router has three links: two of type 1 (point-to-point) and one of type 3 (stub network). Figure 14.32 shows the router link LSA.
See Next Slide
See Figure 14.32
TCP/IP Protocol Suite 42
Figure 14.31 Example 3
TCP/IP Protocol Suite 43
Figure 14.32 Solution to Example 3
TCP/IP Protocol Suite 44
Figure 14.33 Network link (second kind of LSA)
A network link LSA defines the links of a network andis generated by the designated router (DR).
TCP/IP Protocol Suite 45
Figure 14.34 Network link advertisement format
TCP/IP Protocol Suite 46
Give the network link LSA in Figure 14.35.
Example 4
Solution.
See Next Slide
See Figure 14.36
TCP/IP Protocol Suite 47
Figure 14.35 Example 4
TCP/IP Protocol Suite 48
Figure 14.36 Solution to Example 4
TCP/IP Protocol Suite 49
In Figure 14.37, which router(s) sends out router link LSAs?
Example 5
SolutionAll routers advertise router link LSAs. a. R1 has two links, N1 and N2.
b. R2 has one link, N1.c. R3 has two links, N2 and N3.
See Next Slide
TCP/IP Protocol Suite 50
Figure 14.37 Example 5 and Example 6
TCP/IP Protocol Suite 51
In Figure 14.37, which router(s) sends out the network link LSAs?
Example 6
SolutionAll three network must advertise network links: a. Advertisement for N1 is done by R1 because it is the only attached router and therefore the designated router.
b. Advertisement for N2 can be done by either R1, R2, or R3, depending on which one is chosen as the designated router.
c. Advertisement for N3 is done by R3 because it is the only attached router and therefore the designated router.
TCP/IP Protocol Suite 52
Figure 14.38 Summary link to network LSA (third kind of LSA)
The summary link to network LSA is used by the area borderrouter to announce the existence of other networks outsidethe area.
TCP/IP Protocol Suite 53
Figure 14.39 Summary link to network LSA
TCP/IP Protocol Suite 54
Figure 14.40 Summary link to AS boundary router LSA (fourth kind of LSA)
TCP/IP Protocol Suite 55
Figure 14.41 Summary link to AS boundary router LSA
TCP/IP Protocol Suite 56
Figure 14.42 External link LSA (fifth kind of LSA)
TCP/IP Protocol Suite 57
Figure 14.43 External link LSA
TCP/IP Protocol Suite 58
Figure 14.44 Hello packet (Type 1 OSPF packet)
Used to create neighborhood relationships and to testthe reachability of neighbors.
TCP/IP Protocol Suite 59
Figure 14.46 Link state request packet (Type 3 OSPF packet)
When a router needs information about a specific routeor router, it sends a link state request packet. The replyis a link state update packet.
TCP/IP Protocol Suite 60
Figure 14.47 Link state acknowledgment packet (Type 5 OSPF packet)
TCP/IP Protocol Suite 61
OSPF packets are encapsulated in IP datagrams.
Note:Note:
TCP/IP Protocol Suite 62
14.6 PATH VECTOR ROUTING
Path vector routing is similar to distance vector routing. There is at least 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 one node, called the speaker node, in each AS that creates a routing table and advertises it to speaker nodes in the neighboring ASs.table and advertises it to speaker nodes in the neighboring ASs.
Only the speaker nodes communicate.Only the speaker nodes communicate.
The speaker node advertises the path, not the metric of the nodes. The speaker node advertises the path, not the metric of the nodes.
TCP/IP Protocol Suite 63
14.7 BGP
Border Gateway Protocol (BGP) is an interdomain routing protocol Border Gateway Protocol (BGP) is an interdomain routing protocol using path vector routing. It first appeared in 1989 and has gone using path vector routing. It first appeared in 1989 and has gone through four versions.through four versions.
BGP interconnects three different types of AS:BGP interconnects three different types of AS:
1. Stub AS, e.g. a corporate network1. Stub AS, e.g. a corporate network
2. Multihomed AS, e.g. a large corporate network with connections to2. Multihomed AS, e.g. a large corporate network with connections tomultiple ASs, but does not allow traffic to pass thru (transient)multiple ASs, but does not allow traffic to pass thru (transient)
3. Transit AS - one that allows transient traffic, such as an Internet 3. Transit AS - one that allows transient traffic, such as an Internet backbonebackbone