《计算机网络》笔记——第4章 网络层(三)

声明:

本博客是本人在学习《计算机网络》后整理的笔记,旨在方便复习和回顾,并非用作商业用途。

本博客已标明出处,如有侵权请告知,马上删除。

4.5 互连网的路由选择协议

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

4.5.1.1 理想的路由算法

  • 算法必须是正确的和完整的。
  • 算法在计算上应简单。
  • 算法应能适应通信量和网络拓扑的变化,这就是说,要有自适应性。
  • 算法应具有稳定性。
  • 算法应是公平的。
  • 算法应是最佳的。

关于“最佳路由”

  • 不存在一种绝对的最佳路由算法
  • 所谓“最佳”只能是相对于某一种特定要求下得出的较为合理的选择而已。
  • 实际的路由选择算法,应尽可能接近于理想的算法。
  • 路由选择是个非常复杂的问题
    • 它是网络中的所有结点共同协调工作的结果
    • 路由选择的环境往往是不断变化的,而这种变化有时无法事先知道

从路由算法的自适应性考虑

  • 静态路由选择策略——即非自适应路由选择,其特点是简单和开销较小,但不能及时适应网络状态的变化。
  • 动态路由选择策略——即自适应路由选择,其特点是能较好地适应网络状态的变化,但实现起来较为复杂,开销也比较大。

4.5.1.2 分层次的路由选择协议

互联网采用分层次的路由选择协议。这是因为:

  • 互联网的规模非常大。如果让所有的路由器知道所有的网络应怎样到达,则这种路由表将非常大,处理起来也太花时间。而所有这些路由器之间交换路由信息所需的带宽就会使互联网的通信链路饱和。
  • 许多单位不愿意外界了解自己单位网络的布局细节和本部门所采用的路由选择协议(这属于本部门内部的事情),但同时还希望连接到互联网上。

自治系统 AS

  • 自治系统 AS 的定义:在单一的技术管理下的一组路由器,而这些路由器使用一种 AS 内部的路由选择协议和共同的度量以确定分组在该 AS 内的路由,同时还使用一种 AS 之间的路由选择协议用以确定分组在 AS 之间的路由。
  • 现在对自治系统 AS 的定义是强调下面的事实:尽管一个 AS 使用了多种内部路由选择协议和度量,但重要的是一个 AS 对其他 AS 表现出的是一个单一的和一致的路由选择策略

在这里插入图片描述

互联网有两大类路由选择协议

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

自治系统和内部网关协议、外部网关协议

在这里插入图片描述

这里要指出两点

  • 互联网的早期 RFC 文档中未使用 “路由器” 而是使用 “网关” 这一名词。但是在新的 RFC 文档中又使用了 “路由器” 这一名词。应当把这两个术语当作同义词
  • IGP 和 EGP 是协议类别的名称。但 RFC 在使用 EGP 这个名词时出现了一点混乱,因为最早的一个外部网关协议的协议名字正好也是 EGP。因此在遇到名词 EGP 时,应弄清它是指旧的协议 EGP 还是指外部网关协议 EGP 这个类别。

互联网的路由选择协议

在这里插入图片描述

4.5.2 内部网关协议 RIP

4.5.2.1 工作原理

  • 路由信息协议 RIP (Routing Information Protocol) 是内部网关协议 IGP 中最先得到广泛使用的协议。
  • RIP 是一种分布式的、基于距离向量的路由选择协议
  • RIP 协议要求网络中的每一个路由器都要维护从它自己到其他每一个目的网络的距离记录。

“距离”的定义

  • 从一个路由器到直接连接的网络的距离定义为 1。
  • 从一个路由器到非直接连接的网络的距离定义为所经过的路由器数加 1。
  • RIP 协议中的 “距离” 也称为 “跳数”(hop count),因为每经过一个路由器,跳数就加 1。
  • 这里的 “距离” 实际上指的是 “最短距离”。
  • RIP 认为一个好的路由就是它通过的路由器的数目少,即“距离短”。
  • RIP 允许一条路径最多只能包含 15 个路由器
  • “距离” 的最大值为 16 时即相当于不可达。可见 RIP 只适用于小型互联网。
  • RIP 不能在两个网络之间同时使用多条路由。RIP 选择一个具有最少路由器的路由(即最短路由),哪怕还存在另一条高速(低时延)但路由器较多的路由。

