摘要:要使IPv4主机与IPv6主机进行组播通信,必须做协议转换工作。
采用多播转换网关(MTG)技术方案能较好地实现IPv4网和IPv6网之间的组播互通。方法是将MTG部署在IPv4和IPv6网络的边界,将IPv4网络和IPv6网络视为地位对等的两个异构网络。IPv6主机可以加入组播源位于IPv4网络的组播组,IPv4主机也可以加入组播源位于IPv6网络的组播组。在IPv4中,MTG作为IPv6的代理,参与IPv4的组播;同样,MTG在IPv6中则作为IPv4的代理。在MTG系统内部,两个代理之间进行协议转换。
关键词:组播;IPv6协议;过渡;网关;转发器
在下一代互联网中,已确定IPv6必须实现对组播的支持,并安排了大量的组播地址空间。虽然在IPv6开始应用后纯IPv6节点会越来越多,但许多IPv4节点依然会因为它们的成功运作而继续存在。因此短期内IPv6无法全部替换IPv4,两者必定会在很长一段时间内共存。在这一漫长的共存期中,按照IPv6的部署策略,纯IPv6网络将会区域性地不断出现。此时,网络将呈现出纯IPv4网络和纯IPv6网络共同存在,互相交错的局面。
因此,必须有一套机制来保证IPv4与IPv6节点能直接通信以实现平滑过渡。目前,已有相当多的过渡技术被提出,但它们只适用于单播通信,还不能适用于组播通信。虽然组播通信的过渡技术尚未成为人们研究工作的重心,但作为一个很有实际应用意义的研究方向,已经开始被越来越多的组织和团体关注[1-4]。
1 组播过渡技术
1.1双栈技术
双栈的组播过渡解决方案实际上是纯IPv4组播网和纯IPv6组播网两者的叠加。单播中,可以将服务器配置成双栈,以便纯IPv4和纯IPv6的主机能够轻松地访问它。同样,组播源也可以配置成双栈,同时向IPv4组和IPv6组发送数据流,使运行不同协议栈的所有主机都能接收组播报文。
在双栈网络上IPv4和IPv6组播可以同时部署。IPv4和IPv6组播能同时运行在路由器和主机上,并且能同时存在于同一网络链路;路由器也能同时成为IPv4组和IPv6组的汇聚点(RP)。
对于简单的单源情况,如果数据流只存在于一个封闭环境中,所有潜在接收者都支持同一IP协议,则源只需要使用这一IP协议。在更多的开放环境中,潜在接收者及其支持的IP协议是未知的,为了确保所有接收者都能够接收,需要有一个IPv4源和一个IPv6源,此时必须保证两个源都使用同一源数据。
只有少量源时,可以利用双栈技术,将所有源配置成双栈,同时向IPv4组和IPv6组发送报文。但在一个视频会议中,几乎每个人都要同时接收和发送数据,并且一部分参与者使用纯IPv4,另一部分使用纯IPv6,在这种情况下双栈技术将无能为力。另外,使用双栈技术时,带宽的耗费将是原来的两倍。
双栈技术不需要额外的设备,也不需要对组播数据做额外的转换。因此,是最容易实施的一种方案。适用于应用环境中不需要IPv4主机与IPv6主机之间进行通信的情况,如内容分发。
1.2协议转换技术
协议转换技术可以在无需改动基础设施的情况下,使IPv6主机能像与IPv6组播组通信一样,使用普通的IPv6组播协议与任何IPv4组播组通信。其核心思想是:在使用一种IP协议的源和使用另一种IP协议的宿之间的路径上放置一个或多个转换设备。在极少数的情况下,转换也在发送或接收的主机上完成,这主要针对运行在双栈主机上但仅支持一种IP协议的应用程序。常用的转换方法有以下几种:
(1)转发器
IPv4中,转发器(Reflector)方案在无法全局组播时经常被采用。虚拟房间视频会议系统(VRVS)是一个典型的例子,它在核心网上采用纯组播,在无法直接通过组播的区域设置转发器作为此区域的组播代理。核心网与转发器之间采用单播方式连接,转发器与端系统之间可以采用纯组播也可以使用单播。
IPv4-IPv6组播转发器在IPv4和IPv6组播之间进行转换(Reflect),而不是在单播与组播之间进行转换。给定IPv4组地址和端口及IPv6组地址和端口,转发器将同时加入两个组并监听相应的端口,从一个组接收到的所有数据将重新发送(Resend)至另一组。
按照IPv6的过渡进程,转发器可以有以下两种部署方案:当内容提供者所使用的协议没有被广泛支持,并且主机或应用程序不支持双协议时,转发器位于源附近;当接收者使用不同于源的另一种协议时,那么在接收者附近放置转发器也是非常有效的。
转发器方案主要缺陷是性能较低,不能支持大规模的组播应用。另外它必须为每个会话都启用一个实例,即使没有接收者,它仍执行接收重发的过程。
因为上述的局限,转发器可以被用来为多个组播组工作,但同时工作的会话数量有限。如果利用转发器在网络上提供服务,用户必须联系管理员,申请在有限的时间内分配一个会话;或者可以像隧道代理(TunnelBroker)一样,使用Web认证等辅助措施来使会话分配过程自动化。