Re: [conex] Review of draft-ietf-conex-tcp-modifications-02
Mirja Kühlewind <mirja.kuehlewind@ikr.uni-stuttgart.de> Thu, 04 July 2013 17:42 UTC
Return-Path: <mirja.kuehlewind@ikr.uni-stuttgart.de>
X-Original-To: conex@ietfa.amsl.com
Delivered-To: conex@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1D88121F9E5F for <conex@ietfa.amsl.com>; Thu, 4 Jul 2013 10:42:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.099
X-Spam-Level:
X-Spam-Status: No, score=-2.099 tagged_above=-999 required=5 tests=[AWL=-0.150, BAYES_00=-2.599, HELO_EQ_DE=0.35, MIME_8BIT_HEADER=0.3]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id UEJGcZybcvIN for <conex@ietfa.amsl.com>; Thu, 4 Jul 2013 10:42:20 -0700 (PDT)
Received: from mailsrv.ikr.uni-stuttgart.de (mailsrv.ikr.uni-stuttgart.de [129.69.170.2]) by ietfa.amsl.com (Postfix) with ESMTP id C709A21F9E54 for <conex@ietf.org>; Thu, 4 Jul 2013 10:42:19 -0700 (PDT)
Received: from netsrv1.ikr.uni-stuttgart.de (netsrv1-c [10.11.12.12]) by mailsrv.ikr.uni-stuttgart.de (Postfix) with ESMTP id 6FBD760219; Thu, 4 Jul 2013 19:42:18 +0200 (CEST)
Received: from vpn-2-cl195 (vpn-2-cl195 [10.41.21.195]) by netsrv1.ikr.uni-stuttgart.de (Postfix) with ESMTP id 5DADB60218; Thu, 4 Jul 2013 19:42:18 +0200 (CEST)
From: Mirja Kühlewind <mirja.kuehlewind@ikr.uni-stuttgart.de>
To: jiyengar@fandm.edu
Date: Thu, 04 Jul 2013 19:42:17 +0200
User-Agent: KMail/1.9.10 (enterprise35 0.20101217.1207316)
References: <CAGgfs97ETmiODavn8eYfmU1PFqhrKyWnrgD=ULMAH91zWjFYYw@mail.gmail.com>
In-Reply-To: <CAGgfs97ETmiODavn8eYfmU1PFqhrKyWnrgD=ULMAH91zWjFYYw@mail.gmail.com>
X-KMail-QuotePrefix: >
MIME-Version: 1.0
Content-Type: Text/Plain; charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
Message-Id: <201307041942.17867.mkuehle@ikr.uni-stuttgart.de>
Cc: conex@ietf.org
Subject: Re: [conex] Review of draft-ietf-conex-tcp-modifications-02
X-BeenThere: conex@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Congestion Exposure working group discussion list <conex.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/conex>, <mailto:conex-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/conex>
List-Post: <mailto:conex@ietf.org>
List-Help: <mailto:conex-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/conex>, <mailto:conex-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 04 Jul 2013 17:42:25 -0000
Hi Jana, I'm incorporating your feedback at the moment. I commet on those things below, I did not take over as suggest. (That means the other things I removed in this mail as integrated as proposed). See below... > - This paragraph about more information than ECN seems unnecessarily > detailed. One sentence ought to be enough. Something like: "In addition to > standard ECN and SACK feedback, an extension described in [ > draft-kuehlewind-conex-accurate-ecn] shows how more accurate ECN feedback, > especially useful in the case of multiple markings within the same > roundtrip time (RTT), can be obtained." I wanted to have the statement a little stronger, basically saying that ConEx is only with the more accurate ECN really usable. I changed the paragraph to the following text: "While loss-based congestion feedback should be minimized, ECN could actually provide more fine-grained feedback information. ConEx-based traffic measurement or management mechanisms would benefit from this. Unfortunately the current ECN does not reflect multiple congestion markings which occur within the same Round-Trip Time (RTT). A more accurate feedback extension to ECN is defined in a separate document [draft-kuehlewind-tcpm-accurate-ecn], as this is also useful for other mechanisms." > 2: Sender-side Modifications: > - "MUST negotiate for both SACK and ECN or the more accurate ECN feedback > ..." : This strikes me as an odd MUST. SHOULD seems adequate. We really wanted to have a MUST here, as we want (modern) system that implement ConEx to also implement SACK and ECN. Only because they try to negotiate, it does mean, that the other end will support it though. We could discuss that we want a "MUST negotiate for SACK" and "SHOULD negotiate for ECN" because SACK really helps to increase the accuracy. But I actually see no reason to only have a SHOULD for ECN. > - "A ConEx sender MUST expose congestion to the network...": A compliant > Conex sender has to follow a Conex spec for exposing congestion; that can > be assumed here, without having a MUST in this document. I changed this to "A ConEx sender MUST expose all congestion information..." because that was the idea. If you decide to use ConEx, of course, you are planning send some ConEx markings from time to time, but actually the point is that you have to reflect ALL congestion information. Does this make more sense for you? > Perhaps cite the > v6 options draft here without specifying here what a Conex sender MUST do. Sorry, don't get this...? > - "A TCP sender SHOULD account congestion byte-wise (and not packet-wise)": > Cite draft-ietf-tsvwg-byte-pkt-congest or justify otherwise. > - "As network congestion is usually byte-congestion ...": Is this really > the case? Cite. I cited draft-ietf-tsvwg-byte-pkt-congest for the lower bullet point. But the reasoning for the upper point is mainly, that this document must specify one of the two ways, and we decided to handle the information byte-wise because that's how there are usually available in TCP (ack'ed bytes). Do I need to reason this? > 3.1.2: Classic ECN Support: > - It is non-trivial for a sender to determine when delayed acks will be > sent by the receiver, in particular with bidirectional data transfer. I > would be careful about suggesting such heuristics without getting into > details. Is this "Advanced Compatibility" really practical or necessary? This would be a sender-only change to get more accurate ECN information. Of course its complex and there is still a risk of missing congestion information, but we decided to describe this option here, as ConEx with 'classic' ECN is hardly usable. > > 3.2: Loss detection with/without SACK: > - "assuming equal sized segments such that the retransmitted packet will > have the same number of header as the original ones." You cannot make this > assumption. There are commonly used stacks that will retransmit differently > sized segments, and even combine retransmitted bytes with new bytes within > a segment. This assumption is not critical, and so I would suggest dropping > it from the text. This should say, that the described solution can only be used under the assumption that packets are equally sized (which is at least true for e.g. file transfers with full IP packets). I added some more text in the introduction part of section 3 'Congestion Accounting' to explain that the number of (lost/marked) packets needs to be estimated otherwise: "Otherwise if this is not the case and a sender sends different sized packets (with unequally distributed packet sizes), the sender needs to memorize or estimate the number of ECN-marked or lost packets. A sender might be able to reconstruct the number of packets and thus the header bytes if the packet sizes of the last RTT are known. Otherwise if no additional information is available the worst case number of headers should be estimated in a conservative way based on a minimum packet size (of all packets sent in the last RTT). If the number of ConEx marked packets is smaller (or larger) than the estimated number of ECN-marked or lost packets, the additional header bytes should the added to (or can be subtracted from) the respective counter." Does this help? Thanks a lot for the review! Mirja
- Re: [conex] Review of draft-ietf-conex-tcp-modifi… Mirja Kuehlewind
- Re: [conex] Review of draft-ietf-conex-tcp-modifi… Mirja Kühlewind