#networking #gamedev #bevy #message-sent

aeronet_wt_core

为 aeronet 的 WebTransport 实现提供核心类型

2 个不稳定版本

0.3.0 2023 年 11 月 5 日
0.2.0 2023 年 10 月 23 日

#1969游戏开发

MIT/Apache

54KB
582

aeronet_wt_core

crates.io docs.rs

为 aeronet 的 WebTransport 实现提供核心类型和实用工具。

通道

此包定义了如 ChannelId 等类型来表示 WebTransport(以及 QUIC)使用的传输方法,用于传递您的应用程序的消息。通道可能包括数据报和双向流。

WebTransport 在内部使用 QUIC 协议,允许在不同情况下使用不同的数据传输方法,以速度为代价来权衡可靠性和顺序。请参阅变体文档以了解每种方法的描述。

不同的方法可能提供以下保证:

  • 可靠性 - 确保消息到达另一端
  • 顺序 - 确保消息以发送的顺序接收
  • 头部阻塞 - 一些消息可能在没有接收到先发送的消息之前不会收到

QUIC 和 WebTransport 也支持单向流,但是实现这些会使 API 表面变得非常复杂,双向流(ChannelKind::Stream)通常是更好的选择。

依赖关系

~0.4–1MB
~21K SLoC