Uploaded by 178331601

CCIE-RS-SP认证考试指南

advertisement
CCIE
Guide
CCIE R&S 路由与交换
CCIE SP 服务提供商
认证考试指南
CCIE Self-Study
CCIE Routing and Switching
CCIE Service Provider
Exam Certification Guide
Author 房 智 勇
上海交通大学网络信息管理部
Cisco CCIE Routing and Switching
Cisco CCIE Service Provider
----Exam Certification Guide
Author:
房 智 勇
-----上海交通大学网络信息管理部
About Author:
房智勇,Cisco
中国研发中心软件工程师,上海交通大学网络信息管理部部长,思科认证讲师,上
海交通大学思科网络学院负责人,现上海交通大学数学系本科大 4 的学生,目前主要在做基于复杂网络的网
络稳定性分析及路由算法优化的工作。参与过国家 863 项目 3Tnet 高性能数据通讯网络大规模 IPTV 组播传送
的测试,并在上海交通大学担任网管员期间协助上海交通大学网络中心完成了上海交通大学校园网升级及 6
期 7 期宿舍网络建设,同时参与了第 29 届 ACM/ICPC 大学生程序设计竞赛上海赛区方案设计和全球总决赛的
技术支持。
Dedication:
I dedicate this book to a group of the most amazing people I have ever met, my NIMO, for
their sincere moral support and help through all these years.
I dedicate this book to Colin, SunKnight and LvLv, who give me a lot of suggestion and support.
-----Sincerely,
版 权 声 明
Copyright© 2006 Kevin Fang
本书仅用于学习研究使用,未经作者许可不得用于任何商业用途。
版权所有,侵权必究
CCIE R/S & Service Provider Exam Certification Guide
内 容 概 要
本书全面系统的介绍了 Cisco CCIE 路由与交换方向以及服务
提供商方向考试的所有知识点。全书共分为 8 个部分。分别介
绍了 CCIE 笔试和实验室考试中所用到的基础网络知识,各种路
由协议,LAN 交换,城域网,MPLS,Qos 及组播等。
本书按照 Cisco CCIE 路由与交换及服务提供商的考试大纲写
成,针对目前 SP 服务提供商考试资料相对匮乏的情况,整理出
这本认证指南,其目标是为了使准备 CCIE 认证的考生获得更方
便的资料。
本书亦适合各类网络工程师和网络设计者作为工作时的参
考手册。
CCIE R/S & Service Provider Exam Certification Guide
思科系统网络公司图标说明
CCIE R/S & Service Provider Exam Certification Guide
目 录
第一部分
第一章 网络基础知识
1.1
OSI 7层模型
1.2
1.3
1.1.1
物理层
1.1.2
数据链路层
1.1.3
网络层
1.1.4
传输层
1.1.5
会话层
1.1.6
表示层
1.1.7
应用层
1.1.8
封装与解封装
冲突域和广播域
以太网
1.3.1
以太网帧结构
1.3.2
以太网物理层
1.3.3
半双工和全双工
第二章 TCP/IP 模型
2.1
TCP/IP模型
2.7
2.1.1
TCP/IP模型和OSI模型
2.1.2
TCP/UDP区别
2.1.3
Internet层协议
2.1.4
ICMP
地址解析协议(ARP)
2.7.1
ARP协议
2.7.2
Proxy-ARP
2
2
2
4
5
6
6
6
7
7
6
7
9
10
10
11
11
11
12
13
13
14
14
14
Page |1
CCIE R/S & Service Provider Exam Certification Guide
2.7.3
Gratuirous-ARP
2.7.4
R-ARP
第三章 IP寻址及子网划分
3.1
IP地址及寻址方式
3.1.1
网络地址
3.1.2
特殊网络地址
3.1.3
私有地址
3.1.4
广播地址
3.2
IP子网划分
3.2.1
子网掩码
3.2.2
CIDR
3.2.3
VLSM
3.2.4
IP寻址排错
3.2.5
CIDR值
3.2.6
Wildcard Mask
14
14
15
15
15
15
15
15
16
16
16
16
16
16
17
第二部分
第四章 路由协议概述
4.1
路由基础
4.1.1
静态路由
4.1.2
动态路由
20
20
20
21
管理距离
常见路由协议区别
21
22
第五章 静态路由
5.1
路由表
5.2
配置静态路由
5.3
静态浮动路由
5.4
路由负载均衡
5.5
快速交换工作原理
5.6
静态递归路由
5.7
静态路由协议排错
23
23
23
24
24
24
26
26
第六章 RIP路由协议
6.1 距离矢量路由协议
6.2 路由环路及D-V解决路由环路的方法
6.3 RIP路由协议
6.4 RIP计时器
29
29
29
30
30
4.2
4.3
Page |2
CCIE R/S & Service Provider Exam Certification Guide
6.5
6.6
6.7
6.8
6.9
RIP消息格式
有类路由协议
配置RIP
6.7.1
RIP基本配置
6.7.2
被动接口
6.7.3
配置单播更新
6.7.4
Offset-list
RIP路由协议排错
RIP v2 路由协议
6.9.1
RIP v2基本配置
6.9.2
RIP v2自动汇总
6.9.3
消息收发模式
6.9.4
RIP v2的水平分割
6.9.5
RIP v2认证模式
6.9.6
Key-Chain配置
第七章 EIGRP路由协议
7.1
EIGRP协议简介
7.1.1
7.2
7.3
7.4
7.5
7.6
7.7
EIGRP的4个组件
EIGRP协议的数据库
EIGRP-Metric计算方法
7.3.1
EIGRP Metric的5个标准
7.3.2
EIGRP Metric 计算
7.3.3
EIGRP和IGRP Metric的换算
RTP-EIGRP的可靠传输协议
7.4.1
EIGRP packet
7.4.2
RIP可靠传输协议
EIGRP的邻居发现/恢复协议
EIGRP的弥散更新算法
7.6.1
弥散更新算法简介
7.6.2
adjacency(邻接)
7.6.3
Feasible Distance(FD,可行距离)
7.6.4
Feasible Condition(FC,可行条件)
7.6.5
Feasible Successor(FS,可行后继路由器)
7.6.6
Successor(后继路由器)
DUAL的有限状态机
7.7.1
扩散事件
7.7.2
扩散计算查询
7.7.3
"卡"在活动状态(Stuck-in-Active)
7.7.4
DUAL 的有限状态机
7.7.5
EIGRP 报文的活动
31
32
33
33
35
35
36
36
36
36
36
36
37
37
37
38
38
38
38
39
39
39
39
39
40
40
40
41
41
41
41
41
42
42
45
45
46
46
46
47
Page |3
CCIE R/S & Service Provider Exam Certification Guide
7.7.6
7.8
DUAL 的核心思想
EIGRP报文格式
7.8.1
The EIGRP Packet Header
7.8.2
General TLV Fields
7.8.3
IP-Specific TLV Fileds
配置EIGRP
7.9
7.9.1
基本EIGRP 配置
7.9.2
EIGRP 和IGRP 的重分布
7.9.3
EIGRP 手工汇总
7.9.4
EIGRP 关闭自动汇总
7.9.5
EIGRP 认证
7.9.6
EIGRP stub 区域
7.9.7
EIGRP 负载均衡
7.9.8
EIGRP 关闭水平分割
7.10
CCIE_Lab中的EIGRP
7.10.1
修改接口的bandwidth 和delay
7.10.2
Show Command
7.10.3
FR环境中的EIGRP
7.10.4
记录EIGRP邻居变化
7.10.5
被动接口
7.10.6
调整EIGRP更新信息
7.10.7
EIGRP 的重分布和路由控制
7.10.8
EIGRP的Stub区域
第八章 OSPF路由协议
8.1
8.2
8.3
8.4
8.5
8.6
8.7
8.8
8.9
Page |4
OSPF的Hello协议
OSPF的网络类型
8.2.1
点到点网络
8.2.2
广播型网络
8.2.3
NBMA型网络
8.2.4
点到多点网络
8.2.5
需链接
OSPF的DR/BDR
8.3.1
DR/BDR选取规则
8.3.2
DR/BDR选取过程
OSPF的接口
OSPF的状态机
OSPF邻居关系
OSPF泛洪
OSPF区域
LSD链路状态数据库
48
48
49
50
50
52
52
52
53
54
54
54
55
55
55
55
55
57
58
58
58
58
58
61
61
61
61
62
62
62
62
62
63
63
63
64
65
68
70
70
CCIE R/S & Service Provider Exam Certification Guide
8.9.1
LSA类型
8.9.2
Router LSA
8.9.3
Network LSA
8.9.4
Network Summary LSA
8.9.5
ASBR Summary LSA
8.9.6
Automous System External LSA
8.9.7
NSSA External LSA
8.9.8
External Attributes LSA
8.9.9
Opaque LSA
8.10
OSPF末梢区域
8.10.1
Stub区域限制
8.10.2
几种特殊的区域
8.11
OSPF路由表
8.11.1
Destination Type
8.11.2
Path Type
8.12
8.13
OSPF按需电路
OSPF报文格式
8.13.1
IP Packet Head
8.13.2
OSPF Packet
8.13.3
Hello Packet
8.13.4
DDP(Database Description Packet)
8.13.5
LSR Packet
8.13.6
LSU Packet
8.13.7
LSA Packet
8.14
OSPF LSA格式
8.14.1
LSA Packet Head
8.14.2
Router LSA
8.14.3
Network LSA
8.14.4
Network Summary and ASBR summary LSA
8.14.5
AS External LSA
8.14.6
NSSA External LSA
8.14.7
The Options Field
8.15
OSPF配置及命令汇总
8.15.1
OSPF进程配置命令
8.15.2
OSPF区域配置命令
8.15.3
OSPF参考带宽
8.15.4
OSPF默认路由
8.15.5
为重分布设置默认Metric
8.15.6
管理距离
8.15.7
使用Distribute-List过滤路由
8.15.8
阻止MOSPF LSA
71
71
72
73
74
75
75
76
76
76
76
77
78
78
80
80
80
80
81
82
82
83
83
83
83
83
84
84
85
85
86
86
86
86
87
92
93
93
94
94
98
Page |5
CCIE R/S & Service Provider Exam Certification Guide
8.15.9
记录邻居变化
8.15.10
设置多路径负载均衡
8.15.11
OSPF neighbor命令
8.15.12
OSPF Network命令
8.15.13
OSPF 被动接口
8.15.14
路由重分布
8.15.15
配置OSPF的RID
8.15.16
汇总外部路由
8.15.17
OSPF 计时器调整
8.15.18
接口配置命令
8.15.19
Show命令详解
8.15.20
Debug命令详解
8.15.21
Clear命令详解
8.16
配置OSPF路由
8.16.1
基本配置
8.16.2
在回环口上配置RID
8.16.3
配置DNS解析
8.16.4
OSPF接口上的第二个ip
8.16.5
Stub区域配置
8.16.6
完全Stub区域配置
8.16.7
在NBMA型网络上配置OSPF
8.16.8
在按需电路上配置OSPF
8.17
8.18
OSPF设计及解决方案
OSPF排错
8.18.1
排错常用步骤
8.18.2
Debug命令使用
8.18.3
OSPF协议排除故障方法
8.18.4
OSPF协议故障
8.18.5
OSPF停滞在INIT状态
8.18.6
OSPF停滞在Exstart/Switching状态
8.18.7
OSPF停滞在Loading状态
8.19
OSPF排错实例
8.19.1 配置错误的区域
8.20
CCIE_lab中的OSPF
8.20.1
FR环境中的OSPF
8.20.2
减少OSPF扩散
8.20.3
默认路由
8.20.4
重分布产生的路由环路
第九章 集成IS-IS路由协议
9.1
Page |6
集成IS-IS路由协议简介
98
99
99
102
102
103
105
105
107
107
110
115
120
120
120
121
121
121
122
123
123
126
126
128
128
128
128
128
129
130
131
132
132
133
133
135
135
135
137
137
CCIE R/S & Service Provider Exam Certification Guide
9.2
9.3
9.4
IS-IS区域
IS-IS网络地址
子网的功能
9.4.1
依赖子网的功能
9.4.2
独立于子网的功能
9.5
IS-IS的PDU格式
9.5.1
CLV字段
9.5.2
IS-IS hello包格式
9.5.3
IS-IS的链路状态报文
9.5.4
IS-IS的序列号报文格式
配置集成IS-IS
9.6
9.6.1
IS-IS基本配置
9.6.2
更改路由器类型
9.6.3
区域迁移
9.6.4
路由汇总
9.6.5
集成ISIS的认证
集成IS-IS的排错
9.7
9.7.1
IS-IS基邻居关系排错
9.7.2
链路状态数据库排错
9.7.3
在NBMA上的集成ISIS
第十章 路由控制及重分布
10.1
路由重分布
10.1.1
路由重分布原则
10.1.2
配置路由重分布
10.1.3
EIGRP和OSPF间的重分布
10.1.4
路由重分布及路由汇总
10.1.5
IS-IS和RIP间的路由重分布
10.1.6
静态路由的重分布
10.2
默认路由及ODR按需路由
10.2.1
配置静态默认路由
10.2.2
default-network配置默认路由
10.2.3
default-information originate配置默认路由
10.2.4
配置ODR按需路由
10.3 路由过滤
10.4 Route-Map路由映射
10.4.1
配置Route-Map
10.4.2
路由策略
第十一章 NAT网络地址转换
11.1 NAT简介
137
138
138
138
139
143
145
145
145
146
146
146
149
151
152
153
153
153
154
156
157
157
157
157
160
162
163
164
164
165
165
167
167
167
168
169
170
174
174
Page |7
CCIE R/S & Service Provider Exam Certification Guide
11.2
11.3
11.4
11.5
11.6
11.7
11.8
NAT和ISP迁移
多AS系统中使用NAT
PAT
NAT实现虚拟服务器
NAT实现负载均衡
NAT的一些不足
配置NAT
11.8.1
静态NAT
11.8.2
动态NAT
11.8.3
网络合并
11.8.4
多ISP接入的NAT
11.8.5
PAT
11.8.6
NAT实现TCP负载均衡
11.8.7
基于端口的服务分布
11.9 CCIE_lab中的NAT
第十二章 ACL访问控制列表
12.1 ACL的工作方式
12.2 标准访问控制列表
12.3 扩展访问控制列表
12.4 访问控制列表的显示
12.5 动态访问控制列表
12.6 命名的访问控制列表
12.7 CCIE_lab中的ACL
第十三章 路由器备份协议
13.1 HSRP热备份路由协议
13.1.1
冗余性网络中的路由问题
13.1.2
HSRP概述
13.1.3
HSRP工作原理
13.1.4
配置HSRP
13.1.5
Show HSRP
13.1.6
HSRP实例
13.1.7
HSRP存在的问题
13.1.8
HSRP的认证功能
175
175
176
177
177
177
178
178
180
181
183
184
185
186
186
188
188
188
190
194
195
197
197
201
201
201
201
201
202
204
204
205
205
13.2.1
VRRP简介
13.2.2
工作原理
13.2.3
VRRP实际应用
13.2.4
HSRP和VRRP的比较
206
206
206
206
207
13.3 GLBP网关负载均衡协议
208
13.2 VRRP虚拟路由器备份协议
Page |8
CCIE R/S & Service Provider Exam Certification Guide
13.4 Cisco-SLB服务负载均衡协议
13.5 CCIE_lab中的HSRP和VRRP
第十四章 BGP路由选择协议
14.1 谁需要BGP
14.2 BGP简介
14.3 BGP消息类型
14.4 BGP有限状态机
14.5 BGP路径属性
14.6 BGP选路规则
14.7 BGP路由惩罚
14.8 iBGP和IGP的同步
14.9 管理大型网络中的BGP
14.9.1
对等体组
14.9.2
团体属性
14.9.3
路由反射器
14.9.4
联盟属性
14.10 BGP消息格式
14.11 BGP基本配置
14.11.1
peering BGP routers
14.11.2
BGP和IGP间的重分发
14.11.3
BGP默认路由
14.11.4
IBGP without IGP
14.11.5
EBGP多跳
14.11.6
聚合路由
14.12 管理BGP连接
14.13 路由策略
14.13.1
重置BGP连接
14.13.2
Distribute-List
14.13.3
正则表达式
14.13.4
AS_Path过滤
14.13.5
Route-Map过滤
14.13.6
Weight属性
14.13.7
AD和后门路由
14.13.8
Local_pref和MED属性
14.13.9
调整AS_path
14.13.10
路由标记
14.13.11
路由惩罚
14.14 大型BGP
14.14.1
对等体组
14.14.2
团体属性
208
209
211
211
211
212
213
215
219
219
220
222
222
222
222
223
223
225
225
227
227
227
228
228
231
231
231
231
231
232
233
234
234
234
234
235
235
235
235
235
Page |9
CCIE R/S & Service Provider Exam Certification Guide
14.14.3
私有AS
14.14.4
BGP联盟
14.14.5
RR路由反射器
14.15 BGP命令解析
14.16 调整BGP性能
14.16.1
BGP收敛调整
14.16.2
减轻网络故障影响
14.17 在CCIE_lab中的BGP
14.17.1
评估路由器的BGP能力
14.17.2
BGP配置提示
14.17.3
show command
14.17.4
Local-AS属性
14.17.5
路由聚合和抑制
14.17.6
条件路由通告
14.17.7
BGP路由过滤
14.17.8
BGP起源属性修改
14.17.9
AS_path属性
14.17.10
AS_path过滤
14.17.11
后门路由的特例
14.17.12
Next_Hop属性
14.17.13
Local_Pref和weight
14.17.14
MED控制路由条目
14.17.15
Community属性
14.17.16
负载均衡和EBGP多跳
14.17.17
BGP路由惩罚
14.17.18
其他Feature
14.17.19
前缀列表
14.17.20
路由过滤顺序
14.17.21
条件路由注入
第十五章 路由器管理
15.1 SNMP简单网络管理协议
15.1.1
SNMP 概述
15.1.2
在路由器上配置SNMP
15.1.3
在路由器上查看SNMP
15.2 RMON属性配置
15.2.1
RMON工作原理
15.2.2
路由器上配置RMON
15.3 记录日志和系统日志
P a g e | 10
15.3.1
记录日志 Logging
15.2.2
系统日志 Syslog
236
236
237
238
259
259
259
260
260
260
260
261
261
262
264
264
264
264
266
266
266
267
268
269
270
271
271
271
271
273
273
273
277
278
279
279
280
282
282
283
CCIE R/S & Service Provider Exam Certification Guide
15.4 网络时间协议NTP
15.4.1
NTP概述
15.4.2
NTP配置
15.4.3
NTP认证功能
15.4.4
NTP常用配置实例
15.4.5
SNTP简单网络时间协议
15.4.6
Show and Debug命令
15.5 记帐功能
15.5.1
IP accounting
15.5.2
NetFlow
15.5.3
Nbar
15.5.4
ACL-Log
15.6 DHCP
15.6.1
DHCP简介
15.6.2
DHCP配置
15.5.3
DHCP配置实例
15.7 CCIE_lab中的Feature
15.7.1
SNMP
15.7.2
TFTP-Server
15.7.3
Logging and Syslog
15.7.4
NTP
15.7.5
DHCP
15.7.6
Port Dampening
15.7.7
UDP broadcast Management
15.7.8
IP Accounting
15.7.9
Web-Cache communications Protocol
15.7.10
DRP
第十六章 Cisco路由器体系结构
16.1 路由器结构
16.1.1
Cisco路由器硬件
16.1.2
Cisco路由器加电启动过程
16.1.3
Cisco路由器接口定义
16.2 Cisco 800系列
16.2.1
Cisco 870系列
16.2.2
Cisco 850系列
16.2.3
Cisco 800系列
16.3 Cisco 1800系列
16.3.1
Cisco 1800系列简介
16.3.2
Cisco 1800固定配置系列
16.3.3
Cisco 1841模块化路由器
284
284
284
285
285
289
289
289
289
290
293
294
295
295
295
296
297
297
297
297
298
298
299
300
300
300
301
302
302
302
303
303
304
304
305
305
306
306
307
307
P a g e | 11
CCIE R/S & Service Provider Exam Certification Guide
16.4 Cisco 2500系列
16.4.1
Cisco 2500系列简介
16.4.2
Cisco 2500系列硬件结构
16.4.3
Cisco 2500分类
16.4.4
Cisco 2524/2525模块化路由器
16.5 Cisco 2600/3600系列
16.5.1
Cisco 2600系列使用环境
16.5.2
Cisco 2600硬件配置
16.5.3
Cisco 2600特性
16.5.4
Cisco 3600特性
16.5.5
Cisco 3600硬件结构及拆解
16.5.6
Cisco 2600/3600模块
16.6 Cisco 2800/3700/3800系列
16.6.1
Cisco 2800系列
16.6.2
Cisco 3700系列
16.6.3
Cisco 3800系列
16.7 Cisco 7100系列
16.8 Cisco 7200系列
16.8.1
Cisco 7200简介
16.8.2
Cisco 7200网络处理器
16.9 Cisco 7300系列
16.9.1
Cisco 7300简介
16.9.2
Cisco 7300网络处理器
16.9.3
Cisco 7300体系结构
16.10 Cisco 7500系列
16.10.1
Cisco 7500简介
16.10.2
Cisco 7500体系结构
16.10.3
Cisco 7500处理器
16.10.4
Cisco 7500内存配置
16.10.5
Cisco 7500附件
16.11 Cisco 7600系列
16.11.1
Cisco 7600简介
16.11.2
Cisco 7600体系结构
16.11.3
Cisco 7600系列增强型FlexWAN模块
16.11.4
Cisco 7600系列Supervisor Engine 720-3BXL
16.11.5
Cisco 7600系列SPA/SIP
16.11.6
Cisco 7600系列线卡
16.12 Cisco 10000系列
P a g e | 12
16.12.1
Cisco 10000简介
16.12.2
Cisco 10000硬件结构
16.12.3
Cisco 10000线卡
306
308
308
308
311
312
313
313
313
314
314
316
317
317
318
318
319
320
320
321
322
322
323
323
325
325
326
328
329
329
330
330
330
332
333
333
335
336
336
336
337
CCIE R/S & Service Provider Exam Certification Guide
16.12.4
Cisco 10720互联网路由器
16.12.5
Cisco 10000应用指南
16.13 Cisco 12000系列
16.13.1
Cisco 12000体系结构
16.13.2
Cisco 12000应用范围
16.13.3
Cisco 12000交换处理器
16.13.4
Cisco 12000系列存储器
16.13.5
Cisco 12000系列线卡
16.13.6
Cisco 12400系列
16.13.7
Cisco 12800系列
16.13.8
Cisco XR 12000系列
16.13.9
Cisco IOS XR 软件架构
16.14 Cisco CRS-1系列
16.14.1
Cisco CRS-1简介
16.14.2
Cisco CRS-1体系结构
16.14.3
Cisco CRS-1硬件结构
16.14.4
Cisco CRS-1线卡模块
16.14.5
Cisco CRS-1安全特性
16.14.6
Cisco CRS-1管理特性
16.14.7
Cisco CRS-1 IP over DWDM方案
16.15 Netflow
16.15.1
Netfow体系结构
16.15.2
Netfow配置流输出
16.15.3
Netfow统计
338
338
340
340
343
343
344
344
348
349
352
354
356
356
356
358
360
361
363
366
368
368
368
369
第三部分
第十七章 交换原理及多层交换
17.1 以太网中的数据交换
17.1.1
数据交换模式
17.1.2
数据交换总线
17.2 交换机操作
17.2.1
链路状态自动协商
17.2.2
透明桥接
17.2.3 2
层交换机操作
17.2.4
多层交换机操作
17.3 交换操作中使用的表
17.3.1
内容可寻址存储器( CAM )
17.3.2
三重内容可寻址存储器( TCAM )
17.3.3
TCAM结构
372
372
372
372
373
373
375
376
378
378
378
379
379
P a g e | 13
CCIE R/S & Service Provider Exam Certification Guide
17.3.4
TCAM操作
第十八章 Catalyst交换机体系结构
18.1 Catalyst交换机简介
18.2 Catalyst 5000/5500
18.2.1
Catalyst 5000/5500交换机组件
18.2.2
Catalyst 5000/5500的Supervisor引擎
18.2.3
EARL功能
18.2.4
Catalyst 5000/5500背板带宽
18.2.5
Catalyst 5000/5500的线路模块
18.2.6
Catalyst 5000/5500体系结构
18.2.9
Catalyst 5000/5500数据流
18.3 Catalyst 6000/6500
18.3.1
Catalyst 6000/6500交换机组件
18.3.2
Catalyst 6000/6500体系结构
18.3.3
Catalyst 6500交换方式
18.3.4
Catalyst 6500交换矩阵的数据流
18.4 Catalyst 4500
18.4.1
Catalyst 4500机箱
18.4.2
Supervisor和交换矩阵
18.4.3
Catalyst 4500的线路模块
18.4.4
Catalyst 4500电源和散热模块
18.4.5
Catalyst 4500的数据流
18.4.6
Catalyst 4948交换机
18.5 Catalyst 3550/3560/3750
18.5.1
Catalyst 3550/3500XL
18.5.2
CigaStack GBIC堆叠技术
18.5.3
Catalyst 3560
18.5.4
Catalyst 3750
18.5.5
RPS 675 电源冗余
18.5.6
Stackwise堆叠体系结构
18.5.7
Catalyst 3750数据流
18.5.8
Catalyst 3750 Metro
18.6 Catalyst 29xx系列
18.6.1
Catalyst 2900/2900XL
18.6.2
Catalyst 2940
18.6.3
Catalyst 2950/2955
18.6.4
Catalyst 2960
18.6.5
Catalyst 2970
18.7 Catalyst系列体系结构比较
18.8 专用交换机解决方案
P a g e | 14
380
381
381
381
381
383
384
385
385
386
387
388
389
394
395
395
397
397
397
400
400
401
403
403
403
406
408
409
411
411
413
414
415
415
416
416
417
417
418
418
CCIE R/S & Service Provider Exam Certification Guide
18.8.1
6000系列DSL交换机
18.8.2
6400系列和IGX8400系列集中器
18.8.3
MGX8200和MGX8850系列
18.8.4
BPX8600系列交换机
18.8.5
CCS 11000系列交换机
18.8.6
LightStream LS 1010交换机
第十九章 交换机基本配置
19.1 ROMMON
19.1.1
Cisco引导寄存器
19.1.2
Catalyst引导过程
19.1.3
ROMMON模式
19.2 Catalyst系列交换剂密码恢复
19.2.1
Catalyst 2900/3500系列
19.2.2
Catalyst 3550/3750系列
19.2.3
Catalyst 4500系列
19.2.4
Catalyst 4000/5000/5500系列
19.2.5
Catalyst 6000 MSFC
19.3 升级Cisco IOS软件
19.3.1
Cisco IOS软件版本
19.3.2
IOS软件分类
19.3.3
TFTP升级IOS软件
19.3.4
使用ROMMON升级IOS软件
19.3.5
ROMMON(Xmodem)
19.3.6
ROMMON(tftpdnld)
19.3.7
Flash分区合并
19.4 Catalyst交换机文件系统
19.4.1
Catalyst文件系统
19.4.2
Catalyst交换机文件操作
19.5 配置Catalyst交换机的接口
19.5.1
配置接口的步骤
19.5.2
配置一个接口范围
19.5.3
配置和使用接口范围宏
19.5.4
配置第二层接口
19.5.5
配置接口速度和双工速度
19.5.6
配置IEEE802.3x流控制
19.5.7
监控和维护第二层接口
19.5.8
show命令查看接口
19.5.9
接口计数器
19.5.10
关闭和重启
418
418
419
419
419
420
421
421
421
421
423
425
425
426
427
427
428
429
429
436
437
438
439
440
441
441
441
442
443
443
445
446
448
449
451
453
453
455
455
P a g e | 15
CCIE R/S & Service Provider Exam Certification Guide
第二十章 VLAN 和VTP
20.1 Vlan基础
20.1.1
描述vlan
20.1.2
vlan局限性
20.1.3
pvlan
20.1.4
vlan划分
20.1.5
vlan范围
20.2 配置Vlan
20.2.1
vlan 添加和删除
20.2.2
将端口划入vlan
20.2.3
查看vlan状态
20.2.4
pvlan配置
20.2.5
vlan-ACL
20.3 动态Vlan
20.3.1
VMPS操作
20.3.2
VMPS数据库配置
20.3.3
VMPS服务器
20.3.4
Open VMPSd
20.3.5
VMPS客户端配置
20.3.6
验证VMPS
20.4 Trunking
20.4.1
Trunk类型
20.4.2
ISL
20.4.3
IEEE 802.1Q
20.4.4
IEEE 802.10
20.4.5
ATM LANE
20.4.6
配置Trunk
20.5 DTP动态中继协议
20.5.1
配置DTP
20.5.2
DTP组合
20.5.3
DTP检验
20.6 VTP VLAN中继协议
20.6.1
VTP特性
20.6.2
VTP报文格式
20.6.3
VTP模式
20.6.4
VTP版本
20.6.5
VTP裁剪
20.6.6
配置VTP
20.6.7
VTP排错
20.7 VLAN间的路由
20.7.1
P a g e | 16
VLAN间路由选择方法
457
457
457
458
458
459
460
460
460
462
462
463
464
465
466
467
468
468
469
469
469
470
470
470
471
472
473
474
474
475
475
476
476
476
478
479
480
480
484
485
485
CCIE R/S & Service Provider Exam Certification Guide
20.7.2
VLAN类型
20.7.3
路由交换处理器
20.7.4
单臂路由器
20.7.5
vlan路由排错
第二十一章
STP 和EtherChannel
21.1 生成树协议基础
21.1.1
STP概念
21.1.2
广播环路
21.1.3
桥接标损坏
21.1.4
网桥优先级
21.1.5
路径开销
21.1.6
端口ID
21.2 STP过程
21.2.1
STP判决和BPDU交换
21.2.2
STP收敛步骤
21.2.3
STP状态
21.2.4
STP定时器
21.2.5
BPDU格式
21.2.6
拓扑变化和STP
21.2.7
备份根网桥
21.3 STP特性
21.3.1
PortFast
21.3.2
UplinkFast
21.3.3
BackboneFast
21.3.4
BPDU保护
21.3.5
根保护
21.4 STP配置
21.4.1
默认STP配置
21.4.2
设置vlan优先级
21.4.3
设置端口Cost
21.4.4
设置vlan的交换机优先级
21.4.5
设置STP计时器
21.4.6
设置负载均衡
21.5 STP排错
21.5.1
双工不匹配
21.5.2
单向链路故障
21.5.3
环路保护
21.5.4
PortFast配置错误
21.5.5
VTP和STP配置不当
21.5.6
其他Err-disable原因
485
486
486
487
488
488
488
488
489
489
490
490
491
491
491
493
495
496
497
498
498
498
499
500
501
502
503
503
503
504
504
504
505
506
506
506
507
508
509
509
P a g e | 17
CCIE R/S & Service Provider Exam Certification Guide
21.6 STP增强
21.6.1
PVST/PVST+
21.6.2
Enhance PVST+
21.6.3
MST(802.1s)
21.6.4
RSTP(802.1w)
21.6.5
RSTP和MST配置
21.7 EtherChannel
21.7.1
以太信道概述
21.7.2
分发方式
21.7.3
PAgP
21.7.4
LACP
21.7.5
以太信道配置
第二十二章
多层交换
22.1 多层交换概述
22.1.1
MLS构成
22.1.2
MLS流
22.1.3
MLS操作
22.1.4
MLS硬件及软件要求
22.2 Cisco快速转发
22.2.1
MLS和CEF的比较
22.2.2
支持CEF的硬件平台
22.2.3
CEF操作
22.2.4
CEF转发过程
22.3 MLS及CEF配置
22.3.1
MLS配置
22.3.2
MLS配置实例
22.3.3
MLS检验
22.3.4
CEF模式
22.3.5
CEF操作
22.3.6
CEF负载均衡
22.3.7
为CEF配置网络记账
22.3.8
为CEF配置跨隧道交换
22.3.9
CEF检验
22.4 多层交换中的冗余
P a g e | 18
22.4.1
冗余引擎
22.4.2
冗余电源
22.4.3
双机冗余
22.4.4
HSRP
22.4.5
VRRP
22.4.6
GLBP
509
509
509
510
511
514
516
516
517
517
518
518
520
521
522
522
523
525
525
525
526
528
530
531
531
532
533
534
535
536
536
536
536
537
537
538
539
540
543
543
CCIE R/S & Service Provider Exam Certification Guide
22.4.7
SLB
第二十三章
组播服务
23.1 组播简介
23.1.1
组播的优势
23.1.2
组播的缺点
23.1.3
组播的应用
23.1.4
组播服务模型
23.1.5
组播IP地址
23.1.6
组播MAC地址
23.1.7
组播树
23.1.8
组播转发
23.1.9
组播路由协议简介
23.2 IGMP组管理协议
23.2.1
IGMP v1
23.2.2
IGMP v2
23.2.3
IGMP v3
23.2.4
IGMP的发展
23.2.5
IGMP Snooping
23.2.6
Layer 3 Aware Switch
第二十四章
SPAN和RSPAN监控
544
545
545
545
545
545
546
546
546
547
548
549
555
555
555
557
559
559
561
485
第四部分
第二十五章
QoS简介
第二十六章
队列技术
第二十七章
拥塞控制
第二十八章
流量管理
第二十九章
流量整形
P a g e | 19
CCIE R/S & Service Provider Exam Certification Guide
第三十章
第三十一章
第五部分
第三十二章
P a g e | 20
NBAR应用程序过滤
RSVP
CCIE R/S & Service Provider Exam Certification Guide
第一部分
第一章
第二章
第三章
网络基础知识
TCP/IP 协议
IP 寻址及子网划分
Page |1
CCIE R/S & Service Provider Exam Certification Guide
网络基础知识
Chapter1
1.1 OSI 7层模型
ISO 国际标准组织所定义的开放系统互连七层模型的定义和各层功能。建立七层模型的主要目的是
为解决异种网络互连时所遇到的兼容性问题。它的最大优点是将服务、
接口和协议这三个概念明确地区分开来:服务说明某一层为上一层提供
一些什么功能,接口说明上一层如何使用下层的服务,而协议涉及如何
实现本层的服务;这样各层之间具有很强的独立性,互连网络中各实体
采用什么样的协议是没有限制的,只要向上提供相同的服务并且不改变
相邻层的接口就可以了。
参考模型分为 7 层,高 3 层定义了端用户如何进行互相通信;底
OSI
部 4 层定义了数据是如何端到端的传输.最高 3 层,也称之为上层(upper
layer),它们不关心网络的具体情况,这些工作是又下 4 层来完成,OSI 参考
模 7 层结构如右图所示。
可以通过 All People Seems To need Data Process 来记忆这 7 层的位置
1.1.1 物理层
物理层定义了通讯网络之间物理链路的电气或机械特性,以及激活、维护和关闭这条链路的各项操
作。物理层特征参数包括:电压、数据传输率、最大传输距离、物理连接媒体等。
在网络传输过程,通常使用的物理层传输介质如下:
有线介质:电话线、双绞线、同轴电缆、光导纤维等。
无线介质:卫星、微波、IR、RF、激光等。另外,还有大气,携带微波和光。
在有线传输介质中,电话线我们已经非常熟悉,下面我们先来看同轴电缆。
在最初的局域网中,同轴电缆被认为是唯一的传输介质,目前有两种应用广泛的同轴电缆。
75 欧姆,用于模拟传输,称为宽带电缆 (CATV 系统)
50 欧姆,用于传输数字信号,称为基带电缆
粗缆:10Mbps,500m,100 个站点
细缆:10Mbps,185m,30 个站点
双绞线(TP:Twisted Pairwire)是综合布线工程中最常用的一种传输介质。双绞线由两根具有绝缘保护
层的铜导线组成。把两根绝缘的铜导线按一定密度互相绞在一起,可降低信号干扰的程度,每一根导线在传
输中辐射的电波会被另一根线上发出的电波抵消。双绞线一般由
两根 22~26 号绝缘铜导线相互缠绕而成。如果把一对或多对双
绞线放在一个绝缘套管中便成了双绞线电缆。在双绞线电缆(也
称双扭线电缆)内,不同线对具有不同的扭绞长度,一般地说,扭绞
长度在 38.1cm 至 14cm 内,按逆时针方向扭绞,相临线对的扭绞长
Page |2
CCIE R/S & Service Provider Exam Certification Guide
度在 12.7cm 以上。与其他传输介质相比,双绞线在传输距离、信道宽度和数据传输速度等方面均受到一定
限制,但价格较为低廉。目前,双绞线可分为非屏蔽双绞线(UTP:Unshilded Twisted Pair)和屏蔽双绞线
(STP:Shielded Twisted Pair)。
双绞线中 8 根线可以按不同的方式连接,通常使用如下两种标准
双绞线在使用过程中,可以根据特定的需要分为:直连线,交叉线和反转线
平行线(Straight-Through Cable)用于连接(两端同时使用 T568A 或 T568B,针脚一一对应):
1.主机和 switch/hub
2.router 和 switch/hub
交叉线(Crossover Cable)用于连接(连接方式采用一端使用 T568A,另一端使用 T568B):
1switch
和 switch
2.主机和主机
3.hub 和 hub
4.hub 和 switch
5.主机与 router 直连
反转线(Rolled Cable)不是用来连接以太网连接的,它是用来连接主机与 router 的 console,它采用 1 到 8
跟针脚,2 端全部相反对应(即 1 对应 8,2 对应 7...),当主机与 router 的 console 口用反转线连好后,启动系
统里的超级终端程序即可对 router 进行连接:
Bps:9600
Data bits:8
默认串口设置如下:
Parity:None
Stop bits:1
Flow control:none
双绞线在部署时,需要采用 3/90/7 规则,即交换机离线架线缆长度不超过 3m。线架到用户接口模
块距离不超过 90 米,用户接口到用户设备距离不超过 7m,同时在制作网线时需要注意,外层胶皮需要
压在水晶头中,以加大网线的抗拉力和防止网线被扭断。
Page |3
CCIE R/S & Service Provider Exam Certification Guide
在通信中常用的另一种介质为光缆,光缆可以分为单模光缆和多模光缆,如下图:
单模光缆和多模光缆在物理上的主要区别是缆芯的尺寸,多模光缆有两种缆芯尺寸(50.0μ m 和 62.5
μ m) 单模光缆的额定尺寸是 9.0μ m,光在单模光纤介质内部无反射,沿直线传播,传播距离更远。光
纤在介质内部以不同的反射角度传播。同时多模光纤可以承载多路光信号的传送。通过颜色可以区别单
模光缆和多模光缆,单模光缆通常为黄色,多模光
缆通常使用橘红色(右图中间的为单模光纤,两边
的为多模光纤),光纤在进行连接时,根据不同的
标准可以使用不同的连接器,常用的连接器如右图
所示:
1.1.2 数据链路层
数据链路层:实际的物理链路是不可靠的,总会出现错误,数据链路层的作用就是通过一定的手段(将
数据分成帧,以数据帧为单位进行传输)将有差错的物理链路转化成对上层来说没有错误的数据链路。它
的特征参数包括:物理地址、网络拓朴结构、错误警告机制、所传数据帧的排序和流控等。其中物理地
址是相对网络层地址而言的,它代表了数据链路层的节点标识技术。
数据链路层通常有两个子层
Media Access Control(MAC):
这层定义了物理地址和拓扑结构,错误检测,流控制等.共享带宽,CSMA/CD 先到先服务原则(FCFS)
常见的网络拓扑结构如下:
Page |4
CCIE R/S & Service Provider Exam Certification Guide
物理地址通常为 MAC 地址:MAC 地址是烧录在 Network Interface Card(网卡,NIC)里的 MAC 地址,
也叫硬件地址,是由 48 比特长,16 进制的数字组成。
0 -24 位
由厂家自己分配。
25-47 位
组织唯一标志符(organizationally unique identifier,OUI).OUI 是由 IEEE 分配给每
个组织.组织按高到低的顺序分配 1 个唯一的全局地址给每个网卡以保证不
会有重复的编号.
第 47 位
individual/Group(I/G)位,当 I/G 位为 0 的时候,我们可以设想这个地址是 MAC
地址的实际地址可以出现在 MAC 头部信息;当 I/G 位为 1 的时候,我们可以设
想它为广播或多播.
第 46 位
G/L 位,也叫 U/L 位.当这个位为 0 的时候代表它是由 IEEE 分配的全局地址;当
这个位为 1 的时候,代表本地管理地址 (例如在 DECnet 当中)
CSMA/CD
载波监听多路访问/冲突检测(carrier scnse multiple access collision detect)。设备准备发送数
据以前先检查载波信首的介质访问机制。当一个节点想在网络中发送数据时,它首先检查线路
上是否有其他主机的信号在传送:如果有,说明其他主机在发送数据,自己则利用退避算法等
一会再试图发送;如果线路上没有
其他主机的信号,自己就将数据发
送出去,同时,不停的监听线路,
以确信其他主机没有发送数据,如
果检测到有其他信号,自己就发送
一个 JAM 阻塞信号,通知网段上的
其他节点停止发送数据,这时,其
他节点也必须采用退避算法等一会
再试图发送。
Logical Link Control(LLC)802.2:
负责识别 Network layer
协议然后封装(encapsulate)数据.LLC
头部信息告诉 Data Link layer
如何处理接受到的帧,LLC 也提供流控制和控制比特的编号
1.1.3 网络层
这一层定义网络操作系统通信用的协议,为信息确定地址,把逻辑地址和名字翻译成物理的地址。
它也确定从源机沿着网络到目标机的路由选择,并处理交通问题,例如交换、路由和对数据包阻塞的控
制。路由器的功能在这一层。路由器可以将子网连接在一起,它依赖于网络层将子网之间的流量进行路
由。
数据链路层协议是相邻两直接连接结点间的通信协议,它不能解决数据经过通信子网中多个转接结
点的通信问题。设置网络层的主要目的就是要为报文分组以最佳路径通过通信子网到达目的主机提供服
Page |5
CCIE R/S & Service Provider Exam Certification Guide
务,而网络用户不必关心网络的拓扑构型与所使用的通信介质。
OSI 参考模型规定网络层的主要功能有以下三点:
1.路径选择与中继
在点-点连接的通信子网中,信息从源结点出发,要经过若干个中继结点的存储转发后,才
能到达目的结点。通信子网中的路径是指从源结点到目的结点之间的一条通路,它可以表示为
从源结点到目的结点之间的相邻结点及其链路的有序集合。一般在两个结点之间都会有多条路
径选择。路径选择是指在通信子网中,源结点和中间结点为将报文分组传送到目的结点而对其
后继结点的选择,这是网络层所要完成的主要功能之一。
2.流量控制
网络中多个层次都存在流量控制问题,网络层的流量控制则对进入分组交换网的通信量加
以一定的控制,以防因通信量过大造成通信子网性能下降。
3.网络连接建立与管理
在面向连接服务中,网络连接是传输实体之间传送数据的逻辑的、贯穿通信子网的端---端
通信通道。
1.1.4 传输层
传输层将数据分段并重组为数据流(data stream)。TCP UDP 都工作在传输层,当采用 TCP/IP 协议时
程序开发者可以在这 2 者之间做出选择。传输层负责为实现上层应用程序的多路复用,建立会话连接和
断开虚电路提供机制.通过提供透明的数据传输,他也对高层隐藏了任何与网络有关的细节信息。
UDP 使用发送不需确认的方式进行数据传输,通常用于组播数据流等对部分丢弃报文影响较小的数
据流的传输。而对于 TCP 是一种面向连接的数据传输方式,每个数据包的传送必须确认。TCP 传输使用经
典的 3 次握手协议:
Time
Send SYN
seq=x
Receive SYN
Send SYN seq=y,ACK x+1
Receive SYN+ACK
Send ACK y+1
Receive ACK
1.1.5 会话层
会话层建立、管理和终止表示层与实体之间的通信会话。通信会话包括发生在不同网络应用层之间
的服务请求和服务应答,这些请求与应答通过会话层的协议实现。它还包括创建检查点,使通信发生中
断的时候可以返回到以前的一个状态。
1.1.6 表示层
表示层提供多种功能用于应用层数据编码和转化,以确保以一个系统应用层发送的信息可以被另一
个系统应用层识别。表示层的编码和转化模式包括公用数据表示格式、性能转化表示格式、公用数据压
Page |6
CCIE R/S & Service Provider Exam Certification Guide
缩模式和公用数据加密模式。
公用数据表示格式就是标准的图像、声音和视频格式。通过使用这些标准格式,不同类型的计算机
系统可以相互交换数据;转化模式通过使用不同的文本和数据表示,在系统间交换信息,例如
ASCII(American Standard Code for Information Interchange,美国标准信息交换码);标准数据压缩模式确保
原始设备上被压缩的数据可以在目标设备上正确的解压;加密模式确保原始设备上加密的数据可以在目
标设备上正确地解密。表示层协议一般不与特殊的协议栈关联,如 QuickTime 是 Applet 计算机的视频和
音频的标准,MPEG 是 ISO 的视频压缩与编码标准。常见的图形图像格式 PCX、GIF、JPEG 是不同的静态
图像压缩和编码标准。
1.1.7 应用层
应用层是最接近终端用户的 OSI 层,这就意味着 OSI 应用层与用户之间是通过应用软件直接相互作
用的。注意,应用层并非由计算机上运行的实际应用软件组成,而是由向应用程序提供访问网络资源的
API(Application Program Interface,应用程序接口)组成,这类应用软件程序超出了 OSI 模型的范畴。应
用层的功能一般包括标识通信伙伴、定义资源的可用性和同步通信。因为可能丢失通信伙伴,应用层必
须为传输数据的应用子程序定义通信伙伴的标识和可用性。定义资源可用性时,应用层为了请求通信而
必须判定是否有足够的网络资源。在同步通信中,所有应用程序之间的通信都需要应用层的协同操作。
OSI 的应用层协议包括文件的传输、访问及管理协议(FTAM) ,以及文件虚拟终端协议(VIP)和公用管
理系统信息(CMIP)等。
1.1.8 封装与解封装
数据封装过程如下图所示:
应用层
表示层
会话层
上层数据
传输层
TCP头
网络层
IP头
LLC头
上层数据
TCP+ 上层数据
IP+TCP+ 上层数据
FCS
数据链路层
MAC头
物理层
IP+TCP+ 上层数据
FCS
01001110010101101
Page |7
CCIE R/S & Service Provider Exam Certification Guide
在传输层将数据分段,并加入 TCP 头,在网络层加入 IP 地址,在数据链路层分别加入 LLC 头和 MAC
头,最后转换成电信号在物理层传输。
在每一层被封装成的 PDU 都有自己的名字,如下图:
在传输层,数据被分割为一个更小的段(Segment),在网络层,加入 IP 包头,被称为 IP 包(Packet).在数
据链路层被称为帧(Frame)。到最后在物理层,被称为 Bit 流。
电信号传输到对端后,采用相反的方式进行解封装:
应用层
表示层
会话层
上层数据
传输层
TCP头
网络层
IP 头
上层数据
TCP+ 上层数据
LLC头
IP+TCP+ 上层数据
FCS
数据链路层
头
MAC
物理层
1.2
IP+TCP+ 上层数据
FCS
01001110010101101
冲突域与广播域
通常一个网络规模非常大,需要分区段管理,将网络分区的设备为路由器,交换机和集线器等设备。
所分得的区域,根据特性可以被定义为广播域和冲突域
冲突域(物理分段):连接在同一导线上的所有工作站的集合,或者说是同一物理网段上所有节点的集
合或以太网上竞争同一带宽的节点集合。这个域代表了冲突在其中发生并传播的区域,这个区域可以被
Page |8
CCIE R/S & Service Provider Exam Certification Guide
认为是共享段。在 OSI 模型中,冲突域被看作是第一层的概念,连接同一冲突域的设备有 Hub,Reperter
或者其他进行简单复制信号的设备,也就是说,用 Hub 或者 Repeater 连接的所有节点可以被认为是在同
一个冲突域内,它不会划分冲突域。而第二层设备(网桥,交换机)第三层设备(路由器)都可以划分冲突域
的,当然也可以连接不同的冲突域。简单的说,可以将 Repeater 等看成是一根电缆,而将网桥等看成是
一束电缆。
广播域:接收同样广播消息的节点的集合。如:在该集合中的任何一个节点传输一个广播帧,则所有
其他能收到这个帧的节点都被认为是该广播帧的一部分。由于许多设备都极易产生广播,所以如果不维
护,就会消耗大量的带宽,降低网络的效率。由于广播域被认为是 OSI 中的第二层概念,所以象 Hub,交
换机等第一,第二层设备连接的节点被认为都是在同一个广播域。而路由器,第三层交换机则可以划分
广播域,即可以连接不同的广播域。
路由器由于工作在网络层,所以可以隔离广播域,而交换机,由于采用交换矩阵,可以避免在数据
传输时发生冲突。而集线器由于工作在物理层,仅复制电信号,所以无法隔离广播域和冲突域。
1.3 以太网
1976 年,Xerox 公司在 ALOHA 系统中增加了载波侦听之后,一个 14M 电缆上连接了 100 多台计算机,
其传输速率为 2.94M bps,采用了 CSMA/CD 介质访问控制方法。这个系统被称为以太网(Ethernet)。1980
年,Xerox, DEC, Intel 共同提交了“以太网”蓝皮书,制定了 10M bps 的 CSMA /CD 以太网标准。随后,IEEE
802 小组成立。IEEE 定义了采用 1-坚持型 CSMA/CD 技术的 802.3 局域网标准,速率从 1M 到 10M bps。而
以太网只是其中的一个特定产品而已。
1.3.1 以太网帧结构
以太网常见的帧为 IEEE 802.3 和 Ethernet II 帧,IEEE802.3 帧格式如下:
1.前导(preamble)字段:交替的 1 和 0 组成.5Mhz 的时钟频率,8 字节,包含 7 字节的起始帧分
界符(start frame delimiter,SFD),SFD
是 10101011,最后 1 个字节同步(sync)
2.目标地址(destination address,DA):6
字节
3.源地址(source address,SA):6 字节
4.长度(length)字段:不能辨别上层协议,2 字节
5.数据(data):64
到 1500 字节
6.帧校验序列(frame check sequence,FCS):4
字节,存储 CRC 值
而 Ethernet II 的帧结构如下;
Page |9
CCIE R/S & Service Provider Exam Certification Guide
1.前导(preamble)字段:5Mhz 的时钟频率,8 字节,包含 7 字节的起始帧分界符(start frame
delimiter,SFD),SFD
是 10101011,最后 1 个字节同步(sync)
2.目标地址(destination address,DA):6
字节
3.源地址(source address,SA):6 字节
4.类型(type)字段:用于辨别上层协议,2
5.数据(data):64
字节
到 1500 字节
6.帧校验序列(frame check sequence,FCS):4
字节,存储 CRC
值
1.3.2 以太网物理层
一些原始的和扩展的 IEEE 802.3
1.
的标准:
10Base2:Base 是指基带传输技术,2 指最大距离接近 200 米,实际为 185 米,10 指 10Mbps 的
速度,采用的是物理和逻辑总线拓扑结构,AUI 连接器 2.10Base5:5 指最大距离 500 米,10 指
10Mbps 的速度,采用的是物理和逻辑总线拓扑结构,AUI 连接器
2.
10BaseT:10 指 10Mbps 的速度,采用的是物理星形和逻辑总线拓扑结构,3 类 UTP 双绞
线,RJ-45 连接器,每个设备必须与 hub 或者 switch 相连,所以 1 个网段只能有 1 台主机
3.
100BaseT:100 指 100Mbps 的速度,采用的是物理星形和逻辑总线拓扑结构,5,6 或者 7 类
UTP2 对双绞线,RJ-45 连接器,1 个网段 1 台主机
4.
100BaseFX:100 指 100Mbps 的速度,光纤技术,点对点拓扑结构,最大距离 412 米,ST 或者 SC
连接器
5.
1000BaseT:1000 指 1000Mbps 的速度,光纤技术,点对点拓扑结构,最大距离 412 米,5 类 UTP4
对双绞线,最大距离 100 米
1.3.3 半双工和全双工
half-duplex(半双工)以太网:它只采用 1 对线缆.如果 hubs 与 switches 相连,那么必须以半双工的模式操
作,因为端工作站必须能够检测冲突.半双工以太网带宽的利用率只为上限的 30%-40%full-duplex(全双工)以
太网:采用 2 对线缆,点对点 point-to-point)的连接,没有冲突,双倍带宽利用率全双工以太网可以使用在以下
的 3 种形式里:
1.switch 和 host 相连
2.switch 和 switch 相连
3.用交叉线缆(crossovercable)相连的 host 和 host
自动检测机制(auto-detectionmechanism):
当全双工以太网端口电源启动时,它先与远端相连,并且与之进行协商.看是以 10Mbps 的速度还是以
100Mbps 的速度运行;再检查是否可以采用全双工模式,如果不行,则切换到半双工模式
P a g e | 10
CCIE R/S & Service Provider Exam Certification Guide
Chapter2
TCP/IP协议
2.1 TCP/IP模型
2.1.1 TCP/IP模型和OSI模型
TCP/IP 基于四层参考模型。从上往下:
应用层(Application)
传输层(Transport)
网络层(Ineternet)
网络访问层(Network Access)
在 TCP/IP 参考模型中,去掉了 OSI 参考模型中的会话层
和表示层(这两层的功能被合并到应用层实现)。同时将 OSI 参考模型中的数据链路层和物理层合并为主机
到网络层。
1、主机到网络层
实际上 TCP/IP 参考模型没有真正描述这一层的实现,只是要求能够提供给其上层-网络互连层
一个访问接口,以便在其上传递 IP 分组。由于这一层次未被定义,所以其具体的实现方法将随着网
络类型的不同而不同。
2、网络互连层
网络互连层是整个 TCP/IP 协议栈的核心。它的功能是把分组发往目标网络或主机。同时,为了
尽快地发送分组,可能需要沿不同的路径同时进行分组传递。因此,分组到达的顺序和发送的顺序
可能不同,这就需要上层必须对分组进行排序。网络互连层定义了分组格式和协议,即 IP 协议
(Internet Protocol)。网络互连层除了需要完成路由的功能外,也可以完成将不同类型的网络(异构
网)互连的任务。除此之外,网络互连层还需要完成拥塞控制的功能。
3、传输层
在 TCP/IP 模型中,传输层的功能是使源端主机和目标端主机上的对等实体可以进行会话。在传
输层定义了两种服务质量不同的协议。即:传输控制协议 TCP(transmission control protocol)和用
户数据报协议 UDP(user datagram protocol)。
4、应用层
TCP/IP 模型将 OSI 参考模型中的会话层和表示层的功能合并到应用层实现。应用层面向不同的
网络应用引入了不同的应用层协议。其中,有基于 TCP 协议的,如文件传输协议(File Transfer Protocol,
FTP)、虚拟终端协议(TELNET)、超文本链接协议(Hyper Text Transfer Protocol,HTTP),也有基于
UDP 协议,如下图
P a g e | 11
CCIE R/S & Service Provider Exam Certification Guide
2.1.2 TCP/UDP区别
TCP 协议是一个面向连接的、可靠的协议。它将一台主机发出的字节流无差错地发往互联网上的其他主
机。在发送端,它负责把上层传送下来的字节流分成报文段并传递给下层。在接收端,它负责把收到的报
文进行重组后递交给上层。TCP 协议还要处理端到端的流量控制,以避免缓慢接收的接收方没有足够的缓
冲区接收发送方发送的大量数据。
TCP 报文格式如下:
UDP 协议是一个不可靠的、无连接协议,主要适用于不需要对报文进行排序和流量控制的场合。UDP
报文格式如下:
P a g e | 12
CCIE R/S & Service Provider Exam Certification Guide
TCP 协议和 UDP 协议的一些特性区别如下:
1.TCP.协议在传送数据段的时候要给段标号;UDP 协议不
2.TCP 协议可靠;UDP 协议不可靠
3.TCP 协议是面向连接;UDP 协议采用无连接
4.TCP 协议负载较高,采用虚电路;UDP 协议低负载
5.TCP 协议的发送方要确认接受方是否收到数据段(3 次握手协议)
6.TCP 协议采用窗口技术和流控制
2.1.3 Internet层协议
Internet 层对应 OSI7 层模型的网络层,在整个 TCP/IP 模型中,互联网层(Internet)的功能是寻址、定
址、数据打包和安排路径。
常见的 Internet 层协议有:
IP
ARP
RARP
ICMP
IGMP
2.1.4 ICMP
IP 协议是一种不可靠的协议,无法进行差错控制。但 IP 协议可以借助其他协议来实现这一功能,如 ICMP。
ICMP(Internet Control Messages Protocol, 网间控制报文协议)允许主机或路由器报告差错情况和提供有关
异常情况的报告。
一般来说,ICMP 报文提供针对网络层的错误诊断、拥塞控制、路径控制和查询服务四项大的功能。ICMP
报文如下:
1.Echo & Echo Reply
我们使用一个 ICMPECHO 数据包来探测主机地址是否存活(当然在主机没有被配置为过滤
ICMP 形 式 ), 通 过 简 单 的 发 送 一 个 ICMPECHO(Type 8) 数 据 包 到 目 标 主 机 , 如 果
ICMPECHOReply(ICMPtype0)数据包接受到,说明主机是存活状态。
如果没有就可以初步判断
主机没有在线或者使用了某些过滤设备过滤了 ICMP 的 REPLY。这种机制就是我们通常所用的 ping
命令来检测目标主机是否可以 ping 到.
回送消息的源地址是回送响应消息的目的地址。若要形成一个回送响应消息,应该将源和目
的地址交换,将类型代码更改为 0,重新计算机校验码。
2. 超时报文
如果网关在处理数据报时发现生存周期域为零,此数据报必须抛弃。网关同时必须通过超时
信息通知源主机。如果主机在组装分段的数据报时因为丢失段未能在规定时间内组装数据,此数
据报必须抛弃。网关发送超时信息。
3. 目标主机不可达报文
如果在目的域中指定的网络不可达,如网络距离为无限远,网关会向发送源数据的主机发送
目的不可达消息。而且,在一些网络中,网关有能力决定目的主机是否可达。如果目的地不可达,
它将向发送源数据的主机发送不可达信息。在目的主机,如果 IP 模块因为指定的协议模块和进程
端口不可用而不能提交数据报,目的主机将向发送源数据的主机发送不可达信息。
P a g e | 13
CCIE R/S & Service Provider Exam Certification Guide
另外一种情况是当数据报必须被分段传送,而“不可分段”位打开,在这种情况下,网关必
须抛弃此数据报,并向向发送源数据的主机发送不可达信息。
2.2 地址解析协议(ARP)
2.2.1 ARP协议
172.19.35.2
0002.6779.0f4c
172.19.35.33
0013.22af.febd
Sender’s
Mac Address
0002.6779.0f4c
Sender’s
IP Address
172.19.35.2
Target
MAC Address:
0000.0000.0000
Target
IP Address:
172.19.35.33
Sender’s
Mac Address
0013.22af.febd
Sender’s
IP Address
172.19.35.33
Target
MAC Address:
0002.6779.0f4c
Target
IP Address:
172.19.35.2
地址解析协议,用于将IP地址解析为MAC地址,在cisco路由器上可以使用debug arp查看arp消息
Aretha#debug arp
IP ARP:rcvd req src 172.19.35.2 0002.6779.0f4c, dst 172.21.5.1 Ethernet0
IP ARP:sent req src 172.21.5.1 0013.22af.febd,
dst 172.19.35.2 0002.6779.0f4c Ethernet0
可以使用show arp查看ARP表的内容.Cisco路由器保存Arp表的时间为4小时(14400s)
Martha(config)# interface ethernet 0
Martha(config-if)# arp timeout 1800
Arp表也可以实现静态绑定
Martha(config)# arp 172.21.5.131 0000.00a4.b74c snap
使用clear arp-cache 可以清空ARP缓存区
2.2.2 Proxy-ARP
代理arp即arp欺骗,路由器通过发送代理arp信息,让主机认为路由器即为目的主机。
通过这种方式,路由器可以转发数据流,cisco的路由器上,代理arp是默认打开的,可以在接
口上 no ip proxy-arp关闭代理arp
典型的使用代理arp的arp表
C:\Documents and Settings\Kevin Fang>arp -a
Interface: 192.168.1.111 --- 0x3
Internet Address
Physical Address
192.168.1.34
00-d0-d0-33-af-cd
192.168.1.37
00-d0-d0-33-af-cd
192.168.1.1
00-d0-d0-33-af-cd
192.168.1.33
00-0a-eb-aa-33-ab
2.2.3 Gratuitous -ARP
Type
dynamic
dynamic
dynamic
dynamic
主机偶尔会发送一个以自己 ip 作为目的地址的 arp 请求,防止 ip 冲突,但这种 arp 在很多 ip 中
都没有实现
2.2.4 R -ARP
反向 arp 可以实现 ip 地址到已知硬件地址的映射,但很大程度上被 BOOTP 和 DHCP 所替代
P a g e | 14
CCIE R/S & Service Provider Exam Certification Guide
Chapter 3
IP寻址及子网划分
3.1 IP地址及寻址方式
IP 地址是软件地址,MAC 地址是硬件地址,MAC 地址是烧录在NIC 里的,MAC 地址用于在本地网络查找主
机地址.IP 地址是唯一的,也叫做网络地址(network address);硬件地址也叫节点地址(node address)
3.1.1 网络地址
网络地址分为5 类:
1.A 类地址: 4个8位位组(octets).第一个octet代表网络号,剩下的3个代表主机位.
范围是0xxxxxxx,即0到127
2.B 类地址: 前2 个octets 代表网络号,剩下的2 个代表主机位. 范围是10xxxxxx,即128 到191
3.C 类地址: 前3 个octets 代表网络号,剩下的1 个代表主机位. 范围是110xxxxx,即192 到223
4.D 类地址: 多播地址,范围是224.0.0.0到239.255.255.255
5.E 类地址: 保留,实验用,范围是240.0.0.0到255.255.255.255
3.1.2 特殊的网络地址
一些特殊的IP 地址:
1.IP 地址127.0.0.1:本地回环(loopback)测试地址
2.广播地址:255.255.255.255
3.IP 地址0.0.0.0:代表任何网络
4.网络号全为0:代表本网络或本网段
5.网络号全为1:代表所有的网络
6.节点号全为0:代表某个网段的任何主机地址
7.节点号全为1:代表该网段的所有主机
广播地址TCP/IP协议规定,主机号部分各位全为1的IP地址用于广播.所谓广播地址指同时向网上所有
的主机发送报文,也就是说,不管物理网络特性如何,Internet网支持广播传输.如136.78.255.255 就是B
类地址中的一个广播地址,你将信息送到此地址,就是将信息送给网络号为136.78的所有主机.有时需
要在本网内广播,但又不知道本网的网络号时,TCP/IP 协议规定32比特全为1的IP地址用于本网广播,
即255.255.255.255
3.1.3 私有地址
RFC1918定义了私有IP 地址(private IP address):节约了IP 地址是空间,增加了安全性.处于私有IP 地址的网
络称为内网,与外部进行通信就必须靠网络地址翻译(network address translation,NAT)
一些私有地址的范围:
1.A 类地址中:10.0.0.0 到10.255.255.255.255
2.B 类地址中:172.16.0.0 到172.31.255.255
3.C 类地址中:192.168.0.0 到192.168.255.255
3.1.4 广播地址
1.2层 广播:FF.FF.FF.FF.FF.FF,发送给LAN 内所有节点
2.3层 广播:发送给网络上所有节点
3.单播(unicast):发送给单独某个目标主机
P a g e | 15
CCIE R/S & Service Provider Exam Certification Guide
4.多播:由1 台主机发出,发送给不同网络的许多节点
3.2 IP子网划分
子网划分(subnetting)的优点:
1.减少网络流量
2.提高网络性能
3.简化管理
4.易于扩大地理范围
3.2.1 子网掩码
子网掩码用于辨别IP 地址中哪部分为网络地址,哪部分为主机地址,有1 和0 组成,长32 位,全为1 的位代
表网络号.不是所有的网络都需要子网,因此就引入1 个概念:默认子网掩码(default subnet mask).A 类IP 地址
的默认子网掩码为255.0.0.0;B 类的为255.255.0.0;C 类的为255.255.255.0
3.2.2 Classless Inter-Domain Routing(CIDR)
CIDR 叫做无类域间路由,ISP常用这样的方法给客户分配地址,ISP提供给客户1个块(block size),类似这
样:192.168.10.32/28,这排数字告诉你你的子网掩码是多少,/28 代表多少位为1,最大/32.但是你必须知道的1
点是:不管是A类还是B类还是其他类地址,最大可用的只能为30/,即保留2 位给主机位
Notice:如果使用了 ip subnet-zero 命令,我们就可以使用仅 1 位的子网位了
3.2.2 Variable Length Subnet Masks(VLSM)
变长子网掩码(VLSM)的作用:节约IP 地址空间;减少路由表大小.使用VLSM 时,所采用的路由协议必须能够
支持它,这些路由协议包括RIPv2,OSPF,EIGRP 和BGP.
3.2.3 IP寻址排错
一些网络问题的排难
1.ping 127.0.0.1 如果反馈信息失败,说明IP协议栈有错,必须重新安装TCP/IP 协议
2.ping
本机ip
如果反馈信息失败,说明你的网卡不能和IP 协议栈进行通信
3 ping gateway
4 ping remote server
3.2.4 CIDR 值:
1.掩码255.0.0.0:/8(A 类地址默认掩码)
2.掩码255.128.0.0:/9
3.掩码255.192.0.0:/10
4.掩码255.224.0.0:/11
5.掩码255.240.0.0:/12
6.掩码255.248.0.0:/13
7.掩码255.252.0.0:/14
8.掩码255.254.0.0:/15
9.掩码255.255.0.0:/16(B 类地址默认掩码)
10.掩码255.255.128.0:/17
11.掩码255.255.192.0:/18
12.掩码255.255.224.0:/19
13.掩码255.255.240.0:/20
14.掩码255.255.248.0:/21
15.掩码255.255.252.0:/22
P a g e | 16
CCIE R/S & Service Provider Exam Certification Guide
16.掩码255.255.254.0:/23
17.掩码255.255.255.0:/24(C 类地址默认掩码)
18.掩码255.255.255.128:/25
19.掩码255.255.255.192:/26
20.掩码255.255.255.224:/27
21.掩码255.255.255.240:/28
22.掩码255.255.255.248:/29
23.掩码255.255.255.252:/30
3.2.5 Wildcard mask:
在ACL中常用到的一种子网掩码表示方式,采用正常掩码的反码表示.
Eg: /24 mask 255.255.255.0
wildcard mask: 255.255.255.255-255.255.255.0 = 0.0.0.255
P a g e | 17
CCIE R/S & Service Provider Exam Certification Guide
P a g e | 18
CCIE R/S & Service Provider Exam Certification Guide
第二部分
第4章
第5章
第6章
第7章
第8章
第9章
第10章
第11章
第12章
第13章
第14章
第15章
第16章
路由协议概述
静态路由协议
RIP 路由协议
EIGRP 路由协议
OSPF 路由协议
集成 IS-IS 路由协议
路由控制及重分布
NAT 网络地址映射
ACL 访问控制列表
路由器备份选择协议
BGP 路由协议
路由器管理及其他特性
Cisco 路由器体系结构
P a g e | 19
CCIE R/S & Service Provider Exam Certification Guide
路由协议概述
Chapter 4
4.1路由基础
Routing protocol 用于路由器动态寻找最优路径,并使路由器都拥有路由表,R/p 决定了数据包的上行路
径,eg:RIP IGRP EIGRP OSPF,被动路由协议被分配到接口上并决定数据数据包的传送方式, Router:把一个数
据包从一个设备发送到其他网络的另一个设备,但是不关心 host ,只关注网络状态,和数据包转发的最佳
路径。一个路由器必须了解:
1.
目的地址
2.
相邻路由器,并可以从哪里获得远程网络的信息
3.
到所有远程网络的可能路由
4.
到达每个远程网络的最佳路由
5.
如何维护并验证路由信息
路由过程:同一子网内机器发送数据包,直接转到相应目的ip地址的主机,对于不同网段的ip,要找到
能转发这个包的router,否则,就用default gateway转发。router 转发IP 包时,只根据IP 包目的IP 地址的网络
号部分,选择合适的接口,把IP 包送出去.同主机一样,router 也要判定接口所接的是否是目的子网,如果是,就直
接把包通过接口送到网络上,否则,也要选择下一个router 来传送包.router 也有它的缺省网关,用来传送不知
道往哪儿送的IP 包.这样,通过router 把知道如何传送的IP 包正确转发出去,不知道的IP 包送给缺省网关,这样
一级级地传送,IP 包最终将送到目的地,送不到目的地的IP 包则被网络丢弃了。
几种不同类型的路由:
1.
静态路由(static routing)
2.
默认路由(default routing)
3.
动态路由(dynamic routing)
4.1.1
静态路由
静态路由:手动填加路由线路到路由表中,
优点是:
1.没有额外的router 的CPU 负担
2.节约带宽
3.增加安全性
缺点是:
1.网络管理员必须了解网络的整个拓扑结构
2.如果网络拓扑发生变化,管理员要在所有的routers 上手动修改路由表
P a g e | 20
CCIE R/S & Service Provider Exam Certification Guide
3.不适合在大型网络中
4.1.2
动态路由
通过某些动态路由算法,例如最短路径算法等动态的对路由表进行操作,更快的反应了网络的变化,
主要分为如下3种
1.距离向量(distance vector)
2.链路状态(link state)
3.混合型(hybrid)
距离向量:用于根据距离(distance)来判断最佳路径,当1 个数据包每经过1 个router 时,被称之为经
过1 跳.经过跳数最少的则作为最佳路径.这类协议的例子有RIP 和IGRP,它们将整个路由表向与它
们直接相连的相邻routers
链路状态:也叫最短路径优先(shortest-path-first)协议.每个router 创建3 张单独的表,1 张用来跟踪
与它直接相连的相邻router;1 张用来决定网络的整个拓扑结构;另外1 张作为路由表.所以这种协
议对网络的了解程度要比距离向量高.这类协议例子有OSPF
混合型:综合了前2 者的特征,这类协议的例子有EIGRP
4.2 管理距离
管理距离是用来衡量接受来自相邻路由器上路由选择信息的可信度的。一个管理距离是一个从0~255的
整数值,0时最可信赖的,而255意味着不会有业务量从这个路由通过。假如router 收到远端的2条路由更
新,router 将检查AD,AD 值低的将被选为新路线存放于路由表中.假如它们拥有相同的AD,将比较它们的度
(metric).度低的将作为新线路.假如它们的AD和度都一样,那么将在2 条线路做均衡负载。
Route Source
Default AD
Connected interface
0
Static route
1
EIGRP
90
IGRP
100
OSPF
110
RIP
120
External EIGRP
170
Unknown
255 (this route will never be used
如上所述,如果配置了static route RIP的ad高于static,故会优先考虑static route
P a g e | 21
CCIE R/S & Service Provider Exam Certification Guide
4.3 常见路由协议区别
RIP v1
RIP v2
IGRP
水平分割
x
x
x
周期性更新
x
x
x
触发更新
x
x
x
VLSM 支持
x
负载均衡
自动有类路由
X
汇总
但无法关闭
x
OSPF
IS-IS
x
x
x
x
x
x
x
x
x
x
x
x
手动无类路由
x
汇总
路由度量
EIGRP
跳数
跳数
delay MTU
delay MTU
负载 带宽
负载 带宽
可靠性
可靠性
Cost
默认 延时
cost 差错
认证类型
none
text
none
MD5
text&MD5
text
最大跳数
15
15
255
255
无限
1024
x
x
分层设计要求
可扩展性
小
小
中
大
大
很大
路由算法
bellman-ford
bellman-ford
bellman-ford
DUAL
Dijkstra
Dijkstra
Cisco AD
120
120
100
90/170
110
115
P a g e | 22
CCIE R/S & Service Provider Exam Certification Guide
Chapter 5
静态路由协议
5.1 路由表
当frame到达路由器的接口以后,路由器检查frame中的目标地址,如果目标地址为路由器 的接口的
地址或广播地址的时候,路由器把、packet从frame中剥离出来,传递给Network Layer.然后packet中的目标
地址将被检查,接下来还要检查protocol字段.最后再发送给合适的进程 如果packet是可路由的,路由器
会查找自己的路由表寻找相应的路由条目.路由条目至少包 含以下2个要素:
1.目标地址,这个地址是路由器能够到达的地址,
2.到达目标地址的指向,这个指向也就是所谓的next hop(下一跳)
路由器在地址匹配过程中按最大程度进行匹配,地址按精确程度递减的排列,如下:
1.主机地址
2.子网
3.汇总(summary)地址
4.主网络号
5.超网(supernet)
6.默认(default)地址
如果在地址匹配过程中,不能和路由表中任何条目所匹配,packet将被丢弃,然后,一个名为 Destination
Unreachable(目标不可达)的ICMP信息将发回给源地址
查看IP路由表,使用show ip route,如下:
5.2 配置静态路由
一般配置静态路由的步骤如下:
1.为每条链路确定地址(包括子网地址和网络地址)
2.为每个路由器,标识非直连的链路地址
3.为每个路由器写出未直连的地址的路由语句(写出直连地址的语句是没必要的)
P a g e | 23
CCIE R/S & Service Provider Exam Certification Guide
比如如下拓扑,
写出所有链路的地址,如下:
10.1.0.0/16
10.4.6.0/24
10.4.7.0/24
192.168.1.192/27
192.168.1.64/27
192.168.1.0/27
以路由器 Piglet 为例,非直连的地址,如下:
10.4.6.0/24
10.4.7.0/24
192.168.1.64/27
192.168.1.0/27
最后把这些没有直连的语句写出来,如下:
Piglet(config)#ip route 192.168.1.0 255.255.255.224 192.168.1.193
Piglet(config)#ip route 192.168.1.64 255.255.255.224 192.168.1.193
Piglet(config)#ip route 10.4.6.0 255.255.255.0 192.168.1.193
Piglet(config)#ip route 10.4.7.0 255.255.255.0 192.168.1.193
Piglet(config)#ip classless
Piglet(config)#ip subnet-zero
上面的 192.168.1.193 是 next hop 地址.还有种方法就是使用出口接口(exit interface)来代替下一跳
地址,假设 192.168.1.1 是路由器 Tigger 的 e0 口,上面的其中一条语句就可以写成:
Piglet(config)#ip route 10.4.7.0 255.255.255.0 e0
这两种方式是存在区别的,如下,先在使用下一跳地址的配置上查看路由表信息:
Piglet#sh ip route
S 10.4.7.0 255.255.255.0 [1/0] via 192.168.1.193
P a g e | 24
CCIE R/S & Service Provider Exam Certification Guide
再在使用 exit interface 代替下一跳地址的配置上查看路由表信息,如下:
Piglet#sh ip route
S 10.4.7.0 255.255.255.0 is directly connected, Ethernet0
5.3 静态浮动路由
设置一条管理距离稍大于正常使用的一条静态路由,如下,将一条路由的管理距离设置为 50,这
样正常使用的这条链路 down 掉后,被设置为浮动路由的备份链路启用
Piglet(config)#ip route 10.4.7.0 255.255.255.0 192.168.1.193 50
5.4 路由负载均衡
均衡负载可以是基于目标地址或者是基于每个 packet 的所谓机遇目标地址的均衡负载,是说假如
有 2 条到达目标地址的路径,那么第一个 packet 将通过第一条链路到达第一个目标设备,第二个 packet
将通过第二条链路到达第二个目标设备,第三个 packet 又将通过第一条链路到达第三个目标设备等等,
以次类推.当 Cisco 路由器工作在默认的交换模式,Fast Switching(快速交换)模式下,就使用这种类型的均
衡负载
5.5
Fast Switching的工作原理
当路由器对第一个 packet 进行发往目标地址的处理的时候,先查看路由表和选择出口接口,然后获
取组成 frame 的信息(比如 ARP 表的查询)并进行封装,然后传输.之前获取的这些路由和数据链路信息将
被保存在快速交换的 cache 中.接下来,当有要到达和第一个包相同的目标地址的包的时候,就可以不进
行路由表和 ARP 表的查询,直接对 packet 进行交换。快速交换降低了 CPU 的占用和处理时间,并意味着
去往某个目标地址的 packet 都从相同的路由器接口被路由出去.当有到达同一网络不同主机的 packet,
路由器可能会吧这些 packet 通过另外一条链路进行路由.因此,路由器能做的最好的就是给予目标地址
的均衡负载所谓基于基于 packet 的均衡负载,是说假如有 2 条到达目标地址的路径,那么第一个 packet
将通过第一条链路到达目标设备,第二个 packet 将通过第二条链路到达目标设备,第三个 packet 又将通
过第一条链路到达目标设备等等,以次类推.(这里考虑的是等价的均衡负载)
P a g e | 25
CCIE R/S & Service Provider Exam Certification Guide
Cisco 路由器工作在 Process Switching(进程交换)模式的时候就采用基于 packet 的均衡负载进程交换,是
指每次对 packet 的交换,都要查询路由表,选择出口接口和查询数据链路信息,因为每次的路由决策都是
独立的.要在某个接口打开进程交换模式,使用 no ip route-cache 命令
5.6 递归静态路由
使用递归查询路由,在网络出现变更时配置将节省很多时间,Sanderz 采用了递归路由的方式构成路由
表,如果不希望流量经过 Heffalump 而走 Woozle
Sanderz(config)# ip route 10.87.14.0 255.255.255.0 10.23.5.95
Sanderz(config)# no ip route 10.87.14.0 255.255.255.0 10.23.5.20
5.7 静态路由协议排错
如图,管理员可能会怕网桥的流量过大,使得服务器 Milne 的流量会被延误.于是管理员在路由器上
添加一条到达服务器 Milne 的静态路由来避开网桥,如下:
P a g e | 26
CCIE R/S & Service Provider Exam Certification Guide
Roo(config)#ip route 172.16.20.75 255.255.255.255 172.16.21.2
这样的方案看似合理,但是实际上,在路由器 Roo 上增加了到达服务器 Milne 的静态路由以后,packet
不但不能被路由器 Roo 路由,也不能被路由器 Kanga 路由
Traceroute 发现产生路由环路
Roo#trace 172.16.20.75
1 172.16.21.2 0 msec 0 msec 0 msec
2 172.16.20.1 4 msec 0 msec 0 msec
3 172.16.21.2 4 msec 0 msec 0 msec
4 172.16.20.1 0 msec 0 msec 4 msec
5 172.16.21.2 0 msec 0 msec 4 msec
6 172.16.20.1 0 msec 0 msec 4 msec
7 172.16.21.2 0 msec 0 msec 4 msec
8 172.16.20.1 0 msec 0 msec 4 msec
9 172.16.21.2 4 msec 0 msec 4 msec
10 172.16.20.1 4 msec 0 msec 4 msec
11 172.16.20.2 4 msec
Packet 本不应该被路由器 Kanga 路由,它应该意识到目标设备 Milne 位于和它的 E0 口直连的网络
172.16.20.0 上,然后经过数据链路来把 packet 传输给服务器 Milne.因此,问题可能出在数据链路上,如何
确定数据链路是否正确?当要确定到达某个网络的逻辑链路信息是否正确的时候,就要查看路由表;要查
看到达某一设备的物理路径信息是否正确的时候,就要查看 ARP 表.如下,使用 show arp 命令查看路由器
Kanga 的 ARP 表:
Kanga#sh arp
Protocol Address Age (Min) Hardware Addr Type Interface
Internet 172.16.20.75 2 00e0.1e58.dc39 ARPA Ethernet0
Internet 172.16.21.2 - 00e0.1e58.dcb4 ARPA Ethernet1
Kanga#
如图,服务器 Milne 的 MAC 地址实际为 0002.6779.0f4c,和这里的 ARP 表里的条目不符,由此可以判定
问题是出在路由器 Kanga 上.再查看路由器 Roo 的 ARP 表,如下:
Roo#sh arp
Protocol Address Age (Min) Hardware Addr Type Interface
Internet 172.16.20.75 2 00e0.1e58.dc39 ARPA Ethernet0
为什么这里路由器 Roo 的 E0 口的 MAC 地址和服务器 Milne 的 MAC 地址一样?也就是说路由器 Kanga
错误的认为路由器 Roo 的 E0 口就是服务器 Milne 的接口,于是把 MAC 地址 00e0.1e58.dc39 作为目标
Milne 的目标 MAC 地址进行封装,实际的却是路由器 Roo 的 E0 口接收到这个 frame,然后又把 frame 发回
给路由器 Kanga。问题是,路由器 Kanga 是如何得到这个错误的 ARP 信息呢?答案是 proxy(代理) ARP,当
路由器 Kanga 初次接收到发往服务器 M
ilne 的 packet 的时候,它将发送 ARP 请求服务器 Milne 和路
由器 Roo 的 E0 口都会对这个请求进行响应.因为路由器 Roo 有到达服务器 Milne 的路径,但是这条路径
所在的网络不是它收到 ARP 请求的网络,于是它发送一条代理 ARP 的应答给路由器 Kanga.之前服务器
Milne 响应 ARP 请求,该 ARP 应答信息保存在路由器 Kanga 的 ARP 表中;由于网桥的延时,路由器 Roo 响
应的那条代理 ARP 应答随后才到达路由器 Kanga 并保存,同时也覆盖了原先正常的 ARP 条目
有 2 种方法可以解决上述问题,其中一种是关闭路由器 Roo 的 E0 接口的代理 ARP 功能,如下:
P a g e | 27
CCIE R/S & Service Provider Exam Certification Guide
Roo(config)#int e0
Roo(config-if)#no ip-proxy
还有种办法就是用在路由器 Kanga 上用静态 ARP 条目代替动态获取的,如下:
Kanga(config)#arp 172.16.20.75 0002.6779.0f4c arpa
P a g e | 28
CCIE R/S & Service Provider Exam Certification Guide
Chapter 6
RIP路由协议
6.1 距离矢量路由协议简介
距离矢量路由选择算法发送完整的路由选择表到相邻的路由器,然后,相邻的路由器会将接受岛的路由
表项和自己原有的路由表进行组合,以完善路由器的路由表。由于远程网络的确认信息并没实地亲自去查找,
故戏称为:传言路由.
6.2 路由环路及D-V解决路由环路的方法
Distance-Vector Routing Protocols通过向所有接口周期性的广播路由更新来跟踪整个网络的变化,这些广
播包括了完整的路由表,但却给cpu和带宽增加了负担。若会聚更新过慢会产生路由环路
假如网络5 出问题了,不工作了,E 就发送更新给C 汇报情况,于是,C 开始停止通过E 来路由信息到网络5,
但是这个时候A,B 和D 还不知道网络5 出问题了.所以它们仍然继续发送更新信息.C 发送更新给B说停止路
由到网络5.但是此时A 和D 还没有更新,所以它们觉得网络5仍然可用,而且跳数为3.接下来,A发送更新说:嘿!
网络5还可用.B 和D 接受到A 发来的更新后,没办法,也相同的觉得可用经过A到达网络5,并且认为网络5 可用.
所以就这样,1 个目标网络是网络5 的数据包将进过A 到B,然后又回到A
…
…
解决办法:
水平分割(split horizon),它规定由1个接口发送出去的路由信息不能再朝这个接口往回发送.这个
办法减少了路由信息的不正确性和负载,但在某些环境中,例如Frame-Relay的Hub节点,水平分割将带
来一些麻烦。
毒性逆转(poison
reverse)。当一条路径信息变为无效之后,路由器并不立即将它从路由表中删
除,而是用16,即不可达的度量值将它广播出去。这样虽然增加了路由表的大小,但对消除路由循环很
有帮助,它可以立即清除相邻路由器之间的任何环路。
触发更新(trigger
update)。当路由表发生变化时,更新报文立即广播给相邻的所有路由器,而
不是等待30秒的更新周期。同样,当一个路由器刚启动RIP时,它广播请求报文。收到此广播的相邻路
由器立即应答一个更新报文,而不必等到下一个更新周期。这样,网络拓扑的变化会最快地在网络上传
播开,减少了路由循环产生的可能性。
抑制计时(holddown
timer)。一条路由信息无效之后,一段时间内这条路由都处于抑制状态,
即在一定时间内不再接收关于同一目的地址的路由更新。如果,路由器从一个网段上得知一条路径失效,
然后,立即在另一个网段上得知这个路由有效。这个有效的信息往往是不正确的,抑制计时避免了这个
问题,而且,当一条链路频繁起停时,抑制计时减少了路由的浮动,增加了网络的稳定性。
即便采用了上面的4种方法,路由循环的问题也不能完全解决,只是得到了最大程度的减少。一旦
路由循环真的出现,路由项的度量值就会出现计数到无穷大(Count to Infinity)的情况。这是因为
路由信息被循环传递,每传过一个路由器,度量值就加1,一直加到16,路径就成为不可达的了。RIP选
择16作为不可达的度量值是很巧妙的,它既足够的大,保证了多数网络能够正常运行,又足够小,使得
计数到无穷大所花费的时间最短。
P a g e | 29
CCIE R/S & Service Provider Exam Certification Guide
6.3 RIP路由协议
RIP是通过UDP端口520来进行操作的,RIP信息包是封装在UDP segment中的.
RIP定义了2种信息类型:Request message(请求信息)和Response message(应答信息).
请求信息
用来向邻居请求发送一个update(更新),
应答信息
运载着这个被请求的update.
RIP的metric是基于hop count(跳数)的,metric为16代表不可达。
在刚启动的时候,RIP从启用了RIP的接口上向外广播请求信息,接下来RIP进程进入一个循环状态:监听来
自其他路由器的请求信息和应答信息.当邻居收到请求信息以后,就发送应答信息给这个发出请求信息的路由
器,这个应答信息就包罗了它们的路由表。当发出请求信息的这个路由器收到了应答信息以后,如果这个update
里包含的路由条目比它本身所拥有的更新,或者本身的路由表里没有这个条目,那就把它放进自己的路由表中.
如果本身的路由表有这个条目,并且update里的路由条目的metric,也就是跳数大于它自己的条目的跳数,而且
这个update是源自它本身的条目指向的下一跳路由器,那么该路由在一段holddown周期里将标记为不可达.如
果这个holddown周期超出,那个邻居仍然发送拥有较高metric(较多跳数)的update作为应答,那么发出请求信息
的路由器将接受这一新的metric
RIP的缺陷
RIP虽然简单易行,并且久经考验,但是也存在着一些很重要的缺陷,主要有以下几点:
1.过于简单,以跳数为依据计算度量值,经常得出非最优路由;
2.度量值以16为限,不适合大的网络;
3.安全性差,接受来自任何设备的路由更新;
4.不支持无类IP地址和VLSM(Variable
Length
Subnet
Mask,变长子网掩码);
5.收敛缓慢,时间经常大于5分钟;每固定时间更新一次消耗带宽很大
6.4 RIP计时器
Update timer
在RIP启动之后,平均每30秒,启用了RIP的接口会发送应答信息(也就是update),这个update包含了路由器
除了被split horizon(水平分割)抑制的完整的路由表.update周期发送的时间间隔(即update timer)为25.5秒
到30秒之间(随机),并且update的目标地址为255.255.255.255
invalid timer
当有新的路由条目被加进路由表以后,这个invalid timer 就初始化为 180 秒(即 6 个 update 周期),如果
一条路由 update 在这 180秒里没有被收到的话,那么这条路由的跳数(即 metric)就被设置为 16,即不可
达
flush timer
Cisco一般把这个时间设置为240秒(RFC 1058中规定的是300秒).如果超出这240秒,路由将被标记为不可达,
并从路由表中移除掉.如下就是一条被标记为不可达,但是还没有被移除的路由:
Mayberry#sh ip route
10.0.0.0 255.255.0.0 is subnetted, 4 subnets
C 10.2.0.0 is directly connected, Serial0
R 10.3.0.0 255.255.0.0 is possibly down,
Routing via 10.1.1.1, Ethernet0
P a g e | 30
CCIE R/S & Service Provider Exam Certification Guide
C 10.1.0.0 is directly connected, Ethernet0
R 10.4.0.0 [120/1] via 10.2.2.2, 00:00:00, Serial0
Mayberry#
holddown timer
180秒.如果新收到的路由条目的跳数大于本身条目的跳数,该路由将进入长为180秒的holddown状态,
4种timer的操作命令如下:
timers basic update invalid holddown flush
如果修改了某个路由器的timer,那么其他参与RIP进程的所有的路由器也必须做出相应的timer调整
6.5 RIP消息格式
路由条目最多为25条,如果某个路由器要发送多余25条路由条目的RIP信息,那么就要产生并发送多个RIP
信息.RIP信息最大为504字节,加上8字节的UDP头部信息,最大为512字节
RIP报文中至多可以出现25个AFI、互联网络地址和度量域。这样允许使用一个RIP报文来更新一个路由器
中的多个路由表项。包含多个路由表项的RIP报文只是简单地重复从AFI到度量域的结构,其中包括所有的零
域。 地址域可以既包括发送者的地址也包括发送者路由表中的一系列I P地址。请求报文含有一个表项并包
括请求者的地址。应答报文可以包括至多25个RIP路由表项。任何RIP报文的内容都是完整的,即使它们可能
仅仅是整个路由表的一个子集。当报文收到时接收节点可以任意处理更新,而不需对其进行顺序化。比如,
一个RIP路由器的路由表中可以包括100项。与其他RIP路由器共享这些信息需要4个RIP报文,每个报文包括2 5
项。如果一个接收节点(结点)首先收到了4号报文(包括从76至100的表项),它会首先简单地更新路由表中的对
应部分,这些报文之间没有顺序相关性。这样使得RIP报文的转发可以省去传输协议如TCP所特有的开销。
1. 命令域
命令域指出RIP报文是一个请求报文还是对请求的应答报文。两种情形均使用相同的帧结构:
请求报文请求路由器发送整个或部分路由表。
应答报文包括和网络中其他RIP节点共享的路由表项。
应答报文可以是对请求的应答,也可以是主动的更新。
2. 版本号域
P a g e | 31
CCIE R/S & Service Provider Exam Certification Guide
版本号域包括生成RIP报文时所使用的版本。RIP是一个开放标准的路由协议,它会随时间而进行更
新,这些更新反映在版本号中。虽然有许多像RIP一样的路由协议出现,但RIP只有两个版本:版本
1和版本2。
3. 0域
嵌入在RIP报文中的多个0域证明了在RFC 1058出现之前存在许多如RIP一样的协议。大多数0域为的
是为了向后兼容旧的如RIP一样的协议,0域说明不支持它们所有的私有特性。
4. AFI域
地址家族标识(Address Family Identifier,AFI )域指出了互联网络地址域中所出现的地址家族。虽然
RFC 1058是由IETF创建的,因此适用于网际协议( IP ),但它的设计提供了和以前版本的兼容性。这
意味着它必须提供大量互联网络地址构成或家族的路由信息的传输。因此,开放式标准RIP需要一
种机制来决定其报文中所携带地址的类型。
5. 互联网络地址域
4字节的互联网络地址域包含一个互联网络地址。这个地址可以是主机、网络,甚至是一个缺省网
关的地址码。这个域内容如何变化的两个例子如下:
在一个单表项请求报文中,这个域包括报文发送者的地址。
在一个多表项应答报文中,这些域将包括报文发送者路由表中存储的IP地址。
6. 度量标准域
RIP报文中的最后一个域是度量标准域,这个域包含报文的度量计数。这个值在经过路由器时被递
增。数量标准有效的范围是在1~1 5之间。度量标准实际上可以递增至1 6,但是这个值和无效路
由对应。因此, 1 6是度量标准域中的错误值,不在有效范围内
RIP request Message Types
RIP请求信息可以向别的路由器请求完整的路由表信息或某些特定的路由条目信息.在前者中,请求信息
包含一个AFI设置为0,地址为0.0.0.0,并且metric为16的路由条目,收到这样的请求的设备以unicast的方式应答,
并把整个路由表发给请求方(遵循水平分割和边界汇总原则)
如果要想知道某些特定路由条目的信息,那么可以把需要知道的上述特定的路由条目的地址附加在请求
信息中发送即可,收到这样的请求信息的设备将一个个的处理这些路由条目并建立应答信息.如果收到这个请
求信息的设备本身就有这些请求中的路由条目,它就把条目的metric的值设置为它自己的metric的值;如果没
有,metric就设置为16
6.6 有类路由协议
当一个 packet 进入运行 RIP 的路由器后,路由器将查询自己的路由表.首先读取网络号(比如 A,B 或 C
类)部分,如果没有匹配条目,packet 被丢弃并发送一个 ICMP 目标不可达信息给源设备,依次类推,直到找
到能够匹配的子网的条目,然后转发这个 packet;找不到的话丢弃这个 packet 并发送一个 ICMP 目标不可
达信息给源设备
MtPilate#sh ip route
172.25.0.0 255.255.255.0 is subnetted, 3 subnets
R 172.25.153.0 [120/1] via 172.25.15.2, 00:00:03, Serial0
R 172.25.131.0 [120/1] via 172.25.15.2, 00:00:03, Serial0
C 172.25.15.0 is directly connected, Serial0
1. 假如有 1 个目标地址为 192.168.35.3 的 packet 进入这个路由器,但是在路由表中没有找到匹配
P a g e | 32
CCIE R/S & Service Provider Exam Certification Guide
的网络 192.168.35.0,所以这个 packet 将被丢弃
2. 如果有的目标地址为 172.25.33.89 的 packet 进入这个路由器,在路由表中找到匹配的主网络号
172.25.0.0/24,进一步找匹配的子网条目,却没有找到 172.21.33.0/24,所以仍然将被丢弃
3. 假如有一个 packet 的目标地址为 172.25.153.220 进入这个路由器,找到匹配的主网络号
172.25.0.0/24,子网条目 172.25.153.0 也能够匹配,所以 packet 将被转发给下一跳 172.25.15.2
RIP 的信息格式里没有包含子网信息,所以在配置 RIP 的时候,应该只采用主网络号和默认的掩码
6.7 配置RIP
6.7.1RIP 路由基本配置
对于如下拓扑结构
Goober(config)#router rip
Goober(config-router)#network 172.17.0.0
Opie(config)#router rip
Opie(config-router)#network 172.17.0.0
Barney(config)#router rip
Barney(config-router)#network 10.0.0.0
Barney(config-router)#network 192.168.83.0
Andy(config)#router rip
Andy(config-router)#network 172.17.0.0
Andy(config-router)#network 192.168.12.0
Andy(config-router)#network 192.168.83.0
在路由器 Andy 使用 debug ip rip 命令看看这些 update 的发送情况,如下:
P a g e | 33
CCIE R/S & Service Provider Exam Certification Guide
Andy#debug ip rip
RIP protocol debugging is on
Andy#
RIP: sending update to 255.255.255.255 via Ethernet0 (192.168.12.65)
subnet 192.168.12.192, metric 1
network 10.0.0.0, metric 2
network 192.168.83.0, metric 1
network 172.17.0.0, metric 1
RIP: sending update to 255.255.255.255 via Ethernet1 (192.168.83.1)
network 192.168.12.0, metric 1
network 172.17.0.0, metric 1
RIP: sending update to 255.255.255.255 via Ethernet2 (192.168.12.195)
subnet 192.168.12.64, metric 1
network 10.0.0.0, metric 2
network 192.168.83.0, metric 1
network 172.17.0.0, metric 1
RIP: sending update to 255.255.255.255 via Serial0 (172.17.1.1)
subnet 172.17.4.0, metric 2
subnet 172.17.2.0, metric 1
network 10.0.0.0, metric 2
network 192.168.83.0, metric 1
network 192.168.12.0, metric 1
RIP: sending update to 255.255.255.255 via Serial1 (172.17.2.1)
subnet 172.17.1.0, metric 1
subnet 172.17.3.0, metric 2
network 10.0.0.0, metric 2
network 192.168.83.0, metric 1
network 192.168.12.0, metric 1
RIP: received update from 172.17.2.1 on Serial0
172.17.3.0 in 1 hops
RIP: received update from 192.168.83.244 on Ethernet1
10.0.3.0 in 1 hops
RIP: received update from 172.17.2.2 on Serial1
172.17.4.0 in 1 hops
可以看到水平分割的规则的体现,从 E1 口宣告给路由器 Barney 的路由条目不包括 10.0.0.0 或
192.168.83.0 还有要注意的是,由于 E0 口和 E2 口都是和网络 192.168.12.0 相连,并且采用的都是/27
P a g e | 34
CCIE R/S & Service Provider Exam Certification Guide
的掩码,而连接其他不同网络的 E1,S0 和 S1 口,子网要经过汇总以后才能被宣告出去.同样的,网络
192.168.83.0 和网络 172.17.0.0 也要经过汇总以后才会被宣告出去
6.7.2 被动接口
假如你新增一台路由器 Floyd,你不希望它和路由器 Andy 之间交换 RIP 信息,就可以用到
passive-interface 命令,这个命令的作用在这里是避免 RIP update 从该接口被发送出去.所以可以
在路由器 Andy 上做如下配置:
Andy(config)#router rip
Andy(config-router)#passive-interface Ethernet0
Andy(config-router)#network 172.17.0.0
Andy(config-router)#network 192.168.12.0
Andy(config-router)#network 192.168.83.0
对于路由器 Floyd 的配置,如下:
Floyd(config)#router rip
Floyd(config-router)#network 192.168.100.0
6.7.3 配置单播更新
在使用 FR 等非广播型链路时需要使用 Rip 的单播更新,
例如上图在 andy 和 Goober 建立单播更新
Andy(config)#router rip
Andy(config-router)#passive-interface s0
Andy(config-router)#neighbor 172.17.1.2
Andy(config-router)#network 172.17.0.0
Goober(config)#router rip
Goober (config-router)#passive-interface s0
Goober (config-router)#neighbor 172.17.1.1
P a g e | 35
CCIE R/S & Service Provider Exam Certification Guide
6.7.4 修改 RIP 的 Metric 值
offset-list {access-list-number | name} {in| out} offset [type number]
通过如上命令可以手工修改 RIP 协议的 Metric 值,
in|out 分别定义了入站和出站方向 offset 即偏移量
6.8 RIP路由协议排错
如果一台高速路由器向低速路由器发送RIP信息量过大,这样有可能造成低速路由器处理不及,造成
路由条目丢失,可以使用如下命令来定义一个发送 update的时间延迟(默认为0ms,可以设置为8到
50ms,output-delay {delay}
6.9 RIP版本2
RIPv2 和 RIPv1(RIP)相比,增加的特性有:
1.路由条目里包含了子网掩码的信息
2.路由条目包含了下一跳的地址信息
3.路由 update 包的验证
4.外部路由标签(tag)
5.通过 multicast 的方式发送 update 包 组播地址 224.0.0.9
6.RIPv2 是一种基于无类(classless)的路由协议
7.支持认证功能
6.9.1 RIPv2 基本配置
Cisco路由器默认只发送RIPv1信息,但是可以同时接收RIPv1和RIPv2的信息,如果你想只发送和接收
RIPv2信息,使用version 2命令,如下:
RTA(config)#router rip
RTA(config-router)#version 2
RTA(config-router)#network 172.16.0.0
同理,如果你想只发送和RIPv1信息,如下:
RTA(config)#router rip
RTA(config-router)#version 1
RTA(config-router)#network 172.16.0.0
如果要恢复成原来的状态,在路由配置模式下使用no version即可
6.9.2 RIPv2 自动汇总
RIP v1在网络边界自动汇总,且不能关闭
RIP v2在网络边界自动汇总,但可以关闭,路由进程中用no auto-summary
6.9.3 RIPv2 消息收发模式
可以在接口上定义 RIP 消息版本
P a g e | 36
CCIE R/S & Service Provider Exam Certification Guide
interface Ethernet0
ip address 192.168.50.129 255.255.255.192
ip rip send version 1
ip rip receive version 1
!
interface Ethernet1
ip address 172.25.150.193 255.255.255.240
ip rip send version 1 2
6.9.4 RIPv2 的水平分割模式
默认在 FR 环境中,RIP 的水平分割时自动关闭的
关闭水平分割,可以在接口模式下使用 no ip split-horizon
6.9.5 RIPv2 认证模式
(config)#key chain kaka (指定一个钥匙链名字)
(config-keychain)#key 1 (定义一把钥匙)
(config-keychain-key)#key-string mike (定义该钥匙的口令)
(config)#int s0 (进入需要认证的接口)
(config-if)#ip rip authentication key-chain kaka (使用钥匙链)
(config-if)#ip rip authentication mode md5 (使用MD5的认证,该命令无则用明文)
钥匙链的名字只有本地意义
如果key不匹配,在debug ip rip events可以看到
*Mar 1 03:26:46.016: RIP: ignored v2 packet from 1.1.1.2 (invalid authentication)
6.9.6 Key-chain 配置
钥匙管理 -- 从一个钥匙到另一个钥匙的迁移(钥匙号从低到高检查)
key chain kaka
key 1
key-string mike
accept-lifetime 16:30:00 Nov 28 2004 duration 43200 (持续43200秒)
send-lifetime 16:30:00 Nov 28 2004 duration 43200
key 2
key-string mmike
accept-lifetime 04:00:00 Nov 29 2004 13:00:00 Apr 15 2005(到期时间)
send-lifetime 04:00:00 Nov 29 2004 13:00:00 Apr 15 2005
key 3
key-string mmmike
accept-lifetime 12:30:00 Apr 15 2005 infinite (永远)
send-lifetime 12:30:00 Apr 15 2005 infinite
系统允许 30min 的时间重叠来在不同的系统始终之间校正
P a g e | 37
CCIE R/S & Service Provider Exam Certification Guide
Chapter 7
EIGRP路由协议
7.1 EIGRP路由协议简介
EIGRP 是 Cisco 的私有路由协议,它综合了距离矢量和链路状态 2 者的优点,它的特点包括:
1.快速收敛:链路状态包(Link-State Packet,LSP)的转发是不依靠路由计算的,所以大型网络可以较为
快速的进行收敛.它只宣告链路和链路状态,而不宣告路由,所以即使链路发生了变化,不会引起该链路的
路由被宣告.但是链路状态路由协议使用的是 Dijkstra 算法,该算法比较复杂,并且较占 CPU 和内存资源和
其他路由协议单独计算路由相比,链路状态路由协议采用种扩散计算(diffusingcomputations ),通过多个
路由器并行的记性路由计算,这样就可以在无环路产生的情况下快速的收敛
2.减少带宽占用:EIGRP 不作周期性的更新,它只在路由的路径和度发生变化以后做部分更新.当路
径信息改变以后,DUAL 只发送那条路由信息改变了的更新,而不是发送整个路由表.和更新传输到一个区
域内的所有路由器上的链路状态路由协议相比,DUAL 只发送更新给需要该更新信息的路由器。
在 WAN 低速链路上,EIGRP 可能会占用大量带宽,默认只占用链路带宽 50%,之后发布的 IOS 允许使
用命令 ip bandwidth-percent eigrp 来修改这一默认值
3.支持多种网络层协议:EIGRP 通过使用 protocol-dependentmodules(PDMs),可以支持 ApplleTalk,IP
和 NovellNetware 等协议
4.无缝连接数据链路层协议和拓扑结构:EIGRP 不要求对 OSI 参考模型的层 2 协议做特别是配置.不
像 OSPF,OSPF 对不同的层 2 协议要做不同配置,比如以太网和帧中继总之,EIGRP 能够有效的工作在 LAN
和 WAN 中,而且 EIGRP 保证网络不会产生环路(loop-free);而且配置起来很简单;支持 VLSM;它使用多播和
单播,不使用广播,这样做节约了带宽;它使用和 IGRP 一样的度的算法,但是是 32 位长的;它可以做非等价
的路径的负载平衡
5.安全性:EIGRP 可以在路由更新中使用 MD5 的方式进行加密验证
7.1.1 EIGRP 的 4 个组件
1Protocol-Dependent Module(PDM)
2. 可 靠 传 输 协 议 (Reliable Transport
Protocol,RTP)
3.邻居的发现/恢复
4. 扩 散 更 新 算 法 (Diffusing Update
Algorithm,DUAL)
7.2 EIGRP路由协议的数据库
运行了 EIGRP 的路由器维持 3 张表:neighbortable,topologytable 和 routingtable.其中 neighbortable
保存了和路由器建立了邻居关系的,直接相连的路由器;topologytable 包含路由器学习到的到达目的地
的所有路由条目,其过程如下:
P a g e | 38
CCIE R/S & Service Provider Exam Certification Guide
1.neighbortable 中的每个邻居都转发 1 份 IP 路由表的拷贝给它们的邻居
2.然后每个邻居把从它们自己的邻居处得来的路由表存储在自己的 EIGRP 拓扑数据库中
3.EIGRP 检查拓扑数据库,然后选择出一条到达目的地的最佳路由
4.EIGRP 从拓扑数据库中选择到达目的地的最佳的 successorroutes,然后把它们放到路由表里.路由
器为每种协议(比如 IP,IPX)各自保持 1 张单独是路由表
7.3 EIGRP-Metric计算方法
EIGRP 选择一条主路由(最佳路由)和一条备份路由放在 topologytable(EIGRP 到目的地支持最多 6 条
链路).它支持几种路由类型:内部,外部(非 EIGRP)和汇总路由.EIGRP 使用混合度
7.3.1 EIGRP Metric 的 5 个标准
1.带宽:10 的 7 次方除以源和目标之间最低的带宽乘以 256
2.延迟(delay):接口的累积延迟乘以 256,单位是微秒
3.可靠性(reliability):根据 keepalive 而定的源和目的之间最不可靠的可靠度的值
4.负载(loading):根据包速率和接口配置带宽而定的源和目的之间最不差的负载的值
5.最大传输单元(MTU):路径中最小的 MTU.MTU 包含在 EIGRP 的路由更新里,但是一般不参与 EIGRP
度的运算
7.3.2 EIGRP Metric 的计算
EIGRP 使用 DUAL 来决定到达目的地的最佳路由(successor).当最佳路由出问题的时候,EIGRP 不使用
holddowntimer 而立即使用备份路由(feasiblesuccessor),这样就使得 EIGRP 可以进行快速收敛
EIGRP 计算度的公式,K 是常量,公式如下:
metric=[K1*bandwidth+(K2*bandwidth)/(256–
load)+K3*delay]*[K5/(reliability+K4)]
默认:K1=1,K2=0,K3=1,K4=0,K5=0
不推荐修改 K 值.K 值通过 EIGRP 的 hello 包运载.如果两个路由器的 K 值不匹配的话它们是不会形
成邻居关系的 Metric weight
Tos K1 K2 K3 K4 K5 来修改 K 值,Tos 默认为 0
7.3.3 EIGRP Metric 和 IGRP 的换算
EIGRP 的 Metric 和 IGRP 的 Metirc 能够很好的进行兼容.IGRP 的 Metric 是以 24 位的格式,而 EIGRP
是 32 位的格式.它们之间的关系是 EIGRP 的 Metric 是 256 倍于 IGRP 的 Metric.也就是说假如 IGRP
的 Metric 为 1000 的话,换算成 EIGRP 为 256000
7.4 RTP-EIGRP的可靠传输协议
RTP 负责 EIGRP packet 的按顺序(可靠)的发送和接收,这个可靠的保障是通过 Cisco 私有的一个算
法,reliable multicast 实现的,使用组播地址 224.0.0.10,每个邻居接收到这个可靠的组播包的时候就会以
一个 unicast 作为确认
按顺序的发送是通过 packet 里的 2 个序列号实现的,每个 packet 都包含发送方分配的 1 个序列号,
发送方每发送 1 个 packet,这个序列号就递增 1.另外,发送方也会把最近从目标路由器接收到的 packet
的序列号放在这个要发送的 packet 里,在某些情况下,RTP 也可以使用无需确认的不可靠的发送,并且使
P a g e | 39
CCIE R/S & Service Provider Exam Certification Guide
用这种不可靠发送的 packet 中不包含序列号
7.4.1 EIGRP Packet
EIGRP 使用多种类型的 packet,这些 packet 通过 IP 头部信息里的协议号 88 来标识:
1. Hello packet:用来发现和恢复邻居,通过组播的方式发送,使用不可靠的发送
2. ACK(acknowledgement) packet:不包含数据(data)的 Hello 包,使用 unicast 的方式,不可靠的发送
3. Update packet:传播路由更新信息,不定期的,通过可靠的方式发送(比如网络链路发生变化).当只
有一台路由器需要路由更新时,update 通过 unicast 的方式发送;当有多个路由器需要路由更新的
时候,通过组播的方式发送
4. Query(查询) & Reply(应答) packet:是 DUAL finite state machine 用来管理扩散计算用的,查询包可
以是组播或 unicast;应答包是通过 unicast 的方式发送,并且方式都是可靠的
5. Request(请求) packet:最初是打算提供给路由服务器(server)使用的,但是从来没实现过
7.4.2 RTP 可靠传输协议
如果 packet 通过可靠的组播方式发送出去,并且没有收到邻居反馈的 ACK 包,那么这个 packet 会再
次以 unicast 的方式发送给那个未响应的邻居,虽然经过 16 次的重传 unicast,仍然没有收到 ACK 包的话,
那么这个邻居就宣告为无效
在从组播切换到 unicast 之前,等待 ACK 包的时间可以由 multicast flow timer(MFT)指定,后续的重新
传 unicast 的发送间隔可以由 RTO(retransmission timeout)指定.每个邻居的 MFT 和 RTO 都可以通过
SRTT(smooth round-trip time)来计算,SRTT 的单位是(毫秒)ms,用来衡量路由器从发送 EIGRP packet 到某个
邻居并接收到这个邻居的 ACK 包所花费的平均时间
7.5 EIGRP的邻居发现/恢复协议
EIGRP 的 Update 包是非周期性发送的,Hello 包在一般的网络中(比如点到点,point-to-point)是每 5 秒
组播 1 次(要随机减去 1 个很小的时间防止同步);在多点(multipoint)X.25,帧中继(Frame Relay,FR)和 ATM
接口(比如 ATM SVC)和 ISDN PRI 接口上,Hello 包的发送间隔是 60 秒.在所有的情况中,Hello 包是不需要确
认的.可以在接口配置模式下修改该接口的 Hello 包默认的发送间隔,命令为 ip hello-interval eigrp
{AS-number}{seconds}
当一个路由器收到从邻居发来的 Hello 包的时候,这个 Hello 包包含了一个 hold time,这个 hold time
告诉这个路由器等待后续 Hello 包的最大时间.如果在超出这个 hold time 之前没有收到后续 Hello 包,那
么这个邻居就会被宣告为不可达,并通知 DUAL 这个邻居已丢失.默认 hold time 是 3 倍于 Hello 包发送间
隔的,
更高链路 -- 默认 Hello 间隔和保持时间是 5s 和 15s
T1 或低于 T1 链路 -- 分别是 60s 和 180s
可以在接口配置模式下修改这个默认的 hold time,
命令为 ip hold-time eigrp. {AS-number}{seconds}
EIGRP 邻居信息都记录在邻居表(neighbor table)中,使用 show ip eigrp neighbors 命令查看 IP EIGRP 的
P a g e | 40
CCIE R/S & Service Provider Exam Certification Guide
邻居,如下:
1. neighboraddress:邻居路由器的地址,如上图可以看出p2r2有2个邻居
2. queue(QCnt):等待发送的排队排列的包.如果这个值持续高于0的话,说明发生了拥塞问题
3. SmoothRoundTripTimer(SRTT):从邻居处发送和接收包的平均回程时间.单位是毫秒.这个通常用
来决定
4. RTO(RetransmitTimeOut):单位是毫秒.路由器在重新传输包之前等待ACK的时间
5. holdtime:定义了等待没有从邻居那里接收到任何包的最大时间.当接受到新的包以
后,holdtimer复位
6. Interface:本地到邻居的接口
7.6 EIGRP的弥散更新算法
7.6.1 弥散更新算法简介
为了能够让 DUAL 正确的操作,低层协议必须满足以下几个条件:
1. 一个节点要在有限的时间里检测到新邻居的存在或和一个邻居的连接的丢失
2. 在链路上传输的所有信息必须在有限的时间里按正确的顺序收到
3. 所有的消息,包括链路 cost 的更改,链路故障,和新邻居的发现,都应该是在有限时间里,一
个一个的依次处理
Cisco 的 EIGRP 使用邻居的发现/恢复和 RTP 来确保上述前提条件
7.6.2 adjacency(邻接):
在刚启动的时候,路由器使用 Hello 包来发现邻居并标识自己用于邻居的识别.当邻居被发现
以后,EIGRP 会在它们之间形成一种邻接关系.邻接是指在这 2 个邻居之间形成一条交换路由信息的
虚链路(virtual link).当邻接关系形成以后,它们之间就可以相互发送路由 update,这些 update 包括路
由器它所知道的所有的路及其 metric.对于每个路由,路由器都会基于它邻居宣告的距离(distance)
和到达那个邻居的链路的 cost 来计算出一个距离
7.6.3 Feasible Distance(FD,可行距离):
到达每个目标网络的最小的 metric 将作为那个目标网络的 FD.比如,路由器可能有 3 条到达网
络 172.16.5.0 的路由,metric 分别为 380672,12381440 和 660868,那么 380672 就成了 FD
7.6.4 Feasible Condition(FC,可行条件):
邻居宣告到达目标网络的的距离小于本地路由器到达目标网络的 FD
AD < FD => FC=ture
P a g e | 41
CCIE R/S & Service Provider Exam Certification Guide
7.6.5 Feasible Successor(FS,可行后继路由器):
如果一个邻居宣告到达目标网络的距离满足 FC,那么这个邻居就成为 FS.比如,路由器到达目
标网络 172.16.5.0 的 FD 为 380672,而他邻居所宣告到达目标网络的距离为 355072,这个邻居路由器
满足 FC,它就成为 FS;如果邻居路由器宣告到达目标网络的距离为 380928,即不满足 FC,那么这个邻
居路由器就不能成为 FS
FS 和 FC 是避免环路的核心技术,FS 也是 downstream router(下游路由器),因为从 FS 到达目标
网络的距离比本地路由器到达目标网络的 FD 要小
存在一个或多个 FS 的目标网络被记录在拓扑表(Topological Table)中,拓扑表包括以下内容:
1.目标网络的 FD
2.所有的 FD
3.每一个 FS 所宣告的到达目标网络的距离
4.本地路由器计算出的,经过每个 FS 到达目标网络的距离,即基于 FS 所宣告到达目标网络的距离
和本地路由器到达那个 FS 的链路的 cost
5.发现 FS 的网络相连的接口
7.6.6 Successor(后继路由器):
对于列举在拓扑表里的每个目标网络,将选取 metric 最小的的路由放置在路由表里,宣告这条路由
的邻居就成为 Successor,或者是下一跳路由器
metric weights 0 0 0 1 0 0 命令来定义只使用延迟(DLY)来参与 metric 的计算,DLY 已在图上做出
标记.使用 show ip eigrp tology 查看路由器 Langley 的拓扑表,如下:
Langley#show ip eigrp topology
IP-EIGRP Topology Table for process 1
P a g e | 42
CCIE R/S & Service Provider Exam Certification Guide
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
r - Reply status
P 10.1.3.0/24, 1 successors, FD is 512
via Connected, Serial0
P 10.1.2.0/24, 1 successors, FD is 768
via 10.1.3.1 (768/256), Serial0
via 10.1.5.2 (1280/256), Serial1
P 10.1.1.0/24, 1 successors, FD is 768
via 10.1.3.1 (768/256), Serial0
via 10.1.5.2 (1536/512), Serial1
P 10.1.7.0/24, 1 successors, FD is 256
via Connected, Ethernet0
P 10.1.6.0/24, 1 successors, FD is 1024
via 10.1.3.1 (1024/512), Serial0
via 10.1.5.2 (1792/768), Serial1
P 10.1.5.0/24, 1 successors, FD is 1024
via Connected, Serial1
P 10.1.4.0/24, 1 successors, FD is 5632
via 10.1.3.1 (5632/5120), Serial0
via 10.1.5.2 (6400/5376), Serial1
路由器 Langley 到达目标网络 10.1.6.0 的 FS 分别为路由器 Wright(10.1.3.1)和路 由器
Chanute(10.1.5.2) (1024/512) 中 的 1024 为 本 地 路 由 器 Langley 到 达 目 标 网 络 的 metric, 即
256*(2+1+1)=1024;512 为邻居路由器(Wright)宣告的 metric,即 256*(1+1)=512.通过路由器 Chanute
到达目标网络的 metric 为 256*(4+1+1+1)=1792;路由器 Chanute 宣告的 metric 为 256*(1+1+1)=768.
所以从路由器 Langley 到达目标网络 10.1.6.0 最小的 metric 为 1024,这个 metric 就成为 FD.并且路
由器 Langley 的每条路由都只有 1 个 Successor,
查看下路由器 Langley 的路由表,如下:
Langley#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate default
U - per-user static route
Gateway of last resort is not set
10.0.0.0/8 is subnetted, 7 subnets
C
10.1.3.0 is directly connected, Serial0
D
10.1.2.0 [90/768] via 10.1.3.1, 00:32:06, Serial0
D
10.1.1.0 [90/768] via 10.1.3.1, 00:32:07, Serial0
P a g e | 43
CCIE R/S & Service Provider Exam Certification Guide
C
10.1.7.0 is directly connected, Ethernet0
D
10.1.6.0 [90/1024] via 10.1.3.1, 00:32:07, Serial0
C
10.1.5.0 is directly connected, Serial1
D
10.1.4.0 [90/5632] via 10.1.3.1, 00:32:07, Serial0
D 代表 EIGRP,并且管理距离 AD 为 90
Cayley#show ip eigrp topology
IP-EIGRP Topology Table for process 1
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
r - Reply status
P 10.1.3.0/24, 1 successors, FD is 768
via 10.1.1.1 (768/512), Ethernet0
P 10.1.2.0/24, 1 successors, FD is 512
via 10.1.1.1 (512/256), Ethernet0
P 10.1.1.0/24, 1 successors, FD is 256
via Connected, Ethernet0
P 10.1.7.0/24, 1 successors, FD is 1024
via 10.1.1.1 (1024/768), Ethernet0
P 10.1.6.0/24, 1 successors, FD is 256
via Connected, Serial0
P 10.1.5.0/24, 1 successors, FD is 1536
via 10.1.1.1 (1536/1280), Ethernet0
P 10.1.4.0/24, 2 successors, FD is 5376
via 10.1.6.1 (5376/5120), Serial0
via 10.1.1.1 (5376/5120), Ethernet0
路由器 Cayley 到达网络 10.1.4.0 有 2 个 Successor,因为 2 条路径的 FD 都为 256*(20+1)=5376.
因此路由器 Cayley 会在这 2 条路径上做等价的负载均衡.验证如下:
Cayley#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate default
U - per-user static route, o - ODR
Gateway of last resort is not set
10.0.0.0/24 is subnetted, 7 subnets
P a g e | 44
D
10.1.3.0 [90/768] via 10.1.1.1, 00:01:19, Ethernet0
D
10.1.2.0 [90/512] via 10.1.1.1, 00:01:19, Ethernet0
C
10.1.1.0 is directly connected, Ethernet0
D
10.1.7.0 [90/1024] via 10.1.1.1, 00:01:19, Ethernet0
C
10.1.6.0 is directly connected, Serial0
CCIE R/S & Service Provider Exam Certification Guide
D
10.1.5.0 [90/1536] via 10.1.1.1, 00:01:19, Ethernet0
D
10.1.4.0 [90/5376] via 10.1.1.1, 00:01:19, Ethernet0
[90/5376] via 10.1.6.1, 00:01:19, Serial0
如果 FS 宣告的路由的 metric 比当前 Successor 的 metric 小的话,那么这个 FS 就将成为新的 Successor,
如下几种情况可能会引起这个现象的发生:
1. 发现一条新的路由
2. 现有 Successor 的 metric 增加,超过了 FS 的 metric,或现有 FS 的 metric 减小到小于现有
Successor 的 metric.FS 减少了扩散计算的次数,提高了网络性能,同时也降低了收敛的次数.
如果到达 Successor 的链路出故障,或者链路的 cost 增加,并超过了 FD,那么路由器会先在它
的拓扑表中查找 FS,如果有 FS 的话,这个 FS 将成为新的 Successor;如果找不到可用的 FS,它
才重新进行扩散计算
7.7 DUAL的有限状态机
7.7.1 扩散事件
当 EIGRP 路由器不进行扩散计算的时候,所有的路由都处于被动(passive)状态.当发生输入事件
(input event)的时候,路由器会对路由的 FS 列表进行重新评估,输入事件的源:
1.直连链路的 cost 发生变化
2.直连链路状态的变化(比如 up 或 down)
3.收到更新包
4.收到查询包
5.收到应答包
路由器重新评估的第一步是在本地路由器上执行本地计算(local computation),可能的结果如下:
1.如果 FS 的 metric 最小,并且和现有 Successor 不同的话,那这个 FS 就成为新的 Successor
2.如果新的距离(distance)小于 FD,FD 将被更新
3.如果新的距离和已经存在的距离不同,将向所有邻居发送更新包
当路由器执行本地计算的时候,路由仍然处于被动状态,如果本地路由器在它的拓扑表里发现
可用的 FS,更新包将发送给它所有的邻居,但是路由状态不会改变;如果没有发现可用的 FS,路由器
将进行扩散计算并且路由会进入活跃(active)状态.在路由器扩散计算完成和路由状态返回为被动
状态之间,路由器:
1.不能更改路由的 Successor
2.不能更改正在宣告的路由的距离
3.不能更改路由的 FD
4.不能开始进行路由的另一个扩散计算
查询包包含了本地路由器计算出来的到达目标地址的新的距离,当每个邻居收到这个查询包
的时候,就开始进行自己的本地计算:
1. 如果邻居有到达目标地址的一个或多个 FS,它就反馈应答包给产生这个查询包的路由
器.这个应答包包含了这个邻居所计算出的它到达目标地址的最小的距离
2. 如果邻居没有 FS,它就把路由更改为活跃状态并记性扩散计算
P a g e | 45
CCIE R/S & Service Provider Exam Certification Guide
7.7.2 扩散计算查询
扩散计算在查询的时候,范围是扩大,在应答的时候,范围是缩小,对于每一台接收到查询包的
邻居路由器,本地路由器会设置一个答复状态标记(reply status flag,r)来跟踪这些没有未处理的查询
包.当本地路由器接收到所有发出去的查询包的应答的时候,扩散计算就完成了
7
.
7
.
3
“
卡”
在活动状态(Stuck-in-Active)
在某些情况中,路由器并不是能够收到所有发出去的查询包的应答.比如有可能发生在拥有许
多低速或低质量链路的大型网络中,在扩散计算的开始,active timer 设置为 3 分钟(早期 IOS 版本
设置为 1 分钟),如果在这个 active timer 超时之前仍然没有收到发出去的查询包的所反馈的所有的
应答包的时候,那么这些没有收到应答包的路由就被标记为 stuck-in-active(SIA),这些没有反馈应答
的邻居将从邻居表中被删除,而且扩散计算会认为是这个邻居反馈了一个为无穷大的 metric.
Active timer 的修改命令为 timers active-time
解决 SIA 状态的办法是减小查询范围,即使用 stub 区域,后文会谈到如何设置
在扩散计算完成后,最初发送查询包的路由器会把 FD 设置为无穷大,这样确保了任何反馈应
答包的路由器都满足 FC 并且能够成为 FS,对于这些应答包,metric 的计算是基于应答包中宣告的距
离加上到达这个反馈应答包的邻居路由器的链路 cost.metric 最小的成为 Successor,并且 FD 就设置
为这个最低的 metric.任何不满足 FC 的 FS 将从拓扑表中被删除.注意在收到所有的应答之前是不会
选择 Successor 的。
7.7.4 DUAL 的有限状态机
输入事件能够引起路由状态的变化,DUAL 定义了多种活跃状态.查询源标记(query origin flag,O)用
来标记当前状态.如下是 DUAL finite machine 的输入事件(IE):
P a g e | 46
CCIE R/S & Service Provider Exam Certification Guide
IE1:满足 FC 或目标不可达
IE2:从 Successor 收到了应答包;不满足 FC
IE3:除了来自 Successor 的查询的其他的输入事件;不满足 FC
IE4:除了最近的应答或来自 Successor 的查询的其他的输入事件
IE5:除了最近的应答或来自 Successor 的查询,或增加到达目标地址的距离的其他的事件
IE6:除了最近的应答的输入事件
IE7:除了最近的应答,或增加到达目标地址的距离的其他的输入事件
IE8:到达目标地址是距离增加
IE9:接收到了最近的应答包;当前 FD 不满足 FC
IE10:从 Successor 收到了查询包
IE11:收到了最近的应答包;当前 FD 满足 FC
IE12:收到了最近的应答包;当前 FD 设置为无穷大
7.7.5 EIGRP 报文的活动
EIGRP packet 的活动可以通过命令 debug eigrp packets 来跟踪,默认情况下会显示所有的 EIGRP
packet,由于 Hello 包和 ACK 包的数量可能过大导致不便于跟踪,所以可以使用关键字来指定跟踪的
EIGRP packet 类型:debug eigrp packet query reply update,如下:
Carley#debug eigrp packet update query reply
EIGRP Packets debugging is on
(UPDATE, QUERY, REPLY)
P a g e | 47
CCIE R/S & Service Provider Exam Certification Guide
Carley#
%LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet0, change state to down
EIGRP: Enqueueing QUERY on Serial0 iidbQ un/rely 0/1 serno 45-49
EIGRP: Enqueueing QUERY on Serial0 nbr 10.1.6.1 iidbQ un/rely 0/0 peerQ un/rely 0/0 serno 45-49
EIGRP: Sending Query on Serial0 nbr 10.1.6.1
AS 1, Flags 0x0, Seq 45/64 idbQ 0/0 iidbQ un/rely 0/0 peerQ un/rely 0/1 serno 45-49
Flags:
标记,0x0 表示标记位没有设置;0x1 表示设置了初始化(initialization)位;0x2 表示设置了条件接收
(conditional receive)位.这个标记用在私有的 Reliable Multicasting 算法中
Seq:
序列号
idbQ:
表示在接口上的输入队列包和输出队列包的数目
iidbQ:
接口上等待传输的不可靠的组播包和等待传输的可靠的组播包的数目
peerQ:
接口上等待传输的不可靠的 unicast packet 和等待传输的可靠的 unicast packet 的数目
serno:
路由的双重连接的序列号的指针,用在内部(或私有),用于在一个快速变化的拓扑中跟踪正确的
路由信息
7.7.6 DUAL 的核心思想
扩散计算的核心思想如下:
1.任何时间发生了 IE 的话,将执行本地计算
2.如果在拓扑表里发现了多个 FS,metric 最低的作为新的 Successor
3.如果没有找到可用的 FS,路由进入活跃状态,并向邻居发出查询包,寻找新的 FS
4.当所有发出去的查询包都被应答包响应,或者在 active timer 超出之前,会一直处于活跃状态
5.如果扩散计算结果没有找到新的可用 FS 的话,那么将宣告目标不可达
7.8 EIGRP 报文格式
EIGRP 包的 IP 头部指定了协议号为 88,EIGRP 包的最大长度为 1500 字节,(IP 的 MTU)
P a g e | 48
CCIE R/S & Service Provider Exam Certification Guide
7.8.1 The EIGRP Packet Header
下图是 EIGRP 包的头部格式:
版本号(Version):定义产生 EIGRP 进程的版本,目前有 2 种软件版本可用,不过建议使用较后发布
的版本
操作码(Opcode):定义 EIGRP 包的类型,如下:
1:Update
3:Query
4:Reply
5:Hello
6:IPX SAP
校验和(Checksum):标准的 IP 校验和,基于除了 IP 头部的整个 EIGRP 包计算的
标记(Flags):目前有 2 个标记,最右边的位是初始化(Init)位,即 0x00000001,表示路由条目是新的
邻居关系的开始;
接收(Conditional Received)位,用于私有的可靠组播算法中,设置为 0x00000002
序列号(Sequence):用于 RTP 中,32 位长
确认(ACK):32 位长,从邻居接收到的.ACK 字段非 0 的 Hello 包被当作是 ACK 包而不是 Hello 包.
另,如果 packet 本身 unicast,那 ACK 字段只能为非 0 因为 ACK 包从来都不是组播
自治系统号(AS Number):EIGRP 域的标识
EIGRP 头部之后的就是 TLV(Type/Length/Value)字段,如下是常见的 TLV 字段类型:
一般 TLV 类型:
0x0001:EIGRP 参数
0x0003:序列号
0x0004:软件版本,指老 IOS 版本(软件版本 0)还是较新的 IOS 版本(软件版本 1)IOS10.3(11),11.0(8)
0x0005:下一组播序列号
P a g e | 49
CCIE R/S & Service Provider Exam Certification Guide
IP 特有 TLV 类型:
0x0102:IP 内部路由
0x0103:IP 外部路由
ppleTalk 特有 TLV 类型:
0x0202:AppleTalk 内部路由
0x0203:AppleTalk 外部路由
0x0204:AppleTalk 线缆(Cable)配置
IPX 特有 TLV 类型:
0x0302:IPX 内部路由
0x0303:IPX 外部路由
7.8.2 General TLV Fields
一般 TLV 运载了 EIGRP 管理信息并且无需指定可路由协议(routed protocol),如下图:
7.8.3 IP-Specific TLV Fileds
每个内部路由和外部路由的 TLV 都包含一个路由条目,每个 Update 包,查询包,应答包至少包含一
个路由 TLV,路由 TLV 包括了路由的 metric.内部路由 TLV 的格式如下图:
延迟(Delay):
单位是 10 微秒的延迟总和,IGRP 中这个字段为 24 位,EIGRP 中为 32 位.如果这里为
0xFFFFFFFF,则表示不可达
带宽(Bandwidth):
P a g e | 50
CCIE R/S & Service Provider Exam Certification Guide
为 256*BW(IGRP),其中 BW(IGRP)取最小值,或者用 2560000000 除以链路带宽最小的那个所
得的值
MTU:到目标地址 MTU 最小的,不参与 metric 的计算
跳数(Hop Count):
0x01 到 0xFF 之间的一个数,表示到达目标地址所经的跳数
可靠性(Reliability):
每 5 分钟计算 1 次的,是 0x01 到 0xFF 之间的一个数,表示沿途经过出口接口的错误率的和
负载(Load):
每 5 分钟计算 1 次的,是 0x01 到 0xFF 之间的一个数,表示沿途经过出口接口的负载的和
保留(Reserved)字段:设置为 0x0000
目标(Destination)地址:
长度可变,类似 IGRP 信息格式中的目标地址字段,不足用 0 填充,直到达到 4 个 8 位长
外部路由 TLV 的格式如下图:
Arbitrary Tag:Route Map tag
外部协议 ID(External Protocol ID):标识外部路由协议,如下:
0x01:IGRP
0x02:EIGRP
0x03:静态路由
0x04:RIP
0x05:Hello
0x06:OSPF
0x07:IS-IS
0x08:EGP
P a g e | 51
CCIE R/S & Service Provider Exam Certification Guide
0x09:BGP
0x0A:IDRP
0x0B:直连
7.9 配置EIGRP
7.9.1 基本 EIGRP 配置
EIGRP 配置的 2 个步骤:
1.使用 router eigrp <process-id>启动 EIGRP
2.使用 network 命令指定参与 EIGRP 进程的主网络号
process-id 范围是 1 到 65535;也可以使用 InterNIC 分配的 AS 号.例子如下图:
配置分别如下:
Earhart(config)#router eigrp 15
Earhart(config-router)#network 172.20.0.0
Lindbergh(config)#router eigrp 15
Lindbergh(config-router)#network 172.20.0.0
Lindbergh(config-router)#network 192.168.16.0
Cochran(config)#router eigrp 15
Cochran(config-router)#network 172.20.0.0
Cochran(config-router)#network 192.168.17.0
7.9.2 EIGRP 和 IGRP 的重分布
如果一个 IGRP 和一个 EIGRP 进程拥有相同 process-id,那么它们将自动进行路由的重分布
P a g e | 52
CCIE R/S & Service Provider Exam Certification Guide
配置如下:
Earhart(config)#router igrp 15
Earhart(config-router)#network 172.20.0.0
Earhart(config-router)#passive-interface s0
Earhart(config-router)#passive-interface s1
Earhart(config)#router eigrp 15
Earhart(config-router)#network 172.20.0.0
Earhart(config-router)#passive-interface e0
Curtiss(config)#router igrp 15
Curtiss(config-router)#network 172.20.0.0
Curtiss(config-router)#network 172.25.0.0
配置完成以后, Curtiss 的路由表如下:
Curtiss#sh ip route
I 192.168.16.0/24 [100/8676] via 172.20.10.1 00:00:06, Ethernet0
I 192.168.17.0/24 [100/8676] via 172.20.10.1 00:00:06, Ethernet0
172.25.0.0/28 is subnetted, 1 subnets
C 172.25.25.0/24 is directly connected, Ethernet1
172.20.0.0/24 is subnetted, 1 subnets
C 172.20.10.0/24 is directly connected, Ethernet0
Curtiss#
可以看出路由器 Curtiss 没有学到到达网络 172.20.15.0/30 和 172.20.15.4/30 的路由,因为 IGRP
是基于类的路由协议,它不接收经过变长子网划分的路由.
7.9.3 EIGRP 手工汇总
可以在路由器 Earhart 上使用命令 ip summary-address eigrp AS-number address mask 创建一条
汇总路由
Earhart(config)#router igrp 15
Earhart(config-router)#network 172.20.0.0
Earhart(config-router)#passive-interface s0
Earhart(config-router)#passive-interface s1
Earhart(config)#router eigrp 15
Earhart(config-router)#network 172.20.0.0
Earhart(config-router)#passive-interface e0
Earhart(config)#int e0
Earhart(config-if)#ip addr 172.20.10.1 255.255.255.0
Earhart(config-if)#ip summary-address eigrp 15 172.20.15.0 255.255.255.0
再次查看路由器 Curtiss 的路由表:
Curtiss#sh ip route
I 192.168.16.0/24 [100/8676] via 172.20.10.1 00:00:06, Ethernet0
I 192.168.17.0/24 [100/8676] via 172.20.10.1 00:00:06, Ethernet0
P a g e | 53
CCIE R/S & Service Provider Exam Certification Guide
172.25.0.0/28 is subnetted, 1 subnets
C 172.25.25.0/24 is directly connected, Ethernet1
172.20.0.0/24 is subnetted, 1 subnets
C 172.20.10.0/24 is directly connected, Ethernet0
I 172.20.15.0/24 [100/8576] via 172.20.10.1 00:00:18, Ethernet0
Curtiss#
7.9.4 EIGRP 关闭自动汇总
EIGRP 一样会进行自动汇总,可以手动的关闭它.在路由进程中使用 no auto-summary
7.9.5 EIGRP 认证
EIGRP packet 的认证是在 Cisco IOS Release 11.3 及其之后才出现的,只支持 MD5 加密方式.:
1.定义钥匙链(key chain)的名字
2.定义钥匙链的钥匙(key)(1 个或 1 组)
3.在接口配置模式启用认证,并定义要使用的钥匙链
4.配置管理钥匙(可选)
现要在路由器 Cochran 到 Earhart 之间启用认证,如下图:
Cochran(config)#key chain kaka
Cochran(config-keychain)#key 1
Cochran(config-keychain)#key-string cisco
Cochran(config-keychain)#int s0
Cochran(config)#int s0
Cochran(config-if)#ip addr 172.20.15.6 255.255.255.252
Cochran(config-if)#ip authentication key-chain eigrp 15 kaka
Cochran(config-if)#ip authentication mode eigrp 15 md5
EIGRP 的认证的配置方法和 RIPv2 的认证配置方法类似
如上配置中,如果不使用 ip authentication mode eigrp 15 md5
无论 key-chain 是否启用,认证始终处于关闭状态。所以 EIGRP 仅支持 MD5 认证方式
7.9.6 EIGRP stub 区域
EIGRP 可以定义 stub 区域,在路由进程模式下输入
eigrp stub {receive-only|connected|static|summary}
Receive-only:
Connected:
禁止路由器同 EIGRP-AS 内任何路由器共享其路由,禁止发送任何类型路由
允许 EIGRP-stub 区域发送直连路由,默认打开
Static:
允许 EIGRP-stub 区域发送静态路由
Summary:
允许 EIGRP-stub 区域发送汇总路由,默认打开
Stub 降低了中央路由器查询路由时的查询范围,从而减轻了 SIA 产生的几率
P a g e | 54
CCIE R/S & Service Provider Exam Certification Guide
7.9.7 EIGRP 负载均衡
路由器配置 maximum-path 1~6,最多 6 条,默认 4 条。
然后 variance 4 设置非等价均衡负载倍数
7.9.8 EIGRP 关闭水平分割
EIGRP 在帧中继环境中,默认水平分割是关闭的,但实质是打开的,这是一个 IOS 的 bug
需要在接口模式下使用 no ip split-horizon eigrp 100 来关闭
7.10 CCIE_Lab中的EIGRP
7.10.1 修改接口的 bandwidth 和 delay
在接口上使用 bandwidth [kbit/s] 可以修改接口的带宽
同样可以使用 delay [microseconds]
常用的 IGRP 和 EIGRP 度量值如下
Medium
Bandwidth
100-Mbps ATM
100,000 kbps
Gigabit Ethernet
100,000 kbps
Delay
100 microseconds
100 microseconds
Fast Ethernet
100,000 kbps
100 microseconds
FDDI
100,000 kbps
100 microseconds
HSSI
45,045 kbps
20,000 microseconds
16-Mbps Token Ring
16,000 kbps
630 microseconds
10-Mbps Ethernet
10,000 kbps
1000 microseconds
T1
1544 kbps
DS-0
64 kbps
20,000 microseconds
56-kbps media
56 kbps
20,000 microseconds
20,000 microseconds
例如将 E0 改为 T1
Bandwidth 1544
Delay 2000
//注意单位:应该为 2000 而不是 20000
7.10.2 Show Command
r2#sh ip eigrp topology
IP-EIGRP Topology Table for AS(100)/ID(2.2.2.2)
Codes: P - Passive, A - Active, U - Update, Q - Query, R - Reply,
r - reply Status, s - sia Status
P 1.0.0.0/8, 1 successors, FD is 2169856
via Summary (2169856/0), Null0
P 1.1.1.0/24, 1 successors, FD is 2169856
via Connected, Serial0.21
P a g e | 55
CCIE R/S & Service Provider Exam Certification Guide
P 2.0.0.0/8, 1 successors, FD is 2169856
via Summary (2169856/0), Null0
P 2.2.2.0/24, 1 successors, FD is 2169856
via Connected, Ethernet0
P 192.168.1.0/24, 2 successors, FD is 409600
via 2.2.2.1 (2297856/128256), Ethernet0
via 1.1.1.1 (2297856/128256), Serial0.21
r2#sh ip eigrp neighbor
IP-EIGRP neighbors for process 100
H
Address
Interface
Hold Uptime
SRTT
(sec)
1
1.1.1.1
Se0.21
0
2.2.2.1
Et0
288 0 26
12 00:30:54
20
200 0 27
State is Passive, Query origin flag is 1, 2 Successor(s), FD is 409600
Routing Descriptor Blocks:
2.2.2.1 (Ethernet0), from 2.2.2.1, Send flag is 0x0
Composite metric is (2297856/128256), Route is Internal
Vector metric:
Minimum bandwidth is 1544 Kbit
Total delay is 25000 microseconds
Reliability is 255/255
Load is 1/255
Minimum MTU is 1500
Hop count is 1
1.1.1.1 (Serial0.21), from 1.1.1.1, Send flag is 0x0
Composite metric is (2297856/128256), Route is Internal
Total delay is 25000 microseconds
Reliability is 255/255
Load is 1/255
Minimum MTU is 1500
Hop count is 1
P a g e | 56
Cnt Num
48
IP-EIGRP (AS 100): Topology entry for 192.168.1.0/24
Minimum bandwidth is 1544 Kbit
(ms)
126 00:30:21
r2#sh ip eigrp topology 100 192.168.1.0 255.255.255.0
Vector metric:
RTO Q Seq Type
CCIE R/S & Service Provider Exam Certification Guide
7.10.3 FR 环境
在帧中继环境中,除了 MP-P 节点需要关闭水平分割外,还必须使用 bandwidth 命令设置
正确的带宽,从而防止拥塞,如下图:
hostname canada_1
!
interface Serial0
no ip address
encapsulation frame-relay
no ip mroute-cache
!
interface Serial0.1 point-to-point
ip address 172.16.1.1 255.255.255.0
bandwidth 64
// EIGRP bandwidth set
frame-relay interface-dlci 110
!
interface Serial0.2 point-to-point
ip address 172.16.2.1 255.255.255.0
bandwidth 64 EIGRP bandwidth set
frame-relay interface-dlci 130
!
interface TokenRing0
ip address 172.16.3.1 255.255.255.0
ring-speed 16
!
router eigrp 2001
// EIGRP routing enabled
P a g e | 57
CCIE R/S & Service Provider Exam Certification Guide
network 172.16.0.0
//Networks running EIGRP
7.10.4 记录 EIGRP 邻居变化
Router(config-router)#eigrp log-neighbor-changes
7.10.5 被动接口
EIGRP 被动接口在 EIGRP 进程中设置,passive 后由于无法发送 hello 报文,邻居关系 down
掉
r2(config-router)#passive-interface e0
r2(config-router)#
*Mar 1 01:58:50.747: %DUAL-5-NBRCHANGE: IP-EIGRP(0) 100: Neighbor 2.2.2.1 (Ethernet0)
is down: interface passive
r2(config-router)#
*Mar 1 01:58:50.759: destroy peer: 2.2.2.1
r2(config-router)#
7.10.6 调整 EIGRP 更新信息
Router(config-if)#ip hello-interval eigrp as_number seconds
Router(config-if)#ip hold-time
eigrp as_number seconds
7.10.7 EIGRP 的重分布和路由控制
1.重分布:
Router(config-router)#redistribution protocols
Default-metric 1544 100 254 1 1500
2.路由过滤:
Router(config-router)#distribute-list [1-199] [in | out] interface
3.deny bandwidth 只影响路由选择协议,不影响实际数据流量
4.修改管理距离
R1(config-router)#distance [1-255] adjacent_nei_ip_addr wild_mask [acl 0~99]
5.修改偏移量
R1(config-router)#offset-list [acl0-99] {in|out} offset [metric] [interface]
7.10.8 EIGRP 的 stub 区域
!
hostname mexico_1
!
router eigrp 2001
network 172.16.0.0
P a g e | 58
CCIE R/S & Service Provider Exam Certification Guide
default-metric 1544 100 254 1 1500
no auto-summary
eigrp stub connected
hostname usa_1
!
router eigrp 2001
redistribute static
network 172.16.0.0
default-metric 1544 100 254 1 1500
no auto-summary
eigrp stub connected static
!
ip classless
ip route 192.168.3.0 255.255.255.0 172.16.6.7
ip route 192.168.4.0 255.255.255.0 172.16.6
canada_1#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate default
U - per-user static route, o - ODR
Gateway of last resort is not set
172.16.0.0/24 is subnetted, 5 subnets
P a g e | 59
CCIE R/S & Service Provider Exam Certification Guide
D 172.16.5.0 [90/2195456] via 172.16.1.5, 01:03:47, Serial0.1
D 172.16.6.0 [90/2195456] via 172.16.2.6, 00:48:40, Serial0.2
C 172.16.1.0 is directly connected, Serial0.1
C 172.16.2.0 is directly connected, Serial0.2
C 172.16.3.0 is directly connected, TokenRing0
D EX 192.168.4.0/24 [170/2195456] via 172.16.2.6, 00:43:27, Serial0.2
10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
D 10.1.2.0/30 [90/304128] via 172.16.3.3, 07:31:49, TokenRing0
D 10.1.1.0/24 [90/304128] via 172.16.3.3, 07:31:49, TokenRing0
182.16.0.0/24 is subnetted, 2 subnets
D 182.16.4.0 [90/304128] via 172.16.3.3, 07:31:49, TokenRing0
D 182.16.3.0 [90/304128] via 172.16.3.3, 07:31:49, TokenRing0
D EX 192.168.3.0/24 [170/2195456] via 172.16.2.6, 00:43:28, Serial0.2
canada_1#
P a g e | 60
CCIE R/S & Service Provider Exam Certification Guide
Chapter 8
OSPF路由协议
8.1 OSPF的hello协议
Hello协议的目的:
1.用于发现邻居
2.在成为邻居之前,必须对Hello包里的一些参数协商成功
3.Hello包在邻居之间扮演着keepalive的角色
4.允许邻居之间的双向通信
5.它在NBMA(Nonbroadcast Multi-access)网络上选举DR和BDR
Cisco路由器上Hello包默认的发送间隔(HelloInterval)是10秒;NBMA网络是30秒,
通过ip ospf hello-interval <seconds>来修改;
如果在4倍于这个时间间隔里(40秒和120秒)内仍然没有收到来自邻居的新的Hello包,这个邻居将被
宣告为无效(dead)
通过命令ips ospf dead-interval <seconds>来修改
Hello Packet包含以下信息:
1.源路由器的RID
2.源路由器的Area ID
3.源路由器接口的掩码
4.源路由器接口的认证类型和认证信息
5.源路由器接口的Hello包发送的时间间隔
6.源路由器接口的无效时间间隔
7.优先级
8.DR/BDR
9.五个标记位(flag bit)
10.源路由器的所有邻居的RID
8.2 OSPF的网络类型
OSPF定义的5种网络类型:
1.点到点网络
2.广播型网络
3.NBMA网络
4.点到多点网络
5.虚链接(virtual link)
8.2.1 点到点网络,
比如T1线路,是连接单独的一对路由器的网络,点到点网络上的有效邻居总是可以形成邻接关系
的,在这种网络上,OSPF包的目标地址使用的是224.0.0.5,这个组播地址称为AllSPFRouters
8.2.2 广播型网络,
P a g e | 61
CCIE R/S & Service Provider Exam Certification Guide
比如以太网,Token Ring和FDDI,这样的网络上会选举一个DR和BDR,DR/BDR的发送的OSPF包的目
标地址为224.0.0.5,运载这些OSPF包的帧的目标MAC地址为0100.5E00.0005;而除了DR/BDR以外
的OSPF包的目标地址为224.0.0.6,这个地址叫AllDRouters
8.2.3 NBMA网络,
比如X.25,Frame Relay,和ATM,不具备广播的能力,因此邻居要人工来指定,在这样的网络上要选
举DR和BDR,OSPF包采用unicast的方式
8.2.4 点到多点网络
是NBMA网络的一个特殊配置,可以看成是点到点链路的集合.
在这样的网络上不选举DR和BDR
8.2.5 虚链接:
OSPF包是以unicast的方式发送
所有的网络也可以归纳成2种网络类型:
1.传输网络(Transit Network)
2.末梢网络(Stub Network )
8.3 OSPF的DR及BDR
在 DR 和 BDR 出现之前,每一台路由器和他的邻居之间成为完全网状的 OSPF 邻接关系,这样 5
台路由器之间将需要形成 10 个邻接关系,同时将产生 25 条 LSA。
而且在多址网络中,还存在自己发出的 LSA 从邻居的邻居发回来,导致网络上产生很多 LSA 的拷
贝,所以基于这种考虑,产生了 DR 和 BDR。
DR 将完成如下工作
1. 描述这个多址网络和该网络上剩下的其他相关路由器
2. 管理这个多址网络上的 flooding 过程
P a g e | 62
CCIE R/S & Service Provider Exam Certification Guide
同时为了冗余性,还会选取一个 BDR,作为双备份之用
8.3.1 DR BDR 选取规则:
DR BDR 选取实在接口状态机的方式触发的。
1. 路由器的每个多路访问(multi-access)接口都有个路由器优先级(Router Priority),8 位长的
一个整数,范围是 0 到 255,Cisco 路由器默认的优先级是 1 优先级为 0 的话将不能选举为
DR/BDR.优先级可以通过命令 ip ospf priority 进行修改
2. Hello 包里包含了优先级的字段,还包括了可能成为 DR/BDR 的相关接口的 IP 地址
3. 当接口在多路访问网络上初次启动的时候,它把 DR/BDR 地址设置为 0.0.0.0,同时设置等待
计时器(wait timer)的值等于路由器无效间隔(Router Dead Interval)
8.3.2 DR BDR 选取过程:
1.
在和邻居建立双向(2-Way)通信之后,检查邻居的Hello包中Priority,DR和BDR字段,列出所
有可以参与DR/BDR选举的邻居.所有的路由器声明它们自己就是DR/BDR(Hello包中DR
字段的值就是它们自己的接口地址;BDR字段的值就是它们自己的接口地址)
2.
从这个有参与选举DR/BDR权的列表中,创建一组没有声明自己就是DR的路由器的子集
(声明自己是DR的路由器将不会被选举为BDR)
3.
如果在这个子集里,不管有没有宣称自己就是BDR,只要在Hello包中BDR字段就等于自己
接口的地址,优先级最高的就被选举为BDR;如果优先级都一样,RID最高的选举为BDR
4.
如果在Hello包中DR字段就等于自己接口的地址,优先级最高的就被选举为DR;如果优先
级都一样,RID最高的选举为DR;如果没有路由器宣称自己就是DR,那么新选举的BDR就
成为DR
5.
要注意的是,当网络中已经选举了DR/BDR后,又出现了1台新的优先级更高的路由
器,DR/BDR是不会重新选举的
6.
DR/BDR选举完成后,DRother只和DR/BDR形成邻接关系.所有的路由器将组播Hello包到
AllSPFRouters地址224.0.0.5以便它们能跟踪其他邻居的信息,即DR将洪泛update packet
到224.0.0.5;DRother只组播update packet到AllDRouter地址224.0.0.6,只有DR/BDR监听这
个地址
8.4 OSPF的接口
使用show ip ospf interface
命令查看接口
Process ID: 进程号,cisco 特有
RID:路由器的 router-id
Network Type : P2P,P2MP,...
P a g e | 63
CCIE R/S & Service Provider Exam Certification Guide
InfTransdelay:LSA 通告从路由器接口发送后经历的时间,以 Transmit Delay 显示,缺省值为
1sec
ip ospf transmit-delay 可以修改
Router Priority:缺省值为 1
可以通过 ip ospf priority 修改,0 为不参与选举
Cost:1 到 65535 之间的一个整数,Cisco 默认 cost 的算法是 100000000/BW,BW 为接口带宽.如
果带宽大于 100M 的话,将产生 1 个小于 1 的小数,这是不允许的.因此从 IOS 版本 11.2 之
后,可以使用命令 ospf auto-cost reference-bandwidth 来修正这个问题,允许管理者更改
缺省的参考带宽
Wait Timer:选举 DR/BDR 之前,等待邻居路由器宣告 DR/BDR 的 Hello 包的时间长度,这个时间
长度等于无效时间(RouterDeadInterval)
RxmtInterval:没有得到确认的情况下,重传 OSPF packet 所等待的时间长度,默认为 5 秒,可以使
用命令 ip ospf retransmit-interval <seconds>修改
Hello Timer:由 HelloInterval 设置的,当它超时后,将从接口发送一个 Hello 包,上图显示 Hello
Timer 将在 3 秒后超时
AuType:认证类型,OSPF 的认证类型可以是 null(无认证),简单口令或者 MD 加密.如果使用 null
认证方式,show ip ospf interface 将不会显示认证类型和钥匙(key)信息
8.5 OSPF的状态机
IE1:低层协议指明接口可操作
IE2:低层协议指明接口不可操作
IE3:网络管理系统或低层协议指明接口 loop up
IE4:网络管理系统或低层协议指明接口 loop down
IE5:收到 Hello 包
P a g e | 64
CCIE R/S & Service Provider Exam Certification Guide
IE6:Wait Timer 超时
IE7:选举为 DR
IE8:被选举为 BDR
IE9:没有被选举为 DR/BDR,成为 DRothers
IE10:邻居路由器发生了变化
8.6 OSPF邻居关系
邻接关系建立的 4 个阶段:
1.邻居发现阶段
2.双向通信阶段:Hello 报文都列出了对方的 RID,则 BC 完成
3.数据库同步阶段:
4.完全邻接阶段: full adjacency
邻居关系的建立和维持都是靠 Hello 包完成的,在一般的网络类型中,Hello 包是每经过 1 个
HelloInterval 发送一次,有 1 个例外:在 NBMA 网络中,路由器每经过一个 PollInterval 周期发送 Hello
包给状态为 down 的邻居(其他类型的网络是不会把 Hello 包发送给状态为 down 的路由器的).Cisco
路由器上 PollInterval 默认 60s
Hello Packet 以组播的方式发送给 224.0.0.5,在 NBMA 类型,点到多点和虚链路类型网络,以单播
发送给邻居路由 器。邻居可以通过手工配置或者 Inverse-ARP 发现
使用 show ip ospf neighbor 命令查看邻居的信息,如下:
Poll interval:
这个参数只用于 NBMA 网络,因为在 NBMA 网络中邻居无法自动发现.如果邻居状态是 down,那么路
由器将经 PollInterval 长的时间发送 Hello 包给这个状态为 down 的邻居
Dead timer due in 00:01:40:Dead Timer 将在 100 秒后超时,超时之前没收到新的 Hello 包的话将被宣告
无效还有些未显示的信息:DR/BDR
Master/Slave:
在 ExStart 状态,邻居之间协商的主/从(Master/Slave)关系将控制数据库的同步
DD(Database Description) Sequence Number:
Last Received Database Description Packet:
正向邻居发送的数据库描述序列号
这个 packet 记录了 Initialize,More 和 Master 位和可选项,
以及最后收到的数据库描述包的序列号.这个信息可以确定下一个数据库描述包是否重复
P a g e | 65
CCIE R/S & Service Provider Exam Certification Guide
Link State Retransmission List:
Database Summary List:
没有得到确认的 LSA 列表
数据库同步期间,数据库描述包中向邻居发送的 LSA 列表,当路由器进入
exchange 状态后,这些 LSA 将组成 LSDB
Link State Require List:这个列表记录了来自邻居的数据库描述包的 LSA,这些 LSA 比 LSDB 中的 LSA 更
新.链路状态请求(Link State Require,LSR)发送给邻居来请求 LSA 的拷贝,当这些请求的 LSA 通过链路状
态更新(Link State Update,LSU)收到后,请求列表将会减少直至清空
OSPF 路由器在完全邻接之前,所经过的几个状态:
初始化状态
1.Down:
2.Attempt:
只适于 NBMA 网络,在 NBMA 网络中邻居是手动指定的,在该状态下,路由器将使用
HelloInterval 取代 PollInterval 来发送 Hello 包
3.Init:
表明在 DeadInterval 里收到了 Hello 包,但是 2-Way 通信仍然没有建立起来
4.two-way: 双向会话建立
5.ExStart:
信息交换初始状态,在这个状态下,本地路由器和邻居将建立 Master/Slave 关系,并确定 DD
Sequence Number,接口等级高的的成为 Master
6.Exchange: 信息交换状态,本地路由器向邻居发送数据库描述包,并且会发送 LSR 用于
请求新的 LSA
7.Loading:
信息加载状态,本地路由器向邻居发送 LSR 用于请求新的 LSA
8.Full:
完全邻接状态,这种邻接出现在 Router LSA 和 Network LSA 中
在一个邻接关系的创建过程中,OSPF 协议使用如下 3 种报文
Database Description packets—
DD (type 2)
Link State Request packets—
LSR (type 3)
P a g e | 66
CCIE R/S & Service Provider Exam Certification Guide
Link State Update packets—
LSU (type 4)
1. RT1 首先变为有效状态,发送 Hello 包给 RT2,由于刚开始没有学习到任何邻居,虽然 Hello 包里
Neighbor 字段的值是空的,DR/BDR 字段设置为 0.0.0.0
2. RT2 收到来自 RT1 的 Hello 包以后,将 RT1 状态设置为 Init,并发送 Hello 包给 RT1,Neighbor 字段设
置为 RT1 的 RID,并把 DR 字段设置成自己接口地址
3. RT1 收到 RT2 的 Hello 包并看到里面的 RID 以后,RT1 为了能够进行 Master/Slave 协商,将把 RT2
设置成 ExStart 状态.接着,RT1 将产生一个空的数据库描述包(DDP),并设置序列号为 x,同时设置
Init 位为 1,表示该 DDP 是用于本次信息交换的最初的 DDP,并设置 More 位为 0 表示这个 DDP 不
是最后一个 DDP;设置 Masrer/Slave 位为 1 声明自己为 Master
4. RT2 收到 RT1 发来的这个 DDP 以后,设置 RT1 状态为 ExStart,并响应一个 DDP.序列号设置为 y,假
设 RT2 的 RID 高于 RT1 的 RID,因此它设置 MS 位为 1
5. Master/Slave 协商完成,RT2 为 Master,RT1 把 RT2 的状态设置为 Exchange 状态,并发送 DDP 给 RT2,
序列号使用 y,MS 位设置为 0 声明自己是 Slave,I 位设置为 0,M 位设置为 1
6. RT2 收到 RT1 的这个 DDP 以后,把 RT1 的状态设置为 Exchange,并发送 DDP 给 RT1,把序列号增加
1,这个 DDP 包含了 RT2 的 Link State Summary List 中的 LSA 头部信息
7. RT1 收到这个 DDP 以后,将响应一个序列号相同的 DDP,这个过程将一直持续,然后 RT2 将发送一
个单独的 DDP 直到 RT1 以相同的序列号响应,直到 RT2 发出包含最后 1 个 LSA Summary 的 DDP,
并设置 M 位为 0
8. Exchange 状态完成,但是 RT1 的 LSR 列表中仍然还有未请求的 LSA 条目,因此 RT1 进入 Loading 状
态
9. 当 RT2 收到最后 1 个 DDP 以后,RT2 设置 RT1 的状态为 Full,因为 RT1 的 LSR 列表中没有要请求的
LSA 条目了
10. RT1 发送 LSR 给 RT2,RT2 以 LSU 来响应这个请求,这个过程持续到 RT1 的 LSR 列表成为空列表,此
P a g e | 67
CCIE R/S & Service Provider Exam Certification Guide
时 RT1 也把 RT2 的状态设置为 Full
可以使用命令 debug ip ospf adj 查看邻接关系的建立情况
8.7 OSPF泛洪
Flooding 采用 2 种报文
LSU Type 4---链路状态更新报文
LSA Type 5---链路状态确认报文
如下图所示: 每一个链路状态更新报文和确认报文都可以携带多个 LSA。LSA 本身可以 floodin 到
整个互联网络,但更新报文和确认报文只能在具有邻接关系的两个节点之间传送。
、
在 P-P 网络,路由器是以组播方式将更新报文发送到组播地址 224.0.0.5
在 P-MP 和虚链路网络,路由器以单播方式将更新报文发送至邻接邻居的接口地址
在广播型网络,DRother 路由器只能和 DR&BDR 形成邻接关系,所以更新报文将发送到 224.0.0.6,
相应的 DR 以 224.0.0.5 泛洪 LSA 并且 BDR 只接收 LSA,不会确认和泛洪这些更新,除非 DR 失效
在 NBMA 型网络,LSA 以单播方式发送到 DR BDR,并且 DR 以单播方式发送这些更新
P a g e | 68
CCIE R/S & Service Provider Exam Certification Guide
LSA 的 洪 泛 是 可 靠 的 , 所 以 必 须 对 每 1 个 发 送 的 LSA 进 行 确 认 , 确 认 分 隐 式 确 认 (Implicit
Acknowledge)和显式确认(Explicit Acknowledge)
当 路 由 器 要 发 送 LSA 的 时 候 , 会 把 LSA 的 拷 贝 放 在 链 路 状 态 重 传 列 表 中 , 这 个 LSA 每 隔
RxmtInterval重传1次,直到该LSA得到确认,或邻接关系中断.无论哪种网络类型,重传的LSA总是以
unicast的方式发送的
确认可以是delayed或direct,前者可以使用1个LSAck确认多个LSA,当然这个延迟的时间必须小
于RxmtInterval;后者的确认是立即发送,采用单播的方式.当出现下面2种情况的时候将采用直接确
认:
1.从邻居那里收到了重复的LSA
2.LSA的老化时间(Age)达到最大生存时间(MaxAge)
查看 LSDB 信息,使用 show ip ospf database 命令,如下:
LSA 通过序列号,校验和,和老化时间保证 LSDB 中的 LSA 是最新的
Seq:
序列号(Seq)的范围是 0x80000001 到 0x7fffffff
Checksum:
校验和(Checksum)计算除了 Age 字段以外的所有字段,每 5 分钟校验 1 次
Age:
范围是 0 到 3600 秒,16 位长.当路由器发出 1 个 LSA 后,就把 Age 设置为 0,当这个
LSA 经过 1 台路由器以后,Age 就会增加 1 个由 InfTransDelay 设定的时间(默认为 1
秒,这个时间可以通过命令 ip ospf transmit-delay <seconds>修改).LSA 保存在 LSDB
中的时候,老化时间也会增加
P a g e | 69
CCIE R/S & Service Provider Exam Certification Guide
当收到相同的 LSA 的多个实例的时候,将通过下面的方法来确定哪个 LSA 是最新的:
1.
比较 LSA 实例的序列号,越大的越新
2.
如果序列号相同,就比较校验和,越大越新
3.
如果校验和也相同,就比较老化时间,如果只有 1 个 LSA 拥有 MaxAge(3600 秒)的老化时间,
它就是最新的
4.
如果 LSA 老化时间相差 15 分钟以上,(叫做 MaxAgeDiff),老化时间越小的越新
5.
如果上述都无法区分,则认为这 2 个 LSA 是相同的
8.8 OSPF区域
区域长度 32 位,可以用 10 进制,也可以类似于 IP 地址的点分十进制分 3 种通信量
1.
Intra-Area Traffic:域内间通信量
2.
Inter-Area Traffic:域间通信量
3.
External Traffic:外部通信量
1.
Internal Router:内部路由器
2.
ABR(Area Border Router):区域边界路由器
3.
Backbone Router(BR):骨干路由器
4.
ASBR(Autonomous System Boundary Router):自治系统边界路由器
路由器类型
虚链路(Virtual Link)
1.
通过一个非骨干区域连接到一个骨干区域
2.
通过一个非骨干区域连接一个分段的骨干区域两边的部分区域
虚链接是一个逻辑的隧道(Tunnel),配置虚链接的一些规则:
1.
虚链接必须配置在 2 个 ABR 之间
2.
虚链接所经过的区域叫 Transit Area,它必须拥有完整的路由信息
3.
Transit Area 不能是 Stub Area
4.
尽口的避免使用虚链接,它增加了网络的复杂程度和加大了排错的难度
8.9 LSD链路状态数据库
使用 show ip ospf database 可以查看 LSDB 的信息。LSA 驻留在 LSDB 中,age 会加大,当超过 MaxAge
后,这些 LSA 将被清除掉,因此出现链路刷新(LSR)机制来防止这个问题,每 30min(LSRefreshTime),发出
这条 LSA 的源路由器将再次发送这个 LSA 的拷贝,并把序列号加 1,把 Age 设置为 0,来替换邻居 LSDB
P a g e | 70
CCIE R/S & Service Provider Exam Certification Guide
中的较老的 LSA
8.9.1 LSA 类型
1.类型 1:Router LSA
2.类型 2:Network LSA
3.类型 3:Network Summary LSA
4.类型 4:ASBR Summary LSA
5.类型 5:AS External LSA
6.类型 6:Group Membership LSA
7.类型 7:NSSA External LSA
8.类型 8:External Attributes LSA
9.类型 9:Opaque LSA(link-local scope,)
10.类型 10:Opaque LSA(area-local scope)
11.类型 11:Opaque LSA(AS scope)
使用 show ip ospf database database-summary 可以看到 LSDB 中的 LSA 类型
8.9.2 Router LSA
每个路由器都将产生 Router LSA,这种 LSA 只在本区域内传播,描述了路由器所有的链
路和接口,状态和开销
此种 LSA 可以通过 show ip ospf database router 查看
P a g e | 71
CCIE R/S & Service Provider Exam Certification Guide
8.9.3 Network LSA
在每个多路访问网络中,DR 都会产生这种 Network LSA,它只在产生这条 Network LSA 的
区域泛洪描述了所有和它相连的路由器(包括 DR 本身)
Show ip ospf database network 可以看到 Network LSA
P a g e | 72
CCIE R/S & Service Provider Exam Certification Guide
8.9.4 Network Summary LSA
由 ABR 路由器始发,用于通告该区域外部的目的地址,
可以使用 show ip ospf database summary 查看 LSA
如果 ABR 知道有多条路径可以到达目标地址 ,但是它仍然只发送单个的 Network
P a g e | 73
CCIE R/S & Service Provider Exam Certification Guide
Summary LSA,并且是开销最低的那条;同样,如果 ABR 从其他的 ABR 那里收到多条 Network
Summary LSA 的话,它会只选择开销最低的,并把这条 Network Summary LSA 宣告给其他区域
当其他的路由器收到来自 ABR 的 Network Summary LSA 以后,它不会运行 SPF 算法,它只
简单的加上到达那个 ABR 的开销和 Network Summary LSA 中包含的开销,通过 ABR,到达目标
地址的路由和开销一起被加进路由表里,这种依赖中间路由器来确定到达目标地址的完全路
由(full route)实际上是距离矢量路由协议的行为
8.9.5 ASBR Summary LSA
由 ABR 发出,ASBR 汇总 LSA 除了所通告的目的地是一个 ASBR 而不是一个网络外,其他
同 NetworkSummary LSA
使用
P a g e | 74
show ip ospf database asbr-summary 可以看到
CCIE R/S & Service Provider Exam Certification Guide
8.9.6 Autonmous System External LSA
发自 ASBR 路由器,用来通告到达 OSPF 自主系统外部的目的地,或者 OSPF 自主系统那
个外部的缺省路由的 LSA。这种 LSA 将在全 AS 内泛洪
可以使用 show ip ospf database external
8.9.7 NSSA External LSA
来自非完全 Stub 区域(not-so-stubby area)内 ASBR 路由器始发的 LSA 通告它只在 NSSA 区
域内泛洪,这是与 LSA-Type5 的区别
Show ip ospf database nssa-external
P a g e | 75
CCIE R/S & Service Provider Exam Certification Guide
8.9.8 External Attributes LSA
被提议为作为 iBGP 的另一种选择,用来传输 BGP 协议信息穿越一个 OSPF 域。
8.9.9 Opaque LSA
特殊应用,透明 LSA,基于 MPLS。暂时没有实现
8.10 OSPF末梢区域
由于并不是每个路由器都需要外部网络的信息,为了减少 LSA 泛洪量和路由表条目,下图中的 Area
2 可以配置成为 Stub 区域
位于 Stub 边界的 ABR 将宣告一条默认路由到所有的 Stub 区域内的内部路由器,
8.10.1 Stub 区域限制:
a)
所有位于 stub area 的路由器必须保持 LSDB 信息同步, 并且它们会在它的 Hello
包中设置一个值为 0 的 E 位(E-bit),因此这些路由器是不会接收 E 位为 1 的 Hello
包,也就是说在 stub area 里没有配置成 stub router 的路由器将不能和其他配置
成 stub router 的路由器建立邻接关系
P a g e | 76
CCIE R/S & Service Provider Exam Certification Guide
b)
不能在 stub area 中配置虚链接(virtual link),并且虚链接不能穿越 stub area
c)
stub area 里的路由器不可以是 ASBR
d)
stub area 可以有多个 ABR,但是由于默认路由的缘故,内部路由器无法判定哪个
ABR 才是到达 ASBR 的最佳选择
Cisco 提出了 Totally Stubby Area,和 stub area 相比,它连 LSA 类型 3(Network Summary LSA)也阻
塞掉了
NSSA 允许外部路由被宣告 OSPF 域中来,同时保留 Stub Area 的特征,因此 NSSA 里可
以有 ASBR,ASBR 将使用 type7-LSA 来宣告外部路由,但经过 ABR,Type7 被转换为 Type5。 7
类 LSA 通过 OSPF 报头的一个 P-bit 作 Tag,如果 NSSA 里的 ABR 收到 P 位设置为 1 的 NSSA
External LSA,它将把 LSA 类型 7 转换为 LSA 类型 5.并把它洪泛到其他区域中;如果收到的是 P
位设置为 0 的 NSSA External LSA,它将不会转换成类型 5 的 LSA,并且这个类型 7 的 LSA 里的目
标地址也不会被宣告到 NSSA 的外部 NSSA 在 IOS11.2 后支持。
8.10.2 几种特殊的区域
P a g e | 77
CCIE R/S & Service Provider Exam Certification Guide
Stub
过滤 Type5LSA 并自动产生默认路由 O*IA 但不过滤掉域间路由
Stub-No Summary
只放入 Type 2&6 类的路由,即域间路由被过滤掉,同时产生 O *IA 的默认路由
NSSA
ASBR 使用 Type 7LSA 通告外部路由,路由条目由 O E2 改为 O N2,NSSA 不会自动产生默
认路由,除非加入 area 2 nssa default-information-originate.且默认路由仅用在 ASBR,ABR
上,产生一条 O *N2 的路由。同时过滤掉骨干区域来的 Type5 路由.
NSSA-No redistribution
如下图所示,B 上使用 area 1 nssa no-redistribution, B 上将不会把 EIGRP 做为 Type7LSA
通告,所以 C 上原本会收到的 2 条 O N2 路由将会消失
NSSA-No summary
即在路由器 B 上 area 1 nssa no-summary 过滤域间路由,并在自动产生一条 O *IA 的默
认路由
8.11 OSPF路由表
路由选择表是根据 LSDB 中 LSA 条目,使用 SPF 算法生成的。OSPF 是基于接口带宽进行度量
的一种路由协议使用 10^8/BW 计算。
通过命令 ip ospf cost 1~65535
可以修改端口的成本
不推荐 ip ospf cost 的方式修改
使用 auto-cost reference-bandwidth bandwidth(1~4296967Mb)修改默认的参考值,以便识别
1000M 和 10G 的 interface 两个不同的区域可以使用不同的参考带宽
8.11.1 Destination Type
每一个路由条目都可以被归类到目的类型中去网络条目(Network Entry)是数据包药转发的目
的网络:
P a g e | 78
CCIE R/S & Service Provider Exam Certification Guide
路由器条目(Routers Entry)记录的是如何到达 ABR/ASBR,这些路由器条目被单独存放在一个
内部的路由表里,使用命令 show ip ospf border-routers 来查看这个信息,如下:i 代表区域内路
由, I 代表区域间路由
P a g e | 79
CCIE R/S & Service Provider Exam Certification Guide
8.11.2
Path Type
到达目标网络的路径可以分为 4 类:
Intra-area path(区域内路由)
inter-area path(区域间路由),
Type 1 external path(类型 1 的外部路径,E1)
Type 2 external path(类型 2 的外部路径,E2)
路由标记如下:
1.
O 区域内路由
2.
O IA 区域间路由
3.
O N1 O N2 Nssa 区域通告的 Type7LSA 生成的路由
4.
O E1 O E2 外部路由 区别在于后者计算时会不必加上到达 ASBR 的 Metric
路由选择表的查找顺序
1. 路由器读取目的地址,并查找路由表,选择和目的地址最长匹配的路由进行转发
2. 如果存在 2 条相同的路由,查看管理距离
3. 根据 O > O IA > O E1 > O E2 的优先级顺序转发
4. 如果此时还存在等 Cost 路径,则作负载均衡转发
OSPF 默认 4 条路径负载均衡, 可以通过 maximum-paths 6 修改,最多 6 条路径负载均衡
8.12 OSPF按需电路
OSPF over Demand Circuits:在 X.25 SVC,ISDN,PSTN 等即用即连的电路上,OSPF 在按需电
路设计上具有抑制 Hello Packet 和 LSA-reflush 的功能,最初会执行 LSDB 的同步,随后指挥激活此条
链路去 flooding 某些变化的 LSA,具体配置方法:将 ISDN 做为备份链路,并在接口上启用 ip ospf
demand-circuit
8.13 OSPF报文格式
OSPF 报文有多重封装构成,如下图,分为 IP 头, OSPF 报头,LSA 头等
8.13.1 IP Packet Head
IP 报头可以看出协议号为 89,TTL=1 即 OSPF packet 转发不会超过 1 跳,一些路由器可以
P a g e | 80
CCIE R/S & Service Provider Exam Certification Guide
设置 Precedence bit 来运行一些具有优先次序的报文处理,包括 WFQ—
加权公平队列 或者
WRED--加权随机预先检测序列
8.13.2 OSPF Packet
OSPF packet 的头部长度为 24 字节
Version: 当前最新为版本 2
Type:
类型 1 为 Hello 包;
类型 2 为数据库描述包(DDP);
类型 3 为链路状态请求包(LSR);
类型 4 为链路状态更新包(LSU);
类型 5 为链路状态确认包(LSAck)
Area ID:
区域 ID,如果是虚链接,区域 ID 为 0.0.0.0(即 Backbone Area 的区域 ID),
因为虚链接被认识是骨干区域的 1 部分
AuType:
认证类型 0 为 null,即没有认证;
1 为简单口令验证(即明文);
2 为 MD5 加密验证
P a g e | 81
CCIE R/S & Service Provider Exam Certification Guide
8.13.3 Hello Packet
发送这个 Hello 包的接口的掩码,如果收到这个 Hello 包的接口的掩
Network Mask:
码和它不能精确匹配,这个 Hello 包将被丢弃
Router Dead Interval: 始发路由器在宣告邻居路由器无效前,将要等待的从邻居路由器发出
的 Hello 包的时长
Router Priority:优先级,参与 DR/BDR 选举之用,默认为 1,
如果为 0 的话将不能被选举为 DR/BDR
DR/BDR:
DR/BDR 的接口的 IP 地址(而非 DR/BDR 的 RID).在选举 DR/BDR 的过程中,这个
DR/BDR 字段的值并不一定就是最终选举出来的 DR/BDR 的值.如果没有 DR/BDR(未选举或者
是不需要 DR/BDR 的网络类型),该字段的值就为 0.0.0.0
Neighbor:
是一个循环重复字段,列出了始发路由器在过去的一个 RDI 时间内受到的有
效 Hello 包的网络上的所有 neighbor
8.13.4 DDP(Database Description Packets)
Interface MTU: 在报文不分段的情况喜爱,始发路由器接口可以发送的最大 IP 报文大小。
在虚链接上这个字段的值设置为 0x0000
I:
P a g e | 82
Initial bit,初始化位.最初的 DDP 把该位设置为 1,后续的设置为 0
M:
More bit,后续位,当 DDP 不是这一系列的 DDP 中最后一个 DDP 的时候,该位设置为 1
MS:
Master/Slave bit.主/从位.Master 为 1,Slave 设置为 0
CCIE R/S & Service Provider Exam Certification Guide
8.13.5 Link State Request Packet
Link State Type:
用来表明 LSA 的类型
Link State ID:
是 LSA 头部中和类型无关的字
段
Advertising Router:
宣告这条 LSA 的路由器的 RID
8.13.6 Link State Update Packet
8.13.7
Link State Ack Packet
8.14 OSPF LSA格式
8.14.1 LSA packet head:
P a g e | 83
CCIE R/S & Service Provider Exam Certification Guide
8.14.2 Router LSA
Link State ID:
发出这个 Router LSA 的路由器的 RID
Virtual Link Endpoint bit,设置为 1 表示源路由器是一条或多条具有完全
V:
邻接的虚链接的节点
E:
External bit,设置为 1 表示源路由器为 ASBR
B:
Border bit,设置为 1 表示源路由器为 ABR
Link Type:
类型 1 为点到点的连接到另一台路由器;
类型 2 表示连接到 1 个 Transit Network;
类型 3 表示连接到 1 个 Stub Network;
类型 4 表示虚链路
Link ID:
1,邻居路由器的 RID
2,DR 路由器的接口的 IP 地址
3,IP 网络或者子网地址
4,邻居路由器的 RID
Link Date: 依赖于链路类型字段的值
Notice: Cisco 的路由器只支持 TOS=0
8.14.3 Network LSA
Show ip ospf database network
P a g e | 84
CCIE R/S & Service Provider Exam Certification Guide
8.14.4 Network Summary and ASBR Summary LSA
Link State ID:
Type3 通告网络或子网的 IP
Type4 通告 ASBR 的 RID
Networkmask
0.0.0.0
Show ip ospf database summary
Show ip ospf database asbr-summary
8.14.5
AS External LSA
Link State ID: 目标地址的 IP
Network Mask:
目标地址的子网掩码
如果类型 5 的 LSA 宣告的是默认路由,那么上面 2 个字段都为 0.0.0.0
E:
1 度量类型 E2
0 度量类型 E1
Forwarding Address:
数据包应该被转发到的地址.设置为
0.0.0.0 的话表示数据包将转发给源
ASBR
External Route Tag:
用于 route-map 的 tag
Show ip ospf database external
P a g e | 85
CCIE R/S & Service Provider Exam Certification Guide
8.14.6
NSSA External LSA
Forwarding Address:
如果网络是 NSSA ASBR 和它邻接的 AS 之 间 并 作 为 内
部路由进行宣告的话,这个转发地址就是网络的下一跳;
如果不是,这个转发地址就的 NSSA ASBR 的 RID
Show ip ospf database nssa-external
8.14.7 The Options Field
*
不使用通常设置为 0
DC
当始发路由器具有支持按需电路上的 OSPF 能力时,此位将被设置
EA
当始发路由器具有接受和转发外部属性 LSA 的能力时,此位将被设
置
N
只用在 Hello 报文, 1 将支持 NSSA 外部 LSA
0 将不接受和发送外
部 LSA
P
只用在 NSSA 外部 LSA 头部, 这一位将告诉一个 NSSA 区域中的 ABR
将 Type 7 转换为 Type 5
MC
当始发路由器支持 IP 组播,此位将被设置
E
当始发路由器具有接受外部 LSA 能力时,此位将被设置
BB-LSA 非 stub 区域
T
当路由器支持 TOS,此位将被设置
8.15 OSPF配置及命令汇总
8.15.1 OSPF Process Configuration Commands
Router ospf process-id :
*process-id 1~65535
*no router ospf process-id 删除进程
P a g e | 86
外部 LSA
CCIE R/S & Service Provider Exam Certification Guide
启动 OSPF 进程,并分配 RID。RID 除非进程重新启动或者 RID 使用的接口状态是不活
动的,否则不会改变 RID,配置 OSPF 前,检查 loopback 口是否配置 ip addr。Loopback 不是
强制的,但可以稳定 OSPF 进程
Route ospf process-id vrf name:
*process-id 1~65535
*name:
一个 VPN 路由选择转发表<VRF>实例的名称。通过 OSPF 进程学到路由将替
代全球的 ip 路由选择表被注入 vrf 的路由选择表
在 MPLS-VPN 环境下,此命令用于在 ISP 和 VPN 用户间传送 VPN 用户的路由
P :ISP 提供商
CE:用户边缘路由器
PE:提供商边缘路由器
8.15.2
OSPF Area Commands
Area area-id authentication
*area-id 0~4294967295 或者 0.0.0.0~255.255.255.255 形式输入
*同时要在物理接口上启用 ip ospf authentication-key password
*在区域 0 使用认证的虚电路:
area transit-area virtual-link router-id authentication-key password
在 OSPF 区域内启动一个简单的明文密码认证。OSPF 简单认证需要将密码配置在
接口或者虚电路上。在 IOS12.X 中同区域内的不同接口使用认证的方法无需相同。 ip
ospf authentication null 可以删除所选认证。配置密码时,空格符是有效字符,如
cisco<space>和 cisco 完全不同
Area area-id authentication message-digest
*采用 md5 的 authentication。在物理接口上启用
ip ospf message-digest-key key-id md5 password
*虚电路上
P a g e | 87
CCIE R/S & Service Provider Exam Certification Guide
area transit-area virtul-link router-id message-digest-key key-id md5 password
配置验证时必须要求 key-id 和 password 都匹配,同时配置密码可以在全局配置下
service password-encryption 进行加密。启用新的密钥,先加入新的 key-id,然后在 no 旧
密钥。
Area area-id default-cost cost
外部网络路由不能在一个 stub 区域或者 totally-stub 区域内广播,当一个 OSPF 区
域配置为 stub 区域后,在 stub 区域的 ABR 会产生一个缺省路由代替外部路由,当 OSPF
配置为 totally-stub 时,缺省路由会代替外部和区域间路由。这个命令是设置广播到 stub
区域,totally-stub 区域或者 NSSA 区域中的缺省路由的成本的,默认缺省成本为 1。
Area area-id nssa
在一个 stub 区域或者完全 stub 区域,stub 区域的 ABR 会阻止 OSPF 外部路由(LSA5)
在 stub 区域内广播。故 ASBR 将不会成为 stub 区域的一部分。NSSA 区域中,允许路由
器作为 ASBR redistribution,被配置为 NSSA 区域的 ASBR 将产生 7 类路由
Area
area-id nssa default-information-originate
在 OSPF ABR 或者 ASBR 中产生一个能够进入 NSSA 区域的 OSPF NSSA 外部类型 2
的缺省路由,在 ABR 上无须定义。在 ASBR 上配置该命令,则需要配置缺省路由。在 B
上配置后,C 会产生一条 O*N2 的路由指向 B
P a g e | 88
CCIE R/S & Service Provider Exam Certification Guide
注意:此条命令仅用在 NSSA ABR 或者 ASBR 上
Area area-id nssa no-redistribution
在下图中,EIGRP 的信息将从 ABR 上 redistribution 进入到 NSSA 区域,故可以采用此条
命令,防止 NSSA 产生由 EIGRP 产生的外部路由
注意:此条命令仅用在 ASBR 上,其它 NSSA 每台路由器只需 area x nssa
Area area-id nssa no-summary
该命令用于在 OSPF ABR,阻止 OSPF 区域间路由进入 NSSA 区域,该命令同时产生一条道
路一个 OSPF 区域间的缺省路由
注意:no-summary 仅用在 NSSA ABR 上
Area area-id range ip-addr mask [advertise | not-advertise]
OSPF 可以会聚从骨干网或者区域 0 到非 0 OSPF 区域的 OSPF 路由,或者从非 0 区
P a g e | 89
CCIE R/S & Service Provider Exam Certification Guide
域到骨干网的 OSPF 路由。 OSPF 路由汇聚只能在 ABR 上发生,ABR 应是一个在区域 0,
并且在非 0 区域有接口的路由器。默认情况下 advertise 是打开的, not-advertise 用于
抑制 ABR 广播默认路由
注意: 1。 如果其中 156.26.32.0/28 down 了以后,
IOS 将自动为这条中断链路创建一条默认路由
ip route 156.26.32.0 255.255.255.192 Null0
2。Area x range 仅用在 OSPF ABR 上
Area area-id stub
将区域配置成为 stub 区域后,ABR 将产生一条默认路由,通告到整个 stub 区域,域间路
由能通过但 5 类的外部路由不能进入
注意: Stub 区域不能作为 virtual-link 的穿透区域,
Stub 区域内的每台路由器都应配置 stub area
Area area-id stub no-summary
将区域配置为完全 stub 区域后, 将会阻止区域间路由和外部路由通过
No-summary 仅用在 ABR 上,ASBR 不能成为完全末节的一部分。不能作为 virtual-link
的穿透区域
P a g e | 90
CCIE R/S & Service Provider Exam Certification Guide
Area transit-area-id virtual-link
router-id
所有非 0 OSPF 区域必须具有到骨干或者区域 0 的连接,虚拟链路用于修复被分割的区
域,但传送区域不能为 stub 区域。
如上图所示,在 B,C 间建立 Virtual-link 只需要
B<config-router>#area transit-area-id virtual-link router-C-ID
C<config-router>#area transit-area-id virtual-link router-B-ID
注意:虚拟电路不能频繁使用,设计网络时应该注意
Area transit-area-id virtual-link
router-id authentication[authentication-key pass |
message-disgest | null]
此命令用于在 Virtual-Link 上启用认证,可以采用明文或者 MD5 或者 null
1. 明文认证:
B:
area 1 virtual-link 3.3.3.3 authentication authentication-key cisco
C:
area 1 virtual-link 2.2.2.2 authentication authentication-key cisco
2. MD5
B:
area 1 virtual-link 3.3.3.3 authentication message-digest
area 1 virtual-link 3.3.3.3 message-digest-key 1 md5 cisco
C:
area 1 virtual-link 2.2.2.2 authentication message-digest
area 1 virtual-link 2.2.2.2 message-digest-key 1 md5 cisco
改变密码:
B,C 先声明 key 2,然后 no key 1
3. Null
如果区域 0 配置了认证,虚拟链路上会自动使用相同的认证,可以通过在虚
P a g e | 91
CCIE R/S & Service Provider Exam Certification Guide
拟链路上将认证设置为 Null 来取消
Eg:
A: ip ospf authentication-key Cisco
Area 0 authentication
B: ip ospf authentication-key Cisco
Area 0 authentication
Area 1 virtual-link 3.3.3.3
C: area 1 virtual-link 2.2.2.2
此时,在 B 上 debug 发现,由于 Mismatch authentication type,BC 不能建立
邻居。 如果需要,则在 C 上加 key,但是为了安全和 key 范围限制,可以在 B,C
上设置 null
B:
area 1 virtual-link 3.3.3.3 authentication null
C:
area 1 virtual-link 2.2.2.2 authentication null
Area transit-area-id virtual-link
router-id authentication-key password
如上例,在 Vlink 上不使用认证是不安全的,故可以在 v-link 链路上使用认证。
B:
area 1 virtual-link 3.3.3.3 authentication-key kaka
C:
area 1 virtual-link 2.2.2.2 authentication-key kaka
Area transit-area-id virtual-link router-id [dead-interval | hello-interval | retransmit-interval |
transmit-delay]
修改虚拟链路上的 hello 和失效的时间间隔,如果二者其一不匹配都会导致链路
中断,无法更新路由。默认时间为 10s/40s
Retransmit-interval:
当一台路由器在虚拟链路上广播 LSA 时,LSA 被夹在岛用于
虚拟链路的重发列表,LSA 将被重发直到 LSA 被答复,广播
间隔的时间即为 retransimit-interval,更改此参数不会
导致链路中断
Transmit-delay:
LSA 传送的时延.默认情况路由器将 LSA 的 age 域设置为 0,
而此参数会直接加在 age 域上
Area transit-area-id virtual-link
router-id message-digiest-key key-id md5 password
在虚拟链路上使用 md5 的认证方式。
A: ip ospf message-digest-key 1 md5 Cisco
Area 0 authentication-message digest
B: ip ospf message-digest-key 1 md5 Cisco
Area 0 authentication-message digest
Area 1 virtual-link 3.3.3.3 message-digest-key 2 md5 kaka
C: area 1 virtual-link 2.2.2.2 message-digest-key 2 md5 kaka
更新密钥时,为了保证连接不中断,需要先在 B,C 上使用新的 key 3 ,
然后再 no key 2
8.15.3
OSPF reference-bandwidth
Auto-cost reference-bandwidth bandwidth
P a g e | 92
CCIE R/S & Service Provider Exam Certification Guide
默认情况下 cost 值对于大于 100M 的端口,都将表示为 1
使用 auto-cost reference-bandwidth bandwidth(1~4296967Mb)
来修改默认的参考值,以便识别 1000M 和 10G 的 interface.更新后每个接口的成本都将改变,
可以使用 ip ospf cost 更改,但不建议使用这种方法
8.15.4
Default Route Generation
Default-information originate [always | metric | Metric-type]
在区域内产生默认路由,并广播到区域内,此命令用于 ASBR。
B: ip route 0.0.0.0 0.0.0.0 S1
Router ospf 1
Default-information originate
Aways:
此参数作用是防止由于缺省链路抖动(flapping)产生的缺省路由抖动,
从而减少对 OSPF LSDB 的操作
Metric:
Metric 缺省值为 1, 如果区域内有多条缺省路由,则可以更改 Metric,
选择较佳缺省路由
Metric-type: 通告路由的类型。缺省成本为 2 即 E2 类型的路由, 可设置为 E1 类型
Default-information originate route-map route-map-name
使用 route-map 有条件的产生默认路由,当且仅当外部网络存在时,才发布缺省路由
Router B:
default-information originate route-map exist
!
access-list 1 permit 3.3.3.0 0.0.0.3
!
route-map exist permit 10
P a g e | 93
CCIE R/S & Service Provider Exam Certification Guide
match ip address 1
8.15.5
Setting the Default Metric for Redistributed Protocols
Default-metric cost
对于重分布到 OSPF 的路由,如果没有使用 redistribute 命令分配一个度量,那么可以使用
该命令分配一个成本,但使用此命令不会影响已由 redistribute 分配一个度量的路由,默认的
redistribute-cost
BGP 的缺省度量是 1,其他协议是 20 在路由进程中,使用 Default-metric cost
可以更改
8.15.6
Administrative Distance
Distance
administrative-distance
用于修改本地路由选择表中所有 OSPF 路由的管理距离,默认管理距离如下
Distance
connected—
0
static—
1
EBGP—
20
EIGRP—
90
OSPF—
110
IS-IS—
115
RIP—
120
IBGP—
200
IGRP—
100
administrative-distance source-ip-address source-ip-mask access-list-number
用于修改特定来源的特定路由条目的管理距离,其中 source-ip-address 对于 OSPF 来说
是源路由器的 router-id,Mask 是原地址的 ip 掩码,用反掩码表示
例如
R1 的 R-ID 为 1.1.1.1 则
distance 99 1.1.1.1 0.0.0.0 是修改来自 1.1.1.1 的管理
距离, 若子网掩码为 0.0.0.255 则指来自 1.1.1.0/24 的所有路由器的管理距离。同时可以
可以使用 access-list 对特定的路由条目进行处理
Eg
distance 80 1.1.1.1 0.0.0.0 1
Access-list 1 permit 3.3.3.0 0.0.0.255
Distance ospf [ external | inter-area | intra-area ] administrative-distance
修改本地路由器的 外部 域间 域内 路由条目的管理距离
Distance opsf intra-area 70 inter-area 50 external 30
8.15.7
Filtering Routes with Distribute Lists
Distribute-list access-list-number in
用于阻止从 OSPF 学到的路由条目放置到 IP 路由选择表
如图所示,将 A 上过滤掉 2.2.2.0 和 3.3.3.0
distribute-list 1 in
P a g e | 94
CCIE R/S & Service Provider Exam Certification Guide
!
access-list 1 deny
2.2.2.0 0.0.0.255
access-list 1 deny
3.3.3.0 0.0.0.255
access-list 1 permit any
Distribute-list access-list-number in interfacetype interface-number
用于阻止从特定接口学到的 OSPF 路由被放置到 ip 路由选择表中。
distribute-list 1 in Serial0/0
distribute-list 2 in Serial0/1
!
access-list 1 deny
2.2.2.0 0.0.0.255
access-list 1 deny
3.3.3.0 0.0.0.255
access-list 1 permit any
access-list 2 deny
3.3.3.0 0.0.0.255
access-list 2 deny
4.4.4.0 0.0.0.255
access-list 2 permit any
Distribute-list
access-list-number
out
[interfacetype
interface-number
|
routing-process]
P a g e | 95
CCIE R/S & Service Provider Exam Certification Guide
对于距离矢量协议(RIP
IGRP EIGRP),该命令阻止被访问列表选定的路由广播到邻居处,
OSPF 不会把路由广播到邻居,但会广播 LSDB,因此该命令在 OSPF 一起使用是无效的。如果
加入参数 routing-process 可以过滤相应的距离矢量路由协议重分布进 OSPF 的路由表项
distribute-list 1 out eigrp 1
!
access-list 1 permit 4.4.4.0 0.0.0.255
Distribute-list access-list-name in
用于阻止从 OSPF 学到的路由条目放置到 IP 路由选择表
如图所示,将 A 上过滤掉 2.2.2.0 和 3.3.3.0
distribute-list filter-ospf in
!
ip access-list standard filter-ospf
deny
2.2.2.0 0.0.0.255
deny
3.3.3.0 0.0.0.255
permit any
Distribute-list access-list-name in interfacetype interface-number
用于阻止从特定接口学到的 OSPF 路由被放置到 ip 路由选择表中。
P a g e | 96
CCIE R/S & Service Provider Exam Certification Guide
distribute-list filter-ospf1 in Serial0/0
distribute-list filter-ospf2 in Serial0/1
!
ip access-list standard filter-ospf1
deny
2.2.2.0 0.0.0.255
deny
3.3.3.0 0.0.0.255
permit any
ip access-list standard filter-ospf2
deny
3.3.3.0 0.0.0.255
deny
4.4.4.0 0.0.0.255
permit any
Distribute-list access-list-number out [interfacetype interface-number | routing-process]
对于距离矢量协议(RIP
IGRP EIGRP),该命令阻止被访问列表选定的路由广播到邻居处,
OSPF 不会把路由广播到邻居,但会广播 LSDB,因此该命令在 OSPF 一起使用是无效的。如
果加入参数 routing-process 可以过滤相应的距离矢量路由协议重分布进 OSPF 的路由表项
distribute-list filter-eigrp out eigrp 1
!
ip access-list standard filter-eigrp
permit 4.4.4.0 0.0.0.255
Distribute-list prefix prefix-name [in | out] {interface-type interface-number | routing-process}
如上 3 例使用 prefix 的配置如下
distribute-list prefix filter-ospf in
!
ip prefix-list filter-ospf seq 5 deny 2.2.2.2/32
ip prefix-list filter-ospf seq 10 deny 3.3.3.3/32
ip prefix-list filter-ospf seq 15 permit 0.0.0.0/0
P a g e | 97
CCIE R/S & Service Provider Exam Certification Guide
distribute-list prefix filter-ospf1 in Serial0/0
distribute-list prefix filter-ospf2 in Serial0/1
!
ip prefix-list filter-ospf1 seq 5 deny 2.2.2.2/32
ip prefix-list filter-ospf1 seq 10 deny 3.3.3.3/32
ip prefix-list filter-ospf1 seq 15 permit 0.0.0.0/0
!
ip prefix-list filter-ospf2 seq 5 deny 3.3.3.3/32
ip prefix-list filter-ospf2 seq 10 deny 4.4.4.4/32
ip prefix-list filter-ospf2 seq 15 permit 0.0.0.0/0
distribute-list prefix filter-eigrp out eigrp 1
!
ip prefix-list filter-eigrp seq 5 permit 4.4.4.0/24
8.15.8
Handling of MOSPF LSAs
Ignore lsa mospf
Cisco 不支持 MOSPF 路由,缺省情况下会接受 Type6-LSA,路由器不支持,但会产生 syslog,
此命令可以阻止 syslog 产生
8.15.9
Logging OSPF Neighbor Changes
Log-adjacency-changes {detail}
产生 OSPF 邻接关系变化的 log。
Logging buffered 4096 debugging
Log-adjacency-changes detail
#show logging
00:56:38: %OSPF-5-ADJCHG: Process 1, Nbr 2.2.2.2 on Ethernet0/0 from FULL to DOWN,
Neighbor Down: Interface down or detached
00:56:43: %OSPF-5-ADJCHG: Process 1, Nbr 2.2.2.2 on Ethernet0/0 from DOWN to INIT,
Received Hello
00:56:43: %OSPF-5-ADJCHG: Process 1, Nbr 2.2.2.2 on Ethernet0/0 from INIT to 2WAY,
2-Way Received
00:56:43: %OSPF-5-ADJCHG: Process 1, Nbr 2.2.2.2 on Ethernet0/0 from 2WAY to
EXSTART, AdjOK?
00:56:43: %OSPF-5-ADJCHG: Process 1, Nbr 2.2.2.2 on Ethernet0/0 from EXSTART to
EXCHANGE, Negotiation Done
00:56:43: %OSPF-5-ADJCHG: Process 1, Nbr 2.2.2.2 on Ethernet0/0 from EXCHANGE to
LOADING, Exchange Done
00:56:43: %OSPF-5-ADJCHG: Process 1, Nbr 2.2.2.2 on Ethernet0/0 from LOADING toFULL,
Loading Done
P a g e | 98
CCIE R/S & Service Provider Exam Certification Guide
8.15.10
Multiple Path Configuration
Maximum-paths number-of-paths
默认是 4 条路径的负载均衡,可以自行设置负载均衡链路条路
8.15.11
参数范围 1 ~ 6
OSPF neighbor Commands
Neighbor ip-address
OSPF 对待 NBMA 网络和其他任何广播网络一样,OSPF 认为这类网络具有广播特性,
但必须使用 neighbor 命令建立一个 OSPF 邻居。在引入 ip ospf network 接口命令前,
使用 neighbor 配置 OSPF 邻居
利用 Cisco 路由器模拟帧中继交换机配置如下
Frame Switch
hostname frame-relay
!
frame-relay switching
!
interface Serial1/0
no ip address
no ip directed-broadcast
encapsulation frame-relay
no ip mroute-cache
no fair-queue
clockrate 2015232
frame-relay lmi-type ansi
frame-relay intf-type dce
frame-relay route 101 interface Serial1/1 110
frame-relay route 102 interface Serial1/2 120
frame-relay route 103 interface Serial1/3 130
P a g e | 99
CCIE R/S & Service Provider Exam Certification Guide
由于帧中继交换机是全互连的,路由器通过反向 ARP 获得所有特定接口的 DLCI,关闭
路由器 A,B 的反向 ARP,并把适当 IP 映射到相应的 DLCI。
路由器 AB 配置如下
Router A
interface Serial0/0
ip address 10.1.1.1 255.255.255.252
encapsulation frame-relay
frame-relay map ip 10.1.1.2 101 broadcast
no frame-relay inverse-arp
frame-relay lmi-type ansi
Router B
interface Serial0
ip address 10.1.1.2 255.255.255.252
encapsulation frame-relay
frame-relay map ip 10.1.1.1 110 broadcast
no frame-relay inverse-arp
frame-relay lmi-type ansi
但一方加入 neighbor,邻居关系即将建立,并选举出 DR。
//OSPF neighbor 只需配置一端
P a g e | 100
CCIE R/S & Service Provider Exam Certification Guide
如上图所示:
如果多个邻居,在同一子网内,则可以在 A 上指定 Neighbor
neighbor 10.1.1.3
neighbor 10.1.1.2
如果不在相同子网内,则在 B,C 上指定 Neighbor
B: neighbor 10.1.1.1
C: neighbor 10.1.1.1
Neighbor ip-address cost cost
帧中继接口在 OSPF 下 Cost 为 48,Neighbor cost 命令仅用于点到多点的网络
可以在接口上使用 ip ospf network point-to-multipoint 更改接口网络类型
Neighbor 10.1.1.1 cost 10
Neighbor ip-address database-filter all out
此命令为了防止 LSA 泛洪到指定的邻居。 许多 ISP 在 OSPF 邻居间使用冗余电路,当一个 OSPF
路由器收到一个 LSA,则 LSA 在所有的 OSPF 接口上泛洪,除了收到 LSA 的接口。 可以使用该命
令阻止其中一个邻接 LSA 的扩散
neighbor 10.1.1.6 database-filter all out
也可以在接口上启用
Ip ospf database-filter all out
注意: 该命令仅用于 p-to-mp 或者 NBMA 类型接口
如果 OSPF 邻居具有全连接,那么 database-filter all out 应该有效
Neighbor ip-address poll-interval interval
如果在终止间隔内没有从邻居处收到 hello packet,那么这个邻居是被宣告 down 的,当 down 后,
hello 包会以论询间隔指定的速率发送到这个邻居,但这个选项不能用于 p-to-mp 接口上.仅在
NBMA 网络使用
router ospf 1
network 1.1.1.1 0.0.0.0 area 1
P a g e | 101
CCIE R/S & Service Provider Exam Certification Guide
network 10.1.1.0 0.0.0.3 area 0
neighbor 10.1.1.2 poll-interval 90
可以通过 show ip ospf neighbor detail 查询
rtrA#show ip ospf neighbor detail
Neighbor 2.2.2.2, interface address 10.1.1.2
In the area 0 via interface Serial0/0
Neighbor priority is 0, State is FULL, 17 state changes
DR is 10.1.1.2 BDR is 10.1.1.1
Poll interval 90
Options 2
Dead timer due in 00:01:31
Neighbor ip-address priority
priority
设置邻居的 priority 用于影响 DR 选举,默认 priority 为 10 不参与选择
Router B
router ospf 1
network 2.2.2.2 0.0.0.0 area 2
network 10.1.1.0 0.0.0.3 area 0
neighbor 10.1.1.1 priority 2
则此时 neighbor 的优先级低于 routerB, routerB 成为 DR
8.15.12
OSPF network Command
network ip-address wild-card-mask area area-id
用于通告和定义 OSPF 的区域,其中要使用 wild-card-mask Area-id
可以使用 点分 10 进制的形式
8.15.13
Passive OSPF Interfaces
passive-interface interface-name interface-number
使用被动接口减少协议流量,由于 OSPF 有 hello 机制,相对于 RIP,OSPF 端口 passive 以后,
邻居关系立即断开,而 Rip 还可以接受路由更新信息
P a g e | 102
CCIE R/S & Service Provider Exam Certification Guide
Router B
router ospf 1
redistribute bgp 1 subnets
passive-interface Serial1
network 2.2.2.2 0.0.0.0 area 2
network 10.1.1.0 0.0.0.3 area 0
network 10.1.1.4 0.0.0.3 area 0
passive-interface default
如果某些路由器需要 passive 的端口太多,可以设置 passive-interface default。
然后,no passive-interface 打开一些关键接口
router ospf 1
passive-interface default
no passive-interface Serial0/1
network 10.1.0.0 0.0.255.255 area 0
8.15.14
Route Redistribution
redistribute routing-process process-id [tag|metric|metic-type|subnets|route-map]
*routing-process:
BGP EGP Connected EIGRP IGRP ISIS ISO-IGRP Mobile ODR OSPF
RIP and Static
P a g e | 103
CCIE R/S & Service Provider Exam Certification Guide
BGP 缺省重分布度量 1 其他协议为 20
*ospf-metric:
附加到重分布路由的一个 32 位的值,OSPF 没有使用路由标记,
*tag-value:
但可以在用于指定策略的路由映射中引用,缺省标记为 0
缺省情况下,OSPF 仅重分布有类路由
Redistribution eigrp 1
可以修改外部路由类型 E1 or E2 以及 metric
Redistribution eigrp 1 metric 66 metric-type 1
同时支持无类路由分布到 OSPF 中
Redistribution eigrp 1 metric 66 metric-type 1 subnets
可以通过 tag 标记路由条目
Redistribution eigrp 1 metric 66 metric-type 1 subnets tag 555
利用 route-map 控制重分布
Router B
router ospf 1
redistribute eigrp 1 subnets route-map control-eigrp
!
access-list 1 permit 6.0.0.0 0.15.255.255
access-list 1 permit 146.6.0.0 0.0.15.255
access-list 1 permit 206.6.6.0 0.0.0.15
access-list 1 permit 10.1.1.4 0.0.0.3
route-map control-eigrp permit 10
match ip address 1
利用 route-map 控制重分布,并修改 metric 值,并做标记
Router B
router ospf 1
redistribute eigrp 1 subnets route-map control-eigrp
!
P a g e | 104
CCIE R/S & Service Provider Exam Certification Guide
access-list 1 permit 6.0.0.0 0.15.255.255
access-list 1 permit 146.6.0.0 0.0.15.255
access-list 1 permit 206.6.6.0 0.0.0.15
access-list 1 permit 10.1.1.4 0.0.0.3
route-map control-eigrp permit 10
match ip address 1
set metric 200
set metric-type type-1
set tag 2
!
route-map control-eigrp permit 20
set metric 100
set metric-type type-1
set tag 2
如上图,基于标签来控制路由的重分布
Router A
router rip
version 2
redistribute ospf 1 metric 1 route-map check-tags
passive-interface Serial0/1
network 10.0.0.0
no auto-summary
!
route-map check-tags permit 10
match tag 1
8.15.15 Controlling the OSPF Router ID
Router-id ip-address
手工指定路由器的 router-id,建议配置时手工设置,以增加 RID 的稳定性。CCIE 试验时,手
工设置一次,避免扣分
另 ipv6 环境的 RID,仍然是现有的 ipv4 表示方法,但必须手工设置一次
8.15.16
Summarizing External Routes
Summary-address ip-address [advertise | not-advertise]
汇聚路由可以应用到从动态路由选择协议,静态路由和连接路由再次分布的路由上。
只可用在 ASBR 和 ABR 上默认参数为 advertise
not-advertise 关键词阻止汇聚路由被 ABR,ASBR 广播
P a g e | 105
CCIE R/S & Service Provider Exam Certification Guide
汇总前
O E2
2.2.2.2 [110/20] via 10.1.1.2, 00:03:17, Serial0/1
156.26.0.0/28 is subnetted, 4 subnets
O E2
156.26.32.32 [110/20] via 10.1.1.2, 00:03:17, Serial0/1
O E2
156.26.32.48 [110/20] via 10.1.1.2, 00:03:17, Serial0/1
O E2
156.26.32.0 [110/20] via 10.1.1.2, 00:02:52, Serial0/1
O E2
156.26.32.16 [110/20] via 10.1.1.2, 00:03:17, Serial0/1
汇总
summary-address 156.26.32.0 255.255.255.192
路由表:
O E2
2.2.2.2 [110/20] via 10.1.1.2, 00:05:36, Serial0/1
156.26.0.0/26 is subnetted, 1 subnets
O E2
156.26.32.0 [110/20] via 10.1.1.2, 00:00:21, Serial0/1
注意:此命令仅用在 ASBR 上 用于汇总外部路由
Summary-address ip-address tag
用于对汇总路由标记,如下例在 OSPF 重分布到 RIP 时,对特定标记的路由进行重分布
Router B
router ospf 1
summary-address 156.26.32.0 255.255.255.224 tag 88
summary-address 156.26.32.32 255.255.255.224 tag 42
network 10.1.1.0 0.0.0.3 area 1
Router A
router rip
P a g e | 106
CCIE R/S & Service Provider Exam Certification Guide
version 2
redistribute ospf 1 metric 1 route-map checktags
passive-interface Serial0/1
network 10.0.0.0
no auto-summary
!
route-map checktags permit 10
match tag 88
8.15.17
OSPF Timers
timers lsa-group-pacing seconds
用于 LSA 更新,以前仅一个计时器,每 30min,路由器会检查整个 LSDB 并更新每个 LSA。
但这样将会导致路由器 CPU 周期性的高负载及周期性的高网络使用率。LSA-group-pacing 就
是用于解决这个问题的,路由器将 LSA 分组并指定更新 校验 老化功能的步调。对于一个快
速路由器和一个慢速路由器点对点连接以及几个邻居同时向一个路由器发送分组的情况,为
了增加效率和减少重传几率可以适当的增加 time, 默认时间为 33ms
timers lsa-group-pacing 180
rtrA#show ip ospf timer lsa-group
OSPF Router with ID (1.1.1.1) (Process ID 1)
Group size 6, Head 0, Search Index 4, Interval 180 sec
Next update due in 00:00:22
Current time 134571
Index 0 Timestamp 134593
Index 1 Timestamp 134777
Index 2 Timestamp 134971
Index 3 Timestamp 135153
Index 4 Timestamp 135351
Index 5 Timestamp 135544
Timers spf delay interval
用于修改 SPF 计算的延迟和间隔,默认时间为 5s/10s
traffic-share min across-interfaces
用于和 IGRP EIGP 一起是用来支持非等价负载均衡,该命令作为 OSPF 下一个选项出现,
但不应用到 OSPF 中
8.15.18 Interface Configuration Commands
ip ospf authentication
在 IOS12.0 以前,如果对 OSPF 一个区域进行认证,该区域的所有接口将配置相同的认证。
该命令允许在接口认证上与区域使用的认证类型不同
ip ospf authentication
P a g e | 107
CCIE R/S & Service Provider Exam Certification Guide
ip ospf authentication-key laura
ip ospf authentication message-digest
ip ospf message-digest-key 1 md5 laura
ip ospf message-digest-key 2 md5 kaka
//相对于明文认证,MD5 可以更换密钥,同时不中断链路
ip ospf authentication null
ip ospf cost
修改接口的 OSPF 成本值,但建议使用 autocost reference-bandwidth 来修改参考值
ip ospf database-filter all out
用来阻止接口上的 LSA 扩散。许多 ISP 在 OSPF 邻居将使用冗余的链路。可以使 ISP 在频繁扩
散和可靠扩散间进行选择。
Router A
interface Serial0/1
ip ospf database-filter all out
ip ospf hello/dead-interval
hello/失效计时器,默认为 hello-interval 的 4 倍。即邻居 down 了以后,发送 4 次 hello packet
无应答,则宣告邻居失效,注意:设置时间总应大于 hello-interval
1.如果链路上两端 hello/dead interval 不匹配,邻居关系无法建立
2.如果 dead < hello ,邻居关系会反复震荡
ip ospf demand-circuit
对于某些按流量或者时间收费的线路,此命令允许在拓扑相对稳定的情况下,定期禁用 hello
消息,LSA 的定期更新也不会传至该接口,关闭底层的数据链路层。从而减少流量和使用时
间
ip ospf mtu-ignore
如果相邻的 OSPF 路由器的 MTU 单元不匹配,将无法形成邻接关系,此命令忽略 mtu 影响
例如 Cisco Catalyst 3550 的 3 层口和路由器直连时,如果该口不是 SVI,则连接路由器运行
OSPF 将会发生邻接关系震荡, 此 bug 则是 MTU 不匹配造成的.
ip ospf network
OSPF 网络分以下 3 种形式
1. A broadcast multi-access network 所有该网络相关的路由器都可以与其他所有路由器直
P a g e | 108
CCIE R/S & Service Provider Exam Certification Guide
连通信,例如以太网 FDDI tokenring
2. A point-to-point network 这种网络只有 2 台路由器,如 HDLC PPP
例如 FR x.25 等,所有的路由器都可能与其他有连接,其实质是逻辑上的点
3. NBMA
到点连接
Broadcast
如右图,对于 FR 线路将网络类型改为 broadcast 后,将建立邻居关系,并选举 DR/BDR。
interface Serial0/0
bandwidth 64
ip address 10.1.1.1 255.255.255.248
encapsulation frame-relay
ip ospf network broadcast
frame-relay map ip 10.1.1.2 101 broadcast
frame-relay map ip 10.1.1.3 102 broadcast
no frame-relay inverse-arp
frame-relay lmi-type ansi
non-Broadcast
OSPF 通过多点传送发送 Hello 包及其他协议包,如果网络不支持多点传送,或者只希
望 OSPF 使用单点传送与邻居通信,这可以使用该命令,将网络类型转换为非广播型,
必须使用 neighbor 指定邻居
Point-to-multipoint non-Broadcast
用来把一个 NBMA 型网络配置成多点网络。OSPF 使用多点传送在点到多点网络上发送
Hello 包和其他协议包。在一些网络上,如 ATM,连接是动态的,hello 包仅在已经建立
的连接上传送
如上图,A 可以设置为 P-MP
B,C 设置为 P-P
P-MP hello-interval 30s
P-P hello-interval 10s
故要修改默认的 hello/dead-interval
另一种方案是,将 BC 均改为 P-MP 类型。相对于广播型,不能选举 DR/BDR
Point-to-Point
如上图,如果要配置成 P2P 的网络结构,路由器 A 上将启用子接口,并将网络类型都
设置为 P2P,此时 FR 的 Inverse-arp 将自动失效
ip ospf priority
用于在 DR,BDR 选举时,设置端口优先级,1 位最高优先级 0 为不参与 DR/BDR 选举。
P a g e | 109
CCIE R/S & Service Provider Exam Certification Guide
注意:非 DR/BDR 最好将其优先级设置为 0,保证 DR/BDR 选择不会出现异常
ip ospf [retransmit-interval | transmit-delay]
LSA 重传间隔及传送延迟,默认时间 5s/1s
8.15.19 Show Commands
Show ip ospf process-id
查看 OSPF 进程的信息,可以使用如下正则表达式
show ip ospf | begin regular-expression
show ip ospf | exclude regular-expression
show ip ospf | include regular-expression
r2#show ip ospf
Routing Process "ospf 1" with ID 2.2.2.2
//显示 RID 及路由进程
Supports only single TOS(TOS0) routes
Supports opaque LSA
It is an area border router //路由器类型,可能为 ABR ASBR
SPF schedule delay 5 secs,Hold time between two SPFs 10 secs
//SPF 保持时间及计算延迟
Minimum LSA interval 5 secs. Minimum LSA arrival 1 secs
Number of external LSA 1. Checksum Sum 0xAB1F
Number of opaque AS LSA 0. Checksum Sum 0x0
Number of DCbitless external and opaque AS LSA 0
Number of DoNotAge external and opaque AS LSA 0
Number of areas in this router is 4. 4 normal 0 stub 0 nssa
//OSPF 区域类型
External flood list length 0
Area BACKBONE(0) //特定的区域信息分类输出
Number of interfaces in this area is 3
//区域内接口个数
Area has no authentication
//区域认证类型
SPF algorithm executed 19 times
//SPF 计算次数
Area ranges are
Number of LSA 15. Checksum Sum 0x7A630
Number of opaque link LSA 0. Checksum Sum 0x0
Number of DCbitless LSA 0
Number of indication LSA 0
Number of DoNotAge LSA 5
Flood list length 0
Area 2
Number of interfaces in this area is 1
P a g e | 110
CCIE R/S & Service Provider Exam Certification Guide
Area has no authentication
SPF algorithm executed 2 times
Area ranges are
Number of LSA 12. Checksum Sum 0x7AB94
Number of opaque link LSA 0. Checksum Sum 0x0
Number of DCbitless LSA 0
Number of indication LSA 0
Number of DoNotAge LSA 0
Flood list length 0
Area 9
Number of interfaces in this area is 2
Area has no authentication
SPF algorithm executed 3 times
Area ranges are
8.8.8.0/27 Active(1) Advertise
//指出 OSPF 路由是否使用 Area range 汇总
Number of LSA 12. Checksum Sum 0x6FB7C
Number of opaque link LSA 0. Checksum Sum 0x0
Number of DCbitless LSA 0
Number of indication LSA 0
Number of DoNotAge LSA 0
Flood list length 0
show ip ospf border-routers
show ip ospf process-id border-routers
查询边界路由器的信息
r6#show ip ospf border-routers
OSPF Process 1 internal Routing Table
Codes: i - Intra-area route, I - Inter-area route
I 4.4.4.4 [122] via 10.1.1.18, Serial0/1, ASBR, Area 7, SPF 5
i 1.1.1.1 [48] via 10.1.1.18, Serial0/1, ABR, Area 7, SPF 5
show ip ospf database
此命令用于查看 LSDB 的信息,针对不同的类型,查询参数较多
其中包含如下参数
show ip ospf process-id database
show ip ospf database adv-router router-id
show ip ospf process-id database adv-router router-id
show ip ospf database asbr-summary
show ip ospf process-id database asbr-summary
show ip ospf database asbr-summary asbr-id
show ip ospf process-id database asbr-summary asbr-id
show ip ospf database database-summary
P a g e | 111
CCIE R/S & Service Provider Exam Certification Guide
show ip ospf process-id database database-summary
show ip ospf database external
show ip ospf process-id database external
show ip ospf database network
show ip ospf process-id database network
show ip ospf database nssa-external
show ip ospf process-id database nssa-external
show ip ospf database router
show ip ospf process-id database router
show ip ospf database self-originate
show ip ospf process-id database self-originate
show ip ospf database summary
show ip ospf process-id database summary
例如: show ip ospf database adv-router 1.1.1.1
OSPF Router with ID (6.6.6.6) (Process ID 1)
Router Link States (Area 7)
Link ID
ADV Router
1.1.1.1
1.1.1.1
Age
431
Seq#
Checksum Link count
0x80000012 0x2714
2
Summary Net Link States (Area 7)
Link ID
ADV Router
1.1.1.1
1.1.1.1
431
0x80000010 0x29FB
2.2.2.2
1.1.1.1
431
0x80000010 0x7D63
4.4.4.4
1.1.1.1
431
0x80000010 0x8549
8.8.8.0
1.1.1.1
431
0x80000003 0x18E4
10.1.1.0
1.1.1.1
431
0x80000010 0x24BC
10.1.1.4
1.1.1.1
431
0x80000010 0x3785
10.1.1.12
1.1.1.1
431
0x80000010 0xF1A8
//正在广播的路由
RID
Age
这条 LSA 历时
Seq#
LSA 序列号
Checksum
检验和
172.16.1.0
1.1.1.1
1198
0x80000013 0x213
172.16.2.0
1.1.1.1
431
0x80000010 0x9888
Summary ASB Link States (Area 7)
Link ID
ADV Router
4.4.4.4
1.1.1.1
Age
431
查询 ASBR LSDB 汇总如下
r6#show ip ospf database asbr-summary
P a g e | 112
Seq#
Checksum
0x80000010 0x6D61
CCIE R/S & Service Provider Exam Certification Guide
OSPF Router with ID (6.6.6.6) (Process ID 1)
Summary ASB Link States (Area 7)
Routing Bit Set on this LSA
LS age: 1124
Options: (No TOS-capability, DC, Upward)
LS Type: Summary Links(AS Boundary Router)
Link State ID: 4.4.4.4 (AS Boundary Router address) //ASBR 的 RID
Advertising Router: 1.1.1.1 //正在广播 LSA 的路由器的 RID
LS Seq Number: 80000010
Checksum: 0x6D61
Length: 28
Network Mask: /0
TOS: 0 Metric: 74
show ip ospf flood-list
扩展参数: show ip ospf process-id flood-list interface-name interface-number
r4#show ip ospf flood-list
OSPF Router with ID (4.4.4.4) (Process ID 1)
Interface Serial0/0, Queue length 0
Interface Ethernet1/0, Queue length 0
Interface Ethernet0/0, Queue length 0
Interface Loopback0, Queue length 0
show ip ospf {process-id} interface {int-name int-num}
r4#show ip ospf 1 interface ethernet 1/0
Ethernet1/0 is up, line protocol is up
Internet Address 172.16.2.2/24, Area 0
Process ID 1, Router ID 4.4.4.4, Network Type BROADCAST, Cost: 10
Transmit Delay is 1 sec, State DR, Priority 1
Designated Router (ID) 4.4.4.4, Interface address 172.16.2.2
Backup Designated router (ID) 2.2.2.2, Interface address 172.16.2.1
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
Hello due in 00:00:08
Index 2/2, flood queue length 0
Next 0x0(0)/0x0(0)
Last flood scan length is 3, maximum is 3
Last flood scan time is 0 msec, maximum is 0 msec
Neighbor Count is 1, Adjacent neighbor count is 1
P a g e | 113
CCIE R/S & Service Provider Exam Certification Guide
Adjacent with neighbor 2.2.2.2 (Backup Designated Router)
Suppress hello for 0 neighbor(s)
show ip ospf {process-id} neighbor detail {neighbor-id} {int-name int-num}
查看邻居状态,详细信息等,根据路由进程 接口和邻居的 RID 可以分类查询
r2#show ip ospf neighbor
Neighbor ID
Pri
State
Dead Time
Address
00:00:35
Interface
4.4.4.4
1
FULL/DR
172.16.2.2
Ethernet0/0
3.3.3.3
1
FULL/
-
00:00:38
10.1.1.6
Serial0/1
1.1.1.1
1
FULL/
-
00:00:38
10.1.1.1
Serial0/0
r2#show ip ospf neighbor detail 1.1.1.1
Neighbor 1.1.1.1, interface address 10.1.1.1
In the area 1 via interface Serial0/0
Neighbor priority is 1, State is FULL, 12 state changes
DR is 0.0.0.0 BDR is 0.0.0.0
Options is 0x2
Dead timer due in 00:00:38
Neighbor is up for 4d02h
Index 1/1, retransmission queue length 0, number of retransmission
First 0x0(0)/0x0(0) Next 0x0(0)/0x0(0)
Last retransmission scan length is 1, maximum is 1
Last retransmission scan time is 0 msec, maximum is 0 msec
show ip ospf {process-id} request-list {neighbor-id} {int-name int-num}
用于显示 OSPF 邻居的请求列表信息
r2#show ip ospf request-list 3.3.3.3
OSPF Router with ID (2.2.2.2) (Process ID 1)
Neighbor 3.3.3.3, interface Serial0/1 address 10.1.1.6
Type
LS ID
1 3.3.3.3
ADV RTR
3.3.3.3
Seq NO
Age
0x8000020C 9
show ip ospf {process-id} retransmission } {int-name int-num}
用于显示等待再次发送 LSA 的列表
r2#show ip ospf retransmission-list serial 0/0
OSPF Router with ID (2.2.2.2) (Process ID 1)
Neighbor 1.1.1.1, interface Serial0/0 address 10.1.1.1
P a g e | 114
Checksum
0x657
CCIE R/S & Service Provider Exam Certification Guide
Link state retransmission due in 2969 msec, Queue length 2
Type
LS ID
1 2.2.2.2
ADV RTR
2.2.2.2
Seq NO
0x80000219
Age
0
Checksum
0xB123
show ip ospf {process-id} summary-address
用于显示在路由器上已经配置的汇聚路由
r4#show ip ospf summary-address
OSPF Process 1, Summary-address
169.254.0.0/255.254.0.0 Metric 10, Type 2, Tag 0
show ip ospf {process-id} virtual-links
r1#show ip ospf virtual-links
Virtual Link OSPF_VL0 to router 2.2.2.2 is up
Run as demand circuit
DoNotAge LSA allowed.
Transit area 1, via interface Serial0/0, Cost of using 64
Transmit Delay is 1 sec, State POINT_TO_POINT,
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
Hello due in 00:00:01
Adjacency State FULL (Hello suppressed)
8.15.20
debug Commands
debug ip ospf adj
用来显示有关邻居关系的信息
r6#debug ip ospf adj
OSPF adjacency events debugging is on
r6#clear ip ospf process
Reset ALL OSPF processes? [no]: yes
r6#
6w3d: OSPF: Interface Loopback0 going Down
6w3d: OSPF: 6.6.6.6 address 6.6.6.6 on Loopback0 is dead, state DOWN
6w3d: OSPF: Interface Serial0/1 going Down
6w3d: OSPF: 6.6.6.6 address 10.1.1.17 on Serial0/1 is dead, state DOWN
6w3d: OSPF: 1.1.1.1 address 10.1.1.18 on Serial0/1 is dead, state DOWN
6w3d: %OSPF-5-ADJCHG: Process 1, Nbr 1.1.1.1 on Serial0/1 from FULL to DOWN,
Neighbor Down: Interface down or detached
P a g e | 115
CCIE R/S & Service Provider Exam Certification Guide
6w3d: OSPF: Interface Loopback0 going Up
6w3d: OSPF: Interface Serial0/1 going Up
6w3d: OSPF: Build router LSA for area 7, router ID 6.6.6.6, seq 0x80000001
6w3d: OSPF: 2 Way Communication to 1.1.1.1 on Serial0/1, state 2WAY
6w3d: OSPF: Send DBD to 1.1.1.1 on Serial0/1 seq 0x12F4 opt 0x42 flag 0x7 len 32
6w3d: OSPF: Rcv DBD from 1.1.1.1 on Serial0/1 seq 0x2071 opt 0x2 flag 0x7 len 32 mtu
1500 state EXSTART
6w3d: OSPF: First DBD and we are not SLAVE
6w3d: OSPF: Rcv DBD from 1.1.1.1 on Serial0/1 seq 0x12F4 opt 0x2 flag 0x2 len 272 mtu
1500 state EXSTART
6w3d: OSPF: NBR Negotiation Done. We are the MASTER
6w3d: OSPF: Send DBD to 1.1.1.1 on Serial0/1 seq 0x12F5 opt 0x42 flag 0x3 len 52
6w3d: OSPF: Database request to 1.1.1.1
6w3d: OSPF: sent LS REQ packet to 10.1.1.18, length 144
6w3d: OSPF: Rcv DBD from 1.1.1.1 on Serial0/1 seq 0x12F5 opt 0x2 flag 0x0 len 32 mtu
1500 state EXCHANGE
6w3d: OSPF: Send DBD to 1.1.1.1 on Serial0/1 seq 0x12F6 opt 0x42 flag 0x1 len 32
6w3d: OSPF: Rcv DBD from 1.1.1.1 on Serial0/1 seq 0x12F6 opt 0x2 flag 0x0 len 32 mtu
1500 state EXCHANGE
6w3d: OSPF: Exchange Done with 1.1.1.1 on Serial0/1
6w3d: OSPF: Synchronized with 1.1.1.1 on Serial0/1, state FULL
6w3d: %OSPF-5-ADJCHG: Process 1, Nbr 1.1.1.1 on Serial0/1 from LOADING to FULL,
Loading Done
部分错误信息
6w3d: OSPF: Rcv pkt from 10.1.1.18, Serial0/1, area 0.0.0.17
mismatch area 0.0.0.7 in the header
debug ip ospf events
查询 OSPF 事件,如邻接形成 Hello 包 LSA 扩散 DR 选择及 SPF 计算
r6#debug ip ospf events
OSPF events debugging is on
r6#clear ip ospf process
Reset ALL OSPF processes? [no]: yes
r6#
6w4d: OSPF: Rcv hello from 1.1.1.1 area 7 from Serial0/1 10.1.1.18
6w4d: OSPF: 2 Way Communication to 1.1.1.1 on Serial0/1, state 2WAY
6w4d: OSPF: Send DBD to 1.1.1.1 on Serial0/1 seq 0x22BC opt 0x42 flag 0x7 len 32
6w4d: OSPF: End of hello processing
P a g e | 116
CCIE R/S & Service Provider Exam Certification Guide
6w4d: OSPF: Rcv DBD from 1.1.1.1 on Serial0/1 seq 0x1D6E opt 0x2 flag 0x7 len 32 mtu
1500 state EXSTART
6w4d: OSPF: First DBD and we are not SLAVE
6w4d: OSPF: Rcv DBD from 1.1.1.1 on Serial0/1 seq 0x22BC opt 0x2 flag 0x2 len 272 mtu
1500 state EXSTART
6w4d: OSPF: NBR Negotiation Done. We are the MASTER
6w4d: OSPF: Send DBD to 1.1.1.1 on Serial0/1 seq 0x22BD opt 0x42 flag 0x3 len 52
6w4d: OSPF: Database request to 1.1.1.1
6w4d: OSPF: sent LS REQ packet to 10.1.1.18, length 144
6w4d: OSPF: Rcv DBD from 1.1.1.1 on Serial0/1 seq 0x22BD opt 0x2 flag 0x0 len 32 mtu
1500 state EXCHANGE
6w4d: OSPF: Send DBD to 1.1.1.1 on Serial0/1 seq 0x22BE opt 0x42 flag 0x1 len 32
6w4d: OSPF: Rcv DBD from 1.1.1.1 on Serial0/1 seq 0x22BE opt 0x2 flag 0x0 len 32 mtu
1500 state EXCHANGE
6w4d: OSPF: Exchange Done with 1.1.1.1 on Serial0/1
6w4d: OSPF: Synchronized with 1.1.1.1 on Serial0/1, state FULL
6w4d: %OSPF-5-ADJCHG: Process 1, Nbr 1.1.1.1 on Serial0/1 from LOADING to FULL,
Loading Done
调试一个 OSPF 邻接问题
r6#debug ip ospf events
OSPF events debugging is onr6#
6w4d: OSPF: Rcv hello from 1.1.1.1 area 7 from Serial0/1 10.1.1.18
6w4d: OSPF: Mismatched hello parameters from 10.1.1.18
6w4d: OSPF: Dead R 40 C 123, Hello R 10 C 10
//R 代表收到的参数
C 代表本地参数
debug ip ospf {process-id} flood
查看 OSPF 扩散协议所产生的事件
r6#debug ip ospf flood
OSPF flooding debugging is on
r6#clear ip ospf process
Reset ALL OSPF processes? [no]: yes
r6#
6w4d: Inc retrans unit nbr count index 1 (0/1) to 1/1
6w4d: Set Nbr 1.1.1.1 1 first flood info from 0 (0) to 623AA2D8 (300)
6w4d: Init Nbr 1.1.1.1 1 next flood info to 623AA2D8
6w4d: OSPF: Add Type 1 LSA ID 6.6.6.6 Adv rtr 6.6.6.6 Seq 80000125 to Serial0/1
1.1.1.1 retransmission list
P a g e | 117
CCIE R/S & Service Provider Exam Certification Guide
6w4d: OSPF: Start Serial0/1 1.1.1.1 retrans timer
6w4d: Set idb next flood info from 0 (0) to 623AA2D8 (300)
6w4d: OSPF: Add Type 1 LSA ID 6.6.6.6 Adv rtr 6.6.6.6 Seq 80000125 to Serial0/1
flood list
6w4d: OSPF: Start Serial0/1 pacing timer
6w4d: OSPF: Flooding update on Serial0/1 to 224.0.0.5 Area 7
... (many more pages of output!!!)
由于此命令将会产生大量 log,所以可以有选择性的输出
access-list 1 permit 172.16.1.0 0.0.0.255
r6#debug ip ospf flood 1
OSPF flooding debugging is on for access list 1
r6#clear ip ospf process
Reset ALL OSPF processes? [no]: yes
r6#
6w4d: Inc retrans unit nbr count index 1 (0/1) to 1/1
6w4d: Set Nbr 1.1.1.1 1 first flood info from 0 (0) to 623AA408 (303)
6w4d: Init Nbr 1.1.1.1 1 next flood info to 623AA408
6w4d: OSPF: Start Serial0/1 1.1.1.1 retrans timer
6w4d: Set idb next flood info from 0 (0) to 623AA408 (303)
6w4d: OSPF: Start Serial0/1 pacing timer
6w4d: Create retrans unit 0x623B71A8/0x623C5DE8 1 (0/1) 1
6w4d: OSPF: Set nbr 1 (0/1) retrans to 4504 count to 1
6w4d: Set idb next flood info from 623AA408 (303) to 0 (0)
6w4d: OSPF: Stop Serial0/1 flood timer
6w4d: %OSPF-5-ADJCHG: Process 1, Nbr 1.1.1.1 on Serial0/1 from FULL to DOWN,
Neighbor Down: Interface down or detached
6w4d: Dec retrans unit nbr count index 1 (0/1) to 0/0
6w4d: Free nbr retrans unit 0x623B71A8/0x623C5DE8 0 total 0. Also Free nbr
retrans block
6w4d: Set Nbr 1.1.1.1 1 first flood info from 623AA408 (303) to 0 (0)
... (many more pages of output!!!)
debug ip ospf lsa-generation ip-access-list-number
用来显示和摘要 LSA 的发生和扩散有关的信息
r4#debug ip ospf lsa-generation
OSPF summary lsa generation debugging is on
6w4d: OSPF: Start redist-scanning
6w4d: OSPF: Scan the RIB for both redistribution and translation
6w4d: OSPF: net 169.254.0.0 up, new metric decreases: old 16777215, new 10
P a g e | 118
CCIE R/S & Service Provider Exam Certification Guide
6w4d: OSPF: Generate external LSA 169.254.0.0, mask 255.254.0.0, type 5, age 0,
metric 10, tag 0, metric-type 2, seq 0x80000001
6w4d: OSPF: generate external LSA for summary 169.254.0.0 255.254.0.0, metric 10
debug ip ospf packet
r6#debug ip ospf packet
OSPF packet debugging is on
r6#
6w4d: OSPF: rcv. v:2 t:1 l:48 rid:1.1.1.1
aid:0.0.0.7 chk:0 aut:2 keyid:8 seq:0xC from Serial0/1
v:版本号
t:包类型
1-hello
2- Database Description
3-LSR
4-LSU
5-LSAck
l:用字节表示包长度
rid: router-id aid: area-id
aut 0-null 1-text 2-md5 keyid: md5-key
debug ip ospf retransmission
用于显示 OSPF-LSA 的重发事件
debug ip ospf spf [inter | intra | external] acl-num
用于显示 SPF 算法的计算
r4#debug ip ospf spf external
OSPF spf external events debugging is on
r6#
6w4d: OSPF: Started Building Type 5 External Routes
6w4d: OSPF: Start processing Type 5 External LSA 169.254.0.0, mask 255.254.0.0,
adv 4.4.4.4, age 39, seq 0x80000095, metric 10, metric-type 2
6w4d: OSPF: Did not find route to ASBR 4.4.4.4
6w4d: OSPF: ex_delete_old_routes
6w4d: OSPF: Started Building Type 7 External Routes
6w4d: OSPF: ex_delete_old_routes
6w4d: OSPF: Started Building Type 5 External Routes
6w4d: OSPF: Start processing Type 5 External LSA 169.254.0.0, mask 255.254.0.0,
adv 4.4.4.4, age 49, seq 0x80000095, metric 10, metric-type 2
6w4d:
Add better path to LSA ID 169.254.0.0, gateway 10.1.1.18, dist 10
P a g e | 119
CCIE R/S & Service Provider Exam Certification Guide
6w4d:
Add path: next-hop 10.1.1.18, interface Serial0/1
6w4d:
Add External Route to 169.254.0.0. Metric: 10, Next Hop: 10.1.1.18
6w4d: OSPF: insert route list LS ID 169.254.0.0, type 5, adv rtr 4.4.4.4
6w4d: OSPF: ex_delete_old_routes
6w4d: OSPF: Started Building Type 7 External Routes
6w4d: OSPF: ex_delete_old_routes
8.15.21
clear Commands
clear ip ospf {process-id} couters {neighbor neighbor-id} {int-name int-number}
用于重新设置邻居状态变换计数器
clear ip ospf process
用于重新启动 OSPF 进程
clear ip ospf redistribution
用于清除重分布到 OSPF 的路由
8.16
配置OSPF路由
8.16.1 基本配置
配置 OSPF 的 3 个基本步骤:
1. 确保每隔路由器接口相连的区域
2. 使用 router ospf process-id 启动 OSPF
3. 使用 network addr area area-id 来定义参与 OSPF 的网络
process-id 为本地标识符,仅用于标示本地 OSPF 进程
Rubens(config)#router ospf 10
Rubens(config-router)#network 0.0.0.0 255.255.255.255 area 1
最简略的指定参与OSPF进程的方法
Chardin(config)#router ospf 20
Chardin(config-router)#network 192.168.30.0 0.0.0.255 area 1
Chardin(config-router)#network 192.168.20.0 0.0.0.255 area 0
采用Inverse Mask(反掩码)来指定网络
P a g e | 120
CCIE R/S & Service Provider Exam Certification Guide
Goya(config)#router ospf 30
Goya(config-router)#network 192.168.20.0 0.0.0.3 area 0.0.0.0
Goya(config-router)#network 192.168.10.0 0.0.0.31 area 192.168.10.0
使用点分十进制的方式指定区域
Matisse(config)#router ospf 40
Matisse(config-router)#network 192.168.10.2 0.0.0.0 area 192.168.10.0
Matisse(config-router)#network 192.168.10.33 0.0.0.0 area 192.168.10.0
8.16.2 在回环口配置 Router-id
如果一个 OSPF 进程找不到有效的 IP 地址作为 RID,则可以启用 Loopback 接口
Router<config>#int lo 0
Router<config-if>#ip addr 192.168.1.1 255.255.255.0
8.16.3 配置 DNS 解析
ip ospf name-lookup
通过开启 DNS 服务来识别路由器
8.16.4 OSPF 和接口上的第二个 IP 地址
P a g e | 121
CCIE R/S & Service Provider Exam Certification Guide
为路由器 Matisse 的 E0 口配置一个辅助地址,并运行 OSPF
interface Ethernet0
ip address 172.19.35.15 255.255.255.128 secondary
ip address 192.168.10.33 255.255.255.240
!
router ospf 40
network 192.168.10.2 0.0.0.0 area 192.168.10.0
network 192.168.10.33 0.0.0.0 area 192.168.10.0
network 172.19.35.15 0.0.0.0 area 192.168.10.0
辅助地址是和 DNS 服务器以及路由器 Dali 位于同一个子网,根据这个配置,路由器
Matisse 会像它的邻居宣告子网 172.19.35.0/25,但是如果主地址 192.168.10.33 的 network 语
句被删除后,这个辅助网络 172.19.35.0/25 将不会被宣告出去
由于路由器 Matisse 是通过辅助地址和网络 172.19.35.0/25 相连的,因此它不会和
172.19.35.0/25 的路由器建立邻接关系.并且如果有要到达 DNS 服务器的 packet,它将经过路
由器 Matisse 的 E0 口转发,由于 DNS 服务器必须发送一些应答给不属于它所在的那些网络,
它将把这些应答的 packet 发送给作为 DNS 服务器默认网关的路由器 Dali.但是路由器 Dali 没
有和路由器 Matisse 交换了路由信息,所以路由器 Dali 不知道如何到达 OSPF 路由域.解决方法
是在路由器 Dali 上配置一条指向 OSPF 路由域的静态路由:
Dali(config)#ip route 192.168.0.0 255.255.0.0 172.19.35.15
由于静态路由的基于无类的,它可以使用超网来匹配到达 OSPF 路由域的所有目标地址.
并且在这个例子中,路由器 Matisse 并不是 ASBR,它只发送到外部的路由信息,并不接受外部路
由信息,因此它也没有产生任何类型 5 的 LSA(AS External LSA)
8.16.5 Stub 区域配置
可以把区域1设置为stub area,可以在OSPF进程里加入area <area-id> stub命令把区域设置为
stub area.配置如下:
Rubens(config)#router ospf 10
Rubens(config-router)#network 0.0.0.0 255.255.255.255 area 1
Rubens(config-router)#area 1 stub
P a g e | 122
CCIE R/S & Service Provider Exam Certification Guide
Chardin(config)#router ospf 10
Chardin(config-router)#network 192.168.30.0 0.0.0.255 area 1
Chardin(config-router)#network 192.168.20.0 0.0.0.255 area 0
Chardin(config-router)#area 1 stub
区域1被配置成stub area之前路由器Rubens的LSDB中LSA条目为14条
区域1被配置成stub area之后路由器Rubens的LSDB中LSA条目为7条
当 stub area 和 ABR 相连,ABR 将通过 Type3 LSA(Network Summary LSA)
向 stub area 宣告一条默认路由
8.16.6 完全 Stub 区域配置
只需在 area stub 后挂接 no-summary,仅在 ABR 上执行,此时将过滤掉域间路由,只剩
下域内路由和默认路由
8.16.7 在 NBMA 型网络上配置 OSPF
在NBMA网络比如ATM,X.25和帧中继等,需要人工指定邻居.在IOS版本10.0之前,可以使
用命令neighbor <interface ip address>来指定邻居.拓扑图如下:
P a g e | 123
CCIE R/S & Service Provider Exam Certification Guide
Rembrandt
interface Serial0
encapsulation frame-relay
ip address 172.16.2.1 255.255.255.0
frame-relay map ip 172.16.2.2 100
frame-realy map ip 172.16.2.3 300
frame-relay map ip 172.16.2.4 500
!
router ospf 1
network 172.16.0.0 0.0.255.255 area 0
neighbor 172.16.2.2
neighbor 172.16.2.3
neighbor 172.16.2.4
Hals
interface Serial0
encapsulation frame-relay
ip address 172.16.2.2 255.255.255.0
frame-relay map ip 172.16.2.1 600
frame-relay map ip 172.16.2.3 600
frame-relay map ip 172.16.2.4 600
!
router ospf 1
network 172.16.0.0 0.0.255.255 area 0
neighbor 172.16.2.1 priority 10
//这里加了一个参数,priority 10,意思是同时指定邻居的优先级为 10,默认为
0(即不参与 DR/BDR 选举)因此刚才路由器 Rembrandt 在指定邻居的同时分别
指定它们的优先级都为 0(意图明显,让路由器 Rembrandt 作为 DR)
Vandyck
interface Serial0
encapsulation frame-relay
ip address 172.16.2.3 255.255.255.0
frame-relay map ip 172.16.2.1 400
P a g e | 124
CCIE R/S & Service Provider Exam Certification Guide
frame-relay map ip 172.16.2.2 400
frame-relay map ip 172.16.2.4 400
!
router ospf 1
network 172.16.0.0 0.0.255.255 area 0
neighbor 172.16.2.1 priority 10
//在这里别忘记指定邻居的优先级
Brueghel
interface Serial0
encapsulation frame-relay
ip address 172.16.2.4 255.255.255.0
frame-relay map ip 172.16.2.1 200
frame-relay map ip 172.16.2.2 200
frame-relay map ip 172.16.2.3 200
!
router ospf 1
network 172.16.0.0 0.0.255.255 area 0
neighbor 172.16.2.1 priority 10
1. neighbor 命令只是用在老版本的 IOS(10.0 之前)上,在之后的 IOS 版本里,可以在接口配置
模式下使用 ip ospf network 命令改变默认的 OSPF 网络类型
2. 采用全互连的 NBMA 上 DR/BDR 的选举是最有利的,但是这样的成本太高;另 1 种解决方
法是把网络类型改为点到多点,来避免 DR/BDR 的选举问题.点到多点链路把 PVC 当作点
到点链路的集合.
3. 但是这种点到多点的配置,在动态连接的网络比如帧中继 SVC,ATM SVC 等出现问题.在
IOS 版本 11.3AA 之后,可以使用在 ip ospf network point-to-multipoint 之后加个参数
non-broadcast 来解决.但是仍然要人工指定邻居
4. 在 IOS 版本 11.3AA 之后,多了个特性,就是在指定邻居的同时还可以基于每条 VC 来指定
开销
5. 最后一种解决方案是,把每条 PVC 当作 1 条点到点链路,通过划分子接口的方式完成,这
样也消除了 DR/BDR 的选举带来的问题
关于 NBMA 做如下补充:
在配置 NBMA Broadcast 型时注意:
1.
更改 OSPF 接口优先级方式确保中心路由器为 DR
2.
更改接口类型为广播型
3.
为了保证端到端 ping 通,边缘路由器没有直连的 PVC,故在边缘路由器上除了要
做对中心路由器 IP 地址到本地 DLCI 的映射,还要做邻居边缘路由器 IP 到本地 DLCI
P a g e | 125
CCIE R/S & Service Provider Exam Certification Guide
的映射,让中心路由器引导流量
在配置 NBMA P-P 型时注意:
1.
中心路由器要启用子接口,子接口之间出于不同子网,映射子接口到本地 DLCI
2.
在边缘路由器上把接口类型更改为 P-P,并映射同一子网下中心路由器子接口的 IP
地址到本地 DLCI
在配置 NBMA non-broadcast 型时注意:
1.
更改 OSPF 接口优先级方式确保中心路由器为 DR
2.
为了保证端到端 ping 通,边缘路由器没有直连的 PVC,故在边缘路由器上除了要
做对中心路由器 IP 地址到本地 DLCI 的映射,还要做邻居边缘路由器 IP 到本地 DLCI
的映射,让中心路由器引导流量
在配置 NBMA P-MP 型时注意:
1.
中心路由器类型改为 P-MP
2.
边缘路由器如果做为 P-P,只需设置一条中心路由器 IP 到本地 DLCI 的映射,并且
hello_interval 改为 30s
3.
边缘路由器作为 P-MP,需要将邻居路由器和中心路由器的 IP 映射到本地 DLCI
4.
凡是 P-MP 的接口,都会宣告一条该接口的 32 位主机路由给邻居
8.16.8 在按需电路上配置 OSPF
通过在按需电路相连的接口上增加 ip ospf demand-circuits。在按需电路上实现 OSPF 需要注
意:
1.
只有在区域的 LSDB 中的所有 LSA 设置了 DC-bit 后,设置 DoNotAge 位的 LSA 才被允许
进入该区域
2.
实现按需电路上的 OSPF 区域内的说有路由器都必须具有支持这种配置方法的能力
3.
如果运行在按需电路上的 OSPF 是在一个非末节区域实现的,那么所有的非末节区域必
须支持这种方式 因为 DC-bit 是在 type-5LSA 中实现的,Type-5 LSA 可以泛洪到所有的非
末节区域
4.
应该尽量限制在末节,完全末节,NSSA 区域上实现 DC,因为这样可以限制 LSA 的数量,
亦可取消 OSPF 域内的所有路由器支持 DC
5.
如果配置的 DC 上有虚电路穿过,此虚电路亦被认为是按需电路
6.
每 30min 刷新 LSA。但由于设置了 donotAge 的 LSA 在穿越按需电路时不需要刷新,因
此丧失了 OSPF 的稳定特性
7.
重新刷新过程可以在一条按需电路两端外的其他所有接口上发生。结果导致链路 2 端的
LSA 序列号可能会是不同的
8.17
OSPF设计及解决方案
推荐的 OSPF 网络规模如下表
P a g e | 126
参数
Min
Aver
Max
每个域内路由器数目
1
500
1000
每个区域的路由器数目
1
100
350
每个域内区域数目
1
25
75
每个路由器邻居数目
1
50
100
每个路由器的区域数目
1
3
5
CCIE R/S & Service Provider Exam Certification Guide
ABR 的区域数目:每个 ABR 有 2 个区域是最优的
DR/BDR 选择:可以使用 show process cpu/memory 检查
尽量选择负载低,且链路稳定的路由器为了网络稳定,最好设置端口优先级,避免
路由进程重启后导致的 DR/BDR 改变
NBMA 网络: 部分互联网络要比全互联好很多,在一些情况下仔细设计的 P-P 或者 P-MP 网络要
比多点网络工作起来好很多
LSDB 大小: LSDB 的大小对于路由器是否稳定工作十分重要
*路由选择表的每一项需要消耗 200~280 字节,加上每条链路消耗 44 字节
*每个 LSA 消耗 100 字节,加上 LSA 实际长度,大概增加 60~100 字节
因此通常要给少于 500KB 的路由选择表 2~16MB 的 RAM。大于 500KB 大型网络需要
16~64MB 的储存器
检测注意: show memory 最好不要在工作日时间做,在 show memory 之前最好备
份路由器配置,保持较小 OSPF 区域并使用路由汇总将会急剧减少 CPU 使用
OSPF 区域设计概述:
1. 优先考虑物理的临近
2. 如果链路不稳定则减小区域规模
3. 确保连续的区域,尽量避免不必要的虚链路
4. 调整 hello-interval/dead-interval/retransmission-interval/
transmit-delay 来降低链路使用率
5. 区域命名,点分 10 进制和普通 10 进制 2 种。大型多区域最好采用点分 10
进制
6. BB 区域必须连续,否则会对网络稳定性产生影响,当然非连续也可以通过
VL 来修补
7. E1/E2 路由:通常网络有多个从 OSPF AS 到相同外部网络的接入点,使用 E1
路由可以让路由器更好的选择到外部的最短路径,同时大规模网络亦使用 E1。
当网络规模较小时使用 E2
8. 尽量把 ABR 的 loopback 口放入 area 0
OSPF Redistribution:
1. 尽可能将功能不够强大的路由协议重分布到相对功能强大的路由协议中, 例如
RIP 重分布进 OSPF OSPF 重分布进 BGP。但 BGP 重分布进 OSPF 将是一个非常糟糕
的做法
2. 尽可能在一个点上重分布。多点重分布容易产生环路,例如 CCIE_lab 160 的路由环
路
3. 使用路由过滤器,尽量过滤无用路由信息
4. 必要时进行重分布,而不是尽可能重分布
5. 调整管理距离和路由选择度量标准
6. 一直都要设置度量值。
7. 对部分路由信息打标,通过 route-map 过滤分类是一个不错的做法
OSPF Summary-address:
1. IP 编址时尽量考虑到子网的规则分配
2. IP 编址尽量考虑到以后用户的增长
P a g e | 127
CCIE R/S & Service Provider Exam Certification Guide
3. 汇总仅在 ABR,ASBR 进行
4. 如果网络中有 Classful 的路由协议,则必须在边界上进行汇总。
8.18
OSPF排错
8.18.1 Troubleshooting 常用步骤:
1. 清楚地定义问题
2. 收集信息,例如受影响的用
户,网络管理员,改变的配
置,NMS 报告内容,路由器
debug 命令, Cisco 设计缺
陷等
3. 思考可能的问题
4. 制定一个行动计划
5. 执行计划
6. 收集结果
7. 重新执行此过程
8.18.2 Debug 命令使用:
参见前文 command and
configurations 中的相关叙述
8.18.3 OSPF 协议故障排除方法如下
1.
一般故障是由路由信息丢失,错误的或者不精确的路由信息引起的。
2.
show ip ospf database 查看 LSA,如果一条链路是不稳定的,则通告将十分频繁,故其序
列号明显高于其他 LSA
3.
检查 network area 语句是否把所有接口都指定到正确的区域,wild-netmask 是否正确
4.
检查邻接关系时,考虑 hello 报文是否在发送?两端计时器是否相同,可选性能字段是
否相同,接口是否在同一子网邻居是否同一种网络类型
5.
认证类型是否有问题?
6.
虚链路是否正确设置?
7.
如果怀疑 LSDB 有问题,可以 show ip ospf database 查看同区域内每台路由器的 LSA 数量
及类型
8.
分区域检查,如果 stub NSSA 区域,每台路由器都将申明 area stub or area nssa
9.
地址汇总配置是否正确
10. 防止重分布产生的路由环路
8.18.4 OSPF 协议常见故障:
邻居及邻接关系出现问题大致情况如下
1. OSPF 没有在接口上启用,或者一条网络路由器配置命令错误或丢失
2. 不匹配的 Hello 或者计时器,E 位,区域 ID,认证类型或者网络掩码
3. 访问列表错误配置,可能正在阻塞 OSPF hello 包
4. 虚拟链路和末节设置不匹配
5. 接口被定义为 passive-mode
6. 不匹配的认证类型
7. 不匹配的认证密钥
P a g e | 128
CCIE R/S & Service Provider Exam Certification Guide
8. 第 2 层停机
9. 没有在 NBMA 上定义网络类型
10. FR 或 dialer 缺少 broadcast 关键字
8.18.5 OSPF 停滞在 INIT 状态
检查方法如下:
1. 一端正在阻塞 hello 分组
2. 一端 NAT 转换了 OSPF hello 包
3. 一端的组播能力被破坏
4. 肯定是一个 2 层的问题
5. Dialer 或 FR 缺少 broadcast
6. 路由器发送 hello,但没有收到响应
7. 邻居 hello 在 NBMA 云团中消失
8. ACL 或者某些 2 层原因拒绝了 hello 包
初始状态检查
状态=初始,意味着本地路由器已经收
到来自邻居的OSPFhello分组,但邻居还
没有看到这台本地路由器的OSPF hello
分组
NBMA广播检查
相邻接口上正在启用
OSPF认证
Yes
相邻两台路由器认证类
型是否相同?
No
No
ACL检查
认证类型和密
钥必须匹配
Yes
检查物理电缆连接,如
果是LAN交换,检验交换
机设置
P a g e | 129
CCIE R/S & Service Provider Exam Certification Guide
8.18.6 OSPF 停滞在 Exstart/Switching 状态
ExStart/交换状态检
查
问题是否出在MTU或者另一个层2的问
题
MTU是否一样
No
调整MTU或者
忽略
No
问题与2层有关
检查电缆和集
线器
No
打开一个TAC实
例
No
改为P-MP
Yes
使用大型的ping包ping
相邻的接口?
Yes
PRI上邻居检查
需要判定路由器是否在
该PRI接口上支持多个邻
居
邻居是否通过PRI/BRI连
接
Yes
OSPF类型是否为点到多
点?
Yes
ACL检查
P a g e | 130
CCIE R/S & Service Provider Exam Certification Guide
检查方法如下:
1.
MTU 不匹配
2.
邻居 RID 是一致的
3.
单播被破坏
4.
a.
在一个高度冗余的网络中,Frame/ATM 环境中错误的 VC/DLCI 映射
b.
MTU 的问题,不能使用超过某长度的分组
c.
ACL 阻塞单播
d.
NAT 正在转换单播分组
在 PRI 和 BRI/dialer 和网络类型之间是点到点的
8.18.7 OSPF 停滞在 Loading 状态
Loading检查
确定分组是否正遭破坏
Console上是否看到OSPF-4BADLSA type消息
No
如果片刻之后邻居
没有变成full 打开
TAC实例
Yes
表示OSPF分组正在被破
坏,打开TAC实例
a.LSR 产生,但是邻居正在发送一个坏的分组或者被破坏的内存
-show ip ospf request-list
-show loggin
查看坏的 LSA
查看 OSPF-4-BASLSATYPE 消息
b.LSR 产生,但邻居正在忽略这个请求
c.MTU 不匹配,但旧的 IOS 没有发现它
P a g e | 131
CCIE R/S & Service Provider Exam Certification Guide
8.19
OSPF 排错实例
8.19.1 配置错误的区域
现在这个环境里,区域 1 里的数据包的路由的正常的,但是区域间的通信却失败了
首先想到的是,区域间通信失败,问题可能出现在 ABR 上
检查 ABR:
发现区域 0 的邻接关系没有建立,查询 LSDB
有邻接,但是没有通告区域间的目的地址
由于 network area 没有精细配置,导致 S1 口被通告到 Area1。
Whitney(config-router)#network 172.16.192.0 0.0.0.255 area 1
Whitney(config-router)#network 172.16.113.0 0.0.0.255 area 0
P a g e | 132
CCIE R/S & Service Provider Exam Certification Guide
8.20 CCIE 实验中的 OSPF
8.20.1 FR 环境中的 OSPF
拓扑结构如下
R3 B0 -R5 B0 //备份链路,同时实现按需电路
R3 S0.35 p -R5 S0.345 m
R4 S0.45 p -R5 S0.345 m
R5 配置如下
username r3 password 0 kaka
isdn switch-type basic-ni
!
interface Loopback0
ip address 193.0.2.1 255.255.255.0 secondary
ip address 193.0.4.1 255.255.255.0 secondary
ip address 193.0.1.1 255.255.255.0
!
interface Serial0
no ip address
encapsulation frame-relay
no arp frame-relay
no frame-relay inverse-arp
!
interface Serial0.345 multipoint
ip address 1.1.9.5 255.255.255.0
ip ospf network point-to-multipoint
//如果不加,可能路由信息无法更新
//debug ip ospf events 察看 hello interval 和 dead inteval 是否匹配
frame-relay map ip 1.1.9.3 503 broadcast
frame-relay map ip 1.1.9.4 504 broadcast
!
interface BRI0
ip address 1.1.1.1 255.255.255.0
encapsulation ppp
dialer map ip 1.1.1.2 name r3 broadcast 123
dialer-group 1
isdn switch-type basic-ni
isdn spid1 125
cdapi buffers regular 0
cdapi buffers raw 0
cdapi buffers large 0
ppp authentication chap
!
router ospf 1
P a g e | 133
CCIE R/S & Service Provider Exam Certification Guide
log-adjacency-changes
network 1.1.1.0 0.0.0.255 area 0
network 1.1.9.0 0.0.0.255 area 0
network 193.0.0.0 0.0.255.255 area 0
neighbor 1.1.9.4
neighbor 1.1.9.3
!
access-list 101 permit icmp any any
dialer-list 1 protocol ip list 101
R3 的配置
interface Loopback0
ip address 192.168.2.1 255.255.255.0 secondary
ip address 192.168.3.1 255.255.255.0 secondary
ip address 192.168.4.1 255.255.255.0 secondary
ip address 3.3.3.3 255.255.255.0
interface Serial0
no ip address
encapsulation frame-relay
!
interface Serial0.35 point-to-point
ip address 1.1.9.3 255.255.255.0
frame-relay interface-dlci 305
interface BRI0
ip address 1.1.1.2 255.255.255.0
encapsulation ppp
ip ospf demand-circuit //按需电路仅在一端启用即可
dialer map ip 1.1.1.1 name r5 broadcast 125
dialer-group 1
isdn switch-type basic-ni
isdn spid1 123
cdapi buffers regular 0
cdapi buffers raw 0
cdapi buffers large 0
ppp authentication chap
!
router ospf 1
log-adjacency-changes
network 1.1.1.0 0.0.0.255 area 0
network 1.1.9.0 0.0.0.255 area 0
network 3.3.3.0 0.0.0.255 area 0
P a g e | 134
CCIE R/S & Service Provider Exam Certification Guide
network 192.168.0.0 0.0.255.255 area 0
!
ip kerberos source-interface any
ip classless
no ip http server
!
access-list 101 permit icmp any any
dialer-list 1 protocol ip list 101
8.20.2 减少 OSPF 的扩散
Router(config-if)#ip ospf flood-reduction
禁止 LSA 从某些接口发出,可以采用如下命令
Router(config-if)#ospf database-filter all out
同时也可以指定某个邻居不发送 LSA
Router(config-router)#neighbor ip_addr database-filter all out
8.20.3 默认路由
Ip default-network 1.1.1.1
Default-information originate always
8.20.4 重分布产生的路由环路
Eigrp 100 redistribute to Eigrp 200, EIGRP 200
redistribute to OSPF Area 0
由于 EIGRP 重分布到 EIGRP200 ,EIGRP200 中将收到 EIGRP 外部路由,管理距离 170
OSPF Area 0
R1
R2
EIGRP 200
EIGRP 100
P a g e | 135
CCIE R/S & Service Provider Exam Certification Guide
将 EIGRP 重分布到 OSPF 中,此时 R1 通告 OSPF 的路由到 R2,此时 R2 将会收到 2 条同目的网络
的路由:一条管理距离为 170 来自 EIGRP,另一条管理距离为 110 来自 OSPF,故 R2 将选择 R1 作为
下一跳,对于这种环路,可以有多种方法解决
A : EIGRP 100 重分布进 EIGRP 200 时打标,通过 route-map 过滤
B : 修改管理距离,将 EIGRP 200 中外部路由改为 90~110z 之间
但此时会出现一个问题,当 EIGRP100 down 掉后,如果 EIGRP200 尚未收敛,
R1,R2 会向 EIGRP200 通告 OSPF 区域中的 EIGRP100 的网段,这些网络先是因管
理距离被抑制的,但 EGIRP100 坏了以后,它们进入路由表,从而也会产生环路,
但这种环路很少发生,因为 EIGRP 收敛十分迅速。但为了保险,还是建议使用加
tag 过滤的方法,另,有些使用了同时改 Metric 和 AD 的方法也坏死可行的
比较完美的解法:
双向做 tag 过滤,同时修改 AD
router eigrp 200
redistribute ospf 1 metric 10000 100 255 1 1500 route-map o2e
router ospf 1
router-id 1.1.1.1
redistribute eigrp 3 metric 100 subnets route-map e2o
distance 220 2.2.2.2 0.0.0.0
route-map e2o deny 10
match tag 1
route-map e2o permit 20
set tag 10
route-map o2e deny 10
match tag 10
route-map o2e permit 20
set tag 1
P a g e | 136
CCIE R/S & Service Provider Exam Certification Guide
Chapter 9
集成IS-IS路由协议
9.1 集成IS-IS路由协议简介
IS-IS 是 一 种 链 路 状 态 路 由 协 议 , 它 是 由 ISO 定 义 和 发 展 ,IS-IS 支 持 的 是 ISO 的
CLNS(Connectionless Network Protocol,无连接的网络协议),为了能够支持 IP,后来将 IS-IS 扩展为
可以同时支持 OSI 和 TCP/IP 的集成 IS-IS(Integrated IS-IS)
在 IS-IS 中,路由器被描述为是一个中间系统(Intermediate System,IS),主机被描述为端系统
(End System,ES).因此提供主机和路由器之间的通信的协议即为 ES-IS;而路由器之间的通信即为
IS-IS,如下图:
和 IP 中使用 Proxy ARP 或 IRDP,或在主机上配置默认网关不同的是,CLNP 会 ES 和 IS 之间形成
ES-IS 的邻接关系,与 1 个子网相连的接口就叫 SNPA(Subnetwork Point of Attachment).SNPA 并不是
物理接口,它的基本概念和子网的基本概念是相同的
9.2 IS-IS的区域
IS-IS 也定义了 2 层区域的概念,和 OSPF 不同的是,OSPF 的区域是以路由器为边界;而 IS-IS 中是
以链路为边界,如下图:
P a g e | 137
CCIE R/S & Service Provider Exam Certification Guide
连接不同区域的IS为Level 2(L2)路由器,或者是同时具有Level 1和Level 2的L1/L2路由器,L1/L2
路由器要同时分别维持L1和L2的LSDB 。在IS-IS中,也有类似于RID的System ID.由于IS-IS中区域是以
路由器为边界,因此,1个路由器的每个接口上的区域ID都是一样的.在IS-IS中,1个路由器最多可以具
有3个区域ID,这样对区域中的过渡是很有用的
9.3 IS-IS的网络地址
在 IS-IS 中,可以通过 Network Entity Tiyle(NET)来同时定义区域 ID 和系统 ID.即使集成 IS-IS
只使用在一个 TCP/IP 的环境中,由于它是 CLNP 协议,使用的是 CLNS PDU(Protocol Data Unit),所以仍
然要有 1 个 ISO 地址.ISO 地址就是 NET,长度为 8 到 20 字节.NET 的结构如下图:
如下为 3 种 NET 格式
第 1 个是简单的 NET,区域 ID,系统 ID(为路由器某个接口的 MAC 地址)和选择符(SEL),SEL 被设置
为 0x00;如果当 SEL 不为 0,它就是一个 NSAP(Network Service Access Point);第 3 个为 GOSIP
NSAP.无论是那种格式的 NET,都要满足下面的几个规则:
1.NET 必须是以单个的 8 位位组开始(比如,47.xxxx…)
2.NET 必须是以担搁的 8 位位组结束(比如,…xxxx.00).如果 SEL 不为 0,IS-IS 也能正常工作,
但是在 CLNP/IP 这种双环境中可能会出问题
3.在 Cisco 路由器上,NET 中的系统 ID 必须为 6 字节
9.4 子网的功能
9.4.1 依赖于子网的功能
IS-IS 中只定义 2 种网络类型:
广播型和点到点型.
IS-IS hello packet
IS-IS 路由器通过 IS-IS Hello PDU 形成邻接关系,
IS-IS Hello PDU 每 10 秒发送 1 次
在接口配置模式下使用 isis hello-interval <seconds>来修改.
当然 L1 路由器可以和 L1 路由器和 L1/L2 路由器形成邻接关系,而 L1 路由器是不可以和 L2
P a g e | 138
CCIE R/S & Service Provider Exam Certification Guide
路由器形成邻接关系的,
IS-IS Hello PDU 中也有 Hold Timer,默认为 IS-IS Hello PDU 发送间隔的 3 倍长,
可以通过接口配置命令 isis hello-multiplier <seconds>来修改
使用命令show clns is-neighbors查看IS-IS的邻居表
State 为邻接的状态,一般为 Init(学习到但是还未邻接)和 Up(邻接成功建立)
Circuit ID 为电路 ID,8 字节长,用来标识 IS-IS 接口.
如果这个接口是和广播型多路访问的网络相连,那么电路 ID 和该网络上的指定路由器
(Designated Router,DR)的系统 ID 相连,这个完整的字符串就叫 LAN ID.在这种用法里,
把电路 ID 称为仿真节点 ID(Pseudonode ID).如上的例子里,0000.0C76.5B7C 就是 DR
的系统 ID,00 就是仿真节点 ID
Format 为邻接关系的格式,
对于集成的 IS-IS,这里的值永远为 Phase V,代表 OSI/DECnet Phase V;另外的一种值是
DECnet Phase IV IS-IS 会广播型网络上选举 1 个 DR,与 OSPF 不同的是,这种广播型多路访问的
网络中所有的 IS-IS 路由器都要和它所有的邻居建立邻接关系,而不仅仅是只和 DR 邻接.路由器
通过组播的方式发送 LSP(Link State Packet)给它的邻居,DR 采用 SNP(Sequence Number PDU)
来保证 LSP 的洪泛是可靠的
每个 IS-IS 路由器的接口都有 1 个基于 L1 和 L2 的优先级,这个优先级的范围是 0 到
127,Cisco 默认的基于 L1 和 L2 的优先级都是 64,这个值可以通过命令 isis priority <value>来修
改
IS-IS 中 DR 的选举也是根据优先级来判定的,IS-IS 路由器发送的 Hello 包分都包含的有优
先级字段(L1 的 Hello 包宣告 L1 的优先级;L2 的 Hello 包宣告 L2 的优先级).如果优先级为 0,它
就不能成为 DR,如上图:
第一行显示的优先级为0,因为它是串性点到点链路,不需要选举DR,所以设置为0(非广播型
网络不需要选举DR).优先级最高的成为DR;如果优先级一样,就比较系统ID,系统ID最大的成为DR.
与L1和L2的优先级分别对应的是,要分别选举1个L1的DR和L2的DR
与OSPF不同的是,IS-IS中,不会选举BDR,另外DR会抢占,只要网络上出现1个优先级高过现
有DR的优先级的路由器,它将立即取代现有DR的位置而成为新的DR.这样,每次DR的更改都将产生
1组LSP的洪泛
9.4.2 独立于子网的功能
子网独立子层定义了CLNS如何把书数据包通过CLNP的网络把这些服务提供给传输层路由功能被
分为4个过程:
1.更新(Update)过程
2.决策(Decision)过程
P a g e | 139
CCIE R/S & Service Provider Exam Certification Guide
3.转发(Forwarding)过程
4.接收(Receive)过程
更新过程负责洪泛滥L1和L2的LSP来构建LSDB(Link State Database),L1的LSP会在整个区域
洪泛,而L2的LSP只会在所有建立了L2邻接的路由器上洪泛。每个LSP都包含提个剩余生存时间
(Remaining Lifetime),一个序列号(Sequence Number)和一个校验和(Checksum).
和OSPF中LSA的Age不同的是,IS-IS中的生存时间是递减的.IS-IS中LSP的最大生存周期
(MaxAge)是1200秒(20分钟),和OSPF的LSA一样,当LSP驻留在LSDB中,这个剩余生存时间也会随之
推移的.为防止LSP的剩余生存时间为0,源路由器会周期刷新它的LSP,这个刷新的时间周期为900
秒(15分钟),Jitter 25%.当LSP的剩余生存时间递减到0以后,这个LSP还会在LSDB中保留60秒,这
个时间叫做ZeroAgeLifetime
如果1个IS-IS路由器收到了校验和错误的LSP,它将把这个LSP的剩余生存时间设置为0来移
除这条LSP,源路由器将重新发送这个LSP的1个新的实例(这点和OSPF不同,OSPF的源路由器仅仅
清除这条LSA)
在一个错误机率比较高的网络上,允许路由器清除错误的LSF可能会导致LSP流量过高,因为
这将使得源路由器不断重发LSP的新的实例.可以使用命令ignore-lsp-errors来忽略这种错误的
LSP而不去清除它(当然发出这条错误的LSP的源路由器可以通过SNP得知这条LSP没有被收到)
序列号是一个无符号的32位长的线性数字,当IS-IS路由器初次发送LSP的时候,序列号设置
为1,以后这个LSP的每个实例的序列号都会递增1,如果序列号达到了最大的0xFFFFFFFF,IS-IS进
程将关闭至少21分钟(MaxAge+ZeroAgeLifetime),以便允许旧的LSP从LSDB中清除
在点到点的网络上,路由器直接发送L1和L2的LSP给邻居.
在广播型的网络上,LSP通过组播的方式发给邻居,运载L1的LSP的帧的目标MAC地址为
0180.c200.0014, 又 叫 AllL1ISs; 运 载 L2 的 LSP 的 帧 的 目 标 MAC 地 址 为 0180.c200.0015, 又 叫
AllL2ISs
IS-IS通过SNP来确认LSP的接收和维持LSDB信息的同步,有2种类型的SNP:
1.Parial SNP(PSNP)
2.Complete SNP(CSNP)
在点到点网络上,IS-IS路由器通过PSNP来确认每个LSP是否收到.PSNP通过下面的信息来描述它
所确认的LSP:
1.LSP ID
2.LSP的序列号
3.LSP的校验和
4.LSP的剩余生存时间
在点到点的环境中,当有路由器要发送LSP的时候,它会设置个叫做minimumLSPTransmission
Interval的时间,在这个时间超出之前没有收到关于这个LSP的PSNP时,新的LSP将被重传.Cisco
P a g e | 140
CCIE R/S & Service Provider Exam Certification Guide
路由器上这个时间默认为5秒,可以通过接口配置命令isis retransmit-interval <seconds>来修改
在广播型网络上,LSP不需要被每个路由器都确认.DR将周期性的组播CSNP,用来描述LSDB中
的每个LSP,默认发送时间为10秒,这个时间可以通过命令isis csnp-interval <seconds>来修改,
L1的CSNP是组播到AllL1ISs
L2的CSNP是组播到AllL2ISs
当路由器收到CSNP的时候,它会把这个CSNP中的LSP的信息和它LSDB中的LSP做比较.如果路
由器发现LSDB中存在CSNP中没有的LSP,或者有比CSNP中更新的LSP,那么这个路由器就将组播这
个LSP,但是如果其他的路由器先发送这个更新的LSP,这个路由器就不会发送这个LSP的另1个拷
贝.如果路由器的LSDB中没有包含CSNP中所列出来的LSP,或者LSDB中的LSP比CSNP中列出来的LSP
更旧,路由器将组播PSNP,这个PSNP列举了路由器所需要的LSP的清单.虽然PSNP是组播出去的,但
是只有DR会以合适的LSP响应它
IS-IS还有个特性,当路由器因内存不足的原因而不能记录完整的LSDB信息的时候,它可以通
知其他的路由器,它将在LSP中设置1个超载(Overload,OL)位,它用来表示路由器可能不能够再做
路由决策了,因为它的LSDB不完整.再这个发生超载现象的路由器发送1个清除OL位的LSP之前,其
他的路由器就会避免经过它来把数据包转发到其他网络上去,因此OL位也被叫做hippity(或
hippity-hop)位
show isis database命令查看IS-IS路由器的LSDB信息,如下:
可以看出路由器Brussels是一个L1/L2路由器,其中LSP ID后面跟的星号表示这个LSP是正在
查看的路由器所发出去的
LSP Holdtime也就是剩余生存时间
ATT表示Attached位,设置为1表示包含有达到其他区域的路由
P表示Partition位,该位一般设置为0
如下是加上detail参数查看具体某条LSP的信息:
P a g e | 141
CCIE R/S & Service Provider Exam Certification Guide
一旦更新过程建立了完整的LSDB后,决策过程就将使用LSDB中的LSP信息来构建一条最短路径树,
然后形成路由表.对于L1和L2的路由,路由器会分别执行不同的SPF计算
IS-IS的metric标准如下(1个是必须,另3个是可选):
1.Default:必须的.每台IS-IS路由器都必须支持和理解的metric
2.Delay:可选的,反映了子网的传输
3.Expense:可选的,反映子网的成本开销
4.Error:可选的,反映了子出错的机率(类似IGRP/EIGRP中的RELY)
每1种metric的范围都是0到63之间的整数,并且每条路由要根据每种metric进行单独的计算,
并且有可能产生不同的路由表.Cisco的路由器只支持Default类型的metric.
在Cisco路由器上,接口默认的metric都为10,可以使用命令isis metric <value>进行修改,
因此一条路由的总的开销就是接口开销之和.对于任何一条路由来说,最大的metric为1023
IS-IS路由不光分为L1和L2,还分为内部路由和外部路由,
对于L2,它有可能是内部路由也有可能是外部路由;
对于L1,它始终都是内部路由.
如果存在到达某个目标地址的多条路由,L1的路由将优先与L2的路由.在同一Level中的路由,
支持可选metric的路由将优先与只支持Default metric的路由.在每个Level里,开销最低的路由
将优先被采用,如果在同一Level中多条路由的等价的,那么它们将都被放入路由表里.Cisco支持
最大6条路径的等价的负载均衡
LSP ID中最后的1个字节是LSP Number,用来跟踪分片(因LSP过大而分片)的LSP.决策过程将
注意到LSP Number的原因是:如果路由器的LSDB中没有LSP Number为0并且剩余生存时间不为0的
LSP,决策过程将不会处理具有相同的系统ID,但是LSP Number不为0的LSP.这将保证不会因不完整
的LSP信息而导致不正确的路由决策.另外,决策过程将仅从LSP Number为0的LSP接受下面几种信
息:
1.OL位
2.IS的类型字段
3.区域地址可选字段的信息
P a g e | 142
CCIE R/S & Service Provider Exam Certification Guide
在LSP Number不为0的LSP中,决策过程将忽略上面3个信息,在分片的LSP中,上述3个字段的信
息由LSP Number为0的LSP来宣告
IS-IS支持VLSM,并且管理距离(administrative distance,AD)是115
如果ATT位设置为1,集成IS-IS就会增加一条到达最近的L1/L2路由器的默认路由,如下:
如上反映了一个问题,就是CLNP信息和IP信息的关联不太方便.解决办法是使用命令which-route,
如下:
这个命令的作用是确定某个CLNS地址在路由表中的位置,把CLNS信息和IP信息相互关联
9.5 IS-IS的PDU格式
IS-IS使用9种PDU,可以分为3个大类,如下:
Hello PDUs:
1.L1 LAN IS-IS Hello PDU:类型号为15
2.L2 LAN IS-IS Hello PDU:类型号为16
3.Point-to-point IS-IS Hello PDU:类型号为17
Link State PDUs:
1.L1 LSP:类型号为18
P a g e | 143
CCIE R/S & Service Provider Exam Certification Guide
2.L2 LSP:类型号为20
Sequence Numbers PDUs(SNPs):
1.L1 CSNP:类型号为24
2.L2 CSNP:类型号为25
3.L1 PSNP:类型号为26
4.L2 PSNP:类型号为27
这些IS-IS PDU的前8字节的头部信息格式如下图:
Interdomain Routeing Protocol Discriminator:
ISO9577 分配的一个恒定不变的数,值为 0x83,用来标识网络
层的 PDU(Network
PDU,NPDU)
Length Indicator:
标记固定头部信息的长度,1 字节长
Version/Protocol ID Extension:始终设置为 1
ID Length:
表示路由域里 NSAP 和 NET 使用的系统 ID 的长度.该字段的值可以是以下几种数值之一:
1.值为 1 到 8 的整数:表示系统 ID 具有和这个值相同的长度
2.值为 0:表示系统 ID 为 6 字节长
3.值为 255:表示系统 ID 字段为 null(0 字节)
R:保留,设置为 0
PDU Type:PDU 类型,5 位长
Version:版本号,始终为 1,这和之前的 Version/Protocol ID Extension 是一样的
Maximum Area Addresses:
最大区域数,表示区域内允许的最大区域地址数量.值可以是下面几种数值之一:
1.值为 0:表示最大只支持 3 个区域地址
2.值为 1 到 254 的整数,表示支持的区域地址数和这个值相同
Cisco 路由器中,只支持值为 0,即最大支持 3 个区域地址
P a g e | 144
CCIE R/S & Service Provider Exam Certification Guide
9.5.1 CLV 字段
Variable-Length Fields:可变长字段,为CLV字段,即代码/长度/值(Code/Length/Value)
其中Code和Length字段长度分别为1字节,Value字段就是它本身的信息.Value字段的大小
最大可为255字节.
9.5.2 IS-IS 的 Hello 包格式
有2种类型的IS-IS Hello PDU:
IS-IS LAN Hello PDU
IS-IS Point-to-point Hello PDU
IS-IS LAN Hello PDU还可以分为L1和L2,但是这2种类型是一样的.
Circuit Type:
2位长,之前的6个R位保留,设置为0.在这个字段里,如果值为01表示是L1路由器,如果为02则
表示是L2路由器,为11的话表示是L1/L2路由器,如果值为00,这个PDU将被忽略
Source ID:发出这个IS-IS Hello PDU的源路由器的系统ID
LAN ID:系统ID加上一个1字节长的仿真节点ID
9.5.3 IS-IS 的链路状态报文(LSP)格式
P:Cisco 路由器中设置为 0
ATT:4 位长,表示相连的区域使用了哪种的 metric 类型,从右(第 4 位)到左(第 7 位)依次是:
Default,Delay,Expense 和 Error,
因为 Cisco 的路由器只支持 Default,因此其他 3 位设置为 0
IS Type:2 位长,用来表示源路由器的类型,如下:
00:未使用
01:L1 路由器
10:未使用
P a g e | 145
CCIE R/S & Service Provider Exam Certification Guide
11:L2 路由器
9.5.4 IS-IS 的序列号报文格式
9.6 配置集成IS-IS
9.6.1 IS-IS 基本配置
配置IS-IS的基本步骤如下:
1.确定路由器所在的区域和要起用IS-IS的接口
2.使用router isis来启动IS-IS(router isis也可以跟一个名字,比如router isis dancer)
3.使用net命令配置NET地址
4
P a g e | 146
ip router isis在相应的接口上启动集成IS-IS
CCIE R/S & Service Provider Exam Certification Guide
NET 地址表如下
Router
Area
MAC
Net
Paris
00.0001
0000.3090.6756
00.0001.0000.3090.6756.00
Berlin
00.0001
0000.3090.c7df
00.0001.0000.3090.c7df.00
London
00.0001
0000.0c0a.2c51
00.0001.0000.0c0a.2c51.00
Rome
00.0001
0000.0c0a.2aa9
00.0001.0000.0c0a.2aa9.00
Brussels
00.0002
0000.0c76.5b7c
00.0002.0000.0c76.5b7c.00
Amsterdam
00.0002
路由器 Paris 配置如下:
0000.0c04.dcc0
00.0002.0000.0c04.dcc0.00
clns routing
!
interface Serial0
ip address 10.1.255.5 255.255.255.252
ip router isis
!
interface TokenRing0
ip address 10.1.2.1 255.255.255.0
ip router isis
ring-speed 16
!
interface TokenRing1
ip address 10.1.7.1 255.255.255.0
ip router isis
ring-speed 16
!
router isis
net 00.0001.0000.3090.6756.00
P a g e | 147
CCIE R/S & Service Provider Exam Certification Guide
路由器 London 配置如下:
clns routing
!
interface Ethernet0
ip address 10.1.3.2 255.255.255.0
ip router isis
!
interface Serial0
ip address 10.1.255.6 255.255.255.252
ip router isis
!
router isis
net 00.0001.0000.0c0a.2c51.00
路由器 Brussels 配置如下:
clns routing
!
interface Ethernet0
ip address 10.1.3.1 255.255.255.0
ip router isis
!
interface Ethernet1
ip address 10.1.4.1 255.255.255.0
ip router isis
!
router isis
net 00.0002.0000.0c76.5b7c.00
路由器 Amsterdam 配置如下:
clns routing
!
interface Ethernet0
ip address 10.1.4.2 255.255.255.0
ip router isis
!
interface Ethernet1
ip address 10.1.5.1 255.255.255.0
ip router isis
!
interface Ethernet2
ip address 10.1.6.241 255.255.255.240
P a g e | 148
CCIE R/S & Service Provider Exam Certification Guide
ip router isis
!
router isis
net 00.0002.0000.0c04.dcc0.00
路由器Rome和Berlin的配置方法类似,要注意的是命令clns routing在配置IS-IS的时候不是
必需的,因为在启用IS-IS的时候,路由器自动加入这个命令
9.6.2 更改路由器类型
我们可以发现路由器Paris和路由器Amsterdam都分别维持的有L1和L2的LSDB,
但是实际上路由器Berlin,Amsterdam还有Paris配置成L1的路由器就可以了,这样可以减轻
路由器的负担,使用命令is-type来更改路由类型,因此,要把路由器Berlin更改为L1路由器,
只需做如下配置:
Berlin(config)#router isis
Berlin(config-router)#net 00.0001.0000.3090.c7df.00
Berlin(config-router)#is-type level-1
P a g e | 149
CCIE R/S & Service Provider Exam Certification Guide
可以看到LSDB和路由表的体积都减小了.但是还有个问题,就是虽然L1/L2路由器会在LSP中
设置ATT位来告诉L1路由器它具有区域间的连接,因此路由器Paris会有1条到达路由器
London或Rome的默认路由,但是之前Paris的路由表中并没有这条默认路由.原因是ATT位是
CLNS的特性,在IP环境中它不能被直接的理解.解决办法有2种,
1种是不光在路由器London和Paris的接口上启用IP的IS-IS,还要启用CLNS的IS-IS,如下:
London(config)#interface Serial0
London(config-if)#ip address 10.1.255.6 255.255.255.252
London(config-if)#ip router isis
London(config-if)#clns router isis
Paris(config)#interface Serial0
Paris(config-if)#ip address 10.1.255.5 255.255.255.252
Paris(config-if)#ip router isis
Paris(config-if)#clns router isis
第 2 种 解 决 方 法 是 在 L1/L2 路 由 器 上 配 置 一 条 默 认 路 由 , 并 使 用 default-information
originate命令使得IS-IS来宣告这条默认路由.以路由器Brussels为例,配置如下:
Brussels(config)#router isis
Brussels(config-router)#net 00.0002.0000.0c76.5b7c.00
Brussels(config-roiuter)#default-information originate
Brussels(config)#ip route 0.0.0.0 0.0.0.0 Null0
P a g e | 150
CCIE R/S & Service Provider Exam Certification Guide
9.6.3 区域迁移
在OSPF中,区域的迁移必须在中断网络的情况下尽情;而IS-IS可以在不中断网络的情况下进
行区域的迁移,因为Cisco的路由器最多可以配置3个区域地址.
现假设要用GOSIP格式的NET地址代替原有NET地址格式,
Router
NET
Paris
47.0005.80.00ab7c.0000.ffe9.0001.0000.3090.6756.00
Berlin
47.0005.80.00ab7c.0000.ffe9.0001.0000.3090.c7df.00
London
47.0005.80.00ab7c.0000.ffe9.0001.0000.0c0a.2c51.00
Rome
47.0005.80.00ab7c.0000.ffe9.0001.0000.0c0a.2aa9.00
Brussels
47.0005.80.00ab7c.0000.ffe9.0002.0000.0c76.5b7c.00
Amsterdam
47.0005.80.00ab7c.0000.ffe9.0002.0000.0c04.dcc0.00
P a g e | 151
CCIE R/S & Service Provider Exam Certification Guide
配置步骤是在不删除原有NET地址的基础上,增加新的GOSIP NET地址,以Rome为例,如下:
Rome(config)#router isis
Rome(config-router)#net 00.0001.0000.0c0a.2aa9.00
Rome(config-router)#net 47.0005.8000.ab7c.0000.ffe9.0001.0000.0c0a.2aa9.00
使用show isis database detail或show clns is-neighbors验证,如下:
增加了新的GOSIP NET地址以后,使用no net命令删除原有NET地址,迁移完成
9.6.4 路由汇总
Zurich(config)#router isis
Zurich(config-router)#net 01.0000.0c76.5b7c.00
Zurich(config-router)#summary-address 172.16.0.0 255.255.248.0
P a g e | 152
CCIE R/S & Service Provider Exam Certification Guide
9.6.5 集成 IS-IS 的认证
IS-IS只支持明文口令的验证,Cisco IOS支持3个级别的验证:邻居间,整个区域和整个IS-IS
路由域.这3个级别的验证可以分开来使用也可以结合在一起使用,规则如下:
1.邻居间的验证,相互连接的路由器的接口上配置的口令必须相同
2.配置邻居间的验证,要分别为L1和L2的邻接各自配置单独的口令
3.整个区域发验证,区域内所有的IS-IS路由器必须启用验证,并配置相同的口令
4.整个IS-IS路由域的验证,每个L1/L2路由器和L2路由器都必须启用验证,并配置相同口令
邻居间验证的配置,使用接口配置命令isis password <password> {level-1|level-2},L1和
L2 的 口 令 可 以 相 同 , 如 果 不 跟 {level-1|level-2} 参 数 , 默 认 为 L1. 在 整 个 区 域 的 验 证 , 使 用
area-password <password>命令启用验证,如下是配置区域3的验证:
Bonn(config-router)#area-password Rhine
要注意的是isis password命令指定的口令是包含在IS-IS Hello PDU中的;而area-password
所指定的口令是包含在L1的LSP,CSNP和PSNP中的.因此,前者指定的口令只能用来验证邻接关系
的建立;后者是验证L1的LSP的交换,如果口令不一样,仍然可以建立邻接关系,但是不会交换L1的
LSP信息 IS-IS路由域的验证,使用命令domain-password <password>来指定,IS-IS路由域的
验证只需要在L2或L1/L2路由器上配置
IS-IS路由域的验证口令是出现在L2的LSP,CSNP和PSNP中的,是验证L2的LSP的交换,如果口
令不一样,仍然可以建立邻接关系,但是不会交换L2的LSP信息
9.7 集成IS-IS协议的故障排除
9.7.1 IS-IS 邻居关系故障排除
查看IS-IS邻居表使用show clns is-neighbors {detail}命令,在查看邻居表的时候,要靠拉
P a g e | 153
CCIE R/S & Service Provider Exam Certification Guide
到诸如以下问题:
1.路由器Level的配置是否正确
2.邻居路由器是否都正常发送IS-IS Hello PDU,可以通过命令debug isis adj-packets来查
3.邻居之间的isis hello-interval和isis hello-multiplier的设置是否相同
4.如果启用了验证,注意3个验证级别的口令是否符合之前所说的几个规则
5.是否存在堵塞IS-IS或CLNS的ACL
9.7.2 IS-IS 链路状态数据库故障排除
使用show isis database {level-1|level-2} {detail} {LSP ID}来查看IS-IS路由器的LSDB信息
如果1个LSP的序列号明显高于其他LSP的序列号,很可能是由于区域不稳定或L2骨干路由器
不稳定造成的;另外要注意的是LSP的Holdtime从来都不会很小,否则就有可能是网络不稳定造成
的.如果怀疑网络不稳定,可以使用命令show isis spf-log显示本地路由器最近执行的所有SPF计
算的日志信息,如下:
P a g e | 154
CCIE R/S & Service Provider Exam Certification Guide
前几行显示的是周期性的LSP的刷新(每15分钟),而后几行显示了频繁的SPF计算,说明网络
发生了变化.为了进一步跟踪问题所在,可以使用3个调试命令:
1.debug isis spf-triggers:显示的是与触发SPF计算相关的事件信息
2.debug isis spf-events:显示引起触发SPF计算的1个详细报告,如下:
3.debug isis spf-statistics:显示关于SPF计算它本身的统计信息,如下:
如果你怀疑IS-IS路由器的LSDB信息的同步发生了问题,可以检查LSP ID和校验和.使用下面
2个命令进行调试:
1.debug isis update-packets:显示路由器发送和接收SNP和LSP的相关信息
2.debug isis snp-packets:显示路由器发送和接收的PSNP和CSNP的相关信息
P a g e | 155
CCIE R/S & Service Provider Exam Certification Guide
9.7.3 运行在 NBMA 型网络上的集成 IS-IS
路由器 Oslo:
interface Serial0
ip address 192.168.5.1 255.255.255.0
ip router isis
encapsulation frame-relay
frame-relay interface-dlci 16
frame-relay interface-dlci 17
frame-relay interface-dlci 18
路由器 Stockholm:
interface Serial0
no ip address
encapsulation frame-relay
!
interface Serial0.16 point-to-point
ip address 192.168.5.2 255.255.255.0
ip router isis
frame-relay interface-dlci 16
路由器 Copenhagen:
interface Serial0
no ip address
encapsulation frame-relay
!
interface Serial0.16 point-to-point
ip address 192.168.5.3 255.255.255.0
ip router isis
frame-relay interface-dlci 16
路由器 Helsinki:
interface Serial0
no ip address
encapsulation frame-relay
!
interface Serial0.16 point-to-point
ip address 192.168.5.4 255.255.255.0
ip router isis
frame-relay interface-dlci 16
P a g e | 156
CCIE R/S & Service Provider Exam Certification Guide
Chapter 10
路由控制及重分布
10.1 路由重分布
10.1.1 路由重分布原则
路由重分布的作用:可以使得多种路由协议之间,多重厂商环境中进行路由信息交换
Metrics
在做路由重分布的时候要考虑到的一个问题是:
metric.比如把OSPF路由重分布到EIGRP里,EIGRP和OSPF之间没有办法理解对方的metric,
因此在做路由重分布之前,要分配一个对方可以理解的metric,
Administrative Distances
根据管理距离(AD)来判定多种协议学来的路由.Cisco默认的几种路由协议的AD如下:
1.直连接口:0
2.静态路由:1(有个例外,使用接口来代替下1跳地址的时候它会被认为是直连接口)
3.EIGRP汇总路由:5
4.External(外部) BGP:20
5.EIGRP:90
6.IGRP:100
7.OSPF:110
8.IS-IS:115
9.RIP:120
10.EGP:140
11.External(外部) EIGRP:170
12.Internal(内部) BGP:200
13.未知:255
Redistributing from Classless to Classful Protocols
OSPF是基于无类的路由协议,将IGRP重分布到OSPF以后,路由器Paige它可以知道OSPF路由域
和IGRP路由域的所有子网信息;而路由器Leonard只能学习到OSPF中掩码为/24的子网,因为
IGRP是基于类的路由协议
10.1.2 配置路由重分布
路由器Paige的IGRP配置如下:
Paige(config)#router igrp 1
Paige(config-router)#redistribute ospf 1 metric 10000 100 255 1 1500
P a g e | 157
CCIE R/S & Service Provider Exam Certification Guide
Paige(config-router)#passive-interface Ethernet1
Paige(config-router)#network 172.20.0.0
如上把OSPF(源路由协议)向IGRP(接受重分布的路由协议)重分布,同时分配了该路由的
metric,
10000:带宽
100:延迟
255:可靠性
1:负载
1500:MTU
路由器Paige的OSPF配置如下:
Paige(config)#router ospf 1
Paige(config-router)#redistribute igrp 1 metric 30 metric-type 1 subnets
Paige(config-router)#network 172.20.112.2 0.0.0.0 area 0
如上是把IGRP重分布到OSPF中去,指定metric为30(OSPF的metric标准为cost),经过重分布
以后,路由器Paige就成为了ASBR,经过重分布的IGRP路由是作为外部路由宣告进OSPF路由域
的,同时使用metric-type命令指定外部路由类型为E1.subnets参数只在把路由重分布到
OSPF中使用,它指明经过重分布后的子网的细节信息
另一种分配metric的方法是使用default-metric命令,比如刚才才把IGRP重分布到OSPF里的
配置也可以写成下面的形式:
Paige(config)#router ospf 1
Paige(config-router)#redistribute igrp 1 metric-type 1 subnets
Paige(config-router)#default-metric 30
Paige(config-router)#network 172.20.112.2 0.0.0.0 area 0
2种不同的配置其实是相同的效果,
default-metric命令的优点是,当要重分布多种路由协议的时候,可以同时指定这些经过重
分布的路由的metric
Paige(config)#router ospf 1
Paige(config-router)#redistribute igrp 1 metric-type 1 subnets
Paige(config-router)#redistribute rip metric-type 1 subnets
Paige(config-router)#redistribute eigrp 2 metric-type 1 subnets
Paige(config-router)#default-metric 30
Paige(config-router)#network 172.20.112.2 0.0.0.0 area 0
这里使用default-metric 30同时指定了重分布到OSPF里的RIP,IGRP和EIGRP路由的metric
都为30 不过这2种分配metric的命令可以结合在一起使用,如下:
Paige(config)#router igrp 1
Paige(config-router)#redistribute ospf 1
Paige(config-router)#redistribute rip metric 50000 500 255 1 1500
Paige(config-router)#redistribute eigrp 2
P a g e | 158
CCIE R/S & Service Provider Exam Certification Guide
Paige(config-router)#default-metric 10000 100 255 1 1500
Paige(config-router)#passive-interface Ethernet1
Paige(config-router)#network 172.20.0.0
如果metric和default-metric命令没有指定具体的参数,重分布到OSPF里的路由默认的
metric为20,而其他的路由协议为0.metric为0不能被RIP正确理解,并且与IGRP和EIGRP不兼
容,IS-IS可以正确理解
10.1.3 IGRP 和 RIP 间的重分布
router rip
redistribute igrp 1 metric 5
passive-interface Ethernet1
network 10.0.0.0
!
router igrp 1
redistribute connected
redistribute rip
default-metric 1000 100 255 1 1500
passive-interface Ethernet0
network 10.0.0.0
注意路由器Mantle还连接了个stub网络192.168.10.0/24,如果要求把这个网络宣告进IGRP
路由域,可以使用redistribute connected命令
router rip
redistribute connected metric 5
redistribute igrp 1 metric 5
passive-interface Ethernet1
network 10.0.0.0
!
router igrp 1
redistribute connected
redistribute rip
default-metric 1000 100 255 1 1500
passive-interface Ethernet0
network 10.0.0.0
P a g e | 159
CCIE R/S & Service Provider Exam Certification Guide
10.1.3 EIGRP 和 OSPF 间的重分布
在这个拓扑图中,路由器Hodges运行OSPF进程1,路由器Podres运行EIGRP进程1,,路由器
Snider和Campanella运行EIGRP进程2,路由器Robinsion配置如下:
router eigrp 1
redistribute ospf 1 metric 1000 100 1 255 1500
redistribute eigrp 2
passive-interface Ethernet0
network 192.168.3.0
!
router eigrp 2
redistribute ospf 1 metric 1000 100 1 255 1500
redistribute eigrp 1
network 192.168.4.0
network 172.16.0.0
!
router ospf 1
redistribute eigrp 1 metric 50
redistribute eigrp 2 metric 100
network 192.168.3.33 0.0.0.0 area 0
注意不同进程的EIGRP的重分布不需要分配metric,因为它们是同一种路由协议,可以相互理
解对方的metric 查看路由器Podres的路由表,如下:
P a g e | 160
CCIE R/S & Service Provider Exam Certification Guide
再查看路由器Hodges的路由表,如下:
为什么只有1条为指向192.168.2.0/24的E2外部OSPF路由?答案是把其他类型的路由重分布
到 OSPF 里 的 时 候 没 有 使 用 参 数 subnets, 因 此 将 把 没 有 连 接 到 做 路 由 重 分 布 的 路 由 器
(Robinson)的主网络地址(192.168.2.0/24)做重分布.使用subnets参数
router ospf 1
redistribute eigrp 1 metric 50 subnets
redistribute eigrp 2 metric 100 subnets
network 192.168.3.33 0.0.0.0 area 0
如上,所有子网都能被路由器Hodges学习到
另外,OSPF外部路由类型默认为E2,如果要把上面的OSPF外部路由类型更改为E1,可以在重分
布外部路由到OSPF中的时候使用命令metric-type 1,如下:
Robinson(config)#router ospf 1
Robinson(config-router)#redistribute eigrp 1 metric 50 subnets
P a g e | 161
CCIE R/S & Service Provider Exam Certification Guide
Robinson(config-router)#redistribute eigrp 2 metric 100 metric-type 1 subnets
Robinson(config-router)#network 192.168.3.33 0.0.0.0 area 0
10.1.4 路由重分布及路由汇总
Cisco的EIGRP,OSPF和IS-IS都可以对重分布的路由进行路由汇总.
可以在OSPF进程下使用summary-address指定汇总的地址和掩码,不过这个命令是用在ASBR
上的,
ABR上的路由汇总是使用area <area-id> range <address>命令,如下:
router eigrp 1
redistribute ospf 1 metric 1000 100 1 255 1500
redistribute eigrp 2
passive-interface Ethernet0
network 192.168.3.0
!
router eigrp 2
redistribute eigrp 1
network 192.168.4.0
network 172.16.0.0
!
router ospf 1
summary-address 192.168.3.128 255.255.255.128
summary-address 172.16.0.0 255.255.0.0
redistribute eigrp 1 metric 50 subnets
redistribute eigrp 2 metric 100 metric-type 1 subnets
network 192.168.3.33 0.0.0.0 area 0
对于EIGRP的汇总,是基于接口的,使用命令ip summary-address eigrp {process-id},如下:
interface Ethernet0
ip address 192.168.3.33 255.255.255.224
!
interface Ethernet1
ip address 192.168.3.129 255.255.255.224
ip summary-address eigrp 1 192.168.3.0 255.255.255.128
ip summary-address eigrp 1 172.16.0.0 255.255.0.0
ip summary-address eigrp 1 192.168.4.0 255.255.255.0
!
interface Serial0
ip address 192.168.4.5 255.255.255.252
ip summary-address eigrp 2 192.168.3.0 255.255.255.0
!
interface Serial1
ip address 172.16.2.21 255.255.255.252
ip summary-address eigrp 2 192.168.0.0 255.255.0.0
P a g e | 162
CCIE R/S & Service Provider Exam Certification Guide
!
router eigrp 1
redistribute ospf 1 metric 1000 100 1 255 1500
redistribute eigrp 2
passive-interface Ethernet0
network 192.168.3.0
!
router eigrp 2
redistribute eigrp 1
network 192.168.4.0
network 172.16.0.0
!
router ospf 1
summary-address 192.168.3.128 255.255.255.128
summary-address 172.16.0.0 255.255.0.0
redistribute eigrp 1 metric 50 subnets
redistribute eigrp 2 metric 100 metric-type 1 subnets
network 192.168.3.33 0.0.0.0 area 0
10.1.5 IS-IS 和 RIP 间的路由重分布
路由器Mays的配置如下:
router isis
redistribute rip metric 0 metric-type internal level-2
net 01.0001.0000.0c76.5432.00
!
router rip
redistribute isis level-1-2 metric 1
passive-interface Ethernet0
network 10.0.0.0
P a g e | 163
CCIE R/S & Service Provider Exam Certification Guide
参数internal为内部路由的含义,默认为内部,并且为L1.路由器Aaron的路由表如下:
路由器Aaron所连的子网可以汇总为10.2.0.0/16,重分布到IS-IS里的路由和OSPF一样,也是
使用summary-address命令,但是还要额外的指定IS-IS的Level,如下:
router isis
summary-address 10.2.0.0 255.255.0.0 level-1
redistribute rip metric 0 metric-type external level-1
net 01.0001.0000.0c76.5432.00
!
router rip
redistribute isis level-1-2 metric 1
passive-interface Ethernet0
network 10.0.0.0
10.1.6 静态路由的重分布
router rip
redistribute static metric 1
redistribute isis level-1-2 metric 1
passive-interface Ethernet0
network 10.0.0.0
10.2 默认路由及ODR按需路由
默认路由(Default Route)最大的好处就是减少路由表的条目,从而减小了路由表体积,降低
了对路由器CPU资源的占用
ODR(On-Demand Routing,按需路由)是从Cisco IOS版本11.2出现的,它为Cisco所私有,并且
不是真正意义上路由协议.它依赖于Cisco发现协议(CDP,Cisco Discovery Protocol)
P a g e | 164
CCIE R/S & Service Provider Exam Certification Guide
标记为o的代表ODR,它的管理距离为160,并且metric永远不会超过1
10.2.1 配置静态默认路由
Memphis(config)#ip classless
Memphis(config)#ip route 0.0.0.0 0.0.0.0 192.168.1.82
配置的静态默认路由,RIP,IGRP和EIGRP将自动宣告默认路由(OSPF和IS-IS要做额外的配置)
10.2.2 default-network 配置默认路由
另一种配置默认路由的方法是使用ip default-network命令.
路由器Athens配置如下:
router rip
network 172.16.0.0
!
ip classless
ip default-network 10.0.0.0
P a g e | 165
CCIE R/S & Service Provider Exam Certification Guide
可以看到10.0.0.0被标记为侯选的默认路由,但是没有指定默认网关,原因是路由器Athens
就是到这个默认网络的网关,即使在配置RIP的时候不声明network 10.0.0.0,ip
default-network命令会使得路由器Athens宣告一个默认网络
对于IGRP和EIGRP的默认路由稍微有些不同,它们不能理解0.0.0.0,所以通常会宣告一个真
实的地址作为外部路由,然后这个外部路由会被IGRP和EIGRP理解成默认路由
如果路由器Athens运行的是IGRP,如下:
router igrp 1
network 10.0.0.0
network 172.16.0.0
!
ip classless
P a g e | 166
CCIE R/S & Service Provider Exam Certification Guide
ip default-network 10.0.0.0
注意和配置RIP不同的是,在配置IGRP的时候增加了network 10.0.0.0语句
10.2.3 Default-information originate 配置默认路由
可以看到路由器Athens上设置的有默认路由,可路由器Sparta上却没有,这时就要用到
default-information originate命令,告诉该OSPF路由器成为1个ASBR(默认路由以类型5的
LSA被宣告进OSPF路由域中),并指定metric和OSPF外部路由类型,如下:
Athens(config)#router ospf 1
Athens(config-router)#network 172.16.0.0 0.0.255.255 area 0
Athens(config-router)#default-information originate metric 10 metric-type 1
Athens(config)#ip classless
Athens(config)#ip route 0.0.0.0 0.0.0.0 10.1.1.2
10.2.4 配置 ODR 按需路由
ODR的启用只需输入命令router odr无需指明网络和其他参数.
ODR传送地址前缀,而不是整个地址,因此路由器必须支持VLSM
ODR可以被重分布到其他路由协议
ODR的管理距离为160,度量永远都不会超过1
ODR路由得传输机制是Cisco发现协议 (CDP),路由器上用cdp run启用,用cdp enable在特
定的接口上启用
CDP运行在任何支持子网访问协议(SNAP)的介质上,即ODR也依赖SNAP的支持
在中心路由器上用router odr启用
分支路由器上配置一条指向中心路由器的静态路由就可以了
10.3 路由过滤
路由过滤可以通过下面2种方法实现:
1.使用distribute-list过滤特定路由
2.使用distance命令来控制路由的AD
路由过滤器的用途:把一个路由选择域分割成多个子域,在连接不同子域的路由器上过滤
建立路由防火墙
过滤器是基于访问列表的基础上用distribute-list acl-no in/out 接口/路由协议
NO.是被应用的访问列表编号
在“路由协议”关键字中,仅有out是有意义的
由于链路状态协议不从自身路由表中通告路由,所以在“接口”关键字中用out是没有意
P a g e | 167
CCIE R/S & Service Provider Exam Certification Guide
义的,要过滤什么进程,就把过滤器放在什么进程下
例:在OSPF 1下过滤RIP,则在OSPF进程下用distribute-list 10 in rip
在OSPF 1下过滤OSPF 1,这在OSPF进程中用distribute-list 10 in
要在一个本来运行一种路由协议的网络中运用另一种路由协议时,为了防止出错和路由
黑洞,如果新协议的管理距离小于旧协议,在新路由进程中用distance增大新协议的管理距
离,等到网络中的每个路由器上新协议都配置好后再改回去,再删除旧协议,最后用clear ip
route * 清空路由表,让其重新学习
在路由进程中用distance AD IP-addr wildcat-mask acl-NO.
10.4 Route-Map
route map和ACL很类似,它可以用于路由的重分布和策略路由,还经常使用在BGP中.策略路
由(policy route)实际上是复杂的静态路由,静态路由是基于数据包的目标地址并转发到指
定的下一跳路由器,策略路由还利用和扩展IP ACL链接,这样就可以提供更多功能的过滤和
分类
route map的一些命令:
match命令可以和路由的重分布结合使用:
1.ma
t
c
hi
n
t
e
r
f
a
c
e
{
t
y
p
e
n
u
mb
e
r
}
[
…
t
y
p
e
n
u
mb
e
r
]
:
匹配指定的下一跳路由器的接口
的路由
2.ma
t
c
hi
p
a
d
d
r
e
s
s
{
A
C
L
n
u
mb
e
r
|
n
a
me
}
[
…
A
C
L
n
u
mb
e
r
|
n
a
me
]
:
匹配ACL所指定
的目标IP地址的路由
3.match ip next-h
o
p
{
A
C
L
n
u
mb
e
r
|
n
a
me
}
[
…
A
C
L
n
u
mb
e
r
|
n
a
me
]
:
匹配ACL所指定
的下一跳路由器地址的路由
4.match ip route-s
o
u
r
c
e
{
A
C
L
n
u
mb
e
r
|
n
a
me
}
[
…
A
C
L
n
u
mb
e
r
|
n
a
me
]
:
匹配ACL所
指定的路由器所宣告的路由
5.match metric {metric-value}:匹配指定metric大小的路由
6.match route-type {internal|external[type-1|type-2]|level-1|level-2}:匹配指定
的OSPF,EIGRP或IS-IS的路由类型的路由
7.match tag {tag-v
a
l
u
e
}
[
…
t
a
g
-value]:匹配带有标签(tag)的路由
set命令也可以和路由的重分布一起使用:
1.set level {level-1|level-2|level-1-2|stub-area|backbone}:设置IS-IS的Level,
或OSPF的区域,匹配成功的路由将
被重分布到该区域
2.set metric {metric-value|bandwidth delay RELY load MTU}:为匹配成功的路由设
置metric大小
3.set metric-type {internal|external|type-1|type-2}:为匹配成功的路由设置
metric的类型,该路由将被重分布到OSPF或IS-IS
4.set next-hop {next-hop}:为匹配成功的路由指定下一跳地址
P a g e | 168
CCIE R/S & Service Provider Exam Certification Guide
5.set tag {tag-value}:为匹配成功的路由设置标签
match命令还可以和策略路由一起使用:
1.matchipaddress{ACLnumber|name}[„ACLnumber|name]:
匹配ACL所指定的数
据包的特征的路由
2.match length {min} {max}:匹配层3的数据包的长度
set命令也可以和策略路由一起使用:
1.setdefaultinterface{typenumber}[„typenumber]:
当不存在指向目标网络
的显式路由(explicit route)的时候,为匹配成功的数据包设置出口接口
2.setinterface{typenumber}[„typenumber]:
当存在指向目标网络的显式路由
的时候,为匹配成功的数据包设置出口接口
3.set ip default next-hop {ip-address}[„ip-address]:当不存在指向目标网络
的显式路由的时候,为匹配成功的数据包设置下一跳路由器地址
4.set ip precedence {precedence}:为匹配成功的IP数据包设置服务类型(Type of
Service,ToS)的优先级
5.set ip tos {tos}:为匹配成功的数据包设置服务类型的字段的TOS位
10.4.1 配置 Route-map
route map是通过名字来标识的,每个route map都包含许可或拒绝操作以及一个序列号,
序列号在没有给出的情况下默认是10,并且route map允许有多个陈述,如下:
Linus(config)#route-map Hagar 20
Linus(config-route-map)#match ip address 111
Linus(config-route-map)#set metric 50
Linus(config-route-map)#route-map Hagar 15
Linus(config-route-map)#match ip address 112
Linus(config-route-map)#set metric 80
尽管先输入的是20,后输入的是15,IOS将把15放在20之前.还可以允许删除个别陈述,如下:
Linus(config)#no route-map Hagar 15
在删除的时候要特别小心,假如你输入了no route-map Hegar而没有指定序列号,那么
整个route map将被删除.并且如果在添加match和set语句的时候没有指定序列号的话,那么
它们仅仅会修改陈述10.在匹配的时候,从上到下,如果匹配成功,将不再和后面的陈述进行
匹配,指定操作将被执行
关于拒绝操作,是依赖于route map是使用再路由的再发布中还是策略路由中,如果是在
策略路由中匹配失败(拒绝),那么数据包将按正常方式转发;如果是用于路由再发布,并且匹
配失败(拒绝),那么路由将不会被再发布
如果数据包没有找到任何匹配,和ACL一样,route map末尾也有个默认的隐含拒绝所有
的操作,如果是在策略路由中匹配失败(拒绝),那么数据包将按正常方式转发;如果是用于路
由再发布,并且匹配失败(拒绝),那么路由将不会被再发布
如果route map的陈述中没有match语句,那么默认的操作是匹配所有的数据包和路由;
每个route map的陈述可能有多个match和set语句,如下:
! route-map Garfield permit 10
P a g e | 169
CCIE R/S & Service Provider Exam Certification Guide
match ip route-source 15
match interface Serial0
set metric-type type-1
set next-hop 10.1.2.3
!
在这里,为了执行set语句,每个match语句中都必须进行匹配
10.4.2
路由策略
使用ip policy route-map命令定义策略路由,这个命令是基于接口的,并且只对进站(incoming)的
数据包有影响
现在要求在路由器Linus上使用策略路由,来自网络172.16.6.0的数据包只被转发到路由器Lucy上;
而来自172.16.7.0的数据包只转发到路由器Pigpen上.相应配置如下:
interface Serial0
ip address 172.16.5.1 255.255.255.0
ip policy route-map Sally
!
access-list 1 permit 172.16.6.0 0.0.0.255
access-list 2 permit 172.16.7.0 0.0.0.255
!
route-map Sally permit 10
match ip address 1
set ip next-hop 172.16.4.2
!
route-map Sally permit 15
match ip address 2
set ip next-hop 172.16.4.3
至于172.16.8.0的数据包将按正常方式被转发,并做负载均衡
再假设策略规定从172.16.1.0的服务器上发出的FTP和Telnet流量分别转发到Lucy和Pigpen上,
在路由器Schroeder上做如下配置:
interface Ethernet0
P a g e | 170
CCIE R/S & Service Provider Exam Certification Guide
ip address 172.16.1.4 255.255.255.0
ip policy route-map Rerun
!
access-list 105 permit tcp 172.16.1.0 0.0.0.255 eq ftp any
access-list 105 permit tcp 172.16.1.0 0.0.0.255 eq ftp-data any
access-list 106 permit tcp 172.16.1.0 0.0.0.255 eq telnet any
!
route-map Rerun permit 10
match ip address 105
set ip next-hop 172.16.2.1
!
route-map Rerun permit 20
match ip address 106
set ip next-hop 172.16.3.1
还可以根据数据包的大小来做策略路由,在路由器Schroeder上做如下配置:
interface Ethernet0
ip address 172.16.1.4 255.255.255.0
ip policy route-map Woodstock
!
route-map Woodstock permit 20
match length 1000 1600
set ip next-hop 172.16.2.1
!
route-map Woodstock permit 30
match length 0 400
set ip next-hop 172.16.3.1
对于路由器自己所产生的流量,要对它们做策略路由的话,使用ip local policy route-map,该命令
是基于全局配置模式下的,如下,在路由器Schroeder上的配置:
interface Ethernet0
ip address 172.16.1.4 255.255.255.0
ip policy route-map Woodstock
!
ip local policy route-map Woodstock
!
access-list 120 permit ip any 172.16.1.0 0.0.0.255
access-list 120 permit ospf any any
!
route-map Woodstock permit 10
match ip address 120
!
route-map Woodstock permit 20
P a g e | 171
CCIE R/S & Service Provider Exam Certification Guide
match length 1000 1600
set ip next-hop 172.16.2.1
!
route-map Woodstock permit 30
match length 0 400
set ip next-hop 172.16.3.1
只有match语句没有set语句,如果没有permit 10,那么OSPF Hello包会和permit 30匹
配并被转发到路由器Pigpen上,这将切断路由器Lucy和Schroeder之前的邻接关系;如果匹配
permit 10,OSPF Hello包将被正常转发,不影响邻接关系
10.4.3 在重分布中使用 Route-map
在路由的再发布中使用route map,只需要在使用redistribute的时候调用相应的route
map即可.拓扑图如下:
现在要求只相互再发布第三个8位位组为奇数的路由,在路由器Zippy上做如下配置:
router ospf 1
redistribute isis level-1 metric 20 subnets route-map Griffy
network 172.16.10.2 0.0.0.0 area 5
!
router isis
redistribute ospf 1 metric 25 route-map Toad metric-type internal level-2
net 47.0001.1234.5678.9056.00
!
access-list 1 permit 192.168.2.0
access-list 1 permit 192.168.4.0
access-list 1 permit 192.168.6.0
access-list 2 permit 172.16.1.0
access-list 2 permit 172.16.3.0
access-list 2 permit 172.16.5.0
access-list 2 permit 172.16.7.0
access-list 2 permit 172.16.9.0
!
route-map Griffy deny 10
match ip address 1
!
route-map Griffy permit 20
P a g e | 172
CCIE R/S & Service Provider Exam Certification Guide
!
route-map Toad permit 10
match ip address 2
其中permit 20没有match命令,因此默认匹配所有地址
上个例子使用distribution-list做简单的路由过滤也可达到相同效果,但是route map还可
以有更高级的功能,如下配置:
router ospf 1
redistribute isis level-1 metric 20 subnets route-map Griffy
network 172.16.10.2 0.0.0.0 area 5
!
router isis
redistribute ospf 1 metric 25 route-map Toad metric-type internal level-2
net 47.0001.1234.5678.9056.00
!
ip classless
access-list 1 permit 192.168.2.0
access-list 1 permit 192.168.4.0
access-list 1 permit 192.168.6.0
access-list 2 permit 172.16.9.0
access-list 2 permit 172.16.5.0
access-list 2 permit 172.16.7.0
access-list 2 permit 172.16.1.0
access-list 2 permit 172.16.3.0
!
route-map Griffy permit 10
match ip address 1
set metric-type type-1
!
route-map Griffy permit 20
!
route-map Toad permit 10
match ip address 2
set metric 15
set level level-1
!
route-map Toad permit 20
如上就是使用route map来控制再分布的OSPF外部路由类型和IS-IS路由Level
关于Route-map的更多应用参见后文BGP中的策略控制
P a g e | 173
CCIE R/S & Service Provider Exam Certification Guide
Chapter 11
NAT网络地址转换
11.1 NAT简介
NAT的优点和缺点:
优点:节省IP地址,能够处理地址重复的情况,增加了灵活性,消除了地址重新编号,
隐藏了内部的IP地址。
缺点:增加了延迟,丢失了端到端IP的跟踪过程,不能够支持一些特定的应用程序(如
MSN5.0以下版本),需要更多的内存来储存一个NAT表,需要更多的CPU来进行处理NAT的过程。
NAT的概念:
INSTDE(内部看)和OUTSIDE(外部看)。本地和全局。
NAT的原理
转换内部的源地址,转换外部的源地址,PAT,解决地址重叠的问题。
地址分类
1.IL
内部本地,地址不对外公布
2.IG
内部全局,外部可以知道内部设备
3.OG
外部全局,分布给外部设备的地址,不会向内部公布
4.OL
外部本地,通过这个地址,内部设备可以知道外部设备
NAT在cisco路由器中采用NAT地址翻译表进行地址映射
NATrouter#show ip nat translations
Pro Inside global
inside local
---
203.10.5.23
192.168.2.23
172.16.80.91
---
203.10.5.23
192.168.2.23
---
---
---
---
Outside local
172.16.80.91
Outside global
192.31.7.130
--192.31.7.130
NATrouter#
地址翻译表在一个条目刚加入时,启动一个定时器,如果超时,则去掉该条目,默认时
间为86400s(24h)
通过ip nat translation timeout 可以修改
P a g e | 174
CCIE R/S & Service Provider Exam Certification Guide
11.2 NAT和ISP迁移
ISP变迁时通过NAT可以极少的变动内部网络的情况下,进行ISP的迁移。
11.3 多AS系统中使用NAT
在没有NAT以前,需要在ISP通告的BGP路由条目中打洞
P a g e | 175
CCIE R/S & Service Provider Exam Certification Guide
使用NAT后,可以采用将一个ISP的地址段NAT到另一个ISP的地址段
或者使用RFC1918保留地址,然后在2个ISP的边界路由器上,同时做NAT
但这种方式只限于小规模网络,很多路由器不支持NAT的线速发包,所以在较多主机的时
候,会产生很大的delay
11.4 PAT
Cisco将多个ip映射到一个ip上可以通过PAT 将其映射到不同的端口
P a g e | 176
CCIE R/S & Service Provider Exam Certification Guide
11.5 NAT实现虚拟服务器
NAT and Virtual Server
11.6 NAT实现负载均衡
NAT and TCP Load Distribution
11.7 NAT的一些不足
由于NAT对IP和TCP信头的综合处理,使得一些服务在使用上会出现异常
1. 信头的checksum需要重新计算
2. IPSec等加密服务由于不能让NAT修改Ip报头,所以会工作异常
3. ICMP报文被修改
4. DNS解析时需要静态的NAT
5. FTP需要服务器打开被动模式,并采用PASV传送文件
P a g e | 177
CCIE R/S & Service Provider Exam Certification Guide
11.8 配置NAT
11.8.1 静态 NAT
在 E0 口上启用 ip nat inside 将其定义为内部端口
在 S1.705 上启用 ip nat outside 将其定义为外部端口
通过 ip nat source static 定义静态的地址映射
Mazatian Config
interface Ethernet0
ip address 10.1.1.1 255.255.255.0
ip nat inside
!
interface Serial1
encapsulation frame-relay
!
interface Serial1.705 point-to-point
ip address 199.100.35.254 255.255.255.252
ip nat outside
frame-relay interface-dlci 705
!
router ospf 100
network 10.1.1.1 0.0.0.0 area 0
default-information originate
!
ip nat inside source static 10.1.2.2 204.15.87.2
ip nat inside source static 10.1.1.3 204.15.87.1
!
ip route 0.0.0.0 0.0.0.0 199.100.35.253
Mazatlan#show ip nat translations
Pro Inside global
Inside local
--- 204.15.87.2
10.1.2.2
--- 204.15.87.1
10.1.1.3
P a g e | 178
Outside local
-----
Outside global
-----
CCIE R/S & Service Provider Exam Certification Guide
ip nat outside source static 201.114.37.5 10.1.3.1 将主机 D 配置外部 NAT,
使其看上去像内部网的一部分
Mazatlan#show ip nat translations
Pro Inside global
Inside local
--- 204.15.87.2
10.1.2.2
--- 204.15.87.1
10.1.1.3
--- ----此后内部地址将自动映射到外部地址
Mazatlan#show ip nat translations
Pro Inside global
Inside local
--- 204.15.87.2
10.1.2.2
--- 204.15.87.1
10.1.1.3
--- ------- 204.15.87.1
10.1.1.3
--- 204.15.87.2
10.1.2.2
Outside local
----10.1.3.1
Outside global
----201.114.37.5
Outside local
----10.1.3.1
10.1.3.1
10.1.3.1
Outside global
----201.114.37.5
201.114.37.5
201.114.37.5
为了让内部主机只能通过 OL 地址访问,可以做如下的访问控制过滤
interface Ethernet0
ip address 10.1.1.1 255.255.255.0
ip access-group 101 in
ip nat inside
!
interface Serial1
no ip address
encapsulation frame-relay
!
interface Serial1.705 point-to-point
ip address 199.100.35.254 255.255.255.252
ip nat outside
frame-relay interface-dlci 705
!
router ospf 100
network 10.1.1.1 0.0.0.0 area 0
default-information originate
!
ip nat inside source static 10.1.1.3 204.15.87.1
ip nat inside source static 10.1.2.2 204.15.87.2
ip nat outside source static 201.114.37.5 10.1.3.1
!
ip route 0.0.0.0 0.0.0.0 199.100.35.253
!
access-list 101 permit ip any host 10.1.3.1
P a g e | 179
CCIE R/S & Service Provider Exam Certification Guide
DNS1为内部授权DNS,DNS2为外部授权DNS
ip nat inside source static 10.1.1.3 204.15.87.1
ip nat inside source static 10.1.2.2 204.15.87.2
ip nat inside source static 10.1.1.4 204.15.87.3
ip nat inside source static 10.1.1.254 204.15.87.254
ip nat outside source static 201.114.37.5 10.1.3.1
ip nat outside source static 201.50.34.1 10.1.3.2
11.8.2 动态 NAT
interface Ethernet0
ip address 10.1.1.1 255.255.255.0
ip nat inside
!
P a g e | 180
CCIE R/S & Service Provider Exam Certification Guide
interface Serial1
no ip address
encapsulation frame-relay
!
interface Serial1.705 point-to-point
ip address 199.100.35.254 255.255.255.252
ip nat outside
frame-relay interface-dlci 705
!
router ospf 100
network 10.1.1.1 0.0.0.0 area 0
default-information originate
!
ip nat pool PoolOne 204.15.86.1 204.15.86.254 netmask 255.255.255.0
ip nat pool PoolTwo 204.15.87.1 204.15.87.253 prefix-length 24
ip nat inside source list 1 pool PoolOne
ip nat inside source list 2 pool PoolTwo
ip nat inside source static 10.1.1.254 204.15.87.254
!
ip route 0.0.0.0 0.0.0.0 199.100.35.253
!
access-list 1 permit 10.1.1.0 0.0.0.255
access-list 2 permit 10.1.2.0 0.0.0.255
可以在地址池中加入type mtch-host参数,以匹配主机
如果存在较多的IL地址共享IG地址,则可以减小translation计时器,防止地址不够分
Ip nat translation timeout 0
Show ip nat translation verbose 可以查看因超时被清除的路由信息
11.8.3 网络合并
由于公司合并等原因,2个网络将合并在一起,此时可能产生地址冲突,可以采用NAT解
决地址冲突问题
在两个网络的边界路由器上采用NAT
P a g e | 181
CCIE R/S & Service Provider Exam Certification Guide
Cozumel
interface Ethernet0
ip address 10.100.85.1 255.255.255.0
ip nat inside
!
interface Ethernet1
ip address 10.255.13.254 255.255.255.248
ip nat outside
!
router ospf 1
redistribute static
network 10.100.85.1 0.0.0.0 area 18
!
ip nat pool Surf 206.100.176.2 206.100.191.254 prefix-length 20
ip nat inside source list 1 pool Surf
ip nat inside source static 10.100.50.1 206.100.176.1
!
ip route 206.100.160.0 255.255.240.0 10.255.13.253
!
access-list 1 deny 10.255.13.254
access-list 1 permit any
Guaymas
interface Ethernet0
ip address 10.16.95.1 255.255.255.0
ip nat inside
!
interface Ethernet1
ip address 10.255.13.253 255.255.255.248
ip nat outside
!
interface Serial1
no ip address
encapsulation frame-relay
!
interface Serial1.508 point-to-point
ip address 10.18.3.253 255.255.255.0
ip nat inside
frame-relay interface-dlci 508
!
router eigrp 100
redistribute static metric 1000 100 255 1 1500
passive-interface Ethernet1
network 10.0.0.0
no auto-summary
!
ip nat pool Sand 206.100.160.2 206.100.175.254 prefix-length 20
ip nat inside source list 1 pool Sand
ip nat inside source static 10.16.95.200 206.100.160.1
!
ip route 206.100.176.0 255.255.240.0 10.255.13.254
!
access-list 1 deny 10.255.13.253
access-list 1 permit 10.0.0.0
P a g e | 182
CCIE R/S & Service Provider Exam Certification Guide
11.8.4 多 ISP 接入的 NAT
在未实现NAT以前,常采用BGP进行配置
现在可以采用如下方式配置NAT
interface Ethernet0
ip address 10.1.1.1 255.255.255.0
ip nat inside
!
interface Ethernet1
ip address 10.5.1.1 255.255.255.0
ip nat inside
!
interface Serial1
no ip address
encapsulation frame-relay
!
interface Serial1.708 point-to-point
description PVC to ISP1
ip address 205.113.49.253 255.255.255.252
ip nat outside
frame-relay interface-dlci 708
!
P a g e | 183
CCIE R/S & Service Provider Exam Certification Guide
interface Serial1.709 point-to-point
description PVC to ISP2
ip address 207.36.65.253 255.255.255.252
ip nat outside
frame-relay interface-dlci 709
!
router ospf 10
network 10.0.0.0 0.255.255.255 area 10
default-information originate always
!
router bgp 451
neighbor 205.113.49.254 remote-as 1135
neighbor 207.36.65.254 remote-as 216
!
ip nat pool ISP1 205.113.50.1 205.113.51.254 prefix-length 23
ip nat pool ISP2 207.36.76.1 207.36.77.254 prefix-length 23
ip nat inside source route-map ISP1_MAP pool ISP1
ip nat inside source route-map ISP2_MAP pool ISP2
!
access-list 1 permit 10.0.0.0 0.255.255.255
access-list 2 permit 207.36.65.254
!
route-map ISP1_MAP permit 10
match ip address 1
match interface Serial1.708
!
route-map ISP2_MAP permit 10
match ip address 1
match ip next-hop 2
将一个IL地址映射到多个IG地址,可以在声明中加入extendable参数
ip nat inside source static 10.5.1.2 207.36.76.100 extendable
11.8.5
PAT
interface Ethernet0
ip address 192.168.1.1 255.255.255.0
ip nat inside
!
interface Serial0
ip address 207.35.14.82 255.255.255.252
ip nat outside
!
ip nat inside source list 1 interface Serial0 overload!
P a g e | 184
CCIE R/S & Service Provider Exam Certification Guide
ip route 0.0.0.0 0.0.0.0 Serial0
!
access-list 1 permit 192.168.1.0 0.0.0.255
Barbados#show ip nat translations
Pro Inside global
Inside local
tcp 207.35.14.82:11011 192.168.1.3:11011
tcp 207.35.14.82:5000 192.168.1.2:11000
udp 207.35.14.82:3749 192.168.1.2:3749
tcp 207.35.14.82:11000 192.168.1.4:11000
tcp 207.35.14.82:11002 192.168.1.2:11002
udp 207.35.14.82:9371 192.168.1.2:9371
icmp 207.35.14.82:7428 192.168.1.3:7428
tcp 207.35.14.82:5001 192.168.1.2:11001
tcp 207.35.14.82:11001 192.168.1.4:11001
11.8.6
Outside local
191.115.37.2:23
191.115.37.2:23
135.88.131.55:514
191.115.37.2:23
118.50.47.210:23
135.88.131.55:514
135.88.131.55:7428
135.88.131.55:23
135.88.131.55:23
Outside global
191.115.37.2:23
191.115.37.2:23
135.88.131.55:514
191.115.37.2:23
118.50.47.210:23
135.88.131.55:514
135.88.131.55:7428
135.88.131.55:23
135.88.131.55:23
NAT 实现 TCP 负载均衡
interface Ethernet0
ip address 192.168.1.1 255.255.255.0
ip nat inside
!
interface Serial0
ip address 207.35.14.82 255.255.255.252
ip nat outside
!
ip nat pool V-Server 192.168.1.2 192.168.1.4 prefix-length 24 type rotary
ip nat inside destination list 1 pool V-Server
!
ip route 0.0.0.0 0.0.0.0 Serial0
!
access-list 1 permit 199.198.5.1
P a g e | 185
CCIE R/S & Service Provider Exam Certification Guide
11.8.7
服务分布
interface Ethernet0
ip address 192.168.1.1 255.255.255.0
ip nat inside
!
interface Serial0
ip address 207.35.14.82 255.255.255.252
ip nat outside
!
ip nat inside source static tcp 192.168.1.4 25 199.198.5.1 25 extendable
ip nat inside source static udp 192.168.1.3 514 199.198.5.1 514 extendable
ip nat inside source static udp 192.168.1.3 69 199.198.5.1 69 extendable
ip nat inside source static tcp 192.168.1.3 21 199.198.5.1 21 extendable
ip nat inside source static tcp 192.168.1.3 20 199.198.5.1 20 extendable
ip nat inside source static tcp 192.168.1.2 80 199.198.5.1 80 extendable
!
ip route 0.0.0.0 0.0.0.0 Serial0
show ip nat statistics
debug ip nat、debug ip nat detailed
Clear ip nat translation *
可以看到一些翻译地址的统计信息
可以查看NAT翻译的过程。显示协议、
源/目的Port、方向。
删除动态转换条目。
11.9 CCIE试验中的NAT
在R1 向BB1 隐藏YY.YY.0.0 的地址,不得建立新的端口,不能使用静态路由,可以使用
1YY.0.0.1/24 这个地址,地址池可以使用此网段地址,而且其他路由器还能Ping 通
150.100.1.254 这个地址。
int loop0
ip add 1YY.0.0.1 255.255.255.0 sec
inter s0
ip nat inside
inter s1
ip nat inside
inter e0/0
ip nat outside
ip nat pool ccie permit 1yy.0.0.2 1yy.0.0.254 prefix 24
P a g e | 186
CCIE R/S & Service Provider Exam Certification Guide
ip nat inside souce list 10 pool ccie
access-list 10 permit yy.yy.0.0 0.0.255.255
access-list 5 permit 1yy.0.0.1 0.0.0.255
route-map c2r permit 10
match ip address 5
route-map r2o deny 10
match ip address 5
route-map r2o permit 20
!
router rip
redistribute connected route-map c2r
//将1yy.0.0.1通告进rip使bb1可以看到但题目说r1 不发路由给BB1,
distribute-list 10 out e0/0 //只将1yy.0.0.1通告给bb1
!
Router ospf 1
Redistribute rip metric 200 metric-type 1 sub route-map r2o
//不将1yy.0.0.1通告给ospf
!
//show ip nat statistics
//show ip nat translations
P a g e | 187
CCIE R/S & Service Provider Exam Certification Guide
Chapter 12
ACL访问控制列表
12.1 ACL的工作方式
访问控制列表时一些列自上而下按顺序逐条执行的控制条件,其设置方式和很久以前的行号 Basic
类似。访问控制列表的种类如下
router(config)#access-list ?
<1–99>IP standard access list
<100–199>IP extended access list
<1000–1099>IPX SAP access list
<1100–1199>Extended 48-bit MAC address access list
<1200–1299>IPX summary address access list
<1300–1999>IP standard access list (expanded range)
<200–299>Protocol type-code access list
<2000–2699>IP extended access list (expanded range)
<300–399>DECnet access list
<400–499>XNS standard access list
<500–599>XNS extended access list
<600–699>Appletalk access list
<700–799>48-bit MAC address access list
<800–899>IPX standard access list
<900–999>IPX extended access list
访问控制列表的过滤基于地址匹配的条件,最终对给定的地址一个 permit 或者 deny 的判断,配置
ACL 需要注意以下规则
1. 所有的访问控制列表最后都存在一个隐含的 deny all 的条件,但配置文件不显示出来
2. 访问控制列表为顺序执行方式,满足某条后,停止执行
3. 访问控制列表应按一定的顺序,从特殊到一般配置,先拒绝特定主机,然后组或一般条件的
过滤操作
4. 表中新的列表项总是加在访问控制列表的最后,可以使用 no accees-list x 删除整个列表,
但不能有选择的删除或者添加条目
5. 没有任何定义的访问控制列表可以 permit 所有数据
6. 配置访问控制列表,应先配置好列表再加载到相应的进程上
7. IP 访问控制列表会发送一个 ICMP 主机不可达的消息到数据包的发送者,然后丢弃数据包
8. 采用的过滤规则与所过滤得数据源要尽量接近,安全过滤通常是阻止入站访问,数据过滤一
般采用出站过滤或者禁止通过某条链路
9. 删除访问控制列表需要注意,如果某个列表挂接在实际接口上,删除列表后,默认的 deny any
规则会阻断那个接口的所有数据流量
12.2
标准访问控制列表
在 cisco IOS12.0 中,标准访问控制列表在 1~99 和 1300~1999 范围内,可以在列表后加 log 关
键字,匹配信息可以在控制台显示出来,其用法如下
Access-list x {deny | permit} a.b.c.d wildcard_mask {log}
标准访问控制列表用于如下方式:
1. 数据包过滤
2. 路由过滤
3. 为 NAT 或 DDR 等链路定义期望数据流
P a g e | 188
CCIE R/S & Service Provider Exam Certification Guide
如下拓扑结构,将禁止 jefferson 具有到 172.16.2.0/24 的路由,允许用户 172.16.1.129 通过 telnet 访
问 henry,但拒绝其他任何访问方式,同时禁止 172.16.1.0/24 访问令牌环网
过滤前 jefferson 的路由表
jefferson#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate default
U - per-user static route, o - ODR
T - traffic engineered route
Gateway of last resort is not set
172.16.0.0/24 is subnetted, 2 subnets
D 172.16.1.0 [90/297728] via 128.200.1.2, 00:00:31, TokenRing0
D 172.16.2.0 [90/323328] via 128.200.1.2, 00:00:18, TokenRing0
128.200.0.0/24 is subnetted, 1 subnets
C 128.200.1.0 is directly connected, TokenRing0
jefferson#
配置路由过滤
paine(config)#router eigrp 2001
paine(config-router)#distribute-list 1 out to1
paine(config-router)#exit
paine(config)#access-list 1 deny 172.16.2.0 0.0.0.255
paine(config)#access-list 1 permit any
paine(config)#exit
paine#
过滤后的路由表
jefferson#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate default
U - per-user static route, o - ODR
T - traffic engineered route
Gateway of last resort is not set
172.16.0.0/24 is subnetted, 2 subnets
P a g e | 189
CCIE R/S & Service Provider Exam Certification Guide
D 172.16.1.0 [90/297728] via 128.200.1.2, 00:00:31, TokenRing0
C 128.200.1.0 is directly connected, TokenRing0
jefferson#
允许telnet访问路由器
henry#conf t
Enter configuration commands, one per line. End with CNTL/Z.
henry(config)#access-list 1 permit 172.16.1.129 0.0.0.0
henry(config)#line 2 6
henry(config-line)#access-class 1 in
henry(config-line)#^Z
控制网络访问
paine#conf t
Enter configuration commands, one per line. End with CNTL/Z.
01:42:01: %SYS-5-CONFIG_I: Configured from console by console
paine(config)#access-list 5 deny 172.16.1.0 0.0.0.255
paine(config)#access-list 5 permit any
paine(config)#int to1
paine(config-if)#ip access-group 5 out
paine(config-if)#^Z
12.3
扩展访问控制列表
扩展 IP 访问控制列表的范围为 100~199 和 2000~2699,通过如下命令配置
access-list {100-199 | 2000-2699} {permit | deny} protocol_type Source_address
Source_address_wildcard destination_address destination_address_wildcard
[protocol specific options] [precedence precedence][tos tos][log][established]
支持的 Protocol_type 类型
Value
What It Means
<0–
255>
Authentication Header Protocol
eigrp
Cisco's EIGRP routing protocol
esp
Encapsulation Security Payload
gre
Cisco's GRE tunneling
icmp
Internet Control Message Protocol
igmp
Internet Gateway Message Protocol
igrp
Cisco's IGRP routing protocol
ip
Any Internet protocol
ipinip
IP in IP tunneling
nos
KA9Q NOS-compatible IP over IP tunneling
ospf
OSPF routing protocol
pcp
Payload Compression Protocol
pim
Protocol Independent Multicast
tcp
Transmission Control Protocol
udp
User Datagram Protocol
支持的 TCP 端口号列表
P a g e | 190
An IP protocol number
ahp
CCIE R/S & Service Provider Exam Certification Guide
Value
What It Means
<0–
65535>
Port number
bgp
Border Gateway Protocol (179)
chargen
Character generator (19)
cmd
Remote commands (rcmd, 514)
daytime
Daytime (13)
discard
Discard (9)
domain
Domain Name Service (53)
echo
Echo (7)
exec
Exec (rsh, 512)
finger
Finger (79)
ftp
File Transfer Protocol (21)
ftp-data
FTP data connections (used infrequently, 20)
gopher
Gopher (70)
hostname
NIC host name server (101)
ident
Ident Protocol (113)
irc
Internet Relay Chat (194)
klogin
Kerberos login (543)
kshell
Kerberos shell (544)
login
Login (rlogin, 513)
lpd
Printer service (515)
nntp
Network News Transport Protocol (119)
pim-auto-rp
PIM Auto-RP (496)
pop2
Post Office Protocol v2 (109)
pop3
Post Office Protocol v3 (110)
smtp
Simple Mail Transport Protocol (25)
sunrpc
Sun Remote Procedure Call (111)
Syslog
Syslog (514)
Tacacs
TAC Access Control System (49)
Talk
Talk (517)
telnet
Telnet (23)
Time
Time (37)
Uucp
UNIX-to-UNIX Copy Program (540)
Whois
Nicname (43)
www
支持的 UDP 端口号列表
Value
World Wide Web (HTTP, 80)
What It Means
<0–
65535>
Port number
biff
(mail notification, comsat, 512)
bootpc
Bootstrap Protocol (BOOTP) client (68)
bootps
Bootstrap Protocol (BOOTP) server (67)
discard
Discard (9)
dnsix
DNSIX security protocol auditing (195)
domain
Domain Name Service (DNS, 53)
echo
Echo (7)
P a g e | 191
CCIE R/S & Service Provider Exam Certification Guide
isakmp
Internet Security Association and Key Management Protocol
(500)
mobile-ip
Mobile IP registration (434)
nameserver
IEN116 name service (obsolete, 42)
netbiosdgm
NetBIOS datagram service (138)
netbios-ns
NetBIOS name service (137)
netbios-ss
NetBIOS session service (139)
ntp
Network Time Protocol (123)
pim-auto-rp
PIM Auto-RP (496)
rip
Routing Information Protocol (router, in.routed, 520)
snmp
Simple Network Management Protocol (161)
snmptrap
SNMP Traps (162)
sunrpc
Sun Remote Procedure Call (111)
syslog
System Logger (514)
tacacs
TAC Access Control System (49)
talk
Talk (517)
tftp
Trivial File Transfer Protocol (69)
time
Time (37)
who
Who service (rwho, 513)
xdmcp
支持的 ICMP 报文类型列表
<0-255>
administratively-prohibited
X Display Manager Control Protocol (177)
ICMP message type
Administratively prohibited
alternate-address
Alternate address
conversion-error
Datagram conversion
dod-host-prohibited
Host prohibited
dod-net-prohibited
Net prohibited
dscp
Match packets with given dscp value
echo
Echo (ping)
echo-reply
Echo reply
fragments
Check non-initial fragments
general-parameter-problem
Parameter problem
host-isolated
Host isolated
host-precedence-unreachable
Host unreachable for precedence
P a g e | 192
host-redirect
Host redirect
host-tos-redirect
Host redirect for TOS
host-tos-unreachable
Host unreachable for TOS
host-unknown
Host unknown
host-unreachable
Host unreachable
information-reply
Information replies
information-request
Information requests
log
Log matches against this entry
log-input
Log matches against this entry, including input interface
mask-reply
Mask replies
mask-request
Mask requests
mobile-redirect
Mobile host redirect
CCIE R/S & Service Provider Exam Certification Guide
net-redirect
Network redirect
net-tos-redirect
Net redirect for TOS
net-tos-unreachable
Network unreachable for TOS
net-unreachable
Net unreachable
network-unknown
Network unknown
no-room-for-option
Parameter required but no room
option-missing
Parameter required but not present
packet-too-big
Fragmentation needed and DF set
parameter-problem
All parameter problems
port-unreachable
Port unreachable
precedence
Match packets with given precedence value
precedence-unreachable
Precedence cutoff
protocol-unreachable
Protocol unreachable
reassembly-timeout
Reassembly timeout
redirect
All redirects
router-advertisement
Router discovery advertisements
router-solicitation
Router discovery solicitations
source-quench
Source quenches
source-route-failed
Source route failed
time-exceeded
All time exceededs
time-range
Specify a time-range
timestamp-reply
Timestamp replies
timestamp-request
Timestamp requests
tos
Match packets with given TOS value
traceroute
Traceroute
ttl-exceeded
TTL exceeded
unreachable
All unreachables
其中经常用到的为 echo,和 echo-reply, echo 为 ping 包,后者为 ping 包的回复报文,一方面有些简单
的 DDOS 攻击采用 ping 包,另一方面在 CCIE lab 中也经常考到
如上拓扑结构,在接口上定义访问控制列表进行接入访问控制如下:
P a g e | 193
CCIE R/S & Service Provider Exam Certification Guide
access_router(config)#access-list 199 permit tcp any any established
access_router(config)#access-list 199 deny ip 206.191.241.40 0.0.0.7 any
access_router(config)#access-list 199 deny ip host 206.191.194.42 host 206.191.194.42
access_router(config)#access-list 199 permit icmp any any echo
access_router(config)#access-list 199 permit icmp any any echo-reply
access_router(config)#access-list 199 permit tcp any 206.191.241.40 0.0.0.7 eq www
access_router(config)#access-list 199 permit tcp any 206.191.241.40 0.0.0.7 eq smtp
access_router(config)#access-list 199 permit tcp any 206.191.241.40 0.0.0.7 eq domain
access_router(config)#access-list 199 permit udp any 206.191.241.40 0.0.0.7 eq domain
access_router(config)#access-list 199 deny tcp any 206.191.241.40 0.0.0.7 lt 1024
access_router(config)#access-list 199 deny tcp any 206.191.241.40 0.0.0.7 gt 1023
access_router(config)#access-list 199 permit udp any 206.191.241.40 0.0.0.7 gt 1023
access_router(config)#access-list 199 deny udp any 206.191.241.40 0.0.0.7 gt 50000
access_router(config)#access-list 199 deny udp any 206.191.241.40 0.0.0.7 lt 1024
access_router(config)#int bri 0
access_router(config-if)#ip access-group 199 in
对于如上访问控制列表的解释如下:
1.
第一行调用关键字 establish 路由器会在 TCP 报头中寻找 ACK 或者 RESET 报文,这样就使
得已建立的数据流通过访问控制列表时产生匹配
2.
第二,三行用来防止电子欺骗,2 用于防止外部冒充 lan 地址访问,3 防止电子欺骗
3.
第四,五行用于 ping 的收发
4.
后面则是允许 www,smtp 和 DNS 流量,注意 DNS 同时存在 TCP 和 UDP2 种方式
5.
后续则是对一些端口进行处理 lt 小于 eq 等于 gt 大于
12.4
访问控制列表的显示
可以使用 show access-list 查看访问控制列表,同时可以调用 clear access-list counter 清除计数
对于某些带有 log 参数的 acl,可以通过 logging buffered 捕获所有的控制台消息,然后 show log
可以看到相应的记录
access_router# show ip access-lists
Standard IP access list 69
permit 206.191.241.0, wildcard bits 0.0.0.255 log
Extended IP access list 101
deny udp host 172.16.16.2 host 204.221.151.211 eq domain
permit tcp any any established (15992 matches)
permit ip any 192.168.5.0 0.0.0.255 (43 matches)
permit ip any 204.221.151.0 0.0.0.255 (169 matches)
permit icmp any any echo (78 matches)
permit icmp any any echo-reply (9 matches)
permit tcp any any eq www (216 matches)
permit udp any any
Extended IP access list 110
permit ip any any (37779 matches)
permit tcp any any established
Extended IP access list 199
permit tcp any any established (175 matches)
deny ip 206.191.241.40 0.0.0.7 any
deny ip host 206.191.194.42 host 206.191.194.42
permit icmp any any echo
permit icmp any any echo-reply
permit tcp any 206.191.241.40 0.0.0.7 eq www
permit tcp any 206.191.241.40 0.0.0.7 eq smtp
permit tcp any 206.191.241.40 0.0.0.7 eq domain
permit udp any 206.191.241.40 0.0.0.7 eq domain
deny tcp any 206.191.241.40 0.0.0.7 lt 1024
deny tcp any 206.191.241.40 0.0.0.7 gt 1023
permit udp any 206.191.241.40 0.0.0.7 gt 1023 (13 matches)
deny udp any 206.191.241.40 0.0.0.7 gt 50000
P a g e | 194
CCIE R/S & Service Provider Exam Certification Guide
deny udp any 206.191.241.40 0.0.0.7 lt 1024
access_router#
12.5
动态访问控制列表
动态访问控制列表能够允许用户在通过路由器认证之后进行临时性的访问,例如实际上可能需要cisco
TAC的工程师远程登录来检查网络故障时,可以使用这种方式。配置方式如下:
1. 定义一个用户名和密码
2. 定义用户名时加上
autocommand 和 timeout 参数;这些参数必须和动态访问控制列表中指定的
超时值匹配
3. 定义一个仅一行的动态访问控制列表,指定用户在通过认证后才能传输数据,同时此行设置一个超
时值,应和如上值匹配。
4. 定义一个扩展访问控制列表,其范围和动态访问控制列表一样,用这表对接口进行常规数据流量过
滤,其中必须允许该接口的telnet访问,因为是用telnet认证的,最后将此访问控制列表加到接口
5. 将 login local 加到vty线路号中去,这些线路信息可以通过show line 显示
定义用户名和密码:
username franklin password ben
username franklin autocommand access-enable timeout 5
access-enable是一条隐藏命令,后面的时间单位为分钟,此超时为空闲超时
定义动态访问控制列表如下:
access-list 101 dynamic allowben timeout 5 permit ip 172.16.1.0 0.0.0.255 any
access-list 101 permit tcp 172.16.1.0 0.0.0.255 host 172.16.1.2 eq telnet
CISCO对于配置动态访问控制列表有如下规则和建议:
1. 对于超时,可以通过autocommand 后加 access-enable 来定义,也可以用 acl中的timeout
来定义,空闲超时和绝对超时(ACL的那个时间)必须定义,否则,临时性的访问控制列表
将无限期的常住在接口上
2. 如果要配置一个空闲超时,其值应等于拨号空闲超时值
3. 空闲超时应小于绝对超时
上图中路由器Paine的配置如下
hostname paine
!
P a g e | 195
CCIE R/S & Service Provider Exam Certification Guide
enable password 7 02050D480809
!
username franklin password 7 02040155
username franklin autocommand access-enable timeout 5
!!
interface Ethernet0
no ip address
shutdown
media-type 10BaseT
!
interface Ethernet1
ip address 172.16.1.2 255.255.255.0
ip access-group 101 in
media-type 10BaseT
!
<<<text omitted>>>
!
interface TokenRing1
ip address 128.200.1.2 255.255.255.0
ring-speed 16
!
router eigrp 2001
network 128.200.0.0
network 172.16.0.0
no auto-summary
!
ip classless
!
access-list 101 dynamic allowben timeout 5 permit ip 172.16.1.0 0.0.0.255 any
access-list 101 permit tcp 172.16.1.0 0.0.0.255 host 172.16.1.2 eq telnet
!!
line con 0
line aux 0
line vty 0 4
login local
!
end
测试动态访问控制列表如下
washington#
washington#ping 128.200.1.5
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 128.200.1.5, timeout is 2 seconds:
U.U.U
Success rate is 0 percent (0/5)
washington#
washington#
washington#telnet 172.16.1.2
Trying 172.16.1.2 ... Open
User Access Verification
Username: franklin
Password:
[Connection to 172.16.1.2 closed by foreign host]
washington#
washington#
washington#ping 128.200.1.5
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 128.200.1.5, timeout is 2 seconds:
!!!!!
P a g e | 196
CCIE R/S & Service Provider Exam Certification Guide
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/6/8 ms
washington#
<<<After 5 minutes expires>>>
washington#ping 128.200.1.5
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 128.200.1.5, timeout is 2 seconds:
U.U.U
Success rate is 0 percent (0/5)
washington#
12.6
命名的访问控制列表
Cisco IOS 11.2以后出现带命名的访问控制列表,配置方式如下
ip access-list {standard | extended} access_list_name
然后进入控制列表条目,输入方式如下,前者为标准访问控制列表使用,后者为扩展访问控制列表使用
{permit | deny} a.b.c.d [wildcard_mask]
{permit | deny} protocol_type source_address source_address_wildcard
destination_address destination_address_wildcard [protocol specific options] {log}
然后将这个访问控制列表使用 access-group 挂接在某个接口上,
Screening_router(config)#ip access-list standard allow_net_172
Screening_router(config-std-n)#permit 172.0.0.0 0.255.255.255
Screening_router(config-std-n)#exit
Screening_router(config)#int e0/0
Screening_router(config-if)#ip access-group allow_net_172
12.7
CCIE试验中的ACL
CCIE试验中对ACL的考察十分细致,例如计算wildcard_mask来精确控制访问网段
ACL中匹配计算方法为,将ACL中的地址和反掩码进行逻辑或进行运算,得出A值,将实际IP和反掩码进
行逻辑或运算,得到B值,若A=B,访问控制列表条件为真。
1.仅允许偶数字网访问
state_patrol(config)#ip access-list standard alloweven
state_patrol(config-std-nacl)#permit 150.100.0.0 0.0.254.255
state_patrol(config-std-nacl)#exit
state_patrol(config)#router eigrp 2001
state_patrol(config-router)#distribute-list alloweven out s0
state_patrol(config-router)#^Z
2。仅允许奇数字网访问
state_patrol(config)#ip access-list standard allowodd
state_patrol(config-std-nacl)#permit 150.100.1.0 0.0.254.255
state_patrol(config-std-nacl)#exit
state_patrol(config)#router eigrp 2001
state_patrol(config-router)#distribute-list allowodd out s0
state_patrol(config-router)#^Z
3. 在sw1 F0/17端口下作MAC-ADDRESS-LIST,DENY ETHERNET TYPE 6000 的帧。
P a g e | 197
CCIE R/S & Service Provider Exam Certification Guide
mac access-list extended BLOCK_ETH6000
deny any any etype-6000
permit any any
int f0/17
mac access-group BLOCK_ETH6000 in
4. 在R2以内的区域为clean区域,从R2到 BB1之间的区域是 Dirty区域,在R2的子接口上配置:
两个域之间都允许routing和ICMP包通过,外出包允许TCP、UDP,进入的包不允许有其它访问。
ip access-list extended outacl
permit eigrp any any
permit icmp any any
permit tcp any any eq bgp
permit udp any any reflect flow
permit tcp any any reflect flow
ip access-list extended inacl
permit eigrp any any
permit icmp any any
permit tcp any any eq bgp
evaluate flow
int e0.2
ip access-group inacl in
ip access-group outacl out
5.Tcp intercept
VlanA有PC对BB1的服务器150.100.1.240进行syn flooding close, the tcp connection
even the legitimate which open after 2.5 minuts.In TCP intercept,the original
file said the server is 150.100.1.24, but in his lab,the attack is it.
Access-list 110 permit tcp 148.1.X.0 0.0.0.255 150.100.1.240
Ip tcp intercept list 110
Ip tcp intercept mode intercept
Ip tcp intercept connection-timeout 150
//show tcp intercept connections show tcp intercept statisics
6.ICMP flooding
怀疑ICMP 来自R5 与R2 连接的帧中继链路上,use access-list 日志跟踪出发送大量
无效数据报的攻击源地址。ACL命名为ICMPTRACKER,但不能阻断任何正常报文
Ip access-list extended ICMPTRACKER
Permit icmp any any log-input
Permit ip any any
Inter s0/0
Ip access-group ICMPTRACKER in
7.要求只能YY.YY.28.0 网段telnet 至R4,用户名:joe,密码:joeshowbgp,telnet 上
来后自动显示show ip bgp summary 后断掉
Access-list 110 permit tcp 1.1.28.0 0.0.0.255 any eq 23
Username joe password joeshowbgp
Username joe autocommand show ip bgp summary
Line vty 0 4
Login local
Access-class 110 in
8.DF(DATA FRAGMENT)
管理员发现有大量的设置了DF位的超大的数据包攻击BB2 上某个web-server,ip 为
150.100.2.4, 非初始分段包到此服务器拒绝,初始包到此服务器允许.
Access-list 110 deny ip any 150.100.2.4 0.0.0.0 fragments
P a g e | 198
CCIE R/S & Service Provider Exam Certification Guide
Access-list 110 permit ip any any
Inter s0/0
Ip access-group 110 in
9. Time-Ranges ACL.
在VlanB上,每周8:00~18:00 不准www流量通过,同时周末,从中午到16:00不准UDP
流量通过,在R5 的F0/0 做access-list, 过滤RFC1918 规定的三个网段的私有地址和
127.0.0.0/8 这个地址。
Clock timezone GMT +8
Clock set xx:xx:xx day month year //可以考虑不加
time-range weekdays
period weekdays 8:00 to 18:00
time-range weekend
period weekend 12:00 to 16:00
access-list 110 deny tcp 135.1.57.0 0.0.0.255 any eq www time-range weekdays
access-list 110 deny upd any any time-range weekend
access-list 110 deny ip 10.0.0.0 0.255.255.255 any
access-list 110 deny ip 127.0.0.0 0.255.255.255 any
access-list 110 deny ip 172.16.0.0 0.15.255.255 any
access-list 110 deny ip 192.168.0.0 0.0.255.255 any
//没说哪个是目的哪个是源,需不需要any
access-list 11p permit ip any any
inter fa0/0
ip access-group 100 in
10.在R2以内的区域为clean区域,从R2到 BB1之间的区域是 Dirty区域,在R2的子接口上
配置:两个域之间都允许routing和ICMP包通过,外出包允许TCP、UDP,进入的包不允
许有其它访问.(fa0/0是单臂路由,fa0/0.1 rip连bb1----150.100.1.0 fa0/0.2是
eigrp------133.1.12.0)当你配完以上的访问列表后你发现从R2上不再能TELNET到R1
上,请解决此问题
Ip access-list extended outband
Permit icmp any any
Permit eigrp any any
Permit tcp any any eq bgp
Permit tcp any any reflect ccie
Permit udp any any reflect ccie
Ip access-list extended inbound
Permit eigrp any any
Permit tcp any any eq bgp
Permit icmp any any
Evaluate ccie
Inter fa0/0.1
Ip access-group inbound in
Ip access-group outbound out
Ip access0list extended inbound
Permit tcp 133.1.12.1 eq 23 any //reflexive acc不支持从本地路由器发起的
11. Support engineers who come in through vlan_d must be given occasional access
to the rest of your yy.yy.0.0 net they will telnet from sw1 to r4 e0/0 and
give their crendentials once this is done
they will have unrestricted access to the rest of the network .Use local
authentication on r4 allows unrestricted access for 10 minutes and 2 minutes
idle.make sure the existing feature of this link(connectivity,route)is not
compromise.User name is ccie,password is cisco
R4:
P a g e | 199
CCIE R/S & Service Provider Exam Certification Guide
Username ccie password cisco
Username ccie autocommand access-enable timeout 2
Access-list 101 permit tcp 1.1.13.0 0.0.0.255 1.1.13.4 0.0.0.0 eq 23
Access-list 101 permit ospf any any
Access-list 101 permit icmp 1.1.13.7 0.0.0.0 any
Access-list 101 dynamic-list ccie timeout 10 ip 1.1.13.7 0.0.0.0 1.1.0.0 0.0.255.255
Inter e0/0
Access-group 101 in
Line vty 0 4
Login local
P a g e | 200
CCIE R/S & Service Provider Exam Certification Guide
Chapter 13
路由器备份选择协议
13.1 HSRP热备份路由选择协议
13.1.1
冗余性网络中的路由问题
1.缺省网关:当设置默认的网关失效后,数据就不能到别的网段;即使存在作为网关使用的
冗余路由器,也不能动态的方法将这些设备切换到新的网关地址。
2.代理ARP:如果要获得切换路由器的MAC地址,源端工作站必须要么发起另一个ARP请求,
要么重新启动,那么就可能在一段时间通信无法实现。导致PC机的ARP缓存可能有几个小时
不能刷新ARP缓存。
注:在win95、98环境下使用代理ARP,缺省网关必须设置为该主机设备自己IP地址
3.路由选择协议:采用RIP协议,如果源工作站被配置为使用RIP,那么在RIP可以选用另一
路由器之前,就会浪费很长的时间去更新。
4.IRDP (ICMP Router Discovery Protocol)
①. 用icmp,每一个路由每7分钟发router advertisment, host就可以自动获得gateway
②. 有支持IRDP的PC,开机发处请求
13.1.2
HSRP协议概述
实现HSRP的条件是系统中有多台路由器,它们组成一个“热备份组”,这个组形成一个
虚拟路由器。在任一时刻,一个组内只有一个路由器是活动的,并由它来转发数据包,如果
活动路由器发生了故障,将选择一个备份路由器来替代活动路由器,但是在本网络内的主机
看来,虚拟路由器没有改变。所以主机仍然保持连接,没有受到故障的影响,这样就较好地
解决了路由器切换的问题。
为了减少网络的数据流量,在设置完活动路由器和备份路由器之后,只有活动路由器
和备份路由器定时发送HSRP报文。如果活动路由器失效,备份路由器将接管成为活动路由器。
如果备份路由器失效或者变成了活动路由器,将有另外的路由器被选为备份路由器。
在实际的一个特定的局域网中,可能有多个热备份组并存或重叠。每个热备份组模仿
一个虚拟路由器工作,它有一个Well-known-MAC地址和一个IP地址。该IP地址、组内路由
器的接口地址、主机在同一个子网内,但是不能一样。当在一个局域网上有多个热备份组存
在时,把主机分布到不同的热备份组,可以使负载得到分担。
13.1.3
HSRP的工作原理
HSRP协议利用一个优先级方案来决定哪个配置了HSRP协议的路由器成为默认的主动路
由器。如果一个路由器的优先级设置的比所有其他路由器的优先级高,则该路由器成为主动
路由器。路由器的缺省优先级是100,所以如果只设置一个路由器的优先级高于100,则该路
由器将成为主动路由器。
通过在设置了HSRP协议的路由器之间广播HSRP优先级,HSRP协议选出当前的主动路由
器。当在预先设定的一段时间内主动路由器不能发送hello消息时,优先级最高的备用路由
器变为主动路由器。路由器之间的包传输对网络上的所有主机来说都是透明的。
配置了HSRP协议的路由器交换以下三种多点广播消息:
Hello——— hello消息通知其他路由器发送路由器的HSRP优先级和状态信息,HSRP路由器
默认为每3秒钟发送一个hello消息;
Coup———
当一个备用路由器变为一个主动路由器时发送一个coup消息;
P a g e | 201
CCIE R/S & Service Provider Exam Certification Guide
Resign———
当主动路由器要宕机或者当有优先级更高的路由器发送hello消息时,
主动路由器发送一个resign消息。
在任一时刻,配置了HSRP协议的路由器都将处于以下六种状态之一:
Initial——
HSRP启动时的状态,HSRP还没有运行,一般是在改变配置或端口刚刚
启动时进入该状态。
learn———
路由器已经得到了虚拟IP地址,但是它既不是活动路由器也不是等待
路由器。它一直监听从活动路由器和等待路由器发来的HELLO报文。
Listen———
路由器正在监听hello消息。
Speak———
在该状态下,路由器定期发送HELLO报文,并且积极参加活动路由器
或等待路由器的竞选。
Standby———
当主动路由器失效时路由器准备接包传输功能。
Active———
路由器执行包传输功能。
使用HSRP时,当末端工作站使用的缺省网关不可用时,可以继续在网络上进行通信。
1. 在HSRP中,是采用有一套的路由器,分为活跃、备份、虚拟、其他路由器等体系,在
外部看来,它是一台拥有IP和MAC地址的目标路由器。
2. 活跃路由器的功能是负责转发发送到虚拟路由器的数据。它通过发送HELLO消息(基于
UDP广播)来通告它的活跃状态
3. 组中会有另外的一台路由器来作为备份路由器。它的功能是监视HSRP组中的运行状态,
并且在当前活跃路由器不可用时,迅速承担起负责数据转发的任务。备份路由器也发
送HELLO消息来通告组中其他的路由器它备份路由器的角色。
4. 虚拟路由器的功能是向最终的用户来代表一台能持续工作的路由器设备。它有自己的
MAC和IP地址。但是实际上它是不用来转发数据包,它的作用仅仅是代表一台可用的路
由设备。
5. 其他路由器也监听HELLO消息,但是不作应答,这样它就不会在备份组有身份的概念,
同时它也不参与发送到虚拟路由器的数据包,但是还是转发其他路由器发来的数据包。
注:在每个VLAN子网配置一个单独的HSRP组。
活跃路由器的竞争机制
1.默认状态的情况下,MAC地址最小的路由器将成为活跃的路由器。
2.当活跃路由器失效的情况下,备份路由器将成为活跃路由器。但是如果在活跃和备份路
由器都失效的情况下,路由器身份的竞争依照如下的原则
①. 在HSRP中有最高备份优先级的路由器将成为活跃/备份路由器,
缺省的优先级是100,优先级从0~255。
②.
当优先级相同的情况下,具有最高IP地址的路由器将成为活跃的路由器
③.
默认还是MAC地址最小的成为活跃路由器
13.1. 4 配置HSRP热备份路由协议
1.配置一个接口以参与HSRP备份组
Router (config –
if)#standby group-number ip virtual-ip-address
如: Interface vlan10
ip address 172.16.10.88 255.255.255.0
no ip redirects
(关闭ICMP从定向)
P a g e | 202
CCIE R/S & Service Provider Exam Certification Guide
Standby 47 ip 172.16.10.11
2.配置HSRP的备份优先级,前面已经讲过。
Router (config –
if) Standby group-number priority priority-number
3.配置HSRP组中的备份占先权
Router (config –
if) standby group-number preempt
4.配置HELLO消息计时器:前面讲过活跃路由器和备份路由器通过发送HELLO消息来说明
它现在的身份。HELLO消息当中包括了路由器的优先级、HELLO时间、保持时间等(默认
的保持时间是HELLO消息的3倍)。
Router (config)#standby group-number timers hellotime holdtime
①. Hellotime:是以秒来计算的,来定义HELLO消息之间的间隔;默认是3秒
②. Holdtime:是以秒来计算的,来定义活跃或是备份路由器在宣布失效之前
的时间,从1~255,缺省为10秒。也就是是说:路由器在3个HELLO消息的间
隔内如果还是没有收到HELLO包,宣告现在这台路由器已经失效了。
要恢复到缺省的备份计时器值:no standby group timers命令。
HSRP接口跟踪:
配置HSRP的功能是为了解决如下的问题:
在某些情况下,端口的状态直接的影响了路由器的身份即哪台路由器要变成活跃
的路由器。尤其是在每台路由器有到某个目的地的不同路径时。因为当启用了HSRP的
路由器的端口是关闭了端口的ICMP的重定向的功能的,因此,当有链路发生了错误时,
活跃路由器将不会对数据包进行重定向,导致了数据包的人为不可到达。通过启用接
口跟踪时,可以根据接口的状态自动的调整路由器的优先级,当被跟踪的端口变成不
可用时,将自动的降低其路由器的优先级。这样就降低了它继续成为活跃路由器的可
能性,
接口配置的模式下作以下的配置:
Router(config-if)# standby group-number track type number interface-priority
type:
跟踪的接口的类型,与接口号一起使用如s0
number:
被跟踪的接口的号,与接口类型一起使用
interface-priority:
路由器要被降低的优先级的值,缺省为10
要关闭此功能的话使用:no standby group track命令。
在干道上配置HSRP
此项功能能通过在子网和VLAN间提供负载均衡和冗余能力提高整个网络的韧性。
我们可以实现通过两个路由器来实现在干道上的互为活跃/备份路由器。我们只要设置
一下他们在HSRP中的优先级就可以实现。
以下有个简单的例子:
对router A
Interface f1/1.10
Encapsulation isl 10
Ip address 172.16.10.2 255.255.255.0
Standby 1 ip 172.16.10.110
Standby 1 priority 105
Standby 1 preempt
Interface f1/1.20
Encapsulation isl 20
ip address 172.16.20.2 255.255.255.0
Standby 2 ip 172.16.20.110
Standby 2 priority 50
对router B
Interface f1/1.10
Encapsulation isl 10
ip address 172.16.10.3 255.255.255.0
Standby 1 ip 172.16.10.110
Standby 1 priority 50
Interface f1/1.20
Encapsulation isl 20
Ip address 172.16.20.3 255.255.255.0
Standby 2 ip 172.16.20.110
Standby 2 priority 105
Standby 1 preempt
P a g e | 203
CCIE R/S & Service Provider Exam Certification Guide
13.1.5
Show HSRP
要显示HSRP路由器的状态,可以在特权的状态下执行如下命令即可
router#show standby type-number group brief
type-number:
说明要显示目标接口的类型和序号
group:
显示接口上某个具体的HSRP组
brief:
每个备份组总结成一行来输出
如:Show standby vlan10 47/show standby brief/show standby.
13.1.6
HSRP 实例
某校园网规模比较大,上网的主机相对比较多,共分配有16个C类地址。为了保证数据安全
和广播风暴,提高网络性能,将校园网划分成60个子网。在网络中心采用Cisco系统公司的
Catalyst 5509作为中心交换机,并且带有RSM作为VLAN间的路由器,另外使用一个Cisco 7000
系列的路由器和RSM。它们都支持VLAN以及VLAN上的HSRP。如图所示。
在每一个虚拟局域网内都有一个HSRP组,从逻辑上讲,Cisco 7010和Cisco 5509的RSM在每
个虚拟局域网上都有局域网接口,并且都配置有IP地址,同时配置一个虚拟地址,该地址作
为在该虚拟局域网内所有主机的网关。下面以VLAN 9为例,RSM中VLAN 9的配置如下:
---- interface Vlan9
---- description surportcenter
---- ip address 202.120.95.66 255.255.255.224
该路由器在该VLAN9上的接口的IP地址以及掩码
no ip redirects
no ip directed-broadcast
no ip route-cache cef
standby 9 timers 3 250
定义热等待组号为9,每3秒交换一次hello信息,250没有收到hello信息就开切换
standby 150 priority 110
定义路由器的权值,值越大,成为活动路由器的希望越大
standby 9 preempt
Enable该组的HSRP抢占功能,谁的权值大就可以立即成为活动路由器
standby 9 ip 202.120.95.65
该组的虚拟IP地址,作为该VLAN中主机的网关地址
P a g e | 204
CCIE Routing and Switching note
by
Ka\(^oo^)/Ka
Cisco 7010路由器中接口的配置如下:
interface FastEthernet0/0.9
description surportcenter
ip address 202.120.95.67 255.255.255.224
cisco7010在VLAN9上的接口的IP地址以及掩码,该地址和RSM中的地址必须属于同一个子网,
并且不同
no ip redirects
encapsulation is l 9
所使用的虚拟局域网协议
standby 9 timers 3 250
和在RSM中的含义一样,并且必须相同
standby 9 priority 100
比在RSM中的值小,所以RSM在该VLAN中为活动的
standby 9 preempt
和在RSM中含义一样
standby 9 ip 202.120.95.65
该组的虚拟IP地址,必须和RSM中一样
为了达到负载均衡的目的,应该使Cisco 5509 RSM和Cisco 7010承担大致相同的负载,
我们的方法是,在RSM中,VLAN 1到VLAN 30的权值为110,VLAN 31到VLAN 60的权值为100; 相
反,在Cisco 7010中,VLAN 1到VLAN 30的权值为100,VLAN 31到VLAN 60的权值为100。这
样,在正常情况下,Cisco 5509的RSM负责VLAN 1到VLAN 30的路由,Cisco 7010负责VLAN 31
到VLAN 60的路由。如果有一方出现了故障,将由另一个来负载全部的路由工作。
13.1.7
HSRP存在的问题
对于在HSRP协议,最大的问题是没有提供安全防护,在一个局域网内部,通过发送虚
假的UDP多播数据包很容易对局域网中的路由器实施攻击,导致数据包黑洞(Packet Black
Hole)和拒绝服务攻击(Denial-of-Service Attack)。一般无法从一个局域网的外部实施攻
击,因为大多数路由器都不转发目的地址为所有路由器的多播地址(224.0.0.2)。
HSRP只是实现了路由器的平滑切换,使用户感觉不到这种切换,保证了网络的稳定性。
但是,一个HSRP组内的路由器不能互通它们的其他网络配置信息,例如访问控制列表等。所
以在管理实施管理时,为了保证一致性,必须对它们进行相同的修改,增加了管理的复杂性,
这也许是为了提高性能而付出的代价吧。
13.1.8
HSRP的认证功能
HSRP的认证功能:standby group_number authentication string
静态MAC:standby group_number mac-address H.H.H.H
Show Command:
caladan#show standby
Ethernet0 - Group 1
Local state is Active, priority 105, may preempt
Hellotime 3 holdtime 10
Next hello sent in 00:00:02.496
Hot standby IP address is 172.16.1.1 configured
Active router is local
Standby router is 172.16.1.3 expired
P a g e | 205
CCIE Routing and Switching note
by
Ka\(^oo^)/Ka
Standby virtual mac address is 0000.0c07.ac01
Tracking interface states for 1 interface, 1 up:
Up Serial0
caladan#
13.2 VRRP虚拟路由器备份协议
13.2.1
VRRP简介
在VRRP协议中,有两组重要的概念:VRRP路由器和虚拟路由器,主控路由器和备份路由器。
VRRP路由器是指运行VRRP的路由器,是物理实体,虚拟路由器是指VRRP协议创建的,是逻辑概
念。一组VRRP路由器协同工作,共同构成一台虚拟路由器。该虚拟路由器对外表现为一个具有
唯一固定IP地址和MAC地址的逻辑路由器。处于同一个VRRP组中的路由器具有两种互斥的角色:
主控路由器和备份路由器,一个VRRP组中有且只有一台处于主控角色的路由器,可以有一个或
者多个处于备份角色的路由器。VRRP协议使用选择策略从路由器组中选出一台作为主控,负责
ARP相应和转发IP数据包,组中的其它路由器作为备份的角色处于待命状态。当由于某种原因
主控路由器发生故障时,备份路由器能在几秒钟的时延后升级为主路由器。由于此切换非常迅
速而且不用改变IP地址和MAC地址,故对终端使用者系统是透明的。
13.2.2
工作原理:
一个VRRP路由器有唯一的标识:VRID,范围为0—255。该路由器对外表现为唯一的虚拟MAC
地址,地址的格式为00-00-5E-00-01-[VRID]。主控路由器负责对ARP请求用该MAC地址做应答。
这样,无论如何切换,保证给终端设备的是唯一一致的IP和MAC地址,减少了切换对终端设备
的影响。
VRRP控制报文只有一种:VRRP通告(advertisement)。它使用IP多播数据包进行封装,组
地址为224.0.0.18,发布范围只限于同一局域网内。这保证了VRID在不同网络中可以重复使用。
为了减少网络带宽消耗只有主控路由器才可以周期性的发送VRRP通告报文。备份路由器在连续
三个通告间隔内收不到VRRP或收到优先级为0的通告后启动新的一轮VRRP选举。
在VRRP路由器组中,按优先级选举主控路由器,VRRP协议中优先级范围是0—255。若VRRP
路由器的IP地址和虚拟路由器的接口IP地址相同,则称该虚拟路由器作VRRP组中的IP地址所有
者;IP地址所有者自动具有最高优先级:255。优先级0一般用在IP地址所有者主动放弃主控者
角色时使用。可配置的优先级范围为1—254。优先级的配置原则可以依据链路的速度和成本、
路由器性能和可靠性以及其它管理策略设定。主控路由器的选举中,高优先级的虚拟路由器获
胜,因此,如果在VRRP组中有IP地址所有者,则它总是作为主控路由的角色出现。对于相同优
先级的候选路由器,按照IP地址大小顺序选举。VRRP还提供了优先级抢占策略,如果配置了该
策略,高优先级的备份路由器便会剥夺当前低优先级的主控路由器而成为新的主控路由器。
为了保证VRRP协议的安全性,提供了两种安全认证措施:明文认证和IP头认证。明文认证
方式要求:在加入一个VRRP路由器组时,必须同时提供相同的VRID和明文密码。适合于避免在
局域网内的配置错误,但不能防止通过网络监听方式获得密码。IP头认证的方式提供了更高的
安全性,能够防止报文重放和修改等攻击。
13.2.3
实际应用:
最典型的VRRP应用:RTA、RTB组成一个VRRP路由器组,假设RTB的处理能力高于RTA,则将
RTB配置成IP地址所有者,H1、H2、H3的默认网关设定为RTB。则RTB成为主控路由器,负责ICMP
重定向、ARP应答和IP报文的转发;一旦RTB失败,RTA立即启动切换,成为主控,从而保证了
对客户透明的安全切换。
P a g e | 206
CCIE Routing and Switching note
by
Ka\(^oo^)/Ka
在VRRP应用中,RTA在线时RTB只是作为后备,不参与转发工作,闲置了路由器RTA和链路
L1。通过合理的网络设计,可以到达备份和负载分担双重效果。让RTA、RTB同时属于互为备份
的两个VRRP组:在组1中RTA为IP地址所有者;组2中RTB为IP地址所有者。将H1的默认网关设定
为RTA;H2、H3的默认网关设定为RTB。这样,既分担了设备负载和网络流量,又提高了网络可
靠性。
13.2.4 HSRP and VRRP
1.在功能上,VRRP和HSRP非常相似,但是就安全而言,VRRP对HSRP的一个主要优势:它允
许参与VRRP组的设备间建立认证机制.并且,不像HSRP那样要求虚拟路由器不能是其中一个路
由器的ip地址,但是VRRP允许这种情况发生(如果”拥有”虚拟路由器地址的路由器被建立并且
正在运行,那么应该总是由这个虚拟路由器管理—等价于HSRP中的活动路由器),但是为了确保
万一失效发生的时候终端主机不必重新学习MAC地址,它指定使用的MAC地址
00-00-5e-00-01-VRID,这里的VRID是虚拟路由器的ID(等价于一个HSRP的组标识符).
2.另外一个不同是VRRP不使用HSRP中的政变或者一个等价消息,VRRP的状态机比HSRP
的要简单,HSRP有6个状态(初始(Initial)状态,学习(Learn)状态,监听(Listen)状态,对话
(Speak)状态,备份(Standby)状态,活动(Active)状态)和8个事件, VRRP只有3个状态(初始状
态(Initialize)、主状态(Master)、备份状态(Backup))和5个事件.
3. HSRP有三种报文,而且有三种状态可以发送报文 呼叫(Hello)报文 告辞(Resign)
报文 突变(Coup)报文.
VRRP有一种报文
VRRP广播报文:由主路由器定时发出来通告它的存在,
使用这些报文可以检测虚拟路由器各种参数,还可以用于主路由器的选举。
4. HSRP将报文承载在UDP报文上,而VRRP承载在TCP报文上(HSRP 使用UDP 1985端口,
向组播地址224.0.0.2 发送hello消息。)
5.VRRP的安全:VRRP协议包括三种主要的认证方式:无认证,简单的明文密码和使用 MD5
HMAC ip认证的强认证.
强认证方法使用IP认证头(AH)协议.AH是与用在IPSEC中相同的协议,AH为认证VRRP分
组中的内容和分组头提供了一个方法. MD5 HMAC 的使用表明使用一个共享的密钥用于产生
hash值.路由器发送一个VRRP分组产生MD5 hash值,并将它置于要发送的通告中,在接收时,接
受方使用相同的密钥和MD5值,重新计算分组内容和分组头的hash值,如果结果相同,这个消息
就是真正来自于一个可信赖的主机,如果不相同,它必须丢弃,这可以防止攻击者通过访问LAN
而发出能影响选择过程的通告消息或者其他一些方法中断网络.
另外,VRRP包括一个保护VRRP分组不会被另外一个远程网络添加内容的机制(设置TTL值
=255,并在接受时检查),这限制了可以进行本地攻击的大部分缺陷.而另一方面,HSRP在它的消
息中使用的TTL值是1.
6.VRRP的崩溃间隔时间:3*通告间隔+时滞时间(skew-time)
Router(config-if)#vrrp {group-number} ip virtual_IP_addr
Router(config-if)#vrrp {group-number} priority priority_value
默认优先级为100,如果指向真实ip,优先级255
查看vrrp配置
Show vrrp interface vlan 1
P a g e | 207
CCIE Routing and Switching note
by
Ka\(^oo^)/Ka
13.3 GLBP
全称Gateway Load Banancing Protocol,和HRSP、VRRP不同的是,GLBP不仅提供冗余网
关,还在各网关之间提供负载均衡,而HRSP、VRRP都必须选定一个活动路由器,而备用路由器
则处于闲置状态。和HRSP不同的是,GLBP可以绑定多个MAC地址到虚拟IP,从而允许客户端选
择不同的路由器作为其默认网关,而网关地址仍使用相同的虚拟IP,从而实现一定的冗余。
Choose AVG
使用类似于HRSP的机制选举活动网关,优先级最高的路由器成为活动落由器,称作Acitve
Virtual Gateway,其他非AVG提供冗余。某路由器被推举为AVG后,和HRSP不同的工作开始了,
AVG分配虚拟的MAC地址给其他GLBP组成员。所有的GLBP组中的路由器都转发包,但是各路由器
只负责转发与自己的虚拟MAC地址的相关的数据包。
地址分配
每个GLBP组中最多有4个虚拟MAC地址,非AVG路由器有AVG按序分配虚拟MAC地址,非AVG
也被称作Active Virtual Forwarder(AVF)。AVF分为两类:Primary Virtual Forwarder和
Secondary Virtual Forwarder。直接由AVG分配虚拟MAC地址的路由器被称作Primary Virtual
Forwarder,后续不知道AVG真实IP地址的组成员,只能使用hellos包来识别其身份,然后被分
配虚拟MAC地址,此类被称作Secondary Virtual Forwarder。
GLBP配置
如果AVG失效,则推举就会发生,决定哪个AVF替代AVG来分配MAC地址,推举机制依赖于优先级。
最多可以配置1024个GLBP组,不同的用户组可以配置成使用不同的组AVG来作为其网关。
router#conf t
router(config)#int fastethernet 0/0
router(config-if)#ip address 10.1.1.1
router(config-if)#glbp 99 ip 10.1.1.254
router(config-if)#glbp 99 priority 105
router(config-if)#glbp 99 preempt delay 10
router(config-if)#glbp 99 weighting track int s0 10
router(config-if)#exit
router(config)#^Z
13.4 Cisco-SLB
Cisco-SLB(Cisco Server Load Balancing),用于提高冗余和提高性能,其实质是将服务
器封装在一个虚拟ip中,对外界,仅显示为1台主机,实际上会有很多台进行负载均衡处理
Server Farms
Step 1 Name the server farm:
Switch(config)# ip slb serverfarm serverfarm-name
Step 2 Choose a load-balancing method.
Switch(config-slb-sfarm)# predictor {roundrobin | leastconns}
Step 3 Identify the real servers in the server farm:
Switch(config-slb-sfarm)# real ip-address
Step 4 Assign a weight for the relative server capacity:
Switch(config-slb-real)# weight weighting-value
default 8)
P a g e | 208
//The weighting value (1 to 255,
CCIE Routing and Switching note
by
Ka\(^oo^)/Ka
Step 5 Put the real server into service:
Switch(config-slb-real)# inservice
Virtual Servers
Step 1 Name the virtual server:
Switch(config)# ip slb vserver virtual-server-name
Step 2 Assign the virtual server to a server farm:
Switch(config-slb-vserver)# serverfarm serverfarm-name
Step 3 Assign an IP address to the virtual server:
Switch(config-slb-vserver)# virtual ip-address {tcp|udp}
Step 4 Control access to the virtual server:
Switch(config-slb-vserver)# client ip-address inverse-mask
Step 5 Put the virtual server into service:
Switch(config-slb-vserver)# inservice
13.5 CCIE_lab中的HSRP和VRRP
Configure HSRP on R3 and R4 for hosts on VLAN A:Carefully read the requirements:There are 10 hosts
on VLAN A。5
W
i
n
d
o
w
s
P
C
’
s
a
n
d
5
U
n
i
x
w
o
r
k
s
t
a
t
i
o
n
s
T
h
e
W
i
n
d
o
w
s
P
C
’
s
a
r
e
c
o
n
f
i
g
u
r
e
d
t
o
u
s
e
160.YY.10.50 as their default gateway
The UNIX workstations are configured to use 160.YY.10.100 as their default gateway
R3 is the preferred router for Windows users.
R4 is the prefered router for Unix users.
If the frame relay connection on R3 goes down,then R4 becomes the preferred router for
all users。
If the frame relay connection on R4 goes down,then R3 becomes the preferred router for
all users。
Once either R3 or R4 recover from a failure then the network must operate as outined
above,I.e Each router must resume their original role。
standby
use-bia //将MAC用于HSRP虚拟的mac,而不是由HSRP自动生成
By default, HSRP uses the preassigned HSRP virtual MAC address on Ethernet and FDDI, or the functional
address on Token Ring. To configure HSRP to use the interface's burnt-in address as its virtual MAC
address, instead of the default, use the standby use-bia command.
R3
Interface e0
standby use-bia
standby 1 ip 160.Y.10.50
standby 1 priority 105
standby 1 preempt
standby 1 track s0
standby 2 ip 160.Y.10.100
standby 2 preempt
R4
Interface e0
standby use-bia
standby 1 ip 160.Y.10.50
P a g e | 209
CCIE Routing and Switching note
standby
standby
standby
standby
standby
1
2
2
2
2
by
preempt
ip 160.Y.10.100
priority 105
preempt
track s0
R5 R6 两端运行 VRRP,要求 R5 为 Master,需要验证,但不能建立新地址
R5
interface Ethernet0/0
vrrp 101 ip 1.1.65.5
vrrp 101 priority 105
vrrp 101 authentication text cisco
R6
interface Ethernet0/0
vrrp 101 ip 1.1.65.5
vrrp 101 authentication text cisco
P a g e | 210
Ka\(^oo^)/Ka
CCIE R/S & Service Provider Exam Certification Guide
BGP路由选择协议
Chapter 14
14.1 谁需要BGP
BGP 是一种路径矢量路由协议,用于传输自治系统间的路由信息,BGP 在启动的时候传播整张路
由表,以后只传播网络变化的部分触发更新,它采用 TCP 连接传送信息,端口号为 179,在 Internet
上,BGP 需要通告的路由数目极大,由于 TCP 提供了可靠的传送机制,同时 TCP 使用滑动窗口机
制,使得 BGP 可以不断地发送分组,而无需像 OSPF 或 EIGRP 那样停止发送并等待确认。
使用 BGP 一般有如下情况:
1.
一个 AS 允许包穿越它,到达其他的 AS
2.
一个 AS 连接多个 AS
3.
必须对数据流进入和离开 AS 进行控制
不使用 BGP 一般有如下情况:
1.
AS 只有一个出口
2.
AS 的所有出口均为 1 个 ASP
3.
路由性能不高,内存较小,CPU 较慢,带宽不大
对于如右图的多 ISP 连接,需要注意:
1. 必须劝说最初供应商通告将他的 CIDR 块打一个洞,通告一条更精细的路由
2. 必须劝说第二个供应商公布属于不同供应商的地址空间
3. 两个供应商必须在用户公布这块地址上愿意紧密合作
4. 如果用户地址空间小于/19 一些骨干 ISP 不会接受此路由
注:一般前缀小于/19 的地址称为全球路由可达地址,因为骨干 ISP 通常为了控制
骨干级路由表大小,仅接受/19 或更小的前缀。但由于用户的抱怨,此限制逐渐放
松
14.2 BGP简介
BGP 是路径矢量协议,它使用一个 AS 号列表,数据包必须通过这些 AS 才能到达目的,同时
对产生的 AS-path 做一定的策略。AS-Path 对于路由环路非常容易检测到,如果路由器接受到一
条含有本地 AS 号的 AS-path,说明出现环路。
BGP 没有给出每个 AS 域内的拓扑结构,因此 BGP 只能看到 AS 树,而 IGP 只能看到 AS 域内拓扑结
构,
下图是一个典型的 BGP 路由表
route-server>show ip bgp
P a g e | 211
CCIE R/S & Service Provider Exam Certification Guide
BGP table version is 4639209, local router ID is 12.0.1.28
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network
Next Hop
Metric LocPrf Weight Path
* 3.0.0.0
192.205.31.225
0 7018 701 80 i
*
192.205.31.161
0 7018 701 80 i
*>192.205.31.33
0 7018 701 80 i
*
192.205.31.97
0 7018 701 80 i
* 4.0.0.0
192.205.31.225
0 7018 1 i
*
192.205.31.161
0 7018 1 i
*>192.205.31.33
0 7018 1 i
*
192.205.31.97
0 7018 1 i
* 6.0.0.0
192.205.31.226
0 7018 568 721 1455 i
*
192.205.31.225
0 7018 568 721 1455 i
*
192.205.31.161
0 7018 701 6113 568 721 1455 i
*>192.205.31.34
0 7018 568 721 1455 i
*
192.205.31.33
0 7018 568 721 1455 i
*
192.205.31.97
0 7018 1239 568 721 1455 i
* 9.2.0.0/16
192.205.31.225
0 7018 1 1673 1675 i
*
192.205.31.161
0 7018 701 1673 1675 i
--More-当某个特殊目的网络有并列的,等开销的路径时,Cisco 缺省执行 EBGP 只选择一条路径,
但可以使用 maximum-paths 改变并行路径缺省的最大数目,但仅对 EBGP 有效。
14.3 BGP消息类型
BGP 具有 4 种消息类型
1.
Open
2.
Keepalive
3.
Update
4.
Notification
Open Message
TCP 对话建立以后,两个邻居都要发送一个 Open 消息,每个邻居都用该消息来标示自
己,并规定自己的 BGP 运行参数
BGP version
它明确了发起者正在运行的 BGP 版本号(2,3,4),可以通过 neighbor version 修改,缺
省版本号为 4。如果版本号不相同,路由器将自动降低版本号重发 Open 消息,直到版本一致
AS number
发起会话路由器的 AS 号,用于确认 EBGP 或者 IBGP 会话
Hold time
路由器必须收到一个 keepalive 或者更新消息之前允许经过的最大秒数。Holdtime 必
须是 0(在这种情况下,必须是没有发送 Keepalive)或者至少 3s。Cisco 默认的 holdtime 为
180s,如果两个邻居间 holdtime 不一致,选较短的那个做为两者可接受的时间
BGP router-ID
选取方式和 OSPF 相同,使用数值最大的 loopback 口地址,没有 loopback 则使用物理接
口上数值最大的地址
Optional parameters
用于一些可选功能的支持.例如鉴别,多协议支持及路由刷新等
P a g e | 212
CCIE R/S & Service Provider Exam Certification Guide
Keepalive Message
如果路由器接受了他在邻居的 Open 消息中的参数,它就会发送一个应答的 Keepalive 消息。
默认情况 Keepalive 间隔 60s,或者是达成一致的保持时间的 1/3
Update Message
Update message 用来公布可用的路由,撤销的路由或者两者兼顾
Network Layer Reachability Information (NLRI)
用来公布 IP 地址前缀和前缀长度的字节组,例如<19,198.24.160.0>
Path Attributes
该属性为 BGP 提供了选择最短路径,检查到路由环路以及决定路由策略的信息
Withdrawn Routes
用来描述已经变成不可达并正从业务中撤销的目的地址字节组(长度和前缀)
注:虽然 NLRI 字段可以包含多个前缀,但每一个更新消息只描述一条
BGP 路由(因为路径属性只描述一条路径,但该路径可能会到达多个目
的地)
Notification Message
当检测到差错的时候就会发送 Notification 消息,通常会导致 BGP 连接终止,例如使用
Notification 消息进行 BGP 版本的协商
14.4 BGP有限状态机
IE
描
1
BGP 开始
2
BGP 结束
3
BGP 传输连接打开
4
BGP 传输连接终止
5
BGP 传输连接打开失败
6
BGP 传输致命差错
7
重试连接计时器超时
8
持续时间终止
9
Keepalive 计时器终止
10
收到 Open 消息
11
收到 Keepalive 消息
12
收到 Update 消息
13
收到 Notification 消息
述
Idle State
a)
BGP 通常以 Idle State 开始(此时拒绝接收所有入连接)。当一个开始事件出现,BGP 过程
初始化所有 BGP 资源,打开重试连接(ConnectRetry)计时器,初始化到邻居的 TCP 连接,接
听来自邻居的 TCP 初始化消息并将它的状态转到 Connect 状态.
b)
开始事件是由一个操作者配置一个 BGP 过程,或者重置一个已经存在的过程或者路由器软
件重置 BGP 过程引起
c)
一个差错的出现会将 BGP 过程的状态转为 Idle.路由器可能会试图发起另外一个开始事件.
为了防止在持续差错条件下导致的摆动,在第一次转回到空闲状态后,路由器会自动开启
P a g e | 213
CCIE R/S & Service Provider Exam Certification Guide
重试连接计时器,当计时器终止后,路由器就会放弃重新开始 BGP.重试计时器第一次的时
间为 60s,下一次为前一次的 2 倍 120s,成指数形式增加
Connect State
此状态下 BGP 过程会等到 TCP 连接完成以后再决定后续的动作.
1.
如果 TCP 连接建立成功,BGP 连接将 ConnectRetry 清零,完成初始化并给邻居发送
一个 Open 消息,转移到 Open 状态
2.
如果 TCP 连接建立失败,BGP 继续监听由邻居发起的连接,重置 ConnectRetry 计时
器并转移到 Active 状态
3.
如果在连接状态下,ConnectRetry 超时,计时器将重新开始,并再一次试图与邻居
建立 TCP 连接,BGP 保持 Connect 状态,此时如果有任何其他输入事件,转入 Idle
状态
Active State
在此状态,BGP 过程试图与邻居建立一个 TCP 连接
1. 如果连接成功,BGP 过程将 ConnectRetry 计时器清零,完成初始化,给邻居发送一个
Open 消息并转移到发送 Open 消息状态,Hold 计时器设置为 4mins
2. 如 果 在 激 活 状 态 ,ConnectRelay 计 时 器 超 时 , 将 回 到 ConnectState 并 且 重 置
ConnectRelay 计时器.也发起一个到对等的 TCP 连接并继续监听来自对等体的连接.
3. 如果邻居试图与一个未知 IP 建立 TCP 会话,同时 ConnectRelay 计时器重置,连接被拒
绝并保持在 Active 状态
4. 任何一个事件(除开始事件)都回导致状态转向 idle
Open send State
在此状态下,已经发送了 Open 消息,BGP 等待邻居发来的 Open 消息,
1. 当收到一个 Open 消息,如果发现差错,将给邻居发一个 Notification 消息并转入 Idle
状态
2. 如果收到的 Open 消息没有差错,将给邻居发送一个 Keepalive 消息并将 Keepalive 计
时器清零,此时协商一个较短的 holdtime,如果为 0,则没有启动 Hold 和 keepalive
计时器,根据 AS 号选择 IBGP 或者 EBGP,同时将状态转移到 OpenConfirm 状态
3. 如果收到一个 TCP 断开消息,本地断开 BGP 连接,重置 ConnectRetry 计时器,并转入
Active 状态
Open Confirm State
此状态下 BGP 会等待一个 Keepalive 消息或者 Notification 消息
1. 如果收到一个 Keepalive 消息,转移到 Establish 状态
2. 如果收到一个 Notification 消息,转入 Idle 状态,并断开 TCP 连接
3. 如果 Hold 计时器超时,检测到一个差错或出现 stop 事件,BGP 将给邻居发送一个
Notification 并断开连接,转入 Idle 状态
Establish State
此状态下,BGP 对等体间的连接已经完全建立,可以交换 Update Keepalive 和 Notification 消
息,如果收到 Notification 自动转入 Idle,并中断连接
P a g e | 214
CCIE R/S & Service Provider Exam Certification Guide
14.5 路径属性
BGP 路径属性分为 4 类
1. Well-known mandatory
公认必遵 –
所有的 BGP 路由器必须识别
(Update 消息必须包含该属性)
2. Well-known discretionary
公认可遵 –
所有 BGP 路由器都能识别,但不是一定需要
(Update 消息可以不包含该属性或者该属性任选)
3. Optional transitive
可选传递 –
不是所有的 BGP 路由器都能识别,但所有 BGP
路由器都能传递它
(此属性即使 BGP 路由器不接受也可以传递)
4. Optional nontransitive
可选非传递–
不是所有的 BGP 路由器都能识别,不能
识别 BGP 路由器丢弃它
(此属性如果 BGP 路由器不接受则立即丢弃此消息,不再传递)
Attribute
T
YPE 1
2
Class
ORIGIN
Well-known mandatory
AS_PATH
Well-known mandatory
3
NEXT_HOP
Well-known mandatory
4
LOCAL_PREF
Well-known
5
ATOMIC_AGGRE
6
7
AGGREGATOR
GATE
COMMUNITY
MULTI_EXIT_DISC
8
9
1
ORIGINATOR_ID
(MED)
CLUSTER_LIST
0
Well-known
discretionary
Optional transitive
discretionary
Optional transitive
Optional
Optional
nontransitive
Optional
nontransitive
nontransitive
ORIGIN
属于公认必选属性,明确了路由更新的来源,用于判断路由可信度,当 BGP 有多条路由来
源时,路由器会将 ORIGIN 做为路由决策的参考
来源有如下几类:
IGP---从 AS 内部学到,ORIGIN 为 0
EGP---NLRI 从 EGP 学到,ORIGIN 为 1
Incomplete---NLRI 通过其他手段获得,ORIGIN 为 3
一般来说具有较低 ORIGIN 值得前缀被优先选取,
IGP>BGP>重分布
例如通过重分布进入 BGP,ORIGIN 属性为 3,通过 Network 命令注入其 ORIGIN 为 0
AS_PATH
描述一个路由传递过程中经过那一些 AS(不算自己,从离自己最近的 AS 开始,以目的网
段的 AS 结束),为了避免 AS 环路,如果从外部收到一条包含自己 AS 的路由,就说明有环路,
此时 BGP 将丢弃该路由
P a g e | 215
CCIE R/S & Service Provider Exam Certification Guide
通常一条 AS_PATH 含有多个同一 AS 号,用于加长 AS_PATH,提供策略选路,如下图
Next_Hop
该属性描述了到公布目的地址的路径的下一跳路由器的 IP 地址
1. 如果正在进行路由通告的路由器和接收的路由器在不同的 AS 中,Next_Hop 为正在宣
告的路由器接口的 ip
2. 如果正在宣告的路由器和接收的路由器在同一个 AS 内,并且更新消息中 NLRI 目的
地也在同一个 AS 中,则 next_hop 为一宣告的路由的邻居的 ip
3. 如果正在宣告的路由器和接收的路由器是内部对等体,并且更新消息的 NLRI 指向不
同 AS,则 Next_hop 为学习到路由的外部对等实体的 ip
P a g e | 216
CCIE R/S & Service Provider Exam Certification Guide
Local_Pref
仅用在本地 AS,不会传到其他 AS,具有较高 Local_pref 的路由将被优先考虑,默认值 100
如下图,优先考虑ISP1的路由
Multi_Exit_Disc(MED)
Local_Pref 仅影响离开 AS 的业务量,而 MED 用于影响流入 AS 的业务量,它允许一个 AS 将
其首选入口通知给另一个 AS,具有最低 MED 值的路由作为首选
Atomic_Aggregate and Aggregator
BGP 支持向另一个 BGP 路由器传递重叠的路由,BGP 有如下重叠处理选项
1. 同时公布精细和初略的路由
P a g e | 217
CCIE R/S & Service Provider Exam Certification Guide
2. 只公布精细路由
3. 之公布路由中没有重叠的部分
4. 聚合两条路由并公布聚合后的路由
5. 两者都不公布
如右图即为在进行聚合时导致了路由信息丢失
Atomic_Aggregate 属 性 即 是 用 来 警 告 下 游 路 由 器 聚 合 时 产 生 路 径 信 息 丢 失 , 可 设 置 附 加 属 性
Aggregate 来通告汇聚点,Cisco 采用 BGP-RID 来作为 Aggregator 地址,如下图
Weight
Cisco 专有,对于离开 AS 的报文,从多条路径中选择哪一条。它是不传递的。缺省下从对等
体学到的所有路由器的权重值是 0,由本地路由器产生的所有路由的权重值是 32768 选路时优先
选用权值最高的路径
Comunity
使可以向一组源路由使用相同的策略,即一个目的地作为一些目的地团体中的一个成员,这
些目的地共享一个或多个共同特性。它有 4 个字节 – 前面两个字节的 AS 号,后面两个字节的
管理上定义表示符,而 Cisco 正好反过来,用 ip bgpcommuity new-format 改过来
当对团体路由进行聚合时,聚合路由继承了所有路由的全部团体属性
NO_EXPORT 的团体属性,携带该属性的路由允许在邻居 AS 内公布但不允许邻居 AS 把
路由公布其他 AS
NONE 属性删除现存的团体属性
NO_ADVERTISE 属性指不在 IBGP 邻居间传递带有该属性的路由
DELETE 属性用于只删除匹配特定团体列表的属性
ORIGINATOR_ID
由路由反射器(RR)使用,它是有路由发起者产生的一个 32 比特的值,该值是本地 AS 里路由
发起者的 RID,如果路由器发起者从该属性值中看到了自己的 RID,就说明有环路,该路由忽略
Cluster_LIST
由路由反射器使用,它是路由经过反射器簇 ID 的一个序号。如果路由反射器在该属性值中发
现自己的本地簇 ID,就说明有环路,忽略掉。如果一个簇里不止一个 RR,要在进程下用 bgp
cluster-id 手工指定簇 ID,因为默认 RR 将自己的 RID 当成 cluster-id
P a g e | 218
CCIE R/S & Service Provider Exam Certification Guide
AS_SET
AS_PATH 有 4 种类型
1. AS_SEQUENCE
---路径上 AS 号是有序的
2. AS_SET
---路径上 AS 号是无规则的
3. AS_CONFED_SEQUENCE
4. AS_CONFED_SET
---用于联盟的有规则和无规则 AS 号序列(亦称为子有序和
子无序 PATH)
由于聚合时 AS_PATH 中数据丢失,导致产生环路的潜在因素增加,因此加入 AS_SET 字段,通告
汇聚时包含的 AS 号 AS_PATH 替代了 ATOMIC_AGGREGATE 的功能, 但也有其缺点:如聚合的网络
出现故障,AS_SET 的改变将通告到聚合点以外
14.6 BGP选路规则
BGP路由信息库(RIB)包括
Adj-RIBs-In:
储存未经处理的路由信息,来自对等接收到的更新消息,
所包含的路由是可用的
Loc-RIB:
包含的路由是运行BGP的路由器通过对Adj-RIBs-In中的路由使用他的
本地路由策略而选择的路由
Adj-RIBs-Out: 包含运行BGP的路由器向其对等公布的路由
3个数据库间的处理方法如下
1.
为每一条可用路由计算优先级,并对BGP update消息中包含的路由信息变更作出
处理
2.
将最优路由放入Loc-RIB
3.
将适合的路由放入Adj-RIBs-out(调用仅在上一步完成后)
BGP路径选择顺序:
如果路径不可达或者同步开启后,路径不同步,则该路径不参与选路
1,
Weight---权重(越大越优先)
2,
Local_Pref---本地优先(越大越优先)
3,
所传递路由的本地起源优先,即下一跳是0.0.0.0(在BGP表中,当前路由器通告的
路由的下一跳为0.0.0.0)
4,
AS-Path(越短越优先)
5,
起源(优先:IGP > EGP > Incomplete)
6,
MED(越小越优先)
7,
首选EBGP的路由,在联盟EBGP和IBGP中首选联盟EBGP路由
8,
BGP优先选择到BGP下一跳的IGP度量最低的路径
9,
如果有多条来自相同相邻AS的路由并通过Maximum-paths使多条路径可用,则将
所有开销相同的路由加入Loc-RIB
10,
BGP优先选择最老的路径,降低滚翻的影响
11,
BGP邻居的RID(越小越优先)
12,
如果多条路径始发路由器ID或路由器ID相同,那么优选Cluster-List最短的路径
13,
选择邻居ip地址最小的路由
14.7 BGP路由惩罚
P a g e | 219
CCIE R/S & Service Provider Exam Certification Guide
路由抑制可以阻止公布不稳定的路由,它为每条路由分配一个动态的度量数字用来反映稳定
程度,当一条路由出现摆动,就给他分配一个惩罚值,摆动得越多,惩罚值越大。当一段时间不
摆动,惩罚值降低,在一个半衰期后,降到原来的一半。如果惩罚值超过抑制上限,该路由就被
抑制,只有当一个半衰期后惩罚值降低到重新使用界限时,才重新使用。
缺省下, 惩罚值 – 每次摆动 1000
抑制界限 – 2000
重新使用界限 – 750
半衰期 – 15 分钟
最大抑制时间 – 60 分钟,或者半衰期的 4 倍
14.8 iBGP和IGP的同步
在某些情况下将 IGBP 当 IGP 使用,但是每个 IBGP 路由器必须与其它每一个 IBGP 路由器建立
对等,即必须保证 AS 内 IBGP 全互连,全互连可以防止 AS 内产生 BGP 环路,同时保证 BGP 路由上
的所有路由器都知道如何转发数据包到目的地
14.8.1
IBGP 和 IGP 同步规则
一条从 IBGP 邻居学习到的路由在进入 IGP 路由表或者公布给一个 BGP 对端之前,通过 IGP
必须知道该路由.
同步可以防止没有足够信息的 IGP 造成路由黑洞.但也会带来很多缺陷,为了使 IBGP 工
作正常,可以采用 2 种方法:
1.将外部路由重分发到 IGP 中从而保证 IGP 和 BGP 同步,但对于 IGP 路由器一般无法
承受巨大的 internet 路由条目,在几个大型的中断事故中,多数是 BGP 无意中被分
发到了 OSPF 或者 IS-IS 中
2。IBGP 为逻辑上全网状连接,且关闭同步功能,所有路由器通过 BGP 知道外部路由,且
不用通知 IGP 就能将路由加入到路由表中,但如果一个 AS 中有多个 IBGP 路由器,
一个路由器将于其他每个路由器建立对等,十分耗时,故常采用联盟或者路由反射
器来控制 IBGP 逻辑上的全互连.
同步是一个较老的 BGP 特性,在新版的 IOS 中,同步默认被关闭
下图为关闭同步前后的区别,前者为同步打开,后者为同步关闭
Seattle#show ip bgp
BGP table version is 7, local router ID is 206.25.193.1
P a g e | 220
CCIE R/S & Service Provider Exam Certification Guide
Status codes: s suppressed, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network
Next Hop
Metric LocPrf Weight Path
*>192.168.1.0
0.0.0.0
0
32768 i
* i
192.168.1.1
0
100
0 i
*>i192.168.2.0
192.168.1.1
0
100
0 i
*>i206.25.161.0
192.168.1.1
0
100
0 i
*>206.25.193.0
0.0.0.0
0
32768 i
Seattle#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate default
Gateway of last resort is not set
C
206.25.193.0 is directly connected, Loopback0
C
192.168.1.0 is directly connected, Serial0
Seattle#
关闭同步以后
Seattle#show ip bgp
BGP table version is 11, local router ID is 206.25.193.1
Status codes: s suppressed, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network
*>192.168.1.0
* i
*>i192.168.2.0
* i
*>i206.25.129.0
*>i206.25.161.0
*>206.25.193.0
Next Hop
0.0.0.0
192.168.1.1
192.168.1.1
192.168.2.1
192.168.2.1
192.168.1.1
0.0.0.0
Metric LocPrf Weight Path
0
32768 i
0
100
0 i
0
100
0 i
0
100
0 i
0
100
0 i
0
100
0 i
0
32768 i
Seattle#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate default
Gateway of last resort is not set
C
B
C
B
B
206.25.193.0 is directly connected, Loopback0
206.25.129.0 [200/0] via 192.168.2.1, 00:07:34
192.168.1.0 is directly connected, Serial0
192.168.2.0 [200/0] via 192.168.1.1, 00:07:42
206.25.161.0 [200/0] via 192.168.1.1, 00:07:43
Seattle#ping 206.25.129.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 206.25.129.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/5/8 ms
Seattle#
P a g e | 221
CCIE R/S & Service Provider Exam Certification Guide
14.9 管理大型网络中的BGP
在一个较大规模的 AS 中试图生成全互连的 IBGP 对等关系是一个规模庞大的工作,同时对于 BGP
对等关系的管理也十分复杂。BGP 设计了如下 4 种方式对对等关系进行管理
14.9.1 对等体组(Peer Group)
在大型互联网络中,一个路由器的策略会应用到多个对等关系,在 Cisco 路由器中可
以使用一个名字和一系列的路由策略来定义一个对等组(Peer Groups),任何对等策略对整
个 group 生效,对等组提高了路由器性能,只需访问一次策略数据库,生成一个 Update 消
息,并将副本发给所有的对等体即可。
14.9.2 团体属性(Communities)
相对于 PeerGroups 是对一组路由器使用策略,而团体(Communities)是对一组路由是
用策略,团体可设置成为一个公用的值或者管理员定义的特有团体,一条路由可以属于多个
团体,路由聚合可以继承所有路由的全部团体属性
14.9.3 路由反射器(Route reflectors)
在大型的 AS 中,全互连带来极大的工作量,通过路由反射器(RR)可以建立一种 C/S 结
构,如一个含有 N 个路由器的 AS 内,全互连将使用对等会话数目为(N-2)N/2,如果选取一
个 RR,则对等会话数目将降为 N-1。对一个 C/S 结构称其为一个 RR-Cluster。RR 公布路由
的规则:
1,如果路由是从非客户的 IBGP 对等学习到的,只将它反射给客户
2,如果路由是从客户处学习到的,将它反射给除了发起该路由的客户外
所有的客户以及非客户
3,如果路由是从 EBGP 邻居学来的,将它反射给所有的客户和非客户
将一个路由器配置成路由反射器(RR),用 neigbhor route-reflect-client 把自己配成
反射器,由该命令所定义的 IBGP 邻居路由器当成客户机,这些客户机只与 RR 建立对等关系。
RR 不能改动它从客户处收到的路由的属性。在一个 AS 内可以做 RR 冗余,因为客户并不知
道自己是客户,所有一个 RR 可以是另一个路由反射器的客户。只需要 RR 支持路由反射,客
户不需要支持
RR 使用了 2 个 BGP 路径属性:
ORIGINATOR_ID
由路由反射器(RR)使用,它是有路由发起者产生的一个 32 比特的值,该值是本
地 AS 里路由发起者的 RID,如果路由器发起者从该属性值中看到了自己的 RID,就说
明有环路,该路由忽略
P a g e | 222
CCIE R/S & Service Provider Exam Certification Guide
Cluster_LIST
由路由反射器使用,它是路由经过反射器簇 ID 的一个序号。如果路由反射器在该属性值
中发现自己的本地簇 ID,就说明有环路,忽略掉。如果一个簇里不止一个 RR,要在进程下用
bgp cluster-id 手工指定簇 ID,因为默认 RR 将自己的 RID 当成 cluster-id
14.9.4 联盟属性(Confederations)
联盟(confederations)是一组分成子自治系统组的 AS 如上图
1.
每一个联盟分配一个联盟 ID,对于外端而言,此联盟 ID 代表的是整个联盟的
AS 号.联盟其实质是对自治系统的再次细分.
2.
AS_PATH 中 加 入 了 AS_CONFED_SEQUENCE 和 AS_CONFED_SET 用 法 和
AS_SEQUENCE 及 AS_SET 完全相同,
3.
在联盟环境下,所有路由器必须支持联盟
4.
用预留 AS(64512~65535)作为联盟中的 AS 编号是一中通用做法
5.
选路优先级:联盟的外部 EBGP〉AS 成员的 EBGP〉IBGP
6.
联盟相对于标准的 AS,Next_hops MED 可以不加修改的公布给联盟中的其他
AS 成员的 EBGP 对端,而且可以发送 Local_Pref 属性
7.
大型系统中,联盟和 RR 同时使用可以更好的控制 IBGP 对等关系
14.10 BGP消息格式
14.10.1 BGP Message Header
BGP 消息信头包含了标记,长度和类型 3 个字段
Code
1
2
3
4
Type
Open
Update
Notification
Keepalive
P a g e | 223
CCIE R/S & Service Provider Exam Certification Guide
Open Message
Update Message
Notification Message
Error Code
1
Error
Message
Header Error
2
Open
Message Error
P a g e | 224
Error Subcode
1
2
3
1
2
3
4
5
6
Subcode Detail
连接不同步
错误的消息长度
错误的消息格式
不支持的版本号
错误的对等 AS(peer AS)
错误的 BGP 标识符(BGP-RID)
错误的可选字段
鉴别失败(Authentication failure)
不可接受的 Holdtime
CCIE R/S & Service Provider Exam Certification Guide
3
Update
Message Error
4
5
6
Hold 计时器超时
有限状态机错误
终止
1
2
3
4
5
6
7
8
9
10
11
0
0
0
畸形的属性列表
不可识别的公认(well-known)属性
丢失的公认属性
属性标志错误
属性长度错误
非法的 ORIGIN 属性
AS 路由环路
非法的下一跳属性
可选属性错误
非法的网段(invalid network)
畸形的 AS_Path
—
—
—
14.11 BGP基本配置
14.11.1 peering BGP routers
Vail
router bgp 100
neighbor 192.168.1.225 remote-as 200
Taos
router bgp 200
neighbor 192.168.1.226 remote-as 100
Vail#show ip bgp neighbors
BGP neighbor is 192.168.1.225, remote AS 200, external link
Index 1, Offset 0, Mask 0x2
BGP version 4, remote router ID 192.168.1.225
BGP state = Established, table version = 1, up for 19:32:02
Last read 00:00:03, hold time is 180, keepalive interval is 60 seconds
Minimum time between advertisement runs is 30 seconds
Received 1175 messages, 0 notifications, 0 in queue
Sent 1175 messages, 0 notifications, 0 in queue
Prefix advertised 0, suppressed 0, withdrawn 0
Connections established 1; dropped 0
Last reset never
0 accepted prefixes consume 0 bytes
0 history paths consume 0 bytes
Connection state is ESTAB, I/O status: 1, unread input bytes: 0
Local host: 192.168.1.226, Local port: 11025
Foreign host: 192.168.1.225, Foreign port: 179
Enqueued packets for retransmit: 0, input: 0 mis-ordered: 0 (0 bytes)
P a g e | 225
CCIE R/S & Service Provider Exam Certification Guide
Event Timers (current time is 0x45FDF2C):
Timer
Starts
Wakeups
Next
Retrans
1176
0
0x0
TimeWait
0
0
0x0
AckHold
1175
885
0x0
SendWnd
0
0
0x0
KeepAlive
0
0
0x0
GiveUp
0
0
0x0
PmtuAger
0
0
0x0
DeadWait
0
0
0x0
iss: 4072889888 snduna: 4072912224 sndnxt: 4072912224
sndwnd: 16004
irs: 4121607729 rcvnxt: 4121630065 rcvwnd:
16004 delrcvwnd:
380
SRTT: 300 ms, RTTO: 607 ms, RTV: 3 ms, KRTT: 0 ms
minRTT: 4 ms, maxRTT: 340 ms, ACK hold: 200 ms
Flags: higher precedence, nagle
Datagrams (max data segment is 1460 bytes):
Rcvd: 2220 (out of order: 0), with data: 1175, total data bytes: 22335
Sent: 2077 (retransmit: 0), with data: 1175, total data bytes: 22335
Vail#
Vail 的配置
router bgp 100
bgp router-id 1.1.3.2 //routerid 更改需要重启 BGP 进程 clear ip bgp
neighbor 192.168.1.222 remote-as 100
neighbor 192.168.1.225 remote-as 200
Aspen(config)#router bgp 100
Aspen(config-router)#neighbor 192.168.1.221 remote-as 100
Aspen(config-router)#^Z
Aspen#
18:24:13: %SYS-5-CONFIG_I: Configured from console by console
Aspen#
//debug bgp events
18:24:33: BGP: 192.168.1.221 went from Idle to Active
18:24:41: BGP: 192.168.1.221 went from Active to OpenSent
18:24:42: BGP: 192.168.1.221 went from OpenSent to OpenConfirm
18:24:42: BGP: 192.168.1.221 went from OpenConfirm to Established
18:24:43: BGP: 192.168.1.221 computing updates, neighbor version 0, table version
n 1, starting at 0.0.0.0
18:24:43: BGP: 192.168.1.221 update run completed, ran for 0ms, neighbor version
0, start version 1, throttled to 1, check point net 0.0.0.0
P a g e | 226
CCIE R/S & Service Provider Exam Certification Guide
14.11.2 BGP和IGP间的重分发
通过在 BGP 路由进程模式下
redistribute eigrp 300 可将 IGP 注入到 BGP 中,其度量值为以
前路由协议的度量值,可以通过 Default-metric 修改,重分发到 BGP 后有部分管理员不想公开的 IGP
路由,需使用路由过滤器过滤掉。
另一方面,AS 内的非运行 BGP 的路由可能需要一定的外部路由信息,如左图中的 AngelFire 需
要从 Taos 知道 AS300 AS100 的路由信息,则需要在 Taos 上做重分发
redistribute bgp 200 metric 10000 100 255 1 1500
不过一般禁止这样使用,如果 Taos 是一个 internet 上的 BGP 路由器,重分发后极大数目的路
由将会进入 IGP,导致 IGP 崩溃,此种重分发一般只用在具有有限前缀的企业网络,此时 Taos 可以
加入一条静态路由
ip route 192.168.250.0 255.255.255.0 Serial0
此时 192.168.1.212/30 将不会通告给 AngelFire,同时 192.168.250.0 的摆动仅会影响到 Taos,
不会影响到 Angelfire
14.11.3 BGP默认路由
对于上图的 AS200,仅有一个出口,则可以在出口上做默认路由
ip route 0.0.0.0 0.0.0.0 Serial0
也可以配置成 BGP 通告的默认路由,此时只需 ip route 0.0.0.0 0.0.0.0 Null0
同时也可以使用 neighbor 192.168.1.225 default-originate
此时类似于 OSPF 的 default-information-originate
always 此时不管路由器实际上有没有缺省
路由,都将公布一条默认路由。如果只想发布默认路由,通过 distribute-list 过滤
neighbor 192.168.1.225 distribute-list 1 out
!
access-list 1 permit 0.0.0.0
access-list 1 deny any
14.11.4 IBGP without an IGP
如图,通过配置 AS100 的 3 台路由器的 neighbor 使其全互连此时必须关闭同步功能,如果同
步功能打开,IBGP 路由无法加入路由表
P a g e | 227
CCIE R/S & Service Provider Exam Certification Guide
注:关闭工作状态的 BGP 进程的同步后,需要重新启动 BGP 进程
在 Vail 和 Telluride 上可以使用 neighbor next-hop-self 此后,在公布学到的 EBGP 路由
时将会以自己的地址做为下一跳,使用回环口做 BGP 进程接口
neighbor 1.1.1.1 update-source loopback 0
14.11.5 EBGP多跳
由于 EBGP 需要直接连接,且数据报文 TTL 值为 1,update-source 为 loopback 时,需要经
过多跳,所以可以定义:
Neighbor 1.1.1.1 remote-as 100
Neighbor 1.1.1.1 update-source loopback 0
Neighbor 1.1.1.1 ebgp-multihop 2
14.11.6
聚合路由
一种方法是建立一条静态的到 Null0 的路由,让 BGP 通告出去,
另一种方法是采用 Aggregate-address 192.168.192.0 255.255.248.0
Summary-only:用于只公布聚会和的路由,不公布具体地址,并且在 BGP 路由表中用 S 表示
如上图, AS100->AS200 需要通告精细路由和汇聚路由,200-〉300 只通告汇聚地址。配置如下:
Stowe
router eigrp 100
network 192.168.199.0
!
router bgp 100
P a g e | 228
CCIE R/S & Service Provider Exam Certification Guide
aggregate-address 192.168.192.0 255.255.248.0
redistribute eigrp 100
neighbor 192.168.1.253 remote-as 200
neighbor 192.168.1.253 send-community
neighbor 192.168.1.253 route-map COMMUNITY out
!
ip classless
!
access-list 101 permit ip host 192.168.192.0 host 255.255.248.0
!
route-map COMMUNITY permit 10
match ip address 101
set community none
!
route-map COMMUNITY permit 20
set community no-export
mammoth //采用 prefix 来匹配
router bgp 100
aggregate-address 192.168.192.0 255.255.248.0
redistribute eigrp 100
neighbor 192.168.1.246 remote-as 200
neighbor 192.168.1.246 send-communit
neighbor 192.168.1.246 route-map COMMUNITY out
!
ip classless
ip route 192.168.255.251 255.255.255.255 192.168.1.205
!
ip prefix-list AGGREGATE seq 5 permit 192.168.192.0/21
//seq 类似于 basic 的行号
!
route-map COMMUNITY permit 10
match ip address prefix-list AGGREGATE
set community none
!
route-map COMMUNITY permit 20
set community no-export
suppress-map:
利用 suppress-map 也可以抑制选中的前缀
例如
在 Stowe 链路上公布 192.168.192~194.0
在 mammoth 上公布 196~197.0 不公布 195.0 199.0
Stowe
router bgp 100
aggregate-address 192.168.192.0 255.255.248.0 suppress-map VERMONT
redistribute eigrp 100
neighbor 192.168.1.253 remote-as 200
neighbor 192.168.1.253 send-community
neighbor 192.168.1.253 route-map COMMUNITY out
!
access-list 1 permit 192.168.195.0 0.0.0.255
access-list 1 permit 192.168.196.0 0.0.3.255
!
route-map VERMONT permit 10
match ip address 1
Mammoth
router bgp 100
aggregate-address 192.168.192.0 255.255.248.0 suppress-map CALIFORNIA
redistribute eigrp 100
neighbor 192.168.1.246 remote-as 200
P a g e | 229
CCIE R/S & Service Provider Exam Certification Guide
neighbor 192.168.1.246 send-community
neighbor 192.168.1.246 route-map COMMUNITY out
!
ip prefix-list SUPPRESSEDROUTES seq 5 permit 192.168.192.0/22 le 24
ip prefix-list SUPPRESSEDROUTES seq 10 permit 192.168.199.0/24
!
route-map CALIFORNIA permit 10
match ip address prefix-list SUPPRESSEDROUTES
attribute-map:
用于改变聚合路由属性
aggregate-address 192.168.192.0 255.255.248.0 attribute-map ORIGIN
!
route-map ORIGIN permit 10
set origin incomplete
AS-set:
使用 As-set 属性,防止汇聚时导致的 AS_path 丢失
aggregate-address 192.168.192.0 255.255.248.0 as-set
Advertise-map:
在公布带有 as-set 的聚合路由时,不希望该聚合路由继承所有被聚合路由的所有属性
Sugarbush:
router bgp 200
aggregate-address 192.168.192.0 255.255.248.0 as-set summary-only
advertise-map ALLOW_ROUTE
neighbor 192.168.1.1 remote-as 500
neighbor 192.168.1.250 remote-as 300
neighbor 192.168.1.254 remote-as 100
!
access-list 1 deny 192.168.197.0
access-list 1 permit any
!
route-map ALLOW_ROUTE permit 10
match ip address 1
P a g e | 230
CCIE R/S & Service Provider Exam Certification Guide
14.12 管理BGP连接
service password-encryption //全局模式下使用此命令将配置文件中的口令加密
!
router bgp 100
redistribute eigrp 100
neighbor 192.168.1.253 remote-as 200
neighbor 192.168.1.253 description ****56K to Sugarbush, Ckt. ID 54.DWDA.987654
neighbor 192.168.1.253 password 7 14191D3F5831782574
密码仅启用在链路上,不同邻居可以设置不同的密码,同时 Ip 地址可以改为对等组的名字。
加密方式默认为 MD5
Neighbor version: 修改通告出去的 BGP 版本号
Neighbor advertisement-interval:修改 update 间隔时间
Bgp bestpath as-path ignore :bgp 选路时忽略 as-path 长度
Neighbor maximum-prefix 300 90 warning-only
最大允许邻居通告的前缀数量,默认超过
75%警告,可以修改这个比例。如果超过 max-prefix ,中断邻居关系
Clear ip bgp ip 重置某个邻居间的 BGP 连接
Neighbor shutdown //配置中期,暂时中断到某个路由器的连接
Timers bgp 修改 keepalive 时间和 holdtime
14.13 路由策略
14.13.1 重置 BGP 连接
运行 BGP 的路由器,当如下配置出现变化后必须重置 BGP 连接
1. 补充或者改变与 BGP 有关的访问列表
2. 改变与 BGP 有关的权值
3. 改变与 BGP 有关的分配列表
4. 改变与 BGP 有关的计时器的相关规定
5. 改变 BGP 的管理距离
6. 改变与 BGP 有关的 route-map
可以使用软重置连接,但软重置连接将会带来较大的内存消耗,需要留意内存使用情况
首先需要对邻居配置 neighbor 192.168.1.253 soft-reconfiguration inbound
Clear ip bgp 192.168.1.253 soft out|in
14.13.2 Distribute-list 过滤路由
neighbor 192.168.1.1 distribute-list 1 out
!
Access-list 1 deny 192.168.3.0
Access-list 1 permit any
14.13.3 正则表达式
AS-PATH 过滤采用正则表达式,正则表达式解释如下:
1. 匹配行开始和结束:
Ip as-path access-list 20 permit 850
将匹配 (850)
(850,23,33) (33,27,7850,33)这样的路经
如果仅匹配 850,则可以使用 ip as-path access-list 20 permit ^850$
仅匹配一个空的 AS_PATH ip as-path access-list 20 permit ^$
2. 匹配字符集和
Ip as-path access-list 22 permit ^85[0123459]$
P a g e | 231
CCIE R/S & Service Provider Exam Certification Guide
将匹配含有 850~855 and 859 的 AS_PATH
3. 否定:匹配出字符集和外的其他任何字符
Ip as-path access-list 23 permit ^85[ ^0-5]$
将匹配含有 856~859 的 AS_PATH
4. 通配符
Ip as-path access-list 24 permit ^85.
将匹配含有 850~859 的 AS_PATH 由于.支持空格符,所以也匹配 85
5. 替代,即或操作
Ip as-path access-list 24 permit ^(851|852)$
将匹配含有 851 或者 852 的 AS_PATH
6. 选择字符,匹配一个可能存在或者不存在的字符
Ip as-path access-list 24 permit ^(850)?$
将匹配单一 AS 号 850 或者空列表,如果表达式为 850? 匹配 85 or 850
7. 重复,匹配多个字符
Ip as-path access-list 24 permit ^(850)*$
将匹配重复多次的 AS 号 850 或者空列表,匹配(850),(850,850,850),(850,850,888)
Ip as-path access-list 24 permit ^(850)*$
将匹配至少包含一个 AS 号为 850
8. 分界线,描述多个字
Ip as-path access-list 24 permit ^5610_148_3_2$
只有 as_path(5610_148_3_2)才能被匹配
Ip as-path access-list 24 permit -5610_148_3_2$
包含 as_path(5610_148_3_2)都能被匹配
Ip as-path access-list 24 permit ^(550)+_[12|34]?_1805_.*
即匹配 as_path 在多个 550 后,选择 12 或者 34 接下来必须要有 1805
元字符特殊
字符
.
[]
[^]
?
*
+
^
$
|
_
匹配内容
任何单一字符,包括空格
在方括号中罗列的任何字符
除了在方括号中所罗列字符外的任何字符(^必须放在字符列表之
前)(连字符)在由连字符所分配的两个字符之间的任意字符
字符或模式出现 0 次或 1 次
字符或模式出现 0 次或多次
字符或模式出现 1 次或多次
一行的开始
一行的结束
由元字符特殊字符分隔的字之一
(下划线)一个逗号,行的开始,行的结束或空格
14.13.4 AS-PATH 过滤
Neighbor distribute-list 可以对 NLRI 处理,as_path 过滤则是对 AS 的处理。
Neighbor 1.1.1.1 filter-list 1 out
!
Ip as-path access-list 1 permit ^$
P a g e | 232
CCIE R/S & Service Provider Exam Certification Guide
router bgp 200
neighbor 10.50.250.1 remote-as 50
neighbor 10.50.250.1 ebgp-multihop 2
neighbor 10.50.250.1 update-source Loopback0
neighbor 10.50.250.1 filter-list 2 in
neighbor 10.100.83.1 remote-as 100
neighbor 10.100.83.1 ebgp-multihop 2
neighbor 10.100.83.1 update-source Loopback0
neighbor 10.100.83.1 filter-list 1 out
neighbor 10.125.25.1 remote-as 125
neighbor 10.125.25.1 ebgp-multihop 2
neighbor 10.125.25.1 update-source Loopback0
neighbor 172.30.255.150 remote-as 30
neighbor 172.30.255.150 ebgp-multihop 2
neighbor 172.30.255.150 update-source Loopback0
no auto-summary
!
ip as-path access-list 1 deny ^50$
ip as-path access-list 1 permit .*
ip as-path access-list 2 permit ^50$
此配置通过对 as-path 的过滤将 as125 做为到 as50 的转接 AS
14.13.5 Route-Map 过滤
router bgp 30
redistribute isis level-2
neighbor 10.100.83.1 remote-as 100
neighbor 10.100.83.1 ebgp-multihop 2
neighbor 10.100.83.1 update-source Loopback0
neighbor 10.100.83.1 route-map Innsbruck out
no auto-summary
!
access-list 1 permit 192.168.100.0
access-list 1 permit 10.30.0.0
access-list 1 permit 192.168.2.0
access-list 1 permit 172.29.1.0
access-list 1 permit 172.31.0.0
access-list 1 permit 172.16.0.0
!
route-map Innsbruck permit 10
match ip address 1
P a g e | 233
CCIE R/S & Service Provider Exam Certification Guide
14.13.6 管理权重
CISCO 通过其专有的权重属性控制选路。配置如下
neighbor 10.100.83.1 remote-as 100
neighbor 10.100.83.1 weight 50000
neighbor 10.200.60.1 remote-as 200
neighbor 10.200.60.1 filter-list 3 weight 20000
也可以使用 route-map 设置权重
neighbor 10.200.60.1 route-map Cervinia in
!
ip as-path access-list 1 permit ^$
ip as-path access-list 2 permit _75$
ip as-path access-list 3 permit _50$
!
route-map Cervinia permit 10
match as-path 2
set weight 60000
!
route-map Cervinia permit 20
match as-path 3
set weight 40000
通过 route-map 设置 weight 时,只有 AS_PATH 与之匹配,
route-map 优先级高于带 filter 的 neighbor weight 高于 neighbor 的 weight
14.13.7 管理距离和后门路由
Distance bgp 20 95 200
//修改 EBGP IBGP local BGP 的 AD 从而对选路产生影响
在两个 AS 间可以存在一条单独的链路交换相互间的数据量,但并不通告给其他 AS
此时对于这条链路两端的路由器加入 network link-ip backdoor 即可
对于 Backdoor 路由:
backdoor 属性是使 router 优选从 IGP 学过来的路由而不是优选从 IBGP 邻居学过来的路由。
因为在缺省情况下 EBGP 邻居的 AD 值为 20,会始终优先选择,而不会选择其他 AD 值更低的路由
协议传过来的路由。
14.13.8
Local_Pref 和 MED 属性
使用 ip default local-preference 修改默认值,并可以通过 route-map set local_preference
使用 default-metric 修改默认 MED 值。在 route-map 使用 set metic 修改 MED 值
在 Route-Map 中用 set metric-type internal 将一个 BGP 路由的 MED 设置成与到同一目的地
的 IGP 路由的相同的度量。
在接收的一方用 bgp always-compare-med 来打破 MED 属性只能用于两个 AS 之间
14.13.9
调整 AS_path
通过附加 as-path,通过 AS_PATH 的长度控制选路.
ip as-path access-list 1 permit ^$
!
access-list 3 permit 192.168.100.0
access-list 3 permit 10.30.0.0
access-list 3 permit 172.29.1.0
!
route-map PATH permit 10
match ip address 3
set as-path prepend 30
P a g e | 234
CCIE R/S & Service Provider Exam Certification Guide
14.13.10
路由标记
在 BGP 进程下用 table-map kaka 启动路由标记列表,
配上 Route-Map 的
set as-path tag(用于 IGP 重分布进 BGP 的路由恢复 AS_PATH 信息)
set automatic-tag(用于 BGP 重分布进 IGP 时恢复 AS_PATH 和 ORIGIN 信息)
14.13.11
路由惩罚
bgp dampening half-life reuse suppress max-suppress 被抑制的 BGP 路由表里标记 d 和 h
show ip bgp flap-statistics | dampened-paths 可以查看被抑制的路由
可以使用 clear ip bgp flap-statistics|dampened-paths 清楚被抑制的路由条目
例如 clear ip bgp flap-statistics regexp _30_
来清除所有 As_path 含有 AS 30 的被抑制的路由条目
14.14
大型 BGP
BGP Peer Groups
通过使用对等体组简化邻居配置,并对一组路由器使用共同策略。
neighbor CLIENTS peer-group
neighbor CLIENTS ebgp-multihop 2
neighbor CLIENTS update-source Loopback2
neighbor CLIENTS filter-list 2 in
neighbor CLIENTS filter-list 1 out
neighbor 10.1.255.2 remote-as 200
neighbor 10.1.255.2 peer-group CLIENTS
…
no auto-summary
!
ip as-path access-list 1 permit ^$
ip as-path access-list 2 permit ^[2-6]00$
BGP Communities
团体可以对一组路由使用相同的策略
1.
通过 route-map 识别已经设置了团体属性的路由
2.
通过 set community 设置团体属性
3.
使用 neighbor send-community 来明确该属性将要发送给哪个路由器
NO_EXPORT
接收到的携带该值的路由不能公布给 EBGP 或者 IBGP 的对等
实体,不能再联盟范围以外公布
NO_ADVERTISE
接收到的携带该值的路由不能公布给 EBGP 或者 IBGP 的对等
实体
LOCAL_AS
不能将携带该值的路由公布给 EBGP 对等实体,以及在联盟
内的其他 AS
NONE
属性删除现存的团体属性
neighbor 10.1.255.8 send-community
neighbor 10.1.255.8 route-map AUSTRIA out
no auto-summary
!
access-list 1 permit 10.2.2.0
access-list 2 permit 10.3.3.0
!
route-map AUSTRIA permit 10
match ip address 1
set community no-export
P a g e | 235
CCIE R/S & Service Provider Exam Certification Guide
!
route-map AUSTRIA permit 20
match ip address 2
set community none
自定义团体:
自定义团体号格式: AA:NN
AA 为 AS 号 NN 为自定义编号,CISCO 刚好相反,
使用 ip bgp-community new-format 更改
Ip bgp-community newformat
ip community-list 1 permit .*:5
access-list 1 permit 10.1.1.0
ip community-list 2 permit .*:10
access-list 2 permit 10.1.2.0
!
!
route-map COMM_PREF permit 10
route-map UTAH permit 10
match community 1
match ip address 1
set local-preference 150
set community 200: 5
!
!
route-map COMM_PREF permit 20
route-map UTAH permit 20
match community 2
match ip address 2
set local-preference 200
set community 200:10
ip community-list 1 permit 5 10 表示与带有团体 5,或 10,或两个都有的标记的路由,
如果后面加上关键字 exact-match 表示只带有 5,10 或两个都有的表示的路由,还带
有其他团体标记的路由不匹配
Private-AS
为了防止 AS 不够用,采用了私有 AS 号的设计,
只需在出口路由器上将私有 AS 从 AS_PATH 删除即可
neighbor 10.2.255.1 remove-private-AS
BGP Confederations
BGP 联盟可以使管理者将大型的 AS 分割成小型的 AS,而这些小型 AS 对外部是隐藏的
联盟属性如下:
1. 在联盟内部保留联盟外部的路由的 NEXT_HOP 属性
2. 公布给联盟的路由的 MED 属性在整个联盟范围内予以保留
P a g e | 236
CCIE R/S & Service Provider Exam Certification Guide
3. 路由的 Local_pref 属性在整个联盟范围内予以保留
4. 在联盟范围内,将成员 AS 号加入 AS_PATH,但并不公布到联盟外,使用 type 3,4
的 AS_PATH
5. AS_PATH 中的联盟 AS 号用于避免环路,当联盟内选择一个最短的 AS_PATH 可以考
虑不使用联盟 AS 号
bgp confederation identifier 1200
bgp confederation peers 65533 65535
neighbor Confed peer-group
neighbor Confed ebgp-multihop 2
neighbor Confed update-sourc Loopback 0
neighbor Confed next-hop-self
neighbor MyGroup peer-group
neighbor MyGroup remote-as 65534
neighbor MyGroup update-source Loopback 0
neighbor 10.33.255.1 remote-as 65533
neighbor 10.33.255.1 peer-group Confed
neighbor 10.34.255.2 peer-group MyGroup
neighbor 10.35.255.1 remote-as 65535
neighbor 10.35.255.1 peer-group Confed
在整个联盟内使用 next-hop-self,因此 IGP 可以了解到所有下一跳。
Route Reflectors
路由反射器用于减小 IBGP 对等连接数量的一种方法
在成为 RR 的路由器上加入 neighbor 10.33.255.2 route-reflector-client
RR 公布路由的规则:
1,如果路由是从非客户的 IBGP 对等学习到的,只将它反射给客户
2,如果路由是从客户处学习到的,将它反射给除了发起该路由的客户外所有的
客户以及非客户
3,如果路由是从 EBGP 邻居学来的,将它反射给所有的客户和非客户
如果路由反射器在该属性值中发现自己的本地簇 ID,就说明有环路,忽略掉。
如果一个簇里不止一个 RR,要在进程下用 bgp cluster-id 手工指定簇 ID,因为默认 RR 将自
己的 RID 当成 cluster-id
P a g e | 237
CCIE R/S & Service Provider Exam Certification Guide
14.15
BGP命令解析
Aggregate-address address mask
用于手工汇聚路由,不加参数表示创建一条汇聚路由,但并不抑制精细路由
Router B
router bgp 2
network 172.16.0.0 mask 255.255.255.0
network 172.16.1.0 mask 255.255.255.0
network 172.16.2.0 mask 255.255.255.0
network 172.16.3.0 mask 255.255.255.0
aggregate-address 172.16.0.0 255.255.252.0
neighbor 10.1.1.1 remote-as 1
RouterB#show ip bgp
Network
Next Hop
Metric
*> 172.16.0.0/24
0.0.0.0
*> 172.16.0.0/22
0.0.0.0
*> 172.16.1.0/24
0.0.0.0
*> 172.16.2.0/24
0.0.0.0
*> 172.16.3.0/24
0.0.0.0
LocPrf Weight Path
0
32768 i
32768 i
0
32768 i
0
32768 i
0
32768 i
rtrA#show ip route
...
B
172.16.0.0/16 [200/0] via 0.0.0.0, 00:03:01, Null0
...
Aggregate-address address mask as-set
用于手工汇聚路由,AS-set 用于在汇聚时加入汇聚地址和 AS_SET 字段,防止产生路由环路
Router A
router bgp 1
aggregate-address 172.16.0.0 255.255.252.0 as-set
neighbor 10.1.1.2 remote-as 2
neighbor 172.17.1.2 remote-as 65530
rtrA#show ip bgp 172.16.0.0/22
BGP routing table entry for 172.16.0.0/22, version 10
Paths: (1 available, best #1, table Default-IP-Routing-Table)
Advertised to non peer-group peers:
10.1.1.2 172.17.1.2
{65530,2}, (aggregated by 1 144.223.1.1)
//此处加入了 AS-SET 字段
P a g e | 238
CCIE R/S & Service Provider Exam Certification Guide
0.0.0.0 from 0.0.0.0 (144.223.1.1)
Origin IGP, localpref 100, weight 32768, valid, aggregated, local,
atomic-aggregate, best
Aggregate-address address mask as-set advertise-map route-map-name
用于手工汇聚路由,advertise-map 可以决定 AS_PATH 中的信息是否被保留到聚合路由中
aggregate-address 172.16.0.0 255.255.252.0 as-set
rtrA#show ip bgp 172.16.0.0/22
BGP routing table entry for 172.16.0.0/22, version 10
Paths: (1 available, best #1, table Default-IP-Routing-Table)
Advertised to non peer-group peers:
10.1.1.2 172.17.1.2
{65530,2}, (aggregated by 1 172.17.1.1)
0.0.0.0 from 0.0.0.0 (172.17.1.1)
Origin IGP, localpref 100, weight 32768, valid, aggregated, local,
atomic-aggregate, best
aggregate-address 172.16.0.0 255.255.252.0 as-set
advertise-map select-as
!
access-list 1 permit 172.16.0.0 0.0.0.255
access-list 1 permit 172.16.1.0 0.0.0.255
!
ip as-path access-list 1 permit ^65530$
!
route-map select-as permit 10
match as-path 1
rtrA#show ip bgp 172.16.0.0/22
BGP routing table entry for 172.16.0.0/22, version 5
Paths: (1 available, best #1, table Default-IP-Routing-Table)
Advertised to non peer-group peers:
10.1.1.2 172.17.1.2
65530, (aggregated by 1 172.17.1.1)
0.0.0.0 from 0.0.0.0 (172.17.1.1)
Origin IGP, localpref 100, weight 32768, valid, aggregated, local,
atomic-aggregate, best
Aggregate-address address mask attribute-map route-map-name
用于手工汇聚路由,attribute-map 用于改变聚合路由属性
aggregate-address 172.16.0.0 255.255.252.0 attribute-map ORIGIN
!
route-map ORIGIN permit 10
set origin incomplete
set metric 50
Aggregate-address address mask route-map route-map-name
用于手工汇聚路由时改变聚合路由属性,等同于 attribute-map
P a g e | 239
CCIE R/S & Service Provider Exam Certification Guide
Aggregate-address address mask summary-only
用于手工汇聚路由时抑制精细路由的发送
Aggregate-address address mask suspress-map route-map-name
用于手工汇聚路由,并抑制相关的路由,一般需要按 RFC1918 抑制路由
aggregate-address 172.16.0.0 255.255.252.0 suppress-map suppress
!
access-list 1 permit 172.16.2.0 0.0.0.255
route-map suppress permit 10
match ip address 1
Auto-summary
自动汇总到 ABC 三类地址,在 Cisco 较新的 IOS 中,no auto-summary 自动打开
bgp always-compare-med
打开这条命令后,路由器将始终比较 MED 的大小来决定路径,配置这条命令需在
AS 内的所有路由器上(来自不同 AS 的信息,通常是不比较 MED 的)
原算法只比较来自己相同 external-AS 的通告的路由,此命令将比较所有路由,而
不考虑外部 AS 是否相同
bgp bestpath as-path ignore
在选路时,忽略 as-path 长度的比较.但需要注意,根据选路算法,weight local_pref
origin 具有更高优先级
bgp bestpath med confed
打开这条命令,在选路时,路由器将只比较所有带有 As_confe_seq 属性的路由条
目,此命令用于联盟路由器,同时 weight 和 local_pref 比 MED 有更高的优先级
bgp bestpath med missing-as-worst
对于收到的一条路由前缀,如果缺失 MED 值,默认将 MED 设置为 0,此条命令
用于将没有 MED 的路由前缀设置为一个最大值 4,294,967,295
bgp client-to-client reflection
在配置路由反射器时,客户到客户间的反射是默认打开的。但如果客户间是全互
连的,此条命令加 no 前缀,关闭客户间的反射
bgp cluster-id 32-bit_id
BGP 可以收工指定 cluster-id,cluster-id 可以用普通 10 进制输入,也可以用点分
10 进制输入。
bgp confederation identifier as_number
bgp confederation peers 1_or_more_as_number
前面一条命令定义整个联盟的 AS 号,后面一条命令定义同属于这个 AS 的其它对
等 AS 的号。
bgp dampening
开启 BGP 的路由惩罚。
bgp dampening
route-map-name
half-time:
Reuse:
Suppress:
P a g e | 240
half-life
reuse
suppress
max_suppress_time
route-map
半衰期,时间 1~45 分钟,即在半衰期时间惩罚值降低一半
Default 15mins
惩罚下限,即一条路由惩罚值降低到此阀值以下,路由将不会被抑制
Range 1~20000 default 750
惩罚上限,即惩罚值如果超过此值,路由将被抑制
Range 1~20000 default 2000
CCIE R/S & Service Provider Exam Certification Guide
Max_suppress_time:最大抑制时间,默认其值为 half-time 的 4 倍 range 1~255minutes
router bgp 2
bgp dampening route-map dampen
neighbor 10.1.1.1 remote-as 1
!
ip as-path access-list 1 permit ip as-path access-list 1 permit ^1$
ip as-path access-list 2 permit ip as-path access-list 1 permit ^3$
!
route-map dampen permit 10
match as-path 1
set dampening 15 750 2000 60
route-map dampen permit 20
match as-path 2
set dampening 20 800 2200 80
bgp default local-preference local-preference
设置默认的 local_pref 值,range 0~4,294,967,295,默认 local_pref 100
bgp deterministic-med
打开此命令后,用于确保使用来自相同 AS 的不同对等通告的路由进行 MED 比较
此命令和 bgp always-compare-med 的关系如下
例如有相同前缀的路由如下 (默认按路由接受顺序的逆序排序)
entry1: AS(PATH) 500, med 150, external, rid 172.16.13.1
entry2: AS(PATH) 100, med 200, external, rid 1.1.1.1
entry3: AS(PATH) 500, med 100, internal, rid 172.16.8.1
1.都关闭
1,2 将先比较,2 将优选,因为 2 有更小的 RID,然后 2 与 3 比较,2 为 external,
所以最优路径为 2
2.打开 always-compare-med
先 1,2 比较,选择 med 更低的 1 和 3 比较,由于 1,3 在一个相同 AS 中,
所以再次比较 med,选择 3
3.Deterministic-med 打开,路由前缀的信息将按 AS 重新分组
entry1: AS(PATH) 100, med 200, external, rid 1.1.1.1
entry2: AS(PATH) 500, med 100, internal, rid 172.16.8.4
entry3: AS(PATH) 500, med 150, external, rid 172.16.13.1
此时先组内比较,由于 entry2 的 MED 高于 entry3,所以 entry2 将和 entry1
比较,由于在不同的 AS,所以 MED 不比较,且 1 为 external 的路由,所以,
最有路径为 1
4.都打开
此时先组内比较,由于 entry2 的 MED 高于 entry3,所以 entry2 将和 entry1
比较,由于 always-compare-med 打开,所以 2 的 MED 小于 1 的 MED,2 将
作为最佳路径
P a g e | 241
CCIE R/S & Service Provider Exam Certification Guide
bgp fast-external-fallover
bgp fast-external-fallover 默认是打开的,如果一个接口 down 了以后,BGP 会话会立即
中断,如果这个接口处与振荡状态,那么大量的 BGP 的 update 和 withdrawn 消息将充
斥着整个链路,同时从 idle 到 establish 状态不停改变,对一个 flapping 的端口,建议使
用 no bgp fast-external-fallover,此时端口 shutdown 以后,BGP 会话和邻居关系还
存在,直到超过 BGP 的 Holdtime 才会中断
bgp log-neighbor-changes
此命令用于记录邻居关系变更的一些信息,这些信息可以发到带有 syslog-daemon 的
UNIX 主机或者保存在路由器的内部缓存中,记录消息类型如下
BGP protocol initialization
No memory for path entry
No memory for attribute entry
No memory for prefix entry
No memory for aggregate entry
No memory for dampening info
No memory for BGP updates
BGP notification received
Erroneous BGP update received
User reset request
Peer time-out
Password change
Error during connection collision
Peer closing down the session
Peer exceeding maximum prefix limit
Interface flap
Router ID changed
Neighbor deleted
Member added to peer group
Administrative shutdown
Remote AS changed
RR client configuration modification
Soft reconfiguration modification
配置如下:
logging buffered 4096 debugging
!
router bgp 1
bgp log-neighbor-changes
neighbor 172.17.1.1 remote-as 2
rtr#show logging
Syslog logging: enabled (0 messages dropped, 0 flushes, 0 overruns)
Console logging: level debugging, 48 messages logged
Monitor logging: level debugging, 0 messages logged
Buffer logging: level debugging, 3 messages logged
Trap logging: level informational, 51 message lines logged
Log Buffer (4096 bytes):
01:18:16: %SYS-5-CONFIG_I: Configured from console by console
01:18:31: %BGP-5-ADJCHANGE: neighbor 172.17.1.2 Down - Peer closed
the session
01:19:00: %BGP-5-ADJCHANGE: neighbor 172.17.1.2 Up
bgp router-id ip-address
手工设置 BGP 的 router-id,自动设置方法和 OSPF 相同,如果有 Loopback 口,设
置最大地址的 loopback 的 ip-addr
否则设置活动的物理接口的最大 ip 做为 rid
default-information originate
用于产生一条默认路由,产生默认路由的属性为 incomplete
P a g e | 242
CCIE R/S & Service Provider Exam Certification Guide
router bgp 2
default-information originate
neighbor 172.17.1.2 remote-as 1
!
ip route 0.0.0.0 0.0.0.0 serial 2/0
default-metric metric
用于设置指派给重分布的路由的 MED 值,默认为 0。手工设置 ospf 的 metric 为 5,静
态路由为默认值 10
router bgp 2
redistribute static
redistribute ospf 1 metric 5
neighbor 172.17.1.2 remote-as 1
default-metric 10
distance admin-distance ip-source-address ip-address-mask
ip-access-list-number
用于设置 BGP 路由的管理距离。
Admin-distance 设置 BGP 管理距离值
Ip-source-address/mask 设置路由信息通告源的 RID 地址和子网掩码(采用反掩码)
Ip-access-list-number 设置一个 acl,对 acl 所选择的路由条目进行管理距离修改
neighbor 10.1.1.2 remote-as 2
distance 50 10.1.1.2 0.0.0.0
distance bgp external internal local
用于修改 BGP 3 种类型路由的管理距离,默认值为 20 200 200
Distribute-list
利用 distribute-list 进行过滤,其命令方式为
neighbor {ipaddr|peer-group} distribute-list acl-number {in|out}
neighbor 192.168.1.225 distribute-list 1 out
!
access-list 1 permit 0.0.0.0
access-list 1 deny any
maximum-paths number-of-paths
在负载均衡情况下,设置最大负载均衡的路径数目,默认为 1,最大值为 6
P a g e | 243
CCIE R/S & Service Provider Exam Certification Guide
neighbor {ip-address | peer-group-name} advertise-map route-map-name1
non-exist-map route-map-name2
对于左图配置,当两条链路都存在时,启动 primary,抑制 secondary
当 primary down 了以后,自动通告 secondary 的路由
Router A
interface loopback 0
description primary prefix
ip address 156.26.32.1 255.255.255.0
!
interface loopback 1
description secondary prefix
ip address 144.223.8.1 255.255.255.0
!
router bgp 1
network 156.26.32.0 mask 255.255.255.0
network 144.223.8.0 mask 255.255.255.0
neighbor 10.1.1.2 remote-as 1
neighbor 10.1.1.2 advertise-map secondary non-exist-map primary
!
access-list 1 permit 156.26.1.0 0.0.0.255
access-list 2 permit 144.223.8.0 0.0.0.255
!
route-map primary permit 10
match ip address 1
!
route-map secondary permit 10
match ip address 2
neighbor {ip-address | peer-group-name} advertisement-interval seconds
调整 BGP 邻居通告的间隔时间,range 0~600 default IBGP 5s EBGP 30s
neighbor {ip-address | peer-group-name} default-originate
产生一条默认路由,但这种做法并不推荐,因为 BGP 所通告的默认路由,很有可能没有相
应的路由或者默认路由 down 掉
Router A
router bgp 1
neighbor 10.1.1.2 remote-as 1
Router B
router bgp 1
neighbor 10.1.1.1 remote-as 1
neighbor 10.1.1.1 default-originate
!
ip route 0.0.0.0 0.0.0.0 serial 0
P a g e | 244
CCIE R/S & Service Provider Exam Certification Guide
neighbor
{ip-address
route-map-name
|
peer-group-name}
default-originate
route-map
利用 route-map,有选择性的公布默认路由,
Router B
router bgp 1
neighbor 10.1.1.1 remote-as 1
neighbor 10.1.1.1 default-originate route-map exists
!
access-list 1 permit 10.1.2.0 0.0.0.3
!
route-map exists permit 10
match ip address 1
neighbor {ip-address | peer-group-name} description text
用于描述一个邻居的详细信息
Neighbor 1.1.1.1 description 56k-ISP1
neighbor {ip-address | peer-grp} distribute-list {acl-number-or-name prefix-list-name}
in|out
用于对通告的路由条目进行出站或者入站的过滤
Router A
router bgp 1
neighbor 10.1.1.2 remote-as 2
neighbor 10.1.1.2 distribute-list 1 in
!
access-list 1 deny 172.16.2.0 0.0.0.255
access-list 1 permit any
rtrA#show ip bgp
BGP table version is 4, local router ID is 172.17.1.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network
Next Hop
Metric LocPrf Weight Path
*> 172.16.0.0/24
10.1.1.2
0
02i
*> 172.16.1.0/24
10.1.1.2
0
02i
*> 172.16.3.0/24
10.1.1.2
0
02i
如果 ACL 改为 access-list 1 permit 172.16.2.0 0.0.0.255,此时 BGP 表将改为
Network
Next Hop
Metric LocPrf Weight Path
*> 172.16.2.0/24
10.1.1.2
0
02i
P a g e | 245
CCIE R/S & Service Provider Exam Certification Guide
出站过滤类型
Router B
router bgp 2
neighbor 10.1.1.1 remote-as 2
neighbor 10.1.1.1 distribute-list 1 out
access-list 1 deny 172.16.2.0 0.0.0.255
access-list 1 permit any
例如 CCIE_lab 考试一道题目:要求 aggregate 不使用 no-summary 参数而抑制精细路由,其
配置如下:
router bgp 2
aggregate-address 172.16.0.0 255.255.252.0
neighbor 10.1.1.1 remote-as 1
neighbor 10.1.1.1 distribute-list 100 out
access-list 100 permit 172.16.0.0 0.0.3.255 255.255.252.0 0.0.0.0
neighbor {ip-address | peer-group-name} ebgp-multihop maximum-hop-count
EBGP 多跳,用于如下的网络拓扑结构,EBGP 邻居间没有直接连接,需要 EBGP 多跳解决,
默认 EBGP 多跳开启后,Default 255 不打开,EBGP 多跳为 1。
Router A
router bgp 1
neighbor 10.1.2.2 remote-as 2
neighbor 10.1.2.2 ebgp-multihop 255
!
ip route 10.1.2.0 255.255.255.252 serial0
Router C
router bgp 2
neighbor 10.1.1.1 remote-as 1
neighbor 10.1.1.1 ebgp-multihop 2
!
ip route 10.1.1.0 255.255.255.252 serial 0
neighbor {ip-address | peer-group-name} filter-list as-path-list-number
in|out
P a g e | 246
CCIE R/S & Service Provider Exam Certification Guide
利用 AS_PATH 对路由条目进行过滤
Router A
router bgp 1
neighbor 10.1.1.2 remote-as 2
neighbor 10.1.1.2 filter-list 1 in
!
ip as-path access-list 1 deny _3$
ip as-path access-list 1 permit .*
也可以在 B 上做出站的路由过滤
Router B
router bgp 2
neighbor 10.1.1.1 remote-as 1
neighbor 10.1.2.2 remote-as 3
neighbor 10.1.1.2 filter-list 1 out
!
ip as-path access-list 1 deny ^3$
ip as-path access-list 1 permit .*
neighbor {ip-address | peer-group-name} filter-list as-path-list-number
weight weight
用于对来自特定的 AS_PATH 的路由,修改他们的权重
Router A
router bgp 1
neighbor 10.1.1.2 remote-as 2
neighbor 10.1.1.2 filter-list 1 weight 850
!
ip as-path access-list 1 permit _3$
P a g e | 247
CCIE R/S & Service Provider Exam Certification Guide
rtrA#show ip bgp
BGP table version is 9, local router ID is 172.17.1.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network
*> 172.16.0.0/24
*> 172.16.1.0/24
*> 172.16.2.0/24
*> 172.16.3.0/24
*> 198.16.0.0
*> 198.16.1.0
*> 198.16.2.0
*> 198.16.3.0
Next Hop
10.1.1.2
10.1.1.2
10.1.1.2
10.1.1.2
10.1.1.2
10.1.1.2
10.1.1.2
10.1.1.2
Metric LocPrf Weight Path
0
02i
0
02i
0
02i
0
02i
850 2 3 i
850 2 3 i
850 2 3 i
850 2 3 I
neighbor {ip-address | peer-group-name} maximum-prefix prefix-limit
threshold-value warning-only
设置最多从邻居收到的路由前缀的条目,threshold-value 是一个比例值,当超过这个比例时,
发送 warning,默认值为 75%
rtrA#show ip bgp neighbors
BGP neighbor is 10.1.1.2, remote AS 2, external link
Index 1, Offset 0, Mask 0x2
BGP version 4, remote router ID 10.1.1.2
BGP state = Established, table version = 7, up for 00:53:07
Last read 00:00:08, hold time is 180, keepalive interval is 60
seconds
Minimum time between advertisement runs is 30 seconds
Received 375 messages, 0 notifications, 0 in queue
Sent 343 messages, 0 notifications, 0 in queue
Prefix advertised 0, suppressed 0, withdrawn 0
Connections established 20; dropped 19
Last reset 00:53:28, due to User reset
6 accepted prefixes consume 192 bytes, maximum limit 8 (warning-only)
Threshold for warning message 75%
0 history paths consume 0 bytes
Connection state is ESTAB, I/O status: 1, unread input bytes: 0
Local host: 10.1.1.1, Local port: 11015
Foreign host: 10.1.1.2, Foreign port: 179
neighbor {ip-address | peer-group-name} next-hop-self
当一个 BGP 路由器学到一条 EBGP 路由,他发送给 IBGP 路由器时 Next-hop 属性是默认不更
改的
P a g e | 248
CCIE R/S & Service Provider Exam Certification Guide
对于多路访问的拓扑结构,为了避免额外的跳数,Next-hop 属性如下
RouterB 从 A 学到一条 IBGP 路由,当他通告给 EBGP 邻居 C 时,将不会修改下一跳,依旧保
留 A 的下一跳属性
对于一个 NBMA 型的网络
由于 A 和 C 之间没有直接的链路
需要人为在 RouterB 上修改 Next-hop 属性
Router B
router bgp 1
neighbor 172.16.1.3 remote-as 2
neighbor 172.16.1.3 next-hop-self
rtrC#show ip bgp
BGP table version is 22, local router ID is 172.16.1.13
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network
Next Hop
Metric LocPrf Weight Path
*> 198.16.1.0/24
172.16.1.2
0
0 2 i
neighbor {ip-address | peer-group-name} password password
在 BGP 对等链路上启用 TCP MD5 认证
neighbor ip-address peer-group peer-group-name
定义对等体组,简化配置
Router A (Using peer groups)
router bgp 1
neighbor local peer-group
neighbor local remote-as 1
neighbor 10.1.1.2 peer-group local
neighbor 10.1.2.2 peer-group local
neighbor local distribute-list 1 out
neighbor 10.1.2.2 peer-group local
neighbor external peer-group
neighbor 172.16.1.2 remote-as 2
neighbor 172.16.2.2 remote-as 3
P a g e | 249
CCIE R/S & Service Provider Exam Certification Guide
neighbor 172.16.1.2 peer-group external
neighbor 172.16.2.2 peer-group external
neighbor external distribute-list 2 out
neighbor {ip-address | peer-group-name} prefix-list prefix-list-name
in|out
利用前缀进行路由过滤
Router A
router bgp 1
neighbor 10.1.1.2 remote-as 2
neighbor 10.1.1.2 prefix-list aggregate in
!
ip prefix-list aggregate seq 5 permit 172.16.0.0/22
neighbor {ip-address | peer-group-name} remote-as number
定义一个邻居,并标明邻居所在的 AS 号,用于区分 EBGP 和 IBGP 邻居
neighbor {ip-address | peer-group-name} remove-private-as
通过此命令在宣告路由时,将 AS_PATH 中的私有 AS 号取消掉,一般用于联盟的出口路由器
neighbor {ip-address | peer-group-name} route-map route-map-name in|out
通过 route-map 过滤路由,或者对某些路由加上 weight MED tag 等特征属性
Router A
router bgp 1
neighbor 10.1.1.2 remote-as 2
neighbor 10.1.1.2 route-map filter in
!
Access-list 100 deny ip 1.1.0.0 0.0.255.255
Access-list 100 permit ip any any
route-map filter permit 10
match ip address 100
set weight 90
neighbor {ip-address | peer-group-name} route-reflector-client
定义 BGP 路由反射器,此命令仅作用于 RR 上,client 不需要定义路由反射器
Router A
router bgp 1
neighbor (IP address for Router B) remote-as 1
neighbor (IP address for Router B) route-reflector-client
neighbor (IP address for Router C) remote-as 1
neighbor (IP address for Router C) route-reflector-client
neighbor (IP address for Router D) remote-as 1
neighbor (IP address for Router H) remote-as 1
P a g e | 250
CCIE R/S & Service Provider Exam Certification Guide
Router B
router bgp 1
neighbor (IP address for Router A) remote-as 1
Router C
router bgp 1
neighbor (IP address for Router A) remote-as 1
Router D
router bgp 1
neighbor (IP address for Router E) remote-as 1
neighbor (IP address for Router E) route-reflector-client
neighbor (IP address for Router F) remote-as 1
neighbor (IP address for Router F) route-reflector-client
neighbor (IP address for Router A) remote-as 1
neighbor (IP address for Router H) remote-as 1
neighbor {ip-address | peer-group-name} send-community
在配置 BGP 路由器团体属性时必须加入 send-community 参数
Router A
router bgp 65530
network 172.16.0.0 mask 255.255.255.0
network 172.16.1.0 mask 255.255.255.0
network 172.16.2.0 mask 255.255.255.0
network 172.16.3.0 mask 255.255.255.0
neighbor 10.1.1.2 remote-as 1
neighbor 10.1.1.2 send-community
neighbor 10.1.1.2 route-map setnoexport out
!
access-list 1 permit 172.16.1.0 0.0.0.255
!
route-map setnoexport permit 10
match ip address 1
set community no-export
P a g e | 251
CCIE R/S & Service Provider Exam Certification Guide
route-map setnoexport permit 20
neighbor {ip-address | peer-group-name} shutdown
此命令用于关闭一个 BGP 会话,但在配置中却不关闭,仅为 administratively shut down
neighbor {ip-address | peer-group-name} soft-reconfiguration inbound
优雅重启动,用于在 BGP 策略更改后,例如 distribute-list route-map 等,默认情况下需要重
新启动 BGP 会话
使用此条命令后将不需要重启 BGP 会话,soft-reconfiguration 将不管入站策略,将邻居的
update 存放到内存中,
因此 inbound 将消耗很多内存,而 outboound 由于不消耗内存,所以是默认打开的
router bgp 2
neighbor 10.1.1.2 remote-as 1
neighbor 10.1.1.2 soft-reconfiguration inbound
router#
BGP neighbor is 10.1.1.2, remote AS 1, external link
Index 1, Offset 0, Mask 0x2
Inbound soft reconfiguration allowed
BGP version 4, remote router ID 172.16.1.1
BGP state = Established, table version = 6, up for 00:00:33
Last read 00:00:33, hold time is 180, keepalive interval is 60 seconds
…
.
neighbor {ip-address | peer-group-name} timers keepalive holdtime
设置到邻居的 keepalive 和 hold 时间,默认时间 60 180
Router A
router bgp 1
neighbor 10.1.1.2 remote-as 2
neighbor 10.1.1.2 timers 50 150
no auto-summary
neighbor {ip-address | peer-group-name} unsuppress-map route-map-name
将某条被抑制的路由改为非抑制路由
Router B
router bgp 1
aggregate-address 172.16.0.0 255.255.0.0 summary-only
neighbor 10.1.2.2 unsuppress-map allow
!
access-list 1 permit 172.16.2.0 0.0.0.255
route-map allow permit 10
match ip address 1
neighbor {ip-address | peer-group-name} update-source interface-name
设置 BGP update 消息来源的端口,一般把 BGP 进程建立在 loopback 口上,以获得更大的稳
定性
router bgp 1
neighbor 172.16.1.3 remote-as 1
neighbor 172.16.1.3 update-source Loopback0
neighbor {ip-address | peer-group-name} version version-number
P a g e | 252
CCIE R/S & Service Provider Exam Certification Guide
修改到邻居的 BGP 版本号,默认出现不匹配会自动协商,但协商过程较慢,可以手工设置
版本号
neighbor {ip-address | peer-group-name} weight default-weight
设置邻居通告来的路由的默认权重
network ip-address mask network-mask
用于通告网络,如果不加 mask 则自动按 ABC 类汇总,例如 10.0.1.0 自动汇总为 A 类
network ip-address mask network-mask backdoor
通告后门路由,即 AS1-AS2 间那条链路为后门链路,这条链路不会公布给 EBGP 对端
Router A
router bgp 1
network 172.17.2.0 mask 255.255.255.0 backdoor
neighbor 10.1.1.2 remote-as 3
rtrA#show ip route
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, * - candidate default
U - per-user static route, o - ODR, P - periodic downloaded static route
T - traffic engineered route
Gateway of last resort is not set
172.17.0.0/24 is subnetted, 2 subnets
C
172.17.1.0 is directly connected, Ethernet0
D
172.17.2.0 [90/409600] via 172.17.1.2, Ethernet0
10.0.0.0/30 is subnetted, 2 subnets
B
10.1.2.0 [20/0] via 10.1.1.2
C
10.1.1.0 is directly connected, Serial0
network ip-address mask network-mask route-map route-map-name
此命令可以对通告的路由属性通过 route-map 修改
network ip-address weight weight
修改通告的网络的权重
redistribute protocol route-map route-map-name
metric metric
将 IGP 直连和静态路由重分布到 BGP 中,同时挂接 route-map 可以对相应的路由进行权重
等属性的设置。同时也可以设置分布进入后的 metric 值
redistribute static route-map setwt
redistribute eigrp 1 route-map block
neighbor 172.17.1.2 remote-as 2
no auto-summary
!
access-list 1 deny 172.16.2.0 0.0.0.255
access-list 1 permit any
P a g e | 253
CCIE R/S & Service Provider Exam Certification Guide
route-map block permit 10
match ip add 1
route-map setwt permit 10
set weight 88
redistribute protocol weight weight
对于重分布进入的路由设置相应的权重
synchronization
一条从 IBGP 邻居学习到的路由在进入 IGP 路由表或者公布给一个 BGP 对端之前,通过
IGP 必须知道该路由.
同步可以防止没有足够信息的 IGP 造成路由黑洞.但也会带来很多缺陷,为了使 IBGP 工
作正常,可以采用 2 种方法:
1.
将外部路由重分发到 IGP 中从而保证 IGP 和 BGP 同步,但对于 IGP 路由器一般
无法承受巨大的 internet 路由条目,在几个大型的中断事故中,多数是 BGP 无
意中被分发到了 OSPF 或者 IS-IS 中
2.
IBGP 为逻辑上全网状连接,且关闭同步功能,所有路由器通过 BGP 知道外部路
由,且不用通知 IGP 就能将路由加入到路由表中,但如果一个 AS 中有多个 IBGP
路由器,一个路由器将于其他每个路由器建立对等,十分耗时,故常采用联盟或
者路由反射器来控制 IBGP 逻辑上的全互连.
同步是一个较老的 BGP 特性,在新版的 IOS 中,同步默认被关闭
timers bgp keepalive holdtime
修改 BGP 的 keepalive 和 holdtime,默认为 60/180 改小后可以加快汇聚速度
show ip bgp | {begin |include|exclude} line
察看 BGP 表的信息,可以使用 begin include exclude 等关键字过滤
rtrA#show ip bgp | include 199
BGP table version is 90, local router ID is 199.172.15.1
*> 199.172.1.0
0.0.0.0
0
s> 199.172.2.0
0.0.0.0
0
*> 199.172.2.0/23 0.0.0.0
s> 199.172.3.0
0.0.0.0
0
*> 199.172.4.0
0.0.0.0
0
s--被抑制的路由条目
*--可用的路由
d--被惩罚(dampening)的路由
h—
被惩罚(dampening)的路由
>--BGP 算法选出的最优路由
i--从 IBGP 学到的路由前缀
32768 i
32768 i
32768 i
32768 i
32768 I
show ip bgp prefix
rtrA#show ip bgp 199.172.1.0
BGP routing table entry for 199.172.1.0/24, version 6
Paths: (1 available, best #1)
Advertised to non peer-group peers:
172.17.1.1
Local
0.0.0.0 from 0.0.0.0 (199.172.15.1)
Origin IGP, metric 0, localpref 100, weight 32768, valid, sourced, local,best, ref
2
也可以使用
rtrA#show ip bgp 199.172.1.0 255.255.255.0
rtrA#show ip bgp 199.172.1.0/22
rtrA#show ip bgp 199.172.2.0/23 longer-prefixes
BGP table version is 90, local router ID is 199.172.15.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
P a g e | 254
CCIE R/S & Service Provider Exam Certification Guide
Network
s> 199.172.2.0
*> 199.172.2.0/23
s> 199.172.3.0
Next Hop
0.0.0.0
0.0.0.0
0.0.0.0
Metric LocPrf Weight Path
0
32768 i
32768 i
0
32768 i
同时,如上命令也可以使用| begin include exclude 过滤显示
rtrA#show ip bgp 199.172.2.0 255.255.254.0 longer-prefixes | include s
BGP table version is 90, local router ID is 199.172.15.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
s> 199.172.2.0
0.0.0.0
0
32768 i
s> 199.172.3.0
0.0.0.0
0
32768 I
rtrA#show ip bgp 199.172.2.0 255.255.254.0 longer-prefixes | exclude s
Network
Next Hop
Metric LocPrf Weight Path
*> 199.172.2.0/23 0.0.0.0
32768 I
show ip bgp cidr-only | include line
显示具有非正常 mask 的路由条目,正常的 mask 为 A 类 8bit B 类 16bit C 类 24bit
show ip bgp community community-number(s) | include line exact-match
rtrA#show ip bgp community no-export
BGP table version is 41, local router ID is 10.1.1.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network
*> 172.16.1.0/24
Next Hop
10.1.1.1
Metric LocPrf Weight Path
0
0 65530 i
show ip bgp community-list community-list-number exact-match | include line
ip community-list 1 permit no-export
rtrA#show ip bgp community 1
BGP table version is 41, local router ID is 10.1.1.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network
Next Hop
Metric LocPrf Weight Path
*> 172.16.1.0/24
10.1.1.1
0
0 65530 I
show ip bgp dampened-paths | include line
rtrA#show ip bgp dampened-paths
BGP table version is 7, local router ID is 10.1.1.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network
From
Reuse
Path
*d 172.16.2.0/24
10.1.1.1
00:19:30 1 i
show ip bgp filter-list as-path-access-list | include line
ip as-path access-list 1 permit ^2$
rtrA#show ip bgp filter-list 1
BGP table version is 90, local router ID is 199.172.15.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network
*>200.1.1.0
*>200.1.2.0
*>200.1.3.0
*>200.1.4.0
Next Hop
172.17.1.1
172.17.1.1
172.17.1.1
172.17.1.1
Metric LocPrf Weight Path
0
02i
0
02i
0
02i
0
02I
P a g e | 255
CCIE R/S & Service Provider Exam Certification Guide
show ip bgp flap-statistics | include regular-expression
rtrA#show ip bgp flap-statistics
BGP table version is 9, local router ID is 10.1.1.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network
*d 172.16.2.0/24
From
10.1.1.1
3
Flaps Duration Reuse
00:02:55 00:28:10 1
Path
show ip bgp inconsistent-as | include line
来自相同下一跳地址的路由需要来自相同的 AS,此条命令显示来自不同 AS 的相同下一跳地
址的路由
rtrA#show ip bgp inconsistent-as
BGP table version is 3, local router ID is 172.17.1.1
Status codes: s suppressed, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network
* 199.1.1.0
*>172.17.1.2
Next Hop
172.17.1.2
0
Metric LocPrf Weight Path
0
012?
03?
show ip bgp neighbors ip-address routes
rtrA#show ip bgp neighbors 172.17.1.2
BGP neighbor is 172.17.1.2, remote AS 1, external link
BGP version 4, remote router ID 199.172.15.1
BGP state = Established, up for 1w1d
Last read 00:00:43, hold time is 180, keepalive interval is 60 seconds
Neighbor capabilities:
Route refresh: advertised
Address family IPv4 Unicast: advertised and received
Received 13174 messages, 0 notifications, 0 in queue
Sent 13168 messages, 0 notifications, 0 in queue
Route refresh request: received 0, sent 0
Minimum time between advertisement runs is 30 seconds
For address family: IPv4 Unicast
BGP table version 14, neighbor version 14
Index 1, Offset 0, Mask 0x2
3 accepted prefixes consume 108 bytes
Prefix advertised 40, suppressed 0, withdrawn 0
Connections established 10; dropped 9
Last reset 1w1d, due to User reset
Connection state is ESTAB, I/O status: 1, unread input bytes: 0
Local host: 172.17.1.1, Local port: 11106
Foreign host: 172.17.1.2, Foreign port: 179
Enqueued packets for retransmit: 0, input: 0 mis-ordered: 0 (0 bytes)
Event Timers (current time is 0x357A31F8):
Timer
Starts
Wakeups
Retrans
11859
0
TimeWait
0
0
AckHold
11862
11505
SendWnd
0
0
KeepAlive
0
0
GiveUp
0
0
PmtuAger
0
0
DeadWait
0
0
P a g e | 256
Next
0x0
0x0
0x0
0x0
0x0
0x0
0x0
0x0
CCIE R/S & Service Provider Exam Certification Guide
iss: 2220955579 snduna: 2221180949 sndnxt: 2221180949
sndwnd:
16327
irs: 1147082461 rcvnxt: 1147307991 rcvwnd:
16156 delrcvwnd:
228
SRTT: 300 ms, RTTO: 607 ms, RTV: 3 ms, KRTT: 0 ms
minRTT: 0 ms, maxRTT: 376 ms, ACK hold: 200 ms
Flags: higher precedence, nagle
Datagrams (max data segment is 1460 bytes):
Rcvd: 23247 (out of order: 0), with data: 11862, total data bytes: 225529
Sent: 23520 (retransmit: 0), with data: 11859, total data bytes: 225388
show ip bgp paths | include line
rtrA#show ip bgp paths
Address
Hash Refcount Metric Path
0x125E94
0
4
0i
0x996F4
2
1
01i
0x125D6C
2
2
01i
show ip bgp peer-group peer-group-name summary
rtrA#show ip bgp peer-group
BGP neighbor is demo, peer-group leader
BGP version 4
Minimum time between advertisement runs is 5 seconds
Incoming update AS path filter list is 30
Outgoing update AS path filter list is 40
Route map for outgoing advertisements is adjust-weight
show ip bgp summary | include line
rtrA#show ip bgp summary
BGP router identifier 200.1.4.1, local AS number 2
BGP table version is 14, main routing table version 14
7 network entries and 7 paths using 931 bytes of memory
3 BGP path attribute entries using 156 bytes of memory
1 BGP AS-PATH entries using 24 bytes of memory
0 BGP route-map cache entries using 0 bytes of memory
0 BGP filter-list cache entries using 0 bytes of memory
BGP activity 193/657 prefixes, 193/186 paths, scan interval 15 secs
Neighbor
10.1.1.2
172.17.1.2
V
4
4
AS MsgRcvd MsgSent
2
1
7584
13359
7590
13353
TblVer InQ OutQ Up/Down
14
14
0
0
0 5d06h
0 1w1d
State/PfxRcd
0
3
Clear ip bgp
clear ip bgp *
clear ip bgp * soft
clear ip bgp * soft in
clear ip bgp * soft out
clear ip bgp * soft in out
clear ip bgp AS-number
clear ip bgp AS-number soft
clear ip bgp AS-number soft in
clear ip bgp AS-number soft out
P a g e | 257
CCIE R/S & Service Provider Exam Certification Guide
clear ip bgp AS-number soft in out
clear ip bgp neighbor-ip-address
clear ip bgp neighbor-ip-address soft
clear ip bgp neighbor-ip-address soft in
clear ip bgp neighbor-ip-address soft out
clear ip bgp neighbor-ip-address soft in out
clear ip bgp peer-group peer-group-name
clear ip bgp peer-group peer-group-name soft
clear ip bgp peer-group peer-group-name soft in
clear ip bgp peer-group peer-group-name soft out
clear ip bgp peer-group peer-group-name soft in out
可以对特定的 AS 或者对等体组或者特定的邻居 clear bgp 消息
clear ip bgp dampening prefix mask
重置 BGP 惩罚信息
clear ip bgp flap-statistics prefix mask
重置路由摆动的统计信息
debug ip bgp
debug ip bgp
debug ip bgp neighbor-ip-address updates
debug ip bgp neighbor-ip-address updates access-list-number
debug ip bgp dampening
debug ip bgp dampening access-list-number
debug ip bgp events
debug ip bgp keepalives
debug ip bgp in neighbor-ip-address updates
debug ip bgp in neighbor-ip-address updates access-list-number
debug ip bgp out neighbor-ip-address updates
debug ip bgp out neighbor-ip-address updates access-list-number
debug ip bgp updates
debug ip bgp updates in / out
debug ip bgp updates access-list-number
debug ip bgp updates access-list-number in / out
P a g e | 258
CCIE R/S & Service Provider Exam Certification Guide
14.16
调整BGP性能
14.16.1 BGP 收敛调整
对于边缘路由器,对等路由器以及路由反射器的初始化,将会产生大量的数据流。
1. 有关 TCP 的考虑
主要有 2 个参数影响 TCP 性能, 最大分段尺寸 MSS
a)
和
TCP 窗口大小
MSS
一个 Session 的 MSS 会在初始化的时候确定,Cisco 默认值按 RFC971 定为 536,可以按
照 MTU 1500 将其修改为 1460,减少报文 ACk 的数量
b)
窗口大小
TCP 窗口大小用来控制 TCP 数据报发送速度的一种机制,后文队列优化将详细讲解如何
调整窗口大小
c)
路径 MTU 发现
对于一个路由器可以通过 PMTUD 自动发现路径上的 MTU,对于一个环状网络,若所有接
口为 POS 口,则 MTU 为 4470,如果其中加入一段 fastEthernet 链路,则 MTU 降为 1500
将严重影响性能,不过 GigabyteEthernet 中有了 Jumbo Frame 的概念来消除 MTU 影响
2. 队列优化
1. 保持队列优化
接口上可以配置 hold-queue value in,
保持队列大小= 窗口大小/(2*MSS)*对等体个数
2. SPD
SPD 是运行输入保持队列上的队列管理机制,标准的 SPD 配置建议如下::
Ip spd mode aggressive
Ip spd headroom 1000
Ip spd queue min-threshold 998
Ip spd queue max-threshold 999
3. BGP 只读模式
Bgp update-delay RO_limit 来配置 BGP 停留在只读模式的时间,处在只读模式的 BGP 对等
体只接收更新,不通告任何前缀,仅在收到 Keepalive 消息后,自动脱离只读模式
14.16.2 减轻网络故障影响
1.BGP 快速外部切断
拆除 BGP 绘画的缺省行为需要保持计时器超时,缺省值 180s, BGP 可以启用快速切断某个
EBGP 故障路由器的会话
Ip bgp fast-external-fallover [permit|deny]
2. IGP/BGP 收敛时间增量
在 IS-IS 中设置过载位
Set-overload-bit on-startup timeout
Set-overload-bit on-startup wait-for-bgp
在 OSPF 中设置 max_Metric
Max-metric router-lsa on-startup timeout
Max-metric router-lsa on-startup wait-for-bgp
3. BGP 不中断转发
P a g e | 259
CCIE R/S & Service Provider Exam Certification Guide
当路由器重新启动时,BGP 对等会话将中断,重启完成后又会重新建立,这种过程将会导致
某些前缀被撤回并被重新通告,从而产生路由抖动(Route flapping)
BGP-NSF(不中断转发)
在 BGP 路由器重启德一段时间,数据层面依旧能够继续转发数据
优雅重启动
Bgp graceful-restart
BGP 重启时间可以通过 bgp graceful-restart restart-time 定义
惩罚设置
最大惩罚值= 再使用门限*2(最大抑制时间/半衰期)
温和重配置
Neighbor addr or peer group soft-reconfiguration-inbound
BGP ORF
BGP ORF 特性利用了 BGP ORF 发送接收的能力,将对等体路由器之间的 BGP 更新
条目降到最低。
Neighbor
14.17
addr or peer group capability prefixlist-orf [both|send|receive]
BGP in CCIE_lab
14.17.1 评估路由器的 BGP 能力
kaka#show processes cpu | include BGP
CPU utilization for five seconds: 0%/0%; one minute: 0%; five minutes: 0%
PID Runtime(ms)
Invoked uSecs
5Sec
1Min
5Min
TTY Process
0.00%
0
BGP Open
21
0
1
0
0.00%
0.00%
84
81
6085
13
0.00%
0.02%
0.00%
0
BGP Router
85
693
13436
51
0.00%
0.00%
0.00%
0
BGP I/O
86
2547
201
12671 0.00%
0.06%
0.06%
0
BGP Scanner
如上为 BGP 的 4 个进程所占用的 CPU 比率,如下显示了一台路由器上的内存占用
Total: 29184828, Used: 5148284, Free: 24036544
PID TTY Allocated Freed
Holding Getbufs Retbufs
Process
21 0
0
0
6928
0
0
BGP Open
BGP Router
84 0
52560
492
10324
0
0
85 0
0
0
6868
0
0
BGP I/O
86 0
116
0
9992
0
0
BGP Scanner
BGP 的性能很大程度上决定于路由器的平台,处理器,内存,背板带宽,从对等体收到的路由条
目,发送的路由条目,是否做 RR 等有关。
14.17.2 BGP 配置提示
可以使用 alias mode alias-name alias-sting 简化命令
例如 alias exec cib clear ip bgp *
Show ip bgp | include /* 查看含有字符*的条目
Show tcp brief all 查看 TCP 连接信息,同时可以使用 debug tcp transactions/packet 来查看
14.17.3 show Command 详解
Show ip bgp neighbor
| include BGP state
查看当前 BGP 的状态和邻居关系已经建立时间
| include accepted
查看已经收到的前缀数目和消耗的内存
| include Connections
查看到对等体已经建立和结束的连接数量
| include Last reset
查看上次连接重启的原因
Show ip bgp neighbor 1.1.1.1 advertised-routes 显示邻居通告的路由
P a g e | 260
CCIE R/S & Service Provider Exam Certification Guide
14.17.4
Local_As 属性
如上,如果 AS8 的路由器 Day 将进行迁移,假设为 Day 和 Night 合并为 AS9,而不修改 AS141~AS143
的路由器(他们依旧认为 Day 属于 AS8),这种迁移需要加入一个 loca-as 参数,即将 Day 的 BGP 进程改为
9 后,对指向的邻居做如下修改
Neighbor 192.168.1.2 remote-as 141
Neighbor 192.168.1.2 local-as 8
Neighbor 192.168.1.3 remote-as 142
Neighbor 192.168.1.3 local-as 8
Neighbor 192.168.1.4 remote-as 143
Neighbor 192.168.1.5 local-as 8
但是 8 上的 AS-Path 将会为 8 9 …
.. 在做 As_path 过滤时需要添加这个 local-as 可以在 local-as 后加入
no-prepend 参数修改这个属性
14.17.5
路由聚合和抑制技巧
BGP 路由聚合有几种方法
例如需要汇聚如下网段的路由
199.172.1.0/24
199.172.2.0/24
199.172.3.0/24
199.172.4.0/24
199.172.5.0/24
199.172.6.0/24
199.172.7.0/24
1.创建一条 Null0 的路由
ip route 199.172.1.0 255.255.248.0 null 0
然后再配置 BGP 的时候 network 通告这个 199.172.1.0/21 的网段,这样的好处是,如果查找路
由时,例如 199.172.6.0 网段 down 掉后,查找路由表精细路由发现丢失后,不必查遍整个路由表,
P a g e | 261
CCIE R/S & Service Provider Exam Certification Guide
直接查到这条 null0 的路由,丢弃报文,这样是一种避免路由黑洞的方法。当然更常用的方法是
使用 BGP 自带的聚合命令
2.Aggregate-address 命令汇总路由
Aggregate-address 199.172.1.0 255.255.248.0
这条命令可以挂接 6 种参数,具体分析如下:
1. Summary-only
默认的不加任何参数,将会同时通告精细路由和汇总路由,Summary-only 参数可以抑制精细
路由的通告,但是可能会导致路由黑洞
2. Suspress-map
抑制路由表,可以抑制一些路由的发送,例如,我谨希望汇聚后,发送 5.0 和 6.0 两条精细
路由,可以做如下配置
Access-list 1 deny 199.172.5.0 0.0.0.255
Access-list 1 deny 199.172.6.0 0.0.0.255
Access-list 1 permit any
!
Route-map kaka
Match ip address 1
!
Aggregate-address 199.172.0.0 255.255.248.0 suspress-map kaka
也就是说,除了 5.0 6.0 网段其余都被抑制了,当然抑制的路由可以通过
Neighbor x.x.x.x unsuspressed-map xxx
3. AS-set
AS-set 参数用于在聚合时保留精细路由的一些属性,完善 AS_path 以防止环路产生,在实际
聚合时为了避免一些环路或者其他故障,此参数应该一直打开
4. Attribute-map
5. Advertise-map
如上 2 个参数十分特别,都可以和 router-map 参数一样控制,修改汇总路由的属性。不同点
是,Attribute-map 用于修改聚合路由的属性,而不关心具体的精细路由属性是什么,而对于
Advertise-map 主要就是参考某条或者某几条精细路由属性而不去强行修改聚合路由的属性
聚合时,如果起源不同,则选择精细路由更高编号的起源属性,明细路由的团体属性全部被继承
14.17.6
条件路由通告
条件路由通告体噢铬镍钢允许对路由通告进行更多控制的用户定义路由通告方式。
Non-exist-map 指定了在 BGP RIB 中需要跟踪的网段, 当 non-exist-map 中的路由存在的时候,
advertise-map 中指定的路由将不会被通告,如果 non-exist-map 中指定的路由被撤销,在重新出现之
前,通告 advertise-map 中的路由条目。
P a g e | 262
CCIE R/S & Service Provider Exam Certification Guide
Speedy# show ip bgp | begin bgp
router bgp 60148
no synchronization
network 129.40.19.0 mask 255.255.255.0
neighbor 129.40.19.2 remote-as 60148
neighbor 129.40.19.2 description Tom Router
neighbor 129.40.19.3 remote-as 60148
neighbor 129.40.19.2 description Jerry Router
neighbor 157.248.91.41 remote-as 714
neighbor 129.40.19.2 description Tweety Router
neighbor 157.248.91.41 advertise-map advertise-me non-exist-map not-in-table
no auto-summary
!
ip prefix-list 1000 seq 5 permit 129.40.18.0/24
!
ip prefix-list 1001 seq 5 permit 129.40.20.0/24
!
route-map not-in-table permit 10
match ip address prefix-list 1001
!
route-map advertise-me permit 10
match ip address prefix-list 1000
此时 Speedy 的路由表如下:
Tweety# show ip bgp | begin Network
Network
Next Hop
Metric
LocPrf
Weight Path
*> 129.40.19.0/24 157.248.91.42
0
0
60148 i
*>129.40.20.0/24 157.248.91.42
0
60148 i
如果关闭 Jerry 的 Loopback 5
Speedy# show ip bgp | begin Network
Network
Next Hop
Metric
LocPrf
Weight Path
*>i129.40.18.0/24 129.40.19.2
0
100
0
i
*> 129.40.19.0/24 0.0.0.0
0
32768
i
Tweety# show ip bgp | begin Network
Network
Next Hop
Metric
*> 129.40.18.0/24 157.248.91.42
*> 129.40.19.0/24 157.248.91.42
0
可以使用
LocPrf
Weight
0
0
Path
60148 i
60148 i
P a g e | 263
CCIE R/S & Service Provider Exam Certification Guide
Show ip bgp neighbors ip-addr | begin condition 监控条件路由通告
14.17.7
BGP 路由过滤
Distribute-list 和 Route-map 的优先级
在同时使用 Distribute-list 和 Route-map 时,Distribute-list 优先级高于 Route-map 它将首先进
路由过滤,然后再将过滤后的路由转发给 Route-map 进一步处理
相比之下 Distribute-list 相对较为简单,而 Route-map 可以修改很多参数。例如 MED Local_pref
Community 属性等…
.
14.17.8
BGP 起源属性修改
通过 Route-map 设置
14.17.9
set origin [egp as-no | igp | incomplete]
修改 AS_Path 属性更改路由
Neighbor ip-addr allowas-in [num-of-occrrences]
允许 IOS 在接收 BGP 更新的时候最多接收 10 次本地 AS 号码重复,但这样会关闭环路预防功能
例如一个 AS 有多个出口,我们可以人为的增加一些本地 AS 进入 AS_Path 来影响选路。
router bgp 645
no synchronization
bgp router-id 10.1.5.1
bgp log-neighbor-changes
network 189.168.56.0 mask 255.255.254.0
network 189.168.58.0 mask 255.255.254.0
network 189.168.60.0 mask 255.255.254.0
network 189.168.62.0 mask 255.255.254.0
network 189.168.64.0 mask 255.255.254.0
network 189.168.86.0 mask 255.255.254.0
network 189.168.88.0 mask 255.255.254.0
neighbor 10.1.5.2 remote-as 645
neighbor 62.128.47.193 remote-as 2001
neighbor 62.128.47.193 route-map prepend out
no auto-summary
!
route-map prepend permit 10
match route-type local
set as-path prepend 645
Willis# show ip bgp 189.168.56.0/23
BGP routing table entry for 189.168.56.0/23, version 276
Paths: (2 available, best #1, table Default-IP-Routing-Table)
Flag: 0x820
Advertised to non peer-group peers:
62.128.47.6 62.128.47.194
645
62.128.47.198 from 62.128.47.198 (10.1.5.2)
Origin IGP, metric 0, localpref 100, valid, external, best
645 645
62.128.47.194 from 62.128.47.194 (10.1.5.1)
Origin IGP, metric 0, localpref 100, valid, external
同时还可以使用
Bgp bestpath as-path ignore 这条隐藏命令来忽略 as-path 对选路的影响
14.17.10
AS-path filter
通过一个 AS-path filter 可以过滤来自某些 AS 的路由条目,AS 过滤采用正则表达式的方法。正则表达
式的使用方法前文已有叙述。下面介绍几种常用的过滤方法
P a g e | 264
CCIE R/S & Service Provider Exam Certification Guide
1. 配置为转接 AS
Neighbor 1.1.1.1 filter-list 1 out
!
Ip as-path access-list 1 permit ^$
router bgp 200
neighbor 10.50.250.1 remote-as 50
neighbor 10.50.250.1 ebgp-multihop 2
neighbor 10.50.250.1 update-source Loopback0
neighbor 10.50.250.1 filter-list 2 in
neighbor 10.100.83.1 remote-as 100
neighbor 10.100.83.1 ebgp-multihop 2
neighbor 10.100.83.1 update-source Loopback0
neighbor 10.100.83.1 filter-list 1 out
neighbor 10.125.25.1 remote-as 125
neighbor 10.125.25.1 ebgp-multihop 2
neighbor 10.125.25.1 update-source Loopback0
neighbor 172.30.255.150 remote-as 30
neighbor 172.30.255.150 ebgp-multihop 2
neighbor 172.30.255.150 update-source Loopback0
no auto-summary
!
ip as-path access-list 1 deny ^50$
ip as-path access-list 1 permit .*
ip as-path access-list 2 permit ^50$
此配置通过对 as-path 的过滤将 as125 做为到 as50 的转接 AS
配置为私有 AS
同上拓扑结构,防止 AS125 成为转接 AS
Neighbor 10.50.250.1 filter-list 1 out
Neighbor 10.200.60.1 filter-list 1 out
P a g e | 265
CCIE R/S & Service Provider Exam Certification Guide
!
Ip as-path access-list deny ^$
14.17.11
AS-path 也可以挂接在 Route-map 上
Route-map filter-as permit 10
Match as-path 1
后门路由
后门路由用于一些特殊的情况将 IGP 路由的优先级调高于 EBGP,下面看一种比较特殊的情况
例如如上拓扑结构,BB2 中的 199.172.0.0 网段,通过重分布进入 OSPF 路由。在 R5 和 R3 上将会学到
来自 R4 的 IGP 路由,同时 R5 做为 R4 的 IBGP 邻居将会学到一条 IBGP 的路由,由于 IBGP 路由管理距离大,
在 R5 上对于选路没有影响,但对于 R3 而言,它将学到一条来自 R5 的 EBGP 路由,同时收到 R4 的 IGP 路
由,此时,R3 将把 199.172.0.0 的下一跳定义为 R5,此时就产生了环路了。解决此问题的方法就是在 R5 和
R3 上的 neighbor 后挂接 backdoor 参数
14.17.12
下一跳参数
默认的下一跳规则如下,自己产生的路由的下一跳为 0.0.0.0,收到来自 EBGP 路由将下一跳改为 EBGP
对端的 IP,对 IBGP 通告时不修改下一跳的值。但是可以通过 next-hop-self 修改此规则,将对 IBGP 也通告
下一跳地址为自己。另可以采用 next-hop-unchanged,防止收到 EBGP 路由后,修改下一跳的值,例如如上
环路问题,也可通过在 R5 和 R4 上宣告 Next-hop-unchanged 来解决
对于下一跳属性,还可以使用 route-map 来更改
Neighbor 1.1.1.1 route-map kaka
!
Access-list permit 199.172.0.0 0.0.255.255
!
Route-map kaka permit 10
Match ip-address 1
Set next-hop {ip-addr | peer-group | verify-availability }
注意:verify-availability 只能对接受路由起作用
14.17.13
Local_Pref 和 Weight 属性控制路由
Local_Pref 属性只能在 AS 内传递,也就是说可以定义一个 route-map,修改本地路由的 Local_Pref,
P a g e | 266
CCIE R/S & Service Provider Exam Certification Guide
同时也可以做对 IBGP 邻居的通告,或接收的路由进行 Local_Pref 修改,配置时,同样是先建立一个 ACL,
然后建立一个 routemap 来 match ip address ,然后 set local_preference 来修改,
Weight,只具有本地意义,在本地上对路由进行选择,同样也采用 set weight 来做
14.17.14
MED 控制路由条目
在 BGP 选路规则中,比较完 Weight, Local_pref, local_path, Origin AS_PATH 后才会比较 MED 值
MED 用于 AS 有多个出口的时候,向其它 AS 公告最佳的入口。
MED 可以通过同样的方法使用 Route-map Set Metric
来修改。
对于 MED 属性,有如下特殊情况
默认情况下,如上图来自不同 AS 的 MED 通常是不比较的,如果需要比较
bgp always-compare-med
对于联盟内的 MED 是不会比较的,如果上拓扑需要比较可以使用
bgp bestpath med confed
默认情况下,没有 MED,MED 值将设置为 0,但可以更改
bgp bestpath med missing-as-worst
这样,就不会将 MED 丢失的路由 MED=0 作为选择标准
MED 的值是如下方法设计的:
P a g e | 267
CCIE R/S & Service Provider Exam Certification Guide
1. IGP 进入的,则为 IGP 的 Metric
2. 直连进入的,则为 0
3. 聚合路由,MED 丢失
14.17.15
团体属性
团体属性是 BGP 属性非常强大的属性,它通过一系列的标记,将路由条目分组,进行过滤,控制等
常有用。常见的属性有
1.
Internet
默认的团体,支持在任何 AS 内发布
2.
No_Export 不能宣告到本地以外的 AS,同时也不能宣告到联盟以外
3.
No_Advertise 不能通告给任何对等体
4.
Local_AS 不能宣告到本地 AS 以外
团体属性配置如下:首先建立一个 ACL 或前缀列表,然后 route-map 中 match ip。Set Community 就行
了,ip bgp-community new-format 将使用 AA:NN 的新格式。此后 set community 可以有 additve 参数,
这个参数类似 ip 地址中的 Se 参数,就是在原有属性上附加其他的团体属性, 同时可以使用 set comm. -list
community-lis-no delete 来删除某些团体属性。最后在 Neighbor 上挂接 route-map
注意:必须加入 neighbor
ip-addr
send-community 参数
团体过滤列表:
Ip community-list number [permit | deny] {AA:nn | internet | local-as | no-export | no-advertise }
Ip community-list number [permit | deny] regular-expression
带名字的团体过滤列表如下
Ip community-list standard list-name [permit | deny] {AA:nn | internet | local-as | no-export |
no-advertise }
Ip community-list expended list-name [permit | deny] regular-expression
ip community-list 1 permit no-export
ip community-list 100 permit ^645
ip community-list standard my-community permit local_as
ip community-list expanded your-community permit 645$
在 ACL 里面 Match community 或者 match extcommunity 就可以匹配相应的属性了
Example:
route-map kaka permit 10
match ip address 133
set community 123:22
对端:
router bgp 2001
no synchronization
bgp log-neighbor-changes
neighbor 62.128.47.6 remote-as 11151
neighbor 62.128.47.194 remote-as 645
neighbor 62.128.47.194 route-map change-pref in
neighbor 62.128.47.198 remote-as 645
no auto-summary
!
ip bgp-community new-format
ip community-list standard change-pref1 permit 123:22
!
route-map change-pref permit 10
match community standard change-pref1
set local-preference 250
P a g e | 268
CCIE R/S & Service Provider Exam Certification Guide
14.17.16
EBGP 多跳的使用
如下网络拓扑,在连接 ISP 时有多条链路的情况下,可以使用 LoopBack 口作为 update-source
然后设置 EBGP 跳数,同时让对端 ISP 的 BGP 邻居指向 Loopback 口。同时在只有单一归路的情况下设置
Loopback 做为 Update-source 也将会减少很多不稳定因素
router bgp 3014
no synchronization
bgp router-id 106.112.17.1
neighbor 74.189.62.90 remote-as 906
neighbor 74.189.62.90 ebgp-multihop 2
neighbor 74.189.62.90 update-source Loopback 50
EBGP 多跳实例如下:
P a g e | 269
CCIE R/S & Service Provider Exam Certification Guide
Sunny# show run | begin bgp
router bgp 417
synchronization
bgp router-id 137.246.4.1
bgp log-neighbor-changes
network 20.0.0.0
network 30.0.0.0
network 40.0.0.0
neighbor 191.19.42.1 remote-as 51038
neighbor 191.19.42.1 ebgp-multihop 2
neighbor 191.19.42.1 update-source Loopback50
no auto-summary
!
ip route 191.19.42.1 255.255.255.255 137.246.4.114
ip route 191.19.42.1 255.255.255.255 137.246.4.38
Cloudy# show run | begin interface Ethernet0/0
interface Ethernet0/0
ip address 10.50.50.1 255.255.255.0
ip nat inside
!
interface Serial0/0
ip address 137.246.4.114 255.255.255.252
ip nat outside
!
interface Serial0/1
ip address 137.246.4.38 255.255.255.252
ip nat outside
clockrate 1300000
Cloudy# show run | begin bgp
router bgp 51038
no synchronization
bgp router-id 191.19.42.1
bgp log-neighbor-changes
network 191.19.42.0 mask 255.255.255.0
neighbor 10.50.50.2 remote-as 51038
neighbor 10.50.50.2 next-hop-self
neighbor 137.246.4.1 remote-as 417
neighbor 137.246.4.1 ebgp-multihop 2
neighbor 137.246.4.1 update-source Loopback50
no auto-summary
!
ip nat pool public 191.19.42.3 191.19.42.254 prefix-length 24
ip nat inside source list 8 pool public
ip route 137.246.4.1 255.255.255.255 137.246.4.37
ip route 137.246.4.1 255.255.255.255 137.246.4.113
ip route 191.19.42.0 255.255.255.0 Null0 253
!
access-list 8 permit 10.0.0.0 0.255.255.255
14.17.17
BGP 路由惩罚
Bgp dampening [route-map map-name] {half-time | reuse-limitt start-suspress suppress-duratin}
打开 BGP dampening 后,默认 best path dampening 会打开。
Show ip bgp dampening parameters 可以看到详细的参数
Service_Provider# show ip bgp dampening parameters
dampening 5 750 2000 20
P a g e | 270
CCIE R/S & Service Provider Exam Certification Guide
Half-life time :
5
mins Decay Time :
Max suppress penalty:
12000
Max suppress time:
Suppress penalty :
2000
Reuse penalty :
Show ip bgp dampening flap-statistics 可以看到具体被抑制的路由
775 secs
20 mins
750
Clear ip bgp dampening regexp _30_ 可以清楚带有 AS 30 的所有被惩罚的路由
14.17.18
其他 Feature
Neighbor
soft-reconfiguration inbound 由于 outbound 不耗内存,所以默认打开的
打开 inbound 的 soft-reconfiguration 可以在更改配置后软更新,但将消耗一些内存
节省 BGP 内存的方法:
1. Route-filter 来减少路由条目
2. Aggregate 减少路由条目
3. Maximum-prefixes limitation-num {warning-percent waring-only}
14.17.19
前缀列表
Ip prefix-list kaka seq n deny/permit
10.0.0.0/8 ge 9 le 15
Ge 表示大于等于,故如果只需要/24 的路由,可以表示成为 ge 24 le 24
14.17.20
过滤处理顺序
入站,
出站
14.17.21
过滤列表Route-Mapdistribute-list/Prefix-list
distribute-list/Prefix-listORF 接收到的前缀过滤列表Route-map
条件路由注入
Bgp inject-map routemap-name exist-map routemap-name [copy-attributes]
AS300
AS400
R7
R6
172.16.2.0
172.16.1.0
R4
AS200
R5
AS100
R2
R3
R1
对于如上的拓扑结构,AS100 遵循最佳出口原则,即 172.16.1.0 走 R2->R4 172.16.2.0 走 R3->R5
有如下配置方法:
1. MED,在 AS200 上设置 MED,使 AS100 识别
P a g e | 271
CCIE R/S & Service Provider Exam Certification Guide
2. AS-Path Prepend ,R4 通告给 R2 的 2.0 路由,加长 AS-path,同理 R5
3. 使用条件路由注入
R2:
Router bgp 100
Bgp inject-map AS200-specific exist-map AS200-aggregate
Neighbor 192.168.12.1 remote-as 100
Neighbor 192.168.12.1 send-community
Neighbor 192.168.23.3 remote-as 100
Neighbor 192.168.23.3 send-community
Neighbor 192.168.24.4 remote-as 200
Neighbor 192.168.24.4 send-community
!
Ip bgp-community new-format
Ip prefix-list AS200-R4 seq 5 permit 192.168.24.4/32
Ip prefix-list Aggregate seq 5 permit 172.16.0.0/16
Ip prefix-list Specific seq 5 permit 172.16.1.0/24
!
Route-map AS200-specfic permit 10
Set ip address prefix Specific
Set community 100:200 no-export
!
Route-map AS200-aggregate permit 10
match ip address prefix aggregate
match ip route-source AS200-R4
P a g e | 272
CCIE R/S & Service Provider Exam Certification Guide
Chapter 15
路由器管理及其他特性
15.1 SNMP简单网络管理协议
很多网络管理软件例如 Cisco works, HP openview, Solarwinds 使用 SNMP 来管理网络。通过 SNMP 查询,
可以生成很多的图表来显示网络状态,同时也可以对网络设备进行简单的控制
一个典型的网络管理系统包括四个要素:管理员、管理代理、管理信息数据库、代理服务设备。
一般说来,前三个要素是必需的,第四个只是可选项。
1.管理员(Manager)
网络管理软件的重要功能之一,就是协助网络管理员完成管理整个网络的工作。网络管理软件
要求管理代理定期收集重要的设备信息,收集到的信息将用于确定独立的网络设备、部分网络、或整
个网络运行的状态是否正常。管理员应该定期查询管理代理收集到的有关主机运转状态、配置及性能
等的信息。
2.管理代理(Agent)
网络管理代理是驻留在网络设备中的软件模块,这里的设备可以是 UNIX 工作站、网络打印机,
也可以是其它的网络设备。管理代理软件可以获得本地设备的运转状态、设备特性、系统配置等相关
信息。管理代理软件就象是每个被管理设备的信息经纪人,它们完成网络管理员布置的采集信息的任
务。管理代理软件所起的作用是,充当管理系统与管理代理软件驻留设备之间的中介,通过控制设备
的管理信息数据库(MIB)中的信息来管理该设备。管理代理软件可以把网络管理员发出的命令按照
标准的网络格式进行转化,收集所需的信息,之后返回正确的响应。在某些情况下,管理员也可以通
过设置某个 MIB 对象来命令系统进行某种操作。
路由器、交换器、集线器等许多网络设备的管理代理软件一般是由原网络设备制造商提供的,
它可以作为底层系统的一部分、也可以作为可选的升级模块。设备厂商决定他们的管理代理软件可以
控制哪些 MIB 对象,哪些对象可以反映管理代理软件开发者感兴趣的问题。
3.管理信息数据库(MIB)
管理信息数据库(MIB)定义了一种数据对象,它可以被网络管理系统控制。MIB 是一个信息存
储库,这里包括了数千个数据对象,网络管理员可以通过直接控制这些数据对象去控制、配置或监控
网络设备。网络管理系统可以通过网络管理代理软件来控制 MIB 数据对象。不管到底有多少个 MIB
数据对象,管理代理都需要维持它们的一致性,这也是管理代理软件的任务之一。现在已经定义的有
几种通用的标准管理信息数据库,这些数据库中包括了必须在网络设备中支持的特殊对象,所以这几
种 MIB 可以支持简单网络管理协议(SNMP)。使用最广泛、最通用的 MIB 是 MIB-II。为了利用不同的
网络组件和技术,又开发了一些其它种类的 MIB,它们在 RFC(Request for Comments)中有所记录。
4.代理设备(Proxy)
代理设备在标准网络管理员软件和不直接支持该标准协议的系统之间起桥梁作用。利用代理设
备,不需要升级整个网络就可以实现从旧协议到新版本的过渡。
15.1.1 SNMP 概述
SNMP(Simple Network Management Protocol)即简单网络管理协议,它为网络管理系统提供了
底层网络管理的框架。SNMP 协议的应用范围非常广泛,诸多种类的网络设备、软件和系统中都有所
采用,主要是因为 SNMP 协议有如下几个特点:
首先,相对于其它种类的网络管理体系或管理协议而言,SNMP 易于实现。SNMP 的管理协议、
MIB 及其它相关的体系框架能够在各种不同类型的设备上运行,包括低档的个人电脑到高档的大型主
P a g e | 273
CCIE R/S & Service Provider Exam Certification Guide
机、服务器、及路由器、交换器等网络设备。一个 SNMP 管理代理组件在运行时不需要很大的内存空
间,因此也就不需要太强的计算能力。SNMP 协议一般可以在目标系统中快速开发出来,所以它很容
易在面市的新产品或升级的老产品中出现。尽管 SNMP 协议缺少其它网络管理协议的某些优点,但它
设计简单、扩展灵活、易于使用,这些特点大大弥补了 SNMP 协议应用中的其他不足。
其次,SNMP 协议是开放的免费产品。只有经过 IETF 的标准议程批准(IETF 是 IAB 下设的一个组
织),才可以改动 SNMP 协议;厂商们也可以私下改动 SNMP 协议,但这样作的结果很可能得不偿失,
因为他们必须说服其他厂商和用户支持他们对 SNMP 协议的非标准改进,而这样做却有悖于他们的初
衷。
第三,SNMP 协议有很多详细的文档资料(例如 RFC,以及其它的一些文章、说明书等),网络
业界对这个协议也有着较深入的理解,这些都是 SNMP 协议近一步发展和改进的基础。
最后,SNMP 协议可用于控制各种设备。比如说电话系统、环境控制设备,以及其它可接入网络
且需要控制的设备等,这些非传统装备都可以使用 SNMP 协议。
正是由于有了上述这些特点,SNMP 协议已经被认为是网络设备厂商、应用软件开发者及终端用
户的首选管理协议。
SNMP 是一种无连接协议,无连接的意思是它不支持象 TELNET 或 FTP 这种专门的连接。通过使
用请求报文和返回响应的方式,SNMP 在管理代理和管理员之间传送信息。这种机制减轻了管理代理
的负担,它不必要非得支持其它协议及基于连接模式的处理过程。因此,SNMP 协议提供了一种独有
的机制来处理可靠性和故障检测方面的问题。
另外,网络管理系统通常安装在一个比较大的网络环境中,其中包括大量的不同种类的网络和
网络设备。因此,为划分管理职责,应该把整个网络分成若干个用户分区,可以把满足以下条件的网
络设备归为同一个 SNMP 分区:它们可以提供用于实现分区所需要的安全性方面的分界线。SNMP 协
议支持这种基于分区名(community string)信息的安全模型,可以通过物理方式把它添加到选定的分
区内的每个网络设备上。目前 SNMP 协议中基于分区的身份验证模型被认是为很不牢靠的,它存在一
个严重的安全问题。主要原因是 SNMP 协议并不提供加密功能,也不保证在 SNMP 数据包交换过程中
不能从网络中直接拷贝分区信息。只需使用一个数据包捕获工具就可把整个 SNMP 数据包解密,这样
分区名就暴露无遗。因为这个原因,大多数站点禁止管理代理设备的设置操作。但这样做有一个副作
用,这样一来只能监控数据对象的值而不能改动它们,限制了 SNMP 协议的可用性。
SNMP 的命令和报文
SNMP 协议定义了数据包的格式,及网络管理员和管理代理之间的信息交换,它还控制着管
理代理的 MIB 数据对象。因此,可用于处理管理代理定义的各种任务。SNMP 协议之所以易于使
用,这是因为它对外提供了三种用于控制 MIB 对象的基本操作命令。它们是:Set 、Get 和 Trap :
A.
Set:
它是一个特权命令,因为可以通过它来改动设备的配置或控制设备的运转状态。
P a g e | 274
CCIE R/S & Service Provider Exam Certification Guide
B.
Get:
它是 SNMP 协议中使用率最高的一个命令,因为该命令是从网络设备中获得管理信息的基
本方式。
C.
Trap:
它的功能就是在网络管理系统没有明确要求的前提下,由管理代理通知网络管理系统有一
些特别的情况或问题发生了。
SNMP 协议也定义了执行以上三个命令时的报文流, 但它没有定义其它的设备管理代理命令,
可应用于 MIB 数据对象的操作只有 Set 和 Get 命令,这两个命令的目标是数据对象的值。比如说,SNMP
协议中没有定义 reboot(重启)命令;然而,管理代理软件把 MIB 数据对象和设备的内部命令联系起
来,这样就可以实现某些特殊的命令操作。如果现在想要重启某个设备,管理系统就把某个与重启有
关的 MIB 数据对象的值设为 1(我们的假定)。这样就会触发管理代理执行重新启动设备的命令,同
时还把这个 MIB 数据对象重新设置为原来的状态。
一条 SNMP 报文由三个部分组成:版本域(version field),分区域(community field)和 SNMP
协议数据单元域(SNMP protocol data unit field),数据包的长度不是固定的。
A.
版本域:version
这个域用于说明现在使用的是哪个版本的 SNMP 协议。目前,version 1 是使用最广泛
的 SNMP 协议。
B.
分区域:Community
分区(community)是基本的安全机制,用于实现 SNMP 网络管理员访问 SNMP 管理代
理时的身份验证。分区名(Community name)是管理代理的口令,管理员被允许访问数据
对象的前提就是网络管理员知道网络代理的口令。如果把配置管理代理成可以执行 Trap 命
令,当网络管理员用一个错误的分区名查询管理代理时,系统就发送一个
autenticationFailure trap 报文。
C.
协议数据单元域:
SNMPv1 的 PDU 有五种类型,有些是报文请求(Request),有些则是响应(Response)。
它们包括:GetRequest、GetNextRequest、SetRequest、GetResponse、Trap 。SNMPv2 又增
加了两种 PDU:GetBulkRequest 和 InformRequest 。
SNMP 管理员使用 GetRequest 从拥有 SNMP 代理的网络设备中检索信息,SNMP 代理以
GetResponse 消息响应 GetRequest。可以交换的信息很多,如系统的名字,系统自启动后正常运行的
时间,系统中的网络接口数等等。GetRequest 和 GetNextRequest 结合起来使用可以获得一个表中的对
象。GetRequest 取回一个特定对象;而使用 GetNextRequest 则是请求表中的下一个对象。使用
P a g e | 275
CCIE R/S & Service Provider Exam Certification Guide
SetRequest 可以对一个设备中的参数进行远程配置。Set-Request 可以设置设备的名字,关掉一个端口
或清除一个地址解析表中的项。Trap 即 SNMP 陷阱,是 SNMP 代理发送给管理站的非请求消息。这些
消息告知管理站本设备发生了一个特定事件,如端口失败,掉电重起等,管理站可相应的作出处理。
MIB 概述
管理信息数据库(MIB)是一个信息存储库,它包含了管理代理中的有关配置和性能的数据,有
一个组织体系和公共结构,其中包含分属不同组的许多个数据对象。如下图所示。
MIB 数据对象以一种树状分层结构进行组织,这个树状结构中的每个分枝都有一个专用的名字和
一个数字形式的标识符。上图表示的是标准 MIB 的组织体系,列出了从 MIB 结构树的树根到各层树枝
的全部内容。结构树的分枝实际表示的是数据对象的逻辑分组。而树叶,有时候也叫节点(node),
代表了各个数据对象。在结构树中使用子树表示增加的中间分枝和增加的树叶。
使用这个树状分层结构,MIB 浏览器能够以一种方便而且简洁的方式访问整个 MIB 数据库。MIB
浏览器是这样一种工具,它可以遍历整棵 MIB 结构树,通常以图形显示的形式来表示各个分枝和树叶
对象。可以通过其数字标识符来查找 MIB 中的数据对象,这个数字标识符号从结构树的顶部(或根部)
开始,直到各个叶子节点(即数据对象)为止。这种访问方式和文件系统的组织方式一致。两者的主
要区别在于文件系统中的路径名可以以绝对也可以以相对方式表示,而 MIB 数据对象只能以绝对方式
表示,不能使用相对方式。例如,在图中,iso(1)位于结构树的最上方,而 sysDescr(1)处在叶子
节点的位置。现在看不到树根 root(.),其余所有的分枝都是从这里扩展而来的。通常用带点的符号
来 表 示数 据对象 的 标识 符。要 访 问数 据对象 sysDescr (1 ),其 完整 的标 识 符应 该是这 样 的 :
iso.org.dod.internet.mgmt.mib-2.system.sysDescr(这个标识符应该从左向右读)。数据对象也可以以另
一种更短的格式表示,即用数字形式标识符代替分枝名形式的表示形式。这样,上面的那种形式的标
识符 iso.org.dod.internet.mgmt.mib-2.system.sysDescr 还可以用 1.3.6.1.2.1.1.1 来表示。这两种表达格
式的作用是一致的,都表示同一个 MIB 数据对象。尽管数字形式的标识符看起来更简洁,选择何种表
达格式仍然是个人偏好问题。幸运的是,许多 MIB 浏览器可以以两者中任何一种格式来表示数据对象,
这使得两种格式间的相互转化非常容易。
MIB 的访问方式
在定义 MIB 数据对象时,访问控制信息确定了可作用于该数据对象的操作种类。SNMP 协议有如
下的 MIB 数据对象访问方式:
P a g e | 276
CCIE R/S & Service Provider Exam Certification Guide
A.
只读方式(Read-only)
B.
读可写(Read-write)
C.
止访问(Not-accessible)
络管理系统无法改动只读方式的 MIB 数据对象,但可以通过 Get 或 Trap 命令读取数据对象的值。
在一件产品的使用期内,某些 MIB 的信息从不会改变。例如,MIB 数据对象 sysDescr,它代表 System
Description,包含了管理代理软件所需要的厂商信息。确定某些数据对象为只读还有另一个原因,即
确保有关性能的信息及其它统计数据正确,不至于因误操作而改动它们。
15.1.2 路由器上配置 SNMP
首先,使用 snmp-server community 命令创建团体
[no] snmp-server community string [view view-name] [ro | rw][access-list number]
如上的 String 是 Cisco Works 这些管理站和路由器间的一个简单的口令匹配,后面 view 可以限
制 MIB 对象是否可以访问,通过 snmp-server view view-name {include |exclude}来设置,Ro RW
是设置读写权限, 最后是对访问控制列表的一个简单的过滤、
如果要使用 SNMP 消息 reload 路由器,这条命令要加入
Snmp-server system-shutdown
TFTP 服务器通过 SNMP 来存取配置文件,acl 用来限制对服务器的访问
Snmp-server tftp-server-list acl-number
配置 SNMP 引擎的方法如下
snmp-server engineID [local engineid-string] | [remote ip-address udp-port port
engineid-string]
然后是配置 Trap
snmp-server host host-addr [traps | informs] [version {1 | 2c | 3 [auth | noauth | priv]}]
community-string [udp-port port] [notification-type]
其中 auth 为 SHA 和 MD5, Priv 为 DES
snmp-server enable traps [notification-type] [notification-option]
配置需要进行 traps 的消息类型
例如:要求 172.16.1.200 和 201 以只读方式接收 bgp traps
snmp-server community access RO
snmp-server enable traps bgp
snmp-server host 172.16.1.200 access
snmp-server host 172.16.1.201 access
验证如下:
Bowler#clear ip bgp *
SNMP: Queuing packet to 172.16.1.200
SNMP: V1 Trap, ent bgp, addr 10.1.2.25
bgpPeerEntry.14.10.1.2.1 = 00 00
bgpPeerEntry.2.10.1.2.1 = 1
SNMP: Queuing packet to 172.16.1.201
SNMP: V1 Trap, ent bgp, addr 10.1.2.25
bgpPeerEntry.14.10.1.2.1 = 00 00
bgpPeerEntry.2.10.1.2.1 = 1
P a g e | 277
CCIE R/S & Service Provider Exam Certification Guide
SNMP: Packet sent via UDP to 172.16.1.200
SNMP: Packet sent via UDP to 172.16.1.201
另一个例子,使用 SNMP v2c Trap 并制定 SNMP 源 IP 地址
snmp-server community access RO
snmp-server enable traps bgp tty
snmp-server host 172.16.1.200 access tty
snmp-server host 172.16.1.201 version 2c access bgp
snmp-server trap-source loopback 1
验证如下:
#Telnet Boxer
Trying 10.1.1.1 … Open
User Access Verification
Password:
Boxer>logout
[Connection to Boxer closed by foreign host]
Boxer#
SNMP: Queuing packet to 172.16.1.200
SNMP: V1 Trap, ent enterprises.9, addr 172.16.2.25
ltsLineSessionEntry.1.66.1 = 5
tcpConnEntry.1.10.1.1.1.23.10.1.10.1.11000 = 5
ltcpConnEntry.5.10.1.1.1.23.10.1.10.1.11000 = 958
ltcpConnEntry.1.10.1.1.1.23.10.1.10.1.11000 = 45
ltcpConnEntry.2.10.1.1.1.23.10.1.10.1.11000 = 87
ltsLineEntry.18.66 =
SNMP-Sever Group:
snmp-server group [groupname {v1 | v2c | v3 {auth | noauth | priv}}] [read readview]
[writewriteview] [notify notifyview ] [access access-list]
SNMP-Sever User 配置
snmp-server user username [groupname remote ip-address [udp-port port] {v1 | v2c |
v3}[encrypted] [auth {md5 | sha} auth-password [priv des56 priv password]] [access
access-list]
15.1.3 路由器上查看 SNMP
Router# show snmp
Chassis: 01506199
37 SNMP packets input
0 Bad SNMP version errors
4 Unknown community name
0 Illegal operation for community name supplied
0 Encoding errors
24 Number of requested variables
0 Number of altered variables
0 Get-request PDUs
28 Get-next PDUs
0 Set-request PDUs
78 SNMP packets output
0 Too big errors (Maximum packet size 1500)
0 No such name errors
0 Bad values errors
P a g e | 278
CCIE R/S & Service Provider Exam Certification Guide
0 General errors
24 Response PDUs
13 Trap PDUs
SNMP logging: enabled
Logging to 171.69.58.33.162, 0/10, 13 sent, 0 dropped.
SNMP Manager-role output packets
4 Get-request PDUs
4 Get-next PDUs
6 Get-bulk PDUs
4 Set-request PDUs
23 Inform-request PDUs
30 Timeouts
0 Drops
SNMP Manager-role input packets
0 Inform response PDUs
2 Trap PDUs
7 Response PDUs
1 Responses with errors
SNMP informs: enabled
Informs in flight 0/25 (current/max)
Logging to 171.69.217.141.162
4 sent, 0 in-flight, 1 retries, 0 failed, 0 dropped
Logging to 171.69.58.33.162
0 sent, 0 in-flight, 0 retries, 0 failed, 0 dropped
Router# show snmp pending
req id: 47, dest: 171.69.58.33.161, V2C community: public, Expires in 5 secs
req id: 49, dest: 171.69.58.33.161, V2C community: public, Expires in 6 secs
req id: 51, dest: 171.69.58.33.161, V2C community: public, Expires in 6 secs
req id: 53, dest: 171.69.58.33.161, V2C community: public, Expires in 8 secs
详细资料参见:
http://www.cisco.com/en/US/products/sw/iosswrel/ps1831/products_command_refe
rence_chapter09186a00800d983e.html
15.2 RMON属性配置
SNMP 作为一个基于 TCP/IP 并在 Internet 互联网中应用最广泛的网管协议,网络管理员可以使
用 SNMP 监视和分析网络运行情况,但是 SNMP 也有一些明显的不足之处:由于 SNMP 使用轮询
采集数据,在大型网络中轮询会产生巨大的网络管理报文,从而导致网络拥塞; SNMP 仅提供一般
的验证,不能提供可靠的安全保证; 不支持分布式管理,而采用集中式管理。由于只由网管工作站
负责采集数据和分析数据,所以网管工作站的处理能力可能成为瓶颈。
为了提高传送管理报文的有效性、减少网管工作站的负载、满足网络管理员监控网段性能的需
求,IETF 开发了 RMON 用以解决 SNMP 在日益扩大的分布式互联中所面临的局限性。
15.2.1
RMON 工作原理
远程监控(RMON)是一个标准监控规范,它可以使各种网络监控器和控制台系统之间交换
网络监控数据。
RMON 监视器可用两种方法收集数据:一种是通过专用的 RMON 探测器(probe)
,网管工作
站直接从探测器获取管理信息并控制网络资源,这种方式可以获取 RMON MIB 的全部信息;另一
种方法是将 RMON 代理直接植入网络设备(路由器、交换机、HUB 等)使它们成为带 RMON probe
P a g e | 279
CCIE R/S & Service Provider Exam Certification Guide
功能的网络设施,网管工作站用 SNMP 的基本命令与其交换数据信息,收集网络管理信息,但这
种方式受设备资源限制,一般不能获取 RMON MIB 的所有数据,大多数只收集四个组的信息。
15.2.2 路由器上配置 RMON
路由器包捕获有 2 种方式
Native : 只捕获法网路由器本以太网接口的报文
Promiscuous:混杂模式, 捕获在该网段上的所有报文
Router(config-if)# rmon {native | promiscuous}
定义警告表项和所监视变量的命令如下
rmon alarm number variable interval {absolute | delta}rising-threshold value
[event-number]falling-threshold value [event-number][owner string]
Number : alarm 的编号
Variable: 指定 MIB 对象到监视器
Interval: 采样(Sampling)的间隔时间
P a g e | 280
CCIE R/S & Service Provider Exam Certification Guide
Absolute/Delta: absolute:直接测试 MIB 变量的值,而 Delta 测试变量的变化量
Falling/Rising-threhold: 报警的上下门限,如图所示
Event-number:关联 rmon 的 event
Event 定义如下
rmon event number [description string] [log] [owner string][trap
community]
owner: 没有特别用途,仅定义一个所有者属性
snmp-server community eventtrap RO
snmp-server enable traps
snmp-server host 172.16.1.2 eventtrap
snmp-server trap-source loopback 1
rmon event 1 log trap eventtrap description "High ifOutErrors"
rmon event 2 log trap eventtrap description "High 5-minute CPU" owner
kaka
rmon alarm 10 ifEntry.20.4 20 delta rising-threshold 15 1
falling-threshold 0 owner kaka
rmon alarm 11 lsystem.58.0 20 absolute rising-threshold 50 2
falling-threshold 25 owner kaka
kaka#show rmon event alarms
Event 1 is active, owned by kaka
Description is High ifOutErrors
Event firing causes log and trap to community eventtrap, last fired 1d00h
Current log entries:
index
time description
1
1d00h
High ifOutErrors
2
1d00h High ifOutErrors
Event 2 is active, owned by kaka
Description is High 5-minute CPU
Event firing causes log and trap to community eventtrap, last fired 1d00h
Current log entries:
index
time description
1
1d00h High 5-minute CPU
Alarm 10 is active, owned by kaka
Monitors ifEntry.20.4 every 20 second(s)
Taking delta samples, last value was 20
Rising threshold is 15, assigned to event 1
Falling threshold is 0, assigned to event 0
P a g e | 281
CCIE R/S & Service Provider Exam Certification Guide
On startup enable rising or falling alarm
Alarm 11 is active, owned by kaka
Monitors lsystem.58.0 every 20 second(s)
Taking absolute samples, last value was 60
Rising threshold is 50, assigned to event 2
Falling threshold is 25, assigned to event 0
On startup enable rising or falling alarm
rmon collection history index[buckets bucket-number] [interval seconds][owner
ownername]
一般用来对接口等进行统计
Buckets: 一种桶型结构,用于存放 RMON 统计表,默认值为 50
配置好了 collection history 后,加载在端口上
Router(config-if )#rmon collection stats index [owner ownername]
关于 RMON 的详细资料,参见
http://www.cisco.com/en/US/products/hw/switches/ps5023/products_configuration_guide_c
hapter09186a00805a64c3.html
15.3 记录日志和系统日志
15.3.1 记录日志(Logging)
路由器可以使用日志记录功能将日志记录到本地设备或发送到远端服务器
Logging buffered [size] 设置日志缓存,一般设置为 4096
Show logging
查看日志
Clear logging
清除日志
Logging host 可以设置将日志发送到 syslog 服务器
如果要将日志发送到 telnet 会话
Terminal monitor
可以给日志信息加入时间
Service timestamps log datetime [msec] [localtime] [show-timezone]
Service timestamps log uptime
对于消息类型可以分级设置
Logging {console | monitor | trap | history} level
Level 分类如下
0
Emergencies
系统不稳定
1
Alert
需要立即采取行动
2
Critical
临界情况
3
Errors
错误情况
4
Warnings
警告情况
5
Notifications
正常但重要的情况
6
Informational
仅信息消息
7
debugging
调试消息
同步日志输出,减轻显示到主控台上的日志消息会打断主控台的输入
P a g e | 282
CCIE R/S & Service Provider Exam Certification Guide
Logging synchronous
一个常见的 logging 配置
service timestamp debug datetime localtime show-timezone
service timestamp log datetime localtime show-timezone
clock timezone PST –8
clock summer-time PDT recurring
logging buffered
Seattle>show logging
Syslog logging: enabled (0 messages dropped, 0 flushes, 0 overruns)
Console logging: level debugging, 8 messages logged
Monitor logging: level debugging, 0 messages logged
Buffer logging: level debugging, 8 messages logged
Trap logging: level informational, 12 message lines logged
Log Buffer (4096 bytes):
*Nov 28 16:00:39 PST: %LINK-5-CHANGED: Interface TokenRing0, changed state to
administratively down
*Nov 28 16:00:39 PST: %LINK-3-UPDOWN: Interface Serial1, changed state to down
*Nov 28 16:00:39 PST: %LINK-5-CHANGED: Interface Serial0, changed state to
administratively down
*Nov 30 12:00:39 PST: %SYS-5-CONFIG_I: Configured from console by console
15.3.2 系统日志(Syslog)
Syslog 是一个运行在 Unix 服务器上的进程或者守护进程。用于收集储存日志文件,日志消息从运
行在 unix 的服务器上的不同服务以及其他网络节点发来,发送消息的服务指示其设备类型,Syslog
支持的设备类型如下
Facility Type
Auth
Cron
Daemon
Kern
Local0-7
Lpr
Mail
News
Sys9-14
Syslog
User
Uucp
Service
认证系统
时钟守护进程设备
系统守护进程
内核
本地定义的消息
打印系统
邮件系统
USENET 新闻
系统使用
系统日志
用户进程
Unix 到 Unix 复制系统
Syslog 可以修改 /etc/syslog.conf 来配置,例如加入如下命令:
Local7.debugging /usr/adm/logs/cisco.log
Syslog 在路由器上的配置如下:
1. Logging facility facility-type 调整记录消息的设备类型、
2. 将日志指定到主机
logging 172.16.1.2
logging trap notifications
3. 配置 unix 服务器/etc/syslog.conf, 加入
local7.notice
/usr/adm/logs/cisco.log
P a g e | 283
CCIE R/S & Service Provider Exam Certification Guide
4. 某些路由器可以支持通过 SNMP 发送 Syslog
Cascade(config)#snmp-server enable traps syslog
Cascade(config)#logging history notification
15.4 网络时间协议NTP
15.4.1 NTP 概述
Network Time Protocol(NTP)是用来使计算机时间同步化的一种协议,它可以提供高精准度
的时间校正(LAN 上与标准间差小于 1 毫秒,WAN 上几十毫秒),NTP 提供准确时间,首先要有准
确的时间来源,这一时间应该是国际标准时间 UTC。 NTP 获得 UTC 的时间来源可以是原子钟、天
文台、卫星,也可以从 Internet 上获取。这样就有了准确而可靠的时间源。时间按 NTP 服务器的
等级传播。按照离外部 UTC 源的远近将所有服务器归入不同的 Stratun(层)中。Stratum-1 在顶
层,有外部 UTC 接入,而 Stratum-2 则从 Stratum-1 获取时间,Stratum-3 从 Stratum-2 获取时间,
以此类推,但 Stratum 层的总数限制在 15 以内。所有这些服务器在逻辑上形成阶梯式的架构相互
连接,而 Stratum-1 的时间服务器是整个系统的基础。Stratum-3 被认为是精度相当可靠的时钟。
计算机主机一般同多个时间服务器连接, 利用统计学的算法过滤来自不同服务器的时间,
以选择最佳的路径和来源来校正主机时间。即使主机在长时间无法与某一时间服务器相联系的情
况下,NTP 服务依然有效运转。
为防止对时间服务器的恶意破坏,NTP 使用了识别(Authentication)机制,检查来对时的信息
是否是真正来自所宣称的服务器并检查资料的返回路径,以提供对抗干扰的保护机制。
15.4.2 NTP 配置
NTP 首先需要创建一个连接:
ntp server ip_address [version number] [key keyid] [source interface] [prefer]
ntp peer ip_address [version number] [key keyid] [source interface] [prefer]
如果路由器将和另一个 NTP 时钟源同步,则建立一个服务器连接
如果路由器不但与另一个设备同步,并且允许其他设备和此路由器同步,应配置对等体
对路由器 NTP 服务的访问控制:
ntp access-group {query-only | serve-only | serve | peer} access-list-number
serve-only: 允许访问控制列表上的 ip 地址请求时间。路由器不向远程系统同步时间
serve:
允许时间请求和控制查询,路由器不向远程系统同步时间
query-only:允许发出 NTP 控制查询。控制查询用在监视 NTP 进程的 SNMP 管理站
peer:
允许时间请求和控制查询,并允许路由器从远程系统同步时间
例如:
Seattle
access-list 1 permit 172.16.0.0 0.0.255.255
access-list 2 permit 128.105.39.11
ntp access-group peer 2
//允许这个网段从 Seattle 接收 NTP 更新
ntp access-group serve 1
//允许 Seattle 从 128.105.39.11 同步时间
ntp server 128.105.39.11
Tacoma
ntp server 172.16.1.5
P a g e | 284
CCIE R/S & Service Provider Exam Certification Guide
如果没有外部时钟源,路由器可以配置为主时钟,但必须内置日历
clock calendar-valid 打
开,此后通过 ntp master [ stratum] 配置路由器 NTP 等级,默认等级为 8。需要将路由器配置
成较高等级。防止等级过低而修改其他更可靠的时钟源。此时,路由器依然会去查找等级比自己
低的时钟进行同步,如果查找不到,路由器向配置的等级数同步,然后其他路由器与它同步。
NTP 使用的是 UTC 时间,则需要设置相应的时区
clock timezone PST -8
clock summer-time PDT recurring
使用 ntp update-calendar 可以使路由器获得日历更新
15.4.3 NTP 的认证功能
ntp authenticate
ntp authentication-key number md5 key
ntp trusted-key number
ntp server ip-address key number
第一条命令用于启动 NTP 的认证功能,第二条为设置 NTP 的 key。第 3,4 条配置在客户端上,
用于关联钥匙和使用钥匙认证
Tacoma#show ntp status
Clock is unsynchronized, stratum 16, no reference clock
nominal freq is 250.0000 Hz, actual freq is 249.9999 Hz, precision is 2**19
reference time is BDD13136.BEAD46C0 (15:04:06.744 Eastern Thu Nov 30 2000)
clock offset is 5.8229 msec, root delay is 94.04 msec
root dispersion is 242.74 msec, peer dispersion is 70.86 msec
Tacoma#show ntp association detail
172.16.1.105 configured, insane, invalid, unsynced, stratum 16
15.4.4 NTP 常用配置实列
A.NTP 广播客户端模式
如上图所示,路由器接收 NTP server 来自以太网的广播,从而更新时间
ntp_client(config)#int ethernet 0
ntp_client(config-if)#ntp broadcast client
ntp_client(config-if)#exit
ntp
ntp_clent#show ntp associations
P a g e | 285
CCIE R/S & Service Provider Exam Certification Guide
address
ref clock
st
when
poll
reach delay
* 206.191.241.44 128.194.103.14 5
7
8192
76
4.1
* master (synced), # master (unsynced), + selected, - candidate, ~ configured
B.NTP 静态客户端模式
offset
0.05
disp
910.5
hostname ntp_client
!
clock timezone CST -6
!
<<<text omitted>>>
!
interface Ethernet0
ip address 206.191.241.43 255.255.255.248
no ip directed-broadcast
ntp broadcast client
!
<<<text omitted>>>
!
ntp clock-period 17179279
This is added by the router
Router(config)#ntp server 128.249.1.1
ntp_client#show ntp stat
Clock is synchronized, stratum 6, reference is 206.191.241.44
nominal freq is 250.0000 Hz, actual freq is 250.0096 Hz, precision is 2**19
reference time is BCF258FA.69DAF6F5 (14:18:18.413 CSTDST Wed Jun 14 2000)
clock offset is -16.8153 msec, root delay is 4.06 msec
root dispersion is 409.61 msec, peer dispersion is 392.78 msec
ntp_client#
ntp_client#show ntp ass
address
ref clock
st
when poll
reach
delay offset
P a g e | 286
disp
CCIE R/S & Service Provider Exam Certification Guide
~128.249.1.1
0.0.0.0
16
64
0
0.0
0.00
16000.
/*NTP configured but no synced*/
* 206.191.241.44 128.194.103.14 5
46 8192
77
4.1
-16.82 392.8
* master (synced), # master (unsynced), + selected, - candidate, ~ configured
ntp_client#
ntp_client#show ntp ass
address
ref clock
st
when poll
reach
delay
offset
disp
*~128.249.1.1
139.78.160.41 3
11
512
377
114.5
30.71
26.0
/*NTP Sync*/
206.191.241.44
128.194.103.14 5
26
8192
77 4.1 15.23 20.0
* master (synced), # master (unsynced), + selected, - candidate, ~ configured
ntp_client#show ntp stat
Clock is synchronized, stratum 4, reference is 128.249.1.1
nominal freq is 250.0000 Hz, actual freq is 250.0093 Hz, precision is 2**19
reference time is BCF26309.F694401F (15:01:13.963 CSTDST Wed Jun 14 2000)
clock offset is 30.7128 msec, root delay is 151.06 msec
root dispersion is 97.17 msec, peer dispersion is 26.05 msec
ntp_client#
C.NTP 主动模式的配置
ntp_server(config)#ntp master 7
ntp_server(config)#exit
ntp_server#
ntp_client(config)#ntp server 10.150.10.3
ntp_client(config)#exit
ntp_client#
ntp_client#show ntp status
Clock is synchronized, stratum 8, reference is 10.150.10.3
nominal freq is 250.0000 Hz, actual freq is 250.0000 Hz, precision is 2**19
reference time is BD13BB90.AE4D80D0 (03:03:44.680 UTC Mon Jul 10 2000)
clock offset is 1.2757 msec, root delay is 3.78 msec
root dispersion is 1.97 msec, peer dispersion is 0.67 msec
P a g e | 287
CCIE R/S & Service Provider Exam Certification Guide
D.NTP 对等体关系配置
Access routers:
ntp peer 10.150.10.1
Distribution router:
ntp peer 10.150.10.3
Core router:
ntp server 10.150.10.10
ntp master 6
E.NTP 认证配置
ntp_t_server(config)#ntp master 6
ntp_t_server (config)#ntp authenticate
ntp_t_server (config)#ntp authentication-key 3 md5 cisco
ntp_t_server (config)#ntp trusted-key 3
ntp_t_client(config)#ntp server 10.150.10.3
ntp_t_client(config)#ntp authenticate
P a g e | 288
CCIE R/S & Service Provider Exam Certification Guide
ntp_t_client(config)#ntp authentication-key 3 md5 cisco
ntp_t_client(config)#ntp trusted-key 3
15.4.5 SNTP 简单网络时间协议
SNTP 用在 cisco 的低端路由器上,仅有配置成被动监听模式和静态制定服务器这 2 种模式
Sntp server ip-addr
Sntp broadcast client
Show sntp
15.4.5 Show and Debug 命令
timex#show ntp associations
address
clock
st when poll reach delay
offset
disp
*~10.150.10.1
0.150.10.3 7
38
64
377
6.1
-0.51
0.1
* master (synced), # master (unsynced), + selected, - candidate, ~ configured
timex#
timex#show ntp associations detail
10.150.10.1 configured, our_master, sane, valid, stratum 7
ref ID 10.150.10.3, time BD160B37.3911241E (21:08:07.222 UTC Tue Jul 11 2000)
our mode active, peer mode passive, our poll intvl 64, peer poll intvl 64
root delay 3.78 msec, root disp 0.41, reach 377, sync dist 5.432
delay 6.07 msec, offset -0.5087 msec, dispersion 0.09
precision 2**19, version 3
org time BD160B48.A2712FA3 (21:08:24.634 UTC Tue Jul 11 2000)
rcv time BD160B48.A3598FCA (21:08:24.638 UTC Tue Jul 11 2000)
xmt time BD160B48.A19B718B (21:08:24.631 UTC Tue Jul 11 2000)
filtdelay = 6.07
6.04
6.03
6.13
6.03
6.09
6.01
6.06
filtoffset =-0.51
-0.41
-0.40
-0.43
-0.48
-0.43
-0.41
-0.39
filterror = 0.02
0.99
1.97
2.94
3.92
4.90
5.87
6.85
timex#
timex#debug ntp select
03:42:37: NTP: nlist 1, allow 0, found 0, low -0.001984, high 0.002411
03:42:37: NTP: candidate 10.150.10.3 cdist 96.002197 error 0.000305
03:42:37: NTP: survivor 10.150.10.3 offset 0.000226, cdist 96.00220
03:43:23: NTP: nlist 1, allow 0, found 0, low -0.001785, high 0.002151
03:43:23: NTP: candidate 10.150.10.3 cdist 96.001968 error 0.000076
03:43:23: NTP: survivor 10.150.10.3 offset 0.000185, cdist 96.00197
03:43:41: NTP: nlist 1, allow 0, found 0, low -0.002045, high 0.002411
03:43:41: NTP: candidate 10.150.10.3 cdist 96.002228 error 0.000336
03:43:41: NTP: survivor 10.150.10.3 offset 0.000185, cdist 96.00223
15.5 记帐功能
对于报文,流量进行统计常常有很多种方法,例如:
IP accounting
NetFlows
ACL-log
NBar
15.5.1 IP accounting
IP 记帐提供最基本的记帐服务,开启后,接口上的自治交换和 SSE 交换将被禁止。
1.基于地址对的字节数量及数据包数量统计
2.通常只支持 outbound 的数据包,及被 ACL 拒绝的数据包(支持 IN 和 OUT 方向的 ACL)
3.只统计穿越路由器的流量,源或目的是该路由器的数据包不做统计
4.支持所有的 switching path,除了 Autonomous Switching
5.可以通过 SNMP 来访问统计值,MIB 是 OLD-CISCO-IP-MIB, lipAccountingTable
P a g e | 289
CCIE R/S & Service Provider Exam Certification Guide
6.ip accounting 还支持其他的监测方式,如基于 tos,mac-address 等
ip accounting [access-violations] [output-packets]
ip access-list {standard | extended} access-list-name
ip accounting-list 192.31.0.0 0.0.255.255
ip accounting mac-address {input | output]
ip accounting precedence input
ip accounting-threshold threshold
GSR 上可以支持 Cef 的 Ip cef accounting
例如, 对某个物理接口进行记帐:
Bowler(config)#int e 0
Bowler(config-if)#ip accounting
Bowler(config-if)#^Z
Bowler#show ip accounting
Source
Destination
10.1.1.88
228.13.20.216
Packets
45
Bytes
24611
Accounting data age is 0
Bowler#show ip accounting
Source
Destination
10.1.1.88
224.2.127.254
10.1.1.88
228.13.20.216
Packets
1
133
Bytes
229
73689
Accounting data age is 0
Bowler#show ip accounting
Source
Destination
10.1.1.88
224.2.127.254
10.1.1.88
228.13.20.216
Packets
1
173
Bytes
229
95952
Accounting data age is 0
更多详细资料参见:
http://www.cisco.com/en/US/products/sw/iosswrel/ps5187/products_command_reference_chap
ter09186a008017d169.html#wp1091971
15.5.2 NetFlow
NetFlow 交换及其特点
NetFlow 交换在网络层实现高性能的交换,它提供一个高效的机制,可以用来处理安全
访问列表,从而不必像其他交换方式那样,为完成同样的任务而付出很高的性能代价。NetFlow
交换识别主机之间的网络流量,并在提供相关服务的同时,对网络流量中的分组进行交换。
在传统的网络交换中,每一个输入分组是单独处理的,路由器为每个分组进行一系列独立的
查询,利用一系列函数去检查访问列表、获取记账数据、交换该分组。然后将它发送(即交
换)到目的地。这些查询包括确定是否采用安全访问过滤,以及更新网络统计计账记录。而
在 NetFlow 交换中,查询过程仅对分组流中的第一个分组进行,当一个网络流被识别并确定
了与其相关的服务后,那么后面所有的分组都作为该信息流的一部分,在面向连接的基础上
进行处理,这样就绕过了访问列表的检查,进而依次对分组进行交换和获取统计信息。
NetFlow 交换中要创建一个信息流高速缓存,里面包含对所有活动信息流进行交换和访
问列表检查所需要的信息,利用标准的快速交换路径先处理信息流中的第一个分组,这样就
生成了 NetFlow 高速缓存,这样每个信息流都与一个即将到来的接口端口号和要发出的接口
端口号相关联,并且有一个特定的安全访问权限和加密策略。高速缓存中还包含用于数据流
P a g e | 290
CCIE R/S & Service Provider Exam Certification Guide
统计的条目。随着后面分组的交换,这些条目也不断地更新。NetFlow 高速缓存被创建后,
那些被标识为属于现有的一个信息流的分组即可以依据高速缓存信息被交换,从而绕过了安
全访问列表检查。对于所有活动信息流,在 NetFlow 高速缓存中保留相应的信息。
对分组进行交换,并且一个任务接一个任务地按顺序为分组提供服务。这种流线型处理
分组的方式提高了网络服务的能力,提高了 Cisco IOS 有关安全性、服务质量(QoS)和网络
流量计账的服务性能。同时,NetFlow 交换提供了以每个用户和每个应用(即会话)为基础
的更有效的服务。
配置 NetFlow 交换
在一个接口上配置 NetFlow 时,这个接口就不再使用其他交换模式了。为了配置 NetFlow
交换,在接口配置模式下,利用以下面命令为 IP 路由启用 NetFlow 交换:
ip route-cache flow
通常,NetFlow 高速缓存的默认值可以满足需求。然而网络管理员也可以通过增加或减
少高速缓存中保留的条目数,来满足信息流比率的需要。系统的默认值是 64KB 个流动高速
缓存条目,每个高速缓存条目大约占用 64B 的存储空间。为了在 NetFlow 高速缓存中自定义
条目的个数,在全局配置模式下,使用下面的命令即可改变 NetFlow 高速缓存中保留的条目
的个数:ip flow-cache entries number 其中 number 为条目的个数,范围是 1024~524288,
默认值是 65536。
管理和使用 NetFlow 交换的统计信息
ip flow-export ip-address udp-port version 5 [origin-as |peer-as]
在版本 5 中,用这条命令来配置路由器,把 NetFlow 高速缓存条目输出到工作站,可以
选择指定最初的 AS 或同等的 AS,默认值是 2 种 AS 都不输出,这样可以提高性能。为了保证
数据来自有效的 NetFlow 源头,Cisco 公司建议接收程序检查数据报文,首先检查数据报文的
大小,确定它至少可以容纳版本字段和计数字段。
interface Ethernet1/2
ip address 1.1.7.5 255.255.255.0
ip route-cache flow
!
interface Ethernet1/3
ip address 1.1.5.5 255.255.255.0
ip route-cache flow
!
P a g e | 291
CCIE R/S & Service Provider Exam Certification Guide
ip flow-export version 5 peer-as
ip flow-export destination 1.1.3.250 125
Router# show ip cache flow
IP packet size distribution ( 12718M total packets) :
1-32 64 96 128 160 192 224 256 288 320 352 384 416 448 480
.000 .554 .042 .017 .015 .009 .009 .009.013 .030 .006.007 .005 .004 .004
512 544 576 1024 1536 2048 2560 3072 3584 4096 4608
.003 .007 .139 .019 .098 .000 .000 .000 .000 .000 .000
IP Flow Switching Cache, 4456448 bytes
65509 active, 27 inactive, 820628747 added
955454490 ager polls, 0 flow alloc failures
Exporting flow to 1.1.15.1 (2057)
820563238 flow exported in 34485239 udp datagrams, 0 failed
last Clearing of statistics 00:00:03
Protocol
TotalFlows
TCP-Telent
TCP-FTP
TCP-FTPD
TCP-WWW
TCP-SMTP
TCP-X
TCP-BGP
TCP-Frag
TCP-other
UDP-DNS
UDP-NTP
UDP-TFTP
UDP-Frag
UDP-other
ICMP
IGMP
IPINIP
GRE
IP-other
Total
2656855
5900082
3200453
546778274
25536863
116391
24520
56847
49148540
117240379
9378269
8077
51161
45502422
14837957
40916
3988
3838
77406
820563238
SrcIf
SrcIPaddress
Fd0/0 80.0.0.3
Fd0/0 80.0.0.3
Hs1/0 200.0.0.3
Hs1/0 200.0.0.3
Fd0/0 80.0.0.3
HS1/0 200.0.0.3
Fd0/0 80.0.0.3
Hs1/0 200.0.0.3
Hs1/0 200.0.0.3
流量聚合
DstIf
Hs1/0
Hs1/0
Fd0/0
Fd0/0
Hs1/0
Fd0/0
Hs1/0
Fd0/0
Fd0/0
Flow
/Sec
4.3
9.5
5.1
887.3
41.4
0.1
0.0
0.0
79.7
190.2
15.2
0.0
0.0
73.8
24.0
0.0
0.0
0.0
0.1
1331.7
Packets
/Flow
86
9
193
12
21
231
28
24
47
3
1
3
14
30
5
170
48713
79
47
15
DstIPaddress
200.1.9.1
200.1.8.1
80.1.10.1
80.1.1.1
200.1.3.1
80.1.2.1
200.1.5.1
80.1.4.1
80.1.7.1
Bytes
/Pkt
78
71
461
325
283
269
216
952
338
112
76
62
322
174
224
207
393
101
259
304
Pr
06
06
06
06
06
06
06
06
06
SrcP
0621
0620
0052
0052
0723
0052
0726
0052
0052
Packets
/Sec
372.3
86.8
1006.3
11170.8
876.5
43.8
1.1
2.2
3752.6
570.8
16.2
0.0
1.2
2272.7
125.8
11.3
315.2
0.4
5.9
20633.0
DstP
0052
0052
0621
0620
0052
0726
0052
0442
0381
Active(Sec)
/Flow
49.6
11.4
45.8
8.0
10.9
68.2
26.2
13.1
30.7
7.534.7
2.2
9.7
11.0
8.5
12.1
197.3
644.2
47.3
52.4
9.8
Pkts
7
7
6
5
16
6
6
3
11
b/Pk
87
87
58
62
68
58
96
76
1171
使用全局命令 ip cef 打开快速转发,
ip flow-aggregation cache {autonomous_system | destination-prefix | prefix
|protocol-port | source-prefix}
P a g e | 292
Idle(Sec)
/Flow
27.6
33.1
33.4
32.3
31.3
27.3
39.0
33.2
32.2
38.7
33.2
39.4
37.8
34.3
13.5
19.6
25.9
27.0
33.0
Active
5.9
1.8
1.8
5.9
0.3
11.8
0.3
0.3
0.6
CCIE R/S & Service Provider Exam Certification Guide
cache entries number_of_entries
设置缓存条目限制
cache timeout inactive seconds
定义不活跃及获得条目超过以前保持在缓存的时间
cache timeout active minutes
定义活跃激活的条目保持活跃的数分钟
export destination ip_address udp_port
定义采集地址和气温
enabled
启用聚合
ip cef
!
ip flow-export version 5 origin-as
ip flow-export destination 1.1.3.250 125
ip flow-aggregation cache as
cache entries 2046
cache timeout inactive 200
cache timeout active 45
export destination 1.1.3.250 9991
enabled
Hummer#show ip cache flow aggregation as
IP Flow Switching Cache, 135048 bytes
1 active, 2043 inactive, 3 added
167 ager polls, 0 flow alloc failures
Active flows timeout in 45 minutes
Inactive flows timeout in 200 seconds
Src If
Src AS
Et1/3
400
Dst If
Dst AS Flows
Et1/2
100
357
Pkts B/Pk Active
42K
848
407.6
● 统计基于流(包括地址对、端口号、协议类型等)的数据量
● 只支持 inbound 的流量
● 只支持单播
● 只能在主端口配置
● 需要和 cef 或 fast switching 一起使用
● 对路由器性能有影响
10,000 active flows: < 4% of additional CPU utilization
45,000 active flows: <12% of additional CPU utilization
65,000 active flows: <16% of additional CPU utilization
15.5.3 Nbar
配置方法
router(config)# interface FastEthernet 0/1
router(config-if)# ip nbar protocol discovery
router# show ip nbar protocol -discovery interface FastEthernet 6/0
FastEthernet6/0
Input Output
Protocol Packet Count Packet Count
Byte Count Byte Count
5 minute bit rate (bps) 5 minute bit rate (bps)
P a g e | 293
CCIE R/S & Service Provider Exam Certification Guide
http 316773 0
26340105 0
3000 0
pop3 4437 7367
2301891 339213
3000 0
snmp 279538 14644
319106191 673624
00
„
Total 17203819 151684936
19161397327 50967034611
4179000 6620000
1.
NBAR 识别从 4 层到 7 层的协议信息
2.
可以基于端口统计 input 和 output 的 bit rate (bps), packet counts, byte counts
3.
只能在 cef 或 dcef 的基础上运行
4.
不象 netflow,没有流的概念。主要是统计目前网络中有那一些应用
15.5.4 Access-list log
配置方法
router(config)# access-list 118 permit ip any any log
router(config)# interface FastEthernet 0/1
router(config-if)# ip access-group 118 out
router# show log
router>sh log
Syslog logging: enabled (0 messages dropped, 0 messages rate-limited, 0 flushes,
0 overruns)
Console logging: level debugging, 79 messages logged
Monitor logging: level debugging, 0 messages logged
Buffer logging: level debugging, 79 messages logged
Logging Exception size (4096 bytes)
Trap logging: level informational, 83 message lines logged
Log Buffer (4096 bytes):
*May 25 05:27:50: %SEC-6-IPACCESSLOGP: list 118 permitted tcp 10.1.64.71(0) ->
10.0.29.3(0), 1 packet
*May 25 05:28:59: %SEC-6-IPACCESSLOGP: list 118 permitted tcp 10.1.64.71(0) ->
10.0.28.128(0), 1 packet
*May 25 05:29:19: %SEC-6-IPACCESSLOGP: list 118 permitted tcp 10.1.64.71(0) ->
10.0.29.3(0), 56 packets
P a g e | 294
1.
可以使用于任何端口的 input 或者 output
2.
可以看到目前端口上跑的应用
3.
没有统计信息,只能看到有那一些地址,看不到应用统计转
CCIE R/S & Service Provider Exam Certification Guide
15.6 DHCP
15.6.1 DHCP 简介
动态主机配置协议 (DHCP) 是一种使网络管理员能够集中管理和自动分配 IP 网络地址
的通信协议。在 IP 网络中,每个连接 Internet 的设备都需要分配唯一的 IP 地址。 DHCP 使网
络管理员能从中心结点监控和分配 IP 地址。当某台计算机移到网络中的其它位置时,能自动收
到新的 IP 地址。
DHCP 使用了租约的概念,或称为计算机 IP 地址的有效期。租用时间是不定的,主要取决
于用户在某地联接 Internet 需要多久,这对于教育行业和其它用户频繁改变的环境是很实用的。
通过较短的租期, DHCP 能够在一个计算机比可用 IP 地址多的环境中动态地重新配置网络。
DHCP 支持为计算机分配静态地址,如需要永久性 IP 地址的 Web 服务器。
15.6.2 DHCP 配置
Router(config)# ip dhcp database url [timeout seconds | write-delay seconds]
配置 DHCP 数据库代理,数据库代理可以使任何主机,一个 FTP/TFTP 服务器或者 RCP 服务器,用
来存放 DHCP 绑定数据库。当使用多个数据库代理的时候,可以设置传送的延迟,和读写延迟
Eg:
ip dhcp database ftp://user:password@172.16.4.253/router-dhcp write-delay 120
Router(config)# no ip dhcp conflict logging
不记录 DHCP 的地址冲突
Router(config)# ip dhcp excluded-address low-address [high-address]
在 DHCP 服务器的数据库中,默认将地址池中所有的地址进行分配,此命令可以过滤部分地址,不
让 DHCP 服务器分配
Router(config)# ip dhcp pool name
配置 DHCP 地址池
Router(dhcp-config)# network network-number [mask | /prefix-length]
设置 DHCP 地址池的地址
Router(dhcp-config)# domain-name domain
配置域名
Router(dhcp-config)# dns-server address [address2 ... address8]
配置 DNS 服务器,一共可以配置 8 个
Router(dhcp-config)# netbios-name-server address [address2 ... address8]
Router(dhcp-config)# netbios-node-type type
配置 Net-BIOS 服务器
Router(dhcp-config)# default-router address [address2 ... address8]
设置默认路由,当一个 DHCP 客户端引导完成后,需要给它指定一个默认路由器
Router(dhcp-config)# lease {days [hours][minutes] | infinite}
配置 ip 地址的租期,默认为 1 天
静态绑定一个地址的方法如下:
Router(config)# ip dhcp pool name
Router(dhcp-config)# host address [mask | /prefix-length]
P a g e | 295
CCIE R/S & Service Provider Exam Certification Guide
Router(dhcp-config)# hardware-address hardware-address type
/* type :1-Eternet 6=IEEE802*/
Router(dhcp-config)# client-name name
Router(dhcp-config)# bootfile filename
配置 DHCP Server 引导:
Router(config-if)# ip address dhcp [client-id interface name] [hostname host-name]
将端口配置为使用 DHCP 动态获取地址
15.6.3 DHCP 配置实例
Pool 0 (Network 172.16.0.0)
Device
IP Address
–
Default routers
DNS Server
172.16.1.102
172.16.2.102
NetBIOS name server
172.16.1.103
172.16.2.103
NetBIOS node type
h-node
Pool 1 (Subnetwork 172.16.1.0)
Device
IP Address
Default routers
172.16.1.100
172.16.1.101
Pool 2 (Subnetwork 172.16.2.0)
Device
IP Address
Default routers
172.16.2.100
172.16.2.101
ip dhcp database ftp://user:password@172.16.4.253/router-dhcp write-delay 120
ip dhcp excluded-address 172.16.1.100 172.16.1.103
ip dhcp excluded-address 172.16.2.100 172.16.2.103
!
ip dhcp pool 0
network 172.16.0.0 /16
domain-name cisco.com
dns-server 172.16.1.102 172.16.2.102
netbios-name-server 172.16.1.103 172.16.2.103
netbios-node-type h-node
!
ip dhcp pool 1
network 172.16.1.0 /24
default-router 172.16.1.100 172.16.1.101
lease 30
!
ip dhcp pool 2
network 172.16.2.0 /24
default-router 172.16.2.100 172.16.2.101
lease 30
On the DHCP Server, the configuration is as follows:
ip dhcp pool 1
network 10.1.1.0 255.255.255.0
lease 1 6
On the DHCP client, the configuration is as follows on interface E2:
interface Ethernet2
ip address dhcp
P a g e | 296
CCIE R/S & Service Provider Exam Certification Guide
15.7 CCIE_lab中的Feature
15.7.1 SNMP
在路由器上按如下方式配置 SNMP
Use the community string ciscoworks.
For security reasons the only SNMP manager that should be able to use this community string has
the IP address 192.168.1.240.
This SNMP manager should not be able to modify any MIB on R5
Config R5 to send only BGP and TTY traps.
snmp-server commu CiscoWorks ro 10
snmp-server enable trap bgp
snmp-server enable trap tty
snmp-server host 192.168.2.240 trap CiscoWorks bgp tty
access-list 10 permit 192.168.2.240
SNMP community is “cisco”. When CPU utilize more than 70% and then below 40%, R1 must log and
trap the information to host 192.168.1.252, the Internet time is 1 minutes, the OID is Isystem.57.0.
Snmp-s community cisco
Snmp-s host 192.168.1.252 cisco
Rmon alarm 1 lsystem.57.0.60 abso rising 70 1 falling 40 2
Rmon event 1 log trap cisco
Rmon event 2 log trap cisco
在 R1 配置 SNMP 和 rmon snmp community is “cisco” Trap host 192.168.1.252 当 cpu 达到 70%
或者下降到 40%的时候, log and trap.间隔时间为 1 分钟钟, R1 配置置:OID VIEW lsystem.57.0
Snmp-server community string cisco ro
snmp-server host 192.168.1.252 cisco
rmon alarm 1 OID VIEW lsystem.57.0 60 absolute rising-threshold 70 1
falling-threshold 40 2 owner ccie
//absolute : Tests each MIB variable directly
rmon event 1 log trap cisco description “up to 70%” owner ccie
rmon event 2 log trap cisco description “down to 40%” owner ccie
//show rmon alarms
//show rmon event
//show snmp
在 r5 上配置 snmp,给定 192.168.100.100 是 snmp server,由于安全原因只允许这台服务器对 r5 进行
snmp 操作,通讯字符串是”CiscoWorks”要求有读写权限。R5 只发送 bgp trap,允许网管主机对 r5
进行重起操作,发送 trap 时要带着通讯字符串一起发送
Access-list 10 permit 192.168.100.100
Snmp-server community CiscoWorks rw 10
Snmp-server enable traps bgp //enable bgp traps in system
Snmp-server host 192.168.100.1
15.7.2 TFTP-Server
在路由器上配置 TFTP 服务器,让其它路由器下载相应的 IOS 进行恢复,
例如使用 kaka 作为 ios c2600-js-mz.121-11c.img 的引用名
Tftp-server flash:c2600-js-mz.121-11c.img alias kaka [access-list number]
15.7.3 Logging and SysLog
Configure R4 to send messages representing emergencies, alerts, and cirtical events to the SYSLOG
daemon on a UNIX device with the ip address of 192.168.2.250 (this ip address doesn’t really exist). The
P a g e | 297
CCIE R/S & Service Provider Exam Certification Guide
SYSLOG daemon is expecting you to use the local6 facility.
logging on
logging trap critical
logging facility local6
logging 192.168.2.250
15.7.4 NTP
R4 and SW2 andR3 synchronize。
a) R4 and SW2 has stratum is 3;
b) NTP requires authentication;
c) It can be synchronize only is there is path between routers.
R4:
ntp authentication-key 1 md5 cisco
ntp authenticate
ntp trusted-key 1
ntp server 1.1.3.3 key 1 source loopback 0
R3:
ntp authentication-key 1 md5 cisco
ntp authenticate
ntp master 2
ntp source loopback0
15.7.5 DHCP
在 R1 上配置 DHCP 服务器,dhcp pool 命名为 DHCPPOOL
SW1 Vlan 50 和 R1 通过以太网相连接,连路上的 ip 要求不被分配进 DHCP 池
Allow the subnet as 25 bit mask.
DNS servers are 192.168.10.50; 192.168.10.51
Domain name is cisco.com
默认网关上,默认使用 R1,如果 R1 出现故障,SW1 替代 R1,但配置时不支持 HSRP
使用 IRDP 配置
Lease infinity
R1:
No ip dhcp conflic logging
Ip dhcp exclude-address 1.1.56.1
Ip dhcp exclude-address 1.1.56.5
Ip dhcp pool DHCPPOOL
Network 1.1.56.0 255.255.255.0
Domain-name cisco.com
Dns-server 192.168.1.50 192.168.1.51
Default-router 1.1.56.1 1.1.56.5
Lease infinite
!
Int e0
Ip irdp
SW1:
Int vlan 50
Ip irdp
Ip irdp preference -1
对于 IRDP 作如下补充:
局域网中的支持 IRDP 的计算机会监听主路由器发出的“Hello”的多点广播信息包,如果该计算
机不再收到“Hello”信息时,它就会利用备份路由器进行数据传输。
ip irdp [multicast | holdtime seconds | maxadvertinterval seconds |
minadvertinterval seconds | preference number | address address [number]]
preference:-2^31~2^31,默认值为 0, 越高的 preference 值有越高的优先级
P a g e | 298
CCIE R/S & Service Provider Exam Certification Guide
15.7.6 Port Dampening
Dampening [half-life-period reuse-threshold] [suppress-threshold max-suppress
[restart-penalty]]
类似于 BGP 的惩罚措施,采用了半衰期的方法和抑制上阀
value 1 多长时间内没变化后flap值衰减到500(半衰期值,默认是15 minutes)
value 2 当此值衰减到一定量后,将不被抑制(再使用值,默认是750)
value 3 当此值达到一定量后,将被抑制(抑制值,默认是2000)
value 4 最大的抑制时间(默认是半衰期的4倍)
Router# show interface dampening
FastEthernet0/0
Flaps Penalty
0
Supp ReuseTm
0
FALSE
HalfL ReuseV
0
5
SuppV MaxSTm
1000
2000
MaxP Restart
20
16000
0
ATM2/0
Flaps Penalty
0
Supp ReuseTm
0
FALSE
HalfL ReuseV
0
5
SuppV MaxSTm
1000
2000
MaxP Restart
20
16000
0
POS6/0
Flaps Penalty
0
Supp ReuseTm
0
FALSE
HalfL ReuseV
0
5
SuppV MaxSTm
1000
2000
MaxP Restart
20
16000
0
router# debug dampening interface
00:07:17:IF-EvD(Ethernet1/1):CLNS Routing reports state transition from UP to DOWN
00:07:17:EvD(Ethernet1/1):charge penalty 1000, new accum. penalty 1000, flap count 1
00:07:17:EvD(Ethernet1/1):accum. penalty 1000, now suppressed with a reuse intervals of 30
00:07:17:IF-EvD(Ethernet1/1):update CLNS Routing state to DOWN, interface is suppressed
00:07:17:IF-EvD(Ethernet1/1):IP Routing reports state transition from DOWN to DOWN
00:07:17:IF-EvD(Ethernet1/1):update IP Routing state to DOWN, interface is suppressed
00:07:17:IF-EvD(Ethernet1/1):CLNS Routing reports state transition from DOWN to UP
00:07:17:IF-EvD(Ethernet1/1):CLNS Routing reports state transition from UP to DOWN
P a g e | 299
CCIE R/S & Service Provider Exam Certification Guide
00:07:17:EvD(Ethernet1/1):accum. penalty decayed to 1000 after 0 second(s)
00:07:17:EvD(Ethernet1/1):charge penalty 1000, new accum. penalty 2000, flap count 2
00:07:17:EvD(Ethernet1/1):accum. penalty 2000, now suppressed with a reuse intervals of 60
00:07:17:IF-EvD(Ethernet1/1):CLNS Routing reports state transition from DOWN to UP
00:07:17:IF-EvD(Ethernet1/1):CLNS Routing reports state transition from UP to DOWN
00:07:17:EvD(Ethernet1/1):accum. penalty decayed to 2000 after 0 second(s)
00:07:17:EvD(Ethernet1/1):charge penalty 1000, new accum. penalty 3000, flap count 3
00:07:17:EvD(Ethernet1/1):accum. penalty 3000, now suppressed with a reuse intervals of 78
00:07:17:IF-EvD(Ethernet1/1):CLNS Routing reports state transition from DOWN to UP
00:07:17:IF-EvD(Ethernet1/1):IP Routing reports state transition from UP to UP
00:07:17:IF-EvD(Ethernet1/1):IP Routing reports state transition from UP to UP
00:07:17:IF-EvD(Ethernet1/1):IP Routing reports state transition from UP to UP
00:07:17:IF-EvD(Ethernet1/1):IP Routing reports state transition from UP to UP
00:07:17:IF-EvD(Ethernet1/1):IP Routing reports state transition from UP to UP
00:07:20:IF-EvD(Ethernet1/1):CLNS Routing reports state transition from UP to UP
00:07:20:IF-EvD(Ethernet1/1):IP Routing reports state transition from UP to UP
00:07:47:IF-EvD:unsuppress interfaces
00:08:36:IF-EvD:unsuppress interfaces
00:08:36:EvD(Ethernet1/1):accum. penalty decayed to 483 after 79 second(s)
00:08:36:EvD(Ethernet1/1):accum. penalty 483, now unsuppressed
00:08:36:IF-EvD(Ethernet1/1):update IP Routing state to UP, interface is not suppressed
00:08:36:IF-EvD(Ethernet1/1):update CLNS Routing state to UP, interface is not suppressed
00:08:36:IF-EvD(Ethernet1/1):CLNS Routing reports state transition from UP to UP
15.7.7Upd broadcast management
Configure the interface F0/0 on Router to forward incoming Mobile IP registration broadcast to
192.168.1.254
ip forward-protocol udp mobile-ip
Inter int fa0/0
Ip help-address 192.168.1.254
15.7.8 IP accounting
记录路由器的 e0 口所有进出(IN & OUT)的流量,基于任何源任何目的,以字节统计(ip accounting);,
并且记录被拒掉的流量的子节数。
Ip access-list extend ccie
deny ip 198.2.3.0 0.0.0.255 any
deny ip 4.1.1.0 0.0.0.255 any
permit ip any any
inter e0
ip accounting
ip accounting access-violations
ip access-group ccie out
//show ip accounting [checkpoint][output-packet][access-violation]
15.7.9 Web-Cache
WCCP 由 Cisco 设计,用于在一组路由器或交换机间进行数据流的透明重定向,并选择负载最低和
延迟最小的路由器进行处理
Router(config)# ip wccp {web-cache | service-number} [group-address
groupaddress] [redirect-list access-list] [group-list access-list] [password password]
Router(config-if)# ip wccp {web-cache | service-number} redirect out
常见配置如下:
Ip wccp web-cache
Interface e0
Ip wccp web redirect out
P a g e | 300
CCIE R/S & Service Provider Exam Certification Guide
相关资料请见
http://www.cisco.com/en/US/products/sw/iosswrel/ps1831/products_configuration_guide_
chapter09186a00800ca671.html
15.7.10 DRP
DRP Server Agent
Description
The Director Response Protocol (DRP) is a simple User Datagram Protocol (UDP)-based application
developed by Cisco Systems. It enables Cisco's DistributedDirector product to query routers (DRP Server
Agents) in the field for Border Gateway Protocol (BGP) and Interior Gateway Protocol (IGP) routing table
metrics between distributed servers and clients. DistributedDirector, a separate standalone product,
uses DRP to transparently redirect end-user service requests to the topologically closest responsive
server. DRP enables DistributedDirector to provide dynamic,scalable, and "network intelligent" Internet
traffic load distribution between multiple geographically dispersedservers.
DRP Server Agents are border routers (or peers to border routers) that support the geographically
distributed servers for which DistributedDirector service distribution is desired. Note that, because
DistributedDirector makesdecisions based on BGP and IGP information, all DRP Server Agents must have
access to full BGP and IGP routing tables.
The boomerang metric provides a way to select a site with the fastest response time. Instead of
relying on static maps, it dynamically recognizes congestion and link failures and avoids them.
ip drp server
access-list 1 permit 10.0.0.1
access-list 1 deny any
ip drp access-group 1
key chain violet
key 5
key-string carnation
exit
ip drp authentication key-chain violet
相关资料参见
http://www.cisco.com/en/US/products/ps6350/products_configuration_guide_chapter0918
6a0080455982.html
P a g e | 301
CCIE R/S & Service Provider Exam Certification Guide
Chapter 16
Cisco 路由器体系结构
16.1 路由器结构
Cisco 路由器产品系列有三个特点。它的路由器是模块化的、可预制的及可进行混合配置的。另外,
Cisco 还与完全的路由器配置一起提供针对个人计算机(PC)卡设计的路由器平台。将路由器和小型集线器
结合在一起, 形成一种适于小型办公室安装的设备。在网络环境中, Cisco 路由器成功地实现离不开正确
的布局和配置, 每台路由器都担负一种特定的职责功能。下图将这些功能描述为核心、分发和访问。这
些功能特性构成了 Cisco 路由器的网络结构。:
早在网络互联的成长阶段, 就出现了一种结构。这种布置路由器的结构被融入分层结构, 即目前
Cisco 正在应用并且正向其客户竭力宣传的那种结构, 这种结构依赖于路由器上的处理器性能以及对处
理路由、过滤器和物理连接的需要。
16.1.1
Cisoc路由器硬件
中央处理器
与计算机一样, 路由器也包含了一个中央处理器(CPU)。不同系列和型号的路由器, 其中的
CPU 也不尽相同。Cisco 路由器一般采用 Motorola 68030 和 Orion/R4600 两种处理器。
路由器的 CPU 负责路由器的配置管理和数据包的转发工作, 如维护路由器所需的各种表格以
及路由运算等。路由器对数据包的处理速度很大程度上取决于 CPU 的类型和性能。
只读内存(ROM)
只读内存(ROM)在 Cisco 路由器中的功能与计算机中的 ROM 相似, 主要用于系统初始化等功
能。ROM 中主要包含:
(1)系统加电自检代码(POST), 用于检测路由器中各硬件部分是否完好;
(2)系统引导区代码(BootStrap), 用于启动路由器并载入 IOS 操作系统;
(3)备份的 IOS 操作系统, 以便在原有 IOS 操作系统被删除或破坏时使用。
(通常, 这个 IOS 比现运行 IOS 的版本低一些, 但却足以使路由器启动和工作。)
顾名思义, ROM 是只读存储器, 不能修改其中存放的代码。如要进行升级, 则要替换 ROM 芯片。
闪存(Flash)
闪存(Flash)是可读可写的存储器, 在系统重新启动或关机之后仍能保存数据。Flash 中存放着
P a g e | 302
CCIE R/S & Service Provider Exam Certification Guide
当前使用中的 IOS。事实上, 如果 Flash 容量足够大, 甚至可以存放多个操作系统, 这在进行 IOS 升
级时十分有用。当不知道新版 IOS 是否稳定时, 可在升级后仍保留旧版 IOS, 当出现问题时可迅速
退回到旧版操作系统, 从而避免长时间的网路故障。
非易失性 RAM(NVRAM)
非易失性 RAM(Nonvolatile RAM)是可读可写的存储器, 在系统重新启动或关机之后仍能保存
数据。由于 NVRAM 仅用于保存启动配置文件(Startup-Config), 故其容量较小, 通常在路由器上只配
置 32KB~128KB 大小的 NVRAM。同时, NVRAM 的速度较快, 成本也比较高。
随机存储器(RAM)
RAM 也是可读可写的存储器, 但它存储的内容在系统重启或关机后将被清除。和计算机中的
RAM 一样, Cisco 路由器中的 RAM 也是运行期间暂时存放操作系统和数据的存储器, 让路由器能迅
速访问这些信息。RAM 的存取速度优于前面所提到的 3 种内存的存取速度。
运行期间, RAM 中包含路由表项目、ARP 缓冲项目、日志项目和队列中排队等待发送的分组。
除此之外, 还包括运行配置文件(Running-config)、正在执行的代码、IO 操作系统程序和一些临时数
据信息。
路由器的类型不同, IOS 代码的读取方式也不同。如 Cisco 2500 系列路由器只在需要时才从 Flash
中读入部分 IOS;而 Cisco 4000 系列路由器整个 IOS 必须先全部装入 RAM 才能运行。因此, 前者称
为 Flash 运行设备(Run from Flash), 后者称为 RAM 运行设备(Run from RAM)。
16.1.2
路由器加电启动过程
1. 系统硬件加电自检。运行 ROM 中的硬件检测程序, 检测各组件能否正常工作。完成硬件检测后, 开
始软件初始化工作。
2. 软件初始化过程。运行 ROM 中的 BootStrap 程序, 进行初步引导工作。
3. 寻找并载入 IOS 系统文件。IOS 系统文件可以存放在多处, 至于到底采用哪一个 IOS, 是通过命令设
置指定的。
4. IOS 装载完毕, 系统在 NVRAM 中搜索保存的 Startup-Config 文件, 进行系统的配置。如果 NVRAM
中存在 Startup-Config 文件, 则将该文件调入 RAM 中并逐条执行。否则, 系统进入 Setup 模式, 进
行路由器初始配置。
16.1.3
接口
所有路由器都有接口(Interface), 每个接口都有自己的名字和编号。一个接口的全名称由它的类型
标志与数字编号构成, 编号自 0 开始。
对于接口固定的路由器(如 Cisco 2500 系列)或采用模块化接口的路由器(如 Cisco 4700 系列), 在接口
的全名称中, 只采用一个数字, 并根据它们在路由器的物理顺序进行编号, 例如 Ethernet0 表示第 1 个以
太网接口, Serial1 表示第 2 个串口。
对于支持“
在线插拔和删除”
或具有动态更改物理接口配置的路由器, 其接口全名称中至少包含两
/
”
分割。其中, 第 1 个数字代表插槽编号, 第 2 个数字代表接口卡内的端口编号。
个数字, 中间用斜杠“
如 Cisco 3600 路由器中, serial3/0 代表位于 3 号插槽上的第 1 个串口。
对于支持“
万用接口处理器(VIP)”
的路由器, 其接口编号形式为“
插槽/端口适配器/端口号”
, 如 Cisco
7500 系列路由器中, Ethernet4/0/1 是指 4 号插槽上第 1 个端口适配器的第 2 个以太网接口。
控制台端口
所有路由器都安装了控制台端口, 使用户或管理员能够利用终端与路由器进行通信, 完成路由器
配置。该端口提供了一个 EIA/TIA-232 异步串行接口, 用于在本地对路由器进行配置(首次配置必须通过
控制台端口进行)。
P a g e | 303
CCIE R/S & Service Provider Exam Certification Guide
路由器的型号不同, 与控制台进行连接的具体接口方式也不同, 有些采用 DB25 连接器(DB25F), 有
些采用 RJ45 连接器。通常, 较小的路由器采用 RJ45 连接器, 而较大的路由器采用 DB25 连接器。
辅助端口
多数路由器均配备了一个辅助端口, 它与控制台端口类似, 提供了一个 EIA/TIA-232 异步串行接口,
通常用于连接 Modem 以使用户或管理员对路由器进行远程管理。
16.2 Cisco 800系列
该系列主要目的是为小型机构提供宽带数据、安全和无线服务, 以思科集成多业务路由器系列为基
础, 新型 Cisco 800 系列路由器能够将并发数据、安全性和无线服务扩展到企业分支机构、远程工作人员
和小型企业, 以提高它们的生产率, 并简化运营流程。
16.2.1 Cisco 870 系列
Cisco 870 系列集成多业务路由器以宽带速度将思科集成多业务路由器延伸到小型机构, 提供高性
能安全的并发服务, 这其中包括防火墙、VPN 和 WLAN 等。部署简便和集中管理特性使 Cisco 870 系列能
够作为企业网络一部分, 部署于小型机构或远程工作人员地点, 为中小型企业客户提供安全的 WAN 和
WLAN 连接, 或被电信运营商用于提供企业级宽带和 WLAN 服务。
产品概述
Cisco 870 系列集成多业务路由器为固定配置路由器, 支持用于小型机构的多种 DSL 技术、宽带有
线连接和城域以太网连接。它提供了运行防火墙、入侵防御和 VPN 加密等并发服务所需的性能;用于
WLAN 联网的 802.11b/g 选择;以及优化话音和视频应用所需的网络服务质量(QoS)特性。另外, 思科路
由器和安全设备管理器(Security Device Manager, SDM)基于 Web 的配置工具简化了设置和部署, 而集中
管理功能则使网络管理员可查看和控制远程地点的网络配置。
Cisco 870 系列适用于需要连接到大型企业网络的小型远程机构和远程工作人员。在将公司网络扩
展到多个远程地点时, 需要给予用户与总部相同的应用访问能力, 与此同时必须保证网络资源的安全。
用户通过 IP 电话将公司语音分机扩展到远程机构时, 这一要求同时适用于数据和话音应用。当用户需要
WLAN 接入时, 网络安全的可视性和控制能力在远程地点显得尤为重要。Cisco 870 系列只需要单一设备
即可满足此需求, 该设备将整合的 802.11b/g 功能与许多安全特性相结合, 这些安全特性包括 Wi-Fi 保护
接入(WPA), 具备思科可扩展验证协议(LEAP)和受保护的 EAP (PEAP)支持的 IEEE 802.1X 验证, 以及 WPA
临时密钥完整性协议(TKIP)支持的加密功能等(详见无线解决方案概述和安全产品简介)。
型号
Cisco 871
Cisco 876
Cisco 877
Cisco 878
P a g e | 304
WAN 界面
10/100Mbps
ADSLoverISDN
ADSL
G.SHDSL
LAN 界面
4 端口 10/100Mbps
4 端口 10/100Mbps
4 端口 10/100Mbps
4 端口 10/100Mbps
802.1b/g 选项
支持(Cisco 871W)
支持(Cisco 876W)
支持(Cisco 877W)
支持(Cisco 878W)
集成 ISDN 拨号备份
-
支持
-
-
CCIE R/S & Service Provider Exam Certification Guide
电信运营商和增值经销商可以充分利用 Cisco 870 系列的优势, 提供真正的企业级宽带服务。企业
客户正在利用宽带接入连接互联网或连接分支机构, 他们需要一个既安全, 又不影响性能的平台。许多
客户都通过 WLAN 连接自身机构中的计算机;用这种单一设备同时提供 WAN 和 WLAN 接入, 从而为可
管理服务提供了一种新选择。这些客户还需要更高级的支持能力, 以确保网络的可用性和正常运行。为
他们提供的服务必须便于设置, 并且支持较高的远程管理和排障能力, 以便更迅速地响应支持请求。
Cisco 870 系列可以充分满足小型机构和可管理服务电信运营商的需求。
16.2.2
Cisco 850 系列
Cisco 850 系列集成多业务路由器为固定配置路由器。它们支持用于小型机构的宽带接入和基于模
拟电话线连接的非对称 DSL(ADSL) (图 1 和图 2)。它提供了运行防火墙、VPN 加密以及面向无线网络的
802.11b/g(可选)等并发服务所需的性能;思科路由器和安全设备管理器(SDM)基于 Web 的配置工具简化
了设置和部署(图 3), 而集中管理功能则使网络管理员可查看和监控远程地点的路由器配置。
Cisco 850 系列集成多业务路由器可提供:
通过状态化检测防火墙和 IP 安全(IPSec)VPN 支持为小型机构提供安全的连接
4 端口 10/100 交换机
安全的 WLAN 802.11b/g 连接(通过一根固定天线实现)
方便的设置、部署和远程管理(通过基于 Web 的工具和 Cisco IOS 软件实现)
型号
Cisco 851
Cisco 851W
16.2.3
WAN 界面
10/100Mbps
10/100Mbps
LAN 界面
4 端口 10/100Mbps 交换机
4 端口 10/100Mbps 交换机
802.1b/g 选项
不支持
支持
Cisco 800 系列
Cisco 800 系列
这些安全宽带路由器能够为小型远程机构和远程工作人员提供安全的互联网和企业网连接。路由
器可以通过 ADSL(Cisco 837)、ADSL over ISDN(Cisco 836)、G.SHDSL(Cisco 828), 串行接口(Cisco 805), 或通
过以太网 WAN 端口连接到外部的 DSL 或有线调制解调器(Cisco 831)。
P a g e | 305
CCIE R/S & Service Provider Exam Certification Guide
特性
集成式安全服务
够优先处理高质量语音、视频和数据应用的高级服务质量(QoS)特性
利用 Cisco IOS 软件实现易部署性和远程管理功能
16.3 Cisco 1800系列
16.3.1
Cisco 1800 系列简介
Cisco 1800 系列集成多业务路由器, 能够智能地将数据、安全性和无线技术嵌入到同一个永续系统
中, 以便快速、安全地将关键业务应用提供给中小企业和小型分支机构。
Cisco 1800 系列集成多业务路由器是屡获大奖的 Cisco 1700 系列路由器(下图)的下一代产品。Cisco
1801、1802、1803、1811 和 1812 路由器使用固定配置, Cisco 1841 则使用模块化配置。
因为有 Cisco IOS 软件, Cisco 1800 系列路由器能够借助多种先进的安全服务和管理功能支持思科自
P a g e | 306
CCIE R/S & Service Provider Exam Certification Guide
防御网络, 这其中包括硬件加密加速、IPSec VPN(AES、3DES、DES)、防火墙保护、内部入侵防御(IPS)、
网络准入控制(NAC)和 URL 过滤支持等。为简化管理和配置, Cisco 1800 预装有基于 Web 的直观思科路由
器和安全设备管理器(SDM)。
16.3.2
Cisco 1800 固定配置系列
Cisco 1800 系列固定配置型号能够提供安全的宽带、城域以太网和无线连接。企业能够降低成本, 因
为只需部署一台设备就能提供多种功能, 例如利用集成冗余链路提供的 DSL 宽带接入、路由、LAN 交换
机、防火墙、VPN、IPS、无线局域网技术以及一般由独立设备执行的服务质量(QoS)等。
Cisco 1801、1802、1803 集成多业务路由器不但能提供 ADSL 或 G.SHDSL 高速宽带接入, 还能通过
集成 ISDN S/T BRI 备份保证网络的可靠性。Cisco 1811 和 1812 通过两个 10/100BaseT WAN 端口提供高速
宽带和以太网接入, 并通过 V.92 模拟调制解调器(Cisco 1811)或 ISDN S/T BRI 接口(Cisco 1812)提供集成
WAN 备份。
产品特性
1.
内部AIM 插槽提供灵活性, 用以支持更高速的VPN 和未来的应用;提供了若干插槽类型, 可
在“随发展而集成”的基础上, 添加未来的连接和服务
2.
可选的集成10/100 交换和2 个板载10/100 LAN 端口
3.
支持基于Cisco IOS 软件的最新QoS 带宽管理特性
4.
高级设备管理——利用思科路由器和安全设备管理器
5.
高性能处理器——支持高性能、安全的数据服务的并发部署, 为未来的应用留出了发展空间
6.
模块化架构——提供了广泛的LAN 和WAN选项;网络接口可现场升级, 以采用未来的技术
7.
基于硬件的集成加密加速功能——提供了加密加速器, 将其作为标准集成硬件, 可以由可选
的Cisco IOS软件实施, 支持3DES 和AES 加密
16.3.3
8.
安全性能增强特性集——支持用于VPN 3DES 或AES 加密的可选VPN 加速卡
9.
允许LAN 分段
10.
集成标准电源——实现更为方便的路由器平台安装和管理
Cisco 1841 模块化路由器
Cisco 1841 集成多业务路由器能够以线速提供安全的数据访问应用, 从而为中小企业和小型分支机
构提供全套功能和灵活性, 以便实现安全的互联网和内部网接入。
与 Cisco 1720 和 1721 相比, Cisco 1841 路由器不仅性能提高了五倍以上, 还可通过新型架构提供安
全的并发服务, 因而价值更高。利用 AIM、新型高速 WAN 接口卡(HWIC)和 VWIC 模块化特性, 用户可以
P a g e | 307
CCIE R/S & Service Provider Exam Certification Guide
使用多种连接方式。另外, 由于支持 30 多种现有的 1700 系列 WAN 接口卡(仅限 WIC/VIC/VWIC 数据模
式), 因而能够实现投资保护。
HWIC 插槽
Cisco 1841 路由器上的模块化架构支持 HWIC 插槽。最新设计的高速 WAN 接口插槽大幅提
高了数据吞吐量功能(总吞吐量高达 800Mbps)。Cisco 1841 上支持一个 4 端口高速 WAN 接口卡
(HWIC-4ESW)。Cisco 1841 路由器上的两个插槽是 HWIC 插槽, 与 WIC 和多路复用中继(VWIC)接口
卡(仅用于数据)兼容。
AIM 插槽
Cisco 1841 路由器通过一个 AIM(AIM-VPN/BPII-Plus)支持硬件加速加密 ,Cisco 1841 路由器有
一个内部 AIM 插槽
16.4 Cisco 2500系列
16.4.1
Cisco 2500 系列简介
Cisco 的 2500 系列路由器平台为小型办公室或小型商务活动提供专门的访问层功能。2500 系列有许
多不同的解决方案:
1.
单 LAN 路由器。
2.
特定任务的路由器。
3.
路由器/集线器集成。
4.
双 LAN 路由器。
5.
模块化路由器。
另外, 2500 系列作为一个访问层路由器还支持对企业网的远程拨号访问。本文不对 Cisco 的访问服务
器进行讨论。2500 系列上的控制台和辅助端口采 RJ-45 连接器。2500 系列的任何模式都有一套电缆工具,
其中有一条控制台电缆用于 RJ-45-to-RJ-45 连接, 另外还有一个 RJ-45-to-DB-25 凸接口 DCE 适配器, 一个
RJ-45-to-DB-25 的凹接口 DTE 适配器和 1 个将 PC 或 modem 连接到这些端口的 RJ-45-to-DB-9 的凹接口 DTE
适配器。所有模式上的低速串行异步/同步端口都支持可达 115.2Kbps 的异步连接和最高 2Mbps 的同步连
接。单 LAN 路由器有 8 种模式, 每种模式采用不同的接口组合, 这些接口都是不能升级的或不能进行局部
变动。
16.4.2
Cisco 2500 硬件结构
2500 系列的所有路由器都使用 Motorola 20MHz 的 68030 处理器。每个系统都有一个最小 8MB 的闪
存。路由器要求的最小系统存储空间为 4MB 的 DRAM, 该空间被分为共享和主 DRAM 存储空间。2500 系
列上的可用 DRAM 总量从 4MB、8MB 到 16MB。所有 DRAM 的配置都被划分出 2MB 的共享存储空间。剩
下的被用作主存储空间的 DRAM 相应为 2MB、6MB、14MB。
16.4.3
Cisco 2500 分类
2501 如图所示, 提供一个以太网 1 0Mbps 端口和两个同步串行接口。以太网使用一个 DB-9 AUI 端口,
该端口要使用一个外部收发器来连接到一个 RJ-45 LAN 集线器接口。两个串行端口采用 DB-60 连接器并且
所有的数据速率最多可达 2Mbps。
P a g e | 308
CCIE R/S & Service Provider Exam Certification Guide
图中的 2502 路由器有一个令牌环 LAN 接口, 而不是一个以太网 AUI 端口。
令牌环接口采用一个 DB-9
连接, 这种连接对于要连接到一个 LAN 集线器的情况, 需要一个转换器与 RJ-45 连接器连接。令牌环接口
的数据速率配置为 4Mbps 或 16Mbps。
图中的 2503 和 2504 路由器都增加一个 ISDN BRI 端口。注意 2503/2504 与 2501/2502 是相同的, 除
了前者多出一个 ISDN BRI 端口。ISDN BRI 端口有一个内部的 I S D N 终端适配器, 这些端口必须被连接到 1
个用于交换 ISDN 连接的 ISDN NT1 设备。
图中的 2520 / 2521 平台支持低速的异步/同步串行线。在该路由器上, 有两条异步传输速率可达
115.2Kbps、同步传输速率可达 128Kbps 的低速连接。另外, 以太网和令牌环网的 LAN 端口也被提供有一
P a g e | 309
CCIE R/S & Service Provider Exam Certification Guide
个 RJ-45 的连接接口, 任何时候, 只有一个 LAN 接口被允许进行配置和活动。
2520/2521 也提供一个单独的 ISDN BRI 端口。2520 以太网 AUI 或 10BaseT RJ-45/UTP 适配器可支持
10Mbps, 2521 令牌环 DB-9 或 RJ-45/UTP 适配器可支持 4Mbps 或 16Mbps 的数据速率。
最后两种模式, 如图所示, 在 2500 系列路由器的 LAN 分类中, 可提供最多 8 个低速异步/同步和两个
高速通信接口, 一个单独的 ISDN BRI 和一个单独的 LAN 接口。2522 使用 AUI 或一个 10BaseT RJ-45 连接为
以太网提供 10Mbps 连接。2523 模式则使用 DB-9 或 RJ-45 UTP 端口支持 4Mbps 或 16Mbps 的令牌环。
P a g e | 310
CCIE R/S & Service Provider Exam Certification Guide
2500 系列中的用于特定目的的入口级路由器有 12 个独特型号。特定用途的路由器模块所配置的存
储空间低于单独的 LAN 模块, 并且所执行的 IOS 软件映像是专为满足 CFRAD(CF)、LAN FRAD(LF)和 ISDN 要
求设计的。专门的 IOS 映像可通过软件来“禁止/启用”没有使用的端口。特定用途的路由器使得单独的
LAN 路由器平台可以作为帧中继访问设备, 把本地连接到帧中继网络而不必通过另外的帧中继访问设备
进行。C F 模式使得路由器可以作为一个帧中继交换机来在帧中继网络上传递信息。另外, 这些模式都可
通过完整功能的 IOS 软件和增加相应存储空间升级到完全功能。
对于一些地方, 只有一个设备并且必须支持路由和工作组及小办公室的 LAN 连接时, Cisco 2500 系列
的路由器/集线器的集成可提供 6 种不同的形式。每种形式只支持一个 LAN 段并有多个端口可用于连接工
作站或服务器。在这些路由器平台集成的集线器既提供了一个完全的 LAN/WAN 解决方案, 又节省了小商
业或小办公室的设备和软件开销。
2505、2507、2516 和 2518 型号的路由器/集线器, 提供了一个单段以太网 LAN 环境。
2505 支持最多 8 个的以太网连接, 2507 支持 16 个, 2516 支持 14, 2518 则支持 2 3 个以太网 LAN 连
接到集线器。将 2518 的路由器卡连接到以太网集线器的 2 4 号端口上, 2518 便可以在 WAN 上对 LAN 信
息路由。2518 上的 AUI 端口允许 2518 与外部以太网集线器连接, 从而扩展了 LAN 分段的范围。2516 和
2518 都可使用 Lanoptics 集线器扩展单元来扩展到 5 个集线器。每个平台都有两个高速串行接口, 但只有
2505/2507 不提供 ISDN BRI 接口。
16.4.4
Cisco 2524/2525 模块化路由器
2500 系列的模块化路由器使得网络工程师可以改变并调整 2500 系列路由器, 这与前面提到的路由
P a g e | 311
CCIE R/S & Service Provider Exam Certification Guide
器模式有显著区别。共有两种类型的模块化 2500 系列路由器。
这两种模块化路由器(如图所示), 可以根据它们对 LAN 的支持来加以区分。2524 连接以太网 LAN, 而
2525 连接令牌环网, 两个都可安装 3 个 WAN 模块、2 个同步串行、1 个 ISDN。
16.5 Cisco 2600/3600系列
Cisco 2600 系列是一个屡获大奖的模块化多服务接入路由器系列, 提供了灵活的 LAN 和 WAN 配置、
多种安全选项、语音/ 数据集成和范围广泛的高性能处理器。Cisco 2600 系列模块化路由器系列包括 Cisco
2600XM、Cisco 2691 和 Cisco 2612 令牌环路由器, 这些型号具有扩展性能、更高密度、增强安全性能和
更多并发应用支持, 可满足分支机构日益提高的需求。Cisco 2600XM 基于传统的 Cisco 2600 平台架构, 将
性能提高了 33%之多。在与以前相应的 Cisco 2600 价格相同的情况下, Cisco 2600XM 还增加了缺省平台
内存并提高了内存容量。
P a g e | 312
CCIE R/S & Service Provider Exam Certification Guide
16.5.1
Cisco 2600 系列使用环境
Cisco 2691
需为范围更广的并发远程办公机构应用提供更高性能的企业, 其中应用包括无与
伦比的语音/ 数据集成、虚拟专用网(VPN)性能、用于支持语音和视频应用的更高
带宽, 以及基于 Web 的应用的提供。
Cisco 2600XM
考虑为分支机构应用部署 Cisco 2600 的企业现应将 Cisco 2600XM 作为向分支机构
和远程机构提供高性能、灵活解决方案的优先平台 高性能 10/100 双以太网路由
器, 带 3 个 WIC 插槽, 1NM
16.5.2
Cisco 2651XM
高性能双 10/100 模块化路由器, 带 Cisco IOS IP
Cisco 2650XM
高性能 10/100 模块化路由器, 带 Cisco IOS IP
Cisco 2621XM
中等性能双 10/100 以太网路由器, 带 Cisco IOS IP
Cisco 2620XM
中等性能 10/100 以太网路由器, 带 Cisco IOS IP
Cisco 2611XM
双 10/100 以太网路由器, 带 Cisco IOS IP
Cisco 2610XM
10/100 以太网路由器, 带 Cisco IOS IP
Cisco 2612
1 个令牌环端口和 1 个以太网端口, 用于混合 LAN 和从令牌环到以太网的移植
Cisco 2600 硬件配置
261x 系列路由器用的是一个内部总线时钟为 20MHz 的 Motorola MPC860 40MHz 的 CPU。262x 配
置为 50Mhz 的 CPU, 265x 配置 80Mhz 的 CPU
16.5.3
Cisco 2600 特性
集成/ 可管理性
低了拥有成本, 简化了远程管理, 提供了结合了 CSU/DSU、多路复用器、调制解调器、语音/ 数
据网关、ISDN NT1、防火墙、VPN、加密和压缩设备的集成式“一体化”网络。
务语音/数据网络
降低了办公机构之间的电话/ 传真费用;通过利用 Cisco IOS 软件服务质量(QoS)特性(例如
RSVP、WFQ、CAR 和 RED), 语音流量可以实现数字化并封装在帧中继或 IP 分组中, 而且能够与数
据流量合并。
企业/供应商级解决方案
满足了多服务企业和他们的可管理服务 CPE 供应商对于高可靠性、多个 WAN 连接和从纯数
据、TDM 语音和数据移植到分组化语音和数据基础设施的要求。 高密度模拟/ 传真网络模块可
以直接将 PSTN 和传统的电话设备连接到现有的 Cisco 2600 和 3600 路由器。 Cisco 2600/3600 系
列的 EtherSwitch 网络模块带有 16 个 10/100 以太网端口和 1 个可选的 1000BaseT(千兆以太网)
连接, 可以为一个完全集成的第二层(L2)交换机, 提供对 Cisco IP 电话和现有 Aironet 802.11 无线基
站的供电(通过添加一个外接电源)。这为采用融合 IP 电话的分支机构提供了一个打包的解决方案,
并通过 IP 路由、以太网交换、固定无线解决方案和语音网关功能扩展了数据、语音和视频的传输。
P a g e | 313
CCIE R/S & Service Provider Exam Certification Guide
多种 VPN 模块优化了用于 VPN 的 Cisco 2600 系列平台, 并提供了路由、防火墙、入侵检测
和 VPN 功能的集成包。
WIC-ADSL 和 WIC-1SHDSL 的推出, 为分支机构和地区机构的企业级宽带服务, 提供了可扩展性
能、灵活性和安全性。 带路由集成型内容供应系统的内容网络集成和分支机构路由, 将智能缓存、
内容路由及管理与强大的分支机构路由、用于 VoIP 等分支机构 IP 服务的 WAN 带宽相结合。
16.5.4
Cisco 3600 特性
Cisco 3600 是世界第一个真正的多功能应用支持平台, 在单独一个服务器上广泛支持分支机构/企
业拨号访问应用, LAN 到 LAN 或者路由选择应用以及多服务应用。它提供前所未有的模块化选项, 可使
用多种不同的网 络模块, 它还具有强大的灵活性, 可针对客户的不同应用环境, 提供各种配置选项, 而
且最重要的是, 它具有支持所有这些应用的优质运行性能。
Cisco3620 有 2 个插槽, Cisco3640 有 4 个插槽, Cisco3660 有 6 个插槽。
Cisco3600 系列标配闪存(Flash)为 8M。 Cisco3600 系列可以通过 PC 闪速内存卡, 简易可靠地升级
软件, 这样 Flash 总共可升级至 128MB(64M*2)。 在一个平台中结合了拨号访问、先进的局域网到局域
网路由服务、ATM 连接以及语音、视频和数据的多种业务集成。 模块化、可伸缩的设计提供性能、可
伸缩性、灵活性和投资保护。
高密度 ISDN PRI 功能。
预配置的 BRI 和 PRI 调制解调器捆绑。
支持 Modem-over-BRI 功能性。
集成了 Cisco IOS 软件(产品定价中包括 IP IOS 软件)。
完全支持 VPN。
Cisco IOS 防火墙特性集提供防止网络入侵的安全保护。
16.5.5 Cisco 3600 硬件结构
下图为拆解后的一台 3600 路由器
P a g e | 314
CCIE R/S & Service Provider Exam Certification Guide
内部结构图, 图中可以清楚地看到背部的 4 个插槽和内存闪存插槽, 还有处理转发的几块处理器
固定端口
网络模块插槽
先进的集成模块
(AIM)
处理器类型(速
度)
闪存(Flash)
Cisco 3620
无
2
无
IDT R4700 RISC –
80MHz
缺省 8MB
最大 32MB
DRAM
电 源
大 小(高 x 长 x
宽)
压缩模块
Cisco 3640
无
4
无
Cisco3661/3662
1/2 个 10/100BaseTX
6
2
IDT R4700 RISC – QED RM5271 RISC –
100MHz
225MHz
缺省 8MB
Enterprise model
缺省 8M
最大 32MB
teuo model 缺省
16M
最大 64M
缺省 32MB
缺省 32MB
缺省 32MB
最大 64MB
AC,DC 可选
1.72x17.5x13.5 inch
最大 128MB
AC,DC 可选
3.44x17.5x15.7 inch
最大 256MB
单或双 AC/DC
8.7x17.5x11.8 inch
NM-COMPR
NM-COMPR
AIM-COMPR4
P a g e | 315
CCIE R/S & Service Provider Exam Certification Guide
16.5.6
Cisco 2600/3600 模块
为了保护设备投资, Cisco 2600/3600 很多模块都可以兼容使用。下图为一个 3660 的机箱, 上
面有 6 个 slot 供插不同的模块
网络模块
NM-1E
NM-1FE-FX
NM-1FE-TX
NM-1FE2W
NM-1E2W
NM-1E1R2W
NM-1FE1R2W
NM-1A-OC3MM
NM-1A-OC3SMI
NM-1A-OC3SML
NM-1V
NM-2V
NM-HDV-1E1-30E
NM-HDV-2E1-60
NM-2W
NM-2E2W
NM-2FE2W
NM-4A/S
NM-4B-S/T
NM-8A/S
NM-8AM
NM-8B-S/T
NM-1CE1B
NM-1CE1U
NM-2CE1B
NM-2CE1U
NM-1FE1CE1B
NM-1FE1CE1U
NM-1FE2CE1B
NM-1FE2CE1U
NM-4E
NM-4E1-IMA
NM-4T
NM-8E1-IMA
NM-16A
NM-16AM
NM-32A
P a g e | 316
1 口以太网模块
1 口快速以太网模块 FX 光纤接口
1 口快速以太网模块 TX 双绞线接口
1 口 10/100 以太网 2 广域网卡插槽
1 口以太网 2 个广域网卡插槽
1 口以太网 1 口令牌环 2 个广域网卡插槽
1 口 10/100 以太网 1 口 4/16 Token-Ring 2 个 广域网卡插槽
单口 ATM OC-3 多模 for 3600
单口 ATM OC-3 单模 Intermediate Reach
单口 ATM OC-3 单模 Long Reach
1 个 Voice/fax 语音卡(VIC)插槽
2 个 Voice/fax 语音卡(VIC)插槽
单口 30 Enhanced Channel E1 Voice/Fax 网络模块
双口 60 Channel E1 Voice/Fax 网络模块
2 个广域网卡插槽 (无局域网口)
2 口以太网 2 个广域网卡插槽
2 口 10/100 以太网 2 个广域网卡插槽
4 口同步/异步串口
4 口 ISDN-BRI
8 口 同步/异步 串口 网络 模块
8 口 模拟 Modem 网络 模块
8 口 ISDN-BRI 网络 模块
1 口 Channelized E1/ISDN-PRI 平衡式
1 口 Channelized E1/ISDN-PRI 非平衡式
2 口 Channelized E1/ISDN-PRI 平衡式
2 口 Channelized E1/ISDN-PRI 非平衡式
1 口快速以太网 1 口 Channelized E1/ISDN-PRI 平衡式
1 口快速以太网 1 口 Channelized E1/ISDN-PRI 非平衡式
1 口快速以太网 2 口 Channelized E1/ISDN-PRI 平衡式
1 口快速以太网 2 口 Channelized E1/ISDN-PRI 非平衡式
4 口以太网
4 口 E1 ATM 网络模块 with IMA
4 口串口网络模块
8 口 E1 ATM 网络模块 with IMA
16 口异步模块
16 口模拟 Modem
32 口异步模块
CCIE R/S & Service Provider Exam Certification Guide
NM-6DM
NM-12DM
NM-18DM
NM-24DM
NM-30DM
NM-1ATM-25
NM-COMPR4
语音接口卡
VIC-2E/M
VIC-2FXO
VIC-2FXS
VIC-2BRI-S/T-TE
VWIC-1MFT-E1
VWIC-2MFT-E1
VWIC-2MFT-E1-DI
广域网接口卡
WIC-1T
WIC-1B-S/T
WIC-2A/S
WIC-2T
6 口数字 Modem
12 口数字 Modem
18 口数字 Modem
24 口数字 Modem
30 口数字 Modem
1 口 ATM 25Mbps
压缩模块
2 口语音接口卡- E&M
2 口语音接口卡- FXO
2 口语音接口卡- FXS
2 口语音接口卡- BRI (Terminal)
1 口 RJ-48 Multiflex Trunk - E1
2 口 RJ-48 Multiflex Trunk - E1
2 口 RJ-48 Multiflex Trunk - E1 With Drop and Insert
1 口广域网串口卡
1 口 ISDN BRI S/T 广域网串口卡(拨号及专线)
2 口同步/异步串口
2 口高速同步串口
16.6 Cisco 2800/3700/3800系列
16.6.1
Cisco 2800 系列
Cisco 2800 系列由四个新平台组成:Cisco 2801、Cisco 2811、Cisco 2821 和 Cisco 2851。与相似价位
的前几代思科路由器相比, Cisco 2800 系列的性能提高了五倍、安全性和话音性能提高了十倍、具有全新
内嵌服务选项, 且大大提高了插槽性能和密度, 同时保持了对目前 Cisco 1700 系列和 Cisco 2600 系列中
现有 90 多种模块中大多数模块的支持, 从而提供了极大的性能优势。
P a g e | 317
CCIE R/S & Service Provider Exam Certification Guide
Cisco 2800 系列能以线速为多条 T1/E1/xDSL 连接提供多种高质量并发服务。这些路由器提供了内嵌
加密加速和主板话音数字信号处理器(DSP)插槽;入侵保护和防火墙功能;集成化呼叫处理和语音留言;
用于多种连接需求的高密度接口;以及充足的性能和插槽密度, 以用于未来网络扩展和高级应用。
16.6.2
Cisco 3700 系列
Cisco 3700 系列是对现有 Cisco 1700/2600/3600 模块化多服务路由器的补充, 这些模块化多服务
路由器都经过了优化, 可以支持种类最多的连接选项。Cisco 3700 系列是那些要求在企业边缘实现最高
水平集成的地点和解决方案的理想选择.针对分支机构 IP 电话和语音网关的单一平台解决方案, 可实现
灵活的、逐步的升级和服务集成 在紧凑的空间内实现服务基础设施和高密度服务的整合 Cisco 3700 系
列提供了一个针对分支机构应用和服务的模块化集成和整合而优化的访问平台。
Cisco 3700 应用服务路由器概述
模块化 Cisco 3700 系列应用服务路由器充分利用了 Cisco 1700、2600 和 3600 系列路由器针对
WAN 访问、语音网关和拨号应用等而配备的可选的网络模块(NM)、WAN 接口卡(WIG)和高级集成模块
(AIM)。此外, Cisco 3725 和 Cisco 3745 这两个 Cisco 3700 平台引进一种新的、可提供更广泛接口的高
密度服务模块 (HDSM)。配备四个 NM 插槽的 Cisco 3745 路由器取消了在每一对相邻 NM 插槽之间的
中心导轨, 因此可以采用两个 HDSM , 而不是四个 NM。配备两个 NM 插槽的 Cisco 3725 路由器可在
它所配备的两个 NM 插槽之一中采用一个 HDSM , 并仍可在剩余的 NM 插槽内采用一个 NM 。采用
新的 HDSM 之后, Cisco 3700 系列路由器就能够集成更高端口密度和新的高性能服务了。
16.6.3
Cisco 3800 系列
Cisco 3800 系列的集成化服务路由架构构建于强大的 Cisco 3700 系列路由器的基础之上, 它内嵌并
集成了安全和话音处理以及先进服务, 以迅速部署新应用, 包括应用层功能、智能网络服务和融合通信。
Cisco 3800 系列支持每插槽多个快速以太网接口、时分多路复用(TDM)互联, 以及对于支持 802.3af 以太
网电源(PoE)的全面集成配电等的带宽要求。它同时仍支持现有模块化接口系列。这确保了持续投资保护,
可在部署新服务和应用时支持网络扩展或技术变动。通过将多个独立设备的功能集成入单一小巧设备之
P a g e | 318
CCIE R/S & Service Provider Exam Certification Guide
中, Cisco 3800 系列大幅降低了管理远程网络的成本和复杂度。
该系列的新型号有 Cisco 3825 和 Cisco 3845, 有三种可选配置, 用于交流电源、带集成 IP 电话电源
支持的交流电源, 以及直流电源。
Cisco 3800 系列路由器提供了思科 IP 电话解决方案、Cisco CallManager Express (CME), 它作为一个
可选特性集内嵌于 Cisco IOS 软件之中。此解决方案适用于想通过融合话音和数据网络而降低成本和复
杂度的客户。通过向此解决方案添加一个 Cisco UnityTM Express 高级集成模块(AIM)或网络模块, 小型机
构和分支机构可受益于全面、一体化的数据、话音处理、语音留言和自动接听系统。对于较大的集中 IP
通信部署, 客户可通过一个中央 Cisco CallManager 而在其 Cisco 3800 系列路由器中部署远程电话应急呼
叫功能(SRST), 以实现高度可扩展、高度可用的企业 IP 通信。SRST 是思科端到端 IP 电话产品的一个重要
组件, 提供了功能丰富的呼叫处理冗余性, 同时还可利用分支机构的现有基础设施。
Cisco 3800 系列路由器还拥有范围最广的话音网关接口, 使用网络模块、扩展话音模块(EVM)、话
音接口卡(VIC)、话音/WAN 接口卡(VWIC)和板载分组话音 DSP 模块 (PVDM)的组合, 可扩展以满足各种规
模的分支机构对于话音端接密度的需求。客户可拥有前所未有的可扩展性, 支持多达 24 条 T1/E1 中继和
88 个外部交换站(FXS)端口, 用于模拟电话、传真机、按键系统和会议工作站。
16.7 Cisco 7100系列
Cisco 7100 系列 VPN 路由器是一个高度集成化 VPN
解决方案, 它结合了业界领先的高速路由技术及全面的高
级站点到站点(site to site) VPN 服务套件。该系列 VPN 路
由器集成了 VPN 隧道的关键特性(数据加密、安全、防火
墙、高级带宽管理和服务级确认), 提供自治愈、自卫 VPN
平台, 利用公共数据网更好和更加经济有效地适应远程办
事处及外部网连接需求, 并且提供为 VPN 应用和网络拓扑
而优化的特定硬件配置, 可选的嵌入式广域网和快速以太
网接口, 加上高性能路由和丰富的 VPN 服务, 提供一览子 VPN 路由解决方案。与其它类型的路由器相
比, 7100 系列的创新之处在于提供硬件加密模块, 将 VPN 的性能大大提高了, 即便是在 3DES(168 位)加
密条件下交换速率也可达到到 90 Mbps,。
以 7100 系列中的 7140 为例, 含有新集成服务模块 ISM(Integrated Services Module ), 并且随机箱都
提供有可选的 IOS IP、IPSEC/3DES 等软件。除了支持 TCP/IP 和 IPX 等协议的路由功能之外, 还可以扩展
到 30 个以上的 Cisco 端口适配器, 如串行端口和话音端口。7140 的路由功能主要体现在这几个协议上,
分别是 BGP(Border Gated Protocol)、EGP(Enhanced Gateway Protocol)、IGRP(Interior Gated Routing
Protocol)、EIGRP(Enhanced Interior Gated Routing Protocol)、OSPF(Open Shortest Path First)和 RIP(Routing
P a g e | 319
CCIE R/S & Service Provider Exam Certification Guide
Information Protocol), 而且在每个接口都配有网络地址转换器 NAT(Network Address Translation)。但是真
正使 7140 不同于其它 Cisco 路由器的还是在于这款设备对 VPN 网的支持。
通过 ISM 模块卡和 IPSec 软件, 7140 可同时支持 2000 个会话, 并
且在已经进行 3DES 加密条件下, 传输速率还能达到 90 Mbps, 这种
速率与普通电缆连接的网络相比几乎没有性能上的损失。如果不想
使用该系统自带的 IPSec 软件, 那么即使是基于微软的点对点通信协
议 PPTP(Point-to-Point Tunneling)或者是双层通道协议 L2TP(Layer Two
Tunneling Protocol), 也能同时进行 2000 个会话通信。与 VPN 网相结合, 使用 Cisco 的 PIX 防火墙软件, 还
可以将 7140 配置成为防火墙(该软件可单独使用), 这也就是说 Cisco 7140 为你的局域网免遭互联网上非
法攻击提供了双保险--加密和防火墙。与其它同样是基于硬件基础的防火墙, 如 SonicWall 公司的
SonicWall Pro 和 NetScreen 技术公司的 NetScreen 100 相比, 7140 可同时提供 2000 个 VPN 会话的能力, 的
确与众不同。并且虽然这两家公司生产的路由器可以提供相当数量的 IPSec 通道, 但是它们数据吞吐的
速度却远远没有 7140 快。美中不足的是 7140 的价格是这两款设备的两倍, 因此如果你的需要只是防火
墙和较多的通道, 那么也许就不需要购买 7140 这么昂贵的设备了。7140 的最大特点就是它的灵活性和
可伸缩性, 这都体现在类型和接口上了, 这种基于硬件的防火墙并不是简单意义上的广域网(WAN)路由
器。
2000 年 1 月, Cisco 收购了 Altiga Networks, 通过这次并购, Cisco 推出了专用的 VPN 集中器 VPN3000
系列, 可以支持同时 10000 人的访问。VPN3000 系列将在以后的安全部分介绍。
16.8 Cisco 7200系列
16.8.1
Cisco 7200 简介
Cisco 7200 系列路由器能够通过一个紧凑的机箱提供优异的性价比、灵活性和丰富的功能。Cisco
7200 非常适于作为服务供应商(小型 POP)或者企业网络边缘的 WAN 汇聚器, 一个企业 WAN 网关, 一个
高端可管理 CPE, 或者作为一个小型的核心路由器。凭借硬件支持的 IPSec 加密模块以及强大的防火墙
和 VRF 感知的 IPSec/NAT 支持, Cisco 7200 适于提供集成安全服务。该平台还支持需要 IBM 数据中心连
接的站点和需要结合上述所有的特性和多方面功能的站点, 以便支持多服务语音、视频和数据流量。
Cisco 7200 的一个关键优点是其模块化的特性。客户通过选择 4 或 6 槽机箱, 高达 1Mpps 处理能
P a g e | 320
CCIE R/S & Service Provider Exam Certification Guide
力的多种路由引擎, 每机箱多达 48 个端口的广泛的 LAN 和 WAN 接口, 以及单/ 双重电源, 可以定制自
己的系统, 获得所需的性能、连接和容量。这种模块性加上较低的初期价格可以提供投资保护和最大限
度的投资回报, 让客户可以根据网络需要, 升级和/ 或重新部署他们的 Cisco 7200。
16.8.2
Cisco 7200 网络处理器
NPE-400:
NPE-400 是 Cisco 7200 系列 VXR 系统使用的网络处理引擎中性能较高的处理器。NPE-400 在
CEF 交换过程中每秒钟大约可以处理 40 万个数据包(pps)。
NPE-400 加强了 Cisco 7200 作为优秀高性能多功能平台的地位。作为私有企业客户或服务供
应商管理路由器和网络所需的客户端设备(CPE), Cisco 7200 路由器可以为数据、语音和视频集成提
供多服务支持。同样地, 企业专网和 IBM 园区网也可以通过加强虚拟 LAN(VLAN)功能、系统网络体
系结构、通道连接主机、DLSW+和高级端对端组网获得更高的性能。
早期的 NPE 性能如下表
NPE-400
400-kpps CEF 交换
256KB L2 高速缓存
4-MB L3 高速缓存
128-MB SDRAM(可扩展至 512MB)
仅用于 Cisco 7204 VXR 和 Cisco 7206 VXR 机箱
NPE-300
300-kpps CEF 交换
256KB L2 高速缓存
2-MB L3 高速缓存
32-MB 板上 SDRAM
32-MB SDRAM(可扩展至 256MB)
仅用于 Cisco 7204 VXR 和 Cisco 7206 VXR 机箱
NPE-225
225-kpps CEF 交换
2MB L2 高速缓存
64-MB SDRAM(可扩展至 128MB)
适用于标准机箱以及 VXR 机箱
后期发布了新版本的 NPE , NPE-G1 在 CiscoCEF 交换
中提供高达 1Mpps 的性能, 比 7200 系列的 NPE-400 提高
了 140%,同时提供了 3 个不占用带宽点的 1Gbit/s 的以太
网接口, 可用 DRAM 提高到 1G, 能够支持更多的路由表
和 MPLS 路由转发 Netflow 和 NAT 功能进一步的加强
P a g e | 321
CCIE R/S & Service Provider Exam Certification Guide
2006 年 Cisco 发布了 NPE G2 网络处理引擎, Cisco 7200 NPE-G2 是为 Cisco 7200 VXR 推出的最新路
由引擎, 其性能是前代 NPE-G1 的两倍, 高达 2Mpps 的转发能力
而且全面支持 Cisco IOS
Software 特性, 是网络处理引擎系列中性能最高、扩展能力最强的产品。
其它特性还包括:威胁防御、高度安全的虚拟专网(VPN)连接、网络准入控制和语音/IP 到 IP 网关功能。
同时提供了 2 个 USB 接口用于更大容量的文件通过 USB 移动存储.
与 NPE-G2 同时发布的还有 VPN 服务适配器, 为 Cisco 7200 系列路由器开发的思科 VPN 服务适配器
(VSA)能够为 IPSec VPN 应用提供高性能加密和密码生成服务。它在现有的 VPN 加速模块(VAM)系列基础
上提高了性能。与 VAM2+类似, VSA 支持 DES)、3DES 和 AES, 并支持对 128 位、192 位和 256 位 AES 密
码的硬件加速。VSA 需要配备 Cisco 7200 系列 NPE-G2 网络处理引擎, 它只能安插于 Cisco 7204VXR 或
7206VXR 机箱上的 I/O 控制器插槽中, 因而能够将宝贵的带宽留给其它端口适配器使用。
16.9 Cisco 7300系列
16.9.1
Cisco 7300 简介
思科 7300 系列互联网路由器旨在为需要以光速提供高性能 IP 服务的场所提供网络边缘应用, 这
些场所包括高端企业, 或者可管理的服务客户端设备(CPE)。
Cisco 7301 是一款 1U 型高性能路由器, 支持 1Mpps 同时其功耗仅 75w, 集成 3 个 GE/FE 接口, 降
P a g e | 322
CCIE R/S & Service Provider Exam Certification Guide
低了整机功率
思科 7304 是一款小巧的四机架单元(RU)设备, 采用了模块化的四插槽板型。可以提供光通讯连接
功能, 支持从 OC-3 到千兆以太网和 OC-48/STM-16 的各种速度, 另外还具有处理器冗余功能和多协议功
能。高性能的服务在这些实施方案中占有至关重要的地位, 而 Cisco 7304 可以通过 Cisco 特有的并行快
速转发(PXF)IP 服务处理器技术, 提供一组不断发展的高性能、硬件加速 IP 服务, 并可以通过软件方式进
行升级。
16.9.2
Cisco 7300 处理器
Cisco 7304 路由器提供了两种类型的处理器选项:一般用途网络处理引擎(NPE-G100)和硬件加速网
络服务引擎(NSE-100)。
NPE-G100 提供了更高的 LAN 连接能力(三个固定 10/100/1000 Mbps 铜线或光纤端口)、1 GB SDRAM
和 256 MB 小型闪存。另外, 凭借 1 Mpps 以上的交换性能, NPE-G100 还能以高于 Cisco 7304 NSE-100 路
由处理器的处理速率, 支持全部 Cisco IOS 软件特性, 从而提供了最高的灵活性。利用硬件加速特性, 采
用思科并行快速转发(PXF)的 NSE-100 为特定应用提供了出色的 3.5 Mpps 性能, 并可为高速接口提供线速
性能(最高 OC-48/STM-16)。
下表对两种 Cisco 7304 处理器的主要差别进行了介绍。
NPE-G100
引擎类型
一般用途处理器
性能
1 Mpps 以上路由处理器
LAN 端口
3 个固定 10/100/1000-Mbps 端口(RJ-45)
或 SFP 光端口
SFP (SX, LX/LH 和 ZX)
千兆以太网
光端口
SDRAM
小型闪存
16.9.3
1 GB,双数据速率(DDR)SDRAM
256 MB
NSE-100
基于 PXF 的处理器,
支持一般用途的路由处理器
3.5 Mpps (PXF); 450 kpps 路由处理器
2 个千兆以太网端口
千兆以太网转换器(GBIC)
(SX, LX/LH 和 ZX)
最高 512 MB
最高 128 MB
Cisco 7300 体系结构
NSE 卡是 CISco 7300 平台的心脏和大脑。除分组处理外, NSE 还执行路由协议, 负责配置和管理
CISco 7300 机箱。CISco 7300 的分组发送责任由两个主要子系统分担。基于 PXF / Van Allen 的快速转发
机制(FFE )只负责处理 IP 流量, 性能为 3.5Mpps 。基于 MIStral ASIC 的路径处理器(RP)子系统将负责处
理非 IP 和控制面板流量。它能够为 IP 实现 450kpps 的最高分组吞吐率, 非 IP 流量的分组吞吐率稍低。
路由协议支持、对其它控制面板协议的支持, 以及机箱配置和管理都由 RP 子系统单独完成。RP 将
P a g e | 323
CCIE R/S & Service Provider Exam Certification Guide
提供 I0S 支持的所有控制面板特性, 包括路由协议支持、多协议支持(AppleTalk 、IPX 、XNS 等)和网络
协议。RP 还负责处理来往于路由器的所有流量。
FFE 处理数据面板流量, 也就是在路由器两个端口之间流动的流量, 以及路由器路由的流量, 一般
都对分组提供 ACL 或 QoS 等服务。数据面板流量必须 PXF 中处理才能获得最佳性能。不能由 PXF 完全
处理的多数面板流量都将由 RP 处理, 但速度较低。请注意, 排序和整形根本不能在 RP 上执行, 因为序
列状态反馈将发送到 FFE, 永远不会传递到 RP 。
快速转发机制
快速转发机制的主要任务是引导分组通过 CISco 7300 系统。它可以分成两组独立电路:Toaster /
van Allen 复合组件以及 Constellation 总线电路。
PXF / Van AIlen 复合组件
PXF / Van AI len 复合组件是 Cisco 7300 机箱内的主要转发实体。转发决策由串连在一起的两个
Toaster 微控制器制定。两个 ASIC 可以处理高达 3.SMppS 的发送决策率。
CISco 7300 路由机制中还包括 Van Allen ASIC 。Van Allen 实际上是 DMA 机制, 负责在新帧到达时
通知 Toaster , 方法是产生分组处理信息, 然后根据 Toaster 命令在多个端口和分组内存中移动数据。
CISco 7300 相互连接的两个主通道都与 Van Allen ASIC 相连, 这两个通道是背板串行通道和通过
Sculpter ASIC 实现的 constellation ( LAN)总线。van Allen 是系统的集线器, 从线接口接收分组, 然后向
Toaster ASIC 提供分组标头信息, 以待处理。它还从 Toaster ASIC 接收处理完的命令, 然后指挥分组从线
接口出去。Van Allen 最后连接到 RP 复合组件。
Toaster 微处理器 ASIC 是一块芯片, 在 4x4 行和列组成的阵列中提供 16 个微处理器。ASCI 可视
作四级管线的组合。分组处理所需的信息沿行(管线)传递, 只由四个微处理器处理。每个管线等级都有
不同的任务, 但各 Toaster 列的任务都相同。CISco 7300 FFE 使用串连的两个 Toaser ASIC , 因此提供 4x8
处理器阵列。
ToasterASICA 的每一行为处理器和所有外部接口提供 125MHZ 的速度, 每 160ns 就可以接受一个
新的信息, 因此, 最高源分组处理速率能达到 6Mpps (假设每个分组只需要一个信息)。但是, 由于 van
Allen 当前版本的处理性能的限制, 最高分组处理速率只能达到 3.5Mpps 。
Constellation 总线电路
CISco 7300 NSE 使用 Constellation 总线提供其 LAN 连接。与 Constellation 平台不同, 这种总
线完全分组含在 NSE 母板内(例如, 它不在背板上运行)。借助这种总线, NSE 能利用 constellation
P a g e | 324
CCIE R/S & Service Provider Exam Certification Guide
LAN 端口 ASIC。
在 constellation 平台内, constellation 总线周围的数据移动由发送 Aslc 的 LZ 和 L3 (和相关电
路)处理, 它先对总线上的分组数据进行分解, 然后根据大型转发表作出数据移动决策。Cisco7300
不使用发送 ASlC 的 L2 和 L3 , 所有表都将保存在 Toaster 列内存或 RP 的主内存中。
Sculptor ASIC 将 van Allen ASIC 与 Constellation 总线连接在一起。
Cisco 7300 NSE 与 Constellation 总线连接在一起, 它拥有 Pinnacle ASlC , 能够提供四个千兆位
以太网连接端口。其中两个端口是 NSE 的本地端口, 其它两个在背板上运行, 可以与其它 NSE 上
的 GBIC (如果有的话)连接。这种配置使 NSE 能控制 Cisco 7300 系统中的所有 GE 端口,而且对冗余(或
弱备用)NSE 的依赖性最低。请注意,在 FCS 阶段不支持冗余 NSE。这些千兆位以太网端口为 Cisco7300
平台提供主 LAN 连接。
路径处理器复合组件
CISco7300 路径处理器子系统的主要任务包括:为快速机制未处理的分组(包括去往 Cisco7300
自身的分组,如网络管理协议分组)提供“悬空路径’、多协议支持、路径协议等,它还能处理 Cisco7300
系统的配置和维护。
RP 子系统的处理器是 QED 的基于 MIP 的 R7000A。微处理器通过 MistralASIC 与其它子系统部
件相连。除标准系统控制器特性(SDRAM 控制器、I/0 总线、UART 等)外,Mistral 还分组含路径辅助
逻辑,使 R7k 能有效查看和操作穿越 MIStral 的千兆位以太网端口的分组。
QED 的 R7000 系列微处理器共有三级高速缓存。芯片上主高速缓存有分开的指令高速缓存和
数据高速缓存,这两种高速缓存都有 16KB 深。芯片上还有 256KB 二级高速缓存,保存指令和数据。(芯
片上二级高速缓存是 R7k 系列的新特性。)微处理器支持外部指令和数据高速缓存,称为第三或 L3
高速缓存,大小从 512KB 到 SMB(两个数量级)。cisco7300 将使用所有三级高速缓存。
MistralASIC 是 RP 子系统的核心。作为系统控制器,Mistral 将 R7k 微处理器与其它子系统组件
对接。Mistral 不但提供与主内存 SDRAM 的连接,还通过其 I/0 总线提供与外部内存和外设(ROM、
FLASH、ASIC)的连接。Mistral 还包括许多内部设备,如 DUART 和 10/100 以太网 MAC。
MistralASIC 通过 GE 连接与 VanAllen 相连。R7k 通过其 IOOMHz 的 SYSAD 总线与 MIStralASIC
连接。
中板和基础设施
cisco7300 中板基础设施支持一个插槽和双宽插槽的线卡。中板安装在机箱的内部,以便 NSE
和线卡能插入到前面,电源能插入到后面。带电源、线卡和 NSE 连接器的中板所有电源插槽都插着
电源或风扇。中板的两半都直接与一个电源相连,如果采用非冗余配置,则一个中板将与风扇相连。
两块中板用地线连接在一起,两块中板之间的电源则通过 NSE 相连,这样两块中板能受一个电源的
控制。
16.10 Cisco 7500系列
16.10.1
Cisco 7500 简介
Cisco 7500 系列是 Cisco 主要的高端多协议路由器平台。这些系统结合了 Cisco 行之有效的软
件技术以及卓越的可靠性、可用性、服务能力和性能特性, 可以满足当今最关键的互联网的需求。
Cisco 7500 系列给信息系统专业人员提供所需的灵活性, 使他们能够满足互联网核心和分布点不断
变化的要求。
关键特性
高性能交换--通过支持高速介质和高密度配置, 为关键任务应用提供高度的性能;通过利
P a g e | 325
CCIE R/S & Service Provider Exam Certification Guide
用通用接口处理器(VIP)和 Cisco Express Forwarding 的处理功能, Cisco 7500 系列的系统容量每秒可
以超过 100 万个信息包。
全面的 Cisco IOS 软件支持和高性能网络服务的增强--高速执行服务质量、安全、压缩和加
密等网络服务;VIP 技术通过分布式 IP 服务扩展了这些服务的性能。
高密度端口--提供高密度端口以及广泛的局域网和广域网介质, 大大降低了每端口成本,
并允许灵活地进行配置。
公用端口适配器--VIP 利用和 Cisco 7200 相同的端口适配器, 简化了备件存储, 并保护了客
户的接口投资。
16.10.2
Cisco 7500 体系结构
Cisco7500 系列路由器是一种高端路由平台, 它支持公司的企业网,同时也可作为 Internet 骨干的基
石。7500 的端口容量和可用接口类型使它可为 Cisco 路由体系结构的各个层次提供服务。7500 系列在各
接 口 之 间 处 理 报 文 的 速 度 是 由 于 使 用 了 高 速 总 线 结 构 。 这 种 结 构 被 称 为 Cisco 扩 展 总 线
(CiscoExtendedBus,CyBus)。CyBus 支持 7500 系列平台上的任意接口处理器的组合。CyBus 可以支持合计
达 1.067Gbps 的通过量。7500 系列包含三种模式:Cisco7505、Cisco7507 以及高端平台 Cisco7513, 每种
模式都为 RSP 插板留有一个特定位置, 7500 系列平台可支持 15 种不同的特性集。
Cisco7505 系列
7505 是 7500 系列中最小的平台, 它支持 4 个接口处理器和一个 RSP 板。下图显示了 7505 的平台
样式。7505 使用单独一根 CyBus 将各接口板连到 RSP。7505 系列支持 RSP1 和 RSP4, 该平台只提供单一
电源供应, 因此 7505 系列的放置可以选择具有较低的移动要求, 但对通过量要求较高且需要多种接口
的支持的地方。
Cisco7507 系列
Cisco7507 系列路由器通过提供 5 个接口处理器插槽, 扩展了路由器的接口组合能力。并且 7507 系
列通过使用备份电源供应和双 RSP 板(dualRSPconfiguration,HSA)增强了自身可靠性。7507 系列的冗余配
P a g e | 326
CCIE R/S & Service Provider Exam Certification Guide
置, 使它可以可靠地作为核心或分发层路由器提供服务。7507 系列既可使用 RSP2 也可使用 RSP4, 在双
RSP 配置(HAS)中应使用相同的 RSP 平台。双 CyBus 结构的采用进一步提高了 7507 的可用结构。该结构
不仅在某一总线故障时能够恢复, 而且允许两条总线同时使用, 这就提供了比 7505 系列更高的通过量。
Cisco7513 系列
Cisco7513 是 Cisco 公司的高容量 7500 系列路由器平台。如图所示, 该系列产品为 HSA 提供了两个
RSP 插槽, 另外它还拥有 11 个接口处理器插槽。它们支持任意的接口组合。7513 系列支持双 CyBus 结
构并提供了两个电源供应。该平台还支持 RSP2 和 RSP4 处理器。7513 接口的高容量使它成为对一个较
大的环境中多个 LAN 分段接口非常有用的平台, 不同的接口组合使它可以分别作为核心层、分发层或访
问层路由器来提供服务。
P a g e | 327
CCIE R/S & Service Provider Exam Certification Guide
16.10.3
Cisco 7500 处理器
在 7500 系列路由器上使用的路由交换处理器(RSP)平台是路由器处理器(RouterProcessor, RP)和最初
在 Cisco7000 系列路由器平台上使用的交换处理器(SwitchProcessor, SP)的结合物。将 RP 和 SP 的功能结
合在同一块板子上使得 RSP 可以更快地交换和处理报文并使得各平台获得了一个额外的接口处理器插
槽。
7500 系列中存在三种类型的 RSP 平台, 每个 RSP 类型的基础平台都有 32MB 的 DRAM 和 8MB 的
FlashSIMM 存储器, 在执行任何其他功能之前, 7500 系列使用 FlashSIMM 来为激活 RSP 存储和装载
CiscoIOS 的 BOOT 映像。DRAM 是可以升级的, 如果你使用 PCMCIA 卡的话, 可将 DRAM 在 3264 或 128MB
闪存的基础上再增加两个插槽共 40MB 的空间。每个 RSP 使用 128KB 的 NVRAM 存储 IOS 系统运行和启
动配置文件。
RSP1 是 7505 系列路由器的缺省 RSP, 并且只在该种路由器上可用。RSP1 将 CiscoIOS 的映像
存在 RSP 上的闪存中, 或存至二个 Intel 系列 2+闪存 PCMCIA 卡中。RSP1 有一个 50MHz 的外部时钟
(总线速率)和一个 100MHz 的内部时钟(CPU 速率)。
RSP2 是提供给 7507 和 7513 系列路由器的基 RSP 板。RSP2 在一个最大 50Mhz 的外部时钟(总
线速率)和一个 100Mhz 的内部时钟(CPU 速率)上运行。RSP 系统处理器的 RSP2 平台支持高系统可
用性(HSA)特性。使用两个 RSP2 系统处理器, 7507 和 7513 就可以提供 RSP 的故障恢复, 当主 RSP
出现暂停时, 副 RSP 就接替主 RSP 工作。缺省的系统主 RSP2 就是占据 7507 上的插槽 2 或 7513 上
的插槽 6 的 RSP。该设置是可配置的, 但是在采用 HSA 时最好还是使用缺省设置。这里要引起注意
的是使用 HSA 的 CiscoRelease11.1(5)或更高版本, 以及 ROM 监视器的 11.1(2)或更高版本。要使 HSA
正常工作, 每个 RSP2 必须安装同样版本的 ROM 监视器。
RSP4
7500 系列的三种平台均可使用 RSP 系统处理器的 RSP4 平台。它的外部时钟(总线速率)
是 100MHz 的, 并支持 200MHz 的内部时钟(CPU 速率)。RSP4 也为 DRAM 存储器使用 DIMM 芯片组。
同样, RSP4 的 DRAM 配置是 32、64、128 或 256MB。
与 RSP1 和 RSP2 相比, RSP4 得到了加强, 它采用 SRAM 作为报文缓冲, 并为支持 CPU 工作使用
了一个二级缓冲存储器。另外 RSP4 还支持采用任何类型的 PCMCIA 闪存卡作为闪存。
PCMCIA 卡有三种类型:PCMCIA 的类型 1 和 2 用在插槽 0 和 1 上。PCMCIA 闪存卡的类型 3
只能用在 RSP4 的 1 号 PCMCIA 插槽上。与 RSP2 一样, RSP4 支持 HSA。RSP4 上对 HSA 的支持取决
于 CiscoIOS 和 ROM 监视器的等级, 当使用 CiscoIOSRelease11.1(8)CA1 和 ROM 监视器的 11.1(8)CA1
或更高版本时, HSA 可在 RSP4 上得到完全支持。
路由器/交换机处理器(RSP)规格
产品
RSP16
RSP 8
RSP 4+
RSP 2
P a g e | 328
最优交换性能(pps)
550+K
470+K
345 K
220 K
分组内存(SDRAM)
1GB
8 MB
2 MB
2 MB
CCIE R/S & Service Provider Exam Certification Guide
通用接口处理器(VIP)规格
产品
VIP6-80
VIP 4-80
VIP 450
VIP 2-50
VIP 2-40
16.10.4
最优交换性能
~240 kpps
~170 kpps
~140 kpps
~140 kpps
~105 kpps
带宽
1GB+
750+MB
750+MB
400 MB
400 MB
分组内存
64 MB
64 MB
64 MB
4 MB 8MB
2 MB
程序内存
64 MB(缺省)128MB 256MB
64 MB(缺省)128MB 256MB
64 MB(缺省)128MB 256MB
32 MB(缺省) 64MB 128MB
32 MB(缺省) 64MB
Cisco 7500 内存
RSP 和任何接口处理器上的存储器对于有效地运行路由器来说是至关重要的。它的容量越大越好。
另外采用大量的可用于任何平台的存储器来作为针对 IOS 或微码软件的设计缺陷或内存遗漏的保险策略
并不费什么劲。7500 系列平台采用多大的 DRAM 存储器, 可以根据同一网络中的 IP 路径数来定。Cisco
将网络规模划分如下:
小型网络:不超过 2000 条 IP 路由。
中型网络:2000 到 10000 条 IP 路由。
大型网络:超过 10000 条 IP 路由。
下列的 DRAM 存储器要求是针对 7505、7507 和 7513 路由器平台上的 RSP1、RSP2 和 RSP4 系统处
理器提出的建议:
小型网络:32MB。
中型网络:32MB。
大型网络:64MB。
Cisco 强烈建议即使某些网络远低于 2000 个 IP 路由的标准, 为路由器性能着想, 也应配置最低
32MB 的 DRAM。插入 RSP 板的插槽 0 和插槽 1 的闪存 PCMCIA 卡有多种不同的存储容量。缺省卡有 8MB
的存储器并缺省地存有 IOS 软件映像。如果另外再购买的话, 在使用前必须先对其格式化。因为不同系
统处理器的不同存储格式, 应用在 7000 系列 RP 板上的 PCMCIA 卡在应用到 7500 系列路由器上前必须重
新格式化。
16.10.5
Cisco 7500 附件
Cisco 7500 系列路由交换处理器
RSP4+=
Cisco 7500 系列路由交换器处理器 RSP-4+
RSP8=
Cisco 7500 系列路由交换器处理器 RSP-8
RSP16=
Cisco 7500 路由交换器处理器 RSP-16
Cisco 7500 系列内存
MEM-RSP4-FLC16M=
RSP4 闪存卡:16MB 工具
MEM-RSP4-FLC32M=
RSP4/4+ 闪存卡:32MB 工具
MEM-RSP4-256-4PK=
RSP4 256MB DRAM 升级工具(4 包)
MEM-16F-RSP4+=
RSP4 + 16MB 启动闪存
Cisco 7500 系列接口处理器
GEIP=
千兆以太网接口处理器
GEIP+=
增强型千兆以太网
CX-CIP2-ECA1=
CHANNEL IP: CIP2, 带 ECA-1 端口
CX-CIP2-ECA2= C
CHANNEL IP: CIP2, 带 ECA-2 端口
P a g e | 329
CCIE R/S & Service Provider Exam Certification Guide
16.11 Cisco 7600系列
16.11.1
Cisco 7600 简介
Cisco 7600 系列路由器是一款高性能的边缘路由器, 可以满足服务供应商和企业客户的多种新型网
络边缘服务要求。Cisco 7600 系列可以在网络边缘提供光网络(WAN)和城域网(MAN)功能, 以及多种 IP 服
务。Supervisor Engine 720-3BXL 是 Cisco 7600 系列路由器的第三代 Supervisor 引擎, 它能够提供硬件加速
IPv4、IPv6 和多协议标签交换(MPLS)等可扩展增强服务, 以满足服务供应商和企业客户的不断提高的数
据要求。而增强型 FlexWAN 模块可以将可扩展的 WAN 和 MAN 连接选项扩展到 Cisco 7600 系列, 并可以
支持大部分 Cisco 7200 和 7500 WAN 单倍宽度端口适配器——从部分 T1/E1 到 OC-3。该卡可以提供来自
于 Cisco 7500 系列的、灵活的移植选项, 并可以在现有的 LAN/WAN/MAN 和传统网络与未来的融合式语
音、视频和数据高速网络之间建起一座桥梁。
16.11.2
Cisco 7600 体系结构
Cisco7600 来自于 Catalyst 6500 项目, 其机箱和 Catalyst 6500 类似, 分为 4 种型号
Cisco 7604
Cisco 7604 路由器是体积最小的冗余路由器之一, 可以提供 nx10GE 以太网性能和丰富的服务。
作为 Cisco 7600 系列的成员, 它为电信运营商边缘、企业城域网(MAN)和广域网应用提供了强大的、高
性能的 IP/ MPLS 功能。而且, 四插槽的 Cisco 7604 机箱能够以紧凑的 5 机架单元(RU)外型提供卓越的
性能。它可以采用两种配置 -- 单引擎和三个线路卡, 或者双引擎和两个线路卡。后一种配置有助于提
高可靠性和冗余性。 Cisco 7604 还支持冗余的交流或者直流电源, 以提高可靠性。
适用于企业广域网汇聚或者电信运营商环境的 Cisco 7604 提供了业界领先的接口组合(从 DS-0
到 OC-48/STM-16 , 快速以太网, 千兆以太网, 万兆以太网)和服务模块, 例如 IPSec 、防火墙、 SSL VPN 、
P a g e | 330
CCIE R/S & Service Provider Exam Certification Guide
入侵检测系统(IDS)、拒绝服务(DoS)防范。 Cisco 7604 支持新的思科共享端口适配器(SPA) /SPA 接口处
理器(SIP)系列, 大幅度提高了插槽使用的经济性。另外, 它还支持增强型 FlexWAN 模块。该模块可以对
希望从 Cisco 7500 或者 Cisco 7200 系列移植到 Cisco 7600 系列的客户提供端口适配器的投资保护。
Cisco 7606
Cisco® 7606 路由器是一款部署于运营商网络边缘和数据中心、体积小巧、性能出众的路由器, 在
网络边缘和数据中心, 必须提供出色的性能和服务来满足企业和电信运营商的需要。Cisco 7606 能满足
这两方面的需求, 它提供了 30Mpps (集中式处理) 、240Mpps (分布式处理) 和 480Gbps 的总吞吐量, 以
及先进的硬件加速 IP 服务。
Cisco 7609
Cisco 7609 路由器是一款部署于运营商网络边缘和企业网
核心的高性能路由器, 在运营商的网络边缘, 性能、IP 服务、冗余
性和故障弹性十分重要。通过中央路由处理器和转发引擎相结合,
Cisco 7609 路由器提供了 30Mpps(集中式处理)/400Mpps(分布式
处理)和 720Gbps 的总吞吐量。多功能的 Cisco 7600 系列系统将广
域网连接从 DS0 扩展至 OC-192/STM-64, 将局域网连接从 10M 以
太网扩展至了 10G 以太网。Cisco 7609 可在通过 Cisco PXF 网络处
理器实施高级硬件加速 IP 服务的同时提供上述功能。
Cisco 7609 提供了 9 个局域网、广域网和城域网联网插槽,
使电信运营商可以在网络边缘提供高价值、差异化服务。并为企
业网核心和广域网汇聚提供了部署在高要求、高流量环境中成功
所必需的高级网络基础设施。
作为 Cisco 7600 系列的一部分, Cisco 7609 路由器是 9 插槽
机箱 OSR-7609 的继承产品。这一增强型机箱进行了设计改进, 采
用冗余、可变速的风扇架, 带有路由处理器、交换矩阵和电源冗余
性的可配置选项。
Cisco 7609 可满足电信运营商和高端企业用户的要求。线卡
为垂直安装, 可通过前后通风进行高效冷却。标准或扩展电缆架插入导轨可方便管理每插槽高达 48 条
10/100M 以太网电缆/光纤/同轴电缆和多种线缆类型。每 7 英尺机架可安装 2 个机箱。
P a g e | 331
CCIE R/S & Service Provider Exam Certification Guide
Cisco 7613
Cisco7613 路由器是一款部署于运营商网络
边缘和企业网核心的高性能路由器, 在运营商的
网络边缘和企业网的核心, 性能、IP 服务和冗余性
/故障永续性十分重要。与 Supervisor Engine 720 相
结合, 13 插槽的 Cisco 7613 能提供 30 Mpps 集中式
转发速率和 400Mpps 分布式转发速率。这款多功
能的 Cisco 7600 平台将广域网连接从
OC-192/STM-64 扩展至 DS0, 将局域网连接从 10M
以太网扩展至 10G 以太网。
Cisco 7613 在网络边缘提供了 13 个局域网、
广域网和城域网光网插槽, 能帮助电信运营商提
供高价值的个性化服务, 并使企业能部署先进的
网络基础设施, 以便在高流量环境中取得成功。
Cisco 7613 能在单一机箱中同时满足电信
运营商和高端企业的需求。思科充分了解高效利用
机架空间的必要性, 因此 Cisco 7613 的设计采用了
水平线卡配置, 前后通风, 并对接口和电源端接进
行单边连接管理。每个 7 英尺机架(33.3\xfd /82.3
cm 高, 18RU)可安装 2 个机箱。
16.11.3
Cisco 7600 系列增强型 FlexWAN 模块
增强型 FlexWAN 模块可以增加交换矩阵连接, 提供更高的性能和内存容量(与现有的 FlexWAN 模块
相比), 以及支持针对城域(Metro)以太网市场的各种功能。企业和服务供应商可以利用多种 Cisco 7000
系列通用端口适配器选择符合自己需要的 WAN 汇聚和连接方式, 并通过思科增强型 FlexWAN 模块获得
更高的可扩展性、性能和丰富的服务质量(QoS)功能, 为下一代应用提供可扩展的、分布式的、智能化的
网络服务。
增强型 FlexWAN 模块还可以为已经部署了大量
的 Cisco 7200 和 7500 系列路由器的环境提供显著的
投资保护。Cisco 7600 系列可以部署这些相同的 WAN
端口适配器, 立即提供各种服务, 扩展到更高级别的
系统性能和带宽, 从而让思科客户可以方便地从
Cisco 7500 系列移植到 Cisco 7600 系列。
在启用 CBWFQ/LLQ 和使用 128 字节的分组时,
增强型 FlexWAN 模块的性能与没有采用 QoS 的情况下的性能是一样的。增强型 FlexWAN 模块在采用 QoS
的情况下的高性能交换能力。总体性能为每个增强型 FlexWAN 模块 1.25Mpps。
详细信息请见如下测试报告:
http://www.cisco.com/global/CN/solutions/products_netsol/routers/products/7600/7600_
whitebook_1.shtml
P a g e | 332
CCIE R/S & Service Provider Exam Certification Guide
16.11.4
Cisco 7600 系列 Supervisor Engine 720-3BXL
Cisco 7600 系列 Supervisor Engine 720-3BXL(Sup 720-3BXL)是 Cisco 7600 系列路由器的第三代
Supervisor 引擎。它能够提供硬件加速 IPv4、IPv6 和多协议标签交换(MPLS)等可扩展增强服务, 以满足服
务供应商和企业客户的不断提高的数据要求。Cisco Sup 720-3BXL 将高性能 720Gbps 交换矩阵与新型路
由和转发引擎集成在同一个模块中。由于集成式交换矩阵的每个端口可以提供 40Gbps 的全双工容量, 因
此, 它不但能支持第三代高性能高密度千兆位以太网和 10 千兆位以太网接口, 还能支持现有的 LAN、
WAN 和服务模块, 包括广为部署的 FlexWAN 和光服务模块, 以实现从 DS-0 到 OC-48/STM-16 的多种 WAN
边缘集中部署。
Cisco Sup 720-3BXL 采用了实用的思科快速转发体系结构, 支持集中式转发(思科快速转发)和分布
式转发(分布式思科快速转发), 能提供经济有效、可高度扩展的平台。
Cisco Sup 720-3BXL 提供具有永续性、可以扩展、安全可靠的模块化第 2 层或第 3 层解决方案, 具
体方法包括:
使用 MPLS、IPv6 和服务质量(QoS)等高级 IP 服务
支持高性能第三代以太网接口
利用分布式转发卡(DFC)提供可以预测和扩展的系统性能, 稳定值为 400Mpps
硬件型转发信息库(FIB)表输入项可以扩展到 100 万条路径
同时支持三代以太网线卡、光服务模块、FlexWAN 和服务模块, 可实现投资保护
每个插槽提供 40Gbps 全双工容量
利用 DFC 提供基于硬件的 200Mpps IPv6
支持 256,000 个 NeatFlow 输入项
Cisco Sup 720-3BXL 支持许多特性, 包括 QoS 机制、基于硬件的通用路由封装(GRE)通道和访问控
制表(ACL), 借助它, 客户可以建立功能丰富的高性能网络, 提供多种服务, 例如 MPLS VPN、城域汇聚和
多种 WAN 边缘服务。
16.11.5
Cisco 7600 系列 SPA/SIP
所有 Cisco 7600 系列路由器一样, 支持众多应用, 包括:
SPA/SIP: T1/E1, 信道化 T1/E1, T3/E3, 信道化 T3, OC-3/STM-1, OC-12/STM-4 和
OC-48/STM-16 POS, OC-192/STM-64 POS, OC-3/STM-3 ATM, OC-12/STM-4 ATM,
OC-48/STM-16 ATM, Fast Ethernet, Gigabit Ethernet, 和 10 Gigabit Ethernet.
Optical Services Modules (OSMs): OC-3/STM-1, OC-12/STM-4, OC-48/STM-16 POS,
OC-12/STM-4 ATM, Gigabit Ethernet WAN, 信道化 T3 (CT3), 和 OC12/STM-4
FlexWAN 模块:支持从 DS0 到 OC-3 的 Cisco 7200 系列和 7500 系列 WAN 端口适配器
LAN 以太网模块:10/100Mbps,千兆以太网和万兆以太网
服务模块:防火墙, IPSec, 网络分析, 内容交换和 SSL
P a g e | 333
CCIE R/S & Service Provider Exam Certification Guide
Cisco 7600 SIP-600
Cisco 7600 SIP-600 适用于电信运营商和企业应用, 支持高达 10 Gbps 带宽和多种接口, 具有在同一
线卡上集成第二层和第三层服务的独特能力。本地第二层桥接和第三层路由的结合, 使此线卡从市场上
的其他产品中脱颖而出, 尤其在城域以太网应用中更是表现优异。
这一业界领先的 WAN 服务模块的创新架构可提供经济有效的高级特性, 整合了特定应用集成电路
(ASIC)和网络处理器技术, 达到性能和灵活性的最优组合。Cisco 7600 SIP-600 通过在转发路径中采用成熟
的 ASIC 技术(路由和交换、NetFlow、访问控制列表[ACL]), 提供了分布式转发, 其队列和整形功能则为基
本特性提供了最优性能, 此外, 转发平面中还包括一个可编程网络处理器, 能提高灵活性并改进特性。
这种理想的技术组合为客户部署未来服务提供了必要的灵活性, 允许客户可按需扩展系统容量。
特性
Cisco 7600 SIP-600
优点
模块化
每 Cisco 7600 SIP-600 模块
提供高性能的密集服务, 并保持极具
一个 SPA
吸引力的机型和可扩展性
性能
高达 24Mpps
能为 41 字节 IP 分组提供线速性能
分组内存
256 MB
200ms 双向缓冲
交换矩阵连接
20Gbps 矩阵通道
使用 720Gbps 矩阵模块进行数据转发
OIR
支持 SIP 的 OIR
提供不干扰运行的 OIR 功能, 降低添
加、改动和拆除操作的影响
Cisco 7600 SIP-400
Cisco 7600 SIP-400 有助于实现高性能、智能化的广域网和城域网( WAN/MAN )服务。大型企业和
电信运营商可以全面受益于 Cisco 7600 SIP-400 所提供的增强的可扩展性、性能和丰富的特性, 以及
Cisco SPA/SIP 产品系列中提供的许多广域网汇聚和连接选项。 Cisco 7600 SIP-400 拥有 4 种 Cisco SPA ,
包括 OC-3 ATM 、 OC-12 ATM 、 OC-3 packet over SONET/SDH (POS) 和 OC-12 POS , 用于 MAN 和 WAN
连接。
P a g e | 334
CCIE R/S & Service Provider Exam Certification Guide
16.11.6
Cisco 7600 系列线卡
思科 2 端口和 4 端口信道化 T3(DS0)
为客户带宽需求不明确的服务节点的组成部分, 思科信道化 T3 SPA 使电信运营商可以不必提前确
定如何在 DS0, DS1 和 DS3 连接之间分配端口。对于企业远程站点连接, 由于该产品可灵活地支持 DS0,
DS1 和 DS3 连接, 因此 SPA 能够通过在一个 SPA 上集成大量端口适配器的功能和服务来降低设备开支。
该产品还提供了投资保护, 能够与企业保持同步发展, 满足对当今的 DS0 和 DS1 汇聚网络和对未来的 T3
汇聚网络的需求。
思科信道化 T3 SPA 有 2 端口和 4 端口两种型号。这些端口可以独立地配置为非信道化 T3, 信道化
T3 -> T1, N x T1, 全速率 T1, 信道化 T1, 部分信道化 T1 或 DS0 连接。在配置为非信道化 T3 端口时, 可以
部署与 DS3 和子速率 DS3 服务的连接。在配置为信道化 T3 端口时, 可以支持多达 112 个 T1 链路或多达
1023 个 NxDS0 信道, 因此使思科信道化 T3 SPA 成为面向广域网部署的最灵活的接口。由于在每端口的
基础上提供了集成数据服务单元(DSU)功能, 思科信道化 T3 SPA 与市场上大量符合标准的 DSU 兼容。
系统硬件支持 MLPPP, 提供了>T1 的链路汇聚。最多 12 条单独的 T1 可捆绑一个多链路 Bundle 中, 作
为一条 IP 链路使用。因此, 电信运营商无需将电路和客户端设备(CPE)基础架构迁移到 T3 设施, 即可逐
步配置>T1 的带宽。
思科信道化 T1/E1 SPA 可热插拔并对服务透明, 拆卸某块 SPA 不会影响接口处理器和其他 SPA。
Cisco 7600 系列 12-口通道化 T3 到 DS0 光服务模块
Cisco 7600 系列 12-口通道化 T3 到 DS0 光服务模块可以从 T1/E1 和 DS0 接收纯通道 T3 流量和多
路复用电路。服务功能包括对 IP 和 MPLS 流量的支持、基于等级的加权公平队列(CBWFQ)低延时队列(LLQ)
和加权随机早期检测(WRED), 以及对基于硬件的多链路点对点协议(MLPPP)的支持, 因而最多可以支持
168 个 T1/E1 捆绑, 每个捆绑最多可以支持 12 个 T1/E1 链路。通过结合这样的功能和性能, 思科可以为
方便地升级到 Cisco 7600 系列路由器所提供的高级网络架构提供一套多样化的电气接口。
电信运营商运作点(POP)和企业终端站点可使用 Cisco 7600 系列 12-口通道化 T3 到 DS0 光服务
模块, 在需要密度和性能时迅速、高效地添加电路。在无法选择宽带光支路的拓扑中, Cisco 7600 系列 12口通道化 T3 到 DS0 光服务模块适于整合来自多个传输系统的电路, 且无需重安排现有多路复用器内的
支路即可迅速切换电路。
P a g e | 335
CCIE R/S & Service Provider Exam Certification Guide
16.12 Cisco 1000系列
16.12.1
Cisco 10000 简介
Cisco 10000 系列是思科主要的电信运营商边缘汇聚路由器之一。它为租用专线、ATM、帧中继
和宽带汇聚(BRAS)提供了单一解决方案, 并为客户提供了高性能 IP 服务、最高平台可扩展性和高可用性。
主要特性
高性能 IP 服务--Cisco 10000 系列使电信运营商无需担心性
能下降即可部署创收服务。
Cisco 10000 系列支持思科专利并行快速转发(PXF)技术。
PXF 为客户提供了启动多项 IP 服务并保持线速性能的能力。因为
PXF 基于软件, 客户不用拨出任何硬件即可添加新服务功能。
Cisco 10000 系列支持范围广泛的关键边缘服务, 包括服务质量
(QoS)、多协议标签交换(MPLS)、多链路 PPP(MLPPP)、宽带汇聚
和接入控制列表(ACL)等。
电信级高可用性--凭借其电信级高可用性, Cisco 10000
系列将代价昂贵的网络中断减至最少, 最大限度地提高了最终用
户的满意度。Cisco 10000 系列是第一款专为实现不中断性能而设
计的互联网路由器, 有全套可靠性特性, 可实现高可用性(99.999%
正常运行时间)。全硬件冗余、在线接入和拨除(OLR)和无缝路由
器处理器转换(RPR+)均属于使 Cisco 10000 系列成为思科主要电信级平台的重要特性。最高的可
扩展性--Cisco 10000 系列采用了可至多承载 16 个线卡的 8 插槽机箱, 在降低网络复杂度的同时
实现了未来网络发展, 充分利用了电信运营商的现有投资。
Cisco 10000 系列在单一系统中支持数千条 DS0/DS1/E1 连接, 使电信运营商能无缝地随其客
户群的增加而扩展。因为 Cisco 10000 系列在单一平台中支持帧中继、ATM、租用专线和宽带汇
聚, 客户无需维持多个边缘设备即可向最终用户提供多种服务类型。
16.12.2
Cisco 10000 硬件结构
Cisco 10000 系列路由器和 7500 系列相似, 但具有 PXF 结构, 包含 3 个主要构件:机箱, PRE(路由性
能引擎)和接口卡。10000 系列机箱有 3 个版本: 5 个 slot 的 10005 , 8 个 slot 的 10008 和 10 个 slot 的 10000。
其中有 2 个 slot 用于放置主 PRE 和备份 PRE, 剩下的 slot 用于接各种特殊的线卡模块
Performance Routing Engine
Cisco PRE-2 专为满足互联网电信运营商(ISP)对高容量、租用专线汇聚及带成熟 IP 服务的宽带汇聚
的需要而设计, 它采用了思科荣获专利的并行快速转发(PXF)技术。PXF 是一个并行多处理器架构, 可部
署多项 IP 服务并保持峰值性能吞吐率。
Cisco 10000 PRE-2 的优势包括:
在 Cisco 10000 系列中提供高达 6.2mpps 处理能力
每插槽支持高达 6.4Gbps 双工性能的背板
使用思科专利 PXF 技术来提供最高 IP 服务性能
支持处理器冗余性--用于实现 99.999%网络正常运行时间
P a g e | 336
CCIE R/S & Service Provider Exam Certification Guide
通过使用 PXF, Cisco 10000 PRE-2 将控制面板功能从数据面板功能中分离开来。一个通用目的 RISC
处理器(500MHz mips RM7000)支持分组交换、管理和配置的控制面板功能。
多个 PXF 网络处理支持数据面板功能--这其中包括高性能第 3 层转发。通用目的 RISC 处理器与高
级可编程 PXF 网络处理器的组合, 提供了最高灵活性并可保持关键 IP 服务的最高吞吐率, 这些关键 IP 服
务包括服务质量(QoS)、多协议标签交换(MPLS)和访问策略过滤。如欲了解 PRE-2 上支持的软件特性的具
体列表, 请参见:
http://wwwin.cisco.com/rtg/routers/products/10000/files/10k_SW_roadmap.xls
16.12.3
Cisco 10000 线卡
Cisco 10000 Series 8-Port E3/DS3 ATM Line Card
Cisco 10000 Series 8-Port E3/DS3 ATM Line Card 具有高性
能可编程划分和重组(SAR)特性, 可适于各种应用, 包括先进
的流量管理、信元安排和集成化缓存管理。SAR 的可编程特
性能灵活地进行软件升级并支持新标准。通过在 Cisco 10000
系列 ATM 线卡上将 IP 服务类别映射至 ATM 服务质量(QoS),
可在 IP 和 ATM 混合网络上有效管理关键任务数据流。
主要特性和优势
每虚拟电路和每虚拟路径流量整形--Cisco 10000 Series 8-Port E3/DS3 ATM Line Card 支
持每虚拟电路和每虚拟路径流量整形, 在每条配置的虚拟电路和虚拟路径上提供灵活性和控
制。每虚拟电路和每虚拟路径流量整形使突发流量符合预定合同, 确保一条虚拟电路的过量
流量不会引发其他虚拟电路上的数据丢失。当连接至 ATM WAN 或公共 ATM 网络, ATM 交换
机可能会在其进入点丢弃过量流量时, 此功能非常重要。
基于硬件的流量整形--Cisco 10000 Series 8-Port E3/DS3 ATM Line Card 支持在 Cisco
10000 系列性能路由引擎(PRE)的高性能并行快速转发(PXF)网络处理器上的 IP 层流量整形。此
模块上支持 ATM 层流量整形。硬件中支持流量整形意味着, 在启动流量整形时不会降低性能
并可获得线速性能。
实现互操作、基于标准的 ATM 实施--8 端口 E3/DS3 ATM 线卡是基于标准的 ATM 接口,
使客户可将 Cisco 10000 系列集成入现有的 ATM 网络。通过实施基于标准的 ATM, 思科保证
客户将能方便、快捷地将 Cisco 10000 系列集成入他们当前的 ATM 网络。此外, 通过使用标
准操作、控制和管理(OA&M)F4 和 F5, 客户将从更低管理和控制开支以及更出色的整体可管
理性获益。网络管理员可受益于 E3/DS3 ATM 模块上 Cisco 10000 系列的流量管理和 QoS 特性。
Cisco 10000 Series OC-48c/STM-16 Packet over SONET/SDH Line Card
Cisco 10000 Series OC-48c/STM-16 POS Line Card 是一个高容量、高性能接口, 为 ISP 提
供了使用其现有光纤站实现带宽极大提高的机会, 并具有业界领先的网络弹性和故障容
许特性。ISP 可通过此提高的接口容量, 更为有效地使用现有资源来向其不断扩大的客户
群提供新的经济有效的 IP 服务水平。
Cisco 10000 Series OC-48c/STM-16 POS Line Card 支持 2.488Gbps POS 流量、
OC-48c/STM-16 带宽。此全高线卡可用于 Cisco 10000 系列机箱中的任何线卡插槽。
OC-48c/STM-16 线卡是 POS 的标准实施。它支持多种先进特性, 如 SONET 自动保护切换
(APS)、SDH 多路复用网段保护(MSP)、报警处理和性能监控, 且与 Cisco 12000 系列和 Cisco
7600 系列等平台上基于标准的 POS 实施完全兼容。请注意此硬件已经为交换--路由--处
理器(SRP)就绪, 但现在该平台上不支持 SRP 功能。
P a g e | 337
CCIE R/S & Service Provider Exam Certification Guide
16.12.4
Cisco 10720 互联网路由器
高性能 Cisco 10720 互联网路由器是新一代城域 IP 网
络中的主要模块, 使电信运营商能够以光速为其客户提供
全新的个性化 IP 服务。Cisco 10720 采用了便于客户接入的
以太网技术以及全新的动态分组传输(DPT)技术, 借助它,
电信运营商不但能使 IP 服务更加贴近用户, 还能更好地控
制对网络资源的管理。
Cisco 10720 是一种经济有效的可靠平台, 它采用了
Cisco IOS?软件和并行快速转发(PXF)技术, 不但支持全套 IP
路由协议, 例如中间系统到中间系统(IS-IS)、开放最短路径
优化(OSPF)和边缘网关协议(BGP)等, 还能提供增值服务。
利用 Cisco 10720, 无需降低性能就能有效提供先进功能, 例如虚拟专用网(VPN)、IP 语音(VoIP)和透明 LAN
服务(TLS)。
在过去几年里, 随着互联网上带宽密集型应用的快速发展, 对互联网连接的需求也在飞速增长。目
前, 电信运营商正在寻求更好的技术, 以便以更快的速度提供互联网接入, 并通过向客户提供增值服务
而区别于竞争对手。传统的光网产品, 例如同步光网(SONET)分插多路复用器(ADM), 只适合提供语音服
务。为提供高速互联网接入, 电信运营商不得不再叠加部署一个 IP 网络, 但这种网络不但复杂, 难于管
理, 而且带宽使用效率低。Cisco 10720 系列可以直接用光纤部署, 使电信运营商无需建立 SONET 或同步
数字层次(SDH)光传输基础设施就能提供 IP+光接入, 与此同时, 还能保持电信级 SONET/SDH 特性, 以便
于管理和恢复。
16.12.5
Cisco 10000 应用指南
宽带远程接入服务器(BRAS)
c10000 可以在电信运营商的接入网络和核心 IP 网络之间提供汇聚和连接服务。
接入网络主要包含两个组成部分:总部和客户终端之间的 DSL 连接, 以及一个将总部连接到电信
运营商 PoP(接入点)的 ATM 网络。
接入网络负责成批地将用户连接发送到电信运营商的 IP 边缘。
核心网络通常由高速路由器构成, 它们通过高速光纤交织在一起, 可以在区域 PoP 和对等点之间提
供连接, 从而提供互联网接入。
c10000 在接入技术的汇聚和端接、身份认证服务, 以及进出核心的 IP 分组的交换和路由方面扮演
着非常重要的角色。
P a g e | 338
CCIE R/S & Service Provider Exam Certification Guide
c10000 宽带接入集中器的基本属性
ATM 服务:
c10000 提供了一套完整的 ATM 接口——从 DS3/E3 铜缆接口到 OC12/STM4 高速光纤接口。
同时它还具有业界领先的密度和最高的虚拟电路可扩展性。c10000 提供多种 ATM 服务等级,
包括 UBR、UBR+、VBR-nrt 和 CBR, 并且可以在 VC 和 VP 层进行可扩展的、准确的整形。
可扩展的配置服务:
业界领先的 AAA/Radius 服务, 可以利用“VC Range”应用进行批量配置, 利用“Auto-Configure”
应用对 VC 进行零接触配置。
范围最广泛的高级服务:
利用 PXF 自适应处理架构, c10000 提供了多种基于单个 VC 的服务, 并且对系统的性能和可扩
展性没有任何影响。从单 VC ACL、IP 组播到广泛的 IP QoS, 该系统将以高价值的嵌入式服务
继续在业界保持领先。
高可用性:
在过去三年中, c10000 以其独有的高可用性功能在边缘专线汇聚领域树立了标准。很多同类
技术和应用被广泛地应用于宽带领域, 从而让电信运营商可以放心地扩展用户进程和提高性
能, 而不需要担心网络发生中断。随着 c10000A 上用户汇聚密度的不断提高, 电信运营商对
于高级 HA 功能的需求也将不断增长。
基于第二层隧道协议(L2TP) 的架构
很多电信运营商可以提供对采用 DSL 连接的用户的“访问”, 以提供批量服务。换句话说, 每
月它们会将一定比例的用户连接“移交”给互联网电信运营商。这里涉及到很多复杂的国家和服
务法规问题, 但这不属于本应用指南的讨论范围。在某些情况下, 电信运营商需要提供零售和批量
服务。零售服务通常用于它“自己的”ISP, 并将采用一种 PTA 架构, 而批量服务则提供给其他 ISP,
将使用隧道技术, 例如 L2TP。
L2TP 技术让电信运营商可以将用户 PPP 进程(成批地)提供给位于某个特定远程地点的 ISP。而
且, 它可以将身份认证和 IP 地址管理任务服务移交给目的地 ISP。
L2TP 架构模式中主要采用了两种设备:L2TP 接入集中器 (LAC ) 和 L2TP 网络服务器。c10000
通常配置为 LAC。
LAC 位于电信运营商 PoP, 可以为第二层接入介质(例如 ATM)提供汇聚功能。它还可以为进入
相应的 ISP L2TP“隧道”的用户进程提供一种 PPP“交换”服务。在进程到达目的地 ISP 的 LNS 以
后, PPP 进程将接受到全面的身份验证, IP 服务随后也将启动。来自 LNS 的用户 IP 分组将被发送到
互联网。
MPLS 供应商边缘应用
大部分电信运营商目前都将第三层 VPN 服务作为互联网接入的一项增值服务产品。MPLS 技
术让电信运营商能够以外包方式为中小型企业提供 VPN 服务。这种“一劳永逸”的网络设计方法
P a g e | 339
CCIE R/S & Service Provider Exam Certification Guide
可以为 VPN 服务和产品提供很高的可扩展性和灵活性。MPLS 电信运营商边缘功能, 以及多种相关
的功能和服务都是在 c10000 上提供的, 因为它支持各种接口和封装——从低速的宽带, 传统的专
线到高速的以太网。
16.13 Cisco 1200系列
16.13.1
Cisco 12000 体系结构
12000 系列路由器平台是为支持在广域网和城域网骨干上提供
千兆位传输速率而设计的。它的设计目标就是为了能够将 Internet
或企业网主干速度提升至 2 到 4 千兆位的速率。这相当于一个
OC-48SONET 连接的总带宽。Cisco12000 系列对只使用 IP 的网络进行
了优化处理, 因此它为基于 IP 的网络提供了一种高速骨干基层结构。
另外它在处理通过 OC-48SONET 连接的 OC-3 上的能力, 使得网络工
程师可以在 5~60Gbps 范围内扩充骨干交换能力。12000 系列以提供
一个核心骨干、且以最大不间断工作时间和最小的中断时间为目标
而设计。这些特性可以在它的体系结构中体现出来。
冗余交换结构设计。
线卡冗余。
双千兆路由处理器。
在线软件配置。
Cisco12000 系列路由器的交换速度由两种卡的同步电路系统决定:时钟和调度卡(Clockand
SchedulerCard, CSC)与交换结构卡(SwitchFabricCard, SFC), CSC 和 SFC 都为系统线卡之间提供了一个 OC-12
交换带宽。每种类型的卡都有一个 15Gbps 的交换容量。路由器中最少要有一个 CSC,
CSC 为路由器执行下列功能:
系统时钟:时钟滴答被送往所有线卡、GRP 和 SFC。它对系统中各种组件之间的数据传
输进行同步, 在冗余模式下, CSC 时钟为了应付故障, 也被同步。
调度:调度功能处理来自线卡的请求, 并在线卡访问交换结构时进行调度。
SFC 为路由器执行以下功能:
只包含交换结构。
承载线卡和 GRP 之间的传输。
接收来自 CSC 的调度和时钟。
Cisco12000 路由器的座架配置由一上、一下两个框架组成, 上层除了安装千兆位路由处理器
(GbitRouteProcessor,GRP)卡外, 主要还用于连接到网上的线卡。下层框架则是通过额外的 SFC 安装插槽
P a g e | 340
CCIE R/S & Service Provider Exam Certification Guide
来补充 12000 系列路由器进行交换的能力。
12000 系列有三种机型:12004、12008 以及 12012。
Cisco12004 系列
Cisco12004 系列是 12000 系列中最小的一个。它一共有 4 个接口插槽以及两个 GRP 插槽。12004
系列支持 12000 系列应用的所有接口, 它通常是用在具有最少连接请求的 IPSONET 骨干网上, 比较
典型的情况是用于 OC-3 和 OC-12 接口连接。12004 具有 5Gbps 大小的 IP 数据报交换容量。在单个
CSC 配置中, 12004 支持 OC-12 的数据速率, 并有一个 1.25Gbps 的交换容量, 如果使用冗余的上层
框架的位于两个中心插槽的 CSC 和三个下层框架的 SFC, 12004 可以支持 OC-48 的数据速率, 并有
5Gbps 的交换容量。在具有冗余 GRP 配置中, 12004 有两个线卡插槽用于网络连接。
Cisco12008 系列
Cisco12008 可以在 10~40Gbps 的范围内交换 IP 数据报。对 Cisco12008 的最小配置要求是至
少一个 GRP 和一个 CSC。如图所示, CSC 必须被放置在 12008 上层框架两个中心插槽中的一个。另
一个 CSC 可以放置在用于冗余的空 CSC 插槽上。GRP 可以被放置于剩余插槽中的任意一个。另一
个冗余 GRP 也可放置于任一个剩余插槽上。使用冗余 GRP 为线卡的连接留出了六个可用插槽。下
层框架则含有三个由 SFC 使用的可选插槽。
第二个 CSC 的安装并不增加交换容量而是提供冗余。另外, 增加三个 SFC 使得路由器可从拥
有 10Gbps 交换容量的 OC-12 提升至可支持 40Gbps 交换容量的 OC-48, 并且具有完全的冗余, 不必
担心 CSC 或单个 SFC 发生故障。
Cisco12012 系列
Cisco12012 在任何地方都可以提供 15~60Gbps 的 IP 数据报交换容量。12012 通过扩展下层
P a g e | 341
CCIE R/S & Service Provider Exam Certification Guide
框架来增加接口密度, 12012 的下层框架包含 5 个关键插槽, 如图所示, CSC 置于插槽 0 或 1, SFC 置
于插槽 2 至 4。GRP 仍然被安装在上层框架。在具有冗余 GRP 的配置中, 有 10 个空的线卡插槽用
于网络连接。单个 CSC 的配置可支持 OC-12 的数据速率及 15Gbps 的交换容量。安装有三个 SFC 的
冗余 CSC 配置则可使 12012 支持 OC-48 的数据速率和 60Gbps 的交换容量。
Cisco12016 系列
Cisco 12016 GSR, 它 提 供 80Gbps 的 增 强 型 交 换 容 量 , 且 可 扩 展 到
320Gbps,从而帮助客户满足网络中不断增长的带宽需求。这种 16 槽的 Cisco
12016 GSR 配备有业界领先的线路卡系列, 及信道化的 OC12/STM-4 接口, 这
些线路卡包括 DS3、OC3c/STM-1(PoS)、OC-3c/STM-1 ATM、OC-12c/STM-4 PoS、
OC-12c/STM-4 ATM、OC-48c/STM-16 PoS、OC-192c/STM-48 PoS、千兆比
特以太网、快速以太网、OC-12c/STM-4 和 OC-48c/STM-16 动态分组传输(DPT)。
在开发 Cisco 12016 GSR 的过程中, 我们特别注重保护现有的投资, 因此客户当
前的所有 Cisco 12000 系列线路卡均可在 Cisco 12016 GSR 上使用。
Cisco 12016 GSR 的所有主要系统组件都有内置的完善的冗余配置, 这些
组件包括交换机快速时钟高度程序、路由处理器、电源和风扇组件。Cisco 12016
GSR 支持同步光纤网络(SONET)自动保护切换(APS) 和同步数字序列(SDH)复用
选择保护(MSP), 从而提供网络级冗余。目前的分组存储转发结构基于 16×16
交换结构, 可扩展到 64×64 交叉矩阵, 而无队头阻塞。广泛地使用高速应用
专用的集成电路(ASIC)确保了以最低的延迟按线速存储转发实时业务, 这个结
构还包含优化机制, 实现硬件中的组播业务复制, 从而大大增加这个重要的未
来技术的性能。
Cisco 12016 GSR 提供专门面向供应商的 Cisco IOS 12.0 S 版, 这个版本包
含业界领先且经过部署测试的 Cisco IOS 软件包。其丰富的特性(如 Cisco 快速
存储转发 CEF)实现了路由器中数据包的分布式存储转发, 并允许它随着业务
负载的增加而线性扩展。Cisco IOS 软件还带有强大的 IP 路由选择协议特性, 这
些特性在 Internet 和企业环境中运行时间已超过 10 年。Cisco 12016 GSR 丰富
的特性中还含的业界领先的 Cisco 多协议标签交换(MPLS)系列, 包括支持业务
量管理、虚拟专用网(VPN)和连接业务。Cisco 12016 GSR 提供一组业界领先的
P a g e | 342
CCIE R/S & Service Provider Exam Certification Guide
业务创建特性, 可实现 VPN、实现内容组播和 VoIP 等业务。
16.13.2
Cisco 12000 应用
12000 系列放置在网络的正中心, 因为它特别适于传送 IP 信息, 因此必须对这些网络进行设计以使
IP 信息流只通过这些路由器。举个例子, 在一个基于 IP 和 SNA 的网络中, SNA 数据必须使用 RSRB 或 DLSw+
并采用 TCP 或 FST 封装技术。采取这种方式, 高速骨干就能将远地机连接到主数据中心。同样, 使用
VoiceoverIP 时, 在发送到 12000 系列骨干路由器之前路由器或 PBX 必须将声音数据封装进 IP 报文。基
于这种应用方法, 12000 系列对于以下应用特别理想。
Internet 服务提供商(ISP)。
提供 Internet 服务和应用的承载者。
竞争性访问提供者(CAP)。
企业广域网骨干。
城域网骨干。
16.13.3
Cisco 12000 交换处理器
Cisco12000 千兆路由处理器采用的
是 IDTR5000 RISC CPU。这种处理器如图所
示, 它有一个 100MHz 的外部时钟和一个
200MHz 的内部时钟。所有的 Cisco12000
系列的机型都采用同一种 GRP 卡。GRP
可以被安装在 12012 上除最右侧插槽的
所有插槽上, 最右侧的插槽被保留用作
报警卡。标准的操作是将第一块 GRP 卡
安装在最左侧的插槽上。在 12008 中, GRP
可以被安装在上层框架的任何插槽中 ,
但不包括两个中心插槽, 该插槽被保留
给 CSC 卡使用。
Cisco 12000-RPR-2
Cisco
12000 系列性能路由处理器-2(RPR-2)是为所有 Cisco 12000 系列路由器开发的新一代路由处
理器。PRP-2 能提供 4GB 内存、一个千兆位以太网管理端口和一个硬盘驱动器, 在执行多数系统任务时,
都能够将性能改善 100%。PRP-2 不但提供服务和网络融合所需的扩展能力, 还提供大厦集成分时供应
(BITS)接口, 这是 Cisco 12000 系列 BITS 体系结构的组件之一, 能够实现 Cisco 12000 系列的网络服务同步。
Cisco 12000 系列 PRP-2 代表了最新的路由处理技术, 这种处理器能够大大提高千兆位和兆兆位路
由应用的 IP 路由融合水平,将内存量增加了两倍, 支持 400 多万条路径, 为当前和未来支持最大的共用和
专用应用提供了很大的余量,提供 BITS 接口, 以实现 Cisco 12000 系列的网络服务同步(将来实现)
P a g e | 343
CCIE R/S & Service Provider Exam Certification Guide
提供业界最完整的高可用性特性集, 能保证最高的服务可用性:
Cisco NSF
MPLS 快速重路由(MPLS-FRR)
Cisco SSO
动态分组传输—智能保护交换(DPT-IPS)
RPR+
SONET APS
HSRP/VRRP
SDH MSP
不影响服务的联机插入和删除
Cisco PRP-2 是业界领先的路由解决方案系列 Cisco 12000 系列的一部分, Cisco 12000 系列的每插槽
容量能够从 2.5Gbps 扩展到 40Gbps, 因而能够服务于电信级 IP/MPLS 核心和边缘网络。这个产品系列利
用了最先进的芯片技术和智能软件技术, 能提供无与伦比的路由性能、卓越的 QoS 功能、成熟的高可用
性、全面的第 2 层/第 3 层服务以及完全集成的核心和边缘特性集。
16.13.4
Cisco 12000 系列储存器
每个 GRP 上都带有 64M 的动态随机访问存储器(DRAM), 该存储器可被升级为 256MB 的带奇偶校
验 的 扩 展 数 据 输 出 (EDO)DRAM 。 这 种 DRAM 采 用 了 两 个 运 行 在 60ns 的 双 嵌 入 存 储 模 块
(DualIn-lineMemoryModule,DIMM)。GRP 使用 DRAM 来存储系统软件(CiscoIOS), 配置文件和线卡的路由
表。CiscoIOS 从 DRAM 启动运行, 下表列出了 DRAM 的插槽和从 64M 升级到 256M 的 DRAM 配置。
除 DRAM 之外, GRP 也含有静态随机访问存储器(StaticRAM, SRAM)和非易失性随机访问存储器
(Non-volatileRAM, NVRAM)。在这里 SRAM 提供了 512KB 的二级 CPU 缓存。SRAM 不能由用户配置, 也不
能被升级。SRAM 主要是作为一个发送或接收线卡的路由表暂存区域。512KB 的 NVRAM 存储的是路由
器的配置、系统缓存信息和 ROM(Read-onlymemory, 只读存储器)监测变量。存储在 NVRAM 的信息即使
在路由器掉电后仍然存在, 与之相比 SRAM 和 DRAM 均丢失了存储的信息。与 SRAM 相似, NVRAM 不能
由用户进行配置, 也不能被升级。
GRP 也利用闪存。在 GRP 中有一个 8GB 的单嵌入存储模块(SingleInlineMemoryModule, SIMM)用于
存储 CiscoIOS 软件映象和路由器配置, 以及其他类型的端用户文件。另外, 这块板子上唯一的闪存也可
与安装在 GRP 插槽上的 20MB 的 PCMCIA 闪存卡(一共 40MB)接合起来, 这样每块卡都可以存储 CiscoIOS
软件映象和其他路由器运行所需文件。
为了支持方便的操作, GRP 使得用户可以通过一个 IEEE802.310/100Mbps 以太网接口中的用于
Telnet 连接的辅助拨号端口来对 Cisco12000 路由器进行远程访问。另外, GRP 还有一个 RS232 的控制台
端口可以用 PC 机直接与路由器串行连接。
GRP 可以被安装在 Cisco12000 系列路由器上层框架的任何一个插槽中, 不过有一个例外, 那就是
Cisco12012 要求 GRP 不能插在最右侧插槽中, 该插槽保留给报警卡使用。
16.13.5
Cisco 12000 系列线卡
每块线卡都由一些各种卡共有的功能组成。线卡使用突发缓冲区来防止当紧密连接的排队等待发
送的小报文突然增加时丢失报文。突发缓冲区对于进行第三层交换处理的报文来说, 增加了通过率并维
持了一个比较平稳的报文突发。
每一个线卡都含有两个硅队列引擎(siliconqueuingengine), 一个用于接收另一个用于发送。接收引
P a g e | 344
CCIE R/S & Service Provider Exam Certification Guide
擎从突发缓冲区中将报文移至交换结构, 而发送引擎则将报文从交换结构移到传输接口。硅引擎也负责
管理缓冲区中 IP 报文的移动, 缓冲区缺省为 32MB, 平均分配给发送和接收缓冲。可用缓冲区总数可以
配置到传送和接收各 64MB。一块专用集成电路(application-specificintegratedcircuit, ASIC)被用于支持第
二层交换所要求的高速处理。为了支持决策, 在线卡上使用了一块 IDTR5000200MHz 的 RISC 处理器, 并
在 Cisco 快速转发表和报文中层 2 和层 3 信息的基础上, 作出转发决策。GRP 不断地利用从路由表收集
的信息更新该表。
线卡也含有一交换结构接口, 这与 GRP 使用的 1.25Gbps 全双工数据通道是一样的。当有一个报文
位于适当的队列时, 交换结构请求 CSC 来调度报文传递通过交换结构。另外线卡上还有一个维护总线模
块为 GRP 的主 Mbus 模块提供所需信息, 这些信息是一些关于温度和电压的报告。而且, 线卡上的 Mbus
还将序列号、硬件修正级以及其他与卡相关的信息存储在 EEPROM 中。
每个线卡上都维护有一个 Cisco 快速转发(CiscoExpressForwarding, CEF)表。该表建立在 GRP 提供的
路由表信息上, 并且用来作出转发决策。
12000 系列路由器可以使用多种线卡与网络相连:
QuadOC-3c/STM-1cPacket-Over-SONET(POS)
QuadOC-3ATM 线卡
OC-12c/STM-4cPacket-Over-SONET(POS)
OC-12c/STM-4c 异步传输模式(ATM)
OC-48c/STM16 光纤 IP 接口卡
通道化 OC-12 线卡
OC-192c/STM-64c Packet-Over-SONET(POS)
2 端口 OC-192c/STM-64c POS 线卡
服务供应商现需扩展 IP/多协议标签交换
(MPLS)分组基础设施、以满足对更高容量和服务
可用性的不断增加的需求。Cisco 12000 系列 2 端
口 OC-192c/STM-64c POS 线卡(2 端口 OC-192 POS)
提供了先进技术, 经济有效地将电信级 IP/MPLS
分组基础设施扩展到每线卡 50Mpps。Cisco 2 端
口 OC-192 POS 线卡由 Cisco 12800 路由器支持。
Cisco 12000 系列提供了业界唯一无需大量硬件投
资的升级, 即能将容量从 2.5Gbps(2.5G)/插槽扩展到 40 Gbps(40G)/插槽的可现场升级的路由平台。Cisco 2
端口 OC-192 POS 线卡与 40 Gbps/插槽 Cisco 12800 路由器共用, 可将 Cisco 12000 系列的转发容量扩展到
50Mpps。Cisco 2 端口 OC-192 POS 线卡具有一个专用第 3 层转发引擎, 提供了全面的 IP/MPLS 特性集, 包
括高级服务质量(QoS)、记帐(样本 NetFlow)、安全性和流量扩展, 以及承诺接入速率(CAR)——均以
50Mpps 的速度运行。此线卡使服务供应商可跟上下一代服务扩展的速度, 它以线速支持 100 多万前缀、
多达 256,000 个组播组, 并在输入和输出时都支持 32,000 多行访问控制列表(ACL)。
为实现最高灵活性, Cisco 2 端口 OC-192 POS 线卡配备了第三代光模块, 以改进元件集成、降低功耗
和成本。它与标准 OC-192c 和 STM-16 光接口完全兼容。可用光模块包括短距离(SR)、中距离(IR)、长距
离(LR)和超短距离(VSR)光模块。
P a g e | 345
CCIE R/S & Service Provider Exam Certification Guide
8 端口 OC-48c/STM-16c POS 线卡
Cisco 8 端口 OC-48 POS 线卡为服务供应商提供了下列优势:
领先的专用集成电路(ASIC)和内存技术
提供每插槽 50Mpps 的转发容量, 且允许服务供应商
使用现有电源和制冷基础设施, 以及以前的 Cisco
12000 系列机箱和线卡投资。
线速性能, 带丰富的 IP/MPLS 特性集
使服务供应商可通过一致、可预计吞吐率和每插槽服
务密度来最大限度地提供创收服务。
最高服务可用性
思科不间断转发(NSF)和状态切换(SSO)在不影响流量的情况下可从灾难性的路由
处理器故障中完全、自动地恢复。
Cisco 8 端口 OC-48 POS 线卡与 Cisco 12000 系列的分布式架构和 Cisco IOS 软件相结合, 提供
了通过下一代 IP/MPLS 实时和数据服务的增收工具。所支持的特性包括:
1.
对于输入和输出, 均支持有 32000 多项的扩展 ACL。在源或目的地 IP 地址和传输协议
基础上提供过滤。
2.
VPN 和组播应用的增强可扩展性。硬件支持 100 多万 IP 前缀和高达 256,000 个组播组。
3.
使用的 CAR 的限速、分类和带宽管理, 允许服务供应商控制对内部网络资源的访问,
针对拒绝服务(DoS)攻击进行保护, 并提供“按发展付款”带宽使用模式等服务。
4.
优先级标记(分组着色), 允许 IP 中的服务级(CoS)字段或 MPLS 中的 EXP 字段标为指定
QoS, 以实现不同服务级别。
5.
加权随机早期检测(WRED)拥塞控制/查询管理, 在丢弃高优先级流量的分组前选择性
地丢弃低优先级流量。
6.
带低延迟排序的修改后差分循环(MDRR), 提供了基于级别的分组排序, 控制分组出队
过程, 保证不同的流量获得不同的传输延迟。
7.
流量整形, 帮助服务供应商吸收输入和输出方向的“突发”流量, 构建分层服务模式,
为内部网络资源和客户网络提供平稳的流量传输。
8.
链路捆绑, 在多条链路上实现负载共享。
骨干网或运作点(POP)内连接——凭借其专用第 3 层转发引擎以线速提供的丰富 IP/MPLS 特性
集, Cisco 8 端口 OC-48 POS 线卡提供了骨干网和 POP 内应用所需的转发性能和接口密度。
P a g e | 346
CCIE R/S & Service Provider Exam Certification Guide
高速 peering——Cisco 8 端口 OC-48 POS 线卡非常适于需线速性能及深层 ACL、记帐、流量整
形、监管等特性和单播反向路径转发(Urpf)等安全特性的高速对等点。
GSR 12000 OC-12c/STM-4c 分组环网线路插卡
Cisco 公司动态分组传送(DPT)产品定义了一种新一代的传送技术-分组优化光传送方案。
IP 路由选择技术能够提供多业务能力及高效率的带宽应用, 而光纤环网技术能够提供充足的带
宽及自愈能力, 这些方案(DPT)将上述两
种技术结合在一起。与现有相关的传送技
术相比, DPT 技术在成本和功能上展示了
其优越性。 DPT 环网是双纤环网, 两根
光纤上传送方向相反。两根光纤同时用来
传送数据和控制业务。
空间再利用协议
SRP 是与 MAC 层相独立的协议,
在环网配置中实现 DPT 功能。SRP
MAC 提供了基本的功能, 包括寻址,
分组剥离, 带宽控制, 以及在分组环网中控制信息的传播。
传送的灵活性和演进
DPT 环网可以在多种传送技术上运行, 包括
SONET/SDH, 波分复用(WDM), 以及裸光纤。DPT 使
运营商能够灵活地在他们已有的光纤传送网上操作
分组环网, 同样可以演进到传送宽带宽 IP 的分组优
化网络。DPT 线路插卡同样提供了多模、单模中距离
光接口和单模长距离光接口, 满足不同的应用要求。
空间再利用
DPT 环网分组处理过程采用目的端删除技术-分组在预计的目的节点上从环网中删
除掉, 而不是在整个环网中一直用这个波长。因此, DPT 提供了逐个分组的空间再利用技术,
使得环网中多个部分能够以相同的波长交换业务而不会相互干扰。
P a g e | 347
CCIE R/S & Service Provider Exam Certification Guide
环网带宽复用
DPT 推动了优化路径选择, 空间再利用, 统计复用和两根光纤上同时传送业务等技术
的发展, 扩大了环网传送业务的能力, 并且减少了初期和后期的成本。DPT 环网利用即将成
为专利的 SRP 公平算法(SRP-fa), 以保证整个环网中的每一个部分做到全环公平和本地带宽
优化。
DPT 将可靠的 SONET/SDH 开销处理过程与层 2 的管理功能结合在一起, 实现主动、多
层性能监测, 故障检测和故障分离的功能。通过即将成为专利的智能保护倒换(IPS)算法,
DPT 为应答式自愈提供了微妙的保护倒换功能。IPS 保证在少于 50ms 内实现快速 IP 业务的
恢复和保护, 并且对多种, 同时出现的衰减, 故障或已经存在的事件进行分等级地恢复和
保护。
DPT 环网利用自动的地址指配和消除技术, 发现环网拓扑和状态的技术, 以及控制信
息传播的技术, 优化环网路由选择和管理过程。业务提供商可以快速操作 DPT 环网, 向环
网中添加或从环网中删除节点, 同时减少了在指配和配置过程中花费的资金和时间。
16.13.6 Cisco 12400 系列
Cisco 12400 系列是 12000 系列的一个升级版本, 提高了背板带宽和每线卡带宽。Cisco 12400
Internet 路由器可提供高性能、高交换容量和高端口密度的万兆路由平台, 可用于在不同的服务供应商
及 Internet 服务供应商(ISP)应用中部署业务。Cisco 12000 Internet 路由器是 Cisco IP+Optical 战略的重要
组成部分。
主要特性 :
可扩展的平台容量-Cisco 12400Internet 路由
器具有每板 20Gbps 的插槽, 可提供最大 320Gbps 的
集合交换容量。
分布式体系结构-分布式数据包转发是在一个
简单的纵横制交换矩阵(不具有存储功能)和单个线
路卡转发引擎(带有数据包缓冲器)上进行, 能够确保
每个插槽的线速。该线路卡可以进行组播复制, 支持
广播和组播视频流业务, 而且不影响线路卡的业务
级别, 能够支持要求将等待时间和抖动频率减至最
少的业务。
多种业务接口-Cisco 12400 Internet 路由器支
持多种接口、平台间的互换以及对传统卡的支持可以
确保 Cisco 12400 Internet 路由器能够提供必要的接
口技术. 基于 ASIC 的分组转发和增值特性, 如 COS
以全接口速度支持线速性能。
电信级的可靠性-Cisco 12400 Internet 路由器
完全符合网络设备构建系统(NEBS)对运营商级网络
设备的要求, 以符合业界的安全规则及标准。该机柜
包括冗余路由处理器、交换结构卡、时钟调度程序卡
和电源。
P a g e | 348
CCIE R/S & Service Provider Exam Certification Guide
Cisco 12400 系列转发引擎特性
Engine 0 大部分特性都是基于软件
Engine 1 在 ENGINE 0 的基础上增加了硬件 ASIC Salsa 用于 ip 寻址, 但 mac 地址转换基于软
件, 不支持 mdrr,wred
Engine 2 采用新的 ASIC PSA 执行基于硬件的 IP/MPLS 的寻址, PSA 不支持的特性将由 CPU 来
执行 ACL,outputCAR,multicast packet ,ipv6
Engine 3 全新设计的架构, 集成许多新的 ASIC 芯片用以增强 ACL,QOS 的处理速度。线速支
持 OC48
Engine 4 线速支持 OC192, 包转发率到 25MPPS,但不支持在 GSR12008,GSR12012 应用。
GSR12400 路由器产品性能参数表
类型
GRP 主控板 CPU 处理器
处理器速度(FSB/Core)
SRAM
缺省 DRAM 容量
最大 DRAM 容量
交换容量
交换模块
业务槽数
VLAN 数目
ACL 数目(ENGINE4)
转发性能
路由表容量
OC192 POS
10GE
16.13.7
GSR12416
RS5000
100/200MHz
512k
128M
512M
320Gbps
5
15
1024
1024/板
375MPPS
100 万
15
15
GSR12410
RS5000
100/200MHz
512k
128M
256M
200Gbps
5
9
1024
1024/板
225MPPS
100 万
9
9
GSR12406
RS5000
100/200MHz
512k
128M
256M
120Gbps
5
5
1024
1024/板
125MPPS
100 万
5
5
GSR12404
RS5000
100/200MHz
512k
128M
256M
80Gbps
1
3
1024
1024/板
75MPPS
100 万
3
3
Cisco 12800 系列
2004 年 3 月 11 日, 思科系统中国公司在北京发
布了其全新的 Cisco 12800 路由器及相关解决方案。
Cisco 12800 的交换能力可达到 1.28Tbps, 是业界第一
个经过实践检验的兆兆位系统。
Cisco 12800 路由器及相关解决方案不仅是对思
科公司传统网络技术的传承, 更是新时期内对 IP 网络
发展的技术创新, 在业务适应性、可管理性、降低成
本等方面都有相当好的提升。思科公司 Cisco 12800 路
由器及解决方案符合了业界的发展趋势, 能够满足 IP
全业务、电信级运营需求, 代表了新一代电信网络技
术的发展方向。
Cisco 12800 构建于 Cisco 12000 系列路由器分布式结构之上, 至今该设备性能比原有的 Cisco 12000
有了数倍的增长, 达到了质的提升, 这不仅证明 Cisco 12000 系列路由器分布式体系结构具有很好的规模
可扩展性, 同时也表明 Cisco 尤其重视客户的投资保护。 原有的 Cisco 12000/12400 可以平滑地升级到新
的 Cisco 12800 系列, 在保护用户原有投资的同时, 提升数倍的性能。
P a g e | 349
CCIE R/S & Service Provider Exam Certification Guide
Cisco 12800 系列每个插槽的容量为 40Gbps(40G), 并拥有了高密度 OC-192 和 OC-48 端口的模块,
可以支持集中式和分布式分组转发, 大大提升了数据转发速度。Cisco 12800 能够全面满足语音、数据、
视频全业务传送, 提供丰富的 MPLS VPN、QoS、组播等增值业务, 能够充分满足我国新一代骨干网络面
向全业务支撑网络发展, 全面提升网络价值的需求。
Cisco 12810 Router
Cisco® 12810 路 由 器 有 10 个 插 槽 , 每 个 插 槽 的 速 度 为
40Gbps(40G)。它不但能用于建立高端 IP/MPLS 核心网络, 还能用
于支持高速边缘服务, 而且能够放置在半高机架的机箱中。Cisco
12810 路由器的交换能力为 800Gbps, 并具有线速性能、高扩展能
力和投资保护功能。通过模块化矩阵升级, 原有的 Cisco 12410 路
由器的每插槽容量可以现场升级到 Cisco 12810 的 40G 水平。Cisco
12810 路由器是业界智能化水平最高的路由解决方案 Cisco 12000
系列中的一员, 每插槽容量可以从 2.5Gbps(2.5G)扩展到 40G。
Cisco 12816 Router
Cisco® 12816 路由器是业界第一个经过实践检验兆兆位系统, 不但能用于建立高端
IP/MPLS 核心网络, 还能用于支持高速边缘服务。它具有 16 个插槽, 每个插槽的容量为
40Gbps(40G), 可放置在全机架高的机箱中。Cisco 12816 路由器的交换能力为 1.28Tbps,
并具有线速性能、高扩展能力和投资保护功能。通过模块化矩阵升级, 原有的 Cisco 12416
和 Cisco 12016 路由器的每插槽容量可以现场升级到 Cisco 12816 的 40G 水平。
兼容性
软件兼容性
与当前的所有 Cisco 12000 系列线卡兼容
Cisco IOS 12.0(27)S 及更高版本
IPv4、MPLS、边缘网关协议第 4 版(BGPv4)、中间系统到中间系统
(IS-IS)、首先打开最短路径(OSPF)2.0 版、增强型内部网关路由协议
协议
(EIGRP)、路由信息协议(RIP)第 2 版、互联网小组管理协议(IGMP)、
远程向量组播路由协议(DVMRP)和协议独立型的组播密集模式/稀
疏模式(PIM DM/SM)。
每个基本系统包括:
 四个 DC 电源或三个 AC 电源
 一个路由处理器(GRP/PRP-1/PRP-2)

为线卡和 RP 配备的 16 插槽卡盒, 系统可以容纳 15 块线卡和 1
组件
个 RP, 或者 14 块线卡和 2 个 RP(1:1 冗余)

三块交换矩阵卡 
两块时钟排程器卡 
两套风扇装置 
电缆管理架 
两块警报卡
P a g e | 350
CCIE R/S & Service Provider Exam Certification Guide
1 端口 10 千兆位以太网
15 个 10 千兆位以太网端口
1 端口千兆位以太网
15 个千兆位以太网端口
3 端口千兆位以太网
45 个千兆位以太网端口
4 端口千兆位以太网
60 个千兆位以太网端口
8 端口快速以太网
120 个快速以太网端口
6 端口 E3
90 个 E3 端口
12 端口 E3
180 个 E3 端口
线
4 端口 OC-3c/STM-1 POS
60 个 OC-3c/STM-1 POS 端口
卡
4 端口 OC-3c/STM-1 ATM
60 个 OC-3c/STM-1 ATM 端口
16 端口 OC-3c/STM-1 POS
240 个 OC-3c/STM-1 POS 端口
6 端口通道化 T3(CT3)(168 T1)POS
90 个 CT3(15120 T1)POS
和
1 端口 OC-12c/STM-1 POS
15 个 OC-12c/STM-4 POS 端口
插
4 端口 OC-12c/STM-4 POS
60 个 OC-12c/STM-4 POS 端口
槽
1 端口 OC-12c/STM-1ATM
15 个 OC-12c/STM-4 ATM 端口
4 端口 OC-12c/STM-4 ATM
60 个 OC-12c/STM-4 ATM 端口
1 端口通道化 OC-12c/STM-4(12×DS-3)POS
15 个通道化 OC-12/STM-4(180×DS-3)POS
1 端口 OC-48c/STM-16 POS
15 个 OC-48c/STM-16 POS 端口
1 端口 OC-48c/STM-16 SRP
15 个 OC-48c/STM-16 SRP 端口
1 端口 OC-192c/STM-64c POS
15 个 OC-192c/STM-64c POS 端口
8 端口 OC-48c/STM-16c POS
120 个 OC-48c/STM-16c POS 端口
2 端口 OC-192c/STM-64c POS
30 个 OC-192c/STM-64c POS 端口
端
口
连接
POS、ATM、DPT、千兆位以太网和快速以太网
内存
取决于路由处理器, 通过 PRP-2 最高可达 4GB
GRP=千兆位路由处理器
PRP1 = 性能路由处理器 1
PRP2 = 性能路由处理器 2
GSR16-SFC = 交换矩阵卡
选项
GSR16-ALRM = 警报卡 GSR16-DISP = 显卡
GSR16-BLOWER = 风扇
PWR-GSR16-DC = DC 电源
PWR-GSR16-AC = AC 电源
GSR16/1280-CHASSIS = 带背板的 12816 机箱
性能
交换能力可达 1.28Tbps
P a g e | 351
CCIE R/S & Service Provider Exam Certification Guide
16.13.8
Cisco XR 12000 系列
Cisco® XR 12000 系列采用了 Cisco IOS XR 软件, 利用它, 电信运
营商能够将一台路由器虚拟划分为多个独立的物理和逻辑分区, 以
便隔离公用和专用服务。Cisco IOS XR 软件是一种独特的自治愈和自
防御操作系统, 它不但支持全天候运营, 还能不断扩容和添加新服
务或新特性。利用分布式处理智能以及强有力的服务质量(QoS)和组
播机制, Cisco XR 12000 系列能够帮助电信运营商扩展服务, 并帮助
客户提供性能。
Cisco® XR 12000 系列的立足点是保护原有投资, 因而提供每插
槽容量可以从 2.5Gbps 扩展到 n×10Gbps 的可全面升级的单机箱平台,
并能够将 Cisco 12000 系列的最新硬件发展与业界第一个完全模块化、完全分布式互联网操作系统 Cisco
IOS XR 软件有机地结合在一起。
Cisco XR 12000 主要特性
安全虚拟化
利用 Cisco XR 12000 上的思科服务分离架构(SSA), 电信运营商不但能将多个网络和多项服务融
合成一个“虚拟化”平台, 还能保持每个网络和每项服务的独立性和安全性, 以保证一项服务(例如,
公共互联网)的网络异常不会影响到另一项服务(例如专用 VPN)。为提高灵活性, 服务和客户是相互
隔离的。通过安全虚拟化实现的融合好处还包括:特性透明性、最优运作点(POP)设计以及因网络设
备减少而带来的运营开支(OpEx)和投资开支(CapEx)的降低。
Cisco SSA 可以在 Cisco XR 12000 上每个逻辑路由实例之间, 从物理角度完全隔离网络和系统
资源;
隔离每个路由实例的流量以及管理和控制面板功能。
连续系统运行
Cisco XR 12000 系列以业界惟一的自治愈和自防御操作系统 Cisco IOS XR 软件为基础。这个基
于微核的操作系统能够提供精确的流程独立性、错误抑制和隔离。利用这些独特的功能, 不需要中
P a g e | 352
CCIE R/S & Service Provider Exam Certification Guide
断服务就能对 Cisco XR 12000 系列执行维护、升级、增强和扩展。如果与 Cisco XR 12000 系列的分
布式架构和冗余组件配合使用, Cisco IOS XR 软件将支持运营商级基础设施, 实现“全天候”运行。
主要特性包括:
冗余电源、风扇、控制器和处理组件
提供数据、控制和管理面板隔离的分布式架构
通过冗余性、故障检测、隔离、容错和恢复实现
流程管理
服务中软件升级(ISSU), 支持不间断转发(NSF)以
及路由和信令协议的顺利重启扩展
通过在线增删(OIR)功能提供热插拔硬件支持
通过奇偶或错误纠正代码(ECC)内存执行硬件内
存错误检测和纠正
多服务扩展
利用分布式处理智能以及强大的 QoS 和组播机制, Cisco XR 12000 系列使电信运营商能够以
可以预测的性能扩展服务和客户。为支持高要求应用以及服务和客户的未来快速发展 , 配有
CiscoIOS XR 软件的 Cisco XR 12000 系列支持分布式处理, 不但可以为路由器添加路由处理器, 还
可以提供扩展能力更强、可用性更高的控制面板。处理能力提高不仅有利于改善性能和资源管理,
还有助于通过检查点和流程冗余性提高永续性。如果要将多种服务整合到一个平台上, 不仅需要强
大的 QoS 来保留与每项服务相关的服务等级协议(SLA), 还需要部署智能组播机制, 以便电信运营
商能够沿着服务价值链从基本传输上升到内容供应。主要特性包括:
Cisco IOS XR 软件将处理智能分布到每块思科 IP 服务引擎(ISE)线卡(即 OS 基础设施和应用、
第三层转发、线卡专用控制功能和分组操作)以及安装在系统中的其它路由处理器(即边界网
关协议[BGP]、中间系统到中间系统[IS-IS]等)上。分布式处理智能能够突破软件对系统扩展能
力的限制, 使网络运营商能够充分利用系统硬件的总处理能力。
ISE 线卡使用业界最先进的 2.5Gbps 和 10Gbps 应用专用集成电路(ASIC), 这种电路可以全面
编程, 以便支持多服务 IP 下一代网络需要的、不断变化的各种第三层特性集。
每块 ISE 线卡上的专用排序 ASIC 提供无与伦比的每个客户 QoS, 以便在不影响扩展能力或性
能的前提下减小视频以及对时间敏感的数据和语音应用的抖动和延迟。
为避免在线卡级复制帧的其它路由器中出现可能干扰服务的拥塞, 组播复制由交换矩阵处理。
利用数据、控制和管理面板之间的 Cisco IOS XR SSA, 可以在不影响服务的前提下部署新特性。
其模块化软件架构能够利用独立特性集包装加速服务供应, 以便单独安装、更新或删除组件。
Cisco XR 12000 产品架构
Cisco XR 12000 架构包括四个基本模块:
Cisco IOS XR 软件—— Cisco XR 12000 的核心是独特的自治愈
和自防御操作系统, 这种操作系统不但能支持全天候运作, 还能扩
展服务能力, 并增加新服务或新特性。Cisco IOS XR 软件充分利用了
ISE 线卡和 Cisco XR 12000 上的分布式智能和硬件功能, 以及 Cisco
XR 12000 路由器上 12000 系列性能路由处理器-2(PRP-2)技术。它还
大大增强了为需要数 TB 扩展能力的电信运营商 POP 设计的 IP 下一
代网络平台——Cisco CRS-1 运营商级路由系统(CRS-1), 不但能提供
P a g e | 353
CCIE R/S & Service Provider Exam Certification Guide
每插槽 2.5Gbps~40Gbps 的一致特性、服务和管理, 还能实现多机架配置。
Cisco XR 12000 多兆位交换矩阵——交换矩阵是所有路由器组件之间的高速互联, 包括路由
处理器和思科智能可编程接口处理器(Cisco ISE 线卡)。为提高部署灵活性, 每插槽带宽包括:
2.5Gbps、10Gbps 和 40Gbps。该矩阵既适合单播, 也适合组播, 并已同时得到了 Cisco 12000
和 Cisco XR 12000 系列的支持。
Cisco XR 12000 智能可编程接口处理器——思科
智能可编程接口处理器(Cisco ISE 线卡)能够端接
物理接口, 并提供转发决策、负载均衡、负载计
费、策略管理和安全性。ISE 线卡将可编程特性
集与高性能结合在一起, 并可以安装在固定端口
(线卡)和模块化端口(共享端口适配器[SPA]和 SPA
接口处理器[SIP])中。Cisco XR 12000 系列和 Cisco
12000 系列都支持这种智能可编程接口处理器。
Cisco XR 12000 系列控制面板路由处理器——
Cisco XR 12000 系列控制面板使用 Cisco 12000 系
列的 Cisco PRP-2 提供机箱管理、路由协议处理
和外部管理。
16.13.9 Cisco IOS XR 软件架构
Cisco XR 12000 和 Cisco CRS-1 的操作系统 Cisco IOS XR 软件是采用了基于微核的内存保护架构和
分布式处理的第一种完全模块化、完全分布式互联网操作系统。微核只包括最需要的操作系统服务, 例
如消息传递、内存管理、流程规划和线程分布。传统操作系统核心中的所有其它元素, 例如设备驱动程
序、文件系统、网络驱动程序和系统管理等, 都在核心以外实施。
以这种先进操作系统架构设计为基础, Cisco IOS XR 软件不但能提供连续系统运行和多服务扩展,
还能彻底隔离数据、控制和管理面板。每个操作系统功能都在其受保护内存空间中运行, 并可分成多个
流程, 分布到任意系统机架上的任意可用处理资源上, 不但消除了处理瓶颈, 还可以防止任何潜在硬件
故障影响系统运行。发生故障时, Cisco IOS XR 软件流程能以自动方式或者由系统操作员动态暂停、启动
或重启。这种精确模块化特性能够保证流程发生故障后或执行软件升级时只重启需要的流程, 以便支持
服务中软件升级(ISSU)。
P a g e | 354
CCIE R/S & Service Provider Exam Certification Guide
利用将类似或相关组件捆绑在一起, 以便同时升级的模块化软件分布机制, 可以进一步简
化服务中软件升级。如果需要, 可以对单个流程进行升级或修补, 以便采用关键修复或新特性, 借
助这种功能, 电信运营商不需要重新审核新操作系统版本就能添加新特性或修复软件缺陷。
思科 SSA 利用 Cisco XR 12000 系列的硬件和 Cisco IOS XR 软件设计, 完全隔离每项服务或每
个客户的流量和网络运行。这种独特的实施方法使电信运营商能够隔离控制、数据、管理面板以
及相关的线卡和路由处理器, 建立能够在一台 Cisco XR 12000 路由器中独立操作的逻辑分离和物
理分离路由器。思科 SSA 提供安全虚拟化, 使电信运营商能够灵活、放心地测试、部署和实施全
套融合服务, 满足客户的 SLA 要求
P a g e | 355
CCIE R/S & Service Provider Exam Certification Guide
16.14 Cisco CRS-1系列
16.14.1
Cisco CRS-1 简介
Carrier Routing System-1 (CRS-1)运营商路由
系统是业界第一个可以提供不间断的系统运行、前
所未有的服务灵活性和独一无二的系统寿命的运
营商级路由产品。Cisco CRS-1 采用了 Cisco IOS XR
软件, 这是一个独特的自恢复式自我防御操作系
统, 可实现不间断运行, 并能将系统容量扩展到
92Tbps。这个创新的系统架构可以将思科硅分组处
理器 -- 第一个可编程的 40Gbps ASIC -- 与思科服
务分离架构结合到一起, 实现前所未有的服务灵
活性和服务上市速度。Cisco CRS-1 标志着电信 IP
通信新时代的来临, 它不仅可以为当今的网络和服务融合奠定基础, 还能够在未来几十年中为客户提供
投资保护。
Cisco CRS-1 主要包括两个组件;线路卡机架和交换矩阵机架。它们的组合让 Cisco CRS-1 可以从 16
个 40Gbps 插槽拓展到 1152 个 40Gbps 插槽 -- 分布在 72 个通过 8 个矩阵机架互联的线路卡机架中。所
有这些组件都工作在同一个系统中。
16.14.2
Cisco CRS-1 体系结构
为针对不同用户的需求,Cisco CRS-1 系列一共提供了 4 种型号的机型。
Cisco CRS-1 4slot
Cisco CRS-1
8slot
Cisco CRS-1 16slot
Cisco CRS-1
16slot(多机架)
CRS-1 16 插槽线卡机箱
16 个模块化服务卡(MSC)和相关的物理层接口模块(PLIM)。一个 MSC 和一个 PLIM
是一对通过线卡机箱中间背板搭配的相关板卡。MSC 可以为通过 CRS-1 路由系统交换
的用户数据的第三层路由提供转发引擎, 而 PLIM 可以为用户数据提供物理接口和连
接器。只有一种 MSC, 但是它可以与多种不同的 PLIM 关联。这些 PLIM 可以提供不同
的接口速度和技术。可用的 PLIM 包括:
- 16xOC-48c/STM-16c packet-over-SONET (POS);包括远程(LR)和短距离(SR)选项。
- 16xOC-48c/STM-16c POS PLIM 支持所有小型可插拔(SFP)光纤。
- 4xOC-192c/STM-64c packet-over-SONET (POS);包括中等距离(IR)、短距离(SR)和超短
距离(VSR)选项。一个机箱中间背板。中间背板将一个 MSC 与它所关联的 PLIM 连接到
一起。中间背板设计让管理人员可以在不中断 MSC 与相关 PLIM 的连接线缆的情况下,
移除 MSC。另外, 中间背板还负责分发电源、将 MSC 连接到交换矩阵卡和提供控制
面板互联。客户无法对其进行现场更换。
两个路由处理器(RP)卡。RP 可以通过充当线卡机箱系统控制器, 提供系统智能。
两个风扇控制器卡。该卡可以对风扇架中的高速风扇进行控制, 以便根据周边环境调
节气流。顶部和底部的风扇架。这些风扇架负责机箱的进气和排气。在底部风扇架中
还有一个可以移除的空气过滤器。八个交换矩阵卡。单机箱系统包括 8 个 S123 交换
矩阵卡。两个报警模块。报警模块可以提供外部警报系统连接。警报模块位于交流或
者直流电源架中。两个交流或者直流电源架和交流整流器或者直流电源导入模块
P a g e | 356
CCIE R/S & Service Provider Exam Certification Guide
(PEM)。电源架和交流整流器或者 DC PEM 可以为机箱提供 13.2 千瓦的冗余电源。
对于一个线卡机箱来说, 冷空气从前部进入机箱, 热空气从机箱后部排出。用户数据线缆也从前端连接到
PLIM。因而, PLIM 侧被视为是线卡机箱的前部。机箱的 MSC 侧都视为后部。下图显示了一个线卡机箱的前后
视图:
16 插槽线卡机箱的气流
线卡机箱中通过的气流是通过一种进气-排气配置控制
的。如下图所示,周边气流从线卡机箱的前下方进入机箱,
在卡槽中逐步上升,直到最后从机箱后上方排出。底部的风
扇架从机箱前下方吸引周边空气;顶部风扇架则将热空气从
机箱后部排出。电源架中的电源模块拥有独立的冷却风扇。
在底部风扇架上方有一个可更换的空气过滤器。更换空
气过滤器的频率取决于机箱所处的环境。在一个不太干净的
环境中,或者在您开始收到频繁的温度警报时,您应当清除
进气口的污垢,检查空气过滤器,判断是否需要加以更换。
在为了更换而移除空气过滤器之前,您应当有一个备用过滤
器;这样,当您移除变脏的过滤器之后,您可以在机箱中安
装备用过滤器。
直流电源系统
线卡机箱的直流电源系统可以为机箱提供 13200 瓦的电
源。每个采用直流电源的机箱都包括两个直流电源架,以实现 2N 冗余。这些机架包括输入电源连接器。
每个机架包括三个 DC PEM。电源架和 PEM 都是可以现场更换的。每个电源架和 PEM 都拥有自己的断
路开关。
P a g e | 357
CCIE R/S & Service Provider Exam Certification Guide
16.14.3
Cisco CRS-1 硬件结构
路由处理器可以为系统提供系统管理、机架控制和控制面板处理功
能。每个路由处理器都包括一对用于对称多处理的 PowerPC CPU 复合结
构,用于存储系统流程和路由表的 4GB DRAM,用于存储系统镜像和配
置的 2GB 闪存,用于存储配置和日志的 NVRAM,以及用于搜集板上数据
的 40GB 硬盘。每个线路卡机架都包括 1 个主路由处理器和 1 个处于热
备用状态的路由处理器。任何一个路由处理器都可以控制任何一个线路
卡插槽,或者多机架系统中的任何一个线路卡机架。
为了进一步加强路由处理器所提供的处理能力,Cisco CRS-1 架构还
添加了对于分布式路由处理器的支持。它可以提供两个额外的双
PowerPC CPU 复合结构和相关的 DRAM。分布式路由处理器让管理人员
可以根据自己的需要分配控制面板功能和处理能力,从而实现服务隔离、
性能或者逻辑路由目标。
思科模块化服务卡可以与接口模块配合,提供数据面板转发功能。它是通过创新的思科硅分组处
理器——一个由 188 个可编程的精简指令集计算机(RISC)处理器构成的阵列——部署的。每个模块化服
务卡采用了两个硅分组处理器:一个用于处理输入流量,一个用于处理输出流量。
下图为 CRS-1 的硬件结构:
功能强大、灵活的硅分组处理器是思科利用目前最先进的半导体技术开发的,因而让 Cisco CRS-1
可以在真正的 40Gbps 速度提供丰富的服务和功能,同时让管理人员可以通过微代码软件升级,线性地
扩展服务和提供新的功能,而不需要中断服务。
思科模块化服务卡还在它的相关接口模块和 Cisco CRS-1 交换矩阵之间提供了接口。交换矩阵让模
块化服务卡可以与系统中的所有其他线路卡插槽、路由处理器和分布式路由处理器相连。
Cisco CRS-1 接口模块是模块化的物理接口,与思科模块化服务卡一同组成了一个完整的线路卡插
槽。接口模块包括:OC-768c/STM-256c、OC-192c/STM-64c、OC-48c/STM-16c 和 10Gb 以太网。
Cisco CRS-1 采用了一个独特的、三级的、动态自路由的 Benes 拓扑交换矩阵,从而可以在一个 Cisco
CRS-1 系统中的所有插槽(从 1 个插槽到多机架系统中的 1152 个插槽)之间提供一个高度可扩展的、可用
的、可存活的互联通道。
P a g e | 358
CCIE R/S & Service Provider Exam Certification Guide
三级矩阵可以为单播和组播流量提供各种的优先级。矩阵可以将组播流量复制到最多 100 万个群
组。在物理上,Cisco CRS-1 矩阵被分为 8 个面板。分组——以信元的形式——被均匀地分配到这些面板
上。在面板内部,三个矩阵等级——S1、S2 和 S3——可以动态地将信元发送到它们的目的地插槽。在
目的地插槽中,模块化服务卡将以正确的顺序组合这些信元,将它们恢复成排序正确的分组。
在一个单机架 1.2Tb 配置中,矩阵卡包含所有三个等级——S1、S2 和 S3。在多机架配置中,必须
用 1 到 8 个矩阵机架提供 Bennis 拓扑的 S2 等级,以便让 Cisco CRS-1 可以从 2 个线路卡机架拓展到 72
个。凭借这种模块化矩阵架构,Cisco CRS-1 可在不中断服务的情况下,进行从 1.2Tbps 到 92Tbps 的系统
容量扩展,以满足服务供应商的要求。
在 Cisco CRS-1 的所有方面的设计中,关键的焦点都是创建一个可以在故障发生时隔离故障和保持
系统永续性的架构。这不仅可以防止网络遭受意外的组件故障的影响,还可以提供服务中硬件升级的能
力,让 Cisco CRS-1 可以连续几年、甚至几十年保持不间断的运行。
为了充分利用 Cisco CRS-1 的功能强大的分布式硬件架构,思科开发了 Cisco IOS XR——Cisco IOS 软
件系列的最新成员。它的设计得益于思科 20 年来在创新和开发 Cisco IOS 软件方面积累的丰富经验。Cisco
IOS XR 软件为实现融合式分组基础设施所需要的大规模扩展能力、不间断系统运行和出色的服务灵活性
进行了专门的设计。
Cisco IOS XR 是一个完全模块化、完全分布式的网络互联操作系统,使用了基于微内核的、内存受
保护的架构。它可以严格地隔离操作系统的所有组件——从设备驱动程序、文件系统、管理接口到路由
协议,从而可以确保完全的流程隔离和故障隔离
每个操作系统和控制面板功能都运行在它自己的受保护内存中,并且被分解成可以分配到系统中
任何机架上的任何可用处理资源的流程,从而消除了处理瓶颈,确保硬件故障不会对系统运行造成不利
的影响。
Cisco IOS XR 的流程可以动态地中止、启动或者重启——在发生故障时自动操作,或者由某个系统
操作人员手动执行。
P a g e | 359
CCIE R/S & Service Provider Exam Certification Guide
关键的流程都采用了状态化热备用和状态校验,确保在重启进程时
最大限度地降低对系统运行或路由拓扑的影响,实现不中断的流程重启。
Cisco IOS XR 的模块化特性,以及它的支持不中断流程重启的能力可以实
现服务中软件升级。模块化的软件分发机制还可以进一步简化升级流程,
即将类似的或者有关的组件组合到一起一同升级。在必要情况下,也可
以对单个流程进行升级,或者安装关键的补丁或新功能。这种功能让服
务供应商可以在不需更换一个全新的操作系统版本的情况下,添加新的
功能或者纠正软件缺陷。
通过创建多个逻辑路由器而实现的服务隔离:
16.14.4
Cisco CRS-1 线卡模块
Cisco CRS-1 模块化服务卡
思科模块化服务卡可以与接口模块配合,提供数据面板转发功能。它是通过创新的思科硅分
组处理器——一个由 188 个可编程的精简指令集计算机(RISC)处理器构成的阵列——部署的。每个
模块化服务卡采用了两个硅分组处理器:一个用于处理输入流量,一个用于处理输出流量。
Cisco CRS-1 16 插槽线卡机箱路由处理器
与 Cisco CRS-1 16 插槽线卡机箱兼容,支持 Cisco IOS XR 软件 3.2 版,支持多种协议, 如
BGPv4,OSPFv2, OSPFv3,IS-IS,PIM,AutoRP,MBGP,IGMP v1 v2 v3,MPLS,RSVP,RPL 等。在安全性上支持
MD5,IPSec,SSHv2,SFTP,SSL 等。面板上提供一个 Console 口,一个 AUX 口,1 个 10/100/1000 以太网口
P a g e | 360
CCIE R/S & Service Provider Exam Certification Guide
(RJ-45),2 个 10/100/1000 以太网口(1000 BASE-LX SFP-LC 接头,10km) 内存 可配置 2GB 或 4GB 路由
内存, 64MB 引导闪存 ,2MB NVRAM.1 个 GB PCMCIA 卡(内部),1 个 40GB 硬盘驱动器,内含性能 2 个
800MHz Power PC 对称多处理
其他 CRS-1 使用的线卡
16.14.5
Cisco CRS-1 安全特性
在设计 CRS-1 时,思科的开发人员利用了 Cisco IOS 软件的互联网 安全经验。Cisco IOS XR 软件的模
块化架构在逻辑上和物理上都具有分布式的特性,因而可以在创建 一个高度可用的、安全的路由平台
和网络方面提供巨大的优势。分散的软件组件(子系统)被部署为独立的软件流程 ,运行在它们自己的受
保护的内存地址空间中。这可以在发生安全事件时实现真正的故障隔离和分区,防止一个子系 统中发
生的故障对其他的子系统造成不利影响。
与像 FreeBSD UNIX 这样的单内核架构不同,网络堆栈(例如 TCP)作为一个单独的进程,在微内核之
外运行。因此,即使 TCP 堆栈受 到安全威胁,系统仍然可以正常运行。在需要恢复服务时,相关流程
会自动重启,不需要人为干预。此外,模块化软 件架构和服务中软件升级(ISSU)支持让用户可以在不关
闭整个系统的情况下,迅速地安装一个补丁。
在 Cisco IOS XR 软件中保持深入的故障隔离和实现安全检测的 关键是,它在三个面板之间对流程
进行了逻辑分配。每个面板都采用了自己的访问控制机制,以实现网络的安全运行 。这三个面板分别
是:
控制面板
数据面板
管理面板
P a g e | 361
CCIE R/S & Service Provider Exam Certification Guide
控制面板保护
所有路由控制信息都在控制面板进行交换,这使得控制面板及其 组件成为了一个攻击目标。
因为控制面板的永续性取决于 CPU 的处理能力和可扩展性,所以针对 CPU 的“资源耗尽式” 攻
击并不少见。
为了支持可扩展性和性能,CRS-1 控制面板采用了分布式、冗余 的路由处理器——对称式多
处理器(SMP)CPU。在正常情况下,CRS-1 所传输的流量由它的线卡以线速进行处理。但是 ,在发
生意外情况时,分组被转发到路由器本身。这些包括路由协议、互联网控制消息协议(ICMP)和网络
管理分组 在内的“转移分组”将从线卡分组处理器发送到线卡 CPU 或者路由处理器 CPU。
为了防止控制面板在一个开放的环境中遭受 DoS 攻击,CRS-1 在线 卡和它的分组处理器中分
配了多种层次化的安全功能。这些功能包括:
动态控制面板保护(DCPP)
自动控制面板拥塞过滤器
控制面板生存时间(TTL)完整性检查(RFC 3682,通用 TTL 安全机制(GTSM))
边界网关协议(BGP)路由协议过滤和路由策略语言(RPL)
数据面板保护
数据面板可以接收、处理和传输网络组件之间的网络数据,控制 进出路由器的大量网络流
量。为了防止数据面板流量遭受已知的攻击,CRS-1 的转发引擎中内置了一些缺省的完整性检 查(基
于互联网行业积累的知识)。此外,CRS-1 还提供了多种功能和工具,例如 ACL、单播反向路径转发
(uRPF)和 N etFlow 记帐,并在 MSC 上进行专门的输入和输出处理。
管理面板保护
管理面板是所有与路由平台的系统管理有关的流量的逻辑路径。 在一个分布式、模块化的
环境中,管理面板可以提供新的复杂度等级,因而提高了对于确保安全访问的要求。这种安 全访
问最好通过下列手段实现:
拒绝缺省访问——一个已知的、常见的系统漏洞是在缺省情况下启用某些协 议。这些开放
的端口导致了一些让入侵者有可乘之机的安全漏洞。为了满足服务供应商的要求,CRS-1 采用了专
门的设 计,即在缺省配置下关闭所有这些服务,直到由操作人员手动启用这些服务。
身份验证、授权和记帐(AAA)和加密协议——所有 对路由器的访问和路由器对外的访问都应
当被加密和控制。Cisco CRS-1 支持 AAA 身份验证和加密协议 SSH、SSL、IPSec 和 SNMPv3。利用 ACL,
还可以使用其他的控制功能,将访问权限只 限制于特定的源主机。每个用户都可以被明确归于某
个 AAA 区域,以反映用户的访问权限。
隔离管理端口——核心路由器和交换机通常都带有专 用的管理以太网端口,它们可能会导
致对设备的不安全访问。Cisco CRS-1 以太网管理端口都是可以路由的,因而可 以通过 AAA 访问控
制和加密进行控制。隔离数据和控制面板流量可以防止它们不会“干扰”。ACL 可以被用于阻塞干
扰 ,而且管理员利用 Cisco Craft Works 界面(CWI),只需点击几下鼠标就可以在多个端口之间有效
地部署 ACL。CWI 是一个专门为多机架路由器管理而设计的增值 GUI 工具。
基于角色的权限模式——因为未经授权的或者缺乏经 验的网络操作人员可能会对系统的可
用性造成威胁,服务供应商需要用灵活的方法,根据用户所设定的标准分配操作 人员的权限。
P a g e | 362
CCIE R/S & Service Provider Exam Certification Guide
16.14.6
Cisco CRS-1 管理特性
Cisco CRS-1 根据多机架路由环境的要求设计了 CRS-1 的可管理性。在这种环境下,CRS-1 的新型分
布式、模块化架构不仅对可管理性提出了新的要求,而且还为管理流程带来了便利。
在这种微内核架构中,每个管理流程都具有全面的内存保护和故障隔离。通过将流程分配到不同
的面板,管理面板既不会影响控制和数据面板上的流程,本身也不会受这些流程的影响。这种模块性不
仅带来了更高的安全性,而且提供了在不影响路由控制功能或者网络流量的情况下修改管理流程的能力。
为了在一个分布式管理环境中保持性能,CRS-1 分布式路由处理器架构可以在多个路由处理器之间
平衡处理需求。在面临沉重的网络管理负载(例如数据采集或者警报处理)时,任务会被分配到任何可用
的资源,以避免对关键任务造成不利的影响。为了支持 OAM&P 功能,闪存提供了永久存储,而硬盘资
源可用于存储临时性的调制和诊断数据。
为了支持不间断的系统运行和灵活的管理服务,CRS-1 具有三个关键的内嵌式管理功能:内嵌检测、
内嵌接口、内嵌应用服务。
为了提高效率,静态 NetFlow 部署在 CRS-1 的硬件中(以微代码的形式),以便最大限度地降低对路
由器的 CPU 性能的影响。一旦计数器被采集,它们就将通过线卡数据接口,输出到外部采集器。这消
除了对性能的负面影响,因为 CRS-1 可以在控制面板和数据面板之间提供完全的隔离。
嵌入式性能监控
在基于单机箱平台的大型网络中,性能监控和趋势分析很难实现。来自于为数众多的网络组件的
大量可用数据通常会超出负责采集、存储、管理和处理数据的 OSS 性能监控组件的能力。这些数据还可
能会对组件和采集器之间的网络流量造成严重的影响。通常,可以通过只针对平台中的特定目标——而
不是分析整个网络的趋势——限制所采集的数据的容量。
因为多机架路由器的规模很大,传统的基于某个集中应用的数据轮询已经无法满足需要,而且效
率极低。因此,CRS-1 上的性能统计数据和计数器的采集是由内嵌的性能监视器执行的。
Cisco CRS-1 的性能监控能力让操作人员可以定义所要采集的统计数据、采集的频率,以及内存中
保存的样本总数。采集操作可以被设置为按需运行或者定期运行(用于分析趋势)。按需采集通常用于进
行迅速的调试和诊断,例如查看利用率。无论是按需还是定期采集,数据采集都不会影响同时进行的其
他采集流程。在采集阶段结束之后,数据可以被外部采集器轮询,或者输出到外部采集器。
CRS-1 的性能监视器可以在所有支持的实体上,将本地的计数器与用户设置的阈值相比较,例如比
较错误计数器和 MPLS 的接口、连接利用率。阈值条件被定义为对某个相对于阈值(使用百分比或者绝对
值)的属性值的逻辑操作。阈值规则将在每次采集期间进行评估。一旦达到或者超过某个阈值条件或者
标准,就会立即生成一个阈值超越警报(TCA)。范围操作功能让用户可以跟踪计数器在某个特定范围中
的值(例如,CPU 利用率介于 20%到 60%之间),因而可以在系统性能超出预定范围时提供一个功能强大
的通知机制。阈值重设规则指定了是否生成阈值通知——即使已经达到阈值条件。这避免了在某些情况
下生成大量的阈值通知,例如在很短的时间或者间隔内阈值条件被反复超过。
搜集到的所有数据都会进行校验,以防止数据在路由处理器进行故障切换或者流程重启 时丢失。
与其他事件一样,由嵌入式性能监视器生成的 TCA 可以像“嵌入式故障管理”部分介绍的那样,自动地
对事件采取措施。
嵌入式安全
尽管必须通过检测功能防止服务供应商遭受安全故障所导致的损失,但是对这些检测功能的使用
也必须得到保护。
Cisco CRS-1 的安全管理访问功能是通过基于安全套接字层(SSL)、Secure Shell(SSH)协议、IP 安全
(IPSec)、TACACS+和 RADIUS 的身份验证、授权和记帐(AAA)实现的。另外,新的基于 ID 的安全功能可以
P a g e | 363
CCIE R/S & Service Provider Exam Certification Guide
对每项任务提供比典型的、基于角色的访问控制更加精确的控制。在基于任务 ID 的安全中,可以定义
不同的用户类型,并将其分为不同的群组。每个群组都与某个特定的任务组——例如 BGP 和 MPLS 任务
——相关联,并且设有明确的权限(读取或者写入)。
嵌入式接口
为了使用嵌入式检测功能提供的信息和控制,路由平台必须通过接口--通常是通过硬件和软件--提
供访问途径,即所谓的应用编程接口(API)。这些接口应当是开放的,并且建立在行业标准的基础上。如
果接口是专用的,服务供应商就需要为将路由器集成到他们现有的 OSS 基础设施中付出高得多的成本。
而且,随着 OSS 的发展,他们还将承担更高的维护成本,从而提高了路由器的总拥有成本。
Cisco CRS-1 可通过物理接口和标准的 API 访问 Cisco IOS XR 软件中内嵌的检测功能,其中包括一个
内部元数据模型,它可在命令行界面(CLI)、SNMP 或 XML 之间保持管理一致性:
嵌入式应用服务--Craft Works 接口
作为一个更加有效、界面更加友好的多机架管理工具,Craft Works 接口(CWI)是一个使用了 CRS-1
XML 接口的内嵌式 Java 应用,它支持增强的 CLI 功能、一个文本编辑器和一个可以从 Web 浏览器启动
的 GUI(CWI Desktop)。
CWI Config Editor
利用 CWI Config Editor,用户可以在不对目前正在运行的配置造成任何影响的情况下,修改配
置和保存配置改动。网络操作人员可以获得标准的全屏编辑功能,例如区块复制和粘贴,命令自
动输入,以及检查语法、在最后提交之前查看改动和在实际应用之前验证配置的功能。
CWI CLI
Cisco IOS XR 的 CLI 支持增强的功能,例如历史命令调用和批处理,从而让 CRS-1 的管理变成
了一种更加个性化的体验。在 SSH/Telnet 窗口中提供了一个本地命令缓存,将常用命令保存在每
个用户的本地存储中。管理人员在登陆到每台路由器之后,可以调用这些常用命令,以加快管理
速度和简化应用。另外,管理人员还能够以批处理的方式执行一个事先存储的命令文件。
CWI Desktop
CWI Desktop 提供了一个 GUI,它让操作人员可以直观地查看系统的各个组件及其状态。它提
供了对一些由 CRS-1 支持的、重要的嵌入式 FCAPS 功能的访问:
设备树--因为 CRS-1 是一个多机架系统,所以左栏中显示的设备树提供了系统的物理机箱或者
逻辑路由器视图。这个设备栏可以显示机架、板卡、插槽和端口信息,或者将它们输出到一个结
构化的文件格式。每个树条目的颜色代表该组件的状态,并且建立在所生成的最高级别的警报的
P a g e | 364
CCIE R/S & Service Provider Exam Certification Guide
基础上。CWI 警报视图是上下文相关的;如果只针对某个特定的组件启动,那么就只会显示该组
件的警报状态。
警报面板--警报面板显示了隶属于每种警报严重性等级(严重、重要、次要、警报和不确定)
的现有警报的总数。最右侧的计数器表示在现有进程中收到的警报总数。
机架视图--熟悉 CiscoView 的网络操作人员会很快适应 CWI 机架视图工具的可视化外观。通过
编程,板卡视图中的 LED 可以传达查看机箱视图的网络运营中心(NOC)操作人员向物理机箱所在地
的现场技术人员发出的简单讯息。例如,NOC 操作人员可以在某个物理卡上创建一个文本消息,
告知现场技术人员该卡需要移除。
配置桌面--配置桌面为简化路由策略、ACL、服务质量(QoS)和多种协议(例如 BGP、中间系统
-中间系统(IS-IS)、开放最短路径优先(OSPF)、MPLS-TE 和资源预留协议(RSVP))的设置提供了一个
GUI。例如,假设必须在所有接口上设置一个新的 MTU。如果接口不多,可以使用 CLI。但是,如
果接口有几百个,甚至上千个,CLI 设置就需要投入大量的人力。然而,操作人员只需点击几下鼠
P a g e | 365
CCIE R/S & Service Provider Exam Certification Guide
标,就可以利用 CWI 配置桌面,将这项改动统一地应用于所有的接口,从而提高生产率和降低运
营成本。
16.14.7
Cisco CRS-1 IP over DWDM 解决方案
思科 IP-over-DWDM 战略可以帮助电信运营商克服他们目前面临的所有挑战――降低投资开
支和运营开支,提高总体可靠性,加快推出服务的速度――同时还让他们可以提高网络的总体规
模和性能,满足人们在 10 年甚至更长时间内不断增长的 IP 流量需求。这可以通过 IP 和 DWDM 网
络之间的三个关键的集成点实现
组件集成能够将当今网络中使用的多个独立的组件整合到同一个设备之中,同时不会中断任
何持续运行所需要的功能。Cisco CRS-1 运营商级路由系统的物理线路接口卡(PLIM),它集成了
40Gbps(OC-768c/STM-256c)和 10Gbps(万兆以太网)速度的收发器功能。这些新型接口,以及 Cisco
CRS-1 单端口 OC-768c/STM-256c 可调 WDMPOS 接口模块和 Cisco CRS-1 四端口 10GE 可调 WDMPHY
接口模块,将让 Cisco CRS-1 可以直接互联现有的 DWDM 系统,消除在典型的电信运营商 POP 配
置中投资购买外部收发器机架的需要。这可以为电信运营商节约大量的投资开支和运营开支,因
为它可以将 DWDM 设备互联所需要的短距离光纤减少 50%。通过消除网络中额外的有源设备,永
续性也可以得到提升。而且,Cisco CRS-1 现在能够获取 DWDM 层的信息,主动地、端到端地监控
光路的传输性能。这意味着即使波长路径的性能因为环境、组件或者物理光纤上的其他因素而逐
渐降低,路由器也可以通过监控前向纠错(FEC)代码,判断是否需要根据纠错情况在 IP/MPLS 层采
取补救措施。因此,它能够在 FEC 的纠错功能中断(导致完全的 LOS)之前触发 FRR 备份路径――从
而在流量中断之前实现几乎无缝的切换。这种机制不亚于或者优于基于 SONET/SDH 的传统故障切
P a g e | 366
CCIE R/S & Service Provider Exam Certification Guide
换机制。故障响应速度将会立即得到提高,网络集成的总体端到端永续性也可以得到加强――这
在今天的采用不同收发器的、更加离散的配置中是无法实现的。
Cisco CRS-1 四端口 10GE 可调 WDMPHY 接口模块具有类似于单端口 OC-768c/STM-256c 可调
WDMPOS 接口模块的功能,例如可以延长传输距离的 EFEC 和 SONET/SDH 式 OAM&P G.709 成帧功
能,但是它通过使用一种基于 WDMPHY 的创新技术,将价位降低到了 10Gbps LANPHY 的水平,从
而大大提高了成本效率。这样,电信运营商可以在流量需求增长时,利用类似 10Gbps 的核心 IP
连接的优势拓展他们的网络范围。这些连接可以利用 SONET/SDH 式的 OAM&P 映射到 10Gbps
DWDM 波长。
思科推出了一种名为分段 GMPLS(S-GMPLS)的新型 GMPLS 模式――它是完全网格模式和当前
传输网络常用的覆盖模式的综合。在 S-GMPLS 模式中,只有边界路由器可以从光设备和其他路由
器接收信息。事实上,边界路由器使用逻辑路由器范例来在 IP 域和光域之间屏蔽和划分拓扑信息。
边界路由器充当两者之间的关守,以实现分段的管理边界和协助确保两个网络之间的管理隔离。
这可以提高 GMPLS 在电信运营商网络中的部署能力,因为网络之间的分段管理可以在需要的情况
下进行维护。
P a g e | 367
CCIE R/S & Service Provider Exam Certification Guide
16.15 Netflow
Netflow 流量统计技术是 Cisco 公司提出
的一项网络数据流统计标准,得到了主流厂
商如 Juniper、Extreme 等的支持。利用 netflow
技术可以监测网络上的 IP 流(IP flow)信息。采
集到的 netflow 流量信息可以帮助进行网络规
划,网络管理,流量计费和病毒检测等等。
16.15.1
Netflow 体系结构
NetFlow 以 UDP 数据报文的形式输出信
息流,它有 2 种格式: (1)版本 1 格式。这
是最初发布的格式; (2)版本 5 格式。这是
后来发布的一种加强格式,它增加了边界网
关协议(BGP)的自治系统(AS)信息和信息
流的序列号。
在版本 1 和版本 5 格式中,数据报文由一个头标信息、一个或多个信息流记录构成。通常情况
下,接收程序不管接收哪种格式,它都会分配一个足够大的缓冲区,以便数据报文到来时,可以容纳下
最大的数据。此外,它使用头标信息中的版本信息来决定如何理解这些数据报文。头标信息中的第二个
字段是数据报文中记录的个数,可以用它来对记录进行索引。
因为 NetFlow 输出采用 UDP 协议来发送输出的数据报文,所以可能会丢失数据。为了确定信息
流输出信息是否丢失,版本 5 的头标信息格式中包含了一个信息流序列号。这个序列号等于前一个序列
号加上刚刚过去的数据报文中信息流的个数。当接收到一个新的数据报文后,接收程序可以从头标信息
中的序列号中提取出预期的序列号,这样即可以获取丢失信息流的数目。
16.15.2
配置 Netflow 流量数据输出
在一个路由器中,NetFlow 交换涉及到标识分组信息流、执行交换和处理访问列表。它不涉及路
由器之间的任何连接设置协议,也不涉及对其他任何网络设备或端点工作站的连接设置协议。它也不要
求对分组本身或其他任何网络设备进行任何外部修改。所以,NetFlow 交换对现有的网络,包括端点工作
站、应用软件和网络设备(如局域网交换机)是完全透明的。此外,因为 NetFlow 交换在每个互联的网
络设备中独立地进行,所以并不需要在网络中的每个路由器中都操作它,网络规划人员可以在路由器/接
口的基础上有选择地激活 NetFlow 交换(和 NetFlow 数据输出),这样就可以在特定的网络位置上进行数
据流交换、控制和记账。
在一个接口上配置 NetFlow 时,这个接口就不再使用其他交换模式了。为了配置 NetFlow 交换,
在接口配置模式下,利用以下面命令为 IP 路由启用 NetFlow 交换:
ip route-cache flow
该命令的 no 格式可以禁用 NetFlow 交换,具体命令如下:
no ip route-cache flow
通常,NetFlow 高速缓存的默认值可以满足需求。然而网络管理员也可以通过增加或减少高速缓
存中保留的条目数,来满足信息流比率的需要。系统的默认值是 64KB 个流动高速缓存条目,每个高速缓
存条目大约占用 64B 的存储空间。为了在 NetFlow 高速缓存中自定义条目的个数,在全局配置模式下,
使用下面的命令即可改变 NetFlow 高速缓存中保留的条目的个数:
P a g e | 368
CCIE R/S & Service Provider Exam Certification Guide
ip flow-cache entries number
其中 number 为条目的个数,范围是 1024~524288,默认值是 65536。
Cisco 公司的部分路由器带有路由/交换处理器(RSP)和 VIP 控制器。对 VIP 控制器可以这样配置:
通过 VIP 交换接收分组,而不必每个分组都要 RSP 参与,这种处理称为分散式交换,可以降低对 RSP 的需
求。可以通过配置 VIP 硬件,使之进行 NetFlow 交换。
为了在 VIP 上配置分散式交换,首先要根据所使用的协议为 IP 路由配置路由器,然后就可以使用
下面的命令,在全局配置模式下,开始配置 IP 分散式交换和 NetFlow 交换了。
interface type slot/port-adapter/port;指定接口,并且进入接口配置模式
ip route-cache distributed;在该接口中启用 IP 分组的 VIP 分散式交换
ip route-cache flow; 指定信息流交换
当 RSP 或 VIP 进行信息流交换时,它们使用信息流高速缓存取代目的地网络高速缓存来交换 IP 分
组。信息流高速缓存使用源头和目的地的网络地址、协议以及源头和目的地的端口号来区分各条目。
16.15.3
Netflow 统计
通过 NetFlow 交换,还可以获取丰富的统计信息,这些统计信息包括 IP 分组大小的分布、IP 信息流
交换的高速缓存信息,以及信息流信息,例如协议、总的信息流数量和每秒的信息流数量等。上述信息
可以帮助网络管理员分析路由器的运行情况。为了管理 NetFlow 交换的统计信息,可以在授权的可执行
模式下,
利用“show ip cache flow”命令显示 NetFlow 交换的综合统计信息,以便网络管理人员了解当前
网络的流量以及各种应用的数据流情况。
IP packet size distribution 给出分组大小分布的情况(百分比),如这里的.554 表明 55.4%的分组
数在 33~64B 之间;接下来的数字描述了 Netflow 高速缓冲区的使用情况;
NetFlow 交换的信息还可以输出到网络管理应用程序中。为了在信息流到期时,将 NetFlow 高速缓
存中保留的 NetFlow 交换的统计信息输出到一个工作站中,
在全局配置模式下,利用下面的命令即可:
ip flow-export ip-address udp-port version 5 [origin-as |peer-as]
在版本 5 中,用这条命令来配置路由器,把 NetFlow 高速缓存条目输出到工作站,可以选择指定最
初的 AS 或同等的 AS,默认值是 2 种 AS 都不输出,这样可以提高性能。为了保证数据来自有效的 NetFlow
源头,Cisco 公司建议接收程序检查数据报文,首先检查数据报文的大小,确定它至少可以容纳版本字段
和计数字段。然后,应该证实版本是有效的版本 1 或 5,而且接收到的字节数足以容纳头标信息和对信息
流记录进行计数。 NetFlow 交换的这些信息用途很广,可以用来为企业网络管理与分析提供依据,为网
络管理员合理规划企业的网络结构、均衡网络负载和优化网络性能提供参考等,为 ISP 提供计费根据、为
诊断网络入侵和查找网络攻击提供线索以及帮助企业实现进行数据采集等等。
P a g e | 369
CCIE R/S & Service Provider Exam Certification Guide
P a g e | 370
CCIE R/S & Service Provider Exam Certification Guide
第三部分
第17章
第18章
第19章
第20章
第21章
第22章
第23章
第24章
交换原理与交换结构
Catalyst 交换体系结构
交换机基本配置
VLAN 和 VTP
STP 和 EtherChannel
多层交换
组播服务
SPAN 和 RSPAN 监控
P a g e | 371
CCIE R/S & Service Provider Exam Certification Guide
Chapter 17
交换原理与交换结构
17.1 以太网中的数据交换
17.1.1 数据交换模式
根据交换机的不同功能,对于 2 层帧的处理方式有所不同.Catalyst 系列交换机支持 3 种交换模式
1.
直通(Cut-Through)交换
直通交换仅检查整个帧的前 6 个字节,也就是说只检查目标 MAC.这样将提供最低的转
发延迟,但容易传送以太网碰撞产生的碎片,残帧(runt)或受损帧
2.
碎片割离(Fragment-Free)交换
这种模式在某些 Catalyst 文档中称为”快速转发”模式,仅检查前 64 字节.在一个良好设计
的以太网中,碰撞碎片必须在前 64 字节中检测出来.
3.
储存转发(Store-and-forwad)交换
如果交换机工作在储存转发模式,它的转发错误率将会最低.由于采用速度更快的处理
器和 ASIC,交换机不必支持直通交换和快速转发.所以新型号的 Catalyst 都采用储存转发
模式交换
17.1.2 数据交换总线
在数据交换过程中,Cisco Catalyst 系列交换机采用 2 种体系结构,共享总线和交叉矩阵.共享总线其
总线的速度决定了交换机的流量处理总容量.严重制约了线卡间的通讯带宽.
P a g e | 372
CCIE R/S & Service Provider Exam Certification Guide
后期 Catalyst5500 系列交换机开始支持交叉矩阵.在 Catalyst 6500 系列中,可以使用 SFM(Switch
Fabric Module)支持矩阵交换.通过 SFM 能够向线卡提供 16 个 8Gbit/s 的连接.新型的 SFM2 可以用
于 6513(13-slot),并对 SFM 进行了体系结构优化.
Cisco 对于端口出入站速度不匹配,等情况提供了端口缓存和共享内存 2 种方式来防止丢弃帧.
17.2 交换机操作
17.2.1 链路速度自动协商
自动协商(autonegotiation)指让设备和集线器自动进行协商它们之间能够共同运行的操作级
别,这样简化了手动的配置.IEEE 802.3u 委员会定义了快速链路脉冲(Fast Link Pulse,FLP)用来支持自
动协商过程.FLP,是 10BaseT 的链路完整性测试(Link Integrity Test)的增强版本.FLP 在链路上发送一系
列的声明自己所能操作的能力的脉冲,另一方也发送 FLP 的声明,这样双方决定它们之间共同的最
高的优先级,借此决定它们之间操作的模式.如下是自动协商的优先级及其对应的操作模式:
优先级
1
2
3
4
5
以太网规范
1000BASE-T
1000BASE-T
100BASE-T2
100BASE-TX
100BaseT2
双工类型
全双工
半双工
全双工
全双工
半双工
优先级
6
7
8
9
以太网规范
100BASE-T4
100BASE-TX
10BASE-T
10BASE-T
双工类型
全双工
半双工
全双工
半双工
P a g e | 373
CCIE R/S & Service Provider Exam Certification Guide
100BaseTX
一些10Mbps的以太网使用的是5类的未屏蔽的双绞线(unshielded twisted-pair,UTP)和屏蔽的双
绞线(shielded twisted-pair,STP).这种以太网的设备使用两对线缆:针脚(pin)1和2上的一对用来发送数
据,针脚3和6上的一对用来接收数据和检测冲突.100BaseTX使用的也是这种结构.
100BaseTX和10BaseT一样,距离最大可达100米.100BaseTX使用一种和分布式光纤数据接口
(Fiber Distributed Data Interface,FDDI)一样的4B/5B编码方式.这种编码机制在用户的每4个bit的数据
加上第5个bit.这就意味着在数据传输中有25%是用来支持编码.虽然100BaseTX可以运载最大
100Mbps的用户数据,但是它实际上是以125Megabaud(125000000波特)操作的.
100BaseT4
并不是所有的以太网都使用5类线缆,有的使用的是3类线缆.3类线缆常用于支持语音(voice)传
输,因此,有的时候它也叫语音级线缆(voice grade cable).5类线的操作频率为100MHz,而3类线的操作
频率为16MHz.100BaseT4的最大距离为100米.为了能够支持更快的数据传输速率,100BaseT4使用4
对线缆,其中3对用来数据传输,另一对用来检测冲突.100BaseT4使用的编码方式是8B/6T.
100BaseT2
100BaseT2是IEEE 802.3y委员会在1997年开发的,使用3类,4类和5类线缆,并且只要求使用两对
线缆.最大距离可达100米.100BaseT2依赖于高级数字信号处理芯片,使用的编码方式为PAM 5x5.
100BaseFX
IEEE 802.3u委员会还定义了一种使用光纤作为媒介的100BaseFX.100BaseFX使用两股(一对)光
纤线缆,其中一股用来发送数据,另一股用来接收数据.使用的频率是125MHz,编码方式为4B/5B.如果
使多模(multimode)光纤,以全双工操作的话最大距离可达2000米,以半双工操作的话最大可达412米.
因此距离因素是开发光纤版本的原因之一.如果使用单模(single-mode)光纤,最大距离可达10千米.
光纤版本的另一个优点是放噪音等干扰
FastEthernet 自动协商
NIC
port
Nic-work
Switch-Work
Auto
Auto
100full
100full
100Full
Auto
100full
100half
Auto
100full
100half
100full
100half
auto
100half
100half
10half
auto
10half
10half
10half
100full/half
down
down
Auto
10full/half
10half
10half
以太网类型
10BASE-T
10BASE-FX – MMF
100BASE-TX
100BASE-FX – MMF
100BASE-FX – SMF
1000BASE-SX
1000BASE-LX
1000BASE-T
P a g e | 374
介质类型
3 类 UTP 或更高
MMF(多模光纤)
5 类 UTP 或更高
MMF(多模光纤)
SMF(单模光纤)
MMF(多模光纤)
SMF(单模光纤)
5 类 UTP 或更高
距离限制(m)
100
2000
100
2000
10000
2000
5000
100
编码方式
Manchester
Manchester
4B/5B
4B/5B
4B/5B
8B/10B
8B/10B
PAM 5x5
CCIE R/S & Service Provider Exam Certification Guide
17.2.2 透明桥接
透明桥接(transparent bridging)是由 IEEE 802.1d 定义的.它描述了对帧处理的 5 个过程,如下:
1.学习(learning)
2.洪泛(flooding)
3.过滤(filtering)
4.转发(forwarding)
5.老化(aging)
Learning
网桥会记录发送源的源 MAC 地址和源端口,这个过程就是学习过程.网桥只学习单播源
地址.当网桥初次加电启动后,记录 MAC 地址和源端口的桥接地址表是不含任何条目的空的
桥接地址表.假如 4 个网桥都在同一时间启动,这时候它们的桥接地址表都是空的.
假设工作站 1 传输单播帧到工作站 2,由于处于同一个冲突域,这个网段上的所有工作站
包括网桥 A,都会收到这个帧,网桥 A 的端口 A1 收到这个帧并查看帧的源 MAC 地址,然后把这
个地址和端口 A1 放进桥接地址表里.
Flooding
当工作站 1 发送帧的时候,网桥 A 会查看帧的目标 MAC 地址并看自己的桥接地址表里有
没有该条目.但是此时间网桥 A 只知道工作站 1 的 MAC 地址,网桥 A 收到工作站 1 发来的单播
帧(目标 MAC 地址标记为单一的帧),桥接地址表里没有目标 MAC 地址的条目.因此此时网桥 A
收到的是未知单播帧(unknown unicast frame).并且网桥 A 会把这个未知单播帧从它的所有端
口(除了源端口 A1)向外发送.这个过程就叫洪泛.
于是网桥 A 开始洪泛未知单播帧.网桥 B,C 和 D 收到网桥 A 洪泛的帧之后,采取和网桥 A
相同的洪泛动作.此时网桥的桥接地址表类似下表:
网桥端口
A1
MAC地址
1
A2
B1
1
B2
B3
C1
1
C2
D1
1
由于这个时候网桥还不知道工作站2的MAC地址.因此帧的传输还没有完成.另外,除了洪泛未
P a g e | 375
CCIE R/S & Service Provider Exam Certification Guide
知单播帧,传统的网桥还会洪泛另外两种类型的帧:广播帧(broadcast frame)和组播帧(multicast
frame).
Filtering
假如说工作站 2 对工作站 1 作出响应,会发生什么情况?这个网段上的所有工作站包括网桥
A,将收到工作站 2 响应工作站 1 的帧.这个时候网桥 A 的 A1 端口上就学习到工作站 2 的 MAC 地址.
网桥 A 发现工作站 1 和 2 位于它的同一端口之下,网桥 A 断定没必要把这个帧发送到别的网段上
去.因此,网桥 A 对这个帧进行过滤.
过滤是发生在当源 MAC 地址和目标 MAC 地址位于网桥的同一端口之下.这么做的结果是不
会造成其他网段带宽的浪费.
Forwarding
当工作站 2 发送帧给工作站 6,由于网桥都还没有工作站 6 的 MAC 地址,网桥会洪泛这个帧.
当工作站 6 响应工作站 2 的时候,网桥 D 检查自己的桥接地址表发现为了能够使帧到达工作站 2,
它必须把帧从端口 D1 转发出去.当网桥的桥接地址表里存在单播帧的目标 MAC 地址之后,并且源
MAC 地址和目标 MAC 地址位于网桥不同的接口的时候,网桥就会采取转发动作.
接下来网桥 B 把帧从 B1 端口转发出去,网桥 A 又把这个帧从 A1 端口转发给工作站 2.下表是
网桥当前的桥接地址表:
网桥端口
A1
MAC地址
1
2
A2
B1
B2
B3
1
2
6
C1
1
2
C2
D1
D2
1
2
6
6
Aging
当网桥学习到某个源 MAC 地址之后,它会给这个条目打上时间戳.每当网桥收到来自这个源
MAC 地址的帧之后,这个时间戳会被更新.当老化计时器(aging timer)超时之后还没有收到来自该源
MAC 地址的帧,那么这个条目就会从桥接地址表里移除.老化计时器的默认时间为 5 分钟,可以人工
对其进行修改.
为什么要移除这个老化的条目?那是因为网桥的内存是有限的.比如一些低端的网桥可以记
录的 MAC 地址条目为 6096 条,而一些高端的可以达到 16000 条.
网桥还使用老化来适应工作站的迁移.网桥记住了工作站 1,2 和 6 的位置.假如工作站 6 迁移
到其他位置 C2 附近.工作站 1 传输帧到工作站 6.网桥 A 把帧转发给网桥 B,但是网桥 B 会以为工作
站 6 仍然位于 B3 附近.老化使网桥移除迁移走的条目.当网桥 B 完成对工作站 6 的条目的老化之后,
网桥 B 洪泛帧,依照之前的步骤去学习工作站 6 新的 MAC 地址和端口的关联.
17.2.3 2 层交换操作
交换机本质上说是一个多端口的透明网桥,每个交换机端口是他自身以太网段,与其他端口隔离。
帧的转发完全基于帧中的 MAC 地址.下图显示了 2 层交换机发展的过程,从最简单的双接口透明网桥,
P a g e | 376
CCIE R/S & Service Provider Exam Certification Guide
到后来多接口网桥,然后到支持 vlan 的多接口交换机
交换机会不停的学习 MAC 地址来不断维护转发表,当遇到某个帧,其目的 mac 地址不在转发表中
的时候,如下图
此后,交换机将查到目的地址 vlan,端口的信息加入转发表中。然后再次查询转发表,如果在其中
还未找到目的地址对应的表项,则采用一种尽力转发的方法,在一个 vlan 内进行泛洪, 即未知单播泛
P a g e | 377
CCIE R/S & Service Provider Exam Certification Guide
洪(unknown unicast flooding).如下图
17.2.4 多层交换操作
对于多层交换机而言,可以对 3 层,4 层或者更好层的信息为基础进行转发,第一代多层交换机采
用路由处理器(RP)和交换机引擎(SE)这两种方式,后期出现第二代基于拓扑的 MLS,利用特殊的硬件将 3
层路由选择信息并入一个高速的网络拓扑数据库,帧也可以通过硬件完成 TTL 值修改和 3 层头校验。
如上图,目的 MAC 地址将用 L2 转发表进行索引,3 层可以通过 FIB 表进行查询,他们的表结构如
下,可以看出,FIB 表实质就是将 CAM 表和路由表进行整合,降低了转发延迟
17.3 交换操作中使用的表
17.3.1 内容可寻址存储器( CAM )
如上图所示,CAM 表实质就是一个 2 层转发表,所有的 Catalyst 系列交换机都是用一个 CAM
表进行 2 层交换。交换机通常有一个很大的 CAM 表,但空间还是有限的,所以每个 CAM 的条目都
设置了老化时间,默认为 300s。当 CAM 表满后,新的条目无法加入 CAM 表,将会导致交换机进行
广播。CAM 表内容可以手动设置:
CAM 表老化时间
Sw(config)#mac address-table aging-time second
静态添加 CAM 表项
P a g e | 378
(default 300)
CCIE R/S & Service Provider Exam Certification Guide
Sw(config)#mac address-table static mac-addr vlan vlan-id interface type mod/num
如果一个 MAC 地址被交换机在多个端口反复学到,此时交换机的 CAM 表中将会把这个地址
标记为抖动(flapping)
显示 CAM 内容可以使用如下命令
Switch# show mac address-table dynamic
[address mac-address | interface type mod/num |vlan vlan-id]
Switch# show mac address-table dynamic address 0050.8b11.54da
Mac Address Table
-------------------------------------------------------------------------Vlan
Mac Address
Type
Ports
----------------------------54
0050.8b11.54da
DYNAMIC
Fa0/1
Total Mac Addresses for this criterion: 1
Switch#
查看CAM表的大小 show mac address-table count
清除 CAM 表项
Switch# clear mac address-table dynamic
[address mac-address | interface type mod/num |vlan vlan-id]
17.3.1 三重内容可寻址存储器( TCAM )
传统的路由选择中,ACL 的匹配 ,过滤和控制特殊流量的工作是同过软件实现的。 在多层
交换机中这些所有匹配过程通过硬件实现,这样就降低了分组的转发延迟。TCAM 表允许在单表查
找中相对完全访问控制列表评估一个分组。许多交换机有若干的 TCAM 表,因此可以对流量安全性,
服务质量访问控制列表同时评估,或者 2 层,3 层转发决策完全并行。Catalyst IOS 有 2 个组件来
控制 TCAM 表
特征管理者 FM:
用于将访问控制实体编译或者合并到 TCAM 表中
交换数据库管理者 SDM:
用于将 TCAM 划分为不同的功能区域
17.3.2 TCAM 结构
CAM 表查询,通常是一个基于准确关键字匹配的条目查询,输入值通常只有 0/1。而 TCAM
表极大的增强了更加抽象的操作,所以输入值由 0/1/x 组成,x 表示不用关心的位。TCAM
表由表项值,掩码和结果(VMR)组成。其匹配方式和路由表的最长匹配相似,通过一些组件
对来自帧头或者分组头的字段进行处理。组件如下:
Access List Type
Ethernet
ICMP
Extended IP
Other IP
IGMP
IPX
Value and Mask Components, 134 Bits Wide (Number of Bits)
Source MAC (48), destination MAC (48), Ethertype (16) Source
MAC (48), destination MAC (48), Ethertype (16)
Source IP (32), destination IP (32), protocol (16), ICMP code (8),
ICMP type (4), IP type of service (ToS) (8)
using TCP/UDP Source IP (32), destination IP (32), protocol (16), IP
ToS (8), source port(16), source operator (4), destination port
(16), destination operator (4)
Source IP (32), destination IP (32), protocol (16), IP ToS (8)
Source IP (32), destination IP (32), protocol (16), IP ToS (8),
IGMPmessage type (8)
Source IPX network (32), destination IPX network (32), destination
node(48), IPX packet type (16)
P a g e | 379
CCIE R/S & Service Provider Exam Certification Guide
17.3.3 TCAM 操作
TCAM 表总是通过掩码组织起来的,每一个唯一的掩码由 8 个值模式与之相关联。例如
Catalyst6500 TCAM 支持 4096 个掩码和 32768 个值模式,每一个掩码-值对同时或者并行进
行评估,在单表查找中,显示最优或最长匹配。
例如
access-list 100 permit tcp host 192.168.199.14 10.41.0.0 0.0.255.255 eq telnet
access-list 100 permit ip any 192.168.100.0 0.0.0.255
access-list 100 deny udp any 192.168.5.0 0.0.0.255 gt 1024
access-list 100 deny udp any 192.168.199.0 0.0.0.255 range 1024 2047
针对如上 ACL,TCAM 表处理后的结果如下
TCAM 表中对于端口的操作是采用外置的一个寄存器来做的,但是对于一个 TCAM 表而
言,其 LOU 寄存器是非常少的,所以在写 ACL 的时候需要恰当的规则来使用这些寄存器。
P a g e | 380
Show tcam counts
可以查询Tcam表的容量
Show sdm prefer
可以查看 TCAM 的划分
CCIE R/S & Service Provider Exam Certification Guide
Chapter 18
Catalyst交换体系结构
18.1 Catalyst交换机简介
Cisco Catalyst 交换机产品线源于 1993 年 cisco 收购的一家名为 Crescendo 的公司。随后,Cisco 进行 Synergy
项目的开发,成功研制出 Catalyst 5000/5500 系列交换机,此后经过多年的发展产生了现在应用最广泛的
Catalyst 6000/6500 Catalyst 4500 和 Catalyst 3550/3750 系列交换机。因为众多的 Cisco 交换产品平台所采用
的技术的基础概念都起源于 Catalyst 5000。所以我们将从 Catalyst 5000 系列开始,介绍 Cisco Catalyst 交换产
品的体系结构
18.2 Catalyst 5000/5500
Synergy 项目始于 1994 年,主要目标是为 FDDI 100Mbit/s 以太网和 ATM 主干提供 10Mbit/s 和 100Mbit/s
的以太网和令牌环工作组的专用交换技术。Catalyst 5000 就是这个项目的产物。Catalyst 5000 交换机包括一个
5-slot 的机箱。其中 Supervisror 引擎使用一个插槽。提供冗余替换线路模块,冗余电源,冗余风扇。其交换
总线为 1.2Gbit/s 的共享总线。
自 Catalyst 5000 处先后,Cisco 在 3 层控制和 4 层处理上做出了很多改进和提高。后期,Catalyst 550 采
用了矩阵交换的方式,共有 3 条 1.2Gbit/s 的总线,提供 3.6Gbit/s 的背板带宽
18.2.1 Catalyst 5000/5500 交换机组件
Cisco Catalyst 5000/5500 交换机包括以下组件:
机箱
电源和散热风扇
Supervisor 模块
线路模块
1.机箱
机箱其实有点像普通 PC 的主板和机箱的合体。为交换机的各种模块,散热设备,电源
提供物理机架。提供了所有模块,线卡间的电气连接。下图为一个完全配置各种线卡模块的
Catalyst 5000 交换机的外观图
Model
5000
5001
5505
Description
Catalyst 5000 系列 5 个插槽
Catalyst 5000 系列 2 个插槽
Catalyst 5500 系列 5 个插槽
Model
5509
5513
Description
Catalyst 5000 系列 9 个插槽
Catalyst 5000 系列 13 个插槽
P a g e | 381
CCIE R/S & Service Provider Exam Certification Guide
2.电源和散热风扇
每台交换机都包括单个或多个电源和风扇单元,最廉价的 Catalyst 交换机采用内置电源
和散热系统,如 3750 系列。其他交换机都设置了支持冗余供电的插槽。当只插入一个风扇
和电源时,Supervisor 中系统状态灯会变红。
3.Supervisor 模块
Supervisor 模块是控制整个交换机的核心。对于 Catalyst 5000 所采用的 Supervisor I,它
采用了如下组件
Network Management Processor (NMP)— 网络管理处理器,负责处理管理功能例如负
责生成树计算,虚拟终端会话,SNMP 和次级 Supervisor 模块同步等
Master Communications Processor (MCP)— 主通信处理器,负责和各线路模块上的
LCP(本地处理器)交流统计和 RMON,他们采用 SCP 串行通讯协议
Nonvolatile random-access memory (NVRAM)—用于保存交换机的各种配置信息
Dynamic random-access memory (DRAM)— 动态随机访问缓存,用于交换机操作系统
工作的内存空间
Flash memory— 闪存,用于储存交换机操作系统,并可以用来备份配置文件
Content-Addressable Memory (CAM)— 内容寻址内存, CAM 表中的 MAC 端口,vlan
信息均储存在这段内存中
此外,Supervisor I 还有一些 ASIC 支持一些特殊的功能
Enhanced Address Recognition Logic Version (EARL)— 增强型地址逻辑识别,EARL ASIC
用于创建并更新存放在 CAM 中的 MAC 地址和端口映射表
Synergy Advanced Interface Network Termination (SAINT)— 高级接口网络终端,这个
ASIC 可以给 Supervisor 提供 10/100Mbit/s 的的以太网上行链路,在 Supervisor 中,它
为每个一台上行链路端口提供了 1 个 SAINT ASIC
Synergy Advanced Multipurpose Bus Arbiter (SAMBA)— 高级多目标总线仲裁器,用于处
理仲裁和数据总线的访问
下图就是一块 SuperVisor I 的照片,上行接口可以换位不同种类的接口卡。
P a g e | 382
CCIE R/S & Service Provider Exam Certification Guide
18.2.2 Catalyst 5000/5500 的Supervisor模块
在 Catalyst 5000 推出后,cisco 又陆续推出了另外 4 种 Supervisor
Supervisor I
只支持 2 层交换,并且不能升级到 MLS(多层交换),并且不能通过第二个 Supervisor 提
供任何冗余,并且不能与 Catalyst 5500 兼容,包含 2 个快速以太网上行接口,可以支持
不同介质。如上页图中所示,支持电缆和光纤的模块
Supervisor II
也是一种仅支持 2 层交换的模块,但能过通过第二个 Supervisor 提供冗余。同样包括 2
个快速以太网上行端口,支持不同介质
Supervisor IIG
在 Supervisor II 的基础上增加了 NFFC(Netflow 特性卡)并且可以增加可选的 RSFC(路由交
换特性卡)支持 3 层功能,实际上 RSFC 是子板上的 NPE-200。如果装置了 NFFC 和 RSFC,
交换机就可以支持多层交换功能了,在上行接口方面,这个模块支持 1Gbit/s 的链路。
Supervisor III
在 SupervisorIII 上,增加了对 Catalyst 5500 3.6Gbit/s 交叉交换矩阵的支持,集成 NFFC,
但不支持 RFSC,同样上行链路支持 Gbit/s 的各种介质接入,并采用了类似于标准 GBIC
接口的配置。
Supervisor IIIG
Supervisor IIIG 较 Supervisor III 加入了对 RSFC 的支持,并且能过支持标准的 GBIC 连接器
P a g e | 383
CCIE R/S & Service Provider Exam Certification Guide
Feature
Support for 16,000 MAC
Addresses Dynamically
Allocated Between Active Ports
Catalyst 5500/5000 Series
Chassis
Switching Engine that Provides
Data Path and Control for All
Network Interfaces
Hardware Support for 1024
VLANs
Environmental Status of Switch
Simple Network Management
Protocol (SNMP)
Remote Monitoring (RMON)
Console/Telnet Interface
Fast Ethernet Uplinks
Fast EtherChannel®
Redundant Supervisor Support
Greater RMON Storage Capacity
Support for Larger VMPS
NetFlow Feature Card II
Functionality
Route Switch Feature Card
(RSFC) Support with Console
Port
Modular FE or GE Uplinks
Fixed SX or LX/LH Gigabit
Uplinks
Enables 3.6 Crossbar Fabric
DTE/DCE Supervisor/RSFC
Console Port Toggle
GBIC Uplinks
PCMCIA Flash Memory
Enhanced Spanning-Tree
Performance
Enhanced Spanning-Tree
Scalability
Enhanced RMON/SNMP
Response
Supervisor
II
X
Supervisor
II G
X
Supervisor
III F
X
Supervisor
III G
X
Supervisor
III
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
18.2.3 EARL功能
EARL 是集成在 Supervisor 中的一个 ASIC,到后期 Catalyst 6500 系列使用多 AISC 来实现 EARL
功能,每个 AISC 处理不同的任务。例如 Qos 3 层查找或者 ACL 等,随着交换机的发展出现了很多
版本的 EARL
前期 EARL 仅用于维护 CAM 表。在 NFFC 中出现了 EARL II 使得 Supervisor 可以检查 3 层分组
信息,并且将 RSM 或者 RSFC 制定的路由选择决策进行重写,实现 3 层交换功能。因此如果一台运
行中的交换机移走 Supervisor 将会停止,双 Supervisor 间进行冗余更换时,部分平台可能会出现短
P a g e | 384
CCIE R/S & Service Provider Exam Certification Guide
暂的停止转发。
Supervisor 产品编号
WS-X5005
WS-X5006
WS-X5009
WS-X5505
WS-X5506
WS-X5509
WS-X5530-E1
WS-X5530-E2
WS-X5530-E2A
WS-X5530-E3
WS-X5530-E3A
WS-X5534
WS-X5540
WS-X5550
Supervisor Model
Supervisor I
Supervisor I
Supervisor I
Supervisor II
Supervisor II
Supervisor II
Supervisor III
Supervisor III NFFC
Supervisor III NFFC-A
Supervisor III NFFC II
Supervisor III NFFC II-A
Supervisor III F
Supervisor II G
Supervisor III G
EARL 版本号
EARL1
EARL1
EARL1
EARL1+
EARL1+
EARL1+
EARL1++
EARL2 (NFFC)
EARL2 (NFFC)
EARL3 (NFFC II)
EARL3 (NFFC II)
EARL1++
EARL 3 (NFFC II)
EARL3 (NFFC II)
18.2.4 Catalyst 5000/5500背板带宽
在 Synergy 项目中,Catalyst 交换机的数据总线为 48Bit,工作频率为 25Mhz,则可以提供
1.2Gbit/s 的带宽。 后期平台,采用更快的处理器,提高了交换矩阵和分布转发能力,新型平台
(Catalyst 3550/3750 4500 和 6500)可以提供 32Gbit/s 到 720Gbit/s 的转发能力。
除背板带宽外,另一个衡量交换机性能的参数为每秒最多转发的分组数,例如 32Gbit/s 的
Catalyst 6000 系列 supervisor I 引擎每秒可以提供 15,000,000 个分组的转发
18.2.5 Catalyst 5000/5500的线路模块
根据 Synergy 项目的计划安排,Cisco 首先推出了下列以太网线路模块
 12-port, 10/100 Mbps autonegotiation Ethernet/Fast Ethernet with RJ-45 connectors for
unshielded twisted-pair (UTP) Category 5 cable
 24-port, 10 Mbps Ethernet with two RJ-21 Amphenol connectors
 12-port, 10 Mbps 10BASE-FL with ST fiber connectors
 48-port, 10 Mbps group switched Ethernet with four RJ-21 Amphenol connectors (4
switched ports, 12 shared ports per switched port)
 12-port, 100 Mbps 100BASE-FX with SC fiber connectors
 24-port, 100 Mbps Fast Ethernet with RJ-45 connectors for UTP Category 5 cable (3
switched ports, 8 shared ports per switched port)
 24-port, 10 Mbps Ethernet with RJ-45 connectors for UTP Category 5 cable
上述一批模块仅支持 10/100Mbit/s 以太网,在 Gbit/s 成为标准之前已经出现很多年。每个以
太网线路模块提供转发能力的 ASIC,在 12 端口 10/100 Mbit/s 的以太网交换模块中,Cisco 为每个
模块上的端口配备了一个 SAINT ASIC。
P a g e | 385
CCIE R/S & Service Provider Exam Certification Guide
在 Cisco 推出 Catalyst5000 后,Cisco 又陆续推出了多种线路模块,详情可以在 cisco 的官方网
站查询。下图为推出的第一批 16 口的 10/100 Mbit/s 以太网交换模块
18.2.6 Catalyst 5000/5500体系结构
Catalyst 5000 共有 3 种总线来控制整个路由器或者进行路由交换。
1. 交换数据总线(dBUS)
2.
1.2Gbit/s
用于线卡间的数据交换
管理总线(mBus) 用于 NMP 到各个模块的管理信息,而且承载各模块到 NMP 的统计信息。
采用 SCP 协议通讯
3. 结果/索引总线(rBUS)
用于承载中央 EARL ASIC 到端口与端口选择的信息,该信息不仅
能确认哪些端口可以转发分组,同时还可以确定哪些端口从缓冲区中清空分组
Catalyst5500 系列实现了 3 条数据交换总线,为了维护产品兼容性,5500 机箱进行了特殊设
计,不仅可以使用 3 条总线,同时,老款的 5000 线路卡依旧可以在上面使用,类似于 AGP 8x/4x
的兼容方式
如下是在一台 5505 上察看模块信息的结果
5505-3> (enable) show module
Mod Slot Ports
Module-Type
Model
Sub Status
------ ------------------------------------------------------------- -------1
1
2
1000BaseX Supervisor IIIG
WS-X5550
no
ok
2
2
24
10/100BaseTX Ethernet
WS-X5225R
no
ok
3
3
12
100BaseFX MM Ethernet
WS-X5201
no
ok
4
4
3
1000BaseX Ethernet
WS-X5403
no
ok
Mod Module-Name
Serial-Num
-------------------------------- -------------------------------1
00022532167
2
00013444226
3
00007499537
4
00007674051
Mod MAC-Address(es)
Hw
Fw
Sw
--- -------------------------------------- ------ ---------- -------------------------------------------------------1 00-d0-bb-9f-80-00 to 00-d0-bb-9f-83-ff
1.2
5.1(1)
5.5(12)
2 00-50-3e-b4-d8-80 to 00-50-3e-b4-d8-97
3.3
4.3(1)
5.5(12)
3 00-e0-1e-b6-0d-cc to 00-e0-1e-b6-0d-d7
1.1
2.3(2)
5.5(12)
4 00-e0-1e-6c-89-fe to 00-e0-1e-6c-8a-00
1.0
4.1(1)
5.5(12)
P a g e | 386
CCIE R/S & Service Provider Exam Certification Guide
为了使基于 Cisco LightSream 1010 技术的 ATM 交换处理器能在 Catalyst 交换机上使用,
Catalyst5500 推出了 5Gbit/s 的 ATM 信元交换总线。在所有的插槽中,slot1 为 supervisor 模块保留。
其余模块都能连接到 3.6Gbit/s 的总线上。在 Catalyst 5513 上有些特别,插槽 13 为 ASP—ATM 交换
处理器的插槽。其结构图如下:
18.2.6 Catalyst 5000/5500数据流
P a g e | 387
CCIE R/S & Service Provider Exam Certification Guide
Catalyst 5000 数据流交换方式如上图。它描述了 WS-X5224 以太网模块接收数据和转发数据的过程,
分为 7 个步
1. 主机 A 向 B 发送以太帧,在 SAINT 进行 FCS 校验,如果帧通过 FCS,则加上 15 字节的报头,
其中包括 vlan 信息
2. 随后入站端口将通过线路卡上的本地仲裁器向数据总线请求访问
3. 随后本地仲裁器通过中央仲裁器申请使用总线
4. Supervisor 上的中央仲裁器授权本地仲裁器使用总线
5. EARL 获得帧的副本,检查源,目的 MAC,vlan id 等信息
6. 查询结果通过 rBus 传到各线卡上
7. 随后各线卡的 LTL 标记将确定哪个口转发数据。
18.3 Catalyst 6000/6500
Catalyst6000 在 1999 年推出,代号为 Constellation,代表了 Cisco 交换技术向前迈进了一大步,将
3.6Gbit/的交换带宽升级到了 32Gbit/s。当年,又发布了 Catalyst 6500 系列(Constellation+)。6500 开始支
持交叉交换矩阵。同时也提供了向后的兼容性。并为支持交换矩阵和老式共享总线,6500 设计了特别
的电气连接。2002 年 Catalyst 6500 结构中出现了 SFM 交换矩阵模块,使 6500 平台能够支持 256Gbot/s
的交叉交换矩阵.
Catalyst 6500 系列为企业园区网和电信运营商网络设立了新的 IP 通信和应用支持标准,它不但能
提高用户的生产率,增强操作控制,还能提供无与伦比的投资保护。作为思科重要的智能多层模块化交
换机,Catalyst® 6500 系列能够提供安全的端到端融合网络服务,其使用范围从布线室到核心,再到数
据中心和广域网边缘。
Cisco Catalyst 6500 系列交换机提供 3 插槽、6 插槽、9 插槽和 13 插槽的机箱,以及多种集成式服
务模块,包括数千兆位网络安全性、内容交换、语音和网络分析模块。 Catalyst 6500 系列中的所有型
号都使用了统一的模块和操作系统软件,形成了能够适应未来发展的体系结构,由于能提供操作一致性,
因而能提高 IT 基础设施的利用率,并增加投资回报。从 48 端口到 576 端口的 10/100/1000 以太网布线
室到能够支持 192 个 1Gbps 或 32 个 10Gbps 骨干端口,提供每秒数亿个数据包处理能力的网络核心,
P a g e | 388
CCIE R/S & Service Provider Exam Certification Guide
Cisco Catalyst 6500 系列能够借助冗余路由与转发引擎之间的故障切换功能提高网络正常运行时间。
18.3.1 Catalyst 6000/6500组件
同 Catalyst 5000/5500 类似,Catalyst6000/6500 系列也是模块化交换平台。其中包括机箱 Supervisor
线路模块和电源选项等
1.机箱
Catalyst 6000/6500 可以采用多种机箱,机箱间的区别仅在支持插槽数量的不同,下表为
Catalyst 6000/6500 的各种机箱型号
型号
WS-C6006
WS-C6009
WS-C6503
WS-C6506
描述
Catalyst 6000
Catalyst 6000
Catalyst 6500
Catalyst 6500
WS-C6509
Catalyst 6500 系列(9 插槽机箱)
32Gbit/s 共享总线和 256Gbit/s 交叉交换矩阵
WS-C6509-NEB
Catalyst 6500 系列(9 插槽机箱), 兼
容 NEBS[*]立式机箱
Catalyst 6500 系列(13 插槽机箱)
32Gbit/s 共享总线和 256Gbit/s 交叉交换矩阵
WS-C6513
系列(6 插槽机箱)
系列(9 插槽机箱)
系列(3 插槽机箱)
系列(6 插槽机箱)
背板连接
仅支持 32Gbit/s 共享总线
仅支持 32Gbit/s 共享总线
32Gbit/s 共享总线和 256Gbit/s 交叉交换矩阵
32Gbit/s 共享总线和 256Gbit/s 交叉交换矩阵
32Gbit/s 共享总线和 256Gbit/s 交叉交换矩阵
[**]
[*]
NEBS 是控制电信设备质量和可靠性的一种标准
[**]
必须使用 SFM2
[***]
最初的 Catalyst 6000 系列机箱不支持交叉交换矩阵,SFM 和 Supervisor 720 开始支持交叉交换矩阵,
但他们只能被安装在 Catalyst 6500 的指定插槽中
2.Supervisor 和交换矩阵
自从推出 Catalyst 6000 系列交换机及其 Supervisor I 以来,Cisco 公司先后推出另外 5 种
Superviosr 模块和两种 SFM
Supervisor I
在推出 Catalyst 6000 系列时,发布了 Supervisor I。由于总线带宽 6000 和 5000 系列并不
相同,所以 Catalyst 6000 系列的 supervisor I 和 5000 系列虽然名字相同,但并不是同样的设
备。它支持 32Gbit/s 的共享总线结构,使用 2 个 Gbit/s 的上行以太网接口,支持 GBIC.同时支
持 2 层交换,并且能够集成 MSFC I 子板的路由选择。MSFC I 是一种 NPE-200 路由处理器,
他不同于 C5500 系列的 RSFC,Supervisor I 不支持 PFC(策略特性卡)也不支持 MSFC II(第二代
多层交换特性卡)
Supervisor IA
除具备 Supervisor I 的特性外,加入了 PFC 支持,PFC 是用于支持硬件的 MLS 和 Qos 特
性的子卡。此外 IA 可以支持 MSFC2 子板,这样其提供的软件交换分组的性能比 MSFC1 高了
3 倍。
Supervisor II
能够连接到 SFM 交叉交换矩阵。同时包括了 PFC2 支持给予硬件的 CEF 转发。
SFM & SFM II
用于 Catalyst 6500 的交叉交换矩阵。SFM 为每个线路提供 8Gbit/s 的带宽,并可以使用交换矩
P a g e | 389
CCIE R/S & Service Provider Exam Certification Guide
阵提供的较小的输入输出缓存。在对进出 24Gbit/s 交换矩阵的帧进行交换的时候,交换矩阵
可以使用“3 倍速”的方法。SFM II 将每线路带宽升级到 16Gbit/s 而且支持 Catalyst 6513
Supervisor 720
Supervisor 720 最大的特点是集成了一个 720Gbit/s 的交换矩阵,释放了原本需要插 SFM
的插槽,它包括一个块新的 PFC3 和一块 MSFC3,2 个光纤以太网上行口,一个以太网 1Gbit/s
上行口。此时需注意,机箱内拥有 Supervisor 720 后,不能使用 SFM 和 SFM II
不同的 Supervisor 拥有不同的功能,可以借助于 EARL 的版本来了解各平台的转发能力。从
Superviosr IA 开始 PFC 能够代替 CAFÉ 进行转发。
Part Number
WS-X6K-SUP1-2GE
WS-X6K-SUP1A-PFC
WS-X6K-S2-PFC2
WS-SUP720
Model
Supervisor I
Supervisor IA
Supervisor II
Supervisor 720
EARL Version
EARL4 (CAFE2)
EARL5 (PFC1)
EARL6 (PFC2)
EARL7 (PFC3)
后期,Supervisor 又做了相应的升级
Supervisor Engine 720
面向企业核心、分发层和数据中心:高达720Gbps的交换矩阵连接;400Mpps;持全新
加速思科快速转发(CEF720)和分布式思科快速转发(dCEF720)接口模块;在硬件中提供IPv6和
MPLS
Supervisor Engine 2 MSFC2
面向企业分发层、数据中心和WAN边缘:通过SFM实现高达256Gbps
的交换矩阵连接;210Mpps;支持分布式思科快速转发(dCEF256)接口模块;支持第三层路由
协议
Supervisor Engine 2 PFC2
提供最佳布线室和数据中心接入:通过SFM 实现高达256Gbps 的交换矩阵连接;利用
硬件中的思科快速转发(CEF)实现30Mpps 的集中转发
Supervisor Engine 32
面向布线室:到模块的32Gbps 共享总线连接;15Mpps;集中第二层、第三层转发,有
P a g e | 390
CCIE R/S & Service Provider Exam Certification Guide
2 种模式:8 端口1GE 模式或2 端口10GbE 上行链路
转发能力:
Cisco Catalyst 6500 Supervisor Engine 1A多层交换特性卡(MSFC2): 15 mpps
Catalyst 6500 Supervisor Engine 2 MSFC2:最高210 mpps
Catalyst 6500 Supervisor Engine 32 MSFC2a: 15 mpps
Catalyst 6500 Supervisor Engine 720: 最高400 mpps
现售 Supervisor 模块型号
WS-SUP720-3BXL
Cat6500/Cisco 7600 Supervisor 720 矩阵 MSFC3 FC3BXL
WS-SUP720-3B
Cat6500/Cisco 7600 Supervisor 720 矩阵 MSFC3 PFC3B
WS-SUP720
Cat6500/Cisco 7600 Supervisor 720 矩阵 MSFC3 PFC3A
WS-X6K-S2U-MSFC2
Catalyst6500 Supervisor 2U,256MB Supervisor,512MBPFC2
WS-X6K-S2-MSFC2
Catalyst6500 Supervisor Engine-2,2GE,加MSFC-2/PFC-2
WS-X6K-S2-PFC2
Catalyst 6500 Supervisor Engine -2 ,2GE,加PFC-2
WS-SUP32-GE-3B
C6500 Supervisor 32,带8GigE 上行链路和PFC3B
WS-SUP32-10GE-3B
C6500 Supervisor 32,带2 个10GbE 端口和PFC3B
3.线路模块
Catalyst 6500 平台能够支持多种线路卡,其范围从 WX-X6024-10FL-MT(24 端口 10Mb 以
太网多模光纤模块)到 WS-X6502-10GE(1 端口 10Gb 单模光纤模块,如下图)
在推出 SFM 和 Supervisor 720 后,cisco 先后推出了很多模块,Catalyst 6000/6500 线卡
支持如下 3 类
1. 传统线路卡
只能连接到 32Gbit/s 的共享总线
2. 矩阵化线路卡
不仅可以连到 32Gbit/s 的共享总线,还可以一条 8Gbit/s 的
链路连到 SFM
3. 仅矩阵化的线路卡
不能连接到老式的 32Gbit/s 的共享总线,仅能和 SFM 建立 2
条 8Gbit/s 的链路
采用可选的 DFC(分布式转发卡) 某些模块可以提供分布式转发的能力。但此模块仅能安
装在矩阵化和仅矩阵化线路卡上。尽管 SFM 和 720 可以获得 256Gbit/s 和 720Gbit/s 的交换
带宽,但为了对每个帧和分组做出转发决策,线路卡必须依赖 PFC 形式的中央交换处理器
(EARL) ,DFC 是子板上的 PFC2 和 MSFC2 ,可以以相同的速度提供与 supervisor 完全相同的转
发决策。
DFC 将在每个线卡的硬件和总线中防止第 2 层和第 3 层传送逻辑;它的本地交换性能可
以达到 15Mpps 以上。在一个与架构之间具有一个串行连接的线卡上,在两个端口之间交换
的分组将会直接通过本地传送逻辑进行传送。在一个与架构之间具有两个通道连接的线卡上,
两个通道间的流量将会被本地交换或者利用本地传送逻辑在架构中传输,但是它不需要通过
监控引擎进行集中交换。支持 DFC 的线卡可以在本地制定传送决策。这使得数据流量可以在
P a g e | 391
CCIE R/S & Service Provider Exam Certification Guide
线卡之间并行传输,而不会受限于集中传送的可扩展能力。如果系统中混有传统的和新的支
持架构的线卡,那么这两者之间的流量将由监控引擎进行集中交换。但是,如果流量是在两
个支持架构的、具有分布式传送功能的线卡之间传输,即使机箱中装有一个传统的线卡,分
组仍然会在线卡之间直接交换,而不需要通过监控引擎。这种线卡对于提升 Catalyst 6500 系
列的可扩展能力至关重要,因为利用这些可以进行本地交换的线卡,交换机的总传送性能可
以达到 100Mpps。
CEF256--30Mpps(持续)
aCEF720--400Mpps(峰值)
dCEF720--400Mpps(持续)
Catalyst 6500_10GE线卡
WS-X6704-10GE
Catalyst 6500 4 端口10 千兆以太网模块(需要XENPAK)
WS-X6802-10GE
Catalyst 6500 dCEF720 万兆以太网模块
Catalyst 6500 1000M以太网
WS-X6516A-GBIC
Catalyst 6500 16 端口千兆以太网模块,矩阵型(需要GBIC)
WS-X6724-SFP
Catalyst 6500 24 端口千兆以太网模块,矩阵型(需要SFP)
WS-X6748-SFP
Catalyst 6500 48 端口CEF720 千兆以太网模块(需要SFP)
WS-X6816-GBIC
Cat 6500 16 端口千兆以太网模块,2 fab I/F
(需要GBIC,DFC/DFC3)
Catalyst 6500 10/100/1000Mbit/s线卡
WS-X6148-GE-TX
Catalyst 6500 48 端口10/100/1000 GE 模块,RJ-45
WS-X6148A-GE-TX
Catalyst 6500 48 端口10/100/1000 GE 模块,RJ-45
WS-X6148-GE-45AF
Cat 6500 PoE 802.3af 10/100/1000,48 端口(RJ-45)线卡
WS-X6148A-GE-45AF
Cat 6500 PoE 802.3af 10/100/1000,48 端口(RJ-45)线卡
WS-X6548-GE-TX
Catalyst 6500 48 端口矩阵型10/100/1000 模块
WS-X6548-GE-45AF
Cat6500 POE 802.3af 10/100/1000,48 端口(RJ45)CEF256 卡
WS-X6748-GE-TX
Cat6500 48 端口10/100/1000 GE 模块:矩阵型,RJ-45
Catalyst 6500 10/100Mbit/s线卡
P a g e | 392
WS-X6148-RJ-21
Catalyst 6500 48 端口10/100,可升级到语音,RJ-21
WS-X6148-21AF
Cat6500 POE 802.3af 10/100,48 端口(RJ21)线卡
WS-X6148-RJ-45
Catalyst 6500 48 端口10/100,可升级到语音,RJ-45
WS-X6148A-RJ-45
Catalyst 6500 48 端口10/100,带TDR,可升级到PoE 802.3af
WS-X6148-45AF
Cat6500 PoE 802.3af 10/100,48 端口(RJ45)线卡
WS-X6148A-45AF
Cat6500 PoE 802.3af 10/100,48 端口(RJ45)线卡
WS-X6148X2-RJ-45
Cat6500 96 端口10/100(RJ45),可升级到PoE 802.3af
CCIE R/S & Service Provider Exam Certification Guide
WS-X6148X2-45AF
Cat6500 PoE 802.3af 10/100,96 端口(RJ45)线卡
WS-X6548-RJ-21
Catalyst 6500 48 端口10/100,RJ-21,矩阵型
WS-X6548-RJ-45
Catalyst 6500 48 端口10/100,RJ-45,矩阵型
Catalyst 6500 100FX
WS-X6148FE-SFP
Catalyst 6500 48 端口100Base-X 模块(需要SFP)
Catalyst 6500其它模块
WS-SVC-CMM
通信介质模块
WS-SVC-CMM-24FXS
24 端口FXS 接口端口适配器
WS-SVC-CMM-6E1
6 端口E1 接口端口适配器
WS-SVC-CMM-6T1
6 端口T1 接口端口适配器
WS-SVC-CMM-ACT
临时会议和编码转换PA
WS-SVC-CSG-1
内容服务网关
WS-SVC-FWM-1-K9
用于Catalyst 6500 的刀片式防火墙
WS-SVC-IDS2BUNK9
IDSM-2 600M 备用模块
WS-SVC-IPSEC-1
用于6500 和7600 系列的IPSec VPN 安全模块
WS-SVC-MWAM-1
多处理器WAN 应用模块
WS-SVC-NAM-1
Catalyst 6500 网络分析模块-1
WS-SVC-NAM-2
Catalyst 6500 网络分析模块
WS-SVC-PSD-1
永久存储设备
WS-SVC-SSL-1-K9
用于Catalyst 6500 的SSL 模块
WS-SVC-WLAN-1-K9
无线LAN 服务模块,CEF256
WS-X6066-SLB-APC
Catalyst 6500/7600 内容交换模块
WS-X6066-SLB-S-K9
内容交换模块,带SSL 子卡
Cisco Catalyst 6500 系列端口密度信息、WAN 模块和接口
最高系统端口密度
Catalyst
Catalyst
Catalyst
(包括交换管理引擎
6503
6503-E
6506 和
端口)
6506-E
万兆以太网
2
8
20
(XENPAK)
千兆以太网(小型可插
8
98
242
拔[SFP]光端口)
千兆以太网(千兆接口
34
34
82
转换器[GBIC])
10/100/1000 以太网
97
97
241
10/100 快速以太网
192
192
480
100BASE-FX
96
96
240
FlexWAN (DS-0 到
2 个模块, 2 个模块,带 5 个模块,带
OC-3)
带 4 个端口 4 个端口适配 10 个端口适
适配器
器
配器
Catalyst
6509 和
6509-E
32
Catalyst
6509-NEB
Catalyst
6513
32
20
386
384
410
130
130
194
385
768
384
8 个模块,带
16 个端口适
配器
385
768
384
8 个模块,带
16 个端口适
配器
577
1152
576
12 个模块,
带 24 个端口
适配器
4.电源和散热问题
Cisco Catalyst 6500 系列交换机支持多种电源模块,同时也支持为某些线上供电卡提供电
源。Cisco 可以支持如下几种电源模块
P a g e | 393
CCIE R/S & Service Provider Exam Certification Guide
950W AC input (Cisco Catalyst 6503 chassis)
1000W AC input
1300W AC and DC input
2500W AC and DC input
4000W AC input
同时当使用 Supervisor 720 时,风扇需使用高速风扇托盘。而大多数情况可以使用正常
速度的风扇托架
18.3.2 Catalyst 6000/6500体系结构
Catalyst 6000/6500 系列体系结构较 5000/5500 有很大的飞跃。
采用 Cisco IOS 软件模块化的 Cisco Catalyst 6500 系列通过软件基础设施的持续演进,提高了运
营效率,且最大限度地缩短了停机时间。通过让模块化的 Cisco IOS 子系统作为独立的进程运行,
这个重要的创新可以:
通过可自行恢复的进程,最大限度地缩短了计划外停机时间
通过子系统运行中软件升级(ISSU),简化了软件改动
通过集成嵌入式事件管理器(EEM),实现进程级的自动策略控制
Catalyst 6500 系列通过 PFC 或 DFC 上的 ASIC,提供了基于硬件的转发功能。Catalyst 6500 系
列的控制平面功能在 MSFC 复杂部件上的专用 CPU 上运行。
控制平面负责管理路由协议更新和管理流量等控制流量。
数据平面负责通过 ASIC 进行的实际分组转发。
完全独立的数据平面可确保,即使控制平面运行中断,只要软件的智能特性足以对硬件编程,
使之不间断运营,就可持续转发流量。凭借冗余交换管理引擎,在主交换管理引擎发生硬件故障
时,Catalyst 6500 系列的不间断转发(NSF)和状态化切换(SSO)特性仍能提供持续运行的数据转发平
面。
1.共享总线
EARL 交换或数据总线(dBus)
负责在线路卡之间的交换帧,62.5Mhz/256bit
双工模式 32Gbit/s
以太网带外信道(EOBC)
负责承载 NMP 到各模块的管理信息,同时承载统计信息
类似于 5500 的 mBus
EARL 结果/索引总线(rBus)
负责承载中央 EARL ASIC 到端口的端口选择信息。
2.交叉交换矩阵
采用 SFM I/II 或者 Supervisor 7200 使 Catalyst 6500 能够支持交换矩阵。SFM 为每个线路
P a g e | 394
CCIE R/S & Service Provider Exam Certification Guide
提供 16Gbit/s 的带宽,如果工作在双工模式,则有 32Gbit/s。但 Catalyst 6513 比较特殊,因
为有 13 个插槽,所以前 7 块板带宽为 8Gbit/s 后 5 块板带宽为 16Gbit/s。下图是一台 Catalyst
6509 的 SFM II 示意图
18.3.3 Catalyst 6500交换方式
Catalyst 6500 根据不同的 Supervisor 可以采用不同的交换方式,Supervisor IA 采用流通过(Flow
Though)的方式,中央的 EARL ASIC 将负责决定所有线卡的全部转发决策,整个分组将被发送到共
享总线,导致其转发能力不会超过 15Mpps.
采用 SFM 的 Catalyst 6500 可以采用截取(Truncated)模式,矩阵交换线路仅将一个帧的前 96
字节发送,包括 32 字节报头和 64 字节数据。但性能仍然被限制在 15Mpps
采用 SupervisorII 和 SFM,仅在背板上传送 32 字节报头和数据分组的子集。这种模式称之为
紧凑模式。只有当交换机中安装的所有线路卡都支持矩阵化的情况下才能使用“紧凑”模式。此
时峰值转发能力可达 30Mpps,这种模式也称之为 CEF256 模式
在 Supervisor 720 上实现了更高的转发速度,由于采用 PFC3 和 MSFC3,Supervisor720 支持
CEF256 aCEF(加速 CEF) dCEF(分布式 CEF)3 种快速转发模式。其转发速度提升到 400Mpps
18.3.4 Catalyst 6500交换矩阵的数据流
如果 Catalyst 6500 采用传统的共享总线,其数据流模式和 Catalyst 5500 十分相似。但插入 SFM
或者 Supervisor720 后的 Catalyst 6500 支持了矩阵交换,将有一些其它的转发方式,下面以一个单
播分组为例
P a g e | 395
CCIE R/S & Service Provider Exam Certification Guide
图中采用的 WS-6515 模块支持 32Gbit/s 的共享总线,另同时使用 8Gbit/s 的带宽连接到 SFM
而被矩阵化。Medusa ASIC 将线路卡连接到传统的共享总线和交换矩阵。
1.
Slot 2 上的 Pinnacle ASIC 将帧发送到线路卡的本地数据总线(LC-dBus),注意,只有被
矩阵化的板卡才会有 LC-dBus
2.
Slot 2 上的 Medusa ASIC 和其他所有 Pinnacle ASIC 储存整个数据帧
3.
由于所有线卡被矩阵化,故可以采用 CEF256 的方式进行转发。则线卡上创建一个
64 字节的报头,并由 Medusa ASIC 传送到中央 EARL 数据总线(E-dBus)
4.
Medusa 和 Supervisor 上的转发引擎(PFC2)储存报头
5.
转发引擎检查报头,随后将转发决策发送到中央 EARL 的结果总线(E-rBus)
6.
所有的线路卡上的 Medusa ASIC 将看到结果
7.
Slot2 上的 Medusa 将转发引擎的结果发送给 LC-rBus.其它所有 Medusa 丢弃报文
8.
对于从 Supervisor 转发引擎接收到的结果保存了 FPOE(Fabric Port of Exit),并将 FPOE
放置到报头,该报头用于确定交换矩阵发送帧的目标位置。此时 Medusa 将整个分
组发送到交换矩阵
P a g e | 396
9.
交换矩阵根据 FPOE 信息转发数据分组到 slot3
10.
Slot3 上的 Medusa 接收帧
11.
Medusa 将帧转发到 LC-dBus,此时 slot3 上的所有 GE 端口收到帧。
12.
Slot3 上的 Medusa 在本地结果总线 LC-rBus 上产生转发结果
13.
LTL 选择连接到主机 2 的 Pinnacle ASIC 转发数据,其他端口丢弃
CCIE R/S & Service Provider Exam Certification Guide
18.4 Catalyst 4500
Cisco® Catalyst® 4500 系列可扩展、模块化、高密度交换机提供了性能出众的第二、三、四层交换
及智能服务,实现了网络控制和永续性。这些交换机提供了多种快速以太网和千兆位以太网线卡,包括
针对企业与商用交换解决方案的桌面、分支机构骨干和服务器,以及服务供应商城域以太网而优化的光
纤及铜缆接口。千兆位以太网线卡包括经济有效的高性能 1000BASE-X 千兆位接口转换器(GBIC)、小型可
插拔(SFP)千兆位以太网线卡和高密度 10/100/1000BASE-T 三速自动检测、自动协商千兆位以太网线卡。
快速以太网线卡包括各种线速 10/100、100-FX、100BASE-LX10 和 100BASE-BX-D 密度。
18.4.1 Catalyst 4500机箱
Catalyst 4500 源于 Galaxy 项目,其中 4507 属于 Galaxy 3,4510 属于 Galaxy 4。它被设计成一
种模块化的机箱,用于高密度配线间的交换方案,同时也被用作分布式或服务器交换机。在生产
时,4500 系列交换机有 4 种机箱。如下图
18.4.2 Supervisor和交换矩阵
Catalyst 4500 系列交换机能够支持 6 种不同的 Supervisor 模块。与 6500 不同的是,它的
supervisor 模块负责处理所有的转发决策和分组缓冲。其他 Catalyst 平台则使用每端口缓冲,并且
将转发只能分发给线路模块。所以对于 Catalyst 4500 系列而言,其安装的 supervisor 决定了交换矩
阵的容量。
Supervisor II
如果安装在 4506 上,Supervisor Il 可以支持 24Gbit/s 的交换矩阵,并且只能处理 2
层转发决策。如果分组长度为 64 字节,那么 Supervisor 能够在第 2 层处理 18Mpps。
P a g e | 397
CCIE R/S & Service Provider Exam Certification Guide
Supervisor 将负责处理所有的分组,且将所有的分组缓冲到 8MB 的共享缓冲区中,可以
采用 2 个 GBIC 模块支持 Gbit/s 的上行链路。同时可以选购 3 层模块(WS-X4232-L3)支持
6Mpps 的 3 层转发功能。Supervisor II 采用 K1 规范体系,即拥有 3 个中央转发 ASIC。
每个 K1 ASIC 可以支持 12 个 1Gbit/s 的连接,所以每个 ASIC 总共能提供 24Gbit/s。每个
K1 ASIC 负责处理线卡上 1/3 的端口,并通过 1Gbit/s 连接起来,因为存在这些 1Gbit/s
的互联线路,所以如果希望在不同 K1 ASIC 的端口之间传送流量,将会产生瓶颈
Supervisor III
如果安装在 4506 上,Supervisor IlI 可以支持 64Gbit/s 的交换矩阵,它采用了新的 K2
体系结构,能够支持 2,3,4 层的分组转发。同时能够支持某些 3 层的高级特性,例
如 OSPF EIGRP BGP 等。K2 ASIC 和 K1 ASIC 结构完全不同。K2 ASIC 将分组处理功能划分
为分组处理和快速转发两个过程。 PPE(packet processing engine,分组处理引擎)负责接
收,储存和发送所有分组。FFE(Fast forwarding engine,快速转发引擎)可以负责 2,3,
4 层的查找,同时也可以负责处理 ACL 和 Qos 决策。因为仅使用一个 K2 ASIC,Supervisor
III 的性能不会像 Supervisor II 那样受到影响。
注:其性质就像我们常见双核处理器,K1 架构为板上总线的互联处理,互连带宽较
小,就像前几代双核技术共享 FBS,后期 K2 架构,提升了功能,提升了频率,同时将
很多功能集成到了一个 ASIC 中,在 ASIC 中大大的提高了数据流通的速度,类似于新的
Intel Core 2 或者 AMD Athlon 64X2。
Supervisor II+
如果安装在 4506 上,Supervisor Il+可以支持 64Gbit/s 的交换矩阵,它同样采用了新
的 K2 体系结构,能够支持 2,3,4 层的分组转发。但仅支持基本的 3 层功能,例如 RIP
v1/v2。不能运行 OSPF EIGRP 和 BGP,Cisco 将其定位为配线间解决方案。
如果在 2507R 中,可以使用 2 个 Supervisor II+ 实现冗余功能
Supervisor IV
如果安装在 4506 上,Supervisor IV 可以支持 64Gbit/s 的交换矩阵,它同样采用了新
的 K2 体系结构,能够支持 2,3,4 层的分组转发。同时支持高级的 3 层特性以及冗余
功能。同时可以选购子板支持 Netflow 功能
P a g e | 398
CCIE R/S & Service Provider Exam Certification Guide
Supervisor V
如果安装在 4510R 中,Supervisor V 能够支持 96Gbit/s 的交换矩阵。同样采用 K2 ASIC,
能够支持 48 个线速 Gbit/s 以太网端口。并且能够向后兼容 4006 和所有 4500 系列机箱。
4510R 仅能选择 Supervisor V。如果同时选用 2 块 Supervisor V,所有的 4 个 Gbit/s 上行
口都将处于“active”状态
Catalyst 4503 机箱
28Gbps
21 mpps
Catalyst 4506 机箱
64Gbps
48 mpps
Catalyst 4507R 机箱
68 Gbps
51 mpps
Catalyst 4510R 机箱
96Gbps
72 mpps
Supervisor V-10GE
Supervisor Engine V-10GE 继承了以前的 Cisco Catalyst 4500 系列管理引擎的第二到四
层、无阻塞交换功能,并添加了线速万兆位以太网上行链路、136Gbps 容量和 102mpps
吞吐率,以及其他特性,可通过高可用性进一步增强对于融合式数据、话音和视频网络
的永续控制,有助于为企业和城域以太网客户提供业务永续性。凭借精细服务质量(QoS)、
互联网安全性和网络管理,对于网络的控制从骨干扩展到了边缘。
Cisco Catalyst Supervisor Engine V-10GE 在面板上包括双线速万兆位以太网端口(X2 光
端口)和另外 4 个相连的千兆位以太网端口(小型可插拔[SFP]光端口),实现了部署选项的
最高灵活性。在同一管理引擎上将千兆位以太网和万兆位以太网端口相结合,使网络适
合于未来发展,只需添加万兆位以太网光接口即可方便地从千兆位以太网移植到万兆位
以太网。它使用户可在单一管理引擎上选择使用千兆位以太网上行链路或是万兆位以太
网上行链路,进一步增强了 Cisco Catalyst 4500 系列架构的投资保护。
Cisco Catalyst 4500 Supervisor Engine V-10GE 为第二层永续服务提供了端口可扩展性,
为企业和服务供应商市场提供了路由功能。此管理引擎专门针对企业布线室、分支机构
骨干或第三层分发点进行了优化,提供了可处理当前和未来网络应用的性能和可扩展性。
Catalyst 4503 机箱
64Gbps
48 mpps
Catalyst 4506 机箱
100Gbps
75mpps
Catalyst 4507R 机箱
100 Gbps
75mpps
Catalyst 4510R 机箱
136Gbps
102 mpps
P a g e | 399
CCIE R/S & Service Provider Exam Certification Guide
各种 Supervisor 模块间的区别如下表
特性和说明
第二到四层性能
机箱支持
Supervisor Engine IV
48 mpps 和 64 Gbps
Cisco Catalyst 4006,
Catalyst 4503, Catalyst
4506 和 Catalyst 4507R
冗余功能
有 (仅限 Cisco Catalyst
4507R )
2 条千兆位以太网链路
Supervisor Engine V
72 mpps 和 96 Gbps
Cisco Catalyst 4006,
Catalyst 4503, Catalyst
4506, Catalyst 4507R 和
Catalyst 4510R
有 (仅限 Cisco Catalyst
4507R 和 Catalyst 4510R)
4 条千兆位以太网链路
2 条千兆位以太网链路
4 条千兆位以太网链路
GBIC
GBIC
冗余模式下的有效管
理引擎上行链路
有效管理引擎上行链
路 (非冗余模式)
上行链路光端口类型
Supervisor Engine V-10GE
102 mpps 和 136 Gbps
Cisco Catalyst 4503,
Catalyst 4506, Catalyst
4507R 和 Catalyst 4510R
有 (仅限 Cisco Catalyst
4507R 和 Catalyst 4510R)
4 条千兆位以太网链路或
2 条万兆位以太网链路 *
4 条千兆位以太网链路或
2 条万兆位以太网链路 *
SFP (千兆位以太网) 或 X2
光端口 (万兆位以太网端
口)
136 Gbps
102 mpps
交换容量
吞吐率
多层交换
IGRP EGIRP OSPF IS-IS
BGP
动态缓冲限制 (DBL):
QoS 共享
广播抑制
组播抑制
QinQ
NetFlow 支持
64 Gbps
48 mpps
有
仅支持非阻塞 Gbps 以太口
软件 1
无
直通式
有 (需子卡)
有
在所有端口上支持
硬件 2
有
在硬件中
有 (需子卡)
有
在所有端口上支持
硬件 2
有
在硬件中
有 (在基板上)
CPU
同步动态 RAM
(SDRAM)
有效 VLAN
组播项
333 MHz
512 MB
400 MHz
512 MB
800 MHz
512 MB
4000
28,000 (第三层), 16,000
(第二层)
3000
4000
4000
28,000 (第三层), 16,000
(第二层)
3000
4000
4000
128,000
有 (512 KB)
有 (16 KB
有 (512 KB)
有 (16 KB)
有 (512 KB)
有 (16 KB)
STP 实例
交换式虚拟接口
(SVI)
NVRAM
(IGMP) 监听
96 Gbps
72 mpps
全面的第二到四层服务和路由
有
有
有
3000
4000
18.4.3 Catalyst 4500线路模块
因为老式的 Catalyst 4000 线路模块能够兼容 Catalyst 4500 系列平台。由于 Catalyst 4500 系列体系
结构的原因,线卡被认为是功能透明的,它们只能将分组发送到 Supervisor 上进行处理。每种 Catalyst
4000/4500 线卡都采用末节 ASIC,末节 ASIC 的功能是将 supervisor 的 6 条 1Gbit/s 连接划分给各线路模
块。使得线路模块的各端口拥有合适的带宽和速度。
Catalyst 4500 线卡和 GBIC
WS-X4148-RJ
WS-X4148-RJ21
P a g e | 400
Catalyst 4500 10/100 快速以太网模块,48 端口(RJ-45)
Catalyst 4500 电信交换模块,48 端口 10/100(4xRJ21)
CCIE R/S & Service Provider Exam Certification Guide
WS-X4232-GB-RJ
Catalyst 4500 E/FE/GE 模块,2GE(GBIC),32-10/100 FE(RJ-45)
WS-X4232-RJ-XX
Catalyst 4500 FE 基本模块,32-10/100(RJ-45)+
模块化上行链路插槽
WS-X4302-GB
Catalyst 4500 千兆以太网模块,2 端口(GBIC)
WS-X4306-GB
Catalyst 4500 千兆以太网模块,6 端口(GBIC)
WS-X4506-GB-T
Catalyst 4500 千兆以太网模块,6 端口: 10/100/1000BASET
WS-X4424-GB-RJ-45
Catalyst 4500 24 端口 10/100/1000 自动传感模块(RJ45)
WS-X4548-GB-RJ45
Catalyst 4500 48 端口 10/100/1000 自动传感模块(RJ45)
WS-X4124- RJ45
Catalyst 4500 10/100 模块,24 端口(RJ45)
WS-X4224- RJ45V
Catalyst 4500 POE 802.3af 10/100,24 端口(RJ45)
WS-X4524-GB- RJ45V
Catalyst 4500 POE 802.3af 10/100/1000,24 端口(RJ45)
WS-X4248- RJ21V
Catalyst 4500 POE 802.3af 10/100/1000,48 端口(RJ45)
WS-X4248- RJ45V
Catalyst 4500 POE 802.3af 10/100/1000,48 端口(RJ45)
WS-X4548-GB- RJ45V
Catalyst 4500 POE 802.3af 10/100/1000,48 端口(RJ45)
WS-X4418-GB
Catalyst 4500 GE 模块,服务器交换 18 端口(GBIC)
WS-X4448-GB-SFP
Catalyst 4500 48 端口 GE 1000BASE-X(SFP 另售)
PoE 或 SFP(或有线)
18.4.4 Catalyst 4500电源和散热模块
Cisco Catalyst 4500 系列交换机可以使用如下 4 种额定功率的内置电源
PWR-C45-1000AC
Catalyst 4500 1000W 交流电源(仅限数据)
PWR-C45-1400AC
Catalyst 4500 1400W 交流电源(仅限数据)
PWR-C45-1300ACV
Catalyst 4500 1300W 交流电源(带 PoE)
PWR-C45-2800ACV
Catalyst 4500 2800W 交流电源,(带 PoE)
下图为一台 Catalyst 4500 所采用的 2800W ACV 电源
Catalyst 4500 平台上电源可以以两种方式工作。
1. 冗余模式:即两个电源都处于联机模式,每个电源向机箱提供一半的电量。当一个电源
出现故障后,另一个电源将提供系统的所需功率,这种模式下,系统地总功率不能超过
3 个电源的能力
2. 联合模式,在联合模式中,Supervisor 结合了两个电源的功率,进而提供高于单个电源
P a g e | 401
CCIE R/S & Service Provider Exam Certification Guide
的功率,当某电源发生故障后,某些线上供电的设备将会停止供电。
Catalyst 4500 仅支持单一的内部风扇托盘,每个风扇是独立的,单个风扇能够满足系统地散
热,当出现故障后,系统将产生错误消息,同时通告用户发生故障
18.4.5 Catalyst 4500的数据流
上图为 Catalyst 4500 K2 架构,描述了数据在 4500 中交换的过程。
Slot3 上采用了 WS-X4306-GB 带有 6 个千兆接口 ,
Slot4 上采用了 WS-X4448-GB-RJ 带有 48 个 10/100/1000Mbit/s 模块
数据传输过程如下:
1. 主机将分组发送到模块 3,并且将其发送到 Supervisor 背板。
2. 分组被放到缓冲内存中,PPE 建立 FFE 查找描述符
3. 将查找描述符发送到 FFE,FFE 执行 2,3 层的查找,并处理 ACL 和 Qos
4. 作为查找的结果,FFE 创建分组发送描述符给 PPE
5. PPE 重写分组转发到模块 4
6. 模块 4 上的末节 ASIC 采用循环调度的方式来确定何时发送分组
7. 分组被发送给主机 2
P a g e | 402
CCIE R/S & Service Provider Exam Certification Guide
18.4.6 Catalyst 4948
Cisco Catalyst 4948 是一款线速、低延迟 1RU 固定配置交换机,用于机架优化的服务器交换。
在 Catalyst 4500 系列硬件和软件成熟架构的基础上,Catalyst 4948 系列为高性能服务器和工作站
的低密度、多层汇聚提供了超乎寻常的性能和可靠性。
Cisco Catalyst 4948 采用了一个 96Gbps 交换矩阵,在硬件中为第二到四层流量提供了 72Mpps
的转发速率,从而为数据密集型应用提供了线速吞吐率和低延迟。无论有多少路由条目或启用了
多少第三层和第四层服务,都能保证交换性能。基于硬件的思科快速转发路由架构提高了可扩展
性和性能。
在单一 Cisco Catalyst 4948 上,可安全地建立多个服务器群。此交换机能同时隔离不同的第二
层群组流量,并保留 IP 地址空间。在万一发生服务器遭破坏的情况下,Cisco Catalyst 4948 无需更
改服务器配置,即能防止中间人和 IP 电子欺骗攻击群组的其余部分。Cisco Catalyst 4948 会记录这
些攻击,以进行审查。
Cisco Catalyst 4948 提供了丰富的网络流量安全功能。安全策略可通过访问控制列表(ACL)方便
地制订。所有 ACL 查询都在硬件中完成,所以在网络中实施基于 ACL 的线速安全性时,不会影响
线速转发和路由性能。Cisco Catalyst 4948 也支持 SSH(版本 1 和 2)协议以及简单网络管理协议版本
3 (SNMPv3),用于安全远程访问和网络管理。
18.5 Catalyst 3550/3560/3750
Catalyst 3550 系列交换机通常作为建筑物接入交换机部署的,具有固定的端口密度。并且具有高端交换
机类似的功能,但成本更低。经过多年的发展,Catalyst 3550 系列交换机逐渐派生出 3500XL 3560 3750 等多
个系列的交换机产品。
18.5.1 Catalyst 3550/3500XL
Cisco Catalyst 3550 系列智能化以太网交换机是一个可堆叠的多层企业级交换机系列,可以提
供高水平的可用性、安全性和服务质量,从而提高网络的运行效率。因为具有多种快速以太网和
千兆位以太网配置,因此 Catalyst 3550 系列既可以作为一个功能强大的接入层交换机,用于中型
P a g e | 403
CCIE R/S & Service Provider Exam Certification Guide
企业的布线室;也可以作为一个小型网络的骨干网交换机。客户可以在整个网络中部署多种智能
化服务,例如高级 QoS、速度限制、思科安全访问控制列表、组播管理和高性能的 IP 路由——同
时保持传统局域网(LAN)交换的简便性。内嵌在 Cisco Catalyst 3550 系列交换机中的思科集群管理套
件(CMS)让用户可以利用任何一个标准的 Web 浏览器,同时配置和诊断多个 Catalyst 桌面交换机。
Cisco CMS 软件提供了新的配置向导,它可以大幅度简化融合网络和智能化网络服务的部署。
Cisco Catalyst 3550 系列智能化以太网交换机包括下列配置
 Catalyst 3550-24 交换机 -- 24 个 10/100 端口和 2 个基于千兆位接口转换器(GBIC)的千兆位
以太网端口;1 机架单元(RU)
 Catalyst 3550-24 PWR 交换机 -- 24 个带有集成化馈线电源的 10/100 端口和 2 个基于 GBIC
的千兆位以太网端口;1 RU
 Catalyst 3550-24-DC 交换机 -- 24 个 10/100 端口和 2 个基于 GBIC 的千兆位以太网端口;1
RU;直流供电
 Catalyst 3550-24-FX 交换机 -- 24 个 100FX 端口和 2 个基于 GBIC 的千兆位以太网端口;1 RU
 Catalyst 3550-48 交换机 -- 48 个 10/100 端口和 2 个基于 GBIC 的千兆位以太网端口;1 RU
 Catalyst 3550-12G 交换机 -- 10 个基于 GBIC 的千兆位以太网端口和 2 个 10/100/1000BaseT
端口;1.5RU
 Catalyst 3550-12T 交换机 -- 10 个 10/100/1000 Base-T 端口和 2 个基于 GBIC 的千兆位以太
网端口;1.5 RU
交换矩阵带宽
24Gbps 交换矩阵 (Catalyst 3550-12G 和 3550-12T),
13.6 Gbps 交换矩阵(Catalyst 3550-48),
8.8 Gbps 交换矩阵(Catalyst 3550-24,3550-24 PWR,3550-24-DC 和 3550-24-FX)
第二层和第三层的最大转发速率
12 Gbps(Catalyst 3550-12G 3550-12T)
6.8Gbps(Catalyst 3550-48)
4.4Gbps(Catalyst 3550-24,3550-24 PWR, 3550-24-DC 和 3550-24-FX)
64 字节分组的转发速率为
18.0 Mpps(Catalyst 3550-12G 和 3550-12T)
10.1 Mpps(Catalyst 3550-48)
6.6 Mpps(Catalyst 3550-24,3550-24 PWR,3550-24-DC 和 3550-24-FX)
所有端口共享内存
P a g e | 404
CCIE R/S & Service Provider Exam Certification Guide
4 MB 内存架构(Catalyst 3550-12G, 3550-12T 和 3550-48)
2MB 内存架构(Catalyst 3550-24, 3550-24 PWR, 3550-24-DC 和 3550-24-FX)
MAC 地址上限
12000 个 MAC 地址(Catalyst 3550-12G 和 3550-12T)
8000 个 MAC 地址(Catalyst 3550-48,3550-24,3550-24 PWR,3550-24-DC 和 3550-24-FX)
单播路由上限
24000 个单播路由(Catalyst 3550-12G 和 3550-12T)
16000 个单播路由(Catalyst 3550-48,3550-24,3550-24 PWR,3550-24-DC 和 3550-24-FX)
组播路由上限
8000 个组播路由(Catalyst 3550-12G 和 3550-12T)
2000 个组播路由(Catalyst 3550-48,3550-24,3550-24 PWR,3550-24-DC 和 3550-24-FX)
用于 MPLS 标记帧桥接的 MTU
2000 字节(Catalyst 3550-12G 和 3550-12T)
1546 字节(Catalyst 3550-48, 3550-24, 3550-24 PWR, 3550-24-DC 和 3550-24-FX)
Catalyst 3500XL 可堆叠交换机
Catalyst 3512XL- 单 机 架 (RU) 可 堆 叠 的 10/100 和 Gigabit Ethernet 交 换 机 拥 有 12 个
10BaseT/100BaseTX 端口和 2 个基于 GBIC 的 Gigabit Ethernet 端口。2 个 Gigabit 端口适合广泛的业
界标准 GBIC,包括 Cisco GigaStack GBIC、1000BaseSX 和 1000BaseLX/LH GBIC。Catalyst 3512XL 是一
P a g e | 405
CCIE R/S & Service Provider Exam Certification Guide
种高性能、无阻塞交换机,非常适合将 Catalyst 3500 XL 系列或 Catalyst 1900 交换机集成在一个集
群配置中。在独立或堆叠配置中,Catalyst 3512 XL 以低端价格提供低端口密度。
Catalyst 3524 XL-单机架可堆叠的 10/100 和 GigabitEthernet 交换机拥有 24 个 10BaseT/100
BaseTX 端口和 2 个基于 GBIC 的 Gigabit Ethernet 端口。Catalyst 3524 XL 非常适合给单个用户及一个
堆叠或集群配置中的服务器提供专用 10 或 100Mbps。内置的基于 GBIC 的双重 Gigabit Ethernet 上
行链路或 GigaStack GBIC 堆叠。
Catalyst 3508G XL-单机架可堆叠的 Gigabit Ethernet 交换机拥有 8 个基于 GBIC 的 Gigabit
Ethernet 端口。Catalyst 3508G XL 非常适合通过 Cisco GigaStack GBIC 或标准 1000BaseX GBIC,集合
一个 10/100 和 Gigabit Ethernet 交换机及 Gigabit Ethernet 服务器群组。
18.5.2 CigaStack GBIC堆叠技术
CigaStack GBIC 通用、低成本的 Gigabit Ethernet 堆叠 GBIC 提供 Catalyst 3500 XL 系列和带有
Gigabit 功能的 Catalyst 2900 XL 系列交换机之间的高速互连。GigaStack GBIC 非常适合那些需要一个
独立堆叠总线来互连多个 Catalyst 3500 XL 和带有 Gigabit 功能的 Catalyst 2900 XL 交换机的重视性能
和成本的客户。
Cisco 交换机集群技术能使多达 16 个 Catalyst 3500 XL、2900 XL
和 Catalyst 1900 交换机互连在一起(而无论它们的物理距离多远),
组成一个可管理的单一 IP 地址网络。这些交换机可以使用广泛的
基于标准的连接选项集群在一起,提供不同层次的性能来满足客户
要求。Catalyst 3500 XL 系列的集群连接选项包括快速以太网、Fast
EtherChannel®、低成本 Cisco GigaStack GBIC、Cigabit Ethernet 和
Gigabit EtherChannel。由于 Cisco 交换机集群技术不受专用堆叠模块
和堆叠电缆的限制,因此它将传统堆叠域扩展到一个配线间之外,允许用户"混用和匹配"互连,进
而满足特定的管理、性能和成本要求。 在 Cisco 交换机集群中,有一个 Catalyst 3500 XL 系列或 2900
XL 交换机被指定为"命令"交换机,而集群中的所有其他交换机被指定为"成员"交换机。命令交换机
作为单一 IP 地址管理点运行,并分配网络管理员控制的所有管理行为。命令交换机最多能够集成
另外 15 个互连的成员交换机,而无论它们的互连介质是什么。Cisco 交换机集群命令软件被预装
在所有 Catalyst 3500 XL 系列交换机上,并可以通过 Catalyst 2900 XL 命令软件升级工具集,作为
Catalyst 2900 XL 系列交换机的一个升级。
GigaStack 堆叠:独立的堆叠总线
如图所示,由于安装了 GigaStack GBIC,因此所有 Catalyst 3500 XL 系列和包含 Gigabit 的 Catalyst
P a g e | 406
CCIE R/S & Service Provider Exam Certification Guide
2900 XL 系列交换机都可以部署在一个堆叠配置中。CigaStack GBIC 通过标准 Gigabit Ethernet 连接
提供一个 1Gbps 的独立堆叠总线,允许通过一个单一 IP 地址堆叠和管理多达 9 个交换机。如下图
中所示,通过顶部和底部交换机中的辅助 GigaStack GBIC,可以实现冗余环同连接支持。
GigaStack 堆叠:点到点连接
如下图所示,Cisco GigaStack GBIC 还在点到点配置中给用户提供一个高性能选项。通过使用 8
端口 Catalyst 3508G XL Gigabit Ethernet 交换机,最多可以堆叠 8 个交换机,在 Catalyst 3508G XL 和
每一个连接的交换机之间提供 2Gbps 的全双工带宽。Catalyst 3508G XL 为整个 Catalyst 3512 XL、3524
XL 和带有 Gigabit 功能的 Catalyst 2900 XL 系列交换机堆叠提供 5Gbps 的转发速率。
Cisco 交换机集群
如下图所示,Cisco Catalyst 3500 XL、2900 XL 和 Catalyst 1900 交换机可以部署在一个互连的交
换机集群配置中,从一个单一 IP 地址进行管理。其中一个交换机被指定为命令交换机,用作集群
的单一管理点。剩下的交换机被指定为成员交换机。客户可以在这种集群配置中使用以太网、快
P a g e | 407
CCIE R/S & Service Provider Exam Certification Guide
速以太网、Fast EtherChannel、低成本 Cisco GigStack GBIC、Gigabit Ethernet 或 Gigabit EtherChannel
连接。Cisco 交换机集群给客户提供巨大的灵活性,因为集群中的所有交换机可以定位在不同的物
理位置,通过基于标准的介质连接。
18.5.3 Catalyst 3560
Cisco Catalyst 3560 系列交换机是 3550 系列的升级,是一个固定配置、企业级、IEEE 802.3af
和思科预标准以太网供电(PoE)交换机系列,工作在快速以太网和千兆位以太网配置下。Catalyst
3560 是一款理想的接入层交换机,适用于小型企业布线室或分支机构环境,结合了 10/100/1000
和 PoE 配置,实现最高生产率和投资保护,并可部署新应用,如 IP 电话、无线接入、视频监视、
建筑物管理系统和远程视频访问亭。客户可在整个网络范围中部署智能服务,如高级 QoS、速率
限制、访问控制列表、组播管理和高性能 IP 路由等,且同时保持传统 LAN 交换的简洁性。思科网
络助理(network assistant)在 Catalyst 3560 系列中免费提供,是一个集中管理应用,可简化思科交换
机、路由器和无线接入点的管理任务。思科网络助理提供了配置向导,大大简化了融合网络和智
能网络服务的实施。
Cisco Catalyst 3560-24TS
24 个以太网 10/100 端口,2 个小型 SFP 千兆位以太网端口;1 个机架单元(1RU)
Cisco Catalyst 3560-48TS
48 个以太网 10/100 端口,4 个 SFP 千兆位以太网端口;1RU
Cisco Catalyst 3560-24PS
24 个以太网 10/100 端口,带 PoE,2 个 SFP 千兆位以太网端口;1RU
Cisco Catalyst 3560-48PS
48 个以太网 10/100 端口,带 PoE,4 个 SFP 千兆位以太网端口;1RU
Cisco Catalyst 3560G-24TS
P a g e | 408
CCIE R/S & Service Provider Exam Certification Guide
24 个以太网 10/100/1000 端口,4 个 SFP 千兆位以太网端口;1RU
Cisco Catalyst 3560G-48TS
48 个以太网 10/100/1000 端口,4 个 SFP 千兆位以太网端口;1RU
Cisco Catalyst 3560G-24PS
24 个以太网 10/100/1000 端口,带 PoE,4 个 SFP 千兆位以太网端口;1RU
Cisco Catalyst 3560G-48PS
48 个以太网 10/100/1000 端口,带 PoE,4 个 SFP 千兆位以太网端口;1RU
转发带宽 32Gbps
基于 64 字节分组的转发速率:
38.7Mpps(Cisco Catalyst 3560G-48TS,3560G-48PS,3560G-24TS, 3560G-24PS)
13.1Mpps(Cisco Catalyst 3560-48TS 和 Cisco Catalyst 3560-48PS)
6.6Mpps(Cisco Catalyst 3560-24TS 和 Cisco Catalyst 3560-24PS)
128MB DRAM
32MB 闪存(Cisco Catalyst 3560G-48TS,3560G-48PS,3560G-24TS, 3560G-24PS)
16MB 闪存(Cisco Catalyst 3560-48PS 和 Cisco Catalyst 3560-24PS)
最多可以配置 12000 个 MAC 地址
最多可以配置 11000 个单播路由
最多可以配置 1000 个 IGMP 群组和组播路由
可配置的最大传输单元(MTU)为 9000 字节,最大以太网帧为 9018 字节(大型帧),用于
千兆位以太网端口上的桥接;最大 1546 字节,用于 10/100 端口上多协议标签交换(MPLS)标
记帧的桥接
18.5.4 Catalyst 3750
Catalyst 3750 交换机实质是对 3560 系列的升级。支持了新的 Stack wise 堆叠技术。此后又推
出了 Catalyst 3750 Metro 等设备,极大的增强了 3750 系列的产品
Cisco Catalyst 3750 系列包括以下配置:
Cisco Catalyst 3750G-24TS
24 个以太网 10/100/1000 端口和 4 条小型可插拔(SFP)上行链路
Cisco Catalyst 3750G-24T
24 个以太网 10/100/1000 端口
Cisco Catalyst 3750G-12S
12 个千兆位以太网 SFP 端口
P a g e | 409
CCIE R/S & Service Provider Exam Certification Guide
Cisco Catalyst 3750-48TS
48 个以太网 10/100 端口和 4 条 SFP 上行链路
Cisco Catalyst 3750-24TS
24 个以太网 10/100 端口和 2 条 SFP 上行链路
Cisco Catalyst 3750-48PS
48 个以太网 10/100 端口,带 IEEE 802.3af 和思科预标准以太网电源 (PoE),4 条 SFP 上
行链路
Cisco Catalyst 3750-24PS
24 个以太网 10/100 端口,带 IEEE 802.3af 和思科预标准以太网电源 (PoE),2 条 SFP 上
行链路
Cisco Catalyst 3750G-16TD
16 个千兆位以太网 10/100/1000 端口和 1 条万兆位以太网 XENPAK 上行链路
Cisco Catalyst 3750G-24TS-1U
24 个以太网 10/100/1000 端口和 4 条 SFP 上行链路,1 机架单元(RU)高
Cisco Catalyst 3750G-24PS
24 个以太网 10/100/1000 端口,带 IEEE 802.3af 和思科预标准 PoE,4 条 SFP 上行链路
Cisco Catalyst 3750G-48TS
48 个以太网 10/100/1000 端口和 4 条 SFP 上行链路
Cisco Catalyst 3750G-48PS
48 个以太网 10/100/1000 端口,带 IEEE 802.3af 和思科预标准 PoE,4 条 SFP 上行链路
第二层和第三层交换矩阵的最大转发带宽为 32Gbps
64 字节分组的堆叠转发速率为 38.7 mpps
转发速率:
6.5 mpps (Cisco Catalyst 3750-24TS 和 Catalyst 3750-24PS),
13.1 mpps (Catalyst 3750-48TS 和 Catalyst 3750-48PS),
18.8 mpps (Catalyst 3750G-12S),
35.7 mpps (Catalyst 3750G-24T,Catalyst 3750G-16TD),
38.7mpps (Catalyst 3750G-24TS ,3750G-24TS-1U,3750G-24PS ,3750G-48TS,3750G-48PS)
128 MB DRAM 和 16 MB 闪存
Cisco Catalyst
3750G-24TS, 3750G-24T, 3750G-12S, 3750-24TS,
3750-24PS,
3750-48TS, 3750-48PS
3750G-16TD
128 MB DRAM 和 32 MB 闪存
Cisco Catalyst
3750G-24TS-1U, 3750G-24PS, 3750G-48TS,
3750G-48PS
可配置多达 12,000 个 MAC 地址
20,000 条单播路由 (Cisco Catalyst 3750G-12S)
11,000 条单播路由
Cisco Catalyst
3750G-24TS,
3750G-24T,
3750-24TS,
3750-24PS,
3750G-24PS,
3750-48TS,
3750-48PS,
3750G-24TS-1U,
3750G-48TS,
3750G-48PS
3750G-16TD
3750G-24TS,
3750G-24T,
3750G-12S,
3750-24PS,
3750-48TS,
3750-48PS ,
3750G-24PS,
3750G-48TS,
3750G-48PS
1000 个 IGMP 组和组播路由
Cisco Catalyst
3750-24TS,
3750G-24TS-1U ,
3750G-16TD
可配置的最大传输单元(MTU)为 9000 字节,
在千兆位以太网端口上桥接的以太网帧最大为 9018 字节(巨型帧),
在快速以太网端口上桥接和路由的帧最大为 1546 字节
P a g e | 410
CCIE R/S & Service Provider Exam Certification Guide
在 Catalyst 3750 上可以使用 SFP 模块的上行端口。其体积是 GBIC 的一半。并能提供 Gbps 的
上行以太网链路。传输介质可以是单模也可以是多模。
在较小体积的面板上实现多接口的光输入输出,通常采用 SPF 模块。这样 3750 系列的上行口,
原有面板只能支持 2 个 GBIC。现在可以支持 4 个 SPF。而且对于 Catalyst 4500/6500 的线板上,采
用 SPF 接口将获得极大的端口密度,下图为一块高密度的 SPF 线板
18.5.5 电源冗余
由于 Catalyst 3750 采用内置固定配置,故集成了电源和散热系统。可以利用 RPS 675 外置冗
余电源提供供电,它是一种标准机架安装的独立电源模块,一台 RPS 675 最多可以支持 6 台交换机
的冗余供电,当交换机电源损坏后,能够立即执行切换。
18.5.6 Stackwise 体系结构
Cisco 在推出 Catalyst 3750 系列产品的同时,提出了 Stackwise 堆叠技术,它是对 CigaStack GBIC
堆叠方案的一种升级,它采用 68pin 的线缆,最多支持 9 台 3750 交换机进行堆叠。对于交换机之
间的逻辑连接,他们形成常见的交换矩阵。此时,Stackwise 技术将选举出一台交换机做为管理堆
叠的接口。
这种堆叠方式内部链路采用了类似于 FDDI 双环的结构,采用 2 个 16Gbit/s 的环路,提供
P a g e | 411
CCIE R/S & Service Provider Exam Certification Guide
32Gbit/s 的交换带宽。如果出现故障或者需要添加交换机的时候,可以采用热插拔的方式进行更新。
即便是管理堆叠的那台交换机出现故障。同样可以自动使用另一台交换机来接替。
当发生故障后,接口会自动增加环路。保证整个堆叠的连通性,其原理类似于 FDDI。如下图。
当交换机 1 和交换机 2 之间的链路出现故障后端口 ASIC 会自动在其 Rx 和 Tx 间打上环路,维持环
路结构
当交换机发生故障后,如下图,另两台交换机将会在自己的端口 ASIC 上建立环路
P a g e | 412
CCIE R/S & Service Provider Exam Certification Guide
Stackwise 结构提供了一个高可用性的堆叠平台。在计算集群中使用非常广泛。
服务器集群使用多种不同介质类型来进行互联。它们提供的带宽量不同、延迟不同、总成本
也不同。最常见的模式包括:
千兆位系统网络(GSN)
此互联方式提供了最高带宽(6.4Gbps)和最低延迟。GSN 用于需最大带宽和最低
延迟的集群中,如科学仿真的功能集群。对大多数传统集群来说,它过于昂贵。
Myrinet
Myrinet 与 GSN 相比,带宽低(2Gbps)、延迟高。尽管仍很昂贵,但价格低于 GSN,
因此更多地应用于传统集群。在快速以太网作为互联出现以前,它是传统集群应
用的唯一选择。
千兆以太网/快速以太网
快速以太网是一种相对较为廉价的互联方式。因为使用快速以太网可节约大量成
本,相对带宽要求较低且不需要低延迟的集群,包括许多吞吐率和高可用性集群,
都发现快速以太网是最优秀、最经济的互联选择。
千兆以太网是集群互联的最新方式。它提供了出色的带宽(1Gbps)和可接受的延迟。千兆
位以太网的成本已下降至几乎与快速以太网相同的水平——远比 GSN 或 Myrinet 低廉,这使千兆位
以太网成为了一个可行的选择。凭借 32Gbps Cisco StackWise 互联,Cisco Catalyst 3750 系列交换机
成为了更具吸引力的选择。
18.5.7 Catalyst 3750数据流
在 Stackwise 结构中,Cisco 为每个环提供一个共享令牌进行数据传输。如图所示。交换机将
转发只能喝分组缓冲分配给端口 ASIC。端口 ASIC 负责对分组进行分析,并创建 24 字节的报头。
并将报头很分组发送到环或者矩阵中。
P a g e | 413
CCIE R/S & Service Provider Exam Certification Guide
1. 主机将报文发送到端口,端口将数据转到连接交换机端口的端口 ASIC。
2. 端口 ASIC 具有内在的只能,可以检查分组,也可以创建 24 字节的转发决策报头
3. 每个端口 ASIC 都有 2 个环连接。端口 ASIC 将根据首先到达的共享令牌来选择用户分组
发送的环。如果 2 个令牌同时到达,将使用最近使用过的那个环
4. 目标端口 ASIC 从环上复制 24 字节报头和分组数据,并放在缓存中
5. 通过交换机 3 的前面出站端口,断口 ASIC 向主机 2 发送报文
6. 把头和分组将围绕环继续移动,直到到达入站端口 ASIC 为止。
18.5.8 Catalyst 3750 Metro
它是 3750 的一个升级版,为城域以太网边缘带来了更高智能性,能提供更多个性化城域以
太网服务。此交换机具有层次化 QoS 框架、流量整形、智能 802.1Q 隧道 QoS、虚拟 LAN(VLAN)
映射、多协议标签交换(MPLS)和 MPLS 以太网(EoMPLS)支持,以及冗余交流或直流电源。
使用增强 802.1Q 隧道的第 2 层 VPN
通过使用 VLAN-in-VLAN 层次化结构和标记已标记分组,802.1Q 隧道功能使服务供应商得以创
建第 2 层 VPN 服务,通常称之为第 2 层透明 LAN 服务(TLS)或以太网 LAN 服务。凭借 802.1Q 隧
道功能,服务供应商可将自身的网络与其企业或商业客户的网络明确地隔离开来。客户 VLAN ID
会预先保留,源于不同客户的流量将在服务供应商基础设施中进行划分,甚至当它们好象是在同
一 VLAN 中也是如此。因此,采用第 2 层 VPN 的企业客户可通过服务供应商网络,从其他城域站
点透明地收发流量,就如同这些站点位于同一公司 VLAN 中一样。
Cisco Catalyst 3750 Metro 专业城域网系列支持 802.1Q 隧道智能增强版,在该版本中,企业客
户的第 2、3 层 QoS 可从内部 VLAN 标记映射到外部服务供应商 VLAN 标记。因此企业客户的 QoS
优先级可用于整个服务供应商网络。
使用 VLAN 映射的第 2 层 VPN
VLAN 映射或 VLAN ID 转换也可用于第 2 层 VPN 服务。VLAN 映射不对分组进行双重标记,而
是当分组进入服务供应商网络时简单地将客户 VLAN ID 转换为服务供应商 VLAN ID,当分组退出服
务供应商网络时再进行相反操作。通过只映射 VLAN ID 而保持分组其余部分不变,在其穿越服务供
应商网络时可保留企业客户的 QoS 信息。
使用 EoMPLS 的第 2 层 VPN
EoMPLS 是一种隧道机制,允许服务供应商在第 3 层 MPLS 网络中以隧道传输客户第 2 层流量。
这使服务供应商无需生成树即可在以下两方面获得最佳特性——第 2 层 TLS 和 MPLS 核心的可扩展
性。Cisco Catalyst 3750 Metro 专业城域网系列支持每端口或每 VLAN 基础上的 EoMPLS,使服务供
应商能构建一个直至 CLE 的端到端 MPLS 网络。
使用多 VRF CE 的第 3 层 VPN
Cisco Catalyst 3750 Metro 专业城域网系列上的多 VRF CE(虚拟路由转发客户边缘),也称为
P a g e | 414
CCIE R/S & Service Provider Exam Certification Guide
VRF-lite,无需在交换机上运行 MPLS,即可为每个 VPN 客户保留独立路由表,从而创建第 3 层 VPN
服务。多 VRF CE 允许服务供应商在单一 Cisco Catalyst 3750 Metro 专业城域网系列交换机上支持至
少两个 VPN,其中 VPN 间 IP 地址可重叠。多 VRF CE 使用输入接口来区分不同 VPN 的路由,并通
过将一或多个第 3 层接口与每个 VRF 相关联来形成分组转发表。
使用 MPLS VPN 的第 3 层 VPN
Cisco Catalyst 3750 Metro 专业城域网系列支持 MPLS VPN,使服务供应商可构建真正的端到端
MPLS 网络,并为其企业和商业客户提供 MPLS VPN 服务。MPLS VPN 模式是一个真正的对等 VPN
模式,通过为每个客户的 VPN 分配独特的 VRF,来实施流量隔离。因此,在一个特定 VPN 中的用
户无法看到那一 VPN 外的流量。流量划分无需隧道或加密,因为它被直接内置于网络。
使用流量整形和层次化 QoS 的最有力 SLA 支持(通过增强服务端口)
将 QoS 标准应用于网络流量的能力对服务供应商网络来说非常重要。随着企业和服务供应商
持续移植到单一、融合网络,在同一多服务(数据、语音和视频)架构上传输关键任务应用、管
理信息传输和供应的能力也日趋关键。将其网络服务外包给服务供应商的企业将选用能提供 QoS
功能、从而确保按需带宽密集型应用和时间敏感型信息供应应用可获得必要带宽以保持性能的供
应商。向客户流量应用 QoS 的能力将对达到服务级协议(SLA)和保持网络性能极为重要。对于高
级 QoS 功能的支持也允许服务供应商创建重要的产品和服务捆绑。此外,QoS 技术的有效应用还
通过高效利用网络连接而降低了总城域以太网服务成本。
Cisco Catalyst 3750 Metro 专业城域网系列 QoS 技术能方便地管理带宽、延迟、抖动和分组丢
失等网络性能,这些对优化应用性能和满足 SLA 十分重要。此交换机支持思科层次化排序框架
(HQF),它包括流量分类;双速率、三色监管;基于类型的加权公平排序(CBWFQ);低延迟排
序(LLQ)和对于增强服务端口输出的流量整形。该框架的层次化实施使服务供应商可在三个不同
层次上管理其 QoS——物理接口层(增强服务端口)、VLAN 层(每个端口中的 VLAN),和标记级别
层(每个 VLAN 中的级别),提供了最细化和灵活的架构来实现 SLA。此外,它还支持加权随机早
期检测(WRED)和队尾丢弃等拥塞避免技术,以便更好地调节网络流量和防止拥塞。
18.6 Catalyst 29xx
18.6.1 Catalyst 2900/2900XL
Catalyst 2900 系列交换机中提供了一种便捷的 1Gbit/s 连接到桌面的解决方案。Catalyst 2948G
是一独享带宽的以太网交换机,具有高性能的第二层的交换能力.独享的 48 个 10/100Mbps 以太网
端口和 2 个 1000BaseX 千兆以太网端口。特性丰富的 Catalyst 交换机企业版软件。 基于 CiscoWorks
2000 的综合的管理工具。 24-Gbps 非阻塞的交换结构。 冗余的可热交换的外部电源和其它的容
错特征。
Cisco Catalsyt 2900XL 系列和 2900 系列是完全不同的产品。它可以支持 CigaStack 和 3500XL 以
及 3550 等交换机进行堆叠。但它是一中 100Mbit/s 的接入交换机,性能相对较差,已经停产。
P a g e | 415
CCIE R/S & Service Provider Exam Certification Guide
18.6.2 Catalyst 2940
Cisco Catalyst 2940 系列交换机是一款小型、独立、可管理交换机,带 8 个快速以太网端口
和一条集成快速以太网或千兆以太网上行链路。 此交换机是专门为在终端用户工作间布线室外使
用设计的,拥有坚固的金属外壳,无风扇,因此运行安静,便于在墙上或桌下安装,安全的锁定
槽可防窃,它还配备了一条电缆导槽,可以保护以太网电缆和交换机。
18.6.3 Catalyst 2950/2955
Cisco Catalyst 2950 系列智能以太网交换机是一个固定配置、独立、可堆叠的产品系列,可以
为中小型服务供应商和工业网络提供线速的快速以太网和千兆以太网连接。当将 Catalyst 2950 交
换机和 Catalyst 3550 交换机组合到一起时,所获得的解决方案可以实现从网络边缘到网络核心的
IP 路由。这些智能以太网交换机只采用增强镜像(EI)软件配置。
除了上述智能以太网交换机以外,Catalyst 2950 系列还包括一些只采用标准镜像(SI)软件配
置的交换机,以及独立、固定配置、可管理、具有千兆上行链路的 10/100 交换机(仅限 2950SX-48、
2950T-48 和 2950SX-24),为中小型网络提供了用户连接。这些线速的桌面交换机具有标准镜像(SI)
软件提供的各种功能,可以在网络边缘为基本的数据、视频和语音服务提供 Cisco IOS 功能。
Catalyst 2950 系列还包括 Cisco Catalyst 2955T-12、2955C-12 和 2955S-12。Cisco Catalyst 2955
是一款工业级的交换机,可以为恶劣环境中的部署提供快速以太网和千兆以太网连接。 它提供了
一系列铜缆和光纤上行链路选项,可以工作在多种环境中,例如工业级网络解决方案(工业以太
网部署)、智能运输系统(ITS)和运输网络解决方案。它还适用于军事和公共事业市场的多种应用,
在这些应用中的环境条件往往较为恶劣,悬浮物浓度往往超过了其他商用级交换产品的规格限度。
Catalyst 2950G 48
48 个 10/100 端口和 2 个基于千兆位接口转换器(GBIC)的千兆位以太网端口
Catalyst 2950G 24
24 个 10/100 端口和 2 个 GBIC 端口
Catalyst 2950G 24-DC
24 个 10/100 端口,2 个 GBIC 端口,直流电源
Catalyst 2950G 12
12 个 10/100 端口和 2 个 GBIC 端口
P a g e | 416
CCIE R/S & Service Provider Exam Certification Guide
Catalyst 2950T 24 交换机
24 个 10/100 端口和 2 个固定的 1000BASE-T 上行链路端口
Catalyst 2950C 24 交换机
24 个 10/100 端口和 2 个固定的 100BASE-FX 上行链路端口 、
转发性能
13.6Gbps 交换矩阵
Catalyst 2950G-48:
13.6Gbps 最大转发带宽
Catalyst 2950G-48:
10.1Mpps 线速转发速率
Catalyst 2950G-24:
8.8Gbps 最大转发带宽
Catalyst 2950G-24-DC:
8.8Gbps 最大转发带宽
Catalyst 2950T-24:
8.8Gbps 最大转发带宽
Catalyst 2950G-24:
6.6Mpps 线速转发速率
Catalyst 2950G-24-DC:
6.6 Mpps 线速转发速率
Catalyst 2950T-24:
6.6Mpps 线速转发速率宽
Catalyst 2950G-12:
6.4Gbps 最大转发带宽
Catalyst 2950C-24:
5.2Gbps 最大转发带宽(转发速率基于 64 字节分组)
Catalyst 2950G-12:
4.8Mpps 线速转发速率
Catalyst 2950C-24:
3.9 Mpps 线速转发速率
18.6.4 Catalyst 2960
Cisco Catalyst 2960 系列是 2950 系列的升级版,它是一个全新的、固定配置的独立设备系列,
提供桌面快速以太网和千兆以太网连接,可为入门级企业、中型市场和分支机构网络提供增强 LAN
服务。Catalyst 2960 系列具有集成安全特性,包括网络准入控制(NAC)、高级服务质量(QoS)和永续
性,可为网络边缘提供智能服务。
Cisco Catalyst 2960-24TT:
24 个 10/100 以太网端口和 2 个 10/100/1000 固定以太网上行链路端口;1 机架单元(RU)
Cisco Catalyst 2960-48TT:
48 个 10/100 以太网端口和 2 个 10/100/1000 固定以太网上行链路端口;1 RU
Cisco Catalyst 2960-24TC:
24 个 10/100 以太网端口和 2 个双介质上行链路端口;1 RU
Cisco Catalyst 2960-48TC:
48 个 10/100 以太网端口和 2 个双介质上行链路端口;1 RU
Cisco Catalyst 2960G-24TC:
20 个 10/100/1000 以太网端口,其中 4 个为双介质端口;1 RU
18.6.5 Catalyst 2970
Cisco Catalyst 2970 系列交换机是价格合理的千兆到桌面以太网交换机,为中小型企业和企业
分支机构提供了线速智能服务。Cisco Catalyst 2970 系列交换机拥有一套完整的智能服务,通过智
能地将速率提高到 100Mbps 以上,增强了网络性能。
转发带宽:
28Gbps(Cisco Catalyst 2970G-24TS),
24Gbps(Cisco Catalyst 2970G24T)
基于 64 字节分组的转发速率:
38.7Mpps(Cisco Catalyst 2970G-24TS),
35.7Mpps(Cisco Catalyst 2970G-24T)
P a g e | 417
CCIE R/S & Service Provider Exam Certification Guide
18.7 Catalyst系列交换机体系结构比较
Catalyst 平台
5000
5500
6000
6500 with SFM
6500 with Supervisor 720
4500
3750
封装形式
模块化
模块化
模块化
模块化
模块化
模块化
固定可堆叠
交换矩阵
共享总线
交叉矩阵
共享总线
交叉矩阵
交叉矩阵
集中式
双环
背板带宽
1.2 Gbps
3.6 Gbps
32 Gbps
256 Gbps
360 Gbps (720G 全双工)
64 Gbps
32 Gbps
18.8 专用的交换解决方案
18.8.1 6000系列DSL交换机
用于 ISP 和电信局通过交换局(CO)的可伸
缩交换结构提供到客户端的 DSL 服务,俄可以在
同一平台上支持不同的应用,包括 DSL 和 ATM。
18.8.2 6400系列集中器 和 IGX8400集中器
主要用于为电信局交换机,例如 DSL6000,建立独立的访问曾会话和应用 Qos 路由,
P a g e | 418
CCIE R/S & Service Provider Exam Certification Guide
以及将单个 ATM 链路连成更大的 ATM 链路,其功能包括 ATM 交换又有全功能的路由
18.8.3 MGX 8200网关和MGX8850系列交换机
主要面向服务提供商的聚集交换机,支持 ATM FR 及同机箱内的 ISDN 等不同网络类型
的桥接,后期的 MGX8850 支持 VPN 和语音等应用
18.8.4 BPX8600系列交换机
用于支持 x.25 FR ATM 的多服务交换机。可以提供高级 Qos 和流量管理
18.8.5 CCS 11000系列交换机
Cisco CCS 11000 系列交换机被用于面向基于 Web 流量的上层交换机,为基于 Web 并
使用上层信息的数据流提供高速交换和负载均衡,同时也为 ISP 和高端 Web 服务提供商提
供 DOS 保护和代理等特性。
这一系列有 3 个型号,
CSS 11050 用于底端解决方案,CSS11800
用于高端解决方案
P a g e | 419
CCIE R/S & Service Provider Exam Certification Guide
18.8.6 LightStream LS 1010交换机
它是 Cisco 首推的 ATM 交换机产品,支持 OC-12 的速率,作为全功能 ATM 交换机,
SVC 和 ATM
Qos 都包含在 LS1010 中,令 LS1010 的处理器和端口模块可以用在
Catalyst5500 上,能执行全面的 ATM 交换等
P a g e | 420
CCIE R/S & Service Provider Exam Certification Guide
Chapter 19
交换机基本配置
19.1 ROMMON
Rommon 是一种特殊的模式,可以修改寄存器值进入这个模式。ROMMON 提示符实际上是一种特
殊的配置模式,就像 Grub 一样,可以配置从不同的 image 引导,可以修改密码,也可以修改 console
口的波特率参数或者在 IOS 的 image 文件丢失的时候,通过 xmodem 或者 TFTP 更新 IOS。
19.1.1 Cisco引导寄存器
几乎所有的 Cisco 平台都有这样的引导寄存器存在, 早期的 AGS 系列采用的是硬件跳线的方式,
后期的 Catalyst 系列交换机,Cisco 全系列路由器均有这样的一个寄存器。默认的寄存器值如下表:
Bit
15
0
Bit
14
0
Bit
13
1
Bit
12
0
Bit
11
0
2
Bit
10
0
Bit
9
0
1
Bit
8
1
Bit
7
0
Bit
Bit
Bit
Bit
Bit
Bit
6
5
4
3
2
1
0
0
0
0
0
0
1
Bit
0
0
2
0~3号位:
引导字段
4号位:
快速引导/强制引导,强制路由器载入配置文件中boot system flash命令设置的IOS
5号位:
告诉控制台位,和11,12号位一起工作。
6号位:
忽略NVRAM
7号位:
OEM位
8号位:
键位,默认为1,如果为0,在任何模式下,都可以摁暂停键
9号位:
保留
10,14号位: 网络引导广播格式位
13号位: 网络引导失败响应
15号位: 显示出厂诊断
19.1.2 Catalyst引导过程
一台 cisco 设备引导顺序如下:
1. ROMMON 模式初始化
2. ROMMON 模式核对配置寄存器的引导字段,如果是 0x0 不引导 IOS,停留在 ROMMON 模式提示符
下等待用户操作 ,如果是 0x1,在 ROMMON 模式下系统会引导简版 IOS,在某些版本上,引导简
版 IOS 是通过环境变量 BOOTLDR 来制定的。如果是 0x2~0xF 之间
3. 当引导字段为 0x2 到 0xF 之间,路由器会逐条执行命令,直到加载可用的 image。如果寄存器第 13
位为 1,每条语句执行一次。如果为 0,Bootsystem 命令式的最多可尝试 5 次和网络服务器的连接。
两条连续执行尝试连接之间的间隔为 2,4,16,256 及 300s,如果找不到可用的 image。则按如下
顺序操作。如果系统配置文件里所有的引导命令都指定从一个网络服务器读取 image 文件来赢到,
所有的执行都失效了,那么系统就会尝试用 flash 中的一个合法文件来引导系统。如果寄存器中的
缺省由 ROM 引导选项为 1,那么路由器就会加载引导映像文件。如果没有设置为 1,那么系统就会
在 ROMMON 下提示用户,等待用户手工干预。如果没有找到 image 文件,路由器不会工作。
P a g e | 421
CCIE R/S & Service Provider Exam Certification Guide
4. 在 Flash 中寻找一份可引导的文件。如果没有指定文件名,系统会在整个 flash 中寻找一个可以用来
引导的文件而不仅仅尝试第一个文件。
5. Flash 映像文件:系统软件会判断它是否可以正确的执行地址被加载
6. RAM 映像文件:系统软件会判断系统是不是有足够的 RAM 空间来运行该映像文件。
Cisco 设备引导过程如下图所述
ROMMON
初始化
找不到IOS
OS转入ROMMON模
式
检查配置寄存
器位00-03
(启动域)
0x
0
如果IOS子集存
在,则从主板的
ROM引导或启动到
“boot”模式
0x
1
20x xf
0
路由器尝试使用默
认映像文件名称从
网络启动
No
检查默认flash
设备中是否有有
效image文件
No
配置文件中是否有
启动系统的命令
Yes
路由器从
第一个启
动系统命
令处启动
Yes
路由器用Flash设备
中的映像文件启动
路由器准备完毕
Yes
路由器从
ROMMON模式
或者flash中启
动
No
检查是否有成
功的网络启动
检查更多的启
动系统命令
No
Yes
执行下一条
启动命令
有效映像是否
被装载
Yes
No
No
网络启动是否
指定了所有的
启动系统命令
Yes
No
P a g e | 422
Flash内存中是否存在
有效的映像文件?
Yes
路由器准备
完毕
CCIE R/S & Service Provider Exam Certification Guide
19.1.3 ROMMON模式
Rommon 有 2 种模式,一种是 CONFREG ROMMON,一种是基本 ROMMON。前者用于很多老的机
器上,后者用在较新的 3600 系列和基于 RISC 的平台上。
CONFREG ROM Monitor
Cisco 1003 series
Cisco 1600 series
Cisco 3600 series
Cisco 4500 series
Cisco 7200 series
Cisco 7500 series
IDT Orion-based router
AS5200 and AS5300 platforms
Basic ROM Monitor
Cisco 2000 series
Cisco 2500 series
Cisco 3000 series
Cisco 4000 series with 680x0
Cisco 7000 series 10.0 ROM
Cisco IGS series running IOS 9.1 in ROM
对于交换机支持何种 ROM 监控模式,可以在提示符后输入问号,查询
1.基本 ROM 监控模式
System Bootstrap, Version 5.2(8a), RELEASE SOFTWARE
Copyright (c) 1986-1995 by cisco Systems
2500 processor with 14336 Kbytes of main memory
Abort at 0x10200C2 (PC)
>
>?
$
Toggle cache state
B [filename]
[TFTP Server IP address | TFTP Server Name]
Load and execute system image from ROM or from TFTP server
C [address]
Continue execution [optional address]
D /S M L V
Deposit value V of size S into location L with modifier M
E /S M L
Examine location L with size S with modifier M
G
[address] Begin execution
H
Help for commands
I
Initialize
K
Stack trace
L [filename]
[TFTP Server IP address | TFTP Server Name]
Load system image from ROM or from TFTP server, but do not
begin execution
O
Show configuration register option settings
P
Set the break point
S
Single step next instruction
T
function Test device (? for help)
Deposit and Examine sizes may be B (byte), L (long) or S (short).
Modifiers may be R (register) or S (byte swap).
Register names are: D0-D7, A0-A6, SS, US, SR, and PC
>
基本 ROM 监控的命令列表
H
显示帮助信息
I
初始化路由器
$
触发高速缓存,用于 TAC 调试
P
设置断点用于 TAC 调试
S
用于 TAC 调试的单步执行命令
T function
在 T 命令后面使用?用于对某个指定组件进行底层测试,通常是执行详
细的硬件存储器的诊断
P a g e | 423
CCIE R/S & Service Provider Exam Certification Guide
B
允许从 ROM 监控模式进行手工引导
B flash
用 flash 的第一个文件引导
B filename [TFTP host] 用 TFTP 通过网络进行引导
B flash filename
通过 flash 中的文件进行引导
L
功能和 B 相同,但不会开始执行这些代码
O
查看 16 位寄存器
O/R 0x0000
手动设置 16 位引导寄存器。
D/S M L V
将大小为 S 的值 V 存到修饰符为 M 的位置 L
E/S M L
查看大小为 S,修饰符为 M 的位置 L 处的 值,例如 E/S 200002 就是直
接从存储器里查询引导寄存器的值
2.Confreg ROM 监控模式
Confreg ROMMON 是一种更强的模式,它支持更多的功能,命令如下
rommon 2 > ?
alias
set and display aliases command
boot
boot up an external process
break
set/show/clear the breakpoint
confreg
configuration register utility
cont
continue executing a downloaded image
context
display the context of a loaded image
cookie
display contents of cookie PROM in hex
dev
list the device table
dir
list files in file system
dis
display instruction stream
dnld
serial download a program module
frame
print out a selected stack frame
help
monitor builtin command help
history
monitor command history
meminfo
main memory information
repeat
repeat a monitor command
reset
system reset
set
display the monitor variables
stack
produce a stack trace
sync
write monitor environment to NVRAM
sysret
print out info from last system return
tftpdnld
tftp image download
unalias
unset an alias
unset
unset a monitor variable
xmodem
x/ymodem image download
CONFREG Text
enable "diagnostic mode"? y/n [n]:
enable "use net in IP bcast address"? y/n [n]:
disable "load rom after netboot fails"? y/n [n]:
enable "use all zero broadcast"? y/n [n]:
enable "break/abort has effect"? y/n [n]:
enable "ignore system config info"? y/n [n]:
change console baud rate? y/n [n]:
change the boot characteristics? y/n [n]:
P a g e | 424
Bit(s) Set
15
14
13
10
8
6
11&12
0-3 0x2
Default Setting
Off
Off
On
Off
Off
Off
Off and Off
CCIE R/S & Service Provider Exam Certification Guide
19.2 Catalyst系列交换机密码恢复
19.2.1 Catalyst 2900/3500系列
1.Catalyst 2900/3500XL 系列:
拔下交换机的电源线,然后按住交换机的 Mode 按钮,再重新插上交换机的电源线.直到端口 Port 1
x 的 LED 熄灭之后释放 Mode 按钮.
2.Catalyst 2940/2950L 系列:
拔下交换机的电源线,然后按住交换机的 Mode 按钮,再重新插上交换机的电源线.直到 STAT 的 LED
熄灭之后释放 Mode 按钮.
3.Catalyst 2955 系列:
Catalyst 2955 没有没有外部的 Mode 按钮,因此就不能使用之前的那种方法来进行密码恢复.在交换
机启动时,对于 Windows 系列的 PC,按下 Ctrl+Break 键;对于 UNIX 系列的工作站,按下 Ctrl+C.如下:
C2955 Boot Loader (C2955?HBOOT?M) Version 12.1(0.0.514), CISCO DEVELOPMENT TEST
VERSION
Compiled Fri 13?Dec?02 17:38 by madison
WS?C2955T?12 starting...
Base ethernet MAC Address: 00:0b:be:b6:ee:00
Xmodem file system is available.
Initializing Flash...
flashfs[0]: 19 files, 2 directories
flashfs[0]: 0 orphaned files, 0 orphaned directories
flashfs[0]: Total bytes: 7741440
flashfs[0]: Bytes used: 4510720
flashfs[0]: Bytes available: 3230720
flashfs[0]: flashfs fsck took 7 seconds.
...done initializing flash.
Boot Sector Filesystem (bs:) installed, fsid: 3
Parameter Block Filesystem (pb:) installed, fsid: 4
接下来交换机会在 15 秒内自动启动,等出现该信息之后,按下 Ctrl+Break 键或 Ctrl+C 键
4.删除配置文件
如上过程完成后,会显示
The system has been interrupted prior to initializing the flash file system to finish
loading the operating system software:
flash_init
load_helper
bootswitch:
接下来输入 flash_init 命令:
switch:flash_init
Initializing Flash...
flashfs[0]: 143 files, 4 directories
flashfs[0]: 0 orphaned files, 0 orphaned directories
flashfs[0]: Total bytes: 3612672
flashfs[0]: Bytes used: 2729472
flashfs[0]: Bytes available: 883200
flashfs[0]: flashfs fsck took 86 seconds
....done Initializing Flash.
Boot Sector Filesystem (bs:) installed, fsid: 3
Parameter Block Filesystem (pb:) installed, fsid: 4
switch:
接着输入 load_helper 命令:
switch:load_helper
P a g e | 425
CCIE R/S & Service Provider Exam Certification Guide
再输入 dir flash:命令显示交换机的文件系统:
switch:dir flash:
Directory of flash:/
2 ?rwx 1803357 c3500xl?c3h2s?mz.120?5.WC7.bin
4 ?rwx 1131 config.text
5 ?rwx 109 info
6 ?rwx 389 env_vars
7 drwx 640 html
18 ?rwx 109 info.ver
403968 bytes available (3208704 bytes used)
switch:
把配置文件重命名:
switch:rename flash:config.text flash:config.old
输入 boot 命令启动交换机:
switch:boot
Loading "flash:c3500xl?c3h2s?mz.120?5.WC7.bin"...###############################
################################################################################
######################################################################
File "flash:c3500xl?c3h2s?mz.120?5.WC7.bin" uncompressed and installed, entry po
int: 0x3000
executing...
(略)
不进入 setup 模式:
??? System Configuration Dialog ???
At any point you may enter a question mark '?' for help.
Use ctrl?c to abort configuration dialog at any prompt.
Default settings are in square brackets '[]'.
Continue with configuration dialog? [yes/no]: n
进入特权模式,恢复原始的配置文件:
Switch#rename flash:config.old flash:config.text
Destination filename [config.text]
Switch#
把配置文件保存在内存里:
Switch#copy flash:config.text system:running-config
Destination filename [running?config]?
1131 bytes copied in 0.760 secs
Switch#
进入全局配置模式,取消密码设置:
Switch(config)#no enable secret
保存配置:
Switch#write memory
19.2.2 Catalyst 3550/3750系列
1.
通过带有支持 Xmodem 协议的超级终端程序的 PC 连接到交换机的 console 口,把波特率设置为
9600.
2.
拔掉交换机的电源.
3.
按下交换机上的 Mode 按钮,与此同时,重新插上交换机的电源线.当交换机端口 1X 上的 LED 熄灭
后可以松开 Mode 按钮 1 到 2 秒.之后将显示一些指示信息:
The system has been interrupted prior to initializing the flash file system. The following
commands will initialize the flash file system, and finish loading the operating system
software:
P a g e | 426
CCIE R/S & Service Provider Exam Certification Guide
flash_init
load_helper
boot
switch#
4.
初始化 flash 文件系统:
switch#flash_init
5.
加载帮助文件:
switch#load_helper
6.
显示闪存里的内容:
switch#dir flash:
7.
重命名配置文件:
switch#rename flash:config.text flash:config.text.old
8.
启动系统,并且如果提示进入 setup 模式,输入 N:
switch#boot
Continue with the configuration dialog? [yes/no]: N
9.
进入特权模式,把配置文件名恢复为原始文件名:
Switch#rename flash:config.text.old flash:config.text
10. 把配置文件写进内存:
Switch#copy flash:config.text system:running-config
Source filename [config.text]?
Destination filename [running-config]?
11. 进入全局配置模式更改密码:
Switch(config)#enable secret {password}
12. 退出,并保存到 startup-config 文件里:
Switch(config)#copy running-config startup-config
19.2.3 Catalyst 4500系列
1.
2.
3.
4.
5.
交换机开机,30 秒内按 Ctrl+Break 键,出现提示符“rommon 1 >"键入如下命令:
rommon 1 > confreg 0x2142
初始化交换机:
rommon 2 >reset
显示开机配置文件,并通过 notepad 备份
switch#show startup-config
重新配置密码
switch#config mem
switch(config)#no enable secret
switch(config)#enable secret cisco
switch(config)#config-reg 0x2102" ;
switch(config)#exit
switch#write mem
重新启动交换机
switch#reload
19.2.4 Catalyst 4000/5000/5500系列
在初始化的前 30s 内,密码和特权密码都是 enter 键,可以采用这种方式恢复密码。
1. 一旦出现 cisco system Console 信息,进入特权模式
Console>en
Enter password:
Enter key pressed
2. 设置密码,键入”
set password”
,然后输入旧密码 enter 键,然后会提示输入新密码时,此时因为
整个过程只有 30s,所以可以输入 2 次 enter 键完成密码设置
Console>(enable) set pass
Enter old password:
Enter key pressed
Enter new password:
Enter key or new password
Retype new password: Enter or new password
Password changed.
P a g e | 427
CCIE R/S & Service Provider Exam Certification Guide
3. 采用”
set enablepass”
设置密码
Console>(enable) set enablepass
Enter old password:
Enter key pressed
Enter new password:
Enter key or new password
Retype new password: Enter or new password
Password changed.
Console>(enable)
19.2.5 Catalyst 6000 MSFC
1.
使用 show module 命令查看 MSFC 在哪个插槽,一般来说在 15 或者 16 号插槽
switch (enable) show module
Mod Slot Ports Module-Type
Model
Status
--- ---- ----- ------------------------- ------------------- -------1 1
2
1000BaseX Supervisor
WS-X6K-SUP1A-2GE
ok
15 1
1
Multilayer Switch Feature
WS-F6K-MSFC
ok
3 3
48
10/100BaseTX Ethernet
WS-X6248-RJ-45
ok
4 4
8
1000BaseX Ethernet
WS-X6408-GBIC
ok
5 5
2
MM OC-12 ATM
WS-X6101-OC12-MMF
ok
Mod Module-Name
--- ------------------- ----------1
15
3
4
5
Serial-Num
SAD03423133
SAD03414563
SAD03242737
SAD03220152
SAD03433465
Mod MAC-Address(es)
Hw
--- -------------------------------------- ------ ---------- ----------------1 00-30-96-2a-2a-9e to 00-30-96-2a-2a-9f
1.0
00-30-96-2a-2a-9c to 00-30-96-2a-2a-9d
00-50-3e-9f-20-00 to 00-50-3e-9f-23-ff
1.2
15 00-30-96-2a-2a-a0 to 00-30-96-2a-2a-df
3 00-50-f0-af-24-d0 to 00-50-f0-af-24-ff
1.1
4 00-d0-58-e9-d0-f0 to 00-d0-58-e9-d0-f7
2.1
5 00-d0-bc-ef-03-68 to 00-d0
-bc-ef-03-87 1.0
2.
3.
4.
P a g e | 428
Fw
Sw
5.2(1)
5.4(3)
12.1(1)E,
4.2(0.24)V
4.2(0.24)V
12.1(1)E,
5.4(3)
5.4(3)
12.0(5)XS, 12.0(5)XS,
Mod Sub-Type
Sub-Model
Sub-Serial Sub-Hw
--- ----------------------- ------------------- ----------- -----1 L3 Switching Engine
WS-F6K-PFC
SAD03424837 1.0
重新启动哪个插槽上的 MSFC
switch(enable) reset 15
Unsaved configuration on module 15 will be lost
Do you want to continue (y/n) [n]? y
2000 Jun 23 06:36:59 %SYS-5-MOD_RESET:Module 15 reset from Console//
Resetting module 15...
等待 5s 后使用 switch console 命令连接到 MSFC,并在看到 Connected to Router-字样后,发出
Break 序列,进入 MSFC 的 rommon 模式
switch(enable) switch console
Trying Router-15...
Connected to Router-15.
Type ^C^C^C to switch back...
使用和其他系列交换相同的方法,修改寄存器的值为 0x42
rommon 1 > confreg 0x42
CCIE R/S & Service Provider Exam Certification Guide
7.
使用 dir flash 查看 flash 内的信息
rommon 2 > dir bootflash:
File size
Checksum File name
1606784 bytes (0x188480) 0xe58d8560
c6msfc-boot-mz.120-7.XE1
8998276 bytes (0x894d84)
0x1476de9
c6msfc-jsv-mz.121-1.E.bin
使用后面一个 bin 文件引导
rommon 3 > boot bootflash:c6msfc-jsv-mz.121-1.E.bin
不使用 setup 模式,router>enable,同时 show running-config,如果是明码,则记录下来,并把
8.
copy startup-config running-config
9.
进入 config 模式,修改密码
10.
config-register 0x2102 还原寄存器值
5.
6.
config 备份防止以后配置错误
19.2.6 Catalyst 6500 with supervisor 720
运行 Cisco IOS 版本早于 12.2(17)SX 的 Supervisor 720 密码恢复 ,因为 Cisco 的一个 BUG,在 IOS
版本早于 12.2(17)SX 的 SUP720 引擎上做密码恢复的时候,会导致 SP crash(Cisco bug ID CSCec36997)。
当按了 Ctrl+Break 进入 ROMMON 后仅有 10 秒钟的时间用于修改 register 值,10 秒钟以后,SP 就
会 crash。如果发现 register 值没有修改,那么重复操作直到修改成功。
12.2(17)SX 及其以后版本的 IOS 密码恢复的时候则和普通 Native IOS 的 6500 做密码恢复一致
了。都是在 SP 引导完成,RP 获得控制权的时候按 Ctrl+Break 进入 RP 的 ROMMON,修改 register
值
19.3 升级Cisco IOS软件
19.3.1 IOS版本及命名方式
1.Cisco IOS软件版本
IOS 软件按系统发布分为两类:主要发布版本(MR)和前期研发发布版本(EDR)。其中ED 版本
又称为技术版本(Technology Release)。
IOS 主要发布版本(Mainline)
主要版本是IOS 技术部门(ITD)负责管理和发布的IOS 版本,这些版本继承于之前的早期
研发版本,具有更可靠的特性、平台支持、功能和技术。因此,IOS MR 具有更好的可靠性
和性能,并且,重要的是,MR 不在接受对新的特性或是新的平台的支持,每个升级维护的
P a g e | 429
CCIE R/S & Service Provider Exam Certification Guide
版本的改变只是对已知软件错误的修正。
最初的IOS MR 的维护版本成为有限研发版本(LD),后续的版本不断的修正软件的缺陷。
当大部分软件错误经过了修正,并通过了严格的测试后稳定的达到一些特定的要求之后,
Cisco公司会宣布这个主要版本升级为通用版本(GD)。一旦一个发布版本宣布成为GD 版本后,
这个MR 的后续版本都将是GD 版本。ITD 会确保后续版本对系统的改动必须都经过严格的
测试,确保GD版本的严谨。
一个IOS MR的第一个商业发布(FCS)后,经过9至14个月的LD时期,一般可以进入GD 时
期。该版本宣布为GD版本后,经过10到18个月的谨慎的错误修正,进入成熟期,在从软件版
本发布起算24个月到36个月后,该版本将进入终止期,并宣布停止服务。
IOS 早期研发版本(ED)
IOS ED 版是Cisco 对为了满足对新技术和新平台的支持而开发的IOS版本。也就是说,
每个更新的ED版的发布除了修正已知的软件错误之外,都会不断带给客户更多的新特性。并
且,每个ED版本发布1至2年后,就会晋级成为下一个IOS的主要版本。ED版按照不同的发布
模式又分为4个主要的分支:
统一技术前期研发版本(CTED)
特定技术前期研发版本(STED)
短期前期研发版本(XED)
特定市场前期研发版本(SMED)
CTED 版本序列也成为技术(T)版本序列,之所以称为统一技术前期研发版本
是因为这个序列介绍的新特性、新技术和对新硬件平台的支持超越了ITD 对产品
线和产品单元的划分。每个CTED版本的软件镜像文件都会有一个T字母。T序列支
持所有的Cisco 硬件平台,并不断添加更多更新的特性和技术。因此,在稳定性和
可靠性方面会存在一些问题。一般来说,在CTED发布12个月后,会结束这个T序列
的软件,升级为下一个IOS的主要版本。
STED:STED和CTED最大的不同在于这个序列的软件是针对某些特定技术和产
品平台的。STED 的开发和管理完全由某一个ITD的产品单元部门控制,由这个单
独的部门负责定期的软件版本同步和之后的升级主要版本的任务。STED版本的软
件镜像文件都会在最后有2 个大写字母,比如11.3WA 和12.0DA 等。
SMED:尽管SMED的管理和STED非常相似,但是SMED是针对某个特定市场目
标而开发的IOS 序列比如针对电信运营商、金融公司或跨过企业等,这些特定的
P a g e | 430
CCIE R/S & Service Provider Exam Certification Guide
版本序列都包含了某些对特定产品的支持或是对某些特定客户特性需求的支持。
例如,12.0S 是针对服务运营商市场的软件产品,这个序列只对特定的高端产品如
GSR/C7500和C7200有支持,并且,SMED的另一个特点就是软件集成了跨越很多的
产品单元的特性,而并不只是具有某个产品单元的技术。
XED 序列的软件是一个较为特别的版本,是在12.0版本发布后为了适应Cisco
公司快速的产品线膨胀而建立的一个版本序列。这个模式的版本允许任何一个产
品单元部门推出一个CTED版本的私有的分支版本,用于集成新技术和对新硬件平
台的支持。版本发布后,经过实际的检验通过后,会立即并入下一个CTED的升级
版本,所以,这个序列也成为短期ED版。这个版本的软件镜像文件往往在文件名
称的最后再添加一个数字,比如12.0(2)XB1和XB2就是在12.0(2)XB 基础上的重编译
结果。
2.版本编号
Cisco IOS版本号约定如下:
早期部署版本:
A
接入服务器/拨号技术
H
SDH/SONET技术
C
核心路由器
N
语音/多媒体/会议
E
企业特定
P
平台特性
F
Gbit交换路由器
S
服务提供商特性
W
ATM/LAN或3层交换
X,Y
T
整合技术
一次性短期版本
3.IOS文件命名规定
命名方式以 PPPPP—
FFFF—
MM—
VVVV 格式命名
PPPPP代表平台,,例如C3550 表示符合Catalyst 3550平台,cat4000符合 catalyst4000平台等,同
时也包含一些交换机特征,例如c6sup22 表示符合Catalyst 6500 with supervisor II。
FFFF是一个版本特性的,包括不同的IOS架构和不同的功能等
P a g e | 431
CCIE R/S & Service Provider Exam Certification Guide
MM表示文件运行格式和执行区域,
第一位,表示执行区域,
第二位,表示压缩方式
F
flash,内存
Z
Zip压缩
M
RAM
X
Mzip压缩
R
ROM
W
“Stac”压缩
L
运行时刻定位
VVVV为版本号, 格式为vvv-mmm.bbb, vvv为主要版本,mmm为维护版本,bbb为构造级别,其中
第一个字母为构奥类型,E为一个早期特征部署,第二个是中间构造级,A表示第一个构造。最后
数字为已经增加的构造次数
Cisco IOS Image Platforms (PPPP) Definition
as5200
5200
gs3
Gateway server (AGS, AGS+)
gs7
Gateway server (7000,7010)
gsr
Gigabit Switch Router (12000)
ls1010
LightStream 1010
mc3810
Ardent Multiservice Cisco 3810
p<n
Partners' platform n
*pt
protocol translator
rpm
MGX 8850
rsp
75xx
ubr7200
Universal Broadband Router 7200
ca1003
Cisco Advantage 1003
ca1005
Cisco Advantage 1005
cpa1003
CiscoPro 1003,4
cpa1005
CiscoPro 1005
cpa25
CiscoPro 2500
cpa3620
CiscoPro 3620
cpa3640
CiscoPro 3640
cpa45
CiscoPro 4500
*cs
Communication Server
c1600
1600
c2500
25xx,3xxx,5100, AO (11.2 and later
only)
ubr900
Universal Broadband Router 900
ubr920
Universal Broadband Router 920
c25fx
Fixed FRAD
vcw
Voice Card Ware
c2600
2600 Quake
xx
4000
c2800
Catalyst 2800
c2900
2910, 2950
Igsetx
2500 (media specific image that supports
only Ethernet, token ring, and x.25)
c29atm
2900 ATM
Boards
c3620
3620
c3640
3640
c4000
4000 (11.2 and later - earlier
releases use xx)
c4500
4500, 4700
c5rsfc
Catalyst 5000 series
c5atm
Catalyst ATM
c6400s
6400 NSP
c6400r
6400 NRP
c6m
Catalyst
P a g e | 432
sm
Das
Dial Shelf Feature board
Dsc
Dial Shelf Controller board Platforms
CCIE R/S & Service Provider Exam Certification Guide
Cisco IOS Image Feature Definition (FFFF)
APPN
a
a2
ATM
a3
APPN replacement called SNA Switch (12.0(4)XN and 12.1)
b
AppleTalk
Boot
boot image
c
c
c2
c3
d
d2
diag
e
eboot
f
f2
g
Comm-server/Remote Access Server (RAS) subset (SNMP, IP,
Bridging, IPX, AppleTalk, DECnet, FR, HDLC, PPP, X,25, ARAP,
tn3270, PT,
XRemote, LAT) (non-CiscoPro)
CommServer lite (CiscoPro)
Comm-server/Remote Access Server (RAS) subset (SNMP, IP,
Bridging, IPX, AppleTalk, DECnet, FR, HDLC, PPP, X,25, ARAP,
tn3270, PT,
XRemote, LAT) (CiscoPro)
Clustering
Desktop subset (SNMP, IP, Bridging, WAN, Remote Node, Terminal
Services, IPX, AppleTalk, ARAP) (11.2 - DECnet)
Reduced Desktop subset (SNMP, IP, IPX, ATALK, ARAP)
Cisco IOS based diagnostic images
IPeXchange (prior to 11.3)
StarPipes DB2 Access –
Enables Cisco IOS to act
as a “
g
a
t
e
w
a
y
”
to all IBM DB2 products for
downstream clients/servers in 11.3T
Ethernet boot image for MC3810 platform
FRAD subset (SNMP, FR, PPP, SDLLC, STUN)
modified FRAD subset, EIGRP, PCbus, LAN Mgr removed, OSPF added
ISDN subset (SNMP, IP, Bridging, ISDN, PPP, IPX, AppleTalk)
g2
gatekeeper proxy, voice and video
g3
ISDN subset for c800 (IP, ISDN, FR)
h
For Malibu(2910), 8021D, switch functions, IP Host
hdiag
i
Diagnostics image for Malibu(2910)
IP subset (SNMP, IP, Bridging, WAN, Remote Node, Terminal Services)
i2
subset similar to IP subset for system controller image (3600)
i3
reduced IP subset with BGP/MIB, EGP/MIB, NHRP, DIRRESP removed
i4
subset of IP (available on 5200)
j
enterprise subset (formerly bpx, includes protocol translation)
k
k1
kitchen sink (enterprise for high-end) (same as bx) (Not used after
10.3)
Baseline Privacy key encryption (On 11.3 and later)
k2
high-end enterprise w/CIP2 ucode (Not used after 10.3)
k2
Triple DES (On 11.3 and later)
k3
56bit encryption with secured shell (ssh)
k4
168bit encryption with secured shell (ssh)
k5
Reserved for future encryption capabilities (On 11.3 and later)
k6
Reserved for future encryption capabilities (On 11.3 and later)
P a g e | 433
CCIE R/S & Service Provider Exam Certification Guide
k7
Reserved for future encryption capabilities (On 11.3 and later)
k8
Reserved for future encryption capabilities (On 11.3 and later)
k9
Reserved for future encryption capabilities (On 11.3 and later)
L
IPeXchange IPX, static routing, gateway
m
RMON (11.1 only)
m
For 11.2, Catalyst 2820-kernel, parser, ATM signaling, Lane Client,
bridging
Firewall (formerly IpeXchange Net Management)
o
o2
Firewall (3xx0)
o3
Firewall with ssh (36x0 26x0)
p
Service Provider (IP RIP/IGRP/EIGRP/OSPF/BGP, CLNS ISIS/IGRP)
p2
Service Provider w/CIP2 ucode
p3
as5200 service provider
p4
5800 (Nitro) service provider
q
q2
r
Async
IpeXchange Async
IBM base option (SRB, SDLLC, STUN, DLSW, QLLC) - used with
i, in, d (See note below.)
r2
IBM variant for 1600 images
r3
IBM variant for Ardent images (3810)
r4
reduced IBM subset with BSC/MIB, BSTUN/MIB, ASPP/MIB,
RSRB/MIB removed.
source route switch (SNMP, IP, Bridging, SRB) (10.x releases)
s
11.2(only) division by Platform
c1000
c1005
c4000
(OSPF, IPMULTICAST,
NHRP, NTP, NAT,
RSVP,
FRAME_RELAY_SVC)
AT "s" images
(NAT,
RMON, IBM, MMP, VPDN/L2F)
also have:
(SMRP,ATIP,AU
(NAT,
IBM, MMP, VPDN/L2F, VOIP and ATM)
RP) IPX "s"
(NAT, IBM, MMP, VPDN/L2F) In 11.3T added
images also
VOIP
(NAT,
have: IBM, MMP, VPDN/L2F) In 11.3T added
VOIP
(NLSP,NHRP)
(NAT, IBM, MMP, VPDN/L2F)
c4500
(NAT, ISL, LANE, IBM, MMP, VPDN/L2F)
c5200
c5rsm
(PT, v.120, managed modems, RMON, MMP,
VPDN/L2F)
(MMP, VPDN, NAT, Modem Management,
RMON, IBM)
(NAT, LANE and VLANS)
c7000
(ISL, LANE, IBM, MMP, VPDN/L2F)
c7200
(NAT, ISL, IBM, MMP, VPDN/L2F)
rsp
(NAT, ISL, LANE, IBM, MMP, VPDN/L2F)
c1600
c2500
c2600
s
c3620
c3640
c5300
P a g e | 434
(OSPF, PIM, SMRP, NLSP, ATIP, ATAURP, FRSVC,
RSVP, NAT)
(X.25, full WAN, OSPF, PIM, NLSP, SMRP,
ATIP, ATAURP, FRSVC, RSVP, NAT)
CCIE R/S & Service Provider Exam Certification Guide
t
AIP w/ modified Ucode to connect to Teralink 1000 Data (11.2)
t
Telco return (12.0)
u
IP with VLAN RIP (Network Layer 3 Switching Software, rsrb, srt, srb,
sr/tlb)
v
VIP and dual RSP (HSA) support
v2
Voice V2D
v3
Voice Feature Card
WBU
w
Feature Sets (11.3WA and 12.0W5 releases)
i
IISP
l
LANE & PVC
p
PNNI
v
PVC traffic shaping
Cisco Advantage ED train Feature Sets
w2
a
IPX, static routing, gateway
b
Net Management
c
FR/X25
y
Async
w3
Distributed Director Feature Sets
x
X.25 in 11.1 and earlier releases.
x
FR/X.25 in 11.2 (IpeXchange)
x
y
H.323 Gatekeeper/Proxy in 11.3 and later releases for 2500, 3620, 3640,
mc3810
reduced IP (SNMP, IP RIP/IGRP/EIGRP, Bridging, ISDN, PPP) (C1003/4)
y
reduced IP (SNMP, IP RIP/IGRP/EIGRP, Bridging, WAN - X.25) (C1005)
(11.2 - includes X.25) (c1005)
y
IP variant (no Kerberos, Radius, NTP, OSPF, PIM, SMRP, NHRP...) (c1600)
y2
IP variant (SNMP, IP RIP/IGRP/EIGRP, WAN - X.25, OSPF, PIM) (C1005)
y2
IP Plus variant (no Kerberos, Radius, NTP, ...) (c1600)
y3
IP/X.31
y4
reduced IP variant (Cable, MIBs, DHCP, EZHTTP)
y5
reduced IP variant (Cable, MIBs, DHCP, EZIP) Home Office
y6
reduced IP variant(c800)
z
Managed modems
40
40 bit encryption
56
56 bit encryption
56i
56 bit encryption with IPSEC
See 'K' section for Triple DES and SSH
Obsolete
reduced desktop subset (SNMP, IP
RIP/IGRP/EIGRP, Bridging, ISDN, PPP, IPX,
AppleTalk) 1003/4
h
Also available in 12.0T on c800 series
P a g e | 435
CCIE R/S & Service Provider Exam Certification Guide
IOS 版本评估参考
对于正在使用的生产网来说,升级网络设备的软件是冒一定风险的。新的软件版本尽管可以
带来更多的新特性,也往往会带来更多的软件Bug 甚至是某些意想不到的错误。因此,建议只有
出现下列情况时,才考虑升级并替换已经被证明能够稳定运行的软件版本:
目前的软件版本不支持某些即将开展的新业务,如Voice/Video 或QoS
目前的软件版本不支持某些即将更新的硬件平台或板卡
目前的软件版本即将进入停止服务期(EOE)
目前的软件版本存在明显的安全漏洞或被证明有某些致命缺陷
常规建议
选择合适的升级版本需要经过多重考虑,对不同的网络应用和客户需求应该区分对待。尽管如此,
仍然有一些一般的建议,适用于大多数的情况:
在符合要求的情况下,尽量选择Cisco 发布的GD 版本
尽量避免选择最新的版本
尽量避免选择带有大量不必要功能和特性的版本
尽量避免选择即将服务到期的版本
充分利用Cisco 提供的在线工具和参考文档评估升级版本的各项特性
确定客户需求
选择IOS 版本时,需要作的第一件事就是明确升级的目的和客户的需求。对于需要新特性或
是新硬件支持而进行升级的情况,需要了解以下几个需求:
平台需求:网络设备都是Cisco 的那些产品,添加了那些需要支持的硬件板卡
协议需求:即网络上的应用需要什么协议,如TCP/IP,IPX 或ISIS 路由协议
特性需求:即需要路由器提供的某些特殊的功能,如NAT,HSRP
稳定性需求:网络是否承载关键业务,是否对稳定性和可靠性有较高的要求
评估版本升级的风险
所有客户的网络都需要一定的稳定性,但是稳定性和新特性往往并不能同时保证,但是,也
可以根据需求,尽量选择可以都满足的软件版本。下面是一些通常的建议:
关键任务网络:需要最高的稳定性,建议选用GD 版本IOS
一般任务网络:需要较好的稳定性,建议选用GD 基础上的添加了新特性的后续版本
新业务网络:需要最新的特性服务,建议选用经过测试的ED 版本
查看版本发布通知中的警告内容,查看是否有相关的警告信息,是否有解决方法或是已经通
过新版本进行了修正。不断跟踪新版本IOS 的Bug 公布信息和Cisco 的工程师保持密切的联
系,获得最新的版本发布信息
在生产网络软件升级前,利用测试平台进行全面的测试
在生产网络软件升级时,有完善的恢复方案和应急措施
在生产网络软件升级后,有详细的测试内容保证达到预期
19.3.2 IOS软件分类
IP Base
IP Base是最基础的IOS特性包,所有的其它包均包括IP Base的所有的特性。新的IP Base包括了大部
分早期版中中plus特性集的功能。IP Base提供DSL连接、以太交换模块支持、802.1q路由及在以太
网接口上的Trunk功能。
IP Base是路由器的缺省的IOS。呵呵,这就意味着从12.3的IOS开始,
要做trunk就不需要使用plus特性集的IOS了。
P a g e | 436
CCIE R/S & Service Provider Exam Certification Guide
IP Voice
IP Voice在IP Base特性集的基础上增加了语音特性。包括VoIP、VoFR等。IP voice特性集也支持所有
的语音接口卡和它们所使用到的信令协议。如.323和MGCP信令。
Advanced Security
Advanced Security在IP base的基础上增加了网络安全与VPN的支持。包括较早版本中的IOS FireWall、
IDS、SSHV1等特性集,支持做为Easy VPN的客户端或服务器端。所有的加密算法的支持:包括3Des、
AES等。都在这一个特性集中得到支持。
SP Services
SP Services是一个全面支持语音封装和传输服务的特性集,增加了SSHv1的支持,提供完整的在IP
FR、ATM网上跑数据和语音的解决方案。本特性集也支持Netflow和IP v6。
Enterprise Base
Enterprise Base 集成了数据连接、Qos特性。包括其它的可路由协议和IBM的服务。Novell和IPX协
议的支持。Enterprise Base是IP Base的一个超集,支持所有IP Base支持的特性。
Advanced IP Services
Advanced IP Services混合了数据、语音、安全与VPN特性的支持。Advanced IP Services支持SP Services
和Advanced Security特性集的所有特性,包括VPN、IDS、和Cisco IOS firewall。
Enterprise Services
Enterprise Services支持IPX、Apple Talk和IBM服务,同时提供话音和ATM服务的支持。这个包支持SP
Services的所有特性,并增加了EnterPrice Base特性集中的第三层路由协议的支持。本特性集集成了
完整的IBM服务和语音服务的支持。
Advanced Enterprise Services
Advanced Enterprise Services支持所有的可路由协议,支持语音、网络安全、VPN和其它所有的丰富
的特性集(如IPv6、Netflow),
19.3.3 TFTP升级IOS软件
1.
使用 TFTP 服务器软件在计算机上开设 TFTP 服务器,并将文件夹指向放有 IOS 的那个文件夹,将
计算机以太网卡的 ip 设置为 1.1.1.1
2.
连接路由器的 console 口与 PC 机的 COM1,使用 PC 的超级终端软件访问路由器,将路由器的地
址设为 1.1.1.2(与计算机的 IP 地址同网段即可)。建议在进行 IOS 升级前将原有 IOS 文件备份下来,
3.
防止待升级的 IOS 文件存在问题不可用;
Router# dir flash:
Directory of flash:/
1 -rw- 5998292 <no date> C2600-I-MZ.122-11.BIN
8388608 bytes total (2390252 bytes free)
Router#copy flash tftp (备份 IOS 文件)
Source filename []?c2600-i-mz.122-11.bin
Address or name of remote host []? 1,1,1,1 (TFTP 服务器地址)
Destination filename [c2600-i-mz.122-11.bin]?
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
…
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
5998292 bytes copied in 324.071 secs (18509 bytes/sec)
Router#
对路由器进行 IOS 升级;
Router#copy tftp flash
Address or name of remote host []? 1.1.1.1 (TFTP 服务器地址)
Source filename []? c2600-i-mz.122-11.bin (需升级的新 IOS 映象文件名)
P a g e | 437
CCIE R/S & Service Provider Exam Certification Guide
4.
5.
Destination filename [c2600-i-mz.122-11.bin]?
Do you want to over write? [confirm]
Accessing tftp://1.1.1.1/c2600-i-mz.122-11.bin...
Erase flash: before copying? [confirm]
Erasing the flash filesystem will remove all files! Continue? [confirm]
Erasing device... eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee ...erasedee
Erase of flash: complete
Loading c2600-i-mz.122-11.bin from 1.1.1.1 (via Ethernet0/0): !!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
„
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[OK - 5998292 bytes]
Verifying checksum... OK (0xA0C0)
5998292 bytes copied in 319.282 secs (18846 bytes/sec)
Router#
路由器对路由器进行 IOS 升级;
Router#conf t
Router(config)#tftp-server c2500-js-l.122-7a.bin
Router(config)#int e0
Router(config-if)#ip add 1.1.1.1 255.255.255.0
Router(config-if)#no shut
升级失败后,路由器寄存器的值为 0x2101,则可以进入 boot 模式升级
Router(boot)>en
Router(boot)#
Router(boot)#copy tftp flash
Address or name of remote host []? 1.1.1.1 (TFTP 服务器地址)
Source filename []? c2600-i-mz.122-11.bin (需升级的新 IOS 映象文件名)
Destination filename [c2600-i-mz.122-11.bin]?
Do you want to over write? [confirm]
Accessing tftp://1.1.1.1/c2600-i-mz.122-11.bin...
Erase flash: before copying? [confirm]
Erasing the flash filesystem will remove all files! Continue? [confirm]
Erasing device... eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee ...erasedee
Erase of flash: complete
Loading c2600-i-mz.122-11.bin from 1.1.1.1 (via Ethernet0/0): !!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
„
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[OK - 5998292 bytes]
Verifying checksum... OK (0xA0C0)
5998292 bytes copied in 319.282 secs (18846 bytes/sec)
Router(boot)# t
Router(boot)( config)# config-register 0x2102
Router(boot)( config)#exit
Router(boot)#wr
Router(boot)#reload
19.3.4 使用ROMMON升级IOS软件
由于错误删除 flash 或升级失败等其他原因导致 IOS 映像文件丢失,可以采用 ROMMON 的方
式升级 IOS。在开启 Cisco 路由器的电源开关后 30 秒内按下 Ctrl+break 键,中断路由器的正常启动,
路由器都会进入 rom 监视模式,即 rommon 1>,在这种情形下,对路由器的 IOS 进行升级,情况要
稍微复杂一点。在 rommon 1>状态下,可键?请求帮助。
P a g e | 438
CCIE R/S & Service Provider Exam Certification Guide
19.3.5 ROMMON(Xmodem)
rommon 2 > xmodem -c c2600-i-mz.122-11.bin
(-c 是带校验,c2600-i-mz.122-11.bin 为存放在 PC 机上的 IOS 映像文件)
WARNING: All existing data in bootflash will be lost!
Invoke this application only for disaster recovery.
Do you wish to continue? y/n [n]: y
Ready to receive file c2600-i-mz.122-11.bin ...
此时在超级终端的传送栏目-->选择发送文件选项 -->选择 Xmodem 指明映像文件所在路径
Erasing flash at 0x607c0000
program flash location 0x605b0000
Download Complete!
可以通过 Confreg 修改端口波特率,使用高速 Xmodem 传输
rommon 1 > confreg
Configuration Summary
enabled are:
load rom after netboot fails
console baud: 9600
boot: image specified by the boot system commands
or default to: cisco2-C2600
do you wish to change the configuration? y/n [n]: y (选择 yes)
enable "diagnostic mode"? y/n [n]: n (选择 no)
enable "use net in IP bcast address"? y/n [n]: n (选择 no)
disable "load rom after netboot fails"? y/n [n]: n (选择 no)
enable "use all zero broadcast"? y/n [n]: n (选择 no)
enable "break/abort has effect"? y/n [n]: n (选择 no)
enable "ignore system config info"? y/n [n]: n (选择 no)
change console baud rate? y/n [n]: y (选择 yes)
enter rate: 0 = 9600, 1 = 4800, 2 = 1200, 3 = 2400
4 = 19200, 5 = 38400, 6 = 57600, 7 = 115200 [0]: 7
选择 7,用最大的 11520 速率的 xmodem 传输
change the boot characteristics? y/n [n]: n (选择 no)
Configuration Summary
enabled are:
load rom after netboot fails
console baud: 115200
boot: image specified by the boot system commands
or default to: cisco2-C2600
do you wish to change the configuration? y/n [n]: n (选择 no)
You must reset or power cycle for new config to take effect
rommon 2 > reset
注意:在按 reset 键前,需要同时修改串口速率和终端速率
重新启动系统后,出现
rommon 1> xmodem -r
Do not start the sending program yet...
Invoke this application only for disaster recovery.
Do you wish to continue? y/n [n]: y (选择 yes)
Ready to receive file ...
P a g e | 439
CCIE R/S & Service Provider Exam Certification Guide
此时,在超级终端的菜单上的“传送”---“发送文件”----选择 IOS 映像文件所在地以及选择
使用“xmodem”协议,点击“发送”即可。
然后重启系统进入 Confreg ROMMON,将波特率改回 9600
19.3.6 ROMMON(tftpdnld)
tftpdnld 命令升级 IOS,具体步骤如下:
1、用 Cisco 原配的线缆连接路由器的 console 口与 PC 机的 COM1,使用 PC 机的超级终端
软件访问路由器;用一根双绞线连接路由器的 eth0/0 口与 PC 机的网卡。
2、将路由器的 eth0/0 口 IP 地址设为 1.1.1.2;PC 机的 IP 地址设为 1.1.1.1。将要升级的 IOS
映象文件拷贝到相关的目录中,并运行 TFTP 服务器软件,通过菜单设置 Root 目录为拷
贝 IOS 映象文件所在目录。
3、通过 set 命令查看配置参数
rommon 2 > set
PS1=rommon ! >
BOOT=
BSI=0
RET_2_RTS=
?=0
4、在 rommon 状态下输入:(注意大小写)
rommon 3 >IP_ADDRESS=1.1.1.1 (路由器的 ip 地址)
rommon 4 >IP_SUBNET_MASK=255.255.255.0 (路由器的掩码)
rommon 5 >DEFAULT_GATEWAY=1.1.1.2
rommon 6 >TFTP_SERVER=1.1.1.2
rommon 7 >TFTP_FILE=C2600-I-M.122-11.BIN (上传 ios 文件的名称)
rommon 8>sync (保存参数配置)
rommon 9 >set (查看)
rommon 10 > set
PS1=rommon ! >
BOOT=
IP_ADDRESS=1.1.1.1
IP_SUBNET_MASK=255.255.255.0
DEFAULT_GATEWAY=1.1.1.2
TFTP_SERVER=1.1.1.2
TFTP_FILE=C2600-I-MZ.122-11.BIN
BSI=0
RET_2_RTS=
?=0
执行 tftpdnld 命令进行 ios 升级,有时可能会报错或命令不执行,这时只要用 sync
命令保存配置后,重新启动路由器(最好关掉电源再开机)后,再执行 tftpdnld 命令就可
以了。
rommon 11 >tftpdnld(传送文件)出现提示选择 y
IP_ADDRESS: 1.1.1.1
IP_SUBNET_MASK: 255.255.255.0
DEFAULT_GATEWAY: 1.1.1.2
TFTP_SERVER: 1.1.1.2
TFTP_FILE: C2600-I-MZ.122-11.BIN
Invoke this command for disaster recovery only.
WARNING: all existing data in all partitions on flash will be lost!
Do you wish to continue? y/n: [n]: y
Receiving C2600-I-MZ.122-11.BIN from 1.1.1.2!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
„
P a g e | 440
CCIE R/S & Service Provider Exam Certification Guide
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
File reception completed.
Copying file C2600-I-MZ.122-11.BIN to flash.
Erasing flash at 0x607c0000
program flash location 0x605b0000
rommon 12>reset
19.3.7 flash分区合并
在进行路由器 flash 升级后,插上新的 flash 条后会显示如下信息
router#show version
…
32k bytes of non-volatile configuration memory.
8084k bytes of processor board system flash (read/write)
8084k bytes of processor board system flash (read/write)
configuration register is 0x2102
router#dir flash?
flash:1:
flash:2:
此时可以对 flash 进行重新分区,
1.把 flash:2:删除
router#erase flash:2:
2. 合并两个 flash
router(config)#partition flash 1 /把两个 flash 合并成一个 flash1
router#write memory
修改完后会显示这样的信息:
router#show version
…
…
32k bytes of non-volatile configuration memory.
16384k bytes of processor board system flash (read/write)
configuration register is 0x2102
19.4 Catalyst交换机文件系统
19.4.1 Catalyst交换机文件系统
Catalyst 交换机内有几种文件类型,主要文件类型为 IOS 映像文件和配置文件。
配置文件
1.Startup-config
第一次引导时,将读取和解析这个文件,并执行文件中的配置。
此文件储存在 NVRAM 中不受电力影响
2.Running-config
此文件是当前使用中的命令状态的副本,文件是动态的,每次配
置命令后都会更新
3.Vlan.dat
保存交换机定义的 vlan 配置等,当改变 vlan 划分时,此文件被更
新,此文件存在 flash 中,通过 vlan database 或者 vlan 配置
其他文件类型
System_env_vars
系统环境变量,用于保存 MAC 地址 模型编号 序列号和变化的模
块信息,show version 可看到这个文件用来显示系统信息的参考
Crashinfo
一个文件或者一个目录,用于存储交换机上一次崩溃以来的文本
输出,通常 flash:crashinfo 或者 crashinfo: 来储存和访问。
P a g e | 441
CCIE R/S & Service Provider Exam Certification Guide
文件位置:
flash:
Flash memory, usually containing bootable IOS image files (some models
emulate nvram: here)
bootflash:
Flash memory, usually containing bootable IOS image files
slot0:
Optional removable Flash card memory; can store any type of files
nvram:
NVRAM area, usually containing the startup-config file
system:
RAM area; contains the running-config file, as well as a directory of all dynamic
witch memory areas
tftp:
An external TFTP server where any type of switch file can be stored or retrieved;
no user authentication needed
ftp:
An external FTP server where any type of switch file can be stored or retrieved;
user authentication required
rcp:
An external rcp server where any type of switch file can be stored or retrieved;
user authentication required
19.4.2 Catalyst交换机文件操作
dir 命令显示目录中的文件,缺省目录通常是 Flash 文件系统。所以,输入 dir 默认显示 flash:/
目录。还可以指定希望浏览的目录,或者可以使用 all-filesystems 选项。如果想查看子目录下的文
件,甚至可以使用/recursive 开关。这里是一个例子:
Router# dir
Directory of flash:/
1 -rw- 15183868 c2600-ik9o3s3-mz.122-15.T9.bin
16777216 bytes total (1592488 bytes free)
Router#
Copy,尽管多数人都熟悉通常的 copy 命令,但是它不仅可以将文件从路由器或交换机的一个
地方拷贝到另一个地方。实际上,这个命令对向和从路由器拷贝文件非常重要。
例如,要升级一台路由器上的 IOS,必须从网络或本地的相关控制台端口(通过诸如 xmodem
的设备)拷贝新的 IOS。也可以使用 copy 命令在路由器和网络上备份配置,还可以从网络中将配置
恢复到路由器上。
在使用 copy 命令的时候,可以使用标准的 URL 格式以确定源和目的地。这里给出一个例子,
说明网络目的文件的 URL 路径特征:
tftp:[[//location]/directory]/filename
ftp:[[//[username[:password]@]location]/directory]/filename
show file 命令显示一个指定文件或文件系统的信息。show file 命令最有用的选项是 show file
information,它显示一个指定文件的信息,还有就是 show file systems,它显示文件系统的信息。
这里是一个例子:
Router# show file systems
File Systems:
Size(b) Free(b) Type Flags Prefixes
29688 28899 nvram rw nvram:
- - opaque rw system:
- - opaque rw null:
- - opaque ro xmodem:
- - opaque ro ymodem:
- - network rw tftp:
P a g e | 442
CCIE R/S & Service Provider Exam Certification Guide
* 16777216 1592488 flash rw flash:
- - network rw rcp:
- - network rw pram:
- - network rw ftp:
- - network rw scp:
Router#
more 命令显示一个文本文件。这个命令的工作方式和 Linux 中的类似-它可以查看磁盘上的
文件。在 Cisco IOS 的情况下,可以使用这条命令查看一个文本文件,例如配置文件或一个保存的
备份配置文件。这里是一个例子:
Router# more nvram:startup-config
delete 这条命令如其意所示-它删除文件。这条命令确实没有什么特殊之处,除了一点之外:
依赖于路由器类型,删除一个文件可能没有实际地释放该文件使用的文件空间。要收回已删除文
件使用的空间,需要使用 squeeze 命令。
erase 或 format,可以使用 erase 或 format 命令以删除 Flash 驱动器。erase 命令是更常被使用
的命令。在拷贝文件的时候,必须非常小心地对你是否希望删除文件系统这个问题回答否。这里
是一个例子:
Router# copy running-config flash:test
Destination filename [test]?
Erase flash: before copying? [confirm]
如果只按回车,接受了默认回答,将在路由器配置备份到 Flash 的时候删除 IOS 文件。
cd 和 pwd,可以使用 cd 命令改变目录,它以在 DOS 和 Linux 下的相同方式工作。这条命令将
目录改变到你指定的任何目录下。可以使用 pwd 命令打印当前目录,它也以在 Linux 下的相同方
式工作。注意到使用 dir 命令显示新的当前目录-nvram 文件系统-而不是默认的 Flash。
Router# cd nvram:
Router# pwd
nvram:/
Router# dir
Directory of nvram:/
27 -rw- 0 startup-config
28 ---- 0 private-config
29688 bytes total (29636 bytes free)
Router#
mkdir 和 rmdir,一些路由器和交换机提供创建和删除目录的的功能。可以使用 mkdir 命令创建
一个目录,而 rmdir 命令将删除一个指定的目录,需要使用 cd 和 pwd 命令进入这些目录。
19.5 配置Catalyst交换机的接口
19.5.1 配置接口的步骤
第一步
在特权模式输入命令进入配置终端
Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#
第二步
在全局配置模式输入命令进入接口。确认接口的类型和接口的号码。
Switch(config)# interface gigabitethernet0/1
P a g e | 443
CCIE R/S & Service Provider Exam Certification Guide
注意:你不必在接口类型和接口号码之间加上一个空格。例如,在前面的行上,你可以既可以
是 gigabitethernet0/1,gigabitethernet0/1,gi 0/1,也可以是 gi0/1。
第三步
在带有接口配置命令的每个 interface 命令之后你可根据该接口的要求个别配置。那些
你输入定义的协议和应用的命令将会在接口上运行。当你进入另一个接口或者输入 end
返回特权 EXEC 模式时,这些命令被收集并且被应用。
你也可以配置一个接口范围,用命令:
(global) interface range
或
(global) interface range macro
在一个范围中被配置的接口必须是同一类型以及必须被配置相同的特征选项。
第四步
你配置一个接口以后,用命令确认它的状态。
输入 show interface 的特权命令以察看所有接口或为该交换机具体配置的一张列表。设备所支持的
每个接口或特定接口的一个报告被提供出来:
Switch# show interfaces
Vlan1 is up, line protocol is up
Hardware is EtherSVI, address is 0000.0000.0000 (bia 0000.0000.00
Internet address is 10.1.1.64/24
MTU 1500 bytes, BW 1000000 Kbit, DLY 10 usec,
reliability 255/255, txload 1/255, rxload 1/255
Encapsulation ARPA, loopback not set
ARP type: ARPA, ARP Timeout 04:00:00
Last input 00:00:35, output 2d14h, output hang never
Last clearing of "show interface" counters never
Queueing strategy: fifo
Output queue 0/40, 1 drops; input queue 0/75, 0 drops
5 minute input rate 0 bits/sec, 0 packets/sec
5 minute output rate 0 bits/sec, 0 packets/sec
264251 packets input, 163850228 bytes, 0 no buffer
Received 0 broadcasts, 0 runts, 0 giants, 0 throttles
0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored
380 packets output, 26796 bytes, 0 underruns
0 output errors, 0 interface resets
0 output buffer failures, 0 output buffers swapped out
FastEthernet0/1 is up, line protocol is down
Hardware is Fast Ethernet, address is 0000.0000.0001 (bia 0000.00
MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec,
reliability 255/255, txload 1/255, rxload 1/255
Encapsulation ARPA, loopback not set
Keepalive set (10 sec)
Auto-duplex, Auto-speed
input flow-control is off, output flow-control is off
ARP type: ARPA, ARP Timeout 04:00:00
Last input never, output never, output hang never
Last clearing of "show interface" counters never
Queueing strategy: fifo
Output queue 0/40, 0 drops; input queue 0/75, 0 drops
5 minute input rate 0 bits/sec, 0 packets/sec
5 minute output rate 0 bits/sec, 0 packets/sec
0 packets input, 0 bytes, 0 no buffer
Received 0 broadcasts, 0 runts, 0 giants, 0 throttles
P a g e | 444
CCIE R/S & Service Provider Exam Certification Guide
0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored
0 input packets with dribble condition detected
0 packets output, 0 bytes, 0 underruns
0 output errors, 0 collisions, 2 interface resets
0 babbles, 0 late collision, 0 deferred
0 lost carrier, 0 no carrier
0 output buffer failures, 0 output buffers swapped out
<output truncated>
19.5.2 配置一个接口范围
第一步
第二步
命令
configure terminal
interface range {port-range | macro
macro_name}
第三步
第四步
第五步
第六步
end
show interface [interface-id]
copy running-config startup-config
目的
启用全局配置模式
输入接口的范围(Vlans 或者物理端口)进入接口范
围配模式进行配置。
 你可以使用 interface range 命令配置可达 5
个端可范围或一个事先定义的宏。
 在“
配置和使用接口范围宏”
中阐明宏是可变
的。
 每个逗号分隔的 port-range 必须包含相同的
接口类型。你不必在逗号后面输入空格。
 当你定义了一个范围,第一个端口和连字符
之间需要一个空隔。
现在可以用普通的配置命令提供配置参数给所有
在范围内的接口。
返回特权 EXEC 模式。
确认在范围内的接口配置。
(可选) 保存你的条目到配置文件中。
当使用 interface range 全局配置命令时,注意这些指导:
 确认 port-range 的条目:

vlan vlan-ID-vlan-ID,该处 Vlan ID 从 1-4094

fastethernet slot/{firt port} –
{last port},该处 slot 是 0

gigabitethernet slot/{first port} –
{last port},该处 slot 是 0

port-channel port-channel-number -port-channel-number,该处 port-channel-number
从 1-64
 当使用 interface range 命令时,
你在必须在接口号码和连字符之间添加一个空格。例如,
(globel) interface range gigabitethernet 0/1 -5 是一个可用的范围;而
(globel) interface range gigabitethernet 0/1-5 是一个不可用的范围。

该 interface range 命令只工作在已经被配置了 interface vlan 命令的 Vlan 接口(show
running-config 特权命令显示被配置的 Vlan 接口)。用 show running-config 命令不能显示
的 Vlan 接口不能被 interface range 命令使用。

范围内的所有接口必须是同一种类型;就是说,所有快速以太端口,所有千兆以太端口,
所有以太通道端口,或所有交换虚拟端口。
这个例子显示怎样使用 interface range 全局配置命令启用 Gigabit Ethernet 接口 0/1 到 0/5:
Switch# configure terminal
P a g e | 445
CCIE R/S & Service Provider Exam Certification Guide
Switch(config)# interface range gigabitethernet0/1 -5
Switch(config-if-range)# no shutdown
Switch(config-if-range)#
*Oct 6 08:24:35: %LINK-3-UPDOWN: Interface GigabitEthernet0/1, changed state to up
*Oct 6 08:24:35: %LINK-3-UPDOWN: Interface GigabitEthernet0/2, changed state to up
*Oct 6 08:24:35: %LINK-3-UPDOWN: Interface GigabitEthernet0/3, changed state to up
*Oct 6 08:24:35: %LINK-3-UPDOWN: Interface GigabitEthernet0/4, changed state to up
*Oct 6 08:24:35: %LINK-3-UPDOWN: Interface GigabitEthernet0/5, changed state to up
*Oct 6 08:24:36: %LINEPROTO-5-UPDOWN: Line protocol on Interface
GigabitEthernet0/05,
changed state to up
*Oct 6 08:24:36: %LINEPROTO-5-UPDOWN: Line protocol on Interface
GigabitEthernet0/3,
changed state to up
*Oct 6 08:24:36: %LINEPROTO-5-UPDOWN: Line protocol on Interface
GigabitEthernet0/4,
changed state to up
这个例子展示怎样给范围用一个逗号来添加不同的接口类型字符串,在范围 0/1 到 0/3
和两个 GBT 接口 0/7 和 0/8 上启用所有的 Gigabit Ethernet 接口:
Switch# configure terminal
Switch(config)# interface range gigabitethernet0/1 -3, gigabitethernet0/7 -8
Switch(config-if-range)# no shutdown
Switch(config-if-range)#
*Oct 6 08:29:28: %LINK-3-UPDOWN: Interface GigabitEthernet0/1, changed state to up
*Oct 6 08:29:28: %LINK-3-UPDOWN: Interface GigabitEthernet0/2, changed state to up
*Oct 6 08:29:28: %LINK-3-UPDOWN: Interface GigabitEthernet0/3, changed state to up
*Oct 6 08:29:28: %LINK-3-UPDOWN: Interface GigabitEthernet0/7, changed state to up
*Oct 6 08:29:28: %LINK-3-UPDOWN: Interface GigabitEthernet0/8, changed state to up
*Oct 6 08:29:29: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet0/
7,
changed state to up
*Oct 6 08:29:29: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet0/
2,
changed state to up
*Oct 6 08:29:29: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet0/
4,
changed state to up
如果当你在接口范围模式输入复合配置命令,每个命令就像他们被输入那样被执行。你
退出接口范围模式后,这些命令不会被堆到一起被执行。如果命令正被执行时你退出接口配
置模式,那么在范围里的所有接口的一些命令可能不会被执行。在退出接口范围配置模式之
前要等到直到命令快速的再次出现。
19.5.3 配置和使用接口范围宏
你可以创建一个接口范围宏自动选择一个接口范围来配置。在你能够在 interface range macro
全局命令字符串中使用 macro 关键字之前,你必须用命令定义宏:
(global) define interface-range
P a g e | 446
CCIE R/S & Service Provider Exam Certification Guide
命令
第一步
configure terminal
第二步
define
interface-range
macro_name
interface_range
第三步
interface range
macro_name
第四步
第五步
end
show running-config |
include define
copy running-config
startup-config
第六步
macro
目的
进入全局配置模式
定义 interface-range macro 并保存在 NVRAM。
 macro_name 是一个最大 32 个字符的字符串。
 一个 macro 可以包含 5 个以逗号隔开的接口范
围。你不必在逗号前面或后面输入空格。
 每个 interface-range 必须包含相同类型的端口
选择需被配置的接口范围,并使用保存在
interface-range 中叫做 macro_name 的宏。
返回特权模式
显示被确认的接口范围宏配置
(可选)保存你的条目到配置文件中。
用命令删除一个宏:
(global) no define interface-range macro_name
当使用 define interface-range 全局命令时,注意这些指导方针:
 给 interface-range 有效的条目:

vlan vlan-ID -vlan-ID, 该处 VLAN ID 从 1 到 4094

fastethernet slot/{first port} -{last port}, where slot is 0

gigabitethernet slot/{first port} -{last port}, where slot is 0

port-channel port-channel-number -port-channel-number, 该处
port-channel-number 从 1 到 64.
 当使用 interface range 命令时,你在必须接口号码和连字符之间添加一个空格。
例如,
(globel) interface range gigabitethernet 0/1 -5 是一个可用的范围;而
(globel) interface range gigabitethernet 0/1-5 是一个不可用的范围。
 Vlan 接口(SVIs)必须已经用 interface vlan 命令配置好了。show running-config 特权
命令显示被配置的 Vlan 接口,用 show running-config 命令不能显示的 Vlan 接口不能
被 interface range 命令使用。
 范围内的所有接口必须是同一种类型;就是说,所有快速以太端口,所有千兆以
太端口,所有以太通道端口,或所有交换虚拟端口。
这个例子展示怎样定义一个选择了 GBT 端口 1-4,名为 enet_list 的接口范围宏,确认
宏配置如下:
Switch# configure terminal
Switch(config)# define interface-range enet_list gigabitethernet0/1 -4
Switch(config)# end
Switch# show running-config | include define
define interface-range enet_list GigabitEthernet0/1 -4
Switch#
这个例子展示怎样创建一个名为 macrol 的多接口宏:
Switch# configure terminal
P a g e | 447
CCIE R/S & Service Provider Exam Certification Guide
Switch(config)# define interface-range macro1 gigabitethernet0/1 -2,
fastethernet0/5 -7
Switch(config)# end
Switch#
这个例子展示怎样把接口宏 enet_list 输入到接口范围配置模式:
Switch# configure terminal
Switch(config)# interface range macro enet_list
Switch(config-if-range)#
这个例子展示怎样删除接口范围宏 enet_list,并且确认他确实已被删除。
Switch# configure terminal
Switch(config)# no define interface-range enet_list
Switch# show run | include define
Switch#
19.5.4 配置第二层接口
这些部分描述了缺省接口配置以及那些你可以在大多数物理接口上配置的可选项:

缺省第二层以太网接口配置

配置接口速度和双工模式

配置 IEEE802.3X 流控制

为一个接口添加一个描述
注意:进入接口配置模式以后,如果接口在第三层模式,你必须输入不带任何参数
(interface) switchport
以把该接口放入第二层模式。这样会关闭接口并重新起用他,并产生消息
给已经连接着的接口。同时,当你用这个命令把接口放入第二层模式时,你也删除了接口上的所
有第三层特征。
缺省第二层以太接口配置
特征
缺省设置
运作模式
第二层或交换模式 (switchport command).
注意 路由模式 (no switchport command) 只有当交换机装有
EMI 时才是一个可用模式。所有的 Catalyst 3550GBT 交换机交货
时已装有 EMI。Catalyst 3550FESwitch 交货时要么是标准多层软
件映像(SMI)要么是预装 EMI 的。你可以定购 EMI 升级包,升级
Catalyst3550 从 SMI 到 EMI。
P a g e | 448
允许的 VLAN 范围
VLANs 1 - 4094.
缺省 VLAN (给访问端口)
VLAN 1.
本地 VLAN (给 802.1Q 干道)
VLAN 1.
VLAN 中继
动态可用的交换端口模式 (支持 DTP).
CCIE R/S & Service Provider Exam Certification Guide
端口启用状态
所有端口都被启用
端口描述
没有定义
速度
自适应
双工模式
自适应
流控制
对于 10/100/1000 Mb/s 端口流控制收为关闭 off, 发为期
望 desired。而对于 10/100 Mb/s 端口, 发总是关闭 off。
以太通道 (端口聚合协议
在所有端口上没有启用。 请看“
配置以台通道”
PAgP)
端口阻塞 (未知多播和未知单
禁用(没有被阻断). 请看 "配置端口阻断" 部分.
播流量)
广播,多播和单播风暴控制
受保护
端口安全
速端口
禁用。 请看 “
缺省风暴控制配置”
。
禁用。 请看“
配置受保护端口”
部分
禁用 请看“
缺省端口安全配置”
部分
禁用
19.5.5 配置接口速度和双工模式
这个部分描述怎样配置接口速度和双工模式:
 配置方针
 设置接口速度和双工参数
配置方针
当配置一个接口速度和双工模式时,注意这些方针:
 如果线路两端支持自动协商,我们强烈建议使用缺省自动协商设置。
 如果一端接口支持自动协商而另一端不支持,需在两个接口上配置双工和速度;不要在支持
的一方使用 auto 设置
注意:GigaStack-to-GigaStack 串联连接运行在半双工模式,而 GigaStack-to-GigaStack 点到点连
接运行在全双工模式。
小心:改变接口速度和双工模式的配置,在重配置期间可能会关闭并重启该接口。
设置接口速度和双工模式
你可以在快速以太(10/100-Mbps)和千兆以太(10/100/1000-Mbps)上配置接口速度;你无法在
千兆接口转发器接口(GBIC)上配置速度。你可以配置在任何没有设置自动协商的快速或千兆接口上
配置双工模式;你无法在 GBIC 上配置双工模式。因为以太网中的主要约束是冲突,全双工通讯是
一个有效的解决方案。通常,10-Mbps 端口运行在半双工模式,这就意味着该站点要么接收要么
发送。在全双工模式模式,两个站点能够在同一时间接收和发送。当包同时在两个方向上流动时,
P a g e | 449
CCIE R/S & Service Provider Exam Certification Guide
10-Mbps 接口的有效以太带宽会翻一倍到 20Mbps,快速以太接口会到 200Mbps,而 GBT 接口会到
2Gbps。
注意:你无法在 GBIC 上配置速度和双工模式,但是,如果被连接的设备不支持自动协商,你可以在
某些 GBICs 上配置速度为不协商(nonegotiate)。
Step 1
Step 2
命令
configure terminal
interface interface-id
speed {10 | 100 | 1000
| auto | nonegotiate}
Step 3
Step 4
Step 5
Step 6
Step 7
duplex {auto | full |
half}
end
show
interfaces
interface-id
copy
running-config
startup-config
目的
进入全局配置模式
进入接口配置模式,并确认物理接口
为 接 口 输 入 适 当 的 接 口 参 数 , 或 者 输 入 auto 或
nonegotiate.
注意 1000 关键字只针对 10/100/1000 Mbps 的端口有
效. nonegotiate 关键字只针对 1000BASE-SX, -LX, and -ZX
GBIC 端口有效.
为接口输入双工参数
返回特权模式
显示接口配置的速度和双工模式
(可选) 保存你的条目到配置文件
用 no speed 和 no duplex 接口配置命令使接口返回缺省速度和双工设置(autonegotiate)。为
了返回所有的接口缺省设置,使用命令
(interface) default interface interface-id
这个例子显示了在 fastethernet interface 0/3 口上怎样设定接口速度为 10Mbps 和半双工模
式,并确认这个配置:
Switch# configure terminal
Switch(config)# interface fastethernet0/3
Switch(config-if)# speed 10
Switch(config-if)# duplex half
Switch(config-if)# end
Switch# show interfaces fastethernet0/3
FastEthernet0/3 is up, line protocol is down
Hardware is Fast Ethernet, address is 0000.0000.0003 (bia 0000.0000.0003)
MTU 1500 bytes, BW 100000 Kbit, DLY 100 usec,
reliability 255/255, txload 1/255, rxload 1/255
Encapsulation ARPA, loopback not set
Keepalive set (10 sec)
Half-duplex, 10Mb/s
<output truncated>
19.5.6 配置 IEEE802.3X 流控制
流控制在直连的以太端口上启用,在拥塞期间允许另一端拥塞的节点暂停链路运作来控
P a g e | 450
CCIE R/S & Service Provider Exam Certification Guide
制流量速率。如果一个端口发生拥塞并且不能接收任何更多的流量,他将通知对端端口停止
发送直到这种拥塞情况消失。当本地设备在他本地检测到了任何拥塞,他能够发送一个暂停
帧通知链路伙伴或者远程设备已发生拥塞。紧随收到暂停帧之后,远程设备停止发送任何数
据包,这样防止在拥塞期间丢弃任何一个数据包
注意:你不能在一个交换机上即配置 IEEE802.3X 流控制又配置 QoS。在一个接口上配置流控制
之前,用命令禁用交换机上的 QoS。
流控制可以用两种方式设计,对称和不对称。对称设计适合于点到点的链路,而不对称设计
适合于辐射型节点连接。辐射型节点中中心路由器可以中断末端系统,而反之就不行。用命
令设置接口的发送或接收暂停帧为 on,off 或 desired。
(interface) flowcontrol {receive | send}{on | off | desired}
缺省快速以太端口是 receive off 和 send off。
注意:在 Catalyst3550 交换机上,GBT 端口能够接收和发送暂停帧;快速以太端口只能够接收
暂停帧。因此,对快速以太端口来说,只能用 send off 来描述其状态。
这些规则应用于设备上的流控制:

receive on (or desired) 和 send on:流控制运行在两个方向;本地和远程设备都能够发
送暂停帧来显示链路拥塞。

receive on (or desired) 和 send desired:如果连接设备支持流控制,那么该端口就能接
收暂停帧和发送暂停帧

receive on (or desired) 和 send off:该端口不能发送暂停帧但是能够和一个期望或能够
发送暂停帧的连接设备一起运作;该端口可以接收暂停帧。

receive off 和 send on:如果远程设备支持流控制,该端口就发送暂停帧;但是该端口
不支持来自于远程设备的暂停帧。

receive off 和 send desired:如果连接的设备支持流控制,而该端口不能够接收暂停帧
但能发送暂停帧。

receive off 和 send off:流控制不任何一个方向上执行。在拥塞事件中,没有指示给链
路伙伴,并且没有暂停帧在两个方向上被发送或接收。
注意:更多的关于命令配置的详情以及接口配置模式中的 flowcontol 命令给本地和远程的端口
所带来的结果,在 Catalyst 3550 Multilayer Switch Command Reference。
从特权模式开始,以下这些步骤在接口上配置流控制:
Step 1
Command
configure terminal
Purpose
进入全局配置模式
P a g e | 451
CCIE R/S & Service Provider Exam Certification Guide
Step 2
no mls qos
Step 3
interface interface-id
Step 4
flowcontrol {receive | send} {on | off |
desired}
Step 5
Step 6
Step 7
禁用交换机上的 QoS
进入接口配置模式以配置物理接口
为端口配置流控制模式
注意 send 关键字不能用于 10/100 Mbps 接
口.
返回特权模式
确认端口流控制配置
(可选) 把条目保存到配置文件中
end
show interfaces interface-id
copy running-config startup-config
要禁用流控制,使用:
(interface) flowcontrol receive off
(interface) flowcontrol send off
这个例子展示怎样关闭 GBT 0/1 上的所有流控制并显示结果:
Switch# configure terminal
Switch(config)# interface gigabitethernet0/1
Switch(config-if)# flowcontrol receive off
Switch(config-if)# flowcontrol send off
Switch(config-if)# end
Switch# show interfaces gigabitethernet0/1
GigabitEthernet0/1 is up, line protocol is down
Hardware is Gigabit Ethernet, address is 0002.4b29.2e01 (bia 0002.4b29.2e01)
MTU 1500 bytes, BW 1000000 Kbit, DLY 10 usec,
reliability 255/255, txload 1/255, rxload 1/255
Encapsulation ARPA, loopback not set
Keepalive set (10 sec)
Auto-duplex, Auto-speed
input flow-control is off, output flow-control is off
<output truncated>
为接口添加一个描述
你可以在一个接口上添加一段描述来帮助你记忆该接口的功能。该描述用以下的命令来显示:
Command
Purpose
Step 1
configure terminal
进入全局配置模式
Step 2
interface interface-id
进入接口配置模式,该接口是你想添加一段描述的接
口。
Step 3
description string
为一个接口添加一段描述(上限为 240 个字符)
Step 4
end
返回特权模式
Step 5
show interfaces interface-id
确认你的条目
description
Step 6
P a g e | 452
or show running-config
copy running-config startup-config
(可选) 保存你的条目到配置文件中
CCIE R/S & Service Provider Exam Certification Guide
删除接口描述用命令:
(interface) no description
这个例子展示怎样给快速以太接口 0/4 添加一段描述并确认该描述:
Switch# config terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# interface fastethernet0/4
Switch(config-if)# description Connects to Marketing
Switch(config-if)# end
Switch# show interfaces fastethernet0/4 description
Interface Status
Fa0/4
Protocol Description
up
down
Connects to Marketing
19.5.7 监控和维护第二层接口
你可以执行这几节中的任务来监控和维护接口:

监视接口和控制器状态

清空和重置接口和计数器

关闭和重起接口
监视接口和控制器状态
在特权模式输入命令会立即显示关于该端口的信息,包括软件和硬件的版本,控制器状态,和
接口的统计信息。表 9-2 列出了一些接口监控命令。(你可以在特权模式中用 show ?命令显示所
有的 show 命令)这些命令的完全描述在 Cisco IOS Interface Command Reference for Release 12.1。
19.5.8 接口的 show 命令
Command
Purpose
show interfaces [interface-id]
显示所有接口或指定接口的状态和配置情况
show interfaces interface-id
显示接口状态或一个在错误禁用状态的接口列表
status [err-disabled]
show interfaces [interface-id]
显示交换端口(非路由端口)的管理和运行状态 你可以
switchport
用这个命令派段一个端口实路由还是交换模式
show interfaces [interface-id]
显示在一个接口上或所有接口上配置的描述信息和端
description
口状态
show running-config
显示内存理的运行配置文件
show version
显示配置文件的硬件配置, 软件版本, 名称 和源 ,以
及引导映像(boot images)。
Switch# show interfaces status
Port
Duplex
Speed
Gi0/1
CubeA
Name
connected 1
Status
a-full
Vlan
a-100
10/100/1000BaseTX
Type
Gi0/2
CubeE
notconnect 1
auto
auto
10/100/1000BaseTX
P a g e | 453
CCIE R/S & Service Provider Exam Certification Guide
Gi0/3
CubeF
disabled
1
auto
auto
10/100/1000BaseTX
Gi0/4
CubeG
notconnect 1
auto
auto
10/100/1000BaseTX
Gi0/5
CubeH
notconnect routed
auto
auto
10/100/1000BaseTX
Gi0/6
CubeI
notconnect routed
auto
auto
10/100/1000BaseTX
Gi0/7
CubeJ
connected 1
a-full
a-100
10/100/1000BaseTX
Gi0/8
CubeK
notconnect 1
auto
auto
10/100/1000BaseTX
Gi0/9
CubeL
disabled
auto
auto
10/100/1000BaseTX
Gi0/10
CubeB
notconnect routed
auto
auto
10/100/1000BaseTX
Gi0/11
CubeC
notconnect 1
auto
auto
unknown
Gi0/12
CubeD
notconnect 1
auto
auto
unknown
1
Switch# show interfaces switchport
Name: Gi0/1
Switchport: Enabled
Administrative Mode: dynamic desirable
Operational Mode: static access
Administrative Trunking Encapsulation: negotiate
Operational Trunking Encapsulation: native
Negotiation of Trunking: On
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 1 (default)
Trunking VLANs Enabled: ALL
Pruning VLANs Enabled: 2-1001
Protected: True
Unknown unicast blocked: disabled
Unknown multicast blocked: disabled
Voice VLAN: none (Inactive)
Appliance trust: none
Name: Gi0/2
Switchport: Enabled
Administrative Mode: dynamic desirable
Operational Mode: down
Administrative Trunking Encapsulation: negotiate
Negotiation of Trunking: On
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 1 (default)
Trunking VLANs Enabled: ALL
Pruning VLANs Enabled: 2-1001
P a g e | 454
CCIE R/S & Service Provider Exam Certification Guide
Protected: True
Unknown unicast blocked: disabled
Unknown multicast blocked: disabled
Voice VLAN: none (Inactive)
Appliance trust: none
<output truncated>
19.5.9 清空和重置接口和计数器
Command
Purpose
clear counters [interface-id]
清除接口计数器
clear interface interface-id
重置接口的硬件逻辑电路
clear line [number | console 0 | vty number]
在一个异步串行线路上重置接口逻辑电路
为了清除用 show interfaces 特权模式命令显示的接口计数,使用特权命令:
(exec) clear counters
从接口清除所有当前接口计数,除非可选变量被指派来清除一个定接口类型,
该特定接口来自于一个特定接口号的唯一接口号。
注意:特权命令 clear counters 不能清除用 SNMP 重新收到的计数,只能清除用 show interface
特权命令显示的计数。
这个例子展示怎样清除和重置千兆口 0/5:
Switch# clear counters gigabitethernet0/5
Clear "show interface" counters on this interface [confirm] y
Switch#
*Sep 30 08:42:55: %CLEAR-5-COUNTERS: Clear counter on interface GigabitEthernet0/5
by vty1 (171.69.115.10)
清除和重置一个接口或一个串行线路,用命令:
(interface) clear interface
(interface) clear line
在绝大多数环境中,你不必清除一个接口或串行线路的硬件逻辑电路。
这个例子显示怎样清除和重置 GBT 接口 0/5:
Switch# clear interface gigabitethernet0/5
19.5.10 关闭和重启接口
关闭一个特定接口会禁用所有功能并且所有监控命令显示标注这个接口不可用。通过动态路
P a g e | 455
CCIE R/S & Service Provider Exam Certification Guide
由协议给信息被发给其他的网络服务服务设备。这个接口在所有路由更新中不被监控。从特权模
式开始,以下这些步骤关闭一个接口:
Command
Purpose
Step 1
configure terminal
进入全局配置模式
Step 2
interface
{vlan
vlan-id}
{{fastethernet
|
选择一个需被配置的端口
|
gigabitethernet} interface-id} |
{port-channel
port-channel-number}
Step 3
shutdown
关闭一个接口
Step 4
end
返回特权模式
Step 5
show running-config
确认你的条目
重启该接口用命令:
(interface) no shutdown
这个列子展示怎样关闭千兆以太接口 0/5:
Switch# configure terminal
Switch(config)# interface gigabitethernet0/5
Switch(config-if)# shutdown
Switch(config-if)#
*Sep 30 08:33:47: %LINK-5-CHANGED: Interface GigabitEthernet0/5, changed state to a
administratively down
这个例子展示怎样重启千兆以太接口 0/5:
Switch# configure terminal
Switch(config)# interface gigabitethernet0/5
Switch(config-if)# no shutdown
Switch(config-if)#
*Sep 30 08:36:00: %LINK-3-UPDOWN: Interface GiogabitEthernet0/5, changed state to up
为了确认一个接口是禁用的,输入命令:
(interface) show interface
在千兆以太接口 0/1 上,一个禁用的接口在 show interface 命令中被显示为 administratively down。
Switch# show interfaces
<output truncated>
GigabitEthernet0/2 is administratively down, line protocol is down
Hardware is Gigabit Ethernet, address is 0002.4b29.4403 (bia 0002.4b29.4403)
MTU 1500 bytes, BW 1000000 Kbit, DLY 10 usec,
reliability 255/255, txload 1/255, rxload 1/255
Encapsulation ARPA, loopback not set
Keepalive set (10 sec)
Auto-duplex, Auto-speed
<output truncated>
P a g e | 456
CCIE R/S & Service Provider Exam Certification Guide
Chapter 20
20.1
VLAN和VTP
VLAN基础
VLAN是英文Virtual Local Area Network的缩写, 即虚拟局域网。一方面, VLAN建立在局域网交换机的
基础之上;另一方面, VLAN是局域交换网的灵魂。这是因为通过VLAN用户能方便地在网络中移动和快捷
地组建宽带网络, 而无需改变任何硬件和通信线路。这样, 网络管理员就能从逻辑上对用户和网络资源
进行分配, 而无需考虑物理连接方式。 VLAN充分体现了现代网络技术的重要特征:高速、灵活、管理
简便和扩展容易。是否具有VLAN功能是衡量局域网交换机的一项重要指标。网络的虚拟化是未来网络
发展的潮流。
VLAN与普通局域网从原理上讲没有什么不同, 但从用户使用和网络管理的角度来看, VLAN与普通
局域网最基本的差异体现在:VLAN并不局限于某一网络或物理范围, VLAN中的用户可以位于一个园区的
任意位置, 甚至位于不同的国家。
20.1.1 描述VLAN
Vlan 是一种逻辑上的局域网, 如下图所示, 他可以将不同交换机, 不同地域的接口划分到一个虚拟
的 LAN 中, 便于管理和维护, 同时划分 vlan 还可以隔离广播流量, 防止大型网络中多台机器广播影响性
能
对一个极大规模的未分配 vlan 的网络, 不明地址的单播帧和组播流量能在同一个广播域中畅通无
阻, 例如下图, 图中, 是一个由 5 台二层交换机(交换机 1~5)连接了大量客户机构成的网络。假设这时,
计算机 A 需要与计算机 B 通信。在基于以太网的通信中, 必须在数据帧中指定目标 MAC 地址才能正常
通信, 因此计算机 A 必须先广播“ARP 请求(ARP Request)信息”, 来尝试获取计算机 B 的 MAC 地址。
P a g e | 457
CCIE R/S & Service Provider Exam Certification Guide
交换机 1 收到广播帧(ARP 请求)后, 会将它转发给除接收端口外的其他所有端口, 也就是 Flooding
了。接着, 交换机 2 收到广播帧后也会 Flooding。交换机 3、4、5 也还会 Flooding。最终 ARP 请求会被
转发到同一网络中的所有客户机上。
1.广播信息消耗了网络整体的带宽,
2.收到广播信息的计算机还要消耗一部分 CPU 时间来对它进行处理。造成了网络带宽和 CPU 运
算能力的大量无谓消耗。
20.1.2 VLAN的局限性
随着网络的迅速发展, 用户对于网络数据通信的安全性提出了更高的要求, 诸如防范黑客攻击、
控制病毒传播等, 都要求保证网络用户通信的相对安全性;传统的解决方法是给每个客户分配一个 VLAN
和相关的 IP 子网, 通过使用 VLAN, 每个客户被从第 2 层隔离开, 可以防止任何恶意的行为和 Ethernet
的信息探听。 然而, 这种分配每个客户单一 VLAN 和 IP 子网的模型造成了巨大的可扩展方面的局限。
这些局限主要有下述几方面。
1.
VLAN 的限制:交换机固有的 VLAN 数目的限制;
2.
复杂的 STP:对于每个 VLAN, 每个相关的 Spanning Tree 的拓扑都需要管理;
3.
IP 地址的紧缺:IP 子网的划分势必造成一些 IP 地址的浪费;
4.
路由的限制:每个子网都需要相应的默认网关的配置。
20.1.3 pVLAN
从安全上考虑, 现在有了一种新的 VLAN 机制, 所有服务器在同一个子网中, 但服务器只能与自己
的默认网关通信。这一新的 VLAN 特性就是专用 VLAN(Private VLAN)。在 Private VLAN 的概念中, 交换机
端口有三种类型:
Isolated port, Community port, Promisc-uous port;
它们分别对应不同的 VLAN 类型:Isolated port 属于 Isolated pVLAN, Community port 属于 Community
pVLAN, 而代表一个 Private VLAN 整体的是 Primary VLAN, 前面两类 VLAN 需要和它绑定在一起, 同时它
还包括 Promiscuous port。在 Isolated pVLAN 中, Isolated port 只能和 Promiscuous port 通信, 彼此不能交
换流量;在 Community pVLAN 中, Community port 不仅可以和 Promiscuous port 通信, 而且彼此也可以交
换流量。Promiscuous port 与路由器或第 3 层交换机接口相连,它收到的流量可以发往 Isolated port 和
Community port。
pVLAN 的应用对于保证接入网络的数据通信的安全性是非常有效的, 用户只需与自己的默认网关
P a g e | 458
CCIE R/S & Service Provider Exam Certification Guide
连接, 一个 pVLAN 不需要多个 VLAN 和 IP 子网就提供了具备第 2 层数据通信安全性的连接, 所有的用户
都接入 pVLAN, 从而实现了所有用户与默认网关的连接, 而与 pVLAN 内的其他用户没有任何访问。pVLAN
功能可以保证同一个 VLAN 中的各个端口相互之间不能通信, 但可以穿过 Trunk 端口。这样即使同一 VLAN
中的用户, 相互之间也不会受到广播的影响。
20.1.4 vlan划分
VLAN 在交换机上的实现方法, 可以大致划分为六类:
1. 基于端口划分的 VLAN
这是最常应用的一种 VLAN 划分方法, 应用也最为广泛、最有效, 目前绝大多数 VLAN 协议的
交换机都提供这种 VLAN 配置方法。这种划分 VLAN 的方法是根据以太网交换机的交换端口来划分
的, 它是将 VLAN 交换机上的物理端口和 VLAN 交换机内部的 PVC(永久虚电路)端口分成若干个组,
每个组构成一个虚拟网, 相当于一个独立的 VLAN 交换机。
对于不同部门需要互访时, 可通过路由器转发, 并配合基于 MAC 地址的端口过滤。对某站点
的访问路径上最靠近该站点的交换机、路由交换机或路由器的相应端口上, 设定可通过的 MAC 地
址集。这样就可以防止非法入侵者从内部盗用 IP 地址从其他可接入点入侵的可能。
从这种划分方法本身我们可以看出, 这种划分的方法的优点是定义 VLAN 成员时非常简单, 只
要将所有的端口都定义为相应的 VLAN 组即可。适合于任何大小的网络。它的缺点是如果某用户离
开了原来的端口, 到了一个新的交换机的某个端口, 必须重新定义。
2. 基于 MAC 地址划分 VLAN
这种划分 VLAN 的方法是根据每个主机的 MAC 地址来划分, 即对每个 MAC 地址的主机都配置
他属于哪个组, 它实现的机制就是每一块网卡都对应唯一的 MAC 地址, VLAN 交换机跟踪属于 VLAN
MAC 的地址。这种方式的 VLAN 允许网络用户从一个物理位置移动到另一个物理位置时, 自动保留
其所属 VLAN 的成员身份。
由这种划分的机制可以看出, 这种 VLAN 的划分方法的最大优点就是当用户物理位置移动时,
即从一个交换机换到其他的交换机时, VLAN 不用重新配置, 因为它是基于用户, 而不是基于交换机
的端口。这种方法的缺点是初始化时, 所有的用户都必须进行配置, 如果有几百个甚至上千个用户
的话, 配置是非常累的, 所以这种划分方法通常适用于小型局域网。而且这种划分的方法也导致了
交换机执行效率的降低, 因为在每一个交换机的端口都可能存在很多个 VLAN 组的成员, 保存了许
多用户的 MAC 地址, 查询起来相当不容易。另外, 对于使用笔记本电脑的用户来说, 他们的网卡可
能经常更换, 这样 VLAN 就必须经常配置。
3. 基于网络层协议划分 VLAN
VLAN 按网络层协议来划分, 可分为 IP、IPX、DECnet、AppleTalk、Banyan 等 VLAN 网络。这种
按网络层协议来组成的 VLAN, 可使广播域跨越多个 VLAN 交换机。这对于希望针对具体应用和服
务来组织用户的网络管理员来说是非常具有吸引力的。而且, 用户可以在网络内部自由移动, 但其
VLAN 成员身份仍然保留不变。
这种方法的优点是用户的物理位置改变了, 不需要重新配置所属的 VLAN, 而且可以根据协议
类型来划分 VLAN, 这对网络管理者来说很重要, 还有, 这种方法不需要附加的帧标签来识别 VLAN,
这样可以减少网络的通信量。这种方法的缺点是效率低, 因为检查每一个数据包的网络层地址是需
要消耗处理时间的(相对于前面两种方法), 一般的交换机芯片都可以自动检查网络上数据包的以
太网祯头, 但要让芯片能检查 IP 帧头, 需要更高的技术, 同时也更费时。当然, 这与各个厂商的实
现方法有关。
P a g e | 459
CCIE R/S & Service Provider Exam Certification Guide
4. 根据 IP 组播划分 VLAN
IP 组播实际上也是一种 VLAN 的定义, 即认为一个 IP 组播组就是一个 VLAN。这种划分的方法
将 VLAN 扩大到了广域网, 因此这种方法具有更大的灵活性, 而且也很容易通过路由器进行扩展,
主要适合于不在同一地理范围的局域网用户组成一个 VLAN, 不适合局域网, 主要是效率不高。
5. 按策略划分 VLAN
基于策略组成的 VLAN 能实现多种分配方法, 包括 VLAN 交换机端口、MAC 地址、IP 地址、网
络层协议等。网络管理人员可根据自己的管理模式和本单位的需求来决定选择哪种类型的 VLAN 。
6. 按用户定义、非用户授权划分 VLAN
基于用户定义、非用户授权来划分 VLAN, 是指为了适应特别的 VLAN 网络, 根据具体的网络用
户的特别要求来定义和设计 VLAN, 而且可以让非 VLAN 群体用户访问 VLAN, 但是需要提供用户密
码, 在得到 VLAN 管理的认证后才可以加入一个 VLAN。
20.1.5 vlan范围
VLAN 1 是本地 VLAN,所有未被划分的接口都属于该 VLAN VLAN 号码:一共 4096 个可用 VLAN
0,4095 – 保留
1 – 本地 VLAN
2~~1001 – 用于以太网
VLAN1002:FDDI-Default
VLAN1003:Token-Ring-Default
VLAN1004:FDDInet-Default
VLAN1005:TRnet-default
1024~~4094 – 用于扩展的以太网
ISL 封装只支持到 1005;802.1Q 支持全部
20.2
配置VLAN
20.2.1 vlan添加与删除
在 Cisco 交换机上划分 vlan 有 2 种方法.例如, 现在需要启用一个名字为 kaka 的 vlan, vlan 号为 3
1.
Vlan 数据库配置方法
Switch#vlan database
% Warning: It is recommended to configure VLAN from config mode,
as VLAN database mode is being deprecated. Please consult user
documentation for configuring VTP/VLAN in config mode.
Switch(vlan)#vlan 3 name kaka
VLAN 3 added:
Name: kaka
Switch(vlan)#exit
APPLY completed.
Exiting....
Switch#sh vlan
VLAN Name
Status
Ports
---- -------------------------------- --------- ------------------------------1
default
active
Fa0/1, Fa0/2, Fa0/3, Fa0/4
Fa0/5, Fa0/6, Fa0/7, Fa0/8
Fa0/9, Fa0/11, Fa0/12,Gi0/1
Gi0/2
3
kaka
active
1002 fddi-default
act/unsup
--More—
但这种方法即将在新的 IOS 版本中失效
2.
P a g e | 460
全局模式配置 vlan, 例如现在将启用一个名为 cisco 的 vlan, vlan 号为 4
Switch#conf t
CCIE R/S & Service Provider Exam Certification Guide
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#vlan 4
Switch(config-vlan)#name cisco
Switch(config-vlan)#do sh vlan
VLAN Name
Status
Ports
---- -------------------------------- --------- ------------------------------1
default
active
Fa0/1, Fa0/2, Fa0/3, Fa0/4
Fa0/5, Fa0/6, Fa0/7, Fa0/8
Fa0/9, Fa0/11, Fa0/12,Gi0/1
Gi0/2
3
kaka
active
1002 fddi-default
act/unsup
Switch(config-vlan)#exit
Switch(config)#do sh vlan
VLAN Name
Status
Ports
---- -------------------------------- --------- ------------------------------1
default
active
Fa0/1, Fa0/2, Fa0/3, Fa0/4
Fa0/5, Fa0/6, Fa0/7, Fa0/8
Fa0/9, Fa0/11, Fa0/12,Gi0/1
Gi0/2
3
kaka
active
4
cisco
active
由如上配置可知, 仅配置完成后, 使用 exit 退出, vlan 才可以被创建,
同样 vlan 删除也有 2 种模式,
Switch#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#no vlan 4
此时, vlan 4 立刻被删除。使用 vlan 数据库如下
Switch#vlan database
Switch(vlan)#no vlan 3
Deleting VLAN 3...
Switch(vlan)#do show vlan
VLAN Name
Status
Ports
---- -------------------------------- --------- ------------------------------1
default
active
Fa0/1, Fa0/2, Fa0/3, Fa0/4
Fa0/5, Fa0/6, Fa0/7, Fa0/8
Fa0/9, Fa0/11, Fa0/12,Gi0/1
Gi0/2
3
kaka
active
1002 fddi-default
act/unsup
Switch(vlan)#exit
APPLY completed.
Exiting....
Switch#sh vlan
VLAN Name
Status
Ports
---- -------------------------------- --------- ------------------------------1
default
active
Fa0/1, Fa0/2, Fa0/3, Fa0/4
Fa0/5, Fa0/6, Fa0/7, Fa0/8
Fa0/9, Fa0/11, Fa0/12,Gi0/1
P a g e | 461
CCIE R/S & Service Provider Exam Certification Guide
Gi0/2
1002 fddi-default
act/unsup
可以看出, 即便执行了 no vlan 3, vlan 也不会删除, 除非使用 exit 退出。在清空一台交换机配置的
时候, 也需要注意 vlan.dat , 这个文件会保存 vlan 信息, 如果需要将一台交换机恢复到默认状态, 除了在
重起前清除 start-config 以外, 还要删除 vlan.dat 文件
No vlan命令仅用于VTP服务器和透明模式上,关于VTP,后文将会讨论。
20.2.2 将端口划入vlan
将端口划入一个 vlan, 首先需要将端口改为接入端口, 然后使用 switchport access vlan vlan-id 将端
口划入一个 vlan
Switch#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#vlan 3
Switch(config-vlan)#exit
Switch(config)#interface fastEthernet 0/1
Switch(config-if)#switchport mode access
Switch(config-if)#switchport access vlan 3
当一个 vlan 没有被创建的时候, 设置一个接口加入这个未定义的 vlan, 系统将会自动创建
Switch(config-if)#interface fa0/2
Switch(config-if)#switchport mode access
Switch(config-if)#switchport access vlan 100
% Access VLAN does not exist. Creating vlan 100
Switch(config-if)#
需要同时操作多个端口, 可以使用 interface range 命令
Switch(config)#interface range fastEthernet 0/1 - 5 , fastEthernet 0/6 - 10
Switch(config-if-range)#switch mode access
Switch(config-if-range)#switchport access vlan 10
Switch(config-if-range)#
将一个端口从某个 vlan 中移出, 也只需要使用
Switch(config-if)#no switchport access vlan 10
20.2.3 察看vlan状态
Switch#show vlan id 3
VLAN Name
Status
Ports
---- -------------------------------- --------- ------------------------------3
kaka
active
VLAN Type SAID
MTU
Parent RingNo BridgeNo Stp BrdgMode Trans1 Trans2
---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ -----3
enet 100003
1500 0
0
Remote SPAN VLAN
---------------Disabled
Primary Secondary Type
Ports
------- --------- ----------------- -----------------------------------------Switch#
同时可以 show vlan name kaka
Switch#sh inter fa0/1 switchport
P a g e | 462
CCIE R/S & Service Provider Exam Certification Guide
Name: Fa0/1
Switchport: Enabled
Administrative Mode: static access
Operational Mode: down
Administrative Trunking Encapsulation: negotiate
Negotiation of Trunking: Off
Access Mode VLAN: 10 (VLAN0010)
Trunking Native Mode VLAN: 1 (default)
Voice VLAN: none
Administrative private-vlan host-association: none
Administrative private-vlan mapping: none
Operational private-vlan: none
Trunking VLANs Enabled: ALL
Pruning VLANs Enabled: 2-1001
Capture Mode Disabled
Capture VLANs Allowed: ALL
Protected: false
Unknown unicast blocked: disabled
Unknown multicast blocked: disabled
20.2.4 pvlan配置
私有 vlan, 企业中常用来防止连接到某些接口或者某些接口组的网络设备之间相互通讯, 但是
却允许和默认网关通讯.每个 pvlan 包括 2 种 vlan, 主 vlan 和辅助 vlan, 辅助 vlan 是主 vlan 的子代, 辅
助 vlan 包括真实的端口, 其定义类似于其他交换机中的 supervlan 的定义。主 vlan 做为许多辅助 vlan
的集合对外进行通讯, 主 vlan 中可以定义混杂端口 Promiscuous port 他能够与 pvlan 中的全部设备
进行通讯混杂端口只是主 vlan, 每个混杂端口可以映射到多个辅助 vlan.通常混杂端口都是路由器的
端口, 备份服务器端口, 或者 vlan 接口
Aux-vlan:辅助 vlan 是一个子集合, 它分为 2 种类型, 隔离 vlan:如果端口属于隔离 vlan 则只
能和混杂端口通讯。团体 vlan:可以和团体内的其他端口通讯, 同时也可以和混杂端口通讯
最近流行的 ARP 欺骗病毒, 便可以通过这种方法, 例如, 某个 vlan 内发现 ARP 病毒后, 将 vlan
配置成为一个隔离 vlan 后, ARP 广播报文仅会传向混杂端口, 而不会广播到整个 vlan 中。在实现 pvlan
功能中
在很多低端交换机上仅支持隔离端口特性, 在高端的 6500/4500 上可以支持完整的 pvlan 属性。
另需要支持 pvlan, 需要将 vtp 调到透明模式,
配置 pvlan 的方法
1.
首先定义主 vlan
Router(config)#vlan vlan-id
Router(config-vlan)#private-vlan primary
Router(config-vlan)#exit
2.
设置辅助 vlan
在 primary-vlan 中, 绑定 aux-vlan
Router(config)#vlan primary-vlan-id
Router(config-vlan)#private-vlan association aux-vlan , aux1-vlan
需要移出或者继续添加 vlan 可以使用
Router(config-vlan)#private-vlan association {add | remove} aux2-vlan
3.
进入主 vlan 的接口, 将 aux-vlan 映射到这个接口
Router(config)#interface vlan primary-vlan-id
Router(config-if)#private-vlan mapping aux-vlan , aux1-vlan
P a g e | 463
CCIE R/S & Service Provider Exam Certification Guide
Router(config-if)#private-vlan mapping {add | remove} aux2-vlan
4. 接口上配置端口类型
Router(config)#interfacet type slot/port
Router(config-if)#switchport mode private-vlan {host | promiscuous}
5. 接口上映射 pvlan
Router(config-if)#switchport mode private-vlan {host | promiscuous}
Router(config-if)#switchport private-vlan host-association primary-vlan-id
aux-vlan
6. 混杂端口还需要配置端口到 pVlan 的映射
Router(config-if)#interface primary-vlan-id
Router(config-if)#switchport private-vlan mapping primary-vlan-id
20.2.5 Vlan ACL配置
Vlan ACL 又称为 VLAN 访问映射表,应用于 VLAN 中的所有通信流。VLAN ACL 支持基于 EtherType
和 MAC 地址的过滤。与基于 CISCO IOS 的路由映射表一样,VLAN ACL 中条目的顺序并非无关紧要。
目前, Catalyst 3550/6500 系列交换机支持多种 VLAN ACL 操作:转发,丢弃,重定向。一般用于
对同一个 vlan 中不同主机的控制
Vlan ACL 又称为 VLAN maps。通过对桥接和陆游的分组都可以过滤,VACL 可以过滤同一个 vlan 设备
的分组,VACL 是一个 2 层的功能,所以一般不需要 EMI 的 IOS 支持。
P a g e | 464
CCIE R/S & Service Provider Exam Certification Guide
配置步骤:
1. 指定 VLAN 访问映射表的名称和序列号:
vlan access-map map_name [seq#]
2. 配置 MATCH 子句
match ip address
match macaddress
3. 配置 ACL 操作
action {drop | forward }
4. 将 VLAN 访问映射表应用于 VLAN
vlan filter map_map vlan_list list
配置实例:
Conf
t
access-list 111 permit tcp any any eq ftp
vlan access-map kaka 100
match ip address 100
action drop
exit
vlan filter kaka vlan-list 1
在配置 VACL 的同时,可以在一个 vlan 的 3 层 SVI 接口上同时启用标准 ACL 或者扩展 ACL,但是可能
存在冲突,show fm 命令用于检查硬件使用的接口或者 vlan 配置的 vlan 标记号。
Switch#show fm vlan 1
COnfilicts exist with layer 2 access group
Input VLAN Label:1
Output VLAN Lable:0(default)
Priority:normal
Switch#show fm vlan-label 1
Unloaded due to merge failure or lack of space:
InputAccessGroup
Merge Fail:input
Input Feature:
Interfaces or VLANs:Vl1
Priority: normal
Vlan Map:(none)
Access Group:131, 6788 VMRs
20.3
动态VLAN
动态的 VLAN 形成很简单,由端口自己决定它属于哪个 VLAN 时,就形成了动态的 VLAN。不过,这
不是 Terminator,也不是变成非小说文学的 TheForbinProject,它是一个简单的映射,这个映射取决于工
程师创建的数据库。分配给动态 VLAN 的端口被激活后,交换机就缓存初始帧的源 MAC 地址。随后,交
换机便向一个称为 VMPS(VLAN 管理策略服务器)的外部服务器发出请求,VMPS 中包含一个文本文件,文
件中存有进行 VLAN 映射的 MAC 地址。交换机对这个文件进行下载,然后对文件中的 MAC 地址进行校验。
P a g e | 465
CCIE R/S & Service Provider Exam Certification Guide
如果在文件列表中找到 MAC 地址,交换机就将端口分配给列表中的 VLAN。如果列表中没有 MAC 地址,
交换机就将端口分配给默认的 VLAN(假设已经定义默认了 VLAN)。如果在列表中没有 MAC 地址,而且也
没有定义默认的 VLAN,端口不会被激活。这是维护网络安全一种非常好的的方法。
20.3.1 VMPS操作
当使用 VMPS 的时候,要从 TFTP 服务器上下载一个 MAC 地址到 vlan 映射的数据库到 VMPS 服务器(实
质为一台 Catylsyt 交换机) 。此后 VMPS 就可以接受用户请求了。
如果所分配的 vlan 被限制在一组端口范围内,VMPS 确认发起请求的端口是否在这个组内,并作如
下响应:
1.
如果 vlan 在该端口是允许的,VMPS 向客户返回 vlan 的名字
2.
如果 vlan 在该端口是不允许的,VMPS 不处于安全模式,这时拒绝接入响应
3.
如果此 vlan 在该端口是不允许的,并且 VMPS 处于安全模式,VMPS 发出端口关闭响应
如果数据库内的 vlan 与该端口上当前的 vlan 不匹配,并且该端口上有活动主机,VMPS 会视 VMPS
的安全模式发出拒绝或端口关闭响应。如果交换机从 VMPS 服务器端接收到拒绝接入响应,将会阻止由
该 mac 地址发往此端口或者从这个端口来的童心。交换机将继续监控发往该端口的德分组,并在发现新
的地址时向 VMPS 或者从这个端口来的通信。如果交换机从 VMPS 服务器接收到端口关闭响应,将会立刻
关闭端口,并只能手工重新启用。
可以配置一个 fallback vlan 的名字,如果配置连接到网络上并且其 mac 地址不再数据库中,VMPS 会
将 fallback vlan 的名字发给客户端,如果不配置 fallback vlan,mac 地址也不在数据库中,VMPS 将会发出
拒绝响应,如果 VMPS 处于安全模式,将会关闭端口。
出于安全的原因,可以在配置表中显式的天价条目,拒绝待定 mac 地址的访问,具体方法是将此
mac 地址对应的 vlan 名字指定为关键字-NONE-,这样,VMPS 就会发出拒绝接入或端口关闭响应。
交换机上的动态端口仅属于一个 vlan,当链路 up 后,交换机只能在 VMPS 服务器提供 vlan 分配后
P a g e | 466
CCIE R/S & Service Provider Exam Certification Guide
才会转发来自或者发往此端口的通信,VMPS 客户端从连接到动态端口的新主机发送的首个分组中获得源
mac,并尝试通过发往 VMPS 服务器的 VQP 请求,在 VMPS 数据库中找到与之匹配的 vlan。
Cisco Catalyst 2950 和 3550 允许多台同属于一个 vlan 的主机连接在一个动态端口上,如果活动主机
大于 20 台,VMPS 将把接口关闭,如果动态端口上的连接中断,断口返回隔离状态并不属于一个 vlan。
对连接 doa 该端口的任何主机,在将端口分配给某个 vlan 之前,要通过 VMPS 重新检查。
20.3.2 VMPS数据库配置
将 VMPS 客户配置为动态时,有一些限制。在位动态端口指定 vlan 成员身份时采用下面原则:
1. 将端口配置为动态之前,必须先配置 VMPS
2. VMPS 客户端必须与 VMPS 服务器处于同一个 VTP 管理域中
3. VMPS 客户端必须与 VMPS 服务器同属于一个管理 vlan
4. 如果将端口配置为动态,会自动在该端口启动 STP 的 PortFast 功能
5. 如果将一个端口由静态配置为同一个 vlan 中的动态端口,端口会立即连接到此 vlan 上,
直到 vmps 为动态端口上特定的主机的合法性检查数据库 。
6. 静态端口不可以改变为动态端口
7. 静态的 trunk 不可以改变为动态端口
8. EtherChannel 内的物理端口不能被配置为动态端口
9. 如果有过多的活动主机连接到端口中,vmps 会关闭动态端口
VMPS 数据库配置文件必须放置在 TFP 服务器上,VMPS 数据库配置文件是一个 ASCII 码的文本文件。
如下是一个标准的 VMPS 数据库配置文件
!VMPS File format, version 1.1
! Always begin the configuration file with
! the word "VMPS"
!
!vmps domain <domain-name>
! The VMPS domain must be defined.
!vmps mode {open | secure}
! The default mode is open.
!vmps fallback <vlan-name>
!vmps no-domain-req { allow | deny }
!
! The default value is allow.
vmps domain cisco
vmps mode secure
vmps fallback default
vmps no-domain-req deny
!
!
!MAC Addresses
!
vmps-mac-addrs
!
! address <addr> vlan-name <vlan_name>
!
address 5254.AB3B.FC20 vlan-name cisco
address 000A.EB22.057F vlan-name cisco
address 0010.7b7f.790e vlan-name aaa
address 00-E0-4C-72-2C-C1 vlan-name bbb
address 1223.5678.9abc vlan-name ddd
address fedc.ba98.7654 vlan-name --NONE-address fedc.ba23.1245 vlan-name ccc
!
!Port Groups
!
!vmps-port-group <group-name>
! device <device-id> { port <port-name> |
all-ports }
!
vmps-port-group kaka
device 192.168.10.199 port 2/1
device 192.168.10.199 port 2/2
device 192.168.10.199 port 2/3
device 192.168.10.198 port Fa0/5
device 192.168.10.198 port Fa0/6
device 192.168.10.198 port Fa0/7
device 192.168.10.198 port Fa0/8
vmps-port-group "ciscocrdc"
device 192.168.10.198 port Fa0/1
device 192.168.10.198 port Fa0/2
device 192.168.10.198 port Fa0/3
device 192.168.10.198 port Fa0/4
!
!
!VLAN groups
!
!vmps-vlan-group <group-name>
! vlan-name <vlan-name>
!
P a g e | 467
CCIE R/S & Service Provider Exam Certification Guide
vmps-vlan-group Engineering
vlan-name cisco
vlan-name aaa
!
!
!VLAN port Policies
!
!vmps-port-policies {vlan-name <vlan_name> |
vlan-group <group-name> }
! { port-group <group-name> | device <device-id>
port <port-name> }
!
vmps-port-policies vlan-group Engineering
port-group kaka
vmps-port-policies vlan-name bbb
device 192.168.10.198 port Fa0/9
vmps-port-policies vlan-name Purple
device 192.168.10.198 port Fa0/10
port-group "ciscocrdc"
注意,在配置 vmps 数据库时,由于 vmps 解析器是 line-based 的,所以配置时要以 VMPS 开头,防
止 vmps 服务器错误的读取其他类型的配置文件..
20.3.3 VMPS 服务器配置
通常,VMPS 服务器仅在 Catalyst 5500/6500 等高端交换机上支持,配置方式如下
set vmps downloadmethod rcp | tftp [username]
set vmps downloadserver ip_addr [filename]
set vmps state enable
20.3.4 OpenVMPSd
同时可以采用 VMPS for Linux 实现 VMPS 服务器。
1. 访问 http://sourceforge.net/projects/vmps 下载 Open VMPSd
2. 在 linux 中 tar –vzxf vmpsd-1.3.tar.gz
解压文件
3. ./configuae 配置
4. Make
5. Make install
6. 配置 vmps 数据库
7. 运行 vmpsd ( vmpsd
–d –a ip-addr
–l 0x0004 –f
vmps.db
8. 如果需要启动 linux 服务器时加载 vmps 可以在 /etc/rc.local 中加入 vmpsd
其他 VMPSD 的配置信息如下
SYNOPSIS
vpmsd [-d] [-a address] [-f file] [-l level] [-p port]
OPTIONS
-a bind address
IP address to bind vmpsd to. Requests from clients must come in on this address.
-d
Causes vmpsd to stay in the foreground instead of detaching as a daemon. Also logs
to stderr.
-f config file
Specify the configuration file that vmpsd will use. The program will fail without this
option, as currently there is no default set.
-l log level
Set the log level vmpsd will use. Options are:
·
·
·
·
·
·
P a g e | 468
0x0100 -- fatal errors only
0x0200 -- informational messages
0x0400 -- print warnings
0x0800 -- print debug messages; very verbose
0x0001 -- system
0x0002 -- parser
CCIE R/S & Service Provider Exam Certification Guide
· 0x0004 – vqp
-p listener port
Port vmpsd will listen on. Defaults to 1589.
FILES
vmps.db
20.3.5 VMPS 客户端配置
Switch(config)#vmps server ipaddress
primary
Switch(config)#vmps server ipaddress
//可以设置 3 个备份 vmps 服务器
Switch(config)#interface fa0/1
Switch(config-if)# switchport mode access
Switch(config-if)# switchport access vlan dynamic
20.3.6 VMPS 检查
vmps reconfirm minutes
重新配置时间间隔
vmps retry number-of-retries
重试次数
clear vmps server
清除 vmps 服务器.
clear vmps statistics
清除 vmps 统计
show vmps
察看 vmps 状态
show vmps mac
show vmps statistics
show vmps vlan vlan-name
show vmps vlanports vlan-name
20.4 Trunking
汇聚链接(Trunk Link)指的是能够转发多个不同 VLAN 的通信的端口。如上图。
汇聚链路上流通的数据帧,都被附加了用于识别分属于哪个 VLAN 的特殊信息。通过汇聚链路
时附加的 VLAN 识别信息,有可能支持标准的“IEEE 802.1Q”协议,也可能是 Cisco 产品独有的“ISL(Inter
Switch Link)”。如果交换机支持这些规格,那么用户就能够高效率地构筑横跨多台交换机的 VLAN。
另外,汇聚链路上流通着多个 VLAN 的数据,自然负载较重。因此,在设定汇聚链接时,有一
个前提就是必须支持 100Mbps 以上的传输速度。
另外,默认条件下,汇聚链接会转发交换机上存在的所有 VLAN 的数据。换一个角度看,可以
P a g e | 469
CCIE R/S & Service Provider Exam Certification Guide
认为汇聚链接(端口)同时属于交换机上所有的 VLAN。由于实际应用中很可能并不需要转发所有 VLAN
的数据,因此为了减轻交换机的负载、也为了减少对带宽的浪费,我们可以通过用户设定限制能够
经由汇聚链路互联的 VLAN。
20.4.1 Trunk类型
Cisco 支持多种 Trunk 方式(即对 VLAN 帧标识):
1.
ISL――Cisco 专有封装协议,也是默认的。前面加 26 字节,后面加 4 字节 FCS。
2.
IEEE 802.1Q――IEEE 标准方法,在帧头写入 VLAN 信息,后面只增加 4 字节 FCS。
3.
802.10――FDDI 上传输 VLAN 信息的 Cisco 专有协议,把 VLAN 信息写入 SAID 安全关
联标识符部分
4.
LANE――基于 ATM 上传输 VLAN 信息的一种 IEEE 标准方法。
帧标记和封装方法
表示方法
ISL
802.1Q
802.10
LANE
封装
是
否
否
否
标记(插入帧内)
否
是
否
否
介质
以太网
以太网
FDDI
ATM
帧长度
1518/1548
1518/1522
20.4.2 ISL
ISL,是 Cisco 产品支持的一种与 IEEE802.1Q 类似的、用于在汇聚链路上附加 VLAN 信息的协议。
使用 ISL 后,每个数据帧头部都会被附加 26 字节的“ISL 包头(ISL Header)”,并且在帧尾带上通过
对包括 ISL 包头在内的整个数据帧进行计算后得到的 4 字节 CRC 值。换而言之,就是总共增加了 30 字
节的信息。在使用 ISL 的环境下,当数据帧离开汇聚链路时,只要简单地去除 ISL 包头和新 CRC 就可以
了。由于原先的数据帧及其 CRC 都被完整保留,因此无需重新计算 CRC。
ISL 有如用 ISL 包头和新 CRC 将原数据帧整个包裹起来,因此也被称为“封装型 VLAN(Encapsulated
VLAN)”。并且由于 ISL 是 Cisco 独有的协议,因此只能用于 Cisco 网络设备之间的互联。
20.4.3 IEEE 802.1Q
IEEE802.1Q,俗称“Dot One Q”,是经过 IEEE 认证的对数据帧附加 VLAN 识别信息的协议。
IEEE802.1Q 所附加的 VLAN 识别信息,位于数据帧中“发送源 MAC 地址”与“类别域(Type Field)”
之间。具体内容为 2 字节的 TPID 和 2 字节的 TCI,共计 4 字节。
P a g e | 470
CCIE R/S & Service Provider Exam Certification Guide
在数据帧中添加了 4 字节的内容,那么 CRC 值自然也会有所变化。这时数据帧上的 CRC 是插入
TPID、TCI 后,对包括它们在内的整个数据帧重新计算后所得的值。
而当数据帧离开汇聚链路时,TPID 和 TCI 会被去除,这时还会进行一次 CRC 的重新计算。
TPID 的值,固定为 0x8100。交换机通过 TPID,来确定数据帧内附加了基于 IEEE802.1Q 的 VLAN
信息。而实质上的 VLAN ID,是 TCI 中的 12 位元。由于总共有 12 位,因此最多可供识别 4096 个 VLAN。
基于 IEEE802.1Q 附加的 VLAN 信息,就像在传递物品时附加的标签。因此,它也被称作“标签型
VLAN(Tagging VLAN)”。
Nativevlan
802.1Q-trunk 为转发未被标记的 frame 而定义了 native VLAN。
交换机能够从未被标记的 trunk
上的 nativeVLAN 转发 2 层 frame,接受方将把所有的未标记 frame 转发到 nativeVLAN 中 。
如果是 ISL,则没被封装的 frame 将会丢弃,包括 nativeVLAN,所有的数据将被封装
Baby Giant Frame
原始以太网帧大小不超过 1518 字节,如果一个最大长度的帧是通过 802.1Q 来标记得,那么
这个帧变成 1522 字节,这种大于 1500 小于 2000 的帧被成为小巨人帧。
20.4.4 IEEE 802.10
IEEE802.10 标准定义两种策略,在城域网(MAN)或广域网(WAN)骨干上桥连 VLAN,以支持 VLAN
之间的通信。这些策略为交换和路由提供 VLAN 支持。IEEE802.10 标准,在源 MAC 地址和离开交换机
之前的 FDDI 帧的链路服务访问点(LinkServiceAccessPoint,LSAP)字段之间,实现一个 VLANID。该 VLANID
是报文头中的 4 个字节。接收交换机检查头,并检测交换机内是否存在 VLANID。如果存在,它删除
IEEE802.10 头,将帧转发到匹配 VLANID 的接口。每个端用户接口只允许一个 VLANID。连接到 MAN 或
WAN FDDI 网络的接口被认为是 VLAN 骨干(trunk),支持多个 VLANID。
P a g e | 471
CCIE R/S & Service Provider Exam Certification Guide
20.4.5 LANE
LANE 的功能是在 ATM 网络上仿真 LAN,LANE 协议定义了仿真 IEEE 802.3 以太网或 802.5 令牌环
网的机制。LANE 协议定义了与现有 LAN 给网络层提供的服务相同的接口,在 ATM 网络中传输的数据
以相应的 LAN MAC 分组格式封装。
ATM LANE 是专为 LAN 接入而设置的,意即 ATM 的局域网仿真(LAN Emulation)。对传统 IP 终端而
言,ATM 网络就像是一个局域网,其中包含若干由路由器连接起来的 IP 子网。
A.
LANE 支持多种协议(MPOA:Multi-Protocol over ATM)传送,允许不同的 LANE 之间的互
联;
B.
充分支持 LAN 中的无连接特性;
C.
支持单播、多播及广播传送;
D.
基于客户端/服务器模式(Client/Server),一个 LANE 服务器可对多个 LANE 客户端。
每个 ELAN(Emulated LAN)由一组 LANE 客户(LEC)和 LANE 服务构成。LEC 还可以是作为 ATM 主机代
理的网桥和路由器。LE 服务由三个不同的功能实体构成:LAN 仿真配置服务器(LECS)、LAN 服务器(LES)
和 BUS,这三个服务实体可以各自存在,但通常位于同一设备,例如:LES 可以位于 ATM 交换机、路
由器、网桥和工作站。ATM LANE 的构成及相互关系如下
(1) LANE 客户端(LEC:LANE Client)
在 ATM 终端系统上仿真以太网或令牌环网结点,至少得绑定一个 MAC 地址,其功能是封
装 IP 数据报交给 ATM 网传送,同时转译 ATM 分组,重新组成 IP 数据报。
(2) LANE 服务器(LES:LANE Server)
提供 MAC 地址得注册和解析手段
响应 LEC 的上述请求
P a g e | 472
CCIE R/S & Service Provider Exam Certification Guide
一个 LANE 中只有一个 LES
(3) LANE 广播和未知服务器(BUS:Broadcast & Unknown Server)
仿真传统 LAN 的广播机制
在 LEC 间直接链路建立前单播 LEC 数据
一个 LANE 中只有一个 BUS
(4) LANE 配置服务器(LECS:LANE Configuration Server)
维护一个 ATM 网络中多个 LANE 内的 LEC、LES 和 BUS 的配置信息
为每个 LEC 提供其所属 LES 的 ATM 地址
因为 LANE 提供与现有 MAC 协议给网络层提供的驱动相同的服务接口,不需要改变该驱动,这将加
速 ATM 的发展和应用。 但是,LANE 的功能是使 ATM 的特性对高层协议透明,因此它使高层协议不能
利用 ATM 固有的优点,尤其是其服务质量保证。尽管 LANE 提供在 ATM 网络子网内桥接的有效方式,
但子网间的业务仍需要通过路由器转发,因此,ATM 路由器很可能成为瓶颈。
20.4.6 配置Trunk
首先,将端口模式改为 Trunk,
Switch(config-if)#switchport mode trunk
Switch(config-if)#switchport trunk ?
allowed
Set allowed VLAN characteristics when interface is in trunking
mode
encapsulation
Set trunking encapsulation when interface is in trunking mode
native
Set trunking native characteristics when interface is in
trunking mode
pruning
Set pruning VLAN characteristics when interface is in trunking
mode
在 3550 等能够支持 ISL 和 dot1q 两种封装的机器上,需要先设置封装模式
如下所示,先配置 mode trunk
3550-Switch(config-if)#switchport mode trunk
Command rejected: An interface whose trunk encapsulation is "Auto" can not be configured to
"trunk" mode.
封装类型可以设置为 ISL,dot1q 或者自动协商 3 种模式
Switch(config-if)#switchport trunk encapsulation ?
dot1q
Interface uses only 802.1q trunking encapsulation when trunking
isl
Interface uses only ISL trunking encapsulation when trunking
negotiate Device will negotiate trunking encapsulation with peer on
interface
默认情况下 Trunk 允许所有的 vlan 通过,此时可以通过
Switch(config-if)# switchport trunk allowed vlan {vlan-list | all }
Switch(config-if)# switchport trunk allowed vlan {add | except | remove} vlan-list
Vlan 的允许通过通常用在一些特殊的情况,例
如,在右图中,交换机间有 2 条链路,要做基于 vlan
通过限制的负载均衡,在一条链路上承载 vlan 2,3
的流量,另一条链路上承载 vlan 4,5 的流量。
P a g e | 473
CCIE R/S & Service Provider Exam Certification Guide
Switch(config)# int fa0/1
Switch(config-if)# switchport trunk allowed vlan 2-3
Switch(config-if)# switchport trunk except vlan 4-5
Switch(config)# int fa0/2
Switch(config-if)# switchport trunk allowed vlan 4-5
Switch(config-if)# switchport trunk except vlan 2-3
20.5 DTP动态中继协议
DTP (Dynamic Trunking Protocol), 用来动态协商端口类型为 Access 或者 Trunk。要完成自动协商,2 端口
必须在同一个 VTP domain 中。每 30s 发送一次 DTP 的 frame. 该协议仅在交换机间协商。
20.5.1 配置DTP
3550 和 2950 支持的端口模式如下
3550-Switch(config-if)#switchport mode ?
access
Set trunking mode to ACCESS unconditionally
dot1q-tunnel Set trunking mode to DOT1Q TUNNEL unconditionally
dynamic
Set trunking mode to dynamically negotiate access or trunk mode
trunk
Set trunking mode to TRUNK unconditionally
2950-Switch(config-if)#switchport mo ?
access Set trunking mode to ACCESS unconditionally
dynamic Set trunking mode to dynamically negotiate access or trunk mode
trunk
Set trunking mode to TRUNK unconditionally
端口模式可以配置为如下 5 种模式
将接口设定为永久非中继模式,接口产生 DTP Frame,与邻接端口
Switchport mode access
协商,将链路设置为非中继端口,即使相邻端口不愿意,该接口
依旧设置为非中继端口
主动向对方发 DTP 包,以确定是否是干线或是接入端口,使得接
Switchport mode dynamic desirable
口 主 动 尝 试 将 链 路 转 换 为 中 继 链 路 。 如 果 对 端 设 置 为 trunk
desirable 或者 auto 模式,此接口将成为中继接口,该方式为交换
机默认工作方式。
Switchport mode dynamic auto
Switchport mode trunk
Switchport nonegotiate
不主动向对方发 DTP 包,对方发送过来会回应。如果相邻接口被
设置为 trunk 或 desirable,此接口转换为中继端口。否则为非中继。
将接口设置为永久中继模式,即使相邻接端口不同意,也不会改
变其中继模式
阻止产生 DTP frame,只能将交换机处于 access/trunk 模式下时使
用该命令,
例如,在动态模式下关闭协商,系统会提示冲突
2950-Switch(config-if)#switchport nonegotiate
Command rejected: Conflict between 'nonegotiate' and 'dynamic' status.
P a g e | 474
CCIE R/S & Service Provider Exam Certification Guide
20.5.2 DTP组合
由于端口可以支持 5 种模式,可以做出如下的一个排列组合分类,以便找到 DTP 的协商结果
20.5.3 DTP检验
2950-Switch#show interface switchport
Name: Fa0/1
Switchport: Enabled
Administrative Mode: dynamic desirable
Operational Mode: static access
Administrative Trunking Encapsulation: dot1q
Operational Trunking Encapsulation: native
Negotiation of Trunking: On
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 1 (default)
Voice VLAN: none
Administrative private-vlan host-association: none
Administrative private-vlan mapping: none
Operational private-vlan: none
Trunking VLANs Enabled: ALL
Pruning VLANs Enabled: 2-1001
Capture Mode Disabled
Capture VLANs Allowed: ALL
Protected: false
2950-Switch#show interface trunk
Port
Mode
Encapsulation Status
Fa0/11
desirable
802.1q
trunking
Fa0/12
desirable
802.1q
trunking
Port
Fa0/11
Fa0/12
Port
Fa0/11
Fa0/12
Port
Fa0/11
Fa0/12
Native vlan
1
1
Vlans allowed on trunk
1-4094
1-4094
Vlans allowed and active in management domain
1,4,11-14,24
1,4,11-14,24
Vlans in spanning tree forwarding state and not pruned
1,4,11-14,24
1,4,11-14,24
P a g e | 475
CCIE R/S & Service Provider Exam Certification Guide
20.6 VTP VLAN中继协议
VTP 的作用是流量在穿越整个网络的过程中维持 vlan 信息不变。VTP 是一种消息协议,通过使用 2 层中
继 Frame 在整个网络中负责管理 vlan 的添加,删除和重命名。通过一台工作在 VTP 服务器模式下的中央交
换机完成这些任务。VTP 负责在 vlan 域内同步 vlan 信息,这样就不需要在每台交换机配置 vlan 信息了。
20.6.1 VTP特性
VTP 能够减少在配置改变时可能引起的配置不一致问题的可能性。这种不一致可能会引起安全问题,因
为 vlan 重名会引起交叉连接问题,如果由一种 lan 类型映射到另一种烈性,比如 ATM LANE ELAN 或者 FDDI
802.10 vlan,则 vlan 内部可能跟本无法联通,VTP 提供一种映射机制,支持部署在混合介质的网络中进行
无缝的中继链路。
VTP 具有如下优点
1. Vlan 配置在整个网络中不变
2. 在混合介质的网络中允许一个 vlan 被中继的映射机制
3. 对 vlan 的精确跟踪和监控
4. 全网范围内增加 vlan 的动态报告
5. 支持添加新 vlan 的即插即用配置
当然,VTP 也有一些缺点,通常和 STP 有关,最大的危险在于桥接环路会跨越整个园区网进行传播,因
为默认情况下,cisco 交换机采用 PVST+的生成树协议,每一个 vlan 维持一个 Spanning-Tree 实例,而 VTP 又
在整个园区 LAN 上传播 VLAN 信息,VTP 就更有可能产生桥接环路。网络设计者和管理员必须在 VTP 带来
的易于管理性和可能会产生的不稳定的 STP 域这两者间作出平衡。
在交换机上创建可以被 VTP 传播出去的 vlan 之前,先要建立 VTP 域,网络的一个 VTP 域是由一组 VTP
域名字相同比国内通过中继相互连接的交换机,并且在同一个域中所有交换机共享 vlan 信息,并且交换机
仅能加入到唯一一个 VTP 管理域中。 每台 Catalyst 交换机使用 VTP 在中继端口发布下列信息:
1. 管理域
2. 配置修改数目
3. 已知 vlan 及其参数
VTP 的实质,是同步 vlan.dat 文件
20.6.2 VTP报文格式
VTP 报文要从 Trunk 中传输,所以
一般 VTP 报文会封装在 ISL 或者 dot1q 中,以 ISL 为例,VTP 报文如下格式:
其中 VTP Header 包含如下消息
1. VTP 协议版本
ver 1.2.3
2. VTP 报文类型 标示 汇总通告,子网通告,通告请求,VTP 加入消息
3. 管理域名长度
4. 管理域名
三种形式的 vtp 通告:
Summary advertisements
vtp 服务器发送,每隔 300s。
Subset advertisements
vtp 服务器发送。如 vlan 增删、vlan 的激活和挂起。
Advertisement requests from clients
vtp 客户发送,vtp 服务器回复 Summary advertisements
和 Subset advertisements。
P a g e | 476
CCIE R/S & Service Provider Exam Certification Guide
两种原因促使 vtp 客户要发送请求.一种是从 Subset advertisements 了解到 vtp 状态发生变化;另一种
是从 Summary advertisements 获悉有更高的 vtp version number
Summary advertisements
默认情况下,VTP 服务器端都会每隔 300s 发送一次 vtp summary 消息,如下格式:
消息帧通过抓包分析可以看出,目的 mac 和 CDP 协议相同,
都是 01-00-cc-cc-cc-cc.仅 SNAP 值不同, CDP 使用 0x2000, 而
VTP 协议采用 0x2003。
此后有个通告消息的条数, VTP V2 上默认条目数为 0~255。
然后就是 Domain 的长度和 domain 名称。以及 revision
的编号。
在整个消息的末尾有个 MD5 Digest, 用于效验整个报文,
在 VTP 安全模式中, 口令经过 MD5 这个单向 Hash 算法后就
保存在这个域中, 并当收到消息后, 接收交换机口令进行
MD5 算法后的值进行效验。 正确则接收消息,
Subset advertisements
Subset 通告的报文格式如左图, 内部含有
创建删除vlan消息
Vlan挂起或者激活消息
更改vlan名字消息
更改vlan MTU消息
Subset通告消息中,VLAN-into Field格式如下,其中包括了MTU
长度,VLAN类型,VLAN名称等, 同时针对ISL /802.10等不同的
Trunk封装协议,加入了不同的字段.
Advertisement requests
右图是Advertisement回复的报文格式, 该
报文有6个字段,其中Start-Value字段比较特殊,
当一台Catalyst交换机未收到Subnet通告,或
Subnet通告在传输过程中丢失的时候,会使用
这个字段,要求重传.,其值为subnet中的Seq号,
默认为第一个未收到的Seq号,如果为0,表示
全部重传
P a g e | 477
CCIE R/S & Service Provider Exam Certification Guide
20.6.3 VTP模式
VTP 有 3 种模式
Server 服务器模式
缺省模式, 可建立、修改和删除 VLAN, 向同一域中的交换机通告它的 VLAN 配置,
并接受从 Trunk 链路上收到的通告与其它交换机进行 VLAN 配置的同步。VTP 服务器还
可以确定其他参数, 例如 VTP 版本号和整个 VTP 域中的 VTP 裁剪, VTP 信息放置在
NVRAM 中,
Client 客户端模式
行为同服务器模式, 但不能建立、改变或删除 VLAN;倾听 vlan 信息, 使得自己的
vlan 配置信息保持与 VTP 服务器同步;也可以把 vlan 信息转发给其它交换机。
Transparent 透明模式
不参与 VTP。在 VTP v2 中, 配置为透明模式的交换机将在 Trunk 端口上转发 VTP
信息以保证其他交换机接收到更新信息, 但这些交换机将不修改自己的数据库, 也不
发送指示 VLAN 状态发生变化的更新信息。VTP v1 中, 透明模式的交换机也不转发 vtp
信息到其它交换机。需要注意的是透明模式下的交换机可以在本地创建 vlan, 但这些
vlan 的变化信息不会扩散到其它交换机。
Off 关闭模式
其实质类似于透明模式, 但完全丢弃接收的 VTP 报文, 并不参与转发 VTP 报文
VTP 在管理域内还可以设置安全模式, 默认情况下为非安全模式, 相互交换 VTP 信息不需要口令验证,
但可以添加口令, 此后 VTP 域自动变成安全模式。
交换机要能够检测到通知增加 vlan 的通告, 必须要配置交换机端口为中继模式, 使之能够接收新定义的
vlan id, 仿真 lan 名字或者 802.10SAID。例如下图
C5000-3 传输关于增加和删除 C5000-1 C5000-2 的 VTP 数据库条目。配置数据库的修订号(revision number)
加 1, 一个更大的配置修订号表示在传输的 vlan 信息比存储的数据库信息更新, 则自动用新收到的信息覆盖
P a g e | 478
CCIE R/S & Service Provider Exam Certification Guide
旧的本机信息。该编号取值从 0 开始, 到 4 294 927 295 后, 循环从 0 开始, 要将交换机的配置修订号重置为
0, 需要禁用中继, 改变 VTP 域的名称, 再改回原来的名称, 并再次启用中继。
使用 VTP, 必须给每个交换机指定一个 VTP 域名, VTP 域名字是大小写敏感的。VTP 域的要求如下:
1. 不管是学习道德还是配置的, 域内每台交换机都必须使用相同的 VTP 域名
2. Catalyst 交换机必须是相邻的, 意味着 VTP 内所有交换机组成一棵相互连接的树, 每台交换机
都通过这颗树和域中的其他交换机互连
3. 所有的 Catalyst 交换机之间必须使用 Trunk
20.6.4 VTP版本
Cisco Catalyst 系列交换机支持 3 种版本的 VTP。
版本
Version 1
特性
最基本的 VTP 版本,不支持令牌环网
提供了 Toking Ring 的支持,
可以对不能识别的 TLV(Type-Length-Value, 类型长度值)的支持
支持与版本无关的透明模式,VTP Version 1 中,一个透明模式的交换
Version 2
机检查 VTP 消息中的域名和版本, 并且只有在当版本和域名与本机
相匹配时才转发, 由于 SuperVisor 仅支持一个 VTP 域, 所以 Ver 2 种,
透明模式不检查版本
在版本 2 中,仅当用户通过 CLI 或者 SNMP 输入信息才执行 vlan 一致
性检查
8.1 以上的 CatOS 开始支持 VTP Version 3, IOS 目前还不支持.
支持扩展 Vlan(1025~4094)
改进的服务器认证
增强的保护机制,防止错误消息的进入
能够和版本 1 以及版本 2 相互作用
Version 3
能够以每端口为基础而配置 VTP
支持创建和通告 pVLAN
增加主/辅助服务器
数据库一致性
口令可设置为 Secret/hidden 模式,其中 Hidden 模式将不会把口
令放入 text 的配置文件中
Version 3 模式下, 主服务器是 VTP 域中的唯一服务器,即使没有 Active 的主服务器,但因为辅
助服务器可以在重新启动后确保配置的持续性,所以 VTP 域也可以运转.当交换机重新启动,或者在
活跃和冗余 Supervisor Engine 之间发生高可用性切换,或者辅助服务器发生强制性接管时,VTP
version3 依旧可以运行.
在服务器模式中,所有交换机被配置为辅助服务器,辅助服务器不能修改配置,但会将 VTP 配置
保存到 NVRAM 中,可以通过在辅助服务器上使用 takeover 命令,将其转为主服务器
Console>(enable) set vtp primary
This switch is becoming primary server for feature vlan.
Enter VTP password:
No conflicting VTP 3 devices found.
Do you want to continue (y/n) [n]? y
P a g e | 479
CCIE R/S & Service Provider Exam Certification Guide
Console>(enable) show vtp domain
Version : running VTP3
Domain Name : server Password : configured (hidden)
Notifications: disabled Switch ID : 00d0.004c.1800
Feature
Mode
Revision Primary ID
Primary Description
-------------- -------------- ----------- -------------- --------------------------------------------------VLAN
Primary Server 1
00d0.004c.1800
UNKNOWN
Off
Pruning : disabled
VLANs prune eligible: 2-1000
Console>(enable)
20.6.5 VTP裁剪
VTP pruning 技术: 由于主干线路承载了所有 VLAN 的流量,因此,有些流量可能不必广播到在无需运载
它们的链路上,VTP 裁剪使用 VLAN 通告来决定什么时候
该主干连接不需要泛洪式的传输,缺省的情况下,主干
连接运载此 VTP 管理域中的所有 VLAN 流量,而在实际
工作中,有些交换机交不必将本地端口配置到每个
VLAN 中,这样启用 VTP 配置就成为必要。
可以看出,Switch 3 不属于 Red VLAN,VTP 信息不会经
过 Switch 2 到达 Switch 3 上去要注意的是,VTP pruning
只能工作在 VTP server mode
20.6.6 配置VTP
VTP 的默认配置
VTP Version 1&2
P a g e | 480
Feature
Default Value
VTP domain name
Null
VTP mode
Server
VTP version 2 enable state
Version 1 is enabled (version 2 is disabled)
VTP password
None
VTP pruning
Disabled
CCIE R/S & Service Provider Exam Certification Guide
VTP Version 3
Feature
Default Value
VTP domain name
Null
VTP mode
Server
VTP version 3 enable state
Version 1 is enabled
VTP password
None
VTP pruning
Disabled
在 VTP domain 中添加交换机
在一个已经建好的 VTP 域中加入一台新的交换机需要注意
1.
删除交换机上 vlan.dat 和 startup-config,防止残留 vlan 或者更大的 revision number 带
2.
来的问题
delete vlan.dat
erase startup-config
确定交换机的 VTP 工作模式,默认为 Server 模式,需确认后再进行连接,如果需要 Server
模式,则需要确认 VTP 的 revision number 为 0
3.
强烈建议将 VTP 域设置为安全模式, 并通过口令验证
Vtp password passwd {hidden | secret}
配置 VTP 服务器
VTP Configuration in global configuration mode:
Switch#config terminal
Switch(config)#vtp version 2
Switch(config)#vtp mode server
Switch(config)#vtp domain cisco
Switch(config)#vtp password mypassword
Switch(config)#end
VTP Configuration in VLAN configuration mode:
Switch#vlan database
Switch(vlan)#vtp v2-mode
Switch(vlan)#vtp server
Switch(vlan)#vtp domain cisco
Switch(vlan)#vtp password mypassword
Switch(vlan)#exit
配置 VTP 版本
VTP Configuration in global configuration mode:
Switch#config terminal
Switch(config)#vtp version 2
VTP Configuration in VLAN configuration mode:
Switch#vlan database
Switch(vlan)#vtp v2-mode
VTP 版本 3 仅在 CatOS 上支持
Console>(enable) set vtp version 3
VTP version 3 cannot be enabled on a switch with No Domain.
Console>(enable) set vtp domain ENG
P a g e | 481
CCIE R/S & Service Provider Exam Certification Guide
VTP domain ENG modified
Console>(enable) set vtp version 3
VTP version 3 Server/Client for VLANDB requires Reduced Mac Address feature to
be enabled (use "set spantree macreduction enable" command)
Console>(enable) set spantree macreduction enable
MAC address reduction enabled
Console>(enable) set vtp version 3
This command will enable VTP version 3 on this switch.
Do you want to continue (y/n) [n]? y
VTP3 domain ENG modified
配置 VTP 域和口令
VTP Configuration in global configuration mode:
Switch#config terminal
Switch(config)#vtp domain cisco
Switch(config)#vtp password mypassword
VTP Configuration in VLAN configuration mode:
Switch#vlan database
Switch(vlan)#vtp domain cisco
Switch(vlan)#vtp password mypassword
配置 VTP 模式
VTP Configuration in global configuration mode:
Switch#config terminal
Switch(config)#vtp mode { server | client | transparent }
VTP Configuration in VLAN configuration mode:
Switch#vlan database
Switch(vlan)#vtp { server | client | transparent }
验证 VTP 配置
Switch#sh vtp status
VTP Version
:2
Configuration Revision
:3
Maximum VLANs supported locally
: 1005
Number of existing VLANs
:8
VTP Operating Mode
: Server
VTP Domain Name
: cisco
VTP Pruning Mode
: Disabled
VTP V2 Mode
: Disabled
VTP Traps Generation
: Disabled
MD5 digest
: 0x6C 0x6C 0xF1 0x3C 0x2A 0x60 0xE8 0x71
Configuration last modified by 0.0.0.0 at 3-2-93 23:51:06
Local updater ID is 0.0.0.0 (no valid interface found)
Switch# show vtp statistics
VTP statistics:
summary advts received 0
subset advts received 0
request advts received 0
summary advts transmitted 7843
subset advts transmitted 4
P a g e | 482
CCIE R/S & Service Provider Exam Certification Guide
request advts transmitted 20
No of config revision errors 0
No of config digest errors 0
VTP pruning statistics:
Trunk
Join Transmitted
Join Received
-------16/1
------------------------75
---- -----------0
Summary advts received from
non-pruning-capable device
--------------------------0
GVRP PDU
Received
---------0
验证 VTP 裁剪
3550-Switch(config)#vtp pruning
Pruning switched on
3550-Switch(config)#int fa 0/3
3550-Switch(config-if)#switchport trunk pruning vlan remove 5-10
3550-Switch(config-if)#do sh run
Building configuration...
hostname 3550-Switch
!
interface FastEthernet0/1
!
interface FastEthernet0/2
!
interface FastEthernet0/3
switchport trunk pruning vlan 2-4,11-1001
switchport mode dynamic desirable
!
3550-Switch#show int fa0/3 switchport
Name: Fa0/3
Switchport: Enabled
Administrative Mode: dynamic desirable
Operational Mode: static access
Administrative Trunking Encapsulation: negotiate
Operational Trunking Encapsulation: native
Negotiation of Trunking: On
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 1 (default)
Voice VLAN: none
Administrative private-vlan host-association: none
Administrative private-vlan mapping: none
Administrative private-vlan trunk native VLAN: none
Administrative private-vlan trunk encapsulation: dot1q
Administrative private-vlan trunk normal VLANs: none
Administrative private-vlan trunk private VLANs: none
Operational private-vlan: none
Trunking VLANs Enabled: ALL
Pruning VLANs Enabled: 2-4,11-1001
Capture Mode Disabled
Capture VLANs Allowed: ALL
Protected: false
Unknown unicast blocked: disabled
Unknown multicast blocked: disabled
Appliance trust: none
3550-Switch#show vtp counters
VTP statistics:
Summary advertisements received
: 162
P a g e | 483
CCIE R/S & Service Provider Exam Certification Guide
Subset advertisements received
:4
Request advertisements received
:0
Summary advertisements transmitted : 317
Subset advertisements transmitted : 7
Request advertisements transmitted : 0
Number of config revision errors : 0
Number of config digest errors
:0
Number of V1 summary errors
:0
VTP pruning statistics:
Trunk
Join Transmitted Join Received
Summary advts received from
non-pruning-capable device
---------------- ---------------- ---------------- -----------------------------------------------------------------------Fa0/2
16
0
0
Fa0/23
16
16
0
Fa0/24
16
16
0
3550-Switch#debug sw-vlan vtp pruning
vtp pruning debugging is on
3550-Switch#VTP PRUNING DEBUG: trunk Fa0/23 timeout
VTP PRUNING DEBUG: trunk Fa0/23 rx Join, len=166 (domain cisco)
VTP PRUNING DEBUG: trunk Fa0/2 timeout
VTP PRUNING DEBUG: trunk Fa0/24 rx Join, len=166 (domain cisco)
VTP PRUNING DEBUG: trunk Fa0/24 timeout
20.6.7 VTP排错
vtp 在交换机同步主要的依据就是 Configuration Revision,在大家的 domain name 和 password 相同的
情况下,谁的 Configuration Revision 高,就以谁的为准。根据这个原理,我们在判断 vtp 信息不能同步的时
候,大概要看以下几个方面:
1.
首先判断所有参与 vtp 的交换机 domain name 和 password 一致,domain name 好办, 通过 sh vtp
stat 可以看到,但是 password 就不太好办了,新的交换机可以通过 sh vtp password 看到,部分
较老的交换机没有这个命令,目前为止我不知道如何去得到这个 password,碰到这种老的交换
机比较稳妥的办法就是重新设置 password。
2.
其次判断所有的交换机的 vtp mode 是否为 server 或者 client,如果是 transparent 模式,则这个
交换机不会与其他 vtp 域内交换机同步。值得一提的是,部分 cisco 的交换机只支持有限的 vlan
数量,如 2950 只支持 64 个 vlan,如果你在 vtp server 端配置了超过 64 个的 vlan,在这种情况
下,IOS 会自动把 2950 的 vtp mode 改为 transparent,在这种情况下,vtp 信息也不能同步。
3.
最后还有一种比较特殊的情况,就是 vtp 域内的几个交换机 vlan 信息不一致,但是大家的
Configuration Revision 相同,在这种情况下,也不能同步,解决办法就是修改某个交换机的 vlan
信息,强迫 Configuration Revision 增加,触发同步。这种情况比较特殊,常见于从不同的地方拿
交换机过来搭建测试环境的情况。
常用的命令:
sh vtp stat 命令中注意
Configuration Revision : 106
VTP Operating Mode : Server
VTP Domain Name : test
P a g e | 484
CCIE R/S & Service Provider Exam Certification Guide
sh vtp counter 在这个命令中注意
Number of config revision errors : 25
这个错误是由于大家的 revision 相同引起的
Number of config digest errors : 0
这个错误是由于大家的 domain password 不匹配引起的
sh vtp password
这个命令用来查看当前的 vtp password
更多与 VTP 相关的资料,请访问:
http://www.cisco.com/univercd/cc/td/doc/product/lan/cat6000/sw_8_1/confg_gd/vtp.pdf
20.7 VLAN间的路由
20.7.1 VLAN间路由选择方法
要在 vlan 间提供路由选择必须具有 3 个关键组件
1. 一个具有 vlan 能力的交换机
2. 一个路由器
3. 在交换机和路由器之间的一些连接方式
早期的 vlan 间路由选择如下图,每个 vlan 接到路由器的端口上,通过路由器进行转发
中期路由器支持 Trunk 链路后,采用 Trunk 和子接口的模式,实现单臂路由
P a g e | 485
CCIE R/S & Service Provider Exam Certification Guide
后期,交换机中整合了路由功能,通常这些模块被称为:
路由交换模块
路由处理器
路由交换处理器
路由交换特性卡(RSFC)
多层交换模块(MSM)
多层交换特性卡
第 3 层服务模块
3 种 vlan 路由方式的区别,第一种,受路由器转发能力的限制,且占用大量的路由器端口。第
二种,转发带宽受中继链路带宽限制,第三种,全部采用内部交换链路进行交换,具有速度高,
无冲突影响等优点
20.7.2 VLAN类型
Cisco Catalyst 系列交换机支持的 vlan,按其功能可以分
为如下多种
1. Vlan 1
2. 默认 vlan
3. 用户 vlan
4. 本地 vlan
5. 管理 vlan
Vlan 1
Vlan 1 成为一个特殊的 vlan 是因为第 2 层设
备需要一个默认 vlan 作为它们端口的归属,
包括他们的管理端口,此外很多第 2 层协议,
例如 BPDU , CDP, VTP, PAgP 和 DTP 需要在一
个特定的 vlan 中发送消息,由于这些原因,
选择了 vlan 1
默认 vlan
默认情况下,vlan 1 也是所有交换端口所属的 vlan,vlan 1 被称为默认 vlan, 当使用干净配
置,且删除 vlan.dat 后,所有的端口默认划入 vlan1
用户 vlan
用于分配给不同用户的自定义 vlan,可以按逻辑或地域划分
本地 vlan
本地 vlan 是用于一个被配置为 vlan 中继接口上的术语。当一个交换机被配置为中继时,就可
以使用适当的 vlan 号给数据帧打上标记。除本地 vlan 外,其他 vlan 帧均要进行 802.1Q 标记。
在默认情况下,均将 vlan1 定义为本地 vlan,
管理 vlan
将受信任设备和不受信任设备分开,同时管理 vlan 中一般传输 SNMP 等监控信息,并支持
P a g e | 486
CCIE R/S & Service Provider Exam Certification Guide
Telent 或者 SSH 的远程登录访问控制
20.7.3 路由交换处理器
可以使用路由交换处理器进行 vlan 间的交换,采用扩展卡的方式使得路由器的 CPU 能力和交换机
容量非常匹配,同时可以直接访问背板总线,提高了交换速度。路由器被高度集成到交换机中,使得告
诉路由选择特性更容易实现,下图就是一块路由交换处理器。
此时仅需要配置一个 VLAN 的 SVI 接口,并创建 SVI 间的路
由,即可完成 vlan 间的通讯。
Switch(config)#interface vlan 10
Switch(config-if)#ip address 10.0.10.1 255.255.255.0
Switch(config)#interface vlan 20
Switch(config-if)#ip address 10.0.20.1 255.255.255.0
Switch(config)#interface vlan 30
Switch(config-if)#ip address 10.0.30.1 255.255.255.0
Switch(config)#ip routing
需要注意的是,vlan 的 SVI 口默认是关闭的,需要人为的 no Shutdown 打开
20.7.4 单臂路由器
采用单臂路由器的最大优点是节约了交换机和路由器的接口,但可能带来路由器产生过载, 每个
vlan 带宽不足或者 IOS 版本过低,导致仅支持 ISL 封装,不支持 dot1q 等情况发生
单臂路由的配置方法需要路由器支持 Trunk 封装类型,同时还需要路由器支持子接口,并在子接口
上配置各种 3 层路由特性
Layer 2 Switch Commands:
Switch(config)#interface vlan 10
Switch(config-if)#description Management VLAN 10
Switch(config-if)#ip address 192.168.10.2 255.255.255.0
Switch(config-if)#no shutdown
Switch(config)#interface fa 0/1
Switch(config-if)#switchport mode trunk
Switch(config-if)#switchport trunk native vlan 1
P a g e | 487
CCIE R/S & Service Provider Exam Certification Guide
Router Commands:
Router(config)#interface fa 0/0.1
Router(config-subif)#description Control Traffic VLAN 1
Router(config-subif)#encapsulation dot1q 1 native
Router(config-subif)#ip address 192.168.1.1 255.255.255.0
Router(config)#interface fa 0/0.10
Router(config-subif)#description Management VLAN 10
Router(config-subif)#encapsulation dot1q 10
Router(config-subif)#ip address 192.168.10.1 255.255.255.0
Router(config)#interface fa 0/0.20
Router(config-subif)#description Engineering VLAN 20
Router(config-subif)#encapsulation dot1q 20
Router(config-subif)#ip address 192.168.20.1 255.255.255.0
Router(config)#interface fa 0/0.30
Router(config-subif)#description Marketing VLAN 30
Router(config-subif)#encapsulation dot1q 30
Router(config-subif)#ip address 192.168.30.1 255.255.255.0
20.7.5 vlan路由排错
Show ip route
检查 ip routing 是否打开,同时检查路由条目是否被过滤等
Show ip interface brief
检查接口状态
Show ip interface fa 0/2 switchport 察看端口的 2 层特性,看是否被配置成了 2 层端口
P a g e | 488
CCIE R/S & Service Provider Exam Certification Guide
Chapter 21
STP及EtherChannel
21.1生成树协议基础
生成树协议是由 Sun 微系统公司著名工程师拉迪亚?珀尔曼博士(Radia Perlman)发明的。在交换网络中使
用 STP 的首要动机是防止广播风暴和桥接表的错误。通过网桥优先级,路径开销以及端口 ID 控制 STP 行为。
21.1.1 STP概念
生成树协议是一种二层管理协议,它通过有选择性地阻塞网络冗余链路来达到消除网络二层环路
的目的,同时具备链路的备份功能。由于生成树协议本身比较小,所以并不像路由协议那样广为人知。
但是它却掌管着端口的转发大权—“小树枝抖一抖,上层协议就得另谋生路”。真实情况也确实如此,
特别是在和别的协议一起运行的时候,生成树就有可能断了其他协议的报文通路,造成种种奇怪的现象。
如上图这样一个高冗余度的网络,如果没有 STP 的存在,将会产生大量的广播环路,严重影响性
能。生成树协议和其他协议一样,是随着网络的不断发展而不断更新换代的。在生成树协议发展过程中,
老的缺陷不断被克服,新的特性不断被开发出来。
21.1.2 广播环路
广播和物理环路是非常危险的组合,下图显示了广播环路是如何产生的
当主机 A 发送一个目的地址为 FF-FF-FF-FF-FF-FF 的广播帧时,该 frame 将传至 CAT-1 和 CAT-2,当
达到 CAT-1 的 1/1 时,CAT-1 按照标准透明桥接算法,将其翻红到其他每个端口,包括 CAT-1 的 1/2 端口,
同样 CAT-2 也做这样的处理,此后广播报文就会在 CAT-1 和 CAT-2 之间的链路成几何级数的增长。
P a g e | 489
CCIE R/S & Service Provider Exam Certification Guide
广播环路比路由环路更危险,在以太网帧结构中,它没有像路由器那样,存在一个 TTL 域,对于
一个路由环路而言,一个报文跳过 255 条后,就会被丢弃。而广播路由环路的报文将永远不会被丢弃。
同时反复广播,其报文数量呈几何级数增长。
21.1.3 桥接表损坏
除了广播风暴外,单播帧也会引起网络瓶颈。当主机 A 此前已经拥有一条主机 B 的 ARP 条目,希
望 ping 主机 B ,但主机 B 临时从网络已初,并且交换机上相应于 B 的桥接表项已经被删除。假定任何
一个交换机都没有运行 STP,则,当帧到达 CAT-1 1/1 后,CAT-1 找不到目的地址,则 CAT-1 1/2 产生泛
洪,同时 CAT-2 收到后,将主机 A 的位置改变到一个错误的端口上。此后帧还沿反方向循环。,在端口
1/1 和 1/2 之间反复改变,导致 CPU 负载极大
21.1.4 网桥优先级
STP 要求每个网桥分配一个唯一的标识(BID.Bridge ID),BID 通常由优先级(2bytes)和网桥 MAC
地址(6bytes)构成。根据 IEEE802.1d 规定,优先级值为 0-65535,缺省的优先级为 32768(0x8000)。
BID 的比较方式如下,假设(s,t)和(u,v)分别为两个 BID,数对中的第一个值为优先级,第二个值
为 MAC 地址,则比较规则如下
If s < u then ( s,t ) < ( u,v )
If
( s = u )&&( t < v ) then
BID 值越小的网桥,其优先级越高
P a g e | 490
( s,t ) < ( u,v )
CCIE R/S & Service Provider Exam Certification Guide
21.1.5 路径开销
路径开销用来衡量网桥之间距离的一种方式。路径开销是两个网桥间某条路径上所有链路开销的
总和,IEEE 802.1D 最初定义链路开销是使用 1000Mbit/s 除以以 Mbit/s 为单位的链路带宽。例如 10BASE-T
链路的开销为 100,快速以太网和 FDDI 为 10。随着 Gbit/s 以太网和其它高速技术的出现,反映了该定
义的一些缺陷。
链路开销使用整数存储,为了解决高带宽网络按原有标准计算出现小数的问题(10Gbit/s 按原标准
为 0.1)。IEEE 改变了原有的反比例模型,按如下 2 种方式定义新的链路开销。
1Gbit/s 的 CatOS 系统使用短整型,
10Gbit/s 带宽以上的 CatOS 和新版的 IOS 使用长整形
21.1.6 端口ID
端口 ID(PID,Port ID),用来确定到根交换机的路径。由 16bit 的子串决定,其中包括 6bit 的端口优先
级和 10bit 的端口号。
Port ID 的比较方式如下,假设(s,t)和(u,v)分别为两个 Port ID,数对中的第一个值为优先级,第
二个值为 MAC 地址,则比较规则如下
If s < u then ( s,t ) < ( u,v )
If
( s = u )&&( t < v ) then
( s,t ) < ( u,v )
PID 越小的端口优先级越高
P a g e | 491
CCIE R/S & Service Provider Exam Certification Guide
sw2#sh spanning-tree interface fa 0/3 detail
Port 3 (FastEthernet0/3) of VLAN0001 is forwarding
Port path cost 100, Port priority 128, Port Identifier 128.3.
Designated root has priority 32769, address 0008.2059.9e40
Designated bridge has priority 32769, address 0009.4376.2300
Designated port id is 128.3, designated path cost 19
Timers: message age 0, forward delay 0, hold 0
Number of transitions to forwarding state: 1
Link type is shared by default
BPDU: sent 238527, received 0
PID 中端口号定义采用数字编号的方式,一般基于 IOS 的交换机上端口号空间为 256 个端口。例如
slot 1 上的 3 号口,其端口号为 3, 则 Port ID 如上所示为 128.3
21.2 STP过程
21.2.1
STP判决和BPDU交换
Spanning-tree 算法主要依靠 BID,路径开
销和端口 ID,在创建一个无环路的拓扑时,
STP 执行如下 4 个步骤:
1. 选取根交换机
2. 计算到根交换机的最小路径开销
3. 确定最小发送者 BID
4. 确定最小的端口 ID
为做出最佳判决,STP 需要保证所有参与的网桥都获得正确的信息,网桥间的信息交互采用网桥协
议数据单元(BPDU)的基于 2 层的 frame 来传递 STP 信息。网桥通过如上 4 步来选择每个端口上所看到的
“最佳”BPDU。当一个网桥被激活后,其所有的端口每隔 2s(默认 hello 时间)发送一次 BPDU 报文 。
如果收到其它端口比自己更好的 BPDU,则本地端口停止发送 BPDU。如果 20s(默认最大时间 Max Age)
的时间没有从邻居收到更好的 BPDU,则本地端口将重新发送 BPDU。最大生存时间是最佳 BPDU 超时的
时间。
21.2.2 STP收敛步骤
生成树算法比较复杂,其收敛于一个无拓扑的初始过程包含
1. 选举根交换机(Root Bridge)
2. 选举根端口(Root Ports)
3. 选举指定端口(Designated Ports)
在网络第一次“初始”的时候,所有的网桥都会泛洪混合的 BPDU 信息。网桥开始执行前面讨论
过的 STP 4 个判断过程。使得网桥追踪到一组 BPDU,形成整个网络(Cisco 是一个 vlan 一个 STP 实例,故
cisco 的生成树范围定义在一个 vlan 中)。
A。选举根交换机
STP 要求每个网桥分配一个唯一的标识(BID),BID 通常由优先级(2bytes)和网桥 MAC 地址(6bytes)
构成。根据 IEEE802.1d 规定,优先级值为 0-65535,缺省的优先级为 32768(0x8000)。当交换机最初
启动时,它假定自己就是根交换机,并发送次优的 BPDU,当交换机接收到一个更低的 BID 时,它会把
P a g e | 492
CCIE R/S & Service Provider Exam Certification Guide
自己正在发送的 BPDU 的根 BDI 替换为这个最低的根 BID,所有的网桥都会接收到这些 BPDU,并且判定
具有最小 BID 值的网桥作为根网桥。如下图所示,假定 A,B 的优先级均为 32,768 C 的优先级为 40,000
根据选举规则,选择较小的优先级的交换机,则选择出 Cat-A 和 Cat-B。在 A , B 优先级相同的时候,
查找最小的 MAC 地址 AA-AA-AA-AA-AA-AA.于是 Cat-A 被选举成为根交换机.
B。选举根端口
在选举根桥结束后,将选举根端口,一个网桥的根端口是按照路径开销最靠近根交换机的端口。 每
一个非根交换机都将选出一个根端口。 根交换机每个接口均为根端口。其选择过程如下:
1.
根交换机 Cat-A 发送 BPDU,他们所包含的根路径开销为 0,当 Cat-B 收到这些 BPDU
后,迅速将端口 1/1 的路径开销累加到所收到 BPDU 的根路径开销。假定为
FastEthernet,则加上端口 1/1 的开销 19,Cat-B 1/1 到根路径的开销为 19。
2.
Cat-B 使用内部值 19 ,并从端口 1/2 发送一个根路径开销为 19 的 BPDU
3.
当 Cat-C 从 Cat-B 收到这些 BPDU 将计算自己到根网桥的开销为 38(19+19)。
4.
Cat-C 也在 1/1 上收到来自 A 的 BPDU。同时计算 1/1 到根网桥的开销为 19。
5.
根据最靠近根桥原则,C 选出根端口为 1/1。
6.
Cat-C 将继续向下游交换机公布其到根端口的开销为 19
C。选举指定端口
指定端口是定义在一个网段(Segment)上的概念。在选举根端口的同时,基于到根网桥的的根路径
成本的累加值的指定端口选择过程也在进行。包含某一网段的指定端口的网桥称为该网段的指定网桥。
根网桥的所有活动端口都成为指定端口。这条规则的例外是:当根网桥自身存在第一层物理环路的情况。
P a g e | 493
CCIE R/S & Service Provider Exam Certification Guide
例如:根网桥的两个端口连接到了同一台集线器上,或者两个端口通过交叉线连接到了一起。指定端口
选举过程如下:
Segment 1 中,根交换机 Cat-A 上 1/1 的路径开销为 0,Cat-B 上 1/1 的开销为 19。故 Cat-A 的 1/1
为指定端口。Segment 2 中,同样 Cat-A 上的 1/2 被选举为指定端口。在 Segment 3 中。Cat-B 和 Cat-C
上的 1/2 口,端口路径开销均为 19。 此时将根据最小发送者的 BID 来确定,此时确定 B 的端口为指定
端口,在某些情况下,例如 Cisco 的交换机每个 vlan 一个生成树实例,此时,将会出现 BID 相同的情况,
则最后比较端口 ID,端口 ID 在同一台交换机上定义是必定不相同的,最小端口 ID 的端口被定义为指定
端口。
注意:接入端口在指定端口过程中不扮演任何角色,所有的指定端口选举军仅在中继端口中交互,
接入端口仅用于连接主机和路由器。
21.2.3 STP状态
在确定根端口,指定端口和非指定端口后,STP 准备创建一个无环路拓扑。STP 配置根端口和指定
端口来转发流量,非指定端口阻塞流量。STP 一共有 5 种状态
P a g e | 494
状态
描述
状态
描述
转发
发送和接收用户数据
阻塞
只接收 BPDU
学习
构建桥接表
禁用
管理关闭
侦听
构建“活动”拓扑
CCIE R/S & Service Provider Exam Certification Guide
A.阻塞状态( blocking )
一个端口处于阻塞状态将会有如下特征:
丢弃所有连接的网段上收到的数据帧,或者通过交换而来内部转发的帧 。
接收到的 BPDU 直接传给系统模块。
没有地址数据库。
不传递从系统模块收到的 BPDU
接收响应网络管理消息,但不传递他们
B.侦听状态( Listening )
如果一个网桥在启动或者在一定时间没有收到 BPDU 后立即认为自己是根交换机,断口进入侦听
状态,侦听状态是一种不传用户数据的 STP 状态,仅在端口发送和接收 BPDU 报文。努力确定一个活动
的拓扑,该状态有如下特征:
丢弃所有连接的网段上收到的数据帧,或者通过交换而来内部转发的帧 。
接收到的 BPDU 直接传给系统模块。
没有地址数据库。
不传递从系统模块收到的 BPDU
接收响应网络管理消息
选举根桥,根端口和指定端口发生在侦听状态期间。 在指定端口选举中失败的端口成为非指定端
口,并回到阻塞状态,剩下的指定端口或者根端口在 15s 后进入学习状态。
C.学习状态( Learning )
学习状态是网桥不传递用户数据帧但构建桥街表并收集诸如数据帧源 vlan 等信息的一种 STP 状态。
当网桥收到一个帧, 他将源 MAC 地址和端口放入桥接表, 当数据转发开始后学习状态减少了所需的
泛洪次数需求。徐锡状态的生存时间同样受转发延迟定时器的控制,默认为 15s
一个处于学习状态的端口特性:
丢弃所有连接的网段上收到的数据帧。
丢弃从其它端口交换来的需要转发的帧
接收到的 BPDU 直接传给系统模块。
接收,处理传递从系统模块收到的 BPDU
接收响应网络管理消息
D.转发状态( Forwarding )
处于一个学习状态端口在转发延迟定时器超时后仍然是根端口或者指定端口,则将进入转发状态,
转发状态特性如下
转发所有连接的网段上收到的数据帧。
转发从其它端口交换来的需要转发的帧
将位置状态信息包含进自己的地址数据库
接收到的 BPDU 直接传给系统模块。
处理从系统模块收到的 BPDU
接收响应网络管理消息
P a g e | 495
CCIE R/S & Service Provider Exam Certification Guide
21.2.4
STP定时器
STP 运作受 3 个定时器控制
HELLO 时间(根网桥发送配置 BPDU 的时间间隔) 缺省 2s
这个值实际上只控制配置 BPDU 在根网桥上生成的时间,其他网桥则把它们从根网桥接
收到的 BPDU 向外通告。换言之,如果在 2-20 秒内由于网络故障而没有收到新的 BPDU,非
根网桥在这段时间内就停止发送周期 BPDU。如果这种情况持续超过 20s,也就是超过最大存
活期,非根网桥就使原来存储的 BPDU 无效,并开始寻找新的根端口。
转发延迟(侦听状态或学习状态的持续时间)
缺省 15s
网桥在侦听状态和学习状态所花费的时间。只用转发延迟就控制了转发和学习两个状态。
15 秒这个值是假定网络的最大规模为 7 段网桥跳数;BPDU 的最大丢失个数为 3 以及 HELLO
时间间隔为 2 秒的情况下得到的。这个转发延迟计时器同样可以用来控制网桥表在网络拓扑
发生变化后的生存时间。
最大存活期(存储 BPDU 的时间)
缺省 20s
就是网桥在丢弃 BPDU 前用来备份存储它的时间。
21.2.5 BPDU的格式
STP BPDU 帧格式随着所使用的协议类型变化。下图显示了 IEEE 802.1D 生成树协议的 BPDU 帧格式。
P a g e | 496
CCIE R/S & Service Provider Exam Certification Guide
Cisco 专有的 BPDU 帧格式:
帧控制域总是 01
目的地址域指定了在桥街租地址表中所规定的目的地址,在 IEEE STP BPDU 帧中,这个
地址为 0x800143000000
原地址域指明了交换机所使用的基本 MAC 地址
路由选择信息域仅在 Cisco STP BPDU 中有,RIF 必须为 0x0200
逻辑链路控制域控制所有 STP BPDU 的帧类型,这个域被设置为 0x424203
BPDU 域内定义如下:
Field
Protocol ID
Version
Type
Octets
2
1
1
Flags
1
Root BID
Root Path Cost
Sender BID
Port ID
Message Age
8
4
8
2
2
Max Age
Hello Time
Forward Delay
2
2
2
Use
Always 0
Always 0
Type of current BPDU
0 = Configuration BPDU
LSB = Topology Change (TC) flag
MSB = Topology Change Acknowledgment (TCA) flag
Bridge ID of current Root Bridge
Cumulative cost to Root Bridge
Bridge ID of current bridge
Unique ID for port that sent this BPDU
Time since Root Bridge-created BPDU used to derive
current BPDU
Period to save BPDU information
Period between BPDUs
Time spent in Listening and Learning states
P a g e | 497
CCIE R/S & Service Provider Exam Certification Guide
拓扑变化 BPDU
21.2.6 拓扑变化和STP
STP 通过使用一组定时器来避免在网络中出现桥街环路,如果一个稳定的 STP 进程出现变化可能需
要 30~50s 的时间才能收敛到新的拓扑。(Max Age 20s + 2 次 forward delay 15s)当网络在收敛过程时,那
些已经不可达的物理地址仍旧存在于交换表中。STP 在拓扑变化的机制中,要求迅速清空交换表以删除不
可达的物理地址。防止交换机将一些数据帧转发到那些不可达的设备。
下图为一个拓扑变化过程:
1. 交换机 D 注意到拓扑变化
2. 交换机 D 从根端口发出一个拓扑变化通知(TCN)BPDU,最终目的地为根交换机。TCN BPDU
通过 BPDU 中值为 0x80 的一个字节类型域表明。网桥持续发送 TCN BPDU 知道该网段的指定
网桥响应一个 TCA 配置 BPDU,类型 TCA 是通过 1 字节标志域中的最高比特位指明的。
3. 该网段的指定网桥(Cat-B)发送一个 TCA 配置 BPDU 到源网桥(Cat-D).交换机 B 也从根端口发送
一格目的地为根交换机的 TCN BPDU
4. 当根交换机收到(上游)TCN BPDU,就发送配置 BPDU 通告发生了一个拓扑变化。根交换机
在配置中嵌入拓扑变化的时间等于转发延迟加最大生存时间.(15s+15s+20s)
5. 一个网桥收到(下游)从根交换机发出的拓扑变化配置消息,用转发延迟定时器(15s)使全部
地址表超时。这是的比默认设备通常需要 5 分钟才老化整张表快乐很多。 网桥将持续这一个
过程知道不再从根交换机收到拓扑变化配置消息
P a g e | 498
CCIE R/S & Service Provider Exam Certification Guide
21.2.7 备份的根网桥
通常拓扑变化中,如果根桥出现问题,将会极大地影响网络的 STP 收敛时间,此时,cisco 采用了
一种备份根桥的策略。如下图:
其实质上是根据根网桥选举规则进行处理的,配置命令为:
Spaning-tree vlan vlan-id root primay
Spaning-tree vlan vlan-id root secondary
这 2 条命令的作用是修改 BID 中的 Priority 值,该命令仅在 Catalyst 6500,4500,3750,3550,2950
上支持
21.3 STP特性
21.3.1
PortFast
STP PortFast 是一个 Catalyst 的一个特性,能使交换机或中继端口跳过侦听学习状态。立即进入 STP
转发状态,在基于 IOS 交换机上,PortFast 只能用于连接到终端工作站的接入端口上。
当一个设备连接到一个端口上时,端口通常进入侦听状态。当转发延迟定时器超时后,进入学习
状态,当转发延迟定时器第二次超时,端口进入到转发或者阻塞状态,当一个交换机或中继端口启用
PortFast 后,端口立即进入转发状态,但交换机检测到链路,端口就进入转发状态(插电缆后的 2s) .如果端
口检测到一个环路同时又启用了 PortFast 功能。它就进入阻塞状态。重要的是要注意到 PortFast 值在端口
初始化的时候才生效。如果端口由于某种原因又被迫进入阻塞状态,随后又需要回到转发状态,仍然要
P a g e | 499
CCIE R/S & Service Provider Exam Certification Guide
经过正常的侦听和学习过程。
启用 PortFast 的主要原因是防止启动周期小于 30s 的 PC 需要和交换机端口从未连接状态进入到转
发状态,一些网卡直到 MAC 层软件驱动被实际加载之后才会启动链路。这种情况下就会导致一些故障,
例如 DHCP 环境下,这可能会出现一些问题。
配置方式:
Switch(config-if)#spanning-tree portfast [trunk]
Switch#show spanning-tree portfast
21.3.2
UplinkFast
在 STP 收敛过程中,一些终端站点可能会不可达,这是基于站点所连接交换机端口的 STP 状态而
定。这打乱网络连接,于是关键是减少 STP 的收敛时间和网络受影响的时间。
当链路或交换机故障,或 STP 重新配置后, UplinkFast 可以加速选择一个新的根端口。根端口立
即进入转发状态,Uplinkfast 通过减少最大更新速率来限制突发多博流量。定义了更新分组发送的最大速
率,默认为 150 分组/分钟
Uplinkfast 对于网络边缘的布线间交换机非常有用。他不适用于骨干设备。UplinkFast 在直连链路
故障后提供快速的收敛能力, 并通过上行链路组在冗余。
如上图所示,A 和根交换机相连的端口为转发状态,另一个为阻塞状态。 当到根交换机的上行链
路断开后, 如果配置了 Uplinkfast 到另一台上层交换机的链路将直接转入转发状态。
P a g e | 500
CCIE R/S & Service Provider Exam Certification Guide
受 UplinkFast 的影响,这个变化将花费 1s~5s。一点交换机将以个备用端口转为转发状态, 交换
机开始在该端口发送伪多播帧,本地桥接标中每个表项都对应一个伪多播帧。 它适用工作站地址做为
源地址,目的地址 01-00-0C-CD-CD-CD 作为目的地址。
如果原来的交换机恢复连接,交换机在等待 2 倍转发延迟时间再加上 5s 后才将该端口转入转发状
态。这是的邻接端口有时间经过侦听和学习状态转入转发状态。
配置方法:
Switch(config-if)#spanning-tree uplinkfast
Switch(config)#[no] spanning-tree uplinkfast [max-update-rate max_update_rate]
Switch#show spanning-tree uplinkfast
21.3.3
BackboneFast
BackboneFast 是 Catalyst 交换机在跟端口或阻塞端口从指定网桥收到一个劣质(inferor)的 BPDU 时会
起动的一种特性。当一个交换机收到一个劣质 BPDU,就以为这该交换机的一个非直接链路出现故障。
也就是说,一个指定网桥已经丢失到根交换机的连接。按照 STP 规则,因为所有配置的最大生存时间,
交换机会忽略所有的劣质的 BPDU。
,
为了减少这 20s 时间,设计了 BackboneFast 特性。当一个交换机收到劣质 BPDU 的时候,交换机
试图判断是否有一条备用路径到根交换机。有 2 种情况:
P a g e | 501
CCIE R/S & Service Provider Exam Certification Guide
1. 如果劣质 BPDU 到达一个阻塞端口,则交换机上的根端口和其他阻塞端口成为到根交换
机的备选路径
2. 如果劣质 BPDU 到达根端口,所有的阻塞端口都会成为到根交换机的潜在备用。
如果劣质 BPDU 到达根端口,且没有阻塞端口,交换机将自己定义为根交换机。如果交换机存在备
用路径,它适用备用路径传送一种新的协议,通常情况下该模式会节约 20s 的时间。
如上图:当 L1 Down 时,SWB 会发送一个劣等 BPDU,告诉 SWC,我 SWB 是 Root,SWC 经过和 SWA 沟
通(使用 Root Link Query BPDU 查询),SWA 告诉 SWC,我 SWA 还活着呢。然后 SWC 告诉 SWB,SWA
还活着,它还是 Root。
配置方法:
Switch(config-if)#spanning-tree backbonefast
Switch#show spanning-tree backbonefast
21.3.4
BPDU保护
BPDU 保护仅用在 PortFast 模式。它被网络设计者用来加强 STP 域边界。从而保持与其的活动拓扑。
在启用 STP PortFast 端口之后的设备被禁止影响 STP 拓扑。
通过配置 BPDU 保护后,端口入如果收到 BPDU
将会把端口状态调整到 Err-Disable.如下是一个出错信息:
2000 May 12 15:13:32 %SPANTREE-2-RX_PORTFAST:Received BPDU on PortFast
enable port. Disabling 2/1
2000 May 12 15:13:32 %PAGP-5-PORTFROMSTP:Port 2/1 left bridge port 2/1
如图所示,A 的优先级为 10,为该 vlan 的根桥,B 的优先级为 20,为备份根桥,B 和 A 之间的链
路为 Gbit/s 链路,正确的 BPDU 流向,如下左图
如果 D 为一台基于 Linux 的软件网桥,可以发送 BPDU 报文,并将自身 BID 的优先级设置为 0,此
时,D 将成为根桥,故 BPDU 流向变为右图, A,B 间的 Gbit/s 链路被阻塞,通过 C 走 100Mbit/s 链路。
此时会超负载出现丢包的情况, BPDU 保护的目的就是基于这种情况,防止接入设备对整个网络拓扑的
影响。
配置方式:
在全局模式:
P a g e | 502
CCIE R/S & Service Provider Exam Certification Guide
Switch(config)#spanning-tree portfast bpduguard default
接口模式:
Switch(config-if)#spanning-tree bpduguard enable
注意在全局模式配置了 portfast 默认打开 BPDU 保护,需要在相应的接口上打开 portfast 才能
启用
21.3.5 根保护
传统的 802.1D STP 没有给网络管理员提供确保交换式第 2 层网络拓扑安全。如下图,当新接入的
交换机优先级更低,将抢占原有的根网桥。
根保护的目的是确保启用了根保护的端口成为指定端口。通常一个根桥的所有端口均为指定端口。
除非连接到两个或多根网桥的端口。如果网桥在启用根保护的端口上收到一个较好的 STP BPDU。这个
端口进入 STP 的根不一致状态, 不会有流量通过该端口。
如上拓扑,
A 和 B 为分布层 SW,C 为接入层 SW,根为 A。当在 C 下面再接一台 SW 时,由于 D 的优先级或
MAC 地址可能比其它要低,可能会使 D 成为 Root SW,从而使得从 A 到达 B 的流量不能直接发送到 B,
而得使用 C 来转发,这样很不合理(A 和 B 之间为千兆)。为了避免这种情况,可以在 C 的下联端口上
使用 Root Guard,以防止该端口成为 Root Port,从而防止 D 成为 Root SW,确保 A 永远为 Root SW。使
用 Root Guard 后,当 SW D 接入网络后,C 的下联 D 的端口会收到一个更新的 BPDU(前提是 D 的优先
级最高)后,C 将该端口转为 Block 状态,直到 D 不在发送新的 BPDU 或更改 D 的优先级。
A 交换机:
连接交换机 C 的端口
B 交换机:
连接交换机 C 的端口
C 交换机:
连接交换机 D 的端口
当一个根保护端口阻塞一个端口时,控制台将会显示如下消息:
%SPANTREE-2-ROOTGUARDBLOCK: Port 1/1 tried to become non-designated in VLAN 77. Moved
to root-inconsistent state
配置根保护端口的方法如下:
Root Guard 配置在接口上,使用命令:
Switch(config-if)#spanning-tree guard root
Root Guard 配置在接口上,使用命令:
在接口上启用 BPDU 防护功能:
P a g e | 503
CCIE R/S & Service Provider Exam Certification Guide
Switch(config-if)#spanning-tree bpduguard enable
诊断命令:
显示接口的命令:
Switch#show running-config interface interface x/y
显示端口不一致状态(即为 Block 的端口)的命令:
Switch#show spanning-tree inconsistentports
21.4 STP配置
21.4.1 默认STP配置
默认情况下 Cisco 采用自有的 PVST,PVST+。默认 VLAN1 和所有新创建的 Vlan 都会启用。直到达
到所设定的生成树上限。
打开 STP 的命令如下:
Switch(config)#spanning-tree vlan vlan-id root primary/secondary
Diameter num hello-time time
其中 root 参数已经介绍过了,用于设置根桥和备份根桥。
对于该参数,支持扩展系统 ID 的版本,配置该命令后,优先级为 24576。不支持扩展系统 ID 的版
本,则为 8192
Hello-time 默认为 2s,可调节范围 1s~10s
Diameter 是指任意两个终端站点之间的最大交换机数目。范围为 2~7 个。也就是说,STP 的有效
范围仅支持 7 个交换机之间的互联。此时将会产生一个严重的问题。VTP 和 STP 导致的环路问题。VTP 设
置不当,会导致 vlan 信息传播到很远的地方,此时,因为 Cisco 采用 PVST / PVST+ 导致每个 vlan 一个生
成树实例,则此时,将会出现一个极大范围的交换机处于同一个 vlan 中,可能导致出现 7 个以上的交换
机串行连接,产生 STP 无法计算环路的情况。导致环路发生
显示配置的条目:
Show spanning-tree detail
21.4.2 设置vlan和端口优先级
在接口模式下设置接口优先级:
接入接口:
Switch(config-if)#spanning-tree vlan port—priority priority
中继接口:
Switch(config-if)#spanning-tree vlan vlan-id port—priority priority //0~255
P a g e | 504
CCIE R/S & Service Provider Exam Certification Guide
Switch#show spanning-tree vlan vlan-id
Switch#show spanning-tree interface
interface-id
21.4.3 设置端口Cost
接入接口:
Switch(config-if)#spanning-tree cost csot-value //1~200,000,000
中继接口:
Switch(config-if)#spanning-tree vlan vlan-id cost csot-value
21.4.4 设置vlan的交换机优先级
Switch(config-if)#spanning-tree vlan vlan-id priority priority
合法的优先级如下:
21.4.5 设置STP计时器
Hello-time
Switch(config)#spanning-tree vlan vlan-id hello-time time
默认 2s,修改范围 1s~10s
Forward-delay
Switch(config)#spanning-tree vlan vlan-id forward-time time
默认 15s,修改范围 4s~30s
Max-age
Switch(config)#spanning-tree vlan vlan-id max-age time
默认 20s,修改范围 6s-40s
对于如上参数的调整,建议新手不要对他们进行调整,否则调整不当会带来一些莫名其妙的故障,
进行参数调校,可以对特定的拓扑结构使用 PortFast BackboneFast 以及 BPDU 保护,根保护后,跟据实际
情况,优化如上 3 个参数即可。
21.4.6 设置负载均衡
P a g e | 505
CCIE R/S & Service Provider Exam Certification Guide
可以根据 STP 的一些特性实现基于 STP 的负载均衡,如下图:
可以通过 2 种方式实现基于 PVST+的 STP 负载均衡。
1. 按上图所示修改端口优先级
2.修改路径开销
P a g e | 506
CCIE R/S & Service Provider Exam Certification Guide
21.5 STP排错
STP 常见故障:
Link 两端工作模式不匹配(双工、单工)
单向链路故障
损坏的帧
资源问题(CPU 占用率高)
Port Fast 端口配置错误
STP 的参数配置不正确。
21.5.1 双工不匹配
由于双工模式不匹配,导致链路冲突,产生
BPDU 在传输过程中丢失的情况
最坏的情况是当发送 BPDU 的网桥在链路时
为半双工配置而其对等体配置的全双工。在上述示
例,双工不匹配在网桥 A 和 B 的之间链路,由于 B
为全双工配置,不执行载波侦听当访问链路时。即
使 A 已经使用链路,B 仍然开始发送帧。如果有足
够的数据流从 B 到 A,A (包括 BPDU)发送的每一个
信息包将被延迟或 collisioned 而丢弃。同时还会产
生 BPDU 偏移(SKEW):BPDU 应该收到时间和实际
收到时间的差值。产生的原因:STP 计时器失效;
未收到 BPDU 包;生成树发现拓扑改变时。SW 发现 BPDU 偏移后会产生日志消息。日志过多可能会影响
到 SW 的性能和影响 STP 收敛的时间。
每当有双工不匹配,如下错误信息在 Catalyst 交换机交换机控制台上显示
CDP-4-DUPLEXMISMATCH: Full/half duplex mismatch detected on port [mod]/[port]
21.5.2 单向链路故障
由于单向链路,导致 BPDU 从一方的到另一方无法传输。
UDLD 是 cisco 的私有 2 层协议,用于检测链路的单向问题。有的时候物理层是 up 的,但链路层就
是 down,这时候就需要 UDLD 去检测链路是否是真的 up 的。当 AB 两端都配置好 UDLD 后,A 给 B 发送
一个包含自己 port id 的 UDLD 帧,B 收到后会返回一个 UDLD 帧,并在其中包含了收到的 A 的 port id,当
A 接收到这个帧并发现自己的 port id 也在其中后,认为这链路是好的。反之就变成 err-disable 状态了。
假设 A 配置了 UDLD,而 B 没有配置 UDLD:A 给 B 发送一个包含自己 port id 的帧,B 收到后并不知道这
个帧是什么,也就不会返回一个包含 A 的 port id 的 UDLD 帧,那么这时候 A 就认为这条链路是一个单向
链路,自然也就变成 err-disable 状态了。
P a g e | 507
CCIE R/S & Service Provider Exam Certification Guide
SWA 向 SWB 发送一个 UDLD,如果 SWB 能够回应 SWA,则是双向链路,否则为单向链路。然后
Shutdown 掉这条有问题的 Link。从而避免单向链路的产生。
缺省情况下,UDLD 是不启用的。
启用 UDLD 协议:
Switch(config)#udld enable (自动启用光口的 UDLD),其它类型不自动启用。
在相应的端口上应用 UDLD:
Switch(config-if)#udld enable
关闭相应的端口上应用 UDLD(非光口):
Switch(config-if)#no udld enable
关闭 UDLD 协议(光口):
udld disable
UDLD 具有两种操作模式:标准模式和主动模式。UDLD 是第 2 层的帧。UDLD 必须在两端的 SW 均要配置。
标准模式:
检测到单向连接后,允许端口继续操作。UDLD 只是将此端口标记为未确定(Undetermined)
状态,并产生一个 Syslog 消息。
主动模式:
在检测到单向连接后,SW 重新建立连接,每 8 秒发送一个 UDLD 消息。如果没有回送消息,
那么端口进入 errdisable 状态,这样端口就不能再使用了。
UDLD 使用的消息间隔缺省为 15 秒;它的目的是在 STP 从 Block 状态进入 Forware 之前检测单向连
接操作。UDLD 能在 3 倍的 UDLD 消息间隔检测单向连接(缺省 45 秒)。
UDLD 复位和诊断命令:
把被 UDLD 关闭的端口进行复位(UP):
Switch# udld reset
显示指定接口的 UDLD 信息:
Switch#show udld interface
21.5.3 环路保护
环路保护:在非指定端口上使用 Loop Guard。防止环路产生。避免上于处于 Block 端口的 SW 在
Max_age 时间内接收不到对方(邻居)的 BPDU 而将端口状态转为 Listen->Learning->Forward 状态。使用
Loop Guard 后,等接收不到对方的 BPDU 消息后,将端口 Block 状态转为 Loop-inconsistent(环路不一致)
状态,从而避免产生环路。
如果使用 Loop Guard,那么 Root Guard 将会被关闭。
比较下 Loop Guard 和 UDLD:建议 Loop Guard 和 UDLD 同时使用。
P a g e | 508
CCIE R/S & Service Provider Exam Certification Guide
Loop Guard 和 UDLD 的比较:建议 Loop Guard 和 UDLD 同时使用。
21.5.4 PortFast配置错误
启用 PortFast 的主要原因是防止启动周期小于 30s 的 PC 需要和交换机端口从未连接状态进入到转
发状态,一些网卡直到 MAC 层软件驱动被实际加载之后才会启动链路。这种情况下就会导致一些故障,
如果一个接口配置了 portfast,那也就是说这个接口应该和一个 pc 连接,pc 是不会发送
spanning-tree 的 BPDU 帧的,因此这个口也接收 BPDU 来生成
spanning-tree,管理员也是出于好心在同一接口上配置了 BPDU
guard 来防止未知的 BPDU 帧以增强安全性,但他恰恰不小心把
一个交换机接到这个同时配置了 portfast 和 BPDU guard 接口上,
于是这个接口接到了 BPDU 帧,因为配置了 BPDU guard,这个接
口自然要进入到 err-disable 状态。
在本例中,A 是一个网桥,B 是集线器。当第二个电缆插
入 A,端口 p2 立即变成转发模式,此时在 p1 和 p2 之间产生了
一个环路。这一过程在 p1 或 p2 接受到 BPDU 报文后,阻塞其中
一个口,才会结束。但是,如果数据量特别大,产生的大量环路数据流,在短时间内,会产生循环的 BPDU
报文,导致 BDPU 严重的延迟。Cisco 的 Catalyst 交换机可以启用 BPDU 防护来解决这个问题。
21.5.5 VTP和STP配置不当
对于一个 STP 而言,默认的生成树直径小于 7 台交换机。而 Cisco 默认支持的 STP 模式是 PVST/PVST+。
P a g e | 509
CCIE R/S & Service Provider Exam Certification Guide
则,VTP 如果裁剪不当,或者 VTP 设置不当,则会导致一个 vlan 域中,交换机直径大于 7,则在这样的拓
扑结构中,使得 STP 失效。
另一种情况,则是 VTP 承载了过多的 vlan,导致 STP 实例达到上限,从而部分 vlan 无法开启 STP。
这样的情况只能靠网络管理人员设计好良好的拓扑结构,并对 vlan 做精确的裁剪。
21.5.6 其他原因
链路的抖动,当链路在 10 秒内反复 up、down 五次,那么就进入 err-disable 状态。从而导致 STP
无法正确的阻塞端口。
keepalive loopback。在 12.1EA 之前,默认情况下交换机会在所有接口都发送 keepalive 信息,由于
一些不通交换机协商 spanning-tree 可能会有问题,一个接口又收到了自己发出的 keepalive,那么这个接
口就会变成 err-disable 了。解决办法就是把 keepalive 关了。或者把 ios 升到 12.2SE
在 EtherChannel 中,当 FEC 两端配置不匹配的时候就会出现 err-disable。假设 Switch A 把 FEC 模式
配置为 on,这时 Switch A 是不会发送 PAgP 包和相连的 Switch B 去协商 FEC 的,它假设 Switch B 已经配置
好 FEC 了。但实事上 Swtich B 并没有配置 FEC,当 Switch B 的这个状态超过 1 分钟后,Switch A 的 STP 就
认为有环路出现,因此也就出现了 err-disable。解决办法就是把 FEC 的模式配置为
channel-group 1 mode desirable non-silent
这个意思是只有当双方的 FEC 协商成功后才建立 channel,否则接口还处于正常状态。
关于 EtherChannel 后文会做详细的解释,
21.6 STP增强
21.6.1 PVST/PVST+
每个 VLAN 都生成一棵树是一种比较直接,而且最简单的解决方法。它能够保证每一个 VLAN 都不
存在环路。但是由于种种原因,以这种方式工作的生成树协议并没有形成标准,而是各个厂商各有一套,
尤其是以 Cisco 的 VLAN 生成树 PVST(Per VLAN Spanning Tree)为代表。
为了携带更多的信息,PVST BPDU 的格式和 STP/RSTP BPDU 格式已经不一样,发送的目的地址也改
成了 Cisco 保留地址 01-00-0C-CC-CC-CD,而且在 VLAN Trunk 的情况下 PVST BPDU 被打上了 802.1Q VLAN
标签。所以,PVST 协议并不兼容 STP/RSTP 协议。
Cisco 很快又推出了经过改进的 PVST+协议,并
成为了交换机产品的默认生成树协议。经过改进的 PVST
+协议在 VLAN 1 上运行的是普通 STP 协议,在其他 VLAN
上运行 PVST 协议。PVST+协议可以与 STP/RSTP 互通,
在 VLAN 1 上生成树状态按照 STP 协议计算。在其他 VLAN
上,普通交换机只会把 PVST BPDU 当作多播报文按照
VLAN 号进行转发。但这并不影响环路的消除,只是有可
能 VLAN 1 和其他 VLAN 的根桥状态可能不一致。
21.6.2 Enhance PVST+
增强型 PVST+允许 PVST+和 MST 之间互操作,MISTP 模式是在一些 Catalyst 交换机上 Cisco 私有的
一种 MST 实现。
多实例生成树协议 MISTP(Multi-Instance Spanning Tree Protocol)定义了“实例”(Instance)的概
P a g e | 510
CCIE R/S & Service Provider Exam Certification Guide
念。简单的说,STP/RSTP 是基于端口的,PVST/PVST+是基于 VLAN 的,而 MISTP 就是基于实例的。所谓
实例就是多个 VLAN 的一个集合,通过多个 VLAN 捆绑到一个实例中去的方法可以节省通信开销和资源占
用率。
在使用的时候可以把多个相同拓扑结构的 VLAN 映射到一个实例里,这些 VLAN 在端口上转发状态
将取决于对应实例在 MISTP 里的状态。值得注意的是网络里的所有交换机的 VLAN 和实例映射关系必须都
一致,否则会影响网络连通性。为了检测这种错误,MISTP BPDU 里除了携带实例号以外,还要携带实例
对应的 VLAN 关系等信息。MISTP 协议不处理 STP/RSTP/PVST BPDU,所以不能兼容 STP/RSTP 协议,甚至不
能向下兼容 PVST/PVST+协议,在一起组网的时候会出现环路。为了让网络能够平滑地从 PVST+模式迁移
到 MISTP 模式,Cisco 在交换机产品里又做了一个可以处理 PVST BPDU 的混合模式 MISTP-PVST+。网络升
级的时候需要先把设备都设置成 MISTP-PVST+模式,然后再全部设置成 MISTP 模式。
MISTP 带来的好处是显而易见的。它既有 PVST 的 VLAN 认知能力和负载均衡能力,又拥有可以和
SST 媲美的低 CPU 占用率。不过,极差的向下兼容性和协议的私有性阻挡了 MISTP 的大范围应用。
21.6.3 MST( 802.1s )
MST 这个缩写有 2 种解释:
Mono Spanning Tree
Multiple Spanning Tree
多生成树协议 MSTP(Multiple Spanning Tree Protocol)是 IEEE 802.1s 中定义的一种新型多实例化生
成树协议。这个协议目前仍然在不断优化过程中,现在只有草案(Draft)版本可以获得。不过 Cisco 已经
在 CatOS 7.1 版本里增加了 MSTP 的支持,华为公司的三层交换机产品 Quidway 系列交换机也即将推出支
持 MSTP 协议的新版本。
MSTP 协议精妙的地方在于把支持 MSTP 的交换机和不支持 MSTP 交换机划分成不同的区域,分别
称作 MST 域和 SST 域。在 MST 域内部运行多实例化的生成树,在 MST 域的边缘运行 RSTP 兼容的内部生
成树 IST(Internal Spanning Tree)。
MST 域内的交换机间使用 MSTP BPDU 交换拓扑信息,
SST 域内的交换机使用 STP/RSTP/PVST+ BPDU 交换拓扑信
息。在 MST 域与 SST 域之间的边缘上,SST 设备会认为对接
的设备也是一台 RSTP 设备。而 MST 设备在边缘端口上的状
态将取决于内部生成树的状态,也就是说端口上所有 VLAN
的生成树状态将保持一致。
P a g e | 511
CCIE R/S & Service Provider Exam Certification Guide
MSTP 设备内部需要维护的生成树包括若干个内部生成树 IST,个数和连接了多少个 SST 域有关。
另外,还有若干个多生成树实例 MSTI(Multiple Spanning Tree Instance)确定的 MSTP 生成树,个数由配
置了多少个实例决定。
MSTP 相对于之前的种种生成树协议而言,优势非常明显。MSTP
具有 VLAN 认知能力,可以实现负载均衡,可以实现类似 RSTP 的端口
状态快速切换,可以捆绑多个 VLAN 到一个实例中以降低资源占用率。
最难能可贵的是 MSTP 可以很好地向下兼容 STP/RSTP 协议。而且,MSTP
是 IEEE 标准协议,推广的阻力相对小得多。
MISTP 就是 Cisco 对 MST 的私有实现:
21.6.4 RSTP
生成树的发展过程如下:
P a g e | 512
CCIE R/S & Service Provider Exam Certification Guide
生成树协议 IEEE 802.1d 虽可在 50 秒内恢复连接,但已不能满足现代交换式网络和应用的需要,
在 802.1w 中定义的 RSTP 协议可解决 802.1d 的自恢复问题。快速生成树协议(RSTP)是从生成树算法的
基础上发展而来的,通过配置消息来传递生成树信息,并通过优先级比较来进行计算。快速生成树能够
完成生成树的所有功能,优异之处在于快速生成树减小了端口从阻塞到转发的延时,快速恢复网络的正
常工作状态。它采用桥-桥握手机制,并不采用 802.1d 中根桥所指定的计时器。
快速生成树协议与生成树协议的区别不少:如端口状态迁移方式不同;配置消息的格式不同;拓
朴改变消息的传播方式不同。
RSTP 端口状态
其中丢弃状态时原有的禁用,侦听和阻塞状态的一个整合。
RSTP 端口角色
除了对根端口和 802.1d 中的指定端口进行了定义之外,还增加了两种新的作用:一是备份
端口。指定端口向生成树提供的路径备份。二是替代端口。为当前根端口所提供的根桥提供了
替代路径。RSTP 中新定义的端口作用使替代端口可以进行快速转换,能转发根端口的故障。
备份端口 ——用于指定端口到生成树树叶的路径的备份,仅在到共享 LAN 网段有 2 个
或 2 个以上连接,或 2 个端口通过点到点链路连接为环路时存在
P a g e | 513
CCIE R/S & Service Provider Exam Certification Guide
替代端口 ——提供了替代当前根端口所提供路径、到根网桥的路径
RSTP 计时器
RSTP 旨在尽快地将根端口和指定端口转成转发状态,以及将替代和备份端口转成阻塞
状态。为防止生成转发环路, RSTP 在网桥间采用了明确的“握手”功能,以确保端口作用
在网络中分配的一致性。
左图介绍了将端口转换成转发前达成的协定 / 建议握
手。当链接激活时,
“P1”和“P2”都成为处于放弃状态的指
定端口。
在这种情况下,“ P1 ”将向交换机 A 发送一个建议
BPDU 。收到新 BPDU 后,交换机 A 将确认根交换机有较优
根成本。因为 BPDU 包含较高的根优先级,交换机 A 在将
新的根端口“ P2 ”转入转发状态前,会先启动同步机制。
如果一个端口处于阻塞状态或是一个边缘端口(位于网桥
LAN 边缘或连接到终端工作站),该端口与根信息同步。
端口 3 (“ P3 ”)已满足上述要求,因为它已经是阻
塞的。因此,不会对该端口采取任何行动。但是,
“ P4 ”是
一种指定端口,需要阻塞。一旦交换机 A 上的所有接口处于
同步状态,
“ P2 ”就会承认从前从根接收的建议,并可以安
全地转入转发状态。在收到交换机 A 的认可后,根交换机将
立即将“ P1 ”转入转发。建议 / 协定信息的类似传送波将
从“ P4 ”传播至网络枝叶部分。
由于这种握手机制不依赖计时器,因此它可以快速地传播至网络边缘,并在拓扑结构变更后迅速
恢复连接。如果协定并未复制建议信息,端口会转换成 802.1D 模式,并通过传统听学顺序转入转发状
态。需要说明的是, 802.1w 协议只适用于点到点链接。在媒体共享的情况下, 802.1w 协议将转换成
802.1D 运行。
UplinkFast RSTP
Uplinkfast 是 IEEE 对 cisco 私有的 Uplinkfast 机制的扩展,他不需要像 cisco 那样清空 CAM 表
的所有条目,而只需要清空上游交换机中的 CAM 表部分条目即可,此时也不需要 UplinkFast 的
伪多播分组生成过程
边缘端口
边缘端口类似于以前 Cisco 实现的 PortFast 功能。新的根端口从阻塞到转发的实现:原
有根端口已经知道自己不再是根端口了,进入阻塞状态。新的根端口连接的网段的指定端口
处于转发状态,这个新的根端口就可以无延时地进入转发状态。非边缘指定端口从阻塞到转
发:此个端口连接着其他网桥。等待进入转发状态的指定端口向下游网桥发送一个握手请求
报文,若下游的网桥响应了,则这个指定端口就可以无延时地进入转发状态。
边缘端口从阻塞到转发:边缘端口直接和终端设备相连,不再连接任何网桥的端口。网
桥启动后这些端口即无延时地快速进入转发状态。
RSTP 拓扑变化:
RSTP 拓扑变化仅在边缘端口进入转发状态才会导致。当 RSTP 网桥检测到拓扑变化,会发
生下列事件
P a g e | 514
CCIE R/S & Service Provider Exam Certification Guide
如果必要,RSTP 网桥可以对其所有的非边缘指定端口和根端口上启动一个 TC 当
型定时器(TC while timer),其时间是 2 倍的 Hello-time
RSTP 网桥刷新所有与这些端口相关的 MAC。
只要在端口上运行 TC while 定时器期间,该端口发送 TC 位被置位的 BPDU,该定
时器激活期间根端口也发送 BPDU
RSTP 的拓扑变化扩散处理与 STP 不同,当一个网桥从邻居受到一个 TC 位置位的 BPDU 的时
候,发生下列事件
网桥清除从其他所有
端口上学习到的 MAC 地址(收到拓扑变化的端口除外)
网桥在所有指定端口
和根端口上启动 TC While 定时器并发送 TC 位置位的
BPDU(RSTP 不再使用老式的 TCN BPDU,除非有老式网
桥需要被通告)
RSTP BPDU 格式:
通过STP实现链路冗余管理
正确理解 STP 原理和配置,对于维持交换网络的正常运行有重要的影响。设计好生成树,
可以使网络保持良好的性能。
通过人工设定的方法为网络指定网桥的优先级别,将其置于网络的中心位置,保证该网桥
能被选举为根网桥,并配备备份根网桥是实现链路优化管理的手段之一。为更好地定制生成树,
可通过调整交换机的端口 ID、端口成本、网络直径等方法来实现。
快速生成树改进的只是生成树的收敛时间,没有解决在整个桥接网络只应用一个单生成树实例的
不足。网络设计时最好使网络直径不超过 7。
21.6.5 RSTP和MST的配置
开启 RSTP:
在全局模式下配置:
P a g e | 515
CCIE R/S & Service Provider Exam Certification Guide
Switch(config)#spanning-tree vlan vlan-id 打开 PVST+
Switch(config)#spanning-tree mode rapid-pvst
配置 MST
开启 MST
Switch (config) # spanning-tree mst configuration
在交换机输入 MST 配置模式后,你可以用命令映射 VLANs 到一个 MST 实例:
Switch (config-mst) # instance instance-id vlan vlan-range
用命令指派区域名:
Switch (config-mst) #name name
并用命令设置修订号:
Switch (config-mst)# revision number
回到全局模式:设置生成树模式为 MST
Switch (config) # spanning-tree mode mst
配置 MST 根交换机:
Switch(config)#spanning-tree mst instance-id root primary/secondary
Diameter num hello-time time
配置交换机优先级
Switch(config)#spanning-tree mst instance-id priority priority
P a g e | 516
CCIE R/S & Service Provider Exam Certification Guide
配置交换机路径开销
Switch(config)#spanning-tree mst instance-id cost cost
配置交换机端口优先级
Switch(config-if)#spanning-tree mst instance-id priority priority
配置 MSTP 定时器
Hello-time
Switch(config)#spanning-tree mst hello-time time
默认 2s,修改范围 1s~10s
Forward-delay
Switch(config)#spanning-tree mst forward-time time
默认 15s,修改范围 4s~30s
Max-age
Switch(config)#spanning-tree mst max-age time
默认 20s,修改范围 6s-40s
配置最大跳数限制
Switch(config)#spanning-tree mst max-hop hop-count
默认 20,修改范围 1-40
21.7 EtherChannel
以太信道是 cisco 的私有技术,通过将多个链路局和为一个逻辑链路来增加中继速度,提供从 10Mbit/s
到 160Gbit/s 的速率。总共有 4 种类别:标准以太信道,快速以太信道(FEC),GEC,10GEC
21.7.1 以太信道概述
默认情况下,cisco 交换机支持将 2~8 条链路组成一个信道。如下图所示
随着对中继线路的带宽需求越来越高,cisco 采用了多条链路绑定为一个信道的方式来支持,以太
信道可以部署在数据中心和配线间之间的那段链路,特别是在广域网络单条链路带宽较小的情况下,可
以使用这种方式扩大带宽,同时对一些关键应用的服务器,例如 IPTV 点播服务器,媒体服务器等也可以
P a g e | 517
CCIE R/S & Service Provider Exam Certification Guide
采用这种方式,提高带宽。
21.7.2 分发方式
帧分发方式 cisco 采用一种私有的 hash 散列算法,将不同的帧,通过散列算法在多条链路中平均
分担,达到负载平衡。但由于这种方式 2 层发送者的 mac 地址会产生变化,所以接受方需要采用按目
的 mac 和 ip 进行转发。
以太信道聚合是另一种方式
这种聚合方式有 2 种:
1.
端口聚合协议 PAgP:Cisco 私有
2.
链路聚合控制协议(LACP):IEEE802.3ad
21.7.3 PAgP
PAgP(Port Aggregation Protocol)是一个 cisco 专有协议,它可以将具有相同速度,双工模式,本
地 vlan ,vlan 范围和中继状态和类型接口组合在一起。PAgP 定义了如下几种模式
只要模式兼容,处于不同 PAgP 模式的端口均可以成为一个以太信道。在 CatOS 上,配置一个以太
信道自动创建一个管理组。指定一个 1~1024 的整数,以太通道属于该组。一个管理组最多可以包含 8
P a g e | 518
CCIE R/S & Service Provider Exam Certification Guide
个端口,每个以太信道被自动赋予一个以太信道 ID。
a)
PAgP 不会在动态VLAN 端口上建立聚合。因为动态VLAN 可以强迫端口改为另一个VLAN。
b)
PAgP 要求通道中所有的端口同属于一个VLAN,或者配置为Trunk 端口。
c)
如果改变了通道中一个端口的速率或者单双工方式,那么通道中所有端口都设为这一速率或单
双工方式。
21.7.4 LACP
LACP(Link Aggregation Control Protocol)与 PAgP 等价,同属于链路聚合协议,但 LACP 属于 IEEE 802.3ad
定义的开放性标准。使用 LACP 处理信道分为主动和被动模式。要在 LACP 中自动启动以太网信道配置,
至少需要将链路的一端设置为主动模式已初识化信道。因为处于被动模式的端口只能被动的响应初始小
溪,永远不会发起初始 LACP 分组。4 种模式定义如下:
On 模式将端口强制为信道而不需要 LACP。在 On 模式下,只有当一个处于 on 模式的端口联机俄
到另一个 on 模式的端口才能产生可用的以太信道。
Off 模式阻止端口进入信道。Passive 模式类似于 PAgP 的 auto 模式,因为它将端口置于被动协商状
态,该模式不发出初始 LACP 分组,但响应 LACP 分组,并可以进入信道模式。它是 LACP 的默认模式。
Active 模式,主动发起初始 LACP 分组,同时主动和 passive 模式端口协商形成以太信道
21.7.5 以太信道配置
以太信道配置和中继,动态 vlan,STP 和其他一些协议相关,如果配置不当,一些信道接口将会被
自动禁用以避免环路问题。
为减少以太信道故障排除时间,需要遵循以下建议:
将一个信道的所有端口放在同一个 vlan 中,或者都配置为中继端口。
不要配置以太信道内的端口做为动态 vlan 端口
启用端口安全特性的端口不能形成以太信道。
如果端口是 SPAN 的目的端口也不能形成以太信道。
启用以太信道内的所有端口。
具有不同 STP 端口开销的接口能形成一个以太信道,只要他们其他配置兼容。
P a g e | 519
CCIE R/S & Service Provider Exam Certification Guide
首先选定一定范围的端口:
Switch(config)#interface range fa 0/1 - 5
聚合协议选择:
switch(config-if-range)#channel-protocol ?
lacp
pagp
Prepare interface for LACP protocol
Prepare interface for PAgP protocol
如果采用 LACP,则在端口下可用 lacp port-priority 28 指定端口优先级,
全局下用 lacp system-priority 24 指定交换机优先级
将端口加入组:
sw2(config-if-range)#channel-group ?
<1-64>Channel group number
sw2(config-if-range)#channel-group 1 mode ?
active
Enable LACP unconditionally
auto
Enable PAgP only if a PAgP device is detected
desirable
Enable PAgP unconditionally
on
Enable Etherchannel only
passive
Enable LACP only if a LACP device is detected
如果端口不匹配,将会出现
06:00:22: %EC-5-ERRPROT: Channel protocol mismatch for interface Fa0/5 in group 1: the
interface can not be added to the channel group
察看以太信道:
sw2#sh etherchannel 1 summary
Flags: D - down
P - in port-channel
I - stand-alone s - suspended
H - Hot-standby (LACP only)
R - Layer3
S - Layer2
u - unsuitable for bundling
U - in use
f - failed to allocate aggregator
d - default port
Number of channel-groups in use: 1
Number of aggregators:
1
Group Port-channel Protocol
Ports
------+-------------+-----------+----------------------------------------------1
Po1(SU)
Fa0/6(P)
Fa0/7(D)
Fa0/9(D)
Fa0/10(s)
使用帧分发技术:
sw2(config)#port-channel load-balance ?
dst-mac Dst Mac Addr
src-mac Src Mac Addr
P a g e | 520
Fa0/8(D)
CCIE R/S & Service Provider Exam Certification Guide
Chapter 22 多层交换
22.1多层交换概述
三层交换的组成:
结合了 2 层交换和 3 层路
由功能于一身。路由器一
般只能传几千个包,使用
3 层交换,可以达到几百
万个包传输。三层交换机
具有路由转发功能(路径
选择、负载均衡和汇总、
多种路由协议路由)和包
转发功能(NetFlow 交换和 CEF 交换、基于硬件的包交换、3 层和 4 层转发性能等同于 2 层转发性能),以
及智能的服务从而便于管理、诊断并且提高应用的可靠性(提供:网络管理、高可用性、安全、QoS 和 I
P 组播)。
传统的 2 层交换,3 层路由的结构如下:
随着高速网络的发展,告诉网络瓶颈之一就是路由器中的决策过程。软件重写 PDU 导致转发速度
提升较为缓慢。随着硬件技术的提高,可以实现基于硬件的重写 PDU 头。
IP 单播数据包和包重写(三层包转发需要被改写部分内容)
P a g e | 521
CCIE R/S & Service Provider Exam Certification Guide
KK 很多软件和硬件的组合都支持基于硬件的 PDU 头重写和转发,cisco 采用 2 种方式实现,一种是
MLS 多层交换技术, 另一种为 Cisco 的快速转发(CEF).
MLS 是由少数旧 Catalyst 交换机使用的提供线速路由选择的技术。有时候被称为,一次路由,多次
交换。即一个数据流的第一个分组被路由器软件路由,后续分组则由交换机硬件来转发。
CEF是新的Cisco设备使用的提供线速路由选择的技术。MLS查看流中的第一个分组,并缓存所需的
信息来允许后续分组能独立于路由处理器进行交换。而CEF完全绕过路由处理器。
3 层交换的结构:
22.1.1 MLS构成
MLS(MultiLayer Switching,多层交换)为交换机提供基于硬件的第三层高性能交换。它采用先进的专
用集成电路(ASIC)交换部件完成子网间的 IP 包交换,可以大大减轻路由器在处理数据包时所引起的过高
系统开销。
MLS 是一种用硬件处理包交换和重写帧头,从而提高 IP 路由性能的技术。Cisco 多层交换技术支持
所有传统路由协议,而原来由路由器完成的帧转发和重写功能现在已经由交换机的硬件完成。MLS 将传
统路由器的包交换功能迁移到第三层交换机上。当然,这首先要求交换的路径必须存在。
MLS 由以下三个部分组成:
1.
多层路由处理器 (MLS-RP) 它相当于网络中的路由器,负责处理每个数据流的第一个数据包,
协助 MLS 交换引擎 (MLS-SE)在第三层的 CAM 中建立捷径条目(Shortcut Entry)。MLS-RP 可以
是一个外部的路由器,也可以由三层交换机的路由交换模块(RSM)来实现。
2.
多层交换的交换引擎 (MLS-SE) 它是负责处理转发和重写数据包功能的交换实体。
3.
多层交换协议 (MLSP) 它是一个轻型协议,用来通过多层路由处理器 (MLS-RP)对多层交换的
交换引擎进行初始化。
22.1.2 MLS流
一个 MLS-SE 为第 3 层交换流维护一个第 3 层交换表。在创建了 MLS 缓存后,被定义为属于一个现
有流的分组能基于缓存信息进行交换。MLS 缓存为所有活动的流维护流信息。MLS 最大可以容纳 128,
000 条表项。MLS-SE 使用 flow mask 来确定如何创建 MLS 表项。Flow-mask 是基于源 IP,目的 IP 和协议,
P a g e | 522
CCIE R/S & Service Provider Exam Certification Guide
以及协议端口组合的一套标准,MLS-SE 通过来自为其操作的 MLSP 消息学习 flow mask。Flow mask 有 3
种模式
1.
Destination-ip
2.
Source/Destination-ip
3.
Ip-flow
22.1.3 MLS操作
以如下拓扑结构为例:
第一步:发送 MLSP Hello 信息
当路由器激活后,多层路由处理器每 15 秒发送一个 MLSP Hello 包,这些包内含路由器接口
所使用的 VLAN 标识和 MAC 地址信息。MLS-SE 通过
这些信息掌握具备多层交换能力的路由器的第二层
属性。如果交换机连接了多个 MLS-RP,MLS-SE 通过
为它们的 MAC 地址分配 XTAG 值的方法来区分每个
MLS-RP 的 MAC 地址条目。如果 MLSP 帧从同一个
MLS-RP 得到所有 MAC 地址,MLS-SE 则为其附加相同
的 XTAG 值,具体如左图所示。这些关联的记录都存
放在 CAM 中。由于 Hello 包是周期性发送的,所以,
这种方法可以保证相关值动态地跟踪网络的变化,并
可实现一定的淘汰机制。Hello 包是在第二层发布的,
它使用多播地址 01-00-0C-DD-DD-DD。
第二步:标识候选包(Candidate Packet)
在了解具有多层交换能力的路由器的相关地
址后,MLS-SE 可以对进入交换机的数据包进行匹配
判断。对于一个流中的数据包,如果 MLS 缓存中含
有与之匹配的捷径条目,则 MLS-SE 就旁路路由器而
直接转发该数据包;如果 MLS 中不含与该数据包相
匹配的捷径条目,则 MLS-SE 将它归为候选包,并在
P a g e | 523
CCIE R/S & Service Provider Exam Certification Guide
缓存中建立部分捷径(Partial shortcut)。这样的包采用传统的第二层交换机处理方式处理,并发往与
之相连的路由器接口(网关),具体见右图所示。
第三步:标识使能包(Enable Packet)
路由器收到并以传统的方式转发数据包。通过数据包的目标地址路由表得知,这个包应从 Fast
Ethernet1/0 的第二个接口转出,并将包封装为 VLAN2 帧通过 ISL 链路送回。具体过程如图所示。
此时,路由器已经重写第二层帧的帧头。同时,路由器
不仅改写了 ISL 头的 VLAN 号,而且也修改了两个 MAC 地址
域 :源MAC改为路由器出口的 MAC 地址,目标MAC改
为主机 B 的 MAC 地址。虽然数据包的 IP 地址未改写,但 IP
包头的生存时间(TTL)值被减 1,故 IP 包头的校验和也需要做
相应的修改。
这个修改后的数据包称为使能包(Enable Packet),当这个
数据包从路由器送出并穿过交换机到达目的地主机B时,要
履行下列五个功能:
1.
第二层交换机根据使能包的目的地 MAC 地址,知道该数据包应该从 PORT3/1
口转发出去;
2.
MLS-SE 得知使能包的帧头上源地址是通过 Hello 过程建立的地址记录之一;
3.
MLS-SE 根据使能包目的 IP 地址查寻在第二步中建立的部分捷径条目;
4.
MLS-SE 将与使能包源 MAC 地址相关联的 XTAG 值和部分捷径条目的对应
XTAG 值相比较,如果匹配,则表明这个使能包与第二步中的候选包来自同
一个路由器;
5.
MLS-SE 完成该捷径条目的建立过程,该捷径记录将包含重写数据流中的后续
包帧头所需的所有信息。
第四步:直接交换(转发)数据流中的后续包
当后续的数据包被主机 A 送出后,MLS-SE 利
用数据包中的目标 IP 地址查找在第三步建立的完
整捷径。地址匹配后,MLS-SE 利用重写引擎修改
帧头信息,然后直接转发给主机 B(数据包不发给
路由器)。重写操作修改帧头域,其值同第一个被
路由器修改的数据包的域值一样。详见图 5 所示。
这里需要解释的是,NFFC(NetFlow Feature Card)
是装备在三层交换机中的网络流性能卡,它维护
第三层交换数据包流的交换表(MLS Cache),作为
多层交换的交换引擎部分。
P a g e | 524
CCIE R/S & Service Provider Exam Certification Guide
22.1.4 MLS硬件及软件要求
Catalyst 6000 系列交换机
带有 Supervisor 1 的 Catalyst 6000 系列交换机可以通过多层交换特性卡(MSFC1 或 MSFC2)
和一块策略特性卡(PFC)支持 MLS。装有 PFC2 的 MSFC2 利用 Cisco 快速转发(CEF)执行第 3 层(L3)
交换功能。
Catalyst 6000 系列交换机采用 MLS 技术支持 IP、IP 组播和互联网络包交换(IPX)协议。缺
省状态下,IP 和 IPX MLS 开启,I P 组播 MLS 关闭。
Catalyst 6000 系列交换机不支持外部多层交换-路由处理器(MLS-RP)。内部多层交换必须由
MSFC1 或 MSFC 2 使用 PFC 执行。
Catalyst 6000 系列 Supervisor 交换引擎软件 5.1 CSX 或更高版本支持 IP 和 IP 组播, 软件
版本 5.2(1) CSX 或更高版本支持 IPX MLS。
MSM 是 Catalyst 8510 CSR 的同等产品,具有四个内部 GB 端口连接到 Catalyst 6000 底板。
由于该产品基于 Catalyst 8510 CSR,因此已在缺省状态下采用硬件 Cisco 快速转发(CEF) (用
于 IP、IP 组播和 IPX)。您不必为 MSM 配置 MLS 就可以执行第 3 层(L3)硬件交换。
注意: MSM 已停产。MSM 的替代产品是 MSFC。
Catalyst 5000 系列交换机
Catalyst 5000 系列交换机可在 Supervisor 交换引擎 III 中使用 Netflow 特性卡(NFFC)或 NFFC
II 即可支持 MLS。 Catalyst 5000 还可使用路由交换模块 (RSM)、路由交换特性卡(RSFC)或外部
Cisco 7500 、7200 、 4500、 4700 或 3600 系列路由器支持 MLS。安装在 Catalyst 6000 交
换机上的 MSM 或 MSFC 也可用在 Catalyst 5000 的外部。
Catalyst Supervisor 引擎 软件版本 4.1(1) 或更高版本支持用于 IP 的 MLS; 软件版本 5.1
或更高版本支持用于 IP 组播的 MLS; 软件版本 5.2(1) 或更高版本支持 Catalyst 5000 系列交
换机上的 IPX。
Cisco IOS ® 路由器软件 11.3(2)WA4(4) 或更高版本在 RSM 或 Cisco 7500、7200、4700
和 4500 系列路由器上支持 MLS;Cisco IOS 版本 12.0(2) 或更高版本在 Cisco 3600 系列路由器
上支持 MLS;IOS 版本 12.0(3c)W5(8a) 或更高版本在 RSFC 上支持 MLS。
22.2 Cisco快速转发
对于 MLS 结构,在物理形式上,路由和交换好像是分离了,但实际上并没有。这主要是指那台小
路由器还是常规的路由器,三层以上的路由交换都是还是它来完成的,交换机在这个时候更像是一条物
理线路,仅负责数据传送,交换机上的 cache 结构简单,容量也相对较小,仅存放 一条条源 MAC 和目
的 MAC 地址的配对。
22.2.1 MLS和CEF的比较
MLS 有较大的缺陷,采用 Flow Mask 形式,每次流转发都要经过一次路由,才能将后续报文进行交
换。当一个网络浏览特别大的时候,且过滤颗粒度非常小的时候,将会产生大量的流。因此会导致路由
器转发丢失一些报文,
CEF 采用一个 4 级每级 256 条通道结构的转发表来指明转发条目的位置,转发表有 next hop 等信
息,涵盖了整个 IPv4 的地址范围,并有指针指向另一个邻接表。转发条目(MAC 地址之类)都存储在一个
单独的邻接表上。这两个表包括了所有的转发信息,而这些转发信息是根据路由表和 ARP 来构造的。
P a g e | 525
CCIE R/S & Service Provider Exam Certification Guide
CEF 简化了查询的步骤,提高了单位时间的工作效率。而且从整体上来看,路由信息和转发信息是分离
的,数据包的转发只根据转发信息而不用参照路由信息,可以充分利用专用硬件的功能来达到线速转发,
而不受路由变化或者其他因素的干扰,保证了转发的高速高效。
CEF 转发提供 3 张表
FIB:从路由选择表中拷贝过来的转发信息,包括路由选择表中用于转发路由分组所必须
的最少信息。
邻接表:维护一个邻接节点以及他们相关的 2 层 MAC 重写或吓一跳信息数据库
NetFlow Table:用于统计网络数据等
需要指出的是,CEF 的转发信息不是存储在 cache 里的,因此也不存在过期作废或定时刷新,只有
根据路由表的变化而进行的更改,通常很稳定。而且转发信息是从路由信息经过一定处理后转换过来的,
也就是说,如果在转发信息里找不到某个数据包的转发信息,那么也不用费心到路由那里去了,因为那
里肯定也没有。这个数据包的下场不是被扔掉就是转到其他转发线程中去,转发信息等于是路由信息针
对于硬件转发的一个变形。
这样的结构布局保证了路由功能和交换功能的分离(软件上)。路由功能只处理三层以上信息,如路
由信息处理、策略等,然后形成一个路由表,再根据这个路由表生成相应的转发信息。转发功能很明确,
就是根据这些转发信息来工作,没有相关信息就拒绝。而不象 MLS 那样,遇到不认识的还得回头找路
由问明白,那样降低了转发效率。
CEF 在软件形式上实现了路由和交换功能的分离,而并不意味着路由器物理结构上的分离,所以它
也可以在一些多层交换机和低端的路由器上实施。它的高速表现在以下两个方面:
一.是在在查询方式上简化了步骤,提高了速度;
二.是在分离了路由和转发功能。
22.2.2 支持CEF的硬件平台
Cisco 首先在高端路由器平台实现 CEF,此后,Catalyst 交换机也支持 CEF 的转发,但是还存在一些
差别,但均提供如下特性:
P a g e | 526
CCIE R/S & Service Provider Exam Certification Guide
1. 基于“最长地址匹配”查找的高速转发
2. 等价路径的负载均衡
3. 逆向路径转发检查(RPF)
4. 不详路由的无效
有些 CEF 特性仅在路由器上实现
1. 关闭基于 CEF 的转发能力
2. 每个前缀和每个前缀长度的 CEF 统计
3. 从负载共享路径统计数据
4. 基于每个分组的负载均衡
当您在网络中使用 CEF 时,请先考虑以下项目:
加载当前完整的 Internet 路由信息的平台所需的最小内存(推荐):
- 集中路由模块上需要 128MB
- 每个线路卡上需要 64MB
CEF 不能在一个线路卡上和 VIP-分布式快速交换同时运行。
缺省情况下,如果 Cisco IOS 软件在交换数据报时遇到 CEF 不支持的功能和封装类型,
它将采用其他交换方法(如最优交换、快速交换、过程交换)。
当前 CEF 不支持以下功能:
- 策略路由
- 网络地址翻译(NAT)
- 路由交换模块上的访问控制列表
- 多点 PPP 封装
- SMDS
- 令牌环
- ATM
- ISL 封装
以下平台支持 CEF 功能:
Cisco7000 系列路由器(需要装备 RSP7000)
Cisco7200 系列
Cisco7500 系列
Cisco12000 系列
第二代接口模块(VIP2-20、VIP2-40、VIP2-50)支持 CEF。
在不同的路由器平台上,硬件对 CEF 的支持可能会有所不同,这要由路由器中安装的路由模块和
其他硬件所决定。例如在 Cisco12000 系列路由器上,所有的线路卡都支持 CEF 交换;在 Cisco7500 系列
路由器上,要实现 CEF 交换,需要有 RSP 模块和 VIP 线路卡的支持。每个接口卡用自己的引擎独立地运
行 CEF 去转发数据包,并且都独自拥有一个对 FIB 表的拷贝。每个接口卡独立的去交换数据包,减轻了
中心路由处理模块的负担。
P a g e | 527
CCIE R/S & Service Provider Exam Certification Guide
22.2.3 CEF操作
要了解 CEF,必须先了解 Supervisor 的处理结构
Cisco Supervisor2 结构如下
底板:主要提供交换矩阵,32Gbit/s 的总线,多播复制 ASIC,网络管理处理器,还有基于 GBIC 的
2 个接口。此外还提供 PFC2 和 MSFC2 子板的连接器
PFC2:提供一组 ASIC 进行所有基于硬件的转发。通常 CEF 就是在这个卡上实现的。 他提供基于 3
层的转发引擎。提供各种 3 层表,如 FIB,邻接表等。此外,PFC 还包口基于硬件的访问控制列表和 Qos
机制的 ASIC。
MSFC2:MSFC2 提供一个处理所有 3 层控制板活动的 cpu 。控制板是处理路由计算的硬件体系结
构的一部分。MSFC2 负责处理不能由 PFC2 硬件元素处理的功能,以及所有路由选择协议活动的处理,
比如 OSPF 和 BGP 的路由选择更新。MSFC2 也负责形成 lP 路由选择表、FIB 表和邻近表。在这 3 个组件
中,监控底板和 PFC2 是强制构件,而 MSFC2 组件是可选的(尽管它是第 3 层交换十分需要的,因为它包
括形成 CEF 表的 CPU.
MSFC2 子卡上的 CPU 运行任何所配置的路由选择协议需要的所有实例。此外,CPU 还处理不能用
硬件处理的分组。MSFC2 是基于 cisco IOS 软件的路由器,并以同样方式配置。配置参数与 Cisco 7200 系
列路由器上的一样。cEF 同 Supervisor 一起默认启用。事实上,它不能关闭。对于大多数通用的 cEF 功
能,不需要特别地配置来启用 cEF ,除了路由选择协议、网络接口地址等的标准配置。在路由器初始化
时,会根据路由器软件配置中的信息构建一张路由选择表(如静态路由、直连路由,以及通过路由选择
协议交换动态学习到的路由)。在构建了路由选择表之后,CPU 自动创建 FIB 和邻近表。FIB 和邻近表显
示了按照最佳转发方式进行的出现在路由选择表中的数据。与基于通信流的流缓存不同,cEF 表是基于
网络拓扑。当一个分组进入交换机时,交换机的第 3 层转发引擎 ASIC 根据目的网络和最详细的网络掩
码澎于最长匹配查找。例如,PFC2 不是基于目的地址 172.31.10.3 进行交换,而是查找网络 172.31.10.0/24
并交换到连接该网络的接口上。并且不涉及除路由选择表和预先建立的 FIB 表之外的任何软件。此外,
一旦路由选择表中发生了变化,所有的 cEF 表会立即更新。这使得这个方法是高效的,缓存不会由于路
由翻动而无效。CEF 更加适应网络拓扑的变化。
P a g e | 528
CCIE R/S & Service Provider Exam Certification Guide
1.CEF 转发信息库:
CEF 利用转发数据库(FIB)来进行基于 IP 目的地前缀的交换决策。从概念上讲,FIB 类似于一个
路由表或信息库,它维护着一个包含 IP 路由表转发信息的镜像。当网络中路由或拓扑结构发生了
变化时,IP 路由表就被更新,而这些变化也将反映在 FIB 中。基于 IP 路由表中的信息,FIB 维护着
下一跳的地址信息。因为 FIB 条目和路由表条目之间有一一对应的关系,所以 FIB 中包含了所有已
知的路由,这样就不用维护路由高速缓存了,而先前的交换方法(比如快速交换和最优交换)都要维
护路由高速缓存。
CEF FIB 表由一棵 4 级层次的树组成,如图所示。4 级来源于 IP 议所使用的犯比特地址。层
次的每一级是基于 32 比特中的 8 位。CEF 依赖最长匹配转发算法,这意味着按降序搜索整棵树直
到“最长匹配”,即匹配最大比特数。FIB 树分层表示,树的顶端是最不详细的地址,底端是最详
细的地址。每个叶以 8 比特为边界,按降序排列更详细的表项。这棵树(通常被认为是一个 256 路
的分支树)提供了一种用于快速查找的高效机制,确保查找过程中产生最少的延迟。这棵树也提供
一个高扩展性的体系结构,因为它能以相比与表效率来说最小的性能开销完全统计 IPv4 编址。每
个树叶提供了一个到邻近表中相应下一跳表项的指针。
2.邻接表(Adjacency Table)
如果网络中的网络节点只通过一跳就可以穿越链路层而彼此到达对方,那么它们是邻接的。
除了 FIB 外,CEF 还利用邻接表来提供第二层的寻址信息。邻接表为所有 FIB 条目维护第二层的下
一网段地址。
邻接的发现
当路由器发现存在邻接时就增加在邻接表中,每次生成一个邻接条目(就像 ARP 协议一样),
CEF 会为那个邻接节点预先计算一个链路层头标信息,并把这个头标信息存储在邻接表中。
当决定路由时,它就会指向下一跳以及相应的邻接条目。随后,在对数据包进行 CEF 交换时,
用预先生成的头标信息来对数据包进行封装。
分解邻接
一个路由表中也许存在多条到达目标网络的路径,例如:当路由器被配置成允许冗余路径和
允许负载均衡时。对于每一个被分解的转发路径,邻接条目会被附加一个头标信息指示出那
条路径的下一跳地址。这种机制可以用来在多条路径上实现负载均衡。
需要作特殊处理的邻接类型
另外,因为邻接条目和下一跳地址相关联,所以一些特殊的邻接类型可以被用来加速交换过
程。前缀被定义后,当存在以下被缓存的邻接条目存在时,前缀需要作特殊处理。
空邻接一个以 Null0 接口为目标地址的包会被抛弃,在访问过滤器时,这可以被用作一种有
效的机制。
P a g e | 529
CCIE R/S & Service Provider Exam Certification Guide
邻接归纳
当路由器直接和几台主机相连时,FIB 表中维持的是这个子网的前缀,而不是各个主机的前
缀。这个子网前缀是一个邻接的归纳。当要转发某个数据包到某个具体主机时,邻接数据库
使用这个被归纳的邻接。
转出邻接
当遇到某些作特殊处理的功能或者 CEF 不支持的功能时,路由器将采用更高级别的交换方法
处理数据包。
丢弃邻接
数据包被丢弃。这种邻接类型仅仅在 Cisco12000 系列路由器上出现。
释放邻接
数据包被释放,但是前缀仍然有效。
没有被分解的邻接
当链路层头标信息被附加到数据包上时,FIB 需要头标指出下一跳的地址。如果 FIB 表中建立
了一个邻接,但是并没有找到第二层的寻址信息,比如没有通过 ARP 发现第二层的寻址信息,
这个邻接就被认为是不完整的。这个数据包就会交给路由模块处理,邻接关系由 ARP 来决定。
22.2.4 CEF转发过程
CEF 的两个表:
3 层包从 TCAM 开始查找;进行最长匹配,得到邻居信息,改写原有二层数据帧(下一跳 MAC 地址)
并转发。CEF 表是从路由表得来,邻居表是使用 ARP 解析得来的。
CEF 多层交换的过程:
左侧 MAC-M(MAC 地址)是 SW。右侧的 MAC-M 是 SW。
如果目的 IP 地址的 MAC 不在邻居表内,则 SW 将使用 ARP 进行解析,以得到目的地址的 MAC 地
址。
P a g e | 530
CCIE R/S & Service Provider Exam Certification Guide
ARP Throttling(ARP 抑制):在未获得目的 MAC 地址并且进行 ARP 解析时,除非 ARP 解析完成并且
在邻居表体现出来外,在解析期间,所有发往目的主机的包,将被丢弃,这就是 ARP 抑制。如左下图。
MLS 负载共享(Load Sharing):如图。FIB 最多支持 6 个到达同一目的的邻居条目。
22.3 MLS及CEF配置
22.3.1 MLS配置
要配置路由器上的 MLS,采取下列步骤:
1) 启用路由器上的 MLS。使用 mls ip rp 命令启用 Cisco 交换机上的 MLS:
c4500(config)#mls rp ip
c4500(config)#
2) 定义将要运行 MLS 接口的管理域名:
c4500(config)#mls rp vtp-domain kaka
3)连接到 Catalyst 交换机接口中的一个必须配置为管理接口。MLSP 信息包将通过该接口进行交换。
在本例中,我选择使用快速以太网 0.10 接口,但它可以是以下接口中的任意一个:
c4500(config)#interface fa0.10
c4500(config-subif)#mls management-interface
4)在所有将加入到 MLS 的接口上启用 MLS:
c4500(config)#interface fa0.10
c4500(config-subif)#mls rp ip
c4500(config)#interface fa0.20
c4500(config-subif)#mls rp ip
5)最后 ACL 可以配合 MLS
c4500(config-subif)#mls rp ip input-acl
MLS-SE 配置:
1. 在交换机上使用 Set mls enable 打开 mls 功能
2. 定义参与 mls 的外部路由器,在路由器上输入 show mls rp
P a g e | 531
CCIE R/S & Service Provider Exam Certification Guide
然后在交换机上设置:
Set mls include 209.118.4.184
MLS 可选参数:
1. 超时时间:
Set mls agingtime
2. 最小的 IP MLS 流掩码
Set mls flow {destination | destination-source | full }
22.3.2 MLS配置实例
P a g e | 532
CCIE R/S & Service Provider Exam Certification Guide
There are four VLANs (IP subnetworks):
VLAN 1 (the management VLAN), subnet 10.1.1.0/24
VLAN 10, subnet 10.1.10.0/24
VLAN 20, subnet 10.1.20.0/24
VLAN 30, subnet 10.1.30.0/24
The MLS-RP is a Cisco 7505 router with a Fast Ethernet interface (interface FastEthernet 2/0)
The subinterfaces on the router interface have these IP addresses:
FastEthernet 2/0.1 – 10.1.1.1 255.255.255.0
FastEthernet 2/0.10 – 10.1.10.1 255.255.255.0
FastEthernet 2/0.20 – 10.1.20.1 255.255.255.0
FastEthernet 2/0.30 – 10.1.30.1 255.255.255.0
A standard output ACL is configured on subinterface FastEthernet 2/0.20 (the interface in VLAN 20) on
the MLS-RP. The ACL denies all traffic from VLAN 30.
Switch A, the MLS-SE, is a Catalyst 5509 switch with Supervisor Engine III and the NFFC.
Switch B and Switch C are Catalyst 5505 switches.
Switch A is the VTP server in domain “Corporate".
Switch B and Switch C are VTP clients.
MLS-RP 配置如下:
Cisco7505(config)#mls rpip
Cisco7505(config)# access-lsit 1 deny 10.1.30.0 0.0.0.255
Cisco7505(config)# access-list 1 permit any
Cisco7505(config)# interface fa 2/0
Cisco7505(config-if)# speed 100
Cisco7505(config-if)# full-duplex
Cisco7505(config-if)# mls rp vtp-domain corporate
Cisco7505(config-if)# interface fa2/0.1
Cisco7505(config-subif)# encapsulation dot1q 1
Cisco7505(config-subif)# ip address 10.1.1.1 255.255.255.0
Cisco7505(config-subif)# mls rp management-interface
Cisco7505(config-subif)# interface fa 2/0.10
Cisco7505(config-subif)# encapsulation dot1q 10
Cisco7505(config-subif)# ip address 10.1.10.1 255.255.255.0
Cisco7505(config-subif)# mls rp ip
Cisco7505(config-subif)# interface fa 2/0.20
Cisco7505(config-subif)# encapsulation dot1q 20
Cisco7505(config-subif)# ip address 10.1.20.1 255.255.255.0
Cisco7505(config-subif)# mls rp ip
Cisco7505(config-subif)# interface fa 2/0.30
Cisco7505(config-subif)# encapsulation dot1q 30
Cisco7505(config-subif)# ip address 10.1.30.1 255.255.255.0
Cisco7505(config-subif)# mls rp ip
MLS-SE 配置
MLS-SE 配置相对简单,仅需配置端口相应的 vlan 和 VTP 即可
22.3.3 MLS检验
Cisco7505#sh mls rp
ip multilayer switching is globally enabled
ipx multilayer switching is globally disabled
ipx mls inbound acl override is globally disabled
P a g e | 533
CCIE R/S & Service Provider Exam Certification Guide
mls id is ca00.2fc4.0000
mls ip address 0.0.0.0
mls ip flow mask is destination
mls ipx flow mask is unknown
number of domains configured for mls 1
Cisco7505#sh mls rp vtp-domain corporate
vlan domain name: corporate
current ip flow mask: destination
ip current/next global purge: false/false
ip current/next purge count: 0/0
current ipx flow mask: destination
ipx current/next global purge: false/false
ipx current/next purge count: 0/0
current sequence number: 859638665
current/maximum retry count: 0/10
current domain state: no-change
domain uptime: 00:00:54
keepalive timer expires in 0 seconds
retry timer not running
change timer not running
fcp subblock count = 2
1 management interface(s) currently defined:
vlan 1 on FastEthernet0/0.1
0 mac-vlan(s) configured for multi-layer switching
0 mac-vlan(s) enabled for ip multi-layer switching:
0 mac-vlan(s) enabled for ipx multi-layer switching:
router currently aware of following 0 switch(es):
no switch id's currently exists in domain
清除 MLS 条目
kaka>(enable) clear mls entry destination 1.1.1.1 source 2.2.2.2 flow tcp 1652 23
MLS IP entry cleared
22.3.4 CEF模式
CEF 的操作模式有 2 种,即集中 CEF 模式和分散 CEF 模式。可以通过其中的任意一种来启用 CEF,
同一时刻用户只能使用其一种模式。
集中 CEF 模式
当启用集中 CEF 模式时,CEF 的 FIB 和邻接表驻留在路由处理器中,路由处理器来执行
快速转发。对于 CEF 交换来说,当线路卡不可用时,或者需要使用的功能与分散 CEF 交换不
兼容时,就可以使用集中 CEF 模式。
分布 CEF 模式
当启用分布式 CEF(dCEF)时,线路卡(例如 VIP 线路卡或者 GSR 线路卡)维护着一个与 FIB
和邻接表相同的拷贝。线路卡在端口适配器之间执行快速转发,这样,在进行交换操作时就
无须 RSP 的参与了。dCEF 使用一个“内部过程通信”(Inter Process Communication,IPC)机制,
在路由处理模块和线路卡上,保证 FIB 和邻接表的同步。
在 Cisco12000 系列路由器中,线路卡负责执行 CEF 交换。在其他路由器中,或许您使用
的不是同一种类型的线路卡,有可能某个接口卡不支持 CEF 交换。当某个不支持 CEF 交换的
线路卡收到数据包时,她将数据包转发给更高的交换层(比如路由处理模块)或者把数据包转
P a g e | 534
CCIE R/S & Service Provider Exam Certification Guide
发给下一跳处理。这种机制允许旧的接口模块和新的接口模块并存。
1
Cisco12000 系列千兆交换路由器上只运行 dCEF 模式。
2
一个 VIP 卡上不允许同时运行分布式 CEF 交换和分布式快速交换。
3
Cisco7200 系列路由器不支持分布式 CEF 交换。
附加的新功能
在配置集中模式 CEF 和分布模式 CEF 时,您还可以配置以下功能:
分布式 CEF 支持访问控制列表
分布式 CEF 支持帧中继包
分布式 CEF 支持数据包分片
支持基于每一个包或者每一个目标的负载均衡
支持网络计费,可以收集数据包的个数和字节数
分布式 CEF 支持跨隧道的交换
22.3.5 CEF操作
启用和禁用 CEF 或者 dCEF
如果用户的 Cisco 路由器中有接口处理器支持 CEF 时,就可以启用 CEF。为了启用或禁用 CEF,
可以在全局配置模式下利用下面的命令进行配置。
启用标准 CEF 模式
ip cef switch
禁用标准 CEF 模式
no ip cef switch
当线路卡执行快速转发时,则启用 dCEF,这样,路由处理模块就可以处理路由协议或
者负责交换从旧的接口模块(不支持 CEF 交换的模块)过来的数据包。在 Cisco12000 系列路由
器上,dCEF 模式是缺省启用的。所以启用 dCEF 的命令(ip cef switch)在 Cisco12000 系列路由
器上是没有意义的,在配置清单上也不会列出 dCEF 模式被启用。
为了启用或禁止 dCEF 操作,可以在全局配置模式下利用下面的命令进行配置。
启用 dCEF 模式
ip cef distributed switch
禁用 dCEF 模式
no ip cef distributed switch
有时候,在某个接口配置了一项功能,而 CEF 或 dCEF 并不支持该功能,这时您就可能需
要在这个特定的接口上禁止 CEF 或 dCEF。例如,策略路由和 CEF 就不能一起使用。您可能想
让一个接口支持策略路由,而让其他的接口支持 CEF。在这种情况下,可以按全局模式启用
CEF,而在那个打算配置策略路由的接口上禁用 CEF。这样,除了那一个接口外,在其他所有
接口上都启用了快速转发。
在某个接口上禁用 CEF 或 dCEF,可以在接口配置模式
no ip route-cache cef
尔后又想重新启用 CEF,在接口配置模式下,可以使用:
ip route-cache cef
在 Cisco12000 系列路由器上,您不可以在某个接口上禁用 dCEF 模式。
P a g e | 535
CCIE R/S & Service Provider Exam Certification Guide
22.3.6 CEF负载均衡
为 CEF 配置负载均衡
配置基于目的地的负载均衡
基于目的地的负载均衡允许路由器将使用多条路径来均衡负载。对于某一源/目标
主机,数据包转发采用同一路径,即使有多个路径可用,也将这样处理。对于到达不同
目的地的数据包则可以采用不同的路径。当启用 CEF 时,基于目的地的负载均衡功能缺
省被启用。大多数情况下,都采用这种负载均衡方法。
因为基于目的地的负载均衡是依赖于对数据流的统计来分布信息的,所以随着“源
/目的地对”个数的增加,负载均衡会变得更加有效。
禁用基于目的地的负载均衡
当启用基于数据包的负载均衡功能时,必须先禁用基于目的地的负载均衡功能。为了禁
用基于目的地的负载均衡功能,可以在接口配置模式下,
no ip load-sharing per-destination
配置基于数据包的负载均衡
使用基于数据包的负载均衡,路由器可以在路径上连续发送数据包,而不用考虑具体的
主机或用户情况。这种负载均衡机制采用轮转办法来确定每个数据包采用哪条路径到达目的
地。基于数据包的负载均衡可以保证在多条链路上进行负载均衡。
要启用基于数据包的负载均衡功能,可以在接口配置模式下,
ip load-sharing per-packet
22.3.7 为CEF配置网络记账功能
启用收集被快速转发到某个目的地的数据包个数和字节数
ip cef accounting per-prefix
启用收集通过某个目的地被快速转发的数据包的个数
ip cef accounting non-recursive
在全局配置模式中为 CEF 启用网络记账功能后,相应的路由处理器会收集记账信息。当用户为 dCEF 启
用网络记账功能后,线路卡上会收集记帐信息。
查看网络记帐信息
show ip cef
22.3.8 为CEF配置跨隧道的交换
CEF 支持跨隧道的交换,例如 GRE 隧道。当你启用 CEF 或者 dCEF 模式时,跨隧道的交换会被自动
启用,所以您无需再执行任何附加操作来启用跨隧道的交换。
22.3.9 CEF检验
Cisco7505#sh ip cef detail
IP CEF with switching (Table Version 5), flags=0x0
5 routes, 0 reresolve, 0 unresolved (0 old, 0 new), peak 0
5 leaves, 8 nodes, 9080 bytes, 10 inserts, 5 invalidations
0 load sharing elements, 0 bytes, 0 references
universal per-destination load sharing algorithm, id 9466A8C7
3(0) CEF resets, 0 revisions of existing leaves
Resolution Timer: Exponential (currently 1s, peak 1s)
0 in-place/0 aborted modifications
P a g e | 536
CCIE R/S & Service Provider Exam Certification Guide
refcounts: 2311 leaf, 2304 node
Table epoch: 0 (5 entries at this epoch)
0.0.0.0/0, version 0, epoch 0, attached, default route handler
0 packets, 0 bytes
via 0.0.0.0, 0 dependencies
valid no route adjacency
0.0.0.0/32, version 1, epoch 0, receive
224.0.0.0/4, version 4, epoch 0
0 packets, 0 bytes
via 0.0.0.0, 0 dependencies
next hop 0.0.0.0
valid drop adjacency
224.0.0.0/24, version 3, epoch 0, receive
255.255.255.255/32, version 2, epoch 0, receive
MSFC2#sh ip cef summary
IP CEF with switching (table Version 477965)
445 routes , 0 reresolve, 0 unresolved ( 0 old, 9 new)
446 leaves, 76 nodes, 132560 bytes, 477966 inserts,
477520 invalidations
0 load sharing elements , 0 bytes, 0 references
1CEF resets , 2 revisions of exsiting leaves
Refcounts: 15824 leaf, 15038 node
Default 192.35.86.0/24
22.4 多层交换中的冗余
22.4.1 冗余引擎
冗余交换网络不会产生单点故障:如图。
冗余引擎允许配置自动备份。切换时会出现流量的中断。
RPR(Route Processor Redundancy)和 RPR+(RPR Plus):
RPR 切换时间需要 2-4 分钟;
在主引擎运行时,备份引擎是启动的,但 MSFC 和 PFC 是不工作的。
RPR+切换时间需要 30-60 秒;
在主引擎运行时,备份引擎是启动的,MSFC 和 PFC 是工作的。
产生 RPR 的几种情况:主和备引擎时钟同步失败;主引擎上的 MSFC 或 PFC 出现故障。
P a g e | 537
CCIE R/S & Service Provider Exam Certification Guide
RPR+功能增强体现在:
减缓切换时间;
备份引擎是完全启动的;主和备是启动配置和运行配置以及模块状态都是同步的。
切换时服务不会中断,运行配置是不会丢失的;
模块无须重新启动或复位。支持冗余引擎热插拨。可以使用手工命令进行切换。
同步分批量和增量。当主引擎运行时,备份引擎启动后,主引擎配置和备份引擎配置将一次性同
步,称之为批量。批量过来的配置,将覆盖掉原备份引擎上的配置。
主引擎配置更改备份引擎配置是增量进行同步。
RPR+有些限制:
不支持 VLAN Database 下配置的同步;不支持基于 SNMP 来配置的同步;两个引擎(主和
备)只有一个是在工作状态;不支持 Mirror(镜像)和负载均衡;主、备引擎必须使用完全相同
版本的 IOS 软件才能支持 RPR+,否则只支持 RPR;在主引擎将内存中内容导出才能进行切换
(也可以禁止内存导出以减少切换时间过长);在切换时 FIB 表会被清空,动态路由需要重新计
算,需等待,而静态路由将不受影响;在切换时,主引擎上一些动态的信息不会同步到备份
引擎上,因此会丢失一些动态信息(如 SVC、ppp Session、BGP Nei and session);主引擎和备份
引擎必须插入插槽 1 和 2 中;主备引擎硬件配置必须完全一样;主备引擎各使用一条 Console
线缆,不要使用 Y 型线缆;在 Startup-config 中的寄存器配置必须设置为自动启动。
在 RPR+上配置和检验冗余引擎:
在配置模式下启用并进入冗余模式:
Switch(config)#redundancy
指定 RPR+模式:
Switch(config-red)#mode rpr-plus
显示引擎冗余信息:
Switch#show redundancy states
如何实现冗余上行链路:
存在单点故障的上联链路,虽然是冗余的
解决方法,如图。
主 Link 接主引擎的主接口,备 Link 接备引擎的备接口。
22.4.2 冗余电源
电源可以使用两种方式工作:组合(非冗余)和备份(冗余+负载均衡)方式。
配置启用冗余电源功能:
Switch(config)#power redundancy-mode combined | redundant
显示电源信息命令:
Switch#show power
关闭电源模块命令:
switch(config)#no power enable module x
P a g e | 538
CCIE R/S & Service Provider Exam Certification Guide
重启电源模块命令:
switch(config)#power cycle module x (执 s 行后电源关闭 5 秒后重启)
电源功率和所使用的模块数量有着直接的关系,模块数量越多电源功率要求越大。使用电源冗余,
SW 的功率要小于单个电源的功率。
22.4.3 双机冗余
双机冗余通常采用我们熟悉的 HSRP 或者 VRRP,前文已经对 HSRP 和 VRRP 有了详细叙述:
单点故障问题:
使用默认网关的单点故障问题(ARP 超时)。如图。
使用代理 ARP(Proxy ARP)的单点故障问题(ARP 超时)。如图。
使用 IRDP(类似 RIP,但不是路由协议,全称为 ICMP 路由发现协议,是 ICMP 的一种扩展-ICMP
发现协议),通过路由器发送 IRDP,终端可自动发现网关,但收敛时间会非常长。如图。
P a g e | 539
CCIE R/S & Service Provider Exam Certification Guide
22.4.4 HSRP
HSRP(热备份路由协议)将多个路由器模拟出一个虚拟路由器(有 IP 和 MAC 地址),终端网关为
虚拟路由器地址。HSRP 是 CISCO 私有的。
HSRP 由多个路由器形成一个路由器备份组,其中一个路由器为活动 Router,另外一个为备份
Router,
运行了 HSRP 的路由器会定期发送 Hello 报文,HSRP 有两种计时器:Hello Interval(Hello 间隔
时间)和 Hold Interval(Hello 保持时间)。活动和备份路由器通过选举而产生,根据路由器优先级进行
选择(值高级高),活动路由器模拟虚拟路由器。活动路由器负责接收和处理终端向虚拟路由器发送
的流量。如右上图。虚拟路由器的 IP 地址是人为配置,MAC 地址是有规律的。HSRP 组号为 47,
十六制为 2F,MAC 地址最后一位为 2F,07.ac 为 HSRP 代码,0000.0c 为 CISCO 厂商代码。接口 ARPA
意为以太网。如下图。虚拟路由器 IP 和 MAC 地址保存在 ARP 缓存中。
活动和备份路由器的交互。活动路由器定期向以太网上发送 Hello 报文,告诉其它路由器我
是活动路由器。我的优先级、Hello 间隔、Hold 间隔及虚拟路由器和活动路由器自己的 IP 地址。备
份路由器会监听、检测活动路由器的状态。备份路由器同样也定期向网络上的路由器通告自己的
P a g e | 540
CCIE R/S & Service Provider Exam Certification Guide
情况(同活动路由器一样)。活动、备份路由器失效时虚拟路由器一直是存在可用的。当活动路由器
出现故障,备份路由器在 Hold interval 内收不到活动路由器的 Hello 后,就会认为活动路由器出现
故障,然后把自己升级为活动路由器。如下图。
在以太网上(同子网的一个 VLAN 中)可以配置多个 HSRP 组。可以做负载均衡。一个接口最高
可配 255 个 HSRP 组。
HSRP 组地址可穿越 Trunk 链路
路由器可以在 HSRP 多组和多 VLAN 的情况下工作,如右下图。
HSRP 的配置命令:将路由器添加到 HSRP 组中,并设定虚拟路由器 IP 地址。
Switch(config-if)#standy 47 ip 172.16.10.110
虚拟 IP 地址必须和实际接口的 IP 地址在同一子网内。启用 HSRP 后,路由器将自动关闭 IP
重定向(ip redirects)。从而避免终端发现路由器的实际 IP 和 MAC 地址。
P a g e | 541
CCIE R/S & Service Provider Exam Certification Guide
配置 HSRP 的优先级配置:默认值为 100。
配置 HSRP 抢先:
已经选举出活动路由器后,配置此命令,可强制该路由器取代原活动路由器的角色。
配置 HSRP 计时器:Hold Time 是 3 倍的 Hello Time。Hello Time 缺省为 3 秒。范围为 1-255 秒。
HSRP Interface Tracking(接口监控):通过使用接口监控,可以自动调整接口的优先级。比如,
当一条 Link Down 掉了 HSRP 会将此接口降低优先级,活动和备份路由器角色将自动切换,从而避
免网络(流量)中断。
P a g e | 542
CCIE R/S & Service Provider Exam Certification Guide
HSRP Interface Tracking 配置命令:
Switch(config-if)#standby group-number track type number interface-priority
Interfae-Priority 为降低优先级数量。默认为 10。
显示备份组的状态:
调试命令:
22.4.5 VRRP
VRRP:Virtual Router Redundancy Protocol,基于国际标准,和 HSRP 类似。
VRRP 同样也有组名、IP 地址。IP 地址可以分配给任意一个组内的成员,被分配的那个路由器将成为
活动(主)路由器。当活动路由器 Down 掉后,其它备份路由器根据优先级进行选举活动路由器。活动路由
器恢复正常后,将抢回原来活动路由器。如下图。
22.4.6 GLBP
GLBP(Gateway Load Balancing Protocol 网关负载均衡协议):CISCO 私有。在多网关时可以自动选择和使
用多个网关到达目的地(自动选择网关)。当任意一个网关产生故障后,GLBP 可以自动检测到故障,并且
可以使用再路由。完全利用现有资源(可用带宽),减轻了管理和配置的负担
VIP(虚拟 IP 地址)10.88.1.10 是缺省网关,R1 和 R2 为一个虚拟 GLBP 组的成员,AVG 表示为活动虚拟网
关,AVF 为活动的虚拟转发者,当 R1 出现故障时,其优先级自动降低,所有发往 R1MAC 地址的数据包由
P a g e | 543
CCIE R/S & Service Provider Exam Certification Guide
R2 进行转发(R1 的 MAC 地址将出现 R2 路由器上,也就是说 R2 有两个 MAC)。一个 GLBP 组最多有 4 个路
由器充当网关。负载均衡有几种算法:加权算法;依靠主机的算法;Round Robin(轮询)算法。
又一种冗余模式:SRM(单路由器模式):需在双引擎上的 SW 上实现,双引擎各有一路由模块,通过使
用 SRM 将两个路由模块(器)模拟成一个路由模块(器),网络上只能看到一个 MSFC(指定 MSFC),另外一个
就非指定 MSFC。SRM 要求两个路由模块必须运行相同的 IOS 软件,且配置要相同,在引擎上必须激活高
可用性(High availability)功能,非指定路由模块上所有的 VLAN 接口都是 Down 状态。当指定路由器出现故
障后,非指定路由器将重新计算路由表(重新计算期间将使用原来 FIB 表)。SRM 的好处是减少路由器启动
时间。
启用并进入冗余配置模式:
Switch(config)#redundancy
启用高可用性命令:
Switch(config-r)#high-availability
启用 SRM:
Switch(config-r-ha)#single-router-mode
指定和非指定都要配置上述命令。
显示冗余配置信息:
Switch#show redundancy
22.4.7 SLB
SLB(Server Load Balancing)服务器负载均衡技术:CISCO IOS 支持该功能。基于 NAT 技术,可以将多台
服务器使用 SLB 技术模拟为一台虚拟的服务器,提高性能易管理且安全,负载均衡且具有可扩展和可用
性及可靠性。SLB 分直接(直连 directed)模式和分发模式(dispatched)。
创建真实服务器群名称并进入配置模式:
Switch(config)#ip slb serverfarm serverfarm-name
指定(真实)服务器地址:
Switch(config-slb-sfarm)#real ip-address
启用真实服务器:
Switch(config-slb-real)#inservice
定义虚拟服务器群名称并进入配置模式:
Switch(config)#ip slb vserver virtual_server_name
指定虚拟服务器地址:
Switch(config-slb-vserver)#virtual address mask
关联真实服务器和虚拟服务器:
Switch(config-slb-vserver)#serverfarm farm_name
启用 IOS 的 SLB 虚拟服务器服务:
Switch(config-slb-vserver)#inservice
指定允许访问虚拟服务器的客户端地址:
Switch(config-slb-vserver)#client address mask
一些检验命令:
显示服务器组:
sh ip slb serverfarms
显示真实服务器组:
sh ip slb reals
显示虚拟服务器组:
sh ip slb vserver
显示当前 SLB 连接:
sh ip slb conns
P a g e | 544
CCIE R/S & Service Provider Exam Certification Guide
Chapter 23 Multicast组播服务
23.1 组播简介
23.1.1 组播的优势:
当完全相同的数据要发送给多个接收者时(天气预报、股市行情、远程音/视频传输……)
在前面所述情况下,相对于单播的广播传送技术,组播可以更有效的利用网络带宽,并在很大程
度上降低对主机和网络设备系统资源的占用。
发送者无需事先知道接收者的地址,接收者可自由加入或退出组播接收组,发送者无需为接收者
的变化对系统设置做出任何改动。
图显示的是采用单播与组播方式传送相同数据时,随着客户机数量的增加网络流量变化的
情况,在这一点上组播技术的好处非常明显,无需多说。
23.1.2 组播的缺点
组播的缺点源于它是基于UDP技术的。
Best Effort Delivery
这就意味着组播不能保证每个数据包都被正确传送到目的地。中间可能会被丢弃。
No Congestion Avoidance
组播技术本身不提供流控机制。
Duplicates
组播可能导致重复数据包的产生,应用程序应该有能力处理这一情况。
Out-of-Sequence Packets
数据包的顺序可能会被打乱。接收方要有重新排序的能力。
23.1.3 组播的应用
基于远程网络的组播传送技术目前主要依赖于 MBONE。有很多基于 MBONE 的组播传送应用程序
可以免费下载,很多程序的源代码也是公开的。 目前由于国内互联网骨干带宽有限,使用成本较高,
加之信息化、数字化水平较低等原因, 基于远程组播传送技术的应用并不多,但是随着互联网应用水
平的不断提高,在远程实时数 据传送、远程教学、远程等领域中的组播应用会越来越普遍。 这个我就
不多说了,目前在国内大规模应用组播传送技术的案例真的是不多。
P a g e | 545
CCIE R/S & Service Provider Exam Certification Guide
23.1.4 组播服务模型
RFC 1112 即 IGMP(Internet Group Management Protocol)中定义了主机可以动态加入和退出组播组。
组播组成员可以分布于Internet的任何地点。(当然了,前提是网络互联设备支持组播信息的传递)组播信
息的传递依赖于分布树,有很多组播路由协议,如 MOSPF(Multicast Extension to Open Shortest Path First)、
CBT(Core Based Tree)、
23.1.5 组播IP地址
组播的地址是保留的D类地址从224.0.0.0—239.255.255.255,
224.0.0.0—244.0.0.255
只能用于局域网中路由器是不会转发的,并且224.0.0.1是所有主机的地址,224.0.0.2所有路由器
的地址,224.0.0.5所有ospf路由器的地址,224.0.13是PIMv2路由器的地址;
239.0.0.0—239.255.255.255
私有地址(和192.168.x..x这类地址类似);
224.0.1.0—238.255.255.255
用与Internet上的。
组播地址可以动态分配,SDR 技术允许应用程序在建立新的会话时随意选用组播地址,通过冲突检
测技术避免地址的重复使用,这种方法适用于初期应用较少的 MBONE,MASC(Multicast
Address
Set-Claim)是 IETF 设计的新的组播分配方案,首先将组播地址段静态分配到不同的地区,在每个地区内
仍然采用动态租用的方案使用组播地址,想法是好的,实现起来的难度较大,周期较长。
目前的解决方案多采用静态组地址分配技术,SGAA(Static Group Address Assignment)是在 MASC 方案
得以实现之前的应急之道。采用 233/8 地址段用于静态地址分配,中间两节包含网络自治系统号,最后
一节用于组分配。
23.1.6 组播MAC地址
2层的MAC地址是如何与3层的IP地址进行映射的呢?
通过将MAC地址的前25位强行规定位0100.5e,而后23位对
应IP地址的后23位,而组播IP地址的前4位均相同如:
IP地址:
1110yyyy.yxxxxxxx.xxxxxxx.xxxxxxxx
MAC地址:
01.00.5E.0xxxxxxx.xxxxxxx.xxxxxxxx
显然有32个IP地址(有5个y可以不一样)对应一个MAC地址,
例如:224.1.1.1 ,224.128.1.1, 225.1.1, 225.128.1.1 „ 238.1.1.1, 238.128.1.1, 239.1.1.1,
239.128.1.1均对应一个组播MAC 0100。5E01。0101
所以要避免在同一网络中使用的多个组播IP地址对应一个MAC地址。
令牌环网中,三层组播地址被简单映射为功能地址 C0-00-00-04-00-00(在令牌环网中因为二进制
位是反序的,实际是03-00-00-20-00-00)或全1 地址FF-FF-FF-FF-FF-FF。缺省使用全1地址,可以用接
口命令ip multicast use-functional 更改为使用功能地址。
P a g e | 546
CCIE R/S & Service Provider Exam Certification Guide
23.1.7 组播树
有源树SPT(Shortest Path Trees)
采用最短路径优先算法, 中间的
转发设备采用 Notation(S,G)的方法记
录转发表,S 表示多播源 IP 地址,G 表
示多播组地址。
SDT(Shared Distribution Tree 共享分布树)
需要先指定 RP(Rendezvous Point 会聚点), 所有的多播源先把信息送到 RP,再由 RP 分
发到各接收点,SP相当于树根,到达R之后
的多播信息转发时与源无关,故采用
Notation(*,G)的方式记录转发表,*表示
一个通配符。
共享树分两种:
1.双向共享树
源发出的组播流可以不去RP而直接发往接收端
2.单向共享树
源发出的组播流以最短路径发往RP然后由RP负责发往接收端
P a g e | 547
CCIE R/S & Service Provider Exam Certification Guide
3.单播共享树
在某些协议中,可以直接向RP发送一个单播流,让RP再进行数据流的组播复制,
例如CBT
23.1.8 组播转发
基于发送源的 IP 地址(数据包中的源地址)而非接收者的 IP(数据包中的多播地址不代表单个接收者)
来转发。路径的选择依靠 RPF(Reverse Path Forwarding 反向路径转发)技术。包括三个过程:Broadcast(广
播)洪泛传递,假定网络上的每个主机都是多播组成员;Prune(修剪)停止向那些没有组成员存在的网络转
发多播信息;Selective Forwarding(选择性转发)如果有多条转发路 径可用,则依靠单播路由表来帮助选
择最佳路径。
逆向路径转发RPF
路由器只转发从可达源的上游路由器的接口(依靠单播路由表判断)收到的多播数据包。
RPF 检验成功则转发,RPF 检验失败则 Silently Dropped(静悄悄的丢弃)。这项技术主要防止多
次转发多播数据包。在右图中,路由器从 S0 口收到了一个来自 151.10.3.21 的多播包,可是
检查路由表后发现, 由它到网络 151.10.0.0 网络的数据包应由 S1 口发出,RPF 检验失败。
TTL Thresholds(TTL 阈值)
组播传送中的 TTL 类似于单播,但是它更灵活,可用于限制多播信息转发的范围。 一个
多播包进入路由器后,它的 TTL 值首先减 1,在从出口送出去之前,如果出口上所设置的 TTL
阈值非 0,则要进行 TTL 阈值检验,所有 TTL 值小于接口阈值的多播包将不会被发送。用接口
P a g e | 548
CCIE R/S & Service Provider Exam Certification Guide
命令 ip multicast ttl-threshold ttl
来实现。
典型的TTL阀值定义如下:
范围
初始TTL值
本地网
1
区域
15
地区
63
全球
127
Administrative Boundary
TTL域值
N/A
16
64
128
管理边界
用于限定到达特定多播组的数据包的转发。
用接口命令 ip multicast boundary <acl>来实现。
Dense Mode & Sparse mode(密模式与疏模式)
Dense
mode
采用推方式传送多播信息,假定所有的网络节点都是接收者,然后再修剪掉向那些不需要多
播信息的网络的转发,Flood & Prune 的行为每隔几分钟就要发生一次。
Sparse
mode
采用拉方式传送多播信息,除非接收端显式的声明,否则将不会向其发送多播数据。
注意:鉴于Dense mode周期性的Flood行为对网络影响较大,实际的多播网络中只采用Sparse
mode 来构建多播转发表。
23.1.9 组播路由协议简介
如何构建分布树
PIM基于单播路由表来构建树,路由器用 Join(加入)、Prune(修剪)和 Graft(嫁接)三种消息通
知上游路由器是否需要向其转发某一多播组的消息。
DVMRP很像RIP,是一种距离向量型协议,采用Poison-Reverse(毒性反转)、Prune(修剪)和
Graft(嫁接)三种消息通知上游路由器是否需要向其转发某一多播组的消息。
MOSPF 利用单播 OSPF 协议的 LSP 来传递通告,构建(S,G)转发条目。
P a g e | 549
CCIE R/S & Service Provider Exam Certification Guide
CBT
基于原理与 PIM 疏模式相同,路由器用 Join(加入)、Prune(修剪)和 Graft(嫁接)三种
消息通知上游路由器是否需要向其转发某一多播组的消息。
DVMRP
DVMRP(Distance Vector Multicast Routing Protocol)主要特点距离向量型协议,建立分布树时
按照到达源的Metric(基于跳数-hop count)来选路。最大支持32跳,需要接收到达某个组播组的数
据包的路由器向其上游发送毒性反转消息,Metric 为原 Metric+32,收到这一毒性反转消息的上
游路由器会将收到该消息的接口加入多播消息转发列表。当下游路由器不再需要到达某个组播组
的数据包时,它发送 Prune 消息通知上游 路由器停止向其转发到达该组播组的数据包。
TBT(Truncated Broadcast Tree)是 DVMRP 协议形成的多播转发树,基本到达源有最小Metric
原则构建,当多条链路有相同的 Metric 时,路由器选择 IP 地址最小的上游邻居路由器。在下
图中,C 同时收到A和B发来的 Metric 相同的路由信息,它选择了B,因为B的IP地址小于A的IP地
址。
相似的情况也出现在下面的多路访问网络中,B 和 C 都有关于网络 S1 的路由,有最小
Metric的路由器会被选为 Designated Forwarder,Metric 相同的情况下同样根据最小 IP 地址原则
选定DF。本例中是C路由器。
TBT 的优点是保证在有环路的网络中也不会有重复的组播数据包出现,缺点是需要在整个
网络中交换DVMRP 路由信息,而且由于它被设计成与 RIP 相似的距离向量型路由协议,和 RIP
等DV协议一样,存在计数到最大,保持时间和周期更新等问题。跟其它密模式多播协议一样,它
适用于大量的组播接收者离组播源较近的情况。因为它是较早的多播路由协议,所以在
P a g e | 550
MBONE
CCIE R/S & Service Provider Exam Certification Guide
之上应用广泛,但扩展性较差,逐渐被淘汰出局。
Multicast OSPF
基于单播 OSPF路由协议,使用一种新的OSPF链路状态数据包,我们称之为GroupMembership LSA 来通告网络中组成员的存在情况。
根据 OSPF 路由协议的基本原则,GMLSA 只能在OSPF区域内传递,这将导致多播信息不能
跨越 OSPF 区域传递。解决的办法是 MABR(MOSPF Area Border Router)向区域内其它路由器发送
带有“Wildcard Receiver”标志的 GMLSA,通知内部路由器它可以到达任何多播组。 所有的多播转
发树都应有指向 MABR 的分支,所有多播组的多播信息都应被转发给 MABR。 MABR 会向
Backbone 区域发送汇总的组成员关系 LSA。通知 Backbone 区域它需要接收发 往哪些多播组的
信息。
在下图中,因为区域 1 中有源 S2 的接收者,所以源 S2 发出的多播信息经骨干区域传入
了区域 1。而源 S1 所发出的多播信息则不需要传入区域 2,只在区域 1 内传递。
同样的机制用来解决域间路由,MASBR 与 MABR 一样,也发出带有 Wildcard Receiver 标志的
LSA。
从下图中我们还可以看到,Wildcard Receiver 这种方法虽然解决了区域间和域间多播路由信
息传递的问题,但是却可能引起许多发往 MABR 和 MASBR 以及那些中转路由器不必要的多播
流量。这是MOSPF的一个问题。
Evaluation to MOSPF:
使用链路状态数据包来传递多播路由信息,保证多播信息传递的正确性。协议相关,只能用
于采用OSPF 路由协议的网络。 也存在可扩展性问题,在大的网络中使用可能存在过多的
P a g e | 551
CCIE R/S & Service Provider Exam Certification Guide
路由表条目,并可能由于组成员关系和链路状态的经常性变化而引发频繁的 SPF 计算。不
适用于多播信息源较多的网络。
PIM-DM
协议无关多播密模式(Protocol Independent Multicast Dense-Mode)
PIM 分为两种模式,密模式和疏模式
密模式:
它最大的特点当然是它的协议无关性,可以与静态路由及各种动态路由协议很好的共存。
它使用RPF(Reverse Path Forwarding 反向路径转发)技术构建转发树,密模式的 PIM最开
始采用Flooding的方式向全网传送多播信息,然后再修剪掉不必要的和冗余的流量。这种
Flood&Prune 的行为每 3 分钟进行一次。适用于小型网络和实验性网络。
Assert机制
看下面的图,两条路径都将通过 RPF 检验,为了防止多播信息复制,必须加以处理。
这种情况下两台路由器会发出 Assert 值(Distance+Metric)进行比较,有最好的到达源
的路由的路由器胜出,相同的情况下比较 IP 地址,最大者胜出。败者 Prune 掉相应接口。
Assert 机制可能导致多播路由的环路,看下面两幅图,第一幅图是经 Assert 比较做出
修剪之 后的稳定网络,当右边的路由器上端口断掉连接时,多播网络需要重新收敛,如果
左边的路由器收敛快,就可能出现图中所示的多播路由环路。
P a g e | 552
CCIE R/S & Service Provider Exam Certification Guide
下图中显示的是由于 Assert 机制引起的另一问题,中间的两台路由器进行 Assert 比
较的结 果是下面一台路由器胜出,当它的左侧接口断掉时,最左边的接收者将暂时收不到
来自下面 多播源的信息,直到上面的 Loser 左侧接口的 Prune 超时。
Evaluation to PIM-DM
在小型实验性网络中效果很好。 优点是容易配置(只需两条命令)洪泛和修剪的机制简单。
缺点是洪泛和修剪行为影响较大(3 分钟一次),Assert 机制复杂。
PIM-SM
协议无关多播稀疏模式(Protocol Independent Multicast Sparse-Mode)
采用RP(rendezvous point)作为中继节点,组播源通过到达RP的最短路径向RP发送组播数据,
RP 再通过到达每个接收者的最短路径向接收者转发多播数据。从RP到接收者的转发路径信息与
组播源的位置和数量无关。 适用于企业级大型网络环境,接收者稀疏或密集的情况均适用。最
优路径的选择与网络尺寸 和成员密度无关。
组播接收者需知道RP的存在,通过向RP及途经路由器发送(*,G)的消息加入组播组。该消息
一跳一跳传至 RP 后,形成了一条从 RP 到接收者的 ST(Shared Tree)。 组播发送者同样需知道
RP 的存在。组播源将多播数据封装成专用的 PIM SM 注册消息包, 并以单播的形式向RP发送注
册消息,RP收到注册消息后,解封装这个注册包,将多播消 息发往接收者。同时也向通往组播
源的各个路由器发送(S,G)的消息,构建从组播源到RP 的 SPT(Shortest Path Tree+)当 RP检测到
从组播源发出的多播数据包经由 SPT 到达时,(表明 SPT 稳定,沿途各路由器均已有正确转发条
目)RP 向组播发送“Register Stop(注册停止)”消息,至此,从组播源 到接收者的转发路径形成。
下图显示全部处理过程节束后的多播转发路径。由组播源到 RP 的源树和 RP 到接收者的共享树
两部分构成。
问题:接收者虽然收到了发自源的组播信息,但是经由 RP 转发的传送路径不是从源到
接收者的最佳路径,接下来介绍这个次佳路径是如何修正的。
SPT切换
当 last-hop 路由器(即离接收者最近的路由器)收到经由(*,G)共享树由 RP 转发来的
组播消息时,它就向 SPT 路径中的上游路由器发送(S,G)加入消息(延迟由 SPT-Threshold
值决定,这个值缺省等于 0,表示立刻切换成经 SPT 的转发),这个加入过程一跳一跳的进
行直至 first-hop 路由器(即离组播源最近的路由器),从而形成另一条从源直接到达接收
者的 SPT 转发路径最后,向 RP 发送修剪消息,通知它停止通过共享树向接收者转发特定
P a g e | 553
CCIE R/S & Service Provider Exam Certification Guide
源组(S,G)的消息, 在这一步完成之前,接收者可能收到重复组播数据。
另外,如果 RP 在所有属于共享树的接口上(注意:本例中只有一条共享树)均收到了关
于(S,G)的修剪消息,它也会向组播源发送(S,G)修剪消息,取消(S,G)源组向它的不必要
转发。通过这种机制,PIM SM 实现也与 PIM DM 一样的转发路径,因为没有最初的 Flood 过
程, 对无关网络及设备影响较小。
下图是最终形成的从源到接收者的 SPT。
对 PIM-SM 的评价,对于稀疏和或密集的接收者分布同样有效。
优点:
流量只会沿必要的分支路径转发,可动态切换到最优路径,与单播路由协议无关。
可与DVMRP互操作。
缺点:需要配置稳定的RP路由器。
CBT: Core-Based Trees
CBT的基本目标是减少网络中路由器组播状态,以提供组播的可扩展性。为此,CBT被设计
成稀疏模式(与PIM-SM相似)。CBT使用双向共享树,双向共享树以某个核心路由器为根,允许组
播信息在两个方向流动。这一点与PIM-SM不同(PIM-SM中共享树是单向的,在RP与组播源之间使
用SPT将组播数据转发到RP),所以CBT不能使用RPF检查,而使用IP包头的目标组地址作检查转发
缓存。这就要求对CBT共享树的维护就需非常小心,以确保不会产生组播路由循环。
从路由器创建的组播状态的数量来看, CBT比支持SPT的协议效率高,在具有大量组播源和
组的网络中,CBT能把组播状态优化到组的数量级。
CBT为每个组播组建立一个生成树,所有组播源使用同一棵组播树。CBT工作过程大体如下:
1、 首先选择一个核,即网络中组播组的固定中心,来构造一棵CBT;
2、 主机向这个核发送join命令;
3、 所有中间路由器都接收到该命令,并把接收该命令的接口标记为属于这个组的树;
4、 如果接收到命令的路由器已是树中一个成员,那么只要再标记一次该接口属于该组;
如果路由器第一次收到join命令,那么它就向核的方向进一步转发该命令,路由器
就需要为每个组保留一份状态信息;
5、 当组播数据到达一个在CBT树上的组播路由器时,路由器组播数据到树的核。以保
证数据能够发送到组的所有成员
CBT将组播扩张限制在接收者范围内,即使第一个数据包也无需在全网扩散,但CBT导致核
周围的流量集中,网络性能下降。所以某些版本的CBT支持多个核心以平衡负载。
P a g e | 554
CCIE R/S & Service Provider Exam Certification Guide
目前CBTv3草案已公布。该方案通过使用CBT边界路由器(BR)更好地处理域间组播的转发。
CBTv3还引入新的状态及单向分支CBT概念。尽管CBT很有代表性,但至今却几乎没有已实现的CBT
网络。
23.2 IGMP组管理协议
IGMP(Internet Group Management Protocol)主要用于主机向路由器通知其加入某个多播组 的行为,以
便路由器向其转发到达特定多播组的数据包。IGMP目前共有三个版本,版本1在RFC 1112中阐述,版本2
在 RFC 2236 中阐述,版本 3在 RFC 3376 中阐述。
23.2.1 IGMPv1
版本1采用路由器查询和主机报告两种方法维护组成员关系。路由器向 224.0.0.1(all hosts)地址发
送 TTL=1 的查询包,这种查询每 60-120s 发生一次, 如果在一个 LAN 上面存在多台路由器,则只
有其中的一台作为 Designated/Elected 的路由器 发送查询信息。
主机可以向路由器发送 TTL=1 的组成员关系报告,在主机想要加入某个多播组或是收到来 自路
由器的组成员关系查询消息时发出 ,因为同一网段上的主机只要有一台想要接收到达某个多播组的消
息,
路由器就会将到达这一多播组的消息发至该网段,所以主机的报告采用压 制的方式,对某一个
组信息的接收请求只需有一台主机报告即可。
上图是版本 1 的消息包格式,Ver=1,Type=1 表示主机成员关系查询,Type=2 表示主机成员关
系报告。Group Address 表示 Report消息中主机要加入的多播组。
当一个主机要加入多播组时,它可以立即向路由器发送成员关系报告,不必等待查询,这样 就
减少了端系统最初加入一个多播时的延时。路由器也会定期的发出组成员关系查询,同一网段中只需
一 台 欲 接 收 组 播 信 息 的 主 机 响 应 查 询 即 可 。 其 它 同 属 于 该 组 的 主 机 的 响 应 被 压 制 。 (Response
Suppression:每台主机在响应发自路由器的查询之前启动一个 count-down 计数器,计数器的值是一
个组定范围内的随机数,当这个数减到0时主机对查询发出响应,如果在这之前主机收到了其它主机发
出的响应,则它不再发出响应消息。)这个查询周期可以通过命令 ip igmp query-interval 来修改,
缺省时间间隔为 60s。
一个网段只需一台路由器发出查询即可,但是 IGMPv1没有规范的 Query
Router 的选举机制,
选举过程依赖于多播路由协议,有时候会出现多次查询的情况。
当主机离开一个组后,它不再响应路由器发出的组成员关系查询,同一网段上的所有主机都离开
一个组后,路由器将收不到任何报告,达到超时值后路由器停止向该网段转发相应组播消息。这个
Passively Leave 的方式增加了注销延时,在版本 2 中得以改良。
23.2.2 IGMPv2
对版本 1 的改良主要体现在以下几个方面:
在原有的发向 224.0.0.1 的针对所有组成员关系的 General Query 的基础上增加发向特定组地址
P a g e | 555
CCIE R/S & Service Provider Exam Certification Guide
的针对特定组的查询,以确定是否仍存在该组的接收者。 当主机离开一个组时,主动向路由器发送注
销报告,当发送此报告的主机是最后一个组成员时,可以减少路由器停止特定组播消息前的延时。
版本2中关于 Designated Router 的选举有了固定的机制,单播地址最小的支持 IGMP 协议的路
由器成为 Query Router。
此外,路由器在发出查询包时可以指定主机响应时间间隔。
上图是版本 2 所采用的信息包格式,Type=11 表示成员关系查询,=12 表示版本 1 成员关系报
告,=16表示版本 2 成员关系报告,=17 表示退出组报告。 Max.Resp.Time 表示最大响应时延,以 1/10
秒为单位,缺省等于 10 秒。 组地址表示报告或查询的组地址,General Queries 用 0.0.0.0 表示。
主机欲加入一个多播组时可主动发出报告(与版本 1 相同)
上图显示的是路由器中记录的多播组成员关系记录。 路由器也可发出组成员关系查询,最初每
个路由器都认为自己是 Query Router 并发出查询,
直到它收到来自比自己的 IP 地址更低的路由器所发出的查询。最后,具有最低 IP 地址的路由
器成为最后的 Query Router。版本 2 中路由器还可以发出对特定组成员关系的查询。查询 消息缺省
每 60 秒发送一次。
如下图所示,我们可以通过 show ip igmp interface 命令查看哪一台路由器是当前的 Query
Router。
主机对查询的响应同样采用压制机制。
主机退出多播组时主动向路由器发送退出消息,路由器收到该消息后会发出指向特定组的查询,
以判断该网段上是否还有属于该多播组的成员,如果没有收到任何回应报告,将停止向 该网段转发该
多播组数据。(从收到退出消息到停止转发大约经历 1-3 秒)
在版本 1 中,count-down 计数器的最大值固定为 10 秒,这样如果同一网段上的接收者分属 许
多不同的多播组,路由器将同时收到大量的回应,版本 2
P a g e | 556
中 可 以 由 Query
Router
指定
CCIE R/S & Service Provider Exam Certification Guide
count-down 计数器的上限,通过使用命令 ip igmp query-max-response-time 来增加这个值(缺省为
10 秒)可以减少报告拥塞情况的发生。
版本 1 与版本 2 的互操作能力
情况一:主机使用IGMPv2 ,路由器使用IGMPv1。v1 路由器不能识别v2 类型的成员报告报文,因此,
当子网中的查询路由器运行的是v1 时,v2 主机需要发送v1 类型的成员报告报文。主机可以根据路由
器查询报文的最大响应时间字段来判断路由器的版本,因为v1 的查询报文中,该字段被置为0 ,而在v2的
查询报文中,该字段值非0。
情况二:主机使用IGMPv1 ,路由器使用IGMPv2。在这种情况下,组加入不会有问题,因为IGMPv1 格
式的组加入报文可以被运行IGMPv2 的路由器接收。但是组退出时会有问题,当IGMPv1 主机加入某个
组后,路由器必须忽略该组的任何组离开报文,因为运行IGMPv1 的主机不能识别来自路由器的特定组
查询报文,这样会使路由器以为没有组成员而停止转发该组的数据。
情况三:同一子网上既有IGMPv1 路由器,也有IGMPv2 路由器。同一子网上的所有路由器必须运行
同一版本的IGMP协议,这种情况下,必须将运行IGMPv2 的路由器手工配置为运行IGMPv1。
同一网段上的多台路由器所运行的 IGMP 版本必须相同,如果版本 1 和版本 2 路由器共存的
情况,版本 2 的路由器必须在该接口下配置为版本 1,命令为:ip igmp version 1 | 2。
23.2.3 IGMPv3
IGMPv3 的提出,主要是为了配合源特定组播的实现。源特定组播(Source Specific Multicast ,SSM)
是一种区别于传统组播的新的业务模型,它使用组播组地址和组播源地址同时来标志一个组播会话,而
不是向传统的组播服务那样只使用组播组地址来标志一个组播会话。
SSM保留了传统PIM2SM模式中的主机显式加入组播组的高效性,但是跳过了PIM2SM 模式中的共
享树和RP 规程。在传统PIM2SM模式中,共享树和RP 规程使用( 3 ,G) 组对来表示一个组播会话,其中, (G)
表示一个特定的IP 组播组,而( 3 )表示发向组播组G的任何一个源。SSM 直接建立由(S , G) 标志的一个
组播最短路径树(Shortest Path Tree ,SPT) ,其中, (G) 表示一个特定的IP 组播组地址,而(S) 表示发向组播
组G的特定源的IP 地址。SSM 的一个(S ,G) 对也被称为一个频道(Channel) ,以区分传统PIM2SM 组播中
的任意源组播组(Any SourceMulticast ,ASM) 。由于ASM支持点到多点和多点到多点两种组播业务模式,
因此源的发现过程是ASM 复杂性的原因。
SSM特别适合于点到多点的组播服务,例如视频点播、在线网络教学等业务,但是在多点到多点的
应用场合还是需要ASM模式。
PIM2SSM是对传统PIM 协议的扩展,使用SSM,用户能直接从组播源接收组播报文。PIM2SSM 利用
PIM2SM 的功能,在组播源和客户端之间,产生一个SPT 树。但PIM2SSM 在产生SPT树时,不需要汇聚点
(RP) 的帮助。
在缺省情况下, SSM 组播组地址限制在IP 地址范围:232. 0. 0. 0~232. 255. 255. 255 之间。一个具
有SSM功能的网络, 相对于传统的PIM2SM网路来说,具有非常突出的优越性。网络中不再需要汇聚点
(RP) ,也不再需要共享树或RP 的映射,同时网络中也不再需要MSDP 协议,以完成RP 与RP 之间的源发
现。
为了在网络中实施SSM 组播业务,除了要求网络端到端地支持网络组播和SSM 模式外,同时还要
求网络和应用支持IGMPv3 协议栈。IGMPv3 在IGMPv1/v2 的基础上提供了额外的源过滤组播功能
(Source2Filtered Multicast ,SFM) 。在IGMP v1/ v2中,主机只根据组地址来决定加入某个组,并从任何一个
源接收发给该组地址的报文。具有源过滤组播功能(SFM) 的主机使用IGMPv3 来表示主机所希望加入的
P a g e | 557
CCIE R/S & Service Provider Exam Certification Guide
组播组,同时还表示该主机所希望接收的组播源的地址。主机可以使用一个包括列表( Inclusion List) 或
一个排除列表(Exclusion List) 来表示对源地址的限制。
IGMPv3报文格式:
IGMPv3 的报文类型有以下几种:
0x11。成员关系查询报文(Membership Qeury) 。
0x22。版本3 成员关系报告报文(version 3 Membership Report) 。
0x12。版本1 成员关系报告报文(version 1 Membership Report) 。
0x16。版本2 成员关系报告报文(version 2 Membership Report) 。
0x17。版本2 离开报文(version 2 Leave Group) 。
报文类型的值填写在报文中的类型字段。主机向路由器发送报告的地址改为 224.0.0.22,
主机的报告不再受到压制,响应间隔仍可调节。
上图是 IGMP 版本 3 所采用的查询包格式,比前面两个版本复杂一些,最重要的是后面
增加 了记录组播源的字段。更复杂的是下面的报告包。一个包之中以组记录的形式同时向路
由器 通告主机想要接收的多播组和相应的源列表。
有两个多播源都有数据发送至 224.1.1.1 多播组,但是下面的主机只想接收来自源 1.1.1.1
的多播数据流,这在以前两个版本的多播中是不能由主机自身实现的。而版本 3 提供了对
这一功能的支持。
P a g e | 558
CCIE R/S & Service Provider Exam Certification Guide
版本 3 的组成员关系报告方式和前面两个版本一样。不过在主机加入一个多播组时可以
指定它接收或拒绝(Include or Exclude)源自哪些多播源的数据流。
路由器周期性的向 224.0.0.1 发送查询消息,所有主机发回响应。(因为不同主机可能有不
同的多播源要求,所以这里要求所有主机均要做出回应,不采用压制机制。)
23.2.4 IGMP的发展
IGMP 是IPv4 环境下支持组播必不可少的协议。IGMPv1实现简单,但是有离开延迟过大和选择查
询路由器需要依赖组播路由协议的缺点, IGMPv2 对此进行了改进。IGMPv3 协议的主要目的是支持源
特定组播,并进一步对IGMPv2 进行完善。目前大部分的网络设备和主机操作系统协议栈都支持IGMPv1
和IGMPv2。为了在网络中实施源特定组播,就要求网络中所选用的网络设备和操作系统都要支持
IGMPv3 协议。目前,Windows XP 已经支持IGMPv3 ,同时某些UNIX 操作系统还支持升级到IGMPv3 ,最新
的Linux 2. 6 内核也支持IGMPv3。IGMPv3 可以与IGMP v1/ v2 协议向后兼容。在IPv6 环境下,IGMP 协
议将被新的MLD 协议所替代。
23.2.5 IGMP Snooping
传统以太网交换机处理组播数据包时只是简单地在每个端口上进行广播,这种方式使得组播包洪
泛到并不支持组播的网络,这样的网络比较多的时候则会造成带宽极大的浪费。解决这个问题有几种方
案,如CISCO 组管理协议CGMP和组播注册协议GMRP 。如果采用CGMP 协议,则需要路由器必须支持
CGMP 协议,有着兼容性问题。如果采用GMRP 协议,同样也存在兼容性问题,因为它要求主机的网卡以
及应用软件支持GMRP 协议,所以以上两种方案对解决这个问题并不十分合适。而运行在交换机上的
IGMP Snooping 协议 则能够很好地解决这一问题,同时它也不需要主机和组播路由器支持额外的协议。
IGMP Snooping 协议监视网络上的IGMP 消息,为每一个组播MAC地址建立一个VLAN。该VLAN端口
所连接的网络中至少含有一个主机组成员或者含有组播路由器。这些端口即为组播数据包应该转发的
端口组,它们在一起组成组播VLAN 的端口集。协议将维护这个端口集。这样,当转发组播数据包时,组播
数据包只在它所在的组播VLAN 端口上转发而不会广播到不需要组播的端口,节省了带宽。同时,该以太
网交换机在保持对组播路由器透明的前提下,完成IGMP 代理的功能,过滤掉不必要的IGMP 消息,防止
了“IGMP 报告风暴”。
P a g e | 559
CCIE R/S & Service Provider Exam Certification Guide
IGMP 协议介于第二层和第三层之间,它要求交换机既能分析IGMP 数据包,又必须支持VLAN。从协
议层次框架上分析,TCP/IP 协议栈得到IGMP 的报文,交由IGMP Snooping 协议进行处理, IGMP Snooping
协议根据处理结果更新VLAN。同时,当收到生成树的TCN(拓扑结构变化通知) 时, IGMPSnooping 还需要
重新计算组播VLAN 以减少网络变化所带来的影响。
交换机在监听主机也路由器之间的 IGMP 会话, 但这样做意味着交换机必须复制并分析所有的
组播帧才能找寻出所有的 IGMP 数据包。可以想像这是一项繁重的任务,会严重影响交换机的性能,
用专用芯片来实现这一处理过程可以 释解交换机的压力,但同时会增加交换机的成本。
二层交换机的内部由三部分组成:CPU,CAM Table 和 Switching Engine。CAM Table 是核心,它
的内容由 CPU 来维护,Switching Engine 则依照 CAM Table 的内容和 CPU 的指令来 完成端口间的
交换任务。
好了,现在让我们通过一个实例来讲述 IGMP Snooping 会给交换机的 CPU 带来多大的负担。 主
要内容都基于下面这幅图。
首先,主机 1 发出报告,请求接收到达 224.1.2.3 的多播数据,CAM 表中没有相关条目,于是
这条消息被洪泛传递到所有接口。交换机在分析这个 IGMP 包后知道,知道端口 0(CPU, 为了接收
后续的组播包)端口 1(路由器)和端口 2(主机 1)与这个组播地址有关,于是在 CAM 表中增加了如下条
目:
接下来是主机 4 也要加入这个多播组,根据 CAM 表,它发出的 IGMP 包只被转发到端口 0,1
和 2。但同时 CAM 表变成如下的形式:
P a g e | 560
CCIE R/S & Service Provider Exam Certification Guide
接下来是主机 4 向 224.1.2.3 地址发送流量为 6Mbps 的视频信息,根据 CAM,这些数据包 将
被转发到端口 0,1 和 2。所以这种方式只能用于多播数据流较小的情况下,实际网络中通常无法应
用。
23.2.6 Layer 3 Aware Switch
这种方法是在交换机内部加上一块专门用来处理 IGMP 消息的三层感知芯片。同原来一样, 所
有的多播数据包仍然要送至 CPU,不过它们不再由 CPU 而是由这块专用芯片来处理。为了实现这一
点,最初的 CAM 表中应该包含下面的项目:
还是刚才的情况,主机 1 要加入多播组 224.1.2.3,专用芯片处理后 CAM 表变成下面这个样子:
接下来是主机 4 也加入,于是 CAM 表又变成如下的情况:
现在如果主机4再发送 6Mbps 的数据到地址 224.1.2.3,将不会对 CPU 产生任何影响。因为根
据 CAM 表中的具体条目,该信息流只会被送至 1,2 和 5 号端口。这种方式很好的解决了IGMP
Snooping带来的问题,但是却增加了交换机的成本。
23.3 CGMP组管理协议
CGMP以Client/Server方式工作,路由器相当于服务器,交换机相当于客户机,路由器接收到IGMP
消息后,以CGMP指令通知交换机多播接收者加入或退出多播组的情况,指导交换机进行准确的多播定
向转发。
CGMP消息中包含以下信息:
请求类型(加入或退出)
二层多播地址
客户的实际MAC地址。
下图显示了全部过程:(其中的USA表示Unicast Source Address,GDA表示组播目的地址)
P a g e | 561
CCIE R/S & Service Provider Exam Certification Guide
CGMP数据包的格式:
Type=0表示加入,=1表示退出;Count表示包中GDA/USA地址对的数量,后面可 以接任何多个
GDA/USA地址对。
主机1欲加入多播组224.1.2.3,因为交换机中没有相关条目,于是该IGMP消息被洪泛传递。路由
器收到这个IGMP加入消息后,会用CGMP消息通知交换机:
交换机收到这一消息后,查CAM表找到与USA对应的端口,然后在CAM表中增加相应的多播转发
条目。注意该条目中除了USA地址对应端口外,还包括路由器所在端口,交换机有很多方法可以用 来
判断它的哪个端口连有路由器,比如:DVMRP Probes,PIM Hellos和IGMP Queries.
接下来是主机4发出加入多播组的消息,根据CAM中的条目,该消息被交换机定向发送至1,2端
P a g e | 562
CCIE R/S & Service Provider Exam Certification Guide
口,类似于上面的过程,路由器在收到来自主机4的IGMP消息后,向交换机发送相应的CGMP消息,交
换机在原有条目中加入端口5。
CGMP的消息分为六类,见下图:
所有这些消息均由路由器发往交换机,交换机不产生CGMP消息,所有这些消息均被限制在某个
的VLAN之内。 GDA和USA都包含有具体值的加入或退出消息用来添加或删除特定组播内的端口项,当
路由器收到 IGMP加入或退出消息时产生此类CGMP消息。 GDA全0的加入或退出包中USA是支持多播
的路由器的地址,交换机通过这些信息包来判断它的哪 些端口连接的是发送CGMP消息的路由器设备,
修改CAM,在所有组播转发条目中加入或删除与该 路由器相连接的端口。 USA全为0的退出消息用来
通知交换机从它的CAM表中删掉关于特定组的条目。(当路由器收到来 自最后一个组成员的退出消息
时) GDA和USA全都为0的退出消息通知交换机删掉CAM表中的所有多播条目。(出现在路由器关闭CGMP
支持或使用clear ip cgmp命令时)
IOS的CGMP相关命令
Router(config-if)#ip cgmp 在接口或子接口下启动CGMP协议
Router(config-if)#ip cgmp proxy 在接口或子接口下启动CGMP和DVMRP代理功能
Router#debug ip cgmp 察看CGMP活动情况
Router#show ip igmp interface [int] 显示接口下的与多播相关的信息
Router#clear ip cgmp [int] 清除所有的CGMP组信息
23.4 RGMP组管理协议
路由器组管理协议(Router Group Management Protocol)
RGMP 运行于核心路由器和交换机之上,路由器之间通过 RGMP Hello/Bye 消息相互确认身份,
并为交换机发送专用的二层加入/退出消息(*,G)。交换机缺省的情况下不向路由器接 口转发多播信息,
除非路由器发出特定请求。
RGMP 只能与 PIM-SM 协议同时应用,且只能用在多播骨干路由器所在的 VLAN,该 VLAN内不
能存在多播主机,因为多播的洪泛传递缺省的情况下是关闭的。
P a g e | 563
CCIE R/S & Service Provider Exam Certification Guide
我们看上图中的例子,最开始的时候,多播转发表为空,当路由器B通过PIM协议发出一个加入多
播组 224.1.1.1 的消息后,交换机才为其增加相应转发条目(如图中所示)。
路由器 D 也发出加入消息后,CAM 表变成如下形式:
依靠这种方法,交换机可以根据路由器的请求准确的在共享同一 VLAN
的路由器之间转发多播
信息。
上图中的交换机连接了四台运行 OSPF 路由协议的路由器和一台主机,为了保证一些重要的多播
流不被交换机阻断,思科交换机被设计成无条件洪泛传递发往224.0.0.x的多播数据, 此时如果Host 1
的用户发送一个加入多播组 224.0.0.5 的IGMP报告,则交换机的CAM表中会增加相应的选项,变成下
面的样子:
P a g e | 564
CCIE R/S & Service Provider Exam Certification Guide
思科对这一问题的解决办法是强制交换机总是洪泛传递发往 0100.5E00.00xx的多播信息, 但是
这可能会对低端交换机的性能产生较大影响。
最后提醒你的是要注意三层组播地址到二层组播地址映射时的 32:1 的重叠问题,在选择组播
地址的时候防止将那些会出现重叠的组播地址用在同一个二层网络中。
23.5 组播源放置
看下图,Video Server 以组播形式向外发送组播信息,根据前面的介绍我们知道,收到路由 器的
CGMP 消息的交换机会将多播数据无条件的向支持 CGMP 协议的路由器转发,因为我们应该尽量的让
多播源靠近路由器,以减少对网络带宽的占用。
连接远程网络的 Router-D是一台性能较低的设备,如果我们把它也同样接在核心交换机 Cat5000
上,大量的多播视频信息会被传递至 Router-D,尽管远程网络中没有任何的组播信息接收者。图中的
连接方法是合适的,如果远程网络上没有多播信息的接收者,Router-A 到 Router-D 链路上的多播传
递会被修剪掉。
可是上面的图形中仍有问题没有解决,Router B 和 Router C 都收到了一组它们并不需要的多 播
信息,因为路由器之间靠 PIM 而不是 IGMP 协议来传递多播转发信息,第二层的交换机不知晓PIM 包
的含义,只能假定路由器需要所有多播组的数据流,为了让核心交换机能够
在路由器之间准确转发多播信息,我们必须增加第二层上的多播组转发信息通告方法。
23.6 距离向量组播路由选择协议
23.6.1 DVMRP
邻居建立
DVMRP探针(Probe)消息定期向所有DVMRP路由器组地址(224.0.0.4)组播
P a g e | 565
CCIE R/S & Service Provider Exam Certification Guide
1. 路由器发送探针信息包,此时R1没有受到任何来自其他路由器的探针,邻居表为NULL
2. R2收到R1发送的探针,并向接口上的DVMRP邻居内部列表中加入R1的地址
3. R2在邻居列表上发送带有R1 ip的探针
4. R1收到探针,并将R2加入邻居列表,同时发送带有R2 ip的探针
此时双向邻接的工作已经完成,同时每隔10s发送一个,维持邻居关系,35s后未收到Probe包,则
宣告邻居死亡。DVMRPv3通过IGMPv2查询来决定指定路由器,指定路由器是唯一能发送多播会话响应
子网中IGMP查询的路由器
23.6.2 DVMRP 消息格式
1. Probe消息
它具有4种功能
a.
他们让路由器通过发起路由器列出所有检测到的DVMRP路由器,互相知道彼此位置
b.
他们可以让DVMRP路由器互相通告彼此的能力
c.
d.
在有多条通路都可以到达下游组员时,它可以选出指定转发
每10s发送一次,35s没收到宣告邻居死亡
Bit
P a g e | 566
Flag
Capability
0
1
2
3
4
5
L
P
G
M
S
N
6 7
U
This router is a leaf router.
This router understands pruning.
This router sends Generation IDs.
This router handles Mtrace requests.
This router supports the DVMRP MIB.
This router understands netmasks appended to Prune, Graft, and
Graft Ack messages.
Unused.
CCIE R/S & Service Provider Exam Certification Guide
2. DVMRP Route Report
每60s发送一次,含有自己的直连网络和其他路由器获得的路由条目
3. DVMRP Prune
4. DVMRP Graft
5. DVMRP Graft Ack
P a g e | 567
CCIE R/S & Service Provider Exam Certification Guide
6. DVMRP Ask Neighbors2
7. DVMRP Neighbors2
23.6.3 DVMRP 路由表
DVMRP采用了RIP的很多变量来对外告知路由表和直连子网,路由更新每60s发送一次,如果140s
未更新,则删除路由。Metric被设置为1~63,其中1~31为可达源,33~63为依赖源
Metric定义类似于RIP,每经过一个路由器+1
为了能够正确地剪除,DVMRP路由器必须知道靠它转发组播包的下游邻居,由下游路由器向上游
P a g e | 568
CCIE R/S & Service Provider Exam Certification Guide
路由器发送一条毒性逆转的路由条目,即在Metric上加上无限(32),则上游路由将其认为依赖路由
23.6.4 DVMRP 源树
路由器A,B都向路由器路由器C,D向网络S通告一条Metric=1的指向S的路由。由于D对于S来说位
于路由器B的下游,因此为了向网络S逆向抑制通告路由,并向B返回通告,将其路由变为依赖路由
如果源在路由器Y上,其结果如下
23.6.5 DVMRP组播转发
P a g e | 569
CCIE R/S & Service Provider Exam Certification Guide
由于组播路由是一种颠倒的路由,因此在DVMRP路由表中的信息被用于确定是否在正确的接口收
到一个输入的组播信息包。否则,为了防止组播循环将放弃该信息包,基于输入接口的转发再次被当
作逆向路径转发(RPF),并且把为了确定信息包到达正确的接口所进行的测试称为RPF检查。
一个组播信息包到达错误的接口的RPF检查如下
本例中,一个来自源151.10.3.21的组播信息包通过接口s0抵达。但是,依据DVMRP路由表中的
151.10.0.0/16,来自源的组播信息包必须通过接口E1(不是S0)到达。于是,RPF检查失败,而且组播信
息包被悄悄丢弃。
注意:通常情况下,DVMRP操作稳定时.信息包不会抵达错误的接口,因为上游路由器不会转发
信息包,除非下游路由器逆向抑制第一个位置的路由.然而若网络拓扑刚刚改变,且DVMRP路由选择尚
未在所有路由嚣上收敛(注意,这是基于路由选择的距离向量),并有突如其来的DVMRP操作发生时,
上述差错就会出现
23.6.6 DVMRP裁剪
即使在分布树上没有正在使用的接收站点,本过程也会发生。和大多数密集模式一样.DVMRP
使用扩散-剪枝机制向网络中的所有路由器开始发送组播信息。就DVMRP来说,信息沿着截断的广播树
向下被扩散到任一存在的接收站点。
但是.为了保存宝贵的网络资源.你必须沿着截断广播树分支向下切断(或修剪),通问没有
接收站点的信息流;因此,没有任何直接相连的接收站点的叶路由器为了停止不需要的组播信息流及
剪枝截断广播树的不需要的分支,而向战新广播树上发送DVMRP信息。在DVMRP剪枝后仍然留下的是
对特定源的”十分布树或5PT”。
不幸的是.由于DVMRP足扩散—剪枝协议,因此.只要剪枝超时。由DVMRP产生的源分布树就恢
P a g e | 570
CCIE R/S & Service Provider Exam Certification Guide
复截断广墦树(一般地,DVMRP剪枝只有两分钟的有效时间.2分钟之后它们终止,信息再次扩散)和
PIM-DM一样,这种扩散-剪枝方式也能引起在网络的DVMRP路由器里建立(S,G)状态。即使只有很少的
接收站点
注意:由于被网络中所有路由器的DVMRP路由表项的内容所描述.因此截断广播树本身作为
DVMRP剪枝的结果不会被剪枝;这些DVMRP路由表项不会被剪枝信息修改-相反地,在DVMRP剪枝消息
中(通常作为某个具体的(S,G)信息流的剪枝)收到的信息被存储在路由器中的某个独立数据结构中;此
信息用于修改在截断广播树下面的(S,G)信息流;
当E的所有下游节点发出Prune消息后,E将往上游节点发出Prune消息
23.6.7 DVMRP嫁接
DVMRP提供一种可靠的嫁接机制,此机制把先前面已经剪枝掉的分支嫁接回来。如果没有这一机
制,组中新主机的加入等待时间可能受到严重影响。因为在组播信息开始流动之前.上游路由器的剪
枝状态必须结束.由于基于沿着被剪枝的分支的路由器数和使用的超时性.所以,在主机开始收到组
播之前许多时间已经逝去。通过使用嫁接机制.DVMRP把加入延迟减少列几毫秒。
与剪枝机制的不可靠下—样,嫁接机制由于使用嫁接确认消息而变得可靠-这些消息由上游
路由器返回以作为收到的嫁接消息。这一步骤防止由十阻塞而引起的嫁接消息丢失,阻塞会导致嫁接
过程失败:
在路由器Y上的接收站点2加入组播组之后紧接着由于路由Y仍然存在(Si,G)状态,其表示路由
P a g e | 571
CCIE R/S & Service Provider Exam Certification Guide
器被剪枝,因此它知道为了重建信息流,必须向上游路由器E发出嫁接消息
E收到消息后,会向上级路由器发送嫁接请求,待确认后给Y发送Graft-Ack
23.6.8 DVMRP区域扩充
由于DVMRP仅支持31跳,所以为了扩展DVMRP,可以使用一些其他措施,例如使用tunnel
P a g e | 572
CCIE R/S & Service Provider Exam Certification Guide
23.7 PIM-DM密集模式
23.7.1 PIM-DM简介
密模式假定组播接收者遍布整个网络且分布密度较大。
初始状态下,路由器洪泛传递多播流量到符合下述条件的接口:
连接到另一个 PIM-DM 邻居;
该接口下有直接相连的组成员;
接口被手工配置为加入一个组。
不需要该组播数据的分支可通过 Prune 消息裁剪掉,但是这种情况大约只能维持三分钟,因为
三分钟后路由器将重新执行 Flood 过程。所以,在使用密模式的网络中,充足的带宽是必要的。在密
模式中,多播状态的创建过程由多播数据的到达触发。当路由器收到由源
S
发往组
G 的多播消息
时,关于源组(S,G)的转发树随即生成,连续的三分钟没有收到该多播消息, 则源组(S,G)的转发树
被删除。密模式只使用源树,不使用共享树,源树的维持很简单,但是当网络结构变化时,可能会导 致
多播信息转发不稳定,临时性丢失数据的情况也可能发生。
组播成员用 Graft 消息来通知路由器它对某个刚刚被裁剪掉的组播数据的请求,根据前面的 介
绍,我们知道这不是必须的,因为成员只要耐心的等上至多三分钟,下一次 Flood 就可以 满足它的
要求,但是 Graft 机制可以减少这一延迟。如果两台路由器都转发同样的(S,G)多播流到一个公共的
多路访问局域网,重复流量将会出现, Assert 机制将最终决定其中一台路由器的转发行为停止以避免
重复流量出现。
如果路由器从一个非RPF接口(到达该多播源的单播数据途经接口以外的所有其它接口) 收到了多
播数据,且这个接口是点对点类型,那么 Prune 消息将立即发送给上游路由器。(如果不是 P2P 接口,
将由 Assert 机制做出最终裁定。)
当一个非 RPF 点对点接口不断收到多播数据时,速率限制 Prune 消息将被发送,
当一个 RPF点对点接口不再需要一组多播数据时也会发送速率限制 Prune 消息。
下图是最初的网络,所以的路由器都有(S,G)记录,多播数据被 Flood 传送。
P a g e | 573
CCIE R/S & Service Provider Exam Certification Guide
接下来所有路由器通过其不需要该多播数据的接口向上游路由器发送 Prune 消息。
下图是最终形成的转发树,因为只有图中最下方的网络中存在多播的接收者,但是这种局面只能
维持三分钟,三分钟后,新一轮的 Flood&Prune 过程将再次发生。
23.7.2 PIM消息格式
PIM 各种数据包格式,其中包括:
Packet Headers(包头)
P a g e | 574
Hello Messages(问候消息)
Join/Prunes(加入/剪裁)
Grafts/Graft Acks(嫁接/嫁接应答)
Asserts(裁定)
PIM Registers(PIM 注册)//仅在PIM-SM中使用
PIM Register-Stop(PIM 注册停止)
//仅在PIM-SM中使用
CCIE R/S & Service Provider Exam Certification Guide
上图中显示的是 PIM 版本 1 中的数据包头格式及主要字段的含义,PIM 版本 1 使用 IGMP协
议向 224.0.0.2(All Routers)发送 TTL=1 的数据包,这意味着控制信息不会跨越路由器传递。
上图是PIM版本2的包头,它与版本1最大的区别在于它不再依靠IGMP协议传送,而使用协议号为
103 的 PIM 专用协议,TTL=1 的 PIM 协议包发往 224.0.0.13(All PIM Routers)。
下面的各种数据包我们将只介绍 PIM 版本 2 的格式。
上图是版本 2 的 Hello 包格式。这个 Hello 包用来建立和维持邻居关系,每个 PIM 路由器都
要周期性的发送这个包向邻居 PIM 路由器通告自己的存在。
Hello 包当中有很多 TLV(Type、Length、Vaule),常用的有以下几种:
Holdtime(保持时间)收不到来自邻居设备的 Hello 包时,认为邻居不存在之前可以等待的时间。
DR Prioirty(DR 优先级)在子网中选择 DR 时使用。
Generation ID(衍生 ID)一个随机的 32 位的值,用于决定检测到失败后多长时间需要重新激活邻
居关系。
上图是 PIM 加入/剪裁消息包,Upstream
Neighbor Address(上游邻居地址)用来记录 RPF路径
中上游路由器的单播地址,Holdtime 表示此信息包的失效时间,Num.Groups 用来表示此包中包含的
P a g e | 575
CCIE R/S & Service Provider Exam Certification Guide
组的数量,Group List 中记录加入/剪裁组列表。
上图中显示的是 Group List 部分的内容,每一个多播组一个条目,其中详细记录了欲加入或剪裁
的多播源列表。后面要介绍的 Graft/Graft-ACK 消息包中也包含这一部分。图中的组地 址和源地址都
采用了特殊的编码形式,其中可以包含多种地址类型,虽然我们只介绍基于
IP 地址的 PIM 协议。
Graft/Graft-ACK 消息包格式与前面介绍的 Join/Prune 消息包的格式完全相同,不再列出。 与其
它包不同的是,它是所有 PIM 消息包中惟一要求可靠传输的消息包(需要确认)。
上图是 Assert 包的格式,当网络中存在多播消息转发的冗余路径时,Assert 机制用来裁定哪一
个路由器保持转发,比较的原则是:路由协议不同时比较 Metric Preference(通常是管理距离),路由协
议相同时比较 Metric,度量值相同时则比较IP地址(IP地址高者胜出)。
上面是仅在 PIM
SM 中采用的 Register 消息包格式,DR(多播源的下一跳路由器)用它来向 RP
注册多播的发送,以便通过它将多播消息沿共享树传递到每一个多播接收者,DR 会 持续发送这个消
息直到收到来自 RP 的 Register-Stop 消息。
下面图中显示的就是 Register-Stop 消息包的格式,当 RP 已经加入到达 DR 的源树并从 SPF所
确定的路径接收到来自特定源的多播数据时,用它来通知 DR 停止发送注册消息。
P a g e | 576
CCIE R/S & Service Provider Exam Certification Guide
23.7.3 PIM邻居发现
路由器通过周期性的查询(缺省 30 秒)来发现 PIM 邻居路由器的存在,对于多路访问网络, 这
种查询消息发现 224.0.0.2(All-Routers)。对于多路访问网络,还要选举 DR,IP 地址最高的路由器成为
DR。在疏模式中,DR负责为多路访问网段上的主机向 RP 发送 Join 消息,在密模式中,DR 的选举
没有意义。
上图中显示的是 show ip pim neighbor 命令的输出,我们可以清楚的看到上面五条记录中的
路由器和这台路由器同属于一个多路访问网络,171.68.0.91 因为有最高的 IP 地址而成为DR。
23.7.4 PIM状态
从单个路由器的角度看,PIM的状态表现为它对多播分布树的理解,从整个多播网络来看,PIM
的状态则表现为整个多播流量在网络中的传递情况。对于每个路由器,多播的传递情况通过多播路由
表来体现,我们可能通过命令 show ip mroute查看。
所有条目以(*,G)或(S,G)的形式存在。 每个条目中包含 RPF、OIL 等信息。源接口为通过 RPF
确定的到达多播源的最近路径的出口,地址为上游路由器的接口地址。OIL(Outgoing
Interface List 流
出接口列表)记录从流入接口进来的多播数据需要转送的所有接口。
(*,G)条目是多播路由器里的缺省条目,通常指向所有运行 PIM 的接口。做为所有(S, G)条目
的父条目,当直连接口下的一台主机发出 Join 消息而又没有相应的多播源时,(*, G)条目被创建。
P a g e | 577
CCIE R/S & Service Provider Exam Certification Guide
因为这种条目并不反映真正的多播消息转发,所以 Incoming interface 为空, OIL 列表中包含所有连
有PIM-DM邻居路由器或多播组成员的接口,我们也可以使用命令ip igmp static-group <group>静
态指定一个接口连于某多播组成员。(S,G)条目与具体的多播源组有关,用于指导路由器如何转发始
自特定源的多播数据。IIF 为 RPF 接口或与多播源相连接口,OIL 最初与(*,G)条目的 OIL 相同,并
根据 Flood&Prune过程中收到的 Join/Prune 消息做适当的改变。
上图中显示的是多播路由中的状态标志:
D
表示密模式,只出现在(*,G)条目中。
C
表示该接口下直接连有多播组的成员。
L
表示路由器自身是一个多播组的成员。
(如所有的路由器都会自动加入
P
Auto-RP
发现组224.0.1.40)
表示所有 OIL 中的接口都收到了修剪消息,这也意味此路由器不再需要该组多播消息,
接下来它会向上游路由器发送 Prune 消息。
T
表示从 SPT 接收到了至少一个数据包。
23.7.5 PIM DM Flooding
多 播 数 据 包 (128.9.160.43 , 224.2.127.254) 经 路 由 器 rtr-a 的 S0 口 到 达 , 路 由 器 在 产 生
(128.9.160.43,224.2.127.254)转发条目前会先产生(*,224.2.127.254)条目,其OIL包括所有支持多播的
端口,( 128.9.160.43 , 224.2.127.254 )条目的OIL复制于(*,224.2.127.254)(除去入口 S0),于是
128.9.160.43发出的所有到达 224.2.127.254 的多播数据经S0进入后洪泛传递到S1和S3端口。
路由器 rtr-b 收到此类多播数据包后其多播路由表如下:
P a g e | 578
CCIE R/S & Service Provider Exam Certification Guide
对于路由器rtr-b,只有S0口参与多播活动,所以其转发表中(128.9.160.43,224.2.127.254)条目的
OIL为空,于是该记录带有P标志,rtr-b向rtr-a发送针对该源组的Prune消息.
23.7.6 PIM 裁剪
对于多播源组(128.9.160.43,224.2.127.254),rtr-b是叶节点,在它的下面没有任何接收者,于是
rtr-b 通过 S0口向rtr-a发送针对多播源组(128.9.160.43,224.2.127.254)的 Prune 消息,rtr-a 收到此消
息后从多播源组(128.9.160.43,224.2.127.254)的 OIL中修剪掉了 S3 端口。下图是修剪之后的rtr-a的多
播路由表,S3 口已经被标志为 Prune/Dense。
上述过程只适用于 P2P 链路,在多路访问网络中,修剪过程稍有变化,我们看下图:
叶节点rtr-b不需要(S,G)源组的数据包,向rtr-a发送Prune消息,rtr-a在做修剪之前会等待一小段
时间,以确定该网段上是否还有其它的接收者存在,rtr-c 收到来自rtr-b的修剪消息后马上会向 rtr-a 发
送 Join消息,rtr-a 收到 Join 消息后中止了 Prune 行为。 这种机制可以保证多播接收者对多播数据
的接收不被中断,但是在下图所示的网络中却给我们带来麻烦,因为修剪行为在12秒才会发生。
P a g e | 579
CCIE R/S & Service Provider Exam Certification Guide
23.7.7 PIM 嫁接
下图中,最开始的时候rtr-b和rtr-c的下面都没有任何源组(S,G)的接收者,于是它们发送Prune消
息到 rtr-a,在这一多播流被修剪之后,rtr-b 的下面的 Rcvr A 发出了针对源组(S,G)的Join消息。如果
rtr-b不发送 Graft 消息,那么Rcvr A 要等 3 分钟之后 rtr-a 再次Flood的时候才能收到 这组多播数据,
为了减少这一延时,rtr-b 向 rtr-a 发送Graft消息,请求重新向其发送源组(S, G)的数据。
看起来似乎可以了,但问题是rtr-c会不会发送Prune消息到rtr-a,基于一个源组的Prune消息只会
在该条目创建且 OIL为空的时候发送一次,所以rtr-c只会在3分钟之后,rtr-a 再次 向其发送Flood的多
播消息时发送一次,但这不会中断rtr-b的接收,因为rtr-b在收到rtr-c的Prune消息后会立刻向rtr-a 发送
Join 消息覆盖掉 rtr-c 的 Prune 消息。
23.7.7 PIM 仲裁机制
如果不采取措施,C 所连接的接收者会收到两份重复的多播数据。路由器A和B都可以发现这个异
常情况,因为它们从一个属于(S,G)的 OIL 的接口收到了该源组的数据!这将触发仲裁过程的发生。
两台路由器会发出仲裁包,经过对管理距离,度量值以及 IP 地址的比较后,路由器 B 胜出, 路
P a g e | 580
CCIE R/S & Service Provider Exam Certification Guide
由器 A 将其 E0 口从源组(S,G)的路由条目中裁减掉。
如果在多路访问网段上没有直接的多播接收者,仲裁的胜出者会向多路访问网段发出Prune消息
以检测该网段上是否还有其它路由器需要这一多播数据流,因为路由器 C 连有接收者,它会发出 Join
消息覆盖掉 Prune 消息,转发得以保持。 关于仲裁我们还有需要注意的地方,看下图:
路由器 C 的上游路由器指向了路由器B,但是路由器B在仲裁中失败了。
如果C不修改它的记录将上游路由器指向 A 的话,接下来的一段时间里它向上游路由器发出的
Joins,Prunes 或 Grafts 消息都不能对多播消息转发进行有效的控制。好在路由器 C 可 以听到 A 和
B 之间的仲裁信息并能就此作出正确的响应,如下图:
仲裁机制也会带来一些暂时不能很好解决的问题,看下面这幅图:
P a g e | 581
CCIE R/S & Service Provider Exam Certification Guide
重复流量引发仲裁,结果下面的路由器胜出,于是新的多播流量以下图所示方式传递:
但是如果那个 Winner 在胜出后马上坏掉了会如何呢?
the Loser不能得知这一情况,直到3分钟之后才会重新打开Prune的端口,也就是说,图左侧的接
收者将有近3分钟的时间接收不到该多播数据流。
23.7.8 PIM 状态维持
密模式PIM的多播转发信息靠反复的 Flood&Prune 过程来维护,接收到多播数据包会复位(S,G)
超时计时器,超时计时器如果减到0,则相应条目会被删除,所有被 Prune 掉的端口在3分钟后会被
Flood过程重新启动,不需要的转发会再次被Prune掉。
23.7.9 PIM 密模式回顾
下图是最初的情况,所有的路由器向所有的端口 Flood 多播流量。
P a g e | 582
CCIE R/S & Service Provider Exam Certification Guide
第一个修剪发生在上图所示部分,路由器C与B之间的多播信息没有经过RPF检验,因为C到达上面
的多播源所走的路径是经由 A,C与B之间的流量被减裁掉。
第二个修剪发生在上图所示部分,C和D形成了多播转发的冗余路径,经过仲裁过程,其中的一个
会成为胜利者。
第三个修剪发生在下图所示部分,原因很简单,因为路由器 I 没有与任何接收者相连。
E在收到它右侧的路由器的修剪消息后,向C发出修剪消息,但C不会做出修剪,因为该网段上直
接连有一个接收者。
类似的情况出现在上图中,G不需要该组播消息,向F发出修剪消息,但是H需要,所以它在收到
了G的 Prune 消息后向F发出的 Join 消息,覆盖掉了G的 Prune 消息。
P a g e | 583
CCIE R/S & Service Provider Exam Certification Guide
路由器I下面网段出现了新的接收者,于是路由器I向路由器E发出Grant消息,E重新开始向路由器
I的转发。
23.8 PIM-SM稀疏模式
23.8.1 PIM-SM简介
PIM SM是显示加入模式,接收者向RP(会聚点)发送PIM加入消息通告其加入组播的行为,发送 者
也要发送注册消息到RP进行注册。RP是共享树的根,由源发出的数据先送至RP,再由RP沿共享树传递
到每个接收者所在的网络。
经过RP的转发可能不是最佳路径,这时最后一跳路由器可以修正经RP沿共享树的转发为沿基于源
的SPT(Shortest Path Tree)的转发。在共享树中,RPF检验使用RP的地址;在SPT中,RPF检验使用多播源
地址。
通常一个多播网络中只使用一个RP,但是我们可以借助访问列表基于组地址范围将多播信息转
发路径的管理分派给多个RP,它们
可以位于网络中的不同位置,这有
利于优化数据流的转发, 一个多播
组只需要一个RP。RP可以静态配置,
也可以动态学习(通过Auto-RP或PIM
v2 BSR)。 数据包在转发时,省先在
多播路由表里查找匹配的(S,G)条目,
如果找不到,则按照(*,G)条目指定
路径转发。
源树及共享树的形成
上图中显示的是Receiver向RP注册以及共享树形成的过程,所有途经路由器中产生相应的(*,G)
条目。
P a g e | 584
CCIE R/S & Service Provider Exam Certification Guide
而多播源向RP的注册过程要稍稍复杂一点,这一点从图中不同类型的消息流的数量上就能看得出。
下面我来解释一下整个过程:
当关于组G的活动源向首跳路由器发送第一个多播包时,首跳路由器就知道它应该向RP注册 这个
源并且请求RP构建一条由RP返回首跳路由器的源树。
首跳路由器把该多播消息封装成注册消息,以单播形式发往RP。
RP收到这一注册消息后,解除注册消息的封装后将它沿共享树向下传递。
同时发送一个(S,G)加入消息到源S以创建一条(S,G)SPT,也就是说,在SPT途经的所 有路由器(包
括RP)中创建(S,G)转发条目。
当SPT形成后,发自源S的多播数据流将沿SPT从源S直接传到RP。
RP一旦接到从源S发出的沿SPT传来的多播包,则向首跳路由器发送注册停止消息,然后首跳 路
由器停止向RP发送注册消息。
最后,多播数据包可沿从源到RP的SPT传至RP,再沿共享树从RP传至接收者。
上图是最后形成的转发树,但是就本图而言,这个转发路径并不理想,事实上有一条不经RP的
更短的路径可以用来传递这一多播数据流。对这一次佳路径的修正是通过SPT Switchover的过 程
来实现的。
23.8.2 STP Switchover
上图中显示的转发树是由从源到RP的源树和从RP到接收者的共享树构成,尽管这两条路径本身
都是最短的,但是合在一起后的结果并不理想,最靠近接收者的末跳路由器可以对这条次佳路径
加以修正:
1.
末跳路由器根据SPT-Threshold的值决定何时对转发路径加以修正,缺省的情况下这个阈值
等于0,表示第一个包沿共享树到达后马上对转发路径加以修正。
2.
末跳路由器向源发送(S,G)加入消息来重新构建一条旁路RP的SPT。
3.
最后,末跳路由器沿共享树向RP发送(S,G)修剪消息,阻止RP经共享树向末跳路由器转发 属
于(S,G)源组的多播数据。(这个修剪在RP上生效之前,接收者可能会收到重复数据)
4.
如果RP在它的所有属于共享树的接口上都收到了(S,G)修剪消息,那么它也会向源发送(S,
G)修剪消息。
5.
通过这种方式,PIM SM以更经济的方式建立了从源到接收者的(S,G)SPT。
P a g e | 585
CCIE R/S & Service Provider Exam Certification Guide
下图是最后形成的从源直接到接收者的SPT。
23.8.3 PIM邻居发现
PIM通过周期性的Hello消息发现并维持邻居关系,多路访问网络中,路由器向224.0.0.13(All-PIMRouter)发送Hello消息。并进行DR(Designated Router)的选举(有最高IP地址的胜出)。
DR在PIM SM中用于为多路访问网络中的接收者向RP发送Join消息,以及为多路访问网络中的多
播源发送注册消息,在密模式中DR无意义,当然了,如果用的是IGMP版本1,则DR做为IGMP Querier
代表所有路由器向多路访问网络内的接收者发送定期的查询。
23.8.4 PIM状态
每台路由器对当前多播信息的转发都有自己的理解,但这里指的PIM状态指整个网络内的信息转
发情况。
PIM状态主要通过多播路由表体现,其中包含(*,G)和(S,G)条目,(S,G)条目较(*,G) 有更高的
优先权,所有条目中都包含Incoming interface、Upstream neighbor和Outgoing interface list。Incoming
interface是通过RPF检验的接口,且只有从Incoming interface 收到的多播数据才会被转发到OIL。
P a g e | 586
CCIE R/S & Service Provider Exam Certification Guide
下图是一个多播路由表的示例,下面我们来解释这张表的维护过程:
23.8.5 PIM路由维持
(*,G)是基于共享树的转发条目,只有当没有(S,G)匹配时才采用。当一台路由器收到(*, G)加
入消息或来自属于组播组G的成员的IGMP报告时,创建(*,G)条目,如果有(S,G)条 目产生,则相应
的(*,G)条目也会出现。(*,G)中的Incoming interface为该路由器指向RP的接口(根据RPF),OIL为收到(*,
G)加入消息的接口、直接连接有接收者的接口或手工设置的静态转发接口。(命令:ip igmp static-group
<group>)当OIL=NULL或没有子(S,G)条目时(*,G)条目将被删除。(S,G)是指定源的具体条目,相对于(*,
G)条目有更高的优先权。 当收到(S,G)加入消息或PIM SM中首跳路由器发向RP的注册消息时,(S,G)
条目被创建。如果相应的(*,G)条目不存在,则它必须被创建。(S,G)条目中的Incoming interface和
Upstream neighbor由RPF决定。OIL复制于(*,G)条 目,但是不包含Incoming interface.
来看看OIL的管理: 收到(S,G)或(*,G)加入消息时将收到该消息的接口加入相应条目的OIL,(*,
G)的OIL。如果变化,则(S,G)的OIL无条件跟随一起变化。收到(S,G)或(*,G)修剪消息时将收到该消
息的接口从相应条目的OIL中删除,(*,G)的 OIL如果变化,则(S,G)的OIL无条件跟随一起变化。此外,
OIL中的接口过期时限为3分钟, 如果3分钟没有收到下游路由器的加入消息或来自直接相连成员的
IGMP报告的话,也将会被删除。
当(*,G)条目的OIL由空转为非空时发送(*,G)加入消息,当(*,G)条目的OIL由非空转为空时发送
(*,G)修剪消息。
当(S,G)条目的OIL由空转为非空时发送(*,G)加入消息,当(S,G)条目的OIL由非空转为空且从
Incoming interface收到相关数据包时发送(*,G)修剪消息。
当(S,G)的RPF信息与(*,G)的RPF信息不一致时(表明SPT和共享树在此处分离)发送(S, G)RP-bit
修剪消息。
23.8.6 PIM状态标志
S
表示Sparse Mode,仅见于(*,G)条目。
C
表示有组成员与路由器直接相连。
L
表示路由器自身是该多播组成员。(当使用Auto-RP时,所有路由器自动加入224.0.1.40)
P
表示OIL为空,该路由器正向上游路由器发送修剪消息。
P a g e | 587
CCIE R/S & Service Provider Exam Certification Guide
T
表示至少有一个数据包已经通过SPT送达。
J
在(*,G)中表示收到下一个包后转发路径将由共享树切换到SPT,在(S,G)中表示该条目是SPT
Threshold超过后被创建的。
F
在(S,G)中表示该路由器与源直接相连(首跳路由器),它也出现在多播边界路由器上,
(*,G)条目会随(S,G)条目上的F标志的出现而出现。
R
表示RP-bit,在修正经RP沿共享树的转发为SPT的过程中用于修剪(S,G)经共享树的转发, 关
于这点我们后面还会详细讲述。
X
23.8.7
只见于(S,G)条目,当代理加入计数器运行时使用,一般用于SPT与共享树合并时,
PIM-SM 加入
第一步,接收者A向224.0.0.2(All-Routers)发出IGMP Join消息请求接收多播组G的数据。(见下图第
一步)
第二步,末跳路由器收到该请求消息后,首先查看(*,G)条目是否已经存在,如果已经存在, 则
只需将收到该请求的接口加入OIL,如果不存在,则先创建(*,G)转发条目,并向指向RP 路径上的上
游路由器发送(*,G)加入消息。(见下图第二步)
类似的过程在到达RP途经的路由器上依次重复,直到RP或一台已经属于共享树的路由器为止, 最
后生成一条从RP到末跳路由器的共享树。(见下图三四步)
P a g e | 588
CCIE R/S & Service Provider Exam Certification Guide
23.8.8 PIM稀疏模式注册过程
首先,多播源向组G发送多播消息,首跳路由器收到该组播数据后将其封装在单播形式的注册消
息包内发向RP,并在多播路由表内创建(S,G)和(*,G)条目。RP收到该注册消息后,解出 内部的多播
数据包沿共享树传递给接收者。(见下图中一、二、三步)
接下来RP沿指向源的方向向上游路由器发送(S,G)加入条目以构建源树,沿途路由器都做类 似操
作,直到首跳路由器,源树形成,注意首跳路由器已将S0加入(S,G)条目的OIL中。(见下图中四、五步)
源树构建完毕后,RP将收到经源树送达的多播数据包,此时同样的多播数据RP将收到两份(另 一
份封装在注册消息中)收到经源树送达的多播数据包后,RP向首跳路由器发送注册停止消息。(见下图
中六、七步)
P a g e | 589
CCIE R/S & Service Provider Exam Certification Guide
下图是最后形成的源树,SPT途经的路由器中均存在(S,G)转发条目。
请注意:刚才的例子当中我们假定在源发送多播数据之前已经存在属于该组的接收者且共享树
已经建立,如果共享树尚不存在,那么刚才的过程会有很大的不同。下图中,首跳路由器向RP 发送注
册消息时RP(*,G)条目的OIL为空,也就是说共享树不存在,没有接收者。
这种情况下,RP不向上游路由器发送(S,G)加入请求构建源树,而是直接向首跳路由器发送 注册
停止消息,见下图。
首跳路由器的注册消息将被抑制,多播转发表中(S,G)和(*,G)的OIL均为空,三分钟之后,该条
P a g e | 590
CCIE R/S & Service Provider Exam Certification Guide
目超时消失,一个重新注册的过程再次开始。见下图。
只要多播源不停止发送数据,这个注册和抑制的过程就会继续下去,并且导致RP中的(S,G) 和(*,
G)条目始终存在,尽管它们的OIL为空,如果有接收者出现,RP将主动向SPT所经上游 路由器主动发送
(S,G)加入消息。见下图。
于是源树将在接收者出现之后很快建立起来,如下图。
P a g e | 591
CCIE R/S & Service Provider Exam Certification Guide
什么情况都可能存在,如果一个接收者出现在源树上会怎么样呢?如下图,源树和共享树都已经
建立并正常转发多播数据,此时,一个接收者向属于源树的一台路由器发出了加入请求。
收到该加入请求的路由器会在(S,G)和(*,G)的OIL中将相应接口加入。如下图。
问题得到解决了,该接收者已经可以接收到数据了,但是因为(*,G)条目OIL非空了,该路由器会
向RP发送加入请求以加入共享树来接收数据,如下图。
于是RP的转发表变成了下面的样子,由源树发至RP的多播消息又经共享树送回来了,你可能觉得
这很荒唐,但这是必要的,因为组G的源可能不只一个。根据(*,G)与(S,G)的同步原则,S3应该被加
入(S,G)的OIL,但是S3是(S,G)的Incoming Interface,所以不加入,最后的结果是(S,G)的数据流并不
会由RP再转发回rtr-b。
23.8.9 PIM稀疏模式SPT切换
经由RP的转发路径通常不是从源到接收者的最佳路径,SPT翻转可以将经由源树和共享树的路径
修正为从源直接到接收者的SPT,这样做的优点是可以减少多播数据转发延时,缺点是在多播路
由器中产生较多的(S,G)转发条目。下面我们来介绍整个过程。
P a g e | 592
CCIE R/S & Service Provider Exam Certification Guide
经共享树到达的多播流量超过SPT-Threshold(阈值)时,末跳路由器将会沿到达源的路径向上游路
由器发送(*,G)加入消息以构建从源直接到接收者的SPT,这个消息一路传递一直到源。
从源到接收者的SPT形成后,末跳路由器向RP发送(S,G)RP-bit剪裁消息,通知RP停止通过共 享树
向其转发(S,G)数据流。
我们看看最终的结果,rtr-c的转发表中,(S,G)的OIL为(*,G)的OIL减去Incoming Interface和RP-bit
Prune消息中指定的接口,于是只剩S2,不再向rtr-a转发(S,G)多播流。
[注意]
此后每隔一分钟,末跳路由器将检查多播数据流量与SPT-Threshold的大小,如果当前流
量小于阈值,路由器执行Switchback(回转)的过程,重新切换到经由共享树的接收,以发现 网络结构
和多播数据传递路径的新变化。
P a g e | 593
CCIE R/S & Service Provider Exam Certification Guide
23.8.10 PIM稀疏模式裁剪
下面我们将介绍哪些情况下路由器将向上游路由器发送修剪消息。 第一种情况,当叶子路由器
接收到来自最后一个接收者的IGMP离开消息时,它会将相应接口从(*,G)和(S,G)中删除[注意:下图
中只有(*,G)条目],如果删除后OIL为空,它会向上游路由器发送修剪消息。
最后,如果沿途路由器中相关条目的OIL也为空,则修剪消息会一种传送下去,不需要的流量转
发被剪裁掉。
如果存在SPT,则针对(*,G)发送修剪消息的共享树上游路由器的修剪消息,并停止周期性 的发
向SPT的上游路由器的(S,G)加入消息。
最后的修剪结果一定是所有不必要的流量转发全部被修剪掉。
缺省情况下,加入/修剪状态信息三分钟后会过期,所以路由器必须周期性的向所有邻居路由器
发送加入/修剪消息。周期性的加入消息将会刷新多播转发条目的OIL中的相应接口的超时计数器,如
果该计数器为0, 则接口从OIL中删除,如果OIL为NULL,将发送修剪消息到上游路由器。周期性的修
剪消息将会导致路由器从OIL中删除掉收到消息的接口,
P a g e | 594
或沿共享树向RP发送(S,G)RP-bit修剪消息。
CCIE R/S & Service Provider Exam Certification Guide
多播数据包的接收将复位(S,G)超时计数器,(S,G)条目超时值为0则该条目被删除(例如 源停止发送
数据时)。
23.8.11 PIM稀疏模式回顾
类似前面讲过的密模式,在本单元的最后我们通地一个例子来总结一下稀疏模式的工作原理。
下图是本例的网络结构。
有接收者出现,末跳路由器向RP发送注册消息。
末跳路由器与RP之间的路由器均创建(*,G)条目,共享树形成。
有源产生,首跳路由器向RP发送注册消息。
P a g e | 595
CCIE R/S & Service Provider Exam Certification Guide
从源到RP途经路由器创建(S,G)条目,源树形成后RP向源发送注册停止消息。
接下来是Switchover过程,末跳路由器修正经RP沿共享树传送的多播数据转发路径为直接的
SPT。并向RP发送RP-bit修剪消息消除不必要的流量转发。
下面是一个新的接收者加入。
路由器C的转发表中(*,G)和(S,G)条目的OIL中增加指向E的端口,E收到来自C的多播数据。
P a g e | 596
CCIE R/S & Service Provider Exam Certification Guide
接下来又有新的源。
完成了到RP的注册。
最后的转发路径是这样的。
23.8.12 PIM-SM RP查找过程
共享树根植于多播网络中的一台路由器,而并非源, 在PIM-SM中称其为会聚点(Rendezvous
Point,RP). 寻找RP地址有3种方法:
1. RP地址可以静态的配置与每一台路由器中
2. 用开放标准的BootStrap协议来指定和通告RP
3. 以Cisco私有的Auto-RP来指定和宣告RP
1.BootStrap协议
Cisco使用BootStrap协议和Auto-RP的方式来选定RP。首先一组路由器被配置成C-BSR和
C-RP。C-BSR(Candidate BooStrap Router)同C-RP(candidate RP)通过IP地址识别自己。这个地址
一般为loopback接口地址。
第一步是从C-BSR中选举出BSR。每个C-BSR都可以分配一个0~255的优先级和一个BSR IP
地址。优先级默认为0。当配置成C-BSR时,设置BootStrap Timer
130s。并同时开始监听
BootStrap消息。
BootStrap消息宣告了消息发起者的优先级和它的BSR IP地址。当一个CBSR收到一个
BootStrap消息后,比较发起路由器的优先级,如果对方优先级更高,则reset自己的计时器,
继续监听, 如果自己有较高的优先级,则宣告自己为BSR,并开始每60s发送一次BootStrap
P a g e | 597
CCIE R/S & Service Provider Exam Certification Guide
消息,如果优先级相同,比较IP地址。
BSR不是唯一的。至少需要一个,但允许多个做备份
BootStrap消息采用了224.0.0.13 的组播方式,TTL为1。确保每个PIM路由器都能收到。
消息中包含所有 Group-to-RP 信息和 BSR 的地址。这个消息会被所有的路由器向前传递(通
过 RPF 检验的消息发向除接收端口外的其它端口,TTL=1)。
BSR选举完成后,BSR会对所有的C-RP加以整理,列出它们的优先级和组。编成“RP集”。
通过BootStrap消息向整个多播域宣告RP集。
当一个路由器收到一个IGMP加入报文,则路由器根据RP集查找RP,查找规则如下:
1. 如果只有一个RP,则选定
2. 如果有多个,选优先级最低的
3. 如果有多个,且优先级均相同,运行一个Hash函数,取函数最大值
Hash函数如下:
Hash G, M, C
= 1103515245 ∗
1103515245 ∗ G&M + 12345 Xor C
+ 12345 mod 231
G=组地址前缀
M=hash掩码
C=C-CP地址
2.Auto-RP协议
所有路由器自动学习与特定组相关的 RP 地址,除了 Candidate RPs(RP 候选者)和
MappingAgents(映射代理)外的路由器不需要为 RP 做任何设置。通过专用的两个多播地址
224.0.1.39(Cisco-Announce)和 224.0.1.40(Cisco-Discovery)以PIM DM(否则存在 Chicken and
Egg 问题)方式传递 RP 相关信息。可以存在多个 RP 以作备份,可以通过管理范围对消息
的传递加以限制,BSR 不个备这一功能,这一功能对减少多播信息对广域网带宽的占用非
常有效。
Mapping Agents
用于接收发自 Candidate RPs 的声明,自动加入 224.0.0.39 这个多播组。所有
声明存储在缓存中,[注意:所有 MA 的缓存内容必须一致。]为每个特定组范围选
举具有最高 IP 地址的候选者作为 RP。向 224.0.1.40 地址发送 Cisco-Discovery 消
息,每 60 秒或检测到变化时发送。消息中包含从 多个候选者中选出的 RP。
通常一个网络中应该至少设置两个 C-RP 和 MA,一台路由器可以同时担当这两
种角色。Intfc最好使用回环接口来定义。需要支持多播的每台路由器的每个接口下
P a g e | 598
CCIE R/S & Service Provider Exam Certification Guide
都应该配置成疏密模式,因为
Auto-RP
采用密模式 PIM 工作,其它多播数据采
用稀疏模式工作。
Candidate RPs
RP 候选者以固定周期向 224.0.1.39 组播地址发送 RP-Announcement 消息,这
个消息用来说明该路由器是一个 RP 候选者Group-list 中的 Deny 在不同的 IOS 版
本中意义不同,12.0(1.1)以前的版本中表示当前路 由器不是相应组范围的候选 RP,
12.0(1.1)以后版本中表示该组范围永远采用密模式。
23.9 IGMP配置
23.9.1 IGMP基本设置
配置路由器加入到一个组播组:
Router(config-if)# ip igmp join-group 225.2.2.2
控制某个接口下主机能够加入的组播组
ip igmp access-group access-list
ACL可以同时对组播报文的源和目的地址控制,达到过滤组播源,同时也能过滤特定接收主
机的作用,例如
Deny all state for a group G
deny igmp any host G
permit igmp any any
Deny all state for a source S
deny igmp host S any
permit igmp any any
Permit all state for a group G
permit igmp any host G
Permit all state for a source S
permit igmp host S any
Filter a particular source for a group G
deny igmp host S host G
permit igmp any host G
IGMP版本切换
Router(config-if)# ip igmp version
{2|3}
IGMP查询间隔时间:默认60s
Router(config-if)# ip igmp query-interval 120
IGMP查询超时时间:默认为2倍的查询间隔时间
Router(config-if)# ip igmp query-timeout 30
IGMP查询最大响应时间:默认为10s
Router(config-if)# ip igmp query-max-response-time 8
P a g e | 599
CCIE R/S & Service Provider Exam Certification Guide
当Host不支持组播的时候,需要通过这样的方式来支持,
如图所示:广播流量穿越组播云时,需要做如下配置,首先将广播流量在A上以组播方式发
送,然后再C上对特定主机进行广播方式的传送。
Router A-First Hop Router Configuration
interface ethernet 0
ip directed-broadcast
ip multicast helper-map broadcast 224.5.5.5 120
ip pim dense-mode
!
access-list 120 permit any any udp 4000
access-list 120 deny any any udp
ip forward-protocol udp 4000
Router C-Last Hop Router Configuration
interface ethernet 1
ip directed-broadcast
ip multicast helper-map 224.5.5.5 178.21.34.255 135
ip pim dense-mode
!
access-list 135 permit any any udp 4000
access-list 135 deny any any udp
ip forward-protocol udp 4000
23.9.2 IGMP
Help Address
Router A作为一个子区域,无法控制或加入RouterB这个PIM域中时,需要做一个地址帮助,
引导组播流量直接发往上图中的B
Router A Configuration
ip multicast-routing
ip pim dense-mode
ip igmp helper-address 10.0.0.2
P a g e | 600
CCIE R/S & Service Provider Exam Certification Guide
Router B Configuration
ip multicast-routing
ip pim dense-mode : or ip pim sparse-mode
ip pim neighbor-filter 1
access-list 1 deny 10.0.0.1
23.9.3 IGMP Proxy
当C收到组播请求后,发送一条PIM-SM join的消息给B,B发送一个IGMP的请求到A,A通过一条
单播链路将数据传送到B,这个过程就需要一个IGMP的代理,配置如下
Router A Configuration
interface ethernet 0
ip address 10.1.1.1 255.255.255.0
ip pim dense-mode
!
interface ethernet 1
ip address 10.2.1.1 255.255.255.0
ip pim dense-mode
ip igmp unidirectional link
!
interface ethernet 2
ip address 10.3.1.1 255.255.255.0
Router B Configuration
ip pim rp-address 10.5.1.1 5
access-list 5 permit 239.0.0.0 0.255.255.255.255
!
interface loopback 0
ip address 10.7.1.1 255.255.255.0
ip pim dense-mode
ip igmp helper-address udl ethernet 0
ip igmp proxy-service
!
interface ethernet 0
ip address 10.2.1.2 255.255.255.0
ip pim dense-mode
P a g e | 601
CCIE R/S & Service Provider Exam Certification Guide
ip igmp unidirectional link
!
interface ethernet 1
ip address 10.5.1.1 255.255.255.0
ip pim sparse-mode
ip igmp mroute-proxy loopback 0
!
interface ethernet 2
ip address 10.6.1.1 255.255.255.0
Router C Configuration
p pim rp-address 10.5.1.1 5
access-list 5 permit 239.0.0.0 0.255.255.255
!
interface ethernet 0
ip address 10.8.1.1 255.255.255.0
ip pim sparse-mode
!
interface ethernet 1
ip address 10.9.1.1 255.255.255.0
ip pim sparse-mode
23.9.4 IGMP Snooping
开启IGMP轮询
Router(config)#ip igmp snooping
IGMP Snooping调整:
在单个vlan中启用Snooping:
ip igmp snooping vlan
IGMP Snooping快速离开:
ip igmp snooping vlan immediate-leave
The following example shows how to enable IGMP Immediate-Leave processing on VLAN 1:
Router(config)# ip igmp snooping vlan 1 immediate-leave
IGMP Snooping参考多播路由
ip igmp snooping vlan mrouter
To add a multicast router port and to configure the multicast router learning method, use the ip
igmp snooping vlan mrouter command in global configuration mode.
ip igmp snooping vlan vlan-id mrouter {interface interface-id | learn pim-dvmrp}
基于静态地址的IGMP Snooping
ip igmp snooping vlan vlan-id static mac-address interface interface-id
23.10 PIM配置
23.10.1 PIM-DM基本设置
首先需要激活多播路由
Router(config)#ip multicast-routing
然后配置接口:在接口模式下输入
Ip pim dense-mode
P a g e | 602
CCIE R/S & Service Provider Exam Certification Guide
23.10.2 PIM-SM基本设置
第一步,在路由器启动多播路由支持。
全局命令:ip multicast-routing 在所有路由器上配置,否则可能会形成组播路由黑洞。
第二步,以相关接口下启用对多播的支持。
接口命令:ip pim { dense-mode | sparse-mode | sparse-dense-mode }
第三种模式根据多播组它在处理该多播路由信息时所采用的工作模式。 要防止组模式
与接口模式不匹配的情况发生,疏密模式永远会匹配组模式,适用于采用Auto-RP 方案的网
络或与单纯采用稀疏模式和单纯采用密集模式的网络混合存在。 千万不要以为接口模式决
定组模式,接口模式只决定路由器在该接口下如何工作,组模式决定 于RP信息。对于一组
多播组,如果RP被设置且有效,那么组模式为稀疏模式,否则为密集模式, 路由表内的(*,
G)条目会分别标以S和D。
[结论]永远使用sparse-dense-mode模式,并尽量保证所有路由器对RP的访问的有效性。
(除非你喜欢用Dense模式)
23.10.3 PIM-SM静态RP
Static RP
如果要配置,则应该在所有路由器上配置,所有路由器必须使用相同的 RP 地址,当静态
配置的RP失效时,路由器不可能切换到其它的备用 RP(除非使用 Anycast-RP,在 RP 之间运行
MSDP)。
以下命令实现静态 RP 的指定:
ip pim rp-address <address> [group-list <acl>][override]
group-list 指定组范围,缺省为 224.0.0.0/4,这是很危险,因为它把 Auto-RP 多播组
(224.0.1.39和 224.0.1.40)也包括进来了,注意这两个多播组是使用密模式进行维护的。所以我们
至少 应该使用访问列表将这两个组排除。override 参数指示静态配置优先于 Auto-RP 学得的内
容。静态 RP 的配置比较容易理解,但是管理工作量很大,由于没有冗余能力,可靠性也不强,
不适于在大的网络中使用。
为了保证RP的有效性,防止网络因为失效导致网络切换至密集模式,我们可以指定静态RP,
但是为了防止静态RP阻碍Auto-RP协议的运行,必须与访问列表相结合使用。如下例:
ip pim rp-address <RP-adr >10
access-list 10 deny 224.0.1.39
access-list 10 deny 224.0.1.40
access-list 10 permit any
23.10.4 PIM-SM自动RP
所 有 路 由 器 自 动 学 习 与 特 定 组 相 关 的 RP 地 址 , 除 了 Candidate RPs(RP 候 选 者 ) 和
MappingAgents( 映 射 代 理 ) 外 的 路 由 器 不 需 要 为 RP 做 任 何 设 置 。 通 过 专 用 的 两 个 多 播 地 址
224.0.1.39(Cisco-Announce)和 224.0.1.40(Cisco-Discovery)以PIM DM(否则存在 Chicken and Egg 问题)方
式传递 RP 相关信息。可以存在多个 RP 以作备份,可以通过管理范围对消息的传递加以限制,BSR 不
个备这一功能,这一功能对减少多播信息对广域网带宽的占用非常有效。
P a g e | 603
CCIE R/S & Service Provider Exam Certification Guide
Candidate RPs
RP 候选者以固定周期向 224.0.1.39 组播地址发送 RP-Announcement 消息,这个消息用来
说明该路由器是一个 RP 候选者,rp-announce-interval 的缺省值为 60s。RP 声明中包括:组范
围 ( 缺 省 为 224.0.0.0/4) 、 候 选 RP 的 地 址 , 保 持 时 间 缺 省 为 三 分 钟 , 即 三 倍 的
rp-announce-interval。
在全局模式下以下述命令设置:
ip pim send-rp-announce <interface>scope <ttl> [group-list acl]。
Interface 用于指定 RP 声明中的源地址取自哪个接口。
Group-list 中的 Deny 在不同的 IOS 版本中意义不同,12.0(1.1)以前的版本中表示当前路
由器不是相应组范围的候选 RP,12.0(1.1)以后版本中表示该组范围永远采用密模式。
Mapping Agents
用于接收发自 Candidate RPs 的声明,自动加入 224.0.0.39 这个多播组。所有声明存储在
缓 存中,为每个特定组范围选举具有最高 IP 地址的候选者作为 RP。我们可以通过 show ip pim
rp mapping 命令来查看 MA 的缓存。[注意:所有 MA 的缓存内容必须一致。]向 224.0.1.40 地
址发送 Cisco-Discovery 消息,每 60 秒或检测到变化时发送。消息中包含从 多个候选者中选出
的 RP。
可以通过如下命令设置:
ip pim send-rp-discovery [<interface>] scope <ttl>。
Interface 用于指定消息包源地址取自哪个接口,如果不设置,源地址为送出接口,这样将
会导致一个 MA以多个地址出现。所有其它路由器自动加入 224.0.1.40 以接收 Cisco-Discovery
消息。通过接收 Cisco-Discovery消息以确定负责特定组的 RP。
通常一个网络中应该至少设置两个 C-RP 和 MA,一台路由器可以同时担当这两种角色。
Intfc最好使用回环接口来定义。需要支持多播的每台路由器的每个接口下都应该配置成疏密模式,
因为
Auto-RP
采用密模式 PIM 工作,其它多播数据采用稀疏模式工作。
Auto-RP可以采用冗余模式,在冗余模式中,是通过比较相应端口的IP地址大小来实现的,
通常是做法是对于主RP配置较高IP地址的Loopback接口,而对于冗余RP则采用较小的IP地址作为
Loopback接口。
23.10.5 PIMv2 BSR模式
多个 C-BSR(引导路由器候选者)通过选举优先级和 IP 地址最高者为活动 BSR,这个选举 过程是
抢先式的。活动 BSR 根据 C-BSR 的优先级随时变化,作为接收者的 All Other Routers在 Accept Any 和
P a g e | 604
CCIE R/S & Service Provider Exam Certification Guide
Accept Preferred 两种状态中改变。
BSR通过以下命令设置 :
ip pim bsr-candidate <intfc> <hash-length> [priority <pri>]
<hash-length>用于指定 hash mask 的长度,这一长度决定了 RP 服务于多播组的范围有多大。
Priority 定义了当前BSR的优先级,优先级缺省等于 0。
23.10.6 RP放置位置
RP 应该放在哪里呢?这并不重要,因为 SPT 会对经共享树的转发加以修正,RP 只是源和目的
的初始多播路由信息的汇合点,大量的多播流量并不经过 RP传递,RP不会成为瓶颈,除非你把
SPT-Threshold 设成很大的一个值。如果要保证 RP 的性能,需要多快的 CPU和多大的内存呢?原文中
给出了对 RP 的 CPU 有较大开销的任务和多播转发表的内存开销计算方法,这里不准备介绍给大家,
因为性能的问题不太容易量化的评测。如果 RP 性能下降,我们可以选择更换 CPU,增加内存,减少
SPT 阈值和多 RP 负载均衡等 办法来解决。
Auto-RP 声明和发现消息中的 TTL 的值设成多大合适? 这个跟网络结构有关,只要保证所有的
MA/C-RPs 都可以收到来自 C-RPs/MA 的消息就 可以了。不妨把 TTL 值设得大一些,我们可以在网络
边界使用 ip multicast boundary 的命令 来限定 Auto-RP 多播信息的传递,如下图。
对于 PIMv2 BSR,我们使用命令 ip pim bsr-border 来限定消息传递,如下图。
如何才能防止不正确的配置导致 RP 信息的不一致呢?这是一个比较令人头痛的问题,事实上没
有绝对的保证,我们只能通过 ip pim accept-rp 命令对可接受 RP 进行限制。
命令用法如下图:
Ip pim accept-rp <rp-addr> [acl]
Ip pim accept-rp auto-rp [acl]
P a g e | 605
CCIE R/S & Service Provider Exam Certification Guide
Ip pim accept-rp 0.0.0.0 [acl]
Auto-rp 和 0.0.0.0 只能设置一条,acl 如果省略掉则表示 224.0.0.0/4。
对 RP 的限定可以用来控制组模式,只有通过 RP 验证的组才可以使用稀疏模式。也可以用来限
定哪些(*,G)的加入消息是可接受的,还可以用来限定哪些(S,G)注册消息是可接受的。此外,我们可
以在 MA 中使用 RP 过滤来验证 RP 候选者的有效性,进而控制 RP。命令如下:
ip pim rp-announce-filter rp-list <acl> [group-list <acl>]
rp-list 和 group-list 分别用来指定哪些 C-RP 和多播信息是可以接受的。
[注意]group-list 如果不指定表示不接受一切组。
23.10.7 RP调试
先来看看调试 Auto-RP 时需要注意的问题:
清楚Auto-RP的工作原理是基本的,要特别注意Group-to-RP信息的一致性,先检查所有MA的
Group-to-RP 表,再检查其它路由器。因为 Auto-RP 的信息交换基于密模式,要特别注意静态 RP 的
配置对 Auto-RP 的影响,还要 注意 NBMA 网络中运行 DM 时出现的问题。
再来看看调试 BSR 时要注意的问题:
清楚BSR的工作原理是基本的,要特别注意Group-to-RP信息的一致性,先检查BSR的Group-to-RP
表,再检查其它路由器。
Special Cases
RP on a Stick,下图是一个特例,具体的原理比较复杂,为了解决这种网络结构下出现的问题采取
了很多办法,具体内容不做介绍了,注意蓝色线表示实际的多播数据转发路径。
TurnAround Router
同样是一个特例,注意蓝色线表示实际转发路径。
P a g e | 606
CCIE R/S & Service Provider Exam Certification Guide
23.11 组播基本测试
23.11.1 Show命令
show ip igmp groups
Uptime
显示这个成员关系在该接口上存在的时间
Expires
显示这条记录的失效时间,来自客户机的周期性的 IGMP 报告会在记录过期前刷新这个记
时器。
Last Reporter
因为报告压制的原因,实际上不管有多少接收者,路由器都将只收到来自一个接收者的报
告,当然,如果此报告者停止接收该多播组的消息,会有另一个接收者代替它向 路由器报
告这一请求。
show ip igmp interface
用来检验 IGMP 和 CGMP 在接口下是否启用。
用来检验 IGMP 版本,我们前面已经讨论过,使用不同版本的IGMP的路由器混合在一起的
时候我们可能需要进行一些针对 IGMP 版本的特殊设置。
在这里还可以看到关于 IGMP 的各种计时器,我们可以基于性能的原因来调整它。另外,
我们还可以用这条命令找出某一子网中的 DR 和 IGMP 查询者。
show ip pim neighbor
P a g e | 607
CCIE R/S & Service Provider Exam Certification Guide
Uptime
显示毗邻关系存在的时间
Expires
显示条目过期前的剩余时间,周期性的 PIM Hello 消息用来刷新这条记录。
Mode
显示接口下 PIM 的模式:Dense,Sparse or Sparse/Dense。
show ip pim interface
Nbr Count
显示该接口连接网络中邻居的数量。
DR=0.0.0.0
说明该接口所连接的是 P2P 网络,不存在DR。
show ip rpf
上图中显示了两条 RPF 信息,这些信息都是基于单播路由表形成的。
关于每一个多播源和RP路由器都有相关条目,记录RPF接口,上游路由器,相关路由等信息。
show ip route
不要忘了,多播的转发决断依赖于单播路由表(如RPF检验),所以在我们调试多播路由时
经常检验单播路由的正确性同样重要。
P a g e | 608
CCIE R/S & Service Provider Exam Certification Guide
show ip mroute
这是一个多播路由表的一部分,同其它的多播路由表一样,其中包含(*,G)和(S,G) 条目,
每个条目下会有流入接口,OIL流出接口列表,RP(如果存在的话),标志位和Uptime/Expires计时器。
此外还有 show ip mroute summary 和 show ip mroute count 两条命令没有列出示例。 分别
用于查看多播路由表每个条目的汇总信息和统计信息。
show ip mroute active
显示当前活动的源(流量大于某个门限值,缺省为 4K) 其中包含组地址,会话名称,组
播源地址,域名称以及带宽占用情况。
show ip pim rp mapping
这条命令是关于 PIM Sparse Mode 的。
RP 可以被自动发现,也可以被手工设置。
RP 在一个多播网络中可以存在多个,并且可以基于组播地址范围进行转发分工。
P a g e | 609
CCIE R/S & Service Provider Exam Certification Guide
23.11.2 Debug命令
debug ip igmp
这条命令可以帮助我们了解当前路由器是否发出查询信息,发查询信息的间隔以及是否收
到来自接收者的对查询的响应。
debug ip mpacket
用来解码多播包,这是一条轻易不要用的命令,特别是当有较大多播流量通过路由器时,
会加大路由器负载,并且大量信息输出无法过滤
debug ip mroute
用来动态监视多播路由表的变化。
debug ip pim
用来查看 PIM 邻居之间的消息交换,图中显示该路由器通过 E0和E1口向外发出 PIIM 路
由器查询,但只在E0口上收到了来自 172.16.6.1 的回应。
P a g e | 610
CCIE R/S & Service Provider Exam Certification Guide
现在看到的还是 debug ip pim 的输出,记录的是此路由器向 RP(172.16.8.1)发送注册消息并
收到 RP 发回的 RP-Reachable 消息。
23.11.3 mtrace/mstat命令
源于 UNIX 系统中的 mtrace 命令,它的工作方式很特殊,让我们通过下面的图来进行解释:
上图中,绿色箭头表示从源到接收者的多播流传递路径,红色箭头表示mtrace包传递的路径。
mtrace 采用专用的 IGMP 包类型,0x1F 表示查询/请求,0x1E 表示响应。查询/请求包发往与接收者
相邻的末跳路由器,末跳路由器将它转为单播的 traceroute 请求,按单播路由上溯到与源相邻的首跳
路由器,在此过程中,每个经由的路由器都将查询到达时间、流入接口、流出接口、上一跳路由器地
址、输入输出包计数、源/组包计数、路由协议、TTL 门限 值以及转发/错误码等信息记入包中。
首跳路由器加入自己的响应数据后将单播 traceroute 信息包转换为 mtrace 类型送回查询主机。
类似于单播的 traceroute 命令,mtrace 也显示多播信息的转发路径及各段延时。我们可以用它来查
找多播信息传递过程中的中断点,也可以用它来发现次佳路由。
上图显示的是
mtrace
命令的输出示例,其中显示了多播数据包传递时经由的路径及每一跳
的时延。
mstat
命令以图形的方式输出多播转发路径,可用于分析网络中任意两点间的多播信息转发情
况,报告显示每个节点丢弃/重复包的数量以及 TTL 值和延时。主要用于在网络中查找存在大量包丢
弃或包复制的节点。
P a g e | 611
CCIE R/S & Service Provider Exam Certification Guide
上图是 mstat 的输出示例,注意:重复包的数量在 Lost 列中以负值表示。
23.12 PIM-DVMRP
23.12.1 Cisco DVMRP互操作
默认情况下,Cisco路由器会识别DVMRP探针消息,并自动进行互操作,但是Cisco路由器不发送
DVMRP探针消息,防止其他路由器误判
23.12.2 Cisco DVMRP点到点链路
Cisco路由器在点到点链路支持组播的时候,支持一种基于DVMRP的Tunnel,配置如下:
Interface Tunnel 0
Ip unnumbered Ethernet 0
Ip pim spare-dense-mode
Tunnel source Ethernet 0
Tunnul destination 192.168.1.10
Tunnul mode DVMRP
P a g e | 612
CCIE R/S & Service Provider Exam Certification Guide
PIM对DVMRP消息处理如下
仅有的区别是工作在此模式下的路由器不会发出DVMRP Probe消息,在大多数情况下,路由器不
能发出Probe消息对路由器正常工作没有太大的影响。
23.12.3 Cisco DVMRP点到多点链路
在多路访问链路上,Cisco路由器的处理方式如下:
不支持跨越多路访问链路的剪枝原因是Cisco路由器不能对多路访问链路上的DVMRP路由器进行
状态维护。所以一般使用隧道。
23.12.4 Cisco DVMRP强制路由交换
Cisco IOS DVMRP互操作性的最初意图是用一个IGMP协议当作黑客,诱骗本地连接的DVMRP路由
器把其看作一个已经加入组播组的主机,下图为一些老版本的IOS在非隧道借口上发生的PIM-DVMRP
互作用:
最显著的差别是Cisco路由器不对任何输入的DVMRP路由报告进行毒性逆转,也不把任何DVMRP
P a g e | 613
CCIE R/S & Service Provider Exam Certification Guide
路由报告存到DVMRP路由表中。然而,Cisco路由器通过DVMRP报告向DVMRP路由器通告了其单播路由
表的一个部分,这使DVMRP路由器能对任何从PIM网络源输入的组播信息顺利进行RPF操作,其次这个关
键的差别,Cisco路由器为其组播路由表中的任何一个组发送IGMP成员关系抱高,而不是发送毒性逆转
路由来启动DVMRP路由器转发来自DVMRP网络中源的组播信息。
但这样的方式会存在一些问题,如下图所示:
由于边界路由器A没有任何条目,所以不能向DVMRP路由器发送任何关于G组的报告,因此,不
能向DVMRP路由器发送任何关于组G的IGMP成员关系报告。DVMRP路由器就不能把任何信息从以太网
转发给A。
为了克服Cisco老版本IOS的IGMP黑客问题,可以使用一条命令,强制Cisco路由器交换DVMRP信
息,在接口中执行:
Ip dvmrp unicast-routing
在一个非隧道借口使用此命令他会调整和PIM的相互作用:
首先要注意,该命令的加入阻止了IGMP成员关系报告的发送,取而代之的是Cisco路由器发送和
接收相应的带毒性逆转的DVMRP路由报告。如此可以看出,边界路由器A将会发送DVMRP路由表,从
而完成组播路由的更新
P a g e | 614
CCIE R/S & Service Provider Exam Certification Guide
23.12.5 Cisco DVMRP控制
1.关闭来自某些邻居的DVMRP互操作
Interface Ethernet 0
Ip dvmrp accept-filter 0 neigbor-list 10
Access-list 10 deny all
2.
拒绝非剪枝
在某些环境中,老版本的DVMRP不支持剪枝,所以需要在某些地方关闭这个功能 :
Ip dvmrp reject-non-pruners
3. DVMRP路由汇总
Ip dvmrp summary-address <address> <netmask>
No ip dvmrp auto-summay
该命令可以关闭自动汇总
4.
控制DVMRP路由通告
Ip dvmrp metric <metric> [list <acl>]
在某些情况下,由于DVMRP识别的metric范围为0~32,所以对于32,表示路由不可到达。而
对于0有较特殊的用途,可以用来锁定一些路由通告如下命令:
Ip dvmrp metric <metric> [list <acl>] [protocol <process-id>]|[dvmrp]
如下配置
Ip dvmrp metric 1 list 10
Ip dvmrp metric 2 ospf 1
Ip dvmrp metric 0 dvmrp
可以通过这样的方式避免PIM网络成为DVMRP过渡网络
5.
调整DVMRP报告
Ip dvmrp output-report-delay <delay-time> [burst]
6.
通告DVMRP缺省路由
Ip dvmrp default-information {originate | only}
7.
控制DVMRP路由接受
Ip dvmrp accept-filter <acl> neigbor-list <neighbor-acl> <distance>
8.
调整DVMRP的Metric
Ip dvmrp metric-offset [in | out] <increment>
9. DVMRP路由限制
Ip dvmrp route-limit <route-count>
//default is
7000
P a g e | 615
CCIE R/S & Service Provider Exam Certification Guide
10. DVMRP路由弯曲通知
Ip dvmrp routehog-notification <route-count>
这条命令的作用是当路由数目超过这个阀值时,会以syslog的方式警告MBone上有一个路由
浪涌形成,这个消息可以快速探测到什么时候有一个路由器设置错误把大量的路由引入
MBone,Cisco的默认阀值为1w。
23.12.6 PIM-DVMRP边界问题
DVMRP隧道的问题,
由于RPF的方向和实际组播流的方向不同导致RPF硝烟失败。这种问题的解决办法为:
1.修改隧道位置:
2.使用DVMRP路由,如下顶端4台路由器中使用DVMRP路由
P a g e | 616
CCIE R/S & Service Provider Exam Certification Guide
PIM-SM中的问题
此时可以通过修改tunnel位置,将其移动到RP上解决问题:
另一种方法是在边界和RP之间使用密集模式
第3种方法是接收端发送黑客消息
P a g e | 617
CCIE R/S & Service Provider Exam Certification Guide
23.12.7 PIM-DVMRP 排错技巧
假设默认的配置如下图:
1.验证DVMRP隧道的情况:
Mrinfo命令检查通道两端的情况
2.验证DVMRP路由交换
P a g e | 618
CCIE R/S & Service Provider Exam Certification Guide
Debug ip dvmrp
Debug ip dvmrp detail
验证组播接收
P a g e | 619
CCIE R/S & Service Provider Exam Certification Guide
察看SDR
验证组播传输
23.13 NBMA网络中的组播
23.13.1 传统NBMA网络中的问题
由于传统的NBMA形网络采用点到多点的模式,对于子节点需要剪枝时,发送给中央节点剪枝的
消息,其他子节点无法接受,从而导致其他节点无法作出响应,接口被错误剪枝掉了 。
Cisco在11。0的IOS中渐渐的修正了这个bug,并提出了一种PIM-NBMA的模式。
23.13.2 PIM-NBMA模式
在所有的NBMA接口上,仅需要配置 ip pim nbma-mode 就可以实现在NBMA网络中的通讯。
此时中心节点将会转发消息,使得每个子节点都能获得相应的消息。同时对于PIM-SM模式下的
Auto-RP在原有传统NBMA网络中无法实现的,也开始在这种模式下实现。当然此命令在帧中继环境
中是非常完善的,在ATM网络中,还需要一些更特别的处理方式。
23.13.2 ATM网络
Atm网络中,点倒多点广播需要配置PIM的多点信令。
Ip pim multipoint-signaling
同时可以限制VC数目
Ip pim vc-count <count>
P a g e | 620
CCIE R/S & Service Provider Exam Certification Guide
也可以限制VC的最小速率
Ip pim minimum-vc-rate <pps>
23.14组播高级特性
23.14.1 组播带宽控制
组播流量控制一般采用丢弃数据报文的方式,被设计用来控制非法源或者和单播通信共享带宽
命令格式为:
ip multicast rate-limit in | out { [video] | [whiteboard] }[group-list <acl>] [source-list
<acl>] [<kbps>]
组播带宽限制分为2种
1. 基于接口的速率限制
基于接口的流量限制,将无法识别流量的大小,只能设置多少,使用多少带宽
2.基于流的速率限制---可以对任何一个(S,G)或者(*,G)进行限制
当限制值大于原有流量时,外出流量依旧未128Kbps
P a g e | 621
CCIE R/S & Service Provider Exam Certification Guide
23.14.2 组播管理范围控制
这些配置中,ip multicast boundary命令阻汇所有本地组播信息通过边界串行接口进入或离开
本场所。该组播边界也避免了由于可能的不应该离开本地场所的高速率组播信息因离开本地场所
而使该接口发生阻塞。
ip multicast boundary 10
ip multicast ttl-threshold 16
除了组播边界外,ip multicast ttl-threshold命令也定义了边界接口,以避免本地场所候选
RP(c—RP)的通知泄痛出去;
ip multicast helper-map broadcast 224.1.1.1 100 ttl 15
ip forward-protocol udp 2000
access-list 100 permit any any udp 2000
ip multicast helper-map 224.1.1.1 10.2.2.255 100
ip forward-protocol udp 2000
P a g e | 622
CCIE R/S & Service Provider Exam Certification Guide
access-list 100 permit any any udp 2000
23.15 MBGP
23.15.1 MBGP简介
多协议边界网关协议(MBGP:Multiprotocol BGP)的特征是对原来的 BGP 增加使整个网络能够组
播路由,并能够在 BGP 自治系统间连接组播拓朴的能力。换句话说,MBGP 是增强版的携带 IP 组播
路径的 BGP。BGP 携带了两组路径,一组是提供单播路由,另一组是提供组播路由。协议独立组播(PIM)
使用连接组播路由的路由器建立数据分配树。当需要链接组播通信量,或限制通信量的资源使用时;
也可能当网络访问点需要交换所有的组播通信量时,MBGP 都是非常有用的。MBGP 允许单播路由拓朴
不同于组播路由拓朴。
BGP-4 携带三个唯一的 IPv4 信息:
NEXT-HOP 属性(即 IPv4 地址);
AGGREGATOR(包含一个 IPv4 地址);
NLRI(即 IPv4 地址前缀)。
任何 BGP Speaker,包括一个 MBGP
Speaker,都需要有一个 IPv4 地址用于 AGGREGATOR 属性。
为了使 BGP4 能够为多路网络层协议支持路由 BGP-4,需要附加两点能力:
连接特定网络层协议和下一跳信息的能力;
连接特定网络层和 NLRI 的能力。
关于 NLRI,MBGP中定义了两种属性:
MP_PEACH_NLRI,
用来告知对等可行性路径,允许路径告知网络层用于下一跳的路径地址,同意特定
地路径报告部分或所有子网的连接点(SNPAs);
MP_UNREACH_NLRI,
用来撤消服务器上的多路不可行性路由。
P a g e | 623
CCIE R/S & Service Provider Exam Certification Guide
为了提供后台兼容性,同时也能简化进入 BGP-4 多路协议的能力的介绍,两种新的属性,多路
协议可获得 NLRI(MP_UNPEACH_NLRI)并且 MBGP 可以用于不可获得的多路协议。MP_PEACH_NLRI 用来
携带可获得目的文件组,同时利用下一跳信息转发这些目的文件。MP_UNPEACH_NLRI 主要用于携带不
可获得目的文件。这两种属性都是可选的且不传递的。按照这种方式,不支持多路协议能力的说话者
将忽略这些属性携带的信息,并不再将它传送给其他 BGP 说话者。
23.15.2 MBGP协议结构
可获得的多协议 NLRI — MP_REACH_NLRI (Type Code 14):各属性列表如下:
2 Bytes
Address Family Identifier
Number
of SNPAs
Second
SNPA
(variable)
1Byte
1Byte
Subsequent
Length of Next Hop
Address Family
Network Address
Identifier
Network Address of Next Hop (variable)
Length of
First SNPA
Length of second
first SNPA
(variable)
SNPA (1 Byte)
Length of
Last SNPA
NLRI(variable)
Last SNPA
(variable)
(1 Byte)
Address Family Identifier ― 传送与网络地址相关的网络层协议 ID。
Subsequent Address Family Identifier ― 提供另外的网络层可抵达信息。
Length of Next Hop Network Address ― 表示“Network Address of Next
Hop”(下一跳网络地址)字段的长度(八位)。
Network Address of Next Hop ― 可变长字段,包含到达目的地的路径上的下一
跳路由器的网络地址。
Number of SNPAs ― 表示下面字段中列出的 SNPAs 数目。值为 0 时表示该属性
中没有 SNPA。
Length of Nth SNPA ― 表示“Nth SNPA of Next Hop”字段的长度(Semi-Octets)
Nth SNPA of Next Hop ― 包含一个路由器的 SNPA,其网络地址包含在“Network
Address of Next Hop”字段。
Network Layer Reachability Information ― 列出可行线路的 NLRI。
Address Family Identifier ― 传送与 NLRI 相关的网络层协议。
Subsequent Address Family Identifier ― 提供另外的网络层可抵达信息
(Network Layer Reachability Information)。
Withdrawn Routes ― 列出正在被撤出服务的线路 NLRI。
不可获得的多协议 NLRI - MP_UNREACH_NLRI:各属性列表如下:
P a g e | 624
Address Family
Subsequent Address Family
Withdrawn Routes
Identifier (2 Bytes)
Identifier(1 Byte)
(variable)
CCIE R/S & Service Provider Exam Certification Guide
23.15.3 MBGP配置
Gorgo
router bgp 200
no synchronization
network 172.16.226.0 mask 255.255.255.0
network 172.16.227.0 mask 255.255.255.0
neighbor 192.168.1.2 remote-as 100
no auto-summary
!
address-family ipv4 multicast
neighbor 192.168.1.2 activate
network 172.16.224.1 mask 255.255.255.255
network 172.16.225.50 mask 255.255.255.255
network 172.16.227.0 mask 255.255.255.0
exit-address-family
Rodan
router bgp 100
no synchronization
neighbor 192.168.1.1 remote-as 200
neighbor 192.168.254.2 remote-as 100
neighbor 192.168.254.2 update-source Loopback0
neighbor 192.168.254.2 next-hop-self
!
address-family ipv4 multicast
neighbor 192.168.1.1 activate
neighbor 192.168.254.2 activate
neighbor 192.168.254.2 next-hop-self
exit-address-family
Megalon
router bgp 100
no synchronization
no bgp default ipv4-unicast
P a g e | 625
CCIE R/S & Service Provider Exam Certification Guide
neighbor 192.168.1.5 remote-as 300
neighbor 192.168.1.5 activate
neighbor 192.168.1.9 remote-as 300
neighbor 192.168.254.1 remote-as 100
neighbor 192.168.254.1 update-source Loopback0
neighbor 192.168.254.1 activate
neighbor 192.168.254.1 next-hop-self
no auto-summary
!
address-family ipv4 multicast
neighbor 192.168.1.9 activate
neighbor 192.168.254.1 activate
exit-address-family
Kong
router bgp 300
no synchronization
no bgp default ipv4-unicast
neighbor 192.168.1.6 remote-as 100
neighbor 192.168.1.6 activate
neighbor 192.168.1.10 remote-as 100
no auto-summary
!
address-family ipv4 multicast
neighbor 192.168.1.10 activate
exit-address-family
Kong#show ip bgp ipv4 unicast
BGP table version is 7, local router ID is 10.254.254.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network
Next Hop
Metric LocPrf Weight Path
*> 172.16.226.0/24 192.168.1.6
0 100 200 i
*> 172.16.227.0/24 192.168.1.6
0 100 200 i
Kong#show ip bgp ipv4 multicast
BGP table version is 10, local router ID is 10.254.254.1
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
Network
Next Hop
Metric LocPrf Weight Path
*> 172.16.224.1/32 192.168.1.10
0 100 200 i
*> 172.16.225.50/32 192.168.1.10
0 100 200 i
*> 172.16.227.0/24 192.168.1.10
0 100 200 i
Kong#
23.16MSDP实现域间组播
23.16.1 MSDP简介
组播源发现协议(MSDP:MulticastSourceDiscoveryProtocol)描述了一种连接多PIM-SM(PIM-SM:
PIMSparseMode)域的机制。每种PIM-SM域都使用自己独立的RP,它并不依赖于其它域内的RP。该优点
在于:
1.
不存在第三方(Third-party)资源依赖域内RP。
2.
PIM-SM域只依靠本身的RP。
3.
接收端域:只带接受端的域可以获取数据而不用全局通告组成员。MSDP可以和其它非PIM-SM
协议一起使用。
P a g e | 626
CCIE R/S & Service Provider Exam Certification Guide
PIM-SM域内的MSDP发话路由器与其它域内的MSDP对等设备之间存在一种MSDP对等关系,这种关系
通过TCP连接形成,在其中控制信息进行交换。每个域都有一个或多个连接到这个虚拟拓扑结构。这种
拓朴结构使得域能从其它域发现组播源。如果组播源想知道含有接收端的域,那么PIM-SM中的标准源
树建立机制就会被用于在域内分配树上传送组播数据。
MSDP使用TCP639端口建立对等连接(高ip侦听,低ip连接),和BGP一样,对等间连接必须明确配
置,当PIMDR在RP注册源时,RP向所有的MSDP对等体发送源激活消息,然后其他MSDP路由器将SA泛洪,
为防止环回,现检查MBGP,再检查BGP Message-Type
23.16.2 实现域间组播策略
对于一个多ISP的域间组播设计,需要考虑很多问题,如下图是一个常见的多ISP域,每个自治系
统间BGP路由器使用了RR。
建立域间的组播策略分为如下3个步骤
1.
建立整体的域内组播策略
2.
建立整体的域间组播策略
3.
建立将客户连接到网络基础设施的实施策略
23.16.2 建立整体的域内组播策略
在4个ISP相互之间部署组播服务之前,必须在各自的网络中实现域内组播。域内组播实现一般
采用PIM-SM协议。
常规的配置流程如下:
1. 首先在全局启用组播
在全局配置
P a g e | 627
CCIE R/S & Service Provider Exam Certification Guide
Ip multicast-routing [distributed]
后面的distributed参数是用在Cisco 7500 12000等支持分布式交换的路由器上面的,
同时需要启用
Ip multicast multipath
该命令用于:如果存在针对某个单播路由前缀的代价相等的路径,对于匹配
该单播前缀的各个组播数据包,路由器可以使用不同的逆向路径转发接口进
行数据转发,负载均衡基于(S,G)而不是基于包。
2. 在接口上启用PIM组播
一般情况下启用
Ip dense-sparse-mode
同时在接口上启用分布式快速交换:
Ip mroute-cache distributed
但接口上需要先启用
Ip route-cache distributed
Cisco建议所有支持分布式交换的平台都打开分布式交换,同时如果分布式交换关闭后,
将采用很慢的进程式交换极大的影响了性能
3. 选择路由器作为RP
RP的实际位置并不是一个十分关键的决定因素,因为RP只能用来让信源和接受者
取得联系,最后交换翻转过程会生成一个最短路径树, 但需要考虑RP的处理能力是否
足够强,是否处于中心位置,
通常将RP的位置放置在整个ISP域的中心,全域可访问到的位置,同时应该分配一
个32位掩码的唯一的ip地址给回环地址,并以此地址作为RP的地址。
4. 在网络中的各路由器上静态的配置RP
要配置RP,需要使用全局配置命令ip pim rp-address <rp-address>< acl>这条命
令配置了某个组播组的PIM RP地址,首跳路由器戴白哦信源组播主机上的行为,使用
RP地址来发送注册数据包,路由器使用组播主机行为的RP地址,试图变成组的成员。
这些路由器向RP发送join和prune消息,可以为所有的组播组或者D类地址范围的一个
子集配置一个RP地址,通过ACL来描述
23.16.3 建立整体的域间组播策略
要成功地在4个ISP之间实现域间组播,每个ISP都哟阿勇到下列协议:
1.
用于域间路由选择的MBGP
2.
用于域间信源发现的组播源发现协议 MSDP
首先来看MBGP的配置,MBGP的配置前文已经有类似的模板,这里再作一些补充:
1. 配置MBGP伙伴关系
BGP邻居配置如下:
Neighbor ip-address remote-as number [nlri {unicast|mulitcast}]
这条命令配置了BGP伙伴和其相关AS编号, 如果加上了Multicast字段,则只想邻居发送
组播的网络层可达信息(NLRI),如果加上unicast只发送单播,默认情况下 只传送单播路由信息,
所以组播通过MP_Reach和MP_unreach路径属性传送, 如果要支持组播和单播,则两个参数
都需要加上 .可以通过peer-Group来在多台路由器上实现这个属性, 命令如下 :
P a g e | 628
CCIE R/S & Service Provider Exam Certification Guide
neighbor peer-group-name peer-group [nlri {unicast | multicast}]
此时还要通告相应网段,网段通告也是默认支持unicast模式,需要加入关键字
network network-number [mask network-mask] [nlri {unicast | multicast}]
这条命令配用于确认AS中的某个网络是否应该注入到BGP的RIB中, 对于支持MBGP的路
由器有两个RIB,一个是单播RIB另一个是MBGP RIB.
在Route-Map中,也需要注意:
Match nlri {unicast | multicast}
同时对于Set也需要采用multicast关键字
Set nlri {unicast | multicast}
Route-map的标准环境中,单播和组播RIB是分开的.所以可以通过不同的routemap实现单
播信息和组播信息的区别,例如 redistribute, aggregate-address, and neighbor outbound
route-map等,如下就是一个仅让组播支持默认路由的实例
neighbor ip-address default-originate route-map map-name
对于Cisco IOS 12.0以后的版本,还需要配置MBGP地址族,配置命令如下:
address-family ipv4 multicast
确认配置可以采用
show ip bgp neighbors
show ip mbgp
2. 配置MSDP伙伴会话
选择一个用于MSDP伙伴会话的IP地址,通常是MSDP伙伴会话和BGP伙伴会话使用
同一个配置在回环接口上的地址,配置伙伴会话通过如下命令:
ip msdp peer {peer-name | peer-address} [connect-source type number]
connect-source关键字为TCP连接提供源IP地址,用type和number属性确定某个端口。
3. 配置推荐的SA过滤器
在全局配置针对发送给MSDP伙伴的SA消息的进出过滤列表:
ip msdp sa-filter in|out {peer-address | peer-name} [list access-list]
[route-map map-name]
缺省情况下收到所有SA消息都转发给伙伴,如果同时使用了ACL和
Route-map属性,要过滤或者允许通过发往SA消息中的任何(S,G)都需要满足
全部条件。
4. 配置SA缓存
启动SA缓存功能来缓存关于网络中活动信源的信息,使用
Ip msdp cache-sa-state
5. 确认MSDP伙伴目前正常工作
Show ip msdp peer
Show ip msdp sa-cache
6. 配置合适的组播边界
在接口上配置
Ip multicast boundary <acl>
ip pim bsr-border
前一条命令可以对特定的组定义管理上的边界,后一条命令定义的PIM域的边界,
P a g e | 629
CCIE R/S & Service Provider Exam Certification Guide
同时,该命令在某接口配置后,BootStrap消息沿任何防向都不能超越边界。新版本的
IOS中这条命令直接改为:
Ip pim border
7. 伙伴关系对比
23.16.4 ISP2的域内配置
P a g e | 630
CCIE R/S & Service Provider Exam Certification Guide
ISP2的网络拓扑图如下图所示
这种拓扑结构的优点是:
能够简单实现组播信息发送
确定性强,易于进行故障排除
但这种拓扑也有缺点
RP没有冗余
没有分担负载
配置步骤如下:
Step 1. 配置全局组播
ip multicast-routing distributed
Step 2. 接口配置组播
interface POS3/0
ip pim sparse-mode
ip mroute-cache distributed
interface GigabitEthernet4/0
ip mroute-cache distributed
interface GigabitEthernet4/0.430
ip pim sparse-mode
interface GigabitEthernet4/0.440
ip pim sparse-mode
interface POS5/0
ip pim sparse-mode
ip mroute-cache distributed
注意Gbit/s的接口只能在主接口上配置ip mroute-cache distributed,不能配置在子接口上
Step 3. 选择路由器作为RP
处于ISP2网络拓扑中心位置的ISP2BB4被选作RP,所有组播,BGP相关的配置放置在一个回环
接口上
interface Loopback1
ip address J.2.0.124 255.255.255.255
ip pim sparse-mode
ip mroute-cache distributed
no shutdown
Step 4. 在每个路由器上配置静态的RP
ip pim rp-address J.2.0.124
Step 5.限制可以使用地址 232/24的组播组. (可选)
ip pim accept-register list no-ssm-range
P a g e | 631
CCIE R/S & Service Provider Exam Certification Guide
ip access-list extended no-ssm-range deny ip any
232.0.0.0 0.255.255.255 permit ip any any
23.16.5 ISP2的域间配置
router bgp 2
neighbor ISP2INTERNAL peer-group nlri unicast multicast
router bgp 2
neighbor J.2.0.254 remote as 1 nlri unicast multicast
show ip bgp neighbors J.2.0.254
show ip mbgp summary
BGP router identifier J.2.0.207, local AS number 2
MBGP table version is 14925
2 network entries and 1 paths using 222 bytes of memory
90 BGP path attribute entries using 4320 bytes of memory
82 BGP AS-PATH entries using 2336 bytes of memory
BGP activity 1073815/1042808 prefixes, 58323706/58292540 paths
Neighbor
PfxRcd
J.2.0.201
J.2.0.202
J.2.0.203
J.2.0.204
J.2.0.205
J.2.0.206
J.2.0.208
(NoNeg)
J.2.0.254
V
4
4
4
4
4
4
4
4
AS MsgRcvd MsgSent
2 83641 1212820
2 83628 1212935
2 1466577 1212059
2 83645 1213054
2 6290303 1213059
2 1217472 1213014
2 96243 1201558
1 2126718 2811770
TblVer InQ OutQ Up/Down
14925
14925
14925
14925
14925
14925
0
14925
0
0
0
0
0
0
0
0 8w2d
0 8w2d
0 8w1d
0 8w2d
0 8w2d
0 8w2d
0 8w2d
0
0
1
0
0
0
0
0
0 4w3d
0
然后配置MBGP Peer
ip msdp peer J.1.0.207 connect-source Loopback0 remote-as 1
ip msdp peer J.4.0.203 connect-source Loopback0 remote-as 4
ip msdp peer J.3.0.207 connect-source Loopback0 remote-as 3
配置推荐的SA过滤器
The following SA filter configuration is for the connection to the ISP1BB7 router:
ip msdp sa-filter in J.1.0.207 list 124
ip msdp sa-filter out J.1.0.207 list 124
The following SA filter configuration is for the connection to the ISP4BB3 router:
ip msdp sa-filter in J.4.0.203 list 124
ip msdp sa-filter out J.4.0.203 list 124
The following SA filter configuration is for the connection to the ISP3BB7 router:
P a g e | 632
State/
CCIE R/S & Service Provider Exam Certification Guide
ip msdp sa-filter in J.3.0.207 list 124
ip msdp sa-filter out J.3.0.207 list 124
The following access list is configured on the ISP2BB4 router:
access-list 124 deny ip any host 224.0.2.2
access-list 124 deny ip any host 224.0.1.3
access-list 124 deny ip any host 224.0.1.24
access-list 124 deny
ip any host 224.0.1.22
access-list 124 deny ip any host 224.0.1.2
access-list 124 deny ip any host 224.0.1.35
access-list 124 deny ip any host 224.0.1.60
access-list 124 deny ip any host 224.0.1.39
access-list 124 deny ip any host 224.0.1.40
access-list 124 deny ip any 239.0.0.0 0.255.255.255
access-list 124 deny ip 10.0.0.0 0.255.255.255 any
access-list 124 deny ip 127.0.0.0 0.255.255.255 any
access-list 124 deny ip 172.16.0.0 0.15.255.255 any
access-list 124 deny ip 192.168.0.0 0.0.255.255 any
access-list 124 deny ip any 232.0.0.0 0.255.255.255
access-list 124 permit ip any any
配置SA缓存
ip msdp cache-sa-state
验证MSDP伙伴关系
show ip msdp peer
MSDP Peer J.1.0.207 (?), AS 1 (configured AS)
Description:
Connection status:
State:Up, Resets:2, Connection source:Loopback0 (J.2.0.204)
Uptime(Downtime):4w3d, Messages sent/received:114677/106473
Output messages discarded:0
Connection and counters cleared 7w0d
ago
SA Filtering:
Input (S,G) filter:124, route-map:none
Input RP filter:none, route-map:none
Output (S,G) filter:124, route-map:none
Output RP filter:none, route-map:none
SA-Requests:
Input filter:none
Sending SA-Requests to peer:enabled
Peer ttl threshold:0
Input queue size:0, Output queue size:0
MSDP Peer J.4.0.203 (?), AS 4 (configured AS)
Description:
Connection status:
State:Up, Resets:743, Connection source:Loopback0 (J.2.0.204)
Uptime(Downtime):1w2d, Messages sent/received:29748/36008
Output messages discarded:0
Connection and counters cleared 7w0d
ago
SA Filtering:
Input (S,G) filter:124, route-map:none
Input RP filter:none, route-map:none
Output (S,G) filter:124, route-map:none
Output RP filter:none, route-map:none
SA-Requests:
Input filter:none
Sending SA-Requests to peer:enabled
Peer ttl threshold:0
P a g e | 633
CCIE R/S & Service Provider Exam Certification Guide
Input queue size:0, Output queue size:0
MSDP Peer J.3.0.207 (?), AS 3 (configured AS)
Description:
Connection status:
State:Up, Resets:8, Connection source:Loopback0 (J.2.0.204)
Uptime(Downtime):08:12:05, Messages sent/received:1893/493
Output messages discarded:0
Connection and counters cleared 7w0d
ago
SA Filtering:
Input (S,G) filter:124, route-map:none
Input RP filter:none, route-map:none
Output (S,G) filter:124, route-map:none
Output RP filter:none, route-map:none
SA-Requests:
Input filter:none
Sending SA-Requests to peer:enabled
Peer ttl threshold:0
Input queue size:0, Output queue size:0
配置边界
interface POS0/0
description TO ISP1BB7, POS9/0/0
ip pim bsr-border
ip multicast boundary 1
!
access-list 1 deny 224.0.1.39
access-list 1 deny 224.0.1.40
access-list 1 deny 239.0.0.0 0.255.255.255
access-list 1 permit any
23.16.6 配置AnyCast RP
任播RP是一项非常有价值的应用,它利用厂MSDP允许—个PIM-SM网络中存在多个RP的特性。同
时允许存在多个RP,不仅提高了容错性,也提供了一种分担负载的机制。任播RP允许两个或更多的
RP来分担信源注册的负载,并且互为备份路山器。MSDP是实现任播RP的关键协议。在任播RP中,各
个RP的单播IP地址配置相同:这个地址应该配置为主机址址(即掩码为32位),只能配置在回环
(loopback)按口上,并且能用作任播以外的用途.
所有的叶子路由器都进行了配置,这样,任播路由器使用的主机IP地址就足分配给该RP的IP地址。
IP路由选择会自动地为每个信源和接收者选择距离最近的RP。因为某些信源可能选择一个物理RP,
而某些接收者可能选择另一个物理RP,这样PIM-SM的汇集过程就无法进行。增加MSDP来交换活动信
源信息,RP就能正常工作,网络出现故障时,RP切换到备份RP的时间是由内部网关办议(IGP)的收敛
速度决定的。因此,任播RP是一种用P1M-SM配置RP功能的有效方法。
RP只用来建立信源和接收者之间最初的连接,在最后一跳的路由器加入最短路径树后,就不需要
RP了
MSDP最初是用于域间组播应用的,在任播RP应用中, MSDP在域内提供了一种冗余备份和负载
分担机制。企业用户通常使用任播RP来配置PIM-SM网络, 实现单个组播域中的冗余性要求。
在任播RP中,需要在两个或者多个RP中设置相同的Loopback地址。任播RP回环地址应该使用主机
地址,同时,所有下游路由器都需要进行配置,使用如上所设的loopback地址。IP路由则会自动选择
最近的RP,如果链路出现故障,新的信源会根据IGP的收敛特性,快速找到新的RP,并完成注册。
如下则是一个任播RP配置实例
RP1和RP2拥有相同的loopback接口地址,同时,下游路由器都指向这个地址。
P a g e | 634
CCIE R/S & Service Provider Exam Certification Guide
23.16.7 ISP1的域内配置
ISP1较ISP2建立时间更长,规模更大,希望灵活的确定通告自己的那个IP地址给其他ISP。还希望
在组播网络中实现冗余和负载分担。ISP决定在自己的边界处实现2个任意播RP。这两个路由器通过共
享的单一逻辑ip
这种拓扑结构的优点是:
多个Anycast RP具有冗余性
多个Anycast RP可以进行负载均摊
任播RP机制仅以来单播路由选择的快速收敛
但这种拓扑也有缺点
与ISP2相比实现比较困难
和ISP2相比排除故障比较困难
Step 1. 配置全局组播
ip multicast-routing distributed
P a g e | 635
CCIE R/S & Service Provider Exam Certification Guide
Step 2. 接口配置组播
interface POS3/0
ip pim sparse-mode
ip mroute-cache distributed
Step 3. 选择路由器作为RP
如图所示,在ISP1中存在2个AnycastRP,则需要在ISP1BB3和ISP1BB7上配置相同的主机地址
interface Loopback1
ip address J.1.0.100 255.255.255.255
ip pim sparse-mode
同时还需要在BB3和BB7上配置维持MBGP和MSDP通讯的回环接口地址
For the ISP1BB3 router:
ip msdp peer J.1.0.207 connect-source Loopback0
ip msdp cache-sa-state
ip msdp originator-id Loopback0
For the ISP1BB7 router:
ip msdp peer J.1.0.203 connect-source Loopback0
ip msdp cache-sa-state
ip msdp originator-id Loopback0
Step 4. 在每个路由器上配置静态的RP
ip pim rp-address J.1.0.100
Step 5.限制可以使用地址 232/24的组播组. (可选)
ip pim accept-register list no-ssm-range
ip access-list extended no-ssm-range deny ip any
232.0.0.0 0.255.255.255 permit ip any any
23.16.8 ISP1的域间配置
Step.1 对等体组的配置:
router bgp 1
neighbor ISP1INTERNAL peer-group
neighbor ISP1INTERNAL remote-as 1
neighbor ISP1INTERNAL update-source Loopback0
!
address-family ipv4 multicast
neighbor ISP1INTERNAL activate
neighbor J.1.0.200 activate
neighbor J.1.0.201 activate
neighbor J.1.0.202 activate
P a g e | 636
CCIE R/S & Service Provider Exam Certification Guide
neighbor J.1.0.204 activate
neighbor J.1.0.205 activate
neighbor J.1.0.208 activate
neighbor J.1.0.209 activate
neighbor J.1.0.210 activate
exit-address-family
每个路由器的BGP配置有所不同
The following configuration is for the ISP1BB3 router:
router bgp 1
neighbor ISP4ISP1PEER peer-group
neighbor ISP4ISP1PEER remote-as 4
neighbor J.4.0.33 peer-group ISP4ISP1PEER
!
address-family ipv4 multicast
neighbor ISP4ISP1PEER activate
neighbor J.4.0.33 activate
exit-address-family
The following configuration is for the ISP1BB6 router:
router bgp 1
neighbor ISP3ISP1PEER peer-group
neighbor ISP3ISP1PEER remote-as 3
neighbor J.3.0.245 peer-group ISP3ISP1PEER
!
address-family ipv4 multicast
neighbor J.3.0.245 activate
exit-address-family
The following configuration is for the ISP1BB7 router:
router bgp 1
neighbor J.2.0.253 remote-as 2
!
address-family ipv4 multicast
neighbor J.2.0.253 activate
exit-address-family
Step 2. 配置MSDP对等体
The following configuration is for the ISP1BB3 router:
ip msdp peer J.4.0.203 connect-source Loopback0 remote-as 4
ip msdp peer J.1.0.204 connect-source Loopback0
ip msdp originator-id Loopback0
The following configuration is for the ISP1BB4 router:
ip msdp peer J.1.0.203 connect-source Loopback0
ip msdp peer J.1.0.207 connect-source Loopback0
The following configuration is for the ISP1BB7 router:
ip msdp peer J.2.0.204 connect-source Loopback0 remote-as 2
ip msdp peer J.1.0.204 connect-source Loopback0
ip msdp originator-id Loopback0
Step 3.配置推荐的SA过滤器
The following configures the SA filters for the ISP1BB3 router (connection to the ISP4BB3 router):
ip msdp sa-filter in J.4.0.203 list 124
ip msdp sa-filter out J.4.0.203 list 124
The following configures the SA filters for the ISP1BB7 router (connection to the ISP2BB4 router):
ip msdp sa-filter in J.2.0.204 list 124
ip msdp sa-filter out J.2.0.204 list 124
P a g e | 637
CCIE R/S & Service Provider Exam Certification Guide
Configure the following access list on both the ISP1BB3 and ISP1BB7 routers:
access-list 124 deny ip any host 224.0.2.2
access-list 124 deny ip any host 224.0.1.3
access-list 124 deny ip any host 224.0.1.24
access-list 124 deny ip any host 224.0.1.22
access-list 124 deny ip any host 224.0.1.2
access-list 124 deny ip any host 224.0.1.35
access-list 124 deny ip any host 224.0.1.60
access-list 124 deny ip any host 224.0.1.39
access-list 124 deny ip any host 224.0.1.40
access-list 124 deny ip any 239.0.0.0 0.255.255.255
access-list 124 deny ip 10.0.0.0 0.255.255.255 any
access-list 124 deny ip 127.0.0.0 0.255.255.255 any
access-list 124 deny ip 172.16.0.0 0.15.255.255 any
access-list 124 deny ip 192.168.0.0 0.0.255.255 any
access-list 124 deny ip any 232.0.0.0 0.255.255.255
Step 4. 配置SA缓存
ip msdp cache-sa-state
Step 5. 验证MSDP配置
show ip msdp peer J.4.0.203
MSDP Peer J.4.0.203 (?), AS 4 (configured AS)
Description:
Connection status:
State:Up, Resets:4, Connection source:Loopback0 (J.1.0.203)
Uptime(Downtime):1d06h, Messages sent/received:4022/5221
Output messages discarded:0
Connection and counters cleared 5w3d
ago
SA Filtering:
Input (S,G) filter:124, route-map:none
Input RP filter:none, route-map:none
Output (S,G) filter:124, route-map:none
Output RP filter:none, route-map:none
SA-Requests:
Input filter:none
Sending SA-Requests to peer:enabled
Peer ttl threshold:0
Input queue size:0, Output queue size:0
Step 6. 配置组播边界
必须在与其他ISP交接的每个路由器接口配置组播边界。如下是ISP1BB3的配置文件
interface POS9/0/0
description TO ISP4BB4, POS 12/0/0
ip pim bsr-border
ip pim sparse-mode
ip multicast boundary 10
!
access-list 10 deny 224.0.1.39
access-list 10 deny 224.0.1.40
access-list 10 deny 239.0.0.0 0.255.255.255
access-list 10 permit any
P a g e | 638
CCIE R/S & Service Provider Exam Certification Guide
23.16.9 ISP1中的客户配置
客户网络结构如下图所示:
对于客户而言,如证券公司,需要将自己发布的消息让其他客户接受到,如上便是一种ISP1的POP
接入结构,而且仅增加了接入点
这种拓扑结构的优点是:
使用RP可以控制Internet上对组播内容的访问
配置简单
使用RP所需要的命令最少
但这种拓扑也有缺点
容易受到DOS攻击
Step 1. 配置全局组播
ip multicast-routing
Step 2. 配置组播接口
interface fa3/0
ip pim sparse-mode
interface eth5/2
ip pim sparse-mode
Step 3. 配置静态RP
ip pim rp-address J.1.0.100
P a g e | 639
CCIE R/S & Service Provider Exam Certification Guide
为了避免DOS攻击可以使用一种有RP但不实用MBGP的组播方式。
这种拓扑结构的优点是:
有RP但不使用MBGP允许从Internet上对组播内容进行访问
客户可以有自己的,不需要离开本公司范围的组播会话
客户可以对拒绝服务式攻击进行限制
但这种拓扑也有缺点
与使用外部RP案例相比,实现相当复杂
Step 1. 配置全局组播
ip multicast-routing
Step 2. 配置组播接口
interface FastEthernet3/0
ip pim sparse-mode
interface Ethernet5/2
ip pim sparse-mode
interface Ethernet5/3
ip pim sparse-mode
Step 3. 选择路由器作为RP
如图所示,客户仅有一台路由器,则ISP1AC1作为RP。
interface Loopback0
ip address K.250.0.201 255.255.255.255
ip pim sparse-mode
ip mroute-cache distributed
no shut
Step 4. 配置静态RP
ISP1AC1#ip pim rp-address K.250.0.201
然后需要配置ISP1AC1的域间组播
Step 1. 配置MSDP对等体组.
The following configuration is for the ISP1AC1 router:
ip msdp peer J.1.0.203 connect-source Loopback0
The following configuration is for the ISP1BB3 router:
ip msdp peer K.250.1.2 connect-source Loopback0
Step 2. 配置SA过滤
The following sample configuration shows how to configure the SA filters on the ISP1AC1 router
for the connection to the ISP1BB3 router:
ip msdp sa-filter in J.1.0.203 list 124
ip msdp sa-filter out J.1.0.203 list 124
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
P a g e | 640
ip any host 224.0.2.2
ip any host 224.0.1.3
ip any host 224.0.1.24
ip any host 224.0.1.22
ip any host 224.0.1.2
ip any host 224.0.1.35
ip any host 224.0.1.60
ip any host 224.0.1.39
ip any host 224.0.1.40
ip any 239.0.0.0 0.255.255.255
ip 10.0.0.0 0.255.255.255 any
CCIE R/S & Service Provider Exam Certification Guide
access-list 124 deny ip 127.0.0.0 0.255.255.255 any
access-list 124 deny ip 172.16.0.0 0.15.255.255 any
access-list 124 deny ip K.168.0.0 0.0.255.255 any
access-list 124 deny ip any 232.0.0.0 0.255.255.255
access-list 124 permit ip any any
Step 3. 配置SA缓存
在ISP1AC1上配置
ip msdp cache-sa-state
Step 4. 验证MSDP
show ip msdp peer
MSDP Peer J.1.0.203 (?), AS ?
Description:
Connection status:
State:Up, Resets:1, Connection source:Loopback0 (K.250.0.201)
Uptime(Downtime):2w1d, Messages sent/received:21824/66342
Output messages discarded:0
Connection and counters cleared 2w2d
ago
SA Filtering:
Input (S,G) filter:124, route-map:none
Input RP filter:none, route-map:none
Output (S,G) filter:124, route-map:none
Output RP filter:none, route-map:none
SA-Requests:
Input filter:none
Sending SA-Requests to peer:disabled
Peer ttl threshold:0
Input queue size:0, Output queue size:0
Step 5. 配置组播边界
interface FastEthernet3/0
ip pim bsr-border
ip pim sparse-mode
ip multicast boundary 1
access-list 1 deny 224.0.1.39
access-list 1 deny 224.0.1.40
access-list 1 deny 239.0.0.0 0.255.255.255
access-list 1 permit any
23.17 SSM实现域间组播
23.17.1 PIM-SSM简介
源特定组播(SSM:Source Specific Multicast)是一种区别于传统组播的新的业务模型,它使用组播
组地址和组播源地址同时来标识一个组播会话,而不是向传统的组播服务那样只使用组播组地址来标
识一个组播会话。SSM保留了传统PIM-SM模式中的主机显示加入组播组的高效性,但是跳过了PIM-SM
模式中的共享树和RP(Rendezvous Point,集合点)规程。在传统PIM-SM模式中,共享树和RP规程使用(*,
G)组对来表示一个组播会话,其中(G)表示一个特定的IP组播组,而(*)表示发向组播组G的任何一个源。
SSM直接建立由(S,G)标识的一个组播最短路径树(SPT:Shortest Path Tree),其中(G)表示一个特定的IP组
播组地址,而(S)表示发向组播组G的特定源的IP地址。SSM 的一个(S,G)对也被称为一个频道(Channel),
以区分传统PIM-SM组播中的任意源组播组(ASM:Any Source Multicast)。由于ASM支持点到多点和多点
P a g e | 641
CCIE R/S & Service Provider Exam Certification Guide
到多点两种组播业务模式,因此源的发现过程是ASM复杂性的原因。例如在PIM-SM模式中,用户点击
浏览器中的组播内容,接收端设备只被通知到组播组的内容,而没有被通知到组播源的信息。而在SSM
模式中,用户端将同时接收到组播源和组播组信息。
因此,SSM特别适合于点到多点的组播服务,例如网络娱乐频道、网络新闻频道、网络体育频道
等业务,但如果要求多点到多点组播服务则需要ASM模式。
PIM-SSM是对传统PIM协议的扩展,使用SSM,用户能直接从组播源接收组播业务量,PIM-SSM
利用PIM-SM的功能,在组播源和客户端之间,产生一个SPT树。但PIM-SSM在产生SPT树时,不需要汇
聚点(RP)的帮助。
一个具有SSM功能的网络相对于传统的PIM-SM网路来说,具有非常突出的优越性。网络中不再
需要汇聚点,也不再需要共享树或RP的映射,同时网络中也不再需要MSDP协议,以完成RP与RP之间
的源发现。
23.17.2 IGMPv3
源特定组播需要IGMPv3 技术,为了成功实施SSM 组播业务,除了要求网络端到端地支持网络组
播和SSM 模式外,同时还要求网络和应用支持IGMP V3 协议栈。
源特定组播需要使用IGMP V3,IGMP V3 在IGMP V1/V2 的基础上提供了额外的源过滤组播功能
(SFM:Source-Filtered Multicast)。在IGMP V1/V2 中,主机只根据组地址来决定加入某个组并从任何一
个源接收发给该组地址的业务量。具有源过滤组播功能(SFM)的主机使用IGMP V3 来通告该主机所希望
加入的组播组,同时还通告该主机所希望接收的组播源的地址。主机可以通过一个包括列表(Inclusion
List)或一个排除列表(Exclusion List),前者规定了该主机所期望接收的组播源的地址(即规定了哪些源能
发送给该组播组),而后者规定了该主机不希望接收的组播源的地址。
IGMPv3的工作原理和IGMPv2并没有本质的改变,只是在某些地方做了改进和优化。以下列出了
IGMPv3的主要改进:支持源特定组播SSM;向后兼容IGMPvl和IGMPv2:主机可以定义要接收的组播源地址:
非查询路由器可以与查询路由器的保持参数值同步:最大响应时间从25.5秒增加到53分钟,适合于较大
的网络:辅助数据字段为将来的应用预留了空间:关系成员报告报文发送给目的地址224.0.0.22,可以帮
助二层交换机更有效地实现IGMP监听(IGMPSnooping)功能;报告报文中可以包含多个组记录,可以有效
地减少网络通信量;
在IGMPv3中,取消了前面版本中的响应抑制功能,主要原因是:
a)
使用响应抑制时,路由器只知道子网上是否有组成员,而不知道有几个组成员,以及
成员是哪些主机;取消响应抑制,路由器就可以记录每一个组成员的信息,可以开发
记帐等功能;
b)
许多网桥或者二层/三层交换机在实现IGMP监听功能时,为了避免响应抑制,一般不
转发网段间的IGMP报文。取消了响应抑制后,可以简化这些设备的设计;
c)
取消响应抑制后,主机不必处理来自其它主机的报文,简化了主机的实现。
在查询报文中,增加了S标志位,可以提高系统的健壮性。
23.17.3 IGMPv3lite和URD
IGMPv3lite和URD都是Cisco设计的一种过渡性的组播。可以使用户很快的编写和运行SSM应用程
序,同时IGMPv3lite在支持IGMPv3的时候,可以在激动切换到IGMPv3模式
URD也是Cisco的一种过渡方案,即使现有不支持IGMPv3的IP组播接收端,也可以使用。Cisco推
P a g e | 642
CCIE R/S & Service Provider Exam Certification Guide
荐使用URD主机信令的方式。
23.17.4 用URD部署SSM组播
假设ISP的AS内已经配置了使用MSDP的组播,并且ISP间可以相互连通,用URD部署SSM采用如下
策略:
1. 确定一个运行IP组播的SSM地址范围,缺省范围232.0.0.0/8
2. 禁止RP和MSDP伙伴将这个SSM地址段按照ISM服务进行处理(前文中过滤这个地址段就是这
个目的)
3. 配置边沿设备对URD主机报告进行处理
23.17.5 部署SSM组播优点
1.
不需要对Ip组播地址管理,SSM不依赖伟以德族地址,因为信源地址和组地址的组合式是唯
一的,如果使用SSM,组播地址将不再是实现域间组播的一个问题
2.
拒绝了来自位置信源的DOS攻击,在SSM仅有发出请求,才会有数据传输。
3.
便于安装管理
4.
非常适用Internet广播应用
23.17.6 部署SSM组播不足
1.
对SSM地址范围内的遗留应用的限制
2.
IGMPv3lite和URD需要末跳路由器为Cisco路由器
3.
地址管理的限制
4.
状态维护的限制
23.17.7 部署SSM组播
下图显示了SSM网络拓扑中的逻辑连接。如图所示,IPTV服务器是SSM信源,位于ISP2内。(URD web
服务器正好也位于1SP2内,但URD web服务器可以位于其他ISP内的。由于URDweb职务器的位置并不
关键,因此在拓扑图中省略了URDweb服务)IPTV客户端是SSM/URD客户端。SSM/URD客户端位于客户
网络ISP1AC1内。视频和音频流用组播地址232.0.2.1 232.0.2.2,在该拓扑中,请注意,所有现有的RP和
MSDP伙件都停止处理SSM地址范围的地址。
P a g e | 643
CCIE R/S & Service Provider Exam Certification Guide
Step 1 配置SSM模式
Router(config)# ip pim ssm [default | range access-list]
Step 2 对相应接口配置组播
Router(config)# interface type number
Router(config-if)# ip pim {sparse-mode |sparse-dense-mode}
Router(config-if)# ip igmp version 3
or
Router(config-if)# ip igmp v3lite
or
Router(config-if)# ip urd
下面以Cisco推荐的URD模式为例:
Step 1. 配置SSM模式,在ISP1中所有SSM域中加入全局命令
ip pim ssm
Step 2. 在RP配置针对SSM地址范围内的PIM/MSDP通信过滤
ip msdp sa-filter in J.4.0.203 list 124
ip msdp sa-filter out J.4.0.203 list 124
The following access list is configured on the ISP1BB3 router:
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
access-list 124 deny
ip any host 224.0.2.2
ip any host 224.0.1.3
ip any host 224.0.1.24
ip any host 224.0.1.22
ip any host 224.0.1.2
ip any host 224.0.1.35
ip any host 224.0.1.60
ip any host 224.0.1.39
ip any host 224.0.1.40
ip any 239.0.0.0 0.255.255.255
ip 10.0.0.0 0.255.255.255 any
ip 127.0.0.0 0.255.255.255 any
ip 172.16.0.0 0.15.255.255 any
ip 192.168.0.0 0.0.255.255 any
ip any 232.0.0.0 0.255.255.255
Step 3.用户接口上配置URD
ISP1AC1(config)# interface Ethernet 5/3
ISP1AC1(config-if)# ip urd
ISP1AC1(config-if)#
Step 4. 验证URD客户端是否连接服务器
ISP1AC1# debug ip igmp 232.0.2.1
ISP1AC1# debug ip igmp 232.0.2.2
ISP1AC1# debug ip urd
ISP1AC1# debug ip mrouting
Mar 7 14:17:37 PST:URD:Intercepted TCP SYN packet from K.250.1.41,
0:772431754(ack:seq)
Mar 7 14:17:37 PST:URD:Intercepted TCP ACK packet from K.250.1.41,
48154099:772431755(ack:seq)
Mar 7 14:17:37 PST:URD:Data intercepted from K.250.1.41, offset 5
Mar 7 14:17:37 PST:URD:Enqueued string:'/cgi-bin/
error.html?group=232.0.2.2&port=22306&source=J.2.11.6&lifet'
Mar 7 14:17:37 PST:URD:Dequeued URD packet, len:137
Mar 7 14:17:37 PST:URD:String:/cgi-bin/
P a g e | 644
CCIE R/S & Service Provider Exam Certification Guide
error.html?group=232.0.2.2&port=22306&source=J.2.11.6&lifetim
e=7200&group=232.0.2.1&port=49254&source=J.2.11.6&lifetime=7200
Mar 7 14:17:37 PST:URD:Matched token:group
Mar 7 14:17:37 PST:URD:Parsed value:232.0.2.2
Mar 7 14:17:37 PST:URD:Matched token:source
Mar 7 14:17:37 PST:URD:Parsed value:J.2.11.6
Mar 7 14:17:37 PST:URD:Matched token:lifetime
Mar 7 14:17:37 PST:URD:Parsed value:7200
Mar 7 14:17:37 PST:URD:Matched token:group
Mar 7 14:17:37 PST:URD:Parsed value:232.0.2.1
Mar 7 14:17:37 PST:URD:Matched token:source
Mar 7 14:17:37 PST:URD:Parsed value:J.2.11.6
Mar 7 14:17:37 PST:URD:Matched token:lifetime
Mar 7 14:17:37 PST:URD:Parsed value:7200
Mar 7 14:17:37 PST:URD:Creating IGMP source state for group 232.0.2.2
Mar 7 14:17:37 PST:IGMP:Setting source flags 18 on (J.2.11.6,232.0.2.2)
Mar 7 14:17:37 PST:URD:Creating IGMP source state for group 232.0.2.1
Mar 7 14:17:38 PST:MRT:Create (J.2.11.6/32, 232.0.2.1), RPF
FastEthernet3/0/K.250.1.1, PC 0x609E5CA0
Mar 7 14:17:38 PST:MRT:Add/Update Ethernet5/3/232.0.2.1 to the olist of
(J.2.11.6, 232.0.2.1), Forward state
Mar 7 14:17:38 PST:MRT:Create (K.250.1.41/32, 232.0.2.1), RPF
Ethernet5/3/0.0.0.0, PC 0x609F25FC
Mar 7 14:17:39 PST:IGMP:Received v2 Report on Ethernet5/3 from
K.250.1.41 for 232.0.2.2
Mar 7 14:17:39 PST:MRT:Create (J.2.11.6/32, 232.0.2.2), RPF
FastEthernet3/0/K.250.1.1, PC 0x609E5CA0
Mar 7 14:17:39 PST:MRT:Add/Update Ethernet5/3/232.0.2.2 to the olist of
(J.2.11.6, 232.0.2.2), Forward state
Mar 7 14:17:39 PST:MRT:Create (K.250.1.41/32, 232.0.2.2), RPF
Ethernet5/3/0.0.0.0, PC 0x609F25FC
ISP1AC1# show ip mroute
IP Multicast Routing Table
Flags:D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C Connected,
L - Local, P - Pruned, R - RP-bit set, F - Register flag,
T - SPT-bit set, J - Join SPT, M - MSDP created entry,
X - Proxy Join Timer Running, A - Advertised via MSDP, U - URD,
I - Received Source Specific Host Report
Outgoing interface flags:H - Hardware switched
Timers:Uptime/Expires
Interface state:Interface, Next-Hop or VCD, State/Mode
(*, 224.0.1.40), 00:01:55/00:00:00, RP K.250.0.201, flags:SJCL
Incoming interface:Null, RPF nbr 0.0.0.0
Outgoing interface list:
Loopback0, Forward/Sparse, 00:01:55/00:02:59
(J.2.11.6, 232.0.2.2), 00:00:45/00:02:59, flags:sCTUI
Incoming interface:FastEthernet3/0, RPF nbr K.250.1.1
Outgoing interface list:
Ethernet5/3, Forward/Sparse, 00:00:16/00:02:46
(K.250.1.41, 232.0.2.2), 00:00:45/00:02:14, flags:sPCT
P a g e | 645
CCIE R/S & Service Provider Exam Certification Guide
Incoming interface:Ethernet5/3, RPF nbr 0.0.0.0
Outgoing interface list:Null
23.17.8 配置域间SSM
ISP1AC1
Device Characteristics
Host name
ISP1AC1
Chassis type
Cisco 7206VXR router
Physical interfaces
8 Ethernet/IEEE 802.3
Hardware components
Cisco 7206VXR (NPE300) processor
Software loaded
Cisco IOS Release 12.1(5)T
Memory
Cisco 7206VXR (NPE300) processor (revision D): 40 MB
IP addresses
Loopback0: K.250.0.201 255.255.255.255
3 Fast Ethernet/IEEE 802.3
FastEthernet3/0: K.250.1.2 255.255.255.248
Ethernet5/2: K.250.1.33 255.255.255.248
Ethernet5/3: K.250.1.41 255.255.255.248
ISP1CA1#show running-config
!
version 12.1
service timestamps debug datetime localtime show-timezone
service timestamps log datetime localtime show-timezone
!
hostname ISP1AC1
P a g e | 646
CCIE R/S & Service Provider Exam Certification Guide
!
logging buffered 1000000 debugging
logging rate-limit console 10 except errors
aaa new-model
aaa authentication login default group tacacs+
enable
aaa authentication login NOTACACS enable
aaa accounting commands 15 default start-stop
group tacacs+
aaa accounting system default start-stop group
tacacs+
enable password lab
!
clock timezone PST -8
clock summer-time PST recurring
ip subnet-zero
ip cef
!
!
ip multicast-routing
call rsvp-sync
!
!
interface Loopback0
ip address K.250.0.201 255.255.255.255
ip pim sparse-mode
!
interface FastEthernet3/0
description To ISP1DA1, FA0/1/0
ip address K.250.1.2 255.255.255.248
ip pim bsr-border
ip pim sparse-mode
ip multicast boundary 1
duplex full
!
interface Ethernet5/2
description TO ISP1AC1IPTV
ip address K.250.1.33 255.255.255.248
ip pim sparse-mode
duplex half
!
interface Ethernet5/3
description TO ISP1AC1CL1
ip address K.250.1.41 255.255.255.248
ip pim sparse-mode
ip urd
duplex half
!
ip classless
ip route 0.0.0.0 0.0.0.0 K.250.1.1
no ip http server
ip pim rp-address K.250.0.201
ip pim ssm default
ip msdp peer J.1.0.203 connect-source
FastEthernet3/0
ip msdp sa-filter in J.1.0.203 list 124
ip msdp sa-filter out J.1.0.203 list 124
ip msdp cache-sa-state
ip msdp redistribute list 124
!
access-list 1 deny 224.0.1.39
access-list 1 deny 224.0.1.40
access-list 1 deny 239.0.0.0 0.255.255.255
access-list 1 permit any
access-list 124 deny ip any host 224.0.2.2
access-list 124 deny ip any host 224.0.1.3
access-list 124 deny ip any host 224.0.1.24
access-list 124 deny ip any host 224.0.1.22
access-list 124 deny ip any host 224.0.1.2
access-list 124 deny ip any host 224.0.1.35
access-list 124 deny ip any host 224.0.1.60
access-list 124 deny ip any host 224.0.1.39
access-list 124 deny ip any host 224.0.1.40
access-list 124 deny ip any 239.0.0.0 0.255.255.255
access-list 124 deny ip 10.0.0.0 0.255.255.255 any
access-list 124 deny ip 127.0.0.0 0.255.255.255 any
access-list 124 deny ip 172.16.0.0 0.15.255.255 any
access-list 124 deny ip 192.168.0.0 0.0.255.255 any
access-list 124 deny ip any 232.0.0.0 0.255.255.255
access-list 124 permit ip any any
snmp-server engineID local
00000009020000024ADFB800
snmp-server community public RO
snmp-server community STSS RW
snmp-server packetsize 2048
snmp-server contact sysadmin
snmp-server chassis-id ISP1AC1
!
tacacs-server host 223.255.254.254 key cisco12345
tacacs-server key cisco12345
!
line con 0
exec-timeout 0 0
login authentication NOTACACS
transport input none
line aux 0
exec-timeout 0 0
line vty 0 4
exec-timeout 0 0
password lab
line vty 5 15
!
ntp clock-period 17180286
ntp update-calendar
ntp server 223.255.254.254 version 1
end
P a g e | 647
CCIE R/S & Service Provider Exam Certification Guide
ISP2BB3配置如下
ISP2BB3
Host name
Chassis type
Physical interfaces
Device Characteristics
ISP2BB3
Cisco 12008 Gigabit Switch Router (GSR)
1 Ethernet/IEEE 802.3
1 Gigabit Ethernet/IEEE 802.3
7 Packet over SONET (POS)
Hardware components Cisco 12008/GRP (R5000) processor (revision 0x01)
1 Route Processor card 1 clock scheduler card
3 switch fabric cards
1 four-port OC-3 POS controller (4 POS)
3 OC-48 POS E.D. controllers (3 POS)
1 single-port Gigabit Ethernet/IEEE 802.3z controller (1 Gigabit Ethernet)
Software loaded
Cisco IOS Release 12.0(13)S2
Memory
Cisco 12008/GRP (R5000) processor (revision 0x01): 128 MB
IP addresses
Loopback0: J.2.0.203 255.255.255.255
POS0/0: J.2.0.245 255.255.255.252
POS0/1: J.2.182.1 255.255.255.240
POS0/2: J.2.192.1 255.255.255.240
POS1/0: J.2.0.14 255.255.255.252
POS2/0: J.2.0.22 255.255.255.252
POS4/0: J.2.0.33 255.255.255.252
GigabitEthernet6/1.330: J.2.11.1 255.255.255.248
GigabitEthernet6/1.340: J.2.12.1 255.255.255.0
ISP2BB3#show running-config
!
version 12.0
!
service timestamps debug datetime localtime
ip subnet-zero
show-timezone
ip domain-name isp2.com
service timestamps log datetime localtime
ip name-server J.4.7.10
show-timezone
ip multicast-routing distributed
!
clns routing
hostname ISP2BB3
!
!
!
aaa new-model
interface Loopback0
aaa authentication login default tacacs+ enable
ip address J.2.0.203 255.255.255.255
aaa authentication login NOTACACS enable
no ip directed-broadcast
aaa accounting exec default start-stop tacacs+
ip pim sparse-mode
aaa accounting commands 0 default start-stop
ip router isis
tacacs+
ip mroute-cache distributed
aaa accounting commands 15 default start-stop
!
tacacs+
interface POS0/0
enable password lab
description TO ISP3BB7, POS12/0/0
!
ip address J.2.0.245 255.255.255.252
clock timezone PDT -8
no ip directed-broadcast
clock summer-time PDT recurring
ip pim bsr-border
P a g e | 648
CCIE R/S & Service Provider Exam Certification Guide
ip pim sparse-mode
ip multicast boundary 1
ip router isis
ip mroute-cache distributed
crc 16
clock source internal
!
interface POS0/1
ip address J.2.182.1 255.255.255.240
no ip directed-broadcast
ip router isis
no ip mroute-cache
no keepalive
crc 16
clock source internal
!
interface POS0/2
ip address J.2.192.1 255.255.255.240
no ip directed-broadcast
ip router isis
no ip mroute-cache
no keepalive
crc 16
clock source internal
!
interface POS1/0
description TO ISP2BB1/0, POS 3/0
ip address J.2.0.14 255.255.255.252
ip pim sparse-mode
ip router isis
ip mroute-cache distributed
load-interval 30
crc 32
clock source internal
!
interface POS2/0
description TO ISP2BB2, POS3/0
ip address J.2.0.22 255.255.255.252
ip pim sparse-mode
ip router isis
ip mroute-cache distributed
crc 32
clock source internal
!
interface POS4/0
ip address J.2.0.33 255.255.255.252
ip pim sparse-mode
ip router isis
ip mroute-cache distributed
crc 32
clock source internal
!
interface GigabitEthernet6/0
no ip address
no ip directed-broadcast
no negotiation auto
!
interface GigabitEthernet6/1.330
description To Client/Server
encapsulation dot1Q 330
ip address J.2.11.1 255.255.255.248
ip pim sparse-mode
ip router isis
!
interface GigabitEthernet6/1.340
description OPEN
encapsulation dot1Q 340
ip address J.2.12.1 255.255.255.0
ip pim sparse-mode
ip router isis
!
interface GigabitEthernet6/1.350
encapsulation dot1Q 350
ip pim sparse-mode
!
router isis
net 49.0002.0000.0000.0003.00
is-type level-1
!
router bgp 2
no synchronization
redistribute connected
neighbor ISP2INTERNAL peer-group nlri unicast
multicast
neighbor ISP2INTERNAL remote-as 2
neighbor ISP2INTERNAL update-source Loopback0
neighbor ISP2INTERNAL route-map connected-bgp
out
neighbor ISP2ISP3PEER peer-group nlri unicast
multicast
neighbor ISP2ISP3PEER remote-as 3
neighbor J.2.0.201 peer-group ISP2INTERNAL
neighbor J.2.0.202 peer-group ISP2INTERNAL
neighbor J.2.0.204 peer-group ISP2INTERNAL
neighbor J.2.0.205 peer-group ISP2INTERNAL
neighbor J.2.0.206 peer-group ISP2INTERNAL
neighbor J.2.0.207 peer-group ISP2INTERNAL
neighbor J.2.0.208 peer-group ISP2INTERNAL
neighbor J.2.0.246 peer-group ISP2ISP3PEER
no auto-summary
!
no ip classless
ip http server
ip http authentication local
ip pim rp-address J.2.0.124
ip pim accept-register list no-ssm-range
!
!
ip access-list extended no-ssm-range
deny ip any 232.0.0.0 0.255.255.255
permit ip any any
logging trap emergencies
access-list 1 deny 224.0.1.39
access-list 1 deny 224.0.1.40
access-list 1 deny 239.0.0.0 0.255.255.255
access-list 1 permit any
P a g e | 649
CCIE R/S & Service Provider Exam Certification Guide
access-list 10 permit J.2.11.1
access-list 20 permit J.2.11.9
access-list 69 permit J.2.11.0 0.0.0.255
access-list 69 deny any
access-list 112 deny ip 223.0.0.0 0.255.255.255
255.255.0.0 0.0.255.255
access-list 112 permit ip any any
access-list 124 deny ip any 229.0.0.0
0.255.255.255
access-list 124 deny ip any 239.0.0.0
0.255.255.255
access-list 124 permit ip any any
snmp-server engineID local
00000009020000101F453CC0
snmp-server community public RO
snmp-server community STSS RW
snmp-server contact sysadmin
snmp-server chassis-id ISP2BB3
route-map connected-bgp permit 10
match ip address 112
set ip next-hop J.2.0.203
set origin igp
!
tacacs-server host 223.255.254.254
tacacs-server key cisco12345
!
!
line con 0
exec-timeout 0 0
login authentication NOTACACS
transport input none
line aux 0
line vty 0 4
exec-timeout 0 0
password lab
!
ntp clock-period 17180140
ntp update-calendar
ntp server 223.255.254.254 version 1
end
ISP1BB3配置如下
ISP1BB3
Host name
Chassis type
Physical interfaces
Hardware components
Software loaded
Memory
IP addresses
P a g e | 650
Device Characteristics
ISP1BB3
Cisco 7513 router
4 Ethernet/IEEE 802.3
1 Fast Ethernet/IEEE 802.3
5 Packet over SONET (POS)
Cisco Route/Switch Processor Version 2 (RSP2) (R4700)
6 Versatile Interface Processor Version 2 (VIP2) controllers
(1 Fast Ethernet) (4 Ethernet) (5 POS)
Cisco IOS Release 12.1(5)T
Cisco RSP2 (R4700) processor: 128 MB
Loopback0: J.1.0.203 255.255.255.255
Loopback1: J.1.0.100 255.255.255.255
Ethernet0/0/2: J.1.6.1 255.255.255.248
FastEthernet0/1/0: J.1.99.1 255.255.255.248
POS1/0/0: J.1.0.2 255.255.255.252
POS1/1/0: J.1.0.14 255.255.255.252
POS3/0/0: J.1.0.17 255.255.255.252
POS8/1/0: J.4.0.34 255.255.255.252
CCIE R/S & Service Provider Exam Certification Guide
ISP1BB3#show running-config
!
version 12.1
service timestamps debug datetime localtime
service timestamps log datetime localtime
service udp-small-servers
service tcp-small-servers
!
hostname ISP1BB3
!
logging buffered 10000 debugging
logging rate-limit console 10 except errors
no logging console
aaa new-model
aaa group server tacacs+ E2EST
server 223.255.254.254
!
aaa authentication login default group E2EST
enable
aaa authentication login NOTACACS enable
aaa accounting exec default start-stop group
E2EST
aaa accounting commands 0 default start-stop
group E2EST
aaa accounting commands 15 default start-stop
group E2EST
aaa accounting system default start-stop group
E2EST
enable password lab
!
clock timezone PDT -8
clock summer-time PDT recurring
ip subnet-zero
ip cef distributed
ip domain-name isp1.com
ip host tftpserv 223.255.254.254
ip name-server J.4.7.10
!
ip multicast-routing distributed
clns routing
no tag-switching advertise-tags
no tag-switching ip
!
interface Loopback0
ip address J.1.0.203 255.255.255.255
ip directed-broadcast
ip router isis
ip pim sparse-mode
!
interface Loopback1
ip address J.1.0.100 255.255.255.255
ip router isis
ip pim sparse-mode
!
iterface Ethernet0/0/2
description TO ISP1BB3CL1
ip address J.1.6.1 255.255.255.248
ip router isis
ip pim sparse-mode
ip route-cache distributed
ip mroute-cache distributed
ip urd
load-interval 30
!
interface FastEthernet0/1/0
description to isp1bb3ce FA1
ip address J.1.99.1 255.255.255.248
ip router isis
ip pim sparse-mode
ip route-cache distributed
ip mroute-cache distributed
no keepalive
full-duplex
!
interface POS1/0/0
description TO ISP1BB1, POS 1/2
ip address J.1.0.2 255.255.255.252
ip router isis
ip pim sparse-mode
ip route-cache distributed
ip mroute-cache distributed
clock source internal
!
interface POS1/1/0
description TO ISP1BB2, POS 2/0
ip address J.1.0.14 255.255.255.252
ip router isis
ip pim sparse-mode
ip route-cache distributed
ip mroute-cache distributed
clock source internal
!
interface POS3/0/0
description TO ISP1BB4, POS 2/0/0
ip address J.1.0.17 255.255.255.252
ip router isis
ip pim sparse-mode
ip route-cache distributed
ip mroute-cache distributed
clock source internal
!
interface POS8/1/0
description TO ISP4BB4, POS 12/0/0
ip address J.4.0.34 255.255.255.252
ip router isis
ip pim bsr-border
ip pim sparse-mode
ip multicast boundary 10
ip route-cache distributed
ip mroute-cache distributed
clock source internal
!
router isis
net 49.0001.0000.0000.0003.00
P a g e | 651
CCIE R/S & Service Provider Exam Certification Guide
is-type level-1
!
router bgp 1
no synchronization
bgp log-neighbor-changes
redistribute connected
neighbor ISP1INTERNAL peer-group
neighbor ISP1INTERNAL remote-as 1
neighbor ISP1INTERNAL update-source
Loopback0
neighbor ISP1INTERNAL route-map
connected-bgp out
neighbor ISP4ISP1PEER peer-group
neighbor ISP4ISP1PEER remote-as 4
neighbor J.1.0.200 peer-group ISP1INTERNAL
neighbor J.1.0.201 peer-group ISP1INTERNAL
neighbor J.1.0.202 peer-group ISP1INTERNAL
neighbor J.1.0.204 peer-group ISP1INTERNAL
neighbor J.1.0.205 peer-group ISP1INTERNAL
neighbor J.1.0.208 peer-group ISP1INTERNAL
neighbor J.1.0.209 peer-group ISP1INTERNAL
neighbor J.1.0.210 peer-group ISP1INTERNAL
neighbor J.4.0.33 peer-group ISP4ISP1PEER
no auto-summary
!
address-family ipv4 multicast
redistribute connected route-map
connected-bgp
neighbor ISP1INTERNAL activate
neighbor ISP4ISP1PEER activate
neighbor J.1.0.200 activate
neighbor J.1.0.201 activate
neighbor J.1.0.202 activate
neighbor J.1.0.204 activate
neighbor J.1.0.205 activate
neighbor J.1.0.208 activate
neighbor J.1.0.209 activate
neighbor J.1.0.210 activate
neighbor J.4.0.33 activate
exit-address-family
!
no ip classless
ip http server
ip pim rp-address J.1.0.100
ip pim accept-register list no-ssm-range
ip msdp peer K.250.1.2 connect-source Loopback0
ip msdp sa-filter in K.250.1.2 list 124
ip msdp sa-filter out K.250.1.2 list 124
ip msdp peer J.4.0.203 connect-source Loopback0
remote-as 4
ip msdp sa-filter in J.4.0.203 list 124
ip msdp sa-filter out J.4.0.203 list 124
ip msdp sa-request J.4.0.203
ip msdp peer J.1.0.204 connect-source Loopback0
ip msdp sa-filter in J.1.0.204 list msdp-nono-list
ip msdp sa-request J.1.0.204
P a g e | 652
ip msdp cache-sa-state
ip msdp redistribute list msdp-nono-list
ip msdp originator-id Loopback0
!
ip access-list extended msdp-nono-list
deny ip any 232.0.0.0 0.255.255.255
permit ip any any
ip access-list extended no-ssm-range
deny ip any 232.0.0.0 0.255.255.255
permit ip any any
logging K.50.0.2
access-list 10 deny 224.0.1.39
access-list 10 deny 224.0.1.40
access-list 10 deny 239.0.0.0 0.255.255.255
access-list 10 permit any
access-list 22 permit 232.0.0.0 0.255.255.255
access-list 22 deny any
access-list 112 deny ip 223.0.0.0 0.255.255.255
255.255.0.0 0.0.255.255
access-list 112 permit ip any any
access-list 124 deny ip any host 224.0.2.2
access-list 124 deny ip any host 224.0.1.3
access-list 124 deny ip any host 224.0.1.24
access-list 124 deny ip any host 224.0.1.22
access-list 124 deny ip any host 224.0.1.2
access-list 124 deny ip any host 224.0.1.35
access-list 124 deny ip any host 224.0.1.60
access-list 124 deny ip any host 224.0.1.39
access-list 124 deny ip any host 224.0.1.40
access-list 124 deny ip any 239.0.0.0 0.255.255.255
access-list 124 deny ip 10.0.0.0 0.255.255.255 any
access-list 124 deny ip 127.0.0.0 0.255.255.255 any
access-list 124 deny ip 172.16.0.0 0.15.255.255 any
access-list 124 deny ip K.168.0.0 0.0.255.255 any
access-list 124 deny ip 232.0.0.0 0.255.255.255 any
access-list 124 permit ip any any
route-map connected-bgp permit 10
match ip address 112
set origin igp
!
snmp-server engineID local
00000009020000100DDEE000
snmp-server community public RO
snmp-server community STSS RW
snmp-server packetsize 2048
snmp-server contact sysadmin
snmp-server chassis-id ISP1BB3
!
tacacs-server host 223.255.254.254
tacacs-server key cisco12345
!
ntp clock-period 17180261
ntp update-calendar
ntp server 223.255.254.254 version 1
end
CCIE R/S & Service Provider Exam Certification Guide
Chapter 24 SPAN和RSPAN监控
24.1用SPAN监控交换式网络性能
SPAN 是一种网络流量监控的方法,它将原端口或特定的 vlan 的流复制到一个目的端口进行分析。
如图所示:他将端口 5 的数据流镜像到端口 10。端口 10 上的一个网络分析仪无需物理连接到端口 5 就
能收到来自端口 5 的所有网络流量。
基于 VLAN 的 Span(VSPAN)是分析一个或多个 vlan 的网络流量。能配置 VSPAN 监控收到的流量,即作用
到该 vlan 的所有端口上。
SPAN 可以用来监控所有的网络流量,包括
1.
多播和网桥协议数据单元 BPDU
2.
CDP 帧
3.
VTP 帧
4.
STP 帧
5.
PAgP 帧
在有些 SPAN 的配置中,同一个源分组的多酚拷贝发往 SPAN 目的端口,如下图所示:
P a g e | 653
CCIE R/S & Service Provider Exam Certification Guide
24.1.1 基于一个端口的SPAN监控
SPAN 可以用来分析通过端口的流量,这是通过交换机上将流量拷贝送往一个连接有网络分析
器和协议分析器的目的端口来实现的。SPAN 可以用来镜像流量来进行稍后分析,被镜像的流量是
从定义在 SPAN 配置中的一个或多个 SPAN 元端口上发送或接收的所有流量,SPAN 不会影响原有
端口的通讯。
一个源端口是 SPAN 程序从中复制流量的一个第二层或第 3 层端口,从一个 SPAN 源端口转发
到一个 SPAN 目的端口的数据可以包括端口发送的所有帧和/或端口接收的所有帧。
一个 SPAN 目的端口是 SPAN 程序将流量复制到一个第二层或第 3 层的接口,当一个端口被配
置为一个 SPAN 的目的端口时,他将不转发除 SPAN 流量外的任何流量,并且只由 SPAN 程序使用,
从交换机的 Cisco IOS 版本 12.1 开始,可以将 Trunk 端口配置成 SPAN 的目的端口,这允许 SPAN
目的端口发送多个 VLAN 的封装流量,在早期的 IOS 版本中,一个中继端口被置为一个 SPAN 目的
端口时自动转回到接入模式。
24.1.2 常用监控软件
一般常用的流量分析软件为 Sniffer Pro,Ethereal,ClearSight 等。
大型测试时一般使用专业版的 ClearSight。ClearSight 网络分析仪能够直观的洞察那些网络攻
击和应用问题。ClearSight 产品的核心是能够解决应用,网络,服务器和客户端的问题,而这一切都无
需解析数据包。当你在你的网络和应用中遇到问题,不要浪费时间去做解包的工作, ClearSight 分
析仪简单易用的可视化分析帮助你查明网络中细微的问题,你能够快速智能的解决这些问题。
ClearSight 分析仪是未来实时网络应用分析和故障排除的理想工具。
如下图
主要应用
1.网络和网络设备测试
2.应用层性能分析
3.多媒体、 VoIP 、视频点播、 IPv6 分析
P a g e | 654
CCIE R/S & Service Provider Exam Certification Guide
优点
1.能够监测你的应用服务器性能特征
2.监测与 SLA 关联的协议性能
3.网络流量回放,高层应用分析
4.在用户意识到问题之前,接收减速告警
特点
1.
故障处理核心,被设计为可视化表达的故障处理应用,不再需要了解结构与阅读
十六进制代码
2.
实时监测应用,不再是枯燥的统计,而是应用和结构的流程展示,无需捕获包
3.
自动的捕获过滤器,当你需要了解更详细的信息时可通过点击鼠标右键,逐层向
内的方式完成
4.
SLA 工具-当应用响应下降到你可接受的标准,会经常的测试和告警
5.
673 种协议数据包解码/报告/告警
ClearSight 支持以下功能
1.
支持 10/100M/1G 全双工线速包捕获,
2.
接入网络方式有两种,一种是通过交换机镜像端口采集数据、另外一种是提供 TAP
硬件接入网络,网络流量可以正常通过 TAP,采集数据通过 TAP 的旁路接口,不
影响正常的数据通信。
3.
支持 10/100M/1G 全双工线速流量监控,以及线速的实时协议分析和解码,支持
OSI 全部 1-7 层协议的解码和分析。
4.
支持基于每个会话应用层,网络层,物理层的流量统计和差错分析,也支持总体
的统计分析,尤其对于 VOIP 业务。
5.
支持协议流程的梯形图分析,并且支持最多四个网段的梯形图组合分析。支持多
协议多网段的分析,分析网络中瓶颈问题的能力强。
6.
物理层分析支持实时的带宽占有率统计,字节数统计,包分类统计(单播、组播、
广播),以及物理层差错统计,包括:CRC、Jabber、Collision、Alignment、Oversize、
Fragment 等差错,并且支持每种协议的吞吐量统计。
7.
支持 IPv6 协议的解码与分析以及故障定位。
8.
网络层分析支持协议分类的实时数量统计(如 TCP、UDP、ICMP、IGMP、ARP 等
等),并且支持包括 RIP、OSPF、BGP、PIM-SM、MPLS 在内的路由协议解码和分
析。以及分类流量的速率。
9.
网络层测试支持网络层协议的实时连接数统计和连接的流量速率,并统计连接使
用的应用层协议。
10.
网络层分析支持应用层协议分布柱状图分析,IP 协议分布柱状图和响应时间分布
柱状图。
11.
应用层分析支持针对每个用户每个会话的实时的应用流程图显示,实时显示应用
流程的交互情况,并在流程图中给出协议简单说明,以分析应用的建立过程。而
且可以支持流程图中协议消息和底层代码的互相切换。
12.
每一个应用的会话过程都提供应用的响应时间结果,并且对于超长的响应时间给
出特殊的标明。
13.
每一个应用会话在有差错的情况下给出应用的错误代码、差错说明,并在梯形图
P a g e | 655
CCIE R/S & Service Provider Exam Certification Guide
中以特殊的标记指出。
14.
实时应用流程图显示应至少支持以下应用协议:HTTP、DNS、WEP、POP、SMTP、
FTP、TELNET、流媒体等。
15.
支持 Exchange、Oracle 等数据库的分析。
16.
支持 H.323、MGCP、H.248、SIP、SKINNY 等协议的 VoIP 分析,并且支持 VOIP 语
音质量分析,对每一个会话给出语音质量分析报告,且支持 MOS、JMOS、R-&
#118alue 等标准。
17.
支持 HTTP、FTP、SMTP、POP3、telnet、数据库、VoIP、RTP、Skinny、security 等
应用层协议的回放。可以看到应用的内容。
18.
物理层,网络层,应用层的分析支持分析报告的自动生成,提供整体的流量的分
析。
19.
捕获包的分析支持在点击流程图的情况下自动切换到包的协议解码,并能够自动
定位所点击流程图相关会话的所有包。
20.
协议解码支持 MMS、WEP、RTSP、JAVA、FTP、HTTP、802.11、RTP、RTCP 等协议,
并支持 PCAP 文件的解码,能够将抓取的文件存储为 PCAP 格式。
21.
支持主流的音频和视频协议的解码,如 G.711、G.723、G.729、JPEG、H.263 等等
22.
设备支持用户根据协议端口添加新应用协议和非标准协议的分析功能。
23.
设备支持 SLA(Service Level Agreement)分析功能
24.
支持将网络故障信息通过 SNMP 协议发布到服务器,或者将网络故障信息通过
EMAIL 送到指定的邮箱。
25.
支持数据回放,把捕获的数据包回放到网络中。
软件使用界面如下,可以对多种已有的协议,进行计量分析
P a g e | 656
CCIE R/S & Service Provider Exam Certification Guide
24.1.3 SPAN监控和其他特性的互相影响
SPAN 会影响配置在源端口和目的端口特性。这些特性将在交换机中删除 SPAN 后恢复:
1.SPAN 与 VLAN 和 CDP 的影响
可以进行 VLAN 成员的改变,但他们不能作用到 SPAN 目的端口上,对于源端口,
VLAN 或者中继设置立即生效,SPAN 会话因此自动调整。
SPAN 的目的端口不参与 CDP
2.SPAN 与 EtherChannel 成员或中继端口的相互影响
如果一个被监控的 EtherChannel 组中添加一个端口,就把它加到 SPAN 源端口列表
中,如果从一个被监控的 EtherChannel 中删除一个端口,它会自动从源端口列表
中删除。
一个 EtherChannel 组可以配置为一个源端口,但不能配置为目的端口,
可以在任何时候为源目的端口修改 VLAN 成员或者只中继, 但是一个目的端口的
VLAN 成员或中继设置改变直到禁用 SPAN 会话才会生效
如果将一个属于 EtherChannel 组的物理端口配置成一个 SPAN 源或目的端口,那么
该端口将离开那个组。当端口从 SPAN 端口离开,它又重新加入到 Channel 组。
3.SPAN 和 Qos 分类和多播流量
对于进入或流入流量监控,送往 SPAN 目的端口的分组可能与 SPAN 源端口实际收
到的会有不同,分组在进入 QoS 分类与监管之后转发。发送分组的 DSCP 值可能与
接受分组不同。
可以监控多播流量,对于流入和流出,只将一个单一的未编辑的分组送往 SPAN 目
的端口
配置了端口安全的端口不能作为 SPAN 目的端口
24.1.4 SPAN配置
1.清楚已有的 SPAN 会话
Kaka(config)#no monitor session {session_number | all | local | remote}
2.
指定源端口
Kaka(config)#monitor session {session-number} source {interface
interface|vlan vlan-id} [rx|tx|both]
P a g e | 657
CCIE R/S & Service Provider Exam Certification Guide
3.指定目的端口
Kaka(config)#monitor session {session-number} destination {interface
interface} [encapsulation {dot1q|isl}]
4.查看 SPAN 状态
Kaka#show monitor [session session_no.]
监控多个端口的实例
Kaka(config)#monitor session 1 source interface fa0/1 - 23
监控多个 vlan 接收数据的实例
Kaka(config)#monitor session 1 source vlan 1- 3, 10 rx
24.2 RSPAN监控交换式网络
在某些情况下,不能在交换机旁边架设设备监控相应的流量,如下图,在一些大型的测试中,往往接入
层交换机在物理距离上很远,所以此时就需要一种 RemoteSpan 的技术来进行监控。
24.2.1 RSPAN监控原理
RSPAN 的监控原理如下图:
源交换机上设置 RSPAN 的源端口,并配置 Remote Vlan,通过 Reflector 端口传出,通过中间交换
机到达目的交换机,在目的交换机上配置目的端口,达到远程监控的目的。
P a g e | 658
CCIE R/S & Service Provider Exam Certification Guide
24.1.2 RSPAN反射端口
反射端口仅用于所监控的数据拷贝到 Remote VLan,反射端口仅转发有关联的 RSPAN 源端口
的数据, 在配置成反射端口后,它将失去任何连通性,直到 RSPAN 的源监控会话被关闭为止。
反射端口的属性如下
1. 不能配置成 EtherChannel 组,不能为 Trunk,也不能配置任何协议过滤
2. 配置成反射端口后,他不能成为 SPAN 的源或者目的端口
3. 一个端口被用作反射端口后,不能配置为一个 SPAN 的源/目的端口。同时一个反射
端口只能在同一时间支持一个监控会话。
4. 反射端口会将所有的监控数据会泛洪到所有能够承载 RSPAN Vlan 的 Trunk 接口上
5. STP 在反射端口上会被禁用
6. 当反射端口没有足够的流量来转发监控端口的流量时,它使用自己接口的最大速率
进行转发
7. 反射端口对于所有 vlan 是不可见的
8. 繁色花端口是一个被设置为回环的端口
RSPAN 反射端口配置如下:
Switch(config)#monitor session session_number destination remote vlan
vlan_id reflector-port interface
24.2.3 RSPAN监控和其他特性的互相影响
STP:反射端口在 RSPAN 会话活动时不能参与 STP,STP 可以在中继端口上激活以承载 RSPAN VLAN
VTP:VTP 不能用在交换机之间对 RSPAN vlan 进行裁剪
VLAN 和中继:可以在任何时候修改反射端口的 vlan 成员或中继设置,直到 RSPAN 会话被禁用后
才能生效
EtherChannel:如果属于一个 EtherCannel 组的物理端口是反射端口,并且该组是一个源, 那么端
口将从 EtherChanel 组合被监控端口列表中删除
24.2.4 RSPAN配置
1.在源交换机上:
a)
需要在 VTP 的服务器上建立一个 RSPAN Vlan
Kaka(config)#vlan {vlan-id}
Kaka(config-vlan)#remote-span
b)
清除所有现有的 SPAN 配置,因为 3550 仅支持 2 个 session,只有 6500 才能支持 30 个
SPAN。
Kaka(config)#no monitor session {session_number | all | local | remote}
c)
指定 RSPAN 对话和源端口
Kaka(config)#monitor session {session-number} source {interface
interface|vlan vlan-id} [rx|tx|both]
d)
指定远程 vlan 和反射端口
Kaka(config)#monitor session {session-number} destination remote
vlan {rspan-vlan-id} reflector-port {interface}
e)
察看 RSPAN 配置
Kaka#show monitor [session session_no.]
P a g e | 659
CCIE R/S & Service Provider Exam Certification Guide
2.在目的交换机上:
Kaka(config)#monitor session {session-number} destination remote vlan
{rspan-vlan-id} reflector-port {interface}
Kaka(config)#monitor session {session-number} destination {interface
interface|vlan vlan-id} [rx|tx|both]
在监控时,可以对特定 vlan 的流量进行过滤
Kaka(config)#monitor session {session-number} filter vlan { vlan vlan-id}
24.3 NAM网络分析模块
24.3.1 NAM简介
对于大多数网络管理员来说,交换网络的网络监控几乎都是采用使用端口镜像、数据生成技
术或者使用无源网络来配置网络探测器。虽然这些方案有时可以勉强管用,但它会产生负面效应,
影响网络性能以及响应速度,而且操作繁琐、缓慢。
针对这些问题,Cisco 推出了其网络分析模块 NAM。NAM 是为 Catalyst 5000、6000、6500 系
列思科交换机所设计的。它类似于协议分析仪,集内嵌仪表、QoS 工具为一体。网管人员使用 NAM
就可以选择端口、以太信道和交换机的 VLAN,或者直接将数据送往 NAM 进行检查。
NAM 模块在交换机上安装后,就可以使用 Catalyst 的命令来完成基本的 IP 配置。在为 NAM
分配一个 IP 地址并且提供一个默认路径后,可以开始使用了,在用户终端也无需安装任何软件。
在网络上配置 NAM 后,就可以用来监控实时的通信通道、设置选定的任选项和监控选定的
通信通道。通过使用 NAM 网络为交换机设置一些端口,就可以立即对选定的通信通道进行监控。
在基本监控器的基础上,Cisco 在 NAM 软件的 2.1 版中引入了一些 VoIP 的 QoS 监控选项。使
用这一版本,网管人员可以通过分析通信通道的噪音来推测网络使用率、记录往返程耽搁时间、
监控质量降级和测量设备之间的反应时间。同时还可以监控网络设备和 VoIP 电话之间的响应时间
水平。网管人员也可以浏览统计数据,例如 MAC 历史表格、应用的利用水平和网络利用水平。NAM
不仅仅只是简单的监控,而且可以使用 NAM 设置报警,可以把网络的不稳定、H.323 的延迟以及
其它问题设置为警报条件
P a g e | 660
CCIE R/S & Service Provider Exam Certification Guide
24.3.2
Catalyst 6500 NAM
Catalyst 6500 NAM 占 用 任 意 Cisco
Catalyst 6500 系列机箱的一个完全插槽。NAM
基于一个在 Pentium III 533MHZ 中央处理单元
(CPU)上运行的专用 RMON/RMON2 高性能
引擎。该处理器上驻留着 32KB 的第 1 层高速
缓存和 128KB 的第 2 层高速缓存。模块上存在的另 256MB SDRAM
(不可升级)超出了 RMON/RMON2
引擎的大型内存需求。NAM 支持可与所有已有 Catalyst 6500 系列线路模块共用、不依赖于插槽的
体系结构。同时还可以为 NAM 配置硬盘,
NAM 已包括全面监控所需的所有特性集。NAM 可从数据和语音流收集统计信息,简化整体
管理并降低开支成本。它使用交换端口分析器(SPAN)或远程 SPAN(RSPAN)来接收来自物理端
口、虚拟 LAN(VLAN)、以太通道和 Netflow 数据输出帧的数据。它同时监控多个交换机端口或
VLAN,为每个数据源提供独立 RMON/RMON2 统计数据。NAM 为每个 VLAN 保持一套专用的 RMON
和 RMON2 MLB 组数据表。
NAM 使用简单网络管理协议(SNMP)将所收集的统计数据上载至基于图形化用户界面(GUI)
的流量管理应用,如 Cisco TrafficDirector 等。NAM 与所有符合 IETF RFC 的 RMON/RMON-2 网络管
理软件完全兼容。它提供了与管理应用间的可靠通信,即便是模块因 CPU 过载或缓存过度运行而
丢弃了分组,其性能也不会受到影响。NAM 由包括 TrafficDirector 综合网络流量监控和纠错在内的
CiscoWorks 2000 LAN 管理捆绑包全面支持。
24.3.3 NAM配置
实质上,NAM 是一个基于 Linux 的嵌入式主机。
1.首先需要配置主机的 ip 地址等
root@localhost# ip address 172.20.104.74 255.255.255.192
IP address and netmask configured successfully.
NOTE: Default gateway address has been reset to 0.0.0.0
Please use 'ip gateway' command to configure it.
root@localhost# ip gateway 172.20.104.66
root@localhost# show ip
IP address:
172.20.104.74
Subnet mask:
255.255.255.192
IP Broadcast:
172.20.255.255
DNS Name:
namlab-kom8.cisco.com
Default Gateway:
172.20.104.66
Nameserver(s):
171.69.2.133
HTTP server:
Enabled
HTTP secure server:
Disabled
HTTP port:
80
HTTP secure port:
443
TACACS+ configured:
No
Telnet:
Enabled
SSH:
Disabled
root@localhost#
2.其他基本命令:
exsession on
exsession on ssh
Enables outside logins (Telnet).
Enables outside logins (SSH).
P a g e | 661
CCIE R/S & Service Provider Exam Certification Guide
ip address
Sets the system IP address.
ip broadcast
Sets the system broadcast address.
ip domain
Sets the system domain name.
ip gateway
Sets the system default gateway address.
ip host
Sets the system hostname.
ip http secure server
enable Enables the secure HTTP server.
ip http server
enable Enables the HTTP server.
ip interface external
Selects the external NAM interface for management traffic.
ip interface internal
Selects the internal NAM interface for management traffic.
ip nameserver
Sets the system name server address.
password root
Sets a new password to access the root (read/write) level of NAM.
patch
Downloads and installs a software patch.
Ping
Checks connectivity to a network device.
show ip
Displays the NAM IP parameters.
3.登陆到 NAM:
Router# service-module analysis-module 2/0 session
Trying 10.1.1.1, 2065 ... Open
Cisco Network Analysis Module (NM-NAM)
nam1.cisco.com login: root
Password: <password>
Terminal type: vt100
Cisco Network Analysis Module (NM-NAM) Console, 3.2
Copyright (c) 1999-2003 by cisco Systems, Inc.
WARNING! Default password has not been changed!
root@nam1.cisco.com#
root@nam1.cisco.com# exit
Cisco Network Analysis Module (NM-NAM)
nam1.cisco.com login: <suspend keystroke>
Router# disconnect
Closing connection to 10.1.1.1 [confirm] <Enter>
Deleting login session
4. NAM 配置实例:
NAM 结构及拓扑如下:
Router Configuration (Cisco IOS Software)
!
ip cef
!
interface loopback 0
ip address 10.1.1.1 255.255.255.0
!
interface FastEthernet0/0
ip address 209.165.201.1
255.255.255.224
ip route-cache flow
speed auto
full-duplex
no mop enabled
no shutdown
!
interface Serial 0/0
encapsulation ppp
ip address 209.165.202.129
255.255.255.224
analysis-module monitoring
no shutdown
!
P a g e | 662
CCIE R/S & Service Provider Exam Certification Guide
interface analysis-module 3/0
ip unnumbered loopback 0
hold-queue 60 out
no shutdown
!
NAM Configuration (NAM software)
!
ip address 209.165.201.2 255.255.255.224
!
ip host "nam1"
!
ip domain "cisco.com"
!
ip gateway 209.165.201.1
!
ip broadcast 10.255.255.255
!
ip nameserver 209.165.201.29
!
ip interface external
!
ip http server enable
!
exsession on
5. NAM 查看命令:
analysis-module monitoring
interface analysis-module
service-module analysis-module reload
service-module analysis-module reset
service-module analysis-module session
service-module analysis-module shutdown
service-module analysis-module status
show controllers analysis-module
show interfaces analysis-module
6.查看交换机上的 NAM 模块
Console> show module 4
Mod Module-Name Ports Module-Type Model Serial-Num Status
--- ------------------- ----- --------------------- --------- --------- ------4 1 Network Analysis/RMON WS-X5380 008175475 ok
Mod MAC-Address(es) Hw Fw Sw
--- -------------------------------------- ------ ---------- ----------------4 00-e0-14-10-18-00 0.100 4.1.1 4.3(1)
P a g e | 663
CCIE R/S & Service Provider Exam Certification Guide
P a g e | 664
CCIE R/S & Service Provider Exam Certification Guide
第四部分
第25章
第26章
第27章
第28章
第29章
第30章
第31章
QoS 简介
队列技术
流量管理
拥塞控制
流量整形
NBAR 应用程序过滤
集成服务 RSVP
P a g e | 665
CCIE R/S & Service Provider Exam Certification Guide
Chapter 25
Qos简介
25.1 QoS简介
在传统的 IP 网络中,所有的报文都被无区别的等同对待,每个路由器对所有的报文均采用先入先
(FIFO) 的策略进行处理.它尽最大的努力(Best-Effort)将报文送到目的地,但对报文传送的可靠性,传
送延迟等性能不提供任何保证.
网络发展日新月异,随着 IP 网络上新应用的不断出现,对 IP 网络的服务质量也提出了新的要求.例
如 VoIP 等实时业务就对报文的传输延迟提出了较高要求.如果报文传送延时太长,将是用户所不能接受
的(相对而言 E-Mail 和 FTP 业务对时间延迟并不敏感).为了支持具有不同服务需求的语音,视频以及数
据等业务,要求网络能够区分出不同的通信,进而为之提供相应的服务.传统 IP 网络的尽力服务不可能识
别和区分出网络中的各种通信类别,而具备通信类别的区分能力正是为不同的通信提供不同服务的前提.
所以说传统网络的尽力服务模式已不能满足应用的需要 QoS(Quality of Service ,服务质量技术)的出
现便致力于解决这个问题
25.1.1 一个简单的 QoS案例
下面用简单的例子对比了在网络发生拥塞时报文在无 QoS 保证和有 QoS 保证网络中的不同处理过
程,下图所示为发生拥塞时网络设备的一个接口在不支持 QoS 的情况下报文的发送情况
所有要从该接口输出的报文,按照到达的先后顺序进入接口的 FIFO 队列尾部。而接口在发送报文
时从 FIFO 先入先出队列的头部开始依次发送报文。所有的报文在发送过程中没有任何区别也不对报文
传送的质量提供任何保证
当然 ,我们需要寻求更好的处理方式, 下图为一个优先级对列进行 Qos 处理的过程。
P a g e | 666
CCIE R/S & Service Provider Exam Certification Guide
在报文到达接口后,首先对报文进行分类,然后按照报文所属的类别让报文进入所属队列的尾部。
在报文发送时,按照优先级总是在所有优先级较高的队列中的报文,发送完毕后再发送低优先级队列中
的报文。这样在每次发送报文时总是将优先级高的报文先发出去。保证了属于较高优先级队列的报文
有较低的时延报文的丢失率和时延。这两个性能指标在网络拥塞时也可以有一定的保障。
25.1.2 QoS的作用
QoS 旨在针对各种应用的不同需求为其提供不同的服务质量例如提供专用带宽减少报文丢失率降
低报文传送时延及时延抖动等为实现上述目的 QoS 提供了下述功能
报文分类和着色
网络拥塞管理
网络拥塞避免
流量监管和流量整形
QoS 信令协议
QoS 可以控制各种网络应用和满足多种网络应用要求如
控制资源:
如可以限制骨干网上 FTP 使用的带宽,也可以给数据库访问以较高优先级
可裁剪的服务:
对于 ISP 其用户可能传送语音视频或其他实时业务 QoS 使 ISP 能区分这些不同的报文
并提供不同服务
多种需求并存:
可以为时间敏感的多媒体业务提供带宽和低时延保证,而其他业务在使用网络时也不
会影响这些时间敏感的业务
在一个网络中需要以下的三个部分来完成端到端的 QoS
各网络元件路由器以太网交换机等支持 QoS 提供队列调度流量整形等功能
信令技术来协调端到端之间的网络元件,为报文提供 QoS
QoS 技术控制和管理端到端之间的报文在一个网络上的发送
而每个网络元件提供如下功能
报文分类,对不同类别的报文提供不同的处理
队列管理和调度来满足不同应用要求的不同服务质量
流量监管和流量整形限制和调整报文输出的速度
接入控制来确定是否允许用户信息流使用网络资源
25.2 QoS服务模式
网络应用是端到端的通讯结构,比如两个不同网络的主机进行通讯,中间可能跨越各种 router 和
核心 switch,那么想整体的实现所谓的 QOS,就必须全局考虑,QOS 的服务模型的概念就是采用通过什么
模式全局实现服务质量保证,一共分成三种。
Best-Effort service
尽力而为服务模型
Integrated service
综合服务模型 简称 Intserv
Differentiated service
区分服务模型 简称 Diffserv
P a g e | 667
CCIE R/S & Service Provider Exam Certification Guide
25.2.1 尽力而为的服务模型
Best-Effort 是一个单一的服务模型,也是最简单的服务模型,应用程序可以在任何时候,发出任
意数量的报文,而且不需要事先获得批准,也不需要通知网络,对 Best-Effort 服务,网络尽最大的可能
性来发送报文,但对时延、可靠性等性能不提供任何保证 Best-Effort 服务是现在 Internet 的缺省服
务模型,它适用于绝大多数网络应用,如 FTP、 E-Mail 等。其实 best-effort 并非是什么 QOS,就是互
联网的简单数据传输方式而已,有什么传什么,阻塞也就阻塞了,丢且也就丢弃了。
25.2.2 集成服务模型
Intserv:集成服务模型,它可以满足多种 QoS 需求。这种服务模型在发送报文前,需要向网络申
请特定的服务。应用程序首先通知网络它自己的流量参数和需要的特定服务质量
请求:包括带宽、时延等。应用程序一般在收到网络的确认信息,即确认网络已经为这个应用程
序的报文预留了资源后,才开始发送报文,同时应用程序发出的报文应该控制在流量参数描述的范围以
内。
网络在收到应用程序的资源请求后,执行资源分配检查 Admission control 即基于应用程序的资
源申请和网络现有的资源情况,判断是否为应用程序分配资源,一旦网络确认为应用程序的报文分配了
资源,则只要应用程序的报文控制在流量参数描述的范围内,网络将承诺满足应用程序的 QoS 需求。而
网络将为每个流 flow 由两端的 IP 地址、端口号、协议号确定、维护一个状态,并基于这个状态执行
报文的分类、流量监管、policing、排队及其调度来实现对应用程序的承诺。
在 IntServ 服务模型中,负责传送 QoS 请求的信令是 RSVP(Resource Reservation Protocol)资源
预留协议,它通知路由器应用程序的 QoS 需求。RSVP 是在应用程序开始发送报文之前来为该应用申请
网络资源的。 Intserv 实际上是一种对服务的预定机制,通过申请来获取相应得服务,这里面主要依靠
的就是 RSVP——资源预留协议。
RSVP 是第一个标准 QoS 信令协议,它用来动态地建立端到端的 QoS,它允许应用程序动态地申请网
P a g e | 668
CCIE R/S & Service Provider Exam Certification Guide
络带宽等。RSVP 协议不是一个路由协议,相反,它按照路由协议规定的报文流的路径为报文申请预留资
源,在路由发生变化后,它会按照新路由进行调整,并在新的路径上申请预留资源。RSVP 只是在网络节
点之间传递 QoS 请求,它本身不完成这些 QoS 的要求实现,而是通过其他技术来完成这些要求的实现。
(RSVP 只是一种用来预定的协议)
RSVP 的处理是接收方发出资源请求,按照报文发送的反向路径发送资源请求,所以它可以满足非
常大的多播组,多播组的成员也可以动态变化,RSVP 协议是针对多播设计的 单播可以看作是多播的一
个特例。
由于 RSVP 在 Internet 上还没有得到广泛的推广,在主机不支持 RSVP 的情况下,我们可以通过配
置 RSVP 代理,即代替不支持 RSVP 的主机发送 RSVP 报文来获得这种服务,对报文流路径上不支持 RSVP
的路由器,它只需要简单的转发 RSVP 报文 所以对 RSVP 协议不会有太大影响,但这些节点不会对报文提
供所要求的 QoS 。(这是 RSVP 的一个缺点)
RSVP 信令在网络节点之间传送资源请求,而网络节点在收到这些请求后,需要为这些请求分配资
源,这就是资源预留。网络节点比较资源请求和网络现有的资源,确定是否接受请求,在资源不够的情况
下,这个请求可以被拒绝,可以对每个资源请求设置不同的优先级。这样,优先级较高的资源请求可以在
网络资源不够的情况下,抢占较低优先级的预留资源,来优先满足高优先级的资源请求。
资源预留判断是否接受资源请求,并承诺对接受了的资源请求提供请求的服务,但资源预留本身
不实现承诺的服务,需要通过队列等其他技术来实现。
Intserv 有它的好处,但是也有严重缺点,首先就是 RSVP 协议数据太多,而且不断刷新,并且这种
给单一数据流的路径进行带宽预留的解决思路在浩瀚的 Internet 上实现简直是不可能的,而且 RSVP 的
部署,厂商之间设备的互联,业务管理方面 等存在着种种问题,所以这么模型在 1994 年推出之后就没
有获得任何规模的商业应用。
25.2.3 区分服务模型
DiffServ 是一个多服务模型,它可以满足不同的 QoS 需求,与 IntServ 不同,它不需要使用 RSVP
即应用程序在发出报文前,不需要通知路由器为其预留资源,对 DiffServ 服务模型,网络不需要为每个
流维护状态 ,它根据每个报文指定的 QoS 来提供特定的服务 可以用不同的方法来指定报文的 QoS,如
IP 报文的优先级位 IP Precedence) ,报文的源地址和
目的地址等,网络通过这些信息来进行报文的分类、流量整形、流量监管和队列调度。
DiffServ 一般用来为一些重要的应用提供端到端的 QoS 它通过下列技术来实现
CAR:
它根据报文的 ToS 或 CoS 值(对于 IP 报文是指 IP 优先级或者 DSCP 等等)IP 报文的五
元组(指源地址目的地址协议端口号)等信息进行报文分类,完成报文的标记和流量监
管。
队列技术:
WRED、PQ、CQ、WFQ、CBWFQ 等队列技术对拥塞的报文进行缓存和调度,实现拥塞管理。
通常在配置 DiffServ 时,边界路由器通过报文的源地址和目的地址等对报文进行分类,对不同的
报文设置不同的 CoS 值,而其他路由器只需要用 CoS 值来进行报文的分类
在 MPLS 上应用 DiffServ 用以下两种方法来解决:
在以太网等网络中,MPLS 报文在二层链路层和三层网络层之间有一个薄层(shim).我们扩展
P a g e | 669
CCIE R/S & Service Provider Exam Certification Guide
薄层中未用的字段---EXP.由这几个位来决定报文的队列调度及丢弃的优先级.
在 ATM FR 等网络中,其 MPLS 报文没有薄层(shim), 可针对 FEC ForwardingEquivalance Class 转
发等价类和 QoS 请求的组合来分配标签,而不同于以前仅针对 FEC 分配标签.这样在收到一个 MPLS 报文
后,根据收到报文的标签就可以确定发出报文的标签及报文所要求的服务.
25.2.4 Intserv与Diffserv之间的互通
一般来讲,在提供 IP 网络的 QoS 时,为了实现规模适应性,在 IP 骨干网往往需要采用 Diffserv 体
系结构,在 IP 边缘网可以有两种选择:采用 Diffserv 体系结构或采用 Intserv 体系结构.目前在 IP 边
缘网络采用哪一种 QoS 体系结构还没有定论,也许这两种会同时并存于 IP 边缘网中.在 IP 边缘网采用
Diffserv 体系结构的情况下,IP 骨干网与 IP 边缘网之间的互通没有问题.在 IP 边缘网采用 Intserv 体
系结构的情况下,需要解决 Intserv 与 Diffserv 之间的互通问题,包括 RSVP 在 Diffserv 域的处理方
式,Intserv 支持的业务与 Diffserv 支持的 PHB(Per-Hop Behavior, 单中继段行为)之间的映射.
RSVP 在 Diffserv 域的处理可以有多种可选择的方式.例如
1.
一种方式为RSVP对Diffserv域透明,RSVP在Intserv域边界路由器终结,Diffserv域对
Intserv域采用静态资源提供方式:
2.
一种方式为Diffserv域参与RSVP协议处理,Diffserv域对Intserv域采用动态资源提供
方式.
前一种互通方式实现相对简单,可能造成 Diffserv 域资源的浪费.后一种互通方式实现相对复杂,
可以优化 Diffserv 域资源的使用.
除此以外,还需要解决 Intserv 支持的业务与 Diffserv 支持的 PHB 之间的映射问题.映射标准为
两者支持的应用是否相同或相近. 为了说明这个问题我们首先回顾一下 Intserv 支持的业务,它支持
的业务包括保证服务(Guaranteed Service)负载控制服务(Controlled-Load Service).前者可以为用
户应用提供严格的端到端时延及带宽保证,适用于实时应用.后者在网络负荷较重的情况下为用户应用
提供与网络轻负荷情况下相近似的性能,不能保证端到端的时延.
Diffserv 提供的 PHB 包括 EF (Expedited Forwarding 加速转发)AF(Assured Forwarding 确保
转发)
EF 用于支持低丢失率,低时延,确保带宽的应用 AF 可以保证在应用向网络发送的业务流量没有超
过约定值的情况下,该应用的报文丢失概率非常低 AF 有 4 类每一类可以设置 3 个不同的丢弃优先级.
从上面的叙述易于获得 Diffserv 与 Intserv 之间的映射关系
将Intserv中的保证服务映射为Diffserv中的EF
将Intserv中的负载控制服务映射为Diffserv中的AF
25.3 Diffserv服务模式
25.3.1 Diffserv体系结构
用来在网络中提供 QoS 的 Diffserv 方法应用了一组合理定义的小型基本部件,使用这些部件可
以构筑一系列的服务。其目标是在 IPv4 报头中定义区分服务(DS)字节和服务类型(ToS)字节,在 IPv6
中定义通信类(TrafficClass)字节,并标记分组中的标准化 DS 字节,使分组在每一个网络节点得到特
定的转发处理或单中继段行为(PHB)。
区分服务体系结构提供了—个框架,在这个框架下,服务提供商们可以为客户提供各种网络服务,
并根据性能来区分每一种服务。客户只需将分组的区分服务码点(DSCP)标记为特定值,便可以选择每
P a g e | 670
CCIE R/S & Service Provider Exam Certification Guide
个分组的性能等级,这个值指定了分组在服务提供商网络中的单中继段行为(PHB)。通常,服务提供商
和客户可以共同协商一个配置文件(profile),它描述了各种服务等级通信的提交速率。如梁提交的分
组速率超过了规定,则可能无法获得规定的服务等级。
Diffserv 体系结构只规定处理分组的基本机制,将这些机制作为基本部件可以构建各种服务。服
务定义了一些重要的分组传输特征,例如,网络小一条路径某个方向上的吞吐量、延迟、抖动以及分
组丢失率等。另外,还可以使用访问网络资源的相对优先级米表征服务。服务被定义后,提供这种服
务的网络上的所有节点都将被指定一个 PHB,并给 PHB 分配一个 DSCP。PHB 是网络节点提供给所有带
特定 DSCP 值的分绍的转发行为,需要特定服务等级的通信,其分组的 DSCP 字段将被指定为相应的值。
25.3.2 DSCP值
Diffserv 域(domain)中所有的节点都将根据分组的 DSCP 字段来遵守 PHB。另外,Diffserv 域边
界的节点还负责调节进入域的通信量。流量调节涉及诸如分组分类和流量控制(policing)等功能,通
常在通信进入域的输入接口中实现。流量调节在 Diffserv 域的流量工程中担任重要角色,对于所有进
入该域的通信,网络都能监测其单中继段行为
IETF Diffserv 工作组 正在进行使用户可以使用 IP 报头中的 ToS 字节中的 6bit 用来标记 DSCP.
TOS 整个字段一共 8 位,下图中是 ip precedence 的标识方法,使用前三位,也就是 P0、P1、
P2 一共三位,共 8 个 bit 位,也就是 8 个优先级,分别是 0-7,其中 6 和 7 一般保留,常用的是 0-5,
图中下面部分介绍的事 IP 优先级的含义,提供这个表格的意义在于 进行更改数据包优先级等配置时,
我们既可以使用数字,也可以使用名称。
分类是没有范围限制的,也就是说我们可以对数据进行灵活的分类,比如说把某一个源 ip 到目
的 ip 的流量优先级进行更改 IP 优先级或者 DSCP 的操作。也可以定义去更改某一个特定的流量(扩
展控制列表)的优先级。
P a g e | 671
CCIE R/S & Service Provider Exam Certification Guide
通常于网络边界处对报文进行分类时,同时标记 IP 优先级或 DSCP。这样,在网络的内部就可以
简单的使用 IP 优先级或 DSCP 作为分类的标准,而队列技术如 WFQ 等 CBWFQ 就可以使用这个优先
级来对报文进行不同的处理。
什么是标识,实际上就是通过更改这些优先级字段将这些数据分出种类来,即便是上面的图标中
有所谓的什么 0-7 优先级,好似 7 要比 0 就会优先级大一些,但是一定要清楚这只 是区分,执行
的策略要靠后面的队列机制来解决,实际上之所以这样定义优先级我认为只是 为了制定一个共同遵守
的类别优先标准,没有实际的意义,真正的操作是在配置上针对于不 同优先级采用的措施——例如在
队列里面使用什么标识的数据包属于什么队列等等。
上表是 DSCP 与 WRR 中应用的队列匹配。
25.3.3 Cos值
Cos 值是一种基于 多层的优先级表示方式: 如下图所示
如上图所示,正常的以太网 frame中是不存在标记的,但是 ISL和 dot1q的 frame 中有
三个 bit 定义服务级别,一共有6个服务级别可以使用
P a g e | 672
CCIE R/S & Service Provider Exam Certification Guide
下表是 COS 和 DSCP 彼此匹配时的对应关系。
25.3.4 PHB
支持 Diffserv 的网络节点使用 IP 报头中的 DSCP 字段来为分组选择特定的 PHB,PHB 描述了
Diffserv 节点对具有相同 DSCP 的分组采用的外部可见的转发行为。可以用资源优先级来定义 PHB,也
可以用一些可见的通信服务特征如分组延迟、分组丢失率或分组抖动来定义。可以将 PHB 看做一个黑
盒子,因为它定义了一些外部可见的转发行为,但没有指定特定的实现方式。
在 Diffserv 网络中,可以认为其默认的 PHB 是尽力而为的行为。Diffserv 为每个 PHB 推荐了特
定的 DSCP 值,但网络提供商可以在自己的网络中选择使用不同的 DSCP。推荐的尽力而为行为的 DSCP
是 000000。
特定通信类的PHB取决于下列因素:
通信类的到达速率或负载:这是通过网络边界的流量调节控制的。
通信类的资源分配:这是由Diffserv域中节点的资源分配控制的
通信丢失率:取决于Diffserv域中节点的分组丢弃策略。
P a g e | 673
CCIE R/S & Service Provider Exam Certification Guide
EF PHB
加速转发PHB(Expedited Forwarding PHB)可以用来实现的丢失率,低延迟,低抖动,确定
带宽,端到端服务.EF PHB针对VoIP和视频会议这样的应用. 导致分组延迟和分组抖动 的主要
原因是排队延迟, 排队延迟通常是在拥塞时,队列过长引起的,EF PHB确保通信不需要排队或
队列足够短.
路由器可以通过使用不同的EF功能实现方法, 为某个端口上特定的离开速率分配资源.
当EF通信可以在高度加权的队列上传送,例如CBWFQ,WRR,DRR等分组调度技术提供了这个功能.
对于网络中的 EF通讯,推荐使用DSCP 101110.
AF PHB
AF PHB可保证业务流量在没有超过阈值的情况下,确保报文保持较低的丢包率。
AF PHB对应4种AF Class
Class 1
Class 2
Class 3
Class 4
+-------------+------------+-------------+-----------------------+
Low Drop Prec
|
001010
|
010010
|
011010
|
100010
|
Medium Drop Prec
|
001100
|
010100
|
011100
|
100100
|
High Drop Prec
|
001110
|
010110
|
011110
|
100110
|
-----------+------------+------------+-------------+-------------+
缺省的PHB编码 000000 对应 Best-effort traffic.
PHB编码的解释:
以AF11 (0010100)为例, 前3个bit表示IP报文的优先级,接下来的2
个bit表示丢包优先级,最后一个bit总是为0
AF11 == 001-01-0
AF Class级别越高,其对应的IP报文的优先级越高,相对来说提高的QoS质量也越较好。
Class 1
Class 2
Class 3
Class 4
------------------+------------+-------------+--------------------------+
Low Drop Prec
|
10
|
18
|
26
|
34
| (decimal)
Medium Drop Prec
|
12
|
20
|
28
|
36
|
High Drop Prec
|
14
|
22
|
30
|
38
|
------------------+------------+-------------+--------------------------+
25.3.5 数据报标记
数据报标记就是修改 IP 优先级或者 DSCP,但是由于 IP 优先级和 DSCP 都 是占用 TOS 字段,后者
相当于前者的扩展,所以不能同时设置这两种值,如果同时设置了这两 种值,那么只有 IP DSCP 的值生效。
标记是后续很多 QOS 策略应用的基本,使用的是 policy map。
配置方法
1.定义class map
Class map是一个匹配表,类似于ACL。
所有的policy map实质上是对class map进行操作的
nimokaka(config)#class-map [match-all|match-any] {map - name}
参数中match-all 表示匹配所有条件,match-any表示至少符合一个条件
P a g e | 674
CCIE R/S & Service Provider Exam Certification Guide
2.class map的匹配
nimokaka(config-cmap)#
match access-group {ACL}
匹配IP ACL (主要就是对应数据包了)
match protocol {protocol}
匹配协议(这个在NBAR中使用)
match input-interface {interface}
匹配进站接口
match qos-group {Group ID}
匹配组ID(不知道干啥的)
match destination-address {mac mac-address}
匹配目标MAC 地址
match source-address {mac mac-address}
匹配源MAC 地址
match ip {dscp dscp}
匹配IP DSCP 值
match ip {precedence precedence}
匹配IP 优先级
match class-map {map-name}
匹配class map(class map嵌套)
match vlan {vlan-id}
匹配VLAN
Class-map可以嵌套:在创建classmap的时候去调用一个已有的classmap
1、管理方便,在已有的基础上增加一个修改进行平滑的过度。
2 、 允 许 用 户在 同 一 个 class map 里 分别使 用 匹 配 所 有 (match-all) 和 匹 配任 何
(match-any)。
比如4个匹配标准:A、B、C和D。现在想让class map 匹配A,或匹配B,或同时匹
配C和D,就可以使用class map的嵌套:创建一个新的class map,定义为匹配所有
(match-all)新标 准为匹配E即同时匹配C和D;然后定义另一个匹配任何(match-any)的
class map,去匹配A, 或B,或E(即同时匹配C和D)。
3.设置policy map
nimokaka(config)#policy-map {policy-name}
nimokaka(config-pmap)#class {class-map}
4.配置优先级和DSCP值
nimokaka(config-pmap-c)#
一些用于标记的动作选项:
set ip {precedence precedence}
设置IP优先级
set ip {dscp dscp}
设置IP DSCP 值
set qos-group {Group ID}
设置组ID
set cos {cos}
设置CoS
priority {kbps|percent percent} [Bc]
定义优先级流量保留带宽以及突发流量
bandwidth {kbps|percent percent}
定义保留的带宽
police {CIR Bc Be} conform-action {action} exceed-action {action}
violate-action{action}]
5.将配置挂接到接口上
nimokaka(config-if)service-policy [input|output] policy-name
6.检查配置
P a g e | 675
CCIE R/S & Service Provider Exam Certification Guide
nimokaka#show policy-map [policy-name]
查看接口的policy map 信息:
nimokaka#show policy-map interface [interface]
P a g e | 676
CCIE R/S & Service Provider Exam Certification Guide
Chapter 26 队列技术
26.1先进先出队列
先进先出队列(First In First Out Queueing, FIFO)
如图所示 FIFO 队列,不对报文进行分类,当报文进入接口的速度大于接口能发送的速度 时,FIFO
按报文到达接口的先后顺序让报文进入队列,同时 FIFO 在队列的出口让报文按进队 的顺序出队先进的
报文将先出队后进的报文将后出队。注意:当没有使用其他的队列机制时,除了传输速率小于 2.048Mbps
的串行接口以外的所有接口,默认都使用这种队列机制, 比如以太网口等。
26.2 WFQ加权公平队列
26.2.1 WFQ简介
加权公平队列(Weighted Fair Queueing, WFQ),它是一种基于流的队列
如图所示,WFQ 对报文按流进行分类(对于 IP 网络相同源 IP 地址、目的 IP 地址、源端口号、目的
端口号、协议号、IP 优先级的报文属于同一个流)每一个流被分配到一个队列,该过程称为散列,采用
HASH 算法来自动完成。尽量将不同的流分入不同的队列,WFQ 的队列数目 N 可以配置,在出队的时候
WFQ 按流的 IP 优先级来分配每个流应占有出口的带宽优先级的数值越小所得的带宽越少,优先级的数
值越大所得的带宽越多,这样就保证了相同优先级业务 之间的公平,体现了不同优先级业务之间的权
值。例如接口中当前有 8 个流它们的优先级分别为 0、1、2、3、4、5、6、7、则带宽的总配额将是所
有流的优先级 + 1 之和即 1 + 2 + 3+ 4 + 5 + 6 + 7 + 8 = 36。
每个流所占带宽比例(为自己的优先级数 + 1)/(所有 (流的优先级 + 1)之和)即每个流可得的带宽比
例分别为 1/36、2/36、3/36、4/36、5/36、6/36、7 /36、8/36。
P a g e | 677
CCIE R/S & Service Provider Exam Certification Guide
又比如当前共 4 个流,3 个流的优先级为 4,1 个流的优先级为 5,则带宽的总配额将是(4 + 1) * 3 +
(5 + 1) = 21 那么 3 个优先级为 4 的流获得的带宽比例均为 5/21,优先级为 5 的流获得的带宽比例为 6/21。
由此可见 WFQ 在保证公平的基础上对不同优先级的业务体现权值,而权值依赖于 IP 报文头中所携带的
IP 优先级。
注意:
WFQ 是传输速率低于 2.048Mbps 的串行接口默认的队列机制。
WFQ 存在一些限制:
第一个是 WFQ 不支持隧道或采用了加密技术的接口,因为这些技术要修改数据包中 WFQ 用
于分类的信息。
第二个 WFQ 提供的带宽控制的精确度不如 CBWFQ 和 CQ 等队列机制。
24.1.2 WFQ配置
接口下启用WFQ:
nimokaka(config-if)#fair-queue
显示公平队列的配置状态: nimokaka#show queueing fair
Router#show queueing fair
Current fair queue configuration:
Interface
Discard
threshold
Serial0
64
显示接口的队列信息:
Dynamic
queue count
256
Reserved
queue count
0
nimokaka#show queue [interface]
Router#show queue serial0
Input queue: 0/75/0 (size/max/drops); Total output drops: 0
Queueing strategy: weighted fair
Output queue: 9/1000/120/0 (size/max total/threshold/drops
Conversations 1/4/256 (active/max active/threshold)
Reserved Conversations 0/1 (allocated/max allocated)
(depth/weight/discards/tail drops/interleaves) 2/4096/0/0/0
Conversation 1044, linktype: ip, length: 1504
source: 172.26.237.58, destination: 172.26.237.2, id: 0xC4FE, ttl:126,
TOS: 0 prot: 6, source port 1563, destination port 4665
26.3 PQ优先级队列
26.3.1 Priority Queue简介
优先级队列(Priority Queueing, PQ)
P a g e | 678
CCIE R/S & Service Provider Exam Certification Guide
如图所示, PQ 对报文进行分类,对于 IP 网络可以根据 IP 报文的优先级/DSCP 等条件进行分类,
将所有报文分成最多至 4 类,分别属于 PQ 的 4 个队列中的一个,然后按报文的类别将报文送入相应的
队列。PQ 的 4 个队列分别为高优先队列、中优先队列、正常优先队列和低优先队列、它们的优先级依
次降低。在报文出队的时候,PQ 首先让高优先队列中的报文出队并发送,直到高优先队列中的报文发
送完,然后发送中优先队列中的报文,同样直到发送完,然后是正常优先队列和低优先队列,这样分类
使属于较高优先级队列的报文将会得到优先发送,而较低优先级的报文将会在发生拥塞时被较高优先级
的报文抢先,使得高优先级业务如 VoIP 的报文能够得到优先处理较低优先级业务,,如 E-Mail 的报文
在网络处理完关键业务后的空闲中得到处理既保证了高优先级业务的优先又充分利用了网络资源。
PQ使用的限制和缺点:
第一,
由于PQ是静态配置的,因此它不能适应网络结构的改变。
第二,
由于数据包要经过处理器卡的分类,因此PQ对数据包转发的速度要比FIFO慢。
第三,
PQ 不支持隧道接口
另外 PQ 一个非常显著的缺点就是如果高优先级的队列没有发送完成, 低优先级的数据将永远不
会发送,造成两级分化,使较低优先级的数据转发困难。
26.3.2 Priority Queue配置
1、定义优先级列表,可以基于协议或基于进站接口:
基于协议:
nimokaka(config)#priority-list list-number protocol protocol-name
{high|medium|normal|low} queue-keyword keyword-value
priority-list号码为1-16,关注一下红色标记部分,其实我们可以添加一些扩充选项来准确定位
流量比如
fragment
(IP packets with non-zero fragment offset) gt/lt
<size>
based on packet size (including L2 frame) list
<acl>
ACL classification
tcp/udp <port>
TCP or UDP port number
基于进站接口:
nimokaka(config)# priority-list list-number interface interface-type interface-number
{high | medium | normal | low}
2、定义默认的优先级队列,未分类的流量默认被分配进该队列,优先级默认为normal:
nimokaka(config)#priority-list {list} default {high|medium|normal|low}
3、定义每个队列中数据包的最大个数,由高到低,默认为20,40,60 和80.可以更改:
nimokaka(config)# priority-list {list} queue-limit {high-limit medium-limit
normal-limit low-limit}
4、把优先级列表应用在接口上:
nimokaka(config-if)#priority-group {list}
26.3.3 检查Priority Queue配置
P a g e | 679
CCIE R/S & Service Provider Exam Certification Guide
1、显示接口队列信息:
Router#show interface serial0
<top portion deleted>
Queueing strategy: priority-list 1
Output queue (queue priority: size/max/drops):
high: 2/20/0, medium: 0/40/0, normal: 0/60/0, low: 4/80/0
<bottom portion deleted>
2、显示PQ 列表信息:
Router#show queueing priority
Current priority queue configuration:
List
Queue
Args
1
low
default
1
high
protocol ip
1
medium
protocol ip
1
normal
protocol ip
1
low
protocol ip
list 103
list 102
list 101
list 100
26.3.4 PQ配置实例
要求sna流量高优先级,www 的ip流量低优先级别,其他流量中等优先级别,给sna流量设置队列深度为
50消息
interface serial 0
priority-group 1
priority-list 1 protocol sna high
priority-list 1 protocol ip low tcp 80
priority-list 1 protocol ip medium
priority-list 1 queue-limit 50 40 60 80
//在接口下应用队列
//sna是高优先级
//www是低优先级
//其他ip流量是中等优先级
//高优先级队列,队列深度50
基于分组大小的优先级队列,对于很多语音信息,其分组大小不会超过 100 字节,所以可以对这样大小
的报文进行优化:
interface serial 0
priority-group 1
priority-list 1 protocol ip high lt 100
priority-list 1 default low
基于分组大小的优先级队列,适用于证券交易数据通讯或者 VOIP 数据通讯
interface serial 0
priority-group 1
priority-list 1 protocol ip high lt 100
priority-list 1 default low
根据源地址限定优先级队列
interface serial 0
priority-group 1
priority-list 1 protocol ip high list 1
priority-list 1 default low
access-list 1 permit 213.13.13.0 0.0.0.15
P a g e | 680
CCIE R/S & Service Provider Exam Certification Guide
26.4 CQ自定义队列
26.4.1 Custom Queue简介
如图所示 CQ 对报文进行分类,报文分成最多 16 类,分别属于 CQ 的 16 个队列中的一个,然后按
报文的类别将报文送入相应的队列,实际上队列的号码是 0-16 一共 17 个,但是 0 号队列是超级优先队
列,路由器总是先把 0 号队列中的报文发送完然后才处理 1 到 16 号队列中的数据包,所以 0 号队列一
般作为系统队列,通常把实时性要求高的交互式协议和链路层协议报文放到 0 号队列中。1 到 16 号队
列可以按用户的定义分配它们能占用接口带宽的比例,在报文出队的时候,CQ 按定义的带宽比例分别
从 1 到 16 号队列中取一定量的报文在接口上发送出去。可以将 CQ 和 PQ 做个比较,PQ 赋予较高优先
级的报文绝对的优先权,这样虽然可以保证关键业务的优先,但在较高优先级的报文的速度总是大于接
口的速度时,将会使较低优先级的报文始终得不到发送的机会。采用 CQ 则可以避免这种情况的发生,
CQ 可以把报文分类然后按类别将报文分配到 CQ 的一个队列中去,而对每个队列又可以规定队列中的
报文所占接口带宽的比例,这样就可以让不同业务的报文获得合理的带宽,从而既保证关键业务能获得
较多的带宽,又不至于使非关键业务得不到带宽。但是由于 CQ 轮循调度,各个队列它对高优先级尤其
是实时业务的时延保证不如 PQ。
假设局域网 1 的服务器向局域网 2 的服务器发送关键业务的数据,局域网 1 的 PC 向局域网 2 的
PC 发送非关键业务的数据,如果对路由器 1 的串口 1 配置 CQ 进行拥塞管理,同时配置服务器间的数据
流的进入队列 1,队列 1 中的报文占有 60%的带宽,例如每次出队 6000 个字节的报文,PC 间的数据流
进入队列 2,队列 2 中的报文占有 20%的带宽,例如每次出队 2000 个字节的报文,则 CQ 对这两种不同
业务的报文将做区别,对待报文的发送采用轮询调度的方式,首先让队列 1 中的报文出队,并发送直到
P a g e | 681
CCIE R/S & Service Provider Exam Certification Guide
此队列中的报文被发送的字节数不少于 6000 字节,然后才开始发送队列 2 中的报文,直到此队列中的
报文被发送的字节数不少于 2000 字节,然后是其他队列,如果路由器 1 的串口 1 的物理带宽是 2M,则
局域网 1 的服务器向局域网 2 的服务器发送关键业务的数据所能占的带宽将至少为 1.2M(2*0.6),局
域网 1 的 PC 向局域网 2 的 PC 发送非关键业务的数据所能占的带宽将至少为 0.4M(2*0.2),当路由器
1 的串口 1 中除了上述两个数据流外没有其他数据要发送时,这两种数据流将按比例分享接口的剩余空
闲带宽即局域网 1 的服务器向局域网 2 的服务器发送关键业务的数据所能占的带宽将为
1.5M[2*0.6/(0.2+0.6)]。局域网 1 的 PC 向局域网 2 的 PC 发送非关键业务的数据所能占的带宽为
0.5M[2*0.2/(0.2+0.6)],当局域网 1 的服务器向局域网 2 的服务器不发送关键业务的数据时并且除了局域
网 1 的 PC 向局域网 2,的 PC 发送非关键业务的数据外没有其他的数据流,则局域网 1 的 PC 向局域网
2 的 PC 发送非关键业务的数据所能占的带宽将可以为 2M。
为了能够为每个队列分配一定的带宽,必须为每个队列定义一定字节数的数据包。自定义队列中
的数据包也按照队列号顺序被转发,当队列为空或超出本次队列允许发送的数据包时,接下来会轮到下
一个队列。但是假如定义的字节数为 100 字节,而某个数据包的大小为 1024 字节,那么该队列每次将
转发的数据包的大小即为 1024 字节,而不是 100 字节。假如有 3 个队列,每个队列中的数据包大小分
别为 500 字节,300 字节和 200 字节如果想让这 3 个队列平均的占用带宽,为这 3 个队列定义的字节数
分别为 200 字节,200 字节和 200 字节,但是实际上生效的带宽占用比为 5/3/2,因此如果把队列中数
据包的字节数定义的过小的话,将导致带宽分配的不尽如人意。但是如果把队列中数据包的字节数定义
的过大,那么将导致下一个队列中的数据包被转发的等待时间过长。
CQ 使用中存在一些限制:
1, 由于 CQ 是静态配置的,因此它不能适应网络结构的改变。
2, 由于数据包要经过处理器卡的分类,因此 CQ 对数据包转发的速度要比 FIFO 慢。
26.4.2 Custom Queue配置
1、定义CQ列表:
nimokaka(config-if)#custom-queue-list {list} (后面是列表的号码)
2、定义队列中数据包的字节数或最大个数:
定义最大个数
nimokaka(config)# queue-list list-number queue queue-number limit limit-number
(queue的号码是队列的号码,limit的后面接的是队列里面的数量,默认为20个,范
围是0到32767)
定义队列大小(就是定义队列的带宽)
nimokaka(config)#queue-list {list} queue {queue-number} byte-count bytes
默认为1500字节
3、把数据包分配进特定的CQ 中,可以基于协议或基于进站接口:
基于协议
nimokaka(config)#queue-list {list} protocol protocol {queue-number}
queue-keyword keyword-value
同样的道理,也可以加入相应的参数,参看PQ配置的参数
基于接口
P a g e | 682
CCIE R/S & Service Provider Exam Certification Guide
nimokaka(config)#queue-list {list} interface interface {queue-number}
4、定义默认的CQ 队列,未分类的流量默认被分配进该队列:
nimokaka(config)#queue-list {list} default {queue-number}
26.4.3 Custom Queue配置检查
1、显示接口队列信息:
nimokaka#show queue [interface]
Router#show interface serial0/0/3
<top portion deleted>
Queueing strategy: custom-list 1
Output queues: (queue #: size/max/drops)
0: 0/20/0 1: 0/20/0 2: 0/20/0 3: 0/20/0 4: 0/20/0
5: 0/20/0 6: 0/20/0 7: 0/20/0 8: 0/20/0 9: 0/20/0
10: 0/20/0 11: 0/20/0 12: 0/20/0 13: 0/20/0 14: 0/20/0
15: 0/20/0 16: 0/20/0
<bottom portion deleted>
2、显示CQ列表信息: nimokaka#show queueing custom
Router#show queueing custom
Current custom queue configuration:
List
Queue
Args
protocol ip
1
1
1
2
protocol ip
1
3
protocol ip
1
1
byte-count 2172
1
2
byte-count 6693
1
3
byte-count 2493
tcp port <protocolA>
tcp port <protocolB>
tcp port <protocolC>
26.4.4 CQ配置实例
interface serial 0
custom-queue-list 1
//在接口应用队列
queue-list 1 protocol sna 1
queue-list 1 protocol ip 2
queue-list 1 protocol ipx 3
//在queue-list 1中定义sna,ip,ipx队列。
queue-list1queue1byte-count15000
queue-list 1 queue 2 byte-conut 3500
queue-list 1 queue 3 byte-conut 1500
//queue 1,sna被设为3*(1500+3500)=15000
//queue 2,ipx,被设为3500字节
//默认1500
26.5 CBWFQ基于类的公平队列
26.5.1 CBWFQ简介
CBWFQ (Class-based weighted fair queueing) 是思科公司在 IOS 中的一种新的队列技术,它是 WFQ 队
列技术的拓展。使用 CBWFQ 技术,可以将数据流根据各种条件分类,同类的数据占用一个队列。当数据
被分类完毕后,可以为该类数据定制传输特性,如带宽、传输的权级 (weight) 、传输限制等。为一个队列
指定的带宽通常是指在带宽拥塞时为该队列所保证的带宽。
在分类数据时,需要指明每个队列的长度,即该队列所能存放的数据包的量。如果数据包超出队列的
容量,会发生丢包的现象,通常是队列尾部的数据包被丢弃。
P a g e | 683
CCIE R/S & Service Provider Exam Certification Guide
图中所示LLQ(Low Latency Queueing,低延迟队列)是一个具有较高优先级的队列,它的优先级仅次
于二层协议队列(如同CQ中的0号队列),与RTP优先队列(RTP优先队列的参见后文介绍)一个或多个类的
报文可以被设定进入LLQ,队列不同类别的报文可设定占用不同的带宽,在调度出队的时候,若LLQ中有报
文则总是优先,发送LLQ中的报文直到LLQ中没有报文时或者超过为LLQ配置的最大预留带宽时,才调度发送
其他队列中的报文。
图中1到64的队列为各类报文的队列每类报文占一个队列,我们称它们为BQ(Bandwidth Queueing)
在系统调度报文出队的时候,按用户为各类报文设定的带宽将报文出队发送这种队列技术,应用了先
进的队列调度算法可以实现各个类的队列的公平调度属于1到N1号BQ队列的报文可以被确保得到用户设定
的带宽,当接口中某些类别的报文没有时,BQ 队列的报文还可以公平地得到空闲的带宽,大大提高了线路的
利用率,同时在接口拥塞的时候仍然能保证各类报文得到用户设定的最小带宽。
当报文不匹配用户设定的所有类别时,报文被送入系统定义的缺省类,虽然允许为缺省类配置带宽使
其作为BQ类进行基于类的队列调度,但是更多的情况是为缺省类配置WFQ,使所有进入缺省类的报文进行
基于流的队列调度。
CBWFQ最多允许配置64个BQ类,缺省类的WFQ的队列个数N可以由用户设定。 对于缺省类的WFQ和BQ,
当队列的长度达到队列的最大长度时,缺省采用尾丢弃的策略。但用户还可以选择用加权随机预检测
(Weighted Random Early Detection, WRED)的丢弃策略(加权随机预检测的丢弃策略请参见后面加权随机预检
测WRED的描述)。
综上所述CBWFQ有一个低时延队列 - LLQ 用来支撑EF(加速转发)类业务,被绝对优先发送,另外有
64个BQ用来支撑AF(确保转发)类业务,可以保证每一个队列的带宽及可控的时延,还有一个WFQ对应BE
(尽力而为传输)业务使用接口剩余带宽进行发送。CBWFQ可根 据报文的输入接口ACL、IP优先级/DSCP等
规则对报文进行分类,进入相应队列规则可以是通手工配置,对于进入LLQ和BQ的报文要进行测量,考虑到
链路层控制报文的发送链路层封装开销及物理层开销
建议RTP优先队列LLQ与BQ占用接口的总带宽不要超过接口带宽的75%%(默认就是只占用75%带宽)
LLQ只采用尾丢弃,BQ可采用尾丢弃或者WRED(基于IP优先级DSCP) WFQ可采用尾丢弃和WRED。CBWFQ
可为不同的业务定义不同的调度策略,如带宽时延等。由于涉及到复杂的流分类,对于高速接口GE以上启
用CBWFQ特性系统资源存在一定的开销。
P a g e | 684
CCIE R/S & Service Provider Exam Certification Guide
RSVP也可以和CBWFQ 协同工作.当一个接口同时配置了CBWFQ 和RSVP,它们之间的工作 是独立的.并
且当CBWFQ 不存在的时候RSVP 还是会继续工作.
CBWFQ使用存在的一些限制:
一、目前流量和整形不支持CBWFQ。
二、CBWFQ 不支持以太网子接口
26.5.2 CBWFQ配置
在配置队列时,可以配置一个默认队列,所有没有具体分类的数据都会被放到默认队列中。默认队列
的数据处理可以通过用户配置去定义。如果没有定义默认队列,那么那些没有匹配到任意类的数据会根据
数据流 (flow) 区分并用 best-effort 方式处理。
CBWFQ 对 WFQ 作了一些改进,在 WFQ 中, weight 是用来指明队列的权级的,而在 CBWFQ 中,
weight 是用来指明每个数据包的权级的。数据包到达出口时,根据事先定义好的标准被分成不同的类别,
每个包都会有自己的 weight 。数据包的 weight 被指定了以后,数据包会排在相应的类的队列中, CBWFQ
通过使用 weight 来保证数据包的公正处理。
CBWFQ 可以为某类流量指定相应的带宽。根据接口的带宽,可以配置多达 64 类数据,并指定相应
的处理方式。这是传统的基于数据流的 WFQ 所做不到的。也是 CBWFQ 与 WFQ 的区别之所在。
CBWFQ 在分类定义数据流时,不仅仅可以通过 IP 地址和端口号;还可以通过扩展访问控制列表
(EACL) 或数据输入接口 (input interface) 。这也是 WFQ 所做不到的。
在采用 CBWFQ 时,我们通常需要三个步骤:
1 定义数据的分类策略,在这里是通过 class map 来做分类数据的定义
a、定义class map
nimokaka(config)#class-map [match-all|match-any] {map-name}
b、定义匹配语句
nimokaka(config-cmap)#
一些匹配条件选项:
match access-group {ACL}
匹配IP ACL
match protocol {protocol}
匹配协议
match input-interface {interface}
匹配进站接口
match qos-group {Group ID}
匹配组ID
match destination-address {mac mac-address}
匹配目标MAC 地址
match source-address {mac mac-address}
匹配源MAC 地址
match ip {dscp dscp}
匹配IP DSCP 值
match ip {precedence precedence}
匹配IP 优先级
match class-map {map-name}
匹配
class map match vlan {vlan-id}
匹配VLAN
2 为每类数据定义其处理的策略,通过 policy map 来定义
a. 设置policy map:
nimokaka(config)#policy-map {policy-name}
b. 调用class map 或默认的class map(所有未分类的流量默认都属于该分类,否则未分类
P a g e | 685
CCIE R/S & Service Provider Exam Certification Guide
的流量将以尽力而为的方式被处理):
nimokaka(config-pmap)#class {class-map|class-default}
c. 设置策略:
nimokaka(config-pmap-c)#bandwidth {kbps|percent percent}
d. 定义尾丢弃机制允许的队列中数据包个数的上限,默认值为64:
nimokaka(config-pmap-c)#queue-limit {packets}
其他配置参数
nimokaka(config-pmap-c)#random-detect
用于WRED
nimokaka(config-pmap-c)#shape
令牌桶参数
nimokaka(config-pmap-c)#police
(car限速)
nimokaka(config-pmap-c)#priority
优先级,低延迟队列(LLQ).
3 将所定义的策略应用到接口上。
在出站接口上应用policy map:
nimokaka(config-if)#service-policy output {policy-name}
更改用于RSVP 和CBWFQ 等队列机制保留的最大带宽值,默认为75%:
nimokaka(config-if)#max-reserved-bandwidth {percent}
26.5.3 检查CBWFQ配置
1、查看policy map 信息:
nimokaka#show policy-map [policy-name]
2、查看接口的policy map 信息:
nimokaka#show policy-map interface [interface]
3. 显示接口的队列信息:
nimokaka#show queue [interface]
26.5.4 CBWFQ配置实例
限制源自192.168.10.0/24 的流量的带宽为1000kbps:
!
class-map match-all nimokaka
!
policy-map kaka
bandwidth 1000
限制带宽1000k
queue-limit 30
限制队列数据包上限30个包
class class-default
其他的放置到默认队列
!
interface Serial1
ip address 172.16.10.1 255.255.255.252
service-policy output kaka
!
access-list 1 permit 192.168.10.0 0.0.0.255
多class-map联合使用
class-map match-any nimokaka1
P a g e | 686
CCIE R/S & Service Provider Exam Certification Guide
match protocol sqlnet
match protocol ipsec
match access-group 100
match ip precedence 4 5
!
class-map match-all nimokaka2
match access-group 101
match access-group 102
!
class-map nimokaka3
match access-group 103
policy-map kaka
class nimokaka1 bandwidth 6000 class nimokaka2 bandwidth 3000 class
nimokaka3 bandwidth 700 class class-default bandwidth 200
!
interface ethernet 1/1
service-policy output kiss
基于IP优先级的控制
class-map match-any class0
match ip precedence 4
match ip precedence 0
class-map match-any class1
match ip precedence 1
match ip precedence 5
class-map match-any class2
match ip precedence 2
match ip precedence 6
class-map match-any class3
match ip precedence 3
match ip precedence 7
policy-map tos-based
class class0
bandwidth 6750
class class1
bandwidth 13500
class class2
bandwidth 18000
class class3
bandwidth 6750
interface hssi0/0/0
service-policy output tos-based
26.6 LLQ低延迟队列
26.6.1 LLQ简介
LLQ(Low Latency Queueing,低延迟队列)是一个具有较高优先级的队列,它的优先级仅次于二层
协议队列(如同CQ中的0号队列),与RTP优先队列(RTP优先队列的参见后文介绍)一个或多个类的报
文可以被设定进入LLQ,队列不同类别的报文可设定占用不同的带宽,在调度出队的时候,若LLQ中有报
文则总是优先,发送LLQ中的报文直到LLQ中没有报文时或者超过为LLQ配置的最大预留带宽时,才调度
发送其他队列中的报文。 进入LLQ的报文在接口没有发生拥塞的时候,此时所有队列中都没有报文,所
有属于LLQ的报文都可以被发送在接口,发生拥塞的时候队列中有报文时,进入LLQ的报文被限速超出规
定流量的报文将被丢弃,这样在接口不发生拥塞的情况下可以使属于LLQ的报文能获得空闲的带宽在,
接口拥塞的情况下又可以保证属于LLQ的报文不会占用超出规定的带宽,保护了其他报文的应得带宽,
P a g e | 687
CCIE R/S & Service Provider Exam Certification Guide
另外由于只要LLQ中有报文系统就会发送LLQ中的报文,所以LLQ中的报文被发送的延迟最多是接口发送
一个最大长度报文的时间,无论是延时还是延时抖动 LLQ都可以将之降低为最低限度,这为对延时敏感
的应用如VoIP业务提供了良好的服务质量保证
26.6.2 LLQ配置
在CBWFQ中使用bandwidth命令是用于定义普通队列的,
但是如果改用priority,
j配置的就是低延时队列,凌驾于CBWFQ的上面
nimokaka(config-pmap-c)#priority {bandwidth}
为LLQ和IP RTP设置占用带宽的百分比
nimokaka(config-if)#max-reserved-bandwidth percent
26.6.3 检验LLQ配置
1、显示接口队列信息:
nimokaka#show queue [interface]
2、调试优先级队列:
nimokaka#debug priority
26.6.4 LLQ配置实例
使用LLQ给视频流量提供保留带宽
在配置之前肯定事先已经将视频流量的数据包优先级更改成5,给ACL100和101定义的数据包加
入class map, 然后使用policy map中的priority命令来保证1518k的带宽,并且把优先级set到5,交给
下一跳路由器
class-map match-all nimokaka1
match access-group 100
class-map match-all nimokaka2
match access-group 101
!
policy-map video1
//定义LLQ策略
class nimokaka1
priority 1518
//使用priority定义为Video预留的带宽
set ip precedence 5
//更改优先级
class class-default fair-queue
policy-map video class nimokaka2 priority 1518
set ip precedence 5 class class-default fair-queue
!
interface FastEthernet1/0/0.1 description HQ1 LAN encapsulation dot1Q 1
ip address 129.2.80.21 255.255.0.0
service-policy output video1
//在接口下应用策略
!
interface Serial1/0/0
description Router 1 to ROUTER 2
ip address 206.141.24.1 255.255.255.0
ip route-cache policy
no ip route-cache distributed service-policy output video
!
access-list 100 permit ip host 141.2.20.20 host 129.2.20.34 precedence critical
//通过ACL匹配
access-list 101 permit ip host 129.2.20.34 host 141.2.20.20 precedence critical
26.7 RTP优先级队列
P a g e | 688
CCIE R/S & Service Provider Exam Certification Guide
26.6.1 RTP-PQ简介
如图所示:RTP优先队列是一种解决实时业务包括语音与视频业务服务质量的简单队列技术。其原
理就是将承载语音或视频的RTP报文送入高优先级队列使其得到优先发送,保证延时和抖动降低为最低
限度,从而保证了语音或视频这种对时延敏感业务的服务质量,RTP 优先队列将RTP报文送入一个具有
较高优先级的队列,RTP报文是端口号在一定范围内为偶数的UDP报文,端口号的范围可以配置一般为
16384~32767,RTP优先队列可以同前面所述的任何一种队列包括FIFO、PQ、CQ、WFQ与CBWFQ 结合使
用。它的优先级是最高的。
一般语音数据包的体积较小,如果有体积较大的数据包要从该接口被转发出去,该接口应配置链路
分片和交叉(LFI)特性.体积较大的数据包被分片为体积较小的数据包。该特性 防止语音数据包要等待
到体积较大的数据包被转发完毕之后才能被转发。这样语音数据包可 以和被分片的数据包交叉被转发
出去。从而减少了语音数据包转发消耗的时间。
由于对进入RTP优先队列的报文进行了限速,超出规定流量的报文将被丢弃这样,在接口拥塞的情
况下可以保证属于RTP优先队列的报文不会占用超出规定的带宽,保护了其他报文的应得带宽解决了PQ
的高优先级队列的流量可能丢弃低优先级流量的问题。
26.6.2 RTP-PQ配置
添加起始port和port范围, 后面的bandwidth填写的是预留的带宽
nimokaka(config-if)#ip rtp priority {starting-rtp-port-number
port-number-range}{bandwidth}
为LLQ和IP RTP设置占用带宽的百分比
nimokaka(config-if)#max-reserved-bandwidth percent
26.6.3 检验RTP-PQ配置
1、显示接口队列信息:
nimokaka#show queue [interface]
2、调试优先级队列:
nimokaka#debug priority
P a g e | 689
CCIE R/S & Service Provider Exam Certification Guide
26.6.4 RTP和CBWFQ结合使用
定义class map
nimokaka(config)# class-map nimokaka
nimokaka(config-cmap)# match access-group 101
nimokaka(config-cmap)# exit
定义和使用policy map
nimokaka(config)# policy-map kiss
nimokaka(config-pmap)# class nimokaka
nimokaka(config-pmap-c)# bandwidth 3000
nimokaka(config-pmap-c)# queue-limit 30
nimokaka(config-pmap-c)# random-detect
nimokaka(config-pmap-c)# random-detect precedence 0 32 256 100
nimokaka(config-pmap-c)# exit nimokaka(config)# interface Serial1
nimokaka(config-if)# service-policy output nimokaka
设置RTP
nimokaka(config-if)# ip rtp priority 16384 16383 40
RTP是直接应用到接口上的,所以优先级超级超级高,另外看看端口范围,起始端口是16384,
范围是从16384加上后面的range=16383,
应该是从16384--32767这个范围,存在一个加法公式。
26.6.5 CRTP压缩实时传输协议
实时传输协议(RTP)是一种用于传输实时数据流量的协议。RTP包含数据部分和包头部分。数据部分
用于支持实时传输应用程序的各种属性。包头部分的体积比较大,最少包括了12 字节的RTP包头,20字节
的IP 包头(IPH)和8字节的UDP包头,因此IP/UDP/RTP包头总长度 至少为40字节。根据IP/UDP/RTP包头长度
的不同,RTP数据包的长度为20字节到160字节不等。如果不对IP/UDP/RTP包头进行压缩的话,对于RTP数据
包的传输是很没效率的。因此后来出现了压缩IP/UDP/RTP包头的压缩式实时传输协议(CRTP)。
CRTP是一种逐跳的压缩机制。CRTP可以把IP/UDP/RTP包头从40字节压缩为2到5字节。当广域网接
口带宽不高,并且RTP数据流量过大的话,应该考虑使用CRTP;但是对于高于T1线 路速率的接口,无需
使用CRTP。CRTP支持ISDN,支持使用PPP,HDLC或FR封装的接口.但是FR 的封装格式只能使用Cisco特有
的格式。
26.6.6
CRTP配置
1. 启用CRTP:如果不指定关键字passive,将对所有IP/UDP/RTP包头进行压缩;如果指定
passive关键字,当进站RTP数据包的IP/UDP/RTP包头被压缩,才相应的压缩出站的RTP数据
包的IP/UDP/RTP包头:
nimokaka(config-if)#ip rtp header-compression [passive]
2、 更改IP/UDP/RTP包头压缩的连接数,默认为16条.可选:
nimokaka(config-if)#ip rtp compression-connections {number}
RTP头压缩,默认16条,最大500条
nimokaka(config-if)#ip tcp compression-connections {number}
TCP头压缩,默认16条,最大128条
基于帧中继环境的CRTP
1、在物理接口上启用CRTP,那么该物理接口相关的子接口将继承CRTP的配置信息。如果不
P a g e | 690
CCIE R/S & Service Provider Exam Certification Guide
指定关键字passive,将对所有IP/UDP/RTP包头进行压缩;如果指定passive关键字,当进
站RTP数据包的IP/UDP/RTP包头被压缩,才相应的压缩出站的RTP数据包的IP/UDP/RTP包头:
nimokaka(config-if)#frame-relay ip rtp header-compression [passive]
2、更改IP/UDP/RTP包头压缩的连接数,默认为16条,可调整:
nimokaka(config-if)#frame-relay ip rtp compression-connections {number}
3、只针对特定的PVC启用CRTP。如果指定关键字active,将对所有IP/UDP/RTP包头进行压
缩;如果指定passive关键字,当进站RTP数据包的IP/UDP/RTP包头被压缩,才相应的压缩
出站的RTP数据包的IP/UDP/RTP包头。还可以指定最大的IP/UDP/RTP包头压缩的连接数,默
认为16条,可调整:
nimokaka(config-if)#frame-relay map ip {ip-address} {dlci} [broadcast] rtp
header-compression [active|passive] [connections number]
4、在特定PVC上同时启用CRTP 和TCP 头部压缩。
nimokaka(config-if)#frame-relay map ip {ip-address} {dlci} [broadcast]
compress
26.6.7 检验CRTP
1、显示IP/UDP/RTP包头的压缩统计信息:
nimokaka#show ip rtp header-compression [interface] [detail]
2、显示FR 的IP/UDP/RTP包头的压缩统计信息:
nimokaka#show frame-relay ip rtp header-compression [interface]
26.8 WRR加权轮询队列
26.6.1 WRR简介
WRR(Weighted Round-Robin)调度算法
交换机的端口支持4 个输出队列,WRR 队列调度算法在队列之间进行轮流调度,保证每个队
列都得到一定的服务时间。WRR 可为每个队列配置一个加权值(依次为w3、w2、w1、w0),加
权值表示获取资源的比重。如一个100M的端口,配置它的WRR 队列调度算法的加权值为50、30、
10、10(依次对应w3、w2、w1、w0),这样可以保证最低优先级队列至少获得10Mbit/s 带宽,
避免了低优先级队列中的报文可能长时间得不到服务的缺点。WRR 队列还有一个优点是,虽然多
个队列的调度是轮循进行的,但对每个队列不是固定地分配服务时间片——如果某个队列为空,那
么马上换到下一个队列调度,这样带宽资源可以得到充分的利用。
HQ-WRR 调度算法
HQ-WRR 调度模式在WRR 的基础上,在4 个输出队列中选择队列3 为高优先级队列。如果4
个队列的占用的带宽超过了端口的能力,交换机首先保证队列3 的报文优先发送出去,然后对其余
3 个队列实行WRR 调度。
26.6.2 C3550的Qos时序及队列
P a g e | 691
CCIE R/S & Service Provider Exam Certification Guide
3550 交换机有两种不同类型的端口:千兆端口和非千兆端口(10/100M 端口)每个 3550 的端口上
都有4个不同的输出队列。这些队列中的一个可以被配置为优先级队列。余下的几个端口被配置为非绝对的
优先级队列,并使用Weighted Round Robin (WRR)。 所有的端口上,数据包根据各自的服务类别(CoS)被
分配为四中可能的类别之一。
其中千兆端口还能支持每个队列的管理机制。每个队列可以使用 Weighted Random Early Discard
(WRED)或者双线程的 tail drop 。队列大小可调(每个队列均分配相应的 缓冲区)。非千兆端口不支持任
何队列管理机制,例如 WRED 或者双线程 tail drop
10/100M 端口支持 FIFO 队列。 每个端口队列的大小都不可改变。但是可以为每个队列分配最小的
保留带宽。
26.6.3 WRR队列配置
CoS
到队列映射
本节讨论 3550 如何决定将每个数据包放置到队列中去。数据包队列取决于服务类别(CoS)。
通过使用 CoS 到队列的接口映射命令,每个八种可能的 Cos 数值将被映射到相应 的四个队列。
下面是该命令的示例:
nimokaka(config-if)# wrr-queue cos-map queue-id cos1... cos8
nimokaka(config-if)# wrr-queue cos-map 1 0 1
nimokaka(config-if)# wrr-queue cos-map 2 2 3
nimokaka(config-if)# wrr-queue cos-map 3 4 5
nimokaka(config-if)# wrr-queue cos-map 4 6 7
该示例将 CoS 0和 1 映射到 Q1, CoS 2 和 3 映射到 Q2, CoS 4 和 5映射到 Q3, CoS 6和 7
映射到 Q4。
每个端口的 CoS 到队列的映射情况可以通过使用下面的命令来进行验证:
nimokaka# sh mls qos int gig 0/1 queueing
GigabitEthernet0/1
...Cos-queue map:
cos-qid
0-1
1-1
2-2
3-2
4-3
5-3
6-4
7 - 4.
当然,DSCP也可以有默认的映射,如下图
绝对的优先级队列
绝对的优先级队列在初始状态下通常是空的。这就意味着一旦有数据包进入队列,该包将马上被
转发。当 WRR 队列中所有的数据包都被转发后,优先级队列根据需要关闭并清空。 绝对的优先级队
列被特别设计来处理对延迟/抖动比较敏感的数据流,例如语音。绝对的优先级队列将导致其他队列严
重滞后。在其他三个 WRR 中的数据包在绝对的优先级队列中数据传输完成之前,将不会被转发。注
P a g e | 692
CCIE R/S & Service Provider Exam Certification Guide
意:要避免其他队列的严重滞后,要特别注意放到优先级 队列中的流量。
该队列通常用于语音数据流,而此类型应用并不占用很高的带宽。但是若有人将一些占 用带宽较
多的应用(例如数据转移或备份)放到绝对的优先级队列。这将引起其他流量的严重滞后。要避免该
问题,特殊的数据流应被放置在分类/准入,并在网络中标记该数据流。 例如,你可能需要采取一下
预防措施:
1、在非可信的源端口使用非可信的端口 QoS 状态;
2、在使用 Cisco IP 电话端口可靠的边界特性时,确信 IP 电话配置于其它应用是可信的
3、修正进入绝对优先级队列的数据流。在千兆端口上修正数据流的流量限制为 100M。
在 3550 上,可以配置一个队列为优先队列,(总是 Q4),在端口模式下使用如下命令:
nimokaka(config-if)# priority-queue out
(加载这个命令之后,Q4 就会成为优先队列)
如果某个端口没有配置优先队列,则 Q4 被当做标准的 WRR 队列(下节将详细描述) 你可以通过
输入和下面一样的 IOS 命令来验证某端口是否被配置为绝对优先级队列,
nimokaka#sh mls qos interface gig 0/1 queueing
GigabitEthernet0/1
Egress expedite queue: ena
26.6.4 3550的WRR配置
在 3550 上,WRR 是一个对输出时间序列进行管理的机制。WRR 在三个或四个队列(如果没有绝对
优先级队列)之间工作。使用 WRR 模式的队列在循环方式下是置空的,可以为每个 队列配置相应的权值。
例如,配置了不同的权值,不同的队列将提供不同的服务,如下所示:
Serving WRR Q1 : 10% of time
Serving WRR Q2 : 20% of time
Serving WRR Q3 : 60% of time
Serving WRR Q4 : 10% of time
对每个队列,你可以在端口模式使用以下命令来配置四个权值(各自相对于一个队列):
nimokaka(config-f)#wrr-queue bandwidth weight1 weight2 weight3 weight4
nimokaka(config)# interface gigabitethernet0/1
nimokaka(config-if)# wrr-queue bandwidth 1 2 3 4
注意:权值是相对的,下面是计算方式
Q1 = weight 1 /(weight1 + weight2 + weight3 + weight4) = 1/(1+2+3+4) = 1/10
Q2 = 2/10
Q3 = 3/10
Q4 = 4/10
WRR 可通过以下两种方式执行:
a)
WRR per bandwidth: 每个权值描述了可以用于发送的特别带宽。权 Q1 允许使用大约
10%的带宽,Q2 将获得大约 20%的带宽,以此类推。
b)
WRR per packet: 该算法在3550 交换机上实现。 这表示每个权值表示了某个数量的数据
包将被发送,而不管包的大小如何。
P a g e | 693
CCIE R/S & Service Provider Exam Certification Guide
3550上实现WRR per packet表现为如下形式:
Q1 传输 1/10 的数据包
Q2 传输 2/10 的数据包
Q3 传输 3/10 的数据包
Q4 传输 4/10 的数据包
如果被传送的包是同样大小则是最理想的情况.在4 个队列中你依然能够获得理想的共享带宽。然而,
如果队列间的平均包大小有差异,则会在拥塞事件发生时对传输产生巨大的影响。
假设当前交换机只有两个数据流, 同时假设处于以下的情形:
一个千兆口的队列 2(Q2)以 Cos 3 类别方式每秒传输少量的交互应用数据流(80 字节/帧)
一个千兆口的队列 1(Q1)以 Cos 0 类别方式每秒传输大型文件数据流(1518 字节/帧)
两个队列都将以传输 1 Gbps 的速率传输数据。两个数据流需要共享同一个输出的千兆口。假设我们
已经为 Q1 和 Q2 设置了同样的权值,WRR 应用到每个数据包,并且每个队列 内传输的数据量不同于两
个队列之间的数据量。每个队列都转发了同样数量的数据包,然而 交换机实际上发送了下面数量的数据:
77700 包/秒由 Q2 输出 = (77700 x 8 x 64) bits/sec (大约 52 Mbps)
77700 包/秒由 Q1 输出= (77700 x 8 x 1500) bits/sec (大约 948 Mbps)
注意:
如果你想要每个队列都公平的接入网络,需要考虑每个数据包的平均值。每个数据包都
被假设放置在同一个队列,因而权值得到改善。
例如:如果你想要为四个队列赋予相同的接入(每个队列各自分配到 1/4 的带宽),流量表现为如下
形式:
Q1: 最佳的互联网数据流量。假定数据流的平均包大小为 256 字节。
Q2 : 文件备份形成的文件传输,主要由 1500 字节构成的数据包。
Q3 : 视频流,每个包被分成 192 字节。
Q4 : 交互应用,主要由 64 字节构成的数据包。 这就产生了以下的情形:
Q1 消耗 4 倍于 Q4 的带宽 Q2 消耗 24 倍于 Q4 的带宽 Q3 消耗 3 倍于 Q4 的带宽
若要以同样的带宽接入网络,采用如下的配置:
Q1 权值设为 6
Q2 权值设为 1
Q3 权值设为 8
Q4 权值设为 24
如果分配了以上的权值,则在拥塞事件发生时,四个队列将分享到同样的带宽。
如果设置了绝对优先级队列,WR 权值将在其余三个队列中重新分配。下面是一个设置了绝对优先级,
而 Q4 没有进行配置的情况下,队列 1、2、3。
Q1 = 1 / (1+2+3) = 1/6 数据包输出
Q2 = 2/6 数据包输出
Q3 = 3/6 数据包输出
队列的权值可以通过 IOS show 命令进行验证:
nimokaka#sh mls qos interface gig 0/1 queueing GigabitEthernet0/1
P a g e | 694
CCIE R/S & Service Provider Exam Certification Guide
QoS is disabled. Only one queue is used
When QoS is enabled, following settings will be applied
Egress expedite queue: dis wrr bandwidth weights:
qid-weights
1 - 25
2 - 25
3 - 25
4 - 25
如果启用了快速优先级队列,Q4的权值仅在快速队列失效时使用。 看下面的示例:
nimokaka#sh mls qos interface gig 0/1 queueing
GigabitEthernet0/1
Egress expedite queue: ena wrr bandwidth weights:
qid-weights
1 - 25
2 - 25
3 - 25
4 - 25
P a g e | 695
CCIE R/S & Service Provider Exam Certification Guide
Chapter 27 CAR流量管理
27.1 CAR流量控制
27.1.1 令牌桶模型
令牌桶有 4 个关键参数,
1.
平均速率或者承诺信息速率,CIR,单位 Bit/s
2.
顺从突发量 Bc,瞬间可以超过令牌桶的流量。有时候也称作常规突发量
3.
扩展突发量 BE,
4.
时间间隔:Ti=Bc/CIR
流量控制有 CAR 提供,CAR 主要提供了 2 个功能,通过设定 IP 优先级来描述分组和限制速率
作为一种流量控制功能,CAR 并不将通信保存到缓冲区或使其平稳,当超过允许的突发流量时就会
丢弃分组.
rate-limit <input/ouput> access-group rate-limit # "CIR""conformed burst" "extended
burst" conform-action "action desired"exceed-action "action desired"
流量限制分为 3 个过程, 如下图:
1.
流量匹配(Traffic Matching)
流量匹配通常可以定义很多匹配方式,
2.
1.
匹配所有通信
2.
使用速率限制访问列表匹配某个 IP 优先级
3.
使用速率限制访问列表匹配某个 MAC 地址
4.
使用 IP 标准或扩展访问列表进行匹配
流量检测
流量检测采用令牌桶模型, 标准的令牌桶结构如下
令牌桶按用户设定的速度向桶中放置令牌,并且用户可
以设置令牌桶的容量,当桶中令牌的量超出桶的容量的时候,
令牌的量不再增加;当报文被令牌桶处理的时候,如果令牌桶
中有足够的令牌可以用来发送报文,则报文可以通过可以被继
续发送下去,同时令牌桶中的令牌量按报文的长度做相应的减
少,当令牌桶中的令牌少到报文不能再发送时,报文被丢弃。
令牌桶是一个控制数据流量的很好的工具,当令牌桶中充满令
牌的时候,桶中所有的令牌代 表的报文都可以被发送,这样
可以允许数据的突发性传输,当令牌桶中没有令牌的时候报文
将不能被发送,只有等到桶中生成了新的令牌报文才可以发送,
这就可以限制报文的流量只 能是小于等于令牌生成的速度,
达到限制流量的目的。
P a g e | 696
CCIE R/S & Service Provider Exam Certification Guide
令牌桶能保存的最大令牌数目等于 Bc.
标准令牌桶 Be = Bc
没有扩展突发功能 ,令牌不够用直接丢弃
扩展突发功能的令牌桶 Be > Bc,它允许流量暂借根多的令牌.然后采用随机丢弃的策
略, 缓慢的丢弃流量.
27.1.2 流量控制操作
对于 ISP 来说对用户送入网络中的流量进行控制是十分必要的。对于企业网,对某些应用的流量
进行控制也是一个有力的控制网络状况的工具,网络管理者可以使用约定访问速率 CAR 来对流量进行
控制。CAR 利用令牌桶(Token Bucket, TB)进行流量控制。如下图:
上图所显示的是利用 CAR 进行流量控制的基本处理过程,首先根据预先设置的匹配规则 来对报
文进行分类,如果是没有规定流量特性的报文就直接继续发送,并不需要经过令牌桶的处理;如果是
需要进行流量控制的报文,则会进入令牌桶中进行处理,如果令牌桶中有足 够的令牌可以用来发送报
文,则允许报文通过,报文可以被继续发送下去;如果令牌桶中的令牌不满足报文的发送条件则报文
被丢弃,这样就可以对某类报文的流量进行控制。
在实际应用中 CAR 不仅可以用来进行流量控制,还可以进行报文的标记(mark)或重新标记
(re-mark),具体来讲就是 CAR 可以设置 IP 报文的优先级或修改 IP 报文的优先级,达到 标记报文的
目的。例如当报文符合流量特性的时候可以设置报文的优先级为 5,当报文不符 合流量特性的时候可
以丢弃,也可以设置报文的优先级为 1 并继续进行发送,这样后续的处 理可以尽量保证不丢弃优先级
为 5 的报文。在网络不拥塞的情况下也发送优先级为 1 的报文。 当网络拥塞时首先丢弃优先级为 1 的
P a g e | 697
CCIE R/S & Service Provider Exam Certification Guide
报文。然后才丢弃优先级为 5 的报文。
配置实例:
一个Internet提供商使用IP由县级为客户提哦能够不同等级的奖赏服务,确保网络主干由县处
理这些信息
1.使用CAR的优先级
interface Hssi 0/0/1
rate-limit access-group 1 input 45000000 22500 22500 conform-action
set-prec-transmit 5 exceed-action set-prec-transmit 5
rate-limit input 45000000 22500 22500 conform-action set-prec-transmit 4
exceed-action set-prec-transmit 4
access-group 1 permit 215.215.215.0 0.0.0.255
2.使用PBR的IP优先级
interface Hssi 0/0/1
ip policy route-map tasman
route-map tasman permit 10
match ip address 1
set ip precedence 5
route-map tasman permit 20
set ip precedence 4
access-group 1 permit 215.215.215.0 0.0.0.255
3. 使用QPPB的IP优先级 ,Cisco的CEF快速转发支持对IP优先级的识别.
interface Hssi 0/0/1
ip address 217.217.217.1 255.255.255.252
bgp source ip-prec-map
router bgp 10
table-map tasman
neighbor 217.217.217.2 remote-as 2345
route-map tasman permit 10
match ip address 1
set ip precedence 5
route-map tasman permit 20
set ip precedence 4
access-group 1 permit 215.215.215.0 0.0.0.255
修改QoS组
1.使用CAR
interface Hssi 0/0/1
rate-limit access-group 1 input 45000000 22500 22500 conform-action
P a g e | 698
CCIE R/S & Service Provider Exam Certification Guide
set-qos-transmit 3 exceed-action drop
rate-limit input 45000000 22500 22500 conform-action set-qos-transmit 0 exceedaction drop
access-group 1 permit 215.215.215.0 0.0.0.255
2.使用QPPB
interface Hssi 0/0/1
ip address 217.217.217.1 255.255.255.252
bgp source ip-qos-map
router bgp 10
table-map tasman
neighbor 217.217.217.2 remote-as 2345
route-map tasman permit 10
match ip address 1
set ip qos-group 3
route-map tasman permit 20
set ip qos-group 0
access-group 1 permit 215.215.215.0 0.0.0.255
CAR 可以为不同类别的报文设置不同的流量特性和标记特性,即首先对报文进行分类, 然后不
同类别的报文有不同的流量特性和标记特性,此外 CAR 的策略还可以进行串联处理。 例如可以对所有
的报文限制一个总的流量,然后在总的流量中再限制部分报文的流量符合某 个流量特性。
CAR 通常使用在网络边界路由器的接口上,用来限制进入或离开该网络的流量速率。每个接口可
以配置多个 CAR 策略,当数据包进入使用了多个策略的接口时,路由器将检查每个策略,直到数据包
和某个策略相匹配;如果没有找到匹配的策略,默认操作是转发该数据包。
CAR 的使用限制:
27.1.3
第一、
CAR 只能对 IP 流量限速。
第二、
CAR 不支持快速以太网信道(FastEtherChannel)
第三、
CAR 不支持隧道接口
第四、
CAR 不支持 ISDN PRI 接口。
CAR配置过程
nimokaka(config-if)#rate-limit {input|output} {CIR Bc Be} conform-action {action}
exceed-action {action}
output|input 指输出或者输入的流量。
CIR 配置的是承诺接入速率,它的值的范围是在 8000-2000000000 bit 每秒。
Bc 是普通突发,它的值应在 1000-512000000byte,
Be 是最大突发,其值范围为 2000-1024000000bytes.
conform-action 后面规定的是遵从条件时候的动作,
exceed-action 后面规定的是超出时的动作,
{action}
continue
drop
set-prec-continue {precedence}
set-prec-trasnmit {precedence}
set-dscp-continue {dscp}
set-dscp-trasnmit {dscp}
set-qos-continue {group ID}
set-qos-transmit {group ID}
继续执行下一条CAR 语句
丢弃该数据包
设置IP 优先级并继续执行下一条CAR 语句
设置IP 优先级并转发该数据包
设置IP DSCP 值并继续执行下一条CAR 语句
设置IP DSCP 值并转发该数据包
设置QoS 组ID 并继续执行下一条CAR 语句
设置QoS 组ID 并发送该数据包
P a g e | 699
CCIE R/S & Service Provider Exam Certification Guide
transmit
转发该数据包
基本上就是这些,但是我们发现好像这样做是管理整个接口的流量,也可以对某一个流量进
行CAR管理。或者针对IP优先级或者根据DSCP进行管理。
针对于DSCP值进行CAR
nimokaka(config-if)#rate-limit {input|output} [dscp dscp] {CIRBc Be}
conform-action{action} exceed-action {action}
针对于ACL进行CAR
nimokaka(config-if)#rate-limit {input|output}access-group {ACL}
{CIRBc Be}conform-action {action} exceed-action {action}
针对于限速ACL进行CAR
nimokaka(config-if)#rate-limit {input|output} access-group rate-limit
{ACL} {CIR Bc Be} conform-action {action} exceed-action {action}
限速ACL是一种特殊的ACL,其实也没啥特殊的,就是一个调用关系
nimokaka(config)#access-list rate-limit {ACL}
{precedence|mac-address}
ACL是限速ACL的号码,可以匹配优先级,也可以匹配源mac地址
27.1.4 CAR配置实例
基于接口的流量控制
interface Hssi0/0/0
rate-limit input 15000000 2812500 2812500 conform-action transmit exceed-action drop
ip address 200.200.14.250 255.255.255.252
rate-limit output 15000000 2812500 2812500 conform-action transmit exceed-action drop
hssi高速串口是45M的带宽,但是ISP的接入承诺信息速率为15M,
并且限定普通突发大小为2812500,最大突发大小也是2812500
基于DSCP的流量控制
interface Serial1
ip address 10.0.0.1 255.255.255.252
rate-limit output dscp 1 20000000 24000 32000 conform-action transmit exceed-action
drop
基于ACL的流量控制
1.
P a g e | 700
所有的www流量都得发出,而且web中遵从第一个速率策略的流量设置ip优先级为5,不遵从的就把
CCIE R/S & Service Provider Exam Certification Guide
ip precedence设为0(尽力而为的传输)。
2.
3.
ftp流量遵从第二个速率策略的ip precedence设置为5,如果ftp超出速率策略就扔包。
其他剩余流量限制到 8m,普通突发大小为 16000byte,最大突发大小为 24000byte;遵从策略的流
量设ip precedence为5,超出的流量扔包。
interface hssi0/0/0
rate-limit out put accees-group 101 200000000 24000 32000 conform-action set
prec-transmit 5 exceed-action set-prec-transmit 0
rate-limit output access-group 102 10000000 24000 32000 conform-action set-prec-tranmit
5
exceed-action drop
rate-limit output 8000000 16000 24000 conform-action set-prec-transmit 5
exceed-action drop
ip address 10.1.0.9 255.255.255.0
!
access-li 101
per tcp any any eq www
access-li 102
per tcp any any eq ftp
基于IP地址前缀的流量控制
interface Serial1
ip address 10.0.0.1 255.255.255.252
rate-limit output access-group 1 20000000 24000 32000 conform-action transmit
exceed-action drop
!
access-list 1 permit 192.168.0.0 0.0.0.255
基于IP优先级匹配的流量控制
interface Serial1
ip address 10.0.0.1 255.255.255.252
rate-limit output access-group rate-limit 1 20000000 24000 32000 conform-action transmit
exceed-action drop
!
access-list rate-limit 1 mask 07
对于Mask的解释如下, 优先级为7是10000000 6是0100000 …
Mask是一个16进制数, 07代表00000111,表示匹配优先级0,1,2
匹配源MAC地址
如图所示,需要将ISP X的流量限制到30Mbps,ISPY的流量限制为40Mbps
P a g e | 701
CCIE R/S & Service Provider Exam Certification Guide
interface Fddi1/0/0
ip address 162.111.10.1 255.255.255.192
rate-limit input access-group rate-limit 110 30000000 15000 15000 conform-action transmit
exceed-action drop
rate-limit input access-group rate-limit 120 40000000 40000 40000 conform-action
continue exceed-action drop
rate-limit input access-group 100 4000000 40000 40000
conform-action drop exceed-action drop
access-list rate-limit 110 0000.0c10.7819
access-list rate-limit 120 0000.0c89.6900
access-list 100 permit ip any any
防止DOS攻击
interface Hssi1/0
rate-limit input access-group 100 256000 8000 8000 conform-action
transmit exceed-action drop
access-list 100 permit icmp any any
Show command
1、查看限速ACL:
nimokaka#show access-lists rate-limit [ACL]
2、查看接口的限速信息:
nimokaka#show interfaces [interface] rate-limit
#show interface hssi1/0 rate
Hssi1/0/0
Input
matches: all traffic
params: 30000000 bps, 15000 limit, 15000 extended limit
conformed 0 packets, 0 bytes; action: continue
exceeded 0 packets, 0 bytes; action: drop
last packet: 338617304ms ago, current burst: 0 bytes
last cleared 00:11:11 ago, conformed 0 bps, exceeded 0 bps
matches: access-group 101
params: 15000000 bps, 10000 limit, 10000 extended limit
conformed 0 packets, 0 bytes; action: set-prec-transmit 4
exceeded 0 packets, 0 bytes; action: set-prec-transmit 0
last packet: 338617201ms ago, current burst: 0 bytes
last cleared 00:11:11 ago, conformed 0 bps, exceeded 0 bps
matches: all traffic
params: 15000000 bps, 10000 limit, 10000 extended limit
conformed 0 packets, 0 bytes; action: set-prec-transmit 4
exceeded 0 packets, 0 bytes; action: set-prec-transmit 4
last packet: 338617304ms ago, current burst: 0 bytes
last cleared 00:03:30 ago, conformed 0 bps, exceeded 0 bps
P a g e | 702
CCIE R/S & Service Provider Exam Certification Guide
27.1.5 基于Policy-Map配置
如上操作是针对接口设置的CAR,CAR同时也可以作用在policy-map上
nimokaka(config-pmap-c)#police {CIR Bc Be} conform-action {action}exceed-action
{action}[violate-action {action}]
把rate-limit改成了police,后面增加了一个violate-action,违规操作,也就是超过了
Be流量之后的操作 Action的操作命令
continue
继续执行下一条CAR 语句
drop
丢弃该数据包
set-prec-continue {precedence}
设置IP 优先级并继续执行下一条CAR 语句
set-prec-trasnmit {precedence}
设置IP 优先级并转发该数据包
set-dscp-continue {dscp}
设置IP DSCP 值并继续执行下一条CAR 语句
set-dscp-trasnmit {dscp}
设置IP DSCP 值并转发该数据包
set-qos-continue {group ID}
设置QoS 组ID 并继续执行下一条CAR 语句
set-qos-transmit {group ID}
设置QoS 组ID 并发送该数据包
transmit
转发该数据包
show command
1.查看policy map:
nimokaka#show policy-map [policy-name]
2.查看接口的policy map信息:
nimokaka#show policy-map interface
27.1.6 基于Policy-Map配置实例
限制来自192.168.0.0/24的进站数据包的平均速率为8000bps,突发流量(Bc)为2000 字节,额外突
发流量(Be)为4000 字节。对突发流量和额外突发流量分别采取转发和设置QoS 组ID为25的策略;
对违反突发流量和额外突发流量的数据流量采取丢弃的策略:
!
class-map match-all nimokaka match access-group 1
!
policy-map kiss class nimokaka
police 8000 2000 4000 conform-action transmit exceed-action set-qos-transmit 25
violate-action drop
!
interface Serial1
ip address 172.16.0.1 255.255.255.252
service-policy input kiss
!
access-list 1 permit 192.168.0.0 0.0.0.255
P a g e | 703
CCIE R/S & Service Provider Exam Certification Guide
Chapter 28 拥塞控制
28.1 拥塞控制
由于内存资源的有限按照传统的处理方法,
当队列的长度达到规定的最大长度时,
所有到来的报文都被丢弃,
对于TCP报文如果大量的报文被丢弃将造成TCP超时,从而引发TCP的慢启动和拥塞避免机制。
使TCP减少报文的
发送。
当队列同时丢弃多个TCP连接的报文时将造 成多个TCP连接同时进入慢启动和拥塞避免。称之为TCP全局
同步。这样多个TCP连接发向队列的报文将同时减少,
使得发向队列的报文的量不及线路发送的速度,
减少了线
路带宽的利用,
并且发向队列的报文的流量总是忽大忽小,
使线路的上的流量总在极少和饱满之间波动如下图
所示
28.1.1 RED随机预检测
为了避免这种情况的发生引入了 RED 技术(Random Early Detection)随机预检测,如图所示,
采用 RED 时用户可以设定队列的阈值 threshold,当队列的长度小于低阈值时,不丢弃报文;当队
列的长度在低阈值和高阈值之间时,WRED 开始随机丢弃报文,队列的长度越长,丢弃的概率越高;当
队列的长度大于高阈值时,丢弃所有的报文。
队列及丢弃计算方法如下:
平均队列长度=(以前的平均队列长度*(1-1/2^n)+(当前队列长度/2^n)
P a g e | 704
CCIE R/S & Service Provider Exam Certification Guide
其中 n 是指数权重因子,可以给用户自行配置。默认值是 9,n 越大旧平均队列相对于当前队列长
度的重要性就会越高。这样就会导致,平均队列长度变化缓慢,不太可能快速变化,避免了队列长度的
猛烈波动,同时,能使用临时的突发,平缓峰值对当前队列的影响。
但如果 n 过大,RED 将根本无法对拥塞做出反应。如果 n 过小,则 RED 对临时的突发流量将会作出
过于灵敏的反应。
由于 RED 随机地丢弃报文,将避免使多个 TCP 连接同时降低发送速度,从而避免了 TCP 的全局同
步现象,当某个 TCP 连接的报文被丢弃开始减速发送的时候,其他的 TCP 连接仍然有较高的发送速度,
这样无论什么时候总有 TCP 连接在进行较快的发送,提高了线路带宽的利用率。
如上图所示,图线平稳了很多,但是 RED 只是随机进行丢弃,所以灵活性要差一点,分组丢弃概
率为:
分组丢弃概率=((平均队列长度 – 最小阀值)/最大阀值)*标记概率分母
28.1.2 WRED随机预检测
现在所采用的基本上都是 WRED(Weighted Random Early Detection)。原理都是一样的。只不过
WRED 与 RED 的区别在于前者引入 IP 优先权 DSCP 值来区别丢弃策略,可以为不同 IP 优先级 DSCP 设定
不同的队列长度、队列阈值、丢弃概率,从而对不同优先级的报文提供不同的丢弃特性。下图介绍了
WRED 和队列之间的关系
在设置时如果直接采用队列的长度与用户设定的阈值比较并进行丢弃(这是设置队列门限的绝对
长度),将会对突发性的数据流造成不公正的待遇,不利于数据流的传输,所以在与设定的阈值比较并
P a g e | 705
CCIE R/S & Service Provider Exam Certification Guide
进行丢弃时采用队列的平均长度(这是设置队列门限与平均长度比较的相对值)队列的平均长度既反映
了队列的变化趋势又对队列长度的突发变化不敏感避免了对突发性的数据流造成不公正的待遇。另外还
要注意 WRED 不能配置在使用了基于路由交换处理器(RSP)的 CQ、PQ 和 WFQ 队列机制的接口上。
28.1.3 WRED配置
WRED 可以在接口上进行配置,也可以在 policy 上进行配置,可以针对于 precedence 进行 RED,
也可以针对于 DSCP 值进行 RED,当然,两者之间只能选择一个。
1.基于 DSCP 的配置
1.使用IP DSCP 来配置WRED:
nimokaka(config-if)#random-detect dscp-based
2.设置丢弃数据包的最小值,最大值和丢弃数据包的轮循间隔:
nimokaka(config-if)#random-detect dscp {dscp} {min max mark}
2.基于 IP 优先级的配置
1、启用WRED:
nimokaka(config-if)#random-detect
2、设置WRED 丢弃数据包的最小值,最大值和丢弃数据包的轮循间隔:
nimokaka(config-if)#random-detect precedence {precedence|rsvp} {min
max mark}
28.1.4 检查WRED配置
1、显示接口队列信息:
nimokaka#show queue [interface]
2、显示WRED信息:
nimokaka#show queueing random-detect
Hssi3/0/0
Queueing strategy: random early detection (WRED)
Exp-weight-constant: 9 (1/512)
mean queue depth: 40
drops: class random
P a g e | 706
tail
min-th
max-th
mark-prob
0
13783
174972
20
40
1/10
1
14790
109428
22
40
1/10
2
14522
119275
24
40
1/10
3
14166
128738
26
40
1/10
4
13384
138281
28
40
1/10
5
12285
147148
31
40
1/10
6
10893
156288
33
40
1/10
7
9573
166044
35
40
1/10
Rsvp
0
0
37
40
1/10
CCIE R/S & Service Provider Exam Certification Guide
28.1.5 WRED配置实例
1.基于 DSCP 的配置
Switch(config)#class-map kaka
Switch(config-cmap)#match access-group 101
Switch(config)#policy-map kaka1
Switch(config-pmap)#class kaka
Switch(config-pmap-c)#bandwidth 48
Switch(config-pmap-c)#random-detect dscp-based
Switch(config-pmap-c)#random-detect dscp 8 24 40
Switch(config-pmap-c)#interface S1/0
Switch(config-if)#service-policy output kaka1
2.基于 IP 优先级的配置
interface Serial 0/1/0
ip address 200.200.14.250 255.255.255.252
random-detect
random-detect precedence
0 10 25 10
random-detect precedence
1 20 35 10
random-detect precedence
2 15 25 10
random-detect precedence
3 25 35 10
random-detect precedence
41 2
1
random-detect precedence
5 35 40 10
random-detect precedence
6 30 40 10
random-detect precedence
7 30 40 10
28.1.6 基于流的WRED
只有自适应 TCP 流会对拥塞信号做出反应并降低速率;而非自适应 UDP 流并不会对拥塞信号做出
反应,也不降低地中,由于这个原因,非自适应流在拥塞时发送分组的速率将比自适应流高得多,因此
贪婪的非自适应流常常比自适应流量使用更多的队列资源。流 WRED 对 WRED 做了改进,它对占用的队
列资源比公平份额多的流进行惩罚。
为了给队列中活动的通信流以公平,WRED 根则流和 IP 优先级将所有到达的分组归类到队列中,。
它还维护所有活动队列(即队列中有分组的的流)的状态估息,这种状态信息用于决定每个流的公平队列
资源份额(队列长度/活动流的数目),而占用的队列资源多于自已的公平份额的流得到的惩罚将比其他
流严厉。
为适应流的通信突发,在流被惩罚之前,可以使用下面的公式的公平份额:
每个活动流的公平队列资源份额=队列长度/活动流的数目
每个活动流增加后的公平队列资源份额=(队列长度/活动流的数目)*放大因子
队列中超过放大后公平队列资源份额的流会被惩罚,方法是增大该队列中所有新到达分组的非零
分组丢弃几率。
作为一个例子,假设分组到达运行流 WRED 的队列,流 WRED 同时根据分组中的 IP 优先级以及流
状态信息来决定分组的丢弃几率。分组的 IP 优先级决定给它配置的(或默认的)最小和最大 WRED 阈值。
如果平均队列长度小于最小阈值,则该分组被丢弃的几率为零(换句话说,该分组不会被丢弃)。如果平
均队列长度介于分组的最小和最大阈值(决定于分组的优先级)之间,就需要考虑流的状态信息。如果分
组所属的流超过了放大后的公平队列资源份额,则通过如下公式降低 WRED 最大阈值来加大分组的丢弃
几率:
新的最大阈值:最小阈值+((最大阈值-最小阈值)/2)
P a g e | 707
CCIE R/S & Service Provider Exam Certification Guide
然后根据最小阈值和新的最大阈值求出非零几率。因为丢弃几率曲线现在更陡峭,如图所示,所
以分组的丢弃几率更高。如果通信低于公平队列资源份额,则按常规 WRED 计算分组的非零丢弃几率。
如果平均队列长度超过最大阈值,则使用类似于 WRED 操作中的方式不断地丢弃分组。
只有当属于这样的流,即其在队列中的分组超过放大后的公平队列资源份额时,流 WRED 才会加
大流分组的丢弃几率;否则流 WRED 的操作与 WRED 类似。
注意:当平均队列长度介于最小和最大阈值之间时,对于只有少数几个分组在队列中的流,前面
介绍的流 WRED 仍然应用非零丢弃几率。可以通过增加最小阈值使之接近或等于最大阈值的方式
来实现流 WRED,这样它将不对只有少数几个(指定的值)分组位于队列中的流采用非零丢弃几率。
当队列长度等于 WRED 最大阈值时,对分组采用尾丢弃
28.1.7 流WRED配置
在配置基于流的WRED 之前,必须先启用WRED。步骤如下:
1、启用基于流的WRED:
nimokaka(config-if)#random-detect flow
2、设置平均深度因素(average depth factor)的值,值必须为2的幂,默认值为4.可选:
nimokaka(config-if)#random-detect flow average-depth-factor {scaling-factor}
这个参数是改变一个乘法的比例因数.从而改变对列的大小,其实就是改变队列的长度,
3、设置基于流的WRED 的数据流数目,默认值为256.可选:
nimokaka(config-if)#random-detect flow count {number}
28.1.8 检验流WRED配置
1、显示接口队列信息:
nimokaka#show queue [interface]
2、显示WRED 信息:
nimokaka#show queueing random-detect
P a g e | 708
CCIE R/S & Service Provider Exam Certification Guide
Chapter 29 流量整形
29.1 流量整形简介
流量整形(traffic shaping)典型作用是限制流出某一网络的某一连接的流量与突发,使这类报文以比较
均匀的速度向外发送流量整形通常使用缓冲区和令牌桶来完成,当报文的发送速度过快时,首先在缓冲区进
行缓存,在令牌桶的控制下再均匀地发送这些被缓冲的报文。
29.1.1 漏桶模型
漏桶算法(Leaky Bucket)是网络世界中流量整形(Traffic Shaping)或速率限制(Rate Limiting)
时经常使用的一种算法,它的主要目的是控制数据注入到网络的速率,平滑网络上的突发流量。漏桶算法
提供了一种机制,通过它,突发流量可以被整形以便为网络提供一个稳定的流量。
漏桶算法的基本内容如下:
1.
漏桶算法强制一个常量的输出速率而不管输入数据流的突发性。当输入空闲时,该算法不执
行任何动作;
2.
主机在每一个时间片向网络注入一个数据包,因此产生了一致的数据流,平滑了突发的流量;
3.
当数据包具有相同尺寸的时候(例如ATM信元),每个时间片传输一个数据包的工作机制没有
任何问题。但对于可变包长,这种工作机制可能存在一点问题,此时,最好每个时间片传输
固定数目的字节。例如:如果每个时间片传输1024字节,那么一个时间片允许传输一个1024
字节的包,两个512字节的包,或者四个256字节的包;
在概念上,漏桶算法可以作如下理解:
到达的数据包(网络层的PDU)被放置在底部具有漏孔的桶中(数据包缓存);
漏桶最多可以排队b个字节,漏桶的这个尺寸受限于有效的系统内存。如果数据包到达的时候漏桶已
经满了,那么数据包应被丢弃;
数据包从漏桶中漏出,以常量速率(r字节/秒)注入网络,因此平滑了突发流量。
在流量整形中还存在另外一个流行的算法:令牌桶算法(Token Bucket)。有时人们将漏桶算法与令
P a g e | 709
CCIE R/S & Service Provider Exam Certification Guide
牌桶算法错误地混淆在一起。而实际上,这两种算法具有截然不同的特性并且为截然不同的目的而使用。
它们之间最主要的差别在于:漏桶算法能够强行限制数据的传输速率,而令牌桶算法能够在限制数据的平
均传输速率的同时还允许某种程度的突发传输。
在某些情况下,漏桶算法不能够有效地使用网络资源。因为漏桶的漏出速率是固定的参数,所以,即
使网络中不存在资源冲突(没有发生拥塞),漏桶算法也不能使某一个单独的流突发到端口速率。因此,
漏桶算法对于存在突发特性的流量来说缺乏效率。而令牌桶算法则能够满足这些具有突发特性的流量。通
常,漏桶算法与令牌桶算法可以结合起来为网络流量提供更大的控制。
29.1.2 GTS通用流量整形
流量整形采用的技术叫做Generic Traffic Shaping(通用流量整形,简称GTS),可以对不规则或不符
合预定流量特性的流量进行整形,以利于网络上下游之间的带宽匹配
GTS与CAR一样均采用了令牌桶技术来控制流量,GTS与CAR的主要区别在于:利用CAR进行报文流量控
制时对不符合流量特性的报文进行丢弃,而GTS对于不符合流量特性的报文则 是进行缓冲减少了报文的丢
弃,同时满足报文的流量特性。 GTS的基本处理过程如下图所示,其中用于缓存报文的队列称为GTS队列
GTS可以对接口上指定的报文流或所有报文进行整形当报文到来的时候,首先对报文进 行分类如果
报文不需要进行GTS处理,就继续发送不经过令牌桶的处理;如果报文需要进行 GTS处理,则与令牌桶中
的令牌进行比较,令牌桶按用户设定的速度向桶中放置令牌,如果令牌桶中有足够的令牌可以用来发送报
文,则报文直接被继续发送下去,同时令牌桶中的令牌量按报文的长度做相应的减少,当令牌桶中的令牌
少到报文不能再发送时,报文将被缓存 入GTS队列中。当GTS队列中有报文的时候。GTS按一定的周期从队
列中取出报文进行发送。 每次发送都会与令牌桶中的令牌数作比较。直到令牌桶中的令牌数减少到队列
中的报文不能 再发送或是队列中的报文全部发送完毕为止.
例如路由器A和路由器B相连为了减少报文的丢失,可以在路由器A的出口对报文进行GTS 处理,对于
超出GTS流量特性的报文将在路由器A中缓冲,当可以继续发送下一批报文时,GTS 再从缓冲队列中取出报
文进行发送,这样发往路由器B的报文将都符合路由器B的流量规定, 从而减少报文在路由器B上的丢弃,
相反如果不在路由器A的出口做GTS处理,则所有超出路由器2的CAR流量特性的报文将被路由器B丢弃。
由于内存资源的有限按照传统的处理方法,
当队列的长度达到规定的最大长度时,
所有到来的报文都
被丢弃,对于TCP报文如果大量的报文被丢弃将造成TCP超时,从而引发TCP的慢启动和拥塞避免机制。
使TCP
减少报文的
29.2 流量整形配置
29.2.1 基本配置
配置流量整形GTS有两种方式,
一种是基本的GTS
nimokaka(config-if)#traffic-shape rate {CIR [Bc [Be]]}
P a g e | 710
CCIE R/S & Service Provider Exam Certification Guide
一种是基于ACL 的GTS,这是可选配置:
nimokaka(config-if)#traffic-shape group {ACL} {CIR [Bc [Be]]}
29.2.2 基于策略的 GTS
GTS也可以应用在policy map上,基于分类的流量 整形可以启用在支持GTS 的任何接口上。基于分
类的流量整形可以打破普通GTS仅仅以ACL 分类的限制。它还可以定义平均值和峰值的流量整形。并且可
以在配置GTS 的时候采用 CBWFQ。
配置基于分类的流量整形的步骤如下:
1、定义平均值和峰值的CIR,Bc 和Be:
nimokaka(config-pmap-c)#shape {average|peak} {CIR [Bc] [Be]}
average指的是平均值,peak说得是峰值
2.定义缓冲区上限,默认值为1000.可选:
nimokaka(config-pmap-c)#shape max-buffers {number-of-buffers}
3、在策略上应用CBWFQ。可选:
nimokaka(config-if)#service-policy output {policy-name}
29.2.3 检验 GTS 配置
1.查看GTS 的配置信息:
nimokaka#show
traffic-shape
#show traffic shape serial0
Access Target
I/F List
Rate
Limit
Se0
256000 1984
2.查看GTS 的统计信息:
nimokaka#show
[interface]
Byte
bits/int
7936
traffic-shape
Sustain
bits/int
7936
E xcess
(ms)
31
Interval
(bytes)
992
Increment Adapt
Active
-
statistics [interface]
3、查看policy map:
nimokaka#show policy-map [policy-name]
4、查看接口的policy map 信息:
nimokaka#show policy-map interface [interface]
29.2.4 GTS 配置实例
简单的GTS配置实例
access-list 101 permit udp any any interface Ethernet0
traffic-shape group 101 1000000 125000 125000
//对于udp的数据,限制其流量稳定在5M
!
interface Ethernet1
traffic-shape rate 5000000 625000 625000
//整体接口流量保持在5M
简单的分类GTS
nimokaka(config)# policy-map shape nimokaka(config-pmap)# class c1
nimokaka(config-pmap-c)# shape average 38400 15440
nimokaka(config)# interface Serial 3/3
P a g e | 711
CCIE R/S & Service Provider Exam Certification Guide
nimokaka(config-if)# service out shape
流量整形平均速率稳定在38400字节,突发流量15440字节
GTS和CBWFQ关联使用
上面的案例中,cust1和cust2是两个队列,当出现拥塞时,使用CBWFQ使其带宽分别限制带宽为256k
和384k,但是如果链路的带宽足够用,可以通过GTS把cust1的平均带宽整形为384k,同时也把cust2的最
大带宽限定在384k,来保证他们两个队列无休止的占用流量。
nimokaka(config)# policy-map shape-cbwfq
nimokaka(config-pmap)# class cust1
nimokaka(config-pmap-c)# shape average 384000
nimokaka(config-pmap-c)# bandwidth 256
nimokaka(config-pmap)# class cust2
nimokaka(config-pmap-c)# shape peak 512000
nimokaka(config-pmap-c)# bandwidth 384
nimokaka(config-pmap-c)# configure terminal
nimokaka(config)# interface Serial 3/3
nimokaka(config-if)# service out shape-cbwfq
GTS和policy map的复杂结合
P a g e | 712
CCIE R/S & Service Provider Exam Certification Guide
cust1-classes Configuration
nimokaka(config)# policy-map cust1-classes
nimokaka(config-pmap)# class gold
nimokaka(config-pmap-c)# bandwidth percent 50
nimokaka(config-pmap)# class silver
nimokaka(config-pmap-c)# bandwidth percent 20
nimokaka(config-pmap)# class bronze
nimokaka(config-pmap-c)# bandwidth percent 15
cust2-classes Configuration
nimokaka(config)# policy-map cust2-classes
nimokaka(config-pmap)# class gold
nimokaka(config-pmap-c)# bandwidth percent 30
nimokaka(config-pmap)# class silver
nimokaka(config-pmap-c)# bandwidth percent 15
nimokaka(config-pmap)# class bronze
nimokaka(config-pmap-c)# bandwidth percent 10
Customer Policy and QoS Features Configuration
nimokaka(config)# policy-map cust-policy
nimokaka(config-pmap)# class cust1
nimokaka(config-pmap-c)# shape average 384000
nimokaka(config-pmap-c)# service-policy cust1-classes
nimokaka(config-pmap)# class cust2
nimokaka(config-pmap-c)# shape peak 512000
nimokaka(config-pmap-c)# service-policy cust2-classes
nimokaka(config-pmap-c)# interface Serial 3/2
nimokaka(config-if)# service out cust-policy
29.3 帧中继流量整形
FR中的FECN和BECN用于暗示网络上发生了拥塞,当收到带有BECN标记的数据包时,FR 流量整形(FRTS)
将动态的对流量进行整形。注意:FRTS只能使用在FR的PVC和SVC上。其中有一种自适应的FRTS,在每个Tc
间隔内,进程将检查是否从帧中继网络中收到BECN,如果在一个Tc间隔收到BECN,那么传送速率降低25%直
到降到CIR的一半为止。当且仅当16个Tc内没收到BECN,通讯速率恢复到CIR。
P a g e | 713
CCIE R/S & Service Provider Exam Certification Guide
29.3.1 FRTS配置
1,建立一个MAP-CLASS,
2. 定义流量整形的方法,
3. 在接口上封装FRAME-RELAY,
4. 在端口上应用MAP-CLASS
5,开启流量整形,一般用于源端(发送端)。
4种情况下使用FRTS:
1)中心高速,分支低速;
2)单条物理线路承载到不同目的地的众多VC时;
3)若FR发生了拥塞,想让路由器将数据流拦住(Throttle);
4)需要在同一条FR的VC上传输多种协议(IP、SNA、IPX)的数据流,并希望每种类型的数据流都
能占用一定的BW。
配置例子:
1) 全局模式下:
map-class frame-relay kaka
定义一个帧中继的CLASS 名字为kaka,区分大小写。
2) 映射类模式下:
设置平均速度和最高速率分别32K和64K。(要让路由器根据BECN量动态调整其发送速率,
frame-relay traffic-rate 32000 64000
让流量整形使用BECN机制,使用命令:
frame-relay adaptive-shaping becn。
要使用排队机制(不建议使用)可使用CQ或PQ,命令:
Frame-relay custom-queue-list number
frame-relay priority-group number。
3) 接口模式下:frame-relay class kaka
应用一个帧中继的CLASS kaka,同接口上的所有VC关联起来。
4) 接口模式下:encap frame-relay 封装帧中继
5) 接口模式下:frame-relay traffic-shaping 开启帧中继流量整形。
29.3.2 FRTS配置检验
用 show frame-relay pvc 来检验配置。
P a g e | 714
CCIE R/S & Service Provider Exam Certification Guide
29.3.3 FRTS配置实例
HUB - access rate = 192 Kbps, guaranteed rate = 32Kbps

REMOTE - access rate = 64Kbps, guaranteed rate = 32Kbps
HUB 配置
interface Serial0/0
no ip address encapsulation frame-relay no fair-queue
frame-relay traffic-shaping
!--- Apply traffic shaping to main interface
interface Serial0/0.1 point-to-point ip address 10.1.1.1 255.255.255.0 frame-relay
interface-dlci 16
frame-relay class cisco
!--- Apply map class to the DLCI / subinterface
!
!--- Configure map class parameters
map-class frame-relay cisco frame-relay cir 64000
frame-relay mincir 32000
frame-relay adaptive-shaping becn frame-relay bc 8000
frame-relay be 16000
!
Remote配置
interface Serial0/0
no ip address encapsulation frame-relay no fair-queue
frame-relay traffic-shaping
!
interface Serial0/0.1 point-to-point ip address 10.1.1.2 255.255.255.0 frame-relay
P a g e | 715
CCIE R/S & Service Provider Exam Certification Guide
interface-dlci 16
frame-relay class cisco
!
map-class frame-relay cisco frame-relay cir 64000
frame-relay mincir 32000
frame-relay adaptive-shaping becn frame-relay bc 8000
HUB - physical rate = 192 Kbps, guaranteed rate = 32 Kbps
REMOTE - physical rate = 64 Kbps, guaranteed rate = 32 Kbps
Hub 配置
!
class-map match-all YYY
match access-group 101
!
!
policy-map ZZZ
class YYY
bandwidth percent 50
REMOTE
interface Serial0/0
no ip address encapsulation frame-relay no fair-queue
frame-relay traffic-shaping
interface Serial0/0.1 point-to-point ip address 10.1.1.1 255.255.255.0 frame-relay
interface-dlci 16
frame-relay class XXX
!
map-class frame-relay XXX frame-relay cir 64000 frame-relay mincir 32000
frame-relay adaptive-shaping becn frame-relay bc 8000
service-policy output ZZZ
REMOTE 配置
access-list 101 permit ip host 10.0.0.1 host 11.0.0.1
interface Serial0/0
no ip address encapsulation frame-relay no fair-queue
frame-relay traffic-shaping
!
interface Serial0/0.1 point-to-point ip address 10.1.1.2 255.255.255.0 frame-relay
interface-dlci 16
frame-relay class XXX
!
map-class frame-relay XXX frame-relay cir 64000 frame-relay mincir 32000
frame-relay adaptive-shaping becn frame-relay bc 8000
P a g e | 716
CCIE R/S & Service Provider Exam Certification Guide
Chapter 30 NBAR应用程序过滤
30.1 NBAR简介
NBAR (Network-Based Application Recognition) 的意思是网络应用识别。 NBAR 是一种动态能在四到七
层寻找协议的技术,它不但能做到普通 ACL 能做到那样控制静态的、简单的网络应用协议 TCP/UDP 的端口
号。例如我们熟知的 WEB 应用使用的 TCP 80 ,也能做到控制一般 ACLs 不能做到动态的端口的那些协议,
例如 VoIP 使用的 H.323, SIP 等。
在使用 NBAR 的时候要先启用 CEF 特性。而且可以使用数据包描述语言模块(PDLM)从路由器的闪存里
加载,用于在不使用新的 Cisco IOS 软件,或重启路由器的情况下对新的协议或应用程序进行识别。
30.1.1 NBAR限制
1、不支持多于24个的并发URL,HOST或MINE的匹配类型
2、不支持超过400字节的URL 匹配
3、不支持非IP流量
4、不支持组播或其他非CEF的交换模式
5、不支持被分片的数据包
6、不支持源自或去往运行NBAR 的路由器的IP流
NBAR不能在以下几种逻辑接口上使用:
1、快速以太网信道
2、使用了隧道或加密技术的接口
3、SVI
4、拨号接口
5、多链路PPP(MLP)
30.1.2 NBAR配置
1、启用CEF 特性:
nimokaka(config)#ip cef
2、把流量分类,定义class map:
nimokaka(config)#class-map [match-all|match-any] {map-name}
3、定义NBAR 要匹配的协议:
nimokaka(config-cmap)#match protocol {protocol}
4、设置policy map:
nimokaka(config)#policy-map {policy-name}
5、调用class map:
nimokaka(config-pmap)#class {class-map}
6、设置策略:
nimokaka(config-pmap-c)#
7、把策略应用在接口上:
nimokaka(config-if)#service-policy {input|output} {policy-map}
P a g e | 717
CCIE R/S & Service Provider Exam Certification Guide
30.1.3 检验NBAR配置
1、查看流量分类信息: nimokaka#show class-map [map-name]
2、查看policy map:
nimokaka#show policy-map [policy-name]
3、查看接口的policy map 信息: nimokaka#show policy-map interface [interface]
4、显示NBAR所使用的PDLM:
nimokaka#show ip nbar pdlm
5、显示NBAR使用的协议到端口号的映射信息:nimokaka#show ip nbar port-map
30.2 NBAR控制BT和eDonkey
1、
加载bittorrent.pdlm 到路由器闪存里
nimokaka(config)#ip nbar pdlm flash://bittorrent.pdlm
2、定义class map,识别BitTorrent程序流量,并将进站的BitTorrent程序流量丢弃
ip cef
!
class-map kaka
match protocol bittorrent
!
policy-map drop-bittorrent
class kaka
drop
!
interface Serial0
ip address 192.168.0.1 255.255.255.0
service-policy input drop-bittorrent
30.3 NBAR病毒防治
使用NBAR来防止红色代码(Code-Red)和尼姆达(Nimda)蠕虫病毒,配置如下
ip cef
!
class-map match-all DENY-ATTACK
match protocol http url "*.ida*"
match protocol http url "*cmd.exe*"
match protocol http url "*root.exe*"
match protocol http url "*readme.eml*"
!
policy-map nimokaka class DENY-ATTACK drop
interface Serial0
ip address 10.0.0.1 255.255.255.252
service-policy input nimokaka
P a g e | 718
CCIE R/S & Service Provider Exam Certification Guide
Chapter 31 RSVP
31.1 RSVP简介
RSVP是第一个在大型网络中动态建立端到端QoS服务模型的工业标准的信令协议。RSVP 运行在IP之上,
它可以让应用程序在网络上预留带宽。
主机和路由器使用RSVP沿着数据流传 输的线路进行传输相应的QoS请求
信息,比如带宽和延迟。RSVP本身不实行路由决策,相反带宽预留的请求由下层的路由协议执行,因此RSVP 能
够适应网络拓扑的变化。RSVP的操作对于不支持RSVP的路由器是透明的。
RSVP和现有的一些队列机制协同工作,
而不是替代现有的队列机制,并且RSVP 支持组播,RSVP 目前通常为组播应用程序,比如视频会议,进行资源
的预留。
主机使用RSVP请求特定的QoS服务来为它的应用程序预留带宽。只要带宽足够,应用程 序能够以超过请
求预留带宽的速率进行数据的传输;
如果带宽不足,
那么这些超过请求预留 带宽的部分将被丢弃。
网络资源预
留的要求对于数据流量和实时传输流量是不同的,
前者对 资源预留的要求很小;后者反之。
资源预留和队列机制的结合使用两个关键点:
1、 端到端的RSVP数据流:
数据流从单一或多个源地址向单一或多个目标地址进行单向传输。
2、 路由器到路由器的WFQ会话:穿越特定接口的单一传输层会话或网络层数据流,WFQ会话通过源
地址和目标地址,端口号或协议号等属性进行区分。
31.2 RSVP配置
配置RSVP步骤如下:
1、启用RSVP,默认带宽预留上限为接口带宽的75%。可以指定RSVP数据流带宽总量,也可以
指定每个RSVP数据流的带宽:
nimokaka(config-if)#ip rsvp bandwidth [interface-kbps [single-flow-kbps]]
2、指定只接收符合特定条件的邻居路由器的RSVP请求。可选:
nimokaka(config)#ip rsvp neighbor {ACL}
3、对于符合RSVP所定义的带宽和超出RSVP所定义的带宽的数据包分配IP优先级。可选:
nimokaka(config-if)#ip rsvp precedence {[conform precedence] [exceed precedence]}
31.3 检查RSVP配置
1、允许远程管理工作站监视RSVP相关的信息:
nimokaka(config)#snmp-server enable traps rsvp
2、显示接口的RSVP信息:
nimokaka#show ip rsvp interface [interface]
3、显示接口的RSVP过滤和带宽信息:
nimokaka#show ip rsvp installed [interface]
4、显示当前的RSVP邻居信息:
nimokaka#show ip rsvp neighbor [interface]
P a g e | 719
CCIE R/S & Service Provider Exam Certification Guide
5、显示RSVP发送方,接收方以及请求信息:
nimokaka#show ip rsvp {sender|reservation|request} [interface]
31.4 RSVP配置实例
如图所示:从主机 A 到主机 B 使用 UDP 端口 1040 的应用程序通信。
Router 1 的配置
interface Ethernet0
ip address 210.210.210.1 255.255.255.224
fair-queue 64 256 234
ip rsvp bandwidth 7500 7500
!
interface Serial0
ip address 210.210.210.101 255.255.255.252
fair-queue 64 256 36
ip rsvp bandwidth 1158 1158
ip rsvp sender 210.210.210.60 210.210.210.30 1 0 0
210.210.210.30 Et0 1 1
ip rsvp sender 210.210.210.60 210.210.210.30 UDP 1040 0
210.210.210.30 Et0 32 32
ip rsvp reservation 210.210.210.60 210.210.210.30 1 0 0
210.210.210.30 Et0 ff 1 1
Router 2 的配置
interface Serial0
ip address 210.210.210.102 255.255.255.252
fair-queue 64 256 36
ip rsvp bandwidth 1158 1158
!
interface Serial1
P a g e | 720
CCIE R/S & Service Provider Exam Certification Guide
ip address 210.210.210.105 255.255.255.252
fair-queue 64 256 36
ip rsvp bandwidth 1158 1158
Router 3 的配置
interface Ethernet0
ip address 210.210.210.33 255.255.255.224
fair-queue 64 256 234
ip rsvp bandwidth 7500 7500
!
interface Serial1
ip address 210.210.210.106 255.255.255.252
fair-queue 64 256 36
ip rsvp bandwidth 1158 1158
ip rsvp sender 210.210.210.30 210.210.210.60 1
00
210.210.210.60 Et0 1 1
ip rsvp reservation 210.210.210.60 210.210.210.30 1
00
210.210.210.60 Et0 FF LOAD 1 1
ip rsvp reservation 210.210.210.60 210.210.210.30 UDP 1040 0
210.210.210.60 Et0 FF LOAD 32 32
P a g e | 721
CCIE R/S & Service Provider Exam Certification Guide
P a g e | 722
CCIE R/S & Service Provider Exam Certification Guide
第五部分
第32章
第33章
IPv6 简介
IPv6 配置
第34章
第35章
第36章
第37章
第38章
第39章
RIPng
OSPFv3
EIGRPv6
ISISv6
BGP4+
IPv6 隧道及 NAT-PT
P a g e | 723
CCIE R/S & Service Provider Exam Certification Guide
Chapter 32 IPv6简介
32.1 IPv6简介
IPv6 早期被称为 IPng (next generation)目前是 IP 协议的最新版本。 IP 协议是一种网络层协议,采用 IP
协议构建的数据通信网络可提供高效的数据、语音和图像的传输服务。目前,在 Internet 上广泛采用的 IP
协议是 IPv4 版。随着 Internet 的迅猛发展,在充分享用了 IPv4 协议的简单高效的同时,人们也就意识到了
IPv4 的 32 位地址空间是不够的;因此,必须建立新的 IP 标准。
海量 IPv6 地址空间
IPv6 最根本的改变是提供了未来对全球范围内可确定的地址空间的需求。基于移动设备的应用,如:
个人数字设备(PDAs), 移动电话,汽车, 家庭网络和其他的移动数据通信设备都需要全球范围内可确定的地
址。IPv6 将网络地址位数从 32 位扩展到 128 位, 这代表着可以为地球上的任何需要联网的设备提供唯一确
定的地址。正是因为有了全球范围内可确定的地址,IPv6 提供了全球范围内的地址可达,端到端的安全通
信,以及对所有对地址有要求的应用和服务的支持。 除此之外,丰富的 IPv6 地址空间消除了网络中的
NAT(Network Address Translation)瓶颈,提高了网络效率。
32.1.1 IPv6编址
由于 IPv6 的地址有 128 位长,比 32 位的 IPv4 地址表示起来复杂的多。目前,IPv6 的地址由一
串 16 进制的数字表示,每 16 位之间用分号(:)隔开,格式如下: x:x:x:x:x:x:x:x.
下面是两个 IPv6 地址例子:
2001:0DB8:7654:3210:FEDC:BA98:7654:3210
1080:0:0:0:8:800:200C:417A
通常情况下 IPv6 地址会包含连续的 0。为避免 IPv6 地址表示的复杂性,连续的 0 可缩写为两个冒
号表示(::)。 Table1 lists IPv6 地址的缩写格式。 两个冒号可以用在 IPv6 地址的一部分。你可以在一个接
口上配置多个地址,但只能一个 link-local 地址。
注意两个冒号(::) 只能在 IPv6 地址中出现一次,只能代表最长的连续的 0。
IPv6 地址中的十六进制数的表示是大小写不敏感的。
IPv6 Address Type
Unicast
Multicast
Loopback
Unspecified
Preferred Format
1080:0:0:0:8:800:200C:417A
FF01:0:0:0:0:0:0:101
0:0:0:0:0:0:0:1
0:0:0:0:0:0:0:0
Compressed Format
1080::8:800:200C:417A
FF01::101
::1
::
Table1 中所列的 loopback 地址可以是一个网络节点送一个 IPv6 的数据包给自己。 这个 loopback
地址功能与 IPv4 的 loopback 地址 (127.0.0.1)一样.
注意 IPv6 的 loopback 地址不能配置在物理接口。 一个不管是原地址还是目的地址是 IPv6
loopback 地址的数据包必须停留在产生他的网络节点内,不能出现在网络链路上。IPv6 路由器不能转
发代有 IPv6 loopback 地址的数据包,不管是原地址还是目的地址。
在 Table1 中的未定义的地址是不存在的 IPv6 地址.例如,一个刚刚进入网络的,正在初始化的节
点可以用未定义的 IPv6 地址作为源地址,直到获得真正的 IPv6 地址为止.
注意未定义的 IPv6 地址不可以用作接口地址。未定义的 IPv6 地址不能用作在 IPv6 数据包的目的
地址或出现在 IPv6 数据包头的路由信息内。
一个用 ipv6-prefix/prefix-length 的格式的 IPv6 地址前缀可表示一个连续的地址空间。其中,
P a g e | 724
CCIE R/S & Service Provider Exam Certification Guide
ipv6-prefix 部分必须是在 RFC2373 正式定义的以分号隔开的连续 16 进制数。前缀的长度是一个十进制
的数值,他表示前多少位是网络 地址的前缀(网络标示)。 例如, 1080:6809:8086:6502::/64 是一个合法
的 IPv6 前缀.
32.1.2 单播 Unicast 地址
一个 IPv6 单播地址是用来标示一个网络节点的一个接口。一个数据包的目的地址是一个单播地
址时,他将被送到以这个地址标示的网络接口。一个 IPv6 的路由器应支持下列单播地址类型:
Global aggregatable address:可汇聚的全球化地址。
Site-local address:区域内的地址 (proposal to remove by IETF)
Link-local address: 链路接口地址
IPv4-compatible IPv6 address: 兼容 IPv4 的地址
32.1.3
可汇聚的全球地址
一个可汇聚的全球地址是一个带有全球化的可汇聚的 IPv6 前缀的地址。 这种结构化的全球化的
单播地址可以进行严格的路由前缀的汇聚,这样就可以大大减少整个路由表的路由条数,减少路由的
复杂度。 可汇聚的全球 地址用来标示链路地址,可以进行多级的路由汇聚,一直到顶级的 Internet
服务提供商(ISPs).全球化的可汇聚的 IPv6 地址被定义为全球化的路由前缀, 子网络号,和接口地址。除
了以二进制 000 开始的地址, 所有的全球化的 IPv6 单播地址都带有 64 位的接口地址。目前, 全球化
的单播地址的分配范围从以二进制的 001 (2000::/3)开始。 下图表示了全球化的可汇聚的单播地的格
式 。
全球化的可汇聚地址的格式
带有前缀从 2000::/3 (001) 到 E000::/3 (111)的地址需要带有从(EUI)-64 格式的 64 位接口地址。
IANA (Internet Assigned Numbers Authority)将 2000::/16 IPv6 地址空间下发到各个区域的地址注册机构
分发,如 APNIC 等。
在通常情况下,全球化的可汇聚的 IPv6 地址包含一个 48 位的全球路由前缀和 16 位的子网络号
或称为区域级的可汇聚前缀(Site-Level Aggregator-- SLA)。在 IPv6 的全球化的可汇聚单播地址格式文件
(RFC 2374)中指出, 全球化的路由前缀包括两层的层次化结构:顶层汇聚(Top-Level Aggregator--TLA) 和第
二层汇聚(Next-Level Aggregator -- NLA)。现在,IETF 决定从 RFCs 把 TLS 和 NLA 的区域规定删除,这样
可以使路由汇聚有更多的灵活性。在一些已经采用了 RFC 2374 中的汇聚方式的网络可继续沿用原有的
方式。 一个 16 位的子网络标示被称作子网号,他可以被不同的组织机构用来区分自己内部的地址分
配。一个子网号与 IPv4 的子网非常类似, 知识他可以有多达 65,535 个子网。
一个接口地址用来标示链路的接口。接口地址在一个链路上必须是唯一的 ,他们可以是 64 位接口
地址中的任何一个,只要确保是唯一的。在多数情况下,接口地址可以是从链路层的地址中衍生而来。
在全球化的可汇聚的 IPv6 地址中,接口地址必须是 64 位长,并且采用修改的 EUI-64 的格式.
P a g e | 725
CCIE R/S & Service Provider Exam Certification Guide
修改的 EUI-64 的格式的接口地址可从下列的产生方法之一产生:
所有的 IEEE 802 的接口类型(如:以太网,FDDI 等), 前三个八进制数(24bits)从 MAC 地址中的 OUI
(Organizationally Unique Identifier)复制;第四和第五个八进制数为 FFFE, 最后的三个八进制数(24bits)复
制 MAC 地址中的后 24 位。 最后,在构成的 64 位接口地址的第一个八进制数的第七位(U/L) bit 表示该
接口地址是本地化的还是本地的:0 表示本地地址,1 表示全球唯一的接口地址。
对其他的接口类型(如:串行接口, loopback, ATM, Frame Relay, 和 tunnel 接口—除 IPv6 overlay
tunnel 的接口), 接口地址的构成采用 IEEE 802 接口类型相似的方法:MAC 地址来自于设备的 MAC 地址
池中的第一个 MAC 地址。 当接口类型是 IPv6 overlay tunnels 时, 接口地址是低 32 位的 IPv4 地址加上
高位的全 0。
注意当接口类型是 PPP 时, 两端的不同接口可能具有相同的 MAC 地址;这时,两端设备需要重
新协商,重新选择接口地址,直到他们是唯一的。网络设备的第一个 MAC 地址用来构建 PPP 接
口地址。
当网络设备不具有 IEEE802 类型接口, link-local 的 IPv6 地址按以下方式产生:
1.路由器请求 MAC 地址 (从路由器本身的 MAC 地址池)。
2.如果没有 MAC 地址可用, 路由器的序列号可用做 link-local 地址。
3.如果序列号不可用,路由器将采用 MD5 算法结合自己的名字创建 MAC 地址。
Site-Local 地址
32.1.4
一个 site-local 地址是一个带着前缀 FEC0::/10 和 16 位子网号加上 64 位的 EUI-64 格式的 IPv6 单播
地址。Site-local 地址非常像 IPv4 中的私有地址空间 10.0.0.0/8;可以在一个区域内部进行路由的查找,
而不需要全球化的唯一的地址前缀。 Site-local 地址可以被认为是私有地址,因为他只能在一个严格限
制的区域内使用。 下图表示了 site-local 地址。
IPv6 路由器不可以将带有 site-local 的源地址或目的地址的数据包转发到区域之外。
Site-Local 地址 Format
Link-Local 地址
32.1.5
一个 link-local 地址是一个带有 link-local 前缀 FE80::/10(1111 1110 10)的 IPv6 单播地址,他采用修改
的 EUI-64 地址格式自动产生。 Link-local 地址可用于邻居发现协议(neighbor discovery protocol)和无
状态自动配置进程。 在同一个链路上的节点可使用 link-local 地址来通信; 不需要 site-local 地址或全
球化的单播地址。 下图表示 link-local 地址的结构。
IPv6 路由器不能将带有 link-local 的源地址或目的地址的数据包转发到其他网络或链路。
P a g e | 726
CCIE R/S & Service Provider Exam Certification Guide
Link-Local 地址格式
32.1.6
IPv4 兼容的 IPv6 地址
一个 IPv4 兼容的 IPv6 地址是一个高 96 位全 0 的,低 32 位为 IPv4 地址的 IPv6 单播地址。这种 IPv4
兼容的 IPv6 地址可表示为 0:0:0:0:0:0:A.B.C.D 或::A.B.C.D. 整个 128 位的 IPv4 兼容的 IPv6 地址是将网络
节点的 IPv4 地址直接植入 IPv6 地址的低 32 位。IPv4 兼容的 IPv6 地址用来在运行 IPv4 和 IPv6 双栈时使
用自动的隧道技术(tunnels)
。 下图表示了 IPv4 兼容的 IPv6 地址 格式。
IPv4 兼容的 IPv6 地址格式
32.1.7
Anycast 地址
一个 anycast 地址是一个属于多个网络节点的接口的 IPv6 的地址。一个以 anycast 地址为目的地址
的数据包将被转发到最近的网络接口;接口的远近由路由的计算结果来确定。Anycast 地址从地址的结
构上来说同单播地址是不可分的,因为 anycast 地址存在于单播地址的地址空间。但一个单播地址可以
被超过一个网络接口接收时,他就是一个 anycast 地址。Anycast 地址需要在网络节点上明确定义:这
个地址是一个 anycast 地址。
注意 Anycast 地址只能被路由器使用,不能被主机使用。Anycast 地址不可以出现在 IPv6 数据包
的源地址。 下图表示了 anycast 地址的构成;Anycast 地址是由一个前缀跟上一连串的 0(接口地
址)来构成。
Subnet Router Anycast 地址格式
32.1.8
Multicast 组播地址
一个前缀 FF00::/8(1111 1111)的 IPv6 地址就代表它是一个 IPv6 组播地址。一个数据包的目的地址
P a g e | 727
CCIE R/S & Service Provider Exam Certification Guide
为组播地址时,他将被复制转发到多个网络的接收者。组播地址前缀的第二个八进制数代表组播地址
的范围。这个八进制数被分为两部分:前四位为 0000 代表是一个永久性的组播地址,前四位为 0001
代表是暂时的组播 地址;后四位代表组播范围,目前定义了 1, 2, 5, 8, or E,分别代表不同的组播范围。
如下图所示。比如:组播地址的前缀为 FF02::/16 代表是一个永久性的组播地址,在链路范围。
IPv6 组播地址格式
IPv6 的设备(主机和路由器)必须加入下列组播组(必须接收的相应的组播数据包):
All-nodes 所有节点的组播组
FF02:0:0:0:0:0:0:1 (link-local 范围)
Solicited-node 节点请求组播组
FF02:0:0:0:0:1:FF00:0000/104 用来对应单播地址和 anycast 地址 。
IPv6 路由器必须加入所有路由器组播组
FF02:0:0:0:0:0:0:2 (link-local 范围).
节点请求的组播组地址( solicited-node)是用来确定 IPv6 的单播地址或 anycast 地址的. IPv6 节点
设备必须加入为地址和 anycast 地址对应的组播组。 当网络节点的 IPv6 单播或 anycast 地址的低 24 位
再加上 IPv6 节点请求组播地址前缀 FF02:0:0:0:0:1:FF00:0000/104 就构成了这个节点的节点请求组播地
址。 如下图。比如:当一个节点的 IPv6 地址为 2037::01:800:200E:8C6C 时,他的节点请求组播地址是
FF02::1:FF0E:8C6C。节点请求地址用来接收邻居节点的请求信息。
IPv6 节点请求组播地址格式
32.2 IPv6报文格式
IPv6 包头经过改进,效率大为提高(如图所示)。 新的格式引入了扩展包头的概念,使支持可选项功能
的灵活性有所增强。
IPv6 包头中的字段包括:
P a g e | 728
CCIE R/S & Service Provider Exam Certification Guide
Version(版本):4 位因特网协议(Internet Protocol)版本号,值=6。
Traffic Class(业务负载类别):8 位业务负载类别字段,类似于 IPv4 的服务类型。
Flow Label(流标号):20 位流标号,用于确定服务质量方面附加控制的业务流。
Payload Length(有效负载长度):16 位无符号整数,IPv6 有效负载的长度。
Next Header(下一包头):8 位选择器,用于识别紧随 IPv6 包头之后的包头类型。
Hop Limit(跳转限度):8 位无符号整数,根据转发数据包的每个节点按 1 递减。如果 Hop Limit
减
至零,则数据包被丢弃。
Source Address(源地址):数据包始发方的 128 位地址。
Destination Address(目标地址):数据包预期接收方的 128 位地址。
IPv6 扩展包头
扩展包头在 IPv6 中为可选项。如果存在,扩展包头则紧随包头字段。IPv6 扩展包头具有以下特性:
它们按 64 位排列,其系统开销远远低于 IPv4 选项。
不像 IPv4 那样有大小限制。唯一的限制就是 IPv6 数据包的大小。
它们仅由目的节点处理。唯一的例外就是 Hop-by- Hop(逐段跳转)包头选项。
基本 IPv6 包头的 Next Header(下一包头)字段识别扩展包头。
当同一 IPv6 数据包内存在多个扩展包头时,其发生顺序如下:
逐跳(Hop-by-Hop)包头携带需由发送路径上的所有节点检验的信息。当逐跳选项存在时,则
其始终紧 随基本 IPv6 包头之后。
目的(Destination)包头携带仅能由目的节点检验的附加信息。
选路(Routing)包头由源节点使用,以列出数据包通过路径到达其目的地所需的所有节点。
分段(Fragmentation)包头由源节点使用,以表明数据包已经被分为片段,适合在最大传输单
元(MTU 大小)内使用。与 IP4 不同的是,在 IPv6 内,数据包分段与组装是通过端节点完成,
而非通过路由器 完成,这进一步提高了 IPv6 网络的效率。
认证包头(AH)与封装安全有效负载(ESP)包头用于 IPSec 中,以提供安全服务,确保数据包的
认证、 完整性和保密性。
32.3 IPv6操作
32.3.1
相邻节点发现
相邻节点发现协议使 IPv6 节点和路由器能够判定相同网络上相邻节点的链路层地址,并发现和跟
踪相邻的路由器。IPv6 相邻节点发现方法使用 IPv6 ICMP (ICMPv6)消息与被请求的节点组播地址判定相
同网络上 相邻节点的链路层地址,验证相邻节点的可到达性,并跟踪相邻的路由器。
P a g e | 729
CCIE R/S & Service Provider Exam Certification Guide
当一个节点要判定相同本地链路上另一节点的链路层地址时,一个相邻节点的请求消息携带着发
送者自身的 链路层地址,在本地链路上被发送出去。目的节点在收到相邻节点的请求消息后,将在本
地链路上使用其自 身的链路层地址发送一个相邻节点通告消息,以此来回复请求。在收到相邻节点的
通告之后,源节点与目的 节点便可进行通信。相邻节点的通告消息也可在本地链路上一个节点的链路
层地址发生改变时发出。
32.3.2
路由器发现
IPv6 路由器发现法使用路由器通告和请求消息发现本地链路上的路由器。路由器通告消息在 IPv6
路由器 的每个配置接口上定期发出,并回应来自链路上 IPv6 节点的路由器请求消息。当主机没有配置
好的单播地址时,便发送一个路由器请求消息,使主机能够迅速自行自动配置,而不必等待下一个列
入计划的路由器通告消息。
路由器通告包含或决定:
节点应该使用何种类型的自动配置——是无状态的还是有状态的。
节点应该放入 IPv6 包头的跳转(Hop)限度值。
节点应该用来形成单播地址的网络前缀。
所包含网络前缀的寿命信息。
节点在发送数据包中应该使用的最大传输单元(MTU)大小。
发端路由器是否应该用作默认路由器。 无状态的自动配置与 IPv6 节点的重新编号
无状态的自动配置使 IPv6 节点能够完成不用服务器的基本配置,并方便地进行重新编号。无状态
的自动配置使用路由器通告消息中的网络前缀信息作为节点地址前缀的/64。余下的 64 位地址由分配
给结合 EUI-64 格式附加位的以太网接口的 MAC 地址获得。例如,带有以太网接口地址 0003B61A2061
的 一 个 节 点 , 结 合 由 路 由 器 通 告 提 供 的 网 络 前 缀 2001:0001:1EEF:0000/64 , 将 具 有 一 个 如
2001:0001:1EEF:0000:0003:B6FF:FE1A:2061 这样的 IPv6 地址。
IPv6 节点通过包含新、旧前缀的路由器通告消息,即有可能进行重新编号。旧前缀的寿命值减少,
在仍以 旧前缀保持其连接完好的同时,即提醒节点使用新前缀。在此期间,节点有两个单播地址在同
时使用。当 旧前缀不再使用时,路由器通告将只包含新前缀。
32.3.3
路径发现 MTU
IPv6 路由器不处理数据包的分段。在需要时,数据包分段由数据包的发端节点或源节点处理。IPv6
使用 ICMP 错误报告来判定传输路径上的数据包大小是否与 MTU 大小相匹配。当一个节点通过 ICMP
错误报 告报告“数据包过大”时,源节点将缩小传输数据包的大小。该过程反复进行,直至传输路径
上没有“数据 包过大”错误为止。这使节点能够动态发现特定数据路径上每个链路 MTU 大小之间的
差异,并做出调整。
32.3.4
DHCPv6 和 DNSv6
IPv6 除了支持无状态的自动配置以外,还通过 DHCPv6 支持有状态的配置。IPv6 节点具有一个在
路由器 未被发现时通过 DHCP 服务器请求地址的选项。DHCPv6 的操作与 DHCPv4 大体类似,但是,
DHCPv6 为其多数消息使用组播。IPv6 还引进了新的记录类型,以满足域名服务器中 IPv6 地址的需要。
AAAA 记录,又称“四 A”,已由 IETF 推荐,用于将主机名映射到 IPv6 地址。
P a g e | 730
CCIE R/S & Service Provider Exam Certification Guide
Chapter 33 IPv6 配置
33.1IPv6基本配置
33.1.1 开启ipv6转发及CEF
Cisco IOS软件可以支持ipv6的处理,但首先需要将ipv6的功能打开。开启方式如下:
首先在全局模式,开启ipv6单播转发
Router(config)#ipv6 unicast-routing
此后可以开启Cisco的快速转发,
Router(config)#ipv6 cef
33.1.2 链路上启用ipv6
对于一个节点而言,它需要给每个网络接口配置本地链路地址,还需要回环地址,所有节点多播地
址,分配的可聚合全球单播地址,所用于每个单播和任意播地址的被请求节点多播地址以及主机所属的
所有组的多播地址。
对于一个路由器,除此之外还需要所有路由器的多播地址,子网路由器的任意播地址以及其他任意
播地址等。路由器的配置如下:
A:静态地址配置
首先需要配置一个接口的链路地址
Router(config-if)#ipv6 address
FE80:0:0:0:2123:0456:0789:0abc link-local
此后需要配置可聚合的全球单播地址
Router(config-if)#ipv6 address 2001:0410:0:1:0:0:0:1/64
最后需要配置本地站点地址:
Router(config-if)#ipv6 address
FEC0:0410:0:1:0:0:0:1/64
B:回环地址配置
和普通地址配置一样,仅需要在回环接口上配置 ipv6 接口地址
Router(config)#interface loopback 0
Router(config-if)#ipv6 address
FEC0:0410:0:1:0:0:0:1/128
C:使用 EUI-64 配置
可以使用 EUI-64 的方式配置 ipv6 地址。EUI-64 通过一种影射关系,例如某接口的 MAC 地址为
0013.1234.5678,EUI-64 的编址方式为,在最中间的插入 FFFE,例如该地址的 EUI-64 地址就为
0013.12FF.FE34.5678。EUI-64 的配置方法如下:
首先可以定义一个前缀
ipv6 general-prefix prefix-name [ipv6-prefix/prefix-length]
然后在接口上配置
Ipv6 addreass prefix-name:ip
D:配置前缀
例如:
Ipv6 general-prefix kaka
Ipv6 address
2001:0410:0:1::/64
kaka::1/64
P a g e | 731
CCIE R/S & Service Provider Exam Certification Guide
E:使用无编号接口
Ipv6 unnumbered
F:仅启用 ipv6
Ipv6 enable
33.1.3 修改接口MTU
Cisco 路由器默认以太网和快速以太网的 MTU 值 1500,在某些情况下需要修改这些值,如下:
Router(config-if )#ipv6 mtu 1492
33.2NDP邻居发现协议
IPv6 不再执行地址解析协议(ARP)或反向地址解析协议(RARP),而以邻居发现协议中的相应功能
代替,IPv6 邻居发现协议与 IPv4 地址解析协议主要区别如下:
IPv4 中地址解析协议 ARP 是独立的协议,负责 IP 地址到链路层地址的转换,对不同的链路层
协议要定义不同的 ARP 协议。IPv6 中邻居发现协议 NDP 包含了 ARP 的功能,且运行于因特网
控制报文协议 ICMPv6 上,更具有一般性,包括更多的内容,而且适用于各种链路层协议;
ARP 协议以及 ICMPv4 路由器发现和 ICMPv4 重定向报文基于广播,而 NDP 协议的邻居发现报
文基于高效的组播和单播;
可达性检测的目的是确认相应 IP 地址代表的主机或路由器是否还能收发报文,IPv4 没有统一
的解决方案。NDP 中定义了可达性检测过程,保证 IP 报文不会发送给“黑洞”。
33.2.1 查看邻居表项
查看邻居可以采用如下的命令:
Router# show ipv6 neighbors ethernet 2
IPv6 Address
Age Link-layer Addr
2001:0DB8:0:4::2
0
FE80::XXXX:A0FF:FED6:141E
0
0003.a0d6.141e
REACH Ethernet2
-
0002.7d1a.9472
REACH Ethernet2
2001:0DB8:1::45a
0003.a0d6.141e
State Interface
REACH Ethernet2
33.2.2 配置静态邻居
Ipv6 neighbor fec0::1:0:0:1:b fa 0/0 000a.eb01.2345
清除邻居表可以用如下方式:
Clear ipv6 neighbor
33.3 帧中继中的ipv6
在帧中继环境中,ipv4 环境下,需要将接口 ip 地址映射到相应的 DLCI 号上。同样在 ipv6 环境下也需要映
射相应的 ip 到 DLCI 上。首先需要查看接口的 ipv6 地址
r4#sh ipv6 interface
Ethernet0/1 is up, line protocol is up
IPv6 is enabled, link-local address is FE80::2B0:64FF:FE0E:7E61
Global unicast address(es):
2001::1, subnet is 2001::/64
Joined group address(es):
P a g e | 732
CCIE R/S & Service Provider Exam Certification Guide
FF02::1
FF02::1:FF00:1
FF02::1:FF0E:7E61
MTU is 1500 bytes
ICMP error messages limited to one every 100 milliseconds
ICMP redirects are enabled
ND DAD is enabled, number of DAD attempts: 1
ND reachable time is 30000 milliseconds
所以在帧中继环境中需要 map 如下 2 条
1.
Fram-relay map ipv6 FE80::2B0:64FF:FE0E:7E61
2.
Fram-relay map ipv6 2001::1 106 b
106 b
P a g e | 733
CCIE R/S & Service Provider Exam Certification Guide
Chapter 34 RIPng
34.1 RIPng简介
34.1.1 RIPng的产生
众所周知,路由协议有基于距离矢量和链路状态两种。使用最广泛的一种基于距离矢量的路由协议
是选路信息协议RIP(Routing Information Protocol)。RIP产生较早,经过多年的应用,已经产生成熟的
标准和产品。RIP最大的优点是其比较简单,在规模不大、拓扑结构比较简单的网络上易于操作和维护。
但对于规模较大的网络,由于其存在选路环路及无限计数等问题,选路性能不如基于链路状态的协议,
因而较少采用。
RIP作为一种成熟的路由标准,在因特网中有着广泛的应用,特别是在一些中小型网络中。正是基
于这种现状,同时考虑到RIP与IPv6的兼容性问题,IETF对现有技术进行改造,制定了IPv6下的RIP标准,
即RIPng(RIP next generation)。
34.1.2 RIPng报文格式
RIPng是基于UDP的协议,并且使用端口号521发送和接收数据报。RIPng报文大致可分为两类:选路
信息报文和用于请求信息的报文。它们都使用相同的格式,由固定的首部和路由表项RTE(Route Table
Entry)组成,其中路由表项可以有多个。
首部包括命令字段和版本号字段。同RIP一样,命令字段用来区分报文要实现的各种操作。
其中命令号1表示请求部分或全部选路信息,
命令号2表示响应,其中包含一个或多个RTE。
路由器或主机可以通过发送请求命令向另一个路由器请求选路信息。路由器使用响应命令回答。版
本号字段包含了协议的版本号(目前的版本号值为1),接收方会检测该字段,以确定对方运行的RIPng
协议本地是否能进行正确的解释。
报文的剩余部分是一个RTE序列,其中每一个RTE由目的IPv6前缀、路由标记、前缀的有效长度以及
到目的网络的花费等4部分组成。IPv6的地址为128bit,因此在RTE中占用16字节。
路由标记字段是从RIP中保留下来的,其最主要的用途是用来对外部路由做标志,以区分内部路由
和外部路由,供外部网关路由协议(如EGP或BGP)使用。该字段也可用于其他目的,只要网络内所有运
行RIPng的路由器对其解释是一致的。
P a g e | 734
CCIE R/S & Service Provider Exam Certification Guide
前缀长度字段指明了前缀中有效位的长度,IPv6中使用了前缀长度的概念代替了IPv4中的子网掩码。
由于IPv6地址的意义很明确,因此RIPng中不再区分网络路由、子网路由或主机路由。
路由花费字段指明到目的网络的花费,由于RIPng的最大工作直径为15跳,因此该字段可以为1和15
之间的任意值,16即意味着目的地不可达。RIPng中仍然使用固定的度量方式,即该字段的含义只能是跳
数,路由器不能对其进行其他的解释。
RIPng并没有限制报文的大小,RIPng报文所能携带的最大RTE的数目是由物理介质的MTU所决定的,
计算公式如下:
报文长度 = RTE数目×20 + 4
其中RTE数目的计算公式如下:
RTE数目=INT[(MTU - IPv6首部长度 - UDP首部长度 - RIPng首部长度)/ RTE长度]
与RIPv2不同的是,RIPng的下一跳字段是由一个单独的RTE指定的。RIPng使用单独的RTE表示下一跳
的原因是IPv6的地址多达128bit,若将下一跳字段与目的网络地址放在同一个RTE中,则RTE的大小几乎将
会增加一倍,因此RIPng中采取目的网络地址和下一跳分开的方法来减小RTE的长度。在表示下一跳的RTE
中,路由标记和前缀长度字段必须为零,而度量字段为0xFF。
34.1.3 RIPng工作原理
路由器通常不会主动发出请求报文来进行路由请求,路由请求通常只是在路由器刚启动或是路由器
正在寻找路由信息时才会发出请求报文以获得响应。
路由器在查询响应、周期更新、触发更新三种情况下会收到响应报文。路由器根据响应报文判断是
否对本地路由表进行更新。由于响应报文可能对本地路由表进行改动,因此对报文的来源必须进行严格
的检查,以确认报文的合法性。
众所周知,基于距离矢量算法的路由协议会产生慢收敛和无限计数问题,这样就引发了路由的不一
致。RIPng使用水平分割技术、毒性逆转技术、触发更新技术来解决这些问题,但是这些技术的引入,同
时又带来了另一些问题,如采用触发更新技术后,如果不对产生的报文进行合理的控制,很容易产生广
播风暴。
路由器周期性的报文广播和触发更新给网络造成很多额外的负载,为减少路由信息的数量,RIPng
可以采用多播技术发送更新报文,同时利用一个小的随机时延对触发更新报文进行抑制。
介绍RIPng的工作原理就不能不提到定时器,定时器在RIPng中起着非常重要的作用,RIPng使用定时
器来实现路由表的更新、报文的发送。周期性的报文广播是由定时器实现的,另外为防止路由表长时间
未更新而失效,每个路由表项有两个定时器与之相联系,超时的路由表项最终将会被删除,以防止路由
器广播和使用已经失效的路由。RIPng中使用的定时器主要有以下三个:
启动周期性广播的定时器。此定时器被设置成25s到35s之间的任一随机数。这样设置的目的是
为了避免网络上所有路由器以相同的定时发送更新报文,利用随机间隔可以均衡通信量,从
而减少路由器之间发生冲突的可能性。
期满定时器。路由器只要收到通往特定信宿路由,就对通往该信宿的期满定时器初始化。期
满定时器被设定为180s,如果一条路由在期满定时器超时前未得到相关报文的更新,则该条
路由不再有效,但仍保留在路由表中,以便通知其他路由器这条路由已经失效。
垃圾收集定时器。路由器对无效路由打上尺度为无穷大的无效标记并将垃圾收集定时器初始
化。此时,定时器被设置为120s,在这段时间内这些路由仍然会被路由器周期性地广播,这
样相邻路由器就能迅速从路由表中删除该路由。
P a g e | 735
CCIE R/S & Service Provider Exam Certification Guide
34.1.3 RIPv1 RIPv2和RIPng的比较
根据上面的介绍,我们应该看到RIPng的目标并不是创造一个全新的协议,而是对RIP进行必要的改
造以使其适应IPv6下的选路要求,因此RIPng的基本工作原理同RIP是一样的,其主要的变化在地址和报文
格式方面。下面列举了一些RIPv1、RIPv2与RIPng之间的主要区别:
地址版本。RIPv1、RIPv2是基于IPv4的,地址域只有32bit,而RIPng基于IPv6,使用的所有地址
1.
均为128bit。
子网掩码和前缀长度。RIPv1被设计成用于无子网的网络,因此没有子网掩码的概念,这就决
2.
定了RIPv1不能用于传播变长的子网地址或用于CIDR的无类型地址。RIPv2增加了对子网选路的
支持,因此使用子网掩码区分网络路由和子网路由。IPv6的地址前缀有明确的含义,因此RIPng
中不再有子网掩码的概念,取而代之的是前缀长度。同样也是由于使用了IPv6地址,RIPng中
也没有必要再区分网络路由、子网路由和主机路由。
协议的使用范围。RIPv1、RIPv2的使用范围被设计成不只局限于TCP/IP协议簇,还能适应其他
3.
网络协议簇的规定,因此报文的路由表项中包含有网络协议簇字段,但实际的实现程序很少
被用于其他非IP的网络,因此RIPng中去掉了对这一功能的支持。
对下一跳的表示。RIPv1中没有下一跳的信息,接收端路由器把报文的源IP地址作为到目的网
4.
络路由的下一跳。RIPv2中明确包含了下一跳信息,便于选择最优路由和防止出现选路环路及
慢收敛。与RIPv2不同,为防止RTE过长,同时也是为了提高路由信息的传输效率,RIPng中的
下一跳字段是作为一个单独的RTE存在的。
报文长度。RIPv1、RIPv2中对报文的长度均有限制,规定每个报文最多只能携带25个RTE。而
5.
RIPng对报文长度、RTE的数目都不作规定,报文的长度是由介质的MTU决定的。RIPng对报文
长度的处理,提高了网络对路由信息的传输效率。
6.
RIPng使用FF02::9这个地址进行组播更新,
34.2 RIPng配置
34.2.1 RIPng的基本配置
首先配置RIPng和RIP有很多不同,RIPng主要配置从路由配置模式转换到了接口模式,对于如下拓扑:
首先需要启动路由器进程
ipv6 router rip bigMountain
但是如果该命令没有执行,也没有太大的关系,当接口上启用RIPng进程的时候,该命令也会
自动加入
P a g e | 736
CCIE R/S & Service Provider Exam Certification Guide
然后需要在接口下配置,使得这些接口加入到RIPng进程中,例如Taos路由器
ipv6 unicast-routing
interface Ethernet0
ipv6 address 2001:db8:0:6::1/64
ipv6 rip bigMountain enable
interface Ethernet1
ipv6 address 2001:db8:0:4::1/64
ipv6 rip bigMountain enable
interface Ethernet2
ipv6 address 2001:db8:0:5::1/64
ipv6 rip bigMountain enable
Sandia#show ipv6 route
IPv6 Routing Table - 16 entries
Codes: C - Connected, L - Local, S - Static, R - RIP, B BGP
U - Per-user Static route
I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary
O - OSPF intra, OI - OSPF inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2
C 2001:DB8:0:4::/64 [0/0]
via ::, Ethernet0
L 2001:DB8:0:4::2/128 [0/0]
via ::, Ethernet0
R 2001:DB8:0:5::/64 [120/2]
via FE80::205:5EFF:FE6B:50A1, Ethernet0
R 2001:DB8:0:6::/64 [120/2]
via FE80::205:5EFF:FE6B:50A1, Ethernet0
C 2001:DB8:0:10::/64 [0/0]
via ::, Ethernet1
L 2001:DB8:0:10:2B0:64FF:FE30:1DE0/128 [0/0]
via ::, Ethernet1
C 2001:DB8:0:11::/64 [0/0]
via ::, Ethernet2
L 2001:DB8:0:11:2B0:64FF:FE30:1DE0/128 [0/0]
via ::, Ethernet2
C 2001:DB8:0:12::/64 [0/0]
via ::, Ethernet3
L 2001:DB8:0:12:2B0:64FF:FE30:1DE0/128 [0/0]
via ::, Ethernet3
C 2001:DB8:0:13::/64 [0/0]
via ::, Ethernet4
L 2001:DB8:0:13:2B0:64FF:FE30:1DE0/128 [0/0]
via ::, Ethernet4
R 2001:DB8:0:18::/64 [120/3]
via FE80::205:5EFF:FE6B:50A1, Ethernet0
L FE80::/10 [0/0]
via ::, Null0
L FF00::/8 [0/0]
via ::, Null0
34.2.2 多进程RIPng配置
一个路由器上可以同时运行多个RIPng的进程,例如Taos路由器,需要将多个以太网段隔离开,每个网
段一个RIPng进程,配置方式如下
Interface Ethernet0
ipv6 rip bigMountain enable
P a g e | 737
CCIE R/S & Service Provider Exam Certification Guide
Interface Ethernet1
no ipv6 rip bigMountain enable
ipv6 rip smallMountain enable
interface Ethernet2
ipv6 rip bigMountain enable
ipv6 rip smallMountain enable
34.2.3 修改RIPng更新消息方式
RIPng默认采用FF02::9这个地址进行组播更新,更新报文使用UDP 520端口,下面我可以修改这个更新
地址,但必须保证在同一个组播域中,相互间地址相同
ipv6 router rip smallMountain
port 527 multicast-group FF02::9
34.2.4 查看RIPng路由进程
Taos#show ipv6 rip
RIP process "bigMountain", port 521, multicast-group FF02::9, pid 104
Administrative distance is 120. Maximum paths is 16
Updates every 30 seconds, expire after 180
Holddown lasts 0 seconds, garbage collect after 120
Split horizon is on; poison reverse is off
Default routes are not generated
Periodic updates 1078, trigger updates 5
Interfaces:
Ethernet2
Ethernet0
Redistribution:
None
RIP process "smallMountain", port 527, multicast-group FF02::9, pid 117
Administrative distance is 120. Maximum paths is 16
Updates every 30 seconds, expire after 180
Holddown lasts 0 seconds, garbage collect after 120
Split horizon is on; poison reverse is off
Default routes are not generated
Periodic updates 1080, trigger updates 5
Interfaces:
Ethernet1
Ethernet2
Redistribution:
None
34.2.5 修改RIPng更新计时器及AD
RIPng同样也有4个计时器可以通过如下方式更改,管理距离也可以按如下方式更改
ipv6 router rip bigMountain
timers 10 30 30 60
maximum-paths 8
distance 200
Taos#show ipv6 rip
RIP process "bigMountain", port 521, multicast-group FF02::9, pid 104
Administrative distance is 200. Maximum paths is 8
Updates every 10 seconds, expire after 30
Holddown lasts 30 seconds, garbage collect after 60
Split horizon is on; poison reverse is off
Default routes are not generated
Periodic updates 2513, trigger updates 7
Interfaces:
Ethernet2
Ethernet0
P a g e | 738
CCIE R/S & Service Provider Exam Certification Guide
Redistribution:
None
RIP process "smallMountain", port 527, multicast-group FF02::9, pid 122
Administrative distance is 120. Maximum paths is 16
Updates every 30 seconds, expire after 180
Holddown lasts 0 seconds, garbage collect after 120
Split horizon is on; poison reverse is off
Default routes are not generated
Periodic updates 2511, trigger updates 0
Interfaces:
Ethernet2
Ethernet1
Redistribution:
None
Taos#
34.2.6 RIPng路由汇总
RIPng的路由汇总在接口上配置,配置方法如下:
interface Ethernet0
ipv6 address 2001:DB8:0:4::2/64
ipv6 rip bigMountain enable
ipv6 rip bigMountain summary-address 2001:DB8:0:10::/62
Taos#show ipv6 route rip
IPv6 Routing Table - 12 entries
Codes: C - Connected, L - Local, S - Static, R - RIP, B BGP
U - Per-user Static route
I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary
O - OSPF intra, OI - OSPF inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2
R 2001:DB8:0:10::/62 [120/4]
via FE80::2B0:64FF:FE30:1DE0, Ethernet1
R 2001:DB8:0:18::/64 [120/2]
via FE80::204:C1FF:FE50:F1C0, Ethernet0
R 2001:DB8:0:20::/64 [120/2]
via FE80::204:C1FF:FE50:E700, Ethernet2
R 2001:DB8:0:21::/64 [120/2]
via FE80::204:C1FF:FE50:E700, Ethernet2
34.2.7 RIPng默认路由
RIPng的默认路由在接口上配置,配置方法如下:
interface Ethernet0
ipv6 address 2001:DB8:0:4::2/64
ipv6 rip bigMountain enable
ipv6 rip bigMountain default-information originate
同时也可以配置only模式,仅在接口上发送默认路由
ipv6 rip bigMountain default-information only
34.2.8 RIPng路由过滤
RIPng的路由过滤在接口上配置,配置方法如下:
ipv6 rip bigMountain input-filter/output-filter name
34.2.9 RIPng路由Metric
RIPng的路由Metric更改在接口上配置,配置方法如下:
ipv6 rip bigMountain metric-offset number
P a g e | 739
CCIE R/S & Service Provider Exam Certification Guide
Chapter 35 OSPFv3
35.1 OSPFv3简介
35.1.1 OSPFv3和OSPFv2的不同
1.1基于链路的协议
在OSPFv3中用“链路”替代了 OSPFv2 中的“网络”、“子网”等术语。在OSPFv3中 ,路由器接
口与链路相连而不是连接到子网上 ,任意两个节点都可以通过它们所处的链路来相互通信。
1.2地址语义的去除
除了在链路状态更新包的LSA 中会出现 IPv6地址外 ,在 OSPFv3 的数据包中基本上不含有 IPv6
的地址。OSPF路由器 ID ,域 ID 以及LSA 的链路状态 ID也都仍然使用32位 IPv4的地址来表示。
1.3 洪泛范围的扩大
在OSPFv2 中 ,除了 AS - External - LSA 的洪泛范围是自治系统内部之外 ,每一个LSA 都与一个域
相关 ,所以洪泛范围是域内部。而在 OSPFv3 中 ,LSA的洪泛范围已被扩展为三种:本地链路范围、
域内部范围和自治系统内部范围。
1.4 在一条链路上运行多个实例的支持
OSPFv3 通过数据包头部的 Instance ID 和接口的数据结构支持在一条链路上运行多个 OSPF的实
例。在Ospfv2 中是通过数据包头部的认证字段来达到相同目的的。
1.5 本地链路地址的使用
OSPFv3为了实现“邻居发现”和“自动配置”,在单独的链路上使用本地链路地址。IPv6路由器不
转发那些有本地链路源地址的数据包并且本地链路地址只允许在Link-LSA中出现。
1.6 认证的改变
在Ospfv3 的数据包头部不再含有“AuType”和“Authentication”字段 ,所以 OSPFv3 本身不提供
认证功能 ,而是依赖于 IP 头部的认证和 IP 封装的安全载荷来保证数据包的完整性和安全性。
1.7 数据包格式的变化
OSPFv3 直接运行于 IPv6 之上 ,所有的地址语义都从OSPF头部去掉了。
1.8 LSA格式的变化
所有的LSA 头部以及 Router - LSAs 和 Network- LSAs 中都去掉了地址语义。在 OSPFv3 中 ,增加
了一些新的LSA。LSA类型扩充为9类
1.9 对不支持的LSA的处理
在OSPFv2 中简单的忽略那些不支持的LSA 类型 ,而在OSPFv3 中 ,这类LSA 可以被路由器存储和
洪泛。
1.10 Stub区域的支持
在OSPFv2 中 ,定义 Stub 域是为了最小化链路状态数据库和路由表的大小。在OSPFv3 中 ,仍然
保留了 Stub的概念。所不同的是 ,OSPFv3 允许洪泛范围是本地链路范围或者u - bit 置0 时的未
知LSA在Stub域中洪泛。
1.11 通过路由器 ID识别邻居
在Ospfv3中 ,所有链路类型的邻居路由器通过它的路由器 ID来识别 ,而在OSPFv2中 ,在点对点链
路和虚链路上的邻居路由器通过它的路由器 ID 来识别的 ,而广播、NBMA和点对多点的网络都是
通过它们的 IPv4的接口地址来识别的。
P a g e | 740
CCIE R/S & Service Provider Exam Certification Guide
35.2 OSPFv3报文格式
35.2.1 OSPFv3报文格式
OSPFv2和OSPFv3均使用同样的IP协议号89。但OSPFv3在组播支持上,对所有SPF路由器的组播地
址定义为FF02::5,对所有DR路由器组播地址定义为FF02::6,相当于IPv4中,OSPFv2定义的224.0.0.5和
224.0.0.6。
OSPFv3同样使用5中消息(Hello,DD,LSDatabase Request,LS Database Update, LS Ack)来建立连接,但
OSPFv3的报文和v2有很多不同,首先来看下面OSPFv3的报头,版本号更新为3,加入了Instance ID,也
就是说,同一条链路上可以运行多个Instance。但接口标示仅在本地链路上有意义,因此OSPFv3消息不
能转发到始发它的链路之外。同时OSPFv3去掉了认证报文
OSPFv3报头
OSPFv3的Hello和数据库描述报文与OSPFv2也有所不同,如下图,新的OSPFv3的报文由于IPv6不需
要子网掩码,所以消息格式中该字段被取消,可选字段加大到24bit,无效时间从32bit缩短为16bit。
OSPFv3 Hello报文
P a g e | 741
CCIE R/S & Service Provider Exam Certification Guide
如下图所示,数据库描述报文也做了改变,对比OSPFv2也是仅仅加大了可选字段项。
OSPFv3 DD消息报文
35.2.2 OSPFv3 LSA
如下图所示,图中显示了OSPFv3的LSA报头,没有可选项字段而且链路状态类型字段大小为16位。
LSA报头格式
OSPFv3的LSA报头中链路状态类型字段加长的原因是因为包含了3为的前置位,如下图
U位:指出一台路由器如果不能识别LSA的功能代码,应该如何处理该LSA。该位如果为1,则将会
像被识别的LSA一样被保存和扩散,如果为0,则将被作为链路本地泛洪扩散范围处理
S2/S1位
指出LSA泛洪扩散的范围,如下图图所示:
此后的字段为13bit的LSA功能代码字段。这和OSPFv2字段相一致。但对应的LSA类型有所变化,
OSPFv3使用9类LSA而OSPFv2仅用7种LSA。图如下:
P a g e | 742
CCIE R/S & Service Provider Exam Certification Guide
OSPFv3的路由器和网络LSA并不通告前缀,并将该功能放入区域内前缀LSA。这样路由器LSA和网
络LSA对于SPF来说就只代表路由器的节点信息。并且只有当与SPF算法相关的信息发生变化时才进行扩
散。如果前缀发生变化,或者末梢线路发生变化,这些信息将在区域内前缀LSA中进行,而不会引起SPF
重新计算。同时,OSPFv3加入了新的链路LSA,链路LSA只具有在链路本地扩散的范围,所以这样的处
理方式提高了OSPFv3的效率。
35.2.3 OSPFv3 LSA格式
1.路由器LSA (Router LSA)
P a g e | 743
CCIE R/S & Service Provider Exam Certification Guide
类型
指定接口类型,具体标示如下:
度量Metric
用于指定接口的出口代价(outbound cost)
接口ID
用于把该接口与始发路由器上的其他的接口区分开来
邻居接口ID
在Hello数据报中链路上邻居通告的接口ID,或者Type2的链路上的链路指定
路由器DR的接口ID
邻居路由器ID
指定邻居的RID,或者DR的RID
2.网络LSA (Network LSA)
如图所示,其功能而言和OSPFv2的网络LSA相同,始发于DR路由器,但取消了ipv6并不需要
的子网掩码字段
3.区域间前缀LSA (inter-Area prefix LSA)
P a g e | 744
CCIE R/S & Service Provider Exam Certification Guide
他的作用和OSPFv2类型3的汇总LSA相同---由ABR路由器始发这种LSA到一个区域,通告
该区域外部但仍然属于它的OSPF域内的网络。
ABR路由器必须为每个在一个区域内被通告的ipv6前缀发起一个单独的区域间前缀LSA。
ABR路由器也能够始发一个区域间前缀LSA向一个末梢区域通告一条缺省路由。
4.区域间路由器LSA (inter-Area Router LSA)
ABR向一个区域内始发一条区域间路由器LSA,用来通告一个在该区域外的ASBR路由器
可选项
表示ASBR的可选性能
度量
表示ASBR的代价
目的路由器ID
表示ASBR路由器的RID
5.AS外部LSA (AS-External LSA)
P a g e | 745
CCIE R/S & Service Provider Exam Certification Guide
外部AS-LSA中
E标记
用于度量外部路由重分布进入后的Metric类型,1为 O E2的度量方式 0为O E1
F标记
用于表示LSA包含一个转发地址
T标记 用于表示LSA包含一个外部路由标记
6.链路 LSA (Link LSA)
链路LSA具有3种功能
1. 向这条链路相连的其他所有路由器提供始发路由器的链路本地地址
2. 提供与这条链路路有关的ipv6前缀列表
3. 提供了这条链路始发的网络LSA有关的一组可选位的集合
前缀可选项:
P a g e | 746
P
传播位,设置在NSSA区域边界重新通告的NSSA区域前缀上
MC
多播位
LA
Local Address 本地地址,表示该前缀是通告一个路由器的本地接口
NU
No Unicast 表示该前缀应该从单播路由表选择计算中排除
CCIE R/S & Service Provider Exam Certification Guide
7.区域前缀 LSA (Intra-Area Prefix LSA)
在OSPFv2中路由器与网络LSA携带的前缀信息,在OSPFv3中独立出来成为一种区域前缀
LSA。在OSPFv2中,如果在路由器与网络LSA中通告前缀将导致区域内所有路由器进行SPF重
算。在OSPFv3中,路由器与网络LSA仅用来提供拓扑信息,区域内前缀LSA将不会触发SPF的
计算,加快了汇聚速度。
8.可选项
DC
按需电路支持
R
表明始发路由器是否是一台有效路由器,当该位清0时,传送盖始发节点的路由
将不被计算
N
支持NSSA LSA
MC
支持MOSPF协议
E
标明AS外部LSA如何进行扩散
V6
如果此位为0,表示应该从IPv6路由选择计算中排除该路由器或链路
P a g e | 747
CCIE R/S & Service Provider Exam Certification Guide
35.3 OSPFv3配置
35.3.1 OSPFv3基本配置
OSPF配置很多都在接口上。首先看如下拓扑图
Hedwig路由器上配置如下:
interface Serial 0/0
ipv6 address 2001:db8:0:8::1/64
ipv6 ospf 1 area 1
interface Ethernet0/0
ipv6 address 2001:db8:0:4::1/64
ipv6 ospf 1 area 0
Pigwidgeon配置如下:
interface Ethernet 0/0
ipv6 address 2001:db8:0:5::3/64
ipv6 ospf 1 area 0
interface Serial 0/0
ipv6 address 2001:db8:0:10::1/64
ipv6 ospf 1 area 0
相对于OSPFv2,v2需要router ospf 1 开启路由进程,然后通过network area通告区域。而在配置上OSPFv3
仅需要在接口下配置ipv6 ospf area 。查看OSPF进程信息如下:
Hedwig#show ipv6 protocol
IPv6 Routing Protocol is "connected"
IPv6 Routing Protocol is "static"
IPv6 Routing Protocol is "ospf 1"
Interfaces (Area 0):
Ethernet0/0
Interfaces (Area 1):
Serial0/0
Redistribution:
None
基于接口配置的OSPFv3协议,可以在激动将辅助地址加入到OSPFv3进程中
interface Ethernet0/0
ipv6 address 2001:db8:0:4::1/64
ipv6 address 2001:db8:0:5::1/64
ipv6 ospf 1 area 0
但是OSPFv3不能像OSPFv2那样有选择的加减路由。要么全部加入到OSPFv3进程,要么接口上不配
置OSPFv3。
OSPFv3的邻居关系建立采用Link-Local地址,也就是说,如果链路上两端ipv6地址拥有不同的前缀
P a g e | 748
CCIE R/S & Service Provider Exam Certification Guide
也可以建立邻居关系,而OSPFv2必须要使用相同的网段才能实现。
查看OSPF邻居关系如下:
Crookshanks#show ipv6 ospf neighbor
Neighbor ID
Pri State
Dead Time
10.1.1.1
1 FULL/DROTHER
00:00:30
10.1.3.1
1 FULL/BDR
00:00:37
Crookshanks#
Interface ID
3
3
Interface
Ethernet0/0
Ethernet0/0
两个邻居建立起邻接关系前需要一些参数完全匹配。他们必须使用相同的区域ID,必须采用相同
的Hello和dead间隔时间,必须具有相同的E位值来表示区域是否为一个末梢区域,
同时可以发现OSPFv3依旧使用32位长度的RouterID。选择方式和OSPFv2相同,IPv6的邻居总是通
过他们的RID进行告知。对于IPv4网络,广播型,NBMA和点到多点网络都是通过接口地址告诉邻居路
由器。
在配置OSPFv3后,链路Cost值可以在接口模式下更改,而全局参数则需要在OSPF进程模式下进行
修改。
35.3.2 OSPFv3 Stub区域
Stub区域必须在链路两端都增加这样的配置,否则邻居关系将无法建立。如下图
将Area1变为Stub区域前,Scabbers的路由条目
Scabbers#show ipv6 route
IPv6 Routing Table - 16 entries
Codes: C - Connected, L - Local, S - Static, R - RIP, B - BGP
U - Per-user Static route
I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary
O - OSPF intra, OI - OSPF inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2
OI 2001:DB8:0:4::/64 [110/74]
via FE80::202:FDFF:FE5A:E40, Serial0/0
OI 2001:DB8:0:5::/64 [110/74]
via FE80::202:FDFF:FE5A:E40, Serial0/0
C 2001:DB8:0:8::/64 [0/0]
via ::, Serial0/0
L 2001:DB8:0:8::2/128 [0/0]
via ::, Serial0/0
C 2001:DB8:0:9::/64 [0/0]
via ::, Ethernet0/0
L 2001:DB8:0:9::2/128 [0/0]
via ::, Ethernet0/0
OI 2001:DB8:0:10::/64 [110/138]
P a g e | 749
CCIE R/S & Service Provider Exam Certification Guide
via FE80::202:FDFF:FE5A:E40, Serial0/0
OI 2001:DB8:0:11::/64 [110/138]
via FE80::202:FDFF:FE5A:E40, Serial0/0
OI 2001:DB8:0:12::/64 [110/138]
via FE80::202:FDFF:FE5A:E40, Serial0/0
OI 2001:DB8:0:13::/64 [110/138]
via FE80::202:FDFF:FE5A:E40, Serial0/0
OI 2001:DB8:0:200::/64 [110/138]
via FE80::202:FDFF:FE5A:E40, Serial0/0
OI 2001:DB8:0:201::/64 [110/138]
via FE80::202:FDFF:FE5A:E40, Serial0/0
OI 2001:DB8:0:202::/64 [110/138]
via FE80::202:FDFF:FE5A:E40, Serial0/0
OI 2001:DB8:0:203::/64 [110/138]
via FE80::202:FDFF:FE5A:E40, Serial0/0
L FE80::/10 [0/0]
via ::, Null0
L FF00::/8 [0/0]
via ::, Null0
Scabbers#
此时可以将Area 1配置成为Stub区域,配置方式如下
在Hedwig路由器上配置
ipv6 router ospf 1
area 1 stub no-summary
在Scabbers路由器上配置
ipv6 router ospf 1
area 1 stub
注意:No-summary命令仅在ABR上能够支持
Scabbers#show ipv6 route
IPv6 Routing Table - 7 entries
Codes: C - Connected, L - Local, S - Static, R - RIP, B - BGP
U - Per-user Static route
I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary
O - OSPF intra, OI - OSPF inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2
OI ::/0 [110/65]
via FE80::202:FDFF:FE5A:E40, Serial0/0
C 2001:DB8:0:8::/64 [0/0]
via ::, Serial0/0
L 2001:DB8:0:8::2/128 [0/0]
via ::, Serial0/0
C 2001:DB8:0:9::/64 [0/0]
via ::, Ethernet0/0
L 2001:DB8:0:9::2/128 [0/0]
via ::, Ethernet0/0
L FE80::/10 [0/0]
via ::, Null0
L FF00::/8 [0/0]
via ::, Null0
Scabbers#
P a g e | 750
CCIE R/S & Service Provider Exam Certification Guide
35.3.3 OSPFv3 一条链路多实例
在以太网段中新增加一些路由器,但是需要隔离通信量,则可以在一条链路上使用多个实例,
如下图:要将同一个广播网段的通信隔离开,则可以借助这样的方法。
在Pigwidgeon路由器上作如下配置
interface Ethernet 0/0
ipv6 address 2001:db8:0:5::3/64
ipv6 ospf 1 area 0 instance 1
同样在Hermes上配置
interface Ethernet 0/0
ipv6 address 2001:db8:0:5::4/64
ipv6 ospf 1 area 0 instance 1
这样2个相同进程的OSPF通过不同的实例隔离了通讯量,需要注意的是,默认情况下,所有的OSPF
进程属于instance 0。
35.3.4 NBMA网络
在NBMA型网络中,可以用多种方式来配置OSPFv3。
首先,对于非广播形的链路,如下图:
P a g e | 751
CCIE R/S & Service Provider Exam Certification Guide
非广播型链路上,可以通过指定邻居的方式建立连接,例如Skrewt上的配置。
interface Serial 0/0
encapsulation frame-relay
ipv6 address 2001:DB8:0:1::1/64
ipv6 ospf 1 area 1
frame-relay map ipv6 fe80::206:28ff:feb6:5bc0 201
frame-relay map ipv6 fe80::202:fdff:fe5a:e40 202
frame-relay map ipv6 fe80::201:42ff:fe79:e500 203
ipv6 ospf neighbor fe80::206:28ff:feb6:5bc0 priority 5
ipv6 ospf neighbor fe80::202:fdff:fe5a:e40 priority 10
ipv6 ospf neighbor fe80::201:42ff:fe79:e500
同时,可以注意到,在ipv6 ospf neighbor命令中还支持优先级指定,这样就可以制定出哪一台是
DR,哪一台是BDR
对于这种非广播型链路还有一种方法来配置:通过将PVC配置为广播型电路,来支持OSPFv3的自
动邻居发现,如下:
interface Serial 0/0
encapsulation frame-relay
ipv6 address 2001:DB8:0:1::1/64
ipv6 ospf network broadcast
ipv6 ospf 1 area 1
ipv6 ospf priority 20
frame-relay map ipv6 fe80::206:28ff:feb6:5bc0 201 broadcast
frame-relay map ipv6 fe80::202:fdff:fe5a:e40 202 broadcast
frame-relay map ipv6 fe80::201:42ff:fe79:e500 203 broadcast
此时可以在接口上设置优先级
ipv6 ospf priority 20
对于点到多点的网络类型,OSPFv3的配置和OSPFv2也十分相似,如下:
Interface Serial 0/0
encapsulation frame-relay
ipv6 address 2001:DB8:0:1::1/64
ipv6 ospf network point-to-multipoint
ipv6 ospf 1 area 1
ipv6 ospf priority 20
frame-relay map ipv6 fe80::206:28ff:feb6:5bc0 201 broadcast
frame-relay map ipv6 fe80::202:fdff:fe5a:e40 202 broadcast
frame-relay map ipv6 fe80::201:42ff:fe79:e500 203 broadcast
中心节点将网络类型配置为点到多点,子节点配置为点到点。点到多点形网络的Hello报文为每30s
发送一次,广播型为10s,
Skrewt#show ipv6 ospf interface serial 0/0
Serial0/0 is up, line protocol is up
Link Local Address FE80::207:85FF:FE6B:EA20, Interface ID 4
Area 1, Process ID 1, Instance ID 0, Router ID 1.1.1.1
Network Type POINT_TO_MULTIPOINT, Cost: 64
Transmit Delay is 1 sec, State POINT_TO_MULTIPOINT,
Timer intervals configured, Hello 30, Dead 120, Wait 120, Retransmit 5
Hello due in 00:00:13
Index 1/1/1, flood queue length 0
Next 0x0(0)/0x0(0)/0x0(0)
Last flood scan length is 2, maximum is 4
Last flood scan time is 0 msec, maximum is 4 msec
Neighbor Count is 3, Adjacent neighbor count is 3
Adjacent with neighbor 10.1.1.23
Adjacent with neighbor 10.1.3.1
Adjacent with neighbor 192.2.2.9
Suppress hello for 0 neighbor(s)
P a g e | 752
CCIE R/S & Service Provider Exam Certification Guide
需要注意的是:在NMBA型网络上,建立连接的是链路地址,如下是一个常见的错误
interface Serial0/0
no ip address
encapsulation frame-relay
ipv6 address 2001:DB8:0:1::3/64
ipv6 ospf network broadcast
ipv6 ospf 1 area 1
frame-relay map ipv6 2001:DB8:0:1::1 220 broadcast
frame-relay map ipv6 2001:DB8:0:1::2 221 broadcast
frame-relay map ipv6 2001:DB8:0:1::4 223 broadcast
由于仅map了对端接口的全局地址,链路地址没有做映射,所以,debug发现如小消息
Skrewt#debug ipv6 ospf hello
Skrewt#debug ipv6 ospf adj
OSPFv3: Rcv hello from 10.1.1.23 area 1 from Serial0/0 FE80::202:FDFF:FE5A:E40
interface ID 4
OSPFv3: 2 Way Communication to 10.1.1.23 on Serial0/0, state 2WAY
OSPFv3: Neighbor change Event on interface Serial0/0
OSPFv3: DR/BDR election on Serial0/0
OSPFv3: Elect BDR 10.1.1.23
OSPFv3: Elect DR 10.1.1.23
DR: 10.1.1.23 (Id) BDR: 10.1.1.23 (Id)
OSPFv3: Send DBD to 10.1.1.23 on Serial0/0 seq 0xF78 opt 0x0013 flag 0x7 len 28
OSPFv3: Rcv hello from 10.1.3.1 area 1 from Serial0/0 FE80::201:42FF:FE79:E500
interface ID 4
OSPFv3: 2 Way Communication to 10.1.3.1 on Serial0/0, state 2WAY
OSPFv3: Neighbor change Event on interface Serial0/0
OSPFv3: DR/BDR election on Serial0/0
OSPFv3: Elect BDR 10.1.1.23
OSPFv3: Elect DR 10.1.3.1
DR: 10.1.3.1 (Id) BDR: 10.1.1.23 (Id)
OSPFv3: Send DBD to 10.1.3.1 on Serial0/0 seq 0x1C93 opt 0x0013 flag 0x7 len 28
OSPFv3: Remember old DR 10.1.1.23 (id)
OSPFv3: End of hello processing
OSPFv3: Send DBD to 10.1.1.23 on Serial0/0 seq 0xF78 opt 0x0013 flag 0x7 len 28
OSPFv3: Retransmitting DBD to 10.1.1.23 on Serial0/0 [1]
OSPFv3: Send DBD to 10.1.3.1 on Serial0/0 seq 0x1C93 opt 0x0013 flag 0x7 len 28
OSPFv3: Retransmitting DBD to 10.1.3.1 on Serial0/0 [1]
OSPFv3: Rcv hello from 10.1.1.23 area 1 from Serial0/0 FE80::202:FDFF:FE5A:E40
interface ID 4
OSPFv3: End of hello processing
Skrewt#
这样会导致DBD无法传送,此时需要影射对端的链路地址
Skrewt#show ipv6 interface serial0/0
Serial0/0 is up, line protocol is up
IPv6 is enabled, link-local address is FE80::207:85FF:FE6B:EA20
Global unicast address(es):
2001:DB8:0:1::1, subnet is 2001:DB8:0:1::/64
Joined group address(es):
FF02::1
FF02::2
FF02::5
FF02::1:FF00:1
FF02::1:FF6B:EA20
MTU is 1500 bytes
ICMP error messages limited to one every 100 milliseconds
ICMP redirects are enabled
ND DAD is not supported
P a g e | 753
CCIE R/S & Service Provider Exam Certification Guide
ND reachable time is 30000 milliseconds
Hosts use stateless autoconfig for addresses.
Skrewt#
通过将链路地址影射到DLCI上,才能保证邻居关系正常建立
interface Serial0/0
no ip address
encapsulation frame-relay
ipv6 address 2001:DB8:0:1::3/64
ipv6 ospf network broadcast
ipv6 ospf 1 area 1
frame-relay map ipv6 fe80::207:85ff:fe6b:ea20 220 broadcast
frame-relay map ipv6 fe80::206:28ff:feb6:5bc0 221 broadcast
frame-relay map ipv6 fe80::201:42ff:fe79:e500 223 broadcast
35.3.5 OSPFv3负载均衡
默认情况下OSPFv3拥有16条链路的负载均衡,可以通过如下命令更改
maximum-paths <1-64>
35.3.6 区域内汇总路由
默认情况下,按照链路前缀通告路由,
OI 2001:0DB8:0:0:7::/64 [110/20]
via FE80::A8BB:CCFF:FE00:6F00, Ethernet0/0
OI 2001:0DB8:0:0:8::/64 [110/100]
via FE80::A8BB:CCFF:FE00:6F00, Ethernet0/0
OI 2001:0DB8:0:0:9::/64 [110/20]
via FE80::A8BB:CCFF:FE00:6F00, Ethernet0/0
此时可以对一个区域进行汇总,汇总后路由表如下
OI 2001:0DB8::/48 [110/100]
via FE80::A8BB:CCFF:FE00:6F00, Ethernet0/0
具体配置为:
ipv6 router ospf process-id
area area-id range ipv6-prefix/prefix-length [advertise | not-advertise] [cost cost]
35.3.7 Virtual-Link
OSPFv3中同样有Virtual-link的概念。Virtual-link的配置方式和OSPFv2非常相似
Router(config)#ipv6 router ospf 1
Router(config-rtr)#area 1 virtual-link 1.1.1.1
35.3.8 OSPFv3安全
OSPFv3采用IPSec的方式,可以对接口和区域进行安全认证和加密。认证和加密均采用基于IPSec
的通信方式。认证采用IPSec的AH方式,加密则采用IPSec的ESP方式。但是OSPFv3的报文加密仅在部分
具有安全特性的IOS上支持
接口认证:
interface type number
ipv6 ospf authentication ipsec spi spi md5 [key-encryption-type {key | null}]
P a g e | 754
CCIE R/S & Service Provider Exam Certification Guide
也可以采用SHA
ipv6 ospf authentication ipsec spi spi sha1 [key-encryption-type {key | null}]
接口加密:
interface type number
ipv6 ospf encryption {ipsec spi spi esp encryption-algorithm [[key-encryption-type]
key] authentication-algorithm [key-encryption-type] key | null}
区域认证:
区域认证,即在一台路由器上对所有属于该区域的链路采用相同的认证方式,但为了安全,
依旧可以在接口上使用认证,接口认证安全优先级高于区域认证
ipv6 router ospf process-id
area area-id authentication ipsec spi spi md5 [key-encryption-type] key
区域加密:
ipv6 router ospf process-id
area area-id encryption ipsec spi spi esp encryption-algorithm
[[key-encryption-type] key] authentication-algorithm [key-encryption-type] key
Virtual-Link的认证:
ipv6 router ospf process-id
area 1 virtual-link router-id authentication ipsec spi spi authentication-algorithm
[key-encryption-type] key
area 1 virtual-link router-id encryption ipsec spi spi esp encryption-algorithm
[[key-encryption-type] key] authentication-algorithm [key-encryption-type] key
35.3.9 重置OSPFv3进程
OSPFv3重置进程有很多种方法,可以重置整个进程,也可以仅强制SPF重算,也可以仅清除重分布条目
clear ipv6 ospf [process-id] {process | force-spf | redistribution}
35.4 验证OSPFv3配置
35.4.1 查看接口
Router# show ipv6 ospf interface
OSPFv3_VL1 is up, line protocol is up
Interface ID 69
Area 0, Process ID 1, Instance ID 0, Router ID 10.0.0.1
Network Type VIRTUAL_LINK, Cost: 64
Configured as demand circuit.
Run as demand circuit.
DoNotAge LSA allowed.
NULL encryption SHA-1 auth SPI 3944, secure socket UP (errors: 0)
Transmit Delay is 1 sec, State POINT_TO_POINT,
Timer intervals configured, Hello 2, Dead 10, Wait 40, Retransmit 5
Hello due in 00:00:00
Index 1/3/5, flood queue length 0
Next 0x0(0)/0x0(0)/0x0(0)
Last flood scan length is 1, maximum is 1
Last flood scan time is 0 msec, maximum is 0 msec
Neighbor Count is 1, Adjacent neighbor count is 1
Adjacent with neighbor 10.2.0.1 (Hello suppressed)
Suppress hello for 1 neighbor(s)
OSPFv3_VL0 is up, line protocol is up
P a g e | 755
CCIE R/S & Service Provider Exam Certification Guide
Interface ID 67
Area 0, Process ID 1, Instance ID 0, Router ID 10.0.0.1
Network Type VIRTUAL_LINK, Cost: 128
Configured as demand circuit.
Run as demand circuit.
DoNotAge LSA allowed.
MD5 authentication SPI 940, secure socket UP (errors: 0)
Transmit Delay is 1 sec, State POINT_TO_POINT,
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
Hello due in 00:00:09
Index 1/2/4, flood queue length 0
Next 0x0(0)/0x0(0)/0x0(0)
Last flood scan length is 1, maximum is 10
Last flood scan time is 0 msec, maximum is 0 msec
Neighbor Count is 1, Adjacent neighbor count is 1
Adjacent with neighbor 10.1.0.1 (Hello suppressed)
Suppress hello for 1 neighbor(s)
Ethernet1/0 is up, line protocol is up
Link Local Address FE80::A8BB:CCFF:FE00:6601, Interface ID 6
Area 0, Process ID 1, Instance ID 0, Router ID 10.0.0.1
Network Type BROADCAST, Cost: 10
Transmit Delay is 1 sec, State DR, Priority 1
Designated Router (ID) 10.0.0.1, local address FE80::A8BB:CCFF:FE00:6601
No backup designated router on this network
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
Hello due in 00:00:09
Index 1/1/1, flood queue length 0
Next 0x0(0)/0x0(0)/0x0(0)
Last flood scan length is 0, maximum is 0
Last flood scan time is 0 msec, maximum is 0 msec
Neighbor Count is 0, Adjacent neighbor count is 0
Suppress hello for 0 neighbor(s)
Serial11/0 is up, line protocol is up
Link Local Address FE80::A8BB:CCFF:FE00:6600, Interface ID 46
Area 1, Process ID 1, Instance ID 0, Router ID 10.0.0.1
Network Type POINT_TO_POINT, Cost: 64
MD5 authentication (Area) SPI 500, secure socket UP (errors: 0)
Transmit Delay is 1 sec, State POINT_TO_POINT,
Timer intervals configured, Hello 10, Dead 40, Wait 40, Retransmit 5
Hello due in 00:00:09
Index 1/1/2, flood queue length 0
Next 0x0(0)/0x0(0)/0x0(0)
Last flood scan length is 1, maximum is 5
Last flood scan time is 0 msec, maximum is 0 msec
Neighbor Count is 1, Adjacent neighbor count is 1
Adjacent with neighbor 1.0.0.1
Suppress hello for 0 neighbor(s)
35.4.2 查看OSPFv3进程
Router# show ipv6 ospf
Routing Process "ospfv3 1" with ID 172.16.3.3
It is an autonomous system boundary router
Redistributing External Routes from,
static
SPF schedule delay 5 secs, Hold time between two SPFs 10 secs
Minimum LSA interval 5 secs. Minimum LSA arrival 1 secs
LSA group pacing timer 240 secs
Interface flood pacing timer 33 msecs
P a g e | 756
CCIE R/S & Service Provider Exam Certification Guide
Retransmission pacing timer 66 msecs
Number of external LSA 1. Checksum Sum 0x218D
Number of areas in this router is 1. 1 normal 0 stub 0 nssa
Area 1
Number of interfaces in this area is 2
SPF algorithm executed 9 times
Number of LSA 15. Checksum Sum 0x67581
Number of DCbitless LSA 0
Number of indication LSA 0
Number of DoNotAge LSA 0
Flood list length 0
35.4.3 查看OSPFv3加密认证
Router# show crypto ipsec policy
Crypto IPsec client security policy data
Policy name:
OSPFv3-1-1000
Policy refcount: 1
Inbound AH SPI: 1000 (0x3E8)
Outbound AH SPI: 1000 (0x3E8)
Inbound AH Key: 1234567890ABCDEF1234567890ABCDEF
Outbound AH Key: 1234567890ABCDEF1234567890ABCDEF
Transform set: ah-md5-hmac
Router# show crypto ipsec sa ipv6
IPv6 IPsec SA info for interface Ethernet0/0
protected policy name:OSPFv3-1-1000
IPsec created ACL name:Ethernet0/0-ipsecv6-ACL
local ident (addr/prefixlen/proto/port):(FE80::/10/89/0)
remote ident (addr/prefixlen/proto/port):(::/0/89/0)
current_peer:::
PERMIT, flags={origin_is_acl,}
#pkts encaps:21, #pkts encrypt:0, #pkts digest:21
#pkts decaps:20, #pkts decrypt:0, #pkts verify:20
#pkts compressed:0, #pkts decompressed:0
#pkts not compressed:0, #pkts compr. failed:0
#pkts not decompressed:0, #pkts decompress failed:0
#send errors 0, #recv errors 0
local crypto endpt. ::, remote crypto endpt. ::
path mtu 1500, media mtu 1500
current outbound spi:0x3E8(1000)
inbound ESP SAs:
inbound AH SAs:
spi:0x3E8(1000)
transform:ah-md5-hmac ,
in use settings ={Transport, }
slot:0, conn_id:2000, flow_id:1, crypto map:N/R
no sa timing (manual-keyed)
replay detection support:N
inbound PCP SAs:
outbound ESP SAs:
outbound AH SAs:
spi:0x3E8(1000)
transform:ah-md5-hmac ,
in use settings ={Transport, }
slot:0, conn_id:2001, flow_id:2, crypto map:N/R
no sa timing (manual-keyed)
replay detection support:N
outbound PCP SAs:
P a g e | 757
CCIE R/S & Service Provider Exam Certification Guide
Chapter 36 EIGRP IPv6
36.1 EIGRPv6简介
EIGRP本身属于一个支持IP,IPX,Appletalk等多种网络的路由协议,基于EIGRP的大量部署,产生了让
EIGRP扩展TLV的方式来支持IPv6的想法。(IOS 12.4(6)T已经开始支持EIGRPv6)
由于EIGRP的模块化结构,如下图:
EIGRP实现IPv6仅需要定义一个新的协议模块即可。它在IPv6协议栈中引入,协议标识符依旧为88。同
时增加了3个TLV,
IPv6_Request_type
IPv6_Metric_type
IPv6_Exterior_type
但和IPv4的EIGRP相同,使用同样的32位的RouterID,使用同样的Metric计算方式,同时也只能支持基
于MD5的加密认证方式,而OSPFv3可以使用IPSec,IPSec的认证方式在EIGRPv6不可用。但Cisco将在以后的版
本中支持IPSec的认证方式。
EIGRPv6和EIGRP也有很多不同点,首先,它使用链路地址作为Hello报文的源地址,目的地址为组播地
址FF02::A。这样所有的邻居并不需要相同的前缀来建立邻居关系。同时自动汇总在IPv6环境中默认被关闭。
由于IPv6模式下支持单条链路多个地址前缀,所以IPv6并不支持水平分割。
36.2 EIGRPv6配置
36.2.1 EIGRPv6基本配置
首先在全局模式,开启ipv6单播转发
Router(config)#ipv6 unicast-routing
此后可以开启Cisco的快速转发,
Router(config)#ipv6 cef
开启EIGRPv6进程的方式和OSPFv3相似,均在接口上配置,将接口划入EIGRP的某个自治系统即可,
但是需要注意的是,开启完后,无论接口状态是Down还是up,均需要使用No Shutdown命令来激活EIGRPv6
进程。,
Router(config-if)# ipv6 eigrp as-number
Router(config-if)#no shutdown
P a g e | 758
CCIE R/S & Service Provider Exam Certification Guide
Router-ID的选择方式和EIGRPv4相同,但是当路由器中没有任何32位ip地址存在时,进程因为无法
制定Router-ID,会导致无法启动,此时可以在EIGRPv6进程中,手工设置Router-ID。
ipv6 router eigrp as-number
router-id {ip-address | ipv6-address}
no shutdown
查看EIGRP信息如下:
Router1#show ipv6 protocol
IPv6 Routing Protocol is "eigrp 100"
EIGRP metric weight K1=1, K2=0, K3=1, K4=0, K5=0
EIGRP maximum hopcount 100
EIGRP maximum metric variance 1
Interfaces:
FastEthernet0/1.1
Redistribution:
None
Maximum path: 16
Distance: internal 90 external 170
36.2.2 EIGRPv6地址汇总
EIGRPv6同样支持基于链路的地址汇总功能,命令如下
ipv6 summary-address eigrp as-number ipv6-address [admin-distance]
36.2.3 EIGRPv6认证
EIGRPv6仅支持MD5的认证方式
首先需要定义一个Key-Chain
key chain kaka
key 1
key-string mike
accept-lifetime 16:30:00 Nov 28 2004 duration 43200 (持续43200秒)
send-lifetime 16:30:00 Nov 28 2004 duration 43200
key 2
key-string mmike
accept-lifetime 04:00:00 Nov 29 2004 13:00:00 Apr 15 2005(到期时间)
send-lifetime 04:00:00 Nov 29 2004 13:00:00 Apr 15 2005
key 3
key-string mmmike
accept-lifetime 12:30:00 Apr 15 2005 infinite (永远)
send-lifetime 12:30:00 Apr 15 2005 infinite
从一个钥匙到另一个钥匙的迁移(钥匙号从低到高检查) ,系统允许 30min的时间重叠来在
不同的系统始终之间校正
此后需要在接口下激活MD5认证方式
ipv6 authentication mode eigrp as-number md5
如果该命令不执行,链路将不会使用认证
P a g e | 759
CCIE R/S & Service Provider Exam Certification Guide
然后将Key-chain挂接到需要认证的接口上
ipv6 authentication key-chain eigrp as-number key-chain
36.2.4 EIGRPv6设置下一跳
默认情况下EIGRPv6通告路由条目时将下一跳的地址,定义为该路由器的出口地址,可以通过如下
命令改变
no ipv6 next-hop-self eigrp as-number
36.2.5 EIGRPv6参数调整
EIGRPv6和EIGRP类似,还可以对链路带宽占用进行定义,默认占用为50%
ipv6 bandwidth-percent eigrp as-number percent
number
EIGRPv6的Hello间隔时间配置i
ipv6 hello-interval eigrp as-number seconds
EIGRPv6的Hold计时器配置
ipv6 hold-time eigrp as-number seconds
关闭EIGRPv6的水平分割
no ipv6 split-horizon eigrp as-number
36.2.6 EIGRPv6 Stub模式
为了防止SIA状态的产生,EIGRPv6也可以配置Stub模式
ipv6 router eigrp as-number
stub [receive-only | connected | static | summary | redistributed]
36.2.7 监控EIGRPv6
可以通过log消息监控EIGRPv6的邻居变化和邻居通告
ipv6 router eigrp as-number
log-neighbor-changes
log-neighbor-warnings [seconds]
36.2.8 调整EIGRPv6 Metric
EIGRPv6的度量方式和EIGRPv4完全相同,配置方式相似:
ipv6 router eigrp as-number
metric weights tos k1 k2 k3 k4 k5
36.2.9 Debug EIGRPv6
debug eigrp fsm
debug eigrp neighbor [siatimer] [static]
debug eigrp packet
debug eigrp transmit [ack] [build] [detail] [link] [packetize] [peerdown] [sia] [startup] [strange]
debug ipv6 eigrp [as-number] [neighbor ipv6-address | notification | summary]
P a g e | 760
CCIE R/S & Service Provider Exam Certification Guide
36.3 EIGRPv6配置实例
如图所示
Taos路由器的配置如下
ipv6 unicast-routing
interface e0
ipv6 address 2001:db8:0:6::1/64
ipv6 eigrp 1
no shutdown
interface e1
ipv6 enable
ipv6 eigrp 1
no shutdown
interface e2
ipv6 address 2001:db8:0:5::1/64
ipv6 eigrp 1
no shutdown
!
ipv6 router eigrp 1
router-id 10.1.1.1
no shutdown
Sandia路由器可以做如下配置
ipv6 unicast-routing
interface e0
ipv6 address 2001:db8:0:4::1/64
ipv6 eigrp 1
no shutdown
!
ipv6 router eigrp 1
router-id 10.1.1.1
stub summary
no shutdown
P a g e | 761
CCIE R/S & Service Provider Exam Certification Guide
Chapter 37 IS-ISv6
37.1 ISISv6简介
ISIS也是一个基于SPF的路由协议,随着IPv6的发展,ISIS也开始支持IPv6。和EIGRP相同,由于ISIS拥
有TLV字段,而且ISIS对不认识的TLV作忽略处理,故升级支持IPv6非常容易。
ISIS路由协议现通常用在高端的ISP和运营商网络中实施,因为L1/L2架构相对于OSPF的区域灵活很多,
同时,CLNS协议可以对区域进行平滑割接,由于TLV扩展方便,MPLS等众多新特性在ISIS中实施更为便利,是
否支持ISIS,已经成为路由设备提供商是否能够冲击高端领域的一个象征。
37.1.1 ISIS扩展属性
ISIS通过TLV提供了众多的扩展属性:
1. 三方握手
OSPF可以根据对方路由器发送的报文中含有自己的RID确立连接关系建立。ISIS一样,它使用
IS邻居TLV来实现。在LAN链路中,IS-IS路由器通过收到的LAN hello报文中的IS邻居TLV来查看自
己的SysID是否在对方发来的邻居TLV列表中,从而确认双向通讯状态已经确立。但是对于点到点链
路,Hello数据报不携带IS邻居TLV。所以只能建立双向握手,而且要求点到点传输介质是可靠的。
但是现实中,点到点链路通常不可靠,所以ISIS在扩展的时候实现了一种3方握手的机制,来
确保双向连接的可靠性。点到点邻居TLV格式如下:
在这个TLV中,列出了发起它的路由器所知道的所有邻居SysID,并且它也指出了始发路由器
在该链路上可能的邻接关系状态,正常,初始化或失效。
2.扩展度量
在MPLS中,TE是一个非常重要的功能。 在MPLS网络中的数据包的一些子集能够以来用户指定
的约束条件以不同的方式进行转发,也就是说可以不使用IGP那样的总是选择单一最短路径的方式
进行转发,这样可以在同一个网络上对不同的业务流,进行区分传送,例如确保时延敏感的流失用
最短路径,其它数据流使用较长路径等。
ISIS的良好TLV特性,使得它对MPLS的支持非常容易,首先,流连工程的一个关键是需要使用
比度量更为详细的接口参数进行通讯,使用用于共享路径设计的IGP协议和用于共享这些TE接口参
数的借口信息变得有意义,
P a g e | 762
CCIE R/S & Service Provider Exam Certification Guide
ISIS通过两种新的TLV来支持
扩展的IS可达性
扩展的IP可达性
报文格式如下:
扩展IS可达性报文如下,当启用新的扩展度量后,扩展的IS可达性TLV使用32位的
度量字段,修复了以前6位字段不能使用在大型网络中的缺点。同时,扩展的IS可达性
TLV替代了LSP中的类型2的IS邻居TLV。而且它还允许TLV的嵌套,这样对于开发人员实
现新的功能十分方便
扩展IP可达性TLV如下图:
扩展IP可达性TLV用于代替IP内部可达性信息和IP外部可达性信息TLV,它可以出现
在L1和L2的LSP中,同样它也采用一个32位的Metric。同时也支持子TLV功能,并通过子
TLV实现了流量工程
在IOS中,仅需要使用 metric-style wide来实现扩展度量的支持
P a g e | 763
CCIE R/S & Service Provider Exam Certification Guide
37.1.2 ISIS IPv6支持
ISIS通过加入两种新的TLV支持IPv6,它们分别是 IPv6可达性TLV和IPv6借口地址TLV
IPv6可达性TLV如下图,
他用于同时通告内部和外部的前缀信息,同时包含了一个32位的Metric字段支持扩展的
Metric。对于每一个前缀都有一个32位的Metric,同时从L2向L1路由泄露的Up/Down位也被支持。
同时X位支持了内部始发和外部始发的选项。S位表明了子TLV是否存在。
关于路由泄露,在此做一下补充:
起初,L1/L2型结构定义了L2区域默认不向L1区域通告任何前缀,但是如果存在很多的L1/L2
路由器,为了选择到达目的地最近的L1/L2路由器,这就意味着,必须要把前缀从L2区域通告到L1
区域,在ISIS中这种行为被称为路由泄露(Route leaking),
P a g e | 764
CCIE R/S & Service Provider Exam Certification Guide
但是这样做会产生路由选择环路,如图所示,192.168.1.0/24网段,因为Rotterdam不识别这
样的路由条目,被再次从L1通告到L2区域中,为了解决这样的问题,在LSP中设置了U/D位,保证这
样的路由泄露行为不产生路由环路。
IPv6接口地址TLV如下:
和132型的IPV4接口地址TLV相似,并且可以同时被Hello数据包和LSP数据包携带。被
Hello包携带时使用链路本地地址,被LSP携带是,那么通告的地址是地区或全球地址。
37.1.3 ISIS多拓扑结构
在实现ISIS支持ipv6的时候,有多种考虑方式,首先,从节约内存方面考虑,可以使ip和ipv6公用
一种拓扑结构,这样的结构被称为单拓扑结构。但是必须要求Ipv4和Ipv6拓扑结构完全相同,也就是说
需要每个接口要同时启用Ipv4/v6。
随着路由器的发展,内存和flash容量逐渐加大,ISIS则实现了一种多拓扑结构(MT)。每一个拓扑
自行运行一个SPF计算进程。对于不同的拓扑,通过MT ID来识别,一个接口可以拥有多个MT ID。用于
MT ISIS的多拓扑ID如下:
ISIS通过4中TLV支持多拓扑结构:
多拓扑中间系统
多拓扑
多拓扑可达IPv4前缀
多拓扑可达IPv6前缀
在多拓扑结构实现的国成中,对于一个点到点链路,可以通过识别对方的MT ID来决定是否建立邻
接关系,但在广播型链路上,即使没有任何共同的MT ID,邻居之间也会形成一个邻接关系,这是因为
P a g e | 765
CCIE R/S & Service Provider Exam Certification Guide
DR选举独立于所有的扩展特性。 多拓扑TLV不仅Hello报文可以携带,也可以用LSP携带。
对于多拓扑中间系统TLV,格式如下:
多拓扑可达IPv6前缀TLV格式如下:
P a g e | 766
CCIE R/S & Service Provider Exam Certification Guide
37.2 ISISv6配置
37.2.1 ISIS IPv6基本配置
集成ISIS对于IPv4和IPv6协议只需要计算单个SPF来创建单个拓扑,如果在网络中配置了IPv4和
IPv6,那么所有的接口和所有的路由器都必须配置者两种协议。例如,如下拓扑:
首先在全局模式,开启ipv6单播转发
Router(config)#ipv6 unicast-routing
如果需要使用单拓扑的ISIS需要首先在接口上启动ISIS。如Geneva路由器
Hostname Geneva
ipv6 unicast-routing
!
interface FastEthernet0/0
ip address 172.16.4.1 255.255.255.0
ip router isis
ipv6 address 2001:db8:0:4::1/64
ipv6 router isis
!
interface s 0/0.1 point-to-point
ip address 172.16.21.1 255.255.255.0
ip router isis
ipv6 address 2001:db8:0:15::1/64
ipv6 router isis
!
interface FastEthernet0/3
ip address 172.16.3.1 255.255.255.0
ipv6 address 2001:db8:0:3::1/64
ip router isis
ipv6 router isis
!
router isis
net 01.0004.c150.f1c0.00
P a g e | 767
CCIE R/S & Service Provider Exam Certification Guide
37.2.2 ISIS IPv6地址汇总
在路由器模式下,通过如下方法,可以对地址进行汇总:
router isis
address-family ipv6
summary-prefix 2001:db8:0:10::/62
察看路由表结果:
Madrid#show ipv6 route
IPv6 Routing Table - 12 entries
Codes: C - Connected, L - Local, S - Static, R - RIP, B BGP
U - Per-user Static route
I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary
O - OSPF intra, OI - OSPF inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2
I2 2001:DB8::/62 [115/20]
via FE80::204:C1FF:FE50:F1C0, Serial0/0.3
I2 2001:DB8:0:4::/64 [115/20]
via FE80::2B0:64FF:FE30:1DE0, Serial0/0.1
via FE80::204:C1FF:FE50:F1C0, Serial0/0.3
C
2001:DB8:0:8::/64 [0/0]
via ::, Serial0/0.1
L
2001:DB8:0:8::1/128 [0/0]
via ::, Serial0/0.1
C
2001:DB8:0:9::/64 [0/0]
via ::, Serial0/0.2
L
2001:DB8:0:9::1/128 [0/0]
via ::, Serial0/0.2
C
2001:DB8:0:15::/64 [0/0]
via ::, Serial0/0.3
L
2001:DB8:0:15::2/128 [0/0]
via ::, Serial0/0.3
I2 2001:DB8:0:10::/62 [115/20]
via FE80::205:5EFF:FE6B:50A0, Serial0/0.2
L
FE80::/10 [0/0]
via ::, Null0
L
FF00::/8 [0/0]
via ::, Null0
Madrid#
37.2.3 ISIS 宽度量使用
ISIS通过扩展属性支持新的宽Metric模式,通过Metric-style可以修改,修改前:
Zurich#show clns protocol
IS-IS Router: <Null Tag>
System Id: 0000.0C76.5B7C.00 IS-Type: level-1-2
Manual area address(es):
01
Routing for area address(es):
01
Interfaces supported by IS-IS:
Serial0/0.1 - IP - IPv6
Ethernet0/0 - IP - IPv6
Redistribute:
static (on by default)
P a g e | 768
CCIE R/S & Service Provider Exam Certification Guide
Distance for L2 CLNS routes: 110
RRR level: none
Generate narrow metrics: level-1-2
Accept narrow metrics:
level-1-2
Generate wide metrics:
none
Accept wide metrics:
none
Metric-style 支持3种参数
wide, Transition, wide transation.但有区别,wide模式仅
发送和接收宽模式。Translation可以同时发送和接收宽模式和窄模式。而wide Translation 能同
时生成和接收宽模式和窄模式。
router isis
metric-style transition
address-family ipv6
summary-prefix 2001:db8::/62
Zurich#show clns protocol
IS-IS Router: <Null Tag>
System Id: 0000.0C76.5B7C.00 IS-Type: level-1-2
Manual area address(es):
01
Routing for area address(es):
01
Interfaces supported by IS-IS:
Serial0/0.1 - IP - IPv6
Ethernet0/0 - IP - IPv6
Redistribute:
static (on by default)
Distance for L2 CLNS routes: 110
RRR level: none
Generate narrow metrics: level-1-2
Accept narrow metrics:
level-1-2
Generate wide metrics:
level-1-2
Accept wide metrics:
level-1-2
Zurich#
37.2.4 ISISv6 多拓扑模式
ISISv6可以支持多拓扑模式,这样就可以让IPv4和IPv6流量使用不同的拓扑结构。在内存
资源相对宽松的情况下,建议使用多拓扑模式,并且Cisco在IOS软件中提供了过渡模式,可以平
滑的从单拓扑模式过渡到多拓扑模式。多拓扑配置如下
router isis
metric-style wide transition
address-family ipv6
multi-topology transition
配置后
Bonn#show clns is-neighbors detail
System Id
Interface
State Type Priority Circuit Id
Madrid
Se0/0.1
Up
L2
0
00
Area Address(es): 03
IP Address(es): 172.16.9.1*
IPv6 Address(es): FE80::204:C1FF:FE50:E700
Uptime: 00:23:14
NSF capable
Topology: IPv4, IPv6
Format
Phase V
P a g e | 769
CCIE R/S & Service Provider Exam Certification Guide
Frankfurt
Fa0/0
Up
Area Address(es): 03
IP Address(es): 172.16.19.2*
Uptime: 00:23:17
Bonn#
L1
64
Bonn.01
37.2.5 ISIS修改Metric
在接口上可以通过如下命令修改Metric
interface Ethernet 0/0/1
isis ipv6 metric 20
37.2.6 ISIS等价负载均衡
Router(config-router-af)# maximum-paths 3
37.2.7 ISIS安全和认证
ISIS可以在接口上配置密码,配置方法如下:
Router(config-if)#isis password kaka
ISIS可以在接口上配置认证,配置方法如下:
key chain fairy
key 1
key-string dust
!
Interface Ethernet 1
isis authentication mode text
isis authentication key-chain fairy level-2
ISIS认证:
router isis
net 01.0004.c150.f1c0.00
authentication mode md5
authentication key-chain forest
37.2.8 ISISv6 默认路由
Router(config-router-af)# default-information originate
37.2.9 ISISv6 L1/L2重分布
Router(config-router-af)# redistribute isis level-1 into level-2
P a g e | 770
Phase V
CCIE R/S & Service Provider Exam Certification Guide
Chapter38
BGP4+路由协议
38.1 BGP4+简介
传统的 BGP4 只能管理 IPv4 的路由信息,BGP-4 支持的三种 IPV4 信息分别是:Next-hop 属性(用一个 IPV4
地址表示)、Aggregator 属性(包含一个 IPV4 地址)和 NLRI 属性(IPV4 地址前缀)。对于使用其它网络层协议(如 IPv6
等)的应用,在跨自治系统传播时就受到一定限制。
为了提供对多种网络层协议的支持,IETF 对 BGP4 进行了扩展,形成 BGP4+。IPv6 利用 BGP 的多协议扩
展属性,达到在 IPv6 网络中应用的目的,BGP 协议原有的消息机制和路由机制没有改变。为了实现对 IPv6
协议的支持,BGP4 需要将 IPv6 网络层协议的信息反映到 NLRI 及 Next_Hop 属性中。BGP4+中引入的属性分别
是:
MP_PEACH_NLRI,
用来告知对等可行性路径,允许路径告知网络层用于下一跳的路径地址,同意特定地路径报告部
分或所有子网的连接点(SNPAs);
MP_UNREACH_NLRI,
用来撤消服务器上的多路不可行性路由。
为了提供后台兼容性,同时也能简化进入 BGP-4 多路协议的能力的介绍,两种新的属性,多路协议可获
得 NLRI(MP_UNPEACH_NLRI)并且 MBGP 可以用于不可获得的多路协议。MP_PEACH_NLRI 用来携带可获得目的
文件组,同时利用下一跳信息转发这些目的文件。MP_UNPEACH_NLRI 主要用于携带不可获得目的文件。这
两种属性都是可选的且不传递的。按照这种方式,不支持多路协议能力的说话者将忽略这些属性携带的信息,
并不再将它传送给其他 BGP 说话者。
MP_Reach_NLRI格式如下:
P a g e | 771
CCIE R/S & Service Provider Exam Certification Guide
Address Family Identifier(地址族标识):
这个字段携带网络层协议与网络地址的连接标识。目前这个字段定义的值在RFC1700中指定(参见
AddressFamilyNumbers部分)。
SubsequentAddressFamilyIdentifier(并发地址族标识)[kernix3]:
本字段携带包含在属性中的网络层可达信息(NLRI)类型的补充信息。
LengthofNextHopNetworkAddress(下一跳地址长度):
一个字节长度的下一跳地址长度字段,表明了下一跳地址的长度。
NetworkAddressofNextHop(下一跳地址):
本字段长度可变,包含了到达目的系统的下一个路由器的地址。
NumberofSNPAs(SNPA的数目):
一个字节,包含了SNPA的确切数目,如果为0值则表明在这个属性里面包括没有任何SNPA。
LengthofNthSNPA(第N个SNPA的长度):
一个字节长度,表示了下一跳信息中第N个SNPA的长度。
NthSNPAofNextHop(第N个SNPA):
可变长度区域,包含了由NetworkAddressofNextHop域指定地址的路由器的一个SNPA。区域的
长度为整数个字节,即对SNPA的长度半值(半个字节)进行向上取整;如果SNPA包含了奇数个半
字节,那么对该值进行全零的半字节补齐。
NetworkLayerReachabilityInformation(网络层可达信息):
可变长度区域,列出了将在本属性中被通告的可用路由的NLRI信息。当并发地址族标识
(SubsequentAddressFamilyIdentifier)域被设置为RFC2858中定义的某个值时,所有NLRI将会按照
NLRIencoding中指定的方式进行编码处理。
Next-Hop 信息包含在 MP_REACH_NLRI 属性中,当通告一个 MP_REACH_NLRI 属性到一个外部对端时,路
由器将设置本地地址为此路由的 Next-Hop。如果一条路由是由某个 BGPspeaker 发起的,那么它不能通告一
个对端的地址到下一跳对端。BGPspeaker 也不能接受一条将自己认为是下一跳的路由(以免出现路由环路)。
当 BGPspeaker 通告路由到一个内部对端的时候,它不能修改这条路由的下一跳信息。当 BGPspeaker 接
收一条经由内部链路的路由时,如果包含在这个属性中的下一跳地址与本地以及远程 BGPspeaker 是在同一子
网,那么它就有可能转发数据包到下一跳。
携带 MP_REACH_NLRI 属性的 UPDATE 消息必须同样携带 ORIGIN 和 AS_PATH 属性(存在于 EBGP 和 IBGP
交换中)。而且,在 IBGP 交换这样一个消息时,还必须携带 LOCAL_PREF 属性。如果这个消息时来自于外部
对端,本地系统应该检查在 AS_PAHT 属性最左边标记的 AS 是否与发送这个消息的对端的 AS 号码相等。否则
本地系统应该发送携带错误码为 UPDATE 消息出错的 NOTIFICATION 消息,错误子码应该设置为错误 AS_PATH
(MalformedAS_PATH)。
拥有 MP_REACH_NLRI 属性的 Update 报文中不再承载原来的那种 NLRI,也不再拥有 NEXT-HOP 属性,如
果一个路由器接受到报文中包含由 NEXT-HOP 属性,也应该将其忽略。
MP_UNREACH_NLRI:各属性列表如下:
P a g e | 772
CCIE R/S & Service Provider Exam Certification Guide
Address Family Identifier(地址族标识):
本字段携带与下层 NLRI 相关的网络层协议标识。目前这个字段定义的值在 RFC1700 中指定(参
见 Address Family Numbers 部分)。
Subsequent Address Family Identifier(并发地址族标识):
本字段携带包含在属性中的网络层可达信息(NLRI)类型的补充信息。
Withdrawn Routes(撤销路由):
可变长度区域。列出将要被从服务中撤销的路由的 NLRI。当并发地址族标识域被设置为本文
档定义的某个值,每条 NLRI 都按照“NLRI encoding”一节中指定的方式进行编码处理。
包含有 MP_UNREACH_NRLI 属性的 UPDATE 消息并不被要求携带其他路径属性。
38.2 BGP4+配置
38.2.1 基本配置
首先需要建立一个 BGP 进程
Router(config)#router bgp 65001
默认情况下,邻居的建立连接时使用 neighbor x.x.x.x remote-as 命令,此时默认会通告 IPv4 前
缀,但可以通过如下命令关闭
Router(config-router)#no bpg default ipv4-unicast
然后需要指定 BGP 的 Router-id。Ipv6 中选举方法和 IPv4 相同。但同样可以手工指定
Router(config-router)#bgp router-id 1.1.1.1
此后则需要定义 BGP 邻居,定义 BGP 邻居时在 IPv4 中可以选择链路地址和回环口地址。但在
IPv6 环境中更为复杂,由于 BGP 消息使用 TCP 的连接方式,我们可以在 IPv4 或 IPv6 上建立连接关
系,也可以同时建立 ipv4/v6 双栈的 TCP 连接,当定义为双栈连接时,需要注意,默认情况下,BGP
优先使用 IPv4 通信,所以使用双栈时需要做 Route-map 修改 IPv6 的下一跳地址。例如下图拓扑:
A 和 B 可以使 IPv6 的方式建立邻居:
Neighbor 2001:100:3:4::1 remote-as 100
Neighbor 2001:100:3:4::1 peer-group internal
A 和 C 可以建立 ipv4 的邻居关系,但是需要修改 nexthop
Neighbor 200.10.10.1 remote-as 200
Neighbor 200.10.10.1 peer-group external-peer
Neighbor 200.10.10.1 route-map setnh
!
Route-map setnh permit 10
Set ipv6 next-hop 2001:100:3:1::1
配置完成后,默认情况下,仅定义了 TCP 通讯的方式,BGP 并没有激活 ipv6 前缀通告机制.所以需
要将路由器激活
Router(config-router)#address-family ipv6 [unicast]
Router(config-router-af)#neighbor 2001:100:3:4::1 activate
Router(config-router-af)#neighbor external-peer activate
Router(config-router-af)#neighbor 200.10.10.1 activate
IPv6 邻居建立还可以通过使用 ipv6 特有的本地链路地址来建立,这样有个好处,可以和接口上
的 ipv6 地址无关.这样的配置可以方便很多调整,但也带来一些问题.首先有可能一台路由器上所有
P a g e | 773
CCIE R/S & Service Provider Exam Certification Guide
的本地链路地址是完全相同的.这样需要 IOS 区分端口。同时由于使用本地链路地址,BGP 消息经
过传递可能有些非直连路由器不能识别这个本地链路地址,所以在配置中需要修改 nexthop,配置
如下:
Neighbor FE80::ABBB:CCFF:FE01:F600 remote-as 200
Neighbor FE80::ABBB:CCFF:FE01:F600 peer-group external-peer
Neighbor FE80::ABBB:CCFF:FE01:F600 route-map setnh out
!
Route-map setnh permit 10
Set ipv6 next-hop 2001:100:3:1::1
在未来的 IOS 中还会有这样的配置来区分端口:
Neighbor FE80::ABBB:CCFF:FE01:F600%Ethernet0/0 remote-as 200
由于 BGP 路由器对联,可以不使用路由器公告,则可以在接口上禁用
Ipv6 nd suppress-ra
38.2.2 前缀过滤
支持 IPv6 的 BGP4+同样支持前缀过滤,路由策略等功能,首先,我们需要了解 ipv6 前缀列表和 ACL
的用法,IPv6 ACL 如下:
Router(config)#ipv6 access-list kaka
Router(config-ipv6-acl)#permit ?
<0-255>
An IPv6 protocol number
X:X:X:X::X/<0-128> IPv6 source prefix x:x::y/<z>
ahp
Authentication Header Protocol
any
Any source prefix
esp
Encapsulation Security Payload
host
A single source host
icmp
Internet Control Message Protocol
ipv6
Any IPv6
pcp
Payload Compression Protocol
sctp
Streams Control Transmission Protocol
tcp
Transmission Control Protocol
udp
User Datagram Protocol
Router(config-ipv6-acl)#permit 2001:03ab::/32 ?
X:X:X:X::X/<0-128> IPv6 destination prefix x:x::y/<z>
any
Any destination prefix
host
A single destination host
IPv6 Prefix-list 使用方法如下:
Router(config)#ipv6 prefix-list kaka seq 1 permit 2001:3311::/32 ?
ge Minimum prefix length to be matched
le Maximum prefix length to be matched
<cr>
在 BGP 上实现前缀过滤,仅需要将 prefix-list 挂接到邻居通告上
Neighbor 2001:100:3:4::1 prefix-list kaka in
38.2.3 策略路由
IPv6 同样也可以使用 Route-map,如上,我们修改 next-hop 已经使用过 Route-map。Route-map 和
ipv4 相同。首先做匹配。然后通过 set 命令做一些调整。
Router(config-route-map)#match ipv6 ?
address
Match address of route
next-hop
Match next-hop address of route
route-source Match advertising source address of route
Router(config-route-map)#match ipv6 address ?
WORD
IPv6 access-list name
prefix-list IPv6 prefix-list
P a g e | 774
CCIE R/S & Service Provider Exam Certification Guide
然后可以通过 Set 命令进行属性设置
Router(config-route-map)#set ?
as-path
Prepend string for a BGP AS-path attribute
automatic-tag
Automatically compute TAG value
clns
OSI summary address
comm-list
set BGP community list (for deletion)
community
BGP community attribute
dampening
Set BGP route flap dampening parameters
default
Set default information
extcommunity
BGP extended community attribute
interface
Output interface
ip
IP specific information
ipv6
IPv6 specific information
level
Where to import route
local-preference BGP local preference path attribute
metric
Metric value for destination routing protocol
metric-type
Type of metric for destination routing protocol
mpls-label
Set MPLS label for prefix
nlri
BGP NLRI type
origin
BGP origin code
tag
Tag value for destination routing protocol
traffic-index
BGP traffic classification number for accounting
vrf
Define VRF name
weight
BGP weight for routing table
Router(config-route-map)#set ipv6 ?
default
Set default information
next-hop
IPv6 Next hop
precedence IPv6 Precedence
38.2.4 IPv6对等体间交换ipv4路由
该功能通过在纯 ipv6 网络中交换数据实现 ipv4 的互通。如下拓扑:
在路由器 R1 上的配置如下:
r1(config)#ipv6 route ::/0 fa0/1 fe80::1001
r1(config)#router bgp 65100
r1(config-router)#neighbor ipv6-only-peer peer-group
r1(config-router)#neig
r1(config-router)#neighbor 3ffe:b00:ffff:2::2 remote-as 65200
r1(config-router)#address-family ipv4
r1(config-router-af)#neighbor ipv6-only-peer activate
r1(config-router-af)#neighbor ipv6-only-peer soft-reconfiguration inbound
r1(config-router-af)#neighbor 3ffe:b00:ffff:2::2 peer-group ipv6-only-peer
r1(config-router-af)#neighbor 3ffe:b00:ffff:2::2 route-map IPv4-AS65200 in
r1(config-router-af)#exit-address-family
r1(config-router)#route-map IPv4-AS65200 permit 10
r1(config-route-map)#set ip next-hop 132.214.1.1
r1(config-route-map)#exit
P a g e | 775
CCIE R/S & Service Provider Exam Certification Guide
38.2.5 BGP4+通告路由
通告路由的方式和 IPv4 相同,同样为 network 通告和重分布的方法:
Network 通告方式如下,同样支持 Route-map 和后门路由属性
r1(config-router)#address-family ipv6
r1(config-router-af)#network 2001::/32 ?
backdoor Specify a BGP backdoor route
route-map Route-map to modify the attributes
重分布的方式如下:
r1(config-router-af)#redistribute ?
bgp
Border Gateway Protocol (BGP)
connected Connected Routes
eigrp
Enhanced Interior Gateway Routing Protocol (EIGRP)
isis
ISO IS-IS
ospf
Open Shortest Path First (OSPF)
rip
IPv6 Routing Information Protocol (RIPv6)
static
Static Routes
在新的重分布方式中,静态路由可以设置重分布进入的 Metric 值
r1(config-router-af)#redistribute static metic 3 route-map kaka
ISIS 的重分布如下:
r1(config-router-af)#redistribute isis ?
WORD
IPv6 process name
include-connected Include connected
level-1
IS-IS level-1 routes only
level-1-2
IS-IS level-1 and level-2 routes
level-2
IS-IS level-2 routes only
metric
Metric for redistributed routes
route-map
Route map reference
OSPF 重分布如下:
r1(config-router-af)#redistribute ospf 1 ?
include-connected Include connected
match
Redistribution of OSPF routes
metric
Metric for redistributed routes
route-map
Route map reference
r1(config-router-af)#redistribute ospf 1 match ?
external
Redistribute OSPF external routes
internal
Redistribute OSPF internal routes
nssa-external Redistribute OSPF NSSA external routes
EIGRPv6 重分布如下:
r1(config-router-af)#redistribute eigrp 1 ?
include-connected Include connected
metric
Metric for redistributed routes
route-map
Route map reference
RIPng 重分布如下:
r1(config-router-af)#redistribute rip kaka ?
include-connected Include connected
metric
Metric for redistributed routes
route-map
Route map reference
38.2.6 BGP4+认证
BGP4+可以使用基于 ipv6 对等体之间的 MD5 认证
r1(config-router-af)#neighbor 2001::1 password 5 kaka
P a g e | 776
CCIER/S&ServiceProviderExamCertificationGuide
Chapter39
IPv6隧道及NAT-PT
39.1 IPv6隧道简介
IPv6 技术相比 IPv4 技术而言具有许多优势。然而,人们一致认为,IPv6 部署的任何成功策略均需其
在一定持续时期内与 IPv4 共存。为了管理这种从 IPv4 到 IPv6 的长期复杂过渡,人们已制订出许多策略。
以下部分将对若干此类策略予以阐述。
双栈骨干网
在双栈骨干网部署中,网络中的所有路由器均同时保持 IPv4 与 IPv6 协议堆栈。应用程序在
使用 IPv4 或 IPv6 之间进行选择,并由应用程序按照 IP 业务负载的类型与通信的特定需要选择
正确的地址。
如今,双栈路由选择是具有需要两种协议的 IPv4 与 IPv6 组合应用程序网络基础架构的首选
部署策略。然而,该策略却有若干限制:网络中的所有路由器必须升级到 IPv6;路由器还需要
双寻址方案、IPv4 与 IPv6 选路协议的双重管理以及 IPv4 与 IPv6 两个选路表所需的足够存储空间。
通过 IPv4 实现 IPv6 的隧道传输
通过 IPv4 实现 IPv6 的隧道传输方法是在 IPv4 数据包内封装 IPv6 业务负载,通过 IPv4 骨干
网进行发送(如图所示)。这使“孤岛状”IPv6 终端系统和路由器能够通过现有 IPv4 基础架构进行
通信。
如同 RFC2893 所定义的那样,隧道的两个端点需要使用适当的 IPv6 和 IPv4 地址进行配置。
坐落于端点的边缘路由器,通常为双栈路由器,将按照配置转发通过隧道的业务负载。
通用路由封装(GenericRoutingEncapsulation,简称 GRE)隧道
按照通过 IPv4 网络传输数据的定义,GRE 通过将需要传输的数据包封装在 GRE 数据包内,
从而使一个网络协议能够通过另一个网络协议进行传输。GRE 是通过隧道传输 IPv6 业务负载的
一个理想机制。
兼容 IPv4 的隧道或 6over4 隧道
如同在 RFC2893 中定义的那样,这些隧道机制在兼容 IPv4 的 IPv6 地址上自动建立隧道。
兼容 IPv4 的 IPv6 地址将最左侧的 96 位定义为零,后面跟随着一个嵌在最后 32 位中的 IPv4 地
址。例如,0:0:0:0:0:0.64.23.45.21 是一个兼容 IPv4 的地址。
P a g e |777
CCIER/S&ServiceProviderExamCertificationGuide
6to4 隧道
如同 RFC3056 所定义的那样,6to4 隧道使用嵌在 IPv6 地址中的一个 IPv4 地址来确认隧道
的端点,并自动建立隧道(如图所示)。
站内自动隧道寻址协议(Intra-SiteAutomaticTunnelAddressingProtocol,简称 ISATAP)隧道
如同在 draft-ietf-ngtrans-isatap-16 中定义的那样,ISATAP 隧道传输非常类似于 6to4 隧道传
输,但它是为在本地站点或校园网中使用而设计的。ISATAP 地址包含 64 位网络前缀 0000:5EFE
以及一个确认隧道端点地址的 IPv4 地址(如图所示)。
多协议标记交换(Multi-ProtocolLabelSwitching,简称 MPLS)隧道
使用 MPLS 技术,孤立的 IPv6 域能够通过一个 MPLSIPv4 核心网络在彼此间进行通信。因
为 MPLS 转发是基于标记的基础之上,而非基于 IP 包头本身,所以这种实施需要的骨干网基础
设施升级大大减少,核心路由器的重新配置也有所下降,从而为部署 IPv6 提供了一个非常经济
合算的方法。此外,MPLS 固有的 VPN 与业务负载技术维护服务使 IPv6 网络能够通过支持 IPv4VPN
与 MPLS-TE 的基础架构并入 VPN 或外部网络。
P a g e |778
CCIER/S&ServiceProviderExamCertificationGuide
39.2 IPv6隧道配置
39.2.1双栈隧道
我们来看如下拓扑:
在 R1 上的配置示例如下:
r1(config)#interface tunnel 0
r1(config-if)#ipv6 address 3ffe:b00:fff:2::1/64
r1(config-if)#tunnel source 132.214.1.1
r1(config-if)#tunnel destination 132.214.1.2
r1(config-if)#tunnel mode ipv6ip
r1(config-if)#exit
r1(config)#ipv6 route ::/0 tunnel 0
r1(config)#do show ipv6 interface tunnel0
Tunnel0 is up, line protocol is up
IPv6 is enabled, link-local address is FE80::84D6:101 [TEN]
No Virtual link-local address(es):
Global unicast address(es):
3FFE:B00:FFF:2::1, subnet is 3FFE:B00:FFF:2::/64 [TEN]
Joined group address(es):
FF02::1
FF02::2
FF02::1:FF00:1
FF02::1:FFA8:7
MTU is 1476 bytes
ICMP error messages limited to one every 100 milliseconds
ICMP redirects are enabled
ICMP unreachables are sent
ND DAD is enabled, number of DAD attempts: 1
ND reachable time is 30000 milliseconds
Hosts use stateless autoconfig for addresses.
39.2.2 6to4隧道
6to4 Tunnel 是一种通过对 IPv6 报文进行 2 次封装使其在 IPv4 网络中传输的技术,
其配置方法如下:
r1(config)#int loopback 0
r1(config-if)#ip addr 13
r1(config-if)#ip addr 132.214.1.10 255.255.255.0
P a g e |779
CCIER/S&ServiceProviderExamCertificationGuide
r1(config-if)#int fa0/0
r1(config-if)#ipv6 address 2002::1/64
r1(config-if)#int tunnel1
r1(config-if)#no ip address
r1(config-if)#ipv6 unnumbered fastEthernet 0/0
r1(config-if)#tunnel source loopback 0
r1(config-if)#tunnel mode ipv6ip 6to4
r1(config-if)#
r1(config)#ipv6 route 2002::/16 tunnel1
39.2.3 GRE ipv6隧道
GRE 方式封装 IPv6 报文如下:
IPv4 报头
GRE 报头
IPv6 报头
IPv6 有效数据
配置方法如下:
r1(config)#int tunnel 2
r1(config-if)#ipv6 address 3ffe:b00:ffff:2::1/64
r1(config-if)#tunnel source 206.123.31.200
r1(config-if)#tunnel destination 132.214.1.10
r1(config-if)#tunnel mode gre ipv6
39.2.4 ISATAPipv6隧道
站内自动隧道寻址协议(ISATAP: IntraSite Automatic Tunnel Addressing Protocol) 过渡技术就是采用了
双栈和隧道技术,并基于企业网和主机的一种过渡技术。
ISATAP 隧道不仅完成隧道功能,还可以通过 IPv4 网络承载 IPv6 网络的 ND 协议,从而使跨 IPv4 网络
的设备仍然可以进行 IPv6 设备的自动配置。分散在 IPv4 网络中的各个 IPv6 孤岛主机通过 ISATAP 技术自
动获得地址并连接起来。它使用特殊的地址格式:::0:5efe:a.b.c.d 前 64bit 通过向 ISATAP 发送请求获得,
后 64 比特中 5efe 为固定,a.b.c.d 为接口的 IPv4 地址。
ISATAP 在路由器上的配置如下:
Router(config)#int fa0/0
Router(config-if)#ip address 206.123.31.200 255.255.255.0
Router(config)#int tunnel0
Router(config-if)#tunnel source fastEthernet 0/0
Router(config-if)#tunen
Router(config-if)#tunn
Router(config-if)#tunnel mode ipv6ip isatap
Router(config-if)#no ipv6 nd suppress-ra
Router(config-if)#ipv6 address 3ffe:b00:ffff:2::/64 eui-64
P a g e |780
CCIER/S&ServiceProviderExamCertificationGuide
39.2.5自动IPv4兼容隧道
自动隧道的特点是能够完成点到多点的连接,手动隧道仅仅是点到点的连接。IPv4 兼容 IPv6 技术能
够使隧道自动生成。IPv4 兼容 IPv6 隧道只需要告诉设备隧道的起点,终点由设备自动生成——隧道的
端口使用 IPv4 兼容 IPv6 地址。格式如下:
000…000(96bit)
IPv4 地址
配置方式如下:
Router(config)#interface tunnel 0
Router(config-if)# tunnel source fa 0/0
Router(config-if)# tunnel mode ipv6ip auto-tunnel
39.3 IPv6 NAT-PT
NAT-PT 是一种纯 IPv6 节点和 IPv4 节点间的互通方式,所有包括地址、协议在内的转换工作都由网
络设备来完成。支持 NAT-PT 的网关路由器应具有 IPv4 地址池,在从 IPv6 向 IPv4 域中转发包时使用,地
址池中的地址是用来转换 IPv6 报文中的源地址的。此外网关路由器需要 DNS-ALG 和 FTP-ALG 这两种常
用的应用层网关的支持,在 IPv6 节点访问 IPv4 节点时发挥作用。如果没有 DNS-ALG 的支持,只能实现
由 IPv6 节点发起的与 IPv4 节点之间的通信,反之则不行。如果没有 FTP-ALG 的支持,IPv4 网络中的主
机将不能用 FTP 软件从 IPv6 网络中的服务器上下载文件或者上传文件,反之亦然。
39.3.1 NAT-PT分类
NAT-PT 一共有 3 种模式:
1. 静态 NAT-PT,
它使用了一种静态的 ipv6 和 ipv4 地址一一对应的处理方式。类似于 IPv4 中的静态 NAT
2. 动态 NAT-PT
它使用一个 IPv4 地址池,然后再 IPv6 网络中动态的将预定义的 NAT-PT 前缀加到目前的 IPv4 地
址。这种模式需要一个 IPv4 地址池来执行,类似于 IPv4 的动态 NAT
3. NAPT-PT
它使用多个有 NAT-PT 前缀的 IPv6 地址和一个源 IPv4 地址之间多对一的动态映射, 转换同时在
3 层和 UDP/TCP 层上进行。它和 IPv4 中的 PAT 类似。
39.3.2 静态NAT-PT
配置方式如下:
Router(config)#int fa0/0
Router(config-if)#ip address 1.1.1.1 255.255.255.0
Router(config-if)#ipv6 nat
Router(config-if)#int fa0/1
Router(config-if)#ipv6 address 2001:aaaa::1/64
Router(config-if)#ipv6 nat
Router(config-if)#exit
Router(config)#ipv6 nat prefix 2001:aaaa:ffff::/96
Router(config)#ipv6 nat v6v4 source 2001:aaaa::1 1.1.1.1
Router(config)#ipv6 nat v4v6 source 1.1.1.1 2001:aaaa::1
P a g e |781
CCIER/S&ServiceProviderExamCertificationGuide
Router(config)#do show ipv6 nat translation
Prot IPv4 source
IPv6 source
IPv4 destination
IPv6 destination
---------------------------------------------------1.1.1.1
2001:AAAA::1
Tcp
1.1.1.1,80
2001:AAAA::1,80
1.1.1.1,22
2001:AAAA::1,22
39.3.3 动态NAT-PT
Router(config)#int fa0/0
Router(config-if)#ip address 1.1.1.1 255.255.255.0
Router(config-if)#ipv6 nat
Router(config-if)#int fa0/1
Router(config-if)#ipv6 address 2001:aaaa::1/64
Router(config-if)#ipv6 nat
Router(config-if)#exit
Router(config)#ipv6 nat prefix 2001:aaaa:ffff::/96
Router(config)#ipv6 access-list ipv6 permit 2001:aaaa::/48 any
Router(config)#ipv6 nat v6v4 pool ipv4-pool 1.1.1.1 1.1.1.30 prefix-length 24
Router(config)#ipv6 nat v6v4 source list ipv6 pool ipv4-pool
39.3.4 NAPT-PT
Router(config)#int fa0/0
Router(config-if)#ip address 1.1.1.1 255.255.255.0
Router(config-if)#ipv6 nat
Router(config-if)#int fa0/1
Router(config-if)#ipv6 address 2001:aaaa::1/64
Router(config-if)#ipv6 nat
Router(config-if)#exit
Router(config)#ipv6 nat prefix 2001:aaaa:ffff::/96
Router(config)#ipv6 access-list ipv6 permit 2001:aaaa::/48 any
Router(config)#ipv6 nat v6v4 pool ipv4-pool 1.1.1.1 1.1.1.30 prefix-length 24
Router(config)#ipv6 nat v6v4 source list ipv6 pool ipv4-pool overload
P a g e |782
CCIE R/S & Service Provider Exam Certification Guide
第六部分
第40章
第41章
通信原理及异步通讯
PPP 协议
第42章
第43章
第44章
ISDN/DDR
ATM
宽带接入
第45章
第46章
Frame-Relay
城域光网络
P a g e | 783
CCIE R/S & Service Provider Exam Certification Guide
Chapter 40 通信原理及异步通讯
40.1 通信基本定理
40.1.1 Shannon定理
Shannon定理指出在高斯白噪声干扰的条件下通信系统的极限传输速率为:
C = B log 2 1 +
S
N
bit/s
这里C为信道容量,B为信号带宽,S为信号平均功率,N为噪声功率。
从上式可以看出,在保持信道容量不变的前提下,通过增加带宽来降低对传输系统S/N的要求,
由此公式可以看出当S/N<1时,上式仍然可以成立。因此提出信号可以在噪声下传输。
1.
该公式给出了当信号与作用在信道上的起伏噪声的平均功率给定时,在具有一定频带宽度的
信道上,理论上单位时间可能传输(无差错传输
2.
错误概率任意小)的信息量的极限值。
我们可以看出,在给定的传输速率C不变的条件下,频带宽度和信噪比可以互换,既可以通
过增加频带宽度的方法,在较低信噪比的情况下,传输信息。
3.
在较低的信噪比下工作,一方面可以降低对其他系统的影响,另外一方面也增强了自身的保
密性。
4.
扩展频谱以换取信噪比要求的降低,正是扩频通信的重要特点,他有此为扩频通信的应用奠
定了基础。
40.1.2 Nyquist采样定理
即只要采样频率fs>=2fm,其中fm是信号x(t)的最高频率,则由理想采样信号x'(t)就能不失真的
恢复连续时间信号x(t)。但如果信号的最高频率超过了ω s/2(或fm超过了fs/2),那么理想采样信号的频
谱中,各次调制频谱就会互相交叠起来,这就是频谱混叠现象。而用基带滤波器就不能不失真地滤出
基带频谱,恢复出来的信号相对于经x(t)也就失真了。
40.2 数据传输方式
40.2.1 基带传输方式
基带信号,是指消息源的消息直接经过转换器转换成的电信号。基带数据信号的主要特征是:信息
的主要能量集中于从零开始至某一频率的低通型频带,这种基带数据信号所占的低通频带即称为基带,
不搬移基带信号的频谱的传输方式 ———基带传输。
P a g e | 784
CCIE R/S & Service Provider Exam Certification Guide
数字基带信号传输时要求的是无码间串扰,波形的失真不但是容许的,只要没有码间串扰或码间串
扰足够小和噪声足够小,抽样判决时就不发生错误判决,就可通过码元再生电路恢复需要的与发送端相
同的波形。由此看来,减少误码,消除码间串扰,方法也不是唯一的,主要是根据无码间串扰的要求选择不
同的传输特性。
40.2.2 数据频带传输
频带传输——又称调制传输,它是需要对基带数据信号进行调制以实现频带搬移,即将基带 数
据信号的频带搬到话音频带上再传输。只需为一组一个或多个的比特值分配一个特定的模拟信号。前
面的章节指出了模拟信号的三种变化方式:频率,振幅和相移。
数字调制的基本方法有三种:
数字调幅(ASK)
数字调相(PSK)
数字调频(FSK)
1.
FSK频率调制
第 一 种 方 法 称 为 频 移 键 控 (Frequency ShiftKeying,FSK) , 也 叫 频 率 调 制 (Frequency
Modulation,FM),它给数字0和1分别分配一个模拟信号频率。比如,假设0对应一个较高的
频率,而1对应一个较低的频率,那么比特串01001所对应的模拟信号如图所示。调制解
调器在一个指定的时间周期内传输一个适当频率的信号。时间周期的长短不尽相同,因此信
号循环的次数也各异。
只使用两个频率意味着信号每变化一次,就发送一个比特位的数据。这是波特率(信号改
变的频率)和比特率相等的一个特例。频率调制也可以使用更多的频率。比如说,因为两个比
特位就有四个可能的组合,所以可以为这四个组合分别分配一个频率。这样,每个频率变化
将传送两个比特位的数据;也就是说,比特率将是波特率的两倍。
一般而言,n个比特位可以有2^n个组合,每一个组合可以对应2^n个频率中的一个。这
样的话,比特率就是波特率的n倍。
2.
ASK频率调幅
幅 移 键 控 (Amplitude Shift
Keying , ASK),也叫调幅(Amplitude
Modulation, AM),类似于频移键
控。正如你可能猜到的一样,区
别只在于这里的每一个比特组对
应于一个给定大小的
模拟信号。和FSK一样,每个
比特组可以包含一个或多个比特位,这将决定比特率和波特率之间的关系。为了说明问题,
假设设定四个大小级别A1,A2,A3和A4。这些大小级别和两个比特位的对应关系:A1-00 A2-01
A3-10 A4-11
P a g e | 785
CCIE R/S & Service Provider Exam Certification Guide
比特串00110110所对应的模拟信号。在这里比特率是波特率的两倍。两个比特位的每一
个组合(从左向右)对应一个适当大小的信号。同频移键控一样,每个信号的持续周期是固定
不变的。
3.
PSK项移控制
相移键控(Phase Shift Keying, PSK),也叫相位调制(Phase Modulation, PM),也是和前面类
似的一种技术。信号的差异在于相移,而不是频率或振幅。通常,一个信号的相移是相对于
前一个信号而言的。因此,它也经常被人们称为差分相移键控(Differential Phase)。如前所述,
n个比特位的每一个组合可以对应于2个相移中的一个,从而使比特率两倍于波特率。
4.
QAM正交调幅
所有这些简单的技术可以胜任任何数量的信号模式。信号模式的数目越多,意味着比特
率相对于波特率的倍数越大。问题是要提高比特率就必须增加信号的个数,从而也将减小信
号间的差别。如前所述,这将带来一个难题,因为必须拥有能够将各种频率、大小或相移相
差极小的信号区分开来的设备。另外,噪声也有可能使信号发生畸变,从而导致两信号间的
差别无法测量。
一种普遍的解决方案是结合使用频率,振幅和相移,这样不但可以增加合法信号的数目,
也能让信号之间保持较大的差异。一种常用的技术称为正交调幅 (QuadratureAmplitude
Modulation,QAM),它为每个比特组合分配一个给定振幅和相移的信号。一个正交调幅信号
相当于一个调幅信号盒一个相移信号的叠加。根据三角变换定理,可以得到
S(t)=TC×sin(x)+D×cos(x)
40.3 数据传输模式
40.3.1 并行数据传输
并行传输指的是数据以成组的方式,在多条并行信道上同时进行传输。
优点——不需要额外的措施来实现收发双方的字符同步。
缺点——必须有多条并行信道,成本比较高,不适宜远距离传输。
适用场合——计算机等设备内部或两个设备之间距离比较近时的外线上采用。
40.3.2 串行数据传输
串行传输指的是组成字符的若干位二进制码排列成数据流以串行的方式在一条信道上传输。
优点——只需要一条传输信道,易于实现。
缺点——要采取措施实现字符同步。
适用场合——是目前外线上主要采用的一种传输方式。
40.3.3 异步数据传输
异步传输(Asynchronous Transmission): 异步传输将比特分成小组进行传送,小组可以是8位的1个
字符或更长。发送方可以在任何时刻发送这些比特组,而接收方从不知道它们会在什么时候到达。一个
常见的例子是计算机键盘与主机的通信。按下一个字母键、数字键或特殊字符键,就发送一个8比特位
的ASCII代码。键盘可以在任何时刻发送代码,这取决于用户的输入速度,内部的硬件必须能够在任何时
刻接收一个键入的字符。
异步传输存在一个潜在的问题,即接收方并不知道数据会在什么时候到达。在它检测到数据并做出
响应之前,第一个比特已经过去了。这就像有人出乎意料地从后面走上来跟你说话,而你没来得及反应
P a g e | 786
CCIE R/S & Service Provider Exam Certification Guide
过来,漏掉了最前面的几个词。因此,每次异步传输的信息都以一个起始位开头,它通知接收方数据已
经到达了,这就给了接收方响应、接收和缓存数据比特的时间;在传输结束时,一个停止位表示该次传
输信息的终止。按照惯例,空闲(没有传送数据)的线路实际携带着一个代表二进制1的信号,异步传输的
开始位使信号变成0,其他的比特位使信号随传输的数据信息而变化。最后,停止位使信号重新变回1,
该信号一直保持到下一个开始位到达。例如在键盘上数字“1”,按照8比特位的扩展ASCII编码,将发送
“00110001”,同时需要在8比特位的前面加一个起始位,后面一个停止位。
异步传输的实现比较容易,由于每个信息都加上了“同步”信息,因此计时的漂移不会产生大的积
累,但却产生了较多的开销。在上面的例子,每8个比特要多传送两个比特,总的传输负载就增加25%。
对于数据传输量很小的低速设备来说问题不大,但对于那些数据传输量很大的高速设备来说,25%的负
载增值就相当严重了。因此,异步传输常用于低速设备。
40.3.4 同步数据传输
同步传输(Synchronous Transmission):同步传输的比特分组要大得多。它不是独立地发送每个字符,
每个字符都有自己的开始位和停止位,而是把它们组合起来一起发送。我们将这些组合称为数据帧,或
简称为帧。
数据帧的第一部分包含一组同步字符,它是一个独特的比特组合,类似于前面提到的起始位,用于
通知接收方一个帧已经到达,但它同时还能确保接收方的采样速度和比特的到达速度保持一致,使收发
双方进入同步。帧的最后一部分是一个帧结束标记。与同步字符一样,它也是一个独特的比特串,类似
于前面提到的停止位,用于表示在下一帧开始之前没有别的即将到达的数据了。
同步传输通常要比异步传输快速得多。接收方不必对每个字符进行开始和停止的操作。一旦检测到
帧同步字符,它就在接下来的数据到达时接收它们。另外,同步传输的开销也比较少。例如,一个典型
的帧可能有500字节(即4000比特)的数据,其中可能只包含100比特的开销。这时,增加的比特位使传输
的比特总数增加2.5%,这与异步传输中25 %的增值要小得多。随着数据帧中实际数据比特位的增加,开
销比特所占的百分比将相应地减少。但是,数据比特位越长,缓存数据所需要的缓冲区也越大,这就限
制了一个帧的大小。另外,帧越大,它占据传输媒体的连续时间也越长。在极端的情况下,这将导致其
他用户等得太久。
40.4 MODEM及异步通讯接口
40.4.1 Modem
MODEM全称为调制解调器,通过如上叙述的调制解调过程完成数据经由模拟线路转发,通过解调
变为数字信号的传输过程。
数据传输时,一端为DCE一端为DTE,之间采用各种不同的信令连接,其中包括EIA/TIA-232-C,V.35
P a g e | 787
CCIE R/S & Service Provider Exam Certification Guide
和HSSI。 连接线缆中也有区别:
EIA/TIA-232-C使用标准的DB25线缆,使用8根线进行数据传输。
D型串口线缆将Modem和PC连接
集成EIA-232接口路由器和Modem连接
异步接口组通过八爪鱼线缆连接Modem
AUX接口和modem的连接
同时,EIA/TIA标准还定义了数据线的线序及功能
8根数据线的作用如下:
数据传送
2
TxD DTE将数据传输给DCE
3
RxD DTE接受来自DCE的数据
7
GrD 提供电压度量的参考地
硬件流控
4
RTS DTE有空闲缓存
5
CTS CTE有空闲缓存
控制调制解调器
20
DTR 告诉DCE,DTE已经作好接受准备
8
CD 载波检测
6
DSR 数据采集准备就绪
P a g e | 788
CCIE R/S & Service Provider Exam Certification Guide
串行链路通常使用3种接口: DB-9/DB-25/RJ45.同时线缆有反线/直通线之分。例如cisco使用反线,而
Foundry/Extreme使用标准的直通线,在线缆使用中需要注意。
下表为不同路由器之间的连接:
下图为不同接口间的转接器:
错误控制和数据的压缩标准:
错误控制的几个标准:一般包括MNP和LAPM。是两个不同厂商的协议。
压缩:
MNP5有2:1的压缩比
V.42BIS有4:1的压缩比
v.44有6:1的压缩比
调制解调的标准:
开放协议:一般来讲注重v.90和v.92他们的下行速度都是56k。而上行速度v.90为33k。
P a g e | 789
CCIE R/S & Service Provider Exam Certification Guide
v.92有48k
私有协议比如:K56flex和x2 他们都是56k的标准
用v.90协议要注意,如果用两个MODOM互相连接的话。那么速度就是33K。而不是56K。
因为上行速度的原因。
其中,压缩标准和MODON的传输速度是有很大关系的。
比如,使用v.90的标准。用v.42bis的压缩标准的话(4:1)那么理论上速度可以达到
4*56K的下行速度。
40.4.2 配置Modem连接
当将一个Modem接入网络时,很多时候需要配置Modem,配置方法也采用在控制层面上的Telnet
协议,所以逆向Telne就是这样一种方式,从Cisco路由器或者接入服务器telnet连接到modem,从而配置
Modem的速度/响铃次数等各种参数。
反向Telnet使用2000~2999这个端口范围,默认标号为2000+线路号,例如下面配置一个Modem和异
步口连接时,端口为2007
P a g e | 790
CCIE R/S & Service Provider Exam Certification Guide
终止一个反向远程登录会话分两步:首先需要挂起反向远程登录会话,然后再在全局配置模式中终
止会话。要挂起反向远程登录会话,按下Ctrl+Shift+6,再输入x即可。要终止反向远程登录会话,发
布命令disconnect [session number]。用命令show sessions便可以查找出session number。
用命令show sessions和disconnect来终止反向远程登录会话。
用命令ip host可以简化连续的将远程登录连接反向的过程,如下所示:
Router(config)# ip host hostname port ip-address-of-router
hostname WORD Name used to represent the shortcut
port 20XX Port address of asynchronous port,
XX is the absolute line number
ip-address-of-router a.b.c.d IP address of the router
Router#show sessions
Conn Host Address Byte Idle Conn Name
*1
192.168.12.1 192.168.12.1 0 0
192.168.12.1
Router#disconnect 1
Closing connection to 192.168.12.1 [confirm]
用ip host命令简化反向远程登录会话
RouterE(config)#ip host RouterA 2001 192.168.12.1
RouterE(config)#end
RouterE#
RouterE#Router A
Trying modem (192.168.12.1, 2001)... Open
*****************
*Welcome to Router A *
*****************
User Access Verification
Password :
40.4.3 线路类型和编号
如上,我们看到了Con/Line的线路标示,下面对这些线路做一些介绍,当使用固定配置的路由器时,
要提前确定某特定接口的相对线路编号方式时,可使用表中所列的简单规则。
接口
关键字
线路数目
线路号
控制台
con
1
Line 0
异步设备
tty
x
Lines 1 through x
辅助
aux
1
Line x + 1
虚拟终端
vty
y
Line x+1 through y
相关协议的端口分布如下:
Show line 命令可以查看线路状态:
Router>show line
Tty Typ Tx/Rx
A
*
0
CTY
A
1
TTY 9600/9600 -
Modem
-
Roty
-
AccO
-
AccI Uses
0
0
Noise
0
0
Overruns
0/0
0/0
P a g e | 791
CCIE R/S & Service Provider Exam Certification Guide
2
TTY 9600/9600 I
3
TTY 9600/9600 4
TTY 9600/9600 其中
*
表示当前被占用
A
表示活动
I
处于非活动状态
-
-
-
-
0
0
0
0
0
0
0/0
0/0
0/0
要用相对编址配置Cisco 路由器的线路,要用下面的命令:
Router(config)#line line-type line-number
line-type
con
aux
tty
0
0
x-y
Configure relative console line 0
Configure relative auxiliary line 0
Configure the relative tty line, x is the starting
number of the tty lines and y is the last tty line available
vty
0-z Configure relative telnet session line where 0 is the first
line and z is the number of vty lines available
要用绝对编址配置Cisco 路由器的线路:
Router(config)#line line –number
line-number x The absolute line to be configured
稍变化一下前面命令,可以同时配置多条线路:
Router(config)#line first-line last-line
first - line
last - line
x
x
The absolute line to be configured
The absolute line to be configured
40.4.4 异步接口配置
Cisco可以给每个物理终端线路或者一组终端线路配置一个逻辑接口。这些逻辑接口通过
Interface asynchronous num
同时可以使用异步接口组
Interface group-async num
配置时,需要对物理链路和逻辑链路同时进行配置:
配置异步端口线路的命令有许多。
Speed命令确定了线路的速度。线路速度并不是拨号连接的速度,而是DTE到DCE的通信速度。
要实现有效的压缩,线路速度需要大于拨号连接的速度,这是非常重要的;否则,调制解调器就会
缺乏数据,从而浪费了带宽。
用于异步端口的典型的flowcontrol方法是通过硬件实现的。它等价于控制数据流的RTS和CTS。
调制解调器在其缓冲器满时会通知路由器,并通知路由器停止发送数据。
由于在默认情况下, Cisco路由器的异步端口并不接收传入的网络连接,所以用户需要识别在
异步连接上允许使用哪种协议。Transport命令允许用户定义所用的协议(clat、mop、pad、rlogin、telnet
或v120)。Transport input all命令则允许所有的流量类型在线路上传递。
Router#config t
Router(config)#line 65 76
Router(config-line)#speed 115200
Router(config-line)#flowcontrol hardware
Router(config-line)#transport input all
Router(config-line)#modem inout
Router(config-line)#stopbits 1
Router(config-line)#end
Router#
P a g e | 792
CCIE R/S & Service Provider Exam Certification Guide
Modem命令为Cisco接入服务器提供了极大的灵活性。Modem命令可以确定我们所支持的异步连接
的方向。要指定通信的方向,可使用下面的命令:
Router(config-line)#modem direction-preference
Cisco 接入服务器支持许多异步协议,如AppleTalk远程访问协议(Apple Talk Remote Access Protocol,
简写为ARAP)、串行线路Internet 协议( Serial Line Internet Protocol,简写为SLIP)和点到点协议(Point to Point
Protocol,简写为PPP)。Cisco IOS中autoselect命令可以检测正在使用的协议。要配置异步线路以支持不同
的协议,可使用下面的命令:
Router(config-line)#autoselect protocol
Protocol
arap
Support ARAP connections
during-log in
Support character-based connections
ppp
Support PPP connections
slip Support
SLIP connections
其他的许多命令中,提出的选项不是这个协议就是那个协议,与此不同,多次使用autoselect命令
来支持感兴趣的协议是很司空见惯的事情。
配置一条异步线路以支持传入的连接
Router(config)#line 65 76
Router(config-line)#modem dialin
配置PPP、ARAP和during login的命令
Router(config)#line 65 76
Router(config-line)#autoselect ppp
Router(config-line)#autoselect arap
Router(config-line)#autoselect during-login
当两个调制解调器建立连接后使用电子公告牌系统时,用户大概需要回车多次才可出现用户名/口
令提示符。这种终端连接在Hyper Termianl或Kermit等程序下是很正常的。通过autoselect during-login
命令,只要用户建立起与接收调制解调器的连接, Cisco 接入服务器就可以立即显示提示符。如果用户
用的是终端程序如Hyper Termianl等来建立连接,那么就会看到一个登录屏幕。如果用户用PPP连接,那
么,一建立连接就可以开始发送包。
对于标准的串口也可以配置成异步模式来支持Modem的连接,配置方式如下:
Router(config-if)#physical-layer async
40.4.5 Modem配置
调制解调器的配置方法有3种:
1. 反向Telnet
2. 自动发现
3. 自动配置
首先我们来看反向Telnet的配置,
当反向Telnet登录到Modem后需要输
入AT指令集,然后在调制解调器上完
成
1. 应答呼叫
2. 操作硬件流控
3. 锁定DTE速率
4. 退出后会话挂起
5. 使CD信号如实地反映载波状况
P a g e | 793
CCIE R/S & Service Provider Exam Certification Guide
不同厂商间的AT指令时不同的,入下图,但后期几乎都采用兼容Hayes的AT指令集.
AT命令集可以分解为两种不同的指令:配置命令和操作命令(通常称为S-Registers)。为了能给大多
数调制解调器发送命令,用户必须用AT命令启动。从中,通过使用一系列彼此互补的命令,用户可以配
置调制解调器的各种属性。
需要配置的各种属性
配置命令
操作命令
定义流控制
拨入电话号码
设置调制
挂起电话
设置数据压缩
测试调制解调器
定义RS-232信令特征
询问调制解调器
各种Cisco MICA AT命令
要求的效果
命令
设置为出厂默认值
&F
应答电话
S0=1
启用到工作站的命令回显
E1
使用V.90调制
S29=6
这套命令集非常有限,可能不会按照用户希望的方式初始化调制解调器。创建调制解调器脚本时要
做一件非常重要的工作,就是将调制解调器设置回为出厂默认值。由于在调制解调器中可以设置的变量
很多,所以需要确定我们的工作是从一种已知的状态开始的。将几个AT命令是搁在一起的,这称为初始
化字符串(initialization string),如下:
AT&FS0=1E1S29=6
如上字符串代表了,首先初始化Modem 在电话响铃1次后启动V.90 的连接,并启动到工作站的命令
回显模式。
调制解调器也可以采用自动配置的方式:首先需要编辑Modem Cap数据库,,然后再使用调制解调
P a g e | 794
CCIE R/S & Service Provider Exam Certification Guide
器自动配置。Show modemcap可以看到cisco数据库中默认支持多种modem。
调制解调器自动配置用于使连在Cisco 接入服务器上的调制解调器的配置自动进行。针对一些最常
用的调制解调器, Cisco 接入服务器带有许多预配置的初始化字符串。预配置的初始化字符串存储在
modemcap数据库中。
以下是Cisco IOS 11.3所带的位于modemcap数据库中的一些入口:
a) codex_3260
f) viva
j)
nec_v34
b) usr_courier
g) telebit_t3000
k)
nec_v110
c) usr_sportster
h) microcom_hdms
l)
nec_piafs
d) hayes_optima
i) microcom_server
m) cisco_v110
e) global_village
n) mica
除前面的入口外,用户还可以创建自己的初始化字符串。例如因为不使用其中列出的任何调制解调
器,或者因为需要修改预配置的脚本时,我们大概就需要创建自己的初始化字符串。每种modemcap数
据库入口使用的是特定供应商自己独特的一套命令集。要查看某种特定的modemcap入口,可以使用
show modemcap命令。显示出一列usr_courier modemcap入口知道的配置参数。
Router#show modemcap usr_courier
Modemcap values for usr_courier
Factory Defaults (FD): &F
Autoanswer (AA): S0=1
Carrier Detect (CD): &C1
Drop with DTR (DTR): &D2
Hardware Flowcontrol (HFL): &H1&R2
Lock DTE speed (SPD): &B1
DTE locking speed (DTE): [not set]
Best Error Control (BER): &M4
Best Compression (BCP): &K1
No Error Control (NER): &M0
No Compression (NCP): &K0
No Echo (NEC): E0
No Result Codes (NRS): Q1
Software Flowcontrol (SFL): [not set]
Caller ID (CID): [not set]
On-hook (ONH): H0
Off-hook (OFH): H1
Miscellaneous (MSC): [not set]
Template entry (TPL): default
Modem entry is built-in.
创建新的modemcap数据库入口
如果modemcap数据库的入口不能满足要求,那么您可以创建新的人口。在创建新的入口之前,
我们必须知道需要修改的属性及其相应的命令、以及新的modemcap入口。我们可以修改以下属性:
自动应答。
最佳压缩。
最佳错误控制。
呼叫者ID。
载波检测。
DTR。
出厂默认值。
硬件流控制。
其他命令。
无压缩。
无回显。
无错误控制。
无结果。
软件流控制
锁定调制解调器速度。
要创建并编辑一个新的modemcap入口,可使用modemcap edit命令。Modemcap edit命令的
格式如下:
Router(config)#modemcap edit entry-name attribute-name setting
P a g e | 795
CCIE R/S & Service Provider Exam Certification Guide
entry-name
WORD
attribute-name
autoanswer
best-compression
best-error-control
caller-id
carrier-detect
dtr
factory-default
hardware-flowcontrol
miscellaneous
no-compression
no-echo
no-error-control
no-results
(quiet mode)
software-flowcontrol
speed
创建一个新的modemcap入口
Name for the new modemcap entry
Edit entry for autoanswer
Edit entry for best copression
Edit entry for best error control
Edit entry for Caller ID
Edit entry for carrier-detect
Edit entry for DTR
Edit entry for factory default
Edit entry for hardware flowcontrol
Edit entry for miscellaneous commands
Edit entry for no compression
Edit entry for no echo
Edit entry for no error control
Edit entry for no results
Edit entry for software flowcontrol
Edit entry for locking modem speed
Router(config)#modemcap edit TestModem autoanswer AA
修改的假想的Test Modem调制解调器的自动应答属性。然而,在实际情况中,您大概需要修改许多
属性,此时,您需要给每个属性都输入modemcap edit命令。注意modemcap数据库是区分大小写的。如
果用户不注意,就可能意外地创建名称相同而大小写不同的多个入口。
有时,我们也许会想扩展modemcap数据库中一个入口的功能。但很遗憾,我们不能修改任何预定
义的modemcap入口。因此,这时我们必须创建一个与已经定义的那个modemcap入口非常相似的
modemcap入口。因为这里的命令的含义都很隐晦(如&f),所以创建modemcap数据库入口比较费事,
而且很容易出错。
Cisco提供了一种方法,可使用户利用预定义的modemcap入口作为模板来创建新的modemcap入口。
因为是从已知的良好状态下创建入口,并从此处进行修改,所以就减少了可能出现的错误。复制预定义
的modemcap入口的命令如下:
Router(config)#modemcap edit new-modemcap-entry template
predefined-modemcap-entry
new-modemcap-entry WORD Name for the new modemcap entry
predefined-modemcap-entry WORD Name of the modemcap entry to copy
用户需要注意,该命令需要从全局配置模式下执行。从这里,用户可以用modemcap edit命令修改
新的modemcap入口,该入口存储在位于NVRAM的配置文件中。
另一种配置方式是Modem自动发现:
Router(config-line)#modem autoconfigure discovery
P a g e | 796
CCIE R/S & Service Provider Exam Certification Guide
同时可以使用脚本文件来配置modem来指导调制解调器初始化、拨出、登录到远程系统。对话
脚本是通过接收一些期望的输入并将一些预定义的数据作为结果发送出去而进行的。以下是创建一
个对话脚本的命令:
Router(config)# chat-script chat-script-name expect-string send string
chat-script-name
expect-string
send-string
WORD Name for the new chat script
WORD Expected string
WORD Response string
要定义两台设备间发生的信号交换,对话脚本就要对预期的输入进行处理并发送对。例如当执
行AT命令时,将会得到来自调制解调器的“ OK”信号。这就告诉我们调制解调器正在活动,可以
发送另一个命令,如发送AT D T拨叫电话号码。Start-chat命令可使用户在任何一个未使用的异步线
路上启动对话脚本。命令的格式如下:
Router(config)# start-chat chat-script-name line-typecon line-number
chat-script-name
line-type
line-number
WORD
con
aux
tty
vty
x
Name of the chat script
Apply to the console line
Apply to the auxiliary line
Apply to the asynchronous line
Apply to the telnet line
Apply to this absolute line number
有许多命令可以帮助我们检验调制解调器的配置并解决其故障。如show line命令可显示Cisco 接入
服务器的基本线路。用户可以用debug confmodem命令来调试调制解调器的配置过程。这对于确定初
始化时调制解调器的故障类型、或者它究竟是否进行了初始化是非常有用的。
在断开连接时debug confmodem命令的输出
06:18:40: %LINK-5-CHANGED: Interface Async65, changed state toreset
06:18:45: %LINK-3-UPDOWN: Interface Async65, changed state to down
06:18:46: TTY65: detection speed (115200) response —OK—
06:18:46: TTY65: Modem command: -AT&F-06:
18:46: TTY65: Modem configuration succeeded
06:18:46: TTY65: Detected modem speed 115200
06:18:46: TTY65: Done with modem configuration
解决故障的另外的命令之一就是debug modem命令该命令可让用户看到物理层建立过程中的发展
进程。当呼叫Cisco 接入服务器时debug modem命令的输出
Router#debug modem
Modem control/process activation debugging is on
06:23:31: Modem 2/4 Mica: configured for Answer mode, with Null
signaling, 0x0 tone detection.
06:23:31: Modem 2/4 Mica: in modem state CALL_SETUP
06:23:32: Modem 2/4 Mica: in modem state CONNECT
06:23:36: Modem 2/4 Mica: in modem state LINK
06:23:45: Modem 2/4 Mica: in modem state TRAINUP
06:23:47: Modem 2/4 Mica: in modem state EC_NEGOTIATING
06:23:48: Modem 2/4 Mica: in modem state STEADY
06:23:48: Modem 2/4 Mica: CONNECT at 33600/31200 (Tx/Rx), V34+,
LAPM, V42bis
06:23:48: TTY69: DSR came up
06:23:48: tty69: Modem: IDLE->READY
06:23:48: TTY69: EXEC creation
06:23:48: TTY69: set timer type 10, 30 seconds
06:23:50: TTY69: Autoselect(2) sample 7E
P a g e | 797
CCIE R/S & Service Provider Exam Certification Guide
06:23:50: TTY69: Autoselect(2) sample 7EFF
06:23:50: TTY69: Autoselect(2) sample 7EFF7D
06:23:50: TTY69: Autoselect(2) sample 7EFF7D23
06:23:50: TTY69 Autoselect cmd: ppp negotiate
06:23:50: TTY69: EXEC creation
06:23:50: TTY69: create timer type 1, 600 seconds
06:23:50: TTY69: destroy timer type 1 (OK)
06:23:50: TTY69: destroy timer type 0
06:23:52: %LINK-3-UPDOWN: Interface Async69, changed state to up
用户可以看到建立呼叫时MICA调制解调器2/4通过的各个阶段。它采用LAPM进行压缩,用V. 42bis
进行错误校正,协议以33600bps的速度下载并以31200bps的速度上载。
40.4.6 Modem拨号连接实例
如下拓扑,由于Modem连接速率较低,线路备份等功能以及不需要用PSTN来实施,所以很多情况
下,Modem的连接方式将用来进行远程网络设备配置。
配置路由器A
1.连接设备
1)
应用连到25引脚公头电缆的RJ45头,将一个USRobotics调制解调器连接到路由器A
的AUX端口。
2)
将标准的POTS线路插到连在路由器A上的调制解调器上。
3)
用连到25引脚公头电缆的9引脚母头,将调制解调器与管理计算机连接。
4)
USRobotics调制解调器连在了管理计算机上,将剩余的POTS线路插入USRobotics调
制解调器。
2.配置AUX端口
5)用相对编址配置AUX端口。
RouterA(config)#lineaux0
6)在AUX端口上启用口令校验。
RouterA(config-line)#login
RouterA(config-line)#passwordcisco
7)允许入站和出站会话。
RouterA(config-ce)#modeminout
8)允许任何传输协议连接到该端口。
RouterA(config-line)#transportinputall
9)设置AUX端口的线路速度。
RouterA(config-line)#speed38400
10)定义使用停止位的个数。
RouterA(config-line)#stopbits1
P a g e | 798
CCIE R/S & Service Provider Exam Certification Guide
11)定义流控制方法。
RouterA(config-line)#flowcontrolhardware
3.配置回送接口
12)创建回送接口。
RouterA(config)#interfaceloopback1
13)分配用于反向telnet的IP地址。
RouterA(config-if)#ipaddress192.168.1.1255.255.255.0
4.配置调制解调器
14)为反向远程登录到调制解调器创建别名。
RouterA(config)#iphostauxmodem2001192.168.1.1
15)反向登录到调制解调器。
RouterA#telnetauxmodem
16)输入第9步中的AUX调制解调器口令。
Password:cisco
17)将调制解调器设置回为出厂设定默认值。
AT&F
18)将调制解调器设置为正常的CD操作。
AT&C1
19)将调制解调器设置为正常的DTR操作。
AT&D2
20)将调制解调器设置为使用硬件流控制。
AT&H1
21)将调制解调器设置为只在RTS上接收数据。
AT&R2
22)确定串行端口数据速率。
AT&B1
23)禁用数据压缩。
AT&K0
24)将调制解调器设置为在第1次振铃时应答。
ATS00=001
25)断开反向远程登录会话。
RouterA#disconnect1
任务2—拨入路由器A上的AUX端口
1)打开管理计算机上的HyperTerminal。
2)命名您准备创建的连接(如“调制解调器”)。
3)选择调制解调器连接的COM端口。
4)将调制解调器设置为出厂默认值(如果不这样做,会导致以外的情况发生)。
AT&F
5)拨打连接在路由器A上的调制解调器的电话号码。
ATDT54749110
P a g e | 799
CCIE R/S & Service Provider Exam Certification Guide
6)输入任务1的第9步中的AUX调制解调器口令。
Password:cisco
路由器A配置文件
hostname RouterA
!
enable secret cisco
!
ip subnet-zero
ip host auxmodem 2001 192.168.1.1
!
interface Loopback1
ip address 192.168.1.1 255.255.255.0
no ip directed-broadcast
!
interface Ethernet0
no ip address
no ip directed-broadcast
shutdown
!
interface Serial0
no ip address
no ip directed-broadcast
shutdown
!
no ip address
no ip directed-broadcast
shutdown
!
ip classless
!
line con 0
transport input none
line aux 0
password cisco
login
modem Inout
transport input all
stopbits 1
flowcontrol hardware
line vty 0 4
login
!
end
Modem数据链路配置
San Jose的配置:
SJ(config)#int async 1
SJ(config-if)#ip addr 10.1.1.1 255.255.255.0
SJ(config-if)#encapsulation ppp
SJ(config-if)#ppp authentication chap
SJ(config-if)#dialer in-band
SJ(config-if)#dialer map ip 10.1.1.2 name SF modem-script hayes56K 5551002
SJ(config-if)#dialer-group 1
SJ(config-if)#exit
SJ(config)#dialer-list 1 protocol ip permit
SJ(config)#lin aux 0
SJ(config-line)#login
SJ(config-line)#pass cisco
SJ(config-line)#speed 115200
SJ(config-line)#flowcontrol hardware
SJ(config-line)#stopbits 1
SJ(config-line)#transport input all
SJ(config-line)#modem inout
SJ(config-line)#modem autoconfigure type hayes_optima
SJ(config-line)#chat-s
P a g e | 800
CCIE R/S & Service Provider Exam Certification Guide
SJ(config-line)#chat-scr
SJ(config-line)#chat-scri
SJ(config-line)#exit
SJ(config)#chat-s
SJ(config)# chat-script hayers56k ABORT ERROR ABORT BUSSY "" "ATZ" OK "ATDT\T" timeout
30 conenct \c
SJ(config)#ip route 172.16.2.0 255.255.255.0 10.1.1.2
San Francisco配置:
SF(config)#interface S0/1
SF(config-if)#physical-layer async
SF(config-if)#ip addr 10.1.1.2 255.255.255.0
SF(config-if)#encapsulation ppp
SF(config-if)#ppp authentication chap
SF(config-if)#dialer in-band
SF(config-if)#dialer map ip 10.1.1.1 name SJ modem-script hayes56K 5551001
SF(config-if)#dialer-group 1
SF(config-if)#exit
SF(config)#dialer-list 1 protocol ip permit
SF(config)#line 2
SF(config-line)#login
SF(config-line)#pass cisco
SF(config-line)#speed 115200
SF(config-line)#flowcontrol hardware
SF(config-line)#stopbits 1
SF(config-line)#transport input all
SF(config-line)#modem inout
SF(config-line)#modem autoconfigure type hayes_optima
SF(config-line)#exit
SF(config)#chat-script hayers56k ABORT ERROR ABORT BUSSY "" "ATZ" OK "ATDT\T" timeout
30 conenct \c
SF(config)#ip route 0.0.0.0 255.255.255.0 10.1.1.1
关于支持大规模Modem拨入的Cisco接入服务器的配置(例如基于16300的拨号),我们将在后述的章
节讲解ISP实现多种接入组合的时候讲述.
P a g e | 801
CCIE R/S & Service Provider Exam Certification Guide
Chapter41
PPP协议
41.1 PPP协议简介
41.1.1 协议简介
PPP(Point-to-Point Protocol 点到点协议)是为在同等单元之间传输数据包这样的简单链路设计的链路
层协议。这种链路提供全双工操作,并按照顺序传递数据包。设计目的主要是用来通过拨号或专线方式
建立点对点连接发送数据,使其成为各种主机、网桥和路由器之间简单连接的一种共通的解决方案。目
前大多数模拟拨号连接都采用 PPP 做为数据链路协议,主要有下面特点:
错误检测
自动协商网络层地址
CHAP or PAP 认证
数据压缩
符合 ISO 标准
41.1.2 PPP协议组件
PPP 协议中提供了一整套方案来解决链路建立、维护、拆除、上层协议协商、认证等问题。PPP 和
串行线路 Internet 协议(SLIP)常常使人混淆,PPP 在很多方面都优于 SLIP,其中最重要的一点是它的可扩
展性, SLIP 仅仅支持 IP 协议,PPP 支持 IP、IPX、以及 AppleTalk 等多协议。PPP 由以下 3 个组件组成:
封装方法(HDLC)
链路控制协议(Link Control Protocol,LCP)
网络控制协议(Network Control Protocol,NCP)
PPP 认证方面可以采用如下两种方式认证
口令验证协议 PAP(Password Authentication Protocol)
挑战握手验证协议 CHAP(Challenge-Handshake Authentication Protocol)。
与 PPP 相关的 RFC:
RFC1144
TCP/IP 数据包压缩
RFC1220
PPP 在网桥上的扩充
RFC1334
PPP 认证协议
RFC1378
PPP AppleTalk 控制协议(ATCP)
P a g e | 802
CCIE R/S & Service Provider Exam Certification Guide
RFC1552
PPP 互联网数据包交换控制协议(IPXCP)
RFC1570
PPP LCP 协议扩充
RFC1661
PPP 协议(PPP)
RFC1662
PPP 中的 HDLC 封装
RFC1990
PPP 多链路协议(MP)
注:在 http://www.isi.edu/in-notes/rfcxxxx.txt 概要,xxxx 代表 RFC 的编号。
41.1.3 HDLC
PPP 是一种面向位的协议,可在同步或异步链路上运行。PPP 使用高级数据链路控制(High-level Data
Link Control,HDLC)的变体作为封装的基础。这种封装在同一条链路上同时为多个网络层协议提供多路
复用技术(multiplexing)。
HDLC 规程主要由 HDLC 帧结构、规程要素、规程类别三个部分组成。 为了能够实现 HDLC 的基本功
能并能按照各项标准的规定灵活采用不同的 CRC 校验算法,我们必须了解 HDLC 基本的帧结构形式。
HDLC 是面向比特的链路控制规程,其链路监控功能通过一定的比特组合所表示的命令和响应来实现,
这些监控比特和信息比特一起以帧的形式传送。
以下是 ISO/IEC 3309 标准规定的 HDLC 的基本帧结构。
起始标志
地址数据
01111110
8bits
控制数据
8bits
信息数据
8bits
帧校验序列
结束标志
16 或 32bits
01111110
其它的 HDLC 标准也有类似的 HDLC 帧结构。每帧的起始和结束以“7E”(01111110)做标志,两个
“7E”之间为数据段(含地址数据、控制数据、信息数据)和帧校验序列。帧校验采用 CRC 算法,对除
了插入的“零”以外的所有数据进行校验。为了避免将数据中的“7E”误为标志,在发送端和接收端要
相应地对数据流和帧校验序列进行“插零”及“删零”操作。
各种 HDLC 协议间的区别之一是帧校验序列的 CRC 算法不同,这种不同表现在几个方面:
1.
HDLC 帧校验序列的位数不同,如 16 位和 32 位等;
2.
CRC 生成多项式不同,如对于 16 位的 CRC,CCITT V .41 标准的多项式是 x16+x12+x5+1,
ANSI CRC-16 标准的多项式是 x16 +x15+x2+1 等;
3.
CRC 序列的起始化条件不同,如可以初始化为全“0”、全“1”等;
4.
CRC 计算结果的处理方式不同,如可以直接把 CRC 结果发送,或对 CRC 结果取反后再
发送等;
5.
对接收到的数据做 CRC 校验时,合格判据不同,因为有了上述的不同处理自然会得到
不同的结果,由此造成合格判据不同。
41.1.4 LCP
LCP 链路控制协议(Link Control Protocol)赋予 PPP 以多功能性,考虑到包格式、包大小和认证的协商。
它还使 PPP 具有确定何时线路为失败、何时正常运行的功能。
LCP 用于配置和测试数据链路,工作方式如下:
第1步
链路建立阶段―――首先打开连接,然后确定相关通信参数(包括 MTU、compress type、
及链路认证类型。链路设置完后确认帧,然后是可选的链路质量确认阶段,LCP 确
定链路质量
第2步
可选(必要)的认证阶段―――两种认证方式:质询应答握手认证协议(CHAP)和密码认
证协议(PAP)。PPP 本身不需要认证,cisco 路由器异步线路需要认证,建议使用 CHAP
认证方式。
P a g e | 803
CCIE R/S & Service Provider Exam Certification Guide
第3步
网络层协议阶段―――LCP 引导 NCP 激活和配置网络层协议。这一阶段结束后即可
传输数据包。
第4步
链路终止阶段―――LCP 指导 NCP 关闭 layer 3。
LCP 使用 3 种类型 LCP 数据帧完成上述步骤:
链路建立帧(Link establishment frames)―――建立链路
链路终止帧(Link terminateon frames)―――关闭链路
链路维护帧(Link maintenance frames)―――维护链路
除了身份认证方法之外,PPP 的 LCP 还提供了链路压缩、回叫、多链路捆绑等选项。
1.
链路压缩
PPP 协议运行在速率十分有限的点到点串行链路上。为了提高数据发送效率,可以采用
对数据进行压缩后再传送的方法,我们将其称为链路压缩。
LCP 支持以下一些链路压缩方法:Stac、Predictor、MPPC 以及 TCP 头部压缩。不同的方
法对 CPU 及内存的需求并不相同。有些需要更多的内存(内存密集型),有些则需要占用更
多的 CPU 时间(CPU 密集型)。压缩原理和效果也不相同。
A.
Stac:Stac 压缩算法基于 Lempel-Ziv 理论,它通过查找、替换传送内容中的重复字符
串的方法达到压缩数据的目的。使用 Stac 压缩算法可以选择由各种硬件(适配器、模
块等)压缩或者由软件进行压缩,还可以选择压缩的比率。Stac 压缩算法需要占用较
多的 CPU 时间。
B.
MPPC:MPPC 是微软的压缩算法实现,它也是基于 Lempel-Ziv 理论,也需要占用较多
的 CPU 时间。
C.
Predictor:Predictor—预测算法通过检查数据的压缩状态(是否已被压缩过)来决定
是否进行压缩。因为,对数据的二次压缩一般不会有更大的压缩率。相反,有时经过
二次压缩的数据反而比一次压缩后的数据更大。Predictor 算法需要占用更多的内存。
D.
TCP 头部压缩:TCP 头部压缩基于 Van Jacobson 算法,该算法通过删除 TCP 头部一些
不必要的字节来实现数据压缩的目的。
2.
回叫
回叫又称为回拨,是指当通信一方拨号到另一方后,由另一方断开拨号连接并进行反向
的拨号。
这对于从甲地到乙地的电话费大于从乙地到甲地的电话费的情形。这时,可以由甲方首
先发起到乙方的呼叫连接,当乙方收到甲方的呼叫请求后,断开乙方的呼叫。然后,从乙方
发起到甲方的回叫。甲方应答后,双方的通信链路就建立起来了。
回叫还有更安全的优点。因为乙方在回叫之前可以验证对方是否是合法用户,或者可以
用口令数据库的方法或者可以用检验对方电话号码的方法。
3.
多链路捆绑
LCP 的多链路捆绑(MP)选项通过将通信两端之间的多条通信链路捆绑成一条虚拟的
链路而达到扩充链路可用带宽的目的。
LCP 的多链路捆绑可以在多种类型的物理接口上实现,包括异步串行接口、同步串行接
口、ISDN 基本速率接口 BRI、ISDN 主速率接口 PRI。LCP 的多链路捆绑也支持不同的上层协议
封装类型,如 X.25、ISDN、帧中继等。
P a g e | 804
CCIE R/S & Service Provider Exam Certification Guide
41.1.5 NCP
NCP 网络控制协议(Network Control Protocol)实际上是一套协议。每个子协议都是为处理各自网络层
协议所需的错综复杂的配置而设计的。
当 LCP 将链路建立好了以后,PPP 要开始根据不同用户的需要,配置上层协议所需的环境。PPP 使
用网络控制协议 NCP(Network Control Protocol,NCP)来为上层提供服务接口。针对上层不同的协议类
型,会使用不同的 NCP 组件。如对于 IP 提供 IPCP 接口,对于 IPX 提供 IPXCP 接口,对于 APPLETALK 提
供 ATCP 接口等。同时对于 IP 网络,提供 IP 地址,子网掩码和默认网关等地址的配置。
41.1.6 PPP协议帧结构
PPP 帧格式和 HDLC 帧格式相似,如图所示。
二者主要区别:PPP 是面向字符的,而 HDLC 是面向位的。
可以看出,PPP 帧的前 3 个字段和最后两个字段与 HDLC 的格式是一样的。标志字段 F 为 0x7E(0x 表
示 7E),但地址字段 A 和控制字段 C 都是固定不变的,分别为 0xFF、0x03。PPP 协议不是面向比特的,
因而所有的 PPP 帧长度都是整数个字节。
与 HDLC 不同的是多了 2 个字节的协议字段。协议字段不同,后面的信息字段类型就不同。如:
0x0021——信息字段是 IP 数据报
0xC021——信息字段是链路控制数据 LCP
0x8021——信息字段是网络控制数据 NCP
0xC023——信息字段是安全性认证 PAP
0xC025——信息字段是 LQR
0xC223——信息字段是安全性认证 CHAP
当信息字段中出现和标志字段一样的比特 0x7E 时,就必须采取一些措施。因 PPP 协议是面向字符型
的,所以它不能采用 HDLC 所使用的零比特插入法,而是使用一种特殊的字符填充。具体的做法是将信
息字段中出现的每一个 0x7E 字节转变成 2 字节序列(0x7D,0x5E)。若信息字段中出现一个 0x7D 的字节,
则将其转变成 2 字节序列(0x7D,0x5D)。若信息字段中出现 ASCII 码的控制字符,则在该字符前面要加
入一个 0x7D 字节。这样做的目的是防止这些表面上的 ASCII 码控制字符被错误地解释为控制字符。
41.1.7 PPP连接建立方式
PPP 协议中提供了一整套方案来解决链路建立、维护、拆除、上层协议协商、认证等问题。PPP 协
议包含这样几个部分:链路控制协议 LCP(Link Control Protocol);网络控制协议 NCP(Network Control
P a g e | 805
CCIE R/S & Service Provider Exam Certification Guide
Protocol);认证协议,最常用的包括口令验证协议 PAP(Password Authentication Protocol)和挑战握手验证
协议 CHAP(Challenge-Handshake Authentication Protocol)。
一个典型的 PPP 链路建立过程分为三个阶段:创建阶段、认证阶段和网络协商阶段。
阶段 1:创建 PPP 链路
LCP 负责创建链路。在这个阶段,将对基本的通讯方式进行选择。链路两端设备通过 LCP
向对方发送配置信息报文(Configure Packets)。一旦一个配置成功信息包(Configure-Ack packet)
被发送且被接收,就完成了交换,进入了 LCP 开启状态。
应当注意,在链路创建阶段,只是对验证协议进行选择,用户验证将在第 2 阶段实现。
阶段 2:用户验证
在这个阶段,客户端会将自己的身份发送给远端的接入服务器。该阶段使用一种安全验
证方式避免第三方窃取数据或冒充远程客户接管与客户端的连接。在认证完成之前,禁止从
认证阶段前进到网络层协议阶段。如果认证失败,认证者应该跃迁到链路终止阶段。
在这一阶段里,只有链路控制协议、认证协议,和链路质量监视协议的 packets 是被允
许的。在该阶段里接收到的其他的 packets 必须被静静的丢弃。
最常用的认证协议有口令验证协议(PAP)和挑战握手验证协议(CHAP)。
阶段 3:调用网络层协议
认证阶段完成之后,PPP 将调用在链路创建阶段(阶段 1)选定的各种网络控制协议(NCP)。
选定的 NCP 解决 PPP 链路之上的高层协议问题,例如,在该阶段 IP 控制协议(IPCP)可以向拨
入用户分配动态地址。这样,经过三个阶段以后,一条完整的 PPP 链路就建立起来了。
41.1.8 PPP有限状态机
对方协商
检测到载波
一些选项
建立
鉴别
鉴别成功
失败
失败
静止
网络
载波
停止
NCP 配置
终止
打开
通信
结束
PPP 协商分为几个阶段:Dead 阶段、Establish 阶段、Authenticate 阶段、Network 阶段和 Terminate
阶段,在不同的阶段进行不同协议的协商。只有前面的协议协商出结果后,才能转入下一个阶段,进行
下一个协议的协商。
1)
当物理层不可用时,PPP 链路处于 Dead 阶段,链路必须从这个阶段开始和结束。当物理层可
用时,PPP 在建立链路之前先进行 LCP 协商,协商内容包括工作方式是 SP 还是 MP、验证方
式和最大传输单元等。
2)
P a g e | 806
LCP 协商过后就进入 Establish 阶段,此时 LCP 状态为 Opened,表示链路已经建立。
CCIE R/S & Service Provider Exam Certification Guide
3)
如果配置了验证(远端验证本地或本地验证远端)就进入 Authenticate 阶段,开始 CHAP 或
PAP 验证。
4)
如果验证失败进入 Terminate 阶段,拆除链路,LCP 状态转为 Down,如果验证成功就进入
Network 协商阶段(NCP),此时 LCP 状态仍为 Opened,而 IPCP 状态从 Initial 转到 Request。
5)
NCP 协商支持 IPCP 协商,IPCP 协商主要包括双方的 IP 地址。通过 NCP 协商来选择和配置一
个网络层协议。当选中的网络层协议配置成功后,该网络层协议就可以通过这条链路发送报
文了。
6)
PPP 链路将一直保持通信,直至有明确的 LCP 或 NCP 帧关闭这条链路,或发生了某些外部事
件(如用户的干预)。
41.1.9 PPP认证方式
PPP 认证流程如下图:
1)
口令验证协议(PAP)
PAP 是一种简单的明文验证方式。NAS(网络接入服务器,Network Access Server)要求用户提供
用户名和口令,PAP 以明文方式返回用户信息。很明显,这种验证方式的安全性较差,第三方可以
很容易的获取被传送的用户名和口令,并利用这些信息与 NAS 建立连接获取 NAS 提供的所有资源。
所以,一旦用户密码被第三方窃取,PAP 无法提供避免受到第三方攻击的保障措施。
2)
挑战-握手验证协议(CHAP)
CHAP 是一种加密的验证方式,能够避免建立连接时传送用户的真实密码。NAS 向远程用户发
P a g e | 807
CCIE R/S & Service Provider Exam Certification Guide
送一个挑战口令(challenge),其中包括会话 ID 和一个任意生成的挑战字串(arbitrary challengestring)。
远程客户必须使用 MD5 单向哈希算法(one-way hashing algorithm)返回用户名和加密的挑战口令,会
话 ID 以及用户口令,其中用户名以非哈希方式发送。
CHAP 对 PAP 进行了改进,不再直接通过链路发送明文口令,而是使用挑战口令以哈希算法对
口令进行加密。因为服务器端存有客户的明文口令,所以服务器可以重复客户端进行的操作,并将
结果与用户返回的口令进行对照。CHAP 为每一次验证任意生成一个挑战字串来防止受到再现攻击
(replay attack)。在整个连接过程中,CHAP 将不定时的向客户端重复发送挑战口令,从而避免第 3
方冒充远程客户(remote client impersonation)进行攻击。
41.2 配置PPP协议
41.2.1 基本配置
首先需要在接口上封装 PPP
Router(config-if)#encapsulation ppp
此后可以使用同步/异步的 PPP 连接。
1.同步链路:
如下拓扑中两台路由器通过同步串口线路背靠背连接
hostname r1
!
interface Ethernet0
ip address 172.16.1.1 255.255.255.0
no ip directed-broadcast
!
interface Serial1
ip address 172.16.128.1 255.255.255.252
no ip directed-broadcast
encapsulation ppp
clockrate 56000
!
router ospf 2001
network 172.16.1.1 0.0.0.0 area 0
network 172.16.128.1 0.0.0.0 area 1
P a g e | 808
hostname r2
!
interface Ethernet0
ip address 172.16.2.1 255.255.255.0
!
interface Serial0
ip address 172.16.128.2 255.255.255.252
encapsulation ppp
!
router ospf 2001
redistribute connected subnets
network 172.16.128.2 0.0.0.0 area 1
default-metric 100
CCIE R/S & Service Provider Exam Certification Guide
2.异步链路:
在异步连接中首先我们可以根据 PPP 交互式对话的方式为远程终端提供不同的服务,例
如远程终端可以使用 PPP 连接,也可以使用 Exe 连接。传统的方式如下图:在接口上手动申明。
在自动选择模式下,首先要将异步接口的模式选择改为 async
RTA(config)#interface async 1
RTA(config-if)#encapsulation ppp
RTA(config-if)#async mode interactive
mode interactive
然后在线路上做 Autoselect 配置,Autoselect 命令允许接入服务器在收到一个开始字符时,
恰当的选择启动进程。如下图所示,如果是一个回车符,则启动 Exec 会话,否则则根据收到
的开始字符识别为 PPP,SLIP.
ARAP。
RTA(config)#line 1
RTA(config-line)#autoselect ppp
RTA(config-line)#autoselect during-login
在 Autoselect 命令后可以使用 during-login 参数,不需要用户执行回车键开始就可以建立
exec 对话。如果需要 PPP 会话时,再使用 ppp 命令激活 ppp 对话。
注意:很多时候我们并不使用这样的方式来配置,因为建立了 PPP 连接后我们可以方便
的使用 Telnet 连接来实现对设备的配置。
P a g e | 809
CCIE R/S & Service Provider Exam Certification Guide
在使用 PPP 配置时,我们还需要注意 IP 地址的配置与分配。首先来看服务器端,可以在异步接口上
配置 IP 地址,
RTA(config)#interface async 1
RTA(config-if)#ip address 10.1.1.1 255.255.255.0
但一个接入服务器可能有几百个异步接口,但一般不可能同时使用,。我们此时可以使用 IP
unnumbered
RTA(config)#interface loopback 0
RTA(config-if)#ip address 10.1.1.1 255.255.255.0
RTA(config-if)#exit
RTA(config)#interface async 1
RTA(config-if)#ip unnumbered loopback 0
为远程接入的设备分配 IP 地址的方式如下:
首先在异步接口上配置默认 ip 地址:
RTA(config)#interface async 1
RTA(config-if)#peer default ip address 10.1.1.2
然后全局配置地址池
RTA(config)#ip local pool DIAL-IN 10.1.1.2 10.1.1.254
RTA(config)#interface group-async 1
RTA(config-if)#peer default ip address pool DIAL-IN
最后在接口上配置动态地址分配
RTA(config-if)#async dynamic address
41.2.2 PPP认证
前文已经叙述了 PPP 的认证方式,下面我们来看这两种认证该如何在 Cisco 路由器上配置。
1.PAP 认证:
首先在接口上配置
RTA(config-if)#encapsulation ppp
RTA(config-if)#ppp authentication pap
然后在路由器中使用本地用户名/口令数据库:
RTA(config-if)#username RTB password ppptb
最后发送自己的用户名和密码
RTA(config-if)#ppp pap sent-username RTA password pppta
2.CHAP 认证:
CHAP 认证的配置方式和 PAP 相似
RTA(config-if)#ppp authentication pap
RTA(config-if)#username RTB password ppptb
但是可以使用发布帐号/密码的命令,默认情况下,路由器会将自己的 Hostname 和 password 发送。
如果有 enable secret 的口令,优先发送 enable secrect 口令
3.同时使用 PAP 和 CHAP
可以同时使用这两种方式来实现认证,先是用第一种方式认证,如果不通过,则继续使用第二种
方式认证
RTA(config-if)#ppp authentication chap pap
RTA(config-if)#ppp authentication pap chap
P a g e | 810
CCIE R/S & Service Provider Exam Certification Guide
41.2.3 拨号PPP连接配置
前文已经叙述了 PPP 的认证方式,下面我们来看这两种认证该如何在 Cisco 路由器上配置。
对于如下拓扑,两台路由器使用 PSTN 进行连接,并优先使用 CHAP 的 PPP 认证,如果 CHAP 认证
失败,则使用 PAP 进行第二次认证:
配置文件如下:
hostname host_router
!
enable secret 5 $1$72eo$TyGOBNJeBPM6FnImCZ.su/
!
username remote_router password 0 cisco1
ip subnet-zero
chat-script dialremote "" "ATZ&F" OK "ATDT5496560" TIMEOUT 60 CONNECT
!
interface Ethernet0
ip address 172.16.1.1 255.255.255.0
no ip directed-broadcast
!
interface Async1
ip address 172.16.128.1 255.255.255.252
no ip directed-broadcast
encapsulation ppp
dialer in-band
dialer idle-timeout 305
dialer map ip 172.16.128.2 name remote_router broadcast 5496560
dialer-group 1
async mode interactive
ppp authentication chap pap
ppp pap sent-username host_router password cisco
!
ip classless
ip route 172.16.2.0 255.255.255.0 172.16.128.2
!
dialer-list 1 protocol ip permit
!
line con 0
exec-timeout 0 0
transport input none
line aux 0
autoselect ppp
script dialer dialremote
modem InOut
modem autoconfigure type usr_sportster
transport input all
speed 38400
line vty 0 4
login
!
end
P a g e | 811
CCIE R/S & Service Provider Exam Certification Guide
hostname remote_router
!
username host_router password 0 cisco1
chat-script dialhost "" "ATZ&F" OK "ATDT5496561" TIMEOUT 60 CONNECT
!
interface Ethernet0
ip address 172.16.2.1 255.255.255.0
!
interface Async1
ip address 172.16.128.2 255.255.255.252
encapsulation ppp
async mode interactive
dialer in-band
dialer idle-timeout 305
dialer map ip 172.16.128.1 name host_router broadcast 5496561
dialer-group 1
ppp authentication pap
ppp pap sent-username remote_router password cisco
!
no ip classless
ip route 172.16.1.0 255.255.255.0 172.16.128.1
!
dialer-list 1 protocol ip permit
!
line con 0
line aux 0
autoselect ppp
script dialer dialhost
modem InOut
modem autoconfigure discovery
transport input all
rxspeed 38400
txspeed 38400
line vty 0 4
login
!
end
为一个异步接口配置 Modem 和 PPP
remote_router#show line
Tty Typ
Tx/Rx
A Modem Roty AccO AccI Uses
* 0 CTY
0
1 AUX 9600/9600
0
2 VTY
0
3 VTY
0
4 VTY
0
5 VTY
0
6 VTY
0
remote_router(config)#interface async 1
remote_router(config-if)#async mode interactive
remote_router(config-if)#encapsulation ppp
remote_router(config-if)#exit
remote_router(config)#
Noise Overruns
1
0/0
1
0/0
0
0/0
0
0/0
0
0/0
0
0/0
0
0/0
remote_router(config)#line 1
remote_router(config-line)#modem inout
remote_router(config-line)#modem autoconfigure discovery
remote_router(config-line)#autoselect ppp
P a g e | 812
Int
-
CCIE R/S & Service Provider Exam Certification Guide
remote_router(config-line)#transport input all
验证配置:
remote_router#telnet 172.16.2.1 2001
Trying 172.16.2.1, 2001 ... Open
atz
OK
at&v
ACTIVE PROFILE:
B1 E1 L1 M1 N1 Q0 T V1 W0 X0 Y0 &C1 &D2 &G0 &J0 &K3 &Q5 &R1 &S0 &T5 &X0 &Y0
S00:001 S01:000 S02:043 S03:013 S04:010 S05:008 S06:002 S07:055 S08:002 S09:006
S10:014 S11:095 S12:050 S18:000 S25:005 S26:001 S36:007 S37:000 S38:020 S46:138
S48:007 S95:000
OK
CTRL/SHIFT/6
remote_router#disconnect
Closing connection to 172.16.2.1 [confirm]y
41.2.4 PPP回拨
在进行拨号通讯的时候,如果 Server 端拨号到 Remote 端的电话费用比 Remote 回拨价格贵,则我
们就可以使用 PPP 回拨属性来让 Remote 回拨通讯。
回拨客户端配置:
Client(config)#interface async 1
Client(config-if)#encapsulation ppp
Client(config-if)#ppp authentication chap
Client(config-if)#ppp callback request
Client(config-if)#dialer in-band
Client(config-if)#dialer-group 1
Client(config-if)#dialer map ip 10.1.1.1 name Server modem-script hayes56k broadcast
5556001
回拨服务器端:
使用回拨首先必须使用 PPP 认证:
Server(config)#interface async 1
Server(config-if)#ip address 10.1.1.1
Server(config-if)#encapsulation ppp
Server(config-if)#ppp authentication chap
然后需要配置 DDR
Server(config-if)#dialer in-band
P a g e | 813
CCIE R/S & Service Provider Exam Certification Guide
Server(config-if)#dialer-group 1
配置回拨
Server(config)#username Client password itsasecret
Server(config)#map-class dialer DIALBACK
Server(config-map-class)#dialer callback-server username
最后在接口上挂接回拨配置和回拨限制
Server(config)#interface async 1
Server(config-if)#ppp callback accept
Server(config-if)#dialer map ip 10.1.1.2 name Client class DIALBACK modem-script
hayes56k broadcast 5556002
Server(config-if)#dialer callback-secure
41.2.5 PPP压缩
PPP 链路还支持数据压缩功能,如下图:
压缩支持 4 种模式
1. Predictor 用于检测数据是否已经被压缩
2. Stacker 一种基于 Lempel-Ziv 的压缩算法。
3. MPPC
同样使用 LZ 算法,支持 Cisco 路由器和 Microsoft 客户端之间交换压缩数据。
4. TCP 报头 VJ 压缩,只压缩 TCP 报头。
使用压缩,将会给 CPU 带来大量的运算,所以在配置压缩前,应确保 CPU 负载处在一个相对
较低的位置,PPP 压缩配置很简单,仅需要在接口模式下输入:
compress [predictor | stac | mppc]
ip tcp header-compression [passive]
其中 TCP 报头压缩采用被动模式参数表示仅当收到对方的压缩 TCP Header 后才使用 TCP
报头压缩功能。
Router#show compress
Serial1/0/1
uncompressed bytes xmt/rcv 81951/85500
1 min avg ratio xmt/rcv 0.789/0.837
5 min avg ratio xmt/rcv 0.789/0.837
10 min avg ratio xmt/rcv 0.789/0.837
no bufs xmt 0 no bufs rcv 0
restarts 1
Additional Stacker Stats:
Transmit bytes: Uncompressed = 28049 Compressed= 65745
Received bytes: Compressed = 74738 Uncompressed= 0
P a g e | 814
CCIE R/S & Service Provider Exam Certification Guide
41.2.6 PPP 多链路
PPP 多链路也是 LCP 的一个选项,它可以在同步/异步/ISDN 等多个接口上提供负载均衡。它通过分
割 3 层分组并在并行电路上发送分段分组的方法在两个系统间提高吞吐量和降低传送延迟
MLP 系统必须完成以下工作来实现多链路模式:
1. 将多条无力链路捆绑为一个逻辑链路
2. 接收并重组上层协议的 PDU
3. 协商 PDU 大小
配置 PPP 多链路仅需要在接口上配置如下 2 条命令
ppp multilink
dialer load-threshold load [outbound | inbound | either]
例如,在一个多链路的 ISDN 环境配置如下:
Router(config)#interface BRI 0
Router(config-if)#ip address 192.168.12.3 255.255.255.0
Router(config-if)#encapsulation ppp
Router(config-if)#dialer map ip 192.168.12.1 name Router1 5554321
Router(config-if)#dialer-group 1
Router(config-if)#ppp authentication chap
Router(config-if)#isdn spid 40855512120000 5551212
Router(config-if)#isdn spid 40855512340000 5551234
Router(config-if)#ppp multilink
Router(config-if)#dialer load-threshould 1 either
P a g e | 815
CCIE R/S & Service Provider Exam Certification Guide
验证结果:
Router#show ppp multilink
Virtual-Access1, bundle name is cns_isdn_callback
Dialer interface is Dialer1
0 lost fragments, 0 reordered, 0 unassigned, sequence 0x0/0x0 rcvd/sent
0 discarded, 0 lost received, 1/255 load
Member links: 1 (max not set, min not set)
BRI0:1
// Only one active bundle
Router#ping
Protocol [ip]: ip
Target IP address: 172.16.16.2
Repeat count [5]: 1000
Datagram size [100]: 2000
Timeout in seconds [2]: 5
Extended commands [n]:
Sweep range of sizes [n]:
Type escape sequence to abort.
Sending 1000, 2000-byte ICMP Echos to 172.16.16.2, timeout is 5 seconds:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<<<text omitted>>>
!!!!!
Success rate is 100 percent (370/370), round-trip min/avg/max = 152/161/284 ms
Router#show ppp multilink
Virtual-Access1, bundle name is cns_isdn_callback
Dialer interface is Dialer1
0 lost fragments, 0 reordered, 0 unassigned, sequence 0x496/0x2F1 rcvd/sent
0 discarded, 0 lost received, 25/255 load
Member links: 2 (max not set, min not set)
BRI0:1
// Both BRIs are in the bundle
BRI0:2
41.2.7 LAPB 和 LQM
Cisco 路由器目前可以使用 2 种方式加强 PPP 链路质量,一种是通过 ppp reliablelink 命令使用平
衡式链路接入过程(LAPB)数字模式协商。另一种是通过 ppp quality 命令在链路上强制是用链路质量
监控(LQM).
LQM 能够监控链路质量,如果质量降到某个比率,路由器会断开链路。这里比率是计算出站业务
和入站业务获得的。输出 LQM 的比率是通过发送的数据包和字节数和对方收到数据包和字节数来计
算的。 输入 LQM 的比率也类似。使用 LQM 会发送链路质量报告(LQR)来替代 Keepalive 消息。
ppp quality percent
同样,可以使用 ppp reliable-link 来提供 LAPB 的数字模式协商。但注意,这种方式下,可以同时执
行压缩,而 ppp 多链路在这种模式下将不会被支持。
P a g e | 816
CCIE R/S & Service Provider Exam Certification Guide
Chapter42 ISDN/DDR
42.1 ISDN通信原理
ISDN(Integrated Service Digital NeTwork)中文名称是综合业务数字网,ISDN 是基于电路交换的数字化数据
服务.ISDN 本来是用来提供增强的语音和数据服务的.
近年来 ISDN 主要用在以下三个方面:
1)为家庭用户提供高速因特网服务.
2)用做大规模拨号访问服务器的终端电路.
3)拨号备份.
42.1.1 ISDN与PSTN
ISDN 和 PSTN 相比都使用一对铜电话线作为传输介质,整个传输过程中 PSTN 使用 PCM 进行数字/模
拟信号的转换,这种方式将引入大量的杂音干扰.同时这样的方式只能使用异步传输,并且拨号过程相
当的复杂和缓慢.
相对于 PSTN,ISDN 使用 D 信道的 q921/q931 方式可以快速的建立连接,同时由于采用数字链路,
信号受干扰影响小,同时可以使用同步双工通讯,加大了链路带宽,并且同时将数据语音和视频等多种
服务整合在一条线路之上.
42.1.2 ISDN信道
ISDN 一共有三种基本信道:
D 信道: 这是一个信令信道,用于带外信令传输,同时承载控制消息,例如呼叫的建立和拆除,
D 信道在 2 层的典型使用为 LAPD.D 信道的带宽根据标准的不同有 16kbit/s 和 64kbit/s
两种
H 信道: H 信道一共有 4 种,运行速率分别为 384kbit/s 1.472Mbit/s 1.536Mbit/s
1.920Mbit/s 通
常用于高带宽数据传输
P a g e | 817
CCIE R/S & Service Provider Exam Certification Guide
B 信道: 用于数据传输,它使用数字信令第 0 级(DS0)速率(64kbit/s),可用于电路交换也可以用于
分组交换网络.根据 D 信道的信令,B 信道可以提供附加服务.
42.1.3 ISDN服务和信道化T1/E1
ISDN 有两种服务级别分别为:基本速率接口 BRI 和基群速率接口 PRI.
ISDN 基本速率接口(BRI)线路最大能提供 128kbs 的速率.一个 ISDN BRI 信道包含一个或两个称为 B 信道的
数据信道,每个 B 信道的速率为 56KBS 或 64KBS.只有一个 B 信道的 BRI 服务称为 1B+DBRI.两个 B 信道的 BRI
服务称为 2B+D 服务.每个 B 信道通常赋予一个唯一的目录号(directorynumber),简称 DN.目录号类似于电话
号码,是用来拨入 BRI 信道的.两个 B 信道也可共享一个目录号.这种共享目录号的服务也被称为狩猎组,因
为第一个到来的呼叫连接到第一个 B 信道,第二个到来的呼叫连接到第二个 B 信道.每个 B 信道可以只提供
数据服务或语音服务中的一种,也可同时提供两种服务.
ISDNBRI 的任一个 B 信道也被赋予一个 SPID(ServiceProfileIdentifier).当 ISDN 端用户服务初始同步到 ISDN
交换机时要使用 SPID.本章后续部分的流程分析将说明 SPID 是怎样送到 ISDN 交换机的.
例如,一个由两个 B 信道组成,只有数据传输能力的 BRI 线路可被赋予以下参数:
DN
SPID
传输能力
1
9148313510
91483135100101
数据
2
9148313511
91483135110101
数据
B 信道号
一个 ISDNBRI 线路也可包括一个 16KBS 的信令信道称为 D 线路.D 信道是用来使用户和 ISDN 交换机同步,
同时也用来建立和折除呼叫.ISDNBRI 信道的 D 信道在一些应用中也可被用来传输 X.25 的数据包.这种类型的
BRI 服务常称为 0B+DBRI.
ISDN 主速率接口(PRI)是在 T1 线路上传输的.一个 PRI 信道包含 23 个速率为 56kbs 或 64kbs 信道.每个 B
信道既可只提供数据或语音服务,也可同时提供两种服务.一个 PRI 信道也包含一个 64kbs 的称为 D 信道的
信令通道.D 信道是用来保持用户和 ISDN 交换机同步的,同时也用来建立和拆除呼叫.
不同于 BRI,PRI 中的所有 B 信道共享同一个目录号,这意味着所有进入 PRI 的呼叫将被放到第一个可用
的 B 信道上.ISDNPRI 线路没有 SPID.
P a g e | 818
CCIE R/S & Service Provider Exam Certification Guide
信道化 T1/E1
信道化 T1 多路复用一条线路来逻辑地在同一条物理介质上创建多条信道.虽然这看似有多条物理线路,
实际上只有一条.创建逻辑信道的方法有很多,时分多路复用(TimeDivisionMultiplexing,TDM)和频分多路复
用(FrequencyDivisionMultiplexing,FDM)是其中两个例子.TDM 是通过将信道划分为时间片来工作的.这种多
路复用技术对于数字信号而言工作得很好.ISDN 使用了一种称为脉冲码调制(PulseCodeModulation,PCM)的
方法来代表一个线路上的多个信道的.PCM 由 ITU-TI.431 定义,在物理线路上创建时隙,每个时隙用来为其
信道代表数据.
42.1.4 ISDN层次结构
ISDN 一共分为 4 层:
C-plane:
控制层面
主要管理用户-网络接口(UNI),负责建立和取消呼叫
U-plane:
用户层面
管理 B 信道传送的用户网络数据
T-plane:
传输层面
M-plane:
管理层面
ISDN 层次结构涵盖了 OSI 模型中的 1~3 层: 第一层:定义了终端设备(TE)和网络终端(NT)之间的物理连
接.第二层:描述 LAPD 提供了在物理链路上进行无错通信的方法.第三层:定义了初始呼叫和终止呼叫的信
令信号.
P a g e | 819
CCIE R/S & Service Provider Exam Certification Guide
42.1.5 ISDN参考点和BRI功能组
关于 ISDN,ITU-T 定义了 3 个不同系列的协议标准
Q-系列协议
规定了设备间交换和信令协议,示例包括:
• Q.921 ISDN 用户-网络接口-数据链路层规范.
• Q.931 用于基本呼叫控制的ISDN用户-网络接口网络层规范.
I-系列协议 用于定义与ISDN有关的概念和接口(UNI/NNI).示例包括:
• I. 430 基本用户-网络接口-物理层规范.
• I. 431 主速率用户-网络接口-物理层规范.
E-系列协议 描述网络的整体运作情况,电话服务,服务运行情况,示例包括:
• E.164 对ISDN时代的规划进行编号.
• E.172 ISDN时代的呼叫路由.
BRI 可以包括很多功能的设备,故我们将这些设备称为功能组:
TE1
指与 ISDN 网络兼容的设备,例如 ISDN 数字电话,带 ISDN 接口的路由器
TE2
指与 ISDN 网络不兼容的设备,例如传统模拟电话,不带 ISDN 接口的路由器
TA
终端适配器,能够将非 ISDN 设备连接到 ISDN 网络中
NT1
将 4 线 ISDN 用户线连接到传统的 2 线本地环路设备上
NT2
指引去往和来自不同用户设备和 NT1 的流量,NT2 是执行交换和汇聚功能的智能设备
LT
线路终端,电话公司连接用户室内设备(CPE)的部分
ET
交换终端,在 ISDN 交换中使用用户线路卡的地方,它是 2 层 LAPD 终结的地方
LE
本地交换,在中心局(CO)放置 ISDN 交换机的地方,LE 执行 ISDN 协议.
ISDN-BRI 参考点定义如下:
P a g e | 820
U 用户参考点
用户参考点位于 NT1 和 LT 之间
T 终端参考点
位于 NT1 和 NT2 之间,在没有 NT2 设备时位于 NT1 和 TE1 或 TA 之间
CCIE R/S & Service Provider Exam Certification Guide
S 系统参考点
位于 TA 和 NT2 或者 TE1 和 NT2 之间
V 参考点
位于 LT 和 ET 之间
R 速率参考点 位于 TA 和 TE2 之间
在很多情况下 S/T 参考点因为性能相同而被放在一起,统称为 S/T 接口.此时 UNI 通常被叫做 S/T 参考点,
同时由于在亚洲和欧洲 NT1 放置在服务提供商的 CO 故 S/T 接口非常常见.U 接口在北美比较常见,为这些
国家生产的路由器内置一个 U 接口,NT1 设备能够把 4 线的 S/T 接口转换为两线的 U 接口.通常使用 FDM 和
回音取消技术.S/T 和 U 接口在屋里上都使用 RJ45 标准,针脚定义如下:
Pin
1
2
3
4
5
6
7
8
TE Pin
Power source 3(+)
Power source 3(-)
Transmit (+)
Receive (+)
Receive (-)
Transmit (-)
Power sink 2 (-)
Power sink 2 (+)
S/T 接口
NT Pin
Required
Power sink 3 (+)
No
Power sink 3 (-)
No
Receive (+)
Yes
Transmit (+)
Yes
Transmit (-)
Yes
Receive (-)
Yes
Power source 2 (-)
No
Power source 2 (+)
No
Pin
1
2
3
4
5
6
7
8
U 接口
Function
Not used
Not used
Not used
U interface network connection (Tip)
U interface network connection (Ring)
Not used
Not used
Not used
部分销售到北美地区的路由器带有 U 接口,但是请注意将一个 S/T 接口的路由器错误的接入到一个 U
接口会导致设备永久的损坏.通常的连接方式如下图:
左图为 Cisco 1003 路由器用一个 S/T 接口连接 NT1,NT1 使用一条本地环路连接到 Adtran 550 WAN 仿真
模拟 ISDN 交换机.右图中为一台销往北美地区的支持 U 接口的 Cisco2620 路由器和 ISDN 交换机之间的直接
连接:
S/T---NT1---ISDN Switch
U—ISDN Switch
P a g e | 821
CCIE R/S & Service Provider Exam Certification Guide
ISDN-PRI 使用租用的 T1/E1 线路传输,需要一个信道服务单元/数据服务单元(CSU/DSU)来连接路由器,
TE 和运营商网络,CSU/DSU 通常集成在路由器中,其连接方式和参考点见下图:
PRI 接口还有其他的属性,首先它可以支持 23 个 POTS 或者 ISDN BRI 的呼叫,并支持单号码的混合拨号
接入.其中 D 信道用于识别数字/模拟呼叫.
42.2 ISDN协议
ISDN 协议栈对应 OSI7 层模型的 3 层,在物理曾定义了 BRI/PRI 的接口类型.在第二层根据 ISDN 信道定义,
在 D 信道上定义了 LAPD,3 层上则定义了 DSS1(Q.931)的信令模式.而对于 B 信道,2 层上可以使用 HDLC 或
者 PPP 的链路,由于 PPP 的功能更能适应拨号连接,故使用 PPP 较多
42.2.1 ISDN第一层 BRI
前文已经叙述了 ISDN-BRI 模式的特点和物理链路连接的方式,这里,我们将补充 BRI 的初始化过程.在
I.430 协议中定义了 5 种 INFO 消息,他们将用于链路的激活.首先 TE 向 LE 发送 Info1 消息,比特 A 被设置为
1 说明线路激活了.此后 Info2~4 消息发送,确认链路.
P a g e | 822
CCIE R/S & Service Provider Exam Certification Guide
42.2.2 ISDN第二层 Q.921
ISDN D 信道和 B 信道在第二层使用不同的协议,B 信道一般采用 PPP 或者 HDLC 来成帧数据.通常情况下
采用 PPP.但在 D 信道中,一般使用由 Q.920 和 Q.921 定义.使用 LAPD 成帧数据.在 ISDN 中,所有的硬件寻址
都发生在第二层,每个 S/T 总线可以支持 8 个 ISDN 终端,他们通过菊花链的方式串行连接,这样为了区分
TE 每个 TE 必须有一个唯一的地址,
LAPD 帧格式有 2 种,LAPD-A 和 LAPD-B,格式 A 不含信息域,即格式 A 为格式 B 的子集,LAPD-B 帧格
式如下:
TEI:TEI 为一个 7bit 数字,位于 D 信道的 LAPD 帧的地址字段中,一般由 ISDN 交换机自动分配给
一个 TE,通常在 TE 加电启动的时候产生这样一个地址分配请求.TEI 地址范围如下:
0~63:
用于非自动 TEI 分配
64~126: 用于自动 TEI 分配
127:
用于组分配或者广播
SAPI:SAPI 是一个 6bit 的子域,他用于表明运行在该设备上的指定进程
0
Call control procedure
1–15
Reserved for future standardization
16
Packet mode, used by X.25
17–31 Reserved for future standardization
32–61 Frame Relay communications
63
Layer 2 management procedure
All others Not available for Q.921
C/R:命令相应比特
Command
Response
Network -> User
User -> Network
Network -> User
User -> Network
1
0
0
1
P a g e | 823
CCIE R/S & Service Provider Exam Certification Guide
控制域:
LAPD 控制域用来区分帧,长度可以为 1 个字节也可以为 2 个字节.一共有 3 种格式
1.信息传输消息
信息传输消息是命令消息,其中 C/R 分别代表命令和响应消息.包括如下 2 种类型
N(S)---7bit 以 0 结尾,表示发送序列号
N(R)---7bit 以 P 结尾,表示接收序列号
2.管理消息
该消息使用 2 个字节,第二个字节为 N(R)并且最后一个比特为 P/F 该消息可以为命令消息或
者响应消息,包含如下 3 种类型
RR(Receive Ready)---可以为命令消息或响应消息,准备接收更多帧
RNR(Receive Not Ready)--- 可以为命令消息或响应消息,接收没有就绪
REJ(Reject)---可以为命令消息或响应消息,当接收到无用帧时,产生的消息
3.未编号消息,
长度 1 字节,该消息可以为命令消息或者响应消息,
SABME(Set Asynchronous Balance Mode Extended)—用于建立逻辑连接=Xmod(128)
DM(Disconnected Mode)---显示错误情况,只能为响应消息
UI(Unnumbered Information)---只能为命令消息,含义为传送 3 层管理信息
DISC(Disconnect)---中止逻辑连接,只能为命令消息
UA(Unnumbered Acknowledgement)---响应消息,未标号帧域已建立完毕并中止逻辑连接
RMR(Frame Reject)---响应消息,表明出错而产生的帧被拒绝
XID(Exchange Identification)---用于协商控制参数,可以为命令/响应两种类型
42.2.3 ISDN逻辑链路
在激活 ISDN 物理链路后,则需要在数据传输层面上激活逻辑链路,逻辑链路激活分为三个阶段,如
下图所示:
P a g e | 824
CCIE R/S & Service Provider Exam Certification Guide
Phase 1:
通过 SAPI(127)和 TEI(63)这类广播消息使 ISDN 交换机为设备分配一个 TEI 值
Phase 2:
通过回复 SABME 消息确认得到 TEI=84,并且由 ISDN 交换机回复 UA 消息确认 TE 分配
Phase 3:
通过回复 SPID 消息确认链路上的 SPID 正确.
此后逻辑链路上还需要协商一些参数
N200— Maximum number of times to retransmit the frame.
The default value is 3.
N201— Maximum length of an Information field.
The default value is 260 octets.
N202— Maximum number of times to request TEI assignment.
The default is 3.
K—
Maximum number of unacknowledged I-frames.
The default is 1 for SAPI = 0 and 3 for SAPI ≠ 0.
T200—
Reply timer.
The default is 1s.
T201—
Minimum time between TEI identity check messages.
The default is 1s.
T202—
Minimum time between TEI identity request messages.
The default is 2s.
T203—
Maximum time without frame exchange.
The default is 10s.
ISDN 第二层链路控制的一个功能就是确保 D 信道是激活的.每隔 10 秒,ISDN 交换机都会送一个接收
就绪(RR)包给路由器,并期望立即得到回应.
1)从 ISDN 交换机到路由器发送 RR—ISDN 交换机发送一个接收就绪帧给路由器.
2)从路由器到 ISDN 交换机发送 RR 回应—路由器很快回应,发送一个接收就绪帧给 ISDN 交换机.
42.2.4 ISDN第3层 Q.931
在第 3 层通过 Q.931 协议建立呼叫连接,Q.931 主要用于 ISDN 交换机和 TE 间的通信,故对 NT1 是
透明的.
Q.931 帧格式如下:
Protocol Discriminator―
识别第 3 层协议. Q.931 X.25…
Call Reference Length―
表示下一字段 CRV 的长度.
Call Reference Value―
唯一地识别用户网络接口上的每个呼叫.在呼叫开始时分配该字段值.当该呼叫清除后,该字
段值可以用于其它呼叫过程.
P a g e | 825
CCIE R/S & Service Provider Exam Certification Guide
Message Type―
识别信息类型(也就是 SETUP、CONNECT 等).该字段决定需要并许可哪些其它信息.
42.2.5 ISDN呼叫建立与拆除
ISDN 呼叫建立过程使用 5 种消息:
Setup
Call Proceeding
Alerting
Connect
Connect ACK
ISDN 呼叫拆除如下:
对于承载网,当发起一个 BRI 呼叫后,本地交换机使用 SS7 信令在 PSTN 内部建立一条路径,将被叫
号码传送到端接交换机,SS7 将传送承载网上的数据。
42.2.6 ISDN交换机类型
ISDN 交换机有很多种标准,所以 ISDN 交换机的制造者对于配置 CPE 有不同的要求。在美国和加拿
大,当设置交换机 BRI 互操作时,需要注意 SPID 和 LDN。SPID 表示用户号码和地址,其格式为 xxx-xxx-xxxx/
另外还需要地址来唯一的表示一个终端。SPID 由 ISP 分配。有时 SPID 不是必须的,例如在 AT&T 5ess 交换
P a g e | 826
CCIE R/S & Service Provider Exam Certification Guide
机上不需要配置。
SPID 通常为一个 10 位的数字。例如:408-476-4740-0100
408 代表区号
476 代表 CO 中心局号码
4740 每个 B 信道的站 ID
01 终端标识符
LDN 是为了接收到来呼叫而配置的,LDN1=4764740
Cisco 支持很多种 ISDN 交换机,如下表
42.3 ISDN-BRI配置
42.3.1 ISDN-BRI基本配置
在配置 ISDN 连接的时候,我们首先需要配置 ISDN 交换机的类型,isdn switch-tpye 可以在全局设置,也
可以在接口上设置:
isdn(config)#isdn switch-type ?
basic-1tr6
1TR6 switch type for Germany
basic-5ess
Lucent 5ESS switch type for the U.S.
basic-dms100 Northern Telecom DMS-100 switch type for the U.S.
basic-net3
NET3 switch type for UK, Europe, Asia and Australia
basic-ni
National ISDN switch type for the U.S.
basic-qsig
QSIG switch type
basic-ts013
TS013 switch type for Australia (obsolete)
ntt
NTT switch type for Japan
vn3
VN3 and VN4 switch types for France
然后我们需要在接口上指定 SPID 和 LDN 值
isdn(config)#interface bri0
isdn(config-if)#isdn spid1 53077712340100 7771234
isdn(config-if)#isdn spid1 53077712350100 7771235
当然在 BRI 接口上可以使用 isdn autodetect 命令让 ISDN 交换机给终端设备赋予 SPID 值
接着我们需要给 ISDN 链路配置封装格式,一般可以封装为 PPP/HDLC/Frame-Relay/LAPB/CPP 等,多数情
况下,我们使用 PPP 协议:
isdn(config-if)#encapsulation ppp
isdn(config-if)#ppp authentication chap pap
P a g e | 827
CCIE R/S & Service Provider Exam Certification Guide
42.3.2 ISDN可选配置
我们还可以对 ISDN 链路进行一些参数的改动。
ISDN 速率匹配
在北美一些地方的电话公司中还没有采用 SS7,这意味着 CO 将使用 56Kbps 的速率通讯,如下图
同时,如果远程连接是一个非本地 ISDN 设备,则接口速率需要减到 56Kbps,当远程路由器
通过串口连接到一个终端适配器时,D 信道的控制信息会包含在一个 B 信道中,这被称为带内控
制。带内控制使用 8Kbps 的 B 信道带宽。剩下 56Kbps 用于传输数据
将一条 B 信道的带宽调整为 56Kbps 的方式如下
Router(config-if)#dialer map protocol next-hop-address [name name] [speed speed] 、
[broadcast] dial-string
另外,我们可以使用配置虚拟接口的方法来避免 DDR 在连接中断的情况下,无法及时删除对端信息的
问题。同时使用虚拟配置技术由于和物理接口独立,具有很好的扩展性,使用路由器的运行效率更高,并
且易于管理。虚拟配置技术分为 2 种,
1.虚拟接口模板:
虚拟接口模板在一般接口配置和路由器特定的配置信息结合在一起的时候使用。这些模板提
供一些功能。例如当路由器接到一个远程用户的呼叫时,模板对用户使用预定义的设置。如认证
类型速度和本地 IP 地址池中的地址。这样就产生了单用户单会话的配置。这可以用于 ISP 的灵活
部署。当一个用户断开后,模板被释放,另一个用户即可使用。
Virtual-Templete 支持多种连接的动态控制
Virtual profiles
Virtual Private Dialup Networks (VPDN)
Multilink PPP (MLP)
Multichassis Multilink PPP (MMP)
Virtual templates for protocol translation
PPP over ATM
Virtual-Templete 的配置方式如下:
Router(config)# interface virtual-template number
Router(config-if)# ip unnumbered ethernet 0
Router(config-if)# encapsulation ppp
Router(config-if)# virtual-profile if-needed
P a g e | 828
CCIE R/S & Service Provider Exam Certification Guide
配置好虚拟接口模板后可以将这个接口挂接到物理接口上,例如下面是一种使用 VirtualTemplete 模板配置的 FR 接口:
Interface serial 0/1
Encapsulation frame-relay
no frame-relay inver-arp
no arp fram-relay
frame-relay interface-dlci 615 ppp Virtual-Template1
interface Virtual-Template1
encapsulation ppp
ppp authentication chap
ip address 1.1.56.6 255.255.255.0
no peer neighbor
同样,Virtual-Templete 还可以使用基于 AAA 认证授权的方式来控制接入
aaa new-model
aaa authentication ppp default local radius tacacs
aaa authorization network default local radius tacacs
virtual-profile if-needed
virtual-profile virtual-template 1
virtual-profile aaa
!
interface Virtual-Template1
ip unnumbered Ethernet 0
no ip directed-broadcast
no keepalive
ppp authentication chap
ppp multilink
RADIUS user profile:
foo
Password = "test"
User-Service-Type = Framed-User,
Framed-Protocol = PPP,
cisco-avpair = "ip:inacl#1=deny 10.10.10.10 0.0.0.0",
cisco-avpair = "ip:inacl#1=permit any"
TACACS+ user profile:
user = foo {
name = "foo"
global = cleartext test
service = PPP protocol= lcp {
interface-config="keepalive 30\nppp max-bad-auth 4"
}
service = ppp protocol = ip {
}
}
2.虚拟配置文件:
Virtual-Profile 是另一种虚拟配置的方法。他克服了网络规模的限制,按照功能相同进行配置,
对于用户特定的配置。这样的配置文件可以来自 Virtual-Templete 接口,也可以来自 Cisco 的 ACS
服务器。
Router(config)# virtual-profile virtual-template number
Router(config)# virtual-profile aaa
P a g e | 829
CCIE R/S & Service Provider Exam Certification Guide
42.3.3 MLP
Cisco BOD 是一种使用在拨号接口(BRI 或异步)上的可以配置用于按需带宽的技术。它只能用于外出流量
级触发,当外出流量达到一个配置级别后,路由器将指定另一条 B 信道来分担流量 。
配置 BOD 仅需要在接口上定义单链路的流量阀值即可:
Router(config)#int bri 0
Router(config-if)#dialer load-threshold load
例如 128 代表 50%带宽,255 代表 100%带宽
MLP 由于设计用来实现广域网多链路负载平衡的问题,技术相对复杂。它解决的问题包括:
各制造商产品的互操作性
分组分段,改善每个分组延时
分组顺序
分组计算
MLP 可以把分组分段在不同的物理链路上传输,最后在 MLP 对等体进行按序列的组装, 如下图
相对于 BOD,MLP 可以支持 DDR 旋转组,并且 MLP 可以对出入双向的流量进行监控
Router(config)#interface BRI 0
Router(config-if)#ip address 192.168.12.3 255.255.255.0
Router(config-if)#encapsulation ppp
Router(config-if)#dialer map ip 192.168.12.1 name Router1 5554321
Router(config-if)#dialer-group 1
Router(config-if)#ppp authentication chap
Router(config-if)#isdn spid 40855512120000 5551212
Router(config-if)#isdn spid 40855512340000 5551234
Router(config-if)#ppp multilink
Router(config-if)#dialer load-threshould 128 [inbound | outbound | either ]
42.3.4 MMP
Cisco 在 IOS 11.2 后提供了对 MMP 的支持。MLP 在 MMP 中增强了使得允许不同的 MLP 连接在不同的
NAS 上终止,这使 ISP 和企业能对一个电话号码的呼叫设计多个网络接入服务器,这个电话号码通常是电话
P a g e | 830
CCIE R/S & Service Provider Exam Certification Guide
公司的的搜寻组,或一组线路的主叫号码。MMP 也允许管理员制定一个带有高性能的处理器的路由器处理
MLP 分组的重新排序和组装,而让性能差的来处理呼叫中止。
Cisco 使用 SGBP 协议来支持 MMP。当仅有一个路由器能处理给定约束的 MLP 分组的重排序和组装的时
候,就需要一种机制来确定在这个组中那个路由器为主路由器来执行这个任务。SGBP 通过 Seed-bid 来选举
最高 bid 的路由器做为主路由器。SGBP 使用 UDP 9900 端口通信。当同意哟农户第二次呼叫在不同路由器
上终止的时候,则在两个路由器之间构造 L2F 隧道,并且原始的 PPP 数据在这条隧道上从呼叫终结者发送
给呼叫主路由器。
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
UserA starts the first call. This is Call 1.
RouterB answers the call.
RouterB negotiates LCP up to the authentication challenge and identifies the caller as UserA.
RouterB informs the stack group of a call from UserA.
Group bids are made for the call, and because RouterA is the off-load, RouterA becomes the
call master.
RouterB creates a L2F tunnel and forwards the raw PPP data to RouterA.
RouterA finishes authentication of UserA and finishes PPP negotiations.
UserA starts a second call. This is Call 2.
New MLP links connect to RouterC.
RouterC negotiates LCP up to the authentication challenge and identifies the caller as UserA.
RouterC informs the stack group of a call from UserA.
Group bids are made for the call, and because RouterA is already the call master, RouterA
wins.
RouterC creates a L2F tunnel and forwards the raw PPP data to RouterA.
RouterA reassembles and resequences the MLP packets.
MMP 配置方法如下:
hostname routerA
!
username dialin-group password cisco
hostname routerB
!
username dialin-group password cisco
P a g e | 831
CCIE R/S & Service Provider Exam Certification Guide
!
sgbp group dialin-group
sgbp seed-bid offload
sgbp member routerB 192.168.0.2
sgbp member routerC 192.168.0.3
sgbp source-ip 192.168.0.1
username userA password knockknock
!
sgbp group dialin-group
sgbp member routerA 192.168.0.1
sgbp member routerC 192.168.0.3
sgbp source-ip 192.168.0.2
hostname routerC
!
username dialin-group password cisco
username userA password knockknock
!
sgbp group dialin-group
sgbp member routerA 192.168.0.1
sgbp member routerB 192.168.0.2
sgbp source-ip 192.168.0.3
MMP 配置实例:
hostname 7200-isdn-a
!
username isdnservers password cisco
username user1-isdn password user1
username user2-isdn password user2
!
sgbp group isdnservers
sgbp member 7200-isdn-b 172.30.253.253
sgbp source-ip 172.30.253.254
!
! many T1 controllers
!
controller T1 2/0
framing esf
linecode b8zs
pri-group timeslots 1-24
!
! a Serial interface for each T1
!
interface Serial2/0:23
no ip address
encapsulation ppp
dialer rotary-group 1
isdn switch-type primary-4ess
no cdp enable
!
interface Dialer1
bandwidth 128
ip unnumbered Loopback0
encapsulation ppp
dialer in-band
dialer hold-queue 20
dialer-group 1
peer default ip address pool ISDN-POOL
fair-queue
no cdp enable
ppp authentication chap isdn
ppp chap hostname 7200-isdn
ppp multilink
!
P a g e | 832
hostname 7200-isdn-b
!
username isdnservers password cisco
username user1-isdn password user1
username user2-isdn password user2
!
sgbp group isdnservers
sgbp member 7200-isdn-a 172.30.253.254
sgbp source-ip 172.30.253.253
!
! many T1 controllers
!
controller T1 2/0
framing esf
linecode b8zs
pri-group timeslots 1-24
!
! a Serial interface for each T1
!
interface Serial2/0:23
no ip address
encapsulation ppp
dialer rotary-group 1
isdn switch-type primary-4ess
no cdp enable
!
interface Dialer1
bandwidth 128
ip unnumbered Loopback0
encapsulation ppp
dialer in-band
dialer hold-queue 20
dialer-group 1
peer default ip address pool ISDN-POOL
fair-queue
no cdp enable
ppp authentication chap isdn
ppp chap hostname 7200-isdn
ppp multilink
!
CCIE R/S & Service Provider Exam Certification Guide
42.3.5 ISDN安全
ISDN 呼叫标示
通过使用呼叫线路标示(CLID)可以配置 ISDN 路由器来屏蔽入口呼叫。CLID 是由电话公司在呼
叫建立消息中提供的呼叫源的 ISDN 号码。为了更多的安全,可以基于 CLID 来屏蔽呼叫。
配置方式如下:
Router(config-if)#isdn caller phone-number
配置时,可以使用通配符,例如,我们需要 5551200~5551299 的号码都可以拨入,则
Router(config-if)#isdn caller 55512XX
ISDN 被叫方号码应答
一个 ISDN 物理站点可以挂接多个 TE,虽然可以通过 TEI 区分不同的设备,但有些场景会受到
限制,我们如果期望仅有一台设备应答进入呼叫,则可以采用如下命令
Router(config-if)#isdn answer1 [called-party-number] [:subaddress]
Router(config-if)#isdn answer2 [called-party-number] [:subaddress]
42.3.6 ISDN Spoofing
ISDN Spoofing 是一种使路由器响应 Keepalive 分组而不转发给远程对象的技术,如果欺骗处于 up 状态,
则协议层报告也处于 up 状态。这样的处理方式节约了费用,并当 DDR 条件满足的情况下,路由器才会启
动拨号。Spoofing 也是一种拨号接口 TroubleShooting 的技术。甚至当路由器不呼叫时,拨号器也能显示一
个欺骗状态。 Spoofing 的主要作用是在协议层让端口 up,使得路由表可以维持。
isdn# show interfaces dialer 1
Dialer1 is up (spoofing), line protocol is up (spoofing)
Hardware is Unknown
Interface is unnumbered. Using address of Ethernet0 (151.70.209.81)
MTU 1500 bytes, BW 128 Kbit, DLY 20000 usec,
reliability 255/255, txload 1/255, rxload 1/255
Encapsulation PPP, loopback not set
Keepalive set (10 sec)
DTR is pulsed for 1 seconds on reset
Last input never, output never, output hang never
Last clearing of “show interface” counters never
Input queue: 1/75/0/0 (size/max/drops/flushes); Total output drops: 0
Queueing strategy: weighted fair
P a g e | 833
CCIE R/S & Service Provider Exam Certification Guide
Output queue: 0/1000/64/0 (size/max total/threshold/drops)
Conversations 0/0/16 (active/max active/max total)
Reserved Conversations 0/0 (allocated/max allocated)
5 minute input rate 0 bits/sec, 0 packets/sec
5 minute output rate 0 bits/sec, 0 packets/sec
112555 packets input, 102607119 bytes
77225 packets output, 9186472 bytes
42.4 DDR按需拨号
42.4.1 DDR运行过程
首先判断一个要出去的包是否为感兴趣的,如果是 NO 的话,则看现在链路是否已经 CONNECTED。如
果已经连接则发送数据,如果没有连接,则丢弃。再看,如果这个包为感兴趣的流量,那么现在来看连接
是否已经被建立,如已经被建立,则发送数据,这里要注意一点,这里有一个闲置记时器(idle-time),如果
这个包为感兴趣的那么这个时候会重置这个记时器,如果不是感兴趣的那么记时器继续记时。
如果当时这个连路没有连接起来,那么这个时候接口如果是 UP 的那么会用一个电话号码进行拨号,然
后 SEND 出去。若拨号失败,则丢弃数据。
注意:这个线路只要是 no shutdown 后就保持 UP 状态(ISDN Spoofing)。如果使用外置 TA 必须支持
V.25bis 拨号(串型线路上也须支持)。
42.4.2 DDR基本配置
DDR 配置一般需要 5 个步骤:
1. 配置拨号配置文件
2. 是每个物理接口成为拨号池中的一员
P a g e | 834
CCIE R/S & Service Provider Exam Certification Guide
3. 指定感兴趣流量
4. 定义静态路由
5. 定义映射类
首先,我们来看如何配置一个拨号接口,如前文所述,拨号接口并不是一个物理接口,他定义了呼叫目
的地,每个接口配置都很平常,首先配置接口类型和号码。然后对接口进行封装。一般采用 PPP 的封装方
式,同时启用 PPP 的 CHAP/PAP 认证和 PPP 多链路支持。
此后启动 dialer-String 定义对端电话号码,
dialer-string string class DialClass
然后将该拨号接口划入一个拨号接口池,同时将这个接口挂接在一个感兴趣流量类中
dialer pool number
dialer-group number
随后,我们需要把一个物理接口加入到拨号组中。
isdn(config-if)# dialer pool-member 4 priority 255 max-link 10 min-link 0
其中优先级参数为可选参数,当一个拨号池中有多个物理接口时,优先选用优先级高的接口
进行拨号。
接着我们需要定义感兴趣流量。感兴趣流量采用 dialer-list 命令结合 ACL 定义
access-list 101 deny
icmp any any echo-reply
access-list 101 deny
icmp any any host-unreachable
access-list 101 deny
udp any any eq ntp
access-list 101 deny
igmp any any
access-list 101 deny
ip any host 230.0.0.13
access-list 101 deny
ip any host 230.0.1.39
access-list 101 deny
ip any host 230.0.1.40
access-list 101 deny
ip any host 10.68.235.228
access-list 101 deny
ip any host 11.68.235.229
access-list 101 permit
ip any any
P a g e | 835
CCIE R/S & Service Provider Exam Certification Guide
如上 ACL 拒绝了 ICMP,NTP,IGMP 这些在 WAN 极少使用的协议。并且拒绝了一些组播源地址和 WINS
服务器的地址。然后我们可以将这个 ACL 加载到感兴趣流量配置中:
dialer-list 1 protocol ip list 101
此后我们可以定义静态路由,是数据报能够按一定的路径发送,最后我们可以对拨号类进行一些控制,
例如下面我们看到的,对某个拨号类进行速度控制:
isdn(config)#map-class dialer DialClass
isdn(config-map-cla)#dialer isdn speed 56
42.4.3 DDR循环组
可以将一种接口配置应用于一组物理接口,在有多个呼叫和多个呼叫目的地情况下很有用。如下图:
循环组通过配置一个拨号接口来定义。拨号接口不是一个物理接口,他是一个逻辑实体。允许将一个接
口的配置传递到多个接口上。被分配到拨号循环组中的任何一个物理接口都继承了拨号接口的配置参数。
并且在某些接口繁忙的时候,可以自动选取一个空闲接口进行拨号。这对于很多 ISP 提供商而言,可以使
客户拨同一个号码,通过查询组使得电话接通
循环组的配置方法如下:
首先需要创建一个拨号循环组:Router(config)#interface dialer 2
然后将物理接口加入到这个循环组中:Router(config-if)#dialer rotary-group 2
在异步接口上可以使用异步接口组来绑定多个异步接口
Interface Group-async 1
Group-range 1-8
P a g e | 836
CCIE R/S & Service Provider Exam Certification Guide
在 ISDN-BRI 配置循环组实例:
42.4.4 拨号配置文件
拨号配置文件是 DDR 的一种扩展。它是将逻辑配置和物理接口分开。可定义封装、ACL、呼叫数和特
性的启用禁用。它是每个呼叫动态地将逻辑配置和物理配置关联起来,它是一种新的 DDR 模式,决定了用
户的特征,动态地绑定到用于接收/发起 DDR 呼叫的物理接口。支持 PPP、HDLC、FR、X.25 封装。使用 Dialer
Profile 前 BRI/PRI 的 B 信道继承相同的物理接口配置,用作备用接口(standby mode),直到不再处于备用状
态后才可用。Dialer Profile 解决了这种问题。例如如下拓扑
:
Interface dialer 0
Ip address 172.16.3.1 255.255.255.0
encapsulation ppp
dialer remote-name RTY
dialer string 5552222
dialer string 5552223
dialer pool 1
dialer-group 1
ppp authentication chap ppp
Interface dialer 1
Ip address 172.16.1.1 255.255.255.0
encapsulation ppp
dialer remote-name RTX
dialer idle-timeout 240
dialer fast-idle 45
dialer string 5551111
dialer pool 1
dialer-group 1
ppp authentication chap ppp
Interface dialer 2
Ip address 172.16.2.1 255.255.255.0
encapsulation ppp
dialer remote-name user1
dialer idle-timeout 240
dialer pool 1
dialer-group 4
ppp authentication chap
P a g e | 837
CCIE R/S & Service Provider Exam Certification Guide
拨号配置文件的另一个用途就是可以将一个 BRI 的 2 个 B 信道分开独立使用,配置方式如下:
42.4.5 拨号映射类
拨号映射类是一个可选配置,他可以为呼叫制定拨号串定义特定的特性,例如某个目的地的映射类可以
指定一个 56Kbps 的速率,同时还可以制定空闲超时等多个参数:
isdn(config-map-class)#dialer ?
callback-server
enable-timeout
fast-idle
idle-timeout
isdn
outgoing
voice-call
wait-for-carrier-time
Enable callback return call
Set length of time an interface stays down before it
is available for dialing
Set idle time before disconnecting line with an
unusually high level of contention
Set idle time before disconnecting line
ISDN Settings
Dial using the selected ISDN dialing plan.
Dial the configured number as a voice call
How long the router will wait for carrier
42.5 ISDN-BRI其它配置
42.5.1 快照路由和按需路由
由于 DDR 采用静态路由,使用和配置相当不便。但 RIP/EIGRP/OSPF 等诸多路由均会发生定期的消息更
新和 Keepalive 过程导致拨号链路长期在线。在这种情况下,Cisco 考虑使用快照路由和 OSPF 的按需路由。
P a g e | 838
CCIE R/S & Service Provider Exam Certification Guide
快照路由的配置方式如下:
首先需要在接口模式下配置快照路由服务器和客户端
isdn(config-if)#snapshot [client | server] active-time quiet-time |[suppress-state
change-updates ] [ dialer]
然后使用 dialer map 映射到对端
isdn(config-if)#dialer map snapshot 1 class class-name speed [56 | 64]
关于几个计时器定义如下:
Active-time:要求服务器和客户端该计时器时间一致。
Quite-time:时间为分钟,该时间内活动周期之间陆游选择表项被冻结和保持不变的时间
快照路由配置实例:
42.5.2 设置POTS接口
普通老式电话服务(Plain old telephone service)功能是指 ISDN 路由器使用语音能力。配置该项服务可以使
连接到路由器上电话端口的模拟电话和传真机等按键式设备工作正常。
isdn(config)#pots dial-tone {local | remote}
Local 表示路由器提供拨号音
Remote 表示交换机提供拨号音
为了明确提供拨号音,可以在全局配置另一个命令:
isdn(config)#pots dial-tone {local | remote}
最后还需要配置一个延迟时间,表示上次呼叫被断开以后,电话端口还能运行的时间
isdn(config)#pots distinctive-ring-guard-time milliseconds
拨号端口决定进入电话端口呼叫的路由。对于两个电话端口,可以创建 6 个拨号端口,配置如下:
isdn(config)#dial-peer voice 6 pots
isdn(config-dial-pe)#destination-pattern ldn
isdn(config-dial-pe)#port port-number
isdn(config-dial-pe)#no call-waiting
isdn(config-dial-pe)#ring cadence-number
P a g e | 839
CCIE R/S & Service Provider Exam Certification Guide
为了保证 BRI 接口喜爱能进行呼入呼出语音胡椒,需要设置:
isdn(config-if)#isdn incoming-voice modem
42.5.3 WAN接口备份
在 Cisco 的观点看来,备份链路从传统意义上是拨号技术,例如 ISDN PSTN 等。随着 MPLS 的发展,很
多公司选择 MPLS 作为备份链路,MPLS 的性质,我们将在后面的章节详细的阐述。我们现在来看基于拨号
的备份链路配置。
链路失效备份,如下图所示:
Central Site(config)#interface serial0/0
Central Site(config-if)#backup interface bri0/0
Central Site(config-if)#backup delay 40 20
参数 40,20 表示当主链路中断 40s 后,备份链路开始拨号,当主链路恢复 20s 后,备份链
路断开连接
基于流量分担的备份链路配置:
Central Site(config)#interface serial0/0
Central Site(config-if)#backup interface bri0/0
Central Site(config-if)#backup load 60 40
参数 60,40 表示当主链路带宽占用超过 60%后,备份链路开始拨号,当主链路负载下降到
40%后,备份链路断开连接
基于 Dialer Profile 的备份链路配置:
由于 Dialer Profile 的配置模式使用虚拟接口,并且这样可以同时使得 ISDN 的 2 个 B 信道独立出来
P a g e | 840
CCIE R/S & Service Provider Exam Certification Guide
使用,详细配置方式如下:
interface dialer0
ip unnumbered loopback0
encapsulation ppp
dialer remote-name Remote0
dialer pool 1
dialer string 5551000
dialer-group 1
interface dialer1
ip unnumbered loopback0
encapsulation ppp
dialer remote-name Remote1
dialer pool 1
dialer string 5551001
dialer-group 1
interface bri 0/0
encapsulation PPP
isdn spid1 51055540000001 5554000
isdn spid1 51055540010001 5554001
ppp authentication chap
interface serial 0
ip unnumbered loopback0
backup interface dialer 0
backup delay 5 10
当然。链路建立以后在 3 层上需要使路由协议改变管理距离和 Metric 值,使备份链路生效。OSPF
需要更改 Cost 值,而对于 EIGRP 仅需要加大负载均衡的 variance 即可
P a g e | 841
CCIE R/S & Service Provider Exam Certification Guide
使用 MPLS 的 ISDN 备份:
interface Serial1
backup interface Dialer1
ip address 172.16.1.1 255.0.0.0
mpls ip
encapsulation ppp
!
interface Serial0:23
no ip address
encapsulation ppp
dialer pool-member 1
ppp authentication chap
!
interface Dialer1
ip address 172.16.1.3 255.0.0.0
encapsulation ppp
dialer pool 1
dialer remote-name P1
dialer string 1114
dialer persistent
dialer-group 1
mpls ip
ppp authentication chap
!
还有一种备份链路的方法是使用浮动路由和 Dialer Watch 技术。
对于如上拓扑,当 FR 链路中断的时候可以使用 Dialer Watch 来配置置触发 DDR 拨号。
首先需要定义被监测的网段。
dialer watch-list group-number ip ip-address address-mask
注意,该网段必须存在于路由表中。例如需要监测 10.1.1.0/24 网段:
dialer watch-list 1 ip 10.1.1.0 255.255.255.0
然后将备份链路接口加入到该组:用来激活 dialer watch 特性
dialer watch-group group-number
注意,这里的 group-number 必须与 dialer watch-list 命令的 group-number 一致!同时一条路由
仅能挂接在一个接口上。而一个接口可以挂接多个 watch-group
如果主链路恢复了,在多少秒后自动切断备份链路,重新使用主链路路由。
dialer watch-disable seconds
当路由器刚刚启动时,路由的学习需要一段时间;
dialer watch-list group-number delay route-check initial seconds
这条命令限制 dialer watch 特性在路由器刚启动时就启动备份连接。
P a g e | 842
CCIE R/S & Service Provider Exam Certification Guide
则如上拓扑的配置为:
hostname maui-soho-01
!
aaa new-model
aaa authentication login default local
aaa authentication login NO_AUTHEN none
aaa authentication ppp default local
!
username maui-nas-05 password 0 cisco
!
isdn switch-type basic-ni
!
interface Loopback0
ip address 172.17.1.1 255.255.255.0
!
interface Ethernet0
ip address 172.16.1.1 255.255.255.0
!
interface Serial0
!Primary link.
ip address 192.168.10.2 255.255.255.252
encapsulation ppp
ppp authentication chap
!
interface BRI0
ip address 172.20.10.2 255.255.255.0
!IP address for the BRI interface (backup link).
encapsulation ppp
dialer idle-timeout 30
dialer watch-disable 15
dialer map ip 172.20.10.1 name maui-nas-05 broadcast
5550111
dialer map ip 172.22.53.0 name maui-nas-05 broadcast
5550111
dialer watch-group 8
dialer-group 1
isdn switch-type basic-ni
isdn spid1 51255522220101 5550112
isdn spid2 51255522230101 5550112
ppp authentication chap
!Use chap authentication.
!
router ospf 5
log-adjacency-changes
network 172.16.1.0 0.0.0.255 area 0
network 172.17.1.0 0.0.0.255 area 0
network 172.20.10.0 0.0.0.255 area 0
network 192.168.10.0 0.0.0.3 area 0
!
ip classless
no ip http server
!
dialer watch-list 8 ip 172.22.53.0 255.255.255.0
access-list 101 remark Define Interesting Traffic
access-list 101 deny ospf any any
Access-list 101 permit ip any any
dialer-list 1 protocol ip list 101
hostname maui-nas-05
!
aaa new-model
aaa authentication login default local
aaa authentication login NO_AUTHEN none
aaa authentication ppp default local
!
username maui-soho-01 password 0 cisco
!
isdn switch-type basic-ni
!
interface Loopback0
ip address 172.22.1.1 255.255.255.0
!
interface Ethernet0/0
ip address 172.22.53.105 255.255.255.0
!
interface BRI1/0
!Backup link.
ip address 172.20.10.1 255.255.255.0
encapsulation ppp
dialer map ip 172.20.10.2 name maui-soho-01
broadcast
Dialer-group 1
isdn switch-type basic-ni
isdn spid1 51255501110101 5550111
isdn spid2 51255501120101 5550112
ppp authentication chap
!
interface Serial2/0
ip address 192.168.10.1 255.255.255.252
encapsulation ppp
clockrate 64000
ppp authentication chap
!
router ospf 5
network 172.20.10.0 0.0.0.255 area 0
network 172.22.1.0 0.0.0.255 area 0
network 172.22.53.0 0.0.0.255 area 0
network 192.168.10.0 0.0.0.3 area 0
default-information originate
!
ip classless
ip route 0.0.0.0 0.0.0.0 Ethernet0/0
no ip http server
!
dialer-list 1 protocol ip permit
!
P a g e | 843
CCIE R/S & Service Provider Exam Certification Guide
42.6 ISDN-PRI配置
配置完 ISDN-BRI 后,我们来看 ISDN 的另一种模式 ISDN-PR。ISDN-PRI 上一般承载 T1/E1 两种线路类型:
42.6.1 TDM时分复用
在广域网链路上考虑成本等诸多因素,需要采用链路复用技术。链路复用技术大致有 2 种 FDM 频分复
用和 TDM 时分复用。对于 FDM 而言,其处理方式如下图:
时分复用 TDM:
(Time Division Multiplex and Multiplexer)是指一种通过不同信道或时隙中的交叉位脉冲,
同时在同一个通信媒体上传输多个数字化数据、语音和视频信号等的技术。电信中基本采用的信道带宽为
DS0,其信道宽为 64 kbps。
电话网络(PSTN)基于 TDM 技术,通常又称为 TDM 访问网络。电话交换通过一些格式支持 TDM:
DS0、T1/E1 TDM 以及 BRI TDM。E1 TDM 支持 2.048 Mbps 通信链路,将它划分为 32 个时隙,每间隔为 64
kbps 。T1 TDM 支持 1.544 Mbps 通信链路,将它划分为 24 个时隙,每间隔为 64 kbps,其中 8 kbps 信道
用于同步操作和维护过程。
P a g e | 844
CCIE R/S & Service Provider Exam Certification Guide
时分复用器是一种利用 TDM 技术的设备,主要用于将多个低速率数据流结合为单个高速率数据流。来
自多个不同源的数据被分解为各个部分(位或位组),并且这些部分以规定的次序进行传输。这样每个输入
数据流即成为输出数据流中的一个“时间片段”。必须维持好传输顺序,从而输入数据流才可以在目的端进
行重组。特别值得注意的是,相同设备 通过相同 TDM 技术原理却可以执行相反过程,即:将高速率数据
流分解为多个低速率数据流,该过程称为解除复用技术。因此,在同一个箱子中同时存在时分复用器和解
复用器 (Demultiplexer)是常见的。
42.6.2 ISDN PRI基本配置
虽然 ISDN 非常复杂,但是只要理解了概念,配置 ISDN PRI 并不困难。要配置 ISDN PRI 线路来接受传入
的模拟呼叫和 ISDN 呼叫,用户需要注意以下问题:
控制器类型(T1/E1)。
组帧和线路编码。
时钟控制。
交换机类型。
时隙识别。
RBS
D信道串行端口的配置。
接受模拟呼叫。
控制器类型
有两种 ISDN PRI 控制器类型可以供用户使用:T1 和 E1。为您提供 ISDN PRI 服务的本地电话公司将规
定您购买何种控制器。首要之处在于,T1 控制器应用于北美和日本,而欧洲和中国则更多地采用 E1。
使用下面的命令,以选择控制器的接口进行配置:
Router(config)#controller controller-type slot-number
Controller-type
slot-number
T1
E1
x
Configure T1 controller
Configure E1 controller
Controller unit number
组帧与线路编码
组帧和线路编码是由 ISP 提供的属性。在一正常的 T1 帧中,192 位用于数据,1 个位用于组帧。但
是在 T1 中这个单独的位不能简单自如地来传送保持 T1 线路同步的信令信息。因此,人们创建了超帧格
式(superframe format,SF)来处理这个问题。SF 也就是 D4,由 12 个 T1 帧组成,这 12 个组帧位要经
历下面的 12 位模式:100011011100。也就是说,第 1 个帧中的组帧位为 1,下面 3 个帧的组帧位为 0,
再下两个帧的组帧位为 1,直到 12 位模式结束。一旦到达了最后,就再重新开始。接收器通过在 12 个
帧的每 193 个位中寻找这种特定的模式,就可以建立帧的同步。
另一种组帧方法,称为 T1 扩展超帧格式(extendedsuperframeformat,ESF)。在 ESF 中,24 个帧组
成一组,产生了 24 个组帧位。这些组帧位可分解为以下 3 种功能:
帧排列序列(Framealighmentsequence,FAS)6 位
帧校验序列(Framechecksequence,FCS)6 位
维护信道(maintenancechannel)12 位
FAS 在其 6 位中使用了一种重复的模式(001011),以确保帧进行了正确的同步。如果接收器失去了
同步(滑动,slip),它将在下面的 5 个帧中查找到相应的位的模式(24 个 T1 帧每 ESF 帧*5 个 ESF 帧=120
个帧)。FCS 用了一个 6 位的循环冗余码校验(cyclicredundancycheck,CRC)来确定在前一个帧中是否存
P a g e | 845
CCIE R/S & Service Provider Exam Certification Guide
在位错误。FCS 只用于错误检测,而不能进行错误校正。
维护信道,也称为设备数据链接(FacilitiesDataLink,FDL),是一个 4Kbps 的附带信道,用于网络维
护和操作。然而,PRI 并不对该信道有何具体操作。
最后一种组帧方法是 CRC4 和 NO-CRC4。这些方法只在 E1 时可用。CRC4 和 NO-CRC4 根据 E1 是欧洲
的还是澳大利亚的,而具有不同的算法。
T1 电路的要求之一就是要维持一定的密度水准,这样转发器就可以维持计时了。如果发送的长字符
串都是二进制 0,那么转发器的计时很容易出现延误。因此,必须考虑一种方法以确保每隔一段时间就
出现一个二进制 1 或者标志脉冲。目前存在 3 种方法,通常,应用何种方法取决于采用的线路编码的类
型。组帧和线路编码配置是在控制器上执行的,不同的控制器上的组帧和线路编码是不同的。
Router(config-controller)#framing frame-type
frame-type
sf
esf
crc4
Configure T1 controller for superframe format
Configure T1 controller for extended superframe format
Configure E1 controller for cyclic redundancy check 4
组帧
超帧(SF)
扩展超帧(ESF)
循环冗余码校验4(CRC4)
线路编码
信号交替反转(Alternate Mark Inversion,简写为AMI)
B8ZS(Binary 8-Zero Substitution)
高密度双极型( High-Density Bipolar 3,简写为HDB 3)
要配置控制器上的线路编码,请应用以下命令:
Router(config-controller)#linecode linecoding-type
linecoding-type
ami
b8zs
hdb3
Configure T1 controller for alternate mark
Configure T1 controller for extended superframe format
Configure E1 controller for cyclic redundancy check 4
时钟控制
要向ISDN交换机发送数据,用户必须要使用时钟以便可以正确地对传输进行计时。时钟是在T1/E1控
制器上定义的。
Router(config-controller)#clock source line clock - source
clock-source
primary
secondary
internal
Configure T1 interface as the primary
TDM clock source
Configure T1 interface as the secondary
TDM clock source
Will use its own internal clock
交换机类型
选择何种交换机乃取决于提供ISDN PRI的电话公司。安装了ISDN PRI线路后,电话公司将位用户指示
使用的交换机类型。以下是Cisco IOS可支持的7种不同的交换机类型:
P a g e | 846
CCIE R/S & Service Provider Exam Certification Guide
在IOS 11 . 3之前,用户只能在全局配置中选择ISDN交换机的类型。而从IOS 11.3起,用户可以用两种
方法来选择交换机类型:在全局配置中选择,或在特定接口上选择。如果用户是在全局配置中选择交换
机类型,那么只能一次设定所有的接口。而在接口上选择交换机类型,就可以让不同的接口支持不同的
交换机类型。
在接口上配置交换机类型。用户不要配置T1控制器接口,而要配置ISDN线路上的D信道这样命令提示
就改为:
Router(config-if)#isdn switch-type telco-switch-type
在全局地配置交换机类型的命令和语法与接口配置是相同的,请应用下面的命令:
Router(config)#isdn switch-type telco-switch-type
telco-switch-type
primary- 4 ess
primary-5ess
primary-dms100
primary-net5
primary-ni
primary-ntt
primary-ts014
AT&T 4ESS switch type for the U.S.
AT&T 5ESS switch type for the U.S.
Northern Telecom switch type for the U.S.
European switch type for NET5
National ISDN switch type
Japan switch type
Australia switch type
注意:要使配置改变生效,必须重新加载路由器。
时隙识别
在配置ISDN PRI线路时,用户必须指定供应商的ISDN交换机分配的固定时隙的数量。下面的命令将应
用于控制器的接口:
Router(config-controller)#pri-group timeslots-range
timeslots-range 1-24
1-31
For use with a T1
For use with an E1
D信道串行接口配置
既然用户已经定义了时隙的数量,就需要识别哪一个信道将为D信道。一旦识别出D信道的时隙,用
户就需要为其配置其他的一些属性。因为所有的T 1线路都使用最后一条信道作为D信道,而E1线路使用
第15条信道为D信道,所以配置D信道并不困难。
Router(config)#interface serial timeslot
timeslots
x:23
x:15
x is the slot of the T1 network module
x is the slot of the E1 network module
在串行接口上用户可以配置的一项可选属性是: TEI协商何时进行。
Router(config-if)#isdn tei-negotiation when-to-negotiate
when-to-negotiate
first-call
powerup
Negotiate when first ISDN call
is placed or received
Negotiate when powered up
接受模拟呼叫
由于ISDN呼叫采用D信道建立和拆卸呼叫,因此用户就必须为标准的模拟呼叫预先采取措施。标准模
拟呼叫使用带内信令发誓来建立呼叫,而ISDN采用的是带外信令方式。当传入一个呼叫时, Cisco IOS
就会检查D信道上的数据,看呼叫是否为语音呼叫(记住,模拟调制解调器呼叫看起来就像是标准的电
话呼叫)。如果是语音呼叫(与ISDN设备进行的呼叫对立),CiscoIOS就会将该呼叫路由到内部的调制解
P a g e | 847
CCIE R/S & Service Provider Exam Certification Guide
调器中进行处理。进行此过程的命令如下:
Router(config-if)#isdn incoming-voice source-type
source-type
modem
data 56
data 64
Voice calls will be handled as modems
Voice calls will be handled as data at 56 Kbps
Voice calls will be handled as data at 64 Kbps
记住要在ISDN PRI线路的D信道上应用该命令,如果有多条D信道(因为有多条ISDN PRI线路),您就需
要在所有的D信道上都应用该命令。
42.6.4 ISDN PRI配置实例:
我们首先来看如何配置 T1 链路
3600(config)#isdn switch-type primary-5ess
3600(config)#controller T1 0
3600(config-controller)#framing esf
3600(config-controller)#linecode b8zs
3600(config-controller)#pri-group timeslots 1-24
3600(config-controller)#no shutdown
ISDN-BRI 和 ISDN-PRI 互联
PRI 端:
isdn switch-type primary-5ess
!
controller T1 0
framing esf
linecode b8zs
pri-group timeslots 1-24
!
interface Serial0:23
ip address 10.130.0.2 255.255.255.0
encapsulation ppp
no ip mroute-cache
isdn incoming-voice modem
dialer idle-timeout 900
dialer-group 1
no fair-queue
ppp authenticaiton chap
ppp multilink
!
interface Dialer1
no ip address
encapsulation ppp
dialer in-band
dialer idle-timeout 900
dialer-group 1
!
dialer-list 1 protocol ip permit
P a g e | 848
CCIE R/S & Service Provider Exam Certification Guide
BRI 配置:
isdn switch-type basic-ni1
!
interface BRI0/0
ip address 10.130.0.1 255.255.255.0
encapsulation ppp
isdn spid1 7782001 5101
isdn spid1 7782001 5102
dialer idle-timeout 30
dialer map ip 10.130.0.2 name RouterB broadcast 8991000
dialer load-threshold 1
dialer-group 1
ppp multilink
!
dialer-list 1 protocol ip permit
42.6.5 ISDN多PRI控制
PRI 还支持一个 D 信道控制多条 PRI 链路。这样,用户就得到一
额外的时隙,可以转换为 B 信道—这种技术称为 NFAS(Non-Facility
Associted Signaling)。只有当具有 3 条以上的 PRI 时,才能真正使用
NFAS。如果没有备份 D 信道,并且带有 D 信道的 PRI 失效的话,那
么整套线路就崩溃了。
5300-dialin(config)#controller T1 4
5300-dialin(config-controller)#framing esf
5300-dialin(config-controller)#linecode b8zs
5300-dialin(config-controller)#pri-group timeslots 1-24 nfas_d primary nfas_int
5300-dialin(config-controller)#exit
5300-dialin(config)#controller T1 5
5300-dialin(config-controller)#framing esf
5300-dialin(config-controller)#linecode b8zs
5300-dialin(config-controller)#pri-group timeslots 1-24 nfas_d backup nfas_int
5300-dialin(config-controller)#exit
5300-dialin(config)#controller T1 6
5300-dialin(config-controller)#framing esf
5300-dialin(config-controller)#linecode b8zs
5300-dialin(config-controller)#pri-group timeslots 1-24 nfas_d none nfas_int
5300-dialin(config-controller)#exit
5300-dialin(config)#controller T1 7
5300-dialin(config-controller)#framing esf
5300-dialin(config-controller)#linecode b8zs
5300-dialin(config-controller)#pri-group timeslots 1-24 nfas_d none nfas_int
0 nfas_group 0
1 nfas_group 0
2 nfas_group 0
3 nfas_group 0
每个 PRI 和每个 NFAS 都有一个与之通信的串行接口,这个串行接口都需要配置,特别是需要使用 isdn
incoming-voice modem 将语音呼叫传送到调制解调器上,并且需要手工 no shut 使配置生效。
5300-dialin(config)#interface Serial0:23
5300-dialin(config-if)#isdn switch-type primary-4ess
5300-dialin(config-if)#isdn incoming-voice modem
5300-dialin(config-if)#no shutdown
P a g e | 849
CCIE R/S & Service Provider Exam Certification Guide
42.6.6 Cisco拨号接入解决方案
如上我们可以知道多条 PRI 线路可以通过 NFAS 绑定在一起,则我们可以在一个拥有多条 PRI 的设备上
进行配置,使其成为大规模拨号接入的服务器。Cisco 采用 AS 系列通用访问服务器构成一种结构紧凑功能
丰富的自主式远程访问服务器,提供极大的端口密度来支持 PSTN/ISDN 远程拨号。
AS5300 是该系列较为低端的一种型号,采用 2U 的机架式结
构 , 包 含 一 块 150Mhz 的 RISC 处 理 器 64M 内 存 。 支 持
Modem/ISDN/VoIP 等连接,并支持 SLIP/PPP/X-Remote 等多种协
议。AS5300 有 3 个接口卡插槽一个用于插接 4 端口 T1/E1 PRI 卡
或者 8 端口 T1/E1 串行卡支持 WAN 连接。另两个插槽可以插入
Modem 卡,使用 MICA 承载卡和 Microcomm 6 端口/12 端口
Modem 模块可以在每个卡上最多获得 120 个 Modem。在多数 ISP PSTN 环境中一台 AS5300 可以支持
500~2400 个用户。
AS5800 是一个访问控制服务器,包括一个拨号机架,内含 14 个
线卡插槽。可以支持单端口 T3 或者 144 端口调制解调器线卡。最多
支持 1440 个 Modem,对一个大型 ISP 而言一台 AS5800 系统可以支
持 12000 个用户。在 AS5800 顶部采用的是一台 7206VXR 路由器用于
进行 WAN/LAN 连接,并且 AS5800 具有冗余设计,可以承载 5nines
的服务质量。AS5800 兼具带有强大 RISC 驱动的高性能话音功能卡与
每个话音通路都具有专用高性能数字信号处理器(DSP)两者的优点,
确保对每个通路话音的预定的实时处理。为了使分组能够合理的转
发,这种设计将协处理器直接接入到 Cisco 功能强大的 7206VXR
NPE-300 选路驱动器中。呼入呼叫终接到话音功能卡,高性能的 DSP
结构可以在每个 DS0 上提供 50 个 MIPS 用以支持高压缩/低延时的编
码,自适应抖动缓存、V A D 、舒适背景噪声产生和达 32ms 的回声
消除。这些功能使 AS5800 呼叫就象 PSTN 呼叫一样。
后期 Cisco 又开发了 AS5350XM AS5400 AS5850 等多种型号的接入服务器。为了实现更大规模的 ISP 进行
多功能。Cisco 开发了 AccessPath 系列大规模接入服务器,用于各种数据/语音业务的实现。
P a g e | 850
CCIE R/S & Service Provider Exam Certification Guide
Cisco Access-Path 系列服务器有 2 个型号 AcessPath-TS3 和 AccessPath-VS3。其实质是使用一个机架,并
安装 7206VXR 路由器。选择 2U 的 AS5300 系列接入服务器作为拨号访问服务器。任选互联使用 5002 交换
机并使用一台 Cisco 3640 路由器作为系统控制器。Access-Path 系统结构如下:
内部设备通过特殊的背板连接连接方式如下:
并且 AccessPath 机柜间也可以通过特殊的线缆实现互联:
经由特别设计的 AS 系列服务器能够满足大规模网络服务供应商的要求,例如邮政、电话和电报公司(PTT),
地区贝尔运营公司(RBOC)、长途交换运营者 IXC)和大的 Internet 电话业务提供者(ITSP)等。主要应用包括长
途旁路、普通接入的话音邮件和传真邮件业务、卸载 PSTN 话音和传真业务、集成公司内部电话呼叫和传真、
通过 PBX 和心系统的电话到电话应用、实时传真到传真、计算机电话到 PSTN 等多种应用。业务节点(SN)
业务生成能力增强了 AS5800 的性能,它传送的附加智业务包括预付卡和后付主叫卡、800 号呼叫改发和话
音启动拨号等。Cisco 话音网关系列设备,包括 AS5300、AccessPateh-VS3、36002600,以及于关守的 2500
和 3600 与 AS5800 话音网关之间互相补充,从而为用户提供完整的端到端分组电话解决方案。它可以使网
络服务供应商建立可快速调度有线和无线话音业务,且能够扩展的经济有效的网络。它无缝地集成到现有
电信基础设施上,为 PSTN 新一代基于分组的网络传送增强的话音业务。
P a g e | 851
CCIE R/S & Service Provider Exam Certification Guide
42.6.7 大规模拨号接入服务
通过 NFAS 和 Cisco AS 系列解决方案,可以实现大规模的拨号接入和 VoIP 服务。例如国内的 16300 拨号
接入服务和各种电话卡拨号以及 800 对方付费业务均可由这套系统实现,一个 4PRI 和包含 4 个电路的 NFAS
组配置如下:
version 12.2
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname 5300-dialin
!
boot system flash
aaa new-model
!
aa group server radius auth
server 192.168.100.1 auth-port 1645 acct-port 1646
server 192.168.100.2 auth-port 1645 acct-port 1646
!
aaa authentication login dial group auth
aaa authentication login testing local-case group auth
aaa authentication ppp dial if-needed group auth
aaa authentication ppp testing if-needed local-case group auth
aaa session-id common
!
ip subnet-zero
!
async-bootp subnet-mask 255.255.255.0
async-bootp gateway 192.168.1.1
async-bootp dns-server 192.168.100.3 192.168.100.4
async-bootp nbns-server 192.168.100.5 192.168.100.6
!
! Begin controller configurations:
controller T1 0
framing esf
clock source line primary
linecode b8zs
pri-group timeslots 1-24
!
controller T1 1
framing esf
clock source line secondary
linecode b8zs
pri-group timeslots 1-24
!
controller T1 2
framing esf
linecode b8zs
pri-group timeslots 1-24
!
controller T1 3
framing esf
linecode b8zs
pri-group timeslots 1-24
!
! NFAS configuration with primary and backup interfaces specified respectively:
controller T1 4
framing esf
P a g e | 852
CCIE R/S & Service Provider Exam Certification Guide
linecode b8zs
pri-group timeslots 1-24 nfas_d primary nfas_int 0 nfas_group 0
!
controller T1 5
framing esf
clock source line primary
linecode b8zs
pri-group timeslots 1-24 nfas_d backup nfas_int 1 nfas_group 0
!
controller T1 6
framing esf
clock source line primary
linecode b8zs
pri-group timeslots 1-24 nfas_d none nfas_int 2 nfas_group 0
!
controller T1 7
framing esf
clock source line primary
linecode b8zs
pri-group timeslots 1-24 nfas_d none nfas_int 3 nfas_group 0
!
interface Loopback0
ip address 192.168.1.1 255.255.255.0
!
interface Ethernet0/0
ip address 192.168.0.246 255.255.255.252
!
interface Serial0:23
no ip address
isdn switch-type primary-4ess
isdn incoming-voice modem
!
interface Serial1:23
no ip address
isdn switch-type primary-4ess
isdn incoming-voice modem
!
interface Serial2:23
no ip address
isdn switch-type primary-4ess
isdn incoming-voice modem
!
interface Serial3:23
no ip address
isdn switch-type primary-4ess
isdn incoming-voice modem
!
! The D-channel of this T1 is configured as a primary D-channel.
! When this channel goes down, the T1 #5, which is configured as a
! backup D-channel, inherits this configuration.
interface Serial4:23
no ip address
isdn switch-type primary-4ess
isdn incoming-voice modem
!
! Serial 5:23, 6:23 and 7:23 interfaces don’t need to be configured, because
! T1 5, T1 6 and T1 7 belong to the NFAS group.
interface Group-Async1
ip unnumbered Loopback0
P a g e | 853
CCIE R/S & Service Provider Exam Certification Guide
encapsulation ppp
async mode interactive
peer default ip address pool dialpool
ppp authentication pap dial
group-range 1 240
!
ip local pool dialpool 192.168.1.2 192.168.1.254
ip classless
ip route 0.0.0.0 0.0.0.0 192.168.0.245
!
radius-server host 192.168.100.1 auth-port 1645 acct-port 1646 timeout 18 key a10u8
radius-server host 192.168.100.2 auth-port 1645 acct-port 1646 timeout 18 key a10u8
radius-server retransmit 3
!
line con 0
exec-timeout 0 0
line 1 240
login authentication dial
modem InOut
modem autoconfigure type mica
autocommand ppp default
autoselect during-login
autoselect ppp
speed 115200
line aux 0
line vty 0 4
!
end
42.6.8 AS5x00特殊命令
AS5x00 系列在使用过程中,最常用的命令为升级 Modem 的 Fireware,升级方式如下:
5300-dialin#copy tftp flash
Address or name of remote host []? 192.168.1.17
! Enter the image file name you want to copy:
Source filename []? mica-modem-pw.2.7.3.0.bin
Destination filename [mica-modem-pw.2.7.3.0.bin]?
Accessing tftp://www-emp/ mica-modem-pw.2.7.3.0.bin...
Erase flash: before copying? [confirm]n
Loading mica-modem-pw.2.7.3.0.bin from 192.168.1.17 (via FastEthernet0):
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!
[OK - 474939/949248 bytes]
Verifying checksum... OK (0xCB52)
5300-dialin#configure terminal
5300-dialin(config)#spe 1/0 2/9
5300-dialin(config-spe)#firmware upgrade reboot
5300-dialin(config-spe)#firmware location flash:mica-modem-pw.2.7.3.0.bin
同时可以通过如下命令查看 Modem 的状态进行故障判断
5300-dial#show modem operational-status 1/13
P a g e | 854
CCIE R/S & Service Provider Exam Certification Guide
Chapter43
ATM协议
43.1 ATM协议简介
43.1.1 协议简介
ATM(Asynchronous Transfer Mode)是一种以信元为单位的异步转移模式。它是基于 B-ISDN 宽带综合服
务数字网标准而设计的用来提高用户综合访问速度的一项技术。在交换形式上而言,ATM 是面向连接的
链路,任何一个 ATM 终端与另一个用户通信的时候都需
要建立连接,这一方面来看,ATM 拥有电路交换的特点;
另一方面 ATM 采用信元(Cell)交换的方式,信元长度固定
为 53 字节。
选择净荷长度需要考虑的几个因素:
网络总时延:1000km 传输,8 个 ATM 交换机,2 次
ATM 和非 ATM 之间的转换,端到端时延:32 字节信元 14ms,
64 字节信元 22ms,总时延过大对话音承载有困难。欧洲
意见:32 字节,时延小。美国、日本意见:64 字节,传输
效率高。
最终 ITU 折衷:48 字节
ATM 协议参考模型如下:
用户平面:
采用分层结构,提供用户信息流的传送,同时也具有一定的控制功能,如流量控制、差错控
制等;
控制平面:
采用分层结构,完成呼叫控制和连接控制功能,利用信令进行呼叫和连接建立、监视和释放;
P a g e | 855
CCIE R/S & Service Provider Exam Certification Guide
管理平面:
包括层管理和面管理。其中层管理采用分层结构,完成与各协议层实体的资源和参数相关的
管理功能,如元信令。同时层管理还处理与各层相关的 OAM 信息流;面管理不分层,它完
成与整个系统相关的管理功能,并对所有平面起协调作用。
43.1.2 ATM物理层
ATM 物理层和 OSI 模型中的第一层非常一致。在物理介质上控制传输,并结收位流。 ATM 物理层分
为两个子层,传输汇聚层(TC)和物理介质层(PMD)。输入 TC 层的是 53 字节长的 ATM 信元。而 PMD 层输
出的是包含 ATM 信元的第一层数据。
ATM 物理层有很多职责:
信元头错误检验(HEC)的产生校验和差错
信元定界和率退耦
传输帧适配
传输帧的生成和回复
TC 子层:
传输汇聚子层察看信头,并使用 HEC 检查信头是否有错,同时可以进行信元定界,即计算和
忽略开始前 7 个信元,完成计算后,对接下来的信元进行分析和传送。以一条 OC-3 链路而言,大
约每秒产生 2.5M 个 Cell,前 7 个显得微不足道了。
同时由于 ATM 为异步传输链路,但在 SONET 以及 DS-3 这些链路上,是采用同步传输方式的,
ATM 使用信元率退耦功能插入空载信元到同步链路中去。这种模式可以与同步 T1 线路做一对比。
在 T1 线路中每 125us 都有一个 T1 帧生成,该速率由主时钟控制,每帧的第 k 时隙中有从相同源
来的 1 字节数据。而 ATM 不严格要求信元交替地从不同的源到来,每一列从各个源来的信元,没
有特别的模式,信元可以从任意不同的源到来,而且,不要求从一台计算机来的信元流是连续的,
数据信元可以有间隔,这些间隔由特殊的空闲信元(idle cell)填充。
VCI/VPI 均为 0 的信元被定义为空信元。
TC 子层的另一项重要任务是:针对从事传输的系统,产生成帧信息。比如,一个 ATM 摄象
机在线路上只产生一系列信元,但它也可能用 ATM 信元产生 SONET 帧,嵌入 SONET 有效载荷中。
P a g e | 856
CCIE R/S & Service Provider Exam Certification Guide
在后一种情况下,TC 子层将产生 SONET 或帧,并把 ATM 信元打包,这并不完全是一个不必要的
步骤,因为 SONET 有效载荷不能支持 53 字节信元的整数倍。
物理介质子层:
物理介质子层提供比特传输能力,对比特定时和线路编码等方面作出了规定,并针对所采用
的物理介质(如光纤、同轴电缆、双绞线等)定义其相应的特性;
ITU-T 标准(协议 I.432)定义了两个主要的 ATM 物理层协议:
1、基于信元的接口-不需要成帧的连续信元流
2、基于帧的接口-使用 SDH 和 PDH 的传输帧结构。
UNI/NNI 处的 SDH 接口速率:
1)155.52Mbits/sec.
2)622.08Mbits/sec.
UNI/NNI 处的 PDH 接口速率:
国家标准(如北美的 T1/T3 和 ETSI 的 E1/E3)
对基于信元的接口而言,传输速率也被标准化在
155.52Mbits/sec.
622.08Mbits/sec.。
下图为 ATM 在 SDH 帧中封装的处理方式:
1、ATM 信元流被映射到带有 VC-4 路径开销的 VC-4 容器中
2、由于 C-4 容量(2340 字节)并不是信元长度的整数倍,因此信元可以跨过 C-4 边界
3、映射的细节和开销的结构由协议 I.432 和 G.707(1995)给出
STM-1 的标准速率为 155.52Mbps,去掉各种开销,信元的传送速率为:
(155.52/270)x260=149.76Mbps
类似的原理可以用于 STM-4(622.08 Mbits/s 结构中的信元映射;PDH 的映射结构在协议 G.703, G.803
P a g e | 857
CCIE R/S & Service Provider Exam Certification Guide
和 G.832 中有所描述。但传输帧映射/开销处理是很复杂的且需要大量的硬件工作。
ATM 定义了众多接口标准,如下:
43.1.3 IMA反向多路复用
IMA(Inverse Multiplexing for ATM)用于将一个单一的高速 ATM 信元流在发送端拆散并放在两个或多个
低速链路上进行传输。在接收端将多个低速 ATM 信元流还原为高速 ATM 信元流。 其工作原理如下图
他在发送端通过 IMA 模块对信号进行处理,并将空载信元过滤,然后通过 ICP 协议在特定的时间发送
ICP 信元,帮助接收方 IMA 进行流重组和空载信元的再次加入。它工
作在 TC 和 PMD 层之上,位于 ATM 层下方,右图为 Cisco 的 ATM-IMA
模块,它可以将 8 个 T1 链路进行聚合。
43.1.4 ATM层
ATM 不同于同步交换机制,它是一种异步多路复用机制,在 ATM 层的作用为产生 5 字节的 ATM 信元
头。并将信元头夹在到净荷前端。ATM 交换机制如下:
1.信元传输
第一步是进行头部的校验和。一旦产生出 HEC,并插入信元头部,那么此信元就作好了发送准
备。传输手段分成两组:异步的和同步的。当使用异步方式时,只要准备好了发送它,就可以发送,
P a g e | 858
CCIE R/S & Service Provider Exam Certification Guide
没有时间限制。使用同步方式,信元就必须按照事先确定的时间节拍发送。如果在需要时无数据信
元可用,TC 子层就必须发明一个,这种信元称为空闲信元(idle cell)。
无数据信元的另一种类型是操作和维护 OAM(operation and maitenance)信元。ATM 机制也使用
OAM 信元来交换控制及其他必需的信息,以保证系统的运行。把 ATM 输出速率与从事传输系统的
速率相匹配是 TC 子层的重要任务。
在接收方,空闲信元在 TC 子层中进行处理,但 OAM 信元交给了 ATM 层。
尽管电话公司明确地使用 SONET 作为 ATM 的传输系统,但是也可以定义成把 ATM 对应到其他
系统的有效载荷字段,并且这种新帧已在工作。尤其是,映射成 T1,T3 或 FDDI 帧也是可以的。
2.信元接收
在输出处,TC 子层的工作是取得一系列信元,在每个信元上增加一个 HEC,把此结果转变成比
特流,并通过加入 OAM 信元,将比特流匹配为进行物理传输系统的速率。在输入处,TC 层准确地
进行逆变换。它取来到达的比特流,设定信元边界,确定信元头(丢弃拥有不合法头部的信元),处
理 OAM 信元,并把数据信元上传给 ATM 层。
最困难的部分是在到来的比特流中设定信元边界。在某些情况下,进行传输的物理层提供了帮
助。然而,有时物理层对成帧并不能提供帮助。这时应该使用 HEC。随着比特流到达 TC 子层,保留
一个 40 位移位寄存器,比特流从左边进入,右边出来。TC 子层然后审查这 40 位,看是否可能存在
一个合法的信元头部。如果有,最右边的 8 位将是合法的 HEC,而最左边的 32 位则不是。如果不存
在这种情况,则缓冲区没有存在一个合法信元,在这种情况下,缓冲区中所有的位都向右移动一位,
使得后端空出一位,于是一个新的输入位就加到最左端。不断重复此过程,直到定位一个合法的 HEC。
此时,明确了信元边界,因为移位寄存器包括了一个有效的头部。
43.1.5 VPI/VCI
ATM 交换机使用 VPI/VCI 进行数据交换,这一点和 Frame-Relay 的 DLCI 号比较相似,每个交换机将分
析信元头部的信息,根据信元头部的 VCI/VPI 信息进行数据交换。VPI 和 VCI 的关系如下:
VP 表示一个虚通路,而 VC 表示为一个虚电路。 而一个 VCC 表示一个虚电路连接,通常为 OC-3 E3
等数字链路。下图为它们之间的关系:
一个 VCC 链路可以包含多条 VP,而一个 VP 则可以包含多个 VC。ATM 则采用这种方式来讲多个虚拟
链路聚合到一条 VP 或者 VCC 中进行传输。通过 VPI/VCI 编址,ATM 可以支持如下多种虚电路类型:
永久虚电路 PVC
交换虚电路 SVC
Soft VC
P a g e | 859
CCIE R/S & Service Provider Exam Certification Guide
在链路建立过程中,如下图:
一个虚通道连接 VPC 是虚通道链接(Virtual Path Links, VPL)的级联。每条 VPL 与一个 VPI 值相联系。交
换点可以改变 VPI 值。一个 VCC 是 VCL 的级联。每条 VCL 与一 VPI 及 VCI 相联系。交换点可以改变 VPI/VCI
值。如下图,Cell 在传输过程中 VPI/VCI 的改变过程
VPI/VCI 值分配方式如下:
Virtual Paths(per Transmission Path)
Virtual Channels per Virtual Path
Maximum number of Virtual Channels
UNI
256 (8 bits)
65,536 (16 bits)
16,777,216(24 bits)
NNI
4096 (12 bits)
65,536 (16 bits)
268,435,456(28 bits)
关于 UNI/NNI,ATM 论坛定义了多种网络接口:
1、UNI(User-Network Interface)
UNI 为 ATM 网中的用户网络接口,它是用户设备与网络之间的接口,直接面向用户。UNI 接
口定义了物理传输线路的接口标准,即用户可以通过怎样的物理线路和接口与 ATM 网相连,还定
义了 ATM 层标准、UNI 信令、OAM 功能和管理功能等。按 UNI 接口所在的位置不同,又可分为公
用网的 UNI 和专用网的 UNI(PUNI),这两种 UNI 接口的定义基本上是相同的,只是 PUNI 由于不必
象公网的接口那样过多地考虑严格的一致性,所以 PUNI 的接口形式更多、更灵活、发展也更快。
P a g e | 860
CCIE R/S & Service Provider Exam Certification Guide
2、NNI(Network to Network/Network Node Interface)
NNI 可理解为网络节点接口或网络/网络之间的接口,一般为两个交换机之间的接口,与 UNI
一样,NNI 接口也定义了物理层、ATM 层等各层的规范,以及信令等功能,但由于 NNI 接口关系
到连接在网络中的路由选择问题,所以特别对路由选择方法做了说明。同样,NNI 接口也分为公
网 NNI 和专用网中的 NNI(PNNI),公网 NNI 和 PNNI 的差别还是相当大的,如公网 NNI 的信令为 3、
7 号信令体系的宽带 ISDN 用户部分 B-ISUP,而 PNNI 则完全基于 UNI 接口,仍采用 UNI 的信令结
构。ATM 论坛又开发了一种新型接口 AINI,用于 PNNI 和 B-ICI 之间的互联,它同样采用 PNNI 类似
的信令。
3、B-ICI(BISDN Inter-Carrier Interface)
B-ICI 定义为两个公用 ATM 网之间的接口,为分别属于两个运营者的 UNI 接口提供了连接,
它的定义基于 NNI 接口,其特点是支持不同网络间的多种业务传送,包括基于信元的 PVC 方式业
务、PVC 方式的帧中继业务、电路仿真业务、SMDS 以及 SVC 业务等。
4、DXI(Data Exchange Interface)
DXI 定义在数字终端设备 DTE 和数字连接设备 DCE 之间,DTE 通过 DXI 与 DCE 相连,再通过
ATM UNI 接口接入 ATM 网中,DCE 完成了不符合 ATM 标准的数据终端到 ATM 的适配过程,相当
于终端适配器。
5、FUNI(Frame Based UNI Interface)
FUNI 的意义与 DXI 相似,FUNI 将 ATM 适配功能完全移入了交换机内部,终端和 ATM 交换机
之间传送 FUNI 帧,所以与基于信元的 DXI 接口相比,FUNI 在接入线上有更高的效率。
VPI/VCI 号放置在 ATM 信元的信头,信元头部格式如下:
左端为 UNI 处信元头格式,右端为 NNI 处信元头格式,其他字段解释如下:
GFC:
通用流量控制
VPI:
虚通道标识符
VCI:
虚通路标识符
PT:
载荷类型
CLP:
信元丢失优先级
HEC:
信头错误控制
HEC:信头错误控制:
信头错误控制(HEC)机制提供了两项重要的功能:
1、ATM 信头差错的检测和校正
2、信元定界
ATM 信头差错检测和校正
信头差错控制在整个的信元头(在发送端)上完成一 CRC 8 的计算。每个信元都有一个 5 字节
的头部,头部中包括 4 字节的虚拟电路及控制信息和 1 字节的校验和。校验和只包括了前 4 个头
部字节,而不占用有效载荷字节。它是由 32 个头部位除以多项式 x^8+x^2+x+1 后,所得的余数构
P a g e | 861
CCIE R/S & Service Provider Exam Certification Guide
成的。校验和加上常数 01010101。
做出只校验头部的决定,是为了减少由于头部错误,而造成不正确传递信元的可能,也为了
避免其校验开始要大得多的有效载荷字段的校验。如果确需校验有效载荷字段,就要上到较高的
层上完成这一功能。由于校验和字段只位于头部,因此这 8 位校验和字段被称为头部错误控制
HEC(header error control)。
接收 HEC 算法能够完成
1) 单比特的错误校正
2) 多比特的错误检测
检测到多比特错误
(信元删除)
未检测到错误
校正模式
未检测到错误
检测模式
检测到错误
(删除信元)
检测到单比特错误
(校正)
信元定界:
利用 HEC 域完成信元定界的功能以识别信元的边界,信元定界的算法是通过利用头中的 32 个防止
错误的信头比特和 8 个控制比特间的相关性来完成。如下图:
比特流
捕获状态
正确的HEC
不正确的HEC
连续7次
不正确的HEC 连续6次正确的HEC
预同步状态
同步状态
信元流
在捕获状态,定界过程是通过比特接比特地检验假设信头域中的正确的 HEC 来完成。一旦找
到,运行机制即进入预同步状态。在捕获状态,自同步加扰器是被禁能的。(加扰器只被用于信息
域,而不被用于信头)。在预同步状态,定界是由检查信元接信元的 HEC 相关性来完成的。在同步
状态,信元定界会丢失掉,如果出现 7 次连续的不正确的 HEC 时,重新进入捕获状态。
CLP 信元丢失优先级
信元丢失优先级域(CLP)被用来严格地指示出在一个给定的连接中的信元的优先级
P a g e | 862
CLP=0
指示一连接中的“高优先级”信元;
CLP=1
指示一连接中的“低优先级”信元。
CCIE R/S & Service Provider Exam Certification Guide
在遇到拥塞的情况下,一个 ATM 网络元素可以有选择地在删除高优先级(CLP=0)的信元之前删除低优
先级 (CLP=1)的信元。这一 CLP 应用很类似于帧中继承载业务中的 Discard Eligibility(DE)功能。CLP 与 ATM
的流量控制策略和业务质量 (QOS)参数密切相关。
PT 载荷类型
载荷类型字段有 3 位,分别表示:净荷类型,帧结尾和拥塞情况。
第一位用于区分 OAM 信元和用户数据信元,PT 的第二位为拥塞状况,任何拥塞的 ATM 网络元素可以
按下面方式改变 PTI 值:以 PTI=000 或 010 接收的信元可以按 PTI=010 发送出去;而以 PTI=001 或 011
接收的信元可以按 PTI=011 发送出去。没有拥塞的网络元素不应该改变 PTI。
详细的 PT 值分类如下:
000
001
010
011
100
101
110
111
用户数据信元,没有经历拥塞,ATM 用户到 ATM 用户指示=0
用户数据信元,没有经历拥塞,ATM 用户到 ATM 用户指示=1
用户数据单元,经历拥塞,ATM 用户到用户指示=0
用户数据单元,经历拥塞,ATM 用户到用户指示=1
OAM F5 分段相关信元
OAM F5 端到端相关信元
资源管理信元
保留给将来的 VC 功能
预分配信头值:
使用(针对 ATM 层)
未分配的信元
无效
元信令 Meta-signalling
通用的广播信令
点到点信令
分段 OAM F4 流信元
端到端 OAM F4 流信元
VP 资源管理信元
保留给将来的 VP 功能
保留给未来功能
保留给未来功能
分段 OAM F5 流信元
端到端 OAM F5 流信元
VP 资源管理信元
保留给将来的 VP 功能
VPI
0000 0000
任何非 0VPI
XXXX XXXX
XXXX XXXX
XXXX XXXX
任何 VPI 值
任何 VPI 值
任何 VPI 值
任何 VPI 值
任何 VPI 值
任何 VPI 值
任何 VPI 值
任何 VPI 值
任何 VPI 值
任何 VPI 值
VCI
00000000 00000000
00000000 00000000
00000000 00000001
00000000 00000010
00000000 00000101
00000000 00000011
00000000 00000100
00000000 00000110
00000000 00000111
00000000 000SSSSS
00000000 000TTTTT
任何未被预分配的 VCI
任何未被预分配的 VCI
任何未被预分配的 VCI
任何未被预分配的 VCI
PTI
Any
Any
0AA
0AA
0AA
0A0
0A0
110
0AA
0AA
0AA
100
101
110
111
CLP
0
B
C
C
C
A
A
A
A
A
A
A
A
A
A
43.1.6 AAL层
ATM 适配层用于和高层和 ATM 之间的通讯,高层信息类型为语音,数据或视频。
ATM 网络的 AAL 层与 TCP 具有本质区别,其主要原因是设计者对传输音频和视频数据流更有兴趣,为
此迅速传送比精确地传送更重要。ATM 层连续输出 53 字节的信元。信元中没有差错控制、没有流量控制
以及其他种类的控制。所以,它不能很好地满足多数应用的要求。为了弥补这一不足,在建议 I.363 中,
ITU 在 ATM 层之上定义了一个端到端的层。这一层称为 ATM 适配层 AAL(ATM adaptation layer),
AAL 的目标是向应用提供有用的服务,并将它们与在发送端(方)将数据分割为信元、在接收端将信元
P a g e | 863
CCIE R/S & Service Provider Exam Certification Guide
重新组织为数据的机制隔离开来。它按照 3 个坐标轴来组织服务空间:
1、实时服务和非实时服务。
2、恒定比特率服务和变化的比特率服务。
3、面向连接的服务和非连接的服务。
原则上,用 3 个坐标轴和每个坐标轴上的 2 个值可以定义 8 种不同的服务, ITU 觉得只有其中的 4 个有
使用价值,并分别命名为类 A、B、C、D。其他几种则未得到支持。从 ATM4.0 开始,主要的不同是传输
类(ABR、CBR、NRT-VBR、RT-VBR 和 UBR)之间,而不是这些 AAL 支持的服务类之间。
服务特性
带宽保证
适用于实时通信
适用于突发通信
有关于拥塞的反馈
CBR
是
是
不
不
RT-VBR
是
是
不
不
NRT-VBR
是
不
是
不
ABR
可选
不
是
是
UBR
不
不
是
不
恒定比特率 CBR(constant bit rate)--Class A
主要用来模仿铜线或者光导纤维。没有差错校验,没有流量控制,也没有其余的处理。这个类
别在当前的电话系统和将来的 B-ISDN 系统中作了一个比较圆滑的过渡,因为话音级的 PCM 通道,
T1 电路以及其余的电话系统都使用恒定速率的同步数据传输。
可变比特率 VBR(variable bit rate)--Class B/C
VBR 划分为两个子组别,分别是为实时传输和非实时传输而设立的。RT-VBR 主要用来描述具有
可变数据流并且要求严格实时的服务,比如交互式的压缩视频(例如电视会议)。NRT-VBR 用于主要
是定时发送的通信场合,在这种场合下,一定数量的延迟及其变化是可以被应用程序所忍受的,
如电子邮件。
可用比特率 ABR(available bit rate)--Class C/D
为带宽范围已大体知道的突发性信息传输而设计的。ABR 是唯一一种网络会向发送者提供速度
反馈的服务类型。当网络中拥塞发生时会要求发送者减小发送速率。假设发送者遵守这些请求,
采用 ABR 通信的信元丢失就会很低。运行着的 ABR 有点象等待机会的机动旅客:如果有空余的座
位(空间),机动的旅客就会无延迟地被送到空余座位处;如果没有足够的容量,他们就必须等待(除
非有些最低带宽是可用的)。
未指定比特率 UBR(unspecified bit rate)--Class C/D
不做任何承诺,对拥塞也没有反馈,这种类型很适合于发送 IP 数据报。如果发生拥塞,UBR
信元也会被丢弃,但是并不给发送者发送反馈,也不给发送者希望放慢速度的期望。
AAL 层必须将这些大小不等的数据流分割为 48 字节的净荷。AAL 层分为 2 层:
1.会聚子层(CS)
服务特定会聚子层(SSCS)
公共部分会聚子层(CPCS)
2.分装和重组(SAR)子层
P a g e | 864
CCIE R/S & Service Provider Exam Certification Guide
SSCS 部分与各种业务的特性相关联,CPCS 则通过在帧前后加入可变长度的填充字符来成 48 字节帧和
进行错误检测。
各 AAL 层特征如下:
AAL1:在各种类型的 CBR 业务间提供多种共同的程序:检测丢失/误插入信元,定时信息,结构信息,
前向差错校验(FEC)
AAL2:为节省带宽,对时延敏感的应用, 提供在单个 VCC 中复用多达 255 个用户数据的一种手段,
用于传送短和可变长度的分组
AAL3/4:提供检测用户数据的差错手段,用于无连接业务的适配
AAL5:提供检测用户数据的差错手段,以及提供把破坏的数据前转给用户的能力
43.1.7 AAL1
AAL1 向用户提供了恒定比特率的数据传输能力,并提供传送定时信息和结构信息的能力。在必要时
还能够提供一定的纠错能力和报告错误的能力(包括丢失和错误插入的信元,以及信头错误等).
AAL1 中对用户数据不使用通常的检错码。在需要低误码率时采用前向纠错(FEC)。理论上不可能使误
P a g e | 865
CCIE R/S & Service Provider Exam Certification Guide
码率降低为 0。以恒定比特率传输数据时,若收发双方的用户时钟不能同步,则会发生滑码。若不允许滑
码现象的出现,则收方用户时钟必须与发方用户时钟严格一致。
AAL1 中提供的传送定时信息的能力,就是传送发方用户时钟同步信息的能力。用户所传送的恒定比
特率数据中通常总是具有某种结构。如数字一次群和高次群中的帧结构。这体现为用户传送的比特流被
划分为一些段落,在这些段落中的不同位置上的各个比特的意义往往并不相同。为使收方能够正确划分
出这些段落,发方必须把这些段落的起始和终止位置通知对方。AAL1 中的传送结构信息的能力,指的就
是传送这些起始和终止位置的能力。由于数据传送是恒定比特率的,所以必然是连续不断的,因此,一
个段落的终止位置必然就是下一个段落的起始位置。这即意味着只需指明两个段落的边界。
AAL1 可以进一步划分成分段重组(SAR)子层和会聚子层(CS)。
在发送端,AAL-SDU 就是 CS-SDU,它经过 CS 子层后成为 CS-PDU, 并做为 SAR-SDU 送至 SAR 子层,
经过 SAR 子层后成为 48 字节数据块,即 SAR-PDU。SAR-PDU 就是 AAL-PDU。
在接收端,SAR 子层从 ATM 层接收 SAR-PDU,即 AAL-PDU,经处理后成为 SAR-SDU。SAR-SDU 做为
CS-PDU,送至 CS 子层,经 CS 子层后成为 CS-SDU,即 AAL-SDU。
AAL1 的 SAR 子层:
SAR 子层的最重要功能是给顺序传送的数据块增加一个序号字段,这使得用户可以发现数
据单元的丢失和错误插入。为使序号字段被正确地送往对方,以及不使错误的序号字段对系统
的正常工作造成影响,这个序号字段同时具有误码防护的能力。
SAR 子层向 CS 子层提供:SAR-SDU 的序号;CSI 比特以及 SN 字段是否可用(即指明是否含有
不可纠正的错误)。
CSI 比特的值由 CS 子层提供。SNP(SequenceNumberProtection)是 SN 字段的 CRC 校验码,使
用多项式 x^3+x+1。第 4 个比特是偶校验码,用于前面 7 个比特的偶极性校验。
AAL1 的 CS 子层:
CS 子层的功能是:处理 SAR-SDU 的序号,传送时钟信息和结构信息以及纠错。AAL1 规定
了两种实现业务时钟同步的方法-同步剩余时间标志法 SRTS(SynchronousResidualTimeStamp)和
自适应时钟法(AdaptiveClockMethod)。
解释:在 ATM 物理层,收发信息的双方是时钟同步的。这个时钟称为是 ATM 系统时钟。
由于存在 ATM 系统时钟,因此只要接收方知道业务时钟和 ATM 系统时钟的比值,就可以由 ATM
系统时钟将业务时钟精确地恢复出来。通常,接收方可以事先知道业务时钟的标称值。因此,
我们需要知道的仅仅是实际使用的业务时钟和标称值的偏差。值得重点说明的是:此偏差可以
利用 CSI 比特进行传送。
P a g e | 866
CCIE R/S & Service Provider Exam Certification Guide
结构消息传送(SDT)
如果 AAL1 用户传送的信息中包括某种结构,则需要在传送数据的同时把结构消息也传送过
去。在实际应用中,有许多种信息包含着某种结构(如数字一次群或高次群中的帧结构)。
AAL1 规定了采用 CSI 比特来传送结构消息。为此存在两种 SAR-PDU 格式,一种叫做非 P 格
式,一种叫做 P 格式。在非 P 格式中,SAR-PDU 净荷的 47 个字节都用于传送用户信息;而在 P
格式中,SAR-PDU 的第一个字节是一个指针,用于指示用户信息结构的起始位置,其余的 46 个
字节用于传送用户信息。为防止与时钟信息的传送发生矛盾,规定只允许 CSI 比特 0,2,4,6
可以是 P 格式。CSI 比特为 0 时代表非 P 格式;而为 1 时代表 P 格式。
P 格式 SAR-PDU 的指针字节的第一个比特保留,其余 7 个比特取值 0~127,已完全
可以指示出相邻两个 SAR-PDU 中的全部字节位置(共 47 x 2=94 个)。
与传送时钟信息所需的 CSI 比特 1,3,5,7 不发生使用上的冲突。
用户信息的纠错保证
AAL1 规定了一种纠错方法,可以用来传送误码率要求极低的信息。AAL1 用户可以选择是
否使用这种方法。AAL1 中的 RS 码造成了一个 128 x 47 个字节的矩阵,而后作为 128 个信元发送
出去,相当于在每 124 个装载用户信息的信元后面都附加了 4 个 RS 码信元。RS(128,124)码可以
用于纠正两个错误字节或恢复 4 个已知位置的丢失字节。由于使用了 SAR-SDU 序号,所以在发
生信息丢失时,丢失字节的位置是可以知道的。
43.1.8 AAL2
AAL1 是针对简单的、面向连接的、实时数据流而设计的,除了具有对丢失和误入信元的检测机制外,
它没有错误检测功能。对于单纯的未经压缩的音频或视频数据,或者其中偶尔有一些较重要的位的其他
任何数据流都没有什么问题,AAL1 就已经足够了。
对于压缩的音频或视频数据,数据传输速率随时间会有很大的变化。例如,很多压缩方案在传送视
频数据时,先周期性地发送完整的视频数据,然后只发送相邻顺序帧之间的差别,最后再发送完整的一
帧。当镜头静止不动并且没有东西发生移动时,则差别帧很小。其次,必须要保留报文分界,以便能区
分出下一个满帧的开始位置,甚至在出现丢失信元或坏数据时也是如此。由于这些原因,需要一种更完
善的协议。AAL2 就是针对这一目的而设计的。
AAL2 同样将会聚子层分为 CPCS 和 SSCS 两层。SSCS
为 AAL2 的独立用户提供 AAL2 与高层应用的连接,CPS 提
供的功能是提供识别 AAL2 用户的基本结构,查错,封装
和分解各种净荷。AAL2 的独特之处在于它允许在一个
ATM 信元中或跨越多个信元存在可变长度的净荷。
AAL2 可以通过 CID 字段标示 AAL2 的用户信道,该
字段为 8 位,由于 1~7 被 ITU 占用,故能支持 248 个用户
信道
P a g e | 867
CCIE R/S & Service Provider Exam Certification Guide
AAL2 协议结构如下:
CPS-PDU 格式
STF:
起始字段
OSF:
偏差字段(6 比特)
SN:
顺序号码(1 比特)
P:
奇偶校验(1 比特)
PAD:
填充(0-47 字节)
CPS 分组格式:
CID:
信道标识符(8 比特)
LI:
长度指示(6 比特)
UUI:
用户到用户指示(5 比特)
HEC:
信头差错控制(5 比特)
INFO:
信息(1-45/64 字节)
CID=0:
未使用
CID=1:
预留给层管理对等层到对等层程序
CID=2-7:
预留
CID=8-255:
AAL2 CPS 用户实体标识
CPS-PP 的大小依赖于分组填充时延(PFD)和提供给每一语音汇聚的带宽。PFD 是把 AAL2-PDU 组装和
分段为信元所需的时间, 对 PFD 进行配置,可以改变语音的时延特性以成为 AAL2 的 ATM 适配段。不同
的语音电路可能会有不同的最小时延需求。
P a g e | 868
CCIE R/S & Service Provider Exam Certification Guide
AAL2 可用于第三代移动通信接入网络(如 W-CDMA)。可借助独立于 ATM 信令的全新 AAL2 信令来快
速、灵活地建立 AAL 连接。
43.1.9 AAL3/4
开始时,ITU 为服务类 C 和 D 制订了不同的协议(服务类 C 和 D 分别是对数据丢失或出错敏感,但
不具有实时性的面向连接和非连接的数据传输服务类)。后来 ITU 发现没有必要指定两套协议,于是便将
它们合二为一,形成了一个单独的协议,即 AAL3/4。
AAL3/4 可以按两种模式进行操作,即流和报文。在流模式中不保留报文分界信息。以下将集中讨论
流模式。在每种模式中都可能出现可靠的传输和不可靠的(即不保证可靠性)的传输。AAL3/4 具有一个
其他协议中没有的性能--支持多路复用。AAL3/4 的这一功能允许来自于一台主机的多个会话(如远程登录)
沿着同一条虚电路传输并在目的端分离出来。使用一条虚电路的所有会话得到相同质量的服务,因为这
是由虚电路本身性质所决定的。
和 AAL1、AAL2 不一样,AAL3/4 具有会聚子层协议和 SAR 子层协议。从应用程序到达会聚子层的报
文最大可达 65535 字节。首先将其填充为 4 的整数倍字节。接着加上头和尾信息。在会聚子层对保温进
行了重构,并加上了头和尾信息后,便将报文传送给 SAR 子层,由 SAR 子层将报文分为最大 44 字节的数
据片。AAL3/4 具有两层协议开销:每个报文需要增加 8 字节,每个信元增加 4 字节。总之,它是一种开
销极大的机制,尤其是对短的报文。
CPCS-PDU 格式如下图:
1.
公共部分指示符(CPI):用来指示消息类型、解释接下来的字段和计数单元(默认编码为
0000 0000,用于按字节计数)。
2.
开始标志(B-Tag):与尾中的 End Tag 结合起来,来检测错误/误装配条件。
3.
缓冲器分配(BA)大小:被用于数据帧所需的最大缓冲器要求。
4.
垫塞(Pad):被用于对 CPCS-PDU 载荷进行 32 比特的校准。取值范围为 0-3 个字节。
5.
对准:这一字段被用于尾的 32 比特对准。其它编码没有被规定。
6.
结束标志(E-Tag):与 B-Tag 字段相关起来,用于 CPCS-PDU 的错误/误装配控制。
7.
长度(Length):指示出 CPCS-PDU 载荷字段的长度。也可与 B/E-Tag 关联起来,以进行差错
控制。
AAL3/4-SAR 格式:
1.
段类型(ST):这一字段被编码成用来指示出该 SAR-PDU 是消息开始 BOM、消息继续(COM)、
消息结束(EOM)还是单段消息(SSM)。
2.
序列号(SN):指示 CPCS-PDU 段中的序列号。
3.
消息识别符(MID):这一字段提供了能力以进行多个 AAL 连接的复用/去复用(交织)(在一条
P a g e | 869
CCIE R/S & Service Provider Exam Certification Guide
ATM 连接上)。这一能力也可被用于无连接的传输。
4.
垫塞(Pad):用来将 SAR-PDU 载荷调整为 44 字节。此字段被编码为全 0。
5.
长度指示符(LI):按字节数指示出用户信息的长度。
6.
CRC:CRC-10 被用于检测错误。CRC 的计算是在整个的 SAR-PDU 上进行的。
ST:段类型
SN:序列号
MID:消息识别符
LI:长度指示符
BOM:消息开始
COM:消息继续
EOM:消息结束
AAL 类型 3/4 的 CPCS 能够提供广泛的错误检测/序列号能力以用于可靠数据的传输和将来功能的增
强,但实现上相对复杂。AAL 类型 3/4 的 SAR 功能提供了复用和错误检测/序列校验能力,但实现上相对
复杂且效果不是很有效。
43.1.10 AAL5
从 AAL1 到 AAL3/4 协议主要是由电信工业设计的并被 ITU 标准化,它没有太多地考虑计算机工业的
要求。由于两个协议层所导致的复杂性及低效性,再加上校验和字段十分短(仅 10 位),使一些研究人
员萌生了一个制订新的适配层协议的念头。该协议被称为简单有效的适配层 SEAL(simple efficient
adaptation layer),经过论证,ATM 论坛接受了 SEAL,并为它起名叫 AAL5。
AAL5 向其应用程序提供了几种服务。一种选择是可靠服务(即采用流控机制来保证传输,以防过载);
另一种选择是不可靠服务(即不提供数据传输保证措施),通过选项使校验错的信元或者丢失或者传送给
应用程序(但被标识为坏信元)。AAL5 支持点到点方式和多点播送方式的传输,但多点播送方式未提供数
据传输的保证措施。
像 AAL3/4 一样,AAL5 支持报文模式和流模式。在报文模式中,应用程序可以将长度从 1 字节~65535
字节的数据报传送到 AAL 层。当到达会聚子层时,将报文填充至有效载荷字段并加上尾部信息,选择填
充数据(0 字节~47 字节),以使整个报文(包括填补的数据和尾部信息)为 48 字一节的整数倍。AAL5
没有会聚子层头,只有一个 8 字节的尾。
用户到用户 UU(User to User)字段不用于 AAL 层本身,而是为了自己的目的供更高一层(可能是
会聚子层的特定服务子部分)使用,例如,排序或者多路复用。长度(Length)字段指出真正的有效载荷
是多少,以字节为单位,不包括填充的字节数。0 值用于终止未传送完毕的报文。CRC 字段是基于整个报
文的标准 32 位校验和,包括填充数据和尾部信息(CRC 字段设置为 0)。尾部的一个 8 位的字段留作将来
使用。报文交给 SAR 子层,然后发送出去。在 SAR 子层不增加任何头、尾信息,而是将报文分成 48 字节
的单元,并将每个单元送到 ATM 层进行传输。它还通知 ATM 层将最后信元的 PTI 字段置为 1,以便保留
报文分界。(这时出现了一个问题:这是一种不正确的协议层混合体,因为 AAL 层不该使用 ATM 层的头
部信息。)
P a g e | 870
CCIE R/S & Service Provider Exam Certification Guide
AAL5 较 AAL3/4 的主要优点是更加高效。虽然 AAL3/4 对每个报文只增加 4 字节的头信息,但它还要
为每个信元增加 4 字节的头信息,因而使有效载荷的容量减少到 44 字节,对于长的报文,无效数据占 8%。
AAL5 的每个报文有一个稍大的尾部(8 字节),但每个信元无额外开销。信元中没有顺序号,可以通过长
的校验和来弥补,从而可以检测丢失的、误插的或错误的信元,而不需要使用顺序号。
在因特网中,与 ATM 网接口的一般方法是使用 AAL5 的有效载荷字段来传输 IP 分组。
AAL5 的 CPCS-PDU 如上图所示:
1.
CPCS-PDU 载荷:被用于运载 CPCS-SDU(用户信息)。该字段是字节调整的,其长度范围可以
从 1 到 65535 个字节。
2.
垫塞(Pad):被用于将 CPCS-PDU 凑成 48 个字节的整倍数,以利于 SAR 使用。此 Pad 的范围
3.
CPCS 用户到用户指示 CPCS-UU(CPCS User-to-user indication):被用于透明地传输用户到用户
可以从 0 到 47 个字节,可取任何编码(例如全 0)。
的信息。
4.
公共部分指示 CPI:用于将尾调整到 64 比特边界。默认的编码为 0。这一字段也可被用于
消息类型功能(在将来)以区分例如管理消息。
5.
长度(Length):被用于指示出按字节计算的 CPCS-PDU 载荷的长度。当被置为零时,它指示
出异常中止功能。
6.
CRC:CRC-32 被用于对整个的 CPCS-PDU 进行错误的检测。
各种 AAL 协议似乎不必要地相似,并且考虑得很不周到,把会聚子层和 SAR 子层区分开也是有疑问
的,尤其是因为 AAL5 的 SAR 子层并无任何自己的特点。用稍微增强一些的 ATM 层头部信息来提供像排
序、多路复用和数据分帧的功能便足够了。
AAL 给人的整体印象是变体很多,变体之间存在很多细微的差别,而且尚未完工。原来的 4 个服务
类 A、B、C、D 实际上已被废除。AAL1 可能确实没有必要存在;AAL2 不完整;AAL3 和 AAL4 永无出头之
日;AAL3/4 效率低而且校验和字段位数太少。
将来的一切都依赖于 AAL5,但到目前为止,AAL5 尚有很多改进的余地。AAL5 报文应该有一个顺序
号和一位用于区分数据还是控制报文的标志位,从而可以成为一种可靠的传输协议。可以用尾部的未用
空间来实现上述功能。
43.2 ATM信令
43.2.1 ATM信令系统简介
信令系统的目的是在网络元素之间传输控制信息。最初信令系统的设计是为电话局和用户设备建建
立连接。随着分组交换技术的发展 ITU-T 公布了 X.25 规范,后 CCITT 公布了 SS7 系统,该系统为一个纯粹
的信令系统,依赖于 T1 和 SONET 等传输系统来支持其信令业务,属于带外信令系统。鉴于 ATM 链路为
面向连接的异步通讯线路,SVC 等链路的建立需要一个信令系统来支持。
P a g e | 871
CCIE R/S & Service Provider Exam Certification Guide
B-ISDN 模型中包括控制面,用户面和管理面 3 个层面。在 B-ISDN 信令模型中,信令 ATM 适配层(SAAL)
支持控制面,信令操作也是在这个面上发生的,控制层面包括 Q.2931 和 B-ISDN 信令协议。
ATM 信令协议结构如下:
43.2.2 B-ISDN 信令
B-ISDN 信令是基于与 N-ISDN 相同的原理,
B-ISDN 信令包括:
公共信道信令 CCS(Common Channel Signalling)
基于消息的协议
在 UNI 和 NNI 处可以采用不同的信令协议
支持多种业务和特性
B-ISDN 信令使用了基本窄带 ISDN 信令和路由协议的扩展。B-ISDN 的呼叫控制协议是用来建立、保
持和清除用户和网元之间的 ATM 连接。由于 ATM 是一个基于虚通路概念的、面向分组的传输方式,而且
是用来满足许多不同种类的业务和多媒体应用的需求,因此 ATM 信令比 64 kbit/s ISDN 复杂得多。
信令协议使用的消息用于:
建立连接
连接
拆线
信令消息包含“信息元素”IE(Information Elements)或“参数”,承载特定的信息,诸如:
被叫方和呼叫方的地址
带宽需求/业务描述符
QOS 需求
P a g e | 872
CCIE R/S & Service Provider Exam Certification Guide
VPI/VCI 值
信令过程如下:
43.2.3 虚链路建立
对于一条 PVC 的建立,需要在整个路径上手工设置 VPI/VCI 值,而对于 SVC,可以通过 UNI 信令进行
连接,但连接的时候,还需要一条 PVC,该 PVC 使用相同 VPI 值,但 VCI 值为 5,用于信令传输。SVC 建
立和释放过程如下图所示,
S1
Ra
S2
S3
建立
呼叫进行
初始地址
消息
确认
初始地址
初始地址
消息
确认
初始地址
消息
地址完成
回答消息
消息
地址完成
回答消息
连接
建立
呼叫进行
连接
连接确认
连接确认
释放
REL
REL
释放
释放完成
RLC
RLC
释放完成
P a g e | 873
CCIE R/S & Service Provider Exam Certification Guide
SVC 连接建立的过程如下:
1.
Ra 向直连交换机 S1 发出“建立消息”信令请求建立 SVC。消息中包括 Ra 和 Rb 的 ATM
地址以及该请求的基本业务合约。Ra 把信令请求转换为信令分组,然后将 ixnling 分组转
换为信元,按定义好的 Ra 到 S1 的 PVC 传输
2.
S1 把信令信元重新集合到信令分组中,并检查
3.
如果 S1 在其路由表中存在 Rb 的 ATM 全球地址的入口,并且能够调节该连接请求的服务
质量,那么 S1 为该需连接保留资源,并为该连接创建动态 VPI/VCI。并沿通路把请求发送
到下一台交换机 S2。同时,S1 把连接消息传回给呼叫方
4.
去往 Rb 通路的每一台交换机都重新组装和检查信令分组,如果业务流参数支持在入口和
出口的接口,则把信令分组转发到下一个交换机,如果沿途任何一台交换机不支持该业
务,则向 Ra 反馈拒绝消息
5.
当信令分组到达 Rb。Rb 重组信令分组并估算,如果支持,则以连接消息作为响应,则
Ra 收到来自 Rb 的连接消息确认呼叫。
6.
S3 向 Rb 发送连接响应消息以表明 Rb 已经知晓该呼叫。同样 Ra 向 S1 发送连接响应消息,
完成整个对称呼叫控制过程。
SVC 连接释放的过程如下:
1. Ra 向 S1 发送连接释放请求
2. S1 逐渐向下游发送释放消息
3. 目的端收到后发送释放完成的消息,并逐渐返回到 Ra
43.2.4 ATM 地址格式:
对于 B-ISDN 信令而言,地址需求是建立在协议 E.164 的基础之上。ATM 端点系统地址(ATM End System
Address, AESA)是建立在网络业务接入点 NSAP(Network Service Access Point)格式的基础之上。ATM Forum
已经规定了下列用于 UNI 选项的 NSAP 格式,做为补充或替代 E.164 地址。ATM 端点系统地址(AESA)可以
做为子地址由网络承载。
P a g e | 874
AFI -
Authority and Format identifier(权限和格式识别符)
IDP-
Initial Domain Part(初始域部分)
DSP-
Domain Specific Part(域特定部分)
HO-DSP-
Higher Order Domain Specific Part(高阶域特定部分)
Sel-
Selector(选择器)
CCIE R/S & Service Provider Exam Certification Guide
43.2.5 UNI 信令结构
在链路建立的过程中,N-ISDN 使用 Q.931 协议, ATM 则使用了该协议派生出的另一个协议 Q.2931
协议。UNI 信令消息分为如下几种:
呼叫建立消息
ALERTING(告警)
由被叫用户发给网络以及再由网络回送给主叫用户,以指示被叫用户告警已经被启动。
CALL PROCEEDING(呼叫持续)
由被叫用户发送至网络或由网络回送给主叫用户,以指示所申请的呼叫建立已经被启动
且不再接受其它的呼叫信息。
CONNECT(连接)
由被叫用户发送至网络及再由网络回送给主叫用户,指示呼叫被接受。
CONNECT ACKNOWLEDGE(连接证实)
由网络发送给被叫用户,指示呼叫被认可。也可由主叫用户发给网络,以保持呼叫过程
的对称性。
SETUP(建立)
由主叫用户发送给网络及由网络发送给被叫用户,以启动 B-ISDN 呼叫。
呼叫清除消息
RELEASE (释放)
由用户发送,用来请求网络拆除连接,或由网络发送以指明连接被清除。
RELEASE COMPLETE(释放完成)
由用户或网络发送,用来指示设备已经释放了它的呼叫参考值和连接标识符。
其它消息
NOTIFY(通知)
由用户或网络发送,用来指示与呼叫/连接相关系的信息。
STATUS(状态)
由用户或网络发送,用以响应 STATUSENQUIRY(状态询问)消息),报告某些错误状态/维
护信息。
STATUSENQUIRY(状态询问)
由用户或网络发送,用来请求一个 STATUS 消息,以监视信令链路上的错误状态(用于维
护的目的)。
用户网络接口处体系结构与 B-ISDN 协议参考模型相对应。不管是信令还是用户信息,都按信元格
式在物理层帧结构中传输。其中 SAAL(SignallingATMAdapterLayer)是信令 ATM 适配层,主要是对各种信
令消息进行适配,处理成信元格式。位于 SAAL 上面的高层正是 Q.293,它定义了用户网络接口上建立、
维持和释放网络连接的过程。Q.2931 与对等层间的通信是通过消息来实现的,而它与本地的上、下层之
间的通信通过原语来完成。由于 Q.2931 仅仅支持点对点信令方式,至于点对多点的信令方式要使用 Q.2971
协议。下图为 UNI 信令的结构:
P a g e | 875
CCIE R/S & Service Provider Exam Certification Guide
43.2.6 Q.2931 信令
Q.2931 协议定义在用户网络接口上建立、维持和释放网络连接的过程及在此过程中所使用的各种消
息。它是在 N-ISDN 用户网络接口 DSS1 协议 Q.931 基础上发展起来的,并根据 B-ISDN 业务的特点,对
Q.931 进行了补充和改进。值得说明的是,在 Q.2931 引入了虚通道连接标识(VirtualPathConnectionIdentifier,
简称 VPCI)这个量,它与 VPI(VirtualPathIdentifier)的区别是 VPCI 标识的是一个虚通道连接,而 VPI 标
识的是一个虚通道链路。引入它的原因是由于在 B-ISDN 中,用户可能通过 VP/VC 交叉连接网络与局域
交换相连接,VP 交叉连接是通过管理面来控制的,而不是通过信令来控制的,一个信令端点只知道它自
己的 VPI,而不知道其它信令端点的 VPI,因此,需要在用户和局域交换之间引入一个唯一的 VPCI。
Q.2931 层,它定义了在 UNI 上建立、维持和释放网络连接的过程。Q.2931 又称为二号数字用户信令
协议(DSS2)。
Q.2931 的基本功能:
(1)支持实时的 SVC 连接;
(2)支持点对点的 SVC 连接;
(3)支持对称和非对称的宽带连接;
(4)支持单连接呼叫;
(5)支持基本信令功能;
(6)支持 A 类、C 类和 X 类业务;
A 类业务:面向连接,恒定比特率且有端到端定时要求;
C 类业务:面向连接,可变比特率但没有端到端定时要求;
X 类业务:面向连接 ATM 传输业务,其中的业务类型和定时要求均由用户自定义。
(7)支持 VPI/VCI 的协商;
(8)所有的信令消息在指定的带外通路上传输;
每个 VPCI 中的 VCI=5 被保留给点对点信令使用。在这里元信令及广播信令虚通路不支持。
(9)支持差错恢复;
(10)用公共 UNI 寻址方式唯一标识 ATM 的端点;
(11)支持端到瑞兼容性参数的识别;
在每一个连接中,下列指定的端到瑞参数均要进行兼容性检验:
Ⅰ.AAL 类型(像 1 类型、3/4 类型、5 类型);
Ⅱ.协议服用的方法和 AAL 参数;
Ⅲ.网络层上的协议。
(12)支持与 N-ISDN 信令互通和提供 N-ISDN 业务;
(13)支持前向兼容性。
Q.2931 消息格式:
用户网络接口上的呼叫控制都是通过消息的传递来实现。Q.2931 中每个消息的定义都包含下列内容:
a.消息方向(用户到网络、网络到用户或双向);
b.消息有效范围(局部、接入、双重或全局);
C.构成消息的信息单元。
每条消息均由 9B 的公共信息单元和可变长度信息单元组成。
a) 协议鉴别语(ProtocolDiscriminator),它用于将用户和网络呼叫控制信息与本建议范围内的
其它消息相区别;也用于将本建议的消息与其它 ITU 标准及其它标准的 OSI 网络层协议单
P a g e | 876
CCIE R/S & Service Provider Exam Certification Guide
元相区别。
b) 呼叫参考,标识本地用户网络接口上的呼叫;
c) 消息类型,标识正在发送的消息的功能;
d) 消息长度,标识消息内容的长度,它不包括“协议鉴别语”、“呼叫参考”、“稍息类型”及
消息长度本身的八比特组;
e) 可变长度信息单元,常见的可变长度的信息单元有:AAL 参数,ATM 业务流描述符,宽带
承载性能,被叫方号码,生叫方号码,连接标识,端到瑞传送时延,业务质量参数,呼叫
状态,原因等。
Q.2931 呼叫/连接控制过程:
利用各种信令消息的通信,就可以实现对呼叫/连接的控制。不过更安全,更方便的话,应加
上定时器和呼叫/连接控制中的状态量。定时器:为了避免一端发这一个消息后,陷入等待死循环
而设署的。若不这样,发送消息的那端就一直等待,并且网络资源也一直被占用,从而会增大网络
的负荷,严重的情况下会导致系统崩溃。所以说应采取措施来制止此类事情发生;如采用定时器,
发送消息端在发消息的问时就启动相应的定时器。在定时器超时前,若收到相应的响应,便停止定
时器。若在定时器超时,仍没收到消息的响应,可进行重发消息和重启定时器或释放网络资源,并
返回到空态。针对主、被叫及网络因受到不同消息而设置不同状态,当收到一消息就有可能进行状
态转移,从而推动整个呼叫/连接控制过程。
对 UNI 用户侧而言,有以下几种状态:
U0:零状态;U1:呼叫起始;U3:呼出进程;U4:呼叫递交;
U6:呼叫呈现;U7:呼叫接收;U8:连接请求;U9:呼入进程;
U10:运行;U2:重叠发送;U25:重叠接收;U11:释放请求;
U12:释放指示。
其中:U2、U25 用于与互通相关的呼叫。
呼叫建立过程
主叫用户若有呼叫请求需要建立连接时,便由发端接口信令实体的用户侧发送一个建立消息
SETUP 请求建立连接,并启动定时器 T303,同时状态迁移到 U1 态。若在定时器超时前仍没收到网络
的任何响应,便重发 SETUP 消息和重启定时器 T303。若再超时,主叫便释放这次呼叫请求,这时主
叫用户也由 U1 态变到 U0 态。
UNI
Ra
S1
NNI
S2
UNI
Rb
SETUP
CALL
DING
PROCEE
NNI信令
消息
SETUP
CALL确认
初始地址DING
PROCEE
CT
CONNE
消息
NNI信令
接ECT
NN
CO连
CONNE
CT ACK
CONNE
CT ACK
P a g e | 877
CCIE R/S & Service Provider Exam Certification Guide
用户侧发送的 SETUP 消息中包括 ATM 业务量描述符,宽带承载能力,宽带高低层信息,QOS 参
数,被叫用户号码和连接标识等信息单元。网络侧收到 SETUP 消息后,便进行信息单元检查以判断网
络资源能否满足用户的要求。若可以接受的话,则向被叫用户所在的网络接口转发 SETUP 消息,同时
向主叫用户发送响应消息 CALLPROCEEDING 以指示呼叫正在处理,并进行相应的状态转换。
若主叫用户收到 CALLPROCEEDING 消息,便停止 T303,并启动 T310 定时器,等待被叫方的消息,
同时状态由 U1 转到 U3。若在 T310 超时时仍没有收到任何消息,主叫便清除这次呼叫,其状态迁移
到 U0。
网络在检查资源可用后,便发送一个 SETUP 消息指示呼叫已到达该用户网络接口,同时启动定时
器 T303,并进入相应的状态。如果网络在定时器第一次超时时未收到响应信息,则应重发 SETUP 消
息和重启定时器 T303。若两次超时,网络便要清除掉这次呼叫。
被叫用户在收到 SETUP 消息后,便进行地址及兼容性检查,若不兼容,便释放次呼叫并向主叫发
送 RELEASE 消息;若满足的话,向网络发送 CALLPROCEEDING 消息,其状态由 U0 迁移到 U6。
在接收到一个被叫地址处的用户已启动用户振铃指示时,网络应通过主叫地址的用户网络接日回
送 ALERTING 消息,并进入相应的状态,当用户收到 ALERTING 消息时,用户便开始内部振铃指示,并
停止 T310,进入 U4 态,同时启动 T301 定时器;当接收一个已经接受的呼叫指示时,网络应通过 UNI
发送 CONNECT 消息给主叫并进入 U10 态。
CONNECT 消息向主叫指示通过网络的连接已经建立,并停止可能的本地振铃指示,主叫用户在接
受到 CONNECT 消息时,应停止定时器,停止任何用户产生振铃指示,连接到用户平面虚通路,发送
CONNECTACKNOWLEDGE 消息给网络已响应 CONNECT 消息,同时进入 U10 态。
在此过程中,主叫,网络和被叫之间有可能进行参数协商,像用户峰值速率,传输时延,如果这
些参数不能达到一致,本次呼叫将被清除;如果发送消息的格式。长度和信息单元发生错误,或者不
符合一致性要求,都将清除呼叫并释放连接。
UNI 呼叫拒绝的消息过程:
UNI
Ra
S1
NNI
S2
UNI
Rb
SETUP
CALL
DING
PROCEE
NNI信令
消息
SETUP
CALL确认
初始地址DING
PROCEE
E
RELEAS
消息
NNI信令
ASE
LE接
RE连
RELEAS
E
COMPLE
TE
RELEAS
E
COMPLE
TE
呼叫释放过程
在正常的情况下,主、被叫双方通信结束后,由用户或网络发送 RELEASE 消息来启动呼叫清除。
其中例外的是在响应 SETUP 消息时,用户或网络可以通过发送 RELEASECOM-PLETE 消息作为第一个
响应消息来拒绝该呼叫/连接,释放呼叫参考,并进入零状态。
P a g e | 878
CCIE R/S & Service Provider Exam Certification Guide
a.由用户启动清除
正常情况下,用户发送 RELEASE 消息,启动定时器 T308,拆除虚通路,并进入释放请
求状态。当接收到 RELEASE 消息时,网络应进入释放请求状态。该消息促使网络拆除虚通
路,并向远端用户启动清除网络连接的程序。一旦用于该呼叫的虚通路被拆除,网络应向
用户发送 RELEASECOMPLETE 消息,释放呼叫参考和虚通路,并进入零状态。
当定时器 T308 第一次超时,用户应向网络重新发送 RE-LEASE 消息,使用包含第一
个 RELEASE 消息中的原因号码,重新启动定时器 T308。若定时器 T308 第二次超时,用户
应把虚通路置于维护状态,同时释放呼叫参考,并返回零状态。当接收到 RELEASECOMPLETE
消息时,用户应停止定时器 T308,同时释放虚通路和呼叫参考,并进入零状态。
b.由网络启动清除
正常情况下,网络发送 RELEASE 消息,启动定时器 T308,拆除虚通路,并进入释放请
求状态。当接收到 RELEASE 消息时,用户应进入释放指示状态。一旦用于该呼叫的虚通路
被拆除,用户应向网络发送 RE-LEASECOMPLETE 消息,释放呼叫参考和虚通路,并返回零
状态。
当接收到 RELEASECOMPLETE 消息,网络应停止走时器 T308,同时释放呼叫参考和虚
通路,并进入零状态。若定时器 T308 超时,其处理办法与由用户启动清除处理一样。
UNI 点到多点连接建立过程:
UNI
UNI
Ra
S1
NNI
Rc
S2
Rb
ADD PA
RTY
NNI信令
消息
ADD PA
RT
Y
CALL确认
初始地址DING
PROCEE
CT
CONNE
消息
NNI信令
ARTY
ADD连P接
ACK
CONNE
CT
ACK
43.2.7 U-SSCF 协议
U-SSCF 起着协调高层信令(Q.2931、PNNI)所需服务与 SSCOP 所提供的服务的作用,它完成 AAL 原语
与 AA 信号之间的映射。
SAAL 的原语有以下几种:
AAL-ESTABLISH.Request,
AAL-ESTABLISH.Indication,
AAL-ESTABLISH.Confirm
AAL-RELEASE.Request,
AAL-RELEASE.Indication,
AAL-RELEASE.Confirm
AAL-DATA.Request,
AAL-DATA.Indication,
AAL-DATA.Information
AAL-UNIT-DATA.Request,
AAL-UNIT-DATA.Indication,
AAL-UNIT-DATA.Information
U-SSCF 在收到或发出不同的 AAL 原语后将转移到不同的状态,而在不同状态的 U-SSCF 也只能接收
P a g e | 879
CCIE R/S & Service Provider Exam Certification Guide
或发送特定的原语。即上述原语是按一定顺序出现的。
从高层到 U-SSCF 有四个状态:
状态 1:AAL 连接释放。
状态 2:等待建立连接。
状态 3:等待释放连接。
状态 4:AAL 连接建立
等待建立连接
AAL-EST.Request
AAL-EST.Confirm
AAL-REL.Request
AAL-EST.Request
AAL-REL.Indication
AAL-EST.Indication
AAL-REL.Indication
AAL连接释放
AAL-REL.Confirm
AAL连接建立
AAL-REL.Request
AAL.REL.Request
等待释放连接
43.2.8 SSCOP 协议
由于 AAL 协议不支持简单可靠的点到点的传输连接。需要这种服务的应用程序可以使用另一种协议
--特定服务的面向连接协议 SSCOP(service specific connection oriented protocol)。但是,SSCOP 只是用于控
制,不能用于数据传输。
SSCOP 用户发送报文,每个报文都被赋予一个 24 位的顺序号。报文最大可达 64KB,而且不能分开。
它们必须按顺序传送。不像某些可靠的传输协议,它丢失报文时总是有选择性地进行重传而不是回到序
号 n,重传 n 以后的所有的报文。
SSCOP 从根本上说是一种动态滑动窗口协议。对于每个连接,接收方保留准备接收报文序号的窗口,
及标明该报文是否已经存在的位图(bitmap)。这个窗口在协议操作期间可以改变大小。SSCOP 的不寻常之
处是对确认的处理方法:它没有捎带机制。取而代之的是发送方定期地查询接收方,要求它发送回表明
窗口状态的位图。据此,发送方丢弃已被对方接收的报文并更新其窗口。
SSCOP 和 U-SSCF 协议间的通讯如下:
在需要建立连接时,高层向 U-SSCF 发 EST.REQUEST 原语。
U-SSCF 在接收到该原语后,向 SSCOP 发送 EST.REQUEST 信号。
SSCOP 接收到该信号后,向对等层发 BGNPDU。
对等层收到 BGNPDU 后,向本端的 U-SSCF 发 EST.Indication 信号。
U-SSCF 收到该信号后,向高层发 EST.Indication 原语,同时向 SSCOP 发 EST.Response 信号。
SSCOP 收到 EST.Response 信号后,向对等层返回 BGAKPDU。
对等层收到该 PDU 后,向 U-SSCF 发 EST.Confirm 信号。
U-SSCF 收到该信号后,向高层发 EST.Confirm 原语。至此,连接建立。
连接释放时,各原语和信号以及 SSCOP-PDU 改成响应的形式,对等层在收到 ENDPDU 后,
不需要等待上层信号和原语,直接返回 ENDAKPDU。
P a g e | 880
CCIE R/S & Service Provider Exam Certification Guide
43.2.9 PNNI 路由协议
UNI 信令定义了 UNI 用户接口和 ATM 交换机之间的通讯方式,而交换机等网络设备之间的交换则采
用 NNI 信令。P-NNI 协议分为:
P-NNI 信令协议:基于 UNI 信令(ATMF v4.0),并具有另外的 IE 来携带路由信息。
P-NNI 路由协议:基于使用链接状态更新(Link State Update)消息的分层动态源路由。
我们首先来看 PNNI 路由协议:
PNNI 路由协议属于链路状态路由协议,同样存在互换 Hello 消息,拓扑发现和泛洪机制。相对于 OSPF
等链路状态协议而言,OSPF 可以通过组播的方式发送消息,而 PNNI 信息以分组的形式发送,在物理相
邻的交换机之间, 此信息在 VPI 为 0, VCI 为 18 的虚电路上发送,在由 VP 连接的交换机之间(VPI=x), 这一
信息在 VPI=x, VCI=18 的虚电路上发送,所有的分组以 AAL 5 的形式发送.在默认方式下, 采用 UBR 的业务类.
但是对于 ATM 链路的建立,还有一些扩展。首先,整个网络中的交换机并不完全支持各种业务类型,
所以在链路建立的过程中,需要协商业务类型,其次,整个链路的信元速率需要协商,可得的信元速率
可比拟发布者的带宽能力。信元速率的范围和变化因子(可选地)可以使其变得更加精确。 可得的信元速
率要由通用呼叫允许控制机制(GCAC)来使用。GCAC 和这些参数结合起来可模拟做发布操作的交换机的真
实的呼叫允许控制行为。
整个呼叫允许控制过程有 2 种机制来实现
通用呼叫运行控制(GCAC),
由负责选取源路由的交换机运行,确定可以支持该呼叫的路径。
实际呼叫运行控制(ACAC)
由沿途的每个交换机运行,以确定该是否可以支持该呼叫。
ACAC 是检查本地资源,而 GCAC 是检查自身以外交换机的资源
对于整个呼叫链路而言,当某个地方出现中断后,需要使用 Crank-Back 来恢复这条呼叫链路,当一
个交换机检测到呼叫不能按照既定的源路由前行时:它会向路由的规定者产生一个掉路恢复并同时指示
出资源的困难。发起者接下来能够尝试另外的路径,来解决问题。至于要尝试多少条路径,可以在编程
时加以约束。
任意播(AnyCast)属性在 UNI4.0 信令中支持,这使得 ATM 地址能够代表一个通用的服务(如局域网仿
真配置服务)而不是一个特定的设备。 通过降低端站的配置,它提升了系统的整体可用性。任意播使用一
个特定的保留 ATM 地址段。任意播由借助 ILMI 进行任意播地址登记的端站来支持。同时做为正常的可达
性在 PNNI 中传播的。因此,当一个呼叫者连接到一个任意播的地址,它可以被路由到一个明显最近的业
务点。应该注意的是:广泛采用许多不同的任意播地址会影响可扩展性,应当避免。
P a g e | 881
CCIE R/S & Service Provider Exam Certification Guide
对于 PNNI,也采用了 TLV 的方式进行信息扩展。通过这种方式,设备提供商可以提供一些私有信令,
而对于以后各种新的上层协议的支持,也可以通过 TLV 实现。
对于 PNNI 路由协议,为了满足扩展性的目标以及允许与其它协议的互通,PNNI 采用分层结构。 分
层代表了信息的总结,伴随着隐去一些信息,其目的是提高协议的可扩展性。 一般而言,除了网络的某
些部分外,我们不需要某部分网络内部的详细信息。分层结构定义如下:
逻辑节点/链路:
在给定的分层级中的一个节点或链路。它可以由一个唯一的逻辑地址(逻辑节点 ID)来标识。
对等组(PG):
一个对等组是各逻辑节点的一个集合。在此集合中,所有的成员通过与组内其它成员互换信息
来保持相同的视图。对等组识别符在网络配置时规定。
对等组领导者(PGL):
对等组选出的一个节点用来代表向下一个分层级的对等组(这一节点称为逻辑组节点)。这一节
点还负责协调 PG 信息的聚合,使其通过下一级。在一个 PG 中,PGL 的角色可借助一“选举”
协议在各节点间传递。除了聚合和保持 P-NNI 分层结构外,PGL 没有其它特殊作用。
边界节点:
具有跨过对等组边界逻辑链路的节点称为边界节点,而此链路则称为“对外链路”。在一对等
组中的逻辑链路称为“水平链路”。
分层路由的概念用来保证 P-NNI 的可扩充性和可管理性。
1、逻辑组节点(LGN):代表分层结构中下一较高级的对等组。
2、较高级 PG 被称为“父 PG”。相应的较低级被称为“子 PGs”。
3、对等组领导者负责保持分层级(由 PG Ids 所指示)
4、分层能够在源路由过程中进行地址的“总结(Summarization)”。
5、路由协议允许在分层级之间流动拓扑/路由信息。
6、分层化完整源路由:意味着在一分层化配置的路由域中的所有节点是可以达到的。
P a g e | 882
CCIE R/S & Service Provider Exam Certification Guide
7、在 P-NNI 版本 1 中最多可达 104 级。
PNNI 路径计算:最可能的路径选择算法是一简单的 Dijkstra 算法。针对目的地,需建立一个前缀树
以确定什么节点发布了至目的地的最长匹配。于是,对网络中的每个节点,可以根据 AW 值运行一个 Dijkstra
计算过程来找到路径。每个节点记录下路径和资源, 接下来,可运行一个受束的版本来计算相邻的路径。
同时,整个运算过程还可以对延迟等多参数进行约束规划,达到条件。
43.2.9 PNNI 信令协议
PNNI 信令定义 PNNI 交换系统如何将呼叫从一端传向另一端。同时支持 PNNI 的需求和能力。支持
UNI 3.1 中的所有能力。支持 UNI 4.0 中的指定 QoS,任意播,ABR 等部分能力。
PNNI 信令源自于 UNI 3.1/4.0 和 ITU Q.2931。利用 SSCOP,信令消息被可靠地从一个交换机传送到另
一个交换机。信令信息被承载在信息元素(IE)中,每个 IE 都具有类型和长度信息。具有针对连接初始化、
连接终止等的标准消息集。P-NNI 信令过程是对称的。这一点不同于 Q.2931 中 UNI 的信令过程。
P-NNI 信令是基于 UNI 信令(ATMF UNI 信令 V4.0)中相同的消息集。
ALERTING
CALL PROCEEDING
CONNECT
SETUP
RELEASE
RELEASE COMPLETE
NOTIFY
STATUS
ADD PARTY
ADD PARTY ACKNOWLEDGE
PARTY ALERTING
ADD PARTY REJECT
DROP PARTY
DROP PARTY ACKNOWLEDGE
不支持的消息
Connect Ack
Setup Ack
Information
此外,P-NNI 规定了一些额外的信息元素(IE)和为 PNNI 特定功能所设的过程。
源路由(指定传送列表 DTL,Designated Transit Lists)
掉路恢复(Crankback)
Soft PVC(Soft PVC)
ABR 业务流参数(在 Q.2931 中没有)
对于发起呼叫的交换机和入边界交换机(Entry Border Switch)规定针对某呼叫的源路由。这些被称之
为指定发送列表(DTL),该属性实现了 PNNI 的源路由
P a g e | 883
CCIE R/S & Service Provider Exam Certification Guide
A.
在源路由中,源 ATM 节点基于 P-NNI 路由协议所提供的路由信息(拓扑,链路状态)和
ATM 端系统的地址(AESA)计算出最优的路径。
B.
每个节点由逻辑节点标识符及源路由中的分层级别(hierarchylevel)来进行标识。
C.
最所选定的路由进行编码,存放在 DTLIE 中-为一顺序的节点(进一步为端口)标识符。
D.
每个中间节点利用 DTL 来向列表中的下一标识节点转发 SETUP(或 ADDPARTY)消息。DTL
是基于“后入先出”的规则。
E.
DTLIE 可以多至 546 个字节长,且可在 SETUP 消息中重复多至 10 次(范围受限)。
发起交换机选出用于呼叫的路径,该路径需能够避免环回;同时需有足够的资源来满足用户的需求;
至邻居节点的路径必须驻留在本地节点中;
DTL 栈的生成:
对于一个来自与交换机 A.1.3 相连端站的呼叫,并已确知其目的地处于对等组 C 的范围中(如 C.2),
交换机 A.1.3 要构造其 DTL 栈:
[A.1.3, A.1.2]
(指针指向位置 2)
[A.1, A.2, A.3]
(指针指向位置 2)
[A, B, C]
(指针指向位置 2)
DTL 包括了一个指针(在每一级),该指针指明了要到达的下一节点。当进入 B 这个对等体组后,处理
方式如下:
在到达了交换机 B.1 时,呼叫必须在入口交换机加以处理。此交换机必须生成一个跨过 B,抵达 C
的新 DTL。 收到的 DTL 栈是:
[A, B, C]
P a g e | 884
(指针指向位置 2)
CCIE R/S & Service Provider Exam Certification Guide
这一 DTL 栈应当被更新。具体做法是生成一个较低级的 DTL 从而使整个栈变为:
[A, B, C]
(指针指向位置 3)
[B.1, B.2, B.4, B.5]
(指针指向位置 2)
有时,交换机收到一个带 DTL 的呼叫后会发现:根据那个 DTL,交换机无法继续进行。这有可能是
由下述原因造成的:
发送者所具有的信息不是当前的(新信息还在传送过程中);
状态明显改变,对该呼叫产生了足够的影响;
GCAC/ACAC 拟和结果有误。
当一个交换机检测到不能按既定源路由继续进行下去:此交换机将向此路由的制定者送出一个回选
(crankback)信息。在此回选信息中指明了出现问题的节点/链路以及资源上的困难。DTL 发起者接下来会尝
试一条可以避免该问题的路径。
如果由于某些原因(如 DTL 错误、不可达、故障),呼叫不能进行下去,则可以启动掉路恢复(Crankback)
功能,以便进行重选寻路的尝试。这一过程也往往称为路由重选。CrankbackIE 可以包括在 RELEASE、
RELEASECOMPLETE、或 ADDPARTYREJECT 消息中。同时整个掉路恢复过程可以是迭代的。
例如对于一条 Soft PVC 而言:
1.
Soft PVC 功能使得两个 UNI 间在遇到 PNNI 网络中的一个失败时能够“自动”重新配置一
条 PVC。
2.
终结 VPL/VCL 处的 VPI/VCI 值可以透明地传递到末端节点。软 VPVC 或 VPCC 信息元素使得
重新路由可以终结在每个端点相同的 VPL/VCL 中。
3.
呼叫端点负责建立(及释放)Soft PVC。
4.
Soft PVC 过程可以扩展到点到多点的连接。
5.
PNNI 的 Soft PVC 机制与帧中继中所用的 Soft PVC 机制相同。
6.
远端失败告知源节点的机制并未在 P-NNI 中规定。可以采用路由协议或其它机制(如 OAM)。
P a g e | 885
CCIE R/S & Service Provider Exam Certification Guide
43.3 ATM OAM信令
43.3.1 ATM OAM原理
OAM 位于 B-ISDN 参考模型的管理平面,与控制平面和用户平面的各层相连,完成对 ATM 数据通道
的操作和维护。OAM 一共分为 5 层。F1~F3 属于物理层, F4~F5 属于 ATM 层。每一层中的 OAM 信元流
可以完成对本层的维护操作。
1、故障管理(FM)
OAM 故障管理简称 FM,这包括通过连续和或周期的检查步骤来检测和定位影响信息传输
的缺陷和失败,做为结果,会产生维护事件的记录和告警。此外,通过阻塞和或转换过程,可
以启动系统保护。主要通过 AIS 和 RDJ 两种形式的信元流完成。AIS(Alarm Indication Signal)用来
向处于连接线路上的下游的各连接点指示上游某处发生了缺陷或故障,并且沿该方向一致向下
传播,到端点后,反馈产生 RDI(Remote Detect Indication)信号,并且反向传送,
2.性能管理(PM)
性能管理简称 PM,它可以为 ATM 连接的 QoS 参数测量提供手段,同时为网络管理提供网
络性能参数,在进行性能测量之前须先通过一个证实过程对连接激活,这个过程可以在连接的
建立之中或者之后进行,测量结束后再把激活取消。 通过这样的方式,利用管理实体来检测出
任何用户信息的性能下降,并采取行动以保证 QOS 目标能够达到。
4. 配置管理
这包括与提供连接和网元中相关资源有关的所有功能。
5. 计费管理
该功能涉及资源使用监控、计费/帐单信息的收集和传送。
6. 安全管理
这包括与网络资源安全性相联系的功能。
OAM 流结构
虚通路级(F5 级):
虚通道级(F4 流):
传输路径级(F3 级):
数字段级(F2 流):
再生段级(F1 流):
P a g e | 886
在 NE 间扩展,完成 VCC 中止功能,且可以通过一个或多个虚
通道连接进行扩展。
在 NE 间扩展,完成 VPC 中止功能,且可以通过一个或多个传
输路径进行扩展。
在 NE 间 扩 展 , 完 成 对 一 传 输 系 统 载 荷 的 汇 编 / 反 汇 编
(assembling/disassembling),并将它与它的 OAM 功能联系起
来。传输路径可以通过
在段端点之间扩展,形成一个维护实体。
通过一个数字段的部分进行扩展,被当成是一个维护子实体。
CCIE R/S & Service Provider Exam Certification Guide
43.3.2物理层上的OAM
物理层 OAM 功能和 OAM 流取决于与设备中的物理层中止功能相联系的监视功能以及传输系统的
传输机制。并非所有的物理传输系统可以支持所有的 OAM 流。对于 ATM,已经规定了三种类型的传输
系统:
1、基于 SDH 的传输系统 (协议 G.707-709, G.782-3)
F1 和 F2 流在 SDH 的帧中以字节的形式被运载于段开销 SOH(Section Overhead)中。
F3 流则被运载于 SDH 帧的路径开销 POH(Path Overhead)中。
2、基于 PDH 的传输系统(协议 G.702, G.804, G.832)
F1 和 F3 流可以由 PDH 段开销支持。
F2 流不被严格地支持。
3、基于信元的传输系统(协议 I.432)
F1 和 F3 流是通过使用物理层的 PL-OAM 信元来得到支持的。
F2 流得不到支持。
43.3.3 ATM层上的OAM
ATM 层流包括:F4-用于虚通道(VirtualPath)级。F5-用于虚通路(VirtualChannel)级。这些流由针
对 ATM 层 OAM 功能的 OAM 信元来提供,并用于 VCCs 和 VPCs 的情况。
F4 流的机制
用于 F4 流的 OAM 信元与用户信元具有相同的 VPI 值,且由一个或多个预分配的 VCI 值来
识别。F4 流是双向的,并对双向而言具有相同的预分配的 VCI 值。F4 流的用于双向的 OAM 信
元必须遵循相同的物理路由,从而任何连接点可以从双向获得故障和性能信息
两种 F4 流能够同时存在于一条 VPC 中:
1、端到端 F4 流(End-to-endF4flow):
这一流通过一预分配的 VCI 值(=4)来识别,并被用于端到端的 VPC 操作通信。
2、分段 F4 流(SegmentF4Flow):
这一流通过一预分配的 VCI 值(=3)来识别,并被用于在一管理段(由操作系统功能
定义)中的通信操作信息。段可以被视为一用于维护目的的 VP 链接的级联。(在一
给定连接中,不允许有覆盖的和嵌入的段)。
P a g e | 887
CCIE R/S & Service Provider Exam Certification Guide
F5 流的机制
上述要求也适用于虚通路(Virtual Channel)级的 F5 流。然而,F5 流由 ATM 头载荷类型(PT)
字段的预分配编码点来识别,PTI=100 识别一个段 F5 流;PTI=101 识别一个端到端的 F5 流。
43.3.4 AIS/RDI故障管理
AIS 功能:
VP-AIS(或 VC-AIS) 信元被产生和被从网元下行发送到所有受影响的激活的(active)VPCs(或
VCCs),而网元检测一 VP(VC)级的失败(例如,连续性的丢失)。当较低层(例如传输路径)的失败被
指示出时,也将发送 AIS 信元。在观察到一个失败条件后尽早发送 AIS 信元。AIS 信元被周期地
发送(正常是 1 个/信元)
一旦去除了失败指示,则停止发送 AIS 信元。中间连接点(NEs)可以不受打扰地监控
AIS 信元。
一旦收到 AIS 信元或检测到一传输路径 AIS 失败或连续性丢失时,在连接中止点处就
宣布 VP(或 VC)-AIS 状态。
当在正常的 2.5+-0.5 秒中不出现 AIS 信元或收到一用户信元或 CC 信元时,AIS 状态被释放。
RDI 功能:
当 VPI(或 VC)RDI 已经宣布了一个 AIS 状态,则它被从连接端点发送到远端。产生频率通常为
每秒一个信元。当 AIS 状态被去除时,RDI 则被停止。RDI 状态可以按上述针对 AIS 状态的情况来
定义。
43.3.5 连续性检查(CC)功能
连续性检查信元可以被用在所选多个连接的端到端和或分段级别之上。CC 可以通过使用激活/去激
活信元过程或通过管理接口来激活。(或可以在连接建立阶段做为一个选项被永久地激活。)
用来进行 CC 信元插入的两个不同机制被定义在协议 I.610(1995)中。当在通常的 1 秒中期间没有用
户信元被发送时,CC 信元则被源发送出去。CC 信元被周期地以通常每秒 1 个信元的速率发送出去,且
此过程不依赖于用户信元流的情况。
如果在 3.5+-0.5 的期间内连接端点没有收到任何用户信元或 CC 信元的话,则它宣布由于
连续性丢失(LOC)失败引起的 AIS 状态。
如果在 3.5+-0.5 秒分段中止点没有接收到任何用户信元或 CC 信元的话,则它宣布一个 LOC
失败并发送下行 AIS 信元。
连接性检查增加了复杂性并加重了连接上的负担,但通过这种手段可以对一连接的连接性状态进
行连续性地监视,从而找出问题的所在。
P a g e | 888
CCIE R/S & Service Provider Exam Certification Guide
43.3.6 环回功能(Loopback Function)
环回 OAM 信元可以在分段和连接端点以及在连接中插入。LB 信元能够在分段端点以及连接处环
回。如果 LB 元不能在正常的 5 秒钟内返回到初始点的话,则环回测试被认为是不成功的。LB 测试的结
果可以报告给管理系统。LB 可以由用户或由管理系统来启动。
LB 过程可以被用于证实连接性(根据管理动作的要求)或周期地监视连续性(象 CC 功能一样)。通过
使用(可选的)LB 信元中的环回定位标识符(Loop Location Identifiers),LB 测试可以被用于故障定位。针对
这一问题,具有不同定位标识符的 LB 信元应该被重复发送以隔离出故障的所在。LB 的能力可以被用于
在为用户激活之前证实 PVC(Permanent Virtual Circuit)的状态。
LB 的处理方式和 ICMP 的 Ping 十分类似,为故障管理(Fault management)提供了充分的灵活性。回
环功能常用的 5 种方式如下:
43.3.7 性能管理功能
PM 是基于通过在用户信元“块”中插入 PM 信元以监视性能参数(如错误、延迟等)的概念。PM 信
元是在 N 个用户信元之后且具有前向纠错码(及可选的时间邮票)。块大小 N 可以为 128、256、512 和
1024 个信元(容限范围 50%)。
P a g e | 889
CCIE R/S & Service Provider Exam Certification Guide
PM 信元的功效在于检测:1)错误块;2)信元的丢失或误插入;3)信元延迟(可选)。在可选数目的连
接上,PM 被激活(通过管理控制系统)。PM 过程可以既被管理接口或通过激活/去激活信元来被激活/去
激活。如果 PM 功能是被用户激活的,则必须分配适当的带宽以达到流量/资源控制的目的。
43.3.8 激活/去激活过程
性能监视(PM)及连续性检验(CC)功能可以在连接建立阶段或其后的任何时间被激活。激活可以完全
由 TMN(管理接口)或端用户来启动。
启动过程可以被用于:
1) 协调 OAM 信元传送的开始/结束。
2) 同意用于 PM 的块大小/方向或起始/停止 PM 信元插入。
启动过程可以使用
1) 指定的激活/去激活 OAM 信元。
2) 完全由 TMN 通过管理接口来实现。
43.3.9 OAM信元格式:
AIS/RDI 信元功能特定字段为:
失败类型(1 字节):
做为一个选项,被用于指示失败的原因(例如 VP 或 VC 级的失败,或更
低层的失败等。)
失败定位(16 字节):
做为一个选项,该字段可以被用于指示出失败的位置。对于 AIS,定位
指示符对应于发生点;而对于 RDI,该识别符则与用于启动 AIS 信元的
识别符相同。
P a g e | 890
CCIE R/S & Service Provider Exam Certification Guide
回环信元功能特定字段为:
环回指示字段(1 字节):
该字段的 LSB 提供了信元已经被环回的指示。
相关标志(4 字节):
这一字段被用于将被发送的 OAMLB 信元与接收的 OAMLB 信元结
合起来。
环回定位 ID(16 字节):
做为一个选项,这一字段可以被用于识别沿着连接方向的环回点
(NE),例如用于故障定位。故障编码为全 1。其它编码可以是专有
的或国家选项。
源 ID(16 字节):
做为一个选项,这一字段可以被用于识别最初的环回点(NE)。默认
编码为全 1。其它编码可以是专有的或国家选项。
性能管理信元功能特定字段为:
MCSN(Monitoring Cell Sequence Number):
模 256 的序列号,将前向和反向的信元相关起来。
TUC(0+1)(Total User Cell number of CLP(0+1) cells):
当 PM 信元被插入后(模 65636)所发送的用户信元的总个数。反向 PM 信元包含了来自
前向 PM 信元的 TUC 值。
BEDC(0+1)(Block Error Detection Code for CLP(0+1) user cell flow:
为用户信元块包含 BIP-16 错误检测码。只用于前向监视信元。
TUC(0)(Total User Cell number of CLP(0) cells (TUC(0)):
所发送的 CLP(0)信元的总体计数(与 TUC(0+1)相同。
TSTP(Time Stamp):
做为一个选项,这一字段可以被用于插入一个时间邮戳进行延迟的测量(默认值为全 1)。
TRCC(0)(Total Received Cell Count for CLP(0) cells):
用于反向报告信元,仅用于指示所接收的 CLP=0 的信元的数目。
BLER(0+1)(Block Error Result for CLP(0+1) cells):
被用于反向报告信元中,仅用来指示出成对的前向监视信元中 BIP-16 码中的错误校验
码的个数。
TRCC(0+1)(Total Received Cell Count for CLP(0+1) cells):
被用在反向报告 OAM 信元中,仅用来指示出所接收的 CLP(0+1)信元的总体个数。
激活/去激活 OAM 信元的功能特定字段
消息识别符(6 bits):
指示出用于激活或去激活及命令或响应的消息类型。
操作方向(2 bits):
识别信元传输的方向。记号 A-B 或 B-A 被用于指示出激活/去激活消息的方向。
相关标志(1 字节):
被用于将命令与响应关联起来。
PM 块大小 A-B(4 bits):
这一字段规定了被用于 A-B 方向 PM 的块大小。
PM 块大小 B-A(4 bits):
这一字段规定了 B-A 块的大小。
P a g e | 891
CCIE R/S & Service Provider Exam Certification Guide
43.4 ATM流量管理
43.4.1 ATM流量管理概述
ATM 流量管理位于 ATM 层,大致分为 2 种控制类型:
ATM 层的业务量控制是指为了避免出现拥塞,由网络所采取的一组措施。
ATM 层的拥塞控制是指为了减少拥塞的强度、波及范围和持续时间,由网络采取的一组措施。
从信元管理的角度来看,一个 ATM 网络可以被看做是一串级联的信元队列。这些信元队列由于缓冲
器溢出造成的信元丢失应被降低到最小的程度。 业务量控制意味着避免拥塞的过程。拥塞控制(在遇到拥
塞的情况下)是流量控制中一个非常重要的部分。
流量控制的目标:
1、向用户提供所需的服务质量 QOS。
2、保证网络性能的目标。
3、优化网络资源的使用。
Sb
网间接口
NNI/B-ICI
Tb
CAC
PC
RM
NRM
UPC
信元
ATM网络1
UNI
NPC
CAC
PC
RM
NRM
ATM网络2
Sb
Tb
B-NT1
B-NT2
B-TE
信元
用于业务量控制的参考配置如上图所示:
CAC-
连接接纳控制
UPC-
使用参数控制
NPC-
网络参数控制
PC-
优先级控制
NRM-
网络资源管理
RM-
资源管理(反馈控制)
43.4.2 ATM业务量合约
业务量合约规定了在 UNI 或 NNI 上的一个 ATM 连接的每一方向所协商的业务量参数,借助 GCRA 定
义。业务量合约包括:
ATM 转移能力
在特定接口处,CDVT 的值
信元业务量描述符
ATM 连接的 QOS 级
信元一致性定义
兼容的 ATM 连接的定义
业务量参数描述了一个 ATM 连接上的业务量特性。在终端用户和网络间或两个网络间交换信息方便,
P a g e | 892
CCIE R/S & Service Provider Exam Certification Guide
这些业务量参数归类为业务量描述符。有一些业务量参数在业务始发点是固定的,并保持它的值在一个
ATM 连接的所有节点上都不变。这样的始发点业务量参数有峰值信元率(PCR)、持续信元率(SCR)和突
发容限(BT),而信元延迟变分容限(CDVTOL)的值可能会随着位于测量点和业务始发点之间的 ATM 处理
单元的数量的变化而变化,一个 ATM 连接的两传输方向上可采用不同的业务量描述符。
峰值信元率(PCR)
ATM 连接的峰值信元率是最小相邻到达时间 Tpcr 的逆。这一间隔为物理层接入点 SAP 处相
邻两个信元请求原语事件的间隔。Tpcr 又被称作 ATM 连接的峰值发送间隔 PEI(Peak Emission
Interval)。在物理层的 SAP 处为一个代表 VPC/VCC 的“等效终端”请求发送一个 ATM-PDU。在源
点业务量描述符(Source traffic descriptor)中的 PCR 参数规定了能够在 ATM 连接上发送的信元率的
上限。这一上限由 UPC/NPC 来监督,使得网络操作员能够分配足够的资源以满足 QOS 的目标(如
CLR)。
在任何源点业务量描述符中都需要(显式或隐式地)规定 PCR。
信元延迟变化 CDV(Cell Delay Variation)
在 ATM 层中进行的信元复用和其它功能由于引入了信元延迟变化(CDV)而改变了信元流的
特性。CDV 可以用一 CDV 容限(CDVT)参数来描述,以规定在一接口处的“最大”或有效的 CDV。
UNI 处的 CDV 容限参数,tCDV,在业务量合约中必须使用,从而使得 UPC 能够有效地执行对业
务量合约的监督。
平均信元率 SCR(Sustainable Cell Rate)和突发容限 BT(Burst Tolerance)
平均信元率(SCR)是用于 VBR 业务源(或等效终端)的最大平均信元率的一种测度。
固有突发容限 BT 是用于 VBR 业务源的最大突发长度的测度。
P a g e | 893
CCIE R/S & Service Provider Exam Certification Guide
这些业务量参数在协议 I.371(1995)中是用一般信元率算法(GCRA)定义的。当 SCR 和 BT 参数
在业务量合约中都加以规定时,网络运营者可以用它们来为一个 VBR 业务的”平均速率”分配相
应的容量,以求获得统计增益(例如,对于一给定的带宽可有较大数量的 VBR ATM 连接)。SCR 也
可以是针对 CDV 的,由一个相应的 CDV 容限(CDVT)来约束。
43.4.3 GCRA算法
通用信元速率算法 GCRA(generic cell rate algorithm)。工作原理是检查每一个信元,看是否遵从了虚
电路的参数。GCRA 有两个参数,它们指定了最大的允许到达率(PCR)和其中可以忍受的到达时间变化
量(CDVT)。
GCRA 正常情况下是通过给定参数 T 和 L 来指定的。T 正好是 PCR 的倒数;L 就是 CDVT。GCRA 也用
来保证在任何一段较长时间内平均信元传输速率不会超过 SCR。除了提供了一条规则来看哪一个信元是合
乎协定的,哪一个是不合乎协定的之外,GCRA 也用于通信整形,以消除某些突发性传输。CDVT 越小就
意味着越好的平滑效果,但也增大了因为不合乎协定而丢弃信元的机率。在一些实现中把 GCRA 漏桶和一
个令牌桶结合起来,以提供进一步的平滑。
43.4.4 拥塞控制
ATM 网络必须既要处理由于大于系统处理能力的通信量而引起的长期拥塞,又要处理由于通信中的
突发性传输而引起的短期拥塞。结果人们使用了几种不同的策略。它们当中最重要的可分为 3 类:
1、许可证控制
很多 ATM 网络中有以固定速率产生数据的实时通信源。告诉这一类的通信源减慢发送
速率是行不通的(想象一种有一个红灯的新型数字电话。当通知拥塞发生时,红灯就会亮,
讲话者将被要求速率减慢 25%)。因此,ATM 网络把防止拥塞发生放在第一的位置。然而,
对于 CBR、VBR、UBR 类通信量,根本就没有动态拥塞控制,因此在这里预防拥塞发生将远
远比拥塞发生后再去恢复强得多。预防拥塞的一个主要工具是许可证控制。当一台主机需要
P a g e | 894
CCIE R/S & Service Provider Exam Certification Guide
一条新的虚电路时,它必须描述出希望被提供的通信和服务,网络便作出检查来看是否有可
能,在不对已存在连接造成有害的影响的前提下处理该连接。可能需要检查多条可能的线路,
从而发现哪一条将可以做此项工作。
2、资源预订
同许可证控制密切相关的是事先预定资源的技巧,这通常是在呼叫建立时进行。因为通
信量描述符给出了信元发送峰值速率,网络就有可能沿通路预留足够的带宽来处理该峰值速
率。
3、基于速率的拥塞控制
在 CBR 和 VBR 通信中,因为信息源固有的实时和半实时的特性,所以即使在发生拥塞
的情况下,一般也不可能让发送者减慢发送速率。在 VBR 服务中,没有人会担心。如果有太
多的信元,把多出来的丢弃掉就是。在 ABR 通信中,网络去通知一个或多个发送者并且请求
它们暂时减慢发送速率直到网络恢复,这是可能的也是合理的。
ABR 拥塞控制:
ABR 流控发生在源 TE 和目的 TE 之间。它是依据 RM 信元中的信息。任何中间的 NE 可以被构成为一
“虚源点”和“虚目的地点”用来将大的控制环进行分段。源点周期地产生 RM 信元,而此 RM 信元指明
了当前的信元率 CCR(Current Cell Rate)和其它参数。依赖于现有的容量,NE 向回发送一个“允许的信元率
ACR(Allowed Cell Rate)”或“显示信元率”Explicit Rate(ER),其值可以在最小信元率 MCR 和 PCR 之间变化。
拥塞通知的方法
1.
前向拥塞明确指示(EFCI)
2.
相对速率标记(RRM)
帧丢弃方式:
前期分组丢弃(EPD)
部分分组丢弃(PPD)
尾部分组丢弃(TPD)
随机早期丢弃(RED)
43.4 LANE局域网仿真
43.4.1 ATM LANE概念
ATM 的局域网仿真 (LANE) 是 LAN 设计的重要环节 ,也是网络性能分析的关键。LANE 功能是仿真通
过 ATM 交换机中的 MAC 层实现的 ,ATM 功能主要在 MAC 层以下进行 ,对 LLC 逻辑链路控制层及其高层
P a g e | 895
CCIE R/S & Service Provider Exam Certification Guide
是透明的 ,所以传统网络中的所有业务及其软硬件均可不加修改地运行在 ATM 网络上。
传统局域网站点不需事先建立连接就可以传送数据 ,LANE 要为参与仿真的站点提供类似的无连接服
务。ATM 站点中的 MAC 驱动器接口。LANE 的主要目的是使已有的 LAN 上的应用能够通过传统协议栈 ,
如 IP、IPX、Netbios、APPN、Apple Talk 等访问 ATM 网络。由于传统局域网上的这些协议栈都是运行在标
准的 MAC 驱动器接口,LANE 服务就提供相同的 MAC 驱动器服务原语,以保证网络层协议不需经过修改就能
运行。仿真局域网 Emulalted LANS:ELAN 。在有些环境中 ,可能需要在一个网络中配置多个分开的域。ELAN
由一组 ATM 附属设备组成 ,这组设备的逻辑上与以太网 IEEE802.3 和令牌环网 IEEE802.5 的局域网网段类
似。在一个 ATM 网络中可以有多个 ELAN。终端设备属于哪个 ELAN 与它的物理位置无关。一个终端设
备可以同时属于多个 ELAN。同一个 ATM 网络中的多个 ELAN 在逻辑上是相互独立的。与传统局域网的
互联。LANE 不仅提供与 ATM 站点的连接 ,而且提供与传统局域网站点的连接。因此不仅包括有 ATM 站
点与 LAN 站点 ,同时还包括 LAN 站点通过 ATM 站点与 LAN 站点的连接。在这种 MAC 层的 LANE 中仍然
可以采用传统的桥接(Bridging)方法。
LANE 协议栈如下:
ATM 局域网仿真位于 AAL 上面。用于 LANE 的 AAL 协议是 AAL5。在网络边缘设备 ATM 至 LAN
交换器中 ,LANE 为所有协议解决数据连网问题 ,其办法是把 MAC 层的 LAN 地址和 ATM 地址桥接起来。
LANE 完全独立于其上层的协议、服务和应用软件。由于 LAN 仿真过程发生在边缘设备和终端系统上 ,所
以对于 ATM 网以及以太网和令牌环网的主机来说 ,它是完全透明的。LAN 仿真把基于 MAC 地址的数据
连网协议变成 ATM 虚连接 ,这样 ,ATM 网络的作用和表现就像无连接的 LAN 一样。LANE 协议的最基本的
功能就是将 MAC 地址解析为 ATM 地址。通过这种地址映射 ,完成 ATM 上的 MAC 桥接协议 ,从而使 ATM
交换机更好地完成 LAN 交换器的功能。LANE 的目的就是完成地址映射以确保 LANE 站点之间建立连接并
传送数据 。
43.4.2 ATM LANE构成
每个 ELAN(Emulated LAN)由一组 LANE 客户(LEC)和 LANE 服务构成。LEC 还可以是作为 ATM 主机代理
的网桥和路由器。LE 服务由三个不同的功能实体构成:LAN 仿真配置服务器(LECS)、LAN 服务器(LES)和 BUS,
P a g e | 896
CCIE R/S & Service Provider Exam Certification Guide
这三个服务实体可以各自存在,但通常位于同一设备,例如:LES 可以位于 ATM 交换机、路由器、网桥
和工作站。ATM LANE 的构成及相互关系如下图所示:
(1) LANE 客户端(LEC:LANE Client)
在 ATM 终端系统上仿真以太网或令牌环网结点,至少得绑定一个 MAC 地址,其功能是封装
IP 数据报交给 ATM 网传送,同时转译 ATM 分组,重新组成 IP 数据报。
(2) LANE 服务器(LES:LANE Server)
提供 MAC 地址得注册和解析手段
响应 LEC 的上述请求
一个 LANE 中只有一个 LES
(3) LANE 广播和未知服务器(BUS:Broadcast & Unknown Server)
仿真传统 LAN 的广播机制
在 LEC 间直接链路建立前单播 LEC 数据
一个 LANE 中只有一个 BUS
(4) LANE 配置服务器(LECS:LANE Configuration Server)
维护一个 ATM 网络中多个 LANE 内的 LEC、LES 和 BUS 的配置信息
为每个 LEC 提供其所属 LES 的 ATM 地址
43.4.3 ATM LANE中的连接
在 LANE 中 ,实体之间是使用一系列 ATM 连接进行相互通信的。LEC 将这些通信分为两类:数据通信
和控制通信。其中数据通信用来传送已封装的 IEEE802.3 和 IEEE802.5 帧 ,而控制通信用来传送类似于 LEARP 的请求。虚通道 VCC 组成了 LEC 与其他 LAN 仿真实体如 LECS、LES 和 BUS 之间的连接网络 。
控制连接 (Control Connection)
1.配置直接虚通道(Configuration Direct VCC) 。
这是一个由 LEC 在连接阶段建立的到 LECS 的双向点对点虚通道。该虚通道用来获得配置信
息 ,包括 LES 的地址。
2.控制直接虚通道(Control Direct VCC)
这是一个由 LEC 在初始化阶段建立的到 LES 的双向虚通道 ,以传送控制信息。在 LEC 加盟仿真
LAN 期间 ,必须一直保持这个通道。
3.控制分布虚通道(Control Distributed VCC)
LES 也可以有选择地建立无方向的点到点或点到多点的控制通道-----控制分布虚通道 ,以向各
LEC 分发控制信息。这个虚通道可以由 LES 在初始阶段建立。在 LES 和 LEC 加盟仿真 LAN 期间
必须一直保持这个通道。
P a g e | 897
CCIE R/S & Service Provider Exam Certification Guide
数据连接(Data Connection)
数据直接虚通道(Data Direct VCC)是建立在两个希望交换数据的 LEC 之间的双向点对点的虚通道。两
个 LEC 将使用同一条数据直接虚通道在它们之间交换数据 ,减少连接建立的延迟。由于 LANE 所仿真的是
传统 LAN ,在传统 LAN 中不支持服务质量保证 QoS ,所以数据直接虚通道通常采用 UBR(不定长比特率)和
ABR(定长比特率)连接 ,并不提供任何 QoS。
组播发送虚通道(Multicast Send VCC)是由 LEC 建立的通向 BUS 的双向点对点虚通道。这个虚通道用
来向 BUS 发送组播数据 ,也用来在数据直接虚通道建立之前发送点对点通信的初始数据。BUS 也可以使
用这条虚通道向 LEC 发送数据。在 LEC 加盟仿真 LAN 的过程中 ,这条虚通道必须保持。
组播转发虚通道(Multicast Forward VCC)是由 BUS 建立的通向 LEC 的虚通道。它可以是点对多点的虚
通道 ,也可以是无方向的点对点虚通道。组播转发虚通道必须在 LEC 加盟仿真 LAN 期间一直保持。
43.4.4 ATM LANE中的实现
初始化和配置
在初始化时 ,LEC 必须首先获得自己的 ATM 地址 ,是通过地址注册过程得到的。然后 ,LEC 应
建立一条到 LECS 的配置直接虚通道(Configure Direct VCC)。为建立这条虚通道 ,LEC 必须首先知道 LECS
的地址。可通过三种方式实现:
1)
向 ATM 交换机发出 ILMI 临时本地管理接口 请求以获取连接在 ATM 交换机上的 LECS
的地址。当 LEC 启动时 ,它将通过 UNI 用户网络接口发送 ILMI 请求 ,相连的 ATM 交换
机应予以应答。
2)
使用 well-known ATM address 来获取 LECS 的 ATM 地址。
3)
使用一个预先定义好的到 LECS 的永久虚连接 VPI=0 ,VCI=17 来获取 LECS 的 ATM 地址。
找到 ATM 地址后 ,LEC 将建立一条到 LECS 的配置直接虚通道 ,并将向 LECS 发送配置请求(包括
它的 ATM 地址、MAC 地址、所支持的 LAN 类型和它的最大帧长度等信息)。随后 ,LECS 将把有关
仿真 LAN 的类型、最大帧长度、名称和 LES 的 ATM 地址等信息发送给 LEC。通过将 LES 的地址提供
给 LEC,LECS 便将该 LEC 分配到特定的仿真 LAN 中。此时 ,LEC 就可以有选择地终止与 LECS 的连接(即
配置直接虚通道)。
加入和登记
当 LEC 得到 LECS 的地址后 ,它就会建立一条到 LES 的控制直接虚通道(Control Direct VCC)。连接
建立起来后 ,LEC 会将包含从 LECS 处获得的特定仿真 LAN 信息的加入请求帧传送给 LES。LES 检查
该 LEC 的加入请求 ,并赋给 LEC 一个惟一的 LEC 标识符(LECID). LEC 会将它的 MAC 地址和 ATM 地址
登记到 LES 上。LEC 是一个代理(网桥或路由器) ,它能将它所代理的其他 MAC 地址也登记到 LES 上。
LES 将建立返回 LEC 的控制分布虚通道(Control Distributed VCC)。控制直接虚通道和控制分布虚通道
都是 LEC 用来进行地址解析的。当对目的地址进行解析时 ,LEC 产生一个 LE- APR 请求 ,并将其发送
给 LES。若 LES 知道这个地址映射 ,它可通过控制直接虚通道进行应答;否则 ,它将通过控制分布虚通
道将请求发送给知道这个地址映射的 LEC 代理。在应用中 ,是通过将请求发送给所有 LEC 来发送给
这个 LEC 代理的。
数据传送
在仿真 LAN 中 ,使用两种路径进行数据传送 ,建立在两个 LEC 之间的数据直接虚通道和连接
LEC 与 BUS 的组播发送和转发虚通道。
P a g e | 898
CCIE R/S & Service Provider Exam Certification Guide
点对点数据传送
LEC 接到要发送或转发的数据后 ,首先要查找本地表 ,以确定它是否已经知道目的 LEC 的
ATM 地址。的 LEC 是指通过该 LEC 可以访问到目的 MAC 地址。
广播或组播数据传送
LEC 可以向组播 MAC 地址发送或从组播 MAC 地址接收数据。发送或接收广播或组播数据
时 ,同样要用到 BUS。需广播的数据包要先转发给 BUS,再由 BUS 将它们转发给所有的 LEC。这
就是说 ,源 LEC 也能够接收到自己的广播或组播数据包。但有些 LAN 协议不允许这种情况 ,所
以在广播的数据包前要加上 LAN 仿真头 ,其中要包含源 LEC 的标识符(LECID),使该 LEC 根据这
个信息过滤从 BUS 处收到的所有数据包 ,从而保证源 LEC 不会接收到自己发送出的数据包。
当 LEC 加入 ELAN 时 ,通过初始化建立与 LECS 的 ATM 连接。LEC 可通过 ILMI 查找 LECS
的地址 ,或使用默认的 LECS 地址 ,或利用默认的 VPI/VCI(VPI= 0 ,VCI = 17),或利用事先约定好
的 LEC 与 LECS 的 PVC 完成初始化。LESC 向 LEC 返回操作参数 ,如 LES 地址、局域网类型、最
大帧长(MTU)等 ,LEC 依此建立与 LES 的双向连接。在 LEC 的加入请求被接受后 ,LEC 向 LES 提
交自身的 ATM 地址与 MAC 地址对的信息。LES 同时向 LEC 提供 BUS 的 ATM 地址 ,LEC 建立与
BUS 的双向连接。LEC 发送 MAC 帧时 ,会先查看自己保存的 ATMMAC 地址对信息。如有该信
息 ,则直接建立与目的端的 ATM 虚连接 ,否则向 LES 发送 LE-ARP 申请,同时通过 BUS 发送
广播的方式来传送数据帧。当 LES 返回目的端的 ATM 地址后 ,源端建立与目的端的 ATM 连
接并发送数据;如 LES 没有该地址信息 ,LEC 将继续使用 BUS 来广播数据。
43.5 MPOA多协议方案
43.5.1 MPOA简介
ATM 上的多协议传送(MPOA)是 ATM 论坛提出的一项规范 , 它利用了标准的 ATM 交换技术 , 提供
了高性能、可伸缩的路由功能。MPOA 方案将路由和桥接的通信数据流映射到了 ATM 的交换虚电路(SVC)
上 , 将传统的路由器从执行处理一个个信息包的重负中解脱了出来。MPOA 采用了基于硬件的 ATM 交换
结构 , 极大地改进了吞吐量、缩短了整体延迟时间, 以及缩短了端到端通信延时等。此外, 基于 MPOA
的网络可以通过诸如 RIP、OSPF 等标准的路由协议与传统的路由器进行通信。这样就能允许与传统的基
于路由器的网络进行无缝的集成。
MPOA 工作在网络层即第 3 层 , 在建立了快捷连接的 VCC 后 , 就使用标准的第 2 层交换技术在这
个 VCC 上来传送数据。MPOA 模型同时具备了第 2 层和第 3 层的功能 , 包含了路由和交换两种技术。
MPOA 系统引入了“交换路由器”的概念, 交换路由器仿真了传统路由器网络的功能, 但是消除了经
过多次路由步进所带来的性能限制。在 MPOA 系统中 , 不论是属于相同或不同的子网, 任何具有 MPOA
功能的主机或边缘设备都可以和另一台设备通过 ATM 网络建立快捷连接。
使用 MPOA 技术支持多种协议的 LAN 到 LAN 通信 , 是基于在大多数的情况下, 数据传输通常只
发生在相对稳定的数据流中, 也就是说 , 发送的一个文件或信息通常是由多个帧组成的, 建立一个快捷
连接,使数据流沿着预选建立好的通路来传送, 避免了先传输到缺省的通道, 再由路由器转发而引致的时
延, 极大地提高了性能。在诸如视频信号等具有固定的数据流传输情况下 , 这样处理会极其有效, 大大优
于简单的路由器到路由器的操作方式。
P a g e | 899
CCIE R/S & Service Provider Exam Certification Guide
MPOA 采用的是客户机 / 服务器的模型结构。其中客户机称为 MPOA 客户机(MPC), 服务器称为
MPOA 服务器 (MPS) , MPC 和 MPS 通过仿真 LAN(ELAN)连接起来。在运行 MPOA 协议的系统中 , MPC
和 MPS 的位置如图所示。
43.5.2 MPC
MPC 驻留在 ATM 边缘设备或连接到 ATM 交换机的主机上 , 其最基本的功能是用来转发第 3 层的
数据包 , 但是 MPC 并不运行网络层的传统的路由协议。MPC 主要作用是建立和拆除一条快捷连接。基
于这种要求 , 作为一个 MPC, 它必须支持一个到多个第 3 层 L- 3 地址和一个 ATM 地址 , 其中一个 L-3
地址用来代表这台 MPOA 主机或边缘设备 , 如果是 MPOA 边缘设备, MPC 还必须支持多个 L- 3 地址 , 这
些 L-3 地址是连接在这台边缘设备上的节点的地址。ATM 地址是 MPC 的地址 , 用于建立 VCC。MPC 和
MPS 使用 NHRP 下一跳解析协议 协议进行通信。MPC 处于入口点和出口点的位置时, 有着不同的功能。
MPC 处于入口点时 , 数据包是通过这个 MPC 进入 MPOA 系统的。MPC 对收到的数据包进行检测,
这些数据包都是要通过 ELAN 送到一个具有 MPS 功能的路由器去的。当 MPC 检测到建立一条快捷连接
更有利于减轻路由器及网络的负担时, MPC 就会向 MPS 发出请求要求建立一条到目的地的快捷连接。如
果网络资源允许建立这条快捷连接, MPC 就会将有关这个连接的信息存在它的入口高速缓存器(in ress
cache)中 , 并且建立一条到目的地的 VCC, 对接下来收到的到这个目的地的数据包, MPC 就会直接将它们
放到这个 VCC 中传送。没有数据流的 VCC 在超过一个预先设置好的过期时间后被自动拆除。
入口高速缓存器中所包含的信息主要是用来解析 L-3 地址到一条 VCC 的 ATM 地址的问题。总的来
说 , 入口高速缓存器主要是处理进入 MPOA 系统的信息流 , 看是否可以利用一条快捷连接, 同时将这
些流引导到合适的 VCC 上传送。
当 MPC 处于出口点时 , 它接收从网络上其它 MPC 传送过来的数据包, 对于从一个快捷连接传送
来的数据包 , MPC 会加上适当的数据链路层 DLL 封装 , 然后通过一个 LAN 接口转发给它的本地用
户 ,DLL 的封装信息是由 MPS 提供给 MPC 的 , 并且存在它的出口高速缓存器中。
入口高速缓存器主要用来处理从一个快捷连接来的 L- 3 数据包将如何封装并转发。
43.5.3 MPS
MPS 是 MPOA 路由器的逻辑元素 , 它提供第 3 层的转发信息给 MPC。MPS 中包含了 NHRP 服务
器(NHS)的功能。MPS 的主要功能是通过其本地 NHS 及路由器进行通信, 以回答从入口 MPC 发来的
MPOA 的询问 , 以确定出路径, 路径信息由目的地 ATM 地址和第 2 层封装信息表示出来, 回应给来自
MPC 的地址解析请求 , 同时 MPS 要向出口 MPC 提供 DLL 封装信息。
MPOA 路由器是一组功能的集合, 它可以作为一个独立的产品实现, 也可以构建在现有的路由器或
交换机中 , 它负责维护本地的网络层、MAC 层和 ATM 地址信息以及路由表。MPOA 路由器通过 NHRP
进行通信 , 解析目的地址, 使 MPC 可以建立快捷连接, 路由引擎用路由协议(如 RIP 和 OSPF)和传统的路
由器进行通信。这样使得 MPOA 系统能够和现有的路由局域网和广域网络进行连接。
43.5.4 MPOA中的信息流
MPOA 系统中有多种信息流 , 总的可为 MPOA 控制流和 MPOA 数据流。所有这些信息流, 除去配
置信息流 , 都是根据 RFC1483 在 ATM VC 上传送的。配置信息流的形式在 LANE 中有描述。
其中控制信息流包括:
配置流: 主要用于 MPS、MPC 与 LECS 局域网仿真配置服务器 之间的通信, 以根据 LANE
中所要求的来接收配置有关的信息。
P a g e | 900
CCIE R/S & Service Provider Exam Certification Guide
MPC/ MPS 控制流 : 主要用于边缘设备或 MPOA 主机与路由器之间作 MPC 高速缓存器的
管理用。另外也可以帮助入口 MPC 得到关于某个快捷连接的信息: MPS 也可利用这个控制
流来向 MPC 发送一个触发信息; 出口 MPS 也利用一个缓存器强制回答信息向出口 MPC 发
送关于出口缓存器的信息。
MPS/ MPS 控制流: MPS 和 MPS 之间的控制流主要是根据所采用的路由协议和 NHRP 来交换
信息。
MPC/ MPC 控制流: 主要用于当出口 MPC 收到一个误传的包时向入口 MPC 发送要求中止
传送的信息。
MPOA 数据流包括:
·MPC - MPC: 用于 MPC 之间利用快捷连接的 VCC 来传送数据。
·MPC - NHC: 用于 NHC 传送多点广播数据到 MPC。
43.5.5 MPOA工作过程
当一个 LEC/ MPC 起来的时候 , 它首先与 LEC 通信 , 询问有关它想加入的 ELAN 的信息 , 同时询
问它如何作为 MPC 来运作 , 并发送其 MPOA 设备类型标识 , 标识其为 MPC: 返回到 LEC/ MPC 的信息
包括标准的 LANE 的信息 , 如所加入的 ELAN 的类型 , LE 和 ATM 地址以及帧的大小等 , 同时也返回作
为 MP 使用时所需的阈值的大小;
驻留有 MPS 的路由器同时也向 LES 注册其成为这个 ELAN 的缺省网关 , MPS 也与 LECS 通信以得到
LE 的 ATM 地址 , 同时也将其注册为一个 LEC, 注册的信息同时还包括 MPOA 设备类型标识 , 以标识其
为 MPS;
MPS A
Subnet 40.50
MPS B
Subnet 60
ATM Network
ELAN A
LES/BUS
MPC1
ELAN A
MPC2
ELAN A
ELAN B
LES/BUS
MPC3
ELAN A
MPC4
ELAN B
LEC
ELAN B
如图所示 , MPC1 要将数据包传送到 MPC4, 具体的操作过程如下:
由于 MPC1 和 MPC4 属于不同的子网 , 因此 MPC1 先向其缺省路由器 A(MPS A)发送数据包 , 路
由器 A 发现目的地的 IP 不是在其服务的子网范围之内 , 就利用传统的路由协议和 NHRP 协议来寻找
MPC4, 当发现 MPC4 由路由器 B 服务时 , 将数据包发送到路由器 B , 再通过路由器 B 发送到 MPC4;
假设 MPC1 中设定的阈值为在“t 时间内 , 有个具有相同的第 3 层目的地址的数据包被转
发” ,MPC1 对所收到的数据包进行检测, 当 MPC1 检测到发送到 MPC4 的数据包超过其阈值时 , 就会
发送一个 MPOA 地址解析请求给 MPSA, 要求得到 IP 地址为 60.4 的 MPC4 的 ATM 地址;
MPSA 发现这个 IP 不是本网内的 IP 后 , 发送 NHRP 请求到另一个路由器 , 路由器之间的路由协议
仍采用传统的路由协议(如 RIP, OSPF 等);
MPSB 发现 NHRP 请求信息中的 IP 在其服务的范围之内 , 就将 NHRP 信息转变成标准的 ARP 请求
发送出去;MPC4 发现这个 IP 是自己的 IP 后 , 就用一标准的 ARP 响应返回其 MAC 地址;MPSB 收到 ARP
响应后 , 发送一 LEARP 请求到 MPC4, 要求其返回 MAC 地址对应的 ATM 地址;
P a g e | 901
CCIE R/S & Service Provider Exam Certification Guide
如果 MPC4 是一台边缘设备 , 它收到 LE-ARP 请求后 , 会回答这个 MAC 地址对应的 ATM 地址 , 如
果 MPC4 是一台主机 , 就由这台主机所属的 ELAN 的 LES 来回答;
MPSB 收到 MPC4 的 ATM 地址后 , 发送一个缓存器强制请求到 MPC4, 告诉 MPC4 有另一个用户
想与其建立一条快捷连接;
MPC4 收到缓存器强制请求这个消息后 , 它必须作出回答; MPC4 首先判断这个缓存器输入是否已
存在, 如果已经存在, 就会返回成功; 如果这个缓存器输入是新的 , MPC4 就判断其是否有足够的资源
包括(VCC 及 egress cache)来建立这个快捷连接 , 如果资源足够, 就会返回成功:
MPSB 收到缓存器强制回答(Cache lmposition Response)后 , 把这些信息转成 NHRP 应答 , 沿着原
来路由的路径发送到 MPSA; 无论缓存器强制回答的状态是成功与否, 都必须向 MPSA 发送 NHRP 应答;
MPSA 收到 NHRP 应答后 , 将这些信息转成 MPOA 应答送到 MPC1, 如果这个快捷连接已存
在,MPC1 就停止向路由器 A 发数据包 , 而转由利用这个快捷连接的 VCC 来发包; 如果在入口缓存器中没
有这个快捷连接的存在 , MPC1 就发送 UNI 用户网络接口 310/ 311 呼叫建立信息到 MPC4 的 ATM 地址,
直到建立这条快捷连接;
如果由于网络的资源问题不能成功地建立这条 VCC, 则 MPC1 仍旧基于 LANE 的协议向路由器 A 发
包;如果 MPC1 要传送数据包到一个 LEC 而不是一个 MPC, 同样可以建立快捷连接的 VCC, 但由于 LEC 不
支持 MPOA, 而 MPSB 又发现这个 LEC 由其服务 , 于是 MPSB 就会向 MPSA 返回它自己的 ATM 地址 ,
这样就可以建立一条从 MPC1 到 MPSB 的快捷连接 , 再由 MPSB 将数据包传送到 LEC。
路由器
MPOA边缘
设备 A
主机 A
MPS入口
MPS出口
MPOA主机
LAN
MPOA解析请求
NHRP解析请求
MPOA缓存要求请求
MPOA缓存要求应答
NHRP解析应答
MPOA解析应答
Shortcut
捷径连接
43.5.6 MPOA的优点和限制
MPOA从根本上将数据传送和路由计算分开,将功能分布到不同的设备,从而减少了参与路由计算的
设备数目和端设备的复杂性。它可以以统一的方式支持二层和三层网络互连,因此保证了ATM环境中大规
模的互连。它可以同时有效地处理突发数据和长期的数据流,但是,MPOA的复杂性有很大的争议。
43.6 Cisco ATM设备
43.6.1 ATM交换机简介
在较老的产品线中,Cisco 有多种交换机用于支持 ATM 传输,Catalyst 5000 系列交换机用于支持工作
组 ATM 互联,而对于校园网平台,Cisco 提供了 LightStream 1010 和 2020 系列支持。对于企业级和 ISP,
P a g e | 902
CCIE R/S & Service Provider Exam Certification Guide
Cisco 提供了 IGX8400 系列用于语音,视频,数据的集成。而 StrataCom BPX/AXIS 用于 ISP 等服务。
后期,Cisco 通过各种线卡使得 GSR,7xxx 系列路由器以及 6500/4500 系列交换机支持 ATM 服务。
同时 38xx/26xx 系列也支持 ATM 接口进行数据/语音的集成传输。
43.6.2 LightStream 1010/2020
LightStream 1010 用于校园骨干网平台,该交换机为 5Gb/s 无阻塞结构。使用 Catalyst 5000 的交换机
底盘。共有 5 个插槽,用于 ATM 交换机处理器,CAM 和 PAM 的使用。,如果将 LS1010 集成到 Catalyst 5000
底盘中,则可以形成一个同时拥有以太网和 ATM 连接能力的底盘
如图所示,Slot2 用于插入 ATM 交换/路由处理器。交换路由处理器和 Catalyst 系列的 Supervisor 功
能十分类似,负责 Cisco IOS 软件的运行,ATM 信令和路由协议,业务流管理机制等。
LightStream 可以支持 4 个 CAM,每个 CAM 支持 2 个 PAM,这样就可以支持 8 个 PAM 来实现多种类
型接口的接入
P a g e | 903
CCIE R/S & Service Provider Exam Certification Guide
而对于 LightStream 1010 的升级平台 LS 2020 则采用中背板结构,前背板结构如下图:2020 拥有 12
块前置插槽,其中 AB 用于交换板的接入,而其余 10 块用于各种业务线卡。可以注意到,旁边还有软驱
接口,同时该软驱可以更换为 SCSI 接口硬盘。LS2020 的后背板用于冗余电源的接入,同时支持控制接口
和 Modem 以及一些低速线卡的插入。
LS2020 的中背板结构如下图
P a g e | 904
CCIE R/S & Service Provider Exam Certification Guide
43.6.3 Catalyst 8500 MSR
Catalyst 8500 是 Cisco 推出的新一代 ATM 交换路由器,设计用于扩展企业骨
干网及城域光纤网。企业认识到在第三层及 ATM 上合并话音、数据基础设施可节
约成本,他们需要端口密度更高、每端口带宽更高、操作可用性水平最高的多服
务交换机。只支持 ATM 接口的企业骨干网交换机无法提供将来网络需要的业务。
Catalyst 8500 提供极大的端口密度,接口速度从 T1/E1 ATM 到 OC-48,所有
控制和转发元件均是可热插拨的,并具有 Cisco IOS 软件控制下的完全可管理性。
Catalyst 8540 连同 Catalyst 5000/5500、Cisco 7500 系列一起利用 ATM 上多协议
(MPOA)可实现 ATM LAN 仿真(LANE)网络向 IP-enable ATM 的转移。
至于 ATM 交换,此交换机结构可将现有全部 Lightstream1010 端口适配器模
块装入 Catalyst 8540 机柜,从而最大限度地保护了投资。Catalyst 8540 结构可以进行配置,使其在快速以
太网/千兆比特以太网接口上支持 Layer-3 交换。
通过支持所有相关 ATM 论坛协议,如集成本地管理接口(ILMI)、用户到网络的接口(UNI)及专用网络
到网络的接口(PNNI),Catalyst 8540 确保同所有其他基于标准的 ATM 交换机的 可互操作性,同时还提供
同类中最佳的性能。
Catalyst 8540 先进的交换机结构可在单个机柜中支持
多 个 OC-48 接 口 , 从 而 允 许 交 换 机 间 链 路 集 合 多 个
OC-12MPOA 客户机。 Catalyst 8540 系列对现有端口适配器
模块(PAM)的投资进行全面保护的同时,可将骨干网交换容
量从 5Gbps 扩展到 10Gbps、20Gbps 甚至更高。
Catalyst 8540 基于一种单级共享内存的结构,可带有高
达 1,000,000 个缓冲信元,从而确保既使是最具破坏性的数
据突发事件都能得到保护,而不致于产生数据损失。单排队
点可实现用最高水平的控制和对单个队列进行管理。
43.6.4 IGX 8400
Cisco IGX 8400 系列广域交换机提供了对目前企业的数
据、语音、传真和视频应用进行传送所需的主干网。IGX8400
系列中现已面世的产品有配备 8 槽的 IGX8400、配备 16 槽的
IGX8420 和配备 32 槽的 IGX8430,它们具有最大的灵活性,可
满足企业的广泛需求。IGX8400 系列交换机能与其他 Cisco WAN
交换、访问和 CPE 产品完全集成,提供一种端到端的网络解决
方案以获取最高的运芝效率并降低成本。
Cisco 帧中继和 ATM 服务模块均配备了大量缓冲区和一个荣获专利的动态缓冲区管理体制,可对每
一条虚拟电路分配缓冲区。IGX 8400 交换机根据通信流量和服务水平协议向单一虚拟电路动态分配缓冲
区,大量可用的缓冲区解决了节点通信量爆炸的问题。IGX 8400 ATM 模块提供 128,000 个缓冲信元,帧中
继模块则提供 100,000 个帧缓冲区。
P a g e | 905
CCIE R/S & Service Provider Exam Certification Guide
43.6.5 BPX 8600/MGX8850
8600 源于 StrataCom BPX/AXIS 系列,主要为 ISP 提供 ATM 服务。8600 系
列分为:
BPX8620
BPX8620, 15-slot: Includes BCC-4V, BCC-3-BC, ASM, ASM-BC
BPX8650
BPX IP+ATM switch: BPX w/BCC-4, ASM, backcards,Cisco7204TSC
BPX8680-IP
Includes BPX 8620,MGX 8850, 7204LSC, BCC-4V-R
BPX8680
BPX8620 & MGX8850. Rdnt BCC4, PXM1, order rdnt PXM & uplinks
其中 8620 主要用于宽带 ATM 服务。8650 用于支持宽带和 MPLS 等多种
服务。而 8680 用于支持通用服务节点,包括支持宽带/窄带 ATM 传输,MPLS
等服务。同时还支持 MGX 8850 的配合使用
Cisco MGX 8800 系列广域交换机将 Cisco IOS IP 以及运营商级 ATM 集成于
单一平台之上,MGX 8800 交换机具有丰富的业务接口,提供速度从 DSO 到
OC-48S/STM16 不等的服务。通过提供高端口密度的模块以及降低成本 MGX 平台为帧中继等大量服务提
供了花费最为低廉的边缘基础体系。
MGX8800 可以支持多种网络接口
OC-48C/STM-16
OC-12C/STM-4
OC-3C/STM-1
T3/E3
通道化 T3(下至 DSO)
nxT1/E1
信道化 T1CDSO/DSOA
信道人 E1
HSSI,X.21,V.35
以太网/快速以太网
光纤分布数据接口(FDDI)
同时也提供多种服务的支持
IP VPN
PPP 访问
帧中继到 ATM 网络互通
全套 Cisco IOS 协议和服务
语音
SNA 外线接入
帧中继到 ATM 业务通
帧中继
信元中继
电路仿真
43.6.6 ATM接口处理器
在 Cisco 7000 系列路由器上,可以支持多种 ATM 接口模块,
最早的是 AIP 模块,通过一个 AIP 线卡加载不同的 PLIM 以支持
不同的物理接口卡。后期逐渐采用 PA-A1/PA-A3 端口适配器。
增强的异步传输模式(ATM)端口适配器(ATMPA-A3)是
适用于 Cisco7200 和 7500 的新一代单宽、单端口 ATM 端口适配
器。ATMPA-A3 采用高性能、带本地缓冲内存的双分段和重装(SAR)
体系结构。ATMPA-A3 支持最新的 ATM 硬件特性,如虚拟连接(VC)流量整形等,同时它还支持许多 ATM
服务类型(如非实时可变位速率[nrt-VBR],可用位速率[ABR],和未指定位速率[UBR]等)以及数量巨大的
ATMVC。
ATMPA-A3 体系结构中先进的流量管理机制既能对突发的、客户/服务器流量提供支持,又能支持需
要保证服务质量或最佳服务的应用。ATMPA-A3 基于 ATM 论坛规范的流量管理功能超出了现在所有的高端
路由器中的 ATM 接口。
ATMPA-A3 支持所有的非实时 ATM 服务类型,如 nrt-VBR、ABR 和 UBR 等。对所有这些服务类型的支
持使 ATMPA-A3 可同时支持同一 ATM 接口上的各种网络应用。Nrt-VBR 适合于那些要求服务保证的应用,
P a g e | 906
CCIE R/S & Service Provider Exam Certification Guide
ABR 和 UBR 适合于只需要“最佳工作”服务的应用。ATMPA-A3 上创建的每个 VC(乃至所支持的所有 VC)
均可以选择所有这些 ATM 服务类型中的任意一种。
注意:ATMPA-A3 硬件支持 ABR,但这种 ATM 服务类型需要随后的 CiscoIOS 版本支持才能实现。
流量整形是一种一般在 ATM 边缘设备上提供的功能,用以保证突发流量符合预先确定的“合同”。
更加特别的是,流量整形可保证从一条 VC 来的流量不会对另外的流量产生不利影响而导致数据丢失。当
与 ATMWAN 或公用 ATM 网络相连时这种功能就非常重要,
特别是当 ATM 交换机支持流量策略,在交换机的入口抛弃所
有超出预先确定的合同的流量时尤为如此。
ATMPA-A3 在硬件中对每条 VC 提供流量整形支持。在硬
件中对流量整形的支持即意味着当整形生效时不会造成性
能降低。对每条 VC 提供流量整形可使整个系统更灵活,并
可对配置的每条 VC 进行控制。对于每种 ATM 服务类型,
ATMPA-A3 支持高度可配置参数:峰值信元速率(PCR)、可
持续信元速率(SCR)、最大突发规模(MBS)和最小信元速
率(MCR)。这些参数可根据特定应用的需要,针对单个 VC
的特定带宽需求进行定义。
这些流量管理特性是与 ATM 接口处理器(AIP)第一代流量整形机制相比的主要区别之所在,第一代流
量整形技术使用 4 高和 4 低优先队列来对流量进行整形。
43.6.7 ATM CES 电路仿真模块
ATMCES 端口适配器是位于卡上的一种 ATM 访问集中器。带有一个 ATMCES 端口适配器的 Cisco7200
路由器是一种经济有效、单机箱、基于 CiscoIOS 的解决方案,是理想的客户端设备(CPE)。在公用或专
用宽带 ATM 网络上,需要在该设备中集成电路仿真(语音和视频)流量和信息包(数据)流量。这种方式
为用户提供了许多优点,如较低的系统成本、管理费用和端到端 CiscoWAN 解决方案等。
ATMCES 端口适配器是适用于 Cisco7200 路由器的新一代 ATM 接口模块。ATMCES 是一种双宽度模块,
以业界领先的端口适配器技术为基础。它拥有 4 个 T1(1.54Mbps)或 E1(2.0Mbps)端口,能够支持结构化
(n×64kbps)和非结构化符合 ATM
论坛的 CES,以及一个 OC-3(155Mbps)
的单模(SM)中等距离或 DS3(45Mbps)
的端口或基于 E3 标准的 ATM 接口。
E1CES 端口只有 120 欧姆一种型号。
ATMCES 端口适配器的目标应用
是访问宽带公用或专用 ATM 网,在单
一的 ATM 链路中集?语音、视频、和
数据流量等多种业务。ATMCES 端口
适配器和 Cisco7200 路由器的组合提供了具有全部第 3 层路由性能和 ATM 多路复用功能的经济有效、单
一机箱解决方案。这种解决方案的目标是作为客户端设备(CPE),在企业网中部署,并作为服务提供商提
供的可管理网络服务的一部分。
ATMForum 为 CES 设定了两种模式
结构化 CES 允许多条 nx64-kbps 电路共享一条链路,从而实现了 CBR 带宽的更有效利用
非结构化 CES 用于清零信道 DS1/E1 电路;可与不支持标准成帧格式的设备共用,且易于配置
P a g e | 907
CCIE R/S & Service Provider Exam Certification Guide
43.7 WAN ATM配置
43.7.1 配置PVC
在一个接口下配置 PVC,首先需要进入接口的 interface-ATM-VC 配置模式。配置方式如下:
Router(config-if)# pvc [name] vpi/vci [ilmi | qsaal | smds]
在进入 ATM-VC 配置模式后,需要将相应的协议及地址映射到这条 PVC 上
Router(config-if-atm-vc)# protocol protocol protocol-address [[no] broadcast]
例如 Router(config-if-atm-vc)# protocol ip 1.1.1.1 broadcast
然后需要配置 AAL 的封装方式
Router(config-if-atm-vc)# encapsulation aal5encap
Cisco 路由器支持的 ATM 封装类型
Aal5snap 支持多协议 VC。它使用标准 SNAP 帧, 如果将 VC 定义为 aal5mux 为每个 VC 一个
协议,必须指定协议,例如:aal5mux ip. 而 aal5nlpid 则可以使 HSSI/帧中继接口一起使用,
如下图:
ATM UNI
封装NLPID
ATM
Network
ATM UNI
封装NLPID
ATM UNI
DS-3/ES
HSSI
ATM DXI
Aal34smd 使用 SMDS 服务器,通过 SMDS over ATM 规范,并且在单个 ATM UNI 上反映无连接
及面向连接的服务的完整接入。Qssaal 是使用信令 PVC 的信令 ATM 适配层协议,而 ILMI 是
集成本地管理接口使用的封装类型。
此后需要设置各种流量的参数,例如 ABR/UBR/VBR 的 PCR 值等,配置方式如下:
Router(config-if-atm-vc)# abr output-pcr output-mcr
Router(config-if-atm-vc)# ubr output-pcr
Router(config-if-atm-vc)# ubr+ output-pcr output-mcr
Router(config-if-atm-vc)# vbr-nrt output-pcr output-scr output-mbs
Router(config-if-atm-vc)# vbr-rt peak-rate average-rate burst
Router(config-if-atm-vc)# atm abr rate-factor [rate-increase-factor]
[rate-decrease-factor]
对于 Cisco 路由器在使用 ILMI 封装类型时,可以通过邻接的 ATM 交换机自动发现 PVC 的参数以及各
种流量参数。
Router(config-if)# pvc [name] 0/16 ilmi
Router(config-if-atm-vc)# exit
Router(config-if)# atm ilmi-pvc-discovery [subinterface]
Router(config-if)# exit
在使用 PVC 命令创建一条 PVC 后,反向 ARP 解析默认在 PVC 链路上开启。但是当存在有静态的映射
时,反向 ARP 将自动关闭。
Router(config)# interface atm 1/0.4 {multipoint | point-to-point}
Router(config-if)# pvc [name] vpi/vci
Router(config-if-atm-vc)# encapsulation aal5snap
Router(config-if-atm-vc)# inarp minutes
对于一条 PVC 可以选择开启端到端的 F5 OAM 回环信元测试。该测试用于检测 PVC 的连通性。但必
P a g e | 908
CCIE R/S & Service Provider Exam Certification Guide
须要求远端设备支持这类信元的回复功能。如果 OAM 响应信元丢失,则 PVC 状态变为 down。如果一个
子接口上的所有 PVC 都断开,则该子接口状态将为 down。
Router(config-if-atm-vc)# oam-pvc [manage] frequency
Router(config-if-atm-vc)# oam retry up-count down-count retry-frequency
对于一条 PVC 链路,在 ATM-VC 模式下加入如下命令则可支持广播
Router(config-if-atm-vc)# broadcast
PVC 链路也可以使用 SNMP Trap,配置方式如下:
Router(config)# snmp-server enable traps atm pvc interval seconds
fail-interval seconds
Router(config)# interface atm 1/0.3{multipoint | point-to-point}
Router(config-if)# pvc [name] vpi/vci
Router(config-if-atm-vc)# oam-pvc manage
43.7.2 PVC配置实例
配置使用 LLC/SNAP 封装的 PVC
interface atm 4/0
ip address 172.21.168.112 255.255.255.0
atm maxvc 512
pvc 1/51
protocol ip 171.21.168.110
exit
!
pvc 2/52
protocol decnet 10.1 broadcast
exit
!
pvc 3/53
protocol clns 47.004.001.0000.0c00.6e26.00 broadcast
exit
!
decnet cost 1
clns router iso-igrp comet
exit
!
router iso-igrp comet
net 47.0004.0001.0000.0c00.6666.00
配置多条 PVC,拓扑结构如下图
Router A
ip routing
!
interface atm 4/0
ip address 131.108.168.1 255.255.255.0
pvc 0/32
protocol ip 131.108.168.2 broadcast
!
pvc 0/33
P a g e | 909
CCIE R/S & Service Provider Exam Certification Guide
protocol ip 131.108.168.3 broadcast
exit
Router B
ip routing
!
interface atm 2/0
ip address 131.108.168.2 255.255.255.0
pvc test-b-1 0/32
protocol ip 131.108.168.1 broadcast
!
pvc test-b-2 0/34
protocol ip 131.108.168.3 broadcast
Router C
ip routing
!
interface atm 4/0
ip address 131.108.168.3 255.255.255.0
pvc 0/33
protocol ip 131.108.168.1 broadcast
!
pvc 0/34
protocol ip 131.108.168.2 broadcast
配置支持 F5 OAM 回环信元的 PVC
interface atm 2/0
pvc routerA 0/32
oam-pvc manage 3
oam retry 5 5 10
配置 PVC 流量参数及流量自动发现
interface atm 4/0
ip address 1.1.1.1 255.255.255.0
pvc 0/34
atm abr rate-factor 32 32
no shutdown
!
interface atm 2/0
pvc RouterA 0/16 ilmi
exit
atm ilmi-pvc-discovery subinterface
exit
!
interface atm 2/0.1 multipoint
ip address 172.21.51.5 255.255.255.0
43.7.3 配置SVC
在一个 SVC 环境,必须配置一个 PVC 用于 ILMI,使得路由器能够收到 SNMP traps 消息和新的网络前
缀。这条 PVC 使用保留的 0/16。配置方式如下:
Router(config-if)# pvc [name] 0/16 ilmi
Router(config-if)# atm ilmi-keepalive[seconds]
SVC 的建立和断开消息使用 Q.2931 协议,ATM 使用带外信令,并且使用一条特定的 PVC 用于信令传
送。信令 PVC 配置如下:
Router(config-if)# pvc cisco 0/5 qsaal
如果 ILMI 没有自动分配地址,则需要定义一个 40 字节的 ATM 地址,例如 NSAP 格式
Router(config-if)# atm nsap-address nsap-address
如果将 ILMI 用于地址分配功能,就应该定义地址的端系统指示符(ESi)部分,注意,前缀字节由 ILMI
P a g e | 910
CCIE R/S & Service Provider Exam Certification Guide
从入口 ATM 交换机自动获取
Router(config-if)# atm esi-address esi.selector
接下来可以创建一条 SVC
Router(config-if)# svc [name] nsap address
Router(config-if-atm-vc)# encapsulation aal5encap
Router(config-if-atm-vc)# protocol protocol protocol-address [[no] broadcast]
对于这条 SVC,可以设置 UNI 的版本号
Router(config-if)# atm uni-version version-number
同时也可以设置 SVC 的带宽和空闲时间,
Router(config-if-atm-vc)# idle-timeout seconds [minimum-rate]
SVC 支持点到多点信令,这种方式支持路由器发送一个报文到 ATM 交换机,而交换机复制报文到多
个目的主机。在配置多点信令后,路由器可以使用带有关键字的多点呼叫来凝结,这样就可以使用 AddParty
消息建立点到多点的连接方式
Router(config-if)# atm multipoint-signalling
Router(config-if)# atm multipoint-interval interval
SVC 流量参数也可以调整,如下:
Router(config-if)# svc [name] nsap address
Router(config-if-atm-vc)# protocol protocol protocol-address [[no] broadcast]
Router(config-if-atm-vc)# ubr output-pcr [input-pcr]
Router(config-if-atm-vc)# ubr+ output-pcr output-mcr [input-pcr] [input-mcr]
Router(config-if-atm-vc)# vbr-nrt output-pcr output-scr output-mbs [input-pcr]
[input-scr] [input-mbs]
SVC 流量整形配置如下:
Router(config-if)# atm sig-traffic-shaping strict
同样 SVC 也可以配置支持 F5 OAM 的端到端回环信元
Router(config-if-atm-vc)# oam-svc [manage] frequency
Router(config-if-atm-vc)# oam retry up-count down-count retry-frequency
在 SVC 上支持广播流量,可以配置如下命令
Router(config-if-atm-vc)# broadcast
配置 SSCOP 协议
Router(config-if)# sscop poll-timer seconds
Router(config-if-atm-vc)# sscop keepalive-timer seconds
Router(config-if)# sscop cc-timer seconds
Router(config-if)# sscop max-cc retries
Router(config-if)# sscop send-window packets
关闭一条 SVC 的配置方式如下:
Router # atmsig close atm slot/0 vcd
43.7.4 SVC配置实例
对于如图拓扑配置 SVC
Router A
interface atm 4/0
ip address 172.16.168.1 255.255.255.0
P a g e | 911
CCIE R/S & Service Provider Exam Certification Guide
atm nsap-address AB.CDEF.01.234567.890A.BCDE.F012.3456.7890.1234.12
atm maxvc 1024
pvc 0/5 qsaal
exit
!
svc svc-1 nsap BC.CDEF.01.234567.890A.BCDE.F012.3456.7890.1334.13
protocol ip 172.16.168.2
exit
!
svc svc-2 nsap CA.CDEF.01.234567.890A.BCDE.F012.3456.7890.1334.12
protocol ip 131.108.168.3
exit
Router B
interface atm 2/0
ip address 172.16.168.2 255.255.255.0
atm nsap-address BC.CDEF.01.234567.890A.BCDE.F012.3456.7890.1334.13
atm maxvc 1024
pvc 0/5 qsaal
exit
!
svc svc-1 nsap AB.CDEF.01.234567.890A.BCDE.F012.3456.7890.1234.12
protocol ip 172.16.168.1
exit
!
svc svc-2 nsap CA.CDEF.01.234567.890A.BCDE.F012.3456.7890.1334.12
protocol ip 172.16.168.3
exit
Router C
interface atm 4/0
ip address 172.16.168.3 255.255.255.0
atm nsap-address CA.CDEF.01.234567.890A.BCDE.F012.3456.7890.1334.12
atm maxvc 1024
pvc 0/5 qsaal
exit
!
svc nsap AB.CDEF.01.234567.890A.BCDE.F012.3456.7890.1234.12
protocol ip 172.16.168.1
exit
!
svc nsap BC.CDEF.01.234567.890A.BCDE.F012.3456.7890.1334.13
protocol ip 172.16.168.2
exit
配置 ESI 地址和 NSAP 地址
interface atm 4/0
pvc 0/16 ilmi
atm esi-address 345678901234.12
interface atm 4/0
atm nsap-address AB.CDEF.01.234567.890A.BCDE.F012.3456.7890.1234.12
配置支持多点信令的 SVC
interface atm 2/0
ip address 4.4.4.6 255.255.255.0
pvc 0/5 qsaal
exit
!
pvc 0/16 ilmi
exit
!
P a g e | 912
CCIE R/S & Service Provider Exam Certification Guide
atm esi-address 3456.7890.1234.12
!
svc mcast-1 nsap cd.cdef.01.234566.890a.bcde.f012.3456.7890.1234.12 broadcast
protocol ip 4.4.4.4 broadcast
exit
!
svc mcast-2 nsap31.3233.34.352637.3839.3031.3233.3435.3637.3839.30 broadcast
protocol ip 4.4.4.7 broadcast
exit
!
atm multipoint-signalling
atm maxvc 1024
配置 SVC 业务流量参数:
interface atm 4/0
svc svc-1 nsap 47.0091.81.000000.0041.0B0A.1581.0040.0B0A.1585.00
vbr-nrt 1000 500 64 800 400 64
exit
43.7.5 配置VC Classes
VC Classes 用于给一个特殊的 VC 或者 ATM 接口提供预配置模板,VC class 可以应用在一个 ATM 主接
口上,也可以应用在子接口和 PVC/SVC 上。
使用如下命令创建一个 VC Classes
Router(config)# vc-class atm name
VC Classes 可以对如下参数进行设置:
abr
broadcast
encapsulation aal5
idle-timeout
ilmi manage
inarp
oam-pvc
oam retry
oam-svc
protocol
ubr
ubr+
vbr-nrt
将 VC Classes 应用在相应的接口或者 VC 上:
Router(config-if)# pvc [name] vpi/vci
Router(config-if)# svc [name] nsap address
Router(config-if-atm-vc)# class-vc vc-class-name
Router(config)# interface atm 1/0.1 {multipoint | point-to-point}]
Router(config-if)# class-int vc-class-name
P a g e | 913
CCIE R/S & Service Provider Exam Certification Guide
VC Class 配置实例:
vc-class atm main
ubr 10000
encapsulation aal5mux ip
!
vc-class atm sub
ubr 15000
oam-pvc manage 3
!
vc-class atm pvc
vbr-nrt 10000 5000 64
encapsulation aal5snap
!
interface atm 4/0
class-int main
!
interface atm 4/0.5 multipoint
class-int sub
!
interface atm 4/0.5 multipoint
pvc 0/56
class-vc pvc
43.7.6 VC管理
ILMI:Interim Local Management Interface(本地管理临时接口) 整合的本地管理接口(ILMI)协议
可用于工作站与交换机之间的交互界面。该协议以简单网络管理协议(SNMP)为基础。它可以进行地址
分配等多种管理功能。 ILMI 管理仅在 PVC 上使用。首先需要创建一条 0/16 的 ILMI 格式 PVC,然后再对
特定的 PVC 启用 ILMI 管理:
Router(config-if)# pvc [name] 0/16 ilmi
Router(config-if)# pvc [name] vpi/vci
Router(config-if-atm-vc)# ilmi manage
OAM 管理配置如下:
Router(config-if-atm-vc)# oam-pvc manage [frequency]
Router(config-if-atm-vc)# oam retry up-count down-count retry-frequency
例如在一条 PVC 和 SVC 上配置 OAM 管理:
interface atm 2/0
pvc routerA 0/32
oam-pvc manage 3
oam retry 5 5 10
interface atm 1/0
svc routerZ nsap 47.0091.81.000000.0040.0B0A.2501.ABC1.3333.3333.05
oam-svc manage 3
oam retry 5 5 10
43.7.7 配置经典的IP和ARP
配置 ATM-ARP 客户端:
Router(config)# interface atm number
Router(config-if)# atm esi-address esi.selector
Router(config-if)# ip address address mask
Router(config-if)# atm classic-ip-extensions BFI
Router(config-if)# atm arp-server nsap nsap-address
Router(config-if)# no shutdown
P a g e | 914
CCIE R/S & Service Provider Exam Certification Guide
配置 ATM-ARP 服务器:
Router(config)# interface atm number
Router(config-if)# atm esi-address esi.selector
Router(config-if)# ip address address mask
Router(config-if)# atm classic-ip-extensions BFI
Router(config-if)# atm arp-server self
Router(config-if)# no shutdown
例如在 RouterA 上配置 ATM-ARP 客户端,在 RouterB 上配置 ATM-ARP 服务器
RouterA
interface atm 2/0.5
atm nsap-address ac.2456.78.040000.0000.0000.0000.0000.0000.0000.00
ip address 10.0.0.2 255.0.0.0
pvc 0/5 qsaal
atm arp-server nsap ac.1533.66.020000.0000.0000.0000.0000.0000.0000.00
RouterB
interface atm 0/0
ip address 10.0.0.1 255.0.0.0
atm nsap-address ac.1533.66.020000.0000.0000.0000.0000.0000.0000.00
atm rate-queue 1 100
atm maxvc 1024
pvc 0/5 qsaal
atm arp-server self
43.7.8 AAL3/4 SMDS
交换式多兆位数据服务(Switched Multimegabit Data Service,SMDS)是一项本地交换电信局(LEC)
在城域范围内提供一种扩展局域网服务的方法。SMDS 是由 Bellcore 公司开发的并在许多大都市区由本地
交换电信局提供的服务。SMDS 是一项在大都市区采用的定长信元技术。交换电路或专用电路提供客户站
点到 SMDS 网络的联结。传输速度范围从 1Mbps 到 16Mbps 或将来更高。配置方式如下:
interface atm 3/0
ip address 172.21.168.112 255.255.255.0
atm aal aal3/4
atm smds-address c140.888.9999
atm multicast e180.0999.9999
atm vp-filter 0
atm pvc 30 0 30 aal34smds
map-group atm
appletalk address 10.1
appletalk zone atm
!
map-group atm
atalk 10.2 smds c140.8111.1111 broadcast
43.7.8 透明桥接
多个支持 AAL5/SNAP 封装的 PVC 可以通过 Cisco 设备进行快速的透明桥接,配置方式如下:
interface atm 4/0
ip address 1.1.1.1 255.0.0.0
pvc 1/33
pvc 1/34
pvc 1/35
bridge-group 1
!
P a g e | 915
CCIE R/S & Service Provider Exam Certification Guide
bridge 1 protocol dec
43.7.9 配置IMA逆向复用
配置基于多端口的 IMA 组
interface ATM1/IMA0
ip address 10.18.16.123 255.255.255.192
no ip directed-broadcast
ima clock-mode common port 2
no atm oversubscribe
pvc 1/42
protocol ip 10.10.10.10 broadcast
!
interface ATM1/IMA1
ip address 10.19.16.123 255.255.255.192
no ip directed-broadcast
no atm oversubscribe
ima active-links-minimum 3
pvc 1/99
protocol ip 10.10.10.10 broadcast
在多接口 T1/E1 ATM 网络模块上配置 IMA
interface ATM0/0
no ip address
no ip directed-broadcast
no atm ilmi-keepalive
ima-group 3
no scrambling-payload
no fair-queue
!
interface ATM0/1
ip address 10.18.16.121 255.255.255.1
no ip directed-broadcast
no atm ilmi-keepalive
!
ima-group 3
no scrambling-payload
no fair-queue
!
interface ATM0/2
no ip address
no ip directed-broadcast
no atm ilmi-keepalive
ima-group 3
no scrambling-payload
no fair-queue
!
interface ATM0/3
no ip address
no ip directed-broadcast
no atm ilmi-keepalive
ima-group 3
no scrambling-payload
no fair-queue
interface ATM0/IMA3
no ip address
no ip directed-broadcast
no atm ilmi-keepalive
pvc 0/16 ilmi
P a g e | 916
CCIE R/S & Service Provider Exam Certification Guide
!
pvc 0/5 qsaal
!
pvc first 1/43
vbr-rt 640 320 80
encapsulation aal5mux ip
!
svc second nsap 47.0091810000000050E201B101.00107B09C6ED.FE
abr 4000 3000
!
svc nsap 47.0091810000000002F26D4901.444444444444.01
43.7.10
配置CES电路仿真
在 OC-3/STM-1 ATM 上配置电路仿真:
controller T1 1/0
clock source internal
tdm-group 0 timeslots 4-8
!
controller T1 1/1
clock source internal
tdm-group 1 timeslots 1
!
interface ATM1/0
ip address 7.7.7.7 255.255.255.0
no ip directed-broadcast
no atm ilmi-keepalive
pvc 1/101 ces
pvc 1/200
protocol ip 7.7.7.8 broadcast
在 ATM-CES 端口适配器上配置 CES
interface cbr 6/0
ces aal1 service unstructured
ces aal1 clock adaptive
atm clock internal
ces dsx1 clock network-derived
ces circuit 0 circuit-name CBR-PVC-A
ces pvc 0 interface atm 6/0 vpi 0 vci 512
no shutdown
no ces circuit 0 shutdown
配置 Virtual Path Shaping
interface atm 6/0
ip address 2.2.2.2 255.255.255.0
atm pvp 1 2000
pvc 1/33
no shutdown
!
interface cbr 6/1
ces circuit 0
ces pvc 0 interface atm6/0 vpi 1 vci 100
43.7.11 ATM背对背连接
Router A
interface atm 3/0
ip address 192.168.1.10 255.0.0.0
no keepalive
P a g e | 917
CCIE R/S & Service Provider Exam Certification Guide
atm clock internal
pvc 1/35
!
protocol ip 192.168.1.20 broadcast
Router B
interface atm 3/0
ip address 192.168.1.20 255.0.0.0
no keepalive
atm clock internal
pvc 1/35
!
protocol ip 192.168.1.10 broadcast
43.7.12 OAM ping
ping atm interface atm interface-number vpi-value vci-value [end-loopback [repeat
[timeout]] | seg-loopback [repeat [timeout]]]
Example:
Router# ping atm interface atm1/1.1 0 500 end-loopback 1 2
OAM F5 连接性检查
Router(config)# snmp-server enable traps atm pvc extension mibversion 2
Router(config)# snmp-server enable traps atm pvc extension {up | down | oam
failure [aisrdi | endCC | loopback | segmentCC]}
43.7.13 AAL1 CES
network-clock-participate slot number
network-clock-participate slot number
network-clock-participate aim number
controller t1 | e1 slot/port
mode atm aim aim-slot
controller t1 | e1 slot/port
tdm-group tdm-group-no timeslots timeslot-list
tdm-group tdm-group-no timeslots timeslot-list
interface atm interface-number/subinterface-number
pvc vpi/vci [ces]
ces-cdv time
exit
pvc vpi/vci ces
ces-cdv time
exit
connect connection-name atm slot/port [name of PVC/SVC|vpi/vci] E1 slot/port
TDM-group-number
connect connection-name atm slot/port [name of PVC/SVC|vpi/vci] E1 slot/port
TDM-group-number
P a g e | 918
CCIE R/S & Service Provider Exam Certification Guide
43.8 LAN ATM配置
43.8.1 LANE的设计
在设计 LANE 时,需要注意多个因素,首先为 ATM 接口交换结构的能力。 ATM 接口交换能力受限
于 VC 数量。 例如 Cisco 7500 支持 4096 个 VC,LANE 消耗 VC 的总数量计算公式为:
𝑁∗ 𝑁−1
+ 3𝑁 + 2
2
ATM 网络内部交换机的呼叫能力也是考虑容量规划的一个方面,以 SVC 为基础的 VC 动态产生的网
络方案中,如果 ATM 云出现故障,则会突发大量的呼叫建立请求,这样将会导致过载,对于 LS1010 交换
机,其呼叫能力仅 110 次每秒。
另一个需要考虑的是 LANE 服务器的开销。LANE 共需要 3 类服务器, 局域网仿真配置服务器 LECS,
局域网仿真服务器 LES 和广播和无法识别服务器 BUS。Cisco 可以在一个平台上实现 LES 和 BUS 的功能,BUS
的负载相对于其他服务大很多。对于 7500 的 AIP 插件,其处理能力仅为 60Kb/s,所以在配置服务时需要
考虑 BUS 的负载问题。
对于一个 LANE 而言,虚电路类型也是考虑的因素之一。 虚电路可以配置为 PVC,但必须为所有的
控制 VC 和数据 VC 配置 PVC,这样对于 2 个 LANE 就要配置 9 条 PVC,如此多的配置,首先十分复杂,其
次手工配置容易产生错误。使用基于 SVC 的 LANE 则灵活很多,同时可以采用 PNNI 作为 ATM 信令的路由
选择协议。使用 PNNI 能够通过多条路径负载平衡呼叫建立请求。同时支持快速收敛的路径冗余。使用后
台路由选择特定并通过多次跳跃提供来能够好的呼叫建立过程。
在 LANE 中,为了防止服务器失效,需要配置服务器冗余,Cisco 使用 SSRP 协议或者 HSRP 来配置 LANE
服务器冗余。
43.8.2 LANE配置
由于 PVC 配置 LANE 比较复杂,所以我们采用 SVC 配置 LANE。首先需要知道 NSAP 地址。Cisco 产品
已经为 NSAP 地址的终端系统标识符(ESI)部分预供应了 LECS,LES,BUS 和 LEC 功能。NSAP 地址前缀由 ILMI
从入口 ATM 交换机获得。此后的 ESI 部分地址为 6 字节长。通过 MAC 地址进行运算获得。LEC 的 ESI 为
MAC 地址+0.LES 为 MAC+1.BUS 为 MAC+2.LECS 为 MAC+3。同时可以使用如下命令查看这些地址
Router#show lane default-atm-addresses
interface ATM1/0:
LANE Client:
...CA000EC4001C.**
LANE Server:
...CA000EC4001D.**
LANE Bus:
...CA000EC4001E.**
LANE Config Server: ...CA000EC4001F.00
note: ** is the subinterface number byte in hex
最后一位为 SEL 值,也就是如上**部分,用于字接口的编号等。
43.8.3 配置LEC和LES-BUS
配置 LEC 非常简单,仅需要在主接口自动分配 LANE 地址,宣布为制定 ELAN 的一个 LANE 客户端即
可。配置方式如下:
首先还是需要配置 Qsaal 和 ILMI 的 PVC。
interface atm 1/0
atm pvc 1 0 5 qsaal
atm pvc 2 0 16 ilmi
然后配置自动获取地址和相应的 LANE 客户端
lane config auto-config-atm-address
P a g e | 919
CCIE R/S & Service Provider Exam Certification Guide
lane client {Ethernet | tokenring} [elan-name]
LES-BUS 和 LEC 配置相似
interface atm 1/0
atm pvc 1 0 5 qsaal
atm pvc 2 0 16 ilmi
lane config auto-config-atm-address
lane serverbus {Ethernet | tokenring} [elan-name]
43.8.4 配置LECS
LECS 要稍微复杂一些,首先需要配置 LANE 数据库,LANE 数据库配置如下:
Router(config)# lane database database-name
Router(lane-config-dat)# name elan-name1 server-atm-address atm-address
[index number]
Router(lane-config-dat)# name elan-name2 server-atm-address atm-address
[index number]
Router(lane-config-dat)# name elan-name1 local-seg-id segment-number
Router(lane-config-dat)# name elan-name2 local-seg-id segment-number
Router(lane-config-dat)# default-name elan-name
Router(lane-config-dat)# exit
然后配置信令 PVC,并应用 LANE 数据库
atm pvc 1 0 5 qsaal
atm pvc 2 0 16 ilmi
lane config database [database-name]
lane config auto-config-atm-address
43.8.5 LANE配置实例
对于右图拓扑,Router1 用于 LECS,BUS 和 LEC。Router2
用于备份 LECS 和 LES,Router3/4 仅配置 LEC。如下标记的为
备份 LECS。
Router 1 Configuration
lane database example1
name eng server-atm-address 39.000001415555121101020304.0800.200c.1001.01
name eng server-atm-address 39.000001415555121101020304.0612.200c 2001.01
default-name eng
interface atm 1/0
atm pvc 1 0 5 qsaal
atm pvc 2 0 16 ilmi
lane config auto-config-atm-address
lane config database example1
interface atm 1/0.1
ip address 172.16.0.1 255.255.255.0
lane server-bus ethernet eng
lane client ethernet
Router 2 Configuration
lane database example1_backup
name eng server-atm-address 39.000001415555121101020304.0800.200c.1001.01
name eng server-atm-address 39.000001415555121101020304.0612.200c 2001.01
default-name eng
interface atm 1/0
atm pvc 1 0 5 qsaal
P a g e | 920
CCIE R/S & Service Provider Exam Certification Guide
atm pvc 2 0 16 ilmi
lane config auto-config-atm-address
lane config database example1_backup
interface atm 1/0.1
ip address 172.16.0.3 255.255.255.0
lane server-bus ethernet eng
lane client ethernet
Router 3 Configuration
interface atm 2/0
atm pvc 1 0 5 qsaal
atm pvc 2 0 16 ilmi
interface atm 2/0.1
ip address 172.16.0.4 255.255.255.0
lane client ethernet
Router 4 Configuration
interface atm 1/0
atm pvc 1 0 5 qsaal
atm pvc 2 0 16 ilmi
interface atm 1/0.3
ip address 172.16.0.5 255.255.255.0
lane client ethernet
43.8.6 配置MPOA
MPOA 为基于 C/S 模式工作的协议,我们先来看如何配置 MPC,
首先需要配置 ELAN ID,配置方式如下:
Router(config-lane-database)#name elan-name elan-id id
Router(config-subif)#lane client Ethernet elan-name [elan-id id]
然后可以配置 MPC,首先指定 MPC 名称,然后将 MPC 连接到 ATM 物理层接口,最后将 LEC 绑定到
指定 MPC。
Router(config)# mpoa client config name mpc-name
Router(config-if)# interface atm 1/0
Router(config-if)# mpoa client name mpc-name
Router(config-if)# interface atm1/0.1
Router(config-subif)# lane client mpoa client name mpc-name
此后可以配置 MPC 的一些参数
Router(mpoa-client-config)# shortcut-frame-count count
Router(mpoa-client-config)# shortcut-frame-time time
配置 MPS 的方式如下:
同样首先需要配置 ELAN ID,
Router(config-lane-database)#name elan-name elan-id id
Router(config-subif)#lane client Ethernet elan-name [elan-id id]
然后指定 MPS 名称,并将 MPS 连接到 ATM 物理层接口,最后将 LEC 绑定到指定 MPS
Router(config)# mpoa server config name mps-name
Router(config)# interface atm 1/0
Router(config-if)# mpoa server name mps-name
Router(config-if)# interface atm1/0.4
Router(config-subif)# lane client mpoa server name mps-name
同样也可以调整 MPS 的参数:
Router(mpoa-server-config)# holding-time time
Router(mpoa-server-config)# keepalive-lifetime time
Router(mpoa-server-config)# keepalive-time time
Router(mpoa-server-config)# network-id id
P a g e | 921
CCIE R/S & Service Provider Exam Certification Guide
43.8.7 MPOA配置实例
对于如下拓扑,我们来配置 MPOA 环境
MPC-1
name elan1 server-atm-address 47.00918100000000613E5A2F01.006070174821.01
name elan1 elan-id 101
name elan2 server-atm-address 47.00918100000000613E5A2F01.006070174821.02
name elan2 elan-id 102
!
mpoa client config name mpc-1
interface Ethernet0
!
interface ATM0
atm pvc 1 0 5 qsaal
atm pvc 2 0 16 ilmi
lane config auto-config-atm-address
lane config database mpoa-test
!
mpoa client name mpc-1
interface ATM0.1 multipoint
lane server-bus ethernet elan1
lane client mpoa client name mpc-1
lane client ethernet 1 elan1
MPC-2
mpoa client config name mpc-2
!
interface ATM0
atm pvc 1 0 5 qsaal
atm pvc 2 0 16 ilmi
mpoa client name mpc-2
!
interface ATM0.1 multipoint
lane server-bus ethernet elan2
lane client mpoa client name mpc-2
lane client ethernet 2 elan2
MPS
mpoa server config name mps
P a g e | 922
CCIE R/S & Service Provider Exam Certification Guide
!
interface ATM4/0
no ip address
atm pvc 1 0 5 qsaal
atm pvc 2 0 16 ilmi
lane config auto-config-atm-address
mpoa server name mps
!
interface ATM4/0.1 multipoint
ip address 1.1.1.2 255.255.255.0
lane client mpoa server name mps
lane client ethernet elan1
interface ATM4/0.2 multipoint
ip address 1.1.2.1 255.255.255.0
lane client mpoa server name mps
lane client ethernet elan2
43.9 ATM路由配置
43.9.1 静态路由选择
ATM 交换机可以根据 ATM 地址进行路由选择,首先我们来看如何配置静态路由
首先需要配置本交换机的 NSAP 地址
ATM(config)#atm address 11.1111.0000.0000.0030.96fe.db01.0030.96fe.db01.00
然后配置静态路由指明对端地址的出口
ATM(config)#atm route 22… atm 3/1/1
ATM(config)#atm route 33… atm 3/0/1
最后在相应的接口上运行 IISP
ATM(config)#interface atm 3/1/1
ATM(config-if)#shut
ATM(config-if)#no atm autoconfiguration
ATM(config-if)#atm iisp side user
ATM(config-if)#no shut
43.9.2 PNNI动态路由选择
PNNI 信令路由和 ISIS 路由协议比较相似,采用分层结构。
首先需要配置底层设备,底层设备配置包括 4 步:
1. 配置 ATM 地址和 PNNI 节点等级
2. 有选择的配置静态路由到不支持 PNNI 的交换机
3. 配置一个汇总地址
4. 配置地址范围
配置 ATM 地址:
ATM(config)#atm address 11.1111.0000.0000.0030.96fe.db01.0030.96fe.db01.00
ATM#show atm address
和 PNNI 节点等级
ATM(config)#atm router pnni
ATM(config-atm-router)#node 1 disable
ATM(config-atm-router)#node 1 level level enable
配置静态路由前一节已经叙述过,此后将要配置地址汇总
ATM(config)#atm router pnni
ATM(config-atm-router)#node node_index
ATM(config-pnni-node)#no auto-summary
ATM(config-pnni-node)#summary-address address-prefix
P a g e | 923
CCIE R/S & Service Provider Exam Certification Guide
配置地址的范围,PNNI 地址范围是一个介于 1~15 之间的数字,在可配置的边界内允许我们
限制广播可达信息。范围取值越高,网络可达性越高,需要理解的是, 一个原节点发送到目的节
点,该目的节点广播与之匹配的最长地址。LS 系列 ATM 交换机有基于 PNNI 路由级别指示器的自
动范围,
ATM(config)#atm router pnni
ATM(config-atm-router)#node node_index
ATM(config-pnni-node)#scope mode [automatic | manual]
ATM(config-pnni-node)#scope map low-org-scope [high-org-scope] level level-number
最后需要重分布 ATM 静态路由
ATM(config-atm-router)#redistribute atm-static
分层结构的高层配置需要配置 LGN 和同等组标识符 PGI,配置节点名称,配置父节点,配置节点参
选代表优先级和配置地址汇总。只有当一台交换机内的字节点被选为 PGL 时才会产生 LGN,配置 LGN 和
PGI 的命令如下:
ATM(config)#atm router pnni
ATM(config-atm-router)#node node-index level level [lowest]
dd:xxx] [enable | disable]
配置节点名称
ATM(config)#atm router pnni
ATM(config-atm-router)#node node-index
ATM(config-atm-router)#node name-string
配置父节点
ATM(config)#atm router pnni
ATM(config-atm-router)#node node-index
ATM(config-pnni-node)#parent node-index
配置节点优先级,
ATM(config)#atm router pnni
ATM(config-atm-router)#node node-index
ATM( config-pnni-node)#election leadership-priority number
[peer-group-identifier
43.9.3 参数调整
PNNI 路由中可以配置多种参数,在路由选择可以配置后台路由计算, 连接选择,优先性和管理权
值以及最大管理加权百分比。
LightStream 交换机可以支持按需模式和后台路由模式。使用后台路由,并配置轮讯间隔为 1~60 秒
ATM(config)#atm router pnni
ATM(config-atm-router)#background-routes-enable poll-interval 30
链路选择过程中,优先选择管理权值最小的链路,其次是阻塞最小化,再次是传送速率最大化,最
后使用负载均衡。管理权值的配置方式如下:
ATM(config)#interface atm 3/1/1
ATM(config-if)#atm pnni administrative-weight number traffic-class
其中 TC 参数可以选择 CBR,rt-VBR,nrt-VBR,UBR,ABR,ALL
PNNI 也支持链路聚合
ATM(config)#atm router pnni
ATM(config-atm-router)#aggregation-mode {link} traffic-class {best-link | aggressive}
就此为止,ATM 的配置过程已经基本结束了,更多的配置,例如 PNNI 路由等可以参考《Cisco ATM
Solutions》
P a g e | 924
CCIE R/S & Service Provider Exam Certification Guide
Chapter 44 宽带接入
44.1 Cable Modem
44.1.1 CATV简介
在宽带接入方案中,有一种方案是利用现有CATV有线电视网络进行数据传输。有线电视运营商在封
闭的同轴电缆中建立了一个部分无线电频率(RF)谱。在整个CATV系统中包含了5个组件:头端,中继电缆,
邻接中的分布电缆,分接电缆和终端设备。这样的结构我们一般将其称为HFC结构。
在CATV行业使用大约5MHz和1GHz之间的一部分电磁波频谱。如下图所示,有线电视网络可以在同一
电缆上同时的双向传送信号,到用户的出频率和RF频谱通常占据50MHz到860MHz,入频率则在5MHz到
42MHz。
下行链路被分成6MHz, 7MHz和8MHz的信道,CATV频谱被有线电视行业定义如下:
电视频道2到16上的VHF高波段(lowband)
电视频道98,99,14到22上的VHF中波段(midband)
电视频道7到13上的VHF高波段(highband)
电视频道23到36上的VHF超波段(superband)
电视频道37及以上的VHF超高波段(hyperband)
上行链路工作在5MHz到42MHz范围内,没有频率规划, 但通常5至15MHz间的区域是吵杂而不能使
用的。电缆数据传输服务接口规范(DOCSIS)定义了有线电视可以使用的数字信号特定带宽为200kHz/400kHz
800kHz/1.6MHz和3.2MHz.DOCSIS基于NTSC规范。对于欧洲和中国,由于采用PAL,则使用Euro-DOCSIS规范。
DOCSIS1.0定义了第一个标准,
DOCSIs1.1定义了部署端到端质量的VoIP分组电缆标准,
DOCSIS2.0定义了30Mbit/s的上行链路。
P a g e | 925
CCIE R/S & Service Provider Exam Certification Guide
Cable Modem从下行的模拟信号中划出6MHz频带,将信号转化为符合以太网协议的格式,与电脑实
现通讯。用户需要给电脑配置以太网卡和相应的网卡驱动程序。同轴电缆中的6MHz频带用于提供数据通
讯。电视和电脑可以同时使用,互不影响。射频信号
Download