刘韵洁,张 娇,黄 韬,潘 恬
(北京邮电大学 网络与交换国家重点实验室,北京 100876)
近年来,网络的飞速发展以及网络中业务形式的多样化使得现有的网络架构呈现出各种问题。4K/8K高清视频、增强现实、自动驾驶等新型业务均对网络提出了更高的性能需求。传统网络体系架构不能很好地去支撑这些业务,会阻碍这些技术的发展进程。因此,需要针对现有网络中的问题,提出新型网络体系架构。
当前网络中存在如下3个关键问题。
1)缺乏对业务提供差异化服务的能力。近年来,视频直播、高清视频等OTT(over the top)业务蓬勃发展,用户数量和数据流量快速增长。截至2017年,微信活跃用户数量已经达到了8.89亿,Facebook月活跃用户数量超过20亿[1]。OTT业务的蓬勃发展虽然促进了网络技术的变革,但是在目前尽力而为的网络中,OTT业务占用大量带宽,导致了一些对时延敏感的业务体验质量严重下降。而且,由于运营商在其中只是单纯的扮演管道提供商的角色,因此,运营商缺乏足够的动力对网络进行扩容,网络的拥塞情况日益严重,严重影响网络的可持续发展。若允许运营商针对OTT业务按流量收费,这一方法虽然能减轻OTT业务对网络的压力,但是将会制约互联网业务的蓬勃发展,阻碍技术和业务的创新之路。
解决OTT业务对网络带来的冲击,一种可行的方式就是针对目前的网络架构,对网络进行改造。我们从交通系统中得到启示:普通公路、高速公路、铁路运输、航空运输等业务具有不同的运输能力和运输速度,采取差异化的收费机制,选择普通公路运输的用户不收费,但是服务质量得不到保障,选择航空运输的用户收取高运输费,在运输速度上得到保障。这样一来,一方面对网络有服务质量需求的内容提供商可以得到服务保障,而普通用户和小型创业公司等可以继续免费使用互联网,促进互联网的蓬勃发展。另一方面,基础网络提供者会有更高的动力去建设基础网络设施,以便更好地满足不同用户对基础网络的需求。根据调查显示,当前互联网应用提供商对于网络差异性服务能力的需求非常强烈,例如,亚马逊指出网络延迟每增加0.1 s,每年销售将减少1%[2],谷歌指出用户搜索延迟每增加0.5 s,则搜索量将会减少20%[3]。据调查,85%内容提供商为了提高用户的业务体验,愿意为更好的网络服务质量支付最高25%溢价。我们希望通过一种新的网络架构,来为用户提供差异化的服务,一方面既能保障普通用户的需求,另一方面对有特殊需求的用户提供服务质量保障。
2)网络中存在大量的冗余传输。当前互联网中的大部分内容分发型应用存在大量重复传输问题,尤其是视频流量,例如优酷2011年播放量过亿次的电视剧超过30部。而当前互联网中视频流量占据了大部分,Cisco预计未来在线视频流量将会占据互联网流量的90%以上。这些冗余流量会浪费大量网络带宽,因此,消除信息冗余需求十分迫切。当前网络中主要是利用内容分发网络(content delivery network, CDN)技术来减少信息冗余。但是,传统CDN的解决方案存在诸多不足,一方面,其采用覆盖网(overlay network)的方式进行设计,增加了成本,造成了基础设施资源的浪费。另外一方面,通常只有较成熟的公司才有能力去购买CDN服务,因此CDN技术只是减小了购买其服务的内容提供商的数据流量,并不是一个整体解决方案。对于基础网络来说,由于缺乏对内容资源的智能调度能力,信息冗余仍然大量存在,因此,基础网络具备信息冗余消除能力十分必要。同时调查指出,存储容量比带宽增长速度更快,而且存储成本价格比带宽价格下降更快,按照目前数据,存储容量平均每1.7年翻倍,而带宽平均每2.4年翻倍;存储成本每年下降40%,而带宽成本每年只下降26%[4]。因此,从发展趋势来看,未来在基础网络中部署缓存来减小信息冗余也是一个大的方向。
3)缺乏对网络数据的感知和应用能力。知名咨询公司麦肯锡在其报告中[5]指出,数据已经渗透到当今每个行业和业务职能领域,成为重要的生产要素。网络中同样存在海量的数据,然而目前网络对于这些海量数据的应用能力非常局限,主要由于2个原因:首先网络缺乏对各类数据的测量能力。网络测量是一项具有挑战的工作,需要对网络中的硬件设备和协议进行改造,同时需要应对高速链路中线速数据包处理的挑战。其次因为网络缺乏对数据的收集和处理能力,单纯的数据测量并不能产生很大的价值,在数据时代,数据的分析处理才是重点。进一步地,如何将分析得到的结果闭环地对网络进行反馈控制也存在较大的技术挑战,目前的网络架构中缺乏一个层面来实现对于海量数据的收集、分析处理和网络反馈控制。
针对以上3个问题,本文提出一种新网络体系架构,服务定制网络(service customized networking,SCN),试图构建一种开放可扩展、基于大数据分析实现高效灵活的网络管理,并提供差异化服务能力的网络体系架构。网络的底层通过融合计算、存储、网络资源形成资源池,网络中增加的计算和存储能大幅度提升网络的能力,在降低业务时延和减少网络中冗余传输的同时,拓展了网络的业务维度,增强了网络的可创新性。基于云架构实现,并借助SDN/NFV(software defined network/ network function virtualizatio)技术在控制平面实现对资源的统一管理。同时,在网络中增加基于大数据的网络测量与感知平面,充分利用网络中的数据来指导网络管控策略的制定。
当前的网络架构存在诸多问题,本节简要介绍目前学术界和产业界针对网络缺乏差异化服务能力、网络中的冗余传输、网络测量这3类问题所进行的一些相关工作。
网络切片的目的在于根据用户的不同需求,对网络中的资源进行划分。对网络进行切分的思想广泛存在于网络中,例如VLAN(virtual local area network)技术通过标签来划分网络的广播域,VPN(virtual private network)技术通过端到端的隧道,实现网络端到端的切分。近几年,随着SDN和NFV技术的提出,使得网络变得更加的灵活可控,增强了网络的可定制性。第五代移动通信(5G)也提出,该网络需要支持不同类型的服务,例如工业制造互联网,自动驾驶,远程医疗,增强现实等[6]。目前的网络架构对于业务不同的时延、带宽需求,明显是不能满足的。因此,基于SDN/NFV技术,实现对网络中资源的切片,实现业务端到端的可定制化。ONF(open networking foundation)组织在文献[7]中,站在广义SDN的角度,提出了网络切片的架构,将计算、存储和网络资源都变成了SDN控制器可以管理的资源。
传统的消除网络中冗余传输的方法是采用CDN技术[8],但是只有一部分公司会选择购买CDN服务,因此,CDN服务只能消除网络中部分的冗余传输,并不是全网的解决方案。针对这个问题,施乐帕洛阿尔托研究中心的Van Jacobson于2006年分析认为网络的应用呈现以信息为中心的特点,提出了信息中心网络的架构。其核心思想是采用类似URL(uniform resoure locator)的层次化命名方式对信息命名,从而方便用户进行信息搜索和信息获取。这种架构将以IP地址为中心过渡到以信息为中心,网络节点通过缓存数据可以有效降低信息冗余,加快对终端用户的响应速度。近几年,出现了一种新兴的减少冗余传输的技术:移动边缘计算,最初于2013年在IBM和Nokia Siemens共同推出的一款计算平台上出现。之后,各大电信标准组织开始推动移动边缘计算的规范化工作。根据欧洲电信标准协会(European telecommunications standards institute,ETSI)的定义[9],移动边缘计算侧重在移动网边缘提供IT服务环境和云计算能力,强调靠近移动用户以减少网络操作和服务交付的时延。
在SDN发展初期,网络测量主要以控制平面主导的测量方法为主。著名的开源SDN网络控制器ONOS(open network operating system)的网络监测模块就是直接通过OpenFlow等南向协议读取网络设备的流表信息,然后进行路由环路、黑洞等网络检错分析。但这种方案过多依赖于控制平面,面临额外开销过高、无法做出更加精细的网络测量等问题。
在P4[10]编程语言提出后,极大扩展了数据平面的灵活性,测量方法也开始转向数据平面主导。FlowRadar[11]就是一种基于P4语言的流粒度网络监控系统,它通过在数据平面对流的编码及各跳间编码的对比得到丢包率等信息。在后续的工作中,FlowRader将系统的监控粒度进一步细化到包级别,可以得到数据包时间戳、TTL(time to live)值等很难被传统网络设备收集的信息。P4联盟也提出了带内网络遥测(in-band network telemetry,INT)框架[12]用于收集和汇报网络状态信息。可以在不需要控制平面干预的情况下,通过添加在真实数据包头部中的遥测命令和遥测信息完成对网络实时状态的监控。通过INT框架,控制器可以直接实时收集数据平面上在数据包转发过程中真实经历的时延、抖动、误码率、信号强度、队列长度、丢包率等网络信息,而不需要发送其他特殊的探测包。
第1节中提到的新的未来网络体系架构都有各自的特点和优势,然而,它们不能或者只能部分解决当前基础网络建设者面临的OTT业务飞速发展以及信息存在大量冗余等挑战。本节将会具体介绍为解决基础网络建设者当前面临的挑战而提出的服务定制网络。
1)提供差异化服务质量。
从交通系统中得到启示,不同的交通方式运载能力不同,速度不同,收费也不同。SCN网络中希望可以为内容提供商等用户提供差异化服务,构建差异化的网络切片,用户可以根据特定的需求以及经济承受能力选择适合的服务等级,从而构建良好健康的互联网经济模式。OTT业务在该模式下也得到限制,对网络的冲击也可以迎刃而解。
2)细粒度网络测量与分析。
随着网络的规模越来越大,其中的资源种类越来越丰富,对于网络中资源的管理变得越来越复杂,大数据技术和人工智能技术的产生为网络的管理提供了一种新的思路,然而让网络管理的控制主体产生智能的前提是让网络底层能够产生足够的实时训练数据,因此,如何获取这些数据成了关键点。SCN网络中需要对网络中的参数实现实时的细粒度测量,并借助大数据和人工智能技术对网络的状态进行分析,实现网络的可视化,为网络的集中式管理提供数据支撑。
3)减少信息冗余。
对于信息冗余带来的带宽浪费问题,CDN也可以部分解决,但它是一种覆盖网的方案。而SCN试图让网络架构本身具备避免信息冗余的能力,网络具有感知内容、网络状态的功能,然后基于大数据的智能数据挖掘与分析,实现全网内容资源和网络资源的智能调度,从而实现有效消减信息冗余,充分利用网络基础设施的能力。
4)支持现网平滑演进。
目前的网络还是采用了以IP为细腰的准则,虽然存在各种问题,但也通过各种弥补手段承受住了各种考验,SCN作为一种革命性质的网络架构,直接取代现网架构是不现实的。对现网的改革一定是一个漫长的过程,也面临着来自运营商和设备厂商的压力。因此,为了渐进式部署,使SCN有可能被运营商等基础网络建设者采纳,以较低的成本逐步部署到现网中,SCN当前设计方案仍然遵循传统互联网中以IP为细腰的准则,数据包格式保持不变。然而,对于未来出现的更优的网络方案,SCN架构也需要能够支持。因此,SCN的设计思路之一是立足于解决现有的互联网问题,同时符合未来的发展方向,具有可演进性。
SCN的体系架构共包括5个平面,如图1所示。
图1 SCN体系架构Fig.1 Architecture of SCN
1)最底层为基础设施平面,主要由计算资源、存储资源和网络资源组成。部署的计算资源能够支持网络功能虚拟化,边缘计算等。部署的存储资源主要作为分布式缓存来存储网络中所传输的信息,从而解决网络中冗余传输的问题。
2)架构的中间部分为控制平面,该平面的主要作用是为不同的用户构建不同服务质量等级的网络切片,从而为不同的用户提供差异化的服务,控制平面主要由3部分组成,分别为SDN控制器、NFV管理模块和缓存资源管理器。
3)架构的两侧分别为分发平面和感知平面。分发平面基于云架构实现,负责对网内的信息资源进行智能地控制、调度和分发,分发平面只负责制定策略,通过向控制平面下发指令来完成具体的操作,例如通过将应用贴近用户部署来降低业务的延时,通过在网内优化部署缓存来解决海量信息重复传输的问题。感知平面的主要功能是完成对网络中各类参数的采集,并基于大数据技术对这些数据进行分析,分析的结果会反馈给分发和控制平面,使其能更好地管理网络。
4)最后在架构的最上层是应用层,网络管理者可以调用控制平面、分发平面和感知平面所开放的北向接口来自定义开发应用。目前,在实现SCN体系架构时,主要的挑战集中在控制平面、感知平面和分发平面,针对这3个平面中的关键问题,下面将详细阐述。
SCN网络中除了具备传统网络中基本的数据转发功能外,还能面向差异化的用户需求提供不同等级的QoS保障,解决OTT业务对网络的冲击,保证关键业务的服务质量。SCN网络主要通过网络切片技术来提供差异化的服务,在网络切片中,具体有2项关键技术,分别是流量识别和流量端到端的QoS保障。
流量识别技术主要是在流量入口处根据数据流量的包头信息对流量进行识别,然后打上分类的标签。标签分为2个,其一是流量的路径标签用来标识流量的转发路径,另一个是流量的QoS标签用来标识流量的QoS等级。
流量QoS保障技术具体分为3个方面。第一方面是基于SDN的SR(segment routing)方案来实现动态路径规划,集中式的SDN控制器负责收集底层链路的拓扑信息和实时的带宽占用信息,然后为不同的业务流量分配不同的路径,路径信息通过MPLS(multi-protocol label switching)路径标签实现,并通过SDN的方式对路径进行控制。
基于SDN的SR机制只是通过控制转发路径来实现负载均衡和流量调度,第二方面,我们还加入了基于队列控制粒度的QoS保障机制实现对流量更进一步的精细控制,在交换设备的每个端口实现队列优先级调度算法,根据流量的QoS标签进行调度,该QoS标签可以是MPLS中的EXP字段,也可以是IP中的TOS字段,图2详细说明了端到端精细的QoS保障机制。具体地,使用交换机中内置的队列,来使不同优先级的流量进入不同的队列进行处理,交换机端口上的队列创建是通过SDN控制器实现,同时,控制器还需要通过南向协议来指定流量进入的队列。此外,在每个端口还可以使用队列来预留一部分带宽,保障突发的关键性业务。
图2 端到端精细化QoS保障Fig.2 End-to-end fine-grained QoS guarantee
最后一方面是切片内预防突发流量的技术,在网络已为切片预留资源的情况下,切片内仍可能发生流量突发,进而影响切片内的业务QoS。SDN网络控制器集中决策限制了反应时间。因此,在SCN架构中,设计了提前由控制平面提前下发备用路由策略,并且设置相应的突发门限。数据平面构建处理逻辑,在网络中流量突发时,拥塞节点能快速判断反应,通知上游节点启动备用路由,减少拥塞节点流量压力。
SCN中的感知平面主要通过在高速网络设备上采集底层网络状态(包括链路层、网络层、传输层和应用层),然后对收集的信息进行大数据处理分析,根据分析结果对网络进行自动化的运维管理(包括故障检测预警、内容贴近用户部署、流量自适应调度等),从而提高网络用户的服务质量。SCN的感知平面主要包含如下4个方面的能力。
1)多维信息采集能力。目前通常在应用层基于DPI(deep packet inspection)等技术以流为单位对网络流量中蕴含的信息进行采集挖掘,并向访问控制或流量调度等模块提供处理依据。相比传统较少维度的信息采集手段,SCN中的感知平面强调多维网络信息的采集能力。除了通过DPI等手段挖掘应用层流量蕴含的信息,感知平面还将对链路层的信号强弱、误码率等信息,网络层的丢包率、排队时延、传输路径等信息,传输层的滑动窗口大小、重传率等信息进行识别和采集,从而完成整个协议栈自顶向下的全栈多维信息采集。相比单一的应用层网络信息采集,感知平面的多维信息采集能力将给集中式控制器提供大量的数据分析支撑,提供控制器从链路层到应用层跨层的网络优化能力。
2)高速链路带内测量感知能力。在高速链路上进行多维的网络信息采集将会遇到较大的性能挑战。由于路由器或交换机进行数据包转发的速率非常高,且数据包本身在网络设备中需要经历多个流水段的快速处理,并没有太多的时间空隙可以用来完成多维信息的提取和处理。如果采用传统方法,从网络设备的控制平面或管理平面通过协议询问数据平面的状态,那么显然会引入大量的时延,进而无法匹配高速链路线速转发的需求。目前,文献[12]提出使用INT技术,由网络设备自身在数据平面直接采集底层的链路状态,并装填在数据包的包头上,通过数据包自身携带出网络,最终转发到集中式控制器上。对数据包头的任意修改需要用到协议无关转发技术。基于INT的网络状态感知方法能够尽可能地降低控制器对网络设备底层链路状态的主动询问开销。基于INT这样的技术,SCN的感知平面还将研究如何进一步压缩底层链路状态采集的开销,从而减少路由器的处理负担和上报给控制器的数据包数量及链路带宽消耗。
3)控制器大数据分析处理能力。集中式控制器面临着在线实时分析底层传递来的大量网络链路状态数据的挑战。这里的挑战有2个方面:①底层网络上传而来的数据具有多维的属性,甚至某些数据是非结构化的,需要使用更强的语义对其进行描述;②高速链路上传而来的数据量非常大,且处理的实时性要求很高,如何设计感知平面面向高速网络的硬件架构及大数据分析处理算法具有较大的挑战。在这里,SCN的感知平面通过使用分布式的服务器集群对底层链路状态进行处理。同时也会使用一些采样算法或者按需状态上报的机制降低数据分析的复杂度,即不是每个包或每个流都进行采样和控制器上报,而是在数据平面检测到异常之后再按需进行异常状态或异常网络行为上报。
4)自动化的网络管理能力。当底层网络状态出现异常时,感知平面通过基于机器学习的大数据分析检测算法可以自动识别出相应的异常,从而触发对应的异常处理流程。例如,当链路上的网络设备的排队时延明显增高时,控制器能够通过上面提到的带内遥测机制发现这种情况,并通过历史经验猜测可能是由于上游交换机发生故障而导致链路拥塞,然后将这种猜测上报给上层的管理人员。也可以通过深度学习[13]等统计机器学习方法利用历史的流量数据对集中式控制器进行长时间训练,使其具备一定的自动化事件处理能力。如果控制器的智能足够高时,甚至可以由控制器自身主动发送故障修复指令,降低运维人员的工作量。除了网络故障检测及溯源分析,类似的基于大数据的网络自动化管理能力还可以辅助运维人员进行网络流量自适应调度、内容自动按需部署、网络设备自适应开关省电等工作。
SCN的分发平面通过将网络和计算融合,网络和存储融合,基于云架构实现信息资源的智能控制和调度。
目前新型的网络应用及服务对计算资源的需求日益增加,网络功能虚拟化、边缘计算等技术也得到了学术界和产业界的广泛认可。在SCN的分发平面设计中,将网络与计算融合,这样做主要有如下2点好处:结合边缘计算技术,将网络应用部署到用户侧,降低业务的时延,同时减轻了核心网的负载;结合网络功能虚拟化技术,将网络功能部署在通用的服务器上,为网络功能的部署和管理提供了更加灵活的方式。
如之前所述,目前网络中存在着严重的冗余传输问题,因此,在SCN架构中,我们将网络和存储融合,在网络中的不同位置部署缓存,这方面的研究近几年在信息中心网络架构中已经受到了极大的关注,以命名数据网络(named data networking, NDN)为例,它保留了IP协议栈的沙漏模型设计,但是用类似URL的分层内容命名代替了原来的IP细腰层。同时,路由和转发也是基于内容名字,并使用最长前缀匹配的方法。另外,内容可以在内容源服务器获取,也可以在路由器节点命中。可以看出,网内缓存的能力不仅可以节省有限的带宽资源,还能够提高网络的性能。
目前SCN架构中将计算、存储和网络融合的思想得到了学术界和产业界的肯定,但是,SCN架构在落地的过程中,主要面临两方面的问题:①如何选择一种新型的架构,将网络、计算、存储资源进行整合,支持分发平面进行统一的管理和调度,同时,该架构需要在现有的IP架构上实现平滑演进;②如何针对业务的差异化需求在网内部署存储资源,实现业务的低延时传输。针对第一方面的问题,本团队提出了SDNCC[14]方案,整体架构如图3所示。该架构提出了网络元素的概念,将各种资源都看做网络中的元素,并在控制层面设计了针对不同资源的管理模块。针对第二方面问题,本团队提出了基于内容差异化的信息中心网络缓存资源自动分配和管理机制[15],实现对不同内容请求者提供差异化的内容服务。
图3 SDNCC架构Fig.3 Architecture of SDNCC
本文提出了一种面向服务定制的未来网络架构,对网络进行切片,利用优化路由选路和端到端的QoS保障,为业务提供差异化的服务。通过将计算和存储资源融合,可以有效解决网络中冗余传输的问题。同时,在网络中创新性地增加了一层感知平面,充分利用网络中的数据来帮助控制平面对网络进行优化管理。在未来的工作中,依然存在着各类问题和挑战需要解决,例如网络功能模型的抽象、定义与建模;面向确定性时延的网络QoS保障方案与机理;网络、计算、存储一体化融合技术的细化等。
[1] 中国互联网络信息中心.中国互联网络发展状况统计报告[EB/OL].[2017-09-12].http://www.cnnic.cn/hlwfzyj/hlwxzbg/hlwtjbg/201407/P020140721507223212132.pdf.
[2] Amazon found every 100ms of latency cost them 1% in sales[EB/OL].(2008-08-02)[2017-09-12]. http://blog.gigaspaces.com/amazon-found-every-100ms-of-latency-costthem-1-in-sales.
[3] Google VP Marissa Mayer Talk at web[EB/OL].[2017-11-01].http://glinden.blogspot.com/2006/11/marissa-mayer-at-web-20.html.
[4] MALIK Om. The Storage vs bandwidth debate[EB/OL].[2017-09-12].http://gigaom.com/2011/06/24/the-storage-vs-bandwidth-debate/.
[5] MANYIKA J, CHUI M, BROWN B, et al. Big data: The next frontier for innovation, competition, and productivity[R]. [S.l.]: McKinsey Global Institute, 2011.
[6] 5G-PPP, ERTICO, EFFRA, EUTC, NEM, CONTINUA and Networld2020 ETP, 5G empowering vertical industries: White Paper[S].[S.l.]:5G PPP, 2016.
[7] ONF TR-526. Applying SDN Architecture to 5G Slicing[S]. [S.l.]: 5G PPP, 2016.
[8] CHOI J, HAN J, CHO E, et al. A survey on content-oriented networking for efficient content delivery[J]. IEEE Communications Magazine,2011,49(3):121-127.
[9] HU Y C, PATEL M, SABELLA D, et al. Mobile edge computing—A key technology towards 5G[J]. ETSI White Paper, 2015, 11(11): 1-16.
[10] BOSSHART P, DALY D, GIBB G, et al. P4: Programming protocol-independent packet processors[J]. ACM SIGCOMM Computer Communication Review, 2014, 44(3): 87-95.
[11] LI Y, MIAO R, KIM C, et al. FlowRadar: A Better NetFlow for Data Centers[C]// Proceeding NSDI'16 Proceedings of the 13th Usenix Conference on Networked Systems Design and Implementation(NSDI). Berkeley, CA, USA:ACM, 2016: 311-324.
[12] KIM C, SIVARAMAN A, KATTA N, et al. In-band network telemetry via programmable dataplanes[EB/OL].[2017-09-10]. http://web.mit.edu/anirudh/www/int-demo.pdf.
[13] SILVER, D, HUANG A, MADDISION C J, et al. Mastering the game of Go with deep neural networks and tree search[J]. Nature, 2016,529 (1): 484-489.
[14] HUO R, YU F R, HUANG T, et al. Software defined networking, caching, and computing for green wireless networks[J]. IEEE Communications Magazine, 2016, 54(11): 185-193.
[15] HUO R, XIE R, ZHANG H, et al. What to cache: differentiated caching resource allocation and management in information-centric networking[J]. China Communications, 2016, 13(12): 261-276.
(编辑:魏琴芳)