小公司没有testcenter之类的打流工具,并且内网流量比较小,即使全部镜像也没法进行压测,使用pktgen又不方便模拟数据中心复杂的流量,不够真实,这时候使用tcpreply的流量回放功能进行压测是个比较好的方案。
测试环境:x86服务器+两个万兆网卡
1. 使用tcpdump抓取部分流量,我这里在网关抓取了300M流量
tcpdump -i p1p1 -s0 -w /home/test.pcap
2. 两个网卡A和B, A用做DPDK接收报文的网卡,B用做发包网卡, 并把两个网卡直连
tcpreplay -i B -l 0 -t test.pcap
-t 表示全速发包
-l 0表示循环发这300M的流量
这时候就可以看到A网卡能收包了
3. 如果单个tcpreplay发包无法满足,可以开启多个tcpreplay
比如我使用一个tcpreplay只能达到4Gbits/s的速度,那可以多抓几个300M流量
多个窗口执行tcpreplay流量轻松10Gbits/s
网友评论