Select Language

IHEP分散式運算系統中Kerberos令牌實施方案

Analysis of Kerberos token-based authentication implementation in distributed high-energy physics computing systems at IHEP, including toolkit architecture and multi-experiment deployment.
computingpowercoin.net | PDF 大小:0.5 MB
評分: 4.5/5
你的評分
你已經為這份文件評分
PDF 文件封面 - IHEP 分散式運算系統中的 Kerberos 令牌實施

目錄

3+

支援嘅實驗

2-7

Token有效日數

4

Core Components

1. 引言

基於令牌嘅身份驗證方法喺高能物理研究嘅分散式計算系統中越嚟越普遍。全球大型強子對撞機計算網格(WLCG)已升級所有服務以支援WLCG令牌,反映出行業趨勢。喺中國科學院高能物理研究所(IHEP),Kerberos令牌已成為本地計算集群嘅主要身份驗證機制,並正擴展至分散式計算環境。

2. 背景與動機

高能物理研究所(IHEP)正開發分散式計算平台以整合多個中國研究站點。然而,IHEP多個長期運作嘅實驗(尤其係BES實驗)與本地集群環境(包括數據庫系統、儲存服務同計算資源)緊密耦合。為應對呢個挑戰,IHEP實施咗「集群擴展」方案,將本地集群能力無縫延伸至分散式計算環境,令BES作業能夠以最小干擾遷移至遠程站點。

3. 技術挑戰

Kerberos令牌實施的主要挑戰在於管理分散式環境中的令牌生命週期。IHEP的Kerberos令牌通常具有2天有效期及7天續期限制,必須在三個關鍵節點確保令牌續期:

  • 工作提交階段
  • 工作輪候時段
  • 工作執行階段

4. 系統架構

IHEP嘅Kerberos令牌生態系統由四個相互連接嘅組件構成,共同為分散式計算資源提供無縫認證。

4.1 Token Producer

當用戶登入提交節點時,權杖產生器會生成Kerberos權杖並將這些權杖發佈到權杖儲存庫。此組件負責處理具有適當有效期和續期參數的初始權杖創建。

4.2 Token Repository

此中央儲存系統會維護所有現時的令牌檔案,並設有更新服務,可定期延長令牌有效期,以防長時間運算工作期間出現過期情況。

4.3 Token Transfer

傳輸機制會安全地將token檔案從儲存庫轉移至分散式站點嘅工作節點,確保執行工作時所需嘅token能夠喺指定位置使用。

4.4 Token Client Engine

該組件會喺工作節點初始化token環境,並於作業執行期間管理token有效期續期,提供持續嘅身份驗證功能。

5. 實施細節

5.1 數學基礎

Kerberos 認證採用對稱密鑰加密技術及基於時間戳記的驗證機制。令牌有效期可以表示為:

$V(t) = \begin{cases} 1 & \text{if } t_{current} \leq t_{creation} + t_{valid} \\ 0 & \text{otherwise} \end{cases}$

其中 $t_{valid}$ 代表有效期(IHEP 通常設定為 2 天),在 $t_{creation} + t_{renew}$ 前允許續期(通常為 7 天)。

5.2 程式碼實現

令牌續期服務執行以下邏輯:

class TokenRenewalService:
    def renew_token_if_needed(self, token, current_time):
        """Renew token if approaching expiration"""
        if token.is_expiring_within(threshold=3600):  # 1 hour threshold
            if current_time <= token.created_time + token.renewal_period:
                new_token = self.kinit_renew(token.principal)
                self.repository.update(token.principal, new_token)
                return new_token
        return token
    
    def kinit_renew(self, principal):
        """Execute Kerberos renewal command"""
        import subprocess
        result = subprocess.run(['kinit', '-R', principal], 
                              capture_output=True, text=True)
        if result.returncode == 0:
            return self.extract_current_token(principal)
        else:
            raise TokenRenewalError(f"Failed to renew token: {result.stderr}")

6. 實驗結果

Kerberos令牌系統已成功部署於IHEP嘅分散式計算基礎架構。目前有三項主要實驗正採用此認證框架:

  • LHAASO (大型高海拔空氣簇射觀測站)
  • BES (北京譜儀實驗)
  • HERD (高能宇宙輻射探測)

這些實驗使用Kerberos令牌遠端存取分佈式站點中儲存於EOS及Lustre檔案系統的數據。該實施方案已證明能實現可靠認證,且因令牌過期導致的作業失敗率極低。

7. 分析與討論

Kerberos tokens 喺 IHEP 分佈式計算環境中嘅實施,代表咗高能物理研究驗證機制嘅重大進步。呢種方法解決咗跨站點安全嘅關鍵挑戰,同時保持與現有基礎設施嘅兼容性。同好多網格計算環境中使用嘅傳統基於證書驗證(根據 WLCG 技術報告記載)相比,基於 token 嘅方法提供更佳嘅易用性同減少管理開銷。

IHEP研究嘅技術貢獻在於一套管理分散式環境中整個令牌生命周期嘅綜合工具組。呢個架構同網絡服務中嘅OAuth 2.0令牌管理有相似之處,但係專門針對科學計算工作負載進行咗優化。系統自動續期令牌嘅能力解決咗Kerberos嘅根本缺陷——即其對密鑰分發中心(KDCs)持續網絡連接嘅依賴。

根據Zhu等人(2017)發表嘅原版CycleGAN論文,成功嘅領域適應需要跨環境嘅強健特徵表示。同樣地,IHEP嘅令牌系統實現咗跨異構計算站點嘅安全身份表示。Kerberos基於Needham-Schroeder協議變體嘅數學基礎,提供咗經實證嘅密碼學安全性,而其實踐則加入咗實用嘅分散式系統工程。

跨三大實驗嘅部署展示咗系統嘅可擴展性同可靠性。考慮到高能物理工作負載嘅計算強度(通常涉及跨數千個計算節點處理PB級數據),呢項成就尤其值得關注。IHEP嘅成功表明,類似基於令牌嘅方法可以惠及其他面臨分散式身份驗證挑戰嘅科學計算群體。

8. 未來應用

IHEP嘅Kerberos令牌框架有幾個極具發展潛力嘅未來方向:

  • 與國際網格聯盟互通:擴展與WLCG及其他國際科研網格嘅令牌互通性
  • 雲端整合: 為混合雲環境及商業雲端供應商調整權杖系統
  • 區塊鏈強化: 探索基於區塊鏈的權杖管理以提升可稽核性與去中心化程度
  • 機器學習工作負載:擴展對需要安全認證的分散式機器學習框架嘅支援
  • Quantum-Resistant Cryptography為令牌保安做好後量子密碼演算法嘅準備

9. 参考文献

  1. WLCG Technical Design Report, Worldwide LHC Computing Grid, 2021
  2. Neuman, B. C., & Ts'o, T. (1994). Kerberos: An Authentication Service for Computer Networks. IEEE Communications
  3. EOS Storage System Documentation, CERN, 2022
  4. XRootD Documentation, 2023
  5. LHAASO Collaboration. (2020). The Large High Altitude Air Shower Observatory
  6. BES III Collaboration. (2022). Beijing Spectrometer Experiment Technical Report
  7. HERD Collaboration. (2021). 高能量宇宙輻射探測任務概覽
  8. Lustre File System Documentation, 2023
  9. AFS Documentation, IBM, 2022
  10. XCache Documentation, 2023
  11. Zhu, J. Y., Park, T., Isola, P., & Efros, A. A. (2017). Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks. IEEE ICCV