连飞协议
概述
FSD(Flight Simulator Daemon)协议是连飞网络的核心通信协议,采用基于 TCP 的文本通信方式,定义了客户端与服务器之间的数据交换格式。
协议特点
- 基于 TCP 的文本协议,便于调试和扩展
- 客户端-服务器架构(C/S)
- 支持实时位置更新(飞行员位置、航向、高度)
- 支持文本聊天(私人消息与广播消息)
- 支持飞行计划同步
指令格式
- 所有指令以
#或$前缀开头 - 以 CR+LF(
\r\n)作为指令结束符 - 指令字段之间以冒号(
:)分隔
主要指令
| 指令 | 方向 | 说明 |
|---|---|---|
#AA | C → S | 飞行员位置更新(含经纬度、高度、地速等) |
#AP | C → S | 提交或更新飞行计划 |
#SA | C → S | 管制员登录和席位设置 |
#TM | 双向 | 文本消息(可指定接收方) |
$DI | S → C | 服务器发送挑战信息(FSD9 认证) |
$CH | C → S | 客户端响应挑战码 |
$SA | S → C | 服务器确认认证通过 |
服务器实现
CWFLY 提供两种 FSD 服务器实现:
| 实现 | 语言 | 说明 |
|---|---|---|
| fsd-master | C++ | 原版 FSD 服务器,已完成安全审计和修复 |
| fsd-py | Python | Python 重写版本,带协议升级 v2 安全增强 |
