Adrien
Adrien

Reputation: 1207

Detecting if a peer is using TCP keepalives (Windows)

is it possible to figure out, or be notified if a peer to whom you are connected is using TCP keepalives?

Furthermore to be notified when a keepalive is sent?

Without resorting to packet-level filtering in a kernel driver?

We have a plug proxy, and a customer wishes client keepalives to be forwarded to the server. At the moment our best option I think is just to allow setting keepalives on the server-side connection, but I wanted to check if anyone knew a way to detect what the client behaviour was so that relaying of keepalives could be more closely approximated.

Thanks.

Upvotes: 1

Views: 302

Answers (1)

user207421
user207421

Reputation: 310957

it possible to figure out, or be notified if a peer to whom you are connected is using TCP keepalives?

No. TCP keepalive doesn't use a protocol extension. It just uses the existing protocol in a specific way so as to provoke a response.

Furthermore to be notified when a keepalive is sent?

No. A TCP keepalive segment cannot be identified as such.

Without resorting to packet-level filtering in a kernel driver?

Not even if you do.

We have a plug proxy, and a customer wishes client keepalives to be forwarded to the server.

Your customer is misinformed.

At the moment our best option I think is just to allow setting keepalives on the server-side connection

Correct.

but I wanted to check if anyone knew a way to detect what the client behaviour was so that relaying of keepalives could be more closely approximated.

Not possible.

Upvotes: 1

Related Questions