如何让JMeter的BinaryTCPClientImpl接受ACK?

时间:2014-07-18 12:28:12

标签: tcp jmeter tcpclient

我使用JMeter的BinaryTCPClientImpl发送自定义协议的命令。通过设计,此命令不会从接收它的应用程序生成响应,以便返回到JMeter的唯一响应是TCP ACK帧。 JMeter的TCP采样器不会将ACK视为响应,因此插槽关闭后会发生读取超时。根据文档,我试图将行尾字节值设置为大于128,以关闭流结束的检查,但没有任何关于读取超时的更改。

有没有办法让BinaryTCPClientImpl接受TCP ACK作为有效响应而不实现自定义采样器?

1 个答案:

答案 0 :(得分:2)

实际上,ACK数据包是用于tcp通信的发送阶段的一部分。因此,如果您已成功发送请求,则符合您的要求。

默认情况下,BinaryTCPClientImpl无法等待响应。因此,您必须实现自己的BinaryTCPClientImplNoResp类,派生自BinaryTCPClientImpl并覆盖其read()方法。现在我知道没有更好的方法来实现你的目标。