Re: [vpp-dev] flowtable plugin

2016-11-25 Thread gannega
Hi, I updated the flowtable on github and on vppsb (in review) to take all these remarks into account. The flowtable had some dependencies on the test node I used (portmirroring) which should now be fixed. It should be completely independent now. I

Re: [vpp-dev] flowtable plugin

2016-11-25 Thread gannega
Thanks Damjan. I'll keep those examples in mind to make sure nothing bad can happen. On 11/25/16 14:09, Damjan Marion wrote: > As long as you have good understanding what nodes in the middle are doing you > should be fine. > > Likely most complicated case is with node A before FIB lookup and no

Re: [vpp-dev] flowtable plugin

2016-11-25 Thread Damjan Marion
As long as you have good understanding what nodes in the middle are doing you should be fine. Likely most complicated case is with node A before FIB lookup and node C after. FIB might send your frames to different encap nodes which may overwrite opaque, one candidate is definitely ipsec which

Re: [vpp-dev] flowtable plugin

2016-11-24 Thread gannega
The flowtable uses the opaque buffer for two things: - it provides a flow id, and a flow state - it provides an opaque buffer to be filled with information external to vpp (which in my case is dpi metadatas, but it could be anything) using the binary API. So the flowtable (node A) alone will provi

Re: [vpp-dev] flowtable plugin

2016-11-24 Thread Damjan Marion
both opaque and opaque2 are shared resource. There is no guarantee that node in the middle will not overwrite it. Is your situation really a case where node A needs to send some information to node C and there is unknown B or many Bs in the middle? > On 23 Nov 2016, at 15:15, gannega wrote:

Re: [vpp-dev] flowtable plugin

2016-11-23 Thread Keith Burns
On Wed, Nov 23, 2016 at 6:15 AM gannega wrote: > Thanks for the explanation. > > So I can use anything I want within the opaque buffer as long as I don't > presume what happens next. > Well... not exactly... there's lots of comments explaining what each field is union'd for. But there is an opaq

Re: [vpp-dev] flowtable plugin

2016-11-23 Thread gannega
Thanks for the explanation. So I can use anything I want within the opaque buffer as long as I don't presume what happens next. And ... I'm actually doing things I should not in the flowtable (which wasn't obvious to me until you explained it that way) ... so I'll go fix that. Thanks again, Be

Re: [vpp-dev] flowtable plugin

2016-11-23 Thread Keith Burns
On Wed, Nov 23, 2016 at 5:23 AM gannega wrote: > Hi Keith, > > This is a kind reminder. > > Apologies for tardiness... > Also, I stumbled upon VPP-320, and especially > https://gerrit.fd.io/r/#/c/1676/ which adds a 6 Bytes of plugin_metadata > in the opaque1 union, which has been reopened for n

Re: [vpp-dev] flowtable plugin

2016-11-23 Thread gannega
Hi Keith, This is a kind reminder. Also, I stumbled upon VPP-320, and especially https://gerrit.fd.io/r/#/c/1676/ which adds a 6 Bytes of plugin_metadata in the opaque1 union, which has been reopened for nsh-proxy. I feel this might be a good way to go which would ensure no collision between the

Re: [vpp-dev] flowtable plugin

2016-11-10 Thread Andrew 👽 Yourtchenko
On 11/10/16, gannega wrote: > Hi, > > One question for Keith first: > > The flowtable currently uses the first opaque field as a buffer to store > the data associated to the flow, but Andrew told me today that you > advised against this kind of behavior. Yeah - Keith, that was my impression from

Re: [vpp-dev] flowtable plugin

2016-11-10 Thread gannega
Hi, One question for Keith first: The flowtable currently uses the first opaque field as a buffer to store the data associated to the flow, but Andrew told me today that you advised against this kind of behavior. The idea is that the flowtable is configured to redirect packets to a working node

Re: [vpp-dev] flowtable plugin

2016-11-09 Thread gannega
Christophe can't make it tomorrow morning, nor on Monday. How about Tuesday 15 morning ? 10 am is ok for me. On 11/09/16 15:21, Ole Troan wrote: > No chance of doing it in the European morning? > Say 10am or 11am UTC+1? > > Cheers, > Ole > > >> On 9 Nov 2016, at 12:28, Andrew 👽 Yourtchenko wrot

Re: [vpp-dev] flowtable plugin

2016-11-09 Thread Ole Troan
No chance of doing it in the European morning? Say 10am or 11am UTC+1? Cheers, Ole > On 9 Nov 2016, at 12:28, Andrew 👽 Yourtchenko wrote: > > Hi Gabriel, > > Excellent! How about we meet tomorrow 4 pm then ? Or we can push the meeting > to Monday if that time tomorrow is inconvenient for yo

Re: [vpp-dev] flowtable plugin

2016-11-09 Thread gannega
4 pm is good. I'll set up a webex. On 11/09/16 12:28, Andrew 👽 Yourtchenko wrote: > Hi Gabriel, > > Excellent! How about we meet tomorrow 4 pm then ? Or we can push the meeting > to Monday if that time tomorrow is inconvenient for you. > > --a > >> On 9 Nov 2016, at 11:37, gannega wrote: >> >

Re: [vpp-dev] flowtable plugin

2016-11-09 Thread Andrew 👽 Yourtchenko
Hi Gabriel, Excellent! How about we meet tomorrow 4 pm then ? Or we can push the meeting to Monday if that time tomorrow is inconvenient for you. --a > On 9 Nov 2016, at 11:37, gannega wrote: > > Hi Andrew, > > I work in Paris, so we're in the same timezone, and of course i'm > interested t

Re: [vpp-dev] flowtable plugin

2016-11-09 Thread gannega
Hi Andrew, I work in Paris, so we're in the same timezone, and of course i'm interested to discuss all this with you. I'll update github with the current state of my work, and look at your plugins so that I understand what you did a bit before. I'm working on this with Christophe Fontaine (added

Re: [vpp-dev] flowtable plugin

2016-11-09 Thread Andrew 👽 Yourtchenko
Hi Gabriel, This looks interesting, and nice to meet you! I'm working on stateful ACL session tracking: https://github.com/vpp-dev/vpp/tree/acl/plugins/l2sess-plugin which plugs into the ACL plugin: https://github.com/vpp-dev/vpp/tree/acl/plugins/acl-plugin Definitely would be interesting to

[vpp-dev] flowtable plugin

2016-11-09 Thread gannega
Hi, I'm currently working on writing a flowtable node for vpp (It can be found in vppsb or on github ). In short, it inserts itself between given interface and ethernet-input, and basically provides a buffer associated to the flow which can be writte