29
CIS 725 Network Layer

CIS 725

Embed Size (px)

DESCRIPTION

CIS 725. Network Layer. Network Layer. This layer provides communication between any two nodes Uniform addressing scheme independent of the network technology. Network layer. Data Link layer. Problems to be addressed. Routing Congestion control. Routing. Processing nodes - PowerPoint PPT Presentation

Citation preview

CIS 725

Network Layer

Network Layer

• This layer provides communication between any two nodes

• Uniform addressing scheme independent of the network technology

Network layer

Data Link layer

Problems to be addressed

• Routing• Congestion control

Routing

• Processing nodes• Switches/routers• Communication links

Datagram routing

• Each packet is routed independently • Unordered• Unreliable

Virtual Circuit routing

• Set up a path for each connection• All messages are sent over this path• Ordered• Reliable

Routing Table

• Routing table contains the next hop information

• At each node i,

for each destination j,

what is the next hop

Bellman-Ford Algorithm

• Distance table:• Routing table

Distance Vector Algorithms

distance from i to j via k

• Protocol at node i:

On receiving routing table from k

update column k of the distance table as follows

For each destination j,

if k reports its distance to j as d then

update Dj,k = d + weight(i,k)

Routing table

• Recompute the routing table as follows:

For each destination k,

update next hop to j, where

Dj,k = min(Dx,k: for all x)

• Periodically or whenever the routing table changes, send routing table to all neighbors

Bellman-Ford Algorithm

b c

bcde

a b ea c d

acde

abde

bcde

acde

abde

2

2

1 1

24

e

d

c

b

a

2

42

21

41

2

b 2c 4

a 2

c 1

d 2

a 4b 1

e 2

Bellman-Ford Algorithm

b c

bcde

a b ea c d

acde

abde

bcde

acde

abde

2

2

1 1

24

e

d

c

b

a

2

42

21

41

2

b 2b 3

a 2

c 1

d 2

b 3

b 1

e 2

34

b 4

56

3

3

b 3

Bellman-Ford Algorithm

• Distance vector algorithm– Best path criteria

• Latency• Jitter• bandwidth

Counting to infinitya

b c

1

1

100

aa

b

b

13

31a a

a100 2 2

cc a a 1

1b b

a aa

100 4 4

cc

aa

b

b

13

3101 a b 3

1b b

aa

b

b

15

3101 a b 5

1b b

101

a ed fb c 11 111

5

2012345

< a,b,c,d,e,f>

dest next dist path

a ed fb c 11 111

5

12345

dest next dist Next to last hop

b b 1 a

d b 3 cc b 2 b

f b 5 e

e b 4 d

ed c b

Link State Routing

• Each node maintains the state of every link• State of the link may contain several types

of information

Learning local information

• Exchange hello packets periodically• Measure the cost of adjacent links

Distributed link state information

• Link state packet:

* source id

* cost of incident edges

* sequence numbers

Building Link State Packets

(a) A subnet. (b) The link state packets for this subnet.

Distribution Algorithm

• Controlled flooding

- hop count

- sequence numbers

- age

• Receive LSP from nbr j

- compare sequence numbers

- update topology table

- propagate LSP to all nbrs except j

Hierarchical Routing

• Divide area into regions• Maintain accurate information about nodes

in the same region

Hierarchical Routing

Hierarchical routing.

Source-routing

• Message contains the entire path• Routing table lookup is avoided at each

node

Broadcasting/Multicasting

• To send a message to all nodes:

- make a separate message to each destination

- route each message independently

Multi-destination routing

• Include all destination address in message• Each node decides which links to forward

so that it reaches all destinations

Multicast trees

• Create a spanning tree• Prune the spanning tree: Steiner tree