專利名稱:報(bào)文上送cpu的控制方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通訊領(lǐng)域,尤其涉及一種報(bào)文上送CPU的控制方法和裝置。
背景技術(shù):
在一些大型城域網(wǎng)的匯聚層、小型城域網(wǎng)的核心層、大型企業(yè)網(wǎng)及園區(qū)網(wǎng)的網(wǎng)絡(luò)骨干中,擔(dān)當(dāng)交換核心和匯聚中心的三層交換機(jī)或者高端路由器通常設(shè)計(jì)為都是采用分布式的框式設(shè)備。 分布式的框式設(shè)備一般由主控板和接口板組成,其結(jié)構(gòu)一般包括數(shù)據(jù)轉(zhuǎn)發(fā)平面、協(xié)議控制平面、系統(tǒng)管理平面、系統(tǒng)服務(wù)平面、OAM(OperationAdministration andMaintenance,操作、管理和維護(hù))平面、底層硬件管理平面等。 其中,協(xié)議控制平面用于形成一定的表項(xiàng)以控制各種協(xié)議報(bào)文的接收、處理和發(fā)送。這些協(xié)議報(bào)文從各個(gè)接口板上送到主控板CPU (Center ProcessingUnit,中央處理單元)進(jìn)行處理,由主控板CPU對(duì)接收到的報(bào)文進(jìn)行協(xié)議處理,計(jì)算和形成各種表項(xiàng)用于報(bào)文轉(zhuǎn)發(fā)。 所有接口板將報(bào)文上送CPU時(shí)共享一個(gè)通道,其結(jié)構(gòu)示意圖如圖l所示。目前普遍采用FE(Fast Ethernet,快速以太網(wǎng))/GE(Gigabit Ethernet,千兆以太網(wǎng))交換機(jī)進(jìn)行鏈接。 從接口板的轉(zhuǎn)發(fā)芯片接收到報(bào)文有很多種控制方式,一般來說有如下幾種 令I(lǐng)nLIF表項(xiàng) 今全局控制寄存器 今IEEE保留組播寄存器 今IPv6ICMP協(xié)議類型配置寄存器 令UDP廣播目的端口配置寄存器 今IPv4本地鏈路組播配置寄存器 令I(lǐng)Pv6本地鏈路組播配置寄存器 今IPv6鄰居請(qǐng)求控制寄存器 今MAC地址表 今Next Hop/NHLFE 今PCL/TTI 協(xié)議報(bào)文的上送和控制方式根據(jù)接口板轉(zhuǎn)發(fā)芯片的不同而有所不同,總體來說,就是通過各種手段來標(biāo)識(shí)各種協(xié)議的報(bào)文。通過在報(bào)文中添加上CPU的標(biāo)識(shí),便于CPU在處理時(shí)識(shí)別報(bào)文類型, 一般報(bào)文上CPU時(shí)的標(biāo)識(shí)都通過CPU Code表示,通過CPU Code可以指定報(bào)文上CPU的TC (Traffic Class,流分類)、DP (Drop Precedence,丟棄優(yōu)先級(jí))、速率,還可以設(shè)置報(bào)文上CPU的字節(jié)數(shù),如整個(gè)報(bào)文上CPU或取報(bào)文頭128字節(jié)上CPU。
通過CPU Code,便于定位分析上CPU報(bào)文、控制上CPU報(bào)文的速率、并了解整機(jī)的CPU處理的報(bào)文情況。
由于CPU資源是各種協(xié)議報(bào)文的共享資源,不能被某種協(xié)議報(bào)文全部占用,特別 是在網(wǎng)絡(luò)攻擊日趨嚴(yán)重的情況下,每種類型的設(shè)備都需要根據(jù)自己所支持的特性,設(shè)計(jì)各 種協(xié)議報(bào)文上送的隊(duì)列帶寬,給每種協(xié)議報(bào)文分配一定的帶寬,從而保證了協(xié)議報(bào)文從各 個(gè)接口板上送CPU通道時(shí),每種協(xié)議報(bào)文不至于占據(jù)太多的帶寬,從源頭上保障CPU資源的 合理應(yīng)用。 另外,現(xiàn)有技術(shù)中還提供了在主控板CPU進(jìn)行控制的方法。主控板CPU也可是被 看作為一個(gè)端口,在其入接口進(jìn)行控制。具體的,通過CoPP(ControlPlane Policy,控制平 面策略)特性對(duì)數(shù)據(jù)平面到控制平面的報(bào)文進(jìn)行策略控制,保護(hù)主控板CPU資源不被攻擊 報(bào)文占用。 對(duì)于集中式和分布式兩種結(jié)構(gòu),兩種不同結(jié)構(gòu)中將協(xié)議報(bào)文上送主控板CPU的方 式存在較大的差別。對(duì)于集中式設(shè)備,其線卡上沒有CPU,因此所有報(bào)文都送到一個(gè)集中處 理器進(jìn)行處理。對(duì)于分布式設(shè)備,線卡本身也具備CPU。因此,DP(Data Plane,數(shù)據(jù)平面) 到CP (Control Plane,控制平面)的報(bào)文存在兩個(gè)不同的路徑直接上送本板CPU或上送 主控板CPU。其中,控制平面和數(shù)據(jù)平面的模型如圖2所示。
各個(gè)結(jié)構(gòu)單元說明如下 Control Plane (控制平面)運(yùn)行大部分路由交互協(xié)議CPU進(jìn)程的單元,是需要保 護(hù)的對(duì)象。 Central Switch Engine (中央交換單元)進(jìn)行快速路由交換處理的單元,是控制 平面策略的執(zhí)行單元。 Distributed Switch Engine (分布式交換單元)分布式線卡的進(jìn)行快速包交換 的單元。 Non-distributed Line Card(非分布式線卡)無交換功能,只具有報(bào)文收發(fā)功能 的線卡。 CoPP特性將CP定義成具有輸入和輸出端口的功能單元,通過在這些輸入和輸出 端口綁定QoS策略及相應(yīng)的MQC (Module QoS Command,模塊化QoS命令)策略對(duì)發(fā)送到CP 的報(bào)文進(jìn)行QoS處理。報(bào)文進(jìn)入或流出CP時(shí)進(jìn)行流分類及相應(yīng)的流處理。產(chǎn)品實(shí)現(xiàn)時(shí),在 轉(zhuǎn)發(fā)流程中,對(duì)報(bào)文作出了上送控制平面的決策后,即可進(jìn)行控制平面策略的處理。
入方向控制平面策略實(shí)現(xiàn)可用圖3所示。 圖3中,Aggregate CP Service是對(duì)所有上送控制平面的報(bào)文進(jìn)行QoS處理的單 元,控制平面策略作用于所有的無交換路由功能的線卡收到的報(bào)文和分布式交換路由引擎 決定上送CP的報(bào)文,包括路由協(xié)議報(bào)文、鏈路層協(xié)議報(bào)文、目的地址為本地IP地址的報(bào)文 以及管理類協(xié)議報(bào)文如SNMP(SimpleNetwork Management Protocol,簡(jiǎn)單網(wǎng)絡(luò)管理協(xié)議)、 Telnet、 SSH(Secure ShellClient,安全外殼客戶端)等。Distributed CP Service是對(duì) 分布式線卡上對(duì)上送控制平面的報(bào)文進(jìn)行QoS處理的單元,策略作用于接收到的上線卡自 身CP或上送主控板CP的報(bào)文。 對(duì)于分布式和集式設(shè)備,對(duì)報(bào)文的策略處理存在差別,對(duì)于Aggregate CPService 的處理如下 線卡將接收到的報(bào)文送入Central Switch Engine處理;
Central Switch Engine在接口上對(duì)報(bào)文進(jìn)行普通的QoS處理;
Central Switch Engine對(duì)報(bào)文進(jìn)行路由或交換處理,決定是否將報(bào)文上送CPU處 理; Central Switch Engine對(duì)上送控制平面的報(bào)文進(jìn)行QoS處理。 Distributed CP Service處理分布式線卡上收到的控制平面報(bào)文的流程如下 線卡收到的報(bào)文送入Distributed Switch Engine;Distributed Switch Engine X寸矛艮文進(jìn)行普通的QoS處理; Distributed Switch Engine對(duì)報(bào)文進(jìn)行路由或交換處理,決定是否將報(bào)文上送 控制平面處理;Distributed Switch Engine對(duì)上送控制平面的報(bào)文進(jìn)行QoS策略處理;Distributed Switch Engine將矛艮文送《主Central Switch Engine處理或在分布
式線卡的控制平面進(jìn)行處理。 現(xiàn)有技術(shù)中存在的問題在于現(xiàn)有技術(shù)中,將每一種協(xié)議劃分成一種類型,并分配 不同的上送CPU隊(duì)列帶寬,由于支持的協(xié)議種類繁多,但是總的入口帶寬固定,因此分配給 現(xiàn)在每個(gè)協(xié)議的隊(duì)列帶寬就相對(duì)較少,導(dǎo)致一些協(xié)議的處理性能低下。而在實(shí)際組網(wǎng)引用 中不可能是每個(gè)協(xié)議都會(huì)運(yùn)行,比如常見的域內(nèi)路由協(xié)議有OSPF(Open Shortest Path First,開放最短路徑優(yōu)先)、ISIS (Intermediate System to Intermediate System,中間系 統(tǒng)到中間系統(tǒng))、RIP (Routing information Protocol,路由信息選擇協(xié)議)等協(xié)議,在實(shí) 際組網(wǎng)應(yīng)用中, 一般都只會(huì)選擇一種域內(nèi)路由協(xié)議。使用現(xiàn)有技術(shù)中提供的方法時(shí),為0SPF 分配lOOOpps (packet per second,包/秒)的隊(duì)列帶寬、為RIP分配500卯s的隊(duì)列帶寬, 為ISIS分配lOOOpps的隊(duì)列帶寬。這樣OSPF協(xié)議報(bào)文處理能力最大就為lOOO卯s,但是整 機(jī)系統(tǒng)為域內(nèi)路由協(xié)議預(yù)留了 2500pps,導(dǎo)致實(shí)際應(yīng)用中浪費(fèi)了 1500pps的隊(duì)列帶寬。
發(fā)明內(nèi)容
本發(fā)明提供一種報(bào)文上送CPU的控制方法和裝置,用于優(yōu)化現(xiàn)有技術(shù)中協(xié)議報(bào)文 上送CPU隊(duì)列的方法,提高上送CPU隊(duì)列資源的使用效率。
本發(fā)明提供了一種報(bào)文上送CPU的控制方法,包括 根據(jù)設(shè)備支持的協(xié)議,定義每種協(xié)議對(duì)應(yīng)的特性并為每種特性分配具有一定帶寬 的隊(duì)列; 對(duì)于每一特性,將與其互斥的不能同時(shí)存在的各種特性、和/或用于實(shí)現(xiàn)相同或 相似功能的各種特性組成一個(gè)調(diào)度器;且一個(gè)調(diào)度器的隊(duì)列帶寬是所述調(diào)度器包括的特性 的隊(duì)列帶寬的總和; 將所有調(diào)度器集合應(yīng)用于上送CPU的隊(duì)列端口 ,得到CPU控制策略; 根據(jù)所述CPU控制策略對(duì)上送CPU處理的各種協(xié)議報(bào)文進(jìn)行控制。 其中,所述根據(jù)所述CPU控制策略對(duì)上送CPU處理的各種協(xié)議報(bào)文進(jìn)行控制,包
括 當(dāng)某一協(xié)議的報(bào)文上送速度小于為所述協(xié)議對(duì)應(yīng)的特性分配的隊(duì)列帶寬時(shí),將所 述協(xié)議的報(bào)文按照所述上送速度上送到CPU進(jìn)行處理。 其中,所述根據(jù)所述CPU控制策略對(duì)上送CPU處理的各種協(xié)議報(bào)文進(jìn)行控制,包 括
當(dāng)某一協(xié)議的報(bào)文上送速度大于為所述協(xié)議對(duì)應(yīng)的特性分配的隊(duì)列帶寬、但小于 其對(duì)應(yīng)的特性所屬的調(diào)度器的隊(duì)列帶寬值時(shí),根據(jù)其對(duì)應(yīng)的特性所屬的調(diào)度器中所有協(xié)議 的報(bào)文上送速度之和,對(duì)所述協(xié)議的報(bào)文上送速度進(jìn)行控制。 其中,所述根據(jù)其對(duì)應(yīng)的特性所屬的調(diào)度器中其他協(xié)議的報(bào)文上送速度,對(duì)所述 協(xié)議的報(bào)文上送速度進(jìn)行控制,包括 其對(duì)應(yīng)的特性所屬的調(diào)度器中所有協(xié)議的報(bào)文上送速度之和小于等于所述調(diào)度
器的隊(duì)列帶寬時(shí),將所述協(xié)議的報(bào)文按照所述上送速度上送到CPU進(jìn)行處理; 其對(duì)應(yīng)的特性所屬的調(diào)度器中所有協(xié)議的報(bào)文上送速度之和大于所述調(diào)度器的
隊(duì)列帶寬時(shí),將所述協(xié)議的上送的報(bào)文按照一定的比例進(jìn)行丟棄。 其中,所述根據(jù)所述CPU控制策略對(duì)上送CPU處理的各種協(xié)議報(bào)文進(jìn)行控制,包 括 當(dāng)某一協(xié)議的報(bào)文上送速度大于為所述協(xié)議對(duì)應(yīng)的特性所屬的調(diào)度器的隊(duì)列帶 寬值時(shí),將所述協(xié)議的上送的報(bào)文中超出所述調(diào)度器的隊(duì)列帶寬值的部分進(jìn)行丟棄。
本發(fā)明還提供一種報(bào)文上送CPU的控制裝置,包括 調(diào)度器設(shè)置單元,用于根據(jù)設(shè)備支持的協(xié)議,定義每種協(xié)議對(duì)應(yīng)的特性并為每種 特性分配具有一定帶寬的隊(duì)列;對(duì)于每一特性,將與其互斥的不能同時(shí)存在的各種特性、和 /或用于實(shí)現(xiàn)相同或相似功能的各種特性組成一個(gè)調(diào)度器;且一個(gè)調(diào)度器的隊(duì)列帶寬是所 述調(diào)度器包括的特性的隊(duì)列帶寬的總和; 策略生成單元,用于將所述調(diào)度器設(shè)置單元得到的所有調(diào)度器集合應(yīng)用于上送 CPU的隊(duì)列端口 ,得到CPU控制策略; 控制單元,用于根據(jù)所述策略生成單元生成的CPU控制策略對(duì)上送CPU處理的各
種協(xié)議報(bào)文進(jìn)行控制。 其中,所述控制單元具體用于 當(dāng)某一協(xié)議的報(bào)文上送速度小于為所述協(xié)議對(duì)應(yīng)的特性分配的隊(duì)列帶寬時(shí),將所 述協(xié)議的報(bào)文按照所述上送速度上送到CPU進(jìn)行處理。
其中,所述控制單元具體用于 當(dāng)某一協(xié)議的報(bào)文上送速度大于為所述協(xié)議對(duì)應(yīng)的特性分配的隊(duì)列帶寬、但小于 其對(duì)應(yīng)的特性所屬的調(diào)度器的隊(duì)列帶寬值時(shí),根據(jù)其對(duì)應(yīng)的特性所屬的調(diào)度器中所有協(xié)議 的報(bào)文上送速度之和,對(duì)所述協(xié)議的報(bào)文上送速度進(jìn)行控制。 其中,所述控制單元根據(jù)所述某一協(xié)議的報(bào)文對(duì)應(yīng)的特性所屬的調(diào)度器中所有協(xié)
議的報(bào)文上送速度之和,對(duì)所述協(xié)議的報(bào)文上送速度進(jìn)行控制時(shí),具體用于 其對(duì)應(yīng)的特性所屬的調(diào)度器中所有協(xié)議的報(bào)文上送速度之和小于等于所述調(diào)度
器的隊(duì)列帶寬時(shí),將所述協(xié)議的報(bào)文按照所述上送速度上送到CPU進(jìn)行處理; 其對(duì)應(yīng)的特性所屬的調(diào)度器中所有協(xié)議的報(bào)文上送速度之和大于所述調(diào)度器的
隊(duì)列帶寬時(shí),將所述協(xié)議的上送的報(bào)文按照一定的比例進(jìn)行丟棄。 其中,所述控制單元具體用于 當(dāng)某一協(xié)議的報(bào)文上送速度大于為所述協(xié)議對(duì)應(yīng)的特性所屬的調(diào)度器的隊(duì)列帶 寬值時(shí),將所述協(xié)議的上送的報(bào)文中超出所述調(diào)度器的隊(duì)列帶寬值的部分進(jìn)行丟棄。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點(diǎn)優(yōu)化了現(xiàn)有技術(shù)中協(xié)議報(bào)文上送CPU隊(duì)
7列的方法,提高了上送CPU隊(duì)列資源的使用效率。
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可 以根據(jù)這些附圖獲得其他的附圖。
圖1是現(xiàn)有技術(shù)中接口板上送報(bào)文到主控板CPU的示意圖;
圖2是現(xiàn)有技術(shù)中交換路由設(shè)備控制平面與數(shù)據(jù)平面模型圖;
圖3是現(xiàn)有技術(shù)中入方向控制平面策略的示意圖;
圖4是本發(fā)明中提供的報(bào)文上送CPU控制方法的流程圖;
圖5是本發(fā)明中將調(diào)度策略劃分成分層次的樹狀結(jié)構(gòu)的示意圖;
圖6是本發(fā)明中提供的報(bào)文上送CPU的控制裝置的結(jié)構(gòu)示意圖。
具體實(shí)施例方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完 整地描述,顯然,所描述的實(shí)施例僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒?發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí) 施例,都屬于本發(fā)明保護(hù)的范圍。 本發(fā)明提供了一種報(bào)文上送CPU的控制方法,如圖4所示,包括 步驟s401、根據(jù)設(shè)備支持的協(xié)議,定義每種協(xié)議對(duì)應(yīng)的特性并為每種特性分配具
有一定帶寬的隊(duì)列; 步驟s402、對(duì)于每一特性,將與其互斥的不能同時(shí)存在的各種特性、和/或用于實(shí) 現(xiàn)相同或相似功能的各種特性組成一個(gè)調(diào)度器;且一個(gè)調(diào)度器的隊(duì)列帶寬是該調(diào)度器包括 的特性的隊(duì)列帶寬的總和; 步驟s403、將所有調(diào)度器集合應(yīng)用于上送CPU的隊(duì)列端口 ,得到CPU控制策略;
步驟s404、根據(jù)CPU控制策略對(duì)上送CPU處理的各種協(xié)議報(bào)文進(jìn)行控制。
本發(fā)明提供的方法中,首先根據(jù)設(shè)備支持的協(xié)議,定義每種協(xié)議對(duì)應(yīng)的特性;之 后對(duì)設(shè)備的實(shí)際組網(wǎng)應(yīng)用和具體業(yè)務(wù)進(jìn)行分析,以發(fā)現(xiàn)設(shè)備支持的特性之間的相似關(guān)系或 互斥關(guān)系。具體的,某些特性彼此互斥,一般不會(huì)在一臺(tái)設(shè)備上同時(shí)使用,使能了 A特性就 不能使能B特性,例如STP(SpanningTree Protocol,生成樹協(xié)議)和RRPP(Rapid Ring Protection Protocol,快速環(huán)網(wǎng)保護(hù)協(xié)議);或者一些特性類似的特性比如域內(nèi)路由協(xié)議 如OSPF、RIP、ISIS等。與現(xiàn)有技術(shù)中將每種特性都規(guī)定好隊(duì)列寬度的方法相比,本發(fā)明中 在每種特性的基礎(chǔ)上增加額外一級(jí)調(diào)度模型,將這些類似特性和互斥特性放在一起分配一 定的帶寬,然后在這個(gè)內(nèi)部再細(xì)分帶寬,形成二級(jí)的調(diào)度模型。該調(diào)度模型如圖5所示,這 樣可以擴(kuò)大上送CPU隊(duì)列的報(bào)文寬度。調(diào)度方式可以劃分為如物理級(jí)別、邏輯級(jí)別(應(yīng)用 業(yè)務(wù)級(jí)別)兩個(gè)調(diào)度級(jí)別。 如圖5所示,本發(fā)明的一個(gè)實(shí)施例中,所提供的調(diào)度算法將調(diào)度策略劃分成了分 層次的樹狀結(jié)構(gòu)。樹狀結(jié)構(gòu)的節(jié)點(diǎn)類型共有三種根節(jié)點(diǎn)、分支節(jié)點(diǎn)和葉子節(jié)點(diǎn)。根節(jié)點(diǎn)是上送CPU流量的匯聚點(diǎn),與一個(gè)調(diào)度器(Scheduler)相對(duì)應(yīng);處于最底層的每個(gè)葉子節(jié)點(diǎn)都 分別與一個(gè)調(diào)度隊(duì)列(Queue)相對(duì)應(yīng),這里每一個(gè)調(diào)度隊(duì)列和一個(gè)CPU Code相對(duì)應(yīng),表示 了每種協(xié)議的保證帶寬。處于中間層次的每個(gè)分支節(jié)點(diǎn)都分別與一個(gè)調(diào)度器(Scheduler) 相對(duì)應(yīng),這些分支節(jié)點(diǎn)表示一些互斥特性或者相似特性共享的帶寬。對(duì)于中間層次的調(diào)度 器,其總帶寬等于底層多個(gè)調(diào)度隊(duì)列的帶寬總和。使用該劃分方法時(shí),若在中間層次的調(diào)度 器下的互斥特性或者相似特性中只有一個(gè)特性使能時(shí),這個(gè)特性的帶寬能夠使用整個(gè)調(diào)度 器的帶寬;當(dāng)同時(shí)有多個(gè)特性使能時(shí),分別使用各自的帶寬。 基于上述圖5所示的結(jié)構(gòu),本發(fā)明的應(yīng)用場(chǎng)景中,報(bào)文上送CPU的控制方法的實(shí)現(xiàn) 步驟可以具體包括 (1)根據(jù)設(shè)備支持的特性,詳細(xì)定義每種協(xié)議的特性,得到每種協(xié)議報(bào)文的CPU Code,并為其分配具有一定帶寬的調(diào)度隊(duì)列,該分配的帶寬是每個(gè)調(diào)度隊(duì)列承諾的帶寬;
(2)根據(jù)業(yè)務(wù)的使用情況,分析各個(gè)特性的互斥性和作用,將一些互斥特性和類似 特性組成一個(gè)調(diào)度器;調(diào)度器的隊(duì)列帶寬為調(diào)度器中各個(gè)特性的隊(duì)列帶寬的總和;對(duì)于某 些非常重要的特性,可以將其單獨(dú)成為一個(gè)調(diào)度器。經(jīng)過該步驟后,所有的特性都將唯一屬 于一個(gè)調(diào)度器。
(3)將所有調(diào)度器集合應(yīng)用在CPU的隊(duì)列端口上,形成控制策略;并根據(jù)該控制策
略對(duì)上送CPU的報(bào)文進(jìn)行控制。 該根據(jù)控制策略進(jìn)行的控制具體包括 當(dāng)某種協(xié)議報(bào)文的上送速度不超過為其分配的調(diào)度隊(duì)列的隊(duì)列帶寬時(shí),所有的該 種協(xié)議報(bào)文都不會(huì)丟棄,全部上送到CPU。為了直觀的反映報(bào)文上送的情況,對(duì)于該種調(diào)度 隊(duì)列中的報(bào)文,可以在管理設(shè)備中標(biāo)記為綠色報(bào)文, 當(dāng)某種協(xié)議報(bào)文上送速度超過為其分配的調(diào)度隊(duì)列的隊(duì)列帶寬、但是不超過其所 屬的調(diào)度器的隊(duì)列帶寬時(shí),對(duì)能夠保證其調(diào)度隊(duì)列的隊(duì)列帶寬的報(bào)文全部上送到CPU(標(biāo) 記為綠色報(bào)文),超過其調(diào)度隊(duì)列的隊(duì)列帶寬的報(bào)文可以在管理設(shè)備中標(biāo)記為黃色報(bào)文,視 同一調(diào)度隊(duì)列其他協(xié)議的報(bào)文情況,參與調(diào)度。 當(dāng)某種協(xié)議報(bào)文上送速度超過其所屬的調(diào)度器的隊(duì)列帶寬時(shí),超過調(diào)度器的隊(duì)列 帶寬的報(bào)文將被全部丟棄,對(duì)于該部分報(bào)文可以在管理設(shè)備中標(biāo)記為紅色報(bào)文。
對(duì)于報(bào)文丟棄處理而言,報(bào)文丟棄是防止流量擁塞的一種措施。設(shè)備在接收?qǐng)?bào)文 時(shí)為報(bào)文分配丟棄級(jí)別,也可以稱為對(duì)報(bào)文著色,不同顏色的報(bào)文進(jìn)入不同的隊(duì)列。為不同 顏色的報(bào)文隊(duì)列配置丟棄參數(shù)(限制隊(duì)列的長(zhǎng)度),在報(bào)文隊(duì)列達(dá)到某一隊(duì)列長(zhǎng)度閾值時(shí), 開始相應(yīng)的丟棄動(dòng)作。在按照隊(duì)列對(duì)報(bào)文進(jìn)行丟棄時(shí)綜合考慮了丟棄級(jí)別。在本發(fā)明的應(yīng) 用場(chǎng)景中,以一個(gè)調(diào)度器中包括三種協(xié)議報(bào)文A、B和C的調(diào)度隊(duì)列為例,其對(duì)應(yīng)的調(diào)度隊(duì)列 的隊(duì)列帶寬分別為BWA、BWB和BWC,調(diào)度器的隊(duì)列帶寬BW = BWA+BWB+BWC。假設(shè)BWA = 500卯s, BWB = 500卯s, BWC = 500卯s,合計(jì)BW = 1500卯s。假設(shè)某時(shí)刻上送CPU處理的協(xié)議報(bào)文A 的流量為300pps,協(xié)議報(bào)文B的流量為600pps,協(xié)議報(bào)文C的流量為800pps。則協(xié)議報(bào)文 A的流量為300pps < 500pps,標(biāo)記為綠色報(bào)文,可以全部轉(zhuǎn)發(fā);協(xié)議報(bào)文B的流量為600pps > 500pps,則500pps內(nèi)的流量標(biāo)記為綠色報(bào)文,可以全部轉(zhuǎn)發(fā),之外的lOOpps內(nèi)的流量標(biāo) 記為黃色報(bào)文;協(xié)議報(bào)文C的流量為800pps > 500卯s,則500pps內(nèi)的流量標(biāo)記為綠色報(bào) 文,可以全部轉(zhuǎn)發(fā),之外的300pps內(nèi)的流量標(biāo)記為黃色報(bào)文。由于上送CPU處理的協(xié)議報(bào)文流量300pps+600pps+800pps = 1700pps > BW(1500pps),因此對(duì)于協(xié)議報(bào)文B的流量為 100pps的黃色報(bào)文、以及協(xié)議報(bào)文C的流量為300pps的黃色報(bào)文,進(jìn)行輪流調(diào)度,丟棄部分 協(xié)議報(bào)文(流量為200pps)以滿足調(diào)度器的隊(duì)列帶寬BW(1500pps)。對(duì)于丟棄部分的協(xié)議 報(bào)文標(biāo)記為紅色報(bào)文。對(duì)于丟棄部分的協(xié)議報(bào)文可以按照一定的比例或采用輪流調(diào)度的方 式從待丟棄的多種協(xié)議報(bào)文中產(chǎn)生。 通過本發(fā)明提供的上述方法,優(yōu)化了現(xiàn)有技術(shù)中協(xié)議報(bào)文上送CPU隊(duì)列的方法, 提高了上送CPU隊(duì)列資源的使用效率。 本發(fā)明還提供了一種報(bào)文上送CPU的控制裝置,如圖6所示,包括
調(diào)度器設(shè)置單元10,用于根據(jù)設(shè)備支持的協(xié)議,定義每種協(xié)議對(duì)應(yīng)的特性并為每 種特性分配具有一定帶寬的隊(duì)列;對(duì)于每一特性,將與其互斥的不能同時(shí)存在的各種特性、 和/或用于實(shí)現(xiàn)相同或相似功能的各種特性組成一個(gè)調(diào)度器;且一個(gè)調(diào)度器的隊(duì)列帶寬是 該調(diào)度器包括的特性的隊(duì)列帶寬的總和; 策略生成單元20,用于將調(diào)度器設(shè)置單元10得到的所有調(diào)度器集合應(yīng)用于上送 CPU的隊(duì)列端口 ,得到CPU控制策略; 控制單元30,用于根據(jù)策略生成單元20生成的CPU控制策略對(duì)上送CPU處理的各 種協(xié)議報(bào)文進(jìn)行控制。具體的控制方法包括 (1)當(dāng)某一協(xié)議的報(bào)文上送速度小于為協(xié)議對(duì)應(yīng)的特性分配的隊(duì)列帶寬時(shí),將協(xié) 議的報(bào)文按照上送速度上送到CPU進(jìn)行處理。 (2)當(dāng)某一協(xié)議的報(bào)文上送速度大于為協(xié)議對(duì)應(yīng)的特性分配的隊(duì)列帶寬、但小于 其對(duì)應(yīng)的特性所屬的調(diào)度器的隊(duì)列帶寬值時(shí),根據(jù)其對(duì)應(yīng)的特性所屬的調(diào)度器中所有協(xié)議 的報(bào)文上送速度之和,對(duì)協(xié)議的報(bào)文上送速度進(jìn)行控制。具體的其對(duì)應(yīng)的特性所屬的調(diào)度 器中所有協(xié)議的報(bào)文上送速度之和小于等于調(diào)度器的隊(duì)列帶寬時(shí),將協(xié)議的報(bào)文按照上送 速度上送到CPU進(jìn)行處理;其對(duì)應(yīng)的特性所屬的調(diào)度器中所有協(xié)議的報(bào)文上送速度之和大 于調(diào)度器的隊(duì)列帶寬時(shí),將協(xié)議的上送的報(bào)文按照一定的比例進(jìn)行丟棄。
(3)當(dāng)某一協(xié)議的報(bào)文上送速度大于為協(xié)議對(duì)應(yīng)的特性所屬的調(diào)度器的隊(duì)列帶寬
值時(shí),將協(xié)議的上送的報(bào)文中超出調(diào)度器的隊(duì)列帶寬值的部分進(jìn)行丟棄。 通過本發(fā)明提供的上述裝置,優(yōu)化了現(xiàn)有技術(shù)中協(xié)議報(bào)文上送CPU隊(duì)列的方法,
提高了上送CPU隊(duì)列資源的使用效率。 通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可以通
過硬件實(shí)現(xiàn),也可以借助軟件加必要的通用硬件平臺(tái)的方式來實(shí)現(xiàn)?;谶@樣的理解,本發(fā)
明的技術(shù)方案可以以軟件產(chǎn)品的形式體現(xiàn)出來,該軟件產(chǎn)品可以存儲(chǔ)在一個(gè)非易失性存儲(chǔ)
介質(zhì)(可以是CD-ROM, U盤,移動(dòng)硬盤等)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可
以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。 本領(lǐng)域技術(shù)人員可以理解附圖只是一個(gè)優(yōu)選實(shí)施例的示意圖,附圖中的單元或流
程并不一定是實(shí)施本發(fā)明所必須的。 本領(lǐng)域技術(shù)人員可以理解實(shí)施例中的裝置中的單元可以按照實(shí)施例描述進(jìn)行分 布于實(shí)施例的裝置中,也可以進(jìn)行相應(yīng)變化位于不同于本實(shí)施例的一個(gè)或多個(gè)裝置中。上 述實(shí)施例的單元可以合并為一個(gè)單元,也可以進(jìn)一步拆分成多個(gè)子單元。
上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
權(quán)利要求
一種報(bào)文上送CPU的控制方法,其特征在于,包括根據(jù)設(shè)備支持的協(xié)議,定義每種協(xié)議對(duì)應(yīng)的特性并為每種特性分配具有一定帶寬的隊(duì)列;對(duì)于每一特性,將與其互斥的不能同時(shí)存在的各種特性、和/或用于實(shí)現(xiàn)相同或相似功能的各種特性組成一個(gè)調(diào)度器;且一個(gè)調(diào)度器的隊(duì)列帶寬是所述調(diào)度器包括的特性的隊(duì)列帶寬的總和;將所有調(diào)度器集合應(yīng)用于上送CPU的隊(duì)列端口,得到CPU控制策略;根據(jù)所述CPU控制策略對(duì)上送CPU處理的各種協(xié)議報(bào)文進(jìn)行控制。
2. 如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述CPU控制策略對(duì)上送CPU處理的各種協(xié)議報(bào)文進(jìn)行控制,包括當(dāng)某一協(xié)議的報(bào)文上送速度小于為所述協(xié)議對(duì)應(yīng)的特性分配的隊(duì)列帶寬時(shí),將所述協(xié)議的報(bào)文按照所述上送速度上送到CPU進(jìn)行處理。
3. 如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述CPU控制策略對(duì)上送CPU處理的各種協(xié)議報(bào)文進(jìn)行控制,包括當(dāng)某一協(xié)議的報(bào)文上送速度大于為所述協(xié)議對(duì)應(yīng)的特性分配的隊(duì)列帶寬、但小于其對(duì)應(yīng)的特性所屬的調(diào)度器的隊(duì)列帶寬值時(shí),根據(jù)其對(duì)應(yīng)的特性所屬的調(diào)度器中所有協(xié)議的報(bào)文上送速度之和,對(duì)所述協(xié)議的報(bào)文上送速度進(jìn)行控制。
4. 如權(quán)利要求3所述的方法,其特征在于,所述根據(jù)其對(duì)應(yīng)的特性所屬的調(diào)度器中其他協(xié)議的報(bào)文上送速度,對(duì)所述協(xié)議的報(bào)文上送速度進(jìn)行控制,包括其對(duì)應(yīng)的特性所屬的調(diào)度器中所有協(xié)議的報(bào)文上送速度之和小于等于所述調(diào)度器的隊(duì)列帶寬時(shí),將所述協(xié)議的報(bào)文按照所述上送速度上送到CPU進(jìn)行處理;其對(duì)應(yīng)的特性所屬的調(diào)度器中所有協(xié)議的報(bào)文上送速度之和大于所述調(diào)度器的隊(duì)列帶寬時(shí),將所述協(xié)議的上送的報(bào)文按照一定的比例進(jìn)行丟棄。
5. 如權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述CPU控制策略對(duì)上送CPU處理的各種協(xié)議報(bào)文進(jìn)行控制,包括當(dāng)某一協(xié)議的報(bào)文上送速度大于為所述協(xié)議對(duì)應(yīng)的特性所屬的調(diào)度器的隊(duì)列帶寬值時(shí),將所述協(xié)議的上送的報(bào)文中超出所述調(diào)度器的隊(duì)列帶寬值的部分進(jìn)行丟棄。
6. —種報(bào)文上送CPU的控制裝置,其特征在于,包括調(diào)度器設(shè)置單元,用于根據(jù)設(shè)備支持的協(xié)議,定義每種協(xié)議對(duì)應(yīng)的特性并為每種特性分配具有一定帶寬的隊(duì)列;對(duì)于每一特性,將與其互斥的不能同時(shí)存在的各種特性、和/或用于實(shí)現(xiàn)相同或相似功能的各種特性組成一個(gè)調(diào)度器;且一個(gè)調(diào)度器的隊(duì)列帶寬是所述調(diào)度器包括的特性的隊(duì)列帶寬的總和;策略生成單元,用于將所述調(diào)度器設(shè)置單元得到的所有調(diào)度器集合應(yīng)用于上送CPU的隊(duì)列端口,得到CPU控制策略;控制單元,用于根據(jù)所述策略生成單元生成的CPU控制策略對(duì)上送CPU處理的各種協(xié)議報(bào)文進(jìn)行控制。
7. 如權(quán)利要求6所述的裝置,其特征在于,所述控制單元具體用于當(dāng)某一協(xié)議的報(bào)文上送速度小于為所述協(xié)議對(duì)應(yīng)的特性分配的隊(duì)列帶寬時(shí),將所述協(xié)議的報(bào)文按照所述上送速度上送到CPU進(jìn)行處理。
8. 如權(quán)利要求6所述的裝置,其特征在于,所述控制單元具體用于當(dāng)某一協(xié)議的報(bào)文上送速度大于為所述協(xié)議對(duì)應(yīng)的特性分配的隊(duì)列帶寬、但小于其對(duì) 應(yīng)的特性所屬的調(diào)度器的隊(duì)列帶寬值時(shí),根據(jù)其對(duì)應(yīng)的特性所屬的調(diào)度器中所有協(xié)議的報(bào) 文上送速度之和,對(duì)所述協(xié)議的報(bào)文上送速度進(jìn)行控制。
9. 如權(quán)利要求8所述的裝置,其特征在于,所述控制單元根據(jù)所述某一協(xié)議的報(bào)文對(duì) 應(yīng)的特性所屬的調(diào)度器中所有協(xié)議的報(bào)文上送速度之和,對(duì)所述協(xié)議的報(bào)文上送速度進(jìn)行控制時(shí),具體用于其對(duì)應(yīng)的特性所屬的調(diào)度器中所有協(xié)議的報(bào)文上送速度之和小于等于所述調(diào)度器的 隊(duì)列帶寬時(shí),將所述協(xié)議的報(bào)文按照所述上送速度上送到CPU進(jìn)行處理;其對(duì)應(yīng)的特性所屬的調(diào)度器中所有協(xié)議的報(bào)文上送速度之和大于所述調(diào)度器的隊(duì)列 帶寬時(shí),將所述協(xié)議的上送的報(bào)文按照一定的比例進(jìn)行丟棄。
10. 如權(quán)利要求6所述的裝置,其特征在于,所述控制單元具體用于當(dāng)某一協(xié)議的報(bào)文上送速度大于為所述協(xié)議對(duì)應(yīng)的特性所屬的調(diào)度器的隊(duì)列帶寬值 時(shí),將所述協(xié)議的上送的報(bào)文中超出所述調(diào)度器的隊(duì)列帶寬值的部分進(jìn)行丟棄。
全文摘要
本發(fā)明公開了一種報(bào)文上送CPU的控制方法和裝置。該方法包括根據(jù)設(shè)備支持的協(xié)議,定義每種協(xié)議對(duì)應(yīng)的特性并為每種特性分配具有一定帶寬的隊(duì)列;對(duì)于每一特性,將與其互斥的不能同時(shí)存在的各種特性、和/或用于實(shí)現(xiàn)相同或相似功能的各種特性組成一個(gè)調(diào)度器;且一個(gè)調(diào)度器的隊(duì)列帶寬是所述調(diào)度器包括的特性的隊(duì)列帶寬的總和;將所有調(diào)度器集合應(yīng)用于上送CPU的隊(duì)列端口,得到CPU控制策略;根據(jù)所述CPU控制策略對(duì)上送CPU處理的各種協(xié)議報(bào)文進(jìn)行控制。通過使用本發(fā)明,優(yōu)化了現(xiàn)有技術(shù)中協(xié)議報(bào)文上送CPU隊(duì)列的方法,提高了上送CPU隊(duì)列資源的使用效率。
文檔編號(hào)H04L12/56GK101699817SQ200910210479
公開日2010年4月28日 申請(qǐng)日期2009年11月4日 優(yōu)先權(quán)日2009年11月4日
發(fā)明者王偉 申請(qǐng)人:杭州華三通信技術(shù)有限公司