组播及实现
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
pc2
discard
可控组播的加入过程
主机
线卡 auth. msg Passed auth.
GSW
Router
pc1
IGMP join
IGMP join info msg Traffic Not Passed auth. IGMP join Traffic
pc1
Traffic IGMP join
pc2
IGMP Proxy (二)
IGMP Proxy (二)
IGMP报告 1
0 CPU
Host module
转发表
MAC地址 01-02-03 端口 0 1 3 5
Router module
IGMP查询 2
3
4
5
目录
组播概述 组播关键技术 组播协议 多级组播实现 可控组播 组播功能介绍
IGMP snooping IGMP snooping
hosts
routers
域内多播协议
DVMRP,PIM
域间多播协议
注:以下”域” 均指自治系统(AS)
MBGP/PIM-SM/MSDP
组播IP地址
组播地址范围 –224.0.0.0-239.255.255.255 – “D”类地址空间 • 第一个字节的高四位 = “1110” 保留组播地址 –224.0.0.0-224.0.0.255 –发送报文时 TTL = 1, 例如: • 224.0.0.1 子网的所有系统 • 224.0.0.2 子网的所有路由器 • 224.0.0.4 DVMRP路由器 • 224.0.0.5 OSPF路由器 本地管理组地址 –239.0.0.0-239.255.255.255 用户组播地址 –224.0.1.0-238.255.255.255
….. ….. …..
IGMP snooping IGMP snooping
IGMP Proxy
EPON EPON
IGMP snooping IGMP snooping
设备上的二级组播(一)
GSW
VDSL VDSL
IGMP snooping IGMP snooping
ADSL ADSL
设备上的二级组播(二)
组播分发树:共享树(一)
•共享树ST
–以某个路由器为根(RP或Core)到所有接收者的树。 –可以用(*,g)标示一棵共享树。一棵树被多个发送者共享,维护较少 的状态信息,但转发路径未必最优。树根的位置很重要。
A
Bቤተ መጻሕፍቲ ባይዱ
D (RP)
F
C
E
(RP)
PIM汇聚点 共享树
接收者 R1
接收者 R2
组播分发树:共享树(二)
Count=3 during interval
reset
组播模板配置
[create|delete] igmp profile <name> set igmp profile <name> [add|delete] {<GroupAddress> [preview|normal]} set igmp port <portlist> [attach|detach] profile <name>
IGMP Leave Process
host Traffic Traffic Leave 删组播表 snooping Traffic pc1 pc2 pc2 Proxy Traffic server
Traffic pc1 Traffic
Traffic
目录
组播概述 组播关键技术 组播协议 多级组播实现 可控组播 组播功能介绍
可控组播
可控组播目标:
用户认证机制,基于组播用户的控制 组播用户可以任意的加入或离开组播组; 详细的用户信息记录系统,包括信息显示,点播日志,点播统计等功能。 IGMP是一个只关心有无组播组,而不关心具体组播用户的协议。 对节目源的管理,基于节目源的控制 IGMPv3有详细的节目源组播规定,但目前广泛使用的IGMPv2没有这一设定
0X01005E010101 0X01005E000005
组播分发树:源树(一)
• 源树,也称最短路径树(SPT)
–以发送者为树根,到每一个接收者的最短路径构成一棵 转发树。 –可以用二元组(s, g)标示一棵源树。 –从发送者到接收者的路径最优,但需要维护较多状态信 息。
源 S2
A B D F
源 S1
节目源的配置管理
[add|delete] igmp group <A.B.C.D> vlan {<1-4088>}*1 set igmp group <A.B.C.D> bandwidth <0-20000> set igmp group <A.B.C.D> delayleave <0-300> show igmp auth group {<A.B.C.D>}*1
可控组播的实现
GSW
IGMP IGMP Proxy Proxy 管理模块 管理模块
PC
管理模块: 对控制模块下 载配置,并从控制模块接 收组播信息 控制模块: 根据从管理模 块下载的配置信息对端口 进行管理,并上报组播信 息
IGMP IGMP Snooping Snooping
…….
控制模块 控制模块
C
E
组播路由项 (S, G), iif, oiflist •S 源地址 •G 组地址 •iif 入接口 •oiifs 出接口列表
接收者 R1
接收者 R2
组播分发树:源树(二)
源 S1
源 S2
A B D F
C
E
接收者 R1
接收者 R2
组播路由项 (S, G), iif, oiflist •S 源地址 •G 组地址 •iif 入接口 •oiifs 出接口列表
S1 E0
X
S0 S2
报文从错误接口到达 丢弃数据报文! 丢弃数据报文
反向路径转发:RPF(四)
源151.10.3.21 发出的组播数据报文
S0 S1 E0 S2
RPF检查成功!
单播路由表 网络 接口 151.10.0.0/16 S1 198.14.32.0/24 S0 204.1.16.0/24 E0
组播信息显示(一)
显示当前组信息 show igmp group {<A.B.C.D>}*1
组播信息显示(二)
显示端口当前信息 show igmp port {<portlist>}*1
组播预览
set igmp preview count <1-16> during <1-255> interval <1-255> reset <1-255> {<gruoupaddress>}*1 set igmp port <portlist> preview reset show igmp preview
线卡
可控组播的加入过程
host Line Card Val. msg Passed auth. pc1 IGMP join IGMP join info msg Traffic Not Passed auth. IGMP join Traffic GSW Router
pc1
Traffic IGMP join
IGMPv2 (一)
IGMPv2协议报文
• TYPE
Query : 0x11 Report: 0x16 Leave : 0x17
IGMPv2 (二)
加入一个组
H1 H2 224.1.1.1 H3
报告
Host sends IGMP Report to join group
IGMPv2 (三)
维护这个组
组播MAC地址
IP地址到MAC地址的映射: 地址的映射
此5位地址不作映射,因此32个IP 组播地址映射成一个MAC地址 32位IP组播地址 1110
IP组播地址后23位 映射到MAC地址中 48位MAC地址(以太网/FDDI) 0000000100000000010111100
例如: 225.1.1.1 238.0.0.5
组播技术及实现
2007-00-00
目录
组播概述 组播关键技术 组播协议 多级组播实现 可控组播 组播功能介绍
组播概述
组播协议允许将一台主机发送的数据通过网络路由器和交换机复制到多个加入此组播 的主机,是一种一对多的通讯方式。
组播与单播的对比
IP Multicast体系结构
应用程序/多播地址 主机-路由器协议 (IGMP)
数据报文从正确的接口到达! 向所有出接口 (即分发树的下游)转发
目录
组播概述 组播关键技术 组播协议 多级组播实现 可控组播 组播功能介绍
IGMP &MLD
IGMPv1 RFC1112 规定了HOST如何加入组播组; IGMPv2 RFC2236 增加了如何HOST离开组播组的规定 IGMPv3 RFC3376 增加了组播源的管理 MLDv1 RFC2710 IPv6版本的IGMPv2 MLDv2 RFC3810 IPv6版本的IGMPv3
源 S1
源 S2
A B D (RP) F
C
E
(RP)
PIM汇聚点 共享树 源树
接收者 R1
接收者 R2
反向路径转发:RPF(一)
在构造多播树的过程中,路由器接收到一个数据包,要对它执行RPF (Reverse Path Forwarding)检查。具体过程为:路由器r获得该多播数据包的源地址s和进入路由器时 的接口i,然后r执行“逆向转发检查”:假想要把数据包用单播方式从r发送到s,查找路 由表,看是不是会从接口i发送出去,若是,则RPF检查通过,接收并转发该数据包; 否则RPF检查失败,丢弃该数据包。 这样,路由器可以确保自己在多播树中“入射”的路径只有一条,并且是到发送者最优的 那一条。 从全局来看则保证了构造的结果没有环路,是一棵树。
• 主机向224.0.02发送离开组消息(包含离开的组) • 路由器向这个组(224.1.1.1)发送特定组查询 • 3秒钟内没有收到该组的报告 • 组224.1.1.1超时(离开)
IGMP Snooping (一)
IGMP Snooping,就是监听IGMP协议包,提取相应的信息,形成组播成员关系表,然 后对组播业务按照组成员关系进行转发,保证组成员收到正确的组播业务,而其余主 机无法收到。 IGMP Snooping相对路由器和主机是透明的,它仅仅监听两者之间的IGMP报文,来建 立自己的组播成员关系表。
反向路径转发:RPF(二)
举例: RPF检查
A
源 151.10.3.21
B
C
A
组播报文
RPF检查失败 报文从错误接口到来!
反向路径转发:RPF(三)
源151.10.3.21 发出的组播数据报文
RPF检查失败!
单播路由表 网络 接口 151.10.0.0/16 S1 198.14.32.0/24 S0 204.1.16.0/24 E0
discard
目录
组播概述 组播关键技术 组播协议 多级组播实现 可控组播 AN5116组播功能介绍
AN5116可控组播主要功能
组播基本协议:IGMP Proxy 组播信息显示:当前组播组及用户信息 组播配置模板功能 组播信息统计和日志记录功能 组播VLAN管理功能 组播带宽管理功能 组播预览功能
IGMP Snooping (二)
IGMP报告 1 CPU 0
转发表
MAC地址 01-02-03 端口 0 1 3 5
IGMP查询 2
3
4
5
IGMP Proxy (一)
在组播路由器和主机间行使代理的功能。在网络侧,组播代理可视为 一台主机,而在用户侧,组播代理设备可以视作一台组播路由器。 组播代理拦截用户和路由器所发出的组播协议报文。并维护自己的组 播转发表
224.1.1.1 H1 224.1.1.1 H2 224.1.1.1 H3
X
抑制 报告
X
抑制 查询
• 路由器周期性的向主机侧发出查询报文(QUERY) • 组的其他成员监听到报告后抑制报告发送 • 主机发送单个组的报告(REPORT)
IGMPv2 (四)
离开组播组(IGMPv2)
H1 H2 224.1.1.1 离开组报告 #1 224.0.0.2 特定组查询 224.1.1.1 #2 H3
用户端口的配置管理
set igmp port <portlist> control [enable|disable] set igmp port <portlist> group limit {<0-25set igmp port set igmp port <portlist> bandwidth {<0-30000>}*1 {[default]}*1 show igmp port {<portlist>}*1
IGMP Join Process host pc1 pc2 pc1 pc2 Join Join Join Traffic pc1 pc2 Traffic Traffic Write forward table snooping Query Proxy Query server
Traffic
设备上的二级组播(三)