基于流量分类的软件定义回程网络路由方法与流程

文档序号:17375239发布日期:2019-04-12 23:14阅读:243来源:国知局
基于流量分类的软件定义回程网络路由方法与流程

本发明涉及一种软件定义回程网络路由方法,具体涉及在无线接入与回程网络联合研究场景中,考虑到不同类型网络流量对软件定义回程网络节点和链路的流表、带宽资源偏向程度不同而提出的、一种基于流量分类的软件定义回程网络路由方法,属于软件定义网络路由技术领域。



背景技术:

随着网络流量的剧增和新兴应用业务的出现,未来的移动通信技术将不仅需要解决人与人之间的通信需求,还需要满足从海量机器通信等低速率业务到高清视频播放等高速率业务的需求。同时,未来网络将遵循网络业务融合和按需服务提供的核心理念,为了支持移动互联网和物联网场景设备高效接入的要求,业务流量密度增大,业务类型差异化明显。因此,软件定义网络(software-definednetwork,sdn)作为一种新型的可编程网络架构引起了业界的广泛关注。

sdn系统架构主要由转发平面、控制平面和应用平面三部分组成,其中,控制平面通过南向接口openflow协议对转发平面进行控制,与此同时,控制平面通过北向接口向应用平面开放各类接口,满足网络灵活定制化应用的需求。基于通用硬件设备部署基于可重构的灵活网络,有助于支持精细化资源管控和全面能力开放,从而有效地降低设备管理的复杂度。

由于当前网络终端应用愈加丰富、使得业内研究人士能够在一定程度上借助网络流量中数据包的统计特征反映网络流量应用的特点。因此,如何将sdn技术与软件定义回程网络中的流量接入与路由规划相结合、利用网络流量特征与网络性能特征对接入问题进行研究,并通过控制网络流量的回程路由来实现相应性能目标(例如开销优化或负载均衡等)、实现网络中流量的高效转发和灵活地路由调度,也就成为了目前业内研究人员亟待解决的问题。



技术实现要素:

鉴于现有技术存在上述缺陷,本发明的目的是提出一种基于流量分类的软件定义回程网络路由方法,包括如下步骤:

s1、构造bp神经网络流量分类器对网络流量进行分类;

s2、根据不同类型流量对软件定义回程网络中openflow节点和链路的流表资源、带宽资源偏向不同的特性,建立分类流量的logit选择模型;

s3、根据s2中得到的选择结果,寻找网络流量从入口节点至目的节点的可达路径,计算可达路径的流表和带宽资源开销;

s4、在满足流量转发、流表容量和链路负载要求的情况下,sdn控制器从s3中得到的可达路径中计算并选择使得网络流量在路由时流表和带宽资源总开销最小的路径。

优选地,s1具体包括如下步骤:

s11、基于无线接入与回程网络的联合研究场景特点,选择网络流量分类特征;

s12、采用包含输入层、隐层和输出层的三层神经网络结构,将分类特征数据输入至输入层,并设定隐层神经元以及输出层神经元激活函数,随后计算输出层的误差,并将误差逆向传播至隐层神经元中,最后根据隐层神经元的误差对网络权值和阈值进行调整,构造bp神经网络流量分类器,进而得到网络流量的分类结果。

优选地,s11中所述分类特征包括:数据包个数、数据包平均大小、数据包大小分布方差、数据包平均时间间隔、数据包时间间隔分布方差以及流速率。

优选地,s2具体包括如下步骤:

s21、使用s1中构造的bp神经网络流量分类器将网络流量划分为散列流、平滑流以及低速率流三类,随后根据各个类型网络流量的数据包统计特征,分析三类网络流量对节点处流表资源的消耗情况以及三类网络流量对链路带宽资源的消耗情况;

s22、建立分类流量的logit选择模型,针对不同类型网络流量设计模型中的效用函数,根据效用最大化原则得到网络流量对回程网络边缘节点的选择概率,将网络流量的接入问题转化为回程网络边缘节点被选择的概率问题,进而得到网络流量进入回程网络时的入口节点。

