rtmp handshake
RTMP协议规定,播放一个流媒体有两个前提步骤:
第一步,建立一个网络连接(NetConnection); 第二步,建立一个网络流(NetStream)。
其中,网络连接代表服务器端应用程序和客户端之间基础的连通关系。网络流代表了发送多媒体数据的通道。服务器和客户端之间只能建立一个网络连接,但是基于该连接可以创建很多网络流。播放一个RTMP协议的流媒体需要经过以下几个步骤:握手,建立连接,建立流,播放。
RTMP连接都是以握手作为开始的。建立连接阶段用于建立客户端与服务器之间的“网络连接”;建立流阶段用于建立客户端与服务器之间的“网络流”;播放阶段用于传输视音频数据。
rtmp的握手过程
握手顺序
rtmp 连接tcp连接后,需要进行握手操作。
它包含三个固定大小的块:
客户端发送的三个块命名为 C0,C1,C2; 服务端发送的三个块命名为S0,S1,S2。
握手示意图:
+-------------+ +-------------+ | Client | TCP/IP Network | Server | +-------------+ | +-------------+ | | | Uninitialized | Uninitialized | C0 | | |------------------->| C0 | | |-------------------->| | C1 | | |------------------->| S0 | | |<--------------------| | | S1 | Version sent |<--------------------| | S0 | | |<-------------------| | | S1 | | |<-------------------| Version sent | | C1 | | |-------------

本文详细介绍了RTMP协议的握手过程,包括握手的顺序、握手包的结构及验证逻辑等内容。
最低0.47元/天 解锁文章
3799

被折叠的 条评论
为什么被折叠?



