Networking

FreeBSD 中的擁塞控制算法性能測試

  • September 8, 2015

我正在實施對 TCP 擁塞控制算法的提議修改,該算法將允許通過添加動態頻寬估計來改進它(CC)。

我已經能夠(在這個社區的一些聰明成員的幫助下)創建一個可以載入到核心中的工作 CC 模組。現在我想對其進行測試,並將其與混合網路環境(有線/無線設備)中的內置 CC 算法(NewReno、Vegas、Cubic、HTCP)進行比較。

你會推薦我用什麼來測試和比較這些 CC 算法的性能?

我聽說過 NS-2,但我也想找到一個可以用於在真實環境中進行測試以獲取真實數據的工具。

先感謝您!

由於在這個論壇沒有回答我的問題,我寫信給 freebsd-net 郵件組有一個類似的問題,並收到建議使用兩個工具 IMUNES http://imunes.tel.fer.hr/和 TEACUP http:/ /caia.swin.edu.au/tools/teacup/

我已經測試 IMUNES 幾天了,但我還沒有測試過 TEACUP,所以我將提供一個簡短的描述。

IMUNES 允許您創建一個虛擬網路,您可以在其中配置從節點介面到路由器中的路由協議以及連結設置(如速度、誤碼率、延遲和重複數據包百分比)的所有內容。當實驗開始時,每個虛擬化節點都有自己的文件系統,該文件系統是從文件創建的/var/imunes/vroot/,允許您一次更改所有設備的設置。

起初有些事情並不那麼明顯(至少對我而言):

  1. 在 FreeBSD-10.1-RELEASE 上不支持,但在 FreeBSD-9.3-RELEASE 上有效
  2. 實驗開始後,點兩下某個節點即可獲得節點終端訪問權限。您可以打開任意數量的視窗;
  3. 沒有全域設置的系統設置,需要在每個節點上單獨設置;
  4. 當實驗終止時,在虛擬節點中創建/編輯的所有文件和設置都將被破壞,但是可以在實驗執行時訪問這些文件,在/var/imunes/[i*****]每個虛擬節點的文件夾下創建。當然,您可以使用該命令find來查找您要查找的文件;
  5. 如果需要向虛擬節點添加程序,必須使用pkg_add_imunes [settings] [name];
  6. 雖然您可以在鏈路上設置 BER,但這與丟包率不同。要設置丟包率,請使用命令載入 dummynet Kernel 模組kldload dummynet並用於ipfw設置節點之間的連結設置。

如果還有更多內容要添加,我將更新列表。

引用自:https://unix.stackexchange.com/questions/197631