首页 > 其他分享 >什么是组播?组播和单播的区别是什么?

什么是组播?组播和单播的区别是什么?

时间:2023-06-01 16:11:49浏览次数:44  
标签:组播 什么 MAC 单播 地址 IPv4 IPv6 报文

什么是组播?

作为IP传输三种方式之一,组播指的是报文从一个源发出,被转发到一组特定的接收者,相同的报文在每条链路上最多有一份。相较于传统的单播和广播,组播可以有效地节约网络带宽、降低网络负载,所以被广泛应用于IPTV、实时数据传送和多媒体会议等网络业务中。

组播和单播的区别是什么?

组播和单播都是报文传输的一种方式。

单播是主机间一对一的通讯模式,网络中的设备根据网络报文中包含的目的地址选择传输路径,将单播报文传送到指定的目的地,只对接收到的数据进行转发,不会进行复制。它能够针对每台主机及时的响应,现在的网页浏览全部都是采用单播模式。

组播是主机间一对多的通讯模式, 组播是一种允许一个或多个组播源发送同一报文到多个接收者的技术。组播源将一份报文发送到特定的组播地址,组播地址不同于单播地址,它并不属于特定某个主机,而是属于一组主机。一个组播地址表示一个群组,需要接收组播报文的接收者都加入这个群组。

一份数据报文如图所示,通过单播传输需要使用一个单播地址作为目的地址。数据源向每个接收者发送一份独立的报文。如果网络中存在N个接收者,则数据源需要发送N份报文;通过组播传输时使用一个组播地址作为目的地址,数据源向组播组发送且仅发送一份报文。如果网络中存在N个接收者,数据源也仅需要发送一份数据报文。

组播传输和单播传输方式对比

单播传输适用于用户稀少的网络,如果用户量较大时,网络将会出现多份相同的流量,会大量占用处理器资源而且非常浪费网络的带宽,而通过组播方式传输,网络中每条链路中仅有一条数据流。组播相比于单播的优势在于相同的报文在每条链路上最多有一份。

组播和广播的区别是什么?

组播和广播都是报文传输的一种方式。

广播是主机间一对所有的通讯模式,设备会将报文发送到网络中的所有可能接收者。设备简单地将它收到的任何广播报文都复制并转发到除该报文到达的接口外的每个接口。广播处理流程简单,不用选择路径。

组播是主机间一对多的通讯模式, 组播是一种允许一个或多个组播源发送同一报文到多个接收者的技术。

一份数据报文如图所示,通过广播传输需要使用一个广播地址作为目的地址。数据源向本网段对应的广播地址发送且仅发送一份报文。广播传输会把数据报文发送给本网段中的所有用户,而不管用户是否有需求;通过组播传输时仅把数据报文发送给有数据需求的用户,不会发送给所有用户。

组播传输和广播传输方式对比

广播传输数据源必须与用户在同一个网段,组播可以跨网段传输。广播传输该网段内所有主机都能收到数据报文,会导致无信息需求的主机也收到该信息,网络中存在流量冗余,组播传输只将数据流传输到有接收者的地方,网络中不存在流量冗余。组播相比于广播的优势在于组播的报文是按需发送。

IP组播地址的范围

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

IPv4组播地址

IANA将D类地址空间分配给IPv4组播使用。IPv4地址一共32位,D类地址最高4位为1110,地址范围从224.0.0.0到239.255.255.255,具体分类及含义见下图。

IPv4组播地址的范围及含义

IPv6组播地址

IPv6地址长度是128位,IPv6组播地址格式如图所示。

IPv6组播地址格式

  • IPv6组播地址总是以FF开头,高8位取值为11111111。
  • Flags字段(4位)用来标识组播地址的状态。例如取值为0表示保留组地址,取值为1或2表示ASM范围内的组播地址,取值为3表示SSM范围内的组播地址。
  • Scope字段(4位)用来标识组播组的应用范围,指示组播组应用范围是只包含同一本地网络、同一站点、同一机构中的节点,还是包含全球地址空间内的任何节点。
  • Group ID(112位)组播组标识符,用在由Scope字段所指定的范围内标识组播组。

固定的IPv6组播地址的范围及含义如图所示。

IPv6组播地址的范围及含义

组播MAC地址的范围

为了在本地物理网络上实现组播信息的正确传输,需要在链路层使用组播MAC地址。组播数据传输时,其目的地不是一个具体的接收者,而是一个成员不确定的组,所以需要一种技术将IP组播地址映射为组播MAC地址。

