Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Chapter 2: Protocols and Architecture COE 341: Data & Computer Communications (Term 061) Dr. Radwan E. Abdel-Aal."— Presentation transcript:

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

2 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 Standardized Protocol Architectures  The OSI Protocol Architecture The Model Standardization within the OSI Framework OSI Layers  The OSI versus the TCP/IP Protocol Architecture

3 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 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

4 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 Hierarchical nature:  A layers 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

5 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 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

6 6 Protocol Architecture: Layered Structure Highest Level Lowest Level Physical Link Service Requests Services Provided Communication with peer layers on other entities Formatted data blocks that obey protocol Most primitive functions Communicating Entity High-level functions

7 7 Key Elements of a Protocol Syntax  Block formats Semantics  Actual control information for coordination and error handling Timing  Speed matching, Sequencing

8 8 Example: Simplified Protocol Architecture The task of file transfer is broken into three modules (layers) that handle:  File transfer application  Application layer (Top)  Communication services  Transport layer  Network access  Network access layer

9 9 Simplified Architecture for File Transfer Peer layer communications using the Protocol A Three-Layer Model

10 10 Network Access Layer Exchange of data between the computer and the network Depends on type of network used (LAN, packet switched etc.) The sending computer specifies address of destination computer, and possibly level of service, e.g. priority, delay, etc.

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

12 12 Application Layer Support for different user applications running on the communicating entity: e.g. e-mail, file transfer

13 13 Protocol Architecture and Networks 3 computers communicating over a network Using a 3-layer protocol architecture Applications Layer: contains modules, each supporting an application running on this computer Each application access the services of the transport layer through a SAP (SAP)

14 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 level is handled by the appropriate layer (information hiding):  Computer address handled by the Network Access layer  Application address (SAP #) handled by the Transport layer

15 15 Protocol Data Units (PDU) Peer layers communicate (through 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 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)

16 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

17 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............ Higher Layers

18 18 Operation of a Protocol Architecture (Network Access PDU) TFER (record, DSAP, Dhost) TFER (transport_PDU, Dhost) Network (Transport PDU) PDU Encapsulation PDU Decapsulation

19 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 layer need not affect other layers Requests Services

20 20 Layer-Specific Standards Service 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 protocol 1 2 3 Addressing within the same system SAP # 1 SAP # 2…

21 21 So, three standardization elements: Protocol specification (Horizontally)  Operates between the same layer on the two communicating entities (peer layers)  May involve different operating systems  So, protocol specifications must be precise Format of data units Semantics (meanings) of all fields Service definitions (within a system, less strict)  Only Functional description of what is required between layers within the same system (vertically) 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.

22 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 Services are requested by a service user layer … and performed by a service provider layer TFER (record, DSAP, Dhost)

23 23 Primitive Types REQUESTA primitive issued by a service user to invoke some service and to pass the parameters needed to specify fully the requested service INDICATIONA 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 RESPONSEA primitive issued by a service user to acknowledge or complete some procedure previously invoked by an indication to that user CONFIRMA 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 14 D: Service User C: Service Provider Time Sequence: 23 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 is more important?

24 24 Timing Sequence for Service Primitives Source System Destination System Source System Destination System No Response or Confirm (Assumed Done!) Saves time… Provider

25 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 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

26 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

27 27 The OSI Seven Layers The Physical Medium Internetworking (network of networks) (Internet) End to End

28 28 The OSI Environment Note information hiding! e.g. DL layer does not look inside the N-DPU Trailer Marking end of frame

29 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)  Error detection and control, so that higher layers may assume error free transmission over a direct link

30 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

31 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)

32 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

33 33 Layers for a Relay node in a network (Network node) (Intermediate Network node is not interested in the data content- so, lower 3 layers only) Relay Node, Joins: -Different physical links -Different data links -In the same network Router What about a router that connects two networks? A 3-Layer node

34 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

35 35 OSI vs. TCP/IP


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

Similar presentations


Ads by Google