2009年度卒業論文発表 CDNコンテンツサーバの動的負荷分散 後藤研究室 1G06R115-4 高田和也 2010/2/1 卒業論文発表
研究の背景 P2Pトラフィックの割合が微減する一方で、動画などのリッチコンテンツ、ストリーミングサイトの トラフィックの割合が増大している トラフィックの割合が増大している クライアント・サーバ型通信のトラヒックの増大 サーバの負荷が増大 サーバサイトのネットワーク負荷が増大 増えている現状を踏まえて、・・・・を実現できたらよいのではないかと考えました 2010/2/1 卒業論文発表
研究の目的 サーバ及びネットワークの負荷分散 CDNに着目! サーバの負荷に応じた動的な分散を行う ユーザのダウンロード速度向上 ネットワーク共有資源の効率化 CDNに着目! サーバの負荷に応じた動的な分散を行う 2010/2/1 卒業論文発表
CDN (Contents Delivery Network ) オリジナル・コンテンツを もつサーバ 中継ノード:キャッシングや リバースキャッシングを行う CDN 中継ノード 負荷の小さな サーバにアクセス 地理的に近い サーバにアクセス エンド・ユーザ 2010/2/1 卒業論文発表
サーバの負荷分散技術 DNSラウンドロビン ロードバランサ クライアントからのリクエストを順番に振り分ける 静的な負荷分散 導入が容易 導入コストが低い ロードバランサ 動的な負荷分散が可能 導入コストが高い サーバをネットワーク上に分散配置できないものもある 2010/2/1 卒業論文発表
提案手法 CDNで使える動的なサーバ負荷分散手法 DNSシステム 負荷の測定 DNS Balance のアドレスを返す機能 ( Ring server プロジェクトで実際に使われているもの) 負荷の測定 SNMP (Simple Network Management Protocol ) - ifTable ifOutOctets (送信した総オクテット数) 15 [s]毎に値を取得 → 差分をとる → 負荷の指標 2010/2/1 卒業論文発表
負荷分散の方法 2010/2/1 卒業論文発表 DNS Balance start SNMP情報取得 IPと負荷の対応表 start ・表の読み込み ・相対的負荷 をもとに、返す アドレスを選択 ・名前解決 要求があれば 応答する ・サーバの 情報を取得 ・相対的負荷の 値を算出 ・表へ出力 start ・IPアドレス ・相対的負荷 start DNS server 2010/2/1 卒業論文発表
相対的負荷の計算 n台のコンテンツサーバがあるとき、任意のサーバkの相対的負荷 を定義する 値の小さなサーバのIPアドレスを多く返す :一定時間の 総送信オクテット数 値の小さなサーバのIPアドレスを多く返す 2010/2/1 卒業論文発表
動的な負荷分散の評価実験 実験環境(仮想マシン) 実験に用いたデータ(コンテンツ) 既存手法 (DNSラウンドロビン) 提案手法 Flash Videoファイル (flv形式) 10MB, 14MB, 20MB wgetでファイルをダウンロード 2010/2/1 卒業論文発表
実験概要 1.負荷の偏りの無い状態 2.負荷に偏りのある状態 既存手法・提案手法ともに、ほぼ均等に分散 クライアント2台→固定IP(サーバ1)でアクセス クライアント3台→名前解決を行った結果をもとに サーバへアクセス 観測時間 1800 [s] TTL (Time to Live) =5 [s] 2010/2/1 卒業論文発表
実験の環境(仮想マシン) 2010/2/1 卒業論文発表 IPアドレス取得 提案手法のみ転送 Virtual switch DNS server (BIND 9) 192.168.1.102/24 IPアドレス取得 IPアドレスで 直接アクセス web/file server 192.168.1.201/24 得られたIPアドレスで アクセス 提案手法のみ転送 名前解決を行う DNS Balance sever 192.168.1.101/24 web/file server 192.168.1.202/24 Virtual switch DNS server bind9 に置いては named.conf にて サーバのドメイン名 www.example.com client 1,2 192.168.1.1~2/24 web/file server 192.168.1.203/24 client 3,4,5 192.168.1.3~5/24 2010/2/1 卒業論文発表
実験結果(2.負荷に偏りのある状態) 既存手法:ラウンドロビン 提案手法 2010/2/1 卒業論文発表
実験結果(2.負荷に偏りのある状態) クライアントへの各サーバのデータ送信量の割合 既存手法:ラウンドロビン 提案手法 名前解決による送信量 負荷の大きなサーバへの アクセス振り分けが減少 名前解決 名前解決 値:% 既存手法:ラウンドロビン 提案手法 2010/2/1 卒業論文発表
まとめ 結論 今後の課題 提案手法では、サーバの負荷を検出し、 動的な負荷分散が可能であることが示せた ネットワーク上にサーバを分散配置した環境 SNMPで取得できる値ならば負荷の指標にできる 他の負荷の指標での検証 2010/2/1 卒業論文発表
ご清聴ありがとうございました 2010/2/1 卒業論文発表
補足(1) Ring Server プロジェクト ベースサーバ それぞれが同一の内容を保持する ミラーサーバ ベースサーバの内容の一部を コピーしている Ring Serverプロジェクトは、インターネットなどの高速ネットワーク環境を対象として、大規模なソフトウェアライブラリとソフトウェアの分散共同開発の支援を行う共通基盤技術を研究開発し、実際に運用することによりネットワーク社会に貢献することを目的とします。 負荷分散技術 ・TENBIN (近いサーバ優先) ・DNS BALANCE (空いてるサーバ優先) 2010/2/1 卒業論文発表
実験結果(1.負荷に偏りのない状態) 既存手法:ラウンドロビン 提案手法 2010/2/1 卒業論文発表
TTL (Time to Live) の問題 TTLが長い場合(分単位) DNS問い合わせ・応答トラフィックの増加 →先行研究にて解決済み 動的な負荷の分散が難しい 静的な分散と変わらない DNS問い合わせ・応答トラフィックの増加 →先行研究にて解決済み ※岸本 和之 『DNSラウンドロビンの動的レーコード更新によるサーバ負荷分散法』 早稲田大学大学院 基幹理工学研究科 2008年度修士論文, 2009. TTLを短くする 2010/2/1 卒業論文発表
TTLとネットワークトラフィックの関係 (シミュレーション) ネットワークトラフィックの平均値 (kbps) DNS問い合わせ頻度: 100件/秒 DNS問い合わせ頻度: 10件/秒 提案手法 TTL = 5秒 TTLが短くても, ストリーミングの トラフィックと比べると問題にならない 2010/2/1 卒業論文発表 DNSレコードのTTL (秒) 岸本さんの修論より引用
実験結果(2.負荷に偏りのある状態) クライアントへの各サーバのデータ送信量の割合 サーバ1 固定IPアドレス 名前解決 サーバ2 サーバ3 既存手法 (%) 38.0 22.2 19.6 20.2 提案手法 (%) 40.8 10.2 23.4 25.6 2010/2/1 卒業論文発表
既存技術:DNSラウンドロビン 2010/2/1 卒業論文発表 switch web/file server 192.168.1.201/24 client 1 192.168.1.1/24 DNS server switch web/file server 192.168.1.202/24 client 2 192.168.1.2/24 DNS server bind9 に置いては named.conf にて client 3 192.168.1.3/24 web/file server 192.168.1.203/24 2010/2/1 卒業論文発表