国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于交換芯片的3級調(diào)度算法的研究與實(shí)現(xiàn)

2012-06-25 07:03:28戴錦友
電視技術(shù) 2012年9期
關(guān)鍵詞:單播層次化寄存器

張 蕾,戴錦友

(光纖通信技術(shù)和網(wǎng)絡(luò)國家實(shí)驗(yàn)室烽火網(wǎng)絡(luò)有限公司,武漢 430074)

隨著網(wǎng)絡(luò)上新應(yīng)用的不斷出現(xiàn),對網(wǎng)絡(luò)的服務(wù)質(zhì)量也提出了更新的要求。QoS旨在針對各種應(yīng)用的不同需求,為其提供不同的服務(wù)質(zhì)量,例如為報(bào)文分類和著色,對流量進(jìn)行管理和避免網(wǎng)絡(luò)擁塞等功能,層次化的調(diào)度方式更能靈活地實(shí)現(xiàn)流量的管理,對于先來的報(bào)文可以進(jìn)行1級調(diào)度后,與后來的報(bào)文再次進(jìn)行2級調(diào)度處理,依次往下按自己需求進(jìn)行調(diào)度,使得出去的報(bào)文是最優(yōu)的,這就是層次化的調(diào)度方式。

1 3級調(diào)度的原理

第五代交換芯片支持3級調(diào)度,由S1,S2和S33個(gè)調(diào)度節(jié)點(diǎn)組成。S1調(diào)度節(jié)點(diǎn)有4個(gè)(S3.0~S3.3,MC-group),S2調(diào)度節(jié)點(diǎn)有3個(gè)(S2.0~S2.2),S1調(diào)度節(jié)點(diǎn)有1個(gè)。3級調(diào)度的意義在于前1個(gè)調(diào)度的輸出隊(duì)列可以作為下個(gè)節(jié)點(diǎn)的輸入隊(duì)列,在這種結(jié)構(gòu)中,S2/S3的輸出隊(duì)列可以作為S1調(diào)度節(jié)點(diǎn)的輸入。

下面來說明隊(duì)列和調(diào)度節(jié)點(diǎn)之間的映射關(guān)系:

1)10個(gè)單播隊(duì)列。4個(gè)單播UC隊(duì)列Q0~Q3用來映射到S3節(jié)點(diǎn),Q4~Q7映射S2節(jié)點(diǎn),或者Q0~Q7全部映射到S2節(jié)點(diǎn)。還有2個(gè)單播隊(duì)列UC直接映射到S1節(jié)點(diǎn)。

2)5個(gè)組播MC隊(duì)列。1個(gè)MC直接用來映射到S1節(jié)點(diǎn),MC Q0~Q3全部映射到S3節(jié)點(diǎn),或者這4個(gè)MC隊(duì)列組成1個(gè)MC Group映射到S1節(jié)點(diǎn),如圖1所示。

圖1 1級調(diào)度結(jié)構(gòu)圖(軟件截圖)

因?yàn)榻粨Q芯片支持的是3級調(diào)度,所以寄存器的配置方式就與其他芯片不一樣,下面會具體分析每個(gè)寄存器的值如何寫入。但是與其他芯片一樣,同樣支持SP,RR,WRR,WERR這4種調(diào)度算法。

下面主要看看各個(gè)相關(guān)寄存器:

1)第1級調(diào)度S3節(jié)點(diǎn)相關(guān)的寄存器為S3_CONFIG,S2_S3_ROUTING和S3_COSWEIGHTS。

其中S3_CONFIG 用來配置 S3.0,S3.1,S3.2,S3.3 等4個(gè)節(jié)點(diǎn)的調(diào)度方式。字段SCHDULING_SLECTTf為8 bit,0 ~1 bit對應(yīng)的是 S3.0,2 ~3 bit對應(yīng)的是 S3.1,4~5 bit對應(yīng)的是 S3.2,5 ~6 bit對應(yīng)的是 S3.3,ROUTE_UC_TO_S2f的1個(gè)bit表示允許S3節(jié)點(diǎn)的單播隊(duì)列映射到S2節(jié)點(diǎn)。因此配置調(diào)度方式的時(shí)候應(yīng)該每個(gè)節(jié)點(diǎn)都應(yīng)該配置到,例如4個(gè)節(jié)點(diǎn)分別配置為SP優(yōu)先級調(diào)度,故寫入寄存器的值應(yīng)該為0x10。

S2_S3_ROUTING寄存器是表示S3節(jié)點(diǎn)和S2節(jié)點(diǎn)隊(duì)列之間的映射關(guān)系,隊(duì)列0~3表示的是S3.0~S3.3映射的4個(gè)組播隊(duì)列,隊(duì)列4~7表示S3.0~S3.3映射過來的4個(gè)單播隊(duì)列UC0~UC3,隊(duì)列8~11表示的是單播隊(duì)列UC4~UC7。

