画像情報特論 (11) - インターネット電話の実際 (2) • ITU-T H.323 と IETF SIP/SDP 2001.06.26 電子情報通信学科 甲藤二郎 E-Mail: [email protected] ITU-T H.323 (続き) H.323 のシステム制御プロトコル • Q.931、H.245、RAS 音声 ビデオ G.72X H.26X 制御 RTCP RAS (GK) データ Q.931 H.245 (呼接続) (能力交換) RTP IETFプロトコルを そのまま採用 UDP TCP IP (多重化) 各種ネットワーク T.120 システム制御の例 (1) • H.320、H.324 の場合 ISDN、移動体、PHS 発信局 Q.931 着信局 SS7 Q.931 呼接続 能力交換 (H.245) end-to-end マルチメディア通話 Q.931 SS7 呼解放 Q.931 システム制御の例 (2) • H.323 の場合 インターネット (1) Direct (2) GK routed ゲートキーパー Q.931 呼接続 RAS & Q.931 RAS & Q.931 能力交換 (H.245) 能力交換 (H.245) マルチメディア通話 マルチメディア通話 Q.931 呼解放 RAS & Q.931 RAS & Q.931 各制御、各メディアが各々のポート番号を使用 Q.931 • ISDNの呼制御メッセージ ISDN、移動体、PHS ISDNにおける呼接続・解放手順: 発信局 SETUP (呼設定) 着信局 IAM (アドレス) SETUP (呼設定) CALLPROC ALERT (呼出中) CONNECT (応答) ACM (アドレス完了) ANM (応答) ALERT (呼出中) 呼接続 CONNECT (応答) 通話 DISC (切断) REL (切断) DISC (切断) REL (解放) REL (解放) Q.931 SS7 Q.931 呼解放 Q.931 メッセージ 呼設定: SETUP (呼設定要求) ALERTING (呼出し中) CONNECT (応答) CALL PROCEEDING (呼処理中) PROGRESS (経過表示) 通話中: USER INFORMATION (ユーザ・ユーザ) 呼解放: DISCONNECT (切断) * H.323 では使用しない RELEASE (解放) * RELEASE COMPLETE (解放完了) その他: FACILITY (付加サービス: Q.932) STATUS (状態) ... メッセージの構成 共通ヘッダ (4 byte) メッセージタイプ (1 byte) 情報要素 Q.931メッセージの「情報要素」 BearerCapability: 情報転送能力 CalledPartyAddress: 着信者番号 CallingPartyAddress: 発信者番号 ISDNで使用される情報要素 H.323にとっては、ISDN端末 との「相互接続」のために必要 Channeldentification: 使用チャネルの指定 Display: 付加情報 (名前など) 情報要素の構成 Facility: 付加サービス HighLayerCompatibility: 上位レイヤの互換性 情報要素識別コード LowLayerCompatibility: 下位レイヤの互換性 情報要素長 NotificationIndicator: 呼の中断・再開 ProgressIndicator: 呼の設定状態 Signal: 呼出し音などの発生指示 情報要素の詳細 ... User-user: ユーザ・ユーザ情報 H.323独自拡張 (H323-UUIE) IE: Information Element H323-UUIE の使い方 • H.323 独自拡張メッセージ H323-UUIE メッセージの例: [基本] エイリアス (相手メールアドレス等) H323UUIE SETUP (呼設定) H245 アドレス (IPアドレス、ポート番号) 端末の種類 (端末, GK, GW, MCU) CONNECT (応答) 会議の目的 (create, join, invite) など 能力交換 ... [拡張] 通話 チャネルオープン (FastStart) 端末能力 (FastCap) REL COMP (解放) H323UUIE H.245 • H.32X シリーズ共通のシステム制御メッセージ H245 メッセージの例: 目的 名称 能力交換 TerminalCapabilitySet マスター・スレーブ決定 MasterSlaveDetermination 詳細 多重化能力 (RTP/RTCP 等) オーディオ符号化能力 ビデオ符号化能力 データ符号化能力 メディア毎のチャネルオープン 論理チャネルオープン OpenLogicalChannel 符号化タイプ (符号化能力に対応) 多重化パラメータ (多重化能力に対応) 論理チャネルクローズ 各種コマンド CloseLogicalChannel フロー制御、セッション終了、など Request / Response / Command / Indication H.245 手順の例 Q.931 呼接続 (ポート1720) TerminalCapSet TerminalCapSetAck 能力交換 MasterSlave H.245 MasterSlaveAck マスタ・スレーブ決定 OpenLogicalChannel OpenLogicalChannelAck RTP チャネル・オープン 通話 (RTP / RTCP) RAS • ゲートキーパー・端末間の交換メッセージ ゲートキーパーの目的: ドメイン管理 (ユーザ登録、アドミッション制御、帯域管理) ゲートキーパー探索 (GRQ / GCF / GRJ) Gatekeeper 端末の登録 (RRQ / RCF / RRJ) Registration 端末登録の解除 (URQ / UCF / URJ) Unregistration エイリアス名からのアドレス解決 (LRQ / LCF / LRJ) Location 帯域要求と接続許可 (ARQ / ACF / ARJ) Admission 帯域変更 (BRQ / BCF / BRJ) Bandwidth 通信の終了 (DRQ / DCF / DRJ) Disengage 通信ステータスの要求 (IRQ / IRR) Info RAS: Registration, Admission and Status RAS 手順の例 アドミッション制御の例: (1) 直接型 (direct-routed) 端末 ゲートキーパー 端末 ARQ ACF (2) 間接型 (GK-routed) 端末 ゲートキーパー 端末 ARQ ポート番号1719 SETUP ACF SETUP CALL PROC CALL PROC ポート番号1719 SETUP CALL PROC ARQ ARQ ACF ACF ALERTING ALERTING CONNECT ALERTING CONNECT CONNECT ASN.1 • H323-UUIE、H245、RAS の記述に使われる言語 ・ 計算機に依存しないプロトコルデータの表現手法 (プレゼンテーション層) ITU-T X.680 (ISO/IEC と ITU-T のジョイント規格) Abstract Syntax Notation One (抽象構文記法) ・ 符号化ルール ITU-T X.690 (BER: Basic Encoding Rule) ITU-T X.691 (PER: Packed Encoding Rule) H323-UUIE、H245、RAS バイナリ化 PER エンコード ASN.1 記述 ASN.1 記述の例 H245 メッセージより抜粋: VideoCapability ::= CHOICE (選択) { nonStandard NonStandardParameter, h261VideoCapability H261VideoCapability, h262VideoCapability H262VideoCapability, h263VideoCapability H263VideoCapability, is11172VideoCapabilityIS11172VideoCapability, ... genericVideoCapability GenericCapability 詳細定義 } IS11172VideoCapability { constrainedBitstream videoBitRate videoBufferSize pictureRate ... } ... ビデオ符号化能力 ::= SEQUENCE (系列) BOOLEAN, INTEGER (0..107341823) INTEGER (0..262143) INTEGER (0..15) OPTIONAL, OPTIONAL, OPTIONAL, MPEG1 ビデオ符号化能力 補足 FastConnect / FasterConnect 端末A Q.931 端末B SETUP CALL PROC 端末 B の FastStart 端末 A の FastStart * H245手順のスキップ H245メッセージ (OpenLogicalChannel) ALERTING CONNECT (ACKを兼ねる) FastConnect (H245 トンネリング): (H.245) RTP 必要ない場合は スキップ Q931メッセージにH245メッセージを 含めてしまい、H245手順を省略 FasterConnect: TCP を、UDP + タイムアウトに置換 H.323 勧告に関する補足 (1) H.323 勧告でも Q.931が使われる理由 H.323 端末 (インターネット端末) と ISDN 端末との相互接続を実現するため。 H.323 勧告のスタートは、既存の電話との相互接続の実現が目的。 (2) H.32X シリーズで共通して H.245 が使われる理由 異なる H.32X 端末間の相互接続を実現しやすくするため。 (3) H.323 で新たに RAS (ゲートキーパー) が必要とされた理由 インターネットのサーバ・クライアント・モデルの踏襲。インターネット QoS アー キテクチャとの親和性。 ITU勧告: 既存の勧告との相互接続性を重視する勧告 IETF SIP/SDP IETF 純正のプロトコル階層 • SIP、SDP 音声 ビデオ N.A. N.A. 制御 RTCP データ SIP / SDP (RFC 2543 / 2347) RTP UDP TCP IP (多重化) 各種ネットワーク N.A. SIP * Session Initiation Protocol ・ 呼制御プロトコル (サーバ・クライアント・モデル) SIP サーバ (プロキシ、登録、リダイレクト) ~ SIP クライアント (エージェント) HTTP を踏襲 (メッセージとレスポンス) メッセージ: INVITE INVITE メッセージ: セッション参加要求 ACK 確認応答 BYE 接続終了 OPTIONS SIPサーバへの問い合わせ REGISTER SIPサーバへの登録 CANCEL f t s c i v From (要求元) To (招待先) Subject (タイトル) コンテントタイプ (SDP) 呼ID番号 経路中の SIP サーバ + SDPによるセッション記述 登録の取り消し レスポンス: 1xx: 情報、2xx: 成功、3xx: リダイレクト、4xx: クライアントエラー、5xx: サーバエラー RFC2543 SDP * Session Description Protocol • セッション記述フォーマット SDP フォーマットの例: v= バージョン o= 作成者 s= セッション名 I= セッション情報 e= メールアドレス c= 接続アドレス (e.g. IN IP4 224.0.10.1/127) b= 帯域幅 t= 開始時刻 終了時刻 m= メディア情報 (e.g. audio 9999 RTP/AVP 0) a= 属性情報 (e.g. recvonly) b= 帯域幅 「プロトコル」となっているが、 実体は「記述フォーマット」 圧縮アルゴリズムとRTPの記述: [audio | video | application] [ポート番号] [転送プロトコル RTP/AVP] [ペイロードのタイプ] RFC2347 SIP/SDP の使い方 (1) 基本モード • Direct Q.931/H.245 の FastConnect と同様の手順 SDP INVITE (呼設定) 100 Trying 180 Ringing 対比: SIP/SDP 200 OK Q931/H245 ACK (確認応答) INVITE 100 Trying 180 Ringing 200 OK ACK ... BYE SETUP + H245 CALLPROC ALERT CONNECT + H245 H245 (OpenLogicalChannelAck) 通話 BYE 200 OK H245 + RELCOMP SDP SIP/SDP の使い方 (2) プロキシモード 端末A ① INVITE ⑤ OK ① INVITE ⑤ OK ネットワーク ① INVITE 事前に登録 ⑤ OK ② query 端末B ④ INVITE SIP 登録サーバ ⑤ OK ③ response SIP プロキシサーバ ACKは省略 SIP/SDP の使い方 (3) リダイレクトモード 端末A ① INVITE ⑤ INVITE ④ moved ⑥ OK 端末B ① INVITE ⑤ INVITE ④ moved ⑥ OK ⑥ OK ⑤ INVITE 移動先 ネットワーク ① INVITE 事前に登録 ④ moved ② query SIP 登録サーバ ③ response SIP リダイレクトサーバ ACKは省略 SIP/SDP と H.323 (1) • 制御メッセージ機能、サーバ機能の比較 SIP/SDP H.323 SIP メッセージ SIP レスポンス RAS Q.931 H.245 SDP 登録サーバ リダイレクトサーバ ゲートキーパ プロキシサーバ あまり変わらない SIP/SDP と H.323 (2) • メッセージ記述手段の比較 Q.931/H.245/RAS: PER 符号化によるバイナリ記述 SIP/SDP: テキスト記述 データサイズ 理解しやすさ 複雑性 機能 Q931/H245/RAS (ITU-T) ○ △ △ ○ SIP/SDP (IETF) △ ○ ○ △ 一長一短 SIP/SDP と H.323 (3) • 歴史的な違い H.323 Q.931 / H.245 RTP ISDN 電話との 相互接続 H.32X との 相互接続 H.332 H.248 (megaco) ? IETF SIP / SDP インターネット 上のAV実験 標準化とはこういうもの?
© Copyright 2024 ExpyDoc