基于OBDD的SDN双端可靠性评估方法及系统技术方案

技术编号:36428220 阅读:6 留言:0更新日期:2023-01-20 22:39
本发明专利技术公开了一种基于OBDD的SDN双端可靠性评估方法及系统,利用SDN集中控制且易于编程的特性建立了SDN双端可靠性评估模型,并通过设计网络模型中的拓扑管理模块和路径计算模块得到满足带宽和时延约束要求的双端最小路径集合,以最小路集

【技术实现步骤摘要】
基于OBDD的SDN双端可靠性评估方法及系统


[0001]本专利技术属于网络可靠性评估领域,特别是基于二元有序决策图OBDD的SDN双端可靠性评估方法。

技术介绍

[0002]网络可靠性评估作为网络安全评估领域内评估网络可靠性的有效方法,在各种网络系统中都得到了广泛应用。可靠性是指元件、产品、系统在一定时间内、一定条件下无故障地完成特定任务的有效性和可能性。网络可靠度,即概率度量值,是用概率来度量网络连通能力的一种网络可靠性参数。
[0003]目前关于网络可靠度计算的方法可以分为两类:精确算法和近似算法。精确算法主要有以下五种:状态枚举法、容斥原理法、不交积和法、因子分解法和状态空间分解法。状态枚举法将所有符合网络传输条件的网络状态枚举出来计算网络可靠度。容斥原理法将网络可靠度表示为所有最小路集的并,然后采用容斥原理去掉相容事件中相交的部分再计算剩余部分的网络可靠度。不交积和法将网络可靠度表示为所有最小路集的并,然后将这个并化为彼此不相交项的和再计算网络可靠度。因子分解法通过将网络分解为子网络,并将得到的子网络进行递归地分解直至不能分解为止,通过不断迭代得到网络可靠度。状态空间分解法将网络状态空间分解为三种状态的集合,并通过不断分解不确定状态集合将网络状态空间分解至两个状态集合,此时所有可接受状态集合的概率之和为整个网络的可靠度。然而,由于网络可靠度计算是一个NP难问题,因此精确算法多用于求解小型网络或者一些具有特殊拓扑结构的网络的可靠度,对于中型或者大型网络常采用近似算法来求取网络可靠度。近似算法求解网络可靠度是一种以牺牲可靠度精度从而降低计算难度的方法。常见的有上下界法、蒙特卡罗法、图变换法、蚁群算法、遗传算法、神经网络算法等。
[0004]随着网络规模的逐渐扩大,利用最小路集或者最小割集计算网络可靠性时,计算过程会变得十分复杂,导致算法的效率急剧下降。这促使了新方法二元决策图的出现。二元决策图(Binary Decision Diagrams,BDD)被认为是最先进的高效存储大型布尔术语的数据结构。BDD是一个有向无环图,它由一个根节点、若干个中间节点和两个终端节点组成。如果不同的布尔变量以相同的顺序出现在从根节点开始的所有路径上,则称这种BDD为有序二元决策图(Ordering Binary Decision Diagrams,OBDD)。就计算而言,OBDD方法的一个很大的优点是分析处理的计算需求与OBDD的图形大小成线型比例。基于OBDD的方法减少了计算量,缩短了计算时间,是一种准确、高效的计算方法。
[0005]然而,基于OBDD的可靠性算法的复杂度计算高度依赖于所要计算的OBDD图形的大小。同时,OBDD的大小是由所选择的变量排序决定的。现有的寻找最佳变量排序的方法可以分为两类:静态技术和动态技术。在静态技术中,所提出的大部分方法都是在实际构造网络OBDD之前找到变量的最优顺序,通过分析所得到的布尔函数相关的不同信息,决定变量的顺序,然后进行OBDD的构造。在动态技术中,提出的方法主要是通过调整OBDD已有的变量顺序来减少OBDD大小的。其中,筛选算法是最成功的技术之一。它通过局部搜索,不断交换相
邻变量的位置,迭代地找到所有变量的最佳位置。近年来,许多现代智能算法不断地被引入OBDD的最小化算法中。比如,模拟退火算法、遗传算法等。基于遗传算法的方法已经产生了较好的结果。
[0006]基于动态技术得到的OBDD规模通常要小于启发式排序方法得到的OBDD规模,但是其通常是非常耗时的,网络可靠性评估中通常选择构建时间更短的启发式排序方法。其中,广度优先搜索BFS、深度优先搜索被广泛应用于寻找变量序。BFS从源节点开始,访问其所有相关联的边,然后依次从边相连的节点继续访问,直到所有的边和节点被访问。然后按照遍历过程中边的出现顺序,进行变量的排序。DFS从源结点开始,访问一条相关联的边,然后从该相连节点依次访问,直到所有的边和节点被访问。此时,变量的排序就是遍历过程中边出现的顺序。Du提出了一种渐进排序方法,在OBDD顶点的每个分支上进行不同的变量排序,虽然不能保证OBDD的结构唯一,但是有更高的机会产生更小的OBDD,并且与经典算法产生的OBDD具有相同的属性。Pan等人利用边界集的思想,提出一种新的“边界长度”概念,并设计了一种基于边界长度的边排序策略,在变量排序过程中尽可能的保持最小边界长度,这种方法可以产生较好的OBDD规模并且可以为特定的网络边排序提供重要的参考依据。Minh等人基于Hardy的分解方法,得到了一种动态排序启发式方法,适用于各种网络结构,并且在不规则网络结构下可以产生规模更小的OBDD。

