Patent ID: 7551622

Claim:
A method for use in a network of interconnected computer systems, comprising: generating a Quality of Service (QoS) requirements document between a client and a first server having a resource for execution of a service in the first server; initiating execution of the service in the first server in response to a client request; calculating, using the first server, an actual QoS level based on execution of the client-requested service in the first server; implementing a QoS requirement service in the first server to monitor execution of the client-requested service, the QoS requirement service comparing the actual QoS level with a requirement specified in the QoS requirements document and requesting the first server to search for an additional resource within the first server when the first server cannot guarantee the requirement specified in the QoS requirements document; migrating execution of the client-requested service from the first server to a service in a second server if the first server cannot locate the additional resource or cannot guarantee the requirement specified in the QoS requirements document by using the additional resource, the migration being performed by creating a first connection between the first server and the second server and sending the client request from the first server to the second server over the first connection via a message; executing the client-requested service in the second server by using the service in the second server, while maintaining the first connection; and monitoring execution of the client-requested service in the second server by using the QoS requirement service of the first server, wherein the QoS requirement service migrates execution of the client-requested service from the second server to a third server when the second server cannot guarantee the requirement specified in the QoS reqirements document, the migration being performed by breaking the first connection and creating a second connection between the first server and the third server to send the client request to the third server over the second connection.