1. A computer-implemented method for facilitating communication of data between a client and a server, the method comprising: facilitating creation of a connection comprising a tunnel with one or more channels between a client side logical interface and a server side logical interface, wherein each channel is associated with a port forward of the client side logical interface and the server side logical interface, wherein the client side logical interface and the server side logical interface reside on opposite sides of a firewall, wherein the client side logical interface is for one or more client protocol interfaces, and wherein the server side logical interface is for one or more server protocol interfaces; receiving a data unit for transmission between one of plural clients of the client side logical interface and one of plural servers of the server side logical interface via the connection comprising the tunnel, wherein the data unit is associated with an open systems interconnection (OSI) model stack identifying a source or a destination of the data unit, and wherein the client side logical interface or the server side logical interface is configured to provide access to one or more protocols for modifying the identified source or destination of the data unit and for transmitting the data unit; translating, according to a routing table, between one or more client protocol interfaces and one or more server protocol interfaces; and facilitating transmission of the data unit via the connection comprising the tunnel.