8.2.4.6.4.2. Misorder Distribution

8.2.4.6.4.2.1. Enable/Disable

Control whether this impairment distribution is enabled.

Note

This command is not applicable for PE_BANDPOLICER and PE_BANDSHAPER because they have a separate ON / OFF parameter.

Corresponding low-level API class: PED_ENABLE

flow = port.emulation.flows[1] # e.g. flow_id = 1
await flow.impairment_distribution.misorder_type_config.enable.set(action=enums.OnOff.ON)
await flow.impairment_distribution.misorder_type_config.enable.set_on()
await flow.impairment_distribution.misorder_type_config.enable.set(action=enums.OnOff.OFF)
await flow.impairment_distribution.misorder_type_config.enable.set_off()

resp = await flow.impairment_distribution.misorder_type_config.off.get()
resp.action

8.2.4.6.4.2.2. Off Distribution

Configure Impairments Distribution to OFF. Assigning a different distribution than OFF to an impairment will activate the impairment. To de-activate the impairment assign distribution OFF.

Corresponding low-level API class: PED_OFF

flow = port.emulation.flows[1] # e.g. flow_id = 1
await flow.impairment_distribution.misorder_type_config.off.set()

resp = await flow.impairment_distribution.misorder_type_config.off.get()
resp.action

8.2.4.6.4.2.3. Fixed Rate Distribution

Configuration of Fixed Rate distribution. This is predictable distribution with nearly equal distance between impairments, to match the configured probability.

Note

In case of misordering, a special limit applies, probability * (depth + 1) should be less than 1000000.

Corresponding low-level API class: PED_FIXED

flow = port.emulation.flows[1] # e.g. flow_id = 1
await flow.impairment_distribution.misorder_type_config.fixed_rate.set(probability=10_000)

resp = await flow.impairment_distribution.misorder_type_config.fixed_rate.get()
resp.probability

8.2.4.6.4.2.4. Fixed Burst Distribution

Configuration of Fixed Burst distribution.

Corresponding low-level API class: PED_FIXEDBURST

flow = port.emulation.flows[1] # e.g. flow_id = 1
await flow.impairment_distribution.misorder_type_config.fixed_burst.set(burst_size=1300)

resp = await flow.impairment_distribution.misorder_type_config.fixed_burst.get()
resp.burst_size