Re: [storm] DDP messages ordering

Elena Gurevich <elena.gurevich@toganetworks.com> Tue, 29 September 2015 06:18 UTC

Return-Path: <elena.gurevich@toganetworks.com>
X-Original-To: storm@ietfa.amsl.com
Delivered-To: storm@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 99C2D1A1AC6 for <storm@ietfa.amsl.com>; Mon, 28 Sep 2015 23:18:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.902
X-Spam-Level:
X-Spam-Status: No, score=-1.902 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id gwlfg3y4SThk for <storm@ietfa.amsl.com>; Mon, 28 Sep 2015 23:18:35 -0700 (PDT)
Received: from emea01-db3-obe.outbound.protection.outlook.com (mail-db3on0617.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe04::617]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B84461A1AC1 for <storm@ietf.org>; Mon, 28 Sep 2015 23:18:34 -0700 (PDT)
Received: from HE1PR02MB0651.eurprd02.prod.outlook.com (10.161.118.11) by HE1PR02MB0874.eurprd02.prod.outlook.com (10.161.118.24) with Microsoft SMTP Server (TLS) id 15.1.280.20; Tue, 29 Sep 2015 06:18:16 +0000
Received: from HE1PR02MB0652.eurprd02.prod.outlook.com (10.161.118.12) by HE1PR02MB0651.eurprd02.prod.outlook.com (10.161.118.11) with Microsoft SMTP Server (TLS) id 15.1.280.20; Tue, 29 Sep 2015 06:18:12 +0000
Received: from HE1PR02MB0652.eurprd02.prod.outlook.com ([10.161.118.12]) by HE1PR02MB0652.eurprd02.prod.outlook.com ([10.161.118.12]) with mapi id 15.01.0280.017; Tue, 29 Sep 2015 06:18:12 +0000
From: Elena Gurevich <elena.gurevich@toganetworks.com>
To: Tom Talpey <tom@talpey.com>, "storm@ietf.org" <storm@ietf.org>
Thread-Topic: [storm] DDP messages ordering
Thread-Index: AdDqHUWNk/8QkGT5SXeSvBvi6thoNgAI4rqAAC+dhtAABhopgAApL59wAWC74YACMmsnAAAchDmQ
Date: Tue, 29 Sep 2015 06:18:11 +0000
Message-ID: <HE1PR02MB06528BD69A0B22A93665BA0CF94E0@HE1PR02MB0652.eurprd02.prod.outlook.com>
References: <HE1PR02MB0652BA180545E2D5E21AB8FEF9530@HE1PR02MB0652.eurprd02.prod.outlook.com> <55EEED81.2060508@talpey.com> <HE1PR02MB06523492AC64C6ECE3BD9068F9520@HE1PR02MB0652.eurprd02.prod.outlook.com> <55F055FF.2050506@talpey.com> <HE1PR02MB0652E769617101AEA243E918F9510@HE1PR02MB0652.eurprd02.prod.outlook.com> <HE1PR02MB065229D51D113A43F190323EF95A0@HE1PR02MB0652.eurprd02.prod.outlook.com> <560967E0.4030706@talpey.com>
In-Reply-To: <560967E0.4030706@talpey.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=elena.gurevich@toganetworks.com;
x-originating-ip: [79.180.193.233]
x-microsoft-exchange-diagnostics: 1; HE1PR02MB0651; 5:/HBP/RBNTcSsmsZX4K6ZVv18dN9zSfMcnLZMCx4P3NxSQ30RF0aNKjKvoIIvtWZFpyjsFQ75zXkAnb7wF7VouJ2HcA2rVA7gqG6tiHf7pMh7ia4F/i86RPOK79V2/MluSurw+FYgCs8vn5ffqAuQiQ==; 24:DjzbON8s/oenzQrrAf7XzeLBCGCW4EzdI8jP/kp86SPnj3S+6i0FGHF6CaWV5Z15MU6TV8Bwu+TJaF7xbBjQLqwgRzeMyVuOBar/YQoEGfk=; 20:TNM/NstKYPr33qzFFJQLO6uYz+sptzgwUbSyBQmzh8+m95EZv5titW76EwbzdDMkRTCmSMeqhuRs2+F9PIMiYQ==
x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:HE1PR02MB0651;
x-microsoft-antispam-prvs: <HE1PR02MB0651B3DAF5ECE8A92A04C1C0F94E0@HE1PR02MB0651.eurprd02.prod.outlook.com>
x-exchange-antispam-report-test: UriScan:;
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(601004)(2401047)(8121501046)(520078)(5005006)(3002001); SRVR:HE1PR02MB0651; BCL:0; PCL:0; RULEID:; SRVR:HE1PR02MB0651;
x-forefront-prvs: 0714841678
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(6009001)(377454003)(34854003)(51444003)(13464003)(24454002)(42154003)(199003)(479174004)(189002)(92566002)(4001540100001)(33656002)(93886004)(86362001)(19580405001)(81156007)(97736004)(2900100001)(19580395003)(5001830100001)(40100003)(5007970100001)(5004730100002)(66066001)(122556002)(11100500001)(2950100001)(64706001)(5003600100002)(2501003)(10400500002)(5890100001)(189998001)(101416001)(54356999)(5001860100001)(76176999)(74316001)(105586002)(5001770100001)(50986999)(87936001)(76576001)(68736005)(102836002)(77096005)(77156002)(107886002)(62966003)(46102003)(106356001)(5001960100002)(5002640100001); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR02MB0651; H:HE1PR02MB0652.eurprd02.prod.outlook.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en;
received-spf: None (protection.outlook.com: toganetworks.com does not designate permitted sender hosts)
spamdiagnosticoutput: 1:23
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Sep 2015 06:18:11.9297 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 73f7e7df-ca98-4f08-bf85-f137b447da96
X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR02MB0651
X-Microsoft-Exchange-Diagnostics: 1; HE1PR02MB0874; 2:stGPrK8KNMNiyhcBJpPCxstrMOk58tNSAkr2vr15tVYUNsLvQBrpDr2D6i96r8UkKdKsc3UNRrONeNUnV3nhgXqs1Ra6GqV2WUuTVzM08G/ai5A9OXTJC8or39T1NUHed96sXgj9gmJkPatstP7MTUnh3Vb3FLV2s20Tx+s6RvI=; 23:k7rnJYNu/448+mfqWidGjUYzH7tkwHWMhj0lwvRSHEGmtKH0ZwtbkhwLcMfGNVduhuLIC9FtFXUPU1lUCL3dxXTr6I2Az+MHTtJGSLSSX2CBByfXJig/Y6GXu7YLM62OArLO5PpCrgcfhF8T4W6Viow4Pj7GLlM7Qs1wvvjqzkfbb+A2n6L3Dk9kEMGDxX7A
X-OriginatorOrg: toganetworks.com
Archived-At: <http://mailarchive.ietf.org/arch/msg/storm/_aPPaFtBOPB4Nt6QK4NhBr9XTdY>
Subject: Re: [storm] DDP messages ordering
X-BeenThere: storm@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Storage Maintenance WG <storm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/storm>, <mailto:storm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/storm/>
List-Post: <mailto:storm@ietf.org>
List-Help: <mailto:storm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/storm>, <mailto:storm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 29 Sep 2015 06:18:37 -0000

