When message order doesn’t matter
Tip These use cases can be mixed for greater flexibility.

Ignored order groups

The IGNORED_ORDER_GROUP attribute allows you to ignore the order of a sequence of incoming messages. Set the IGNORED_ORDER_GROUP attribute to some shared value for all of the messages that you want to receive in any order.

Use case

The order of two or more adjacent incoming messages on a single dialog is undefined or random.

Rules and constraints

  • The IGNORED_ORDER_GROUP message attribute links multiple messages into one ignored order group.

  • The scenario will match if all the messages in the ignored order group are received sequentially, in any order.

  • Ignored order functionality is relevant only for messages received by a given role; the sending role always uses the message definition order.

  • Ignored order functionality works only on chains of incoming messages (adjacent messages directed to the same role, on the same dialog, and in the same direction).

  • Queued message chains (any number of adjacent queued messages, and single non-queued messages after them) are treated as a single message for purposes of ignored order functionality (in other words, queued message chains must be received in scenario definition order for the scenario to match).

  • Dialog-initiating messages (the first message in a dialog) can’t be part of an ignored order group (message attribute IGNORED_ORDER_GROUP must be left undefined).

  • Ignored order groups must contain a minimum of two messages.

Examples

For a group of adjacent messages (M1, M2, M3) on a single dialog linked with a common IGNORED_ORDER_GROUP id:

Order messages received Match?

(M3, M1, M2) or (M2, M3, M1)

YES

(M2, M1) — M3 not received

YES

(M1, M2, M4, M3)

NO

Message ordering with multiple dialogs

The simulator is flexible about matching the order of consecutive incoming messages from multiple dialogs. The order within each dialog is enforced, but the total order of the messages across the dialogs is not. This allows scenarios to match more reliably when waiting for responses from multiple network elements.

Use case

The order of adjacent incoming messages received on different dialogs is undefined or random

Rules and Constraints

  • This only applies for consecutive incoming messages across dialogs which are already established. It does not apply to messages involved in incoming dialog correlation where a new incoming dialog starts part way through a scenario.

  • The user does not have to designate a group of messages; the Scenario Simulator does it implicitly when there are multiple adjacent incoming messages on different dialogs for a given role.

  • Adjacent incoming messages are defined only in the context of a single role, and messages that do not involve that role are ignored.

  • Messages sent and received by a single role, that are separated in a scenario by messages sent and received in dialogs not involving that role, are treated as adjacent.

  • The adjacent incoming messages must be in the same direction on different dialogs.

  • Within each dialog the messages must be received in the order they are defined for that dialog (unless an IGNORED_ORDER_GROUP is defined).

  • Incoming dialogs of the same protocol initiated at the same point in a scenario (dialogs that have adjacent initial messages), and involving the same roles, must be initiated by different message types (so that the Scenario Simulator can discriminate between dialogs involving the same roles and the same protocol, based only on the message type).

Examples

For a scenario is defined with two dialogs (d1 and d2) having adjacent incoming messages (M1, M2 on d1) and (M3, M4 on d2):

Order messages received Match?

(M1, M3, M2, M4)

YES

(M1, M3, M4, M2)

YES

(M3, M1, M4, M2)

YES

(M3, M4, M1, M2)

YES

(M2, M1, M3, M4)

NO
(unless an IGNORED_ORDER_GROUP is defined for M1 and M2)

(M1, M2, M4, M3)

NO
(unless an IGNORED_ORDER_GROUP is defined for M3 and M4)

Note Some constraints may be removed in future versions of the Scenario Simulator.
Previous page Next page