On Wed, Jan 04, 2017 at 11:01:46AM +0000, Yotam Gigi wrote: > >-----Original Message----- > >From: Simon Horman [mailto:simon.hor...@netronome.com] > >Sent: Wednesday, January 04, 2017 12:43 PM > >To: Yotam Gigi <yot...@mellanox.com> > >Cc: Roopa Prabhu <ro...@cumulusnetworks.com>; Jiri Pirko <j...@resnulli.us>; > >netdev@vger.kernel.org; da...@davemloft.net; Ido Schimmel > ><ido...@mellanox.com>; Elad Raz <el...@mellanox.com>; Nogah Frankel > ><nog...@mellanox.com>; Or Gerlitz <orl...@mellanox.com>; > >j...@mojatatu.com; geert+rene...@glider.be; step...@networkplumber.org; > >xiyou.wangc...@gmail.com; li...@roeck-us.net; john.fastab...@gmail.com > >Subject: Re: [patch net-next v2 5/8] Introduce sample tc action > > > >On Wed, Nov 16, 2016 at 04:26:44PM +0000, Yotam Gigi wrote: > >> >-----Original Message----- > >> >From: Roopa Prabhu [mailto:ro...@cumulusnetworks.com] > >> >Sent: Wednesday, November 16, 2016 6:15 PM > >> >To: Jiri Pirko <j...@resnulli.us> > >> >Cc: netdev@vger.kernel.org; da...@davemloft.net; Yotam Gigi > >> ><yot...@mellanox.com>; Ido Schimmel <ido...@mellanox.com>; Elad Raz > >> ><el...@mellanox.com>; Nogah Frankel <nog...@mellanox.com>; Or Gerlitz > >> ><ogerl...@mellanox.com>; j...@mojatatu.com; geert+rene...@glider.be; > >> >step...@networkplumber.org; xiyou.wangc...@gmail.com; linux@roeck- > >us.net; > >> >john.fastab...@gmail.com; simon.hor...@netronome.com > >> >Subject: Re: [patch net-next v2 5/8] Introduce sample tc action > >> > > >> >On 11/14/16, 7:00 AM, Jiri Pirko wrote: > >> >> From: Yotam Gigi <yot...@mellanox.com> > >> >> > >> >> This action allow the user to sample traffic matched by tc classifier. > >> >> The sampling consists of choosing packets randomly, truncating them, > >> >> adding some informative metadata regarding the interface and the > >> >> original > >> >> packet size and mark them with specific mark, to allow further tc rules > >> >> to > >> >> match and process. The marked sample packets are then injected into the > >> >> device ingress qdisc using netif_receive_skb. > >> >> > >> >> The packets metadata is packed using the ife encapsulation protocol, and > >> >> the outer packet's ethernet dest, source and eth_type, along with the > >> >> rate, mark and the optional truncation size can be configured from > >> >> userspace. > >> >> > >> >> Example: > >> >> To sample ingress traffic from interface eth1, and redirect the sampled > >> >> the sampled packets to interface dummy0, one may use the commands: > >> >> > >> >> tc qdisc add dev eth1 handle ffff: ingress > >> >> > >> >> tc filter add dev eth1 parent ffff: \ > >> >> matchall action sample rate 12 mark 17 > >> > > >> >Yotham, I am guessing in the future if one does not want to use mark, > >> >the sample api is extensible to allow for other actions to be added. > >> >This is from the general concern we had on using mark: some may not want > >> >to > >use > >> >mark. > >> >As long as the api is extensible to allow an alternate way in the future, > >> > we should be good. (We would prefer to not go down the path of having to > >> >introduce > >> >a new 'action sample' if this limits us in some way). > >> > >> The code is extensible - if one does want to add another action to > >> sample, he > >> totally can :) > >> > >> By the way, one of the reasons we removed the patches for now is that we > >> consider adding mirroring functionality to it instead of heaving two > >> tc-rules. > > > >Hi Yotham, > > > >I see that this action combines several discrete sub-actions, some of which > >duplicate functionality present in existing actions: > > > >* sample > >* truncate > >* IFE encapsulation with metadata > >* mark > >* output (proposed) > > > >I wonder if it would make sense to provided a mechanism whereby sampled > >packets can be passed on to other actions. Something similar to the > >existing pipe mechanism but allowing for the sampled and the original packets > >to continue to be processed separately. > > > >If so, it may be worth white-listing actions for which sampled packets are > >known to work well to limit the scope for unforseen side effects. > > Hi Simon, > > The patches were removed and we intend to propose a different implementation > for > that, using a dedicated sampling netlink channel, thus removing the need to > mark, mirror and IFE-pack the packets. > > We intend to send in the next few weeks, so I guess you can comment on the new > version.
Hi Yotham, thanks, I look forward to seeing the new approach.