首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Infiniband寻址-不带IBoIP的IB地址的主机名

问Infiniband寻址-不带IBoIP的IB地址的主机名
EN

Stack Overflow用户
提问于 2012-12-07 05:55:50
回答 1查看 2.9K关注 0票数 6

我刚刚开始熟悉infiniband,我想了解您可以用来寻址infiniband节点的方法。

基于以下代码的示例来自:使用IPoIB,我可以通过IP或主机名来寻址各个节点:RDMA read and write with IB verbs。

另一种方法是直接使用端口GUID地址。但看起来你必须去查一下,而且更类似于以太网mac寻址。

然后是称为LID地址的东西,这是由fabric管理器分配的16位本地地址。如何在运行时使用和确定LID地址?例如,我运行ibaddr并获取GID fe80::1a:4bff:ff0c:34e5 LID start 0x6 end 0x6

基本上,如果您不使用IPoIB,如何将主机名转换为地址或类似的名称?是否有hosts文件或类似的文件?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-09 07:28:52

您列出的各种寻址方法之间有一个基本区别:

采用纯IB verbs

  • Addressing的
  1. 寻址,具有一定程度的抽象

当数据包被“注入”到IB结构中时,它只通过LID进行路由,LID是数据包的本地路由报头的一部分。LID是本地ID,16位,由OpenSM分配(也有GID和全局路由头的情况,但让我们把这个放在一边-它不会使解释变得更容易,而且在这一点上你显然不需要它)。

这意味着如果您正在使用纯IB动词编写应用程序,您将需要通过LID来寻址端点。您可以使用ibv_query_port()获取本地端口的LID -它是端口属性字段的一部分。

但是你不必自己做所有的脏活--你可以使用抽象库,比如librdmacm (RDMA连接管理器)来创建端点之间的连接(“端点”,我指的是RC ),然后使用纯动词来实际发送/接收数据。

基本上,如果您不使用IPoIB,如何将主机名转换为地址或类似的名称?是否有hosts文件或类似的文件?

你不能,也没有:(如果你浏览你链接的博客上的earlier post,你会发现你需要:

  • 确定队列对的address.
  • Communicate地址到另一个节点(通过某种带外机制)。

这里的关键一项是“带外”。例如,MPI通过SSH ( BTW,也可以在IPoIB之上运行)交换所有这些地址,一旦交换了这些信息并连接了所有QPs,数据就开始流经这些RC。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13753332

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档