【问题标题】:Is it possible to implement RDMA (RoCE) only on client side without worrying about Server RDMA support?是否可以仅在客户端实现 RDMA (RoCE) 而无需担心服务器 RDMA 支持?
【发布时间】:2016-02-02 12:54:04
【问题描述】:

我需要使用 RDMA 减少 Windows 应用程序的延迟,但我只能控制通信的一侧,RDMA(内核旁路)实现与另一侧无关。

是否可以仅在客户端实现 RDMA (RoCE) 而无需担心服务器 RDMA 支持?

【问题讨论】:

    标签: rdma


    【解决方案1】:

    不,RDMA(RoCE、iWARP 等)是有线协议,因此双方都需要处理它。一个类比是对 HTTP 使用压缩或流水线 - 您需要客户端和服务器的支持。

    但是,另一方面,您不需要在双方都实现 RoCE 的硬件。您可以使用真正的 RDMA 适配器,将数据移动卸载到客户端的硬件,并在服务器端使用 RoCE 的软件实现(例如,Soft RoCE)。

    【讨论】:

    • 感谢罗兰的回复。是否可以使用启用 RDMA 的适配器来实现内核绕过,而将 RDMA 协议留在客户端?
    • 当然。也可以使用 netmap 之类的东西通过非 RDMA 适配器实现内核绕过。但是 RDMA 适配器通常允许您使用内核绕过来发送/接收数据包。
    【解决方案2】:

    不,你不能。 RDMA 需要两台机器来处理连接设置和通信。并且需要网卡的硬件和驱动以及网络两端和交换机的配置来支持RDMA协议。

    【讨论】:

      【解决方案3】:

      不,不是。与大多数不可能的传输协议一样。 (例如 TCP、UDP)

      - 作为附加建议:如果您只有一个支持 RDMA 的适配器,则可以在另一侧使用 Soft-RoCE -

      【讨论】:

        猜你喜欢
        • 2021-10-23
        • 1970-01-01
        • 2016-06-08
        • 2020-04-16
        • 1970-01-01
        • 2021-01-18
        • 1970-01-01
        • 2013-06-12
        • 2011-06-01
        相关资源
        最近更新 更多