Books to learn computer networking.
August 31, 2007 9:15 PM Subscribe
Please recommend some canonical books (or even e-books) to learn networking in general (on par with a CS major), up to an 'intermediate' level. Including stuff on wireless networking and security concerns.
You may assume I know little about the underlying principles, and that I'm more concerned about theory than certification.
You may assume I know little about the underlying principles, and that I'm more concerned about theory than certification.
Best answer: • "The Protocols", "The Implementation", and "TCP for Transactions, HTTP, NNTP, and the UNIX(R) Domain Protocols"
• Public IEEE 802.11 documentation
• Practical Unix and Internet Security
• Applied Cryptography: Protocols, Algorithms, and Source Code in C
posted by Blazecock Pileon at 9:33 PM on August 31, 2007 [2 favorites]
• Public IEEE 802.11 documentation
• Practical Unix and Internet Security
• Applied Cryptography: Protocols, Algorithms, and Source Code in C
posted by Blazecock Pileon at 9:33 PM on August 31, 2007 [2 favorites]
Response by poster: Just chasing down those topics will bring some other interesting topics to your attention. Start with google and wikipedia. Amazon has plenty of good networking books and useful reviews.
Google and wikipedia have been helpful, but I am looking for the structure and guidance that a good book provides. I'd like to lay the foundation, not fill gaps.
Using amazon I've made a list of 'good books to read on the topic,' but what I'm really looking for are just the essential and foundational texts.
posted by philomathoholic at 10:09 PM on August 31, 2007
Google and wikipedia have been helpful, but I am looking for the structure and guidance that a good book provides. I'd like to lay the foundation, not fill gaps.
Using amazon I've made a list of 'good books to read on the topic,' but what I'm really looking for are just the essential and foundational texts.
posted by philomathoholic at 10:09 PM on August 31, 2007
The Stevens books are very good, so let me second BP's recommendation.
Security concerns are difficult, because security is an extremely detail-oriented topic. You need to have a decent understanding of the whole stack, from the bits on the wire all the way up to the mental model in the user's head, before some security problems will make sense.
(Also, note that not all layered networking models are the OSI model— the actual OSI model is rarely followed in real-world systems.)
posted by hattifattener at 1:06 AM on September 1, 2007
Security concerns are difficult, because security is an extremely detail-oriented topic. You need to have a decent understanding of the whole stack, from the bits on the wire all the way up to the mental model in the user's head, before some security problems will make sense.
(Also, note that not all layered networking models are the OSI model— the actual OSI model is rarely followed in real-world systems.)
posted by hattifattener at 1:06 AM on September 1, 2007
What do you mean by networking? Do you want to be a sysadmin? Do you want to do network programming?
Anyway, Computer Networks a Top-Down Approach is a very good introductory text on Networks. (The University I went to uses this text now to teach their Networks course. The Distributed System class web site might be worth checking out also.) Unix Network Programing Volume 1 by Stevens is excellent, as are the three TCP/IP illustrated books. If you want a good core set of books on Networking, I think these would be it.
I took a lot of graph theory classes in University, and I really don't think much of it is applicable to Networks in general, beyond discussions on finding min-cost routes. One rarely discusses cut-sets and matchings or any of that nonsense. Queuing Theory is probably a more useful thing to study, or statistics in general.
posted by chunking express at 8:45 AM on September 4, 2007
Anyway, Computer Networks a Top-Down Approach is a very good introductory text on Networks. (The University I went to uses this text now to teach their Networks course. The Distributed System class web site might be worth checking out also.) Unix Network Programing Volume 1 by Stevens is excellent, as are the three TCP/IP illustrated books. If you want a good core set of books on Networking, I think these would be it.
I took a lot of graph theory classes in University, and I really don't think much of it is applicable to Networks in general, beyond discussions on finding min-cost routes. One rarely discusses cut-sets and matchings or any of that nonsense. Queuing Theory is probably a more useful thing to study, or statistics in general.
posted by chunking express at 8:45 AM on September 4, 2007
Response by poster: What do you mean by networking? Do you want to be a sysadmin? Do you want to do network programming?
I was surprised to see people still reading/commenting.
Anyway, I will probably be doing more programming than admin-ing, but I would still like to know the basics of what a sysadmin would consider essential.
posted by philomathoholic at 12:29 AM on September 5, 2007
I was surprised to see people still reading/commenting.
Anyway, I will probably be doing more programming than admin-ing, but I would still like to know the basics of what a sysadmin would consider essential.
posted by philomathoholic at 12:29 AM on September 5, 2007
Best answer: If you already know C, then I think the best way to get started with Networks Programming is to grab Unix Network Programming by Stevens and start reading it and working through his examples. It's well written, and covers a lot of material on Networks in general. It's the one book I use the most when I have an issue to deal with at work.
posted by chunking express at 4:53 AM on September 5, 2007
posted by chunking express at 4:53 AM on September 5, 2007
This thread is closed to new comments.
If it's theory and priciples start with Tanenbaum's Computer Networks.
It will give you a solid overview of networking and was, when I studied theory and not the active application of the principles, the entry level standard in CS.
Networking touches everything in the modern age, the theory has extended to application in nearly every form of communication. It's a HUGE task, try to focus on generally applied standards and bridge out. This is why studying and understanding modern internetworking will provide you principles you can extend and apply everywhere, specifically the OSI model.
posted by iamabot at 9:29 PM on August 31, 2007