网络层 互联网的路由选择协议的简单整理

有关路由选择协议的几个基本概念

互联网采用分层次的路由选择协议。

自治系统 AS(Autonomous System)

  • 自治系统 AS 的定义:在单一的技术管理下的一组路由器,而这些路由器使用一种 AS 内部的路由选择协议和共同的度量以确定分组在该 AS 内的路由,同时还使用一种 AS 之间的路由选择协议用以确定分组在AS之间的路由。
  • 现在对自治系统 AS 的定义是强调下面的事实:尽管一个 AS 使用了多种内部路由选择协议和度量,但重要的是一个 AS 对其他 AS 表现出的是一个单一的和一致的路由选择策略。在这里插入图片描述
    注意: 互联网的早期 RFC 文档中未使用“路由器”而是使用“网关”这一名词。但是在新的 RFC文档中又使用了“路由器”这一名词。应当把这两个术语当作同义词。

内部网关协议

内部网关协议 IGP (Interior Gateway Protocol)

  • 在一个自治系统内部使用的路由选择协议。
  • 目前这类路由选择协议使用得最多,如 RIP和OSPF 协议

内部网关协议 :RIP协议

路由信息协议 RIP (Routing InformationProtocol) 是内部网关协议 IGP 中最先得到广泛使用的协议。

  • RIP 是一种分布式的、基于距离向量的路由选择协议。
  • RIP 协议要求网络中的每一个路由器都要维护从它自己到其他每一个目的网络的距离记录。从一个路由器到直接连接的网络的距离定义为 1。从一个路由器到非直接连接的网络的距离定义为所经过的路由器数加 1。 RIP 协议中的“距离”也称为“跳数”(hopcount),因为每经过一个路由器,跳数就加 1。
  • RIP 允许一条路径最多只能包含 15 个路由器。“距离”的最大值为 16 时即相当于不可达。可见 RIP 只适用于小型互联网。
  • RIP 不能在两个网络之间同时使用多条路由。
  • RIP最短距离至上:RIP 选择一个具有最少路由器的路由(即最短路由),哪怕还存在另一条高速(低时延)但路由器较多的路由。

RIP协议的三个特点

  1. 仅和相邻路由器交换信息。
  2. 交换的信息是当前本路由器所知道的全部信息,即自己的路由表。
  3. 按固定的时间间隔交换路由信息,例如,每隔 30 秒。当网络拓扑发生变化时,路由器也及时向相邻路由器通告拓扑变化后的路由信息。

路由表的建立与更新

路由器在刚刚开始工作时,只知道到直接连接的网络的距离(此距离定义为1)。它的路由表是空的。 以后,每一个路由器也只和数目非常有限的相邻路由器交换并更新路由信息。 经过若干次更新后,所有的路由器最终都会知道到达本自治系统中任何一个网络的最短距离和下一跳路由器的地址。RIP 协议的收敛 (convergence) 过程较快。“收敛”就是在自治系统中所有的结点都得到正确的路由选择信息的过程。

距离向量算法(重点)

路由器收到相邻路由器(其地址为 X)的一个 RIP 报文:

  1. 先修改此 RIP 报文中的所有项目:把“下一跳”字段中的地址都改为 X,并把所有的“距离”字段的值加 1。
  2. 对修改后的 RIP 报文中的每一个项目,重复以下步骤:
  • 若项目中的目的网络不在路由表中,则把该项目加到路由表中。
    否则
  • 若下一跳字段给出的路由器地址是同样的,则把收到的项目替换原路由表中的项目。
    否则
  • 若收到项目中的距离小于路由表中的距离,则进行更新,
    否则,什么也不做。
  1. 若 3 分钟还没有收到相邻路由器的更新路由表,则把此相邻路由器为不可达路由器,即将距离置为 16(表示不可达)。
  2. 返回。

在这里插入图片描述

RIP协议的优缺点

优点:实现简单,开销较小。
缺点:
1.RIP 限制了网络的规模,它能使用的最大距离为 15(16 表示不可达)。
2. 路由器之间交换的路由信息是路由器中的完整路由表,因而随着网络规模的扩大,开销也就增加。
3. “坏消息传播得慢”,使更新过程的收敛时间过长。
4.
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

内部网关协议 :OSPF协议

开放最短路径优先 OSPF (Open Shortest PathFirst)是为克服 RIP 的缺点在 1989 年开发出来的。OSPF 的原理很简单,但实现起来却较复杂。

OSPF 协议的基本特点

  1. “开放”表明 OSPF 协议不是受某一家厂商控制,而是公开发表的。
  2. “最短路径优先”是因为使用了 Dijkstra 提出的最短路径算法 SPF
  3. 采用分布式的链路状态协议 (link stateprotocol)。

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

三个要点

  1. 向本自治系统中所有路由器发送信息,这里使用的方法是洪泛法。
  2. 发送的信息就是与本路由器相邻的所有路由器的链路状态,但这只是路由器所知道的部分信息。
    “链路状态”就是说明本路由器都和哪些路由器相邻,以及该链路的“度量”(metric)。
  3. 只有当链路状态发生变化时,路由器才用洪泛法向所有路由器发送此信息。

