Re: [tsvwg] RDMA Support by UDP FRAG Option

Joseph Touch <touch@strayalpha.com> Mon, 21 June 2021 03:04 UTC

Return-Path: <touch@strayalpha.com>
X-Original-To: tsvwg@ietfa.amsl.com
Delivered-To: tsvwg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8FE1F3A1E6A for <tsvwg@ietfa.amsl.com>; Sun, 20 Jun 2021 20:04:56 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.455
X-Spam-Level:
X-Spam-Status: No, score=0.455 tagged_above=-999 required=5 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_NEUTRAL=0.652, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=strayalpha.com
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 ER9w70Ugj0Hb for <tsvwg@ietfa.amsl.com>; Sun, 20 Jun 2021 20:04:52 -0700 (PDT)
Received: from server217-4.web-hosting.com (server217-4.web-hosting.com [198.54.116.98]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id F23FB3A1E67 for <tsvwg@ietf.org>; Sun, 20 Jun 2021 20:04:51 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=strayalpha.com; s=default; h=To:References:Message-Id:Cc:Date:In-Reply-To: From:Subject:Mime-Version:Content-Type:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=i18j0tEB/FpilBoJ8XTEoS8EapM/8azL/CbD2e9LPMA=; b=H0Ondf82DLCG4bsEThE6OZicU2 FQ4weO9y399fRwtUPMWn4OTteF8lPe2JoBbQdfUaYKT+nFB4ulrM/354bE8r4StI+LFPGp3tOj1vg Nvx37qsoOpVW+CYekXG6YWvaI3Okx1L3mZv1JSOf8MQ6X9rcaavSz5xFMbsmoZaNUf0ndJ+DW/mPm g/LTysbH3xlJbZBtsHKNbHVnJpCMkk0ZFeAFsLnlSguMgkHdbgwUbUMKun//hZcId0zvzoQ3aXqwW lPX8i8mM2SfKMnGuRMf7bXrgImeUlywFsOWhgVZCsZ4exYRUwKxAo0hfXyZKVLuHtAQ1+jGQWPNU6 SqJ/3cJA==;
Received: from cpe-172-250-225-198.socal.res.rr.com ([172.250.225.198]:55242 helo=smtpclient.apple) by server217.web-hosting.com with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from <touch@strayalpha.com>) id 1lvAEv-001Iue-Q4; Sun, 20 Jun 2021 23:04:50 -0400
Content-Type: multipart/alternative; boundary="Apple-Mail=_4EFF8D7E-B34F-45CD-99B9-1731EFB01F80"
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.100.0.2.22\))
From: Joseph Touch <touch@strayalpha.com>
In-Reply-To: <CALx6S34Yrph523yd0vx9EsCscwrjJY2ek6VrEj+7zCDGTLyuPA@mail.gmail.com>
Date: Sun, 20 Jun 2021 20:04:43 -0700
Cc: "C. M. Heard" <heard@pobox.com>, Gorry Fairhurst <gorry@erg.abdn.ac.uk>, TSVWG <tsvwg@ietf.org>
Message-Id: <48E7C759-957B-4E96-8A55-581AC40E5B28@strayalpha.com>
References: <CACL_3VEyLdQZ-3hvzXxyA8ehtWs2hXESZ2OqyAx+BeSg85+-cA@mail.gmail.com> <CACL_3VFE4TjKvmkfZjvNpWo6vVfKjz5w85=Q+yqnYZKcwbYLmQ@mail.gmail.com> <63FFC34B-2179-47F1-B325-21CAC3D1543A@strayalpha.com> <CACL_3VHTfxWaBj7TFEmBXBqovrrAj7XuFEZFUag_iBHr3Hx09g@mail.gmail.com> <0EBFC9B0-591A-4860-B327-6E617B83F4D1@strayalpha.com> <CALx6S34pT81TbfQDk2vKF8wBrXL312As79K=rEzUQ3Lmg7UvpA@mail.gmail.com> <7C51D926-9DBB-41F5-93B2-10F716F672B1@strayalpha.com> <CALx6S37uN8TsXQZ3cv5jmxwxSyBRjK=-GQ_MsWxPWSs21XoGHw@mail.gmail.com> <CACL_3VEx7+VnLz7OLdXyhZU41e+-oBz3dc8JdMV_7pLMfic6=w@mail.gmail.com> <fcc8762f-c042-7999-d2e4-f28384950a19@erg.abdn.ac.uk> <CALx6S36sWGcZmFpAhF4DfOMyf6Z0w5F9bemNfeM1yWV-r0M+BA@mail.gmail.com> <8af3abf9-943f-13c1-e239-5efca27cf68c@erg.abdn.ac.uk> <CACL_3VHdyLAmzMbWsTVfJD+4tTzsMvcTzKS1B1CAdZ3k5U957g@mail.gmail.com> <CALx6S34DUrUBYd94LPPg4Hgh0FnZYZjZ4eKEYuaxb-7zbzb=pQ@mail.gmail.com> <CACL_3VEq9R=HmWXGbu_zcrgWfG0=q0z+HWM3cQ9Vh68hTCUR-w@mail.gmail.com> <CALx6S35bdGwY8FagGn8x5CaO4O3zW3U+NnB5ejC7bB6BHsXtJg@mail.gmail.com> <CACL_3VFwUJzT7uiXh33gBffboqqb51uFWJAEh290SsD0=aAzaQ@mail.gmail.com> <CALx6S34Lai=YS8i1VTC1zKHqsCTt_XUeKfwob7Qe_BA49bHC3A@mail.gmail.com> <CACL_3VFZphux8uCqh6seVgTEjyjOhCjGd-jHtdGc0fR9opKWUg@mail.gmail.com> <CALx6S34Yrph523yd0vx9EsCscwrjJY2ek6VrEj+7zCDGTLyuPA@mail.gmail.com>
To: Tom Herbert <tom@herbertland.com>
X-Mailer: Apple Mail (2.3654.100.0.2.22)
X-OutGoing-Spam-Status: No, score=-1.0
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - server217.web-hosting.com
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - strayalpha.com
X-Get-Message-Sender-Via: server217.web-hosting.com: authenticated_id: touch@strayalpha.com
X-Authenticated-Sender: server217.web-hosting.com: touch@strayalpha.com
X-Source:
X-Source-Args:
X-Source-Dir:
X-From-Rewrite: unmodified, already matched
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsvwg/D_n49j8i-dCLp88EbFkD0jHtR5Q>
Subject: Re: [tsvwg] RDMA Support by UDP FRAG Option
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Transport Area Working Group <tsvwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tsvwg/>
List-Post: <mailto:tsvwg@ietf.org>
List-Help: <mailto:tsvwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 21 Jun 2021 03:04:57 -0000


