#packet #ham-radio #protocols #client-server #ax #low-bandwidth #25

minipac

一种针对业余无线电设计的报文无线电协议。在功能上与AX.25相似。

5个不稳定版本

0.3.1 2022年12月19日
0.3.0 2022年12月19日
0.2.0 2022年1月17日
0.1.2 2022年1月7日
0.1.1 2021年11月7日

#13 in #ham-radio

每月 29 次下载
用于 minitransfer

MIT 许可证

46KB
1.5K SLoC

Minipac

Minipac是一种客户端-服务器协议,旨在与低带宽报文无线电一起使用。

功能

  • 压缩

  • 错误检测

  • 高效的重发数据包

  • 数据包确认

数据传输

以下是数据传输的大致工作原理

  • 节点A发送一个数据开始数据包,表明将要发送的数据包数量(不包括这个数据包)以及第一块数据。
  • 节点B发送一个数据开始确认数据包,确认请求。如果节点A没有收到这个数据包,它将多次重发数据开始数据包,然后放弃。
  • 节点A连续快速发送所有剩余的数据包。
  • 节点B向节点A发送一个数据包ID列表。这些都是它缺失的数据包ID(在传输中丢失或校验和不匹配)。如果节点A没有收到这个数据包,它将重发最后一个数据包。
  • 节点A重发所需的数据包,以及一个具有最大ID的数据包,表示已完成。
  • 这会重复几次,直到所有数据包都已正确接收和解析。
  • 节点B发送一个没有ID的数据重传数据包,这告诉节点A它已成功接收所有内容。
  • 数据已传输。

与AX.25或AX.26不同,没有不断的来回发送,这极大地加快了最大传输速率。

依赖关系

~6–15MB
~168K SLoC