关于视频流:RTSP/RTP 负载均衡。可能的?

RTSP/RTP load balancing. Possible?

我知道如何实现从少数服务器到一个客户端的 rtp 流(用于负载平衡)。

首先,客户端连接到rtsp服务器到554端口。

客户端发送 SETUP 命令,现在我们知道 rtp 将使用哪些端口。

1
2
3
SETUP rtsp://192.168.1.16/movie.mp4 RTSP/1.0
CSeq: 3
Transport: RTP/AVP;unicast;client_port=41760-41761

比玩家发送

1
PLAY rtsp://192.168.1.16/movie.mp4 RTSP/1.0

和服务器开始发送 RTP 数据包到这个端口用于 rtp。

如果 rtp 数据包通过 UDP 发送,我可以(从服务器端)将 RTP 从一台服务器流式传输到客户端 IP/端口,然后将客户端 IP/端口发送到第二台服务器,然后继续 RTP 流从第二台服务器到客户端等等开吗?

行吗?


只是几个快速的(绝不是全面的)要点:

  • 您的方法会破坏 RTP 和 RTCP:您将如何从时间(何时发送哪个数据包)和序列号angular同步不同服务器之间的数据包发送?
  • 您将中断 RTCP 报告,因为您现在有不同的数据包发送路径。您将如何处理 RTCP 报告?到两个服务器?到一台服务器?这都是非标准行为。如果您感兴趣,您可能会感兴趣的一件事是目前正在标准化的多路径 RTP。
  • 在每个用户的基础上执行负载平衡对我来说更有意义。第一个用户被重定向到 RTSP 服务器 1,用户编号 2 到 RTSP 服务器 2,等等。用户可以根据位置、服务器负载、服务器带宽等被重定向到适当的 RTSP 服务器。