From: Chao Leng <lengchao@huawei.com>
To: Max Gurtovoy <mgurtovoy@nvidia.com>,
Sagi Grimberg <sagi@grimberg.me>, Christoph Hellwig <hch@lst.de>
Cc: <linux-nvme@lists.infradead.org>, <kbusch@kernel.org>,
"linux-rdma@vger.kernel.org" <linux-rdma@vger.kernel.org>
Subject: Re: [PATCH] nvme-rdma: set ack timeout of RoCE to 262ms
Date: Fri, 14 Oct 2022 10:15:24 +0800 [thread overview]
Message-ID: <405b78aa-51b8-30b4-ff86-c46d1bc84cda@huawei.com> (raw)
In-Reply-To: <1bd4d4f6-fe33-7fe5-f662-cdef61acf800@nvidia.com>
On 2022/10/14 8:05, Max Gurtovoy wrote:
> Sorry for late response, we have holiday's in my country.
>
> I still can't understand how this patch fixes your problem if you use ConnectX-5 since we use adaptive re-transmission by default and it's faster than 256msec to re-transmit.
adaptive re-transmission? Do you mean NAK-triggered retransmission?
NAK-triggered retransmission is very fast, but timeout-triggered retransmission
is very slow. Because There is a possibility that all packets of a QP are lost,
receiver HBA can not send NAK.
From our analysis, we didn't see any other adaptive re-transmission.
If there is any other adaptive re-transmission, can you explain it?
This patch modify the waiting time for timeout re-transmission, Thus if all packets
of a QP are lost, the re-transmission waiting time will become short.
>
> Did you disable it ?
We do not disable anything.
>
> I'll try to re-spin it internally again.
If you need more information, please feel free to contact me.
Thank you.
>
> On 10/10/2022 12:12 PM, Chao Leng wrote:
>> Hi, Max
>> Can you give some comment? Thank you.
>>
>> On 2022/8/29 21:15, Chao Leng wrote:
>>>
>>>
>>> On 2022/8/29 17:06, Sagi Grimberg wrote:
>>>>
>>>>>>>> If so, which devices did you use ?
>>>>>>> The host HBA is Mellanox Technologies MT27800 Family [ConnectX-5];
>>>>>>> The switch and storage are huawei equipments.
>>>>>>> In principle, switches and storage devices from other vendors
>>>>>>> have the same problem.
>>>>>>> If you think it is necessary, we can test the other vendor switchs
>>>>>>> and linux target.
>>>>>>
>>>>>> Why is the 2s default chosen, what is the downside for a 250ms seconds ack timeout? and why is nvme-rdma different than all other kernel rdma
>>>>> The downside is redundant retransmit if the packets delay more than
>>>>> 250ms in the networks and finally reaches the receiver.
>>>>> Only in extreme scenarios, the packet delay may exceed 250 ms.
>>>>
>>>> Sounds like the default needs to be changed if it only addresses the
>>>> extreme scenarios...
>>>>
>>>>>> consumers that it needs to set this explicitly?
>>>>> The real-time transaction services are sensitive to the delay.
>>>>> nvme-rdma will be used in real-time transactions.
>>>>> The real-time transaction services do not allow that the packets
>>>>> delay more than 250ms in the networks.
>>>>> So we need to set the ack timeout to 262ms.
>>>>
>>>> While I don't disagree with the change itself, I do disagree why this
>>>> needs to be driven by nvme-rdma locally. If all kernel rdma consumers
>>>> need this (and if not, I'd like to understand why), this needs to be set in the rdma core.Changing the default set in the rdma core is another option.
>>> But it will affect all application based on RDMA.
>>> Max, what do you think? Thank you.
>>>> .
>>>
>>> .
> .
next prev parent reply other threads:[~2022-10-14 2:15 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-08-19 7:58 [PATCH] nvme-rdma: set ack timeout of RoCE to 262ms Chao Leng
2022-08-21 6:20 ` Christoph Hellwig
2022-08-22 9:50 ` Chao Leng
2022-08-22 15:30 ` Max Gurtovoy
2022-08-25 9:58 ` Chao Leng
2022-08-28 14:57 ` Sagi Grimberg
2022-08-29 8:05 ` Chao Leng
2022-08-29 9:06 ` Sagi Grimberg
2022-08-29 13:15 ` Chao Leng
2022-10-10 9:12 ` Chao Leng
2022-10-14 0:05 ` Max Gurtovoy
2022-10-14 2:15 ` Chao Leng [this message]
2022-11-16 2:24 ` Chao Leng
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=405b78aa-51b8-30b4-ff86-c46d1bc84cda@huawei.com \
--to=lengchao@huawei.com \
--cc=hch@lst.de \
--cc=kbusch@kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=linux-rdma@vger.kernel.org \
--cc=mgurtovoy@nvidia.com \
--cc=sagi@grimberg.me \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox