rtsp transport rtp/avp(/udp)和rtp/avp/tcp区别
2014-08-19 16:37
453 查看
在rtsp的setup命令中需要客户端确定是使用tcp传输还是建立udp传输,具体命令类似:
1.设定tcp传输方式:
RTSP里有一种模式是Interleaved Mode,是在信令的TCP通道上承载RTP/RTCP。主要是为了穿防火墙的,还能利用TCP的可靠性。
在RTP/RTCP上再加上一个Interleaved Channel头。一共是4bytes:
byte 1 : '$' 作为Interleaved channel开始的标志。
byte 2 : channel id。 在RTSP-SETUP消息中确定。一般来说0-video RTP;1-video RTCP ;2-AUDIO RTP;3 AUDIO-RTCP
byte 3-4: RTP包的长度。
interleaved,因为采用TCP方式传送,所以传送的RTP,RTCP包都在同一个链路上,为了区分,就像上面说的,interleaved中0表示是RTP的通道,1表示是RTCP的通道.体现在包上面就是在RTP,RTCP包上封装了一层interleaved
frame,格式如下:
Magic:0x24
Channel:0x01(表示RTCP)
Length:84
(以后添加具体格式)
2.设定udp传输方式:
两者的区别归纳如下:
1.使用udp传输需要为每一个连接设定本机的rtp和rtcp对应的两个端口用于rtp和rtcp的通讯,而tcp方式不需要
2.在收包的过程中,TCP流式和UDP包式的不同.
1.设定tcp传输方式:
RTSP里有一种模式是Interleaved Mode,是在信令的TCP通道上承载RTP/RTCP。主要是为了穿防火墙的,还能利用TCP的可靠性。
在RTP/RTCP上再加上一个Interleaved Channel头。一共是4bytes:
byte 1 : '$' 作为Interleaved channel开始的标志。
byte 2 : channel id。 在RTSP-SETUP消息中确定。一般来说0-video RTP;1-video RTCP ;2-AUDIO RTP;3 AUDIO-RTCP
byte 3-4: RTP包的长度。
interleaved,因为采用TCP方式传送,所以传送的RTP,RTCP包都在同一个链路上,为了区分,就像上面说的,interleaved中0表示是RTP的通道,1表示是RTCP的通道.体现在包上面就是在RTP,RTCP包上封装了一层interleaved
frame,格式如下:
Magic:0x24
Channel:0x01(表示RTCP)
Length:84
(以后添加具体格式)
2.设定udp传输方式:
两者的区别归纳如下:
1.使用udp传输需要为每一个连接设定本机的rtp和rtcp对应的两个端口用于rtp和rtcp的通讯,而tcp方式不需要
2.在收包的过程中,TCP流式和UDP包式的不同.
相关文章推荐
- rtsp transport rtp/avp(/udp)和rtp/avp/tcp区别
- UDP客户端调用connect的问题
- 黑马程序员——8.网络编程(网络模型、网络地址、传输协议(UDP、TCP/IP)、客户端和服务器端、URL)
- 网络中出现TCP、UDP粘包、分包的两点解决办法
- JavaSE第一百一十一讲:基于UDP的网络通信详解
- UDP议定书图像高速传输无损失程序
- 万兆网络UDP速率传输性能测试(发送端)
- unix网络编程之udp
- C# UDP编程(通过类UdpClient实现收发)
- TCP/IP详解学习笔记(6)-UDP协议
- UDP包的最大大小是多少?
- 浅谈UDP(数据包长度,收包能力,丢包及进程结构选择)
- TcpClient和UdpClient
- Linux网络通信(二)Socket编写TCP/UDP
- UDP示例
- 7.TCP和UDP的区别和应用场景
- tcp和udp多线程的epoll服务器+客户端源代码 - brucema的个人空间 - 开源中国社区
- 毕向东udp学习笔记2
- Python+Socket实现基于UDP协议的局域网广播功能示例
- 《TCP/IP协议详解:卷一》读书笔记---IP、UDP、TCP协议基础