Click to See Complete Forum and Search --> : UNIX network programming


carrja99
08-09-2003, 04:48 AM
This semester I'm only taking a few courses, so I figured I'd spend a little extra time keeping my programming skills on par while learning some new things. After taking a look at some books at my University library, I picked up "Unix Network Programming" by W. Richard Stevens.

However, a look inside the cover revealed that it was written in 1990!

I've covered the first 3 chapters, but I am wondering... should I consider trying to get a copy of a more up to date book? I know the core concepts are the same, but I dont want to waste my time to find out that that alot of ideas or methods have changed somewhat or alot in the past 13 years.

superted
08-09-2003, 05:30 AM
I would definately get a newer book. The computer scene is like one of the fastest moving technologies and allthough the basics may be the same it could very possibly be a big waste of time.

With that being said, i dont really know much about UNIX network programming :)

carrja99
08-09-2003, 06:11 AM
Originally posted by superted
I would definately get a newer book. The computer scene is like one of the fastest moving technologies and allthough the basics may be the same it could very possibly be a big waste of time.

With that being said, i dont really know much about UNIX network programming :)

No help then. You fail to realize that Linux is based pretty much on a 30 year old OS. So far, all of the examples I have done up to chapter 4 have worked with no problem. I really need a response from someone who has knowledge in this area, as I'd hate to move on and finish the remaining 11 chapters to discover a method for doing such in such is deperciated or is now bad practice.

andysimmons
08-09-2003, 08:45 AM
Most, if not all, of what you read should work fine, but you'll miss out on some improvements. One of the most helpful references I own is Unix Shell Programming (by Sun) which was written around the same time as yours. There are a few things it doesn't talk about (since they didn't exist at the time) that would have been REALLY helpful, but for the most part it's a good reference. Most of the stuff I do is data extraction and parsing, so it could be different for network programming, but I don't think you're wasting your time.

kshim5
08-09-2003, 09:17 AM
What programming Language are you using ? I use java to do my network programming here is an excellent book that i read. find it at

www.amazon.com

Java Network Programming: A Complete Guide to Networking, Streams, and Distributed Computing
by Merlin Hughes, Michael Shoffner, Derek Hamner, Conrad Hughes
isbn: 188477749X


www.bookpool.com

Network Programming with Perl
Addison-Wesley, Paperback, Published December 2000, 753 pages, nt_pr_wt_p_aa
ISBN 0201615711

www.amazon.com

Linux Socket Programming by Example
Que, Hardcover, Published April 2000, 558 pages, linx_soc_pr,
ISBN 0789722410

:D

If you find that some of the API's are are a little outdate check the language API reference for up to date features.
java
http://java.sun.com/j2se/1.4.2/docs/api/

perl
http://www.perldoc.com/perl5.8.0/lib.html

bwkaz
08-09-2003, 10:36 AM
Originally posted by carrja99
...I picked up "Unix Network Programming" by W. Richard Stevens. /me has a feeling that Stuka would like to hear that. He seems to like that book quite a bit.

Some of the methods of doing IPC (for example) from it are extremely useful, and simple at the same time.

I don't think you made a mistake. About all that I can think of that it might not cover (don't know though) would be IPv6, but not too many people use that yet anyway.

kshim5 -- this book is for C programmers, I believe. Which is fine -- the BSD sockets C API is really quite good.

As for "missing out on improvements", I can't think of any (apart from IPv6) that have even been made. The BSD sockets API is still exactly the same now as when that was written (and it had been quite stable for a while before that, too, I suspect). Most of the system calls' manpages say they conform to 4.4BSD, which is relatively old.

Stuka
08-11-2003, 11:03 AM
I have UNP v2 (Interprocess Communications), and would love to have a copy of v1 (Sockets). The second edition of the books came out in '99, and updates most of the information. However, if Stevens wrote it in '90, it's STILL good stuff. If you hate the book, let me know, 'cuz I'll be happy to take it off yer hands! ;)

sploo22
08-11-2003, 11:21 AM
You know BSD sockets have to be at least reasonably good because even Microsoft has copied the interface!