近年來,物聯(lián)網(wǎng)(IoT,Internet of Things)已經(jīng)從概念階段走向大規(guī)模應(yīng)用。據(jù)Gartner統(tǒng)計,全球物聯(lián)設(shè)備總數(shù)量從2016年的60+億增加到2017年的80+億,預(yù)計2020年全球?qū)⑦_到至少300+億物聯(lián)設(shè)備。超大規(guī)模的設(shè)備聯(lián)網(wǎng)必定離不開專業(yè)云計算服務(wù)的支持,諸多互聯(lián)網(wǎng)及高科技公司都已推出自己的物聯(lián)云平臺,供終端設(shè)備廠商方便快捷地令其設(shè)備支持聯(lián)網(wǎng)功能。我前段時間寫過兩篇文章(《MQTT協(xié)議例析》、《CoAP協(xié)議例析》)介紹了物聯(lián)網(wǎng)主要的兩個應(yīng)用協(xié)議(MQTT、CoAP),自己搭建開發(fā)環(huán)境測試并基于Wireshark抓包,分析了該兩協(xié)議的主要流程與功能要點。在本文中,我將介紹百度云IoT、阿里云IoT、騰訊云IoT三個物聯(lián)云服務(wù)對IoT協(xié)議的支持情況,并分析抓包流量,對比差異,給出可能的DPI(Deep Packet Inspection)特征,以助讀者更好了解。
百度云IoT
百度云IoT服務(wù)支持MQTT、MQTT over TLS、MQTT over WSS(WSS即WebSocket Secure)三種物聯(lián)網(wǎng)協(xié)議。百度云允許用戶自定義實例名,并以該實例名作為用戶獨立DNS子域名,且形成三種協(xié)議的服務(wù)端URL。當(dāng)設(shè)備端集成百度云IoT SDK時,需根據(jù)所選用的協(xié)議來填寫對應(yīng)的URL。對于DPI流量識別來說,百度云IoT的流量特征較為明顯,可將*.mqtt.iot.gz.baidubce.com或其它同類域名用于識別百度云IoT流量。
阿里云IoT
阿里云IoT支持MQTT over TLS、CoAP over DTLS、HTTPS三種物聯(lián)網(wǎng)協(xié)議。阿里云在用戶自定義產(chǎn)品名時,會自動生成一個ProductKey,并以該ProductKey作為用戶獨立DNS子域名。對于DPI流量識別來說,阿里云IoT的流量特征也較為明顯,可將*.iot-as-mqtt.cn-shanghai.aliyuncs.com、*.iot-as-coap.cn-shanghai.aliyuncs.com或其它同類域名用于識別阿里云IoT流量。
騰訊云IoT
騰訊云IoT支持MQTT over TLS、CoAP over DTLS兩種物聯(lián)網(wǎng)協(xié)議。與百度云IoT、阿里云IoT不同的是,騰訊云IoT的DNS域名并不是用戶的獨立子域名。騰訊云在用戶自定義產(chǎn)品名/設(shè)備名時,會自動生成一個productID,并將“productID+設(shè)備名稱”在TLS的ClientKeyExchange消息、DTLS的Client Certificate消息中提供給云端。對于DPI流量識別來說,騰訊云IoT的流量特征也較為明顯,可將iotcloud-mqtt.gz.tencentdevices.com、iotcloud-coap.gz.tencentdevices.com 或其它同類域名用于識別騰訊云IoT流量。
物聯(lián)云協(xié)議特征對比分析
每種物聯(lián)云服務(wù)都可能提供給多個不同終端設(shè)備廠商使用,對于DPI流量識別來說,既應(yīng)該支持識別不同物聯(lián)云服務(wù)的流量,也應(yīng)該支持某一種物聯(lián)云服務(wù)內(nèi)不同廠商終端設(shè)備的應(yīng)用流量。
首先,按云服務(wù)識別:各物聯(lián)云IoT服務(wù),通??筛鶕?jù)DNS特征識別服務(wù)器IP地址,再根據(jù)IP地址識別相應(yīng)流量。如因終端設(shè)備本地緩存DNS等情況而無法獲取DNS的話,則可將SNI(Servcie Name Indication)或服務(wù)器證書CN(Common Name)作為補充特征。
其次,按終端應(yīng)用業(yè)務(wù)細(xì)化識別:各物聯(lián)云IoT服務(wù),要么可通過DNS細(xì)化識別終端應(yīng)用流量,要么可通過 Client Key Exchange 或 Client Certificate 消息細(xì)化識別終端應(yīng)用流量。值得注意的是,百度云IoT較為特殊,支持明文方式MQTT協(xié)議,這時可通過 MQTT CONNECT 中username或 PUBLISH/SUBSCRIBE 消息中Topic作DPI特征,識別更加精細(xì)化的終端應(yīng)用行為信息。
本文介紹了百度云IoT、阿里云IoT、騰訊云IoT三款國內(nèi)主流物聯(lián)網(wǎng)云服務(wù)的協(xié)議支持情況,通過流量對比分析,給出有效的DPI特征用于流量識別。希望可以幫助讀者了解物聯(lián)網(wǎng)云服務(wù)之概貌,以進一步學(xué)習(xí)了解IoT,了解萬物互聯(lián)。
-
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2909文章
44635瀏覽量
373353 -
云服務(wù)
+關(guān)注
關(guān)注
0文章
820瀏覽量
38918
原文標(biāo)題:干貨|BAT物聯(lián)云IoT協(xié)議例析
文章出處:【微信號:ZTEdeveloper,微信公眾號:中興開發(fā)者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論