{"action":"created","issue":{"url":"https://api.github.com/repos/sysapps/tcp-udp-sockets/issues/80","labels_url":"https://api.github.com/repos/sysapps/tcp-udp-sockets/issues/80/labels{/name}","comments_url":"https://api.github.com/repos/sysapps/tcp-udp-sockets/issues/80/comments","events_url":"https://api.github.com/repos/sysapps/tcp-udp-sockets/issues/80/events","html_url":"https://github.com/sysapps/tcp-udp-sockets/issues/80","id":47629608,"number":80,"title":"Controlling TCP Keepalive","user":{"login":"asutherland","id":212206,"avatar_url":"https://avatars.githubusercontent.com/u/212206?v=3","gravatar_id":"","url":"https://api.github.com/users/asutherland","html_url":"https://github.com/asutherland","followers_url":"https://api.github.com/users/asutherland/followers","following_url":"https://api.github.com/users/asutherland/following{/other_user}","gists_url":"https://api.github.com/users/asutherland/gists{/gist_id}","starred_url":"https://api.github.com/users/asutherland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/asutherland/subscriptions","organizations_url":"https://api.github.com/users/asutherland/orgs","repos_url":"https://api.github.com/users/asutherland/repos","events_url":"https://api.github.com/users/asutherland/events{/privacy}","received_events_url":"https://api.github.com/users/asutherland/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":13,"created_at":"2014-11-03T18:53:42Z","updated_at":"2015-02-16T11:15:33Z","closed_at":null,"body":"https://github.com/sysapps/tcp-udp-sockets/blob/27dfc6fb82aa39d2d8edb97f0ecf6380f20557ad/oldBerkeleyStyleVersion/index.html#L411 included support for setting a TCP keepalive timeout, but the new streams draft does not seem to cover this.\r\n\r\nIt's worth noting that the Linux TCP stack actually has 3 knobs (do man 7 tcp and search on the things at the start of the bullet point for the /proc interfaces and the things in parens at the end for the TCP socket options):\r\n- tcp_keepalive_time: How long the connection has to have been idle in seconds. (TCP_KEEPIDLE)\r\n- tcp_keepalive_probes: How many probes to send out without having heard anything before we assume the other side is dead. (TCP_KEEPCNT)\r\n- tcp_keepalive_intvl: At what interval do we send those probes?  It's not clear if this is also intended to be the amount of time we should wait for the ping to come back or not. (TCP_KEEPINTVL)\r\n"},"comment":{"url":"https://api.github.com/repos/sysapps/tcp-udp-sockets/issues/comments/74493186","html_url":"https://github.com/sysapps/tcp-udp-sockets/issues/80#issuecomment-74493186","issue_url":"https://api.github.com/repos/sysapps/tcp-udp-sockets/issues/80","id":74493186,"user":{"login":"asutherland","id":212206,"avatar_url":"https://avatars.githubusercontent.com/u/212206?v=3","gravatar_id":"","url":"https://api.github.com/users/asutherland","html_url":"https://github.com/asutherland","followers_url":"https://api.github.com/users/asutherland/followers","following_url":"https://api.github.com/users/asutherland/following{/other_user}","gists_url":"https://api.github.com/users/asutherland/gists{/gist_id}","starred_url":"https://api.github.com/users/asutherland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/asutherland/subscriptions","organizations_url":"https://api.github.com/users/asutherland/orgs","repos_url":"https://api.github.com/users/asutherland/repos","events_url":"https://api.github.com/users/asutherland/events{/privacy}","received_events_url":"https://api.github.com/users/asutherland/received_events","type":"User","site_admin":false},"created_at":"2015-02-16T11:15:32Z","updated_at":"2015-02-16T11:15:32Z","body":"Sounds great."}}