Subject: Transmission of DATA Chunks - question on CMT SCTP

From: <[email-masked]>
Date: Thu, 27 Jan 2011 13:50:57 +0200

Hi,

In RFC 4960 Section 6.1 it is stated that transmission of new data should await retransmissions.
That is:

   C) When the time comes for the sender to transmit, before sending new
      DATA chunks, the sender MUST first transmit any outstanding DATA
      chunks that are marked for retransmission (limited by the current
      cwnd).

In our SCTP implementation we have followed this rule literally on a per association basis. That is, we do not send new data on any path of the association, if there
is data marked for retransmission which is awaiting transmittal. But I also know of SCTP implementations where this rule is obeyed only on an path basis. I.e. data for retransmission
is somehow locked to a particular path and new data may flow out on other paths even if there is data waiting to be retransmitted on a per association basis.

I would like to know if anybody knows what is the chosen approach in the CMT setting in this respect  - ?

Also I am interesting in knowing  if there is any clear consensus on how the RFC 4690 should be interpreted in the non CMT case - ?

Thanks !

BR, Karen

*****************************************************************************************
Karen Egede Nielsen
Software Architect, Ph.D.

Tieto Denmark A/S
IP Solutions, Telecom & Media
Skanderborgvej 232, 8260 Viby J, DK-Denmark
Direct Phone / Mobile +45 25134336
E-mail: [email-masked]
*****************************************************************************************
www.tieto.com

---

From: Randy Stewart <[email-masked]>
Date: Fri, 28 Jan 2011 08:01:09 -0500

> Also I am interesting in knowing  if there is any clear consensus on how the RFC 4690 should be interpreted in the non CMT case - ?

I personally do not feel that you have to block sending new data to a path if some other
path has outstanding data marked for retransmission. As long as the sender
is obeying the cwnd for each path I see no issue here... 

I tend to like to lock a chunk to a path and only allow it to change to a different
path if a T3-rxt happens. I like to keep any FR set so that you FR to the 
destination it was sent to... this allows multiple-fr of the same chunk.. until 
you finally hit a T3 on a chunk and move it to another path...

CMT is a bit different but may benefit by the same rule.. I can't, off the top of my head, remember
how Jana and I implemented it in FreeBSD.. I guess I need to get a cup of coffee and go
take a look ;-)

R

R

> BR, Karen

-----
Randall Stewart
[email-masked]