Patent ID: 8185635

Claim:
A computer-readable storage device having stored thereon computer-executable instructions for carrying out a method comprising: creating a master session over a first connection through a server, wherein creating the master session comprises initializing the master session using a session layer protocol (SIP); creating a virtual channel by multiplexing data of a feature session with data of the master session over the first connection to communicate the feature session, the feature session including a Binary Large Object (BLOB) ; communicating a first part of the BLOB over the first connection; establishing a direct connection that bypasses the server, wherein the establishing the direct connection comprises choosing a transport bridge from a plurality of transport bridges based at least in part on: functionality of each of the plurality of transport bridges corresponding to a network configuration; a score provided by each of the plurality of transport bridges; or characteristics of the BLOB; switching communication of the feature session to the direct connection; communicating a subsequent second part of the BLOB over the direct connection; determining that the direct connection fails while communicating the subsequent second part of the BLOB; and switching communication of the feature session to the first connection, or: establishing a different direct connection that bypasses the server; and switching communication of the feature session to the different direct connection; communicating a remainder of the subsequent second part of the BLOB over the first connection or the different direct connection.