Ch 13 WAN Technologies and Routing Spring 2003
Motivation How to build a packet switching system that can span a large area Building blocks Point-to-point long-distance connections Packet switches Key issue that separate MAN/WAN from LAN is scalability Provide sufficient capacity to permit computers to communicate simultaneously
Motivation
Packet Switches A hardware device used to connects to Other packet switches Computers
Illustration of a Packet Switch Special-purpose computer system CPU Memory I/O interfaces Firmware
Illustration of a WAN
Forming a WAN Place one or more packet switches at each site Interconnect switches LAN technology for local connections Leased digital circuits for long-distance connections Interconnections depend on Estimated traffic (e.g., T1) Reliability needed
Store and Forward Packets Switch Sent from source computer Travels switch-to-switch to destination Switch “Stores” packet in buffer Examines packet’s destination address “Forwards” packet toward destination Output-port buffer
Physical Addressing in a WAN Each WAN technology defines the exact frame format Each device connected to a WAN is assigned a unique physical address Many WANs use a hierarchical addressing scheme for efficient forwarding Packet switch number Port number
Illustration of WAN Addressing An address is encoded as a single binary value Higher-order bits for switch number Low-order bits for computer number
Next-Hop Forwarding The process of forwarding a packet to its next hop is known as routing Routing table for switch 2
Forwarding Table Abbreviations Many entries point to same next hop can be condensed (default) Only examines the first part of the address Reduces the size of routing table (scalability) Improves lookup efficiency
Source Independency Next-hop forwarding does not depends on Packet’s source address The path the packet has taken Next-hop forwarding does depends on Packet’s destination
Relationship of Routing to Graph edge
Default Route Used to eliminate the case of duplication routing
Source of Routing Table Information Static routing (manual) Table created by hand Useful in small networks (simplicity and low network overhead) Useful if routes never change Dynamic routing (automatic) Software creates / updates table Needed in large networks Changes routes when failures occur
Dynamic Routing Distance Vector (DV) Link-state Both used in practice Switches exchange information in their routing tables Link-state Switches exchange link status information Can have a global view Both used in practice
Distance Vector Periodic, two-way exchange between neighbors During exchange, switch sends List of pairs Each pair gives (destination, distance) Receiver Compares each item in list to local routes Changes routes if better path exists
Distance Vector Intuition If no local route to V or local routed has cost greater than C, install a route with next hop N and cost C Else ignore pair A N X V P Dest. Next Dist. V P 2 N A Cost=2 Dest. Next Dist. V X 6 Dest. Next Dist. V N 4
Link-State Routing Overcomes instabilities in DV Pair of switches periodically test link between them broadcast link status message Switch Receives status message Computes new routes Uses Dijkstra’s algorithm
Link-State Routing
Shortest Path Computation in a Graph Possible distance metric Geographic distance Economic cost Inverse of capacity Darkened path is minimum for node 4 to node 5
Shortest Path Computation in a Graph Dijkstra’s Algorithms Routing table for switch 4 is constructed during the computation of the paths A switch Only communicates with directly attached neighbors Must learn route to each destination
Early WAN Technologies ARPANET Historically important in packet switching Fast when invented, slow by current standards X.25 Early commercial service Still Used More popular in Europe
Recent WAN Technologies Frame Relay Offered by phone companies Widely used commercial service SMDS (Switched Multi-megabit Data Service) Not as popular as Frame Relay ATM
Summary Wide Area Networks (WANs) WAN addressing Span long distances Connect many computers Built from packet switches Use store-and-forward WAN addressing Two-part address Switch/computer
Summary (continued) Routing Routing tables created Each switch contains routing table Table gives next-hop for destination Routing tables created Manually Automatically Two basic routing algorithms Distance vector Link state
Summary (continued) Example WAN technologies ARPANET X.25 SMDS Frame Relay ATM
Example of Distance Vector Routing Consider transmission of one DV message Node 2 send to 3, 5, and 6 Node 6 installs cost 8 route to 2 Later 3 sends update to 6 6 changes route to make 3 the next hop for destination 2
Dijkstra’s Shortest Path Algorithm Input Graph with weighted edges Node, n Output Set of shortest paths from n to each node Cost of each path Called Shortest Path First (SPF) algorithm
Dijkstra’s Algorithm R[u]
Algorithm Intuition Start with self as source node Move outward At each step Find node u such that it Has not been considered Is “closest” to source Compute Distance from u to each neighbor v If distance shorter, make path from u go through v
Result of Dijkstra’s Algorithm Example routes from node 6 To 3, next hop = 3, cost = 2 To 2, next hop = 3, cost = 5 To 5, next hop = 3, cost = 11 To 4, next hop = 7, cost = 8 1 2 3 4 5 7 D R S={1,2,3,4,5,7} 8 S={1,2,4,5,7} 13 S={1,4,5,7} 11 S={1,4,5} S={1,5} S={1} 20 S={}