Telegram 資料中心架構與基礎設施之謎
Telegram 資料中心架構與基礎設施之謎
Telegram 的基礎設施是圍繞著地理分散的資料中心 (DCs) 系統所建構,負責處理使用者帳號、訊息路由以及媒體儲存。這種架構旨在將使用者數據分散到不同的司法管轄區,以增加單一權威機構獲取數據的難度,儘管這會導致終端使用者面臨不同的效能與透明度問題。
地理分布與使用者路由
Telegram 會根據註冊時的地理位置將使用者分配到特定的資料中心,這會直接影響應用程式的延遲與效能。連接到與目前位置物理距離較遠的 DC 的使用者,通常會遇到較慢的響應時間。
- DC2: 作為所有 MTProto 用戶端的主要連接點,也是俄羅斯與烏克蘭使用者的主要樞紐。在俄語技術社群中,「DC2 down」是一個常用來描述服務中斷的詞彙。
- DC5: 主要服務亞洲使用者,包括在韓國等地區註冊的使用者。部分使用者反映 DC5 的中斷與中國使用者的不滿情緒有關。
- Miami DC: 位於美國東海岸的使用者反映,當被分配到 Miami 資料中心時,響應速度非常快(「snappy fast」),這突顯了對於頻繁發送請求的應用程式而言,物理距離對延遲的重要性。
數據儲存與媒體處理
Telegram 將帳號元數據 (metadata) 與訊息的儲存,與大型媒體檔案的儲存分開,以優化頻寬與效能。
- 帳號數據: 儲存在管理使用者個人資料與訊息歷史紀錄的特定 DC 中。
- 媒體儲存: Telegram 使用兩個專門用於媒體的 DC。雖然其他 DC 也可以進行媒體傳輸,但這些傳輸的頻寬通常會受到限制,以優先考慮專用的媒體樞紐。
基礎設施安全與司法管轄策略
Telegram 官方聲稱,將使用者數據儲存在不同司法管轄區的不同伺服器上,會使當局獲取使用者資訊變得更加困難。然而,這種碎片化的做法已引發了大量的外部猜測與批評,針對基礎設施的實際安全性進行質疑。
司法管轄猜測
一些分析師指出,使用者在不同 DC 間的分布可能與「五眼聯盟」(Five Eyes) 情資聯盟或其他地緣政治邊界一致,這暗示著數據所有權可能會根據政治壓力或法律行動而轉移,例如 Telegram CEO 在法國被捕一事。
外部管理之指控
最近的報告指控 Telegram 的基礎設施是由同時也管理 FSB (俄羅斯聯邦安全局) 基礎設施的人員所管理,據稱是在 Telegram 員工不知情的情況下進行的。這些指控暗示了在數據路由與管理中可能存在後門或系統性漏洞。
技術實作與技術債
從開發的角度來看,Telegram 的 DC 架構被一些人視為重大的技術債。Telegram 並非使用現代化的「每位使用者 sticky master election」機制,而是依賴一套自定義且僵化的 DC 分配系統。這要求團隊中的每一位新開發人員都必須學習一套不同於全球內容傳遞標準業界實務的專有路由邏輯。
"這對我來說感覺像是大量的自定義代碼與技術債。每個新軟體開發人員可能都必須學習它。為什麼不採用每位使用者 sticky master election,而不需要特別的資料中心呢?"
識別您的資料中心
對於開發人員與進階使用者而言,可以使用 Telegram API 來識別帳號被分配到了哪個資料中心。具體來說,可以使用 help.getConfig 方法來獲取當前配置並確定與該帳號關聯的 DC。