05.08.2014 Views

An Investigation into Transport Protocols and Data Transport ...

An Investigation into Transport Protocols and Data Transport ...

An Investigation into Transport Protocols and Data Transport ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

5.3. Network Aid in Congestion Detection 96<br />

consuming physical memory, the kernel also facilitates the reduction of the<br />

sender’s socket buffer window sizes to reduce the burden of memory swapping.<br />

The modification of socket buffer auto-tuning algorithm were ported to<br />

the Linux 2.4 kernel in 2001 <strong>and</strong> are controlled by new kernel variables<br />

net.ipv4.tcp_rmem <strong>and</strong> net.ipv4.tcp_wmem defining the minimum, default<br />

<strong>and</strong> maximum socket buffer memory allocated to each TCP connection for<br />

the read <strong>and</strong> write buffers respectively 3 .<br />

Independent of auto-tuning, the Linux 2.4 <strong>and</strong> 2.6 kernels implement a<br />

system where connection performance histories of TCP transfers are cached<br />

for up-to 10 minutes. This ‘retentive’ TCP stores details of the measured<br />

/ experienced smoothed RTT <strong>and</strong> RTT variance, ssthresh <strong>and</strong> the path<br />

reordering information for previously connected pairs of hosts. These values<br />

are stored for up-to 10 minutes <strong>and</strong> will prevent a consecutive TCP flow for<br />

that pair to reach congestion avoidance quickly without the excessive packet<br />

losses of a typical slow start. It will also aid in preventing early spurious<br />

timeouts. The cache can be prematurely cleared through the use of the<br />

net.ipv4.route.flush sysctl.<br />

5.3 Network Aid in Congestion Detection<br />

Due to the transient nature of network utilisation, TCP gently probes the<br />

network with increasing number of segments to determine whether it can<br />

achieve more throughput. Therefore, in a sense, TCP has to cause congestion<br />

in order to determine the capabilities of the network path.<br />

Most current routers in TCP/IP networks do not detect incipient conges-<br />

3 Note, however, that the maximal tunable socket buffer memory is still limited<br />

by the maximum allocated socket buffer size in the kernel under net.ipv4.tcp mem,<br />

net.core.rmem max <strong>and</strong> net.core.wmem max.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!