一种测试床拓扑结构的二分图采样方法及装置与流程

文档序号:15845380发布日期:2018-11-07 08:57阅读:283来源:国知局
一种测试床拓扑结构的二分图采样方法及装置与流程

本发明涉及网络拓扑领域,特别是涉及一种测试床拓扑结构的二分图采样方法及装置。

背景技术

路由协议、资源定位等计算机网络技术的开发、测试与评估,需要构建相应的仿真测试床。其中,测试床拓扑结构的规模缩减,是降低测试床构建成本、提升测试运行时间效率的重要保证。在计算机网络的多样化拓扑连接关系中,二分图拓扑结构是一种广泛存在的连接模式。当需要对多子网结构的子网与子网之间拓扑连接关系的合理性进行测试与评估时,在仿真的计算机网络测试床上需要配置子网与子网之间的二分图拓扑结构。图采样是测试床拓扑结构规模缩减的常用方法。但是,现有的图采样技术(例如,forestfire,randomwalk,breadthfirstsearch和snowball)应用范围较广,可被应用于社交网络、交通网络等多样化的图结构,缺乏对计算机网络中二分图拓扑结构独有属性的感知,无法在维持属性稳定性的条件下实现二分图拓扑结构70%以上的大比例规模缩减。



技术实现要素:

本公开的目的是针对现有技术的不足,本发明面向计算机网络中广泛存在的二分图拓扑结构,提出一种测试床拓扑结构的二分图采样方法及装置。

为了实现上述目的,本公开提出一种测试床拓扑结构的二分图采样方法,具体包括以下步骤:

步骤1,获取计算机网络二分图拓扑结构g=(v1,v2,e)中节点集v1包含所有节点的度,设d1,d2,…,ds为这些节点度中互不重复的全部节点度,其中d1>d2>…>ds>0,v1和v2为二分图拓扑结构g的节点集且e为g的边集,s为大于0的正整数,设定规模缩减率rr,其被定义为需要从计算机网络二分图拓扑结构g=(v1,v2,e)中删除的边数与||e||的比率,其中||e||表示集合e的势,集合e的势为边集e包含元素的总数;缺省情况下rr的取值为0.96;

步骤2,计算节点度d1,d2,…,ds在节点集v1的分布比率f(d1),f(d2),…,f(ds),其中f(dk)(k=1,2,…,s)被定义为集合v1中度为dk的节点数与||v1||的比率,||v1||表示集合v1的势,集合v1的势为节点集v1包含元素的总数;

步骤3,获取计算机网络二分图拓扑结构g=(v1,v2,e)中节点集v2包含所有节点的最大度dmax;

步骤4,获取节点集v2的度分布{g(d)|d=1,2,…,dmax},其中g(d)表示节点集v2中度为d的节点数与||v2||的比率,||v2||表示集合v2的势,集合v2的势为节点集v2包含元素的总数;

步骤5,初始化二分图采样子图g′=(v′1,v′2,e′)←g=(v1,v2,e),

所述g′=(v′1,v′2,e′)←g=(v1,v2,e)表示将g=(v1,v2,e)赋值给g′=(v′1,v′2,e′),v′1和v′2为二分图拓扑结构g′的节点集且e′为g′的边集;

步骤6,初始化节点度分布{g′(d)|d=1,2,…,dmax}←{g(d)|d=1,2,…,dmax};

步骤7,初始化变量t←0,并计算需要删除边的总数ed=||e||·rr;

步骤8.如果t<ed,转步骤9;否则,将当前状态g′=(v′1,v′2,e′)作为最终输出结果,转步骤15;

步骤9.设集合如果||s||>0,任意选择集合s中一个节点v,并计算得到边的集合||s||表示集合s的势,集合s的势为节点集s包含元素的总数,表示存在节点集v′2中的一个节点w使得边(v,w)∈e′成立的全部边(v,w)构成的集合,v为节点集v′1的节点,

