计算机网络-组播地址与组播网络组成

昨天大致学习了为什么会出现组播以及组播的数据结构格式,今天继续学习下组播地址。

一、组播IP地址

在前面的网络基础时候我们知道IP地址是分类的:

IP地址分类
IP地址分类

其中A、B、C类是我们常用的,其中D类:224.0.0.0-239.255.255.255是专门用于用于标识组播组,且仅能作为组播报文的目的地址使用,不能作为源地址使用。

一个组播地址就表示一个点到多点的数据流,比如IPTV数据流,语音会议数据流。大多数情况下,同一个组播网络里不同的业务(比如,IPTV,语音会议)就需要使用不同的组播IP地址,就是可以简单理解为一个组播IP就是一类业务流,需要接收相关业务就加入对应的组播IP即可。

IANA对D类地址做了进一步的定义,几种主要的组播地址如下表所示:

范围含义
224.0.0.0—224.0.0.255为路由协议预留的永久组地址
224.0.1.0—231.255.255.255, 233.0.0.0—238.255.255.255Any-Source临时组播组地址
232.0.0.0—232.255.255.255Source-Specific临时组播组地址
239.0.0.0—239.255.255.255本地管理的Any-Source临时组播组地址

其中第一部分就是我们前面说过的为路由协议预留的用于选举DR、BDR、或者传递路由信息的组播地址,相关路由器都会加入这个组播地址接收组播信息。关于临时组播地址什么的后面再说,现在大家大致清楚了组播IP地址的定义。

二、组播MAC地址

以太网传输IPv4单播报文的时候,目的MAC地址使用的是接收者的MAC地址。但是在传输组播数据时,其目的地不再是一个具体的接收者,而是一个成员不确定的组,所以要使用IPv4组播MAC地址。

IANA规定,IPv4组播MAC地址的高24位为0x01005e,第25位为0,低23位为IPv4组播地址的低23位,例如组播组地址224.0.1.1对应的组播MAC地址为01-00-5e-00-01-01。

组播IP与MAC地址的关系
组播IP与MAC地址的关系

MAC地址,也称为物理地址或以太网地址,是一个用于网络接口的独一无二的标识符。它通常由6个字节(48位)组成,表示为6组两位十六进制数,每组之间用冒号(:)或破折号(-)分隔。

一个MAC地址可能看起来像这样:01:23:45:67:89:AB。要将这个MAC地址转换为二进制,我们可以按照以下步骤:

  • 将每个十六进制数转换为它的4位二进制等价物。
  • 连接所有这些4位二进制数,形成一串48位的二进制数。

所以上面的0x01005e,0x代表十六进制,后面是01-00-5e,每一个字符转换为二进制,如01-->0000 0001 ,所以组播MAC地址的前25位固定位:00000001 00000000 0101 1110

MAC地址由6个字节(48位)组成,而组播IP地址是4个字节(32位),因此组播MAC地址是将前面固定的25位+组播IP的低23位组成。

注意点:IPv4组播地址的前4位是固定的1110,对应组播MAC地址的高25位,后28位中只有23位被映射到MAC地址,因此丢失了5位的地址信息,直接结果是有32个IPv4组播地址映射到同一MAC地址上。例如IP地址为224.0.1.1、224.128.1.1、225.0.1.1、239.128.1.1等组播组的组播MAC地址都为01-00-5e-00-01-01。网络管理员在分配地址时必须考虑这种情况。

一个组播MAC地址所标识的一组设备有着共同的特点,那就是它们都加入了相同的组播组,这些设备将会侦听目的MAC地址为该组播MAC地址的数据帧,组播MAC地址其实就是将IP地址和MAC地址进行结合,只要加入特定的组播IP则能够接收到这个组播流。

三、组播网络的组成

组播网络大体可以分为三个部分:

  • 源端网络:将组播源产生的组播数据发送至组播网络。
  • 组播转发网络:形成无环的组播转发路径,该转发路径也被称为组播分发树(Multicast Distribution Tree)。
  • 成员端网络:让组播网络感知组播组成员位置与加入的组播组。
组播网络组成
组播网络组成

