Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 86

Chapter 5

The Network Layer

10/23/23 Tanenbaum Chapter 5 Network 1


Network Layer Design Isues

• Store-and-Forward Packet Switching


• Services Provided to the Transport Layer
• Implementation of Connectionless Service
• Implementation of Connection-Oriented Service
• Comparison of Virtual-Circuit and Datagram Subnets

10/23/23 Tanenbaum Chapter 5 Network 2


Store-and-Forward Packet Switching

fig 5-1

The environment of the network layer protocols.


10/23/23 Tanenbaum Chapter 5 Network 3
Implementation of Connectionless Service

Routing within a diagram subnet.


10/23/23 Tanenbaum Chapter 5 Network 4
Implementation of Connection-Oriented Service

Routing within a virtual-circuit subnet.


10/23/23 Tanenbaum Chapter 5 Network 5
Comparison of Virtual-Circuit and
Datagram Subnets

5-4

10/23/23 Tanenbaum Chapter 5 Network 6


Routing Algorithms
• The Optimality Principle
• Shortest Path Routing
• Flooding
• Distance Vector Routing
• Link State Routing
• Hierarchical Routing
• Broadcast Routing
• Multicast Routing
• Routing for Mobile Hosts
• Routing in AdTanenbaum
10/23/23
Hoc Networks
Chapter 5 Network 7
Routing Algorithms (2)

Conflict between fairness and optimality.


10/23/23 Tanenbaum Chapter 5 Network 8
The Optimality Principle

(a) A subnet. (b) A sink tree for router B.


10/23/23 Tanenbaum Chapter 5 Network 9
Shortest Path Routing

The first 5 steps used in computing the shortest path from A to D.


10/23/23 The arrows indicate
Tanenbaum Chapter 5the working node.
Network 10
Flooding

5-8 top

Dijkstra's
10/23/23
algorithm to compute the shortest path through a graph.
Tanenbaum Chapter 5 Network 11
Flooding (2)

5-8
bottom

Dijkstra's
10/23/23 algorithm to compute the 5shortest
Tanenbaum Chapter Network path through a graph.
12
Distance Vector Routing

(a) A subnet. (b) Input from A, I, H, K, and the new


routing table for J. Tanenbaum Chapter 5 Network
10/23/23 13
Distance Vector Routing (2)

10/23/23 The count-to-infinity problem.


Tanenbaum Chapter 5 Network 14
Link State Routing
Each router must do the following:
1. Discover its neighbors, learn their network address.
2. Measure the delay or cost to each of its neighbors.
3. Construct a packet telling all it has just learned.
4. Send this packet to all other routers.
5. Compute the shortest path to every other router.

10/23/23 Tanenbaum Chapter 5 Network 15


Learning about the Neighbors

(a) Nine routers and a LAN. (b) A graph model of (a).


10/23/23 Tanenbaum Chapter 5 Network 16
Measuring Line Cost

A subnet in which the East and West parts are connected by two lines.
10/23/23 Tanenbaum Chapter 5 Network 17
Building Link State Packets

(a) A subnet. (b) The link state packets for this subnet.
10/23/23 Tanenbaum Chapter 5 Network 18
Distributing the Link State Packets

The packet buffer for router B in the previous slide (Fig. 5-13).
10/23/23 Tanenbaum Chapter 5 Network 19
Oscillation in Shortest Path Routing
Example 1. From “Data Network” by
Consider the 16-node network shown in Fig. Bertsekas/Gallager
5.25, where node 16 is the only desti­nation.
Let the traffic input (in data units/sec) at each
node i = 1, ... , 7, 9, ... ,15 be one unit and let
the traffic input of node 8 be  > 0, where  is
very small. Assume that the length of link (i, j)
is
dij = Fij
where Fij is the arrival rate at the link
counting input and relayed traffic. Suppose
that all nodes compute their shortest path to
the destination every T seconds using as link
lengths the arrival rates Fij during the
preceding T seconds, and route all their
traffic along that path for the next T seconds.
Assume that we start with nodes 1 through 7
routing clockwise and nodes 8 through 15
routing counterclock­wise. This is a rather
good routing, balancing the traffic input
between the two directions.
10/23/23 Tanenbaum Chapter 5 Network 20
Oscillation in Shortest Path Routing

