Patent ID: 7978630

Claim:
A method for maintaining a connection between a first host and a second host in a multi-hop network having a network element configured to release the connection after a certain time period of inactivity, an air interface, and at least one node, wherein the network element and the at least one node are disposed between the first host and the second host and the air interface is disposed between the network element and the second host, the method comprising: determining a first node in which a keep-alive data packet will terminate after crossing the network element configured to release the connection after a certain time period of inactivity; and sending a keep-alive data packet from the first host toward the second host, wherein the keep-alive data packet is configured to terminate in the first node after crossing the network element configured to release the connection, wherein the step of determining the first node in which the keep-alive data packet will terminate after crossing the network element configured to release the connection after a period of inactivity comprises: sending a first message to the second host, the first message having a time-to-live (TTL) value at least equal to the number of hops required to send a data packet from the first host to the second host; providing a keep-alive data packet having a decremented TTL value, the decremented TTL value being less than the number of hops (H) in the network; sending a message with the decremented TTL value toward the second host; sending a second message to the second host, the second message having a TTL value at least equal to the number of hops required to send a data packet from the first host to the second host; and determining if the second message reached the second host, wherein upon a determination that the second message sent to the second host did not reach the second host, the first host determines the TTL value (TTL NAT ) for the last message to cross the network element configured to release the connection after a period of inactivity; the second host reconnects to the first host, and the first host sends a keep-alive data packet toward the second host having a TTL value of TTL NAT , wherein the keep-alive data packet having a TTL value of TTL NAT is sent at a time interval that is less than the time period of inactivity for which the connection would be released, and wherein the keep-alive data packet having a TTL value of TTL NAT crosses the network element configured to release the connection but does not cross the air interface.