Re: [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtls-encaps-03.txt
Michael Tuexen <Michael.Tuexen@lurchi.franken.de> Tue, 13 May 2014 09:05 UTC
Return-Path: <Michael.Tuexen@lurchi.franken.de>
X-Original-To: tsvwg@ietfa.amsl.com
Delivered-To: tsvwg@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 06A581A0887 for <tsvwg@ietfa.amsl.com>; Tue, 13 May 2014 02:05:24 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.202
X-Spam-Level:
X-Spam-Status: No, score=-2.202 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HELO_EQ_DE=0.35, RP_MATCHES_RCVD=-0.651, SPF_HELO_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 gWvb_qYlganz for <tsvwg@ietfa.amsl.com>; Tue, 13 May 2014 02:05:22 -0700 (PDT)
Received: from mail-n.franken.de (drew.ipv6.franken.de [IPv6:2001:638:a02:a001:20e:cff:fe4a:feaa]) by ietfa.amsl.com (Postfix) with ESMTP id C48021A0884 for <tsvwg@ietf.org>; Tue, 13 May 2014 02:05:21 -0700 (PDT)
Received: from [192.168.1.200] (p54819945.dip0.t-ipconnect.de [84.129.153.69]) (Authenticated sender: macmic) by mail-n.franken.de (Postfix) with ESMTP id 8C6241C10491E; Tue, 13 May 2014 11:05:14 +0200 (CEST)
Content-Type: text/plain; charset="iso-8859-1"
Mime-Version: 1.0 (Mac OS X Mail 7.2 \(1874\))
From: Michael Tuexen <Michael.Tuexen@lurchi.franken.de>
In-Reply-To: <5370F5B3.6020601@isi.edu>
Date: Tue, 13 May 2014 11:05:13 +0200
Content-Transfer-Encoding: quoted-printable
Message-Id: <7326D2FB-B5BE-4AE6-8715-F67D3B5AC33B@lurchi.franken.de>
References: <53190AEC.2010209@isi.edu> <625217B1-E56E-48B4-9E1F-B5A8E13C5034@lurchi.franken.de> <CC705408-7F7B-459B-B100-B2B056AD936C@lurchi.franken.de> <53444401.9030905@isi.edu> <146DE290-E6FA-4719-BE2C-EDCDF9FA6904@lurchi.franken.de> <53445AEE.9070303@isi.edu> <1FC35FE3-5891-4B79-97BF-1603CCF67692@lurchi.franken.de> <53457BA3.5030707@isi.edu> <F05EC513-2E30-46ED-9807-F1DB3B1384B8@lurchi.franken.de> <5345BD4F.5070007@isi.edu> <35E3EA2E-46C7-40C0-8AEA-4B5C4B3FF901@lurchi.franken.de> <535061C5.3030206@isi.edu> <6C98A0A7-4727-4B53-A78B-186AEAAF15D1@lurchi.franken.de> <53515469.3010703@isi.edu> <8E12C59B-6F68-46CA-81EE-270122677E65@lurchi.franken.de> <5370F5B3.6020601@isi.edu>
To: Joe Touch <touch@isi.edu>
X-Mailer: Apple Mail (2.1874)
Archived-At: http://mailarchive.ietf.org/arch/msg/tsvwg/-P6-WSAjoqCSZSc7Q8ZnKtCka4A
Cc: tsvwg WG <tsvwg@ietf.org>
Subject: Re: [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtls-encaps-03.txt
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.15
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: <http://www.ietf.org/mail-archive/web/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: Tue, 13 May 2014 09:05:24 -0000
On 12 May 2014, at 18:24, Joe Touch <touch@isi.edu> wrote: > It might be useful to see the updated document at this point. OK, I resubmitted the document. > > I think the bottom line is the conclusion point below - this doc needs to be careful about what it requires/assumes from other layers, and if it's implementation-dependent, present the approach as "SHOULD, where implementations permit" and address what to do when this is not the case. I agree with this high level point. I think we can reach that. Please have a look at the updated document and provide feedback where this goal is not met yet. Best regards Michael > > Joe > > On 5/11/2014 2:45 PM, Michael Tuexen wrote: >> On 18 Apr 2014, at 18:35, Joe Touch <touch@isi.edu> wrote: >> >>> Cutting down a bit... >> Thanks a lot, sorry for the delay. See me comments in-line. >> >> Best regards >> Michael >>> >>> On 4/18/2014 4:39 AM, Michael Tuexen wrote: >>> ... >>>>>> That is why we write in this document that when you run SCTP over DTLS >>>>>> as defined in this document, you MUST use the PLMTUD. >>>>> >>>>> At the DTLS layer. >>>> >>>> Either at the DTLS layer or at the SCTP layer. >>> >>> How would an implementer know what to do per se? If they built this using userland SCTP, which they could AFAICT, they might not know. >>> >>> IMO, that means you should say something more like: >>> >>> - if you know, it can be at either layer >>> - one layer MUST do it >> Based on discussions, my current text reads : >> >> 4. General Considerations >> >> An implementation of SCTP over DTLS MUST implement and use a path >> maximum transmission unit (MTU) discovery method that functions >> without ICMP to provide SCTP/DTLS with an MTU estimate. An >> implementation of "Packetization Layer Path MTU Discovery" [RFC4821] >> either in SCTP or DTLS is RECOMMENDED. >> >> Doesn't this address your comment? >> >> Please note that >> http://tools.ietf.org/html/draft-ietf-rtcweb-data-channel-08 >> states that the PMTUD is done by SCTP when SCTP over DTLS is used >> for data channels. >> >> Maybe I should resubmit my current version such that we have the >> same document to discuss? There have been some changes based on >> discussions... What do you think? This would not imply that >> I don't want to address the still open points, just to make the >> discussion easier. >>> >>>>>> So this document >>>>>> mandates what to do, it refers to other specs how to do it, but the >>>>>> other documents don't mandate it. >>>>>> Isn't that a valid way of doing it? >>>>> >>>>> The way you describe it in Sec 4 is (emphasis mine): >>>>> >>>>> If path MTU discovery is performed by the *DTLS* layer, the method >>>>> described in [RFC4821] MUST be used. >>>>> >>>>> But RFC4821 doesn't talk about DTLS. That's what's confusing me. It only talks about SCTP, and gives two methods - one using pads and one at the user level (like TCP). >>>>> >>>>> For probe packets, the >>>>> extension defined in [RFC6520] MUST be used. >>>>> >>>>> Now you're back to talking about DTLS. >>>> >>>> Have a look at >>>> https://tools.ietf.org/html/rfc4821#section-10.4 >>>> Since DTLS is running on top of UDP, it qualifies as an >>>> application in the sense of that section, I think. >>>> In the second paragraph it talks about packets similar >>>> to SCTP HB plus PAD. This is exactly what is described in >>>> https://tools.ietf.org/html/rfc6520#section-4 >>> >>> That's far too vague to qualify as a "method" that you can tie to a MUST, IMO. I would expect that your doc ought to give the needed details, "inspired" by 4821. >> By repeating the text of RFC 4821? >>> >>>>> I think what you might want to say is that: >>>>> >>>>> If path MTU discovery is performed by the DTLS layer, the method >>>>> described in [RFC4821] as for SCTP using a PAD in the extension >>>>> described in [RFC6520] MUST be used. >>>> >>>> OK. I'm fine with that text. >>> >>> You might need a little more (not sure; I'll let the SCTP folks decide). I just don't know if that's enough detail to qualify as a standards requirement. >> I think that is enough... >>> >>>>> --- >>>>> >>>>> If path MTU discovery is performed by the *SCTP* layer and IPv4 is used >>>>> as the network layer protocol, the DTLS implementation MUST allow the >>>>> DTLS user to enforce that the corresponding IPv4 packet is sent with >>>>> the DF bit set. >>>>> >>>>> Now I don't know where to do discovery - in DTLS or SCTP. That's not a mandate; that's two alternatives. >>>> >>>> Since it is "performed by the SCTP layer", SCTP is sending the probe packets. It usea >>>> the ones defined in http://tools.ietf.org/html/rfc4820. However, the requirement for >>>> the DTLS layer is to expose the control of the DF bit. >>>> Any suggestion how to make that clearer? >>> >>> As noted above: >>> >>> a) say "do X or Y, but you MUST do one of these" >>> >>> b) give the details a little more of how to do things in either case. >> Hmm. I'm not sure what is missing compared to >> https://tools.ietf.org/html/rfc4821#section-10.2 >> and >> https://tools.ietf.org/html/rfc4821#section-10.4 >>> >>> ... >>>>>> What I don't understand: >>>>>> * A compressed message can be larger than the original uncompressed. So it won't fit. >>>>> >>>>> Then your compression is broken. A compressed message should never be larger than uncompressed - ever. >>>> >>>> Really? If you present some random data, the compression won't give you anything (there >>>> is no redundancy). Some compression algorithms add an overhead. So the compressed message would >>>> be larger. Or am I wrong? >>> >>> That's a really bad compression algorithm. A reasonable one should leave things alone (with no overhead) if it can't make things better. >> Hmm. Possible. But >> http://tools.ietf.org/html/rfc5246#section-6.2.2 >> contains in the second paragraph: >> Compression must be lossless and may not increase the content length >> by more than 1024 bytes. >> So at least at the specification level, the above is explicitly covered. >>>>>> * If SCTP sends the probe packets, doesn't this mean that the probe packets >>>>>> must bypass compression? >>>>> >>>>> At the SCTP layer; SCTP can't force lower layers to bypass compression. >>>> >>>> Correct. >>>> So assume SCTP send probe packets and the padding is constant data. So it is highly >>>> compressible. Wouldn't SCTP then conclude that you can send a large message without >>>> fragmentation? If SCTP takes that as the PMTU, it would fragment user messages for >>>> that boundary, compression might not be as efficient and you would need IP fragmentation. >>> >>> PMTUD is supposed to tell you when a segment of a given size at a given layer *can get there*. If it gets there, then the MTU is valid. >> I agree. >>> >>> E.g., PMTUD won't tell you that ATM has 53-byte cells with 48-byte payloads either. >> I agree. But I don't get the point... >>> >>> ... >>>>>> I don't think we can define a DTLS API in TSVWG... At least this is not in the scope >>>>>> of this document. >>>>> >>>>> Sure, but then you're stuck with SCTP only assuming it can >>>>> interact with DTLS as if it were a DTLS user. DTLS users can't set DF. >>>> >>>> Why? It depends on the implementation of DTLS... >>> >>> Then you can't require it in a standards doc. >> Hmm. Then we can't deal with PMTUD at all... I would like to tell people what to >> do if the implementation allows it... >>> >>> Joe >>> >> >
- [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtls-en… internet-drafts
- [tsvwg] Fwd: I-D Action: draft-ietf-tsvwg-sctp-dt… Michael Tuexen
- Re: [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtl… Michael Tuexen
- Re: [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtl… Joe Touch
- Re: [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtl… Michael Tuexen
- Re: [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtl… Joe Touch
- Re: [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtl… Michael Tuexen
- Re: [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtl… Joe Touch
- Re: [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtl… Michael Tuexen
- Re: [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtl… Joe Touch
- Re: [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtl… Michael Tuexen
- Re: [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtl… Joe Touch
- Re: [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtl… Michael Tuexen
- Re: [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtl… Joe Touch
- Re: [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtl… Michael Tuexen
- Re: [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtl… Joe Touch
- Re: [tsvwg] I-D Action: draft-ietf-tsvwg-sctp-dtl… Michael Tuexen