机会路由MORE协议的matlab性能仿真

本文涉及的产品
实时数仓Hologres,5000CU*H 100GB 3个月
实时计算 Flink 版,1000CU*H 3个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
简介: 摘要:本研究关注无线Mesh网络中的机会路由与网络编码融合技术,特别是MORE协议。机会路由利用无线特性提高网络效率,而网络编码提升网络吞吐量。在分析这两项技术的基础上,提出改进MORE的方案,优化节点选择和路径测量,以增强网络性能。使用MATLAB2022a进行仿真验证。尽管MORE独立于MAC层并应用线性网络编码,但其ETX测量可能存在不准确问题,该问题成为改进的重点。

1.程序功能描述
对无线网状网进行深入的研究,对现有无线网状网中存在的机会路由和网络编码技术进行细致分析。目前,机会路由技术和网络编码技术的融合是一个研究热点,基于网络编码的机会路由协议MORE:

(1)对无线网状网中的机会路由技术进行研究,根据机会路由的原理,总结其较传统路由的优势。

(2)对无线网状网中的网络编码技术进行研究,分析其基本原理及其对网络的性能提升。

(3)介绍MORE机会路由机制,提出MORE机会路由机制的改进方案,即通过改进MORE机制现有的度量和测量方案,提升网络性能。

2.测试软件版本以及运行结果展示
MATLAB2022a版本运行

1.jpeg
2.jpeg

3.核心程序

for i = 1:noOfNodes
    for j = 1:noOfNodes
        NN = NN + 1;
        [NN,K]
..........................................................................

               %计数器计数
               for iii = 1:K
tmpss(iii) = (Data_Decode{1,n1}(iii) == Data_trans{1,n1}(iii));
               end



if  sum(tmpss) == K
                  ACK   = 1;%成功接收了ACK=1;
               else
                  ACK   = 0;%不成功接收了ACK=0;
               end


               %对于传统MORE,S值不改变
               if times > T
                  S     = alpha * PS/Num + (1-alpha)*S;
                  PS    = 0;
                  Num   = 0;
                  times = 0;
                  Count = Count;
               else
                  S     = S;
                  PS    = PS  + 1;%假设发送数据包大小psi为1
                  Num   = Num + 1;  
                  times = times + T_sub;
                  Count = Count + 1;  
               end


               %计算每次发送成功需要的次数
               if n1 == 1
                  EXT(n1) = 1/(Pf*Pr);
               else
                  EXT(n1) = EXT(n1-1) + 1/(Pf*Pr); 
               end
           end
           Throughput2(mm) = tmp*N_byte/(Count*T_sub); 

           end

           %计算吞吐量
Throughput(NN) = mean(Throughput2);          
           end


        end
        %******************************************************************
end

dd = dd + 1;
Throughput_sum(dd) = sum(Throughput);
end
figure;
plot(KK,Throughput_sum,'b-o');
xlabel('包个数/段');
ylabel('吞吐量bps');
grid on;


save MORE1.mat KK Throughput_sum
12_006m

