The Gateway to Computer Science Excellence
+3 votes

The distance between A to B is 4000 km. The distance between B and C is 1000 km.The propogation delay is 5 micro sec/ km for both the links. The data rate between A and B is 100kbps. Both the links are full duplex. All data frames are 1000 bits long and ACK frames are negligible. Window size is 4.

What is the required transmission rate (in kbps) between B and C so that buffers of node B are not flooded?

A. 100




in Computer Networks by | 1.2k views

3 Answers

+6 votes

In order to ensure no flooding, data transfer rate between B-C must be same (or greater) as that between A-B. 

Lets consider the no. of bits transmitted by A until it receives ACK and let time for this be S. 

S = 2* Propagation delay  + Transmission delay for packet + Transmission delay for ACK 

= 2*20 ms + 10 ms + 0

= 50ms. 

Window size is 4. 

So, in 50ms, A could send up to 4 packets = 4000 bits. Data rate being 100 kbps, allows upto 100 *50 = 5000 bits in 50ms, so we are fine and we have effective data rate of 4kb/50ms = 80kbps.

Now, we know that in every 50ms, we are getting 4000 bits at B. (with a buffer of size 4000 bits we can assume no flooding for this)

Lets consider the no. of bits transmitted by B until it receives ACK and let time for this be T. 

T = 2* Propagation delay  + Transmission delay for packet + Transmission delay for ACK 

= 2 * 5ms + 1000/x ms, where x is the data rate in kbps 

In T ms, B sends 1000 bits. We want B to send at 80kbps which implies T = 1000/80  = 12.5ms

So, 12.5 = 10 + 1000/x

x = 1000/2.5 = 400 kbps. 

by Veteran

thank you sir..

Suppose if window size is given as 6. 

Then, in 50ms, A could send up to 6 packets = 6000 bits.

But the data rate being 100 kbps, allows upto 100 *50 = 5000 bits in 50ms, 

In this case what we wud do?


Also Sir how did u get the relation 

T = 50/12


In T ms, B sends 1000 bits. We want B to send 4000 bits in 50 ms, so, T = 50/12

There was some calculation mistake. Corrected now.

Yes, in that case you have to limit to 5000 bits in 50ms as thats the maximum possible (100% usage).
ohk it now..ignore my second doubt
ans is 400kbps
Since it is given that the channel is full duplex on both sides, B can also send back the ack to A after receiving first frame(individual ack). And now if we consider that next frame overwrites this one at B,before which it has to transmit it to C. Why can't we take this scenario?
Sir i didnt get the last part 12.6= 10 + 1000/x ;
0 votes
L=1000 bits

Tp = 5*1000 = 5000 $\mu$ sec or 5 ms

RTT = 5*2 = 10 ms

B * Delay = Bits flowing = L


B=100 kbps

Therefore the ans is A.
by Loyal
How does this ensure no flooding?
Sir i thought it in tjis way :

that i have to stop flooding in the link BC only . So since its using stop and wait so for the entire 2* $T_{p}$ time it could just send a single packet . So at max it can send the data for the entire 2* $T_{p} time since (packets size is fixed and there is no window size is always 1 in stop and wait for both receiver and sender ) , therefore B*D = delay product must be the packet size . (Delay product i found in peterson )
No, question asks for stopping flooding in B- which means outgoing traffic rate must be >= incoming.
0 votes

It should be 200 Kbps

by Active
This is not true . The transmission time to reach B in sliding window protocol is not calculated using 4000 bits... I mean it goes in pipeline manner but your approach has used stop and wait(A to B) where in you r calculating the transmission time for all the packets.

Thank you for the reply 

I have three questions pertaining to your solution

I did not understand what you mean by " b-c is stop and wait. So, RTT should be 60 ms."

RTT of what should be 60 ms? 

(1) Do you mean RTT of all the four frames in B's buffer should be 60ms ?

(2)Why is the transmission time being taken into consideration? Shouldn't B's buffer be cleared before the first bit of the first frame reaches B from A. This time is actually equal to propagation delay between A and B.

(3) If so then why have you taken 60ms for A to B shouldn't it be 80ms taking into account the time acknowledgement takes to reach A from B?

Please answer all the three questions as this will help me clear my concepts regarding sliding window protocols completely.

Thank you


This is what i meant. If you consider the transmission time time for all the packets in a window than you r using stop and wait only . How will sliding protocol than advantageous? Note that here within the Tx (for P1) + 2 * Tp( 1 for sending the frame P1 to receiver and other for receiving the ack back for P1 ) we are sending all the frames. This is the pipeline approach if you notice carefully .

Related questions

Quick search syntax
tags tag:apple
author user:martin
title title:apple
content content:apple
exclude -tag:apple
force match +apple
views views:100
score score:10
answers answers:2
is accepted isaccepted:true
is closed isclosed:true
52,222 questions
59,853 answers
118,095 users