Hi, In CirtixResourceBase.java( https://github.com/apache/cloudstack/blob/4.2.1/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java) of createVif method , i see that the network rate value will be multiplied by 128 . if (nic.getNetworkRateMbps() != null && nic.getNetworkRateMbps().intValue() != -1) { vifr.qosAlgorithmType = "ratelimit"; vifr.qosAlgorithmParams = new HashMap<String, String>(); // convert mbs to kilobyte per second vifr.qosAlgorithmParams.put("kbps", Integer.toString(nic.getNetworkRateMbps() * 128)); } and when i create a service_offering with 1Mb/s QoS, the vm's networking will be limited in 128Kb/s. All works fine.
But what i wanna do is when a service_offering with 1Mb/s then the vm will be limited in 1Kb/s,so I change the coded like that vifr.qosAlgorithmParams.put("kbps", Integer.toString(nic.getNetworkRateMbps())); without multiplied by 128. But acctualy the vm still limit in 128Kb/s. Did i miss anyting? My environments is : CS 4.2.1 Xenserver 6.2.0 Thanks, Yitao