NVMoF: как отличить командную капсулу от капсулы ответа
Допустим, у меня есть трафик RoCEv2 между 2 узлами A и B.
- A использует RDMA_SEND для отправки капсулы команды в B.
- Затем A получает капсулу от B (B также использует RDMA_SEND). В этот момент, как A узнает, является ли это ответом на его команду, отправленную на шаге #1, или это новая капсула команды от B? Вы знаете, декодирование будет полностью отличаться между командой и ответом.
Благодарю.
1 ответ
Если я правильно понимаю, трафик NVMeoF не является симметричным. Есть один узел, который действует как инициатор или хост, а другой действует как цель или контроллер. Капсулы команд отправляются с хоста на контроллер, а капсулы ответов отправляются с контроллера на хост.
Согласно спецификациям, каждая команда и ответ включает в себя поле "Идентификатор команды", которое позволяет сопоставить команду с правильным ответом.