Figure 5.26 Oscillations in a ring network for link lengths dij equal to the link
arrival rates Fij. Each node sends one unit of input traffic to the destination
except for the middle node 8, which sends  > 0, where  < is very small. The
numbers next to the links are the link rates in each of the two directions. As an
example of the shortest path calculations, at the first iteration the middle node
8 computes the length of the clockwise path as 28(= 0 + 1 + 2 + ... + 7), and
the length of the counterclockwise path as 28+8 (=  + 1+e+2+e+...+7+e), and
switches its traffic to the shortest (clockwise) path at the 2nd routing. The
corresponding numbers for node 9 are 28 and 28 + 7 , so node 9 also
switches its traffic to the clockwise path. All other nodes find that the path used
at the first routing is shortest, and therefore they do not switch their traffic to
the10/23/23
other path. Tanenbaum Chapter 5 Network 21
Oscillation in Shortest Path Routing

Figure 5.26 shows the link rates corresponding to the initial


and subsequent shortest path routings. Thus, after three
shortest path updates, the algorithm is locked into an
oscillatory pattern whereby all traffic swings from the
clockwise to the counterclockwise direction and back at
alternate updates. This is certainly the worst type of routing
performance that could occur.
10/23/23 Tanenbaum Chapter 5 Network 22
Hierarchical Routing

Hierarchical routing.
10/23/23 Tanenbaum Chapter 5 Network 23
Broadcast Routing

Reverse path forwarding. (a) A subnet. (b) a Sink tree. (c) The
tree built by reverse path forwarding.
10/23/23 Tanenbaum Chapter 5 Network 24
Multicast Routing

(a) A network. (b) A spanning tree for the leftmost router.


(c) A multicast tree forTanenbaum
10/23/23 group Chapter
1. (d)5 Network
A multicast tree for group25 2.
Routing for Mobile Hosts

A WAN to which LANs, MANs, and wireless cells are attached.


10/23/23 Tanenbaum Chapter 5 Network 26
Routing for Mobile Hosts (2)

Packet routing for mobile users.


10/23/23 Tanenbaum Chapter 5 Network 27
Routing in Ad Hoc Networks

Possibilities when the routers are mobile:


1. Military vehicles on battlefield.
– No infrastructure.

2. A fleet of ships at sea.


– All moving all the time
3. Emergency works at earthquake .
– The infrastructure destroyed.
4. A gathering of people with notebook computers.
– In an area lacking 802.11.
10/23/23 Tanenbaum Chapter 5 Network 28
Route Discovery

a) (a) Range of A's broadcast.


b) (b) After B and D have received A's broadcast.
c) (c) After C, F, and G have received A's broadcast.
d) (d) After E, H, and I have received A's broadcast.
Shaded nodes are new recipients.
10/23/23 Arrows
Tanenbaum Chapter show possible reverse routes.
5 Network 29
Route Discovery (2)

Format of a ROUTE REQUEST packet.

10/23/23 Tanenbaum Chapter 5 Network 30


Route Discovery (3)

Format of a ROUTE REPLY packet.

10/23/23 Tanenbaum Chapter 5 Network 31


Route Maintenance

(a) D's routing table before G goes down.


10/23/23 (b) The graph after G has
Tanenbaum gone
Chapter down.
5 Network 32
Node Lookup in Peer-to-Peer Networks

(a) A set of 32 node identifiers arranged in a circle. The shaded ones


correspond to actual machines. The arcs show the fingers from
nodes 1, 4, and 12. The labels on the arcs are the table indices.
(b) Examples
10/23/23
of the finger tables.
Tanenbaum Chapter 5 Network 33
Congestion Control Algorithms
• General Principles of Congestion Control
• Congestion Prevention Policies
• Congestion Control in Virtual-Circuit Subnets
• Congestion Control in Datagram Subnets
• Load Shedding
• Jitter Control

10/23/23 Tanenbaum Chapter 5 Network 34


Congestion

When too much traffic is offered, congestion sets in and


10/23/23 performance degrades
Tanenbaum Chapter 5 Network sharply. 35
General Principles of Congestion Control

1. Monitor the system .


