1. An apparatus for transferring data between a computer applications module and a network interfacing device (NID), the apparatus comprising: a switching module configured to (i) receive the data from the applications module, (ii) assess conditions associated with transferring the received data, and (iii) determine whether a more efficient transfer can be established based on the assessed conditions; wherein the switching module is further configured to transfer the received data to a host protocol stack when the received data is assessed to be a first type, and wherein the switching module is further configured to transfer the received data to the NID when the switching module assesses the received data to he a second type, thereby bypassing the host protocol stack, and wherein the data assessed as the first type and the data assessed as the second type go through same type of processing.