C++のコードで、ソケット通信のkeepalive設定方法が、雑魚の私には全然わからぬ状態だった。
どうやら、tcp_keepalive構造体とWSAIoctlで設定できるらしい、ということまでは分かった。
そうだ!とりあえず、Microsoftさんの見解を!!!

WSAIoctl function(Windows)
https://msdn.microsoft.com/en-us/library/windows/desktop/ms741621(v=vs.85).aspx

(´;ω;`)英語わからん。
いやおちつけ、まだなんかあるぞ。

SIO_KEEPALIVE_VALS control code
https://msdn.microsoft.com/en-us/library/windows/desktop/dd877220(v=vs.85).aspx

(´;ω;`)

何はともあれ、値は適当だけど、必要最低限以下でいけるっぽい。

****************************************************************************************************
#include <Mstcpip.h>        //struct tcp_keepalive を使用するため

SOCKET mySock;
tcp_keepalive tcpKeepalive;
DWORD dReturn;

 tcpKeepalive.onoff = 1;                            // 0 以外ならオンになるみたい
 tcpKeepalive.keepalivetime = 20000;      // 最初にkeepaliveを送るまでの時間(ms)
 tcpKeepalive.keepaliveinterval = 1000;   // keepaliveを送る間隔(ms)
 WSAIoctl(*mySock , SIO_KEEPALIVE_VALS, &tcpKeepalive, sizeof(tcpKeepalive), NULL, 0, &dReturn, NULL, NULL);

***************************************************************************************************

なんでタグを埋め込まなかって?めんどくさいからさ!!!
(はてなブログのほうがHTML編集する気が起きたな・・・)