trex有状态

有状态(ASTF) :
概述 :
Stateful指的是网络设备对每条流保存其五元组,TRex通常先录制一条流的一组报文,随后以这组报文为模板,在真正测试的时候,更改其src/dst IP和Port,原本需要协议栈做的事情,通过事先录制的报文而得到,而当这个更改了src/dst IP的报文通过网络设备时仍然被认为是一个有效的连接,因为网络设备并不关心它所接的两端到底是不是真实的设备,它关心的是五元组,server作response关心的是IP的checksum,IP包是否完整,关心的是TCP的seq,是否连续,有没有乱序,关心的是TCP的checksum,而这些包都经过之前的录制已经response了,因此TRex巧妙的跳过了这个回答的过程,因此对于被测网络设备来说它接收到了来自于client的request请求,也收到了来自于server的response,因此虽然TRex自身没有协议栈,却让网络设备有了状态,因此它可以测试L4~L7层的应用,重点是提前录制连接的过程。
配置
占用接口 :
需要把接口的pci放在trex_cfg.yaml里面,如果是三层测试并且配置网关地址。

  1. 查看pci

执行./dpdk_setup_ports.py –s 可以看到红色方框为已经占用的接口,蓝色为没有占用的,此时我们需要选择蓝色中没有占用的,但是后面跟有active的就是划圆圈的那个不可以使用,这个是管理用的。然后箭头指的就是我们要的pci,现在我们选两个,02.02.0 和02.03.0
2.配置测试仪接口
vi /etc/trex_cfg.yaml

此时将我们之前拿到的pci放入配置文件中,如果三层测试配置好ip。
3.防火墙配置。配置好网关,全通策略

4.配置http流量配置文件

vi cap2/http_simple.yaml
这里指定了一个http流量包,我们可以换成我们自己抓到的包。并且可以设置源目地址范围。它会自己替换到包里面的源目地址为我们这个配置文件里面设置的地址。
5.发送http流量

-f 指定配置文件 -d 测试时间
红框里面是接口占用信息 。

Guess you like

Origin blog.csdn.net/qq_38595432/article/details/118395729