IGMP用于router和host之间。
all host:224.0.0.1
all router:224.0.0.2
V1没有最大响应时间,没有leave信息。最大响应时间0.1-25.5秒。
0x11:query
0x16:version 2 report
0x12:version 1 report
0x17:version 2 leave message
同一个网段有多个router时,IP地址小的做为queryer
IGMP snooping、GMRP均用于交换机避免以broadcast方式转发multicast包。
IGMP snooping是交换机嗅探IGMP包,从而建立起转发表来,一般是软件处理。影响交换性能。
CGMP是cisco的一个专有技术,同样用于交换机避免以broadcast方式转发multicast frame.
CGMP是cisco路由器和交换机之间的一个通讯协议,路由器发送join和leave消息,交换机仅仅只是对这些消息进行操作。
CGMP中的相关概念:
GDA:group destination address,48位,可以是0或group mac
USA:unicast source address,48位,0或router mac或member mac
CGMP包解析:
类型|GDA|USA|功能
join|zero|router mac|标志端口为multicast路由器端口
join|groupmac|membermac|通知将该member加到该group中
leave|groupmac|membermac|将member从group中移除
leave|GROUP MAC|zero|通知交换机从cam中将组移除
leave|zero|routermac|从CAM中移除所有的组
leave|zero|zero|从所有的交换机中移除所有的组
CGMP frame的源地址是发出的路由器的MAC,目的MAC使用保留的multicast地址:0100.0cdd.dddd,使用snap封装,OUI为0x0000c,类型域为0x2001
multicast路由协议的一般讨论:
MOSPF:dense mode,explicit join,source-based tree,
DVMRP:dense mode,,implicit join,SBT
PIM-DM:dense mode,implicit join,SBT
PIM-SM:Sparse mode,explicit join,Shared trees
CBT(core-based tree):Sparse mode,explicit join,Shared trees
解决的主要问题是维护对于给定的(S,G)的upstream和downstream关系。
unicast路由协议解决的问题是如何才能离目的地更近,而multicast路由协议解决的问题是如何才能离源最近。这也是RPF这个词的由来。
最简单的办法是使用RPB,即向除upstream外的所有的downstream接口转发。进化为TRPB,即只向有member的downstream转发,最后就可以形成一棵以离源最近的router为根的树。称为RPM。reverse path multicast.这棵树是动态的,multicast协议的根本目的就是为了维护这棵转发树。
DM与SM:DM指在一个domain中member的比例比较大,一般适用于LAN/compus,SM指一个domain中member的比例比较小。
隐式加入:发送者初始化。broadcast-and-prune or flood-and-prune.(downstream接口存在forward和prune两种状态,prune状态时有一个超时timer.)
显式加入:接收者初始化。
source-based tree:每个源一棵树
shared tree:多个源共享一棵树,RP,发送者注册到RP,使用(*,G),增加扩展性,考虑200个组,每个组150个源。。。
Multicast Scope:定义了multicast流量所能达到的边界。
TTL scope,限制downstream的TTL阈值,必须大于该阈值才会转到到downstream。缺点
是不灵活,难以实现,可能会失效。
在mbone中常使用,阈值定义如下:
0:同一主机
1:限制在同一子网
15:限制在同一站点
63:限制在同一地区
127:世界范围内
191:世界范围,限制带宽
255:不做限制
Administrative Scoping(类似于RFC1918定义的私有IP地址。
RFC2365。建议和239/8做为保留地址。
其中:239.255/16做为site范围内,239.192/14作为组织范围内。
需要注意不要让这些group泄漏到公众网络。