2009年度 第2回 卒業論文進捗報告

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