BLIP发行历史(TinyOS中的BLIP)

Berkeley IP信息

欢迎来到blip(Berkeley IP implementation for low-power networks)工程目录。

我们已经在TinyOS上开发出基于IPv6的应用。该应用使用6lowpan/HC-10包头压缩技术,支持IPv6邻居发现(neighbor discovery)协议、默认路由选择(default route selection)、点对点路由(point-to-point routing)和网络编程(network programing)等功能。这些应用已经在micaz、telosb、epic等平台上测试通过。标准工具(比如ping6、tracert6和nc6)可以用来与blip网络设备进行交互以及错误检测,同时支持在PC端基于标准BSD sockets API(或者任何内核提供的网络接口)编写的应用工具。传感器网络能够很容易的通过连接公共子网,提供广域连接性(global connectivity)。

当前的代码库已经在一些多达75个节点的应用部署中测试了稳定性和性能表现,其中包括我们自己的测试平台(smote)、ACme 项目以及各种各样的在楼宇电能检测项目。尽管路由部分在设计之初是静态人工指定的,但我们有理由相信该协议栈的性能表现和稳定性。

开始

第一步是获取代码。以TinyOS2.1.1为例,blip是作为核心部分包含在TinyOS中的。按着“ http://docs.tinyos.net”的指导进行TinyOS以及你的平台工具链的安装。一旦安装完成,便可以参照“ blip tutorial”的解释进行编译同时配置blip网络。

Blip2.0

在2010年5月,我们第一次向公众推出blip-2.0(发行在tinyos-2.x-contrib/berkeley/blip-2.0)。下一版本的目标是支持IETF的相关标准,而当前版本只是一个非正式的发布(and in a less casual way then the current version)。在那个春天,这个提前发布的blip-2.0对draft-ietf-hc-06实现了全面的支持;这意味着对于cc2420无线模块实现了64位地址的支持,封装了所有奇怪的多播地址格式(multicast address formats)以及其他功能。我同时整理了很多其他的内部代码和接口,将所有6lowpan压缩行为都隔离到一个便于更新的库-lib6lowpan;如果你想应用你自己的6lowpan压缩,建议你先查看下我的这些代码作为测试资源,因为这样我们都能从相互合作中获得好处。

介绍下我们工作的思路,在Johns Hopkins的同事们正在致力于RPL的应用研究,并且他们已经取得了长足的进步;我期望我们能够使用他们的成果作为blip-2.0路由的基础。我同时也查看了下6lowpan-nd,但我觉得该文档一直在变动之中,以至于还不利于应用。一旦WG汇集,我们期望能够很快的推出应用。在即将到来的日子里,我希望在国际上,针对于已经存在的6lowpan组件架构,在比较容易的实现出入转换多重路由协议(multiple routing protocol)上,能有更加完善的文档推出。

对于在tinyos-2.x-contrib/berkeley/blip-2.0中的代码;其中的README可以帮助你运行。该代码目前可能存在bug,此外,因为没有支持路由(仅仅是本地链路层地址[link-local addresses]),它只适用于一般的尝试(playing with),但至少它是一种对于将来发展的尝试。

发行历程

  • tinyos-2.1.1发行
    • 核心整合
      • 系统连线(system-wire) Ieee154消息抽象
      • blip+AM/dual协议栈操作生效
      • 串口协议栈bug修复
    • 路由
      • DAG number/rebuildign
      • traffic generation
      • "experimental" multi-driver support
    • 明晰LPL支持
    • "experimental" tcp 支持
    • ip扩展包头结构
    • 路由驱动现在通过gnu自动工具进行编译/交叉编译
    • 丰富statistics接口(tatistics interface)
    • 平台支持:telosb epic shimmer iris[micaz]
  • code/b6lowpan/tags/release-3-20-2009
    • 名称改变:发行版本存放在tinyos-2.x-contrib/berkerley/blip
    • 不再需要独立的radvd(advertisement daemon is include in the routing driver)
    • 驱动支持telnet实现路由检测和维护
    • UDP可以通过通用组件调用,支持被动开放握手(passive open handled),为活跃开放(active open)提供bind()
    • TCP协议原型(没有文档、存在若干已知问题)
    • NWPRrog(point-to-point network programming using pieces of Deluge)已经完全调试通过
    • IP地址结构更加"漂亮"(参考ip.h),在格式上和linux中的格式一致
    • UDPshell得到了进一步的改良;新的BinaryShell,提供相似的功能,其中,移除了ascii处理,从而节省了4k的代码空间
  • code/b6lowpan/tags/release-11-13-2008
    • 为了改善性能和汇聚能力(convergence),完全修订了路由算法
    • 进一步稳定性改良和bug修复
    • 支持MIPS平台的路由编译
    • 提供RPC协议原型和stub generator
  • code/b6lowpan/tags/release-8-25-2008
    • 单跳(Single-phase)UDP和IP接口
    • 去除缓冲池(buffer pool)
    • 报文不支持多跳(hop-by-hop)重组
    • 网络编程支持使用类似TFTP的网络协议,但存在部分deluge(TFTP将会在以后实现)
  • code/b6lowpan/tags/release-7-15-2008
    • 初始发行

文档

在wiki中的文档几乎是过时了。目前主要的文档作为blip tutorial进行维护。

邮件列表

对于b6lowpan的公开使用者列表位于https://lists.eecs.berkeley.edu/sympa/info/blip-users。目前它的信息量还不大;仅仅发布了一些注意事项,但同样欢迎你使用它来提出各种问题。

相关链接

相关人员




原文地址:
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值