#srt #secure #reliable #transport #ready #reference #github

bin+lib secure-reliable-transport

Rust 中的 SRT 实现

1 个不稳定版本

0.2.1 2020 年 8 月 19 日

#18#srt

Apache-2.0 协议

255KB
5.5K SLoC

srt-rs

codecov

操作系统 状态
Linux Linux Build Status
macOS macOS Build Status
Windows Windows Build Status

注意:这还不是生产就绪。

纯 Rust 实现 SRT(安全可靠传输),不使用不安全代码。

参考实现可在 https://github.com/haivision/srt 找到

特性

  • 快速(堆分配很少,使用异步 IO)
  • 提供 Rust 的完整安全性保证

工作正常

  • 监听服务器连接
  • 客户端(连接)连接
  • rendezvous 连接
  • 接收
  • 发送
  • 特殊 SRT 数据包(部分)
  • 实际的 SRT(TSBPD)
  • 时间戳漂移恢复
  • 加密
  • 双向

线程效率

SRT 的参考实现需要每个发送者 3 个线程,每个接收者 5 个线程。

使用 srt-rs,您可以使用 tokio 的未来调度将任意数量的连接分配到任意数量的线程(通常是您拥有的核心数那么多),这应该可以处理更多的连接。

依赖关系

~7.5MB
~135K SLoC