例:ポリサーを使用したオーバーサブスクリプションの管理
インターフェイスの加入過剰時にポリサーを使用し、輻輳が発生した場合の処理を制御できます。たとえば、次に示すように、サーバーがスイッチに接続されている 表 1場合があります。
サーバー タイプ |
つながる |
IP アドレス |
---|---|---|
ネットワーク・アプリケーション・サーバー |
1ギガビット インターフェイス |
10.0.0.1 |
認証サーバー |
1ギガビット インターフェイス |
10.0.0.2 |
データベース サーバー |
10ギガビット インターフェイス |
10.0.0.3 |
この例では、ネットワーク・アプリケーション・サーバーが提供するサービスにユーザーがアクセスし、必要に応じてデータベース・サーバーに情報を要求します。ユーザーから要求を受信すると、ネットワーク アプリケーション サーバーは最初に認証サーバーに接続してユーザーの資格情報を検証します。ユーザーが認証され、ネットワーク・アプリケーション・サーバーが要求されたサービスを提供する場合、データベース・サーバーからアプリケーション・サーバーに送信されるすべてのパケットは、アプリケーション・サーバーに接続された1ギガビット・イーサネット・インターフェースを 2 回、イングレスからアプリケーション・サーバーに 1 回、ユーザーに送信する必要があります。
ユーザー セッションのイベントのシーケンスは次のとおりです。
ユーザーがアプリケーション・サーバーに接続し、サービスを要求します。
アプリケーション サーバーは、ユーザーの資格情報を要求し、認証サーバーに中継します。
認証サーバーが認証情報を確認すると、アプリケーション・サーバーは要求されたサービスを開始します。
アプリケーション・サーバーは、データベース・サーバーからのユーザーの要求を満たすために必要なファイルを要求します。
データベース・サーバーは、要求されたファイルをアプリケーション・サーバーに送信します。
アプリケーション・サーバーは、要求されたファイルをユーザーへの応答に含めます。
データベース・サーバーからアプリケーション・サーバーへのトラフィックは、アプリケーション・サーバーが接続されている 1 ギガビット・インターフェースを輻輳させる可能性があります。この輻輳により、サーバーがユーザーからの要求に応答し、新しいセッションを作成できなくなる可能性があります。ポリシングを使用して、これが発生しないことを確認できます。
このファイアウォール構成を作成するには、データベース サーバーで次の手順を実行します。
特定の制限を超えた場合に、データベース サーバーからアプリケーション サーバーにトラフィックをドロップするポリサーを作成します。
[edit firewall] user@switch# set policer Database-Egress-Policer if-exceeding bandwidth-limit 400 burst-size-limit 500m user@switch# set policer Database-Egress-Policer then discard
データベース サーバーからアプリケーション サーバーへのトラフィックを調べるフィルターを作成します。
[edit firewall] user@switch# edit family inet filter Database-Egress-Filter
フィルターを設定して、データベース サーバーを送信するトラフィックにポリサーを適用し、アプリケーション サーバーを宛先に設定します。
[edit firewall family inet filter Database-Egress-Filter] user@switch# set term term-1 from destination-address 10.0.0.1 user@switch# set term term-1 then policer Database-Egress-Policer
必要に応じて、データベース サーバーから他の宛先へのトラフィックを許可する条件を設定します(それ以外の場合、トラフィックは暗黙的な拒否ステートメントによって破棄されます)。
[edit firewall family inet filter Database-Egress-Filter] user@switch# set term term-2 then accept
ステートメントを
from
省略すると、条件はすべてのパケットに一致します。これは望ましい動作であることに注意してください。アプリケーション・サーバーに接続されているデータベース・サーバー・インターフェースに出力フィルターとしてエグレス・フィルターをインストールします。
[edit interfaces] user@switch# set xe-0/0/3 unit 0 family inet filter output Database-Egress-Filter
最終的な設定の表示方法を次に示します。
firewall { policer Database-Egress-Policer { if-exceeding { bandwidth-limit 400; burst-size-limit 500m; } then discard; } family inet { filter Database-Egress-Filter { term term-1 { from { destination-address { 10.0.0.1/24; } } then policer Database-Egress-Policer; } term term-2 { # If required, include this term so that traffic from the database server to other destinations is allowed. then accept; } } } ]