文档介绍:网络协议分析( TCP/IP ) 第六章 组播协议要求: 1、掌握组播群组的概念和特点; 2、掌握 IP 组播编址机制; 3、掌握 IGMP 协议的作用及报文功能; 4、掌握组播选路技术: RPF 、 TRPF 、剪枝、接枝、组播树; 5、掌握组播选路算法: RPM 、 CBT ; 6、了解组播路由协议: DVMRP 、 PIM-DM 、 PIM-SM 一、组播概述?当使用组播通讯时,数据源可以只发送一次,而被多个接收者接收,这些接收者可能跨越多个网络和网段。?目前的应用:远程教学、视频会议、信息发布、网络游戏。?使用组播与特定接收者请求和交换信息。如: RIP 、 OSPF 通过组播与相邻路由器交换路由信息,进行邻居发现。组播的主要特点?1、单播和广播都可看作组播的特例。?2、组播群组可跨越多个物理网络,而广播仅限于一个物理网络或共享同一前缀的若干网络。?3、每个组播群组共享一个唯一的 D类地址。?4、群组成员是动态的,可随时加入或离开。?5、任意主机可向任何群组发送数据。 IP 组播要解决的问题?1、组播编址() ?2、有效的通知和管理和交付机制( IGMP ) ?3、有效的网间转发机制(组播路由) ( DVMRP\MOSPF\PIM-SM ) ?4、可靠组播(略) 二、组播地址?组播地址格式 1110 群组标识 0 8 16 24 31 ?编址机制(1)每个组播群组对应一个唯一的 D类地址(2)地址没有结构,也没有管理信息(3)组播地址只能用作目的地址(4)不生成关于组播数据报的 ICMP 报文(5)地址分两类: ①永久分配; ②临时分配永久地址: 用于 的主要服务和基础设施的维护,如 ~ 专用与组播路由协议和群组维护协议。临时分配: 在需要时创建,当组成员为 0时丢弃三、 群组管理协议 IGMP ?(一) IGMP 协议概述?1、作用:在主机和路由器之间使用, 负责报告动态组播组成员的信息。包括成员的加入与退出,成员查询。?2、 IGMP 是 IP 层的一部分。目前有三个版本? IGMP 版本 1: RFC1112 。 1989 ? IGMP 版本 2: RFC2236 。 1997 ? IGMP 版本 3: RFC3376. 2002 (二)主机和组播交付 1、按照是否可以收发组播数据,将主机分三个级别 0级:没有组播能力 1级:能发送但不能接收组播数据报 2级:既能发送又能接收 2、本地组播主机把数据报放在帧中并使用硬件组播地址。 3、非本地组播主机把数据报发给组播路由器,后者负责网间转发。问题:主机并不能确定本次组播是否为本地的。 4、解决方法主机仅在本地组播,由组播路由器决定是否转发。?主机加入群组,向本地组播路由器发送 IGMP 报文。?为适应成员变化,组播路由器周期性轮询本地主机。四、 IGMP 报文格式(协议实现) 类型最大响应时间校验和群组地址 1、 IGMPv1 与 v2 报文格式( 8字节) 版本未用校验和群组地址类型 V1 与 V2 报文字段含义? v1 : ?版本: IGMP 版本 V1 ,为 1 ?类型: 1= 成员查询、 2= 成员报告? v2 : ?类型: 0x11= 成员查询、 0x12= 成员报告( V1 兼容) 0x16= 成员报告、 0x17= 退出群组?最大响应时间:成员推迟响应查询的最大时间间隔, 以 秒为单位。( p158 说明) 2、 IGMPV3 报文? IGMP 定义了 5中报文类型: ? Ox11= 成员查询、 0x22= 成员报告? 0x16= 成员报告、 0x17= 退出群组( v2 兼容) ? 0x12= 成员报告( V1 兼容) 类型最大响应时间校验和群组地址例: v3 成员查询报文格式: p159 源地址数( N) ……源地址 1 QRV 保留 S QQIC 源地址 n