Efficiently sending event notifications over a computer network
First Claim
1. A server system in a network that includes the server system, a client system, and one or more other network devices, wherein the server system monitors the occurrence of events, sends notification data to the client system, when notification has been requested, after one of the monitored events occurs, and may have client data requiring transmission to the client system, the server system comprising:
- a processor; and
one or more computer-readable media having computer-executable instructions stored thereon that, when executed, implement a method for efficiently sending notification to the client system when the event has occurred, so as to preserve the processing capacity of the server system and the client system, and so as to preserve bandwidth on the network system, and wherein the method includes;
an act of the server system determining that a notification is to be sent to the client system upon the occurrence of one of the monitored events;
an act of the server system sending notification data using a connectionless protocol to the client system, if one of the monitored events occurs;
an act of determining if the server system has client data to transmit to the client system and upon determining that the server system has client data to transmit, initiating contact with the client device using a connection-oriented protocol when the server system has client data to transmit to the client system; and
an act of the server system transmitting the client data to the client system using exclusively the connection-oriented protocol to transmit the client data, after the server system receives contact using the connection-oriented protocol, and without first attempting to transmit the client data to the client using the connectionless protocol.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for efficiently sending notifications over a network. A client system requests to be notified when an event occurs. A server system receives the requests and monitors for the occurrence of the event. When the event occurs a single packet using a connectionless protocol (such as User Datagram Protocol) is sent to the client to notify the client of the occurrence of the event. Using a connectionless protocol to send notification reduces the overall amount of data on the network and thus reduces network congestion and the processing capacity of the server and client. When the client system receives notification an attempt to establish a connection using as connection-oriented protocol is executed. Additional data associated with the occurrence of the event is transferred over the connection. The server may repeatedly send notification using a connectionless protocol until a connection using a connection-oriented protocol is established. The server may send notification that notifies the client of the occurrence of multiple events simultaneously within a single packet. The server may also notify multiple applications of the occurrence of an event using a single notification.
-
Citations
18 Claims
-
1. A server system in a network that includes the server system, a client system, and one or more other network devices, wherein the server system monitors the occurrence of events, sends notification data to the client system, when notification has been requested, after one of the monitored events occurs, and may have client data requiring transmission to the client system, the server system comprising:
-
a processor; and one or more computer-readable media having computer-executable instructions stored thereon that, when executed, implement a method for efficiently sending notification to the client system when the event has occurred, so as to preserve the processing capacity of the server system and the client system, and so as to preserve bandwidth on the network system, and wherein the method includes; an act of the server system determining that a notification is to be sent to the client system upon the occurrence of one of the monitored events; an act of the server system sending notification data using a connectionless protocol to the client system, if one of the monitored events occurs; an act of determining if the server system has client data to transmit to the client system and upon determining that the server system has client data to transmit, initiating contact with the client device using a connection-oriented protocol when the server system has client data to transmit to the client system; and an act of the server system transmitting the client data to the client system using exclusively the connection-oriented protocol to transmit the client data, after the server system receives contact using the connection-oriented protocol, and without first attempting to transmit the client data to the client using the connectionless protocol. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A server system in a network that includes the server system, a client system, and one or more other network devices, wherein the server system monitors the occurrence of events, sends notification data to the client system, when notification has been requested, after one of the monitored events occurs, and may have client data requiring transmission to the client system, the server system comprising:
-
a processor; and one or more computer-readable media having computer-executable instructions stored thereon that, when executed, implement a method for efficiently sending notification to the client system when the event has occurred, so as to preserve the processing capacity of the server system and the client system, and so as to preserve bandwidth on the network system, and wherein the method includes; an act of the server system determining that a notification is to be sent to the client system upon the occurrence of one of the monitored events; an act of the server system sending notification data using a connectionless protocol to the client system, if one of the monitored events occurs; an act of determining if the server system has client data to transmit to the client system; and upon determining that the server system has client data to transmit, a step for sending client data, after the notification data is sent, to the client system using exclusively a connection-oriented protocol, and such that the client data is sent to the client system using the connection-oriented protocol without first attempting to transmit the client data to the client using the connectionless protocol.
-
-
14. A client system in a network that includes a server system and the client system, wherein the server system monitors the occurrence of events, sends notification to the client system when one of the monitored events occurs, and may have client data requiring transmission to the client system, the client system comprising:
-
a processor; and one or more computer-readable media having computer-executable instructions stored thereon that, when executed, implement a method for efficiently notifying applications associated with the client system when an event has occurred so as to preserve the processing capacity of server system and the client system, and so as to preserve bandwidth on the network system, and wherein the method includes; receiving, from one of a plurality of applications associated with the client system, a request to be notified of an occurrence of an event; determining if the request to be notified of the occurrence of the event has been received previously, and if not sending the request to be notified of the occurrence of the event to the server system; an act of the client system receiving one notification from the server system using a connectionless protocol notifying the client system of the occurrence of the event; an act of the client system determining which of the plurality of applications requested notification of the occurrence of the event; an act of the client system transmitting the received notification to each application that requested notification of the occurrence of the event; the client system determining if the server system has additional client data associated with the occurrence of the event; and the client system, in response to determining that the server system has additional client data associated with the occurrence of the event, creating a connection using a connection-oriented protocol to receive client data associated with the occurrence of the event, and without first receiving an attempt from the server to transmit the client data over the connectionless protocol. - View Dependent Claims (15, 16, 17, 18)
-
Specification