优选地,在s21中,所述三类网络流量对节点处流表资源的消耗情况从高到低依次为散列流、平滑流、低速率流;所述三类网络流量对链路带宽的资源消耗情况从高到低依次为平滑流、低速率流、散列流。

优选地,在s22中,所述效用函数由系统效用与随机效用两部分组成,所述系统效用部分用于描述sdn控制器收集到的软件定义回程网络中边缘openflow节点状态属性,所述随机效用部分用于描述网络流量所属类型的特征。

优选地,s3具体包括如下步骤:sdn控制器收集软件定义回程网络中的相关信息,所述相关信息至少包括节点与链路状态参数、拓扑连接信息、openflow节点处的单位流表开销以回程链路上的单位开销;sdn控制器基于所述相关信息,寻找网络流量从入口节点至目的节点的可达路径,并计算可达路径的流表和带宽资源开销。

优选地,s4具体包括如下步骤:

sdn控制器为软件定义回程网络中的网络流量选择使流表和带宽资源总开销最小的路由路径,所述路径经过的节点包含源节点、目的节点以及转发节点三类;其中,源节点作为网络流量进入回程网络的入口节点,目的节点作为网络流量最终路由的目的地、不再进行下一跳转发,中间节点流入的网络流量大小与流出的网络流量大小一致。

与现有技术相比,本发明的优点主要体现在以下几个方面:

本发明针对无线接入与回程网络联合研究场景,对不同类型网络流量对软件定义回程网络节点和链路的流表、带宽资源偏向程度不同进行了综合考虑,构造出了一种基于bp神经网络的流量分类器并建立了网络流量对回程边缘节点的选择模型,通过设计合理路由路径,实现了对网络路由开销的优化。通过实验结果对比可以得知,本发明在可行性和实用性方面十分优异,具有很高的使用及推广价值。

此外,本发明也为同领域内的其他相关问题提供了参考,可以以此为依据进行拓展延伸,运用于其他关于软件定义回程网络路由方法的技术方案中,具有十分广阔的应用前景。

以下便结合实施例附图,对本发明的具体实施方式作进一步的详述,以使本发明技术方案更易于理解、掌握。

附图说明

图1为本发明方法的流程示意图;

图2为本发明方法的应用场景图;

图3为本发明中所构造的bp神经网络流量分类器示意图;

图4为本发明中基于分类流量的logit选择模型的一个实施例流程图;

图5为本发明中基于流量分类的路由方法的一个实施例流程图;

图6为本发明方法与现有方法的流表和带宽资源总开销对比图。

具体实施方式

本发明揭示了一种基于流量分类的软件定义回程网络路由方法,本方法通过构造的bp神经网络流量分类器,对来自无线接入网的网络流量进行分类,并根据不同类型流量对软件定义回程网络中节点和链路的流表、带宽资源偏向程度不同,建立分类流量的logit选择模型,将网络流量的接入问题转化为回程网络边缘节点被选择的概率问题。在满足流量转发、流表容量和链路负载要求的情况下,sdn控制器计算使得网络流量路由时流表和带宽资源总开销最小的路径。

具体而言,本发明的方法包括如下步骤:

s1、构造bp神经网络流量分类器对网络流量进行分类。

s2、根据不同类型流量对软件定义回程网络中openflow节点和链路的流表资源、带宽资源偏向不同的特性,建立分类流量的logit选择模型。

s3、根据s2中得到的选择结果,寻找网络流量从入口节点至目的节点的可达路径,计算可达路径的流表和带宽资源开销。

s4、在满足流量转发、流表容量和链路负载要求的情况下,sdn控制器从s3中得到的可达路径中计算并选择使得网络流量在路由时流表和带宽资源总开销最小的路径,进而完成基于流量分类的软件定义回程网络路由方法。

以下结合附图对本发明的技术方案做进一步的详细说明。

