ADOV路由和DSR路由matlab对比仿真

这篇具有很好参考价值的文章主要介绍了ADOV路由和DSR路由matlab对比仿真。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1.程序功能描述

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

3.核心程序

4.本算法原理

4.1 ADOV路由(Ad hoc On-demand Distance Vector Routing)

4.2 DSR路由(Dynamic Source Routing)

5.完整程序


1.程序功能描述

        ADOV路由和DSR路由的仿真,仿真输出网络的路由路径,跳数,路由长度,并对比ADOV和DSR的性能。

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

MATLAB2022a版本运行

ADOV路由和DSR路由matlab对比仿真,MATLAB程序开发,# 网络仿真,matlab,ADOV路由,DSR路由

ADOV路由和DSR路由matlab对比仿真,MATLAB程序开发,# 网络仿真,matlab,ADOV路由,DSR路由

ADOV路由和DSR路由matlab对比仿真,MATLAB程序开发,# 网络仿真,matlab,ADOV路由,DSR路由

ADOV路由和DSR路由matlab对比仿真,MATLAB程序开发,# 网络仿真,matlab,ADOV路由,DSR路由

3.核心程序

......................................................
Nodes    = 30; 
Radius   = 10; %节点通信距离 
Sp       = 10;  %开始点
Ep       = 6; %目标点
X      = 20*rand(1,Nodes);
Y      = 20*rand(1,Nodes);
Z      = 1*rand(1,Nodes);%节点的信任值

figure(1); 
clf; 
hold on; 
%画拓扑结构
for i = 1:Nodes 
    plot(X(i), Y(i), '.'); 
    text(X(i), Y(i), num2str(i)); 
    for j = 1:Nodes 
        dist = sqrt((X(i) - X(j))^2 + (Y(i) - Y(j))^2); 
        if dist <= Radius   
           Fmat(i,j)  = 1;   
           Tmat(i,j)  = 1-((Z(i)+Z(j))/2); 
           dmat(i,j)  = dist; 
        else 
           Fmat(i,j)  = inf; 
           Tmat(i,j)  = inf; 
           dmat(i,j)  = inf; 
        end  
    end  
end 
%路由  
[path, cost] = func_dijkstra(Sp,Ep,Tmat);
 


dist_all=0; 
for j=2:length(path) 
    dist_all= dist_all + dmat(path(j-1),path(j)); 
end 
 
for p =1:(length(path)-1) 
    line([X(Sp) X(path(1))],[Y(Sp) Y(path(1))],'Color','r','LineWidth', 1, 'LineStyle', '-') 
    line([X(path(p)) X(path(p+1))], [Y(path(p)) Y(path(p+1))], 'Color','r','LineWidth', 2, 'LineStyle','-')  
end 
grid 




disp('路由:');
path
disp('跳数:');
length(path)-1 
disp('路由长度:');
dist_all


save R1.mat 
18



4.本算法原理

4.1 ADOV路由(Ad hoc On-demand Distance Vector Routing)


      ADOV是一种反应式的路由协议,它仅在需要时才建立路由。这种路由协议主要包括三个过程:路由发现、路由维护和路由表更新。

路由发现:
       当源节点需要向目的节点发送数据,但路由表中没有有效路由时,源节点会发起路由发现过程。它广播一个路由请求(RREQ)消息,该消息包含源节点和目的节点的地址、请求的序列号等信息。

路由维护:
       每个节点都维护一个路由表,其中包含到达已知目的地的下一跳地址和跳数。当节点的路由表发生变化时(例如,链路中断),它会更新其路由表,并可能向邻居节点发送路由错误(RERR)消息。

路由表更新:
        当节点收到RREQ或RERR消息时,它会根据这些消息更新其路由表。如果RREQ消息提供了一个更好的路由(即跳数更少),则节点会更新其路由表,并可能将RREQ消息转发给其邻居节点。
       在ADOV路由中,一个重要的概念是路由度量。路由度量通常基于跳数,但也可以考虑其他因素,如链路质量。假设(d(i, j))表示从节点(i)到节点(j)的距离(以跳数计),则路由发现过程可以表示为寻找从源节点(s)到目的节点(d)的最短路径,即最小化(d(s, d))。

4.2 DSR路由(Dynamic Source Routing)


        DSR是一种源路由协议,意味着路由是由源节点确定的,并且路由信息包含在数据包头中。DSR同样是反应式的,它使用路由缓存来存储先前发现的路由。

路由发现:
        与ADOV类似,当源节点需要向目的节点发送数据但没有有效路由时,它会发起路由发现过程。不同的是,DSR会在RREQ消息中包含一个路由记录,该记录用于记录从源节点到目的节点的路径。

路由维护:
       DSR使用路由缓存来存储先前发现的路由。当节点收到数据包时,它会检查数据包头中的路由信息,并根据该信息转发数据包。如果路由缓存中的路由不再有效(例如,由于节点移动导致链路中断),则节点会丢弃数据包,并可能向源节点发送路由错误消息。

        在DSR中,路由发现过程可以表示为寻找从源节点(s)到目的节点(d)的有效路径(P)。路径(P)可以表示为一系列节点的序列:(P = \langle s, n_1, n_2, ..., n_k, d \rangle),其中(n_1, n_2, ..., n_k)是路径上的中间节点。源节点将路径(P)包含在数据包头中,以便中间节点能够根据该路径转发数据包。

