CSE 461: Distance Vector Routing. Next Topic  Focus  How do we calculate routes for packets?  Routing is a network layer function  Routing Algorithms.

Slides:



Advertisements
Similar presentations
CSE 561 – Bridging and Routing David Wetherall Spring 2000.
Advertisements

COS 461 Fall 1997 Routing COS 461 Fall 1997 Typical Structure.
Courtesy: Nick McKeown, Stanford
Routing So how does the network layer do its business?
Chapter 4 Distance Vector Problems, and Link-State Routing Professor Rick Han University of Colorado at Boulder
Distance-Vector Routing COS 461: Computer Networks Spring 2010 (MW 3:00-4:20 in COS 105) Michael Freedman
Network Layer Design Isues Store-and-Forward Packet Switching Services Provided to the Transport Layer The service should be independent of the router.
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:
CMPE 151 Routing Marc Mosko. 2 Talk Outline Routing basics Why segment networks? IP address/subnet mask The gateway decision based on dest IP address.
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.
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.
Computer Networking Intra-Domain Routing, Part I RIP (Routing Information Protocol)
CS 4700 / CS 5700 Network Fundamentals Lecture 9: Intra Domain Routing Revised 7/30/13.
© 2006 Cisco Systems, Inc. All rights reserved. ICND v2.3—3-1 Determining IP Routes Introducing Distance Vector Routing.
S305 – Network Infrastructure Chapter 5 Network and Transport Layers.
CS 453 Computer Networks Lecture 24 IP Routing. See…
Routing Concepts Warren Toomey GCIT. Introduction Switches need to know the link address and location of every station. Doesn't scale well, e.g. to several.
Introduction to Routing and Routing Protocols By Ashar Anwar.
Routing Information Protocol (RIP). Intra-and Interdomain Routing An internet is divided into autonomous systems. An autonomous system (AS) is a group.
1 Computer Communication & Networks Lecture 22 Network Layer: Delivery, Forwarding, Routing (contd.)
CS 4396 Computer Networks Lab
Intra-Domain Routing D.Anderson, CMU Intra-Domain Routing RIP (Routing Information Protocol) & OSPF (Open Shortest Path First)
University of the Western Cape Chapter 11: Routing Aleksandar Radovanovic.
Slide /2009COMM3380 Routing Algorithms Distance Vector Routing Each node knows the distance (=cost) to its directly connected neighbors A node sends.
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.
Routing and Routing Protocols Routing Protocols Overview.
1 Introducing Routing 1. Dynamic routing - information is learned from other routers, and routing protocols adjust routes automatically. 2. Static routing.
M.Menelaou CCNA2 ROUTING. M.Menelaou ROUTING Routing is the process that a router uses to forward packets toward the destination network. A router makes.
Routing protocols Basic Routing Routing Information Protocol (RIP) Open Shortest Path First (OSPF)
1 Network Layer Lecture 13 Imran Ahmed University of Management & Technology.
RIP2 (Routing Information Protocol) Team Agile. Routing Protocols Link State – OSPF – ISIS Distance vector – RIP (version 1 and 2) – IGRP (Cisco Proprietary)
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.
TCP/IP Protocol Suite 1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 11 Unicast Routing Protocols.
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)
The Network Layer & Routing
Lecture 17 November 8Intra-domain routing November 13Internet routing 1 November 15Internet routing 2 November 20End-to-end protocols 1 November 22End-to-end.
1 Computer Communication & Networks Lecture 21 Network Layer: Delivery, Forwarding, Routing Waleed.
Spring 2000CS 4611 Routing Outline Algorithms Scalability.
4: Network Layer4a-1 Distance Vector Routing Algorithm iterative: r continues until no nodes exchange info. r self-terminating: no “signal” to stop asynchronous:
1 Chapter 4: Internetworking (IP Routing) Dr. Rocky K. C. Chang 16 March 2004.
Spring Routing: Part I Section 4.2 Outline Algorithms Scalability.
Network-Layer Routing Routing tasks are methods of finding the paths for packet from their sources to their destinations. Routers are responsible mainly.
Lecture 7. Building Forwarding Tables There are several methods Static Method Dynamic Methods Centralized Distributed Distance Vector Link State.
1. 2  An autonomous system is a region of the Internet that is administered by a single entity.  Examples of autonomous regions are:  UVA’s campus.
CS 6401 Intra-domain Routing Outline Introduction to Routing Distance Vector Algorithm.
Routing and Routing Protocols CCNA 2 v3 – Module 6.
IP tutorial - #2 Routing KAIST Dept. of CS NC Lab.
CSE 461: Distance Vector Routing Jeremy Elson Microsoft Research Ben Greenstein
Working at a Small-to-Medium Business or ISP – Chapter 6
Computer Networks Routing Algorithms.
Routing Information Protocol (RIP)
Rip Routing Protocol.
Intra-Domain Routing Jacob Strauss September 14, 2006.
Routing: Distance Vector Algorithm
UNICAST ROUTING PROTOCOLS
CS 3700 Networks and Distributed Systems
Intradomain Routing Outline Introduction to Routing
CS 640: Introduction to Computer Networks
Dynamic Routing and OSPF
RFC 1058 & RFC 2453 Routing Information Protocol
CS 3700 Networks and Distributed Systems
Communication Networks
Working at a Small-to-Medium Business or ISP – Chapter 6
Network Layer (contd.) Routing
EE 122: Intra-domain routing: Distance Vector
Communication Networks
Distance Vector Routing Protocols
Computer Networks Protocols
Presentation transcript:

