+ All Categories
Home > Documents > Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan...

Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan...

Date post: 19-Dec-2015
Category:
View: 227 times
Download: 5 times
Share this document with a friend
Popular Tags:
35
Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal
Transcript
Page 1: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

Chapter 2: Protocols and Architecture

COE 341: Data & Computer Communications (Term 061)Dr. Radwan E. Abdel-Aal

Page 2: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

2

Agenda Need For Protocol Architecture Key Elements of a Protocol Simplified File Transfer Architecture

A Three-Layer Model Protocol Architectures and Networks Protocols in Simplified Architecture

Standard Protocol Architectures The OSI Protocol Architecture

The Model Standardization within the OSI Framework OSI Layers

The OSI versus the TCP/IP (the Internet) Protocol Architecture

Page 3: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

3

What is a Protocol and Why we Need it? What’s a protocol? A set of rules or conventions agreed upon and observed by

two communicating entities for successful exchange of data between them (think of Human conversation)

Example: File transfer Source must activate communications path and inform

network of the destination address Source must check if destination is prepared to receive data Source file transfer application must check if destination file

management system will accept and can store file May need file format translation

Why protocols? Equipment come from different vendors and run different

operating systems… Need a common standard language to communicate properly

Page 4: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

4

Need for Architecture (hierarchy) for that Protocol Benefits of problem decomposition

Large task split into smaller subtasks (Careful splitting: logical, tradeoffs, effect of

changes) The subtasks are implemented separately in

layers forming a stack Can be developed simultaneously by different

teams Hierarchical nature:

A layer provides/requests services to/from an adjacent layer

Higher layers handle higher-level tasks Tasks are implemented in both communicating

systems Peer layers in the two systems communicate

with each other

Examples from everyday life

High Level, e.g. Applications

Low Level, e.g. Signals, Bits

Page 5: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

5

Guidelines for layering Group functions logically: each layer performs

a set of related subtasks Each layer provides services to the higher layer

and requests services from the lower layer Ideally, changes in one layer should not require

changes to other layers, e.g. changing link from wire to optical fibre

Information hiding: Each layer sees only what it needs

Not too few layers: Not enough splitting of functionality

Not too many layers: Difficult to manage Large communication overhead between them

Page 6: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

6

Protocol Architecture: Layered Structure

Highest Level

Lowest Level

Physical Link

Services R

equ

ested

Ser

vice

s P

rovi

ded

Communication with peer layerson other entities

Using formatted data blocks that obey a

protocol

Most primitive functions

Communicating Entity High-level functions

Page 7: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

7

Key Aspects of a Protocol Syntax

Block formats Semantics

Actual control information for coordination and error handling

Timing Speed matching, Sequencing

Page 8: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

8

Example: Simplified Protocol Architecture

The task of file transfer is broken down into three modules (layers) that handle:

File transfer application Application layer (Top) Communication services Transport layer Network access Network access layer

Page 9: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

9

Simplified Architecture for File Transfer

Peer layer communications

using the Protocol

A Three-Layer Model

Page 10: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

10

Network Access Layer Exchange of data between the computer and the

network Depends on type of network used (LAN, packet

switched, etc.)(should be the only layer that worries about these details)

The sending computer should specify address of destination computer, and possibly level of service, e.g. priority, delay, etc.

Page 11: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

11

Transport Layer (communication services) Reliable exchange of data Independent of network used (significance) Independent of application

(serves all higher-level applications- sharing of resources)

Page 12: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

12

Application Layer

Supports different user applications running on the communicating entity:

e.g. e-mail, file transfer, etc.

Page 13: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

13

Protocol Architecture and Networks

3 computers communicating over a networkUsing a 3-layer protocol architecture

Applications Layer: contains modules, each supporting an application running on this computer

Each application accesses the services of

the transport layer through a SAP or a Port

(SAP)

Page 14: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

14

Addressing Requirements Two levels of addressing:

Each computer on the network needs a unique computer address

Each application on a (multi-tasking) computer needs a unique application address within that computer

