m基于WDM网络的波长分配算法matlab仿真

简介: m基于WDM网络的波长分配算法matlab仿真

1.算法仿真效果
matlab2022a仿真结果如下:

34630cd249e4c1d77c16c5bf2f5ee57a_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png
99c14526af4e2090bd213d4b9759df90_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png
f82e1f406c26fffa9eb16a1e13ab36e6_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png
2569286a7d8c9ef81cdf86002dd50c09_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png

2.算法涉及理论知识概要

   波分复用WDM(Wavelength Division Multiplexing)是将两种或多种不同波长的光载波信号(携带各种信息)在发送端经复用器(亦称合波器,Multiplexer)汇合在一起,并耦合到光线路的同一根光纤中进行传输的技术;在接收端,经解复用器(亦称分波器或称去复用器,Demultiplexer)将各种波长的光载波分离,然后由光接收机作进一步处理以恢复原信号。这种在同一根光纤中同时传输两个或众多不同波长光信号的技术,称为波分复用。

   波分复用是利用多个激光器在单条光纤上同时发送多束不同波长激光的技术。每个信号经过数据(文本、语音、视频等)调制后都在它独有的色带内传输。WDM能使电话公司和其他运营商的现有光纤基础设施容量大增。制造商已推出了WDM系统,也叫DWDM(密集波分复用)系统。DWDM可以支持150多束不同波长的光波同时传输,每束光波最高达到10Gb/s的数据传输率。这种系统能在一条比头发丝还细的光缆上提供超过1Tb/s的数据传输率光通信是由光来运载信号进行传输的方式。在光通信领域,人们习惯按波长而不是按频率来命名。因此,所谓的波分复用(WDM, Wavelength Division Multiplexing)其本质上也是频分复用而已。WDM是在1根光纤上承载多个波长(信道)系统,将1根光纤转换为多条“虚拟”纤,当然每条虚拟纤独立工作在不同波长上,这样极大地提高了光纤的传输容量。由于WDM系统技术的经济性与有效性,使之成为当前光纤通信网络扩容的主要手段。波分复用技术作为一种系统概念,通常有3种复用方式,即1 310 nm和1 550 nm波长的波分复用、稀疏波分复用(CWDM,Coarse Wavelength Division Multiplexing)和密集波分复用(DWDM,Dense Wavelength Division Multiplexing)。 [1]

   波分复用(WDM,wavelength division multiplexing)光传送网由一组通过光纤互连的交换节点构成。波分复用和光交叉连接(OXC,optical cross-connect)技术的发展使网络具有更大的带宽和灵活性。利用WDM 技术,多个用户能够使用同一根光纤中的不同信道(即波长)同时传输数据。节点中配置的OXC 可以动态设置,它能够将任一输入端口(光纤)某个波长上的数据交换输出到指定输出端口的同一波长上。从而可在节点对间建立端到端的信道——光路(optical path)。由于一条光路必须使用同一波长,这将导致波长资源利用率的下降。采用波长分配和选路的WDM 光传送网被认为是下一代高速广域骨干网的最有竞争力的候选者。

f72ef34fbe49e5cc7c14ffd9cd8d7051_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png

   采用 WDM 技术,单根光纤的总传输速率已能达到Tbit/s 级,而一条光缆中的光纤数也超过了1000 芯[3]。WDM 光网研究的重要目标之一是,充分利用波长/光纤资源,以使网络性能达到最优。选路和波长分配(RAW,routing and assignment of wavelength)问题所研究的内容是,给定一组节点间的全光连接(光路/连接建立)请求:(1)寻找从源节点到目的节点的路由;(2)在这些路由上分配波长。如果分析模型中研究的是动态业务(连接建立请求随机到达和离开网络),则称相应的RAW 问题为动态RAW 问题。研究动态RAW 问题时,常用的性能指标是光路的阻塞率。从总体上看,RAW 问题中的选路和波长分配是一个不可分割的问题。但是,仅仅其中的波长分配问题就是一个NP-C(非确定型的多项式算法-完全)问题,要在合理的运算时间内解决大型网络的RAW 问题常常是不可能的。通常的解决办法是,将RAW 问题强行拆成两个独立的选路子问题和波长分配子问题,分别加以解决。

三个算法的主要公式为:

RLI:

880322fa140381664a0a313fdd4e771a_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png

RCL:

89988076ebdf1ad250c9c58b6bfdc204_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png

MS:

d238ffcdbbb45b4ae6e17a333d43f22c_watermark,size_14,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_20,type_ZmFuZ3poZW5naGVpdGk=.png

    相对于RLI算法,MS算法的区别是计算出除了p1以外的其他所有通路p在某波长lemda上的降低的可用信道数的总和,用这个来描述新光路的建立对全网状态的影响。但是这种个算法没有考虑p1的可用信道数的下降。而RCI算法,由于不论选择哪条可用波长,p1 的对应的rCL 为一定值,所以RCL 算法也不考虑对p1 的影响

