作者:maerli,華為軟體架構師
HarmonyOS分布式作業系統定位為萬物互聯時代的作業系統,覆寫手機、平板、智慧屏、智能穿戴、智慧車機以及智能家居等記憶體從KB到GB級的多種終端,并在系統層讓多終端融為一體,形成超級終端,為消費者帶來全場景智慧生活新體驗,
如何讓各種不同的設備融合為一體,形成超級終端呢?這就需要分布式軟總線來實作,
分布式軟總線為設備間的無縫互聯提供了統一的分布式通信能力,能夠快速發現并連接設備,高效地傳輸任務和資料,
一、全場景面臨的挑戰
全場景應用涉及作業、生活、出行和學習的方方面面,旨在更好地服務人們,提供便捷、高質量、豐富多彩的超級終端的體驗,無論是運動、出行、辦公還是家庭生活都是全場景超級終端所涉及的范圍,
為了讓大家更好地了解全場景超級終端,以及分布式軟總線面臨的各種挑戰,下面我們以家庭場景為例詳細講解,

圖1 家庭場景
設備型別:涉及的設備數量眾多,比如手機、PAD、便攜PC、智慧屏、電視盒子、智能家電、健身器材等,既有個人終端設備,又有影音娛樂設備,還有大量的各種智能家居終端,
連接方式:涉及Wi-Fi、以太網、藍牙、Zigbee、PLC
典型業務:在家庭中,各類智能設備為人們帶來豐富多彩的智慧體驗,其場景多不勝舉,為方便大家理解,這里給出幾個例子,↓
- 來訪客人按下智能門鎖門鈴按鈕,智能音箱播放鈴聲,同時在電視螢屏上以畫中畫的方式展示出客人的影像,
- 用戶在電視上看到一檔美食節目,將烹飪方法和指導從電視轉移到廚房的電冰箱螢屏上,然后在節目指導下一步步完成美食制作,
- 用戶通過手機下發烹飪命令給烤箱、電飯煲等烹飪電器,由烹飪電器自動完成美食的加工,
- 用戶運動后,運動器材將采集的運動健康資料自動同步給冰箱,冰箱推薦出一系列最適宜體力恢復和營養補充的健康菜譜,用戶可以通過冰箱自動下單采購補充缺乏的食材,
挑戰:家庭場景下涉及的設備數量眾多,在豐富人們生活的同時,也為設備互聯互通帶來了巨大的挑戰,同時,設備間的連接方式復雜,并且由于房屋結構的關系,無線信號干擾、衰減、遮掩的問題也較多,另外,由于家庭場景下業務的多樣性,如何通過網路構建使得設備之間的互聯互通更加可靠、安全,并能夠基于業務和網路狀態進行質量優化和合理調度,是家庭環境下最大的挑戰,
二、分布式軟總線介紹
全場景下,HarmonyOS通過分布式軟總線技術連接不同設備構建超級終端的程序中,涉及到多種多樣通信方式的選擇和使用,而每一種技術、協議在實作和應用上都有很多差異,對于HarmonyOS應用開發者或設備開發者,要全部掌握所有在全場景智慧生活中所涉及的各類通信技術,其難度和成本可想而知,
因此如何讓這些基于HarmonyOS構建的設備便捷、高效地互相通信;并且實作上層應用無需考慮設備差異,就如同使用“一個設備”一樣,流暢地使用多個設備的能力,是HarmonyOS分布式設計中最重要的價值思考,
HarmonyOS分布式軟總線為此應運而生,為HarmonyOS分布式通信提供了可靠的解決方案,并通過一系列簡單的API介面服務于整個HarmonyOS系統,
分布式軟總線,向上對開發者屏蔽了技術的復雜性;向下則通過優秀的演算法和實作為HarmonyOS構建出一套高性能的分布式通信,
如圖2所示,HarmonyOS分布式軟總線從邏輯架構上將分布式通信抽象為由四個部分組成的業務模型:發現、連接、組網和傳輸,這四個部分在整個軟總線業務邏輯中分工合作,通過構筑分布式通信框架,達成分布式軟總線通信的目標,

圖2 分布式軟總線業務模型
1. 發現
通過分布式軟總線的發現技術,發現周邊的分布式設備的存在,一個設備可以是被發現方,可以是主動發現方,也可以二者兼而有之,
- 支持通過Wi-Fi、藍牙、以太網等不同的媒介發現設備,
- 支持根據不同設備的能力,選擇合適的發現媒介,
- 支持根據設備特點和業務需求提供合適的發現頻次、掃描周期等發現策略,
2. 連接
通過分布式軟總線的連接技術,連接周邊的分布式設備,分布式軟總線根據分布式設備的能力和業務需求,選擇合適的通信媒介和最恰當的連接技術,建立通信鏈路,為后續的組網和傳輸提供基礎能力,
3. 組網
通過分布式軟總線的組網技術,可以將不同能力、不同特征的分布式設備組成一張網路,使得設備分布式網路不限于單一的或者一對一的連接關系,而是將整個全場景下涉及的設備組成了有一張動態網路,在這張網路中,每個設備的通信能力、業務能力都可以得到有效的管理,從而當業務需要時,通過分布式軟總線的網路,可以隨時提供業務需要的設備能力資訊,也可以為業務通道的建立提供支撐,
4. 傳輸
通過分布式軟總線的傳輸技術,為分布式業務提供業務資料的傳輸能力,對業務資料和QoS(Quality of Service,服務質量)要求進行抽象,并根據網路負載和設備能力為業務提供合適的傳輸技術,既保證單業務的通信訴求,又保證整個分布式網路內多業務的傳輸質量,

