mirror of
https://github.com/openvswitch/ovs
synced 2025-09-05 00:35:33 +00:00
add port-based ingress policing based packet-per-second rate-limiting
OVS has support for using policing to enforce a rate limit in kilobits per second. This is configured using OVSDB. f.e. $ ovs-vsctl set interface tap0 ingress_policing_rate=1000 $ ovs-vsctl set interface tap0 ingress_policing_burst=100 This patch adds a related feature, allowing policing to enforce a rate limit in kilo-packets per second. This is also configured using OVSDB. $ ovs-vsctl set interface tap0 ingress_policing_kpkts_rate=1000 $ ovs-vsctl set interface tap0 ingress_policing_kpkts_burst=100 The kilo-bit and kilo-packet rate limits may be used separately or in combination. Add separate action for BPS and PPS in netlink message. Revise code and change action result to pipe to allow traffic pipe into second action. This patch implements the feature for: * OVSDB (northbound API) * TC policer when used both with and without TC offload (kernel API) Signed-off-by: Yong Xu <yong.xu@corigine.com> Signed-off-by: Simon Horman <simon.horman@netronome.com>
This commit is contained in:
@@ -3389,7 +3389,9 @@ netdev_dpdk_policer_construct(uint32_t rate, uint32_t burst)
|
||||
|
||||
static int
|
||||
netdev_dpdk_set_policing(struct netdev* netdev, uint32_t policer_rate,
|
||||
uint32_t policer_burst)
|
||||
uint32_t policer_burst,
|
||||
uint32_t policer_kpkts_rate OVS_UNUSED,
|
||||
uint32_t policer_kpkts_burst OVS_UNUSED)
|
||||
{
|
||||
struct netdev_dpdk *dev = netdev_dpdk_cast(netdev);
|
||||
struct ingress_policer *policer;
|
||||
|
Reference in New Issue
Block a user