0


1

ウィンドウはアイドル状態のソケットを閉じますか? 私がWindowsサーバー上のサービスに接続しているクライアントであれば、Windowsサーバーが一定のアイドル時間の後に接続を閉じる可能性はありますか?

もしそうなら、どのようにこの振る舞いを変更するか、あるいは少なくともアイドル時間の値を変更するか?

前もって感謝します。

3 Answer


1


動作はSO_KEEPALIVEソケットオプションによって異なります。 これについては MSDNページを参照してください。]さらに掘り下げた後、WSAIoctlとhttpを使用してKEEPALIVEセマンティクスを調整できます。 //msdn.microsoft.com/en-us/library/dd877220(VS.85).aspx[SIO_KEEPALIVE_VALS制御コード]。

両端を制御するのであれば、SO_KEEPALIVEに頼るのではなく、クライアントとサーバー間の通信に使用されるプロトコルの一部としてキープアライブメッセージを実装するほうが通常は良いことがわかります。


0


私はそれがプロトコル、実装、そしておそらくサーバー設定に依存すると想像するでしょう。

http://www.chiark.greenend.org.uk/~sgtatham/putty / [PuTTY]には、定期的にnullパケットをサーバーに送信することでSSHセッションのタイムアウトを防ぐオプションがあります - これは単にnoパケットのあるパケットだと思います実際のペイロード おそらくあなたはこのようなものを実装することができますか?


0


http://msdn.microsoft.com/ja-jp/library/dd877220%28VS.85%29.aspx[MSDN]で、デフォルトのキープアライブタイムアウトが2時間に設定されていることがわかります。  http://msdn.microsoft.com/ja-jp/library/ms740476%28VS.85%29.aspx[setsockopt/SO_SNDTIMEO/getsockopt]を使用してこれを操作できます。