Patent ID: 7523197

Claim:
A computer-implemented method comprising: receiving, at a server, a registration request from a client; identifying a source address included in the registration request that corresponds to the client; extracting a protocol layer address from the registration request that is included in the registration request's protocol layer information; comparing the source address with the protocol layer address; determining whether a network address translator is included in the network connection between the server and the client based upon comparing the source address with the protocol layer address; providing a discovery poll interval to the client in response to receiving the registration request, the discovery poll interval associated with a time that messages are sent between the server and the client in order to maintain a network connection on a computer network between the server and the client; detecting, after the providing, that the discovery poll interval should be adjusted; adjusting the discovery poll interval in response to the detecting, the adjusting comprising steps of: in response to determining that the network address translator is not included in the network connection between the server and the client, the method further comprises steps of: receiving a heartbeat message from the client at the server; determining, at the server, that a heartbeat source address included in the heartbeat message is different than the source address included in the registration request; and decrementing the discovery poll interval in response to determining that the heartbeat source address is different than the source address included in the registration request; providing the adjusted discovery poll interval to the client; determining that the adjusted discovery poll interval minimizes the amount of the messages that are sent between the server and the client while maintaining the network connection, the determining resulting in an optimum heartbeat interval; and in response to determining that the adjusted discovery poll interval minimizes the amount of the messages that are sent between the server and the client while maintaining the network connection, receiving the heartbeat message from the client at the server at the optimum heartbeat interval.