深入理解LINUX网络技术内幕
2009-6
中国电力
Christian Benvenuti
996
无
Linux如此的流行正是得益于它的特性丰富并有效的网络协议栈。如果你曾经惊叹于Linux能够实现如此复杂的工作,或者你只是想通过现实中的例子学习现代网络,《深入理解Linux网络内幕》将会给你指导。 同其他O'Reilly的流行书籍一样,《深入理解Linux网络内幕》清楚地阐述了网络的基本概念,并指导你如何用C语言实现。虽然早先的TCP/IP经验是有用的,但初学者通过本书仍然可以学习到协议本身和大量的应用信息。一旦彻底掌握了这些网络工具,你就可以使用本书所附的代码,准确地指出Linux内核中最重要的部分如何工作。 网络功能的实现或破坏在不同的时候是由不同的代码块完成的,这正是理解网络和实现它的难点中的一部分。本书的成功之一就是描述这些代码块如何集成,以及众多的函数和数据结构之间的关系。《深入理解Linux网络内幕》不仅描述了Linux网络的全貌,而且是理解Linux网络细节的有效指南。
Christian Benvenuti是一个专注于操作系统网络的设计者。他在书中不仅解释了Linux代码如何工作,还阐述了主要网络特性的目的以及在不同解决方案间是如何抉择的。书中还包含了大量的流程图和其他图表以帮助读者理解。
前言第一部分 基础背景 第一章 简介 基本术语 常见编码模式 用户空间工具 浏览源代码 当功能以补丁形式提供时 第二章 关键数据结构 套接字缓冲区:sk—buff结构 net—device结构 本章涉及的文件 第三章 用户空间与内核的接 概论 procfs与sysctl ioctl Netlink 配置改变串行化第二部分 系统初始化 第四章 通知链 使用通知链的原因 概论 定义链 链注册 链上的通知事件 网络子系统的通知链 通过/proc文件系统的调整 本章涉及的函数和变量 本章涉及的文件和目录 第五章 网络设备初始化 系统初始化概论 设备注册和初始化 NIC初始化的基本目标 设备与内核之间的交互 初始化选项 模块选项 设备处理层初始化:net—dev—init 用户空间辅助程序 虚拟设备 通过/proc文件系统调整 本章涉及的函数和变量 本章涉及的文件和目录 第六章 PCI层和网络接口卡 本章涉及的数据结构 PCI NIC设备驱动程序的注册 电源管理和网络唤醒 PCI NIC驱动程序注册范例 大蓝图 通过/proc文件系统调整 本章涉及的函数和变量 本章涉及的文件和目录 第七章 组件初始化的内核基础架构 引导期间的内核选项 模块初始化代码 优化宏卷标 引导期间初始化函数 内存最优化 通过/proc文件系统调整 本章涉及的函数和变量 本章涉及的文件和目录 第八章 设备注册和初始化 设备注册之时 设备除名之时 分配net—device结构 NIC注册和除名的架构 设备初始化 net—device结构的组织 设备状态 设备的注册和除名 设备注册 设备除名 开启和关闭网络设备 更新设备队列规则状态 从用户空间配置设备相关信息 虚拟设备 上锁 通过/proc文件系统调整 本章涉及的函数和变量 本章涉及的文件和目录第三部分 传输和接收 第九章 中断和网络驱动程序 决策和流量方向 接收到帧时通知驱动程序 中断处理函数 softnet—data结构 第十章 帧的接收 与其他功能交互 设备的开启和关闭 队列 通知内核帧已接收:NAPI和netif_rx 设备驱动程序与内核问的IB接口:netif_rx的第一部分 拥塞管理 处理NET_RX_SOFTIRQ:net_rxa_ction 第十一章 帧的传输 传输的开启和关闭 第十二章 中断事件一般性参考数据 统计数据 通过/proc和sysfs文件系统调整 本部分涉及的函数和变量 本部分涉及的文件和目录 第十三章 协议处理函数 网络协议栈概论 执行正确的协议处理函数 协议处理函数的组织 协议处理函数的注册 Ethernet与IEEE 802.3帧 通过/proc文件系统进行调整 本章涉及的函数和变量 本章涉及的文件和目录第四部分 桥接 第十四章 桥接:概念 中继器、网桥以及路由器 网桥与交换机 主机 用网桥合并LAN 桥接不同技术的LAN 地址学习 多台网桥 第十五章 桥接:生成树协议 基本术语 阶层交换式L2拓扑范例 生成树协议的基本元素 网桥ID和端口ID 网桥协议数据单元(BPDU) 定义活跃拓扑 定时器 拓扑变化 BPDU封装 传输配置BPDU 处理入口帧 收敛时间 新版生成树协议概况 第十六章 桥接:Linux实现 网桥设备抽象 重要的数据结构 桥接程序的初始化 建立网桥设备和网桥端口 建立一个新网桥设备 阿桥设备设置函数 删除网桥 给网桥添加端口 启动和关闭网桥设备 启动和关闭网桥端口 改变网桥端口状态 大蓝图 转发数据库 处理入口流量 网桥设备上的传输 生成树协议(STP) netdevice通知链 第十七章 桥接:其他主题 用户空间配置工具 通过/proc文件系统调整网桥 通过/sys文件系统调整网桥 统计数据 本部分涉及的数据结构 本部分涉及的函数和变量 本部分涉及的文件和目录第五部分 因特网协议第4版(IPv4)第六部分 邻居子系统第七部分 路由
无
Linux如此的流行正是得益于它的特性丰富并有效的网络协议栈。如果你曾经惊叹于Linux能够实现如此复杂的工作,或者你只是想通过现实中的例子学习现代网络,《深入理解Linux网络内幕》将会给你指导。
同其他O\'Reilly的流行书籍一样,《深入理解Linux网络内幕》清楚地阐述了网络的基本概念,并指导你如何用C语言实现。虽然早先的TCP/IP经验是有用的,但初学者通过本书仍然可以学习到协议本身和大量的应用信息。一旦彻底掌握了这些网络工具,你就可以使用本书所附的代码,准确地指出Linux内核中最重要的部分如何工作。
网络功能的实现或破坏在不同的时候是由不同的代码块完成的,这正是理解网络和实现它的难点中的一部分。本书的成功之一就是描述这些代码块如何集成,以及众多的函数和数据结构之间的关系。《深入理解Linux网络内幕》不仅描述了Linux网络的全貌,而且是理解Linux网络细节的有效指南。
经典大部头计算机技术书籍了,O'REILLY出版,绝对精品,当要深入理解LINUX网络技术,这绝对是你的选择
这本书对我学习Linux网络内幕有太大帮助了
太经典的一本书,强烈推荐
Linux网络经典,获益匪浅。当然是和珍藏。
很经典的linux网络书箱,适合相关专门人事使用.有实践条件的,多看,多实践
学linux网络的兄弟们,值得一看
是LINUX程序人员的必备之选
正是我想要的,网络这块本来就很复杂,难得有这样一本书讲的这么系统,细致。
非常不错的一本书,对于内核网络子系统各方面都做了分析,可以随时作为参考教材使用。
师兄推荐的,他说虽然写的一般,但是内核网络的唯一可看书籍
对学习网络技术很有帮助
值得购买,对于学习网络很有帮助
简单易懂,流程图帮助理解原理,我看了几章,感觉挺好的
看着介绍就很有内容,是一本非常深入的书籍。
书有点厚,不过很值得一看!!!继续学习中!
正在看,是专业的网络与操作系统书,适合各层次的读者。
好大好厚的一本书,老公喜欢的书,质量不错,但是对于我这种不爱看书,不爱学习的人,任何数似乎都提不起我的兴趣,他喜欢就好了~ ~
很久以前就想买的,终于入手了,很好的书!翻译的一般,最好整一本英文的,参考着看!物流挺给力!
经典书籍,值得拥有,下次还来购买
非常喜欢,研究中
书不错,不过刚买就降价,有点郁闷
书整整1000页 需要时间好好看,不过作者很细心,内容是图文并茂,很好
书一看就像正版,只是书边有点脏,好像放了好久了,但质量不错,买来珍藏~
入门教程,值得拥有。学习了
好好学习提高自身的知识。
这本书我从翻起来看的时候就觉得非常适合我阅读,
出略看了下,有好些都是不太懂的,可以好好研究下。
别人推荐的,无论如何也要看
刚买回来就用上了,不错,以后要好好看啦
太厚了,估计要比较长的时间才能看完!!
写的很详细,先看了下开头第一章,感觉是本好书。要有C基础。C没学全的先学C。从理论到范例,都有了。
霸气侧漏
科技股环境 结婚 ‘
还不错,挑错也是一种乐趣,纸的质量不错。
帮朋友买的 讲解的很好他说
很好,唯独对菜鸟说有点难度
很不错,容易看的懂!
很不错,符合预期的效果。
linux网络功能强大,对各方面都是锻炼,比如编程啊,ip协议族的理解啊
该书对网络协议的原理和linux实现都讲述的很清楚。
看了Uninx高级网络编程,感觉里面深层的东西都没有将清楚,希望此书给力
本书质量还不错,在网络相关方面讲解覆盖比较全
刚看了一部分,但杂七杂八的内容比较多
书不错, 很棒, 值得购买
书的质量还是不错的,就是翻译的内容。。。
之前都是借我同事的书来看,今天终于拿到手了,不错
本书比较难懂
这本书非常实用,好厚啊,要看上一阵子了,非常好
这本书内容比较深,得有一定的基础才能看懂
写的比较详细,不错。
书页质量很好,内容还没有看。
还没看内容,但是感觉翻译的水平很不到位,美式国语--
好书啊 。。。
有很多对内核术语的翻译不当,如spin_lock被译成回转锁,critical section被译成关键节区,non-reentrant被译成非可再进入的,optional kernel fea***es被译成选用的内核功能,nice priority被译成仁慈优先级,不一一列举。这些术语现在都已有成熟、公认的译法,而且在《linux设备驱动》和《深入理解linux内核》二书中有现成的参考。这个翻译质量,相对译本与原本的差价,让人难言满意。
感觉参与翻译的人没有读过一些linux的书籍,好多常用的词和大众常规用词不同,有很多对内核术语的翻译不当,看起来觉得别扭。
总体希望翻译加以改进。
这本书的翻译看起来真痛苦,不过还是能理解意思,如果能来足够,强烈建议英文版
还可以吧; 主要看bridge的实现 讲的还可以
本书的质量实在不敢让人恭维。可以说,这是我在当当上买的书中,质量最差的。希望书的内容不要出错!
不适合初学者,很难懂。。。不适合初学者,很难懂。。。
我去,怎么印刷错了,果然不能买便宜的!
这本书译的真是差!
简单的东西被他描述的不可理解!
没几句话是很通顺的,我前几天刚买,看了几章,实在看不下去了,译者的功力实在是不敢恭维,基本是生搬硬套,没有自己消化然后用贴切的语言描述出来这个过程。
我有一定的经验都如此,更何况初学者。
当然,可能有一些人能看懂,那就是看了英文版的人!
1. 2011年5月第2次印刷,修改了一些之前的错误,但依然有不少小错误2. 根据和代码的对照及书中的内容确定,此书对应的内核版本是2.6.123. 看本书的时候最好能够结合内核源码一起学习4. 翻译得不够流畅,尤其是长句翻译得不好。英语中有大量的定语从句和状语从句,个人感觉有时候这种句子应该拆开来翻成短句会更符合中国人的阅读习惯。而被动语态和主系表结构的句子也应该进行语序的调整。虽然不影响阅读和理解,但看着总是比较别扭。5. 目前还未看完,感觉是前三部分的翻译质量较差,从第四部分开始有所改善,应该不是同一个译者。6. 如果有能力,还是建议直接看英文版。如果要用中文版,也应该与英文版进行对照。但凡发现一句话看不懂,看看对应的英文就明白了。7. 书中几乎没有讲Netfilter,也没有IP v6,传输层的讲解也比较少,更多集中在1~3层。8. 书的内容还是很好的,除去翻译因素的话是本好书。前三部分中的差翻译举例:1. P31 “注意,Netfilter所需的一个新模块也随时会被写,必要时会提供无态NAT的支持。”原文“Note that a new module could be written for Netfilter at anytime to p...rovide stateless NAT support if necessary.”感觉应该译为“注意,如果需要的话任何时候都可以为Netfilter写一个新模块来提供无态NAT的支持”2. P33 “因此,sk_buff是被C预处理程序的#ifdef指示附加的字段。”原文“Therefore, sk_buff is peppered with preprocessor #ifdef directives.”pepper是胡椒粉的意思,be peppered with用来比喻到处都是所以应该译为“因此,sk_buff里到处都有C预处理指令#ifdef”3. P39 “以下是TCP子系统在段的收条中填写此结构的实例:”原文“Here is an example where the TCP subsystem fills in the structure upon receipt of a segment:”receipt在这里表示收到了一个segment,用了其名词形式,结果居然被翻译成了收条...4. P87 “通知者就是感受到一个时间并调用回呼函数的子系统”大部分地方都翻译成了回调函数,这里居然翻译成“回呼”。而且看看这句话,虽然能搞懂什么意思,可是怎么都觉得难受。5. P112 “内核中发生其他内核组件对特定事件发出通知信息,对虚拟设备而言,就如同真实设备一样,依然有其利益所在。”原文 “Notification from other kernel components about specific events taking place in the kernel are of intrerest as much to virtual devices as to real ones”感觉应该译为“如同真实设备一样,虚拟设备也同样关注内核中由其他内核组件产生的特定事件通知。”6. P151 “能力可以硬编码写入驱动程序”原文中的capabilities虽然有能力的意思,但对于设备驱动来说,应该翻译成“功能”更好一些7. P238 “函数可以被先占”原文是could be preempted,通用的翻译应该是“抢占” 阅读更多 ›
不知道什么人翻译的 简直就是外行
对网络协议的描述和实现都有体现,很好!
本书出现破损,页面是裂开的,太坑爹了这是
流水帐般的将书翻了一般,技术细节很详细,不错的参考手册
这本书, 是很久的书了, 读研的时候就出来了, 现在想买来好好看看。但是这纸张真的很劣质。 以后买书还是去书店吧。
深入理解Linux网络技术内幕,质量不错!
虽然还没看,只是大致翻了下目录,详细讲了IPV4,但是没怎么讲IPV6,可能跟TCP/IP详解会有不少重复,但这并不妨碍它是本好书
linux网络编程的经典教程,适合使用linux操作系统进行网络程序开发的程序员。
正在看,还是本不错的书
教材本身不多说了,很多学这方面的人都知道,讲的很全很透彻,适合有一定linux操作系统基础和对linux网络有基础性了解的人看。
书中没有说是基于什么linux内核版本的。翻译的没有那么差吧,不要死读文章。
中国电力的书翻译的都不是十分尽人意。当然自己水平较低也是一个因素,内容很好,都是底层内容,sock及以上的内容不涉及。
书的内容没的说,就是翻译的有点不好理解啊!
头天下午下的订单,第二天早上就到了,看了几天,书不错,但是收到书的时候有点不爽,部分地方压坏了,还有黑色的赃物
原版不错,翻译太差,需参考原文看
linux内核必读书籍之一
深入学习Linux网络内核开发必不可少的书
包装不好,书到的时候全折了!!!!
书质量不错,经典书籍,很满意
不错,喜欢,是正品!
太深奥!!
不错的好书,收藏
经典大部头