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 http://www.mcnabbs.org/andrew/ PGP Fingerprint: 8A17 B57C 6879 1863 DE55 8012 AB4D 6098 8826 6868
signature.asc
Description: Digital signature
/* PLUG: http://plug.org, #utah on irc.freenode.net Unsubscribe: http://plug.org/mailman/options/plug Don't fear the penguin. */
