ADC
ご意見をお寄せいただきありがとうございました

この記事は機械翻訳されています.免責事項

ユーザーまたはクライアントデバイスあたりの帯域幅消費を制限する方法

Web サイト、アプリケーション、またはファイルホスティングサービスには、すべてのユーザーにサービスを提供するために利用可能な有限なネットワークリソースとサーバーリソースがあります。最も重要なリソースの 1 つは帯域幅です。ユーザベースのサブセットだけが帯域幅を大幅に消費すると、ネットワークの輻輳が発生し、他のユーザに対するリソースのアベイラビリティが低下する可能性があります。ネットワークの輻輳を防ぐために、要求に至るまでの一定の期間にわたって事前設定された帯域幅値を超えた場合、HTML ページを使用してクライアント要求に応答するなど、一時的なサービス拒否技術を使用して、クライアントの帯域幅消費を制限する必要があります。

一般に、帯域幅の消費量は、クライアントデバイスごとまたはユーザーごとに調整できます。このユースケースは、1 時間にわたってクライアントあたりの帯域幅消費を 100 MB に制限する方法を示しています。また、このユースケースは、ユーザー名を提供するカスタムヘッダーを使用して、1 時間にわたって 100 MB にユーザーあたりの帯域幅消費を規制する方法を示しています。どちらの場合も、1 時間の移動期間における帯域幅消費の追跡は、ストリーム識別子の interval パラメータを 60 分に設定することで実現されます。また、このユースケースでは、制限を超えたクライアントに送信する HTML ページをインポートする方法も示します。HTML ページをインポートすると、これらのユースケースでのレスポンダーアクションの設定が簡素化されるだけでなく、同じレスポンダーを必要とするレスポンダーアクションの設定も簡素化されます。

コマンドラインインターフェイスを使用して、ユーザーまたはクライアントデバイスあたりの帯域幅消費を制限するには

コマンドラインインターフェイスで次のタスクを実行して、クライアントまたはユーザーの帯域幅消費を制限するためのアクション分析を構成します。各ステップには、サンプルコマンドとその出力が含まれています。

  1. 負荷分散構成を設定します。負荷分散仮想サーバーmysitevipを構成し、必要なすべてのサービスを構成します。サービスを仮想サーバにバインドします。次の例では、10 個のサービスを作成し、そのサービスを mysitevip にバインドします。

    > add lb vserver mysitevip HTTP 192.0.2.17 80 Done > add service service[1-10] 192.0.2.[240-249] HTTP 80 service "service1" added service "service2" added service "service3" added . . . service "service10" added Done > bind lb vserver vserver1 service[1-10] service "service1" bound service "service2" bound service "service3" bound . . . service "service10" bound Done
  2. ストリームセレクタを設定します。次のストリームセレクタのいずれかを設定します。

    • クライアントごとの帯域幅消費を制限するには、クライアント IP アドレスを識別するストリームセレクタを設定します。

      > add stream selector myselector CLIENT.IP.SRC Done
    • ユーザー名を提供する要求ヘッダーの値に基づいてユーザーごとの帯域幅消費を制限するには、ヘッダーを識別するストリームセレクタを設定します。次の例では、ヘッダーの名前は UserHeader です。

      > add stream selector myselector HTTP.REQ.HEADER(“UserHeader”) Done
  3. ストリーム識別子を設定します。ストリームセレクタを使用するストリーム識別子を設定します。間隔パラメータを 60 分に設定します。

    > add stream identifier myidentifier myselector -interval 60 -sampleCount 1 -sort BANDWIDTH Done
  4. レスポンダアクションを設定します。帯域幅消費制限を超えたユーザーまたはクライアントに送信する HTML ページをインポートし、レスポンダーのアクションの crossed_limits でページを使用します。

    > import responder htmlpage http://.1.1.1/stdpages/wait.html crossed-limits.html This operation may take some time, Please wait... Done > add responder action crossed_limits respondwithhtmlpage crossed-limits.html Done
  5. レスポンダポリシーを設定します。レスポンダーポリシー myrespol1 を ANALYTICS.STREAM (「myidentifier」) .COLLECT_STATS とアクション NOOP を使用して構成します。次に、クライアントまたはユーザーが 100 MB の制限を超えたかどうかを判断するポリシー myrespol2 を構成します。ポリシー myrespol2 は、レスポンダアクション crossed_limits を使用して設定されます。

    > add responder policy myrespol1 'ANALYTICS.STREAM("myidentifier").COLLECT_STATS' NOOP Done > add responder policy myrespol2 'ANALYTICS.STREAM("myidentifier").BANDWIDTH.GT(104857600)' crossed_limits Done
  6. レスポンダポリシーをロードバランシング仮想サーバにバインドします。統計データのみを収集するポリシー myrespol1 は、優先順位が高く、GOTO 式を NEXT にする必要があります。

    > bind lb vserver mysitevip -policyName myrespol1 -priority 1 -gotoPriorityExpression NEXT Done > bind lb vserver mysitevip -policyName myrespol2 -priority 2 -gotoPriorityExpression END Done
  7. 構成をテストします。複数のクライアントまたはユーザからのテスト HTTP 要求をロードバランシング仮想サーバに送信し、stat stream identifier コマンドを使用して、指定された ID について収集された統計情報を表示することにより、設定をテストします。次の出力は、クライアントの統計を表示します。

    > stat stream identifier myidentifier -sortBy BandW –fullValues Stream Session statistics Req BandW 192.0.2.30 5000 3761 192.0.2.31 29 2602 192.0.2.32 25 51 RspTime Conn 192.0.2.30 2 0 192.0.2.31 0 0 192.0.2.32 0 0 Done >
このコンテンツの正式なバージョンは英語で提供されています。Cloud Software Groupドキュメントのコンテンツの一部は、お客様の利便性のみを目的として機械翻訳されています。Cloud Software Groupは機械翻訳されたコンテンツを管理していないため、誤り、不正確な情報、不適切な用語が含まれる場合があります。英語の原文から他言語への翻訳について、精度、信頼性、適合性、正確性、またはお使いのCloud Software Group製品またはサービスと機械翻訳されたコンテンツとの整合性に関する保証、該当するライセンス契約書またはサービス利用規約、あるいはCloud Software Groupとのその他すべての契約に基づき提供される保証、および製品またはサービスのドキュメントとの一致に関する保証は、明示的か黙示的かを問わず、かかるドキュメントの機械翻訳された範囲には適用されないものとします。機械翻訳されたコンテンツの使用に起因する損害または問題について、Cloud Software Groupは責任を負わないものとします。
ユーザーまたはクライアントデバイスあたりの帯域幅消費を制限する方法