H.323 はオーディオ,ビデオやその他のデータによる,IP ネットワークを含むパケット・ネットワークにおけるマルチメディア・リアルタイム通信に関する ITU-T の勧告 (標準) である. そのための要素,プロトコルおよび手続きを記述している. LAN から WAN までの様々なネットワークにおいて,オーディオだけ,オーディオとビデオ,オーディオとデータなど,様々なマルチメディア・データの組合せにおいて使用することができる.
1. H.323 の概要
H.323 の最初の版は 1996 年 10 月に出版されたが,その後 1998 年,1999 年,2000 年,2003 年にそれぞれ改訂され,現在の版は第 5 版である. H.323 第 5 版に関連するドキュメントとして次のものがある.
- Recommendation H.323: Packet-based multimedia communications systems, Infrastructure of audiovisual services -- Systems and terminal equipment for audiovisual services, ITU-T, 2003.
- Recommendation H.225.0: Call signalling protocols and media stream packetization for packet-based multimedia communication systems, Infrastructure of audiovisual services -- Systems and terminal equipment for audiovisual services, ITU-T, 2003.
- Recommendation H.245: LINE TRANSMISSION OF NON-TELEPHONE SIGNALS, CONTROL PROTOCOL FOR MULTIMEDIA COMMUNICATION -- Systems and terminal equipment for audiovisual services, ITU-T, 2002.
2. H.323 の要素とゾーン
H.323 においては次の 4 種類の要素 (component) が記述されている.
- (1) 端末
- 端末はメディア通信機能をもつ PC 等のデバイスである.
- (2) ゲートウェイ
- ゲートウェイは H.323 ネットワークと,それとはことなる種類のネットワークとを接続する.
- (3) ゲートキーパー
- ゲートキーパーは H.323 ネットワークを制御する頭脳にあたる. 必須機能ではないが,通常,端末を発見し,認証・認可し,帯域を管理し,アカウントや課金の管理をするなどの機能をもつ.
- (4) 多点制御ユニット (MCU -- multipoint control unit)
- 3 点以上で会議をする際に使用される. このとき,各端末は MCU と接続する.MCU は会議の資源を管理し,端末間の交渉をおこない,場合によってはメディア・ストリームを扱う. MCU はゲートウェイ,ゲートキーパーと同一のデバイス上に共存させることも可能である.
1 個のゲートキーパーによって制御されているこれら 4 要素のあつまりをゾーンと呼ぶ.
3. H.323 におけるプロトコルとコーデック
H.323 においては下記のようなプロトコルやコーデックを使用することが定められている.
- H.225 登録,許可,状態 (RAS -- registration, admission, and status)
- H.225 呼シグナリング
- H.245 制御シグナリング
- RTP (Real-time Transport Protocol)
- RTCP (Real-time Transport Control Protocol)
- オーディオ・コーデック G.711,G.729,G.723.1
- ビデオ・コーデック H.261,H.263
コーデックとはオーディオ,ビデオなどのデータ表現形式であり,H.323 においてはリアルタイム通信に適したコーデックが指定されている.
4. H.323 におけるセッション管理機能
ここでは,H.225,H.245 などによるセッション管理機能を,ユーザ,サービス等の登録・発見機能,セッション開始・終了機能,セッション開始時交渉機能,その他の機能に分けて述べる.
- (1) ユーザ,サービス等の登録・発見機能
- 端末は GRQ メッセージを送信してゲートキーパー発見機能 (gatekeeper discovery) を利用することによって静的または動的にゲートキーパーを発見する. 静的な発見においては,あらかじめ設定されたアドレスによってゲートキーパーを見つける. 動的な発見においては端末は GRQ メッセージをマルチキャストし,それを受信したゲートキーパーが端末に応答する. また,端末は特定のゲートキーパーへの端点登録 (endpoint registration) 機能によってそのゲートキーパーが属するゾーンに参加する. これは SIP でいえば REGISTER メッセージによって実現される登録機能に相当する. さらに,端末は端点位置 (endpoint location) 機能によってアドレスが決定 (発見) され,別名または E.164 アドレスが与えられる. これは SIP でいえば SIP URI からその場所を求める機能に相当する.
- (2) セッション開始・終了機能
-
セッション開始・終了などのシグナリングはゲートキーパーを経由して行うこともできる (gatekeeper-routed call signaling) し,通信相手に対して直接行う (direct call signaling) こともできる.
ゲートキーパーを経由する場合は,端点 (端末) とゲートキーパーとが RAS チャネルを通してメッセージを交換する.
ゲートキーパーはそのメッセージを他の端点や他のゲートキーパーにルーティングする.
直接のシグナリングはゲートキーパーが許可したときに可能になる.
ゲートキーパーを介したセッション開始のシーケンスを 図 1 に示す. ここで ==== は H.225 RAS によるメッセージングであり,---- は H.225 呼シグナリングによるメッセージングである. ARQ メッセージ (1) によって端末はゲートキーパーに登録し,ACF メッセージ (2) による許可を得てからセッション開始要求 SETUP (3) を相手に送信する. この例においては相手はまだゲートキーパーへの登録を行っていないので,一旦プロビジョナルな応答 CALL PROCESSING (4) を返してからゲートキーパーに登録 (5) を行い,許可 (6) を得てから接続が確立したことを示す ALERTING メッセージ (7) を端末に返し,さらに接続確立を確認する CONNECT メッセージ (8) を送信する.
次に,ゲートキーパーを介したセッションにおけるセッション終了のシーケンスを 図 2 に示す. ここで .... は H.245 によるメッセージングであり,---- は H.225 呼シグナリングによるメッセージングであり,==== は H.225 RAS によるメッセージングである. ここでは相手がまず EndSessionCommand メッセージ (11) を端末に送信している. すると端末は相手に EndSessionCommand メッセージ (12) を送信する. 相手はそれを受け取ると ReleaseComplete メッセージ (13) を送信する. その後,両者はそれぞれ DRQ メッセージ (14) をゲートキーパーに送信し,これに対してゲートキーパーはそれぞれに DCF メッセージ (15) で答える.ゲートキーパ | | | | ARQ (1) 登録 | | |=======================>| | | ACF (2) 許可 | | |<=======================| | | SETUP (3) | セッション開始要求 | |------------------------------------------------>| | CALL PROCESSING (4) | プロビジョナル応答 | |<------------------------------------------------| | | ARQ (5) 登録 | | |<=======================| | | ACF (6) 許可 | | |=======================>| | ALERTING (7) | 接続確立 | |<------------------------------------------------| | CONNECT (8) | | |<------------------------------------------------| | | |
図 1 ゲートキーパーを介したセッション開始シーケンスゲートキーパー | | | | EndSessionCommand (11) | | |<................................................| | EndSessionCommand (12) | | |................................................>| | ReleaseComplete (13) | | |<------------------------------------------------| | DRQ (14) | DRQ (14) | |=======================>|<=======================| | DCF (15) | DCF (15) | |<=======================|=======================>| | | |
図 2 ゲートキーパーを介したセッションのセッション終了シーケンス - (3) セッション開始時交渉機能
-
セッション開始後に端末の能力に関する情報交換 (capabilities exchange) を行うことができる.
これによって端末がどのようなメディア・ストリームを扱うことができるか等の情報を交換する.
また,端末は論理通信チャネルを確立するためのメッセージング (logical channel signaling) を行うことができる.
論理通信チャネルは 1 対 1 のこともあるが,多点会議などにおいては 1 対多の端点の間で確立される.
論理通信チャネルは片方向であり,双方向の通信のためには 2 チャンネル必要である.
これらの機能は SIP を使用する通信においてはおもに SDP によって実現される.
すなわち,H.323 においてはセッション開始後にこの交渉が行われるが,SIP においてはセッション開始時の INVITE 要求とそれに対する 200 OK 応答に含まれる SDP メッセージにおいて交渉が行われる.
セッション開始時交渉の例を 図3 に示す.ゲートキーパー | | | | TerminalCapabilitySet | (21) | |------------------------------------------------>| |TerminalCapabilitySetAck| (22) | |<------------------------------------------------| | TerminalCapabilitySet | (23) | |<------------------------------------------------| |TerminalCapabilitySetAck| (24) | |------------------------------------------------>| | OpenLogicalChannel | (25) | |------------------------------------------------>| | OpenLogicalChannelAck | (26) | |<------------------------------------------------| | OpenLogicalChannel | (27) | |<------------------------------------------------| | OpenLogicalChannelAck | (28) | |------------------------------------------------>| | | |
図3 セッション開始時交渉の例ここでは (21)~(24) において端末の能力に関する情報交換を行い,(25)~(28) において論理通信チャネルを確立している.
- (4) その他の機能
- 上記の機能のほかに H.323 においては通信許可の制御 (admission control) やゾーンへのアクセスを制限する機能や,帯域の制御などがある.