图1为本发明方法的流程示意图;图2是本发明的应用场景图,在该场景下,异构蜂窝无线接入网络中终端产生的数据流量通过基于bp神经网络的流量分类器进行分类,考虑不同类型流量对回程of节点处可用流表资源和链路资源的偏向程度不同,基于logit的分类流量选择器会将当前到达该选择器的网络流量统计特征与来自sdn控制器的网络资源信息进行联合处理,针对不同类型网络流量来设计logit选择模型中的效用函数,将网络流量的选择接入问题转化为边缘节点被选择的概率问题,进而得到网络流量对回程网络边缘节点的选择接入结果。网络流量在回程网络路由过程中,接入节点作为网络流量路由时的源节点,网络流量经过多个回程转发节点后路由至目的节点,转发节点处可用流表资源以及链路上的可用带宽资源均属于制定路由策略时需要考虑的因素。

使用图描述回程网络拓扑,其中表示回程网络节点集合,e表示回程网络节点间链路的集合。将回程网络中的交换机节点分为两类:边缘节点和转发节点其中,边缘节点具备流量接入和流量转发的功能,转发节点仅对流量进行转发处理,即有定义fm表示进入基于bp神经网络流量分类器的网络流量,该网络流量的数据由接入至基站m的终端产生。网络流量与回程边缘节点e,之间的连接关系用二进制变量bme描述,

图3为本发明中所构造的bp神经网络流量分类器示意图,结合图3进行说明,本发明中的s1具体包括如下步骤:

s11、基于本发明中的无线接入与回程网络的联合研究场景特点,选择网络流量分类特征。

所述分类特征包括数据包个数、数据包平均大小、数据包大小分布方差、数据包平均时间间隔、数据包时间间隔分布方差以及流速率。具体包括:

(1)数据包个数

从接入网设备传送至回程网络网络流量中数据包个数能够在一定程度上反映出当前接入设备,例如宏基站和小基站等的负载情况,在某些终端移动性较弱的场景下接入设备的负载状态能够反映数据量趋势,因此选择流中数据包个数作为神经网络的流属性特征进行训练。

(2)数据包平均大小

不同业务产生的数据包大小不同,根据itu-t发布的数据类应用业务的典型数据范围:网页浏览数据大小约为10kb,大量数据传输数据大小约为10kb-10mb,静态图像传输小于100kb,交互游戏数据大小一般小于1kb,流中数据包平均大小一定程度上能反映流中业务特征。

(3)数据包大小的分布方差

不同业务对于带宽、时延等参数要求不同,而在网络传输过程中表现出来的流量统计特征就会有所差异,流中数据包大小的分布方差作为描述多个数据包大小上差异的统计值,能够在一定程度上反映终端发起的应用业务特征。

(4)数据包平均时间间隔

流中数据包到达的平均时间间隔随着应用业务类型的不同也有所差异,例如视频通话的业务请求流的到达的时间间隔基本是均匀的,因此平均时间间隔能够在一定程度上反映流属性特征。

(5)数据包时间间隔分布方差

不同的应用层协议产生的网络流量数据包时间间隔有很大的差异性,因此,除了选择流中数据包平均时间间隔作为属性特征外,还需选择数据包时间间隔分布方差用以反映流中的协议特性。

(6)流速率

定义流速率为在网络流量连接至回程网络边缘节点传送的数据包数目与连接时长的比值,可以通过流速率来区分接入网中业务特征不同引起的数据包特征差异。

s12、采用包含输入层、隐层和输出层的三层神经网络结构,将分类特征数据输入至输入,并设定隐层神经元以及输出层神经元激活函数,随后计算输出层的误差,并将误差逆向传播至隐层神经元中,最后根据隐层神经元的误差对网络权值和阈值进行调整,构造bp神经网络流量分类器,进而得到网络流量的分类结果。

进一步而言,在进行s12步骤时,首先需要搭建具有t个输入、r个输出的三层神经网络结构。其中,隐层神经元个数设为c,即输入层神经元向量表示为x=(x1,x2,…,xi,…,xt)t,隐层神经元输出向量表示为s=(s1,s2,…,sh,…,sc)t,输出层输出向量表示为y=(y1,y2,…,yj,…,yr)t,期望输出向量为输入层神经元与隐层神经元间的网络权值为vih,隐层神经元与输出层神经元间的网络权值为whj;隐层神经元阈值θh,输出层神经元阈值δj。

