]> git.baikalelectronics.ru Git - kernel.git/commit
flow_dissector: Parse batman-adv unicast headers
authorSven Eckelmann <sven.eckelmann@openmesh.com>
Thu, 21 Dec 2017 09:17:42 +0000 (10:17 +0100)
committerDavid S. Miller <davem@davemloft.net>
Thu, 21 Dec 2017 20:35:53 +0000 (15:35 -0500)
commit0a7c145931c33eaa0515951863f2b9da847ffc22
tree116fcc5608db6f00e87f3ff3894f3b5ad1798794
parentbffb457f846b0c41ebe9058e511209e6c1586ec6
flow_dissector: Parse batman-adv unicast headers

The batman-adv unicast packets contain a full layer 2 frame in encapsulated
form. The flow dissector must therefore be able to parse the batman-adv
unicast header to reach the layer 2+3 information.

  +--------------------+
  | ip(v6)hdr          |
  +--------------------+
  | inner ethhdr       |
  +--------------------+
  | batadv unicast hdr |
  +--------------------+
  | outer ethhdr       |
  +--------------------+

The obtained information from the upper layer can then be used by RPS to
schedule the processing on separate cores. This allows better distribution
of multiple flows from the same neighbor to different cores.

Signed-off-by: Sven Eckelmann <sven.eckelmann@openmesh.com>
Reviewed-by: Jiri Pirko <jiri@mellanox.com>
Acked-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/flow_dissector.c