Patent ID: 8046434

Claim:
A data communication method adopted by a data communication apparatus for controlling communications of data between a terminal and a data storage unit by way of a network, said data communication method comprising: an acceptance step of accepting a request for a communication through said network from said terminal connected to said network; a communication step of communicating data with said terminal by way of said network; an issuance step of issuing an access command and a control command from an ordered plurality of control commands to said data storage unit in accordance with a request for a communication received in processing carried out at said acceptance step; a holding step of holding the access command issued in processing carried out at said issuance step, data received from said terminal and data to be transmitted to said terminal; a control-command-buffering step of buffering the control command from the ordered plurality of control commands issued in said processing carried out at said issuance step, the control command related to Direct Memory Access (DMA) or Redundant Array of Independent Disks (RAID); a fetching step of fetching the control command buffered in processing carried out at said control-command-buffering step; a judging step of sequentially judging the control command to be a first command for retrieving a storage unit command from the terminal, then a second command for retrieving data from the terminal, then a third command for transferring data to the terminal, then a fourth command for transferring a storage unit command to the storage unit, then a fifth command for transferring data to the storage unit, then a sixth command for retrieving data from the storage unit, wherein the control commands are related to DMA and the storage unit command is related to RAID; an acquisition step of acquiring the access command held in said processing carried out at said holding step in accordance with the control command fetched in processing carried out at said fetching step; an output step of outputting the access command acquired in processing carried out at said acquisition step to said data storage unit; a data-buffering step of buffering data to be stored in said data storage unit or data read out from said data storage unit; and a transfer step of transferring data between said processing carried out at said holding step and processing carried out at said data-buffering step in accordance with the control command fetched in said processing carried out at said fetching step.