CSE 461: Distance Vector Routing

Next Topic  Focus  How do we calculate routes for packets?  Routing is a network layer function  Routing Algorithms  Distance Vector routing (RIP) Physical Data Link Network Transport Session Presentation Application

IP Addresses and IP Datagram Forwarding  How the source gets the packet to the destination:  if source is on same network (LAN) as destination, source sends packet directly to destination host  else source sends data to a router on the same network as the source  router will forward packet to a router on the next network over  and so on…  until packet arrives at router on same network as destination; then, router sends packet directly to destination host  Requirements  every host needs to know IP address of the router on its LAN  every router needs a routing table to tell it which neighboring network to forward a given packet on

Forwarding and Routing  Forwarding is the process that each router goes through for every packet to send it on its way  Involves local decisions  Routing is the process that all routers go through to calculate the routing tables  Involves global decisions

What’s in a Routing Table?  The routing table at A, for example, lists at a minimum the next hops for the different destinations Dest Next Hop BB CC DC EE FE GF

Kinds of Routing Schemes  Many routing schemes have been proposed/explored!  Distributed or centralized  Hop-by-hop or source-based  Deterministic or stochastic  Single or multi-path  Static or dynamic route selection  Internet is to the left

Routing Questions/Challenges  How to choose best path? What is best path?  How to scale to millions of users?  How to adapt to failures or changes?  Node and link failures, plus message loss  We will use distributed algorithms

Some Pitfalls  Using global knowledge is challenging  Hard to collect  Can be out-of-date  Needs to summarize in a locally-relevant way  Inconsistencies in local /global knowledge can cause:  Loops (black holes)  Oscillations, esp. when adapting to load

 Routing is essentially a problem in graph theory =router =link Network as a Graph X =cost

Distance Vector Routing  Assume:  Each router knows only address/cost of neighbors  Goal:  Calculate routing table of next hop information for each destination at each router  Idea:  Tell neighbors about learned distances to all destinations

DV Algorithm  Each router maintains a vector of costs to all destinations as well as routing table  Initialize neighbors with known cost, others with infinity  Periodically send copy of distance vector to neighbors  On reception of a vector, if neighbors path to a destination plus neighbor cost is better, then switch to better path update cost in vector and next hop in routing table  Assuming no changes, will converge to shortest paths  But what happens if there are changes?

DV Example – Initial Table at A DestCostNext B1B C1C D  - E1E F1F G  -

DV Example – Final Table at A  Reached in a single iteration … simple example DestCostNext B1B C1C D2C E1E F1F G2F

What if there are changes?  One scenario: Suppose link between F and G fails 1. F notices failure, sets its cost to G to infinity and tells A 2. A sets its cost to G to infinity too, since it learned it from F 3. A learns route from C with cost 2 and adopts it XXXXX DestCostNext B1B C1C D2C E1E F1F G3C

 Simple example  Costs in nodes are to reach Internet  Now link between B and Internet fails … Count To Infinity Problem Internet A/2B/1

Count To Infinity Problem  B hears of a route to the Internet via A with cost 2  So B switches to the “better” (but wrong!) route update Internet A/2B/3XXX

Count To Infinity Problem  A hears from B and increases its cost update Internet A/4B/3XXX

Count To Infinity Problem  B hears from A and (surprise) increases its cost  Cycle continues and we “count to infinity”  Packets caught in the crossfire loop between A and B update Internet A/4B/5XXX

Split Horizon  Solves trivial count-to-infinity problem  Router never advertises the cost of a destination back to to its next hop – that’s where it learned it from!  Poison reverse: go even further – advertise back infinity  However, DV protocols still subject to the same problem with more complicated topologies  Many enhancements suggested

Routing Information Protocol (RIP)  DV protocol with hop count as metric  Infinity value is 16 hops; limits network size  Includes split horizon with poison reverse  Routers send vectors every 30 seconds  With triggered updates for link failures  Time-out in 180 seconds to detect failures  RIPv1 specified in RFC1058   RIPv2 (adds authentication etc.) in RFC1388 

RIP is an “Interior Gateway Protocol”  Suitable for small- to medium-sized networks  such as within a campus, business, or ISP  Unsuitable for Internet-scale routing  hop count metric poor for heterogeneous links  16-hop limit places max diameter on network  Later, we’ll talk about “Exterior Gateway Protocols”  used between organizations to route across Internet

Key Concepts  Routing is a global process, forwarding is local one  The Distance Vector algorithm and RIP  Simple and distributed exchange of shortest paths.  Weak at adapting to changes (loops, count to infinity)