蒙尘:OSPF路由协议概念解释和特性介绍

来源:百度文库 编辑:偶看新闻 时间:2024/05/02 07:39:06
 
  
  一.O F的特性:
  快速收敛;
  能够适应大型网络;
  能够正确处理错误路由信息;
  使用区域,能够减少单个路由器的CPU负担,构成结构化的网络;
  支持无类路由,完全支持超网,可变长子网等无类特性;
  支持多条路径负载均衡;
  使用组播地址来进行信息互通,减少了非O F路由器的负载;
  使用路由标签来表示来自外部区域的路由。
  
  二.Neighbor和Adjacency的定义:
  Neighbor:
  在网络中,O F路由器可以发送Hello报文来进行邻居寻找,当Hello报文中的几个字段的内容是互相一致的时候,相邻的O F路由器就会形成Neighbor关系。
  Neighbor是保存在Neighbor表里,需要有Router ID和IP地址信息。
  Router ID的确定:
  1. 选择IP地址最大的Loo ack接口的IP地址为Router ID;如果只有一个Loo ack接口,那么Router ID就是这个Loo ack的地址。
  2. 如果没有Loo ack接口,就选择IP地址最大的物理接口的IP地址为Router ID,但是作为Router ID的物理接口,就不能运行O F,也就是说这个接口无法发送接受O F报文。
  使用Loo ack的IP地址作为Router ID的好处:
  a. Loo ack接口是逻辑接口,永远不会down,有利于O F的稳定运行;
  b. 便于控制O F路由器的Router ID。
  Hello协议的特点:
  1. 目的:
  a. 用来发现O F Neighbor;
  b. Hello报文包含了多个需要O F路由器协商的参数,以形成Neighbor的关系;
  c. 他可以用来维持邻居之间链接的存活;
  d. 用来确定DR,BDR路由器的选择。
  
  2. 报文内容:
  a. Router ID
  b. Area ID
  c. IP地址和掩码
  d. 认证方式和认证信息
  e. Hello Interval和Dead Interval
  f. Router优先权
  g. DR和BDR的Router ID
  h. 五个字节的特性控制信息
  i. 距上次Hello报文后,在Dead Interval中,路由器的Neighbor的Router ID列表
  每个O F路由器收到收到hello报文,将会协商上述信息,是否符合,如果不符合,Hello报文会遭到丢弃。
  并且当一个路由器收到一个Hello报文,其中Neighbor Router ID List里有它的Router ID时,就会进入2-way模式,一旦进入2-way模式,就会建立Adjacency。
  3. DR和BDR使用224.0.0.5(ALL FRouter Addre )发送Hello Packet,而收到报文的路由器以224.0.0.6(ALLDRRouter Addre )发送确认报文,表示收到了Hello Packet。
  4. Point-to-Multipoint:相当与多个点对点网络的集合,但是不会产生DR,BDR的选举,通过组播报文发送路由信息报文。
  5. 只有 MA网络和采用虚拟链路的网络发送的是单播报文。
  6. Stub Network:只有一个出口连接到路由器的网络,通常产生的报文的原地址和目的地址都是本网络中。
  DR和BDR的选择,特性:
  1. DR和BDR是接口的特性,和路由器本身无关。
  2. DR和BDR和multiacce 网络中其他的路由器形成adjancency,但他们之间没有形成adjancency。
  3. 每个接口上都会有优先级,如果优先级为0时,表示不参加选择DR,BDR。
  
  Adjacency:
  是在O F Neighbor之间形成的虚拟的连接,这些连接有不同的性质,根据路由器连接的不同网络类型。
  形成Adjacency的步骤:
  1. 邻居发现
  2. 双向通信
  3. 数据库同步
  为了使路由器能够实现数据库的一致和同步,通过交换DD,LSR,LSU报文来达到数据库同步的目的。
  4. 完全形成连接
  
  Master和Slave的关系和选择
  在ExStart状态下,邻居之间进行协商,以决定由哪个路由器来控制Database sychronization。
  Neighbor表项的数据结构:
  Neighbor表项中的信息是通过路由器从Hello报文中学到的,关于邻居的一些信息。
  1. Neighbor ID
  2. Neighbor IP Addre
  3. Area ID
  4. Interface
  5. Neighbor Priority
  6. State
  7. PollInterval
  这是用于 MA网络的一个概念,由于 MA网络无法用组播来发送报文,也就是说无法自动发现邻居,如果当Neighbor处于down的状态时候,Hello报文每隔一个PollInterval时间就会发送一次,来发现和维护邻居关系。
  8. Neighbor Option
  9. Inactivity Time
  10. DR
  11. BDR
  12. Master/Slave
  13. DD Sequence Number
  14. Last Received Database Description Packet
  15. Lik State Retra mi ion List
  是指已经发送出去的LSA,但是还没有收到Acknowledge的报文,如果超过RxmtInterval还没有收到,就会进行重传。
  16. Database Summary List
  在database synchronization时,所发送的LSA的表单。
  17. Link State Request List
  是指最新收到的在Database Description报文中所带的LSA清单,路由器会发送LSR到Neighbor要最新的LSA,收到LSU后,会把list里的相应条目删掉。
  
  三.Neighbor状态机制
  1. Down
  没有收到任何Hello报文的时候,或是在DeadInterval中,没有收到Hello报文
  2. Attempt
  只有在 MA网络里才有,手工进行Neighbor的指定。
  3. Init
  收到了Hello报文
  4. 2-way
  当路由器看到自己的Router ID在邻居发来的Hello报文里;在广播网络里,DR和BDR开始被选举。
  5. ExStart
  决定Master/Slave关系,以初始化DD 报文序列号来交换Database Description报文
  6. Exchange
  路由器开始交换DD报文的过程
  7. Loading
  发送LSR报文已处在Loading状态的报文,请求最新的通过Exchange DD报文发现的未收到的LSA
  8. Full
  完成了路由器和网络的LSA的交换
  当路由器收到LSA后,会把LSA存到数据库中,然后会把收到LSA复制并从其它的O F接口发送出去,直到整个网络区域的LSA Database获得同步一致。然后每个路由器根据LSA Database里的Link信息进行 F运算,算出没有回路的最短路径。
  
  四.Database Description报文
  它是包含了路由器所有的LSA信息的报头,可以使路由器知道,Neighbor上有多少LSA是自己不知道的,可以通过LSR报文来请求新的LSA。
  五.多区域O F特性
  1.骨干区域:起到了让其他非骨干区域能够知道别的区域的网络情况的作用。也就是说,所有非骨干区域的路由信息都要流经骨干区域。
  
  2.虚拟链路:是一个通过非骨干区域到骨干区域的链路。
  使用目的:
  连接一个非骨干区域到一个骨干区域通过一个非骨干区域
  通过一个非骨干区,连接分开的两个骨干区部分
  规则:
  必须在两个ABR之间进行配置
  虚链路通过的区域作为传输区域,必须有完整的路由信息
  中间传输区不能是存根区
  
  六.区域的Link State报文类型:
  1. Router LSA
  由区域内所有的路由器产生的,并且只能在本个区域泛洪广播。
  2. Network LSA
  由区域内的DR或BDR路由器产生的,报文包括DR和BDR连接的路由器的链路信息。
  3. Network Summary LSA
  由ABR产生的,可以通知本区域内的路由器通往区域外的路由信息;同时可以发送通往相同自治区不同区域的默认路由;把本区域的路由发送到骨干区域,如果有两个到相同目的地的路径,只会把最低cost的路由发送出去;
  4. A R Summary LSA
  由ABR产生,但是它是一条主机路由,指向A R路由器地路由。
  5. Autonomous System External LSA
  由A R产生,它告诉相同自治区的路由器通往外自治区的路径。
  6. A External LSA
  由A R产生,在 A区域中,当有一个路由器是A R时,不得不产生LSA 5报文,但是 A中不能有LSA 5报文,所有A R产生LSA 7报文,发给本区域的路由器。
  
  七.O F Over Demand Circuits
  是应用于有交换虚电路的链路中,当链路在是空闲的时候,它不会有虚电路的连接,只有在链路上有通信量的时候,才会建立虚电路。而O F的Hello,LSA报文是要每隔一段时间要发送一次,而Demand Circuits提供了一种特性,在虚电路上只需要传一次Hello和LSA报文进行O F的邻居和数据库同步,接下来就不需要再发送以上这些报文,LSA也不会由于收不到Update报文而过期,邻居关系也不会Dead。这样可是减少链路的使用情况,节省了广域网链路的开支。
  O F通过在LSA报文中设置一个DonotAge字节,来使两端得到协商,使收到的LSA永不过期。并且在LSA中加了一个标志位,DC bit,使其他路由器知道这个LSA具有Demand Circuit的特性,使其他路由器不会认为这条路由过期。
  
  八.O F的配置(只有一些特点,比较常规的东西不讲了)
  O F 具有D 功能,可以使用路由器名来取代Router ID。
  配置:
  ip name-server 172.19.45.1
  指定O F使用的D -SERVER的 IP地址
  ip o f name-lookup
  使O F可以启用D 功能
  
  O F针对接口有多个地址的解决方法:
  1. O F只有当接口主地址启用了O F时候,才会对secondary IP addre Network的路由信息进行处理。
  2. O F把seco