第十章 版本管理

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 不需要同時升級——只要版本差距在一個主要版本以內,雙方就能正常通訊。