USRE49505EExpiredUtility

Servicing device aggregates

Assignee: INTEL CORPPriority: Oct 24, 2002Filed: Jan 12, 2015Granted: Apr 25, 2023
Est. expiryOct 24, 2022(expired)· nominal 20-yr term from priority
G06F 9/5072G06F 9/5061G06F 9/5055
46
PatentIndex Score
0
Cited by
92
References
173
Claims

Abstract

A constellation is determined in reference to a particular combination of devices and/or software, some or all of which may be coupled with a network. A constellation addresses aggregate capabilities provided by a combination of devices and/or software available on the network. The network may define multiple constellations. Services are written for constellations, and the services may be pulled from external sources for use on the network. A server on the network, such as a service host, may coordinate and manage obtaining services from the external sources, and removing or disabling services for constellations no longer valid.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method for a service source to provision resources communicatively coupled with a first local area network, said resources including devices or web services associated with in an environment, the method comprising:
 receiving from a service host a resource context identifying constellations of the resources for the environment constellation of resources in response to an addition of a first electronic device to the first local area network, different sets of the devices included in different constellations; 
 accessing service descriptions of services offered by the service source as well as services offered by other service sources communicatively coupled with the service source; 
 mapping the resource context constellations against the accessed service descriptions to determine at least one service operable on selected ones of the resources in the resource context, said selected ones corresponding to a constellation to aggregate a first function of the first electronic device and a second function of a second electronic device, the first and second electronic devices corresponding to at least one of the constellations; and 
 providing an identification of the at least one determined service to the service host to facilitate provisioning of the first and second electronic devices in at least one of the at least one constellations to collectively perform an aggregated function utilizing the first and second functions of the first and second electronic devices in the first local area network, the aggregated function corresponding to a third device which is different from the first electronic device and different from the second electronic device. 
 
     
     
       2. The method of  claim 1 , wherein the resource context is received over a second network different from the first local area network. 
     
     
       3. The method of  claim 1 , wherein the resource context is determined based at least in part on a monitoring of communicative couplings of machines to the first local network. 
     
     
       4. The method of  claim 1 , wherein the accessing of the service descriptions of the services offered by the service sources comprises:
 cataloging, prior to receiving the resource context, services provided by the service sources. 
 
     
     
       5. The method of  claim 1 , wherein the accessing of the service descriptions of the services offered by the service hosts sources comprises:
 cataloging services provided by the service sources. 
 
     
     
       6. The method of  claim 1 , further comprising:
 responsive to receiving the resource context, querying a service catalog for descriptions of services currently offered by the service sources. 
 
     
     
       7. The method of  claim 1 , further comprising:
 receiving a request to use the at least one determined service; and 
 facilitating access to program code required to use the at least one determined service. 
 
     
     
       8. The method of  claim 7 , wherein the facilitating of the access to program code comprises a selected one of:
 providing a Uniform Resource Locator (URL) to the program code; or 
 providing a Web Service URI (Uniform Resource Identifier) for accessing and downloading the program code. 
 
     
     
       9. The method of  claim 7 , wherein the facilitating of the access to the program code comprises:
 copying the program code from a storage containing the at least one determined service; and 
 sending the program code to the service host. 
 
     
     
       10. The method of  claim 1 , further comprising:
 charging the service host a fee associated with the determined service. 
 
     
     
       11. A non-transitory computer-readable storage medium storing comprising stored data thereon for a service source to provision resources communicatively coupled with a first network, said resources including devices or web services associated with an environment, wherein the data, when accessed, results in causes a machine performing to:
 receivingreceive from a service host a resource context forto identify said devices of the environment in response to an addition of a first device to the first network; 
 accessingaccess service descriptions of services offered by the service source as well as services offered by service cataloging agents or brokers representing sources communicatively coupled with the service source; 
 mappingmap the resource context against the accessed service descriptions to determine at least one service operable onto aggregate functions of selected ones of the resources including a first function of the first device and a second function of a second device, said selected resources corresponding to a constellation including the first device and the second device, the second function different from the first function, the selected resources to collectively implement an aggregated function utilizing the first and second functions of the first and second devices in the first network, the aggregated function corresponding to a third device which is different from the first device and different from the second device; and 
 providingprovide an identification of the at least one determined service to the sourceservice host. 
 
     
     
       12. The non-transitory computer readable storage medium of  claim 11  further including data which wherein the data, when accessed, results in causes the machine performing to:
 receivingreceive the resource context over a second network different from the first network. 
 
     
     
       13. The non-transitory computer readable storage medium of  claim 11  further including data which wherein the data, when accessed, results in causes the machine performing to:
 determiningdetermine the resource context based at least in part on a monitoring of communicative couplings of machines to the first network. 
 
     
     
       14. The non-transitory computer readable storage medium of  claim 11  wherein the datafor accessing, when accessed, causes the machine to access the service descriptions of services offered by the service sources further includes data which, when accessed, results in the machine performing by:
 cataloging, prior to receiving the resource context, services provided by the service sources. 
 
     
     
       15. The non-transitory computer readable storage medium of  claim 11  further including wherein the datawhich, when accessed, results in causes the machine performing to:
 catalogingcatalog services provided by the service sources. 
 
     
     
       16. The non-transitory computer readable storage medium of  claim 11  further including wherein the datawhich, when accessed, results in causes the machine performing to:
 responsive to receiving the resource context, querying query the service sources for descriptions of services currently offered by the service sources. 
 
     
     
       17. The non-transitory computer readable storage medium of  claim 11  further including wherein the datawhich, when accessed, results in causes the machine performing to:
 receivingreceive a request to use the at least one determined service; and 
 facilitatingfacilitate access to program code required to use the at least one determined service. 
 
     
     
       18. The non-transitory computer readable storage medium of  claim 17 , wherein the datafor facilitating access to the program further includes data which, when accessed, results in causes the machine performing to facilitate access to the program code at least by:
 providing a Uniform Resource Locator (URL) to the program code. 
 
     
     
       19. The non-transitory computer readable storage medium of  claim 11  further including wherein the datawhich, when accessed, results in causes the machine performing to:
 chargingcharge the source a fee associated with the at least one determined service. 
 
     
     
       20. The method of claim 1, wherein the resource context includes at least one service and the at least one constellation includes at least one of the at least one service.  
     
     
       21. The non-transitory computer-readable storage medium of claim 11, wherein the resource context includes at least one additional service and the constellation includes at least one of the at least one additional service.  
     
     
       22. A non-transitory computer storage medium comprising instructions that, when executed by one or more processors, cause the one or more processors to at least:
 obtain a resource context identified by a first device, the resource context corresponding to a plurality of electronic devices in a peer-to-peer network, different combinations of the electronic devices corresponding to different constellations, different constellations providing different logical platforms, at least one of the logical platforms including at least a first electronic device and a second electronic device, the first electronic device different than the second electronic device, the first electronic device having a first function, the second electronic device having a second function different than the first function, the resource context to be updated in response to at least one of:
 an addition of a new device to the peer-to-peer network, 
 an addition of a new service to the peer-to-peer network, 
 a removal of an existing device from the electronic devices, or 
 a removal of an existing service from the peer-to-peer network; 
   access a plurality of service descriptions corresponding to the resource context, the plurality of service descriptions describing additional services at least one of which corresponds to an aggregated function which may be implemented by the at least one of the logical platforms;   store information identifying the at least one additional service, the at least one additional service is discoverable in response to a first request from a second device in the peer-to-peer network;   utilize a supervisory pull system to automatically obtain software to provision at least the first and second electronic devices in the at least one logical platform to implement the aggregated function in the peer-to-peer network, the aggregated function utilizing the first function and the second function, the aggregated function different from the first function and different from the second function, wherein the software defines services that are pre-written for interfaces of the resource context; and   wherein the first device and the second device are configurable as both:   (i) a service host within the peer-to-peer network, wherein the service host is operative as a local or remote server to monitor at least one communication channel communicatively coupling the devices to detect the at least one of: the addition of the new device, the addition of the new service, the removal of the existing device, or the removal of the existing service; and,   (ii) a peer device within the peer-to-peer network, wherein the peer device is operative as a local or remote server to monitor the at least one communication channel to detect the at least one of: the addition of the new device, the addition of the new service, the removal of the existing device, or the removal of the existing service.    
     
     
       23. The non-transitory computer storage medium of claim 22 wherein the instructions cause the one or more processors to access the plurality of service descriptions at least by receiving one or more service descriptions from the peer device.  
     
     
       24. The non-transitory computer storage medium of claim 23 wherein the instructions cause the one or more processors to at least catalog one or more of the plurality of service descriptions corresponding to the electronic devices.  
     
     
       25. The non-transitory computer storage medium of claim 24 wherein the second device is charged for access to the information identifying the at least one additional service.  
     
     
       26. The non-transitory computer storage medium of claim 25 wherein the instructions cause the one or more processors to access the plurality of service descriptions corresponding to the electronic devices of the resource context at least by querying a service catalog accessible to the peer-to-peer network.  
     
     
       27. The non-transitory computer storage medium of claim 26 wherein the at least one additional service is software executable to cause at least the first and second electronic devices to collectively perform the aggregated function to implement a third device.  
     
     
       28. The non-transitory computer storage medium of claim 27 wherein the instructions cause the one or more processors to access the plurality of service descriptions corresponding to the electronic devices of the resource context at least by:
 accessing the service catalog of available services for the resource context.    
     
     
       29. The non-transitory computer storage medium of claim 22, wherein the resource context includes the existing service and the at least one constellation includes the existing service.  
     
     
       30. A non-transitory computer storage medium comprising stored instructions that, when executed, cause one or more processors to at least:
 identify, at a first device, a resource context, wherein the resource context identifies a plurality of devices that are accessible to the first device in a peer-to-peer network;   access a plurality of service descriptions corresponding to the devices of the resource context, a first one of the plurality of service descriptions corresponding to software that may be executed to combine functionality of at least two of the devices in the peer-to-peer network to implement a second device in the peer-to-peer network, the second device having functionality different than the functionality of the at least two devices; and   store information identifying the software,   wherein the second device is implemented utilizing the software and the at least two of the devices in the peer-to-peer network, and   wherein the service descriptions are discoverable in response to a first request from a third device in the peer-to-peer network.    
     
     
       31. The non-transitory computer storage medium of claim 30 wherein the instructions cause the one or more processors to at least:
 receive from the first device an indication of at least one device or service added to or removed from the peer-to-peer network; and   access at least one of the service descriptions corresponding to the at least one device or service added to or removed from the peer-to-peer network.    
     
     
       32. The non-transitory computer storage medium of claim 30 wherein the instructions cause the one or more processors to access the plurality of service descriptions at least by receiving one or more service descriptions from a peer device.  
     
     
       33. The non-transitory computer storage medium of claim 30 wherein the instructions cause the one or more processors to access the plurality of service descriptions at least by receiving a link to one or more service descriptions.  
     
     
       34. The non-transitory computer storage medium of claim 33 wherein the instructions cause the one or more processors to receive the link to the one or more service descriptions at least by receiving a Uniform Resource Locator (URL) or Web Service Uniform Resource Indicator (URI).  
     
     
       35. The non-transitory computer storage medium of claim 33 wherein the link is received predictively.  
     
     
       36. The non-transitory computer storage medium of claim 33 wherein the link is a link to a constellation.  
     
     
       37. The non-transitory computer storage medium of claim 30 wherein the instructions cause the one or more processors to identify the resource context at least by receiving an identification of at least one of the plurality of the devices.  
     
     
       38. The non-transitory computer storage medium of claim 30 wherein the instructions cause the one or more processors to at least transmit a response to a discovery protocol request.  
     
     
       39. The non-transitory computer storage medium of claim 38 wherein the instructions cause the one or more processors to transmit the response utilizing a Web Services protocol.  
     
     
       40. The non-transitory computer storage medium of claim 39 wherein the Web Services protocol is a tag-based markup language comprising an extensible markup language (XML), Web Services Description Language (WSDL), Simple Object Access Protocol (SOAP), or Universal Description Discovery and Integration (UDDI) protocol.  
     
     
       41. The non-transitory computer storage medium of claim 30 wherein the instructions cause the one or more processors to at least track addition and removal of devices of the resource context.  
     
     
       42. The non-transitory computer storage medium of claim 30 wherein the instructions cause the one or more processors to at least catalog one or more of the plurality of service descriptions corresponding to the devices.  
     
     
       43. The non-transitory computer storage medium of claim 30 wherein the first device is charged for access to the second device.  
     
     
       44. The non-transitory computer storage medium of claim 30 wherein the first device is charged for access to the information identifying the second device.  
     
     
       45. The non-transitory computer storage medium of claim 30 wherein the instructions cause the one or more processors to access the plurality of service descriptions corresponding to the devices of the resource context at least by querying a service catalog accessible to the peer-to-peer network.  
     
     
       46. The non-transitory computer storage medium of claim 30 wherein the first device and the third device are peer devices.  
     
     
       47. The non-transitory computer storage medium of claim 46 wherein the first device controls operation of the second device by executing the software.  
     
     
       48. The non-transitory computer storage medium of claim 30 wherein the instructions cause the one or more processors to at least:
 utilize a supervisory pull system to automatically obtain the software to provision the at least two devices to implement the second device.    
     
     
       49. The non-transitory computer storage medium of claim 48 wherein the software defines services that are pre-written for interfaces of the resource context.  
     
     
       50. The non-transitory computer storage medium of claim 49 wherein the software is suspended, removed, or updated automatically.  
     
     
       51. The non-transitory computer storage medium of claim 30 wherein the instructions cause the one or more processors to access the plurality of service descriptions corresponding to the devices of the resource context by at least accessing a catalog of available services for the resource context.  
     
     
       52. The non-transitory computer storage medium of claim 51 wherein the instructions cause the one or more processors to access the catalog of available services in response to a real-time query.  
     
     
       53. The non-transitory computer storage medium of claim 51 wherein the accessed plurality of service descriptions includes service descriptions corresponding to devices or services that are predicted to be part of the resource context.  
     
     
       54. The non-transitory computer storage medium of claim 51 wherein the instructions cause the one or more processors to at least receive a subset of the available services for the resource context within the catalog.  
     
     
       55. The non-transitory computer storage medium of claim 30 wherein the instructions cause the one or more processors to at least:
 store information identifying at least one predicted aggregate service.    
     
     
       56. The non-transitory computer storage medium of claim 30 wherein the instructions cause the one or more processors to at least:
 store information identifying at least one additional aggregate service for an additional device to amalgamate two or more functions available in the peer-to-peer network.    
     
     
       57. The non-transitory computer storage medium of claim 30 wherein the instructions cause the one or more processors to at least:
 control the second device.    
     
     
       58. The non-transitory computer storage medium of claim 30 wherein the instructions cause the one or more processors to at least:
 receive one or more commands for controlling the second device.    
     
     
       59. The non-transitory computer storage medium of claim 30 wherein the instructions cause the one or more processors to at least:
 transmit one or more commands for controlling the second device.    
     
     
       60. The non-transitory computer storage medium of claim 30, wherein the resource context includes at least one service and the at least one constellation includes at least one of the at least one service.  
     
     
       61. A method of identifying virtual devices to be delivered in a peer-to-peer network, the method comprising:
 obtaining a resource context identifying a plurality of devices that are accessible to a first device in the peer-to-peer network, a first constellation of the devices to collectively implement a first virtual device and a second constellation of the devices to collectively implement a second virtual device different than the first virtual device, the first constellation different than the second constellation;   accessing a plurality of service descriptions corresponding to the devices, the plurality of service descriptions describing functionality of the devices; and   storing information identifying at least one of the first or the second virtual devices, wherein the at least one of the first or the second virtual device is constructed utilizing the accessed plurality of service descriptions, and wherein a service description for the at least one of the first or the second virtual device is discoverable in response to a first request from a second device in the peer-to-peer network.    
     
     
       62. The method of claim 61 further comprising:
 receiving an indication of at least one device or service added to or removed from the peer-to-peer network;   accessing at least one service description corresponding to the at least one device or service added to or removed from the peer-to-peer network; and   storing a service description for at least one subsequent virtual device different from the first and the second virtual devices, wherein the at least one subsequent virtual device is constructed utilizing the at least one service description corresponding to the at least one device or service added to or removed from the peer-to-peer network, and wherein a service description for the at least one subsequent virtual device is discoverable in response to a second request from the second device in the peer-to-peer network.    
     
     
       63. The method of claim 61 wherein the accessing of the plurality of service descriptions comprises receiving one or more service descriptions from a peer device.  
     
     
       64. The method of claim 61 wherein the accessing of the plurality of service descriptions comprises receiving a link to one or more service descriptions.  
     
     
       65. The method of claim 61 wherein the identifying of the resource context comprises receiving an identification of at least one of the plurality of devices.  
     
     
       66. The method of claim 61 further comprising transmitting a response to a discovery protocol request received from the second device.  
     
     
       67. The method of claim 61 further comprising tracking the addition and removal of devices of the resource context.  
     
     
       68. The method of claim 61 further comprising cataloging the plurality of service descriptions corresponding to the devices.  
     
     
       69. The method of claim 61 wherein the second device is charged for access to the first virtual device.  
     
     
       70. The method of claim 61 wherein the second device is charged for access to the information identifying the at least one first or second virtual device.  
     
     
       71. The method of claim 61 wherein the accessing of the plurality of service descriptions corresponding to the devices of the resource context comprises querying a service catalog accessible to the peer-to-peer network.  
     
     
       72. The method of claim 61 wherein the first device and the second device are peer devices.  
     
     
       73. The method of claim 61 further comprising utilizing a supervisory pull system to automatically obtain software to provision the devices of the first constellation to implement the first virtual device.  
     
     
       74. The method of claim 73 wherein the software defines services that are pre-written for interfaces of the resource context.  
     
     
       75. The method of claim 74 wherein the software is suspended, removed, or updated automatically.  
     
     
       76. The method of claim 61 wherein the accessing of the plurality of service descriptions corresponding to the devices of the resource context comprises accessing a catalog of available services for the resource context.  
     
     
       77. The method of claim 76 wherein a real-time query is utilized for accessing the catalog of available services.  
     
     
       78. The method of claim 76 wherein the accessed plurality of service descriptions includes services descriptions corresponding to devices or services that are predicted to be part of the resource context.  
     
     
       79. The method of claim 61, wherein the resource context includes at least one service and the at least one constellation includes at least one of the at least one service.  
     
     
       80. A system for identifying aggregate services of a peer-to-peer network, the system comprising:
 a first device of the peer-to-peer network, the first device including:
 a memory including computer-executable instructions; and 
 a processor to execute the instructions to:
 generate a resource context identifying a plurality of devices that are accessible to the first device in the peer-to-peer network, different combinations of the devices corresponding to different constellations, the processor to update the resource context in response to at least one of: an addition of a new device, an addition of a new service, a removal of an existing device, or a removal of an existing service; and 
 
   a second device including:
 memory including computer-executable instructions; and 
 a processor to execute the instructions to:
 obtain the resource context from the first device; 
 access a plurality of service descriptions corresponding to the devices of the resource context, the plurality of service descriptions describing functionality of the devices; 
 return information identifying a first aggregate service corresponding to a first of the constellations to the first device, wherein the first aggregate service is to provide a first virtual device via the first constellation; and 
 return information identifying a second aggregate service corresponding to a second of the constellations to the first device, the second aggregate service to provide a second virtual device via the second constellation, the second virtual device different than the first virtual device.  
 
   
     
     
       81. The system, of claim 80, wherein the resource context includes the existing service and the first constellation includes the existing service.  
     
     
       82. A system for identifying aggregate services of a peer-to-peer network, the system comprising:
 means for identifying a resource context specifying a plurality of devices in the peer-to-peer network, different combinations of the devices corresponding to different constellations;   means for accessing a plurality of service descriptions corresponding to the devices of the resource context, the plurality of service descriptions describing functionality of the devices; and   means for storing information identifying at least one virtual device corresponding to at least one of the constellations, wherein the at least one virtual device is constructed utilizing the accessed plurality of service descriptions, and wherein the service description for the at least one virtual device is discoverable in response to a first request from a device in the peer-to-peer network.    
     
     
       83. The system of claim 82 further comprising:
 means for tracking addition and removal of devices within the peer-to-peer network, the identifying means to update the resource context in response to the tracking means detecting at least one of: an addition of a new device to the peer-to-peer network, an addition of a new service to the peer-to-peer network, a removal of an existing device from the peer-to-peer network, or a removal of an existing service from the peer-to-peer network.    
     
     
       84. The system of claim 82, wherein the resource context includes at least one service and the at least one of the constellations includes at least one of the at least one service.  
     
     
       85. A non-transitory computer storage medium comprising stored instructions that, when executed, cause one or more processors external to a peer-to-peer network to at least:
 access a plurality of service descriptions corresponding to a plurality of devices of a resource context, wherein the resource context at least identifies the devices that are in the peer-to-peer network, the plurality of service descriptions describe functionality of the devices;   identify a first aggregate service corresponding to an aggregation of the functionality of a first subset of the devices in the peer-to-peer network based on corresponding ones of the service descriptions;   identify a second aggregate service corresponding to an aggregation of the functionality of a second subset of the devices in the peer-to-peer network based on corresponding ones of the service descriptions; and   provide software to the peer-to-peer network, the software to enable at least one of the first aggregate service or the second aggregate service within the peer-to-peer network.    
     
     
       86. The non-transitory computer storage medium of claim 85 wherein the instructions cause the one or more processors to at least:
 receive an indication of at least one device or service added to or removed from the peer-to-peer network;   access at least one service description corresponding to the at least one device or service added to or removed from the peer-to-peer network; and   store a service description for at least one subsequent aggregate service,   wherein the at least one subsequent aggregate service is selected utilizing the at least one service description corresponding to the at least one device or service added to or removed from the peer-to-peer network, and   wherein the service description for the at least one subsequent aggregate service is discoverable in response to a second request from the device in the peer-to-peer network.    
     
     
       87. The non-transitory computer storage medium of claim 85 wherein the instructions cause the one or more processors to access the plurality of service descriptions at least by receiving one or more service descriptions from a peer device.  
     
     
       88. The non-transitory computer storage medium of claim 85 wherein the instructions cause the one or more processors to access the plurality of service descriptions at least by receiving a link to one or more service descriptions.  
     
     
       89. The non-transitory computer storage medium of claim 88 wherein the instructions cause the one or more processors to receive the link to the one or more service descriptions at least by receiving a Uniform Resource Locator (URL) or Web Service Uniform Resource Indicator (URI).  
     
     
       90. The non-transitory computer storage medium of claim 88 wherein the link is received predictively.  
     
     
       91. The non-transitory computer storage medium of claim 88 wherein the link is a link to a constellation.  
     
     
       92. The non-transitory computer storage medium of claim 85 wherein the instructions cause the one or more processors to at least transmit a response to a discovery protocol request.  
     
     
       93. The non-transitory computer storage medium of claim 92 wherein the instructions cause the one or more processors to transmit the response utilizing a Web Services protocol.  
     
     
       94. The non-transitory computer storage medium of claim 93 wherein the Web Services protocol is a tag-based markup language comprising an extensible markup language (XML), Web Services Description Language (WSDL), Simple Object Access Protocol (SOAP), or Universal Description Discovery and Integration (UDDI) protocol.  
     
     
       95. The non-transitory computer storage medium of claim 85 wherein the instructions cause the one or more processors to at least track the addition and removal of devices of the resource context.  
     
     
       96. The non-transitory computer storage medium of claim 85 wherein the instructions cause the one or more processors to at least catalog one or more of the plurality of service descriptions corresponding to the devices.  
     
     
       97. The non-transitory computer storage medium of claim 85 wherein a device within the peer-to-peer network is charged for access to the at least one of the first aggregate service or the second aggregate service.  
     
     
       98. The non-transitory computer storage medium of claim 85 wherein a device within the peer-to-peer network is charged for access to the information identifying the at least one of the first aggregate service or the second aggregate service.  
     
     
       99. The non-transitory computer storage medium of claim 85 wherein the instructions cause the one or more processors to access the plurality of service descriptions corresponding to the devices of the resource context by at least querying a service catalog accessible to the peer-to-peer network.  
     
     
       100. The non-transitory computer storage medium of claim 85 wherein the first aggregate service is different than the second aggregate service.  
     
     
       101. The non-transitory computer storage medium of claim 85 wherein the instructions cause the one or more processors to access the plurality of service descriptions by at least:
 utilizing a supervisory pull system to automatically obtain the software for the at least one of the first or the second aggregate service.    
     
     
       102. The non-transitory computer storage medium of claim 101 wherein the software defines services that are pre-written for interfaces of the resource context.  
     
     
       103. The non-transitory computer storage medium of claim 102 wherein the software for the at least one of the first or the second aggregate service is suspended, removed, or updated automatically.  
     
     
       104. The non-transitory computer storage medium of claim 85 wherein the instructions cause the one or more processors to access the plurality of service descriptions corresponding to the devices of the resource context by at least accessing a catalog of available services for the resource context.  
     
     
       105. The non-transitory computer storage medium of claim 104 wherein the instructions cause the one or more processors to access the catalog of available services in response to a real-time query.  
     
     
       106. The non-transitory computer storage medium of claim 104 wherein the accessed plurality of service descriptions includes services descriptions corresponding to devices or services that are predicted to be part of the resource context.  
     
     
       107. The non-transitory computer storage medium of claim 104 wherein the instructions cause the one or more processors to at least obtain a subset of the available services for the resource context within the catalog.  
     
     
       108. The non-transitory computer storage medium of claim 85 wherein the instructions cause the one or more processors to at least store information identifying at least one predicted aggregate service.  
     
     
       109. The non-transitory computer storage medium of claim 85 wherein the instructions cause the one or more processors to at least store information identifying at least one additional aggregate service for an additional identified constellation.  
     
     
       110. The non-transitory computer storage medium of claim 85 wherein the instructions cause the one or more processors to at least control the at least one of the first or the second aggregate service.  
     
     
       111. The non-transitory computer storage medium of claim 85 wherein the instructions cause the one or more processors to at least obtain one or more commands to control the at least one of the first or the second aggregate service.  
     
     
       112. The non-transitory computer storage medium of claim 85 wherein the instructions cause the one or more processors to at least transmit one or more commands to control the at least one of the first or the second aggregate service.  
     
     
       113. The non-transitory computer storage medium of claim 85, wherein the resource context includes at least one service accessible in the peer-to-peer network and the first virtual device utilizes the at least one service.  
     
     
       114. A method of provisioning software within a peer-to-peer network, the method comprising:
 accessing a plurality of service descriptions corresponding to a plurality of devices of a resource context, wherein the resource context identifies the devices that are accessible to a first device in the peer-to-peer network, the plurality of service descriptions describe functionality of the devices;   operating one or more processors to provision the peer-to-peer network with first software to implement a first virtual device corresponding to a first constellation of two or more of the devices based on one or more of the accessed plurality of service descriptions, the two or more devices of the first constellation respectively having corresponding functionalities, the first virtual device having an aggregated functionality different from the functionalities corresponding to the two or more devices of the first constellation; and   operating the one or more processors to provision the peer-to-peer network with second software to implement a second virtual device corresponding to a second constellation of two or more of the devices, the two or more devices of the second constellation including a different set of the devices than the first constellation.    
     
     
       115. The method of claim 114 further comprising:
 receiving at the first device an indication of at least one device or service added to or removed from the peer-to-peer network;   accessing at least one service description corresponding to the at least one device or service added to or removed from the peer-to-peer network; and   storing a service description for at least one subsequent aggregate service corresponding to a subsequent constellation,   wherein the at least one subsequent aggregate service is constructed utilizing the at least one service description corresponding to the at least one device or service added to or removed from the peer-to-peer network, and wherein the service description for the at least one subsequent aggregate service is discoverable in response to a request from a second device in the peer-to-peer network.    
     
     
       116. The method of claim 115 wherein the method further comprises transmitting a response to a discovery protocol request received from a second device.  
     
     
       117. The method of claim 116 wherein the first device is charged for access to the first virtual device.  
     
     
       118. The method of claim 116 wherein the first device is charged for access to the information identifying the first virtual device.  
     
     
       119. The method of claim 115 wherein the first device and a second device are peer devices.  
     
     
       120. The method of claim 114 wherein the accessing of the plurality of service descriptions comprises receiving one or more service descriptions from a peer device.  
     
     
       121. The method of claim 114 wherein the accessing of the plurality of service descriptions comprises receiving a link to one or more service descriptions.  
     
     
       122. The method of claim 114 wherein the method further comprises tracking the addition and removal of devices of the resource context.  
     
     
       123. The method of claim 114 wherein the method further comprises cataloging the plurality of service descriptions corresponding to the devices.  
     
     
       124. The method of claim 114 wherein the accessing of the plurality of service descriptions corresponding to the devices or services of the resource context comprises querying a service catalog accessible to the peer-to-peer network.  
     
     
       125. The method of claim 114 further comprising utilizing a supervisory pull system to automatically obtain the software to provision the first constellation.  
     
     
       126. The method of claim 125 wherein the at least one constellation defines services that are pre-written for interfaces of the resource context.  
     
     
       127. The method of claim 126 wherein the software for the first constellation is suspended, removed, or updated automatically.  
     
     
       128. The method of claim 114 wherein the accessing of the plurality of service descriptions corresponding to the devices of the resource context comprises accessing a catalog of available services for the resource context.  
     
     
       129. The method of claim 128 wherein a real-time query is utilized for accessing the catalog of available services.  
     
     
       130. The method of claim 128 wherein the accessed plurality of service descriptions includes services descriptions corresponding to devices or services that are predicted to be part of the resource context.  
     
     
       131. The method of claim 114, wherein the resource context includes at least one service and the first constellation includes at least one of the at least one service.  
     
     
       132. A first device for delivering an aggregate service to a peer-to-peer network, the first device comprising:
 a memory including computer-executable instructions; and   at least one processor to execute the instructions to:
 access a plurality of service descriptions corresponding to a plurality of devices of the peer-to-peer network, the plurality of service descriptions describing functionality of the devices; 
 deliver a first aggregate service to provision the peer-to-peer network to implement a first virtual device corresponding to a first constellation of two or more of the devices based on one or more of the accessed plurality of service descriptions, the two or more devices of the first constellation respectively having corresponding functionalities, the first virtual device having an aggregated functionality different from the functionalities corresponding to the two or more devices of the first constellation; and 
 deliver a second aggregate service to provision a second constellation to implement a second virtual device, the second constellation including a different set of the devices than the first constellation.  
   
     
     
       133. The first device of claim 132, wherein the first constellation includes at least one service.  
     
     
       134. A non-transitory computer storage medium comprising stored instructions that, when executed by one or more processors of a first device, cause the one or more processors to at least:
 access a resource context identifying resources of a peer-to-peer network, wherein the resources identified by the resource context includes the first device and a plurality of devices that are accessible to the first device in the peer-to-peer network;   identify at least one virtual device to be constructed from a plurality of service descriptions corresponding to the resources of the resource context including at least one first service description of the first device, the first device and the plurality of the devices having corresponding functionalities, the first virtual device having an aggregated functionality different from the corresponding functionalities; and   transmit to a second device within the peer-to-peer network at least one request to update the at least one virtual device with the at least one first service description of the first device, wherein the at least one first service description describes functionality of devices or services accessible to the first device.    
     
     
       135. The non-transitory computer storage medium of claim 134 wherein the instructions cause the one or more processors to at least receive a response from the second device in response to the at least one request.  
     
     
       136. The non-transitory computer storage medium of claim 135 wherein the response indicates that the at least one virtual device is further constructed from the at least one first service description.  
     
     
       137. The non-transitory computer storage medium of claim 134, wherein the resource context includes at least one of the services accessible to the first device.  
     
     
       138. A method for joining a first device to an aggregate service within a peer-to-peer network, the method comprising:
 accessing a resource context within the peer-to-peer network, wherein the resource context includes the first device and a plurality of devices that are accessible to the first device in the peer-to-peer network;   identifying software to provision a logical platform including the first device and at least one of the plurality of devices to implement at least one aggregated functionality within the peer-to-peer network; and   transmitting to a second device within the peer-to-peer network at least one request to identify the at least one first service description of the first device to identify the aggregated functionality enabled by the joining of the first device to the aggregate service.    
     
     
       139. The method of claim 138 wherein the method further comprises receiving a response from the second device in response to the at least one request.  
     
     
       140. The method of claim 139 wherein the response indicates that the at least one virtual device is further constructed from the at least one first service description.  
     
     
       141. The method of claim 138, wherein the resource context includes at least one service that is accessible to the first device within the peer-to-peer network.  
     
     
       142. A system to identify an aggregate service to be performed within a peer-to-peer network, the system comprising:
 a memory including computer-executable instructions; and   one or more processors to execute the instructions to:   access a resource context identifying a first device added to the peer-to-peer network and a plurality of devices that are accessible to the first device in the peer-to-peer network;   identify at least one virtual device to be executed by the first device and the devices of the resource context; and   cause transmission to a second device within the peer-to-peer network at least one request to update the aggregate service with at least one first service description of the first device, wherein the at least one first service description describes functionality of the at least one virtual device.    
     
     
       143. The system of claim 142 wherein the one or more processors are to receive a response from the second device in response to the at least one request.  
     
     
       144. The system of claim 143 wherein the response indicates that the at least one virtual device is further constructed from the at least one first service description.  
     
     
       145. The system of claim 142, wherein the resource context includes at least one service that is accessible to the first device within the peer-to-peer network, and the first service description describes functionality of at least one of the at least one service.  
     
     
       146. A non-transitory computer storage medium comprising stored instructions that, when executed by one or more processors of a first device, cause the one or more processors to at least:
 receive a resource context which identifies a plurality of devices in a peer-to-peer network;   identify at least one aggregate service based on the resource context, the at least one aggregate service corresponding to a plurality of service descriptions of a subset of the devices of the resource context; and   return executable instructions to control the subset of the devices of the resource context to collectively perform the at least one aggregate service to implement a virtual device in the peer-to-peer network.    
     
     
       147. The non-transitory computer storage medium of claim 146, wherein the resource context includes at least one service and the at least one aggregate service corresponds to at least one service description of at least one of the at least one service.  
     
     
       148. A method for controlling an aggregate service, the method comprising:
 accessing a resource context identifying a plurality of devices in a peer-to-peer network;   identifying at least one aggregate service based on the resource context, wherein the at least one aggregate service corresponds to a plurality of service descriptions of a subset of the devices of the resource context; and   returning executable instructions to cause the subset of the devices of the resource context to collectively perform the at least one aggregate service in the peer-to-peer network.    
     
     
       149. The method of claim 148, wherein the resource context includes at least one service and the at least one aggregate service corresponds to at least one service description of at least one of the at least one service.  
     
     
       150. A system for controlling an aggregate service within a peer-to-peer network, the system comprising:
 a memory including computer-executable instructions; and   one or more processors to execute the instructions to:   access a resource context which identifies a plurality of devices in the peer-to-peer network;   identify at least one aggregate service based on the resource context, the at least one aggregate service corresponding to a plurality of service descriptions of a subset of the devices of the resource context; and   return instructions to control the subset of the devices of the resource context to collectively perform the at least one aggregate service in the peer-to-peer network, the aggregate service to emulate a device different than the devices of the subset.    
     
     
       151. The system of claim 150, wherein the resource context includes at least one service and the at least one aggregate service corresponds to at least one service description of at least one of the at least one service.  
     
     
       152. A non-transitory computer storage medium comprising stored instructions that, when executed by one or more processors, cause the one or more processors to at least:
 obtain information indicating at least one of a device or service change within a resource context;   based upon the information indicating the device or service change, determine a new constellation of a plurality of separate resources in the resource context;   search a catalog to determine at least one catalogued service collectively executable by the plurality of the separate resources of the new constellation to emulate a device having functionality enabled by the at least one of the device or service change; and   store information identifying the at least one catalogued service.    
     
     
       153. The non-transitory computer storage medium of claim 152 wherein the at least one catalogued service is a common service or popular service.  
     
     
       154. The non-transitory computer storage medium of claim 152 wherein the instructions further cause one or more processors to at least:
 predictively obtain at least one predicted service not yet available for a second constellation; and   store information identifying the at least one predicted service.    
     
     
       155. The non-transitory computer storage medium of claim 152 wherein the one or more processors execute the instructions continuously.  
     
     
       156. The non-transitory computer storage medium of claim 152 wherein the catalog is dynamically generated through a real-time query.  
     
     
       157. The non-transitory computer storage medium of claim 152 wherein the instructions cause the one or more processors to at least:
 present via a user interface the at least one catalogued service.    
     
     
       158. The non-transitory computer storage medium of claim 152 wherein the instructions cause the one or more processors to at least:
 obtain a selection or information indicating an inspection of the at least one catalogued service.    
     
     
       159. The non-transitory computer storage medium of claim 152 wherein the at least one catalogued service includes access requirements.  
     
     
       160. The non-transitory computer storage medium of claim 159 wherein the access requirements comprise licensing terms or payment terms.  
     
     
       161. A method of service identification within a network, the method comprising:
 receiving information indicating at least one of a device or service change within a resource context;   based upon the information indicating the at least one of the device or service change, determining a new constellation of a plurality of independent resources in the resource context;   searching a catalog to determine at least one catalogued service collectively executable by the plurality of independent resources of the new constellation to emulate a device having functionality made possible by the at least one of the device or service change; and   storing information identifying the at least one catalogued service.    
     
     
       162. The method of claim 161 wherein the at least one catalogued service is a common service or popular service.  
     
     
       163. The method of claim 161 wherein the method further comprises:
 predictively obtaining at least one predicted service not yet available for a second constellation; and   storing information identifying the at least one predicted service.    
     
     
       164. The method of claim 161 wherein the method operates continuously.  
     
     
       165. The method of claim 161 wherein the catalog is dynamically generated through a real-time query.  
     
     
       166. The method of claim 161 wherein the method further comprises:
 presenting via a user interface the at least one catalogued service.    
     
     
       167. The method of claim 161 wherein the method further comprises:
 receiving a selection or information indicating an inspection of the at least one catalogued service.    
     
     
       168. The method of claim 161 wherein the at least one catalogued service includes access requirements.  
     
     
       169. The method of claim 168 wherein the access requirements comprise licensing terms or payment terms.  
     
     
       170. A system for identifying services accessible by a peer device within a network, the system comprising:
 a memory including computer-executable instructions; and   one or more processors to execute the instructions to:   obtain a resource context identifying a plurality of peer devices or services networked in a local network;   obtain information indicating at least one of a device or service change within the resource context;   based upon the information indicating the device change, determine a constellation of a plurality of networked peer resources in the resource context;   search a catalog to determine at least one catalogued service collectively executable by the plurality of networked peer resources of the constellation to emulate a device having functionality not available in the local network prior to the at least one of the device or service change; and   store information identifying the at least one catalogued service.    
     
     
       171. The system of claim 170 wherein the catalog is dynamically generated through a real-time query.  
     
     
       172. The system of claim 170 wherein the at least one catalogued service includes access requirements.  
     
     
       173. The system of claim 172 wherein the access requirements comprise licensing terms or payment terms.

Join the waitlist — get patent alerts

Track USRE49505E — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.