如果||s||=0,以离散概率分布pk/σi=1,2,…,spi(k=1,2,…,s)随机抽取一个节点度d∈{d1,d2,…,ds},其中pk(k=1,2,…,s)被定义为其中f(di)(i=1,2,…,s)在步骤2已获得,并计算得到边的集合eo={(v,w)|v∈v′1∧w∈v′2∧(v,w)∈e′∧dv=d},{(v,w)|v∈v′1∧w∈v′2∧(v,w)∈e′∧dv=d}表示满足节点v属于节点集v′1且节点w属于节点集v′2且边(v,w)属于边集e′且节点v的度dv等于d的全部边(v,w)构成的集合;

步骤10,计算dh=argdmaxd∈d{g′(d)-g(d)},其中,所述dh=argdmaxd∈d{g′(d)-g(d)}表示将集合d中使得g′(d)-g(d)最大值的d的取值赋值给dh,其中d∈d,所述表示以二分图g′=(v′1,v′2,e′)中节点度dw为元素的集合,其中节点w满足以下要求:节点w属于节点集v′2且存在节点集v′1中的一个节点v使得边(v,w)属于集合eo;

步骤11,计算集合eo的一个子集:ea={(v,w)|(v,w)∈eo∧dw=dh},

ea={(v,w)|(v,w)∈eo∧dw=dh}表示满足边(v,w)属于集合eo且节点w在二分图g′=(v′1,v′2,e′)中的度等于dh的全部边(v,w)构成的集合;

步骤12,从集合eo中均等概率分布地抽取一条边e;

将该边从二分图g′=(v′1,v′2,e′)中删除,即更新e′←e′/{e},同时更新二分图g′=(v′1,v′2,e′)的节点集v′1和v′2:将节点集v′1和v′2中度为0的节点删除,所述e′←e′/{e}表示将e′/{e}赋值给e′,所述e′/{e}表示从集合e′中删除一条边e;

步骤13,更新节点度分布{g′(d)|d=1,2,…,dmax},其中g′(d)(d=1,2,…,dmax)为节点集v′2中度为d的节点数与||v′2||的比率,其中||v′2||表示集合v′2的势,集合v′2的势为节点集v′2包含元素的总数;

步骤14,更新t←t+1,转步骤8,所述t←t+1表示将t+1赋值给t;

步骤15,依据输出的采样二分图g′=(v′1,v′2,e′)在计算机网络测试床上调用仿真节点资源,生成测试床的仿真拓扑结构。

二分图定义:如果简单无向图g=(v,e)的节点集v=v1∪v2,其中v1∩v2=φ且对任意一条边e=(u,w)∈e的两个端点u和w不可能同时属于v1或同时属于v2,则该图可以表示为g=(v1,v2,e),且该图被称为二分图。

进一步地,在步骤2中,所述f(dk)(k=1,2,…,s)被定义为集合v1中度为dk的节点数与||v1||的比率,||v1||表示集合v1的势(即,节点集v1包含元素的总数),所述f(d1),f(d2),…,f(ds)表示二分图拓扑结构g中节点集v1包含所有节点的度分布。

进一步地,在步骤6中,所述{g′(d)|d=1,2,…,dmax}←{g(d)|d=1,2,…,dmax}表示将{g(d)|d=1,2,…,dmax}赋值给{g′(d)|d=1,2,…,dmax},其中g′(d)表示节点集v′2中度为d的节点数与||v′2||的比率,||v′2||表示集合v′2的势,集合v′2的势为节点集v′2包含元素的总数,所述{g(d)|d=1,2,…,dmax}表示二分图拓扑结构g中节点集v2的度分布,即g(d)被定义为节点集v2中度为d的节点数与||v2||的比率,其中||v2||表示集合v2的势,集合v2的势为节点集v2包含元素的总数。

进一步地,在步骤7中,所述ed=||e||rr表示从输入到输出需要删除的边的总数,所述t←0表示将0赋值给t,||e||表示集合e的势,集合e的势为边集e包含元素的总数,rr表示需要从计算机网络二分图拓扑结构g=(v1,v2,e)中删除的边数与该二分图g包含边数的比率,其等于需要从二分图g中删除的节点数与该二分图g包含节点数的比率。

