2014年10月24日 星期五

關於物聯網的標準

大型主機說:「全球大概只需要五台電腦就夠了」
PC主機說:「每個家庭的桌面上都應該有一台電腦」
Pocket PC說:「太大了,應該每人口袋裡放一台」
物聯網說:「每粒沙子都應該有一台電腦。」

  還記得最早的網路的起源嗎?最早可回溯到1980年代的時候,美國國防部通訊署制定了TCP/IP通訊協定,除了使用在軍方自己的DARPA網路上也提供給學術界試用,讓各大學有了一個很好的網路發展環境;持續發展到了1987年,美國國家科學基金會已經在全美各地設立了七個以TCP/IP做為通訊協定的超級電腦中心,除了提供學術界免費使用外,也酌收使用費讓企業界也可以使用這個網路,成為現代人生活上不可或缺的網際網路的基礎。
從Internet的發展歷程上我們可以發現,它和電腦主機的發展史如此的緊密,一開始是為數相當少的大型主機,接著是散居政府機關、學校、企業的微電腦群組,再來是深入各個家庭的PC筆電,到了最近幾年則是各種個人化的手持裝置爆炸性開花並取代了一部份的PC筆電,緊接著下來,現信會是你我週遭為數更多的各種物品正準備聯上網路形成物聯網IoT的時代,所以有些人開始把IoT稱作IoE(Internet of Everything)。
但是當愈來愈多的物品連上了網路,有一個顯而易見的問題跟著浮上了檯面:就是它們彼此都不認識,因為它們說的都不是同一種語言,或許你已經發現,手上的Apple Watch無法控制Panasonic智慧型冷氣、而Panasonic冷氣開啟時無法自動關閉TripleShield防盜門窗、而TripleShield防盗系統則聯絡不上Sony智慧電視而無法顯示警報訊息,像這類標榜著智慧型物件卻又彼此無法相互溝通運作的情況,正限制著物聯網未來的應用與發展。
  由於全球對物聯網的標準尚未統一,有能力制定規則的IT大廠們莫不提出自己的標準希望能成為市場採用的唯一主流,導致目前物聯網技術主要有四大陣營:AllSeen 、OIC、Thread Group以及蘋果主導的HomKit,因為物聯網技術的應用並非單一業者所能掌握,所以各聯盟都積極招兵買馬,擴張勢力。
本文主要是說明及介紹各個物聯網聯盟以及他們的技術,最後則是探討各聯盟技術在物聯架構中的差異。

物聯網的基本架構

  在開始本文之前,我們先複習一下物聯網的基本架構:從結構來看,我們知道物聯網在概念上如上圖般可以分成三個層次,由底層至上層分別為感測層、網路層與應用層(如下圖),這3層各司其職同時又環環相扣,缺一不可:
  感測層用來識別、感測與控制末端物體的各種狀態,透過感測網路將資訊蒐集並傳遞至網路層。
網路層則是為了將感測資訊傳遞至應用層的應用系統。
應用層則是結合各種資料分析技術,以及子系統重新整合,來滿足企業不同的業務需求。

三層架構是大家的共識,但是語言尚未統一

標準化之爭

目前不同產業各自發展出各式各樣的物聯網型態,這些型態各異的物聯網之間由於欠缺標準介面與共通語言,導致彼此間各自獨立無法溝通整合,在這種模式下每種型態的物聯網規模與應用都將會受到限制而無法持續發展,因此推動物聯網的標準化是一件刻不容緩的事。
不過技術的標準化可不是件簡單的任務,尤其是針對一項新興產業的標準化!就以物聯網目前使用的無線技術為例,目前市場上已經存在許多的無線標準,包括藍牙、Wi-Fi、ZigBee、Z-Wave,甚至於手機通訊的蜂巢式技術 (CDMA、GSM、LTE…)以及DECT等等,它們都已經過一段時間的應用與改良,並且應用在物聯網當中,而底層的通訊協定也是一樣,包括了TCP/IP、MQTT、HTTP、CoAP等等一系列已經在使用中的標準,然而,直到目前終究還沒有一項技術能夠脫穎而出成為大家認同的通用標準,原因或許是這些技術本身還存在著不可忽略的缺點,例如Wi-Fi的耗電問題、Bluetooth尚在持續發展、Z-Wave太過封閉、ZigBee版本太多等等,因此,目前產業界仍然持續針對物聯網提出新的標準和架構,希望能成為物聯網的主流。

