IP组播----组播基础 组播服务模型、组播地址

article/2025/9/21 3:16:43

一、简介

IPv4传输方式有三种:单播、组播、广播

  • 单播:信息源为每个需要信息的主机都发送一份独立的报文
  • 组播:信息源将保温发送到一个特定的组播IP地址,只有加入了这个组的主机才能接收
  • 广播:信息源将信息发送给网段中的所有主机,而不管其是否需要该信息

组播适用于任何"点到多点"的数据发布

  • 网络直播
  • 视频会议
  • 网络电视

组播相比于单播和广播有如下优势

  • 相比单播,不需要将同一份信息复制几份发给不同的目的主机,所以用户的增加不会导致信息源负载的加重以及网络资源消耗的增加
  • 相比广播,由于被传递的信息只会发送给需要该信息的接收者,所以不会造成网络资源的浪费,并且能提高信息传输的安全性

在这里插入图片描述

组播的特点

  • 无重复流量
  • 高效实现为同一组用户提供相同的数据通信

在这里插入图片描述

实现组播的协议

IGMP:运行在用户和组播路由器之间,建立和维护组播组成员关系

PIM SM/PIM DM:协议无关组播,运行在组播路由器之间。

二、组播基本概念

组播组

IP组播地址表示的一个集合

任何用户主机,加入一个组播组,就成为该组成员,可以识别并接受发往该组播组的组播数据

组播源

信息的发送者

一个组播源可以同时向多个组播组发送数据,多个组播源也可以先同一个组播组发送数据

组播源通常不需要加入组播组,由源测DR负责管理组播源的注册

组播组成员

所有加入某个组播组的主机便成为该组播组成员

组播组中的成员是动态的,主机可以在任何时刻加入或者离开组播组

组播组成员可以广泛分布在网络中的任何地方

组播路由器

支持三层组播功能的路由器或交换机

提供组播路由功能(PIM);在用户链接的末梢网段上管理组播组成员(IGMP)

电视节目传输过程组播传递过程
电视台向频道发送数据组播源向组播组发送数数据
观众打开电视机选择这个频道接收者主机加入该组播组
电视台播放该频道电视节目接收者主机收到发送给这个组播组的数据
观众可以随时控制电视机的开关和频道切换接收者主机可以动态加入或者退出组播组、更换加入的组播组

电视台=组播源;频道=组播组;观众=组播组成员;

三、组播服务模型

组播服务模型的分类是针对接收者主机的,对组播源来说没有区别(组播源发出的组播数据是以组播源自己的IP为报文源地址、组播组地址为目的地址)

两种模型:ASM,SSM

两种服务模型默认使用不同的组播组地址范围

ASM模型(Any-Source Multicast)

接收者主机加入组播组后可以接收任意源发送到该组的数据

  • IGMPv1/v2、MLDv1/v2

ASM地址=任意源+组播组地址 (*,G)

要求组地址必须整个组播网络中"唯一"

  • 唯一是指在同一时刻一个ASM地址只能被一种组播应用使用
    • 如果在同一时刻有两个或者多个不同应用使用同一个ASM地址发送数据。会导致它们的接收者会受到来自两个源的数据,数据会混乱,也会导致网络拥塞

SSM模型(Source-Specific Multicast)

接收者主机加入组播组后可以接受特定源发送到该组的数据

  • IGMPv3

SSM地址=组播源IP+组播组地址 (S,G)

不要求组地址全网唯一,需要每个组播源保持”唯一“

  • 唯一是指同一个源不同的组播应用必须使用不同的SSM地址来区分
  • 不同的组播源之间可以使用相同的组地址,因为SSM模型针对每个(S,G)信息都会生产表项。节省组播组地址、不会造成网络拥塞

四、组播地址

为了使组播源和组播组成员进行通信,需要提供网络层组播,使用IP组播地址

为了在本地物理网络上实现组播信息的正确传输,需要提供链路层组播,使用组播MAC地址。

组播数据传输时,目的地不是一个具体的接收者(所以不能使用设备的MAC地址),而是一个成员组,所以需要一种技术将IP组播地址映射为组播MAC地址

IPv4组播地址

IANA将D类地址空间分配给IPv4组播使用

D类地址高四位为 1110

地址范围:224.0.0.0----239.255.255.255

