Claims
- 1. A method for communicating data, comprising the steps of:
receiving a request to access a network of devices, said network of devices includes a set of devices authorized to access and a set of devices not authorized to access, said devices authorized to access being distributed across a global network; identifying said devices authorized to access; and allowing communication with said devices authorized to access and not allowing communication with said devices not authorized to access.
- 2. A method according to claim 1, wherein:
said request is received from a first device using a first user identification; said set of devices authorized to access use said first user identification; and said set of devices not authorized to access do not use said first user identification
- 3. A method according to claim 2, further comprising the step of:
authenticating said first device based on said first user identification and a first password, said steps of identifying and allowing are performed in response to said step of authenticating.
- 4. A method according to claim 1, wherein said step of allowing communication includes the steps of:
transmitting a search request to said set of devices authorized to access; performing searches at said set of devices authorized to access based on said request; and providing results from said searches.
- 5. A method according to claim 1, wherein said step of allowing communication includes the steps of:
receiving a request from a source an intermediate entity to search; forwarding said request to search from said intermediate entity to said set of devices authorized to access; performing searches at said set of devices authorized to access based on said request; providing results from said searches directly to said source from said devices authorized to access if direct connections can be established; and providing results from said searches to said source device from said devices authorized to access via said intermediate entity if direct connections cannot be established, said intermediate entity performs said step of receiving a request to access a network.
- 6. A method according to claim 1, wherein said step of allowing communication includes the steps of:
transmitting a search request from a source device to a target device, said target device is one of said devices authorized to access; performing a search at said target device based on said request; and providing results from said search from said target device to said source device via a connection between said source device and said target device, said source device is in a private network, said source device has a private address and does not have a globally unique address, said target has a globally unique address and is in accessible via an Internet.
- 7. A method according to claim 1, wherein said step of allowing communication includes the steps of:
transmitting a search request from a source device to a target device, said target device is one of said devices authorized to access; performing a search at said target device based on said request; and providing results from said search from said target device to said source device via a connection between said source device and said target device, said source device is behind a firewall.
- 8. A method according to claim 1, wherein said step of allowing communication includes the steps of:
attempting to establish a first connection from a source device to a target device; transferring an item using said first connection if said attempt to establish said first connection was successful; sending a message to said target via an intermediate device if said attempt to establish said first connection was not successful; attempting to establish a second connection from said target device to said source device; transferring said item using said second connection if said attempt to establish said second connection was successful; and transferring said item via a proxy if said attempt to establish said second connection was not successful.
- 9. A method according to claim 1, wherein:
said step of allowing communication includes transferring items, streaming items, searching for items, and viewing a list of items.
- 10. A method according to claim 1, wherein:
said step of allowing communication includes sending a command from a source device to one or more of said devices authorized to access.
- 11. A method according to claim 1, wherein:
said step of allowing communication includes sending a command from a source device to an intermediate server and forwarding said command from said intermediate server to one or more of said devices authorized to access.
- 12. A method according to claim 1, wherein said step of allowing communication includes the steps of:
creating a playlist; and adding items to said playlist, said items includes a first item from a first device and a second item from a second device, said first device and said second device are not on a common LAN.
- 13. A method according to claim 1, further comprising the step of:
establishing said network of devices without using a server.
- 14. A method according to claim 13, wherein said step of establishing includes the steps of:
broadcasting from a first device; listening for other devices, performed by said first device; broadcasting from a second device; listening for other devices, performed by said second device; establishing a connection between said second device and said first device; authenticating said first device and said second device; broadcasting from a third device; listening for other devices, performed by said third device; establishing a connection between said second device and said third device; authenticating said second device and said third device; establishing a connection between said third device and said first device; and authenticating said first device and said third device.
- 15. A method for communicating data, comprising the steps of:
receiving a request to access a network of devices, said network of devices includes a set of devices authorized to access and a set of devices not authorized to access; identifying items on said set of devices authorized to access; and creating a playlist of said items on said set of devices authorized to access, said playlist includes items on different devices.
- 16. A method according to claim 15, wherein:
said playlist includes items on different types of defices.
- 17. A method according to claim 15, wherein said step of identifying items includes the steps of:
receiving a request at an intermediate entity from a source device to search; forwarding said request to search from said intermediate entity to said set of devices authorized to access; performing searches at said set of devices authorized to access based on said request; providing results from said searches directly to said source device from said devices authorized to access if direct connections can be established; and providing results from said searches to said source device from said devices authorized to access via said intermediate entity if direct connections cannot be established.
- 18. A method of communicating data, comprising the steps of:
logging a first device into a network of devices using a first user identification, said network of devices includes devices logged into said network using said first user identification and devices logged in to said network using one or more other user identifications, said one or more other user identifications include a second user identification; identifying said devices that are logged in to said network using said first user identification; and allowing said first device to communicate with devices that are logged into said network using said first user identification and not allowing communication with devices that are logged in to said network using said second user identification.
- 19. A method according to claim 18, wherein said step of allowing communication includes the steps of:
receiving a request at an intermediate entity from a requesting device to search, said requesting device is logged into said network using said first user identification; forwarding said request to search from said intermediate entity to said devices that are logged in to said network using said first user identification; performing searches at said devices that are logged in to said network using said first user identification based on said request; providing results from said searches directly to said requesting device from said devices that are logged in to said network using said first user identification if direct connections can be established; and providing results from said searches to said first device from said devices that are logged in to said network using said first user identification via said intermediate entity if direct connections cannot be established.
- 20. A method according to claim 18, wherein said step of allowing communication includes the steps of:
attempting to establish a first connection from said first device to a target device; transferring an item using said first connection if said attempt to establish said first connection was successful; sending a message to said target via an intermediate device if said attempt to establish said first connection was not successful, said intermediate entity performs said step of receiving a request to access a network; attempting to establish a second connection from said target device to said first device; transferring said item using said second connection if said attempt to establish said second connection was successful; and transferring said item via a proxy if said attempt to establish said second connection was not successful.
- 21. A method according to claim 18, wherein:
said step of allowing communication includes sending a command from said first device to an intermediate server; and forwarding said command from said intermediate server to one or more of said devices that are logged in to said network using said first user identification.
- 22. A method according to claim 18, wherein said step of allowing communication includes the steps of:
creating a playlist; and adding items to said playlist, said items includes a first item from said first device and a second item from a second device, said first device and said second device are not on a common LAN, said second device is logged in to said network using said first user identification.
- 23. A method of communicating data, comprising the steps of:
accessing a network of devices, said network of devices includes a set of devices authorized to access and a set of devices not authorized to access; sending a search request to said set of devices authorized to access; and receiving search results from said set of devices authorized to access.
- 24. A method according to claim 23, wherein:
said step of sending includes sending said request to a server for forwarding to said set of devices authorized to access; and said step of receiving search results includes receiving said search results via direct connections, if direct connections can be established; and said step of receiving search results includes receiving said search results via said server, if direct connections cannot be established.
- 25. A method for communicating data, comprising the steps of:
receiving a request for a search, said search being requested by a source device; performing said search; sending results of said search directly to said source device if a direct connection to said source device is possible; and sending results of said search to said source device via an intermediary device if a direct connection to said source device is not possible.
- 26. A method for communicating data, comprising the steps of:
receiving a request to transfer an item, said item residing on a target device; attempting to establish a first connection with said target device in response to said step of receiving; transferring said item using said first connection if said attempt to establish said first connection was successful; sending a message to said target device via an intermediate device if said attempt to establish said first connection was not successful; receiving an attempt to establish a second connection from said target device; and transferring said item using said second connection if said attempt to establish said second connection was successful.
- 27. Method according to claim 26, further comprising the step of:
transferring said item via a proxy if said attempt to establish said second connection was not successful.
- 28. One or more processor readable storage devices for storing processor readable code, said processor readable code for programming one or more processors to perform a method comprising the steps of:
receiving a request to access a network of devices, said network of devices includes a set of devices authorized to access and a set of devices not authorized to access, said devices authorized to access being distributed across a global network; identifying said devices authorized to access; and allowing communication with said devices authorized to access and not allowing communication with said devices not authorized to access.
- 29. One or more processor readable storage devices according to claim 28, wherein:
said request is received from a first device using a first user identification; said set of devices authorized to access use said first user identification; and said set of devices not authorized to access do not use said first user identification
- 30. One or more processor readable storage devices according to claim 28, wherein said step of allowing communication includes the steps of:
receiving a request from a source device at an intermediate entity to search; forwarding said request to search from said intermediate entity to said set of devices authorized to access; performing searches at said set of devices authorized to access based on said request; providing results from said searches directly to said source device from said devices authorized to access if direct connections can be established; and providing results from said searches to said source device from said devices authorized to access via said intermediate entity if direct connections cannot be established.
- 31. One or more processor readable storage devices according to claim 28, wherein said step of allowing communication includes the steps of:
attempting to establish a first connection from a source device to a target device; transferring an item using said first connection if said attempt to establish said first connection was successful; sending a message to said target via an intermediate device if said attempt to establish said first connection was not successful, said intermediate entity performs said step of receiving a request to access a network; attempting to establish a second connection from said target device to said source device; transferring said item using said second connection if said attempt to establish said second connection was successful; and transferring said item via a proxy if said attempt to establish said second connection was not successful.
- 32. One or more processor readable storage devices according to claim 28, wherein:
said step of allowing communication includes sending a command from a source device to an intermediate server and forwarding said command from said intermediate server to one or more of said devices authorized to access.
- 33. One or more processor readable storage devices according to claim 28, wherein said step of allowing communication includes the steps of:
creating a playlist; and adding items to said playlist, said items includes a first item from a first device and a second item from a second device, said first device and said second device are not on a common LAN.
- 34. One or more processor readable storage devices for storing processor readable code, said processor readable code for programming one or more processors to perform a method comprising the steps of:
receiving a request to access a network of devices, said network of devices includes a set of devices authorized to access and a set of devices not authorized to access; identifying items on said set of devices authorized to access; and creating a playlist of said items on said set of devices authorized to access, said playlist includes items on different devices.
- 35. One or more processor readable storage devices according to claim 34, wherein:
said playlist includes items on different types of devices.
- 36. One or more processor readable storage devices according to claim 34, wherein said step of identifying items includes the steps of:
receiving a request at an intermediate entity from a source device to search; forwarding said request to search from said intermediate entity to said set of devices authorized to access; performing searches at said set of devices authorized to access based on said request; providing results from said searches directly to said source device from said devices authorized to access if direct connections can be established; and providing results from said searches to said source device from said devices authorized to access via said intermediate entity if direct connections cannot be established, said intermediate entity performs said step of receiving a request to access a network.
- 37. One or more processor readable storage devices for storing processor readable code, said processor readable code for programming one or more processors to perform a method comprising the steps of:
logging a first device into a network of devices using a first user identification, said network of devices includes devices logged into said network using said first user identification and devices logged in to said network using one or more other user identifications, said one or more other user identifications include a second user identification; identifying said devices that are logged in to said network using said first user identification; and allowing said first device to communicate with devices that are logged into said network using said first user identification and not allowing communication with devices that are logged in to said network using said second user identification.
- 38. One or more processor readable storage devices according to claim 37, wherein said step of allowing communication includes the steps of:
receiving a request from said first device; forwarding said request to search from said intermediate entity to said devices that are logged in to said network using said first user identification; performing searches at said devices that are logged in to said network using said first user identification based on said request; providing results from said searches directly to said first device from said devices that are logged in to said network using said first user identification if direct connections can be established; and providing results from said searches to said first device from said devices that are logged in to said network using said first user identification via said intermediate entity if direct connections cannot be established.
- 39. One or more processor readable storage devices according to claim 37, wherein said step of allowing communication includes the steps of:
attempting to establish a first connection from said first device to a target device; transferring an item using said first connection if said attempt to establish said first connection was successful; sending a message to said target via an intermediate device if said attempt to establish said first connection was not successful, said intermediate entity performs said step of receiving a request to access a network; attempting to establish a second connection from said target device to said source device; transferring said item using said second connection if said attempt to establish said second connection was successful; and transferring said item via a proxy if said attempt to establish said second connection was not successful.
- 40. One or more processor readable storage devices according to claim 37, wherein:
said step of allowing communication includes sending a command from said first device to an intermediate server and forwarding said command from said intermediate server to one or more of said devices that are logged in to said network using said first user identification.
- 41. One or more processor readable storage devices according to claim 37, wherein said step of allowing communication includes the steps of:
creating a playlist; and adding items to said playlist, said items includes a first item from said first device and a second item from a second device, said first device and said second device are not on a common LAN, said second device is logged in to said network using said first user identification.
- 42. One or more processor readable storage devices for storing processor readable code, said processor readable code for programming one or more processors to perform a method comprising the steps of:
accessing a network of devices, said network of devices includes a set of devices authorized to access and a set of devices not authorized to access; sending a search request to said set of devices authorized to access; and receiving search results from said set of devices authorized to access.
- 43. One or more processor readable storage devices according to claim 42, wherein:
said step of sending includes sending said request to a server for forwarding to said set of devices authorized to access; and said step of receiving search results includes receiving said search results via direct connections, if direct connections can be established; and said step of receiving search results includes receiving said search results via said server, if direct connections cannot be established.
- 44. One or more processor readable storage devices for storing processor readable code, said processor readable code for programming one or more processors to perform a method comprising the steps of:
receiving a request for a search, said search being requested by a source device; performing said search; sending results of said search directly to said source device if a direct connection to said source device is possible; and sending results of said search to said source device via an intermediary device if a direct connection to said source device is not possible.
- 45. One or more processor readable storage devices for storing processor readable code, said processor readable code for programming one or more processors to perform a method comprising the steps of:
receiving a request to transfer an item, said item residing on a target device; attempting to establish a first connection with said target device in response to said step of receiving; transferring said item using said first connection if said attempt to establish said first connection was successful; sending a message to said target device via an intermediate device if said attempt to establish said first connection was not successful; receiving an attempt to establish a second connection from said target device; and transferring said item using said second connection if said attempt to establish said second connection was successful.
- 46. One or more processor readable storage devices according to claim 45, wherein said method further comprises the step of:
transferring said item via a proxy if said attempt to establish said second connection was not successful.
- 47. An apparatus for communicating data, comprising:
a communication interface; and one or more processors, in communication with said communication interface, said one or more processor perform a method comprising the steps of:
receiving a request to access a network of devices, said network devices includes a set of devices authorized to access and a set of devices not authorized to access, said devices authorized to access being distributed across a global network, identifying said devices authorized to access, and allowing communication with said devices authorized to access and not allowing communication with said devices not authorized to access.
- 48. An apparatus according to claim 47, wherein:
said request is received from a first device using a first user identification; said set of devices authorized to access use said first user identification; and said set of devices not authorized to access do not use said first user identification
- 49. An apparatus according to claim 47, wherein said step of allowing communication includes the steps of:
receiving a request from a source device at an intermediate entity to search; forwarding said request to search from said intermediate entity to said set of devices authorized to access; performing searches at said set of devices authorized to access based on said request; providing results from said searches directly to said source device from said devices authorized to access if direct connections can be established; and providing results from said searches to said source device from said devices authorized to access via said intermediate entity if direct connections cannot be established, said intermediate entity performs said step of receiving a request to access a network.
- 50. An apparatus according to claim 47, wherein said step of allowing communication includes the steps of:
attempting to establish a first connection from a source device to a target device; transferring an item using said first connection if said attempt to establish said first connection was successful; sending a message to said target device via an intermediate device if said attempt to establish said first connection was not successful, said intermediate entity performs said step of receiving a request to access a network; attempting to establish a second connection from said target device to said source device; transferring said item using said second connection if said attempt to establish said second connection was successful; and transferring said item via a proxy if said attempt to establish said second connection was not successful.
- 51. An apparatus according to claim 47, wherein:
said step of allowing communication includes sending a command from a source device to an intermediate server and forwarding said command from said intermediate server to one or more of said devices authorized to access.
- 52. An apparatus according to claim 47, wherein said step of allowing communication includes the steps of:
creating a playlist; and adding items to said playlist, said items includes a first item from a first device and a second item from a second device, said first device and said second device are not on a common LAN.
- 53. An apparatus for communicating data, comprising:
a communication interface; and one or more processors in communication with said communication interface, said one or more processor perform a method comprising the steps of:
logging a first device into a network of devices using a first user identification, said network of devices includes devices logged into said network using said first user identification and devices logged in to said network using one or more other user identifications, said one or more other user identifications include a second user identification, identifying said devices that are logged in to said network using said first user identification, and allowing said first device to communicate with devices that are logged into said network using said first user identification and not allowing communication with devices that are logged in to said network using said second user identification.
- 54. An apparatus according to claim 53, wherein said step of allowing communication includes the steps of:
receiving a request from said first device at an intermediate entity to search; forwarding said request to search from said intermediate entity to said devices that are logged in to said network using said first user identification; performing searches at said devices that are logged in to said network using said first user identification based on said request; providing results from said searches directly to said first device from said devices that are logged in to said network using said first user identification if direct connections can be established; and providing results from said searches to said first device from said devices that are logged in to said network using said first user identification via said intermediate entity if direct connections cannot be established.
- 55. An apparatus according to claim 53, wherein said step of allowing communication includes the steps of:
attempting to establish a first connection from said first device to a target device; transferring an item using said first connection if said attempt to establish said first connection was successful; sending a message to said target device via an intermediate device if said attempt to establish said first connection was not successful, said intermediate entity performs said step of receiving a request to access a network; attempting to establish a second connection from said target device to said source device; transferring said item using said second connection if said attempt to establish said second connection was successful; and transferring said item via a proxy if said attempt to establish said second connection was not successful.
- 56. An apparatus according to claim 53, wherein:
said step of allowing communication includes sending a command from said first device to an intermediate server and forwarding said command from said intermediate server to one or more of said devices that are logged in to said network using said first user identification.
- 57. An apparatus according to claim 53, wherein said step of allowing communication includes the steps of:
creating a playlist; and adding items to said playlist, said items includes a first item from said first device and a second item from a second device, said first device and said second device are not on a common LAN, said second device is logged in to said network using said first user identification.
Parent Case Info
[0001] This application claims the benefit of U.S. Provisional Application No. 60/233,741, “Personal Device-to-Device Networking,” filed on Sep. 19, 2000, incorporated herein by reference.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60233741 |
Sep 2000 |
US |