netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 0/9] net: fib_rules: Add flow label selector support
@ 2024-12-16 17:11 Ido Schimmel
  2024-12-16 17:11 ` [PATCH net-next 1/9] net: fib_rules: Add flow label selector attributes Ido Schimmel
                   ` (11 more replies)
  0 siblings, 12 replies; 18+ messages in thread
From: Ido Schimmel @ 2024-12-16 17:11 UTC (permalink / raw)
  To: netdev
  Cc: davem, kuba, pabeni, edumazet, dsahern, donald.hunter, horms,
	gnault, rostedt, mhiramat, mathieu.desnoyers, petrm, Ido Schimmel

In some deployments users would like to encode path information into
certain bits of the IPv6 flow label, the UDP source port and the DSCP
and use this information to route packets accordingly.

Redirecting traffic to a routing table based on the flow label is not
currently possible with Linux as FIB rules cannot match on it despite
the flow label being available in the IPv6 flow key.

This patchset extends FIB rules to match on the flow label with a mask.
Future patches will add mask attributes to L4 ports and DSCP matches.

Patches #1-#5 gradually extend FIB rules to match on the flow label.

Patches #6-#7 allow user space to specify a flow label in route get
requests. This is useful for both debugging and testing.

Patch #8 adjusts the fib6_table_lookup tracepoint to print the flow
label to the trace buffer for better observability.

Patch #9 extends the FIB rule selftest with flow label test cases while
utilizing the route get functionality from patch #6.

Ido Schimmel (9):
  net: fib_rules: Add flow label selector attributes
  ipv4: fib_rules: Reject flow label attributes
  ipv6: fib_rules: Add flow label support
  net: fib_rules: Enable flow label selector usage
  netlink: specs: Add FIB rule flow label attributes
  ipv6: Add flow label to route get requests
  netlink: specs: Add route flow label attribute
  tracing: ipv6: Add flow label to fib6_table_lookup tracepoint
  selftests: fib_rule_tests: Add flow label selector match tests

 Documentation/netlink/specs/rt_route.yaml     |  7 +++
 Documentation/netlink/specs/rt_rule.yaml      | 12 ++++
 include/trace/events/fib6.h                   |  8 ++-
 include/uapi/linux/fib_rules.h                |  2 +
 include/uapi/linux/rtnetlink.h                |  1 +
 net/core/fib_rules.c                          |  2 +
 net/ipv4/fib_rules.c                          |  6 ++
 net/ipv6/fib6_rules.c                         | 57 ++++++++++++++++++-
 net/ipv6/route.c                              | 20 ++++++-
 tools/testing/selftests/net/fib_rule_tests.sh | 31 ++++++++++
 10 files changed, 140 insertions(+), 6 deletions(-)

-- 
2.47.1


^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2024-12-19 15:10 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-16 17:11 [PATCH net-next 0/9] net: fib_rules: Add flow label selector support Ido Schimmel
2024-12-16 17:11 ` [PATCH net-next 1/9] net: fib_rules: Add flow label selector attributes Ido Schimmel
2024-12-16 17:11 ` [PATCH net-next 2/9] ipv4: fib_rules: Reject flow label attributes Ido Schimmel
2024-12-16 17:11 ` [PATCH net-next 3/9] ipv6: fib_rules: Add flow label support Ido Schimmel
2024-12-17 13:59   ` Guillaume Nault
2024-12-17 15:24     ` Ido Schimmel
2024-12-17 19:10       ` Guillaume Nault
2024-12-19  3:05   ` Jakub Kicinski
2024-12-19  8:17     ` Ido Schimmel
2024-12-16 17:11 ` [PATCH net-next 4/9] net: fib_rules: Enable flow label selector usage Ido Schimmel
2024-12-16 17:11 ` [PATCH net-next 5/9] netlink: specs: Add FIB rule flow label attributes Ido Schimmel
2024-12-16 17:11 ` [PATCH net-next 6/9] ipv6: Add flow label to route get requests Ido Schimmel
2024-12-16 17:11 ` [PATCH net-next 7/9] netlink: specs: Add route flow label attribute Ido Schimmel
2024-12-16 17:12 ` [PATCH net-next 8/9] tracing: ipv6: Add flow label to fib6_table_lookup tracepoint Ido Schimmel
2024-12-16 17:12 ` [PATCH net-next 9/9] selftests: fib_rule_tests: Add flow label selector match tests Ido Schimmel
2024-12-16 17:16 ` [PATCH net-next 0/9] net: fib_rules: Add flow label selector support Ido Schimmel
2024-12-17 14:00 ` Guillaume Nault
2024-12-19 15:10 ` patchwork-bot+netdevbpf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).