发明名称 Apparatus and method of peer-to-peer communication
摘要 An apparatus and method of communication include establishing, by a first peer device, a proximity-based connection with a second peer device, transmitting a first public network address of the first peer device over the proximity-based connection for receipt by the second peer device, receiving a second public network address of the second peer device over the proximity-based connection, and establishing a communication session over a wide area connection using the first public network address and the second public network address.
申请公布号 US9363228(B2) 申请公布日期 2016.06.07
申请号 US201012898373 申请日期 2010.10.05
申请人 Qualcomm Innovation Center, Inc. 发明人 Burns Gregory;Profit Jack H.
分类号 G06F15/16;H04L29/12;H04L29/08 主分类号 G06F15/16
代理机构 Neugeboren O'Dowd PC 代理人 Neugeboren O'Dowd PC
主权项 1. A method of peer-to-peer communication executed by a peer device, comprising: establishing, by the first peer device, a proximity-based connection with a second peer device without using a centrally administered network component, wherein the proximity-based connection is out-of-band of a TCP/IP connection and established based on the first peer device and the second peer device being within a predefined distance from each other; determining a trigger condition to establish a wide area connection between the first peer device and the second peer device, wherein the wide area connection utilizes a TCP/IP protocol; generating, by the first peer device, a first candidate address list comprising network addresses associated with each network interface of the first peer device, wherein the first candidate address list includes at least: a host candidate address of the first peer device that is used when the first peer device communicates with a peer on a same subnet as the first peer device and is not separated by a network address translation device; anda server reflexive candidate address of the first peer device that is used when the first peer device communicates with a peer device on a different subnet than the first peer device and is separated by at least one network address translation device, the server reflexive candidate address of the peer device learned by the first peer device querying a first STUN server external to a first network address translation device arranged between the first peer device and the public Internet; transmitting, by the first peer device, the first candidate address list to the second peer device directly over the proximity-based connection without using a centrally administered network component; receiving, at the first peer device, a second candidate address list from the second peer device transmitted directly over the proximity-based connection without using a centrally administered network component, wherein the second candidate address list includes at least: a host candidate address of the second peer device that is used when the second peer device communicates with a peer device on a same subnet as the second peer device and is not separated by a network address translation device; anda server reflexive candidate address of the second peer device that is used when the second peer device communicates with a peer device on a different subnet than the second peer device and is separated by at least one network address translation device, the server reflexive candidate address of the second peer device learned by the second peer device querying a second STUN server external to a second network address translation device arranged between the second peer device and the public Internet; performing iterative attempts to establish the wide area connection between the first peer device and the second peer device by attempting a connection using different combination is airs from addresses on the first candidate address list and the second candidate address list to determine that the wide area connection can be established between the server reflexive candidate address of the first peer device and the server reflexive candidate address of the second peer device; establishing a communication session between the first peer device and the second peer device over the wide area connection using the server reflexive candidate address of the first peer device and the server reflexive candidate address of the second peer device, and maintaining both the proximity-based connection and the wide area connection, wherein the proximity-based connection and the wide area connection differ in their communication characteristics and for each communication message between the first peer device and the second peer device, selecting one of the proximity-based connection or the wide area connection for transmission of the communication message based on a closest match between a communication characteristic of the communication message and the communication characteristics of each of the proximity-based connection and the wide area connection.
地址 San Diego CA US