相关组成:

  • 组播源(Source):组播流量的发送者,例如多媒体服务器。组播源无需运行任何组播协议,只需简单 地将组播数据发送出来即可。
  • 组播接收者(Receiver):也被称为组播组成员,是期望接收特定组播组流量的设备,例如运行多媒体 直播客户端软件的PC。
  • 组播组(Multicast Group):用IP组播地址进行标识的一个集合。任何用户主机(或其他接收设备),加入一个组播组,就成为了该组成员,可以识别并接收发往该组播组的组播数据。
  • 组播路由器(Multicast Router):支持组播、运行组播协议的网络设备,实际上不仅仅路由器能够支持 组播,交换机、防火墙等设备也能够支持组播(取决于设备型号),路由器仅是一个代表。
  • 第一跳路由器(First-Hop Router):组播转发路径上,与组播源相连且负责转发该组播源发出的组播数据的PIM路由器。
  • 最后一跳路由器(Last-Hop Router):组播转发路径上,与组播组成员相连且负责向该组成员转发组播数据的PIM路由器。
  • IGMP(Internet Group Management Protocol,因特网组管理协议),是TCP/IP协议族中负责IP组播成员管理的协议,它用来在接收者和与其直接相邻的组播路由器之间建立、维护组播组成员关系。

和IP单播网络一样,组播网络也是基于物理设备连接形成的,因此也需要进行网络通信,需要路由,需要选路。

四、组播服务模型

组播组成员在接收组播数据时可以对于组播数据源进行选择,因此产生了ASM(Any-Source Multicast,任意源组播)和SSM(Source-Specific Multicast,指定源组播)两种组播服务模型。

  • ASM:组成员加入组播组以后,组成员可以接收到任意源发送到该组的数据。
  • SSM:组成员加入组播组以后,组成员只会收到指定源发送到该组的数据。
组播服务模型
组播服务模型

前面我们说过了一个组播里面只要大家都加入一个组播IP则可以接收业务流量,那么一个组播组里面可以有多个组播源嘛,答案是肯定的。

说到这里大家还记得上面的组播IP的分类嘛,其实可以按照这个组播模型来划分的。其中的Any-SourceSource-Specific类别。

组播IP地址
组播IP地址

两种组播模型的特点:

ASM任意源组播特点:

  • ASM为了提高安全性,可以在路由器上配置针对组播源的过滤策略,允许或禁止来自某些组播源的报文通过。最终从接收者角度看,数据是经过筛选的。
  • ASM模型要求组地址必须整个组播网络中唯一。"唯一"指的是同一时刻一个ASM地址只能被一种组播应用使用。如果有两种不同的应用程序使用了同一个ASM组地址发送数据,它们的接收者会同时收到来自两个源的数据。这样一方面会导致网络流量拥塞,另一方面也会给接收者主机造成困扰。

SSM指定源组播特点:

  • SSM模型对组地址不再要求全网唯一,只需要每个组播源保持唯一。这里的"唯一"指的是同一个源上不同的组播应用必须使用不同的SSM地址来区分。不同的源之间可以使用相同的组地址,因为SSM模型中针对每一个(源,组)信息都会生成表项。这样一方面节省了组播组地址,另一方面也不会造成网络拥塞。

后面我们学习组播转发原理时候会大概讲述一下。

总结:D类:224.0.0.0-239.255.255.255是专门用于用于标识组播组,一个组播IP代表一个组播流。组播MAC地址由固定前25bit和组播IP的后23bit组成,一个组播MAC地址所标识的一组设备有着共同的特点,那就是它们都加入了相同的组播组,这些设备将会侦听目的MAC地址为该组播MAC地址的数据帧。整个组播网络由源端网络组播转发网络成员端网络构成。基于组播组中的组播源形成了ASM(Any-Source Multicast,任意源组播)和SSM(Source-Specific Multicast,指定源组播)两种组播服务模型。

如果对文章感兴趣欢迎微信搜索公众号:不喜欢热闹的孩子 不喜欢热闹的孩子

本文由 mdnice 多平台发布

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

不喜欢热闹的孩子

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

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

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

打赏作者

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

抵扣说明:

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

余额充值