Module02 Review
Module02 Review
Introductory material. This module uses the example from the previous module to review important networking concepts: protocol architecture, protocol layers, encapsulation, demultiplexing, network abstractions.
Networking Concepts
Protocol Architecture Protocol Layers Encapsulation Network Abstractions
128.143.71.21 is not on my local network. Therefore, I need to send the packet to my 128.143.71.21 is on my local network. default gateway with address 128.143.137.1 DNS: DNS: What The IP isis the address IP address of Therefore, I can send the packet directly. ARP: What the MAC
ofneon.tcpip-lab.edu neon.tcpip-lab.edu is ? of address ofMAC 128.143.137.1? ARP: The address 128.143.71.21 is 00:e0:f9:23:a8:20 128.143.137.1 ARP: What is the MAC ARP: The address of address ofMAC 128.143.71.21? 128.143.137.1 is 00:20:af:03:98:28
frame
frame
Communications Architecture
The complexity of the communication task is reduced by using multiple protocol layers: Each protocol is implemented independently Each protocol is responsible for a specific subtask Protocols are grouped in a hierarchy A structured set of protocols is called a communications architecture or protocol suite
The TCP/IP protocol suite is the protocol architecture of the Internet The TCP/IP suite has four layers: Application, Transport, Network, and Data Link Layer End systems (hosts) implement all four layers. Gateways (Routers) only have the bottom two layers.
Application Transport
User-level programs
Operating system
The TCP/IP protocol stack does not define the lower layers of a complete protocol stack
Application Layer
Presentation
TCP/IP Suite
HTTP
Telnet
FTP
DNS
SNMP
Application Layer
TCP
UDP
Transport Layer
Routing Protocols
ICMP
IGMP
IP
PIM
DHCP
OSPF
ARP
Ethernet
Network Interface
Layered Communications
An entity of a particular layer can only communicate with: 1. a peer layer entity using a common protocol (Peer Protocol) 2. adjacent layers to provide services and to receive services
N+1 Layer layer N+1/N interface N Layer layer N/N-1 interface N-1 Layer N-1 Layer Entity N-1 Layer Protocol N-1 Layer Entity N Layer Entity N Layer Protocol N Layer Entity N+1 Layer Entity N+1 Layer Protocol N+1 Layer Entity
10
Service Primitives
Communication services are invoked via function calls. The functions are called service primitives
N+1 Layer Peer Protocol
Request Delivery
Indicate Delivery
N Layer Entity
N Layer Entity
11
Service Primitives
Recall: A layer N+1 entity sees the lower layers only as a service provider
N+1 Layer Peer Protocol
Request Delivery
Indicate Delivery
Service Provider
12
N Layer
layer N/N-1 service interface
N-1 Layer
Exchange of Data
Assume a layer-N entity at A wants to send data to a layer-N peer entity to B
The unit of data send between peer entities is called a Protocol Data Unit (PDU) For now, let us think of a PDU as a single packet
N Layer Entity
PDU
(at layer N)
N Layer Entity
What actually happens: Layer N passes the PDU to one of As SAPs at layer N-1 The layer N-1 entity (at A) then constructs its own PDU which it sends to the layer N-1 entity at B Note: PDU at layer N-1 = Header + PDU at layer N
14
Exchange of Data
A
Layer-N Entity
control When passed to the SAP, the PDU is called a Service Data Unit (SDU) (Layer-N PDU = Layer- N-1 SDU) SAPs
B
Layer-N Entity
N PDU
N PDU
PDU of Layer-N-1
15
16
Send HTTP Request to neon Establish a connection to 128.143.71.21 at port 80Open TCP connection to 128.143.71.21 port 80 IP datagram is a TCP segment for port 80 Send IP data-gram to Send a datagram (which contains a connection Send IP datagram to 128.143.71.21 request) to 128.143.71.21 128.143.71.21 Frame is an IP datagram Send the datagram to 128.143.137.1 Send the datagram
Frame is an IP datagram
to 128.143.7.21
Send Ethernet frame to 00:e0:f9:23:a8:20 Send Ethernet frame to 00:20:af:03:98:28
17
18
HTTP
HTTP Header User data
TCP
TCP Header HTTP Header User data
IP
IP Header TCP Header
TCP segment
HTTP Header User data
Ethernet
Ethernet Header IP Header
IP datagram
TCP Header HTTP Header User data Ethernet Trailer
Ethernet frame
19
20
10
CRC
Ethernet Header
IP Header
TCP Header
Application data
Ethernet Trailer
Ethernet frame
21
CRC
Ethernet Header
IP Header
TCP Header
Application data
Ethernet Trailer
Ethernet frame
22
11
Ethernet Header
IP Header
TCP Header
Application data
Ethernet Trailer
Ethernet frame
23
Ethernet Header
IP Header
TCP Header
Application data
Ethernet Trailer
Ethernet frame
24
12
Flags
TCP checksum
option type
length
Ethernet Header
IP Header
Application data
25
60783510 010
6 10 000000 2 000010 2
819210 00002
146010
Ethernet Header
IP Header
TCP Header
Application data
Ethernet Trailer
Ethernet frame
26
13
Ethernet Header
IP Header
Application data
Ethernet Trailer
27
TCP client
TCP server
TCP server
IP Network
28
14
128.143.137.144
128.143.71.21
128.143.137.1
128.143.71.1
Router
128.143.137.0/24 Network
128.143.71.0/24 Network
29
Ethernet Network
30
15