Patent ID: 7581015

Claim:
A communication device for supporting RDMA communication having a transmitting unit for generating and transmitting an RDMA packet and a receiving unit for receiving the RDMA packet, the communication device is characterized in that the transmitting unit has a packet transmitting unit for, when a data transfer request is received, generating the RDMA packet from transfer data and speculatively transmitting the packet without inquiring the transfer destination about presence or absence of reception permission, a packet retransmitting unit for, when a retransmission request is received from the transfer destination, generating the RDMA packet from the requested transfer data and transmitting the packet, and a transmission completion unit for receiving a transfer completion notification from the transfer destination and normally terminating the packet transmission; and the receiving unit has a transfer area control unit for controlling transfer area control information including transfer permission or transfer unpermission with respect to a receiving area, a packet receiving unit for, if transfer permission of the receiving area is determined by referencing the transfer area control information upon packet reception, transferring the received packet to the receiving area and changing the transfer permission of the receiving area to transfer unpermission, a packet discarding unit for, if transfer unpermission of the receiving area is determined by referencing the transfer area control information upon packet reception, discarding the received packet and recording the discarding of the packet in the transfer area control information, a retransmission requesting unit for, if transfer permission of the receiving area is determined after the received packet is discarded by the packet discarding unit, transmitting a retransmission request to the transfer source based on the record of the packet discarding of the transfer area control information, and a completion notifying unit for recognizing transfer completion of the received packet with respect to the receiving area and transmitting a transfer completion notification.