MSN (порядковый номер сообщения) в ответе на повторно переданное чтение RDMA - PullRequest
0 голосов
/ 19 февраля 2020

Во время выполнения теста ib_read_bw для сообщений размером 64 КБ от Mellanox CX-4 (инициатор запроса) к другому RNI C повторные передачи происходят от Mellanox для 5-го RDMA-READ для 50 КБ данных (первые 12 КБ) был успешно подтвержден), после чего он непрерывно повторно передает один и тот же запрос для оставшихся 50 КБ данных, хотя целевой RNI C отвечает.

Одно наблюдение: целевой RNI C отвечает MSN из 11 вместо 5 в первом ответе RDMA READ для повторно переданного (для 50 КБ) запроса на чтение.

infiniband spe c говорит, что для дублированных запросов RNI C не должен увеличивать MSN Означает ли это, что RNI C должен отвечать любым MSN, который у него есть (он мог ответить на все полученные входящие запросы и иметь MSN 16, а затем увидеть повторную передачу) или должен ответить соответствующим MSN для повторно переданного RDMA READ.

Ответы [ 2 ]

0 голосов
/ 27 февраля 2020

Да, согласно моему пониманию, MSN должен указывать на исходный запрос на чтение. В случае ответа на дубликаты ОТПРАВИТЬ или ЗАПИСАТЬ, PSN и MSN оба имеют последний отправленный ACK. Это работает как объединенный ACK.
Но при ответе на запрос на чтение PSN имеет исходный запрос на чтение, и, следовательно, MSN также должен быть с исходным запросом на чтение.

От Spe c - «чтобы считаться дублирующим Запросом чтения RDMA, PSN дублирующего запроса должен находиться в текущей дублированной области PSN ответчика. Кроме того, чтобы считаться действительным дублирующим Запросом чтения RDMA, PSN дублирующего запроса должен попадать в диапазон PSN, выделенных исходному ответу READ RDMA, и объем данных, запрашиваемых в дублирующем запросе, должен полностью содержаться в пределах объема данных, запрашиваемых в исходном запросе RDMA READ. Другими словами, данные, запрашиваемые в дублирующем запросе RDMA READ должен быть надлежащим подмножеством данных, запрашиваемых в исходном запросе RDMA READ. Если начальный PSN и длина дублированного запроса READ RDMA не попадают в диапазон PSN, выделенных для исходного ответа READ RDMA, требуется st недействителен, и ответчик может молча отбросить дубликат запроса RDMA READ "

0 голосов
/ 19 февраля 2020

InfiniBand spe c говорит, что:

Для запросов READ RDMA ответчик может увеличить свой MSN после завершения проверки запроса и до начала передачи любых запрошенных данных. и может возвращать увеличенный MSN в AETH первого ответного пакета.

и

MSN не должен увеличиваться для дублированных запросов.

(C9-148)

Я считаю, что это означает, что MSN должен оставаться неизменным при повторной передаче.

...