随后,需要对如图3所示的神经网络进行训练,这一过程具体包括:

(1)激活函数选择

设定隐层神经元激活函数f(x),输出层神经元激活函数g(x),分别得到隐层神经元sh和输出层神经元yj为,

其中,隐层激活函数选择sigmoid函数,考虑到本文研究场景下的异构无线接入网络流量分类属于多分类问题,输出层激活函数选择softmax函数,因此有

(2)输出均方误差

在明确前向传播的输出层神经元节点的实际输出yj和期望输出后,样本在网络输出的均方误差可表示为,

(3)各层权值调整

根据bp神经网络流量分类步骤,将输入训练集样例输入至输入层神经元后,将信号逐层前传,直到产生输出层的结果,然后计算输出层的误差,再将误差逆向传播至隐层神经元,最后根据隐层神经元的误差来对网络权值和阈值进行调整,因此,计算输出层的误差为,

计算隐层误差为,

调整输出层网络权值为,

调整隐层网络权值为,

本发明中的s2具体包括如下步骤:

s21、使用s1中构造的bp神经网络流量分类器将网络流量划分为三类,随后根据各个类型网络流量的特征,分析三类网络流量对节点处流表资源的消耗情况以及三类网络流量对链路带宽资源的消耗情况。

所述网络流量的分类结果具体包括:

(1)散列流

流中数据包个数偏多,数据包到达时间间隔偏小;流量相对较少但应用业务差异性大,路由时转发规则通用性差,因此对流表资源消耗较多,对带宽资源消耗较少;

(2)平滑流

流中数据包大小分布方差偏小,时间间隔分布方差偏小;这类流对回程of节点的流表资源消耗一般,而这类流在总流量中所占比例较大,更易占用较多链路带宽,因此对网络带宽资源消耗较多;

(3)低速率流

流长度较短或持续连接时间长的网络流量;无论是从偏短的流长度或是从较长的持续连接时间来看,对节点处的流表资源消耗都是偏少的,同时考虑到较长的持续连接时间,这类流会比散列流对带宽资源消耗稍多,但不会多于平滑流对带宽资源的消耗;

综上所述,三类流中对节点处流表资源消耗情况从高到低为:散列流、平滑流、低速率流;对链路带宽资源消耗情况从高到低为:平滑流、低速率流、散列流。

s22、建立分类流量的logit选择模型,针对不同类型网络流量设计模型中的效用函数,根据效用最大化原则得到网络流量对回程网络边缘节点的选择概率,将网络流量的接入问题转化为回程网络边缘节点被选择的概率问题,进而得到网络流量进入回程网络时的入口节点。所述效用函数由系统效用与随机效用两部分组成,所述系统效用部分用于描述sdn控制器收集到的软件定义回程网络中边缘openflow节点状态属性,所述随机效用部分用于描述网络流量所属类型的特征。

本发明中s3具体包括如下步骤:sdn控制器收集软件定义回程网络中的相关信息,所述相关信息至少包括节点与链路状态参数、拓扑连接信息、openflow节点处的单位流表开销以及网络流量经过回程链路时的链路单位开销;sdn控制器基于所述相关信息,寻找网络流量从入口节点至目的节点的可达路径,并计算可达路径的流表和带宽资源开销。

本发明中s4具体包括如下步骤:

sdn控制器为软件定义回程网络中的网络流量选择使流表和带宽资源总开销最小的路由路径,所述路包括路径由源节点、目的节点以及转发节点三部分;其中,源节点作为网络流量进入回程网络的入口节点,目的节点作为网络流量最终路由的目的地、不再进行下一跳转发,中间节点流入的网络流量大小与流出的网络流量大小一致。

