在移動(dòng)互聯(lián)網(wǎng)之后筷弦,我們即將迎來一個(gè)萬物互聯(lián)的時(shí)代,連接將產(chǎn)生巨大的價(jià)值抑诸。IoT成為各大科技巨頭關(guān)注的一個(gè)重點(diǎn)烂琴,如:CISCO、Google蜕乡、Apple奸绷、IBM、Microsoft等层玲。智能技術(shù)的進(jìn)步更是為IoT的發(fā)展推波助瀾号醉,將在不遠(yuǎn)的未來深刻改變?nèi)藗兊墓ぷ骱蜕罘绞健?br>
IoT的應(yīng)用
IoT是傳統(tǒng)互聯(lián)網(wǎng)的延伸,海量的傳感器和智能設(shè)備將產(chǎn)生數(shù)以百億計(jì)的連接辛块;連接方式和連接數(shù)量的變化將極大地改變?nèi)祟惖纳詈凸ぷ鞣绞健?/p>
從目前來看扣癣,隨著物聯(lián)網(wǎng)技術(shù)與傳統(tǒng)行業(yè)的深度結(jié)合,通過物聯(lián)網(wǎng)技術(shù)憨降、智能技術(shù)為傳統(tǒng)行業(yè)賦能父虑,催生了智能穿戴、智能出行授药、智能家居等領(lǐng)域的應(yīng)用士嚎,最近蓬勃發(fā)展的共享單車就是目前規(guī)模較大的一種IoT應(yīng)用場(chǎng)景。
IoT面臨的挑戰(zhàn)
這是一個(gè)美好的愿景悔叽,但是卻面臨著巨大的挑戰(zhàn)莱衩。
正是因?yàn)榫薮蟮那熬埃鱾€(gè)廠家都想在這個(gè)龐大的市場(chǎng)分得一杯羹娇澎,以至于形成了一個(gè)個(gè)截然不同笨蚁、相互封閉的生態(tài)系統(tǒng)。典型的有蘋果趟庄、谷歌括细、小米。
- Google利用自身在互聯(lián)網(wǎng)的技術(shù)優(yōu)勢(shì)戚啥,構(gòu)建了強(qiáng)大的云計(jì)算和基礎(chǔ)設(shè)施能力奋单。
- Apple推出了HomeKit框架,用于開發(fā)者進(jìn)行智能家居相關(guān)的應(yīng)用開發(fā)猫十。
- 小米2015年推出了米家品牌览濒,并開發(fā)了一系列的智能硬件產(chǎn)品呆盖,而這些硬件無一例外都是可以聯(lián)網(wǎng)的。2017年11月小米推出了IoT開發(fā)者計(jì)劃贷笛,對(duì)開發(fā)者開放IoT平臺(tái)应又,吸引更多的智能設(shè)備接入其平臺(tái);并通過與百度合作乏苦,共建IoT+AI生態(tài)系統(tǒng)丁频。
不同的生態(tài)系統(tǒng)給廠商和消費(fèi)都帶來了麻煩。
對(duì)于廠商來說邑贴,生產(chǎn)出來的設(shè)備選擇哪個(gè)生態(tài)系統(tǒng)是一個(gè)艱難的選擇席里,如果想開發(fā)一個(gè)跨越多個(gè)生態(tài)系統(tǒng)的設(shè)備,將面臨著巨大的成本壓力拢驾。
對(duì)于消費(fèi)者來說奖磁,選擇了某一個(gè)品牌的設(shè)備或服務(wù),可能就永遠(yuǎn)被這個(gè)品牌所綁定了繁疤。因?yàn)椴煌瑥S家之間的設(shè)備無法相互兼容咖为。
OCF是什么?
OCF的全稱是Open Connectivity Fundation稠腊,這是它的官方網(wǎng)站躁染。OCF希望在未來能夠?qū)崿F(xiàn)百億級(jí)別設(shè)備間的連接,跨越不同的操作系統(tǒng)和平臺(tái)實(shí)現(xiàn)安全架忌、可靠的設(shè)備發(fā)現(xiàn)和連接機(jī)制吞彤;帶動(dòng)工業(yè)界共同打造一個(gè)通用的、互操作的解決方案叹放,構(gòu)建一個(gè)開放饰恕、互聯(lián)的IoT生態(tài)系統(tǒng)。
OCF的目標(biāo)是幫助統(tǒng)一物聯(lián)網(wǎng)標(biāo)準(zhǔn)井仰,以便公司和開發(fā)者都能夠打造可無縫協(xié)作的物聯(lián)網(wǎng)解決方案和設(shè)備埋嵌。助力于加速行業(yè)創(chuàng)新,幫助所有開發(fā)者和企業(yè)根據(jù)單一開放的物聯(lián)網(wǎng)互操作規(guī)范來打造解決方案俱恶。借助于OCF規(guī)范雹嗦、協(xié)議和開源項(xiàng)目,眾多的消費(fèi)者合是、企業(yè)和不同制造商的嵌入式設(shè)備和傳感器了罪,都能夠安全無縫地協(xié)同作業(yè)。
OCF目前網(wǎng)羅了除Apple端仰、Google之外幾乎所有的主流廠商捶惜,包括三星、英特爾荔烧、微軟吱七、高通、ZTE等鹤竭,其會(huì)員分為鉆石踊餐、鉑金、黃金臀稚、學(xué)術(shù)吝岭、基本等5個(gè)級(jí)別。
OCF的使命與愿景
OCF由之前的OIC( Open Interconnect Consortium)組織演變而來吧寺,OIC涵蓋了各個(gè)領(lǐng)域的頂級(jí)企業(yè)窜管,涉及IC、軟件稚机、平臺(tái)和成品等領(lǐng)域幕帆,它們致力于為物聯(lián)網(wǎng)解決方案提供這一關(guān)鍵的互操作規(guī)范。OCF的使命是赖条,在IoT時(shí)代幫助消費(fèi)者失乾、廠商實(shí)現(xiàn)更加安全、可靠的互操作性纬乍,保證不同廠家碱茁、不同平臺(tái)的設(shè)備可以透明地互相通訊。
就物聯(lián)網(wǎng)而言仿贬,OCF的愿景在于實(shí)現(xiàn)數(shù)百億個(gè)互聯(lián)設(shè)備(電器纽竣、電話、電腦茧泪、工業(yè)設(shè)備)的相互通信退个,且不受制造商、操作系統(tǒng)调炬、芯片或運(yùn)輸?shù)南拗朴镉H绻鸒CF實(shí)現(xiàn)了這一目標(biāo),任何人——從大型技術(shù)公司到家庭作坊——都可以采用OCF的公開標(biāo)準(zhǔn)來創(chuàng)新和競(jìng)爭(zhēng)缰泡,并確保為消費(fèi)者刀荒、企業(yè)和工業(yè)提供安全的互操作性。
OCF干了些什么棘钞?
OCF主要做了以下幾個(gè)方面的工作:
- 標(biāo)準(zhǔn)的通訊平臺(tái)
- 橋接規(guī)范
- 開源實(shí)現(xiàn)
OCF提供了一個(gè)開源的參考實(shí)現(xiàn)IoTivity缠借,目前運(yùn)作于Linux基金會(huì)之下,采用了Apache 2.0 Lisence宜猜。 - 認(rèn)證流程
包括對(duì)OCF規(guī)范的兼容性認(rèn)證泼返,以及設(shè)備或應(yīng)用間的互操作性認(rèn)證。 -
OneIoTA.org
一個(gè)數(shù)據(jù)模型的倉庫姨拥,其中的數(shù)據(jù)模型以RAML和JSON格式來描述绅喉。這個(gè)網(wǎng)站提供了一個(gè)在線的工具渠鸽,可以讓企業(yè)和組織創(chuàng)建新的設(shè)備模型,或者將已定義的模型引入自己的設(shè)備中柴罐。
OCF核心架構(gòu)
面向資源的架構(gòu)(Resource Oriented Architechture)
OCF的功能基于一種面向資源的架構(gòu)徽缚。OCF架構(gòu)下交互的所有功能實(shí)體,都被抽象和描述為資源(Resource
)革屠,通過RESTful風(fēng)格的操作對(duì)各種實(shí)體進(jìn)行無縫的連接凿试。
在此架構(gòu)下,OCF提供了一個(gè)通信和互操作性框架似芝,以適應(yīng)IoT的各種應(yīng)用領(lǐng)域(如智能家居那婉、汽車、健康等)党瓮,屏蔽廠家详炬、操作系統(tǒng)、硬件麻诀、通訊網(wǎng)絡(luò)等方面的差異痕寓;OCF提供了一個(gè)統(tǒng)一的模型對(duì)環(huán)境、設(shè)備等進(jìn)行描述蝇闭,以實(shí)現(xiàn)信息的流動(dòng)和語義上的互操作呻率。此外,OCF還提供了資源發(fā)現(xiàn)呻引、識(shí)別礼仗、安全等相關(guān)的協(xié)議和機(jī)制都毒。
通過以上機(jī)制比庄,OCF提供了一種可擴(kuò)展的解決方案,使得滿足這套描述規(guī)范的IoT系統(tǒng)能夠接入各種能力的設(shè)備掸鹅,從智能家電童谒、傳感器单旁,到可穿戴設(shè)備。
設(shè)計(jì)原則
一個(gè)滿足OCF規(guī)范的系統(tǒng)核心架構(gòu)饥伊,如下圖所示象浑。
核心架構(gòu)從概念上可以從三個(gè)角度進(jìn)行描述:
-
資源模型(Resource model)
- 資源模型是OCF架構(gòu)的基礎(chǔ)琅豆,它提供了一種從邏輯上進(jìn)行建模愉豺,并實(shí)現(xiàn)IoT應(yīng)用間互操作的抽象手段。
- 所有的物理實(shí)體(如傳感器茫因、設(shè)備)都被描述為資源(
Resource
)蚪拦,通過資源的形式暴露給外部世界,實(shí)體的狀態(tài)通過資源表示(Resource Representation
)來描述;每個(gè)資源都具有自己的URI和可以支持的接口類型(interface
)驰贷。 - 實(shí)體間的交互通過基于資源表示的RESTful操作來實(shí)現(xiàn)盛嘿。RESTful操作的發(fā)起方對(duì)應(yīng)著上圖中的客戶端角色(
OCF Client
),RESTful操作的響應(yīng)方對(duì)應(yīng)著服務(wù)端角色(OCF Server
)饱苟;其中孩擂,服務(wù)端也是資源的擁有者狼渊。
Resource Model of Smart Bulb
上圖是一個(gè)智能電燈的資源模型箱熬。智能電燈這個(gè)設(shè)備擁有兩個(gè)屬性,分別為開關(guān)和亮度狈邑。為其建模的資源包括:
- 核心資源(也是每個(gè)OCF建模的設(shè)備都擁有的資源):
/oic/res, /oic/d
城须; - 設(shè)備特有的資源:開關(guān)
Binary Switch
,類型為oic.r.switch.bianry
米苹; - 其它可選資源:亮度
Brightness
糕伐,類型為oic.r.light.brightness
。
-
RESTful風(fēng)格的操作(RESTful operations)
與RESTful一致蘸嘶,OCF定義了CREATE
良瞧、RETRIEVE
、UPDATE
训唱、DELETE
褥蚯、NOTIFY
五種操作,簡(jiǎn)稱為CRUDN
况增。分別完成資源的創(chuàng)建赞庶、查詢、更新澳骤、刪除和通知歧强。無需關(guān)注底層的協(xié)議和實(shí)現(xiàn)方式。
RESTful操作
- 抽象(Abstratiction)
上面提到的資源模型和RESTful操作为肮,都離不開抽象層的支撐摊册。抽象層用于將相應(yīng)的資源和REST操作映射到具體的物理實(shí)體上。
實(shí)體處理器(Entity Handler
)用來將實(shí)體映射到資源上颊艳,或者將資源映射到一個(gè)非本地的物理實(shí)體上茅特;連接抽象層(Connectivity Abstraction)用來將操作映射到具體的連接層協(xié)議和實(shí)現(xiàn)上。
功能組成
從功能的組成上看籽暇,OCF規(guī)范定義可以分為以下幾個(gè)層次温治。
IoTivity
IoTivity是OCF規(guī)范的一個(gè)參考實(shí)現(xiàn),使得開發(fā)者可以在IoT時(shí)代更容易地實(shí)現(xiàn)設(shè)備與設(shè)備之間的無縫連接戒悠。該項(xiàng)目目前已經(jīng)開源熬荆,并且正在活躍地更新中。
詳細(xì)信息可以參考IoTivity的官方網(wǎng)站和代碼倉庫绸狐。
架構(gòu)實(shí)現(xiàn)
協(xié)議棧
小結(jié)
OCF提供了一種選擇的可能卤恳,使得在IoT時(shí)代累盗,能夠容易地構(gòu)建一個(gè)開放的生態(tài)系統(tǒng),產(chǎn)業(yè)鏈中各個(gè)環(huán)節(jié)的參與者都能夠融入其中突琳。通過規(guī)范若债、開源實(shí)現(xiàn)和認(rèn)證的結(jié)合,來實(shí)現(xiàn)設(shè)備間的互操作性拆融。
當(dāng)然蠢琳,市場(chǎng)的選擇并非完全由技術(shù)決定,技術(shù)的發(fā)展也日新月異镜豹,一個(gè)生態(tài)圈的形成和成功取決于很多因素傲须。從這個(gè)角度來說,OCF還遠(yuǎn)談不上成功趟脂,它還有很長的路要走泰讽。