# Daily Learning: Computer Networks – Delay in Transmission & Flow Control & Stop and Wait

## Delays

There are many types of delays –

1. Transmission Delay – The time taken for host to put the entire packet in the line is transmission delay. If the first bit of the packet on the the line at time t1 and the last bit of the packet is put on the line at time t2, so the transmission delay of the packet is (t2 – t1). We define transmission delay as Tt = L/B (L = Length of packet, B = Bandwidth) Notation Data
2. Propagation Delay – The time taken for a bit to travel from source to destination is propagation delay. Tp = d/v (d = Distance of host to destination, v = velocity of the packet)
3. Queuing delay – Packets are received in the receiver and sit in a queue until all packet come it is called queuing delay.
4. Processing Delay – Packets are taken from the queue and taken to the processor for processing that is called processing delay.

## Flow Control

Sometime wile sending data from sender to receiver the other end there may be queue is full in that case the later packets will be discarded for that we use stop and wait protocol. Here we send a packet and from other end it sends an acknowledgement for this there are some transmission d delay and inefficiency.

## Stop and Wait Automatic Repeat Request

• ARQ (Automatic Repeat Request) – If a sender sends a data and the packet is lost then the receiver won’t send the acknowledgement at all and the system will get into a deadlock. In order to break the deadlock we use a Timeout Timer and if no acknowledge comes in the that time we resend the packet again.
• Duplicate Packet Problem – If the acknowledgement is lost and then the sender will again assume that the data is lost and the sender will resend the packet and receiver will re process it. In order to overcome the problem we use sequence number to the data.
• Missing Packet Problem – If the sender sends a packet p1 and the acknowledgement A got delayed for that sender again sends the packet p1 and got the acknowledgement A then it sends packet p2 and the packet got lost but the first acknowledgement for p1 got arrived now the sender will think that the packet p2 got send successfully. In order to solve the problem we use a acknowledgement number.
• Some time the sender may send a lot of data and the receiver may not that much capable of handling the data.
• So the here the sender first send one data packet and wait for a particular time the acknowledgement from the receiver.
• If the acknowledgement comes in that time or before time then good.
• Otherwise the sender then automatically resend the data.

### Properties

• When the receiver receives the packet it send acknowledgement for the next packet(not the packet that was received.)
• In this method there is only one packet the channel always so the when a packet is sent successfully we can reuse the sequence number of that packet again.

### Formulas

• Total Time – Tt + 2 * Tp [Tt = Transmission time for data, Tp = Propagation time]
• Efficiency(η) – 1 / 1 + 2a [a = Tp / Tt]
• Throughput or Effective Bandwidth or Bandwidth Utilization – η * B [η = Efficiency, B = bandwidth]