ADC

パケットレベルでレート制限を設定する

ストリームセレクタとレスポンダポリシーを設定して、セレクタによって識別されるすべての接続を通過するパケットレベルで統計情報を収集できます。1 秒あたりのパケット数が、設定されたしきい値を超えると、ポリシーは設定されたアクション(RESET または DROP)を適用します。これらのポリシーは、すべてのタイプの仮想サーバに対して構成できます。すべてのサイズのパケットが考慮されます。

パケットレベルでレート制限を設定するには、次の作業を実行します

  1. 負荷分散を有効にする
  2. ストリームセレクターを追加する
  3. ストリーム識別子の追加
  4. レスポンダーポリシーの追加
  5. 負荷分散仮想サーバの追加
  6. レスポンダーポリシーのバインド

負荷分散機能を有効にするには

コマンドプロンプトで入力します。

enable ns feature lb
<!--NeedCopy-->

ストリームセレクターを追加するには

コマンドプロンプトで入力します。

add stream selector packetlimitselector client.ip.src client.tcp.srcport client.ip.dst client.tcp.dstport
<!--NeedCopy-->

ストリーム ID を追加するには

コマンドプロンプトで入力します。

add stream identifier packetlimitidentifier packetlimitselector -interval 1
<!--NeedCopy-->

ACK のみのパケットのトラッキングを有効にするには

コマンドプロンプトで入力します。

set stream identifier packetlimitidentifier –trackAckOnlyPackets ENABLED
<!--NeedCopy-->

レスポンダーポリシーを追加するには

コマンドプロンプトで入力します。

add responder policy packet_rate_sessionpolicy "ANALYTICS.STREAM("packetlimitidentifier").COLLECT_STATS("PACKET_LIMIT", <max_threshold_PPS>, ACTION, 0/1)" NOOP
<!--NeedCopy-->

各項目の意味は次のとおりです。

  • <max_threshold_PPS>は、接続を通過できる 1 秒あたりの最大パケット数です。
  • ACTION は、ドロップまたはリセットが可能です。
  • 0 または 1 は制限タイプを表し、0 は BURSTY 制限タイプ、1 は SMOOTH 制限タイプを表します。

例:

add responder policy packet_rate_sessionpolicy "ANALYTICS.STREAM("packetlimitidentifier").COLLECT_STATS("PACKET_LIMIT", 40, RESET, 0)" NOOP
<!--NeedCopy-->

負荷分散仮想サーバーを追加するには

コマンドプロンプトで入力します。

add lb vserver <name> <serviceType> <ip> <port>

add lb vserver Vserver-lb-1 HTTP 10.102.20.200 80
<!--NeedCopy-->

レスポンダーポリシーをバインドするには

セレクタとレスポンダポリシーを構成したら、ポリシーをグローバルにバインドすることも、特定の仮想サーバにバインドすることもできます。

コマンドプロンプトで、次のいずれかのコマンドを入力します。

bind responder global <policyName> <priority> [<gotoPriorityExpression>] [-type <type>] [-invoke  (<labelType>  <labelName>) ]
<!--NeedCopy-->

または

bind lb vserver <name>@  (-policyName <string>@ [-priority <positive_integer>]
<!--NeedCopy-->

例:

bind responder global packet_rate_sessionpolicy 101 END -type REQ_DEFAULT

bind responder global packet_rate_sessionpolicy 102 END -type

bind lb vserver v1 -policyname packet_rate_sessionpolicy -priority 10
<!--NeedCopy-->
パケットレベルでレート制限を設定する