文章目录
  1. 网际组管理协议IGMP
  2. 多播路由选择协议
    1. 洪泛与剪除
    2. 隧道技术
    3. 基于核心的发现技术

网际组管理协议IGMP

IGMP协议基于IP协议。IGMP的工作大体分为两类。

  • 有主机要加入某一多播组时,主机向该多播组的多播地址发送一个IGMP报文,声明加入该组。本地的多播路由器收到IGMP报文后,需利用多播路由选择协议将这种组成员关系转发给互联网上的其他多播路由器;
  • 本地多播路由器需周期性探询本地局域网上的主机,以便知道这些主机是否仍然为组成员。只要有一台组内的主机响应,那么本地的多播路由器就认为该组活跃,否则,本地的多播路由器认为局域网中所有主机离开该组,不再将这个组的成员关系转发给其他多播路由器;

为减少网络开销,IGMP协议具有以下特点。

  • 主机与多播路由器间的所有通信均为IP多播;
  • 多播路由器在探询组成员关系时,只需要对所有组发送一个请求信息的询问报文;
  • 同一组内每台主机都要监听响应,若本组的其他主机先发送了响应,则自己不用再发送响应;

多播路由选择协议

多播路由选择就是要找出以源主机为根节点的多播转发树,多播路由选择协议尚未标准化,下面介绍多播路由选择的3种方法。

洪泛与剪除

开始,路由器使用洪泛法转发多播数据报,每个路由器在收到一个数据包后,检查数据包是否是从源点经最短路径传送来的(计算从路由器到源点的最短路径,判断刚刚转发数据包的路由器是否为最短路径上的第一个路由器)。若是,则向所有其他方向转发此多播数据包,否则丢弃而不转发。如下是一个例子。

 

若多播转发树上的某个路由器的下游树枝已无该多播组的成员,则将该路由器与其下游树枝一起剪除。

隧道技术

适用于多播组的位置在地理上分散的情形。在多播数据包进入单播网络时,将多播数据包封装上普通IP头部,到达多播网络后再去除普通IP头部。多播数据包如同在隧道中通过单播网络。

基于核心的发现技术

对每个多播组G指定一个核心路由器q,给出q的IP单播地址。q按照洪泛与剪除法创建G的转发树。发送到核心路由器的数据包会被沿途所有路由器检查内容,到达q后,若数据包是多播数据包,则q向G中所有成员转发数据包。若数据包是请求加入G,q就会将源路由器加入G,然后用隧道技术向刚刚加入的路由器转发每个多播数据报的副本。