使用 socat 在实时直播流中实现无延迟和高 fps 的端口转发

使用 socat 在实时直播流中实现无延迟和高 fps 的端口转发

我正在使用该命令socat从实时直播流端口转发连接。

TCP4-LISTEN:8080 TCP4:123.456.789.12:80

问题是它增加了延迟和低 fps,而没有端口转发的实时流可以完美地工作,没有延迟和高 fps。

  • 这可能是什么原因造成的?
  • 有没有办法修复此配置socat或者我应该使用其他方法?

答案1

我不是这方面的专家socat,但是在快速查看它的名称(SOcket CAT)之后,它似乎通过打开两个套接字并在用户空间中操作它们来实现。

正如 slm 所建议的,为什么不通过来配置它iptables

Iptables 是一个配置 netfilter 的用户空间应用程序。 Netfilter 代码嵌入在内核中。它可能会带来更好的性能,因为转发的数据包不需要从内核空间传递到用户空间,反之亦然。

资源

答案2

在防火墙中:

$ sudo firewall-cmd --zone=public --add-masquerade

$ sudo firewall-cmd --zone="public" \
   --add-forward-port=port=8080:proto=tcp:toport=80:toaddr=123.123.123.123

iptables参阅此 SF 问答,标题为:如何在同一网络中将端口从一个IP转发到另一个IP?

参考

相关内容