– detect when and where congestion occurs.
2. Pass information to where action can be taken.
3. Adjust system operation to correct the problem.

10/23/23 Tanenbaum Chapter 5 Network 36


Congestion Prevention Policies

5-26

Policies that affect congestion.


10/23/23 Tanenbaum Chapter 5 Network 37
Congestion Control in Virtual-Circuit
Subnets

(a) A congested subnet. (b) A redrawn subnet, eliminates


congestion and a virtual circuit from A to B.
10/23/23 Tanenbaum Chapter 5 Network 38
Hop-by-Hop
Choke Packets

(a) A choke packet that affects


only the source.

(b) A choke packet that affects


each hop it passes through.
10/23/23 Tanenbaum Chapter 5 Network 39
Jitter Control

10/23/23
(a) High jitter. (b) Low jitter.
Tanenbaum Chapter 5 Network 40
Quality of Service

• Requirements
• Techniques for Achieving Good Quality of Service
• Integrated Services
• Differentiated Services
• Label Switching and MPLS

10/23/23 Tanenbaum Chapter 5 Network 41


Requirements

5-30

How stringent the quality-of-service requirements are.


10/23/23 Tanenbaum Chapter 5 Network 42
Buffering

Smoothing the output stream by buffering packets.


10/23/23 Tanenbaum Chapter 5 Network 43
The Leaky Bucket Algorithm

(a) A leaky bucket with water. (b) a leaky bucket with packets.
10/23/23 Tanenbaum Chapter 5 Network 44
The Leaky
Bucket
Algorithm
(a) Input to a leaky bucket.
(b) Output from a leaky
bucket. Output from a token
bucket with capacities of (c)
250 KB, (d) 500 KB, (e)
750 KB, (f) Output from a
500KB token bucket feeding
a 10-MB/sec leaky bucket.
10/23/23 Tanenbaum Chapter 5 Network 45
The Token Bucket Algorithm

5-34

10/23/23 (a) Tanenbaum


Before.Chapter(b) After.
5 Network 46
Admission Control

5-34

An example of flow specification.


10/23/23 Tanenbaum Chapter 5 Network 47
Packet Scheduling

(a) A router with five packets queued for line O.


(b) Finishing times for the five packets.
10/23/23 Tanenbaum Chapter 5 Network 48
RSVP-The ReSerVation Protocol

(a) A network, (b) The multicast spanning tree for host 1.


(c) The multicast spanning
10/23/23 tree
Tanenbaum for5 host
Chapter Network2. 49
RSVP-The ReSerVation Protocol (2)

(a) Host 3 requests a channel to host 1. (b) Host 3 then requests a


second
10/23/23 channel, to host Tanenbaum
2. (c) Host
Chapter 55Network
requests a channel to host50 1.
Expedited Forwarding

Expedited packets experience a traffic-free network.


10/23/23 Tanenbaum Chapter 5 Network 51
Assured Forwarding

A possible implementation of the data flow for assured forwarding.


10/23/23 Tanenbaum Chapter 5 Network 52
Label Switching and MPLS

Transmitting a TCP segment using IP, MPLS, and PPP.


10/23/23 Tanenbaum Chapter 5 Network 53
Internetworking
• How Networks Differ
• How Networks Can Be Connected
• Concatenated Virtual Circuits
• Connectionless Internetworking
• Tunneling
• Internetwork Routing
• Fragmentation

10/23/23 Tanenbaum Chapter 5 Network 54


Connecting Networks

A collection of interconnected networks.


10/23/23 Tanenbaum Chapter 5 Network 55
How Networks Differ

5-43

Some of the many ways networks can differ.


10/23/23 Tanenbaum Chapter 5 Network 56
How Networks Can Be Connected

(a) Two Ethernets connected by a switch.


10/23/23 (b) Two Ethernets connected
Tanenbaum by routers.
Chapter 5 Network 57
Concatenated Virtual Circuits

Internetworking using concatenated virtual circuits.


10/23/23 Tanenbaum Chapter 5 Network 58
Connectionless Internetworking

A connectionless internet.
10/23/23 Tanenbaum Chapter 5 Network 59
Tunneling

Tunneling a packet from Paris to London.


