分類:[C#]
●環境
・サーバ側
Win2012R2
.NETFramework3.5
C#
WindowsFormアプリ
・クライアント側
特殊端末
独自言語
●状況
クライアントとサーバはUDPのユニキャストにて通信をおこなっており
サーバはクライアントからのUDPによるリクエストに応答する形で
レスポンスを返す仕組みになっています。
通常は問題なく通信できているのですが、
一度、リクエストとレスポンスのやりとりを行ってから
3分程度放置した後に
リクエストすると、一時的にレスポンスを返さない現象が発生します。
原因を追究したところ、
クライアントとサーバ間にパケットをフィルタする機能を持つ機器が
つながっており、下記のサーバからのブロードキャストを
ブロックしていました。
NBNS
LLMNR
どうやら、定期的に上記ブロードキャストをサーバが送信しているようで
これをブロックすると現象が発生するようです。
ちなみに
こちらを通すように設定したところ、現象は改善しました。
サーバ側アプリからは明示的にブロードキャストは送信していません。
●質問内容
どうしてこのブロードキャストが
サーバの応答に関係しているのかわかりません。
UDPの仕様なのでしょうか?
.NETFramework3.5の仕様なのでしょうか?
どなたか、アドバイスいただけますと幸いです。
|