On Dec 16, 2013, at 10:36 PM, Jarno Rajahalme <jrajaha...@nicira.com> wrote:
> Ben, > > I have this series on a branch after these: > > http://patchwork.openvswitch.org/patch/2157/ > http://patchwork.openvswitch.org/patch/2158/ > > Applying the first needs some manual work due to a typo fix in a comment I > made on the 1/3 of this series you acked earlier. > > After these two are in, I’ll send a rebased version of the meter framework, > up to and including the userspace implementation, leaving the Linux kernel > implementation for later work. > I just noticed you acked these, thanks! Jarno > Jarno > > On Dec 16, 2013, at 9:10 AM, Ben Pfaff <b...@nicira.com> wrote: > >> On Mon, Nov 11, 2013 at 09:03:03PM -0800, Ben Pfaff wrote: >>> On Tue, Nov 12, 2013 at 09:19:59AM +0800, Jesse Gross wrote: >>>> On Tue, Nov 12, 2013 at 7:53 AM, Ben Pfaff <b...@nicira.com> wrote: >>>>> On Fri, Nov 08, 2013 at 10:54:38AM -0800, Jarno Rajahalme wrote: >>>>>> Add DPIF-level support for meters. Allow meter_set to modify the meter >>>>>> configuration (e.g. set the burst size if unspecified). >>>>>> Summary: >>>>> >>>>> I think we need to get Jesse's view on the meter stuff. I'll review >>>>> the userspace API, if you like, or if you think that a userspace-only >>>>> implementation would be useful, but we need his input to get it into >>>>> the kernel. >>>> >>>> The concern that I have is that I think the actual meter >>>> implementation needs to be better integrated with the rest of the >>>> kernel in order to be upstreamable. I'm a little nervous about >>>> defining an API until we have at least one implementation that could >>>> be used in practice. >>>> >>>> The other thing that I think would be good to talk about is how this >>>> relates to the existing QoS features and other possible ways that we >>>> might want to extend meters in the future. >>> >>> I totally understand both of those concerns, and I'm on board with them. >>> Mostly I was hoping that since you sit closer to the kernel QoS stack >>> you'd have an idea for the kernel integration. >>> >>> Let me try to advance the discussion then. >>> >>> Maybe this is a "duh" kind of thing to other people, but I think that >>> what OpenFlow calls "metering" is what Linux calls "policing". The >>> definitions, at least, are similar. According to OpenFlow 1.3, a meter >>> measures the rate at which packets pass through it and either drops them >>> or changes their DSCP values. According to the traffic control HOWTO, >>> "A policer will accept traffic to a certain rate, and then perform an >>> action on traffic exceeding this rate. A rather harsh solution is to >>> drop the traffic, although the traffic could be reclassified instead of >>> being dropped." >>> >>> So a kernel action to invoke a policer would seem to be a place to >>> start. I think we'd need the datapath module to maintain a table of >>> policers, probably identified by an integer value. The action would >>> need to specify which one to invoke. >>> >>> "Drop" meters/policers would be easier to deal with than remarking >>> meters/policers, because presumably recirculation is needed in the >>> general case where the dscp changes and later tables want to match on >>> the dscp. >>> >>> Even "drop" meters/policers might be somewhat difficult, because I guess >>> that even if we "drop" along some path through the flow tables, we'd >>> still want to process anything along the "call stack" of resubmits. >>> >>> In short it sounds nontrivial even if we have the policer building block >>> ready to go. I'm not sure that it's worth it unless we have some >>> compelling use case. >>> >>> Jarno? Jesse? >> >> Jarno, I didn't ever see any further discussion on this. I'm trying to >> clean up patchwork, so I marked patches 6-12 in this series as Deferred. > _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev