计算机网络

353 阅读8分钟

Ⅳ 路由选择协议

image-20211230113527526

❶ 路由器

  • 路由选择协议是在路由器上运行的
  • 路由器是一种具有多个输入端口和输出端口的专用计算机
  • 路由器基本结构如下,可分为两大部分
    1. 路由选择部分
    2. 分组转发部分

image-20211230160522779

1)分组转发部分

分组转发部分由三部分构成

  1. 交换结构

  2. 一组输入端口 / 3. 一组输出端口

    需要说明的是路由器的端口一般都同时具有输入和输出的功能,我们图中分别给出输入端口和输出端口,目的在于更好的演示路由器的基本工作过程,使同学们更容易理解本节课。

分组转发部分

  1. 缓冲区(可忽略)

    缓冲区

2)路由选择部分

路由选择部分的核心构件是路由选择处理机,它的任务是根据所使用的路由选择协议。周期性地与其他路由器 进行路由信息的交互,来更新路由表

  • 更新自己的路由表

    如果送交给输入端口的网络层的分组是路由器之间交换路由信息的路由报文,则把这种分组送交给路由选择处理机,路由选择处理机根据分组的内容来更新自己的路由表

    一般不严格区分路由表和转发表。

    1. 路由表
      • 路由表一般仅包含 从目的网络到下一跳的映射
      • 路由表需要对网络拓扑变化的计算最优化
    2. 转发表
      • 转发表是从路由表得出的
      • 转发表的结构应当使查找过程最优化
路由选择处理机
  • 发送路由信息

    路由选择处理机还会周期性地给其他路由器发送自己所知道的路由信息

发送路由信息

❷ 静态路由

1)路由分类

⒈ 基本静态路由

▎静态路由配置指的是用户或者网络管理员使用路由器的相关命令给路由器人工配置路由表

  • 这种人工配置方式简单、开销小,但是不能及时适应网络状态(流量、拓扑等)的变化
  • 一般只在小规模网络中使用

静态路由

⒉ 默认路由

默认路由可以被所有网络匹配,但路由匹配有优先级,默认路由是优先级最低的

默认路由

⒊ 特定主机路由

▎可以针对某台特定主机设定一个特定路由,在路由表中为该主机设置一个路由条目。

  • 在需要考虑某种安全问题或者网络管理人员对网络的管理和测试时,可以使用。
  • 对于特定路由器,其网络前缀最长(主机号最短),所以路由最具体
  • 在多条路由可选时,根据最长前缀进行匹配,选择最具体的路由。

特定主机路由

⒋ 黑洞路由

▎目的地址为黑洞路由指定的网段的数据报文到达设备之后,将被丢弃

  • 黑洞路由实际是一种特殊的静态路由,下一跳为null0。
  • null0是路由器内部的虚拟接口,IP数据报进入它后就被丢弃
  • 将报文丢到Null接口的操作应不需要CPU进行什么处理,所以处理大量的报文也不会消耗设备的CPU资源!

2)路由环路

使用静态路由配置可能会出现以下导致产生路由环路的错误:

  1. 配置错误

  2. 聚合了不存在的网络

  3. 网络故障

⒈静态路由配置错误

出错原因:

配置错误路由环路

解决方法:

为了防止IP数据报在环路中永久兜圈,在IP数据报首部设置了生存时间TTL字段其初始化为某值,每次进入路由器-1

  • 若TTL不为零,则被路由器转发。
  • 若TTL等于零,则被路由器丢弃。
⒉ 聚合不存在的网络

出错原因:

聚合不存在的路由

解决方法:

根据最长前缀匹配原则,不存在的两个目的网络会选择前缀更长的黑洞路由。

image-20211230111043735

⒊ 网络故障

出错原因:

网络故障

解决方法:

添加针对该故障网络的黑洞路由

image-20211230111412066

如果故障修复/再次产生

网络故障修复

❸ 动态路由

image-20211230160044940

1)主要特点

image-20211230113559086

⒈ 自适应

因特网采用的是动态路由选择,能较好的适应网络状态的变化

⒉ 分布式

因特网中的各路由器,通过相互间的信息交互,共同完成路由信息的获取与更新

⒊ 分层次

将整个互联网划分为许多较小的自治系统AS(Autonomous System),例如,一个较大的因特网服务提供商(电信),就可以划分成一个自治系统,对于自治系统内部和自治系统外部,分别采用不同类别的路由选择协议,分别进行路由选择

  • 自治系统之间的路由选择简称为域间路由选择,自治系统内部的路由选择简称为域内路由选择

image-20211230114159297

  • 域间路由选择使用外部网关协议EGP路由选择协议,域内路由选择使用内部网关协议IGP路由选择协议

    1. 外部网关协议EGP与内部网关协议IGP只是路由选择协议的分类名称,而不是具体的路由协议
    2. 另外名称中使用的是“网关”这个名词,是因为在因特网上早期的RFC文档中,没有使用“路由器”,而使用的是“网关”这一名词,现在新的RFC文档中又改用“路由器”这一名词,因此外部网关协议EGP可改称为外部路由协议ERP,内部网关协议IGP可改称为内部路由协议IRP。本课程仍然采用原先是用的名词,方便大家查阅RFC文档。

    image-20211230114232453

  • 一个自治系统内部使用的具体的内部网关协议,因特网中其他自治系统中选用何种内部网关协议无关

    例如:

    1. 左边的自治系统内部使用的内部网关协议为路由信息协议RIP
    2. 右边的自治系统内部使用的内部网关协议为开放式最短路径优先OSPF协议
    3. 自治系统之间使用的外部网关协议为边界网关协议BGP

    image-20211230155437262

2)路由信息协议RIP

路由信息协议RIP( Routing Information Protoco)是内部网关协议IGP中最先得到广泛使用的协议之ー,其相关标准文档为RFC1058

⒈ 距离向量准则

image-20211230203618380

  1. RIP使用跳数( Hop Count)作为度量( Metric)来衡量到达目的网络的距离

    • 路由器到直连网络的距离定义为1.

      思科路由器将到直连网络的距离定义为0,但这并不影响RIP的正常运行

    • 路由器到非直连网络的距离定义为所经过的路由器数加1.

    • 允许一条路径最多只能包含15个路由器。“距离”等于16时相当于不可达。

      因此,RIP只适用于小型互联网。

  2. RIP要求每一个路由器都要维护从它自己到AS自治系统内其他每一个网络的距离记录,这是一组距离,称为距离向量D-V( Distance-vector)

⒉ 路由条目的更新
  1. 三个要点

    image-20211230204319536

    • 和谁交换信息 仅和相邻路由器交换信息
    • 交换什么信息 自己的路由表
    • 何时交换信息 周期性交换(例如每30秒)
  2. 更新准则

    • 准则1:RIP认为好的路由就是“距离短”的路由,也就是所通过路由器数量最少的路由。
    • 准则2:当到达同一目的网络有多条“距离相等”的路由时,可以进行等价负载均衡
  3. 更新过程:

    • 发送路由信息

      发送路由

    • 改造路由

      改造

    • 更新路由表

      更新

⒊ 总体工作过程
  1. 路由器刚开始工作时,只知道自己到直连网络的距离为1

    image-20211230204436520

  2. 每个路由器仅和相邻路由器周期性地交换并更新路由信息。

  3. 若干次交换和更新后,每个路由器都知道到达本AS内各网络的最短距离和下一跳地址,称为收敛

    image-20211230204555382

⒋RIP缺点
  • RIP存在“坏消息传播得慢”的问题。"坏消息传播得慢"又称为路由环路或距离无穷计数问题

    假如N1故障,R1将到N1的距离更新为16(不可达),但是R1的路由更新信息还没到达R2,R2的路由更新信息先到达R1

image-20211230205828494

  • "坏消息传播得慢"这是距离向量算法的一个固有问题

  • 可以采取多种措施减少出现该向题的概率戓减小该问题带来的危害

    但是,这些方法也不能完全解决“坏消息传播得慢”的问题,这是距离向量的本质决定

    1. 限制最大路径距离为15(16表示不可达)
    2. 当路由表发生变化时就就立即发送更新报文(即“触发更新”),而不仅是周期性发送
    3. 让路由器记录收到某特定路由信息的接口,而不让同一路由信息再通过此接口向反方向传送(即“水平分割”)

3)开放最短路径优先协议OSPF

开放最短路径优先 OSPF (Open Shortest Path First)

  • 开放:表明OSPF协议不是受某一家厂商控制,而是公开发表的。
  • 最短路径优先:是因为使用了Djikstra的最短路径算法SPF(最小生成树)。SPF从算法上保证了不会产生路由环路。

注意:OSPF 只是一个协议的名字,它并不表示其他的路由选择协议不是“最短路径优先”。