文件名称:RTP的TCP承载-RTSP协议讲义
文件大小:389KB
文件格式:PPT
更新时间:2024-05-16 04:20:08
RTSP RTP RTCP
RTP的TCP承载 使用基于TCP的RTP传输 一些防火墙设计和其他环境可能会迫使服务器交织插入RTSP方法和流数据。除非必要,否则应该避免这种交织,因为它使客户端和服务器的操作复杂化并强加了额外的负担。交织的二进制数据只在RTSP通过TCP承载时使用。 像RTP包这样的流数据被封装为这样的形式:以ASCII码的"$"符号(0x24)为封装标志,后面是一个单字节信道标识符,然后紧跟一个网络字节序的双字节二进制整数值,该整数表示所封装二进制数据的长度。再后面紧跟着没有CRLF,但包含上层协议头部的流数据。每个 $ 块包含且仅包含一个上层协议数据单元,例如,一个RTP包。 信道标识符在传输头部(Transport header)通过参数交织(interleaved)定义。 当选择RTP作为应用层传输协议,TCP连接上的RTCP消息也被服务器交织处理。默认把RTCP包放在比RTP信道高的第一个可用信道上。客户端会显式地在另一信道上请求RTCP包。这通过在传输头部(Transport header)的交织(interleaved)参数上给出两个信道来实现。 如果这种形式下有两个或更多流被交织,就需要RTCP。同时,在网络配置有要求时 ,这提供了用TCP控制连接来隧道式地传输RTP/RTCP包的便利方法,并在可能时用UDP传输它们。