10月中旬(xun), Open Source Networking Days(开(kai)源网络(luo)日(ri))在南京中国无线(xian)谷如期举(ju)行。烽(feng)火(huo)电(dian)信(xin)云(yun)(yun)产品总(zong)监(jian)高(gao)璐(lu)晓(xiao)以”云(yun)(yun)化网络(luo)高(gao)性能转(zhuan)(zhuan)发(fa)技术”为题,向与会嘉宾分享了烽(feng)火(huo)在FitTelecomOS电(dian)信(xin)云(yun)(yun)高(gao)性能转(zhuan)(zhuan)发(fa)领域的研发(fa)路线(xian)和经验(yan)总(zong)结。
未来5G网(wang)(wang)络将(jiang)进(jin)一(yi)步的云(yun)化,借助数字化技术,网(wang)(wang)络架(jia)(jia)构(gou)将(jiang)进(jin)一(yi)步分离为:控制(zhi)云(yun)、接入云(yun)和(he)(he)转发云(yun)。5G网(wang)(wang)络改变传统基(ji)于专用硬件网(wang)(wang)络设备基(ji)础平台,采用虚拟资(zi)源池化、软件定义网(wang)(wang)络和(he)(he)云(yun)计算等技术,构(gou)建跨(kua)功能(neng)平面统一(yi)资(zi)源管理(li)架(jia)(jia)构(gou)和(he)(he)多业(ye)务承载(zai)资(zi)源平面,解决资(zi)源可(ke)扩展性(xing)、组网(wang)(wang)灵活性(xing),业(ye)务敏捷部署(shu)等基(ji)础性(xing)问题。
随着服务(wu)上云,业务(wu)数据上云使端到端的流量(liang)(liang)在(zai)(zai)云数据中心汇聚。虚拟化基础设(she)施层对这些流量(liang)(liang)的处理(li)性(xing)能成为业界考量(liang)(liang)云平台(tai)能力(li)的一个重要维度(du)。具体来(lai)说,电信云平台(tai)虚拟化的高性(xing)能主要体现(xian)在(zai)(zai)转发性(xing)能和(he)虚拟计算性(xing)能领域。
在转(zhuan)发性(xing)能方面,主要涉(she)及到vSwitch技术、硬件加速技术。很多厂家(jia)电(dian)信云平台(tai)的(de)虚拟(ni)交换都是基于OVS做增(zeng)强,EMC(exact match cache精(jing)确匹配(pei)表)是OVS 三级转(zhuan)发中使用频率(lv)(lv)最高的(de)第一级转(zhuan)发,但其(qi)cache空间小(8K),利(li)用率(lv)(lv)低(50%),导致cache中缓存(cun)更新频繁,性(xing)能低下。针对这一弊端,烽(feng)火通过提(ti)高cache的(de)利(li)用率(lv)(lv),优化hash算(suan)法降低value的(de)冲突(tu)率(lv)(lv)进而提(ti)高性(xing)能。
在(zai)(zai)加速虚(xu)拟(ni)网卡(ka)技(ji)术(shu)选择上(shang),烽火采用AVP(accelerated virtual port风河加速虚(xu)拟(ni)网卡(ka)设(she)备)技(ji)术(shu),相(xiang)较于vhost-user(用户态(tai)通道控(kong)制协议)其包处理流程更加简(jian)洁高效,在(zai)(zai)吞吐量和时延上(shang)都有明显(xian)优势。
在10Gbps流量下,AVP在256字节短包时较(jiao)vhost-user提高1/3吞(tun)吐量,达到(dao)线性吞(tun)吐;混合包平均时延15us,远低于(yu)vhost-user的30us。
在硬件加(jia)速技术选择上,烽火(huo)采用OVS hardware offload(即(ji)OVS数据交换(huan)功能从host的CPU上下沉到(dao)智能网卡),相较于(yu)hardware offload(硬件卸(xie)载)方(fang)案(an),烽火(huo)电(dian)信云方(fang)案(an)具备:性(xing)能好,充分(fen)利用SmartNIC(智能网卡)处(chu)理(li)能力(li);支持(chi)热迁移;适(shi)应性(xing)、兼容性(xing)好;生态(tai)环境较好(支持(chi)Openstack Queen版本)的特点。
在虚拟(ni)计算性(xing)能增(zeng)强上,主要包括:VMCS(虚拟(ni)机控制块)的(de)vCPU控制技(ji)术(shu),cache绑定和刷新技(ji)术(shu)、vCPU线程绑定技(ji)术(shu)。
通过VMCS vCPU的(de)(de)(de)控(kong)制技术来提高(gao)vCPU在non-root guest(虚(xu)拟(ni)机运行(xing)态)模(mo)式的(de)(de)(de)处理(li)能(neng)力来减少虚(xu)拟(ni)机vCPU模(mo)式切换、exit退出次数,从而达到降(jiang)低损耗,提高(gao)vCPU处理(li)能(neng)力的(de)(de)(de)目的(de)(de)(de)。
虚拟机(ji)vCPU的cache可以在大页内存和(he)透传的CPU cache里动(dong)态(tai)切换且在这两个cache中数据动(dong)态(tai)刷新(xin),减少虚拟机(ji)cache miss次数,达到(dao)提高虚拟机(ji)性(xing)能(neng)的目的。
基(ji)于KVM的(de)Cgroups(control groups 是Linux内核提(ti)供的(de)一种可以限(xian)制、记录、隔离进程组所使用(yong)的(de)物理资源的(de)机(ji)制)控(kong)制技术实现vCPU线(xian)程绑(bang)定,这样减少(shao)QEMU(虚拟化模拟器)vCPU线(xian)程在(zai)操作系统上调度开销(xiao),提(ti)升虚拟机(ji)vCPU性能。
云化网络高(gao)性能不(bu)仅依靠软硬(ying)件(jian)技术(shu),也依赖网络架构设计、网元部署方案等,是多学科(ke)共同作用的结(jie)果。烽火(huo)将(jiang)在(zai)自主(zhu)创新(xin)原(yuan)则下(xia)期待与(yu)客户(hu)、友商(shang)共同合作,加速迎接5G新(xin)时(shi)代的来临。