加重“分布式”砝码的Harmony 2.0
以华为现有的软件布局,即便抛开HarmonyOS(以下统称鸿蒙)不谈,南向的IoT产品要部署分布式技术方案其实也并不难。硬件开发者需要在自家硬件系统的上层加入华为相应Kit的SDK,另可能需要在HAL和Framework层做少许改动。
从华为消费者业务软件部总裁王成录,在主题演讲中的发言来看,分布式技术原本是鸿蒙1.0操作系统的核心。后来才将这项技术引入到了华为的EMUI 10.0(基于Android)系统中。才有了我们现在所知的各种分布式功能。
“除了从EMUI系统引入的核心基础能力(如GPU Turbo等),鸿蒙2.0相比1.0,分布式技术有了质的提升和变化。”王成录表示。
事实上,今年的主题演讲针对鸿蒙系统架构层面的改进介绍并不多,而不是像去年那样谈了不少微架构、方舟编译器相关的话题。王成录针对鸿蒙2.0的发言几乎全部基于系统的分布式能力。
分布式软总线
比如说“分布式软总线”“性能无线逼近硬总线能力”。包括时延比1.0版低一倍,吞吐高一倍,抗丢包率则从去年的25%提升到今年的30%。
此外分布式软总线有三个关键点的突破,“第一,鸿蒙2.0实现了蓝牙网络和WiFi两个异构网络的设备间的可见。这对上层应用来说是至关重要的。”
“第二,自发现自连接。通过BLE常开、广播这样的方式,一次配对完成后永远都是自发现自连接。加上我们大大压缩了占空比,降低功耗——我们的功耗做到了,假如设备一天工作16个小时,我们的功耗续航时间只缩短不到10分钟。”
“第三,音画同步(动态时延校准)。比如手机上的视频,把视频流分享给大屏设备,音频流分享给音箱,仍然能够做到视频和音频间的同步。”
分布式数据管理
这项技术包括了分布式数据库和分布式文件系统。王成录强调在这项能力上,华为投入了大量的时间和精力,最终得以实现了分布式文件系统远程读写性能、分布式数据库OPS性能、分布式检索性能相比业界主流方案的优势。
华为的多设备文件传输是基于SMB协议,王成录在宣传中提到“我们比业界做的最好的Samba系统快4倍”“最低4倍,我们能达到4-6倍的速度”。Samba是微软基于SMB协议做的,这其实是个免费软件,提供文件与打印共享服务,支持各种系统。
而在数据库操作方面,华为在此的对比对象是Android的ContentProvider——这个对比对象算是比较有趣,ContentProvider是在多应用间共享数据时用到的组件。“鸿蒙做的是跨设备之间的数据读取,比Android同设备不同应用间的读取在OPS性能上都要强1.3倍。”
数据检索能力对比苹果iOS Core Spotlight。“第三方应用可以去调用这个接口,以很快的速度查找数据库里面所有的数据信息,我们构建的能力,是苹果Core Spotlight的1.2倍。”
分布式安全
王成录在“分布式安全”这部分花了比较大的篇幅去谈。这其实也并不难理解,我们认为“分布式能力”构建在多设备通讯以及“软总线”的基础上,这是一种天然加大了攻击面的方案,所以在安全问题上必须投入更大的精力。
华为的方案总结为:“正确的人,通过正确的设备,去正确地使用数据”。
用相对简单的话来说,正确的人,实际上是指,由于有多设备协同,所以对于安全认证等级比较高的应用,可以同时要求多种身份认证因子,比如说人脸识别(手机)+心率数据(手环);其他多因子还包括指纹识别、声纹识别等等——而且这种多因子身份认证是根据分布式能力自行选择组合的。
而在“正确的设备”的问题上,华为过往就有了在TEE(Arm上面是Trustzone)方面的经验。“我们过去这么多年在软件工程方面的积累,TEE内核可以部署到各种IoT设备上。”而且“TEE安全微内核获行业最高级别安全认证CC EAL 5+。”据说是“业界第一个在微内核领域,过CC EAL 5+认证的厂商。”似乎在2009年黑莓发布的新闻稿中提到QNX Neutrino RTOS安全内核为EAL 4+。
与此同时前文还提到了,多设备协同的一个优势是利用其它硬件的优势资源。比如路由器可以借用手机的AI能力实现防火墙动态规则自动构建——未知华为是否已经实现了这一特性,感觉这在实现上的挑战性还是相当之大。
最后是“正确的数据”。包括根据数据安全、敏感级别,将数据储存在不同位置;以及制定数据在设备间流动的规则。只有高级别能力的设备,才能访问低级别能力设备上的数据,反之则行不通。
这几点其实都属于信息安全的基本实施方案。网络安全是个比较大的话题,其安全的最终表现,还是需要经受时间考验的。
- 杂种米听得懂吗?