目录

一、理论基础

二、核心程序

三、测试结果


一、理论基础

无线Mesh网络其也可以称为无线网状网络或者无线多跳网络,其具有动态自组织、自配置、易于维护等优点,同时还具备成本较低,系统运行稳定的优势。无线Mesh网络将移动节点和固定节点通过无线链路进行相互链接,组成一个多跳移动的自组无线网络。无线Mesh网络的构建是基于Ad Hoc无线网络之上的,因此,在其拓扑结构上和Ad Hoc无线网络具有较多的相似点。无线Mesh网络能够灵活快速的实现各种场合的组网,因此具有极其广泛的应用前景。无线Mesh网络结构的基本示意图如下图所示:

对于OLSR路由协议,通过Dijkstra算法计算无线Mesh网络G中的N个sd的路径,主要步骤如下所示:

Dijkstra算法算是贪心思想实现的,首先把起点到所有点的距离存下来找个最短的,然后松弛一次再找出最短的,所谓的松弛操作就是,遍历一遍看通过刚刚找到的距离最短的点作为中转站会不会更近,如果更近了就更新距离,这样把所有的点找遍之后就存下了起点到其他所有点的最短距离。选择特殊路径长度最短的路径,将其连接的V-S中的顶点加入到集合S中,同时更新数组dist。一旦S包含了所有顶点,dist[]就是从源到所有其他顶点的最短路径长度。
(1)数据结构。 设置地图的带权邻接矩阵为map[][],即如果从源点u到顶点i有边,就令map[u][i]=<u,i>的权值,否则map[u][i]=∞;采用一维数组dist[i]来记录从源点到i顶点的最短路径长度:采用一维数组p[i]来记录最短路径上i顶点的前驱。
(2)初始化。令集合S={u},对于集合V-S中的所有顶点x,初始化dist[i]=map[u][i],如果源点u到顶点i有边相连,初始化p[i]=u(i的前驱是u),否则p[i]=-1
(3)找最小。在集合V-S中依照贪心策略来寻找使得dist[j]具有最小值的顶点t,即dist[t]=min,则顶点t就是集合V-S中距离源点u最近的顶点。
(4)加入S战队。将顶点t加入集合S,同时更新V-S
(5)判结束。如果集合V-S为空,算法结束,否则转6
(6)在(3)中已近找到了源点到t的最短路径,那么对集合V-S中所有与顶点t相邻的顶点j,都可以借助t走捷径。

二、核心程序

