netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ben Greear <greearb@candelatech.com>
To: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Cc: NetDev <netdev@vger.kernel.org>
Subject: Re: Getting physical packet counts with LRO enabled with ixgbe?
Date: Wed, 23 Sep 2009 11:46:37 -0700	[thread overview]
Message-ID: <4ABA6D0D.8010200@candelatech.com> (raw)
In-Reply-To: <1253730766.2538.28.camel@localhost.localdomain>

On 09/23/2009 11:32 AM, Peter P Waskiewicz Jr wrote:
> On Wed, 2009-09-23 at 09:40 -0700, Ben Greear wrote:
>> I notice that with LRO enabled, the interface stats count the LRO'd pkts,
>> not the physical ones on the wire.
>>
>> I also tried using ethtool -S, but it seems those counters are the same.
>>
>> Is there any way to get the actual rx/tx packet count on the wire?
>>
>
> Depending on which device you're using ixgbe with, there are slightly
> different registers to get what you want.
>
> The only suggestion I have for you though is to refer to the datasheets
> for each device on our SourceForge site (e1000.sf.net).  Some of the
> relevant counters to look at are PRC64, PRC127, etc, and GPRC/GPTC.  For
> the per-queue stuff, you'll need to look at the TQSMR and RQSMR mapping
> registers.  Let me know if you need assistance in using these registers.

Thanks, I'll look at the data-sheet.

I don't care about per-queue stats at this time, just
over-all NIC stats.

>> Also, for the rx/tx bytes, I assume that isn't counting the protocol headers
>> for the physical pkts that have been merged into a single LRO packet.  Is
>> there any way to get the wire stats for bytes as well?
>
> The counters for per-byte are purely software-based, so if the packet is
> LRO'd, you can probably do some somewhat trivial math with the MTU to
> find the actual wire stats.  But we only compute what we pass to the
> stack, so it'd be the LRO'd packet.

That's a bummer.  I'm guessing you might get close to right on average with some
trivial math, but if someone is sending you pkts with size of 1000 and
your MTU is 1500, would there be any way to tell that the pkts were originally
1000 bytes instead of 1500?

Next time you guys re-compile your hardware, please consider adding byte counters :)

Thanks,
Ben

-- 
Ben Greear <greearb@candelatech.com>
Candela Technologies Inc  http://www.candelatech.com


  reply	other threads:[~2009-09-23 18:46 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-23 16:40 Getting physical packet counts with LRO enabled with ixgbe? Ben Greear
2009-09-23 18:32 ` Peter P Waskiewicz Jr
2009-09-23 18:46   ` Ben Greear [this message]
2009-09-23 18:50     ` Peter P Waskiewicz Jr
2009-09-23 18:56       ` Ben Greear
2009-09-23 19:03       ` Rick Jones
2009-09-25 21:45       ` Herbert Xu
2009-09-25 21:50         ` Ben Greear
2009-09-25 21:59           ` David Miller
2009-09-25 22:01             ` Herbert Xu
2009-09-25 22:12               ` Ben Greear
2009-09-25 22:40                 ` Peter P Waskiewicz Jr
2009-09-25 22:09           ` Herbert Xu
2009-09-25 21:56         ` Peter P Waskiewicz Jr
2009-09-25 22:10           ` Herbert Xu
2009-09-23 21:37   ` Ben Greear
2009-09-23 21:56     ` Ben Greear

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=4ABA6D0D.8010200@candelatech.com \
    --to=greearb@candelatech.com \
    --cc=netdev@vger.kernel.org \
    --cc=peter.p.waskiewicz.jr@intel.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;
as well as URLs for NNTP newsgroup(s).