先要学习网络知识才谈得上编程
讲述计算机网络的最经典的当属Andrew S.Tanenbaum的《计算机网络》第五版,这本书难易适中。
《计算机网络(第5版)》是国内外使用最广泛、最权威的计算机网络经典教材。
眼下已经是第五版,本书作者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个人站点
大师作品部部经典,可惜1999年去还有一个世界维护Unix了。
。。
。。
。。。。
说明:搞Linux网络编程的,想学TCP/IP的一定要看大师W.Richard Stevens这六本书。基本上六本书看完基础也就搭好了。
W.Richard Stevens(1951-1999)。国际知名的UNIX和网络专家。受人人尊敬的作家。
他的著作有《UNIX网络编程》(两卷本)。《UNIX环境高级编程》。《TCP/IP具体解释》(三卷本)等,同一时候他还是广受欢迎的教师和顾问。
Stevens先生1951年生于赞比亚,早年,他就读于美国弗吉尼亚州的费什本军事学校。后获得密歇根大学学士、亚利桑那大学系统project硕士和博士学位。
他曾就职于基特峰国家天文台,从事计算机编程。
Stevens先生不幸病逝于1999年9月1日。他的离去是计算机界的巨大损失。 W. Richard Stevens对我们这些学习Unix/Linux的程序猿的影响是巨大的,每每捧读老先生的书都会被感动,不仅被他那丰富的知识所折服,更是被他那一丝不苟,严谨治学的态度所倾倒。“他不清楚的,他下决心要弄明确。他知道的,他要努力传授给全部感兴趣的人们!”这就是我们的Stevens!
一生能有其一部力作可谓无憾矣。而况七部乎?
一位朋友说:“Stevens的书一定要所有认真地去读的。”我想他是对的。
最后,对Stevens在天英灵说声:谢谢您!想必这时他正坐在上帝身边,继续从事他的写作。
W. Richard Stevens Biography W. Richard Stevens' Home Page W. Richard Stevens on Wikipedia Guru of the Unix gurus
----------------------------------------------------------------------------------------------------------------------------------------------------------------
《用TCP/IP进行网际互连第一卷:原理、协议与结构(第五版)》
《用TCP/IP进行网际互连第二卷——设计、实现与内核》
《用TCP/IP进行网际互连第三卷:客户-server编程与应用(Linux/POSIX套接字版)》
说明:这个系列也是三卷本,和《TCP/IP具体解释》三卷本一样也是经典,差别是 网际互联 偏重理论而 具体解释偏重实际。
----------------------------------------------------------------------------------------------------------------------------------------------------------------
假设你看了上面2套TCP/IP的书6本还不尽兴,另一套书能够作为提高或者查缺补漏
尽管与W.Richard Stevens TCP/IP具体解释 有一定的差距,但仍不失为下一代IPv6网络的參考工具书,值得收藏学习
----------------------------------------------------------------------------------------------------------------------------------------------------------------
《TCP/IP协议族(第4版)》
比TCP/IP具体解释要easy理解一些,而且图文并茂是本书的一大特色,还有就是举得样例比較多。有助于读者理解概念性的东西。给人感觉不是特别枯燥。
总之,这本书适合刚開始学习的人,而TCP/IP具体解释适合有一定网络方面基础的人。
----------------------------------------------------------------------------------------------------------------------------------------------------------------
《TCP/IP协议原理与应用(第3版)》
写的很好,建议一定要买!
可作入门,但即使是高手。也应看看,学习作者分析问题的方法和思想。
事实上是无数次印刷了,经典不能错过。
----------------------------------------------------------------------------------------------------------------------------------------------------------------
《TCP/IP高效编程 : 改善网络程序的44个技巧》
非常明显属于技巧类的书。相同这本书非常老,可是还是非常有參考价值。这本书中大量出现Unix网络编程的提示,能够作为其补充。
----------------------------------------------------------------------------------------------------------------------------------------------------------------
《TCP/IP路由技术》
思科出的
这本书主要在讲内部路由协议,有RIP、RIPV2、RIPng、IGRP、EIGRP、OSPF、IS-IS协议。详实的描写叙述了基本上如今基本的内部网关协议的工作原理。它们的长处与不足,以及配置方法(基于CISCO 路由器产品)和排错等。本书称不上很的通俗。可是在有一定的基础的情况下还是比較easy看懂的。本书是世面上极少见的讲述内部网关路由技术的经典书籍。内容极为丰富。对于想清楚的了解内部网关协议的工作原理以及想探究网络通信事物的本质的人来说是一本不可或缺的好书。
----------------------------------------------------------------------------------------------------------------------------------------------------------------
《linux网络体系结构:linux内核中网络协议的设计与实现》
出版社: 清华大学出版社
装帧: 平装出版年: 2006-7又名: The Linux Network Architecture: Design and Implementation of Network Protocols in the Linux Kernel书名: Linux网络体系结构 说明:翻译的非常不好,建议看原版,能够下电子版。一本在kernel实现网络功能的基础书籍,不妨看英文版的。翻译的实在太烂了。有条件的还是看原版吧。没办法啊。中国的此类书籍基本上落后老美3-4年。结合linux源码分析一书收获很多其它。一并把内核结构和各功能在内核中的关系也搞清楚了。
----------------------------------------------------------------------------------------------------------------------------------------------------------------
本人写的另外系列,配合一起看效果更好,由于C语言是语言,还须要到实际环境Linux中去用,而Linux环境下网络编程自然须要TCP/IP的知识: