A data communications system for a computer system conducting network communications, wherein a communications method is selected and set for conducting the communications (transfer) using an NIC (hardware) 2 or a host processor (CPU 4) based on communications data length, and furthermore, at this time, the free space status of the NIC memory 22 is determined, thereby the communications method as to whether, for example, data related to transmission is to be transferred to the NIC memory 22, or copied to the host memory 5, can be also appropriately determined.