第一部分 当代因特网 2
第1章 因特网的演进 2
1.1 因特网的起源和近年的历史 3
1.1.1 从ARPANET到NSFNET 4
1.1.2 现代因特网 6
1.1.3 NSFNET的征求 7
1.2 网络接入点 8
1.2.1 什么是NAP 8
1.2.2 NAP管理者的征求 9
1.2.3 联邦因特网交换点 10
1.2.4 商业因特网交换点协会 10
1.2.5 现代NAP的物理配置 11
1.2.6 NAP的备选方案:直接互连 12
1.3 路由仲裁者方案 13
1.4 超高速骨干网服务(vBNS) 17
1.5 NSFNET到区域网络的转移 19
1.6 NSF征求NIS管理者 21
1.6.1 网络信息服务 22
1.6.2 InterNIC的建立 22
1.6.3 索引和数据库服务 22
1.6.4 注册服务 24
1.6.5 支持NIC的服务 25
1.7 其他因特网注册处 25
1.7.1 因特网号码美国注册处 25
1.7.2 IP网络欧洲协调中心 26
1.7.3 亚太网络信息中心 26
1.8 因特网路由注册处(IRR) 27
1.9 因特网的过去和未来 28
1.9.1 下一代因特网的起步 28
1.9.2 因特网2(第2代因特网) 30
1.9.3 Abilene 31
1.10 展望 32
1.11 经常提出的问题 33
1.12 参考资料 34
第2章 ISP服务与特性 35
2.1 ISP服务 35
2.1.1 专用因特网接入 36
2.1.2 帧中继和ATM因特网接入 36
2.1.3 拨号连接服务 38
2.1.4 数字用户线路 38
2.1.5 电缆调制解调器 39
2.1.6 专门代管服务 39
2.1.7 其他ISP服务 40
2.2 ISP的价格、服务等级协定和技术特性 41
2.2.1 ISP服务价格 41
2.2.3 ISP骨干网选择准则 42
2.2.2 服务等级协定 42
2.2.4 分界点 48
2.3 展望 51
2.4 经常提出的问题 52
第3章 IP编址和分配技术 53
3.1 因特网编址的历史 54
3.1.1 基本IP编址 54
3.1.2 基本子网划分 56
3.1.3 可变长度子网掩码 58
3.2 IP地址空间的缺乏 61
3.2.1 IP地址分配 62
3.2.2 无类别域间选路 64
3.2.3 专用地址和网络地址的转换 76
3.2.4 IP版本6 79
3.3 展望 83
3.4 经常提出的问题 83
3.5 参考资料 85
第二部分 选路协议基础 88
第4章 域间选路基础 88
4.1 路由器与选路概述 88
4.1.1 基本选路例子 89
4.2 选路协议的概念 91
4.2.1 距离向量选路协议 91
4.2.2 链路状态选路协议 94
4.3 把世界划分成自治系统 97
4.3.1 静态路由、默认路由和动态路由 97
4.3.2 自治系统 98
4.4 展望 103
4.5 经常提出的问题 103
4.6 参考资料 105
第5章 边界网关协议版本4 106
5.1 BGP是怎样工作的 107
5.1.1 BGP消息报头格式 110
5.1.2 BGP相邻体协商 111
5.1.3 有限状态机的前景 113
5.1.4 NOTIFICATION消息 116
5.1.5 KEEPALIVE消息 118
5.1.6 UPDATE消息和选路信息 118
5.2 BGP能力协商 124
5.3 BGP的多协议扩展 125
5.4 TCP MD5签名选项 126
5.5 展望 128
5.6 经常提出的问题 128
5.7 参考资料 129
第三部分 有效的因特网选路设计 132
第6章 BGP能力的协调 132
6.1 建立对等对话 133
6.1.1 物理的和逻辑的连接 134
6.1.2 取得一个IP地址 135
6.1.4 在一个AS内的BGP连续性 136
6.1.3 鉴别BGP对话 136
6.1.5 AS内部的同步 137
6.2 路由更新的源 140
6.2.1 向BGP动态注入信息 140
6.2.2 向BGP静态注入信息 143
6.2.3 路由的起点 144
6.2.4 静态对动态选路的一个例子:移动网络 145
6.3 重叠协议:后门 146
6.4 简化的选路过程 148
6.4.1 BGP路由:通告和存储 149
6.4.2 BGP选路信息库 150
6.4.3 从对等体收到的路由 151
6.4.4 输入策略机 151
6.4.7 通告给对等体的路由 152
6.4.8 选路环境的例子 152
6.4.6 输出策略机 152
6.4.5 路由器使用的路由 152
6.4.9 BGP决策过程总结 154
6.5 控制BGP路由 155
6.5.1 BGP路径属性 156
6.5.2 多路访问媒体的NEXT_HOP性能 169
6.5.3 在非广播多路访问媒体上的NEXT_HOP性能 170
6.5.4 使用next-hop-self与通告DMZ 171
6.5.5 使用专用AS 172
6.5.6 AS_PATH和路由聚合问题 174
6.5.7 AS_PATH的操作 175
6.6 路由过滤和属性操作 177
6.6.1 入站和出站过滤 178
6.6.2 路由过滤和操作过程 178
6.6.3 对等体组 186
6.7 BGP-4聚合 187
6.7.1 仅聚合,抑制更具体的路由 188
6.7.2 聚合加上更具体路由 188
6.7.3 带有更具体路由子集的聚合 190
6.7.4 聚合中信息的丢失 191
6.7.5 改变聚合的属性 191
6.7.6 基于更具体路由子集的聚合构成 191
6.8 展望 192
6.9 经常提出的问题 193
6.10 参考资料 195
第7章 冗余度、对称性和负载平衡 196
7.1 冗余度 197
7.1.1 地理限制的压力 198
7.1.2 设定默认路由 198
7.2 对称性 203
7.3 负载平衡 204
7.4 冗余度、对称性和负载平衡的设计 206
7.4.1 情况1:单宿连接 207
7.4.2 情况2:到单一提供者的多宿连接 207
7.4.3 情况3:到不同提供者的多宿连接 217
7.4.4 情况4:具有一个备用链路的相同提供者的用户 221
7.4.5 情况5:具有一个备用链路的不同提供者的用户 224
7.5 展望 229
7.6 经常提出的问题 229
7.7 参考资料 230
第8章 自治系统内部选路的控制 231
8.1 非BGP路由器与BGP路由器的相互作用 232
8.1.1 把BGP注入IGP 232
8.1.2 在AS内部遵循默认路由 233
8.2 BGP策略与内部默认路由的冲突 234
8.2.1 AS内的默认路由:主用/备用BGP策略 234
8.2.2 AS内的默认路由:其他BGP策略 240
8.3 策略选路 242
8.3.1 基于业务量源的策略选路 242
8.3.2 基于业务量源/目的的策略选路 243
8.3.3 默认为动态选路的策略选路 244
8.3.4 策略选路的其他应用 244
8.4 展望 246
8.5 经常提出的问题 247
第9章 大规模自治系统的控制 248
9.1 路由反射器 249
9.1.1 无路由反射器的内部对等体 249
9.1.2 有路由反射器的内部对等体 250
9.1.3 命名惯例和操作规则 251
9.1.4 冗余度问题及一个AS内的多个路由反射器 252
9.1.5 路由反射拓扑模型 253
9.1.6 路由反射器和对等体组 257
9.2 联盟 259
9.2.1 联盟的缺陷 260
9.2.2 用联盟时的路由交换和BGP决策 261
9.2.3 推荐的联盟设计 262
9.2.4 联盟与路由反射器 262
9.3 控制IGP的扩展 263
9.3.1 用IBGP划分的多个区域 264
9.3.2 把AS划分为由EBGP分隔的多个区域 267
9.4 展望 270
9.5 经常提出的问题 270
9.6 参考资料 271
第10章 稳定的因特网的设计 272
10.1 因特网的路由不稳定性 272
10.1.1 IGP的不稳定性 273
10.1.5 存储量不足 274
10.1.4 CPU能力不够 274
10.1.3 软件问题 274
10.1.2 硬件失效 274
10.1.6 网络升级和例行维护 275
10.1.7 人为差错 275
10.1.8 链路拥塞 276
10.2 BGP稳定特性 276
10.2.1 控制路由和高速缓冲失效 277
10.2.2 BGP路由刷新 277
10.2.3 路由衰减 278
10.3 展望 282
10.4 经常提出的问题 282
第四部分 因特网选路手段的配置 286
第11章 基本BGP功能和属性的配置 286
11.1 建立对等对话 287
11.2 路由过滤和属性操作 294
11.2.1 BGP路由图 295
11.2.2 前缀列表 297
11.2.3 基于NLRI的路由识别和过滤 300
11.2.4 基于AS_PATH的路由识别和过滤 303
11.3 对等体组 304
11.4 路由更新的源 307
11.4.1 动态注入信息到BGP中 307
11.4.2 静态注入信息到BGP中 316
11.5 再论重叠协议:后门 317
11.6 BGP属性 320
11.6.1 NEXT_HOP属性 323
11.6.2 AS_PATH属性 325
11.6.3 LOCAL_PREF(本地优先)属性 329
11.6.4 MULTI_EXIT_DISC属性 332
11.6.5 COMMUNITY属性 335
11.7 BGP-4聚合 337
11.7.1 仅有聚合,抑制更具体的路由 338
11.7.2 聚合及更具体的路由 342
11.7.3 带有具体路由子集的聚合 347
11.7.4 在聚合内信息的丢失 353
11.7.5 改变聚合的属性 356
11.7.6 基于具体路由子集的聚合构成 359
11.8 展望 361
第12章 有效的因特网选路策略的配置 362
12.1 冗余度、对称性和负载平衡 363
12.1.1 动态得知的默认路由 363
12.1.2 静态设定默认路由 365
12.1.3 到单个提供者的多宿连接 369
12.1.4 到不同提供者的多宿连接 386
12.1.5 带有备用链路的同一提供者的用户 391
12.1.6 带有备用链路的不同提供者的用户 393
12.2 遵循AS内部的默认路由 399
12.2.1 与内部默认路由冲突的BGP策略 402
12.3 策略选路 420
12.4 路由反射器 425
12.5 联盟 429
12.6 路由的控制和缓存器的失效 436
12.6.1 BGP软重配置 437
12.6.2 出站软重配置 437
12.6.3 入站软重配置 438
12.6.4 BGP路由刷新 445
12.7 BGP出站请求过滤器能力 447
12.8 路由衰减 448
12.9 展望 454
第五部分 附录 456
附录A BGP命令说明 456
附录B 参考资料 466
附录C BGP出站路由过滤器 470
附录D 多协议BGP 475