Patent ID: 8819244

Claim:
A computer-implemented method for establishing and maintaining backup channels for peer-to-peer (“P2P”) communication by a first mobile computing device, comprising: establishing a primary P2P communication channel between the first mobile computing device and a second mobile computing device to open a P2P session, the primary P2P communication channel comprising two primary communication links each including a first network address translation (NAT) device connected with the first and second mobile computing devices, wherein the first and second mobile computing devices obtain a first NAT data to traverse the first NAT device; establishing one or more secondary P2P communication channels, each secondary P2P communication channel comprising two secondary communication links including one of the first NAT device or a second NAT device connected to one of the first and second mobile computing devices wherein the first and second mobile computing devices obtain a second NAT data to traverse the second NAT device, wherein establishing the one or more secondary P2P communication channels further comprises exchanging connection data of the secondary communication links through the primary P2P communication channel; communicating P2P data only through the primary P2P communication channel; detecting that one of the primary communication links has degraded below a specified threshold; ceasing communication of P2P data through the degraded primary P2P communication channel; and responsively promoting one of the one or more secondary P2P communication channels as the primary P2P communication channel to continue the P2P session without interruption.