DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] Does I210 NIC support Flow director filters?
@ 2015-01-14  4:21 Kamraan Nasim
  2015-01-14  7:42 ` Zhang, Helin
  2015-01-14 10:27 ` Bruce Richardson
  0 siblings, 2 replies; 9+ messages in thread
From: Kamraan Nasim @ 2015-01-14  4:21 UTC (permalink / raw)
  To: dev; +Cc: Ean Houts, Jun Du

Hello,

I've been using DPDK fdir filter APIs for 82599 NIC(Niantic) and they work
very well.

Was wondering if I these could also be used for I210, 1Gbps NICs?

The other option is to use 5tuple filters(rte_eth_dev_add_5tuple_filter
<http://dpdk.org/doc/api/rte__ethdev_8h.html#aaa28adafa65a4f47d4aeceaf1b08381b>),
however these do not support IPv6 yet.


Have people in the community had any luck with configuring L3/L4 hardware
filters for the I210 NIC?

Thanks,
Kam

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

* Re: [dpdk-dev] Does I210 NIC support Flow director filters?
  2015-01-14  4:21 [dpdk-dev] Does I210 NIC support Flow director filters? Kamraan Nasim
@ 2015-01-14  7:42 ` Zhang, Helin
  2015-01-14 10:27 ` Bruce Richardson
  1 sibling, 0 replies; 9+ messages in thread
From: Zhang, Helin @ 2015-01-14  7:42 UTC (permalink / raw)
  To: Kamraan Nasim, dev; +Cc: Ean Houts, Jun Du

FD should works on all supported NICs, though might not all FD features have been implemented. You can see some reworks are ongoing from the mail list.

Regards,
Helin

> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Kamraan Nasim
> Sent: Wednesday, January 14, 2015 12:21 PM
> To: dev@dpdk.org
> Cc: Ean Houts; Jun Du
> Subject: [dpdk-dev] Does I210 NIC support Flow director filters?
> 
> Hello,
> 
> I've been using DPDK fdir filter APIs for 82599 NIC(Niantic) and they work very
> well.
> 
> Was wondering if I these could also be used for I210, 1Gbps NICs?
> 
> The other option is to use 5tuple filters(rte_eth_dev_add_5tuple_filter
> <http://dpdk.org/doc/api/rte__ethdev_8h.html#aaa28adafa65a4f47d4aeceaf1
> b08381b>),
> however these do not support IPv6 yet.
> 
> 
> Have people in the community had any luck with configuring L3/L4 hardware
> filters for the I210 NIC?
> 
> Thanks,
> Kam

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

* Re: [dpdk-dev] Does I210 NIC support Flow director filters?
  2015-01-14  4:21 [dpdk-dev] Does I210 NIC support Flow director filters? Kamraan Nasim
  2015-01-14  7:42 ` Zhang, Helin
@ 2015-01-14 10:27 ` Bruce Richardson
  2015-01-14 21:59   ` Kamraan Nasim
  1 sibling, 1 reply; 9+ messages in thread
From: Bruce Richardson @ 2015-01-14 10:27 UTC (permalink / raw)
  To: Kamraan Nasim; +Cc: dev, Ean Houts, Jun Du

On Tue, Jan 13, 2015 at 11:21:08PM -0500, Kamraan Nasim wrote:
> Hello,
> 
> I've been using DPDK fdir filter APIs for 82599 NIC(Niantic) and they work
> very well.
> 
> Was wondering if I these could also be used for I210, 1Gbps NICs?
> 
> The other option is to use 5tuple filters(rte_eth_dev_add_5tuple_filter
> <http://dpdk.org/doc/api/rte__ethdev_8h.html#aaa28adafa65a4f47d4aeceaf1b08381b>),
> however these do not support IPv6 yet.
> 
> 
> Have people in the community had any luck with configuring L3/L4 hardware
> filters for the I210 NIC?
> 
> Thanks,
> Kam

Flow director filters are not supported for 1G NICs. Sorry.

/Bruce

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

* Re: [dpdk-dev] Does I210 NIC support Flow director filters?
  2015-01-14 10:27 ` Bruce Richardson
@ 2015-01-14 21:59   ` Kamraan Nasim
  2015-01-15 14:44     ` Bruce Richardson
  0 siblings, 1 reply; 9+ messages in thread
From: Kamraan Nasim @ 2015-01-14 21:59 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: dev, Ean Houts, Jun Du

Many thanks Helin and Bruce :)

Now if 1Gb NICs don't support fdir filters then im wondering how would we
count the number of packets matching a filter.

