mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-23 22:25:25 +00:00
a8923162c9
Define new 'bandwidth' element with possible child element 'inbound' and 'outbound' addressing incoming and outgoing traffic respectively: <bandwidth> <inbound average='1000' peak='2000' burst='5120'/> <outbound average='500'/> </bandwidth> Leaving any element out means not to shape traffic in that direction. The units for average and peak (rate) are in kilobytes per second, for burst (size) are just in kilobytes. This element can be inserted into domain's 'interface' and 'network'.
99 lines
2.5 KiB
XML
99 lines
2.5 KiB
XML
<?xml version="1.0"?>
|
|
<!-- network-related definitions used in multiple grammars -->
|
|
<grammar xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
|
|
|
|
<define name="virtualPortProfileID">
|
|
<data type="string">
|
|
<param name="maxLength">39</param>
|
|
</data>
|
|
</define>
|
|
|
|
<define name="virtualPortProfile">
|
|
<choice>
|
|
<group>
|
|
<element name="virtualport">
|
|
<attribute name="type">
|
|
<value>802.1Qbg</value>
|
|
</attribute>
|
|
<element name="parameters">
|
|
<attribute name="managerid">
|
|
<ref name="uint8range"/>
|
|
</attribute>
|
|
<attribute name="typeid">
|
|
<ref name="uint24range"/>
|
|
</attribute>
|
|
<attribute name="typeidversion">
|
|
<ref name="uint8range"/>
|
|
</attribute>
|
|
<optional>
|
|
<attribute name="instanceid">
|
|
<ref name="UUID"/>
|
|
</attribute>
|
|
</optional>
|
|
</element>
|
|
</element>
|
|
</group>
|
|
<group>
|
|
<element name="virtualport">
|
|
<attribute name="type">
|
|
<value>802.1Qbh</value>
|
|
</attribute>
|
|
<element name="parameters">
|
|
<attribute name="profileid">
|
|
<ref name="virtualPortProfileID"/>
|
|
</attribute>
|
|
</element>
|
|
</element>
|
|
</group>
|
|
</choice>
|
|
</define>
|
|
|
|
<define name="bandwidth">
|
|
<element name="bandwidth">
|
|
<interleave>
|
|
<optional>
|
|
<element name="inbound">
|
|
<ref name="bandwidth-attributes"/>
|
|
<empty/>
|
|
</element>
|
|
</optional>
|
|
<optional>
|
|
<element name="outbound">
|
|
<ref name="bandwidth-attributes"/>
|
|
<empty/>
|
|
</element>
|
|
</optional>
|
|
</interleave>
|
|
</element>
|
|
</define>
|
|
|
|
<define name="bandwidth-attributes">
|
|
<attribute name="average">
|
|
<ref name="speed"/>
|
|
</attribute>
|
|
<optional>
|
|
<attribute name="peak">
|
|
<ref name="speed"/>
|
|
</attribute>
|
|
</optional>
|
|
<optional>
|
|
<attribute name='burst'>
|
|
<ref name="BurstSize"/>
|
|
</attribute>
|
|
</optional>
|
|
</define>
|
|
|
|
<define name="speed">
|
|
<data type="unsignedInt">
|
|
<param name="pattern">[0-9]+</param>
|
|
<param name="minInclusive">1</param>
|
|
</data>
|
|
</define>
|
|
<define name="BurstSize">
|
|
<data type="unsignedInt">
|
|
<param name="pattern">[0-9]+</param>
|
|
<param name="minInclusive">1</param>
|
|
</data>
|
|
</define>
|
|
</grammar>
|