..............................................................%节点分布范围Nnode = 100;SCALE = 500;%%初始节点能量E0    = 1;%通信半径Radius= 100;%%节点最大移动速度Vmax  = 1;%%数据发送包速率Smax  = 20;%%数据发送包长度SLen  = 2000;%%节点通信阈值LRad  = 87;%电路能耗系数Eelec = 5e-8;%信道传播模型的能耗系数Efs   = 1e-11;%信道传播模型的能耗系数Emp   = 1.3e-15;%压缩比u     = 0.5;%%初始变异概率P     = 0.5;%%发送率Trans = 1.5;%%%构造一个多跳传输测试网络系统,OLSR协议的改进X       = rand(1,Nnode)*SCALE;  Y       = rand(1,Nnode)*SCALE; %定义随机带宽Bw      = 100*rand(Nnode,Nnode);%顶级随机的丢包率Db      = rand(Nnode,Nnode)/20;%network topology dmatrix0= zeros(Nnode,Nnode);Fmatrix0= zeros(Nnode,Nnode);Cmatrix0= zeros(Nnode,Nnode);for i = 1:Nnode for j = 1:Nnode Dist          = sqrt((X(i) - X(j))^2 + (Y(i) - Y(j))^2);%距离因素dmatrix0(i,j) = Dist;  end; end; %计算归一化值的最大值for i = 1:Nnode for j = 1:Nnode Dist = sqrt((X(i) - X(j))^2 + (Y(i) - Y(j))^2);   %网络优先级参数Fmatrix0(i,j) =((Bw(i,j)-min(min(Bw)))/min(min(Bw)) + (max(max(dmatrix0))-dmatrix0(i,j))/max(max(dmatrix0)) + (1-Db(i,j)))/3; %视频传输能力——即节点之间的传输损耗,用简化模型替代if i == jCmatrix0(i,j) = 0;  elseCmatrix0(i,j) = 20*log10(Dist); endend; end; MAX_dmatrix = max(max(dmatrix0));MAX_Fmatrix = max(max(Fmatrix0));MAX_Cmatrix = max(max(Cmatrix0));matrix      = zeros(Nnode,Nnode);dmatrix     = zeros(Nnode,Nnode);Fmatrix     = zeros(Nnode,Nnode);Cmatrix     = zeros(Nnode,Nnode);for i = 1:Nnode for j = 1:Nnode Dist = sqrt((X(i) - X(j))^2 + (Y(i) - Y(j))^2); %a link; if Dist <= Radius & Dist > 0matrix(i,j)  = 1;   %距离因素dmatrix(i,j) = Dist; %网络优先级参数Fmatrix(i,j) = ((Bw(i,j)-min(min(Bw)))/min(min(Bw)) + (max(max(dmatrix0))-dmatrix0(i,j))/max(max(dmatrix0)) + (1-Db(i,j)))/3; %视频传输能力——即节点之间的传输损耗,用简化模型替代Cmatrix(i,j) = 20*log10(Dist); else matrix(i,j)  = inf; %距离因素dmatrix(i,j) = inf; %网络优先级参数Fmatrix(i,j) = inf; %视频传输能力——即节点之间的传输损耗,用简化模型替代Cmatrix(i,j) = inf; end; end; end; %归一化处理dmatrix = dmatrix/MAX_dmatrix;Fmatrix = Fmatrix/MAX_Fmatrix;Cmatrix = Cmatrix/MAX_Cmatrix;%路由优化算法的改进Tmatrix = (dmatrix + Fmatrix + Cmatrix)/3;%定义通信起始节点和终止节点tmp = randperm(Nnode);for i = 1:NnodedistA(i) = sqrt((X(i))^2 + (Y(i))^2);distB(i) = sqrt((X(i)-SCALE)^2 + (Y(i)-SCALE)^2);end[Va,Ia] = max(distA);[Vb,Ib] = max(distB);Sn  = Ia;En  = Ib;[paths,costs] = func_dijkstra(Sn,En,Tmatrix); %通过遗传优化算法去搜索OLSR协议的最小MRP集if isempty(paths) == 0flags = 1; end endpath = func_find_best_MRPset(paths,X,Y,Tmatrix,Nnode);path_distance=0; ds=0;for d=2:length(paths) path_distance= path_distance + MAX_dmatrix*dmatrix(paths(d-1),paths(d)); ds(d)=MAX_dmatrix*dmatrix(paths(d-1),paths(d)); end %hop数量path_hops = length(paths); %根据OSLR协议所建立的网络路径进行视频的传输
...............................................

三、测试结果

A12-29

