Paul Koning wrote:
"Jason" == Jason Stevens <neozeed at gmail.com> writes:
Jason> Ah I had thought fragmentation was a 'feature' of TCP not
Jason> UDP.. well then that would take care of it then.
There are two things that serve similar purposes and have confusingly
similar names.
"Segmentation" is what TCP does to break user data into convenient
size chunks. That chunk size is MSS (Max Segment Size), it's
negotiated at TCP connection setup.
"Fragmentation" is what IPv4 does to break datagrams into chunks that
fit on the wire (that size is MTU, Max Transmission Unit).
Also note that MTU can differ from hop to hop over the internet. So a packet that goes
over the first hop as one piece might need to be fragmented to get over the next hop.
Segmentation is more efficient than fragmentation, so with TCP the
normal approach is to pick MSS such that the resulting packets end up
no larger than MTU. In the case of UDP, the packet size is set by the
application (because each application send results in exactly one UDP
packet), so fragmentation will occur if the application sends stuff
bigger than MTU - header size.
No. Segmentation isn't more efficient, as such. However, it behaves much better in the
face of lost packets.
Johnny
--
Johnny Billquist || "I'm on a bus
|| on a psychedelic
trip
email: bqt at softjar.se || Reading murder books
pdp is alive! || tryin' to stay hip" -
B. Idol