srt-tunnel 命令测试

 

 

Secure Reliable Transport (SRT) 是用来传输媒体文件的协议,项目见https://github.com/Haivision/srt

里面实现了一个srt-tunnel ,作用是将srt协议用作tcp协议的隧道,文档见于doc/srt-tunnel.md,本人对其进行了一点试用,现将其使用记录下来。

https://github.com/Haivision/srt/blob/39ea5262fa1e9fca928f030bdb599b56f613b5fd/docs/srt-tunnel.md

 

srt-tunnel 需要客户端和服务器端,架构图大意如下:

 <TCP client> --> <Tunnel: TCP->SRT> --> ...
            ....
          (long distance)
           ....
  --> <Tunnel: SRT->TCP> --> <TCP server>

srt-tunnel编译srt一起生成,默认位于/usr/local/bin/目录下

客户端 : 对外监听10086端口,将数据通过srt协议转发到177.77.77.77的10086端口

/usr/local/bin/srt-tunnel  tcp://0.0.0.0:10086  srt://177.77.77.77:10086

 

服务端命令(即177.77.77.77服务器上)

/usr/local/bin/srt-tunnel  srt://0.0.0.0:10086  tcp://127.0.0.1:1080

意思是将srtr接收到的信息转发到本机的1080端口上,1080端口运行socks5服务

 

连接客户端的10086端口,数据则转发到服务端的1080端口上。

通过实际测试发现:

1.srt-tunnel 程序运行在多个客户端连接时会出现

 newConnection: listen backlog=5 EXCEEDED
的错误,此程序是测试程序,功能不全

2.具体的速度非常不理想,SRT作为中间协议进行传输并无优势,甚至连普通TCP都不如。尚不清楚是srt-tunnel 程序的问题还是SRT协议的问题。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章