lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 28 Apr 2014 13:19:29 -0700
From:	Tom Herbert <therbert@...gle.com>
To:	Florent Fourcot <florent.fourcot@...t-bretagne.fr>
Cc:	Linux Netdev List <netdev@...r.kernel.org>
Subject: Re: [PATCH 2/2] ipv6: Set flow label to skb_hash on transmit

On Mon, Apr 28, 2014 at 12:37 PM, Florent Fourcot
<florent.fourcot@...t-bretagne.fr> wrote:
>
>>>
>>> By enabling auto_flowlabels, we can have conflict between the flow label
>>> manager policy, and a randomly generated label.
>>>
>> What would be the consequences of such a conflict? Per RFC6437
>> stateless and stateful flow labels are selected from the same space,
>> the probability of collision between them is assumed to be non-zero.
>> We obviously can't make any assumptions on RX.
>>
>
> In the new RFC world, perhaps. But the flow label manager is older than
> that, and implement a strong policy on flow labels.
>
> Since we cannot know who is using it, and how there are using it, I'm
> against this new behaviour. Disabling the manager is ok for me, but not
> by default.
>
But the RFC defines the on-the-wire protocol and we can never assume
that a site only uses Linux. As you pointed out BSD already has this
functionality, and we cannot assume any stateful association in
received flow labels. If someone is implementing a strong policy for
flow labels (like dropping based on it), it would be incorrect.
RFC6437 is clear on this:

  "A node that sets the flow label MAY also take part in a flow state
   establishment method that results in assigning specific treatments to
   specific flows, possibly including signaling.  Any such method MUST
   NOT disturb nodes taking part in the stateless scenario just
   described.  Thus, any node that sets flow label values according to a
   stateful scheme MUST choose labels that conform to Section 3 of this
   specification.  Further details are not discussed in this document."

> As second point, the name of auto_flowlabel is in my opinion not a
> perfect choice if you set a label it only on tunnels. This is exactly
> the same name that a BSD sysctl, setting a random label on all sockets
> (TCP, UDP...). The flow label world is already hard enough to
> understand, thanks to various implementations.
>
This is not just for tunnels, but would apply to transports and
potentially obviates the need for a lot of UDP encapsulation (like
ESP/UDP). So it would appear that this is pretty much the same thing
as what the BSD implementation does and same sysctl name (a happy
coincidence). Looks like the default in BSD is on btw.

Thanks,
Tom

> Regards,
>
> --
> Florent.
> --
> To unsubscribe from this list: send the line "unsubscribe netdev" in
> the body of a message to majordomo@...r.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