计算机科学丛书 计算机网络问题与解决方案 一种构建弹性现代网络的创新方法
作者:曹洪伟,石涛声译;(美国)Russ White,伊桑·班克斯
出版时间:2019年版
丛编项: 计算机科学丛书
内容简介
《计算机网络问题与解决方案:一种构建弹性现代网络的创新方法》提供了一种通过理解和解决实际问题来构建现代网络的创新方法,包括四部分。第一部分(第1~10章)讲解数据平面,具体包括数据传输中的问题与解决方案、网络传输建模、底层传输、高层数据传输、层间发现、分组交换、服务质量、网络虚拟化和传输安全等;第二部分(第11~20章)介绍控制平面,具体包括拓扑发现、单播无环路径、对拓扑变化的响应、距离向量控制平面、链路状态与路径向量控制平面、控制平面中的策略、集中式控制平面、故障域与信息隐藏等;第三部分(第21~24章)为网络设计,讲解了安全性、网络设计模式、冗余与弹性及故障排除;第四部分(第25~30章)主要关注网络工程中的新趋势,如网络功能虚拟化、云计算的概念与挑战、物联网等,并展望了网络工程的未来。《计算机网络问题与解决方案:一种构建弹性现代网络的创新方法》适合作为高校计算机网络课程的教材和参考书,也可供网络工程师阅读参考。
目录
出版者的话
译者序
前言
作者简介
译者简介
第一部分 数据平面
第1章 基本概念
1.1 是艺术还是工程
1.2 电路交换
1.3 分组交换
1.3.1 分组交换操作
1.3.2 分组交换网络中的流量控制
1.4 固定与可变长度数据帧
1.5 无环路径计算
1.6 服务质量
1.7 集中式控制平面的反击
1.8 复杂性
1.8.1 为什么如此复杂
1.8.2 定义复杂性
1.8.3 通过细腰模型管理复杂性
1.9 总结思考
1.10 拓展阅读
1.11 复习题
第2章 数据传输中的问题与解决方案
2.1 数字语法和数据列集
2.1.1 数字语法和字典
2.1.2 固定长度字段
2.1.3 类型长度值
2.1.4 共享对象字典
2.2 差错
2.2.1 差错检测
2.2.2 纠错
2.3 多路复用
2.3.1 设备与应用程序的寻址
2.3.2 多播
2.3.3 选播
2.4 流量控制
2.4.1 窗口机制
2.4.2 协商比特率
2.5 总结思考
2.6 拓展阅读
2.7 复习题
第3章 网络传输建模
3.1 美国国防部模型
3.2 开放系统互连模型
3.3 递归互联网架构模型
3.4 面向连接与无连接
3.5 总结思考
3.6 拓展阅读
3.7 复习题
第4章 底层传输
4.1 以太网
4.1.1 多路复用
4.1.2 差错控制
4.1.3 数据列集
4.1.4 流量控制
4.2 无线802.1 1协议
4.2.1 多路复用
4.2.2 数据列集、差错控制和流量控制
4.3 总结思考
4.4 拓展阅读
4.5 复习题
第5章 高层数据传输
5.1 IP
5.1.1 传输与列集
5.1.2 多路复用
5.2 TCP
5.2.1 流量控制
5.2.2 差错控制
5.2.3 TCP端口号
5.2.4 TCP会话的建立
5.3 QUIC
5.4 ICMP
5.5 总结思考
5.6 拓展阅读
5.7 复习题
第6章 层间发现
6.1 层间发现的解决方案
6.1.1 众所周知和手动配置的标识符
6.1.2 映射数据库和协议
6.1.3 协议中的通告标识符映射
6.1.4 从一个标识符计算另一个标识符
6.2 层间发现示例
6.2.1 DNS
6.2.2 DHCP
6.2.3 IPv4地址解析协议
6.2.4 IPv6邻居发现
6.3 默认网关问题
6.4 总结思考
6.5 拓展阅读
6.6 复习题
第7章 分组交换
7.1 从物理介质到内存
7.2 数据包处理
7.2.1 交换
7.2.2 路由
7.2.3 为什么需要路由
7.2.4 等价多路径
7.2.5 数据包处理引擎
7.3 跨越总线
7.4 从内存到物理介质
7.5 总结思考
7.6 拓展阅读
7.7 复习题
第8章 服务质量
8.1 定义问题空间
8.2 分级
8.2.1 分级保持
8.2.2 无标记的互联网
8.3 拥塞管理
8.3.1 及时性:低延迟队列
8.3.2 公平性:基于分级的加权公平队列
8.3.3 过度拥塞
8.3.4 其他QoS拥塞管理工具
8.4 队列管理
8.4.1 管理一个满载缓冲区:加权随机早期检测
8.4.2 管理缓冲延迟、缓冲膨胀和延迟控制
8.5 总结思考
8.6 拓展阅读
8.7 复习题
第9章 网络虚拟化
9.1 理解虚拟网络
9.1.1 在IP网络上提供以太网服务
9.1.2 一个公司网络的虚拟私有访问
9.1.3 虚拟化问题和解决方案总结
9.2 分段路由
9.2.1 多协议标签交换的分段路由
9.2.2 IPv6的分段路由
9.2.3 信令分段路由标签
9.3 软件定义广域网
9.4 复杂性和虚拟化
9.4.1 交互表面和共享风险链路组
9.4.2 交互表面和覆盖控制平面
9.5 总结思考
9.6 拓展阅读
9.7 复习题
第10章 传输安全
10.1 问题空间
10.1.1 验证数据
10.1.2 保护数据不被窃取
10.1.3 保护用户隐私
10.2 解决方案空间
10.2.1 加密
10.2.2 密钥交换
10.2.3 加密散列
10.2.4 隐藏用户信息
10.3 传输层安全
10.4 总结思考
10.5 拓展阅读
10.6 复习题
第二部分 控制平面
第11章 拓扑发现
11.1 节点、边和可达目的地
11.1.1 节点
11.1.2 边
11.1.3 可达目的地
11.1.4 拓扑结构
11.2 学习网络拓扑
11.2.1 检测其他网络设备
11.2.2 检测双向连接性
11.2.3 检测最大传输单元
11.3 学习可达目的地
11.3.1 响应式学习
11.3.2 主动式学习
11.4 通告可达性和拓扑
11.4.1 决定何时通告可达性及拓扑结构
11.4.2 可达性的响应式分发
11.4.3 可达性的主动式分发
11.5 在控制平面之间重新分发
11.5.1 重新分发与度量
11.5.2 重新分发与路由循环
11.6 总结思考
11.7 拓展阅读
11.8 复习题
第12章 单播无环路径(1)
12.1 哪条路径是无环路径
12.2 树
12.3 无环备选路径
12.3.1 瀑布(或分水岭)模型
12.3.2 P/Q空间
12.3.3 远程无环备选路径
12.4 Bellman-Ford无环路径计算
12.5 Garcia扩散更新算法
12.6 总结思考
12.7 拓展阅读
12.8 复习题
第13章 单播无环路径(2)
13.1 Dijkstra最短路径优先
13.1.1 部分和增量SPF
13.1.2 计算LFA和rLFA
13.2 路径向量
13.3 非相交路径算法
13.3.1 双连接网络
13.3.2 Suurballe非相交路径算法
13.3.3 最大冗余树
13.4 双向连接性
13.5 总结思考
13.6 拓展阅读
13.7 复习题
第14章 对拓扑变化的响应
14.1 检测拓扑变化
14.1.1 通过轮询来检测故障
14.1.2 事件驱动的故障检测
14.1.3 比较事件驱动和基于轮询的检测
14.1.4 示例:双向转发检测
14.2 变更分发
14.2.1 洪泛
14.2.2 逐跳
14.2.3 集中式存储
14.3 一致性、可用性和分区
14.4 总结思考
14.5 拓展阅读
14.6 复习题
第15章 距离向量控制平面
15.1 控制平面分类
15.2 生成树协议
15.2.1 构建一棵无环树
15.2.2 学习可达目的地址
15.2.3 生成树协议的总结思考
15.3 路由信息协议
15.3.1 绑定Bellman-Ford算法到RIP
15.3.2 对拓扑变化的响应
15.3.3 RIP的总结思考
15.4 增强内部网关路由协议
15.4.1 对拓扑变化的响应
15.4.2 邻居发现与可靠传输
15.4.3 EIGRP的总结思考
15.5 拓展阅读
15.6 复习题
第16章 链路状态与路径向量控制平面
16.1 OSPF和IS-IS简史
16.2 IS-IS协议
16.2.1 OSI寻址
16.2.2 IS-IS中的数据列集
16.2.3 邻居发现和拓扑发现
16.2.4 可靠的洪泛
16.2.5 IS-IS的总结思考
16.3 OSPF
16.3.1 OSPF中的数据列集
16.3.2 邻居发现和拓扑发现
16.3.3 可靠的洪泛
16.3.4 OSPF的总结思考
16.4 OSPF和IS-IS中的通用元素
16.4.1 多址链路
16.4.2 链路状态协议中概念化链路、节点和可达性
16.4.3 验证SPF中的双向连接性
16.5 边界网关协议
16.5.1 BGP对等操作
16.5.2 BGP的最佳路径决策过程
16.5.3 BGP的通告规则
16.5.4 BGP的总结思考
16.6 总结思考
16.7 拓展阅读
16.8 复习题
第17章 控制平面中的策略
17.1 控制平面策略用例
17.1.1 冷/热土豆路由
17.1.2 资源分割
17.1.3 应用优化的流量固定
17.2 定义控制平面策略
17.3 控制平面策略与复杂性
17.3.1 再谈冷/热土豆路由
17.3.2 资源分割
17.3.3 应用的流量固定
17.4 总结思考
17.5 拓展阅读
17.6 复习题
第18章 集中式控制平面
18.1 讨论“软件定义”的定义
18.1.1 接口分类
18.1.2 功能分层
18.2 BGP作为SDN
18.3 Fibbing
18.4 I2RS
18.5 PCEP
18.6 OpenFlow
18.7 CAP定理和辅助性
18.8 总结思考
18.9 拓展阅读
18.10 复习题
第19章 故障域与信息隐藏
19.1 问题空间
19.1.1 定义控制平面状态范围
19.1.2 正反馈环路
19.2 解决方案空间
19.2.1 拓扑信息汇总
19.2.2 可达性信息聚合
19.2.3 可达性信息过滤
19.2.4 控制平面分层
19.2.5 缓存
19.2.6 减速
19.3 总结思考
19.4 拓展阅读
19.5 复习题
第20章 信息隐藏示例
20.1 拓扑信息汇总
20.1.1 IS-IS
20.1.2 OSPF
20.2 聚合
20.3 分层
20.3.1 BGP作为一个可达性覆盖层
20.3.2 带有控制器覆盖层的分段路由
20.4 减慢状态速度
20.4.1 指数退避
20.4.2 链路状态的洪泛缩减
20.5 总结思考
20.6 拓展阅读
20.7 复习题
第三部分 网络设计
第21章 安全性的宽泛讨论
21.1 问题的范围
21.1.1 生物特征识别难题
21.1.2 定义
21.1.3 问题空间
21.2 解决方案空间
21.2.1 深度防御
21.2.2 访问控制
21.2.3 数据保护
21.2.4 服务可用性保证
21.3 作为安全模型的OODA循环
21.3.1 观察
21.3.2 调整
21.3.3 决策
21.3.4 行动
21.4 总结思考
21.5 拓展阅读
21.6 复习题
第22章 网络设计模式
22.1 问题空间
22.1.1 解决业务问题
22.1.2 将业务需求转换为技术需求
22.1.3 什么是好的网络设计
22.2 分层设计
22.3 常见拓扑结构
22.3.1 环形拓扑
22.3.2 网格拓扑
22.3.3 星形拓扑
22.3.4 平面、非平面和规则化
22.4 总结思考
22.5 拓展阅读
22.6 复习题
第23章 冗余与弹性
23.1 问题空间:网络故障对应用程序的影响
23.2 弹性的定义
23.3 创建弹性的工具-冗余
23.3.1 共享风险链路组
23.3.2 在线软件升级和优雅重启
23.3.3 双平面与多平面核心
23.4 模块化和弹性
23.5 总结思考
23.6 拓展阅读
23.7 复习题
第24章 故障排除
24.1 目的是什么
24.2 组件是什么
24.3 模型和故障排除
24.3.1 构建How模型
24.3.2 构建What模型
24.3.3 建立精准模型
24.3.4 模型之间的切换
24.4 二分法和移动
24.4.1 使用可操控性
24.4.2 在测试之前简化
24.5 解决问题
24.6 总结思考
24.7 拓展阅读
24.8 复习题
第四部分 当前热门话题
第25章 分解、超融合及不断变化的网络
25.1 计算资源和应用程序的变化
25.1.1 汇聚、分解、超融合和可合成
25.1.2 应用程序的虚拟化和分解
25.2 网络设计的影响
25.2.1 东西网络流量的兴起
25.2.2 抖动和延迟的兴起
25.3 分组交换Fabric
25.3.1 一个Fabric的特性
25.3.2 骨干和叶子节点
25.3.3 骨干和叶子节点上的流量工程
25.3.4 大规模的骨干和叶子节点
25.4 网络中的分解
25.5 总结思考
25.6 拓展阅读
25.7 复习题
第26章 网络自动化案例
26.1 自动化的概念
26.2 现代自动化方法
26.2.1 NETCONF
26.2.2 RESTCONF
26.3 具有可编程接口的自动化
26.4 on-box自动化
26.5 基于基础设施自动化工具的网络自动化
26.6 网络控制器与自动化
26.7 用于部署的网络自动化
26.8 对未来网络自动化的总结思考:自动化到全自动
26.9 拓展阅读
26.10 复习题
第27章 网络功能虚拟化
27.1 网络设计的灵活性
27.2 水平扩展
27.3 通过自动化减少服务时间
27.3.1 中心化策略管理
27.3.2 基于意图的网络
27.3.3 VNF自动化的好处
27.4 计算优势与架构
27.5 考虑权衡
27.5.1 状态
27.5.2 优化
27.5.3 表面
27.5.4 其他需要考虑的因素
27.6 总结思考
27.7 拓展阅读
27.8 复习题
第28章 云计算的概念和挑战
28.1 公有云的业务驱动
28.1.1 从资本支出转向运营支出
28.1.2 上市时间和业务敏捷性
28.2 非技术性的公有云权衡
28.2.1 运营权衡
28.2.2 业务权衡
28.3 云计算的技术挑战
28.3.1 延迟
28.3.2 填充远程存储
28.3.3 数据重力
28.3.4 选择到公有云的多个路径
28.4 云的安全性
28.4.1 在公共传输网上保护数据
28.4.2 管理安全连接
28.4.3 多租户云
28.4.4 基于角色的访问控制
28.5 监控云网络
28.6 总结思考
28.7 拓展阅读
28.8 复习题
第29章 物联网
29.1 IoT介绍
29.2 IoT安全
29.3 IoT的连接性
29.3.1 低功耗蓝牙
29.3.2 LoRaWAN
29.3.3 IoT的IPv
29.4 IoT数据
29.5 总结思考
29.6 拓展阅读
29.7 复习题
第30章 展望未来
30.1 普遍开放的自动化
30.1.1 建模语言和模型
30.1.2 YANG简介
30.1.3 普遍自动化的展望
30.2 超融合网络
30.3 基于意图的网络
30.4 机器学习和狭义人工智能
30.5 命名数据网络和区块链
30.5.1 命名数据网络的操作
30.5.2 区块链
30.6 互联网的重塑
30.7 对网络工程未来的总结思考
30.8 拓展阅读
30.9 复习题