5.完整程序

VVV文章来源地址https://www.toymoban.com/news/detail-782192.html

到了这里,关于ADOV路由和DSR路由matlab对比仿真的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【MATLAB源码-第140期】基于matlab的深度学习的两用户NOMA-OFDM系统信道估计仿真,对比LS,MMSE,ML。

    深度学习技术在无线通信领域的应用越来越广泛,特别是在非正交多址接入(NOMA)和正交频分复用(OFDM)系统中,深度学习技术被用来提高信道估计的性能和效率。信道估计是无线通信系统中的关键技术之一,它直接影响着系统的通信质量和可靠性。本文将详细介绍深度学

    2024年02月20日
    浏览(55)
  • 基于HFSS的微带线特性阻抗仿真-与基于FDTD的计算电磁学方法对比(Matlab)

    工程下载: HFSS的微带线特性阻抗仿真工程文件(注意版本:HFSS 2023R2 ): https://download.csdn.net/download/weixin_44584198/88748285 基于FDTD的微带线特性阻抗仿真Matlab工程: https://download.csdn.net/download/weixin_44584198/88748215 微带线特性阻抗的仿真是电磁学里面一个比较基本的仿真了,很多

    2024年01月17日
    浏览(42)
  • 基于机会网络编码(COPE)的卫星网络路由算法matlab仿真

    目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 4.1机会网络编码(COPE)概述 4.2COPE算法原理 4.2.1 编码机会预测 4.2.2 编码决策 4.2.3 数据包编码 4.2.4 数据包传输 4.2.5 数据包解码 5.完整程序         基于机会网络编码(COPE)的卫星网络路由算法。基

    2024年01月25日
    浏览(44)
  • m基于flocking算法的无人机群空间避障飞行matlab仿真,对比二维场景和三维场景

    目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB         近年来,随着通信网络、人工智能、自主系统、大数据的前沿技术的发展, 无人机蜂群作战也正在由概念变成现实,从理论走向实践。航迹规划,多机协作, 集群控制等问题成为当下研究热点。在军事作战

    2024年02月04日
    浏览(42)
  • 支路电气介数的matlab仿真,并对比HVDC,FACTS-TCSC,FACTS-UPFC

    目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 5.完整工程文件         支路电气介数的matlab仿真,并对比HVDC,FACTS-TCSC,FACTS-UPFC。HVDC、FACTS(包含TCSC和UPFC)三种简化模型在电气介数计算中的体现形式为:对测试系统,可以在系统任意数量和位置的线路上对以

    2024年01月24日
    浏览(29)
  • 38.利用matlab解 有约束无约束的参数估计对比(matlab程序)

    1. 简述        1.离散型随机变量的极大似然估计法: (1) 似然函数 若X为离散型, 似然函数为 (2) 求似然函数L(θ)的最大值点 θ, 则θ就是未知参数的极大似然估计值. 2.连续型随机变量的极大似然估计法: (1) 似然函数 若 X 为连续型, 似然函数为 (2) 求似然函数L(θ)的最大值点θ, 则

    2024年02月14日
    浏览(30)
  • 基于FPGA的Lorenz混沌系统verilog开发,含testbench和matlab辅助测试程序

    目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 将vivado的仿真结果导入到matlab显示三维混沌效果:     vivado2019.2 matlab2022a testbench如下所示:        洛伦兹混沌系统是一种非线性动力系统,最初由爱德华·洛伦兹(Edward

    2024年02月11日
    浏览(40)
  • 基于瑞丽多径信道的无线通信信道均衡算法matlab仿真,对比MMSE,ZF-DFE,MMSE-DFE

    目录 1.算法仿真效果 2.算法涉及理论知识概要 3.MATLAB核心程序 4.完整算法代码文件 matlab2022a仿真结果如下:         信道均衡(Channel equalization)是指为了提高衰落信道中的通信系统的传输性能而采取的一种抗衰落措施。它主要是为了消除或者是减弱宽带通信时的多径时延带

    2024年02月05日
    浏览(44)
  • 基于MATLAB的CFAR检测仿真程序分享

    基于MATLAB的CFAR检测仿真,得到平均CFAR检测。  完整程序: clc; clear; close all; warning off; addpath(genpath(pwd)); cfar = phased.CFARDetector(\\\'NumTrainingCells\\\',200,\\\'NumGuardCells\\\',50,\\\'Method\\\',\\\'CA\\\'); % Expected probability of False Alarm (no units) pfa_expected = 1e-2; % Setting parameters for CFAR Detector object cfar.ThresholdFactor =

    2024年02月11日
    浏览(44)
  • 45.杜芬方程解仿真解曲线(matlab程序)

    1. 简述         Dufing方程是一种重要的动力系统山,是反映工程物理系统中非线性现象和混沌动力学行为的极其重要的方程式。通过Duffing方程可以探讨铁磁谐振电路中的分岔、拟周期运动、子谐波振荡。而在非线性与混沌系统的研究中,Duffing方程展示了丰富的混沌动力学行

    2024年02月14日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包