IP(Internet Protocol) 是网络通信的基础。其主要根据IPv4和IPv6来进行区分,而其中的组播便是IP通信技术中较为重要和实用的一种。组播网络是由路由器和主机构成的网络,其实现组播通信的方式有三种不同的模型: IGMP-based组播模型、PIM-based组播模型和MBGP(Bordcast on Group Addresses)模型。
IGMP-based组播模型
IGMP(Internet Group Management Protocol)就是Internet组管理协议,是组播协议中使用最广、最常见的一种。在IGMP-based组播模型中,主机可以通过加入特定组来实现组播。当主机需要接收某个组播组的数据时,它会通过IGMP消息通知所在网络的路由器,请求加入该组播组。当路由器收到该消息后,就通过自身的IGMP协议来响应所在网络中的所有主机。当主机不再需要接收该组的数据时会发送一个离开该组的IGMP消息通知。当路由器收到该消息后,就会停止将数据转发给该主机。
PIM-based组播模型
PIM(Protocol Independent Multicast)是一种基于协议的组播协议,与IGMP-based组播模型有所不同。其实现的方式是将路由器分为两个不同的分类,分别为源点路由(protocol-driven)和分发点路由(join-driven)。主机和路由器都是通过加入某个组来实现对组播数据包的过滤和传送。在源点路由中,协议会向网络中的路由器发送源地址相关信息。而在分发点路由中,协议通过加入某个组的方式来实现对组播数据的转发。
MBGP组播模型
MBGP (Broadcast on Group Addresses)是互联网工程任务组IETF定义的一种集成式组播协议,也是一种基于协议的组播协议。MBGP利用路由器协商建立”源-组”路径,对属于该组的主机发送组播数据。另外,MBGP中实现了多播隧道(Multicast Tunnel),可以通过多播隧道来实现两个没有物理多播链路的网络之间的数据传递。
总结:三种IP组播模型各有千秋,例如:IGMP-based组播模型典型的一个特点是需要总控制器控制域内的全部主机和路由器,因此IGMP-based组播模型适合小型域网;PIM-based组播模型适合大型企业,以及需要在多级网络层次结构中部署的网络;而MBGP则适合大型ISP的网络,可以方便地在各个网络之间传输组播数据。
扫码咨询 领取资料