[OT] Handling multiple UDP clients through NAT

Andrew McNabb amcnabb at mcnabbs.org
Wed Feb 7 12:26:00 MST 2007

On Wed, Feb 07, 2007 at 11:11:15AM -0700, Bryan Sant wrote:
> No typo, but it is wrong.  When you look at a chart of the TCP/IP
> stack you'll probably see the UDP and TCP protocols side-by-side.
> However, TCP is actually a super-set of the features of UDP.  In the
> OSI network model, IP maps to layer 3 (network), UDP and TCP both map
> to layer 4 (transport).  However, if you could split layer 4 in two,
> there would be a lower portion that UDP handles and a higher portion
> that TCP handles.

When I took CS 460 (Computer Networking) at BYU, I loved the textbook we
used.  One of the main things I noticed was that they basically ignored
the OSI model and instead focused on the Internet model (hardware
layers; Ethernet and other link layers; IP, TCP/UDP).  They were able to
talk about the same issues but it was a little more relevant.

> UDP sends datagrams.
> TCP manages datagrams with reliable delivery (acks, time-outs,
> resends, etc), packet ordering, flow control/windowing, etc.

I almost agree.  UDP indeed deals with datagrams, but TCP does not.  TCP
deals entirely with streams (with all of the features you mentioned).

> I am incorrect in stating that TCP is literally built on top of UDP.
> I doubt they share any code, or that the TCP code is an addition to
> the UDP code, but the TCP feature set is a super-set of UDP.

There are things you can do with UDP that you can't do with TCP, so I'm
still having a little trouble with the statement that the TCP feature
set is a superset of the UDP feature set.  For example, you can't send a
message in TCP and expect it to arrive in one piece, and you can't look
at your TCP data as a bunch of records (if you need records, you need to
parse your stream).

However, one important point along the lines of what you were saying is:
TCP can be conveniently implemented on top of UDP.  You could also say
that UDP is nothing but IP with port numbers.

Andrew McNabb
PGP Fingerprint: 8A17 B57C 6879 1863 DE55  8012 AB4D 6098 8826 6868
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://plug.org/pipermail/plug/attachments/20070207/94a0f923/attachment.bin 

More information about the PLUG mailing list