matlab 路由表,闭关修炼之zigbee路由

在求学的过程中,我想许多人都有这样一个问题,有些东西说起来好像是懂了,但是如果继续深入,比如给你一个路由算法,你怎么编程实现它。虽然网上许多人,写了一些关于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中,最终到达源节点。路由搜索表清楚,各个节点路由表建立。

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

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值