Hi Tom,  that you for your responses you are the only person that reacts to my question :(.

If we back to my question:
according to RFC 5040
-------------------------------------------------------------
5.2 RDMA Read Operation
The RDMA Read operation MUST consist of a single RDMA Read Request Message and a single RDMA Read Response Message.
-------------------------------------------------------------

And "the last flag" you mentioned relates to DDP layer to sign last segment of the same DDP message ( RDMA message is mapped one-by-one to DDP message).

Personally I think that for transmitter it will be more simple to allow interleaving of DDP segments of different RDMA messages related to different transmit queues: SQ and IRRQ, but for receiver this behavior complicates the processing.

So if we allow this behavior RFC 5041 must more accurate define this rule, or I still miss something.

Best regards,
Elena



-----Original Message-----
From: Tom Talpey [mailto:tom@talpey.com]
Sent: Monday, September 28, 2015 7:17 PM
To: Elena Gurevich; storm@ietf.org
Subject: Re: [storm] DDP messages ordering

I was traveling last week so this is a delayed response. I want to say that I am not answering in the role of STORM WG co-chair.
This is simply my interpretation of the specifications.

The behavior you observed is allowed by the RDMA Read processing rules. In RFC5040 section 4.5, the RDMA Read Response is defined to be simply a DDP message. The key is that the sender (i.e. the RDMA Read responder) can and does respond to a single RDMA Read with multiple Responses at the RDMAP layer. The "Last" flag, defined in
RFC5041 section 4.1, is used to indicate the final Response in such a sequence. The RDMA Read Requestor simply processes the responses until the Last flag is received, at which point it completes the RDMA Read operation back to the application.

Because each RDMA Read Response is a separate DDP message, it is perfectly legal for the Responder to interleave other DDP messages while processing the RDMA Read. There is no requirement that DDP pause the stream until the Last flag is sent.

I'd actually expect most RNICs to do this for large RDMA Reads, for example if they are larger than a single Ethernet frame, or any other size if desired. Because the responding RNIC needs to perform multiple PCI Reads, and because RNICs don't usually buffer tagged data, it will be very convenient for them to issue interim RDMA Read Responses.

Does this help?

Tom.

On 9/17/2015 7:53 AM, Elena Gurevich wrote:
> Hello Tom,
>
> Please reference exact place that explicitly or implicitly allows/forbids the behavior in question.
>
> Best regards,
> Lena
>
> -----Original Message-----
> From: storm [mailto:storm-bounces@ietf.org] On Behalf Of Elena
> Gurevich
> Sent: Thursday, September 10, 2015 3:03 PM
> To: Tom Talpey; storm@ietf.org
> Subject: Re: [storm] DDP messages ordering
>
> Hello Tom,
>
> Section 5.5 just specifies ordering rules of RDMAP requester and responder.
> According to such rules RDMAP generates RDMA messages and passes them to DDP layer one by one for future processing.
> RDMAP's granularity and visibility is a particular RDMA message.
> DDP layer gets RDMA messages from RDMAP layer maps them one-by-one to DDP messages performs segmentation and passed them to transport layer.
> So DDP segments interleaving/rules cannot be part of RDMAP , it is clearly DDP layer behavior.
> And according to RFC 5041 Section 5.3 and already mentioned by you "first rule" cannot interleave DDP segments of different operations.
>
> Best regards,
> Lena
>
> -----Original Message-----
> From: Tom Talpey [mailto:tom@talpey.com]
> Sent: Wednesday, September 09, 2015 6:54 PM
> To: Elena Gurevich; storm@ietf.org
> Subject: Re: [storm] DDP messages ordering
>
> On 9/9/2015 9:07 AM, Elena Gurevich wrote:
>> Hello,
>>
>> During my testing of some iWARP adaptor I discovered that RNIC interleaves DDP segments of Send and Read Response messages.
>> According to your previous response this behavior is forbidden, is it ?
>
> Not necessarily, because an RDMA Read response is special. It's injected into the DDP stream within the RNIC by RDMAP, and therefore it follows the RDMAP rules. See section 5.5 of RFC5040.
>
> Tom.
>
>>
>> Best regards,
>> Lena
>>
>> -----Original Message-----
>> From: storm [mailto:storm-bounces@ietf.org] On Behalf Of Tom Talpey
>> Sent: Tuesday, September 08, 2015 5:15 PM
>> To: storm@ietf.org
>> Subject: Re: [storm] DDP messages ordering
>>
>> On 9/8/2015 6:02 AM, Elena Gurevich wrote:
>>> Hello,
>>>
>>> RFC 5041 section 5.3 stands that
>>>
>>> ----------------------------------
>>>
>>> 5.3 Ordering Among DDP Messages
>>>
>>> Messages passed through the DDP MUST conform to the ordering rules
>>>
>>> defined in this section.
>>>
>>> At the Data Source, DDP:
>>>
>>> * MUST transmit DDP Messages in the order they were submitted to
>>>
>>> the DDP layer,
>>>
>>> * SHOULD transmit DDP Segments within a DDP Message in increasing
>>>
>>> MO order for Untagged DDP Messages, and in increasing TO order
>>>
>>> for Tagged DDP Messages.
>>>
>>> ----------------------------------
>>>
>>> Does this mean that transmitter MUST not interleave DDM segments
>>> related to consequent DDP messages ?
>>
>> It depends on what you mean by "the transmitter". It's certainly possible that network delivery and TCP retransmission can reorder segments. But the first rule requires that DDP not interleave two separate operations when passing them to the TCP transport.
>>
>> Tom.
-------------------------------------------------------------------------------------------------------------------------------------------------
This email and any files transmitted and/or attachments with it are confidential and proprietary information of
Toga Networks Ltd., and intended solely for the use of the individual or entity to whom they are addressed.
If you have received this email in error please notify the system manager. This message contains confidential
information of Toga Networks Ltd., and is intended only for the individual named. If you are not the named
addressee you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately
by e-mail if you have received this e-mail by mistake and delete this e-mail from your system. If you are not
the intended recipient you are notified that disclosing, copying, distributing or taking any action in reliance on
the contents of this information is strictly prohibited.
------------------------------------------------------------------------------------------------------------------------------------------------