draft-ietf-tsvwg-sctpimpguide-11.txt   draft-ietf-tsvwg-sctpimpguide-12.txt 
Network Working Group R. Stewart Network Working Group R. Stewart
Internet-Draft Cisco Systems, Inc. Internet-Draft Cisco Systems, Inc.
Expires: March 21, 2005 I. Arias-Rodriguez Expires: April 15, 2005 I. Arias-Rodriguez
Nokia Research Center Nokia Research Center
K. Poon K. Poon
Sun Microsystems, Inc. Sun Microsystems, Inc.
A. Caro A. Caro
University of Delaware University of Delaware
M. Tuexen M. Tuexen
Muenster Univ. of Applied Sciences Muenster Univ. of Applied Sciences
September 20, 2004 October 15, 2004
Stream Control Transmission Protocol (SCTP) Implementer's Guide Stream Control Transmission Protocol (SCTP) Implementer's Guide
draft-ietf-tsvwg-sctpimpguide-11.txt draft-ietf-tsvwg-sctpimpguide-12.txt
Status of this Memo Status of this Memo
This document is an Internet-Draft and is subject to all provisions This document is an Internet-Draft and is subject to all provisions
of section 3 of RFC 3667. By submitting this Internet-Draft, each of section 3 of RFC 3667. By submitting this Internet-Draft, each
author represents that any applicable patent or other IPR claims of author represents that any applicable patent or other IPR claims of
which he or she is aware have been or will be disclosed, and any of which he or she is aware have been or will be disclosed, and any of
which he or she become aware will be disclosed, in accordance with which he or she become aware will be disclosed, in accordance with
RFC 3668. RFC 3668.
skipping to change at page 1, line 43 skipping to change at page 1, line 42
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."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on March 21, 2005. This Internet-Draft will expire on April 15, 2005.
Copyright Notice Copyright Notice
Copyright (C) The Internet Society (2004). Copyright (C) The Internet Society (2004).
Abstract Abstract
This document contains a compilation of all defects found up until This document contains a compilation of all defects found up until
the publishing of this document for the Stream Control Transmission the publishing of this document for the Stream Control Transmission
Protocol (SCTP) RFC2960 [6]. These defects may be of an editorial or Protocol (SCTP) RFC2960 [6]. These defects may be of an editorial or
technical nature. This document may be thought of as a companion technical nature. This document may be thought of as a companion
skipping to change at page 2, line 33 skipping to change at page 2, line 33
2.5 Stream parameter clarification . . . . . . . . . . . . . . 10 2.5 Stream parameter clarification . . . . . . . . . . . . . . 10
2.6 Restarting association security issue . . . . . . . . . . 11 2.6 Restarting association security issue . . . . . . . . . . 11
2.7 Implicit ability to exceed cwnd by PMTU-1 bytes . . . . . 15 2.7 Implicit ability to exceed cwnd by PMTU-1 bytes . . . . . 15
2.8 Issues with Fast Retransmit . . . . . . . . . . . . . . . 16 2.8 Issues with Fast Retransmit . . . . . . . . . . . . . . . 16
2.9 Missing statement about partial_bytes_acked update . . . . 21 2.9 Missing statement about partial_bytes_acked update . . . . 21
2.10 Issues with Heartbeating and failure detection . . . . . 22 2.10 Issues with Heartbeating and failure detection . . . . . 22
2.11 Security interactions with firewalls . . . . . . . . . . 25 2.11 Security interactions with firewalls . . . . . . . . . . 25
2.12 Shutdown ambiguity . . . . . . . . . . . . . . . . . . . 27 2.12 Shutdown ambiguity . . . . . . . . . . . . . . . . . . . 27
2.13 Inconsistency in ABORT processing . . . . . . . . . . . 29 2.13 Inconsistency in ABORT processing . . . . . . . . . . . 29
2.14 Cwnd gated by its full use . . . . . . . . . . . . . . . 30 2.14 Cwnd gated by its full use . . . . . . . . . . . . . . . 30
2.15 Window probes in SCTP . . . . . . . . . . . . . . . . . 32 2.15 Window probes in SCTP . . . . . . . . . . . . . . . . . 33
2.16 Fragmentation and Path MTU issues . . . . . . . . . . . 34 2.16 Fragmentation and Path MTU issues . . . . . . . . . . . 35
2.17 Initial value of the cumulative TSN Ack . . . . . . . . 36 2.17 Initial value of the cumulative TSN Ack . . . . . . . . 36
2.18 Handling of address parameters within the INIT or 2.18 Handling of address parameters within the INIT or
INIT-ACK . . . . . . . . . . . . . . . . . . . . . . . . 36 INIT-ACK . . . . . . . . . . . . . . . . . . . . . . . . 37
2.19 Handling of stream shortages . . . . . . . . . . . . . . 38 2.19 Handling of stream shortages . . . . . . . . . . . . . . 39
2.20 Indefinite postponement . . . . . . . . . . . . . . . . 39 2.20 Indefinite postponement . . . . . . . . . . . . . . . . 40
2.21 User initiated abort of an association . . . . . . . . . 40 2.21 User initiated abort of an association . . . . . . . . . 41
2.22 Handling of invalid Initiate Tag of INIT-ACK . . . . . . 46 2.22 Handling of invalid Initiate Tag of INIT-ACK . . . . . . 47
2.23 ABORT sending in response to an INIT . . . . . . . . . . 47 2.23 ABORT sending in response to an INIT . . . . . . . . . . 48
2.24 Stream Sequence Number (SSN) Initialization . . . . . . 48 2.24 Stream Sequence Number (SSN) Initialization . . . . . . 49
2.25 SACK packet format . . . . . . . . . . . . . . . . . . . 49 2.25 SACK packet format . . . . . . . . . . . . . . . . . . . 50
2.26 Protocol Violation Error Cause . . . . . . . . . . . . . 50 2.26 Protocol Violation Error Cause . . . . . . . . . . . . . 51
2.27 Reporting of Unrecognized Parameters . . . . . . . . . . 52 2.27 Reporting of Unrecognized Parameters . . . . . . . . . . 53
2.28 Handling of IP Address Parameters . . . . . . . . . . . 54 2.28 Handling of IP Address Parameters . . . . . . . . . . . 55
2.29 Handling of COOKIE ECHO chunks when a TCB exists . . . 55 2.29 Handling of COOKIE ECHO chunks when a TCB exists . . . 56
2.30 The Initial Congestion Window Size . . . . . . . . . . . 56 2.30 The Initial Congestion Window Size . . . . . . . . . . . 57
2.31 Stream Sequence Numbers in Figures . . . . . . . . . . . 58 2.31 Stream Sequence Numbers in Figures . . . . . . . . . . . 59
2.32 Unrecognized Parameters . . . . . . . . . . . . . . . . 63 2.32 Unrecognized Parameters . . . . . . . . . . . . . . . . 64
2.33 Handling of unrecognized parameters . . . . . . . . . . 64 2.33 Handling of unrecognized parameters . . . . . . . . . . 65
2.34 Tie Tags . . . . . . . . . . . . . . . . . . . . . . . . 66 2.34 Tie Tags . . . . . . . . . . . . . . . . . . . . . . . . 67
2.35 Port number verification in the COOKIE-ECHO . . . . . . 68 2.35 Port number verification in the COOKIE-ECHO . . . . . . 69
2.36 Path Initialization . . . . . . . . . . . . . . . . . . 70 2.36 Path Initialization . . . . . . . . . . . . . . . . . . 71
2.37 ICMP handling procedures . . . . . . . . . . . . . . . . 71 2.37 ICMP handling procedures . . . . . . . . . . . . . . . . 72
2.38 Checksum . . . . . . . . . . . . . . . . . . . . . . . . 73 2.38 Checksum . . . . . . . . . . . . . . . . . . . . . . . . 74
2.39 Retransmission Policy . . . . . . . . . . . . . . . . . 80 2.39 Retransmission Policy . . . . . . . . . . . . . . . . . 81
2.40 Port Number 0 . . . . . . . . . . . . . . . . . . . . . 82 2.40 Port Number 0 . . . . . . . . . . . . . . . . . . . . . 83
2.41 T Bit . . . . . . . . . . . . . . . . . . . . . . . . . 83 2.41 T Bit . . . . . . . . . . . . . . . . . . . . . . . . . 84
2.42 Unknown Parameter Handling . . . . . . . . . . . . . . . 88 2.42 Unknown Parameter Handling . . . . . . . . . . . . . . . 89
2.43 Cookie Echo Chunk . . . . . . . . . . . . . . . . . . . 89 2.43 Cookie Echo Chunk . . . . . . . . . . . . . . . . . . . 90
3. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . 91 2.44 Partial Chunks . . . . . . . . . . . . . . . . . . . . . 91
4. References . . . . . . . . . . . . . . . . . . . . . . . . . 91 3. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . 93
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . 92 4. References . . . . . . . . . . . . . . . . . . . . . . . . . 93
Intellectual Property and Copyright Statements . . . . . . . 94 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . 94
Intellectual Property and Copyright Statements . . . . . . . 96
1. Introduction 1. Introduction
This document contains a compilation of all defects found up until This document contains a compilation of all defects found up until
the publishing of this document for the Stream Control Transmission the publishing of this document for the Stream Control Transmission
Protocol (SCTP) RFC2960 [6]. These defects may be of an editorial or Protocol (SCTP) RFC2960 [6]. These defects may be of an editorial or
technical nature. This document may be thought of as a companion technical nature. This document may be thought of as a companion
document to be used in the implementation of SCTP to clarify errors document to be used in the implementation of SCTP to clarify errors
in the original SCTP document. in the original SCTP document.
skipping to change at page 20, line 31 skipping to change at page 20, line 31
for retransmission due to the Fast Retransmit algorithm that for retransmission due to the Fast Retransmit algorithm that
did not fit in the sent datagram carrying K other TSNs are also did not fit in the sent datagram carrying K other TSNs are also
marked as ineligible for a subsequent fast retransmit. However, marked as ineligible for a subsequent fast retransmit. However,
as they are marked for retransmission they will be retransmitted as they are marked for retransmission they will be retransmitted
later on as soon as cwnd allows. later on as soon as cwnd allows.
6) If not in Fast Recovery, enter Fast Recovery and mark the highest 6) If not in Fast Recovery, enter Fast Recovery and mark the highest
outstanding TSN as the Fast Recovery exit point. When a SACK outstanding TSN as the Fast Recovery exit point. When a SACK
acknowledges all TSNs up to and including this exit point, Fast acknowledges all TSNs up to and including this exit point, Fast
Recovery is exited. While in Fast Recovery, the ssthresh and cwnd Recovery is exited. While in Fast Recovery, the ssthresh and cwnd
SHOULD NOT change for any destinations. SHOULD NOT change for any destinations due to a subsequent Fast
Recovery event (i.e. one SHOULD NOT reduce the cwnd further due
to a subsequent fast retransmit).
Note: Before the above adjustments, if the received SACK also Note: Before the above adjustments, if the received SACK also
acknowledges new DATA chunks and advances the Cumulative TSN Ack acknowledges new DATA chunks and advances the Cumulative TSN Ack
Point, the cwnd adjustment rules defined in Sections 7.2.1 and 7.2.2 Point, the cwnd adjustment rules defined in Sections 7.2.1 and 7.2.2
must be applied first. must be applied first.
2.8.3 Solution description 2.8.3 Solution description
The effect of the above wording changes are as follows: The effect of the above wording changes are as follows:
skipping to change at page 73, line 15 skipping to change at page 74, line 15
2.37.3 Solution description 2.37.3 Solution description
The new appendix now describes proper handling of ICMP messages in The new appendix now describes proper handling of ICMP messages in
conjunction with SCTP. conjunction with SCTP.
2.38 Checksum 2.38 Checksum
2.38.1 Description of the problem 2.38.1 Description of the problem
RFC3309 [7] changes the SCTP checksum due to weaknesses in the RFC3309 [7] changes the SCTP checksum due to weaknesses in the
original Adler 32 checksum for small messages. original Adler 32 checksum for small messages. This document, being
used as a guide for a cut and paste replacement to update RFC2960,
thus needs to also incorporate the checksum changes. The idea being
that one could apply all changes found in this guide to a copy of
RFC2960 and have a "new" document that has ALL changes (including
RFC3309).
2.38.2 Text changes to the document 2.38.2 Text changes to the document
--------- ---------
Old text: Old text:
--------- ---------
6.8 Adler-32 Checksum Calculation 6.8 Adler-32 Checksum Calculation
When sending an SCTP packet, the endpoint MUST strengthen the data When sending an SCTP packet, the endpoint MUST strengthen the data
skipping to change at page 91, line 5 skipping to change at page 91, line 42
Chunk Value. This allows an implementation to only change Chunk Value. This allows an implementation to only change
the first two bytes of the State Cookie parameter to become the first two bytes of the State Cookie parameter to become
a Cookie Echo Chunk. a Cookie Echo Chunk.
2.43.3 Solution description 2.43.3 Solution description
The new text adds a note that helps clearify that a Cookie Echo chunk The new text adds a note that helps clearify that a Cookie Echo chunk
is nothing more than the State Cookie parameter with only two bytes is nothing more than the State Cookie parameter with only two bytes
modified. modified.
2.44 Partial Chunks
2.44.1 Description of the problem
Section 6.10 of RFC2960 [6] uses the notion of 'partial chunks'
without defining it.
2.44.2 Text changes to the document
---------
Old text: (Section 6.10)
---------
Partial chunks MUST NOT be placed in an SCTP packet.
---------
New text: (Section 6.10)
---------
Partial chunks MUST NOT be placed in an SCTP packet. A partial
chunk is a chunk which is not completely contained in the SCTP
packet, i.e. the SCTP packet is too short to contain all the bytes
of the chunk as indicated by the chunk length.
2.44.3 Solution description
The new text adds a definition of 'partial chunks'.
3. Acknowledgments 3. Acknowledgments
The authors would like to thank the following people that have The authors would like to thank the following people that have
provided comments and input for this document: provided comments and input for this document:
Heinz Prantner, Jan Rovins, Renee Revis, Steven Furniss, Manoj Heinz Prantner, Jan Rovins, Renee Revis, Steven Furniss, Manoj
Solanki, Mike Turner, Jonathan Lee, Peter Butler, Laurent Glaude, Jon Solanki, Mike Turner, Jonathan Lee, Peter Butler, Laurent Glaude, Jon
Berger, Jon Grim, Dan Harrison, Sabina Torrente, Tomas Orti Martin, Berger, Jon Grim, Dan Harrison, Sabina Torrente, Tomas Orti Martin,
Jeff Waskow, Robby Benedyk, Steve Dimig, Joe Keller, Ben Robinson, Jeff Waskow, Robby Benedyk, Steve Dimig, Joe Keller, Ben Robinson,
David Lehmann, John Hebert, Sanjay Rao, Kausar Hassan, Melissa David Lehmann, John Hebert, Sanjay Rao, Kausar Hassan, Melissa
skipping to change at page 91, line 44 skipping to change at page 93, line 44
[2] Bradner, S., "Key words for use in RFCs to Indicate Requirement [2] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels", BCP 14, RFC 2119, March 1997. Levels", BCP 14, RFC 2119, March 1997.
[3] Caro, A., Shah, K., Iyengar, J., Amer, P. and R. Stewart, "SCTP [3] Caro, A., Shah, K., Iyengar, J., Amer, P. and R. Stewart, "SCTP
and TCP Variants: Congestion Control Under Multiple Losses", and TCP Variants: Congestion Control Under Multiple Losses",
Technical Report TR2003-04, Computer and Information Sciences Technical Report TR2003-04, Computer and Information Sciences
Department, University of Delaware, February 2003, Department, University of Delaware, February 2003,
<http://www.armandocaro.net/papers>. <http://www.armandocaro.net/papers>.
[4] Caro, A., Amer, P. and R. Stewart, "Retransmission Schemes for [4] Caro, A., Amer, P. and R. Stewart, "Retransmission Schemes for
End-to-end Failover with Transport Layer Multihoming", GLOBECOM End-to-end Failover with Transport Layer Multihoming",
2004, November 2004., March 2004, GLOBECOM, November 2004., <http://www.armandocaro.net/papers>.
<http://www.armandocaro.net/papers>.
[5] Handley, M., Padhye, J. and S. Floyd, "TCP Congestion Window [5] Handley, M., Padhye, J. and S. Floyd, "TCP Congestion Window
Validation", RFC 2861, June 2000. Validation", RFC 2861, June 2000.
[6] Stewart, R., Xie, Q., Morneault, K., Sharp, C., Schwarzbauer, [6] Stewart, R., Xie, Q., Morneault, K., Sharp, C., Schwarzbauer,
H., Taylor, T., Rytina, I., Kalla, M., Zhang, L. and V. Paxson, H., Taylor, T., Rytina, I., Kalla, M., Zhang, L. and V. Paxson,
"Stream Control Transmission Protocol", RFC 2960, October 2000. "Stream Control Transmission Protocol", RFC 2960, October 2000.
[7] Stone, J., Stewart, R. and D. Otis, "Stream Control Transmission [7] Stone, J., Stewart, R. and D. Otis, "Stream Control Transmission
Protocol (SCTP) Checksum Change", RFC 3309, September 2002. Protocol (SCTP) Checksum Change", RFC 3309, September 2002.
 End of changes. 

This html diff was produced by rfcdiff 1.23, available from http://www.levkowetz.com/ietf/tools/rfcdiff/