胡 杰
中國電信股份有限公司北京研究院 北京 102209
全球物聯網正從以碎片化、孤立化應用為主的起步階段邁入“重點聚焦、跨界融合、集成創新”的新階段[1]。物聯網的應用,尤其是與云架構密切結合的物聯網應用,逐漸變得引人矚目,“萬物智能互聯”逐漸從愿景描述轉變成現實。從國外情況看,谷歌、亞馬遜、Intel、高通等國際巨頭緊跟趨勢,通過其核心能力和戰略聯盟推動產業垂直化整合和水平化擴張。谷歌于2015年5月發布物聯網操作系統Brillo,實現IoT服務與Google云服務緊密捆綁;2015年10月亞馬遜在原有云計算基礎上進行延伸,發布了AWS IoT平臺,實現IoT基礎設施的彈性擴充[2]; Intel發布的物聯網關方案構建了異構設備通往云端的統一通道。在此基礎上,產業鏈之間的合作、并購也變得越來越頻繁,進而建成一個涵蓋芯片、感知器件、操作系統、設備互連、邊緣計算、關鍵軟件、數據整合分析到各個垂直應用的生態系統,引領全球物聯網生態系統發展。
隨著物聯網技術的不斷發展和市場規模的不斷擴大,物聯網市場格局從碎片走向整合,未來關注的焦點將從連接走向平臺,并形成物聯網與云計算、大數據跨界融合的格局。傳統的面向云的計算和存儲技術將逐漸轉變為以海量消息處理為主的物聯網云技術,從而更好地推動物聯網服務規模發展。
從市場層面,傳統的M2M主要關注設備的連接,隨著物聯網市場格局從碎片走向整合,物聯網產業將逐漸顯現出“數據驅動”的特點,縱向的行業聚合與橫向的平臺聚合將會成為未來物聯網生態發展的重要一步,物聯網關注的焦點將從連接走向平臺,進而推動物聯網從M2M時代向IoT階段演進[3]。
從技術層面,物聯網與“大智移云”結合,將促使實體世界與虛擬世界的界線日趨模糊,進一步打破物聯網行業框架,催生無限可能的商業價值。在感知、互聯、智慧分析技術的演進趨勢下,驅動物聯網應用逐漸云化,衍生新的應用類型和應用模式,從感知走向認知。
IoT云作為物聯網應用的一種最新實現及交付模式,其特征在于將傳統物聯網中傳感設備感知的信息和接受的指令連入互聯網中,并通過云計算技術實現海量數據存儲和運算。IoT云從市場和技術上滿足了M2M向IoT發展的趨勢,適應了物聯網規模化、智能化和生態化的發展需求。
IoT云對傳統底層云基礎設施及平臺提出了新的要求,主要體現在以下三個方面。
1)相對傳統的云主機、云存儲等基礎設施產品,IoT云需要支持數十億臺設備和數萬億條消息,將消息安全可靠地路由至各終端節點和其他設備,這樣對云基礎產品種類的需求就大大提升了,需要補充容器服務、負載均衡服務、消息服務、數據庫服務等基礎設施服務。
2)對數據存儲和分析提出了更高的要求,海量異構的傳感器產生大量數據,有些數據需要快速處理,對數據的吞吐量產生挑戰,且物聯網數據既有結構化數據,也有非結構化數據,不僅對存儲的效率有需求,還需要能夠對存儲的規模進行橫向擴展,需要對不同來源的數據進行集成以及安全保護。
3)為了加強物聯網業務之間互操作及數據分享,支持業務快速創新、應對多變需求、實現集中運營管理、突破性能瓶頸,微服務在物聯網中的應用越來越廣泛,針對微服務應用,能夠提供應用生命周期管理、資源及容器管理、報警監控、帳號體系管理等平臺功能。
在功能方面,IoT云需要具備提供泛在設備接入、云化平臺、數據存儲與分析、智能應用服務等功能。
IoT云基礎架構由云OS/SDK、接入網關和云服務平臺三部分組成,并結合邊緣計算、人工智能、IoT安全等技術,構建基于客戶需求規模、按需付費、安全可信的物聯網云化服務體系。
如圖1所示,通過云OS/SDK和接入網關(IoT Hub),將資源受限的物聯終端快速接入云平臺;同時在云服務平臺側引入云計算的虛擬化、并行計算、分布式數據庫、分布式存儲以及應用層多租戶技術,實現物聯網海量設備規模接入管理、高并發消息處理、多樣化異構數據存儲以及智能化大數據分析等服務。

