ADC

技術レシピ

NetScaler T1モデルには、複雑な決定を実行時に評価できる高度な機能と強力なポリシー構成言語が用意されています。

T1000 の機能とポリシー設定ガイドで実現できる可能性のあるすべての機能を評価することはできませんが、技術資料では、通信事業者が提示するさまざまな要件の実装を検討します。「レシピ」をそのまま使用したり、環境に合わせて自由に再利用したりできます。

ユーザーごとの接続制限

NetScaler T1モデルは、一意のサブスクライバーIPあたりの接続数を制限するように構成できます。以下の構成では、IP(CLIENT.IP.SRC)ごとに N 個の同時 TCP 接続が許可されます。設定されたしきい値を超える接続を試みるたびに、T1 は RST を送信します。1 ユーザーあたり最大 2 つの同時接続の場合:

コマンド:

add stream selector streamSel_usrlimit CLIENT.IP.SRC
add ns limitIdentifier limitId_usrlimit -threshold 2 -mode CONNECTION -selectorName streamSel_usrlimit
add responder policy respPol_usrlimit "SYS.CHECK_LIMIT("limitId_usrlimit")" RESET
bind lb vserver vsrv-wireless -policyName respPol_usrlimit -priority 1 -gotoPriorityExpression END
<!--NeedCopy-->

仮想サーバーのスムーズな挿入/削除

多くのオペレーターは、NetScaler T1モデルがTCP最適化のためにインラインでアクティブ化されている場合や、メンテナンスの目的で無効になっている場合に、TCP接続の中断を懸念しています。vserver の導入時に既存の接続が切断されないようにするには、TCP 最適化用に vserver を設定またはアクティブ化する前に、次の設定を適用する必要があります。

コマンド:

add ns acl acl-ingress ALLOW –vlan 100
add forwardingSession fwd-ingress –aclname acl-ingress
apply ns acls
<!--NeedCopy-->

転送セッションはルーティング(スタティック、ダイナミック、または PBR)に加えて有効であり、ルーティングされるトラフィックのセッションエントリを作成します(L3 モード)。既存の接続はすべて、対応するセッションにより転送セッションによって処理され、vserverが導入されると新しいTCP接続のみのキャプチャを開始します。

ACL は、メモリを消費する不要なトラフィックのセッションを作成しないように、vserver などの特定のポートのみをキャプチャするように設定できます。もう 1 つのオプションは、vserver のアクティベーション後に特定の設定を削除することです。

メンテナンスのために、仮想サーバーを無効にして、その状態が OUT OF SERVICE と表示されている必要があります。この場合、仮想サーバーはデフォルトですべての接続を直ちに終了します。vserver が既存の接続を引き続き提供し、新しい接続を受け付けないようにするには、次の設定を適用する必要があります。

コマンド:

set lb vserver vsrv-wireless –downStateFlush DISABLED
<!--NeedCopy-->

新しい接続はルーティングテーブルを通過し、転送セッションにより対応するセッションエントリが作成されます。

ポリシーベースの TCP プロファイリング

ポリシーベースのTCPプロファイル選択により、オペレーターは異なるトラフィックドメイン(3Gまたは4Gなど)から来るクライアントに対してTCPプロファイルを動的に設定できます。一部のQoSメトリックはこれらのトラフィックドメインによって異なるため、パフォーマンスを向上させるには、TCPパラメータの一部を動的に変更する必要があります。3Gと4Gのクライアントが同じ仮想サーバーにアクセスして同じTCPプロファイルを使用する場合を考えてみましょう。これにより、一部のクライアントのパフォーマンスに悪影響を及ぼします。AppQoE機能はこれらのクライアントを分類し、仮想サーバー上のTCPプロファイルを動的に変更できます。

例:

enable feature AppQoE

add ns tcpProfile nstcpprofile1 -WS ENABLED -SACK ENABLED -WSVal 8 -mss 1460 -maxBurst 30 -initialCwnd 16 -oooQSize 15000 -minRTO 800 -slowStartIncr 1 -bufferSize 4000000 -flavor BIC -KA ENABLED -sendBuffsize 4000000 -rstWindowAttenuate ENABLED -spoofSynDrop ENABLED -frto ENABLED -maxcwnd 1000000 -fack ENABLED -tcpmode ENDPOINT

add ns tcpProfile nstcpprofile2 -WS ENABLED -SACK ENABLED -WSVal 8 -mss 1460 -maxBurst 15 -initialCwnd 16 -oooQSize 15000 -minRTO 800 -slowStartIncr 1 -bufferSize 128000 -flavor BIC -KA ENABLED -sendBuffsize 6000000 -rstWindowAttenuate ENABLED -spoofSynDrop ENABLED -frto ENABLED -maxcwnd 64000 -fack ENABLED -tcpmode ENDPOINT

add appqoe action action_1 -priority HIGH -tcpprofile nstcpprofile1

add appqoe action action_2 -priority HIGH -tcpprofile nstcpprofile2

add appqoe policy appqoe_4G -rule "CLIENT.VLAN.ID.EQ(100)" -action action_1

add appqoe policy appqoe_3G -rule "CLIENT.VLAN.ID.EQ(200)" -action action_2

bind lb vserver vsrv-wireless -policyName appqoe_4G -priority 100

bind lb vserver vsrv-wireless -policyName appqoe_3G -priority 110
<!--NeedCopy-->

NetScaler T1モデルでは、Gx、Radius、またはRadius and Gxインターフェイスを介してサブスクライバー情報を動的に受信し、サブスクライバーごとに異なるTCPプロファイルを適用できます。

コマンド:

add appqoe action action_1 -priority HIGH -tcpprofile nstcpprofile1

add appqoe action action_2 -priority HIGH -tcpprofile nstcpprofile2

add appqoe policy appqoe_4G -rule "SUBSCRIBER.RULE_ACTIVE("3G")" -action action_1

add appqoe policy appqoe_3G -rule "SUBSCRIBER.RULE_ACTIVE("4G")" -action action_2
<!--NeedCopy-->

NetScaler T1モデルとオペレータコントロールプレーンネットワークとの統合については、 Telcoサブスクライバ管理を参照してください

技術レシピ