Additional Reference Materials
Here's the
Unix Network Programming Manual prepared by Gary Harkin for this
class. This is a must-read for the programming assignments.
One of the best reference books available for people doing Unix network
programming is
Unix Network Programming, Vol. 1: The Sockets Networking API, 3rd Ed.
, by W. Richard Stevens. The library has placed a copy of this book on
reserve for the class; the book is reserved for CS 440, but the instructor's
name will be listed as Jeannette Radcliffe. The library also has a copy of
the second edition. I also have a copy of the first edition available for
loan.
A similar book, which is also available for loan, is
Advanced Programming in the Unix Environment, also by W. Richard
Stevens. This covers a lot of Unix programming issues, including a good
section on the sockets API.
The books about TCP/IP networking by Douglas Comer and W. Richard Stevens are
widely used references - they are good sources of information about TCP/IP.
Books Available for Loan
I have several books available for loan throughout the semester - Gary gave me
some of them that were apparently made available for textbook review, and
others are from my library. I have them all in my office, so stop by to browse
or borrow one.
Networking Books
-
Data Networks, 2nd ed., Dimitri Bertsekas and Robert Gallagher,
1992.
-
Data Link Protocols, Uyless Black, 1993.
-
Internetworking with TCP/IP, Vol. 1: Principles, Protocols, and
Architecture, Fifth Ed., Douglas E. Comer, 2005.
- Internetworking with TCP/IP, Vol. I: Principles, Protocols, and
Architecture, Second Ed., Douglas E. Comer, 1991.
A far earlier edition of the same book.
- Internetworking with TCP/IP, Vol. II: Design, Implementation, and
Internals, First Ed., Douglas E. Comer and David L. Stevens, 1991.
The
third edition is now available.
-
Internetworking with TCP/IP, Vol. III: Client-Server Programming and
Applications, (BSD Socket Edition), Second Ed., Douglas E. Comer and David L. Stevens, 1996.
-
Computer Networking and the Internet, Fifth Ed., Fred Halsall, 2005.
-
Computer Networking: A Top-Down Approach Featuring the Internet, Third
Ed., James F. Kurose and Keith W. Ross, 2005.
-
Technical Aspects of Data Communication, 3rd ed., John E. McNamara,
1988.
-
TCP/IP Illustrated, Vol. 1, W. Richard Stevens, 1994.
- Computer Networks, First Ed., Andrew S. Tanenbaum, 1976.
This was my networks textbook - it was written when dirt was new and
shiny. The
fourth edition of the book is published now.
-
Open Networking with OSI, Adrian Tang and Sophia Scoggins, 1992.
Unix Network Programming Books
-
Unix Networking, Stephen G. Kochan and Patrick H. Wood, ed., 1989.
- Advanced Programming in the Unix Environment, W. Richard Stevens, 1993.
The
second edition is now available.
- Unix Network Programming, W. Richard Stevens, 1990.
C / C++ Programming Books
-
The C Programming Language, 2nd ed., Brian W. Kernighan and Dennis M.
Ritchie, 1988.
This is the K&R book - the definitive book on C programming.
-
The C++ Programming Language, 3rd ed., Bjarne Stroustrup, 2000.
The C++ equivalent to the K&R book - the definitive book on C++ programming.
-
The Standard C Library, P.J. Plauger, 1991.
-
The Practice of Programming, Brian W. Kernighan and Rob Pike, 1999.
-
The C++ Standard Library: A Tutorial and Reference, Nicolai M.
Josuttis, 1999.
-
Pthreads Programming: A POSIX Standard for Better Multiprocessing,
Bradford Nichols, Dick Buttlar, and Jacqueline Proulx Farrell, 1996.
Some Other Network Books
-
TCP/IP Sockets in C: Practical Guide for Programmers, Michael J.
Donahoo and Kenneth L. Calvert, 2000.
-
Ad Hoc Networking, Charles Perkins, 2001.
-
Data and Computer Communications, 7th ed., William Stallings, 2003.
-
- Networking Standards: A Guide to OSI, ISDN, LAN, and MAN
Standards
, William Stallings, 1993.
Check the MSU Library - it has at least some of these books available.
Networking Periodical References
C Language Material
Here's a set of tutorials on C and C++ that you might find useful as a
refresher, from
cprogramming.com. Each section includes a quiz. The site is plagued
with ads, but hey, what can you expect for free?
And here is an online book on programming in C:
The GNU C Programming
Tutorial.
Here's where I harvested some of the errors I used in the first assignment -
although I'm sure I made all of those mistakes at one time or another in my C
programming career.
Some additional online socket programming references:
Some Important Websites:
The fact that I put in links to the book descriptions on Amazon doesn't mean
that's the only place you can find them. I like
NerdBooks.com and
Powell's for ordering technical books.
The local Barnes and Noble and
Borders both have pretty respectable
technical book sections. And Vargo's and Country Bookshelf downtown are both
really good about special ordering books - plus Vargo's has a great selection
of jazz CDs and LPs, so you have something to listen to while you're banging
your head against the table doing the latest CS 440 program.
|