Cause: In some scenarios users wants to shape traffic of a VM, its specific NIC or whole virtual network. It is better if this can be done directly via libvirt which sets virtual networks up, brings up VMs than enforcing user to set it up manually after.
Consequence: Users often ran scripts to set up traffic shaping
Change: Network and interface XML definitions were extended so users can specify average, peak and burst rates and libvirt will set them up on network/VM startup.
Result: Users can now set bandwidth limitation via libvirt.