Network(计算机网络)

本节主要参考陈硕的网络编程学习经验,特此鸣谢,后文附原文链接及文档。

初阶读物

  • 中文书名:计算机网络:自顶向下方法,从应用层着手介绍计算机网络,例子也比较生动,适合入门科普(想深入学习的建议直接从底下Stevens的书籍入手)。中文译作质量不错,Andrew S. Tanenbaum的 Computer Networks 则是自下而上介绍计算机网络的,两本书行文风格差异较大,个人推荐 James F.Kurose 的 Computer Networking: A Top-Down Approach
  • TCP/IP Illustrated Volumn 1 - Stevens 的经典技术书籍,是网络编程方面必读的入门经典。第三版有较大改动(此时Stevens已故),第三版中的TCP部分值得关注,其他章节阅读第二版即可,第二版部分章节的内容已经十分陈旧,不必阅读。
  • TCP/IP Illustrated, Vol. 1: The Protocols - 上述书籍的附加资源链接。

进阶

高阶

  • Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked Objects - 总结了开发并发网络服务程序的模式,对UNP是很好的补充。书中强调模块化,业务逻辑和网络通信解耦。代码仅供参考,主要看思想。
  • TCP/IP Illustrated, Vol. 2: The Implementation - 与现有的Linux相差较大,陈硕的网站上有对Linux下用户态的实现。主要看TCP部分的实现即可。

其它补充