Directory server for providing dynamically assigned network protocol addresses
First Claim
1. In a server process capable of responding to requests from one or more client processes operatively coupled to the server process over a computer network, a method of monitoring the status of a client process, comprising the steps of:
- A. receiving notification from a client process that the client process is active;
B. determining that the client process is inactive if a subsequent notification from the client process is not received within a predetermined time interval;
C. monitoring a number of requests from a plurality of active client processes coupled to the server over the computer network; and
D. increasing the predetermined time interval if the number of requests from the plurality of active client processes at least equals a predetermined threshold.
10 Assignments
0 Petitions
Accused Products
Abstract
A communication protocol for establishing real-time, point-to-point communications between computer users over a computer network includes a directory server apparatus for providing the current dynamically assigned Internet Protocol addresses of client processes currently connected to the computer network. The server maintains a list of entries, each entry including the Internet Protocol address of a user currently connected to the network. In response to identification of one of the entries by a requesting client process, the server provides the corresponding Internet Protocol address of the entry to the requesting client process. In accordance with a second aspect of the present invention, the directory server monitors the status of client processes connected to the network via periodic notification from the client processes. The server dynamically modifies the time interval at which client processes notify the server, depending on the demand for server resources.
-
Citations
16 Claims
-
1. In a server process capable of responding to requests from one or more client processes operatively coupled to the server process over a computer network, a method of monitoring the status of a client process, comprising the steps of:
-
A. receiving notification from a client process that the client process is active;
B. determining that the client process is inactive if a subsequent notification from the client process is not received within a predetermined time interval;
C. monitoring a number of requests from a plurality of active client processes coupled to the server over the computer network; and
D. increasing the predetermined time interval if the number of requests from the plurality of active client processes at least equals a predetermined threshold. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
A.1 maintaining a list of client processes.
-
-
3. The method of claim 2 wherein step A further comprises the step of:
A.2 associating an indicator with one of the plurality of client processes indicating that the client process is active, upon receiving notification from the client process.
-
4. The method of claim 3 wherein step A further comprises:
A.3 associating a value with one of the plurality of client processes indicating the time at which notification was received from the client process.
-
5. The method of claim 4 further comprising:
-
B.1 computing the difference between the time value associated with a client processes and a value representing the present time; and
B.2 comparing the difference value to the predetermined time interval.
-
-
6. The method of claim 1 further comprising:
B.1 determining that the client process is inactive if a subsequent notification is not received from the client process within the modified predetermined time interval.
-
7. The method of claim 1 further comprising:
E. transmitting the modified predetermined time interval to one or more of the client processes operatively coupled to the server.
-
8. The method of claim 7 wherein step B further comprises the step of:
B.3 determining that the client process is inactive if a subsequent notification is not received within the modified predetermined time interval.
-
9. A computer program product for use with a computer server operatively coupled to one or more client processes over a computer network, the server capable of responding to requests from the client processes, the computer program product comprising a computer useable medium having program code embodied therein comprising:
-
program code for receiving notification from a client process that the client process is active;
program code for determining that the client process is inactive if a subsequent notification is not received within a predetermined time interval;
program code for monitoring a number of requests from a plurality of client processes operatively coupled to the server; and
program code for modifying the predetermined time interval, if the number of requests from the plurality of client processes at least equals a predetermined threshold. - View Dependent Claims (10, 11)
program code, responsive to the modified predetermined time interval, for transmitting the modified predetermined time interval to active client processes over the computer network.
-
-
11. The computer program product of claim 10 wherein the program code for determining that the client process is inactive further comprises:
program code for determining that a client process is inactive if a subsequent notification is not received from the client process within the modified predetermined time interval.
-
12. A computer program product for use with a computer system operatively coupled to a server process over a computer network, the computer system capable of executing one or more client processes, the computer program product comprising a computer useable medium having program code embodied therein comprising:
-
program code for connecting to the server process over the computer network;
program code for receiving from the server process data defining a predetermined time interval within which to notifying the server process that a client process is active;
program code for notifying the server process within the predetermined time interval that a client process is active; and
program code for subsequently notifying the server process at predetermined time intervals that the client process is still active; and
program code for receiving a modified predetermined time interval from the server process.- View Dependent Claims (13)
program code, responsive to the modified predetermined time interval, for transmitting a subsequent notification to the server process within the modified predetermined time interval that the client process is still active.
-
-
14. A computer data signal embodied in a carrier wave comprising:
-
program code for receiving notification from a client process that the client process is active;
program code for determining that the client process is inactive if a subsequent notification is not received within a predetermined time interval;
program code for monitoring a number of requests from a plurality of client processes operatively coupled to the server; and
program code for modifying the predetermined time interval, if the number of requests from the plurality of client processes at least equals a predetermined threshold. - View Dependent Claims (15, 16)
program code, responsive to the modified predetermined time interval, for transmitting the modified predetermined time interval to active client processes over the computer network.
-
-
16. The computer data signal of claim 15 wherein the program code for determining that the client process is inactive further comprises:
program code for determining that a client process is inactive if a subsequent notification is not received from the client process within the modified predetermined time interval.
Specification