0

我需要通过卫星发送序列化数据,这涉及将数据作为数据包发送,每个数据包的最大大小为 2kB。

是否有一种内置/简单的方法可以将带有 protobuf 的数据序列化为限制为 X 大小的数据包?然后在另一端重建它们?

4

1 回答 1

0

Protobuf 总是将消息序列化为一个字节数组,该数组长度与表示数据所需的长度一样长。

您最好的选择是将字节拆分为较低层的块,然后在另一端重新组装。

这些数据包很可能无法可靠地传递,因此您还需要一种机制来确认数据包、重新传输丢弃的数据包、拥塞控制等。这些都是 TCP 通常为您做的事情。如果我是你,我会寻找一个现有的 TCP 实现——或类似的东西——它可以位于你的卫星链路之上。

于 2016-07-08T22:12:55.403 回答