HTTP抓包分析

 

网络包:
URG 紧急指针( urgent pointer)有效。
ACK 确认序号有效。
PSH 接收方应该尽快将这个报文段交给应用层。
RST 重建连接。
SYN 同步序号用来发起一个连接。
FIN 发端完成发送任务。

一个HTTP请求的包序列,
抓包的过滤器是“tcp port http”
(否则还会有3个握手包:
1.client (port:53449)--[SYN]-->Server(port:80)
2.Server(port:80)--[SYN,ACK]-->client (port:53449)
3.client (port:53449)--[ACK]-->Server(port:80)
)

ACK==对方Seq+1

 

 


1. client (port:53449)--页面请求-->Server(port:80)是基于应用级协议HTTP传送的
2. Server(port:80)--页面内容-->client (port:53449)是TCP传送的
3. 由于页面比较大,故Server端的页面会分解成多个包传过去。
而client端收到了会返回ACK,其中NO11中的ACK 的Ack:13140; 13140刚好是No10的[Next sequence number]和No12的[sequence number]
4.所有的页面片段传送完,HTTP协议会组装起来,弄成独立的包,即NO37. No37的sequence number是42460

 

TCP
对方发送数据,套接口变为可读且read返回大于0
对方发送FIN(对方进程终止),套接口就变成可读且read返回0(文件结束)
对方发送RST(对方主机崩溃并重启),套接口就变为可读且返回-1,errno则含有明确的错误码
我们对返回为0的关闭,对返回-1的关闭且视其情况是否记日志


close终止了数据传送的方向是读和写。由于TCP连接时全双工的,有很多时候我们要通知另一端我们已完成了数据发送,那一端仍有很多数据要发送也是如此。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值