diff --git a/lib/cosmos/streams/tcpip_client_stream.rb b/lib/cosmos/streams/tcpip_client_stream.rb index 63d09cdfd..422ad007f 100644 --- a/lib/cosmos/streams/tcpip_client_stream.rb +++ b/lib/cosmos/streams/tcpip_client_stream.rb @@ -55,6 +55,8 @@ def initialize(hostname, write_port, read_port, write_timeout, read_timeout, con if @write_addr write_socket = Socket.new(Socket::AF_INET, Socket::SOCK_STREAM, 0) write_socket.setsockopt(Socket::IPPROTO_TCP, Socket::TCP_NODELAY, 1) + write_socket.setsockopt(Socket::SOL_SOCKET, Socket::SO_KEEPALIVE, true) + write_socket.setsockopt(Socket::SOL_TCP, Socket::TCP_KEEPCNT, 7200) end read_socket = nil @@ -62,6 +64,8 @@ def initialize(hostname, write_port, read_port, write_timeout, read_timeout, con if @write_port != @read_port read_socket = Socket.new(Socket::AF_INET, Socket::SOCK_STREAM, 0) read_socket.setsockopt(Socket::IPPROTO_TCP, Socket::TCP_NODELAY, 1) + read_socket.setsockopt(Socket::SOL_SOCKET, Socket::SO_KEEPALIVE, true) + read_socket.setsockopt(Socket::SOL_TCP, Socket::TCP_KEEPCNT, 7200) else read_socket = write_socket end