图书介绍
Linux网络体系结构 Linux内核中网络协议的设计与实现【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

- (美)威尔(Wehrle,K.)等著;汪青青,卢祖英译 著
- 出版社: 北京:清华大学出版社
- ISBN:7302130191
- 出版时间:2006
- 标注页数:489页
- 文件大小:116MB
- 文件页数:510页
- 主题词:Linux操作系统-程序设计
PDF下载
下载说明
Linux网络体系结构 Linux内核中网络协议的设计与实现PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第一篇 Linux内核2
第1章 推动因素2
1.1 Linux操作系统3
1.2 什么是Linux4
1.3 使用Linux的理由4
第2章 内核结构7
2.1 整体式体系结构和微内核8
2.2 Linux内核中的活动9
2.2.1 进程和系统调用10
2.2.2 硬件中断11
2.2.3 软件中断12
2.2.4 任务蕾12
2.2.5 下半区13
2.3 加锁——原子运算14
2.3.1 位运算15
2.3.2 环形锁16
2.3.3 读写环形锁17
2.3.4 信号量18
2.4 内核模块18
2.4.1 内核模块的管理19
2.4.3 在加载模块时传递参数21
2.4.2 模块功能的注册和注销21
2.4.4 内核符号表和模块22
2.5 设备驱动程序23
2.6 内核中的存储管理26
2.6.1 精选的存储管理函数26
2.6.2 缓存27
2.7 Linux内核中的定时28
2.7.1 标准定时器29
2.7.2 使用APIC作为高解析频率定时器30
2.8 proc文件系统33
2.9 版本化36
3.1 基于层的通信模型38
第二篇 网络实现的体系结构38
第3章 通信系统的体系结构38
3.1.1 ISO/OSI参考模型39
3.1.2 TCP/IP参考模型40
3.2 服务和协议41
第4章 管理内核中的网络报文44
4.1 套接字缓存44
4.1.1 套接字缓存上的操作48
4.1.2 其他函数53
4.2 套接字缓存队列53
第5章 网络设备57
5.1 net_device接口58
5.2 管理网络设备66
5.2.1 网络设备的注册与注销67
5.2.2 网络设备的开启与关闭69
5.2.3 创建和寻找网络设备70
5.2.4 为状态改变而设计的通知链72
5.2.5 在网络设备上进行传输73
5.3 网络设备73
5.3.1 初始化网络适配器74
5.3.2 打开和关闭网络适配器79
5.3.3 传输数据81
5.3.4 包传输过程中的问题87
5.3.5 运行时配置88
5.3.6 适配器相关的ioctl()命令89
5.3.7 网络设备的统计信息90
5.3.8 适配器层次的多播支持91
第三篇 第Ⅰ+Ⅱ层——介质访问和逻辑链路层94
第6章 数据链路层简介94
6.1 数据链路层的结构94
6.2 数据链路层上的进程96
6.2.1 数据包的接收98
6.2.2 数据包的传输100
6.3 第3层协议的管理103
第7章 串行线路Internet协议(SLIP)107
7.1 简介107
7.2 Linux内核中的SLIP实现109
7.2.1 TTY设备和线路规范109
7.2.2 一般过程111
7.2.3 函数和数据结构112
7.2.4 驱动器的初始化及连接的建立115
7.2.5 网络设备的激活及撤销116
7.2.6 拆除连接及取消驱动器的初始化116
7.2.7 IP数据包的传输116
7.2.8 IP数据包的接收117
第8章 点对点协议(PPP)118
8.1 简介118
8.1.1 子协议118
8.1.2 Linux实现的组成部分119
8.2 Linux中的PPP配置120
8.2.1 内核选项120
8.2.2 pppd—PPP守护程序121
8.2.3 Dial on Demand122
8.2.4 自动回叫122
8.3 Linux内核中的PPP实现122
8.3.1 通用PPP驱动程序的功能和数据结构122
8.3.2 异步PPP驱动程序的函数和数据结构125
8.3.3 初始化127
8.3.4 发送IP包127
8.3.5 检测帧边界127
8.3.6 接收IP包128
8.4 实现PPP守护程序129
8.4.1 管理子协议129
8.4.2 状态130
第9章 以太网上的PPP技术132
9.1 简介132
9.2 RFC 2516中的PPPOE规范132
9.3 用户空间中的实现133
9.4 Liniux内核中的实现134
9.4.1 内核的变化134
9.4.2 ppp守护程序的任务136
9.4.3 配置137
第10章 异步传输模式——ATM138
10.1 简介138
10.2 在linux中实现ATM138
10.2.1 永久性虚拟通道139
10.2.2 有信号虚拟通道142
10.2.3 ATM设备驱动程序144
10.2.4 进一步的ATM支持145
10.3 配置146
第11章 Linux中的蓝牙147
11.1 主机控制器接口(HCI)148
11.1.1 指令封包149
11.1.2 事件封包149
11.1.3 数据封包150
11.1.4 访问主机控制器接口151
11.2 L2CAP151
11.2.1 连接建立阶段152
11.2.2 配置阶段153
11.2.3 数据传输阶段153
11.3 其他协议154
第12章 透明桥155
12.1 介绍155
12.2 基本概念155
12.2.1 透明桥的属性156
12.2.2 转发函数157
12.2.3 学习功能158
12.2.4 生成树协议158
12.3 在Linux下配置桥163
12.3.1 配置内核和网络适配器163
12.3.2 用brctl工具配置Linux桥163
12.3.4 配置实例164
12.3.3 检查桥功能164
12.4 实现166
12.4.1 桥实现的体系结构166
12.4.2 生成和连接重要的数据结构167
12.4.3 包在内核中的路径168
12.4.4 学习新MAC地址170
12.4.5 实现生成树协议171
第四篇 网络层182
第13章 推动因素182
Internet协议族182
14.1.1 在路由器之间路由IP包185
14.1 IP的属性185
第14章 IPv4185
14.1.2 IP包头186
14.1.3 IP数据包的生存期188
14.1.4 Internet上的寻址188
14.1.5 IP地址和IP地址分类188
14.2 IP的实现190
14.2.1 传入IP包的路径192
14.2.2 传输层的包195
14.2.3 包的分片196
14.2.4 IP实体的数据200
14.2.5 一些IP辅助函数203
14.3 IP的选项204
14.3.1 标准IP包选项205
14.3.2 配置208
14.3.3 Linux内核中的ip_options类210
14.3.4 IP层中的IP选项212
14.4 Internet控制消息协议(ICMP)214
14.4.1 ICMP的功能原理214
14.4.2 ICMP的配置219
14.4.3 Linux内核中的ICMP219
15.1 运用地址解析协议223
第15章 地址解析协议(ARP)223
15.1.1 ARP协议数据单元的结构224
15.1.2 接收一个ARP报文并应答225
15.2 ARP命令226
15.3 实现Linux内核中的ARP实例227
15.3.1 管理ARP缓存中可达的计算机227
15.3.2 地址解析协议(ARP)的运作方式232
第16章 IP路由240
16.1 序言240
16.1.1 网络和路由器240
16.1.2 转发和路由241
16.1.3 IP地址242
16.1.4 转发步骤244
16.1.5 路由缓存245
16.1.6 基于规则的路由246
16.2 配置247
16.2.1 内核的配置247
16.2.2 proc文件系统中的文件249
16.2.3 系统层级的配置250
16.3 实现254
16.3.1 路由规则254
16.3.2 路由表258
16.3.3 路由缓存264
16.3.4 转发进程268
第17章 用于组通信的IP多播272
17.1 组通信272
17.1.1 单播272
17.1.2 广播273
17.1.3 多播273
17.2 IP多播274
17.2.1 用作多播组的地址275
17.2.2 Linux中的IP多播配置276
17.2.3 多播编程277
17.3 Internet组管理协议(IGMP)279
17.3.1 IGMP包的格式与传送280
17.3.2 不同的版本280
17.3.3 IGMP协议的运作281
17.3.4 IGMP的实现283
17.4 Linux内核中的多播数据路径285
17.4.1 MAC层上的多播支持285
17.4.2 IP中的多播数据路径287
17.5 当今Internet上的多播293
17.5.1 多播骨干网(MBone)294
17.5.2 通过mrouted守护进程访问MBone294
17.5.3 DVMRP路由算法300
17.6 多播传输协议302
第18章 用流量控制支持服务质量(QoS)303
18.1 引言303
18.2 Linux中的流量控制的基本结构303
18.3 外发方向上的流量控制304
18.4 内核结构和接口306
18.4.1 句柄306
18.4.2 排队规则306
18.4.3 类309
18.4.4 过滤器311
18.6 实现一个排队规则313
18.5 入口限制313
18.7 配置316
18.7.1 RT网络连接接口316
18.7.2 用户接口316
第19章 包筛选器与防火墙317
19.1 介绍317
19.1.1 防火墙的工作原理317
19.1.2 协议相关特性:TCP、FTP以及其他协议318
19.1.3 筛选器实现的质量标准319
19.1.4 防火墙工作原理的局限性319
19.2 2.2版本Linux的ipchains体系结构320
19.2.1 ipchains规则语法321
19.2.2 ipchains体系结构的缺陷322
19.3 2.4版本Linux的Netfilter体系结构323
19.3.1 Linux内核中的Netfilter钩子323
19.3.2 注册和注销包筛选函数325
19.3.3 iptables与ipchains的比较327
19.3.4 iptables命令行工具327
19.3.5 netfilter标准模块328
20.2 实现331
20.2.1 基本结构331
第20章 连接跟踪331
20.1 简介331
20.2.2 连接记录332
20.2.3 传输协议334
20.2.4 Helper模块334
20.2.5 全局变量334
20.2.6 函数335
第21章 网络地址转换(NAT)340
21.1 简介340
21.1.1 重要术语340
21.1.2 透明地址分配340
21.1.5 NAT与2.2版本Linux中的地址伪装有何不同341
21.1.3 透明路由341
21.1.4 正确处理ICMP包341
21.1.6 NAT的变化形式342
21.1.7 相关问题343
21.2 在Linux中配置NAT343
21.3 实现NAT模块345
21.3.1 重要的数据结构345
21.3.2 初始化NAT模块和卸载NAT模块348
21.3.3 NAT模块如何处理经过的IP包348
21.3.4 初始化地址绑定过程349
21.3.5 实际的地址转换350
21.4.1 传输协议351
21.4 NAT模块的扩展接口351
21.4.2 Helper模块352
第22章 扩展Linux网络体系结构功能——KIDS354
22.1 管理动态可扩展的各项功能354
22.2 KIDS构造系统的结构355
22.2.1 基本QoS组件355
22.2.2 钩子357
22.3 用KIDS实例扩展Liunx网络体系结构358
22.3.1 组件及其实例358
22.3.2 注册和管理组件362
22.3.3 管理组件实例363
22.3.5 组件的工作方式364
22.3.4 实现钩子364
22.3.6 配置各KIDS组件366
第23章 Ipv6——Internet协议第6版368
23.1 介绍368
23.2 IPv6的各项特性368
23.2.1 地址分配368
23.2.2 IPv6包报头370
23.2.3 包报头扩展371
23.3 IPv6实现374
23.3.1 传入包374
23.3.3 本地投递包375
23.3.2 转发包375
23.3.4 传输层包376
第五篇 第四层——传输层378
第24章 传输控制协议(TCP)378
24.1 概述378
24.1.1 对TCP的要求378
24.1.2 TCP数据包的格式379
24.2 TCP协议实例的实现380
24.2.1 输入TCP段的处理380
24.2.2 TCP段的发送387
24.2.3 TCP实例的数据结构390
24.3 连接管理395
24.3.1 TCP状态机396
24.3.2 建立连接397
24.3.3 连接的拆卸399
24.4 数据交换的协议机制404
24.4.1 流控制404
24.4.2 拥塞的检测、回避和处理415
24.4.3 拥塞回避421
24.5 TCP中的计时器管理423
24.5.1 数据结构423
24.5.2 函数424
24.5.3 配置426
25.1 简介428
第25章 用户数据报协议(UDP)428
25.2 数据结构429
25.2.1 传递有效负荷429
25.2.2 UDP数据报430
25.2.3 UDP至网络体系结构的集成431
25.3 UDP数据报的收发433
第26章 套接字的概念436
26.1 简介436
26.2 BSD套接字437
26.3.1 PF_INET套接字440
26.3 特定于协议的套接字440
26.3.2 PF_PACKET套接字441
26.3.3 PF_NETLINK套接字442
第六篇 第五层——应用层446
第27章 涉及套接字的网络编程446
27.1 简介446
27.1.1 套接字的地址446
27.1.2 一些套接字操作447
27.2 套接字API函数448
27.2.1 用于连接管理的函数448
27.2.2 用于数据传输的函数453
27.2.3 字节排序方法454
27.2.4 用于处理Internet地址的函数455
27.3 示例456
第七篇 附录458
附录A LXR源代码浏览器458
A.1 功能458
A.2 安装461
附录B Linux内核中的调试463
B.1 记录Linux内核输出463
B.1.1 使用printk()创建日志输出463
B.1.2 syslogd守护进程464
B.1.3 使用console_print()进行直接输出466
B.2 在内核中创建字符串467
B.3 /PROC目录中的相关信息469
B.4 用调试器调试Linux内核473
附录C 用于网络操作的工具和命令476
C.1 使用ifconfig以管理网络设备476
C.2 使用ping以测试可抵达性478
C.3 使用netstat以查看网络状态479
C.4 使用route以处理路由信息481
C.5 使用tcpdump以进行网络分析482
C.6 使用traceroute以跟踪包485
C.7 其他工具487
热门推荐
- 2971209.html
- 1559132.html
- 3358624.html
- 456469.html
- 3271954.html
- 1501698.html
- 3540263.html
- 739177.html
- 3870129.html
- 3885302.html
- http://www.ickdjs.cc/book_2322951.html
- http://www.ickdjs.cc/book_129039.html
- http://www.ickdjs.cc/book_2328204.html
- http://www.ickdjs.cc/book_1227697.html
- http://www.ickdjs.cc/book_1509221.html
- http://www.ickdjs.cc/book_3640849.html
- http://www.ickdjs.cc/book_153346.html
- http://www.ickdjs.cc/book_1331177.html
- http://www.ickdjs.cc/book_3770667.html
- http://www.ickdjs.cc/book_2799578.html