Regular 5tuple filters don't have any stats similar to "fdirmatch"(in the
rte_eth_stats <http://dpdk.org/doc/api/structrte__eth__stats.html> struct).
One way I can think of is to use regular ibytes/ipackets stats for the
queue to which the packets are being redirected in the 5tuple filter but
this seems a bit hacky + there is no way to distinguish this packet
throughput from the regular traffic that the NIC is forwarding to that
specific queue.

Is there a way to EXCLUSIVELY bind a 5tuple filter to an RSS queue so that
only matched traffic is forwarded there?


--Kam

On Wed, Jan 14, 2015 at 5:27 AM, Bruce Richardson <
bruce.richardson@intel.com> wrote:

> On Tue, Jan 13, 2015 at 11:21:08PM -0500, Kamraan Nasim wrote:
> > Hello,
> >
> > I've been using DPDK fdir filter APIs for 82599 NIC(Niantic) and they
> work
> > very well.
> >
> > Was wondering if I these could also be used for I210, 1Gbps NICs?
> >
> > The other option is to use 5tuple filters(rte_eth_dev_add_5tuple_filter
> > <
> http://dpdk.org/doc/api/rte__ethdev_8h.html#aaa28adafa65a4f47d4aeceaf1b08381b
> >),
> > however these do not support IPv6 yet.
> >
> >
> > Have people in the community had any luck with configuring L3/L4 hardware
> > filters for the I210 NIC?
> >
> > Thanks,
> > Kam
>
> Flow director filters are not supported for 1G NICs. Sorry.
>
> /Bruce
>

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

* Re: [dpdk-dev] Does I210 NIC support Flow director filters?
  2015-01-14 21:59   ` Kamraan Nasim
@ 2015-01-15 14:44     ` Bruce Richardson
  2015-01-16  1:06       ` Kamraan Nasim
  0 siblings, 1 reply; 9+ messages in thread
From: Bruce Richardson @ 2015-01-15 14:44 UTC (permalink / raw)
  To: Kamraan Nasim; +Cc: dev, Ean Houts, Jun Du

On Wed, Jan 14, 2015 at 04:59:17PM -0500, Kamraan Nasim wrote:
> Many thanks Helin and Bruce :)
> 
> Now if 1Gb NICs don't support fdir filters then im wondering how would we
> count the number of packets matching a filter.
> 
> Regular 5tuple filters don't have any stats similar to "fdirmatch"(in the
> rte_eth_stats <http://dpdk.org/doc/api/structrte__eth__stats.html> struct).
> One way I can think of is to use regular ibytes/ipackets stats for the
> queue to which the packets are being redirected in the 5tuple filter but
> this seems a bit hacky + there is no way to distinguish this packet
> throughput from the regular traffic that the NIC is forwarding to that
> specific queue.
> 
> Is there a way to EXCLUSIVELY bind a 5tuple filter to an RSS queue so that
> only matched traffic is forwarded there?
> 
> 
> --Kam
> 

What you can do is use a 5-tuple filter to send traffic to a queue. What you
can also do is update the RSS RETA table so that traffic doesn't get sent
to that queue via RSS. Is that what you are asking?

/Bruce

> On Wed, Jan 14, 2015 at 5:27 AM, Bruce Richardson <
> bruce.richardson@intel.com> wrote:
> 
> > On Tue, Jan 13, 2015 at 11:21:08PM -0500, Kamraan Nasim wrote:
> > > Hello,
> > >
> > > I've been using DPDK fdir filter APIs for 82599 NIC(Niantic) and they
> > work
> > > very well.
> > >
> > > Was wondering if I these could also be used for I210, 1Gbps NICs?
> > >
> > > The other option is to use 5tuple filters(rte_eth_dev_add_5tuple_filter
> > > <
> > http://dpdk.org/doc/api/rte__ethdev_8h.html#aaa28adafa65a4f47d4aeceaf1b08381b
> > >),
> > > however these do not support IPv6 yet.
> > >
> > >
> > > Have people in the community had any luck with configuring L3/L4 hardware
> > > filters for the I210 NIC?
> > >
> > > Thanks,
> > > Kam
> >
> > Flow director filters are not supported for 1G NICs. Sorry.
> >
> > /Bruce
> >

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

* Re: [dpdk-dev] Does I210 NIC support Flow director filters?
  2015-01-15 14:44     ` Bruce Richardson
@ 2015-01-16  1:06       ` Kamraan Nasim
  2015-01-16 10:56         ` Bruce Richardson
  0 siblings, 1 reply; 9+ messages in thread