RIP 协议的三个特点

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

路由表的建立

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

4.5.2.2 距离向量算法

在这里插入图片描述

  • 距离向量算法的基础就是 Bellman-Ford 算法(或 Ford-Fulkerson 算法)。
  • 这种算法的要点是这样的:
    设 X 是结点 A 到 B 的最短路径上的一个结点。
    若把路径 A→B 拆成两段路径 A→X 和 X→B,则每一段路径 A→X 和 X→B 也都分别是结点 A 到 X 和结点 X 到 B 的最短路径。

路由器之间交换信息与路由表更新

  • RIP 协议让互联网中的所有路由器都和自己的相邻路由器不断交换路由信息,并不断更新其路由表,使得从每一个路由器到每一个目的网络的路由都是最短的(即跳数最少)。
  • 虽然所有的路由器最终都拥有了整个自治系统的全局路由信息,但由于每一个路由器的位置不同,它们的路由表当然也应当是不同的。

例 4-5 已知路由器 R6 有表 4-9(a) 所示的路由表。现在收到相邻路由器 R4 发来的路由更新信息,如表 4-9(b) 所示。试更新路由器 R6 的路由表。

在这里插入图片描述

在这里插入图片描述

4.5.2.3 RIP2 协议的报文格式

在这里插入图片描述

RIP2 报文

  • RIP2 报文由首部路由部分组成。
  • RIP2 报文中的路由部分由若干个路由信息组成。每个路由信息需要用 20 个字节。
  • 地址族标识符(又称为地址类别)字段用来标志所使用的地址协议。
  • 路由标记填入自治系统的号码,这是考虑使 RIP 有可能收到本自治系统以外的路由选择信息。
  • 再后面指出某个网络地址、该网络的子网掩码、下一跳路由器地址以及到此网络的距离。
  • 一个 RIP 报文最多可包括 25 个路由,因而 RIP 报文的最大长度是 4+20 x25=504 字节。如超过,必须再用一个 RIP 报文来传送。
  • RIP2 具有简单的鉴别功能
    • 若使用鉴别功能,则将原来写入第一个路由信息(20 个字节)的位置用作鉴别。
    • 在鉴别数据之后才写入路由信息,但这时最多只能再放入 24 个路由信息。

好消息传播得快,坏消息传播得慢

  • RIP 协议特点:好消息传播得快,坏消息传播得慢。
  • RIP 存在的一个问题:当网络出现故障时,要经过比较长的时间 (例如数分钟) 才能将此信息传送到所有的路由器。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

RIP 协议的优缺点

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

4.5.3 内部网关协议 OSPF

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

4.5.3.1 OSPF 协议的基本特点

  • 开放” 表明 OSPF 协议不是受某一家厂商控制,而是公开发表的。
  • 最短路径优先” 是因为使用了 Dijkstra 提出的最短路径算法 SPF
  • 采用分布式的链路状态协议 (link state protocol)。
  • 注意:OSPF 只是一个协议的名字,它并不表示其他的路由选择协议不是 “最短路径优先”。

三个要点

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

链路状态数据库 (link-state database)

  • 由于各路由器之间频繁地交换链路状态信息,因此所有的路由器最终都能建立一个链路状态数据库。
  • 这个数据库实际上就是全网的拓扑结构图,它在全网范围内是一致的(这称为链路状态数据库的同步)。
  • OSPF 的链路状态数据库能较快地进行更新,使各个路由器能及时更新其路由表。
  • OSPF 的更新过程收敛得快是其重要优点

OSPF 的区域 (area)

  • 为了使 OSPF 能够用于规模很大的网络,OSPF 将一个自治系统再划分为若干个更小的范围,叫做区域
  • 每一个区域都有一个 32 位的区域标识符(用点分十进制表示)。
  • 区域也不能太大,在一个区域内的路由器最好不超过 200 个。

OSPF 划分为两种不同的区域

在这里插入图片描述

划分区域

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

主干路由器

在这里插入图片描述

区域边界路由器

在这里插入图片描述

OSPF 直接用 IP 数据报传送

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

