分布式软总线的背景介绍

现实中多设备间通信方式多种多样( WIFI 、蓝牙等),不同的通信方式使用差异大,导致通信问题多;同时还面临设备间通信链路的融合共享和冲突无法处理等挑战。

分布式软总线致力于实现近场设备间统一的分布式通信能力,提供不区分链路的设备发现和传输接口,具备快速发现并连接设备,高效分发任务和传输数据功能。作为多终端设备的统一基座,分布式软总线是 OpenHarmony 架构中的底层技术,是 OpenHarmony 的大动脉,其总的目标是实现设备间无感发现,零等待传输。对开发者而言,无需关注组网方式与底层协议。

为促进与 OpenHarmony 生态的合作与互通,实现端边领域的互通和协同,聚元 PolyOS 引入分布式软总线技术,通过以分布式软总线为代表的技术进行生态互通,以期实现 “1+1>2” 的效果,支撑社区用户开拓更广阔的行业空间。

系统架构

分布式软总线实现近场设备间统一的分布式通信管理能力,提供不区分链路的设备间发现连接、组网和传输能力,主要功能如下:

  • 发现连接:提供基于 Wifi 、蓝牙等通信方式的设备发现连接能力。

  • 设备组网:提供统一的设备组网和拓扑管理能力,为数据传输提供已组网设备信息。

  • 数据传输:提供数据传输通道,支持消息、字节数据传输等能力。

业务方通过使用分布式软总线提供的 API 实现设备间的高速通信,不用关心通信细节,进而实现业务平台的高效部署与运行能力。

../../_images/dsoftbus_kuangjia.png

分布式软总线架构图

分布式软总线子系统旨在为 OpenHarmony 系统提供的通信相关的能力,包括: WLAN 服务能力、蓝牙服务能力、软总线、进程间通信 RPC(Remote Procedure Call)等通信能力。

WLAN 服务:为用户提供 WLAN 基础功能、 P2P(peer-to-peer)功能和 WLAN 消息通知的相应服务,让应用可以通过 WLAN 和其他设备互联互通。

蓝牙服务:为应用提供传统蓝牙以及低功耗蓝牙相关功能和服务。

软总线:为应用和系统提供近场设备间分布式通信的能力,提供不区分通信方式的设备发现,连接,组网和传输功能。

进程间通信:提供不区分设备内或设备间的进程间通信能力。

目录

分布式软总线组件主要代码目录结构如下:

../../_images/dsoftbus_mulu.png

分布式软总线代码目录

限制约束

  • 组网设备需在同一局域网中。

  • 组网之前,需先完成可信设备认证。

  • 目前支持 wifi 和有限的标准以太局域网下的 coap 设备发现和传输,ble 等南向协议拓展功能在后续版本中持续支持。