專利名稱:一種軟件下載的方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及軟件下載領(lǐng)域,特別是指一種軟件下載的方法及系統(tǒng)。
背景技術(shù):
光網(wǎng)絡(luò)系統(tǒng)中的網(wǎng)元系統(tǒng)由網(wǎng)元中的主控板(NCP)管理。在現(xiàn)有的光網(wǎng)絡(luò)系統(tǒng) 中,單板運(yùn)行需要單板軟件的支持,而單板本身在上電前并沒有保存自身的軟件,所有的軟 件都是由網(wǎng)元的NCP保存的,單板上電時(shí)向NCP請(qǐng)求下載單板軟件,下載完畢后單板才會(huì)運(yùn) 行。在實(shí)際應(yīng)用中,NCP向單板提供軟件下載是由NCP通過一個(gè)私有接口 S 口向各個(gè) 單板傳送數(shù)據(jù)實(shí)現(xiàn)的,由于S 口驅(qū)動(dòng)協(xié)議過于龐大,燒結(jié)啟動(dòng)程序(boot)的硬件空間又是 有限的,決定了 S 口驅(qū)動(dòng)協(xié)議無法集成在boot中而只能集成在內(nèi)核程序中。這樣,需要單 板出廠時(shí)燒結(jié)內(nèi)核程序,導(dǎo)致生產(chǎn)效率低。另外,目前的下載中,NCP同一時(shí)間只能對(duì)一塊單板提供下載服務(wù),導(dǎo)致處理速度 緩慢,會(huì)有大量的下載任務(wù)積壓在NCP的處理隊(duì)列中;同樣,在網(wǎng)管下發(fā)升級(jí)計(jì)劃時(shí)也會(huì)使 得多個(gè)單板升級(jí)軟件版本,需要花費(fèi)較長(zhǎng)的時(shí)間進(jìn)行升級(jí)。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的在于提供一種軟件下載的方法及系統(tǒng),可提高單板 的生產(chǎn)效率,同時(shí)提高軟件下載速度,減少單板升級(jí)時(shí)間。為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的本發(fā)明提供了一種軟件下載的方法,包括單板的文件傳輸FTP客戶端啟動(dòng)后,根據(jù)單板預(yù)置的內(nèi)核程序下載路徑登錄主控 板NCP的FTP服務(wù)端,下載內(nèi)核程序。上述方案中,所述單板的FTP客戶端啟動(dòng)包括單板上電啟動(dòng),由啟動(dòng)程序boot引 導(dǎo)FTP客戶端啟動(dòng),所述boot集成FTP驅(qū)動(dòng)協(xié)議。上述方案中,所述下載內(nèi)核程序之后,該方法進(jìn)一步包括單板加載內(nèi)核程序,啟 動(dòng)包括私有接口 S 口驅(qū)動(dòng)的最小系統(tǒng),通過S 口向NCP發(fā)送下載應(yīng)用程序及邏輯程序的請(qǐng) 求,所述請(qǐng)求中包含單板的相關(guān)信息,NCP接收所述請(qǐng)求,回復(fù)單板的應(yīng)用程序及邏輯程序 的下載路徑,單板根據(jù)下載路徑登錄FTP服務(wù)端下載應(yīng)用程序及邏輯程序。上述方案中,所述通過S 口向主控板NCP發(fā)送下載應(yīng)用程序及邏輯程序的請(qǐng)求之 后,該方法進(jìn)一步包括啟動(dòng)單板內(nèi)置的定時(shí)器,確定超過定時(shí)時(shí)間沒有收到NCP的回復(fù), 重新向NCP發(fā)送下載應(yīng)用程序及邏輯程序的請(qǐng)求。上述方案中,所述NCP接收所述請(qǐng)求,回復(fù)應(yīng)用程序及邏輯程序的下載路徑包括 NCP根據(jù)接收的請(qǐng)求查詢本地維護(hù)的單板請(qǐng)求列表,確定與其中任一個(gè)均不符,根據(jù)請(qǐng)求中 的單板的相關(guān)信息查詢本地保存的單板軟件列表,將與單板的相關(guān)信息相符的單板軟件下 載路徑添加到下載鏈表,NCP根據(jù)策略將下載鏈表中的下載路徑發(fā)送給單板。
本發(fā)明還提供了一種軟件下載的系統(tǒng),包括FTP客戶端,位于單板,用于啟動(dòng)后讀取預(yù)置在單板中的內(nèi)核程序下載路徑,根據(jù) 下載路徑登錄FTP服務(wù)端下載內(nèi)核程序;FTP服務(wù)端,位于NCP,用于向FTP客戶端下發(fā)內(nèi)核程序。上述方案中,該系統(tǒng)進(jìn)一步包括單板,用于上電后,通過boot啟動(dòng)FTP客戶端,所 述boot集成FTP驅(qū)動(dòng)協(xié)議。上述方案中,所述NCP,還用于接收下載應(yīng)用程序及邏輯程序的請(qǐng)求,向單板回復(fù) 應(yīng)用程序及邏輯程序的下載路徑;相應(yīng)的,所述單板還用于,加載內(nèi)核程序,啟動(dòng)包括S 口 驅(qū)動(dòng)的最小系統(tǒng),通過S 口向NCP發(fā)送下載應(yīng)用程序及邏輯程序的請(qǐng)求,接收NCP回復(fù)的下 載路徑,加載應(yīng)用程序及邏輯程序;所述請(qǐng)求包含單板的相關(guān)信息;所述FTP客戶端,用于 根據(jù)NCP回復(fù)給單板的下載路徑登錄NCP服務(wù)端,下載應(yīng)用程序及邏輯程序;所述FTP服務(wù) 端,用于向FTP客戶端下發(fā)應(yīng)用程序及邏輯程序。上述方案中,所述單板進(jìn)一步用于,發(fā)送下載應(yīng)用程序及邏輯程序的請(qǐng)求之后啟 動(dòng)內(nèi)置定時(shí)器,若超過定時(shí)時(shí)間還未收到NCP的回復(fù),重新向NCP發(fā)送下載應(yīng)用程序及邏輯 程序的請(qǐng)求。上述方案中,所述NCP具體用于,將所接收的下載應(yīng)用程序及邏輯程序的請(qǐng)求同 自身維護(hù)的單板請(qǐng)求列表比較,確定與其中任意一個(gè)均不符,根據(jù)所述請(qǐng)求中的單板的相 關(guān)信息查找本地保存的單板軟件列表,將與所述單板的相關(guān)信息對(duì)應(yīng)的單板軟件的下載路 徑添加到自身的下載鏈表中,根據(jù)策略將下載鏈表中的下載路徑發(fā)送給單板。由此可見,采用本發(fā)明所述的軟件下載的方法及系統(tǒng),單板可直接從NCP上下載 內(nèi)核程序,省去單板出廠時(shí)燒寫內(nèi)核程序的環(huán)節(jié),提高生產(chǎn)效率,并且可實(shí)現(xiàn)多線程下載, 提高軟件下載速度,減少單板升級(jí)時(shí)間。另外,本發(fā)明中還可以實(shí)現(xiàn)應(yīng)用程序及邏輯程序的 多線程下載,大大提高了多個(gè)單板升級(jí)軟件版本所需的時(shí)間,避免在NCP的處理隊(duì)列中積 壓大量的下載任務(wù)。
圖1為本發(fā)明實(shí)現(xiàn)下載內(nèi)核程序的流程示意圖;圖2為本發(fā)明實(shí)現(xiàn)下載應(yīng)用程序及邏輯程序的流程示意圖;圖3為本發(fā)明實(shí)現(xiàn)軟件下載的系統(tǒng)組成示意圖。
具體實(shí)施例方式本發(fā)明的基本思想是單板的文件傳輸(FTP)客戶端通過單板預(yù)置的內(nèi)核程序下 載路徑登錄NCP的FTP服務(wù)端,下載內(nèi)核程序。下面通過具體實(shí)施例及附圖對(duì)本發(fā)明進(jìn)行詳細(xì)說明,如圖1所示本發(fā)明提供的 軟件下載的方法,具體步驟如下步驟101,單板上電后由boot啟動(dòng)FTP客戶端;單板上電,boot啟動(dòng)同時(shí)引導(dǎo)單板的FTP客戶端啟動(dòng),所述boot內(nèi)置在單板中, 在單板上電后可直接啟動(dòng),所述FTP客戶端的驅(qū)動(dòng)協(xié)議集成在boot中。步驟102,單板通過FTP客戶端下載內(nèi)核程序;
FTP客戶端讀取單板中的內(nèi)核程序下載路徑,所述內(nèi)核程序下載路徑預(yù)置在單板 中,F(xiàn)TP客戶端根據(jù)讀取的內(nèi)核程序下載路徑登錄NCP的FTP服務(wù)端,下載內(nèi)核程序。步驟103,單板下載內(nèi)核程序,下載完畢后斷開鏈接。
NCP的FTP服務(wù)端向單板下發(fā)內(nèi)核程序,單板下載內(nèi)核程序,下載完畢后斷開下載 鏈接。其中,F(xiàn)TP服務(wù)端可同時(shí)向一個(gè)或多個(gè)FTP客戶端下發(fā)內(nèi)核程序。進(jìn)一步的,單板加載內(nèi)核程序后,啟動(dòng)包括S 口驅(qū)動(dòng)程序的最小系統(tǒng)后,可進(jìn)一步 下載單板的應(yīng)用程序及邏輯程序,所述S 口用于在單板與NCP之間傳輸數(shù)據(jù),其驅(qū)動(dòng)協(xié)議集 成在內(nèi)核程序中;所述內(nèi)核程序包括最小系統(tǒng)的驅(qū)動(dòng)程序;所述最小系統(tǒng)是指可使單板運(yùn) 行的最基本電路,單板下載應(yīng)用程序及邏輯程序的具體過程如圖2所示,包括步驟201,單板向NCP發(fā)送下載應(yīng)用程序及邏輯程序的請(qǐng)求;單板通過S 口向NCP發(fā)送下載應(yīng)用程序及邏輯程序的請(qǐng)求,所述請(qǐng)求中包括單板 的相關(guān)信息,所述單板的相關(guān)信息包括單板類型、單板地址等。單板判斷所發(fā)送的請(qǐng)求是否 超時(shí),所述判斷具體包括單板內(nèi)置定時(shí)器,發(fā)送下載應(yīng)用程序及邏輯程序的請(qǐng)求后啟動(dòng)定 時(shí)器開始計(jì)時(shí),若超過定時(shí)時(shí)間還沒收到NCP的回復(fù),則重新發(fā)送下載應(yīng)用程序及邏輯程 序的請(qǐng)求,否則不重新發(fā)送;所述定時(shí)器的計(jì)時(shí)時(shí)間長(zhǎng)度可根據(jù)需要進(jìn)行設(shè)置,例如5s。步驟202,NCP根據(jù)接收的下載應(yīng)用程序及邏輯程序的請(qǐng)求將應(yīng)用程序及邏輯程 序的下載路徑發(fā)送給單板;所述下載路徑包括應(yīng)用程序及邏輯程序的文件名和路徑;NCP收到單板發(fā)送的下載應(yīng)用程序及邏輯程序的請(qǐng)求后,判斷該請(qǐng)求是否為重復(fù) 請(qǐng)求,所述判斷包括NCP將接收的請(qǐng)求同自身維護(hù)的單板請(qǐng)求列表比較,若與其中一個(gè)相 符,說明該請(qǐng)求為重復(fù)請(qǐng)求,將該請(qǐng)求丟棄;否則,NCP將接收的請(qǐng)求添加到單板請(qǐng)求列表 并根據(jù)請(qǐng)求中的單板的相關(guān)信息查詢本地保存的單板軟件列表,這里,單板軟件列表中的 單板軟件指應(yīng)用程序及邏輯程序,所述單板軟件列表包括單板的類型、單板的地址以及應(yīng) 用程序及邏輯程序的下載路徑,NCP將找到的與單板的相關(guān)信息對(duì)應(yīng)的應(yīng)用程序及邏輯程 序的下載路徑添加到自身維護(hù)的下載鏈表中,該下載路徑對(duì)應(yīng)于NCP中的FTP服務(wù)端,NCP 根據(jù)策略將下載鏈表中的下載路徑發(fā)送給單板,所述策略可以根據(jù)需要設(shè)定,例如先添加 到下載鏈表的下載路徑先發(fā)送等。步驟203,單板根據(jù)下載路徑登錄FTP服務(wù)端。單板的FTP客戶端根據(jù)下載路徑登錄NCP的FTP服務(wù)端,下載應(yīng)用程序及邏輯程 序,下載完畢后向NCP發(fā)送下載成功的信息,斷開下載鏈接。FTP服務(wù)端可以同時(shí)向一個(gè)或 多個(gè)單板下發(fā)應(yīng)用程序及邏輯程序。本發(fā)明還提供了一種軟件下載的系統(tǒng),該系統(tǒng)包括一個(gè)或多個(gè)FTP客戶端301, FTP服務(wù)端302 ;FTP客戶端301,位于單板303,用于啟動(dòng)后讀取預(yù)置在單板303中的內(nèi)核程序下載 路徑,根據(jù)下載路徑登錄FTP服務(wù)端302下載內(nèi)核程序;FTP服務(wù)端302,位于NCP 304,用于向FTP客戶端301下發(fā)內(nèi)核程序;該系統(tǒng)進(jìn)一步包括單板303,用于上電后,通過boot啟動(dòng)FTP客戶端301,所述boot集成FTP驅(qū)動(dòng)協(xié) 議。NCP 304,還用于根據(jù)接收的下載應(yīng)用程序及邏輯程序的請(qǐng)求,查詢應(yīng)用程序及邏輯程序的下載路徑,發(fā)送給單板303 ;相應(yīng)的,單板303,還用于加載內(nèi)核程序,啟動(dòng)包括S 口驅(qū)動(dòng)的最小系統(tǒng),通過S 口 向NCP 304發(fā)送下載應(yīng)用程序及邏輯程序的請(qǐng)求,接收NCP 304發(fā)送的下載路徑,加載應(yīng)用 程序及邏輯程序;所述下載應(yīng)用程序及邏輯程序的請(qǐng)求中包括單板的相關(guān)信息,所述單板 的相關(guān)信息包括單板類型、單板地址等;所述S 口用于在單板303與NCP 304之間傳輸數(shù) 據(jù),其驅(qū)動(dòng)協(xié)議集成在內(nèi)核程序中;所述最小系統(tǒng)是指可使單板303運(yùn)行的最基本電路;FTP客戶端301,用于根據(jù)下載路徑登錄FTP服務(wù)端,下載應(yīng)用程序和邏輯程序; FTP服務(wù)端302,用于向FTP客戶端301下發(fā)應(yīng)用程序及邏輯程序;可向一個(gè)或多 個(gè)FTP客戶端301下發(fā)應(yīng)用程序及邏輯程序。NCP 304具體用于,將所接收的下載應(yīng)用程序及邏輯程序的請(qǐng)求同自身維護(hù)的單 板請(qǐng)求列表比較,與其中任意一個(gè)均不符,確定所接收的請(qǐng)求為不重復(fù)請(qǐng)求,將請(qǐng)求添加到 單板請(qǐng)求列表并根據(jù)請(qǐng)求中的單板的相關(guān)信息查找本地保存的單板軟件列表,這里,單板 軟件列表中的單板軟件指應(yīng)用程序及邏輯程序,所述單板軟件列表包括單板的類型、單板 的地址以及應(yīng)用程序及邏輯程序的下載路徑,將與所述單板的相關(guān)信息對(duì)應(yīng)的單板軟件的 下載路徑添加到自身的下載鏈表中,根據(jù)策略將下載鏈表中的下載路徑發(fā)送給單板303,所 述策略可以根據(jù)需要設(shè)定,例如先添加到下載鏈表的下載路徑先發(fā)送等。單板303進(jìn)一步用于,發(fā)送下載應(yīng)用程序及邏輯程序的請(qǐng)求后啟動(dòng)內(nèi)置定時(shí)器, 若超過定時(shí)時(shí)間還未收到NCP 304回復(fù)的下載路徑,重新向NCP 304發(fā)送應(yīng)用程序及邏輯 程序的請(qǐng)求,所述定時(shí)器的計(jì)時(shí)時(shí)間長(zhǎng)度時(shí)間可根據(jù)需要設(shè)置,例如5s。以上所述,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍,凡在 本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù) 范圍之內(nèi)。
權(quán)利要求
一種軟件下載的方法,其特征在于,所述方法包括單板的文件傳輸FTP客戶端啟動(dòng)后,根據(jù)單板預(yù)置的內(nèi)核程序下載路徑登錄主控板NCP的FTP服務(wù)端,下載內(nèi)核程序。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述單板的FTP客戶端啟動(dòng)包括單板上電啟動(dòng),由啟動(dòng)程序boot引導(dǎo)FTP客戶端啟動(dòng),所述boot集成FTP驅(qū)動(dòng)協(xié)議。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述下載內(nèi)核程序之后,該方法進(jìn)一 步包括單板加載內(nèi)核程序,啟動(dòng)包括私有接口 S 口驅(qū)動(dòng)的最小系統(tǒng),通過S 口向NCP發(fā)送下載 應(yīng)用程序及邏輯程序的請(qǐng)求,所述請(qǐng)求中包含單板的相關(guān)信息,NCP接收所述請(qǐng)求,回復(fù)單 板的應(yīng)用程序及邏輯程序的下載路徑,單板根據(jù)下載路徑登錄FTP服務(wù)端下載應(yīng)用程序及 邏輯程序。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述通過S口向主控板NCP發(fā)送下載應(yīng)用 程序及邏輯程序的請(qǐng)求之后,該方法進(jìn)一步包括啟動(dòng)單板內(nèi)置的定時(shí)器,確定超過定時(shí)時(shí)間沒有收到NCP的回復(fù),重新向NCP發(fā)送下載 應(yīng)用程序及邏輯程序的請(qǐng)求。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述NCP接收所述請(qǐng)求,回復(fù)應(yīng)用程序及 邏輯程序的下載路徑包括NCP根據(jù)接收的請(qǐng)求查詢本地維護(hù)的單板請(qǐng)求列表,確定與其中任一個(gè)均不符,根據(jù)請(qǐng) 求中的單板的相關(guān)信息查詢本地保存的單板軟件列表,將與單板的相關(guān)信息相符的單板軟 件下載路徑添加到下載鏈表,NCP根據(jù)策略將下載鏈表中的下載路徑發(fā)送給單板。
6.一種軟件下載的系統(tǒng),其特征在于,該系統(tǒng)包括FTP客戶端,位于單板,用于啟動(dòng)后讀取預(yù)置在單板中的內(nèi)核程序下載路徑,根據(jù)下載 路徑登錄FTP服務(wù)端下載內(nèi)核程序;FTP服務(wù)端,位于NCP,用于向FTP客戶端下發(fā)內(nèi)核程序。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,該系統(tǒng)進(jìn)一步包括單板,用于上電后,通過boot啟動(dòng)FTP客戶端,所述boot集成FTP驅(qū)動(dòng)協(xié)議。
8.根據(jù)權(quán)利要求6或7所述的系統(tǒng),其特征在于,所述NCP,還用于接收下載應(yīng)用程序及邏輯程序的請(qǐng)求,向單板回復(fù)應(yīng)用程序及邏輯程 序的下載路徑;相應(yīng)的,所述單板還用于,加載內(nèi)核程序,啟動(dòng)包括S 口驅(qū)動(dòng)的最小系統(tǒng),通過S 口向 NCP發(fā)送下載應(yīng)用程序及邏輯程序的請(qǐng)求,接收NCP回復(fù)的下載路徑,加載應(yīng)用程序及邏輯 程序;所述請(qǐng)求包含單板的相關(guān)信息;所述FTP客戶端,用于根據(jù)NCP回復(fù)給單板的下載路徑登錄NCP服務(wù)端,下載應(yīng)用程序 及邏輯程序;所述FTP服務(wù)端,用于向FTP客戶端下發(fā)應(yīng)用程序及邏輯程序。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,所述單板進(jìn)一步用于,發(fā)送下載應(yīng)用程序及邏輯程序的請(qǐng)求之后啟動(dòng)內(nèi)置定時(shí)器,若 超過定時(shí)時(shí)間還未收到NCP的回復(fù),重新向NCP發(fā)送下載應(yīng)用程序及邏輯程序的請(qǐng)求。
10.根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,所述NCP具體用于,將所接收的下載應(yīng)用程序及邏輯程序的請(qǐng)求同自身維護(hù)的單板請(qǐng)求列表比較,確定與其中任意一個(gè)均不符,根據(jù)所述請(qǐng)求中的單板的相關(guān)信息查找本地保 存的單板軟件列表,將與所述單板的相關(guān)信息對(duì)應(yīng)的單板軟件的下載路徑添加到自身的下 載鏈表中,根據(jù)策略將下載鏈表中的下載路徑發(fā)送給單板。
全文摘要
本發(fā)明公開了一種軟件下載的方法,包括單板上電,啟動(dòng)單板的文件傳輸FTP客戶端,F(xiàn)TP客戶端根據(jù)單板預(yù)置的內(nèi)核程序下載路徑登錄主控板NCP的FTP服務(wù)端,下載內(nèi)核程序。本發(fā)明還公開了一種軟件下載系統(tǒng),采用本發(fā)明所述的方法及系統(tǒng),可提高單板的生產(chǎn)效率,同時(shí)提高軟件下載速度,減少單板升級(jí)時(shí)間。
文檔編號(hào)H04L29/06GK101848108SQ201010186568
公開日2010年9月29日 申請(qǐng)日期2010年5月25日 優(yōu)先權(quán)日2010年5月25日
發(fā)明者李旻 申請(qǐng)人:中興通訊股份有限公司