The telecommunications system illustrated in
On occasion, a user agent may not be reachable by the softswitch 30. This may be detected as a timeout of the registration of an endpoint in the softswitch 30 or a registrar. In such a case, the network needs to determine whether the user agent has failed or is otherwise unavailable, or whether the LAN, the network, or subnet on which the user agent is located has failed. The chart in
A network agent (NA) 50 can be used to determine whether there is an outage on the LAN. The softswitch 30 polls the relevant network agent (or agents) by sending a message such as a SIP OPTIONS message (RFC 3621, §11) to which the network agent would respond. The OPTIONS message is suitable for this purpose as it will not commence a SIP session and therefore has minimum impact on the network.
The network agent is assumed to be functional and, should there be no response from the network agent, the LAN is then deemed not accessible. Call flow diagrams illustrating acknowledgment responses (“200 OK”) and non-responses to polling of the network agents (“heartbeat”), respectively, are provided in
A network agent may also fail and in that event the switch would lose the ability to test the availability of the network independently of the endpoints or user agents. To increase the availability of the network status determination system (“a high-availability mode”), at least one additional or backup network agent can be provided as illustrated in LAN 2 of
Any device that will respond to a SIP OPTIONS message may serve as the network agent, such as a SIP gateway or a proxy. Also, the method and apparatus is not limited to SIP. Any protocol that enables polling of an endpoint in a subnet in the same fashion as SIP, such as MGCP and H.323, may be utilized. Additionally, the protocol can be one native to the network controller, softswitch, or registrar, and its user agents.
The system may also be configured to send inquiry messages to user agents in addition to the messages directed to network agents. For example, in a continuously-polled system, the network controller or switch could alternately query the user and network agents.