进一步地,在步骤15中,所述仿真节点资源包括服务器、路由器、传感器网络节点、无线通信基站其中一种。

本公开还提供了一种测试床拓扑结构的二分图采样装置,所述装置包括:

第一单元,用于获取计算机网络二分图拓扑结构g=(v1,v2,e)中节点集v1包含所有节点的度,设d1,d2,…,ds为这些节点度中互不重复的全部节点度,其中d1>d2>…>ds>0,v1和v2为二分图拓扑结构g的节点集且e为g的边集,s为大于0的正整数,并用于设定规模缩减率rr,其被定义为需要从计算机网络二分图拓扑结构g=(v1,v2,e)中删除的边数与||e||的比率,其中||e||表示集合e的势,集合e的势为边集e包含元素的总数;缺省情况下rr的取值为0.96;

第二单元,用于计算节点度d1,d2,…,ds在节点集v1的分布比率f(d1),f(d2),…,f(ds),其中f(dk)(k=1,2,…,s)被定义为集合v1中度为dk的节点数与||v1||的比率;

第三单元,用于获取二分图拓扑结构g中节点集v2包含所有节点的最大度dmax;

第四单元,用于获取节点集v2的度分布{g(d)|d=1,2,…,dmax},其中g(d)表示节点集v2中度为d的节点数与||v2||的比率;

第五单元,用于初始化二分图g′=(v′1,v′2,e′)←g=(v1,v2,e);

第六单元,用于初始化节点度分布{g′(d)|d=1,2,…,dmax}←{g(d)|d=1,2,…,dmax};

第七单元,用于初始化变量t←0,并计算需要删除边的总数ed=||e||rr;

第八单元,用于判断如果t<ed,转第九单元;否则,当前状态g′=(v′1,v′2,e′)为最终输出结果,转第十五单元;

第九单元,用于计算集合如果||s||>0,任意选择集合s中一个节点v,并计算得到边的集合

如果||s||=0,以离散概率分布pk/σi=1,2,…,spi(k=1,2,…,s)随机抽取一个节点度d∈{d1,d2,…,ds},其中pk(k=1,2,…,s)被定义为其中f(di)(i=1,2,…,s)在第二单元已获得,并计算得到边的集合eo={(v,w)|v∈v′1∧w∈v′2∧(v,w)∈e′∧dv=d};

第十单元,用于计算dh=argdmaxd∈d{g′(d)-g(d)},其中

第十一单元,用于计算集合eo的一个子集:ea={(v,w)|(v,w)∈eo∧dw=dh};

第十二单元,用于从集合eo中均等概率分布地抽取一条边e,

将该边从二分图g′=(v′1,v′2,e′)中删除,即更新e′←e′/{e},同时更新二分图g′=(v′1,v′2,e′)的节点集v′1和v′2:将节点集v′1和v′2中度为0的节点删除;

第十三单元,用于更新节点度分布{g′(d)|d=1,2,…,dmax},其中g′(d)(d=1,2,…,dmax)为节点集v′2中度为d的节点数与||v2′||的比率;

第十四单元,用于更新t←t+1,转第八单元;

第十五单元,用于依据输出的采样二分图g′=(v′1,v′2,e′)在计算机网络测试床上调用服务器、路由器、传感器网络节点、无线通信基站等仿真节点资源,生成测试床的仿真拓扑结构。

本公开的有益效果为:本公开采用二分图采样方法,设计计算机网络测试床二分图拓扑结构的大比例规模缩减技术,在维持拓扑属性稳定不变的前提条件下大比例降低测试床构建所需的仿真资源节点数量,解决有限仿真资源条件下的测试床构建难点问题,从而达到大幅度降低测试床构建成本和测试任务运行时间复杂性等经济效益,本发明可以在保持节点度分布、聚类系数和路径长度等重要拓扑属性稳定即近似保持不变的前提下,大比例地缩减计算机网络测试床二分图拓扑结构的规模,规模缩减率可以达到96%以上。

