物聯(lián)網(wǎng)的整體結(jié)構(gòu)
物聯(lián)網(wǎng)大體上有3個構(gòu)成要素,一個是設(shè)備,另一個是網(wǎng)關(guān),再來就是服務(wù)器。下面我們就來一一的給大家介紹。
物聯(lián)網(wǎng)的整體結(jié)構(gòu)
物聯(lián)網(wǎng)的整體結(jié)構(gòu)-設(shè)備
關(guān)于物聯(lián)網(wǎng)設(shè)備的結(jié)構(gòu)可閱讀百恒物聯(lián)之前的文章,物聯(lián)網(wǎng)設(shè)備的基本結(jié)構(gòu)。
物聯(lián)網(wǎng)的整體結(jié)構(gòu)-網(wǎng)關(guān)
物聯(lián)網(wǎng)開發(fā)中使用的設(shè)備,有3臺設(shè)備不能直接連接到互聯(lián)網(wǎng)。網(wǎng)關(guān)就負(fù)責(zé)把這些設(shè)備轉(zhuǎn)發(fā)到互聯(lián)網(wǎng)。
網(wǎng)關(guān)指的是能連接多臺設(shè)備,并具備直接連接到互聯(lián)網(wǎng)的功能的機(jī)器和軟件。如今,市面上有很多種網(wǎng)關(guān)。在多數(shù)情況下,網(wǎng)關(guān)憑借Linux操作系統(tǒng)來運(yùn)行。
選擇網(wǎng)關(guān)的標(biāo)準(zhǔn)
選擇網(wǎng)關(guān)時有幾項(xiàng)重要的標(biāo)準(zhǔn),我們來一起看一下。
1、接口
第一重要的是用于連接網(wǎng)關(guān)和設(shè)備的接口。網(wǎng)關(guān)的接口決定了能連接的設(shè)備,因此重點(diǎn)在于選擇一個適配設(shè)備的接口。
有線連接方式包括串行通信和USB連接。串行通信中經(jīng)常用的是一種叫作D-SUB9針(pin)的連接器,而USB連接中用到的USB連接器則種類繁多。
無線連接中用的接口是藍(lán)牙和Wi-Fi(IEEE 802.11)。此外,還采用920MHz頻段Zigbee標(biāo)準(zhǔn),以及各制造商們的專屬協(xié)議。
2、網(wǎng)絡(luò)接口
我們用以太網(wǎng)或是Wi-Fi、3G/LTE來連接外部網(wǎng)絡(luò)。網(wǎng)絡(luò)接口會影響到網(wǎng)關(guān)的設(shè)置場所。以太網(wǎng)采用有線連接,通信環(huán)境穩(wěn)定。然而正因?yàn)椴捎玫氖怯芯€連接,所以必須把LAN電纜布線到網(wǎng)關(guān)的設(shè)置場所。因此,在設(shè)置場所方面就會在某種程度上受到限制。
對于3G/LTE連接而言,設(shè)置場所就比較自由了,但通信的質(zhì)量會受信號強(qiáng)弱影響,所以通信不如有線連接穩(wěn)定。因此,有時很難再信號不良的大樓和工廠等封閉環(huán)境中設(shè)置。不過,3G/LTE連接有個好處,即只使用網(wǎng)關(guān)就能完成和外部的通信,因此操作起來很簡單。此外,想使用3G/LTE時,需要和電信運(yùn)營商簽訂協(xié)議并獲取SIM卡,這點(diǎn)就跟使用手機(jī)一樣。
3、硬件
相對于一般計算機(jī)而言,網(wǎng)關(guān)再CPU和內(nèi)存這些硬件的性能方面比較受限。我們需要確定讓網(wǎng)關(guān)作哪些事情,也需要考慮到它的硬件性能。
4、軟件
人們主要使用Linux操作系統(tǒng)來運(yùn)行網(wǎng)關(guān)。雖然很多種用于服務(wù)器的Linux,不過,網(wǎng)關(guān)上搭載的Linux是面向嵌入式的。
此外,還有一個叫作BusyBox的軟件,它運(yùn)行起來占用內(nèi)存少,集成了標(biāo)準(zhǔn)的Linux命令工具。它用于在硬件資源匱乏的時候運(yùn)行網(wǎng)關(guān)。除此之外,還要考慮是否有關(guān)于控制網(wǎng)關(guān)功能的程序庫,以及與這種程序庫對應(yīng)的語言等。
5、電源
說起來,電源很容易被人們遺忘。網(wǎng)關(guān)基本上都是使用AC適配器當(dāng)電源的,因此需要事先在設(shè)置網(wǎng)關(guān)的場所準(zhǔn)備好電源。如果網(wǎng)關(guān)本身搭載有電池,那么就不需要準(zhǔn)備電源了,不過需要進(jìn)行充電等維護(hù)工作。
物聯(lián)網(wǎng)的整體結(jié)構(gòu)-服務(wù)器
在功能方面,物聯(lián)網(wǎng)服務(wù)大體可分為3個部分,我們稱它們?yōu)榍岸瞬糠?、處理部分,以及?shù)據(jù)庫部分。
物聯(lián)網(wǎng)服務(wù)的3個功能
首先,前端部分包括數(shù)據(jù)接受服務(wù)器和數(shù)據(jù)發(fā)送服務(wù)器。數(shù)據(jù)接收服務(wù)器接受設(shè)備和網(wǎng)關(guān)發(fā)來的數(shù)據(jù),轉(zhuǎn)交給后續(xù)的處理部分。數(shù)據(jù)發(fā)送服務(wù)器則剛好相反,它負(fù)責(zé)把從處理服務(wù)器接收到的內(nèi)容發(fā)送給設(shè)備。
通常情況下,Web服務(wù)的前端部分只接受HTTP協(xié)議。而物聯(lián)網(wǎng)服務(wù)的前端部分則需要根據(jù)連接設(shè)備的不同來匹配HTTP以外的協(xié)議。使用者需要考慮到協(xié)議的實(shí)時性和通信的輕量化,以及能否以服務(wù)器為七點(diǎn)發(fā)送數(shù)據(jù)。
處理部分負(fù)責(zé)處理從前端部分接收到的數(shù)據(jù)。這里的“處理”指的是分解數(shù)據(jù)、存儲數(shù)據(jù)、分析數(shù)據(jù)、生成發(fā)給設(shè)備的通知內(nèi)容,等等。數(shù)據(jù)處理包括批處理和流處理等,批處理即把數(shù)據(jù)存入數(shù)據(jù)庫之后一并進(jìn)行處理,而流處理是逐次處理從前端部分收到的數(shù)據(jù)。使用者需要根據(jù)處理內(nèi)容和數(shù)據(jù)特性來靈活使用這些“處理”。
最后是數(shù)據(jù)庫。這里的數(shù)據(jù)庫不只會用到關(guān)系數(shù)據(jù)庫,還會用到NoSQL數(shù)據(jù)庫。當(dāng)然,使用者需要根據(jù)想存儲的數(shù)據(jù)和想使用的方法來選擇數(shù)據(jù)庫。