技术实现思路

[0007]本专利技术的目的在于针对现有技术存在的问题,精确评估SDN双端可靠性,提供一种基于二元有序决策图OBDD的SDN双端可靠性评估方法,利用SDN集中控制且易于编程的特性建立了SDN双端可靠性评估模型,并通过设计网络模型中的拓扑管理模块和路径计算模块得到满足带宽和时延约束要求的双端最小路径集合,以最小路集

广度优先搜索算法确定BDD的变量排序,在OBDD构建模块中利用香农公式构建对应的OBDD,最后,通过可靠性评估模块自底向上递归计算网络可靠度,完成SDN双端可靠性评估。本专利技术方法联合带约束的邻接终点矩阵算法、最小路集

广度优先搜索算法、有序二元决策图OBDD等方法,对SDN下的连通可靠性进行评估,具有良好的可扩展性。
[0008]实现本专利技术目的的技术解决方案为:一种基于OBDD的SDN双端可靠性评估方法,所述方法包括如下步骤:
[0009]步骤1,根据目标软件定义网络SDN的网络结构,利用SDN控制器南向接口的协议获取网络中的节点和链路信息,构建目标SDN双端可靠性评估模型,以下简称目标网络,其中包括拓扑管理模块、路径计算模块、有序二元决策图OBDD构建模块和可靠性评估模块;所述拓扑管理模块,用于动态收集网络信息,包括当前网络的链路信息和节点信息;路径计算模块,用于计算通信节点之间的所有满足约束的最小路径集合;OBDD构建模块,用于根据路径计算模块的结果和当前拓扑信息构建OBDD模型;可靠性评估模块,用于在OBDD模型中递归计算双端可靠度;
[0010]步骤2,根据拓扑管理模块得到动态目标网络拓扑信息,在路径计算模块中使用改进的带约束的邻接终点矩阵算法,求取目标SDN双端可靠性评估模型源节点到目的节点的最小路径集合,其满足给定的带宽约束和时延约束;
[0011]步骤3,基于最小路径集合,将最小路径转换为等价的布尔函数形式;
[0012]步骤4,基于最小路径集合,利用最小路集

广度优先搜索算法计算从源节点到目的节点的变量排序;
[0013]步骤5,在OBDD构建模块中,将满足约束要求的最小路径集合转换得到的布尔函数,运用最小路集

广度优先搜索算法得到的变量排序和香农分解公式构造源节点到目的节点的OBDD;
[0014]步骤6,根本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于OBDD的SDN双端可靠性评估方法,其特征在于,所述方法包括如下步骤:步骤1,根据目标软件定义网络SDN的网络结构,利用SDN控制器南向接口的协议获取网络中的节点和链路信息,构建目标SDN双端可靠性评估模型,以下简称目标网络,其中包括拓扑管理模块、路径计算模块、有序二元决策图OBDD构建模块和可靠性评估模块;所述拓扑管理模块,用于动态收集网络信息,包括当前网络的链路信息和节点信息;路径计算模块,用于计算通信节点之间的所有满足约束的最小路径集合;OBDD构建模块,用于根据路径计算模块的结果和当前拓扑信息构建OBDD模型;可靠性评估模块,用于在OBDD模型中递归计算双端可靠度;步骤2,根据拓扑管理模块得到动态目标网络拓扑信息,在路径计算模块中使用改进的带约束的邻接终点矩阵算法,求取目标SDN双端可靠性评估模型源节点到目的节点的最小路径集合,其满足给定的带宽约束和时延约束;步骤3,基于最小路径集合,将最小路径转换为等价的布尔函数形式;步骤4,基于最小路径集合,利用最小路集

