]> git.baikalelectronics.ru Git - kernel.git/commit
sctp: do black hole detection in search complete state
authorXin Long <lucien.xin@gmail.com>
Thu, 24 Jun 2021 15:48:08 +0000 (11:48 -0400)
committerDavid S. Miller <davem@davemloft.net>
Thu, 24 Jun 2021 19:58:03 +0000 (12:58 -0700)
commit833f7957b7d6d9b50f3cea8ea8730649ec87e906
tree2fe112dfb28ca540d7fd0f58a6d8815c40e2f447
parent87893add4c8055167b9fb54125a113d09b1fffe3
sctp: do black hole detection in search complete state

Currently the PLPMUTD probe will stop for a long period (interval * 30)
after it enters search complete state. If there's a pmtu change on the
route path, it takes a long time to be aware if the ICMP TooBig packet
is lost or filtered.

As it says in rfc8899#section-4.3:

  "A DPLPMTUD method MUST NOT rely solely on this method."
  (ICMP PTB message).

This patch is to enable the other method for search complete state:

  "A PL can use the DPLPMTUD probing mechanism to periodically
   generate probe packets of the size of the current PLPMTU."

With this patch, the probe will continue with the current pmtu every
'interval' until the PMTU_RAISE_TIMER 'timeout', which we implement
by adding raise_count to raise the probe size when it counts to 30
and removing the SCTP_PL_COMPLETE check for PMTU_RAISE_TIMER.

Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/sctp/structs.h
net/sctp/transport.c