專利名稱:調(diào)度數(shù)據(jù)的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及以太網(wǎng)領(lǐng)域,特別涉及一種調(diào)度數(shù)據(jù)的方法和系統(tǒng)。
背景技術(shù):
以太網(wǎng)技術(shù)是當(dāng)今被廣泛使用的網(wǎng)絡(luò)技術(shù)。目前,以太網(wǎng)不僅成為各種獨(dú)立的局 域網(wǎng)的主導(dǎo)技術(shù),許多以太網(wǎng)形式的局域網(wǎng)也成為了 Internet的組成部分。隨著以太網(wǎng)技 術(shù)的不斷發(fā)展,以太網(wǎng)接入方式也將成為主要的普通Internet用戶接入方式之一。要實(shí)現(xiàn) 端到端的全網(wǎng)服務(wù)質(zhì)量(QoS,Quality ofService)解決方案,不可避免地要考慮以太網(wǎng)上 的QoS業(yè)務(wù)保證的問(wèn)題。這就需要以太網(wǎng)交換設(shè)備應(yīng)用以太網(wǎng)QoS技術(shù),對(duì)不同類型的業(yè) 務(wù)流提供不同等級(jí)的QoS保證,尤其是能夠支持那些對(duì)延時(shí)和抖動(dòng)要求較高的業(yè)務(wù)流。時(shí)延產(chǎn)生的一個(gè)主要原因就是數(shù)據(jù)包存儲(chǔ)在緩存中至轉(zhuǎn)發(fā)調(diào)度前所消耗的時(shí)間。 如果能減少這部分時(shí)延,總的數(shù)據(jù)包時(shí)延也能相應(yīng)減少。抖動(dòng)產(chǎn)生的主要原因由于業(yè)務(wù)流 中相繼分組的排隊(duì)等候時(shí)間不同引起的,是對(duì)服務(wù)質(zhì)量影響最大的一個(gè)問(wèn)題。某些業(yè)務(wù)類 型,特別是話音和視頻等實(shí)時(shí)業(yè)務(wù)是極不容忍抖動(dòng)的。
當(dāng)網(wǎng)絡(luò)擁塞時(shí),必須解決多個(gè)數(shù)據(jù)包同時(shí)競(jìng)爭(zhēng)使用資源的問(wèn)題,通常采用隊(duì)列調(diào) 度加以解決。交換機(jī)上常用的幾種隊(duì)列調(diào)度算法嚴(yán)格優(yōu)先級(jí)(SPjtrict-Priority)隊(duì)列 調(diào)度算法、加權(quán)輪循(WRR,Weighted Round Robin)調(diào)度算法、加權(quán)公平隊(duì)列(WFQ,Weighted Fair Queue)調(diào)度算法等。在交換機(jī)上,一個(gè)端口一般對(duì)于8個(gè)優(yōu)先級(jí)隊(duì)列,對(duì)這些隊(duì)列的 調(diào)度可采用SP、WRR和WFQ等方式。這些隊(duì)列和調(diào)度器層次沒(méi)有上下級(jí)之分。這種普通QoS 隊(duì)列的設(shè)計(jì)方法優(yōu)點(diǎn)是調(diào)度較快時(shí)延抖動(dòng)較小,缺點(diǎn)很難做到同時(shí)對(duì)多個(gè)用戶的多個(gè)業(yè)務(wù) 進(jìn)行控制。基于此,提出了層次化QoS (H-QoS)技術(shù)。H-QoS技術(shù)是一種既能控制用戶的流量, 又能同時(shí)對(duì)用戶業(yè)務(wù)的優(yōu)先級(jí)進(jìn)行調(diào)度的QoS技術(shù)。H-QoS技術(shù)采用多級(jí)調(diào)度的方式,采用 新的設(shè)計(jì),隊(duì)列和調(diào)度器都分級(jí),使設(shè)備具有內(nèi)部資源的控制策略,既能夠?yàn)楦呒?jí)用戶業(yè)務(wù) 提供質(zhì)量保證,又能夠從整體上節(jié)約網(wǎng)絡(luò)構(gòu)造成本。但是H-QoS技術(shù)也有缺點(diǎn)由于其調(diào)度 隊(duì)列和調(diào)度器有2級(jí)以上,數(shù)據(jù)包在多級(jí)隊(duì)列中被調(diào)度以及多級(jí)調(diào)度器的切換,相應(yīng)地會(huì) 增大時(shí)延和抖動(dòng),在對(duì)時(shí)延抖動(dòng)敏感的環(huán)境中所以H-QoS表現(xiàn)較差。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例的目的在于提供一種調(diào)度數(shù)據(jù)的方法和系統(tǒng),以解決現(xiàn)有技術(shù)中在 用戶和業(yè)務(wù)可控的情況下時(shí)延抖動(dòng)較大的缺點(diǎn)。為了解決以上問(wèn)題,本發(fā)明實(shí)施例提供了一種調(diào)度數(shù)據(jù)的方法和系統(tǒng),技術(shù)方案 如下一種調(diào)度數(shù)據(jù)的方法,包括設(shè)置一個(gè)用于緩存對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)的直通隊(duì)列,該直通隊(duì)列與分類器和出 端口直接相連;
該分類器對(duì)接收的數(shù)據(jù)流進(jìn)行分類,識(shí)別對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)流和對(duì)時(shí)延抖動(dòng) 不敏感的數(shù)據(jù)流;該分類器將對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)流發(fā)送至該直通隊(duì)列,將該對(duì)時(shí)延抖動(dòng)不敏感 的數(shù)據(jù)流通過(guò)業(yè)務(wù)調(diào)度器、用戶調(diào)度器和用戶組調(diào)度器發(fā)送至端口隊(duì)列;端口調(diào)度器對(duì)該時(shí)延抖動(dòng)敏感的數(shù)據(jù)和時(shí)延抖動(dòng)不敏感的數(shù)據(jù)進(jìn)行調(diào)度后由該 出端口輸出。進(jìn)一步地,該端口調(diào)度器采用碎片隔離轉(zhuǎn)發(fā)的方式對(duì)該時(shí)延抖動(dòng)敏感的數(shù)據(jù)流和 時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流進(jìn)行調(diào)度后由該出端口輸出。進(jìn)一步地,當(dāng)該直通隊(duì)列的優(yōu)先級(jí)最高時(shí),該端口調(diào)度器采用嚴(yán)格優(yōu)先級(jí)算法或 加權(quán)公平隊(duì)列算法對(duì)該時(shí)延抖動(dòng)敏感的數(shù)據(jù)流和時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流進(jìn)行調(diào)度后由 該出端口輸出。進(jìn)一步地,當(dāng)該直通隊(duì)列的優(yōu)先級(jí)不是最高時(shí),該端口調(diào)度器采用加權(quán)公平隊(duì)列 算法先調(diào)度該時(shí)延抖動(dòng)敏感的數(shù)據(jù)流,然后調(diào)度時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流,其中,該直通隊(duì) 列的權(quán)重大于該端口隊(duì)列的權(quán)重。進(jìn)一步地,該方法還包括設(shè)置該直通隊(duì)列帶寬的步驟。進(jìn)一步地,該方法還包括檢測(cè)該直通隊(duì)列是否出現(xiàn)擁塞,如果是,則對(duì)數(shù)據(jù)流進(jìn) 行丟棄處理。一種調(diào)度數(shù)據(jù)的系統(tǒng),包括直通隊(duì)列模塊,與分類器和出端口直接相連,用于緩存對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù);該分類器,用于對(duì)從入端口接收的數(shù)據(jù)流進(jìn)行分類,識(shí)別對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù) 流和對(duì)時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流;將對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)流發(fā)送至該直通隊(duì)列,將該對(duì) 時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流通過(guò)業(yè)務(wù)調(diào)度器、用戶調(diào)度器和用戶組調(diào)度器發(fā)送至端口隊(duì)列;端口調(diào)度器,用于對(duì)該時(shí)延抖動(dòng)敏感的數(shù)據(jù)和時(shí)延抖動(dòng)不敏感的數(shù)據(jù)進(jìn)行調(diào)度后 由該出端口輸出。進(jìn)一步地,該端口調(diào)度器,具體用于采用碎片隔離轉(zhuǎn)發(fā)的方式對(duì)該時(shí)延抖動(dòng)敏感 的數(shù)據(jù)流和時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流進(jìn)行調(diào)度后由該出端口輸出。進(jìn)一步地,該端口調(diào)度器,還用于當(dāng)該直通隊(duì)列的優(yōu)先級(jí)最高時(shí),采用嚴(yán)格優(yōu)先級(jí) 算法或加權(quán)公平隊(duì)列算法對(duì)該時(shí)延抖動(dòng)敏感的數(shù)據(jù)流和時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流進(jìn)行調(diào) 度后由該出端口輸出。進(jìn)一步地,該端口調(diào)度器,還用于當(dāng)該直通隊(duì)列的優(yōu)先級(jí)不是最高時(shí),采用加權(quán)公 平隊(duì)列算法先調(diào)度該時(shí)延抖動(dòng)敏感的數(shù)據(jù)流,然后調(diào)度時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流,其中,該 直通隊(duì)列的權(quán)重大于該端口隊(duì)列的權(quán)重。在本發(fā)明實(shí)施例中,增加了用于緩存對(duì)時(shí)延抖動(dòng)比較敏感的數(shù)據(jù)的直通隊(duì)列,通 過(guò)分類器把對(duì)時(shí)延抖動(dòng)比較敏感的數(shù)據(jù)流分類后放到直通隊(duì)列上進(jìn)而直接進(jìn)行調(diào)度,既保 留了 H-QoS技術(shù)能區(qū)別用戶和業(yè)務(wù)的優(yōu)點(diǎn),又保留了 QoS技術(shù)調(diào)度較快抖動(dòng)較小的優(yōu)點(diǎn),減 少了數(shù)據(jù)流在包交換網(wǎng)絡(luò)中的時(shí)延和抖動(dòng),從而有助于業(yè)務(wù)的推廣。
圖1是本發(fā)明實(shí)施例提供的一種調(diào)度數(shù)據(jù)的方法的流程圖2是本發(fā)明實(shí)施例提供的常用的H-QoS的分級(jí)模型示意圖;圖3是本發(fā)明實(shí)施例提供的常用的H-QoS的分級(jí)模型添加直通隊(duì)列的示意圖;圖4是本發(fā)明實(shí)施例提供的存儲(chǔ)轉(zhuǎn)發(fā)方式的示意圖;圖5是本發(fā)明實(shí)施例提供的直通式的示意圖;圖6是本發(fā)明實(shí)施例提供的碎片隔離式轉(zhuǎn)發(fā)的示意圖;圖7是本發(fā)明實(shí)施例提供的在改進(jìn)的H-QoS模型中處理數(shù)據(jù)流的示意圖;圖8是本發(fā)明實(shí)施例提供的調(diào)度數(shù)據(jù)的系統(tǒng)的示意圖。
具體實(shí)施例方式本發(fā)明的核心思想在于增加一個(gè)優(yōu)先級(jí)最高的直通隊(duì)列,并修改端口調(diào)度器的 職責(zé),隊(duì)列的轉(zhuǎn)發(fā)形式為碎片隔離轉(zhuǎn)發(fā)方式。通過(guò)分類器把對(duì)時(shí)延抖動(dòng)比較敏感的數(shù)據(jù)流 分類后放到直通隊(duì)列上進(jìn)而直接進(jìn)行調(diào)度,減少了數(shù)據(jù)流在包交換網(wǎng)絡(luò)中的時(shí)延和抖動(dòng), 本發(fā)明實(shí)施例的技術(shù)方案既保留了 H-QoS技術(shù)能區(qū)別用戶和業(yè)務(wù)的優(yōu)點(diǎn),又保留了 QoS技 術(shù)的優(yōu)點(diǎn),調(diào)度較快時(shí)延抖動(dòng)較小,從而有助于業(yè)務(wù)的推廣。如圖1所示,本發(fā)明實(shí)施例提供了一種調(diào)度數(shù)據(jù)的方法,包括步驟101,設(shè)置一個(gè)用于緩存對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)的直通隊(duì)列,該直通隊(duì)列與分 類器和出端口直接相連;步驟102,分類器對(duì)接收的數(shù)據(jù)流進(jìn)行分類,識(shí)別對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)流和對(duì)時(shí) 延抖動(dòng)不敏感的數(shù)據(jù)流;步驟103,分類器將對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)流發(fā)送至該直通隊(duì)列,將該對(duì)時(shí)延抖動(dòng) 不敏感的數(shù)據(jù)流通過(guò)業(yè)務(wù)調(diào)度器、用戶調(diào)度器和用戶組調(diào)度器發(fā)送至端口隊(duì)列;步驟104,端口調(diào)度器對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)和時(shí)延抖動(dòng)不敏感的數(shù)據(jù)進(jìn)行調(diào)度 后由出端口輸出。其中,端口調(diào)度器采用碎片隔離轉(zhuǎn)發(fā)的方式對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)和時(shí)延抖動(dòng)不 敏感的數(shù)據(jù)進(jìn)行調(diào)度后由出端口輸出。其中,當(dāng)直通隊(duì)列的優(yōu)先級(jí)最高時(shí),該端口調(diào)度器采用嚴(yán)格優(yōu)先級(jí)算法或加權(quán)公 平隊(duì)列算法對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)流和時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流進(jìn)行調(diào)度后由出端口輸
出ο其中,當(dāng)直通隊(duì)列的優(yōu)先級(jí)不是最高時(shí),該端口調(diào)度器采用加權(quán)公平隊(duì)列算法先 調(diào)度時(shí)延抖動(dòng)敏感的數(shù)據(jù)流,然后調(diào)度時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流,其中,該直通隊(duì)列的權(quán)重 大于端口隊(duì)列的權(quán)重。其中,該方法還包括設(shè)置該直通隊(duì)列帶寬的步驟。其中,該方法還包括檢測(cè)直通隊(duì)列是否出現(xiàn)擁塞,如果是,則對(duì)數(shù)據(jù)流進(jìn)行丟棄處理。下面結(jié)合附圖對(duì)本發(fā)明實(shí)施例的技術(shù)方案進(jìn)行詳細(xì)的描述,具體如下通常,H-QoS的分層調(diào)度模型如圖2所示,由端口層、用戶組層、用戶層、用戶業(yè)務(wù)層共四個(gè)層次組成。各層都有各自的隊(duì)列和調(diào)度器。此時(shí)如果有個(gè)業(yè)務(wù)流是VOIP數(shù)據(jù)包 或1588PTP協(xié)議報(bào)文等,總共需要走4級(jí)隊(duì)列和4級(jí)調(diào)度,排隊(duì)和調(diào)度時(shí)間不確定性增大, 所以延時(shí)和抖動(dòng)會(huì)增大。
在如圖3所示的模型中,增加一個(gè)直通隊(duì)列Q2,該隊(duì)列的優(yōu)先級(jí)在所有隊(duì)列中設(shè) 計(jì)為最高,該直通隊(duì)列直接連接分類器和端口,中間不走業(yè)務(wù)層、用戶組層,用戶層。在如圖3所示的模型中,此時(shí)部分調(diào)度器的作用需要修改。業(yè)務(wù)層調(diào)度器、用戶層 調(diào)度器和用戶調(diào)度器不調(diào)度新增直通隊(duì)列上Q2的數(shù)據(jù)流。對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)流(或稱業(yè)務(wù)流)通過(guò)分類器直接到達(dá)新增加的直通隊(duì)列 Q2中。直通隊(duì)列Q2可以理解為一個(gè)物理端口又開(kāi)辟了一個(gè)優(yōu)先級(jí)更高的隊(duì)列。端口調(diào)度 器需要增加對(duì)端口內(nèi)直通隊(duì)列Q2的調(diào)度。直通隊(duì)列Q2內(nèi)部的數(shù)據(jù)都是對(duì)時(shí)延和抖動(dòng)敏感 的數(shù)據(jù),為保證其緩沖的數(shù)據(jù)被及時(shí)優(yōu)先調(diào)度,端口調(diào)度器可以對(duì)端口隊(duì)列Ql和直通隊(duì)列 Q2采用嚴(yán)格優(yōu)先級(jí)算法進(jìn)行調(diào)度。另外,為保證端口隊(duì)列Ql中的保證轉(zhuǎn)發(fā)等級(jí)的數(shù)據(jù)也 會(huì)被及時(shí)調(diào)度,對(duì)端口隊(duì)列Ql和直通隊(duì)列Q2的調(diào)度也可采用WFQ算法,要求先調(diào)度直通隊(duì) 列Q2中的數(shù)據(jù),再調(diào)度端口隊(duì)列Ql中的數(shù)據(jù),且直通隊(duì)列Q2的權(quán)重更大。所以端口調(diào)度 器的調(diào)度方式應(yīng)該根據(jù)數(shù)據(jù)流和業(yè)務(wù)量的大小來(lái)進(jìn)行設(shè)計(jì)。例如對(duì)于總帶寬為100M的流 量,實(shí)時(shí)業(yè)務(wù)占用的帶寬可能為5M,實(shí)時(shí)業(yè)務(wù)在總帶寬中的比例很小(5/100 = 1/20),這時(shí) 候如果端口調(diào)度器采用WFQ就不太合適隊(duì)列Ql中的數(shù)據(jù)相對(duì)很多,隊(duì)列Q2的權(quán)重再大, 可能Q2中的有些數(shù)據(jù)還是不能保證及時(shí)調(diào)度轉(zhuǎn)發(fā)。此時(shí)用SP算法對(duì)隊(duì)列進(jìn)行調(diào)度(隊(duì)列 Q2的優(yōu)先級(jí)比較高)比較合適。如果總帶寬為100M,實(shí)時(shí)業(yè)務(wù)占的帶寬為50M,實(shí)時(shí)業(yè)務(wù)在 總帶寬中的比例較大(50/100 = 1/2),采用WFQ基本上就可以保證隊(duì)列Q2中的數(shù)據(jù)被實(shí)時(shí) 轉(zhuǎn)發(fā),此時(shí)采用SP就不太合適。最好可以動(dòng)態(tài)設(shè)置調(diào)度方式。在如圖3所示的模型中,帶寬控制過(guò)程也需要修改。如圖3的H-QoS模型能實(shí) 現(xiàn)對(duì)用戶和用戶的帶寬進(jìn)行控制,增加了一個(gè)直通隊(duì)列Q2之后,由于直通隊(duì)列Q2的數(shù)據(jù) 流直接到端口,所以無(wú)法對(duì)直通隊(duì)列Q2上的數(shù)據(jù)流的帶寬進(jìn)行控制。在用戶簽訂服務(wù) 等級(jí)協(xié)議(SLA,Service-LevelAgreement)后,其他數(shù)據(jù)流上實(shí)際的承諾信息速率(CIR, CommittedInformation Rate)和峰值信息速率(PIR, Peak Information Rate)要減去直 通隊(duì)列Q2上分配的帶寬。直通隊(duì)列Q2上的帶寬分配要能夠通過(guò)命令進(jìn)行配置。直通隊(duì)列 Q2上帶寬的大小需要根據(jù)實(shí)際應(yīng)用進(jìn)行設(shè)置。例如實(shí)時(shí)業(yè)務(wù)對(duì)應(yīng)的最大突發(fā)流量為IOM/ s,則最好給隊(duì)列Q2預(yù)留IOM以上的帶寬(如果不想讓業(yè)務(wù)數(shù)據(jù)因擁塞丟棄的話)。在如圖3所示的模型中,需要對(duì)直通隊(duì)列Q2使用情況進(jìn)行監(jiān)控。當(dāng)隊(duì)列上的數(shù)據(jù) 流過(guò)多有擁塞趨勢(shì)時(shí),可以通過(guò)丟棄數(shù)據(jù)流解除網(wǎng)絡(luò)過(guò)載問(wèn)題??梢圆捎玫姆椒ㄓ形膊縼G 棄(Tail-Drop)和 WRED (Weighted Random EarlyDetection,加權(quán)隨機(jī)早期檢測(cè))。直通隊(duì) 列Q2的大小設(shè)計(jì)要根據(jù)應(yīng)用環(huán)境進(jìn)行合理設(shè)計(jì)。隊(duì)列Q2的大小與業(yè)務(wù)流中數(shù)據(jù)包的大小, 調(diào)度器的效率和隊(duì)列的業(yè)務(wù)流量等因素有關(guān)。例如數(shù)據(jù)包的最大程度為1000 (該數(shù)值便于 舉例),在隊(duì)列Q2中的最大延時(shí)(在隊(duì)列Q2中的延時(shí)在數(shù)值上基本固定)為Ius (該數(shù)值 便于舉例),實(shí)時(shí)業(yè)務(wù)對(duì)應(yīng)的最大流量為lOM/s,則為了減少數(shù)據(jù)包在隊(duì)列Q2中被丟棄的可 能性,隊(duì)列 Q2 的大小最好為(1/1000)* (10*1024*1024) *1000。為了減少時(shí)延,業(yè)務(wù)流(或稱數(shù)據(jù)流)從分類器送到隊(duì)列時(shí),端口調(diào)度器采用碎片隔離式轉(zhuǎn)發(fā)對(duì)直通隊(duì)列Q2進(jìn)行調(diào)度。這是介于直通式和存儲(chǔ)轉(zhuǎn)發(fā)式之間的一種解決方案, 其中,存儲(chǔ)轉(zhuǎn)發(fā)方式的示意圖如圖4所示,直通式的示意圖如圖5所示,碎片隔離式轉(zhuǎn)發(fā)的 示意圖如圖6所示。它在轉(zhuǎn)發(fā)前先檢查數(shù)據(jù)包(包含協(xié)議報(bào)文)的長(zhǎng)度是否夠64個(gè)字節(jié) (512bit),如果小于64字節(jié),說(shuō)明是假包(或稱殘幀),則丟棄該包;如果大于64字節(jié),則根據(jù)數(shù)據(jù)包的前64字節(jié)信息發(fā)送該包。由于該方式固定分析數(shù)據(jù)包的前64字節(jié),所以該方式的數(shù)據(jù)處理速度比存儲(chǔ)轉(zhuǎn)發(fā)方式快,但比直通式慢。端口調(diào)度器采用了碎片隔離式轉(zhuǎn)發(fā),數(shù)據(jù)包的前64字節(jié)進(jìn)入隊(duì)列之后即被允許 調(diào)度轉(zhuǎn)發(fā)。相對(duì)之前存儲(chǔ)轉(zhuǎn)發(fā)式需要緩存整個(gè)數(shù)據(jù)包并校驗(yàn)數(shù)據(jù)包的正確性之后才進(jìn)行 調(diào)度轉(zhuǎn)發(fā),極大的提高了數(shù)據(jù)轉(zhuǎn)發(fā)效率,減少了數(shù)據(jù)包在緩沖隊(duì)列中的時(shí)延。例如,1500字 節(jié)長(zhǎng)度的包采用碎片隔離式轉(zhuǎn)發(fā),其存儲(chǔ)時(shí)延最小是存儲(chǔ)轉(zhuǎn)發(fā)式時(shí)延的二十分之一左右 (64/1500)。而且由于只取64字節(jié)就可進(jìn)行調(diào)度轉(zhuǎn)發(fā),時(shí)延相對(duì)也固定。不過(guò)該方法也有 一個(gè)缺點(diǎn),即分析前64字節(jié)就可進(jìn)行調(diào)度轉(zhuǎn)發(fā)而不對(duì)整個(gè)數(shù)據(jù)包進(jìn)行幀校驗(yàn)序列(FCS, Frame Check Squence)檢測(cè),錯(cuò)誤的數(shù)據(jù)包也可能被轉(zhuǎn)發(fā)。當(dāng)入端口有不同數(shù)據(jù)流,例如,普通數(shù)據(jù)流1、2和1588協(xié)議報(bào)文3輸入時(shí),結(jié)合圖 7和,該系統(tǒng)的處理流程包括步驟100,數(shù)據(jù)流通過(guò)分類器(Classifier),被識(shí)別數(shù)據(jù)流1為保證轉(zhuǎn)發(fā)等級(jí)的 數(shù)據(jù),送到該業(yè)務(wù)對(duì)應(yīng)隊(duì)列ql中;數(shù)據(jù)流通過(guò)分類器被識(shí)別數(shù)據(jù)流2為盡力而為等級(jí)的數(shù) 據(jù),送到該業(yè)務(wù)對(duì)應(yīng)隊(duì)列q2中;數(shù)據(jù)流通過(guò)分類器被識(shí)別數(shù)據(jù)流3為加速轉(zhuǎn)發(fā)等級(jí)的數(shù)據(jù), 由于該數(shù)據(jù)流是對(duì)實(shí)時(shí)性和抖動(dòng)敏感的數(shù)據(jù),因此,被直接送到該業(yè)務(wù)對(duì)應(yīng)的直通隊(duì)列Q2 中。步驟200,業(yè)務(wù)級(jí)調(diào)度器負(fù)責(zé)調(diào)度隊(duì)列ql和q2中的數(shù)據(jù)(通常根據(jù)SP或WFQ,如 果為SP,ql中的數(shù)據(jù)流1較數(shù)據(jù)流2會(huì)被優(yōu)先調(diào)度),然后發(fā)送至后級(jí)調(diào)度器對(duì)應(yīng)隊(duì)列;用 戶級(jí)調(diào)度器調(diào)度其對(duì)應(yīng)隊(duì)列中的數(shù)據(jù)到用戶組級(jí)調(diào)度器對(duì)應(yīng)隊(duì)列,最后數(shù)據(jù)被送到端口調(diào) 度器對(duì)應(yīng)的端口隊(duì)列Ql中。步驟300,端口調(diào)度器調(diào)度時(shí),根據(jù)加權(quán)公平隊(duì)列算法調(diào)度(WFQ/CBWFQ)進(jìn)行調(diào) 度。當(dāng)調(diào)度到端口 1時(shí),先調(diào)度直通隊(duì)列Q2中的數(shù)據(jù),再調(diào)度端口隊(duì)列Ql中的數(shù)據(jù),且直 通隊(duì)列Q2的權(quán)重更大。本發(fā)明的技術(shù)方案適用于對(duì)數(shù)據(jù)包在網(wǎng)絡(luò)中時(shí)延抖動(dòng)敏感的場(chǎng)合,包括VOIP業(yè) 務(wù)、1588PTP等業(yè)務(wù)。對(duì)于保證轉(zhuǎn)發(fā)等級(jí)的數(shù)據(jù)流(一般為對(duì)時(shí)延抖動(dòng)比較敏感的數(shù)據(jù),如VoIP業(yè)務(wù), 同步以太網(wǎng)業(yè)務(wù)和1588協(xié)議報(bào)文等),經(jīng)過(guò)分類器識(shí)別分類會(huì)被送到直通隊(duì)列。其他的 數(shù)據(jù)包根據(jù)不同的分類規(guī)則會(huì)被送到業(yè)務(wù)級(jí)別下的各個(gè)對(duì)應(yīng)隊(duì)列中,然后業(yè)務(wù)級(jí)別下的各 個(gè)對(duì)應(yīng)隊(duì)列中的數(shù)據(jù)會(huì)依次被業(yè)務(wù)調(diào)度器、用戶調(diào)度器和用戶組調(diào)度器最終放到端口隊(duì)列 中。從這個(gè)過(guò)程可以看出,直通隊(duì)列最大程度減少了分組排隊(duì)等候的時(shí)間,即最大程度上 減少了數(shù)據(jù)流在包交換網(wǎng)中的時(shí)延和抖動(dòng),改善了 H-QoS技術(shù)在處理時(shí)延敏感數(shù)據(jù)流的性 能。本發(fā)明實(shí)施例提供了一種調(diào)度數(shù)據(jù)的系統(tǒng),如圖8所示,包括直通隊(duì)列模塊,與分類器和出端口直接相連,用于緩存對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù);該分類器,用于對(duì)從入端口接收的數(shù)據(jù)流進(jìn)行分類,識(shí)別對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù) 流和對(duì)時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流;將對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)流發(fā)送至該直通隊(duì)列,將該對(duì) 時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流通過(guò)業(yè)務(wù)調(diào)度器、用戶調(diào)度器和用戶組調(diào)度器發(fā)送至端口隊(duì)列;端口調(diào)度器,用于對(duì)該時(shí)延抖動(dòng)敏感的數(shù)據(jù)和時(shí)延抖動(dòng)不敏感的數(shù)據(jù)進(jìn)行調(diào)度后 由該出端口輸出。
進(jìn)一步地,端口調(diào)度器,具體用于采用碎片隔離轉(zhuǎn)發(fā)的方式對(duì)該時(shí)延抖動(dòng)敏感的數(shù)據(jù)流和時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流進(jìn)行調(diào)度后由該出端口輸出。進(jìn)一步地,該端口調(diào)度器,還用于當(dāng)該直通隊(duì)列的優(yōu)先級(jí)最高時(shí),采用嚴(yán)格優(yōu)先級(jí) 算法或加權(quán)公平隊(duì)列算法對(duì)該時(shí)延抖動(dòng)敏感的數(shù)據(jù)流和時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流進(jìn)行調(diào) 度后由該出端口輸出。進(jìn)一步地,該端口調(diào)度器,還用于當(dāng)該直通隊(duì)列的優(yōu)先級(jí)不是最高時(shí),采用加權(quán)公 平隊(duì)列算法先調(diào)度該時(shí)延抖動(dòng)敏感的數(shù)據(jù)流,然后調(diào)度時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流,其中,該 直通隊(duì)列的權(quán)重大于該端口隊(duì)列的權(quán)重。與現(xiàn)有技術(shù)相比較,本發(fā)明實(shí)施例針對(duì)時(shí)延抖動(dòng)比較敏感的數(shù)據(jù),增加一個(gè)優(yōu)先 級(jí)最高的直通隊(duì)列,并修改端口調(diào)度器的職責(zé),隊(duì)列的轉(zhuǎn)發(fā)形式為碎片隔離轉(zhuǎn)發(fā)方式。通過(guò) 分類器把對(duì)時(shí)延抖動(dòng)比較敏感的數(shù)據(jù)流分類后放到直通隊(duì)列上進(jìn)而直接進(jìn)行調(diào)度,減少了 數(shù)據(jù)流在包交換網(wǎng)絡(luò)中的時(shí)延和抖動(dòng),本發(fā)明實(shí)施例的技術(shù)方案既保留了 H-QoS技術(shù)能區(qū) 別用戶和業(yè)務(wù)的優(yōu)點(diǎn),又保留了 QoS技術(shù)的優(yōu)點(diǎn),調(diào)度較快時(shí)延抖動(dòng)較小,從而有助于業(yè)務(wù) 的推廣。最后應(yīng)當(dāng)說(shuō)明的是,以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案而非限制,盡管參 照較佳實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對(duì)本發(fā)明 進(jìn)行修改、更改或者等同替換,而不脫離本發(fā)明和權(quán)利要求的精神和范圍。
權(quán)利要求
一種調(diào)度數(shù)據(jù)的方法,其特征在于,包括設(shè)置一個(gè)用于緩存對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)的直通隊(duì)列,該直通隊(duì)列與分類器和出端口直接相連;該分類器對(duì)接收的數(shù)據(jù)流進(jìn)行分類,識(shí)別對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)流和對(duì)時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流;該分類器將對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)流發(fā)送至該直通隊(duì)列,將該對(duì)時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流通過(guò)業(yè)務(wù)調(diào)度器、用戶調(diào)度器和用戶組調(diào)度器發(fā)送至端口隊(duì)列;端口調(diào)度器對(duì)該時(shí)延抖動(dòng)敏感的數(shù)據(jù)和時(shí)延抖動(dòng)不敏感的數(shù)據(jù)進(jìn)行調(diào)度后由該出端口輸出。
2.如權(quán)利要求1所述的方法,其特征在于,該端口調(diào)度器采用碎片隔離轉(zhuǎn)發(fā)的方式對(duì) 該時(shí)延抖動(dòng)敏感的數(shù)據(jù)流和時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流進(jìn)行調(diào)度后由該出端口輸出。
3.如權(quán)利要求1所述的方法,其特征在于,當(dāng)該直通隊(duì)列的優(yōu)先級(jí)最高時(shí),該端口調(diào)度 器采用嚴(yán)格優(yōu)先級(jí)算法或加權(quán)公平隊(duì)列算法對(duì)該時(shí)延抖動(dòng)敏感的數(shù)據(jù)流和時(shí)延抖動(dòng)不敏 感的數(shù)據(jù)流進(jìn)行調(diào)度后由該出端口輸出。
4.如權(quán)利要求1所述的方法,其特征在于,當(dāng)該直通隊(duì)列的優(yōu)先級(jí)不是最高時(shí),該端口 調(diào)度器采用加權(quán)公平隊(duì)列算法先調(diào)度該時(shí)延抖動(dòng)敏感的數(shù)據(jù)流,然后調(diào)度時(shí)延抖動(dòng)不敏感 的數(shù)據(jù)流,其中,該直通隊(duì)列的權(quán)重大于該端口隊(duì)列的權(quán)重。
5.如權(quán)利要求1所述的方法,其特征在于,還包括設(shè)置該直通隊(duì)列帶寬的步驟。
6.如權(quán)利要求1所述的方法,其特征在于,還包括檢測(cè)該直通隊(duì)列是否出現(xiàn)擁塞,如 果是,則對(duì)數(shù)據(jù)流進(jìn)行丟棄處理。
7.一種調(diào)度數(shù)據(jù)的系統(tǒng),其特征在于,包括直通隊(duì)列模塊,與分類器和出端口直接相連,用于緩存對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù);該分類器,用于對(duì)從入端口接收的數(shù)據(jù)流進(jìn)行分類,識(shí)別對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)流和 對(duì)時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流;將對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)流發(fā)送至該直通隊(duì)列,將該對(duì)時(shí)延 抖動(dòng)不敏感的數(shù)據(jù)流通過(guò)業(yè)務(wù)調(diào)度器、用戶調(diào)度器和用戶組調(diào)度器發(fā)送至端口隊(duì)列;端口調(diào)度器,用于對(duì)該時(shí)延抖動(dòng)敏感的數(shù)據(jù)和時(shí)延抖動(dòng)不敏感的數(shù)據(jù)進(jìn)行調(diào)度后由該 出端口輸出。
8.如權(quán)利要求7所述的系統(tǒng),其特征在于,該端口調(diào)度器,具體用于采用碎片隔離轉(zhuǎn)發(fā) 的方式對(duì)該時(shí)延抖動(dòng)敏感的數(shù)據(jù)流和時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流進(jìn)行調(diào)度后由該出端口輸出o
9.如權(quán)利要求7所述的系統(tǒng),其特征在于,該端口調(diào)度器,還用于當(dāng)該直通隊(duì)列的優(yōu)先 級(jí)最高時(shí),采用嚴(yán)格優(yōu)先級(jí)算法或加權(quán)公平隊(duì)列算法對(duì)該時(shí)延抖動(dòng)敏感的數(shù)據(jù)流和時(shí)延抖 動(dòng)不敏感的數(shù)據(jù)流進(jìn)行調(diào)度后由該出端口輸出。
10.如權(quán)利要求7所述的系統(tǒng),其特征在于,該端口調(diào)度器,還用于當(dāng)該直通隊(duì)列的優(yōu) 先級(jí)不是最高時(shí),采用加權(quán)公平隊(duì)列算法先調(diào)度該時(shí)延抖動(dòng)敏感的數(shù)據(jù)流,然后調(diào)度時(shí)延 抖動(dòng)不敏感的數(shù)據(jù)流,其中,該直通隊(duì)列的權(quán)重大于該端口隊(duì)列的權(quán)重。
全文摘要
本發(fā)明公開(kāi)了一種調(diào)度數(shù)據(jù)的方法和系統(tǒng),屬于以太網(wǎng)領(lǐng)域。該方法設(shè)置一個(gè)用于緩存對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)的直通隊(duì)列,該直通隊(duì)列與分類器和出端口直接相連;該分類器對(duì)接收的數(shù)據(jù)流進(jìn)行分類,識(shí)別對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)流和對(duì)時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流;該分類器將對(duì)時(shí)延抖動(dòng)敏感的數(shù)據(jù)流發(fā)送至該直通隊(duì)列,將該對(duì)時(shí)延抖動(dòng)不敏感的數(shù)據(jù)流通過(guò)業(yè)務(wù)調(diào)度器、用戶調(diào)度器和用戶組調(diào)度器發(fā)送至端口隊(duì)列;端口調(diào)度器對(duì)該時(shí)延抖動(dòng)敏感的數(shù)據(jù)和時(shí)延抖動(dòng)不敏感的數(shù)據(jù)進(jìn)行調(diào)度后由該出端口輸出。本發(fā)明的技術(shù)方案可以使時(shí)延抖動(dòng)較小,從而有助于業(yè)務(wù)的推廣。
文檔編號(hào)H04L12/56GK101834787SQ20101014745
公開(kāi)日2010年9月15日 申請(qǐng)日期2010年4月12日 優(yōu)先權(quán)日2010年4月12日
發(fā)明者張海峰, 翟勇 申請(qǐng)人:中興通訊股份有限公司