10/23/23 Tanenbaum Chapter 5 Network 60
Tunneling (2)

Tunneling a car from France to England.


10/23/23 Tanenbaum Chapter 5 Network 61
Internetwork Routing

(a) An internetwork. (b) A graph of the internetwork.


10/23/23 Tanenbaum Chapter 5 Network 62
Fragmentation

(a) Transparent fragmentation. (b) Nontransparent fragmentation.


10/23/23 Tanenbaum Chapter 5 Network 63
Fragmentation (2)

Fragmentation when the elementary data size is 1 byte.


(a) Original packet, containing 10 data bytes.
(b) Fragments after passing through a network with maximum
packet size of 8 payload bytes plus header.
(c) Fragments after passing
10/23/23 through
Tanenbaum a size 5 gateway.
Chapter 5 Network 64
The Network Layer in the Internet

• The IP Protocol
• IP Addresses
• Internet Control Protocols
• OSPF – The Interior Gateway Routing Protocol
• BGP – The Exterior Gateway Routing Protocol
• Internet Multicasting
• Mobile IP
• IPv6
10/23/23 Tanenbaum Chapter 5 Network 65
Design Principles for Internet
1. Make sure it works.
2. Keep it simple.
3. Make clear choices.
4. Exploit modularity.
5. Expect heterogeneity.
6. Avoid static options and parameters.
7. Look for a good design; it need not be perfect.
8. Be strict when sending and tolerant when receiving.
9. Think about scalability.
10. Consider performance
10/23/23
and cost.
Tanenbaum Chapter 5 Network 66
Collection of Subnetworks

The Internet is an interconnected


10/23/23
collection of many networks.
Tanenbaum Chapter 5 Network 67
The IP Protocol

The IPv4 (Internet Protocol) header.


10/23/23 Tanenbaum Chapter 5 Network 68
The IP Protocol (2)

5-54

Some of the IP options.


10/23/23 Tanenbaum Chapter 5 Network 69
IP Addresses

IP address formats.
10/23/23 Tanenbaum Chapter 5 Network 70
IP Addresses (2)

Special IP addresses.
10/23/23 Tanenbaum Chapter 5 Network 71
Subnets

A campus network consisting of LANs for various departments.


10/23/23 Tanenbaum Chapter 5 Network 72
Subnets (2)

A class B network subnetted into 64 subnets.

10/23/23 Tanenbaum Chapter 5 Network 73


CDR – Classless InterDomain Routing

5-59

A set of IP address assignments.


10/23/23 Tanenbaum Chapter 5 Network 74
NAT – Network Address Translation

Placement and operation of a NAT box.


10/23/23 Tanenbaum Chapter 5 Network 75
Internet Control Message Protocol

5-61

The principal ICMP message types.


10/23/23 Tanenbaum Chapter 5 Network 76
ARP– The Address Resolution Protocol

Three interconnected /24 networks: two Ethernets and an FDDI ring.


10/23/23 Tanenbaum Chapter 5 Network 77
Dynamic Host Configuration Protocol

Operation of DHCP.
10/23/23 Tanenbaum Chapter 5 Network 78
OSPF – The Interior Gateway Routing
Protocol

10/23/23 Tanenbaum Chapter 5 Network 79


(a) An autonomous system. (b) A graph representation of (a).
OSPF (2)

The relation between ASes, backbones, and areas in OSPF.


10/23/23 Tanenbaum Chapter 5 Network 80
OSPF (3)

5-66

The five types of OSPF messeges.


10/23/23 Tanenbaum Chapter 5 Network 81
BGP – The Exterior Gateway Routing
Protocol

(a) A set of BGP routers. (b) Information sent to F.


10/23/23 Tanenbaum Chapter 5 Network 82
The Main IPv6 Header

10/23/23
The IPv6 fixed header (required).
Tanenbaum Chapter 5 Network 83
Extension Headers

5-69

IPv6 extension headers.


10/23/23 Tanenbaum Chapter 5 Network 84
Extension Headers (2)

The hop-by-hop extension header for large datagrams (jumbograms).

10/23/23 Tanenbaum Chapter 5 Network 85


Extension Headers (3)

The extension header for routing.

10/23/23 Tanenbaum Chapter 5 Network 86

You might also like