Re: [tcpm] Comments on draft-blanton-tcpm-3517bis-01
Ethan Blanton <eblanton@cs.ohiou.edu> Wed, 13 April 2011 20:13 UTC
Return-Path: <eblanton@cs.ohiou.edu>
X-Original-To: tcpm@ietfc.amsl.com
Delivered-To: tcpm@ietfc.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfc.amsl.com (Postfix) with ESMTP id 96D2CE0802 for <tcpm@ietfc.amsl.com>; Wed, 13 Apr 2011 13:13:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599]
Received: from mail.ietf.org ([208.66.40.236]) by localhost (ietfc.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6vpy0W5LjfPV for <tcpm@ietfc.amsl.com>; Wed, 13 Apr 2011 13:13:17 -0700 (PDT)
Received: from psg.com (psg.com [IPv6:2001:418:1::62]) by ietfc.amsl.com (Postfix) with ESMTP id CF7B5E06BC for <tcpm@ietf.org>; Wed, 13 Apr 2011 13:13:17 -0700 (PDT)
Received: from 99-52-196-7.lightspeed.crmlin.sbcglobal.net ([99.52.196.7] helo=elb.elitists.net) by psg.com with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.73 (FreeBSD)) (envelope-from <eblanton@cs.ohiou.edu>) id 1QA6RA-000LmQ-Eo; Wed, 13 Apr 2011 20:13:16 +0000
Received: by elb.elitists.net (Postfix, from userid 3000) id B42DD3BFDC; Wed, 13 Apr 2011 16:13:15 -0400 (EDT)
Date: Wed, 13 Apr 2011 16:13:15 -0400
From: Ethan Blanton <eblanton@cs.ohiou.edu>
To: Yuchung Cheng <ycheng@google.com>
Message-ID: <20110413201315.GC4240@colt>
Mail-Followup-To: Yuchung Cheng <ycheng@google.com>, "tcpm@ietf.org Extensions" <tcpm@ietf.org>
References: <20110413182449.GA4240@colt> <BANLkTi=c80RgQFdXj=Bx5Gpd3RHQRCX9=Q@mail.gmail.com>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="wULyF7TL5taEdwHz"
Content-Disposition: inline
In-Reply-To: <BANLkTi=c80RgQFdXj=Bx5Gpd3RHQRCX9=Q@mail.gmail.com>
X-GnuPG-Fingerprint: CB44 99AC EDDA D1AB D6E6 A2CA FF1F 8B16 771F C72B
User-Agent: Mutt/1.5.20 (2009-06-14)
Cc: "tcpm@ietf.org Extensions" <tcpm@ietf.org>
Subject: Re: [tcpm] Comments on draft-blanton-tcpm-3517bis-01
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tcpm>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 13 Apr 2011 20:13:18 -0000
Yuchung Cheng spake unto us the following wisdom: > I have two questions: > > 1) IsLost (SeqNum): > > This routine returns whether the given sequence number is > considered to be lost. The routine returns true when either > DupThresh discontiguous SACKed sequences have arrived above > 'SeqNum' or more than (DupThresh - 1) * SMSS bytes with sequence > numbers greater than 'SeqNum' have been SACKed. Otherwise, the > routine returns false. > > Does RFC require DupThresh discontinuous sack blocks? e.g., > For example, if a sender sends 4 data packets > send pkt1: 1-100 > send pkt2: 101-200 > send pkt3: 201-300 > send pkt4: 301-400 > receive ack: ack1 with one sack block 101-400. > does IsLost(1) returns true? Let me clerify this a bit. Are you positing this when SMSS >> 100 bytes? If so, then the answer is "maybe". The draft is written in the context of a TCP which does not keep track of segments. If, in this case, SMSS >> 100 bytes, then IsLost(1) will return false for a pure byte-counting TCP. Note from Section 3: Finally, note that the algorithm in this document assumes a sender that is not keeping track of segment boundaries after transmitting a segment. It is possible that a sender that did keep this extra state may be able to use a more refined and precise algorithm than the one presented herein, however, we leave this as future work. If SMSS == 100 bytes, then yes, IsLost(1) will return true. > 2) > If the incoming ACK is a duplicate acknowledgment and the TCP is > > not currently in loss recovery, the TCP MUST increase DupAcks by > one and take the following steps: > > (1) If DupAcks >= DupThresh, go to step (4). > > (2) If DupAcks < DupThresh but IsLost (SND.UNA) returns > true---indicating at least three segments have arrived above > the current cumulative acknowledgment point, which is taken > to indicate loss---go to step (4). > > can we combine (1) and (2)? go to steps (4) if IsLost(SND.UNA) is > true. I guess it depends on your answer of my first question. No, not unless you assume a TCP which tracks segments, you assume that all segments are SMSS-sized, or you *always* use Nagle's algorithm. If a TCP is sending segments of size < SMSS, then counting incoming DupAcks allows you to trigger loss recovery when 3 incoming ACKs with new SACK information arrive, regardless of the size of the segments triggering those ACKs. Hope that helps. Ethan
- [tcpm] Comments on draft-blanton-tcpm-3517bis-01 Ethan Blanton
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Yuchung Cheng
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Mark Allman
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Ilpo Järvinen
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Ethan Blanton
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Mark Allman
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Ilpo Järvinen
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Yuchung Cheng
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Ethan Blanton
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Yuchung Cheng
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Alexander Zimmermann
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Scheffenegger, Richard
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Markku Kojo
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Alexander Zimmermann
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Mark Allman
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Alexander Zimmermann
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Ilpo Järvinen
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Anantha Ramaiah (ananth)
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Mark Allman
- [tcpm] Comments on draft-blanton-tcpm-3517bis-01 Matt Mathis
- Re: [tcpm] Comments on draft-blanton-tcpm-3517bis… Matt Mathis