From: Kamraan Nasim @ 2015-01-16  1:06 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: dev, Ean Houts, Jun Du

>>> update the RSS RETA table so that traffic doesn't get sent
>> to that queue via RSS. Is that what you are asking?

Thanks Bruce, that's exactly it.  Basically each filter will forward
traffic to a unique RSS queue which can allow me to calculate filter match
statistics for that queue(or filter). At that point I would like to drop
the filtered packet. Is there any way to drop the filtered packet in the
RSS queue without doing a rte_eth_rx_burst() and dropping it then?

--Kam

On Thu, Jan 15, 2015 at 9:44 AM, Bruce Richardson <
bruce.richardson@intel.com> wrote:

> On Wed, Jan 14, 2015 at 04:59:17PM -0500, Kamraan Nasim wrote:
> > Many thanks Helin and Bruce :)
> >
> > Now if 1Gb NICs don't support fdir filters then im wondering how would we
> > count the number of packets matching a filter.
> >
> > Regular 5tuple filters don't have any stats similar to "fdirmatch"(in the
> > rte_eth_stats <http://dpdk.org/doc/api/structrte__eth__stats.html>
> struct).
> > One way I can think of is to use regular ibytes/ipackets stats for the
> > queue to which the packets are being redirected in the 5tuple filter but
> > this seems a bit hacky + there is no way to distinguish this packet
> > throughput from the regular traffic that the NIC is forwarding to that
> > specific queue.
> >
> > Is there a way to EXCLUSIVELY bind a 5tuple filter to an RSS queue so
> that
> > only matched traffic is forwarded there?
> >
> >
> > --Kam
> >
>
> What you can do is use a 5-tuple filter to send traffic to a queue. What
> you
> can also do is update the RSS RETA table so that traffic doesn't get sent
> to that queue via RSS. Is that what you are asking?
>
> /Bruce
>
> > On Wed, Jan 14, 2015 at 5:27 AM, Bruce Richardson <
> > bruce.richardson@intel.com> wrote:
> >
> > > On Tue, Jan 13, 2015 at 11:21:08PM -0500, Kamraan Nasim wrote:
> > > > Hello,
> > > >
> > > > I've been using DPDK fdir filter APIs for 82599 NIC(Niantic) and they
> > > work
> > > > very well.
> > > >
> > > > Was wondering if I these could also be used for I210, 1Gbps NICs?
> > > >
> > > > The other option is to use 5tuple
> filters(rte_eth_dev_add_5tuple_filter
> > > > <
> > >
> http://dpdk.org/doc/api/rte__ethdev_8h.html#aaa28adafa65a4f47d4aeceaf1b08381b
> > > >),
> > > > however these do not support IPv6 yet.
> > > >
> > > >
> > > > Have people in the community had any luck with configuring L3/L4
> hardware
> > > > filters for the I210 NIC?
> > > >
> > > > Thanks,
> > > > Kam
> > >
> > > Flow director filters are not supported for 1G NICs. Sorry.
> > >
> > > /Bruce
> > >
>

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

* Re: [dpdk-dev] Does I210 NIC support Flow director filters?
  2015-01-16  1:06       ` Kamraan Nasim
@ 2015-01-16 10:56         ` Bruce Richardson
  2015-01-16 16:42           ` Kamraan Nasim
  0 siblings, 1 reply; 9+ messages in thread
From: Bruce Richardson @ 2015-01-16 10:56 UTC (permalink / raw)
  To: Kamraan Nasim; +Cc: dev, Ean Houts, Jun Du

On Thu, Jan 15, 2015 at 08:06:52PM -0500, Kamraan Nasim wrote:
> >>> update the RSS RETA table so that traffic doesn't get sent
> >> to that queue via RSS. Is that what you are asking?
> 
> Thanks Bruce, that's exactly it.  Basically each filter will forward
> traffic to a unique RSS queue which can allow me to calculate filter match
> statistics for that queue(or filter). At that point I would like to drop
> the filtered packet. Is there any way to drop the filtered packet in the
> RSS queue without doing a rte_eth_rx_burst() and dropping it then?
> 
> --Kam
>
I don't believe there is any other way to drop them from the queue other than
RX and drop. It's not the most efficient way to do so (since you have to allocate,
fill and free an mbuf), but it's the only way that an app can do so without
adding new functions to the driver(s).

/Bruce

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

* Re: [dpdk-dev] Does I210 NIC support Flow director filters?
  2015-01-16 10:56         ` Bruce Richardson
