在求学的过程中,我想许多人都有这样一个问题,有些东西说起来好像是懂了,但是如果继续深入,比如给你一个路由算法,你怎么编程实现它。虽然网上许多人,写了一些关于zigbee路由的文章,但基本上是差不多的,没有切中要害,让我这些入门不久的菜鸟看的云里雾里,似懂非懂。看完后仿真程序仍然不知从何下手。幸好,老天给了我们一个可以思考的脑子,自力更生最可靠。

在路由过程中设计到路由表,路由搜索表(中文翻译过来不同版本有点差别),邻居节点表,RREQ,RREP、RERR。首先必须将这些最基本的东西弄清楚。

路由表:包含此条路由下一跳节点地址,路由状态,目的地址。

路由搜索表:在路由表建立过程中存在。

包含以下信息:Route request

ID:发起路由请求的节点产生的序列号,越大则表示分组越新:

Source address:发起路由发现的节点的地址:

Sender

address:将路由请求分组发送给此节点的节点的地址:

Forward

cost:发起路由发现的节点到此节点路径的开销,即路由请求分组中携带的开

销;

Residual

cost:此节点到目的节点的开销,即路由应答分组中携带的开销;

Expiration time:路由建立过程的有效时间。

邻居表:

ZigBee网络中的每个节点都保存一张邻居节点列表,用来存储此节点传输范围内其它节点的信息。

PANId:邻节点PAN标识符;

Extended address:邻节点的64-bit IEEE扩展地址,邻节点与本节点存在父子关系时

记录此条信息;

Network address:邻节点16一bit网络地址;

Device type:邻节点类型(0x00=ZigBee协调点,0x01=ZigBee路由节点,0x02=

ZigBee终端节点);

Relationship:邻节点与当前节点的关系(0x00=父节点,OxOI=子节点,0x02=其

它)。

节点交互的分组:

ZigBee网络层的控制分组包括路由请求(RREQ,Route Request)分组,路由应答(RREP,

Route Reply)分组和路由出错(RERR,Route Error)。

RREQ分组:

ZigBee网络中具有路由功能的节点可以向周围邻节点广播一个RREQ分组,目的是

为了找到一条通往它希望到达的目的节点的有效路径。

具体内容如下:

Command frame

identifier:指出此控制分组的类型(0x01=RREQ,0x02=RREP,0x03

=RERR):

Command options:指出此路由请求分组是否是在路由修复过程中产生的;

Route request ID:发起路由请求的节点产生的序列号,越大则表示分组越新;

Destination address:发起路由请求的节点希望建立的路径的目的地址;

Path cost:指从P.REQ的发起节点到当前接收RREQ的节点的路径开销。

RREP分组:

RREQ分组希望到达的目的节点收到RREQ后向RREQ分组的发起节点回复一个

RREP分组。

具体内容如下:

Command frame

identifier:指出此控制分组的类型(0x01=RREQ,0x02=I砒P,0x03

=RERR):

Command options:指出此路由应答分组是否是在路由修复过程中产生的:

Route request ID:此分组所应答的路由请求分组的路由请求标识符;

Originator address:发起路由请求的节点的网络地址;

Responderaddress:该条路由的目的节点地址,即响应RREQ的节点的网络地址:

Pathcost:从发起RREP的节点到当前接收RREP的节点的路径开销。

RERR分组:

当节点转发数据分组失败时将产生一个RERR分组,目的是为了通知此数据分组的

源节点分组转发失败。

Command frame

identifier:指出此控制分组的类型(Ox01=RREQ,0x02=RKEP,0x03

=RERR);

Error code:指出路由出错的原因:

Destination address:指被转发失败的数据分组的目的地址。

下面是我根据以上基础知识自己对路由建立过程的理解:首先源节点通过广播发送RREQ分组,具有路由功能的节点收到此信息后,建立反响路由,并转发RREQ分组,并将源节点到此节点的路由开销添加到路由搜索表和RREQ中,知道目的节点收到此RREQ,实际中可能有多条路径到达目的节点,目的节点根据路由开销选择路由开销最少的反向路由,将RREP发送给源节点,中间几点收到RREP也要添加此节点到目的节点的路由开销到路由搜索表和RREP中,最终到达源节点。路由搜索表清楚,各个节点路由表建立。

以上只是个人一点理解。望各位多多交流,指点。

