Framework for providing quality of service requirements in a distributed object-oriented computer system
First Claim
1. A method for assuring quality of service in an invocation of a server object by a client object in a distributed system, the method comprising:
- creating a contract that specifies a level of quality of service required by the client object and a level of quality of service provided by the system;
receiving a remote method invocation call from the client object;
updating the contract with a current level of quality of service provided by the system in response to the remote method invocation call;
comparing the required level of quality of service to the current level of quality of service; and
sending the remote method invocation call to the server object when the current level of quality of service satisfies the required level of quality of service.
14 Assignments
0 Petitions
Accused Products
Abstract
A system assures quality of service provided by a distributed network having at least one object. The system creates a contract that stores levels of quality of service offered by the network, determines a quality of service required by the object, and evaluates the contract to select a level of quality of service that corresponds to a current quality of service provided by the network. The system then compares the current quality of service to the required quality of service, and adjusts the current quality of service to obtain the required quality of service when the current quality of service fails to satisfy the required quality of service.
-
Citations
27 Claims
-
1. A method for assuring quality of service in an invocation of a server object by a client object in a distributed system, the method comprising:
-
creating a contract that specifies a level of quality of service required by the client object and a level of quality of service provided by the system;
receiving a remote method invocation call from the client object;
updating the contract with a current level of quality of service provided by the system in response to the remote method invocation call;
comparing the required level of quality of service to the current level of quality of service; and
sending the remote method invocation call to the server object when the current level of quality of service satisfies the required level of quality of service. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
obtaining information regarding current system conditions, and identifying the current level of quality of service based on the obtained information.
-
-
3. The method of claim 1, wherein the updating the contract includes:
-
monitoring resources in the system, and determining the current level of quality of service based on the monitoring of the resources.
-
-
4. The method of claim 1, further comprising:
-
receiving results of the remote method invocation from the server object; and
reevaluating a current level of quality of service provided by the system.
-
-
5. The method of claim 4, wherein the reevaluating a current level of quality of service includes:
updating the contract with the current level of quality of service.
-
6. The method of claim 1, wherein the distributed system operates within a quality objects framework.
-
7. The method of claim 1, wherein the creating a contract includes:
-
receiving information regarding the required level of quality of service from the client object, and interacting with one or more system condition objects to achieve the required level of quality of service in the system.
-
-
8. The method of claim 7, wherein the interacting includes:
using one of the one or more system condition objects to change the behavior of an enhanced object request broker in the system.
-
9. The method of claim 1, further comprising:
-
receiving notification of a change in the current level of quality of service provided by the system; and
informing the client object of the change in the current level of quality of service.
-
-
10. The method of claim 9, wherein the informing includes:
permitting the client object an opportunity to adapt to the change in the current level of quality of service.
-
11. The method of claim 1, further comprising:
adapting when the current level of quality of service fails to satisfy the required level of quality of service.
-
12. The method of claim 11, wherein the adapting includes:
delaying transmission of the remote method invocation call to the server object.
-
13. The method of claim 11, wherein the adapting includes:
dropping the remote method invocation call to the server object.
-
14. A system for assuring quality of service in an invocation of a server object by a client object in a distributed system, the system comprising:
-
means for creating a contract that specifies a level of quality of service required by the client object and a level of quality of service provided by the system;
means for receiving a remote method invocation call from the client object;
means for updating the contract with a current level of quality of service provided by the system in response to the remote method invocation call;
means for comparing the required level of quality of service to the current level of quality of service; and
means for sending the remote method invocation call to the server object when the current level of quality of service satisfies the required level of quality of service.
-
-
15. A system for assuring quality of service in an invocation of a server object by a client object in a distributed system, the system comprising:
-
a plurality of system condition objects, at least a first one of system condition objects specifying a level of quality of service required by the client object, at least a second one of the system condition objects monitoring one or more system conditions;
a contract that stores references to the system condition objects and specifies a level of quality of service provided by the system; and
a delegate that;
receives a remote method invocation call from the client object, instructs the contract to update with a current level of quality of service provided by the system in response to the remote method invocation call, compares the required level of quality of service to the current level of quality of service, and sends the remote method invocation call to the server object when the current level of quality of service satisfies the required level of quality of service. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
obtain information regarding current system conditions from the at least one second system condition object, and identify the current level of quality of service based on the obtained information.
-
-
17. The system of claim 15, wherein the contract is configured to:
interact with the at least one first system condition object to achieve the required level of quality of service.
-
18. The system of claim 17, wherein when interacting, the contract is configured to:
use the at least one first system condition object to change the behavior of an enhanced object request broker in the system.
-
19. The system of claim 15, wherein the delegate is further configured to:
-
receive results of the remote method invocation from the server object, and reevaluate a current level of quality of service provided by the system.
-
-
20. The system of claim 19, wherein when reevaluating the current level of quality of service, the contract is configured to:
-
determine the current level of quality of service based on the at least one second system condition object, and update the contract with the determined current level of quality of service.
-
-
21. The system of claim 15, wherein the distributed system operates within a quality objects framework.
-
22. The system of claim 15, wherein the contract is further configured to:
-
receive notification of a change in the current level of quality of service provided by the system, and inform the client object of the change in the current level of quality of service.
-
-
23. The system of claim 22, wherein when informing the client object, the contract is configured to:
permit the client object an opportunity to adapt to the change in the current level of quality of service.
-
24. The system of claim 15, wherein the delegate is further configured to:
adapt the behavior of the delegate when the current level of quality of service fails to satisfy the required level of quality of service.
-
25. The system of claim 24, wherein when adapting, the delegate is configured to:
delay transmission of the remote method invocation call to the server object.
-
26. The system of claim 24, wherein when adapting, the delegate is configured to:
drop the remote method invocation call to the server object.
-
27. A method for assuring quality of service in a communication between a client object and a server object in a distributed system, the method comprising:
-
creating a contract that specifies a level of quality of service required by the client object and a level of quality of service provided by the system;
receiving a communication initiation call from the client object;
updating the contract with a current level of quality of service provided by the system in response to the communication initiation call;
comparing the required level of quality of service to the current level of quality of service; and
sending the communication initiation call to the server object when the current level of quality of service satisfies the required level of quality of service.
-
Specification