标题：网络协议本质论
图书信息
网络协议本质论  李洋 编著
ISBN 978-7-121-14116-4  
2011年8月出版
定价：85.00元
16开
732页
宣传语
这本书不讲互联网，物联网，3G网，云计算……但他们全基于此！
内 容 简 介
本书按照经典的OSI七层参考模型，分层详细讲述计算机网络的核心原理、协议以及应用开发要点，兼顾对当前计算机网络的热点问题，如网络安全、云计算、三网融合等话题展开讨论，并为读者介绍相关的网络应用工具。
本书分八篇共31章，具体组织安排如下：第一篇“计算机网络基础篇”（第1章至第4章）：介绍计算机网络基础知识，包括计算机网络发展史、计算机网络设备、局域网和广域网技术等；第二篇“物理及数据链路层应用精解篇”（第5章至第6章）：介绍计算机网络物理层和数据链路层的相关知识及其应用；第三篇“网络层应用精解篇”（第7章至第8章）：介绍计算机网络核心层——网络层的基础知识、核心协议及其应用；第四篇“传输层应用精解篇”（第9章）：介绍计算机传输层原理及其应用；第五篇“应用层应用精解篇”（第10章至第24章）：介绍计算机应用层常用协议基本原理、协议分析及应用；第六篇“网络安全篇”（第25章至第26章）：介绍计算机网络常见威胁及其安全防护措施；第七篇“工具篇”（第27章至第28章）：介绍计算机网络抓包和网络协议分析工具的使用；第八篇“计算机网络高级应用篇”（第29章至第31章）：介绍计算机网络高级应用的热门话题，包括无线网络、三网融合、云计算。
本书面向众多的网络技术工作者，包括网络工程师、网络管理员、网络安全工作者和网络开发人员以及网络爱好者。本书可以作为上述读者群在实际工作、学习中的参考手册，亦可作为高等院校计算机网络及应用的参考教材。
前 言
为什么要写这本书？
自20世纪60年代以来，计算机网络从萌芽阶段迅猛发展到进入寻常百姓家，也只不过几十年的光景而已。无论是计算机网络的架构、技术，还是计算机网络的应用，发生了日新月异的变化。云计算、Web 2.0、三网融合，等等新鲜的名词和技术都在不断地充斥和刺激着广大用户尤其是网络工程师、网络管理员等技术人员的视听。而且如今社会上对网络技术人员的要求也越来越高，因此，计算机网络在自身发展和进化的同时，也促进了相关技术人员的成熟和进步。
笔者在网络和信息安全领域已经工作十多年了，从基础网络运维管理到网络协议分析，从基础的网络应用开发到网络信息安全架构分析都有所涉及。在工作过程中，与相关网络技术人员以及用户的交流机会比较多，总会遇到这样那样的问题。比如说，SSL协议是怎么保证HTTP安全的呢？交换机和路由器到底有什么区别，企业该怎么选择这些网络设备呢？企业的网络中了ARP病毒，该怎么进行解决和防范呢？我们部署的企业门户网站，该怎么来进行网络拓扑设计和信息安全保障呢？……
我发现，在分析和解决这些问题的过程中，目前有部分网络技术工程师更多的是凭借他们多年积累的宝贵经验和教训，来定位和分析问题的。他们通过大大小小成百上千的项目经验积累，头脑中形成了一套分析和解决问题的方法。然而，大多数的网络技术工程师还在学习和成长的过程中，他们遇到问题时大多求助于网络搜索以及BBS论坛。这种方式的最大缺陷是难以快速、系统地获取他们所需要了解的信息和知识，也难以系统、全面地提升他们的网络知识及技能。因此，急需有一本系统、全面的网络基础及协议分析的书籍，以供网络技术工程师们在实践中进行快速查找和参考。
去年笔者与电子工业出版社的高级策划编辑胡辛征就该问题进行了探讨，我们一拍即合，认为这样的书籍在目前市场上还是一个空白。为了满足广大网络技术人员对计算机网络相关原理、设备、协议及应用知识的快速、全面获取的需求，从而达到高效解决实际工作问题的目的，我们决定进行合作，把这样一本书籍奉献给大家。
本书面向众多的网络技术工作者，包括网络工程师、网络管理员、网络安全工作者和网络开发人员以及网络爱好者。本书亦可作为高等院校计算机网络及应用的参考教材。
笔者有多年从事网络运维、研究及开发的工作经验，在精心编写本书时还十分考究内容的编排、章节的组织以及讲解的方式，争取让读者能够在短时间内系统、全面地掌握计算机网络的技术知识、应用方法和安全理念。
本书特色
1．结构严谨，内容全面、系统
笔者对计算机网络内容的选取十分严谨，一环扣一环，从一个知识点过渡到另一个知识点非常顺畅和自然。内容全面、系统，涵盖了计算机网络基础、计算机网络协议分析、计算机网络应用开发、计算机网络热点分析、网络信息安全、计算机网络实用工具介绍等多个层面。
2．覆盖面广，适用的读者群广泛
本书在选材上，从适用人群、学习曲线等各个方面进行了细致的分析和考虑，本书面向众多的网络技术工作者，包括网络工程师、网络管理员、网络安全工作者和网络开发人员以及网络爱好者。
3．弥补市场空白，具有很高的参考和学术价值
本书弥补了网络基础的协议分析书籍市场空白，在对计算机网络基础进行详细、全面讲解的前提下，对网络协议分析、网络应用开发、网络信息安全等进行了详细阐述，从而可以让读者在打牢基础知识的前提下，在实践中迅速加以应用，举一反三，以解决实际遇到的问题。
本书内容
本书分八篇进行讲解，共包括31章，并外加一个附录：
 第一篇“计算机网络基础篇”（第1章至第4章）：介绍计算机网络基础知识，包括计算机网络发展史、计算机网络设备、局域网和广域网技术等；
 第二篇“物理及数据链路层应用精解篇”（第5章至第6章）：介绍计算机网络物理层和数据链路层的相关知识及其应用；
 第三篇“网络层应用精解篇”（第7章至第8章）：介绍计算机网络核心层——网络层的基础知识、核心协议及其应用；
 第四篇“传输层应用精解篇”（第9章）：介绍计算机传输层原理及其应用；
 第五篇“应用层应用精解篇”（第10章至第24章）：介绍计算机应用层常用协议基本原理、协议分析及应用；
 第六篇“网络安全篇”（第25章至第26章）：介绍计算机网络常见威胁及其安全防护措施；
 第七篇“工具篇”（第27章至第28章）：介绍计算机网络抓包和网络协议分析工具的使用；
 第八篇“计算机网络高级应用篇”（第29章至第31章）：介绍计算机网络高级应用的热门话题，包括无线网络、三网融合、云计算；
 附录A：推荐和介绍计算机网络常用工具集。
