インターネットの裏側では、私たちの目には見えない多くの技術が動いています。その中で、通信の安全性や効率性を支えているのが「取り決め」、すなわちプロトコルです。この記事では、認証・認可・課金(AAA)を扱う代表的なプロトコルの一つであるDiameter(ダイアメータ)プロトコルについて、基礎から実務での捉え方までを、できるだけ分かりやすく整理します。

「Diameterプロトコル」という言葉を聞いたことはあっても、何に使われ、RADIUSと何が違い、どのような場面で重要になるのかが曖昧なまま、という方も多いかもしれません。本稿では、Diameterの基本概念やメッセージ構造(AVP)、ネットワーク上での役割、さらにモバイル網における代表的なユースケースまで、理解の軸が残る形で解説します。
企業ネットワークでもモバイル網でも、「誰が」「何に」アクセスできるのか、そして「どれだけ利用したのか」を正しく扱うことは、セキュリティと運用の両面で欠かせません。Diameterは、こうしたAAA情報をネットワーク内で交換するための標準的な枠組み(ベースプロトコル)として設計され、RADIUSで指摘されてきた課題を踏まえた拡張性や堅牢性を備えています。
プロトコルとは、機器同士が通信する際の「言語」や「作法」を指します。たとえば「この順番で送る」「ここが識別子」「エラー時はこの形式で返す」といった取り決めがなければ、相手は受け取ったデータを正しく解釈できません。Diameterもその一種で、特に認証(Authentication)・認可(Authorization)・課金/記録(Accounting)に関する情報をやり取りするための土台となるプロトコルです。
Diameterは、AAA用途で広く使われてきたRADIUSを発展させる形で標準化されました。現在のベースプロトコルはRFC 6733として規定されており、旧来のRFC 3588およびRFC 5719を置き換える位置づけにあります。
Diameterは、ネットワーク内でAAA情報を交換するためのメッセージ指向プロトコルです。固定的な属性セットに縛られず、後述するAVP(Attribute-Value Pair)を積み上げることで、用途(アプリケーション)に応じた柔軟な拡張が可能になっています。
なお「Diameter(直径)」という名称は、RADIUS(半径)の“倍=直径”という通説に由来するとされます。これは厳密な技術仕様というよりも、後継プロトコルであることを示す意図を込めたネーミングと捉えるのが自然でしょう。
Diameterの中心となる要素がAVP(Attribute-Value Pair)です。メッセージは「ヘッダ+AVPの集合」で構成され、ユーザー名、セッション情報、サービス種別、課金情報など、やり取りしたい情報をAVPとして格納します。新しい用途が追加されても、必要なAVPを定義すれば対応できるため、拡張しやすい設計になっています。
実務的には、「Diameterは決まったフォームで情報を投げるのではなく、必要な部品(AVP)を組み合わせてメッセージを構成する」と考えるとイメージしやすいでしょう。
Diameterでは「ピア(Peer)」という考え方が重要になります。RADIUSのような「クライアント→サーバ」という単純な構図だけでなく、ネットワーク内の複数ノードが相互に接続し、役割分担しながらメッセージを中継・処理します。RelayやProxy、Redirectといった役割がその例です。
また、Diameterはセッションの管理や、相手ノードの生存確認といった仕組みも含め、運用を前提とした設計がされています。そのため、大規模ネットワークでの冗長化やルーティング設計と相性が良い点が特徴です。
Diameterでは、ベースプロトコルに加えて用途別に「Diameterアプリケーション」が定義されます。コマンドやAVPを追加する形で仕様を拡張できるため、通信サービスの要件が変わっても追従しやすくなっています。
Diameterは、伝送路としてTCPやSCTPを利用し、通信路の保護にはTLSやIPsecを要件に応じて選択するという考え方が整理されています。IANAでは「diameter」(3868/TCP・3868/SCTP)が登録されており、TLS利用を前提とした「diameters」(5868/TCP・5868/SCTP)も定義されています。
ここで押さえておきたいのは、Diameterはユーザーデータを高速に転送するためのプロトコルではないという点です。あくまで制御・認証・課金といった制御プレーンで重要な役割を担います。速度を語る場合も、「通信そのものを高速化する」ではなく、「認証や課金の判断を大規模に処理できる」「冗長構成やローミングを前提に設計できる」といった観点で捉えると誤解が生じにくくなります。
Diameterは、特にモバイルネットワークでの利用が進んできたプロトコルとして知られています。4G/LTEのコアネットワーク(EPC)では、加入者情報の参照やポリシー制御、課金といった場面でDiameterが使われることが多く、運用上の要所に登場します。
たとえば、加入者の認証・認可や、通信に対するルールの適用(どのAPNに接続させるか、どのような制限を設けるか)など、サービスとして成立させるための判断が必要な場面で、AAA情報交換の基盤として機能します。
Diameterが扱うAAAは、次の3つに整理できます。
AAAは単なるセキュリティ対策ではなく、サービス提供と運用を成立させるための中核です。Diameterは、この情報交換を標準化し、拡張可能な形で扱えるようにしています。
Diameterは、SIPやHTTPのようにアプリケーションデータを直接やり取りするための汎用プロトコルではありません。主にAAAの文脈を担いますが、実際のシステムでは、SIP(IMSなど)やHTTPベースのサービスと併存し、認証や課金の判断、加入者属性の参照といった裏側の処理で利用される構成が一般的です。
5Gのコアネットワークでは、サービスベースアーキテクチャ(SBA)が採用され、サービス間インタフェースはHTTP/2を前提に定義されています。そのため、「5GではDiameterがさらに中心になる」と単純に考えるのは適切ではありません。
一方で、移行期には4G/EPC(Diameter中心)との相互接続や段階的な移行が必要になります。実務では、併存や変換を含めた設計を前提に判断することが現実的です。
IoTの拡大やローミング、セキュリティ要件の高度化に伴い、AAA情報の重要性は今後も続きます。Diameterの価値は「何でもできる」ことではなく、AAAという目的に対して拡張可能で、運用を前提とした枠組みを提供する点にあります。
Diameterプロトコルは、認証・認可・アカウンティング(AAA)情報を交換するための標準的な枠組みであり、AVPによる高い拡張性と、大規模ネットワーク運用を前提とした設計思想を持っています。
一方で、Diameterは通信を高速化するためのプロトコルではなく、制御・認証・課金といった判断と記録を支える土台です。どのネットワークで、どのAAA要件を満たすために使うのかを明確にすることで、Diameterの価値と限界がより見えやすくなります。
5GではHTTP/2ベースのSBAが中心となるため、Diameterの役割は世代や接続条件によって変化します。4Gと5Gの併存や相互接続を含め、現実的な設計判断が重要です。
認証・認可・アカウンティング(AAA)情報をネットワーク内で交換するためのプロトコルです。
DiameterはRADIUSの後継として、拡張性(AVP)や大規模運用(中継・冗長)を前提に設計されています。
属性名と値の組で情報を表す部品で、DiameterメッセージはAVPの集合として構成されます。
いいえ。ユーザーデータを高速転送するのではなく、認証や課金など制御プレーンの情報交換を担います。
モバイルネットワークやブロードバンド網など、AAAや課金、ポリシー制御が重要な環境で利用されることが多いです。
TLSやIPsecなどを用いて通信路を保護する考え方が整理されています。
一般にTCPやSCTP上で運用されます。
必須とは限りません。5Gコアの中核はHTTP/2ベースのSBAで定義され、移行期には併存が起こりやすいです。
AVP設計や用途別仕様の選定、ルーティングや冗長構成、既存システムとの相互接続が論点になりやすいです。
ピア間の接続状態、ルーティング設定、必須AVPの欠落、セッションやタイムアウト、TLSやIPsecの設定を優先して確認します。