ADC

パターンセットとデータセット

多数の文字列パターンに対する文字列照合操作のポリシー式は、長くて複雑になる傾向があります。このような複雑な式の評価によって消費されるリソースは、処理サイクル、メモリ、および構成サイズの点で重要です。パターンマッチングを使用すると、より単純でリソース消費の少ない式を作成できます。

照合するパターンのタイプに応じて、次のいずれかの機能を使用してパターンマッチングを実装できます。

  • パターンセットは、デフォルトの構文ポリシー評価時に文字列マッチングに使用されるインデックス付きパターンの配列です。パターンセットの例:イメージタイプ {svg、bmp、PNG、GIF、tiff、jpg}。
  • データセットは、パターンセットの特殊な形式です。これは、型数(整数)、IPv4アドレス、またはIPv6アドレスのパターンの配列です。

patsetdatasetの違いは、datasetでは境界条件を比較する点です。たとえば、入力文字列が1.1.1.11で、1.1.1.1パターンがIPv4 タイプのpatsetdatasetにバインドされていると仮定すると、リクエストにIPアドレスが存在するかどうかを確認するようにpatsetとデータセットが設定されます。 評価後、patsetは入力に 1.1.1.1 が存在するが、dataset評価が falseであることを返します。これは、IP アドレスが他の IP アドレスの一部ではない境界チェックインが原因です。つまり、束縛されたパターンの後には整数があってはならないということです。

多くの場合、パターンセットとデータセットのどちらでも使用できます。ただし、数値データまたは IPv4 アドレスと IPv6 アドレスに特定の一致が必要な場合は、データセットを使用する必要があります。

注:

  • パターンセットとデータセットは、デフォルトの構文ポリシーでのみ使用できます。
  • リリース 13.1 ビルド 42.x 以降では、50000 個のパターンをパターンセットにバインドできます。パターンセットファイルでは、パターンセットにバインドできるパターンは 10000 個だけです。また、パターンセットをストリーミングで使用する場合、そのパターンセットにバインドできるパターンは 5000 個だけです。ストリーミング用のパターンセットは、リライトアクションの検索パラメータ、HTTP 本文、または TCP ペイロードベースの式で使用されます。
パターンセットとデータセット

この記事の概要