论文部分内容阅读
IPv4 向IPv6过渡是一个漫长的过程,在相当长的时期内,IPv4和IPv6将会并存.NAT-PT是实现IPv4/IPv6互通的一种重要转换机制.运行NAT-PT协议的转换设备通常位于一个IPv4和IPv6网络边界上,这样从一个网络到另一个网络进出的数据包都要穿过该设备.这种配置使得NAT-VT往往成为IPv4/IPv6通信的性能瓶颈.提升转换网关的性能是实现.IPv4向IPv6平滑过渡的关键.随着网络处理器的普及,基于网络处理器平台实现各种网络设备已经成为一种趋势.本论文围绕基于网络处理器平台实现高性能的IPv4/IPv6转换网关的相关问题展开研究,对于推动IPv4向IPv6的过渡具有重要意义和实用价值.
本文综述各种IPv4/IPv6转换与互通机制,重点分析NAT-PT机制,提出基于网络处理器平台的高性能NAT-PT转换网关的设计方案.根据网络处理器的体系结构特点,研究多个微处理器间的任务分配算法,提出根据网络数据流比例和不同类型包转换复杂度的任务分配算法,并设计相应的微引擎流水线.针对应用层转换,提出包括重传包和乱序包处理的应用层转换网关包序号控制算法,实现面向连接的TCP数据包的序号重排.最后根据IPv4/IPv6转换网关数据包转换的不对称性,提出转换网关设备的性能测试指标和测试方法.
论文的主要贡献和创新性工作包括以下几个方面:
1)提出了一种基于IXP2400的NAT-PT转换网关的设计方案.基于Intel IXP2400网络处理器平台,依据分层模块化的系统设计思想,提出了高性能NAT-PT转换网关的设计方案.该方案将不同的处理模块分布到数据、控制和管理三个层面.在性能要求高的数据层面,根据处理延迟和复杂性的不同将处理模块划分成快速通道和慢速通道,并且,每个功能模块都采用了各自定制的资源分配和调度策略,从而保证系统性能的优化,以达到千兆线速的设计目标.
2)提出了网络处理器中多个微处理器间的任务分配算法.根据网络数据流量特点,按照不同类型数据流占网络流量比例和不同类型包转换复杂度的不同,实现转换任务在网络处理器中多个微处理器间的分配.对送交微引擎的任务,按阶段进行划分,设计了多级并行流水线方案.通过测试与分析,这种任务分配算法可以保证网络层数据包的线速转换,并使按网络流量比例计算的数据包平均延迟最小.
3)提出了包括重传包和乱序包处理的应用层转换网关包序号控制算法.在IPv4/IPv6协议转换的过程中,应用层协议转换可能会导致数据包内容和包长度发生变化.对于采用面向连接的TCP作为传输层协议的数据包,当数据包长度发生变化时,转换网关必须调整对应TCP会话中数据包的序号和确认序号.对通信中出现的重传和乱序包,如果不加以处理,将导致数据包序号发生错误的偏移,使得通信不能正常进行.本算法对通信中出现的重传和乱序包进行检测和处理,保证了TCP数据包序号的正确控制,并通过建立高效哈希表,提高了包序号处理的速度.4)提出了一系列转换网关性能测试指标.由于IPv4/IPv6双向处理的不对称性,通常的网络设备测试指标,不能准确反映转换网关设备的性能.针对:IPv4/IPv6转换的不对称性特点,提出了能综合评价转换设备性能的测试指标:双向平均延迟、混合平均延迟和加权混合延迟.基于所提出的测试指标,给出了相应的测试方案,并对测试结果进行了分析.
在以上研究基础上实现了基于IXP2400网络处理器平台的高性能转换网关系统,该系统作为中科院知识创新工程重要方向性项目研究成果之一应用于中科院IPv6试验网和重庆网通信息港IPv6城域示范网等,能够满足IPv6试验网对IPv4/IPv6线速转换的需要.