專利名稱:分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的方法和裝置。
背景技術(shù):
隨著網(wǎng)絡(luò)中各種業(yè)務(wù)的迅猛增長(zhǎng),人們對(duì)網(wǎng)絡(luò)的服務(wù)質(zhì)量越來(lái)越關(guān)心,隊(duì)列調(diào)度 算法作為保證網(wǎng)絡(luò)有效性和實(shí)用性的一項(xiàng)關(guān)鍵技術(shù),近年來(lái)引起了網(wǎng)絡(luò)研究者的廣泛關(guān)注?,F(xiàn)有技術(shù)中的隊(duì)列調(diào)度算法包括嚴(yán)格優(yōu)先級(jí)(Strict Priority ;以下簡(jiǎn)稱SP) 隊(duì)列調(diào)度算法和基于概率的隊(duì)列調(diào)度算法。其中,SP隊(duì)列調(diào)度算法是對(duì)分組進(jìn)行分類,按 照分組的類別將分組送入相應(yīng)的隊(duì)列,分類后屬于較高優(yōu)先級(jí)隊(duì)列的分組被優(yōu)先發(fā)送,而 屬于較低優(yōu)先級(jí)隊(duì)列的分組則等待至無(wú)較高優(yōu)先級(jí)的分組發(fā)送時(shí)才能搶占到信道。而基于 概率的隊(duì)列調(diào)度算法則為每個(gè)隊(duì)列分配一個(gè)概率,在每次隊(duì)列調(diào)度時(shí),從第一個(gè)隊(duì)列開始 輪詢,當(dāng)輪詢到的隊(duì)列非空時(shí),則以分配的概率來(lái)進(jìn)行調(diào)度。在實(shí)現(xiàn)本發(fā)明過(guò)程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問(wèn)題SP隊(duì)列調(diào)度算 法可以保證每個(gè)隊(duì)列的絕對(duì)優(yōu)先級(jí),但其對(duì)于較高優(yōu)先級(jí)隊(duì)列網(wǎng)絡(luò)性能的保證是以犧牲較 低優(yōu)先級(jí)隊(duì)列網(wǎng)絡(luò)性能為代價(jià)的,在網(wǎng)絡(luò)繁忙時(shí)較低優(yōu)先級(jí)隊(duì)列可能長(zhǎng)時(shí)間不能被調(diào)度。 基于概率的隊(duì)列調(diào)度算法雖然對(duì)較低優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能有一定保證,但削減了對(duì)較高 優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能的嚴(yán)格保障。因此,這兩種方法無(wú)法兼顧較高優(yōu)先級(jí)隊(duì)列和較低優(yōu) 先級(jí)隊(duì)列的網(wǎng)絡(luò)性能。
發(fā)明內(nèi)容
本發(fā)明提供一種分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的方法和裝置,用以解決現(xiàn)有技術(shù)中無(wú) 法兼顧較高優(yōu)先級(jí)隊(duì)列和較低優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能的缺陷,實(shí)現(xiàn)在嚴(yán)格保證高優(yōu)先級(jí)隊(duì) 列的網(wǎng)絡(luò)性能的同時(shí),提高低優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能。本發(fā)明提供一種分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的方法,包括根據(jù)各隊(duì)列的網(wǎng)絡(luò)性能要求對(duì)所述隊(duì)列進(jìn)行逐級(jí)劃分,并形成樹形結(jié)構(gòu)的優(yōu)先級(jí) 隊(duì)列組;從接收到的分組的分組頭中提取所述分組的類別標(biāo)識(shí),根據(jù)所述類別標(biāo)識(shí)將所述 分組歸入所屬的隊(duì)列尾部;按照所述樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組,選擇嚴(yán)格優(yōu)先級(jí)隊(duì)列調(diào)度法或基于概率的隊(duì) 列調(diào)度法對(duì)當(dāng)前的所述優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度。本發(fā)明提供一種分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的裝置,包括隊(duì)列劃分模塊,用于根據(jù)各隊(duì)列的網(wǎng)絡(luò)性能要求對(duì)所述隊(duì)列進(jìn)行逐級(jí)劃分,并形 成樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組;分組歸類模塊,用于從接收到的分組的分組頭中提取所述分組的類別標(biāo)識(shí),根據(jù)所述類別標(biāo)識(shí)將所述分組歸入所屬的隊(duì)列尾部;隊(duì)列調(diào)度模塊,用于按照所述樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組,選擇嚴(yán)格優(yōu)先級(jí)隊(duì)列調(diào) 度法或基于概率的隊(duì)列調(diào)度法對(duì)當(dāng)前的所述優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度。本發(fā)明的分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的方法和裝置,通過(guò)根據(jù)網(wǎng)絡(luò)中各隊(duì)列的網(wǎng)絡(luò) 性能要求對(duì)隊(duì)列進(jìn)行逐級(jí)劃分,并形成樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組,根據(jù)接收到的分組的類 別標(biāo)識(shí)將分組歸入所屬的隊(duì)列尾部,然后按照樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組,選擇嚴(yán)格優(yōu)先級(jí) 隊(duì)列調(diào)度法或基于概率的隊(duì)列調(diào)度法對(duì)當(dāng)前的優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度;本實(shí)施例 解決了現(xiàn)有技術(shù)中無(wú)法兼顧較高優(yōu)先級(jí)隊(duì)列和較低優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能的缺陷,實(shí)現(xiàn)了 在嚴(yán)格保證高優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能的同時(shí),提高了低優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能。
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作一簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖是本發(fā) 明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以 根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的方法實(shí)施例一的流程圖;圖2為本發(fā)明分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的方法實(shí)施例二的流程圖;圖3為本發(fā)明分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的方法實(shí)施例二中優(yōu)先級(jí)隊(duì)列組的樹形 結(jié)構(gòu)圖;圖4為本發(fā)明分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的裝置實(shí)施例一的結(jié)構(gòu)示意圖;圖5為本發(fā)明分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的裝置實(shí)施例二的結(jié)構(gòu)示意圖。
具體實(shí)施例方式為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例 中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是 本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員 在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。圖1為本發(fā)明分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的方法實(shí)施例一的流程圖,如圖1所示,本 實(shí)施例提供了一種分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的方法,可以包括如下步驟步驟101,根據(jù)各隊(duì)列的網(wǎng)絡(luò)性能要求對(duì)所述隊(duì)列進(jìn)行逐級(jí)劃分,并形成樹形結(jié)構(gòu) 的優(yōu)先級(jí)隊(duì)列組;步驟102,從接收到的分組的分組頭中提取所述分組的類別標(biāo)識(shí),根據(jù)所述類別標(biāo) 識(shí)將所述分組歸入所屬的隊(duì)列尾部;步驟103,按照所述樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組,選擇嚴(yán)格優(yōu)先級(jí)隊(duì)列調(diào)度法或基于 概率的隊(duì)列調(diào)度法對(duì)當(dāng)前的所述優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度。本實(shí)施例提供了一種分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的方法,通過(guò)根據(jù)網(wǎng)絡(luò)中各隊(duì)列的 網(wǎng)絡(luò)性能要求對(duì)隊(duì)列進(jìn)行逐級(jí)劃分,并形成樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組,根據(jù)接收到的分組 的類別標(biāo)識(shí)將分組歸入所屬的隊(duì)列尾部,然后按照樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組,選擇嚴(yán)格優(yōu) 先級(jí)隊(duì)列調(diào)度法或基于概率的隊(duì)列調(diào)度法對(duì)當(dāng)前的優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度;本實(shí)施例解決了現(xiàn)有技術(shù)中無(wú)法兼顧較高優(yōu)先級(jí)隊(duì)列和較低優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能的缺陷,實(shí) 現(xiàn)了在嚴(yán)格保證高優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能的同時(shí),提高了低優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能。圖2為本發(fā)明分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的方法實(shí)施例二的流程圖,如圖2所示,本 實(shí)施例提供了一種分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的方法,可以包括如下步驟步驟201,統(tǒng)計(jì)分組網(wǎng)絡(luò)中的分組類別和每種分組對(duì)應(yīng)的網(wǎng)絡(luò)性能要求,并在緩沖 區(qū)中為每種分組設(shè)置獨(dú)立的大小相等的隊(duì)列進(jìn)行緩存。
在分組網(wǎng)絡(luò)中,由于用戶使用的業(yè)務(wù)的多樣化,使得分組網(wǎng)絡(luò)中的分組種類也相 應(yīng)多種多樣,如音頻視頻類分組、圖像類分組等。在執(zhí)行本實(shí)施例的技術(shù)方案之前,本步驟 通過(guò)對(duì)網(wǎng)絡(luò)內(nèi)部存在分組的所有類別進(jìn)行統(tǒng)計(jì),獲取分組網(wǎng)絡(luò)中各個(gè)分組的類別,并統(tǒng)計(jì) 每種分組所對(duì)應(yīng)的網(wǎng)絡(luò)性能要求,此處的網(wǎng)絡(luò)性能可以包括時(shí)延、丟包率、吞吐量和時(shí)延抖 動(dòng)等等,本實(shí)施例中具體采用相應(yīng)的網(wǎng)絡(luò)性能要求值來(lái)表示。同時(shí),在緩沖區(qū)中為統(tǒng)計(jì)到的 每種分組開辟獨(dú)立的大小相等且一定的隊(duì)列進(jìn)行緩存,每個(gè)隊(duì)列中的分組大小是固定且相 等的。在本實(shí)施例中,假設(shè)網(wǎng)絡(luò)中共有10種分組,則在緩沖區(qū)中分別為這10種分組開辟10 個(gè)緩存隊(duì)列,本實(shí)施例中網(wǎng)絡(luò)性能以時(shí)延為例進(jìn)行說(shuō)明,如下表1所示為統(tǒng)計(jì)到的各隊(duì)列 的時(shí)延性能要求表1各隊(duì)列的時(shí)延性能要求統(tǒng)計(jì)結(jié)果 步驟202,根據(jù)各隊(duì)列的網(wǎng)絡(luò)性能要求對(duì)所述隊(duì)列進(jìn)行逐級(jí)劃分,并形成樹形結(jié)構(gòu) 的優(yōu)先級(jí)隊(duì)列組。在進(jìn)行隊(duì)列調(diào)度之前,先根據(jù)各隊(duì)列的網(wǎng)絡(luò)性能要求對(duì)隊(duì)列進(jìn)行逐級(jí)劃分,并形 成樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組。即根據(jù)隊(duì)列對(duì)于網(wǎng)絡(luò)性能要求的差異,逐級(jí)劃分優(yōu)先級(jí)隊(duì)列 組,直到最后一次劃分成的優(yōu)先級(jí)隊(duì)列組滿足實(shí)際要求。并將劃分好的優(yōu)先級(jí)隊(duì)列組以節(jié) 點(diǎn)的形式表示在樹形結(jié)構(gòu)中,直到所有的隊(duì)列都以葉子節(jié)點(diǎn)的形式表示在樹形結(jié)構(gòu)中。具 體地,先根據(jù)所有隊(duì)列中從最低網(wǎng)絡(luò)性能值到最高網(wǎng)絡(luò)性能值確定網(wǎng)絡(luò)性能值的范圍,并 將該網(wǎng)絡(luò)性能值范圍劃分為一系列小的范圍段,將網(wǎng)絡(luò)性能值相近而屬于同一范圍段的隊(duì) 列歸為同一個(gè)優(yōu)先級(jí)隊(duì)列組。依此類推,逐級(jí)劃分優(yōu)先級(jí)隊(duì)列組。直到最后一次劃分成的 優(yōu)先級(jí)隊(duì)列組滿足實(shí)際要求。然后以一個(gè)根節(jié)點(diǎn)來(lái)表示所有隊(duì)列所在的最大的優(yōu)先級(jí)隊(duì)列 組,根節(jié)點(diǎn)為父節(jié)點(diǎn),第一次劃分成的幾個(gè)優(yōu)先級(jí)隊(duì)列組表示成相應(yīng)的子節(jié)點(diǎn),第一次劃分 的子節(jié)點(diǎn)為父節(jié)點(diǎn),第二次劃分成的優(yōu)先級(jí)隊(duì)列組表示成相應(yīng)的父節(jié)點(diǎn)的子節(jié)點(diǎn)。依次類 推,直到所有的隊(duì)列都以實(shí)的葉子節(jié)點(diǎn)的形式表示在樹形結(jié)構(gòu)中。仍以上述表1為例進(jìn)行說(shuō)明,在本實(shí)施例中對(duì)隊(duì)列進(jìn)行劃分時(shí),以其對(duì)應(yīng)的時(shí)延 性能要求為劃分依據(jù),其中,對(duì)時(shí)延的最低要求值為10ms,而最高要求值為90ms,即時(shí)延性 能要求的范圍為10ms-90ms,本實(shí)施例中將其假設(shè)為AO組。圖3為本發(fā)明分組網(wǎng)絡(luò)中分級(jí) 隊(duì)列的調(diào)度方法實(shí)施例二中優(yōu)先級(jí)隊(duì)列組的樹形結(jié)構(gòu)圖,則樹形結(jié)構(gòu)中的第一級(jí)為根節(jié)點(diǎn) 0,即對(duì)應(yīng)于優(yōu)先級(jí)隊(duì)列組的AO組。
可以先將時(shí)延性能要求的范圍劃分為更小的兩個(gè)范圍段,即10ms-50ms、 51ms-90ms,根據(jù)上述表1中各隊(duì)列的時(shí)延性能要求值,此時(shí)劃分的優(yōu)先級(jí)隊(duì)列組可以假設(shè) 為 All 組(10ms-50ms)和 A12 組(51ms_90ms),其中,All 組包括隊(duì)列 9、2、7、4、1、3、5,A12 組包括隊(duì)列10、8、6。此時(shí),隊(duì)列被劃分為兩級(jí),樹形結(jié)構(gòu)中的第二級(jí)節(jié)點(diǎn)11和12分別表示 All 禾P A12。 依照上述分級(jí)劃分方法,繼續(xù)對(duì)劃分后的優(yōu)先級(jí)隊(duì)列組All和A12進(jìn)行劃分,對(duì)于 All來(lái)說(shuō),各隊(duì)列對(duì)時(shí)延的最低要求值為10ms,而最高要求值為50ms,可以將時(shí)延性能要求 的范圍劃分為更小的兩個(gè)范圍段,即10-30ms、31-45ms,根據(jù)上述表1中各隊(duì)列的時(shí)延性能 要求值,此時(shí)劃分的優(yōu)先級(jí)隊(duì)列組可以假設(shè)為A14組(10ms-30ms)和A13組(31ms-45ms), 其中,A14組包括隊(duì)列9、2、7、4、1,A13組包括隊(duì)列3、5。對(duì)于A12來(lái)說(shuō),各隊(duì)列對(duì)時(shí)延的最 低要求值為55ms,而最高要求值為90ms,可以將時(shí)延性能要求的范圍劃分為更小的兩個(gè)范 圍段,即55-70mS、71-90mS,根據(jù)上述表1中各隊(duì)列的時(shí)延性能要求值,此時(shí)劃分的優(yōu)先級(jí) 隊(duì)列組可以假設(shè)為A15組(55ms-70ms)和A16組(71ms-90ms),其中,A15組包括隊(duì)列8、6, A16組包括隊(duì)列10。此時(shí),隊(duì)列被劃分為三級(jí),樹形結(jié)構(gòu)中的第三級(jí)節(jié)點(diǎn)13、14和15分別 表示A13、A14和A15,由于A16組只包括隊(duì)列10,則其直接用節(jié)點(diǎn)10來(lái)表示。經(jīng)過(guò)上述兩級(jí)劃分之后,由于A16組只包含一個(gè)隊(duì)列10,A13組只包含兩個(gè)隊(duì)列3 和5,A15組只包含兩個(gè)隊(duì)列8和6,則不再對(duì)上述三個(gè)組進(jìn)行劃分。而A14組仍包含9、2、 7、4、1五個(gè)隊(duì)列,則依照上述分級(jí)劃分方法,繼續(xù)對(duì)A14進(jìn)行劃分,可以將時(shí)延性能要求的 范圍劃分為更小的兩個(gè)范圍段,即10-20ms、21-30ms,根據(jù)上述表1中各隊(duì)列的時(shí)延性能要 求值,此時(shí)劃分的優(yōu)先級(jí)隊(duì)列組可以假設(shè)為A17組(10ms-20ms)和A18組(21ms-30ms),其 中,A17組包括隊(duì)列9、2,A18組包括隊(duì)列7、4、1。此時(shí),隊(duì)列被劃分為四級(jí),樹形結(jié)構(gòu)中的第 四級(jí)節(jié)點(diǎn)16和17分別表示A18和A17。由于A17組包括隊(duì)列9、2,A18組包括隊(duì)列7、4、1, 則將樹形結(jié)構(gòu)中的節(jié)點(diǎn)9和2作為節(jié)點(diǎn)17的子節(jié)點(diǎn),將節(jié)點(diǎn)7、4、1作為節(jié)點(diǎn)16的子節(jié)點(diǎn), 則可以得到如圖3所示的五級(jí)樹形結(jié)構(gòu)。在本實(shí)施例中,可以以實(shí)節(jié)點(diǎn)表示葉子節(jié)點(diǎn),以空節(jié)點(diǎn)表示非葉子節(jié)點(diǎn)表示,即實(shí) 節(jié)點(diǎn)可以表示包含的隊(duì)列數(shù)目等于1的優(yōu)先級(jí)隊(duì)列組,而空節(jié)點(diǎn)可以表示包含的隊(duì)列數(shù)目 大于1的優(yōu)先級(jí)隊(duì)列組。步驟203,從接收到的分組的分組頭中提取所述分組的類別標(biāo)識(shí),根據(jù)所述類別標(biāo) 識(shí)將所述分組歸入所屬的隊(duì)列尾部。當(dāng)分組網(wǎng)絡(luò)中有分組需要進(jìn)行傳輸時(shí),則從接收到的分組的分組頭中提取該分組 的類別標(biāo)識(shí),根據(jù)該類別標(biāo)識(shí)來(lái)確定該分組所屬的隊(duì)列。具體地,本步驟可以為先根據(jù)分組 的類別標(biāo)識(shí)獲取該分組所屬的隊(duì)列,并判斷該隊(duì)列的長(zhǎng)度是否等于預(yù)設(shè)的長(zhǎng)度上限值,如 果是,則表明該隊(duì)列已滿,則將該分組丟棄,不對(duì)其進(jìn)行后續(xù)的傳輸處理;如果該分組所屬 的隊(duì)列的長(zhǎng)度小于預(yù)設(shè)的長(zhǎng)度上限值,則表明該隊(duì)列未滿,則將該分組歸入所屬的隊(duì)列尾 部,將該分組放入所屬隊(duì)列的尾部。步驟204,按照所述樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組,選擇嚴(yán)格優(yōu)先級(jí)隊(duì)列調(diào)度法或基于 概率的隊(duì)列調(diào)度法對(duì)當(dāng)前的所述優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度。在進(jìn)行隊(duì)列調(diào)度時(shí),本實(shí)施例可以按照上述形成的樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組,選 擇嚴(yán)格優(yōu)先級(jí)隊(duì)列調(diào)度法或基于概率的隊(duì)列調(diào)度法對(duì)當(dāng)前的優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度。具體地,本步驟204可以具體包括如下步驟首先,查找樹形結(jié)構(gòu)的每一級(jí)的子節(jié)點(diǎn) 與上一級(jí)節(jié)點(diǎn)的從屬關(guān)系,如果從屬于同一個(gè)上一級(jí)節(jié)點(diǎn)的子節(jié)點(diǎn)數(shù)目大于1,且所述子節(jié) 點(diǎn)均為實(shí)節(jié)點(diǎn),則采用基于概率的隊(duì)列調(diào)度法對(duì)當(dāng)前的優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度; 如果從屬于同一個(gè)上一級(jí)節(jié)點(diǎn)的子節(jié)點(diǎn)數(shù)據(jù)大于1,且所述子節(jié)點(diǎn)不均為實(shí)節(jié)點(diǎn),則采用優(yōu) 先級(jí)隊(duì)列調(diào)度法對(duì)當(dāng)前的優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度;其中,所述實(shí)節(jié)點(diǎn)為葉子節(jié)點(diǎn)。 其次,將獲取的待輸出分組的隊(duì)列對(duì)應(yīng)的子節(jié)點(diǎn)代替所述子節(jié)點(diǎn)的父節(jié)點(diǎn),對(duì)所述樹形結(jié) 構(gòu)的從下到上的每一級(jí)依次重復(fù)執(zhí)行上述步驟,直到所述樹形結(jié)構(gòu)的根節(jié)點(diǎn)被待輸出分組 的隊(duì)列對(duì)應(yīng)的子節(jié)點(diǎn)代替,并從代替所述根節(jié)點(diǎn)的子節(jié)點(diǎn)所代表的隊(duì)列中輸出分組。此處仍以形成如圖3所示的樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組為例進(jìn)行說(shuō)明,在執(zhí)行本步 驟時(shí),假設(shè)當(dāng)前級(jí)為樹形結(jié)構(gòu)的最高級(jí),當(dāng)前節(jié)點(diǎn)為當(dāng)前級(jí)的下一級(jí)中的第一個(gè)節(jié)點(diǎn),即當(dāng) 前級(jí)為第五級(jí),當(dāng)前節(jié)點(diǎn)為第四級(jí)中的葉子節(jié)點(diǎn)3。查找當(dāng)前節(jié)點(diǎn)3在第五級(jí)中沒(méi)有子節(jié) 點(diǎn) ,則跳過(guò)該節(jié)點(diǎn)3,同理也跳過(guò)節(jié)點(diǎn)5,當(dāng)前節(jié)點(diǎn)為節(jié)點(diǎn)16。查找當(dāng)前節(jié)點(diǎn)16在第五級(jí)中 的子節(jié)點(diǎn)有7、4、1,且均為葉子節(jié)點(diǎn),則采用基于概率的隊(duì)列調(diào)度法對(duì)節(jié)點(diǎn)16對(duì)應(yīng)的優(yōu)先 級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度,即對(duì)子節(jié)點(diǎn)7、4、1對(duì)應(yīng)的隊(duì)列進(jìn)行調(diào)度。在進(jìn)行調(diào)度時(shí),先對(duì) 子節(jié)點(diǎn)7、4、1對(duì)應(yīng)的隊(duì)列進(jìn)行檢測(cè),如果有兩個(gè)或兩個(gè)以上的隊(duì)列同時(shí)不為空,則以相應(yīng) 的概率進(jìn)行調(diào)度,選出一個(gè)待輸出分組的隊(duì)列,即選出一個(gè)即將被調(diào)度的隊(duì)列;如果只有一 個(gè)隊(duì)列不為空,則直接將該隊(duì)列作為待輸出分組的隊(duì)列,即直接將該隊(duì)列作為即將被調(diào)度 的隊(duì)列。具體地,在采用基于概率的隊(duì)列調(diào)度法進(jìn)行調(diào)度時(shí),可以先根據(jù)隊(duì)列中的分組長(zhǎng) 度,并采用下述關(guān)系式設(shè)定所述隊(duì)列的調(diào)度概率Lm Ln = Pn Pm (1)其中,Lm和Ln分別為任意兩個(gè)隊(duì)列Qm和Qn中的分組長(zhǎng)度,Pm和Pn分別
為所述隊(duì)列Qm和Qn的調(diào)度概率。根據(jù)隊(duì)列的調(diào)度概率和隨機(jī)生成的隨機(jī)數(shù)來(lái)獲取
當(dāng)前的優(yōu)先級(jí)隊(duì)列組中待輸出分組的隊(duì)列,具體地,可以采用如下方法來(lái)進(jìn)行隊(duì)列調(diào)
度。假設(shè)各隊(duì)列Ql、Q2... Qn的調(diào)度概率的比值為P1 P2 P3 P4 L Pn^1 pn,
_Pi_
則根據(jù)該比值生成并獲取第一組定值,即+ + + +p _l + p ,
_ P}___Pl_
Xl =--X3 =-
ρ} + P2 + P3 + / 4+L + pn-\ + pn,p\ + P2 + pi + /74+L + /7 - 1 + , … ,
P -\pn
Xn-I =- Xn =-面組捉 I-
···,p\ + p2 + p^ + ΡΛ+L + pn-l + p p\ + pi + pi + pA+L + pn-\ + pn π" 1 DC l/ -L
述第一組定值生成并獲取第二組定值,即-J1 = X1, Y2 = Υ!+χ2, Y3 = y2+x3,y4 = y3+x4,..., Yn-! = yn-2+xn-10然后產(chǎn)生一個(gè)隨機(jī)數(shù)R,根據(jù)隨機(jī)數(shù)R與上述第二組定值的關(guān)系來(lái)獲取當(dāng) 前的優(yōu)先級(jí)隊(duì)列組中待輸出分組的隊(duì)列。若0 < R < Y1,則獲取本次調(diào)度的待輸出分組的 隊(duì)列為Ql ;若yi < R < y2,則獲取本次調(diào)度的待輸出分組的隊(duì)列為Q2 ;若y2 < R < y3,則 獲取本次調(diào)度的待輸出分組的隊(duì)列為Q3 ..若yn_i < R < 1,則獲取本次調(diào)度的待輸出分 組的隊(duì)列為Qn。此處采用基于概率的隊(duì)列調(diào)度法對(duì)子節(jié)點(diǎn)7、4、1對(duì)應(yīng)的隊(duì)列Q7、Q4、Q1進(jìn) 行調(diào)度,假設(shè)其中的分組長(zhǎng)度L7、L4、L1分別為30、20、50,則根據(jù)上述公式(1)可知設(shè)置的 隊(duì)列Q7、Q4、Q1的調(diào)度概率P7、P4、P1滿足5 2 3。則根據(jù)上述調(diào)度概率的比值獲取并生成第一組定值1/2、1/5和3/10,根據(jù)第一組定值生成的第二組定值為1/2、7/10。然后 在調(diào)度過(guò)程中產(chǎn)生一個(gè)0到1的隨機(jī)數(shù)R,假設(shè)隨機(jī)數(shù)R滿足0 < R < 1/2,則待輸出分組 的隊(duì)列為7,即選出的即將被調(diào)度的隊(duì)列為7,若隨機(jī)數(shù)R滿足1/2 < R < 7/10,則待輸出 分組的隊(duì)列為4,即選出的即將被調(diào)度的隊(duì)列為4,若隨機(jī)數(shù)R滿足7/10 < R < 1,則待輸 出分組的隊(duì)列為1,即選出的即將被調(diào)度的隊(duì)列為1。假設(shè)經(jīng)過(guò)調(diào)度之后選出的待輸出分組 的隊(duì)列為4,則以隊(duì)列4暫時(shí)代替節(jié)點(diǎn)16,即以隊(duì)列4暫時(shí)作為當(dāng)前節(jié)點(diǎn)16對(duì)應(yīng)的隊(duì)列。
對(duì)節(jié)點(diǎn)16進(jìn)行處理之后,將當(dāng)前節(jié)點(diǎn)移動(dòng)到節(jié)點(diǎn)17,同理依照上述方法選出待輸 出分組的隊(duì)列為9,并以隊(duì)列9暫時(shí)作為節(jié)點(diǎn)17對(duì)應(yīng)的隊(duì)列。由于節(jié)點(diǎn)8和6均沒(méi)有子節(jié) 點(diǎn),則跳過(guò)節(jié)點(diǎn)8和6,完成第五級(jí)的調(diào)度。此時(shí)當(dāng)前級(jí)減1,即對(duì)第四級(jí)進(jìn)行處理,并將當(dāng) 前節(jié)點(diǎn)移動(dòng)到第三級(jí)的第一個(gè)節(jié)點(diǎn),即節(jié)點(diǎn)13。重復(fù)上述過(guò)程執(zhí)行第四級(jí)的調(diào)度,由于當(dāng)前節(jié)點(diǎn)13在第四級(jí)中的子節(jié)點(diǎn)為3、5, 且均為葉子節(jié)點(diǎn),則采用基于概率的隊(duì)列調(diào)度法對(duì)節(jié)點(diǎn)3和5對(duì)應(yīng)的隊(duì)列進(jìn)行調(diào)度。假設(shè) 選出的待輸出分組的隊(duì)列為5,則以隊(duì)列5暫時(shí)作為當(dāng)前節(jié)點(diǎn)13對(duì)應(yīng)的隊(duì)列。然后將當(dāng)前 節(jié)點(diǎn)移動(dòng)到節(jié)點(diǎn)14,查找當(dāng)前節(jié)點(diǎn)14在第四級(jí)中的子節(jié)點(diǎn)為16和17,而均不是實(shí)節(jié)點(diǎn),則 采用嚴(yán)格優(yōu)先級(jí)隊(duì)列調(diào)度法對(duì)節(jié)點(diǎn)16和17對(duì)應(yīng)的隊(duì)列進(jìn)行調(diào)度,假設(shè)節(jié)點(diǎn)17對(duì)應(yīng)的隊(duì)列 的優(yōu)先級(jí)高于節(jié)點(diǎn)16對(duì)應(yīng)的隊(duì)列的優(yōu)先級(jí),因此此時(shí)選出的被調(diào)度的隊(duì)列為節(jié)點(diǎn)17對(duì)應(yīng) 的隊(duì)列。而由上述可知節(jié)點(diǎn)17暫時(shí)被節(jié)點(diǎn)9代替,則此時(shí)選出的被調(diào)度的隊(duì)列實(shí)際為節(jié)點(diǎn) 9對(duì)應(yīng)的隊(duì)列。然后將當(dāng)前節(jié)點(diǎn)移動(dòng)到節(jié)點(diǎn)10,該節(jié)點(diǎn)在第四級(jí)中沒(méi)有子節(jié)點(diǎn),則跳過(guò)該節(jié) 點(diǎn),將當(dāng)前節(jié)點(diǎn)移動(dòng)到節(jié)點(diǎn)15。節(jié)點(diǎn)15在第四級(jí)中的子節(jié)點(diǎn)為8、6,且均為實(shí)節(jié)點(diǎn),則采用 基于概率的隊(duì)列調(diào)度法對(duì)節(jié)點(diǎn)8和6對(duì)應(yīng)的隊(duì)列進(jìn)行調(diào)度。假設(shè)選出的待輸出分組的隊(duì)列 為8,則以隊(duì)列8暫時(shí)代替當(dāng)前節(jié)點(diǎn)15。此時(shí)完成第四級(jí)的調(diào)度,當(dāng)前級(jí)減1,即對(duì)三級(jí)進(jìn)行 處理,并將當(dāng)前節(jié)點(diǎn)移動(dòng)到第二級(jí)的第一個(gè)節(jié)點(diǎn),即節(jié)點(diǎn)11。當(dāng)前節(jié)點(diǎn)11在當(dāng)前級(jí)中的子節(jié)點(diǎn)為節(jié)點(diǎn)13、14,兩個(gè)節(jié)點(diǎn)均為空節(jié)點(diǎn),進(jìn)行嚴(yán)格 的優(yōu)先級(jí)調(diào)度。節(jié)點(diǎn)14對(duì)應(yīng)的隊(duì)列的優(yōu)先級(jí)比13對(duì)應(yīng)的隊(duì)列的優(yōu)先級(jí)高,因此14節(jié)點(diǎn)對(duì) 應(yīng)的隊(duì)列將被調(diào)度,而14節(jié)點(diǎn)暫時(shí)被17號(hào)節(jié)點(diǎn)代替,同時(shí)17節(jié)點(diǎn)又被9節(jié)點(diǎn)代替,所以實(shí) 際上被調(diào)度的隊(duì)列為9號(hào)節(jié)點(diǎn)對(duì)應(yīng)的隊(duì)列,以9號(hào)節(jié)點(diǎn)暫時(shí)代替14號(hào)節(jié)點(diǎn)。將當(dāng)前節(jié)點(diǎn)移 動(dòng)到節(jié)點(diǎn)12,節(jié)點(diǎn)12在當(dāng)前級(jí)中的子節(jié)點(diǎn)為節(jié)點(diǎn)10、15,這兩個(gè)節(jié)點(diǎn)不均為實(shí)節(jié)點(diǎn),因此進(jìn) 行嚴(yán)格的優(yōu)先級(jí)調(diào)度。節(jié)點(diǎn)10節(jié)點(diǎn)對(duì)應(yīng)的隊(duì)列的優(yōu)先級(jí)高于15節(jié)點(diǎn)對(duì)應(yīng)的隊(duì)列,因此10 節(jié)點(diǎn)對(duì)應(yīng)的隊(duì)列將被調(diào)度,以10號(hào)節(jié)點(diǎn)暫時(shí)代替12號(hào)節(jié)點(diǎn)。當(dāng)此時(shí)完成第三級(jí)的調(diào)度,當(dāng) 前級(jí)減1,即對(duì)二級(jí)進(jìn)行處理,并將當(dāng)前節(jié)點(diǎn)移動(dòng)到第一級(jí)的第一個(gè)節(jié)點(diǎn),即根節(jié)點(diǎn)0。當(dāng)前節(jié)點(diǎn)0在當(dāng)前級(jí)中的子節(jié)點(diǎn)為節(jié)點(diǎn)11、12,兩個(gè)都為空節(jié)點(diǎn),因此進(jìn)行嚴(yán)格的 優(yōu)先級(jí)調(diào)度。節(jié)點(diǎn)11對(duì)應(yīng)的隊(duì)列的優(yōu)先級(jí)高于節(jié)點(diǎn)12對(duì)應(yīng)的隊(duì)列的優(yōu)先級(jí),因此被調(diào)度 的隊(duì)列為節(jié)點(diǎn)11對(duì)應(yīng)的隊(duì)列。而節(jié)點(diǎn)11暫時(shí)被9號(hào)節(jié)點(diǎn)代替,因此被調(diào)度的隊(duì)列為9號(hào) 節(jié)點(diǎn),以9號(hào)節(jié)點(diǎn)暫時(shí)代替根節(jié)點(diǎn)0。由于根節(jié)點(diǎn)0為第一級(jí)中的最后一個(gè)節(jié)點(diǎn),因此當(dāng)前 級(jí)調(diào)度結(jié)束。當(dāng)前級(jí)減1后為第一級(jí),因此本輪調(diào)度結(jié)束,節(jié)點(diǎn)9對(duì)應(yīng)的隊(duì)列即為最終被調(diào) 度的隊(duì)列。需要指出的是,上述過(guò)程為一輪調(diào)度過(guò)程,調(diào)度結(jié)束后獲取本輪調(diào)度過(guò)程的一個(gè) 最終被調(diào)度的隊(duì)列,可以重復(fù)上述過(guò)程來(lái)進(jìn)行下一輪的調(diào)度過(guò)程,以獲取下一個(gè)最終被調(diào) 度的隊(duì)列。
本實(shí)施例提供了一種分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的方法,通過(guò)根據(jù)網(wǎng)絡(luò)中各隊(duì)列的 網(wǎng)絡(luò)性能要求值對(duì)隊(duì)列進(jìn)行逐級(jí)劃分,并形成樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組,根據(jù)接收到的分 組的類別標(biāo)識(shí)將分組歸入所屬的隊(duì)列尾部,然后按照樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組,選擇嚴(yán)格 優(yōu)先級(jí)隊(duì)列調(diào)度法或基于概率的隊(duì)列調(diào)度法對(duì)當(dāng)前的優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度;本 實(shí)施例解決了現(xiàn)有技術(shù)中無(wú)法兼顧較高優(yōu)先級(jí)隊(duì)列和較低優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能的缺陷, 實(shí)現(xiàn)了在嚴(yán)格保證高優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能的同時(shí),提高了低優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能。本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟可以通過(guò) 程序指令相關(guān)的硬件來(lái)完成,前述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序 在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括R0M、RAM、磁碟或者 光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
圖4為本發(fā)明分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的裝置實(shí)施例一的結(jié)構(gòu)示意圖,如圖4所 示,本實(shí)施例提供了一種分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的裝置,具體可以執(zhí)行上述方法實(shí)施例 一中的各個(gè)步驟,本實(shí)施例提供的分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的裝置可以具體包括隊(duì)列劃分 模塊401、分組歸類模塊402和隊(duì)列調(diào)度模塊403。其中,隊(duì)列劃分模塊401用于根據(jù)各隊(duì) 列的網(wǎng)絡(luò)性能要求對(duì)所述隊(duì)列進(jìn)行逐級(jí)劃分,并形成樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組。分組歸類 模塊402用于從接收到的分組的分組頭中提取所述分組的類別標(biāo)識(shí),根據(jù)所述類別標(biāo)識(shí)將 所述分組歸入所屬的隊(duì)列尾部。隊(duì)列調(diào)度模塊403用于按照所述樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列 組,選擇嚴(yán)格優(yōu)先級(jí)隊(duì)列調(diào)度法或基于概率的隊(duì)列調(diào)度法對(duì)當(dāng)前的所述優(yōu)先級(jí)隊(duì)列組中的 隊(duì)列進(jìn)行調(diào)度。圖5為本發(fā)明分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的裝置實(shí)施例二的結(jié)構(gòu)示意圖,如圖5所 示,本實(shí)施例提供了一種分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的裝置,具體可以執(zhí)行上述方法實(shí)施例 二中的各個(gè)步驟,本實(shí)施例提供的分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的裝置在上述實(shí)施例一的基礎(chǔ) 之上,還可以具體包括統(tǒng)計(jì)模塊501,統(tǒng)計(jì)模塊501用于統(tǒng)計(jì)分組網(wǎng)絡(luò)中的分組類別和每 種分組對(duì)應(yīng)的網(wǎng)絡(luò)性能要求,并在緩沖區(qū)中為每種分組設(shè)置獨(dú)立的大小相等的隊(duì)列進(jìn)行緩 存。具體地,隊(duì)列調(diào)度模塊403可以具體包括查找單元413、第一調(diào)度單元423、第二調(diào) 度單元433和輸出獲取單元443。其中,查找單元413用于查找樹形結(jié)構(gòu)的每一級(jí)的子節(jié) 點(diǎn)與上一級(jí)節(jié)點(diǎn)的從屬關(guān)系。第一調(diào)度單元423用于當(dāng)從屬于同一個(gè)上一級(jí)節(jié)點(diǎn)的子節(jié)點(diǎn) 數(shù)目大于1,且所述子節(jié)點(diǎn)均為實(shí)節(jié)點(diǎn),則采用基于概率的隊(duì)列調(diào)度法對(duì)當(dāng)前的優(yōu)先級(jí)隊(duì)列 組中的隊(duì)列進(jìn)行調(diào)度。第二調(diào)度單元433用于當(dāng)從屬于同一個(gè)上一級(jí)節(jié)點(diǎn)的子節(jié)點(diǎn)數(shù)據(jù)大 于1,且所述子節(jié)點(diǎn)不均為實(shí)節(jié)點(diǎn),則采用優(yōu)先級(jí)隊(duì)列調(diào)度法對(duì)當(dāng)前的優(yōu)先級(jí)隊(duì)列組中的隊(duì) 列進(jìn)行調(diào)度;其中,所述實(shí)節(jié)點(diǎn)為葉子節(jié)點(diǎn)。輸出獲取單元443用于將獲取的待輸出分組 的隊(duì)列對(duì)應(yīng)的子節(jié)點(diǎn)代替所述子節(jié)點(diǎn)的父節(jié)點(diǎn),對(duì)所述樹形結(jié)構(gòu)的從下到上的每一級(jí)依次 重復(fù)執(zhí)行上述步驟,直到所述樹形結(jié)構(gòu)的根節(jié)點(diǎn)被最終待輸出分組的隊(duì)列對(duì)應(yīng)的子節(jié)點(diǎn)代 替,并從代替所述根節(jié)點(diǎn)的子節(jié)點(diǎn)所代表的隊(duì)列中輸出分組。進(jìn)一步地,第一調(diào)度單元423可以具體包括概率獲取子單元4231和隊(duì)列獲取子單 元4232。其中,概率獲取子單元4231用于當(dāng)從屬于同一個(gè)上一級(jí)節(jié)點(diǎn)的子節(jié)點(diǎn)數(shù)目大于 1,且所述子節(jié)點(diǎn)均為實(shí)節(jié)點(diǎn)時(shí),根據(jù)隊(duì)列中的分組長(zhǎng)度,并采用公式(1)設(shè)定所述隊(duì)列的 調(diào)度概率。隊(duì)列獲取子單元4232用于根據(jù)所述隊(duì)列的調(diào)度概率和隨機(jī)生成的隨機(jī)數(shù)獲取所述當(dāng)前的優(yōu)先級(jí)隊(duì)列組中待輸出分組的隊(duì)列。更進(jìn)一步地,分組歸類模塊402可以具體包括隊(duì)列獲取單元412和檢測(cè)單元422。 其中,隊(duì)列獲取單元412用于根據(jù)所述類別標(biāo)識(shí)獲取所述分組所屬的隊(duì)列。檢測(cè)單元422 用于檢測(cè)所述隊(duì)列的長(zhǎng)度是否等于預(yù)設(shè)的長(zhǎng)度上限值,如果是,則丟棄所述分組,否則將所 述分組歸入所述隊(duì)列尾部。
本實(shí)施例提供了一種分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的裝置,通過(guò)根據(jù)網(wǎng)絡(luò)中各隊(duì)列的 網(wǎng)絡(luò)性能要求對(duì)隊(duì)列進(jìn)行逐級(jí)劃分,并形成樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組,根據(jù)接收到的分組 的類別標(biāo)識(shí)將分組歸入所屬的隊(duì)列尾部,然后按照樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組,選擇嚴(yán)格優(yōu) 先級(jí)隊(duì)列調(diào)度法或基于概率的隊(duì)列調(diào)度法對(duì)當(dāng)前的優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度;本實(shí) 施例解決了現(xiàn)有技術(shù)中無(wú)法兼顧較高優(yōu)先級(jí)隊(duì)列和較低優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能的缺陷,實(shí) 現(xiàn)了在嚴(yán)格保證高優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能的同時(shí),提高了低優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能。最后應(yīng)說(shuō)明的是以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡 管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解其依然 可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替 換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精 神和范圍。
權(quán)利要求
一種分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的方法,其特征在于,包括根據(jù)各隊(duì)列的網(wǎng)絡(luò)性能要求對(duì)所述隊(duì)列進(jìn)行逐級(jí)劃分,并形成樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組;從接收到的分組的分組頭中提取所述分組的類別標(biāo)識(shí),根據(jù)所述類別標(biāo)識(shí)將所述分組歸入所屬的隊(duì)列尾部;按照所述樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組,選擇嚴(yán)格優(yōu)先級(jí)隊(duì)列調(diào)度法或基于概率的隊(duì)列調(diào)度法對(duì)當(dāng)前的所述優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,還包括統(tǒng)計(jì)分組網(wǎng)絡(luò)中的分組類別和每種分組對(duì)應(yīng)的網(wǎng)絡(luò)性能要求,并在緩沖區(qū)中為每種分 組設(shè)置獨(dú)立的大小相等的隊(duì)列進(jìn)行緩存。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述按照所述樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列 組,選擇嚴(yán)格優(yōu)先級(jí)隊(duì)列調(diào)度法或基于概率的隊(duì)列調(diào)度法對(duì)當(dāng)前的所述優(yōu)先級(jí)隊(duì)列組中的 隊(duì)列進(jìn)行調(diào)度包括查找樹形結(jié)構(gòu)的每一級(jí)的子節(jié)點(diǎn)與上一級(jí)節(jié)點(diǎn)的從屬關(guān)系,如果從屬于同一個(gè)上一級(jí) 節(jié)點(diǎn)的子節(jié)點(diǎn)數(shù)目大于1,且所述子節(jié)點(diǎn)均為實(shí)節(jié)點(diǎn),則采用基于概率的隊(duì)列調(diào)度法對(duì)當(dāng)前 的優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度;如果從屬于同一個(gè)上一級(jí)節(jié)點(diǎn)的子節(jié)點(diǎn)數(shù)目大于1, 且所述子節(jié)點(diǎn)不均為實(shí)節(jié)點(diǎn),則采用優(yōu)先級(jí)隊(duì)列調(diào)度法對(duì)當(dāng)前的優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn) 行調(diào)度;其中,所述實(shí)節(jié)點(diǎn)為葉子節(jié)點(diǎn);將獲取的待輸出分組的隊(duì)列對(duì)應(yīng)的子節(jié)點(diǎn)代替所述子節(jié)點(diǎn)的父節(jié)點(diǎn),對(duì)所述樹形結(jié)構(gòu) 的從下到上的每一級(jí)依次重復(fù)執(zhí)行上述步驟,直到所述樹形結(jié)構(gòu)的根節(jié)點(diǎn)被最終待輸出分 組的隊(duì)列對(duì)應(yīng)的子節(jié)點(diǎn)代替,并從代替所述根節(jié)點(diǎn)的子節(jié)點(diǎn)所代表的隊(duì)列中輸出分組。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述采用基于概率的隊(duì)列調(diào)度法對(duì)當(dāng)前 的優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度包括根據(jù)隊(duì)列中的分組長(zhǎng)度,并采用下述關(guān)系式設(shè)定所述隊(duì)列的調(diào)度概率Lm Ln = Pn Pm,其中,Lm和Ln分別為任意兩個(gè)隊(duì)列Qm和Qn中的分組長(zhǎng)度,Pm和 Pn分別為所述隊(duì)列Qm和Qn的調(diào)度概率;根據(jù)所述隊(duì)列的調(diào)度概率和隨機(jī)生成的隨機(jī)數(shù)獲取所述當(dāng)前的優(yōu)先級(jí)隊(duì)列組中待輸 出分組的隊(duì)列。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述類別標(biāo)識(shí)將所述分組歸入 所屬的隊(duì)列尾部包括根據(jù)所述類別標(biāo)識(shí)獲取所述分組所屬的隊(duì)列;檢測(cè)所述隊(duì)列的長(zhǎng)度是否等于預(yù)設(shè)的長(zhǎng)度上限值,如果是,則丟棄所述分組,否則將所 述分組歸入所述隊(duì)列尾部。
6.一種分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的裝置,其特征在于,包括隊(duì)列劃分模塊,用于根據(jù)各隊(duì)列的網(wǎng)絡(luò)性能要求對(duì)所述隊(duì)列進(jìn)行逐級(jí)劃分,并形成樹 形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組;分組歸類模塊,用于從接收到的分組的分組頭中提取所述分組的類別標(biāo)識(shí),根據(jù)所述 類別標(biāo)識(shí)將所述分組歸入所屬的隊(duì)列尾部;隊(duì)列調(diào)度模塊,用于按照所述樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組,選擇嚴(yán)格優(yōu)先級(jí)隊(duì)列調(diào)度法或基于概率的隊(duì)列調(diào)度法對(duì)當(dāng)前的所述優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,還包括統(tǒng)計(jì)模塊,用于統(tǒng)計(jì)分組網(wǎng)絡(luò)中的分組類別和每種分組對(duì)應(yīng)的網(wǎng)絡(luò)性能要求,并在緩 沖區(qū)中為每種分組設(shè)置獨(dú)立的大小相等的隊(duì)列進(jìn)行緩存。
8.根據(jù)權(quán)利要求6或7所述的裝置,其特征在于,所述隊(duì)列調(diào)度模塊包括 查找單元,用于查找樹形結(jié)構(gòu)的每一級(jí)的子節(jié)點(diǎn)與上一級(jí)節(jié)點(diǎn)的從屬關(guān)系;第一調(diào)度單元,用于當(dāng)從屬于同一個(gè)上一級(jí)節(jié)點(diǎn)的子節(jié)點(diǎn)數(shù)目大于1,且所述子節(jié)點(diǎn)均 為實(shí)節(jié)點(diǎn),則采用基于概率的隊(duì)列調(diào)度法對(duì)當(dāng)前的優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度;第二調(diào)度單元,用于當(dāng)從屬于同一個(gè)上一級(jí)節(jié)點(diǎn)的子節(jié)點(diǎn)數(shù)據(jù)大于1,且所述子節(jié)點(diǎn)不 均為實(shí)節(jié)點(diǎn),則采用優(yōu)先級(jí)隊(duì)列調(diào)度法對(duì)當(dāng)前的優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度;其中,所 述實(shí)節(jié)點(diǎn)為葉子節(jié)點(diǎn);輸出獲取單元,用于將獲取的待輸出分組的隊(duì)列對(duì)應(yīng)的子節(jié)點(diǎn)代替所述子節(jié)點(diǎn)的父節(jié) 點(diǎn),對(duì)所述樹形結(jié)構(gòu)的從下到上的每一級(jí)依次重復(fù)執(zhí)行上述步驟,直到所述樹形結(jié)構(gòu)的根 節(jié)點(diǎn)被最終待輸出分組的隊(duì)列對(duì)應(yīng)的子節(jié)點(diǎn)代替,并從代替所述根節(jié)點(diǎn)的子節(jié)點(diǎn)所代表的 隊(duì)列中輸出分組。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述第一調(diào)度單元包括概率獲取子單元,用于當(dāng)從屬于同一個(gè)上一級(jí)節(jié)點(diǎn)的子節(jié)點(diǎn)數(shù)目大于1,且所述子節(jié)點(diǎn) 均為實(shí)節(jié)點(diǎn)時(shí),根據(jù)隊(duì)列中的分組長(zhǎng)度,并采用下述關(guān)系式設(shè)定所述隊(duì)列的調(diào)度概率Lm Ln = Pn Pm,其中,Lm和Ln分別為任意兩個(gè)隊(duì)列Qm和Qn中的分組長(zhǎng)度,Pm和 Pn分別為所述隊(duì)列Qm和Qn的調(diào)度概率;隊(duì)列獲取子單元,用于根據(jù)所述隊(duì)列的調(diào)度概率和隨機(jī)生成的隨機(jī)數(shù)獲取所述當(dāng)前的 優(yōu)先級(jí)隊(duì)列組中待輸出分組的隊(duì)列。
10.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述分組歸類模塊包括隊(duì)列獲取單元,用于根據(jù)所述類別標(biāo)識(shí)獲取所述分組所屬的隊(duì)列;檢測(cè)單元,用于檢測(cè)所述隊(duì)列的長(zhǎng)度是否等于預(yù)設(shè)的長(zhǎng)度上限值,如果是,則丟棄所述 分組,否則將所述分組歸入所述隊(duì)列尾部。
全文摘要
本發(fā)明提供了一種分組網(wǎng)絡(luò)中分級(jí)隊(duì)列調(diào)度的方法和裝置,其中,方法包括根據(jù)各隊(duì)列的網(wǎng)絡(luò)性能要求對(duì)所述隊(duì)列進(jìn)行逐級(jí)劃分,并形成樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組;從接收到的分組的分組頭中提取所述分組的類別標(biāo)識(shí),根據(jù)所述類別標(biāo)識(shí)將所述分組歸入所屬的隊(duì)列尾部;按照所述樹形結(jié)構(gòu)的優(yōu)先級(jí)隊(duì)列組,選擇嚴(yán)格優(yōu)先級(jí)隊(duì)列調(diào)度法或基于概率的隊(duì)列調(diào)度法對(duì)當(dāng)前的所述優(yōu)先級(jí)隊(duì)列組中的隊(duì)列進(jìn)行調(diào)度。裝置包括隊(duì)列劃分模塊、分組歸類模塊和隊(duì)列調(diào)度模塊。本實(shí)施例實(shí)現(xiàn)了在嚴(yán)格保證高優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能的同時(shí),提高了低優(yōu)先級(jí)隊(duì)列的網(wǎng)絡(luò)性能。
文檔編號(hào)H04L12/56GK101848149SQ201010158599
公開日2010年9月29日 申請(qǐng)日期2010年4月22日 優(yōu)先權(quán)日2010年4月22日
發(fā)明者宋雙, 羅會(huì)梅, 陳旺, 高強(qiáng) 申請(qǐng)人:北京航空航天大學(xué)