當(dāng)配置好S3節(jié)點(diǎn)的調(diào)度模式為WRR,對應(yīng)隊(duì)列的權(quán)重寫入寄存器S3_COSWEIGHTS。

2)第2級調(diào)度S2節(jié)點(diǎn)相關(guān)的寄存器有S2_CONFIG,S2_COSWEIGHTS。類似地,S2_CONFIG是用來配置節(jié)點(diǎn)的調(diào)度模式。當(dāng)調(diào)度模式為WRR時(shí),用S2_COSWEIGHTS來配置隊(duì)列權(quán)重。地址0~3是節(jié)點(diǎn)S3映射的4個(gè)組播隊(duì)列,地址4~7是S3節(jié)點(diǎn)映射的4個(gè)單播隊(duì)列UC3,地址8~11對應(yīng)的是單播隊(duì)列UC4~UC7。

3)第3級調(diào)度節(jié)點(diǎn)S1相關(guān)寄存器:調(diào)度模式寄存器ESCONFIG和配置權(quán)重COSWEIGHTS。

2 3級調(diào)度軟件實(shí)現(xiàn)

首先解決隊(duì)列優(yōu)先級映射關(guān)系的問題,通過在代碼的初始化部分增bcm_cosq_config_set函數(shù)完成隊(duì)列初始化映射關(guān)系,保證隊(duì)列0~7對應(yīng)的優(yōu)先級分別為0~7。

bcm_cosq_config_set(uint,8);

當(dāng)然,在初始化部分關(guān)于S2,S3寄存器的初始化也沒有,所以在初始化部分還應(yīng)該加上對寄存器初始化的部分,S2.0和S3配置為RR調(diào)度模式,值分別為0x15和0x55,S2.1,S2.2初始化的時(shí)候不用到,所以值為0x1F。

rval0-0;

soc_reg_filed_set(uint,s3_configr,&rval0,scheduling_selectf,0x55);

rval0-1;

soc_reg_filed_set(uint,s2_configr,&rval1,scheduling_selectf,0x15);

/*S3.0-S3.3 and unitcast queues 4-7 to S2.0*/

COMPOLER_64_ZERO(r64val0);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,& r64val0,s3_GROUP_NO_I0f,0);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,& r64val0,s3_GROUP_NO_I1f,1);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,& r64val0,s3_GROUP_NO_I2f,2);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,& r64val0,s3_GROUP_NO_I3f,3);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,& r64val0,s3_GROUP_NO_I4f,8);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,& r64val0,s3_GROUP_NO_I5f,9);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,& r64val0,s3_GROUP_NO_I6f,10);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,& r64val0,s3_GROUP_NO_I7f,11);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,& r64val0,s3_GROUP_NO_I8f,0x1f);

COMPOLER_64_ZERO(r64val1);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,&r64val1,s3_GROUP_NO_I0f,0x1f);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,&r64val1,s3_GROUP_NO_I1f,0x1f);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,&r64val1,s3_GROUP_NO_I2f,0x1f);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,&r64val1,s3_GROUP_NO_I3f,0x1f);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,&r64val1,s3_GROUP_NO_I4f,0x1f);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,&r64val1,s3_GROUP_NO_I5f,0x1f);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,&r64val1,s3_GROUP_NO_I6f,0x1f);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,&r64val1,s3_GROUP_NO_I7f,0x1f);

soc_reg_filed_set(uint,s2_s3_ROUTINGr,&r64val1,s3_GROUP_NO_I8f,0x1f);

用以上代碼完成了對調(diào)度節(jié)點(diǎn)的初始化配置。

3 實(shí)驗(yàn)仿真及分析

搭建環(huán)境:實(shí)驗(yàn)用到儀表IXIA,6根光纖,在21槽位的上聯(lián)板選擇上聯(lián)端口XE55,XE56,XE57作為實(shí)驗(yàn)端口,XE56,XE57發(fā)包,XE55收包;在儀表的 card1上選擇1,3,5,3個(gè)端口分別用光纖與設(shè)備端口相連。

拓?fù)浣Y(jié)構(gòu)如圖2所示。

圖2 實(shí)驗(yàn)拓?fù)浣Y(jié)構(gòu)

萬兆口XE56,XE57發(fā)單播包,XE55收包。在出端口XE55配置節(jié)點(diǎn)狀態(tài),值得注意的是,單播UC0~3只能映射到S3節(jié)點(diǎn),UC4~7只能映射到S2節(jié)點(diǎn)。

