Linux應(yīng)用的延時和丟包模擬
本文將要介紹的是 RHCA 中的一個 BDP 的測試,這也是公司很常用的一種延時和丟包的模擬,你可以測試你的應(yīng)用軟件在不同的情況下的性能,也可以測試你 tcp/ip 調(diào)優(yōu)后是否合適之類,很多地方可以用到。
我們做的應(yīng)用軟件,還有測試 TCP/UDP 對比,測試 BDP 對 TCP/IP 的影響時,我們都需要一些網(wǎng)絡(luò)中的延時和丟包模擬,很多商業(yè)的軟件可以做這個事,其實***的 Linux 本身就可以使用 TC 來實現(xiàn)這個功能. TC 中的 Netem 可以模擬時延,丟包,重復(fù)包,亂序等功能
建議大家如果測試的話,使用 tc 當中間的路由器,來接二個網(wǎng)卡,然后打開路由功能來測試。
tc 的最最基本的使用
tc qdisc show # 顯示 tc qdisc add dev eth0 root ...... # 加入 tc qdisc change dev eth0 root ...... # 修改存在的 qdisc ,記的,加入同一條后只能用 change 來修改 tc qdisc del dev eth0 root # 刪除
Linux 中延時模擬
設(shè)置延時 3s :
tc qdisc add dev eth0 root netem delay 3000ms
可以在 3000ms 后面在加上一個延時,比如 ’3000ms 200ms‘表示 3000ms ± 200ms ,延時范圍 2800 – 3200 之間.
結(jié)果顯示如下
Linux 中丟包模擬
設(shè)置丟包 50% :
tc qdisc change dev eth0 root netem loss 50%
上面的設(shè)丟包,如果給后面的 50% 的丟包比率修改成 ’50% 80%’ 時,這時和上面的延時不一樣,這是指丟包比率為 50-80% 之間。
顯示如下
原文:在 Linux 的應(yīng)用中測試中的延時和丟包模擬
【編輯推薦】