分为永久组播地址和临时组播地址

  • 永久组播地址:224.0.0.0—224.0.0.255
  • 临时组播地址
    • ASM模型
      • 公有地址:224.0.1.0—231.255.255.255;233.0.0.0—238.255.255.255
      • 私有地址:239.0.0.0—239.255.255.255
    • SSM模型:232.0.0.0----232.255.255.255

具体划分如下表:

地址范围含义
224.0.0.0–224.0.0.255永久组播地址(为特定协议分配)
224.0.1.0—231.255.255.255;233.0.0.0—238.255.255.255ASM组播地址(ASM模型公有地址),全网范围内有效
232.0.0.0—232.255.255.255缺省情况下的SSM组播地址,全网范围内有效
239.0.0.0—239.255.255.255本地管理组地址(ASM模型私有地址),仅在本地管理域内有效。在不同的管理域重复使用相同的本地管理组地址不会冲突

常见的永久组地址(224.0.0.0–224.0.0.255)

永久组地址含义
224.0.0.1网段内所有主机和路由器(等效于广播地址)
224.0.0.2所有组播设备
224.0.0.5运行OSPF的设备
224.0.0.6OSPF DR和BDR
224.0.0.9运行RIPv2的设备
224.0.0.13运行PIM协议的设备
224.0.0.18运行VRRP的设备
224.0.0.22所有是能IGMPv3的设备
224.0.0.19—224.0.0.21;224.0.0.23—224.0.0.255未指定

IPv4组播MAC地址

IANA规定组播MAC地址前24bit为01-00-5e,第25bit固定为0,剩余的23bit由组播IP地址后23bit填充

在这里插入图片描述

存在32个组播IP地址映射同一个组播MAC,转发时需要拆包到IP层查看DIP不是自己才会丢弃

  • 解决
    • 规划时避免
    • IGMP-snooping技术

IPv6组播地址

IPv6地址长度128位

和IPv4组播地址相比,IPv6组播地址有了明确的Group id字段用于标识组播组

IPv6组播地址格式:

FF(8bit) + flags(4bit) + Scope(4bit) + Group ID(112bit)

  • FF:最高8位为11111111,表示此地址为组播地址。IPv6组播地址总是以FF开头

  • Flags字段:用来标识组播地址的状态

    • 取值含义
      0永久组播地址(为特定协议分配)
      1临时组播地址,ASM范围的组播地址
      2临时组播地址,ASM范围的组播地址
      3临时组播地址,SSM范围的组播地址
      其他未分配
  • Scope字段:用来标识组播组的应用范围

    • 取值含义
      1接口/节点本地范围(node/interface-local scope)
      2链路本地范围(link-local scope)
      4管理本地范围(admin-local scope)
      5站点本地范围(site-local scope)。类似IPv4用于私网的组播地址
      8机构本地范围(organization-local scope)
      E全球范围(global scope)。类似IPv4用于公网的组播地址
  • Group ID:组播组标识号

IPv6常用的组播地址范围及含义

范围IPv6组播地址含义
节点本地范围FF01::1所有节点地址
FF01::2所有路由器地址
链路本地范围FF02::1网段内所有IPv6主机和路由器地址(等效广播地址)
FF02::2所有路由器地址
FF02::5OSPFv3 IGP router
FF02::6OSPFv3 IGP DR
FF02::9RIP路由器
FF02::d所有PIM路由器
站点本地范围FF05::2所有路由器地址
FF05::1:3所有DHCP服务器
FF::1:4所有DHCP中继

IPv6组播MAC地址

IPv6组播MAC地址的高16位为 0x3333,剩下的32位IPv6组播地址的低32位

在这里插入图片描述

IPv6的组播地址会有更多的组地址使用用一个MAC地址

IPv6地址高8位固定;128-8-32=88,有2^88个IPv6组播MAC地址重复

五、组播协议

在IP组播传输模型中,发送者不关心接收者所处的位置,只要将数据发送到约定的目的地址(目的地一般是组播路由器、RP路由器),剩下的工作交给网络中完成。

网络中的组播路由器必须收集接收者信息,并按照正确的路径实现组播报文的转发和复制。在组播的发展过程中,形成了一套完整的协议来完成

IPv4组播协议

1.组播组管理协议IGMP

Internet Group Management Protocol

  • 负责IPv4组播成员管理,运行在组播网络的末节
  • 管理与维护组播组成员的加入与离开,同时支持与上层组播路由协议的信息交互
  • IGMPv1、IGMPv2、IGMPv3(可直接应用于SSM模型)
