- Patent Number:
8,850,021
- Appl. No:
13/265778
- Application Filed:
December 17, 2010
- نبذة مختصرة :
Technologies are generally described for methods, instructions, and client applications for device discovery in a ubiquitous computing environment. In some examples, the methods, instructions, and client applications may facilitate the organization of features of devices in a ubiquitous computing environment into a series of hierarchical hash numbers, the ordering of the hierarchical hash numbers corresponding to the respective devices, and the searching for a particular one of the devices by attempting to match hashed search criteria to the ordered hierarchical hash numbers at one of the devices in the ubiquitous computing environment.
- Inventors:
Cao, Junwei (Beijing, CN); Wang, Zhen (Beijing, CN)
- Assignees:
Empire Technology Development LLC (Wilmington, DE, US)
- Claim:
1. A method, comprising: hashing, individually, features of devices in a ubiquitous computing environment into a series of hierarchical hash numbers, the features of each of the devices include a functional name and at least one descriptive attribute of the respective devices; organizing, the respective hash numbers into the series of hierarchical hash numbers by: receiving the functional name and at least one descriptive attribute of one of the devices into respective pre-configured data fields, and hashing each of the respective pre-configured data fields, including filling one of an empty one of the respective pre-configured data fields for the each of the received attributes with a predetermined value, the predetermined value is a numerical value, wherein the hierarchical hash numbers for each of the devices includes a concatenation of a base hash representation of, respectively, the functional name and the one or more descriptive attributes of the respective device; ordering the hierarchical hash numbers corresponding to the respective devices sequentially; receiving data entries including the functional name and at least one descriptive attribute of the device subject to a search; hashing the data entries results in hashed search criteria; and searching for a particular one of the devices by attempting to match the hashed search criteria to the ordered hierarchical hash numbers at one of the devices in the ubiquitous computing environment.
- Claim:
2. The method according to claim 1 , wherein the organizing includes: concatenating the hashed data fields.
- Claim:
3. The method according to claim 1 , wherein the organizing includes: classifying each of the devices individually according to the functional name and the at least one descriptive attribute, wherein further the functional name and the at least one descriptive attribute are entered into respective pre-configured data fields, and hashing the respective data fields; and wherein the ordering includes: ordering the collective hashed data fields for at least a portion of the devices hierarchically in a distributed table stored at one of the devices in the ubiquitous computing environment.
- Claim:
4. The method according to claim 1 , wherein the ubiquitous computing environment is a decentralized peer-to-peer network.
- Claim:
5. The method according to claim 1 , wherein the devices are hardware devices on a wireless communications network.
- Claim:
6. The method according to claim 1 , wherein the ordering includes storing the hierarchical hash values for at least a portion of all of the devices in sequential order in a figure table at one of the devices.
- Claim:
7. The method according to claim 1 , wherein each of the devices stores a figure table including the ordered hierarchical hash values and IP address for a predetermined number of other devices in the ubiquitous computing environment.
- Claim:
8. The method according to claim 1 , wherein the hashed search criteria includes the concatenation of the base hash representation of the functional name and the one or more descriptive attributes of the device subject to the search.
- Claim:
9. The method according to claim 1 , wherein the searching includes: receiving at least a descriptive function and at least one descriptive attribute of a sought device into respective pre-configured data fields; hashing each of the respective preconfigured data fields; concatenating the hashed data fields; and mapping the concatenated hashed data fields on to the hierarchical hash numbers corresponding to at least a portion of the devices.
- Claim:
10. A non-transitory computer-readable medium storing computer-executable instructions that, when executed, cause one or more processors to: receive attributes of a device in a de-centralized computing environment; hash the received attributes individually, by executing instructions to: execute a base hash function on a respective data field for each of the received attributes, and fill an empty one of the respective data fields for the each of the received attributes with a predetermined value, the predetermined value being a numerical value; combine the hashed attributes for the device; order the hashed attributes relative to those of a predetermined number of other devices; store the ordered hash attributes for at least a portion of the remaining devices in the de-centralized computing environment; receive hashed search criteria, by executing instructions to: receive data entries including the functional name and at least one descriptive attribute of the device subject to a search, and hash the data entries results in hashed search criteria; and map the received hash search criteria onto the stored hash attributes for those of the portion of devices on the de-centralized computing environment.
- Claim:
11. The non-transitory computer-readable medium according to claim 10 , wherein the stored computer-executable instructions are included in a software client residing on multiple devices in the de-centralized computing environment.
- Claim:
12. The non-transitory computer-readable medium according to claim 10 , wherein the received attributes include a functional name and at least one descriptive attribute of the device.
- Claim:
13. The non-transitory computer-readable medium according to claim 10 , wherein the computer-executable instructions that cause the one or more processors to order the hashed attributes cause the one or more processors to organize the combined hashed attributes in a distributed table along with the combined hashed attributes of at least a portion of the remaining devices in the de-centralized computing environment.
- Claim:
14. The non-transitory computer-readable medium according to claim 10 , wherein the stored computer-executable instructions are included in a software client residing on multiple devices in the de-centralized computing environment, and wherein further every device in the de-centralized computing environment on which the software client resides stores a distributed table in which the hashed attributes and IP addresses of the respective device and at least a portion of the remaining devices in the de-centralized computing environment are stored.
- Claim:
15. The non-transitory computer-readable medium according to claim 10 , storing further computer-executable instructions that, when executed, cause the one or more processors to: identify the device in the de-centralized computing environment corresponding to one of the stored ordered hash attributes whose stored hash attributes match the received hash search criteria.
- Claim:
16. The non-transitory computer-readable medium according to claim 10 , storing computer-executable instructions that, when executed, cause the one or more processors to further: identify the device in the de-centralized computing environment corresponding to one of the stored ordered hash attributes whose stored hash attributes most closely corresponds to the received hash search criteria.
- Claim:
17. The non-transitory computer-readable medium according to claim 10 , wherein the stored computer-executable instructions are included in a software client residing on multiple devices in the de-centralized computing environment, and wherein the computer-readable medium stores further computer-executable instructions that, when executed, cause the one or more processors to cause the received hashed search criteria to be sent to another one of the devices in the de-centralized computing environment on which the software client resides.
- Claim:
18. A non-transitory computer-readable medium storing computer-executable instructions that, when executed, cause one or more processors to: display an interface having device description data fields to receive descriptive attributes of a device subject to a search in a peer-to-peer computing environment; hash each descriptive attribute entered into the respective device description data fields, by executing instructions to fill an empty one of the device description data fields with a predetermined value, the predetermined value being a numerical value; concatenate the hashed descriptive attributes; and determine if the concatenated hashed descriptive attributes match any hashed strings stored to a figure table at the client, wherein the hashed strings are stored to the figure table by executing instructions to: receive attributes of one of a predetermined number of devices in the peer-to-peer computing environment; hash the received attributes individually, by executing instructions to: execute a base hash function on a respective data field for each of the received descriptive attributes, and fill an empty one of the respective data fields for the each of the received attributes with the predetermined value, the predetermined value being the numerical value; combine the hashed attributes for the device; order the hashed attributes relative to those of the predetermined number of other devices; and store the ordered hash attributes for at least a portion of the remaining devices in the peer-to-peer computing environment to the figure table at the client.
- Claim:
19. The non-transitory computer-readable medium according to claim 18 , wherein the device description data fields are preconfigured to receive a functional name and at least one descriptive attribute of a sought device.
- Claim:
20. The non-transitory computer-readable medium according to claim 18 , wherein the figure table at the client includes hashed strings of descriptive attributes and IP addresses of the predetermined number of devices in the peer-to-peer computing environment.
- Claim:
21. The non-transitory computer-readable medium according to claim 18 , wherein the computer-executable instructions that cause the one or more processors to determine further cause the one or more processors to send the concatenated hashed descriptive attributes to another one of the devices in the peer-to-peer computing environment on which the software application resides.
- Current U.S. Class:
709/226
- Patent References Cited:
2008/0294639 November 2008 Davis et al.
2012/0096163 April 2012 Tai et al.
101399778 April 2009
101543017 September 2009
2009-134341 June 2009
2009140821 November 2009
- Other References:
International Search Report and Written Opinion of International Application No. PCT/CN2010/079911 mailed Sep. 8, 2011. cited by applicant
“Universal Description Discovery and Integration,” Wikipedia, accessed at http://web.archive.org/web/20100307052300/http://en.wikipedia.org/wiki/Universal—Description—Discovery—and—Integration, last modified on Jan. 28, 2010, pp. 1-4. cited by applicant
Gellersen et al.: “Supporting device discovery and spontaneous interaction with spatial references,” Personal and Ubiquitous Computing, vol. 13, Issue 4, pp. 255-264 (2009). cited by applicant
Sharmin et al.: “SAFE-RD (Secure, Adaptive, Fault Tolerant, and Efficient Resource Discovery) in Pervasive Computing Environments,” International Conference on Information Technology: Coding and Computing, vol. 2, pp. 271-276 (2005). cited by applicant
Stoica et al.: “Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications,” In Proceedings of the ACM SIGCOMM Conference, vol. 31, Issue 4, pp. 149-160 (2001). cited by applicant
Saito et al.: “A Cross-search of Geophysical Fluids Data Archive Server Performed by P2P in Consideration of Interactive Refining Operations,” The Institute of Electronics, Information and Communication Engineers, Proceedings of 19th Data Engineering Workshop, Japan, Technical Committee on the Institute of Electronics, Information and Communication Engineers, Apr. 7, 2008. cited by applicant
- Assistant Examiner:
Ullah, Sharif E
- Primary Examiner:
Lewis, Lisa
- Attorney, Agent or Firm:
Brundidge & Stanger, P.C.
- الرقم المعرف:
edspgr.08850021
No Comments.