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侧的代码

相关推荐
AZ996ZA2 小时前
自学linux的第二十一天【DHCP 服务从入门到实战】
linux·运维·服务器·php
Web极客码2 小时前
WordPress博客关键词
服务器·wordpress·网站加速
roman_日积跬步-终至千里2 小时前
【Java并发】Java 线程池实战:警惕使用CompletableFuture.supplyAsync
java·开发语言·网络
神梦流3 小时前
GE 引擎的非标准数据流处理:稀疏张量与自定义算子在图优化中的语义保持
linux·运维·服务器
2的n次方_3 小时前
Runtime 内存管理深化:推理批处理下的内存复用与生命周期精细控制
c语言·网络·架构
郝学胜-神的一滴4 小时前
深入浅出:使用Linux系统函数构建高性能TCP服务器
linux·服务器·开发语言·网络·c++·tcp/ip·程序人生
天若有情6734 小时前
【自研实战】轻量级ASCII字符串加密算法:从设计到落地(防查岗神器版)
网络·c++·算法·安全·数据安全·加密
胖咕噜的稞达鸭4 小时前
网络基础:初识TCP/IP协议
网络·网络协议·tcp/ip
Doro再努力4 小时前
【Linux操作系统12】Git版本控制与GDB调试:从入门到实践
linux·运维·服务器·git·vim
全栈工程师修炼指南4 小时前
Nginx | stream content 阶段:UDP 协议四层反向代理浅析与实践
运维·网络·网络协议·nginx·udp