远程 Peer 如何处理 RDMA 写操作发送的数据

问题描述

我很难理解 RDMA 操作的使用方式和使用情况。

假设我们有一个服务器和一个客户端。客户端通过 rdma-write 将数据写入服务器的内存区域。由于服务器在客户端 rdma-write 操作期间没有收到任何数据到达的通知(没有立即),我现在想知道: 如果服务器甚至不知道它得到了一些数据,它如何访问这些数据,更不用说它位于何处(在内存区域中)?

在我的研究中,我只找到了简单描述如何通过 rdma-write/read 发送/读取数据的示例和解释,但没有人解释,例如如何相应地使用数据。

解决方法

在访问数据之前,需要在单独的消息中通知服务器的 CPU,无论是使用具有立即操作的后续 RDMA 写入、发送操作还是原子操作。