wireshark抓包ssl数据出现ignored unknown record的原因

文章目录


前言

使用下面这个例子来观察记录层数据大于TCP MSS时用wireshark抓包出现ignored unknown record的情况并分析原因。
c语言利用openssl实现简单客户端和服务端(观察记录层最大长度)


一、出现原因

TCP MSS = MTU - IP头 - TCP头,MTU一般为1500字节,IP头20字节,TCP头20字节,所以要保证IP不分包的情况下,一个TCP包最多携带1460字节的数据。所以一个16384字节的记录层数据要分成很多个TCP包进行传输,服务端收到后进行TCP重组,获得一个完整的记录层数据,然后ssl层对记录层数据进行解密。

一个记录层数据包分割成多个TCP报文的示意图如下:

一个记录层数据有完整的格式,wireshark能够通过type类型来判断该数据属于ssl的记录层。但是一个记录层数据分割后,后面的多段数据没有type字段,wireshark并不能通过分割后的数据来判断上层协议类型,只能将分割的数据包组装成一个完整的数据包,wireshark才能知道该数据包的上层协议类型。

二、wireshark抓包分析

Ignored Unknown Record

抓取分割后的TCP数据出现不能解析上层协议的情况,就出现Ignored Unknown Record。

wireshark知道该数据是ssl类型的数据,但是不能解析具体的协议类型。

通过wireshark可以将分割后的TCP数据包组装成一个完整的数据包,然后就能知道上层协议类型。

TCP segment of a reassembled PDU

多个TCP数据包组长完成后,wireshark能够解析得到该协议类型是记录层协议。TCP segment of a reassembled PDU,表示该数据是有多个TCP数据包组装而成。

可以看出一个记录层有3个TCP数据包组装而成,如果MTU为1500则有更多个TCP数据包组装而成。

总结

相关推荐
珠***格1 天前
双碳目标下:四可装置如何助力光伏消纳与碳数据上报
网络·人工智能·分布式·安全·边缘计算
mounter6251 天前
绕过主机:通过 Devmem TCP 运行 RDMA 应用
网络·网络协议·tcp/ip·rdma·devmem
我星期八休息1 天前
网络编程—网络层
开发语言·前端·网络·人工智能·智能路由器
科力锐品牌君1 天前
行业龙头|科力锐全链路防勒索 + 多中心容灾方案,构筑河南翔宇医疗业务安全闭环!
网络·数据库·分布式·安全·数据安全·备份
2401_868534781 天前
C语言与C++在基础语法上的区别
网络·网络协议
黄俊懿1 天前
【架构师从入门到进阶】第五章:DNS&CDN&网关优化思路——第三节:CDN扩展-多地址直连
网络·计算机网络·架构·系统架构·cdn·dns·架构设计
Dr.kangder1 天前
嵌入式总线设备解析——TTE总线应用与实践
开发语言·网络·算法·嵌入式·多任务·同步机制
数据知道1 天前
IDOR 不安全的直接对象引用:API 越权实战检测
java·开发语言·网络·安全·网络安全
WHS-_-20221 天前
基于网络感知自适应树与辅助路由加速地理分布式机器学习
网络·分布式·机器学习
果果燕1 天前
实习笔记(二)NFS 嵌套挂载问题完整复盘
linux·服务器·网络