目前檯面上的四大標準

我們的客廳裡有著各式各樣的遙控器用來控制不同的TV、錄放影機、音響等等設備,如果有一支萬用遙控器就可以控制所有的設備那不是很方便嗎?問題是,大家都知道標準化的好處,但是大家都不希望主控權是在別人的遙控器上。
    因此九月6日的經濟學人http://www.economist.com/news/technology-quarterly/21615067-more-and-more-devices-are-becoming-connected-will-they-speak-same就指出了目前物聯網所面臨的問題:沒有統一的溝通語言將成為物聯網發展的絆腳石,而目前各大廠之間彼此互結聯盟各自建立物聯網標準的現象,將形同以往的VHS、BETA以及Blu-ray、HD-DVD之爭,牽絆著物聯網的發展。
  下面介紹一下四個目前檯面上聲勢最大的物聯網標準:


ASA聯盟

http://www.etcentric.org/wp-content/uploads/2014/07/AllSeen_Alliance_Logo.png
  目前勢力最大的應該是AllSeen Alliance(簡稱ASA聯盟,以下稱為AllSeen),該聯盟在2013年12月由Linux基金會成立,成員包含了來自半導體、白色家電、消費電子、下游零售商的巨頭們,例如高通、微軟以及中國的海爾、韓國LG、日本松下、Sharp等等共有五十多家公司,他們擁立的技術稱為「AllJoyn」,這個技術是由高通所開發並免費轉移給ASA聯盟。
  AllJoyn是一套開放開源的軟體SDK,可支援不同的作業系統,如Android、iOS、Windows等,也相容於各式的網路系統,例如Wi-Fi、藍芽、Zigbee等等,它強調任何開發者皆可免費下載進行開發,由於只需要將其SDK嵌入軟體中即可,因此可以在不同的製造商、操作系統之間跨平台運作;AllJoyn強調開放與相容,我們只要連上AllSeen Alliance的網站,便可在下載頁面上找到支援不同平台的AllJoyn版本來進行開發。
  由於AllJoyn需經過硬體來解譯執行,因此它可能需要較強大的處理器而無法直接應用在強調低秏能、體積細小且低成本的晶片上,它在物聯網的架構中比較偏向網路層的應用。

OIC聯盟

http://openinterconnect.org/wp-content/uploads/2014/01/OIC_colour_logo_medium.png
  原本大家以為Intel會跟隨並加入AllSeen的陣營,但出人意料的,Intel在今年(2014年) 7月聯合了AT&T、 Cisco、奇異、三星、Broadcom、IBM 和等等公司成立Open Interconnect Consortium(簡稱OIC)希望主導制定物聯網通訊的標準;目前OIC 聯盟並沒有透露其技術細節,在OIC的網站上也還沒有相關的技術說明及文件,只是聲稱可以相容於iOS、Android、Linux 和其他操作系統,且同時可以封裝多種不同的無線聯網標準,未來也將與AllJoyn相同也採開放原碼方式發展,並會額外加入認證測試制度。
  雖然OIC廠商數量目前僅約AllSeen Alliance的二成左右,但也都是屬於一線的世界級公司,因此聲勢不小,大有分庭抗禮的趨勢。
  此外,依據最近10/3的新聞,宏碁、聯發科等台系大廠也宣布加入了OIC陣營,陣容開始壯大。

Thread聯盟

