• 検索結果がありません。

クライアントリンクがボトルネックとなる場合

ドキュメント内 要約 (ページ 31-40)

第 3 章 コネクション直列化による回避 13

3.5 性能評価

3.5.2 クライアントリンクがボトルネックとなる場合

図3.8は,NS = 64,V = 1 Gbps,S = 32 KB,x = 0.1 %,ポートバッファサイズが40パ ケット分としたときのグッドプット性能を示す.また,図3.9は,ボトルネックとなるクライアン トリンクのポートバッファの,すべてのTCPUDPのパケットを含めた最大キュー長(Qmax) を示す.両図において,凡例“NCTP”は,インキャスト回避手法を使わない標準のTCPを示す.

また,凡例“FGTCP”は,細粒度タイマを使うTCPで,RTOminに200µsecを設定する.さら に,凡例“CCSTCP”,“NCCSTCP”,“OCSTCP”は,それぞれ,本論文で提案する完全直列化 法,準完全直列化法,最適直列化法を指す.

図3.8をみると,NTCPICTCPについて,アクティブサーバ数が15を超えた付近において,

急激なグッドプット低下が確認できる.この理由は,図3.9に示すように,Qmaxがポートバッファ 容量の上限である40パケットに容易に到達できる状態になっていることから,バッファオーバー フローにより,大量のパケット消失が発生しているためである.ICTCPは,インキャストが発生 しないように,各コネクションのウィンドウサイズを減少させる動作をするが,その最小値は2×

'ŽŽĚƉƵƚ΀DďƉƐ΁

dŚĞŶƵŵďĞƌŽĨĂĐƚŝǀĞƐĞƌǀĞƌƐ Ϭ

ϮϬϬ ϰϬϬ ϲϬϬ ϴϬϬ ϭϬϬϬ ϭϮϬϬ

Ϭ ϭϬ ϮϬ ϯϬ ϰϬ ϱϬ ϲϬ ϳϬ

&'dW K^dW E^dW;<сϴͿ E^dW;<сϰͿ

E^dW;<сϮͿ ^dW /dW EdW

図3.8: V = 1 GbpsS = 32 KBのときのグッドプット

DĂdžŝŵƵŵƋƵĞƵĞůĞŶŐƚŚ΀ƉĂĐŬĞƚƐ΁

Ϭ ϭϬ ϮϬ ϯϬ ϰϬ ϱϬ

Ϭ ϭϬ ϮϬ ϯϬ ϰϬ ϱϬ ϲϬ ϳϬ

&'dW K^dW E^dW;<сϴͿ E^dW;<сϰͿ

E^dW;<сϮͿ ^dW /dW EdW

dŚĞŶƵŵďĞƌŽĨĂĐƚŝǀĞƐĞƌǀĞƌƐ

図3.9: V = 1 Gbps,S = 32 KBのときの最大キュー長

MSSである.そのため,もし,アクティブサーバ数が20 (ポートバッファ容量40パケット/最小 ウィンドウサイズ2 MSS)よりも大きくなれば,インキャストは高い確率で発生する.図3.8を見 ると,ICTCPのグッドプット低下は,アクティブサーバ数が20のときではではなく,15付近で 発生している.この理由は,ICTCPの広告するウィンドウサイズは,常に2 MSS が設定される ものではなく,ときどき2 MSSよりも大きな値を設定されるためである.それゆえ,ICTCPを用 いた場合,アクティブサーバ数が20未満のときにおいても,インキャスが発生する可能性がある.

図3.9を見ると,想定した通り,完全直列化法を使うことで,最小のQmaxを達成できているが,

一方で,図3.8を見ると,クライアントの帯域幅は使い切ることができず,そのグッドプットは約 450Mbpsであることがわかる.図3.9を詳細に見ると,完全直列化法のQmaxは0で一定になっ ていないことがわかる.この理由は,バックグラウンドトラフィックによりキューイングが発生す るからである.それゆえ,完全直列化法を使用したときは,スイッチは,バックグラウンド用の わずかなポートバッファ容量だけあればよいことがわかる.

準完全直列化法を使用したときについては,K = 2K = 4とを比較すると,K = 4を設定 したときは,クライアントリンクの帯域幅をほとんど使い切ることができるが,Qmaxは,K = 2 を設定したときよりも大きな値になっている.このシミュレーションで用いたパラメータの組合 せでは,多重度変数の値を増加させたとしても,インキャストは発生しなかったが,一般に,多 重度変数の値を増加させると,ネットワーク中に存在する最大パケット数が増加するため,イン キャストが発生しやすくなる(図3.12と図3.16を参照).従って,準完全直列化法を使って,ク ライアントリンクの帯域幅を使い切るためには,最適なKの値を設定する必要があるが,現時点 では,Kの値の最適化を行うアルゴリズムは明らかになっていない.

