一种安全功能服务链部署方法与流程

文档序号:16671692发布日期:2019-01-18 23:37阅读:719来源:国知局
一种安全功能服务链部署方法与流程

本发明涉及网络安全技术领域,具体涉及一种安全功能服务链部署方法。



背景技术:

随着电子商务、社交网络、即时通讯等海量新型互联网应用的出现,目前以tcp/ip协议为核心的互联网体系架构已很难满足快速增长的业务需求,亟需突破传统烟囱式的刚性网络体系和封闭式架构。在此需求下,软件定义网络(softwaredefinednetworking,sdn)和网络功能虚拟化(networkfunctionvirtualization,nfv)等技术应运而生,可实现自动化的流量部署、敏捷的资源池化和按需动态的服务提供等能力,通过松耦合模式达到降低硬件设备复杂度、节约成本的目的。基于sdn/nfv理念架构下,如何合理、高效部署满足用户多样化需求的服务功能链(servicefunctionchain,sfc)已成为学术界和产业界关注的热点问题之一。

在基于sdn/nfv理念架构中,通过控制转发分离的特性,网络控制变得更加灵活并更具有扩展性。通过对底层物理网络进行虚拟化和逻辑抽象,由sdn控制器引导转发流量自动通过虚拟服务节点,可实现灵活、便捷、高效的服务功能,这种流量按序通过虚拟服务功能节点组成的序列称为服务链,如图1所示。

面向用户的安全服务需求,编排形成安全服务链并下发。因此,需要选择一条满足安全服务能力、安全功能顺序、资源需求的最优路径,该问题即基于服务链的安全功能部署问题(或称为映射问题),如图2所示。其中,图2(a)为一条安全服务链请求,按其功能请求顺序可表示为(fw,nat,ips)。存在多种部署方式可满足安全服务链的功能需求,如图2(b)和图2(c)。但从图中可知,图2(c)中的第二种部署方式明显优于图2(b)中的第一种部署方式。因此,需要开展安全功能服务链部署问题的研究,即依据安全服务需求序列选择相应的安全功能组件并进行路由,在最大限度满足功能需求、资源需求的前提下降低网络成本,保障服务质量。

在现有技术方案中,大多没有考虑同时到达的多条服务链的部署顺序,或是忽略了物理节点可提供的功能类型。部分方案限定物理节点仅可提供某一种安全功能,且仅考虑了安全功能之间的带宽需求,未考虑实现安全功能部署所需要的计算资源和存储资源。因此,为了更好的刻画服务链的综合需求,描述各需求之间的关系,需要提出一种改进的安全功能服务链部署方法。



技术实现要素:

(一)要解决的技术问题

本发明要解决的技术问题是:如何提出一种改进的安全功能服务链部署方法,在满足服务链资源需求、成功部署安全功能的前提下,实现了网络成本最小。

(二)技术方案

为了解决上述技术问题,本发明提供了、一种安全功能服务链部署方法,包括以下步骤:

首先,定义同时到达的r条服务链请求组成的服务链请求集合为φ={q1,q2,…,qr},其中服务链请求qr表示为有向序列qr=(qr,0,qr,1,qr,2,…,qr,h-1,qr,h,qr,h+1,…,qr,h,qr,h+1),共包含h个的安全功能节点,对应h个安全功能,1≤h≤h,1≤r≤r,其中,qr,0和qr,h+1分别表示服务链请求qr的入口节点和出口节点,qr,h-1是qr,h的前一个安全功能节点,qr,h+1是qr,h的后一个安全功能节点;从qr,h到qr,h+1的需求链路表示为link(qr,h,qr,h+1),对应带宽需求表示为bw(qr,h,qr,h+1);定义三元组(fr,h,cr,h,zr,h)表示所需的安全功能和资源,即fr,h为qr,h所需的安全功能,cr,h,和zr,h分别为qr,h所需的计算资源和存储资源;