2.协议无关组播协议PIM

Protocol Independent Multicast

  • IPv4网络组播路由协议
  • 实现组播数据的路由查找和转发,将网络中的组播数据流发送到有组播数据请求的末节设备
  • PIM-DM(稀疏模式)、PIM-SM(密集模式)
    • 稀疏和密集指的是,组成员相对分散或者集中
3.组播源发现协议MSDP

Multicast Source Discovery Protocol

  • 解决多个PIM-SM与之间互联的一种域间组播协议,用以发现其他PIM-SM域内的组播源信息
  • 实现组播报文的跨域转发,将远端域内的活动信息源传递给本地域内的接收者
  • 只有PIM-SM使用ASM模型时才可用
4.组播边界网关协议MBGP

MultiProtocol Border Gateway Protocol

  • 实现跨AS域的组播转发
  • 适用于组播源于组播接受者不在同一个AS域内
5.IGMP Snooping
  • 侦听上游三层设备用户主机之间IGMP报文建立组播数据报文的二层转发表
  • 有效抑制组播数据在二层网络中扩散

IPv6组播协议

1.组播侦听发现协议MLD

Multicast Listener Discovery

  • IPv6组播成员管理,运行在组播网络末节
  • 在三层设备上维护与管理组播成员的加入与离开
  • MLDv1、MLDv2(可直接运用于SSM模型)
2.PIM(IPv6)
  • IPv6网络组播路由协议
  • 实现组播数据的路由查找和转发,将网络中的组播数据流发送到有组播数据请求的末节设备
3.MLD Snooping

与IGMP snooping 基本一致


http://chatgpt.dhexx.cn/article/vhtjQC2R.shtml

相关文章

组播的地址范围

2019独角兽企业重金招聘Python工程师标准>>> 组播的地址是保留的D类地址从224.0.0.0—239.255.255.255,而且一些地址有特定的用处如,224.0.0.0—244.0.0.255只能用于局域网中路由器是不会转发的,并且224.0.0.1是所有主机的地址&am…

组播地址分类 Cyrus

一、组播地址分类 Multicast地址:224.0.0.0-239.255.255.255第一组八位元组为1110 Multicast地址也分为:预留的局部链路地址、全球范围地址、限制范围地址和GLOP地址。 >预留的局部链路地址(reserved link local address): 保留给本地网段…

IPv6的组播地址

理解IPV6的组播地址 IPv6的组播地址通常是为IPv6的组播服务,而IPv6通信的核心大量的使用了组播,IPv6不再使用广播,这与IPv4的通信不同,然而要理解IPv6的组播,首先需要明白三个关键点: 第一、任何节点都能…

基于udp协议的组播

1. 广播的方式是发送给同一网段下的所有主机,过多的广播数据会占用大量带宽,会造成广播风暴, 影响正常通信; 2. 所以 主机之间一对 一组 的通信模式,即组播,只有加入了同一个组的主机可以收到此组内的所有数据 ; 3.…

IPv4、IPv6地址、组播地址及子网子划分详解四

IPv4、IPv6地址、组播地址及子网子划分详解四 6、IPv66.1、国际IP地址分配方式:6.2、IPv6的结构6.3、IPv6地址简写方式6.4、地址类型6.4.1、单播地址6.4.2、组播地址6.4.3、任意播地址6.5、IPv6接口ID的生成方法 6、IPv6 IPv4地址总数2324,294,967,296 IPv6地址总数…

07-IP组播配置指导

1 组播概述 1.1 组播简介 作为一种与单播(Unicast)和广播(Broadcast)并列的通信方式,组播(Multicast)技术能够有效地解决单点发送、多点接收的问题,从而实现了网络中点到多点的高…

IPv4、IPv6地址、组播地址及子网子划分详解一

IPv4、IPv6地址、组播地址及子网子划分详解一 一、IPv4地址1、IP地址的定义2、IP术语3、IP地址的组成3.1、我们前面讲到IP地址是软件地址,那硬件地址是什么?3.2、IP地址的编址方案4、IP地址的分类4.1、网络地址4.2、保留的IP地址4.3、私有IP地址4.4、组播…

IPV6组播地址

在IPv4中广泛的使用单播、广播、组播的方式。而在IPv6的应用环境中,使用单播,组播、任意播的新方式,放弃广播的使用,换而言之,在IPv6的环境中不再有广播的存在。理解IPv6的组播地址有一个重要的前提:就是读…

