簡易檢索 / 詳目顯示

研究生: 黃子嘉
Zi-Jia Huang
論文名稱: 在Android平台上具擴充性的低功率藍牙遠端程序呼叫服務之設計與實作
On Design and Implementation of an Scalable Remote Procedure Call Service over BLE GATT service \\-- Using the Android platform as Example
指導教授: 查士朝
Shi-Cho Cha
口試委員: 羅乃維
Nai-Wei Lo
葉國暉
Kuo-Hui Yeh
學位類別: 碩士
Master
系所名稱: 管理學院 - 資訊管理系
Department of Information Management
論文出版年: 2018
畢業學年度: 106
語文別: 中文
論文頁數: 67
中文關鍵詞: 物聯網物聯網閘道器低功耗藍牙Android TV
外文關鍵詞: IoT, IoT Gateway, BLE, Android TV
相關次數: 點閱:297下載:3
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報

近年來許多物聯網(Internet of Things,簡稱IoT)廠商皆推出IoT應用,像是Philips Hue、Amazon Alexa、Google Home及Apple HomeKit等,而這些應用往往需要在家中加入一個閘道器,讓使用者在家中存取IoT裝置所提供的服務。然而,當使用者需要使用支援不同廠商的裝置時,就需要擺放好幾個閘道器。因此若能將各個閘道器的功能整合,並且提供一個標準介面來部署服務,最後使用者家中就不需要擺放各式各樣的閘道器。

有鑑於此,本研究提出一個具擴充性的低功率藍牙(Bluetooth Low Energy,簡稱BLE)遠端程序呼叫服務框架,能於IoT閘道器的應用環境中,作為部署服務之平台的開發基礎,讓應用程式能部署透過BLE存取的服務。相較於ZigBee等協定,目前智慧型手機的平台都支援Wi-Fi和BLE,但BLE的配對程序比Wi-Fi更簡單。加上透過BLE通訊所花費的資源較少,因此BLE很適合作為存取閘道器的底層協定。

此外,目前許多人家中都有Android TV等裝置,因此本研究基於Android TV進行實作,相信可以很容易的部署到家戶閘道器,以便使用者可以只用一個閘道器,就能存取不同IoT廠商的裝置。最後,本研究所提供之架構可望成為減少家中IoT設備架構複雜度的關鍵因素,進而促成IoT應用的普及。


Recently, there are numerous applications for IoT(Internet of Things), such as Philips Hue, Amazon Alexa, Google Home or Apple HomeKit, are provided for managing devices. These applications require that inhabitants need to buy a specific gateway to use the services provided by IoT devices. However, when the users use various services, they need to install several gateways supporting new protocol. Therefore, if the vendors can follow a standard interface for deploying the services, different functions of the gateways can be integrated into one. Thus, users do not need to buy different kinds of gateways.

Consequently, this study proposed a Scalable Remote Procedure Call Service over Bluetooth Low Energy(BLE) Generic Attributes(GATT) service, which can act as the basics of development for deploying the service platform. Thus, the application can deploy the service through BLE. Compared with the protocol like ZigBee, although Wi-Fi and BLE are supported by the most of smartphones and gateways, the pairing procedure of BLE is easier than the one of Wi-Fi. Moreover, the power consumption of BLE is reduced. In accordance with above advantages, BLE is a suitable protocol for communicating with the gateway.

Besides, as there is an increasing number of Android TV, the implementation of the proposed framewok is based on Android TV. We believe that our study can be easily installed on the home gateway, thereby allowing individuals to use a gateway for controlling the IoT devices from different manufacturers. Finally, our proposed framework can act as a key factor for reducing complexity of the architecture of the IoT devices, thereby promoting ubiquity of IoT applications.

