其次要解决的问题是如何接收组播信息,有时在同一网段中有多个组播组的成员。对于信息的发送方来说相当简单,但接收方却十分复杂。为了能够正确地接收感爱好的组播信息数据包,主机上的应用首先要申请特定组播组的成员。这种申请通过Internet组治理协议(Internet Group Management PRotocol,IGMP)传送到本网段上的路由器完成,如有必要,相关的信息还可能要传送到发送方的路由器,这取决于使用的组播路由协议。 这一步完成,接收主机的网络接口卡开始侦听与新组播组地址相关的数据链路层组播地址。路由器把由发送方送来的组播数据包一跳一跳地发送到有接收者的网段上的路由器,局域网路由器根据组播信息包中的组地址转换出与它相关的数据链路层地址,并用这个地址建立数据链路层的报文。接收方的网络接口卡和网络驱动程序侦听这个地址,收到该组播包后,将IP层的组播数据包取出,传向上层TCP/IP协议堆栈,从而使数据适合用户的应用。
要在网络上实现组播应用必须要有相应组播设备的支持。按照组播协议的分类在三层的组播协议主要有DVMRP、PIM和IGMP等,而在二层的组播协议主要用CGMP(Cisco Group Management Protocol)和IGMP监听。三层组播协议主要用于组播信息的转发,二层组播协议主要用于抑制局域网上多余的组播信息,在路由器以及多层交换机上一般实现三层的组播协议,而在不具备多层交换的交换机上一般只能实现二层组播协议。