本书包括"概述”"直连网络”"网络互连”"端到端的通信”"互联网应用层协议”共 5 章内容,较为系统全面地介绍了计算机网络的基本原理和基本应用:"直连网络”中介绍了数据链路层的相关内容,"网络互连”中介绍了网络层的相关内容,"端到端的通信”中介绍了运输层的相关内容,"互联网应用层协议”介绍了应用层的相关内容。每章都包含若干实验内容,且在最后附有习题,与其他计算机网络书籍不同,本书中与协议分析相关的主观题居多,而计算题相对较少,需要较多计算题的读者,可以参考由电子工业出版社出版、谢希仁教授编著的《计算机网络释疑与习题解答》一书。 本书需要读者具备初步的 Python 编程经验;当然,具备 C、C++或 Java 编程经验的读者,也能够理解本书中的 Python 程序。无编程经验的读者可以忽略与 Python 相关的实验内容。本书可作为计算机类专业和电气信息类专业的本科生教材,也可作为非计算机类相关专业的研究生教材;对于 IT 行业的从业人员及计算机网络工程的从业人员,本书也具有一定的参考价值。
李志远,桂林航天工业学院教授,原广西本科高校计算机类专业教学指导委员会委员,从事计算机网络教学及科研工作20余年,荣获广西区教育教学改项目二等奖,出版《计算机网络综合实验教程——协议分析与应用》等教材。
第 1 章 概述............................................................................................................................................1
1.1 计算机网络简介 ...................................................................................................................1
1.1.1 计算机网络的定义 ...................................................................................................1
1.1.2 计算机网络的分类 ...................................................................................................3
1.1.3 互联网边缘部分 .......................................................................................................5
1.1.4 互联网核心部分 .......................................................................................................6
1.2 计算机网络的性能指标 .......................................................................................................8
1.2.1 速率...........................................................................................................................8
1.2.2 带宽...........................................................................................................................9
1.2.3 时延(delay) ........................................................................................................12
1.2.4 吞吐量.....................................................................................................................15
1.2.5 丢包率.....................................................................................................................18
1.3 计算机网络体系结构 .........................................................................................................18
1.3.1 分层的体系结构 .....................................................................................................18
1.3.2 协议与分层.............................................................................................................20
1.3.3 TCP/IP 体系结构 ....................................................................................................26
1.4 互联网的发展 .....................................................................................................................28
1.4.1 互联网的起源.........................................................................................................28
1.4.2 TCP/IP 互联网的根基 ............................................................................................29
1.4.3 NSF 互联网的推进者.............................................................................................30
1.4.4 WWW:互联网的“分水岭”..............................................................................30
1.4.5 移动互联网.............................................................................................................31
1.5 本章实验.............................................................................................................................32
1.5.1 实验环境配置.........................................................................................................32
1.5.2 协议封装.................................................................................................................34
1.5.3 越层封装.................................................................................................................36
习题 .............................................................................................................................................40
第 2 章 直连网络..................................................................................................................................43
2.1 直连网络.............................................................................................................................43
2.1.1 直连网络的概念 .....................................................................................................43
2.1.2 直连网络的数据传输 .............................................................................................44
2.1.3 直连网络的硬件组成 .............................................................................................45
2.1.4 导向传输媒体.........................................................................................................46
2.1.5 非导向传输媒体 .....................................................................................................53
2.2 编码.....................................................................................................................................57
2.2.1 不归零编码 NRZ(Non-Return to Zero).............................................................58
2.2.2 曼彻斯特编码(Manchester Encoding)...............................................................59
2.2.3 差分曼彻斯特编码(Differential Manchester Encoding) ...................................59
2.3 成帧.....................................................................................................................................60
2.3.1 面向字符的协议 PPP..............................................................................................60
2.3.2 面向比特的协议 HDLC .........................................................................................65
2.4 差错检测.............................................................................................................................68
2.5 广播式以太网 .....................................................................................................................70
2.5.1 以太网标准.............................................................................................................70
2.5.2 以太网 MAC 帧......................................................................................................72
2.5.3 以太网 MAC 地址..................................................................................................74
2.5.4 传输媒体接入控制 .................................................................................................76
2.5.5 10BASE-T 网络......................................................................................................83
2.6 交换机.................................................................................................................................84
2.6.1 交换机概述.............................................................................................................84
2.6.2 交换机 MAC 地址学习 ..........................................................................................85
2.6.3 虚拟局域网 VLAN .................................................................................................87
2.7 高速以太网.........................................................................................................................91
2.7.1 快速以太网.............................................................................................................91
2.7.2 吉比特以太网.........................................................................................................94
2.7.3 10 吉比特以太网 ....................................................................................................95
2.7.4 40 吉比特以太网(40GbE).................................................................................96
2.8 本章实验.............................................................................................................................98
2.8.1 虚拟局域网.............................................................................................................98
2.8.2 交换机 MAC 地址学习 ........................................................................................103
2.8.3 帧的发送与接收 ...................................................................................................104
习题 ...........................................................................................................................................106
第 3 章 网络互连................................................................................................................................109
3.1 互连网络...........................................................................................................................109
3.1.1 互连网络的概念 ...................................................................................................109
3.1.2 路由器...................................................................................................................113
3.1.3 集线器、交换机和路由器 ...................................................................................116
3.2 网际协议 IP.......................................................................................................................118
3.2.1 IPv4 编址...............................................................................................................119
3.2.2 划分子网........................................................................................................................125
3.2.3 路由表与转发表 ...................................................................................................129
3.2.4 路由器分组转发 ...................................................................................................131
3.2.5 DHCP 协议 ...........................................................................................................135
3.2.6 地址解析协议 ARP ..............................................................................................141
3.2.7 网络地址转换 NAT ..............................................................................................145
3.2.8 IP 分组的格式.......................................................................................................147
3.2.9 网际控制报文协议 ICMP.....................................................................................152
3.3 路由选择协议 ...................................................................................................................160
3.3.1 概述.......................................................................................................................160
3.3.2 内部网关协议 RIP................................................................................................162
3.3.3 内部网关协议 OSPF.............................................................................................170
3.3.4 外部网关协议 BGP ..............................................................................................182
3.4 多协议标签交换 MPLS....................................................................................................199
3.4.1 概述.......................................................................................................................199
3.4.2 MPLS 中的几个基本概念....................................................................................200
3.4.3 MPLS 的基本操作................................................................................................202
3.4.4 标签分发协议 LDP...............................................................................................204
3.5 IPV6 ...................................................................................................................................216
3.5.1 概述.......................................................................................................................216
3.5.2 IPv6 分组的格式...................................................................................................216
3.5.3 IPv6 地址...............................................................................................................220
3.5.4 ICMPv6 .................................................................................................................226
3.5.5 邻站发现协议 NDP ..............................................................................................228
3.5.6 重复地址检测 DAD..............................................................................................234
3.6 本章实验...........................................................................................................................236
3.6.1 独臂路由接入互连网络 .......................................................................................236
3.6.2 DHCP 与 NAT.......................................................................................................240
3.6.3 单区域的 OSPF 的配置........................................................................................245
3.6.4 简单的路由追踪程序的实现 ...............................................................................248
3.6.5 ARP 协议实现活动主机的探测...........................................................................249
习题 ...........................................................................................................................................252
第 4 章 端到端的通信........................................................................................................................259
4.1 端到端的概念 ...................................................................................................................259
4.1.1 端系统与网络层 ...................................................................................................259
4.1.2 端口的概念...........................................................................................................261
4.1.3 端口监听的概念 ...................................................................................................262
4.2 UDP...................................................................................................................................263
4.2.1 概述.......................................................................................................................263
4.2.2 UDP 的特点..........................................................................................................263
4.2.3 UDP 报文的格式 ..................................................................................................265
4.3 TCP....................................................................................................................................267
4.3.1 TCP 概述...............................................................................................................268
4.3.2 TCP 连接的概念...................................................................................................270
4.3.2 TCP 可靠的传输...................................................................................................271
4.3.4 TCP 报文段的格式...............................................................................................275
4.3.5 发送 TCP 报文段的时机......................................................................................281
4.3.6 TCP 超时重传时间...............................................................................................284
4.3.6 TCP 流量控制.......................................................................................................287
4.3.7 TCP 拥塞控制.......................................................................................................293
4.3.8 主动队列管理 AQM.............................................................................................302
4.3.9 TCP 连接管理.......................................................................................................303
4.3.10 TCP 连接的管理模型.........................................................................................308
4.3.11 TCP 定时器.........................................................................................................311
4.4 TCP 与 UDP 的区别.........................................................................................................311
4.5 本章实验...........................................................................................................................312
4.5.1 Socket 程序 ...........................................................................................................313
4.5.2 通用的建立 TCP 连接的程序..............................................................................318
4.5.3 端口扫描程序.......................................................................................................323
习题 ...........................................................................................................................................329
第 5 章 互联网应用层协议................................................................................................................334
5.1 域名系统 DNS ..................................................................................................................334
5.1.1 概述.......................................................................................................................334
5.1.2 域名空间...............................................................................................................335
5.1.3 资源记录...............................................................................................................337
5.1.4 域名服务器...........................................................................................................341
5.1.5 域名的解析过程 ...................................................................................................344
5.1.6 DNS 报文的格式 ..................................................................................................348
5.2 WEB 与 HTTP....................................................................................................................353
5.2.1 HTTP 协议............................................................................................................353
5.2.2 HTTP 报文的格式 ................................................................................................359
5.2.3 代理服务器...........................................................................................................362
5.2.4 数据同步...............................................................................................................364
5.3 文件传输协议 FTP ...........................................................................................................369
5.3.1 概述.......................................................................................................................369
5.3.2 FTP 的工作方式 ...................................................................................................369
5.3.3 FTP 会话 ...............................................................................................................373
5.4 简单文件传输协议 TFTP.................................................................................................374
5.4.1 概述.......................................................................................................................374
5.4.2 TFTP 分组的格式.................................................................................................375
5.4.3 TFTP 实例分析.....................................................................................................377
5.5 远程登录 TELNET..............................................................................................................379
5.5.1 网络虚拟终端 NVT..............................................................................................379
5.5.2 Telnet 控制命令 ....................................................................................................380
5.5.3 选项协商...............................................................................................................381
5.5.4 Telnet 的使用 ........................................................................................................384
5.5.5 Telnet 传输效率 ....................................................................................................386
5.5.6 NVT 的安全性......................................................................................................387
5.6 电子邮件 EMAIL................................................................................................................388
5.6.1 概述.......................................................................................................................388
5.6.2 简单邮件传输协议 SMTP....................................................................................389
5.6.3 电子邮件的基本格式 ...........................................................................................392
5.6.4 邮局访问协议 POP3.............................................................................................393
5.6.5 基于 Web 的电子邮件..........................................................................................399
5.6.6 通用互联网邮件扩充 MIME ...............................................................................400
5.7 本章实验...........................................................................................................................404
5.7.1 VMware 中安装 Ubuntu 22.04 LTS .....................................................................404
5.7.2 安装配置 DNS ......................................................................................................405
5.7.3 安装配置 Web 服务..............................................................................................411
5.7.4 域名解析客户程序设计 .......................................................................................419
习题 ...........................................................................................................................................423
附录 A 计算机网络常用缩略词 ........................................................................................................427
参考文献................................................................................................................................................431