致谢
笔者首先由衷地感谢电子工业出版社博文视点资讯有限公司总经理郭立，她对本书的大力支持是本书得以顺利完成的巨大动力。其次，电子工业出版社博文视点资讯有限公司副总经理兼高级策划编辑胡辛征和编辑顾慧芳在我写书的过程中给了我无私的帮助。他们花费了大量的心血和精力，对于本书的质量和体系的把握起到了重要作用，使本书能得以尽快与读者见面。最后，作者还要感谢家人的大力支持和无私奉献，正因为有他们的关心和照顾，我才有足够的时间和精力来完成撰写工作。
由于笔者水平和时间有限，书中难免存在疏漏与不当之处，敬请专家和广大读者给予批评指正。李洋2011年2月于北京
目 录
第一篇  计算机网络基础篇
第1章  计算机网络简介 2
1.1  网络的基本概念 2
1.1.1  计算机网络的定义 2
1.1.2  计算机网络的发展历史 2
1.1.3  计算机网络的基本组成 4
1.1.4  计算机网络的主要作用 6
1.2  ISO/OSI参考模型 6
1.2.1  七层协议 6
1.2.2  OSI每层的功能 8
1.3  TCP/IP参考模型 9
1.3.1  TCP/IP模型概述 9
1.3.2  TCP/IP的基本工作原理 10
1.3.3  TCP/IP与OSI的比较 10
第2章  计算机网络设备 12
2.1  网络接口卡 12
2.1.1  网络接口卡简介 12
2.1.2  网络接口卡的主要功能部件 13
2.1.3  网络接口卡的主要类型 15
2.2  物理层设备——中继器 17
2.3  集线器（HUB） 18
2.3.1  集线器简介 18
2.3.2  集线器的主要特点 19
2.3.3  集线器的主要分类 20
2.3.4  集线器的常用接口 21
2.4  数据链路层设备——网桥 22
2.5  数据链路层/网络层设备——
交换机 23
2.5.1  基本原理 23
2.5.2  网络交换机的基本功能 24
2.5.3  网络交换机的交换模式 24
2.6  网络层设备——路由器 25
2.6.1  路由器的特征和功能 25
2.6.2  路由器的分类 26
2.6.3  常见的路由协议 27
2.7  应用层设备——网关 28
第3章  局域网技术 30
3.1  计算机局域网的发展历史 30
3.1.1  以太局域网
（Ethernet Local Area Network） 30
3.1.2  以太网的分类 31
3.1.3  无线局域网（WLAN） 33
第4章  广域网技术 38
4.1  广域网概述 38
4.1.1  广域网与局域网的区别 38
4.1.2  广域网的主要特点 38
4.2  广域网的基本原理 39
4.2.1  虚电路广域网 40
4.2.2  数据报广域网 41
4.2.3  两种广域网的应用比较 41
4.3  广域网的连接 42
4.3.1  广域网的连接设备 42
4.3.2  广域网的连接类型 42
4.4  广域网的常用封装协议 43
4.4.1  HDLC 43
4.4.2  PPP协议 43
4.4.3  帧中继协议 44
4.4.4  ATM协议 44
4.5  广域网的关键技术 44
4.5.1  公用交换电话网（PSTN） 44
4.5.2  综合业务数字网（ISDN） 44
4.5.3  数字数据网DDN 45
4.5.4  X.25分组交换数据网 45
4.5.5  Frame Relay帧中继 45
4.5.6  ATM 46
4.5.7  SONET/SDH传输技术 46
4.5.8  SMDS技术 46
4.5.9  MSTP技术 46
第二篇  物理及数据链路层应用精解篇
第5章  物理层原理及应用精解 50
5.1  物理层概述 50
5.1.1  物理层的定义 50
5.1.2  物理层的特性 50
5.1.3  物理层的主要功能 51
5.2  物理层导向传输介质 51
5.2.1  双绞线 51
5.2.2  同轴电缆 52
5.2.3  光纤 52
5.3  物理层非导向传输介质 54
5.4  双绞线 54
5.4.1  双绞线的分类 54
5.4.2  超五类非屏蔽双绞线 55
5.4.3  六类非屏蔽双绞线 55
5.4.4  七类双屏蔽双绞线 56
5.4.5  如何选用双绞线 56
5.5  光纤的分类 57
5.5.1  按传输模式分类 57
5.5.2  按纤芯直径分类 57
5.5.3  按光纤纤芯折射率分布分类 57
5.6  物理层重要接口及标准 57
5.6.1  串行接口通信原理 57
5.6.2  RS-232串行接口标准 58
5.6.3  EIA标准接口 59
第6章  数据链路层原理及应用精解 60
6.1  数据链路层的主要功能简介 60
6.2  数据链路层的成帧功能 61
6.2.1  面向字节的成帧 61
6.2.2  面向位的分帧 61
6.2.3  基于时钟的成帧 61
6.3  数据链路层的差错控制功能 61
6.3.1  纠错码方案 62
6.3.2  检错码方案 62
6.4  数据链路层的流量控制功能 62
6.4.1  XON/XOFF方案 62
6.4.2  窗口协议机制 63
6.5  数据链路层协议 63
6.5.1  IPX协议 63
6.5.2  SPX协议 63
6.5.3  IPX/SPX协议 64
6.5.4  NetBIOS协议 64
6.5.5  NetBEUI协议 64
6.5.6  HDLC协议 65
6.5.7  LAPB协议 65
6.5.8  SDLC协议 66
6.6  ARP/RARP协议 66
6.6.1  ARP/RARP协议简介 66
6.6.2  ARP/RARP协议报文格式 67
6.6.3  ARP协议的安全问题和安全威胁 68
6.7  VLAN技术 70
6.7.1  VLAN简介 70
6.7.2  VLAN的技术特点 72
6.7.3  VLAN分类 72
6.8  PPP协议 73
6.8.1  PPP协议简介 73
6.8.2  PPP协议封装 73
6.8.3  PPP链路建立的五个阶段 74
6.9  PPPOE协议 76
6.9.1  PPPOE协议简介 76
6.9.2  协议的基本框架 76
6.9.3  PPPOE通信流程 77
6.9.4  PPPOE的LCP配置选项 78
6.9.5  PPP会话终结 78
6.9.6  PPP会话续传（L2TP VPN） 79
6.9.7  用户认证和IP地址分配 80
6.10  第二层隧道协议L2TP 81
6.10.1  L2TP简介 81
6.10.2  应用L2TP技术的网络拓扑结构 82
6.10.3  L2TP报头格式 82
6.10.4  相关技术与应用 84
第三篇  网络层应用精解篇
第7章  网络层原理 88
7.1  网络层概述 88
7.2  虚电路和数据报 88
7.2.1  通信交换技术 88
7.2.2  虚电路操作方式和虚电路服务 88
7.2.3  数据报操作方式及数据报服务 89
7.2.4  两种操作方式/网络服务的
特点和比较 89
7.3  IPv4协议 90
7.3.1  IPv4协议包结构 92
7.3.2  IP地址 93
7.3.3  子网 96
7.4  IPv6协议 97
7.4.1  IPv6诞生的发展背景 97
7.4.2  IPv6的新特性 98
7.4.3  IPv6的报文格式 100
7.4.4  IPv6的地址空间及其表示方法 102
7.4.5  IPv6的地址类型 102
7.4.6  IPv4向IPv6过渡的技术 103
7.4.7  IPv6与IPv4互通技术 108
第8章  网络层核心算法和协议 112
8.1  路由和路由算法简介 112
8.2  路由算法设计原则和目的 112
8.3  路由的基本原理 113
8.3.1  路由的内涵 113
8.3.2  路由算法的基本类型 114
8.3.3  路由好坏的度量标准 115
8.4  几种主要的路由算法 116
8.4.1  最短路径优先算法——
Dijkstra算法 116
8.4.2  扩散算法（Flooding） 117
8.4.3  距离向量路由算法
（Distance Vector Routing） 117
8.4.4  链路状态路由算法
（Link State Routing） 117
8.5  几种主要的路由协议 117
8.5.1  路由协议的演进发展 117
8.5.2  RIP路由协议 118
8.5.3  OSPF协议 119
8.5.4  IGRP路由协议 122
8.5.5  BGP协议 123
8.5.6  路由协议的选择 123
8.6  MPLS（多协议标记交换）技术 124
8.6.1  MPLS（Multi-Protocol Label 
Switching）简介 124
8.6.2  MPLS原理 129
8.6.3  MPLS的基本选路方法 130
8.7  CMP协议 131
8.7.1  ICMP协议简介 131
8.7.2  ICMP安全问题分析 132
8.8  IPSec协议 133
8.8.1  IPSec简介 133
8.8.2  IPSec协议组 134
8.8.3  IPSec工作模式 135
8.8.4  AH头结构 136
8.8.5  ESP头结构 137
第四篇  传输层应用精解篇
第9章  传输层原理及应用精解 140
9.1  传输层概述 140
9.1.1 传输层的基本功能 140
9.1.2  传输层的服务类型和协议级别 141
9.2  TCP协议 141
9.2.1  TCP协议的报文格式 141
9.2.2  TCP“三次握手”建立连接 143
9.2.3  TCP“四次告别”关闭连接 143
9.2.4  TCP中的端口 145
9.2.5  TCP可靠传输 152
9.2.6  TCP 流量控制 153
9.3  UDP协议 153
9.4  TCP/IP协议栈面临的
网络安全问题 154
9.4.1  IP欺骗 154
9.4.2  SYN Flooding 155
9.4.3  ACK Floodinging 158
9.4.4  UDP Flooding 159
9.4.5  Connection Flooding 159
9.5  RSVP协议 160
9.5.1  RSVP简介 160
9.5.2  RSVP数据流 161
9.5.3  RSVP数据流处理 162
9.5.4  RSVP服务质量（QoS） 162
9.5.5  RSVP连接启动 162
9.5.6  RSVP资源预订类型 162
9.5.7  RSVP软状态实现 163
9.5.8  RSVP操作模型 163
9.5.9  加权平均排队方案 164
9.5.10  RSVP消息和包格式 164
第五篇  应用层应用精解篇
第10章  HTTP/HTTPS协议原理及
应用精解 172
10.1  HTTP协议原理 172
10.1.1  Web简介 172
10.1.2  HTTP简介 173
10.1.3  HTTP中的几个重要概念 173
10.1.4  HTTP流程的基本原理 174
10.1.5  HTTP非持久连接和持久连接 176
10.2  HTTP 请求报文 178
10.3  HTTP响应报文 179
10.4  HTTP消息报头 180
10.4.1  普通报头 180
10.4.2  请求报头 180
10.4.3  响应报头 181
10.4.4  实体报头 182
10.5  HTTP编程应用实例 182
10.5.1  HTTP请求包 182
10.5.2  HTTP应答包 183
10.5.3  Socket类与ServerSocket类 184
10.5.4  读取HTTP包代码示例 184
10.6  HTTPS协议原理 189
10.6.1  SSL简介 189
10.6.2  SSL基本原理 190
10.6.3  SSL协议通信流程 193
10.6.4  SSL协议结构 195
10.6.5  SSL与TLS 196
10.7  HTTPS编程应用实例 198
10.7.1  服务器端代码 198
10.7.2  客户端代码 201
第11章  FTP协议原理及应用精解 203
11.1  FTP简介 203
11.2  FTP基本概念 204
11.3  FTP模型 205
11.4  FTP的用户分类及权限归属 206
11.4.1  Real账户 206
11.4.2  Guest用户 206
11.4.3  Anonymous（匿名）用户 206
11.5  通过FTP传输文件的一般步骤 206
11.6  FTP基本原理 207
11.6.1  传输方式 207
11.6.2  FTP Port模式和FTP Passive模式 208
11.7  FTP基本命令 211
11.8  FTP应用开发 213
11.8.1  C++实现 213
11.8.2  Java实现 216
11.9  FTP安全问题 218
第12章  DNS协议原理及应用精解 220
12.1  DNS简介 220
12.2  DNS基本概念 222
12.2.1  DNS组成 222
12.2.2  域名空间和资源记录 222
12.2.3  命名规则 223
12.2.4  资源记录
（Resource Record，RR） 223
12.2.5  RR的文本表示 225
12.2.6  别名和统一命名 225
12.2.7  查询 226
12.3  名字服务器原理 228
12.3.1  介绍 228
12.3.2  数据库如何被划分为区 229
12.3.3  名字服务器高级内容 230
12.4  Resolver原理 231
12.4.1  客户-Resolver的接口 231
12.4.2  Resolver的内部机制 232
12.5  DNS报文格式 234
12.6  DNS报文举例 237
12.6.1  QNAME=SRI-NIC ARPA，
QTYPE=A 237
12.6.2  QNAME=SRI-NIC ARPA，
QTYPE=* 238
12.6.3  QNAME=SRI-NIC ARPA，
QTYPE=MX 239
12.6.4  QNAME=SIR-NIC ARPA，
QTYPE=A 239
12.6.5  QNAME=BRL MIL，QTYPE=A 240
12.6.6  QNAME=USC-ISIC ARPA，
QTYPE=A 240
12.6.7  QNAME=USC-ISIC ARPA，
QTYPE=CNAME 241
12.6.8  解析例子 241
12.7  DNS安全问题及对策 243
12.7.1  DNS安全问题 243
12.7.2  DNS安全解决方案 244
第13章  DHCP协议原理及应用精解 249
13.1  DHCP简介 249
13.2  DHCP工作流程 249
13.3  DHCP租用期限的工作原理 252
13.4  DHCP的报文格式 253
13.5  动态地址分配过程 254
13.6  IP地址冲突防范 255
第14章  电子邮件协议原理及应用精解 256
14.1  SMTP简介 256
14.2  电子邮件系统的组成原理 257
14.2.1  邮件传递代理（MTA） 257
14.2.2  邮件获取代理（MSA） 258
14.2.3  邮件客户代理（MUA） 258
14.3  电子邮件传输协议原理 258
14.3.1  SMTP的通信模型 258
14.3.2  SMTP协议的邮件路由过程 260
14.3.3  SMTP的基本命令 260
14.3.4  SMTP协议会话流程示意 262
14.3.5  mail relay简介 262
14.4  POP & POP3：邮局协议
（邮局协议第3版）简介 263
14.5  协议结构 263
14.6  POP3命令流程示意 264
14.7  使用telnet连接Winmail Server
收信 265
14.8  SMTP应用开发实例 266
14.8.1  邮件头准备 266
14.8.2  由Socket套接字为SMTP
提供网络通信基础 267
14.8.3  SMTP会话应答的实现 267
14.9  POP3应用开发实例 269
14.9.1  使用JavaMail 269
14.9.2  使用PHP实现 271
14.10  防治垃圾邮件的
主流策略和技术 277
14.10.1  SMTP用户认证技术 277
14.10.2  逆向DNS解析 277
14.10.3  实时黑名单过滤 278
14.10.4  白名单过滤 278
14.10.5  内容过滤 278
14.10.6  IMAP协议简介 279
14.10.7  IMAP与POP3及Web Mail的
比较 279
第15章  SNMP协议原理及应用精解 281
15.1  SNMP概述 281
15.2  SNMP的工作原理 281
15.2.1  网络管理模型 281
15.2.2  网络管理协议结构 283
15.2.3  网络管理服务 283
15.2.4  委托代理 284
15.3  管理信息结构SMI 284
15.3.1  ASN.1 284
15.3.2  文本约定 285
15.3.3  对象定义 286
15.3.4  Trap定义 286
15.3.5  对象标志符 287
15.3.6  表对象的定义 288
15.3.7  对象和对象实例的区别 289
15.3.8  OID的字典序 289
15.4  协议数据单元
（PDU-Protocol Data Unit） 290
15.4.1  SNMP报文格式 290
15.4.2  SNMP报文类型 290
15.4.3  SNMPv2基本的PDU格式 291
15.4.4  SNMP消息的生成 292
15.4.5  SNMP消息的接受和处理 292
15.5  SNMP协议操作 293
15.5.1  GetRequest 293
15.5.2  GetNextRequest—PDU 295
15.5.3  Response——PDU 297
15.5.4  SetRequest——PDU 299
15.5.5  GetBulkRequest——PDU 301
15.5.6  InformRequest——PDU 303
15.5.7  Trap——PDU 304
15.6  SNMP的安全控制 306
15.7  SNMP应用开发实例 308
15.7.1  SNMP发送消息 308
15.7.2  SNMP接受消息 312
第16章  SIP协议原理及应用精解 315
16.1  SIP历史简介 315
16.2  SIP原理简介 316
16.2.1  基本原理 316
16.2.2  会话构成 317
16.2.3  SIP结构 318
16.2.4  SIP消息 319
16.2.5  SIP消息实例 321
16.2.6  H.323和SIP协议的比较 325
16.3  SDP协议 326
16.3.1  SDP协议的功能描述 326
16.3.2  SDP协议的会话描述 327
16.4  SIP开源协议栈介绍 328
16.4.1  OPAL 328
16.4.2  VOCAL 329
16.4.3  sipX 329
16.4.4  ReSIProcate 330
16.4.5  oSIP 331
第17章  RTP/RTSP/SRTP协议 332
17.1  RTP概述 332
17.1.1  流媒体简介 332
17.1.2  RTP简介 332
17.1.3  RTP的协议层次 333
17.1.4  RTP的封装 334
17.1.5  RTCP的封装 334
17.1.6  RTP的会话过程 336
17.2  RTCP原理 336
17.2.1  RTCP简介 336
17.2.2  RTCP信息包 337
17.2.3  RTCP传输间隔 338
17.2.4  SR源报告包和RR接收者
报告包 339
17.2.5  SDES源描述包 339
17.2.6  BYE断开RTCP包 340
17.2.7  APP特殊应用包 340
17.2.8  RTP/ RTCP的不足之处 341
17.3  SRTP协议 341
第18章  P2P协议原理及应用精解 343
18.1  P2P概述 343
18.1.1  P2P简介 343
18.1.2  Web站点交换与P2P传输的比较 345
18.1.3  P2P的定义和特点 346
18.1.4  P2P的用途 347
18.2  P2P协议分类简介 348
18.3  集中式P2P简介 349
18.4  全分布式非结构化P2P算法简介 349
18.4.1  Gnutella 349
18.4.2  Freenet 351
18.5  半分布式P2P算法简介 353
18.5.1  Kazaa 353
18.5.2  BitTorrent 353
18.6  基于DHT的结构化P2P
算法简介 356
18.6.1  DHT 356
18.6.2  chord 359
18.6.3  Kademlia 360
18.6.4  Pastry 362
18.6.5  Tapestry 363
18.6.6  CAN 363
18.6.7  Koorde 365
18.6.8  Viceroy 366
18.6.9  Bamboo 367
18.6.10  Tourist 367
18.6.11  Accordion 369
18.7  P2P安全问题分析 370
18.7.1  P2P技术存在的安全缺陷 371
18.7.2  P2P网络面临的主要安全威胁 371
18.7.3  P2P网络安全的防御体系建设 373
18.7.4  P2P安全技术的研究重点 374
第19章  SOAP协议原理及应用精解 378
19.1  SOAP协议简介 378
19.2  SOAP消息举例 379
19.3  SOAP与XML的关系 380
19.4  SOAP封装 380
19.4.1  SOAP encodingStyle属性 381
19.4.2  封装版本模型 381
19.5  SOAP头 381
19.5.1  使用头属性 382
19.5.2  SOAP actor属性 382
19.5.3  SOAP mustUnderstand属性 382
19.6  SOAP体 383
19.6.1  SOAP头和体的关系 383
19.6.2  SOAP错误 383
19.7  SOAP编码 384
19.7.1  XML中的编码类型规则 385
19.7.2  简单类型 387
19.8  多态accessor 389
19.9  Compound types复合类型 389
19.9.1  复合值，结构和值引用 389
19.9.2  数组 391
19.9.3  一般复合类型 395
19.10  缺省值 396
19.11  SOAP root属性 396
19.12  在HTTP中使用SOAP 396
19.12.1  SOAP HTTP请求 397
19.13  在RPC中使用SOAP 398
19.13.1  RPC和SOAP体 398
19.13.2  RPC和SOAP头 399
19.14  SOAP封装举例 399
19.14.1  请求编码举例 399
19.14.2  应答编码举例 400
19.15  SOAP协议应用开发实例 401
19.15.1  PHP SOAP开发实例 401
19.15.2  Java SOAP开发实例 403
第20章  SSH协议原理及应用精解 406
20.1  SSH概述 406
20.2  SSH基本原理 407
20.2.1  主机密钥机制 407
20.2.2  字符集和数据类型 408
20.2.3  命名规则及消息编码 410
20.2.4  SSH协议的可扩展能力 411
20.3  SSH中用户认证方式 412
20.3.1  概述 412
20.3.2  认证过程 412
20.3.3  用户认证方式 414
20.4  SSH1与SSH2的主要区别概述 417
20.4.1  SSH1 417
20.4.2  SSH2 418
第21章  LDAP协议原理及应用精解 419
21.1  LDAP简介 419
21.2  LDAP原理 421
21.2.1  LDAP安全和访问控制 421
21.2.2  LDAP目录树结构 421
21.2.3  LDAP复制 425
21.2.4  LDAP存储结构原理 426
21.3  LDAP目录客户端访问工具 428
21.3.1  openldap命令行 428
21.3.2  ldapbrowser Java开源LDAP
客户端工具 429
21.4  LDAP如何工作以及
如何开发LDAP的应用 429
21.5  LDAP的主从备份功能 432
21.6  LDAP API 436
21.6.1  LDAP API简介 436
21.6.2  LDAP API函数调用 437
21.6.3  使用API示例代码 445
第22章  SOCKS协议原理及应用精解 447
22.1  SOCKS简介 447
22.2  基于TCP协议的客户 447
22.3  请求 448
22.4  地址 449
22.5  应答 449
22.6  基于UDP协议的客户 451
第23章  XMPP协议原理及应用精解 452
23.1  XMPP简介 452
23.1.1  XMPP协议的优点 452
23.1.2  XMPP协议的缺点 452
23.2  XMPP基础 453
23.2.1  网络层次和数据包 453
23.2.2  XMPP的节点与路由 454
23.2.3  地址标识 454
23.3  XMPP核心数据包 454
23.3.1  公有属性 455
23.3.2  初始化XML stream，身份验证 455
23.3.3  Roster获取联系人列表 456
23.3.4  Presence状态数据包 456
23.3.5  Message信息数据包 457
23.4  XMPP扩展 458
23.4.1  通过vcard-temp获取电子名片 458
23.4.2  通过In-Band Bytestreams
传输二进制数据 459
23.4.3  通过SOCKS5 Bytestreams
传输二进制数据 459
23.4.4  扩展机制的缺点 461
第24章  Telnet协议原理及应用精解 462
24.1  Telnet简介 462
24.2  Telnet基本概念 462
24.3  Telnet工作过程 463
24.4  适应异构 464
24.5  传送远地命令 464
24.6  数据流向 465
24.7  强制命令 465
24.8  选项协商 465
24.9  Telnet常用命令 466
第六篇  网络安全篇
第25章  计算机网络安全威胁及策略 468
25.1  Scanning（扫描攻击） 468
25.1.1  TCP全连接扫描 468
25.1.2  TCP半连接（SYN）扫描 469
25.1.3  UDP扫描 469
25.1.4  标志获取扫描 469
25.1.5  包分片 469
25.1.6  欺骗扫描 469
25.1.7  标识扫描 470
25.1.8  FTP反弹扫描 470
25.1.9  源端口扫描 470
25.1.10  主机扫描 470
25.1.11  操作系统“指纹”扫描 471
25.2  木马 472
25.3  拒绝服务攻击和分布式
拒绝服务攻击 474
25.3.1  DoS攻击 474
25.3.2  DDoS攻击 477
25.4  病毒 479
25.4.1  病毒的起源和历程 479
25.4.2  病毒的主要类型 480
25.5  IP Spoofing 481
25.6  ARP Spoofing 481
25.7  Phishing 481
25.8  Botnet 484
25.9  跨站脚本攻击 485
25.10  零日攻击（Zero Day Attack） 485
25.11 “社会工程学”攻击 486
25.12  构建企业安全防范体系（架构） 487
25.12.1  企业安全防范体系（架构）的
概念 487
25.12.2  企业安全架构的层次结构及
相关安全技术 488
25.12.3  企业安全防范架构设计准则 490
25.13  网络优化须做好的七项工作 492
25.13.1  做好网络设计 492
25.13.2  选择合适的网络互联设备 492
25.13.3  确认网线和网络设备工作正常 492
25.13.4  优化网卡 493
25.13.5  配备高性能的服务器 493
25.13.6  做好流量监控与管理 493
25.13.7  做好网络安全 494
25.14  维护网站安全必须“做好”的
10件事 495
25.15  网络流量管理 497
25.15.1  网络流量管理的范畴 497
25.15.2  需要关注的常见网络流量 499
25.15.3  网络流量管理的策略 500
25.16  企业备份和恢复全攻略 501
25.16.1  数据备份和恢复简介 501
25.16.2  常见的数据备份策略 502
25.16.3  Windows下的数据备份和
恢复软件 504
25.16.4  Linux下的开源数据备份和
恢复软件 507
25.16.5  硬盘恢复 511
25.16.6  应用磁盘阵列——RAID 512
25.16.7  应用三大存储设备——SAN、
DAS和NAS 514
25.16.8  合理制定备份和恢复计划 518
第26章  网络安全技术概览 521
26.1  网络层防护——防火墙 521
26.1.1  防火墙简介 521
26.1.2  防火墙的分类 523
26.1.3  传统防火墙技术 524
26.1.4  新一代防火墙的技术特点 525
26.1.5  防火墙技术的发展趋势 527
26.1.6  防火墙的配置方式 528
26.1.7  防火墙的实际安全部署建议 529
26.2  应用层防护：IDS/IPS 531
26.2.1  入侵检测系统（IDS）简介 531
26.2.2  入侵检测技术的发展 532
26.2.3  入侵检测的分类 533
26.2.4  入侵防御系统（IPS） 537
26.2.5  IPS的发展 537
26.2.6  IPS技术特征 538
26.2.7  IPS的功能特点 538
26.2.8  IPS产品种类 541
26.3  网关级防护——UTM 542
26.4  Web应用综合防护——WAF 543
26.5  数据防护——数据加密 544
26.5.1  加密技术的基本概念 544
26.5.2  加密系统分类 545
26.5.3  常用的加密算法 547
26.5.4  加密算法的主要应用场景 548
26.6  远程访问安全保障——VPN 549
26.6.1  VPN简介 549
26.6.2  VPN的分类 550
26.7  身份认证技术 552
26.7.1  静态密码 552
26.7.2  智能卡（IC卡） 553
26.7.3  短信密码 553
26.7.4  动态口令牌 553
26.7.5  USB KEY 553
26.7.6  生物识别技术 554
26.7.7  双因素身份认证 554
第七篇  工具篇
第27章  Wireshark抓包工具介绍 556
27.1  Wiresahrk简介 556
27.2  安装Wireshark 556
27.2.1  在Linux下安装 556
27.2.2  在Windows下安装 557
27.3  Wireshark用户界面介绍 557
27.3.1  主窗口 558
27.3.2  主菜单 559
27.3.3 “File”菜单 559
27.3.4 “Edit”菜单 561
27.3.5 “View”菜单 562
27.3.6 “Go”菜单 564
27.3.7 “Capture”菜单 565
27.3.8 “Analyze”菜单 566
27.3.9 “Statistics”菜单 567
27.3.10 “Help”菜单 567
27.3.11 “Main”工具栏 568
27.3.12 “Filter”工具栏 569
27.3.13 “Pcaket List”面板 570
27.3.14 “Packet Details”面板 571
27.3.15 “Packet Byte”面板 571
27.3.16  状态栏 572
27.4  实时捕捉数据包 572
27.4.1  简介 572
27.4.2  开始捕捉 572
27.4.3  捕捉接口对话框 573
27.4.4  捕捉选项对话框 574
27.4.5  捕捉文件格式、模式设置 576
27.4.6  链路层包头类型 576
27.4.7  捕捉时过滤 577
27.4.8  停止捕捉 578
27.4.9  重新启动捕捉 578
27.5  文件输入/输出及打印 579
27.5.1  打开捕捉文件 579
27.5.2 “save Capture File As/保存文件为”
对话框 580
27.5.3  输出格式 581
27.5.4  合并捕捉文件 582
27.5.5  文件集合 583
27.5.6  导出数据 584
27.5.7  打印包 587
27.6  处理已经捕捉的包 588
27.6.1  浏览捕捉的包 588
27.6.2  弹出菜单项 589
27.6.3  浏览时过滤包 592
27.6.4  建立显示过滤表达式 593
27.6.5 “Filter Expression/过滤表达式”
对话框 595
27.6.6  定义、保存过滤器 596
27.6.7  查找包 597
27.6.8  跳转到指定的包 598
27.6.9  标记包 598
27.6.10  时间显示格式及参考时间 599
27.7  Wireshark高级应用 599
27.7.1 “Follow TCP Stream” 599
27.7.2  时间戳 601
27.7.3  合并包 602
27.7.4  名称解析 603
27.7.5  校检和 604
27.8  Wireshark统计功能 605
27.8.1  功能说明 605
27.8.2  摘要窗口 606
27.8.3 “Protocol Hierarchy”窗口 606
27.8.4 “Endpoints” 607
27.8.5  会话/conversations 609
27.8.6 “IO Graphs”窗口 609
27.8.7  服务相应时间 610
第28章  ntop网络流量分析工具介绍 612
28.1  ntop简介 612
28.2  ntop的安装及参数配置 612
28.2.1  ntop在Windows下的安装 612
28.2.2  ntop在Linux下的安装 612
28.3  ntop对网络流量的统计分析 613
28.3.1  ntop选项介绍 613
28.3.2  ntop选项具体分析介绍 615
第八篇  计算机网络高级应用篇
第29章  无线通信技术概览 632
29.1  短距离无线通信技术 632
29.1.1  WLAN 632
29.1.2  红外通信技术 634
29.1.3  无线激光通信技术 637
29.1.4  蓝牙通信技术 639
29.1.5  NFC技术 642
29.1.6  ZigBee技术 643
29.1.7  UWB技术 644
29.2  远距离无线通信技术 644
29.2.1  无线网桥 644
29.2.2  无线Mesh网络 647
29.2.3  移动通信网络 650
29.2.4  卫星通信网络 668
第30章  计算机网络应用热点——
云计算 670
30.1  云计算概述 670
30.2  云计算的几大形式 672
30.3  云计算的特点 672
30.4  云计算的商业现状 675
30.5  什么不是云计算 678
30.6  云计算的20个基本定义 678
30.7  云计算当前的主要应用 681
30.8  云计算在存储领域的
发展趋势和优势 683
30.9  云安全 684
第31章  三网融合 687
31.1  三网融合提出的背景 687
31.2  三网融合发展情况 687
31.3  三网融合的技术可行性 689
31.3.1  公用电信网 690
31.3.2  互联网 691
31.3.3  有线电视网 696
31.4  三网融合的技术方案 698
31.4.1  三网融合技术难点 699
31.4.2  现有资源 699
31.4.3  三网融合的3个重要技术 699
附录A  网络工具资源汇总 700
参考文献 712