曹鉑瀟 黃煜峰 趙榮飛 孫俊華 程慧楠 丁奕 飛?
摘 要:視頻傳輸應(yīng)用場景是物聯(lián)網(wǎng)中的一環(huán),該文研究音視頻傳輸在物聯(lián)網(wǎng)中的應(yīng)用。將WebRTC部署至樹莓派中,調(diào)用樹莓派的音視頻硬件擴(kuò)展模擬物聯(lián)網(wǎng)中的音視頻采集與傳輸。通過以樹莓派為模擬對(duì)象可將模式拓展至其他應(yīng)用中或者利用樹莓派的高擴(kuò)展性實(shí)現(xiàn)多種場景音視頻信息交互。
關(guān)鍵詞:物聯(lián)網(wǎng);P2P;樹莓派;WebRTC;高擴(kuò)展性;信息交互
中圖分類號(hào):TP242 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2095-1302(2019)06-00-03
0 引 言
在現(xiàn)今的生活中,物聯(lián)網(wǎng)的應(yīng)用越來越多,智能化的物聯(lián)網(wǎng)產(chǎn)物越來越深入人們的生活。而在應(yīng)用的過程中,傳輸?shù)陌踩?、傳輸?shù)姆绞揭驳玫搅税l(fā)展。物聯(lián)網(wǎng)(IoT)的概念是美國麻省理工學(xué)院(MIT)在1999年提出,而在2008年底,在IBM向美國政府提出“智慧地球”戰(zhàn)略后,物聯(lián)網(wǎng)很快引起了許多國家的高度關(guān)注[1]。這種旨在使萬事萬物皆可互聯(lián)互通的概念讓世界信息產(chǎn)業(yè)獲得了又一次浪潮。
P2P(Peer-to-Peer)網(wǎng)絡(luò)結(jié)構(gòu)是一種端到端的網(wǎng)絡(luò)互聯(lián)結(jié)構(gòu),這種去中心化的網(wǎng)絡(luò)架構(gòu)在現(xiàn)今物聯(lián)網(wǎng)應(yīng)用中的優(yōu)勢十分明顯。以即時(shí)通信為例:利用P2P網(wǎng)絡(luò)架構(gòu)在物聯(lián)網(wǎng)中使用視頻與語音通信的方式,延時(shí)小、可靠性高、安全性高。
將這兩種技術(shù)特點(diǎn)綜合到一起應(yīng)用至樹莓派中以音視頻傳輸場景為原型形成人與物之間的通信交流。物聯(lián)網(wǎng)作為互聯(lián)網(wǎng)中的延伸可以應(yīng)用在多種設(shè)備中實(shí)現(xiàn)數(shù)據(jù)的傳輸與交換,P2P技術(shù)旨在實(shí)現(xiàn)端到端的網(wǎng)絡(luò)通信,后者應(yīng)用在前者中可以實(shí)現(xiàn)更好的應(yīng)用功能。
1 物聯(lián)網(wǎng)的概念與特點(diǎn)
根據(jù)物聯(lián)網(wǎng)的概念,大家可以把它想象成萬物之間溝通的橋梁。物聯(lián)網(wǎng)是建立在互聯(lián)網(wǎng)基礎(chǔ)上并不斷延伸和擴(kuò)展的網(wǎng)絡(luò),即用戶端延伸和擴(kuò)展到了任何現(xiàn)實(shí)和可能的物品與物品之間,能進(jìn)行實(shí)時(shí)的、準(zhǔn)確的信息交換和通信。一些學(xué)者按照物聯(lián)網(wǎng)的服務(wù)流程及各子系統(tǒng)所實(shí)現(xiàn)的主要功能將整個(gè)系統(tǒng)分為感知、傳輸、處理三個(gè)主要環(huán)節(jié),據(jù)此將物聯(lián)網(wǎng)網(wǎng)絡(luò)架構(gòu)分為感知層、網(wǎng)絡(luò)層和應(yīng)用層[2]。國際電信聯(lián)盟(ITU-T)定義了IoT通用參考模型,該模型由設(shè)備層、網(wǎng)絡(luò)層、應(yīng)用層及與之相關(guān)的管理和安全構(gòu)成。設(shè)備層用以識(shí)別、采集、捕獲,網(wǎng)絡(luò)層依賴各類網(wǎng)絡(luò)的相關(guān)控制與傳送,連接業(yè)務(wù)支持和應(yīng)用支持層。圖1為物聯(lián)網(wǎng)參考構(gòu)架圖[3]。
本文把物聯(lián)網(wǎng)的應(yīng)用過程總結(jié)為兩個(gè)字—隨時(shí)。為什么說是“隨時(shí)”呢?從概念上看,物聯(lián)網(wǎng)主要實(shí)現(xiàn)物與物、人與物之間的關(guān)系。從結(jié)構(gòu)上看物聯(lián)網(wǎng)的三種層次都圍繞采集、識(shí)別和捕獲。這些都需要隨時(shí)使用,實(shí)現(xiàn)物與物、人與物的隨時(shí)交流。
2 P2P網(wǎng)絡(luò)的概念與特點(diǎn)
點(diǎn)對(duì)點(diǎn)網(wǎng)絡(luò)或稱對(duì)等計(jì)算機(jī)網(wǎng)絡(luò),是一種分布式應(yīng)用程序體系結(jié)構(gòu),用于在點(diǎn)之間分配任務(wù)和工作負(fù)載,它是應(yīng)用層中對(duì)等計(jì)算模型形成的網(wǎng)絡(luò)或網(wǎng)絡(luò)形式。通過這個(gè)概念可以建立起如圖2所示的網(wǎng)絡(luò)拓?fù)鋱D[4]。
圖中,把每一個(gè)用戶(peer)當(dāng)作一個(gè)節(jié)點(diǎn),每一個(gè)節(jié)點(diǎn)在這個(gè)網(wǎng)絡(luò)架構(gòu)中都是地位相等的,每一個(gè)節(jié)點(diǎn)都是服務(wù)器(server)和用戶(user),每一個(gè)節(jié)點(diǎn)都是在網(wǎng)絡(luò)架構(gòu)中提供服務(wù)和內(nèi)容。兩個(gè)節(jié)點(diǎn)之間的消息或資源聯(lián)系不需要經(jīng)過中心服務(wù)器或其他節(jié)點(diǎn),保證了即時(shí)和安全。這么做首先避免了在傳統(tǒng)網(wǎng)絡(luò)架構(gòu)中可能出現(xiàn)的性能或網(wǎng)絡(luò)帶寬瓶頸;其次,在整個(gè)網(wǎng)絡(luò)體系結(jié)構(gòu)中,不僅會(huì)有用戶對(duì)服務(wù)的需求增加,在總體上,系統(tǒng)資源和服務(wù)能力也在同步擴(kuò)展,總是很容易滿足用戶的需求。所以理論上,它的擴(kuò)展性幾乎可以認(rèn)為是無限的。那么在整個(gè)網(wǎng)絡(luò)架構(gòu)中由于沒有中心節(jié)點(diǎn)的存在,當(dāng)出現(xiàn)攻擊者攻擊其中一個(gè)節(jié)點(diǎn)時(shí),其他節(jié)點(diǎn)不會(huì)因?yàn)槠渲幸粋€(gè)節(jié)點(diǎn)的攻破而全部暴露在攻擊者面前,保證了整個(gè)網(wǎng)絡(luò)架構(gòu)的安全性[4]。在網(wǎng)絡(luò)中,當(dāng)對(duì)用戶提供Web服務(wù)時(shí),一定會(huì)遇到在訪問量高峰時(shí)段的高并發(fā)的時(shí)候,用戶請(qǐng)求數(shù)較多但一臺(tái)服務(wù)器(server)無法同時(shí)處理這么多請(qǐng)求時(shí),一定會(huì)搭建部署負(fù)載均衡以平分大批量請(qǐng)求數(shù)的狀態(tài)下,用多臺(tái)服務(wù)器平分處理巨大的數(shù)據(jù)量壓力。結(jié)合P2P網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)和定義可以形成一個(gè)網(wǎng)絡(luò)的負(fù)載均衡。
3 在現(xiàn)今網(wǎng)絡(luò)應(yīng)用環(huán)境中所需解決的通信問題
現(xiàn)今的網(wǎng)絡(luò)通信協(xié)議中,首先要研究兩種協(xié)議:UDP協(xié)議和TCP/IP協(xié)議中的通信過程和特點(diǎn)。其中,UDP協(xié)議中的UDT協(xié)議使安全性和可靠性大大增強(qiáng);TCP/IP協(xié)議的可靠性優(yōu)勢與UDP協(xié)議對(duì)傳輸要求較高的應(yīng)用場景十分有優(yōu)勢。因其各有特點(diǎn),所以它們被應(yīng)用于不同的網(wǎng)絡(luò)協(xié)議中。P2P網(wǎng)絡(luò)結(jié)構(gòu)應(yīng)用在物聯(lián)網(wǎng)中需要TCP/IP的可靠性和UDP在傳輸上的優(yōu)勢,以音視頻使用P2P架構(gòu)傳輸在物聯(lián)網(wǎng)中應(yīng)用為例,音視頻傳輸需要的傳輸性能較高,在人與物、物與物之間傳輸也需要較好的安全性。所以兩種協(xié)議各有用處。
其次,在IPv4中為緩解ip地址短缺的問題而出現(xiàn)了NAT網(wǎng)絡(luò)地址轉(zhuǎn)換技術(shù),但私網(wǎng)地址,如192等網(wǎng)段無法在公網(wǎng)上使用,需要做NAT穿透。
在P2P網(wǎng)絡(luò)中可以通過公共節(jié)點(diǎn)的方式獲取在內(nèi)網(wǎng)中的設(shè)備,在外網(wǎng)的IP及端口,內(nèi)網(wǎng)節(jié)點(diǎn)通過公共節(jié)點(diǎn)連接至其他節(jié)點(diǎn)或網(wǎng)絡(luò)(其他節(jié)點(diǎn)或網(wǎng)路連接至內(nèi)網(wǎng)節(jié)點(diǎn))實(shí)現(xiàn)內(nèi)網(wǎng)穿透。
4 以利用WebRTC技術(shù)在樹莓派上應(yīng)用為例
WebRTC技術(shù)是一種基于瀏覽器的多媒體實(shí)時(shí)通信技術(shù)[5]。這種技術(shù)最大的特點(diǎn)是可在不安裝任何擴(kuò)展和插件的前提下實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)的實(shí)時(shí)通信,十分適合在實(shí)時(shí)的物聯(lián)網(wǎng)視頻監(jiān)控中應(yīng)用。將WebRTC技術(shù)總體的3個(gè)部分以不同端口運(yùn)行的方法部署在一臺(tái)樹莓派中進(jìn)行連接測試應(yīng)用。
在樹莓派上安裝支持ARM指令集的Raspbian系統(tǒng),遠(yuǎn)程桌面截圖如圖3所示。
安裝nginx,并設(shè)置端口為8080,如圖4所示。
配置文件nginx.conf時(shí),在HTML內(nèi)添加如圖5所示的代碼用以解析https。
修改WebRTC信令服務(wù)器配置文件如圖6所示。重新編譯信令服務(wù)器并開啟https如圖7所示。
樹莓派上測試的攝像頭開啟標(biāo)識(shí)為video0:/dec/video0 open。
視頻流上傳模塊位于樹莓派上,將獲得的視頻流進(jìn)行處理并每5 s保存為一個(gè)視頻文件。在兩端連接后形成音視頻交換。在傳輸?shù)倪^程中,為了保證傳輸和通信質(zhì)量,還需要做對(duì)音頻的降噪處理。這樣在整個(gè)網(wǎng)絡(luò)中形成如圖8所示的結(jié)構(gòu)。
5 結(jié) 語
音視頻傳播在P2P網(wǎng)絡(luò)結(jié)構(gòu)中有著十分顯著的優(yōu)勢,而在物聯(lián)網(wǎng)中也能得到良好應(yīng)用,比如在溫室大棚監(jiān)控、無人機(jī)植保等應(yīng)用中有著顯著效果;無人機(jī)植保中,需要大量人力操作無人機(jī),如把無人機(jī)當(dāng)作物聯(lián)網(wǎng)中的一個(gè)節(jié)點(diǎn)的話,連接至一樹莓派,飛手可通過Web端或客戶端同時(shí)協(xié)助多個(gè)無人機(jī)同時(shí)作業(yè),既可以緩解現(xiàn)今無人機(jī)飛手較少,需求卻較大的問題,也可以加快物聯(lián)網(wǎng)在現(xiàn)今的推廣和普及。
參 考 文 獻(xiàn)
[1]葛文杰,趙春江.農(nóng)業(yè)物聯(lián)網(wǎng)研究與應(yīng)用現(xiàn)狀及發(fā)展對(duì)策研究[J].農(nóng)業(yè)機(jī)械學(xué)報(bào),2014(7):222-230.
[2]林樂虎.我國物聯(lián)網(wǎng)產(chǎn)業(yè)發(fā)展現(xiàn)狀分析及政策措施[J].宏觀經(jīng)濟(jì)研究,2013(11):81-86.
[3]閆亞旗,周桂英,盛明哲,等.物聯(lián)網(wǎng)產(chǎn)業(yè)現(xiàn)狀與技術(shù)發(fā)展[J].信息通信技術(shù),2018,12(4):19-25.
[4]邱宜干. P2P網(wǎng)絡(luò)的特點(diǎn)及運(yùn)行環(huán)境分析[J]. 中國管理信息化,2018(9):153-154.
[5]梁艷.基于HTML5的WebRTC技術(shù)淺析[J]. 信息通信技術(shù),2014,8(2):52-56 .
[6]王玥.基于WebRTC的實(shí)時(shí)智能視頻監(jiān)控平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[D].北京:北京郵電大學(xué),2018.
[7]左聰.基于HTML5的點(diǎn)對(duì)點(diǎn)流媒體系統(tǒng)研究與設(shè)計(jì)[D].北京:北京郵電大學(xué),2018.
[8]張燕,汪曉紅,王晴.基于樹莓派云視頻流媒體的遠(yuǎn)程監(jiān)控系統(tǒng)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2018(11):45-47.
[9]曹陽.關(guān)于P2P對(duì)等網(wǎng)絡(luò)差異數(shù)據(jù)通信優(yōu)化的研究[J].電腦知識(shí)與技術(shù),2016,12(16):38-39.
[10]孫衛(wèi)喜,席少龍.P2P中NAT穿越問題的研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2014,24(2):242-245.