Round-trip time (rtt)

RTT: Round-Trip Time (RTT) can also be called as round-trip delay. It is to calculate how much time required for sending a packet or signal pulse from one source to a specific destination and comes back to the same specific source. RTT is one of the several factors that affecting latency and the time between the request for data and also the complete return or display of that data. RTT can range between a few milliseconds under some ideal conditions to several seconds between points under adverse conditions.

Estimated RTT plus can be defined as “safety margin”. It is the estimated value of RTT that is based on the combination of current RTT and the past RTT.

EstimatedRTT = (1- a)*EstimatedRTTlast + a*SampleRTT

Large variation in Estimated RTT means larger safety margin. To calculate the DevRTT we need to estimate how much Sample RTT deviates from Estimated RTT i.e.,

DevRTT = (1-b)*DevRTTlast +b*|SampleRTT-EstimatedRTT| (typically, b = 0.25)

Segment

Sample

RTT

Estimated

RTT

DevRTT

Time Out Interval

1

130

130.00

130.00

650.00

2

138

131.00

99.25

528.00

3

122

129.88

76.41

435.50

4

124

129.14

58.59

363.50

5

131

129.37

44.35

306.77

6

139

130.58

35.37

272.05

7

139

131.63

28.37

245.10

8

121

130.30

23.60

224.71

9

134

130.76

18.51

204.80

10

127

130.29

14.71

189.12

11

267

147.38

40.93

311.12

12

139

146.33

32.53

276.47

13

126

143.79

28.85

259.19

14

134

142.57

23.78

237.68

15

141

142.37

18.18

215.08

16

137

141.70

14.81

200.93

17

291

160.36

43.76

335.42

18

123

155.69

41.00

319.68

19

134

152.98

35.49

294.95

20

139

151.23

29.68

269.95

21

141

149.95

24.50

247.94

22

142

148.96

20.11

229.41

23

139

147.71

17.26

216.77

24

122

144.50

18.57

218.79

25

123

141.81

18.63

216.34

26

143

141.96

14.23

198.90

27

215

151.09

26.65

257.70

28

134

148.95

23.73

243.87

29

122

145.59

23.69

240.36

30

134

144.14

20.30

225.35

Read also  Measure the reusability of object oriented interfaces in uml diagrams

Table 1

A premature retransmission timeout occurs if there is no packet or signal loss or if the lost packet or signal can be captured by fast retransmission mechanism. With contrast, over estimation of RTT will lead to late retransmission timeout, in that case, if there is a loss and which cannot be captured by the fast retransmission mechanism. Therefore, it is crucial to have a Retransmission Timeout (RTO) value for TCP performance which is an equilibrium point in balancing between both the above cases.

Note: RTO must be smaller than RTT.

Following are the few algorithms which help in setting the retransmission timeout

Ludwig and Katz propose the Eifel algorithm to eliminate the unnecessary retransmissions that can result from a spurious retransmission timeout.

Gurtov and Ludwig present an enhanced version of the Eifel algorithm and show its performance benefits on paths with a high bandwidth-delay product.

Ekstrand Ludwig proposes a new algorithm for calculating the RTO, named the Peak-Hopper-RTO (PH-RTO), which improves upon the performance of TCP in high loss environments.

RFC 3649 proposes modification of TCP congestion control that adapts the increase strategy and makes it more aggressive for high bandwidth links (i.e. for large window sizes)

Even if there is no packet loss in the network, windowing can limit throughput. Because TCP transmits data up to the window size before waiting for the packets, the full bandwidth of the network may not always get used. The limitation caused by window size can be calculated as follows:

where RWIN is the maximum receive windows size and RTT is the round-trip time for the path.

At any given time, the window advertised by the receive side of TCP corresponds to the amount of free receive memory it has allocated for this connection. Otherwise it would take the risk to have to drop received packets by lack of space.

Read also  Software piracy: An overview

Unrelated to the TCP receive window, the sending side should also allocate the same amount of memory as the receive side for good performance. That is because, even after data has been sent on the network, the sending side must hold it in memory until its has been acknowledged as successfully received, just in case it would have to be retransmitted. If the receiver is far away, acknowledgments will take a long time to arrive. If the send memory is small, it can saturate and block emission. A simple computation gives the same optimal send memory size as for the receive memory size given above.

Packet loss

When packet loss occurs in the network, an additional limit is imposed on the connection. The limit can be calculated according to the formula (Mathis et al.):

where MSS is the maximum segment size and Ploss is the probability of packet loss

Below table shows the theoretical maximum sustained TCP throughput

135 kbits/sec at 1 second RTT

225 kbits/sec at 600 millisec RTT (typical satellite RTT)

449 kbits/sec at 300 millisec RTT

1200 kbits/sec at 100 millisec RTT (typical domestic Internet RTT)

1780 kbits/sec at 60 millisec RTT

2800 kbits/sec at 30 millisec RTT

4510 kbits/sec at 10 millisec RTT (typical within a city)

In order to set the ACK timer we need to know how large the ACK timeout value should be. It can be too short or too long.

Too short –> premature timeout –> extra retransmission

Too long –> slow reaction to loos –> poor performance

Read also  The importance of enterprise computing to enhance business performance

For this we need to have the timer longer than RTT, for this we need to estimate RTT by measuring the time from a segment transmission until the receipt of ACK which is nothing but Sample RTT. For this we need to ignore retransmissions and measure only one segment’s RTT at a time. By doing so, the sample RTT will vary and we can compute an average RTT based on the several recent RTT samples.

Timeout = Estimated RTT + 4*DevRTT

The probability of premature retransmission timeout is

P1 = P[RTO < RTT]

((1-p) W + (1-(1-p) W) (1-3/W) )

≈ P[RTO < RTT] (1-3/W 2)

≈ P[RTO < RTT]

The throughput degradation due to this event is:

L1 = WlogW.

During the slow start ph.ase we can observe, TCP sends at most W packets. We obtain that the expected output degradation result to premature retransmission timeout is:

P1.L1 = P[RTO<RTT].WlogW.

For given data the maximum sample RTT is 291, if we choose the 291 as rough value then as time out interval then the probability of premature timeout will occur on Segment 17 as we know all the data segment 1 to 30 but in real data transmission we couldn’t have the values that we why we need to estimate the optimum time out interval.

So we need to Caliculate Estimated RTT and Sample RTT and Dev RTT to optimum Time out values for reliable data tranmission.

As per the given data the Optimum Time Out Value for unknown next segment is caliculated dynamically with previous sample RTT and estimated RTT. In case of Segment 17 if we have the previous values of sample RTT and estimated RTT and DevRTT the Optimum Time out interval is 335.42.

http://www.slac.stanford.edu/comp/net/wan-mon/thru-vs-loss.html

Order Now

Order Now

Type of Paper
Subject
Deadline
Number of Pages
(275 words)