CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 22 Introduction to Computer Networks.

Slides:



Advertisements
Similar presentations
CSCI-1680 Network Layer: Intra-domain Routing Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Rodrigo Fonseca.
Advertisements

Network Layer – Routing 2 Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
Computer Networking A Top-Down Approach Chapter 4.7.
COS 461 Fall 1997 Routing COS 461 Fall 1997 Typical Structure.
Courtesy: Nick McKeown, Stanford
1 LINK STATE PROTOCOLS (contents) Disadvantages of the distance vector protocols Link state protocols Why is a link state protocol better?
Routing - I Important concepts: link state based routing, distance vector based routing.
CSE331: Introduction to Networks and Security Lecture 9 Fall 2002.
Routing So how does the network layer do its business?
RD-CSY3021 Comparing Routing Protocols. RD-CSY3021 Criteria used to compare routing protocols includes  Time to convergence  Proprietary/open standards.
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 23 Introduction to Computer Networks.
Chapter 4 Distance Vector Problems, and Link-State Routing Professor Rick Han University of Colorado at Boulder
Network Layer Design Isues Store-and-Forward Packet Switching Services Provided to the Transport Layer The service should be independent of the router.
Internet Networking Spring 2002
1 ELEN 602 Lecture 19 Routing. 2 Overview Forwarding vs Routing –forwarding: to select an output port based on destination address and routing table –routing:
Spring Routing & Switching Umar Kalim Dept. of Communication Systems Engineering 06/04/2007.
1 Computer Networks Routing Algorithms. 2 IP Packet Delivery Two Processes are required to accomplish IP packet delivery: –Routing discovering and selecting.
MULTICASTING Network Security.
Announcement r Project 2 Extension ? m Previous grade allocation: Projects 40% –Web client/server7% –TCP stack21% –IP routing12% Midterm 20% Final 20%
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 21 Introduction to Computer Networks.
EE 122: Intra-domain routing Ion Stoica September 30, 2002 (* this presentation is based on the on-line slides of J. Kurose & K. Rose)
CSE 461: Link State Routing. Link State Routing  Same assumptions/goals, but different idea than DV:  Tell all routers the topology and have each compute.
1 Distance Vector Routing Protocols Dr. Rocky K. C. Chang 14 November 2006.
Routing Algorithms (Ch5 of Computer Network by A. Tanenbaum)
Interior Gateway Protocols: RIP & OSPF
Chapter 22 Network Layer: Delivery, Forwarding, and Routing
Multicast Routing Protocols NETE0514 Presented by Dr.Apichan Kanjanavapastit.
1 Computer Communication & Networks Lecture 22 Network Layer: Delivery, Forwarding, Routing (contd.)
Review: routing algorithms. –Choose the appropriate paths. –Routing algorithms Flooding Shortest path routing (example). –Dijkstra algorithm. –Bellman-Ford.
CS551: Unicast Routing Christos Papadopoulos (
Network Layer r Introduction r Datagram networks r IP: Internet Protocol m Datagram format m IPv4 addressing m ICMP r What’s inside a router r Routing.
Spring 2008CS 3321 Intradomain Routing Outline Algorithms Scalability.
Routing Protocols RIP, OSPF, BGP. A Routing Protocol’s Job Is to Find a “Best” Path between Any Pair of Nodes Routers in a network exchange their routing.
Network Layer introduction 4.2 virtual circuit and datagram networks 4.3 what’s inside a router 4.4 IP: Internet Protocol  datagram format  IPv4.
Broadcast and Multicast. Overview Last time: routing protocols for the Internet  Hierarchical routing  RIP, OSPF, BGP This time: broadcast and multicast.
1 Network Layer Lecture 13 Imran Ahmed University of Management & Technology.
Network and Communications Ju Wang Chapter 5 Routing Algorithm Adopted from Choi’s notes Virginia Commonwealth University.
Network Layer4-1 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside a router r 4.4 IP: Internet.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing Part 5 Multicasting protocol.
Chi-Cheng Lin, Winona State University CS 313 Introduction to Computer Networking & Telecommunication Chapter 5 Network Layer.
Chapter 15 Multicasting and Multicast Routing
Network Layer4-1 Distance Vector Algorithm Bellman-Ford Equation (dynamic programming) Define d x (y) := cost of least-cost path from x to y Then d x (y)
© J. Liebeherr, All rights reserved 1 Multicast Routing.
Spring 2006CS 3321 Intradomain Routing Outline Algorithms Scalability.
1 Computer Communication & Networks Lecture 21 Network Layer: Delivery, Forwarding, Routing Waleed.
ICS 156: Networking Lab Magda El Zarki Professor, ICS UC, Irvine.
Internet Routing r Routing algorithms m Link state m Distance Vector m Hierarchical routing r Routing protocols m RIP m OSPF m BGP.
©The McGraw-Hill Companies, Inc., 2000© Adapted for use at JMU by Mohamed Aboutabl, 2003Mohamed Aboutabl1 1 Chapter 14 Multicasting And Multicast Routing.
Routing Algorithms and IP Addressing Routing Algorithms must be ▪ Correctness ▪ Simplicity ▪ Robustness ▪ Stability ▪ Fairness ▪ Optimality.
Computer Networks22-1 Network Layer Delivery, Forwarding, and Routing.
Ch 22. Routing Direct and Indirect Delivery.
Spring 2000CS 4611 Routing Outline Algorithms Scalability.
1 Chapter 4: Internetworking (IP Routing) Dr. Rocky K. C. Chang 16 March 2004.
Chapter 25 Internet Routing. Static Routing manually configured routes that do not change Used by hosts whose routing table contains one static route.
Spring Routing: Part I Section 4.2 Outline Algorithms Scalability.
Network Layer (2). Review Physical layer: move bits between physically connected stations Data link layer: move frames between physically connected stations.
CS 6401 Intra-domain Routing Outline Introduction to Routing Distance Vector Algorithm.
Distance Vector and Link State Routing Pragyaditya Das.
1 Group Communications: Reverse Path Multicast Dr. Rocky K. C. Chang 19 March, 2002.
CSE 421 Computer Networks. Network Layer 4-2 Chapter 4: Network Layer r 4. 1 Introduction r 4.2 Virtual circuit and datagram networks r 4.3 What’s inside.
The network layer: routing
CS 5565 Network Architecture and Protocols
THE NETWORK LAYER.
Intra-Domain Routing Jacob Strauss September 14, 2006.
Routing: Distance Vector Algorithm
Kuliah 5 ROUTING.
Intradomain Routing Outline Introduction to Routing
Dynamic Routing and OSPF
Communication Networks
Delivery, Forwarding, and Routing
Presentation transcript:

CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 22 Introduction to Computer Networks

CMPE 150- Introduction to Computer Networks 2 Announcements Homework 4 up. Due on Lab this week: –“The Internet Behind the Web” video. We will have a “real” lab next week. –RIP.

CMPE 150- Introduction to Computer Networks 3 Last Class… Routing. –Static versus dynamic routing. Static routing: –Shortest-path. –Flooding. Dynamic routing: –Distance vector.

CMPE 150- Introduction to Computer Networks 4 Today Routing (Cont’d). –Dynamic routing. DV (Cont’d). LS. –Hierarchical routing. –Many-to-many routing. Broadcast. Multicast.

CMPE 150- Introduction to Computer Networks 5 Distance Vector: Example Node Distance Next T=T 0 T=T Node Distance Next T=T 2 7

CMPE 150- Introduction to Computer Networks 6 Problems 1.Routing loops. 2.Slow convergence. 3.Counting to infinity.

CMPE 150- Introduction to Computer Networks 7 Count-to-Infinity Good news propagate faster. ABCD E Initially, A down: A comes up: infinity infinity infinity (after 2 exchanges) infinity (after 3 exchanges) (after 4 exchanges) infinity infinity (after 1 exchange)

CMPE 150- Introduction to Computer Networks 8 Count-to-Infinity (Cont’d) But, bad news propagate slower! ABCD E Initially, all up: A goes down: (after 1 exchange) (after 2 exchanges) (after 3 exchanges) (after 4 exchanges) (after 5 exchanges) (after 6 exchanges) …. infinity

CMPE 150- Introduction to Computer Networks 9 Count-to-Infinity (Cont’d) Gradually routers work their way up to infinity. Number of exchanges depends on how large is infinity. To reduce number of exchanges, if metric is number of hops, infinity=maximum path+1.

CMPE 150- Introduction to Computer Networks 10 Solution Routing loops: –Path vector: record actual path used in the DV. –Previous hop tracing: records preceding router. Count-to-infinity: –Split horizon: router reports to neighbor cost “infinity” for destination if route to that destination is through that neighbor.

CMPE 150- Introduction to Computer Networks 11 Split Horizon Tries to make bad news spread faster. A node reports infinity as distance to node X on link packets to X are sent. Example, in the first exchange, C tells D its distance to A but tells B its distance to A is infinity. –So B discovers its link to A is down and C’s distance to A is infinity; so it sets its distance to A to infinity.

CMPE 150- Introduction to Computer Networks 12 Link State Routing DV routing used in the ARPANET until 1979, when it was replaced by link state routing. Used by the Internet’s OSPF. Based on Dijkstra’s “all pairs shortest path” algorithm. Plus link state updates.

CMPE 150- Introduction to Computer Networks 13 Link State Routing (Cont’d) Link state routing is based on: –Discover your neighbors and measure the communication cost to them. –Send updates about your neighbors to all other routers. –Compute shortest path to every other router.

CMPE 150- Introduction to Computer Networks 14 Finding Neighbors When router is booted, its first task is to find who its neighbors are. Special single-hop “hello” packets. Cost metric: –Number of hops: in this case, always 1. –Delay: “echo” packets and measure RTT/2. –Load?

CMPE 150- Introduction to Computer Networks 15 Generating Link State Updates Link state packets (LSP). –Sender identity. –Sequence number. –TTL. –List of (neighbor, cost). When to send updates? –Proactive: periodic updates; how often? –Reactive: whenever some significant event is detected, e.g., link goes down. Where to send them? Everywhere: flood.

CMPE 150- Introduction to Computer Networks 16 Processing Updates When LSP is received: –Check sequence number. –If higher than current sequence number, keep it and flood it; otherwise, discard it. –Periodically decrement TTL. When TTL=0, purge LSP.

CMPE 150- Introduction to Computer Networks 17 Computing Routes Routers have global view of network. –They receive updates from all other routers with their cost to their neighbors. –Build network graph. Use Dijkstra’s shortest-path algorithm to compute shortest paths to all other nodes.

CMPE 150- Introduction to Computer Networks 18 Measuring Line Cost A subnet in which the East and West parts are connected by two lines.

CMPE 150- Introduction to Computer Networks 19 Building Link State Packets (a) A subnet. (b) The link state packets for this subnet.

CMPE 150- Introduction to Computer Networks 20 Distributing the Link State Packets B’s LSP buffer: each row corresponds to a recently LSP that hasn’t been processed yet.

CMPE 150- Introduction to Computer Networks 21 Link State Routing: Problems Scalability: –Storage: kn, where n is number of routers and k is number of neighbors. –Computation time. –LSP propagation via flooding.

CMPE 150- Introduction to Computer Networks 22 DV versus LS DV: –Node tells its neighbors what it knows about everybody. –Based on other’s knowledge, node chooses best route. –Distributed computation. LS: –Node tells everyone what it knows about its neighbors. –Every node has global view. –Compute their own routes.

CMPE 150- Introduction to Computer Networks 23 Hierarchical Routing For scalability: –As network grows, so does RT size, routing update generation, processing, and propagation overhead, and route computation time and resources. Divide network into routing regions. –Routers within region know how to route packets to all destinations within region. –But don’t know how to route within other regions. –“Border” routers: route within regions.

CMPE 150- Introduction to Computer Networks 24 Hierarchical Routing: Example 1B 1A 1C 2A 2B 2C 2D 3A 3B 4A 4B 4C 5E 5D 5C 5B 5A Dest. Next Hops 1A - - 1B 1B 1 1C 1C 1 2A 1B 2 2B 1B 3 2C 1B 3 2D 1B 4 3A 1C 3 3B 1C 2 4A 1C 3 4B 1C 4 4C 1C 4 5A 1C 4 5B 1C 5 5C 1B 5 5D 1C 6 5E 1C 5 1A Flat routing:

CMPE 150- Introduction to Computer Networks 25 Hierarchical Routing: Example 1B 1A 1C 2A 2B 2C 2D 3A 3B 4A 4B 4C 5E 5D 5C 5B 5A Dest. Next Hops 1A - - 1B 1B 1 1C 1C 1 2 1B 2 3 1C 2 4 1C 3 5 1C 4 1A Hierarchy:

CMPE 150- Introduction to Computer Networks 26 Hierarchical Routing Optimal paths are not guaranteed. –Example: 1A->5C should be via 2 and not 3. How many hierarchical levels? –Example: 720 routers. 1 level: each router needs 720 RT entries. 2 levels: 24 regions of 30 routers: each router’s RT has entries. 3 levels: 8 clusters of 9 regions with 10 routers: each router’s RT

CMPE 150- Introduction to Computer Networks 27 Many-to-Many Routing Support many-to-many communication. Example applications: multi-point data distribution, multi-party teleconferencing.

CMPE 150- Introduction to Computer Networks 28 Broadcasting Send to ALL destinations. Several possible routing mechanisms to broadcasting. Simplistic approach: send separate packet to each destination. –Simple but expensive. –Source needs to know about all destinations. Flooding: –May generate too many duplicates (depending on node connectivity).

CMPE 150- Introduction to Computer Networks 29 Multidestination Routing Packet contains list of destinations. Router checks destinations and determines on which interfaces it will forward packet. –Router generates new copy of packet for each output line and includes in packet only the appropriate set of destinations. –Eventually, packets will only carry 1 destination.

CMPE 150- Introduction to Computer Networks 30 Spanning Tree Routing Use spanning tree (sink tree) rooted at broadcast initiator. No need for destination list. Each on spanning tree forwards packets on all lines on the spanning tree (except the one the packet arrived on). Efficient but needs to generate the spanning tree and routers must have that information.

CMPE 150- Introduction to Computer Networks 31 Reverse Path Forwarding Routers don’t have to know spanning tree. Router checks whether broadcast packet arrived on interface used to send packets to source of broadcast. –If so, it’s likely that it followed best route and thus not a duplicate; router forwards packet on all lines. –If not, packet discarded as likely duplicate.

CMPE 150- Introduction to Computer Networks 32 Broadcast Routing Reverse path forwarding. (a) A subnet. (b) a Sink tree. (c) The tree built by reverse path forwarding.

CMPE 150- Introduction to Computer Networks 33 Multicasting Special form of broadcasting: –Instead of sending messages to all nodes, send messages to a group of nodes. Multicast group management: –Creating, deleting, joining, leaving group. –Group management protocols communicate group membership to appropriate routers.

CMPE 150- Introduction to Computer Networks 34 Multicast Routing Each router computes spanning tree covering all other participating routers. –Tree is pruned by removing that do not contain any group members. 1,

CMPE 150- Introduction to Computer Networks 35 Shared Tree Multicasting Source-rooted tree approaches don’t scale well! –1 tree per source, per group! –Routers must keep state for m*n trees, where m is number of sources in a group and n is number of groups. Core-based trees: single tree per group. –Host unicast message to core, where message is multicast along shared tree. –Routes may not be optimal for all sources. –State/storage savings in routers.