其次,对服务链综合需求进行预处理,得到排序后的服务链请求序列φ`;

最后,对排序后的服务链请求序列φ`进行部署,部署过程中,使得部署结果既满足安全功能的按序排列,也满足安全功能之间的带宽需求。

优选地,对服务链综合需求进行预处理的步骤具体为:

当服务链资源请求到达时,首先对服务链综合需求进行预处理,定义w={w1,w2,…,wr}表示所有r条服务链请求的综合需求,其中wr∈w为服务链请求qr的综合需求,则wr表示为:

其中,α=[α1,α2,α3]表示计算资源、存储资源和网络资源的权重,且满足α1+α2+α3=1,c_sumr、s_sumr、b_sumr分别表示服务链请求中的所有计算资源需求、存储资源需求和带宽资源需求;为r条服务链请求的平均计算资源需求、存储资源需求和带宽资源需求,分别表示如下:

根据计算所得的服务链综合需求大小wr,对服务链请求进行降序排列,得到排序后的服务链请求序列φ`。

优选地,对排序后的服务链请求序列φ`进行部署的步骤具体为:

在对中的安全功能进行部署时,优先部署带宽需求大于预设阈值的网络链路,并将带宽需求大于预设阈值的链路部署在临近位置或部署在同一个物理节点之上。

