Paragon-X: Why do I need to set Impairment Flow Filters when performing an impairment in Master/Slave Emulation

Why are impairment Flow Filters so important

To ensure that the correct effect is seen on Time Error at the DUT it is important that the impairments
are applied to only the required message types.

In a forward direction this is to the Sync message and in the reverse direction this is to the Delay Request
message.

To ensure that PTP packets containing these messages are identified correctly it is necessary
to perform enough of a deep packet inspection on received packets to determine that a received
packet contains the correct PTP message type.

Once a match is found the appropriate next impairment step is applied to the transmission/receipt of that packet.

For example applying a G.8261 impairment pattern to Sync messages would result in each delay value being applied
to the each Sync message in turn i.e.

  •  Pattern Delay value 1 added to 1st Sync packet
  •  Pattern Delay value 2 added to next Sync packet
  •  Pattern Delay value 2 added to next Sync packet

etc

To ensure only Sync messages have the pattern applied you define a Flow Filter.

If no Flow Filter is defined then the delay pattern would be applied to any message being sent in the forward direction.

So taking the above example with Delay Responses being sent between Sync messages you would see the effect

  • Pattern Delay value 1 added to 1st Sync packet
  • Pattern Delay value 2 added to 1st Delay Response packet
  • Pattern Delay value 1 added to next Sync packet
  • Pattern Delay value 2 added to next Delay Response packet

etc

The effect on the DUT downstream is that the delay pattern would be diluted since it would not be applied to only Syncs

resulting in a different Time Error behaviour to that intended by the standard.

  • Related articles