数据包重组

是什么

网络协议通常需要传输自身完整的大块数据,比如在传输文件时。底层协议可能无法处理数据块大小(例如网络数据包大小的限制),或者是基于流的协议,比如TCP,它根本不知道数据块。

在这种情况下,网络协议必须自己处理块边界,并且(如果需要的话还要)将数据分散到多个数据包上。显然,它还需要一种机制来确定接收端的边界。

wireshark将这种机制叫做数据报重组,尽管特定的协议规范可能对此使用不同的术语(例如,去分段、碎片整理等)。

wireshark是如何处理的

对于wireshark知道的一些网络协议,实现了一种机制来查找、解码和显示这些数据块。wireshark将尝试查找此区块的相应数据包,并在“数据包字节”窗格中将组合数据显示为附加页面

重组可能发生在多个协议层,因此“数据包字节”窗格中可能会出现多个选项卡。(注意您将在块的最后一个包中找到重新组合的数据。)

比如,在HTTP GET响应中,返回请求的数据(比如HTML页面)。wireshark会在“packet bytes(数据包字节)”窗格的新标签“uncompressed entity body(未压缩实体体)”中显示十六进制转储数据。

默认情况下,重新组装在首选项中是启用的,但可以在相关协议的首选项中禁用。启用或禁用协议的重新组装设置通常需要两件事:

  • 低级协议(如TCP)必须支持重新组装。通常可以通过协议首选项启用或禁用这种重新组合。
  • 更高层的协议(例如HTTP)必须使用重组机制来组装碎片化的协议数据。这通常也可以通过协议首选项来启用或禁用。

高级协议设置的工具提示将通知您是否还必须考虑低级别协议设置。

TCP重组

HTTP或者TLS扥协议可能跨越多个TCP段。TCP协议首选项“Allow subdissector to reassemble TCP streams(允许重新组装TCP流)”默认启用,使得wireshark能够收集TCP段的连续序列并将其移交给更高级别的协议(比如,重建完整的HTTP消息)。在数据包列表中,除了最后一个数据段之外,所有数据段都将标记为【重组的PUD的TCP数据段】

如果您只关心TCP序列号分析,请禁用此首选项以减少内存和处理开销。但请记住,较高级别的协议可能被错误的分解。比如,HTTP消息显示“Continuation”,TLS记录显示“Ignored Unknown Record”。如果在TCP连接已启用或者TCP段丢失或者传输顺序不正确时启动捕获,也可以观察到这样的结果。

要重新组装无序的TCP段,除了之前的首选项之外,还必须启用TCP协议首选项“重新组装无序段”(当前默认禁用)。如果按顺序接收所有数据包,则此选项将不起作用。否则(如果在顺序处理数据包捕获时遇到丢失的段),则假定新的和丢失的段属于同一PDU。注意事项:

  • 丢失的数据包被认为是无序接收或稍后重新传输的。应用程序通常会重新传输数据段,直到这些数据段被确认,但是如果数据包捕获丢弃了数据包,那么Wireshark将无法构建TCP流。在这种情况下,您可以尝试禁用此首选项,希望对每个TCP段进行部分解剖,而不是只看到“[TCP segment of a reassembled PDU]”。
  • 在监控模式(ieee802.11)下进行捕获时,由于信号接收问题,数据包更可能丢失。在这种情况下,建议禁用该选项。
  • 如果新的和丢失的片段实际上是不同PDU的一部分,那么当前的处理将被延迟,直到没有更多的片段丢失,即使丢失的片段的开始部分完成了一个PDU。例如,假设有6个segment组成两个PDU ABC和DEF,当接收到作为ABECDF的PDU时,应用程序可以开始处理第一个收到ABEC的PDU。然而,Wireshark也需要接收丢失的段D。这个问题将在将来解决。
  • 在图形用户界面和两次解剖过程中(tshark -2),上一个场景将在最后一个段的数据包中显示两个PDU(F)ratherthan在第一个包中显示它,该包具有最后丢失的aPDU段。这一问题将在今后得到解决。
  • 启用时,诸如SMB“从请求开始的时间”等字段(smb.time)如果请求遵循其他无序段(此反射应用程序行为),则可能会更糟。但是,如果发生前一个场景,则请求的时间基于接收到所有缺失片段的帧。

不管这两个与重组相关的首选项的设置如何,您都可以使用“Follow TCP Stream”选项以预期的顺序显示段。

