[
Lists Home |
Date Index |
Thread Index
]
Thanks Al for the tutorial. While you are in that
mode, could you expand a little more on the timing
aspects of TCP vs UDP?
len
-----Original Message-----
From: Al Snell [mailto:alaric@alaric-snell.com]
Ok, networking 101.
TCP provides an emulation of a serial line, basically.
UDP provides the raw network.
UDP applications add their own packet-based retransmission code, or use an
existing library like ONC RPC to do this for them.
However, by doing this without doing it the way TCP does - which emulates
a serial line as well - they do it more efficiently.
As I said before, TCP will ensure that data arrives in order, which is
often undesirable, and it will hide packet boundaries, which is often
undesirable.
It's annoying that there aren't many implementations of RDP or NetBLT
around (see the RFCs), since they provide a nice middle ground between TCP
and UDP, but when the things TCP does unacceptably screw up your system,
you have to start with UDP and add retransmission (the most common
requirement) to get it to work.
The Internet would be horribly, horribly, slow to use if DNS worked over
TCP rather than UDP... DNS uses TCP only for zone transfers, which are not
time critical :-)
|