> On Jun 20, 2021, at 6:24 PM, Tom Herbert <tom@herbertland.com> wrote:
…
> 
> Mike,
> 
> Please consider the simple case where the UDP checksum is set. There
> are two common methods to offload the checksum: protocol agnostic and
> protocol specific. In the protocol agnostic case the stack provides
> the starting offset of the checksum area (offset of the UDP header)
> and the offset of the checksum field to write the result (UDP
> checksum)-- these values are placed in the TX descriptor for a packet.
> The checksum field is primed with the pseudo header. The end of the
> checksum area is the end of the packet

No, it is not and has never been. Again, see the text I quoted from RFCs 768, repeated below:

Checksum is the 16-bit one's complement of the one's complement sum of a
pseudo header of information from the IP header, the UDP header, and the
data,  padded  with zero octets  at the end (if  necessary)  to  make  a
multiple of two octets.

Data, which is the UDP field. Not entire IP packet payload, as noted just before the above paragraph:

Length  is the length  in octets  of this user datagram  including  this
header  and the data.   (This  means  the minimum value of the length is
eight.)

Please stop repeating any claim to the contrary, except to note an error in an existing implementation (which should be corrected, not propagated).

> (trying to add a length of the
> area in the hardware interface is a non-starter). If there is surplus
> and that sums to zero then the algorithm works unchanged. If the
> surplus area sums to non-zero then that requires an offsetting sum by
> the host adding in the negative sum value of the surplus area into the
> checksum field. The good news is that this works with any case of
> checksum offload in a UDP packet including encapsulated checksums.

Checksums of packets that encapsulate IP/UDP as a payload would cover the entire IP packet, not just the UDP portion.

Checksums of IP/UDP that encapsulate other packets as a payload would place that packet in the UDP data area, preceding the options if not fragmented.

If errors are corrected, we can stop trying to do cartwheels to enable them.

Joe