Protocol Concept
Protocol Concept
Fall 1999
62
Protocol Concepts A protocol is the agreement between two communicating entities. An entity may be a computer system process, a hardware module, or an application program, etc. Take some analogies, the protocol between two persons in conversation is the language they used; while the protocol between two deaf persons is the gesture, and so forth.
A computer communication protocol consists of three key elements : Syntax: data format, data fields specification, signal level, etc Semantics: the meaning that the data carrying, such as control information and error handling Timing: data packet sequencing and sender/receiver speed matching
Protocol Concepts
Functions of Communications Protocols Segmentation and reassembly Encapsulation Connection control Ordered delivery Flow control Error control Synchronization Addressing Multiplexing Transmission services
Segmentation and reassembly Advantages for segmentation - A communication network only accept messages with limited size. - Error control is more efficient with smaller PDU. - Shorter delay, fair share of transmission facilities - Only need smaller buffers - Ease the checkpoint and recovery during data transfer Disadvantages - The smaller the PDU, the larger the overhead - Smaller PDU needs more interrupt for service - More processing time needed (for processing PDUs)
Fall 1999 Protocol Concepts and Layered Architecture 64
Protocol Functions
Encapsulation Encapsulation is to add the control information into data. The control information include: - Address - Error-detecting code - Protocol control Connection Control Connection-Oriented data transfer. It includes 3 phases - Connection establishment - Data transfer - Connection termination Usually, it uses sequence number to support ordered delivery, flow control, and error control Connectionless data transfer Ordered Delivery In the receiving side, the sequence of the PDU must be maintained. The maximum number may need to be twice the maximum number of PDUs that could be outstanding.
Fall 1999 Protocol Concepts and Layered Architecture 65
Protocol Functions
Addressing
Station A
Station B
AP X
Logical connection Network Services
AP Y
Fall 1999
66
Protocol Functions
Naming approach The name of a network entities can be distinguished by - Local name - Global name Since there are different vendors and different systems, there is no unique solution for naming and addressing of entities. However, some common topics for naming can be considered: - Name structure, the global names can be * Hierarchical NETWORK . SYSTEM . ENTITY (Global name) (Local name)
Easier to add new names, also easier for routing * Flat A set of global names were mapped to the entities in a local group
Fall 1999 Protocol Concepts and Layered Architecture 67
Protocol Functions
Multiplexing - Upward multiplexing
Higher-level Lower-level
This type of multiplexing makes more efficient use of the lower-level service - Downward multiplexing, also called splitting Higher-level Lower-level This technique is used to provide reliability, performance, or efficiency Transmission Services Additional services provided by a protocol - Priority - Grade of service - Security
Fall 1999 Protocol Concepts and Layered Architecture 69
Fall 1999
70
The OSI Model OSI Layer Concepts Principles in defining the OSI layers 1. Do not create too many layers 2. Create boundary so that services description and layer interactions are minimized 3. Separate layers handle manifestly different process 4. Collect similar functions into the same layer 5. Using past successful experience for define boundaries 6. Create a layer of easily localized functions so that layer could be totally redesigned without changing the services in the adjacent layers 7. Create a boundary where it may be useful at some point in time to have the corresponding interface standardized 8. Create a layer where there is a need for a different level of abstraction in the handling of data 9. Allow changes of functions or protocols to be made within .a layer without affecting other layers 10. Create for each layer boundaries with its upper and lower layer only
Fall 1999 Protocol Concepts and Layered Architecture 71
Purpose - To provide a common basis for the coordination of standards development for the purpose of systems interconnection, while allowing existing standards to be placed into perspective within the overall Reference Model - To identify areas for developing or improving standards, and to provide a common reference for maintaining consistency of all related standards - It only provides a conceptual and functional framework which allows international teams of experts to work productively and independently on the development of standards for each layer of the Reference Model of OSI * In OSI model, if application X tries to send a message to application Y, it invokes application layers (layer 7). Layer 7 establishes a peer relationship with layer 7 of the target machine, using layer 7 protocol. Layer 7 protocol requires services from layer 6, therefore two layer 6 entities use a protocol of their own, and so on down to the physical layer, which actually transmit the bit streams. * There is no direct communication between peer layers except at the physical layer. * The OSI model solves the heterogeneous computer communications problem.
Fall 1999 Protocol Concepts and Layered Architecture 72
Protocol and services (N+1) layer (N+1) (N) service entity access point (N) layer
(N) entity
Protocol
(N-1) layer
(N-1) entity (N-1) Connection (N-1) service access point (SAP)
Fall 1999
73
Service Primitives and Parameters Service user (layer N) X.request t1 Service provider (layer N-1) Service user (layer N) t2 X.indication t3 X.response X. confirm t4 Service user (layer N) X.request t1 Service provider (layer N-1) Service user (layer N) t2 X.indication
Fall 1999
74
Application User oriented Presentation Session End-to-end connection oriented Transport Network Point-to-point link oriented Data Link Physical Network service Users of transport service
Fall 1999
75
TCP/IP Protocol Suite Difference between TCP/IP and OSI - Concept of hierarchy versus layering - The importance of networking - The utility of connectionless services - The approach to management functions
Protocol Architecture - Network access layer, provides access to a communication network, data routing, flow control, error control - Internet layer, consists of the procedures required to allow data to traverse multiple networks between hosts. It provides routing functions, routing, data relay - Host-host layer, contains protocol entities with the ability to deliver data between two processes on different host computers, data exchange, flow control, error control - Process/application layer, contains protocols for resource sharing and remote access
Fall 1999
76
TCP/IP Protocol Suite TCP/IP Protocol Suite The concept of a "suite of protocols in a stack handles all of the functions in communications. It is different from the traditional concept of communications protocols. Originally communications protocols simply took care of handling errors on a local communications link. The older protocols were usually linked into the specific application program or designed around a closed set of proprietary standards or communications hardware.
Fall 1999
Application Layer
User Applications
Service Layer
Transport Layer
Network Layer
Internetworking
Link Layer
Data Link
77
Host B Application
Transport
Transport
Internet
Network Interface
78
Application
Transport Routing Switching Interface
Audio
Video
SDP
SDAP HTTP TCP SMTP
UDP
IP
Integrated Services Forwarding
Fall 1999
80
Management Plane
Plane Management
Control Plane Higher Layers User Plane
Layer Management
High Layers
Fall 1999
81