OSPF 的其他特点

  • OSPF 对不同的链路可根据 IP 分组的不同服务类型 TOS 而设置成不同的代价。因此,OSPF 对于不同类型的业务可计算出不同的路由
  • 如果到同一个目的网络有多条相同代价的路径,那么可以将通信量分配给这几条路径。这叫做多路径间的负载平衡
  • 所有在 OSPF 路由器之间交换的分组都具有鉴别的功能。
  • 支持可变长度的子网划分和无分类编址 CIDR
  • 每一个链路状态都带上一个 32 位的序号,序号越大状态就越新。

OSPF 分组

在这里插入图片描述

4.5.3.2 OSPF 的五种分组类型

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

OSPF 的基本操作

在这里插入图片描述
在这里插入图片描述

OSPF 的其他特点

  • OSPF 还规定每隔一段时间,如 30 分钟,要刷新一次数据库中的链路状态。
  • 由于一个路由器的链路状态只涉及到与相邻路由器的连通状态,因而与整个互联网的规模并无直接关系。因此当互联网规模很大时,OSPF 协议要比距离向量协议 RIP 好得多
  • OSPF 没有 “坏消息传播得慢” 的问题,据统计,其响应网络变化的时间小于 100 ms。

指定的路由器

  • 若有 N 个网络连接在一个以太网上,则每个路由器要向其他(N - 1)个路由器发送链路状态信息,因而共有 N(N-1) 个路由状态要在这个以太网上传送。

  • OSPF 对这种多点接入的局域网采用了指定的路由器 (designated router) 的方法,使广播的信息量大大减少

  • 指定的路由器代表该局域网上所有的链路向连接到该网络上的各路由器发送状态信息。

4.5.4 外部网关协议 BGP

  • BGP 是不同自治系统的路由器之间交换路由信息的协议。
  • BGP 较新版本是 2006 年 1 月发表的 BGP-4(BGP 第 4 个版本),即 RFC 4271 ~ 4278。
  • 可以将 BGP-4 简写为 BGP。

BGP 使用环境不同

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

BGP 发言人

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

BGP 交换路由信息

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

BGP 发言人和自治系统 AS 的关系

在这里插入图片描述

AS 的连通图举例

  • BGP 所交换的网络可达性的信息就是要到达某个网络所要经过的一系列 AS
  • 当 BGP 发言人互相交换了网络可达性的信息后,各 BGP 发言人就根据所采用的策略从收到的路由信息中找出到达各 AS 的较好路由。

在这里插入图片描述

BGP 发言人交换路径向量

在这里插入图片描述

在这里插入图片描述

BGP 协议的特点

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

BGP-4 共使用四种报文

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

BGP 报文具有通用首部

在这里插入图片描述

4.5.5 路由器的构成

  • 路由器是一种典型的网络层设备
  • 路由器是互联网中的关键设备。
  • 路由器的主要作用是
    • 连通不同的网络。
    • 选择信息传送的线路。选择通畅快捷的近路,能大大提高通信速度,减轻网络系统通信负荷,节约网络系统资源,提高网络系统畅通率,从而让网络系统发挥出更大的效益来。

4.5.5.1 路由器的结构

  • 路由器是一种具有多个输入端口和多个输出端口的专用计算机,其任务是转发分组。也就是说,将路由器某个输入端口收到的分组,按照分组要去的目的地(即目的网络),把该分组从路由器的某个合适的输出端口转发给下一跳路由器。
  • 下一跳路由器也按照这种方法处理分组,直到该分组到达终点为止。
  • 路由器的转发分组正是网络层的主要工作。

典型的路由器的结构

在这里插入图片描述

  • 整个的路由器结构可划分为两大部分:
    • 路由选择部分
    • 分组转发部分
  • 路由选择部分
    • 也叫做控制部分,其核心构件是路由选择处理机
    • 路由选择处理机的任务是根据所选定的路由选择协议构造出路由表,同时经常或定期地和相邻路由器交换路由信息而不断地更新和维护路由表。
  • 分组转发部分由三部分组成:
    • 交换结构 (switching fabric):又称为交换组织,其作用是根据转发表 (forwarding table) 对分组进行处理
    • 一组输入端口
    • 一组输出端口

“转发”和“路由选择”的区别

  • 转发”(forwarding) 就是路由器根据转发表将用户的 IP 数据报从合适的端口转发出去。
  • 路由选择”(routing) 则是按照分布式算法,根据从各相邻路由器得到的关于网络拓扑的变化情况,动态地改变所选择的路由。
  • 路由表是根据路由选择算法得出的。而转发表是从路由表得出的
  • 在讨论路由选择的原理时,往往不去区分转发表和路由表的区别。

