Skip to content

Flapping Detect 設定

EMQXにおけるフラッピングとは、MQTTクライアントが短時間にブローカーへ頻繁に接続と切断を繰り返す状況を指します。フラッピング検出機能は、フラッピングしているクライアントを検知し、そのクライアントの接続を切断するための仕組みです。

例えば、1分間に15回の接続試行を行ったクライアントをフラッピングクライアントとしてマークし、検出されたクライアントを5分間EMQXへの接続禁止にしたい場合は、以下のコードのように設定します。

bash
flapping_detect {
  enable = true
  max_count  =  15
  window_time  =  1m
  ban_time  =  5m
}

ここで、

  • max_count は、指定した時間ウィンドウ(window_timeで定義)内でクライアントから許容される最大接続試行回数を設定します。
  • window_time は、クライアントの接続試行回数をカウントする時間ウィンドウを設定します。
  • ban_time は、フラッピングと検出されたクライアントがEMQXへの接続を禁止される期間を設定します。

TIP

ダッシュボードの左側ナビゲーションメニューから アクセス制御 -> Flapping Detect をクリックすることで、設定をカスタマイズすることも可能です。ダッシュボードで設定した内容は、設定ファイルの同じ項目より優先されます。

TIP

EMQXはより詳細なカスタマイズに対応する設定項目も提供しています。詳しくはEMQX Enterprise Configuration Manual for Enterpriseをご参照ください。