深入浅出Linux TCP/IP协议栈
深入浅出Linux TCP/IP协议栈封面图

深入浅出Linux TCP/IP协议栈

罗钰, 编著

出版社:人民邮电出版社

年代:2009

定价:39.0

书籍简介:

本书主要对Linux2.6.18内核协议栈源代码做了一些基本的分析,这些分析基于作者在操作系统研究和网络协议开发过程中的经验和笔记,发表这篇文章主要是使读者能够在尽可能短的时间掌握Linux内核协议栈的工作机理,为移植和扩展协议栈打下基础。

书籍目录:

第1章操作系统、网络、协议栈、代码1

1.1Linux操作系统介绍2

1.1.1Linux操作系统架构简介2

1.1.2网络协议发展介绍3

1.2本书的组织和安排7

1.2.1基本的数据结构和计算机术语8

1.2.2图片风格演示10

1.2.3本书的组织11

第2章内核系统初始化14

2.1系统初始化流程简介15

2.2内核文件解读19

2.2.1ELF文件格式19

2.2.2LinkScripts知识22

2.2.3Linux内核镜像解析23

2.3中断及任务调度管理32

2.3.1中断及软中断模型32

2.3.2各种语境下的切换43

2.3.3内核下的同步与互斥44

2.3.4各种异步手段47

2.4虚拟文件系统49

2.5网络协议栈各部分初始化52

2.5.1网络基础系统初始化53

2.5.2网络内存管理54

2.5.3网络文件系统初始化63

2.5.4网络协议初始化65

2.5.5初步了解路由系统74

2.6Linux设备管理75

2.6.1底层PCI模块的初始化78

2.6.2网络设备接口初始化例程80

第3章配置网络系统92

3.1配置过程分析93

3.1.1配置是如何下达到内核的?93

3.1.2socket系统调用95

3.1.3ioctl代码的实现104

3.1.4loopback接口的配置过程113

3.1.5IP别名的实现115

3.2回顾FIB系统初始化119

3.3深入FIB系统122

3.4FIB系统发生了什么样的变化132

3.5直接访问路由表149

3.6接口状态变化的处理过程151

第4章网络层实现的初步研究154

4.1从ping127.0.0.1开始旅程155

4.2再次相遇Socket系统调用157

4.3IP数据报文格式158

4.4send系统调用159

4.5在路由系统中游历164

4.5.1查找出口164

4.5.2当目的地址是远端主机时177

4.5.3创建对应路由cache表项180

4.5.4创建对应邻居表项184

4.6回到发送的路径189

4.6.1IP层发送过程189

4.6.2揭密hh_cache193

4.7ARP的作用202

4.7.1ARP的机制202

4.7.2ARP报文格式203

4.7.3LinuxARP协议的实现204

4.8到达设备驱动层219

4.8.1数据链路层帧格式219

4.8.2Loopback设备的发送过程224

4.9接收过程:从中断到路由系统225

4.10ICMP240

4.10.1ICMP报文格式241

4.10.2ping本机地址及回环地址242

4.10.3ping外部地址243

4.11从内核到用户249

第5章传输层实现的研究253

5.1进一步到UDP254

5.1.1UDP用户代码254

5.1.2UDP数据报文格式255

5.1.3服务器端bind的实现255

5.1.4接收代码261

5.1.5释放UDP的socket264

5.2更高阶的TCP266

5.2.1TCP用户代码266

5.2.2TCP数据报文格式266

5.2.3TCP栈及socket的初始化268

5.2.4服务器端bind和listen的实现271

5.2.5服务器端accept的实现276

5.2.6客户端connect的实现发起三次握手278

5.2.7TCP报文的接收286

5.2.8三次握手的实现291

5.2.9内核收到报文转到用户态295

5.2.10释放TCP的socket300

5.3TCP拥塞控制303

5.3.1TCP拥塞控制机制介绍305

5.3.2Linux内核拥塞控制功能的实现307

第6章Select系统调用的实现机制310

6.1如何使用select312

6.2Select的内核实现313

第7章数据链路层协议实现318

7.1基本的2层知识319

7.2Linux桥实现的基本框架320

7.3VLAN321

7.3.1VLAN概念321

7.3.2Linux下VLAN存在巨大的缺陷323

7.4LACP协议330

7.4.1聚合端口简介330

7.4.2LACP在Linux中的实现333

7.52层功能总结339

后记341

参考文献342

内容摘要:

  本书共分七章,首先介绍了内核源码的整体概况及协议栈初始化过程,然后结合配置、用户使用协议栈的方法,采取深入浅出、由上及下的策略对协议栈的代码进行了分解和注释。最后还介绍了通信界里较流行的VLAN技术和LACP协议。  本书主要对Linux2.6.18内核协议栈源代码做了一些基本的分析,这些分析基于作者在操作系统方面的研究和网络协议开发过程中的经验和笔记,编写本书的目的主要是使读者能够在尽可能短的时间内掌握Linux内核协议栈的工作机理,为移植和扩展协议栈打下基础。  本书首先介绍了内核源码的整体概况及协议栈初始化过程,然后结合配置、用户使用协议栈的方法,采取深入浅出、由上及下的策略对协议栈的代码进行了分解和注释。最后还介绍了通信界里较流行的VLAN技术和LACP协议。  本书适合Linux网络开发人员以及对Linux内核感兴趣的读者阅读。【作者简介】  罗钰:贵州人,国防科学技术大学硕士毕业,多年Linux底层开发经验,精通软件分析与设计、TCP/IP协议,曾开发Windows/Linux/Vxworks/FreeBSD等平台的设备驱动,开发过以太网芯片驱动、二层协议以及OSPF路由协议,对MPLS架构设计有非常丰富的经验,擅长编译器、CPU技术,近年来一直致力于无线网络产品系统的分析与设计工作。

书籍规格:

书籍详细信息
书名深入浅出Linux TCP/IP协议栈站内查询相似图书
9787115216274
如需购买下载《深入浅出Linux TCP/IP协议栈》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN
出版地北京出版单位人民邮电出版社
版次1版印次1
定价(元)39.0语种简体中文
尺寸26 × 19装帧平装
页数 150 印数 3500

书籍信息归属:

深入浅出Linux TCP/IP协议栈是人民邮电出版社于2009.12出版的中图分类号为 TN915.04 ,TP316.89 的主题关于 Linux操作系统 ,计算机网络-通信协议 的书籍。