输入端口对线路上收到的分组的处理

  • 路由器的输入端口里面装有物理层、数据链路层和网络层的处理模块。
  • 数据链路层剥去帧首部和尾部后,将分组送到网络层的队列中排队等待处理。这会产生一定的时延。
  • 输入端口中的查找和转发功能在路由器的交换功能中是最重要的

在这里插入图片描述

输出端口将交换结构传送来的分组发送到线路

  • 输出端口里面装有物理层、数据链路层和网络层的处理模块。
  • 输出端口从交换结构接收分组,然后把它们发送到路由器外面的线路上。
  • 在网络层的处理模块中设有一个缓冲区(队列)。当交换结构传送过来的分组的速率超过输出链路的发送速率时,来不及发送的分组就必须暂时存放在这个队列中。
  • 数据链路层处理模块将分组加上链路层的首部和尾部,交给物理层后发送到外部线路

在这里插入图片描述

分组丢弃

  • 若路由器处理分组的速率赶不上分组进入队列的速率,则队列的存储空间最终必定减少到零,这就使后面再进入队列的分组由于没有存储空间而只能被丢弃。
  • 路由器中的输入或输出队列产生溢出是造成分组丢失的重要原因

4.5.5.2 交换结构

  • 交换结构是路由器的关键构件。
  • 正是这个交换结构把分组从一个输入端口转移到某个合适的输出端口
  • 实现交换有多种方法。常用交换方法有三种:
    • 通过存储器
    • 通过总线
    • 通过纵横交换结构

在这里插入图片描述

4.6 IPv6

4.7 IP 多播

4.7.1 IP 多播的基本概念

  • IP 多播 (multicast,以前曾译为组播) 已成为互联网的一个热门课题。

  • 目的:更好地支持一对多通信。

  • 一对多通信:一个源点发送到许多个终点。

    例如,实时信息的交付(如新闻、股市行情等),软件更新,交互式会议及其他多媒体通信。

多播可大大节约网络资源

在这里插入图片描述

在这里插入图片描述

IP 多播

  • 在互联网上进行多播就叫做 IP 多播
  • 互联网范围的多播要靠路由器来实现。
  • 能够运行多播协议的路由器称为多播路由器(multicast router)。当然它也可以转发普通的单播IP数据报。
  • 从 1992 年起,在互联网上开始试验虚拟的多播主干网 MBONE (Multicast Backbone On the InterNEt)。 现在多播主干网已经有了相当大的规模。

多播 IP 地址

  • IP 多播所传送的分组需要使用多播 IP 地址
  • 在多播数据报的目的地址写入的是多播组的标识符。
  • 多播组的标识符就是 IP 地址中的 D 类地址(多播地址)
  • 每一个 D 类地址标志一个多播组。
  • 多播地址只能用于目的地址,不能用于源地址

多播数据报

  • 多播数据报和一般的 IP 数据报的区别就是它使用 D 类 IP 地址作为目的地址,并且首部中的协议字段值是 2,表明使用网际组管理协议 IGMP
  • 多播数据报也是 “尽最大努力交付”,不保证一定能够交付多播组内的所有成员。
  • 对多播数据报不产生 ICMP 差错报文。因此,若在 PING 命令后面键入多播地址,将永远不会收到响应。

4.7.2 在局域网上进行硬件多播

  • 互联网号码指派管理局 IANA 拥有的以太网地址块的高 24 位为 00-00-5E。
  • 因此 TCP/IP 协议使用的以太网地址块的范围
    • 从 00-00-5E-00-00-00
    • 到 00-00-5E-FF-FF-FF
  • 不难看出,在每一个地址中,只有 23 位可用作多播。
  • D 类 IP 地址可供分配的有 28 位,在这 28 位中的前 5 位不能用来构成以太网硬件地址。

D 类 IP 地址与以太网多播地址的映射关系

在这里插入图片描述

由于多播 IP 地址与以太网硬件地址的映射关系不是唯一的,因此收到多播数据报的主机,还要在 IP 层利用软件进行过滤,把不是本主机要接收的数据报丢弃。

4.7.3 网际组管理协议 IGMP 和多播路由选择协议

