news 2026/1/2 11:17:57

为什么过滤 rtmpt 而不是 rtmp?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
为什么过滤 rtmpt 而不是 rtmp?

😄作者简介: 小曾同学.com,一个致力于测试开发的博主⛽️,主要职责:测试开发、CI/CD
如果文章知识点有错误的地方,还请大家指正,让我们一起学习,一起进步。
😊 座右铭:不想当开发的测试,不是一个好测试✌️。
如果感觉博主的文章还不错的话,还请点赞、收藏哦!👍

文章目录

  • 一 背景
  • 二 rtmpt
    • 2.1 含义
    • 2.2 工作原理
    • 2.3 数据包特征
  • 三 为什么过滤 rtmpt 而不是 rtmp?
    • 3.1 Wireshark 如何工作
  • 小结

一 背景

在 rtmp 推流时,有时需要通过wireshark工具抓包,而在过滤搜索中会搜索 rtmpt,那么rtmpt是什么含义,和 rtmp 又有什么关系?

二 rtmpt

2.1 含义

rtmpt 全称RTMP over HTTP Tunneling(Tunneling 中文隧道技术)是一种封装技术,是 RTMP 协议的一种传输方式,允许将原始的 RTMP 数据流嵌套在 HTTP 请求和响应中进行传输。核心目的是绕过防火墙或代理的限制。

2.2 工作原理

有些网络环境可能会阻止非标准端口的流量,比如 rtmp 默认的 1935 端口,但通常会允许 HTTP 端口(80)或 HTTPS(443)流量通过,而 RTMP 正是利用这一特点。客户端会与服务器建立一个 HTTP 连接,然后将原本要通过 TCP 端口 1935 发送的 RTMP 数据包作为 HTTP 请求的载荷(Payload) 发送出去。服务器端接收到这个 HTTP 请求后,会解封装出里面的 RTMP 数据包进行处理,并将响应再以 HTTP 响应的形式封装起来发回给客户端。

2.3 数据包特征

在 Wireshark 抓包时,在没有过滤的情况下外层是标准的 HTTP 协议,内层也就是 HTTP 载荷部分才是真实的 RTMP 二进制数据,Wireshark 能够智能地解析这种封装,并显示出 rtmpt 协议。

三 为什么过滤 rtmpt 而不是 rtmp?

如果过滤 RTMP, 窗口不会显示任何内容或者只会匹配那些最内层、真正的 RTMP 协议数据包,如果一个 RTMP 数据流是通过纯 TCP(端口 1935)传输的,过滤 rtmp 会抓到它们。但如果它是通过 HTTP 隧道(rtmpt)传输的,这些内层的 RTMP 数据包被外层的 HTTP 包裹着,直接过滤 rtmp 可能会错过建立隧道本身的初始握手和控制包,或者显示不完整。而过滤 rtmpt,则会显示所有的 RTMP 协议内容,会匹配所有被标识为“使用 HTTP 隧道传输”的 RTMP 流量。这包括了建立隧道的 HTTP 请求/响应以及隧道内的所有 RTMP 数据。它抓住了整个通信的“通道”。

这也涉及到 Wireshark 的解析和显示过滤器的逻辑。刚才说到,当流量通过 rtmp 传输时,网络上传输的实际是 HTTP 数据包,而 Wireshark 的协议解析器(Dissector) 非常强大。当它遇到一个 HTTP 数据包,并且其内容看起来像是 RTMP 流量时,它会进行“深度解析”。

3.1 Wireshark 如何工作

  1. 数据包首先被其识别为 http。

  2. 然后它检查 HTTP 的载荷(Payload),发现里面是 RTMP 数据。

  3. 它会在协议栈中额外添加一层 rtmpt 协议,来表示“这个 HTTP 载荷里封装了 RTMP”。这只是一个标签,用于告诉我们封装方式。

  4. 最后,它会继续解析载荷中最内层的实际 RTMP 数据,并为它打上 rtmp 协议的标签。

在 wireshark 过滤 rtmpt 后,点击一条数据,可以看到协议栈

Frame(物理层帧)Ethernet II(数据链路层)Internet Protocol Version4(网络层 IP)Transmission Control Protocol(传输层 TCP)Real Time Messaging Protocol<-实时消息协议 可以看到 RTMP 的 Header 和 Body

小结

在本篇文章中,了解到 RTMPT 是一种封装技术,是 RTMP 协议的一种传输方式,当抓包 RTMP 流时,过滤 RTMPT 展示的 RTMP 信息更加全面。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2025/12/29 20:05:45

Navicat x 达梦技术指引 | 启用和配置AI助手

近期&#xff0c;Navicat 宣布正式支持国产达梦数据库。Navicat 旗下全能工具 支持达梦用户的全方位管理开发需求&#xff0c;而轻量化免费的 则满足小型和独立开发者的基础需求。 Navicat Premium 自版本 17.3 开始支持达梦 DM8 或以上版本。它支持的系统有 Windows、Linux …

作者头像 李华
网站建设 2025/12/20 1:19:51

Transformer的注意力权重的理解

""" Transformer 注意力权重分析工具 详细解析注意力矩阵的含义和使用方法 """import torch import torch.nn as nn import numpy as np import math# # 简化的多头注意力&#xff08;用于演示&#xff09; # class SimpleMultiHeadAttention(…

作者头像 李华
网站建设 2025/12/30 19:31:36

解构 Codigger:从内核到无限生态的“进化阶梯”

当下开发工具市场繁杂又高度同质化&#xff0c;Codigger 却格外亮眼。它没有止步于单点工具的定位&#xff0c;而是成长为一个设计精巧、层层推进的技术有机体。从架构全景来看&#xff0c;它更像一套严谨的进化阶梯&#xff0c;六大核心层级彼此联动&#xff0c;共同构建出强悍…

作者头像 李华
网站建设 2025/12/28 1:42:04

基于Python的高考志愿报名推荐系统源码设计与文档

前言 在高考志愿填报精细化需求提升、传统填报模式存在 “数据维度单一、匹配精准度低、政策解读滞后、风险评估不足” 的痛点背景下&#xff0c;基于 Python 的高考志愿报名推荐系统构建具有重要的教育与实用价值&#xff1a;从数据处理层面&#xff0c;系统依托 Python 的 Pa…

作者头像 李华
网站建设 2025/12/23 21:14:10

飞桨PaddlePaddle入门与核心实践

飞桨PaddlePaddle入门与核心实践 在人工智能技术飞速发展的今天&#xff0c;深度学习早已不再是实验室里的神秘概念&#xff0c;而是真正走进了搜索引擎、推荐系统、语音助手、自动驾驶等我们每天都在使用的应用中。然而&#xff0c;面对TensorFlow、PyTorch、MindSpore、JAX等…

作者头像 李华
网站建设 2025/12/31 21:10:17

使用ZYNQ芯片和LVGL框架实现用户高刷新UI设计系列教程(第四十讲)

这一期讲解的控件是二维码&#xff0c;二维码是一种基于矩阵排列的二维条码技术&#xff0c;它以矩阵的形式存储数据&#xff0c;与传统的条形码相比&#xff0c;二维码可以存储更多的信息&#xff0c;并且能够处理数字、字母和汉字等多种数据类型。二维码由寻像图形、定界符、…

作者头像 李华