A method for reducing round-trip communication over a network between a client and one or more remote servers, where the round-trip communication involves a protocol handshake for connection establishment, and comprising: a. Providing a client-side software application for collecting input from user, said input selected from the group consisting of software application identification, software application parameters, and remote server information; b. Using said client-side software application to analyze said user input, to determine a set of required protocol and application steps including a DNS Request to construct a multi-part message based on said user input, wherein said multi-part message includes portions associated with at least a network protocol and application parameters and a portion comprising the DNS Request, and to receive responses from said one or more remote servers; c. Sending said multi-part message toward a network device that supports receiving such multi-part messages; d. Using said network device to receive said multi-part message, to identify said DNS Request portion of said multi-part message, to resolve the domain names to the address of an application server, and remove said DNS Request from said multi-part message; e. Using said network device to forward the remaining portion of said multi-part message toward said application server; f. Using said application server to receive said remaining portion of said multipart message, to identify a network protocol portion of the message, to complete a protocol handshake with said client device; and g. Using said application server to decode a portion of said multi-part message that includes application parameters, and sending an application response to said client over a network connection established in step f. a. Providing a client-side software application for collecting input from user, said input selected from the group consisting of software application identification, software application parameters, and remote server information; b. Using said client-side software application to analyze said user input, to determine a set of required protocol and application steps including a DNS Request to construct a multi-part message based on said user input, wherein said multi-part message includes portions associated with at least a network protocol and application parameters and a portion comprising the DNS Request, and to receive responses from said one or more remote servers; c. Sending said multi-part message toward a network device that supports receiving such multi-part messages; d. Using said network device to receive said multi-part message, to identify said DNS Request portion of said multi-part message, to resolve the domain names to the address of an application server, and remove said DNS Request from said multi-part message; e. Using said network device to forward the remaining portion of said multi-part message toward said application server; f. Using said application server to receive said remaining portion of said multipart message, to identify a network protocol portion of the message, to complete a protocol handshake with said client device; and g. Using said application server to decode a portion of said multi-part message that includes application parameters, and sending an application response to said client over a network connection established in step f.