摘要 I Abstract II 致謝 III 目錄 IV 圖目錄 VII 表目錄 IX 1 緒論 1 1.1 研究背景與動機 1 1.2 研究目的與貢獻 2 1.3 章節介紹 3 2 文獻探討與背景知識 4 2.1 現有的遠端服務存取框架 4 2.1.1 ONC RPC 7 2.1.2 Java RMI 7 2.1.3 CORBA 7 2.1.4 GRPC 9 2.2 BLE 10 2.3 GATT 13 2.4 透過GATT存取裝置資料 15 2.5 GATT不足以作為提供服務框架的問題 17 3 問題定義與需求分析 19 3.1 問題定義 19 3.2 範例情境 20 3.3 系統功能需求 21 4 框架設計 22 4.1 組件定義 22 4.2 命名服務 24 4.3 訊息服務 25 4.4 中心訊息管理服務及標準訊息服務介面 26 4.5 遠端程序呼叫介面及協定 28 4.6 遠端程序呼叫流程 30 5 結果與討論 32 5.1 存取框架實作 32 5.1.1 服務範例−計算機 34 5.2 實驗與結果評估 36 5.2.1 不同封包大小的效能實驗 37 5.2.2 不同MTU的效能實驗 40 5.2.3 多個裝置同時存取的效能實驗 41 5.3 安全性分析 41 5.3.1 兩個應用程式同時註冊相同的GATT服務 45 5.3.2 兩個應用程式同時存取相同裝置的GATT服務 46 5.3.3 應用層共用BLE的安全性結論 48 6 結論與未來發展 51 參考文獻 53

[1] G. Mechling,Android things - communicating with bluetooth low energydevices. [Online]. Available:http://nilhcem.com/android-things/bluetooth-low-energy(visited on 05/28/2018).
[2] Android as a gateway, ARDIC Technology. [Online]. Available:https://devzone.iot- ignite.com/knowledge- base/android- as- a-gateway/(visited on 05/28/2018).
[3] C. Nan, “Bluetooth low energy based coap communication in iot coapnonip: An architecture grants coap in wireless personal area network,” 2016.
[4] C. Yoon, H. Choi, J. Cho, and Y. W. Kim, “Coap over ble-gatt for ocf,” in2017 International Conference on Information and Communication Tech-nology Convergence (ICTC), 2017, pp. 32–34. DOI:10.1109/ICTC.2017.8190936.
[5] Protocol buffers, Google Inc. [Online]. Available:https://developers.google.com/protocol-buffers/(visited on 05/28/2018).
[6] A. Chiu, “Authentication mechanisms for onc rpc,” RFC Editor, RFC 2695,1999,https://www.rfc-editor.org/rfc/rfc2695.txt. [Online].Available:https://www.rfc-editor.org/rfc/rfc2695.txt.
[7] R. Thurlow, “Rpc: Remote procedure call protocol specification version2,” RFC Editor, RFC 5531, May 2009,https://www.rfc-editor.org/rfc/rfc5531.txt. [Online]. Available:https://www.rfc-editor.org/rfc/rfc5531.txt.
[8] Remote method invocation(rmi), Oracle Corporation. [Online]. Available:https : / / www . oracle . com / technetwork / java / javase / tech /index-jsp-136424.html(visited on 05/28/2018).
[9] Remote method invocation(rmi) whitepaper, Oracle Corporation. [Online].Available:https://www.oracle.com/technetwork/java/javase/tech/index-jsp-138781.html(visited on 07/11/2018).
[10] “Common object request broker architecture (corba) specification, version3.3, corba overview,” Object Management Group, Standard, 2012, ch. 6,pp. 11–26.
[11] About grpc, Google Inc. [Online]. Available:https://grpc.io/(visitedon 05/28/2018).
[12] N. Gupta,Inside Bluetooth Low Energy (Artech House Mobile Communi-cations), Background of Bluetooth. Artech House, 2013, ch. 2, pp. 15–32, ISBN:1608075796. [Online]. Available:https://books.google.com.tw / books / about / Inside _ Bluetooth _ Low _ Energy . html ? id= -LMq0NhoEQgC&redir_esc=y.
[13] “Bluetoothcorespecificationv5.0,vol3,partg,genericattributeprofile(gatt),”Bluetooth SIG Working Groups, Standard, 2016, pp. 2221–2288.
[14] Generic access profile(gap),BluetoothSIGWorkingGroups.[Online].Avail-able:https://www.bluetooth.com/specifications/assigned-numbers/generic-access-profile(visited on 05/28/2018).
[15] Gatt services, Bluetooth SIG Working Groups. [Online]. Available:https://www.bluetooth.com/specifications/gatt/services(visited on05/28/2018).
[16] Company identifiers, Bluetooth SIG Working Groups. [Online]. Available:https://www.bluetooth.com/specifications/assigned-numbers/company-identifiers(visited on 05/28/2018).
[17] The stride threat model,MicrosoftCorporation.[Online].Available:https://docs.microsoft.com/en-us/previous-versions/commerce-server/ee823878(v=cs.20)(visited on 05/28/2018).
[18] Android interface definition language (aidl), Google Inc. [Online]. Avail-able:https://developer.android.com/guide/components/aidl(visited on 04/24/2018).

QR CODE