4.7.3.1 IP 多播需要两种协议

  • 为了使路由器知道多播组成员的信息,需要利用网际组管理协议 IGMP (Internet Group Management Protocol)。
  • 连接在局域网上的多播路由器还必须和互联网上的其他多播路由器协同工作,以便把多播数据报用最小代价传送给所有的组成员。这就需要使用多播路由选择协议

IGMP 使多播路由器知道多播组成员信息

在这里插入图片描述

IGMP 的使用范围

  • IGMP 并非在互联网范围内对所有多播组成员进行管理的协议。
  • IGMP 不知道 IP 多播组包含的成员数,也不知道这些成员都分布在哪些网络上。
  • IGMP 协议是让连接在本地局域网上的多播路由器知道本局域网上是否有主机(严格讲,是主机上的某个进程)参加或退出了某个多播组

多播路由选择协议更为复杂

在这里插入图片描述

  • 多播转发必须动态地适应多播组成员的变化(这时网络拓扑并未发生变化)。请注意,单播路由选择通常是在网络拓扑发生变化时才需要更新路由。
  • 多播路由器在转发多播数据报时,不能仅仅根据多播数据报中的目的地址,而是还要考虑这个多播数据报从什么地方来和要到什么地方去
  • 多播数据报可以由没有加入多播组的主机发出,也可以通过没有组成员接入的网络。

4.7.3.2 网际组管理协议 IGMP

  • 1989 年公布的 RFC 1112(IGMPv1)早已成为了互联网的标准协议。
  • 1997 年公布的 RFC 2236(IGMPv2,建议标准)对 IGMPv1 进行了更新。
  • 2002 年 10 月公布了 RFC 3376(IGMPv3,建议标准),宣布 RFC 2236(IGMPv2)是陈旧的。

IGMP 是整个网际协议 IP 的一个组成部分

  • 和 ICMP 相似,IGMP 使用 IP 数据报传递其报文(即 IGMP 报文加上 IP 首部构成 IP 数据报),但它也向 IP 提供服务。
  • 因此,我们不把 IGMP 看成是一个单独的协议,而是属于整个网际协议 IP 的一个组成部分

IGMP 工作可分为两个阶段

  • 第一阶段:加入多播组
    • 当某个主机加入新的多播组时,该主机应向多播组的多播地址发送 IGMP 报文,声明自己要成为该组的成员。
    • 本地的多播路由器收到 IGMP 报文后,将组成员关系转发给互联网上的其他多播路由器。
  • 第二阶段:探询组成员变化情况
    • 因为组成员关系是动态的,因此本地多播路由器要周期性地探询本地局域网上的主机,以便知道这些主机是否还继续是组的成员。
    • 只要对某个组有一个主机响应,那么多播路由器就认为这个组是活跃的。
    • 但一个组在经过几次的探询后仍然没有一个主机响应,则不再将该组的成员关系转发给其他的多播路由器。

IGMP 采用的一些具体措施

  • 在主机和多播路由器之间的所有通信都是使用 IP 多播
  • 多播路由器在探询组成员关系时,只需要对所有的组发送一个请求信息的询问报文,而不需要对每一个组发送一个询问报文。默认的询问速率是每 125 秒发送一次。
  • 当同一个网络上连接有几个多播路由器时,它们能够迅速和有效地选择其中的一个来探询主机的成员关系。
  • 在 IGMP 的询问报文中有一个数值 N,它指明一个最长响应时间(默认值为 10 秒)。当收到询问时,主机在 0 到 N 之间随机选择发送响应所需经过的时延。对应于最小时延的响应最先发送。
  • 同一个组内的每一个主机都要监听响应,只要有本组的其他主机先发送了响应,自己就可以不再发送响应了。

4.7.3.3 多播路由选择

  • 多播路由选择协议尚未标准化。
  • 一个多播组中的成员是动态变化的,随时会有主机加入或离开这个多播组。
  • 多播路由选择实际上就是要找出以源主机为根结点的多播转发树
  • 在多播转发树上的路由器不会收到重复的多播数据报。
  • 对不同的多播组对应于不同的多播转发树。
  • 同一个多播组,对不同的源点也会有不同的多播转发树。

多播路由选择协议在转发多播数据报时使用三种方法:

  • 洪泛与剪除
  • 隧道技术 (tunneling)
  • 基于核心的发现技术

4.8 虚拟专用网 VPN 和网络地址转换 NAT

4.9 多协议标记交换 MPLS

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

bm1998

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值