Comments
Description
Transcript
論 文 - 村田研究室
論 文 Web サーバシステムのモデル化と性能評価 藤田 靖征y 村田 正幸yy 宮原 秀夫yy Performance Modeling and Evaluation of Web Server Systems Yasuyuki FUJITAy, Masayuki MURATAyy, and Hideo MIYAHARAyy あらまし 近年インターネット ・ユーザー数の急伸やマルチメディア化の進展によリ,インターネットプロバ イダ ーは インフラ整備の対応に追われている.品質の高いネットワークシステムを構築するためには,ネット ワーク特性や Web サーバ特性を十分に把握した上で,システム資源をバランス良く配備し ,ボトルネックを解 消していくことが重要である.本論文では,そのために Web サーバに着目し ,そのモデル化と性能評価を行な う.まず,Web サーバの処理性能に関する基礎データをベンチマークによって収集した結果を示し ,特に,Web サーバに対して要求されたド キュメントサイズが Web サーバの処理能力に与える影響を明らかにしている.さ らに,実験結果に基づいて,Web サーバモデルを提案し ,その妥当性の検証を行うとともに Web サーバの性能 を明らかにしている. キーワード 1. インターネット, Web サーバ処理性能,ベンチマーク,Web システムのモデル化と性能評価 ランス良く配置することが可能になる. まえが き これまで,例えば,文献 [1] において,インターネッ インターネット上のトラヒック特性に関する研究に ト上を流れるトラヒック特性が分析されている.その ついては,国内外を含めて研究が活発に行われつつあ 結果,ド キュメントのリクエスト間隔やド キュメント る.品質の高いネットワーク設計を行うためには,ま サイズは対数正規分布に従うこと,また,最繁忙時間 ず,ネットワークが扱うトラヒック特性を把握し ,そ に限れば リクエスト間隔は指数分布にモデル化できる の後,その特性がネットワーク性能にどのような影響 ことが明らかにされている.また,文献 [2] では,ド を与えるかを明らかにする必要があるためである.特 キュメントキャッシュがトラヒック特性に与える影響 に,扱われる情報がテキストや静止画像だけでなく, も同時に明らかにされている.しかし ,それらの文献 動画像など 多種多様なメデ ィアが含まれるようになっ を含めてこれまでの研究の多くにおいては,Web サー ているため,それらを考慮した特性の把握が必要であ バの処理能力に関しては考慮されていない.すなわち, る.しかし ,Web システムにおいては,ユーザ品質 サーバに関しては無限大の処理能力が仮定されている. は,ネットワーク回線の容量だけでなく, Web サーバ 当然のことながら,ユーザ品質(ド キュメント転送遅 の処理能力によっても大きく影響を受けると考えられ 延)はサーバでの処理遅延とネットワーク遅延を含め る.すなわち,Web システムの性能向上のためには, サーバ/ネットワーク特性,および ,トラヒック特性 たものであり,ド キュメント要求が頻繁にあるような 場合には,ネットワーク回線よりもむしろ Web サー を踏まえた上で,Web システム全体の性能評価モデル バがボトルネックになることも十分に考えられる.す ける資源(ネットワーク回線,Web サーバなど )をバ モデル化も必須になる. の構築が不可欠である.その結果,Web システムにお そこで,本論文では y 関西電力株式会社,大阪市 Kansai Electric Power Co. 3{3{22 Nakanoshima, Kita{ku, Osaka 530{70, Japan yy 大阪大学 大学院基礎工学研究科 情報数理系専攻,豊中市 Department of Infomatics and Mathematical Science, Graduate School of Engineering Science, Osaka University, Toyonaka, Osaka 560, Japan 電子情報通信学会論文誌 なわち,ユーザ品質の評価のためには,Web サーバの B{I Web システムのモデル化を目 指して,ベンチマークツールにより,サーバの定量的 な基本特性をまず明らかにする.これは,Web サーバ をブラックボックスとして扱い,擬似クライアントか ら Vol. J81{B{I Web サーバへ http により Web ド キュメントを要 No. XX pp. 1{11 1998 年 XX 月 1 電子情報通信学会論文誌 '98/XX Vol. J81{B{I No. XX Server 求し,応答時間やスループットを測定するものである. Client その主たる目的は,ある Web サーバプ ラットフォー ATM SWITCH ムでサーバソフトウエアを比較したり,同じサーバソ フトウエアでサーバプラットフォームを比較したりす ることである.ベンチマークの結果は雑誌やインター ATM ネット上においても公開されているが,ベンチマーク 図 1 実験システム図 Fig. 1 Experimental system conguration ソフトの設定などにより結果が異なってくるため,結 果をそのまま,モデル化の際の数値パラメータとして 表 1 使用システム Table 1 Experimental system Server Client Machine SGI Indigo2 SGI Indigo2 CPU IP26 75 MHZ IP22 250 MHZ Main Memory 320 Mbytes 192 Mbytes Web Server Apache 1.2.4 | Benchmark | WebStone 2.0.1 適用できない. よって,本論文では,トラヒック特性などを考慮し ながら Web サーバの 性能評価を 行な うための 基礎 デ ータを収集し ,実験デ ータに基づいたモデル化の 提案とモデルの妥当性の検証を行う.Web サーバの モデル化に関する研究として文献 [4] がある.文献 [4] Web シ ステムを開待ち行列網 (open queueing network model) でモデル化しているが,用いられて では いるパラメータの定量的な裏付けはなされていない. また,モデルに対する検証もまったく行われないまま に,システム評価が行なわれている.本論文では,ベ ンチマークテストにより種々の収集した基礎データを 基に,その結果から Web サーバのモデルを提案して その性能を明かにするものである. 以下,2. で今回使用した実験環境について説明し , 3. では,基礎データの収集により得られた実験結果の うち,特にモデル化に関連の深い結果を示す.なお, より詳しい実験結果については文献 [5] に示している. 次に,4. でその結果に基づいて Web サーバのモデル を提案し ,考察を加える.最後に,5. で今後の課題を まとめる. 2. ま用いた. クライアントからのリクエストを擬似的に生成する ベンチマークツールとして WebStone(第 2.0.1 版)[7] を用いた.WebStone では,リクエストするド キュメ ントサイズの分布,そのアクセス頻度,また,クライ アント数などをユーザ側で指定できるためである.以 下,WebStone の概要を簡単にまとめる.WebStone では ,WebMASTER によりベンチマークテ ストが 統括される.WebMASTER は,1 つあるいは複数の クラ イアント コンピュータ上に ,複数のクラ イアン (Webchildren) を生成する.そし て ,それぞれの Webchildren が並列に Web サーバに対してリクエス トを生成する.Webchildren からは http コネクショ ンを設定した後,1 リクエストが出され,リクエスト ト に対するド キュメントを受け取るとコネクションはそ 実験システムの構成 の時点でいったん切断され,その後,新たなリクエス まず,実験システム構成を図 1に示す.ここでの実 験はサーバの処理能力を明らかにすることが主目的で あるため,ネットワークによるボトルネックが生じな いようにネットワークには主として ATM スイッチを 用いた.ただし ,比較のためにイーサネットを用いた 場合のデータも一部示している. 実験に使用したハード ウエアとソフトウエアを表 1 に示す.Web サーバには Apache( 第 1.2.4 版)[6] を トがただちに生成される.すなわち,ここでは 第 1 版 [8] を前提にしている. 決められている [9].例えば,クライアントから生成す るリクエストにはドキュメントセット lelist.standard を用いることになっており,その構成は下記の通りで ある. /file500.html 350 /file5k.html 500 通常のログ情報をとるように設定した.また,ド キュ /file50k.html 140 メントは Web サーバのローカルディスクにおいた.な TCP/IP stack など のチューニングは行なわず,デフォルト設定をそのま 2 httpd なお,WebStone では,使用にあたって実行規則が 用いた.サーバ側では,ホスト名やアクセス時刻等の お,サーバ,クライアントともに ATM /file500k.html 9 /file5m.html 1 / Web サーバシステムのモデル化と性能評価 例えば,1 行目の /le500.html は,500Byte のサイズ 4.5 を持つド キュメントに対して,1000 分の 350 の確率で れは実際の Web サイトに適合したド キュメントサイ ズとアクセス頻度であるとしている.しかし ,本論文 ではモデル化のためのデータ収集を目的として使用す るため,実行規則に則っていない場合もある.そのよ うな場合については,実験結果とともに付記していく. また,それぞれの実験においては,10 分間の測定を5 回行ない,その平均を結果として示している.なお, 本稿では,cgi など サーバでの処理が必要なサービ ス については考慮せず,ド キュメント転送のみを考えて いる. 3. Response Time (sec) アクセスすることを意味している.文献 [9] では,こ helper48 helper8 helper32 helper16 4 3.5 3 2.5 2 1.5 1 0.5 0 0 20 40 60 80 WebStone Client Load 100 120 図 2 ヘルパープロセス数が応答時間に与える影響 Fig. 2 Eects of the number of helper processes on the average response time 実験結果 実験では,以下の諸点を明らかにした. 実験 1: httpd の起動方法がサーバ性能に与える影響 実験 2: ヘルパープ ロセ ス数が サーバ性能に 与え る 影響 実験 3: ド キュメント長がサーバ性能に与える影響 実験 4: ド キュメント 長分布が サーバ性能に 与え る 実験 5: なってくる可能性がある.ヘルパープロセスが多けれ ば多いほど ,同時に多くのリクエストを受付けること ができるが,それがどのようにサーバの処理性能向上 に役立つかは不明である.また,プロセスの準備はそれ だけ資源を費やすことになり,それが逆にシステム性 影響 能の劣化を招くことも考えられる.そこで,本節では, ネットワーク容量の影響 ヘルパープロセスの数が処理性能に与える影響を明ら 上記の実験 1 については,既に公表されている結果 ( 例えば ,文献 [3] )と同様の傾向を示しており,また, 紙面の制限から省略する.詳細は文献 [5] 参照.次節以 かにする.本実験では,アクセスするドキュメントセッ トとして lelist.standard を使用し ,WebStone で生 成するクラアント数を 10 から 110 まで変化させた. 降の実験では,サーバ側にデ ィスパッチャプロセスが 平均応答時間( クライアントがド キュメントを要求 待機し ,既に起動されているプロセス(ヘルパープロ してから,そのド キュメントをすべて受信し終えるま セス)に処理を渡す場合を考える.予め用意されたヘ での時間)の結果を図 2に,また,コネクション処理 らヘルパープロセスへ処理を渡す時間が,fork() によ 率( 1 秒間あたりのサーバのリクエスト処理数)を図 3に示す.図の横軸はクライアント数であり,また,ヘ ルパープ ロセス数は 8,16,32,48 と変化させてい る. 図より, WebStone で生成するクライアント数 るプロセス生成より速く,応答時間とコネクション処 を増やした場合にも,応答時間はほぼ線形に増加して ルパープロセスの数以上のリクエストを受付けた場合 は,ヘルパープロセスが空くまで待たせることになる. このような起動方法では,デ ィスパッチャプロセスか 理率とも最も良い結果となる.ただし ,ヘルパープロ いる.ただし,helper48 の場合にはコネクション率に セスを用いる場合,ヘルパープロセスが常にメモリ等 劣化がみられる.これは,ヘルパープロセスによるシ のシステム資源を占有するという欠点があり,サーバ ステム資源の消費が悪影響を与えているためであると 構築時には最適なヘルパープロセス数を選択する必要 考えられる.それを除けば ,クライアント数を 100 程 がある.これは,応答時間の最小化とも密接に関連す 度にしても応答時間の面では性能差は生じ ていない. るものであり,次節における実験結果,および ,次章 でのモデル化/評価によって明らかにしていく. 3. 1 実験 2: ヘルパープロセス数がサーバ性能に 与える影響 サーバの処理性能に対するヘルパープロセスの最適 な数は,Web サーバへの同時アクセス数によって異 今,同時接続数を 100 クライアント,応答時間が 3 秒 という数値から逆算すると,1 日の総アクセス数が約 300 万のサイトにも適用が可能になる.しかし ,この 計算では,ピーク時のアクセス回数や cgi など を考慮 していないことはもちろんのことであるが,ド キュメ ント長に依存した応答時間について考慮していないと 3 電子情報通信学会論文誌 30 helper16 helper32 helper8 helper48 45 40 25 Response Time (sec) Server Connection Rate (conn/sec) 50 35 30 25 20 15 10 20 client64 client32 client16 client 8 client 4 15 10 5 5 0 0 0 20 40 60 80 WebStone Client Load 100 120 図 3 ヘルパープロセス数がコネクション処理率に与える 影響 Fig. 3 Eects of the number of helper processes on the server connection rate 0.1 1 プロセスの数はさほど 性能に影響がないと言える. 実験 3: ド キュメント 長がサーバ性能に与え る影響 本実験では,ド キュメント長とサーバ性能の関係を 調べるため,アクセスするド キュメントのサイズを変 Server Connection Rate (conn/sec) いう問題がある.すなわち,本実験で用いたド キュメ ントセットにおける平均応答時間に限れば ,ヘルパー 成するクラアント数は 4 から 64 までの場合について 示している. 図 4から 6までは,それぞれ,応答時間,コネクショ 40 30 20 10 0 0.1 16 合には,プロセスのオーバヘッド により,応答時間は ド キュメント長に比例せずほぼ一定である.また,コ ネクション処理率も一定のままである.一方,ド キュ メント長がある程度大きくなると,ド キュメント長の 増大に伴って応答時間が増え,また,コネクション処 理率が減少する.ところが,ド キュメント長がさらに Throughput (Mbit/sec) 18 をド キュメント長を勘案してビット換算したもの )を まで変化させた.図より,ド キュメント長が小さい場 1 10 100 Document Size (Kbyte) 1000 図 5 ド キュメント長がコネクション処理率に与える影響 Fig. 5 Eects of the document size on the server connection rate ン処理率,スループット( 単位はコネクション処理率 示している.ド キュメント長は 100byte から 5Mbyte 1000 client64 client32 client16 client 8 client 4 50 更した時のベンチマーク結果を得た.以下の結果では, ヘルパープ ロセス数は 16 に固定し ,WebStone で生 10 100 Document Size (Kbyte) 図 4 ド キュメント長が応答時間に与える影響 Fig. 4 Eects of the document size on the avarage response time 60 3. 2 '98/XX Vol. J81{B{I No. XX 14 12 client64 client32 client16 client 8 client 4 10 8 6 4 2 0 0.1 1 10 100 Document Size (Kbyte) 1000 大きくなると,コネクション処理率の減少の度合が緩 くなり,また,スループットは頭打ちになり,応答時 間はド キュメント長にほぼ比例するようになる.その ことをより明確に示すために,図 7に図 4の縦軸( 応 図 6 ド キュメント長がスループットに与える影響 Fig. 6 Eects of the document size on the server throughput 答時間)をログ表示したものを示す.図 7より,モデ ル化の際には,少なくともド キュメント長に比例した 4 処理時間は仮定できないことがわかる. / Web サーバシステムのモデル化と性能評価 3 2.5 Work Demand (sec) Response Time (sec) 10 client64 client32 client16 client 8 client 4 1 2 client 4 client 8 client16 client32 client64 1.5 1 0.5 0.1 0 0.1 1 10 100 Document Size (Kbyte) 1000 図 7 ド キュメント長と応答時間の関係 Fig. 7 Eects of the document size on the avarage response time 0.1 1 10 100 Document Size (Kbyte) 1000 図 8 ド キュメント長に対するワークデマンド Fig. 8 Work demand against the document size い場合には問題がある.その点を次の実験 4 で示す. ただし ,ヘルパープロセス数を一定にした場合,ク ラ イアント 数は 少なくともコネクション 処理率やス 3. 3 実験 4: ド キュメント 長分布がサーバ性能に 与える影響 ループットに対してはあまり影響を与えないことも図 実験 3 では,ド キュメント長を固定にして実験結果 よりわかる.また,応答時間に関しても,あるド キュ を得た.しかし ,実際に複数種のド キュメント長が混 メント長を与えると,クライアント数と応答時間はほ 在する場合について調べると,デ ィスパッチャにおけ ぼ比例している. る遅延が無視できないことがわかった.すなわち,ディ 本実験より,ド キュメント長が一定であれば ,サー バでの処理時間が求められる.これはクライアント数 には依存せず決めることができる.例えば ,図 8は , スパッチャでの FIFO 待ち行列も考慮したモデル化が 必須となる.以下にその実験結果の例を示す. て何秒の処理を要求するか )とみることができる.図 ここでは,クライアントが 2 種類のサイズ (50Kbyte, 500Kbyte) のド キュメントにアクセスする場合につい て結果を示す.ヘルパープ ロセス数を 16 とし ,クラ イアント数については 4,16,32 とした結果が図 9で ある.横軸はアクセスする 50Kbyte,500Kbyte のド キュメントの割合を示す.例えば,1000:0 は 50Kbyte のド キュメントのみ,逆に 0:1000 は 500Kbyte のド キュメントのみ,500:500 は確率 0.5 でそれぞれのサイ より,この値はクライアント数によらず,ほぼ一定の ズのド キュメントにアクセスすることを示す.クライ 図 4に示したド キュメント長に対する応答時間の結果 の見方を変え,応答時間をクライアント数で割った値 を示している.すなわち,デ ィスパッチャによる待ち を無視すれば ,この値が,与えられたド キュメントサ イズに対して,そのド キュメントがサーバに対して要 求するワークデマンド(ド キュメントがサーバに対し 値を示していることがわかる. 一方,ヘルパープ ロ アント数によらず,平均応答時間はほぼ直線で表わさ セスの数についても,本論文では示していないが,極 れている.すなわち,与えられたサイズごとのド キュ 端に小さい場合や大きい場合を除くと,与えられたク メントの応答時間がわかれば ,あとはその割合によっ ライアント数に対してほぼ一定の応答時間を示してお て重みづけした平均値によって,ド キュメント全体の り,ワークデマンドがド キュメントサイズに対して決 平均応答時間が予測できることがわかる.すなわち, 定できることを示唆している. 従って,サーバでの処理規律をプロセッサシェアリ ングとし ,各ド キュメントサイズに対するワークデマ 図 8に示したように,ド キュメントサイズごとに応答 時間を,例えば ,今回の実験にようなベンチマークテ ストにより調べておけば ,あとはド キュメントサイズ ンド を図 8より決定すれば ,Web サーバのモデル化が の分布を与えれば平均応答時間や,その結果としてス 可能になると考えられる.しかし ,実際には単純なプ ループットなどの性能の予測が可能になる. ロセッサシェアリングではデ ィスパッチャでの遅延が 表現できないため,デ ィスパッチャによる遅延が大き しかし,それぞれのサイズごとの応答時間をみると, 単純なプロセッサシェアリングでは不十分であること 5 電子情報通信学会論文誌 client32 client16 client4 10 Response Time (sec) Response Time (sec) 10 8 6 4 8 client32[500] client32 client32[50] client4[500] client4 client4[50] 6 4 2 2 0 0 1000:0 750:250 500:500 250:750 0:1000 Ratio [ 50K : 500K ] 図9 '98/XX Vol. J81{B{I No. XX 50Kbyte,500Kbyte のド キュメントの比率を変え た場合の応答時間 Fig. 9 Response times of 50 Kbyte and 500 Kbyte document dependent on the le mix 1000:0 750:250 500:500 250:750 0:1000 Ratio [ 50K : 500K ] 図 10 ド キュメントサイズに依存した応答時間の予測 Fig. 10 Response times of 50 Kbyte and 500 Kbyte document Server Model がわかる.さきほどの図 9では,50Kbyte,500Kbyte のド キュメントを合わせた全体の平均応答時間を示し たが,図 10には,ド キュメントサイズごとの平均応答 時間も示す.図には,クライアント数 4 の場合と 32 の 場合を示しており,また,ヘルパープロセス数を 16 に # of helper processes = r 設定していることを考慮すると,以下のような考察が 得られる.すなわち,クライアント数 32 の場合,特に, 図 11 サーバの待ち行列モデル Fig. 11 Queueing model for Web server 500Kbyte のド キュメントのアクセス頻度が高くなる につれて,50Kbyte のド キュメントの応答時間も大き くなっており, 50Kbyte のド キュメントは 500Kbyte のド キュメントの影響を受けていることがわかる.こ ザに対するサービ スを考慮するとサイズに応じた応答 増大したことによる.一方,クライアント数 4 の場合 する Web サーバの待ち行列モデルを示す.次章では, れはディスパッチャにおける FIFO 処理を待つ時間が には,50Kbyte のド キュメントの応答時間はさほど 変 化せず,500Kbyte のド キュメントの影響はあまり受 けていない.クライアント数が 4 であるため,デ ィス 時間の予測が重要になる.図 11に,本論文で対象と このモデルに基づいた近似解析手法を示す. 3. 4 実験 5: ネット ワーク容量の影響 本論文の目的は Web システムのモデル化にあり,そ パッチャにおける遅延は発生せず,サーバに到着した のために,ネットワークがボトルネックにならないよ ド キュメント要求はただちに処理が開始されるためで うにしてサーバ性能の特性を調べた.そのために,実 ある. 以上より,ド キュメント全体の平均応答時間を得た い場合にはプロセッサシェアリングによるサーバのモ デル化も可能であるが,ド キュメントごとの応答時間 を知りたい場合には,デ ィスパッチャにおける FIFO 待ち行列のモデル化が 不可欠であると言える.Web サーバでは,テキストや静止画像の他,動画像や音声 験では Web サーバとクライアント 間を ATM スイッ チを用いて接続した.本節ではその点を確認するため に,10Mbps イーサネット (10base-T) で接続した場 合との比較により,イーサネットのような低速なネッ トワークを用いた場合には,ネットワークが容易にボ トルネックとなることを示す.結果を図 12に示す.本 実験では,ヘルパープロセスを 16 とし,WebStone で いる.また,その分布は今後の Web システムの発展と 24 に固定した.一方,ア クセスするド キュメント長は 100byte から 5Mbyte ま ともに異なっていくものと考えられる.従って,ユー で変化させた.ド キュメント長を大きくした場合,プ など も蓄積され,それぞれのサイズは大きく異なって 6 生成するクライアント数は / Web サーバシステムのモデル化と性能評価 バでのジョブ数が r だけ存在する場合,新たに到着す Throughput (Mbit/sec) 20 るジョブは FIFO 待ち行列に並ぶ.ジョブはサーバに 5 PS = 1 とした場合には 一般的な PS サーバシステムとなる.PS 処理規律に 関しては,これまで多くの研究がなされている (例え ば ,文献 [11] 参照) が,今,対象とするような r < 1 0 し ,文献 [12] において,ワークデマンドが指数分布に Simple File Read ATM 15 Ethernet てサービ スを等し く受ける.つまり,サーバでは 処理規律により処理される.r 10 の場合についてはほとんどないのが現状である.ただ 0.1 1 10 100 Document Size (Kbyte) 1000 従う場合の全体の応答時間分布が求められており,ま た,文献 [13] では,ワークデマンドが指数分布に従う 図 12 ネットワークがボトルネックになる場合 場合のみ,ワークデマンド で条件付けられた平均応答 Fig. 12 Eects of the network bandwidth 時間が求められている.しかし ,文献 [13] では,一般 分布に従うワークデマンド に対しては近似的に全体の ロセス起動のオーバヘッド が小さくなり,スループッ トは上昇する.しかし ,イーサネットの場合には,ス ループットが約 7.5Mbits/sec で上限値を示している. これは,10Mbps イーサネットの伝送能力としてほぼ 妥当な値である. 一方,ATM の 場合に おいてもスル ープットが 約 15Mbits/sec で上限値を示している.原因を調べるた めに,クライアントからサーバへ単純にファイルを読 む実験を行った.その結果は,図 12中の \Simple File Read" で示しており,約 19Mbits/sec になっている. すなわち,ATM を使用した場合では,ネットワーク ではなくサーバがボトルネックとなっていることが推 測できる. 4. Web サーバモデルの提案と検討 以上の結果から,Web サーバはディスパッチャの処 理を受けるまでは FIFO 待ち行列に並び ,ヘルパー プロセスが割当てられた後はプロセッサシェアリング (PS) によるサービス規律で処理されるような待ち行列 システムによるモデル化が妥当である.また,ド キュ メント 長に対するワークデ マンド を表す定量的なパ ラメータは,これまでの実験結果から求められる( 図 8 ).本節では,詳細な Web サーバのモデルについて 提案と検討を行う. 4. 1 サーバ内ジョブ 数が有限の M/G/1/PS 待 ち行列 ここでは,ジョブ( Web システムにおいてはド キュ メント要求)の到着は平均のポアソン分布に従うと する.サーバに到着するジョブ数が r を越えない場合 には,ジョブはすぐにサーバで処理される.既にサー 平均応答時間が求められているのみである. そこで,本論文では,新たにワークデマンドが一般 分布に従うモデルにおいて,与えられたワークデマン ド に対して条件付きシステム平均遅延を求める.その ために,まず,一般分布に従うジョブのワークデマン ド の確率変数を S で表す.また,FIFO 待ち行列や PS R とし ,ワー x が与えられた時の平均システム応答時間 を E [RjS = x] で表す.今,ワークデマンド に依存し ない FIFO 待ち行列でのジョブの待ち時間を W とし , サーバ内に滞在する時間を T (x) とする.すなわち, サーバでの応答時間を示す確率変数を クデマンド E [RjS = x] = W + T ( x) 本論文では,E [RjS = x] が近似的に r E [S 2 ] 1 ; r E [RjS = x] = 1 ; 2 E [S ] + 1 ; x (1) で与えられ るものとする.ここで E [S ],E [S 2 ] はそ れぞれ,ワークデマンド の分布の1次モーメント( 平 均),2次モーメントとし,は = E [S ] で与えられ る負荷とする.ワークデマンド の確率分布が して与えられた時,式 (1) より, E [R] = Z 1 0 S (x) と E [RjS = x]dS (x) r 2 r = 1 ; 2EE[S[S]] + 11;; E [S ] (2) となり,これは文献 [13] の近似式と一致する.また, 式 (1) において r = 1 とすれば , E [S 2 ] E [RjS = x]F IF O = (3) 1 ; 2E [S ] + x 7 電子情報通信学会論文誌 '98/XX Vol. J81{B{I No. XX で表され,M/G/1(/FIFO) 待ち行列システムの結果 (例えば ,文献 [14]) と一致する.さらに ,式 (1) で , r = 1 とすれば , x E [RjS = x]P S = (4) 1; Work Demand (sec) 1 これは,M/G/1/PS 待ち行列システムの条件付き平 均応答時間の結果と一致する. 1 < r < 1 の場合については,次節で式 (1) の妥当 0.1 0.01 0.1 性を検証する. 4. 2 g(x) client64 client32 client16 client 8 client 4 1 数値例と検証 Web サーバにおいて r はヘルパープ ロセス数に相 10 100 1000 Document Size (Kbyte) 10000 図 13 ワークデマンド の関数近似 Fig. 13 Approximation of work demand 当し ,ド キュメントのリクエスト 数が r を越えると, デ ィスパッチャ待ち行列に並ぶことになる.前章で示 したように,ワークデマンド はド キュメント長に依存 するが,線形ではない.本節では,これらのことを念 メント 要求の発生時間間隔は対数正規分布に従うが , 頭に,サーバの性能向上のための考察を加え,また, 最繁忙期間においては発生はポアソンに従うことが示 式 (1) の妥当性を検証する. されている. ワークデマンド に対して,条件付き平均システム応答 える. 式 (4) より明らかなように,一般に PS システムは, 時間は直線的に増加する.一方,FIFO システムでは, 式 (3) より平均応答時間はワークデマンド の分布に大 Web サーバ性能の定量的な評価は以下の手順で行 (1) x [Byte] に依存したワークデマンド g (x) を求め 以下のことが定性的に言える. ヘルパープ ロセス数 的に求める.このため,3. 2で得られた結果を使 う.図 8に示した結果を使って,ド キュメント長 きく依存する.すなわち,式 (1) が成立するとすれば, ド キュメント長に依存したワークデマンド を近似 r を大きくするに従って, る.前章の実験結果より,下記の一次近似式が得 システムは PS システムに近づく.これは,小さいサ られる. イズのド キュメント の処理時間が 大きいサ イズのド g (x) キュメントの影響を受けにくいことを表している.つ ただし ,a まり,テキストやインライン画像の応答時間を短くで きることを意味している. 負荷が小さい場合には,ワークデマンド に依存 しない固定遅延 W が無視できるようになり,応答時 (2) 負荷が大きくなるにつれて,固定部 W が相対的に大 S (x) = 固定部 W は E [S 2 ] に比例する.すなわち,ワー h(y ) の場合には,小さいサイズのド キュメントに対する要 本モデルは到着をポアソン過程としている.これは 文献 [1] に基づいている.すなわち,文献 [1] において Web サーバでのアクセスログを分析した結果,ド キュ 8 Z x 0 f (h(y ))h0 (y )dy: (6) また,g (x) の逆関数として h(y ) を得る. クデマンドが対数正規分布のように裾野の大きい分布 以下,上記の考察を考慮し ながら定量的な評価を ド キュメント長分布を考慮した実際のワークデマ 以下のようにして求める. は大きくなる. 行う. = 0:0004851,b = 21:55.図 13は , 図 8に関数 g (x) を重ねて表示したものである. 分布を f (x) とし ,ワークデマンド の確率分布を きくなり,小さいサイズのド キュメントでも応答時間 求でも応答時間は大きくなってしまう. (5) ンド の分布を求める.ド キュメント長分布の確率 間はワークデ マンド に比例するようになる.しかし , = ax + b; (3) = y ;a b : ワークデマンド の確率分布 S (x) を用いて,前節 の結果を適用する. 以下では,ド キュメント 長分布 f (x) が ,対数正規 分布に従う場合 [1] について示す.確率変数 X は,あ る確率変数 Y = log X が N (; 2 ) に従う時,対数正 / Web サーバシステムのモデル化と性能評価 1000 Conditional Mean Delay [ms] Conditional Mean Delay [ms] 1000 ρ = 0.9 ρ = 0.8 100 ρ = 0.6 ρ = 0.4 ρ = 0.2 10 0.1 1 10 100 Work Demand (Document Size [Kbyte]) 1000 図 14 負荷を変化させた場合 Fig. 14 Conditional mean response time for dierent trac load 規分布に従う.従って,ワークデマンド の確率密度関 数は,式 (6) から以下のようになる. s(y ) (log(y;b);log a;)2 1 22 : e; 2(y ; b) =p 文献 [1] において,実際の Web サーバにおけるド キュ = 7:811, = 1:573 のパラメータを 持つ対数正規分布に従うことが示されている.式 (5) メント 長は, より,ド キュメント長 x に対する条件付き平均応答時 r=8 r=4 100 0.1 r=2 1 10 100 Work Demand (Document Size [Kbyte]) 1000 図 15 ヘルパープロセス数 r を変化させた場合 Fig. 15 Conditional mean response time dependent on the number of helper processes 次に,ヘルパープロセス数 r を変化させた場合を示 す.図 15に r を変化させた場合の条件付き平均応答時 間を示す.負荷は 0.8 に設定している.図より,ヘル パープロセス数が大きくなるにつれて,応答時間は増 大している.すなわち,ヘルパープロセス数を小さく する方がよいことが図より分かる. 一般に,PS シス テム (r = 1) では,条件付き平均応答時間はワーク テム (r = 1) では,ワークデマンド によらない固定値 デマンド に比例する (式 (4) 参照).一方,FIFO シス ( 待ち行列における待ち時間,式 (3) の右辺,第 1 項) 間は, d(x) r=∞ r = 16 がある.本論文におけるシステムでは,これらの 2 つ = W + T (a x + b) のシステムの間に位置し ,小さいサイズのド キュメン トの条件付き平均応答時間は r が大きくなるにつれて で与えられる. 以降では,上記の結果による数値例を示す.本モデ ル 化において ,ド キュメント 要求はポアソン 分布に 従って到着するものとしている.先の実験結果を得た システムは基本的に閉待ち行列網モデルとなるため, 減少するが,大きいサイズについては r に対して増加 すると考えられる.しかし ,実際にはそうなっていな い.この理由としては,10Kbyte 以下の小さなサイズ のド キュメントのワークデマンド は本システムではほ これら 2 つの結果を直接比較することはできない.そ ぼ同じであり,ド キュメント長が対数正規分布の場合 こで,妥当性を検証するためにシュミレーションを行 は多くのド キュメントサイズは小さい.従って,上に なった.各シュミレーションでは応答時間の 述べたような影響は図にはあらわれていない. 95%信頼 区間が平均の 5%に収まるまで実行させた.以下の図 では,シュミレーション結果は `□' で,解析結果は実 正規分布のまま,その平均を先の例の 線で示す. まず,ド キュメント長に依存した条件付き平均応答 時間を図 14に示す.ヘルパープ ロセス数 この結果を確認するため,ド キュメント長分布を大 きくした場合を次に示す.ド キュメント長分布は対数 10 倍に設定し た.ただし ,対数正規分布の 2 つのパラメータ値は変 r を 4 に固 えていない.結果を図 16に示す.この場合には,ワー た.図より,負荷が増えるに従って,小さいサイズの なり,予想された結果を示している. 図 15より,現 ド キュメントの条件付き平均応答時間が相対的に急激 状のド キュメント長分布に対しては,ヘルパープロセ 定し ,負荷を = 0:2,0.4,0.6,0.8,0.9 と変化させ に増加していることがわかる. クデマンド の固定部 (式 (5) の b) は無視できるように ス数を大きく設定することは,Web サーバの性能を改 9 電子情報通信学会論文誌 1000 Conditional Mean Delay [ms] Conditional Mean Delay [ms] 10000 '98/XX Vol. J81{B{I No. XX r=2 1000 r=4 r=∞ r=8 r = 16 LogNorm.; r = 8 Exp.; r = 8 100 LogNorm.; r = 2 Exp.; r = 2 100 1 10 100 1000 Work Demand (Document Size [Kbyte]) 10000 図 16 ド キュメント長分布の平均を 10 倍にした場合 Fig. 16 The case of tem times larger document size distribution 0.1 1 10 100 Work Demand (Document Size [Kbyte]) 1000 図 17 ド キュメント長分布がシステム性能に与える影響 Fig. 17 Comparisons of conditional mean response times for dierent document size distributions 善することにはつながらないと言える.しかし ,将来 的に大きなサイズのド キュメントが増えた場合には, ヘルパープロセスの数がド キュメント取得時間に関す る Web サーバのサービ ス品質を決める重要な要因と なる(図 16 ).その場合には,たとえば,テキストファ イルのような短いド キュメントの応答時間を小さく保 つためには,大きなド キュメントの応答時間を大きく する検討を行なった.ベンチマーク実験に用いたシス テムは実際には閉待ち行列網モデル (closed queueing network model) である.その場合には Web サーバを IS (Innite Servers) 待ち行列として扱えば ,待ち行 列内時間が一般分布でも扱えるため [14],本論文の結 果が近似的に適用できる.しかし ,実際の Web シス してでもヘルパープロセス数を増すといった方策が考 テムへの適用のためには,ド キュメントキャッシング えられる.しかし ,ヘルパープロセスを大きくするこ についても考慮したベンチマーク実験を引き続き行い. とは,メモリーなどのシステム資源の問題もあるので その結果をもとにしてアクセス系ネットワークと Web 一概に適用できない. サーバを含めた 最後に,Web サーバ性能へのド キュメント長分布の 影響を調べる.ここでは,ド キュメント長が指数分布 に従う場合を示す.指数分布に従う場合については, ワークデマンド の平均を対数正規分布の場合と同じ く E [S ] = 25:68 とし た.この場合,2 次モーメントは 対数正規分布より小さくなり,E [S 2 ] = 676:5 となる. 結果を図 17に示す.図より明らかなように対数正規分 布の場合には応答時間が大きくなることが分かる.し かし ,ヘルパープロセス数を大きくすると,2 つの分 布の違いはあまり見られなくなる.これは,PS シス テムにおいて知られているように,ワークデマンド に 対する条件付き応答時間がワークデマンド の分布に依 存しなくなるためである. 5. ま と め 本論文では,まず,ベンチマークによる Web サーバ の性能を明らかにし ,その結果に基づいて Web サー バの性能モデルを提案し,その近似解析手法を示した. さらに,数値例によって 10 Web サーバの性能向上に関 Web システム全体のモデルの構築を 行なっていく必要がある. 謝辞 本研究にあたり,M/G/1/PS 待ち行列システムに 関する貴重な御助言をいただいた京都大学大学院の滝 根哲哉助教授に深謝する. 文 [1] 献 名部正彦, 馬場健一, 村田正幸, 宮原秀夫, \ インターネッ ト・アクセスネットワーク設計のための WWW トラヒッ クの分析とモデ ル 化," 電子情報通信学会論文誌 (B-I), Vol.J80-B-I, No.9, pp.428-437, 1997. [2] 名部正彦, 馬場健一, 村田正幸, 宮原秀夫, \WWW トラ ヒックの分析とキャッシュを考慮したアクセスネットワー クの性能評価," 信学技報 CQ96{18, pp.9{16, 1996. [3] N.J. Yeager and R.E. McGrath, Web Server Techonology, Morgan Kaufmann Publishers Inc., San Francisco, 1996. [4] Louis P. Slothouber, \A Model of Web Server Performance," available at http://www.starnine.com/webstar/overview.html,1996. [5] 藤田靖征, 村田正幸, 宮原秀夫, \Web サーバの性能分 析 ∼ Web システムのモデル化に向けて ∼," 信学技報 / Web サーバシステムのモデル化と性能評価 CQ97{69, pp.77{84, 1997. [6] Apache HTTP SERVER PROJECT, available at http://www.apache.org/. [7] Silicon Graphics, Inc., \WebStone: World Wide Web Server Benchmarking," available at http://www.sgi.com/Products/WebFORCE/Resources/res webstone.html. [8] T. Berners-Lee, R. Fielding, H. Frystyk, \Hypertext Transfer Protocol { HTTP/1.0", RFC1945, available at http://ds.internic.net/rfc/rfc1945.txt, 1996. [9] Silicon Graphics, Inc., \WebStone: World Wide Web Server Benchmarking: Introducing WEBSTONE 2.0," available at http://www.sgi.com/Products/WebFORCE/WebStone/webstone2.html. [10] R.E. McGrath, \Measuring the Performance of HTTP Daemons," available at http://www.ncsa.uiuc.edu/InformationServers/Performance/Benchmarkig/bench.html. [11] S.F. Yashkov, \Processor{Sharing Queues: Some Progress in Analysis," Queueing Systems, Vol.2, pp.1-17, 1987. [12] K.M. Rege and B. Sengupta, \Sojourn Time Distribution in a Multiprogrammed Computer System," AT&T Technical Journal, Vol.64, No.5, pp.10771090, May{June 1985. [13] B. Avi-Itzhak and S. Haln, \Expected Response Times in a Non-Symmetric Time Sharing Queue with a Limited Number of Service Positions," Proceedings of ITC-12, pp.1485-1493, 1989. [14] S.S. Lavenverg, Computer Performance Modeling Handbook, Academic Press, New York, 1983. 宮原 秀夫 ( 正員) 昭 42 阪大・工・通信卒.昭 47 同大大学 48 京大・工・助手.昭 55 阪大・基礎工・助教授.昭 62 阪大・大型 計算機センター教授.平 1 阪大・基礎工・ 情報・教授.平 7∼9 阪大・大型計算機セン ター長併任.平 10 阪大・基礎工・研究科 長.昭和 58∼59 米国 IBM トーマスワトソン研究所客員研究 院博士課程了.昭 員.システム性能評価,マルチメデ ィアシステム,広帯域通信 網,ネットワーク管理に関する研究に従事.平 2 本会論文章受 賞.IEEE, 情報処理学会会員. 藤田 靖征 ( 正員) 平 4 同志社大・工・電気卒. 同年関西 電力 (株) 入社.社内システムの開発,イン ターネットの性能評価,設計手法に関する 研究に従事. vspace0.8cm 村田 正幸 ( 正員) 昭 57 阪大・基礎工・情報卒,昭和 59 同 大大学院博士前期課程了.同年,日本アイ・ ビー・エム (株) 入社.同社東京基礎研究所 を経て ,昭 62 阪大大型計算機センター・ 助手,平 1 阪大・基礎工・助手,平 3 同講 師,平 4 同助教授.この間,システム性能 評価,広帯域通信網,マルチメデ ィアネットワークなど の研究 に従事.工博.IEEE,ACM,情報処理学会各会員. 11