一方,最適直列化法を使うことで,ポートバッファの使用率を低く抑えた状態で,クライアントリ ンクの帯域幅をほぼ使い切ることが確認できる.また,そのグッドプットは,K = 4の準完全直列化 法よりも,わずかに高い値を示している.最適直列化法のTCPパケットの最大キュー長QT CPmax は,式 (3.2)と,式(3.9),式(3.10),式(3.11)から,BaseBDP pkt =⌈1Gbps×100µsec/(1500×8)⌉= 9 wnd pkt = 4nmin = 3QT CPmax = 8×39 = 15となる.他方,図3.9に示す最大キュー長を 見ると,最適直列化法の最大キュー長Qmax13である.QmaxQT CPmax が互いに近い値にな る理由は,UDPのバックグラウンドトラフィックが非常に小さい(V ×x/100×1/NS×NS = 1Gbps×0.1/100×1/64×64 = 10Mbps)ためである.

FGTCPについては,図3.9をみると,Qmaxはポートバッファ容量の上限に到達しているため,

再送タイムアウトが頻発していることが想像できる.しかし,再送タイムアウト時間の最小値を

200µsecに設定していることで,再送がより適切なタイミングで実施されているため,図3.8に示

すようにグッドプットは高い値になる.しかし,アクティブサーバ数が大きくなる(図3.8のアク ティブサーバ数が40を超える)とグッドプットの低下が確認できる.この理由は,4章で述べる ように,再送タイムアウトが短い期間で何度も発生するためである.但し,グッドプットの減少 は,NTCPとICTCPほどは大きくない.

図3.10と図3.11は,クライアントが,バリア同期アプリケーションに係る最初のSYNセグメ ントを送信してから,クライアントがすべてのSRUを受信し終えるまでの期間を示す時間を示す.

この時間のことを,ミッション完了時間(Mission Complete Time.以降,MCTと表記)と呼び,

この値が小さければ小さいほど良い性能であることを意味する.クライアントがSRU送信要求を 開始してから,すべてのSRUの受信を完了するまでの全時間を通して,クライアントリンクの帯 域幅を使い切ったという条件下でのMCTを,MCT理想値と呼ぶと,MCT理想値は以下のよう

dŚĞŶƵŵďĞƌŽĨĂĐƚŝǀĞƐĞƌǀĞƌƐ Ϭ͘ϭ

ϭ ϭϬ ϭϬϬ ϭϬϬϬ ϭϬϬϬϬ

Ϭ ϭϬ ϮϬ ϯϬ ϰϬ ϱϬ ϲϬ ϳϬ

&'dW K^dW E^dW;<сϴͿ E^dW;<сϰͿ E^dW;<сϮͿ

^dW /dW EdW /ĚĞĂů

DŝƐƐŝŽŶĐŽŵƉůĞƚĞƚŝŵĞ΀ŵƐĞĐ΁

図3.10: V = 1 GbpsS= 32 KBのときのMCT(対数)

dŚĞŶƵŵďĞƌŽĨĂĐƚŝǀĞƐĞƌǀĞƌƐ Ϭ

ϱ ϭϬ ϭϱ ϮϬ Ϯϱ ϯϬ ϯϱ ϰϬ

Ϭ ϭϬ ϮϬ ϯϬ ϰϬ ϱϬ ϲϬ ϳϬ

&'dW K^dW

E^dW;<сϴͿ E^dW;<сϰͿ

E^dW;<сϮͿ ^dW

/dW EdW

/ĚĞĂů

DŝƐƐŝŽŶĐŽŵƉůĞƚĞƚŝŵĞ΀ŵƐĞĐ΁

図 3.11: V = 1 Gbps,S = 32 KBのときのMCT

'ŽŽĚƉƵƚ΀DďƉƐ΁

dŚĞŶƵŵďĞƌŽĨĂĐƚŝǀĞƐĞƌǀĞƌƐ Ϭ

ϮϬϬϬ ϰϬϬϬ ϲϬϬϬ ϴϬϬϬ ϭϬϬϬϬ ϭϮϬϬϬ

Ϭ ϰϬ ϴϬ ϭϮϬ ϭϲϬ ϮϬϬ ϮϰϬ ϮϴϬ

&'dW K^dW E^dW;<сϴͿ E^dW;<сϰͿ

