Universal naming scheme for peer-to-peer resources
First Claim
1. A method, comprising:
- receiving a resource request at a gate server to a resource locator service from a requester device through a networking environment, said resource request to request access to a peer resource associated with the resource locator service;
determining if the requester is a peer device;
if the requester is a peer device, returning one or more locations within the networking environment where the peer resource is expected to be accessible to the peer device;
wherein the resource locator service further comprises a registrar and a plurality of resource naming service (RNS) servers;
said registrar to track peer devices registered with the resource locator service and to assign each registered peer device to a particular RNS server, each of said RNS servers to track peer resources published by peer devices assigned to the respective RNS server and to service requests from the peer devices assigned to the respective RNS server for peer resources published by registered peer devices, and said gate server to service requests for peer resources that are published by registered peer devices but received from requesters that are not registered devices;
wherein returning the locations within the networking environment where the peer resource is expected to be accessible comprises;
determining that a location of an RNS server for a master publisher of the peer resource was previously cached by the gate server;
requesting and receiving the locations for the peer resource from the RNS server for the master publisher based on the cached location; and
providing the locations for the peer resource received from the RNS server for the master publisher.
1 Assignment
0 Petitions
Accused Products
Abstract
Peer devices register with a resource locator service so that the peer devices can be uniquely identified in a networking environment. An addressing scheme addresses a peer resource in the networking environment based on the unique identifier of a peer device that is a master publisher of the resource. Based on the addressing scheme, the resource locator service can track the location of the master publisher of the resource as well as additional locations of peer devices that have cached the resource and made it available. In various embodiments, the resource locator service can service requests for peer resources by providing a list of locations where the resource is expected to be available or, in the case of non-compatible requester, provide access to the resource itself.
259 Citations
8 Claims
-
1. A method, comprising:
-
receiving a resource request at a gate server to a resource locator service from a requester device through a networking environment, said resource request to request access to a peer resource associated with the resource locator service; determining if the requester is a peer device; if the requester is a peer device, returning one or more locations within the networking environment where the peer resource is expected to be accessible to the peer device; wherein the resource locator service further comprises a registrar and a plurality of resource naming service (RNS) servers; said registrar to track peer devices registered with the resource locator service and to assign each registered peer device to a particular RNS server, each of said RNS servers to track peer resources published by peer devices assigned to the respective RNS server and to service requests from the peer devices assigned to the respective RNS server for peer resources published by registered peer devices, and said gate server to service requests for peer resources that are published by registered peer devices but received from requesters that are not registered devices; wherein returning the locations within the networking environment where the peer resource is expected to be accessible comprises; determining that a location of an RNS server for a master publisher of the peer resource was previously cached by the gate server;
requesting and receiving the locations for the peer resource from the RNS server for the master publisher based on the cached location; andproviding the locations for the peer resource received from the RNS server for the master publisher.
-
-
2. A method, comprising:
-
receiving a resource request at a gate server to a resource locator service from a requester device through a networking environment, said resource request to request access to a peer resource associated with the resource locator service; determining if the requester is a peer device; if the requester is a peer device, returning one or more locations within the networking environment where the peer resource is expected to be accessible to the peer device, wherein the resource locator service further comprises a registrar and a plurality of resource naming service (RNS) servers; said registrar to track peer devices registered with the resource locator service and to assign each registered peer device to a particular RNS server, each of said RNS servers to track peer resources published by peer devices assigned to the respective RNS server and to service requests from the peer devices assigned to the respective RNS server for peer resources published by registered peer devices, and said gate server to service requests for peer resources that are published by registered peer devices but received from requesters that are not registered devices; wherein returning the locations within the networking environment where the peer resource is expected to be accessible comprises; requesting and receiving a location for an RNS server for a master publisher of the peer resource from the registrar; requesting and receiving the locations for the peer resource from the RNS server for the master publisher; and providing the locations for the peer resource received from the RNS server for the master publisher.
-
-
3. A method, comprising:
-
receiving a resource request at a gate server to a resource locator service from a requester device through a networking environment, said resource request to request access to a peer resource associated with the resource locator service; determining if the requester is a peer device; if the requester is a peer device, returning one or more locations within the networking environment where the peer resource is expected to be accessible to the peer device; wherein the resource locator service further comprises a registrar and a plurality of resource naming service (RNS) servers; said registrar to track peer devices registered with the resource locator service and to assign each registered peer device to a particular RNS server, each of said RNS servers to track peer resources published by peer devices assigned to the respective RNS server and to service requests from the peer devices assigned to the respective RNS server for peer resources published by registered peer devices, and said gate server to service requests for peer resources that are published by registered peer devices but received from requesters that are not registered devices; wherein returning the locations within the networking environment where the peer resource is expected to be accessible comprises; determining that a location of an RNS server for a master publisher of the peer resource was previously cached by the gate server; requesting and receiving the locations for the peer resource from the RNS server for the master publisher based on the cached location; requesting and receiving access to the peer resource from one or more of the locations; and providing access to the peer resource for the requester from the gate server.
-
-
4. A method, comprising:
-
receiving a resource request at a gate server to a resource locator service from a requester device through a networking environment, said resource request to request access to a peer resource associated with the resource locator service; determining if the requester is a peer device; if the requester is a peer device, returning one or more locations within the networking environment where the peer resource is expected to be accessible to the peer device; wherein the resource locator service further comprises a registrar and a plurality of resource naming service (RNS) servers; said registrar to track peer devices registered with the resource locator service and to assign each registered peer device to a particular RNS server, each of said RNS servers to track peer resources published by peer devices assigned to the respective RNS server and to service requests from the peer devices assigned to the respective RNS server for peer resources published by registered peer devices, and said gate server to service requests for peer resources that are published by registered peer devices but received from requesters that are not registered devices; wherein returning the locations within the networking environment where the peer resource is expected to be accessible comprises; requesting and receiving a location for an RNS server for a master publisher of the peer resource from the registrar; requesting and receiving the locations for the peer resource from the RNS server for the master publisher; requesting and receiving access to the peer resource from one or more of the locations; and providing access to the peer resource for the requester from the gate server.
-
-
5. A machine readable medium having stored thereon machine executable instructions to implement a method comprising:
-
receiving a resource request at a gate server to a resource locator service from a requester device through a networking environment, said resource request to request access to a peer resource associated with the resource locator service; determining if the requester is a peer device; if the requester is a peer device, returning one or more locations within the networking environment where the peer resource is expected to be accessible to the peer device; if the requester is not a peer device, accessing the peer resource from at least one of the locations within the networking environment and serving the peer resource to the requester as a proxy; wherein the resource locator service further comprises a registrar and a plurality of resource naming service (RNS) servers; said registrar to track peer devices registered with the resource locator service and to assign each registered peer device to a particular RNS server, each of said RNS servers to track peer resources published by peer devices assigned to the respective RNS server and to service requests from the peer devices assigned to the respective RNS server for peer resources published by registered peer devices, and said gate server to service requests for peer resources that are published by registered peer devices but received from requesters that are not registered devices; wherein returning the locations within the networking environment where the peer resource is expected to be accessible comprises; determining that a location of an RNS server for a master publisher of the peer resource was previously cached by the gate server; requesting and receiving the locations for the peer resource from the RNS server for the master publisher based on the cached location; and providing the locations for the peer resource received from the RNS server for the master publisher.
-
-
6. A machine readable medium having stored thereon machine executable instructions to implement a method comprising:
-
receiving a resource request at a gate server to a resource locator service from a requester device through a networking environment, said resource request to request access to a peer resource associated with the resource locator service; determining if the requester is a peer device; if the requester is a peer device, returning one or more locations within the networking environment where the peer resource is expected to be accessible to the peer device; if the requester is not a peer device, accessing the peer resource from at least one of the locations within the networking environment and serving the peer resource to the requester as a proxy; wherein the resource locator service further comprises a registrar and a plurality of resource naming service (RNS) servers; said registrar to track peer devices registered with the resource locator service and to assign each registered peer device to a particular RNS server, each of said RNS servers to track peer resources published by peer devices assigned to the respective RNS server and to service requests from the peer devices assigned to the respective RNS server for peer resources published by registered peer devices, and said gate server to service requests for peer resources that are published by registered peer devices but received from requesters that are not registered devices; wherein returning the locations within the networking environment where the peer resource is expected to be accessible comprises; requesting and receiving a location for an RNS server for a master publisher of the peer resource from the registrar; requesting and receiving the locations for the peer resource from the RNS server for the master publisher; and providing the locations for the peer resource received from the RNS server for the master publisher.
-
-
7. A machine readable medium having stored thereon machine executable instructions to implement a method comprising:
-
receiving a resource request at a gate server to a resource locator service from a requester device through a networking environment, said resource request to request access to a peer resource associated with the resource locator service; determining if the requester is a peer device; if the requester is a peer device, returning one or more locations within the networking environment where the peer resource is expected to be accessible to the peer device; if the requester is not a peer device, accessing the peer resource from at least one of the locations within the networking environment and serving the peer resource to the requester as a proxy; wherein the resource locator service further comprises a registrar and a plurality of resource naming service (RNS) servers; said registrar to track peer devices registered with the resource locator service and to assign each registered peer device to a particular RNS server, each of said RNS servers to track peer resources published by peer devices assigned to the respective RNS server and to service requests from the peer devices assigned to the respective RNS server for peer resources published by registered peer devices, and said gate server to service requests for peer resources that are published by registered peer devices but received from requesters that are not registered devices; wherein returning the locations within the networking environment where the peer resource is expected to be accessible comprises; determining that a location of an RNS server for a master publisher of the peer resource was previously cached by the gate server; requesting and receiving the locations for the peer resource from the RNS server for the master publisher based on the cached location; requesting and receiving access to the peer resource from one or more of the locations; and providing access to the peer resource for the requester from the gate server.
-
-
8. A machine readable medium having stored thereon machine executable instructions to implement a method comprising:
-
receiving a resource request at a gate server to a resource locator service from a requester device through a networking environment, said resource request to request access to a peer resource associated with the resource locator service; determining if the requester is a peer device; if the requester is a peer device, returning one or more locations within the networking environment where the peer resource is expected to be accessible to the peer device; if the requester is not a peer device, accessing the peer resource from at least one of the locations within the networking environment and serving the peer resource to the requester as a proxy; wherein the resource locator service further comprises a registrar and a plurality of resource naming service (RNS) servers; said registrar to track peer devices registered with the resource locator service and to assign each registered peer device to a particular RNS server, each of said RNS servers to track peer resources published by peer devices assigned to the respective RNS server and to service requests from the peer devices assigned to the respective RNS server for peer resources published by registered peer devices, and said gate server to service requests for peer resources that are published by registered peer devices but received from requesters that are not registered devices; wherein serving the peer resource to the requester as a proxy comprises; requesting and receiving a location for an RNS server for a master publisher of the peer resource from the registrar; requesting and receiving the locations for the peer resource from the RNS server for the master publisher; requesting and receiving access to the peer resource from one or more of the locations; and providing access to the peer resource for the requester from the gate server.
-
Specification