路由协议基础知识点汇总

注:文中部分在其他文章中多次引用。


简介

路由(Routing)是数据通信网络中一个基本的概念。路由就是通过互联的网络把信息从源地址传输到目的地址的活动。路由发生在 OSI 网络参考模型中的第三层(即网络层)。我们将具有路由转发功能的设备称为广义上的路由器。

当路由器收到一个 IP 数据包,路由器会根据目的 IP 地址在设备上的路由表(Routing Table)中进行查找,找到 “最匹配” 的路由条目后,将数据包根据路由条目所指示的出接口或下一跳 IP 转发出去。路由表中装载着路由器通过各种途径获知的路由条目(Routes,Routing Table Entry)。路由器可通过静态、动态等方式获取路由条目并维护自己的路由表。

路由协议

较小的网络通常可以手动设置路由表(即静态方式),但较大且拥有复杂拓扑的网络可能常常变化,若要手动创建、维护路由表是不切实际的。

因此,人们希望路由器可以动态的(即动态方式)按照某种协议来自动创建维护路由表以解决这个问题,从而使得网络能够近自主的适应变化,避免故障。这些协议被称为路由协议。

路由协议的分类

路由协议可以有多种分类方式,常见的分类方式如下:

  • 按照路由协议使用的算法划分:

    • 距离矢量路由协议,例如:RIP(Routing Information Protocol)

    • 链路状态路由协议,例如:OSPF(Open Shortest Path First)

  • 按照路由协议作用的区域划分:

    • 内部网关协议(Interior Gateway Protocol),在单一的自治系统中交换路由信息,例如:OSPF(Open Shortest Path First)

    • 外部网关协议(Exterior Gateway Protocol),在不同的自治系统中交换路由信息,例如:BGP(Border Gateway Protocol)

常见的路由协议

  • OSPF(Open Shortest Path First,开放最短路径优先)
  • RIP(Routing Information Protocol,路由信息协议)
  • IS-IS(Intermediate System to Intermediate System, 中间系统到中间系统)
  • BGP(Border Gateway Protocol,边界网关协议)

其中,最多被使用到的路由协议为 OSPF 和 BGP。

路由迭代

路由必须有直连的下一跳才能够指导转发,但是路由生成时下一跳可能不是直连的,因此需要计算出一个直连的下一跳和对应的出接口,这个过程就叫做路由迭代。BGP 路由、静态路由和 UNR 路由的下一跳都有可能不是直连的,都需要进行路由迭代。

例如,BGP 路由的下一跳一般是非直连的对端 loopback 地址,不能指导转发,需要进行迭代。即根据以 BGP 学习到的下一跳为目的地址在 IP 路由表中查找,当找到一条具有直连的下一跳、出接口信息的路由后(一般为一条 IGP 路由),将其下一跳、出接口信息填入这条 BGP 路由的 IP 路由表中并生成对应的 FIB 表项。

对于 BGP 私网路由,需要隧道进行转发,路由的下一跳一般是远端 PE 的 Loopback 地址,不能指导转发,也需要进行路由迭代,即在隧道列表中查找到达该 Loopback 地址的隧道,将该隧道信息填入路由表中并生成对应的 FIB 表项。

路由器及路由基本原理

在因特网中,网络连接设备用来控制网络流量和保证网络数据传输质量。常见的网络连接设备有集线器(Hub)、网桥(Bridge)、交换机(Switch)和路由器(Router)。这些设备的基本原理类似,下面就以路由器为例来介绍一下设备的基本原理。

路由器是一种典型的网络连接设备,用来进行路由选择和报文转发。路由器根据收到报文的目的地址选择一条合适的路径(包含一个或多个路由器的网络),然后将报文传送到下一个路由器,路径终端的路由器负责将报文送交目的主机。

路由就是报文从源端到目的端的路径。当报文从路由器到目的网段有多条路由可达时,路由器可以根据路由表中最佳路由进行转发。最佳路由的选取与发现此路由的路由协议的优先级、路由的度量有关。当多条路由的协议优先级与路由度量都相同时,可以实现负载分担,缓解网络压力;当多条路由的协议优先级与路由度量不同时,可以构成路由备份,提高网络的可靠性。

静态路由与动态路由

静态路由与动态路由的区别

路由协议是路由器之间维护路由表的规则,用于发现路由,生成路由表,并指导报文转发。依据来源的不同,路由可以分为三类:

  • 通过链路层协议发现的路由称为直连路由。
  • 通过网络管理员手动配置的路由称为静态路由。
  • 通过动态路由协议发现的路由称为动态路由。

静态路由配置方便,对系统要求低,适用于拓扑结构简单并且稳定的小型网络。缺点是不能自动适应网络拓扑的变化,需要人工干预。

动态路由协议有自己的路由算法,能够自动适应网络拓扑的变化,适用于具有一定数量三层设备的网络。缺点是配置对用户要求比较高,对系统的要求高于静态路由,并将占用一定的网络资源和系统资源。

动态路由的分类

对动态路由协议的分类可以采用以下不同标准:

根据作用范围不同,路由协议可分为:

  • 内部网关协议 IGP(Interior Gateway Protocol):在一个自治系统内部运行。常见的 IGP 协议包括 RIP、OSPF 和 IS-IS。
  • 外部网关协议 EGP(Exterior Gateway Protocol):运行于不同自治系统之间。BGP 是目前最常用的 EGP 协议。

根据使用算法不同,路由协议可分为:

  • 距离矢量协议(Distance-Vector Protocol):包括 RIP 和 BGP。其中,BGP 也被称为路径矢量协议(Path-Vector Protocol)。
  • 链路状态协议(Link-State Protocol):包括 OSPF 和 IS-IS。

以上两种算法的主要区别在于发现路由和计算路由的方法不同。

路由表和 FIB 表

路由器转发数据包的关键是路由表和 FIB 表,每个路由器都至少保存着一张路由表和一张 FIB(Forwarding Information Base)表。路由器通过路由表选择路由,通过 FIB 表指导报文进行转发。

路由表

每台路由器中都保存着一张本地核心路由表(即设备的 IP 路由表),同时各个路由协议也维护着自己的路由表。

  • 本地核心路由表

    路由器使用本地核心路由表用来保存决策优选路由,并负责把优选路由下发到 FIB 表,通过 FIB 表指导报文进行转发。这张路由表依据各种路由协议的优先级和度量值来选取路由。

    说明

    对于支持 L3VPN(Layer 3 Virtual Private Network)的路由器,每一个 VPN-Instance 拥有一个自己的管理路由表(本地核心路由表)。

  • 协议路由表

    协议路由表中存放着该协议发现的路由信息。

    路由协议可以引入并发布其他协议生成的路由。例如,在路由器上运行 OSPF 协议,需要使用 OSPF 协议通告直连路由、静态路由或者 IS-IS 路由时,要将这些路由引入到 OSPF 协议的路由表中。

路由表中的内容

在路由器中,执行命令 display ip routing-table 时,可以查看路由器的路由表概要信息,如下所示:

<HUAWEI> display ip routing-table
Proto: Protocol        Pre: Preference
Route Flags: R - relay, D - download to fib, T - to vpn-instance, B - black hole route
------------------------
Routing Table: _public_
         Destinations 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值