Files
Inbox/系统基座文件/2/2.4/2.4 外部目标数据分发协议 (External Target Data Distribution Protocol).md
2025-12-11 07:24:36 +08:00

29 lines
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
tags: []
aliases:
- 2.4 外部目标数据分发协议 (External Target Data Distribution Protocol)
date created: 星期一, 十一月 24日 2025, 11:40:08 晚上
date modified: 星期一, 十一月 24日 2025, 11:40:45 晚上
---
# 2.4 外部目标数据分发协议 (External Target Data Distribution Protocol)
- **覆盖范围**:定义核心处理服务器(通过 `DisplayController`)向外部独立显控终端分发高实时性业务数据(如航迹、点迹)的**网络通信契约**。鉴于显控端采用轻量级 2D 渲染,本协议不再包含针对 UI 交互的流控逻辑,而是专注于**全速、单向、无阻塞**的数据推送,仅在接收到系统级热保护指令时执行被动节流。
- **2.4.1 传输层拓扑与套接字模型 (Transport Layer Topology & Socket Model)**
- **核心指向**:定义数据传输的物理载体。采用 **UDP 单播 (Unicast)** 模式,由服务器作为发送方,向单一客户端推送。强制使用 **非阻塞 (Non-blocking) Socket** 配合 `epoll` 边缘触发模式。鉴于已移除 UI 抢占逻辑Socket 发送缓冲区 (`SO_SNDBUF`) 应配置为**最大可用值**(如 8MB+),以吸收网络抖动,确保在计算核心全速运转时网络层不成为瓶颈。
- **2.4.2 业务数据序列化规范 (Business Data Serialization Specification)**
- **核心指向**:定义跨网络二进制格式。继续强制使用 **Google Protobuf (v3)**。数据包根对象 `TrackDataBatch` 必须包含**全链路追踪 ID (`TraceID`)**。由于取消了任务切分数据包的生成频率将与雷达脉冲处理周期CPI严格同步不再出现因被抢占而导致的“微批次Micro-batch”碎片化数据包。
- **2.4.3 丢包检测与时序完整性机制 (Packet Loss Detection & Sequencing Integrity)**
- **核心指向**:定义数据一致性策略。协议头包含单调递增的 **`batch_sequence_id`**。客户端对于乱序包执行**立即丢弃**策略。由于后端不再因 UI 操作而暂停,客户端应预期收到**极其平稳**的数据流;任何超过 2 个周期的静默都应被客户端判定为“网络故障”而非“后端繁忙”,并触发重连告警。
- **2.4.4 热节流响应与流量整形 (Thermal Throttling Response & Traffic Shaping)**
- **核心指向****(基于 ECN 修正)** 定义在系统过热时的降级行为。当 `DisplayController` 收到 `SetComputeThrottleEvent`(热保护指令)时,必须在网络发送层执行**主动丢包**或**发送间隔插入Gap Insertion**,以减少网卡中断和总线功耗。例如,在 `Level 2` 节流状态下仅发送关键航迹数据Confirmed Tracks丢弃所有点迹Plots和调试数据从而降低系统整体热负荷。
- **2.4.5 端到端延迟遥测 (End-to-End Latency Telemetry)**
- **核心指向**:定义性能监控闭环。数据包必须携带 **“数据生成时间戳”**。客户端计算 **Glass-to-Glass Latency** 并回传。此指标现在主要用于监控网络链路质量和散热系统的有效性(即观察热节流是否导致了延迟显著增加),而非用于调节 UI 渲染优先级。
---
**变更说明 (基于 ECN-2025-001)**
1. **移除**:移除了所有关于“为了 UI 响应性而暂停数据发送”的描述。
2. **新增****2.4.4 热节流响应**。这是新架构下唯一合法的“主动降速”场景。
3. **调整**:在 **2.4.1** 中强调了 Socket 缓冲区配置为“最大值”,因为不再需要担心缓冲区积压影响 UI 线程UI 线程已与计算/发送线程物理解耦且互不干扰)。