一、multicast概述:

多媒体应用集成了声音、图形、动画、文本以及视频,这种应用在现在的网络环境中也越来越多。多媒体流量在网络中主要有三种传播方式:
1、unicast (单播)
2、broadcast (广播)
3、multicast (多播)
每种传播方式对网络带宽都有不同的影响。

unicast会对每个客户端分别发送一份流量的拷贝,如果目的客户端数量很大,unicast不得不发送多次,这如果发生在shared链路上,带宽占用是非常巨大的。

broadcast只发送一份拷贝,但是所有客户端都必须停下手中的工作,去检查下这份流量是否是发给自己的,占用客户端的CPU处理时间,如果仅仅是一 般的broadcast流量,因为流量都比较小,但多媒体流量的广播却会占用高达7Mbps甚至更高的带宽,这会占用几乎所有的带宽。如果客户端数量较 小,这种方式显然是不合适的。

multicast是多媒体网络环境下最佳方式,对一组用户只发送一个数据包的拷贝。

二、multicast特性
1、多播是将数据统一发送给一个host group(主机组)
2、采用“无连接的”传输方式,即UDP,也可称为“best effort”
3、成员可随时加入退出,即动态成员管理,成员可加入多个host group(主机组)
4、成员不受数量及所处位置的限制
5、支持多host group(主机组)
6、多播发送端,即源端并不需要加入host group(主机组)
7、多播组成员不需要发送数据

还有几点,对比unicast来说,多播因为只发送一次数据拷贝,几乎能同时分别到达各客户端,而单播不得不由源按顺序分别多次发送数据拷贝,这样数据到达目的端是有延迟的。

再有,多播组成员可以保持匿名,多播因为采用的是UDP机制,这就要求在接收端需要有排错机制。

三、multicast地址
多播地址为D类地址,即224.0.0.0 - 239.255.255.255。不同于A、B、C类IP地址的是,D类地址是不分层的,无结构化的。

multicast地址可以是动态分配,也可是被静态指定。静态指定的地址多为well-known地址,IANA负责对这些地址进行分配,静态地址是永 久的host group(主机组),它与TCP、UDP中的well-known端口号是类似的。比如224.0.0.5和224.0.0.6就是OSPF用来在 DR/BDR与DROTHER之间进行数据交换的,224.0.0.10分配给了RIPv2,224.0.0.9是EIGRP专用的。

Description Range
Reserved link local address 224.0.0.0 to

224.0.0.255
Globally scoped address 224.0.1.0 to

238.255.255.255

Source specific multicast 232.0.0.0 to

232.255.255.255
GLOP address 233.0.0.0 to

233.255.255.255
Limited scope address 239.0.0.0 to

239.255.255.255

reserved link local address:IANA分配给本地网段的网络协议的,路由设备不会将这些包转发出去,这是通过在包头中设定TTL值为1来实现的。224.0.0.1指定了所有主机,224.0.0.2指定了所有路由器。

globally scoped address:这些地址可在internet上进行传递

source specific multicast:为SSM

glop address:与AS绑定使用

limited scope address:本地as或domain内使用,路由器上应对这些地址进行过滤,一般局限在公司内,或大学内部。

四、multicast tree(多播树)
1、source distribution tree(源分发树)
2、shared distribution tree(共享分发树)

源分发树表示为:(S,G),例如(192.168.2.2,224.1.1.1)
共享分发树表示为:(*,G),例如(*,224.2.2.2)

对比:
1、源树的好处是:有最优化的路径选择,据点是当在一个有许多源及host group的网络中,会对源路由器产生巨大的影响,导致资源耗尽。
2、共享树的优点是节省资源,但从源到目的的路径并不一定是最佳的

五、PIM
PIM是ip routing protocol-independent,独立于路由协议的,但是仍然需要有路由表存在,这是防止环路的要求。

PIM分为sparse mode和dense mode

六、IGMP和CGMP
IGMP v1:包含组成员查询包,组成员回复包。3个60秒无回复则取消此成员
IGMP v2:新增leave report,版本2的成员查询消息,可随时脱离多播组
IGMP v3:新增版本3的组成员查询及回复消息
IGMP v3lite:思科私有协议,不具有广泛意义
CGMP用来对交换机通告多播组成员mac地址,用在router上,适合与低端交换机配合使用,思科私有协议
IGMP snooping是IETF的标准协议,用在switch上,用来侦听多播组成员mac地址,占用资源非常大,高端交换机才能应用。

七、配置multicast

1、ip multicast-routing
ip pim sparse-mode | dense-mode | sparse-dense-mode

2、配置auto-rp,思科私有协议,PIM version 1
ip pim send-rp-announce type number scope ttl group-list access-list-number //定义rp
ip pim send-rp-discovery scope ttl //定义rp代理

3、配置PIM version 2
ip pim version 1 | 2
ip pim bsr-border
ip pim bsr-candidate interface hash-mask-length [priority] //代理
ip pim rp-candidate type number ttl group-list access-list-number //RP

八、monitoring ip multicast
show ip mroute
show ip mroute summary
show ip mroute active
show ip mroute count
show ip pim interface
show ip interface

unicast multicast broadcast的区别相关推荐

  1. unicast、broadcast、multicast的区别

    在TDMoP的应用中,无论是传送时钟还是业务都有可能会碰到单播unicast.广播broadcast和组播multicast的问题,那么我们来看一个简单明了的对三者的解释: 以Ethernet网络架构 ...

  2. java (多网卡环境下)发送组播广播(multicast/broadcast)失败问题

    java发送组播或广播包并不复杂网上有很多文章,比如下面的两篇: <Java实现组播(multicast)简单例子> <Java 网络编程案例:使用 MulticastSocket ...

  3. OSPF Unicast Multicast and Network Type(OSPF的单播多播与网络类型辩析)

    OSPF属于链路状态协议,利用HELLO包来发现邻居.建立关系,利用UPDATE包来发送更新,NOTIFICATION包来告知错误等等,我们列张表来看 1.Hello 2.Database Descr ...

  4. 你真的了解“dispaly interface”吗?

    "dispaly interface" 这个十分常用而又基础的命令,不过里面的很多参数可能不被人们注意到,了解这些参数有时加快我们的排障. 1.物理层与链路层状态 下面两个字段代表 ...

  5. Upd通信之QUdpSocket的unicast单播、broadcast广播、multicast组播

    简 述: 了解Upd通信之QUdpSocket的unicast单播.broadcast广播.multicast组播,书写一个简单地例子:然后写了一个小的Qt例子,用来实现和验证它的空间的一些属性和功能 ...

  6. Iptables DNAT实现broadcast与unicast之间相互映射

    shixudong@163.com 疫情期间,因工作需要远程唤醒办公电脑(已通过wireguard组网),以前通过在家里树莓派上运行wolf(Wake on Lan Forwarder)实现网络唤醒包 ...

  7. broadcast receiver 接收设备重启意图( boot_completed Broadcast Intent)而重启定时器

    一.Intents 和Broadcast Intents区别 二.StartupReceiver public class StartupReceiver extends BroadcastRecei ...

  8. Flink Broadcast State 使用示例

    什么是 Broadcast State Broadcast State 是 Flink 1.5 引入的新特性.在开发过程中,如果遇到需要下发/广播配置.规则等低吞吐事件流到下游所有 task 时,就可 ...

  9. NE 题库 38个知识点总结

    31 WLAN WLAN是无线网络,在无线网络中只有a/b/g三个标准,随后又出现一个n的标准 32 mac MAC地址是固化在网卡中的,通常是无法改变的,只能通过一些软件进行欺骗一下下,除了主机的网 ...

  10. [转]OpenContrail 体系架构文档

    OpenContrail 体系架构文档 英文原文:http://opencontrail.org/opencontrail-architecture-documentation/ 翻译者:@KkBLu ...

最新文章

  1. java notify 的作用_java 为什么notify和notifyAll都不起作用?
  2. I - Watering Flowers CodeForces - 617C
  3. GitHub:我开源我自己;CEO:不存在的
  4. 《趣学Python编程》——2.3 使用变量
  5. eclipse安装SVN插件的两种方法
  6. c语言构造满二叉树,递归创建二叉树c语言实现+详细解释
  7. 深度学习100例 - 常见错误 及 处理办法
  8. B站疯传,一整套人工智能学习资料免费送,不谢!
  9. 机器学习——人工神经网络之参数设置(BP算法)
  10. 检测到python编程环境中存在多个版本_linux下多个python版本怎么管理?
  11. php node.js django,Vue.js和Django搭建前后端分离项目示例详解
  12. W3C 特邀专家:浏览器多样性对生态的影响
  13. 对话富通科技CEO赵伟:企业上云潮下 MSP正步入『黄金时代』...
  14. java 多态 重载的区别_重写、覆盖、重载、多态几个概念的区别分析
  15. 了解 Nginx 主要应用场景
  16. 开发你自己的XMPP 续 - Openfire 插件开发
  17. python图像锐化滤波_Laplacian滤波器实现并用于图像锐化
  18. 测试职业思考:如何成为一名优秀的软件测试工程师
  19. 保定计算机软件学院是哪个区,河北软件职业技术学院在哪个区
  20. FPGA niosII 视频笔记--小梅

热门文章

  1. UE4 虚幻引擎上传或者复制项目,打包压缩时,需要保留的文件目录
  2. linux安装mysql总结
  3. APP中方法超过64K的解决办法
  4. 音乐外链生成 html,音乐外链生成工具V2.1 支持14个音乐网站外链提取转换
  5. 山东理工ACM【1216】杨辉三角
  6. r语言library什么意思_关于R语言,你需要知道什么?
  7. 蓝牙渗透测试过程:部分工具使用方法
  8. 遥感领域旋转目标检测OBB记录
  9. 打开网页时有些图片显示不出怎么办
  10. RadioGroup+Fragment+PulltorefreshScrollView+GridView+侧拉菜单+TabLayout+ViewPager