So in short clearing DF is near always a bug these days.
Exactly. And it is exactly why I said that this compromises all the pmtu
discvoery and why I would like people consulted SCTP designers before
doing this step. I cannot believe that new protocol was designed in this way.
It is indeed designed this way. http://www.ietf.org/rfc/rfc2960.txt
section 7.3 discusses the differences in SCTP PMTU discovery versus RFC
SCTP packets are filled with "chunks". Data records can be broken into
multiple chunks. Chunks are then "bundled" into the packet.
Once a TSN (Transmission Sequence Number) is assigned to a data fragment
(chunk) of a record, it can not be further fragmented. This should be a
rare occurance, but can happen when PMTU shrinks.
Now, that being said, there is an alternative that I originally alluded
to. That is, pre-fragment chunks down to the smallest possible MTU's
needs and then bundle the chunks up together to satisfy the current
PMTU. If the current PMTU shrinks, bundle in fewer chunks, down to the
smallest packet containing a single chunk. There is a little extra
processing at each end and each chunk within the packet eats up a chunk
header of 4 bytes.