17. One or more non-transitory machine-readable media that store instructions for use in transferring data via a communication session between a client application on a first network and a server application on a second network, the instructions for causing one or more processing devices to perform operations comprising: outputting, to a device that includes the client application, a Web page comprising a proxy, the proxy for converting between a non-local protocol and a local protocol associated with the client application to thereby provide data to the client application in the local protocol; assigning an identifier to the communication session; creating at least one queue associated with the communication session; storing data received from the server application in the at least one queue, the received data being stored using the identifier; receiving polling data from the proxy to obtain the received data that is destined for the client application from the at least one queue associated with the communication session; outputting the received data to the proxy in response to the polling data; wherein the client application and the server application run local protocols, and the received data is passed from the server application to the client application via an intermediary protocol that corresponds to the non-local protocol; and wherein the client application is on the first network behind a first firewall, and the server application is on the second network behind a second firewall that is different from the first firewall.
20. The one or more non-transitory machine-readable media of claim 17 , wherein the intermediary protocol comprises HTTP.