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.

4.5. TCP Variants 72<br />

drops within a window. To avoid this TCP NewReno was proposed (see<br />

Section 4.5.4).<br />

TCP-SACK has been shown to perform well even at a high level of packet<br />

losses in the network [MM96].<br />

SACK Blocks<br />

SACK attaches detailed information called SACK Blocks in TCP Options<br />

[Pos81b] on each <strong>and</strong> every ack. Each SACK block specifies a contiguous <strong>and</strong><br />

isolated block of data not covered by the TCP Cumulative Acknowledgment<br />

field. Therefore cumulative SACK Blocks reports in the ack segments help<br />

the sender to identify ‘holes’ in the sequence numbers at the receiver; on the<br />

receipt of an ack containing the SACK Block, the sender can infer which<br />

segments are lost <strong>and</strong> hence retransmit only those segments. Therefore,<br />

SACKs enables a TCP sender to maintain an image of the receiver’s queue<br />

<strong>and</strong> enables recovery from multiple losses per window within roughly one<br />

RTT.<br />

Each SACK block is described using absolute sequence numbers, with<br />

two sequence numbers describing each block, each taking 4B:<br />

1st Left edge of the block, i.e. the first byte of the block successfully received.<br />

2nd Right edge of the block; i.e. the sequence number of the byte immediately<br />

following the last byte in the block.<br />

Given that the TCP options field is limited to 40B, the maximum number<br />

of SACK blocks per ack is limited 8 to four. However, as it is expected that<br />

SACK will often be used in conjunction with other TCP Options such as<br />

8 Each TCP option has a necessary associated overhead.

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

Saved successfully!

Ooh no, something went wrong!