IPV4组播地址解析以及IPV4地址详解

为了便于对IP地址进行管理, 根据IPv4地址的第一个字节,IPv4地址可以分为以下五类。 A类:0~127 B类:128~191 C类:192~223 D类:224~239,组播地址 E类:240~254,保留为研究测试使用 IPv4地址中有一些地址段有特殊用途,这些地址段及用途的说明如表所示。 IPV4组播地址解…

计算机网络——组播地址(多播地址、D类地址)详解——不断完善更新中

1、是什么 先看这张图,组播地址是分类编址的IPv4地址中的D类地址,又叫多播地址,他的前四位必须是1110,所以网络地址的取值范围是224~~239。 2、这些IP地址用来做什么 224.0.0.0~224.0.0.255为预留的组播地址&#xff0…

Android LBS

前言 本文以项目AOSP的源码为参考,描述基于Android的定位服务的实现流程,包括GPS定位,网络定位,GeoCoder等服务。以代码执行流程为主线,一步步分析定位的实现流程。由于Android Binder采用C/S的架构模式,所…

LSB和MSB,LSB first,MSBfirst

LSB LSB(Least Significant Bit)–最低有效位 MSB MSB(Most Significant Bit)–最高有效位 解释 加入下面是一个四位二进制的数值,一般和10进制都认为是左边是最高位,也就是MSB;对应的最右边就是LSB. LSB first和MSB first 这种一般出现先对传感…

OSPF,LSDB,LSA分类

dis cur c ospf //查看OSPF的配置 DD报文选举的是主从关系,不是选举DR和BDR LSA通告网段信息和通告拓扑信息 two-way:双向通信,邻居状态下,选举DR和BDR 进入exstar状态,发送第一个DD报文,DD报文的作用是…

IS-IS P2P网络下LSDB同步过程

P2P链路下IS-IS的LSDB数据库同步过程 抓包如下: 大概过程: IS-IS在P2P网络中邻居建立完成后只发送一次CSNP报文 双方都会发送一次CSNP,包含LSP的摘要信息,意思是告诉对方我有哪些网段信息如果其中一方的LSDB中没有对方的CSNP内的某条路由&a…

【OSPF-一类router、二类network】(根据lsdb画出拓扑)

目录 一、一类LSA-Router 每台交换机会产生一条类型为router的lsa,来描述自身直连网段信息(通过dis ospf lsdb,查看router的条目,就能确定该区域内路由器的数目了) 查看ospf相关信息的命令 二、二类lsa-network 由…

ISIS—ISIS中LSP(数据库)同步如何保证LSDB可靠性—04

目录 一、LSP基础知识:(链路状态更新,相当于OSPF的LSA) 二、ISIS中LSP(数据库)同步如何保证LSDB可靠性? ISIS LSP(数据库)同步机制 ①P2P网络: ②MA网络: ③特例问题&#xf…

【LAB4-Cisco】OSPF邻居建立过程与LSDB分析

实验需求 1、根据拓扑提示,对各路由启用OSPF路由协议并划分相应区域,并验证邻居关系以及数据库信息,从而保证内网全网互通。其中,要求R7上的回环口条目作为外部条目引进来。 2、新加入公司网络的Area 2 区域存在一定的接入安全隐患…

IS-IS LSDB详解(华为设备)

概述: IS-IS协议主要有两大功能:子网依赖功能和子网无关功能。子网依赖功能就是建立和维护邻接关系的功能,而子网无关功能则主要用于执行和管理和管理链路状态信息的交换和路由计算,具体可以分为四个过程。 更新过程。路由决策过…

1.1.6 LSDB同步

邻接关系 邻接建立过程 讲完了报文之后我们具体来看一下是怎么同步的,我们可以看到下图是我们LSDB的过程: 注意: 我们要注意,在到达同步过程之前我们先要达到2-way的状态,就是我们首先要有邻居状态的建立,才…

网络篇 OSPF的LSDB过载保护-52

目录 一、实验原理 二、实验拓扑 三、实验步骤 四、实验过程 总结 实验难度 2 实验复杂度3 一、实验原理 若没有正确规划网络或配置不好,可能出现大量的LSA,这些LSA会消耗掉本地的CPU和内存资源的。在Cisco IOS 12.3(7)和更晚的版本中&#xff0…