28
Introduction to Routing Chapter 20 Unicast Routing is a one-to-one delivery (single destination) major functions of the Network layer protocol— connection/less (VC or datagram) services . To carry (forward) packets from source to destination routers through the subnet “cloud” of intermediate routers. At each subnet’s router a decision has to be made, based on some routing algorithms’ tables , to deliver traffic to the next router in the way to its destination. Traffic -- VC: the entire set of packets to their destination. -- Datagram: packet by packet.

Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

Introduction to Routing Chapter 20

Unicast Routing is a one-to-one delivery (single destination) major functions of the Network layer protocol— connection/less (VC or datagram) services.

To carry (forward) packets from source to destination routers through the subnet “cloud” of intermediate routers.

At each subnet’s router a decision has to be made, based on some routing algorithms’ tables, to deliver traffic to the next router in the way to its destination.

Traffic -- VC: the entire set of packets to their destination.

-- Datagram: packet by packet.

Page 2: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.2

Routing Algorithms Find the best cost path of weighted Links from a source to a target destination Routers. They generate a cost metric (single/several factors) for each possible src-dest path. Viewing the Network as a graph: Net-Graph = (Router-Nodes, Cost-Weighted Links)

Page 3: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.3

Route Computation Algorithms

Link-State (LS) (Dijkstra) A router will have a global & complete knowledge of the network topology (Graph), through node routing information flooding. Hence, algorithmically, it calculates the shortest path to all nodes in the network graph (target destinations).

Distance-Vector (DV) (Bellman-Ford) In addition to direct link cost to neighbors, a router will receive from its direct neighbors knowledge about their accessible destinations and associated links’ costs to access them. Hence, it calculates the shortest path to each destination via an iterative routing algorithm utilizing the neighbors distances to each target destination.

Page 4: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.4

Routing Protocols Define the format (syntax & semantics) of routing information exchanges. Define the computation upon receiving routing updates. Continuously monitors the network topology changes over time, updating routing routers with latest changes.

Page 5: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.5

Major issues that influence Routing:

Static Vs. Dynamic routing! (Routing Protocols and Concepts, by Rick Graziani, Allan Johnson)

Static: calculate routing table once by Network administrator, then apply for long time! (rigid, not scalable, and not much used except special cases!) Dynamic: continuous updating to routing tables as the Network dynamics changes! (most used and works very well with the Internet dynamics) Dynamic is most used, whereas Static is used in a Network:

i) with small number of routers,

ii) connected to only one ISP, or

iii) large but configured as hub-and-spoke topology (central hop with multi branches –spokes- each has one path to single destination!

Changes to the Subnet topology affects the routing conversion delay and stability.

Subnet Scalability – larger number of routers/links.

Measures of best rout to destination-- # hops, hops’ BW, ….

Page 6: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.6

Least-Cost Routing

In the Internet, the source router (SR)chooses a route, to the destination router (DR), that has least cost (LC)among all possible routes.

For N nodes, we have (N-1) LC path from any SR to all of its possible DRs. For all N SRs, we need N x (N-1) ! ( very large number when N is big!) Hence, to be able to route to any target DR, the SR has to get the best routes to all DRs in the Internet! (How?) For every SR, as a root, build a least-cost-tree that spans all Internet routers (nodes) with the least cost route to each DR.

Page 7: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.7

hss
Sticky Note
Reverse the arrow!
Page 8: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.8

ROUTING ALGORITHMS

Different routing algorithms different least cost interpretation and creation of the least- cost tree.

Page 9: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.9

D ista n ce-Vec to r Ro u tin g Each router creates is its own least-cost tree with the (partial) routing information (vectors) obtained from its immediate neighbors. As neighboring routers learn more about the network routes, their (incomplete) vectors are exchanged between immediate neighbors to make the routing trees (DV) more and more complete and to represent the whole internet.

In distance-vector routing, a router continuously tells all of its neighbors what it knows about the whole internet (although the knowledge can be incomplete).

Bellman-Ford Algorithm

Page 10: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.10

Figure 20.3: Graphical idea behind Bellman-Ford equation

Page 11: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.11

Figure 20.4: The distance vector corresponding to a tree

Page 12: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.12

Figure 20.5: The first distance vector for an internet

Page 13: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.13

Figure 20.6: Updating distance vectors

Page 14: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

Table 20.1: Distance-Vector Routing Algorithm for A Node

20.14

Page 15: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.15

Figure 20.7: Two-node instability

hss
Sticky Note
Not 16 it is only 1 .
Page 16: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.16

20.2.2 Link-State Routing

A routing algorithm that creates least-cost trees and forwarding tables is link-state (LS) routing.

The cost associated with a Link defines its State.

Links with lower costs are preferred.

If the link cost is infinity, then the link does not exist or has been broken.

Dijkstra Algorithm

Page 17: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.17

20.2.2 Link-State Routing Each router generates Link State Advertisements (LSAs) to be flooded to all other network routers LASs’ databases.

Each router uses its (global duplicated to all nodes) LSA database to visualize the entire Internet as a weighted links graph, WG. Then runs a shortest path algorithm (Dijikstra’s algorithm) on the WG to produce the shortest path from the single router to all other destinations’ routers.

Dijkstra Algorithm

Page 18: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.18

Figure 20.8: Example of a link-state database

Page 19: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.19

Figure 20.9: LSPs created and sent out by each node to build LSDB

Page 20: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

Table 20.2: Dijkstra’s Algorithm

20.20

Page 21: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.21

Figure 20.10: Least-cost tree

Add B of cost 2 to the tree

A is in the tree only as a root

Add D of cost 3 to the tree

Add C of cost 7 to the tree

Add F of cost 8 to the tree

Add E of cost 6 to the tree

Add G of cost 9 to the tree

The tree is complete!

Page 22: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.22

Distance Vector: (Local exchange of routing tables between neighbors )

Distribute one’s own routing table to neighbors.

Routing update can be large in size, but travels only one link.

Each node only knows distances to other destinations.

Link State: (shared LS-database) Broadcast raw node’s topology information (neighbors and their costs) LS Packets (LSP) (flooded) to the all nodes in the entire network. LSPs will be collected at each node to obtain shared LS-database.

Routing update is small in size, but travels over all links in the network. Each node knows “entire” topology, hence the process is “guaranteed” to converge.

Performance measure: Communication overhead, Robustness & Time to convergence.

Comparison of LS and DV algorithms

Page 23: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.23

Dijkstra routing algorithm Given a topology map, compute the

shortest paths to all the other nodes

Bellman-Ford routing algorithm Given the lists of distance to all

destinations from all the neighbors, compute the shortest path to destination

Known problem: count-to-infinity

Page 24: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.24

20.2.3 Path-Vector Routing For instances where the least-cost goal is not the priority (as in DV & LS). For example, if there are some routers that a sender wants to prevent its packets from going through, regardless of the least-cost goal. To respond to these demands, a third routing algorithm, called path-vector (PV) routing has been devised.

Page 25: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.25

Figure 20.11: Spanning trees in path-vector routing

Page 26: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.26

Figure 20.12: Path vectors made at booting time via greeting messages between neighbors

Page 27: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

20.27

Figure 20.13: Updating path vectors

Page 28: Introduction to Routing Chapter 20cs353/Lectures/Intro-to_Routing...20.6 Least-Cost Routing In the Internet, the source router (SR)chooses a route, to the destination router (DR),

Table 20.3: Path-vector algorithm for a node

20.28