论文部分内容阅读
最近几年来,个人用户网络流量需求越来越多,但是传统移动运营商的营收却不容乐观,究其原因是因为用户越来越高的网络要求使得运营商不断增加布置新设备的成本,控制底层设备成本的增加以降低成本成了运营商们普遍关心的话题,网络功能虚拟化(Network Function Virtualization,NFV)技术随之兴起。其作为一种可以广泛应用的技术手段,通过将传统运营商持有的网络功能硬件解耦和,将网络功能从专有的硬件上剥离开来,部署在X86通用服务器上,并依靠软件来实现相应的虚拟网络功能,以向外提供服务。这样可以根据实时的需求进行资源的有效调度,达到降低设备成本的需要。而在实际应用部署中,具体的NFV使用还有很多的问题尚未解决,比如通用服务器一般用于处理传统的IT业务,其相比于专有硬件,在处理NFV中的高速率转发业务的时候,面临着严重的性能瓶颈,需要有针对性地分析在实际使用中如何提高NFV的使用效率。在单服务器中,数据包的整个转发流程会有多个过程会对网络功能的使用效率造成影响,而采用不同的虚拟化方式,也将对后续网络功能的部署、迁移产生不同的影响。本文针对NFV在实际部署中的高性能需求,对实际的部署架构进行了层层分析,并对可能造成性能瓶颈的数据转发平面和虚拟化平面进行了分析,力图实现高性能地在通用服务器上进行NFV部署。在虚拟转发层,选取了业内应用广泛的三种软件交换技术DPDK-OVS、NetMap和Click来进行部署,针对DPDK和OpenvSwitch两种工程实现技术整合以及性能优化,针对NetMap在NFV场景下的使用改进了相关的内部数据结构进行优化,通过构建Click基础组件链构建Click软件路由器,实现了三种数据转发平面后,对三种数据平面的性能进行了对比测试和分析。在虚拟化方式的选择上,选用了KVM虚拟化技术和Docker容器技术进行分析,在实际的宿主机上部署了两种虚拟化方式,优化了相关了网络连接模式,并对两种虚拟化方式进行了性能测试,对结果进行了分析。最后,搭建大规模实验平台,针对不同的数据转发平面和虚拟化方式,部署了两种NFV实验平台,对虚拟网络功能进行了功能测试,对网络性能和容灾性能进行了测试对比分析,最后对三种数据转发平面和两种虚拟化方式在NFV技术落地中的选择提出了建议,以为后续NFV技术高效率地部署落地提供更好的支持。