Professional Documents
Culture Documents
• Protocol Layers
• Encapsulation
• Network Abstractions
2
Sending a packet from Argon to Neon
argon.tcpip-lab.edu neon.tcpip-lab.edu
"Argon" "Neon"
128.143.137.144 128.143.71.21
router137.tcpip-lab.edu router71.tcpip-lab.edu
"Router137" "Router71"
128.143.137.1 128.143.71.1
Router
3
Sending a packet from
128.143.71.21 Argon
is not to
on my local Neon
network.
Therefore, I need to send the packet to my
128.143.71.21
default gateway withisaddress
on my local network.
128.143.137.1
DNS:
DNS:
ARP:What
The is
WhatIPisthe
address
theIPMAC
address
of Therefore, I can send the packet directly.
of“neon.tcpip-lab.edu”
“neon.tcpip-lab.edu”?
address
ARP: TheofMAC is of
128.143.137.1?
address
128.143.71.21
128.143.137.1 is 00:e0:f9:23:a8:20
ARP: What is the MAC
ARP: TheofMAC
address address of
128.143.71.21?
argon.tcpip-lab.edu
"Argon"
128.143.137.1 is neon.tcpip-lab.edu
00:20:af:03:98:28
"Neon"
128.143.137.144 128.143.71.21
router137.tcpip-lab.edu router71.tcpip-lab.edu
"Router137" "Router71"
128.143.137.1 128.143.71.1
Router
frame frame
4
Communications Architecture
5
TCP/IP Protocol Suite
Operating system
• The TCP/IP suite has four layers: Network
Application, Transport, Network,
Data Link
and Data Link Layer
6
Functions of the Layers
• Application Layer:
– Service: Application specific (delivery of email, retrieval of
HTML documents, reliable transfer of files)
– Functions: Application specific
• Transport Layer:
– Service: Delivery of data between hosts
– Functions: Connection establishment/termination, error control,
flow control
• Network Layer:
– Service: Move packets from source host to destination host
– Functions: Routing, addressing
7
TCP/IP Suite and OSI Reference Model
Application
Layer
Application Presentation
The TCP/IP protocol stack does not define the Layer Layer
lower layers of a complete protocol stack Session
Layer
Transport Transport
Layer Layer
Network Network
Layer Layer
(Data) Link (Data) Link
Layer Layer
Physical
Layer
OSI
TCP/IP Suite Reference
Model
8
Assignment of Protocols to Layers
ping Application
application
HTTP Telnet FTP DNS SNMP
Layer
Routing Protocols
ICMP RIP
Network
IGMP IP PIM
Layer
OSPF
DHCP
Network
9
Interface
Layered Communications
• An entity of a particular layer can only
communicate with:
1. a peer layer entity using a common protocol
(Peer Protocol)
N+1 Layer N+1 Layer Protocol N+1 Layer
N+12.Layer Entity adjacent layers
Entity
layerto provide services and to receive
N+1/N
interface
services
N Layer
N Layer N Layer Protocol N Layer
Entity Entity
layer N/N-1
interface
N-1 Layer N-1 Layer Protocol N-1 Layer
N-1 Layer
Entity Entity
10
Layers in the Example
HTTP HTTP protocol HTTP
IP IP protocol IP IP protocol IP
• Other services:
– DNS: translation between domain names and IP addresses
– ARP: Translation between IP addresses and MAC addresses
18
Encapsulation and Demultiplexing
• As data is moving down the protocol stack,
each protocol is adding layer-specific control User data
information
HTTP
HTTP Header User data
TCP
TCP Header HTTP Header User data
IP TCP segment
Ethernet IP datagram
Ethernet Ethernet
IP Header TCP Header HTTP Header User data
Header Trailer
Ethernet frame
19
Encapsulation and Demultiplexing
in our Example
• Let us look in detail at the Ethernet frame
between Argon and the Router, which contains
the TCP connection request to Neon.
6 bytes
destination address
4 bytes
source address
type CRC
Ethernet frame
21
Encapsulation and Demultiplexing:
Ethernet Header
6 bytes
00:e0:f9:23:a8:20
4 bytes
0:a0:24:71:e4:44
0x0800 CRC
Ethernet frame
22
Encapsulation and Demultiplexing:
IP Header
32 bits
version header Total Length (in bytes)
DS ECN
(4 bits) length (16 bits)
flags
Identification (16 bits) Fragment Offset (13 bits)
(3 bits)
TTL Time-to-Live Protocol
Header Checksum (16 bits)
(8 bits) (8 bits)
Ethernet frame
23
Encapsulation and Demultiplexing:
IP Header
32 bits
0x4 0x5 0x0 0x0 4410
128.143.137.144
128.143.71.21
Ethernet frame
24
Encapsulation and Demultiplexing:
TCP Header
32 bits
Ethernet frame
25
Encapsulation and Demultiplexing:
TCP Header
32 bits
162710 8010
60783510
010
610 0000002 0000102 819210
0x598e 00002
Ethernet frame
26
Encapsulation and Demultiplexing:
Application data
Ethernet frame
27
Different Views of Networking
• Different Layers of the protocol stack have a different
view of the network. This is HTTP’s and TCP’s view of
the network.
Argon Neon
128.143.137.144 128.143.71.21
HTTP HTTP
HTTP client
server server
IP Network
28
Network View of IP Protocol
29
Network View of Ethernet
• Ethernet’s view of the network
30