一種DSCP-to-CoS映射的自動化測試的裝置和方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及計算機網(wǎng)絡(luò)領(lǐng)域,特別是涉及一種DSCP-to-CoS映射的自動化測試的 裝置和方法。
【背景技術(shù)】
[0002] QoS協(xié)議中規(guī)定,每一個傳輸報文將包含分類信息,用于標(biāo)識報文在網(wǎng)絡(luò)中被分類 到的不同類別,以便交換機或路由器根據(jù)報文所攜帶的類別信息,為各種交通流提供不同 的傳輸優(yōu)先級。
[0003] 但是,不同的網(wǎng)絡(luò)設(shè)備可能采用不同的分類標(biāo)準(zhǔn),有的攜帶在IP報文頭中的 T0S(TypeOfService,服務(wù)類型)字段前 6 個比特,稱作DSCP(DifferentiatedServices CodePoint,差分服務(wù)代碼點),取值范圍為0~63,有的攜帶在二層報文頭,稱作CoS(code ofservice,服務(wù)代碼),取值范圍為0~7。而且,DSCP的取值范圍遠大于CoS的取值范 圍,但交換機上建立的隊列優(yōu)先級只有8種。因此需要在交換機或路由器上事先配置一個 DSCP-to-CoS的映射關(guān)系,以便根據(jù)不同方式報文的值轉(zhuǎn)換成相同的隊列號,從而確定報文 應(yīng)該被送往的輸出隊列。
[0004] 為了測試交換機能否有效的執(zhí)行DSCP-to-CoS映射,現(xiàn)有技術(shù)中采用的方法是首 先手動配置各種DSCP-to-CoS的映射關(guān)系并且人工輸入一些測試數(shù)據(jù)報文發(fā)送給交換機, 從而檢驗交換機是否根據(jù)該配置生成了正確的映射數(shù)據(jù)。但DSCP-to-CoS映射有很多種組 合,且需要輸入大量測試數(shù)據(jù),因此測試效率比較低。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明主要解決的技術(shù)問題是提供一種DSCP-to-CoS映射的自動化測試的裝置 和方法,能夠?qū)崿F(xiàn)以自動化的方式測試DSCP-to-CoS之間的映射,從而提高了測試工作效 率。
[0006] 為解決上述技術(shù)問題,本發(fā)明采用的一個技術(shù)方案是:提供一種DSCP-to-CoS映 射的自動化測試的裝置,該裝置包括生成模塊,用于生成DSCP-to-CoS之間的映射表;發(fā)送 模塊,用于發(fā)送根據(jù)所述映射表生成的數(shù)據(jù)報文給交換機,所述數(shù)據(jù)報文包含需要測試的 DSCP值;接收模塊,用于接收所述交換機返回的結(jié)果報文,所述結(jié)果報文包含所述交換機 根據(jù)所述需要測試的DSCP值生成的CoS值;對比模塊,用于從所述結(jié)果報文中解析出所述 生成的CoS值,并確定所述需要測試的DSCP值與所述生成的CoS值映射正確。
[0007] 為解決上述技術(shù)問題,本發(fā)明采用的一個技術(shù)方案是:提供一種DSCP-to-CoS映 射的自動化測試的方法,該方法包括生成DSCP-to-CoS之間的映射表;發(fā)送根據(jù)所述映射 表生成的數(shù)據(jù)報文給交換機,所述數(shù)據(jù)報文包含需要測試的DSCP值;接收所述交換機返回 的結(jié)果報文,所述結(jié)果報文包含所述交換機根據(jù)所述DSCP值生成的CoS值;解析所述結(jié)果 報文,確定所述DSCP值與所述生成的CoS值映射正確。
[0008] 區(qū)別于現(xiàn)有技術(shù),本發(fā)明的DSCP-to-CoS映射的自動化測試的裝置,生成 DSCP-to-CoS之間的映射表;發(fā)送根據(jù)所述映射表生成的數(shù)據(jù)報文給交換機,所述數(shù)據(jù)報 文包含需要測試的DSCP值;接收所述交換機返回的結(jié)果報文,所述結(jié)果報文包含所述交換 機根據(jù)所述DSCP值生成的CoS值;解析所述結(jié)果報文,確定所述DSCP值與所述生成的CoS 值映射正確;從而實現(xiàn)以自動化方式測試DSCP-to-CoS之間的映射,提高了測試工作效率。
【附圖說明】
[0009] 圖1是本發(fā)明提供的一種裝置的第一實施方式的結(jié)構(gòu)示意圖;
[0010] 圖2是本發(fā)明提供的一種裝置的第二實施方式的結(jié)構(gòu)示意圖;
[0011]圖3是本發(fā)明提供的一種方法的第一實施方式的流程示意圖。
【具體實施方式】
[0012] 下面結(jié)合【具體實施方式】對本發(fā)明的技術(shù)方案作進一步更詳細的描述。顯然,所描 述的實施例僅僅是本發(fā)明的一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例, 本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都應(yīng)屬于 本發(fā)明保護的范圍。
[0013] 參閱圖1,圖1是本發(fā)明提供的一種DSCP-to-CoS映射的自動化測試裝置的第一實 施方式的結(jié)構(gòu)示意圖。該自動化測試的裝置1〇〇包括:生成模塊110,發(fā)送模塊120,接收模 塊130,對比模塊140。
[0014] 其中,生成模塊110,用于生成DSCP-to-CoS之間的映射表。具體的,根據(jù)當(dāng)前系統(tǒng) 中DSCP的可取值范圍,以及CoS的可取值范圍,生成從DSCP值到CoS值的映射表。
[0015] 例如,DSCP的取值范圍是0~63,CoS的取值范圍是0~7,生成的一個映射表如 表1所示。
[0016]表 1DSCP-to-CoS映射表實例 1
[0017]
[0018] 本發(fā)明實施例中,可以每生成一個不同的映射表,進行一次自動化測試,從而進行 多次自動化測試。
[0019] 發(fā)送模塊120連接生成模塊110,根據(jù)生成模塊110生成的映射表產(chǎn)生需要測試的 DSCP值,將該需要測試的DSCP值包含在數(shù)據(jù)報文中發(fā)送給交換機。
[0020] 具體的,在發(fā)送給交換機的數(shù)據(jù)報文中,通過第三層(即IP)報文頭中攜帶DSCP 值,可選的,在該數(shù)據(jù)報文中,還通過報文的第二層報文頭中包含UserPrioritybits字 段,從而攜帶系統(tǒng)默認(rèn)的CoS值。
[0021] 接收模塊130用于接收交換機返回的結(jié)果報文,該結(jié)果報文中包含交換機根據(jù)數(shù) 據(jù)報文中需要測試的DSCP值生成的CoS值。
[0022] 具體的,在交換機返回的結(jié)果報文中,通過報文的第二層報文頭中包含User Prioritybits字段,攜帶根據(jù)需要測試的DSCP值生成的CoS值,并且,通過第三層(即IP) 報文頭中返回該需要測試的DSCP值。
[0023] 對比模塊140,用于從接收模塊130獲取的結(jié)果報文中解析出該交換機生成的CoS 值,確定該需要測試的DSCP值與所述生成的CoS值映射正確。
[0024] 可選的,如果對比模塊140執(zhí)行確定該需要測試的DSCP值與所述生成的CoS值映 射正確操作失敗,說明交換機不能生成正確的映射值,測試終止并給出錯誤提示。
[0025] 區(qū)別于現(xiàn)有技術(shù),本發(fā)明的自動化測試的裝置生成DSCP-to-CoS之間的映射表, 并根據(jù)該映射表生成包含需要測試DSCP值的數(shù)據(jù)報文后發(fā)送給交換機,接收交換機返回 的結(jié)果報文,從結(jié)果報文解析出交換機根據(jù)該待測試DSCP值生成的CoS值,確定該DSCP值 和CoS值的映射正確,從而實現(xiàn)了對DSCP-to-CoS映射的自動化測試,提高了測試效率。
[0026] 參閱圖2,圖2是本發(fā)明提供的一種DSCP-to-CoS映射的自動化測試裝置的第二實 施方式的結(jié)構(gòu)示意圖。該裝置200包括:生成模塊210,發(fā)送模塊220,接收模塊230,對比 模塊240。
[0027] 其中,生成模塊210包含生成單元211和選取單元212,所述生成單元211,用于根 據(jù)排列組合的方式,生成DSCP-to-CoS之間多種可能的映射關(guān)系表;所述選取單元,用于在 生成單元211生成的多種可能的映射關(guān)系表中選取要測試的映射表??梢悦窟x取一次映射 表,進行一次自動化測試,從而進行多次自動化測試。
[0028] 例如,當(dāng)前系統(tǒng)中DSCP的取值范圍是0~40, CoS的取值范圍是0~7,羅列出各 種組合方式(例如,只有1組數(shù)據(jù)是1對1映射,兩組數(shù)據(jù)是1對1映射,三組數(shù)據(jù)是1對 1映射….),然后從中選取一種映射關(guān)系作為要測試的映射表。
[0029] 在本實施例中,選取的一個映射表如表2所不。
[0030]表 2DSCP-to-CoS映射表實例 2
[0031]
[0032] 發(fā)送模塊220連接生成模塊210,根據(jù)生成模塊210生成的映射表產(chǎn)生需要測試的 DSCP值,將該需要測試的DSCP值包含在數(shù)據(jù)報文中發(fā)送給交換機。
[0033] 具體的,在發(fā)送給交換機的數(shù)據(jù)報文中,通過第三層(即IP)報文頭中攜帶DSCP 值,可選的,在該數(shù)據(jù)報文中,還通過報文的第二層報文頭中包含UserPrioritybits字 段,從而攜帶系統(tǒng)默認(rèn)的CoS值。
[0034] 在本實施例的第一個例子中,需要測試的DSCP值為DSCP-to-CoS之間的映射表包 含的DSCP值,例如DSCP= 40。
[0035] 在本實施例的第二個例子中,需要測試的DSCP值為DSCP-to-CoS之間的映射表不 包含的DSCP值,例如DSCP= 50。
[0036] 接收模塊230用于接收交換機返回的結(jié)果報文,該結(jié)果報文中包含交換機根據(jù)數(shù) 據(jù)報文中需要測試的DSCP值生成的CoS值。
[0037] 具體的,在交換機返回的結(jié)果報文中,通過報文的第二層報文頭中包含User Prioritybits字段,攜帶根據(jù)需要測試的DSCP值生成的CoS值,并且,通過第三層(即IP) 報文頭中返回該需要測試的DSCP值。
[0038] 對比模塊240包含解析單元241,查詢單元242,確定單元243 ;所述解析單元241, 用于從接收模塊230接收到的結(jié)果報文中解析出交換機根據(jù)該需要測試的DSCP值生成的CoS值;查詢單元242用于查詢所述需要測試的DSCP值對應(yīng)的CoS值;確定單元243用于 確定解析模塊241解析出CoS值與查詢模塊242查詢得到的CoS值相同。
[0039] 在如上所述本實施例第一個例子中,需要測試的DSCP值包含在DSCP-to-CoS之間 的映射表中,查詢單元242從所述DSCP-to-CoS之間的映射表中查詢該需要測試的DSCP值 對應(yīng)的CoS值,即DSCP= 40,對應(yīng)CoS= 7。
[0040] 在如上所述本實施例的第二個例子中,需要測試的DSCP值不包含在DSCP-to-CoS 之間的映射表中,所述交換機包含缺省映射表,該缺省映射表包含所述DSCP-to-CoS之間 的映射表不包含的DSCP值與CoS值得映射關(guān)系,例如,缺省映射表如表3所示,所示查詢單 元242從所述缺省映射表中查詢該需要測試的DSCP值對應(yīng)的CoS值,即DSCP= 50,對應(yīng) CoS= 5〇
[0041] 表3DSCP-to-CoS缺省映射表
[0042]
[0043] 可選的,當(dāng)確定單元243確定解析模塊241解析出CoS值與查詢模塊242查詢得 到的CoS值相同失敗后,說明交換機不能生成正確的映射值,測試終止并給出錯誤提示。
[0044] 可選的,該DSCP-to-CoS映射的自動化測試裝置還包含展示模塊250,用于對比模 塊240確定所述需要測試的DSCP值與所述根據(jù)該DSCP值生成的CoS值映射正確之后,通 過一顯示界面展示該CoS值以及測試結(jié)果。
[0045] 區(qū)別于現(xiàn)有技術(shù),本發(fā)明的自動化測試的裝置生成DSCP-to-CoS之間的映射表, 并根據(jù)該映射表生成包含需要測試DSCP值的數(shù)據(jù)報文后發(fā)送給交換機,接收交換機返回 的結(jié)果報文,從結(jié)果報文解析出交換機根據(jù)該待測試DSCP值生成的CoS值,確定該DSCP值 和CoS值的