4.本算法原理
无线网状网由于采用无线链路进行通信,网络的质量将时刻受到无线环境和本地其他无线网络的影响。如何提高网络的性能,提升网络的吞吐量,是现阶段研究的热点问题。前一节介绍了网络编码技术,这里开始介绍机会路由技术。在2.1节已经论述过传统的路由协议并不适合无线网状网的特点,它把无线网络当作有线网络看待,掩盖了无线通信的基本特性,导致预先选择路径的路由协议在无线网络中不能发挥出应有的性能。机会路由机制因此而产生,其目的是设计出一套真正符合无线网状网基本特性的路由协议,提升网络吞吐量。

   机会路由(Oppprtunistic Routing)是一种新的无线网状网单播路由技术。它由MIT的Sanjit Biswas等人在文献[1]中提出,引起了很大关注,并成为了新的研究热点。下面从机会路由的基本原理入手,介绍一种新的路由转发架构,在此基础上再引入文献[1]提出的原理和思想。

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

    以图所示的网络拓扑为例说明无线网状网中的路由机制的改进空间。在图中,节点A到节点D存在多条不同的路由。作为一种极端的情况,从A通过1跳就能够到达D,其数据包成功传送的概率为0.1,这样的代价是同一个数据包需要发送多次来恢复丢失的数据包。作为另一种极端情况,A可以通过3跳到达D,也就是通过中间节点B和C进行数据转发,这样做的代价是要多次发送同一个数据包。以上两种路由选择都损耗了一定的性能。这是因为节点C甚至节点D能够监听到节点A发往节点B的任何数据包,通过B再次转发这些数据包就会造成性能的浪费。如果节点A将数据包直接发往节点D,虽然传送成功率只有0.1,但D节点还是可能正确地接收到数据包,而在很多情况下节点B或节点C都能收到。因此由节点B或节点C进行重传远优于节点A进行重传。机会路由机制的原理就是利用这些机会(其它节点能够监听到数据包)提升网络的性能。

   MORE机会路由机制主要由两部分内容构成:机会路由与网络编码。在机会路由方面,与ExOR不同,MORE是一种独立于MAC层的协议,它位于IP层和MAC层之间。它要求每个节点在转发数据之前利用线性网络编码技术对数据包进行随机混合,这样就保证了能够监听到同一次数据传输而转发不同的数据,如图所示。

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

   在MORE机制中,MORE的性能基本取决于候选转发节点的选择,而节点选择问题归根结底就是路径测量问题,MORE由于采用了ETX路径测量机制,存在探测包测量出来的链路性能不一定与实际数据包在链路中的传送性能相吻合的问题。
相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
2月前
|
5G
基于IEEE 802.11a标准的物理层MATLAB仿真
基于IEEE 802.11a标准的物理层MATLAB仿真
174 0
|
2月前
|
算法
基于MATLAB/Simulink平台搭建同步电机、异步电机和双馈风机仿真模型
基于MATLAB/Simulink平台搭建同步电机、异步电机和双馈风机仿真模型
|
2月前
|
机器学习/深度学习 算法 数据可视化
基于MVO多元宇宙优化的DBSCAN聚类算法matlab仿真
本程序基于MATLAB实现MVO优化的DBSCAN聚类算法,通过多元宇宙优化自动搜索最优参数Eps与MinPts,提升聚类精度。对比传统DBSCAN,MVO-DBSCAN有效克服参数依赖问题,适应复杂数据分布,增强鲁棒性,适用于非均匀密度数据集的高效聚类分析。
|
2月前
|
开发框架 算法 .NET
基于ADMM无穷范数检测算法的MIMO通信系统信号检测MATLAB仿真,对比ML,MMSE,ZF以及LAMA
简介:本文介绍基于ADMM的MIMO信号检测算法,结合无穷范数优化与交替方向乘子法,降低计算复杂度并提升检测性能。涵盖MATLAB 2024b实现效果图、核心代码及详细注释,并对比ML、MMSE、ZF、OCD_MMSE与LAMA等算法。重点分析LAMA基于消息传递的低复杂度优势,适用于大规模MIMO系统,为通信系统检测提供理论支持与实践方案。(238字)
|
3月前
|
机器学习/深度学习 边缘计算 算法
【无人机】无人机群在三维环境中的碰撞和静态避障仿真(Matlab代码实现)
【无人机】无人机群在三维环境中的碰撞和静态避障仿真(Matlab代码实现)
188 0
|
2月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
213 0
|
2月前
|
算法 定位技术 计算机视觉
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
114 0
|
2月前
|
算法 机器人 计算机视觉
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
|
2月前
|
新能源 Java Go
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
109 0
|
2月前
|
机器学习/深度学习 算法 机器人
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
147 8

热门文章

最新文章