作為一個新的網絡設備,服務型物聯網網關將在物聯網時代扮演重要角色,成為連接感知網絡與傳統通信網絡的紐帶。作為網關設備,除了可以實現感知網絡與通信網絡以及不同類型感知網絡之間的協議轉換外,服務型物聯網網關還應當具備設備管理、智慧服務等功能。物聯網最大的特點就是實現物與物的相連,一個物聯網網關管理的設備可以是一個溫度傳感器、一部空調、一個卷簾門,甚至是一輛汽車等,這就為物聯網網關除了具備通信的基本功能外,還可被賦予其它智慧功能創造了條件;例如,當溫度大于某個預訂值時,可以打開空調;當時間臨近預設時刻時,可以關閉卷簾門等功能。
規則引擎(Rules Engine)是實現上述功能的一個方法。規則引擎最早由推理引擎發展而來,是一種嵌入在應用程序中的組件,它將業務決策從應用程序代碼中分離出來,并使用預定義的語義模塊來編寫業務決策,接受數據輸入,解釋業務規則,并根據業務規則做出業務決策。適用于物聯網應用的規則引擎應分為三個部分:
(1)規則池:用于存放用戶寫入的規則集合;
(2)執行單元:當條件符合某條規則時,用于觸發相應的動作;
(3)用戶交互界面:用戶通過交互界面在規則池中寫入具體的規則。
除上述三個功能外,還必須解決兩個重要問題:
(1)計算單元:控制規則的執行次序和進行規則沖突檢驗;例如,一個服務型物聯網網關中,有兩條規則:一是9:00~18:00,辦公室門即開即關;二是火災報警器報警時,打開辦公室所有門窗。在正常情況下,這兩條規則不會發生沖突,9:00~18:00是上班時間,出入關門,防止外人隨便進入,對保持辦公環境安全、舒適是十分必要的。發生火災時,打開所有門窗,以便所有人能盡快離開辦公室,這也是合理的。但是,當9:00~18:00時段內發生火災時,就會發生規則沖突,因為計算機不像人腦,它只會根據當初設定好的規則執行,因此,控制規則的執行次序以及發生規則沖突時,解決規則執行的優先級是十分重要的。
(2)物聯網資源的統一描述:物聯網中的各種感知信息組成了海量的泛在資源,存在著描述難、檢索難、運營難等困擾統一服務的問題。如果物聯網資源無法做到統一描述,規則的執行單元就會因為要兼容千變萬化的物聯網資源而不得不變得十分龐大和復雜。
解決上述兩個主要問題,促成規則引擎與服務型物聯網網關的完美結合,必將使物聯網網關變得更加智能化、輕量化,從而更好地成為連接感知網絡與傳統通信網絡的紐帶。