DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] Adding multiple fields as key in ip_pipeline application
@ 2017-04-28  9:46 Nidhia Varghese
  2017-04-28 13:54 ` [dpdk-dev] [dpdk-users] " Singh, Jasvinder
  0 siblings, 1 reply; 4+ messages in thread
From: Nidhia Varghese @ 2017-04-28  9:46 UTC (permalink / raw)
  To: dev, users

Hi,

I am developing an application in which I need to use both incoming port
and vlan as the key for the flow table. Port field is available at 24th
byte of mbuf and vlan(single tagged) will be at 268th byte (128 mbuf + 128
headroom + 12 ethernet header).
How can I represent this in my config file in the src_mask field?
Is there any way to take these fields separately and keep in headroom and
then use them to calculate hash for lookup?

Thanks for your reply and help.


Regards,
Nidhia Varghese

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

* Re: [dpdk-dev] [dpdk-users] Adding multiple fields as key in ip_pipeline application
  2017-04-28  9:46 [dpdk-dev] Adding multiple fields as key in ip_pipeline application Nidhia Varghese
@ 2017-04-28 13:54 ` Singh, Jasvinder
  2017-05-02  9:28   ` Nidhia Varghese
  0 siblings, 1 reply; 4+ messages in thread
From: Singh, Jasvinder @ 2017-04-28 13:54 UTC (permalink / raw)
  To: Nidhia Varghese, dev, users

Hi Nidhia,


I am developing an application in which I need to use both incoming port and vlan as the key for the flow table. Port field is available at 24th byte of mbuf and vlan(single tagged) will be at 268th byte (128 mbuf + 128 headroom + 12 ethernet header).
How can I represent this in my config file in the src_mask field?
Is there any way to take these fields separately and keep in headroom and then use them to calculate hash for lookup?


[Jasvinder] - If you look at edge_router_upstream.cfg,  pass-through pipeline have mask and offset defined for extracting the key from the packet header and storing in the headroom at the offset 128. This key is used in flow_classification pipeline to classify the flows. You can follow similar approach by using pass-through pipeline doing that action at the input port. For that, define mask (00000000FFFFFFFF)  and offset fields for extracting the vlan-tag from the packet in pass-through pipeline and store at the desired offset in the headroom and  prepend the vlan tag  stored in the metadata with port id read from mbuf.  In flow-classification pipeline, you can specify the headroom offset and mask to read the final key (portid+vlan tag) stored in the packet-metadata for classification. 



Thanks for your reply and help.


Regards,
Nidhia Varghese

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

* Re: [dpdk-dev] [dpdk-users] Adding multiple fields as key in ip_pipeline application
  2017-04-28 13:54 ` [dpdk-dev] [dpdk-users] " Singh, Jasvinder
@ 2017-05-02  9:28   ` Nidhia Varghese
  2017-05-02  9:59     ` Singh, Jasvinder
  0 siblings, 1 reply; 4+ messages in thread
From: Nidhia Varghese @ 2017-05-02  9:28 UTC (permalink / raw)
  To: Singh, Jasvinder; +Cc: dev, users

Hi,

Can we do the append/prepend (of the port id with vlan id) through config
file?

Thanks,
Nidhia

On Fri, Apr 28, 2017 at 7:24 PM, Singh, Jasvinder <jasvinder.singh@intel.com
> wrote:

> Hi Nidhia,
>
>
> I am developing an application in which I need to use both incoming port
> and vlan as the key for the flow table. Port field is available at 24th
> byte of mbuf and vlan(single tagged) will be at 268th byte (128 mbuf + 128
> headroom + 12 ethernet header).
> How can I represent this in my config file in the src_mask field?
> Is there any way to take these fields separately and keep in headroom and
> then use them to calculate hash for lookup?
>
>
> [Jasvinder] - If you look at edge_router_upstream.cfg,  pass-through
> pipeline have mask and offset defined for extracting the key from the
> packet header and storing in the headroom at the offset 128. This key is
> used in flow_classification pipeline to classify the flows. You can follow
> similar approach by using pass-through pipeline doing that action at the
> input port. For that, define mask (00000000FFFFFFFF)  and offset fields for
> extracting the vlan-tag from the packet in pass-through pipeline and store
> at the desired offset in the headroom and  prepend the vlan tag  stored in
> the metadata with port id read from mbuf.  In flow-classification pipeline,
> you can specify the headroom offset and mask to read the final key
> (portid+vlan tag) stored in the packet-metadata for classification.
>
>
>
> Thanks for your reply and help.
>
>
> Regards,
> Nidhia Varghese
>



-- 

Regards,
Nidhia Varghese

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

* Re: [dpdk-dev] [dpdk-users] Adding multiple fields as key in ip_pipeline application
  2017-05-02  9:28   ` Nidhia Varghese
@ 2017-05-02  9:59     ` Singh, Jasvinder
  0 siblings, 0 replies; 4+ messages in thread
From: Singh, Jasvinder @ 2017-05-02  9:59 UTC (permalink / raw)
  To: Nidhia Varghese; +Cc: dev, users


From: Nidhia Varghese [mailto:nidhiavarghese93@gmail.com]
Sent: Tuesday, May 2, 2017 10:29 AM
To: Singh, Jasvinder <jasvinder.singh@intel.com>
Cc: dev@dpdk.org; users@dpdk.org
Subject: Re: [dpdk-users] Adding multiple fields as key in ip_pipeline application

Hi,

Can we do the append/prepend (of the port id with vlan id) through config file?

[Jasvinder] -  No, there isn’t anything defined for prepend or append the field through configuration file. You have to  copy the desired field manually at the location adjacent to existing field in the mbuf headroom.


Thanks,
Nidhia


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

end of thread, other threads:[~2017-05-02  9:59 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-04-28  9:46 [dpdk-dev] Adding multiple fields as key in ip_pipeline application Nidhia Varghese
2017-04-28 13:54 ` [dpdk-dev] [dpdk-users] " Singh, Jasvinder
2017-05-02  9:28   ` Nidhia Varghese
2017-05-02  9:59     ` Singh, Jasvinder

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