圖1 IoT云系統架構圖
物聯網終端設備硬件差異較大,存在異構性、多樣化的特點。傳統操作系統無法適應這種“廣譜”的硬件環境需求。物聯網云OS可提供完整的連接和設備管理功能,并具備較強的伸縮性,可適配不同類型硬件環境,屏蔽底層物理硬件的差異,為終端設備賦予感知能力,實現萬“物”智能互聯。物聯網云OS具有占用內存少、電源效率高、模塊化可配置等特點,同時具備豐富的物聯網基礎功能組件和應用開發環境,可大大降低物聯網應用的開發時間和開發成本。為了實現終端設備在云平臺中的快速接入,物聯網云OS一般通過集成SDK軟件實現與云平臺的連接、認證和消息交互。同時,SDK軟件也可以獨立移植到第三方操作系統中,使之具備接入物聯網系統框架的能力。
云服務平臺是IoT云體系架構的核心,可實現設備接入管理、消息路由分發、海量數據存儲分析等功能,具備大規模分布式部署及高并發計算能力。IoT云服務平臺目前主要涉及容器及微服務、設備接入管理、消息中間件、數據存儲與分析等核心技術。
隨著物聯網的發展,物聯網與云計算的跨界融合成為趨勢,容器集群管理、微服務框架以及無服務器架構等云計算技術,可以更好地幫助構建基于客戶需求規模、按需付費、安全可信、云網協同的物聯網云化基礎設施,解決物聯網應用的海量終端接入和數據處理問題。
依靠容器具有的輕量、低運行開銷、易于部署/移植以及快速啟動等獨特優勢,開發人員使用基于容器的虛擬化進行快速、大規模地開發、測試、部署和更新IoT應用程序,已逐漸成為物聯網應用主流開發方法。在物聯網領域,容器技術不僅可以通過容器封裝,簡化下載、安裝部署、啟動和后續應用更新,加速物聯網云服務開發部署,還可以使用容器維護一致的IoT開發環境,將容器部署到IoT設備,集成IoT設備與云服務,滿足物聯網各種硬件設備平臺環境[4]。
物聯網行業中,由于單個設備傳輸數據量較小,傳輸請求頻次較低,IoT應用服務常處于空轉狀態,計算資源使用率較低。無服務器架構(Serverless)出現為物聯網這種低頻請求場景帶來了新的處理思路。由于無服務器架構興起不久,目前業界并沒有給出明確的定義,比較普遍的理解是指開發者不再需要過多考慮服務器的容量、部署以及其上的操作系統等問題,計算資源被作為服務而不是服務器提供給開發者,開發者只需通過集成多個第三方API或服務就能組成最終的應用邏輯。
隨著物聯網規模化發展和領域的逐步擴大,物聯網連接的設備數高達數百萬甚至數十億級,信息量也隨之出現爆炸性增長。原有的結構性數據混入了來自于社交媒體、傳感器的非結構化數據,這些數據有聲音、圖片、視頻、文字等。由于物聯網環境下涉及基于時間和空間特征、動態的超大規模數據管理和處理,對數據的存儲提出以下要求。
1)大規模彈性伸縮:可以存儲和處理數百TB的數據來支持物聯網碎片化應用場景中科學、財務分析和媒體應用程序所需的大數據方案。也可以存儲小型商業網站所需的少量數據。
2)按需付費:能夠靈活地按使用時間、使用內容大小支付費用。
3)數據負載均衡:使用自動分區系統,根據流量自動對數據進行負載均衡。隨著需求的增長,數據存儲會自動分配合適的資源來滿足物聯網變化的需求。
目前物聯網數據有多種分類維度。按數據結構維度,物聯網產生的數據可以分為結構化、非結構化和半結構化三類數據。結構化數據指可以用二維表結構來邏輯表達實現的數據,如關系型數據庫、面向對象數據庫中的數據。非結構化數據相對于結構化數據而言,不方便用數據庫二維邏輯表來表現的數據即稱為非結構化數據,包括所有格式的辦公文檔、文本、圖片、XML、HTML、各類報表、圖像和音頻/視頻信息等。半結構化數據介于完全結構化數據和完全無結構的數據之間,數據模型具有一定的結構性,但較之傳統的關系和面向對象的模型更為靈活[5]。
針對物聯網不同的數據分類,相對于傳統關系型數據庫存儲,IoT云平臺的首要工作是能夠高速處理分布式環境中的海量數據,選擇合適的數據存儲技術方案。目前業界主流數據存儲技術和方式包括:Blob存儲(對象存儲)、表存儲、文件存儲和隊列存儲。
消息中間件簡化了應用之間數據的傳輸,屏蔽底層異構操作系統和網絡平臺差異,提供一致的通訊標準和應用開發,確保分布式計算網絡環境下可靠的、跨平臺的信息傳輸和數據交換。消息中間件能在不同平臺之間通信,它常被用來屏蔽掉各種平臺及協議之間的特性,實現應用程序之間的協同。
消息中間件基于消息隊列、規則引擎及消息持久化機制,進行消息傳輸和異步事務處理,實現應用整合與數據交換,將傳統面向計算資源的云服務轉變為面對消息的IoT云服務。
當前,垃圾處理已成為一項關乎民生和社會可持續發展的重要因素。為積極響應政府號召,充分發揮中國電信信息惠民的社會使命,通過將新型物聯網技術與云計算、大數據技術跨界融合,進而構建智能環衛管理解決方案,解決傳統環衛生產管理落后、垃圾處理設施不夠完善等問題,打造面向環衛行業的典型物聯網應用,有效帶動中國電信物聯網業務的發展。
智能環衛管理系統由環衛終端、NB-IoT/4G網絡和智能環衛管理平臺三部分組成,架構如圖2所示,其中智能環衛管理平臺在天翼云側進行部署,智能垃圾桶、環衛人員、垃圾運輸車和清潔車等智能硬件通過中國電信NB-IoT/4G網絡接入平臺,實現數據的采集與上報。智能環衛管理平臺對各類智能硬件進行實時調度,并對收集的數據進行智能分析處理。
相對于傳統的云計算場景,IoT云平臺需要支持數十億臺設備和數萬億條消息,并且可對消息進行處理,將其安全可靠地路由至各終端節點和其他設備。同時,無論設備是否處于連接狀態,云平臺都可以隨時跟蹤所有設備并與其通信。
針對以上場景需求,IoT云平臺主要從以下幾個方面實現。
1)基于消息中間件,構建海量消息處理能力。
相對于傳統云平臺更多面向云的計算能力和存儲資源,IoT云平臺服務主要面向消息,為設備和應用提供安全可靠的消息處理能力。而這些能力的提供,對底層的云基礎設施提出了新的要求。
IoT平臺通過消息中間件,建立應用服務與終端設備間的通信,并根據應用服務的訂閱情況將終端設備消息轉發給指定的應用。同時,利用規則引擎的自定義規則提取和過濾來自設備的消息,對消息進行數據結構轉換,并將消息轉發到指定的訂閱應用或寫入存儲,對接通知推送和數據處理服務。再通過流數據處理,收集、轉換來自終端設備及應用服務的狀態、日志等流式數據,并將其加載到各類數據存儲中,進行實時處理和分析,幫助構建自定義實時應用程序。
2)基于容器及微服務架構,打造豐富的“云”、“端”處理能力。
IoT云平臺以云為基礎,通過采用微服務架構,支持模塊分層解耦和橫向擴展。每個微服務基于容器獨立編譯及部署,并通過各自暴露的API接口互相通訊,協同工作,共同提供平臺強大的整體功能。
結合容器虛擬化技術,IoT設備與物聯網關集成一致的IoT開發環境,屏蔽底層系統,打破設備間的信息孤島,實現終端、設備、應用三者間的互聯互通互動,滿足物聯網多樣化業務需求。
3)基于海量數據存儲,提供高效的數據分析和處理能力。
面對物聯網海量數據的整合、運營,IoT云平臺更需要高效的數據分析和處理能力。除了需要進一步發展大數據計算和分析等能力,IoT云平臺還需要整合計算機視覺、圖像識別、深度學習、機器人技術、語音識別、自然語言處理等創新的AI能力,擴展對視頻、圖像、語音等異構數據的認知和理解能力,將其應用到不同的場景中,為更多的業務創新提供能力基礎。