附图说明

通过对结合附图所示出的实施方式进行详细说明,本公开的上述以及其他特征将更加明显,本公开附图中相同的参考标号表示相同或相似的元素,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,在附图中:

图1所示为计算机网络中子网与子网之间的二分图拓扑连接关系图;

图2所示为计算机网络测试床二分图拓扑结构大比例规模缩减技术方案的流程图。

具体实施方式

以下将结合实施例和附图对本公开的构思、具体结构及产生的技术效果进行清楚、完整的描述,以充分地理解本公开的目的、方案和效果。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

如图1所示为计算机网络中子网与子网之间的二分图拓扑连接关系图,其中,节点为服务器、路由器、传感器网络节点、无线通信基站等网络设备,边为网络设备之间数据通信的路径,下面结合图1来阐述根据本公开的实施方式的一种测试床拓扑结构的二分图采样方法。

在计算机网络的多样化拓扑连接关系中,二分图拓扑结构是一种广泛存在的连接模式。如图1所示,当需要对子网1与子网2之间拓扑连接关系的合理性进行测试与评估时,在仿真的计算机网络测试床上需要配置子网1与子网2之间的二分图拓扑结构。

二分图拓扑结构具有以下特征:将子网1和子网2分别采用集合v1和集合v2表示,集合v1中任意两个节点之间都不存在边连接关系,且集合v2中任意两个节点之间也不存在边连接关系。即,计算机网络二分图拓扑结构中每条边的两个端点必定分别属于集合v1和集合v2。此外,集合v1和集合v2中每个节点的度都远小于二分图拓扑包含的节点总数,即集合v1和集合v2中每个节点的度不随着二分图拓扑包含节点总数的增长而变化。

节点的度被定义为二分图拓扑中与该节点相邻的边的总数。

虽然已有图采样技术已被应用于测试床拓扑结构的规模缩减,但是这些技术的应用范围广泛,没有考虑计算机网络二分图拓扑独有的结构特征,难以在保持重要拓扑属性稳定性的条件下达到70%以上的规模缩减率。

规模缩减率被定义为:规模缩减过程删除的节点数占原始拓扑中节点数的比率。

因此,本发明关注于计算机网络测试床独有的二分图拓扑结构,采用二分图采样技术,能够在保持重要拓扑属性稳定性的条件下实现测试床拓扑96%以上的规模缩减率。依据压缩规模后的拓扑结构,在小规模测试床上配置拓扑连接关系,可以实现真实大规模计算机网络拓扑在小规模测试床的等效部署。

计算机网络二分图拓扑结构可以采用简单无向图g=(v1,v2,e)进行建模,其中v1和v2为节点集,e为边集,且边集e中每条边的两个端点必定分别属于v1和v2。本发明的目标是要得到一个规模大比例缩减的简单无向图g′,要求g和g′在以下重要的二维拓扑属性上保持相似:

节点度分布二维属性定义为其中d为节点度,为度大于d的节点数与拓扑图节点总数的比率,f(k)为拓扑图中度为k节点的比率。二维属性在直角坐标系中,是以d为变量且以为函数值的二维函数曲线。

聚类系数二维属性c(d)vs.d:

定义为c(d)=2td/d(d-1),其中td=∑i=1,2,…,tt(vi)/t,d为节点度,c(d)为节点度d的聚类系数,v1,v2,…,vt为拓扑图中所有度为d的节点,t为拓扑图中度为d的节点总数,t(vi)为节点vi任意两个相邻节点之间边的总数。二维属性c(d)vs.d在直角坐标系中,是以d为变量且以c(d)为函数值的二维函数曲线。

路径长度分布二维属性μ(l)vs.l:定义μ(l)为拓扑图中相互间最短路径长度为l的节点对总数占据全部节点对总数的比率。二维属性μ(l)vs.l在直角坐标系中,是以l为变量且以μ(l)为函数值的二维函数曲线。

其中vs.表示“相对于”,即表示vs.前的函数是相对于vs.后的变量的函数。例如,表示是相对于变量d的函数。

