当前位置:网站首页 > 编程语言 > 正文

udp组播和单播(udp组播和单播的区别)



点击上方 蓝字关注我们





资源放送
华为认证小白入门到进阶实战课
↓ 扫一扫 实战视频在线观看↓


今天简单的写一下组播的实现过程,主要是给零基础同学阅读。本文力图用最简单的语言描绘组播的大致实现过程。

01

计算机网络中存在三种形式的报文——单播、广播和组播。顾名思义,单播就是发往指定的目的地址,广播就是发放广播域内所有的目的地址,而组播,介于单播和广播之间,发往一些特定的目的地址。

什么时候会用到组播呢?

一般有以下两种场景

1、特定的路由协议。比如OSPF发现邻居就是使用组播报文

2、直播、视频会议。比如一个视频流量要发往几个特定的目的,那么可以使用组播

为什么要使用组播呢?

使用单播和广播的确可以解决组播的功能,但是会造成一些问题。

1、如果用单播替代组播。假设一个组播源要向10个目的地址发送数据,那么如果使用单播,该组播源要将同一份数据发送10遍,极大的造成了网络带宽资源的浪费。

2、如果用广播代替组播。其中一个问题是广播没法跨越广播域发送,另一个问题是广播会将组播流量发给所有的设备,即造成了资源的浪费,也存在一定的安全性问题。

02

组播干了什么

组播就是发往网络中特定目的地址的数据包。

假设一个网络中拓扑如下所示:

假设MCS1要实现将组播流量发往PC1和PC2,那么组播流量在图中传递如图所示:

由MCS1发出的组播流量发给R1,由于R1下游两个路由器都有该组播流量的目的地址,因此R1将该数据包复制成2份分别发给R2和R3,但是对于R2来说,由于其相邻路由器R5没有组播流量的接收者,因此R2不会向R1一样给R5发送流量。

我们把发送组播的设备叫做组播源,接受组播的设备叫做组播接收者。

03

组播不能干什么

组播依托于UDP协议,进行数据通信。组播流量只能从组播源到组播接受者,组播接收者并不能知道组播源是谁(现在v3的IGMP组播协议也支持组播接收者选择组播源),组播源其实也并不知道组播接收者都有哪些,分别在哪。

04

组播是怎么干的?

上述过程时如何实现的呢?大致描述如下:

我们在学习IP地址的时候,知道有种D类的IP地址是组播IP地址,组播的实现就依托于这类IP地址。

首先,对于组播源来说,他会确定一个组播IP地址,它发送的所有组播流量目的IP地址就是这个组播IP地址。因此,组播源只干这一个事情,它其实并不知道组播接收者都有哪些,分别在哪。

其次,对于组播接收者来说,它能接收组播的前提是知道组播源所发送组播的组播IP地址。它也只干了一个事情,就是向上游路由器报告,我要接收目的地址是这个组播IP地址的流量。

最后,对于路由器来说,它们可能是组播实现非常重要的一环,它负责从组播源到组播接收者之间的组播流量转发工作。

对于与组播接受者直接相连的路由器而言,它负责接收接收者的消息,并将其传递给其他路由器,其他路由器也会将这个消息一级一级的传递出去,最终形成的效果就是整个组播网络大概能够知道组播接收者的位置。

这样,当组播流量到来的时候,路由器就知道收到的组播流量应该从哪一个端口发送出去,这个端口要不要发送组播流量等。

最终,组播的实现完成了一棵“树”的构建,我们把这棵树叫做组播分发树,树的根节点是组播源,叶子节点是组播接收者。这样,组播流量就实现从组播源到组播接收者之间的传递了。

关于组播,大致就先讲到这里了,相信您已经对组播有了基本的认识。如果您还想进一步了解关于组播的内容,可以看另一篇文章浅议PIM(一文看懂PIM)。该文章对路由器组播功能的实现——PIM协议进行了讲解。

05

附录—组播IP地址简介

在学习IP地址分类的时候,我们都知道,IP地址可以分为5类,其中D类IP地址专门用于组播。

D类IP地址范围是224.0.0.1-239.255.255.255

该地址又可以继续细分:

224.0.0.1-224.0.0.255是各知名协议的组播地址,比如OSPF协议的组播地址是224.0.0.5和224.0.0.6。

224.0.1.0-238.255.255.255是全局有效的组播地址,即类似于公网IP地址。但是要注意,其中232.0.0.1-232.255.255.255是专门用于SSM协议的。

239.0.0.1-239.255.255.255是本地有效的组播地址,即类似于私网IP地址。当在企业内部部署组播时,可以配置上述IP地址。



课程咨询添加:HCIE666CCIE
↑或者扫描上方二维码↑


你有什么想看的技术点和内容
可以在下方留言告诉小盟哦!

到此这篇udp组播和单播(udp组播和单播的区别)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • Pilowalk(pilowalk属于什么档次)2025-09-18 11:00:11
  • 快程序关闭(如何关闭程序快捷键)2025-09-18 11:00:11
  • 汽车dv试验和pv试验(汽车dv试验和pv试验哪个重要)2025-09-18 11:00:11
  • 环回地址和回环地址(回环地址作用)2025-09-18 11:00:11
  • plll是什么意思(pl. 什么意思)2025-09-18 11:00:11
  • libmmd dll缺失要怎么办(libmmd.dll丢失)2025-09-18 11:00:11
  • 发送验证码成功为什么收不到信息提示(为什么验证码发送成功了,手机却收不到短信)2025-09-18 11:00:11
  • netsend命令(net 命令)2025-09-18 11:00:11
  • u盘怎么制作镜像系统(怎么把u盘做成镜像)2025-09-18 11:00:11
  • 苹果电脑装双系统后怎么还原(苹果电脑装了双系统怎么恢复)2025-09-18 11:00:11
  • 全屏图片