260 likes | 371 Views
This section discusses the essential role of protocols in communication between computers, detailing their need and the mechanisms that prevent issues like packet loss, corruption, and out-of-order delivery. It explains the concept of protocol suites and layering, illustrating the ISO 7-layer reference model's structure and functions. Key protocol techniques for ensuring data integrity and reliability, such as flow control methods (Stop-and-Go and Sliding Window), are highlighted. Additionally, it emphasizes the significance of managing congestion in network traffic to ensure optimal performance.
E N D
Part 2.2 Protocols and Protocol Layering Robert Probert, SITE, University of Ottawa CSI 4118
Protocol • Agreement about communication • Specifies • Format of messages • Meaning of messages • Rules for exchange • Procedure for handling problems CSI 4118
Need for Protocols • Hardware is low level • Many problems can occur • Bits corrupted or destroyed • Entire packet lost • Packet duplicated • Packets delivered out of order CSI 4118
Need for Protocols (continued) • Need mechanisms to distinguish among • Multiple computers on a network • Multiple applications on a computer • Multiple copies of a single application on a computer CSI 4118
Set of Protocols • Work together • Each protocol solves part of communication problem • Known as • Protocol suite • Protocol family • Designed in layers CSI 4118
Plan for Protocol Design • Intended for protocol designers • Divides protocols into layers • Each layer devoted to one subproblem • Example: ISO 7-layer reference model CSI 4118
Illustration of the 7-Layer Model • Defined early • Now somewhat dated • Does not include internet layer! CSI 4118
ISO Layers • Layer 1: Physical • Underlying hardware • Layer 2: Data Link (media access) • Hardware frame definitions • Layer 3: Network • Packet forwarding • Layer 4: Transport • Reliability CSI 4118
ISO Layers (continued) • Layer 5: Session • Login and passwords • Layer 6: Presentation • Data representation • Layer 7: Application • Individual application program CSI 4118
Layers and Protocol Software • Protocol software follows layering model • One software module per layer • Modules cooperate • Incoming or outgoing data passes from one module to another • Entire set of modules known as stack CSI 4118
Illustration of Stacks CSI 4118
Layers and Packet Headers • Each layer • Prepends header to outgoing packet • Removes header from incoming packet CSI 4118
Scientific Layering Principle Software implementing layer N at the destination receives exactly the message sent by software implementing layer N at the source CSI 4118
Illustration of Layering Principle CSI 4118
Protocol Techniques • For bit corruption • Parity • Checksum • CRC • For out-of-order delivery • Sequence numbers • Duplication • Sequence numbers CSI 4118
Protocol Techniques (continued) • For lost packets • Positive acknowledgement and retransmission • For replay (excessive delay) • Unique message ID • For data overrun • Flow control CSI 4118
Flow Control • Needed because • Sending computer system faster than receiving computer • Sending application faster than receiving application • Related to buffering • Two forms • Stop-and-go • Sliding window CSI 4118
Stop-And-Go Flow Control • Sending Side • Transmits one packet • Waits for signal from receiver • Receiving side • Receives and consumes packets • Transmits signal to sender • Inefficient CSI 4118
Sliding Window Flow Control • Receiving side • Establishes multiple buffers and informs sender • Sending side • Transmits packets for all available buffers • Only waits if no signal arrives before transmission • Receiving side • Sends signals as packets arrive CSI 4118
Illustration of SlidingWindow on Sending Side • Window tells how many packets can be sent • Window moves as acknowledgements arrive CSI 4118
Performance • Stop-and-go • Slow • Useful only in special cases • Sliding window • Fast • Needed in high-speed network CSI 4118
Comparison of Flow Control CSI 4118
Why Sliding Window? • Simultaneously • Increase throughput • Control flow • Speedup Tw = min(B, TG W where • B is underlying hardware bandwidth • TW is sliding window throughput • TG is stop-and-go throughput • W is the window size CSI 4118
Congestion • Fundamental problem in networks • Caused by traffic, not hardware failure • Analogous to congestion on a highway • Principle cause of delay CSI 4118
Illustration of ArchitectureThat Can Experience Congestion • Multiple sources • Bottleneck CSI 4118
Congestion and Loss Modern network hardware works well; most packet loss results from congestion, not from hardware failure CSI 4118