ユースケース2 — ジャンボ以外のセットアップからジャンボへのセットアップ
Citrix ADCアプライアンスNS1で構成された負荷分散仮想サーバーLBVS-1を使用して、サーバーS1とS2間でトラフィックの負荷分散を行う定期的なジャンボセットアップの例を考えてみましょう。クライアントCL1とNS1の間の接続は通常のフレームをサポートし、NS1とサーバ間の接続はジャンボ・フレームをサポートします。
NS1 のインターフェイス 10/1 は、クライアント CL1 との間でトラフィックを受信または送信します。NS1のインタフェース10/2は、サーバS1またはS2との間でトラフィックを受信または送信します。
NS1 のインターフェイス 10/1 および 10/2 は、それぞれ VLAN 10 および VLAN 20 の一部です。CL1 と NS1 の間の通常のフレームだけをサポートする場合、インターフェイス 10/1 と VLAN 10 の両方で MTU はデフォルト値の 1500 に設定されます。
NS1とサーバ間のジャンボ・フレームをサポートするために、インターフェイス10/2とVLAN 20のMTUは9000に設定されています。NS1とサーバ間のサーバおよび他のすべてのネットワーク・デバイスも、ジャンボ・フレームをサポートするように構成されます。
HTTP トラフィックは TCP に基づいているため、MSS はジャンボフレームをサポートするために各エンドポイントでそれに応じて設定されます。
- NS1 と S1 または S2 の SNIP アドレス間の接続でジャンボフレームをサポートするために、NS1 の MSS は NS1 上の S1 および S2 を表すサービス(SVC-S1 および SVC-S1)にバインドされるカスタム TCP プロファイルでそれに応じて設定されます。
- CL1 と NS1 の仮想サーバー LBVS-1 間の接続で通常のフレームのみをサポートするには、デフォルトの TCP プロファイル nstcp_default_profile が使用されます。このプロファイルはデフォルトで LBVS-1 にバインドされ、MSS はデフォルト値の 1460 に設定されます。
次の表に、この例で使用される設定を示します。
エンティティ | Name | 詳細 |
---|---|---|
クライアント CL1 の IP アドレス | 192.0.2.10 | |
サーバの IP アドレス | S1 | 198.51.100.19 |
S2 | ||
NS1上のSNIPアドレス | 198.51.100.18 | |
NS1 上のインターフェイスおよび VLAN に対して指定された MTU | 10/1 | 1500 |
10/2 | ||
VLAN 10 | ||
VLAN 20 | ||
デフォルトの TCP プロファイル | nstcp_default_profile | MSS:1460 |
カスタム TCP プロファイル | NS1-SERVERS-JUMBO | MSS: 8960 |
サーバを表すNS1上のサービス | SVC-S1 | IP address: 198.51.100.19, Protocol: HTTP, Port: 80, TCP profile: NS1-SERVERS-JUMBO (MSS: 8960) |
SVC-S2 | ||
VLAN 10 上の仮想サーバのロードバランシング | LBVS-1 | IP address = 203.0.113.15, Protocol: HTTP, Port:80, Bound services: SVC-S1, SVC-S2, TCP Profile: nstcp_default_profile (MSS:1460) |
次に、この例では、CL1 から S1 への要求のトラフィックフローを示します。
-
クライアント CL1 は、NS1 の仮想サーバー LBVS-1 に送信する 200 バイトの HTTP 要求を作成します。
-
CL1 は、NS1 の LBVS-1 への接続を開きます。CL1 と NS1 は、接続を確立しながら、それぞれの TCP MSS 値を交換します。
-
NS1 の MSS は HTTP 要求よりも大きいので、CL1 は 1 つの IP パケットで要求データを NS1 に送信します。
要求パケットのサイズ = [IP ヘッダー + TCP ヘッダー + TCP 要求] = [20 + 20 + 200] = 240
-
NS1 は、インターフェイス 10/1 で要求パケットを受信し、パケット内の HTTP 要求データを処理します。
-
LBVS-1のロード・バランシング・アルゴリズムはサーバS1を選択し、NS1はSNIPアドレスの1つとS1間の接続を開きます。NS1 と CL1 は、接続の確立中に、それぞれの TCP MSS 値を交換します。
-
S1 の MSS は HTTP 要求よりも大きいので、NS1 は 1 つの IP パケットで要求データを S1 に送信します。
要求パケットのサイズ = [IP ヘッダー + TCP ヘッダー + [TCP 要求] = [20 + 20 + 200] = 240
次に、この例の CL1 に対する S1 の応答のトラフィックフローを示します。
- サーバ S1 は、NS1 の SNIP アドレスに送信する 18,000 バイトの HTTP 応答を作成します。
-
S1は、応答データをNS1のMSSの倍数に分割し、これらのセグメントをIPパケットでNS1に送信します。これらの IP パケットは、S1 の IP アドレスから送信され、NS1 の SNIP アドレスを宛先とします。
- 最初の 2 つのパケットのサイズ = [IP ヘッダー + TCP ヘッダー + (TCP セグメント=NS1 の MSS サイズ)] = [20 + 20 + 8960] = 9000
- 最後のパケットのサイズ = [IP ヘッダー + TCP ヘッダー +(残りの TCP セグメント)] = [20 + 20 + 2080] = 2120
- NS1 は、インターフェイス 10/2 で応答パケットを受信します。
- NS1 は、これらの IP パケットから、すべての TCP セグメントをアセンブルして、18000 バイトの HTTP 応答データを形成します。NS1はこの応答を処理します。
-
NS1は、応答データをCL1のMSSの倍数に分割し、これらのセグメントをIPパケットでインタフェース10/1からCL1に送信します。これらの IP パケットは LBVS-1 の IP アドレスから発信され、CL1 の IP アドレスを宛先とします。
- 最後のパケット以外のすべてのパケットのサイズ = [IP ヘッダー + TCP ヘッダー + (TCP ペイロード=CL1 の MSS サイズ)] = [20 + 20 + 1460] = 1500
- 最後のパケットのサイズ [IP ヘッダー + TCP ヘッダー +(残りの TCP セグメント)] = [20 + 20 + 480] = 520
構成タスク
次の表に、Citrix ADCアプライアンスで必要な構成を作成するタスク、Citrix ADCコマンド、および例を示します。
タスク | CLI の構文 | 例 |
---|---|---|
ジャンボフレームをサポートするための目的のインターフェイスの MTU を設定します。 | set interface |
set int 10/1 -mtu 1500 set int 10/2 -mtu 9000 |
ジャンボフレームをサポートするために VLAN を作成し、目的の VLAN の MTU を設定します。 | add vlan |
add vlan 10 -mtu 1500 add vlan 20 -mtu 9000 |
インターフェイスを VLAN にバインドする | bind vlan |
bind vlan 10 -ifnum 10/1 bind vlan 20 -ifnum 10/2 |
SNIP アドレスを追加する | add ns ip |
add ns ip 198.51.100.18 255.255.255.0 -type SNIP |
HTTP サーバーを表すサービスの作成 | add service |
add service SVC-S1 198.51.100.19 http 80, add service SVC-S2 198.51.100.20 http 80 |
HTTP負荷分散仮想サーバーを作成し、サービスをそれにバインドする | add lb vserver |
add lb vserver LBVS-1 http 203.0.113.15 80, bind lb vserver LBVS-1 SVC-S1, bind lb vserver LBVS-1 SVC-S2 |
カスタム TCP プロファイルを作成し、ジャンボフレームをサポートするための MSS を設定します。 | add tcpProfile |
add tcpprofile NS1-SERVERS-JUMBO -mss 8960 |
カスタム TCP プロファイルを目的のサービスにバインドする | set service |
set service SVC-S1 -tcpProfileName NS1-SERVERS-JUMBO, set service SVC-S2 -tcpProfileName NS1-SERVERS-JUMBO |
構成を保存します | save ns config, show ns config |