[dpdk-dev] [PATCH v3 08/10] doc: describe Rx bytes counter behavior for enic

Hyong Youb Kim hyonkim at cisco.com
Fri Mar 9 01:52:54 CET 2018


On Thu, Mar 08, 2018 at 02:14:27PM -0800, Stephen Hemminger wrote:
> On Wed,  7 Mar 2018 18:47:00 -0800
> John Daley <johndale at cisco.com> wrote:
> 
> >      'catch-all' filters should be added last.
> >  
> > +- **Statistics**
> > +
> > +  - ``rx_good_bytes`` (ibytes) always includes VLAN header (4B) and CRC bytes (4B).
> > +  - When the NIC drops a packet because the Rx queue has no free buffers,
> > +    ``rx_good_bytes`` still increments by 4B if the packet is not VLAN tagged or
> > +    VLAN stripping is disabled, or by 8B if the packet is VLAN tagged and stripping
> > +    is enabled.
> 
> All drivers must provide consistent statistics!
> That means do NOT include CRC in the rx byte counts.
> Yes, several drivers in DPDK are already broken for this.
> 
> Otherwise there are cases like packets being forwarded from HW NIC to virtio and the counts
> differ and customers think data is lots.

Thanks for sharing this specific use case issue.

We are aware that our current counters are non-standard. Newer 100G
hardware models have fixed the problem (i.e. no CRC bytes, no
incrementing of bytes when no buffers). We plan to update the doc
again when we add these newer models to the supported hardware list.

As for older models, we will see if we can fix up stats in software..

-Hyong


More information about the dev mailing list