AllJoynソフトウェアのフレームワーク
次に、AllJoyn環境を実現するAllJoynソフトウェアのフレームワーク(構成)について解説する(図1)。このフレームワークよって、AllJoyn対応のデバイスとアプリケーション間の通信が実現される。
図1 AllJoynソフトウェアのフレームワーク(構成)
〔出所 AllSeen Alliance :「An Open Source project building the framework for the Internet of Things (IoT)」、June 2015〕
図1に示すように、AllJoynソフトウェアフレームワークは、大きく分けて、
(1)AllJoynアプリケーションレイヤ
(2)AllJoynサービスフレームワーク
(3)AllJoynコアライブラリ
の3つのレイヤ(層)で構成されている。
このフレームワークは、AllJoynを用いてIoTを実現する際に、開発者が一からソフトをつくり始めると作業の負荷が大きいため、それを容易に実現するためのツールセット、すなわちミドルウェア注4として提供されているものである。
図1の下位には、データを送受信する物理的なネットワークとして、Wi-Fi、Thread注5、PLC注6、Ethernet、Bluetoothがあり、その上でOSが動作する構造となっている。
AllJoynサービスフレームワークには、
- 標準アプリケーション(Standard App)向けのAllJoynサービスフレームワーク
- 簡易アプリケーション(Thin App)向けのAllJoynサービスフレームワーク
の2つのバージョンが用意されている。
標準アプリケーション向けは、デバイスに使用されるプロセッサ(CPU)の能力やメモリの容量(リソース)に制約が少ないバージョン用として使用される。
簡易アプリケーション向けは、非力なMCU(Micro Controller Unit、組込み用のマイクロプロセッサ)や少ないメモリ容量しか搭載できないデバイスには、標準アプリケーションは大きすぎて搭載できないため、用意されている。
▼ 注4
ミドルウェア:AllJoyn対応の各デバイスと各デバイスに組み込まれたアプリケーションがネットワークを介して連携して動作できるようにするため、共通のサービスを提供するソフトウェア。
▼ 注5
Thread(スレッド):ネストラボ(Nest Labs、グーグルが買収)やARM、フリースケールセミコンダクタ、サムスンなどがリードして設立(2014年7月設立)された、Thread Group(スレッドグループ、www.ThreadGroup.org、2015年7月時点のメンバー数:148社)が策定する、IPベースの低消費電力型のメッシュ・ネットワーキング・プロトコル。1つのメッシュネットワークで250台以上のデバイスを接続可能。既存のオープンなプロトコル「UDP、IPv6、IEEE 802.15.4(MAC/PHY)」などを使用。
▼ 注6
PLC:Power Line Communication、電力線を使用する通信技術。