Diameter協議學習筆記一 協議介紹

2021-08-26 03:10:27 字數 1268 閱讀 8234

一、摘要:

diameter協議主要為應用程式提供認證、鑑權、計費框架,即aaa,並支援本地aaa和漫遊場景下的aaa。

二、介紹:

aaa協議、例如tacacs、radius起初是為了提供ppp及終端接入,隨著internet及新的接入技術的發展,包括無線、dsl、移動ip, 乙太網路由、網路訪問伺服器(nas)在複雜和密集性方面有所增強,這對aaa協議提出了新的要求。

例如,網路訪問對aaa 協議提出的要求總結有以下這些:

radius協議沒有定義failover機制,因此,failover的行為隨著程式的實現不同而各異,為了提供乙個明確定義的failover行為,diameter支援應用層的應答,並定義failover的西裝演算法和偶聯狀態機。

radius在定義了應用層的認證,但僅使用了響應包,radext定義了另外的認證,但僅要求在eap session中使用,且支援屬性隱藏。rfc3162為radius定義了ipsec,但對其支援並沒有做要求,diameter強制要求支援ipsec,tls的支援可選擇。

radius執行在udp上,且沒有定義重傳行為,所有,可靠性因實現不同而各異。diameter執行在可靠的傳輸層(tcp, sctp)上。

radius沒有明確地規定支援agent,包括proxies, redirects, relays。diameter明確地定義了**的行為。

radius中對於伺服器發起訊息的支援是可選的,這就使用一些如主動斷鏈、或者重新認證或重新鑑權等特性實現困難。伺服器發起訊息在diameter中強制要求支援。

radius沒有定義資料物件安全機制,結果,不受信任的**可能修改屬性或都包頭,並且不會被檢測出來,結合對能力協商機制的缺失,無法預期結果會發生什麼。diameter也沒有定義資料物件安全機制,但支援能力協商。

diameter使用的通用協議資料單元(pdu)與radius不同,但支援向前相容radius,所以兩種協議可以部署在同一網路中。

radius不支援錯誤訊息、能力協商、及表示屬性強制/非強制的標誌位。因此radius的客戶端和服務端不擔心對方的能力,它們可能不會成功地協商乙個相互接受的服務,或者在一些情況下,需要知道哪些服務對端已經實現,以上幾點diameter均支援。

radius要求人工配置服務端或客戶端的名稱或位址,相應地增加了秘密的共享,帶來管理和安全上的負擔。通過dns,diameter可以動態發現對端,並通過傳輸層安全來保證。

radius不提供對proxyr的明確支援,缺少可審核性、傳輸層安全,使得在漫遊場景下容易引發安全問題,diameter支援域內漫遊、訊息路由、可審核性、傳輸層安全特性,可提供可安全和可靠的漫遊。

Diameter協議格式符號的含義

含義 fixed 固定選項 required 需要出現的選項 optional 可選項 qualifier 星號的作用 rfc 3588中稱見rfc 2234 section 6.6,如果你真的查了rfc2234你就sb了,因為rfc2234根本沒有section 6.6 不過根據3588 sect...

CANopen協議學習筆記一

最近在學習canopen協議,遇到一些小知識點,查閱後作為補充,記錄在此,方便以後查詢,算是讀書筆記吧。一 canopen協議中sync功能和使用 在canopen網路中應用sync要注意以下幾點 1.sync並不是主節點必須的功能,不一定要和nmt放在同一節點上,實際網路應用中可以在網路中找乙個任...

HTTP協議學習筆記一

今天開始http協議的學習,書籍用的 http權威指南 事務 乙個http事務由一條 從客戶端發往伺服器的 請求命令和乙個 從伺服器發回客戶端的 響應結果組成,是通過http報文的格式化資料塊進行的 模型 http方法 get從伺服器向客戶端傳送命名資源 put將來自客戶端的資料儲存到乙個命名的伺服...