拓扑结构是表征测试床节点规模的主要特征。因此,本发明将采用二分图采样方法,设计计算机网络测试床二分图拓扑结构的大比例规模缩减技术,在维持拓扑属性稳定不变的前提条件下大比例降低测试床构建所需的仿真资源节点数量,解决有限仿真资源条件下的测试床构建难点问题,从而达到大幅度降低测试床构建成本和测试任务运行时间复杂性等经济效益。

符号定义:||s||表示集合s的势,即集合s包含元素的总数。

x←y表示将右边的函数或数值y赋值给左边的变量x。

dv表示节点v在二分图g′=(v′1,v′2,e′)中的度。

表示逻辑“存在”。

∧表示逻辑“与”;a∧b表示a与b均成立,或a成立且b成立。

∈表示逻辑“属于”。

表示逻辑“不属于”。

g=(v1,v2,e)表示输入的计算机网络二分图拓扑结构。

rr表示需要从计算机网络二分图拓扑结构g=(v1,v2,e)中删除的边的比率,其等于需要从二分图g中删除的节点的比率,因为本发明技术方案可以保证规模缩减过程二分图的平均节点度稳定不变。

g′=(v′1,v′2,e′)表示计算机网络二分图拓扑结构g=(v1,v2,e)的采样子图,其最终状态表示规模缩减率达到rr的规模缩减采样二分图。

d1,d2,…,ds表示二分图拓扑结构g中节点集v1包含所有节点的不相互重复的度,其中d1>d2>…>ds>0。

f(d1),f(d2),…,f(ds)表示二分图拓扑结构g中节点集v1包含所有节点的度分布,即f(dk)(k=1,2,…,s)被定义为集合v1中度为dk的节点数与||v1||的比率。

dmax表示二分图拓扑结构g中节点集v2包含所有节点的最大度。

{g(d)|d=1,2,…,dmax}表示二分图拓扑结构g中节点集v2的度分布,即g(d)被定义为节点集v2中度为d的节点数与||v2||的比率。

ed=||e||·rr表示从输入到输出需要删除的边的总数。

表示属于节点集v′1且节点度不属于集合{d1,d2,…,ds}的全部节点构成的集合。

(v,w):如果v和w为两个节点,则(v,w)表示连接这两个节点v和w的一条边。

表示存在节点集v′2中的一个节点w使得边(v,w)∈e′成立的全部边(v,w)构成的集合。

{(v,w)|v∈v′1∧w∈v′2∧(v,w)∈e′∧dv=d}表示满足节点v属于节点集v′1且节点w属于节点集v′2且边(v,w)属于边集e′且节点v的度dv等于d的全部边(v,w)构成的集合。

dh=argdmaxd∈d{g′(d)-g(d)}表示将集合d中使得g′(d)-g(d)最大值的d的取值赋值给dh,其中d∈d。

表示以二分图g′=(v′1,v′2,e′)中节点度dw为元素的集合,其中节点w满足以下要求:节点w属于节点集v′2且存在节点集v′1中的一个节点v使得边(v,w)属于集合eo。

ea={(v,w)|(v,w)∈eo∧dw=dh}表示满足以下条件的全部边(v,w)构成的集合,条件为:

边(v,w)属于集合eo且节点w在二分图g′=(v′1,v′2,e′)中的度等于dh

e′/{e}表示从集合e′中删除一条边e。

{g′(d)|d=1,2,…,dmax}表示二分图g′=(v′1,v′2,e′)中节点集v′2的度分布,即g′(d)被定义为节点集v′2中度为d的节点数与||v′2||的比率。

表示f(d1),f(d2),…,f(dk)的求和。

本发明的一种实施例的技术方案的流程如图2所示。具体的流程和步骤为:

输入:计算机网络二分图拓扑结构g=(v1,v2,e),其中v1和v2为节点集且e为边集;规模缩减率rr;缺省情况下rr的取值为0.96;

其中缺省情况下参数的取值被称为缺省值,其是系统参数的默认值,即表示一个参数在被修改前的初始值。

