All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH net-next 0/5] Route ICMPv6 errors with the flow when ECMP in use
@ 2016-10-24  9:28 Jakub Sitnicki
  2016-10-24  9:28 ` [PATCH net-next 1/5] ipv6: Fold rt6_info_hash_nhsfn() into its only caller Jakub Sitnicki
                   ` (5 more replies)
  0 siblings, 6 replies; 32+ messages in thread
From: Jakub Sitnicki @ 2016-10-24  9:28 UTC (permalink / raw)
  To: netdev; +Cc: linux-kernel

The motivation for this series is to route ICMPv6 error messages
together with the flow they belong to when multipath routing is in
use. It intends to bring the ECMP routing in IPv6 stack on par with
IPv4.

This enables the use of tools that rely on ICMP error messages such as
traceroute and makes PMTU discovery work both ways. However, for it to
work IPv6 flow labels have to be same in both directions
(i.e. reflected) or need to be chosen in a manner that ensures that
the flow going in the opposite direction would actually be routed to a
given path.

Changes have been tested in a virtual setup with a topology as below:

                  Re1 --- Hs1
                 /
 Hc --- Ri --- Rc
                 \
                  Re1 --- Hs2

 Hc  - client host
 HsX - server host
 Rc  - core router
 ReX - edge router
 Ri  - intermediate router

To test the changes, traceroute in UDP mode to the client host, with
flow label set, has been run from one of the server hosts. Full test
is available at [1].

-Jakub

[1] https://github.com/jsitnicki/tools/blob/master/net/tests/ecmp/test-ecmp-icmpv6-error-routing.sh


Jakub Sitnicki (5):
  ipv6: Fold rt6_info_hash_nhsfn() into its only caller
  net: Extend struct flowi6 with multipath hash
  ipv6: Use multipath hash from flow info if available
  ipv6: Compute multipath hash for sent ICMP errors from offending
    packet
  ipv6: Compute multipath hash for forwarded ICMP errors from offending
    packet

 include/linux/icmpv6.h |  2 ++
 include/net/flow.h     |  1 +
 net/ipv6/icmp.c        | 21 +++++++++++++++++++++
 net/ipv6/route.c       | 40 +++++++++++++++++++++++++++++-----------
 4 files changed, 53 insertions(+), 11 deletions(-)

-- 
2.7.4

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

end of thread, other threads:[~2016-11-01 16:59 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-10-24  9:28 [PATCH net-next 0/5] Route ICMPv6 errors with the flow when ECMP in use Jakub Sitnicki
2016-10-24  9:28 ` [PATCH net-next 1/5] ipv6: Fold rt6_info_hash_nhsfn() into its only caller Jakub Sitnicki
2016-10-24  9:28 ` [PATCH net-next 2/5] net: Extend struct flowi6 with multipath hash Jakub Sitnicki
2016-10-24  9:39   ` Hannes Frederic Sowa
2016-10-24  9:28 ` [PATCH net-next 3/5] ipv6: Use multipath hash from flow info if available Jakub Sitnicki
2016-10-24  9:40   ` Hannes Frederic Sowa
2016-10-24  9:28 ` [PATCH net-next 4/5] ipv6: Compute multipath hash for sent ICMP errors from offending packet Jakub Sitnicki
2016-10-24  9:40   ` Hannes Frederic Sowa
2016-10-27 15:24   ` David Miller
2016-10-27 22:00     ` Jakub Sitnicki
2016-10-24  9:28 ` [PATCH net-next 5/5] ipv6: Compute multipath hash for forwarded " Jakub Sitnicki
2016-10-24  9:43   ` Hannes Frederic Sowa
2016-10-27 15:25   ` David Miller
2016-10-27 22:10     ` Jakub Sitnicki
2016-10-27 22:35   ` Tom Herbert
2016-10-28  8:32     ` Jakub Sitnicki
2016-10-28 14:25       ` Tom Herbert
2016-10-30 13:03         ` Jakub Sitnicki
2016-10-31 19:15           ` David Miller
2016-11-01 15:13             ` Jakub Sitnicki
2016-11-01 15:35               ` David Miller
2016-11-01 16:26                 ` Jakub Sitnicki
2016-11-01 16:27                 ` Hannes Frederic Sowa
2016-11-01 16:39                   ` David Miller
2016-11-01 16:59                     ` Hannes Frederic Sowa
2016-10-31 19:25           ` Tom Herbert
2016-11-01 15:43             ` Jakub Sitnicki
2016-11-01 16:25             ` Hannes Frederic Sowa
2016-11-01 16:39               ` Tom Herbert
2016-11-01 16:54                 ` Hannes Frederic Sowa
2016-10-27 15:23 ` [PATCH net-next 0/5] Route ICMPv6 errors with the flow when ECMP in use David Miller
2016-10-27 21:54   ` Hannes Frederic Sowa

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.