T********i 发帖数: 2416 | 1 这个真的是创新。据我所知,中国真的根本没人做。
背景是,目前所有的wireless network stack都suck!而且是disguistingly suck!包
括所谓流行的Zigbee和BLE。谷歌的OpenThread半死不活。下面我会细说。
首先Hornet是基于Zigbee框架的。但是把Zigbee里面毫无人性的部分该删就删,该改就
改。可以说,从入网,到密钥管理,到路由协议和算法,都大幅度修改了。甚至MAC包
都有微调。已经到了没必要兼容Zigbee的程度了。但是依然能够兼容Zigbee的End-
device,就是简单设备没有路由转发功能的。
Zigbee一般只有2个密钥。Hornet每2个设备都有独立私密密钥,因此是端-端加密的。
Hornet的MAC+NWK+APS,总代码量15,000行。没错是一万五千行。代码量少,但是功能
全面增强。代码越少,犯错机会就越少。
比较起来,OpenThread的代码量是24万行。多16倍。OpenThread没有APS层,没有端-端
加密的密钥管理标准。而且,OpenThread的一个网络最多250个设备。Hornet是65000个
,更适合商业和工业部署。
我家装有超过150个Hornet的无线设备。因为射频优化的太好,150个设备基本互相可见
。这对于Zigbee来讲就是噩梦。因为如果都是router,有150个neighbor的router不能
存活。如果都是End-device也不行。Hornet设备能够根据网络密度自动转化成router或
者end-device。这个feature目前只有thread具备。 |
T********i 发帖数: 2416 | 2 另外,Hornet,加上RTOS的操作系统,一共占用内存10KB。
端-端加密,mesh routing with over 65,000 nodes,10KB内存就能轻松搞定。 |
d*******r 发帖数: 3299 | 3 相当于自己另起炉灶了?
网络协议里面是一堆堆的legacy code, 自己写肯定清爽很多. |
T********i 发帖数: 2416 | 4 其实,跟legacy code关系不大,关键是协议栈本身的算法设计要正确。
目前所有的协议栈,都表达了设计者和用户的利益冲突。利益冲突是无解的。
但是,利益冲突之外,明显能看出设计者还没完全想明白。
我的协议栈设计,是把问题想明白了。
: 相当于自己另起炉灶了?
: 网络协议里面是一堆堆的legacy code, 自己写肯定清爽很多.
【在 d*******r 的大作中提到】 : 相当于自己另起炉灶了? : 网络协议里面是一堆堆的legacy code, 自己写肯定清爽很多.
|
T********i 发帖数: 2416 | 5 这个协议栈最终肯定是要开源的。
当然OpenThread也是开源的。目前也是刚刚开始推。
技术指标好,肯定会有人用。但是开源前技术和法律准备也要一年半载。 |
d*******r 发帖数: 3299 | 6 期待看到 well-written 的开源文档 + code
【在 T********i 的大作中提到】 : 这个协议栈最终肯定是要开源的。 : 当然OpenThread也是开源的。目前也是刚刚开始推。 : 技术指标好,肯定会有人用。但是开源前技术和法律准备也要一年半载。
|
T********i 发帖数: 2416 | 7 写文档就是要写几百页的Protocol Specification。
要写明和Zigbee/Thread/BLE在各个细节部分的相同点和差异。
而且要写明白为什么有这种差异?
开源的好处是,Protocol Specification可以直接引用代码的函数Reference。
其实说出来,都是大实话。理都懂。问题是,在设计阶段,无穷多的选项中,你要能想
出来设计成什么样。我认为这就是所谓自主创新和弯道超车的差别。
【在 d*******r 的大作中提到】 : 期待看到 well-written 的开源文档 + code
|
d*******r 发帖数: 3299 | 8 如果只有源代码,没有(简单)文档的话,宣传理解的成本有点高啊
【在 T********i 的大作中提到】 : 写文档就是要写几百页的Protocol Specification。 : 要写明和Zigbee/Thread/BLE在各个细节部分的相同点和差异。 : 而且要写明白为什么有这种差异? : 开源的好处是,Protocol Specification可以直接引用代码的函数Reference。 : 其实说出来,都是大实话。理都懂。问题是,在设计阶段,无穷多的选项中,你要能想 : 出来设计成什么样。我认为这就是所谓自主创新和弯道超车的差别。
|
T********i 发帖数: 2416 | 9 我的意思是必须写复杂文档。也就是把specification写明白。
当然,准备成本高一些。但是必须的。
【在 d*******r 的大作中提到】 : 如果只有源代码,没有(简单)文档的话,宣传理解的成本有点高啊
|