输出:规模缩减率达到rr的规模缩减采样二分图g′=(v′1,v′2,e′)。

方法的流程与步骤:

步骤1,获取二分图拓扑结构g中节点集v1包含所有节点的度,设d1,d2,…,ds为这些节点度中互不重复的全部节点度,其中d1>d2>…>ds>0且s为一个正整数。

步骤2,计算节点度d1,d2,…,ds在节点集v1的分布比率f(d1),f(d2),…,f(ds),其中f(dk)(k=1,2,…,s)被定义为集合v1中度为dk的节点数与||v1||的比率;

步骤3,获取二分图拓扑结构g中节点集v2包含所有节点的最大度dmax;

步骤4,获取节点集v2的度分布{g(d)|d=1,2,…,dmax},其中g(d)表示节点集v2中度为d的节点数与||v2||的比率;

步骤5,初始化二分图g′=(v′1,v′2,e′)←g=(v1,v2,e);

步骤6,初始化节点度分布{g′(d)|d=1,2,…,dmax}←{g(d)|d=1,2,…,dmax};

步骤7,初始化变量t←0,并计算需要删除边的总数ed=||e||rr;

步骤8,如果t<ed,转步骤9;否则,当前状态g′=(v′1,v′2,e′)为最终输出结果,转步骤15;

步骤9,设集合如果||s||>0,任意选择集合s中一个节点v,并计算得到边的集合

如果||s||=0,以离散概率分布pk/σi=1,2,…,spi(k=1,2,…,s)随机抽取一个节点度d∈{d1,d2,…,ds},其中pk(k=1,2,…,s)被定义为其中f(di)(i=1,2,…,s)在步骤2已获得,并计算得到边的集合

步骤10,计算dh=argdmaxd∈d{g′(d)-g(d)},其中

步骤11,计算集合eo的一个子集:ea={(v,w)|(v,w)∈eo∧dw=dh};

步骤12,从集合eo中均等概率分布地抽取一条边e,

将该边从二分图g′=(v′1,v′2,e′)中删除,即更新e′←e′/{e},同时更新二分图g′=(v′1,v′2,e′)的节点集v′1和v′2:将节点集v′1和v′2中度为0的节点删除;

步骤13,更新节点度分布{g′(d)|d=1,2,…,dmax},其中g′(d)(d=1,2,…,dmax)为节点集v′2中度为d的节点数与||v′2||的比率;

步骤14,更新t←t+1,转步骤8;

步骤15,依据输出的采样二分图g′=(v′1,v′2,e′)在计算机网络测试床上调用服务器、路由器、传感器网络节点、无线通信基站等仿真节点资源,生成测试床的仿真拓扑结构。

实施例以计算机网络测试床二分图拓扑结构上的组播路由协议测试任务为案例。选择该任务需求的原因在于组播路由协议测试指标对测试床拓扑结构的变化比较敏感。实施例从stanford网络数据池(网址http://snap.stanford.edu/data/)和itdk工程(网址http://www.caida.org/)提供的三个真实世界国际互联网探测数据中抽取测试任务关注的二分图拓扑结构为原始拓扑。

这三个原始拓扑分别来源于as-733(2000年01月探测)、as-caida(2007年11月探测)和itdk(2017年02月探测)。

测试任务验证结果

拓扑属性验证结果:

本发明的技术针对来源于真实世界数据的三个二分图拓扑结构,都可以在保证节点度分布、聚类系数和路径长度分布等重要拓扑属性近似稳定不变的前提下,实现96%以上的节点规模缩减。

组播路由协议测试验证结果:

针对上述来源于真实世界数据的三个二分图拓扑结构,依据本发明技术采样得到的小规模拓扑结构(节点规模缩减率大于96%),在计算机网络测试床上配置拓扑连接关系。通过实验对比验证得到:在小规模测试床上组播路由协议的测试结论与在大规模真实网络上组播路由协议的运行效果基本保持一致。

本公开还提供了一种测试床拓扑结构的二分图采样装置,所述装置包括:

第一单元,用于获取计算机网络二分图拓扑结构g=(v1,v2,e)中节点集v1包含所有节点的度,设d1,d2,…,ds为这些节点度中互不重复的全部节点度,其中d1>d2>…>ds>0,v1和v2为二分图拓扑结构g的节点集且e为g的边集,s为大于0的正整数,并用于设定规模缩减率rr,其被定义为需要从计算机网络二分图拓扑结构g=(v1,v2,e)中删除的边数与||e||的比率,其中||e||表示集合e的势,集合e的势为边集e包含元素的总数;缺省情况下rr的取值为0.96;

第二单元,用于计算节点度d1,d2,…,ds在节点集v1的分布比率f(d1),f(d2),…,f(ds),其中f(dk)(k=1,2,…,s)被定义为集合v1中度为dk的节点数与||v1||的比率;

第三单元,用于获取二分图拓扑结构g中节点集v2包含所有节点的最大度dmax;

第四单元,用于获取节点集v2的度分布{g(d)|d=1,2,…,dmax},其中g(d)表示节点集v2中度为d的节点数与||v2||的比率;

第五单元,用于初始化二分图g′=(v′1,v′2,e′)←g=(v1,v2,e);

第六单元,用于初始化节点度分布{g′(d)|d=1,2,…,dmax}←{g(d)|d=1,2,…,dmax};

第七单元,用于初始化变量t←0,并计算需要删除边的总数ed=||e||·rr;

第八单元,用于判断如果t<ed,转第九单元;否则,当前状态g′=(v′1,v′2,e′)为最终输出结果,转第十五单元;

第九单元,用于计算集合如果||s||>0,任意选择集合s中一个节点v,并计算得到边的集合

如果||s||=0,以离散概率分布pk/σi=1,2,…,spi(k=1,2,…,s)随机抽取一个节点度d∈{d1,d2,…,ds},其中pk(k=1,2,…,s)被定义为其中f(di)(i=1,2,…,s)在第二单元已获得,并计算得到边的集合eo={(v,w)|v∈v′1∧w∈v′2∧(v,w)∈e′∧dv=d};

第十单元,用于计算dh=argdmaxd∈d{g′(d)-g(d)},其中

第十一单元,用于计算集合eo的一个子集:ea={(v,w)|(v,w)∈eo∧dw=dh};

第十二单元,用于从集合eo中均等概率分布地抽取一条边e,

将该边从二分图g′=(v′1,v′2,e′)中删除,即更新e′←e′/{e},同时更新二分图g′=(v′1,v′2,e′)的节点集v′1和v′2:将节点集v′1和v′2中度为0的节点删除;

第十三单元,用于更新节点度分布{g′(d)|d=1,2,…,dmax},其中g′(d)(d=1,2,…,dmax)为节点集v′2中度为d的节点数与||v′2||的比率;

第十四单元,用于更新t←t+1,转第八单元;

第十五单元,用于依据输出的采样二分图g′=(v′1,v′2,e′)在计算机网络测试床上调用服务器、路由器、传感器网络节点、无线通信基站等仿真节点资源,生成测试床的仿真拓扑结构。

所述一种测试床拓扑结构的二分图采样装置可以运行于桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备中。所述一种测试床拓扑结构的二分图采样装置,可运行的装置可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,所述例子仅仅是一种测试床拓扑结构的二分图采样装置的示例,并不构成对一种测试床拓扑结构的二分图采样装置的限定,可以包括比例子更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述一种测试床拓扑结构的二分图采样装置还可以包括输入输出设备、网络接入设备、总线等。

所称处理器可以是中央处理单元(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述一种测试床拓扑结构的二分图采样装置运行装置的控制中心,利用各种接口和线路连接整个一种测试床拓扑结构的二分图采样装置可运行装置的各个部分。

所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述一种测试床拓扑结构的二分图采样装置的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。此外,上文以发明人可预见的实施例对本公开进行描述,其目的是为了提供有用的描述,而那些目前尚未预见的对本公开的非实质性改动仍可代表本公开的等效改动。

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