Wireshark抓包分析

参考:TCP的几个状态 (SYN, FIN, ACK, PSH, RST, URG)_lamb7758的博客-优快云博客_ack psh

wireshark 命令总结_丰梓林的博客-优快云博客_wireshark命令

 1.SYN表示客户端发起请求,当服务端的端口未开启时,操作系统发送RST重置连接。

 2.当服务端端口开启时,正常3次握手,SYN-->(SYN,ACK)-->ACK

3.四次挥手标志位FIN。有客户端或服务端发起

4.ACK的值代表下一个接收包的起始流水号。精确到字节。Seq,ACK双向确认,双向发送。PSH标志传输层消息体有数据发送

5.链路层,ip层,传输层,应用层(在传输层消息体)

 6.TCP协议,因为滑动窗口机制(未解决传输慢时的问题),如果处理不及时,会产生粘包现象。传输层应用层都有可能产生半包粘包。

参考第3章_03-netty进阶-黏包半包-分析_哔哩哔哩_bilibili

7.直接关闭客户端程序时,客户端发送了一个[RST,ACK]就结束了。

一般地,当出现FIN包或RST包时,我们便认为客户端与服务器端断开了连接,服务端可以决定是否重连。

服务端直接关闭程序类似,

  

正常情况下,客户端关闭时发送FIN,再四次挥手

8.一次http响应有时会拆成多个tcp包,wireshark在最后个包显示类型为http

在这里已经解析合并

9.TCP保活

 参考:c# - HttpResponseStream在Close时候,为什么要向Client发送 30 0D 0A 0D 0A ? - SegmentFault 思否

10.PacketSender 和 NetAssist发送接收测试

https://github.com/dannagle/PacketSender 

 发送http数据

 抓包发送数据,复制应用层数据

packetsender发送接收数据

NetAssist 发送接收数据

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值