Ripple scheduling for end-to-end global resource management
First Claim
1. A resource manager for each node of a plurality of nodes of a distributed data processing system, wherein each node is capable of acting as a coordinator node, an intermediate node, and a leaf node, and wherein each node receives an arriving session to process, the resource manager comprising:
- determining means for determining whether a node corresponding to the determining means can support the arriving session;
request sending means for sending, if the corresponding node is acting as a coordinator node or an intermediate node, a support request to child nodes which are to process the arriving session;
response sending means for sending, if the corresponding node is acting as an intermediate node or a leaf node, a response to a parent node, wherein the response indicates whether the arriving session can be supported; and
, commit sending means for sending, if the corresponding node is acting as a coordinator node and if the arriving session can be supported by the nodes which are to process the arriving session, a commit message to the child nodes which are to process the arriving session.
1 Assignment
0 Petitions
Accused Products
Abstract
A global resource manager is provided for each node of a plurality of nodes of a distributed data processing system. Each node can be a coordinator node, an intermediate node, and a leaf node depending on the node at which a session arrives for global processing. In response to the arriving sessions, the global resource managers implement ripple scheduling by conducting a global QoS negotiation and adaptation, and preemption if necessary, in order to determine if the arriving session is supportable by the distributed data processing system. More specifically, the resource managers of all nodes determine whether their corresponding nodes can support the arriving session. The resource managers of the coordinator node and all intermediate nodes request their child nodes to indicate whether the child nodes can support the arriving session. The resource managers of all intermediate nodes and all leaf nodes respond to their coordinating or intermediate nodes with an indication of supportability. The resource manager of the coordinator node sends a commit message if all nodes can support the arriving session.
-
Citations
102 Claims
-
1. A resource manager for each node of a plurality of nodes of a distributed data processing system, wherein each node is capable of acting as a coordinator node, an intermediate node, and a leaf node, and wherein each node receives an arriving session to process, the resource manager comprising:
-
determining means for determining whether a node corresponding to the determining means can support the arriving session;
request sending means for sending, if the corresponding node is acting as a coordinator node or an intermediate node, a support request to child nodes which are to process the arriving session;
response sending means for sending, if the corresponding node is acting as an intermediate node or a leaf node, a response to a parent node, wherein the response indicates whether the arriving session can be supported; and
,commit sending means for sending, if the corresponding node is acting as a coordinator node and if the arriving session can be supported by the nodes which are to process the arriving session, a commit message to the child nodes which are to process the arriving session. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A resource manager for each node of a plurality of nodes of a distributed data processing system, wherein each node is capable of acting as a coordinator node, an intermediate node, and a leaf node, and wherein each node receives an arriving session to process, the resource manager comprising:
-
determining means for determining whether a node corresponding to the determining means can support the arriving session;
request sending means for sending, if the corresponding node is acting as a coordinator node or an intermediate node and if the corresponding node can support the arriving session, a support request to child nodes which are to process the arriving session;
intermediate response sending means for sending, if the corresponding node is acting as an intermediate node, a YES response to a parent node if the corresponding node and its child nodes can support the arriving session and a NO response to the parent node if the corresponding node or at least one of its child nodes cannot support the arriving session;
leaf response sending means for sending, if the corresponding node is acting as a leaf node, a YES response to a parent node if the corresponding node can support the arriving session and a NO response to the parent node if the corresponding node cannot support the arriving session; and
,commit sending means for sending, if the corresponding node is a coordinator node and if the arriving session can be supported by the nodes which are to process the arriving session, a commit message to the child nodes which are to process the arriving session. - View Dependent Claims (27, 28, 29, 30, 31, 32, 33)
-
-
34. A resource manager for a coordinator node of a distributed data processing system, wherein the coordinator node may receive an arriving session to process, the resource manager comprising:
-
determining means for determining whether the coordinator node can support the arriving session;
request sending means for sending, if the determining means determines that the coordinator node can support the arriving session, a support request to child nodes which are to process the arriving session; and
,commit sending means for sending, if the coordinator node and all of the child nodes can support the arriving session, a commit message to the child nodes, wherein the commit message includes a globally supportable QoS for the arriving session. - View Dependent Claims (35, 36, 37, 38, 39, 40, 41, 42)
-
-
43. A resource manager for an intermediate node of a distributed data processing system, wherein the intermediate node may be requested to process an arriving session, the resource manager comprising:
-
determining means for determining whether the intermediate node can support the arriving session;
request passing means for passing, if the intermediate node can support the arriving session, a request from an upstream node to downstream nodes which are to process the arriving session, wherein the request requests the downstream nodes to determine supportability of the arriving session; and
,response sending means for sending a response to the request from the upstream node, wherein the response sending means sends the response to the upstream node, wherein the response is a YES response if the intermediate node and the downstream nodes can support the arriving session, and wherein the response is a NO response if the intermediate node or one of the downstream nodes cannot support the arriving session. - View Dependent Claims (44, 45, 46, 47)
-
-
48. A resource manager for a leaf node of a distributed data processing system, wherein the leaf node may be requested to process an arriving session, the resource manager comprising:
-
determining means for determining whether the leaf node can support the arriving session; and
,response sending means for sending a response to a request from an upstream node, wherein the request asks whether the leaf node can support the arriving session, wherein the response sending means sends the response to the upstream node, wherein the response is a YES response if the leaf node can support the arriving session, and wherein the response is a NO response if the leaf node cannot support the arriving session, wherein the YES response includes a QoS supportable by the leaf node for the arriving session. - View Dependent Claims (49, 50, 51)
-
-
52. A method performed by a processing node of a distributed data processing system, wherein the processing node is capable of acting as a coordinator node, an intermediate node, and a leaf node, and wherein the processing node receives an arriving session, the method comprising the following steps:
-
a) determining whether the arriving session can be supported;
b) if the processing node is acting as a coordinator node or an intermediate node, sending a request to downstream nodes, wherein the request asks whether the downstream nodes can support the arriving session;
c) if the processing node is acting as an intermediate node, sending a response to an upstream node in response to the request, wherein the response is a YES response if the processing node and the downstream nodes can support the arriving session, and wherein the response is a NO response if the processing node or one of the downstream nodes cannot support the arriving session;
d) if the processing node is acting as a leaf node, sending a response to an upstream node in response to the request, wherein the response is a YES response if the processing node can support the arriving session, and wherein the response is a NO response if the processing node cannot support the arriving session;
e) if the processing node is acting as a coordinator node and if the processing node and all of the downstream nodes can support the arriving session, sending a commit message to the downstream nodes which are to process the arriving session; and
,f) if the processing node is acting as a coordinator node and if the processing node or one of the downstream nodes cannot support the arriving session, sending an abort message to the downstream nodes. - View Dependent Claims (53, 54, 55, 56, 57, 58, 59)
-
-
60. A method performed at each node of a plurality of nodes of a distributed data processing system, wherein each node is capable of acting as a coordinator node, an intermediate node, and a leaf node, and wherein each node receives an arriving session to process, the method comprising the following steps:
-
a) determining whether a corresponding node can support the arriving session;
b) if the corresponding node is acting as a coordinator node or an intermediate node, sending a support request to child nodes which are to process the arriving session;
c) if the corresponding node is acting as an intermediate node or a leaf node, sending a response to a parent node, wherein the response indicates whether the arriving session can be supported; and
,d) if the corresponding node is acting as a coordinator node and if the arriving session can be supported by the nodes which are to process the arriving session, sending a commit message to the child nodes which are to process the arriving session. - View Dependent Claims (61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84)
-
-
85. A method performed at a coordinator node of a distributed data processing system, wherein the coordinator node receives an arriving session to process, the method comprising the following steps:
-
a) determining whether the coordinator node can support the arriving session;
b) if the coordinator node can support the arriving session, sending a support request to child nodes which are to process the arriving session; and
,c) if the coordinator node and all of the child nodes can support the arriving session, sending a commit message to the child nodes, wherein the commit message includes a globally supportable QoS for the arriving session. - View Dependent Claims (86, 87, 88, 89, 90, 91, 92, 93)
-
-
94. A method performed at an intermediate node of a distributed data processing system, wherein the intermediate node is requested to process an arriving session, the method comprising the following steps:
-
a) determining whether the intermediate node can support the arriving session;
b) if the intermediate node can support the arriving session, passing a request from an upstream node to downstream nodes which are to process the arriving session, wherein the request requests the downstream nodes to determine supportability of the arriving session; and
,c) sending a response to the request to the upstream node, wherein the response is a YES response if the intermediate node and the downstream nodes can support the arriving session, and wherein the response is a NO response if the intermediate node or one of the downstream nodes cannot support the arriving session. - View Dependent Claims (95, 96, 97, 98)
-
-
99. A method performed at a leaf node of a distributed data processing system, wherein the leaf node may be requested to process an arriving session, the method comprising the following steps:
-
a) determining whether the leaf node can support the arriving session; and
,b) sending a response to a request from an upstream node, wherein the request asks whether the leaf node can support the arriving session, wherein the response is sent to the upstream node, wherein the response is a YES response if the leaf node can support the arriving session, and wherein the response is a NO response if the leaf node cannot support the arriving session, wherein the YES response includes a QoS supportable by the leaf node for the arriving session. - View Dependent Claims (100, 101, 102)
-
Specification