- 组播(Multicast)
- 组播基础
- 前言
- 当网络中部署点到多点通信应用时,若采用单播方式,网络中传输的信息量与需要该信息的用户量成正比。多份内容相同的信息发送给不同用户,对信源及网络带宽都将造成巨大压力。若采用广播方式,无需接收信息的主机也将收到该信息,这样不仅信息安全得不到保障,且会造成同一网段中信息泛滥。
- IP组播技术有效地解决了单播和广播在点到多点应用中的问题。组播源只发送一份数据,数据在网络节点间被复制、分发,且只发送给需要该信息的接收者。
- 传统点到点应用
- 服务提供端以单个用户为单位提供服务。
- 不同用户与服务提供端的通信数据存在差异。
- 新型点到多点应用
- 服务提供端以一组用户为单位提供服务。
- 同组用户与服务提供端的通信数据无差异。
- 单播方式部署点到多点应用
- 单播方式存在的问题
- 重复流量过多。
- 消耗设备和链路带宽资源。
- 难以保证传输质量。
- 单播方式存在的问题
- 广播方式部署点到多点应用
- 广播方式所存在的问题:
- 地域范围限制。
- 安全性无法保障。
- ·有偿性无法保障。
- 广播方式所存在的问题:
- 组播方式部署点到多点应用
- 组播方式的优势:
- 无重复流量。
- 节省设备与带宽资源。
- 安全性高。
- 有偿性有保障。
- 组播方式的优势:
- 组播的基本架构
-
- 组播源到路由器
-
- 组播IP地址
-
- 组播的MAC地址
-
- 组播IP与MAC的映射
-
- 前言
- IGMP协议原理与配置
- 接收者与路由器间需要交换哪些信息?
- 口接收者需声明自己要接收哪个组的数据。
- 路由器需了解哪些组播组存在接收者。
- 人工配置这些信息,有哪些问题?
- 实时性差。
- 口灵活性差。
- 工作量大、易出错。
- 组成员管理-IGMP
- IGMP协议运行于主机与组播路由器之间。
- IGMP协议的作用:
- 主机侧:通过IGMP协议向路由器通告组成员关系。
- 口路由器侧:通过IGMP协议维护组成员关系。
- IGMPv1
- IGMPv1的工作机制
- 普遍组查询与响应。
- 响应抑制机制。
- IGMPv1问题
- 组成员离开
- 查询器选举
- 1.组播路由器发送查询报文:谁要加入哪些组
- 2.用户主机回应成员报告报文:告诉组播路由器自己加入哪个组,告诉其他成员做成员抑制机制
- 3.没有离开机制,默默离开,130s后如果组播路由器未收到成员报告,那么就删除对应组表项
- 4.当本网段有多个组播路由器可以发送查询报文的时候,没有专门的选举查询器机制,而是需要靠PIM协议。
- IGMPv1的工作机制
- IGMPv2
- IGMPv2对IGMPv1的改进:组成员离开
- IGMPv2对IGMPv1的改进:查询器选举
- 独立的查询器选举机制。
- lGMPv1和IGMPv2报文比较
-
- 1.组播路由器发送普通查询报文(Membership query general):问谁加入哪个组
- 2.用户主机发送成员报告报文(Membership report) :加入具体的组信息
- 3.当某个用户要离开某个组,发送离开报文:告诉组播路由器要离开的组
- 4.当组播路由器收到离开报文(Leave Group),发送特定组查询报文(Membership query -Specific for group) :询问是否还有对应的成员在特定组内。
- IGMPv3
- lGMPv3工作机制
-
- IGMP各版本间的差异
-
- 运行IGMPv3的主机不仅能够选择组,还能根据需要选择组播源。
- 主机发送的IGMPv3报告报文中可以包含多个组记录,每个组记录中可以包含多个组播源。
- IGMPv3包含两类报文:查询报文和成员报告报文。
- IGMPv3没有成员离开报文(Leave Group报文),通过在Membership Report报文中申明不再接收任何源发送给某组播组的数据,此报文是Membership Report TO_IN(NULL, 228.1.12)
- 查询报文包含:普通组查询报文、特定组查询报文、特定源组查询报文Group-and-Source-Specific Query(IGMPv3新增)。当路由器侧收到block(S,G)表示不接收某个源发送的数据时,需要发送特定源组查询报文以确认。
- lGMPv3工作机制
- 二层中组播数据转发的问题
- SSM模型中的新需求
- 只接收特定源发送的组播数据。
- 组播数据在二层被泛洪,造成:
- 网络资源浪费。
- 存在安全隐患。
- SSM模型中的新需求
- 接收者与路由器间需要交换哪些信息?
- lGMP Snooping工作原理和IGMP filter
- 节约网络资源提高安全性
- 使能IGMP Snooping功能后,二层设备侦听和分析主机和路由器之间交互的IGMP报文。通过分析报文中携带的信息(报文类型、组播组地址、接收报文的接口等),建立和维护二层组播转发表,从而指导组播数据帧在数据链路层按需转发。
-
- 组播的各种选举
- 1. IGMPV2/V3的查询者
- 2. DR
- 3. DM的ASSERT
- 4.BSR
- 5. BSR发送信息,叶路由器选举RP的过程
- 6. Auto-rp MA选举RP的过程
- RPF
- 组播路由器收到组播流量就要做RPF检查
- 目的:
- 1.避免组播流量重复发送
- 2构建出最短无环的组播分发树SPT
- RPF检查
- 1.组播静态路由
- 2.DVMRP(现网中已经不存在)
- 3.MP-BGP
- IGP
- RPF规则总结(重要)∶
- 讨论:RP到最后一跳路由器之间是否也会进行RPF校验?为什么?
- 结论︰实验现象说明不需要进行((15.4.1T) RPF,在最后一跳路由器发*,G的时候,会以RP为查找目标,查询路由表,选出最短路径去往RP,当路由表中去往RP存在多条等价路径的时候,(猜测:1,比较IP地址;2,*,G表象的覆盖),总之,肯定会选出唯一的一条,否则组播报文会重复。
- PIM协议原理
- PIM概述
- 协议号:103, 组播地址:224.0.0.13
- PIM-DM基本概述
- 采用“推(Push)模式”转发组播报文。===自来水
- PIM-DM的关键任务:
- 建立SPT (Shortest Path Tree,最短路径树)。
- 主要工作机制:
- 邻居发现
- 扩散与剪枝
- 状态刷新
- 嫁接
- 断言
- PIM-SM基本概述
- 使用“拉(Pull)模式”转发组播报文。 ===牛奶
- PIM-SM的关键任务:
- 建立RPT (Rendezvous Point Tree,汇聚点树也称共享树)。
- 建立SPT (Shortest Path Tree,最短路径树)。
- 适用于组播成员分布较为稀疏的网络环境。
- 主要工作机制:
- 邻居建立
- DR竞选
- RP发现
- RPT构建
- 组播源注册
- SPT切换
- 断言机制
- 汇聚点RP (Rendezvous Point)
- 充当RPT树的根节点。
- 共享树中的所有组播流量都经过RP转发给接收者。
- 所有PIM路由器都要知道RP的位置。
- RPT及其建立过程
-
- 接收册DR与源侧DR
-
- SPT的建立过程
-
- PIM-SM的转发树
-
- Switchover机制
-
- (*,G)与(S,G)条目关系
-
- PIMv2 Bootstrap
- BSR工作原理:
- 1.C-BSR通过224.0.0.13组播地址,选出Active-BSR
- 2.选出的BSR也用224.0.0.13组播向外通告BSR地址
- 3.C-RP收到通告,会用单播把消息发向BSR
- 4.BSR收集到所有C-RP消息后,周期性通过224.0.0.13通告出去
- 5.所有叶路由器按照选举规则选出RP
- 路由器利用BSR发送的信息选择RP的过程:
-
- BSR工作原理:
- PIM概述
- 域间组播MSDP
-
- IPV6组播
- 1. IPv6的组播原理和IPv4的组播没有太大区别
- 2.但是IPv6组播引入了嵌入式RP的发现机制
- 3.同时也会生成虚拟Tunnel用于RP的发现和注册
- 4. PIM-SM的源向RP的注册,也是通过这个生成的虚拟接口完成的
- 5.在Cisco IOS中,tunnels在RP生成的时候也自动随之创建
- 6.每一个活动的RP有一个虚拟的Tunnel
- 7.在RP活动时,这个Tunnel一直存在
- 8.再IPv6组播中,MLD协议与IPv4组播中的IGMP协议功能相同,用于
- 发现接受者
- 9.IPv6只支持PIM-SM模式,不支持PIM-DM
- 10.RP生成方式只支持静态RP和动态BSR获取RP
- 查看命令
- show ip pim neighbor //组播邻居表
- show ip pim interface//查看哪些接口启用pim
- show ip mroute//查看组播路由表
- show ip mroute summary//查看组播路由表简洁
- show ip mroute count
- show ip rpf 1.1.1.1
- 查看命令
- 组播基础
十五、组播(Multicast)
最新推荐文章于 2025-03-19 11:36:39 发布