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