http://cnet4.cbsistatic.com/hub/i/r/2014/07/14/45425a38-5a67-4951-9488-167fca4ba5a8/resize/270xauto/08151588a9a2312491d151680c8b1c76/thread-group-vert.jpg
  其實早在2011年的Google I/O大會上,Google便曾經提出Android@Home 的計畫,希望把Android可以控制的裝置,從原先的智慧型手機、平板,再擴張到家電裝置,不過後來整個計劃沉寂不了了之。
  這次Google透過旗下的Nest捲土重來,在今年(2014年) 7月成立Thread聯盟(大約晚了OIC聯盟一個星期),其所定義的新物聯網標準名稱亦稱為Thread,目前參與成員有三星、安謀、飛思卡爾(Freescale Semiconductor)、芯科(Silicon Labs)、風扇商Big Ass Fans、門鎖商 Yale Security 等等,雖然成員還不多,但以Google在Android的能力以及結合Nest深耕物聯網的實力,外界普遍認為Thread大有與其它聯盟一搏的實力,此外我們注意到三星電子除加入Allseen之外也加入了Thread陣營,不希望押錯寶的心態相當濃厚。
  Thread標準是基於既有的ZigBee技術並加以改造的一種衍生協定,但是它卻不相容於原有的ZigBee設備,因此它需要業者更新設備韌體之後才能使用,與其它聯盟的標準比較起來,Thread更接近於底層作為取代類似ZigBee的另一種網路協定,但是也代表其它聯盟也可以將Thread標準納入而與其相容。
        很明顯的,Thread在物聯網的架構中是屬於較底層的感知層應用,似乎Google希望能直接透過Thread從底層來統一所有協定。

Apple Homekit

在6月3日蘋果的2014年全球開發者大會(WWDC)上,蘋果推出了智慧家居平臺HomeKit。
https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcT9EpRVy2C4P9TU2rkwZsRZ_3kqdIOjztLs1TVcfpW--4qNTMLL8Q
HomeKit對於硬體有特殊的要求,硬體商必需將特殊的無線片和軟整合在硬體設備裡面,經過MadeforiPhone(MFi)認證後才能由開發人員透過HomeKit API去開發相關的應用,最終的使用者將透過iOS平台,利用Siri的語音控制去進行操控,因此,我們可以看得出來,蘋果的物聯網方案是「聯網物品 + iOS + Apps + Siri的一個組合,然而這也限制了它的發展,因為你無法使用非iOS的設備來操控Homekit平台。
  但是為了擴大Homekit支援的範圍,雖然蘋果當初要求相關設備需要經過MFi的認證才能加入HomeKit,最近也開放了讓其它非MFi認證設備也可透過介面轉換方式相容於HomeKit,不過可能在安全性支援與其它設備資訊的分享上無法與MFi認證設備相同而有所限制。因此我們可以看出,Homekit是架構在物聯網中最上方應用層的一種應用,只要是經過Homekit認證的設備,便能接受Homekit的監控、指揮及調度。

四大標準在物聯網架構所處的位置:

  以上這四大相互競爭的物聯網標準,我們可以看出其實它們彼此都具有差異:OIC目前我們還不清楚他們的架構與作法,因此暫且不論;AllSeen繼承了Linux的開源精神選擇走最開放的路線,包容所有的協定與系統平台,應用在物聯網架構中的網路層,至於Thread呢?它衍生自Zigbee並應用在物聯網架構的感知層,預期它未來也會與AllSeen一樣採開放的方式,它們兩者關心的重點都是在如何整合物與物之間的如何相連,其中Thread自己本身就屬於底層的物聯網協定,且忽略其它協定僅針對Thread協定本身進行處理,而AllSeen則是包容並解譯所有的網路協定,這是兩者之間最大的差異所在。
  至於HomeKit呢?它屬於蘋果自家的軟體平臺,定位在物聯網架構的應用層,它所選擇的角色完全不同於AllJoyn與Thread,HomeKit不去理會物與物之間是如何相連的,而只是站在所有物物必經的樞紐位置(應用層)要求所有物件聽它指揮。
  由於AllSeenThread與HomeKit這三種標準在物聯網中所佔據的高度並不相同(從低至高Thread→ AllSeen→HomeKit),因此理論上,在實際應用時它們是可以彼此相容而不會相互干擾,因此目前的物聯網標準之爭,預期將會持續下去,只是並不致於像以往的Beta v.s. VHS或Blu Ray v.s. HD DVD之爭一樣,最終只能有一種標準能夠勝出。
  有一句話說的好,「物聯網(The Internet of Things;IOT)真正的大餅不在那數百億顆感測器、也不在單純的連結服務!真正的獲利泉源是來自於分析解讀、使用感測器而創造出的龐大數據。」,目前各大聯盟競逐物並押寶各種聯網的標準,其最終目的並不在於標準技術的規範,而是在於更能方便利用自己的標準來掌控使用者數據的流向與最終的數據。

1 則留言: