Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753147AbcKAQj1 (ORCPT ); Tue, 1 Nov 2016 12:39:27 -0400 Received: from mail-qk0-f194.google.com ([209.85.220.194]:32814 "EHLO mail-qk0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752611AbcKAQjZ (ORCPT ); Tue, 1 Nov 2016 12:39:25 -0400 MIME-Version: 1.0 In-Reply-To: References: <8760oa9egg.fsf@redhat.com> From: Tom Herbert Date: Tue, 1 Nov 2016 09:39:24 -0700 Message-ID: Subject: Re: [PATCH net-next 5/5] ipv6: Compute multipath hash for forwarded ICMP errors from offending packet To: Hannes Frederic Sowa Cc: Jakub Sitnicki , Linux Kernel Network Developers , LKML , "David S. Miller" , Alexey Kuznetsov , James Morris , Hideaki YOSHIFUJI , Patrick McHardy Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1394 Lines: 29 On Tue, Nov 1, 2016 at 9:25 AM, Hannes Frederic Sowa wrote: > On 31.10.2016 20:25, Tom Herbert wrote: >> The normal hash for TCP or UDP using ECMP is over > dstIP, srcPort, dstPort>. For an ICMP packet ECMP would most likely be >> done over . There really is no way to ensure >> that an ICMP packet will follow the same path as TCP or any other >> protocol. Fortunately, this is really isn't so terrible. The Internet >> has worked this way ever since routers started using ports as input to >> ECMP and that hasn't caused any major meltdown. > > The normal hash for forwarding is without srcPort or dstPort, so the > same as ICMP and especially also because of fragmentation problematic I > don't think a lot of routers use L4 port information for ECMP either. > I don't think we can define a "normal hash". There is no requirement that routers do ECMP a certain way, or that they do ECMP, or that for that matter that they even consistently route packets for the same flow. All of this is optimization, not something we can rely on operationally. So in the general case, regardless of anything we do in the stack, either ICMP packets will follow the same path as the flow are they won't. If they don't things still need to to work. So I still don't see what material benefit this patch gives us. Tom > Bye, > Hannes >