1.星型(star/hub-and-spoke):最常见的帧中继网络拓扑,代价最小
2.全互连(full-mesh):冗余,但是代价大,在这样的环境中计算VC的数量,使用n(n-1)/2的公式,n为网络中的节点数
3.部分互连(partial-mesh):前两种的折中方案
OSPF运行的两种RFC中定义的模式如下:
1.NBMA:一般和部分互连的网络结合使用,需要选举DR/BDR和人工指定邻居.优点是相对point-to-multipoint模式它的负载较低
2.point-to-multipoint:把非广播的网络当作点到点连接的集合,自动发现邻居,不指定DR/BDR,一般和部分互连的网络结合使用.优点是配置较为简便
一些其他的可运行模式如下:
1.point-to-multipoint nonbroadcast
2.broadcast
3.point-to-point
定义OSPF网络类型的命令如下:
Router(config-if)#ip ospf network [{broadcast nonbroadcast point-to-multipoint point-to-multipoint nonbroadcast}]
几种选项的含义如下:
1.broadcast:使得WAN接口看上去像LAN接口;一个IP子网;多播hello包自动发现邻居;选举DR/BDR;要求网络全互连
2.nonbroadcast(NBMA):一个IP子网;邻居手工指定;选举DR/BDR;DR/BDR要求和DROTHER完全互连;一般用在部分互连的网络中
3.point-to-multipoint:一个IP子网;多播hello包自动发现邻居;不要求DR/BDR的选举;一般用在部分互连的网络中
4.point-to-multipoint nonbroadcast:假如VC中多播和广播能力没有启用的话就不能使用point-to-multipoint模式,也路由器没办法多播hello包;邻居必须人工指定;不需选举DR/BDR
5.point-to-point:一个子网;不选举DR/BDR;当只有2个路由器的接口要形成邻接关系的时候才使用;接口可以为LAN或WAN接口
Common OSPF Configuration for Frame Relay
先看看NBMA模式,如下图:
1.OSPF会把NBMA当作broadcast网络进行处理(比如LAN)
2.如图,所有的serial口处于同一子网
3.ATM,X.25和帧中继默认为NBMA操作
4.邻居手动指定
5.洪泛LSU的时候,要对每条PVC进行洪泛
6.RFC 2328兼容
对NBMA类型人工指定邻居使用如下命令:
Router(config-router)#neighbor [x.x.x.x] PRiority [number] poll-interval [number]
x.x.x.x为邻居的IP地址
priority [number]为优先级,假如设置为0的话将不能成为DR/BDR
poll-interval [number]是轮询的间隔时间,单位为秒.NBMA接口发送hello包给邻居之前等待的时间
下图是一个配置实例:
RouterA(config)#router ospf 100
RouterA(config-router)#network 140.140.0.0 0.0.255.255 area 0
RouterA(config-router)#neighbor 140.140.1.2 priority 0
RouterA(config-router)#neighbor 140.140.1.3 priority 0
如上,把邻居的优先级设置为0,保证A为DR.在部分互连的NBMA网络中,只需在DR/BDR上使用neighbor命令;假如拓扑结构是星形的话,neighbor命令应该使用在中心路由器上;在全互连的NBMA网络中,应该在所有的路由器上使用neighbor命令,除非是人工指定DR/BDR
查看OSPF邻居信息:show ip ospf neighbor [type number] [neighbor-id] [detail]
type number:接口类型和接口号,可选
neighbor-id:邻居路由器ID,可选
再看看point-to-multipoint模式,如下图:
1.适用于部分互连或星形拓扑结构里
2.不需DR,只使用单独的一个子网
3.自动发现邻居
4.LSU包被发送到每个邻居路由器的接口
如下图,point-to-multipoint的配置如下:
路由器A:
RouterA(config)#interface serial 0
RouterA(config-if)#encapsulation hdlc
RouterA(config-if)#ip address 120.120.1.1 255.255.255.0
RouterA(config)#interface serial 1
RouterA(config-if)#encapsulation frame-relay
RouterA(config-if)#ip address 140.140.1.1 255.255.255.0
RouterA(config-if)#ip ospf network point-to-multipoint
路由器B:
RouterB(config)#interface serial 0
RouterB(config-if)#ip address 140.140.1.2 255.255.255.0
RouterB(config-if)#encapsulation frame-relay
RouterB(config-if)#ip ospf network point-to-multipoint
验证如下:
RouterA#show ip ospf interface s1
Serial1 is up, line protocol is up
Internet Address 140.140.1.1/24, Area 1
Process ID 100, Router ID 120.120.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:11
Neighbor count is 2, Adjacent neighbor count is 2
Adjacent with neighbor 140.140.1.2
Adjacent with neighbor 140.140.1.3
(略)
接下来再看看point-to-multipoint nonbroadcast模式,这个模式是RFC兼容的point-to-multipoint的扩展;邻居必须人工指定;不选举DR/BDR;使用在某些邻居不能自动发现的场合下
然后是broadcast模式,要选举DR/BDR
最后是point-to-point模式,使用在当NBMA网络中只存在2个节点的时候;不选举DR/BDR;每条点到点的连接处在同一个子网中;一般只和point-to-point subinterface结合使用
定义subinterface的命令如下:
Router(config)#interface serial [number.subinterface-number] {point-to-point multipoint}
默认在point-to-point的帧中继subinterface的OSPF模式是point-to-point模式;在multipoint的帧中继subinterface的OSPF模式是NBMA(nonbroadcast)模式;在帧中继物理接口的OSPF模式也是NBMA模式
下图就是一个point-to-point subinterface的例子:
如图每条VC要求一个单独的子网
下图是一个multipoint subinterface的例子:
如图,第一个subinterface S1.1为point-to-point模式;OSPF把第二个multipoint subinterface S1.2当作NBMA模式
下图是几种模式的一个比较:
debug ip ospf adj:用来跟踪OSPF邻居信息
Types of OSPF Routers
当OSPF area过大的话,带来的负面影响有:
1.太过频繁的SPF计算,造成路由器CPU负载过重
2.路由表过大
3.LSDB过大
解决方案是划分层次化的area路由(hierarchical area routing),减少了SPF运算的频率,减小了路由表的体积,减少了LSU的负载
OSPF路由器的类型如下图:
internal routers:所有的接口在一个area里,拥有相同的LSDB
backbone router:至少一个有接口连接到area 0里,和internal routers保持相同的OSPF进程和算法
ABR:接口连接了多个area,每个接口保持它所连的area的单独的LSDB
ASBR:至少有一个接口连接到外部网络比如其他的AS,非OSPF网络
当然,一个路由器同时可以扮演上述多个角色
OSPF LSA Types
一些LSA的类型如下:
类型1:router LSA
类型2:network LSA
类型3/4:summary LSA
类型5:AS external LSA
类型6:multicast OSPF LSA,使用在OSPF多播应用程序里
类型7:使用在Not-So-Stubby area(NSSA)里
类型8:非凡的LSA用来连接OSPF和BGP
类型9/10/11:opaque LSA,用于今后OSPF的升级等
LSA类型1(router LSA),如下图:
类型1的LSA只在一个area里传播,不会穿越ABR.描述了和路由器直接相连的链路集体状态信息.RID鉴别类型1的LSA,LSA描述了链路的网络号和掩码(即link ID).另外类型1的LSA还描述了路由器是否是ABR或ASBR
类型1的LSA不同的链路类型的link ID如下:
1.point-to-point的link ID是邻居的RID
2.transit network的link ID是DR的接口地址
3.stub network的link ID是IP网络号
4.virtual link的link ID是邻居的RID
LSA类型2(network LSA),如下图:
类型2的LSA只在一个区域里传播,不会穿越ABR.描述了组成transit network的直连的路由器.transit network直连至少2台OSPF路由器.DR负责宣告类型2的LSA,然后在transit network的一个area里进行洪泛.类型2的LSA ID是DR进行宣告的那个接口的IP地址
LSA类型3(summary LSA),如下图: