计算机网络知识
讲述计算机网络的最经典的当属Andrew S.Tanenbaum的《计算机网络》第五版,这本书难易适中。
目前已经是第五版,本书作者80年代就开发出MINIX,是一个用于操作系统教学的类UNIX(的小型操作系统。而linux就是受其影响。。。。
第五版是2012年出的,也比较新。
作 者: (美)特南鲍姆,(美)韦瑟罗尔 著 严伟,潘爱民 译 丛 书 名:
出 版 社: 清华大学出版社ISBN:9787302274629出版时间:2012-03-01
-----------------------------------------------------------------------------
《计算机网络:自顶向下方法(原书第4版) 》
作 者: (美)库罗斯 著 陈鸣 等 译 丛 书 名:计算机科学丛书出 版 社: 机械工业出版社ISBN:9787111165057出版时间:2009-01-01
《计算机网络系统方法(原书第4版)》
作 者: (美)彼得森(Peterson,L.L.),(美)戴维(Davie,B.S) 著 薛静锋 等 译 丛 书 名:计算机科学丛书出 版 社: 机械工业出版社ISBN:9787111251385出版时间:2009-02-01
如果觉得Tanenbaum的看的不够过瘾可以看这2本,这2本出版的时间和版面的差不多,各有特色,特别是“自顶向下”是一个很好的概念!
------------------------------------------------------------------------------
网络编程开发必看下面的
------------------------------------------------------------------------------
如果说只是了解网络基础知识看看上面3本即可,但是要想做开发一定要看下面的
《TCP/IP详解》三卷本,《用TCP/IP进行网际互连》三卷本,《TCP/IP指南》+《IPv6》四卷本
其中TCP/IP详解的作者还写了另外2本经典著作,《Unix环境高级编程》,《Unix网络编程》
作者W.Richard Stevens个人网站 http://www.kohala.com/
大师作品部部经典,可惜1999年去另一个世界维护Unix了。。。。。。。。。
说明:搞Linux网络编程的,想学TCP/IP的一定要看大师W.Richard Stevens这六本书,基本上六本书看完基础也就搭好了。
W.Richard Stevens(1951-1999),国际知名的UNIX和网络专家,受人人尊敬的作家。他的著作有《UNIX网络编程》(两卷本),《UNIX环境高级编程》,《TCP/IP详解》(三卷本)等,同时他还是广受欢迎的教师和顾问。
一位朋友说:“Stevens的书一定要全部认真地去读的。”我想他是对的。最后,对Stevens在天英灵说声:谢谢您!想必这时他正坐在上帝身边,继续从事他的写作。
W. Richard Stevens Biography
http://www.kohala.com/start/bio1.html
W. Richard Stevens' Home Page
http://www.kohala.com/start/
W. Richard Stevens on Wikipedia
http://en.wikipedia.org/wiki/W._Richard_Stevens
Guru of the Unix gurus
http://archive.salon.com/tech/feature/2000/09/01/rich_stevens/index.html
----------------------------------------------------------------------------------------------------------------------------------------------------------------
《用TCP/IP进行网际互连第一卷:原理、协议与结构(第五版)》
《用TCP/IP进行网际互连第二卷——设计、实现与内核》
《用TCP/IP进行网际互连第三卷:客户-服务器编程与应用(Linux/POSIX套接字版)》
说明:这个系列也是三卷本,和《TCP/IP详解》三卷本一样也是经典,区别是 网际互联 偏重理论而 详解偏重实际。
----------------------------------------------------------------------------------------------------------------------------------------------------------------
如果你看了上面2套TCP/IP的书6本还不尽兴,还有一套书可以作为提高或者查缺补漏
虽然与W.Richard Stevens TCP/IP详解 有一定的差距,但仍不失为下一代IPv6网络的参考工具书,值得收藏学习
----------------------------------------------------------------------------------------------------------------------------------------------------------------
《Pattern-Oriented Software Architecture Volume 2: Patterns for Concurrent and Networked Objects》以下简称POSA2
这本书总结了开发并发网络服务程序的模式,是对UNP很好的补充。UNP中的代码往往把业务逻辑和Sockets API调用混在一起,代码固然短小精悍,但是这种编码风格恐怕不适合开发大型的网络程序。POSA2强调模块化,网络通信交给library/framework去做,程序员写代码只关注业务逻辑,这是非常重要的思想。阅读这本书对于深入理解常用的event-driven网络库(libevent、Java Netty
、Java Mina、Perl POE、Python Twisted等等)也很有帮助,因为这些库都是依照这本书的思想编写的。
POSA2的代码是示意性的,思想很好,细节不佳。其C++代码没有充分考虑资源的自动化管理(RAII),如果直接按照书中介绍的方式去实现网络库,那么会给使用者造成不小的负担与陷阱。换言之,照他说的做,而不是照他做的学。
---------------------------------------------------------------------------------------------------------------------------------------------------------------
《TCP/IP协议族(第4版)》
比TCP/IP详解要容易理解一些,并且图文并茂是本书的一大特色,还有就是举得例子比较多,有助于读者理解概念性的东西,给人感觉不是特别枯燥。总之,这本书适合初学者,而TCP/IP详解适合有一定网络方面基础的人。
----------------------------------------------------------------------------------------------------------------------------------------------------------------
《TCP/IP协议原理与应用(第3版)》
写的非常好,建议一定要买!可作入门,但即使是高手,也应看看,学习作者分析问题的方法和思想。其实是无数次印刷了,经典不能错过。
----------------------------------------------------------------------------------------------------------------------------------------------------------------
《TCP/IP高效编程 : 改善网络程序的44个技巧》
很明显属于技巧类的书,同样这本书很老,但是还是很有参考价值,这本书中大量出现Unix网络编程的提示,可以作为其补充。
----------------------------------------------------------------------------------------------------------------------------------------------------------------
《TCP/IP路由技术》
思科出的
这本书主要在讲内部路由协议,有RIP、RIPV2、RIPng、IGRP、EIGRP、OSPF、IS-IS协议,详实的描述了基本上现在主要的内部网关协议的工作原理,它们的优点与不足,以及配置方法(基于CISCO 路由器产品)和排错等。本书称不上非常的通俗,但是在有一定的基础的情况下还是比较容易看懂的。本书是世面上极少见的讲述内部网关路由技术的经典书籍,内容极为丰富。对于想清楚的了解内部网关协议的工作原理以及想探究网络通信事物的本质的人来说是一本不可或缺的好书。
----------------------------------------------------------------------------------------------------------------------------------------------------------------
《精通Linux内核网络》
讨论Linux 内核网络栈的实现及其原理,深入而详尽地分析网络子系统及其架构,主要内容包括:内核网络基础知识、Netlink 套接字、ARP、邻居发现和ICMP 等重要协议的实现、IPv4 和IPv6 的深入探索、Linux 路由选择、Netfilter 和IPsec 的实现、Linux 无线网络、InfiniBand 等。
《精通Linux内核网络》不仅适合从事网络相关项目的专业人员参考,也能为相关研究人员和学生提供极大帮助。