予備親探索機能を有した アプリケーションレベルマルチキャスト Application Level Multicast with Backup Parent Searching Function 國近 洋平 甲藤 二郎 大久保 榮 Yohei KUNICHIKA Jiro KATTO Sakae Okubo 早稲田大学大学院理工学研究科 Graduate School of Science and Engineering, Waseda university
背景 現在まで 今後 ・WWW ・Email ・ファイル転送 ・VoIP ・ストリーミング 負荷分散、低遅延の要求大
IPマルチキャスト 送信者 送信者・・・流すフローは1つ ルータ・・・パケットを複製・転送 受信者・・・受信するだけ 受信者 ルータ
IPマルチキャストの課題 マルチキャストルータの普及 輻輳制御が困難 エンド-エンドの信頼性に対する不安 ↓
アプリケーションレベルマルチキャスト 送信者 送信者・・・流すフローは少数 ルータ・・・パケットを転送 受信者・・・パケットを複製・転送
論理ネットワーク ツリー型 メッシュ型 ・単一ソースノード ・中~大規模 ・複数ソースノード ・小規模
既存ALM一覧 ALMI Narada Peercast Bayeux Overcast Scattercast OMNI メッシュ ○ 小 論理ネットワーク 管理サーバ セッション参加者 ALMI メッシュ ○ 小 Narada メッシュ × Peercast ツリー 中 Bayeux Tapestry 大 Overcast ツリー Scattercast メッシュ OMNI
接続中の子の数が規定値に達していた場合は新規接続不可 Peercast(1) 接続要求 新規参入時 リダイレクション ① ② 接続中の子の数が規定値に達していた場合は新規接続不可
Peercast(2) 接続要求 離脱時 離脱メッセージ 離脱ホスト
Peercast(3) 緊急時 親がfailure→ソースへ再接続要求 子がfailure→セッションを開放 一定時間経過しても到着せず ↓ failure状態と見なす 生存確認メッセージ 親がfailure→ソースへ再接続要求 子がfailure→セッションを開放
Peercastの問題点 親ノードの離脱によるツリー再構成が必要 ↓ 離脱が決定してから親ノードを探索 特に緊急時は再構成に時間がかかる 予め予備親候補を見つけておくことにより効率化を図る
提案手法(1) 接続要求 新規参入時 リダイレクション ① ③ ② 実際の親 予備親
提案手法(2) 接続要求 離脱時 離脱ホスト 予備親 離脱メッセージ
提案手法(3) 接続要求 離脱時 離脱ホスト 予備親 離脱メッセージ
シミュレーション評価 シミュレーション手段 ・ns-2.26 (http://www.isi.edu/nsnam/ns/) 比較対象 ・Peercast ・提案手法 評価項目 ・セッション要求~データ受信までの時間 ・制御メッセージ数
シミュレーショントポロジー 雲部内トポロジー 100Mbps 100ms ホスト数 ランダム(全体で固定) ルータ数 5 ルータ-ルータ帯域幅 100Mbps ルータ-ルータ遅延 10~50ms ルータ-ユーザ帯域幅 10Mbps ルータ-ユーザ遅延 10ms
セッション要求~データ受信までの時間[sec] シミュレーション結果 セッション要求~データ受信までの時間[sec] 接続要求の種類 join・・・新規参入ホストが接続要求してからデータ受信までの時間 leave・・・親ホストの離脱による再接続要求からデータ受信までの時間 failure・・・親ホストの緊急時による再接続要求からデータ受信までの時間
セッション要求~データ受信までの時間[sec] シミュレーション結果(1) セッション要求~データ受信までの時間[sec] ホスト数:100 子の上限:3 子の上限:4
セッション要求~データ受信までの時間[sec] シミュレーション結果(2) セッション要求~データ受信までの時間[sec] 子の上限:4 ホスト数:100 ホスト数:500
シミュレーション結果(3) 制御メッセージ数[個] 子の上限:4
まとめ ALMにおいて予備親探索を行うことにより親ノードの離脱によるツリー再構築の効率化を提案した 従来手法と比較して親の離脱によるツリー再構築に必要な時間を20%程度、親の緊急時では50%程度削減できた 今後は制御メッセージ数増加によるネットワークへの影響を考慮しつつ、より良い予備親探索アルゴリズムを模索していく
セッション要求~データ受信までの時間[sec] シミュレーション結果(1) セッション要求~データ受信までの時間[sec]
セッション要求~データ受信までの時間[sec] シミュレーション結果(2) セッション要求~データ受信までの時間[sec]
セッション要求~データ受信までの時間[sec] シミュレーション結果(3) セッション要求~データ受信までの時間[sec]