tcp抓包

1、抓包

clinet:tcpdump dst port 8888 -W 5 -C 100 -w dump.pcap


server:tcpdump port 8888 -W 5 -C 100 -w dump.pcap

tcpdump -i eth0 host xxx.com   -w 0907-dump.pcap

2、将文件通过Wireshark查看分析

对于排查网络延时/应用问题有一些过滤条件是非常有用的:
tcp.analysis.lost_segment:表明已经在抓包中看到不连续的序列号。报文丢失会造成重复的ACK,这会导致重传。
tcp.analysis.duplicate_ack:显示被确认过不止一次的报文。大凉的重复ACK是TCP端点之间高延时的迹象。
tcp.analysis.retransmission:显示抓包中的所有重传。如果重传次数不多的话还是正常的,过多重传可能有问题。这通常意味着应用性能缓慢和/或用户报文丢失。
tcp.analysis.window_update:将传输过程中的TCP window大小图形化。如果看到窗口大小下降为零,这意味着发送方已经退出了,并等待接收方确认所有已传送数据。这可能表明接收端已经不堪重负了。
tcp.analysis.bytes_in_flight:某一时间点网络上未确认字节数。未确认字节数不能超过你的TCP窗口大小(定义于最初3此TCP握手),为了最大化吞吐量你想要获得尽可能接近TCP窗口大小。如果看到连续低于TCP窗口大小,可能意味着报文丢失或路径上其他影响吞吐量的问题。
tcp.analysis.ack_rtt:衡量抓取的TCP报文与相应的ACK。如果这一时间间隔比较长那可能表示某种类型的网络延时(报文丢失,拥塞,等等)


例如

ireshark把第一次重传包分类为out of order 类型,可以通过tcp.analysis.out_of_order过滤
如果第二次重传,分类为fast retransmission,可以通过tcp.analysis.retransmission和tcp.analysis.fast_retransmission过滤

tcp抓包

上一篇:用python创建一个DataFrame


下一篇:解决:使用pip命令安装第三方库时报错WARNING: You are using pip version 19.2.3, however version 20.1.1 is available. Y