draft-ietf-tcpm-1323bis-08.txt   draft-ietf-tcpm-1323bis-09.txt 
TCP Maintenance (TCPM) D. Borman TCP Maintenance (TCPM) D. Borman
Internet-Draft Quantum Corporation Internet-Draft Quantum Corporation
Intended status: Standards Track B. Braden Intended status: Standards Track B. Braden
Expires: September 30, 2013 University of Southern Expires: October 14, 2013 University of Southern
California California
V. Jacobson V. Jacobson
Packet Design Packet Design
R. Scheffenegger, Ed. R. Scheffenegger, Ed.
NetApp, Inc. NetApp, Inc.
March 29, 2013 April 12, 2013
TCP Extensions for High Performance TCP Extensions for High Performance
draft-ietf-tcpm-1323bis-08 draft-ietf-tcpm-1323bis-09
Abstract Abstract
This document specifies a set of TCP extensions to improve This document specifies a set of TCP extensions to improve
performance over paths with a large bandwidth * delay product and to performance over paths with a large bandwidth * delay product and to
provide reliable operation over very high-speed paths. It defines provide reliable operation over very high-speed paths. It defines
TCP options for scaled windows and timestamps. The timestamps are TCP options for scaled windows and timestamps. The timestamps are
used for two distinct mechanisms, RTTM (Round Trip Time Measurement) used for two distinct mechanisms, RTTM (Round Trip Time Measurement)
and PAWS (Protection Against Wrapped Sequences). and PAWS (Protection Against Wrapped Sequences).
skipping to change at page 1, line 43 skipping to change at page 1, line 43
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on September 30, 2013. This Internet-Draft will expire on October 14, 2013.
Copyright Notice Copyright Notice
Copyright (c) 2013 IETF Trust and the persons identified as the Copyright (c) 2013 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 15, line 30 skipping to change at page 15, line 30
(etc.) (etc.)
The dotted line marks a pause (60 time units long) in which A had The dotted line marks a pause (60 time units long) in which A had
nothing to send. Note that this pause inflates the RTT which B could nothing to send. Note that this pause inflates the RTT which B could
infer from receiving TSecr=131 in data segment C. Thus, in one-way infer from receiving TSecr=131 in data segment C. Thus, in one-way
data flows, RTTM in the reverse direction measures a value that is data flows, RTTM in the reverse direction measures a value that is
inflated by gaps in sending data. However, the following rule inflated by gaps in sending data. However, the following rule
prevents a resulting inflation of the measured RTT: prevents a resulting inflation of the measured RTT:
RTTM Rule: A TSecr value received in a segment is used to update RTTM Rule: A TSecr value received in a segment MAY be used to
the averaged RTT measurement only if update the averaged RTT measurement only if the segment advances
the left edge of the send window (e.g. SND.UNA is increased).
a) the segment acknowledges some new data, i.e., only if it
advances the left edge of the send window, and
b) the segment does not indicate any potential loss or
reordering, i.e. contains SACK [RFC2018] or D-SACK [RFC2883]
options
Since TCP B is not sending data, the data segment C does not Since TCP B is not sending data, the data segment C does not
acknowledge any new data when it arrives at B. Thus, the inflated acknowledge any new data when it arrives at B. Thus, the inflated
RTTM measurement is not used to update B's RTTM measurement. RTTM measurement is not used to update B's RTTM measurement.
Implementers should note that with timestamps multiple RTTMs can be Implementers should note that with timestamps multiple RTTMs can be
taken per RTT. Many RTO estimators have a weighting factor based on taken per RTT. Many RTO estimators have a weighting factor based on
an implicit assumption that at most one RTTM will be sampled per RTT. an implicit assumption that at most one RTTM will be sampled per RTT.
When using multiple RTTMs per RTT to update the RTO estimator, the When using multiple RTTMs per RTT to update the RTO estimator, the
weighting factor needs to be decreased to take into account the more weighting factor needs to be decreased to take into account the more
skipping to change at page 42, line 7 skipping to change at page 42, line 7
(c) The description of which TSecr values can be used to update the (c) The description of which TSecr values can be used to update the
measured RTT has been clarified. Specifically, with timestamps, measured RTT has been clarified. Specifically, with timestamps,
the Karn algorithm [Karn87] is disabled. The Karn algorithm the Karn algorithm [Karn87] is disabled. The Karn algorithm
disables all RTT measurements during retransmission, since it is disables all RTT measurements during retransmission, since it is
ambiguous whether the <ACK> is for the original segment, or the ambiguous whether the <ACK> is for the original segment, or the
retransmitted segment. With timestamps, that ambiguity is retransmitted segment. With timestamps, that ambiguity is
removed since the TSecr in the <ACK> will contain the TSval from removed since the TSecr in the <ACK> will contain the TSval from
whichever data segment made it to the destination. whichever data segment made it to the destination.
(d) RTTM update processing explicitly excludes segments containing (d) RTTM update processing explicitly excludes segments not updating
SACK and D-SACK options. This addresses inflation of the RTT SND.UNA. The original text could be interpreted to allow taking
during episodes of segment loss in both directions. RTT samples when SACK acknowledges some new, non-continuous
data.
(e) In RFC1323, section 3.4, step (2) of the algorithm to control (e) In RFC1323, section 3.4, step (2) of the algorithm to control
which timestamp is echoed was incorrect in two regards: which timestamp is echoed was incorrect in two regards:
(1) It failed to update TS.recent for a retransmitted segment (1) It failed to update TS.recent for a retransmitted segment
that resulted from a lost <ACK>. that resulted from a lost <ACK>.
(2) It failed if SEG.LEN = 0. (2) It failed if SEG.LEN = 0.
In the new algorithm, the case of SEG.TSval >= TS.recent is In the new algorithm, the case of SEG.TSval >= TS.recent is
 End of changes. 6 change blocks. 
16 lines changed or deleted 11 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/