Xena 知識庫

Xena2544 中的硬體修飾符

如何在 Xena2544 中將兩個 HW 修飾符添加到 protocoal 標頭字段 

在當前版本的 Xena2544 中,您可以使用 Xena2544 使用者介面為協議標頭字段添加一個硬體修飾符。但是,可以通過編輯測試的配置檔(.x2544 檔)來獲取一個協議標頭欄位的兩個硬體修飾符。

如果要添加兩個硬體修飾符以基於 IPv4 源位址生成超過 65535 個流,可以通過修改測試的配置檔來獲取兩個修飾符來實現此目的,這兩個修飾符共同遞增 IP 源地址的相關部分,從而生成16777216流。這是通過在兩個硬體修飾符設置為遞增它們被程式設計影響的位時,對其中一個硬體修飾符使用“重複計數”參數來實現的。

重複計數「參數允許其中一個硬體修飾符比另一個更慢地運行。硬體修飾符將等待數據包的「重複計數」數,然後再修改其程式設計要影響的位。您可以為「重複計數」參數設置的最大值為 4096。如果為其中一個硬體修飾符設置此值,則在增加第一個硬體修飾符的值之前,另一個硬體修飾符會得到 4096 (或 212) 不同的值(從 0 到 4095)。這樣,您可以影響 IPv4 源位址中 32 位中的 24 位。以下示例假定最高有效 8 位保持不變,而其餘 24 位遞增。

一個注意事項是每個硬體修飾符最多可以影響16位。因此,必須設置兩個硬體修飾符的蒙版,以便它們不會重疊 – 如下所示:

HW 修飾符的二進位值必須轉換為兩個十進位數,每個十進位數表示掩碼中 16 位中的 8 位:

硬體修飾符 二進位值 十進位數
硬體修飾符 0 11111111 11110000 255 240
硬體修飾符 0 00001111 11111111 15 255

在 GUI 中設置 HW 修飾符 0 將如下所示(修飾符計數是硬體修飾符的最大值):

您可以通過為 IPv4 目標地址設置修飾符來說明應如何設定 HW 修飾符 1:


使兩個硬體修飾符影響 24 個最低有效位

  • 創建硬體修飾符 – 一個用於 IPv4 源位址,一個用於 IPv4 目標位址,如上所示。
  • 保存配置(按         )
  • 使用文字編輯器開啟設定檔(.x2544 檔案)
  • 識別下面顯示的文字行:

{

“StreamConfig”: {

“SwModifier”:空,

“HwModifiers”: [

{

“偏移”:1,

“掩碼”: “/A=”,

“行動”: “INC”,

“起始值”: 0,

“止損值”: 4095,

“步進值”: 1,

重複計數「:4096,

“SegmentId”: “5514a864-4b1a-43d6-affc-30de11ea0554”,

“欄位名稱”: “源IP位址”

},

{

“偏移”: 2,

“掩碼”: “D/8=”,

“行動”: “INC”,

“起始值”: 0,

“止損值”: 4095,

“步進值”: 1,

重複計數「: 1,

“SegmentId”: “5514a864-4b1a-43d6-affc-30de11ea0554”,

“欄位名稱”: “目標IP位址”

}

  • 將綠色背景的文本從 Dest 更改為 Src
  • 在文字編輯器中保存配置檔
  • 將配置檔載入到 Xena2544

現在開始測試時,您將獲得兩個修飾符,遞增IP源位址的24個最低有效位,從而創建所有可能16777216值。