tcp-learner 数据包分析 20240420

输入输出:

数据包分析:

learner和Adapter建立连接。

Learner让Adapter发送RST

Adapter没有从SUT抓到任何回复,于是向learner发送timeout

learner给adapter发送reset命令,让SUT重置。

这是第一次初始化,由于Adapter和SUT之间没有控制信道来传送消息,Adapter和SUT开放的5001端口建立连接。

连接建立后,SUT会监听一个端口,并把端口号告诉Adapter

Learner让Adapter发送PA数据包,SUT返回RST,Adapter把结果告诉learner

Learn让Adapter发送RST给SUT,SUT没有返回任何数据包,Adapter给Learner返回timeout,


Learner给Adapter发送reset,想要重置连接,并给出下一轮需要发送的消息RA。


Adapter给SUT发送reset指令,SUT重新监听一个端口,并把这个端口返回给Adapter

Adapter给SUT发送RA,SUT没有回复,于是Adapter给learner返回timeout

learner让Adapter给SUT发送R,没有收到SUT回复,Adapter给Learner回复RST。

下面一段类似:

  • learner发送reset
  • learner发送吓一条测试数据包FA
  • Adapter给SUT发送reset
  • SUT给Adapter回复端口
  • Adapter发送FA,获得RST
  • Adapter将RST告诉Learner
  • Learner让Adapter发送RST
  • Adapter发送RST,超时,Adapter给learner返回timeout
  • learner发送reset

重复上述过程

RST,timeout

重置

PUSH/ACK,RST

RST,timeout

重置

RST/ACK,timeout

RST,timeout

重置

FIN/ACK,RST

RST,timeout

重置

SYN/ACK,RST

RST,timeout

重置

PUSH/ACK,RST

ACK,RST

RST,timeout

重置

RST/ACK,timeout

ACK,RST

RST,timeout

重置

FIN/ACK,RST

ACK,RST

RST,timeout

重置

SYNACK,RST

ACK,RST

RST,timeout

ACK,RST

PUSH/ACK,RST

感觉不是很合理,为什么会多次出现xx/ACK?

具体的学习顺序是什么?

得去看一下Learner侧的代码

相关推荐
鹿鸣天涯29 分钟前
Xftp传输文件时,解决“无法显示远程文件夹”方法
运维·服务器·计算机
2501_913061341 小时前
网络原理知识
java·网络
unDl IONA1 小时前
服务器部署,用 nginx 部署后页面刷新 404 问题,宝塔面板修改(修改 nginx.conf 配置文件)
运维·服务器·nginx
Web极客码1 小时前
WordPress管理员角色详解及注意事项
运维·服务器·wordpress
CSCN新手听安2 小时前
【linux】高级IO,以ET模式运行的epoll版本的TCP服务器实现reactor反应堆
linux·运维·服务器·c++·高级io·epoll·reactor反应堆
Java后端的Ai之路2 小时前
Linux端口进程查找与终止教程
linux·运维·服务器
(Charon)4 小时前
【C++/Qt】C++/Qt 实现 TCP Server:支持启动监听、消息收发、日志保存
c++·qt·tcp/ip
奇妙之二进制4 小时前
zmq源码分析之own_t
服务器·网络
mounter6254 小时前
深度解析:Linux 内核为何要移除“直接映射” (Direct Map)?
linux·运维·服务器·security·linux kernel·direct mem map
带娃的IT创业者5 小时前
零停机迁移:如何将服务器成本从 $1432 降至 $233
运维·服务器·网络·成本优化·服务器迁移·零停机·hetzner