E^dW;<сϮͿ ^dW /dW EdW

図3.12: V = 10 GbpsS = 512 KBのときのグッドプット に定義できる.

MCT =Na×

S MSS

×MSS + 40

V (3.12)

ここで,Naはアクティブサーバ数を指す.例えば,S = 32 KBV = 1 GbpsNa = 8のとき は,MCT理想値は,2.2msecとなる.ただし,このMCT理想値の計算は,伝送に必要な計算時 間や,伝播遅延時間の値はほとんど無視できるものとして扱うため,考慮していない.また,計 算においては,クライアントは,TCPのウィンドウ制御の制約を受けることなく,帯域幅を使い 切ることができると想定している.

図3.10と図3.11を見ると,準完全直列化法(K = 4とK= 8)と,最適直列化法のMCTは,

MCT理想値とほとんど等しいことがわかる.従って,これらの直列化法を用いることで,イン キャストを発生させることなく,クライアントリンクの帯域幅を使い切れているといえる.

図3.12 3.15は,NS = 256V = 10 GbpsS = 512 KBx = 0.1 %,ポートバッファ 容量が200パケット分のときの,それぞれ,グッドプットとQmax,MCT(対数と真数)を示す.

前述したように,K= 8を設定したときの準完全直列化法を見ると,K値に大きい値を設定した ことで,インキャストが発生していることを確認できる.そのため,K = 8を設定したときの準 完全直列化法は,NTCPよりもグッドプットが低下する.図3.12では,最適直列化法がもっとも 良い性能になっている.最適直列化法において,式(3.11)より,BaseBDP pkt = 84nmin= 4 wnd pkt = 21であるから,QT CPmax = 84 (= 2×4×2184)が求められる.他方,シミュレー ション結果を見ると,Qmax= 90である.このシミュレーションで用いたパラメータの組合せで

DĂdžŝŵƵŵƋƵĞƵĞůĞŶŐƚŚ΀ƉĂĐŬĞƚƐ΁

dŚĞŶƵŵďĞƌŽĨĂĐƚŝǀĞƐĞƌǀĞƌƐ Ϭ

ϱϬ ϭϬϬ ϭϱϬ ϮϬϬ ϮϱϬ

Ϭ ϰϬ ϴϬ ϭϮϬ ϭϲϬ ϮϬϬ ϮϰϬ ϮϴϬ

&'dW K^dW E^dW;<сϴͿ E^dW;<сϰͿ

E^dW;<сϮͿ ^dW /dW EdW

図3.13: V = 10 GbpsS = 512 KBのときの最大キュー長

dŚĞŶƵŵďĞƌŽĨĂĐƚŝǀĞƐĞƌǀĞƌƐ

DŝƐƐŝŽŶĐŽŵƉůĞƚĞƚŝŵĞ΀ŵƐĞĐ΁

Ϭ͘ϭ ϭ ϭϬ ϭϬϬ ϭϬϬϬ ϭϬϬϬϬ

Ϭ ϰϬ ϴϬ ϭϮϬ ϭϲϬ ϮϬϬ ϮϰϬ ϮϴϬ

&'dW K^dW

E^dW;<сϴͿ E^dW;<сϰͿ

E^dW;<сϮͿ ^dW

/dW EdW

/ĚĞĂů

図 3.14: V = 10 Gbps,S= 512 KBのときのMCT(対数)

dŚĞŶƵŵďĞƌŽĨĂĐƚŝǀĞƐĞƌǀĞƌƐ

DŝƐƐŝŽŶĐŽŵƉůĞƚĞƚŝŵĞ΀ŵƐĞĐ΁

Ϭ ϱϬ ϭϬϬ ϭϱϬ ϮϬϬ ϮϱϬ ϯϬϬ ϯϱϬ ϰϬϬ ϰϱϬ ϱϬϬ

Ϭ ϰϬ ϴϬ ϭϮϬ ϭϲϬ ϮϬϬ ϮϰϬ ϮϴϬ

&'dW K^dW E^dW;<сϴͿ E^dW;<сϰͿ E^dW;<сϮͿ

^dW /dW EdW /ĚĞĂů

図3.15: V = 10 GbpsS = 512 KBのときのMCT

は,UDPトラフィックが若干多い(10Gbps×0.1/100×1/1024×1024 = 100Mbps)そのため,

Qmaxは,QT CPmax よりも若干多くなる.