圖3 分布式軟總線資料模型
如圖3所示,HarmonyOS分布式軟總線將傳輸的資料抽象為四種資料模型:訊息、位元組、檔案和流,基于不同的資料模型,可以針對性地構建合適的傳輸方案和QoS策略,
- 訊息:用于實時性和可靠性要求極高短資料(比如控制類指令)的傳輸,
- 位元組:用于時延要求不高的基本業務資料傳輸,
- 檔案:主要用于設備間檔案的傳輸和同步,通常要求較大的傳輸帶寬,但實時性要求不高,
- 流:一般用于音視頻流的傳輸,既要求高帶寬,又要求低時延,
訊息和位元組資料模型,主要服務于設備間任務流轉能力的構建,是分布式軟總線中任務總線能力的基礎,檔案和流資料模型,主要服務于設備間分布式資料傳輸,是分布式軟總線中資料總線能力的基礎,
分布式軟總線通過簡化設計、優化傳輸、主動抗干擾、智能調度等技術的有機結合,為HarmonyOS提供了高帶寬、低時延、低功耗、安全可靠的設備間通信能力,分布式軟總線也為接入超級終端的設備間無縫互聯提供了統一的、與物理連接無關的極簡API,其業務模型和四種資料模型覆寫了全場景下分布式業務跨終端近場通信的訴求,
三、分布式軟總線的應用
為了讓大家更直觀地理解分布式軟總線,下面我們結合家庭場景的一個典型業務來講一講業務是如何使用分布式軟總線能力的,
以門鎖門鈴和電視螢屏上的畫中畫為例,當門鈴按下的時刻,門鎖產品通過分布式軟總線就可以發現支持畫中畫功能的電視,門鈴上的分布式調度通過軟總線喚起電視上的畫中畫;同時也就可以建立起智能門鎖上攝像頭畫面傳遞到電視螢屏畫中畫的高速傳輸通道,
主要流程步驟如圖4所示:

圖4 家庭場景下分布式軟總線的應用
- 步驟1:智能門鎖上電后,分布式軟總線啟動發現流程,
- 步驟2、3:分布式軟總線發現智慧屏設備后,啟動組網流程,完成智能門鎖與智慧屏之間的可信認證,
- 步驟4.1、4.2、4.3:分布式軟總線分別向智能門鎖和智慧屏上報對方設備上線,
- 步驟5、6:當客人按下門鈴時,智能門鎖的門鎖業務請求分布式調度啟動智慧屏畫中畫,
- 步驟7:智能門鎖的分布式調度將“啟影片中畫”的指令封裝為訊息,請求分布式軟總線將該訊息發送至智慧屏的分布式調度,
- 步驟8、9:分布式軟總線通過訊息傳輸功能將“啟影片中畫”指令發送到智慧屏的分布式調度,
- 步驟10:智慧屏的分布式調度收到“啟影片中畫”指令后,啟影片中畫FA,
- 步驟11:智慧門鎖的門鎖業務請求分布式軟總線將捕獲的攝像頭畫面傳輸至智慧屏畫中畫,
- 步驟12、13:分布式軟總線通過流傳輸功能,將門鎖側攝像頭畫面發送至智慧屏,智慧屏的畫中畫收到門鎖攝像頭畫面后,在畫中畫FA中播放,
說明:為了方便理解,圖4略去了設備管理子系統和分布式硬體子系統的處理流程,業務實際是通過分布式設備管理收到的設備上線的通知;門鎖捕獲攝像頭視頻和攝像頭視頻畫中畫播放,涉及到業務通過分布式硬體子系統提供的攝像頭虛擬化能力,
四、結束語
分布式軟總線技術是基于華為多年的通信技識訓累,參考計算機硬體總線,在1+8+N設備間搭建一條“無形”的總線,具備自發現、自組網、高帶寬低時延的特點,通過分布式軟總線,全場景設備間完成設備虛擬化、跨設備服務呼叫、多屏協同、檔案分享等分布式業務,
分布式軟總線致力于實作近場設備間統一的分布式通信能力,提供不區分鏈路的設備發現和傳輸介面,具備快速發現并連接設備,高效分發任務和傳輸資料,分布式軟總線是HarmonyOS架構中的底層技術,是HarmonyOS的大動脈,其總的目標是實作設備間無感發現,零等待傳輸,對開發者而言,無需關注組網方式與底層協議,
經過上面的介紹,相信大家對全場景和分布式軟總線有了更深的了解,歡迎更多的開發者加入進來,豐富全場景,共筑鴻蒙生態!

掃碼添加開發者小助手微信
獲取更多HarmonyOS開發資源和開發者活動資訊
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/404315.html
標籤:其他
