| 研究生: |
陳品絜 Chen, Pin-Chieh |
|---|---|
| 論文名稱: |
基於YANG資料模型與gNMI的物聯網服務管理機制 Service Management Schemes for IoT Devices based on YANG Data Model and gNMI |
| 指導教授: |
廖峻鋒
Liao, Chun-Feng |
| 口試委員: |
陸敬互
Lu, Ching-Hu 江玥慧 Chiang, Yueh-hui |
| 學位類別: |
碩士
Master |
| 系所名稱: |
資訊學院 - 資訊科學系 Department of Computer Science |
| 論文出版年: | 2025 |
| 畢業學年度: | 113 |
| 語文別: | 中文 |
| 論文頁數: | 58 |
| 中文關鍵詞: | YANG data model 、gNMI 、mDNS 、DNS-SD 、服務發現 、服務管理 、Internet of Thing |
| 外文關鍵詞: | YANG data model, gNMI, mDNS, DNS-SD, Service Discovery, Service Management, Internet of Thing |
| 相關次數: | 點閱:27 下載:9 |
| 分享至: |
| 查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
隨著物聯網技術發展,裝置數量日益增長,大量的裝置仰賴服務管理協定來運作。在現有服務管理協定中,UPnP功能完整,但效能不佳,且服務描述受限於固定形式。mDNS/DNS-SD則是輕量化且相容性高的服務發現協定,然而它功能性不足,欠缺服務描述與服務存取機制。本研究針對前述問題,提出基於YANG資料模型與gNMI的服務管理機制,兼具表達彈性與效能潛力。YANG 為網路管理領域中廣泛使用的資料建模語言,具備良好可讀性與高度表達彈性。gNMI是建構在 gRPC 上的 YANG 網管協定,具備高效能特性。然而,基於YANG的網管協定欠缺動態發現裝置的能力,因此本研究針對 gNMI 提出兩種不同的服務發現方案:一是整合 mDNS/DNS-SD的去中心化服務發現方案,二是支援gNMI的服務目錄之集中式服務發現方案。本研究進一步針對物聯網場景,研製基於YANG與gNMI的服務管理系統。此外亦開發了將UPnP描述檔自動轉換為YANG的工具程式,降低開發負擔並促進既有系統的遷徙。最後透過系統原型進行實驗評估,驗證所提出的兩種服務發現方法的可行性,以及本系統在服務發現、存取與通知等面向的效能優於 UPnP 系統。
As the Internet of Things (IoT) continues to expand, the growing number of connected devices increasingly depends on service management protocols. While UPnP offers comprehensive functionality, it suffers from poor performance and a rigid service description format. In contrast, mDNS/DNS-SD is lightweight and highly compatible but lacks service description and access mechanisms. To address these limitations, this study proposes a service management framework based on the YANG data model and the gNMI protocol, combining expressive flexibility with high performance. YANG is widely used in network management for its readability and support for automation, while gNMI, built on gRPC, enables efficient data transmission. However, YANG-based protocols lack dynamic device discovery, limiting their use in IoT environments. This work specifically focuses on gNMI and introduces two discovery strategies: a decentralized approach using mDNS/DNS-SD and a centralized gNMI-based solution. We further design and implement a YANG/gNMI service management system tailored for IoT, along with a tool for automatically converting UPnP descriptions to YANG to facilitate system migration. Performance evaluations demonstrate the feasibility of both discovery methods and show that the proposed system delivers superior performance compared to UPnP across key features such as discovery, access, and notification.
謝辭 i
摘要 ii
Abstract iii
目錄 iv
圖目錄 vi
表目錄 viii
第一章 緒論 1
1.1 研究背景 1
1.2 研究動機 3
1.3 研究目標 5
第二章 技術背景與相關研究 7
2.1 UPnP 7
2.2 mDNS/DNS-SD 9
2.3 YANG 11
2.3.1 YANG 與 UPnP 裝置及服務描述之比較 12
2.4 基於 YANG 的網路管理協定 13
2.4.1 NETCONF 13
2.4.2 RESTCONF 14
2.4.3 gNMI 15
2.5 相關研究 16
2.5.1 現有的物聯網服務管理機制 16
2.5.2 物聯網中的 YANG 17
第三章 系統設計 18
3.1 資料模型:UPnP 描述檔轉換 YANG 之設計 18
3.2 基於 YANG 與 gNMI 的服務管理系統 22
3.2.1 去中心化服務發現方案 24
3.2.2 集中式服務發現方案 25
3.2.3 兩種服務發現設計之特性比較 28
3.2.4 服務描述:取得自定義的 YANG schema 30
3.2.5 服務存取 31
3.2.6 通知機制 32
第四章 系統實作 33
4.1 資料模型:UPnP 描述檔轉換 YANG 之實作 33
4.2 基於 YANG 與 gNMI 的服務管理系統原型 33
4.2.1 裝置端服務發現模組 35
4.2.2 裝置端核心系統 36
4.2.3 集中式 Service Registry 的實作 38
4.3 實驗用的 UPnP 系統實作 39
第五章 系統評估 40
5.1 UPnP 描述檔轉換 YANG 的可行性評估 40
5.2 服務發現效能評估 41
5.2.1 服務發現的交通量 41
5.2.2 服務描述檔案交通量 43
5.2.3 服務發現回應時間 44
5.3 服務存取效能 45
5.3.1 服務存取回應時間 48
5.3.2 服務存取資源使用率 48
5.4 通知效能 49
5.4.1 通知延遲時間 50
5.4.2 通知資源使用率 51
第六章 結論 52
參考文獻 54
[1] A. Donoho, B. Roe, M. Bodlaender, et al., “Upnp device architecture 2.0”, Open Connectivity Foundation, Tech. Rep., Apr. 2020, Document Revision Date: April 17, 2020. [Online]. Available: `https://openconnectivity.org/upnp-specs/UPnP-arch-DeviceArchitecture-v2.0-20200417.pdf`.
[2] S. Cheshire and M. Krochmal, Multicast DNS, RFC 6762, Feb. 2013. doi: `10.17487/RFC6762`. [Online]. Available: `https://www.rfc-editor.org/info/rfc6762`.
[3] S. Cheshire and M. Krochmal, DNS-Based Service Discovery, RFC 6763, Feb. 2013. doi: `10.17487/RFC6763`. [Online]. Available: `https://www.rfc-editor.org/info/rfc6763`.
[4] B. Carballido Villaverde, R. D. P. Alberola, A. J. Jara, S. Fedor, S. K. Das, and D. Pesch, “Service discovery protocols for constrained machine-to-machine communications”, *IEEE Communications Surveys & Tutorials*, vol. 16, no. 1, pp. 41–60, 2014. doi: `10.1109/SURV.2013.102213.00229`.
[5] M. Björklund, The YANG 1.1 Data Modeling Language, RFC 7950, Aug. 2016. doi: `10.17487/RFC7950`. [Online]. Available: `https://www.rfc-editor.org/info/rfc7950`.
[6] R. Enns, M. Björklund, A. Bierman, and J. Schönwälder, Network Configuration Protocol (NETCONF), RFC 6241, Jun. 2011. doi: `10.17487/RFC6241`. [Online]. Available: `https://www.rfc-editor.org/info/rfc6241`.
[7] B. Claise, J. Clarke, and J. Lindblad, *Network Programmability with YANG*. Boston, MA: Addison-Wesley, Jan. 2019.
[8] A. Amlou, A. Abane, M. Merzouki, L. A. Oucheggou, Z. Maasaoui, and A. Battou, “Automated network programmability using openconfig yang models and netconf protocol”, in *2023 20th ACS/IEEE International Conference on Computer Systems and Applications (AICCSA)*, 2023, pp. 1–5. doi: `10.1109/AICCSA59173.2023.10479244`.
[9] World Wide Web Consortium (W3C), Web of Things (WoT) Thing Description 1.1, `https://www.w3.org/TR/wot-thing-description11/`, W3C Recommendation, Dec. 2023.
[10] A. Bierman, M. Björklund, and K. Watsen, RESTCONF Protocol, RFC 8040, Jan. 2017. doi: `10.17487/RFC8040`. [Online]. Available: `https://www.rfc-editor.org/info/rfc8040`.
[11] P. Borman, M. Hines, C. Lebsack, et al., Grpc network management interface (gnmi), version 0.10.0, gNMI service compatibility: 0.10.x, OpenConfig, May 2023. [Online]. Available: `https://github.com/openconfig/reference/blob/master/rpc/gnmi/gnmi-specification.md`.
[12] S. Popić, D. Pezer, B. Mrazovac, and N. Teslić, “Performance evaluation of using protocol buffers in the internet of things communication”, in *2016 International Conference on Smart Systems and Technologies (SST)*, 2016, pp. 261–265. doi: `10.1109/SST.2016.7765670`.
[13] M. G. Bhat, S. Bhattacharjee, C. Gündoğan, K. Alexandris, and A. Gogolev, “Core-conf, netconf, and restconf: Benchmarking network orchestration in constrained iiot devices”, *IEEE Internet of Things Journal*, vol. 11, no. 7, pp. 13 082–13 090, 2024. doi: `10.1109/JIOT.2023.3338470`.
[14] Ritu, S. Arora, A. Bhardwaj, A. Kukkar, and S. Kaur, “A comparative analysis of communication efficiency: Rest vs. grpc in microservice-based ecosystems”, in *2024 International Conference on Emerging Innovations and Advanced Computing (INNOCOMP)*, 2024, pp. 621–626. doi: `10.1109/INNOCOMP63224.2024.00107`.
[15] M. Boucadair, L. M. Contreras, O. G. de Dios, T. Graf, R. Rahman, and L. Tailhardat, “RFC 3535, 20 Years Later: An Update of Operators Requirements on Network Management Protocols and Modelling”, Internet Engineering Task Force, Internet-Draft draft-boucadair-nmop-rfc3535-20years-later-07, Mar. 2025, Work in Progress, 39 pp. [Online]. Available: `https://datatracker.ietf.org/doc/draft-boucadair-nmop-rfc3535-20years-later/07/`.
[16] M. G. Bhat, S. Bhattacharjee, C. Gündoğan, K. Alexandris, and A. Gogolev, “Core-conf, netconf, and restconf: Benchmarking network orchestration in constrained iiot devices”, *IEEE Internet of Things Journal*, vol. 11, no. 7, pp. 13 082–13 090, 2024. doi: `10.1109/JIOT.2023.3338470`.
[17] K. Sahlmann, T. Scheffler, and B. Schnor, “Ontology-driven device descriptions for iot network management”, in *2018 Global Internet of Things Summit (GIoTS)*, 2018, pp. 1–6. doi: `10.1109/GIOTS.2018.8534569`.
[18] S. Sinche, D. Raposo, N. Armando, et al., “A survey of iot management protocols and frameworks”, *IEEE Communications Surveys & Tutorials*, vol. 22, no. 2, pp. 1168–1190, 2020. doi: `10.1109/COMST.2019.2943087`.
[19] R. T. Fielding, *Architectural styles and the design of network-based software architectures*. University of California, Irvine, 2000.
[20] C.-F. Liao, H.-C. Chang, and L.-C. Fu, “Message-Efficient Service Management Schemes for MOM-Based UPnP Networks”, *IEEE Transactions on Services Computing*, vol. 6, no. 2, pp. 214–226, Apr. 2013, issn: 1939-1374. doi: `10.1109/TSC.2011.43`. [Online]. Available: `https://ieeexplore.ieee.org/document/5963633/`.
[21] B. Carballido Villaverde, R. D. P. Alberola, A. J. Jara, S. Fedor, S. K. Das, and D. Pesch, “Service Discovery Protocols for Constrained Machine-to-Machine Communications”, *IEEE Communications Surveys & Tutorials*, vol. 16, no. 1, pp. 41–60, 2014, issn: 1553-877X. doi: `10.1109/SURV.2013.102213.00229`. [Online]. Available: `https://ieeexplore.ieee.org/document/6657501/`.
[22] G. Kayas, M. Hossain, J. Payton, and S. M. R. Islam, “An Overview of UPnP-based IoT Security: Threats, Vulnerabilities, and Prospective Solutions”, in *2020 11th IEEE Annual Information Technology, Electronics and Mobile Communication Conference (IEMCON)*, Jan. 2020, pp. 0452–0460. doi: `10.1109/IEMCON51383.2020.9284885`. [Online]. Available: `https://ieeexplore.ieee.org/document/9284885/`.
[23] M. Mahyoub, A. Mahmoud, and T. Sheltami, “An optimized discovery mechanism for smart objects in IoT”, in *2017 8th IEEE Annual Information Technology, Electronics and Mobile Communication Conference (IEMCON)*, Oct. 2017, pp. 649–655. doi: `10.1109/IEMCON.2017.8117191`. [Online]. Available: `https://ieeexplore.ieee.org/document/8117191/`.
[24] M. Stolikj, P. J. L. Cuijpers, J. J. Lukkien, and N. Buchina, “Context based service discovery in unmanaged networks using mDNS/DNS-SD”, in *2016 IEEE International Conference on Consumer Electronics (ICCE)*, Jan. 2016, pp. 163–165. doi: `10.1109/ICCE.2016.7430565`. [Online]. Available: `https://ieeexplore.ieee.org/document/7430565/`.
[25] C.-F. Liao and Y.-J. Weng, “Enabling Space-Aware Service Discovery Model in Home Networks through a Compatible Extension to mDNS/DNS-SD”, *Electronics*, vol. 12, no. 18, p. 3885, 18 Jan. 2023, issn: 2079-9292. doi: `10.3390/electronics12183885`. [Online]. Available: `https://www.mdpi.com/2079-9292/12/18/3885`.
[26] K. Seklou, P. Kokkinos, N. D. Tselikas, and A. C. Boukouvalas, “Monitoring and management of home appliances with netconf and yang”, in *Proceedings of the 23rd Pan-Hellenic Conference on Informatics, ser. PCI ’19*, Nicosia, Cyprus: Association for Computing Machinery, 2019, pp. 25–32, isbn: 9781450372923. doi: `10.1145/3368640.3368643`. [Online]. Available: `https://doi.org/10.1145/3368640.3368643`.
[27] C. Chung and J. P. Jeong, “A Design of IoT Device Configuration Translator for Intent-Based IoT-Cloud Services”, in *2020 22nd International Conference on Advanced Communication Technology (ICACT)*, Feb. 2020, pp. 52–56. doi: `10.23919/ICACT48636.2020.9061282`. [Online]. Available: `https://ieeexplore.ieee.org/document/9061282/`.
[28] Y. Yigit, K. Huseynov, H. Ahmadi, and B. Canberk, “YA-DA: YAng-Based DAta Model for Fine-Grained IIoT Air Quality Monitoring”, in *2022 IEEE Globecom Workshops (GC Wkshps)*, Feb. 2022, pp. 438–443. doi: `10.1109/GCWkshps56602.2022.10008637`. [Online]. Available: `https://ieeexplore.ieee.org/document/10008637/`.
[29] L. V. Cakir, T. Bilen, M. Özdem, and B. Canberk, “Digital Twin Middleware for Smart Farm IoT Networks”, in *2023 International Balkan Conference on Communications and Networking (BalkanCom)*, Jun. 2023, pp. 1–5. doi: `10.1109/BalkanCom58402.2023.10167962`. [Online]. Available: `https://ieeexplore.ieee.org/abstract/document/10167962`.
[30] IoT Atlas. “Model-view-controller (mvc)”. Accessed: 2025-05-01. (2023), [Online]. Available: `https://iotatlas.net/en/patterns/mvc/`.
[31] K. Watsen, Q. Wu, P. Andersson, O. Hagsand, and H. Li, “List Pagination for YANG-driven Protocols”, Internet Engineering Task Force, Internet-Draft draft-ietf-netconf-list-pagination-07, Apr. 2025, Work in Progress, 68 pp. [Online]. Available: `https://datatracker.ietf.org/doc/draft-ietf-netconf-list-pagination/07/`.
[32] A. Bierman, Guidelines for Authors and Reviewers of Documents Containing YANG Data Models, RFC 8407, Oct. 2018. doi: `10.17487/RFC8407`. [Online]. Available: `https://www.rfc-editor.org/info/rfc8407`.
[33] OpenConfig. “Openconfig style guide”. Accessed on May 12, 2025. (2025), [Online]. Available: `https://www.openconfig.net/docs/guides/style_guide/`.
[34] C.-F. Liao, H.-H. Cheng, and L.-C. Fu, “Unifiable preference expressions for pervasive service composition”, in *2011 IEEE Asia-Pacific Services Computing Conference*, 2011, pp. 424–431. doi: `10.1109/APSCC.2011.11`.
[35] M. Bjorklund. “Pyang”. GitHub repository. (2025), [Online]. Available: `https://github.com/mbj4668/pyang`.
[36] P.-C. Chen. “Upnp-desc-to-yang”. GitHub repository. (2025), [Online]. Available: `https://github.com/pj-99/upnp-desc-to-yang`.