網絡延遲-tc工具使用簡單說明

在工做中遇到了製造延遲測試

tc qdisc add dev eth1 root netem delay 600msip

測試部須要的場景比較特殊,只針對核心與組件之間延遲,對於普通設備等不作延遲。還須要保存延遲配置重啓不失效ci

具體的作法是加過濾限制,只針對核心通訊的組件進行延遲,組件自己作延遲。get

針對不一樣設備,加到平臺配置層裏面io

核心網上具體的配置

tc qdisc add dev eth1 root handle 1: prio priomap 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
tc qdisc add dev eth1 parent 1:2 handle 20: netem delay 600ms
tc filter add dev eth1 parent 1:0 protocol ip u32 match ip dst 192.168.69.23  flowid 1:2
tc filter add dev eth1 parent 1:0 protocol ip u32 match ip dst 192.168.69.24  flowid 1:2
寫在/etc/rc.d/rc.local裏面 其中192.168.69.23,24是組件ip eth1是核心對外網卡class

組件設備上的具體配置

cd /tcdir && chmod 777 tc
./tc qdisc add dev eth1 root netem delay 600ms配置

寫在/opt/local/sbin/osscripts/OSStart 腳本中 其中 tcdir是tc文件所在的目錄(不要放在root下) ,eth1是組件對外網卡network

tc qdisc del dev eth1 root #刪除以前的延遲配置
tc也能夠針對端口作限制
以上參考
https://stackoverflow.com/questions/40196730/simulate-network-latency-on-specific-port-using-tcmap

相關文章
相關標籤/搜索