工具
捕获回放
登录后可跨设备保存划线和私人笔记登录
工业协议的问题在于,最有意思的协议往往分布在对 IT 人员不太友好的地方。
要么太热,要么太冷,而且附近通常也没什么好咖啡。
Capture Replay 工具就是一个小帮手,或许能帮上忙。
尤其是在开发被动模式驱动时,这个工具非常实用。
它允许重放已录制的网络流量,并让任意被动模式驱动直接截获这些流量。
它对非被动模式的驱动或许也能起作用,但我预计同步会比较棘手。
获取抓包
要创建抓包,我通常会让一台运行 WireShark 的设备接入网络。
理想情况下接入到网络交换机的镜像端口,这样就能记录下全部流量。
另一种办法是在能够访问我所关心流量的某台 PC/服务器上运行 WireShark。因此,例如如果我想为控制系统 X 开发驱动,在其中一台 X 服务器上抓取流量大概是最简单的方式。如果合规规则禁止这样做,第三个选项就是使用网络分路器(tap)来记录抓包。
重放抓包
接下来你需要把 pcapng 文件理想情况下拷贝到你的开发系统上。
抓包可以通过 plc4j/tools/capture-replay 中的工具进行重放。
在这里只需找到 target/plc4j-capture-replay-1.0.0-uber-jar.jar 并运行:
java -jar target/plc4j-capture-replay-1.0.0-uber-jar.jar --input-file {path to capture} --output-device {name of the network device} --replay-speed 1 --loop true选项 input-file 和 output-device 是必需的,其余为可选:
input-file指定抓包文件(pcapng)的路径output-device用于输出的网络设备名称(在 Linux 和 Mac 上运行ifconfig时列出的名称,或 Windows 上的ipconfig)replay-speed回放的速度。1 表示实时,0 或更小表示as fast as possible,0.5 表示比原始速度慢 50%,2 表示两倍速loop如果设置为 true,则一旦到达末尾就会自动从开头重新开始回放抓包内容
| 回放速度非常适合用来观察你的驱动程序如何应对不同的流量负载。因此,即使你的驱动程序目前运行良好,也建议使用此工具,以了解你的系统是否能够承受多出 50% 的节点或更短的轮询间隔等情况。 |
|---|
评论
登录后参与评论
正在加载评论…
KnowForge