COMT Performance of Data Communications Protocols General Protocol Concepts
COMT Outline General protocol principles for flow control and error handling, including: Examples of protocols using these schemes Principles of interconnecting networks Bridges, Switches, Routers, Gateways
COMT OSI Model for Networks 7Application Layer 6Presentation Layer 5Session Layer 4Transport Layer 3Network Layer 2Data Link Layer 1Physical Layer
COMT OSI Model Implementation? Layer N Layer N-1 RequestRespond ConfirmIndicate
COMT Flow Control Synchronize devices or routines at the sender and the receiver Basis for error recovery May exist in every protocol layer –Layer 2 for device to device –Layer 4 for user to user
COMT Flow Control Layers Transport Network Data Link Physical Data Link Physical Transport Network Data Link Physical
COMT Stop-and-Wait SenderReceiver A B C D H G I F J E
COMT Transmit SenderReceiver A B C D H G I F J E
COMT Propagate SenderReceiver A B C D H G I F J E
COMT Ack-Transmit SenderReceiver B C D H G I F J E Ack
COMT Ack-Propagate SenderReceiver B C D H G I F J E Ack
COMT Transmission Time Definition: the time required for the transmitter to create the electrical signals needed to completely represent the message Depends on the length (in bits) of the message and the circuit speed (bits/sec). (Transmission Time) = (Message Length)/(Circuit Speed)
COMT Propagation Time Definition: the time required for the electrical signals to travel from sender to receiver Depends on the length of the circuit and the signal speed. (Propagation Time) = (Circuit Length)/(Signal Speed) Speed of Light –In Vacuum: 300,000 km/sec –In a typical wire: 200,000 km/sec
COMT Short Message or High Bit Rate SenderReceiver
COMT Long Message or Low Bit Rate Sender Receiver
COMT Examples
COMT Stop and Wait Time Line Time Packet ready length=W bits Last bit transmitted Transmission Time t i Last bit received Ack returned Propagation Time t p Note: We ignore the length of the acknowledgement Next packet ready
COMT What is the transmission rate? In the diagram, “W” bits were transmitted (Message Length) The elapsed time was t i +2*t p Define B eff as the effective bit rate, B as the circuit speed, and Eff as the efficiency
COMT How do we get high efficiency? Note that t i is related to W and B
COMT Why are very large packets impractical? Intermediate routers may not be able to store the packet Sharing a circuit is impractical because long packets tie up the circuit for long times Error checks are performed on a per-packet basis; we may need to re-transmit the entire (large) packet after an error
COMT An aside … The time in the denominator is the total time elapsed from the start of transmission to the receipt of a “reaction” from the other side This time is more generally referred to as the Round Trip Time (RTT), and may include queue delays as well as multiple transmission and propagation times
COMT What is the answer? On fast circuits (or on circuits with high RTT) I need a large amount of data “in flight” We don’t want large packets Therefore, we have to allow transmission of additional packets before the first packet is acknowledged
COMT Sliding Window SenderReceiver A B C D H G I F J E
COMT Sliding Window SenderReceiver A B C D H G I F J E
COMT Sliding Window SenderReceiver A B C D H G I F J E
COMT Sliding Window SenderReceiver A B C D H G I F J E
COMT Sliding Window SenderReceiver B C D H G I F J E Ack
COMT Sliding Window SenderReceiver B C D H G I F J E Ack
COMT Sliding Window SenderReceiver C D H G I F J E Ack