1. 路由概述


  • 路由表是指导 IP 报文具体从哪条路径进行转发
  • 动态路由协议都需要建立邻居关系、同步数据库信息、计算并得到路由
  • 路由原理重要8个字:最长匹配、递归查询
  • 路由重要关键字:距离、矢量、开销、AD(优先级)
  • 内部网关路由协议 IGP(RIP、OSPF、ISIS、EIGRP)
    • IGP 是运行在 AS 内部的路由协议
    • IGP 主要是用来发现和计算路由
  • 外部网关路由协议 EBP(BGP)
    • EGP 是运行在 AS 之间的路由协议
    • EGP 主要用来控制路由的传递和选择最优路由
  • 路由算法分类
    • 距离矢量协议(DV): RIP、BGP
    • 链路状态协议(LS): OSPF、ISIS
    • 混合型: EIGRP

      2. 路由表


  • 「路由表」是三层的转发决策表,如果没有目的网络的路由则会丢弃数据
  • 「路由表」是数据转发时所依赖的地图,包含了去往各个目的的路径信息(转发数据到达的目的地)
  • 「路由表」中只有目的地址,没有源地址
  • 路由决策(路由表,RIB)
    • 指导 IP 报文发送的路径信息(判断报文往哪进行转发)
    • 是转发报文的依据
  • 转发引擎(转发表,FIB)
    • 根据决策把数据从对应的接口转发出去
    • IP 转发都是逐跳转发

      3. 工作原理


image.png

  1. 收到 IP 报文进行查找路由表
  2. 如果没有对应的路由表条目,则丢弃;如果有对应的路由表条目,则查看下一跳地址和出接口
  3. 将报文发送到对应的出接口进行转发
  4. 发送时会对报文进行封装(比如二层封装需要用到的 ARP,下一跳的 MAC 地址)
  5. 如果下一跳地址不是[直连的],则会根据该路由条目的下一跳地址作为目的地址,重新进行路由条目的查找(路由迭代/递归)

    4. 路由选路原则


  1. 最长匹配:当去往同一目的地址,有多条路径时候,为数据包选择一条最优路径进行转发
    • 将数据包的目的 IP 地址与路由表项进行逐位查找,达到匹配度掩码最长的条目(IP 地址段和掩码最匹配)
  2. 度量值 Metric:到达这条路由所指目的地址的代价(cost)
    • [同一协议]中数值越小越优先,不同协议有不同的度量方式
    • 不同路由协议参考的度量值不同
      • RIP: 跳数
      • OSPF: 带宽
      • 静态路由: 0
    • 影响路由度量值的因素: 链路延迟、带宽、链路使用率、跳数、最大传输单元、链路可信度
  3. 管理距离 AD(Preference): 用来判定去往相同目的地址有多个路由条目的优先程度
    • 用于确定不同协议类型的优劣
    • 优先级数值越小越优先(不同协议),只有最优的路由条目被添加进路由表
    • 如果同一协议存在多条到达同一目的地址的路径(管理距离、开销一致),则有可能成为等价多路径(负载均衡ECMP:多条链路开销相同)
      • 通过五元组进行 Hash 运算
      • 根据数据流进行转发
    • 通过 Preference 可以调整路由协议的优先级。不同协议的优先级改为相同并不会负载
      • 华为优先级分为内部和外部:外部优先级不同比较外部,外部优先级相同比较内部优先级,内部优先级无法更改
  4. 下一跳 NextHop: 去往未知网络中,与之直连或非直连的下一个网络设备的 IP 地址(如果是非直连就需要路由迭代/递归)
    • 路由的下一跳地址是以其他方式获取到的非物理链路地址(但存在与路由表中),则需要进行多次查找
  5. 出接口: 通过下一跳 IP 地址,确定数据包从本端哪个接口出去
  6. 负载均衡 ECMP: 多条链路开销相同,各承担一半的数据转发,平均分担(负载均衡)

    5. 不同协议的 AD 值


路由协议类型 Cisco 外部 AD 值 Huawei 外部 AD 值 Cisco 内部 AD 值 Huawei 内部 AD 值
Direct 0 0 / 0
Static 1 60 / 60
RIP 120 100 / 100
OSPF 110 10 / 10
OSPF ASE 110 150 / 150
OSPF Nssa 110 150 / 150
ISIS Level-1 115 15 / 15
ISIS Level-2 115 15 / 18
IBGP 200 255 / 200
EBGP 20 255 / 20
EIGRP 170 / 90 /
EIGRP Summary 5 / / /
UNR
(User Network Route)
/
- DHCP:60
- AAA-Download:60
- IP Pool:61
- Frame:62
- Host:63
- NAT:64
- IPSec:65
- NHRP:65
- PPPoE:65
/ 65