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

相关推荐
叼烟扛炮3 小时前
Linux 学习笔记(四十一):TCP 并发演进——从单进程到多线程服务器
linux·运维·服务器·网络·笔记·学习·tcp/ip
叼烟扛炮4 小时前
Linux 学习笔记(四十四):HTTP 协议解析与极简 Web 服务器实战
linux·服务器·学习
叼烟扛炮4 小时前
Linux 学习笔记(四十三):网络编程进阶——自定义协议解决 TCP 粘包与守护进程
linux·开发语言·网络·笔记·tcp/ip
Escalating_xu4 小时前
【Linux 网络编程】DNS 与 ICMP:从域名解析到 ping、traceroute,把“网络通不通”问清楚
linux·网络·php
开开心心就好6 小时前
音频降噪剪辑工具,音量裁剪一键处理
运维·服务器·前端·spring·ocr·音视频·1024程序员节
一枕槐安4876 小时前
大模型限流、重试、超时处理:API 调用健壮性方案
linux·服务器·php·大模型api·指数退避·限流控制·超时预算
黑十6 小时前
PyTorch 报 “no CUDA GPUs are available“ 怎么办?3 步排查
服务器·网络·人工智能·pytorch·python
Ruiery8 小时前
Linux 6.6内核并发与同步(五):mutex 可睡眠锁
linux·运维·服务器
开开心心就好8 小时前
竖式除法出题工具,整除余数混合模式
运维·服务器·前端·javascript·ocr·perl·1024程序员节
updayday8549 小时前
客户附件不该发往旧邮箱,如何在发送前拦截 - Ping64 邮件安全管控
大数据·网络·数据库·安全·智能路由器