wireshark:包重组相关推荐

  1. FTP协议中的登录 上传 下载 新建目录 删除目录 的wireshark包分析(一文看完TCP包分析,附源文件,ppt,操作视频)

    ​​​​​​​目录 一原理 二.FTP登录 三.FTP下载 四.FTP上传 五.FTP新建目录 六.FTP删除目录 一原理 前言:TCP/IP四层模型和OSI模型对照,以及FTP在模型中的位置. • ...

  2. python-pcapng wireshark 包解析

    目录 背景 环境配置 包处理 微信公众号 背景 Ubuntu上写程序, UDP发给MCU, 长度51字节, 10ms/帧, MCU如果100ms内收不到, 就报出UDP Lost错误. 同事甩给我这个 ...

  3. linux下网络包分析工具下载,Wireshark下载-网络封包分析工具 v3.2.6 官方版 - 下载吧...

    Wireshark(前称Ethereal)是免费的网络协议检测程序,支持Unix,Windows.让您经由程序抓取运行的网站的相关资讯,包括每一封包流向及其内容.资讯可依操作系统语系看出,方便查看.监 ...

  4. wireshark官方文档第 9 章数据包解析

    第 9 章数据包解析 9.1. 数据包解析的工作原理 对于一个已封装好的协议包,每个解析器(dissector)对其负责的一部分协议进行解码,然后将解码过程交给后续的解析器. 每个解析都从帧(Fram ...

  5. Wireshark网络抓包之抓取聊天网络数据包

    一.Wireshark 1. Wireshark简介 Wireshark(前称Ethereal)是一个网络封包分析软件.网络封包分析软件的功能是截取网络封包,并尽可能显示出最为详细的网络封包资料.Wi ...

  6. 计算机网络wireshark抓包实验

    这里写目录标题 简介 实验操作 总结 简介 Wireshark(前称Ethereal)是一个网络封包分析软件.网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料.Wiresha ...

  7. 使用wireshark没有抓到websocket包

    最近项目人员遇到问题,需要抓websocket包进行排查,但是他们将排抓好的包给我后,我发现里面没有wireshark包. 又让研发人员给我抓了一个还是这样,我取看了下他如何抓包,然后恍然大悟. 他是 ...

  8. Lwip IP包分片重组

    1. 开发环境  操作系统:SylixOS  编程环境:RealEvo-IDE3.1  硬件平台:AT9x25开发板 2. 技术实现 SylixOS系统使用的网络协议栈是Lwip协议栈.Lwip ...

  9. 手机数据抓包入门教程

    手机数据抓包入门教程 试读地址:http://pan.baidu.com/s/1hqf9N9a 介绍:本教程从专业的角度讲解手机抓包的各种方式,同时也对常见的UDP.TCP通信模式详细讲解.最后针对H ...

  10. Teardrop攻击--伪造虚假的IP数据包发送并抓取及完成简易静态网页

    目录 Teardrop攻击--伪造虚假的IP数据包发送并抓取 一.相关介绍 1.IP协议 2.Teardrop攻击 二.编写Teardrop程序(伪造一个虚假地址的IP包) 三.参考链接 完成简易静态 ...

最新文章

  1. 限时福利:腾讯高级专家手把手教你打造 OCR 神器!
  2. MyBatis代码生成器(逆向工程)MBG使用
  3. 笔记-项目采购管理-复习要点
  4. 【已完结!】Java基础--学习笔记(零起点打开java世界的大门)--博客汇总表【附:视频、工程源码、资料、详细笔记】
  5. sql 多表多行模糊查询_从零开始学习SQL(五)多表查询
  6. MSP430杂谈--时钟资源UCS的配置
  7. Microsoft PetShop 3.0 设计与实现 分析报告―――数据访问层
  8. python类型提示模块包_Python checktypes包_程序模块 - PyPI - Python中文网
  9. vue ---- 将项目打包发布
  10. 打造个人品牌的重要性被高估了
  11. ESET病毒库更新提示0x210a报错
  12. js播放Amr音频_Mp3转Amr
  13. 山寨qq java_MTK手机QQjava版本山寨qq2009通用版
  14. Ubuntu 网络限速
  15. QT实现MP3播放器的歌词同步显示(卡拉OK功能)
  16. GNSS 周跳探测方法 之 TurboEdit
  17. python 拟合对数正态分布
  18. 综合布线 、 子网划分
  19. C语言 小明的调查作业
  20. matlab模糊工具箱使用,MATLAB中模糊神经网络工具箱的使用 - 全文

热门文章

  1. 谷歌大牛Jeff Dean单一作者撰文:深度学习研究的黄金十年
  2. POI读取doc,docx文档内容
  3. 3D打印了这个杜邦线理线神器,从此桌面再也不乱了
  4. 笔记本或台式机进入BIOS的快捷键
  5. 卡方检验的统计量推导_如何通俗的理解A / B测试与卡方检验
  6. php获取网页内指定内容,PHP中获取某个网页或文件内容的方法
  7. 如何成功将qlv格式转换成mp4,方法免费简单好用
  8. 小程序微信支付errcode:40163问题
  9. 乐玩插件和大漠插件哪个好_2019年都用过哪些Chrome插件?分享30个好用的插件,提升上网体验...
  10. idea 光标 快捷键_idea 快捷键汇总