SPECIFICATION
資料隧道協定(Data Tunnel Protocol,DTP)規範
版本:草案(Draft) 目標版本:2025-10-25 狀態:草案,等待評審 協定層:應用層
引言
本規範定義了資料隧道協定(Data Tunnel Protocol,簡稱 DTP)的線路格式(wire format)、狀態機、協商機制、加密要求、錯誤處理以及版本管理規則。DTP 是 iFay 生態系統中用於終端裝置與 Fay 之間雙向資料歸集與注入的應用層協定。
本規範是 DTP 的規範性文件(Normative Specification)。任何符合本規範的實作都應當能夠與其他符合實作互通。
關鍵字慣例
本文件中的關鍵字 必須(MUST)、不得(MUST NOT)、必需(REQUIRED)、應當(SHALL)、不應當(SHALL NOT)、應(SHOULD)、不應(SHOULD NOT)、推薦(RECOMMENDED)、可(MAY) 和 可選(OPTIONAL) 的解釋方式遵循 RFC 2119 與 RFC 8174 的定義,僅當它們以粗體形式出現時才具有規範性含義。
文件結構
本規範由 10 個章節組成:
| 章節 | 標題 | 範圍 |
|---|---|---|
| 第 1 章 | 概述與協定定位 | DTP 的角色、設計目標、與其他協定的關係、版本管理與相容性(§1.7,規範性) |
| 第 2 章 | 術語與定義 | 規範性術語定義 |
| 第 3 章 | 協定架構 | 協定分層、元件、狀態機 |
| 第 4 章 | 邏輯訊框結構 | 訊框標頭與負載的二進位格式 |
| 第 5 章 | 協商機制 | 約定的協商、調整與終止 |
| 第 6 章 | 資料傳輸 | 資料歸集與注入流程 |
| 第 7 章 | 安全與加密 | 端對端加密要求 |
| 第 8 章 | 可靠性保障 | 續傳、確認、會話管理 |
| 第 9 章 | 錯誤處理 | 錯誤碼與錯誤通知機制 |
| 第 10 章 | 版本管理 | 版本管理的操作機制與治理流程(權威策略見第 1 章 §1.7) |
一致性
宣告實作 DTP 的實體(以下簡稱「實作」)必須滿足以下一致性要求:
- 實作 必須 完整支援本規範定義的所有 必須(MUST) 規則。
- 實作 應 支援本規範定義的所有 應(SHOULD) 規則。如不支援,必須 在文件中明示偏離項。
- 實作 可 選擇是否支援 可(MAY) 規則。
- 實作 不得 引入與本規範衝突的擴展。任何擴展 必須 透過本規範定義的擴展機制(參見第 4 章自訂欄位、第 5 章約定參數擴展)實現。
規範性參考
- RFC 2119 — Key words for use in RFCs to Indicate Requirement Levels
- RFC 8174 — Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words
- RFC 4122 — A Universally Unique IDentifier (UUID) URN Namespace(用於 Fragment_ID、Agreement_ID、Session_ID)
- RFC 3339 — Date and Time on the Internet: Timestamps(UTC 時間戳記格式)
- CAP 規範 — 控制授權協定(Control Authorization Protocol),DTP 依賴 CAP 完成身分驗證與金鑰交換
相關文件
- DTP 藍圖文件(
docs/zh-TW/blueprint/):DTP 的非規範性介紹資料,提供動機、設計原理與範例 - DTP Schema(
schema/draft/schema.ts):DTP 的 TypeScript 型別定義參考實作
