[libvirt] [PATCH v1 10/11] bandwidth: Attach sfq to leaf node

Michal Privoznik mprivozn at redhat.com
Mon Nov 19 16:51:50 UTC 2012


SFQ is qdisc which doesn't really shape any traffic but
'just' re-arrange packets in sending buffer so no stream
starve.  The goal is to ensure fairness. There is basically
only one configuration parameter (perturb) which is set to
advised value of 10.
---
 src/util/virnetdevbandwidth.c |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/src/util/virnetdevbandwidth.c b/src/util/virnetdevbandwidth.c
index 3abe7e2..b4ffc29 100644
--- a/src/util/virnetdevbandwidth.c
+++ b/src/util/virnetdevbandwidth.c
@@ -124,6 +124,16 @@ virNetDevBandwidthSet(const char *ifname,
 
         virCommandFree(cmd);
         cmd = virCommandNew(TC);
+        virCommandAddArgList(cmd, "qdisc", "add", "dev", ifname, "parent",
+                             hierarchical_class ? "1:2" : "1:1",
+                             "handle", "2:", "sfq", "perturb",
+                             "10", NULL);
+
+        if (virCommandRun(cmd, NULL) < 0)
+            goto cleanup;
+
+        virCommandFree(cmd);
+        cmd = virCommandNew(TC);
         virCommandAddArgList(cmd,"filter", "add", "dev", ifname, "parent",
                              "1:0", "protocol", "ip", "handle", "1", "fw",
                              "flowid", "1", NULL);
-- 
1.7.8.6




More information about the libvir-list mailing list