3.MATLAB核心程序

%参数初始化
%定义负载
Loads   = [1000:200:10000];
NOF_RLI = zeros(length(Loads),1); 
NOF_RCL = zeros(length(Loads),1);
NOF_MS  = zeros(length(Loads),1);
IMF_RLI = zeros(length(Loads),1);
IMF_RCL = zeros(length(Loads),1);
%每根光纤都能支持W个波长
W       = 8;
%每条链路上有F根光纤
F       = 16;
Times   = 10;
 
%%
%RLI
%RLI
for i = 1:length(Loads)
    i
    NOF_MS(i) = func_MS(W,F,Loads(i),Times);
end
 
%%
%RLI
%RLI
for i = 1:length(Loads)
    i
    NOF_RLI(i) = func_RLI(W,F,Loads(i),Times);
end
 
%%
%RCL
%RCL
for i = 1:length(Loads)
    i
    NOF_RCL(i) = func_RCL(W,F,Loads(i),Times);
end
 
for i = 1:length(Loads)
    i
    IMF_RLI(i) = (NOF_MS(i)-NOF_RLI(i))/NOF_MS(i);
    IMF_RCL(i) = (NOF_MS(i)-NOF_RCL(i))/NOF_MS(i);
end
%%
figure;
plot(Loads,IMF_RLI,'b-*');
hold on;
plot(Loads,IMF_RCL,'k-o');
hold off;
legend('RLI-MS','RCL-MS');
xlabel('负载');
ylabel('IMP');
axis([Loads(1),Loads(end),0,1]);
grid on
相关文章
|
14小时前
|
算法 数据安全/隐私保护 计算机视觉
基于二维CS-SCHT变换和LABS方法的水印嵌入和提取算法matlab仿真
该内容包括一个算法的运行展示和详细步骤,使用了MATLAB2022a。算法涉及水印嵌入和提取,利用LAB色彩空间可能用于隐藏水印。水印通过二维CS-SCHT变换、低频系数处理和特定解码策略来提取。代码段展示了水印置乱、图像处理(如噪声、旋转、剪切等攻击)以及水印的逆置乱和提取过程。最后,计算并保存了比特率,用于评估水印的稳健性。
|
14小时前
|
机器学习/深度学习 算法 网络架构
什么是神经网络学习中的反向传播算法?
什么是神经网络学习中的反向传播算法?
9 2
|
14小时前
|
算法 计算机视觉
基于高斯混合模型的视频背景提取和人员跟踪算法matlab仿真
该内容是关于使用MATLAB2013B实现基于高斯混合模型(GMM)的视频背景提取和人员跟踪算法。算法通过GMM建立背景模型,新帧与模型比较,提取前景并进行人员跟踪。文章附有程序代码示例,展示从读取视频到结果显示的流程。最后,结果保存在Result.mat文件中。
|
14小时前
|
资源调度 算法 块存储
m基于遗传优化的LDPC码OMS译码算法最优偏移参数计算和误码率matlab仿真
MATLAB2022a仿真实现了遗传优化的LDPC码OSD译码算法,通过自动搜索最佳偏移参数ΔΔ以提升纠错性能。该算法结合了低密度奇偶校验码和有序统计译码理论,利用遗传算法进行全局优化,避免手动调整,提高译码效率。核心程序包括编码、调制、AWGN信道模拟及软输入软输出译码等步骤,通过仿真曲线展示了不同SNR下的误码率性能。
8 1
|
14小时前
|
算法 网络协议 数据建模
【计算机网络】—— IP协议及动态路由算法(下)
【计算机网络】—— IP协议及动态路由算法(下)
7 0
|
14小时前
|
算法 网络协议 数据建模
【计算机网络】—— IP协议及动态路由算法(上)
【计算机网络】—— IP协议及动态路由算法(上)
8 0
|
14小时前
|
网络协议 Linux 网络架构
|
14小时前
|
域名解析 网络协议 Linux
linux网络配置详解
linux网络配置详解
15 0
|
14小时前
|
网络协议 Java Linux
【探索Linux】P.29(网络编程套接字 —— 简单的TCP网络程序模拟实现)
【探索Linux】P.29(网络编程套接字 —— 简单的TCP网络程序模拟实现)
13 0
|
14小时前
|
存储 网络协议 算法
【探索Linux】P.28(网络编程套接字 —— 简单的UDP网络程序模拟实现)
【探索Linux】P.28(网络编程套接字 —— 简单的UDP网络程序模拟实现)
15 0