1.完整项目描述和程序获取
>面包多安全交易平台:https://mbd.pub/o/bread/ZJmZk5xr
>如果链接失效,可以直接打开本站店铺搜索相关店铺:
>如果链接失效,程序调试报错或者项目合作也可以加微信或者QQ联系。
2.部分仿真图预览
3.算法概述
无线自组网(Wireless Ad Hoc Network,简称WANET)是一种无需基础设施支持的网络,它由一组移动的无线节点组成,这些节点可以自组织形成一个网络,实现数据的传输和共享。由于WANET是一种去中心化的网络,因此其性能受到节点移动、信道状态、路由算法等多种因素的影响。为了评估WANET的性能,需要进行性能仿真来模拟实际网络环境下的数据传输和节点行为。从端到端时延、吞吐量、初入网时间、迟入网时间和网络建立时间等方面详细介绍无线自组网性能仿真。
4.部分源码
...................................................................
N = 15;
tdrift= tclk*Tslot*N;
%融合组网
%接收节点信息进行帧检测
%检测是否同步
flag = 0;
Tss = [];
Tee = [];
Delays = [];
ixk = 0;
while ixk<=length(paths)
ixk = ixk+1;
frame1D2= frame1D + randn(size(frame1D));
yy = xcorr(frame1D2(1:end-10000),PN1);
yy2 = yy;
pnx = find(yy2>100);
if isempty(pnx) == 0;
%建立动态时延关系表
for ij = 1:length(ttra2)
Delays(ij) = ttra3+ttra2(ij) + Tslot + tdrift;
end
%确定参考节点
IDrefS = idx1;
IDrefD = idx2;
%广播参考节点
TimeS = (ixk+2+0.2*rand);%发送点的时间,设置随机发送时间
%更新节点时间%完成更新
TimeD = TimeS + [sum(Delays)];
flag = 1;
else
%没检测到,不做处理
TimeS = 0;
TimeD = 0;
Delays= 0;
flag = 0;
end
Tss = [Tss,TimeS];
Tee = [Tee,TimeD];
end
%端到端时延
TimeD2D(jj) = sum(Delays);
%网络吞吐量与带宽,跳数相关
th = BW/Nhops;
Throughput0(jj)= th/1e3;%转换为Kbits
%初始入网时间
Time1st(jj) = mean(Tss);
%迟入网时间
TimeFst(jj) = mean(Tee);
%网络建立时间
Timeset(jj) = mean(Tee)+mean(Tss);
end
TimeD2D_(ii) =mean(TimeD2D);
Throughput0_(ii)=mean(Throughput0);
Time1st_(ii)=mean(Time1st);
TimeFst_(ii)=mean(TimeFst);
Timeset_(ii)=mean(Timeset);
end
figure;
plot(Nnodes,TimeD2D_,'-bs',...
'LineWidth',1,...
'MarkerSize',6,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.9,0.0,0.0]);
grid on
xlabel('节点数量');
ylabel('端到端时延(ms)');
figure;
plot(Nnodes,Throughput0_,'-bs',...
'LineWidth',1,...
'MarkerSize',6,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.9,0.0,0.0]);
grid on
xlabel('节点数量');
ylabel('网络吞吐量(Kbps)');
figure;
plot(Nnodes,Time1st_,'-bs',...
'LineWidth',1,...
'MarkerSize',6,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.9,0.0,0.0]);
grid on
xlabel('节点数量');
ylabel('初始入网时间(s)');
ylim([0.8*min(Time1st_),1.2*max(Time1st_)]);
figure;
plot(Nnodes,TimeFst_,'-bs',...
'LineWidth',1,...
'MarkerSize',6,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.9,0.0,0.0]);
grid on
xlabel('节点数量');
ylabel('迟入网时间(s)');
figure;
plot(Nnodes,Timeset_,'-bs',...
'LineWidth',1,...
'MarkerSize',6,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.9,0.0,0.0]);
grid on
xlabel('节点数量');
ylabel('网络建立时间(s)');
12_084_m