Rime协议栈概述及学习资料

转自http://blog.chinaunix.net/uid-9112803-id-3263428.html

摘要:

    本文讲述了Rime协议栈的提出背景、体系结构,最后罗列Rime协议栈学习资料。并附上Rime的名称来源。


一、提出背景

    传统的分层通信架构(communication architectures)很难满足资源受限的传感器网络,于是,研究者转向跨层优化(比如将数据聚合顶层的功能放在底层实现),但这导致系统变得更脆弱以及难以控制(fragile and unmanageable systems)。传统分层通信结构再次得到重视。同时研究发现,传统分层效率几乎可以与跨层优化相媲美[1]。Rime就是在这样的背景开发的。(其实我觉得蛮套话的)


二、Rime概述

    Rime是针对传感器网络轻量级、层次型协议栈,也是低功耗、无线网络协议栈,旨在简化传感器网络协议及代码重用,属于Contiki的一部分(Contiki还支持uIPv4、uIPv6、lwIP)。

2.1 使用Rime

先来看下应用程序如何使用Rime协议栈,如下图:

图1 应用进程使用Rime通信示意图

    由上图可知,有两种方式使用Rime。应用1使用mesh路由协议(跑在Rime协议栈之上),而应用2直接使用Rime协议栈。每个通信路径使用自己的逻辑信道。

2.2 Rime协议栈结构图

Rime是分层的,类似于TCP/IP协议栈,

图2 Rime协议栈示意图

abc

    abc意思是anonymous broadcast,匿名广播。即将数据包通过无线射频驱动(radio driver)发出去,接收来自无线射频驱动所有的包并交给上层。

ibc

    ibc意思是identified sender best-effort broadcast,将上层的数据包添加一个发送者身份(sender identity)头部。

uc

    uc意思是unicast abstraction,将上层的数据包添加一个接收者头部(adds a receiver header field)。

Stubborn transmission

    可靠通信由两层实现:Stubborn transmission、Reliable transmission。Stubborn transmission(译为顽固传输?),这一层在给定的时间间隔不断地重发数据包,直到上层让其停止。为了防止无限重发,需要指定最大重发次数(maximum retransmission number)。

Reliable communication

    Reliable communication是可靠通信的另一层,该层主要实现确认和序列功能(acknowledgments and sequencing)。

Bulk transfer

    块传输,应该是这样翻译吧。

2.3 Rime协议栈层次图

从另一个角度看Rime协议栈如下图:

    

展开阅读全文

没有更多推荐了,返回首页