OSPF核心技术基础知识详解.docx
《OSPF核心技术基础知识详解.docx》由会员分享,可在线阅读,更多相关《OSPF核心技术基础知识详解.docx(14页珍藏版)》请在冰豆网上搜索。
![OSPF核心技术基础知识详解.docx](https://file1.bdocx.com/fileroot1/2022-10/25/f539609a-737d-4489-a060-3adef0f9e92f/f539609a-737d-4489-a060-3adef0f9e92f1.gif)
OSPF核心技术基础知识详解
一.1OSPF合同简介和特点
OSPF是OpenShortestPathFirst(即“开放最短路由优先合同”)缩写。
它是IETF(InternetEngineeringTaskForce)组织开发一种基于链路状态自治系统内部路由合同(IGP),用于在单一自治系统(Autonomoussystem,AS)内决策路由。
在IP网络上,它通过收集和传递自治系统链路状态来动态地发现并传播路由。
当前OSPF合同使用是第二版,最新RFC是2328。
为了弥补距离矢量合同局限性和缺陷从而发展出链路状态合同,OSPF链路状态合同有如下长处:
●适应范畴——OSPF支持各种规模网络,最多可支持几百台路由器。
●最佳途径——OSPF是基于带宽来选取途径
●迅速收敛——如果网络拓扑构造发生变化,OSPF及时发送更新报文,使这一变化在自治系统中同步。
●无自环——由于OSPF通过收集到链路状态用最短途径树算法计算路由,故从算法自身保证了不会生成自环路由。
●子网掩码——由于OSPF在描述路由时携带网段掩码信息,因此OSPF合同不受自然掩码限制,对VLSM和CIDR提供较好支持。
●区域划分——OSPF合同容许自治系统网络被划提成区域来管理,区域间传送路由信息被进一步抽象,从而减少了占用网络带宽。
●等值路由——OSPF支持到同一目地址多条等值路由
●路由分级——OSPF使用4类不同路由,按优先顺序来说分别是:
区域内路由、区域间路由、第一类外部路由、第二类外部路由。
●支持验证——它支持基于接口报文验证以保证路由计算安全性。
●组播发送——OSPF在有组播发送能力链路层上以组播地址发送合同报文,即达到了广播作用,又最大限度减少了对其她网络设备干扰。
OSPF链路状态合同有如下两个问题要注意:
●在初始发现过程中,链路-状态路由合同会在网络传播线路上进行洪泛(flood),因而会大大削弱网络传播数据能力。
●链路-状态路由对存储器容量和解决器解决能力敏感。
一.2OSPF支持网络类型
OSPF支持网络类型有:
图1.21点到点网络
1.Point-to-point
链路层合同是PPP或LAPB时,默认网络类型为点到点网络。
无需选举DR和BDR,当只有两个路由器接口要形成邻接关系时候才使用。
图1.22广播网络
2.Broadcast
链路层合同是Ethernet、FDDI、TokenRing时,默认网络类型为广播网,以组播方式发送合同报文。
图1.23非广播多路访问网络
3.NBMA
链路层合同是帧中继、ATM、HDLC或X.25,默认网络类型为NBMA。
手工指定邻居。
图1.24点到多点网络
4.Point-to-multipoint
没有一种链路层合同会被缺省以为是Point-to-Multipoint类型。
点到多点必然是由其她网络类型强制更改,常用做法是将非全连通NBMA改为点到多点网络。
多播hello包自动发现邻居,无需手工指定邻居。
NBMA与P2MP之间区别:
在OSPF合同中NBMA是指那些全连通、非广播、多点可达网络。
而点到多点网络,则并不需要一定是全连通。
NBMA是一种缺省网络类型。
点到多点不是缺省网络类型,点到多点必要是由其他网络类型强制更改。
NBMA用单播发送合同报文,需要手工配备邻居。
点到多点是可选,即可以用单播发送,又可以用多播发送报文。
在NBMA上需要选举DR与BDR,而在P2MP网络中没有DR与BDR。
此外,广播网中也需要选举DR和BDR。
一.2.1OSPF报文类型
OSPF报文类型一共有五种
●HELLO报文(HelloPacket):
最惯用一种报文,周期性发送给本路由器邻居。
内容涉及某些定期器数值,DR,BDR,以及自己已知邻居。
HELLO报文中包具有RouterID、Hello/deadintervals、Neighbors、Area-ID、Routerpriority、DRIPaddress、BDRIPaddress、Authenticationpassword、Stubareaflag等信息,其中Hello/deadintervals、Area-ID、Authenticationpassword、Stubareaflag必要一致,相邻路由器才干建立邻居关系。
●DBD报文(DatabaseDescriptionPacket):
两台路由器进行数据库同步时,用DBD报文来描述自己LSDB,内容涉及LSDB中每一条LSA摘要(摘要是指LSAHEAD,通过该HEAD可以唯一标记一条LSA)。
这样做是为了减少路由器之间传递信息量,由于LSAHEAD只占一条LSA整个数据量一小某些,依照HEAD,对端路由器就可以判断出与否已有了这条LSA。
●LSR报文(LinkStateRequestPacket):
两台路由器互相互换过DBD报文之后,懂得对端路由器有哪些LSA是本地LSDB所缺少或是对端更新LSA,这时需要发送LSR报文向对方祈求所需LSA。
内容涉及所需要LSA摘要。
●LSU报文(LinkStateUpdatePacket):
用来向对端路由器发送所需要LSA,内容是多条LSA(所有内容)集合。
●LSAck报文(LinkStateAcknowledgmentPacket)用来对接受到DBD,LSU报文进行确认。
内容是需要确认LSAHEAD(一种报文可对各种LSA进行确认)。
一.3OSPF邻居状态机
●Down:
邻居状态机初始状态,是指在过去Dead-Interval时间内没有收到对方Hello报文。
●Attempt:
只合用于NBMA类型接口,处在本状态时,定期向那些手工配备邻居发送HELLO报文。
●Init:
本状态表达已经收到了邻居HELLO报文,但是该报文中列出邻居中没有包括我RouterID(对方并没有收到我发HELLO报文)
●2-Way:
本状态表达双方互相收到了对端发送HELLO报文,建立了邻居关系。
在广播和NBMA类型网络中,两个接口状态是DROther路由器之间将停留在此状态。
其她状况状态机将继续转入高档状态。
●ExStart:
在此状态下,路由器和它邻居之间通过互相互换DBD报文(该报文并不包括实际内容,只包括某些标志位)来决定发送时主/从关系。
建立主/从关系重要是为了保证在后续DBD报文互换中可以有序发送。
Exchange:
路由器将本地LSDB用DBD报文来描述,并发给邻居。
Loading:
路由器发送LSR报文向邻居祈求对方DBD报文。
Full:
在此状态下,邻居路由器LSDB中所有LSA本路由器全均有了。
即,本路由器和邻居建立了邻接(adjacency)状态。
注:
红色状态是指稳定状态(down、two-way、full),其她状态则是在转换过程中瞬间(普通不会超过几分钟)存在状态。
本路由器和状态也许与对端路由器状态不相似。
例如本路由器邻居状态是Full,对端邻居状态也许是Loading。
OSPF是基于链路状态算法路由合同,所有对路由信息描述都是封装在LSA中发送出去。
LSA依照不同用途分为不同种类,当前使用最多是如下五种LSA:
●RouterLSA(Type=1):
是最基本LSA类型,所有运营OSPF路由器都会生成这种LSA。
重要描述本路由器运营OSPF接口连接状况,耗费等信息。
对于ABR,它会为每个区域生成一条RouterLSA。
这种类型LSA传递范畴是它所属整个区域。
●NetwrokLSA(Type=2):
本类型LSA由DR生成。
对于广播和NBMA类型网络,为了减少该网段中路由器之间互换报文次数而提出了DR概念。
一种网段中有了DR之后不但发送报文方式有所变化,链路状态描述也发生了变化。
在DROther和BDRRouterLSA中只描述到DR连接,而DR则通过NetworkLSA来描述本网段中所有已经同其建立了邻接关系路由器。
(分别列出它们RouterID)。
同样,这种类型LSA传递范畴是它所属整个区域。
●NetworkSummaryLSA(Type=3):
本类型LSA由ABR生成。
当ABR完毕它所属一种区域中区域内路由计算之后,查询路由表,将本区域内每一条OSPF路由封装成NetworkSummaryLSA发送到区域外。
LSA中描述了某条路由目地址、掩码、耗费值等信息。
这种类型LSA传递范畴是ABR中除了该LSA生成区域之外其她区域。
●ASBRSummaryLSA(Type=4):
本类型LSA同样是由ABR生成。
内容重要是描述到达本区域内部ASBR路由。
这种LSA与Type3类型LSA内容基本同样,只是Type4LSA描述目地址是ASBR,是主机路由,因此掩码为0.0.0.0。
这种类型LSA传递范畴与Type3LSA相似。
●ASExternalLSA(Type=5):
本类型LSA由ASBR生成。
重要描述了到自治系统外部路由信息,LSA中包括某条路由目地址、掩码、耗费值等信息。
本类型LSA是唯一一种与区域无关LSA类型,它并不与某一种特定区域有关。
这种类型LSA传递范畴整个自治系统(STUB区域除外)。
●ASExternalLSA(Type=7):
类型7LSA被应用在非完全末节区域中(NSSA)。
一.4区域种类
区域特性决定着它可以接受路由信息类型。
也许区域类型涉及如下几种:
●原则区域:
这个默认区域接受链路状态更新、路由汇总和外部路由信息。
●骨干区域(转发区域):
骨干区域是连接所有其她区域中心点。
骨干区域区域号总是“0”。
所有其她区域都连接到这个区域以互换路由信息。
OSPF骨干区域拥有所有原则区域特性。
●末节区域:
这种区域不接受任何自治系统外部路由信息,例如非OSPF网络信息。
如果路由器需要连接AS外网络,它们应用缺省0.0.0.0路由。
末节区域不能包括ASBR。
●完全末节区域:
这种区域不接受任何AS外部路由,也不接受AS内部其她区域汇总信息。
如果路由器需要发送数据到外部网络或是其她区域,它使用缺省路由发送数据包。
完全末节区域不能包括ASBR。
●非完全末节区域(NSSA):
NSSA是对OSPFRFC补充。
这种区域定义了类型7LSA。
NSSA提供类域末节区域和完全末节区域同样好处。
但是,在NSSA中容许存在ASBR,这点与末节区域不同。
为理解决ASE路由(自治系统外部路由)单向传递问题,NSSA中重新定义了一种LSA——Type7类型LSA,作为区域内路由器引入外部路由时使用,该类型LSA除了类型标记与Type5不相似之外,其他内容基本同样。
这样区域内路由器就可以通过LSA类型来判断与否该路由来自本区域内。
合同规定:
在NSSAABR上将NSSA内部产生Type7类型LSA转化为Type5类型LSA再发布出去,并同步更改LSA发布者为ABR自己。
STP基本原理
基本思想:
在网桥之间传递特殊消息(配备消息,也称作BPDU消息),包括足够信息做如下工作:
从网络中所有网桥中,选出一种作为根网桥(Root)
计算本网桥到根网桥最短途径
对每个LAN,选出离根桥近来那个网桥作为指定网桥,负责所在LAN上数据转发
网桥选取一种根端口,该端口给出途径是此网桥到根桥最佳途径选取
拟定除根端口之外包括于生成树上端口(指定端口)
BPDU作用
⏹选举根桥
⏹检测发生环路位置
⏹制止环路发生
⏹告示网络状态变化
⏹