王 鹏,兰巨龙,孙鹏浩,胡宇翔
(国家数字交换系统工程技术研究中心,河南 郑州450002)
基于元能力的网络柔性服务机理探析
王 鹏,兰巨龙,孙鹏浩,胡宇翔
(国家数字交换系统工程技术研究中心,河南 郑州450002)
针对传统网络在灵活性、可扩展性等方面存在的缺陷,对元能力和元服务的基本性质和基本理论进行了阐述,提出了一种基于元能力的网络柔性服务机理,该机理通过网络元能力的建模和动态组合,可灵活构建网络服务链和服务路径。通过服务链的灵活组合和部署,在节点层面实现了网络功能的灵活定义;通过服务路径的灵活定制,实现了网络服务多样性与动态性的结合,最终实现网络柔性服务。
元能力;柔性服务;可重构网络;服务链;服务路径
传统网络在灵活性、可扩展性等方面缺陷明显,面对日益增加的新兴网络业务、广泛存在的异构网络和不断提高的通信质量需求,以“打补丁”方式进行的升级改造已经捉襟见肘。为从根本上解决信息通信网络中泛在、融合、异构、可信、可管、可扩的需求,对新型网络体系结构的研究已经成为当前的热点。近年来,国内外对新型网络体系进行了诸多积极的研究和探索。2005年,美国启动了FIND(future Internet design)项目[1]。该项目的主要目标是探索未来网络设计之道,提出了一系列的解决方案。与此同时,欧盟也通过FP7计划开展了Challenge One项目,其子项目4WARD[2]和AUTOI (autonomic Internet)[3]重点探索了可伸缩虚拟网服务提供能力,并在资源优化管理上提出了解决思路。此外,日本开展了AKARI项目[4]研究,对未来网络体系结构、关键技术以及网络演进路径进行研究。国内方面,北京交通大学提出了支持普适服务的一体化网络,基于两层模型实现对泛在互联和普适服务的有效支撑[5-6],清华大学从规模、性能、安全、功能和服务5个方面提出了一种多维可扩展网络体系结构[7],并在此基础上,进一步就互联网演进性、海量数据高效传输等问题展开研究。
为了提高网络的灵活性和可扩展性,研究人员试图从“功能的分解与组合”角度探索未来网络体系。信息工程大学等国内十几家科研院所联合提出了可重构网络[8],可重构网络的提出,促进了可编程网络在控制面和数据面的标准化分离探讨,在底层强调控制面和数据面内的模块化和标准化[9]。传统网络中的典型网络功能如NAT、负载均衡、接入控制等功能在可重构网络中均可以通过功能模块的方式来实现[10]。国外研究人员在此方面也进行了深入研究,在控制面,Beacon[11]将控制器分成多个称为Buddle的功能模块组合,以增加控制器功能增添删除的灵活性。Corybantic[12]在内部实现了程序模块化,通过对模块程序的重组实现功能组合和上层对控制器的功能规划。在数据平面,对功能单元的提取和组合也成为研究热点。Frenetic[13]提出了并行化的模块编程语言,能够实现功能模块并行组合,完成数据分组的多重处理。文献[8]、文献[14]和文献[15]提出了柔性可重构网络的元能力理论,提出了基于元能力的资源建模方法,为后续的研究工作提供了理论支撑。
基于以上背景和现状,本文重点探讨了网络如何根据业务需求和网络状态的变化动态地提供网络服务,在满足多样化业务需求的同时,实现了网络资源的合理调度,提升了网络资源利用率。
元能力(Atomic Capacity,AC)[8,16]是实现网络基础传递能力的最小功能抽象,是支持网络核心功能扩展和服务定制化的基础。元能力是将当前互联网体系结构中网络层和传输层的功能分解、粒度细化,构建具有细粒度网络功能的集合。例如,转发、拥塞控制、流控、分片及安全等功能。
1.1 元能力结构
记元能力集合为S。根据前文对元能力的论述可知,元能力是单独的元功能(AtomicFunction),它具有以下特点:
① 开放性。设∀si,sj∈S,则si↔sj,任何元能力均可向其他元能力和服务提供接口,即任何两个元能力均可联结。
② 可调性。具有控制参数,可根据服务请求动态调节。
④ 完备性。元能力集合是网络功能的全集。
⑤ 可扩展性。元能力可根据具体情况,添加具有新型功能的元能力。
基于以上特征,本文给出元能力的五元组结构,即S:=T,I,D,B,L,(即,标识,接口,数据基,执行体,服务链)。如图1所示,下面分别对五元组的功能进行描述。
图1 元能力结构框图
标识(Tag)为元能力的身份ID(Identifier)。它的设计需要满足以下原则:① 唯一性,每个元能力应该有一个全网唯一的身份标识,外部应用仅需根据元能力标识即可无歧义定位元能力;② 可联结性,在不考虑具体功能的情况下,元能力标识可与任何其他元能力联结,为元能力的可组合特性提供支持。
接口(Interface)是元能力的数据和控制信息的输入/输出通道和功能描述。若元能力标识代表其身份,那么接口就相当于其“简历”,向外部展示其具体的“能力”。接口分为功能接口和非功能接口,前者描述元能力能够完成的功能清单,后者是描述元能力的非功能属性。
数据基(Data Base)为元能力的数据和控制信息提供存储结构。其中数据是指元能力的功能实现固有的、不可或缺的单元,例如,路由器节点中路由表元能力中的路由表项等;控制信息则包括与相应元能力相对应的控制信令、QoS参数及策略等。
执行体(Body)为元能力的逻辑处理单元。执行体根据元能力被调用的接口和配置的参数,占用特定的资源,执行特定的功能。它的设计与实现需要满足以下原则:① 隔离性,执行体应根据具体应用请求,动态地分配相应的资源,执行相应的功能,其他应用也应该无感地完成相同的操作,好像只有该应用唯一使用该元能力;② 约束性,执行体应该以接口的被调用情况作为约束,占用节点的资源,提供严格限制资源滥用的行为。
链接( Link)为元能力组合的表现机制,即由其实现相邻元能力的联结链,即组合链。链接是元能力的必要组成部分,从协议栈的角度,元能力链接是连接协议层间以及协议层内部元能力的纽带,使“凌乱”的元能力集合,基于应用需求,组合为有序、完整的协议操作单元组。
1.2 元能力基本性质
元能力链接需要满足以下设计原则:
① 完备性。理论上,任意两个元能力之间均可通过链接机制进行组合。
② 约束性。实际中的链接组合不是随意的,组合动作是由应用驱动(Application-driven)的,组合的效果也是有明确功能和意义的。
③ 可调整性。元能力之间的链接需要根据应用的请求指标综合、优化两者之间的参数,以达到最优组合。
元能力的详细逻辑设计参考如图2所示。
图2 元能力逻辑结构参考图
元能力的本体描述是开发元能力的参考依据,因此,在本体中需要描述元能力操作的资源、元能力的行为、元能力的类型和元能力的工作机理。总的来说,元能力根据其所属类型定义操作资源的接口,元能力实现即元能力的工作机理就是为围绕对这些资源的操纵(访问、调节)而实现的,并对外表现出特定的行为模式。
1.3 元能力理论
元能力理论是应对当前TCP/IP难以适应业务多样性的需求而提出的一种基础网络承载机制。目前网络体系结构对业务适应性差的根本原因是作为网络基础承载机制的TCP/IP对上层业务提供的服务粒度粗,难以添加新的功能,最终导致网络僵化。
元能力理论的层次结构如图3所示,元能力理论将基础网络功能分解为细粒度的功能单元—元能力,元能力是根据基本的功能元素模板实现的具有特定功能的细小单元,这些细小单元既可以单独向元服务层提供访问接口,也可以通过与其他元能力组合,形成具有基础结构特性的元能力实例,并向元服务层提供访问接口。由于元能力本身不具有业务特性,它是细小网络功能单元(如分片、校验和等),因此在业务与元能力之间需要构建具有业务特性的元服务。元服务是根据特定业务构建的具有业务烙印的服务层次,同时也是在不同业务之间实现资源隔离的虚拟层,它由一系列元能力实例组成,并向业务直接提供服务。
图3 元能力-元服务层次模型
元能力理论是支持可重构网络适应网络环境变化的基础结构,它不仅仅停留在节点层面,还需要网络范围的机制。网络范围的重构是建立在网络认知的基础之上的,这涉及到几个方面,首先,根据网络认知视图,网络需要掌握网络元能力及资源分布,即哪些节点有哪些元能力和资源使用情况。其次,根据业务请求,结合多态路由,建立一条到达目的端的服务路径,路径上的节点存在满足业务请求的元能力子集及完成功能的资源支持。最后,服务路径上的节点内部根据业务请求,将网络元能力组合为元服务(若元服务层没有满足需求的元服务),通过元服务的组合实现对业务的响应。
以上是元能力理论的工作机理和概念描述,其完成从节点到网络的重构还涉及到两个具体方面:在节点层面上,需要完成基础结构集合的构建,即元能力的划分、分类以及元能力的组合——服务链(由于元服务也是由元能力的序列组成,那么多个元服务组合为业务提供服务,本质上也是元能力的序列,因此,下文描述元能力理论时,均以元能力为单元考虑);在网络层面上,需要完成元能力的通告,即发布、注册以及跨节点的服务机制——服务路径。
基于元能力的网络柔性服务机理分为节点级的服务链构建和网络级的服务路径构建。节点级服务链构建指的是路由交换节点内部元能力的有序组合过程,以及相应基础运行环境的建立过程;网络级服务路径构建指的是网络节点之间通过有序组合形成网络结构。网络柔性服务机理特点在于“柔性”,而实现“柔性”的重点在于实现服务的多样性以及动态性。
2.1 服务链构建流程
节点级服务链构建是整个网络柔性服务架构的基础,也是网络柔性服务实现的最基本环节。节点级服务链构建涉及到以下模块:适应性应用程序(Adaptive application,Adaptive-app)、适应性推理引擎(Adaptive Reasoner Engine,Adaptive-RE)、适应性组合引擎(Adaptive Composite Engine,Adaptive-CE)、服务链管理器(Service Chain Manager,SCM)、元能力库(Auto-capacity Repository,ACR)、规则约束库(Rule Repository,RR)和探测器(Detector)。各部分的功能如图4所示。
服务链构建类似于目前典型网络协议中socket的建立,是资源再分配的过程,图4给出了服务链的构建过程:
① 首先适应性应用程序发出服务请求规格R,并转给节点的探测器;
② 经探测器过滤后,判断其是控制信令还是数据消息。对于控制信令,将服务请求的语义描述传递适应性推理引擎,并转到③,否则转到⑦;
③ 适应性推理引擎解析R对于控制信令,将引擎推理出相对应的规则集合L(主要包括资源请求参数和参数约束等),并连接规则库,判断是否有新规则出现,并将请求规则集L传递给适应性组合引擎;
④ 适应性组合引擎根据规则访问本地的元能力和规则库,选择合适的元能力集合A;然后A结合L,根据组合策略应用组合算法,生成服务链C,并将服务链移交到服务链管理器中;
⑤ 服务链管理器将服务链C存储到效应器列表中,并启动计时器,计量服务链的生命周期;
⑥ 与⑤同时,适应性组合引擎将服务链C的句柄作为响应返回给应用程序;
⑦ 应用程序根据返回的C发送数据消息,并由探测器识别出数据消息,并将其转给服务链管理器中;
⑧ 服务链管理器根据数据消息中的服务链句柄C,索引服务链,打开数据信道,将数据转发到网络。
图4 适应性节点的内部结构原型
2.2 服务路径构建流程
服务路径的构建流程是指从业务的宿主节点发起通信请求到目的宿主节点的服务链建立过程。通信过程涉及到以下角色:源宿主节点、适应性服务节点(Adaptive service node,ASN)和目的宿主节点。其中,源宿主节点负责运行应用程序的源端系统。适应性服务节点完成服务的组合和寻路,其主要由适应性中间点(Adaptive broker,AB)和服务节点(Service Node,SN)组成,AB根据请求节点检索本地服务列表,形成服务链,SN主要根据AB提供的服务链完成具体服务任务;SN随时向AB通告其服务和资源更新,AB维护着本地服务和资源列表。SN和AB既可绑定在一起,也可进行分布式部署。目的宿主节点主要运行应用程序的目的端系统,它可能是用户端主机、内容服务器或适应性服务节点。
每种业务在宿主节点发起服务请求消息,该请求首先转发给AB,由AB解析该消息,翻译该业务的ID及请求的服务和参数约束,生成服务请求报告,然后AB根据服务请求报告检索本地服务和资源,经过推理,最终做出是否接受该业务的请求。一旦接受请求,就需要调用适应性组合机制,就像搭积木一样,为该业务构建特定于该业务当前请求的服务链,服务链的构建过程也就是元能力信用分配的过程。最终输出就是针对该业务当前请求的服务链,并为该服务链分配ID,与业务ID相对应。若不能满足请求,则转发给下一个满足该要求的适应性服务节点。这样依次就建立起了一条从源到目的的服务通路,称为“服务路径”。最后服务路径上每个适应性服务节点的AB将该业务与其服务链的对应关系转发给对应的SN,并由SN提供具体服务。对于不能满足服务请求要求的中间节点只进行数据的“存储转发”。
利用这种结构,节点可以根据感知的外部不同网络环境的需求变化,做出适应性的内部结构改变——元能力组合,增强了节点的适应能力,实现了网络柔性服务。
2.3 服务链的动态调整流程
服务链以及服务路径的动态调整,对于网络资源的优化调度、提高资源复用率具有重要的作用。本节主要论述服务链的动态调整流程。对于已建立的服务链,关于节点服务链的调整存在以下几种情况:调整某些元能力的参数、添加某些元能力、去除某些元能力,以及上述情况的混合。
服务链的调整有2种方案,一种是业务发送调整信令时,不仅包含服务链的标识,而且还有新的服务请求信息,那么,根据该请求信息重建一个服务链,并使用相同标识替代当前服务链;另一种是业务发送调整信令时,除包含待调整服务链的标识外,还有调整请求信息,那么,根据该调整信息,改变当前服务链的组成或参数。目前,难以定量地衡量两种方案的优劣,这里仅采用第2种方案。
节点为每个服务链创建了特定的队列,根据服务链的参数,划分了特定等级,对于应用程序,正如建立的socket,若调整其参数,只需调用相关的函数即可,如接收缓存区大小。服务链的调整也类似,应用程序调用相应的函数、修改参数或增删链中的元能力,都需要调用函数实现,具体步骤如下:
① 业务调用库函数,发送调整信令。
② 将信令解析获得命令,通过映射获得调整规则,并做出调整决策。若决策是拒绝调整,则转到步骤⑤;若接受调整,那么分几种情况,若决策是参数调整,则按请求修改调度单元的相关参数;若决策为增删元能力,则增删复合调度中相应的调度单元;若决策包含上述情况的综合,那么,先增删、后调节参数。
③ 验证调整后的服务链的完整性和一致性。
④ 返回服务链的标识。
⑤ 结束。
2.4 服务路径的动态调整流程
服务路径的调整分为两部分,第1部分是节点内服务链的调整,已经在前一节详细描述,本节不再论述。第2部分是节点调整,即调整服务路径上的某些节点。本质上,服务路径的节点调整是路由调整,原因可能是业务调整了性能要求(通常是提高了性能要求),导致当前服务路径上的某些节点不能满足其要求;或者网络根据资源认知视图发现某些节点出现性能瓶颈,难以保证服务路径的性能需求;或者服务提供商根据网络宏观策略,改变某些业务的服务路径等。
由上述分析可知,路由的调整过程分为以下3种情况:① 由服务路径上的节点发起调整请求;② 由业务发起调整请求;③ 由服务提供商的宏观配置。其中,路由的调整过程不同类型的主要区别在于发起者不同,但三者的主要过程都涉及处理信令沿服务路径中的服务中间点传播,以及不同节点收到信令后的处理(接受或者拒绝)。
本文从提升网络的灵活性和可扩展性出发,提出了一种基于元能力的网络柔性服务机理,元能力是网络提供服务的基本功能单元,通过元能力的不同组合满足业务多样且时变的服务需求,提升了网络资源的利用率。然而,由于网络普遍是采用资源统计复用方式提供服务的,要实现网络随需求和状态时变的柔性服务方式,全局的确定性与客观的随机性相互交织,这对于基于元能力的网络柔性服务机理的内涵和运行机制挑战巨大。因此,本文对基于元能力的网络柔性服务机理的探析是十分初步的,柔性服务机理的具体运行方式和协议设计仍需要进一步的深入研究。
[1] NSF NeTS FIND Initiative.FutureIntemet Design[EB/OL].http:∥www.nets-find.net/,2005.
[2] The European Community's Seventh Programme.The FP7 4WARD Project [EB/OL].http:∥www.4ward-project.eu/,2007.
[3] The European Community's Seventh Programme.The FP7Autonomic Internet Project [EB/OL].http:∥ist-autoi.eu/autoi/,2007.
[4] National Institute Of Information (NICT).AKARI Project [EB/OL]. http:∥akari-project.nict.go.jp,2007.
[5] 张宏科,苏 伟.新网络体系基础研究———体化网络与普适服务[J].电子学报,2007,3s(4): 93-98.
[6] Luo H,Qin Y,Zhang H.A DHT-based Identifier-to-locator Mapping Approach for a Scalable Internet [J].IEEE Trans Parallel Distrib Syst,2009,20(12):1790-1802.
[7] 吴建平,吴 茜,徐 格.一代互联网体系结构基础研究及探索[J].计算机学报,2008,31(9):1536-1548.
[8] 兰巨龙,程东年,胡宇翔.可重构信息通信基础网络体系研究[J].通信学报,2014,35(1):128-139.
[9] 袁 博,汪斌强,陈 强,等.可重构柔性网络体系结构和基本形态[J].中国科技论文,2012(10):739-744.
[10]兰巨龙,邢池强,胡宇翔,等.可重构技术与未来网络体系架构[J].电信科学,2013(8):16-23.
[11]Erickon D.The Beacon OpenFlow Controller[C]∥Proceedings of 1st Workshop on HotSDN 2013.Hong Kong,China,2013:13-18.
[12]Mogul J C,Young A,Banerjee S,et al.Corybantic: Towards the Modular Composition of SDN Control Programs[C]∥ Hotnets'13.Washington D C,USA,2013,1:1-7.
[13]FOSTER N,HARRISON R,FREEDMAN M J,et al.Frenetic: A Network Programming Language[C]∥Proceedings of ICFP.Tokyo,Japan,2011.279-291.
[14]程东年,汪斌强,王保进.网络结构自调整的柔性内涵初探[J].通信学报,2012,33(8):214-222.
[15]兰巨龙,熊 钢,胡宇翔,等.可重构基础网络体系研究与探索[J].电信科学,2015,31(4):57-65.
[16]盛 权.基于性能模型的服务链构建方法及自动化研究[D].杭州:浙江工商大学,2014.
Initial Research on Flexible Network Service Mechanisms Based on Atomic Capacity
WANG Peng,LAN Ju-long,SUN Peng-hao,HU Yu-xiang
(National Digital Switching System Engineering &Technological R&D Center,Zhengzhou He’nan 450002,China)
Aiming at the defects of traditional network on flexibility and extensibility,this paper proposes a novel flexible network service mechanism based on atomic capacity.By implementing the modeling and dynamic combination of network atomic capacity,the network service chain and service path can be constructed flexibly.Based on flexible combination and deployment of service chain,the real-time dynamic adjustment of network function can be realized.Based on flexible customization of service path,the combination of network service diversity and dynamics is implemented so as to realize the flexble network service.
atomic capacity;flexible service;reconfigurable network;service chain;service path
10.3969/j.issn.1003-3114.2017.01.01
王 鹏,兰巨龙,孙鹏浩,等.基于元能力的网络柔性服务机理探析[J].无线电通信技术,2017,43(1):01-06.
2016-10-21
国家高技术研究发展计划(863计划)项目(2015AA016102);国家重点基础研究发展计划(973计划) 项目(2012CB315900)
王 鹏(1985—),男,助理研究员,博士,主要从事新型网络体系结构和路由交换技术研究,先后参加4项国家级科研项目,作为主要参加人员参加国家“863”计划课题2项,其中作为子项负责人参加国家“973”计划课题2项,近5年发表论文20余篇,其中SCI、EI检索10余篇,出版专著1部。兰巨龙(1962—),教授,博士生导师,长期从事IP网络理论与技术研究、核心设备开发工作,先后主持或参与了多项国家和军队重大工程的建设,主持了4项国家863计划重大课题,同时作为课题组副组长或主要贡献者参加了10余项国家或军队重大课题,并于2005年主持研制成功我国第一台全部核心技术拥有自主知识产权的高性能IPv6路由器,目前作为项目首席科学家主持国家973计划项目1项,先后获得省部级科技进步一等奖3次,军队科技进步一、二等奖各1次,申请国家发明专利9项,发表学术论文70余篇,出版专著2部。
TN711
A
1003-3114(2017)01-01-6