I think meters are broken up to kernel 4.18.0, which is when this patch was
added:
https://github.com/torvalds/linux/commit/25432eba9cd
This commit probes for that condition in ovs-vswitchd:
https://github.com/openvswitch/ovs/commit/92d0d515d6
Do you see "The kernel module has a broken meter implementation." in your
ovs-vswitchd logs?
I will see if I can get that fix applied to 4.15, 4.16, and 4.17 branches in
the upstream kernel. In the meantime, you should be able to use the kernel
module that's included as part of OVS 2.10.
--Justin
> On Dec 28, 2018, at 12:55 AM, Ramzah Rehman <[email protected]> wrote:
>
> Here is the log error when I try to add a meter:
> #ovs-ofctl -O OpenFlow15 add-meter br0
> meter=100,kbps,band=type=drop,rate=300000
>
> Error in ovs-vswitchd.log:
> 2018-12-28T08:52:06.462Z|00653|connmgr|INFO|br0<->unix#224: sending
> OFPMMFC_INVALID_METER error reply to OFPT_METER_MOD message
>
> The kernel verion I updated to is:
> #uname -a
> Linux ubuntu 4.15.1-041501-generic #201802031831 SMP Sat Feb 3 18:32:13 UTC
> 2018 x86_64 x86_64 x86_64 GNU/Linux
>
> Could it be that that updating kernel to a supported version i.e. 4.15.1 does
> not work?
>
>
> Best Regards,
> Ramzah Rehman
>
>
> On Thu, Dec 27, 2018 at 8:44 PM Ben Pfaff <[email protected]> wrote:
> Check the OVS log for a message that mentions meters.
>
> On Thu, Dec 27, 2018 at 08:30:54PM +0500, Ramzah Rehman wrote:
> > I have Ubuntu 14.04.5 with kernel version 4.4. I updated kernel version to
> > 4.15.1 which supports kernel datapaths.
> >
> > I don't want to use DPDK since I don't have DPDK compatible network cards.
> >
> > On Thu, Dec 27, 2018, 8:24 PM Ben Pfaff <[email protected] wrote:
> >
> > > On Thu, Dec 27, 2018 at 12:02:50PM +0500, Ramzah Rehman wrote:
> > > > It is mentioned in FAQ of QoS that "Open vSwitch 2.10 has implemented
> > > > meters in the Linux kernel datapath " which means we can use meters in
> > > > kernel datapath. However, when I try to add meter, I get
> > > > OFPMMFC_INVALID_METER error. This is what I did.
> > > >
> > > > #ovs-vsctl add-br br0
> > > > #ovs-vsctl set bridge br0
> > > >
> > > protocols=OpenFlow10,OpenFlow11,OpenFlow12,OpenFlow13,OpenFlow14,OpenFlow15
> > > > #ovs-ofctl -O OpenFlow15 add-meter br0
> > > > meter=100,kbps,band=type=drop,rate=300000
> > > > OFPT_ERROR (OF1.3) (xid=0x2): OFPMMFC_INVALID_METER
> > > > OFPT_METER_MOD (OF1.3) (xid=0x2): ADD meter=100 kbps bands=
> > > > type=drop rate=300000
> > > >
> > > > Please let me what I am doing wrong.
> > >
> > > Probably the kernel module you're using doesn't support meters.
> > >
> > > > One important thing to mention here is that when I set the type of
> > > > switch to netdev like this:
> > > >
> > > > #ovs-vsctl set bridge br0 datapath_type=netdev
> > > >
> > > > I can add meters without any error. What's the reason?
> > >
> > > Each datapath has its own meter implementation, so when you switch
> > > datapaths you get different behavior.
> > >
> > > > There's one problem with this as well, I cannot achieve throughput
> > > > more than 500Mbps on 1Gbps link once I set the datapath type to
> > > > netdev.
> > >
> > > Probably you should use DPDK if you want high performance from the
> > > userspace datapath.
> > >
> _______________________________________________
> discuss mailing list
> [email protected]
> https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
_______________________________________________
discuss mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss