Quality of service maintenance for distributed collaborative computing
First Claim
1. A method of distributed collaborative computing comprising:
- partitioning a collaboration function into sub-functions;
assigning at least one said sub-function to each of a plurality of logical processes;
associating a respective management process with each of said plurality of logical processes, said logical processes configured so that each said logical process is capable of communicating with every other said logical process thru said respective management process;
communicating between said logical processes using said respective management processes; and
monitoring said respective management processes with a single supervisor process;
wherein said monitoring further comprises;
obtaining state information;
combining said state information with load information to create a quality of service (QoS) value; and
modifying said partitioning based on said QoS value.
3 Assignments
0 Petitions
Accused Products
Abstract
A distributed collaborative computer system is provided that comprises a plurality of server computers interconnected via a high-speed link. Client computers can connect to any available server computer and start or join a conference hosted on either the server computer to which the client computer is connected or any other server in the system. As a result, the system and method of the present invention is easily scalable to support an arbitrary number of participants to a conference by merely adding the appropriate number of server computers to the system. In addition, by replicating the conference information on more than one server computer, the single point of failure limitation is eliminated. In fact, if a server hosting or participating in a conference malfunctions, the failure is detected by other server computers and the client computer is able to reconnect to the conference through a new server computer.
-
Citations
12 Claims
-
1. A method of distributed collaborative computing comprising:
-
partitioning a collaboration function into sub-functions;
assigning at least one said sub-function to each of a plurality of logical processes;
associating a respective management process with each of said plurality of logical processes, said logical processes configured so that each said logical process is capable of communicating with every other said logical process thru said respective management process;
communicating between said logical processes using said respective management processes; and
monitoring said respective management processes with a single supervisor process;
wherein said monitoring further comprises;
obtaining state information;
combining said state information with load information to create a quality of service (QoS) value; and
modifying said partitioning based on said QoS value. - View Dependent Claims (2, 3)
-
-
4. A computer program for use in distributed collaborative computing, comprising computer instructions for:
-
partitioning a collaboration function into sub-functions;
assigning at least one said sub-function to each of a plurality of logical processes;
associating a respective management process with each of said plurality of logical processes, said logical processes configured so that each said logical process is capable of communicating with every other said logical process thru said respective management process;
communicating between said logical processes using said respective management processes; and
monitoring said respective management processes with a single supervisor process;
wherein said monitoring further comprises;
obtaining state information;
combining said state information with load information to create a quality of service (QoS) value; and
modifying said partitioning based on said QoS value. - View Dependent Claims (5, 6)
-
-
7. A computer-readable medium storing a computer program executable by a plurality of server computers, the computer program comprising computer instructions for:
-
partitioning a collaboration function into sub-functions;
assigning at least one said sub-function to each of a plurality of logical processes;
associating a respective management process with each of said plurality of logical processes, said logical processes configured so that each said logical process is capable of communicating with every other said logical process thru said respective management process;
communicating between said logical processes using said respective management processes; and
monitoring said respective management processes with a single supervisor process;
wherein said monitoring further comprises;
obtaining state information;
combining said state information with load information to create a quality of service (QoS) value; and
modifying said partitioning based on said QoS value. - View Dependent Claims (8, 9)
-
-
10. A computer data signal embodied in a carrier wave, comprising computer instructions for:
-
partitioning a collaboration function into sub-functions;
assigning at least one said sub-function to each of a plurality of logical processes;
associating a respective management process with each of said plurality of logical processes, said logical processes configured so that each said logical process is capable of communicating with every other said logical process thru said respective management process;
communicating between said logical processes using said respective management processes; and
monitoring said respective management processes with a single supervisor process;
wherein said monitoring further comprises;
obtaining state information;
combining said state information with load information to create a quality of service (QoS) value; and
modifying said partitioning based on said QoS value. - View Dependent Claims (11, 12)
-
Specification