In this page I will attempt to address some issues, which may be helpful to you in some way or other.
Try to be attend the lab because we would be discussing a lot of important concepts over there.
Use the class mailing list actively.
If you want to purchase the book (UNP) and do not get it in the bookstore, there are other places in Riverside to get that. Ask your classmates or post it in the mailing list.
You do not require to have two machines to run client and server. You can run the client and server from the same machine. For that you have to use the Loopback Address [127.0.0.1] The IP address corresponding to the server should be the loopback address.
Use the command ifconfig (in linux) or winipcfg (in windows) to know about the IP address (and possibly other interface details) of your machine.
For details about any command refer to the manual pages. e.g. for knowing about socket(), try man socket. If it says no such manual entry do unset MANPATH.
You may sometimes require to write like: man –S 2 bind when there are more than one entries for bind in the manpages. ‘-S’ switch tells to look in the appropriate section. We instructed to look in section 2 in the above example. Most network programming commands are covered in section 2 of the man pages.
For better formatting and ease of printing, you can write man socket in a search engine like google and it will return the same information. However, do this with caution, there can be some differences between the manpage you read from the web and the working of your system.
While writing programs, always check the return values from the system calls. If it indicates failure, examine the errno value to find out the details. Use the library calls, perror and strerror.
There is some credit regarding programming style. Look UCR
CS Documentation for guides on design, layout, programming, debugging
etc.
"netstat -t -a -p -c"
where '-t' means TCP sockets, '-a' means sockets at all states otherwise listen sockets may not be shown, '-p' means show process id and '-c' means to show the information continuously without requiring to type the command again and again.
Some small programs:
On select
On byteorders