1個(gè)單播UC優(yōu)先級為1映射到S3.1,故應(yīng)該在調(diào)度模式比特寫入0x04,1個(gè)單播UC優(yōu)先級為4映射到節(jié)點(diǎn)S2.0,相應(yīng)的比特值為1。在S3,S2,S1節(jié)點(diǎn)配置調(diào)度模式為RR,見圖3所示。

圖3 端口輪詢收到包(截圖)

2)實(shí)驗(yàn)數(shù)據(jù)2:2個(gè)UC包→S2.0→S1

2個(gè)隊(duì)列優(yōu)先級為4和5,只能映射到S2節(jié)點(diǎn)。在S2,S1節(jié)點(diǎn)配置調(diào)度模式為WRR,權(quán)重比為1∶2。優(yōu)先級為4和5的隊(duì)列分別映射到S2節(jié)點(diǎn)隊(duì)列的8和9,見圖4所示。

圖4 端口收到包的比重為1∶2(截圖)

1個(gè)優(yōu)先級為1的組播包映射到在S3.1,1個(gè)優(yōu)先級為0的單播包映射到S3.0。S3,S2,S1節(jié)點(diǎn)配置調(diào)度模式為SP,見圖5所示。

從以上實(shí)驗(yàn)可以看出多級調(diào)度支持單播隊(duì)列,組播隊(duì)列以及單播和組播的混合隊(duì)列調(diào)度,調(diào)度方式靈活。每級調(diào)度可以采用不同的調(diào)度算法,調(diào)度級數(shù)也靈活多變,可以根據(jù)隊(duì)列需求選擇調(diào)度級數(shù),也就是說多級調(diào)度也支持單級調(diào)度的模式。

圖5 端口收到優(yōu)先級1的組播包(截圖)

4 小結(jié)

本文基于第五代BCM交換芯片,分析了層次化調(diào)度方式的原理,軟件實(shí)現(xiàn)以及其仿真實(shí)現(xiàn)結(jié)果。仿真結(jié)果顯示:對單播組播包,每級調(diào)度節(jié)點(diǎn)采用不同的調(diào)度算法,最后都能實(shí)現(xiàn)優(yōu)先包的輸出。這種層次化的調(diào)度方式可更靈活地實(shí)現(xiàn)流量的管理。

[1]CHETTO H,CHETTO M.Some results of earliest deadline scheduling algorithm[J].IEEE Trans.Software Engineering,1989,15(10):1261-1269.

[2]RFC 2212,Specification of guaranteed quality of service[S].1997.

[3]BAKER T.Stack-based scheduling of real-time processes[J].Journal of Real-Time System,1991,3(1):79-100.

[4]劉勤讓,鄔江興.Internet中QoS的分析理論探討[J].計(jì)算機(jī)科學(xué),2005,32(4):1-3.

[5]劉韻潔,張?jiān)朴?,張智?下一代網(wǎng)絡(luò)服務(wù)質(zhì)量技術(shù)[M].北京:電子工業(yè)出版社,2005.

猜你喜歡
單播層次化寄存器
高空通信平臺非正交廣播與單播復(fù)用容量研究
面向量化分塊壓縮感知的區(qū)域?qū)哟位A(yù)測編碼
Lite寄存器模型的設(shè)計(jì)與實(shí)現(xiàn)
分簇結(jié)構(gòu)向量寄存器分配策略研究*
鐵路傳送網(wǎng)OTN設(shè)備互聯(lián)互通開銷層次化處理研究
艦船系統(tǒng)間電磁兼容性的層次化優(yōu)化方法
城市車輛網(wǎng)絡(luò)單播路由協(xié)議:審查、分類和開放問題研究
汽車文摘(2014年12期)2014-12-15 22:25:34
IP互動(dòng)電視快速頻道切換的解決方案與實(shí)現(xiàn)
天津科技(2014年6期)2014-08-08 01:00:31
基于層次化分類器的遙感圖像飛機(jī)目標(biāo)檢測
高速數(shù)模轉(zhuǎn)換器AD9779/AD9788的應(yīng)用
西畴县| 禄劝| 千阳县| 历史| 达孜县| 工布江达县| 蕉岭县| 白玉县| 建宁县| 文安县| 大足县| 固安县| 绍兴县| 连州市| 金山区| 北海市| 昭通市| 永平县| 文昌市| 老河口市| 临澧县| 邹平县| 盱眙县| 晋州市| 威信县| 海宁市| 兴和县| 凤凰县| 紫阳县| 湘阴县| 呼伦贝尔市| 泰宁县| 开远市| 满洲里市| 红安县| 石棉县| 乌兰县| 霸州市| 买车| 沧源| 来宾市|