We identify the application with the SAP it uses: “Service access point or SAP” in OSI, e.g. SAP 3 “Port” in TCP/IP, e.g. Port 5

Each of the two addressing levels is handled only by the appropriate layer (information hiding): Computer address handled by the Network Access layer Application address (SAP #) handled by the Transport layer

Page 15: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

15

Protocol Data Units (PDU) Peer layers communicate (through the lower layers of course!)

by exchanging PDU data blocks

At source: Each layer adds its relevant control information (header) to data received from a higher layer to form its PDU

At destination: that PDU is handled by the corresponding peer layer: The relevant control header is removed, used, and the remaining part of the PDU is pushed up to higher layers

Example:

Transport layer may fragment user data into smaller packets A transport header is appended to each packet, which would include:

Destination SAP Sequence number of the data fragment Possibly, error detection code

This makes one transport protocol data unit (PDU)

Page 16: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

16

Protocol Data Units (PDUs)User Data Application

Layer

Transport Layer

Network Access Layer

• Address of destination computer on the network• Network facilities required, e.g. priority

• Address of destination application on the destination computer• Packet sequence #• Error detection code?

Network

What to include in the header?

Page 17: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

17

Rules for generating PDUs at layers Layer L generates its PDU by

appending control part to data received from the next higher layer (L+1)

Appended control part takes the form of a header

That header will be used by the peer layer L on the destination entity

Both the PDU and the header are labeled (identified) by the layer generating and using them

PDU (L+1) + Header (L) PDU (L)

L+1

L

.

.

.

.

.

.

Lower Layers

Page 18: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

18

Operation of a Protocol Architecture

(Network Access PDU)

TFER (record, DSAP, Dhost)

TFER (transport_PDU, Dhost)

Network

(Transport PDU)

PD

U E

ncap

sulatio

n

PD

U D

ecap

sula

tio

n

Page 19: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

19

Framework for Standardization

Well-defined interfaces at layer boundaries

Standards/code for various layers can be developed independently and simultaneously(Advantage)

Changes and upgrades in a layerneed not affect other layers

Requests

Services

Page 20: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

20

Layer-Specific StandardsService Definitions:

- Only as a functional description- not how to be implemented (for flexibility)- For internal use only within this communicating entity (not a protocol)

Here we are dealing with

other (foreign) systems! Need a strict

protocol

3

2

1Addressingwithin the same system

SAP # 1 SAP # 2 …

Page 21: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

21

So, three standardization elements: Addressing within the same system

Referencing by SAPs: We name the entity in a layer requesting a service from a lower layer by the SAP used on that lower layer

Service definitions (vertically within a system) Only Functional description of what is required between layers

within the same system Protocol specification (Horizontally, more strict)

Operates between the same layer on the two communicating entities (peer layers)

May involve different operating systems So, protocol specifications must be defined precisely

Format of data units Semantics (meanings) of all fields

Page 22: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

22

Service Primitives and Parameters Services between vertically adjacent layers

within the same system are expressed in terms of primitives and parameters

Primitives specify the action to be performed Parameters pass data and control information

required to perform the action

Services are requested by a service user layer … and performed by a service provider layer

TFER (record, DSAP, Dhost)

Page 23: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

23

Primitive Types REQUEST A primitive issued by a service user to invoke some

service and to pass the parameters needed to specify fully the requested service

INDICATION A primitive issued by a service provider, either to:

indicate that a procedure has been invoked by the peer service user on the connection and to provide the associated parameters, or

Notify the service user of a provider-initiated action

RESPONSE A primitive issued by a service user to acknowledge or complete some procedure previously invoked by an indication to that user

CONFIRM A primitive issued by a service provider to acknowledge or complete some procedure previously invoked by a request by the service user

A: Service User

B: Service Provider

1

2

3

4

1 4

D: Service User

C: Service Provider

Time Sequence:

2 3

Source (X) Destination (Y)

A to B: “Deliver this packet to Y”

C to D: “Here is a packet for you!”

D to C: “Thanks!”

B to A: “Done it!”

Which pair of primitives is more important?

Page 24: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

24

Timing Sequence for Service PrimitivesSource System

Destination System

Source System

Destination System

No Responseor Confirm(Assumed Done!)Saves time…

Provider Provider Provider ProviderA B C D

Page 25: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

25

Standardized Protocol Architectures Required to allow devices from different manufacturers to

communicate (inter-operability) A win-win environment:

Helps vendors market their products better Customers can shop around for best deals from different

manufacturers as they are sure equipment will work together Main standards:

OSI Reference model (X.200, 1977) A theoretical system delivered too late! Never lived up to early

promises TCP/IP protocol suite (Developed for early forms of the internet)

Most widely used (The Internet protocol): A de facto Standard

Page 26: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

26

OSI - The Model Developed by the International Standardization

Organization (ISO) in 1977 A 7-layer model Each layer performs a subset of the required

communication functions Each layer relies on the next lower layer to perform

more primitive functions Each layer provides services to the next higher layer Changes in one layer should not require changes in

other layers

Page 27: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

27

The OSI Seven Layers

The Physical Medium

Internetworking(network of networks)(Internet)

End to End

Page 28: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

28

The OSI Environment

Note information hiding!e.g. DL layer does not look inside the N-DPU

TrailerMarking end of frame

Hardwareor software

Page 29: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

29

OSI Layers with examples (1) Physical Example: 10Base-T for Ethernet LAN

Physical interface between devices Mechanical: Connectors, etc. Electrical: Bit representation, V and I levels, Data rates,... Functional: Functions of individual interface circuits Procedural: Sequence of events for exchanging bit streams

Data Link (Chapter 7) Example: HDLC Activating, maintaining and deactivating a reliable data link

(link management): Synchronization, error detection and control, flow control, so

that higher layers may assume error free transmission over a direct link

Page 30: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

30

OSI Layers with examples (2) Network Example: X.25 (packet switching)

Data transportation over a network Higher layers do not need to know about underlying

technology (transmission, routing, etc) Only needs info on destination address and required facilities Not needed (bypassed) on direct (point-to-point) connections

Transport Example: TCP (Transmission Control) Exchange of data between end systems

(possibly across multiple networks!) Without errors Without loss Without duplication

Allows different levels of Quality of Service (QoS): Regarding acceptable error rates, maximum delay, priority, and security

Page 31: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

31

OSI Layers (3) Session Control of dialogues between applications running on end

systems Dialogue disciplines, e.g. full duplex or half duplex Grouping: Marking of data to indicate different groups Recovery: Use of data check points

Presentation Data formats and coding Data compression Data Encryption

Application Means for applications to access the OSI environment Support for e-mail, file transfer, terminal access to remote

computers (telnet)

Page 32: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

32

Do we always use/need all 7 layers? Only end points need to have all 7 layers

Point-to-Point on a single link:

Network layer is bypassed Intermediate nodes in network are not interested

in user data!- Will have only the minimum number of required lower layers: Within the same network: Intermediate node needs

only the bottom 3 layers Between multiple networks: Intermediate node

between two networks (router) needs only the bottom … layers

Page 33: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

33

Layers for a Relay node in a network

(Network node)

(Intermediate Network node is not interested in the data content- so, the lower 3 layers only)

Relay Node, Joins:-Different physical links-Different data links-In the same network

Router

What about a routerthat connectstwo networks?

A 3-Layer node

Page 34: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

34

TCP/IP Protocol Architecture

Developed by the US Defense Advanced Research Project Agency (DARPA) for its packet switched network ARPANET (mother of the Internet, 1966)

Used today by the Internet Did not start as a formal model.. but as a working one Five Layers:

Application layer Host to host (end to end) Transport layer Internet layer (multiple interconnected networks) Network access layer (similar to Data link) Physical layer

= Same layer exists also in OSI

Page 35: Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal.

35

OSI vs. TCP/IP


Recommended