[tram] Benjamin Kaduk's Discuss on draft-ietf-tram-stun-pmtud-10: (with DISCUSS and COMMENT)
Benjamin Kaduk <kaduk@mit.edu> Tue, 25 September 2018 22:07 UTC
Return-Path: <kaduk@mit.edu>
X-Original-To: tram@ietf.org
Delivered-To: tram@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1])
by ietfa.amsl.com (Postfix) with ESMTP id 3A17F130DF2;
Tue, 25 Sep 2018 15:07:16 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: Benjamin Kaduk <kaduk@mit.edu>
To: "The IESG" <iesg@ietf.org>
Cc: draft-ietf-tram-stun-pmtud@ietf.org,
Gonzalo Camarillo <gonzalo.camarillo@ericsson.com>,
Tolga Asveren <tasveren@rbbn.com>, tram-chairs@ietf.org, tasveren@rbbn.com,
tram@ietf.org
X-Test-IDTracker: no
X-IETF-IDTracker: 6.84.0
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <153791323613.5011.4854093713979605105.idtracker@ietfa.amsl.com>
Date: Tue, 25 Sep 2018 15:07:16 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/tram/Qx_7IGBbw3ivWwx2x9nmqcMgHCo>
Subject: [tram] Benjamin Kaduk's Discuss on draft-ietf-tram-stun-pmtud-10:
(with DISCUSS and COMMENT)
X-BeenThere: tram@ietf.org
X-Mailman-Version: 2.1.29
List-Id: "Discussing the creation of a Turn Revised And Modernized \(TRAM\) WG,
which goal is to consolidate the various initiatives to update TURN and STUN."
<tram.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tram>,
<mailto:tram-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tram/>
List-Post: <mailto:tram@ietf.org>
List-Help: <mailto:tram-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tram>,
<mailto:tram-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 25 Sep 2018 22:07:16 -0000
Benjamin Kaduk has entered the following ballot position for draft-ietf-tram-stun-pmtud-10: Discuss When responding, please keep the subject line intact and reply to all email addresses included in the To and CC lines. (Feel free to cut this introductory paragraph, however.) Please refer to https://www.ietf.org/iesg/statement/discuss-criteria.html for more information about IESG DISCUSS and COMMENT positions. The document, along with other ballot positions, can be found here: https://datatracker.ietf.org/doc/draft-ietf-tram-stun-pmtud/ ---------------------------------------------------------------------- DISCUSS: ---------------------------------------------------------------------- I was going to report the same thing as Adam, but will just say that I support his Discuss. I also have one other (also minor and easy to resolve) Discuss point: Section 4.2.6 needs to state what the Length field is measuring the length of. ---------------------------------------------------------------------- COMMENT: ---------------------------------------------------------------------- I understand that this document inherently has to be incomplete and "vague", since the procedure specified within is only meaningful in the context of a STUN usage or other protocol. But in general it seems like there could be greater clarity even within the constraints that we must work under. My points are probably less interesting than the ones Adam raised already, though. The only general observation in this space that I can offer is that some parts of the text read as if only the Probe packets are going to be monitored for the report (but this is clearly not the case given the document as a whole). Section 4.2 The Complete Probing mechanism is implemented by sending one or more Probe Indications with a PADDING attribute over UDP with the DF bit set in the IP header followed by a Report Request to the same server. A router on the path to the server can reject this Indication with an ICMP message or drop it. nit: I don't think "this" is the right word; perhaps "each" would be better. Section 4.2.3 A server supporting this specification will keep the identifiers of all packets received in a chronologically ordered list. The packets that are to be associated to a list are selected according to Section 5.2 of [RFC4821]. [...] 4821 doesn't talk about "list"s at all, and in fact the indicated section seems to be talking more about where to store a PMTU value after it has been determined, rather than what packets to be considering for a report. So I'm pretty confused about what this sentence is trying to say. Section 4.2.4 nit: I think that all instances of "the Probe Indication" should be replaced with "a Probe Indication", in this section. Section 4.2.5 When using a checksum as a packet identifier, the client calculates the checksum for each packet sent over UDP that is not a STUN Probe Indication or Request and keeps this checksum in a chronologically ordered list. The client also keeps the checksum of the STUN Probe Indication or Request sent in that same chronologically ordered list. The algorithm used to calculate the checksum is similar to the algorithm used for the FINGERPRINT attribute (i.e., the CRC-32 of the payload XOR'ed with the 32-bit value 0x5354554e [ITU.V42.2002]). (editorial) It's pretty confusing to start out with the split between STUN and non-STUN messages, only later to clarify that this is because the FINGERPRINT is used for STUN messages. So maybe: When using a checksum as a packet identifier, the client keeps a chronologically ordered list of the packets it transmits, along with an associated checksum value. For STUN Probe Indication or Request packets, the associated checksum value is the FINGERPRINT value from the packet; for other packets a checksum value is computed using a similar algorithm to the FINGERPRINT calculation. Section 4.2.6 When using sequence numbers, a small header similar to the TURN ChannelData header [...] Probably want an informative reference for this header. Section 6.2 6.2. PMTUD-SUPPORTED The PMTUD-SUPPORTED attribute indicates that its sender supports this specification. This attribute has no value part and thus the attribute length field is 0. "this specification" is not sufficiently detailed to interoperate, so I think this needs to be qualified as more like "supports this mechanism, as incorporated into the STUN usage or protocol being used". Section 7 The contents of the PADDING do not seem to be specified anywhere, so it could in theory be used as a side channel to convey other information, which has some potential privacy considerations. Nowadays we tend to ask for the value of the padding bytes to be deterministic (but validation remains optional); I forget if there are STUN-specific considerations that would discourage just setting them all to zero.
- [tram] Benjamin Kaduk's Discuss on draft-ietf-tra… Benjamin Kaduk
- [tram] Benjamin Kaduk's Discuss on draft-ietf-tra… Felipe Garrido (fegarrid)
- Re: [tram] Benjamin Kaduk's Discuss on draft-ietf… Felipe Garrido (fegarrid)
- Re: [tram] Benjamin Kaduk's Discuss on draft-ietf… Benjamin Kaduk
- Re: [tram] Benjamin Kaduk's Discuss on draft-ietf… Felipe Garrido (fegarrid)
- Re: [tram] Benjamin Kaduk's Discuss on draft-ietf… Felipe Garrido (fegarrid)
- Re: [tram] Benjamin Kaduk's Discuss on draft-ietf… Benjamin Kaduk
- Re: [tram] Benjamin Kaduk's Discuss on draft-ietf… Felipe Garrido (fegarrid)
- Re: [tram] Benjamin Kaduk's Discuss on draft-ietf… Benjamin Kaduk
- Re: [tram] Benjamin Kaduk's Discuss on draft-ietf… Gonzalo Camarillo
- Re: [tram] Benjamin Kaduk's Discuss on draft-ietf… Gonzalo Salgueiro (gsalguei)
- Re: [tram] Benjamin Kaduk's Discuss on draft-ietf… Gonzalo Camarillo