优选地,对排序后的服务链请求序列φ`进行部署时,将带宽需求大于预设阈值的链路部署在同一个物理节点之上。

优选地,在对中的安全功能进行部署时,首先,根据服务链qr=(qr,0,qr,1,qr,2,…,qr,h-1,qr,h,qr,h+1,…,qr,h,qr,h+1)中的带宽需求大小降序排列qr中的所有链路,更新qr,依次部署每条链路link(qr,h,qr,h+1),其次,在链路link(qr,h,qr,h+1)部署过程中,在满足安全功能节点qr,h、qr,h+1的计算资源、存储资源,以及链路网络资源的基础上,尽量将两节点部署在临近位置,直至完成所有服务链的部署。

优选地,在链路link(qr,h,qr,h+1)部署过程中,在满足安全功能节点qr,h、qr,h+1的计算资源、存储资源,以及链路网络资源的基础上,将两节点部署在同一个物理节点之上。

(三)有益效果

本发明考虑了物理节点可提供多种安全功能的情况,提出一种改进的安全功能服务链部署方法,基于所需计算资源需求、存储资源需求和网络资源需求之间的权重关系综合评估服务链部署所需的资源。并根据所得服务链综合需求大小,部署安全功能服务链,在满足服务链资源需求、成功部署安全功能的前提下,实现了网络成本最小。

附图说明

图1为服务链示例;

图2为现有的两种安全服务功能链部署方式示意图;

图3为底层网络拓扑示例;

图4为服务链请求示例;

图5为本发明的方法流程图。

具体实施方式

为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。

不同于已有部署方法中限定物理节点仅可提供某一种安全功能,本发明提出的安全功能服务链部署方法,考虑了物理节点可提供多种安全功能的情况,该情况更符合真实的应用场景。如图3所示的底层网络拓扑示意图,底层网络拓扑gs共包含15个物理节点,即物理节点集合vs={v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12,v13,v14,v15}。其中转发节点集合ts和安全功能节点集合ns分别为ts={v1,v2,v3,v4,v5,v6,v7,v8,v9}、ns={v10,v11,v12,v13,v14,v15}。每个安全功能节点支持提供多种安全功能,方括号[]内的数据表示该安全功能节点支持的安全功能,图3中每项中的圆括号()内数据分别表示该节点的计算能力和存储能力。例如,安全功能节点v10的计算能力和存储能力分别为20和40,可分别支持实现安全功能f3和f4。每条链路旁边的数字表示链路的带宽容量,“/”左侧为上行带宽容量,右侧为下行带宽容量。例如,链路(v1,v3)的上行带宽容量b(v1,v3)和下行带宽容量b(v3,v1)分别为12mbps和10mbps,即b(v1,v3)=12mbps,b(v3,v1)=10mbps,v1与v3之间的跳数hop(v1,v3)=1。

定义同时到达的r条服务链请求组成的服务链请求集合为φ={q1,q2,…,qr},其中服务链请求可表示为有向序列qr=(qr,0,qr,1,qr,2,…,qr,h-1,qr,h,qr,h+1,…,qr,h,qr,h+1),共包含h个的安全功能节点,对应h个安全功能,1≤h≤h。其中,qr,0和qr,h+1分别表示服务链请求qr的入口节点和出口节点,qr,h-1是qr,h的前一个安全功能节点,qr,h+1是qr,h的后一个安全功能节点;从qr,h到qr,h+1的需求链路表示为link(qr,h,qr,h+1),对应带宽需求表示为bw(qr,h,qr,h+1);定义三元组(fr,h,cr,h,zr,h)表示所需的安全功能和资源,即fr,h为qr,h所需的安全功能,cr,h,和zr,h分别为qr,h所需的计算资源和存储资源(内存需求)。如图4所示的服务链请求示例,服务链请求集合φ={q1,q2,q3},其中服务链请求q1的入口节点和出口节点分别为v1和v8,q1共需求3个安全功能,依次为f1、f4和f2,其中f1是f4的前一个安全功能需求,f2是f4的后一个安全功能需求。q1中安全功能f1需满足的计算资源需求和存储资源需求,分别为3和1。从f1到f4的链路link(f1,f4)对应的带宽需求bw(f1,f4)=4mbps,从f4功能到f2功能的链路link(f4,f2)对应的带宽需求bw(f4,f2)=3mbps。在服务链部署过程中,既要满足安全功能的按序排列,也要满足安全功能之间的带宽需求。

本专利所提出的一种改进的安全功能服务链部署方法流程如图5所示。主要包括服务链综合需求预处理和安全服务功能部署两部分。

当服务链资源请求到达时,首先对服务链综合需求进行预处理。由于同时到达的服务链需求存在差异,定义w={w1,w2,…,wr}表示所有r条服务链请求的综合需求,其中wr∈w为服务链请求qr的综合需求。则wr表示为:

其中,α=[α1,α2,α3]表示计算资源、存储资源和网络资源的权重,且满足α1+α2+α3=1,可根据网络情况、业务类型和用户偏好进行调整。c_sumr、s_sumr、b_sumr分别表示服务链请求中的所有计算资源需求、存储资源需求和带宽资源需求;为r条服务链请求的平均计算资源需求、存储资源需求和带宽资源需求,分别表示如下:

根据计算所得的服务链综合需求大小wr,对服务链请求进行降序排列,定义φ`表示排序后的服务链请求序列,并对φ`进行部署。以图4为例描述服务链综合需求预处理流程,定义计算资源需求、存储资源需求和网络资源需求的权重α=[α1,α2,α3]=[0.3,0.3,0.4],经计算,服务链请求q1,q2,q3的综合需求分别为w1=0.53、w2=1.01和w3=1.46。则新得到的服务链请求序列φ`={q3,q2,q1},服务链部署顺序依次为q3,q2,q1。

在对中的安全功能进行部署时,为避免资源成为瓶颈、降低部署安全服务链所产生的网络成本,本发明优先部署带宽需求较大的网络链路,并将带宽需求较大的链路部署在临近位置。首先,根据服务链qr=(qr,0,qr,1,qr,2,…,qr,h-1,qr,h,qr,h+1,…,qr,h,qr,h+1)中的带宽需求大小降序排列qr中的所有链路,更新qr,依次部署每条链路link(qr,h,qr,h+1)。

在链路link(qr,h,qr,h+1)部署过程中,在满足安全节点qr,h、qr,h+1计算资源、存储资源,以及链路网络资源的基础上,尽量将两节点部署在临近位置,甚至可以考虑部署在同一个物理节点之上。直至完成所有服务链的部署。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1