コンピュータネットワーク 第12回 リアルタイム通信、UDP/RTP 2003年7月8日 山内長承 1 UDP • TCPと同じレベル • 機能は、ほとんど何 もしない – コネクションなし – 順序、再送をしない • ポートはサポート ア プ リ ア プ リ TCP ア プ リ UDP IP データリンク 物理層 2 UDPヘッダ 32ビット ヘ ッ ダ 宛先ポート番号 送信元ポート番号 パケット長 チェックサム データ 3 UDP いつ使うか? • 総パケット数が少ない通信 – TCPではコネクション設定などのやり取りの方 が多くなってしまうとき • 動画や音声などのマルチメディア通信 – 再送による遅延変動がいやだ – パケット損失の被害が少ない – 注: とは言うけれど、TCPを使う場合もある • あとでもう少し突っ込んで見ましょう 4 リアルタイム通信 • リアルタイム通信とは – 教科書: 「送信したデータがなるべく早く宛先に届く通信」 • 山内流解釈: – 送られてきたデータをすぐに使う場合 – ビデオダウンロード問題 ~ 見るまで待たされる ⇒ 到着した部分はすぐに再生を始める ~ 待たない 5 リアルタイム通信 ダウン ロード 方式 ストリー ミング 方式 download play download play これをリアルタイム通信と称することが多い 6 TCPの再送が起こると遅延 • パケット損失 ⇒ 再送 ⇒ 遅れる sender time Retrans NACK mission receiver delay • 再生に間に合わなくなる • だからUDPを使いたくなる 7 キーワード: 遅延とジッタ(遅延の変動) • 片方向通信: 遅延より遅延変動が問題 • インタラクティブ通信: 遅延そのものが問題 sender time 遅 延 receiver 遅延 遅延 遅延が 伸びた 8 脱線: 実はTCPも使われる • MS Media PlayerにせよRealVideoにせよ TCP転送モードはサポートしている • なぜ? – 理由① ファイヤウォールを乗り越えやすい – 理由② 片方向転送ならバッファリングで逃 げられる 9 RTP Real Time Protocol • リアルタイム通信を制御する 大したことはしない • RTP: 流すデータにつけるヘッダ + RTCP: 制御用の情報を別に流す • RTPヘッダ: タイムスタンプ、シーケンス番号 • RTCPパケット: 「補助」というが結構大変 – パケット損失率、遅延、遅延変動などを測定、報告 10 例: ストリーミング~ 蓄積コンテンツ • 音楽やビデオをインターネット配信 ⇒ 実用 • 難しさ: 遅延の変動(ジッター) ⇒ 数秒のバッファリングが必要(?) • その上に(セッション)制御用のプロトコル必要 – どんな内容か? どんな符号化、どんなレート? – Session Description Protocol, Real-Time Streaming Protocol, ... 11 例: ストリーミング ~ ライブ中継 • コンサート、講演会、ニュース放送... • 遅延を気にするか? 数秒ならOK? • 大勢に効率よく配る マルチキャスト • 途中から見るための工夫 12 例: IP電話 • 声をIPで運ぶこと自体は難しくないが... • 遅延が非常に問題 – 0.3秒を越えると、対話が不自然 – 符号化、復号化の遅延があるので、ネットワークに許 されるのは0.1秒以下、0.05秒(50mS)程度 • パケット損失の問題 ~ 回復する時間がない • 「呼制御」の必要性 – 接続制御、会議通話など 既存電話での追加機能 • 既存電話との接続・親和性 電話番号、11913 IP電話 • 遠距離電話部分だけをIP電話 ⇒ 実用 – 専用のIPネットワークを使う • 同一プロバイダ内のみでIP電話 ⇒ 実用 – BBフォンなど、品質保証はつらいがある程度使える (注)携帯電話の品質に慣れたので多少悪くてもよ い? – プロバイダ間での接続の検討 • 既存電話との通話 – 電話番号問題 ⇒ 050の割当開始。 課金は? • 既存電話の置き換え ⇒ たとえば119サービス? – 「ライフライン」に耐えるか? 14 品質保証 • リアルタイム ⇒ 帯域・遅延制約 • ルータで特別扱いし、優先的に転送 • 設定 RSVP 帯域予約プロトコル ReSource Reservation Protocol 15
© Copyright 2024 ExpyDoc