Citrix ADC

TCP 最適化によるサブスクライバ認識トラフィックステアリング

トラフィックステアリングは、加入者のトラフィックをあるポイントから別のポイントへ誘導します。サブスクライバがネットワークに接続すると、パケットGateway はIPアドレスとサブスクライバを関連付け、データパケットをCitrix ADCアプライアンスに転送します。アプライアンスは、Gx インターフェイスを経由して PCRF サーバと通信し、加入者ポリシー情報を取得します。ポリシー情報に応じて、アプライアンスは次のいずれかのアクションを実行します。

  • データパケットを別のサービスセットに転送します (次の図を参照)。
  • TCP 最適化だけを実行します。

次の図に示す値は、図の後の CLI プロシージャで設定されています。Citrix ADCアプライアンス上のコンテンツスイッチング仮想サーバーは、付加価値サービスに要求を送信するか、要求をスキップして、定義されたルールに応じてTCP最適化を実行し、パケットをインターネットに送信します。

ローカライズされた画像

以下に示す設定のサポートは、リリース 11.1 ビルド 50.10 で導入されました。

CLI を使用して上記の展開のトラフィックステアリングを設定するには、次の手順を実行します。

  1. アプライアンスのサブネットIP(SNIP)アドレスを追加します。

    add ns ip 192.168.10.1 255.255.255.0 -type snip
    
    add ns ip 192.168.20.1 255.255.255.0 -type snip
    
    add ns ip 192.168.100.1 255.255.255.0 -type snip
    
    add ns ip 192.168.200.1 255.255.255.0 -type snip
    
    add ns ip 10.102.232.236 255.255.255.0 –type snip
    
  2. VLAN を追加します。VLAN は、アプライアンスがトラフィックの送信元を識別するのに役立ちます。VLAN をインターフェイスおよびサブネット IP アドレスにバインドします。

    add vlan 10
    
    add vlan 20
    
    add vlan 100
    
    add vlan 200
    
    add vlan 102
    
    bind vlan 10 -ifnum 1/4 -tagged -IPAddress 192.168.10.1 255.255.255.0
    
    bind vlan 20 -ifnum 1/4 -tagged -IPAddress 192.168.20.1 255.255.255.0
    
    bind vlan 100 -ifnum 1/2 -tagged -IPAddress 192.168.100.1 255.255.255.0
    
    bind vlan 200 -ifnum 1/2 -tagged -IPAddress 192.168.200.1 255.255.255.0
    
    bind vlan 102 –ifnum 1/1 –tagged –IPAddress 10.102.232.236 255.255.255.0
    
  3. Diameter タイプのサービスと仮想サーバーを構成し、サービスを仮想サーバーにバインドします。加入者 Gx インターフェイスパラメータの PCRF レルムと値を指定します。また、加入者セッション内でアプライアンスがサービスパス名を検索できる場所を示すサービスパス AVP も指定します。プライマリ PCEF 機能については、RADIUS リスナーサービスと RADIUS インターフェイスを設定し、インターフェイスタイプを「RadiusAndGx」と指定します。

    add service sd1 10.102.232.200 DIAMETER 3868
    
    add lb vserver vdiam DIAMETER 0.0.0.0 0 -persistenceType DIAMETER -persistAVPno 263
    
    bind lb vserver vdiam sd1
    
    set ns diameter -identity netscaler.sc1.net -realm pcrf1.net
    
    set extendedmemoryparam -memLimit 2558
    
    set subscriber gxInterface -vServer vdiam -pcrfRealm pcrf1.net
    
    set subscriber gxinterface -servicepathAVP 1001 1005 -servicepathVendorid 10415
    
    add service srad1 10.102.232.236 RADIUSListener 1813
    
    set subscriber radiusInterface -listeningService srad1
    
    set subscriber param -interfaceType RadiusAndGx
    
  4. 次のいずれかに該当する場合に適用されるデフォルトのサブスクライバプロファイル(*)を指定します。

    • PCRF には加入者情報がありません。
    • 加入者情報には、サービスパス AVP は含まれません。
    • アプライアンスは PCRF を照会できません。たとえば、PCRFを表すサービスはDOWNです。
    add subscriber profile * -subscriberrules default_path
    
  5. VAS および TCP 最適化パスの TCP プロファイルをそれぞれ作成します。VAS にステアリングされたトラフィックは、VAS からの送信前または送信後に TCP 最適化を行いません。したがって、VAS プロファイルの TCP モードは TRANSPARENT に設定し、TCPOpt プロファイルの TCP モードは ENDPOINT に設定する必要があります。

    add ns tcpProfile VAS –tcpMode TRANSPARENT

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

  6. VAS サーバの負荷分散を設定します。TCP タイプのアドレス指定不可能な仮想サーバーを作成します。VAS サーバの IP アドレスを使用して TCP サービスを作成し、サービスを仮想サーバにバインドします。仮想サーバおよびサービスは、VAS パス用に作成された透過的 TCP プロファイルを使用します。

    add service vas1 192.168.10.2 TCP * -usip YES -useproxyport NO -TCPB NO -tcpProfileName VAS
    
    add service vas2 192.168.10.3 TCP * -usip YES -useproxyport NO -TCPB NO -tcpProfileName VAS
    
    add lb vserver vs1 TCP -m MAC -l2Conn ON –tcpProfileName VAS
    
    bind lb vserver vs1 vas1
    
    bind lb vserver vs1 vas2
    
  7. 負荷分散仮想サーバを追加して、VAS 出力トラフィックをキャプチャします。この vserver は VAS 出力 VLAN を監視し、トランスペアレント TCP プロファイルを使用します。

    add lb vserver vsint TCP * * -Listenpolicy "CLIENT.VLAN.ID.EQ(20)" –Listenpriority 30 –l2Conn ON –tcpProfileName VAS
    
  8. 無線側 VLAN 内のトラフィックをリッスンし、TCP 最適化パス用に作成されたエンドポイント TCP プロファイルを使用する TCP 最適化仮想サーバを追加します。

    add lb vserver vs-TcpOpt TCP * * -Listenpolicy "client.vlan.id.eq(100)" –Listenpriority 20 -l2Conn ON -tcpProfileName TCPOpt
    
  9. コンテンツスイッチング(CS)設定を追加します。これには、仮想サーバ、ポリシー、および関連するアクションが含まれます。CS 仮想サーバは、トラフィックを受信し、定義された CS ポリシーに従って、適切な負荷分散仮想サーバにリダイレクトします。最高のプライオリティを持つワイヤレス側 VLAN 内のトラフィックをリッスンし、エンドポイント TCP プロファイルを使用する CS TCP 仮想サーバを作成します。加入者規則が「vas」である場合に TRUE と評価される CS ポリシーを作成し、トラフィックを VAS に誘導する CS アクションを指定します。TCP 最適化仮想サーバーをデフォルトの LB 仮想サーバーにします。ルールが「vas」以外のサブスクライバトラフィックは、デフォルトの LB vserver を通過します。

    add cs vserver cs1 TCP * * -Listenpolicy "client.vlan.id.eq(100)" –Listenpriority 10 -l2Conn ON –tcpProfileName TCPOpt
    
    add cs action csact1 -targetLBVserver vs1
    
    add cs policy cspol1 -rule  SUBSCRIBER.RULE_ACTIVE("vas") && SYS.VSERVER("vs1").STATE.EQ(UP)" -action csact1
    
    bind cs vserver cs1 -policyName cspol1
    
    bind cs vserver cs1 -lbvserver vs-TcpOpt
    
  10. インターネットに静的ルートまたはポリシーベースのルートを追加します。この設定では、ダイナミックルーティングもサポートされます。次の例では、ポリシーベースのルートを使用します。

    add ns pbr pbr-vlan100-to-vlan200 ALLOW -nextHop 192.168.200.10 -vlan 100 -priority 10
    
    add ns pbr pbr-vlan20-to-vlan200 ALLOW -nextHop 192.168.200.10 -vlan 20 -priority 11
    
    apply ns pbrs
    

  • CS ポリシーには、サブスクライバ表現に加えて、IP アドレスとポート番号を含めることができます。たとえば、サブスクライバ.ルール_アクティブ (「バス」) && & (クライアント.TCP.DSTPORT.EQ (80) || クライアント.TCP.DSTPORT.EQ (443) です。また、HTTP ベースの式を含めることもできます。たとえば、HTTP.REQ.HOSTNAME.DOMAIN.EQ (「somedomain.com」) などです。この場合、TCP エンティティ (vserver、サービスなど) を HTTP に置き換えます。TCP プロファイル設定は変わりません。
  • IPv6 サブスクライバをサポートする IPv6 構成(アドレス、ルート、PBR)を追加します。Happy Eyeballのクライアントアプリケーションは、VASとTCPの両方の最適化パスに対してスムーズに動作します。
  • VLAN、IP アドレス、PBR、および LB 仮想サーバを VAS(vs1、vs2 など)の前に追加して、複数のサブスクライバフローをサポートします。CS 仮想サーバ「cs1」および LB 仮想サーバ「vsint」のリッスンポリシーを変更して、追加の VLAN を含めます。

TCP 最適化によるサブスクライバ認識トラフィックステアリング