專利名稱:基于以太網(wǎng)無(wú)源光網(wǎng)絡(luò)上行鏈路帶寬動(dòng)態(tài)分配方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及帶寬動(dòng)態(tài)分配方法和實(shí)現(xiàn)該方法的裝置,具體地,涉及千兆級(jí)的基于以太網(wǎng)無(wú)源光網(wǎng)絡(luò)(EPON)中實(shí)現(xiàn)上行鏈路帶寬的動(dòng)態(tài)分配方法和在該網(wǎng)絡(luò)的光線路終端內(nèi)實(shí)現(xiàn)上述方法的裝置。
背景技術(shù):
基于以太網(wǎng)的無(wú)源光網(wǎng)絡(luò)(EPON)是由一個(gè)位于局端的光線路終端設(shè)備(OLT)和若干個(gè)位于遠(yuǎn)端的光網(wǎng)絡(luò)單元(ONU)以及無(wú)源光分配網(wǎng)(ODN)組成,典型拓?fù)浣Y(jié)構(gòu)如圖1所示。其中ODN采用具有無(wú)源光分路器的無(wú)源光網(wǎng)絡(luò)(PON)結(jié)構(gòu),一根主干光纖通過(guò)無(wú)源光分路器(splitter)連接多根光纖,與多個(gè)ONU通信。
在ODN內(nèi)兩個(gè)方向傳輸?shù)墓庑盘?hào)分別位于兩個(gè)波長(zhǎng)上,其中從OLT到ONU方向上傳播的光信號(hào)為下行鏈路方向,采用廣播方式傳送,從ONU到OLT方向上傳播的光信號(hào)為上行鏈路方向,采用時(shí)分多址(TDMA)方式傳送。
在圖1所示的光傳輸系統(tǒng)中,EPON內(nèi)的所有信號(hào)都是在OLT和ONU之間進(jìn)行傳輸。在EPON系統(tǒng)下行方向上,EPON是一個(gè)廣播媒質(zhì),由OLT發(fā)出的以太網(wǎng)幀通過(guò)一個(gè)1∶N的無(wú)源光分路器(splitter)到達(dá)每一個(gè)ONU。ONU只接收目的地是本地的數(shù)據(jù)幀并交付給用戶終端設(shè)備,將其它數(shù)據(jù)幀丟棄。在EPON系統(tǒng)上行方向上,EPON又可以看作是多點(diǎn)到點(diǎn)的網(wǎng)絡(luò)。多個(gè)ONU共享一條上行信道,因此需要特殊的帶寬仲裁機(jī)制來(lái)調(diào)度ONU的上行發(fā)送,以避免各個(gè)ONU之間的數(shù)據(jù)沖突。
在具體實(shí)現(xiàn)上很容易看到,如果由OLT對(duì)ONU靜態(tài)地分配帶寬,可以很簡(jiǎn)易地實(shí)現(xiàn)各個(gè)ONU之間的數(shù)據(jù)無(wú)沖突接入的。但是如果考慮到以太網(wǎng)中的數(shù)據(jù)/視頻流具有很強(qiáng)的突發(fā)性,EPON中如果用帶寬靜態(tài)分配,對(duì)數(shù)據(jù)通信這樣的變速率業(yè)務(wù)很不適合,如按峰值速率靜態(tài)分配帶寬,則整個(gè)系統(tǒng)帶寬很快就被全部占用,系統(tǒng)整體的帶寬利用率很低。由此可見(jiàn),應(yīng)當(dāng)由OLT對(duì)ONU動(dòng)態(tài)分配帶寬,以便使系統(tǒng)帶寬利用率大幅度提高。
動(dòng)態(tài)帶寬分配就是實(shí)時(shí)地(ms/s量級(jí))改變EPON的各ONU上行帶寬的機(jī)制,通過(guò)DBA,我們可以根據(jù)ONU突發(fā)業(yè)務(wù)的要求,動(dòng)態(tài)調(diào)節(jié)各個(gè)ONU的帶寬來(lái)提高PON上行帶寬效率。由于能更有效地利用帶寬,網(wǎng)絡(luò)管理員可以在一個(gè)已有的PON上增加更多用戶,終端用戶也可以享有更好的服務(wù),如用戶可以用到的帶寬峰值可以超過(guò)傳統(tǒng)的固定分配方式的帶寬。根據(jù)EPON的特點(diǎn)及IEEE 802.3ah、ITU-TG.983建議,可以得出對(duì)動(dòng)態(tài)帶寬分配設(shè)計(jì)的具體要求有業(yè)務(wù)透明、高帶寬利用率、低時(shí)延和低時(shí)延抖動(dòng)、公平分配帶寬、健壯性好、實(shí)時(shí)性強(qiáng)。根據(jù)現(xiàn)有的文獻(xiàn)資料記載,采用動(dòng)態(tài)帶寬分配(DBA)算法,帶寬利用率最高可達(dá)80%,而沒(méi)有采用DBA算法時(shí)的帶寬利用率卻只有40%,并且平均傳輸時(shí)延在不采用DBA時(shí)一般為100ms,而用DBA時(shí)通常小于10ms。
目前在EPON中所采用的上行鏈路動(dòng)態(tài)帶寬分配方案或算法,一般為分布式控制和集中控制兩類。由于分布式實(shí)現(xiàn)起來(lái)比較復(fù)雜,業(yè)界絕大部分廠商是利用集中控制方式的。集中控制方式的一種最常見(jiàn)模式是基于GATE/REPORT機(jī)制。在這種機(jī)制中,無(wú)論采用何種DBA算法,一般都周期性地計(jì)算分配給ONU的帶寬,例如PASSAVE公司所發(fā)布的EPON芯片,各個(gè)廠家芯片的區(qū)別僅在于帶寬分配周期是否可變。
圖2為基于GATE/REPORT機(jī)制的上行帶寬動(dòng)態(tài)分配方案原理圖。一個(gè)帶寬分配周期可以分為兩個(gè)階段REPORT消息收集階段和帶寬授權(quán)階段。在REPORT消息收集階段中,OLT要求ONU發(fā)送上行帶寬需求報(bào)告,ONU將所需要上行帶寬,例如根據(jù)ONU中用戶數(shù)據(jù)排隊(duì)情況估計(jì)的需要帶寬,通過(guò)REPORT消息向OLT報(bào)告。在帶寬授權(quán)階段,OLT對(duì)收集到的REPORT消息分析后,再根據(jù)某種DBA算法對(duì)上行帶寬的分配狀況進(jìn)行調(diào)整,并通過(guò)GATE消息將調(diào)整后的上行帶寬分配信息告訴給ONU。
在目前所使用的GATE/REPORT機(jī)制中,OLT通過(guò)ONU發(fā)送的上行REPORT消息來(lái)了解ONU中數(shù)據(jù)包排隊(duì)的情況,然后做出帶寬分配的決定。這種方案要求所有的ONU都必須對(duì)自己的排隊(duì)狀況進(jìn)行實(shí)時(shí)準(zhǔn)確的監(jiān)控,一旦某一個(gè)ONU的狀態(tài)報(bào)告功能失效,或者報(bào)告信息在傳輸過(guò)程中丟失,就會(huì)影響到整個(gè)系統(tǒng)上行帶寬分配的準(zhǔn)確性。而且REPORT消息的產(chǎn)生,傳輸和收集處理都需要占用時(shí)間,這也會(huì)影響到帶寬調(diào)整的響應(yīng)速度,降低網(wǎng)絡(luò)性能。
這種機(jī)制對(duì)系統(tǒng)中所有ONU設(shè)備的硬件處理能力要求非常高。如果某一個(gè)ONU的硬件發(fā)生故障,或者局端設(shè)備丟棄了某些ONU的報(bào)告信息時(shí),會(huì)影響整個(gè)系統(tǒng)上行帶寬分配的響應(yīng)速度和準(zhǔn)確度。而且這種機(jī)制容易被惡意用戶所利用,做虛假的帶寬請(qǐng)求報(bào)告,過(guò)渡占用上行帶寬,造成帶寬分配的不公平。而且,由于不同的算法可能需要的參數(shù)不同,因此REPORT消息攜帶的內(nèi)容或格式要受到算法的限制,容易造成不同廠家的遠(yuǎn)端設(shè)備所發(fā)送REPORT消息內(nèi)容和格式不同。這就影響了不同廠家設(shè)備的互連互通。
圖3為PASSAVE公司的EPON芯片采用蘇格拉底(Socrates)算法(該算法由NTT公司提出)時(shí),就要求ONU產(chǎn)生該廠家自定義的REPORT幀格式的例子。使用該算法不要求ONU報(bào)告其每一個(gè)優(yōu)先級(jí)隊(duì)列的總長(zhǎng)度,而是對(duì)ONU中每一個(gè)優(yōu)先級(jí)隊(duì)列都設(shè)置了一個(gè)刻度線(watermark),并要求ONU分別報(bào)告各優(yōu)先級(jí)隊(duì)列中在刻度線以上和以下的隊(duì)列長(zhǎng)度。因此,REPORT消息格式必須從圖4A所示的普通REPORT消息格式改變?yōu)閳D4B所示符合蘇格拉底算法的REPORT消息特殊格式。
因此,需要一種不依賴ONU設(shè)備的帶寬需求報(bào)告并且不受各個(gè)廠家的REPORT消息格式限制的帶寬動(dòng)態(tài)分配方法。
發(fā)明內(nèi)容
本發(fā)明的目的就是提出了一種對(duì)基于以太網(wǎng)無(wú)源光網(wǎng)絡(luò)上行鏈路帶寬進(jìn)行動(dòng)態(tài)分配的方法以及實(shí)現(xiàn)該方法的裝置,可以克服現(xiàn)有技術(shù)方法對(duì)光網(wǎng)絡(luò)單元(ONU)報(bào)告的依賴和對(duì)REPORT消息格式的嚴(yán)格限制問(wèn)題,并簡(jiǎn)化了光網(wǎng)絡(luò)單元設(shè)備的功能。
本發(fā)明給出了對(duì)所有ONU的上行流量進(jìn)行實(shí)時(shí)統(tǒng)計(jì)和采樣的光線路終端設(shè)備的硬件裝置,同時(shí)還給出了以此裝置為基礎(chǔ)的兩種基于流量統(tǒng)計(jì)的帶寬分配算法比例加權(quán)算法和帶寬利用率調(diào)整算法。使用本發(fā)明中給出的硬件裝置和算法,可以不受遠(yuǎn)端設(shè)備的性能限制,不需要依賴上行REPORT消息所報(bào)告的信息,因而可以忽略REPORT消息格式或內(nèi)容上的差異。通過(guò)局端設(shè)備OLT實(shí)時(shí)統(tǒng)計(jì)所有在線ONU所發(fā)送的上行流量大小,周期性地對(duì)統(tǒng)計(jì)情況進(jìn)行采樣,就可以根據(jù)采樣結(jié)果再采取比例加權(quán)算法或帶寬利用率調(diào)整算法,及時(shí)地調(diào)整上行帶寬的分配情況。不僅可以提高上行帶寬動(dòng)態(tài)調(diào)整的響應(yīng)速度,還可以根據(jù)遠(yuǎn)端設(shè)備上行業(yè)務(wù)流大小或上行帶寬利用率的大小來(lái)分配遠(yuǎn)端設(shè)備所應(yīng)得到的上行帶寬,還能防止惡意用戶通過(guò)虛假帶寬需求報(bào)告過(guò)量占用上行帶寬而對(duì)網(wǎng)絡(luò)資源惡意侵占,有效提高網(wǎng)絡(luò)性能。并且支持不同廠家設(shè)備的兼容,保護(hù)了運(yùn)營(yíng)商和用戶的投資成本。由于不需要遠(yuǎn)端設(shè)備報(bào)告帶寬需求信息,因而可以簡(jiǎn)化遠(yuǎn)端設(shè)備的硬件和軟件功能,降低遠(yuǎn)端設(shè)備成本,推動(dòng)光纖到戶的進(jìn)程。這在具有眾多家庭或個(gè)人用戶的接入網(wǎng)環(huán)境中是非常具有競(jìng)爭(zhēng)力的。本發(fā)明方法所采用的采樣周期是可配可調(diào)的,可以實(shí)時(shí)地反映網(wǎng)絡(luò)上行流量大小或擁塞情況。
本發(fā)明采用了兩種動(dòng)態(tài)帶寬分配(DBA)算法比例加權(quán)算法和帶寬利用率調(diào)整算法。前者是局端設(shè)備根據(jù)每一個(gè)ONU在單位時(shí)間內(nèi)的上行業(yè)務(wù)量,占總上行流量的比例,來(lái)分配該ONU所贏得的帶寬份額;后者是根據(jù)每一個(gè)ONU的上行帶寬利用率的大小來(lái)迅速的調(diào)整分配給ONU的上行帶寬。使得網(wǎng)絡(luò)性能保持在最佳狀態(tài)。另外,本發(fā)明中給出的硬件裝置還可以支持其他的DBA算法,具有很強(qiáng)的可擴(kuò)展性。
本發(fā)明的一種對(duì)基于以太網(wǎng)無(wú)源光網(wǎng)絡(luò)上行鏈路帶寬的動(dòng)態(tài)分配方法,該方法包括對(duì)光線路終端設(shè)置帶寬分配周期;在帶寬分配周期內(nèi)由光線路終端對(duì)所連接的所有光網(wǎng)絡(luò)單元向光線路終端傳輸?shù)纳闲墟溌窋?shù)據(jù)幀的長(zhǎng)度以16比特為單位分別進(jìn)行統(tǒng)計(jì);以比例加權(quán)算法計(jì)算分配帶寬,即將所有光網(wǎng)絡(luò)單元傳輸給光線路終端的全部數(shù)據(jù)幀長(zhǎng)度求和,以計(jì)算整個(gè)上行鏈路傳輸數(shù)據(jù)幀的總長(zhǎng)度;計(jì)算出每個(gè)光網(wǎng)絡(luò)單元傳輸給光線路終端的上行鏈路數(shù)據(jù)幀的長(zhǎng)度;以每個(gè)光網(wǎng)絡(luò)單元傳輸給光線路終端的數(shù)據(jù)幀長(zhǎng)度除以所有光網(wǎng)絡(luò)單元傳輸給光線路終端的全部數(shù)據(jù)幀總長(zhǎng)度,獲得每個(gè)光網(wǎng)絡(luò)單元所傳輸數(shù)據(jù)幀占所有光網(wǎng)絡(luò)單元所傳輸數(shù)據(jù)幀的比例;將光線路終端總上行鏈路帶寬按照每個(gè)光網(wǎng)絡(luò)單元所傳輸數(shù)據(jù)幀占所有光網(wǎng)絡(luò)單元所傳輸數(shù)據(jù)幀的比例分配給每個(gè)光網(wǎng)絡(luò)單元;分配給每個(gè)光網(wǎng)絡(luò)單元的帶寬不得低于每個(gè)光網(wǎng)絡(luò)單元的規(guī)定最小帶寬和不得高于每個(gè)光網(wǎng)絡(luò)單元的規(guī)定最大帶寬;每個(gè)光網(wǎng)絡(luò)單元按照光線路終端所分配的上行鏈路帶寬向光線路終端傳輸數(shù)據(jù)幀。
本發(fā)明的另一種對(duì)基于以太網(wǎng)無(wú)源光網(wǎng)絡(luò)上行鏈路帶寬的動(dòng)態(tài)分配方法,該方法包括對(duì)光線路終端設(shè)置帶寬分配周期;在帶寬分配周期內(nèi)由光線路終端對(duì)所連接的所有光網(wǎng)絡(luò)單元傳輸向光線路終端傳輸?shù)纳闲墟溌窋?shù)據(jù)幀的長(zhǎng)度以16比特為單位分別進(jìn)行統(tǒng)計(jì);以帶寬利用率算法計(jì)算分配帶寬,即由光線路終端計(jì)算出每個(gè)光網(wǎng)絡(luò)單元當(dāng)前上行鏈路帶寬可以容納的數(shù)據(jù)幀長(zhǎng)度;將統(tǒng)計(jì)出的每個(gè)光網(wǎng)絡(luò)單元實(shí)際傳輸數(shù)據(jù)幀長(zhǎng)度除以每個(gè)光網(wǎng)絡(luò)單元當(dāng)前上行鏈路帶寬可以容納的數(shù)據(jù)幀長(zhǎng)度,獲得每個(gè)光網(wǎng)絡(luò)單元的帶寬利用率;將每個(gè)光網(wǎng)絡(luò)單元的實(shí)際帶寬利用率與預(yù)先設(shè)置的帶寬利用率上、下限閾值進(jìn)行比較,如果某個(gè)光網(wǎng)絡(luò)單元實(shí)際統(tǒng)計(jì)的帶寬利用率高于預(yù)先設(shè)置的帶寬利用率上限則提高分配給該光網(wǎng)絡(luò)單元的上行鏈路帶寬一個(gè)預(yù)定增量,如果某個(gè)光網(wǎng)絡(luò)單元實(shí)際統(tǒng)計(jì)的帶寬利用率低于預(yù)先設(shè)置的帶寬利用率下限則降低分配給該光網(wǎng)絡(luò)單元的上行鏈路帶寬一個(gè)預(yù)定增量,如果某個(gè)光網(wǎng)絡(luò)單元實(shí)際統(tǒng)計(jì)的帶寬利用率高于預(yù)先設(shè)置的帶寬利用率下限而低于預(yù)先設(shè)置的帶寬利用率上限則保持原來(lái)分配給該光網(wǎng)絡(luò)單元的上行鏈路帶寬;每個(gè)光網(wǎng)絡(luò)單元按照光線路終端所分配的上行鏈路帶寬向光線路終端傳輸數(shù)據(jù)幀。
本發(fā)明的一種位于基于以太網(wǎng)無(wú)源光網(wǎng)絡(luò)光線路終端中對(duì)上行鏈路帶寬進(jìn)行動(dòng)態(tài)分配的裝置,該裝置包括采樣周期定時(shí)器,用于設(shè)置對(duì)所有光網(wǎng)絡(luò)單元進(jìn)行帶寬分配的周期,以所設(shè)置的該周期統(tǒng)計(jì)所有光網(wǎng)絡(luò)單元的實(shí)際傳輸數(shù)據(jù)幀長(zhǎng)度,并以該周期計(jì)算所有光網(wǎng)絡(luò)單元應(yīng)當(dāng)分配的帶寬;上行流量統(tǒng)計(jì)模塊,用于對(duì)光線路終端所連接的每個(gè)光網(wǎng)絡(luò)單元的上行流量數(shù)據(jù)幀長(zhǎng)度進(jìn)行統(tǒng)計(jì);統(tǒng)計(jì)信息采樣模塊,用于按照上述設(shè)置周期對(duì)上行流量統(tǒng)計(jì)模塊的統(tǒng)計(jì)數(shù)據(jù)進(jìn)行采樣;帶寬分配算法模塊,用于根據(jù)預(yù)先選擇的特定算法,利用統(tǒng)計(jì)信息采樣模塊所提供的數(shù)據(jù)計(jì)算出每個(gè)光網(wǎng)絡(luò)單元應(yīng)當(dāng)被分配的上行鏈路帶寬;授權(quán)對(duì)象參數(shù)表,存儲(chǔ)統(tǒng)計(jì)信息采樣模塊所統(tǒng)計(jì)的數(shù)據(jù)和帶寬分配算法模塊所計(jì)算出的每個(gè)光網(wǎng)絡(luò)單元分配上行鏈路帶寬;帶寬分配圖樣輸出模塊,用于從授權(quán)對(duì)象參數(shù)表中提出對(duì)所有光網(wǎng)絡(luò)單元的帶寬分配圖樣,并將所述帶寬分配圖樣傳輸給帶寬分配表;帶寬分配表,用于存儲(chǔ)所有光網(wǎng)絡(luò)單元的帶寬分配數(shù)據(jù),并將該帶寬分配數(shù)據(jù)組裝成GATE消息幀,發(fā)送給所有光網(wǎng)絡(luò)單元。
在本發(fā)明的上述裝置中,采樣周期定時(shí)器、統(tǒng)計(jì)信息采樣模塊、帶寬分配算法模塊、授權(quán)對(duì)象參數(shù)表、帶寬分配圖樣輸出模塊由現(xiàn)場(chǎng)可編程器件內(nèi)部嵌入的CPU通過(guò)運(yùn)行相應(yīng)功能的程序?qū)崿F(xiàn),而上行流量統(tǒng)計(jì)模塊、帶寬分配表由現(xiàn)場(chǎng)可編程器件實(shí)現(xiàn)。
在本發(fā)明的上述裝置中,帶寬分配算法模塊利用比例加權(quán)算法計(jì)算分配帶寬,或帶寬分配算法模塊利用帶寬利用率算法計(jì)算分配帶寬。
本發(fā)明克服了EPON中現(xiàn)有的基于GATE/REPORT機(jī)制來(lái)進(jìn)行動(dòng)態(tài)帶寬分配的缺點(diǎn)或不足。首先,帶寬分配的性能不依賴于ONU的報(bào)告,減少了ONU的功能,降低了ONU的成本。在OLT對(duì)ONU的比例為1∶N的情況下,ONU成本的降低,對(duì)整個(gè)系統(tǒng)總成本乃至每個(gè)用戶成本的降低起著至關(guān)重要的作用,為最終實(shí)現(xiàn)FTTH提供了便利條件;第二,OLT能夠根據(jù)對(duì)ONU上行流量的計(jì)數(shù),實(shí)時(shí)地掌握網(wǎng)絡(luò)擁塞程度或帶寬利用率,然后根據(jù)每一個(gè)ONU的上行流量大小或帶寬利用率的大小來(lái)對(duì)上行帶寬進(jìn)行調(diào)整。目前EPON的傳輸速率為1.25Gbit/s,OLT中對(duì)每一個(gè)ONU的上行信號(hào)流量的統(tǒng)計(jì)完全由硬件完成,能夠適應(yīng)高速系統(tǒng)對(duì)上行帶寬分配的響應(yīng)速度和準(zhǔn)確度的要求。
本發(fā)明中的硬件裝置除了能支持所提出的兩種基于流量統(tǒng)計(jì)的DBA算法外,還可以支持其他的基于流量統(tǒng)計(jì)的DBA算法。此外還可以應(yīng)用于具有多個(gè)業(yè)務(wù)優(yōu)先級(jí)的系統(tǒng)中。OLT可以根據(jù)以太網(wǎng)包的VLAN標(biāo)記,來(lái)統(tǒng)計(jì)每一個(gè)ONU的上行信號(hào)中不同優(yōu)先級(jí)的業(yè)務(wù)流量。因此,本發(fā)明所提出的上行帶寬分配方法和裝置,具有非常好的可擴(kuò)展性。
圖1是基于以太網(wǎng)無(wú)源光網(wǎng)絡(luò)的典型拓?fù)浣Y(jié)構(gòu)示意圖;圖2是基于GATE/REPORT機(jī)制的上行鏈路帶寬分配方法原理圖;圖3為PASSAVE公司的EPON芯片采用蘇格拉底(Socartes)算法的刻度線示意圖;圖4A為普通的REPORT消息格式實(shí)例;圖4B為采用蘇格拉底(Socartes)算法所定義的特殊REPORT消息格式;圖5實(shí)現(xiàn)本發(fā)明的上行鏈路帶寬動(dòng)態(tài)分配方法所使用裝置的模塊結(jié)構(gòu)示意圖;圖6為圖5中上行流量統(tǒng)計(jì)模塊的輸入/輸出信號(hào)示意圖;圖7為圖6中上行流量統(tǒng)計(jì)模塊內(nèi)部各個(gè)具體功能模塊的示意圖;圖8為嵌入式CPU與現(xiàn)場(chǎng)可編程器件的其它硬件之間的接口結(jié)構(gòu)示意圖;圖9為現(xiàn)場(chǎng)可編程器件的嵌入式CPU執(zhí)行主程序與本發(fā)明帶寬動(dòng)態(tài)分配程序之間的關(guān)系;圖10為現(xiàn)場(chǎng)可編程器件的嵌入式CPU執(zhí)行本發(fā)明的帶寬動(dòng)態(tài)分配程序的簡(jiǎn)化流程圖;圖11為應(yīng)用本發(fā)明方法和裝置的EPON系統(tǒng)試驗(yàn)網(wǎng)的組網(wǎng)圖。
具體實(shí)施例方式
下面結(jié)合附圖詳細(xì)描述本發(fā)明的方法和裝置。
本發(fā)明中所描述的基于流量統(tǒng)計(jì)的上行帶寬分配方法和裝置,通過(guò)統(tǒng)計(jì)局端設(shè)備OLT上接收到的每個(gè)ONU發(fā)出的上行流量的大小,來(lái)決定給ONU分配的上行帶寬的大小。整個(gè)技術(shù)方案可以分為兩大部分,一部分是OLT中對(duì)ONU的上行流量統(tǒng)計(jì)和計(jì)算帶寬分配的裝置,另一部分是在此裝置基礎(chǔ)上,運(yùn)行的動(dòng)態(tài)帶寬分配方法。
圖5為實(shí)現(xiàn)本發(fā)明的上行鏈路帶寬動(dòng)態(tài)分配方法所使用裝置的模塊結(jié)構(gòu)示意圖。圖5中,虛線之上的各種功能模塊由嵌入式CPU所運(yùn)行各個(gè)功能程序?qū)崿F(xiàn)(在本案例中采用的是FPGA內(nèi)嵌的CPU,商業(yè)名稱為NIOS)。而圖5中虛線之下的各個(gè)功能模塊是利用現(xiàn)場(chǎng)可編程器件的硬件支持層實(shí)現(xiàn)。在本發(fā)明中采用的是周期性的帶寬分配方法,分配周期由采樣定時(shí)器來(lái)確定,采樣定時(shí)器的初始值可以根據(jù)需要靈活設(shè)置。動(dòng)態(tài)帶寬分配(DBA)算法程序在采樣定時(shí)器的驅(qū)動(dòng)下,周期性采樣上行流量統(tǒng)計(jì)模塊中的隨機(jī)存儲(chǔ)器(RAM),然后采用本發(fā)明中所提出的基于統(tǒng)計(jì)的DBA算法,計(jì)算本周期內(nèi)的帶寬分配圖樣,并輸出到帶寬分配表中。硬件支持層由FPGA實(shí)現(xiàn)。該層主要功能是采用本發(fā)明中所提出的上行流量統(tǒng)計(jì)裝置,收集每一個(gè)在線ONU的上行流量的統(tǒng)計(jì)信息,供DBA程序查詢。該層還提供接口,接收來(lái)自DBA算法模塊的運(yùn)算結(jié)果,組裝成GATE幀,發(fā)送給ONU。在硬件支持層中的帶寬分配表模塊是負(fù)責(zé)管理和發(fā)放帶寬分配數(shù)據(jù)模塊。
圖6表示圖5中上行流量統(tǒng)計(jì)模塊的輸入/輸出信號(hào)示意圖。下面詳細(xì)描述該上行流量統(tǒng)計(jì)模塊的工作原理。OLT中上行流量統(tǒng)計(jì)裝置由現(xiàn)場(chǎng)可編程器件(FPGA)以硬件方式實(shí)現(xiàn)。OLT中的該上行流量統(tǒng)計(jì)電路的功能是對(duì)采樣周期內(nèi)每一個(gè)ONU發(fā)送的多點(diǎn)控制協(xié)議(MPCP)幀除外的上行數(shù)據(jù)幀長(zhǎng)度以16比特為單位進(jìn)行分別計(jì)數(shù),幫助OLT判斷在過(guò)去的采樣周期內(nèi),每一個(gè)ONU上行的流量大小,并在此基礎(chǔ)上實(shí)現(xiàn)帶寬的動(dòng)態(tài)分配。
圖7為圖6中上行流量統(tǒng)計(jì)模塊內(nèi)部各個(gè)具體功能模塊的示意圖。參照?qǐng)D7,該電路主要由一個(gè)寬為32比特、長(zhǎng)度為64的雙口RAM和一個(gè)加法器組成。該雙口RAM通過(guò)ONU的標(biāo)識(shí)符邏輯鏈路標(biāo)識(shí)(LLID)尋址。當(dāng)接收到MPCP幀以外的一個(gè)上行數(shù)據(jù)幀并經(jīng)過(guò)循環(huán)冗余校驗(yàn)(CRC)校驗(yàn)后,就從雙口RAM中取出與該幀的LLID對(duì)應(yīng)的值,經(jīng)過(guò)加法運(yùn)算后,將結(jié)果再存入RAM的對(duì)應(yīng)單元中。RAM中每一個(gè)單元的值在采樣電路采樣后就清零。
雙口RAM還通過(guò)數(shù)據(jù)總線和地址總線與廠商名稱為NIOS的CPU相連,該NIOS是嵌入在FPGA中的CPU。CPU將在采樣周期定時(shí)器的驅(qū)動(dòng)下,周期性地對(duì)雙口RAM中的數(shù)據(jù)進(jìn)行采樣。同樣CPU也是通過(guò)ONU的LLID來(lái)尋址RAM中對(duì)應(yīng)單元,獲得各個(gè)ONU的上行流量統(tǒng)計(jì)信息。圖6和圖7中所使用的輸入/輸出信號(hào)標(biāo)記如下llid[5:0]與接收到的上行數(shù)據(jù)幀(不包括MPCP幀)相對(duì)應(yīng)的LLID,該LLID標(biāo)識(shí)了數(shù)據(jù)幀的源ONU,作為雙口RAM的尋址信號(hào)。
count_cn加法電路的使能信號(hào)。當(dāng)上行接受模塊接收完一個(gè)有效的上行數(shù)據(jù)幀時(shí),該信號(hào)觸發(fā)10比特鎖存器,將幀接收模塊送來(lái)的Fhub_length存放到10比特鎖存器中,作為加法器的一個(gè)輸入。同時(shí)通過(guò)片選信號(hào)(llid[5:0])找到RAM中對(duì)應(yīng)條目,鎖存到32比特鎖存器中,作為加法器的另一個(gè)輸入。
Fhub_length[9:0]從上行幀接收模塊的包長(zhǎng)度計(jì)數(shù)模塊得到的上行數(shù)據(jù)幀的有效長(zhǎng)度,以16比特為單位。
Fnios_readen來(lái)自CPU(NIOS)的讀使能信號(hào)。該信號(hào)有效后,Tnios_colength[19:0]數(shù)據(jù)線上輸出雙口RAM的中通過(guò)Fnios_addr尋址的單元中的數(shù)據(jù)。
Fnios addr[5:0]與CPU(NIOS)相連的地址線。CPU(NIOS)想要讀取某一個(gè)在線ONU的流量統(tǒng)計(jì)情況時(shí),就通過(guò)這個(gè)地址線輸出該ONU的LLID值,在雙口RAM中查找相應(yīng)單元中的數(shù)值。
Tnios_colength[19:0]與CPU(NIOS)相連的數(shù)據(jù)線,CPU(NIOS)可以通過(guò)該數(shù)據(jù)線讀取樣雙口RAM中的數(shù)值圖7中上行流量統(tǒng)計(jì)模塊內(nèi)部各個(gè)組成部分的工作原理如下上行流量統(tǒng)計(jì)處理模塊中有一個(gè)寬為32比特,長(zhǎng)為64的雙口RAM。雙口RAM中每一個(gè)單元對(duì)應(yīng)一個(gè)ONU(最多64個(gè)ONU),通過(guò)ONU的標(biāo)識(shí)符LLID尋址。其中存放有對(duì)應(yīng)的ONU在單位時(shí)間(兩次采樣間隔)內(nèi)到達(dá)OLT的累計(jì)幀長(zhǎng)度,以16比特計(jì)數(shù)。當(dāng)上行接收模塊接收完一個(gè)有效的上行數(shù)據(jù)幀時(shí),將接收模塊統(tǒng)計(jì)到的該幀的有效長(zhǎng)度存放到10比特鎖存器中,作為加法器的一個(gè)輸入;同時(shí)通過(guò)與這個(gè)幀對(duì)應(yīng)的LLID,尋址雙口RAM中相應(yīng)的單元。一旦在RAM中尋找到相應(yīng)的單元后,將該單元中的內(nèi)容鎖存到32比特的鎖存器中,作為加法器的一個(gè)另輸入。加法器完成了加法操作后,將結(jié)果仍然存入到RAM中,地址不變。
CPU可以在采樣周期定時(shí)器的驅(qū)動(dòng)下,周期性地查詢雙口RAM中的值,CPU要讀取RAM中某一個(gè)單元的內(nèi)容時(shí),要通過(guò)Fnios_addr[5:0]來(lái)尋址(地址線上的值為ONU的LLID),并使能讀操作,即使Fnios_read_en有效,才能通過(guò)Tnios_colength[19∶0]數(shù)據(jù)線來(lái)讀取RAM中的內(nèi)容。當(dāng)CPU完成一次讀操作后,對(duì)應(yīng)的RAM單元中的內(nèi)容自動(dòng)清零。
圖8表示圖5中嵌入式CPU與現(xiàn)場(chǎng)可編程器件的硬件支持層之間的接口結(jié)構(gòu)。圖8中,CPU為設(shè)計(jì)的主要部分,包括外部存儲(chǔ)器接口、2個(gè)用戶接口電路、1個(gè)并行接口PIO。其中外部存儲(chǔ)器接口為通常的NIOS接口,SOPC Builder缺省情況下自動(dòng)生成,主要包括地址線、數(shù)據(jù)線以及各種控制線等。該接口用于連接外部RAM和外部Flash。
用戶接口電路1用于連接帶寬配置模塊(BWA)。為了與外部接口,在外部設(shè)計(jì)了接口模塊帶寬寫(xiě)模塊和帶寬讀模塊。帶寬寫(xiě)模塊用于配置64個(gè)帶寬寄存器;帶寬讀模塊用于讀取配置的值,以檢驗(yàn)配置的正確性。兩個(gè)模塊都是將CPU輸出的地址線、數(shù)據(jù)線以及控制線等映射到64個(gè)寄存器地址。用戶接口電路完成對(duì)上行流量統(tǒng)計(jì)模塊的讀寫(xiě)功能,其結(jié)構(gòu)和原理同用戶接口電路1是一樣的。PIO1是普通的并行外設(shè)接口,用于讀入ONU的在線信息。
圖9表示由嵌入式CPU運(yùn)行的代表本發(fā)明帶寬動(dòng)態(tài)分配方法的一部分功能程序(圖9中概括標(biāo)記為DBA程序)與該CPU運(yùn)行其它程序之間的關(guān)系。從圖9中可見(jiàn),在系統(tǒng)上電或復(fù)位后,主程序負(fù)責(zé)初始化授權(quán)對(duì)象參數(shù)表,而本發(fā)明方法的帶寬動(dòng)態(tài)分配(DBA)程序作為一個(gè)中斷函數(shù),在采樣周期定時(shí)器驅(qū)動(dòng)模塊產(chǎn)生定時(shí)器中斷時(shí),被主程序調(diào)用。
圖10為本發(fā)明的部分功能程序(DBA程序)的流程圖,其中算法函數(shù)1即為本發(fā)明所提出的比例加權(quán)算法,算法函數(shù)2即為本發(fā)明所提出的帶寬利用率調(diào)整算法。
圖5中的CPU執(zhí)行的本發(fā)明程序中各個(gè)功能模塊,例如統(tǒng)計(jì)信息采樣模塊、帶寬分配算法模塊、帶寬分配圖樣輸出模塊是相互獨(dú)立的,它們之間的聯(lián)系是通過(guò)授權(quán)對(duì)象參數(shù)表建立起來(lái)的。授權(quán)對(duì)象參數(shù)表的結(jié)構(gòu)見(jiàn)表1。這個(gè)表存放所有已經(jīng)注冊(cè)的授權(quán)實(shí)體的相關(guān)參數(shù),如LLID、注冊(cè)標(biāo)記(flag)、ONU的統(tǒng)計(jì)上行流量(stat、該ONU的最大帶寬(bw_max)、最小帶寬(bw_min)、經(jīng)過(guò)DBA算法后分配給ONU的帶寬(bw)以及ONU的權(quán)重(p)等等。
當(dāng)系統(tǒng)上電或復(fù)位時(shí),就要對(duì)表格進(jìn)行初始化操作。在實(shí)現(xiàn)時(shí),可以將參數(shù)表作為一個(gè)全局變量,所有的模塊都可以訪問(wèn)。
表1 授權(quán)對(duì)象參數(shù)表結(jié)構(gòu)
如圖10所示,當(dāng)采樣周期定時(shí)器產(chǎn)生中斷,DBA程序開(kāi)始運(yùn)行后,統(tǒng)計(jì)信息采樣模塊首先讀上行流量統(tǒng)計(jì)模塊中的數(shù)據(jù),并依次寫(xiě)讀入到授權(quán)對(duì)象參數(shù)表的stat表項(xiàng)中;然后,按照指定的算法模式調(diào)用DBA算法函數(shù)(即比例加權(quán)算法或帶寬利用率調(diào)整算法),算法函數(shù)將計(jì)算結(jié)果寫(xiě)入到授權(quán)對(duì)象參數(shù)表的bw表項(xiàng)中;最后,帶寬圖樣輸出模塊將授權(quán)對(duì)象參數(shù)表bw表項(xiàng)中記錄的授權(quán)結(jié)果轉(zhuǎn)換成尾部坐標(biāo)后,依次輸出到硬件的帶寬分配表中。
本發(fā)明所使用的帶寬分配算法有兩種比例加權(quán)算法和帶寬利用率調(diào)整算法。下面對(duì)該兩種算法詳細(xì)描述。
第一種,比例加權(quán)算法OLT按照以下公式來(lái)計(jì)算ONUi所應(yīng)得到的上行帶寬BW(ONUi)=MIN{[MAX(Pij×statiΣistati×TOTAL_BW,bw_mini)],bw_maxi}]]>
式中stati為上行流量統(tǒng)計(jì)模塊所得到的ONUi在單位時(shí)間(兩次采樣間隔)內(nèi)的流量統(tǒng)計(jì),以16比特為單位;而Pi為ONUi的權(quán)重; 為所有在線ONU的上行流量總和;bw_maxi和bw_mini分別是ONUi可以得到的最大帶寬和最小帶寬。
上式的意義是OLT根據(jù)某一個(gè)ONU的上行流量占所有ONU總的上行流量的比例來(lái)分配這個(gè)ONU應(yīng)得到的上行帶寬的份額。也就是說(shuō),上行流量大的ONU或權(quán)重高的ONU將得到更多的上行帶寬,只受到最大帶寬和最小帶寬的限制。
第二種,帶寬利用率調(diào)整算法這個(gè)算法根據(jù)ONUi的帶寬利用率來(lái)決定分配給ONUi的帶寬BW(ONUi)是增加、減少或不變。當(dāng)帶寬利用率(λ)大于上門(mén)限(T+)時(shí),分配給該ONU的帶寬應(yīng)增加Δ+;當(dāng)帶寬利用率(λ)小于下門(mén)限(T-)時(shí),分配給該ONU的帶寬減少Δ-,當(dāng)帶寬利用率在上門(mén)限與下門(mén)限之間時(shí),分配給該ONU的帶寬將保持不變。即①若λi>=T+,BWil(ONUi)=MIN{MAX([BWil-l(ONUi)+Δ+],bw_mini),bw_maxi};]]>②若λi<=T-,BWil(ONUi)=MIN{MAX([BWil-l(ONUi)-Δ-],bw_mini),bw_maxi};]]>③若T-<λi<T+,BWil(ONUi)=BWil-l(ONUi)]]>其中BWl(ONUi)是本周期內(nèi)ONUi應(yīng)該得到的上行帶寬,而B(niǎo)Wl-l(ONUi)是上一個(gè)周期給ONUi分配的上行帶寬。ONUi的帶寬利用率(λi)的計(jì)算公式如下λil=statilBWl-1(ONUi)]]>圖11為利用本發(fā)明的上行流量統(tǒng)計(jì)動(dòng)態(tài)帶寬分配方法的EPON試驗(yàn)系統(tǒng)的組網(wǎng)圖。ONU為用戶提供上行和視頻點(diǎn)播業(yè)務(wù);OLT與網(wǎng)管和視頻點(diǎn)播服務(wù)器相連,并將業(yè)務(wù)接入到互聯(lián)網(wǎng)(Internet)中。
權(quán)利要求
1.一種對(duì)基于以太網(wǎng)無(wú)源光網(wǎng)絡(luò)上行鏈路帶寬的動(dòng)態(tài)分配方法,該方法包括對(duì)光線路終端設(shè)置帶寬分配周期;在帶寬分配周期內(nèi)由光線路終端對(duì)所連接的所有光網(wǎng)絡(luò)單元傳輸向光線路終端傳輸?shù)纳闲墟溌窋?shù)據(jù)幀的長(zhǎng)度以16比特為單位分別進(jìn)行統(tǒng)計(jì);以帶寬利用率算法計(jì)算分配帶寬,即由光線路終端計(jì)算出每個(gè)光網(wǎng)絡(luò)單元當(dāng)前上行鏈路帶寬可以容納的數(shù)據(jù)幀長(zhǎng)度;將統(tǒng)計(jì)出的每個(gè)光網(wǎng)絡(luò)單元實(shí)際傳輸數(shù)據(jù)幀長(zhǎng)度除以每個(gè)光網(wǎng)絡(luò)單元當(dāng)前上行鏈路帶寬可以容納的數(shù)據(jù)幀長(zhǎng)度,獲得每個(gè)光網(wǎng)絡(luò)單元的帶寬利用率;將每個(gè)光網(wǎng)絡(luò)單元的實(shí)際帶寬利用率與預(yù)先設(shè)置的帶寬利用率上、下限閾值進(jìn)行比較,如果某個(gè)光網(wǎng)絡(luò)單元實(shí)際統(tǒng)計(jì)的帶寬利用率高于預(yù)先設(shè)置的帶寬利用率上限則提高分配給該光網(wǎng)絡(luò)單元的上行鏈路帶寬一個(gè)預(yù)定增量,如果某個(gè)光網(wǎng)絡(luò)單元實(shí)際統(tǒng)計(jì)的帶寬利用率低于預(yù)先設(shè)置的帶寬利用率下限則降低分配給該光網(wǎng)絡(luò)單元的上行鏈路帶寬一個(gè)預(yù)定增量,如果某個(gè)光網(wǎng)絡(luò)單元實(shí)際統(tǒng)計(jì)的帶寬利用率高于預(yù)先設(shè)置的帶寬利用率下限而低于預(yù)先設(shè)置的帶寬利用率上限則保持原來(lái)分配給該光網(wǎng)絡(luò)單元的上行鏈路帶寬;每個(gè)光網(wǎng)絡(luò)單元按照光線路終端所分配的上行鏈路帶寬向光線路終端傳輸數(shù)據(jù)幀。
2.根據(jù)權(quán)利要求1的方法,其特征在于計(jì)算分配帶寬使用下列公式λil=statilBWl-i(ONUi)]]>公式中,λi為帶寬利用率,BWl(ONUi)是本周期內(nèi)ONUi應(yīng)該得到的上行帶寬,而B(niǎo)Wl-1(ONUi)是上一個(gè)周期給ONUi分配的上行帶寬。
3.一種位于基于以太網(wǎng)無(wú)源光網(wǎng)絡(luò)光線路終端中對(duì)上行鏈路帶寬進(jìn)行動(dòng)態(tài)分配的裝置,該裝置包括采樣周期定時(shí)器,用于設(shè)置對(duì)所有光網(wǎng)絡(luò)單元進(jìn)行帶寬分配的周期,以所設(shè)置的該周期統(tǒng)計(jì)所有光網(wǎng)絡(luò)單元的實(shí)際傳輸數(shù)據(jù)幀長(zhǎng)度,并以該周期計(jì)算所有光網(wǎng)絡(luò)單元應(yīng)當(dāng)分配的帶寬;上行流量統(tǒng)計(jì)模塊,用于對(duì)光線路終端所連接的每個(gè)光網(wǎng)絡(luò)單元的上行流量數(shù)據(jù)幀長(zhǎng)度進(jìn)行統(tǒng)計(jì);統(tǒng)計(jì)信息采樣模塊,用于按照上述設(shè)置周期對(duì)上行流量統(tǒng)計(jì)模塊的統(tǒng)計(jì)數(shù)據(jù)進(jìn)行采樣;帶寬分配算法模塊,用于根據(jù)帶寬利用率算法,利用統(tǒng)計(jì)信息采樣模塊所提供的數(shù)據(jù)計(jì)算出每個(gè)光網(wǎng)絡(luò)單元應(yīng)當(dāng)被分配的上行鏈路帶寬;授權(quán)對(duì)象參數(shù)表,存儲(chǔ)統(tǒng)計(jì)信息采樣模塊所統(tǒng)計(jì)的數(shù)據(jù)和帶寬分配算法模塊所計(jì)算出的每個(gè)光網(wǎng)絡(luò)單元分配上行鏈路帶寬;帶寬分配圖樣輸出模塊,用于從授權(quán)對(duì)象參數(shù)表中提出對(duì)所有光網(wǎng)絡(luò)單元的帶寬分配圖樣,并將所述帶寬分配圖樣傳輸給帶寬分配表;帶寬分配表,用于存儲(chǔ)所有光網(wǎng)絡(luò)單元的帶寬分配數(shù)據(jù),并將該帶寬分配數(shù)據(jù)組裝成GATE消息幀,發(fā)送給所有光網(wǎng)絡(luò)單元。
4.根據(jù)權(quán)利要求3的裝置,其特征在于其中的采樣周期定時(shí)器、統(tǒng)計(jì)信息采樣模塊、帶寬分配算法模塊、授權(quán)對(duì)象參數(shù)表、帶寬分配圖樣輸出模塊由現(xiàn)場(chǎng)可編程器件內(nèi)部嵌入的CPU通過(guò)運(yùn)行相應(yīng)功能的程序?qū)崿F(xiàn),而其中的上行流量統(tǒng)計(jì)模塊、帶寬分配表由現(xiàn)場(chǎng)可編程器件實(shí)現(xiàn)。
5.根據(jù)權(quán)利要求3的裝置,其特征在于所述上行流量統(tǒng)計(jì)模塊進(jìn)一步包括一個(gè)32比特寬64比特長(zhǎng)的雙口隨機(jī)存儲(chǔ)器,用于存儲(chǔ)每個(gè)光網(wǎng)絡(luò)單元的統(tǒng)計(jì)數(shù)據(jù);一個(gè)加法器,用于將來(lái)自10比特鎖存器的上行鏈路數(shù)據(jù)幀的長(zhǎng)度相加;一個(gè)10比特鎖存器,用于存儲(chǔ)接收到的每個(gè)有效數(shù)據(jù)幀的長(zhǎng)度;一個(gè)32比特鎖存器,用于存儲(chǔ)根據(jù)邏輯鏈路識(shí)別(LLID)從雙口隨機(jī)存儲(chǔ)器中提取的數(shù)據(jù)。
全文摘要
本發(fā)明涉及千兆級(jí)的基于以太網(wǎng)無(wú)源光網(wǎng)絡(luò)(EPON)中實(shí)現(xiàn)上行鏈路帶寬的動(dòng)態(tài)分配方法和在該網(wǎng)絡(luò)的光線路終端(OLT)內(nèi)實(shí)現(xiàn)上述方法的裝置,本發(fā)明包括一個(gè)上行流量統(tǒng)計(jì)和采樣裝置,以及帶寬利用率調(diào)整算法,局端設(shè)備根據(jù)每一個(gè)ONU的上行帶寬利用率的大小來(lái)迅速的調(diào)整分配給ONU的上行帶寬,本發(fā)明的裝置的功能是在帶寬分配周期內(nèi)由光線路終端對(duì)所連接的所有光網(wǎng)絡(luò)單元向光線路終端傳輸?shù)纳闲墟溌窋?shù)據(jù)幀的長(zhǎng)度以16比特為單位分別進(jìn)行統(tǒng)計(jì)。由現(xiàn)場(chǎng)可編程器件(FPGA)的硬件支持層和該器件內(nèi)的嵌入式處理器(CPU)實(shí)現(xiàn),不僅支持上述兩種算法,也可以支持其它算法,因而具有很強(qiáng)的可擴(kuò)展性。
文檔編號(hào)H04J14/08GK1983877SQ20061009095
公開(kāi)日2007年6月20日 申請(qǐng)日期2004年4月14日 優(yōu)先權(quán)日2004年4月14日
發(fā)明者楊柳, 何巖, 焦名圣, 楊永勝 申請(qǐng)人:烽火通信科技股份有限公司