第十章 版本管理

10.1 版本号格式

DTP 使用语义化版本号,包含主版本号和次版本号:

{ major: number, minor: number }

每个 Logical_Frame 的帧头都包含协议版本号字段,标识该帧使用的协议版本。

10.2 版本兼容性规则

DTP_Engine 支持同时处理当前版本前一个主要版本的 Logical_Frame 格式。

接收帧版本处理方式
当前版本正常处理
前一个主要版本兼容处理(向后兼容)
更高版本发送版本不兼容通知
更低版本(超出兼容范围)发送版本不兼容通知

10.3 版本不兼容处理

当接收方收到帧头中协议版本号高于自身支持版本的 Logical_Frame 时:

  1. 不处理该帧
  2. 向发送方发送版本不兼容通知(VERSION_INCOMPATIBLE, 7001)
  3. 通知中包含自身支持的最高版本号

发送方收到版本不兼容通知后,可以:

  • 降级到接收方支持的版本重新发送
  • 或通知上层应用版本不匹配

10.4 协议演进策略

DTP 的版本管理确保协议在演进过程中保持向后兼容性:

  • 次版本号升级:新增字段或功能,不破坏现有帧格式的解析
  • 主版本号升级:可能改变帧格式,但保持对前一个主要版本的兼容

这意味着终端设备和 Fay 不需要同时升级——只要版本差距在一个主要版本以内,双方就能正常通信。