メールクライアントに Outlookシリーズを使用するときはIMAP4のIDLE命令とBroadcastフラグを無効設定にすることを推奨
メールクライアントに Outlook 2010/2013 などの Microsoft Office Outlook シリーズを使用してIMAP4サービスを利用するとき、特に負荷が高まりやすい大規模環境では、できれば E-Post IMAP4サービス側でIDLE命令とBroadcastフラグの2つを無効に設定することをお薦めします。その理由は下記の通りです。
過去にあったユーザー様からのご報告で、Outlookシリーズでの特有の現象として、以下のような現象が発生したことがあり、結果的にそれぞれE-Post側でいろいろな対応策や防止策を取った経緯があります。
現行の最新モジュールにはそれらの対応機能はすべて含まれております。
設定しないでデフォルトで対応が施されているもの、設定が必要なものがあります。
IDLE命令に関するもの
Outlook側が一つのセッションでIDLE命令を出すだけでなく、勝手にセッションを増やし続け、無尽蔵にセッションを増やしてSocketの上限まで増やすことにより、Outlook側で同期中メッセージのまま、IMAP受信できなくなることが多発しました。
これを受けてE-Post側で取った対策は次の内容です。
→Outlook側からIDLE命令を出し増やしたセッションに対し、E-Post側で無通信のセッションをタイムアウトデフォルト:30分 で切断するようにしその時間を変更できるようにした。
[メール作業フォルダ] (既定値 /var/spool/epms/)
→reg
→epost
→ims
→EPST5IMAP4S
→IDLETimeout.1
→E-Post側でIDLE命令を無効に設定できるようにした。
[メール作業フォルダ] (既定値 /var/spool/epms/)
→reg
→epost
→ims
→EPST5IMAP4S
→IDLECmd.1
→IDLE命令実施中の監視間隔 デフォルト:5秒 を変更できるようにした。
[メール作業フォルダ] (既定値 /var/spool/epms/)
→reg
→epost
→ims
→EPST5IMAP4S
→IDLELoop.1
→IDLE命令使用時に利用されるBroadcastフラグを無効に設定できるようにした。
[メール作業フォルダ] (既定値 /var/spool/epms/)
→reg
→epost
→ims
→EPST5IMAP4S
→Broadcast.1
NOOP命令に関するもの
Outlook2013側から発せられるNOOP命令に対して、E-Postからフォルダポーリングの状態を逐一応答して返していると、突如としてOutlook 2013側がNOOP命令を異常に連続発信させることが多発しました。NOOP命令の頻度は異常で1秒間の間に平均6.4回もNOOP命令が突然大量に発信される現象となり、あたかも攻撃のようになってサーバに過負荷状態を引き起こす事象が判明したことがあります。
→E-Post側でNOOP命令のポーリングに対し無効にするオプションを設け、有効時でもフォルダポーリング実行をフォルダ内に変化・変更があった場合のみに限ってデフォルト有効とした。これによりOutlook 2013側からNOOP命令を頻発することがなくなる。
[メール作業フォルダ] (既定値 /var/spool/epms/)
→reg
→epost
→ims
→EPST5IMAP4S
→NOOPPoll.1
NOOP命令内でのフォルダポーリング実行の有無 0:Disable, 1:Enable (デフォルト:1)
IMAP4でメールクライアントにOutlookシリーズを使用している環境では、弊社サポートから提案として、上記 2.e であげたNOOP命令のポーリングは有効なまま、上記 1.b と 1.d であげたIDLE命令と同時に不要になるBroadcastフラグの2つを無効に設定することを推奨 します。
これによりOutlook側が不用意にIDLE命令を発信し、かつ無尽蔵にセッションを増やし続けるのを防止・抑止できるほか、負荷が高まりやすい大規模環境では、メールサーバの負荷軽減に役立ちます。一方、NOOP命令のポーリングは有効のままになっていますので、Outlookでのメールの新着チェックなどは問題なく行われます。
IDLE命令とBroadcastフラグを無効に設定するには、下記の設定ファイル値を作成します。
変更後は、epstimap4dの再起動が必要です。
[メール作業フォルダ] (既定値 /var/spool/epms/)
→reg
→epost
→ims
→EPST5IMAP4S
→IDLECmd.1
(数値 Default 1) 0:Disable, 1:Enable
IDLE命令の有効/無効オプション
[メール作業フォルダ] (既定値 /var/spool/epms/)
→reg
→epost
→ims
→EPST5IMAP4S
→Broadcast.1
(数値 Default 1) 0:Disable, 1:Enable
同一フォルダの操作情報を接続中の各セッションに同報する
Broadcastフラグの有効/無効オプション