librtmp分析(接收数据包处理)
RTMP详细分析(三次握手)
RTMP详细分析(Message 消息,Chunk分块)
librtmp分析(发送数据包处理)
rtmp协议中的message的接收涉及有message 组合多个chunk、相对时间戳计算绝对值。
分析一下librtmp库中的int RTMP_SendPacket(RTMP *r, RTMPPacket *packet, int queue)函数可以更好的理解。
目录
- 1、刚开始接收一个字节的判断Basic Header占用多少个字节,获取fmt、csid。
- 2、申请用来保存上一次Packet的Packet*空间和保存上次时间戳空间
- 3、判断这次Packet是否是RTMP_LARGE_HEADER_SIZE,就知道是否是绝对值。否则将上次的Packet复制过来,就是同一个消息了。
- 4、读取message header中的字段。
- 5、读扩展时间戳
- 6、申请消息体的空间
- 7、读取消息体
- 8、备份这次Packet,和判断这次Packet消息是否完整了(一个或多个Packet组成)计算时间戳。
1、刚开始接收一个字节的判断Basic Header占用多少个字节,获取fmt、csid。
2、申请用来保存上一次Packet的Packet*空间和保存上次时间戳空间
3、判断这次Packet是否是RTMP_LARGE_HEADER_SIZE,就知道是否是绝对值。否则将上次的Packet复制过来,就是同一个消息了。
4、读取message header中的字段。
5、读扩展时间戳
6、申请消息体的空间
7、读取消息体
8、备份这次Packet,和判断这次Packet消息是否完整了(一个或多个Packet组成)计算时间戳。
librtmp分析(接收数据包处理)相关推荐
- linux收发包内核进程名称,Linux内核IP Queue机制的分析(一)——用户态接收数据包...
序 笔者将会通过包括本文在内的三篇文章,对IP Queue机制从用户态的应用到内核态的模块程序设计进行分析.三篇文章的题目分别是: Linux内核IP Queue机制的分析(一)--用户态接收数据包 ...
- 数据包捕获计算机网络实训,计算机网络-使用网络协议分析器捕捉和分析协议数据包...
广州大学学生实验报告 开课学院及实验室:计算机科学与工程实验室2014年11月28日 一.实验目的 (1)熟悉ethereal的使用 (2)验证各种协议数据包格式 (3)学会捕捉并分析各种数据包. 二 ...
- 计算机网络与协议分析,计算机网络-使用网络协议分析器捕捉和分析协议数据包...
<计算机网络-使用网络协议分析器捕捉和分析协议数据包>由会员分享,可在线阅读,更多相关<计算机网络-使用网络协议分析器捕捉和分析协议数据包(10页珍藏版)>请在人人文库网上搜索 ...
- 计算机网络-实验三:使用网络协议分析器捕捉和分析协议数据包
一.实验目的 (1) 熟悉ethereal的使用 (2) 验证各种协议数据包格式 (3) 学会捕捉并分析各种数据包. 二.实验环境 安装了TCP/IP协议的Windows系统,包含实用的网络工具. 三 ...
- 关于DELLR710/R910(rhel5.3-5.5) Broadcom netxtreme 5709网卡间歇性的停止接收数据包的问题解决方案...
问题描述:rhel5.5系统在做压力测试时,因网络流量较大致使网卡间歇性的停止接收数据包的问题,经查是redhat系统自带网卡驱动有BUG,需要更新网卡驱动,以下为问题描述和驱动更新方法: Why d ...
- 【Java 网络编程】UDP 服务器 客户端 通信 ( DatagramSocket | DatagramPacket | UDP 发送数据包 | UDP 接收数据包 | 端口号分配使用机制 )
文章目录 I UDP 信息发送接收原理 II UDP 发送和接收端口相同 III UDP 发送信息代码示例 IV UDP 接收信息代码示例 V UDP 服务器端代码示例 VI UDP 客户端代码示例 ...
- Java抓包+分析网络数据包
Java抓包+分析网络数据包 本程序基于java语言,需安装winpcap和配置Jpcap.jar库文件(需要的可以评论留下邮箱),成功实现了对本主机网卡接口的显示和网络数据包的抓取,并调用函数对 ...
- WireShark利用telnet分析指定数据包信息
1.首先WireShark,点击文件-打开-添加给定的数据包 2.在绿色框里检索telnet协议 3.由于检索信息过多,我们任意右键一条检索信息,右键-追踪流-TCP流,即可显示telnet携带信息( ...
- iOS小技能:截获分析网络数据包( tcpdump 、Wireshark的原理和基本使用 、使用Charles联调测试)
文章目录 前言 I tcpdump 1.1 预备知识 1.2 截获分析网络数据包 1.3 tcpdump常用的一些命令参数 II Wireshark 2.1 原理 2.2 使用方法 2.3 封包详细信 ...
最新文章
- hash 数据类型的应用场景
- rocksdb原理_教你玩转MyRocks/RocksDB—STATISTICS与后台线程篇
- KAFKA 同步和异步消息的发送(开发实战)
- 关于如何在项目接口保证幂等性的一点思考
- android 跨进程点击方式总结
- scikit-learn机器学习常用算法原理及编程实战(五)
- 使用mybatis的resultMap进行复杂查询
- 大数据可视化的应用场景
- [OGRE]最小ogre程序的流程
- ZOJ 3429 Cube Simulation (思维题)
- c++按行读取txt文件中的内容,并按特定字符分割
- BAT54C那些事儿
- Alexa Voice Server 实现的 Android APK 聊天机器人
- Chrome插件开发练习 - 还未完成
- 使用VMware Workstation安装FusionCompute CNA和VRM
- CityEngine教程文档-01 基础教程
- 阿拉伯数字转大写金额(支持简体和繁体)
- php 2038年,PHP 处理大于2038年以后的日期
- 最小二乘拟合多项式(利用构造正交多项式的方法)C++
- 好好说话之ret2shellcode