律師這種職業(yè)能藉由爭辯對法條的不同見(jiàn)解而拿到報酬,可惜工程師沒(méi)這么幸運──如果有技術(shù)規格寫(xiě)得不清不楚,產(chǎn)品設計師最后還可能會(huì )因為做出了錯誤的詮釋而付出慘痛代價(jià)。
以上是筆者最近與產(chǎn)業(yè)組織Thread Group主席Grant Erickson交談后領(lǐng)悟到的心得;Thread在不久前宣布,已經(jīng)有分別來(lái)自于A(yíng)RM、NXP Semiconductors、OpenThread與Silicon Labs的四種軟件堆棧(software stack)成功完成了互操作性測試,成為首批能取得Thread Certified Components認證的軟件堆棧。
Thread Group將這個(gè)進(jìn)展視為重要里程碑,因為該組織不只是透過(guò)針對單一參考實(shí)作(reference implementations)進(jìn)行量測,來(lái)驗證Thread 1.1規格的一致性(該組織已經(jīng)在去年11月開(kāi)始進(jìn)行驗證,當時(shí)他們公布了Thread 1.1規格的第一版硬件參考測試平臺與測試框架)。
這一次,Thread Group表示,該組織藉由以包含上述四種軟件堆棧的混合網(wǎng)絡(luò )(blended network)來(lái)測試每個(gè)裝置的規格一致性,又向前邁進(jìn)一步;Thread Group設定的遠大目標是實(shí)現“真正的連網(wǎng)裝置生態(tài)系統多供貨商選項”。
我請Erickson解釋為何這是一件大事,他說(shuō)明了如果沒(méi)有該組織最新采取的這些額外驗證步驟,可能會(huì )發(fā)生什么樣的錯誤;他舉例指出,開(kāi)發(fā)符合Thread Group新規格的物聯(lián)網(wǎng)(IoT)裝置設計工程師,就算確定他從頭到尾都有遵循規格,并不能保證他的產(chǎn)品具備互操作性。
物聯(lián)網(wǎng)裝置突然無(wú)法與其他裝置通訊、甚至無(wú)法鏈接網(wǎng)絡(luò )的情況并不罕見(jiàn);同樣的,該裝置可能經(jīng)歷周期性故障或是丟失封包…這種情況為什么會(huì )發(fā)生?
Erickson解釋?zhuān)夹g(shù)規格可能是經(jīng)過(guò)擔保(under-written)的,這并不一定很罕見(jiàn),特別是當技術(shù)規格很新的時(shí)候,產(chǎn)業(yè)組織會(huì )隨著(zhù)時(shí)間定期更新規格;在推出最新的Thread 1.1規格時(shí),立即的問(wèn)題就是如何確保用戶(hù)在Thread認證產(chǎn)品上有更一致的使用體驗。
但采用相同芯片與軟件堆棧的Thread產(chǎn)品或許可以互通,但它們可能無(wú)法順利與其他采用不同芯片與軟件堆棧的Thread認證產(chǎn)品共同運作。
Erickson表示,互操作性問(wèn)題通常導因于對規格的的不同詮釋?zhuān)?ldquo;舉例來(lái)說(shuō),規格可能載明要遵循三個(gè)步驟,但是并沒(méi)有標示這三個(gè)步驟的優(yōu)先級;”或許實(shí)際產(chǎn)品的變異性在處理上并不是什么大問(wèn)題,例如Wi-Fi產(chǎn)品:“你只要將產(chǎn)品重新啟動(dòng),就能讓它聯(lián)機。”
但相較之下,物聯(lián)網(wǎng)裝置必須在一個(gè)電池壽命是關(guān)鍵所在的、條件不那么寬松的環(huán)境中運作:“你無(wú)法承擔重新啟動(dòng)裝置所消耗的電池電量;”Erickson將物聯(lián)網(wǎng)形容為一種要求更為嚴格的任務(wù)關(guān)鍵網(wǎng)絡(luò ),并認為T(mén)hread Group正在提供更強固的Thread 1.1認證計劃。
在被問(wèn)到這次還有其他哪些新訊息(與去年秋天發(fā)布第一版1.1規格相較)時(shí),Erickson指出了由Nest Labs/Google所開(kāi)發(fā)之OpenThread的加入:“我們的第一個(gè)計劃只涵蓋三種軟件堆棧,”分別來(lái)自ARM、NXP與Silicon Labs:“但現在有四種。”
那Thread 1.1與Thread 1.0 (符合此規格的產(chǎn)品并未商用)在基本上到底有什么不同?Erickson表示:“1.1規格有兩項主要功能,包括應用導向的頻道靈活性(application-directed channel agility),以及密鑰變換(key change)。”
Erickson 解釋?zhuān)琓hread 1.1產(chǎn)品具備偵測空域中干擾的能力,并會(huì )自動(dòng)Thread網(wǎng)絡(luò )內的凈空頻道,不須用戶(hù)干預;類(lèi)似的,當出現安全性威脅,Thread的應用層能重設一個(gè)主密鑰(master key),并驅動(dòng)網(wǎng)絡(luò )中新一輪的旋轉密鑰(rotating keys),使得黑名單(black list)的取得或是移除某個(gè)連網(wǎng)裝置更容易。
而Ericson總結指出,Thread Group及其成員:“在提供互操作性──不只是規格一致性──方面已經(jīng)超越了大多數的技術(shù)聯(lián)盟,這將為終端用戶(hù)帶來(lái)更佳的產(chǎn)品體驗;”現在Thread Group的成員已經(jīng)可以提交零組件以及產(chǎn)品進(jìn)行測試與Thread認證,而他也承諾,幾星期之后Thread 1.1規格就會(huì )向大眾公開(kāi)。