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.2. TCP Tuning & Performance Improvements 85<br />

TCP Timestamps <strong>and</strong> PAWS<br />

The Timestamp Option [JBB92] provides for timing of every packet inflight,<br />

rather than only one per RTT as defined in the original specifications<br />

[Pos81b]. This improves the RTT estimation <strong>and</strong> enables keeping a more<br />

dynamic <strong>and</strong> accurate value for RTO <strong>and</strong> hence slightly quicker response to<br />

TCP timeouts.<br />

TCP Timestamps occupy 10-bytes <strong>and</strong> require the sender to place a current<br />

timestamp <strong>into</strong> each packet sent out (including retransmissions) which<br />

is then echoed by the TCP receiver in the ack.<br />

The implementation of the Timestamps option is especially useful for<br />

environments with very variable latencies such as wireless networks [LK02].<br />

However, especially in wireless environments, the implementation has to be<br />

balanced against the extra overhead of header information.<br />

The implementation of a timestamp also enables extra protection against<br />

potential wrap around due to the reuse of sequence numbers for long duration<br />

transfers. [JBB92] defines the Protection Against Wraparound Sequence<br />

Numbers (PAWS) algorithm that enables the checking to ensure that arriving<br />

packets are valid in time for the connection.<br />

The inclusion of the Timestamp option also enables low-level improvements<br />

in processing TCP data packets at the receiver. This is referred to<br />

as ‘Header Prediction’ [Jac90] <strong>and</strong> enables the receiver to quickly process a<br />

TCP segment provided that the timestamp is larger than the previous one<br />

recorded <strong>and</strong> that the sequence number is the next in sequence.

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

Saved successfully!

Ooh no, something went wrong!