matlab 路由表,闭关修炼之zigbee路由相关推荐

  1. zigbee路由杂谈

    在求学的过程中,我想许多人都有这样一个问题,有些东西说起来好像是懂了,但是如果继续深入,比如给你一个路由算法,你怎么编程实现它.虽然网上许多人,写了一些关于zigbee路由的文章,但基本上是差不多的, ...

  2. 无穷级数求和7个公式_考研数学闭关修炼习题讲解(16)无穷级数 附(6)补充解释

    假期鸽了很久,今天我要分享的是无穷级数,数一的专场. 今天的内容一共有9题,一起加油吧! [1] 本题考查无穷级数的判敛.本题用到的是通过放缩(比较判别法)直接判断敛散性,属于简单题,把后面的sin放 ...

  3. 单个正态总体均值的区间估计_考研数学闭关修炼习题讲解(3536)统计、估计与检验...

    锵锵锵!终于到了收官的时候,是的,没有看错,我们终于刷完了<闭关修炼>!今天的内容是统计.估计与检验,对应闭关修炼第35和36讲,一共有10个题,是又一个大题出题点,大家要小心,首先庆祝一 ...

  4. Windows移动开发(二)——闭关修炼

    一些武侠小说里的大人物,为了争夺武林盟主,号召天下,经常闭关修炼一段时间,闭关期间只能接触送饭的人,并且关外还有很多守卫的人员.还有,无论是篮球还是足球运动员,他们在真正接触球之前,都必须做很长一段时 ...

  5. 十月一“闭关修炼”,读完这些Java技术栈,愿金九银十过五斩六

    十月一由于疫情还是有很多人为了安全不会去旅游,实际上,对于有跳槽打算的人来说,现在正是"闭关修炼"的好时机,但很多人不知道从何开始学习,也正为即将到来的金九银十发愁!今天,小编就要 ...

  6. 来自菜鸟的逆袭,闭关修炼一个月,出关后成功拿下阿里,蚂蚁金服,美团三个大厂意向书!

    前言 楼主来自重庆一个普通的本科大学计算机学院,自己曾经在没拿到offer时也焦虑彷徨过,大大小小的公司自己也有投过,最终在自己闭关修炼一个月后成功斩获4个offer 腾讯 csig 后台开发 自我介 ...

  7. 闭关修炼(二十五)基础web安全

    不是特别难,主要是积累经验 赶紧学springboot去了,好拖延啊.捂脸 文章目录 表单重复提交 前端解决方法 接口如何防止模拟http请求 使用Filter防止XSS攻击 SQL注入 常见的攻击有 ...

  8. 张宇闭关修炼【超清pdf】

    2020张宇闭关修炼[超清]pdf 资料链接 https://shimo.im/docs/rOCr3qKLursLC5Mq/ 祝大家考研顺利! 根据工学.经济学.管理学各学科.专业对硕士研究生入学所应 ...

  9. 闭关修炼21天终于拿到offer

    闭关修炼21天,"啃完"283页pdf,我终于4面拿下字节跳动offer Java程序猿阿谷 写在开篇 闲话(长话短说): 今年的开端有些特殊,疫情的缘故对我们的生活造成了很大的影 ...

最新文章

  1. RESTful风格及其SpringMVC实现
  2. Spark MLlib: Decision Tree源码分析
  3. web开发者工具,你必须知道的CSS盒模型,架构师必备!
  4. 网络对抗技术作业一 201421410031
  5. 李开复:2018中国最大AI红利?是政策
  6. Base64 编码/解码器
  7. JSP页面中taglib的uri设置
  8. 蠕虫Sexy View短信攻击诺基亚3250等手机
  9. zencart 对首页静态化处理
  10. deadline调度器之(一):原理
  11. Fiddler4 Https设置及安装浏览器证书
  12. dos2unix离线安装
  13. PHP+Flash网页游戏开发 - 基本思路
  14. html ios视频播放器,iOS 视频播放器(整理)
  15. 使用Spark ML进行数据分析
  16. 51单片机入门之点亮发光二极管
  17. fooview辅助功能 shell_Fooview:一款功能超多的桌面悬浮球,帮你摆脱多余操作
  18. 第二语言教学的5c标准是哪5c,【英语教学论文】5C标准对大学英语教育的启示探讨(共3451字)...
  19. 计算机专业大几用到移动硬盘,2T有轻薄,4T大容量,双盘在面前,你会怎么选?—希捷2T移动硬盘评测...
  20. step fpga上实现呼吸灯和交通灯

热门文章

  1. 【PTA】 试试手气
  2. HDU 5514Frogs
  3. 多线程并发数量设置设多少算合理
  4. scratch做简单跑酷游戏_Scratch(七)篇外.用小动画和触碰能做大型游戏?
  5. 安徽外国语学院计算机毕业大补考,学生缓考、补考及重修最终成绩计算办法
  6. 大笨钟 (10 分)
  7. Android power_supply驱动开发详解
  8. 51信用卡股价年初至今上浮5倍,引入银行背景高管担任行政总裁
  9. lenovo L480 进入bios_梅捷主板如何在bios中设置u盘启动【详细步骤】
  10. jQuery Mobel 学习相关资料整理(一)