<form>
    <field>
        <id>pipe.enabled</id>
        <label>enabled</label>
        <type>checkbox</type>
        <help>enable this pipe and it's related queues and rules</help>
    </field>
    <field>
        <id>pipe.bandwidth</id>
        <label>bandwidth</label>
        <type>text</type>
        <help>Total bandwidth for this pipe</help>
    </field>
    <field>
        <id>pipe.bandwidthMetric</id>
        <label>bandwidth Metric</label>
        <type>dropdown</type>
    </field>
 <!--   <field>
        <id>pipe.burst</id>
        <label>burst</label>
        <type>text</type>
        <help>If the data to be sent exceeds the	pipe's bandwidth limit (and
            the pipe was previously idle), up to size bytes of	data are
            allowed to	bypass the dummynet scheduler, and will	be sent	as
            fast as the physical link allows.
        </help>
        <advanced>true</advanced>
    </field> -->
    <field>
        <id>pipe.queue</id>
        <label>queue</label>
        <type>text</type>
        <help>number of dynamic queues, leave empty for default</help>
        <advanced>true</advanced>
    </field>
    <field>
        <id>pipe.mask</id>
        <label>mask</label>
        <type>dropdown</type>
        <help><![CDATA[Dynamic queue creation by source or destination address.
        <li> choose destination here to share the total bandwidth of this pipe among all connected clients. </li>
        <li> choose source to provide all connected clients up to a maximum of this pipe configured bandwidth  </li>
        ]]></help>
    </field>
    <field>
        <id>pipe.scheduler</id>
        <label>Scheduler type</label>
        <type>dropdown</type>
        <advanced>true</advanced>
        <help>Specify the scheduling algorithm to use</help>
    </field>
    <field>
        <id>pipe.codel_enable</id>
        <label>Enable CoDel</label>
        <type>checkbox</type>
        <help>Enable CoDel active queue management</help>
    </field>
    <field>
        <id>pipe.codel_target</id>
        <label>(FQ-)CoDel target</label>
        <type>text</type>
        <advanced>true</advanced>
        <help>Minimum acceptable persistent queue delay (in ms), leave empty for default</help>
    </field>
    <field>
        <id>pipe.codel_interval</id>
        <label>(FQ-)CoDel interval</label>
        <type>text</type>
        <advanced>true</advanced>
        <help>Interval before dropping packets (in ms), leave empty for default</help>
    </field>
    <field>
        <id>pipe.codel_ecn_enable</id>
        <label>(FQ-)CoDel ECN</label>
        <type>checkbox</type>
        <advanced>true</advanced>
        <help>Explicit Congestion Notification</help>
    </field>
    <field>
        <id>pipe.fqcodel_quantum</id>
        <label>FQ-CoDel quantum</label>
        <type>text</type>
        <advanced>true</advanced>
        <help>The number of bytes a queue can serve before being moved to the tail of old queues list (bytes), leave empty for defaults</help>
    </field>
    <field>
        <id>pipe.fqcodel_limit</id>
        <label>FQ-CoDel limit</label>
        <type>text</type>
        <advanced>true</advanced>
        <help>The hard size limit of all queues managed by this instance, leave empty for defaults</help>
    </field>
    <field>
        <id>pipe.fqcodel_flows</id>
        <label>FQ-CoDel flows</label>
        <type>text</type>
        <advanced>true</advanced>
        <help>The number of flow queues that are created and managed, leave empty for defaults</help>
    </field>
    <field>
        <id>pipe.description</id>
        <label>description</label>
        <type>text</type>
        <help>Description to identify this pipe.</help>
    </field>
</form>
