System and method for determining whether a network destination is reachable
First Claim
1. One or more computer-readable storage media having executable instructions stored thereon that, when executed, implement a method comprising:
- receiving a request from a client to be notified of a state of at least one network destination as reachable or unreachable, wherein state data corresponding to the at least one network destination is maintained in a ping cache and wherein the state of the at least one network destination is returned from the ping cache to the client in response to the request;
identifying each network destination corresponding to the request by a name or a corresponding Internet protocol address, and for each network destination that is identified by name only, attempting to resolve the corresponding name into the corresponding Internet protocol address;
updating the state of the at least one network destination in the ping cache to reflect the at least one network destination is unreachable if the attempt to resolve the corresponding name of the at least one network destination fails;
determining whether the corresponding Internet protocol address is associated with a local subnet if the corresponding Internet protocol address is identified or resolved;
automatically updating the ping cache to reflect that the at least one network destination is reachable if it is determined that the corresponding Internet protocol address is associated with the local subnet and even though there is no guarantee that the network destination is reachable;
periodically pinging the at least one network destination if it is determined that the corresponding Internet protocol address is not associated with the local subnet;
automatically updating the ping cache to reflect any change in the state of the at least one network destination, as reachable or unreachable, and as determined by results of the periodic pinging; and
wherein the request is generated when the client subscribes for an event notification corresponding to the state of the network destination and wherein the response comprises a notification corresponding to an event that is fired in response to the ping cache being updated to reflect said any change in the state of the at least one network destination.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and system for providing system event notifications to clients such as applications. Clients register for notification of one or more types of events with a registration mechanism, and a System Event Notification Service, (SENS), receives system event information and fires event notifications in response thereto. A distribution mechanism selectively communicates the fired event to each client registered for notification thereof based on the type of event. Events include network events, for which the service monitors the connectivity state of the machine, including whether a connection is established or lost, the type of connection (LAN/WAN) and bandwidth information. To monitor a LAN state, the service caches outgoing and incoming network information including errors and packet counts and statistically evaluates this cached information against current information to determine whether the connection is established or lost. The service also determines if a destination (IP address or name) is reachable, by periodically polling destinations. Other system event notifications may be fired, including logon or logoff operations and power management events.
25 Citations
9 Claims
-
1. One or more computer-readable storage media having executable instructions stored thereon that, when executed, implement a method comprising:
-
receiving a request from a client to be notified of a state of at least one network destination as reachable or unreachable, wherein state data corresponding to the at least one network destination is maintained in a ping cache and wherein the state of the at least one network destination is returned from the ping cache to the client in response to the request; identifying each network destination corresponding to the request by a name or a corresponding Internet protocol address, and for each network destination that is identified by name only, attempting to resolve the corresponding name into the corresponding Internet protocol address; updating the state of the at least one network destination in the ping cache to reflect the at least one network destination is unreachable if the attempt to resolve the corresponding name of the at least one network destination fails; determining whether the corresponding Internet protocol address is associated with a local subnet if the corresponding Internet protocol address is identified or resolved; automatically updating the ping cache to reflect that the at least one network destination is reachable if it is determined that the corresponding Internet protocol address is associated with the local subnet and even though there is no guarantee that the network destination is reachable; periodically pinging the at least one network destination if it is determined that the corresponding Internet protocol address is not associated with the local subnet;
automatically updating the ping cache to reflect any change in the state of the at least one network destination, as reachable or unreachable, and as determined by results of the periodic pinging; andwherein the request is generated when the client subscribes for an event notification corresponding to the state of the network destination and wherein the response comprises a notification corresponding to an event that is fired in response to the ping cache being updated to reflect said any change in the state of the at least one network destination. - View Dependent Claims (2, 3)
-
-
4. A method implemented by a computing system that includes a processor and a memory storing instructions for implementing the method, the method comprising:
-
receiving a request from a client to be notified of a state of at least one network destination as reachable or unreachable, wherein state data corresponding to the at least one network destination is maintained in a ping cache and wherein the state of the at least one network destination is returned from the ping cache to the client in response to the request; identifying each network destination corresponding to the request by a name or a corresponding Internet protocol address, and for each network destination that is identified by name only, attempting to resolve the corresponding name into the corresponding Internet protocol address; updating the state of the at least one network destination in the ping cache to reflect the at least one network destination is unreachable if the attempt to resolve the corresponding name of the at least one network destination fails; determining whether the corresponding Internet protocol address is associated with a local subnet if the corresponding Internet protocol address is identified or resolved; automatically updating the ping cache to reflect that the at least one network destination is reachable if it is determined that the corresponding Internet protocol address is associated with the local subnet and even though there is no guarantee that the network destination is reachable; periodically pinging the at least one network destination if it is determined that the corresponding Internet protocol address is not associated with the local subnet; automatically updating the ping cache to reflect any change in the state of the at least one network destination, as reachable or unreachable, and as determined by results of the periodic pinging; and wherein the request is generated when the client subscribes for an event notification corresponding to the state of the network destination and wherein the response comprises a notification corresponding to an event that is fired in response to the ping cache being updated to reflect said any change in the state of the at least one network destination. - View Dependent Claims (5, 6, 7, 8)
-
-
9. A computing system comprising:
-
a processor; and memory storing instructions for implementing a method, wherein the method includes; receiving a request from a client to be notified of a state of at least one network destination as reachable or unreachable, wherein state data corresponding to the at least one network destination is maintained in a ping cache and wherein the state of the at least one network destination is returned from the ping cache to the client in response to the request; identifying each network destination corresponding to the request by a name or a corresponding Internet protocol address, and for each network destination that is identified by name only, attempting to resolve the corresponding name into the corresponding Internet protocol address; updating the state of the at least one network destination in the ping cache to reflect the at least one network destination is unreachable if the attempt to resolve the corresponding name of the at least one network destination fails; determining whether the corresponding Internet protocol address is associated with a local subnet if the corresponding Internet protocol address is identified or resolved; automatically updating the ping cache to reflect that the at least one network destination is reachable if it is determined that the corresponding Internet protocol address is associated with the local subnet and even though there is no guarantee that the network destination is reachable; periodically pinging the at least one network destination if it is determined that the corresponding Internet protocol address is not associated with the local subnet; automatically updating the ping cache to reflect any change in the state of the at least one network destination, as reachable or unreachable, and as determined by results of the periodic pinging; and wherein the request is generated when the client subscribes for an event notification corresponding to the state of the network destination and wherein the response comprises a notification corresponding to an event that is fired in response to the ping cache being updated to reflect said any change in the state of the at least one network destination.
-
Specification