基于對(duì)OTA更新過(guò)程的這種高層次描述,OTA更新解決方案必須應(yīng)對(duì)三大挑戰(zhàn)。個(gè)挑戰(zhàn)與存儲(chǔ)器有關(guān)。軟件解決方案必須將新軟件應(yīng)用程序組織到客戶端器件的易失性或非易失性存儲(chǔ)器中,以便在更新過(guò)程完成時(shí)可以執(zhí)行它。解決方案必須確保將前一版本的軟件保留為后備應(yīng)用程序,以防新軟件出現(xiàn)問(wèn)題。此外,當(dāng)復(fù)位和斷電重啟時(shí),我們必須讓客戶端器件的狀態(tài)——例如當(dāng)前運(yùn)行的軟件版本以及它在存儲(chǔ)器中的位置——保持不變。第二大挑戰(zhàn)是通信。新軟件必須以離散數(shù)據(jù)包的形式從服務(wù)器發(fā)送到客戶端,每個(gè)數(shù)據(jù)包都要放在客戶端存儲(chǔ)器中的特定地址。分包方案、數(shù)據(jù)包結(jié)構(gòu)和數(shù)據(jù)傳輸協(xié)議必須在軟件設(shè)計(jì)中考慮周全。后一個(gè)主要挑戰(zhàn)是安全性。當(dāng)新軟件以無(wú)線方式從服務(wù)器發(fā)送到客戶端時(shí),我們必須確保服務(wù)器是可信任方。這種安全挑戰(zhàn)稱為身份驗(yàn)證。我們還必須對(duì)新軟件進(jìn)行模糊處理以防觀察者,因?yàn)槠渲锌赡馨舾行畔ⅰ_@種安全挑戰(zhàn)稱為保密。安全性的后一個(gè)要素是完整性,即確保新軟件在通過(guò)無(wú)線方式發(fā)送時(shí)不會(huì)損壞。
電話
微信掃一掃