專利名稱:報文處理方法、裝置和網(wǎng)絡設備的制作方法
技術(shù)領域:
本發(fā)明涉及通信技術(shù)領域,尤其涉及一種報文處理方法、裝置和網(wǎng)絡設備。
背景技術(shù):
專用集成電路(ApplicationSpecific Integrated Circuit, ASIC)是一種為專 門目的而設計的集成電路,其根據(jù)特定用戶要求和特定電子系統(tǒng)的需要而設計、制造的。在 交換機系統(tǒng)中,數(shù)據(jù)報文一般是由ASIC通過直接內(nèi)存存取(Direct Memory Access, DMA) 方式傳送給中央控制器CPU,再由CPU對報文進行處理。交換機中,CPU —般是通過編寫DMA控制塊,使得ASIC可根據(jù)DMA控制塊的設置 將報文傳送到CPU設定的緩存區(qū)內(nèi),同時給CPU —個中斷,使得CPU可根據(jù)該中斷對緩存區(qū) 內(nèi)收到的報文進行處理?,F(xiàn)有交換機的CPU對緩存區(qū)內(nèi)的報文進行處理時,CPU需要從緩 存區(qū)內(nèi)接收待處理報文,以便對待處理的報文進行處理,且CPU—般是通過采用逐個收包 的方式從緩存區(qū)內(nèi)接收報文,或者采用批量收包的方式從緩存區(qū)內(nèi)接收報文,并對接收的 待處理報文進行處理,其中(1)逐個收包的方式是指,ASIC每完成一次DMA操作,就會產(chǎn)生一個deSC_d0ne中 斷,CPU接收到該desc_done中斷時,立即接收緩存區(qū)內(nèi)的報文,對報文進行處理。該種方 式中,ASIC傳送報文給交換機的CPU后,CPU可以立即響應該報文,對報文進行處理,但是 交換機的CPU每收到一個報文均需要進行一次中斷處理,使得CPU中斷處理的開銷非常大, CPU資源開銷大。(2)批量收包的方式是指,ASIC根據(jù)DMA控制塊的設定,在多個DMA操作完成后, 產(chǎn)生一個chain_done中斷,CPU接收到該chain_done中斷時,接收從上次chain_done中 斷到本次chairudone中斷之間的所有報文,并對報文進行處理。該種方式中,交換機的CPU 可以在一個中斷處理批量的報文,相對于逐個收包的方式,可節(jié)省CPU頻繁進行中斷處理 的資源開銷,但交換機無法實時響應接收的報文,使得報文處理會出現(xiàn)一定的延遲。由于當前網(wǎng)絡中普遍存在大量的攻擊報文,而攻擊報文必須經(jīng)過交換機的CPU進 行處理鑒別后才能被發(fā)現(xiàn),因此,為保證交換機運行的穩(wěn)定性和網(wǎng)絡安全性能,網(wǎng)絡中的所 有報文均需要送到交換機的CPU進行處理,以識別攻擊報文,同時避免正常協(xié)議報文的丟 棄。而且,由于交換機之間的交互具有一定的實效性,當交換機收到正常協(xié)議報文時,必須 在指定的時間內(nèi)給發(fā)送給協(xié)議報文的交換機一個應答報文,否則,對方將會認為網(wǎng)絡出現(xiàn) 異常,因此交換機的CPU在對其緩存區(qū)內(nèi)接收的報文處理時要及時響應。發(fā)明人在實現(xiàn)本發(fā)明的過程中發(fā)現(xiàn),現(xiàn)有交換機的CPU對報文進行處理時,采用逐個收包的方式對報文進行處理時,CPU資源開銷大,當處理報文較多時,可能無法及時處 理所有的報文,進而造成報文丟棄等問題;采用批量收包的方式對報文進行處理時,雖然可 降低CPU資源開銷,但是,CPU響應報文的實時性較差,報文處理延遲時間較長,使得交換機 交互的實效性較差,易造成網(wǎng)絡異常。
發(fā)明內(nèi)容
本發(fā)明提供一種報文處理方法、裝置和網(wǎng)絡設備,可有效提高報文處理的實時性, 同時降低報文處理時CPU資源開銷,提高網(wǎng)絡運行的穩(wěn)定性和安全性。本發(fā)明提供一種報文處理方法,包括 獲取當前報文處理時的報文流量信息;根據(jù)所述當前報文處理時的報文流量信息,確定接收待處理報文的方式為逐個收 包方式還是批量收包方式。本發(fā)明提供一種報文處理裝置,其特征在于,包括信息獲取模塊,用于獲取當前報文處理時的報文流量信息;收包確定模塊,用于根據(jù)所述當前報文處理時的報文流量信息,確定接收待處理 報文的方式為逐個收包方式還是批量收包方式。本發(fā)明提供一種網(wǎng)絡設備,包括報文交換裝置和CPU,其中,所述CPU包括上述的 報文處理裝置。本發(fā)明提供的報文處理方法、裝置和網(wǎng)絡設備,可通過根據(jù)當前報文處理時的報 文流量信息,確定接收待處理報文的方式為逐個收包方式還是批量收包方式,使得CPU可 根據(jù)網(wǎng)絡報文流量的變化實時調(diào)整接收待處理報文的方式,可有效提高報文處理的實時 性,降低報文處理的CPU資源消耗,提高整個網(wǎng)絡運行的穩(wěn)定性和可靠性。
圖1為本發(fā)明報文處理方法實施例一的流程示意圖;圖2為本發(fā)明報文處理方法實施例二的流程示意圖;圖3為本發(fā)明報文處理方法實施例三的流程示意圖;圖4為本發(fā)明報文處理方法實施例四的流程示意圖;圖5為本發(fā)明報文處理裝置實施例一的結(jié)構(gòu)示意圖;圖6為本發(fā)明報文處理裝置實施例二中收包確定模塊的結(jié)構(gòu)示意圖;圖7為本發(fā)明報文處理裝置實施例三中收包確定模塊的結(jié)構(gòu)示意圖;圖8為本發(fā)明報文處理裝置實施例四的結(jié)構(gòu)示意圖;圖9為本發(fā)明網(wǎng)絡設備實施例的結(jié)構(gòu)示意圖。
具體實施例方式為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例 中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是 本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領域普通技術(shù)人員 在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。圖1為本發(fā)明報文處理方法實施例一的流程示意圖。如圖1所示,本實施例報文 處理方法可包括如下步驟步驟101、獲取當前報文處理時的報文流量信息;步驟102、根據(jù)所述當前報文處理時的報文流量信息,確定接收待處理報文的方式 為逐個收包方式還是批量收包方式。
本實施例可應用于交換機中CPU對通過DMA方式接收到的報文的處理中,具體地, 當交換機中的ASIC通過DMA方式將報文傳送至CPU的緩存區(qū)時,CPU可根據(jù)當前報文處理 時報文流量信息,確定處理緩沖區(qū)內(nèi)的報文是采用逐個收包方式還是批量收包方式,其中, 逐個收包方式是指CPU接收到ASIC發(fā)送的deSC_done中斷時,從緩沖區(qū)內(nèi)讀出該報文,以 便CPU對ASIC發(fā)送的報文進行逐個處理,提高報文響應和處理的實時性;批量收包方式為 CPU接收到ASIC發(fā)送的chairudone中斷時,從緩沖區(qū)內(nèi)讀出該chairudone中斷之間的所 有報文,以便對ASIC發(fā)送的報文進行批量處理,減少CPU資源開銷。本實施例中,當確定接 收報文的方式時,CPU可確定是否響應ASIC發(fā)送來的deSC_done中斷或chairudone中斷, 以便報文處理時采用逐個收包方式或批量收包方式進行處理??梢钥闯觯緦嵤├龍笪奶幚矸椒ㄍㄟ^根據(jù)當前報文處理時的報文流量信息,確 定接收待處理報文的方式為逐個收包方式還是批量收包方式,使得CPU可根據(jù)網(wǎng)絡報文流 量的變化實時調(diào)整接收待處理報文的方式,可有效提高報文處理的實時性,降低報文處理 的CPU資源消耗,提高整個網(wǎng)絡運行的穩(wěn)定性和可靠性。圖2為本發(fā)明報文處理方法實施例二的流程示意圖。本實施例可應用于交換機的 CPU對緩存區(qū)內(nèi)接收的報文的處理中,具體地,如圖2所示,本實施例報文處理方法可包括 如下步驟步驟201、獲取當前預設時間段內(nèi)處理的報文個數(shù),將所述報文個數(shù)作為當前報文 處理時的報文流量信息。步驟202、判斷所述當前預設時間段內(nèi)處理的報文個數(shù)是否大于預設報文個數(shù), 是,則執(zhí)行步驟203,否則,執(zhí)行步驟204 ;步驟203、確定接收待處理報文的方式為批量收包方式,結(jié)束;步驟204、確定接收待處理報文的方式為逐個收包方式,結(jié)束??梢钥闯觯緦嵤├蓪斍疤幚韴笪牡膱笪膫€數(shù),作為當前報文處理時的流量 信息,并可根據(jù)預設報文個數(shù),確定CPU接收待處理報文的方式,其中,預設報文個數(shù)是指 根據(jù)CPU的處理能力,設定的CPU可按批量收包方式時處理報文個數(shù)的最小數(shù)量,當超過這 個數(shù)量時,CPU可按批量收包方式進行報文的接收和處理,否則按逐個收包方式進行報文的 接收和處理。圖3為本發(fā)明報文處理方法實施例三的流程示意圖。本實施例可應用于交換機的 CPU對緩存區(qū)內(nèi)接收的報文的處理中,具體地,如圖3所示,本實施例報文處理方法可包括 如下步驟步驟301、獲得當前預設時間段內(nèi)處理報文時的CPU開銷,并將所述CPU開銷作為 當前報文處理時的報文流量信息。步驟302、判斷所述當前預設時間段內(nèi)處理報文的CPU開銷是否大于預設CPU開 銷,是,則執(zhí)行步驟303,否則,執(zhí)行步驟304 ;步驟303、確定接收待處理報文的方式為批量收包方式,結(jié)束;步驟304、確定接收待處理報文的方式為逐個收包方式,結(jié)束。可以看出,本實施例通過獲取當前處理報文時的CPU開銷,來確定接收待處理報 文的方式是批量收包方式還是逐個收包方式,其中,CPU開銷是指當前時間段內(nèi)CPU處理報 文時占用的CPU開銷,預設CPU開銷是指根據(jù)CPU的處理能力,設定的CPU可按批量處理報文時CPU開銷的最小值,當處理報文超過這個值時,CPU可按批量收包方式接收和處理報 文,否則按逐個收包方式接收和處理報文。圖4為本發(fā)明報文處理方法實施例四的流程示意圖。具體地,如圖4所示,本實施 例可包括如下步驟步驟401、開啟報文處理任務;本實施例中,交換機的CPU可通過操作系統(tǒng)創(chuàng)建一個報文處理任務,該報文處理 任務可以實現(xiàn)對從緩沖區(qū)內(nèi)接收的報文進行處理,同時,還可實時檢測當前報文處理時報
文流量信息。具體地,本實施例中,可根據(jù)網(wǎng)絡環(huán)境以及具體的應用設定一個時間長度t,并且, 網(wǎng)絡中的任何一個報文只要在這個時間長度t內(nèi)均可得到處理,且正常的網(wǎng)絡環(huán)境不會受 到影響,當報文處理時間超過該設定的時間t時,則認為網(wǎng)絡出現(xiàn)異常。步驟402、判斷緩沖區(qū)內(nèi)是否有需要處理的報文,是則執(zhí)行步驟403,否則執(zhí)行步 驟 404 ;本實施例中,當報文處理任務啟動時,判斷緩沖區(qū)內(nèi)是否有需要處理的報文,以便 對緩沖區(qū)內(nèi)的報文進行處理。步驟403、處理緩沖區(qū)內(nèi)的報文;本實施例中,報文處理任務的時間間隔為t/2,若在上個時間段t/2內(nèi)交換機沒有 處理任何報文,則說明上個時間t到時間t/2之間時間段收上來的報文還沒有處理,此時, 報文處理任務可查詢緩沖區(qū),以處理還沒有處理過的報文,從而避免報文超時。步驟404、獲取當前報文處理時接收的報文的個數(shù),預測得到接收待處理報文的模式。本實施例中,當緩沖區(qū)內(nèi)無需要處理的報文,或者報文已處理完畢時,可獲取當前 報文處理時的報文個數(shù),并根據(jù)報文個數(shù),確定報文的流量信息,并根據(jù)報文的流量信息確 定接收待處理報文的模式是逐個收包方式還是批量收包方式。本實施例中,可根據(jù)網(wǎng)絡環(huán)境以及具體應用確認一個CPU占用百分比X,該百分比 x表示交換機的CPU能夠正常維護網(wǎng)絡信息的最低限度,即在能夠保證一段時間內(nèi)空閑出x 這么大的CPU百分比用于給交換機的CPU進行網(wǎng)絡維護時,交換機的CPU可保證網(wǎng)絡環(huán)境 的正常運行,當沒有辦法保證空閑出x這么大的CPU百分比時,說明交換機的CPU有可能無 法正常響應來自網(wǎng)絡的各種需求,進而導致網(wǎng)絡環(huán)境異常。同時,本實施例中,還可根據(jù)實 際應用確定一個中斷導致的交換機的CPU的開銷y,以及處理一個報文導致的交換機的CPU 開銷z,其中,y、z均是指CPU占用百分比。由于上個t/2時間段和下個t/2時間段的報文 個數(shù)一般不會發(fā)生很大的變動,因此,通過獲取當前時間段內(nèi)報文處理時的報文流量信息, 可預測得到報文下個時間段內(nèi)報文的流量信息,從而得到接收待處理報文的模式。具體地,本實施例中可通過計數(shù)并統(tǒng)計得到報文處理時上個時間段t/2內(nèi)接收的 報文個數(shù)N,并預測下個t/2時間段內(nèi)也接收到N個報文,則這N個報文會帶來N*(y+z)的 CPU開銷,如果這個CPU開銷大于CPU的最大開銷(100% -x),則確定接收報文的方式為批 量收包方式,以減少中斷處理的CPU開銷,否則,確定接收報文的方式為逐個收包方式,以 保證收包效率。本領域技術(shù)人員知道,當ASIC通過DMA方式向交換機的CPU傳送報文時,其首先將報文傳送到CPU設定的緩沖區(qū)內(nèi),同時,對于每個報文均向CPU發(fā)送一個desc_done中 斷,同時,還可根據(jù)CPU的設定,當傳送多個報文后,可向CPU發(fā)送一個chairudone中斷。 CPU在對緩沖區(qū)內(nèi)的報文進行處理時,必須要從收包的DMA描述符上將報文摘下,以便CPU 對報文進行處理。本實施例中,所述的逐個收包方式和批量收包方式均是指從收包的DMA 描述符上將報文摘下的方式,即將ASIC通過DMA方式發(fā)送到緩沖區(qū)的報文的DMA描述符 摘下,等待交換機的CPU的處理,由于在DMA描述符數(shù)量有限,因此,在chairudone中斷或 deSC_d0ne中斷時,通過釋放描述符來將報文摘下,可有效保證報文不會丟失??梢钥闯?,本實施例中,通過根據(jù)報文的流量信息確定收包方式采用逐個收包方 式還是批量收包方式,可有效地保證交換機可以最大的能力接收報文,從而保證報文處理 的完整性,避免因未處理正常的協(xié)議報文而導致網(wǎng)絡不穩(wěn)定,同時,可有效保證正常協(xié)議報 文的響應速度,提高報文處理的及時性,避免因報文處理不及時而導致交換機誤判網(wǎng)絡故 障,提高交換機運行的穩(wěn)定性和可靠性。此外,為保證交換機的CPU在批量收包方式下對報文進行處理時,導致ASIC發(fā)送 的新的報文無法得到及時處理,本實施例中的報文處理任務可通過足夠的調(diào)度頻率來保證 對無法及時處理的報文進行處理,其中,調(diào)度頻率可由操作系統(tǒng)決定,在同一時間段內(nèi),高 優(yōu)先級的任務調(diào)度的次數(shù)比低優(yōu)先級的任務調(diào)用的次數(shù)高,調(diào)度頻率高;相同優(yōu)先級任務 之間,一般是公平競爭,如果提高調(diào)度頻率,則不掛起的跑完任務,如果通過掛起等待的方 式,則任務可主動放棄一些運行時間的方式降低調(diào)度頻率。圖5為本發(fā)明報文處理裝置實施例一的結(jié)構(gòu)示意圖。具體地,如圖5所示,本實施 例報文處理裝置可包括信息獲取模塊1和收包確定模塊2,其中信息獲取模塊1,用于獲取當前報文處理時的報文流量信息;收包確定模塊2,用于根據(jù)所述當前報文處理時的報文流量信息,確定接收待處理 報文的方式為逐個收包方式還是批量收包方式。本實施例可應用于交換機中CPU對通過DMA方式接收到的報文的處理中,可根據(jù) 當前報文處理時報文流量信息,確定接收待處理報文的方式是采用逐個收包方式還是批量 收包方式,其具體實現(xiàn)過程可參考上述本發(fā)明方法實施例的說明,在此不再贅述。本實施例通過根據(jù)當前報文處理時的報文流量信息,確定接收待處理報文的方式 為逐個收包方式還是批量收包方式,使得CPU可根據(jù)網(wǎng)絡報文流量的變化實時調(diào)整接收待 處理報文的方式,可有效提高報文處理的實時性,降低報文處理的CPU資源消耗,提高整個 網(wǎng)絡運行的穩(wěn)定性和可靠性。圖6為本發(fā)明報文處理裝置實施例二中收包確定模塊的結(jié)構(gòu)示意圖。在上述圖5 所示實施例技術(shù)方案的基礎上,本實施例中,信息獲取模塊具體可用于獲取當前預設時間 段內(nèi)處理的報文個數(shù),將所述報文個數(shù)作為當前報文處理時的報文流量信息;此外,如圖6 所示,收包確定模塊2具體可包括第一判斷單元21和第一確定單元22,其中第一判斷單元21,用于判斷所述當前預設時間段內(nèi)處理的報文個數(shù)是否大于預設 報文個數(shù);第一確定單元22,用于所述判斷單元判斷所述當前預設時間段內(nèi)處理的報文個數(shù) 大于預設報文個數(shù)時,確定接收待處理報文的方式為批量收包方式,以及用于所述判斷單 元判斷所述當前預設時間段內(nèi)處理的報文個數(shù)不大于預設報文個數(shù)時,確定接收待處理報文的方式為逐個收包方式。本實施例可將當前處理報文的報文個數(shù),作為當前報文處理時的流量信息,并可 根據(jù)預設報文個數(shù),確定CPU接收待處理報文的方式,其具體實現(xiàn)過程可參考上述本發(fā)明 方法實施例二的說明,在此不再贅述。圖7為本發(fā)明報文處理裝置實施例三中收包確定模塊的結(jié)構(gòu)示意圖。在上述圖5 所示實施例技術(shù)方案的基礎上,本實施例中,信息獲取模塊具體可用于獲得當前預設時間 段內(nèi)處理報文時的CPU開銷,并將所述CPU開銷作為當前報文處理時的報文流量信息;此 外,如圖7所示,收包確定模塊2具體包括第二判斷單元23和第二確定單元24,其中第二判斷單元23,用于判斷所述當前預設時間段內(nèi)處理報文的CPU開銷是否大于 預設CPU開銷;第二確定單元24,用于所述第二判斷單元判斷所述當前預設時間段內(nèi)處理報文的 CPU開銷大于預設CPU開銷時,確定接收待處理報文的方式為批量收包方式,以及用于所述 第二判斷單元判斷所述當前預設時間段內(nèi)處理報文的CPU開銷不大于所述預設CPU開銷 時,確定接收待處理報文的方式為逐個收包方式。本實施例通過獲取當前處理報文時的CPU開銷,來確定接收待處理報文的方式是 批量收包方式還是逐個收包方式,其具體實現(xiàn)過程可參考上述本發(fā)明方法實施例三的說 明,在此不再贅述。圖8為本發(fā)明報文處理裝置實施例四的結(jié)構(gòu)示意圖。在上述圖5所示實施例技術(shù) 方案的基礎上,如圖8所示,本實施例還可包括開啟模塊3、判斷模塊4和處理模塊5,其中開啟模塊3,用于開啟報文處理任務;判斷模塊4,與開啟模塊3連接,用于判斷緩沖區(qū)內(nèi)是否有需要處理的報文;處理模塊5,與判斷模塊4連接,用于在判斷模塊4判斷緩沖區(qū)內(nèi)有需要處理的報 文時,處理緩沖區(qū)內(nèi)的報文;信息獲取模塊1,與判斷模塊4和處理模塊5連接,用于在判斷模塊4判斷緩沖區(qū) 內(nèi)沒有需要處理的報文,或者處理模塊5處理完緩沖區(qū)內(nèi)的報文時,獲取當前報文處理時 的報文流量信息,并由收包確定模塊2根據(jù)報文流量信息確定接收待處理報文的方式為逐 個收包方式還是批量收包方式。本實施例中,可在報文處理任務運行中,實時獲取當前報文流量信息,并可根據(jù)報 文流量信息確定接收待處理報文的方式,其具體實現(xiàn)過程可參考上述本發(fā)明方法實施例四 的說明,在此不再贅述。圖9為本發(fā)明網(wǎng)絡設備實施例的結(jié)構(gòu)示意圖。具體地,如圖9所示,本實施例網(wǎng) 絡設備包括報文交換裝置10和CPU 20,其中,報文交換裝置10具體可為ASIC,用于通過 DMA方式向CPU 20傳送從網(wǎng)絡中接收的報文;CPU20具體包括上述本發(fā)明裝置實施例中的 模塊,用于對報文交換裝置10傳送的報文進行處理,同時可根據(jù)報文處理時的報文流量信 息,確定處理報文時,接收報文的方式是逐個收包方式還是批量收包方式。本實施例網(wǎng)絡設 備具體地可為交換機設備。本實施例網(wǎng)絡設備可通過根據(jù)當前報文處理時的報文流量信息,確定接收待處理 報文的方式為逐個收包方式還是批量收包方式,使得CPU可根據(jù)網(wǎng)絡報文流量的變化實時 調(diào)整接收待處理報文的方式,可有效提高報文處理的實時性,降低報文處理的CPU資源消耗,提高整個網(wǎng)絡運行的穩(wěn)定性和可靠性。本領域普通技術(shù)人員可以理解實現(xiàn)上述方法實施例的全部或部分步驟可以通過 程序指令相關(guān)的硬件來完成,前述的程序可以存儲于一計算機可讀取存儲介質(zhì)中,該程序 在執(zhí)行時,執(zhí)行包括上述方法實施例的步驟;而前述的存儲介質(zhì)包括R0M、RAM、磁碟或者 光盤等各種可以存儲程序代碼的介質(zhì)。最后應說明的是以上實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡 管參照前述實施例對本發(fā)明進行了詳細的說明,本領域的普通技術(shù)人員應當理解其依然 可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分技術(shù)特征進行等同替 換;而這些修改或者替換,并不使相應技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的精 神和范圍。
權(quán)利要求
一種報文處理方法,其特征在于,包括獲取當前報文處理時的報文流量信息;根據(jù)所述當前報文處理時的報文流量信息,確定接收待處理報文的方式為逐個收包方式還是批量收包方式。
2.根據(jù)權(quán)利要求1所述的報文處理方法,其特征在于,所述獲取當前報文處理時的報 文流量信息包括獲取當前預設時間段內(nèi)處理的報文個數(shù),將所述報文個數(shù)作為當前報文處理時的報文 流量信息。
3.根據(jù)權(quán)利要求2所述的報文處理方法,其特征在于,所述根據(jù)所述當前報文處理時 的報文流量信息,確定接收待處理報文的方式為逐個收包方式還是批量收包方式包括判斷所述當前預設時間段內(nèi)處理的報文個數(shù)是否大于預設報文個數(shù),是,則確定接收 待處理報文的方式為批量收包方式,否則,確定接收待處理報文的方式為逐個收包方式。
4.根據(jù)權(quán)利要求1所述的報文處理方法,其特征在于,所述獲取當前報文處理時的報 文流量信息包括獲得當前預設時間段內(nèi)處理報文時的CPU開銷,并將所述CPU開銷作為當前報文處理 時的報文流量信息。
5.根據(jù)權(quán)利要求4所述的報文處理方法,其特征在于,所述根據(jù)所述當前報文處理時 的報文流量信息,確定接收待處理報文的方式為逐個收包方式還是批量收包方式包括判斷所述當前預設時間段內(nèi)處理報文的CPU開銷是否大于預設CPU開銷,是則確定接 收待處理報文的方式為批量收包方式,否則確定接收待處理報文的方式為逐個收包方式。
6.一種報文處理裝置,其特征在于,包括信息獲取模塊,用于獲取當前報文處理時的報文流量信息;收包確定模塊,用于根據(jù)所述當前報文處理時的報文流量信息,確定接收待處理報文 的方式為逐個收包方式還是批量收包方式。
7.根據(jù)權(quán)利要求6所述的報文處理裝置,其特征在于,所述信息獲取模塊,具體用于獲 取當前預設時間段內(nèi)處理的報文個數(shù),將所述報文個數(shù)作為當前報文處理時的報文流量信 肩、ο
8.根據(jù)權(quán)利要求7所述的報文處理裝置,其特征在于,所述收包確定模塊包括第一判斷單元,用于判斷所述當前預設時間段內(nèi)處理的報文個數(shù)是否大于預設報文個數(shù);第二確定單元,用于所述判斷單元判斷所述當前預設時間段內(nèi)處理的報文個數(shù)大于預 設報文個數(shù)時,確定接收待處理報文的方式為批量收包方式,以及用于所述判斷單元判斷 所述當前預設時間段內(nèi)處理的報文個數(shù)不大于預設報文個數(shù)時,確定接收待處理報文的方 式為逐個收包方式。
9.根據(jù)權(quán)利要求6所述的報文處理裝置,其特征在于,所述信息獲取模塊,具體用于獲 得當前預設時間段內(nèi)處理報文時的CPU開銷,并將所述CPU開銷作為當前報文處理時的報文流量信息。
10.根據(jù)權(quán)利要求9所述的報文處理裝置,其特征在于,所述收包確定模塊包括 第二判斷單元,用于判斷所述當前預設時間段內(nèi)處理報文的CPU開銷是否大于預設CPU開銷;第二確定單元,用于所述第二判斷單元判斷所述當前預設時間段內(nèi)處理報文的CPU開銷大于預設CPU開銷時,確定接收待處理報文的方式為批量收包方式,以及用于所述第二 判斷單元判斷所述當前預設時間段內(nèi)處理報文的CPU開銷不大于所述預設CPU開銷時,確 定接收待處理報文的方式為逐個收包方式。
11. 一種網(wǎng)絡設備,包括報文交換裝置和CPU,其特征在于,所述CPU包括權(quán)利要求 6 10任一所述的報文處理裝置。
全文摘要
本發(fā)明公開了一種報文處理方法、裝置和網(wǎng)絡設備。該方法包括獲取當前報文處理時的報文流量信息;根據(jù)所述當前報文處理時的報文流量信息,確定接收待處理報文的方式為逐個收包方式還是批量收包方式。本發(fā)明可通過報文流量信息,確定接收報文的方式,可有效提高報文處理的實時性,降低報文處理的CPU資源消耗,提高整個網(wǎng)絡運行的穩(wěn)定性和可靠性。
文檔編號H04L12/56GK101841476SQ201010156380
公開日2010年9月22日 申請日期2010年4月22日 優(yōu)先權(quán)日2010年4月22日
發(fā)明者林峻 申請人:北京星網(wǎng)銳捷網(wǎng)絡技術(shù)有限公司