一種數(shù)據(jù)快速轉(zhuǎn)發(fā)方法和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)通信領(lǐng)域,特別是涉及一種基于PON網(wǎng)絡(luò)家庭網(wǎng)關(guān)單元的數(shù)據(jù)快速轉(zhuǎn)發(fā)方法和系統(tǒng)。
【背景技術(shù)】
[0002]隨著通信技術(shù)的發(fā)展,網(wǎng)絡(luò)業(yè)務(wù)越來越多樣性,對網(wǎng)絡(luò)帶寬的需求也越來越大。光纖接入技術(shù)因其具有高帶寬、傳輸距離遠(yuǎn)、抗干擾能力強(qiáng)等優(yōu)點(diǎn)成為了未來接入網(wǎng)技術(shù)的發(fā)展方向。
[0003]無源光纖網(wǎng)絡(luò)PON(Passive Optical Network)技術(shù)是一種點(diǎn)到多點(diǎn)的光纖接入技術(shù)。整個PON網(wǎng)絡(luò)主要由局端的光線路終端0LT(0ptical Line Terminal)、用戶側(cè)的光網(wǎng)絡(luò)單元 ONU (Optical Network Unit)和光分配網(wǎng)絡(luò) ODN(Optical Distribut1n Network)構(gòu)成。其中,ODN部分完全由無源光分路器(Passive Optical Splitter,簡稱P0S)和光纖等無源器件構(gòu)成。
[0004]PON網(wǎng)絡(luò)以其容易維護(hù)、高帶寬、擴(kuò)展性強(qiáng)、綜合建網(wǎng)成本低等優(yōu)點(diǎn)成為了光纖到戶(Fiber To The Home,簡稱 FTTH)、光纖到大樓(Fiber To The Building,簡稱 FTTB)等光纖接入場合目前所采用的一種最佳的系統(tǒng)架構(gòu)。
[0005]目前,家庭網(wǎng)關(guān)單元HGU(Home Gateway Unit) 一般是通過CPU實現(xiàn)數(shù)據(jù)從局域網(wǎng)LAN (Local Area Network)到廣域網(wǎng) WAN(Wide Area Network)的轉(zhuǎn)發(fā),例如,DSL (DigitalSubscriber Line,數(shù)字用戶線路)或者普通路由器,由于對帶寬要求比較低,一般幾十兆,所以數(shù)據(jù)在從物理網(wǎng)卡收到以后,會通過網(wǎng)絡(luò)處理模塊將數(shù)據(jù)發(fā)送到CPU,由CPU對數(shù)據(jù)進(jìn)行處理,根據(jù)需求處理過后再發(fā)送到目的網(wǎng)卡,從而實現(xiàn)數(shù)據(jù)從LAN到WAN的轉(zhuǎn)發(fā)。
[0006]現(xiàn)有技術(shù)中,HGU的數(shù)據(jù)轉(zhuǎn)發(fā)要一直經(jīng)過CPU,從而一直消耗CPU,從而影響其他事件的操作。并且,由于目前小型嵌入式CPU的處理數(shù)據(jù)能力并不強(qiáng)大,對數(shù)據(jù)的處理有限,幾十兆的情況下,CPU的占用率就很高,嚴(yán)重影響了 HGU數(shù)據(jù)轉(zhuǎn)發(fā)的速度,也無法滿足PON網(wǎng)絡(luò)的要求。
【發(fā)明內(nèi)容】
[0007]鑒于以上所述現(xiàn)有技術(shù)的缺點(diǎn),本發(fā)明的目的在于提供一種數(shù)據(jù)快速轉(zhuǎn)發(fā)方法和系統(tǒng),用于解決現(xiàn)有技術(shù)中PON網(wǎng)絡(luò)中,HGU數(shù)據(jù)從LAN到WAN的轉(zhuǎn)發(fā)速度慢,CPU占用率高的問題。
[0008]為實現(xiàn)上述目的及其他相關(guān)目的,本發(fā)明提供一種數(shù)據(jù)快速轉(zhuǎn)發(fā)方法,應(yīng)用于PON網(wǎng)絡(luò)的HGU,所述數(shù)據(jù)快速轉(zhuǎn)發(fā)方法包括:步驟S10,將接收的數(shù)據(jù)緩存到DMA接收隊列;其中接收的數(shù)據(jù)括源地址信息;步驟S20,按照所述DMA接收隊列,依據(jù)轉(zhuǎn)發(fā)匹配表匹配所述DMA接收隊列內(nèi)的數(shù)據(jù),獲取目的地址信息;并重新封裝數(shù)據(jù),轉(zhuǎn)發(fā)至DMA發(fā)送隊列;步驟S30,按照所述DMA發(fā)送隊列,將重新封裝的數(shù)據(jù)依據(jù)其目的地址信息轉(zhuǎn)發(fā)至目的網(wǎng)口。
[0009]可選地,所述轉(zhuǎn)發(fā)匹配表包括源地址信息、目的地址信息及其匹配關(guān)系。
[0010]可選地,源地址信息包括源MAC地址、源IP地址、源端口和以太網(wǎng)協(xié)議號;目的地址信息包括目的MAC地址、目的IP地址和目的端口。
[0011]可選地,所述步驟S20中重新封裝數(shù)據(jù)括將數(shù)據(jù)中的源MAC地址、源IP地址、源端口修改為目的MAC地址、目的IP地址和目的端口。
[0012]可選地,所述步驟S20中,按照所述DMA接收隊列,依據(jù)轉(zhuǎn)發(fā)匹配表匹配所述DMA接收隊列內(nèi)的數(shù)據(jù),獲取目的地址信息包括:判斷數(shù)據(jù)依據(jù)所述轉(zhuǎn)發(fā)匹配表是否能夠進(jìn)行匹配:如果能夠匹配,則直接通過將源地址信息修改為對應(yīng)的目的地址信息;如果無法匹配,則將該數(shù)據(jù)發(fā)送至CPU,由CPU進(jìn)行處理,從而獲取該數(shù)據(jù)的目的地址信息;并且,CPU將該數(shù)據(jù)的源地址信息、目的地址信息及其匹配關(guān)系添加至所述轉(zhuǎn)發(fā)匹配表中。
[0013]本發(fā)明還公開了一種數(shù)據(jù)快速轉(zhuǎn)發(fā)系統(tǒng),應(yīng)用于PON網(wǎng)絡(luò)的HGU,所述數(shù)據(jù)快速轉(zhuǎn)發(fā)系統(tǒng)包括:DMA接收模塊、匹配模塊和DMA發(fā)送模塊;所述DMA接收模塊用于緩存接收的數(shù)據(jù)至DMA接收隊列,并按照所述DMA接收隊列,將數(shù)據(jù)添加至所述匹配模塊;其中,接收的數(shù)據(jù)括源地址信息;所述匹配模塊用于依據(jù)轉(zhuǎn)發(fā)匹配表,對數(shù)據(jù)進(jìn)行匹配處理,獲取目的地址信息;將數(shù)據(jù)重新封裝并發(fā)送至所述DMA發(fā)送模塊的DMA發(fā)送隊列中;所述DMA發(fā)送模塊按照所述DMA發(fā)送隊列將重新封裝的數(shù)據(jù)發(fā)送至對應(yīng)的目的網(wǎng)口。
[0014]可選地,所述轉(zhuǎn)發(fā)匹配表包括源地址信息、目的地址信息及其匹配關(guān)系。
[0015]可選地,所述數(shù)據(jù)快速轉(zhuǎn)發(fā)系統(tǒng)還包括CPU處理模塊,所述CPU處理模塊用于在通過所述匹配模塊無法獲取數(shù)據(jù)的目的地址信息時,對該數(shù)據(jù)進(jìn)行處理,從而獲取該數(shù)據(jù)的目的地址信息,并將目的地址信息返回給所述匹配模塊;將該數(shù)據(jù)的源地址信息、目的地址信息及其匹配關(guān)系添加至所述轉(zhuǎn)發(fā)匹配表。
[0016]可選地,源地址信息包括源MAC地址、源IP地址、源端口和以太網(wǎng)協(xié)議號;目的地址信息包括目的MAC地址、目的IP地址和目的端口。
[0017]可選地,所述匹配模塊對數(shù)據(jù)的重新封裝包括將數(shù)據(jù)中的源MAC地址、源IP地址、源端口修改為目的MAC地址、目的IP地址和目的端口。
[0018]如上所述,本發(fā)明的一種數(shù)據(jù)快速轉(zhuǎn)發(fā)方法和系統(tǒng),應(yīng)用于PON網(wǎng)口的HGU單元,將源地址信息、目的地址信息及其匹配關(guān)系保存在轉(zhuǎn)發(fā)匹配表中,如此,在LAN 口接收到的數(shù)據(jù)緩存至DMA接收隊列,并將數(shù)據(jù)傳送至匹配模塊,通過轉(zhuǎn)發(fā)匹配表就可快速匹配獲取目的地址信息,并對數(shù)據(jù)重新封裝后發(fā)送至DMA發(fā)送隊列,最后由DMA發(fā)送模塊將重新封裝后的數(shù)據(jù)發(fā)送至相應(yīng)的目的WAN 口。整個轉(zhuǎn)發(fā)過程,并不需要經(jīng)過CPU對數(shù)據(jù)進(jìn)行處理。并且,本發(fā)明的轉(zhuǎn)發(fā)匹配表內(nèi)的信息還可以由CPU進(jìn)行更新,如果數(shù)據(jù)在轉(zhuǎn)發(fā)匹配表中無法快速匹配獲取目的地址信息,則該數(shù)據(jù)會被送至CPU,有CPU按照規(guī)則對其進(jìn)行處理,從而獲取目的地址信息,并將該源地址信息、目的地址信息及其匹配關(guān)系更新至轉(zhuǎn)發(fā)匹配表中,以備下次具有相同的源MAC地址、源IP地址、源端口和以太網(wǎng)協(xié)議號的數(shù)據(jù)可以直接通過轉(zhuǎn)發(fā)匹配表進(jìn)行快速匹配,而不再需要CPU進(jìn)行處理。由此不難看出,本發(fā)明的數(shù)據(jù)快速轉(zhuǎn)發(fā)方法和系統(tǒng),大大減少了數(shù)據(jù)轉(zhuǎn)發(fā)時的CPU占用率,提高了數(shù)據(jù)轉(zhuǎn)發(fā)速度。
【附圖說明】
[0019]圖1顯示為本發(fā)明實施例公開的一種數(shù)據(jù)快速轉(zhuǎn)發(fā)方法的流程示意圖。
[0020]圖2顯示為本發(fā)明實施例公開的一種數(shù)據(jù)快速轉(zhuǎn)發(fā)系統(tǒng)的結(jié)構(gòu)示意圖。
[0021]元件標(biāo)號說明
[0022]SlO ?S30 步驟
[0023]200數(shù)據(jù)快速轉(zhuǎn)發(fā)系統(tǒng)
[0024]210DMA接收模塊
[0025]220匹配模塊
[0026]230DMA發(fā)送模塊
[0027]240CPU處理模塊
【具體實施方式】
[0028]以下通過特定的具體實例說明本發(fā)明的實施方式,本領(lǐng)域技術(shù)人員可由本說明書所揭露的內(nèi)容輕易地了解本發(fā)明的其他優(yōu)點(diǎn)與功效。本發(fā)明還可以通過另外不同的【具體實施方式】加以實施或應(yīng)用,本說明書中的各項細(xì)節(jié)也可以基于不同觀點(diǎn)與應(yīng)用,在沒有背離本發(fā)明的精神下進(jìn)行各種修飾或改變。需說明的是,在不沖突的情況下,以下實施例及實施例中的特征可以相互組合。
[0029]請參閱附圖。需要說明的是,以下實施例中所提供的圖示僅以示意方式說明本發(fā)明的基本構(gòu)想,遂圖式中僅顯示與本發(fā)明中有關(guān)的組件而非按照實際實施時的組件數(shù)目、形狀及尺寸繪制,其實際實施時各組件的型態(tài)、數(shù)量及比例可為一種隨意的改變,且其組件布局型態(tài)也可能更為復(fù)雜。
[0030]本發(fā)明的應(yīng)用于PON網(wǎng)絡(luò)的HGU單元的數(shù)據(jù)快速轉(zhuǎn)發(fā)方法和系統(tǒng),用于解決較大帶寬的情況下,進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)對CPU的占用率較大。其采用DMA (Direct Memory Access,存儲器直接訪問)技術(shù),允許在外部設(shè)備和存儲器之間直接讀寫數(shù)據(jù),既不通過CPU,也不需要CPU干預(yù)。整個數(shù)據(jù)轉(zhuǎn)發(fā)操作在DMA接收模塊和DMA發(fā)送模塊的控制下進(jìn)行。CPU除了在同一類數(shù)據(jù)(具有相同的源地址信息)的第一次轉(zhuǎn)發(fā)時做一點(diǎn)處理外,在傳輸過程中(PU可以進(jìn)行其他的工作。這樣,在大部分時間里,CPU和輸入輸出都處于并行操作。因此,使整個系統(tǒng)的效率大大提高。
[0031]實施例1
[0032]如圖1所示,本實施例公開了一種應(yīng)用于PON網(wǎng)絡(luò)的HGU單元的數(shù)據(jù)快速轉(zhuǎn)發(fā)方法,具體包括:
[0033]步驟S10,將接收的數(shù)據(jù)緩存至DMA接收隊列;其中接收的數(shù)據(jù)包括源地址信息:
[0034]HGU從LAN 口接收到數(shù)據(jù)后,將數(shù)據(jù)緩存至DMA接收隊列中,與此同時,觸發(fā)硬件中斷,并告知匹配模塊。數(shù)據(jù)是按照先后順序緩存至DMA接收隊列的。
[0035]并且,接收到的數(shù)據(jù)內(nèi)的源地址信息包括源MAC地址、源IP地址、源端口和以太網(wǎng)協(xié)議號。
[0036]步驟S20,按照DMA接收隊列,依據(jù)轉(zhuǎn)發(fā)匹配表匹配所述DMA接收隊列內(nèi)的數(shù)據(jù),獲取目的地址信息;并重新封裝數(shù)據(jù),轉(zhuǎn)發(fā)至DMA發(fā)送隊列:
[0037]其中,轉(zhuǎn)發(fā)匹配表包括源地址信息、目的地址信息及其匹配關(guān)系。數(shù)據(jù)依據(jù)其源地址信息,通過轉(zhuǎn)發(fā)匹配表可以匹配獲取對應(yīng)的目的地址信息。并且,目的地址信息包括:目的MAC地址、目的IP地址和目的端口。
[0038]首先,在數(shù)據(jù)緩存至DMA接收隊列后,按照DMA接收隊列的順序,將數(shù)據(jù)依據(jù)轉(zhuǎn)發(fā)匹配表進(jìn)行匹配,并判斷是否匹配:
[0039]如果能夠匹配