You are on page 1of 4

Data communication and networks

Home work 3
Name : Ahmed osman abd el_ majeed
Index : 064005
1. Consider the following plot of TCP window size as a function of time.
Assuming TCP Reno is the protocol experiencing the behavior shown above, answer the
following questions. In all cases, you should provide a short discussion justifying your
answer.

a. Identify the intervals of time when TCP slow start is operating.


Intervals of slow start (1-6) & (23-26)
b. Identify the intervals of time when TCP congestion avoidance is operating.
Intervals of congestion avoidance are (6-16) & (17-22)
c. After the 16th transmission round, is segment loss detected by a triple duplicate
ACK or by a timeout?
Detected by a triple duplicate ACK because it starts from the threshold and linearly
d. After the 22nd transmission round, is segment loss detected by a triple duplicate
ACK or by a timeout?
Detected by a timeout because it starts from below threshold
e. What is the initial value of Threshold at the first transmission round?
Initially =32 segment

f. What is the value of Threshold at the 18th transmission round?


Threshold = 42/2=21 segment

g. What is the value of of Threshold at the 24th transmission round?


Threshold= 1 segment

h. During what transmission round is the 70th segment sent?


1+2+4+8+16+32=63 segments
63+33=96 segments
This is 7 transmission rounds so the answer is the 7th transmission round
i. Assuming a packet loss is detected after the 26th round by the receipt of a triple
duplicated ACK, what will be the values of the congestion control window size and
of Threshold?
Window = threshold = 8/2=4 segments

2. Suppose an application generates chunks of 40 bytes of data every 20 ms,


and each chunk gets encapsulated in a TCP segment and then an IP
datagram. What percentage of each datagram will be overhead, and what
percentage will be application data?

Datagram= data+TCP over head +IP overhead =40 byte+(32/8)*5 byte +(32/8)*5 byte=
40+20+20= 80byte
Data percentage = 40byte/80byte =50%

Overhead percentage = 40byte/80byte =50%


3-Suppose two TCP connections are present over some bottleneck link of
rate R bps. Both connections have a huge file to send (in the same
direction over the bottleneck link). The transmissions of the files start at
the same time. What is the transmission rate that TCP would like to give to
each of the connections? Explain your answer briefly in a couple of
sentences

Answer:

R/2 because of the fairly property of TCP protocol so both connections should have the same rate

4. Consider the following timing diagram, where two packets are sent from a
TCP sender to a receiver at times t=0ms and t=300ms respectively. The
TCP receiver applies the “delayed ACK” algorithm: a host that is receiving
a stream of TCP data segments can increase efficiency by sending fewer
than one ACK segment per data segment received. The diagram shows
the TCP receiver sends back to the source one single acknowledgement
packet indicating byte number 120 as the next expected byte, and
assume that this ACK is received by the sender at time t=660ms.

Assume that the value of “EstimatedRTT” and “Deviation” at the sender


immediately prior to t=660ms is 500ms and 200ms respectively, and that
the value of x is 0.125 for the EWMA equations for “Delay” as well as for
“Deviation”, calculate the new value of “Timeout” after the ACK was
received.

EstimatedRTT = (1- α)*EstimatedRTT + α *SampleRTT


α= 0 .1 2 5
DevRTT = (1- )*DevRTT + | SampleRTT-EstimatedRTT |
(typically, = 0.125)

Timeout Interval = EstimatedRTT + 4*DevRTT

In this question given that :


SampleRTT= 660-300=360 ms
EstimatedRTT=500ms

DevRTT=200ms

So timeout could be calculated as follows :

EstimatedRTT = 0.875*500 + 0.125*360 =482.5ms


DevRTT = 0.875*200+0.125* | 360-500|=192.5ms
Timeout Interval = 482.5+ 4*192.5=1252.5ms=1.2525sec

5. Consider sending a 1460 byte IP datagram into a link that has an MTU of
420 bytes. Determine the values of the length field and the offset field in
each fragment.
Data size = 1460-20=1440byte
Fragment can contain 420-20=400 byte
So we need 4 fragments
Fragment 1:-
Length= 400+20=420 bytes offset=0
Fragment 2:-
Length= 400+20=420 bytes offset= 400
Fragment 3:-
Length= 400+20=420 bytes offset=800
Fragment 4:-
Length= 240+20=260 bytes offset=1200

You might also like