Cedric,

Not that I know of on either a Service or Operation.  I know other engines have this capability, but not all socket based connections can handle a keep-alive.

What's wrong with disconnecting as long as both the client and the server have the appropriate settings?

If you are the client (Operation), set the "Stay connected" to say 3600 seconds. The Operation will send a disconnect packet to the server side after 1 hours of idle time. The serer side will show as disconnected during idle traffic.  I typically have applications I connect to set their side to some number greater than what I have set such s 3800 seconds.  In case our disconnect packet is somehow lost, it allows for their side to start listening for a new connection after their idle time and also send a tcp RST packet.  

If you are the server (Service),  set the "OS Accept Connection Queue Size" to 0, set the "stay connected" to say 1800 seconds.   The service will send a tcp RST after 30 minutes of idle time disconnecting from the client and will start listening on a new connection. 

This type of configuration allows for the interfaces to essentially be "self correcting" and not need the bouncing of interfaces to get them to reconnect.

Just my $0.02.

Chuck