圖2 基于物云融合架構的新一代智能環衛管理系統
在此基礎上,開展針對智能環衛管理平臺的高并發壓力測試和長期穩定性測試,模擬物聯網終端同時向平臺發送不同業務邏輯與格式內容的MQTT/CoAP/TCP/UDP消息,并在固定業務邏輯和數據格式的情況下測試驗證平臺的魯棒性。經驗證,平臺同時能夠對10萬以上的智能物聯網終端進行集約化管理,連接平均響應時間達到毫秒級,并支持線性彈性擴展,如圖3所示。

圖3 10萬用戶下平臺的請求響應時間
當前物聯網在全球范圍內呈現加速發展的態勢,不同行業和不同類型的物聯網應用逐漸普及和成熟,帶來的數以百億規模數據價值的發掘,進一步推動了物聯網應用呈現爆發性增長。同時,伴隨著人工智能、虛擬現實、自動駕駛、智能機器人等技術的創新突破,物聯網在應用體驗和普及范圍方面達到新的高度。物聯網應用從過去的自動化、信息化階段逐漸邁入智能化時代,從簡單的提供設備連接和數據交互的功能深化裂變成為傳統行業智能化升級的關鍵力量,從而推動物聯網各行業包括交通、制造、家居、醫療、零售等細分領域在更智能的機器、更智能的網絡和更智能的交互條件下,創造出更智能的經濟發展模式和社會生態系統。