内容推荐 本书自首次出版以来,已被译为14种语言,世界上数百所大学采用本书作为教材,有几十万学生和从业人员利用本书系统学习计算机网络的知识。本书已成为学习计算机网络知识的推荐阅读教材之一。 主要特点 自顶向下方法。本书采用作者的"自顶向下方法"讲授计算机网络的原理及其协议,即从应用层协议开始沿协议桟向下讲解,让读者从实现、应用的角度理解各层的意义,强调应用层范例和应用编程接口,使读者尽快进入每天使用的应用程序环境之中进行学习和创造。 以因特网为研究目标。因特网已经变得无所不在,任何网络教科书必须关注因特网。本书以因特网的体系结构和协议为载体讲授基本的计算机网络概念,这有助于激发学生学习网络基本原理的积极性,并理解原理的实际应用。 聚焦网络原理。网络领域已经发展得相当成熟,沉淀出很多基础性的重要问题。本书在梳理这些问题的同时,详细介绍了解决问题的方法。用因特网将学生引入网络之门后,再结合这些基础性问题及其解决方案,学生便可以迅速理解其他网络技术。 及时更新教学内容。本书根据近年来计算机网络技术的进展,对内容进行了全面更新,包括用两章的篇幅讨论网络层以反映软件定义网络(SDN)的重要性,删除了FTP和分布式散列表的内容,将ATM网络的内容更新为流行的因特网显式拥塞通告(ECN)内容等。 目录 第1章 计算机网络和因特网 1 1.1 什么是因特网 2 1.1.1 具体构成描述 2 1.1.2 服务描述 5 1.1.3 什么是协议 7 1.2 网络边缘 9 1.2.1 接入网 12 1.2.2 物理媒体 18 1.3 网络核心 21 1.3.1 分组交换 23 1.3.2 电路交换 27 1.3.3 网络的网络 31 1.4 分组交换网中的时延、丢包和吞吐量 35 1.4.1 分组交换网中的时延概述 35 1.4.2 排队时延和丢包 39 1.4.3 端到端时延 41 1.4.4 计算机网络中的吞吐量 43 1.5 协议层次及其服务模型 47 1.5.1 分层的体系结构 47 1.5.2 封装 53 1.6 面对攻击的网络 55 1.7 计算机网络和因特网的历史 59 1.7.1 分组交换的发展:1961~1972 59 1.7.2 专用网络和网络互联:1972~1980 60 1.7.3 网络的激增:1980~1990 62 1.7.4 因特网爆炸:20世纪90年代 63 1.7.5 近期新发展 64 1.8 小结 65 课后习题和问题 67 Wireshark实验 77 人物专访 79 第2章 应用层 83 2.1 应用层协议原理 84 2.1.1 网络应用程序体系结构 86 2.1.2 进程通信 88 2.1.3 可供应用程序使用的运输服务 90 2.1.4 因特网提供的运输服务 93 2.1.5 应用层协议 96 2.1.6 本书涉及的网络应用 97 2.2 Web和HTTP 98 2.2.1 HTTP概况 98 2.2.2 非持续连接和持续连接 100 2.2.3 HTTP报文格式 103 2.2.4 用户与服务器的交互:cookie 108 2.2.5 Web缓存 110 2.2.6 条件GET方法 114 2.3 因特网中的电子邮件 116 2.3.1 SMTP 118 2.3.2 与HTTP的对比 121 2.3.3 邮件报文格式 121 2.3.4 邮件访问协议 122 2.4 DNS:因特网的目录服务 126 2.4.1 DNS提供的服务 127 2.4.2 DNS工作机理概述 129 2.4.3 DNS记录和报文 135 2.5 P2P文件分发 140 2.6 视频流和内容分发网 147 2.6.1 因特网视频 147 2.6.2 HTTP流和DASH 148 2.6.3 内容分发网 149 2.6.4 学习案例:Netflix、YouTube和“看看” 153 2.7 套接字编程:生成网络应用 157 2.7.1 UDP套接字编程 159 2.7.2 TCP套接字编程 164 2.8 小结 170 课后习题和问题 171 套接字编程作业 180 Wireshark实验:HTTP 182 Wireshark实验:DNS 183 人物专访 184 第3章 运输层 187 3.1 概述和运输层服务 188 3.1.1 运输层和网络层的关系 188 3.1.2 因特网运输层概述 191 3.2 多路复用与多路分解 193 3.3 无连接运输:UDP 200 3.3.1 UDP报文段结构 204 3.3.2 UDP检验和 204 3.4 可靠数据传输原理 206 3.4.1 构造可靠数据传输协议 208 3.4.2 流水线可靠数据传输协议 217 3.4.3 回退N步 221 3.4.4 选择重传 226 3.5 面向连接的运输:TCP 233 3.5.1 TCP连接 233 3.5.2 TCP报文段结构 236 3.5.3 往返时间的估计与超时 241 3.5.4 可靠数据传输 244 3.5.5 流量控制 252 3.5.6 TCP连接管理 255 3.6 拥塞控制原理 261 3.6.1 拥塞原因与代价 261 3.6.2 拥塞控制方法 268 3.7 TCP拥塞控制 269 3.7.1 公平性 279 3.7.2 明确拥塞通告:网络辅助拥塞控制 282 3.8 小结 284 课后习题和问题 286 编程作业 301 Wireshark实验:探究TCP 302 Wireshark实验:探究UDP 302 人物专访 303 第4章 网络层:数据平面 305 4.1 网络层概述 306 4.1.1 转发和路由选择:数据平面和控制平面 306 4.1.2 网络服务模型 311 4.2 路由器工作原理 313 4.2.1 输入端口处理和基于目的地转发 316 4.2.2 交换 319 4.2.3 输出端口处理 321 4.2.4 何处出现排队 321 4.2.5 分组调度 325 4.3 网际协议:IPv4、寻址、IPv6及其他 329 4.3.1 IPv4数据报格式 330 4.3.2 IPv4数据报分片 332 4.3.3 IPv4编址 334 4.3.4 网络地址转换 345 4.3.5 IPv6 348 4.4 通用转发和SDN 354 4.4.1 匹配 356 4.4.2 动作 358 4.4.3 匹配加动作操作中的OpenFlow例子 358 4.5 小结 361 课后习题和问题 361 Wireshark实验 370 人物专访 371 第5章 网络层:控制平面 373 5.1 概述 374 5.2 路由选择算法 376 5.2.1 链路状态路由选择算法 379 5.2.2 距离向量路由选择算法 384 5.3 因特网中自治系统内部的路由选择:OSPF 391 5.4 ISP之间的路由选择:BGP 395 5.4.1 BGP的作用 395 5.4.2 通告BGP路由信息 396 5.4.3 确定优选的路由 398 5.4.4 IP任播 402 5.4.5 路由选择策略 403 5.4.6 拼装在一起:在因特网中呈现 406 5.5 SDN控制平面 407 5.5.1 SDN控制平面:SDN控制器和SDN网络控制应用程序 410 5.5.2 OpenFlow协议 412 5.5.3 数据平面和控制平面交互的例子 414 5.5.4 SDN的过去与未来 415 5.6 ICMP:因特网控制报文协议 419 5.7 网络管理和SNMP 421 5.7.1 网络管理框架 422 5.7.2 简单网络管理协议 424 5.8 小结 426 课后习题和问题 427 套接字编程作业 433 编程作业 434 Wireshark实验 435 人物专访 436 第6章 链路层和局域网 439 6.1 链路层概述 440 6.1.1 链路层提供的服务 442 6.1.2 链路层在何处实现 443 6.2 差错检测和纠正技术 444 6.2.1 奇偶校验 446 6.2.2 检验和方法 448 6.2.3 循环冗余检测 449 6.3 多路访问链路和协议 451 6.3.1 信道划分协议 453 6.3.2 随机接入协议 455 6.3.3 轮流协议 464 6.3.4 DOCSIS:用于电缆因特网接入的链路层协议 465 6.4 交换局域网 467 6.4.1 链路层寻址和ARP 468 6.4.2 以太网 474 6.4.3 链路层交换机 481 6.4.4 虚拟局域网 487 6.5 链路虚拟化:网络作为链路层 491 6.5.1 多协议标签交换 492 6.6 数据中心网络 495 6.7 回顾:Web页面请求的历程 500 6.7.1 准备:DHCP、UDP、IP和以太网 500 6.7.2 仍在准备:DNS和ARP 502 6.7.3 仍在准备:域内路由选择到DNS服务器 503 6.7.4 Web客户–服务器交互:TCP和HTTP 504 6.8 小结 506 课后习题和问题 507 Wireshark实验 515 人物专访 516 第7章 无线网络和移动网络 519 7.1 概述 520 7.2 无线链路和网络特征 525 7.2.1 CDMA 528 7.3 WiFi:802.11无线LAN 532 7.3.1 802.11体系结构 533 7.3.2 802.11 MAC协议 537 7.3.3 IEEE 802.11帧 542 7.3.4 在相同的IP子网中的移动性 546 7.3.5 802.11中的高级特色 547 7.3.6 个人域网络:蓝牙和ZigBee 548 7.4 蜂窝因特网接入 551 7.4.1 蜂窝网体系结构概述 551 7.4.2 3G蜂窝数据网:将因特网扩展到蜂窝用户 554 7.4.3 走向4G:LTE 557 7.5 移动管理:原理 560 7.5.1 寻址 562 7.5.2 路由选择到移动节点 564 7.6 移动IP 570 7.7 管理蜂窝网中的移动性 574 7.7.1 对移动用户呼叫的路由选择 576 7.7.2 GSM中的切换 577 7.8 无线和移动性:对高层协议的影响 580 7.9 小结 582 课后习题和问题 583 Wireshark实验 588 人物专访 589 第8章 计算机网络中的安全 593 8.1 什么是网络安全 594 8.2 密码学的原则 596 8.2.1 对称密钥密码体制 598 8.2.2 公开密钥加密 604 8.3 报文完整性和数字签名 610 8.3.1 密码散列函数 611 8.3.2 报文鉴别码 613 8.3.3 数字签名 614 8.4 端点鉴别 621 8.4.1 鉴别协议ap1.0 622 8.4.2 鉴别协议ap2.0 622 8.4.3 鉴别协议ap3.0 623 8.4.4 鉴别协议ap3.1 623 8.4.5 鉴别协议ap4.0 624 8.5 使电子邮件安全 626 8.5.1 安全电子邮件 627 8.5.2 PGP 630 8.6 使TCP连接安全:SSL 631 8.6.1 宏观描述 632 8.6.2 更完整的描述 635 8.7 网络层安全性:IPsec和虚拟专用网 637 8.7.1 IPsec和虚拟专用网 638 8.7.2 AH协议和ESP协议 640 8.7.3 安全关联 640 8.7.4 IPsec数据报 641 8.7.5 IKE:IPsec中的密钥管理 645 8.8 使无线LAN安全 646 8.8.1 有线等效保密 646 8.8.2 IEEE 802.11i 648 8.9 运行安全性:防火墙和入侵检测系统 651 8.9.1 防火墙 651 8.9.2 入侵检测系统 659 8.10 小结 662 课后习题和问题 664 Wireshark实验 672 IPsec实验 672 人物专访 673 第9章 多媒体网络 675 9.1 多媒体网络应用 676 9.1.1 视频的性质 676 9.1.2 音频的性质 677 9.1.3 多媒体网络应用的类型 679 9.2 流式存储视频 681 9.2.1 UDP流 683 9.2.2 HTTP流 684 9.3 IP语音 688 9.3.1 尽力而为服务的 688 9.3.2 在接收方消除音频的时延抖动 691 9.3.3 从丢包中恢复 694 9.3.4 学习案例:使用Skype的VoIP 697 9.4 实时会话式应用的协议 700 9.4.1 RTP 700 9.4.2 SIP 703 9.5 支持多媒体的网络 709 9.5.1 定制尽力而为网络 711 9.5.2 提供多种类型的服务 712 9.5.3 区分服务 719 9.5.4 每连接服务质量保证:资源预约和呼叫准入 723 9.6 小结 726 课后习题和问题 727 编程作业 735 人物专访 737 参考文献 |