具体描述
《TCP/IP详解·卷2:实现》完整而详细地介绍了TCP/IP协议是如何实现的。书中给出了约500个图例,15000行实际操作的C代码,采用举例教学的方法帮助你掌握TCP/IP实现。《TCP/IP详解·卷2:实现》不仅说明了插口API和协议族的关系以及主机实现与路由器实现的差别。还介绍了4.4BSD-Lite版的新的特点。《TCP/IP详解·卷2:实现》适用于希望理解TCP/IP协议如何实现的人,包括编写网络应用程序的程序员以及利用TCP/IP维护计算机网络的系统管理员。
海报:
作者简介
目录信息
1.1 引言
1.2 源代码表示
1.3 历史
1.4 应用编程接口
1.5 程序示例
1.6 系统调用和库函数
1.7 描述符
1.8 网络实现概述
1.9 mbuf与输出处理
1.10 输入处理
1.11 网络实现概述
1.12 中断级别与并发
1.13 源代码组织
1.14 测试网络
1.15 小结
第二章 mduf:存储器缓存
2.1 引言
2.2 代码介绍
2.3 mduf的定义
2.4 mduf结构
2.5 简单的mduf宏和函数
2.6 m_devget和m_pullup函数
2.7 mduf宏和函数的小结
2.8 Net/3联网数据结构小结
2.9 m_copy和簇引用记数
2.10 其他选择
2.11 小结
第三章 接口层
3.1 引言
3.2 代码介绍
3.3 ifnet结构
3.4 ifaddr结构
3.5 sockaddr结构
3.6 ifnet与ifaddr的专用化
3.7 网络初始化概述
3.8 以太网初始化
3.9 SLIP初始化
3.10 环回初始化
3.11 if_attach函数
3.12 ifinit函数
3.13 小结
第四章 接口:以太网
4.1 引言
4.2 代码介绍
4.3 以太网接口
4.4 ioctl系统调用
4.5 小结
第五章 接口:SLIP和环回
5.1 引言
5.2 代码介绍
5.3 SLIP接口
5.4 环回接口
5.5 小结
第六章 IP编址
6.1 引言
6.2 代码介绍
6.3 接口和地址小结
6.4 sockaddr_in结构
6.5 in_ifaddr结构
6.6 地址指派
6.7 接口ioctl处理
6.8 internet实用函数
6.9 ifnet实用函数
6.10 小结
第七章 域和协议
7.1 引言
7.2 代码介绍
7.3 domain结构
7.4 protosw结构
7.5 IP的domain和protosw结构
7.6 pffindproto和pffindtype函数
7.7 pfctlinput函数
7.8 IP初始化
7.9 sysctl系统调用
7.10 小结
第八章 IP:网际协议
8.1 引言
8.2 代码介绍
8.3 IP分组
8.4 输入处理:ipintr函数
8.5 转发:ip_forward函数
8.6 输出处理:ip_output函数
8.7 Internet检验和:in_cksum函数
8.8 setsockopt和getsockopt系统调用
8.9 ip_sysctl函数
8.10 小结
第九章 IP选项处理
9.1 引言
9.2 代码介绍
9.3 选项格式
9.4 ip_dooptions函数
9.5 记录路由选项
9.6 源站和记录路由选项
9.7 时间戳选项
9.8 ip_insertoptions函数
9.9 ip_pcbopts函数
9.10 一些限制
9.11 小结
第十章 IP的分片与重装
10.1 引言
10.2 代码介绍
10.3 分片
10.4 ip_optcopy函数
10.5 重装
10.6 ip_optcopy函数
10.7 ip_slowtimo函数
10.8 小结
第十一章 ICMP:Internet控制报文协议
第十二章 IP多播
第十三章 IGMP:Internet组管理协议
第十四章 IP多播选路
第十五章 插口层
第十六章 插口I/O
第十七章 插口选项
第十八章 Radix树路由表
第十九章 选路请求和选路消息
第二十章 选路接口
第二十一章 ARP:地址解析协议
第二十二章 协议控制块
第二十三章 UDP:用户数据报协议
第二十四章 TCP:传输控制协议
第二十五章 TCP的定时器
第二十六章 TCP输出
第二十七章 TCP的函数
第二十八章 TCP的输入
第二十九章 TCP的输入(续)
第三十章 TCP的用户需求
第三十一章 BPF:BSD分组过滤程序
第三十二章 原始IP
结束语
附录A 部分习题的解答
附录B 源代码的获取
附录C RFC 1122的有关内容
参考文献
· · · · · · (收起)
读后感
第一本书看了三个礼拜吧, 这里是读后感,http://blog.meecoder.com/archives/306 这两天开始看第二卷,看得云里雾里的。 最好结合linux的源码来看,花时间看。 十分推荐。
这本书如果看透了 也就基本掌握了关于linux内核下 /source/net/ipv4 相关的内容了 作者在800面中讲述了如此多复杂的内容 可见其深厚的技术功底 如果你一定有一本书要买 那就买这本吧 虽然他有电子版 但我可以保证 这是一本相当牛逼的书 里面的任何一面都印上了黄金
第一卷还是比较容易的,第二卷就有一定难度了,第三卷还压在一大堆书的底部没看。额~~~~~不知道牛年马月才能看完这三卷
这本书如果看透了 也就基本掌握了关于linux内核下 /source/net/ipv4 相关的内容了 作者在800面中讲述了如此多复杂的内容 可见其深厚的技术功底 如果你一定有一本书要买 那就买这本吧 虽然他有电子版 但我可以保证 这是一本相当牛逼的书 里面的任何一面都印上了黄金
用户评价
翻开这本《TCP/IP详解 卷2:实现》,我立刻感觉到一股扑面而来的技术气息。这不是一本会用大量生动比喻或者趣味故事来讲解的网络知识的书,它更像是一份精心打磨的工程手册,旨在深入剖析TCP/IP协议栈在操作系统层面的具体实现。我之前在学习网络编程的时候,经常会遇到一些非常诡异的问题,比如连接中断、数据丢失,或者性能突然下降,而往往在查阅资料时,发现很多解释都停留在理论层面,无法提供根本性的解决方案。我希望这本书能够填补这个空白,它能够通过讲解内核数据结构、系统调用、以及重要的算法在实际代码中的应用,来帮助我理解这些问题的根源。我尤其关心书中是否会详细描述TCP状态机的实现细节,以及TCP的捎带确认、快速重传、拥塞控制等关键机制在内核中的具体代码逻辑。如果能看到一些与Linux网络子系统相关的实现细节,那对我来说将是无价之宝。
这本书的题目本身就充满了挑战性,我一直认为,真正理解一个协议,不是看它定义了什么,而是看它如何在现实世界中被实现出来。卷二“实现”这两个字,让我对这本书充满了期待,因为我总觉得,很多关于网络协议的理论知识,如果脱离了实际的落地,就显得有些空洞。我渴望了解,在操作系统内部,TCP/IP协议栈的各个层是如何协同工作的,数据包是如何在用户空间和内核空间之间流转的,以及那些看似简单的网络API背后,究竟隐藏着多少复杂的工程逻辑。例如,我一直想弄清楚,TCP的发送缓冲区和接收缓冲区是如何在内核中实现的,它们的大小是如何管理的,以及TCP的滑动窗口机制是如何体现在这些缓冲区中的。这本书的厚度预示着它内容的深度,我希望它能让我看到那些关于网络协议实现的“幕后故事”,让我在面对复杂网络问题时,能够有更清晰的洞察力,并找到更有效的解决方案。
这本书的名字听起来就很有分量,让人联想到那些厚重的技术宝典。我拿到手的时候,着实被它的体积惊了一下,感觉像抱了一块砖头,但这种厚实感反而带来一种莫名的安心——这肯定是一本内容极其详таки的书。我一直对网络通信的底层原理颇感兴趣,尤其是TCP/IP协议栈,感觉那是互联网得以运转的基石。读过一些基础的书,但总觉得隔靴搔痒,不够深入。卷二“实现”这个副标题,更是直接击中了我内心深处的需求,我渴望了解那些协议是如何在真实的系统中被构建出来,那些精妙的设计如何在代码和硬件中落地。想象一下,能够透彻地理解数据包如何在网络接口卡上被发送和接收,TCP连接是如何建立、维持和关闭,UDP又是如何工作的,还有那些路由算法在实际网络中的运作机制……这些都是我一直梦寐以求想要弄明白的。这本书的排版和图示看起来也很专业,不是那种潦草的堆砌,而是经过精心设计的,希望能帮助我更直观地理解那些抽象的概念。我已经迫不及待地想翻开它,让那些复杂的细节在我眼前一一展开,一步步揭开TCP/IP实现的神秘面纱。
拿到这本书,我第一反应是,这绝对不是给初学者看的入门读物。封面的设计就透着一股严谨和专业,字体和排版都散发着一种老派技术书籍的沉稳气质。我最近在做一个网络相关的项目,遇到了不少棘手的性能瓶颈,总觉得现有的知识体系无法解决问题,需要更深层次的理解。我听说了TCP/IP系列的大名,尤其是这本“实现”卷,听说里面涵盖了大量关于操作系统内核如何处理网络协议的细节,包括数据结构的实现、算法的优化等等。这正是我目前最需要的,我希望能够从这本书中找到解决我项目瓶颈的灵感,甚至直接找到代码级别的解决方案。我想深入了解TCP的拥塞控制算法是如何在内核层面实现的,它如何根据网络状况动态调整发送速率,还有那些在网络设备驱动层面的工作原理,比如网卡如何进行中断处理,数据包如何在DMA(直接内存访问)的帮助下高效传输。我甚至想看看书中是否有关于一些高级网络特性的实现,比如负载均衡、流量整形等等。这本书的厚度也让我放心,这绝对是一本可以啃上很久的宝藏,内容不会浅尝辄止。
我一直觉得,要真正掌握一项技术,光是理解概念是不够的,必须了解它的“实现”。就好像学做菜,只知道菜名和基本食材是不够的,还得知道火候、调味、烹饪手法这些细节。“TCP/IP详解 卷2:实现”这个书名,就精准地击中了我的这种需求。我想要知道,那些我们在概念层面了解的TCP/IP协议,在实际的操作系统中是如何被转化成可执行的代码,如何与硬件交互,如何处理成千上万的并发连接。这本书我期待它能够揭示那些隐藏在API调用背后的复杂逻辑,例如,当我们调用send()函数时,背后到底发生了多少层数据的封装、校验和传输。我也想了解,在Linux这样的主流操作系统中,网络栈的模块化设计是如何进行的,各个组件之间是如何协作的。另外,对于性能优化来说,理解实现的细节至关重要。这本书是否会提供一些关于性能调优的思路,例如如何通过调整内核参数来改善网络吞吐量和延迟?这些都是我非常期待在书中找到答案的。
中文翻译太差
最重要的是如此复杂的设计居然能用
#无可奈何花落去,bsd 版本的 已经更不上时代了, 不会再读了
还行,感觉没用到这么深入
#手册你是读不完的