在s4步骤中,需要考虑网络流量转发过程中的节点进出流量约束、路径经过的openflow节点处流表资源容量约束和链路负载约束,即必须满足经过任意链路的总网络流量带宽不超过链路容量上限,经过openflow节点的网络流量消耗的流表资源不超过流表容量上限,进入转发节点的网络流量与离开转发节点的网络流量守恒等条件。

以下再次结合附图对上述步骤进行详细说明。

图4是本发明基于分类流量的logit选择模型的一个实施例流程图:回程网络of节点处的流表资源受到tcam(ternarycontentaddressablememory,三态内容寻址存储器)容量和价格等因素的影响,of节点能够存储的流表数目有限。然而,回程网络中网络流量的转发策略必须通过sdn控制器下发流表规则至节点来实现,因此,针对本发明的无线接入与回程网络联合研究场景,对网络流量的接入问题研究应进一步考虑网络流量和回程边缘节点处各类网络资源的偏向程度。通过基于bp神经网络的接入网流量分类器后,网络流量在进入回程网络前根据其流统计特征能够被划分为具有不同流中数据包特征的网络流量类型。通常of节点流表资源的消耗往往与经过该节点的流数目正相关,链路带宽资源的消耗与链路运送的流量大小正相关,建立logit选择模型来衡量三类网络流量对网络资源的偏向程度。

对于每个等待进入回程网络的网络流量,其可接入的边缘节点集合为利用效用函数来刻画网络流量与回程边缘节点之间基于流量特征和网络性能的“价值”关系,其中效用函数由系统效用与随机效用组成,即:其中为回程边缘节点e对网络流量fm的系统效用,即是边缘节点e可以被sdn控制器收集到的各个节点状态属性的函数;为随机效用,用于描述网络流量所属类型的特征。即k=1时表示该网络流量属于散列流,k=2时表示该网络流量属于平滑流,k=3时表示该网络流量属于低速率流。

系统效用受到边缘节点处链路可用总带宽资源、可用流表资源和边缘节点e的度数的影响,将系统效用定义为前述三类属性的线性函数,

其中,de表示边缘节点处链路可用总带宽资源,te表示边缘节点处可用流表资源,ge表示边缘节点e的度数,α1、α2和α3均为待估参数。

定义随机效用为网络流量特征的描述函数,网络流量流速率与流中数据包到达时间间隔的乘积能够反映此网络流量在数据包到达空隙间占用的网络带宽资源,同时,网络流量中数据包到达时间间隔能够反映流对流表资源的偏向程度。定义当前网络流量流速率与流中数据包到达时间间隔的乘积与其余网络流量流速率与流中数据包到达时间间隔的乘积总和的比值来衡量对带宽资源的偏向程度,定义当前网络流量中数据包到达时间间隔与其余网络流量到达时间间隔总和的比值来衡量对流表资源的偏向程度,即,

其中,表示网络流量中数据包到达时间间隔,表示网络流量的流速率与流中数据包到达时间间隔的乘积,β1k、β2k分别表示第k类网络流量对流表资源、带宽资源偏向的效用参数。

因此根据前述分析有:k=1时,β11>β21;k=2时,β12<β22;k=3时,β13=β23。

根据效用最大化原则,网络流量对边缘节点e的选择概率表示为

其中,α1、α2和α3由极大似然估计法估计,β1k、β2k由网络流量类型决定。

通过上述内容将网络流量进行分类,并根据不同类型网络流量对流表、带宽资源偏向程度不同的原则建立基于分类流量的logit选择模型,将网络流量的接入问题转化为回程网络边缘节点被选择的概率问题,得到网络流量进入回程网络的入口节点。进而,本发明对软件定义回程网络中网络流量的路由问题进行阐述。

定义二进制变量描述of节点v是否在路径p上,

二进制变量描述链路l是否在路径p上,l∈e;

二进制变量描述路径p是否被来自异构蜂窝无线接入网的网络流量使用,集合是网络流量的路径集合。

