CSE 123b: Lecture 6 - Distance Vector Routing and Link State Routing, Study notes of Computer Systems Networking and Telecommunications

A set of lecture notes from a computer science engineering (cse) 123b course at the university of california, san diego (ucsd), taught by stefan savage during spring 2002. The notes cover lecture 6, which discusses distance vector routing and link state routing. The lecture focuses on the concepts of routing, intra-domain routing protocols (distance vector and link state), reliable flooding, and dijkstra's shortest path tree algorithm.

Typology: Study notes

Pre 2010

Uploaded on 03/28/2010

koofers-user-zia-1
koofers-user-zia-1 🇺🇸

10 documents

1 / 52

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
CSE 123b
CSE 123b
Communications Software
Communications Software
Spring 2002
Spring 2002
Lecture 6: Routing II
Lecture 6: Routing II
Stefan Savage
Stefan Savage
Some slides courtesy David Wetherall
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34

Partial preview of the text

Download CSE 123b: Lecture 6 - Distance Vector Routing and Link State Routing and more Study notes Computer Systems Networking and Telecommunications in PDF only on Docsity!

CSE 123bCSE 123b

Communications SoftwareCommunications Software

Spring 2002Spring 2002Lecture 6: Routing II Lecture 6: Routing II

Stefan SavageStefan Savage

Some slides courtesy David Wetherall

April 25, 2002

CSE 123b -- Lecture 6 – Distance Vector Routing

Projects…^ Projects…

z^

Project #1:^ ◆

Implement simple distance vector routing protocol ◆^

We provide a “framework” called fisnhet for implementing

» Fishead: program that simulates network; maintains topology,

etc. » Libfish.a: library that provides basic functions (sending and

receiving packets, timers and keyboard input) » Fish.h: a head file that defines this API

◆^

You will test your implementation in your own local fishnet ◆^

We will provide a long running fishnet that everyone in theclass can join (one big network)

z^

BUT… still not ready…

Tuesday with complete

documentation. Will be due two weeks from Tuesday.

April 25, 2002

CSE 123b -- Lecture 6 – Distance Vector Routing

This class^ This class

z^

Finish Intra-domain routing^ ◆

Link-state protocols

z^

Inter-domain routing^ ◆

BGP ◆^

Policy ◆^

Peering/transit economics

April 25, 2002

CSE 123b -- Lecture 6 – Distance Vector Routing

Link State routing^ Link State routing

z^

Same goal as DV, but a different approach z^

Two phases^ ◆

Reliable flooding

» Tell

all

routers what you know about your

local

topology

◆^

Path calculation

(Dijkstra’s algorithm)

» Each router computes best path over

complete

network

z^

Motivation^ ◆

Using DV, routers only have local information, making itdifficult to decide what to do when there are changes ◆^

With LS, faster convergence and better stability (hopefully) ◆^

More complex

April 25, 2002

CSE 123b -- Lecture 6 – Distance Vector Routing

Reliable flooding^ Reliable flooding

z^

Goal: tell everyone what you know about local topology z^

Periodically send

link state packets

(LSPs) on

all

links

◆^

LSP contains [node, neighbors, costs, sequence number]

z^

If node X receives an LSP from node Y over link Q^ ◆

Save it in local link state database ◆^

Forward LSP on all links

except

Q

z^

Use explicit ACKs and retransmits to make flooding reliable z^

Each LSP will travel at most once over each link

April 25, 2002

CSE 123b -- Lecture 6 – Distance Vector Routing

Flooding example^ Flooding example

z^

LSP generated by X at T= z^

Nodes become orange as they receive it

X

A

C

B

D

X

A

C

B

D

X

A

C

B

D

X

A

C

B

D

T=

T=

T=

T=

April 25, 2002

CSE 123b -- Lecture 6 – Distance Vector Routing

More challenges^ More challenges

z^

What happens if the network is partitioned and heals?^ ◆

Different LS databases must be synchronized ◆^

Use version #s on each LSP (incremented for each update) ◆^

Compare version #s when a link comes back up and requestout of date LSPs

A

B

C

D

E

F

G

H

T: 1

T: 2

T: 2

April 25, 2002

CSE 123b -- Lecture 6 – Distance Vector Routing

Dijkstra’s Shortest Path Tree^ Dijkstra’s

Shortest Path Tree

(SPT) algorithm(SPT) algorithm

z^

Graph algorithm for single-source shortest path tree

S

Å

Q

Å

While Q != {}

u

Å

extract-min(Q)

S

Å

S plus {u}

for each node v adjacent to u

“relax” the cost of v

Å

u is done

April 25, 2002

CSE 123b -- Lecture 6 – Distance Vector Routing

Example –^ Example

– Step 2

Step 2

April 25, 2002

CSE 123b -- Lecture 6 – Distance Vector Routing

Example –^ Example

– Step 3

Step 3

April 25, 2002

CSE 123b -- Lecture 6 – Distance Vector Routing

Example –^ Example

– Step 5

Step 5

April 25, 2002

CSE 123b -- Lecture 6 – Distance Vector Routing

Example –^ Example

– Done

Done

April 25, 2002

CSE 123b -- Lecture 6 – Distance Vector Routing

Link State in practice^ Link State in practice

z^

OSPF (Open Shortest Path First) and IS-IS^ ◆

Most widely used intra-domain routing protocol ◆^

Run by almost all ISPs and many large organizations

z^

Basic link state algorithm plus many features:^ ◆

Authentication of routing messages ◆^

Extra hierarchy: Partition into

routing areas

◆^

Load balancing: Multiple equal cost routes

April 25, 2002

CSE 123b -- Lecture 6 – Distance Vector Routing

z^

Inter-domain versus intra-domain routing

Backbone service provider

Peeringpoint

Peeringpoint

Large corporation Large corporation

Small corporation

“Consumer ” ISP

“Consumer”ISP

“ Consumer” ISP

You at home

You at work

But the Inter^ But the

Internet is not just one

net is not just one

network…network…