计算机网络:自顶向下方法(原书第7版)
- [美] James,F.Kurose,Keith,W.Ross 著,陈鸣 译 译
- 出版社: 机械工业出版社
- ISBN:9787111599715
- 版次:7
- 商品编码:12392810
- 品牌:机工出版
- 包装:平装
- 丛书名: 计算机科学丛书
- 开本:16开
- 出版时间:2018-07-01
- 用纸:胶版纸
- 页数:510
内容简介
本书是经典的计算机网络教材之一,采用了作者的自顶向下方法来讲授计算机网络的原理及其协议,自16年前第1版出版以来已经被数百所大学和学院选作教材,被译为14种语言。第7版保持了以前版本的特色,继续关注因特网和计算机网络的现代处理方式,注重原理和实践,为计算机网络教学提供了一种新颖和与时俱进的方法。同时,第7版进行了相当多的修订和更新,首次改变了各章的组织结构,将网络层分成两章(第4章关注网络层的“数据平面”,第5章关注网络层的“控制平面”),并将网络管理主题放入了新的第5章中。此外,为了反映自第6版以来计算机网络领域的新变化,对其他章节也进行了更新,删除了FTP和分布式散列表的材料,用流行的因特网显式拥塞通告(ECN)材料代替了ATM网络的材料,更新了有关802.11(所谓WiFi)网络和蜂窝网络(包括4G和LTE)的材料,全面修订并增加了新的课后习题,等等。
作者简介
詹姆斯·F. 库罗斯(James F. Kurose) 美国马萨诸塞大学阿默斯特分校计算机科学系教授,研究兴趣包括网络协议和体系结构、网络测量、多媒体通信以及建模和性能评价。由于在教育领域的杰出贡献,他获得了包括IEEE Taylor Booth教育奖章在内的多个教育奖励和荣誉。他是IEEE和ACM会士,还曾担任《IEEE通信会刊》和《IEEE/ACM网络会刊》总编辑。
基思·W. 罗斯(Keith W. Ross) 美国纽约大学(NYU)上海分校工程和计算机科学学院院长以及NYU计算机科学和工程系的Leonard J. Shustek首席教授,研究兴趣包括隐私、社交网络、对等网络、因特网测量、内容分发网络和随机建模。他是IEEE和ACM会士,还曾获得Infocom 2009年论文奖,《多媒体通信》2011年和2008年论文奖。
目录
目 录
Computer Networking:A Top-Down Approach,Seventh Edition
出版者的话
作译者简介
译者序
前言
第1章 计算机网络和因特网1
1.1 什么是因特网1
1.1.1 具体构成描述1
1.1.2 服务描述4
1.1.3 什么是协议5
1.2 网络边缘6
1.2.1 接入网8
1.2.2 物理媒体13
1.3 网络核心15
1.3.1 分组交换15
1.3.2 电路交换19
1.3.3 网络的网络22
1.4 分组交换网中的时延、丢包和吞吐量24
1.4.1 分组交换网中的时延概述24
1.4.2 排队时延和丢包27
1.4.3 端到端时延28
1.4.4 计算机网络中的吞吐量30
1.5 协议层次及其服务模型32
1.5.1 分层的体系结构32
1.5.2 封装36
1.6 面对攻击的网络37
1.7 计算机网络和因特网的历史40
1.7.1 分组交换的发展:1961~197241
1.7.2 专用网络和网络互联:1972~198042
1.7.3 网络的激增:1980~199042
1.7.4 因特网爆炸:20世纪90年代43
1.7.5 最新发展44
1.8 小结44
课后习题和问题46
复习题46
习题47
Wireshark实验51
人物专访52
第2章 应用层54
2.1 应用层协议原理54
2.1.1 网络应用程序体系结构55
2.1.2 进程通信57
2.1.3 可供应用程序使用的运输服务59
2.1.4 因特网提供的运输服务60
2.1.5 应用层协议63
2.1.6 本书涉及的网络应用63
2.2 Web和HTTP64
2.2.1 HTTP概况64
2.2.2 非持续连接和持续连接65
2.2.3 HTTP报文格式67
2.2.4 用户与服务器的交互:cookie70
2.2.5 Web缓存72
2.2.6 条件GET方法74
2.3 因特网中的电子邮件75
2.3.1 SMTP76
2.3.2 与HTTP的对比78
2.3.3 邮件报文格式79
2.3.4 邮件访问协议79
2.4 DNS:因特网的目录服务83
2.4.1 DNS提供的服务83
2.4.2 DNS工作机理概述85
2.4.3 DNS记录和报文89
2.5 P2P文件分发92
2.6 视频流和内容分发网97
2.6.1 因特网视频97
2.6.2 HTTP流和DASH98
2.6.3 内容分发网98
2.6.4 学习案例:Netflix、YouTube和“看看”101
2.7 套接字编程:生成网络应用104
2.7.1 UDP套接字编程105
2.7.2 TCP套接字编程109
2.8 小结112
课后习题和问题113
复习题113
习题114
套接字编程作业118
Wireshark实验:HTTP119
Wireshark实验:DNS120
人物专访120
第3章 运输层121
3.1 概述和运输层服务121
3.1.1 运输层和网络层的关系122
3.1.2 因特网运输层概述123
3.2 多路复用与多路分解125
3.3 无连接运输:UDP130
3.3.1 UDP报文段结构132
3.3.2 UDP检验和133
3.4 可靠数据传输原理134
3.4.1 构造可靠数据传输协议135
3.4.2 流水线可靠数据传输协议143
3.4.3 回退N步145
3.4.4 选择重传148
3.5 面向连接的运输:TCP152
3.5.1 TCP连接152
3.5.2 TCP报文段结构154
3.5.3 往返时间的估计与超时157
3.5.4 可靠数据传输159
3.5.5 流量控制164
3.5.6 TCP连接管理166
3.6 拥塞控制原理170
3.6.1 拥塞原因与代价171
3.6.2 拥塞控制方法175
3.7 TCP拥塞控制176
3.7.1 公平性183
3.7.2 明确拥塞通告:网络辅助拥塞控制184
3.8 小结185
课后习题和问题187
复习题187
习题189
编程作业195
Wireshark实验:探究TCP196
Wireshark实验:探究UDP196
人物专访196
第4章 网络层:数据平面198
4.1 网络层概述198
4.1.1 转发和路由选择:数据平面和控制平面199
4.1.2 网络服务模型202
4.2 路由器工作原理203
4.2.1 输入端口处理和基于目的地转发205
4.2.2 交换207
4.2.3 输出端口处理209
4.2.4 何处出现排队209
4.2.5 分组调度211
4.3 网际协议:IPv4、寻址、IPv6及其他214
4.3.1 IPv4数据报格式214
4.3.2 IPv4数据报分片216
4.3.3 IPv4编址217
4.3.4 网络地址转换225
4.3.5 IPv6227
4.4 通用转发和SDN231
4.4.1 匹配233
4.4.2 动作234
4.4.3 匹配加动作操作中的OpenFlow例子234
4.5 小结236
课后习题和问题236
复习题236
习题237
Wireshark实验240
人物专访241
第5章 网络层:控制平面242
5.1 概述242
5.2 路由选择算法244
5.2.1 链路状态路由选择算法246
5.2.2 距离向量路由选择算法248
5.3 因特网中自治系统内部的路由选择:OSPF254
5.4 ISP之间的路由选择:BGP256
5.4.1 BGP的作用257
5.4.2 通告BGP路由信息257
5.4.3 确定最好的路由259
5.4.4 IP任播261
5.4.5 路由选择策略262
5.4.6 拼装在一起:在因特网中呈现264
5.5 SDN控制平面265
5.5.1 SDN控制平面:SDN控制器和SDN网络控制应用程序266
5.5.2 OpenFlow协议267
5.5.3 数据平面和控制平面交互的例子269
5.5.4 SDN的过去与未来270
5.6 ICMP:因特网控制报文协议272
5.7 网络管理和SNMP274
5.7.1 网络管理框架274
5.7.2 简单网络管理协议275
5.8 小结277
课后习题和问题278
复习题278
习题279
套接字编程作业281
编程作业282
Wireshark实验282
人物专访283
第6章 链路层和局域网285
6.1 链路层概述285
6.1.1 链路层提供的服务287
6.1.2 链路层在何处实现287
6.2 差错检测和纠正技术288
6.2.1 奇偶校验289
6.2.2 检验和方法290
6.2.3 循环冗余检测291
6.3 多路访问链路和协议292
6.3.1 信道划分协议294
6.3.2 随机接入协议295
6.3.3 轮流协议301
6.3.4 DOCSIS:用于电缆因特网接入的链路层协议301
6.4 交换局域网302
6.4.1 链路层寻址和ARP303
6.4.2 以太网308
6.4.3 链路层交换机312
6.4.4 虚拟局域网317
6.5 链路虚拟化:网络作为链路层319
6.6 数据中心网络322
6.7 回顾:Web页面请求的历程326
6.7.1 准备:DHCP、UDP、IP和以太网326
6.7.2 仍在准备:DNS和ARP327
6.7.3 仍在准备:域内路由选择到DNS服务器328
6.7.4 Web客户-服务器交互:TCP和HTTP329
6.8 小结330
课后习题和问题331
复习题331
习题331
Wireshark实验335
人物专访336
第7章 无线网络和移动网络338
7.1 概述339
7.2 无线链路和网络特征341
7.3 WiFi:802.11无线LAN346
7.3.1 802.11体系结构347
7.3.2 802.11 MAC协议350
7.3.3 IEEE 802.11帧353
7.3.4 在相同的IP子网中的移动性355
7.3.5 802.11中的高级特色356
7.3.6 个人域网络:蓝牙和ZigBee357
7.4 蜂窝因特网接入358
7.4.1 蜂窝网体系结构概述359
7.4.2 3G蜂窝数据网:将因特网扩展到蜂窝用户360
7.4.3 走向4G:LTE362
7.5 移动管理:原理364
7.5.1 寻址367
7.5.2 路由选择到移动节点367
7.6 移动IP371
7.7 管理蜂窝网中的移动性374
7.7.1 对移动用户呼叫的路由选择375
7.7.2 GSM中的切换376
7.8 无线和移动性:对高层协议的影响378
7.9 小结380
课后习题和问题380
复习题380
习题381
Wireshark实验383
人物专访383
第8章 计算机网络中的安全385
8.1 什么是网络安全385
8.2 密码学的原则387
8.2.1 对称密钥密码体制388
8.2.2 公开密钥加密392
8.3 报文完整性和数字签名396
8.3.1 密码散列函数397
8.3.2 报文鉴别码398
8.3.3 数字签名399
8.4 端点鉴别404
8.4.1 鉴别协议ap1.0404
8.4.2 鉴别协议ap2.0405
8.4.3 鉴别协议ap3.0405
8.4.4 鉴别协议ap3.1406
8.4.5 鉴别协议ap4.0406
8.5 安全电子邮件407
8.5.1 安全电子邮件407
8.5.2 PGP409
8.6 使TCP连接安全:SSL410
8.6.1 宏观描述411
8.6.2 更完整的描述413
8.7 网络层安全性:IPsec和虚拟专用网415
8.7.1 IPsec和虚拟专用网415
8.7.2 AH协议和ESP协议416
8.7.3 安全关联416
8.7.4 IPsec数据报417
8.7.5 IKE:IPsec中的密钥管理420
8.8 使无线LAN安全420
8.8.1 有线等效保密421
8.8.2 IEEE 802.11i422
8.9 运行安全性:防火墙和入侵检测系统424
8.9.1 防火墙424
8.9.2 入侵检测系统429
8.10 小结431
课后习题和问题432
复习题432
......
前言/序言
前 言Computer Networking:A Top-Down Approach,Seventh Edition欢迎阅读《计算机网络:自顶向下方法》的第7版。自从本书第1版于16年前出版以来,这本书已经被数百所大学和学院采用,被译为14种语言,并被世界上几十万的学生和从业人员使用。我们倾听了许多读者的意见,赞扬之声不绝于耳。
第7版的新颖之处我们认为本书成功的一个重要原因是,持续地为计算机网络教学提供了一种新颖和与时俱进的方法。在第7版中,我们做了不少改变,但也保持了我们认为(并且得到了使用本书的教师和学生的认可)本书最为重要的方面:它的自顶向下方法,它关注因特网和计算机网络的现代处理方式,它的注重原理和实践,以及它易于理解的风格和学习计算机网络的方法。然而,第7版进行了相当多的修订和更新。
本书的长期读者将注意到,自该教科书出版以来,我们首次改变了各章的组织结构。以往包括在一章中的网络层,现在包括在第4章(该章关注网络层的所谓“数据平面”组件)和第5章(该章关注网络层的“控制平面”)中。网络层范围的扩展反映了软件定义网络(SDN)重要性的迅速提升,无可置疑地证明了十年来网络非常重要和令人兴奋的进展。尽管SDN是相对新近的创新,但它已经迅速在实践中得到应用,所以介绍现代计算机网络而不涉及SDN已经成为不可想象的事。先前包括在第9章中的网络管理主题,现在已经放入新的第5章中了。我们一如既往地更新了本书的许多其他章节,以反映自第6版以来网络领域的新变化。从教科书中撤除的材料一如既往地能够在本书的配套网站中找到。比较重要的一些更新如下:
为反映因特网不断增长的范围和应用,更新了第1章。
讨论应用层的第2章进行了重大更新。我们删除了FTP和分布式散列表的材料,增加了有关应用层视频流和内容分发网,以及Netflix和YouTube学习案例的新节。套接字编程已从Python 2更新为Python 3。
讨论运输层的第3章进行了适度更新。异步传递方式(ATM)网络的材料已被更流行的因特网显式拥塞通告(ECN)的材料所代替,用ECN教授相同的原理。
第4章讨论网络层的“数据平面”组件。数据平面是每台路由器的转发功能,它决定到达路由器的一条输入链路的分组是如何转发到该路由器的一条输出链路的。我们更新了在所有前面版本中都能找到的有关传统因特网转发的材料,并且增加了分组调度的材料。还增加了有关通用转发的新节,就像SDN中实践的那样。该章也有很多更新。有关多播和广播通信方面的材料已被删除。
第5章讨论网络层的控制平面功能。这种网络范围的逻辑控制着数据报如何沿着从源主机到目的主机的路由器的端到端路径选择路由。如同前面版本一样,我们包括路由选择算法以及在今天的因特网中所使用的路由选择协议(更新了对BGP的讨论)。增加了有关SDN控制平面的新节,讲述了如何在所谓的SDN控制器中实现路由选择和其他功能。
第7章讨论无线网络和移动网络,更新了有关802.11(所谓WiFi)网络和蜂窝网络(包括4G和LTE)的材料。
第8章讨论网络安全,这在第6版中已经全面更新过了,本版中该章仅进行了适度更新。
第9章较之第6版进行了适度调整,有关视频流和内容分发网的材料已经放到第2章了,有关分组调度的材料已经放进第4章了。
增加了与每章后面习题相关的重要新材料。与前面各版一样,对课后习题进行了修订、增加和删除。
在新版本的修订过程中,我们的目标一如既往,继续关注因特网和计算机网络的现代处理方式,注重原理和实践。
本书读者对象本书适用于计算机网络的第一门课程,既可用于计算机科学系的学生,也可用于电气工程系的学生。就编程语言而言,本书仅假定学生具有C、C++、Java或Python的编程经验(也只是在几个地方用到)。与许多入门性的其他计算机网络教科书相比,尽管本书表述更为精确,分析更为细致,然而书中很少用到高中阶段没有教过的数学概念。我们有意避免使用任何高等微积分、概率论或随机过程的概念(尽管我们为具有这种高级背景的学生准备了某些课后习题)。因此,本书适用于本科生课程和一年级研究生课程。它对于电信业的从业人员也应当有用。
本书的独特之处计算机网络这门课程极为复杂,涉及许多以错综复杂的方式彼此交织的概念、协议和技术。为了处理这种大跨度和高复杂性,许多计算机网络教科书都围绕计算机网络体系结构的“层次”来组织内容。借助于这种分层的组织结构,学生能够透过计算机网络的复杂性看到其内部,他们在学习整个体系结构的某个部分中的独特概念和协议的同时,也能看清所有这些部分如何整合在一起的全貌。从教学法的角度来看,我们的个人体验是这种分层的教学方法的确是卓有成效的。尽管如此,我们发现那种自底向上的传统教学方法,即从物理层到应用层逐层进行讲解的方法,对于现代计算机网络课程并非是最佳的方法。
自顶向下方法本书于16年前首次以自顶向下的方式来对待网络,这就是说从应用层开始向下一直讲到物理层。我们从教师以及学生那里得到的反馈证实了这种自顶向下方法有许多好处,并且从教学法来讲的确很好实施。第一
更多建议: