弹性光网络实验五、弹性光网络中的网络虚拟化仿真环境

(>>>>在豆豆咨询公众号中输入彩蛋号,即可获取仿真环境及C++源码)


弹性光网络环境下的网络虚拟化中的虚拟光网络映射成为近年来的研究热点,在文献[Y. Wang, Z. McNulty, and H. Nguyen. Network Virtualization in

Spectrum Sliced Elastic Optical Path Networks. J. Lightw. Technol., vol. 35,

no. 10, pp. 1962–1970, May. 2017.]中,提出了基于路径和基于路径-通道模型的算法(分别为P-OVNE和PC-OVNE),以下将介绍性能比较所采用的仿真环境,并提供仿真实验所需要的虚拟网络和物理网络下载。

一、性能比较算法及指标

文章比较了三种算法,如下所示:

1)P-OVNE: path-based model.

2)PC-OVNE: path-channel-based model.

3)M-OVNE: based on the concept of maximum continuous slot-block [L.Gong and Z. Zhu, “Virtual optical network embedding (VONE) over elastic opticalnetworks,” J. Lightw. Technol., vol. 32, no. 3, pp. 450–460, Feb. 2014.].

[if !supportLists]1、  [endif]虚拟网络和物理网络

虚拟网络:随机产生[2,10]的节点数量n;节点之间的连接概率为0.5,即意味着n*(n-1)/4条链路;每个虚拟节点请求随机产生(0,10]的CPU计算能力;每条虚拟链路的带宽请求在[12.5,125]Gb/s范围随机产生;到达的虚拟网络请求符合泊松分布,每100个时间单元内平均到达4个虚拟网络请求;每个虚拟网络请求的生存时间符合指数分布,平均1000个时间单元。

Erlang=到达率*生存时间[2012. Xiang

Zhou, Wei Lu, Long Gong, Zuqing Zhu.Dynamic RMSA in Elastic Optical Networks with an Adaptive Genetic Algorithm.

Globecom 2012. DOI: 10.1109/GLOCOM.2012.6503559],或者Erlang=lanbuda*mu,lanbuda表示虚拟光网络的动态请求到达服从泊松过程,平均每秒或者每个事件窗将产生lanbuda个请求,每个请求的生存时间服从指数分布,平均值为mu秒或者mu个时间窗。依据该公式,Erlang=4*10=40。

定义Erlang:

1)在文献[2018 Virtual Network Embedding with Adaptive Modulation

in Flex-grid Networks. Journal of Lightwave Technology. DOI:10.1109/JLT.2017.2764940]中定义了Erlang:The algorithms are evaluated in dynamic traffic

scenarios, where VN request arrivals are assumed to follow a Poisson process

with rate [if !msEquation] [endif] and their holding times are assumed to have a negative

exponential distribution with a mean [if !msEquation][endif]. The traffic

load of network is calculated as [if !msEquation][endif] (Erlang), and for simplicity, we set [if !msEquation][endif] equal to 1 then the network load is [if !msEquation][endif] (Erlang).

在该篇文章中,流量负载(Traffic Load)分别评估了Erlang等于0.8、0.9、1.0、1.1、1.2、1.3和1.4下的算法性能,对应的是[if !msEquation][endif],则Erlang同样等于0.8、0.9、1.0、1.1、1.2、1.3和1.4。

2)在文献[2012. Xiang

Zhou, Wei Lu, Long Gong, Zuqing Zhu.Dynamic RMSA in Elastic Optical Networks with an Adaptive Genetic Algorithm.

Globecom 2012. DOI: 10.1109/GLOCOM.2012.6503559] The requests are generated according to a Poisson

process with a rate of λ requests

per service provision period, and the duration of a request follows an

exponential distribution with an average value of μ service provision periods. Hence, the traffic load can be

quantified with λ · μ inErlangs.

在该篇文章中,评估了Erlang分别为300、400、500、600、700、800、900、1000下的算法性能。

物理网络:随机产生[5,20]的节点数量,节点之间的连接概率为0.5,CPU计算能力符合(0,50]均匀分布。在大部分实验中,单根光纤的频谱槽数量设为20。

假设BPSK、QPSK、8QAM和16QAM信号传输距离能够达到375、750、1500和3000km,则虚拟请求d在路径p上的传输所需要的频谱槽数量为NSd,p计算公式:

[if !msEquation][endif],

其中[if !msEquation][endif]分别对应的是BPSK、QPSK、8QAM和16QAM。

在其中一组计算时间分析实验中,每条光纤的频谱槽数量为20,评估消耗的频谱资源数量。

在其中一组目标最优化分析实验中,在辅助图在15个节点、k最短路径的数量为3,频谱槽的数量分别为10、20、30、40。

[if !supportLists]2、  [endif]性能比较指标

1)计算时间分析:每条光纤的频谱槽数量为20,每个场景映射200个虚拟网络,辅助图的大小分别为10、15和20,路径条数k分别为2、3和4。由于辅助图节点为虚拟节点数量+物理节点数量,其设定为10、15和20,难以确定具体的测试环境,例如辅助图节点为10,虚拟节点的数量如果在[2,10]范围随机分布,那么物理网络的节点数量该如何确定,才能保证辅助节点数量在10呢?或者在固定物理网络和虚拟网络节点数量的情况下,统计了计算时间。

2)目标最优化分析:在物理网络节点数量为20,虚拟网络节点数量为2、4、6、8、10,以及k为1、2、3、4、5最短路径,每条光纤的频谱槽数量为10、20、30、40下,由于不同算法下消耗的频谱槽数量基本一致,因此只取了OVNE代表这三种算法的实验结果,只与经典的VNE进行了比较。这是非常重要的一组数据,很可惜没有看到具体与现有的OVNE算法进行比较。

3)阻塞率分析:应该在物理网络节点数量在[20](在仿真环境中说明了物理网络节点分布在[5,20]),虚拟网络节点数量分布在[2,10],评估了不同算法下,虚拟网络阻塞率几乎相同,因此只取了OVNE代表这三种算法的实验结果;评估了k为3、4、5最短路径下的阻塞率;并与经典的VNE进行了比较。这是最重要的一组数据,很可惜没有看到具体与现有的OVNE算法进行比较,且没有说明单纤下的频谱槽具体数量,猜测是20。

二、仿真环境下载

[if !supportLists]1、  [endif]虚拟网络及物理网络集合下载

我们将提供构造的程序、虚拟网络集合和物理网络集合,以供自己保存及网友提供下载。

1)物理网络

命令为./sub 5:表示创建节点为5个的物理网络,文件名的表示如下所示:

[if !supportLists]l  [endif]Sub-x-y-b-c:x表示节点数量,y表示cpu符合(0,y]均匀分布,b代表带宽(0,b]均匀分布,c代表着类型。随机产生[5,20]的节点数量,节点之间的连接概率为0.5,CPU计算能力符合(0,50]均匀分布。

备注:

a. 在命令中除了直接输入./sub 5之外,在define.h中定义了网络的类型、cpu和bw的分布,如下所示:

1CPU和BW配置

#define MAX_CPU 100

#define MAX_BW 1000

2物理网络类型配置

#define TOPO_GENERAL 0

#define TOPO_STAR 1

#define TOPO_TREE 2

#define TOPO_HUBS 3

b. 根据创建的物理网络,可以根据CPU和BW,灵活配置创建更加灵活的物理网络,例如已经存在sub-20-100-1000的物理网络,则可以根据这个物理网络创建CPU为(0,50]的物理网络,方法是在sub-20-100-1000中CPU/2即可实现。同理,可以设置BW为路径长度。

C.在大部分实验中,单根光纤的频谱槽数量设为20。

2)虚拟网络

命令:./mkreq 50001 100 1 req-erl-50 50 1000

5000:生成的虚拟网络数量;

1:允许的路径分裂率,目前没有用到;

100:表示带宽范围在(0,1000);

1:拓扑结构,目前没有用到;

req-erl-50:目录结构;

50:频谱槽数量,目前没有用到;

1000:表示一个VN生成时间为10个时间窗;

目录结构:reqs-erl40-4-10-50-100-5000-0:erl40表示Erlang=40,4表示每个时间窗平均有4个虚拟网络请求,10表示一个时间窗平均有10个虚拟网络请求到来,50表示(0,50]CPU,100表示(0,100]的带宽,5000表示虚拟网络数量,0表示第一组;

创建的虚拟网络与以下两个宏有关:

#define TOTAL_TIME 125000:表示有125000个时间单元,1250个时间窗;

#define POISSON_MEAN 4:表示每个时间窗平均有4个虚拟网络请求;

则,虚拟网络数量:1250*4=5000个。


argv[1]  n:100,表示100个VN;

argv[2]splittable_rate:1,表示分裂率;

argv[3]link_rate:100,表示0-100之间的带宽;

argv[4]topo_general_rate:1,表示拓扑结构;

argv[5]reqfilename:reqs-erl-100,表示erlang=100虚拟光网络目录;

argv[6]slotSpeed:100,表示0-100之间的slot槽数量;

argv[7]dura:1000,表示一个VN生成时间为10个时间窗;


(3)物理网络和虚拟网络下载

压缩文档包括如下目录:

物理网络:

Sub-x-y-b-c:x表示节点数量,y表示cpu符合(0,y]均匀分布,b代表带宽(0,b]均匀分布,c代表着类型。随机产生[5,20]的节点数量,节点之间的连接概率为0.5,CPU计算能力符合(0,50]均匀分布。

例如sub-20-50-1000:20表示物理节点有20个节点,50表示CPU满足(0,50],1000表示带宽符合(0,100],c代表类型#define

TOPO_GENERAL 0。压缩包文档的sub如下所示。


虚拟网络:

(1)Erlang=40

10组虚拟网络(reqs-erl40-4-10-50-125-5000-0到reqs-erl40-4-10-50-100-5000-9):Erlang=40,4表示每个时间窗4个虚拟网络请求,10表示每个虚拟网络生存时间平均有10个时间窗,50表示(0,50)CPU,125表示(0,125)带宽,5000表示5000个虚拟网络,总的时间窗为1250,即时间单元为125000,由于每个时间窗有4个虚拟网络请求,那么总共有1250*4=5000个虚拟网络请求,拓扑结构为TOPO_GENERAL,每个虚拟网络的节点数量[2,10)。

这10组虚拟网络的文件夹是reqs-erl40-50-125。

创建的命令:./mkreq5000 1 12.5 1 ../reqs/reqs-erl40-4-10-50-125-5000-0 50 1000

10组虚拟网络(reqs-erl40-4-10-10-125-5000-2-0到reqs-erl40-4-10-10-125-5000-2-9):Erlang=40,4表示每个时间窗4个虚拟网络请求,10表示每个虚拟网络生存时间平均有10个时间窗,10表示(0,10)CPU,125表示(0,125)带宽,5000表示5000个虚拟网络,总的时间窗为1250,即时间单元为125000,由于每个时间窗有4个虚拟网络请求,那么总共有1250*4=5000个虚拟网络请求,拓扑结构为TOPO_GENERAL,每个虚拟网络的节点数量[2,10)。

这10组虚拟网络的文件夹是reqs-erl40-10-125。

创建的命令:./mkreq5000 1 12.5 1 ../reqs/reqs-erl40-4-10-10-125-5000-0 50 1000

(2) Erlang=100

10组虚拟网络(reqs-erl100-10-10-50-125-5000-0到reqs-erl100-10-10-50-100-5000-9):Erlang=100,10表示每个时间窗10个虚拟网络请求,10表示每个虚拟网络生存时间平均有10个时间窗,50表示(0,50)CPU,125表示(0,125)带宽,5000表示5000个虚拟网络,总的时间窗为500,即时间单元为50000,拓扑结构为TOPO_GENERAL,每个虚拟网络的节点数量[2,10)。

这10组虚拟网络的文件夹是reqs-erl100-50-125。

创建的命令:./mkreq5000 1 12.5 1 ../reqs/reqs-erl40-4-10-50-125-5000-0 50 1000

(3) Erlang=200、300、400、500

文件夹的内容如下所示,每个文件夹包含了10组数据,每组数据包含5000个虚拟请求。


创建物理网络及虚拟网络请求的C++

运行环境在redhat,创建物理网络的命令:./mksub,创建虚拟网络的命令:./mkreq,修改了命令之后,需要重新make编译一下,文件夹内容如下:


实际的网络拓扑结构

用于评估网络的拓扑结构通常有以下几种:


[2017. Michal Aibin, Krzysztof Walkowiak, Arunabha Sen.

Software-defined adaptive survivability for elastic optical networks. Optical

Switching and Networking, 2017, 23:85-96] US26 network (26 nodes, 84 unidirectional links and 7

DCs) and Euro28 network (28 nodes, 82 unidirectional links and 7 DCs). In all

these scenarios, the entire band of 2 THz spec- trum divided into 6.25 GHz

frequency slices has been made available, resulting into 320 slices. The

networks have three interconnection points to the other networks that are used

to carry international traffic. The data provided by determines the location of DCs and

interconnection points (e.g., locations for submarine cable landing stations).

We take into consideration the physical impairment of links (fiber attenuation, component in sertion loss) and useregenerators to amplify the signal in the links that require higher MFs. Thelocation of the regenerators is set on the initiation of the simulation; 100regenerators are assigned to each node.

[if !supportLists]三、[endif]源代码及仿真环境下载

1、在“豆豆咨询”公众号里,输入彩蛋号即可获得下载地址:

源代码及仿真环境下载的彩蛋号:2002;

2、如果有疑问或者需要帮助,请加入QQ群(群名称:豆豆咨询,群号:625686304);或者公众号douAsk,公众号名称为“豆豆咨询”。扫描以下二维码,关注“豆豆咨询”

技术QQ群名称:豆豆咨询,群号:625686304

微信公众号名称:豆豆咨询,微信公众号:douAsk


如果觉得有用,请动动手指,分享该文章!

你可能感兴趣的:(弹性光网络实验五、弹性光网络中的网络虚拟化仿真环境)