RIP路由协议

  • RIP(Routing Information Protocol,路由信息协议
  • RIP协议采用距离矢量(也就是用距离作为路由变量)路由算法,使用跳数(即Hop)来衡量到达目标地址的路由距离,且最大跳数值仅为15。
  • 跳数
    • 到达目的网络的整条路由路径中所经过的路由器数,即跳数
  • 度量更新规则
    • 每个RIP路由器会把自己的路由表发给相邻的RIP路由器,以此来进行彼此的路由表更新
    • 收到新路由表项时,在路由表中添加新的路由表项,其度量是在接收的路由表项度量基础上加1
  • 路由更新机制
    • 定期更新
      • 每隔30s
      • RIP广播应答方式向邻居路由器发送一个路由更新包
      • RIP的路由表中主要包括目的网络、下一跳地址和距离
      • 如果一个路由器在180s内没有收到某个邻居路由器发来的路由更新,则这个路由器就会标记该邻居路由器为不可达路由器
      • 在240s内仍未收到更新报文就将这些路由从路由表中删除
    • 触发更新
    • RIP路由协议存在一个问题,那就是网络收敛比较慢,当网络出现故障时,要经过比较长的时间才能将此信息传送到所有的路由器,而且中间有许多是无效路由更新。
      • 同一路由表项更新不再从接收该路由表项的接口发送出去,可以解决这个问题
  • 路由收敛机制
    • 计数到无穷大
      • RIP协议允许最大跳数值为15。大于15的目的地被认为是不可达的,避免了计数到无穷大
    • 水平分割法
      • 使路由器不向对应路由更新表项输入的方向回传此条路由表信息。通俗地讲就是,如果一条路由信息是从某个端口学习到的,那么从该端口发出的路由更新中将不再包含该条路由信息,其目的就是为了避免出现路由更新环路。
    • 毒性逆转水平分割法
    • 保持定时器法
  • RIP报文格式
    • RIP使用UDP报文在邻居路由器间交换路由表,所使用的UDP端口号为520
    • image.png
    • command指定请求还是响应,version版本 v1 or v2
    • 在一个RIP报文中,最多可以有25个路由表项

OSPF

  • OSPF(Open Shortest PathFirst,开放式最短路径优先协议)
  • RIP协议主要用于小型网络,在20世纪80年代中期就已不能适应大规模异构网络的互连,OSPF应运而生
  • OSPF采用链路状态技术,路由器互相发送直接相连的链路信息和它所拥有的到其他路由器的链路信息
  • 特点
    • 采用链路状态路由算法
      • 考虑的因素非常多,包括线路带宽、端口状态、端口开销、端口优先级、链路稳定性等
    • 可划分不同区域
      • 每一个区域中的路由器都按照该区域中定义的链路状态算法来计算网络拓扑结构
      • 每一个区域都有着该区域独立的网络拓扑数据库及网络拓扑图
      • 有利于减少网络中链路状态数据包在全网范围内的广播
    • 有不同路由器角色
      • 如区域内部路由器、区域边界路由器、AS边界路由器等
    • 收敛性能更高
      • 因为OSPF路由器不再交换整个路由表,而是同步各路由器对网络状态的认识,即链路状态数据库
      • 通过Dijkstra最短路径算法计算出网络中各目的地址的最优路由

IS-IS路由协议

  • IS-IS(Intermediate System-to-Intermediate System,中间系统到中间系统)
  • 链路状态内部网关协议
  • 特点就是信息的传播需要在每个参与路由协议的路由器上构建一个完整的网络互连映射

BGP

  • BGP(Border Gateway Protocol,边界网关协议)
  • 包含独立路由策略(也就是独立AS)的分离路由域间的无环路路由协议