Patent ID: 8880935

Claim:
A computer program product for managing communications, the computer program product comprising: a computer readable storage device having computer readable program code embodied therewith, the computer readable program code comprising: computer readable program code configured to add a first remote direct memory access (RDMA) link between a transport control protocol (TCP) server and a TCP client, where the first RDMA link references a first remote memory buffer (RMB) and a second RMB, and further based on a first remote direct memory access network interface card (RNIC) associated with the TCP server and a second RNIC associated with the TCP client; computer readable program code configured to determine whether a third RNIC is enabled on at least one of the TCP server and TCP client, and in response, add a second RDMA link having at least one selected from the group consisting of a third RNIC and a fourth RNIC, wherein the second RDMA link references at least one common RMB selected from the group consisting of the first RMB and the second RMB; computer readable program code configured to detect a failure in a failed RDMA link, wherein the failed RDMA link is the second RDMA link; computer readable program code configured to reconfigure the first RDMA link to carry at least one TCP message of a TCP connection formerly assigned to the failed RDMA link, responsive to detecting the failure; computer readable program code configured to communicate at least one TCP message of the at least one TCP connection on the first RDMA link; and computer readable program code configured to reconfigure the first RDMA link to carry at least one TCP message of the TCP connection formerly assigned to the second RDMA link, and in response, attempt to re-establish redundancy to the first RDMA link.