基于无线Mesh网络OLSR路由协议的MATLAB仿真相关推荐

  1. 基于IEEE802.11s的无线Mesh网络路由协议研究(一)

    摘要:基于IEEE 802.11s的无线Mesh网络已成为机动宽带接入技术研究领域的一个研究热点.对无线Mesh网络中的关键技术--混合无线Mesh协议(HWMP)进行详细的分析,与传统按需路由机制相 ...

  2. 无线mesh网络路由协议分类

    目前有超过70种路由协议被提出应用于无线Mesh网络,这些路由协议大致可以分为三类:先验式(表驱动)路由协议,反应式(按需)路由协议以及混合式路由协议,见下图. 无线Mesh网络路由协议分类图 先验式 ...

  3. 无线Mesh网络总结(新)

    无线Mesh网络主要包含三类节点,构成了Mesh的基本服务集. 1.与有线网络相连的节点(GateWay节点),其主要负责实现无线Mesh网络和有线网络的数据交换. 2.可以进行Mesh组网并拥有Ro ...

  4. 无线MESH网络与WDS的异同

    目录 前言 路由和桥接 无线路由器和无线网桥 桥接和生成树算法 Mesh路由器VS无线网桥 无线网桥和MESH路由器相关专业术语 前言 对于由MESH网络设备或者WDS(无线分布系统)网络设备所组成的 ...

  5. 无线Mesh网络技术基础与应用

    无线Mesh网络主要包含三类节点,构成了Mesh的基本服务集. 1.与有线网络相连的节点(GateWay节点),其主要负责实现无线Mesh网络和有线网络的数据交换. 2.可以进行Mesh组网并拥有Ro ...

  6. 无线Mesh网络技术

    无线mesh网,即无线网状网,也称为无线多跳网,它可以和多种宽带无线接入技术如802.11.802.16.802.20以及3G移动通信等技术相结合,组成一个含有多跳无线链路的无线网状网络.这种无线网状 ...

  7. 物联网技术系列之3分钟了解无线MESH网络

    今天来聊聊无线MESH网络的,开始之前,先说一句:"无线MESH网络是个好东西!" 要说无线MESH网络,首先从我们都熟悉的无线网络说起. 无线网络相信在座的各位一定一点儿也不陌生 ...

  8. 总结几点无线Mesh网络的优点

    无线Mesh网络是无线网状网,与传统无线WLAN不相同,被称之为多跳网络.它的好处很多,最有特点的就是可以"跳到"非拥塞的节点进行传输.那么下文就为大家详细介绍一下它的好处. 无线 ...

  9. 无线Mesh网络相比于传统WLAN的优势有哪些?

    传统的WLAN大家都应该比较了解了,利用射频技术,使用电磁波,取代旧式碍手碍脚的双绞铜线所构成的局域网络,在空中进行通信连接.每个客户端均通过一条与AP相连的无线链路来访问网络,形成一个局部的BSS. ...

最新文章

  1. CSS 选择器:BeautifulSoup4解析器
  2. python日期时间
  3. Ubuntu14.04下安装eclipse
  4. Android的数据存储
  5. latex 数学公式_数学公式、方程式 OCR 识别编辑 LaTeX 公式软件神器—极度公式
  6. dataframe两个表合并_DAXSQLPython实现报表项目存在串行的财务报表合并
  7. LeetCode 1109. 航班预订统计(差分思想)
  8. 对微软实习生或者工作感兴趣的读者, 目前我的项目是...
  9. 网络主机和交换机端口位置的有效定位方法
  10. [BZOJ 1025] [SCOI2009] 游戏 【DP】
  11. uniapp H5端与APP端压缩图片
  12. python绘制单线图_施工角度简析如何画好管道单线图
  13. 计算智能——K-均值算法
  14. 速读原著-UnixLinux基础(七)
  15. uniapp 关于swiper组件和moveable-area、moveable-view组件搭配的图片预览高度集成组件
  16. java如何对不齐,java中的测不准原理_java认证
  17. Qt编写安防视频监控系统15-远程回放
  18. D. CGCDSSQ (gcdST表)
  19. 针孔相机(透视相机模型)
  20. 3亿颗市场规模逐鹿,国产Zigbee芯片盘点

热门文章

  1. 如何在局域网内让自己电脑的文件被其他电脑访问
  2. 关于生日悖论问题的验证
  3. 王子救公主(DFS)
  4. 什么是jQuery,jquery的特点
  5. codeforces 616F Expensive Strings
  6. 关于Excel自动换行,不会在西文单词中间换行的问题
  7. 《中英双解》leetCode Arranging Coins (排列硬币)
  8. CF1548D2 Gregor and the Odd Cows (Hard)
  9. PostGIS 入门
  10. linux提权参考方法