rtsp协商成功以后就是rtp收流,又分为两种模式:rtp over rtsp(tcp)和rtp over udp。
1.rtsp over rtsp
这个现在一般都叫TCP,它的特点是rtsp服务端和客户端是共用一个tcp链接,也就是说rtsp协议报文、rtp包、rtcp数据都是通过这一个链接来交互的。如下:
2.rtp over UDP
这种模式,是每个协议单独一个socket链接。如下
2.1 形式1
rtsp协议是走的tcp链接。
rtp包走的是udp链接,服务端一个udp的socket作为rtp包的发送客户端模式,客户端的udp的socket有1个——是服务端模式,接受rtsp服务端发送的rtp数据包。
rtsp服务端的一个udp socket作为rtcp的链接,模式也是客户端模式,rtsp客户端的rtcp链接是1个socket,既可以接受rtcp报文,又可以回复响应rtcp报文。
2.2 形式2
rtsp协议是走的tcp链接。
rtp包走的是udp链接,服务端一个udp的socket作为rtp包的发送客户端模式,客户端的udp的socket有2个——一般一个是服务端模式,接受rtp数据包,另一个一般是不会创建的除非你想用RTSP客户端发送数据到服务端——但是rtsp客户端发送私有数据到rtsp服务端也可以通过上面的tcp链接,需要定制私有协议了。
rtsp服务端的一个udp socket作为rtcp的链接,模式也是客户端模式,rtsp客户端的rtcp链接是2个socket,一个是接受rtcp报文,另一个是响应rtcp报文。