网站大量收购独家精品文档,联系QQ:2885784924

《RDMA详解.docVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《RDMA详解

RDMA(Remote Direct Memory Access)全名是\远程直接数据存取\, RDMA 让计算机可以直接存取其它计算机的内存, 而不需要经过处理器耗时的传输,如图 1.2 所示。 RDMA是一种使一台计算机可以直接将数据通过网络传送到另一台计算机内存中的特性, 将数据从一个系统快速移动到远程系统存储器中,而不对操作系统造成任 何影响,这项技术通过消除外部存储器复制和文本交换操作,因而能腾出总线空间和 CPU周期用于改进应用系统性能,从而减少对带宽和处理器开销的需要,显著 降低了时延。 [color=#ffffff]中国网管论坛 bbs.bitsCN.com 图 1.2 RDMA 数据流传输示意图 RDMA 对以太网来说还是\新生事物\,但以不同形式存在已有十多年时间,它是 Infiniband 技术的基础。产业标准 API(应用程序接口)使 RDMA 从技术走向实现成为可能。其中包括用于低时延消息处理、成就高性能计算的 MPI(消息通过接口),以及 DAPL(直接接入供应库)。后者包括两部 分:KDAPL 和 UDAPL,分别用于内核和用户(应用程序)。Linux 支持 KDAPL,其它操作 系统将来也有可能支持。RDMA 在高性能计算环境广为 采纳,在商务应用领域很少,但如今大多应用程序都能直接支持操作系统,透过操作系 统(如 NFS)间接利用 RDMA 技术的优势是完全可能的。 2 RDMA 工作原理 RDMA 是一种网卡技术,采用该技术可以使一台计算机直接将信息放入另一台计算 机的内存中。通过最小化处理过程的开销和带宽的需求降低时延。RDMA 通过在网卡上 将可靠传输 协议 固化于硬件,以及支持零复制网络技术和内核内存旁路技术这两种途径来达到这一目标。 RDMA 模型如图 2.1 所示。 [color=#ffffff]中国网管联盟 bitsCN.com [color=#ffffff]中国网管论坛 bbs.bitsCN.com 图 2.1 RDMA 模型演变 零复制网络技术使 NIC 可以直接与应用内存相互传输数据,从而消除了在应用内存 与内核内存之间复制数据的需要。 内核内存旁路技术使应用程序无需执行内核内存调用就可向网卡发送命令。在不需 要任何内核内存参与的条件下,RDMA 请求从用户空间发送到本地 NIC 并通过网络发送 给远程 NIC,这就减少了在处理网络传输流时内核内存空间与用户空间之间环境切换的 次数。 [color=#ffffff]网管联盟 bitsCN@com 当一个应用程序执行 RDMA 读/写请求时,系统并不执行数据复制动作,这就减少 了处理网络通信时在内核空间和用户空间上下文切换的次数。在不需 要任何内核内存参与的条件下,RDMA 请求从运行在用户空间中的应用中发送到本地 NIC(网卡),然后经过网络传送到远程 NIC。请求完成既可以完全在用户空间中处理(通 过轮询用户级完成排列),或者在应用一直睡眠到请求完成时的情况 下通过内核内存处理。 RDMA 操作使应用可以从一个远程应用的内存中读数据或向这个内存写数据。 RDMA 操作用于读写操作的远程虚拟内存地址包含在 RDMA 消息中传 送,远程应用程序要做的只是在其本地网卡中注册相应的内存缓冲区。远程节点的 CPU 在整个 RDMA 操作中并不提供服务,因此没有带来任何负载。通过类型值 (键值)的使用,一个应用程序能够在远程应用程序对它进行随机访问的情况下保护它的内存。 发布 RDMA 操作的应用程序必须为它试图访问的远程内存指定正确的类型值,远程 应用程序在本地网卡中注册内存时获得这个类型值。发布 RDMA 的 应用程序也必须确定远程内存地址和该内存区域的类型值。远程应用程序会将相关信息 通知给发布 RDMA 的应用程序,这些信息包括起始虚拟地址、内存大小和该 内存区域的类型值。在发布 RDMA 的应用程序能够对该内存区域进行 RDMA 操作之前, 远程应用程序应将这些信息通过发送操作传送给发布 RDMA 的应用程 序。 3 RDMA 操作类型 [color=#ffffff]网管 u 家 u.bitscn@com 具备 RNIC(RDMA-aware network interface controller)网卡的设备,不论是目标设备还是源设备的主机处理器都不会涉及到数据传 输操作,RNIC 网卡负责产生 RDMA 数据包和接收输入的

文档评论(0)

yingrong + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档