画像情報特論 (12) - インターネット放送の実際 (1) • インターネット放送全般 • マルチキャスト放送 2001.07.03 電子情報通信学科 甲藤二郎 E-Mail: [email protected] インターネット放送全般 • システム構成 • ストリーミング手順 • メタファイル • ファイルフォーマット • RTSP (ストリーミング制御プロトコル) システム構成 (1) • 最もシンプルな構成 キャプチャ & 圧縮 & ストリーミング インターネット • 標準的な構成 インターネット放送局 キャプチャ & 圧縮 ストリーミング & WWW & ファイアウォール インターネット システム構成 (2) • 大規模対応の本格的なインターネット放送局 インターネット放送局 キャプチャ & 圧縮 WWWサーバ ファイアウォール インターネット ストリーム サーバ システム構成 (3) • よくある使い方 HTTP クリック インターネット ストリーミング WWWページ ストリーミングビューア ストリーミング手順 (1) • HTTP ストリーミングと専用プロトコルを用いたストリーミング HTTPストリーミング 方式 長所 専用プロトコルを用いたストリーミング (RTSP, MMS 等) HTTPサーバがすべて担当する方式 ストリーミング専用のサーバを用意する方式 手間がかからない (通常のHTTPサーバを 用意するだけ) ストリーミングに適したふくそう制御が実行 可能 (SureStream、インテリジェントストリ ーミング、など) ファイアウォールを超えられる (HTTPポー トは外部に開かれている場合が多い) ストリーミングに適したふくそう制御が実行 困難 (TCPのふくそう制御に依存) 短所 ライブ放送に適さない 条件 インテリジェントなビューア ライブ放送、マルチキャストに適している ファイアウォールを越えられない場合がある インテリジェントなサーバ ストリーミング手順 (2) • HTTP ストリーミング サーバ クライアント HTTP ① ファイル要求 Web ブラウザ ② メタファイル WWW サーバ ③ ビューアの起動 ④ ファイル要求 メタファイル ビューア ⑤ ストリーミング ストリーム ファイル すべてHTTPポート上のデータ転送 ダウンロードをストリーミングに見せかけている ストリーミング手順 (3) • 専用プロトコルを用いたストリーミング サーバ クライアント HTTP ① ファイル要求 WWW サーバ Web ブラウザ ② メタファイル メタファイル ③ ビューアの起動 ④ 制御 ライブ入力 ストリーム サーバ ビューア ⑤ ストリーミング ストリーム ファイル 制御: RTSP / MMS メディア: UDP、TCP、IP Multicast、... HTTP、制御プロトコル、メディアポート上のデータ転送 メタファイル (1) • WWW ブラウザからストリーミングビューアを起動する仕掛け HTTPサーバ HTTPクライアント GET sample.ram *.ram MIME タイプ MIME タイプ HTTP 200 OK Content-Type: audio/x-pn-realaudio ... sample.ram MIME タイプ MIME タイプ rtsp://rtsp_server/sample.rm メタファイル ①②の手順の詳細 ... ストリーミング ビューア MIME: Multipurpose Internet Mail Extensions encoding RealPlayer メタファイル (2) • メタファイルとプレゼンテーション記述 (1) クライアント 分離する場合 ... ① ファイル要求 rtsp://rtsp_server/sample.smi メタファイル Web ブラウザ ② メタファイル ③ ビューアの起動 ④ ファイル要求 rtsp://rtsp_server/sample.rm プレゼンテーション記述 ⑤ プレゼンテーション記述 ⑥ ストリーム要求 ストリーム ファイル ⑦ ストリーミング ストリーミング ビューア メタファイル (3) • メタファイルとプレゼンテーション記述 (2) クライアント 結合する場合 ... ① ファイル要求 rtsp://rtsp_server/sample.rm プレゼンテーション記述 Web ブラウザ ② プレゼンテーション記述 (兼メタファイル) ③ ビューアの起動 ④ ストリーム要求 ストリーミング ビューア ストリーム ファイル ⑤ ストリーミング MIMEタイプが正しく定義されていれば、どちらの方法を用いてもよい メタファイル (4) • ストリーミング関連の MIME タイプとメタファイル ファイル拡張子 名称 MIMEタイプ RealSystem audio/vnd.rn-realmedia application/smil audio/x-pn-realaudio audio/x-pn/realaudio-plugin rm smi smil ram rpm Windows Media Technologies video/x-ms-wmv audio/x-ms-wma video/x-ms-asf wmv wma asf asx Apple QuickTime video/quicktime mov qt メタファイル ファイルフォーマット (1) • ストリームファイルの中のデータ構造 (制御データ + 圧縮データ) 一種の多重化フォーマット ファイル属性 ストリーム 属性 その他の 属性 圧縮データ ファイル属性: ファイルサイズ、ビットレート、ストリーム数、など ストリーム属性: ストリームの種類、圧縮アルゴリズム、ビットレート、など その他の属性: 各ストリームの開始位置、ランダムアクセス位置、など 圧縮データ: オーディオ、ビデオほか、各種メディアの圧縮ストリーム 1 2 n 1 2 n * スケーラブルなストリームも一つのファイルに多重化 ファイルフォーマット (2) • ファイルフォーマットの使用方法 HTTP ストリーミング: サーバ そのままTCP転送 クライアント ストリーム ファイル 圧縮ストリーム中の 同期ワード探索による ストリーミング再生 ファイルフォーマット の中身は考慮しない 専用プロトコルを用いたストリーミング: サーバ RTPパケット化 クライアント ストリーム ファイル 「ストリーム属性」を 考慮したパケット化 RTPに従った ストリーミング再生 ファイルフォーマット (3) • ファイルフォーマットの具体例 名称 ファイルフォーマット 仕様 RealSystem rm 非公開 (以前は公開) Media Technologies wmv, wma, asf 非公開 (以前は公開) QuickTime mov, qt 公開 (MPEG4) *.rm: RealMedia File Format *.asf: Advanced Streaming Format *.mp3, *.mpg 等も一種のファイルフォーマット RTSP (1) ストリーミング制御 ・ ストリーミング専用の制御プロトコル メソッド DESCRIBE SETUP PLAY PAUSE * Realtime Streaming Protocol 目的 メディア情報、プレゼンテーション記述の取得 セッションの初期化 メディアの転送開始、再開 メディアの転送中断 TEARDOWN セッションの終了 ANNOUNCE メディア情報、プレゼンテーション記述の更新 OPTIONS オプションの設定 RECORD メディアの記録 RFC 2326 RTSP (2) セッション制御 サーバ クライアント GET HTTP プレゼンテーション記述 (SMIL等) DESCRIBE IPアドレス/ポート トランスポートプロトコル メディア情報 (SDP) SDP 使用帯域、など SETUP RTSP OK (送信準備完了) PLAY OK (送信開始) RTP ストリーミング 符号化アルゴリズム RTSP (3) VCR コマンド サーバ クライアント ストリーミング PAUSE VCRコマンド (停止) OK (ストリーミングの停止) PLAY VCRコマンド (再開) VCRコマンド: 開始、停止、再開 OK (ストリーミングの再開) 早送り、早戻し スキップ、など ストリーミング TEARDOWN OK (セッションの終了) RTSP (4) 状態遷移 Init TEARDOWN TEARDOWN SETUP PLAY Ready Play PAUSE RECORD TEARDOWN Record まとめ: プロトコル階層 • ストリーミング専用プロトコルを用いた場合のプロトコル階層 ストリーミングサーバ 音声 N.A. データ 番組案内 & メタファイル N.A. RTCP ファイル フォーマット プレゼン テーション 記述 制御 ビデオ WWWサーバ (番組案内) RTSP 等 SMIL 等 RTP UDP (or TCP) TCP IP プレゼン テーション 記述 メタ ファイル HTTP TCP IP マルチキャスト放送 マルチキャスト マルチキャスト サーバ マルチキャスト ルータ ② 転送開始・終了 (S,G): マルチキャストグループ マルチキャスト ルータ IGMP マルチキャストグループ ① Join/Leave 送信者とマルチキャストアドレスのペアから 決まるグループ (S, G)。受信者がマルチキ ャストグループへの参加・離脱を行うことで、 パケットの送信が制御される。 最近の話題: SSM (Source Specific Multicast) マルチキャスト放送 (1) • 手順 (1) WWW による番組案内 サーバ クライアント HTTP ① ファイル要求 WWW サーバ Web ブラウザ ② メタファイル メタファイル IGMP ③ ビューアの起動 ④ 参加 ライブ入力 ストリーム ファイル ストリーム サーバ ビューア ⑤ ストリーミング IP Multicast マルチキャスト放送 (2) • 手順 (2) SAP による番組案内 SAP: Session Announcement Protocol 定期的に番組案内 (SDP) をマルチキャスト サーバ クライアント SAP (by IP Multicast) ① 番組案内 IGMP ライブ入力 ストリーム サーバ ② 参加 ビューア ストリーム ファイル ③ ストリーミング IP Multicast RFC 2974 マルチキャスト放送の長所と短所 ユニキャスト放送 マルチキャスト放送 既存のシステムの変更が不要 長所 トラヒックの削減 (原理的に冗長なパケット クライアントの接続状況に合わせたふくそう は発生しない) 、およびサーバ負荷の削減 制御が可能 クライアントの増加に伴うトラヒックの爆発、 マルチキャストルータの普及と各種設定 ならびにサーバ負荷の増大 (線形増加) クライアント毎のふくそう制御が困難 短所 マルチキャストルーティングアルゴリズム 課題 ふくそう制御アルゴリズム 例: 階層化マルチキャスト スケーラブル符号化 レイヤ3 空間スケーラビリティ or SNRスケーラビリティ EI EP EP ベースライン I B P B P B 時間スケーラビリティ レイヤ1 レイヤ2 • 空間解像度の階層化:空間スケーラビリティ レイヤ1のみ: 低品質、低レート • 時間解像度の階層化:時間スケーラビリティ • SNRの階層化:SNRスケーラビリティ すべてのレイヤ: 高品質、高レート 階層化マルチキャスト (1) マルチキャスト サーバ マルチキャスト ルータ 広帯域 階層化されたマルチキャストストリーム = 複数のマルチキャストグループ 狭帯域 Receiver-Driven Layered Multicast Leave 受信者主導で、各端末の帯域に合わせて 階層の取捨選択 (= マルチキャストグループ への加入と離脱) を行う S.MaCanne et al: “Receiver-driven Layered Multicast,” SIGCOMM’96. 階層化マルチキャスト (2) • Join Experiment Join、Leave (ふくそう検出)、バックオフを繰り返し、レートを安定させる 廃棄 廃棄 廃棄 detection time レイヤ4 Join Leave レイヤ3 join timer *= α (バックオフ) Join 1回目 レイヤ2 2回目 Join レイヤ1 join timer (レイヤ毎) TCP タイムアウトと同様のバックオフメカニズム 階層化マルチキャスト (3) • Shared Learning Join 実験の他の端末への通知 RH 広帯域 RL 狭帯域 RL S RL Join 実験 RL RL • 端末数の増加に伴う Join 実験の回数の増加を防ぐ • 上流の広帯域 Join 実験と下流の狭帯域 Join 実験の結果の混同を防ぐ 階層化マルチキャスト (4) • RLM の状態遷移図 Steady Join 実験成功 (レイヤ増加) S Join 実験失敗 (レイヤ削減) Hysterisis Join 実験 以外の廃棄 H D Drop 廃棄率大 (レイヤ削減) 遷移状態 M Measurement detection time の終了
© Copyright 2024 ExpyDoc