Protocol Architecture: Layered Protocol Architectures OSI Reference Model TCP/IP Protocol Stack
Protocol Architecture: Layered Protocol Architectures OSI Reference Model TCP/IP Protocol Stack
CS457
CS457
CS457
Milan
Mobile
Geneva
Shipping Clerk: Determines route of the shipment Mailroom Worker Attaches label Loads mailbag CS457
New Orleans
Shipping Clerk: Determines route of the shipment Mailroom Worker Attaches label Loads mailbag
Shipping Manager: Call Italy to confirm arrival of letter Shipping Clerk: Determines route of the shipment Mailroom Worker Attaches label Loads mailbag
Network Architecture
Protocol: A set of rules and conventions used for communication of entities in different systems System: Object that contains several entities
(e.g., the company).
Entity:
A Network Architecture is a structured set of protocols that implement the exchange of information between computers
CS457
A C E
Jrg Liebeherr, 1998,1999
A C
layer 3 layer 2
E
CS457
layer 1
Layered Communications
Each entity of a system is assigned to a layer An entity of a particular layer can only communicate with: 1. adjacent layer entities via Service Interfaces above - to provide service below - to receive services 2. peer layer entity using a common protocol (Peer Protocol)
CS457
Layered Communications
A communication layer is completely defined by (a) The peer protocol between peer entities at the same layer (b) The service interface used to offer/provide services between adjacent layers Note: When talking about two adjacent layers, (a) the higher layer is a service user, and (b) the lower layer is a service provider
CS457
Layered Communications
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
Note: Layer interfaces define physical data flow. Peer protocols describe exchange of logical messages between peer layer entities
Jrg Liebeherr, 1998,1999
CS457
N Layer
layer N/N-1 service interface
N-1 Layer
Jrg Liebeherr, 1998,1999
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 A SAPs at s 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. Liebeherr, 1998,1999 at layer N-1 = Header + PDU at layer N Jrg Note: PDU CS457
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
Jrg Liebeherr, 1998,1999
CS457
Service Primitives
Communication between adjacent layers is done via function calls. The functions are called service primitives Almost all communication is done with only four types of service primitives: nREQUEST: entity wants service provider to do work nINDICATION: service provider informs entity about an event nRESPONSE: entity wants to respond to an event nCONFIRM: response to an earlier request has come back
CS457
Service Primitives
Assume the name of a service is called X.
X. Request
X. Confirm
X. Indication
X. Response
N Layer Entity
N Layer Entity
CS457
Service Primitives
Recall: A layer N+1 entity sees the lower layers only as a service provider
X. Request
X. Confirm
X. Indication
X. Response
Service Provider
Jrg Liebeherr, 1998,1999
CS457
Alice
Bob s mailbox
Alice s mailbox
Postman
Jrg Liebeherr, 1998,1999
CS457
Letter is dropped off by Bob (L.Request); Letter is delivered to Alice mailbox s (L.Indicate)
CS457
(Un-)Acknowledged Service
The example showed only two service primitives: L.Request , L.Indicate
A service which uses these two primitives is called unconfirmed service
US Mail
L.Request L.Indicate
If Bob asks for a certificate of deliverywe would need: L.Request, L.Indicate, L.Response, L.Confirm
The resulting service is called acknowledged service L.Request L.Indicate
US Mail
L.Confirm
Jrg Liebeherr, 1998,1999
L.Indicate
CS457
Protocol Architectures
There are only few protocol architectures that are relevant today: OSI Reference Model
Defined as a big effort in the 1970 by ISO to specify a s comprehensive set of protocols for networking. The effort failed, in that the defined protocols are not widely used. However, the concepts and terminology defined in the OSI model are the lingua franca of many networkers
CS457
CS457
10
OSI Layers
HOST
Application
HOST
Application
Application Layer Presentation Layer Session Layer Transport Layer Network Layer Data Link Layer Physical Layer
NODE
Network Layer Data Link Layer Physical Layer
NODE
Network Layer Data Link Layer Physical Layer
CS457
Application
Data
Application
Application Layer Presentation Layer Session Layer Transport Layer Network Layer Data Link Layer Physical Layer
AH AH AH AH AH AH
Application Layer Presentation Layer Session Layer Transport Layer Network Layer Data Link Layer Physical Layer
CS457
11
Application
Presentation
Station (Host)
CS457
Transmission of a raw bit stream over a communication channel Conversion of bits into electrical or optical signals X.21, RS-232-C
Reliable transfer of frames over a link synchronization, error Control, flow control HDLC, CCITT LAP-D
CS457
12
Moves packets inside the network. Routing, Addressing, Switching, Congestion Control. IP, X.25, CLNP.
Controls delivery of data between hosts. Connection establishment/management/termination, Error Control, Flow Control, Multiplexing. TCP, UDP, ISO TP0 - TP4.
CS457
CS457
13
TCP, UDP
Device Drivers
CS457
Host A
Router
Host B
FTP program
FTP protocol
FTP program
TCP
TCP protocol
TCP
IP
IP protocol
IP
IP protocol
IP
Ethernet Driver
Ethernet protocol
Ethernet Driver
Ethernet Driver
Ethernet protocol
Ethernet Driver
CS457
14
User data
TCP
TCP Header
Application data
TCP segment
IP
IP Header TCP Header
Application data
Ethernet Driver
Ethernet Header IP Header
IP datagram
TCP Header
Application data
Ethernet Trailer
Ethernet frame
Jrg Liebeherr, 1998,1999
CS457
TCP
UDP
Transport Layer
ICMP
IP
IGMP
Network Layer
ARP
Hardware Interface
RARP
Link Layer
Media
Jrg Liebeherr, 1998,1999
CS457
15
OSI
Application Presentation Session Transport Network Data Link Physical
TCP/IP
Application
Transport Internetwork
Network Access
Physical
CS457
Control Plane
User Plane
Upper Layer
CS457
16
Layers of ATM
ATM Switch
Host A
Host B
Upper Layers
Upper Layers
AAL
AAL Protocol
AAL
ATM Layer
ATM Layer
ATM Layer
Physical Layer
Physical Layer
Physical Layer
Physical Layer
CS457
ATM Layer
The ATM Layer is responsible for the transport of 53 cells across an ATM network The ATM Layer can provide a variety of services for cells from an ATM virtual connection:
Constant Bit Rate (CBR)
guarantees a fixed capacity, similar to circuit switching guarantees a maximum delay for cells
CS457
17
Cells
Jrg Liebeherr, 1998,1999
Cells
ATM Network
CS457
Class B
Class C
Class D
Required Constant
Connection-oriented
AAL 1
AAL 2
CS457
18
CBR
rt-VBR
nrt-VBR
ABR
UBR
AAL 1
AAL 2
AAL 3/4
AAL 5
CS457
19