IP多点广播的主机扩展( 六 )


类型
有八种IGMP报文∶
1=创建组要求
2=创建组应答
3=参加组要求
4=参加组应答
5=离开组要求
6=离开组应答
7=确认组要求
8=确认组应答
代码
在一个创建组请求消息中代码字段指出新的主机组将是公共的或私有∶
0=公共的
1=私有
在所有其他的请求消息中,代码字段包含零 。
在一个回答信息中,代码字段规定要求的结果∶
0=请求答应
1=要求被拒绝,无资源
2=要求被拒绝,无效代码
3=要求被拒绝,无效组地址
4=要求被拒绝,无效存取要害字
5-255=要求挂起,几秒后重试
校验和
EGP校验和是从EGP版本IGMP类型开始的IGMP报文中16位字二进制反码和的16位二进制反码值 。
为了计算该校验和,校验和域应该为零 。
标识符
在一个确认组请求消息中,标识符字段包含零 。
在所有其他的请求消息中,标识符域包含一个值以便将来自同一个主机的其他的要求其他的要求与该要求区别开来 。
在一个回答信息中
,标识符域包含与在对应请求消息中同样的值 。
组地址
在一个组创建请求报文中,组地址字段包含零 。
在所有其他的请求消息中,组地址域包含一个主机组地址 。
在一个组创建应答报文中 , 组地址域或包含新的指定的主机组地址(假如该要求被答应)或包含零(假如被拒绝) 。
在所有其他的应答报文中,组地址域包含与在对应请求报文中同样的主机组地址 。
存取要害字
在一个组创建请求报文中,存取要害字字段包含零 。
在所有其他的请求消息中,存取要害字域包含分配给主机组在组地址域识别的(零对于公共的组)存取要害字 。
在一个组创建应答报文中 , 存取要害字域或包含一个非零的64比特编号(假如要求一个私有组被答应)或包含零(假如被拒绝) 。
在所有其他的应答报文中,存取要害字域包含与在对应要求中相同存取要害字 。
协议规则
请求报文只通过主机发送 。应答报文只通过多点播送代理发送 。假如一个主机收到一个前面规定的四种应答类型之外的一种类型的IGMP报文,该报文被丢弃 。
一个请求报文发送时具有它的IP目的地字段 , 该目的地字段包含闻名的多点播送代理组的地址 。IP生存时间(TTL)域通过发送者置1初始化,以便约束要求的范围为近的邻机多点播送代理 。IP源地址字段包含发送主机的专用IP地址 。
应答报文只在响应一个请求报文时发送 。
IP目的地址域的包含该主机(发送该对应要求)的私有地址 。(一个组确认应答可能同时被发给在它的对应组确认要求中规定的主机组地址.)IP源地址字段包含该应答多点播送代理的专用IP地址 。
当一个主机发送一个新的组创建、组参加、或离开组请求报文时,它供给一个任意的标识符 , 该任意的标识符在最后的T0秒内没有用 。(仅仅为标识符在每个新的要求加1就足够了.)该主机初始化一个计时器为T1秒并且初始化一个重复传输计数器为零 。假如具有一个匹配标识符应答报文没有在计时器到期之前收到,它被重新设置为T1秒并且该重复传输计数器加1 。假如计算器小于N1该主机重复传输该具有相同标识符的请求报文 。假如该计算器等于N1,该主机放弃;假如该要求将创建或参加一个组,它被认为失败;假如该要求将离开一个组,它被认为得逞;
假如一个"要求挂起"代码在一个匹配一个创建组、参加组或离开组要求回答中收到,计时器重新设置为由该代码规定的数值 , 并且重复传输计数器重新设置为零 。新的定时值仅应用于一个超时时间间隔——假如该计时器到期,它重新设置为T1秒,该计数器加1,并且要求被重传 。

推荐阅读