public inbox for netdev@vger.kernel.org
 help / color / mirror / Atom feed
From: Eric Dumazet <eric.dumazet@gmail.com>
To: Christoph Lameter <cl@linux-foundation.org>
Cc: netdev@vger.kernel.org, Stephen Hemminger <shemminger@vyatta.com>,
	David Miller <davem@davemloft.net>
Subject: Re: [PATCH] IP: Increment INADDRERRORS if routing for a packet is not successful
Date: Wed, 02 Jun 2010 18:28:08 +0200	[thread overview]
Message-ID: <1275496088.2725.202.camel@edumazet-laptop> (raw)
In-Reply-To: <alpine.DEB.2.00.1006021103410.30182@router.home>

Le mercredi 02 juin 2010 à 11:12 -0500, Christoph Lameter a écrit :
> On Wed, 2 Jun 2010, Eric Dumazet wrote:
> 
> > Le mercredi 02 juin 2010 à 10:27 -0500, Christoph Lameter a écrit :
> >
> > > Yes but they are not increment any counter. If packets are dropped because
> > > of the rp_filter setting interfering f.e. then the packets vanish without
> > > any accounting.
> > >
> >
> > But packets are vanishing either way.
> 
> Its important to know why drops occur (any drops for that matter, drops
> mean retransmit which means latency). The symptom here was that
> multicast traffic on secondary interfaces was not being forwarded to the application.
> The rp_filter just dropped them and there was no way to easily track down
> the issue for the people experiencing the problem.
> 

I just dont follow you.

Your patch has nothing to do with dropped packets because of rp_filter. 

You inserted a counter increment in a path that is not taken at all by
packet delivery.

Maybe I missed something really obvious with your patch ?

It should only matters for the admin doing following command :

ip route get 1.2.3.4 from 192.168.0.1 iif eth0

That is a probe, not a 'packet delivery', this is why I said
incrementing an official MIB counter was probably wrong.

> In 2.6.31 the rp_filter was fixed to work properly with multicast and now
> it considers multicast traffic to secondary interfaces to have the wrong
> reverse path even though the multicast subscription occurred on the
> secondary interface. So it drops multicast traffic. The rp_filter has to
> be switched off when using multiple NICs for multicast load balancing.
> 

Have you considered CONFIG_NET_DROP_MONITOR ?
This one catches all possible cases, a developper doesnt have to patch
his kernel to add SNMP counters everywhere...

config NET_DROP_MONITOR
        boolean "Network packet drop alerting service"
        depends on INET && EXPERIMENTAL && TRACEPOINTS
        ---help---
        This feature provides an alerting service to userspace in the
        event that packets are discarded in the network stack.  Alerts
        are broadcast via netlink socket to any listening user space
        process.  If you don't need network drop alerts, or if you are ok
        just checking the various proc files and other utilities for
        drop statistics, say N here.


> > > LINUX_MIB_INROUTEERRORS? Does it mean I can create a series of new
> > > counters that allow us to diagnose and distinguish all the different
> > > causes of packet loss? We would love to have that.
> > >
> >
> > For an example, you could take a look at commit 907cdda5205b
> > (tcp: Add SNMP counter for DEFER_ACCEPT)
> 
> Well these are all TCP counters. I would add IP and UDP counters?

Why not ?

But as David said, it should be motivated by real use case ;)




  parent reply	other threads:[~2010-06-02 16:28 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-06-01 21:13 [PATCH] IP: Increment INADDRERRORS if routing for a packet is not successful Christoph Lameter
2010-06-01 22:07 ` Eric Dumazet
2010-06-01 22:23   ` David Miller
2010-06-02 15:27   ` Christoph Lameter
2010-06-02 15:29     ` David Miller
2010-06-02 15:32     ` Eric Dumazet
2010-06-02 16:12       ` Christoph Lameter
2010-06-02 16:19         ` David Miller
2010-06-02 16:27           ` Christoph Lameter
2010-06-02 16:33             ` Eric Dumazet
2010-06-02 16:49               ` Christoph Lameter
2010-06-02 17:12                 ` David Miller
2010-06-02 17:19                   ` Eric Dumazet
2010-06-02 17:41                     ` Neil Horman
2010-06-02 17:31                   ` David Miller
2010-06-02 17:46                     ` Eric Dumazet
2010-06-02 18:01                       ` Christoph Lameter
2010-06-02 18:41                         ` Eric Dumazet
2010-06-02 18:59                           ` Christoph Lameter
2010-06-02 19:25                             ` Eric Dumazet
2010-06-02 20:11                               ` Christoph Lameter
2010-06-02 22:05                                 ` [PATCH net-next-2.6] ipv4: add LINUX_MIB_IPRPFILTER snmp counter Eric Dumazet
2010-06-03 10:19                                   ` David Miller
2010-06-03  3:50                     ` [PATCH] IP: Increment INADDRERRORS if routing for a packet is not successful Bill Fink
2010-06-03  3:54                       ` Eric Dumazet
2010-06-03  4:56                         ` Bill Fink
2010-06-02 16:28         ` Eric Dumazet [this message]
2010-06-02 16:35           ` Christoph Lameter

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1275496088.2725.202.camel@edumazet-laptop \
    --to=eric.dumazet@gmail.com \
    --cc=cl@linux-foundation.org \
    --cc=davem@davemloft.net \
    --cc=netdev@vger.kernel.org \
    --cc=shemminger@vyatta.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox