Thread (32 messages) 32 messages, 4 authors, 2020-10-26

Re: [PATCHv4 net-next 16/16] sctp: enable udp tunneling socks

From: Michael Tuexen <hidden>
Date: 2020-10-22 11:38:50
Also in: linux-sctp

`On 22. Oct 2020, at 05:12, Xin Long [off-list ref] wrote:
On Wed, Oct 21, 2020 at 5:13 PM Michael Tuexen [off-list ref] wrote:
quoted
quoted
On 21. Oct 2020, at 06:16, Xin Long [off-list ref] wrote:

On Wed, Oct 21, 2020 at 5:23 AM Marcelo Ricardo Leitner
[off-list ref] wrote:
quoted
On Tue, Oct 20, 2020 at 11:15:26PM +0200, Michael Tuexen wrote:
quoted
quoted
On 20. Oct 2020, at 23:11, Marcelo Ricardo Leitner [off-list ref] wrote:

On Tue, Oct 20, 2020 at 05:12:06PM +0800, Xin Long wrote:
quoted
On Tue, Oct 20, 2020 at 6:15 AM Marcelo Ricardo Leitner
[off-list ref] wrote:
quoted
On Mon, Oct 19, 2020 at 08:25:33PM +0800, Xin Long wrote:
quoted
--- a/Documentation/networking/ip-sysctl.rst
+++ b/Documentation/networking/ip-sysctl.rst
@@ -2640,6 +2640,12 @@ addr_scope_policy - INTEGER

   Default: 1

+udp_port - INTEGER
Need to be more verbose here, and also mention the RFC.
quoted
+     The listening port for the local UDP tunneling sock.
     , shared by all applications in the same net namespace.
quoted
+     UDP encapsulation will be disabled when it's set to 0.
     "Note, however, that setting just this is not enough to actually
     use it. ..."
When it's a client, yes,  but when it's a server, the encap_port can
be got from the incoming packet.
quoted
quoted
+
+     Default: 9899
+
encap_port - INTEGER
   The default remote UDP encapsalution port.
   When UDP tunneling is enabled, this global value is used to set
When is it enabled, which conditions are needed? Maybe it can be
explained only in the one above.
Thanks!
pls check if this one will be better:
It is. Verbose enough now, thx.
(one other comment below)
quoted
udp_port - INTEGER

The listening port for the local UDP tunneling sock.

This UDP sock is used for processing the incoming UDP-encapsulated
SCTP packets (from RFC6951), and shared by all applications in the
same net namespace. This UDP sock will be closed when the value is
set to 0.

The value will also be used to set the src port of the UDP header
for the outgoing UDP-encapsulated SCTP packets. For the dest port,
please refer to 'encap_port' below.

Default: 9899
I'm now wondering if this is the right default. I mean, it is the
standard port for it, yes, but at the same time, it means loading SCTP
module will steal/use that UDP port on all net namespaces and can lead
to conflicts with other apps. A more conservative approach here is to
document the standard port, but set the default to 0 and require the
user to set it in if it is expected to be used.

Did FreeBSD enable it by default too?
No. The default is 0, which means that the encapsulation is turned off.
Setting this sysctl variable to a non-zero value enables the UDP tunneling
with the given port.
Thanks Michael.
Xin, then we should change this default value (and update the
documentation above accordingly, to still have the standard port #
readily available in there).
OK, I misunderstood the RFC.
Does that RFC mandate that the feature is on by default? Can you point me to
that text?
Not really.

I was thinking that by leaving it to 9899 by default users don't need to
know the port when want to use it, and yet I didn't want to add another
sysctl member. :D
OK. Thanks for letting me know.

Best regards
Michael
quoted
Best regards
Michael
quoted
I will remove the call to sctp_udp_sock_start/stop() from
sctp_ctrlsock_init/exit(), and set the udp_port as 0 by default.

Thanks.
  

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help