分片編號 不等于0,若是,則轉(zhuǎn)到步驟S504 ;否則,轉(zhuǎn)到步驟S506 ;
[01化]S504、確認(rèn)控制模塊進(jìn)行確認(rèn)操作,即將當(dāng)前備用存儲區(qū)的軟件設(shè)置為主用存儲 區(qū)的軟件,作為0NU啟動時(shí)默認(rèn)加載執(zhí)行的軟件,轉(zhuǎn)到步驟S505 ; 陽106] S505、確認(rèn)控制模塊將分片信息存儲模塊中主用和備用存儲區(qū)中的分片編號和分 片總數(shù)都設(shè)置為0,結(jié)束; 陽107] S506、確認(rèn)控制模塊忽略確認(rèn)命令,結(jié)束。
[0108] 本領(lǐng)域的技術(shù)人員可W對本發(fā)明實(shí)施例進(jìn)行各種修改和變型,倘若運(yùn)些修改和變 型在本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則運(yùn)些修改和變型也在本發(fā)明的保護(hù)范圍 之內(nèi)。
[0109] 說明書中未詳細(xì)描述的內(nèi)容為本領(lǐng)域技術(shù)人員公知的現(xiàn)有技術(shù)。
【主權(quán)項(xiàng)】
1. 一種ONU軟件版本分片升級的裝置,該裝置位于ONU內(nèi),支持OAM和/或OMCI協(xié)議, 用于對ONU分片升級過程進(jìn)行控制和管理,其特征在于:該裝置包括包括分片信息存儲模 塊、升級控制模塊、激活控制模塊、確認(rèn)控制模塊,其中: 所述分片信息存儲模塊用于存儲軟件版本分片信息: 分片信息存儲模塊包含主用和備用兩個(gè)存儲區(qū),分別存儲主用軟件和備用軟件的軟 件版本分片信息,軟件版本分片信息包括硬件版本號、軟件版本號、分片編號、分片總數(shù)及 軟件分片,分片編號 < 分片總數(shù),分片編號=分片總數(shù)時(shí),表示所有軟件版本分片都接收完 成;分片編號和分片總數(shù)都等于〇時(shí),表示未進(jìn)行升級; 所述升級控制模塊用于處理OLT下發(fā)的ONU升級命令: ONU收到OLT下發(fā)的ONU軟件版本升級開始請求報(bào)文后,判斷ONU是否需要升級,若否, 則忽略該請求,若是,則發(fā)送升級開始回應(yīng)報(bào)文給〇LT,OLT按照OAM或OMCI協(xié)議將ONU軟 件版本分片發(fā)送給ONU,ONU在收到軟件分片后,校驗(yàn)軟件版本號和硬件版本號是否正確, 若否,則發(fā)送升級失敗報(bào)文給0LT,若是,則校驗(yàn)分片編號和分片總數(shù)是否正確,若是,保存 軟件版本分片到備用存儲區(qū),同時(shí)更新備用存儲區(qū)中的軟件版本號、分片編號及分片總數(shù); 若否,則發(fā)送升級失敗回應(yīng)報(bào)文給OLT ; 所述激活控制模塊用于處理OLT下發(fā)的ONU激活命令: 當(dāng)ONU收到OLT下發(fā)的激活命令后,讀取存儲在分片信息存儲模塊中的分片編號和分 片總數(shù),判斷分片編號是否等于分片總數(shù)、且分片編號不等于〇,若否,則忽略激活命令;若 是,則進(jìn)行激活操作,即掛起當(dāng)前主存儲區(qū)的軟件鏡像,使系統(tǒng)從備用存儲區(qū)的軟件啟動; 所述確認(rèn)控制模塊用于處理OLT下發(fā)的ONU確認(rèn)命令: 當(dāng)ONU收到OLT下發(fā)的確認(rèn)命令后,讀取存儲在分片信息存儲模塊中的分片編號和分 片總數(shù),判斷分片編號是否等于分片總數(shù)、且分片編號不等于〇,若否,則忽略確認(rèn)命令;若 是,則進(jìn)行確認(rèn)操作,即將當(dāng)前備用存儲區(qū)的軟件設(shè)置為主用存儲區(qū)的軟件,作為ONU啟動 時(shí)默認(rèn)加載執(zhí)行的軟件,同時(shí)將分片信息存儲模塊中主用和備用存儲區(qū)中的分片編號和分 片總數(shù)都設(shè)置為0。2. 如權(quán)利要求1所述的ONU軟件版本分片升級的裝置,其特征在于:所述裝置支持OAM 協(xié)議時(shí),該裝置應(yīng)用于EPON系統(tǒng)。3. 如權(quán)利要求1所述的ONU軟件版本分片升級的裝置,其特征在于:所述裝置支持 OMCI協(xié)議時(shí),該裝置應(yīng)用于GPON系統(tǒng)。4. 如權(quán)利要求1所述的ONU軟件版本分片升級的裝置,其特征在于:所述裝置支持OAM 和OMCI協(xié)議時(shí),該裝置應(yīng)用于EPON、GPON系統(tǒng)。5. -種基于權(quán)利要求1至4中任一項(xiàng)所述裝置的ONU軟件版本分片升級的方法,其特 征在于,包括以下步驟: 51、 將ONU軟件版本分成多個(gè)軟件分片,保證每個(gè)軟件分片的大小小于OLT緩沖空間的 大小,給所有軟件分片加上特殊的版本頭,版本頭中包含軟件版本號、硬件版本號、分片編 號和分片總數(shù); 52、 通過網(wǎng)管對多個(gè)軟件分片依次進(jìn)行升級,OLT每收到一片ONU軟件版本分片后,將 其放入緩沖區(qū),并解析軟件版本的版本頭,對軟件版本號和硬件版本號進(jìn)行校驗(yàn),校驗(yàn)通過 后立即通過OAM或OMCI協(xié)議將軟件分片發(fā)送給0NU,然后清空緩沖區(qū),再接收下一片軟件版 本分片,直到所有軟件版本分片升級完畢; 53、 0NU的升級控制模塊處理OLT下發(fā)的軟件版本升級命令報(bào)文,ONU收到軟件分片后, 將軟件分片依次保存到分片信息存儲模塊,在收到最后一片軟件分片之前,ONU的激活控制 模塊忽略O(shè)LT下發(fā)的激活命令,ONU的確認(rèn)控制模塊忽略O(shè)LT下發(fā)的確認(rèn)命令,繼續(xù)等待其 他軟件分片;在接收完最后一片軟件分片之后,才處理激活命令和確認(rèn)命令,并進(jìn)行相應(yīng)的 操作; 54、 ONU的激活控制模塊處理OLT下發(fā)的軟件版本激活命令報(bào)文; 55、 ONU的確認(rèn)控制模塊處理OLT下發(fā)的軟件版本確認(rèn)命令報(bào)文。6. 如權(quán)利要求5所述的ONU軟件版本分片升級的方法,其特征在于:步驟S3中,所述 ONU處理OLT下發(fā)的升級命令報(bào)文的具體過程為: 5301、 ONU接收OLT下發(fā)的ONU軟件版本升級請求命令; 5302、 升級控制模塊判斷是否需要升級,若是,則轉(zhuǎn)到步驟S303 ;否則,轉(zhuǎn)到步驟S304 ; 5303、 升級控制模塊發(fā)送升級開始回應(yīng)報(bào)文給0LT,轉(zhuǎn)到步驟S305 ; 5304、 升級控制模塊忽略該請求,結(jié)束; 5305、 升級控制模塊接收OLT下發(fā)的軟件分片,并校驗(yàn)軟件版本號和硬件版本號是否 正確,若是,則轉(zhuǎn)到步驟S306 ;否則,轉(zhuǎn)到步驟S308 ; 5306、 升級控制模塊校驗(yàn)分片編號是否正確,若是,則轉(zhuǎn)到步驟S307 ;否則,轉(zhuǎn)到步驟 S308 ; 5307、 分片信息存儲模塊保存軟件版本分片到備用存儲區(qū),同時(shí)更新備用存儲區(qū)中的 軟件版本號、分片編號及分片總數(shù),結(jié)束; 5308、 升級控制模塊發(fā)送升級失敗回應(yīng)報(bào)文給0LT,結(jié)束。7. 如權(quán)利要求6所述的ONU軟件版本分片升級的方法,其特征在于:步驟S306中,升 級控制模塊校驗(yàn)分片編號的具體過程如下: 所述備用存儲區(qū)中保存的分片編號為Ii1、分片總數(shù)為Hl1,當(dāng)前軟件分片中的分片編號 為n2、分片總數(shù)為m2,當(dāng)Ii1= m i= 0時(shí),說明之前沒有接收過軟件分片; 滿足公式(1)中的條件時(shí),認(rèn)為分片編號正確;否則,認(rèn)為分片編號不正確;當(dāng),說明之前已經(jīng)接收過軟件分片; 滿足公式(2)中的條件時(shí),認(rèn)為分片編號正確,否則認(rèn)為分片編號不正確;當(dāng)ni= mi# 〇時(shí),說明軟件分片已經(jīng)全部接收完成,任何分片編號都認(rèn)為不正確。8. 如權(quán)利要求7所述的ONU軟件版本分片升級的方法,其特征在于:步驟S307中,當(dāng) Ii1= IIi1= 0時(shí),更新軟件版本號、分片編號及分片總數(shù);當(dāng)0〈n ,!!^時(shí),更新分片編號;當(dāng)η 1 =Hl1^ 0時(shí),不更新信息。9. 如權(quán)利要求6所述的ONU軟件版本分片升級的方法,其特征在于:步驟S4中,ONU處 理OLT下發(fā)的軟件版本激活命令報(bào)文的具體過程為: 5401 :0NU接收OLT下發(fā)的軟件激活命令; 5402 :分片信息存儲模塊讀取存儲在備用存儲區(qū)中的分片編號和分片總數(shù); S403:激活控制模塊判斷分片編號是否等于分片總數(shù)、且分片編號不等于0,若是,則 轉(zhuǎn)到步驟S404 ;否則,轉(zhuǎn)到步驟S405 ; S404 :激活控制模塊進(jìn)行激活操作,即掛起當(dāng)前主存儲區(qū)的軟件鏡像,使系統(tǒng)從備用存 儲區(qū)的軟件啟動,結(jié)束; S405、激活控制模塊忽略激活命令,結(jié)束。10. 如權(quán)利要求6所述的ONU軟件版本分片升級的方法,其特征在于:步驟S5中,ONU 處理OLT下發(fā)的軟件版本確認(rèn)命令報(bào)文的具體過程為: 5501、 ONU接收OLT下發(fā)的軟件確認(rèn)命令; 5502、 分片信息存儲模塊讀取存儲在備用存儲區(qū)中的分片編號和分片總數(shù); 5503、 確認(rèn)控制模塊確認(rèn)控制模塊判斷分片編號是否等于分片總數(shù)、且分片編號不等 于0,若是,則轉(zhuǎn)到步驟S504 ;否則,轉(zhuǎn)到步驟S506 ; 5504、 確認(rèn)控制模塊進(jìn)行確認(rèn)操作,即將當(dāng)前備用存儲區(qū)的軟件設(shè)置為主用存儲區(qū)的 軟件,作為ONU啟動時(shí)默認(rèn)加載執(zhí)行的軟件,轉(zhuǎn)到步驟S505 ; 5505、 確認(rèn)控制模塊將分片信息存儲模塊中主用和備用存儲區(qū)中的分片編號和分片總 數(shù)都設(shè)置為〇,結(jié)束; 5506、 確認(rèn)控制模塊忽略確認(rèn)命令,結(jié)束。
【專利摘要】本發(fā)明公開了一種ONU軟件版本分片升級的裝置及方法,涉及無源光網(wǎng)絡(luò)領(lǐng)域。該裝置位于ONU內(nèi),支持OAM和/或OMCI協(xié)議,用于對ONU分片升級過程進(jìn)行控制和管理,該裝置包括分片信息存儲模塊、升級控制模塊、激活控制模塊、確認(rèn)控制模塊,分片信息存儲模塊用于存儲軟件版本分片信息,升級控制模塊用于處理OLT下發(fā)的ONU升級命令,激活控制模塊用于處理OLT下發(fā)的ONU激活命令,確認(rèn)控制模塊用于處理OLT下發(fā)的ONU確認(rèn)命令。本發(fā)明對ONU軟件版本文件實(shí)現(xiàn)分片升級,能避免因ONU軟件版本文件的大小超出OLT緩沖空間的大小而導(dǎo)致ONU無法遠(yuǎn)程升級的問題。
【IPC分類】G06F9/445
【公開號】CN105183519
【申請?zhí)枴緾N201510599637
【發(fā)明人】夏瑞俊
【申請人】烽火通信科技股份有限公司
【公開日】2015年12月23日
【申請日】2015年9月18日