IPv4组播MAC地址

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

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

IPv4组播地址与IPv4组播MAC地址的映射关系

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。

IPv6组播MAC地址

IPv6组播MAC地址的高16位为0x3333,低32位为IPv6组播地址的低32位。如图所示,是IPv6组播地址的MAC地址映射关系。

IPv6组播地址与IPv6组播MAC地址的映射关系

可见IPv6中会有更多的组地址使用同一个MAC地址。

有哪些组播协议?

在IP组播传输模型中,发送者不关心接收者所处的位置,只要将数据发送到约定的目的地址,剩下的工作就交给网络去完成。网络中的组播设备必须收集接收者的信息,并按照正确的路径实现组播报文的转发和复制。在组播的发展过程中,形成了一套完整的协议来完成此任务。

IPv4网络中使用的组播协议

  • 组播组管理协议IGMP(Internet Group Management Protocol) IGMP是负责IPv4组播成员管理的协议,运行在组播网络中的最后一段,即三层网络设备与用户主机相连的网段内。IGMP协议在主机端实现组播组成员加入与离开,在上游的三层设备中实现组成员关系的维护与管理,同时支持与上层组播路由协议的信息交互。
  • 协议无关组播PIM(Protocol Independent Multicast) PIM作为一种IPv4网络中的组播路由协议,主要用于将网络中的组播数据流发送到有组播数据请求的组成员所连接的组播设备上,从而实现组播数据的路由查找与转发。 PIM协议包括PIM-SM(Protocol Independent Multicast Sparse Mode)协议无关组播-稀疏模式和PIM-DM(Protocol Independent Multicast Dense Mode)协议无关组播-密集模式。PIM-SM适合规模较大、组成员相对比较分散的网络;PIM-DM适合规模较小、组播组成员相对比较集中的网络。
  • 组播源发现协议MSDP(Multicast Source Discovery Protocol) MSDP是为了解决多个PIM-SM域之间的互连的一种域间组播协议,用来发现其他PIM-SM域内的组播源信息,将远端域内的活动信源信息传递给本地域内的接收者,从而实现组播报文的跨域转发。
  • 组播边界网关协议MBGP(MultiProtocol Border Gateway Protocol) MBGP实现了跨AS域的组播转发。适用于组播源与组播接收者在不同AS域的场景。
  • IGMP Snooping IGMP Snooping功能可以使设备工作在二层时,通过侦听上游的三层设备和用户主机之间发送的IGMP报文来建立组播数据报文的二层转发表,管理和控制组播数据报文的转发,进而有效抑制组播数据在二层网络中扩散。
  • BIER BIER是基于比特索引的显式复制技术,通过将组播报文目的节点的集合以比特串的方式封装在报文头部进行发送,从而使网络中间节点无需为每一个组播流(Per-flow)建立组播树及保存组播流状态,仅需根据报文头部的目的节点的集合进行复制转发。

IPv6网络中使用的组播协议

  • 组播侦听者发现协议MLD(Multicast Listener Discovery) MLD是负责IPv6组播成员管理的协议,运行在组播网络中的最后一段,即三层组播设备与用户主机相连的网段内。MLD协议在主机端实现组播组成员加入与离开,在三层设备上实现组成员关系的维护与管理,同时支持与组播路由协议的信息交互。
  • PIM(IPv6) PIM(IPv6)作为一种IPv6网络中的组播路由协议,主要用于将网络中的组播数据流引入到有组播数据请求的组成员所连接的路由器上,从而实现组播数据流的路由查找与转发。 PIM(IPv6)协议包括PIM-SM(IPv6)和PIM-DM(IPv6)两种模式。PIM-SM(IPv6)适合规模较大、组成员相对比较分散的网络;PIM-DM(IPv6)适合规模较小、组播组成员相对比较集中的网络。
  • MLD Snooping MLD Snooping功能可以使设备工作在二层时,通过侦听上游的三层设备和用户主机之间发送的MLD报文来建立组播数据报文的IPv6二层转发表,管理和控制组播数据报文的转发,进而有效抑制组播数据在二层网络中扩散
  • BIERv6 BIERv6技术保留了BIER技术的优势,利用IPv6可扩展的能力,实现了组播路由技术在IPv6网络场景下的新应用。具有易部署、智能化、高可靠性三大特点。

标签:组播,什么,MAC,单播,地址,IPv4,IPv6,报文
From: https://www.cnblogs.com/fisherpau/p/17449344.html

相关文章

  • 什么是EAN码
    EAN码(EuropeanArticleNumber)全名为欧洲商品条码,起源于欧洲,目前已经成为国际通用的条码。EAN码由国际条码中心分配各个会员国家的代表号码,再由各个国家的条码机构负责授予国内厂家代表号码。EAN码由前缀码、厂商识别码、商品项目码和校验码组成。前缀码就是标识各个会员国家的代......
  • 稳如磐石,助力物联网无限畅通——揭秘这款DTU产品为什么如此稳定
    随着物联网的迅猛发展,工业级DTU设备成为了许多行业实现远程监控和数据传输的重要工具。不过面对如此之多的设备很多用户也会出现疑惑,到底应该如何选择一款好的DTU产品设备呢?在选择设备的时候我们需要着重注意哪些点?为什么要注意这几点?下面我们就用OM302系列工业级DTU设备的极稳特......
  • SSL握手失败是什么原因?
    作为当下企业网站安全的第一道防线——部署SSL证书可实现网站HTTPS加密保护及身份的可信认证,防止传输数据的泄露或篡改,提高网站可信度、品牌形象和SEO排名,为企业带来更多访问量,同时这也是网络安全法及PCI合规性的必备要求。但有时候,在部署SSL证书时,我们会遇到无法在服务器和客户......
  • 什么是内部链接
    内部链接部分列出所有页面的内部链接数。站长从这里可以大致判断网站内部链接结构是否有重大缺陷。如果全站主导航中出现的分类首页内部链接数非常低,很可能说明导航系统有问题。内部链接数的另一个作用是反映出网站收录页面数。Google的site:指令也不太准确,而且现在越来越不准确,经常......
  • 企业为什么要建设商业智能(BI)系统
    商业智能(BusinessIntelligence,BI)是一种通过对业务数据的分析来发现业务规律、优化决策和提高业务绩效的一种解决方案。而如今,数据正在成为越来越重要的企业资产,而BI可以帮助企业对这些数据进行收集、整理、分析和可视化展示,从而提供为实时决策支持和全面的业务洞察提供依据。皕......
  • UE4使用什么编译器?
    UE4的底层虽然是用C++实现的,但它又不仅仅是一个C++库,它还实现了自己的编译机制。换句话说,UE4对现有的C++语法进行了改进,以适应游戏开发的场景。当然,UE4也不会疯狂到自己去开发一个C++编译器,它还是需要依赖传统的C++编译器以及相关的编程套件。熟悉Qt的读者应该......
  • UE4是什么?虚幻4引擎是什么?
    UE4的全名是UnrealEngine4,中文译为“虚幻引擎4”。UE4是一款由EpicGames公司开发的开源、商业收费、学习免费的游戏引擎。从1998年发行至今,UE4一共经历了UE、UE2、UE2.5、UE3、UDK、UE4多个版本,它的迭代速度极快,现在已经到了4.22预览版。基于UE4开发的大作无......
  • SSL握手失败是什么原因?
    作为当下企业网站安全的第一道防线——部署SSL证书可实现网站HTTPS加密保护及身份的可信认证,防止传输数据的泄露或篡改,提高网站可信度、品牌形象和SEO排名,为企业带来更多访问量,同时这也是网络安全法及PCI合规性的必备要求。但有时候,在部署SSL证书时,我们会遇到无法在服务器和客户端......
  • 中小企业数字化转型为什么这么难?
    很多人不理解数字化转型,那是因为不懂历史。其实,自始至终,目的是智能化。很早以前,我国就在想着智能化,媒体也大力宣传了,但是事情没有做好。为什么没做好?主要是因为信息化没有做好。于是,媒体开始大力宣传信息化。后来,发现数字化工作没做好,影响了信息化工作。于是乎,媒体开始大力宣传数......
  • 什么样的服务器适合做APP?45.125.46.x
    现如今,智能手机已经越来越普及,随着智能手机的普及,同时催生了各类APP,很多企业除了建立官方网站,也会创建自家的APP,增加传播渠道,也是竞争途径之一。那么好的APP就非常重要了,在开发APP之前,我们还需要选择一款合适的服务器作为支撑,应该怎么选APP服务器的配置呢?选择APP服务器要从哪些配置......