1 / 8
文档名称:

物联网CTP协议.docx

格式:docx   大小:81KB   页数:8页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

物联网CTP协议.docx

上传人:suijiazhuang1 2022/6/23 文件大小:81 KB

下载得到文件列表

物联网CTP协议.docx

文档介绍

文档介绍:物联网CTP协议简介
一、 CTP :集合树协议
介绍
Wireless Senior Node
Multihop Wirele&s Routing Usiing
CTP
大多数传感器网络用于从物理世界收集信息。例子包括用于id合起来标识了 一个唯一个源数据包,而origin,seqno,collect_id,THL合起来标识了网 络中唯一一个数据包实例。两者的区别在路由循环中的重复抑制是很重要的。如果节点抑制源数据包,则 它可能丢弃路由循环中的包;如果它抑制包实例,则它允许转发处于短暂的路由循环中的包,除非THL凑 巧回绕到与上次转发时相同的状况。
CTP路由帧
CTP路由帧格式如下:
1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|P|C| reserved | parent |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| parent | ETX |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ETX |
+-+-+-+-+-+-+-+-+
各字段意义如下:
-P:与数据帧相同
-C :拥塞标识。如果节点丢弃了一个CTP数据帧,则必须将下一个传输路由帧的C位置位。
-parent :节点的当前父节点 -metric(ETX):点的当前 ETX 值
当节点接收到一个路由帧时,它必须更新路由表相应地址的ETX值。如果节点的ETX值变动很大,那么
CTP必须传输一个广播帧以通知其它节点更新它们的路由。与数据帧相比,路由帧用父节点地址代替了源 节点地址。父节点可以发现子节点的ETX值远低于自己的ETX值的情况,并准备传输一个路由帧。
三、 CTP协议的交互过程
链路质量估计模块该模块采用LEEP协议,维护一张邻居表nei_ table,根据接收LEEP帧信息, 调用updateN eighborEntry()函数更新邻居表项。当LEEP帧接收窗口满或数据包发送窗口满,则更新 与该邻居的双向链路质量updateEETX()。
路由引擎模块路由引擎利用链路质量估计模块的链路估计信息更新ro uteInfo,同时为数据转发模块 提供父节点信息,是CTP协议的核心。节点启动后,首先在构造函数CT P( u_int16_t id)中设置协议的 初始状态参数;汇聚节点设置父节点为自身,ETX值为0;启动路由更新定时器和信标帧广播定时器,路 由更新定时器周期为固定值(8 s ),每隔8 s将执行1次updater table(),信标帧广播周期依据网络 的状况动态地更新,设置初始最小周期为 64 ms。协议将路由包封装在信标帧中,通过周期性调用 send_route_pkt()函数实现广播。邻居接收到路由分组后,根据情况更新路由表。图4为路由包发送和 接收端的处理流程。
路由史新时的触发
发送路山包 一一—无线信道——一A接收路山包
图4 路由包发送接收过程
协议在updater table()中完成父节点的选取、更新路由信息项routeinfo。U pdatertable ()函数利 用链路估计模块更新routeinfo,在NS 2实现中,利用了邻居