System and method for providing a virtual peer-to-peer environment
First Claim
Patent Images
1. A method for establishing a peer-to-peer session between a real endpoint and a mapped endpoint, wherein the real endpoint is a first device configured to directly access a peer-to-peer network, the method comprising:
- receiving, by a shadow server, a login request from the mapped endpoint, wherein the mapped endpoint is a second device that lacks the functionality needed to directly access the peer-to-peer network;
creating, by the shadow server, a virtual endpoint corresponding to the mapped endpoint;
receiving, by the virtual endpoint, authentication information from the mapped endpoint, wherein the authentication information is needed to gain access to the peer-to-peer network by the virtual endpoint;
sending, by the virtual endpoint, the authentication information to an access server in the peer-to-peer network to log the virtual endpoint into the network;
receiving, by the virtual endpoint, a profile from the access server in response to sending the authentication information, wherein the profile contains a list of all real endpoints with which the virtual endpoint has permission to communicate and a status of online or offline for each of the real endpoints, and wherein the profile further includes address information for each of the real endpoints that is currently online when the profile is received;
sending, by the virtual endpoint, a presence notification directly to the real endpoint to notify the real endpoint that the mapped endpoint is online, wherein the presence message is initiated by the virtual endpoint and not the mapped endpoint and is sent only if the real endpoint is listed in the profile as currently online, and wherein the presence message includes network address information needed by the real endpoint to communicate with the virtual endpoint;
receiving, by the virtual endpoint, a message from the mapped endpoint that is to be sent to the real endpoint; and
sending, by the virtual endpoint, the message directly to the real endpoint, wherein all communications between the mapped endpoint and the real endpoint pass through the virtual endpoint.
1 Assignment
0 Petitions
Accused Products
Abstract
An improved system and method are disclosed for peer-to-peer communications. In one example, the method enables the creation of a virtual endpoint that may operate within a peer-to-peer network to represent a device that is unable to operate as an endpoint.
-
Citations
17 Claims
-
1. A method for establishing a peer-to-peer session between a real endpoint and a mapped endpoint, wherein the real endpoint is a first device configured to directly access a peer-to-peer network, the method comprising:
-
receiving, by a shadow server, a login request from the mapped endpoint, wherein the mapped endpoint is a second device that lacks the functionality needed to directly access the peer-to-peer network; creating, by the shadow server, a virtual endpoint corresponding to the mapped endpoint; receiving, by the virtual endpoint, authentication information from the mapped endpoint, wherein the authentication information is needed to gain access to the peer-to-peer network by the virtual endpoint; sending, by the virtual endpoint, the authentication information to an access server in the peer-to-peer network to log the virtual endpoint into the network; receiving, by the virtual endpoint, a profile from the access server in response to sending the authentication information, wherein the profile contains a list of all real endpoints with which the virtual endpoint has permission to communicate and a status of online or offline for each of the real endpoints, and wherein the profile further includes address information for each of the real endpoints that is currently online when the profile is received; sending, by the virtual endpoint, a presence notification directly to the real endpoint to notify the real endpoint that the mapped endpoint is online, wherein the presence message is initiated by the virtual endpoint and not the mapped endpoint and is sent only if the real endpoint is listed in the profile as currently online, and wherein the presence message includes network address information needed by the real endpoint to communicate with the virtual endpoint; receiving, by the virtual endpoint, a message from the mapped endpoint that is to be sent to the real endpoint; and sending, by the virtual endpoint, the message directly to the real endpoint, wherein all communications between the mapped endpoint and the real endpoint pass through the virtual endpoint. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for communicating in a peer-to-peer network using a virtual endpoint comprising:
-
creating a first virtual endpoint on a shadow server in the peer-to-peer network, wherein the first virtual endpoint represents a mapped endpoint in the peer-to-peer network, and wherein the mapped endpoint corresponds to a first device that is unable to communicate directly with the peer-to-peer network because the first device is accessible only through a third party system that does not communicate directly over the peer-to-peer network; authenticating the first virtual endpoint with the peer-to-peer network, wherein the authentication establishes the first virtual endpoint as present on the peer-to-peer network; providing the first virtual endpoint with a profile following the authentication, wherein the profile contains a list of all endpoints with which the first virtual endpoint has permission to communicate and a status of online or offline for each of the endpoints, and wherein the profile further includes address information for each of the endpoints that is currently online when the profile is provided; sending, by the first virtual endpoint, a presence notification directly to a second virtual endpoint and a real endpoint that are both listed as online in the profile, wherein the presence notification notifies the second virtual endpoint and the real endpoint that the mapped endpoint is online, wherein the presence message is initiated by the virtual endpoint and not the mapped endpoint and is sent only if the second virtual endpoint and the real endpoint are listed in the profile as online, and wherein the presence message includes network address information needed by the second virtual endpoint and the real endpoint to communicate with the virtual endpoint; receiving, by the first virtual endpoint, a first message from the mapped endpoint to send to at least one of the second virtual endpoint and the real endpoint, wherein the real endpoint is a device configured to directly access the peer-to-peer network; and sending, by the first virtual endpoint, the first message directly to the at least one of the second virtual endpoint and real endpoint, wherein sending, by the first virtual endpoint, the first message directly to the second virtual endpoint occurs entirely within the shadow server. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A system comprising:
-
a shadow server for use with a peer-to-peer network, the shadow server having a network interface configured to communicate with the peer-to-peer network, a processor coupled to the network interface, and a memory coupled to the processor, wherein the memory includes a plurality of instructions for execution by the processor, the instructions including instructions for a virtual endpoint management module (VEMM); and a plurality of virtual endpoints existing in the memory, wherein each of the virtual endpoints is instantiated in the memory by the VEMM in response to a request received by a mapped endpoint in a third party system that is incompatible with the peer-to-peer network, and wherein each of the virtual endpoints represents a corresponding mapped endpoint in the peer-to-peer network and is configured to enable the corresponding mapped endpoint to access the peer-to-peer network, and wherein, following instantiation, each of the plurality of virtual endpoints is configured to request a public Internet Protocol (IP) address and port corresponding to that virtual endpoint, log into an access server of the peer-to-peer network by providing login information including a username, a password, a local IP address and port, and the public IP address and port to the access server, receive a buddy list corresponding to the login information from the access server, wherein the buddy list contains a list of all endpoints with which the virtual endpoint has permission to communicate and a status of online or offline for each of the endpoints, and wherein the buddy list further includes address information for each of the endpoints that is currently online when the buddy list is received, send the buddy list to the mapped endpoint corresponding to the virtual endpoint, and send a presence notification directly to both a real endpoint and a virtual endpoint on the buddy list that the mapped endpoint is online, wherein the presence notification is initiated by the virtual endpoint and not the mapped endpoint and is sent only if the virtual endpoint and the real endpoint are listed on the buddy list as online, and wherein the presence message includes network address information needed by the virtual endpoint and the real endpoint on the buddy list to communicate with the virtual endpoint. - View Dependent Claims (16, 17)
-
Specification