Wireshark网络分析(林沛满书学习总结)
分析问题角度
#重启后无法通信,注意路由表
#注意观察IP,有时候拒绝访问是请求经过NAT,source IP被改掉了
#重传率高:可能乱序
#是否有防火墙拦截
#如果使用UDP传输,数据包分片传输后,若远距离传输丢包,则全部重传,大大降低效率。UDP适合DNS查询和语音通话等。
#注意MTU大小对应:可能会导致一直重传一直丢包,传输像掉进了黑洞
相关方法
#包(“帧”)的最大长度一般为1514字节,启用了Jumbo Frame(巨型帧)可达9000字节以上。为了只抓包头,在wireshark的options里定义“Limit each packet to”设置为80(偏大的数字),TCP层、网络层和数据链路层的信息都可包括在内。 或者用tcpdump -s可以达到相同效果。
#为操作打标记,可以每一步完成ping (IP) -n 1 -l (number)
wireshark的提示:
(1)Packet size limited during capture
说明标记的包未抓全(如全长171字节,只抓了前96字节)
(2)TCP previous segment not captured
说明中间有包没抓到,可能真丢也可能漏抓,判断方法是看对方回复的ACK值
(3)TCP ACKed unseen segment
发现包未抓到,最常见,几乎永远可以忽略
(4)TCP Out-of-Order
乱序
(5)TCP Dup ACK
乱序或丢包时,接收方会收到Seq的值比期望值大的包
(6)TCP Fast Retransmission
发送方收到3个或以上的TCP Dup ACK,因此快速重传。
(7)TCP Retransmission
发送方未收到接收方触发,超时重传
(8)TCP zerowindow
表示这个包的发送方当前还有多少缓存区可以接收数据
(9)TCP window Full
表示接收方所声明的接收窗口已耗尽
过滤操作
1.协议名过滤:
2.IP地址加port号:
3.用 && 进一步过滤或 || 防止遗漏
让wireshark自动分析
##专家分析
##性能问题三板斧:
(1)Statistics——Summary,流量高不高,负担重不重
(2)Statistics——Service Response Time——ONC RPC——Program:NFS Version:3——Create Stat,看响应时间,存储是否过载
(3)Analyze——Expert Info Composite,看是否报错,有无网络问题,注意重传、乱序
TCP常用参数
#Seq:表示该数据段的序号
#Len:该数据段的长度
#Ack:确认号,接收方确认已经收到哪些字节
#SYN:携带这个标志的包表示正在发起连接请求。
#FIN:携带这个标志的包表示正在请求终止连接。
#RST:用于重置一个混乱的连接,或者拒绝一个无效的请求。实际中,RST往往意味着大问题。如果看到,务必好好检查。