Time for another question from my Ask InetDaemon mailbox:
Thanks for the excellent article on TCP, this was the best ever explanation I've found. Could you please provide me with the C++ implementation code for TCP handshake protocol?The handshaking is a function of the TCP protocol, and not really a protocol unto itself. Thus, handshaking is not a standalone piece of code. It’s integrated in the actual TCP software, first implemented in Berkeley BSD UNIX.
If you want a copy of the source code, you should learn to use a CVS client to download (sync) a copy of the BSD source in the CVS repository, provided you’re using a BSD compatible computer and operating system. The Berkeley Sockets implementation is the de-facto standard for TCP.
See:
Synchronizing Your Source.–InetDaemon
Another reader asks:
What is the difference between an IP datagram and a TCP segment?
Mostly, its terminology used in the standards documentation, though upon transmission a TCP segment gets created first from the application layer data and an IP datagram contains the TCP segment in the payload section of the IP datagram. I’ve got lots of tutorials on these subjects in this website.
Many years ago, I created an online form (Ask InetDaemon) through which my loyal and curious readers can send me an e-mail with a question about a tutorial or other subjects. Replying to the e-mail helped the person who sent me the e-mail, but the questions are often quite good and serve as a great basis of writing a tutorial, but unless I wrote a tutorial page, there was no way to share it with my readers.
Now that I have a blog, I can actually reply to these e-mails in a more public forum where they will help more than just one person. The “Ask InetDaemon” category will contain those answers. Subscribe to the RSS feed for the category to see new questions and my answers.
The “Ask InetDaemon” blog category will be reserved for the e-mails I answer. I’m going to try to answer one question every two weeks on Friday evenings for your Saturday morning amusement.
However, you have to do your part:
First, you have to send me some real questions via the online form. I don’t promise to answer them all and I can’t do your school work for you.
Second, if you want to comment on my responses to any of the e-mails in this category, you need to register for a free InetDaemon.Com account. Only registered members can comment on my posts.
Stay Tuned!