Distributed client services based on execution of service attributes and data attributes by multiple nodes in resource groups
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-015/16
G06F-012/00
출원번호
UP-0060387
(2005-02-17)
등록번호
US-7543020
(2009-07-01)
발명자
/ 주소
Walker, Douglas Jay
Turner, Bryan C.
Toebes, John
출원인 / 주소
Cisco Technology, Inc.
대리인 / 주소
Turkevich, Leon R.
인용정보
피인용 횟수 :
33인용 특허 :
7
초록▼
A network provides distributed client services based on participation in respective resource groups by computing nodes, each resource group including a corresponding resource requirement for any computing node that joins the corresponding resource group for execution of the corresponding distributed
A network provides distributed client services based on participation in respective resource groups by computing nodes, each resource group including a corresponding resource requirement for any computing node that joins the corresponding resource group for execution of the corresponding distributed client service. Each computing node, in response to determining its corresponding available node capacity, is configured for selectively creating and joining at least one new resource group for execution of a corresponding distributed client service having a corresponding resource requirement, and/or selectively joining at least one of the available resource groups, based on the corresponding available node capacity satisfying the corresponding resource requirement. Each distributed client service also includes service attributes that define parameters for execution of the distributed client service, and data attributes that define the attributes required for data to be used in the distributed client service.
대표청구항▼
What is claimed is: 1. A method in a computing node, comprising: determining an available node capacity for the computing node relative to any resource groups having been joined by the computing node, each resource group having a corresponding resource group attribute specifying a resource requirem
What is claimed is: 1. A method in a computing node, comprising: determining an available node capacity for the computing node relative to any resource groups having been joined by the computing node, each resource group having a corresponding resource group attribute specifying a resource requirement for providing a corresponding distributed client service within a network, a service attribute that defines parameters for execution of the corresponding distributed client service, and a data attribute that defines service data to be used in providing the corresponding distributed client service for a client; selectively joining at least one of the resource groups based on the corresponding resource requirement being less than the available node capacity; and executing the distributed client service for the corresponding at least one resource group having been joined by the computing node, according to the corresponding resource group attribute, including replicating the corresponding service data among any other computing nodes belonging to the corresponding at least one resource group according to the corresponding service attribute and the corresponding data attribute. 2. The method of claim 1, wherein the executing includes receiving replicated service data from one of the other computing nodes belonging to corresponding at least one resource group, the method further comprising: disconnecting from the network; and executing the client on the computing node independent of the distributed client service and while the computing node is disconnected from the network, including sending a request by the client to the distributed client service for client data; the executing of the distributed client service including supplying the client data, from among the replicated service data, while the computing node is disconnected from the network. 3. The method of claim 2, wherein: the executing of the client further includes sending a second request to the distributed client service for transfer of second client data from the client to a destination; the executing of the distributed client service further including identifying the second client data received from the client for replication in the corresponding resource group based on the service attribute and the data attribute, and replicating the second client data among the resource group in response to detecting at least one of the other computing nodes belonging to the corresponding resource group is reachable following said disconnecting. 4. The method of claim 3, wherein the identifying including creating for the second client data a locality control object that defines ownership of the second client data, the distributed client service selectively providing the client one of read-only access or read/write access of the second client data following receipt of the second request by the distributed client service, based on the service attribute and the data attribute. 5. The method of claim 4, wherein: the distributed client service provides read-only access of the second client data based on the data attribute specifying the second client data is a message having been sent by the client for reception by a destination; the distributed client service provides read/write access of the second client data based on the data attribute specifying the second client data is a data file that the client is authorized to modify, the service attribute specifying the distributed client service providing file system storage and retrieval for the client. 6. The method of claim 2, wherein the supplying of the client data while the computing node is disconnected from the network includes selectively providing read/write access to the client based on the service attribute and the data attribute. 7. A method in a network, the method comprising: providing resource groups, each resource group having a corresponding resource group attribute specifying a resource requirement for providing a corresponding distributed client service within the network, a service attribute that defines parameters for execution of the corresponding distributed client service, and a data attribute that defines service data to be used in providing the corresponding distributed client service for a client; in each computing node of the network: (1) determining a corresponding available node capacity relative to any of said resource groups having been joined by the computing node, (2) selectively joining at least one of the resource groups based on the corresponding resource requirement being less than the available node capacity, and (3) executing the distributed client service for the corresponding at least one resource group having been joined by the computing node, according to the corresponding resource group attribute; and connecting a client, of the distributed client service, to the distributed client service via one of the computing nodes having joined the corresponding resource group; wherein each of the computing nodes having joined said at least one resource group perform the executing of the distributed client service based on replicating the corresponding service data among each of the other computing nodes belonging to the corresponding at least one resource group, according to the corresponding service attribute and the corresponding data attribute. 8. The method of claim 7, wherein the executing includes: receiving from the client a request by the one computing node for transfer of client data from the client; identifying the client data received from the client for replication in the corresponding resource group based on the service attribute and the data attribute; and replicating the client data among the resource group in response to detecting at least one of the other computing nodes belonging to the corresponding resource group is reachable. 9. The method of claim 8, wherein the identifying includes creating for the client data a locality control object that defines ownership of the client data, the distributed client service selectively providing the client one of read-only access or read/write access of the client data following receipt of the request by the distributed client service, based on the service attribute and the data attribute. 10. The method of claim 9, wherein: the distributed client service provides read/write access of the client data based on the data attribute specifying the client data is a data file that the client is authorized to modify, the service attribute specifying the distributed client service providing file system storage and retrieval for the client; the distributed client service provides read-only access of the client data based on the data attribute specifying the client data is a message having been sent by the client for reception by a destination client, the distributed client service providing read/write access of the client data based on passing the corresponding locality control object to one of the computing nodes belonging to the corresponding resource group deemed most appropriate to provide the distributed client service for the destination client. 11. The method of claim 10, further comprising: receiving from the destination client, by the one computing node deemed most appropriate to provide the distributed client service, a request for the distributed client service; supplying, by the one computing node deemed most appropriate to provide the distributed client service, the client data to the destination client, enabling the destination client to obtain the read/write access of the client data. 12. The method of claim 7, further comprising: detecting, by the computing nodes having joined said at least one resource group, a new computing node having joined the resource group; and synchronizing service data based on: replicating to the new computing node the service data based on one of the computing nodes having a locality control object for the service data, the locality control object defining ownership of the service data for authority of read/write access of the service data; and replicating from the new computing node new service data based on the new computing node having the corresponding locality control object for the new service data. 13. A computing node comprising: a resource monitor configured for determining an available node capacity for the computing node relative to any resource groups having been joined by the computing node, each resource group having a corresponding resource group attribute specifying a resource requirement for providing a corresponding distributed client service within a network, a service attribute that defines parameters for execution of the corresponding distributed client service, and a data attribute that defines service data to be used in providing the corresponding distributed client service for a client; a resource group arbitration module configured for selectively joining at least one of the resource groups based on the corresponding resource requirement being less than the available node capacity; and computing node resources configured for executing the distributed client service for the corresponding at least one resource group having been joined by the computing node, according to the corresponding resource group attribute, including replicating the corresponding service data among any other computing nodes belonging to the corresponding at least one resource group according to the corresponding service attribute and the corresponding data attribute. 14. The computing node of claim 13, wherein the computing node resources are configured for receiving replicated service data from one of the other computing nodes belonging to corresponding at least one resource group, the computing node resources further configured for: detecting the computing node is disconnected from the network; and executing the client independent of the distributed client service and while the computing node is disconnected from the network, including sending a request by the client to the distributed client service for client data; the executing of the distributed client service including supplying the client data, from among the replicated service data, while the computing node is disconnected from the network. 15. The computing node of claim 14, wherein: the computing node resources further are configured for executing the client by sending a second request to the distributed client service for transfer of second client data from the client to a destination; the computing node resources further are configured for executing the distributed client service by identifying the second client data received from the client for replication in the corresponding resource group based on the service attribute and the data attribute, and replicating the second client data among the resource group in response to detecting at least one of the other computing nodes belonging to the corresponding resource group is reachable following said disconnecting. 16. The computing node of claim 15, wherein the computing node resources further are configured for creating for the second client data a locality control object that defines ownership of the second client data, the distributed client service selectively providing the client one of read-only access or read/write access of the second client data following receipt of the second request by the distributed client service, based on the service attribute and the data attribute. 17. The computing node of claim 16, wherein: the distributed client service provides read-only access of the second client data based on the data attribute specifying the second client data is a message having been sent by the client for reception by a destination; the distributed client service provides read/write access of the second client data based on the data attribute specifying the second client data is a data file that the client is authorized to modify, the service attribute specifying the distributed client service providing file system storage and retrieval for the client. 18. The computing node of claim 14, wherein the supplying of the client data while the computing node is disconnected from the network includes selectively providing read/write access to the client based on the service attribute and the data attribute. 19. A network comprising: a plurality of computing nodes configured for selectively joining resource groups, each resource group having a corresponding resource group attribute specifying a resource requirement for providing a corresponding distributed client service within a network, a service attribute that defines parameters for execution of the corresponding distributed client service, and a data attribute that defines service data to be used in providing the corresponding distributed client service for a client; each computing node configured for: (1) determining a corresponding available node capacity relative to any of said resource groups having been joined by the computing node, (2) selectively joining at least one of the resource groups based on the corresponding resource requirement of the second resource group being less than the available node capacity, and (3) executing the distributed client service for the corresponding at least one resource group having been joined by the computing node, according to the respective resource group attribute; wherein one of the computing nodes that executes distributed client service, in response to receiving a request from a client of the distributed client service, performs the distributed client service for the client, each of the computing nodes having joined said at least one resource group perform the executing of the distributed client service based on replicating the corresponding service data among each of the other computing nodes belonging to the corresponding at least one resource group, according to the corresponding service attribute and the corresponding data attribute. 20. The network of claim 19, wherein the one computing node is configured for: receiving from the client a request for transfer of client data from the client, identifying the client data received from the client for replication in the corresponding resource group based on the service attribute and the data attribute; and replicating the client data among the resource group in response to detecting at least one of the other computing nodes belonging to the corresponding resource group is reachable. 21. The network of claim 20, the one computing node is configured for identifying the client data based on creating for the client data a locality control object that defines ownership of the client data, the distributed client service selectively providing the client one of read-only access or read/write access of the client data following receipt of the request by the distributed client service, based on the service attribute and the data attribute. 22. The network of claim 21, wherein: the distributed client service provides read/write access of the client data based on the data attribute specifying the client data is a data file that the client is authorized to modify, the service attribute specifying the distributed client service providing file system storage and retrieval for the client; the distributed client service provides read-only access of the client data based on the data attribute specifying the client data is a message having been sent by the client for reception by a destination client, the distributed client service providing read/write access of the client data based on passing the corresponding locality control object to one of the computing nodes belonging to the corresponding resource group deemed most appropriate to provide the distributed client service for the destination client. 23. The network of claim 22, wherein the one computing node deemed most appropriate to provide the distributed client service is configured for: receiving from the destination client a request for the distributed client service; supplying the client data and the corresponding locality object to the destination client, enabling the destination client to obtain the read/write access of the client data. 24. The network of claim 19, wherein the computing nodes having joined said at least one resource group are configured for: detecting a new computing node having joined the resource group; and synchronizing service data based on: (1) replicating to the new computing node the service data based on one of the computing nodes having a locality control object for the service data, the locality control object defining ownership of the service data for authority of read/write access of the service data; and (2) replicating from the new computing node new service data based on the new computing node having the corresponding locality control object for the new service data. 25. A computing node comprising: means for determining an available node capacity for the computing node relative to any resource groups having been joined by the computing node, each resource group having a corresponding resource group attribute specifying a resource requirement for providing a corresponding distributed client service within a network, a service attribute that defines parameters for execution of the corresponding distributed client service, and a data attribute that defines service data to be used in providing the corresponding distributed client service for a client; means for selectively joining at least one of the resource groups based on the corresponding resource requirement being less than the available node capacity; and means for executing the distributed client service for the corresponding at least one resource group having been joined by the computing node, according to the corresponding resource group attribute, including replicating the corresponding service data among any other computing nodes belonging to the corresponding at least one resource group according to the corresponding service attribute and the corresponding data attribute. 26. The computing node of claim 25, wherein the means for executing is configured for: receiving replicated service data from one of the other computing nodes belonging to corresponding at least one resource group; determining that the computing node is disconnected from the network; executing the client on the computing node independent of the distributed client service and while the computing node is disconnected from the network, the including sending a request by the client to the distributed client service for client data; executing the distributed client service based on supplying the client data, from among the replicated service data, while the computing node is disconnected from the network. 27. The computing node of claim 26, wherein the means for executing is configured for: executing the client based on sending a second request to the distributed client service for transfer of second client data from the client to a destination; executing the distributed client service based on identifying the second client data received from the client for replication in the corresponding resource group based on the service attribute and the data attribute, and replicating the second client data among the resource group in response to detecting at least one of the other computing nodes belonging to the corresponding resource group is reachable following said disconnecting. 28. The computing node of claim 27, wherein the means for executing is configured for creating for the second client data a locality control object that defines ownership of the second client data, the distributed client service selectively providing the client one of read-only access or read/write access of the second client data following receipt of the second request by the distributed client service, based on the service attribute and the data attribute. 29. The computing node of claim 28, wherein: the distributed client service provides read-only access of the second client data based on the data attribute specifying the second client data is a message having been sent by the client for reception by a destination; the distributed client service provides read/write access of the second client data based on the data attribute specifying the second client data is a data file that the client is authorized to modify, the service attribute specifying the distributed client service providing file system storage and retrieval for the client. 30. The computing node of claim 26, wherein the means for executing is configured for supplying the client data while the computing node is disconnected from the network based on selectively providing read/write access to the client based on the service attribute and the data attribute.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (7)
Lucas Klostermann NL, Data partitioning and duplication in a distributed data processing system.
Odnert Daryl (Boulder Creek CA) Santhanam Vatsa (Sunnyvale CA), Method and apparatus for compiling computer programs with interprocedural register allocation.
Odnert Daryl (Boulder Creek CA) Santhanam Vatsa (Sunnyvale CA), Method and apparatus for compiling computer programs with interproceduural register allocation.
Choquier Philippe,FRX ; Peyroux Jean-Francios ; Griffin William J., Method of redirecting a client service session to a second application server without interrupting the session by forwa.
Toebes,John; Turner,Bryan C.; Walker,Douglas Jay, Movement of data in a distributed database system to a storage location closest to a center of activity for the data.
Kays,David; Shaji,Ullattil; Whalen,William J.; Carlson,Nick; Cheng,Derek C. Y.; Myburgh,Rhynier; Gupta,Rahul; Hassel,Kenik, System and method for reporting hierarchically arranged data in markup language formats.
Kilgard, Mark J.; Lindholm, John Erik; Glanville, Robert Steven; Gold, Michael I., System, method and computer program product for matrix tracking during vertex processing in a graphics pipeline.
Walker, Douglas Jay; Turner, Bryan C.; Toebes, John, Distributed client services based on execution of service attributes and data attributes by multiple nodes in resource groups.
Walker, Douglas Jay; Turner, Bryan C.; Toebes, John, Distributed client services based on execution of service attributes and data attributes by multiple nodes in resource groups.
Turner, Bryan C.; Toebes, John; Walker, Douglas Jay, Distributed computing based on multiple nodes with determined capacity selectively joining resource groups having resource requirements.
Turner, Bryan C.; Toebes, John; Walker, Douglas Jay, Distributed computing based on multiple nodes with determined capacity selectively joining resource groups having resource requirements.
Turner, Bryan C.; Toebes, John; Walker, Douglas Jay, Distributed computing based on multiple nodes with determined capacity selectively joining resource groups having resource requirements.
Cacheria, III, Anthony M.; Hooker, David; McHugh, Wayne Thomas; Glover, Kristopher; Edwards, Webb; Holbrook, Arthur Martin; Jenkins, Barrett, System for providing transaction services to a plurality of user devices.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.