Remote device infrastructure
US-2024323248-A1 · Sep 26, 2024 · US
US9264459B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9264459-B2 |
| Application number | US-97081910-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 16, 2010 |
| Priority date | Dec 16, 2010 |
| Publication date | Feb 16, 2016 |
| Grant date | Feb 16, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
One embodiment of the present invention provides a system for facilitating establishment of connections between a local endpoint and a remote endpoint. During operation, the system sends, from the local endpoint, a single connection-request message to a proxy server, which forks the single connection-request message to a number of remote endpoints. The system receives one or more response messages from the remote endpoints. A respective response message carries address information associated with the remote endpoint. Upon receiving the response message, the system sends an acknowledgment corresponding to the received response message to the corresponding remote endpoint via the proxy server, and establishes a connection between the local endpoint and at least one remote endpoint.
Opening claim text (preview).
What is claimed is: 1. A computer-executable method for facilitating establishment of a connection between a local endpoint and a plurality of remote endpoints of a device, the method comprising: determining, by the local endpoint, routing information for the device by exchanging a content-prefix-to-custodian mapping, a custodian-to-endpoint mapping, and an endpoint-to-physical address mapping with a neighboring device, wherein the content-prefix is a prefix of content being requested by the local endpoint, the custodian is the device storing the content, the physical address is an endpoint's physical address, and the endpoint is a communication interface of the device; based on the exchanged mappings, sending, from the local endpoint behind a predictable symmetric network address translation (PS NAT) firewall, a single payload-less session initiation protocol (SIP) INVITE message as a connection-request message to a proxy server, which forks the connection-request message to the plurality of remote endpoints of the device, where the device is behind a port-restricted cone network address translation (PC NAT) firewall or PS NAT firewall; receiving, from each of two or more of the plurality of remote endpoints, a response message that carries a network address and port number; in response to the receiving of the response message from one of the two or more of the plurality of remote endpoints, sending a corresponding acknowledgment with a list of possible connection addresses for the local endpoint to the one of the two or more of the plurality of remote endpoints via the proxy server; and establishing a connection between the local endpoint and the two or more of the plurality of remote endpoints of the device, using the network addresses received in the response messages from the two or more of the plurality of remote endpoints. 2. The method of claim 1 , wherein the response message received from each of the two or more of the plurality of remote endpoints is a SIP provisional response or a 200/OK message which carries a session description protocol (SDP) offer. 3. The method of claim 2 , wherein the SDP offer includes a list of addresses corresponding to a respective remote endpoint associated with the response message, and wherein the list of addresses includes a network address translation (NAT) external address and port and may optionally include a local address and port and/or an external relay address. 4. The method of claim 1 , wherein the corresponding acknowledgement is a SIP PRACK or ACK message, and wherein the SIP PRACK or ACK message carries a session description protocol (SDP) answer. 5. The method of claim 4 , wherein the SDP answer includes a list of addresses corresponding to the local endpoint, and wherein the list of addresses includes a NAT external address and port and may optionally include a local address and port and/or an external relay address. 6. The method of claim 1 , wherein the local endpoint and the plurality of remote endpoints are coupled to a content-centric network (CCN). 7. The method of claim 1 , further comprising: periodically registering with the proxy server a current endpoint identifier for a logical endpoint. 8. The method of claim 1 , further comprising: determining that the device has multiple logical endpoints by receiving a published logical-endpoint entry for each method in which the device may be connected. 9. The method of claim 1 , further comprising: determining which connection between the local endpoint and the two or more of the plurality of remote endpoints of the device performs the best according to a defined performance criteria; and selecting, from a plurality of connections between the local endpoint and the two or more of the plurality of remote endpoints of the device, the connection that is determined to perform the best according to the defined performance criteria. 10. A computer device capable of establishing a connection between a local endpoint belonging to the computer device and a plurality of remote endpoints of a device, the computer device comprising: a processor; a memory; a routing information exchanger executed by the processor to determine routing information for the device by exchanging a content-prefix-to-custodian mapping, a custodian-to-endpoint mapping, and an endpoint-to-physical address mapping with a neighboring device, wherein the content-prefix is a prefix of content being requested by the local endpoint, the custodian is the device storing the content, the physical address is an endpoint's physical address, and the endpoint is a communication interface of the device; a connection-request sender executed by the processor to send, based on the exchanged mappings and from behind a predictable symmetric network address translation (PS NAT) firewall, a single payload-less session initiation protocol (SIP) INVITE message as a connection-request message to a proxy server, which forks the connection-request message to the plurality of remote endpoints of the device, wherein the device is behind a port-restricted cone network address translation (PC NAT) firewall or PS NAT firewall; a receiver executed by the processor to receive and store in the memory a response message that carries a network address and port number from each of two or more of the plurality of remote endpoints; an acknowledgment sender executed by the processor to, in response to the receiving of the response message from one of the two or more of the plurality of remote endpoints, send a corresponding acknowledgment with a list of possible connection addresses for the local endpoint to the one of the two or more of the plurality of remote endpoints associated with the received response message via the proxy server; and a connector executed by the processor to establish a connection between the local endpoint and the two or more of the plurality of remote endpoints of the device, using the network addresses received in the response messages from the two or more of the plurality of remote endpoints. 11. The computer device of claim 10 , wherein the response message received from each of the two or more of the plurality of remote endpoints is a SIP provisional response or a 200/OK message which carries a session description protocol (SDP) offer. 12. The computer device of claim 11 , wherein the SDP offer includes a list of addresses corresponding to a respective remote endpoint associated with the response message, and wherein the list of addresses includes a NAT external address and port and may optionally include a local address and port and/or an external relay address. 13. The computer device of claim 10 , wherein the corresponding acknowledgement is a SIP PRACK or ACK message, and wherein the SIP PRACK or ACK message carries a session description protocol (SDP) answer. 14. The computer device of claim 13 , wherein the SDP answer includes a list of addresses corresponding to the local endpoint, and wherein the list of addresses includes a NAT external address and port and may optionally include a local address and port and/or an external relay address. 15. The computer device of claim 10 , wherein the local endpoint and the plurality of remote endpoints are coupled to a content-centric network (CCN). 16. A non-transitory computer-readable storage medium storing instructions which when executed by a computer cause the computer to perform a method for facilitating establishment of a connection between a local endpoint and a plurality of remote endpoints of a device, the method comprising: determining, by the local endpoint, routing informat
using address mapping retrieval, e.g. simple traversal of user datagram protocol through session traversal utilities for NAT [STUN] · CPC title
Managing network names, e.g. use of aliases or nicknames (name-to-address mapping H04L61/45) · CPC title
Session establishment or de-establishment · CPC title
Electricity · mapped topic
Supplementary features, e.g. call forwarding or call holding (systems providing special services or facilities to telephony subscribers H04M3/42) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.