linux 模擬延時和丟包

2022-03-28 06:13:32 字數 969 閱讀 8972

這是 rhca 中的乙個 bdp 的測試,這也是公司很常用的一種延時和丟包的模擬,現在分享給大家.

我們做的應用軟體,還有測試 tcp/udp  對比,測試 bdp 對 tcp/ip 的影響時,我們都需要一些網路中的延時和丟包模擬,很多商業的軟體可以做這個事,其實完美的 linux 本身就可以使用 tc 來實現這個功能. tc 中的 netem 可以模擬時延,丟包,重複包,亂序等功能

建議大家如果測試的話,使用 tc 當中間的路由器,來接二個網絡卡,然後開啟路由功能來測試.

tc 的最最基本的使用12

34tc qdisc show# 顯示

tc qdisc  add dev eth0 root ......# 加入

tc qdisc  change  dev eth0 root ......# 修改存在的 qdisc ,記的,加入同一條後只能用 change 來修改

tc qdisc del dev eth0 root# 刪除

設定延時 3s :

1tc qdisc add dev eth0 root netem delay 3000ms

可以在 3000ms 後面在加上乙個延時,比如 』3000ms 200ms『表示 3000ms ± 200ms ,延時範圍 2800 – 3200 之間.

結果顯示如下

設定丟包 50% ,iptables 也可以模擬這個,但一下不記的命令了,下次放上來:

1tc qdisc change dev eth0 root netem loss 50%

上面的設丟包,如果給後面的 50% 的丟包比率修改成 『50% 80%』 時,這時和上面的延時不一樣,這是指丟包比率為 50-80% 之間.

顯示如下

linux 網路延時 丟包與傳輸頻寬關係測試

在網際網路中,我們會向網路運營商申請指定額度的頻寬。實際傳輸時,由於網路qos達不到要求,實際的傳輸頻寬可能達不到標稱值。本次測試在區域網環境中使用模擬工具模擬不同qos下的網路條件,得出不同qos網路下傳輸頻寬 網路的qos通常用以下指標衡量 本次測試值模擬丟包率和延時與傳輸頻寬的關係。注 本文中...

UDP丟包(Linux)並測試

一 udp丟包現象 udp丟包是正常現象,因為它是不安全的。udp是無連線的,面向訊息的資料傳輸協議,與tcp相比,有兩個致命的缺點,一是資料報容易丟失,二是資料報無序。要實現檔案的可靠傳輸,就必須在上層對資料丟包和亂序作特殊處理,必須要有要有丟包重發機制和超時機制。常見的可靠傳輸演算法有模擬tcp...

linux下使用tc工具模擬網路延遲和丟包

模擬延遲傳輸簡介 netem 與 tc netem 是 linux 2.6 及以上核心版本提供的乙個網路模擬功能模組。該功能模組可以用來在效能良好的區域網中,模擬出複雜的網際網路傳輸效能,諸如低頻寬 傳輸延遲 丟包等等情況。使用 linux 2.6 或以上 版本核心的很多發行版 linux 都開啟了...