内容简介
第1章 复杂性定义
1.1什么是复杂性
1.1.1复杂性就是不理解
1.1.2复杂就是庞大臃肿
1.1.3复杂性就是存在多余状态
1.1.4意外结果
1.2为何如此复杂
1.2.1未来的协议扩展与新协议
1.2.2意外差错
1.3为什么不建立极其复杂的系统
1.3.1快速、廉价与优质:选择两项
1.3.2一致性、可用性与分区容忍性:选择两项
1.4复杂性内涵
第2章 复杂性组件
2.1网络收敛
2.1.1路径矢量协议案例:BGP
2.1.2距离矢量协议案例:EIGRP
2.1.3链路状态协议案例:OSPF与IS-IS
2.2状态
2.2.1信息量
2.2.2现实世界中的状态故障案例
2.2.3关于状态的最后思考
2.3速度
2.3.1永不收敛的网络
2.3.2震荡链路
2.3.3关于速度的最后思考
2.4交互面
2.5沙漏模型
2.6优化
2.7最后的思考
第3章 网络复杂性的测量
3.1网络复杂性的测量方式
3.1.1网络复杂性指数
3.1.2设计复杂性模型
3.1.3 NetComplex
3.2有组织复杂性
3.3这是在浪费时间吗
3.4最后的思考
第4章 操作复杂性
4.1问题范围
4.1.1人与系统之间的交互成本
4.1.2策略分发与最优流量处理
4.2解决管理复杂性问题
4.2.1管理复杂性的解决方案:自动化
4.2.2管理复杂性的解决方案:模块化
4.2.3协议复杂性与管理复杂性
4.3最后的思考
第5章 设计复杂性
5.1控制面状态与迂回度
5.1.1路由聚合与迂回度
5.1.2流量工程
5.1.3关于控制面状态与迂回度的最后思考
5.2拓扑结构与收敛速度
5.2.1环形拓扑收敛
5.2.2冗余度与弹性
5.2.3关于拓扑结构与收敛速度的最后思考
5.3快速收敛与复杂性
5.3.1利用智能定时器提高收敛速度:加快响应速度
5.3.2删除收敛定时器:预计算LFA路径
5.3.3建立无环备用路径隧道
5.3.4关于快速收敛与复杂性的最后思考
5.4虚拟化与设计复杂性
5.4.1功能分离
5.4.2转发面复杂性
5.4.3控制面复杂性
5.4.4风险共担链路组
5.5最后的思考
第6章 管理设计复杂性
6.1模块化
6.1.1一致性
6.1.2可互换模块
6.1.3模块化解决复杂性问题的方式
6.2信息隐藏
6.2.1聚合
6.2.2故障域与信息隐藏
6.2.3关于信息隐藏的最后思考
6.3模型
6.3.1瀑布模型型
6.3.2 PIN模型
6.3.3分层模型
6.3.4 UML
6.4最后的思考
第7章 协议复杂性
7.1灵活性与复杂性:OSPF与IS-IS
7.2分层与协议复杂性
7.2.1七层模型
7.2.2四层模型
7.2.3迭代模型
7.2.4协议栈与设计
7.3协议复杂性与设计复杂性
7.3.1微环路与快速重路由
7.3.2 EIGRP与设计难题
7.4最后的思考
第8章 复杂系统的故障原因
8.1反馈环路
8.1.1网络工程中的正反馈环路
8.1.2速度、状态与交互面:网络控制面的稳定性
8.2风险共担
8.2.1虚电路
8.2.2风险共担的TCP同步问题
8.3最后的思考
8.3.1有关根源分析的若干思考
8.3.2工程技能与故障管理
第9章 可编程网络
9.1驱动力与定义
9.1.1商业驱动力
9.1.2集中式与分布式的周期变化
9.1.3网络可编程性的定义
9.2可编程网络用例
9.2.1带宽调度
9.2.2 SDP
9.3可编程网络接口
9.4可编程网络概况
9.4.1 OpenFlow
9.4.2 YANG
9.4.3 PCEP
9.4.4与路由系统的接口
9.5最后的思考
第10章 可编程网络的复杂性
10.1辅助性原则
10.2策略管理
10.2.1策略分发
10.2.2策略一致性
10.2.3策略复杂性
10.3交互面与可编程网络
10.4对故障域的影响
10.4.1广域故障域
10.4.2数据中心故障域
10.4.3应用程序与控制面之间的故障域
10.4.4控制器与控制器之间的故障域
10.4.5关于故障域的最后思考
10.5最后的思考
第11章 服务虚拟化与服务链
11.1网络功能虚拟化
11.2服务链
11.2.1服务功能链
11.2.2分段路由
11.3最后的思考
第12章 虚拟化与复杂性
12.1策略分发与网络虚拟化
12.1.1状态与服务链
12.1.2状态与优化
12.1.3交互面与策略交互
12.1.4交互面与策略代理
12.2其他设计考虑
12.2.1耦合与故障域
12.2.2故障诊断
12.2.3网络操作的可预测性
12.3编排效应
12.4管理复杂性
12.5最后的思考
第13章 复杂性与云
13.1复杂性在何处
13.1.1以云为中心
13.1.2以供应商为中心
13.1.3以网络为中心
13.1.4有“正确模式吗?”
13.2集中化什么
13.3云的难题
13.3.1安全问题
13.3.2数据可移植性
13.4最后的思考
第14章 简单总结
14.1复杂性定义
14.1.1难以理解
14.1.2意外结果
14.1.3大量交互因素
14.1.4是什么让事情变得“过于复杂”
14.2复杂性是一种权衡
14.3复杂性建模
14.4管理现实世界中的复杂性
14.4.1不要忽视复杂性
14.4.2找到容纳复杂性的模型
14.5最后的思考