さらに,別のパラメータの組合せ(NS = 1024V = 10 GbpsS= 128 KB,その他のパラメー タは図3.123.15と同様)により取得したシミュレーション結果について,グッドプットと,Qmax, MCT(対数と真数)を,それぞれ,図3.16,図3.17,図3.18,図3.19に示す.これらの図を見る と,前述した図3.12 3.15と同様の傾向が確認できる.最適直列化法について,BaseBDP pkt

= 84nmin= 6wnd pkt = 15であるから,式(3.11)より,QT CPmax = 96 (= 2×6×1584) 求まる.他方,シミュレーション結果は,Qmax= 105を示す.この理由は,図3.13のときと同様 に,UDPトラフィックが若干多いために,Qmaxが,QT CPmax よりも若干大きくなる.

以上の結果より,最適直列化法はインキャスト回避には最良と言える.

dŚĞŶƵŵďĞƌŽĨĂĐƚŝǀĞƐĞƌǀĞƌƐ

'ŽŽĚƉƵƚ΀DďƉƐ΁

Ϭ ϮϬϬϬ ϰϬϬϬ ϲϬϬϬ ϴϬϬϬ ϭϬϬϬϬ ϭϮϬϬϬ

Ϭ ϮϬϬ ϰϬϬ ϲϬϬ ϴϬϬ ϭϬϬϬ

dW&' K^dW E^dW;<сϴͿ E^dW;<сϰͿ

E^dW;<сϮͿ ^dW /dW EdW

図3.16: V = 10 Gbps,S = 128 KBのときのグッドプット

DĂdžŝŵƵŵƋƵĞƵĞůĞŶŐƚŚ΀ƉĂĐŬĞƚƐ΁

dŚĞŶƵŵďĞƌŽĨĂĐƚŝǀĞƐĞƌǀĞƌƐ Ϭ

ϱϬ ϭϬϬ ϭϱϬ ϮϬϬ ϮϱϬ

Ϭ ϮϬϬ ϰϬϬ ϲϬϬ ϴϬϬ ϭϬϬϬ

dW&' K^dW E^dW;<сϴͿ E^dW;<сϰͿ

E^dW;<сϮͿ ^dW /dW EdW

図3.17: V = 10 GbpsS = 128 KBのときの最大キュー長

dŚĞŶƵŵďĞƌŽĨĂĐƚŝǀĞƐĞƌǀĞƌƐ

DŝƐƐŝŽŶĐŽŵƉůĞƚĞƚŝŵĞ΀ŵƐĞĐ΁

Ϭ͘ϭ ϭ ϭϬ ϭϬϬ ϭϬϬϬ ϭϬϬϬϬ ϭϬϬϬϬϬ

Ϭ ϮϬϬ ϰϬϬ ϲϬϬ ϴϬϬ ϭϬϬϬ

dW&' K^dW

E^dW;<сϴͿ E^dW;<сϰͿ

E^dW;<сϮͿ ^dW

/dW EdW

/ĚĞĂů

図 3.18: V = 10 GbpsS= 128 KBのときのMCT(対数)

dŚĞŶƵŵďĞƌŽĨĂĐƚŝǀĞƐĞƌǀĞƌƐ

DŝƐƐŝŽŶĐŽŵƉůĞƚĞƚŝŵĞ΀ŵƐĞĐ΁

Ϭ ϭϬϬ ϮϬϬ ϯϬϬ ϰϬϬ ϱϬϬ ϲϬϬ ϳϬϬ ϴϬϬ ϵϬϬ ϭϬϬϬ

Ϭ ϮϬϬ ϰϬϬ ϲϬϬ ϴϬϬ ϭϬϬϬ

dW&' K^dW

E^dW;<сϴͿ E^dW;<сϰͿ

E^dW;<сϮͿ ^dW

/dW EdW

/ĚĞĂů

図3.19: V = 10 Gbps,S = 128 KBのときのMCT

ůŝĞŶƚϭ

ƵĨĨĞƌWŽƌƚ

^ǁŝƚĐŚ y

ůŝĞŶƚϮ

ůŝĞŶƚE

ƵĨĨĞƌWŽƌƚ

^ĞƌǀĞƌϭ

^ĞƌǀĞƌϮ

^ĞƌǀĞƌϯ

^ĞƌǀĞƌE^

^ǁŝƚĐŚ y^ϭ

ƵĨĨĞƌWŽƌƚ

^ĞƌǀĞƌϭ

^ĞƌǀĞƌϮ

^ĞƌǀĞƌϯ

^ĞƌǀĞƌE^

^ǁŝƚĐŚ y^Ϯ

図 3.20: クライアントリンク以外がボトルネックとなる場合のネットワークモデル

ドキュメント内 要約 (ページ 31-40)