OSPF 划分为两种不同的区域

  • 划分区域的好处:将利用洪泛法交换链路状态信息的范围局限于每一个区域而不是整个的自治系统,这就减少了整个网络上的通信量。
  • 在一个区域内部的路由器只知道本区域的完整网络拓扑,而不知道其他区域的网络拓扑的情况。
  • OSPF 使用层次结构的区域划分。在上层的区域叫做主干区域(backbone area)。 主干区域的标识符规定为0.0.0.0。主干区域的作用是用来连通其他在下层的区域。
    在这里插入图片描述
    在这里插入图片描述

OSPF 直接用 IP 数据报传送

  • OSPF 不用 UDP 而是直接用 IP 数据报传送。
  • OSPF 构成的数据报很短。这样做可减少路由信息的通信量。
  • 数据报很短的另一好处是可以不必将长的数据报分片传送。
  • 分片传送的数据报只要丢失一个,就无法组装成原来的数据报,而整个数据报就必须重传。

OSPF 的五种分组类型

  • 类型1,问候 (Hello) 分组。
  • 类型2,数据库描述 (Database Description) 分组。
  • 类型3,链路状态请求 (Link State Request) 分组。
  • 类型4,链路状态更新 (Link State Update) 分组,用洪泛法对全网更新链路状态。
  • 类型5,链路状态确认 (Link State Acknowledgment)分组。

两种内部协议的区别

OSPF 没有“坏消息传播得慢”的问题,据统计,其响应网络变化的时间小于 100 ms。

外部网关协议

外部网关协议 EGP (External Gateway Protocol)

  • 若源站和目的站处在不同的自治系统中,当数据报传到一个自治系统的边界时,就需要使用一种协议将路由选择信息传递到另一个自治系统中。这样的协议就是外部网关协议 EGP。
  • 在外部网关协议中目前使用最多的是 BGP-4。

注意:IGP和 EGP 是协议类别的名称。但 RFC 在使用 EGP 这个名词时出现了一点混乱,因为最早的一个外部网关协议的协议名字正好也是 EGP。因此在遇到名词 EGP 时,应弄清它是指旧的协议 EGP 还是指外部网关协议EGP 这个类别。

外部网关协议 BGP

互联网的规模太大,使得自治系统之间路由选择非常困难。对于自治系统之间的路由选择,要寻找最佳路由是很不现实的。

  • 当一条路径通过几个不同 AS 时,要想对这样的路
    径计算出有意义的代价是不太可能的。
  • 比较合理的做法是在 AS 之间交换“可达性”信息。
  • 自治系统之间的路由选择必须考虑有关策略。
  • 因此,边界网关协议 BGP 只能是力求寻找一条能够到达目的网络且比较好的路由(不能兜圈子),而并非要寻找一条最佳路由。

BGP 发言人

  • 每一个自治系统的管理员要选择至少一个路由器作为该自治系统的“ BGP 发言人” (BGPspeaker) 。
  • 一般说来,两个 BGP 发言人都是通过一个共享网络连接在一起的,而 BGP 发言人往往就是BGP 边界路由器,但也可以不是 BGP 边界路由器。
    在这里插入图片描述

BGP 交换路由信息

  • 一个 BGP 发言人与其他自治系统中的 BGP 发言人要交换路由信息,就要先建立 TCP 连接,然后在此连接上交换 BGP 报文以建立 BGP 会话(session),利用 BGP 会话交换路由信息。
  • 使用 TCP 连接能提供可靠的服务,也简化了路由选择协议。
  • 使用 TCP 连接交换路由信息的两个 BGP 发言人,彼此成为对方的邻站(neighbor)或对等站(peer) 。

BGP 协议的特点

  • BGP 协议交换路由信息的结点数量级是自治系统数的量级,这要比这些自治系统中的网络数少很多。
  • 每一个自治系统中 BGP 发言人(或边界路由器)的数目是很少的。这样就使得自治系统之间的路由选择不致过分复杂。
  • BGP 支持 CIDR,因此 BGP 的路由表也就应当包括目的网络前缀、下一跳路由器,以及到达该目的网络所要经过的各个自治系统序列。
  • 在 BGP 刚刚运行时,BGP 的邻站是交换整个的 BGP 路由表。但以后只需要在发生变化时更新有变化的部分。这样做对节省网络带宽和减少路由器的处理开销都有好处。

BGP-4 共使用四种报文

  1. 打开 (OPEN) 报文,用来与相邻的另一个BGP发言人建立关系。
  2. 更新 (UPDATE) 报文,用来发送某一路由的信息,以及列出要撤消的多条路由。
  3. 保活 (KEEPALIVE) 报文,用来确认打开报文和周期性地证实邻站关系。
  4. 通知 (NOTIFICATION) 报文,用来发送检测到的差错。

猜你喜欢

转载自blog.csdn.net/qq1350975694/article/details/106969457
今日推荐