Я не могу понять, какова модель "соединения" с InfiniBand?

В частности, я ищу для передачи RDMA. Конечная цель - запись в RDMA с помощью Immediate, но я начинаю с простого переноса в RDMA.

Если его сравнивают с IP-соединением, вы инициируете соединение, запускаете команды для этого соединения, а затем завершаете соединение.

Если его сравнивают с HTTP-запросом / ответом, вы выполняете отдельный запрос, и все.

У каждого из них есть довольно разные API, но я не могу найти шаблоны для них в API.

Например, когда я создаю структуры, необходимые для передачи RDMA, я даю ему информацию об адресе и ключ vaddr/r удаленной памяти ... но нигде не могу найти, где дать ему информацию об адресе целевого интерфейса хоста.

Почти у каждого примера, который я видел, есть ужасная коллекция вызовов C и сложная структура (ОО, люди?) и, кроме того, они либо используют IBConnectionManager, либо используют сокеты для передачи другой информации, еще больше омрачая основу API. Кажется, никто не имеет четкого описания того, что действительно необходимо для выполнения RDMA-Write или RDMA-Write-With-Immediate.

Итак: как мне это сделать?

0