[e2e] TCP fragmentation and reassembly

Joe Touch touch at ISI.EDU
Mon Dec 5 17:16:11 PST 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1



Lloyd Wood wrote:
> On Mon, 5 Dec 2005, Joe Touch wrote:
> 
> 
>>It's useful to keep in mind that TCP is a byte-stream protocol; there
>>are no segment boundaries preserved between application and transport layer:
> 
> 
> (cough) urgent pointer (cough).

You can set the URG; you can know that at most one URG will be inside
each segment, you can't know where TCP will break the data around the
URG pointers. Also, when the URG pointers are overwritten, only the last
one will count. And the sender app doesn't know when an URG is received,
so there's no way to ensure you're not overwriting an URG.

As a result, you can correlate writes to segment size only in the
degenerate case:
	- open a connection
	- write one byte
	- close that connection

Joe
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (MingW32)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFDlOZbE5f5cImnZrsRAiG2AJ9uiPsPAGUSV+h6q6v/82TQC6ox8ACgjhiX
YhanQk+WaNry0Cpw8ZfA5LI=
=iesi
-----END PGP SIGNATURE-----


More information about the end2end-interest mailing list