0% found this document useful (0 votes)
20 views

Module02 Review

The document reviews important networking concepts like protocol architecture, layers, encapsulation, and demultiplexing. It uses an example of sending a packet from host Argon to host Neon to illustrate these concepts. The TCP/IP protocol stack is described along with the functions of each layer. Encapsulation is demonstrated where each layer adds its own header to the packet.

Uploaded by

yugandhar02
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views

Module02 Review

The document reviews important networking concepts like protocol architecture, layers, encapsulation, and demultiplexing. It uses an example of sending a packet from host Argon to host Neon to illustrate these concepts. The TCP/IP protocol stack is described along with the functions of each layer. Encapsulation is demonstrated where each layer adds its own header to the packet.

Uploaded by

yugandhar02
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

Review of Important Networking Concepts

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

Sending a packet from Argon to Neon

Sending a packet from Argon to Neon

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

TCP/IP 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

Network Data Link

Operating system

Data Link Media Access Control (MAC)

Sublayer in Local Area Networks

Functions of the Layers


Data Link Layer: Service: Reliable transfer of frames over a link Media Access Control on a LAN Functions: Framing, media access control, error checking Network Layer: Service: Move packets from source host to destination host Functions: Routing, addressing Transport Layer: Service: Delivery of data between hosts Functions: Connection establishment/termination, error control, flow control Application Layer: Service: Application specific (delivery of email, retrieval of HTML documents, reliable transfer of file) Functions: Application specific

TCP/IP Suite and OSI Reference Model


Application Layer

The TCP/IP protocol stack does not define the lower layers of a complete protocol stack

Application Layer

Presentation

Layer Session Layer

Transport Layer Network Layer (Data) Link Layer

Transport Layer Network Layer (Data) Link Layer Physical Layer

TCP/IP Suite

OSI Reference Model


8

Assignment of Protocols to Layers


ping application

HTTP

Telnet

FTP

DNS

SNMP

Application Layer

TCP

UDP

Transport Layer

Routing Protocols

ICMP

RIP Network Layer

IGMP

IP

PIM

DHCP

OSPF

ARP

Ethernet

Data Link Layer

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

N+1 Layer Entity

N+1 Layer Entity

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

N+1 Layer Entity

N+1 Layer Entity

Request Delivery

Indicate Delivery

Service Provider

12

Service Access Points


A service user accesses services of the service provider at Service Access Points (SAPs) A SAP has an address that uniquely identifies where the service can be accessed

N Layer
layer N/N-1 service interface

Layer-N Entity Layer N-1 SAP Layer- N-1 Entity


13

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

Layer- N-1 Entity


Header control
(of layer N-1)

Layer- N-1 Entity N PDU

N PDU

PDU of Layer-N-1
15

Layers in the Example

16

Layers in the Example

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

Layers and Services


Service provided by TCP to HTTP: reliable transmission of data over a logical connection Service provided by IP to TCP: unreliable transmission of IP datagrams across an IP network Service provided by Ethernet to IP: transmission of a frame across an Ethernet segment 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 information
User data

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

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. This is the frame in hexadecimal notation. 00e0 9d08 0050 0204 f923 a820 00a0 2471 e444 0800 4500 002c 4000 8006 8bff 808f 8990 808f 4715 065b 0009 465b 0000 0000 6002 2000 598e 0000 05b4

20

10

Encapsulation and Demultiplexing

6 bytes destination address source address type


4 bytes

CRC

Ethernet Header

IP Header

TCP Header

Application data

Ethernet Trailer

Ethernet frame
21

Encapsulation and Demultiplexing: Ethernet Header

6 bytes 00:e0:f9:23:a8:20 0:a0:24:71:e4:44 0x0800


4 bytes

CRC

Ethernet Header

IP Header

TCP Header

Application data

Ethernet Trailer

Ethernet frame
22

11

Encapsulation and Demultiplexing: IP Header


32 bits
version (4 bits) header length DS ECN flags (3 bits) Total Length (in bytes) (16 bits) Fragment Offset (13 bits) Header Checksum (16 bits)

Identification (16 bits) TTL Time-to-Live (8 bits) Protocol (8 bits)

Source IP address (32 bits) Destination IP address (32 bits)

Ethernet Header

IP Header

TCP Header

Application data

Ethernet Trailer

Ethernet frame
23

Encapsulation and Demultiplexing: IP Header


32 bits
0x4 0x5 9d08 12810 0x06 128.143.137.144 128.143.71.21 0x0 0x0 0102 44 10 0000000000000 2 8bff

Ethernet Header

IP Header

TCP Header

Application data

Ethernet Trailer

Ethernet frame
24

12

Encapsulation and Demultiplexing: TCP Header


32 bits
Source Port Number Destination Port Number

Sequence number (32 bits) Acknowledgement number (32 bits)


header length 0

Flags

window size urgent pointer Max. segment size

TCP checksum
option type

length

Option: maximum segment size


Ethernet Trailer

Ethernet Header

IP Header

TCP Header Ethernet frame

Application data

25

Encapsulation and Demultiplexing: TCP Header


32 bits
16271 0 80 10

60783510 010
6 10 000000 2 000010 2

819210 00002

0x598e 210 410

146010

Ethernet Header

IP Header

TCP Header

Application data

Ethernet Trailer

Ethernet frame
26

13

Encapsulation and Demultiplexing: Application data

No Application Data in this frame

Ethernet Header

IP Header

TCP Header Ethernet frame

Application data

Ethernet Trailer

27

Different Views of Networking


Different Layers of the protocol stack have a different view of the network. This is HTTPs and TCPs view of the network.
Argon 128.143.137.144 HTTP client HTTP server Neon 128.143.71.21 HTTP server

TCP client

TCP server

TCP server

IP Network

28

14

Network View of IP Protocol

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

Network View of Ethernet


Ethernets view of the network
Argon (128.143.137.144) Router137 (128.143.137.1)

Ethernet Network

30

15

You might also like