我正在尝试解析巨大的 .pcap 文件(每个约 1-2GB)。我曾尝试使用 scapy,但到目前为止速度很慢。我使用以下代码对时间进行了基准测试,其中具有不同的计数值
from scapy.all import *
from scapy.layers.dns import DNSRR, DNS, DNSQR
import time
t0 = time.time()
pcap = 'output.pcap'
pkts = rdpcap(pcap, count=1000000)
t1 = time.time()
print(t1-t0)
看来 rdpcap() 每秒只能处理大约 800 个数据包。scapy、其他工具或扩展此过程的好方法是否有任何优化?每个数据包都应该是 DNS。