定义of节点处的单位流表开销链路l上的单位带宽开销ηl,l∈e。另外,考虑到交换机tcam容量限制以及链路传送能力,分别定义节点处流表容量上限和链路容量上限ul,l∈e。sdn控制器具有网络能力感知功能,收集网络节点处的流表资源使用、链路带宽资源占用、链路时延和丢包率等参数,定义of节点v处前一时刻流表使用量为tv0,链路l前一时刻带宽使用量为ul0。

网络流量接入边缘节点时,网络流量占用的带宽资源不应超过该边缘节点处可用带宽资源,即满足网络流量接入约束,

通过回程边缘节点e进入网络的流第一跳路由路径的源节点e与下一跳节点构成链路l。此外,采用以下约束表达路径p的使用情况:

网络流量路由路径p所经过的节点包含源节点、目的节点以及转发节点,源节点作为网络流量进入回程网络的入口节点;目的节点作为网络流量最终路由的目的地,不再进行下一跳转发;中间节点流入的网络流量大小与流出的网络流量大小一致,因此有,

网络流量在回程网络中经过路径p进行转发时,网络流量穿过回程of节点时均需要满足该节点处流表资源容量的约束,即网络流量对该of节点处流表资源的占用应小于节点流表资源的容量上限,否则会在该节点处发生流表溢出现象,增加控制器的计算量并影响网络性能,因此需要满足流表容量约束,即,

同时,网络流量使用路径p进行转发时,经过的每条回程链路都应符合带宽资源容量约束,即已使用带宽与网络流量即将占用带宽资源之和不超过链路l,l∈e的带宽容量上限,

在软件定义回程网络中,流表资源和链路带宽资源的负载程度对网络性能有较大影响,当流表和链路带宽资源负载较大时,网络会发生拥塞或性能下降等问题。本发明通过对流成本问题进行研究,建立相应优化模型对网络流量路径进行规划,以最小化资源开销为目标,对流路由问题进行求解。根据分类流量的logit选择模型,待接入回程边缘节点的网络流量根据其统计特征和边缘节点处的状态信息,对边缘节点e,的选择可表示为公式(1),因此,网络流量在回程路由过程中经过of节点处产生的流表资源开销为,

网络流量在回程路由过程汇中经过链路产生的带宽资源开销为,

综上,以公式(7)、(8)的网络流量路由过程中流表资源和带宽资源开销之和为优化目标,考虑网络流量接入、链路负载和流表流量等约束,建立基于流量分类的回程路由问题优化模型如下,

上述优化问题属于np-hard问题,难以使用传统的最优化方法求解,本发明设计新的方法求解上述问题,图5是基于流量分类的路由方法的一个实施例流程图,该实施例所述方法包括如表1所示步骤。

表1基于流量分类的路由方法的一个实施例方法

通过上述方法,能够解决接入网网络流量进入回程网络路由时的入口节点选择问题,即在无线接入与回程网络联合研究场景中确定网络流量回程路由的源节点,并以路由开销为优化目标,求解可行的路由路径,使得最终路由开销达到优化效果。

图6是本发明所述方法的一个实施例与现有方法的流表和带宽资源总开销对比图。可以看出,本发明方法在相同的系统环境设定下,网络流量在回程网络中产生的流表、带宽资源总开销小于传统ospf(openshortestpathfirst,开放式最短路径优先)方法,本发明提出的方法具有更好的开销优化效果。

本发明针对无线接入与回程网络联合研究场景,对不同类型网络流量对软件定义回程网络节点和链路的流表、带宽资源偏向程度不同进行了综合考虑,构造出了一种基于bp神经网络的流量分类器并建立了网络流量对回程边缘节点的选择模型,通过设计合理路由路径,实现了对网络路由开销的优化。通过实验结果对比可以得知,本发明在可行性和实用性方面十分优异,具有很高的使用及推广价值。

此外,本发明也为同领域内的其他相关问题提供了参考,可以以此为依据进行拓展延伸,运用于其他关于软件定义回程网络路由方法的技术方案中,具有十分广阔的应用前景。

对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神和基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内,不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

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