@ 2015-01-16 16:42           ` Kamraan Nasim
  2015-01-16 17:31             ` Bruce Richardson
  0 siblings, 1 reply; 9+ messages in thread
From: Kamraan Nasim @ 2015-01-16 16:42 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: dev, Ean Houts, Jun Du

Hi Bruce,
Perhaps this can be worked around by setting  rx_drop_en in the
rte_eth_rxconf <http://dpdk.org/doc/api/structrte__eth__rxconf.html> and
using small values for number of rx descripters so that the NIC drops when
it is out of RX descriptors for that queue?

As long as NIC can still provide q_ipackets/q_errors then this might be
faster than doing a RX in software and drop.

--Kam

On Fri, Jan 16, 2015 at 5:56 AM, Bruce Richardson <
bruce.richardson@intel.com> wrote:

> On Thu, Jan 15, 2015 at 08:06:52PM -0500, Kamraan Nasim wrote:
> > >>> update the RSS RETA table so that traffic doesn't get sent
> > >> to that queue via RSS. Is that what you are asking?
> >
> > Thanks Bruce, that's exactly it.  Basically each filter will forward
> > traffic to a unique RSS queue which can allow me to calculate filter
> match
> > statistics for that queue(or filter). At that point I would like to drop
> > the filtered packet. Is there any way to drop the filtered packet in the
> > RSS queue without doing a rte_eth_rx_burst() and dropping it then?
> >
> > --Kam
> >
> I don't believe there is any other way to drop them from the queue other
> than
> RX and drop. It's not the most efficient way to do so (since you have to
> allocate,
> fill and free an mbuf), but it's the only way that an app can do so without
> adding new functions to the driver(s).
>
> /Bruce
>

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

* Re: [dpdk-dev] Does I210 NIC support Flow director filters?
  2015-01-16 16:42           ` Kamraan Nasim
@ 2015-01-16 17:31             ` Bruce Richardson
  0 siblings, 0 replies; 9+ messages in thread
From: Bruce Richardson @ 2015-01-16 17:31 UTC (permalink / raw)
  To: Kamraan Nasim; +Cc: dev, Ean Houts, Jun Du

On Fri, Jan 16, 2015 at 11:42:42AM -0500, Kamraan Nasim wrote:
> Hi Bruce,
> Perhaps this can be worked around by setting  rx_drop_en in the
> rte_eth_rxconf <http://dpdk.org/doc/api/structrte__eth__rxconf.html> and
> using small values for number of rx descripters so that the NIC drops when
> it is out of RX descriptors for that queue?
> 
> As long as NIC can still provide q_ipackets/q_errors then this might be
> faster than doing a RX in software and drop.
> 
> --Kam

Yes, so long as packets dropped for that queue are counted against that queue,
then yes.

/Bruce

> 
> On Fri, Jan 16, 2015 at 5:56 AM, Bruce Richardson <
> bruce.richardson@intel.com> wrote:
> 
> > On Thu, Jan 15, 2015 at 08:06:52PM -0500, Kamraan Nasim wrote:
> > > >>> update the RSS RETA table so that traffic doesn't get sent
> > > >> to that queue via RSS. Is that what you are asking?
> > >
> > > Thanks Bruce, that's exactly it.  Basically each filter will forward
> > > traffic to a unique RSS queue which can allow me to calculate filter
> > match
> > > statistics for that queue(or filter). At that point I would like to drop
> > > the filtered packet. Is there any way to drop the filtered packet in the
> > > RSS queue without doing a rte_eth_rx_burst() and dropping it then?
> > >
> > > --Kam
> > >
> > I don't believe there is any other way to drop them from the queue other
> > than
> > RX and drop. It's not the most efficient way to do so (since you have to
> > allocate,
> > fill and free an mbuf), but it's the only way that an app can do so without
> > adding new functions to the driver(s).
> >
> > /Bruce
> >

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

end of thread, other threads:[~2015-01-16 17:32 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-01-14  4:21 [dpdk-dev] Does I210 NIC support Flow director filters? Kamraan Nasim
2015-01-14  7:42 ` Zhang, Helin
2015-01-14 10:27 ` Bruce Richardson
2015-01-14 21:59   ` Kamraan Nasim
2015-01-15 14:44     ` Bruce Richardson
2015-01-16  1:06       ` Kamraan Nasim
2015-01-16 10:56         ` Bruce Richardson
2015-01-16 16:42           ` Kamraan Nasim
2015-01-16 17:31             ` Bruce Richardson

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).