由Wireshark分析的JMeter http采样器(与计时器有关)中的“服务器响应失败”

我正在观察网络的“奇怪”行为。 JMeter作为线程的一部分发送的每个偶数HTTP请求都将丢失(“服务器无法响应”)错误。当每个错误导致每秒大约一个http请求时,使用constant timer观察到错误,而使用constant throughput timer观察不到错误。将请求之间的延迟设置为2秒会使错误消失(可能是超时开始),然后Wireshark日志中的行数从29增加到51。因此,具有相同频率的一种方法不会导致错误,而另一种方法会导致100%的错误。该问题在其他设置中不是很明显,我想使用该设置来找到问题的根本原因。

由于内部网络数据等具有敏感性质,因此我认为我不会共享完整的Wireshark日志。在Wireshark主屏幕中,成功运行和失败之间的视觉差异是从第二个请求的时间开始(在此之前的时间轴上有明显的间隔),如果成功,我们将发送数据,但失败则得到Encrypted Alert数据包。通过手动查看数据包的内容,我无法立即发现从客户端发送的数据包中的数据包之间的差异。这项任务对我来说是新手,而且技术性很高,因此即使我发现了一些与Encrypted Alert相关的帖子,也无法将其应用于我的情况。请告知需要来自Wireshark等的其他信息,以查找问题原因并找出两种情况下客户端发出请求的方式有何不同。查看Wireshark的屏幕,区别从第19行开始:

第二个HTTP失败:

由Wireshark分析的JMeter http采样器(与计时器有关)中的“服务器响应失败”

成功都http:

由Wireshark分析的JMeter http采样器(与计时器有关)中的“服务器响应失败”

feng0905 回答:由Wireshark分析的JMeter http采样器(与计时器有关)中的“服务器响应失败”

要使用Wireshark解密流量,您需要:

  1. Get RSA private key for the website you're testing
  2. Feed the RSA private key to Wireshark

在大多数情况下,使用JMeter和Java调试机制会容易得多,例如:

  1. 将下一行添加到 system.properties 文件:

    javax.net.debug=all
    

    通过这种方式,您将在STDOUT

  2. 中获得有关SSL / TLS握手,使用的证书等的大量信息。
  3. Uncomment (or add) the next line in log4j2.xml

    <Logger name="org.apache.http" level="debug" />
    

    这样,您将获得每个传入和传出network packet

  4. 的Wireshark级详细信息
本文链接:https://www.f2er.com/3124721.html

大家都在问