广度优先搜索算法计算从源节点到目的节点的变量排序;步骤5,在OBDD构建模块中,将满足约束要求的最小路径集合转换得到的布尔函数,运用最小路集

广度优先搜索算法得到的变量排序和香农分解公式构造源节点到目的节点的OBDD;步骤6,根据构造的OBDD以及目标网络中链路的可用概率,在可靠性评估模块中采用自底向上的递归方式计算源节点到目的节点的可靠度,实现对目标网络的双端可靠性评估。2.根据权利要求1所述的基于OBDD的SDN双端可靠性评估方法,其特征在于,步骤1中具体利用SDN控制器南向接口的OpenFlow协议获取网络中的节点和链路信息,构建目标SDN双端可靠性评估模型,描述为九元组:G=(V,E,C,T,P,c0,t0,s,d)其中,(1)V=(v1,v2,

,v
n
)表示目标网络的节点集合,n为网络中的节点数目,v
n
为第n个节点;(2)E=(e1,e2,

,e
m
)表示目标网络的链路集合,m为网络中的链路数目,e
m
为第m个链路;(3)C={c
i
|1≤i≤m},c
i
表示链路e
i
的最大剩余带宽;(4)T={t
i
|1≤i≤m},t
i
表示链路e
i
当前的时延;(5)P={p
i
|1≤i≤m},p
i
表示链路e
i
的可用概率;(6)c0,t0分别为给定的带宽约束和时延约束;(7)s,d分别表示目标网络中的源节点和目的节点。3.根据权利要求1或2所述的基于OBDD的SDN双端可靠性评估方法,其特征在于,步骤2中从拓扑管理模块中获取动态目标网络拓扑信息,生成邻接矩阵终点矩阵R=[r
jk
],i,j,k∈[1,n],r∈[1,n

1],其中,
矩阵B
r
包含了目标网络所有从节点i到节点j长度为r的最小路径,矩阵R表示目标网络中每条链路的终点;通过改进的带约束的邻接终点矩阵算法计算满足给定带宽约束和时延约束的最小路径集合,具体过程如下:步骤2.1,从拓扑管理模块中获取目标网络所有链路和节点信息,利用给定的带宽约束c0和时延约束t0,构造满足约束条件的链路集合E

;步骤2.2,根据当前链路集合E

和目标网络模型G的节点集合V,生成一步邻接矩阵B1和终点矩阵R;步骤2.3,根据运算法则B
r
=s
r
‑1*R,计算得到矩阵并记录矩阵B
r
中所有位于s行d列的元素,即得到从源节点s到目的节点d的最小路径节点集合L={l1,l2,

,l
w
};步骤2.4,根据计算得到的最小路径节点集合L,利用两个节点之间对应的链路关系,将最小路径节点集合转换为最小路径链路集合,得到从源节点s到目的节点d的满足带宽约束c0和时延约束t0的最小路径链路集合L

={l
i
|l
i
∈L,C
i
≥c0,T
i
≤t0},l
i
表示第i条最小路径链路,C
i
表示链路l
i
的可用带宽,T
i
表示链路l
i
的最大时延。4.根据权利要求3所述的基于OBDD的SDN双端可靠性评估方法,其特征在于,步骤3将最小路径转换为等价的布尔函数形式,具体为:设最小路径链路集合L

中的第i个最小路径l
i
为l
i
=(e
i1
,e
i2
,...,e
iu
),其中u为最小路径l
i
中的链路数目,e
iu
为最小路径l
i
中的第u个链路,则l
i
对应的等价布尔函数表示为f
i
=(e
i1
·
e
i2

)
·
e

【专利技术属性】
技术研发人员:庄毅姜厚海曹子宁顾晶晶
申请(专利权)人:南京航空航天大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1