On Wed, Jan 04, 2017 at 11:01:46AM +0000, Yotam Gigi wrote:
> >-----Original Message-----
> >From: Simon Horman [mailto:[email protected]]
> >Sent: Wednesday, January 04, 2017 12:43 PM
> >To: Yotam Gigi <[email protected]>
> >Cc: Roopa Prabhu <[email protected]>; Jiri Pirko <[email protected]>;
> >[email protected]; [email protected]; Ido Schimmel
> ><[email protected]>; Elad Raz <[email protected]>; Nogah Frankel
> ><[email protected]>; Or Gerlitz <[email protected]>;
> >[email protected]; [email protected]; [email protected];
> >[email protected]; [email protected]; [email protected]
> >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:[email protected]]
> >> >Sent: Wednesday, November 16, 2016 6:15 PM
> >> >To: Jiri Pirko <[email protected]>
> >> >Cc: [email protected]; [email protected]; Yotam Gigi
> >> ><[email protected]>; Ido Schimmel <[email protected]>; Elad Raz
> >> ><[email protected]>; Nogah Frankel <[email protected]>; Or Gerlitz
> >> ><[email protected]>; [email protected]; [email protected];
> >> >[email protected]; [email protected]; linux@roeck-
> >us.net;
> >> >[email protected]; [email protected]
> >> >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 <[email protected]>
> >> >>
> >> >> 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.

Reply via email to