论文部分内容阅读
网络功能虚拟化(Network Functions Virtualization,NFV)将网络功能(NetworkFunction,NF)软件化并通过虚拟化的方式部署在通用服务器上,通过动态的服务编排和按需的资源调度有效解决传统网络服务部署僵化和高成本的问题。在开放的NFV环境下,服务链的部署具有高动态性。在服务链部署时用户可根据功能需求动态编排服务,这需要准确、高效的对服务链中各NF的顺序进行优化编排和验证;服务链部署后,准确诊断过载的NF节点并进行资源调整对提高服务质量和优化资源利用率具有关键作用,而对负载进行准确高效的调度和迁移可保证资源调整后集群内多个节点的服务一致性。 通过服务链自动化的编排方法与负载调度方法来满足服务链的高动态部署要求已成为研究热点,然而NF多样的行为和基于状态的包处理模式给上述工作带来了巨大挑战。本文主要从服务链编排与验证方法、网络功能过载诊断方法和负载迁移机制等三方面开展研究。 服务链编排与验证方法研究。提出了一种静态的服务链编排与验证方法,方法基于分层模型并使用串行求交操作对冲突依赖关系进行检测,模型采用动作域、包域和域值解耦的设计可描述各类NF行为,多规则聚合建模和三个域串行求交可准确、高效的检测冲突依赖关系;方法使用偏序关系对服务链顺序进行描述,基于双表结构利用必选关系对可选顺序关系进行多轮排除和验证,可将冲突依赖关系等价转换成偏序关系,利用哈斯图在O(n)时间复杂度下完成服务链的优化编排和验证(n为服务链长度)。通过对开源服务链策略验证表明上述方法可以准确的编排包含各类NF的服务链并定位冲突规则,3秒/条的编排效率完全满足NFV白皮书对服务链编排需达到秒级的要求。 网络功能过载诊断方法研究。提出了基于多应用层指标的过载诊断方法,方法使用基于包分类处理的旁路测量机制,NF收包后对测量相关数据包进行识别并旁路转发,可在不影响NF服务质量和正确性的前提下准确测量应用层各项指标;为准确的诊断过载,使用了基于过渡态的诊断方法避免延迟抖动给诊断准确性造成影响,通过诊断状态机自动记录和学习NF过载与非过载时的延迟区间,通过过渡状态的多次确认可避免因延迟抖动造成的错误状态转换和延迟学习。实验结果表明延迟指标测量的最大误差率仅为0.7%,对各类过载场景诊断的准确性和实时性相比于现有诊断系统都有明显提升。 负载迁移机制研究。提出了分布式并行流迁移机制,在此基础上设计实现了透明流迁移系统,系统利用迁移协议控制分布式节点对迁移数据包带状态的处理行为从而解耦了流状态和数据包两个迁移操作,在保证多实例服务一致性的前提下使流状态和数据包以P2P的方法并行迁移,提升负载迁移和调度效率;同时系统将迁移功能进行了统一抽象并卸载到轻量级的中间件中,实现了迁移对NF的透明化。真实网络环境下的实验表明系统迁移效率相比于现有迁移系统OpenNF最高可提升35倍;而包延迟、网络转发和缓存开销分别降低了87%、92%和97%,迁移对TCP性能影响有限且可在毫秒级内恢复;TFM Box引入的CPU额外开销不超过虚拟交换机CPU开销的30%。