Network Layer

Peter Wood

The Internet Concept (1)

The internet concept

The Internet Concept (2)

The internet concept

Routers

An internet

Hosts and Routers

The network layer

Forwarding and Routing

Data and Control Planes

IP Addresses and Dotted-Decimal Notation

Example addresses

IP Addressing

Interface addresses

Subnets

Subnets

Subnet Addressing

Classful Addressing

Obtaining a Block of Addresses

Special IP Addresses

Special IP addresses

IP Loopback Address

Obtaining a Host Address

Dynamic Host Configuration Protocol

DHCP client-server scenario

DHCP Client-Server Interaction

For a newly arriving host, DHCP is a four-step process:

DHCP client-server interaction

Network Address Translation

NAT Example

Network address translation

Criticisms of NAT

IP Datagrams

Forwarding IP Datagrams

Forwarding Table (1)

Destination Address RangeNext Hop Interface
200.23.16.0/210
200.23.28.0/241
200.23.24.0/212
Default3

Forwarding Table (2)

Destination Address RangeNext Hop Interface
200.23.16.0/2111001000 00010111 00010000 000000000
200.23.28.0/2411001000 00010111 00011100 000000001
200.23.24.0/2111001000 00010111 00011000 000000002
Default3

Software-Defined Networking (SDN)

IP Best-Effort Delivery

IP Datagram Format (1)

IP datagram header

IP Datagram Format (2)

IP datagram header

Encapsulation

Transmission across an Internet

Traversing different networks

Example of IP Header

Packet capture showing IP header

Maximum Transmission Unit (MTU)

Datagram Fragmentation (1)

Fragmentation

Datagram Fragmentation (2)

Datagram Reassembly

Fragment Loss

Internet Control Message Protocol (ICMP)

Some ICMP Message Types

TypeCodeDescription
00echo reply (to ping)
30destination network unreachable
31destination host unreachable
32destination protocol unreachable
33destination port unreachable
36destination network unknown
37destination host unknown
40source quench (congestion control)
80echo request
90router advertisement
100router discovery
110TTL expired
120bad IP header

Some ICMP Message Descriptions

Routing Algorithms

Autonomous Sytems

Internet Routing Protocols

Abstract Graph Model

Open Shortest Path First

OSPF Algorithm

  Initialisation:
 1.  N' = {u}
 2.  for all nodes v
 3.    if v is a neighbour of u
 4.       then D(v) = c(u,v)
 5.       else D(v) = infinity

 6.  Loop
 7.    find w not in N' such that D(w) is a minimum
 8.    add w to N'
 9.    update D(v) for each neighbour v of w not in N':
10.      D(v) = min( D(v), D(w) + c(w,v) )
11.  until N' = N

Example of OSPF Algorithm

Links to more information

See Chapters 4 and 5 of [Kurose and Ross], Chapters 20, 21, 22 and parts of 23 of [Comer] and parts of Chapter 5 of [Tanenbaum].