よくある質問・用語集

  • もっと調べる

Diameterとは

Diameterとは、RADIUSの後継となるAAA(Authentication, Authorization, Accounting)サービスを実装する認証プロトコルのひとつである。RADIUSには半径という意味がり、DiameterはRADIUSの後継となるため、半径の2倍という意味で、Diameter(直径)という名前がつけられた。Diameterは、RFC3588で定義されている。

RADIUSとの主な違いは以下である。

  • トランスポートのプロトコル
  • RADIUSでは、UDPを使用しているのに対し、DiameterではTCPやSCTPを使用しているため、より信頼性のある通信が可能となる。

  • トランスポートのセキュリティ
  • RADIUSでは、トランスポートのセキュリティに関して定義されていなかったが、Diameterでは、IPsecが必須となり、TLSがオプションで使用できる。そのため、Diameterの方がRADIUSと比べ、より信頼のある通信が可能である。

  • 同時接続数
  • Diameterでは、RADIUSで1オクテットであった「識別子」の領域が、4オクテットに拡張されている。そのため、同時接続数がRADIUSでは256だったが、Diameterでは40億以上と多くのユーザが同時に利用することができる。

  • AVPに収納できるデータ量
  • RADIUSで利用していたAVP(Attribute Value Pair)の情報の形式をDiameterでも利用している。RADIUSでは、1オクテットであった領域が、Diameterでは3オクテットまで拡張されているため、扱えるデータ量も大きくなっている。

  • 通信の向き
  • Diameterは、サーバとクライアントの双方向の通信が可能となっている。そのため、サーバ側からクライアント側へ要求を送ることができ、回線を切断するよう要求したり、ユーザの再承認を要求することが可能である。

  • エージェントのサポート
  • RADIUSでは、エージェントに関する定義がされていなかったが、Diameterでは、機能ごとに「リレー」、「プロキシ」、「リダイレクト」、「トランスレーション」の4種類のエージェントを明確に定義している。

  • フェイルオーバー
  • RADIUSクライアントがRADIUSサーバに接続する時、接続確認ができなかった時には次のサーバに接続確認を行う方法でRADIUS接続のフェイルオーバーを行っている。そのため、複数のサーバに接続ができない状態になっている場合、接続確認の回数が増えフェイルオーバーに時間がかかる可能性があった。Diameterでは、フェイルオーバーの仕組みがRFCで定義されている。接続先との通信障害が発生した場合、通信が正常終了するまで保留中としていたメッセージを他のエージェントに送信する機能があり、これにより効果的なフェイルオーバーが可能となっている。

  • ネゴシエーション
  • RADIUSでは、ネゴシエーションに関する定義がされていなかったが、Diameterでは、クライアントとサーバ間で機能ネゴシエーションが可能となった。ネゴシエーションでは、プロトコルのバージョン、実装しているセキュリティ機能などをすり合わせることが可能である。

LTEやスマートフォンの規格を策定している標準化団体3GPPでは、認証や通信制御の領域で、Diameterが標準仕様として規定されている。
将来、Diameterの認証プロトコルの利用が増えていくと予想される。

【カテゴリ】:認証  オープンソースソフトウェア  

  • もっと調べる

【Webセミナー】Rocket.Chatだけじゃない!OSSビジネスチャットの最新情報

日程: 12月19日(木)Webセミナー「BigBlueButton」を使用します。
内容: Rocket.Chatの機能制限でお困りの方も必見!ライセンスフリーで利用できるOSSのビジネスチャットを紹介します。
ご興味のあるかたはぜひご参加ください。

セミナー申込

関連用語

Diameterに関連するページ(事例など)

Diameterとは先頭へ