Download as pdf or txt
Download as pdf or txt
You are on page 1of 199

BFX 4.

1
User Manual

Document version: 4.01.037


Document date: May 2023

BroadForward BV Phone: +31 85 489 5 689


Nijverheidsweg Noord 60-76 Email: info@broadforward.com
3812 PM Amersfoort Website: www.broadforward.com
The Netherlands Twitter: @broadforward
BFX User Manual

Table of Contents

1 Introduction ................................................................................................................... 8
2 Getting access to the GUI ............................................................................................. 9
2.1 Login ...................................................................................................................... 9
2.2 Main menu ........................................................................................................... 11
2.3 Search.................................................................................................................. 11
2.4 GUI settings ......................................................................................................... 12
2.5 Home page .......................................................................................................... 13
3 Flow Configuration ...................................................................................................... 15
3.1 Main screen ......................................................................................................... 15
3.1.1 Console .................................................................................................. 17
3.1.2 Status information................................................................................... 17
3.1.3 Parameters ............................................................................................. 18
3.1.4 Conditions .............................................................................................. 18
3.1.5 Tracing ................................................................................................... 18
3.1.6 Steps ...................................................................................................... 18
3.2 Creating a flow ..................................................................................................... 18
3.3 Modifying an existing flow..................................................................................... 19
3.3.1 Flow id .................................................................................................... 19
3.3.2 Description ............................................................................................. 19
3.3.3 Priority .................................................................................................... 19
3.3.4 Flow Group ............................................................................................. 20
3.3.5 Log level ................................................................................................. 20
3.3.6 Validation status ..................................................................................... 20
3.3.7 Active status ........................................................................................... 20
3.3.8 Conditions .............................................................................................. 20
3.3.8.1 Tokens.................................................................................. 24
3.3.8.2 Limiting the number of messages entering a flow ................. 24
3.3.9 Tracing ................................................................................................... 25
3.3.10 Steps ...................................................................................................... 26
3.3.10.1 Configuring EDR generation ................................................. 28
3.3.10.2 Configuring the Conversion module ...................................... 28
3.3.10.3 Configuring the Diameter module ......................................... 32
3.3.10.4 Configuring the Dump module .............................................. 33
3.3.10.5 Configuring the ENUM module ............................................. 34
3.3.10.6 Configuring the Flow Selector module .................................. 36

Copyright © BroadForward BV 2023 Page 2 of 199


BFX User Manual

3.3.10.7 Configuring the HTTP module............................................... 38


3.3.10.8 Configuring the LDAP module .............................................. 40
3.3.10.9 Configuring the List module .................................................. 42
3.3.10.10 Configuring the MAP-Diameter IWF module ......................... 43
3.3.10.11 Configuring the Notification module ...................................... 43
3.3.10.12 Configuring the RADIUS module .......................................... 44
3.3.10.13 Configuring the Routing module............................................ 45
3.3.10.14 Configuring the INAP module ............................................... 47
3.3.10.15 Configuring the MAP module ................................................ 50
3.3.10.16 Configuring the SCCP module .............................................. 53
3.3.10.17 Configuring the SUP module ................................................ 54
3.3.10.18 Configuring the SIP module .................................................. 54
3.3.10.19 Configuring the Storage module ........................................... 55
3.4 Events Conversion Details ................................................................................... 58
3.4.1 Tokens ................................................................................................... 63
3.4.2 On preconditions .................................................................................... 64
3.4.3 List of Common AVPs............................................................................. 65
3.4.4 Pass-through and Termination Events .................................................... 66
3.4.5 Modifying an Output event ...................................................................... 67
3.5 Validating and Activating a flow ............................................................................ 67
3.5.1 Validating and Activating all flows ........................................................... 68
3.6 Deactivating a flow ............................................................................................... 69
3.6.1 Deactivating all flows .............................................................................. 69
3.7 Removing a flow................................................................................................... 70
3.8 Exporting and Importing flows .............................................................................. 71
3.9 Restore points ...................................................................................................... 71
4 Routing Rules Configuration ...................................................................................... 73
4.1 Main screen ......................................................................................................... 73
4.1.1 Status information................................................................................... 75
4.1.2 Parameters ............................................................................................. 75
4.1.3 Console .................................................................................................. 76
4.1.4 Conditions .............................................................................................. 76
4.1.5 Destinations ............................................................................................ 76
4.2 Creating a routing rule .......................................................................................... 76
4.2.1 Provisioning ............................................................................................ 77
4.3 Modifying an existing routing rule ......................................................................... 77
4.3.1 Routing rule id ........................................................................................ 77
4.3.2 Description ............................................................................................. 77
4.3.3 Routing rule Group ................................................................................. 77

Copyright © BroadForward BV 2023 Page 3 of 199


BFX User Manual

4.3.4 Validation status ..................................................................................... 77


4.3.5 Active status ........................................................................................... 78
4.3.6 Conditions .............................................................................................. 78
4.3.6.1 Tokens.................................................................................. 82
4.3.7 Destinations ............................................................................................ 82
4.4 Validating and activating a routing rule ................................................................. 82
4.4.1 Validating and activating all routing rules ................................................ 83
4.5 Deactivating a routing rule .................................................................................... 84
4.5.1 Deactivating all routing rules ................................................................... 84
4.6 Removing a routing rule ....................................................................................... 84
4.7 Exporting and Importing routing rules ................................................................... 85
5 Tracing Rules Configuration ...................................................................................... 87
5.1 Main screen ......................................................................................................... 87
5.1.1 Status information................................................................................... 88
5.1.2 Parameters ............................................................................................. 89
5.1.3 Console .................................................................................................. 90
5.1.4 Conditions .............................................................................................. 90
5.2 Creating a tracing rule .......................................................................................... 90
5.2.1 Provisioning ............................................................................................ 90
5.3 Modifying an existing tracing rule ......................................................................... 91
5.3.1 Tracing rule id ......................................................................................... 91
5.3.2 Description ............................................................................................. 91
5.3.3 Tracing rule Group .................................................................................. 91
5.3.4 Validation status ..................................................................................... 91
5.3.5 Active status ........................................................................................... 91
5.3.6 Conditions .............................................................................................. 91
5.4 Validating and activating a tracing rule ................................................................. 91
5.4.1 Validating and activating all tracing rules ................................................ 92
5.5 Deactivating a tracing rule .................................................................................... 92
5.5.1 Deactivating all tracing rules ................................................................... 93
5.6 Removing a tracing rule ....................................................................................... 93
5.7 Exporting and Importing tracing rules ................................................................... 94
6 List Profiles Configuration.......................................................................................... 95
6.1 Main screen ......................................................................................................... 95
6.1.1 Status information................................................................................... 97
6.1.2 Parameters ............................................................................................. 99
6.1.3 Console .................................................................................................. 99
6.1.4 Files ........................................................................................................ 99
6.2 Creating a list profile............................................................................................. 99

Copyright © BroadForward BV 2023 Page 4 of 199


BFX User Manual

6.2.1 Provisioning .......................................................................................... 100


6.3 Modifying an existing list profile .......................................................................... 100
6.3.1 List profile id ......................................................................................... 100
6.3.2 Description ........................................................................................... 100
6.3.3 List profile group ................................................................................... 100
6.3.4 Case sensitive ...................................................................................... 100
6.3.5 List profile mode ................................................................................... 101
6.3.6 Validation status ................................................................................... 101
6.3.7 Active status ......................................................................................... 101
6.3.8 Files ...................................................................................................... 101
6.3.8.1 Reloading ........................................................................... 102
6.3.8.2 Viewing and Editing ............................................................ 102
6.3.8.3 Viewing and editing full screen............................................ 103
6.3.8.4 Locality ............................................................................... 105
6.3.8.5 Validating list data file ......................................................... 106
6.4 Validating and Activating a list profile ................................................................. 106
6.4.1 Validating and activating all list profiles ................................................. 107
6.5 Deactivating a list profile .................................................................................... 107
6.5.1 Deactivating all list profiles.................................................................... 107
6.6 Removing a list profile ........................................................................................ 107
6.7 Exporting and Importing list profiles.................................................................... 108
7 Subscribers................................................................................................................ 110
7.1 Main screen ....................................................................................................... 110
7.2 Individual Subscriber .......................................................................................... 110
7.3 Subscriber Range .............................................................................................. 111
8 Nodes and Connections Configuration ................................................................... 113
8.1 Main screen ....................................................................................................... 113
8.1.1 Status information................................................................................. 114
8.1.2 Parameters ........................................................................................... 115
8.1.3 Console ................................................................................................ 115
8.1.4 Framework & Connectivity Configuration section .................................. 115
8.1.5 Templates Configuration section .......................................................... 116
8.1.6 Licenses section ................................................................................... 116
8.2 Framework & Connectivity Configuration............................................................ 116
8.2.1 Diameter ............................................................................................... 119
8.2.1.1 Changes in Diameter Identity .............................................. 121
8.2.1.2 Diameter Ingress Rules ...................................................... 121
8.2.2 RADIUS ................................................................................................ 122
8.2.3 HTTP .................................................................................................... 123

Copyright © BroadForward BV 2023 Page 5 of 199


BFX User Manual

8.2.4 ENUM ................................................................................................... 124


8.2.5 SS7 Subsystems .................................................................................. 125
8.2.6 M3UA and M2PA .................................................................................. 126
8.2.7 SCCP Ingress Rules ............................................................................. 127
8.2.8 SIP ....................................................................................................... 128
8.2.9 Storage buckets.................................................................................... 129
8.3 Templates Configuration .................................................................................... 130
9 User accounts and Profiles Configuration .............................................................. 133
9.1 Main screen ....................................................................................................... 133
9.1.1 Information ........................................................................................... 134
9.1.2 Console ................................................................................................ 135
9.2 User account management ................................................................................ 135
9.3 Profile management ........................................................................................... 135
10 Audit Trail .................................................................................................................. 137
10.1 Audit Trail GUI.................................................................................................... 137
11 Dashboard ................................................................................................................. 139
11.1 Charts and status section ................................................................................... 140
11.1.1 Flows and Modules ............................................................................... 140
11.1.2 Queues ................................................................................................. 142
11.1.3 System resources ................................................................................. 142
11.1.4 Diameter peers ..................................................................................... 142
11.1.4.1 Diameter peer charts .......................................................... 142
11.1.4.2 Diameter peer status .......................................................... 143
11.1.5 HTTP clients ......................................................................................... 145
11.1.6 MAP ..................................................................................................... 145
11.1.7 INAP ..................................................................................................... 146
11.1.8 SCCP ................................................................................................... 146
11.1.9 M3UA associations ............................................................................... 147
11.1.9.1 M3UA association charts .................................................... 147
11.1.9.2 M3UA association status .................................................... 148
11.1.10 M3UA destinations status ..................................................................... 149
11.1.11 Database ........................................................................................... 151
11.2 Alarm view ......................................................................................................... 151
11.3 Workbench ......................................................................................................... 153
11.4 Dashboard data.................................................................................................. 154
11.5 Configuration ...................................................................................................... 154
11.6 System messages view ...................................................................................... 155
12 Overview .................................................................................................................... 157

Copyright © BroadForward BV 2023 Page 6 of 199


BFX User Manual

13 Support ...................................................................................................................... 159


Appendix A. Time/date Format Characters ...................................................................160
Appendix B. Routing rule provisioning .........................................................................162
Appendix C. Tracing rule provisioning ..........................................................................167
Appendix D. List profile data file provisioning..............................................................168
Appendix E. Diameter peer provisioning ......................................................................169
Appendix F. M3UA and M2PA provisioning ..................................................................175
F.1 M3UA ASP/IPSP provisioning ............................................................................176
F.2 M3UA SG provisioning .......................................................................................183
F.3 M2PA provisioning..............................................................................................190

Copyright © BroadForward BV 2023 Page 7 of 199


BFX User Manual

1 Introduction
The purpose of this User Manual is to describe the usage of the BFX user interface. The BFX
User Manual is part of the BFX Product Manual Suite.

• The Installation and Upgrade Manual describes the installation, upgrade, roll-back
and uninstallation procedure of BFX. The result of the installation procedure is a BFX
instance that can be started and is ready for further configuration as covered by the
Operation and Configuration Manual. The Installation and Upgrade Manual also
describes the basic integration of BFX OAM in a Network Management Station using
its SNMP interface.
• The Operation and Configuration Manual describes how BFX is configured to operate
as required. It describes how to configure network connections, protocol and AVP
templates and the BFX core configuration items. This includes security-related
aspects.
The Operation and Configuration Manual also describes how to operate, manage and
maintain the BFX system to ensure it functions as required. This includes detailed
information on the SNMP Management Information Base (MIB) of BFX.
• The User Manual described how to use the BFX graphical user interface to perform
the required tasks.

Copyright © BroadForward BV 2023 Page 8 of 199


BFX User Manual

2 Getting access to the GUI


2.1 Login
To make use of BFX GUI, it is required to login. To open the BFX GUI, point the browser to
the URL https://<BFX node IP>:60443. The BFX GUI is available for web browsers
Firefox, Chrome, Safari and Opera, on various platforms. A resolution of at least 1024 pixels
wide is recommended. Cookies must be enabled.

The GUI will open with a login screen to provide user account and password details. In case
of multi-node BFX deployments, login is only allowed on the Group Master.

Provide a user account id and password, and press Enter or click Login.

Upon installation, four standard user accounts are created.

• super – full access to all GUI functions


• admin – full access to all GUI functions, except Audit Trail and User Management
• admin_ro – read-only access to all GUI functions, except Audit Trail and User
Management
• operator – access to GUI functions Dashboard and Overview only
See section 9.2 for more information on user account management.

Upon first login, the user is prompted to choose a different password before login can be
successful.

Copyright © BroadForward BV 2023 Page 9 of 199


BFX User Manual

The new password input box borders turn green if the required strength is reached, or red
when this is not the case (yet). When the retyped new passwords are the same, a green
indicator is displayed next to the retyped new password input box.

The login functionality is subject to the following features, which can be configured (see the
BFX Operation and Configuration Manual for more information).

• Minimum/maximum length, strength and input character set constraints for


passwords;
• Automatic logout after period of inactivity;
• Expiration of passwords;
• Expiration of login sessions;
• Delay in re-attempting to login after a failed login attempt (the password entry box will
be disabled for a progressive amount of time);
• Re-use of last N passwords not allowed;
• User account blocking after a configured number of failed login attempts (the account
will then be ‘suspended’, and a user account with sufficient privileges to ‘resume’ a
user account has to log in to remove this suspension, via the Users section in the
BFX GUI).
See the BFX Operation and Configuration manual (section 2.1.2) for more information on the
configuration of these features.

Access to the various GUI functions is controlled via user profiles. Each user is assigned a
profile which defines to which functions the user is granted access.

Upon installation, four standard profiles are created.

• Super – for the standard user account super


• Admin – for the standard user account admin
• AdminRO – for the standard user account admin_ro
• Operator – for the standard user account operator

Copyright © BroadForward BV 2023 Page 10 of 199


BFX User Manual

See section 9.3 for more information on user profile management.

2.2 Main menu


The GUI main menu bar provides access to the various sections of the BFX GUI.

• Flows – to manage Message Flows.


• Routing Rules – to manage Rules for the Routing Module (optional).
• Tracing Rules – to manage Tracing Rules for the Message Flows (optional).
• List Profiles – to manage Profiles for the List Module (optional).
• Subscribers – to read, edit and remove entries in the Subscriber database (optional).
• Nodes and Connections – to manage BFX nodes, connections, protocol templates,
AVP files, and license information.
• Users – to manage BFX GUI user accounts.
• Audit Trail – to view the Audit Trail of BFX configuration changes.
• Dashboard – to open the Dashboard for viewing of graphs, and other operational
information, including the Workbench.
Further information provided is the user id used for logging in, and a ‘More options’ button to
get access to general functions:

• Open/hide search pane (see section 2.3)


• Log out
• Open Home page
• Open Overview window (see section 12)
• Open NMS (in Dashboard only)
• Hide GUI console window (not in every GUI section)
• Clear content of GUI console window (not in every GUI section)
• Open Help dialog
• Access the BFX product manuals
• Open the GUI settings dialog (see section 2.4)
• Open Configuration Usage statistics dialog
• Open About dialog

2.3 Search
The Search pane provides a means to a free text search across multiple objects in the GUI
configuration. Flows, Routing rules, Tracing Rules, List profiles, Nodes and connections (most

Copyright © BroadForward BV 2023 Page 11 of 199


BFX User Manual

notably connectivity configuration) and files (protocol templates and AVP files) can all be
searched for the presence of a string (partial or full), case-sensitive or not.

Hits are displayed per object id (clickable), specifying the matching line in yellow ad matching
text in darker yellow.

The Search pane is opened or hidden via the options Search and Hide search in the ‘More
options’ menu.

2.4 GUI settings


The GUI settings dialog provides various tabs and configuration items, depending on the
context of the GUI section selected.

Example for the Home page:

Copyright © BroadForward BV 2023 Page 12 of 199


BFX User Manual

The configuration items correspond to the settings in the GUI main configuration file (see the
BFX Operation and Configuration Manual). The configuration file is updated after pressing
Save. The GUI window will reload after updating the configuration file.

2.5 Home page


The GUI Home page provides an overview of the active alarms and the BFX nodes.

Multiple informational elements are provided for the active alarms.

• The title of the content pane shows the number of alarms per severity, using the
corresponding color coding. Hover over the number to see the alarm severity.
• A list of active alarms (severity coloring, maximum number and minimal severity are
subject to GUI settings; see section 2.4) is displayed in the content pane; see section
11.2 for more information on the table columns.
Multiple informational elements are provided for the nodes.

• The title of the content pane provides the name of the node (clicking it will open the
Dashboard for this node), the status of the Messaging Framework (“lightbulb“ icon)
and the active/standby status (“heart“ icon). Hover over the icon for more information.

Copyright © BroadForward BV 2023 Page 13 of 199


BFX User Manual

• Pie charts are available to indicate CPU usage, memory (RAM) usage, disk usage (of
one volume) and Diameter peer and/or HTTP and/or M3UA association connection
status. Up to four charts can be displayed. Hover over the chart elements for more
information.
• A traffic chart is available to show the total amount of traffic in all flows on that node.
Color scheme and data windows are configurable.
The Home page panes are refreshed automatically. They are subject to configuration; see
the BFX Operation and Configuration Manual for this.

For nodes which only run the database component, the following applies for the information
panes.

• The title of the content pane provides the name of the node (clicking it will open the
Dashboard for this node) and the status of the Couchbase database (“database“
icon). Hover over the icon for more information.
• Pie/Doughnut charts are available to indicate CPU usage, memory (RAM) usage and
disk usage (of one volume). Up to three charts can be displayed. Hover over the chart
elements for more information.
• No traffic chart is available.

Copyright © BroadForward BV 2023 Page 14 of 199


BFX User Manual

3 Flow Configuration
To make use of BFX’s functionality, its Protocol Modules and Function Modules are chained
in Message Flows. BFX can support multiple different Message Flows that each have their
combination of functions and protocols. Each message entering BFX is directed into one of
the configured Message Flows.

The following sections describe how to accomplish the flow management tasks available in
BFX.

3.1 Main screen


To open the Flow Configuration GUI, log in and select the Flows section.

M AIN SCREEN WITH FLOW C ONFIGURATIONS - EXAMPLE

The main screen consists of the following parts:

1. A main menu bar (see section 2.2);


2. A console pane containing a log of the actions performed in the GUI;
3. A menu bar with a set of commands and Undo button;
4. A listing of the flows. Select a flow by clicking its name in the list. A pane opens,
displaying status information about the flow;
5. Flow parameters, e.g. description, priority etc.;
6. Configuration of flow conditions, i.e. under what conditions a message is sent in this
flow;

Copyright © BroadForward BV 2023 Page 15 of 199


BFX User Manual

7. Configuration of flow steps, i.e. what modules are part of this flow.
The commands in the menu are:

• Flow ➔ Reload flow: reload flow configuration and information;


• Flow ➔ Add flow: create a new flow (section 3.2);
• Flow ➔ Remove flow: remove a flow configuration (section 3.7);
• Flow ➔ Remove multiple flows: remove multiple flow configurations (section 3.7);
• Flow ➔ Open recycle bin: open the list of previously removed flows (section 3.7);
• Flow ➔ Email/Print flow details: send email(s) with flow details (choose Email flow
details and provide one or more email addresses, separated by comma) or open a
page with flow details for printing purposes by choosing Print flow details;
• Flow ➔ Revert to last validated: the flow configuration is modified back to the state
when it was last validated;
• Flow ➔ Validate all flows: issues a validation command for all flows in the list;
• Flow ➔ Activate all flows: issues an activation command for all flows in the list
(subflows go first);
• Flow ➔ Deactivate all flows: issues a deactivation command for all flows in the list
(subflows go last);
• Flow ➔ Export/Import: create and use .export files for redistribution of flow
configuration across BFX deployments (section 3.8);
• Restore points: create and use restore points in the configuration of the BFX system
(section 3.9);
• Filter: a filter can be set to reduce the number of flows displayed in the list. Filters can
be set on flow groups, choice of sub/main flows, conditions and Conversion (where
applicable). Select any of the menu entries under the Filter menu to open a dialog box
to make a choice of the flow group(s), choose between sub or main flow, or to specify
and apply text that is used as partial string to test any condition/Conversion
fields/values against (case sensitive). Multiple filters can be set; these are combined
in a logical AND;
• Undo: undo the most recent changes made to flow parameters, conditions or steps.
The number of commands that can be undone is subject to configuration; see the
BFX Operation and Configuration Manual for more information. Undo-ing a previous
change affects the ‘Last updated’ value and Validation status.
Subject to configuration via the GUI settings, a right-mouse click context menu is available. It
provides a list of recently selected flows, routing rules and list profiles for quick navigation. The
area to click is the listing area. Other screen areas provide the browser-defined context menu.

Copyright © BroadForward BV 2023 Page 16 of 199


BFX User Manual

3.1.1 Console
Feedback on the GUI functions performed is provided on the far right of the console bar. An
icon indicates whether the request is in progress, was successful, or was not successful.
Additional information is proved in the console pane. Example:

3.1.2 Status information


The status information provided for a flow in the listing’s pane is:

• Log level: the log level used for messages in this flow (see section 22 of the BFX
Operation and Configuration Manual for more information on logging);
• Validation status: a flow’s validation status is either one of:
Validated
Not validated
A flow is considered to be validated if the flow configuration has been successfully
checked by the system for completeness. Incomplete configurations cannot be
validated and need to be corrected according to the feedback provided by the system.
A flow needs to be validated before it can be activated. Making a change to the flow’s
configuration sets the flow’s validation status to Not validated.
• Active status: a flow’s active status is either one of:
Not active
Active (followed by an “Active since” date)
Active (followed by an “Active since” date and “modified since” indication)
A flow is active when the BFX server applies the flow configuration in the handling of
traffic. When active, counters are updated for the flow which can be viewed using the
BFX dashboard. Flows that are active, but have been modified in the GUI (indicated
by orange coloring), can be re-activated. For such flows, after validation a “diff” button
is provided to open a window showing the differences between the activated and the
validated flow configuration.
Hover over the label Active status to see more details per node.
The flow’s log level, validation status and active status can be modified by clicking the value
and entering a new value.

To improve the GUI responsiveness, the flow’s Active status and Log level is cached, and
not retrieved each time upon reading of the flow configuration. The cache is refreshed after
status changes, or when cache info is older than 24 hours, or when the Ctrl key is pressed
while reading the flow configuration.

The label of the listing’s pane contains the flow’s id, description and priority (for main flows
only). A colored square in front of the flow id indicates the active status:

• Green: active

Copyright © BroadForward BV 2023 Page 17 of 199


BFX User Manual

• Red: not active


• Orange: active, but modified
• Grey: unknown or active status not determined yet
3.1.3 Parameters
The parameters provided for a flow are:

• Flow id: the id of the flow;


• Description: descriptive text;
• Priority: a number between 0 and 100 (inclusive) setting the flow’s priority, an attribute
used when evaluating flow conditions (see section 3.3.3);
• Flow group: the group to which the flow belongs. Flows can be grouped to improve
the manageability in case of a large number of flows. Enter the group name or make
a choice from the groups already available;
• Last updated: the date/time and user id of the last modification of the flow;
• Subflow in: a list of flows in which the flow is used as subflow.
The flow’s description, priority and group can be modified by clicking the value and entering a
new value.

3.1.4 Conditions
The flow conditions determine the parameters used for selecting the flow for an incoming
message. Of all the flows whose conditions are met for a specific message, the message is
sent in the flow with the highest priority. See section 3.3.8 for more details on the
configuration of flow conditions, and section 3.3.3 for more information on setting the priority.

3.1.5 Tracing
The tracing pane defines which tracing rules are applied to messages entering the flow. See
section 3.3.9 for more details on the configuration of the tracing.

3.1.6 Steps
The flow steps define what happens with the message as it traverses the flow. A flow step is
implemented by a BFX module. Each module is individually configured for the particular step
in the flow it represents. A module can be included in the flow multiple times. See section 0
for more details on the configuration of flow steps.

3.2 Creating a flow


To create a new flow, select Add flow from the Flow menu.

Copyright © BroadForward BV 2023 Page 18 of 199


BFX User Manual

C REATING A F LOW

Provide a flow id in the edit box, and choose Create. A flow id may consist of maximum 32
of allowed characters: letters a through z (either case), hyphen (-) and/or numbers 0 through
9. Flow ids that already exist cannot be used. Flow ids are not case sensitive. After a flow is
created, the flow id cannot be changed anymore.

An empty flow is created which can be configured as explained in section 3.3. To duplicate a
flow configuration, specify a flow from the Duplicate from box.

The new flow is not validated and not active.

3.3 Modifying an existing flow


3.3.1 Flow id
Flow ids cannot be edited. They are set when added (or duplicated). To rename a flow,
create a duplicate flow (using Add flow from the Flow menu) and remove the original one.

3.3.2 Description
To modify the flow description, click on the description (or the indicator), edit the
description and press Enter.

3.3.3 Priority
To modify the flow priority, click on the priority, and enter a new number. Valid numbers are
between 0 and 100 (inclusive).

The priority determines which flow is evaluated first from a set of flows that:

1. have the same protocol module as input (i.e. first step in the flow), and
2. have conditions that evaluate to “true”, and
3. are not subflows.
In other cases, the priority is not relevant.

The highest priority number is evaluated first, then the second highest, etc. For example, a
flow with priority 20 is evaluated before a flow with priority 10.

Between flows that are not subflows and have the same module as first step in the flow, the
priority must be different.

Copyright © BroadForward BV 2023 Page 19 of 199


BFX User Manual

3.3.4 Flow Group


To modify the flow group, click on the group name (or the indicator), edit the group
name and press Enter. Alternatively, select an existing group from the drop-down list. A flow
group may consist of a maximum 32 of allowed characters: letters a through z (either case),
hyphen (-) and/or numbers 0 through 9.

To remove a flow from a group, provide an empty flow group.

3.3.5 Log level


The log level of an individual flow can be set. Click on the current value, and make a choice
from the select box. See section 22 of the BFX Operation and Configuration Manual for more
information on logging.

3.3.6 Validation status


To validate the flow, click on the current value, and choose Validate now from the select
box. See section 3.4.5 for more information.

3.3.7 Active status


To modify the flow activate status, click on the current value, and choose the desired value
from the select box. See sections 3.5 and 3.6 for more information.

3.3.8 Conditions
The number of flow conditions is limited to 128. Next to meta information (see below), for
subflows, the (Diameter) command flags and every Event and Attribute Value Pair (AVP) of
the incoming message can be tested using a number of operations.

The Events and AVPs that are available for flow conditions, are determined by an AVP file.
Choose this file by making a selection from the list in the AVP file select box. To enable the
select box, indicate if the flow is a subflow using the Subflow checkbox.

The (Diameter) command flags can be tested for being set or cleared. Specify the bits by
using a digit (0..7) or a letter (R, T, E, P). Multiple bits can be specified, separated by a
semicolon. The condition is supported for requests and responses; choose the condition from
the Add Request condition or Add Response condition button.

The “magnifying glass” button is available for viewing the the file contents (editing is done
through the Nodes and Connections GUI section). Note that the mere selection of an AVP
file in itself is not part of the condition; the condition consists of the entries that are selected
from the Add condition buttons.

The choice for the AVP file is determined by the nature of the incoming traffic. The list of
available files is configured on the BFX server; see the BFX Installation and Upgrade Manual
and BFX Operation and Configuration Manual for more information.

Copyright © BroadForward BV 2023 Page 20 of 199


BFX User Manual

F LOW CONDITIONS SECTION - EXAMPLE

For subflows, it is possible (but not required) to select a condition AVP file. If no AVP file is
selected, only the so called meta-AVPs are available. The following meta-AVPs are available
under the Add condition button, regardless of the choice for the condition AVP file.

1. Local port: the IP port on the BFX server where the message was received
(applicable to non-SS7 only);
2. Source host: the IPv4 or IPv6 address on the remote node from where the message
was sent (applicable to non-SS7 only);
3. Hostname: the hostname of the host that BFX is running on;
4. Application id: the Application ID as present in the incoming message (applicable to
Diameter, MAP and INAP only);
5. Peer id: the peer id where the incoming request message originated from (applicable
to Diameter, ENUM, HTTP and SIP). Use free text, or choose from the selection of
peer ids presented (these are configured in the Nodes and Connections GUI section);
6. Process role: the process role for SCCP (1=ASP/IPSP; 2=SGP);
7. Routing label: this field can be used to test for the availability of a Diameter routing
label;
8. Service variant: the service variant (ITU-T or ANSI) of the association on which the
message was received (SCCP only);
9. Source association: the association on which the message was received (SCCP
only);
10. Source link set: the link set containing the association on which the message was
received (SCCP M2PAonly).

For subflows, these additional meta conditions are available:

1. Primary destination: the primary destination label as set by the Routing module;

Copyright © BroadForward BV 2023 Page 21 of 199


BFX User Manual

2. Secondary destination: the secondary destination label as set by the Routing


module;
3. Dialogue continuation: for MAP and INAP flows, this field can be used to test for
presence of dialogue continuation.
Add conditions by clicking one of the Add condition buttons and making a choice. A
content pane is provided for each condition added. Each Event or AVP, either meta or from
the request/response message, can occur multiple times in the set of conditions.

Determine the way the conditions are applied by using the Match selection. Set to All
conditions in case all conditions need to be matched before the flow is selected (logical
“AND”), or Any condition for matching at least one condition (logical “OR”).

For each condition, open the pane and edit the additional information: AVP aspect, operation
and value. Not all aspects and operations are available to each (meta-)AVP.

The following AVP aspects are available:

1. Value: the condition is applied to the value of the AVP;


2. Length: the condition is applied to the length of the AVP (in bytes).
The following operations are available:

1. Equals: the condition is true if the AVP value matches the value provided;
2. Not Equals: the condition is true if the AVP value does not match the value provided;
3. Range: the condition is true if the AVP value is in the range provided, boundaries
included;
4. Not in Range: the condition is true if the AVP value is not in the range provided,
boundaries included;
5. Prefix: the condition is true if the AVP value matches the prefix value provided (as
string);
6. Not Prefix: the condition is true if the AVP value does not match the prefix value
provided (as string);
7. Contains: the condition is true if the AVP value contains the value provided (as
string);
8. Not Contains: the condition is true if the AVP value does not contain the value
provided (as string);
9. Suffix: the condition is true if the AVP value ends in the value provided (as string);
10. Not Suffix: the condition is true if the AVP value does not end in the value provided
(as string);
11. Present: the condition is true if the AVP value is present;
12. Not Present: the condition is true if the AVP value is not present;
13. Greater Than: the condition is true if the AVP value is greater than the value
provided;

Copyright © BroadForward BV 2023 Page 22 of 199


BFX User Manual

14. Less Than: the condition is true if the AVP value is less than the value provided;
15. Netmask: the condition is true if the AVP value matches the IPv4 or IPv6 netmask
provided;
16. Occurs: this event occurs in the incoming message (only for Events; other operations
are not available for Events);
17. Does not Occur: this event does not occur in the incoming message (only for Events;
other operations are not available for Events).
Values are stored when they are changed, e.g. when the edit box data is modified and focus
is removed from the edit box. Hints on data validity are provided via a tooltip.

Modify the order of the conditions by using the “up” and “down” arrow buttons. Remove
conditions by clicking the “remove” button. After confirmation, the condition is removed.

Individual conditions in a flow can be switched off or on by clicking the “connect” /


“disconnect” button. Switching off (“disable”) means that the individual condition is not part of
the flow conditions evaluation, but its configuration remains intact (unlike removal of a
condition).

The green “connect” button indicates the condition is switched on (and clicking it will switch it
off); the red “disconnect” button indicates the condition is switched off (and clicking it will
switch it on). Switching off or on a condition invalidates the flow.

When selecting another AVP file, the current selection of conditions may no longer be
entirely valid, since different AVPs are now available. A confirmation dialog is presented.

C ONFIRMATION DIALOG

Choose from:

• Discard config: the condition configuration is removed, with the exception of the
meta information.
• Keep config: the condition configuration is not removed. Warning: this may lead to
unexpected results, since AVPs may be configured which are not in the AVP file (and
hence not in the messages processed). This option is available for the convenience of
experienced users, but should be understood well before using.
• Cancel: to cancel the AVP file selection change.

Copyright © BroadForward BV 2023 Page 23 of 199


BFX User Manual

The user is asked to make a conscious choice. If the consequences of choosing Keep
config are not understood, it is recommended to choose Discard config.

In addition to literal values, the contents of an AVP can also be used for comparison. Click the
Switch to AVP selection button to change the edit box into a select box, from which an AVP
can be chosen (from the request or response set). Thus, for example a condition like "AVP1 >
AVP2" can be defined. Click the Switch to literal value button to switch back to an edit box
for literal values. This functionality is provided only in case of a subflow and an operation on
AVP-value for non-meta AVPs (exception: primary and secondary label).

A checkbox Test all occurrences is available to indicate that, in case of multiple


occurrences of the AVP in the message, condition matching should be applied to all
occurrences (and not just the first one).

Two sets of conditions can be specified. These are evaluated independently, and the results
are combined in a logical AND or OR relation. BFX uses this optimization: in an OR relation,
the second set is not evaluated if the first one yields true. And in case of an AND relation, the
second set is not evaluated if the first set yields false. An empty condition set yields true. The
AVP file selection applies to both sets.

A second set can be added via the button Add 2nd set that is placed with the first set. The
second set can be removed via the button Remove 2nd set that is placed with the second
set. The first and second set can be swapped via the button Swap 1st/2nd set that is
placed with the first set.

3.3.8.1 Tokens
When entering literal values, the use of tokens is provided. Tokens are run-time expanded
into actual values at condition evaluation time.

The following tokens are supported.

1. $[current_time]: current time in seconds since the UNIX epoch (1-JAN-1970).


Example:

T OKEN USAGE IN CONDITIONS - EXAMPLE

3.3.8.2 Limiting the number of messages entering a flow


For subflows the number of messages entering the flow when all conditions match can be
limited. The limit can be set to a value per second, minute or hour; a value of 0 means
unlimited; the configured limit applies to each BFX node separately. The limit is applied as a
logical AND with the other conditions. I.e. when all other conditions of a subflow match but the
number of messages entering the flow has already reached the configured limit in the current
measurement interval, effectively the flow conditions do not match and the Flow Selector step
in which it is used will continue to check the conditions of the next selected subflow.

Copyright © BroadForward BV 2023 Page 24 of 199


BFX User Manual

SNMP Notifications and logs for the limit reached, including watermarks can be configured in
the Flow Selector section of the mf.cfg configuration file.

3.3.9 Tracing
The tracing section determines the tracing rules that are applied on messages entering this
flow.

F LOW T RACING SECTION - E XAMPLE

The enabled parameter enables or disables (by checking or unchecking the checkbox
respectively) the operation of all selected tracing rules on this particular flow. It will not affect
the behaviour of the tracing rules in other flows.

Rule selection: Select a tracing rule group or Any for a selection of tracing rules to choose
from (subject to configuration; see the BFX Operation and Configuration Manual). From the list
of available tracing rules listed in the Options section, drag rules to the Selected section to
include them in the selection of rules to evaluate. Drag in opposite direction to deselect a rule,
and drag inside the Selected section to change the rule order. Only rules that have been
validated are presented for selection.
All the selected tracing rules are evaluated for the incoming messages. When one or more
rules match, the message is marked for tracing.

The throttle parameter is a number between 0 and 999 which sets the maximum amount of
messages that may be marked for tracing in this flow per time unit. It can be changed by
clicking the value and entering a new value. Set to 0 if no limit is desired. The throttle unit
specifies the time unit used for the throttle parameter. It can be selected among the following
options:

• Second

• Minute

• Hour

Copyright © BroadForward BV 2023 Page 25 of 199


BFX User Manual

If a throttle is configured (i.e. the throttle value is greater than 0) and the amount of messages
marked in this flow in a throttle unit time reaches this value, no more message matching the
conditions will be marked until the next throttle unit. BFX will also log a message in the tracing
facility alerting that this limit has been reached. For example: when the throttle is set to 2 and
throttle unit to minute and 4 messages arrive in less than one minute matching the selected
tracing rules, the first two will be logged and upon arrival of the third one BFX will log the alert
that the throttle has been reached and no more messages will be logged until this minute
finishes.

Any change of these parameters will require a new validation and activation of the flow before
they make any effect on the flow.

Tracing rules are defined via the Tracing Rules GUI section. See chapter 5 for more
information.

3.3.10 Steps
Several modules are provided, which can be used in flow steps1.

1. Conversion: the Function Module capable of data conversion between modules;


2. Flow Selector: the Function Module capable of in-flight flow selection;
3. Routing: the Function Module capable of routing messages to external destinations;
4. Storage: the Function Module capable of storing and retrieving data of arbitrary kind,
not limited to a session context (operations supported are add, modify, search and
delete);
5. List: the Function Module capable of loading and consulting look-up tables with data
of arbitrary kind, not limited to a session context (operations supported are load and
match);
6. Notification: the Protocol Module capable of sending out notifications using message
contents;
7. Diameter: the Protocol Module implementing the Diameter protocol, supporting any
Diameter application;
8. RADIUS: the Protocol Module implementing the RADIUS protocol;
9. LDAP: the Protocol Module for performing LDAP operations (operations supported
are add, search, authenticate and delete);
10. ENUM: the Protocol Module for performing ENUM operations to external sources,
and receiving incoming ENUM requests;
11. MAP: the Protocol Module implementing the SS7 MAP protocol;
12. INAP: the Protocol Module implementing the SS7 INAP protocol;
13. SCCP: the Protocol Module implementing the SS7 SCCP protocol;

1 The exact availability depends on the BFX licenses installed

Copyright © BroadForward BV 2023 Page 26 of 199


BFX User Manual

14. SCCP User Part: the Protocol Module providing the capability to decode SCCP User
Part application data;
15. MAP-Diameter IWF: the Function Module implementing 3GPP TS 29.305;
16. HTTP: the Protocol Module receiving/sending formatted data over an HTTP
connection;
17. SIP: the Protocol Module receiving and responding to SIP requests;
18. Dump: the Function Module for generating a readable dump of the message contents
in the system’s log;
A content pane is provided for each step in the flow. A module can occur multiple times in the
set of flow steps.

F LOW STEPS SECTION - EXAMPLE

Add steps by clicking the Add step button and making a choice.

Modify the order of the steps by using the “up” and “down” arrow buttons.

Individual steps in a flow can be switched off or on by clicking the “connect” / “disconnect”
button. Switching off means that the individual step is not part of the flow execution, but its
configuration remains intact (unlike removal of a step).

The green “connect” button indicates the step is switched on (and clicking it will switch it off);
the red “disconnect” button indicates the step is switched off (and clicking it will switch it on).
Switching off or on a step invalidates the flow.

Remove steps by clicking the “remove” button. After confirmation, the step is removed.
Removing a step invalidates the flow.

Open the pane to edit the step configuration. Values are stored when they are changed, e.g.
when the edit box data is modified and focus is removed from the edit box. Hints on data
validity are provided via a tooltip. Mandatory data which is still empty is indicated by a red
asterisk next to the edit box.

Each pane contains a flow step description which can be edited by clicking on it (or the
indicator). This description has no effect on the actual flow step configuration; it is
meant only for convenience when designing flows.

Copyright © BroadForward BV 2023 Page 27 of 199


BFX User Manual

Next to the step description, a “comment” icon is displayed. Clicking this opens/closes a
comments area where additional comments for the step can be provided. If comments are
provided, the icon is not displayed, but the comment area is displayed instead. These
comments have no effect on the actual flow step configuration.

See the following subsections for specific details on the module configuration.

3.3.10.1 Configuring EDR generation


The following configuration parameters apply to EDR generation.

C ONFIGURING EDR GENERATION

1. EDR for incoming: If checked, EDRs are generated for incoming messages
(requests or responses, depending on the value of Mode).
2. EDR for outgoing: If checked, EDRs are generated for outgoing messages (requests
or responses, depending on the value of Mode).
3. EDR template: The template defines the EDR content, format, filename and more.
Choose the EDR template from a pre-set list of named templates.
This parameter is only available when EDR for incoming or EDR for outgoing is
set.
4. EDR outgoing template: The template defines the EDR content, format, filename
and more for the EDRs for ‘outgoing’ messages (i.e. failed, rejected or discarded
messages) in the first step in a main flow. This template is optional and only to be
used when different templates are needed for EDRs for incoming and outgoing
messages. Choose the EDR template from a pre-set list of named templates.
This parameter is available for Diameter, ENUM, HTTP, SCCP and SIP.
5. EDR incoming template: The template defines the EDR content, format, filename
and more for EDRs for the ‘incoming’ messages (i.e. received responses) in Send
out REQ / Wait for RSP steps in a flow. This template is optional and only to be
used when different templates are needed for EDRs for incoming and outgoing
messages. Choose the EDR template from a pre-set list of named templates.
This parameter is available for Diameter, ENUM and HTTP.
The “magnifying glass” button is available for viewing the EDR template contents (editing is
done through the Nodes and Connections GUI section).

3.3.10.2 Configuring the Conversion module


The Function Module Conversion implements a rich set of conversion/translation functions or
operations that can be applied to the incoming set of Attribute Value Pairs (AVPs). The result
of the operations is stored in the outgoing set of AVPs. By embedding the Conversion

Copyright © BroadForward BV 2023 Page 28 of 199


BFX User Manual

module between two Protocol Modules, a flexible and versatile protocol translation can be
obtained without the need for bespoke software development.

C ONFIGURING C ONVERSION

The module requires these parameters.

1. Input AVP set: choose the input data set defining the incoming AVPs. Make sure that
the set chosen matches the configuration of the flow steps preceding and following
this conversion step (these steps may be other Conversion steps).
A number of sets is provided by BroadForward. Management of the AVP sets is done
through the Nodes and Connections GUI section.
2. Output AVP set: choose the output data set defining the outgoing AVPs. Similar
remarks as with Input AVP set apply.
3. Applies to: choose Requests to requests if the module operates on request
AVPs or Responses to responses if the module operates on response AVPs. For
cases where AVPs need to be converted form a response message to a request
message, the choice Responses to requests is available. Vice versa, the choice
Requests to responses is available.
Click the Configure the conversion of events button (‘hammer’ icon) to provide
further details on the desired conversion functions. See section 3.4 for more
information.
This parameter must be aligned with the configuration of the flow steps preceding and
following this step.
4. On error: the action to take upon an error situation. Choose Abort to stop further
message processing and return to the first step of the (main) flow for error handling

Copyright © BroadForward BV 2023 Page 29 of 199


BFX User Manual

(the exact handling of this depends on the applicable protocol), or Continue to


continue the flow.
5. Create copy: by default, the operations are applied to the original request or
response data. Check this box to create a copy of the message, upon which the
configured conversion operations will be applied. The original message will remain
unchanged. This is useful when chaining multiple Protocol Modules, which require the
original request or response data.
This parameter is only available when Applies to is set to Requests to requests
or Responses to requests.
The lifetime of a copied request starts at the beginning of the Conversion step which
has the Create copy checked. All Conversion events in that step apply to the copied
request. The copied request is then used in subsequent Application Modules in the
flow, until it is removed:
a) at the start of a next Conversion step (unless “Keep copy” is selected in that next
Conversion step), or
b) when the message leaves the flow or - in case of flow switching - the subflow
(unless “Keep copy” is selected in the Flowselector step).
6. Create new: Check this box to create a new, empty request or response message to
which the converted AVPs will be added. The original request or response message
will remain unchanged.
This parameter is only available when Applies to is set to Requests to requests
or Responses to requests. See Create copy for a description of the scope of a
newly created request, which is similar to a copied request.
7. Keep copy: Check this box to operate on a copy that was created in a previous
Conversion step. If there was no previous Conversion step, or previous Conversion
steps did not have either of Create copy or Create new checked, then checking
this box has no effect. When checked, Create copy and Create new are
unchecked.
8. Discard response: Check this box to erase the response message after the
execution of the conversion step. This option can be used when a new response will
be created further down the flow (or a subflow) and the current response message
information is not to be retained or re-used.
9. Key for store: Select a key to use in the database for store/retrieve operations. The
default key is Session-Id. The list of options is taken from the output AVP set, in
conjunction with the choice for the Applies to setting.
10. Expiry for store: Select where the expiry time of a record in the store should be
taken from (when used). Choose Default for the system wide setting, From AVP to
take the value from an AVP in the message (in seconds), or Value to specify a timer
value (in seconds) specific for this flow step.
11. AVP for store expiry: Available when Expiry for store is set to From AVP.
Designates the AVP (taken from the Input AVP set) to use for the expiry time (in
seconds; max 30 days=2592000 sec).
12. Value for store expiry: Available when Expiry for store is set to Value. Sets the
value to use for the expiry time (in seconds; max 30 days=2592000 sec).

Copyright © BroadForward BV 2023 Page 30 of 199


BFX User Manual

13. Restart expiry for store: Specify whether the expiry timer for a record restarts each
time the record is retrieved, or not.
The “magnifying glass” button is available for viewing the AVP set contents (editing is done
through the Nodes and Connections GUI section).

When making changes to the AVP set selection or the Applies to parameter, the current
configuration of event details may no longer be entirely valid, since different AVPs are now
available. A confirmation dialog is presented.

C ONFIRMATION DIALOG

• Discard config: the event details configuration is removed.


• Keep config: the event details configuration is not removed. Warning: this may lead
to unexpected results, since AVPs may be configured which are not in the AVP file
(and hence not in the messages processed). This option is available for the
convenience of experienced users, but should be understood well before using.
• Cancel: to cancel the selection change.
The user is asked to make a conscious choice. If the consequences of choosing “Keep” are
not understood, it is recommended to choose “Discard”.

If the conversion configuration contains references to events that are no longer applicable, a
warning message is given:

A button is provided to discard these so called orphaned events.

Copyright © BroadForward BV 2023 Page 31 of 199


BFX User Manual

3.3.10.3 Configuring the Diameter module


The Protocol Module Diameter provides a Diameter interface to BFX. It is capable of
handling Diameter applications both as client and as server. The information provided in the
Diameter AVPs is available for further usage and modification, e.g. via the Function Module
Conversion.

C ONFIGURING DIAMETER

The module requires these parameters.

1. Protocol template: choose the Diameter application template applicable for the data
communication stream.
A number of templates is provided by BroadForward. Management of the templates is
done through the Nodes and Connections GUI section.
2. Mode: this parameter determines the functional mode of the module for this flow step.
If it acts as a server, i.e. waiting for external requests and sending responses, choose
Wait for REQ in the step receiving the request, and Send out RSP in the step
sending the response. If the module acts as a client, i.e. sending requests to an
external system and waiting for responses, choose Send out REQ / Wait for RSP.
Typically, if the module is in the first and/or last step in the flow, it acts as server. If
the module is in a step in between, it acts as a client.
Note that in case of termination halfway the flow, the sending of an 'error' or
termination response message is handled by the first step in the flow, not the last step
in the flow.
3. Action: this parameter determines the action to perform on the received response
data for this flow step. If Insert in REQ is selected, the received response data is
inserted into an existing request message.
If Create RSP is selected, the received response data is used to create a new
response message. An existing response message is automatically deleted.
If Insert in RSP is selected, the received response data is inserted into an existing
response message. When no response message exists, a new one is created.

Copyright © BroadForward BV 2023 Page 32 of 199


BFX User Manual

This parameter is only available when Mode is set to Send out REQ / Wait for
RSP.

4. On error: the action to take upon an error situation. Choose Abort to stop further
message processing and return to the first step of the (main) flow for error handling
(the exact handling of this depends on the applicable protocol), or Continue to
continue the flow.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP or Send out RSP with Keep message and continue set.

5. Add mandatory AVPs: Defines whether mandatory AVPs should be added to the
Diameter request or response. If checked, the Origin-Host and Origin-Realm AVPs
are added (if not already present) with values as defined in the Diameter
configuration. For Diameter responses, the Result-Code AVP is also added (if not
already present) with value "DIAMETER_SUCCESS". This is typically needed for
flows from non-Diameter to Diameter or vice versa.
6. New e2e id: Defines whether a new end-to-end identifier is to be generated by BFX.
If not, the existing end-to-end identifier from the incoming request is used. The
original end-to-end id is restored upon leaving the flow step.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP.

7. Discard visited peers: Defines whether already visited peers from previous
Diameter out steps are discarded or not during the peer selection in this step.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP.

8. Keep message and continue: Defines whether the message is to be kept after
sending out the response, to be able to continue with the flow. This parameter is only
available when Mode is set to Send out RSP.
The “magnifying glass” button is available for viewing the Protocol template contents (editing
is done through the Nodes and Connections GUI section).

EDR configuration is explained in section 3.3.10.1.

3.3.10.4 Configuring the Dump module


The Function Module Dump is used for generating a readable dump of the message contents
in the system’s log. It can be inserted at any step in the flow.

Copyright © BroadForward BV 2023 Page 33 of 199


BFX User Manual

C ONFIGURING D UMP

The Function Module Dump requires these parameters.

1. For request: the contents of the current request message is dumped.


2. For original request: the contents of the original request message is dumped.
3. For response: the contents of the response message is dumped.
4. For clipboard: the contents of the clipboard is dumped.
5. Tracing for request: for messages selected by tracing rules in a flow, the contents of
the request message is logged.
6. Tracing for original request: for messages selected by tracing rules in a flow, the
contents of the original request message is logged.
7. Tracing for response: for messages selected by tracing rules in a flow, the contents
of the response message is logged.
8. Tracing for clipboard: for messages selected by tracing rules in a flow, the contents
of the clipboard is logged.

3.3.10.5 Configuring the ENUM module


The Protocol Module ENUM provides an ENUM-out interface to BFX for sending ENUM
requests and receiving responses. The information provided in the data is available for
further usage and modification, e.g. via the Function Module Conversion.

Copyright © BroadForward BV 2023 Page 34 of 199


BFX User Manual

C ONFIGURING ENUM

The module requires these parameters.

1. Protocol template: choose the ENUM data template applicable for the data
communication stream. The data template defines the query to make and how to
process the response. A number of example templates is provided by BroadForward.
Management of the templates is done through the Nodes and Connections GUI
section.
2. Mode: this parameter determines the functional mode of the module for this flow step.
If it acts as a server, i.e. waiting for external requests and sending responses, choose
Wait for REQ in the step receiving the request, and Send out RSP in the step
sending the response. If the module acts as a client, i.e. sending requests to an
external system and waiting for responses, choose Send out REQ / Wait for RSP.
Typically, if the module is in the first and/or last step in the flow, it acts as server. If
the module is in a step in between, it acts as a client.
Note that in case of termination halfway the flow, the sending of an 'error' or
termination response message is handled by the first step in the flow, not the last step
in the flow.
3. On error: the action to take upon an error situation. Choose Abort to stop further
message processing and return to the first step of the (main) flow for error handling
(the exact handling of this depends on the applicable protocol), or Continue to
continue the flow.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP.

4. Action: this parameter determines the action to perform on the received response
data for this flow step. If Insert in REQ is selected, the received response data is
inserted into an existing request message.

Copyright © BroadForward BV 2023 Page 35 of 199


BFX User Manual

If Create RSP is selected, the received response data is used to create a new
response message. An existing response message is automatically deleted.
If Insert in RSP is selected, the received response data is inserted into an existing
response message. When no response message exists, a new one is created.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP.

5. Server(s): the IP address(es) to send the query to. Multiple addresses may be
provided, separated by a comma. If the first server does not respond, the second etc.
is tried.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP.

6. Transport: the transport method to use: UDP or TCP.


This parameter is only available when Mode is set to Send out REQ / Wait for
RSP.

7. Timeout: the timeout in milliseconds applied when waiting on a response.


This parameter is only available when Mode is set to Send out REQ / Wait for
RSP.

8. Prefix: the prefix to apply to the ENUM query name.


This parameter is only available when Mode is set to Send out REQ / Wait for
RSP.

9. Suffix: the suffix to apply to the ENUM query name.


This parameter is only available when Mode is set to Send out REQ / Wait for
RSP.

The “magnifying glass” button is available for viewing the Protocol template contents (editing
is done through the Nodes and Connections GUI section).

EDR configuration is explained in section 3.3.10.1.

3.3.10.6 Configuring the Flow Selector module


The Function Module Flow Selector allows dispatching to other flows, and execution of flows
as subroutine of the current flow.

Copyright © BroadForward BV 2023 Page 36 of 199


BFX User Manual

C ONFIGURING FLOW SELECTOR

The module requires these parameters.

1. Flow selection: select a flow group or Any to provide a selection of flows to choose
from (subject to configuration; see the BFX Operation and Configuration Manual).
From the list of available subflows listed in the Options section, drag subflows to the
Selected section to include them in the selection of subflows to evaluate. Drag in
opposite direction to deselect a subflow, and drag inside the Selected section to
change the subflow order.
For the subflows selected, the conditions are evaluated in the order as provided.
Matching flow(s) are selected to relay the message to, or to be executed as
subroutine, depending on the other settings for this module.
2. First matching flow only: if this box is checked, only the first subflow with matching
conditions is executed. If unchecked, all subflows for which the conditions match are
executed.
3. Continue this flow: if this box is checked, execution of the current subflow continues
after subflow execution (as in a subroutine). If unchecked, the subflow is relayed to
the flow with matching conditions.
If no subflow is executed (none of the subflow conditions are met), the system will
automatically proceed with the current flow and it is not needed, or even desired, to
check this box.
4. Execute while true: if this box is checked, the flow selector is executed again after
the subflow has been executed. This iteration continues until no subflow is selected
(conditions of all flow candidates evaluate to false), or the maximum number of
iterations has been reached (see below). Only available if Continue this flow is
checked.

Copyright © BroadForward BV 2023 Page 37 of 199


BFX User Manual

5. Maximum nr. of iterations: provide the maximum number of iterations allowed. Only
available if Execute while true is checked.

6. Keep copy: Check this box to continue to operate on a copy of the message that was
created in a previous Conversion step. If there was no previous Conversion step, or
previous Conversion steps did not have either of Create copy or Create new
checked, then checking this box has no effect. Only available if Continue this flow
is checked.
An arrow icon is placed next to the selected subflows, if they occur in the flow list (this
depends on filter settings). Clicking the arrow will open the subflow. Also, the flows listed
under Subflow in in subflow’s Parameters section can be clicked with the same effect.

3.3.10.7 Configuring the HTTP module


The Protocol Module HTTP provides an HTTP interface to BFX for the delivery and receiving
of XML or JSON formatted data. The information provided in the data is available for further
usage and modification, e.g. via the Function Module Conversion.

C ONFIGURING HTTP

The module requires these parameters.

1. Protocol template: choose the HTTP data template applicable for the data
communication stream. The data template defines the data that is available to the
module. For example, when using SOAP, the SOAP template is specified here.
Likewise for JSON or XML as message body format.
A number of example templates is provided by BroadForward. Management of the
templates is done through the Nodes and Connections GUI section.
2. Mode: this parameter determines the functional mode of the module for this flow step.
If it acts as a server, i.e. waiting for external requests and sending responses, choose
Wait for REQ in the step receiving the request, and Send out RSP in the step
sending the response. If the module acts as a client, i.e. sending requests to an

Copyright © BroadForward BV 2023 Page 38 of 199


BFX User Manual

external system and waiting for responses, choose Send out REQ / Wait for RSP.
Typically, if the module is in the first and/or last step in the flow, it acts as server. If
the module is in a step in between, it acts as a client.
Note that in case of termination halfway the flow, the sending of an 'error' or
termination response message is handled by the first step in the flow, not the last step
in the flow.
3. Action: this parameter determines the action to perform on the received response
data for this flow step. If Insert in REQ is selected, the received response data is
inserted into an existing request message.
If Create RSP is selected, the received response data is used to create a new
response message. An existing response message is automatically deleted.
If Insert in RSP is selected, the received response data is inserted into an existing
response message. When no response message exists, a new one is created.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP.

4. Request method: the HTTP method to use: POST, GET, PUT, DELETE or PATCH.
The default method is POST.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP.

5. HTTP version: the HTTP version to use: HTTP/1.1, HTTP/2, HTTP/2 with prior
knowledge or HTTP/2 with TLS.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP.
Note: HTTP/2 support is a licensed option.
6. HTTP max concurrent streams: defines the maximum number of concurrent
streams that the server will allow the client to create.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP and HTTP version is set to a HTTP/2 variant.

7. Request method: the HTTP method to use: POST, GET, PUT, DELETE, PATCH or
AVP based. The default method is POST.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP.

8. AVP Set: Selects named set of AVPs from which the AVP for AVP for method or
AVP for URL can be selected. Uses the Conversion AVP sets.

9. AVP for method: Select the AVP to use for the HTTP request method.
10. URL or IP address: the URL or IP address to send the HTTP request to.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP. Please note that if using HTTPS connections you must use the server name in
the URL that matches the one used in the clients` certificate.
11. AVP for URL: Selects the AVP to use for the URL in the message. Only available in
combination with Proxy or Connect to.
12. Proxy: the URL or IP address of a proxy to send the HTTP request to, when required.
This parameter is only available when Mode is set to Send out REQ / Wait for

Copyright © BroadForward BV 2023 Page 39 of 199


BFX User Manual

RSP. Supported proxy schemes are http(s), socks4(a) and socks5(h). These may be
specified as prefix, while a port number may be specified as suffix, and a
username:password@ string may be embedded between prefix and URL/IP address.
In summary: [scheme://][user:password@]<URL or IP>[:port]
Note: this option is not available in combination with 'HTTP/2 prior knowledge'.
13. Connect to: The host and port to connect to instead of the host and port specified in
the URL. It should be specified as 'host:port', where host can be an IP address or a
hostname.
Examples:
example.com:1111
10.2.0.2:8888.
Only one of Proxy or Connect to can be used.
14. Persistent connections: check this box if HTTP persistent connections are required.
When checked, a single TCP connection is used to send and receive multiple HTTP
request/response pairs, instead of opening a connection for every request/response
pair. This setting is dependent on the external HTTP server capabilities and settings.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP.

15. On error: the action to take upon an error situation. Choose Abort to stop further
message processing and return to the first step of the (main) flow for error handling
(the exact handling of this depends on the applicable protocol), or Continue to
continue the flow.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP.

16. Keep message and continue: Defines whether the message is to be kept after
sending out the response, to be able to continue with the flow. This parameter is only
available when Mode is set to Send out RSP.
The “magnifying glass” button is available for viewing the Protocol template contents (editing
is done through the Nodes and Connections GUI section).

EDR configuration is explained in section 3.3.10.1.

3.3.10.8 Configuring the LDAP module


The Protocol Module LDAP is able to execute an LDAP query and insert the result(s) in the
request or response message data.

Copyright © BroadForward BV 2023 Page 40 of 199


BFX User Manual

C ONFIGURING LDAP

The module requires these parameters.

1. Operation: the LDAP operation to execute. Operations supported are Add, Search,
Authenticate and Delete. If more than one operation is to be performed, insert
multiple LDAP steps in the flow.
2. Action: this parameter determines the action to perform on the received response
data for this flow step. If Insert in REQ is selected, the received response data is
inserted into an existing request message.
If Create RSP is selected, the received response data is used to create a new
response message. An existing response message is automatically deleted.
If Insert in RSP is selected, the received response data is inserted into an existing
response message. When no response message exists, a new one is created.
3. Authentication: currently set to "Simple".
4. Bind DN: an optional string containing Bind DN (Distinguished Name) information for
authentication purposes. Format: attribute=value. Multiple attributes are supported,
separated by a comma.
5. Password: an optional string containing password information, should this be
required by the LDAP server’s authentication process.
6. URI: the LDAP URI is provided as ldap://host:port string. Multiple URIs can be
configured, separated by a comma. These are used as fall-back: if connecting to the
first URI is not successful, the second is tried etc. Both ldaps and ldapi URIs are
supported.
7. Search base: an optional string specifying the base directory to search from.
This parameter is only available when Operation is set to Search.

Copyright © BroadForward BV 2023 Page 41 of 199


BFX User Manual

8. Timeout: an optional LDAP timeout specified in number of seconds (default value:


60). This value is used for connection setup as well as operation execution.
9. Protocol template: the LDAP XML template determines the actual AVPs involved in
the LDAP operations. Depending on the operation, various section are provided
which are used by BFX to create and process the operation and its results. Using
token substation the AVP data can be accessed, e.g. $[Subscription-Type].
Search results are inserted in the flow message data.
A number of example templates is provided by BroadForward. Management of the
templates is done through the Nodes and Connections GUI section.
10. On error: the action to take upon an error situation (i.e. when the server reports
operation execution failure). Choose Abort to stop further message processing and
return to the first step of the (main) flow for error handling (the exact handling of this
depends on the applicable protocol), or Continue to continue the flow.
The “magnifying glass” button is available for viewing the Protocol template contents (editing
is done through the Nodes and Connections GUI section).

3.3.10.9 Configuring the List module


The Function Module List allows the loading of source data, and retrieval of data records
from that source data on the basis of keys which are taken from AVPs in the message
processed by BFX.

The source data to be used is identified by the List Profile; see section 5 for this.

C ONFIGURING LIST

The module requires these parameters.

1. Template: choose the template defining the keys that are used for the List
operations, and what data items are retrieved.
A number of example templates is provided by BroadForward. Management of the
templates is done through the Nodes and Connections GUI section.
2. Applies to: choose Requests if the module operates on request AVPs or
Responses if the module operates on response AVPs. This parameter must be
aligned with the configuration of the flow steps preceding and following this step.

Copyright © BroadForward BV 2023 Page 42 of 199


BFX User Manual

3. Profile: the list profile to use; see the List Profiles GUI section for the management of
these (section 5 in this manual).
4. Match type: choose Longest match to match on the longest prefix found or Exact
match for an exact match.

5. On error: the action to take upon an error situation. Choose Abort to stop further
message processing and return to the first step of the (main) flow for error handling
(the exact handling of this depends on the applicable protocol), or Continue to
continue the flow.
6. Action: this parameter determines where the results of the operation are put.
If Insert in REQ is selected, the result is inserted into an existing request message.
If Create RSP is selected, the result is used to create a new response message. An
existing response message is automatically deleted.
If Insert in RSP is selected, the result is inserted into an existing response
message. When no response message exists, a new one is created.
The “magnifying glass” button is available for viewing the template contents (editing is done
through the Nodes and Connections GUI section).

An arrow icon is placed next to the selected list profile. Clicking the arrow will open the list
profile in the List Profiles GUI section. If the list profile is not visible in this GUI section (due to
filtering options), the first list profile in the list will be opened.

3.3.10.10 Configuring the MAP-Diameter IWF module


The Function Module MAP-Diameter IWF implements the "InterWorking Function (IWF)
between MAP based and Diameter based interfaces (Release 11)", as defined in the 3GPP
29.305 specification.

C ONFIGURING MAP-DIAMETER IWF

The module requires these parameters.

1. Applies to: choose Requests if the module operates on request AVPs or


Responses if the module operates on response AVPs. This parameter must be
aligned with the configuration of the flow steps preceding and following this step.
3.3.10.11 Configuring the Notification module
The Protocol Module Notification allows the sending of notifications to an external receiver.
Currently, only SNMP traps are supported, but other interfaces may become available in the
future. A Notification module is typically used in a subflow, where conditions are tested to
trigger the sending of a notification.

Copyright © BroadForward BV 2023 Page 43 of 199


BFX User Manual

C ONFIGURING N OTIFICATION

The module requires these parameters.

1. Protocol template: choose the Notification protocol template applicable for the data
communication stream.
A number of templates is provided by BroadForward. Management of the templates is
done through the Nodes and Connections GUI section.
2. Applies to: choose Requests if the module operates on request AVPs or
Responses if the module operates on response AVPs. This parameter must be
aligned with the configuration of the flow steps preceding and following this step.
3.3.10.12 Configuring the RADIUS module
The Protocol Module RADIUS provides a RADIUS interface to BFX. It is capable of handling
RADIUS accounting traffic. The information provided in the AVPs is available for further
usage and modification, e.g. via the Function Module Conversion.

C ONFIGURING RADIUS

The module requires these parameters.

3. Protocol template: choose the RADIUS template applicable for the data
communication stream.
A number of templates is provided by BroadForward. Management of the templates is
done through the Nodes and Connections GUI section.
4. Mode: this parameter determines the functional mode of the module for this flow step.
If it acts as a server, i.e. waiting for external requests and sending responses, choose
Wait for REQ in the step receiving the request, and Send out RSP in the step
sending the response. If the module acts as a client, i.e. sending requests to an
external system and waiting for responses, choose Send out REQ / Wait for RSP.
Typically, if the module is in the first and/or last step in the flow, it acts as server. If

Copyright © BroadForward BV 2023 Page 44 of 199


BFX User Manual

the module is in a step in between, it acts as a client.


Note that in case of termination halfway the flow, the sending of an 'error' or
termination response message is handled by the first step in the flow, not the last step
in the flow.
5. Keep message and continue: this checkbox is available to indicate if the message is
to be kept in order for the flow to continue to a next step.
This parameter is only available when Mode is set to Send out RSP.
6. Send to client: this checkbox is available to indicate if the outgoing request is to be
sent to the sender of the initial request (at the start of the flow). (Support for RFC
5176).
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP.

The “magnifying glass” button is available for viewing the Protocol template contents (editing
is done through the Nodes and Connections GUI section).

EDR configuration is explained in section 3.3.10.1.

3.3.10.13 Configuring the Routing module


The Function Module Routing allows routing of messages to external destinations. Two
modes of operation exist: AVP based and Rule based.

For AVP based routing, select AVP based for the Routing parameter.

C ONFIGURING R OUTING (AVP BASED)

In AVP based routing mode, the module requires these parameters.

1. AVP set: choose the data set defining the AVPs available for routing purposes. Make
sure that the set chosen matches the configuration of the flow steps preceding and
following this step.
A number of sets is provided by BroadForward. Management of the AVP sets is done
through the Nodes and Connections GUI section.

Copyright © BroadForward BV 2023 Page 45 of 199


BFX User Manual

2. Applies to: choose Requests if the module operates on request AVPs or


Responses if the module operates on response AVPs. This parameter must be
aligned with the configuration of the flow steps preceding and following this step.
3. Primary/Secondary/Last resort destination from: select the AVP to base the
routing decision on for primary, secondary and last resort destinations respectively.
The set of available AVPs is determined by the choices for the AVP set and Applies
to configuration items. Each of these three entries may be left empty.

4. On error: the action to take upon an error situation. Choose Abort to stop further
message processing and return to the first step of the (main) flow for error handling
(the exact handling of this depends on the applicable protocol), or Continue to
continue the flow.
5. Peer election order set: choose the configuration set that defines the peer election
order from the list of named sets. This election order determines in which order the
PM evaluates the available destinations for a suitable candidate. Management of
these sets is done through the Nodes and Connections GUI section.
The “magnifying glass” button is available for viewing the AVP set contents (editing is done
through the Nodes and Connections GUI section).

For Rule based routing, select Rule based for the Routing parameter.

C ONFIGURING R OUTING (RULE BASED)

In Rule based routing mode, the module requires these parameters.

1. Rule selection: select a routing rule group or Any to provide a selection of routing
rules to choose from (subject to configuration; see the BFX Operation and
Configuration Manual). From the list of available routing rules listed in the Options
section, drag rules to the Selected section to include them in the selection of rules to

Copyright © BroadForward BV 2023 Page 46 of 199


BFX User Manual

evaluate. Drag in opposite direction to deselect a rule, and drag inside the Selected
section to change the rule order. Only rules that have been validated are presented
for selection.
Of all the routing rules whose conditions are met for a specific message, the first rule
and only the first rule that matches is chosen.
The first matching rule is executed to determine the routing destination labels. When
no matching routing rule can be found, this is regarded as an error in the handling of
the message.
Routing rules are defined via the Routing Rules GUI section. See chapter 4 for more
information.
2. On error: the action to take upon an error situation. Choose Abort to stop further
message processing and return to the first step of the (main) flow for error handling
(the exact handling of this depends on the applicable protocol), or Continue to
continue the flow.
3. Peer election order set: choose the configuration set that defines the peer election
order from the list of named sets. This election order determines in which order the
PM evaluates the available destinations for a suitable candidate.
Management of these sets is done through the Nodes and Connections GUI section.

An arrow icon is placed next to the selected routing rules. Clicking the arrow will open the
routing rule in the Routing Rules GUI section. If the routing rule is not visible in this GUI
section (due to filtering options), the first routing rule in the list will be opened.

3.3.10.14 Configuring the INAP module


The Protocol Module INAP provides an SS7 INAP interface to BFX. It is capable of sending
out and receiving SS7 INAP traffic.

Copyright © BroadForward BV 2023 Page 47 of 199


BFX User Manual

C ONFIGURING INAP

The module requires these parameters.

1. Protocol template: choose the INAP template applicable for the data communication
stream.
A number of templates is provided by BroadForward. Management of the templates is
done through the Nodes and Connections GUI section.
2. Mode: this parameter, together with Dialogue direction and Set up new dialogue,
determines the functional mode of the module for this flow step. If it acts as a server,
i.e. waiting for external invokes and returning invokes, results and/or errors, choose
Wait for Invoke(s) in the step receiving the initial invoke(s), and Send out
Invoke, Send out Result or Send out Error in combination with Dialogue
direction set to on Incoming Dialogue in the step returning any invoke, result or
error respectively.
If the module acts as a client, i.e. sending an invoke to an external system and
waiting for external invokes, results and/or errors, choose Send out Invoke in
combination with Dialogue direction set to on Outgoing Dialogue and enable Set
up new dialogue.
When the external system returned any invoke(s) and/or result(s), and a subsequent
invoke, result or error should be sent back, choose Send out Invoke, Send out
Result or Send out Error respectively in combination with the Dialogue direction
set to on Outgoing Dialogue. Disable Set up new dialogue for Send out Invoke
in this case.
Note that when Set up new dialogue is disabled for Send out Invoke, and there is
no outgoing dialogue, the message processing is terminated.
3. Dialogue direction: choose between on Incoming Dialogue and on Outgoing
Dialogue (options vary depending on choice for Mode). See item on Mode for more
information.
4. Dialogue handling: this parameter determines what should be done with the
dialogue after the behavior defined by the Mode, Dialogue direction and Set up
new dialogue has been applied.
If the dialogue specified in Dialogue direction should remain open, choose and
Continue or and Continue (and wait). If the dialogue should be closed
immediately, choose and Close (normal release).
If the dialogue should be closed after first waiting for any aborts, errors or timeouts,
choose and Close (pre-arranged end).
To instruct the INAP module to proxy all messages until the dialogue is closed,
choose and Proxy until Closed. This option is only available if Mode is set to Send
out Invoke, Dialogue direction to on Outgoing Dialogue, and Set up new
Dialogue is on, or if Mode is set to Send out Invoke, Dialogue direction to on
Incoming Dialogue, and these are the first invokes returned on the incoming
dialogue. Note that the dialogues are aborted when the application context name
between the two dialogues is different.
Note that each flow can maintain one incoming dialogue and one outgoing dialogue
simultaneously. Although it cannot maintain multiple outgoing dialogues
simultaneously, it is possible to open and close multiple outgoing dialogues in

Copyright © BroadForward BV 2023 Page 48 of 199


BFX User Manual

sequence.
Note that when the incoming dialogue ends normally, and subsequently the flow
ends, any outgoing dialogue previously opened within this flow and still open is
automatically closed too. In all other cases, any dialogue opened within this flow and
still open when the flow ends is automatically aborted.
5. Invoke action: this parameter determines the action to perform on a received invoke
for this flow step.
If Create REQ is selected, the received invoke data is used to create a new message
request. Any existing message request is deleted
If Insert in REQ is selected, the received invoke data is inserted in the message
request.
If Create RSP is selected, the received invoke data is used to create a new message
response. Any existing message response is deleted.
If Insert in RSP is selected, the received invoke data is inserted in the message
response. When no response message exists, a new message response is created.
When multiple invokes and/or results are received, the Create REQ and Create
RSP only applies to the first processed invoke or result within this step.
For subsequently processed invokes and results, Create REQ falls back to the
Insert in REQ action and Create RSP falls back to the Insert in RSP action.

6. Result action: this parameter determines the action to perform on a received result
for this flow step.
If Create REQ is selected, the received result data is used to create a new message
request. Any existing message request is deleted.
If Insert in REQ is selected, the received result data is inserted in the message
request.
If Create RSP is selected, the received result data is used to create a new message
response. Any existing message response is deleted.
If Insert in RSP is selected, the received result data is inserted in the message
response. When no response message exists, a new message response is created.
When multiple invokes and/or results are received, the Create REQ and Create
RSP only applies to the first processed invoke or result within this step.
For subsequently processed invokes and results, Create REQ falls back to the
Insert in REQ action and Create RSP falls back to the Insert in RSP action.

7. Error action: this parameter determines the action to perform on a received error for
this flow step.
If Create REQ is selected, the received error data is used to create a new message
request. Any existing message request is deleted.
If Insert in REQ is selected, the received error data is inserted in the message
request.
If Create RSP is selected, the received error data is used to create a new message
response. Any existing message response is deleted.
If Insert in RSP is selected, the received error data is inserted in the message
response. When no response message exists, a new message response is created.
8. Set up new dialogue: check to set up a new dialogue (availability of setting varies
depending on choice for Dialogue settings). See item on Mode for more information.

Copyright © BroadForward BV 2023 Page 49 of 199


BFX User Manual

9. Initial INAP specification: choose the initial INAP capability set specification version
to use from the protocol template. In case this version is not specified in the protocol
template, but this protocol template contains a lower specification version, this lower
specification version is used. Note that a lower specification version can also be used
during AC negotiation.
10. SCCP Return Option: check this box if the "return message on error" option is
required in SCCP unitdata messages. If checked, SCCP unitdata service messages
are returned for failed SCCP unitdata messages.
This parameter is only available when Set up new dialogue is checked.
11. SCCP Sequence Control: check this box if SCCP connectionless protocol class 1
(instead of class 0) is required in SCCP unitdata messages. If checked, the sequence
of delivery of SCCP unitdata messages is guaranteed.
This parameter is only available when Set up new dialogue is checked.
12. TCAP Handshake: check this box if a TCAP handshake (e.g. for Fraud Prevention) is
required. To prevent fraud, some remote nodes enforce a TCAP handshake to be
sure that the originator of the message is the owner of the originating address and not
someone spoofing that address. In this case, the dialog is first established by sending
an empty Begin (Dialog Portion but no Component Portion), followed (after successful
dialog establishment) by a Continue message (with Component Portion).
This parameter is only available when Set up new dialogue is checked.
13. TCAP Segmentation: check this box if TCAP segmentation is required. In this case,
the dialog is first established by sending an empty Begin (Dialog Portion but no
Component Portion), followed (after successful dialog establishment) by a Continue
message which now can carry a longer Component Portion.
This parameter is only available when Set up new dialogue is checked.
14. On error: the action to take upon an error situation. Choose Abort to stop further
message processing and return to the first step of the (main) flow for error handling
(the exact handling of this depends on the applicable protocol), or Continue to
continue the flow.
This parameter is only available when Mode is set to Send out Invoke, Send out
Result or Send out Error, and when Dialogue handling is set to and Continue or
and Close (pre-arranged end).

The “magnifying glass” button is available for viewing the Protocol template contents (editing is
done through the Nodes and Connections GUI section).

EDR configuration is explained in section 3.3.10.1.

3.3.10.15 Configuring the MAP module


The Protocol Module MAP provides an SS7 MAP interface to BFX. It is capable of sending
out and receiving SS7 MAP traffic.

Copyright © BroadForward BV 2023 Page 50 of 199


BFX User Manual

C ONFIGURING MAP

The module requires these parameters.

1. Protocol template: choose the MAP template applicable for the data communication
stream.
A number of templates is provided by BroadForward. Management of the templates is
done through the Nodes and Connections GUI section.
2. Mode: this parameter determines the functional mode of the module for this flow step.
If it acts as a server, i.e. waiting for external requests and sending responses, choose
Wait for REQ in the step receiving the request, and Send out RSP in the step
sending the response. If the module acts as a client, i.e. sending requests to an
external system and waiting for responses, choose Send out REQ / Wait for RSP.
Typically, if the module is in the first and/or last step in the flow, it acts as server. If
the module is in a step in between, it acts as a client.
The Send out REQ / Wait for REQ or RSP mode is used for sending a request to
an SS7 server for which it is possible that another request is received within the same
dialogue before the final response is received and for which the request data should
be sent into the message flow. When any request data should be collected and sent
together with the response data, use the Send out REQ / Wait for RSP mode.
The Send out RSP / Wait for REQ or RSP mode is used for returning a response
on a previously received request within a dialogue for which it is possible that another
request is received within the same dialogue before the final response is received
and for which the request data should be sent into the message flow.
The Send out RSP / Wait for REQ mode is used when MAP invoke or result
segmentation is applicable, and after sending the response, another request is
received within the same dialogue. When MAP invoke segmentation is applicable,
and each request should start within a new message flow, use the Send out RSP

Copyright © BroadForward BV 2023 Page 51 of 199


BFX User Manual

mode.
The Send out REQ / Wait for RSP segment mode is used when MAP result
segmentation is applicable, and each response data segment should be sent into the
message flow directly. When response data segments should be collected and sent
together with the response data, use the Send out REQ / Wait for RSP mode.
Note that in case of termination halfway the flow, the sending of an 'error' or
termination response message is handled by the first step in the flow, not the last step
in the flow.
3. Set up new dialogue: check this box if a new dialogue is to set up, or an existing
remote originating dialogue is used for this flow step. A remote originating dialogue
only exists when a new request from SS7 MAP was previously received (in the first
step of this flow) and only as long as no response for this request has been returned
yet (in any previous step). If an existing remote originating dialogue should be used,
but no such dialogue exists, the message processing is terminated.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP (segmented or not) or Send out REQ / Wait for REQ or RSP.

4. SCCP Return Option: check this box if the "return message on error" option is
required in SCCP unitdata messages. If checked, SCCP unitdata service messages
are returned for failed SCCP unitdata messages.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP (segmented or not) or Send out REQ / Wait for REQ or RSP, and Set up
new dialogue is checked.

5. SCCP Sequence Control: check this box if SCCP connectionless protocol class 1
(instead of class 0) is required in SCCP unitdata messages. If checked, the sequence
of delivery of SCCP unitdata messages is guaranteed.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP (segmented or not) or Send out REQ / Wait for REQ or RSP, and Set up
new dialogue is checked.

6. TCAP Handshake: check this box if a TCAP handshake (e.g. for Fraud Prevention) is
required. To prevent fraud, some remote nodes enforce a TCAP handshake to be
sure that the originator of the message is the owner of the originating address and not
someone spoofing that address. In this case, the dialog is first established by sending
an empty Begin (Dialog Portion but no Component Portion), followed (after successful
dialog establishment) by a Continue message (with Component Portion).
Note that this is only supported for MAP Application Context (AC) versions 2 and
higher.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP (segmented or not) or Send out REQ / Wait for REQ or RSP, and Set up
new dialogue is checked.

7. TCAP Segmentation: check this box if TCAP segmentation is required. In this case,
the dialog is first established by sending an empty Begin (Dialog Portion but no
Component Portion), followed (after successful dialog establishment) by a Continue
message which now can carry a longer Component Portion.
Note that this is only supported for MAP Application Context (AC) versions 2 and
higher.

Copyright © BroadForward BV 2023 Page 52 of 199


BFX User Manual

This parameter is only available when Mode is set to Send out REQ / Wait for
RSP (segmented or not) or Send out REQ / Wait for REQ or RSP, and Set up
new dialogue is checked.

8. Initial MAP AC Version: choose the initial MAP Application Context (AC) version to
use from the protocol template.
This parameter is only available when Mode is set to Wait for REQ, Send out REQ
/ Wait for RSP (segmented or not) or Send out REQ / Wait for REQ or RSP.

9. On error: the action to take upon an error situation. Choose Abort to stop further
message processing and return to the first step of the (main) flow for error handling
(the exact handling of this depends on the applicable protocol), or Continue to
continue the flow.
This parameter is only available when Mode is set to Send out REQ / Wait for
RSP (segmented or not), Send out REQ segment / Wait for RSP or Send out
REQ / Wait for REQ or RSP.

10. Keep message and continue: Defines whether the message is to be kept after
sending out the response, to be able to continue with the flow. This parameter is only
available when Mode is set to Send out RSP or Send out RSP / Wait for REQ.
The “magnifying glass” button is available for viewing the Protocol template contents (editing
is done through the Nodes and Connections GUI section).

3.3.10.16 Configuring the SCCP module


The Protocol Module SCCP provides an SS7 SCCP interface to BFX. It is capable of sending
out and receiving SS7 SCCP traffic.

C ONFIGURING SCCP

The module requires these parameters.

1. Protocol template: choose the SCCP template applicable for the data
communication stream.
A number of templates is provided by BroadForward. Management of the templates is
done through the Nodes and Connections GUI section.
2. Mode: this parameter determines the functional mode of the module for this flow step.
If it acts as a server, i.e. waiting for external requests and sending responses, choose
Wait for MSU in the step receiving the message, and Send out MSU in the step
sending the message.

Copyright © BroadForward BV 2023 Page 53 of 199


BFX User Manual

Note that in case of termination halfway the flow, the sending of an 'error' or
termination response message is handled by the first step in the flow, not the last step
in the flow.
3. On error: the action to take upon an error situation. Choose Abort to stop further
message processing and return to the first step of the (main) flow for error handling
(the exact handling of this depends on the applicable protocol), or Continue to
continue the flow.
This parameter is only available when Mode is set to Send out MSU.
4. Keep message and continue: Defines whether the message is to be kept after
sending out the message, to be able to continue with the flow. This parameter is only
available when Mode is set to Send out MSU.

The “magnifying glass” button is available for viewing the Protocol template contents (editing is
done through the Nodes and Connections GUI section).

3.3.10.17 Configuring the SUP module


The Protocol Module SCCP User Part (SUP) provides the capability to decode SCCP User
Part application data. It handles the decoding of TCAP MAP and TCAP INAP/Camel
application data to internal BFX format.

C ONFIGURING SUP

The module requires these parameters.

1. Protocol template: choose the SUP template applicable for the data mapping
instructions.
A number of templates is provided by BroadForward. Management of the templates is
done through the Nodes and Connections GUI section.
The “magnifying glass” button is available for viewing the Protocol template contents (editing is
done through the Nodes and Connections GUI section).

3.3.10.18 Configuring the SIP module


The Protocol Module SIP provides a SIP-in interface to BFX for receiving SIP requests and
sending responses. The information provided in the data is available for further usage and
modification, e.g. via the Function Module Conversion.

Copyright © BroadForward BV 2023 Page 54 of 199


BFX User Manual

C ONFIGURING SIP

The module requires these parameters.

2. Protocol template: choose the SIP data template applicable for the data
communication stream. The data template defines the query to make and how to
process the response. A number of example templates is provided by BroadForward.
Management of the templates is done through the Nodes and Connections GUI
section.
3. Mode: this parameter determines the functional mode of the module for this flow step.
If it acts as a server, i.e. waiting for external requests and sending responses, choose
Wait for REQ in the step receiving the request, and Send out RSP in the step
sending the response. If the module is in the first and/or last step in the flow, it acts as
server. Currently the SIP PM only supports the server role.
Note that in case of termination halfway the flow, the sending of an 'error' or
termination response message is handled by the first step in the flow, not the last step
in the flow.
The “magnifying glass” button is available for viewing the Protocol template contents (editing
is done through the Nodes and Connections GUI section).

EDR configuration is explained in section 3.3.10.1.

3.3.10.19 Configuring the Storage module


The Function Module Storage allows storage and retrieval of data obtained from any AVP in
the messages processed by BFX.

The module supports storing AVP data by up to two keys (not necessary unique), where the
values associated with the keys are also taken from AVPs. The entries can be searched by
either one key or both. In both cases all matching entries are returned. The same is true for
modifying and deleting entries: all matching entries are modified (which means that the ‘last
updated’ time is updated) or deleted.

Entries are removed after a configurable expiry time (see the BFX Operation and
Configuration Manual).

Copyright © BroadForward BV 2023 Page 55 of 199


BFX User Manual

C ONFIGURING STORAGE

The module requires these parameters.

1. Template: choose the template defining the keys that are used for the Storage
operations, and what data items are stored or retrieved.
A number of example templates is provided by BroadForward. Management of the
templates is done through the Nodes and Connections GUI section.
2. Operation: the storage operation to execute. The options are determined by the
available operation types in the chosen template. If more than one operation is to be
performed, insert multiple Storage steps in the flow.
3. Applies to: choose Requests if the module operates on request AVPs or
Responses if the module operates on response AVPs. This parameter must be
aligned with the configuration of the flow steps preceding and following this step.
4. Match type: choose Longest match to match on the longest prefix found (see
below) or Exact match for an exact match (for operation Search only).
5. Minimum prefix length: used in conjunction with Longest match; see below.
6. On error: the action to take upon an error situation. Choose Abort to stop further
message processing and return to the first step of the (main) flow for error handling
(the exact handling of this depends on the applicable protocol), or Continue to
continue the flow.
7. Action: this parameter determines where the results of the operation are put.
If Insert in REQ is selected, the result is inserted into an existing request message.
If Create RSP is selected, the result is used to create a new response message. An
existing response message is automatically deleted.
If Insert in RSP is selected, the result is inserted into an existing response
message. When no response message exists, a new one is created.
The Longest match option allows the lookup of a value (e.g. IMSI or MSISDN) against
entries stored in the database, where these entries can be either a match on the full value or
on a partial prefix. The match type and the minimum length of the prefix to be matched can be
specified in the Storage flow step for search operations. Note that a longest match search is

Copyright © BroadForward BV 2023 Page 56 of 199


BFX User Manual

less efficient than an exact match, as multiple sub-sets of the key are searched for. The
longest match is only available for single key lookups.

The “magnifying glass” button is available for viewing the template contents (editing is done
through the Nodes and Connections GUI section).

Copyright © BroadForward BV 2023 Page 57 of 199


BFX User Manual

3.4 Events Conversion Details


For the Function Module Conversion, which requires additional configuration, the Events
conversion screen is available to configure the details of the conversion. The screen opens
when the Configure the conversion of events button in the Conversion content pane is
clicked.

E VENTS CONVERSION SCREEN

Depending on the choice for input and output AVP set, and the choice to operate on Request
or Responses, a list of events is presented which can be logically connected.

For each input event, an output event can be chosen. From these events, the associated
AVPs (or fields) are presented for specifying the conversion that needs to take place.
Depending on the operation chosen, an input field, output field and/or additional parameters
must be provided to allow the operation to function.

Use the “magnet” button to set the output event the same as the input event (if applicable).

If more than one input event is available, a list of AVPs common to the events is presented
as well. See section 3.4.3 for more details on this Common list of AVPs.

In the Conversion step, AVP conversions are executed in order of configuration. Change the
order of AVP conversions by clicking the “up” and “down” arrow buttons, or by dragging and
dropping conversion lines. Remove conversion lines by clicking the “remove” button. After
confirmation, the conversion line is removed.

Individual conversions can be disabled or enabled by clicking the “connect” / “disconnect”


button. Disabling means that the individual conversion is not part of the conversion step, but
its configuration remains intact (unlike removal of a conversion).

The green “connect” button indicates the conversion is switched on (and clicking it will switch
it off); the red “disconnect” button indicates the conversion is switched off (and clicking it will
switch it on). Disabling and enabling a conversion invalidates the flow.

A set of operations is available to perform the required translation between input and output
field. Depending on the operation chosen, a choice for input field, output field and additional

Copyright © BroadForward BV 2023 Page 58 of 199


BFX User Manual

information is presented. Additional information can be provided in the form that opens when
the parameters button next to the Operation select box is clicked. For most operations, this
form contains at least two checkboxes: Optional and Overwrite.

For operations that require an input field to be specified, the conversion will fail if the input
field is not present - unless the Optional checkbox is set for the operation (if available). For
operations that require an output field to be specified, the output field is either created or
overwritten if it exists in the output AVP set. If the Overwrite checkbox is unchecked, a
second output field will be created if it already exists in the output AVP set (hence the
existing value is not overwritten).

For the majority of operations, a select box is provided to control if the operation applies to all
AVP occurrences. The choice is to set All occurrences to On input, On output or Off.
Where applicable, if the All occurrences choice is set (i.e. not Off):

• If no precondition is defined, the operation is applied to all AVP occurrences in the


message.
• If a precondition is defined, the operation is applied to all AVP occurrences in the first
AVP group matching that precondition (optionally, if the AVP value matches the
specified 'input value').
If All occurrences is set, then Precondition affix is not set, Overwrite is set and both
checkboxes (affix and overwrite) are disabled.

If Precondition affix is set or Overwrite is not set, then All occurrences is not set and
disabled.

For an explanation of the precondition fields, see section 3.4.2.

1. Copy: copies the value of the input field to the output field. Both fields must be
specified.
2. Move: copies the value of the input field to the output field, and removes the input
field from the message. Both fields must be specified.
3. Discard: removes a field from the input data set. The input field to remove must be
specified. If the “input value“ is left empty, the first AVP occurrence is removed
(default behavior). If the “input value“ field is filled, only the first matching occurrence
is removed. Of a grouped AVP, all AVPs in that grouped AVP are discarded too.
4. Concatenate: concatenates the input field value at the end of the output field value.
5. Map: maps a set of possible values of the input field to a value for the output field.
The mapping of values is specified as a sequence of mapping pairs: A:B;C:D;… etc.
The maximum number of entries is 16.
The map operation can be regarded as a multiple “if then” operation: if the input value
is A then the output value is B; if the input value is C, then the output value is D etc.
For input values, the wildcard character * is allowed to match ‘any’ input value. Only
one wildcard character is allowed. Both input and output field must be specified.
Mapping pair values are alphanumeric. Use the backslash character \ to escape
characters : ; * in input or output.

Copyright © BroadForward BV 2023 Page 59 of 199


BFX User Manual

6. Set: sets the value of the output field to a fixed, pre-defined value. The output field
must be specified. The pre-defined value is provided as an alphanumeric value.
Next to literal strings, tokens can be provided in the form $[token_id]. These tokens
are expanded by actual information from the local system and/or message. See
section 3.4.1 for the list of supported tokens. To support the timestamp-related
tokens, a time/date format string (see Appendix A) and a checkbox for formatting as
UTC or local time are provided in this operation.
7. Set Time/Date: sets the value of the output field to the current time/date. The output
field must be specified. A format string can be specified in the “strftime” style (for
example %d %m %y; default is %s). See Appendix A for more information. A checkbox
for formatting as UTC or local time is provided.
8. Modify bits: performs a bit operation on the input field and copies the result to the
output field. Multiple bits can be modified (depending on the choice for action: set,
clear or toggle) at the same time using a list of bit numbers separated by a ; character
(maximum of sixteen in one conversion operation). The number for the least
significant bit is 0, the maximum bit number is 63. Applicable to AVPs of type
Unsigned32/64, Integer32/64 and BitString (octetstring).
The bit identifier can be specified as a literal value, or as a reference to an AVP in
which case the value of the AVP is used. Toggle between these two by clicking the
Switch to button.

9. Modulo: performs a modulo operation on the input field and copies the result to the
output field. The modulo operation results in the remainder after division of the input
field by the divisor. If the input field is not numerical, the sum of all input bytes is used
as the input value for the modulo operation.
The divisor can be specified as a literal value, or as a reference to an AVP in which
case the value of the AVP is used. Toggle between these two by clicking the Switch
to button.

10. Substring: copies the value of the input field to the output field, expanding or
truncating the value as required. Expansion can be done at the tail or head of the
string. An offset is specified to use a substring of the input field value. An empty
length value indicates 'until end of input field value' (useful for stripping characters at
the start of the input field value, without knowing the length of the input field value).
The offset and length can be specified as a literal value, or as a reference to an AVP
in which case the value of the AVP is used. Toggle between these two by clicking the
Switch to button.

11. Add string: adds a string to the output field value, either as suffix or prefix. The
output field must be specified. The value to add is provided as a string value.
Next to literal strings, tokens can be provided in the form $[token_id]. These tokens
are expanded by actual information from the local system and/or message. See
section 3.4.1 for the list of supported tokens. To support the timestamp-related
tokens, a time/date format string (see Appendix A) and a checkbox for formatting as
UTC or local time are provided in this operation.
12. Multiply: performs multiplication on input field and stores result in output field. Both
fields must be specified. The factor to multiply with is provided as an integer value.

Copyright © BroadForward BV 2023 Page 60 of 199


BFX User Manual

The factor can be specified as a literal value, or as a reference to an AVP in which


case the value of the AVP is used. Toggle between these two by clicking the Switch
to button.

13. Divide: performs division on input field and stores result in output field. Both fields
must be specified. The factor to divide by with is provided as an integer value (zero is
not allowed).
The factor can be specified as a literal value, or as a reference to an AVP in which
case the value of the AVP is used. Toggle between these two by clicking the Switch
to button.

14. Add: performs addition on input field and stores result in output field. Both fields must
be specified. The value to add is provided as an integer value.
The value be specified as a literal value, or as a reference to an AVP in which case
the value of the AVP is used. Toggle between these two by clicking the Switch to
button.
15. Subtract: performs subtraction on input field and stores result in output field. Both
fields must be specified. The value to subtract is provided as an integer value.
The value be specified as a literal value, or as a reference to an AVP in which case
the value of the AVP is used. Toggle between these two by clicking the Switch to
button.
16. Tokenize: extracts a token from the input field value, and copies one to the output
field. The delimiter character(s) to be used are specified as parameter. The token
sequence number (starting at 1 for the first token) is specified as parameter. E.g. on
an input ABC;DEF;GHI, the result of this operation with parameters ; and 2 is DEF.
17. Token Insert: inserts a token from the input field value to the output field. The
delimiter character to be used is specified as parameter. The token sequence number
(starting at 1 for the first token; 1 is default) is specified as parameter (if the
designated location already contains a token, this can be replaced by the input, or the
input can be inserted). E.g. on an input ABC, and an output DEF;GHI, the result of this
operation with parameters :, 1 and off is ABC:DEF;GHI.
18. Token Remove: removes a token from the output field. The delimiter character to be
used is specified as parameter. The token sequence number (starting at 1 for the first
token; 1 is default) is specified as parameter. The token can also be cleared
(emptied) instead of removed. E.g. on ABC;DEF;GHI, the result of this operation with
parameters ;, 2 and on is ABC;;GHI.
19. [Store] Retrieve: retrieves an earlier stored value (see Insert) and assigns it to the
output field. The output field must be specified. The label used for retrieving the value
can be provided as a static part (alphanumeric value) and a dynamic part (contents of
the AVP selected) which are appended. Values can be stored and retrieved within the
context of a session.
20. [Store] Retrieve Delta: Retrieves an earlier stored value, and stores delta (input
value minus stored value) in output field. The label used for retrieving the value can
be provided as a static part (alphanumeric value) and a dynamic part (contents of the
AVP selected) which are appended. An action to perform on the store is provided:

Copyright © BroadForward BV 2023 Page 61 of 199


BFX User Manual

Delete (remove value from store), Keep (keep value in store) or Update (update the
stored value with the input value). The default action is Delete. The input and output
field must be specified.
In case this operation is used in combination with a label that does not exist in the
session store, it will write the input value to the output field (as if it calculated the delta
between input value and 0), and will write the input value under the label in the
session store.
21. [Store] Retrieve Increment: Retrieves an earlier stored value, and stores
incremented value in output field. Increment is by 1. The label used for retrieving the
value can be provided as a static part (alphanumeric value) and a dynamic part
(contents of the AVP selected) which are appended. An action to perform on the store
is provided: Delete (remove value from store), Keep (keep value in store) or Update
(update the stored value with the input value). The default action is Delete. The output
field must be specified.
In case this operation is used in combination with a label that does not exist in the
session store, it will write 0 in both the output field as well under the label in the
session store.
22. [Store] Retrieve Time/Date: retrieves an earlier stored time/date value (see Insert
Time/Date) and assigns it to the output field. The output field must be specified. A
format string can be specified in the “strftime” style (for example %d %m %y; default is
%s). See Appendix A for more information. A checkbox for formatting as UTC or local
time is provided
The label used for retrieving the value can be provided as a static part (alphanumeric
value) and a dynamic part (contents of the AVP selected) which are appended. If no
label is specified a default label is used. Values can be stored and retrieved within the
context of a session.
23. [Store] Insert: inserts an input field value in the store for later retrieval (see [Store]
Retrieve). The input field must be specified. The label used for storing the value can
be provided as a static part (alphanumeric value) and a dynamic part (contents of the
AVP selected) which are appended. Values can be stored and retrieved within the
context of a session.
24. [Store] Insert Time/Date: inserts the current time/date in the store for later retrieval
(see [Store] Retrieve Time/Date). The label used for storing the value can be
provided as a static part (alphanumeric value) and a dynamic part (contents of the
AVP selected) which are appended. If no label is specified a default label is used.
Values can be stored and retrieved within the context of a session.
25. [Store] Delete: deletes a label from the store. The label used for storing the value
can be provided as a static part (alphanumeric value) and a dynamic part (contents of
the AVP selected) which are appended. If no label is specified a default label is used.
The All labels for session checkbox is available to remove all labels for the
session, without the need to explicitly specify the label to delete.
26. [Clipboard] Insert: Copies an input field from the source to the clipboard for later
retrieval (see [Clipboard] Retrieve). The output field is optional, if it is not set, the
field will retain the same name. Furthermore, the same options apply as for the Copy

Copyright © BroadForward BV 2023 Page 62 of 199


BFX User Manual

operation.
The clipboard is specific for the current message transaction and the content remains
available until the transaction is completed or it is explicitly cleared (see [Clipboard]
Clear).
27. [Clipboard] Retrieve: Copies a field from the clipboard to the destination. The output
field is optional, if it is not set, the field will retain the same name. Depending on the
'optional' flag, the operation will fail when the selected field is not present on the
clipboard. Furthermore, the same options apply as for the Copy operation.
28. [Clipboard] Clear: Clears the content of the clipboard of the current message.
To be able to use characters that are not allowed as input in the parameter fields for
operations, use numeric Unicode character references (e.g. &#235; for the ë character) or
&lt; %gt; &quot; &apos; &amp; for < > " ' & respectively.

Help information is available through the Help button. When the configuration of events is
complete, click the Close button to return to the main flow configuration screen.

3.4.1 Tokens
For Conversion operations Set and Add string the following tokens are supported.

$[hostname] the hostname of the local BFX node


$[fqdn] the FQDN of the local BFX node
$[domain] the domain name of the local BFX node
$[unix_start_time] the BFX startup time on the local BFX node
(in seconds since the UNIX epoch 1-JAN-1970)
$[ntp_start_time] the BFX startup time on the local BFX node
(in seconds since the NTP epoch 1-JAN-1900)
$[message_id] the BFX internal message identifier
(this is a unique identifier assigned for each message)
$[incoming_module_type] the type of the Protocol Module that originated the request for
this transaction (see Appendix B of the Operation and
Configuration manual for possible values of module types)
$[application_id] the Application ID as integer (Application ID for Diameter,
Application Context for MAP/INAP)
$[source_ip] the IP address of the sender of the data
$[source_peer] the peer id of the sender of the message (for Diameter,
ENUM, HTTP and SIP)
$[local_port] the local port on which the data is received
$[primary_destination] the primary destination determined by a preceding Routing
step
$[secondary_destination] the secondary destination determined by a preceding Routing
step
$[source_value1] the value of Token 1 as set in ENUM, HTTP or SIP remote
client configuration
$[source_value2] the value of Token 2 as set in ENUM, HTTP or SIP remote
client configuration
$[source_value3] the value of Token 3 as set in ENUM, HTTP or SIP remote

Copyright © BroadForward BV 2023 Page 63 of 199


BFX User Manual

client configuration
$[source_value4] the value of Token 4 as set in ENUM, HTTP or SIP remote
client configuration
$[source_value5] the value of Token 5 as set in ENUM, HTTP or SIP remote
client configuration
$[source_assoc] the M3UA or M2PA association on which the message was
received
$[source_linkset] the link set containing the M2PA association on which the
message was received
$[service_variant] the service variant of the M3UA or M2PA association on which
the message was received ('ITU-T', 'ANSI' or empty when not
applicable)

Among other usages, the tokens can be used to generate a valid globally unique Diameter
session identifier, for example: $[fqdn];$[ntp_start_time];$[message_id]

In addition various timestamp-related tokens are supported.

$[timestamp] current timestamp (in sec + usec tokens)


$[timestamp_usec]
$[timestamp_req_rx] received request timestamp (in sec + usec tokens)
$[timestamp_usec_req_rx]
$[timestamp_req_tx] transmitted request timestamp (in sec + usec tokens)
$[timestamp_usec_req_tx]
$[timestamp_rsp_rx] received response timestamp (in sec + usec tokens)
$[timestamp_usec_rsp_rx]
$[timestamp_rsp_tx] transmitted response timestamp (in sec + usec tokens)
$[timestamp_usec_rsp_tx]
The “second”-tokens represent the number of seconds since the Unix epoch, whereas the
“microsecond”-tokens represent a fraction. So when a sub-second timestamp is required, use
$[timestamp]$[timestamp_usec] and store it in an Unsigned64 AVP.

3.4.2 On preconditions
To explain the use of precondition fields, consider this example for the Move operation.

If a precondition on the input is set, the move operation will only take place:

• if the selected precondition input field exists (when the precondition operator is
Present),

• if it does not exist (when the precondition operator is Not Present),


• if it contains the specified value (when the precondition operator is Equals),
• if it does not contain the specified value (when the precondition operator is Not
Equals),

• if it starts with the specified value (when the precondition operator is Prefix),
• if it does not start with the specified value (when the precondition operator is Not
Prefix),

Copyright © BroadForward BV 2023 Page 64 of 199


BFX User Manual

• if it ends in the specified value (when the precondition operator is Suffix),


• if it does not end in the specified value (when the precondition operator is Not
Suffix),

• if it contains the specified value (when the precondition operator is Contains),


• if it does not contain the specified value (when the precondition operator is Not
Contains).

If the precondition on input is matched, the input field is taken from the ‘position’ inside the
message that was matched in the precondition.

Take the next pseudo-message as example, containing multiple “Subscription-Id” group AVPs:

...
Destination-Realm: abcd.com
Subscription-Id:
Subscription-Id-Type: 0
Subscription-Id-Data: 3164444455555
Subscription-Id:
Subscription-Id-Type: 1
Subscription-Id-Data: 222110000099999
...

If the second Subscription-Id-Data input field is desired, one can set the input precondition to
“Subscription-Id.Subscription-Id-Type”, the precondition operation to Equals and the
precondition value to “1”. Without this precondition, the input field “Subscription-
Id.Subscription-Id-Data” would have returned the first match in the message.

The same principle applies for the output precondition. In addition, if the Precondition affix
(output) box is checked, the precondition AVP (with precondition AVP value) is added when
the precondition is not matched.

For operations that support preconditions, note that:

• If the input field and the precondition input field share a parent AVP, and there are
multiple instances of this parent AVP, the input field used is the input field of the
parent AVP for which the precondition input field matched.
• If the output field and the precondition output field share a parent AVP, and there are
multiple instances of this parent AVP, the output field written is the output field of the
parent AVP for which the precondition output field matched.
3.4.3 List of Common AVPs
If more than one input event is available, a list of AVPs common to the events is presented.

Copyright © BroadForward BV 2023 Page 65 of 199


BFX User Manual

C ONVERSION EVENTS SCREEN - COMMON

This is a convenience function to simplify the configuration of (larger) sets of AVPs.

• All operations configured in the Common section will be effective for each of the input
events for which an output event is selected (not one of the Special Events; see
3.4.4).
• The order of execution in the flow is: first the common AVPs, then the event-specific
AVPs.
• If an output AVP is configured for a specific event, it overrules any configuration for
that output AVP in the Common section. This behaviour is subject to configuration
(see the BFX Operation and Configuration Manual).
3.4.4 Pass-through and Termination Events
For any input event, a so-called Pass-through output event can be selected. This will pass on
the AVPs unchanged from input event to output event (while the event remains the same).

E VENTS CONVERSION SCREEN – PASS -THROUGH AND TERMINATION EVENTS

For any input event, a so-called Termination output event can be selected. This terminates
the flow for the message. The following types of termination are available.

Copyright © BroadForward BV 2023 Page 66 of 199


BFX User Manual

1. Discard: the message is silently discarded; no feedback is provided to the message


originator.
2. Reject: the message is discarded and a negative response is sent back to the
originator. The exact implementation of the response depends on the protocol
applicable. A result code value needs to be set via a configuration line for the AVP
Result-Code.
3. Acknowledge: the message is discarded and a positive response is sent back to the
originator. The exact implementation of the response depends on the protocol
applicable. A result code value needs to be set via a configuration line for the AVP
Result-Code.
Specifically for MAP and INAP, the behavior of these events is as follows:

1. Discard: close dialogue with pre-arranged end (this cleans up the dialogue locally, so
these resources can be reused immediately again, without returning anything to the
other side).
2. Reject: abort the dialogue (sending User Abort).
3. Acknowledge: close the dialogue with normal release (so this is just closing the
dialogue locally and remotely).
3.4.5 Modifying an Output event
When changing the Output event selection, not all existing conversions may be applicable
anymore since the list of associated output fields changes. Only those conversions that are
still relevant will be preserved. This means: conversions for which no output field is set, or
conversions for which the output field is still available in the new output event. All others will
be discarded.

A warning message is provided:

3.5 Validating and Activating a flow


In order to activate a flow, which means deploying a flow in the message traffic handled by
BFX, a flow must be validated first. Validation is a two-step process:

1. Verification of the flow configuration data for completeness


2. Generation of XML configuration files as used by the BFX server
Any change made to the flow configuration, sets the validation status to not validated.

To validate the flow, click on the current value of the Validation status, and choose Validate
now from the select box. If the flow cannot be validated, information on the reason is

Copyright © BroadForward BV 2023 Page 67 of 199


BFX User Manual

provided in the console pane. Typically, an incomplete flow configuration is the cause for a
failing validation.

To activate the flow, click on the current value of the flow’s active status, and choose
Activate now from the select box. The flow is activated and the active status indication is
updated.

When enabled in the user profile, it is also possible to pre-activate a flow first on one node in
order to first validate its behaviour before activating it on all nodes. This is done by choosing
Pre-activate on node… from the select box after which a selection is presented with the
possible nodes. A pre-activated flow cannot be pre-activated on another node, only
reactivated on the same node or activated on all nodes.

If an active flow is modified, and subsequently validated, an option “Reactivate now” is


available in the select box.

R EACTIVATION OPTION

Reactivating a flow deploys the flow modifications without message handling interruption. To
reactivate a flow, select the Reactivate now option. The flow is reactivated and the active
status indication is updated.

As with activation, reactivation can also be done first on one node if pre-activation is enabled.

Depending on configuration (see the BFX Operation and Configuration Manual), a


confirmation window is presented before the actual reactivation. This window highlights the
delta in the existing and the new configuration.

3.5.1 Validating and Activating all flows


The menu Flow provides options to validate and activate all flows displayed in the GUI, in the
order as displayed (subflows go first in case of activation). When chosen, all flows will be
validated or activated subsequently. A progress dialog box contains the results as the
validation or activation progresses. The process can be stopped by clicking the Cancel button.

Copyright © BroadForward BV 2023 Page 68 of 199


BFX User Manual

V ALIDATE ALL

When the progress dialog box was closed, the menu entry Cancel… (in red text) under Flow
can be used to stop the ongoing validation or activation process.

In addition, when the progress dialog box was closed while the validation/activation of all flows
is still ongoing, the user is warned when navigating away from the page. The user can decide
to wait for the pending actions to finish (after which the navigation action is performed), force
the pending actions to be stopped and perform the navigation action directly, or to cancel the
navigation action and return to the screen.
Note: this functionality is not available for browser navigation such as the Back or Refresh
buttons.

3.6 Deactivating a flow


In order to end the deployment of a flow in the data stream handled by BFX, a flow must be
deactivated. To deactivate the flow, click on the current value of the flow’s active status, and
choose Deactivate now from the select box. The flow is deactivated and the active status
indication is updated.

3.6.1 Deactivating all flows


The menu Flow provides options to deactivate all flows displayed in the GUI, in the order as
displayed (subflows go last). When chosen, all flows will be validated or activated
subsequently. A progress dialog box contains the results as the validation or activation
progresses. The process can be stopped by clicking the Cancel button.

Copyright © BroadForward BV 2023 Page 69 of 199


BFX User Manual

When the progress dialog box was closed, the menu entry Cancel… (in red text) under Flow
can be used to stop the ongoing deactivation process.

The remark on page navigation in section 3.5.1 also applies to deactivation.

3.7 Removing a flow


If a flow is no longer required, it can be removed from the system. If a flow is active, it cannot
be removed. If a flow occurs in a Flow Selector step of another flow, it cannot be removed.

To remove a flow, select Flow from the menu bar, and choose Remove flow. A
confirmation question is asked. After confirmation, the flow is removed.

Note: with the flow, the information collected for reporting is also removed. This means the
flow will no longer be visible in the reporting frontend (see chapter 4). The removal of this
reporting data is permanent and cannot be restored.

To remove multiple flows at once, choose the Remove multiple flows option from the Flow
menu. This opens a dialog box from which the to be deleted flows can be selected. After
confirmation a dialog box opens which displays the progress of the removal process. The
process can be cancelled via this dialog box too. The dialog box can be closed, in which case
the progress can be observed via the GUI console. Cancellation is also possible through the
same menu option.

In addition, when the progress dialog box was closed while the removal of the flows is still
ongoing, the user is warned when navigating away from the page. The user can decide to wait
for the pending actions to finish (after which the navigation action is performed), force the
pending actions to be stopped and perform the navigation action directly, or to cancel the
navigation action.

The flow configuration is not removed permanently: the information is moved to a ‘recycle
bin’ on the BFX system. To restore a flow, choose Open recycle bin in the Flow menu
option. A list of recyclable flows is presented.

F LOW RECYCLE BIN - EXAMPLE

Select the flows from this list to restore or purge (delete permanently).

Copyright © BroadForward BV 2023 Page 70 of 199


BFX User Manual

3.8 Exporting and Importing flows


When flows need to be exchanged between BFX instances, for example a BFX test system
and a BFX production system, the flows can be exported on the source system by using the
GUI, and subsequently be imported on the target system. The imported flow has to be
validated before it can be activated.

Before importing a flow on the target system, it is recommended to create a restore point
(see section 3.9). Should something go wrong, then the restore point can be used to revert to
the (entire) previous configuration.

For exporting flow configurations from a BFX system, the export function is used. To export a
flow, choose Export selected flow from the Flow menu to generate a .export file for
local storage. A ‘file save’ dialog is presented, depending on the web browser used. This
.export file can be redistributed to another BFX deployment to be imported there via the
GUI. Do not modify the name or the contents of the .export file.

Choose Export all flows to export all flows in the current selected flow group(s) at once.
Depending on configuration (general settings item Threshold for zip file when
exporting), the flows are exported in a single zip file. Note: importing a zip file is also
supported. Unzipping the exported file before importing can be done (when individual flows
need to be imported), but is not necessary.

To import, choose Import flows from the Flow menu, and click Add file to select the
.export file or .zip file to import. Multiple files can be added to the list. Click Cancel to
remove the file from the list of files to be imported. Click Import to start the importing
process. New flows are created and displayed in the flow configuration screen. Their status
is not validated and not activated.

Duplicate flow ids are not allowed (flows with an id that already exists will not be imported)
unless the Overwrite existing flow id(s) checkbox is checked. In that case, the existing
flow configuration will be overwritten by the imported one.

Note: This procedure only exports and imports flow configuration. It does not export or import
dictionaries, protocol or AVP files.

3.9 Restore points


Restore points offer a means of configuration version control. A restore point is a snapshot of
a BFX configuration at a given point in time. A restore point is a copy of the GUI database
(including the configuration of Flows, Routing Rules, Tracing Rules, List Profiles and Nodes
and Connections, but excluding Users and Audit Trail) and all dictionary, protocol and AVP
templates. A restore point can only be used within the same BFX system it was created; to
save configuration for use outside the BFX system use the Export function.

To create a restore point, select Create restore point from the Restore points menu.
Provide a restore point tag (optional) and choose Create.

To use a restore point, choose Open restore points from the Restore points menu. A list
of available restore points is presented.

Copyright © BroadForward BV 2023 Page 71 of 199


BFX User Manual

R ESTORE POINTS - EXAMPLE

Select the restore point from this list to restore (the current flow configuration is replaced by
the content of the restore point) or remove (delete permanently). Restoring is only allowed if
there are no active flows in the system. Deactivate all flows before restoring a restore point.

Note: restoring a restore point will irreversibly remove the current flow configuration.

After restoring, all flows are in status not validated and not active. The flows must be
validated and activated again.

Copyright © BroadForward BV 2023 Page 72 of 199


BFX User Manual

4 Routing Rules Configuration


A Routing Rule is a combination of a set of conditions and routing destination information.
The conditions are applied on a message, in order to determine the routing destination
parameters for that message. A Routing Rule can be applied to a message through the
configuration of a routing step in a Message Flow.

The following sections describe how to accomplish the Routing Rule management tasks
available in BFX.

4.1 Main screen


To open the Routing Rules Configuration GUI, log in and select the Routing Rules section.

M AIN SCREEN WITH R OUTING R ULE CONFIGURATIONS - EXAMPLE

The main screen consists of the following parts:

1. A main menu bar (see section 2.2);


2. A console pane containing a log of the actions performed in the GUI;
3. A menu bar with a set of commands and Undo button;
4. A listing of the routing rules. Select a routing rule by clicking its name in the list. A
pane opens, displaying status information about the routing rule;
5. Routing rule parameters, e.g. description, group etc.;
6. Configuration of routing rule conditions, i.e. under what conditions a routing
destination is selected for this message;

Copyright © BroadForward BV 2023 Page 73 of 199


BFX User Manual

7. Configuration of routing rule destination labels, i.e. what primary, secondary and
‘last resort’ destination are used when this routing rule is applied.
The commands in the menu are:

• Routing rule ➔ Reload routing rule: reload routing rule configuration and information;
• Routing rule ➔ Add routing rule: create a new routing rule (section 4.2);
• Routing rule ➔ Remove routing rule: remove a routing rule configuration (section
4.6);
• Routing rule ➔ Remove multiple routing rules: remove multiple routing rule
configurations (section 4.6);
• Routing rule ➔ Open recycle bin: open the list of previously removed routing rules
(section 4.6);
• Routing rule ➔ Email/Print routing rule details: send email(s) with routing rule details
(choose Email routing rule details and provide one or more email addresses,
separated by comma) or open a page with routing rule details for printing purposes by
choosing Print routing rule details;
• Routing rule ➔ Revert to last validated: the routing rule configuration is modified back
to the state when it was last validated;
• Routing rule ➔ Validate all routing rules: issues a validation command for all routing
rules in the list;
• Routing rule ➔ Activate all routing rules: issues an activation command for all routing
rules in the list;
• Routing rule ➔ Deactivate all routing rules: issues a deactivation command for all
routing rules in the list;
• Routing rule ➔ Export/Import: create and use .export files for redistribution of
routing rule configuration across BFX deployments (section 4.7);
• Provisioning ➔ Routing rules: offers the option to upload a CSV file for bulk
provisioning of routing rules. See Appendix B for more information;
• Filter: a filter can be set to reduce the number of routing rules displayed in the list.
Filters can be set on routing rule groups, conditions and destination labels (where
applicable). Select any of the menu entries under the Filter menu to open a dialog box
to make a choice of the routing rule group(s), to specify and apply text that is used as
partial string to test any condition field/value against (case sensitive), or to specify
and apply text that is used as partial string to test any destination label against (case
sensitive). Multiple filters can be set; these are combined in a logical AND;
• Undo: undo the most recent changes made to routing rule parameters, conditions or
destination labels. The number of commands that can be undone is subject to
configuration; see the BFX Operation and Configuration Manual for more information.
Undo-ing a previous change affects the ‘Last updated’ value and Validation status.

Copyright © BroadForward BV 2023 Page 74 of 199


BFX User Manual

Subject to configuration via the GUI settings, a right-mouse click context menu is available. It
provides a list of recently selected flows, routing rules and list profiles for quick navigation. The
area to click is the listing area. Other screen areas provide the browser-defined context menu.

4.1.1 Status information


The status information provided for a routing rule in the listing’s pane is:

• Validation status: a routing rule’s validation status is either one of:


Validated
Not validated
A routing rule is considered to be validated if the routing rule configuration has been
successfully checked by the system for completeness. Incomplete configurations
cannot be validated and need to be corrected according to the feedback provided by
the system. A routing rule needs to be validated before it can be activated. Making a
change to the routing rule’s configuration sets the routing rule’s validation status to
Not validated.
• Active status: a routing rule’s active status is either one of:
Not active
Active (followed by an “Active since” date)
Active (followed by an “Active since” date and “modified since” indication)
A routing rule is active when the BFX server applies the routing rule configuration in
the handling of traffic. When active, counters are updated for the routing rule which
can be viewed using the BFX dashboard. Routing rules that are active, but have been
modified in the GUI (indicated by orange coloring), can be re-activated.
Hover over the label Active status to see more details per node.
The routing rule’s validation status and active status can be modified by clicking the value
and entering a new value.

To improve the GUI responsiveness, the routing rule’s Active status is cached, and not
retrieved each time upon reading of the routing rule configuration. The cache is refreshed
after status changes, or when cache info is older than 24 hours, or when the Ctrl key is
pressed while reading the routing rule configuration.

The label of the listing’s pane consists of the routing rule’s id and description. A colored
square in front of the routing rule id indicates the active status:

• Green: active
• Red: not active
• Orange: active, but modified
• Grey: unknown or active status not determined yet
4.1.2 Parameters
The parameters provided for a routing rule are:

• Routing rule id: the id of the routing rule;


• Description: descriptive text;

Copyright © BroadForward BV 2023 Page 75 of 199


BFX User Manual

• Rule group: the group to which the routing rule belongs. Routing rules can be
grouped to improve the manageability in case of a large number of routing rules.
Enter the group name or make a choice from the groups already available;
• Last updated: the date/time and user id of the last modification of the routing rule;
• Rule in: a list of flows in which the routing rule is used. An arrow icon is placed next to
the flows. Clicking the arrow will open the flow in the Flows GUI section. If the flow is
not visible in this GUI section (due to filtering options), the first flow in the list will be
opened.
The routing rule’s description and rule group can be modified by clicking the value and
entering a new value.

4.1.3 Console
Feedback on the GUI functions performed is provided on the far right of the console bar. An
icon indicates whether the request is in progress, was successful, or was not successful.
Additional information is proved in the console pane. Example:

4.1.4 Conditions
The routing rule conditions determine if the routing rule is selected to set the routing
destination parameters for the incoming message. Of all the routing rules whose conditions
are met for a specific message, the first rule and only the first rule (as set in the Routing
module’s configuration; see section 3.3.10.13) that matches is chosen. See section 4.3.6 for
more details on the configuration of routing rule conditions.

4.1.5 Destinations
The result of matching a routing rule is the selection of destination parameters in the form of
labels: a primary destination label, a secondary destination label and a ‘last resort’
destination label. The meaning of the labels is defined in the system’s connection
configuration. See section 8.2 on the GUI section for Nodes and Connection Configuration
for this. See section 4.3.6.1 for more details on the configuration of routing rule destination
labels.

4.2 Creating a routing rule


To create a new routing rule, select Add routing rule from the Routing rule menu.

Copyright © BroadForward BV 2023 Page 76 of 199


BFX User Manual

C REATING A ROUTING RULE

Provide a routing rule id in the edit box, and choose Create. A routing rule id may consist of
maximum 32 of allowed characters: letters a through z (either case), hyphen (-) and/or
numbers 0 through 9. Routing rule ids that already exist cannot be used. Routing rule ids are
not case sensitive. After a routing rule is created, the routing rule id cannot be changed
anymore.

An empty routing rule is created which can be configured as explained in section 4.3. To
duplicate a routing rule configuration, specify a routing rule from the Duplicate from box.

The new routing rule is not validated and not active.

4.2.1 Provisioning
For bulk provisioning of routing rules using a CSV file, use the Provisioning menu. See
Appendix B for more information.

4.3 Modifying an existing routing rule


4.3.1 Routing rule id
Routing rule ids cannot be edited. They are set when added (or duplicated). To rename a
routing rule, create a duplicate routing rule (using Add routing rule from the Routing rule
menu) and remove the original one.

4.3.2 Description
To modify the routing rule description, click on the description (or the indicator), edit
the description and press Enter.

4.3.3 Routing rule Group


To modify the routing rule group, click on the group name (or the indicator), edit the
group name and press Enter. Alternatively, select an existing group from the drop-down list.
A routing rule group may consist of a maximum 32 of allowed characters: letters a through z
(either case), hyphen (-) and/or numbers 0 through 9.

To remove a routing rule from a group, provide an empty routing rule group.

4.3.4 Validation status


To validate the routing rule, click on the current value, and choose Validate now from the
select box. See section 4.4 for more information.

Copyright © BroadForward BV 2023 Page 77 of 199


BFX User Manual

4.3.5 Active status


To modify the routing rule activate status, click on the current value, and choose the desired
value from the select box. See section 4.4 and 4.5 for more information.

4.3.6 Conditions
The number of routing rule conditions is unlimited. Every Event and Attribute Value Pair
(AVP) of the incoming message can be tested using a number of operations.

The Events and AVPs that are available for routing rule conditions, are determined by an
AVP file. Choose this file by making a selection from the list in the AVP file select box. The
“magnifying glass” button is available for viewing the the file contents (editing is done through
the Nodes and Connections GUI section). Note that the mere selection of an AVP file in itself
is not part of the condition; the condition consists of the entries that are selected from the
Add condition buttons.

The choice for the AVP file is determined by the nature of the incoming traffic. The list of
available files is configured on the BFX server; see the BFX Installation and Upgrade Manual
and BFX Operation and Configuration Manual for more information.

R OUTING RULE C ONDITIONS SECTION - EXAMPLE

It is not required to select a condition AVP file. In that case, only the meta-AVPs are
available.

A number of so called meta-AVPs are supported which are always available, regardless of
the choice for the condition AVP file.

1. Local port: the IP port on the BFX server where the message was received
(applicable to non-SS7 only);
2. Source host: the IPv4 or IPv6 address on the remote node from where the message
was sent (applicable to non-SS7 only);
3. Hostname: the hostname of the host that BFX is running on;

Copyright © BroadForward BV 2023 Page 78 of 199


BFX User Manual

4. Application id: the Application ID as present in the incoming message (applicable to


Diameter, MAP and INAP only);
5. Peer id: the peer ID where the incoming request message originated from (applicable
to Diameter, ENUM, HTTP and SIP);
6. Primary destination: the primary destination label as set by the Routing module;
7. Secondary destination: the secondary destination label as set by the Routing
module;
8. Dialogue continuation: for MAP/INAP flows, this field can be used to test for
presence of dialogue continuation;
9. Process role: the process role for SCCP (1=ASP/IPSP; 2=SGP);
10. Routing label: this field can be used to test for the availability of a Diameter routing
label;
11. Service variant: the service variant (ITU-T or ANSI) of the association on which the
message was received (SCCP only);
12. Source association: the association on which the message was received (SCCP
only);
13. Source link set: the link set containing the association on which the message was
received (SCCP M2PAonly).
Add conditions by clicking one of the Add condition buttons and making a choice. A
content pane is provided for each condition added. Each Event or AVP, either meta or from
the request/response message, can occur multiple times in the set of conditions.

Determine the way the conditions are applied by using the Match radio buttons. Set to All
conditions in case all conditions need to be matched before the flow is selected (logical
“AND”), or Any condition for matching at least one condition (logical “OR”).

For each condition, open the pane and edit the additional information: AVP aspect, operation
and value. Not all aspects and operations are available to each (meta-)AVP.

The following AVP aspects are available:

1. Value: the condition is applied to the value of the AVP;


2. Length: the condition is applied to the length of the AVP (in bytes).
The following operations are available:

1. Equals: the condition is true if the AVP value matches the value provided;
2. Not Equals: the condition is true if the AVP value does not match the value provided;
3. Range: the condition is true if the AVP value is in the range provided, boundaries
included;
4. Not in Range: the condition is true if the AVP value is not in the range provided,
boundaries included;

Copyright © BroadForward BV 2023 Page 79 of 199


BFX User Manual

5. Prefix: the condition is true if the AVP value matches the prefix value provided (as
string);
6. Not Prefix: the condition is true if the AVP value does not match the prefix value
provided (as string);
7. Contains: the condition is true if the AVP value contains the value provided (as
string);
8. Not Contains: the condition is true if the AVP value does not contain the value
provided (as string);
9. Suffix: the condition is true if the AVP value ends in the value provided (as string);
10. Not Suffix: the condition is true if the AVP value does not end in the value provided
(as string);
11. Present: the condition is true if the AVP value is present;
12. Not Present: the condition is true if the AVP value is not present;
13. Greater Than: the condition is true if the AVP value is greater than the value
provided;
14. Less Than: the condition is true if the AVP value is less than the value provided;
15. Netmask: the condition is true if the AVP value matches the IPv4 or IPv6 netmask
provided;
16. Occurs: this event occurs in the incoming message (only for Events; other operations
are not available for Events);
17. Does not Occur: this event does not occur in the incoming message (only for Events;
other operations are not available for Events).
Values are stored when they are changed, e.g. when the edit box data is modified and focus
is removed from the edit box. Hints on data validity are provided via a tooltip.

Modify the order of the conditions by using the “up” and “down” arrow buttons. Remove
conditions by clicking the “remove” button. After confirmation, the condition is removed.

Individual conditions in a routing rule can be switched off or on by clicking the “connect” /
“disconnect” button. Switching off (“disable”) means that the individual condition is not part of
the routing rule conditions evaluation, but its configuration remains intact (unlike removal of a
condition).

The green “connect” button indicates the condition is switched on (and clicking it will switch it
off); the red “disconnect” button indicates the condition is switched off (and clicking it will
switch it on). Switching off or on a condition invalidates the routing rule.

When selecting another AVP file, the current selection of conditions may no longer be
entirely valid, since different AVPs are now available. A confirmation dialog is presented.

Copyright © BroadForward BV 2023 Page 80 of 199


BFX User Manual

C ONFIRMATION DIALOG

Choose from:

• Discard config: the condition configuration is removed, with the exception of the
meta-AVPs.
• Keep config: the condition configuration is not removed. Warning: this may lead to
unexpected results, since AVPs may be configured which are not in the AVP file (and
hence not in the messages processed). This option is available for the convenience of
experienced users, but should be understood well before using.
• Cancel: to cancel the AVP file selection change.
The user is asked to make a conscious choice. If the consequences of choosing Keep
config are not understood, it is recommended to choose Discard config.

In addition to literal values, the contents of an AVP can also be used for comparison. Click the
Switch to AVP selection button to change the edit box into a select box, from which an AVP
can be chosen (from the request or response set). Thus, for example a condition like "AVP1 >
AVP2" can be defined. Click the Switch to literal value button to switch back to an edit box
for literal values. This functionality is provided only in case of an operation on AVP-value for
non-meta AVPs (exception: primary and secondary label).

A checkbox Test all occurrences is available to indicate that, in case of multiple


occurrences of the AVP in the message, condition matching should be applied to all
occurrences (and not just the first one).

Two sets of conditions can be specified. These are evaluated independently, and the results
are combined in a logical AND or OR relation. BFX uses this optimization: in an OR relation,
the second set is not evaluated if the first one yields true. And in case of an AND relation, the
second set is not evaluated if the first set yields false. An empty condition set yields true. The
AVP file selection applies to both sets.

A second set can be added via the button Add 2nd set that is placed with the first set. The
second set can be removed via the button Remove 2nd set that is placed with the second
set. The first and second set can be swapped via the button Swap 1st/2nd set that is
placed with the first set.

Copyright © BroadForward BV 2023 Page 81 of 199


BFX User Manual

4.3.6.1 Tokens
When entering literal values, the use of tokens is provided. Tokens are run-time expanded
into actual values at condition evaluation time.

The following tokens are supported.

1. $[current_time]: current time in seconds since the UNIX epoch (1-JAN-1970).


Example:

T OKEN USAGE IN CONDITIONS - EXAMPLE

4.3.7 Destinations
A content pane is provided to define the destination labels, which will be set when the routing
rule conditions evaluate to “true”.

D ESTINATIONS SECTION - EXAMPLE

Depending on configuration (see the BFX Operation and Configuration Manual), the entry
widgets provide free format text or a selection of pre-set options. These options are taken
from the underlying protocol configuration files. See section 8.2 on the GUI section for Nodes
and Connection Configuration for this.

When a selection of pre-set options is presented, the number between brackets designates
the weight given to the label (where std stands for “standard”, i.e. not explicitly specified for
this label) for weighted round-robin. The protocol to which the label applies is between
parentheses.

The secondary and ‘last resort’ destination labels are optional. They are used as fall-back
when the primary destination is unreachable.

4.4 Validating and activating a routing rule


In order to activate a routing rule, which means deploying a routing rule in the message
traffic handled by BFX, a routing rule must be validated first. Validation is a two-step process:

1. Verification of the routing rule configuration data for completeness


2. Generation of XML configuration files as used by the BFX server

Copyright © BroadForward BV 2023 Page 82 of 199


BFX User Manual

Any change made to the routing rule configuration, sets the validation status to not validated.

To validate the routing rule, click on the current value of the Validation status, and choose
Validate now from the select box. If the routing rule cannot be validated, information on the
reason is provided on the screen (similar to flows; see section 3.4.5). Typically, an
incomplete routing rule configuration is the cause for a failing validation.

To activate the routing rule, click on the current value of the routing rule’s active status, and
choose Activate now from the select box. The routing rule is activated and the active status
indication is updated.

If an active routing rule is modified, and subsequently validated, an option “Reactivate now”
is available in the select box.

R EACTIVATION OPTION

Reactivating a routing rule deploys the routing rule modifications without message handling
interruption. To reactivate a routing rule, select the Reactive now option. The routing rule is
reactivated and the active status indication is updated.

Note: the new routing rule configuration is used immediately. There is no re-activation required
for flows that use this rule (in a Routing step), nor are pending messages handled according to
the previous routing rule configuration.

Depending on configuration (see the BFX Operation and Configuration Manual), a


confirmation window is presented before the actual reactivation. This window highlights the
delta in the existing and the new configuration.

4.4.1 Validating and activating all routing rules


The menu Routing rule provides options to validate and activate all routing rules displayed in
the GUI, in the order as displayed. When chosen, all routing rules will be validated or activated
subsequently. A progress dialog box contains the results as the validation or activation
progresses. The process can be stopped by clicking the Cancel button.

When the progress dialog box was closed, the menu entry Cancel… (in red text) under
Routing rule can be used to stop the ongoing validation or activation process.

In addition, when the progress dialog box was closed while the validation/activation of all
routing rules is still ongoing, the user is warned when navigating away from the page. The user
can decide to wait for the pending actions to finish (after which the navigation action is
performed), force the pending actions to be stopped and perform the navigation action directly,
or to cancel the navigation action and return to the screen.
Note: this functionality is not available for browser navigation such as the Back or Refresh
buttons.

Copyright © BroadForward BV 2023 Page 83 of 199


BFX User Manual

4.5 Deactivating a routing rule


In order to end the deployment of a routing rule in the data stream handled by BFX, a routing
rule must be deactivated. To deactivate the routing rule, click on the current value of the
routing rule’s active status, and choose Deactivate now from the select box. The routing
rule is deactivated and the active status indication is updated.

4.5.1 Deactivating all routing rules


The menu Routing rule provides options to deactivate all routing rules displayed in the GUI,
in the order as displayed. When chosen, all routing rules will be validated or activated
subsequently. A progress dialog box contains the results as the validation or activation
progresses. The process can be stopped by clicking the Cancel button.

When the progress dialog box was closed, the menu entry Cancel… (in red text) under
Routing rule can be used to stop the ongoing deactivation process.

The remark on page navigation in section 4.4.1 also applies to deactivation.

4.6 Removing a routing rule


If a routing rule is no longer required, it can be removed from the system. If a routing rule is
active, it cannot be removed. If a routing rule occurs in a Routing step of a flow, it cannot be
removed.

To remove a routing rule, select Routing rule from the menu bar, and choose Remove
routing rule. A confirmation question is asked. After confirmation, the routing rule is
removed.

To remove multiple routing rules at once, choose the Remove multiple routing rules
option from the Routing rule menu. This opens a dialog box from which the to be deleted
routing rules can be selected. After confirmation a dialog box opens which displays the
progress of the removal process. The process can be cancelled via this dialog box too. The
dialog box can be closed, in which case the progress can be observed via the GUI console.
Cancellation is also possible through the same menu option.

In addition, when the progress dialog box was closed while the removal of the routing rules is
still ongoing, the user is warned when navigating away from the page. The user can decide to
wait for the pending actions to finish (after which the navigation action is performed), force the
pending actions to be stopped and perform the navigation action directly, or to cancel the
navigation action.

The routing rule configuration is not removed permanently: the information is moved to a
‘recycle bin’ on the BFX system. To restore a routing rule, choose Open recycle bin in the
Routing rule menu option. A list of recyclable routing rules is presented.

Copyright © BroadForward BV 2023 Page 84 of 199


BFX User Manual

R OUTING RULE RECYCLE BIN - EXAMPLE

Select the routing rules from this list to restore or purge (delete permanently).

4.7 Exporting and Importing routing rules


When routing rules need to be exchanged between BFX instances, for example a BFX test
system and a BFX production system, the routing rules can be exported on the source
system by using the GUI, and subsequently be imported on the target system. The imported
routing rule has to be validated before it can be activated.

Before importing a routing rule on the target system it is recommended to create a restore
point (see section 3.9). Should something go wrong, then the restore point can be used to
revert to the (entire) previous configuration.

For exporting routing rule configurations from a BFX system, the export function is used. To
export a routing rule, choose Export selected routing rule from the Routing rule menu
to generate a .export file for local storage. A ‘file save’ dialog is presented, depending on
the web browser used. This .export file can be redistributed to another BFX deployment to
be imported there via the GUI. Do not modify the contents of the .export file.

Choose Export all routing rules to export all routing rules in the current selected routing
rule group(s) at once. Depending on configuration (general settings item Threshold for zip
file when exporting), the routing rules are exported in a single zip file. Note: importing a
zip file is also supported. Unzipping the exported file before importing can be done (when
individual routing rules need to be imported), but is not necessary.

To import, choose Import routing rule(s) from the Routing rule menu, and click Add
file to select the .export file or .zip file to import. Multiple files can be added to the list.
Click Cancel to remove the file from the list of files to be imported. Click Import to start the
importing process. New routing rules are created and displayed in the routing rule
configuration screen. Their status is not validated and not activated.

Duplicate routing rule id’s are not allowed (routing rules with an id that already exists will not
be imported) unless the Overwrite existing routing rule id(s) checkbox is checked. In
that case, the existing routing rule configuration will be overwritten by the imported one.

Copyright © BroadForward BV 2023 Page 85 of 199


BFX User Manual

Note: This procedure only exports and imports routing rule configuration. It does not export
or import AVP files.

Copyright © BroadForward BV 2023 Page 86 of 199


BFX User Manual

5 Tracing Rules Configuration


A Tracing Rule is a set of conditions that are applied on a message, in order to determine if
that message should be marked for logging. A Tracing Rule can be applied to a message
through the configuration of the tracing section in a Message Flow.

The following sections describe how to accomplish the Tracing Rule management tasks
available in BFX.

5.1 Main screen


To open the Tracing Rules Configuration GUI, log in and select the Tracing Rules section.

M AIN SCREEN WITH T RACING R ULE CONFIGURATIONS - EXAMPLE

The main screen consists of the following parts:

1. A main menu bar (see section 2.2);


2. A console pane containing a log of the actions performed in the GUI;
3. A menu bar with a set of commands and Undo button;
4. A listing of the tracing rules. Select a tracing rule by clicking its name in the list. A
pane opens, displaying status information about the tracing rule;
5. Tracing rule parameters, e.g. description, group etc.;
6. Configuration of tracing rule conditions, i.e. under what conditions a message is
marked for tracing;

The commands in the menu are:

• Tracing rule ➔ Reload tracing rule: reload tracing rule configuration and information;
• Tracing rule ➔ Add tracing rule: create a new tracing rule (section 5.2);

Copyright © BroadForward BV 2023 Page 87 of 199


BFX User Manual

• Tracing rule ➔ Remove tracing rule: remove a tracing rule configuration (section 5.6);
• Tracing rule ➔ Remove multiple tracing rules: remove multiple tracing rule
configurations (section 5.6);
• Tracing rule ➔ Open recycle bin: open the list of previously removed tracing rules
(section 5.6);
• Tracing rule ➔ Email/Print tracing rule details: send email(s) with tracing rule details
(choose Email tracing rule details and provide one or more email addresses,
separated by comma) or open a page with tracing rule details for printing purposes by
choosing Print tracing rule details;
• Tracing rule ➔ Revert to last validated: the tracing rule configuration is modified back
to the state when it was last validated;
• Tracing rule ➔ Validate all tracing rules: issues a validation command for all tracing
rules in the list;
• Tracing rule ➔ Activate all tracing rules: issues an activation command for all tracing
rules in the list;
• Tracing rule ➔ Deactivate all tracing rules: issues a deactivation command for all
tracing rules in the list;
• Tracing rule ➔ Export/Import: create and use .export files for redistribution of
tracing rule configuration across BFX deployments (section 5.7);
• Provisioning ➔ Tracing rules: offers the option to upload a CSV file for bulk
provisioning of tracing rules. See Appendix B for more information;
• Filter: a filter can be set to reduce the number of tracing rules displayed in the list.
Filters can be set on tracing rule groups, conditions and destination labels (where
applicable). Select any of the menu entries under the Filter menu to open a dialog box
to make a choice of the tracing rule group(s), to specify and apply text that is used as
partial string to test any condition field/value against (case sensitive), or to specify
and apply text that is used as partial string to test any destination label against (case
sensitive). Multiple filters can be set; these are combined in a logical AND;
• Undo: undo the most recent changes made to tracing rule parameters, conditions or
destination labels. The number of commands that can be undone is subject to
configuration; see the BFX Operation and Configuration Manual for more information.
Undo-ing a previous change affects the ‘Last updated’ value and Validation status.
Subject to configuration via the GUI settings, a right-mouse click context menu is available. It
provides a list of recently selected flows, tracing rules and list profiles for quick navigation. The
area to click is the listing area. Other screen areas provide the browser-defined context menu.

5.1.1 Status information


The status information provided for a tracing rule in the listing’s pane is:

• Validation status: a tracing rule’s validation status is either one of:


Validated
Not validated

Copyright © BroadForward BV 2023 Page 88 of 199


BFX User Manual

A tracing rule is considered to be validated if the tracing rule configuration has been
successfully checked by the system for completeness. Incomplete configurations
cannot be validated and need to be corrected according to the feedback provided by
the system. A tracing rule needs to be validated before it can be activated. Making a
change to the tracing rule’s configuration sets the tracing rule’s validation status to
Not validated.
• Active status: a tracing rule’s active status is either one of:
Not active
Active (followed by an “Active since” date)
Active (followed by an “Active since” date and “modified since” indication)
A tracing rule is active when the BFX server applies the tracing rule configuration in
the handling of traffic. Tracing rules that are active, but have been modified in the GUI
(indicated by orange coloring), can be re-activated.
Hover over the label Active status to see more details per node.
The tracing rule’s validation status and active status can be modified by clicking the value
and entering a new value.

To improve the GUI responsiveness, the tracing rule’s Active status is cached, and not
retrieved each time upon reading of the tracing rule configuration. The cache is refreshed
after status changes, or when cache info is older than 24 hours, or when the Ctrl key is
pressed while reading the tracing rule configuration.

The label of the listing’s pane consists of the tracing rule’s id and description. A colored
square in front of the tracing rule id indicates the active status:

• Green: active
• Red: not active
• Orange: active, but modified
• Grey: unknown or active status not determined yet
5.1.2 Parameters
The parameters provided for a tracing rule are:

• Tracing rule id: the id of the tracing rule;


• Description: descriptive text;
• Rule group: the group to which the tracing rule belongs. Tracing rules can be grouped
to improve the manageability in case of a large number of tracing rules. Enter the
group name or make a choice from the groups already available;
• Last updated: the date/time and user id of the last modification of the tracing rule;
• Rule in: a list of flows in which the tracing rule is used. An arrow icon is placed next to
the flows. Clicking the arrow will open the flow in the Flows GUI section. If the flow is
not visible in this GUI section (due to filtering options), the first flow in the list will be
opened.

Copyright © BroadForward BV 2023 Page 89 of 199


BFX User Manual

The tracing rule’s description and rule group can be modified by clicking the value and
entering a new value.

5.1.3 Console
Feedback on the GUI functions performed is provided on the far right of the console bar. An
icon indicates whether the request is in progress, was successful, or was not successful.
Additional information is proved in the console pane. Example:

5.1.4 Conditions
The tracing rule conditions determine if a message is marked for tracing. These conditions
are the same as for the Routing Rules, so see section 4.3.6 for more details on the
configuration of the conditions.

5.2 Creating a tracing rule


To create a new tracing rule, select Add tracing rule from the Tracing rule menu.

C REATING A T RACING RULE

Provide a tracing rule id in the edit box, and choose Create. A tracing rule id may consist of
maximum 32 of allowed characters: letters a through z (either case), hyphen (-) and/or
numbers 0 through 9. Tracing rule ids that already exist cannot be used. Tracing rule ids are
not case sensitive. After a tracing rule is created, the tracing rule id cannot be changed
anymore.

An empty tracing rule is created which can be configured as explained in section 5.3. To
duplicate a tracing rule configuration, specify a tracing rule from the Duplicate from box.

The new tracing rule is not validated and not active.

5.2.1 Provisioning
For bulk provisioning of tracing rules using a CSV file, use the Provisioning menu. See
Appendix B for more information.

Copyright © BroadForward BV 2023 Page 90 of 199


BFX User Manual

5.3 Modifying an existing tracing rule


5.3.1 Tracing rule id
Tracing rule ids cannot be edited. They are set when added (or duplicated). To rename a
tracing rule, create a duplicate tracing rule (using Add tracing rule from the Tracing rule
menu) and remove the original one.

5.3.2 Description
To modify the tracing rule description, click on the description (or the indicator), edit
the description and press Enter.

5.3.3 Tracing rule Group


To modify the tracing rule group, click on the group name (or the indicator), edit the
group name and press Enter. Alternatively, select an existing group from the drop-down list.
A tracing rule group may consist of a maximum 32 of allowed characters: letters a through z
(either case), hyphen (-) and/or numbers 0 through 9.

To remove a tracing rule from a group, provide an empty tracing rule group.

5.3.4 Validation status


To validate the tracing rule, click on the current value, and choose Validate now from the
select box. See section 5.4 for more information.

5.3.5 Active status


To modify the tracing rule activate status, click on the current value, and choose the desired
value from the select box. See section 5.4 and 5.5 for more information.

5.3.6 Conditions
The number of routing rule conditions is unlimited. Every Event and Attribute Value Pair
(AVP) of the incoming message can be tested using a number of operations.

See section 4.3.6 for more details on the configuration of the conditions.

5.4 Validating and activating a tracing rule


In order to activate a tracing rule, which means deploying a tracing rule in the message traffic
handled by BFX, a tracing rule must be validated first. Validation is a two-step process:

7. Verification of the tracing rule configuration data for completeness


8. Generation of XML configuration files as used by the BFX server
Any change made to the tracing rule configuration, sets the validation status to not validated.

To validate the tracing rule, click on the current value of the Validation status, and choose
Validate now from the select box. If the tracing rule cannot be validated, information on the
reason is provided on the screen (similar to flows; see section 3.4.5). Typically, an
incomplete tracing rule configuration is the cause for a failing validation.

Copyright © BroadForward BV 2023 Page 91 of 199


BFX User Manual

To activate the tracing rule, click on the current value of the tracing rule’s active status, and
choose Activate now from the select box. The tracing rule is activated and the active status
indication is updated.

If an active tracing rule is modified, and subsequently validated, an option “Reactivate now”
is available in the select box.

R EACTIVATION OPTION

Reactivating a tracing rule deploys the tracing rule modifications without message handling
interruption. To reactivate a tracing rule, select the Reactive now option. The tracing rule is
reactivated and the active status indication is updated.

Note: the new tracing rule configuration is used immediately. There is no re-activation required
for flows that use this rule (in a Tracing step), nor are pending messages handled according to
the previous tracing rule configuration.

Depending on configuration (see the BFX Operation and Configuration Manual), a


confirmation window is presented before the actual reactivation. This window highlights the
delta in the existing and the new configuration.

5.4.1 Validating and activating all tracing rules


The menu Tracing rule provides options to validate and activate all tracing rules displayed in
the GUI, in the order as displayed. When chosen, all tracing rules will be validated or activated
subsequently. A progress dialog box contains the results as the validation or activation
progresses. The process can be stopped by clicking the Cancel button.

When the progress dialog box was closed, the menu entry Cancel… (in red text) under
Tracing rule can be used to stop the ongoing validation or activation process.

In addition, when the progress dialog box was closed while the validation/activation of all
tracing rules is still ongoing, the user is warned when navigating away from the page. The user
can decide to wait for the pending actions to finish (after which the navigation action is
performed), force the pending actions to be stopped and perform the navigation action directly,
or to cancel the navigation action and return to the screen.
Note: this functionality is not available for browser navigation such as the Back or Refresh
buttons.

5.5 Deactivating a tracing rule


In order to end the deployment of a tracing rule in the data stream handled by BFX, a tracing
rule must be deactivated. To deactivate the tracing rule, click on the current value of the
tracing rule’s active status, and choose Deactivate now from the select box. The tracing
rule is deactivated and the active status indication is updated.

Copyright © BroadForward BV 2023 Page 92 of 199


BFX User Manual

5.5.1 Deactivating all tracing rules


The menu Tracing rule provides options to deactivate all tracing rules displayed in the GUI,
in the order as displayed. When chosen, all tracing rules will be validated or activated
subsequently. A progress dialog box contains the results as the validation or activation
progresses. The process can be stopped by clicking the Cancel button.

When the progress dialog box was closed, the menu entry Cancel… (in red text) under
Tracing rule can be used to stop the ongoing deactivation process.

The remark on page navigation in section 5.4.1 also applies to deactivation.

5.6 Removing a tracing rule


If a tracing rule is no longer required, it can be removed from the system. If a tracing rule is
active, it cannot be removed. If a tracing rule is used in a flow, it cannot be removed.

To remove a tracing rule, select Tracing rule from the menu bar, and choose Remove
tracing rule. A confirmation question is asked. After confirmation, the tracing rule is
removed.

To remove multiple tracing rules at once, choose the Remove multiple tracing rules
option from the Tracing rule menu. This opens a dialog box from which the to be deleted
tracing rules can be selected. After confirmation a dialog box opens which displays the
progress of the removal process. The process can be cancelled via this dialog box too. The
dialog box can be closed, in which case the progress can be observed via the GUI console.
Cancellation is also possible through the same menu option.

In addition, when the progress dialog box was closed while the removal of the tracing rules is
still ongoing, the user is warned when navigating away from the page. The user can decide to
wait for the pending actions to finish (after which the navigation action is performed), force the
pending actions to be stopped and perform the navigation action directly, or to cancel the
navigation action.

The tracing rule configuration is not removed permanently: the information is moved to a
‘recycle bin’ on the BFX system. To restore a tracing rule, choose Open recycle bin in the
Tracing rule menu option. A list of recyclable tracing rules is presented.

T RACING R ULE RECYCLE BIN - EXAMPLE

Select the tracing rules from this list to restore or purge (delete permanently).

Copyright © BroadForward BV 2023 Page 93 of 199


BFX User Manual

5.7 Exporting and Importing tracing rules


When tracing rules need to be exchanged between BFX instances, for example a BFX test
system and a BFX production system, the tracing rules can be exported on the source
system by using the GUI, and subsequently be imported on the target system. The imported
tracing rule has to be validated before it can be activated.

Before importing a tracing rule on the target system it is recommended to create a restore
point (see section 3.9). Should something go wrong, then the restore point can be used to
revert to the (entire) previous configuration.

For exporting tracing rule configurations from a BFX system, the export function is used. To
export a tracing rule, choose Export selected tracing rule from the Tracing rule menu
to generate a .export file for local storage. A ‘file save’ dialog is presented, depending on
the web browser used. This .export file can be redistributed to another BFX deployment to
be imported there via the GUI. Do not modify the contents of the .export file.

Choose Export all tracing rules to export all tracing rules in the current selected tracing
rule group(s) at once. Depending on configuration (general settings item Threshold for zip
file when exporting), the tracing rules are exported in a single zip file. Note: importing a
zip file is also supported. Unzipping the exported file before importing can be done (when
individual tracing rules need to be imported), but is not necessary.

To import, choose Import tracing rule(s) from the Tracing rule menu, and click Add
file to select the .export file or .zip file to import. Multiple files can be added to the list.
Click Cancel to remove the file from the list of files to be imported. Click Import to start the
importing process. New tracing rules are created and displayed in the tracing rule
configuration screen. Their status is not validated and not activated.

Duplicate tracing rule id’s are not allowed (tracing rules with an id that already exists will not be
imported) unless the Overwrite existing tracing rule id(s) checkbox is checked. In that
case, the existing tracing rule configuration will be overwritten by the imported one.

Note: This procedure only exports and imports tracing rule configuration. It does not export
or import AVP files.

Copyright © BroadForward BV 2023 Page 94 of 199


BFX User Manual

6 List Profiles Configuration


A List Profile is a combination of a set of data files (one or more) and key definitions. These
data file(s) make up the source data on which the lookup is performed. Retrieval (lookup) is
done on basis of the key(s).

At least one key must be defined, which is the primary key. In addition, more keys can be
used in the retrieval. Either the primary key, or the combination of primary and additional
keys, must uniquely identify a row in the list data combined from the various data files within
a profile. A single matching record is returned by the module.

For primary keys, a "longest match" can be used. This match type is configured in the flow
step for the List module, in the flow configuration.

List Profiles know two modes of operation: regular and extended. In regular mode, there is a
primary key and optional secondary key, and one or more data files. In extended mode, there
is a primary key and up to four optional additional keys, and only one data file. In extended
mode only, the possibility to specify ranges for the primary key is available. For example:
3145611111-3145655555. The start and end values should have the same length. The values
are considered full values, not prefixes.

For List Profiles in regular mode, a secondary key can be specified in three different ways.

1. It can be identified by the word in the header as specified in the Secondary key
Label GUI configuration item

2. It can be set to a static value in the Secondary key Value GUI configuration item.
This is useful for example when the list data set consists of more than one data file,
where one file is kept per service provider or country.

There can only be one of Secondary key Label and a Secondary key Value set. List
Profiles that use the primary key only, can only have one data file. When more than one data
file is used, the secondary key (either via label or key) must be set for each of the files.

The following sections describe how to accomplish the List Profile management tasks
available in BFX.

6.1 Main screen


To open the List Profiles Configuration GUI, log in and select the List Profiles section.

Copyright © BroadForward BV 2023 Page 95 of 199


BFX User Manual

M AIN SCREEN WITH LIST PROFILE C ONFIGURATIONS - E XAMPLE

The main screen consists of the following parts:

1. A main menu bar (see section 2.2);


2. A console pane containing a log of the actions performed in the GUI;
3. A menu bar with a set of commands and Undo button;
4. A listing of the list profiles. Select a list profile by clicking its name in the list. A pane
opens, displaying status information about the list profile;
5. List profile parameters, e.g. description;
6. Configuration of list profile files, i.e. what data file, primary and secondary keys are
used when this list profile is applied.
The commands in the menu are:

• List profile ➔ Reload list profile: reload list profile configuration and information;
• List profile ➔ Add list profile: create a new list profile (section 6.2);
• List profile ➔ Remove list profile: remove a list profile configuration (section 6.6);

Copyright © BroadForward BV 2023 Page 96 of 199


BFX User Manual

• List profile ➔ Remove multiple list profiles: remove multiple list profile configurations
(section 6.6);
• List profile ➔ Open recycle bin: open the list of previously removed list profiles
(section 6.6);
• List profile ➔ Email/Print list profile details: send email(s) with list profile details
(choose Email list profile details and provide one or more email addresses,
separated by comma) or open a page with list profile details for printing purposes by
choosing Print list profile details;
• List profile ➔ Revert to last validated: the list profile configuration is modified back to
the state when it was last validated;
• List profile ➔ Validate all list profiles: issues a validation command for all list profiles
in the list;
• List profile ➔ Activate all list profiles: issues an activation command for all list profiles
in the list;
• List profile ➔ Deactivate all list profiles: issues a deactivation command for all list
profiles in the list;
• List profile ➔ Export/Import: create and use .export files for redistribution of list
profile configuration across BFX deployments (section 6.7);
• Provisioning ➔ Data files: offers the option to upload a CSV file to the server to serve
in list profiles. See Appendix C for more information;
• Filter: a filter can be set to reduce the number of list profiles displayed in the list.
Filters can be set on list profile groups, list profile file paths and secondary key
information (where applicable). Select any of the menu entries under the Filter menu
to open a dialog box to make a choice of the list profile group(s), or to specify and
apply text that is used as partial string to test any file path or secondary key
label/value against (case sensitive). Multiple filters can be set; these are combined in
a logical AND;
• Undo: undo the most recent changes made to list profile configuration. The number of
commands that can be undone is subject to configuration; see the BFX Operation and
Configuration Manual for more information. Undo-ing a previous change affects the
‘Last updated’ value and Validation status.
Subject to configuration via the GUI settings, a right-mouse click context menu is available. It
provides a list of recently selected flows, routing rules and list profiles for quick navigation. The
area to click is the listing area. Other screen areas provide the browser-defined context menu.

6.1.1 Status information


The status information provided for a list profile in the listing’s pane is:

• Validation status: a list profile’s validation status is either one of:


Validated
Not validated
A list profile is considered to be validated if the list profile configuration has been

Copyright © BroadForward BV 2023 Page 97 of 199


BFX User Manual

successfully checked by the system for completeness. Incomplete configurations


cannot be validated and need to be corrected according to the feedback provided by
the system. A list profile needs to be validated before it can be activated. Making a
change to the list profile’s configuration sets the list profile’s validation status to Not
validated.
• Active status: a list profile’s active status is either one of:
Not active
Active (followed by an “Active since” date)
Active (followed by an “Active since” date and “modified since” indication)
Reloading
A list profile is active when the BFX server applies the list profile configuration in the
handling of traffic, by means of the List module (see Flow Management). List profiles
that are active, but have been modified in the GUI (indicated by orange coloring), can
be re-activated.
The active status Reloading is displayed when the reloading is in progress. Since the
data files associated with List profile can become large, this may take some time.
While reloading the GUI will poll for the status (every 3 seconds, up to a maximum of
20 times) until the reloading has completed (successful or not).
Hover over the label Active status to see more details per node.
• Operational status: a list profile’s operational status is displayed if a (re)load of the
profile is in progress or has failed. It is either one of:
Loading
Loading failed
Reloading failed
Hover over the label Operational status to see more details per node.
• File load status: the load status for each file on each of the nodes, including status
text, number of records loaded (green), number of duplicate records (if applicable, in
red) and last loaded date/time.
The list profile’s validation status and active status can be modified by clicking the value and
entering a new value.

To improve the GUI responsiveness, the list profile’s Active status is cached, and not
retrieved each time upon reading of the list profile configuration. The cache is refreshed after
status changes, or when cache info is older than 24 hours, or when the Ctrl key is pressed
while reading the list profile configuration.

The label of the listing’s pane consists of the list profile’s id and description. A colored square
in front of the list profile id indicates the active status:

• Green: active
• Red: not active
• Orange: active, but modified
• Purple: reloading
• Grey: unknown or active status not determined yet

Copyright © BroadForward BV 2023 Page 98 of 199


BFX User Manual

6.1.2 Parameters
The parameters provided for a list profile are:

• List profile id: the id of the list profile;


• Description: descriptive text;
• List profile group: the group to which the list profile belongs. List profiles can be
grouped to improve the manageability in case of a large number of list profiles. Enter
the group name or make a choice from the groups already available;
• Case sensitive: determines if the primary and secondary keys are treated case
sensitive (on) or not (off);
• List profile mode: determines the list profile mode, which can be regular (default) or
extended. Changing the mode must be confirmed. A warning is given when
configuration information will be lost due to a change;
• Last updated: the date/time and user id of the last modification of the list profile;
• List profile in: a list of flows in which the list profile is used. An arrow icon is placed
next to the flows. Clicking the arrow will open the flow in the Flows GUI section. If the
flow is not visible in this GUI section (due to filtering options), the first flow in the list
will be opened
The list profile’s description, case-sensitivity and mode can be modified by clicking the value
and entering/selecting a new value.

6.1.3 Console
Feedback on the GUI functions performed is provided on the far right of the console bar. An
icon indicates whether the request is in progress, was successful, or was not successful.
Additional information is proved in the console pane. Example:

6.1.4 Files
The data in the list which can be queried by use of the List module, comes from one or more
data files. In the section Files, these files are selected. In addition, details on an optional
secondary key can be provided. See section 6.3 for more information.

6.2 Creating a list profile


To create a new list profile, select Add list profile from the List profile menu.

Copyright © BroadForward BV 2023 Page 99 of 199


BFX User Manual

C REATING A LIST PROFILE

Provide a list profile id in the edit box, and choose Create. A list profile id may consist of
maximum 32 of allowed characters: letters a through z (either case), hyphen (-) and/or
numbers 0 through 9. List profile ids that already exist cannot be used. List profile ids are not
case sensitive. After a list profile is created, the list profile id cannot be changed anymore.

An empty list profile is created which can be configured as explained in section 6.3. To
duplicate a list profile configuration, specify a list profile from the Duplicate from box.

The new list profile is not validated and not active.

6.2.1 Provisioning
For provisioning of data files (CSV format) to be used in list profiles, use the Provisioning
menu. See Appendix C for more information.

6.3 Modifying an existing list profile


6.3.1 List profile id
List profile ids cannot be edited. They are set when added (or duplicated). To rename a list
profile, create a duplicate list profile (using Add list profile from the List profile menu) and
remove the original one.

6.3.2 Description
To modify the list profile description, click on the description (or the indicator), edit
the description and press Enter.

6.3.3 List profile group


To modify the list profile group, click on the group name (or the indicator), edit the
group name and press Enter. Alternatively, select an existing group from the drop-down list.
A list profile group may consist of a maximum 32 of allowed characters: letters a through z
(either case), hyphen (-) and/or numbers 0 through 9.

To remove a list profile from a group, provide an empty list profile group.

6.3.4 Case sensitive


To modify the list profile’s case sensitivity, click on the current value and make a selection
from the options.

Copyright © BroadForward BV 2023 Page 100 of 199


BFX User Manual

6.3.5 List profile mode


To modify the list profile’s mode, click on the current value and make a selection from the
options. Changing the mode must be confirmed. A warning is given when configuration
information will be lost due to a change.

6.3.6 Validation status


To validate the list profile, click on the current value, and choose Validate now from the
select box. See section 6.4 for more information.

6.3.7 Active status


To modify the list profile activate status, click on the current value, and choose the desired
value from the select box. See section 6.4 and 6.5 for more information.

6.3.8 Files
A content pane is provided to define the data files and optional secondary key information.
Data files are CSV formatted files, with the first line being the header defining the labels
(comma separated) for the columns of data that follow.

FILES SECTION – EXAMPLE (REGULAR MODE )

Copyright © BroadForward BV 2023 Page 101 of 199


BFX User Manual

Select the file by clicking the Browse file system button and navigate to the desired data
file. The location from where files can be browsed (on the server node) is subject to
configuration; see the BFX Operation and Configuration Manual for more information. The
file is checked for existence, readability, presence of a (non-binary) header. Warnings are
displayed in the GUI console pane. If a file is chosen, the file size, number of lines (incl.
header) and modification date/time are displayed.

Comments and locality (see section 6.3.8.4) can be edited per file.

A primary key to apply to this file must be selected. Key labels are taken from the header of
the data file. If the value primaryKey is available in the header of the selected file, it is
selected as the initial value for the primary key label.

[regular mode] In addition, a secondary key to apply to this file can be selected. This is
required if a secondary key is used to select the data file to look up a record on basis of the
primary key. Either a secondary key label or secondary key value can be set, not both. Key
labels are taken from the header of the data file. A key label that is used as primary key,
cannot be used as secondary key. (When the primary key is set to the same value as the
secondary key currently is, it will be cleared). Values are free-format text and are applied to
the data column designated by the word chosen as secondary key in the data file’s header.

[extended mode] In addition, up to four additional keys to apply to this file can be selected.
Key labels are taken from the header of the data file. A key label can only be used once as a
key. Keys must be specified consecutively, in other words, there cannot be key #2 and #4,
there must be a key #3.

Data files (in CSV format) can be uploaded to the server; see Appendix C for more
information.

Additional entries can be created by clicking the Add entry button, and removed by clicking
the remove button. Entries can be re-ordered by using the up/down buttons or by drag and
drop, although the order of files has no relevance for the functioning of the List module.
Entries can be disabled by clicking the Disabled button. After (re-)activation, the file is not
used by the List module, but the configuration information is lost as it would have been when
the entry is removed. Note that in extended mode, only one data file can be specified.

6.3.8.1 Reloading
Data files can be reloaded by the List module by pressing the Reload file button. This
reloading applies to the selected list profile only ad it unrelated to list profile (re)activation (see
section 6.4).

Data file reloading is only available for active list profiles.

6.3.8.2 Viewing and Editing


Data files can be edited or viewed (depending on user profile access flags) if the number of
lines is equal to or less than the configured number (see GUI setting item Limit for editable
data files). If the number of lines is higher, than the View/Edit button is not available.

When the View file (or Edit file) button is pressed, a data grid pane opens.

Copyright © BroadForward BV 2023 Page 102 of 199


BFX User Manual

Several functions are available in this grid.

• In-line editing. Click a row, or the Edit row button, to edit the row data. Confirm the
modification via the Confirm edit button or discard them using the Cancel edit
button.
• Adding rows. Click the top-right button to open a row to enter information for the new
data, and press the Insert row button to confirm the insertion.
• Deleting rows. Click the Delete row button to delete the row, after confirmation.
• Sorting. Click a column header to sort the data rows. Click again to change the
sorting order.
When the Save button is pressed, the data file is saved according to the content of the pane.
Use the Cancel button to discard the changes.

6.3.8.3 Viewing and editing full screen


Alternatively, the data grid can be opened in a full screen editor. Use the View file full
screen/Edit file full screen buttons for this. The full screen editor supports larger data files.
The column marked with # indicates an internal row id which is not part of the data file
content. The column marked with Sel is used to select rows. The file name displayed in the
upper left-hand corner will turn red to indicate changes in the data.

Copyright © BroadForward BV 2023 Page 103 of 199


BFX User Manual

Several functions are available in this grid.

• In-line editing. Click a cell to edit the row data. Press the Escape key to cancel the
edit. Any other action will confirm the edit.
• Adding rows. Click the Add row button to open a row to enter information for the new
data, and press the Insert row button to confirm the insertion.
• Deleting rows. Click the Delete selected row(s) button to delete the selected
row(s), after confirmation. Use the checkboxes in the Sel column to select rows.
• Replicating rows. Click the Replicate selected row(s) button to replicate the
selected row(s), after confirmation. Use the checkboxes in the Sel column to select
rows.
• Ordering and sorting. Click a column header to sort the data rows. Click again to
change the sorting order. Column headers can be moved to change the column
ordering.
• Filtering. In each column, data can be entered in the top row to limit the view on rows
that match the entered text. The following applies to the filtering:
• The matching is case insensitive.
• Prefix search can be achieved by prefixing the query with ^, e.g. ^123.
• Suffix search can be achieved by suffixing the query with $, e.g. 123$.
• Multiple filters can be applied.
• Pagination controls are available at the bottom of the grid.
When the Save button is pressed, the data file is saved according to the content of the pane.
When the Save & close button is pressed, the page returns to the List Profile management
screen after saving. Use the Cancel button to discard the changes and return to the List

Copyright © BroadForward BV 2023 Page 104 of 199


BFX User Manual

Profile management screen. Use the Refresh button to re-load the data; a warning is
provided if there are unsaved changes.

6.3.8.4 Locality
A data file has an attribute called locality. The purpose of this is to provide a basic concept of
ownership of the file, in order to prevent simultaneous editing and thereby risking loss of
information.

The possible localities and their meaning is as follows:

1. On server: the file resides on the server (=BFX node).


2. Local: the file is obtained locally, i.e. on the PC or workstation of the user, for local
editing (e.g. via Excel).
3. Editing in BFX GUI: the file is being edited in the BFX GUI web browser, either in a
dialog or in full screen.
The file starts On server. When the locality is changed by clicking the current locality value
and choosing Get local, the file is downloaded (depending on browser behavior) and the file's
locality changes to Local. In this state, the Edit buttons are disabled.

The local file can now be edited using any third party software (e.g. Excel). When done, the file
must be put back to the server. Through the select or drop local file button a local file is
chosen, and the locality is then modified by choosing Put on server. The file is uploaded and
the file's locality changes to On server.

Alternatively the choice for Release can be made in which case no file is uploaded, but the
file's locality is changed to On server. In order to re-get the file locally, choose Get local
again.

Users other than the one holding the 'lock' as obtained after getting it, cannot modify the file's
locality.

The GUI performs the following checks when changing locality:

1. If a user gets the file, it must be On server, otherwise the command will fail.
2. If a user puts the file, it must be Local', otherwise the command will fail.
3. If a user releases the file, it must be Local, otherwise the command will fail.
To correct situations that may occur when get/put sequences are not performed in order (e.g.
a user gets a file but never puts it back), there is an override command available to 'get' the file
nevertheless. This overriding is subject to regular GUI user access control.

When opening the data file editor in the GUI (either in a dialog or full screen), the locality is set
to Editing in BFX GUI. The GUI checks if the data file is On server before doing so,
otherwise the command will fail. When saving or closing the file editor in the GUI, the locality is
set back to On server.

Alternatively the choice for Release can be made in which case the file's locality is changed to
On server.

Copyright © BroadForward BV 2023 Page 105 of 199


BFX User Manual

The GUI performs the following checks when saving (dialog editor) or saving & closing (full
screen editor) or cancelling the file data editing:

1. If a user saves the file, it must not be On server, otherwise the locality change will
fail. The file data is saved nevertheless.
2. If a user cancels the file editing, it must not be On server, otherwise the locality
change will fail.

6.3.8.5 Validating list data file


A custom validation script can be configured (see the BFX Operation and Configuration
Manual) to provide the user the option to validate a data file after editing. This can be used
e.g. to run a consistency check on the edited data file.

6.4 Validating and Activating a list profile


In order to activate a list profile, which means deploying a list profile in the message traffic
handled by BFX, a list profile must be validated first. Validation is a two-step process:

1. Verification of the list profile configuration data for completeness


2. Generation of XML configuration files as used by the BFX server
Any change made to the list profile configuration, sets the validation status to not validated.

To validate the list profile, click on the current value of the Validation status, and choose
Validate now from the select box. If the list profile cannot be validated, information on the
reason is provided on the screen (similar to flows; see section 3.4.5). Typically, an
incomplete list profile configuration is the cause for a failing validation.

To activate the list profile, click on the current value of the list profile’s active status, and
choose Activate now from the select box. The list profile is activated and the active status
indication is updated.

If an active list profile is modified, and subsequently validated, an option “Reactivate now” is
available in the select box.

R EACTIVATION OPTION

Reactivating a list profile deploys the list profile modifications without message handling
interruption. To reactivate a list profile, select the Reactive now option. The list profile is
reactivated and the active status indication is updated.

Copyright © BroadForward BV 2023 Page 106 of 199


BFX User Manual

Depending on configuration (see the BFX Operation and Configuration Manual), a


confirmation window is presented before the actual reactivation. This window highlights the
delta in the existing and the new configuration.

6.4.1 Validating and activating all list profiles


The menu List profile provides options to validate and activate all list profiles displayed in the
GUI, in the order as displayed. When chosen, all list profiles will be validated or activated
subsequently. A progress dialog box contains the results as the validation or activation
progresses. The process can be stopped by clicking the Cancel button.

When the progress dialog box was closed, the menu entry Cancel… (in red text) under List
profile can be used to stop the ongoing validation or activation process.

In addition, when the progress dialog box was closed while the validation/activation of all list
profiles is still ongoing, the user is warned when navigating away from the page. The user can
decide to wait for the pending actions to finish (after which the navigation action is performed),
force the pending actions to be stopped and perform the navigation action directly, or to cancel
the navigation action and return to the screen.
Note: this functionality is not available for browser navigation such as the Back or Refresh
buttons.

6.5 Deactivating a list profile


In order to end the deployment of a list profile in the data stream handled by BFX, a list
profile must be deactivated. To deactivate the list profile, click on the current value of the list
profile’s active status, and choose Deactivate now from the select box. The list profile is
deactivated and the active status indication is updated.

6.5.1 Deactivating all list profiles


The menu List profile provides options to deactivate all list profiles displayed in the GUI, in
the order as displayed. When chosen, all list profiles will be validated or activated
subsequently. A progress dialog box contains the results as the validation or activation
progresses. The process can be stopped by clicking the Cancel button.

When the progress dialog box was closed, the menu entry Cancel… (in red text) under List
profile can be used to stop the ongoing deactivation process.

The remark on page navigation in section 6.4.1 also applies to deactivation.

6.6 Removing a list profile


If a list profile is no longer required, it can be removed from the system. If a list profile is
active, it cannot be removed. If a list profile occurs in a List step of a flow, it cannot be
removed.

To remove a list profile, select List profile from the menu bar, and choose Remove list
profile. A confirmation question is asked. After confirmation, the list profile is removed.

To remove multiple list profiles at once, choose the Remove multiple list profiles option
from the List profile menu. This opens a dialog box from which the to be deleted list profiles
can be selected. After confirmation a dialog box opens which displays the progress of the

Copyright © BroadForward BV 2023 Page 107 of 199


BFX User Manual

removal process. The process can be cancelled via this dialog box too. The dialog box can be
closed, in which case the progress can be observed via the GUI console. Cancellation is also
possible through the same menu option.

In addition, when the progress dialog box was closed while the removal of the list profiles is
still ongoing, the user is warned when navigating away from the page. The user can decide to
wait for the pending actions to finish (after which the navigation action is performed), force the
pending actions to be stopped and perform the navigation action directly, or to cancel the
navigation action.

The list profile configuration is not removed permanently: the information is moved to a
‘recycle bin’ on the BFX system. To restore a list profile, choose Open recycle bin in the
List profile menu option. A list of recyclable list profiles is presented.

LIST PROFILE RECYCLE BIN - EXAMPLE

Select the list profile(s) from this list to restore or purge (delete permanently).

6.7 Exporting and Importing list profiles


When list profiles need to be exchanged between BFX instances, for example a BFX test
system and a BFX production system, they can be exported on the source system by using
the GUI, and subsequently be imported on the target system. The imported list profile has to
be validated before it can be activated.

Before importing a list profile on the target system, it is recommended to create a restore
point (see section 3.9). Should something go wrong, then the restore point can be used to
revert to the (entire) previous configuration.

For exporting list profile configurations from a BFX system, the export function is used. To
export a list profile, choose Export selected list profile from the List profile menu to
generate a .export file for local storage. A ‘file save’ dialog is presented, depending on the
web browser used. This .export file can be redistributed to another BFX deployment to be
imported there via the GUI. Do not modify the contents of the .export file.

Choose Export all list profiles to export all list profiles in the current selected list profile
group(s) at once. Depending on configuration (general settings item Threshold for zip file
when exporting), the list profiles are exported in a single zip file. Note: importing a zip file
is also supported. Unzipping the exported file before importing can be done (when individual
list profiles need to be imported), but is not necessary.

Copyright © BroadForward BV 2023 Page 108 of 199


BFX User Manual

To import, choose Import list profile(s) from the List profile menu, and click Add file to
select the .export file or .zip file to import. Multiple files can be added to the list. Click
Cancel to remove the file from the list of files to be imported. Click Import to start the
importing process. New list profiles are created and displayed in the list profile configuration
screen. Their status is not validated and not activated.

Duplicate list profile id’s are not allowed (list profiles with an id that already exists will not be
imported) unless the Overwrite existing list profile id(s) checkbox is checked. In that
case, the existing list profile configuration will be overwritten by the imported one.

Note: This procedure only exports and imports list profile configuration. It does not export or
import data files.

Copyright © BroadForward BV 2023 Page 109 of 199


BFX User Manual

7 Subscribers
In BFX, Subscribers are data objects which are stored in a database. With a subscriber
object, a set of associated data is stored. This can be a single attribute, or multiple attributes.
The meaning and usage of these attributes is up to the use case implemented in BFX.

For this, the Storage step is applied in a flow to add, modify, delete or search subscriber
data. See section 3.3.10.18 for more information. The object is accessible through a key
which is configurable, e.g. MSISDN or IMSI (see the BFX Operation and Configuration
Manual). In this chapter, MSISDN is assumed.

The Storage and HTTP modules are required to manage the Subscriber database via the
GUI.

The following sections describe how to accomplish the Subscribers management tasks
available in BFX.

Note: the name of the object used in this section is Subscriber. Through configuration, this
name can be altered. See the BFX Operation and Configuration Manual for more
information.

7.1 Main screen


To open the Subscribers Configuration GUI, log in and select the Subscribers section.

The main screen consists of the following parts:

1. A main menu bar (see section 2.2);


2. A console pane containing a log of the actions performed in the GUI;
3. A menu bar with a set of commands;
4. A pane for the management of individual subscribers;
5. A pane for the management of subscriber ranges.

7.2 Individual Subscriber


To manage an individual subscriber, provide the MSISDN and press Enter (or click the Read
subscriber button). The associated data elements will be retrieved from the BFX system and
displayed if available:

Copyright © BroadForward BV 2023 Page 110 of 199


BFX User Manual

Click the Read previous subscriber and Read next subscriber buttons to read the
previous or next MSISDN. A green MSISDN indicates the key was found in the database, a
red MSISDN indicates the key was not found.

The data elements stored are subject to configuration; see the BFX Operation and
Configuration Manual for more information.

To edit an individual subscriber, provide an MSISDN value and click the Edit subscriber
button:

Provide the required information (* denotes a mandatory item) and choose Set to set the data,
or Cancel to cancel.

To remove an individual subscriber from the database, provide an MSISDN value and click the
Remove subscriber button. You will be asked to confirm the removal.

Note that the the buttons will be enabled only when a valid MSISDN is provided.

7.3 Subscriber Range


To manage an subscriber range, first provide the start and end MSISDN. The range width is
calculated automatically (boundaries are included):

Then click the Edit subscriber range button:

Copyright © BroadForward BV 2023 Page 111 of 199


BFX User Manual

Provide the required information (* denotes a mandatory item) and choose Set to set the data
for all subscribers in the range, or Cancel to cancel. For long ranges, the setting of the data
can take a while.

To remove all subscribers in the range from the database, provide the start and end MSISDN
and click the Remove subscriber range button. You will be asked to confirm the removal.

Note that the the buttons will be enabled only when a valid MSISDN range is provided.

Copyright © BroadForward BV 2023 Page 112 of 199


BFX User Manual

8 Nodes and Connections Configuration


This configuration frontend is used to manage the nodes in a BFX group, and the
configuration files on them. Among others, these configuration files contain information on
the connections set up and maintained by BFX.

The following sections describe how to accomplish the node management tasks available in
BFX.

8.1 Main screen


To open the Nodes and Connections Configuration frontend, point the browser to the URL
https://<BFX node IP>:60443. Log in and select the Nodes and Connections section.

M AIN SCREEN WITH FOUR NODES - EXAMPLE

The main screen consists of the following parts:

1. A main menu bar (see section 2.2);


2. A console pane containing a log of the actions performed in the GUI;
3. A menu bar with a set of commands;

Copyright © BroadForward BV 2023 Page 113 of 199


BFX User Manual

4. A listing of the nodes in the group2. Select a node by clicking its name in the list. A
pane opens, displaying information about the node;
5. Management of the Messaging Framework (BFX’s core process), i.e. (re)starting
stopping, setting of log and trace levels;
6. Management of the configuration files for BFX’s framework and connectivity, i.e.
viewing, editing, deploying;
7. Management of the template files for BFX, i.e. viewing, editing, creating, deleting,
deploying;
8. Importing of a new license file for BFX.
The commands in the menu are:

• Node details: reload configuration information, send email(s) with node details
(choose Email node details and provide one or more email addresses, separated
by comma) or open a page with node details for printing purposes by choosing Print
node details;

• Provisioning: offers the option to upload a CSV file for bulk provisioning of Diameter
peers configuration, and M3UA associations/destination configuration. See Appendix
E and Appendix F for more information.
• Tools (depending on configuration; see the BFX Operation and Configuration
Manual): a set of tools which can be run on the BFX (master) node. Tool output and
result code (exit status) is presented in a dialog box. If the tool produces a file for
downloading, a 'Save file' system dialog is presented (browser dependent).
8.1.1 Status information
The status information provided for a node in the listing’s pane is:

• Log level: displays the log level used in the Messaging Framework. Click the value to
open a selection for setting the log level (see section 22 of the BFX Operation and
Configuration Manual for more information on logging);
• Trace level: displays the trace level used in the Messaging Framework. Click the
value to open a selection for setting the trace level (see section 22 of the BFX
Operation and Configuration Manual for more information on tracing);
• Running status: a node’s Messaging Framework Running status is either Running
(followed by a “Running since” date) or Not running.
• A/S state: in Active/Standby configurations only, the node's state is indicated.
Possible values are Active (the node is processing traffic), Standby (the node is
standby to start processing traffic) or Disabled (the node is not set up to process
traffic). A standby node can be activated, thus setting the other node in the cluster in
standby state.

2The BFX node at which the browser is directed in the URL bar, determines what BFX group is used.
For different groups, open different browser windows.

Copyright © BroadForward BV 2023 Page 114 of 199


BFX User Manual

• A/S cluster+peer: in Active/Standby configurations only, displays the cluster name this
node belongs to, and its peer node.
The node’s log level, trace level, running status and A/S state can be modified by clicking the
value and entering a new value. (The A/S state can only be set from Standby to Active).

The label of the listing’s pane consists of the node’s id and its role in the group. A colored
square in front of the flow id indicates the node’s status:

• Green: node is up, and the Messaging Framework is up


• Orange: node is up, but the Messaging Framework is not up
• Red: node is not up
• Grey: unknown or status not determined yet
8.1.2 Parameters
Click the Get parameters button to load the Parameters section contents for the node. The
parameters provided for a node are:

• Member of: the BFX group this node belongs to (if applicable);
• Role: the node’s role in the group: Group Master, Secondary Groups Master or Group
Member;
• FQDN: the fully qualified domain name for the node (as reported by hostname -f);
• IP addresses: the node’s IP addresses (as reported by ifconfig);
• MAC address: the node’s MAC address (first one listed; as reported by ifconfig);
• OS: the node’s Operating System (as reported by uname -mrs);
• CPU: the node’s CPU (as reported by /proc/cpuinfo);
• Memory: the node’s available memory in MB (as reported by free -m);
• Uptime: the node’s uptime (as reported by uptime);
• Messaging Framework: the version of the BFX Messaging Framework installed on the
node;
• Modules loaded: displays the modules loaded in Messaging framework.
• VRRP instance: status information of each “Virtual Router Redundancy Protocol”
instance configured on the node, if applicable: id, state, IP address(es).
8.1.3 Console
Feedback on the GUI functions performed is provided on the far right of the console bar. An
icon indicates whether the request is in progress, was successful, or was not successful.
Additional information is proved in the console pane.

8.1.4 Framework & Connectivity Configuration section


See 8.2 for a description of this section.

Copyright © BroadForward BV 2023 Page 115 of 199


BFX User Manual

8.1.5 Templates Configuration section


See 8.3 for a description of this section.

8.1.6 Licenses section


Click the Get licenses button to load the Licenses section contents for the node. The
information provided for the licenses loaded on the node are:

• the name of the module;


• the expiration date or “unlimited” in case of licenses that do not have an end date; the
remaining days are displayed where a color indicates the proximity of the expiration
date (orange when < 90 days, red when < 21 days);
• options loaded for the module (optional).
Use the Import License File button to upload a new license file as obtained from
BroadForward. The uploaded file must have the extension .cfg; the file name itself is not
relevant. The new licenses will be loaded (this does not cause service interruption) and if
successful, the new license expiration dates are displayed.

8.2 Framework & Connectivity Configuration


In this section, configuration files that relate to the Messaging Framework core process and
protocol modules can be managed.

The panes that are available in this section are determined at installation time and cannot be
modified by the user of the Nodes and Connection frontend. Please contact BroadForward
for more information.

Open the pane for additional details, for example:

• File location: location of the file on the node’s file system;


• File name: name of the file on the node’s file system;
• File size: size of the file in bytes;
• Last modified: local time the file was last modified;
• Applies to: is either node, cluster or system.
Files that apply specifically to a node, are managed for that node only. To select the
configuration file for another node, first select another node in the listing at the left

Copyright © BroadForward BV 2023 Page 116 of 199


BFX User Manual

side of the screen.


Files that apply to a cluster of two nodes, are synchronized between the nodes in
that cluster when changes are deployed.
Files that apply to the system, are synchronized across all nodes in the BFX group
when changes are deployed (these files can only be edited and deployed on the
Group Master node);
• Auto-reload modules: where applicable, protocol or function modules are signalled to
re-load (parts of) new configuration files when these are deployed (optional). This
happens automatically for modules that are listed.
Additional text may be provided, e.g. to inform about the necessity to restart the Messaging
Framework when changes are made to a file. For SS7 connectivity, the SS7 stack is restarted
automatically when the Messaging Framework is restarted.

The display of file location, name and size is subject to configuration; see the BFX Operation
and Configuration Manual for more information.

For Diameter, RADIUS, HTTP, ENUM, SIP, SS7 subsystems and M3UA, the following
additional details are provided:

• Last deployed on: local time the file was last deployed.
For SS7 subsystems, the following additional details are provided:

• MAP trace level: the trace level of the MAP module; this can be modified when it is
running.
• MAP/TCAP trace level: the trace level of the MAP/TCAP module; this can be modified
when it is running.
• MAP subsystem status: as reported by the ss7MapInfoSubsystemStatus SNMP
attribute.
• MAP status since: time/date of latest status change.
• MAP congestion status: the MAP subsystem is rejecting messages for which new
outgoing dialogues should be opened, in case the SS7 stack (DSI) reported
congestion. Pending traffic processing is maintained. The congestion status is None
or Level 1 (see SNMP attribute ss7MapInfoCongestionStatus).
• MAP congestion since: time/date of latest congestion status change.
• INAP trace level: the trace level of the INAP module; this can be modified when it is
running.
• INAP /TCAP trace level: the trace level of the INAP /TCAP module; this can be
modified when it is running.
• INAP subsystem status: as reported by the ss7InapInfoSubsystemStatus SNMP
attribute.
• INAP status since: time/date of latest status change.

Copyright © BroadForward BV 2023 Page 117 of 199


BFX User Manual

• INAP congestion status: the INAP subsystem is rejecting messages for which new
outgoing dialogues should be opened, in case the SS7 stack (DSI) reported
congestion. Pending traffic processing is maintained. The congestion status is None
or Level 1 (see SNMP attribute ss7InapInfoCongestionStatus).
• INAP congestion since: time/date of latest congestion status change.
In addition to the configuration file details, buttons may be present inside each pane to perform
specific tasks.

• Recreate file: re-create the configuration file from the information present in the GUI
database. The file is marked as ‘edited’ and the Deploy button will be made
available.
• Revert config: discard the configuration information (either present in the GUI
database and/or the file itself), and reverts the information back to the last moment
the configuration file was successfully deployed. The file is no longer marked as
‘edited’ and the Deploy button will not be available.
• Unify cluster: for clusters, discard the information from the current node and replace it
with the information from the cluster peer node. This function is useful if there is a
suspicion that the cluster information, which should be identical, is no longer in synch.
After successful unification, the configuration is verified and a new configuration file is
made available for deployment. The edited indicator will be displayed (see below,
“Edit file contents”).
• Overview: open a separate page for an overview of the various M3UA or M2PA
connectivity components and their relation (M3UA and M2PA only).
Next to each pane, the following management commands are available:

• View file contents: click the “magnifier” button to open a pane that displays the
configuration file contents.
Note: subject the GUI configuration item “File edit/view mode”, the viewer opens in a
dialog box or in a full screen.
• Edit file contents: click the “pencil” button to open a pane that allows free editing of
the configuration file contents. Choose Save to save the new contents or Cancel to
discard them. When saved, the fact that there is new contents is indicated by the text
edited in the pane title. The file with new contents is saved in a staging area.
When saved, file validation takes place to ensure no faulty configuration is created.
This is done via the script mf_cfgfilevalidate, which is called by the GUI. In case
of issues, these are reported back to the user for correction.
Note: subject the GUI configuration item “File edit/view mode”, the editor opens in a
dialog box or in a full screen.
• View modifications: click the “diff” button to open a pane that displays the differences
between deployed file and the edited configuration file (only available when the file
was edited).
• Deploy file: click the “gear” button to make the changes effective. This means the file
is moved from the staging area to the actual deployed location, and the applicable

Copyright © BroadForward BV 2023 Page 118 of 199


BFX User Manual

module(s) are notified of the changed configuration (optional). This is done via the
script mf_newconfigfile, which is called by the GUI. In case of issues, these are
reported back to the user for correction.
For Diameter, RADIUS, HTTP, ENUM, SIP, SCCP, SS7 subsystems, M3UA and Storage
buckets, the following applies w.r.t. management commands:

• Edit configuration: instead of a pane that allows free editing of the configuration file
contents, a bespoke dialog box opens to edit the configuration. See sections 8.2.1
and further.
• View configuration: click the extra “magnifier plus” button to open a pane that display
the configuration in the bespoke dialog box (in read-only modus).
8.2.1 Diameter
For Diameter configuration, the items are presented in a bespoke dialog box.

Copyright © BroadForward BV 2023 Page 119 of 199


BFX User Manual

M AIN SCREEN FOR DIAMETER CONFIGURATION - EXAMPLE

Open the panes to access the individual widgets for each of the configuration items (note:
most configuration items for servers and peers are configured via a dialog box that is opened
when clicking the Edit configuration button; see below). Dependencies between these
widgets are created to ensure a valid configuration is created. In-line help text is available by
hovering over the description of the input widget.

Diameter servers (for accepting incoming connections) are added by entering a server id and
clicking the Add server button. Servers can be viewed, disabled/enabled, permanently
removed and exported via the buttons at the right-hand side in the pane. Disabling keeps the
configuration information intact, but takes the server or peer configuration out of the
deployable configuration file, effectively removing the connectivity.

An Edit configuration button is provided for editing of server-specific configuration


parameters, overruling the configuration parameters on global level. Some parameters may
be disabled (“greyed out”), meaning that the corresponding setting on global level prevents
this parameter from being configured on a per-server basis.

Diameter peers are added by entering a peer id and clicking the Add peer button. Peers can
be viewed, temporarily disabled/enabled, permanently removed and exported via the buttons
at the right-hand side in the pane. An Edit configuration button is provided for editing of
peer-specific configuration parameters, overruling the configuration parameters on global
level. Some parameters may be disabled (“greyed out”), meaning that the corresponding
setting on global level prevents this parameter from being configured on a per-peer basis. A
pane with status information be opened via the Status information button.

Diameter routing labels are added by entering a label id clicking the Add label button.
Labels can be deleted via the button at the right-hand side in the pane.

Selecting servers, peers or labels can be done by opening the dropdown box, or by starting
to type letters to narrow down the search options to those that match the input. As the
number of peers can become large, specific peer filtering options exist to further narrow
down the selection.

Details on the configuration parameters are provided in help text that when hovering over the
input widget labels. For Remote listening IP address(es), and Restrict to specific
source IP address(es), the order in which the IP addresses are provided is retained by
the BFX server. As such, the first IP address is used as primary address for SCTP
connections. This is indicated by the Prim indicator.

Exporting and importing of Diameter server and peer configurations is provided via the
Export button (inside the server/peer pane) and Import buttons.

For bulk provisioning of Diameter peers using a CSV file, use the Provisioning menu. See
Appendix E for more information.

Upon closing of the dialog box, a new diameter.cfg file is created in the staging area,
similar to closing a free-text editing pane for configuration files that do not have a bespoke
dialog box for editing configuration. This file needs to be deployed via the Deploy
configuration button to effectuate the changes.

Copyright © BroadForward BV 2023 Page 120 of 199


BFX User Manual

8.2.1.1 Changes in Diameter Identity


In case the Diameter Identity has been changed, the confirmation dialog box when deploying
contains the option to generate a new certificate for the new identity.

The checkbox is set by default. If set, the deployment will include the generation of a new
self-signed certificate. If certificate creation fails, the deployment of the new configuration file
will fail.

If, after certificate creation for the new identity, deployment of the new configuration file fails,
the certificate for the old identity will be re-created.

8.2.1.2 Diameter Ingress Rules


The Diameter protocol module can be configured with Ingress Rules for applying more
selective ingress throttling than with the regular ingress parameters. The Ingress Rules
provide the option to define rules for selection based on message parameters (ApplicationID,
Command Code, CC-Request-Type, Diameter-Realm and User-Name prefix), define a
maximum ingress rate and an action to be taken when the limit is reached.

Note: this is a licensed feature.

The ingress rules can be configured in the Nodes & Connections section of the GUI, which
also allows for deploying an updated configuration. There are two sections available: one for
systemwide rules and one for node specific rules.

Rules that are created in the systemwide settings can be (partially) overruled in the node
specific configuration, i.e. to set a different ingress rate for specific nodes. To do so, first
create the rule in the systemwide configuration. Then create a rule with the same name (e.g.
via the 'Duplicate from' option) in the node specific configuration of the required node and
there change the parameter(s) which needs to different from the systemwide settings.
Parameters which are not present in the node specific rule, e.g. conditions, are taken from the
system wide version of the same rule. Typically the conditions will not be needed in the node
specific version of an ingress rule; probably only the maximum ingress rate will be different.

Deploying the systemwide configuration deploys the configured rules (systemwide plus node
specific) on all nodes.

Copyright © BroadForward BV 2023 Page 121 of 199


BFX User Manual

In the ingress rule configuration, one or more conditions can be added to the rule by means of
the 'Add rule condition' dropdown.

8.2.2 RADIUS
For RADIUS configuration, the items are presented in a bespoke dialog box.

M AIN SCREEN FOR RADIUS CONFIGURATION - EXAMPLE

Open the panes to access the individual widgets for each of the configuration items.
Dependencies between these widgets are created to ensure valid configuration is created.
In-line help text is available by hovering over the description of the input widget.

Copyright © BroadForward BV 2023 Page 122 of 199


BFX User Manual

RADIUS servers (Authentication/Authorization and Accounting) and clients are added by


entering an IP address and clicking the Add server or Add client button. Servers and
clients can be re-ordered, temporarily disabled and permanently removed via the buttons at
the right-hand side in the pane. Disabling keeps the configuration information intact, but
takes the server or peer configuration out of the deployable configuration file, effectively
removing the connectivity.

Upon closing of the dialog box, a new radius.cfg file is created in the staging area, similar
to closing a free-text editing pane for configuration files that do not have a bespoke dialog
box for editing configuration. This file needs to be deployed via the Deploy configuration
button to effectuate the changes.

8.2.3 HTTP
For HTTP configuration, the items are presented in a bespoke dialog box.

M AIN SCREEN FOR HTTP CONFIGURATION - EXAMPLE

Open the panes to access the individual widgets for each of the configuration items (note:
most configuration items are configured via a dialog box that is opened when clicking the
Edit configuration button; see below). Dependencies between these widgets are created
to ensure valid configuration is created. In-line help text is available by hovering over the
description of the input widget.

HTTP servers and clients are added by entering an id and clicking the Add server or Add
client button. Servers and clients can be re-ordered, viewed, temporarily disabled,
permanently removed and exported via the buttons at the right-hand side in the pane.
Disabling keeps the configuration information intact, but takes the server or peer
configuration out of the deployable configuration file, effectively removing the connectivity.

An Edit configuration button is provided for editing of server- and client-specific


configuration parameters. Some parameters may be disabled (“greyed out”), meaning that
the setting depends on the value of another setting, and is not applicable as a result of that.
For clients, a pane with status information be opened via the Status information button.

Copyright © BroadForward BV 2023 Page 123 of 199


BFX User Manual

Exporting and importing of HTTP server and client configurations is provided via the Export
button and Import button.

Upon closing of the dialog box, a new http.cfg file is created in the staging area, similar to
closing a free-text editing pane for configuration files that do not have a bespoke dialog box
for editing configuration. The existence of a new configuration file is indicated by the addition
“edited” in the pane title. This file needs to be deployed via the Deploy configuration
button to effectuate the changes.

If the new configuration contains errors, e.g. due to incomplete data, this is indicated by the
addition “edited, with errors” in the pane title. Details on the errors are found in the GUI
console.

8.2.4 ENUM
For ENUM configuration, the items are presented in a bespoke dialog box.

M AIN SCREEN FOR ENUM CONFIGURATION - EXAMPLE

Open the panes to access the individual widgets for each of the configuration items (note:
most configuration items are configured via a dialog box that is opened when clicking the
Edit configuration button; see below). Dependencies between these widgets are created
to ensure valid configuration is created. In-line help text is available by hovering over the
description of the input widget.

ENUM servers and clients are added by entering an id and clicking the Add server or Add
client button. Servers and clients can be re-ordered, viewed, temporarily disabled,
permanently removed and exported via the buttons at the right-hand side in the pane.
Disabling keeps the configuration information intact, but takes the server or peer
configuration out of the deployable configuration file, effectively removing the connectivity.

An Edit configuration button is provided for editing of server- and client-specific


configuration parameters.

Exporting and importing of ENUM server and client configurations is provided via the Export
button and Import button.

Copyright © BroadForward BV 2023 Page 124 of 199


BFX User Manual

Upon closing of the dialog box, a new enum.cfg file is created in the staging area, similar to
closing a free-text editing pane for configuration files that do not have a bespoke dialog box
for editing configuration. The existence of a new configuration file is indicated by the addition
“edited” in the pane title. This file needs to be deployed via the Deploy configuration
button to effectuate the changes.

If the new configuration contains errors, e.g. due to incomplete data, this is indicated by the
addition “edited, with errors” in the pane title. Details on the errors are found in the GUI
console.

8.2.5 SS7 Subsystems


For SS7 Subsystems (MAP and/or INAP) configuration, the items are presented in a
bespoke dialog box.

M AIN SCREEN FOR SS7 S UBSYSTEMS CONFIGURATION - EXAMPLE

Open the panes to access the individual widgets for each of the configuration items. In-line
help text is available by hovering over the description of the input widget.

Upon closing of the dialog box, a new ss7.cfg file is created in the staging area, similar to
closing a free-text editing pane for configuration files that do not have a bespoke dialog box
for editing configuration. The existence of a new configuration file is indicated by the addition
“edited” in the pane title. This file needs to be deployed via the Deploy configuration
button to effectuate the changes.

If the new configuration contains errors, e.g. due to incomplete data, this is indicated by the
addition “edited, with errors” in the pane title. Details on the errors are found in the GUI
console.

Copyright © BroadForward BV 2023 Page 125 of 199


BFX User Manual

8.2.6 M3UA and M2PA


For M3UA and M2PA configuration (for the SCCP module), the items are presented in a
bespoke dialog box.

M AIN SCREEN FOR M3UA CONFIGURATION - EXAMPLE

M3UA network contexts, application servers, associations and destinations are added by
entering an id and clicking the respective Add button. The various M3UA connection objects
can be viewed, disabled/enabled, permanently removed and exported via the buttons at the
right-hand side in the pane. Disabling keeps the configuration information intact, but takes
the connection object configuration out of the deployable configuration file, effectively
removing the connectivity.

An Edit configuration button is provided for editing of connection object-specific


configuration parameters, overruling the configuration parameters on global level. Some
parameters may be disabled (“greyed out”), meaning that the corresponding setting on global
level prevents this parameter from being configured on a per-connection object basis.

A pane with status information be opened via the Status information button.

Selecting connection objects can be done by opening the dropdown box, or by starting to
type letters to narrow down the search options to those that match the input. As the number
of connection objects can become large, filtering options exist to further narrow down the
selection.

Details on the configuration parameters are provided in help text that when hovering over the
input widget labels. For association’s Destination IP address(es), the order in which the
IP addresses are provided is retained by the BFX server. As such, the first IP address is
used as primary address for SCTP connections. This is indicated by the Prim indicator.

Copyright © BroadForward BV 2023 Page 126 of 199


BFX User Manual

Exporting and importing of connection object configurations is provided via the Export
button and Import buttons.

For bulk provisioning of M3UA associations and destinations using a CSV file, use the
Provisioning menu. See Appendix F for more information.

Upon closing of the dialog box, a new m3ua.cfg file is created in the staging area, similar to
closing a free-text editing pane for configuration files that do not have a bespoke dialog box
for editing configuration. This file needs to be deployed via the Deploy configuration
button to effectuate the changes.

If the new configuration contains errors, e.g. due to incomplete data, this is indicated by the
addition “edited, with errors” in the pane title. Details on the errors are found in the GUI
console.

8.2.7 SCCP Ingress Rules


The SCCP protocol module can be configured with Ingress Rules for applying more selective
ingress throttling than with the regular ingress parameters. The Ingress Rules provide the
option to define rules for selection based on message parameters (CalledParty address fields
and OperationCode), define a maximum ingress rate and an action to be taken when the limit
is reached.
Note: this is a licensed feature.

The ingress rules can be configured in the Nodes & Connections section of the GUI, which
also allows for deploying an updated configuration. There are two sections available: one for
systemwide rules and one for node specific rules.

Rules that are created in the systemwide settings can be (partially) overruled in the node
specific configuration, i.e. to set a different ingress rate for some nodes. To do so, first create
the rule in the systemwide configuration. Then create a rule with the same name (e.g. via the
'Duplicate from' option) in the node specific configuration of the required node and there
change the parameter(s) which needs to different from the systemwide settings. Parameters
which are not present in the node specific rule, e.g. conditions, are taken from the system wide
version of the same rule. Typically the conditions will not be needed in the node specific
version of an ingress rule; probably only the maximum ingress rate will be different.

Deploying the systemwide configuration deploys the configured rules (systemwide plus node
specific) on all nodes.

Copyright © BroadForward BV 2023 Page 127 of 199


BFX User Manual

In the ingress rule configuration, one or more conditions can be added to the rule by means of
the 'Add rule condition' dropdown.

8.2.8 SIP
For SIP configuration, the items are presented in a bespoke dialog box.

M AIN SCREEN FOR SIP CONFIGURATION - EXAMPLE

Open the panes to access the individual widgets for each of the configuration items (note:
most configuration items are configured via a dialog box that is opened when clicking the
Edit configuration button; see below). Dependencies between these widgets are created

Copyright © BroadForward BV 2023 Page 128 of 199


BFX User Manual

to ensure valid configuration is created. In-line help text is available by hovering over the
description of the input widget.

SIP local servers and clients are added by entering an id and clicking the Add server or
Add client button. Servers and clients can be re-ordered, viewed, temporarily disabled,
permanently removed and exported via the buttons at the right-hand side in the pane.
Disabling keeps the configuration information intact, but takes the server or peer
configuration out of the deployable configuration file, effectively removing the connectivity.

An Edit configuration button is provided for editing of server- and client-specific


configuration parameters.

Exporting and importing of SIP server and client configurations is provided via the Export
button and Import button.

Upon closing of the dialog box, a new sip.cfg file is created in the staging area, similar to
closing a free-text editing pane for configuration files that do not have a bespoke dialog box
for editing configuration. The existence of a new configuration file is indicated by the addition
“edited” in the pane title. This file needs to be deployed via the Deploy configuration
button to effectuate the changes.

If the new configuration contains errors, e.g. due to incomplete data, this is indicated by the
addition “edited, with errors” in the pane title. Details on the errors are found in the GUI
console.

8.2.9 Storage buckets


For Storage bucket configuration, the items are presented in a bespoke dialog box.

M AIN SCREEN FOR STORAGE BUCKET CONFIGURATION - EXAMPLE

Buckets are added by entering a name and clicking the Add bucket config button. The
various bucket objects can be viewed, disabled/enabled, permanently removed and exported
via the buttons on the right-hand side in the pane. Disabling keeps the configuration
information intact, but takes the connection object configuration out of the deployable
configuration file, effectively removing the bucket.

Copyright © BroadForward BV 2023 Page 129 of 199


BFX User Manual

An Edit configuration button is provided for editing of bucket-specific configuration


parameters.

Details on the configuration parameters are provided in help text that when hovering over the
input widget labels.

Exporting and importing of connection object configurations is provided via the Export
button and Import buttons.

Upon closing of the dialog box, a new storage.cfg file is created in the staging area, similar
to closing a free-text editing pane for configuration files that do not have a bespoke dialog
box for editing configuration. This file needs to be deployed via the Deploy configuration
button to effectuate the changes.

If the new configuration contains errors, e.g. due to incomplete data, this is indicated by the
addition “edited, with errors” in the pane title. Details on the errors are found in the GUI
console.

8.3 Templates Configuration


In this section, configuration files that relate to the protocol templates, AVP files, EDR
templates and dictionaries can be managed. Open the pane for additional details, and
choose the template file to manage from the select box:

• File location: location of the file on the node’s file system;


• File name: name of the file on the node’s file system;
• File size: size of the file in bytes;
• Last modified: local time the file was last modified;
• Applies to: is either node, cluster or system.
Files that apply specifically to a node, are managed for that node only. To select the
configuration file for another node, first select another node in the listing at the left
side of the screen.

Copyright © BroadForward BV 2023 Page 130 of 199


BFX User Manual

Files that apply to a cluster of two nodes, are synchronized between the nodes in
that cluster when changes are deployed.
Files that apply to the system, are synchronized across all nodes in the BFX group
when changes are deployed (these files can only be edited and deployed on the
Group Master node);
The display of file location, name and size is subject to configuration; see the BFX Operation
and Configuration Manual for more information.

In addition to the configuration file details, buttons may be present inside each pane to perform
specific tasks.

• Remove file: remove the selected file from the node, cluster or system (depending on
the value of the Applies to attribute).
• Create file: when the user-settable part of the file name and name tag is provided, the
Create file button is enabled and can be used to create a new file from a pre-
fabricated template file. The new file is deployed on the node, cluster or system
(depending on the value of the Applies to attribute), except in case of dictionary
files. It requires further editing and deployment to make it ready for its purpose and
usage in the BFX GUI.
• Upload file: the Upload file button is used to upload a prepared file (e.g. from an
external source); it is stored with the file name and name tag as in the uploaded file.
The new file is synchronized on the node, cluster or system (depending on the value
of the Applies to attribute) but requires additional deployment in case of dictionary
files.
• Revert config: discards the configuration information, and reverts the information back
to the last moment the configuration file was successfully deployed. The file is no
longer marked as ‘edited’ and the Deploy button will not be available.
• Unify cluster: for clusters, discard the information from the current node and replace it
with the information from the cluster peer node. This function is useful if there is a
suspicion that the cluster information, which should be identical, is no longer in synch.
When unifying, a copy is made of the most recent file present for the cluster peer
node, regardless if it has been deployed or not.
After successful unification, a new configuration file is made available for deployment.
The edited indicator will be displayed (see below, “Edit file contents”).
Next to each pane, the following management commands are available:

• View file contents: click the “magnifier” button to open a pane that displays the
template file contents.
• Download file: click the “download” button for downloading the file to the local
environment.
• Edit file contents: click the Edit file contents button to open a pane that allows free-
text editing of the template file contents. Choose Save to save the new contents or
Cancel to discard them. When saved, the fact that there is new contents is indicated
by the text edited in the pane title. The file with new contents is saved in a staging

Copyright © BroadForward BV 2023 Page 131 of 199


BFX User Manual

area.
When saved, file validation takes place to ensure no faulty template is created. This is
done via the script mf_cfgfilevalidate, which is called by the GUI. In case of
issues, these are reported back to the user for correction.
For EDR templates, see the BFX Operation and Configuration Manual for more
information.
• View modifications: click the View modifications button to open a pane that
displays the differences between deployed file and the edited template file (only
available when the file was edited).
• Deploy file: click the Deploy configuration button to make the changes effective.
This means the file is moved from the staging area to the actual deployed location.
This is done via the script mf_newconfigfile, which is called by the GUI. In case of
issues, these are reported back to the user for correction.
The panes that are available in this section are determined at installation time and cannot be
modified by the user of the Nodes and Connection frontend. Please contact BroadForward
for more information.

Copyright © BroadForward BV 2023 Page 132 of 199


BFX User Manual

9 User accounts and Profiles Configuration


This configuration frontend is used to manage the user accounts and profiles. These
determine the access to the various GUI functions.

The following sections describe how to accomplish the user accounts and profiles
management tasks available in BFX.

9.1 Main screen


To open the User accounts and Profiles Configuration frontend, point the browser to the URL
https://<BFX node IP>:60443. Log in and select the Users section.

M AIN SCREEN - EXAMPLE

The main screen consists of the following parts:

1. A main menu bar (see section 2.2);


2. A console pane containing a log of the actions performed in the GUI;
3. A menu bar with a set of commands and Undo button;
4. Management of the user accounts, i.e. viewing, editing, creating, removing,
suspending/resuming, and resetting password;
5. Management of the user profiles, i.e. viewing, editing, creating, removing and setting
access flags.

Copyright © BroadForward BV 2023 Page 133 of 199


BFX User Manual

6. Overview of user accounts. Click on a user account to load the user account details
for editing.
7. Overview of profiles. Click on a profile to load the profile details for editing.
The commands in the menu are:

• User account details: send email(s) with user account details (choose Email user
details and provide one or more email addresses, separated by comma) or open a
page for printing purposes by choosing Print user details;
• Profile details: send email(s) with profile details (choose Email profile details and
provide one or more email addresses, separated by comma) or open a page for
printing purposes by choosing Print profile details;
• Undo: undo the most recent changes made to user accounts or profiles. The number
of commands that can be undone is subject to configuration; see the BFX Operation
and Configuration Manual for more information.
9.1.1 Information
Select a user account or profile name from the select box to view its details.

The information provided for a user account is:

• Profile: the profile applicable to this account - the profile determines what GUI
functions are available to the user;
• Last login: the date and time of the last successful login for the selected account;
• Last login attempt: the date and time of the last login attempt (successful or not) for
the selected account, including the remote workstation’s id (IP address);
• Password last set: the date and time the password was last changed, including the
date it will expire;
• Suspended: indicates if the account is suspended (temporarily disabled) or not;
• Name: the full name of the person using the selected account;
• Phone: phone numbers, incl. extensions, of the person using the selected account;
• Email: email address of the person using the selected account;
• Skype: Skype id of the person using the selected account;
• Location: company and department name, and up to 4 address lines, of the person
using the selected account;
• Notes: free text notes.
Except for Last login and Suspended, these attributes can be modified by clicking the value
and entering a new value. For contact details, links are available to open the associated
application (e.g. an email client).

The information provided for a profile name is:

• Description: a descriptive text for the profile;

Copyright © BroadForward BV 2023 Page 134 of 199


BFX User Manual

• Default profile: indicates if the profile is the default profile for new user accounts;
• External ref.: the external reference is used when an external authentication database
is accessed (via LDAP). The reference specified is the LDAP group that is to be
matched against this profile. Specify * for the BFX profile that matches any LDAP
group as fallback.
• In use by: the list of user accounts to which this profile is applicable.
The description can be modified by clicking the value and entering a new value.

9.1.2 Console
Feedback on the GUI functions performed is provided on the far right of the console bar. An
icon indicates whether the request is in progress, was successful, or was not successful.
Additional information is proved in the console pane.

9.2 User account management


The following management commands are available:

• Add new user account: click the Add new user account button to open a dialog for
entering a new account; the default profile is attached to the new account. If desired,
choose an existing user account to copy details from (such as address, phone etc.).
Optionally, a password may be provided (settings for minimum/maximum length,
strength and input character set constraints apply; see section 2.1). If not, the default
password is set for the new user. In either case, the user is prompted to set a new
password upon first login.
• Remove user account: click the Remove user account button to remove the
account permanently (after confirmation). The user “super” may not be removed.
• Suspend/resume user account: click the Suspend/Resume new user account
button to temporarily disable the account (“suspend”) meaning it cannot be used to
log in, or to enable it again (“resume”).
Be careful when suspending accounts; by default only the Super profile has rights to
resume an account.
Depending on configuration, users may not be able to suspend their own account.
See the BFX Operation and Configuration Manual for more information.
• Reset password: click the Reset password button to reset the password (after
confirmation). When logging in, the user will be prompted to change the password.
Optionally, a password may be provided (settings for minimum/maximum length,
strength and input character set constraints apply; see section 2.1). If not, the default
password is set for the new user.

9.3 Profile management


The following management commands are available:

• Add new profile: click the Add new profile button to open a dialog for entering a
new profile name. If desired, choose an existing profile to copy details from.

Copyright © BroadForward BV 2023 Page 135 of 199


BFX User Manual

• Remove profile: click the Remove profile button to remove the account permanently
(after confirmation). The profile “Super” may not be removed.
• Set as default: click the Set as default profile button to make this profile the default
profile, which is attached to a new user account. There can only be one default
profile; for all other profiles the Default profile setting is set to “no”. The default
profile may not be removed.
• Edit access flags: click the Edit access flags button to modify the access flags for
the profile.
Grouped in a number of sections, approx. 190 GUI functions are presented with a
checkbox following it. Selecting the checkbox means the user accounts using this
profile, are allowed to execute the function. Unselecting the checkbox means the user
accounts using this profile, are not allowed to execute the function.
For convenience, Set all and Clear all buttons are provided to (de)select the set of
checkboxes in the group at once.

Both the GUI screens and the GUI configuration database take this access flags into
account: functions which are not allowed are greyed out. If a user attempts to perform
a function which is not allowed, the GUI configuration database will prevent this.

Copyright © BroadForward BV 2023 Page 136 of 199


BFX User Manual

10 Audit Trail
The Audit Trail frontend displays a list of all actions performed on the flows, routing rules and
other objects GUI in the last 90 days (see the BFX Operation and Configuration Manual for
more information).

10.1 Audit Trail GUI


To open the Audit Trail frontend, point the browser to the URL https://<BFX node
IP>:60443. Log in and select the Audit Trail section.

A UDIT TRAIL SCREEN - EXAMPLE

The screen consists of the following parts:

1. A main menu bar (see section 2.2);


2. Configuration of audit trail frontend, including filtering options;
3. A pane listing the Audit trail lines.
An audit trail line includes:

1. Sequence number (in this list);


2. Date: when did the action occur;
3. User: which user performed the action;
4. Item: flow, routing rule or node;
5. ID: the id of the item on which the action was performed;

Copyright © BroadForward BV 2023 Page 137 of 199


BFX User Manual

6. Action: what was the action;


7. Result: was the action successful or not.
The following configuration items are available:

• Refresh rate: the audit trail is updated automatically. The refresh interval can be
specified from 10 seconds to 24 hour by sliding the marker. If no automatic updating
is required, check the No automatic refresh box. An audit trail update is also
obtained by modifying the Chart Audit trail length marker.
• Chart Audit trail length: The length of the audit trail can be set by sliding the marker
of this control. Setting the tail length leads to an updated trail.
• Most recent first: by default, the order of the audit trail lines is from least recent to
most recent. To reverse this order, check this box.
• Display data until: by default, the audit trail lines displayed are the most recent ones.
If a different reference point is required, uncheck the Now checkbox and choose a
date and time to display a different time window. Choosing a new date/time leads to
updated charts.
• By user: filter the audit trail on a specific user that performed the action, or choose
Any for no filtering.

• For flow: filter the audit trail for actions on a specific flow. Choose Any for no filtering
or None for displaying no flows at all.
• For routing rule: filter the audit trail for actions on a specific routing rule. Choose
Any for no filtering or None for displaying no routing rules at all.

• For tracing rule: filter the audit trail for actions on a specific tracing rule. Choose Any
for no filtering or None for displaying no tracing rules at all.
• For list profile: filter the audit trail for actions on a specific list profile. Choose Any for
no filtering or None for displaying no list profiles at all.
• For node: filter the audit trail for actions on a specific node. Choose Any for no
filtering or None for displaying no nodes at all.
• For user account: filter the audit trail for actions on a specific user account. Choose
Any for no filtering or None for displaying no user accounts at all.

• For user profile: filter the audit trail for actions on a specific user profile. Choose Any
for no filtering or None for displaying no user profiles at all.
The green A and red N next to the selection boxes can be used to quickly select Any or
None, respectively.

Copyright © BroadForward BV 2023 Page 138 of 199


BFX User Manual

11 Dashboard
This Dashboard frontend is mainly used to view traffic statistics, Diameter peers status
(where applicable) and to perform monitoring/management tasks in the Workbench
component.

To open the Dashboard, point the browser to the URL http://<BFX node>:60443. Log in
and select the Dashboard section.

The Dashboard screen opens which provides various reporting information sources. The
Dashboard consists of these parts:

1. A main menu bar (see section 2.2) including a link to the NMS system (if configured;
see the BFX Operation and Configuration Manual);
2. A console pane containing a log of the actions performed in the GUI;
3. A menu bar with a set of commands;
4. A set of tabs for various Dashboard components. Select a tab for flows, modules or
any of the other tabs available, followed by a selection in the drop-down box at the
top of the pane. Availability of tabs depends on the protocols that are applicable to
the specific BFX deployment. In case of Diameter, also a Diameter peer status
pane is provided.
In case of M3UA (SCCP module), also an M3UA association status pane is
provided.
The tab System resources is only available when an individual node is chosen in
the Nodes menu.
The tab Alarm view availability is subject to configuration (see the BFX Installation
and Upgrade Manual on snmpd configuration, and the BFX Operation and
Configuration Manual on GUI configuration).
In addition, there is a pane for the Workbench functionality (see section 11.3);
Note that for nodes which only run the database component, the availability of tabs is limited
to: System resources , Alarm view and Workbench.

A pane with system logging information is available in a separate window. This can be opened
via entries in the Information menu. See section 11.6 for more information.

The commands in the menu are:

• Configuration: set various chart parameters (section 11.5);


• Dashboard data: reloading of charts/status, and access to Dashboard charts/status in
various ways (section 11.4);
• Logging ➔ Tail …: open a new window, containing a pane with logging and/or tracing
information from the file chosen. The file names offered for selection can be

Copyright © BroadForward BV 2023 Page 139 of 199


BFX User Manual

configured via the GUI settings menu; see section 2.4. For more information on the
logging window see section 11.6. Only available when no accumulated view is
selected;
• Nodes: provides a list of BFX nodes to report on. Choose the node for which reporting
is required. For an accumulated view, the entry “accumulated” is available. The
current node displayed is mentioned between square brackets in the menu bar;
• Flow group: flows can be grouped to improve the manageability in case of a large
number of flows – select any of the menu entries to open a dialog box to make a
choice of the group(s) to display in the Dashboard;
• Diameter peer group: peers can be grouped to improve the manageability in case of a
large number of peers – select any of the menu entries to open a dialog box to make
a choice of the group(s) to display in the Dashboard.
Note that the setting of groups (for Flow and Diameter peer) have an effect on the options
presented in the Flow and Diameter peer “Charts for” selection boxes in the respective tabs. It
does not influence the Counter Totals for Flows; this shows total for all flows regardless of
flow group choice.

11.1 Charts and status section


11.1.1 Flows and Modules
The Dashboard provides four charts for each active flow and each module involved in the
active flows.

For flows and modules, items can be selected from the drop-down box. For flows, it allows
typing characters, to narrow down the list of options. All flow ids that (partially) match the
entered text are displayed in the drop-down list. For flows, there is an option to choose
Counter Totals for a view on the sum of the counters for all flows.
(Note that the setting of Flow group have an effect on the options presented in the Flow
“Charts for” selection box. It does not influence the counter totals; this shows total for all flows
regardless of flow group choice).

The charts display the number of transactions per second for flows, or the number of
messages per second for modules3. This average is calculated on the basis of the BFX
SNMP counters as defined in the system’s MIB.

Chart 1 displays three average counters: total number of transactions or messages handled
per second, number of successful transaction or message handlings, and the number of non-
successful transaction or message handlings. A transaction is considered non-successful or
failed if a flow step is not able to process the message in the expected manner.

Chart 2 displays the total number of transactions or messages handled per second, with a
threshold value to mark the data points that exceed this threshold. These data points are

3 A transaction is defined as “a message entering BFX, following a flow, and then leaving BFX”. A
message is defined as “a set of AVPs entering a BFX module, possibly undergoing modifications, and
leaving the BFX module (either inside or outside BFX)”.

Copyright © BroadForward BV 2023 Page 140 of 199


BFX User Manual

given a distinctive color. The threshold value can be configured in the Configuration pane
(see section 11.5).

T HE CHARTS SECTION IN THE DASHBOARD

Chart 3 displays the total number of rejected transactions or messages handled per second,
due to ingress limits being reached.

Chart 4 displays detailed information on the cause of failure for the failed transactions or
messages. Possible causes are:

• Process: the transaction failed because the message could not be processed.
• Dropped: the transaction failed because one of the flow steps dropped the message
(i.e. did not return it).
• Shutdown: the transaction failed because the flow is shutting down.
• Timeout: the transaction failed because the handling of the message timed out in the
flow.

Copyright © BroadForward BV 2023 Page 141 of 199


BFX User Manual

• Congestion: the transaction failed because the flow is congested and the congestion
could not be resolved in time.
• No destination: the transaction failed because no (outgoing) destination for the
message could be found.
• Unknown Flow: the transaction failed because the flow could not be determined.
This counter is available for the Counter Totals chart only.
11.1.2 Queues
The Dashboard provides one chart for the internal queues of the system selected in the
Nodes menu (it is also available for accumulated view).

Chart 1 displays the number of messages held in the A and B internal queue, either for a
specific module (choose a module from the Charts for selection) or the Message Handler in
the BFX framework.

11.1.3 System resources


The Dashboard provides four charts for system resources of the system selected in the
Nodes menu (not available for accumulated view).

Chart 1 displays CPU usage in three (stacked) percentages. Numbers are as reported by the
sar utility for %usr, %nice, %sys.

Chart 2 displays percentage of the memory that is used, as reported by the free utility.

Chart 3 displays network throughput in bytes per second for each of the network interfaces
on the node, up to a maximum of 8.

Chart 4 displays disk usage as a percentage for each of the volumes on the node, up to a
maximum of 8.

11.1.4 Diameter peers


For Diameter, peers can be selected from the drop-down box. It allows typing characters, to
narrow down the list of options. All peer ids that (partially) match the entered text are displayed
in the drop-down list.

11.1.4.1 Diameter peer charts


The Dashboard provides four charts for Diameter peers of the system selected in the Nodes
menu (if Diameter is a configured interface for BFX).

Chart 1 displays SNMP counters dmtrPeerRxRequestCount, dmtrPeerTxRequestCount,


dmtrPeerRxResponseCount, dmtrPeerTxResponseCount, dmtrPeerTxFailedCount, and
dmtrPeerTimeoutCount.

Chart 2 displays the SNMP status dmtrPeerConnectionStatus: the value displayed in the
chart is 1 for status active(1) and 0 for anything else. Note that for accumulated view, the
value may be higher than 1, depending on the number of nodes this peer is active on.

Chart 3 displays SNMP counters dmtrPeerTxFailedCount and dmtrPeerTimeoutCount.

Copyright © BroadForward BV 2023 Page 142 of 199


BFX User Manual

Chart 4 displays SNMP counters dmtrPeerRxResult1xxxCount through


dmtrPeerRxResult5xxxCount, and dmtrPeerRxResultOtherCount. These counters refer to
ranges of (Experimental) Result-Codes, grouped by the first digit of the code. The inclusion
of dmtrPeerRxResult2xxxCount depends on configuration (see the BFX Operation and
Configuration Manual). This is because it is the most common Result-Code range and may
contain a large number, thereby suppressing the values for the other ranges.

Similarly chart 5 displays SNMP counters dmtrPeerTxResult1xxxCount through


dmtrPeerTxResult5xxxCount, and dmtrPeerTxResultOtherCount. These counters refer to
ranges of (Experimental) Result-Codes, grouped by the first digit of the code. The inclusion
of dmtrPeerTxResult2xxxCount depends on configuration (see the BFX Operation and
Configuration Manual). This is because it is the most common Result-Code range and may
contain a large number, thereby suppressing the values for the other ranges.

Chart 6 displays SNMP counters dmtrPeerRxInvalidSessionCount through


dmtrPeerRxMultipleOriginHostCount, indicating the violations on the Peer Firewall
checks, if enabled.

11.1.4.2 Diameter peer status


The Dashboard provides a status pane for Diameter peers of the system selected in the
Nodes menu (if Diameter is a configured interface for BFX). The pane is also available for
node “accumulated”, in which case the Diameter peer status information is displayed for all
nodes in the BFX system. Note: collecting this information may be a lengthy process.

Choose a Diameter peer in the drop-down box to obtain a list of the SNMP attributes
recorded for each peer. In addition, the option is presented to reset certain counters for the
peer (on one or all nodes, depending on the node chosen).

• OOS counters will reset SNMP attributes dmtrPeerLastOOS, dmtrPeerOOSDuration,


dmtrPeerOOSCount, dmtrPeerTransOOSDuration, dmtrPeerTransOOSCount.
• Rx/Tx counters will reset SNMP attributes dmtrPeerRxCount, dmtrPeerTxCount,
dmtrPeerTxFailedCount, dmtrPeerRxBytesCount, dmtrPeerTxBytesCount,
dmtrPeerTimeoutCount, dmtrPeerRxRequestCount, dmtrPeerRxResponseCount,
dmtrPeerTxRequestCount, dmtrPeerTxResponseCount.
Choose List of peers to obtain a list of all peers and a number of selected attributes. This
list can also be selected by pressing the List of peers button.

Copyright © BroadForward BV 2023 Page 143 of 199


BFX User Manual

D IAMETER PEER STATUS – LIST OF PEERS

The following attributes are displayed.

• Diameter ID: the Diameter ID of the peer. When clicked, the peer status details or
charts will be displayed (depending on configuration, see the BFX Operation and
Configuration Manual). When hovered, a tooltip appears showing the peer group and
associated IP addresses.
• Connection status: the value of the SNMP attribute dmtrPeerConnectionStatus.
• Peer OOS count: the value of SNMP attribute dmtrPeerOOSCount.
• Timeout count: the value of SNMP attribute dmtrPeerTimeoutCount.
• SCTP paths configured: the number of SCTP paths that is configured.
• SCTP paths up: the number of SCTP paths that is up.
• Ratio: the ratio between the number of SCTP paths up and the number configured.
• Accumulated path OOS count: the accumulated value of all OOS counts of all
SCTP paths for this peer.
• In/Out of service: when dmtrPeerConnectionStatus is “active”, displays the amount
of time the peer is in service (using SNMP attribute dmtrPeerLastChanged).
Otherwise, displays the amount of time the peer is out of service (using SNMP
attribute dmtrLastOOS).
Filtering and sorting options are available. Filters may be supplied with a Not checkbox to
invert the filtering function.

• Sort on: choose the column to sort on, ascending or descending. Note that the peer
group information is also available although not displayed in the table: hover over the
Diameter ID to see the peer group for this peer.
Sorting is also achieved by clicking the column header to sort on; clicking the same
header again will change the sorting order.

Copyright © BroadForward BV 2023 Page 144 of 199


BFX User Manual

• Diameter ID filter: Type one or more characters to narrow the list of displayed peers
to those that (partially) match the text typed on Diameter ID. Matching is case
insensitive. Click the red cross to clear the filter.
• IP address filter: Type one or more characters to narrow the list of displayed peers to
those that (partially) match the text typed on IP address(es). Fields that are included
in the match are Local source IP address(es), Remote listening IP
address(es) and Restrict to specific source IP address(es) (see the peer
configuration in the Nodes and Connection section). Click the red cross to clear the
filter.
• Connection status filter: Apply a filter based on actual connection status. Hover
over the Conn. status filter text for an explanation which SNMP ConnectionStatus
values are part of what filter value. Click the red cross to clear the filter.
• Maximum #entries: Provide a number to limit the entries displayed. Click the red
cross to clear the filter.
In active/standby setups, no information for standby nodes is displayed. Depending on GUI
settings (section 2.4), the Diameter peer status is subject to the Dashboard’s refresh interval
timer. A Refresh button is available for instant updating.

11.1.5 HTTP clients


For HTTP, clients can be selected from the drop-down box. It allows typing characters, to
narrow down the list of options. All client ids that (partially) match the entered text are
displayed in the drop-down list.

The Dashboard provides three charts for HTTP clients of the system selected in the Nodes
menu (if HTTP is a configured interface for BFX).

Chart 1 displays SNMP counters httpClientRxCount, httpClientTxCount, and


httpClientTxFailedCount.

Chart 2 displays the SNMP status httpClientConnectionStatus: the value displayed in


the chart is 1 for status established(1) and 0 for anything else.

Chart 3 displays SNMP counter httpClientTxFailedCount.

11.1.6 MAP
For MAP the total number of dialogues and results in the traffic is counted.

The Dashboard provides three charts for MAP traffic of the system selected in the Nodes
menu (if MAP is a configured interface for BFX).

Chart 1 displays SNMP counters ss7MapDlgsTotalIncoming, ss7MapDlgsNormalIncoming,


ss7MapDlgsTotalOutgoing, and ss7MapDlgsNormalOutgoing.

Chart 2 displays SNMP counters ss7MapDlgsAbnormalIncoming,


ss7MapDlgsInvalidIncoming, ss7MapDlgsRefusedIncoming,
ss7MapDlgsRefusedAlterACIncoming, ss7MapDlgsTimedOutIncoming,
ss7MapDlgsLocalUAbortedIncoming, ss7MapDlgsRemoteUAbortedIncoming,

Copyright © BroadForward BV 2023 Page 145 of 199


BFX User Manual

ss7MapDlgsPAbortedIncoming, ss7MapDlgsNoticeReceivedIncoming,
ss7MapDlgsProvErrReceivedIncoming.

Chart 3 displays SNMP counters ss7MapDlgsAbnormalOutgoing,


ss7MapDlgsInvalidOutgoing, ss7MapDlgsRefusedOutgoing,
ss7MapDlgsRefusedAlterACOutgoing, ss7MapDlgsTimedOutOutgoing,
ss7MapDlgsLocalUAbortedOutgoing, ss7MapDlgsRemoteUAbortedOutgoing,
ss7MapDlgsPAbortedOutgoing, ss7MapDlgsNoticeReceivedOutgoing,
ss7MapDlgsProvErrReceivedOutgoing.

11.1.7 INAP
For INAP the total number of dialogues and results in the traffic is counted.

The Dashboard provides three charts for INAP traffic of the system selected in the Nodes
menu (if INAP is a configured interface for BFX).

Chart 1 displays SNMP counters ss7InapDlgsTotalIncoming,


ss7InapDlgsNormalIncoming, ss7InapDlgsTotalOutgoing and
ss7InapDlgsNormalOutgoing.

Chart 2 displays SNMP counters ss7InapDlgsAbnormalIncoming,


ss7InapDlgsInvalidIncoming, ss7InapDlgsRefusedIncoming,
ss7InapDlgsRefusedAlterACIncoming, ss7InapDlgsTimedOutIncoming,
ss7InapDlgsLocalUAbortedIncoming, ss7InapDlgsRemoteUAbortedIncoming,
ss7InapDlgsPAbortedIncoming, ss7InapDlgsNoticeReceivedIncoming,
ss7InapDlgsInvokeRejectedIncoming, ss7InapDlgsResultRejectedIncoming,
ss7InapDlgsErrorRejectedIncoming.

Chart 3 displays SNMP counters ss7InapDlgsAbnormalOutgoing,


ss7InapDlgsInvalidOutgoing, ss7InapDlgsRefusedOutgoing,
ss7InapDlgsRefusedAlterACOutgoing, ss7InapDlgsTimedOutOutgoing,
ss7InapDlgsLocalUAbortedOutgoing, ss7InapDlgsRemoteUAbortedOutgoing,
ss7InapDlgsPAbortedOutgoing, ss7InapDlgsNoticeReceivedOutgoing,
ss7InapDlgsInvokeRejectedOutgoing, ss7InapDlgsResultRejectedOutgoing,
ss7InapDlgsErrorRejectedOutgoing.

11.1.8 SCCP
For SCCP the total number of messages in the traffic is counted.

The Dashboard provides three charts for SCCP traffic of the system selected in the Nodes
menu (if SCCP/M3UA is a configured interface for BFX).

Chart 1 displays SNMP counters sccpMsgRxUDTCount, sccpMsgRxUDTSCount,


sccpMsgRxXUDTCount, sccpMsgRxXUDTSCount, sccpMsgRxLUDTCount, and
sccpMsgRxLUDTSCount.

Chart 2 displays SNMP counters sccpMsgTxUDTCount, sccpMsgTxUDTSCount,


sccpMsgTxXUDTCount, sccpMsgTxXUDTSCount, sccpMsgTxLUDTCount, and
sccpMsgTxLUDTSCount.

Copyright © BroadForward BV 2023 Page 146 of 199


BFX User Manual

Chart 3 displays SNMP counters sccpMsgRxNotSupportedTypeCount,


sccpMsgInsufficientPDULengthCount, sccpMsgIncorrectParamLengthCount.

11.1.9 M3UA associations


For M3UA, associations can be selected from the drop-down box. It allows typing characters,
to narrow down the list of options. All association ids that (partially) match the entered text are
displayed in the drop-down list.

11.1.9.1 M3UA association charts


The Dashboard provides six charts for M3UA associations of the system selected in the
Nodes menu (if M3UA is a configured interface for BFX).

Chart 1 displays SNMP counters m3uaAssociationRxCount,


m3uaAssociationRxInvalidCount, m3uaAssociationTxCount,
m3uaAssociationTxFailedCount.

Chart 2 displays the SNMP status m3uaAssociationState: the value displayed in the chart
is 1 for status established(2) and 0 for anything else. Note that for accumulated view, the
value may be higher than 1, depending on the number of nodes this association is active on.

Chart 3 displays the SNMP status m3uaAssociationASPSMState: the value displayed in the
chart is 1 for status up(2) and 0 for anything else. Note that for accumulated view, the value
may be higher than 1, depending on the number of nodes this association is active on.

Chart 4 displays SNMP counters m3uaAssociationRxInvalidVersionCount,


m3uaAssociationRxUnsupportedClassCount,
m3uaAssociationRxUnsupportedTypeCount, m3uaAssociationRxInvalidParamCount,
m3uaAssociationRxProtocolErrorCount, m3uaAssociationTxFailedSendCount,
m3uaAssociationTxFailedCongestCount, m3uaAssociationTxFailedUnavailCount.

Chart 5 displays SNMP counters


m3uaAssociationMsgTypeErrRxInvalidRoutingContextCount,
m3uaAssociationMsgTypeErrRxInvalidNetworkAppearanceCount,
m3uaAssociationMsgTypeErrRxInvalidASPIdCount,
m3uaAssociationMsgTypeErrRxASPIdRequiredCount,
m3uaAssociationMsgTypeErrRxUnsupportedTMTypeCount,
m3uaAssociationMsgTypeErrRxNoConfigAsForASPCount,
m3uaAssociationMsgTypeErrRxDestStatusUnknownCount,
m3uaAssociationMsgTypeErrRxRefusedMGMTBlockingCount.

Chart 6 displays SNMP counters


m3uaAssociationMsgTypeErrTxInvalidRoutingContextCount,
m3uaAssociationMsgTypeErrTxInvalidNetworkAppearanceCount,
m3uaAssociationMsgTypeErrTxProtocolErrorCount,
m3uaAssociationMsgTypeErrTxUnexpectedMsgCount,
m3uaAssociationMsgTypeErrTxUnexpectedParamCount,
m3uaAssociationMsgTypeErrTxMissingParamCount,

Copyright © BroadForward BV 2023 Page 147 of 199


BFX User Manual

m3uaAssociationMsgTypeErrTxParamFieldErrorCount,
m3uaAssociationMsgTypeErrTxInvalidParamCount.

11.1.9.2 M3UA association status


The Dashboard provides a status pane for M3UA associations of the system selected in the
Nodes menu (if M3UA is a configured interface for BFX). The pane is also available for node
“accumulated”, in which case the M3UA association status information is displayed for all
nodes in the BFX system.

Choose an M3UA association in the drop-down box to obtain a list of the SNMP attributes
recorded for each association.

Choose List of associations to obtain a list of all associations and a number of selected
attributes. This list can also be selected by pressing the List of associations button.

M3UA ASSOCIATION STATUS – LIST OF ASSOCIATIONS

The following attributes are displayed.

• Association ID: the ID of the association. When clicked, the association status
details will be displayed. When hovered, a tooltip appears showing the association
group and associated IP addresses.
• Association State: the value of the SNMP attribute m3uaAssociationState.
• ASPSM State: the value of the SNMP attribute m3uaAssociationASPSMState.
• Association OOS Count: the value of the SNMP attribute
m3uaAssociationOOSCount.
• SCTP paths configured: the number of SCTP paths that is configured.
• SCTP paths up: the number of SCTP paths that is up.
• Ratio: the ratio between the number of SCTP paths up and the number configured.
• Accumulated path OOS count: the accumulated value of all OOS counts of all
SCTP paths for this association.
• In/Out of service: when m3uaAssociationState is “active”, displays the amount of
time the association is in service (using SNMP attribute

Copyright © BroadForward BV 2023 Page 148 of 199


BFX User Manual

m3uaAssociationLastChanged). Otherwise, displays the amount of time the


association is out of service (using SNMP attribute m3uaAssociationLastOOS).
Filtering and sorting options are available. Filters may be supplied with a Not checkbox to
invert the filtering function.

• Sort on: choose the column to sort on, ascending or descending. Note that the
association group information is also available although not displayed in the table:
hover over the ID to see the association group for this association.
Sorting is also achieved by clicking the column header to sort on; clicking the same
header again will change the sorting order.
• Association ID filter: Type one or more characters to narrow the list of displayed
associations to those that (partially) match the text typed on Association ID. Matching
is case insensitive. Click the red cross to clear the filter.
• IP address filter: Type one or more characters to narrow the list of displayed
associations to those that (partially) match the text typed on IP address(es). Fields
that are included in the match are Local source IP address(es), Remote
listening IP address(es) and Restrict to specific source IP address(es) (see
the association configuration in the Nodes and Connection section). Click the red
cross to clear the filter.
• State filter: Apply a filter based on actual association state. Hover over the State
filter text for an explanation which SNMP m3uaAssociationState values are part of
what filter value. Click the red cross to clear the filter.
• Maximum #entries: Provide a number to limit the entries displayed. Click the red
cross to clear the filter.
In active/standby setups, no information for standby nodes is displayed. Depending on GUI
settings (section 2.4), the M3UA association status is subject to the Dashboard’s refresh
interval timer. A Refresh button is available for instant updating.

11.1.10 M3UA destinations status


The Dashboard provides a status pane for M3UA destinations of the system selected in the
Nodes menu (if M3UA is a configured interface for BFX). The pane is also available for node
“accumulated”, in which case the M3UA destination status information is displayed for all
nodes in the BFX system.

Choose an M3UA destination in the drop-down box to obtain a list of the SNMP attributes
recorded for each destination.

Choose List of destinations to obtain a list of all associations and a number of selected
attributes. This list can also be selected by pressing the List of destinations button.

Copyright © BroadForward BV 2023 Page 149 of 199


BFX User Manual

M3UA DESTINATION STATUS – LIST OF DESTINATIONS

The following attributes are displayed.

• Destination ID: the ID of the destination. When clicked, the destination status details
will be displayed. When hovered, a tooltip appears showing the destination group and
associated IP addresses.
• State: the value of the SNMP attribute m3uaDestinationState.
• Point code: the associated point code.
• Network indicator: the associated network indicator.
Filtering and sorting options are available. Filters may be supplied with a Not checkbox to
invert the filtering function.

• Sort on: choose the column to sort on, ascending or descending. Note that the
destination group information is also available although not displayed in the table:
hover over the ID to see the destination group for this destination.
Sorting is also achieved by clicking the column header to sort on; clicking the same
header again will change the sorting order.
• Destination ID filter: Type one or more characters to narrow the list of displayed
destinations to those that (partially) match the text typed on Destination ID. Matching
is case insensitive. Click the red cross to clear the filter.
• State filter: Apply a filter based on actual destination state. Hover over the State
filter text for an explanation which SNMP m3uaDestinationState values are part of
what filter value. Click the red cross to clear the filter.
• Maximum #entries: Provide a number to limit the entries displayed. Click the red
cross to clear the filter.
In active/standby setups, no information for standby nodes is displayed. Depending on GUI
settings (section 2.4), the M3UA destination status is subject to the Dashboard’s refresh
interval timer. A Refresh button is available for instant updating.

Copyright © BroadForward BV 2023 Page 150 of 199


BFX User Manual

11.1.11 Database
For the databases (i.e. Couchbase buckets) used in the system, charts are available to display
statistics. Databases can be selected from the drop-down box. The selectable items depend
on the BFX deployment. Applicable items can be:

• For Conversion operations that work on the session store, the database to select is
conv_sesion_info.

• For the Storage module, the database to select is the one configured under item
StoreName in the Storage section in mf.cfg.

• For the MDIWF module, the database to select is mdiwf_map_info.


The Dashboard provides three charts for Database statistics of the system selected in the
selected in the Nodes menu (if applicable in the BFX deployment).

Chart 1 displays the total number of entries in the database.

Chart 2 displays the usage of the memory (as a percentage) allocated to the database.

Chart 3 displays the number of requests per second issued at the database (get, set and
delete).

11.2 Alarm view


The Alarm view is a Dashboard element which is used to display alarms (SNMP notifications,
or traps) as generated by the BFX software, and selected third party components (including
the SS7 stack, keepalived and net-snmp traps).

The overview can be viewed for active alarms (i.e. not cleared) or the alarm history (a log of all
alarm status changes).

Copyright © BroadForward BV 2023 Page 151 of 199


BFX User Manual

The following attributes are displayed.

• Timestamp: the time of generation of the alarm.


• Severity: the severity of the alarm: Critical, Major, Minor, Warning, Info, Cleared
(applicable for Alarm history) or Indeterminate. Text and background coloring is
subject to GUI settings (section 2.4).
• Node: the node where the alarm was generated.
• Trap name: the name of the alarm as defined in the MIB.
• Description: the description of the alarm as defined in the MIB.
• Parameters: a comma separated string of parameters associated with the
notification.
The title bar shows the number of alarms per severity, using the corresponding color coding.
Hover over the number to see the alarm severity.

Filtering and sorting options are available. Filters may be supplied with a Not checkbox to
invert the filtering function.

• Sort on: choose the column to sort on, ascending or descending. Sorting is also
achieved by clicking the column header to sort on; clicking the same header again will
change the sorting order.
• Severity filter: Choose a severity to narrow the list of displayed alarms to those that
match the severity. Use the And higher button to see the more severe notifications
as well. Click the red cross to clear the filter.
The order of severities, from highest to lowest: Critical, Major, Warning, Minor, Info,
Cleared.
• Trap name filter: Type one or more characters to narrow the list of displayed alarms
to those that (partially) match the text typed on trap name. Click the red cross to clear
the filter.
• Description filter: Type one or more characters to narrow the list of displayed alarms
to those that (partially) match the text typed on description. Click the red cross to clear
the filter.
• Parameters filter: Type one or more characters to narrow the list of displayed alarms
to those that (partially) match the text typed on parameters. Click the red cross to
clear the filter.
• Maximum #entries: Provide a number to limit the entries displayed. Click the red
cross to clear the filter.
When the Alarm view is used for node “accumulated”, the alarms of all nodes are displayed.
When the Alarm view is used for a specific node, only alarms from that node are displayed.
The Alarm view is subject to the Dashboard’s refresh interval timer. A Refresh button is
available for instant updating.

Active alarms can be “acknowledged”. Right-click on the alarm line, and choose
Acknowledge alarm to confirm the acknowledgement or Cancel to cancel. On the BFX

Copyright © BroadForward BV 2023 Page 152 of 199


BFX User Manual

server, the alarm will be marked as being acknowledged, meaning it will not show any longer
in the active alarm overview. The alarm is not removed.

Acknowledged alarms are marked grey in the table, until a next load of the alarm view occurs
either because of the refresh timer, or a manual reload. The acknowledged alarm is then no
longer displayed in the active alarm view.

11.3 Workbench
The Workbench is a Dashboard element which is used to integrate management and reporting
tooling the BFX GUI.

Through configuration a selection of tools is made available which can be provided with
parameters, and be executed within the Dashboard environment. These tools can be used to
obtain system information, make modifications on system level etc.

Creation and deployment of these tools is a topic that is beyond the scope of this manual. See
the BFX Operation and Configuration Manual for more information. A general description of
the use of the Workbench items is found below.

• Top section: this section offers the selection of tools to be executed, as well as the
button to execute the tool.
• Middle section: this section displays information about the tool (either in text or via a
foldable pane) and a number of input widgets. An asterisk character denotes
mandatory items; the Execute button is only enabled when all mandatory input is
provided.
Input can be in the form of free format, check boxes, select boxes or date selection.
The ‘dash option’ text indicates how the user input is passed to the command line of
the tool.
• Bottom section: this section displays the output of the tool. Basic HTML coding is
supported. The function and output of the tool depends on the tool itself and cannot
be described here.
Input parameters may depend on the content of others. This means either their visibility or
their contents (i.e. the options to choose from in a select box) changes as a result of the
changed value of other input widgets.

When the Workbench is used for node “accumulated”, the commands are executed on the
Group Master. Workbench tools are not subject to the Dashboard’s refresh interval timer.

Copyright © BroadForward BV 2023 Page 153 of 199


BFX User Manual

11.4 Dashboard data


The dashboard data can be sent by email. Select the Dashboard data menu, choose
Email charts or Email status, provide one or more email addresses (separated by
comma) and click Send to send the email(s).

The dashboard data can be displayed on a separate page for printing purposes by choosing
Print charts or Print status from the the Dashboard data menu.

Charts may contain so called “spikes”, abnormal high values which cause the actual data to
be invisible on the chart. Usually, these are results of a reset of SNMP counters. To de-spike
the current chart(s), choose De-spike charts from the Chart data menu. To de-spike all
chart(s) in the system, choose De-spike all charts from the Chart data menu. Note: this
is a lengthy process, processing times of several minutes are not uncommon. Dashboard
data collection continues during this process.

11.5 Configuration
The charts and syslog tail length can be configured to obtain the desired view. Select the
Configuration menu to open a pane with various options.

T HE CONFIGURATION PANE

• New window when selecting node: define if a new browser window is opened when
a new node is selected from the Nodes menu.
• Refresh rate: the charts are updated automatically. The refresh interval can be
specified from 30 seconds to 60 minutes by sliding the marker. If no automatic
updating is required, check the No automatic refresh box. A chart update is also
obtained by selection another tab in the chart tab pane.
• Chart window: traffic information can be displayed over the last hour(s), last day
(24h), last week (7 days), last month (31 days) or last year (365 days) by sliding the
marker. Choosing a chart window leads to updated charts.

Copyright © BroadForward BV 2023 Page 154 of 199


BFX User Manual

• Threshold value: a value between 0 and 200,000 which is used to define the
threshold used in chart 2. Enter the desired value. The value is used at the next chart
update.
• Display data until: by default, the traffic information displayed is the most recent. If a
different reference point is required, uncheck the Now checkbox and choose a date
and time to display a different data window. Note that due to the nature of the
underlying technology, information will be less detailed. Choosing a new date/time
leads to updated charts.
• Color scheme: defines the colors used in the chart. A set of predefined color
schemes is provided. Contact BroadForward (section 13) for additional color
schemes. See the legend provided in each chart to learn what color is used for what
data. Choosing a color scheme leads to updated charts.
These options are persistent: upon login or browser refresh, the last options set are
preloaded.

11.6 System messages view


The Dashboard contains a system messages view which opens in a separate browser
window when selecting Tail … from the Logging menu (disabled for accumulated view). It
shows a tail of a log or trace file of the system selected in the Nodes menu. The name of the
file viewed is in the pane’s title.

T HE PANE SYSLOG TAIL

The system’s log information is updated at a configurable interval (Refresh rate and No
automatic refresh controls under the Configuration menu). A filter text can be specified,
which is applied to the tail output (so the actual number of lines displayed may be less than
the value specified for the Tail length control).

The length of the tail can be set by sliding the marker of the Tail length control under the
Configuration menu. Setting the tail length leads to an updated tail.

The default order in which the lines are presented is ‘most recent at bottom’; this can be
reversed by clicking the Reverse order control under the Configuration menu.

The full file can be locally downloaded using the entries under the Logfile menu. Any
previous files (as per log file rotation scheme) are presented for download. An indication of
the file size is given.

Copyright © BroadForward BV 2023 Page 155 of 199


BFX User Manual

T HE L OGFILE MENU

A different node can be selected under the Nodes menu.

Copyright © BroadForward BV 2023 Page 156 of 199


BFX User Manual

12 Overview
The Overview frontend displays a graphical overview of the flows, routing rules and list
profiles configured in the system. It is meant to provide an alternative, read-only
representation of the configuration of BFX.

To open the Overview frontend, point the browser to the URL https://<BFX node
IP>:60443
Log in and select the Overview window option under the More options button in the
main menu bar.

OVERVIEW SCREEN - E XAMPLE

The screen displays the flows in a horizontal orientation. It starts with information on the flow,
displayed here in the yellow box. Following are the Application Modules that are part of the
flow: blue for Protocol Modules and green for Function Modules4.

Flow Selector steps show the flows involved in that step, in smaller yellow boxes. Routing
steps show the routing rules involved in that step, in red. Loadable List steps show the list
profile involved in that step, in purple.

Additional configuration information is displayed when hovering over the flow or step names.

The following configuration items are available via the “gear” icon in the top left corner:

• Show details: check this box to expand the boxes with detailed information on the
flow’s conditions and step configuration.
• Show source host IP/local port: check this box to display details on the source host
IP address and local port as configured in the conditions, if any.
• Expand subflows: check this box to display the steps for any flow used in a Flow
Selector step.
• Show subflows as main flow: when Expand subflows is checked, they are not
shown in the ‘root’ of the view. Check this box to display them anyway.

4 Coloring is subject to BFX branding

Copyright © BroadForward BV 2023 Page 157 of 199


BFX User Manual

• Expand routing rules: check this box to display the routing rules used in a Routing
step.
• Order by: the radio button allows selection of ordering the flows on either source host
IP as configured in the conditions, flow group, or flow id.
When a flow belongs to a flow group, click the group name to display flows for that particular
group only. When looking at a flow group, a Show all flows button is available in the
configuration pane to return to the full view.

The Reload view button updates the information.

Copyright © BroadForward BV 2023 Page 158 of 199


BFX User Manual

13 Support
For questions, issues and suggestions please contact us. Our Support services provide
customers and partners with access to expert support, problem resolution and software
updates. BroadForward Support services can be contacted via:

• Phone: +31 85 489 5 680 (Netherlands)


• E-mail: support@broadforward.com
• Online: http://www.broadforward.com/support/

Copyright © BroadForward BV 2023 Page 159 of 199


BFX User Manual

Appendix A. Time/date Format Characters


This appendix contains a partial copy of the strftime(3) man page. It lists the format
characters that can be used in the Set Time and Store Time operations when configuring
Event Details.

%a The abbreviated weekday name according to the current locale.


%A The full weekday name according to the current locale.
%b The abbreviated month name according to the current locale.
%B The full month name according to the current locale.
%c The preferred date and time representation for the current locale.
%C The century number (year/100) as a 2-digit integer.
%d The day of the month as a decimal number (range 01 to 31).
%D Equivalent to %m/%d/%y.
%e Like %d, the day of the month as a decimal number, but a leading zero is
replaced by a space.
%E Modifier: use alternative format, see below.
%F Equivalent to %Y-%m-%d (the ISO 8601 date format).
%G The ISO 8601 week-based year with century as a decimal number. The 4-digit
year corresponding to the ISO week number (see %V). This has the same format and
value as %Y, except that if the ISO week number belongs to the previous or year,
that year is used instead.
%g Like %G, but without century, that is, with a 2-digit year (00-99).
%h Equivalent to %b.
%H The hour as a decimal number using a 24-hour clock (range 00 to 23).
%I The hour as a decimal number using a 12-hour clock (range 01 to 12).
%j The day of the year as a decimal number (range 001 to 366).
%k The hour (24-hour clock) as a decimal number (range 0 to 23); single
digits are preceded by a blank. See also %H.
%l The hour (12-hour clock) as a decimal number (range 1 to 12); single
digits are preceded by a blank. See also %I.
%m The month as a decimal number (range 01 to 12).
%M The minute as a decimal number (range 00 to 59).
%n A newline character.
%p Either "AM" or "PM" according to the given time value, or the
corresponding strings for the current locale. Noon is as "PM" and midnight as
"AM".
%P Like %p but in lowercase: "am" or "pm" or a corresponding string for the
current locale.
%r The time in a.m. or p.m. notation. In the POSIX locale this is equivalent
to %I:%M:%S %p.
%R The time in 24-hour notation (%H:%M). For a version including the seconds,
see %T.
%s The number of seconds since the Epoch, that is, since 1970-01-01 00:00:00
UTC.
%S The second as a decimal number (range 00 to 60). The range is up to 60 to
allow for occasional leap seconds.
%t A tab character.
%T The time in 24-hour notation (%H:%M:%S).
%u The day of the week as a decimal, range 1 to 7, Monday being 1. See also
%w.
%U The week number of the current year as a decimal number, range 00 to 53,
starting with the first Sunday as the first day of 01. See also %V and %W.
%V The ISO 8601 week number of the current year as a decimal number, range 01
to 53, where week 1 is the first that has at least 4 days in the new year. See
also %U and %W.
%w The day of the week as a decimal, range 0 to 6, Sunday being 0. See also
%u.
%W The week number of the current year as a decimal number, range 00 to 53,
starting with the first Monday as the first day of 01.

Copyright © BroadForward BV 2023 Page 160 of 199


BFX User Manual

%x The preferred date representation for the current locale without the time.
%X The preferred time representation for the current locale without the date.
%y The year as a decimal number without a century (range 00 to 99).
%Y The year as a decimal number including the century.
%z The time-zone as hour offset from GMT. Required to emit RFC 822-conformant
dates (using "%a, %d %b %Y %H:%M:%S %z").
%Z The timezone or name or abbreviation.
%+ The date and time in date(1) format.
%% A literal '%' character.

Copyright © BroadForward BV 2023 Page 161 of 199


BFX User Manual

Appendix B. Routing rule provisioning


Bulk provisioning of Routing rules is done via files, containing comma separated values (CSV).
A CSV file can be uploaded to the system upon selecting Routing rules from the
Provisioning menu in the Routing Rules GUI section.

The first line in the CSV file is the header, containing the fields to provision per routing rule.
The subsequent lines contain the values for the routing rule to provision.

Example:

id,description,rrulegroup,dest1,dest2
Arrule01,Provisioned Routing Rule #1,,labelA,labelB
Arrule02,Provisioned Routing Rule #2,PROVGROUP,labelA,labelC
Arrule03,Provisioned Routing Rule #3,PROVGROUP,labelA,labelD

Comment lines (lines starting with # sign) and empty lines are ignored. Lines which contain a
different number of items as the header line, are not processed. Items which are unspecified,
should be left blank. Files which do not contain all required header fields are not processed.

All characters between the field separator (comma) are processed, so text values should not
be quoted. The comma character cannot be used in a field value.

Lines which attempt to provision a Routing rule which already exists, are not processed,
unless the Overwrite existing Routing rules checkbox is set. In that case, the existing
values are overwritten by the provisioned values.

The table lists the fields that can or should (“Required” = yes) occur in a provisioning file. For a
more extensive description of the fields, refer to the help in the GUI.

Field Required Default value Format GUI Item

id Yes N/A Text (max 128 characters) Routing rule id

description No empty Text (max 128 characters) Description

rrulegroup No empty Text (max 32 characters) Routing rule group

dest1 Yes N/A Text (max 32 characters) Primary destination

dest2 No empty Text (max 32 characters) Secondary destination

dest3 No empty Text (max 32 characters) Last resort destination

Copyright © BroadForward BV 2023 Page 162 of 199


BFX User Manual

Field Required Default value Format GUI Item

condition No no condition String with various Condition


condition elements, see
below (multiple
occurrences possible).

A condition is specified as a string with the following format:

(<condition_element>=<condition_value>;)*

Example:

id_condition=reqavp_Vendor-Specific-Application-Id;ordern=1;value1=2500;

For multiple conditions, use multiple comma-separated condition strings.

Example (fragment):

condition,condition,condition,condition,condition
id_condition=meta_avp_file;ordern=0;value2=ALL,\
id_condition=meta_avp_file;ordern=0;conditionset=2;value2=ALL;value3=AND,\
id_condition=meta_peer_id;ordern=1;value1=myhost123.org,\
id_condition=meta_peer_id;ordern=1;conditionset=2;operator=nequal;value1=myhost456.or
g,\
id_condition=meta_local_port;ordern=2;operator=nempty;

Copyright © BroadForward BV 2023 Page 163 of 199


BFX User Manual

The table lists the elements that can or should (“Required” = yes) occur in a condition
provisioning string.

Element Required Default value Format GUI Item

id_condition Yes N/A Text (max 128 characters) Condition id.


Possible values:
Meta AVPs:
meta_src_host
meta_local_port
meta_hostname
meta_appl_id
meta_prim_label
meta_sec_label
meta_peer_id
meta_dialog_cont
Event from request msg:
The event name as set in the
AVP file, prepended with the
string ‘reqevent_’.
AVPs from request msg:
The AVP name as set in the
AVP file, prepended with the
string ‘req_avp_’.
Event from response msg:
The event name as set in the
AVP file, prepended with the
string ‘rspevent_’.
AVPs from response msg:
The AVP name as set in the
AVP file, prepended with the
string ‘rsp_avp_’.

ordern Yes N/A Number Order number of the


condition, starting at 1
(see remark below about
order number 0). Order
numbers are specified
within the condition set,
so the conditions in
condition set #1 have
order numbers 0, 1, 2, 3
etc. and the conditions in
a possible condition set
#2 also have order
numbers 0, 1, 2, 3 etc.

conditionset No 1 Number (1 or 2, no other The condition set this


values allowed) condition belongs to:
either the first (1) or the
second (2).

Copyright © BroadForward BV 2023 Page 164 of 199


BFX User Manual

Element Required Default value Format GUI Item

operator No equal Text (max 8 characters) Operator


Possible values (subject to
choice for AVP, see GUI
help):
equal
nequal
greater
lesser
range
nrange
empty
nempty
prefix
nprefix
netmask
occur
noccur

operate_on No value Text (max 8 characters) Operate on


Possible values:
value
length

cond_enabled No true Text, either true or false. Condition switched


on (true, enabled) or
off (false, disabled).

value1 No empty Text (max 128 characters) Value to test against.

value2 No empty Text (max 128 characters) Value to test against.


Used for range
operators.

value3 No empty Text (max 128 characters) Only used in case of


second condition set.
See remark below.

value1type No literal Text (max 8 characters) How to interpret the


Possible values: value.
literal
avp

value2type No literal Text (max 8 characters) How to interpret the


Possible values: value.
literal
avp

test_all No false Text, either true or false Checkbox Test all


occurences

Note that in order to set the GUI items AVP file and Match for condition set #1, a special
condition with id “meta_avp_file” and order number 0, condition set 1, is configurable.

Copyright © BroadForward BV 2023 Page 165 of 199


BFX User Manual

• Condition element value1 applies to the AVP file (optional)


• Condition element value2 applies to the match type (“ALL” for All conditions or
“ANY” for Any condition).
Example:

id_condition=meta_avp_file;ordern=0;value1=rrulecondition_avpset_3gppgx.xml;value2=
ANY;

The AVP file name is the name of the file as found in the GUI’s rrulemgt/xmlavp directory.

If no condition order number 0 is specified, the AVP file is left empty and the match type is set
to “ALL”.

Note that in order to set the GUI items Second condition set has … relation with first
set and Match for condition set #2, a special condition with id “meta_avp_file” and order
number 0, condition set 2, is configurable.

• Condition element value3 applies to the relation with first set (“AND” for logical AND
and “OR” for logical OR)
• Condition element value2 applies to the match type (“ALL” for All conditions or
“ANY” for Any condition).

Copyright © BroadForward BV 2023 Page 166 of 199


BFX User Manual

Appendix C. Tracing rule provisioning


Bulk provisioning of Tracing rules is done via files, containing comma separated values (CSV).
A CSV file can be uploaded to the system upon selecting Tracing rules from the
Provisioning menu in the Tracing Rules GUI section.

The provisioning of Tracing rules is the same as provisioning Routing rules, except for
Destinations not being applicable. See Appendix B for the details.

Copyright © BroadForward BV 2023 Page 167 of 199


BFX User Manual

Appendix D. List profile data file provisioning


Bulk provisioning of List profile data is done via files, containing lines with comma separated
values (CSV). A CSV file can be uploaded to the system upon selecting Data files from the
Provisioning menu in the List Profiles GUI section.

The first line in the CSV file is the header, containing the data fields to provision. The
subsequent lines contain the values for the list data to provision.

The entries in the header identify the data elements.

Example 1:

primaryKey, secondaryKey, data1, data2


204190361, 31412345, 01, bfx
304190361, 31412345, 01, bfx
404190361, 31312345, 02, bfx1
504190361, 31312345, 01, bfx

Example 2:

primaryKey, data1, data2, data3


204190361, 31412345, 01, bfx
304190361, 31412345, 01, bfx
404190361, 31312345, 02, bfx1
504190361, 31312345, 01, bfx

Leading and trailing spaces are stripped. Empty lines are ignored.

Lines which contain a different number of items as the header line, will result in an error
response at the time of querying in the List module. Files which do not contain all required
header fields are not processed.

All characters between the field separator (comma) are processed, so text values should not
be quoted. The comma character cannot be used in a field value.

Copyright © BroadForward BV 2023 Page 168 of 199


BFX User Manual

Appendix E. Diameter peer provisioning


Bulk provisioning of Diameter peers is done via files, containing comma separated values
(CSV). A CSV file can be uploaded to the system upon selecting Diameter peers from the
Provisioning menu in the Nodes and Connections GUI section.

The provisioning is applied to the node selected (in case of ‘node specific’ configuration), the
node plus its cluster peer (in case of ‘per cluster’ configuration) or system wide (in case of
‘system wide’ configuration).

The first line in the CSV file is the header, containing the fields to provision per peer. Fields in
the header may not be empty. The subsequent lines contain the values for the peer to
provision.

Example:

diameter_id,description,tcp_supported,sctp_supported,sctp_min_rto,sctp_max_rto
xyz.operator.dummy1,Example peer1,true,false,45,700
xyz.operator.dummy2,Example peer2,false,true,12,900
xyz.operator.dummy3,Example peer3,true,true,14,800

Comment lines (lines starting with # sign) and empty lines are ignored. Lines which contain a
different number of items as the header line, are not processed. Items which are unspecified,
should be left blank. Files which do not contain all required header fields are not processed.

All characters between the field separator (comma) are processed, so text values should not
be quoted. The comma character cannot be used in a field value.

Lines which attempt to provision a Diameter peer id which already exists, are not processed,
unless the Overwrite existing Diameter peer ids checkbox is set. In that case, the
existing entry is overwritten by the provisioned one.

The table lists the fields that can or should (“Required” = yes) occur in a provisioning file. For a
more extensive description of the fields, refer to the tooltip help in the Diameter peer
configuration dialog box in the GUI.

Field Required Default value Format GUI Item

diameter_id Yes N/A Text (max 128 char.) Diameter peer id

description No empty Text (max 128 char.) Description

Copyright © BroadForward BV 2023 Page 169 of 199


BFX User Manual

Field Required Default value Format GUI Item

peergroup No empty Text (max 32 char.) Peer group

disabled No 0 Integer, set to 1 if the peer Modus of disable/enable


should be in ‘disabled’ button. Disabled peers are
mode. configured, but not active.

tcp_supported No true Text, either true or false TCP supported

sctp_supported No true Text, either true or false SCTP supported

ip_supported No true Text, either true or false IPv4 supported

ipv6_supported No true Text, either true or false IPv6 supported

prefer_tcp No sctp Text, either tcp or sctp Prefer (TCP or SCTP)

sctp_init_rto No Value as set Number SCTP Initial RTO (msec)


on global level

sctp_min_rto No Value as set Number SCTP Min RTO (msec)


on global level

sctp_max_rto No Value as set Number SCTP Max RTO (msec)


on global level

tls_supported No false Text, either true or false TLS supported

dtls_supported No false Text, either true or false DTLS supported

nagle_supported No false Text, either true or false Nagle’s algorithm (only if not
set on global level)

port No empty Number Peer connect port

cont_dwr No false Text, either true or false Continuous Diameter


Watchdog Requests

tc_timer No Value as set Number between 1 and Peer connect timer (sec)
on global level 3600

tw_timer No Value as set Number between 6 and Diameter Watchdog


on global level 3600 Request timer (sec)

remove_routerecor No false Text, either true or false Remove route records (only
ds if not set on global level)

remove_proxyinfo No false Text, either true or false Remove proxy info (only if
not set on global level)

connect_to No empty List of IPv4 or IPv6 Connect IP(s)


addresses, separated by ;
Example:
192.34.45.56;192.34.45.57;

strict_connect No false Text, either true or false Restrict to configured IP(s)

initiate_connect No true Text, either true or false Initiate peer connection

Copyright © BroadForward BV 2023 Page 170 of 199


BFX User Manual

Field Required Default value Format GUI Item

accept_inb_peer No true Text, either true or false Accept inbound peer


connection

accept_from No empty List of IPv4 or IPv6 Restrict to specific source


addresses, separated by ; IP(s)
Example:
192.34.45.56;192.34.45.57;

notifs_enabled No true Text, either true or false SNMP connection


notifications

local_addr No empty List of IPv4 or IPv6 Local address(es)


addresses, separated by ;
Example:
192.34.45.56;192.34.45.57;

local_listen_port No empty Number Local listen port

local_source_port No empty Number Local source port

tls_prio No empty Text (max 64 char.) Priority string

default_gw No false Text, either true or false Default gateway

max_ingress No Value as set Number Ingress throttle limit


on global level

max_egress No Value as set Number Egress throttle limit


on global level

label No empty List of labels, separated by Routing label(s)


;
Example:
Optionally a weight can be
label01:4;label02:8;label03;
added to the label,
separated by :

weight No empty Number (1..100) Load balancing weight

enforce_dest No false Text, either true or false Enforce peer id and realm

local_id No empty Text (max 256 char.) Local id

local_realm No empty Text (max 256 char.) Local realm

remote_id No empty Text (max 256 char.) Peer id

realm No empty Text (max 64 char.) Peer realm

enforce_id No false Text, either true or false Enforce local id and realm

timeout_no_rsp No false Text, either true or false Discard the response in


case of a transaction timeout

timeout_res_code No empty Number Result-Code to use in case


of a transaction timeout

Copyright © BroadForward BV 2023 Page 171 of 199


BFX User Manual

Field Required Default value Format GUI Item

auth_appl No empty List of defined application Local Authentication &


identifiers, terminated by ; Authorization application
Optional, a vendor support
identifier can be added to
Example:
the label, separated by :
16777251:10415;4;
(when no vendor identifier
is specified, zero is
assumed)

acct_appl No empty List of defined application Local Accounting application


identifiers, separated by ; support
Optional, a vendor
Example:
identifier can be added to
16777251:10415;4;
the label, separated by :
(when no vendor identifier
is specified, zero is
assumed)

relay_appl No true Text, either true or false Advertise relay

remote_appl No empty List of defined application Remote application support.


identifiers, separated by ;
Example:
16777251:10415;

remote_appl_ovr No false Text, either true or false Remote application support


overridden.

val_req_orig_host No false Text, either true or false Validate Origin-Host of


request

val_req_orig_real No false Text, either true or false Validate Origin-Realm of


m request

val_req_orig_host No false Text, either true or false Validate domain part of


dom Origin-Host of request

val_ans_orig_host No false Text, either true or false Validate Origin-Host of


answer

val_ans_orig_real No false Text, either true or false Validate Origin-Realm of


m answer

val_ans_orig_host No false Text, either true or false Validate domain part of


dom Origin-Host of answer

ver_sessionid_first No false Text, either true or false Session-Id (if present) must
be first AVP in message

ver_one_orig_host No false Text, either true or false Origin-Host must be present


and occur once

ver_one_orig_real No false Text, either true or false Origin-Realm must be


m present and occur once

ver_3gpp_orig_ho No false Text, either true or false Origin-Host must conform to


st 3GPP standard

Copyright © BroadForward BV 2023 Page 172 of 199


BFX User Manual

Field Required Default value Format GUI Item

ver_3gpp_orig_rea No false Text, either true or false Origin-Realm must conform


lm to 3GPP standard

ver_3gpp_orig_rea No false Text, either true or false Domain part of Origin-Realm


lmdom must conform to 3GPP
standard

ver_orig_host_do No false Text, either true or false Realm part of Origin-Host


mainrealm must be same as Origin-
Realm

ver_diff_orig_real No false Text, either true or false Origin-Realm must be


m_dest_realm different than Destination-
Realm

ver_dest_host_do No false Text, either true or false Realm part of Destination-


main_realm Host must be same as
Destination-Realm

ver_one_user_nam No false Text, either true or false User-Name must not occur
e more than once.

ver_one_dest_host No false Text, either true or false Destination-Host must not


occur more than once.

ver_one_dest_real No false Text, either true or false Destination-Realm must not


m occur more than once.

val_req_failed_res No empty Numeric Result code when validation


code fails

no_burst No false Text, either true or false No burst

max_burst No 4 Number (1..65535) Maximum data burst

num_out_streams No 10 Number (1..256) SCTP Outbound streams

max_in_streams No 65535 Number (1..65535) SCTP Inbound streams

max_init_rxt No 3 Number (1..65535) SCTP Init retransmits

max_init_to No 2000 Number (1..65535) SCTP Init timeout (msec)

max_assoc_rxt No 4 Number (1..65535) SCTP Max assoc


retransmits

cookie_life No 60000 Number Cookie lifetime (sec)

max_path_rxt No 5 Number (1..65535) SCTP Max path retransmits

no_hb No false Text, either true or false No heartbeat

no_hbinterval No false Text, either true or false No heartbeat interval

hb_interval No 6000 Number between 1 and Heartbeat interval (msec)


65535)

no_pmtud No false Text, either true or false No path MTU discovery

Copyright © BroadForward BV 2023 Page 173 of 199


BFX User Manual

Field Required Default value Format GUI Item

path_mtu No 1500 Number (1..65535) Fixed path MTU

no_sackdelay No false Text, either true or false No SACK delay

sack_to No 200 Number (1..65535) SACK timeout (sec)

ppid_unenc_sctp No empty Number (0..2000000000) Payload Protocol Identifier


for unencrypted SCTP
DATA chunks

ppid_tlsenc_sctp No empty Number (0..2000000000) Payload Protocol Identifier


for TLS encrypted SCTP
DATA chunks

te_timer No 10 Number (1..3600) Establishment timer (sec)

draft08 No false Text, either true or false Draft08 support

accept_holdoff No 1000 Number Holdoff time for accepting a


(1000..2000000000) next CER

rx_timeout No 10000 Number Expiry time for an incoming


(1000..2000000000) request (msec)

tx_timeout No 5000 Number Expiry time for an outgoing


(1000..2000000000) request (msec)

max_nr_errorretrie No 0 Number (0..5) Maximum number of retries


s on error

max_nr_timeoutret No 0 Number (0..5) Maximum number of retries


ries on timeout

accept_port No - Number Remote source port

ppid_unenc_sctp No 0 Number (0..4294967295) PPID (unencrypted)

ppid_tlsenc_sctp No 0 Number (0..4294967295) PPID (DTLS)

timeout_no_rsp No false Text, either true or false No response if transaction


timeout

timeout_res_code No - Number Transaction timeout Result-


Code

cmd_flags_mode No DefaultCmdFl Choice of values: Command flags mode


ags
DefaultCmdFlags
SetProxyBit
ClearProxyBit
FromSource

Copyright © BroadForward BV 2023 Page 174 of 199


BFX User Manual

Appendix F. M3UA and M2PA provisioning


Bulk provisioning of M3UA and M2PA objects via files, containing comma separated values
(CSV), is supported for:

• M3UA ASP/IPSP and SG application servers,

• M3UA ASP/IPSP and SG association servers,

• M3UA ASP/IPSP and SG associations,

• M3UA ASP/IPSP and SG destinations,

• M2PA SG signaling link sets,

• M2PA SG association servers,

• M2PA SG associations,

• M2PA SG destinations.

A CSV file can be uploaded to the system upon selecting the applicable item from the
Provisioning menu in the Nodes and Connections GUI section.

The provisioning is applied to the node selected (in case of ‘node specific’ configuration), the
node plus its cluster peer (in case of ‘per cluster’ configuration) or system wide (in case of
‘system wide’ configuration).

The first line in the CSV file is the header, containing the fields to provision per association or
destination. Fields in the header may not be empty. The subsequent lines contain the values
for the association or destination to provision.

Examples:

assoc_id,description,local_port,sctp_minrto,sctp_maxrto
ASSOC990,Example association 1,13990,45,7000
ASSOC991,Example association 2,13991,12,9000
ASSOC992,Example association 3,13992,14,8000

dest_id,description,pointcode
DEST990,Example destination 1,990
DEST991,Example destination 2,991

Copyright © BroadForward BV 2023 Page 175 of 199


BFX User Manual

DEST992,Example destination 3,992

Comment lines (lines starting with # sign) and empty lines are ignored. Lines which contain a
different number of items as the header line, are not processed. Items which are unspecified,
should be left blank. Files which do not contain all required header fields are not processed.

All characters between the field separator (comma) are processed, so text values should not
be quoted. The comma character cannot be used in a field value.

Lines which attempt to provision an M3UA object id which already exists, are not processed,
unless the Overwrite existing M3UA association ids checkbox is set (similar for
destinations). In that case, the existing values are overwritten by the provisioned values.

The tables below list the fields that can or should (“Required” = yes) occur in a provisioning
file. For a more extensive description of the fields, refer to the tooltip help in the configuration
dialog boxes in the GUI.

F.1 M3UA ASP/IPSP provisioning


Fields for M3UA ASP/IPSP application servers provisioning:

Field Required Default value Format GUI Item

applsrv_id Yes N/A Text (max 128 char.) Application server ID

description No empty Text (max 128 char.) Description

applsrvgroup No empty Text (max 32 char.) Application server group

disabled No 0 Integer, set to 1 if the Modus of disable/enable


application server should button. Disabled application
be in 'disabled' mode servers are configured, but
not active.

traffic_mode_type No empty string, one of "Override", Traffic mode type


"Loadshare" or
"Broadcast"

routing_context Yes empty Number Routing context

network_context Yes empty Defined network context Network context


identifier

Fields for M3UA ASP/IPSP association servers provisioning:

Field Required Default value Format GUI Item

assocsrv_id Yes N/A Text (max 128 char.) ID of association server.

description No empty Text (max 128 char.) Description

assocsrvgroup No empty Text (max 32 char.) Association server group.

Copyright © BroadForward BV 2023 Page 176 of 199


BFX User Manual

Field Required Default value Format GUI Item


disabled No 0 Integer, set ot 1 if the Modus of disable/enable
association server should button. Disabled association
be in 'disabled' mode servers are configured, but
not active.

listen_on Yes default IPv4 or IPv6 addresses, Listen IP(s)


depending on
ip_supported and Example:
ipv6_supported setting. 127.0.0.1;127.0.0.2;
Separated by ;.

listen_port Yes default Number Listen port

ip_supported No 'on' Text, either true or false IPv4 supported

ipv6_supported No 'on' Text, either true or false IPv6 supported

sctp_nodelay No empty, use Text, either true or false Nagle's Algorithm


global setting

sctp_rcvbufsiz No empty, use Number SCTP receive buffer size


global setting (bytes)

sctp_sndbufsiz No empty, use Number SCTP send buffer size


global setting (bytes)

sctp_numoutstrms No empty, use Number SCTP number outbound


global setting streams

sctp_maxinstreams No empty, use Number SCTP max number inbound


global setting streams

sctp_maxinitatt No empty, use Number SCTP max INIT retransmits


global setting

sctp_maxinitrto No empty, use Number SCTP max INIT RTO (msec)


global setting

sctp_initialrto No empty, use Number SCTP initial RTO (msec)


global setting

sctp_minrto No empty, use Number SCTP min RTO (msec)


global setting

sctp_maxrto No empty, use Number SCTP max RTO (msec)


global setting

sctp_assoccookiel No empty, use Number SCTP cookie lifetime (msec)


global setting

sctp_assocmaxretr No empty, use Number SCTP max assoc retransmits


global setting

sctp_pathmaxretr No empty, use Number SCTP max path retransmits


global setting

Copyright © BroadForward BV 2023 Page 177 of 199


BFX User Manual

Field Required Default value Format GUI Item


sctp_hbenable No empty, use Text, either true or false SCTP heartbeats
global setting

sctp_hbintenable No empty, use Text, either true or false SCTP heartbeat interval
global setting

sctp_hbinterval No empty, use Number SCTP heartbeat interval


global setting (msec)

sctp_pmtudenable No empty, use Text, either true or false SCTP path MTU discovery
global setting

sctp_pathmtu No empty, use Number SCTP fixed path MTU


global setting (bytes)

sctp_sackdelayenab No empty, use Text, either true or false SCTP SACK delay
le global setting

sctp_sackdelay No empty, use Number SCTP delayed SACK


global setting timeout (msec)

sctp_burstenable No empty, use Text, either true or false SCTP burst mitigation
global setting

sctp_maxburst No empty, use Number SCTP max burst (packets)


global setting

sctp_maxfragsize No empty, use Number SCTP max fragmentation


global setting size (bytes)

sctp_ev_assocchg No empty, use Text, either true or false association event


global setting

sctp_ev_sendfail No empty, use Text, either true or false send failure event
global setting

sctp_ev_remerror No empty, use Text, either true or false peer error event
global setting

sctp_ev_shutdown No empty, use Text, either true or false shutdown event


global setting

sctp_ev_partialde No empty, use Text, either true or false partial delivery event
global setting

sctp_ev_adaptind No empty, use Text, either true or false adaptation layer event
global setting

sctp_ev_auth No empty, use Text, either true or false authentication layer event
global setting

sctp_ev_senderdry No empty, use Text, either true or false sender dry event
global setting

Copyright © BroadForward BV 2023 Page 178 of 199


BFX User Manual

Fields for M3UA ASP/IPSP associations provisioning:

Field Required Default value Format GUI Item

assoc_id Yes N/A Text (max 128 char.) Association id

description No empty Text (max 128 char.) Description

assocgroup No empty Text (max 32 char.) Association group

disabled No 0 Integer, set to 1 if the Modus of disable/enable


association should be in button. Disabled
‘disabled’ mode. associations are configured,
but not active.

role No Client Text, one of "Client" Association Role


(initiate SCTP
association) or "Server"
(accept inbound SCTP
association)

local_port No 2905 Number Local port

dest_port No 2905 Number Destination port

local_addr No empty List of IPv4 or IPv6 Local IP address(es)


addresses, separated by
Example:
;
192.34.45.56;192.34.45.57;

dest_addr No empty List of IPv4 or IPv6 Destination IP address(es)


addresses, separated by
Example:
;
192.34.45.56;192.34.45.57;

ip_supported No true Text, either true or false IPv4 supported

ipv6_supprted No true Text, either true or false IPv6 supported

sctp_nodelay No empty, use Text, either true or false No delay


global setting

sctp_rcvbufsiz No empty, global Number SCTP max receive buffer


setting size

sctp_sndbufsiz No empty, use Number SCTP max send buffer size


global setting

sctp_numoutstrms No empty, use Number (0..65535) SCTP number out streams


global setting

sctp_maxinstreams No empty, use Number (0..65535) SCTP max number inbound


global setting streams

sctp_maxinitatt No empty, use Number (0..65535) SCTP max number of


global setting attempts

sctp_maxinitrto No empty, use Number (0..65535) SCTP max initial RTO


global setting

Copyright © BroadForward BV 2023 Page 179 of 199


BFX User Manual

Field Required Default value Format GUI Item

sctp_initialrto No empty, use Number SCTP initial RTO


global setting

sctp_minrto No empty, use Number SCTP min RTO


global setting

sctp_maxrto No empty, use Number SCTP max RTO


global setting

sctp_assoccookiel No empty, use Number SCTP max lifespan of


global setting cookie

sctp_assocmaxretr No empty, use Number (0..65535) SCTP max number peer


global setting retransmissions

sctp_pathmaxretr No empty, use Number (0..65535) SCTP max number


global setting destination retransmissions

sctp_hbenable No empty, use Text, either true or false Enable SCTP heartbeats
global setting

sctp_hbintenable No empty, use Text, either true or false Enable SCTP heartbeat
global setting interval

sctp_hbinterval No empty, use Number SCTP heartbeat interval


global setting

sctp_pmtudenable No empty, use Text, either true or false Enable SCTP path MTU
global setting discovery

sctp_pathmtu No empty, use Number (0 or SCTP fixed path MTU


global setting 512..65535)

sctp_sackdelayena No empty, use Text, either true or false Enable SCTP SACK delay
global setting

sctp_sackdelay No empty, use Number (0..500) Delayed SCTP SACK


global setting timeout

sctp_burstenable No empty, use Text, either true or false Enable SCTP burst
global setting mitigation

sctp_maxburst No empty, use Number (0..65535) SCTP max packets in burst


global setting

sctp_maxfragsize No empty, use Number (0 or 8..65532) SCTP max fragment size


global setting

sctp_ev_assocchg No empty, use Text, either true or false Enable the reception of the
global setting following notifications:
association event

sctp_ev_sendfail No empty, use Text, either true or false Enable the reception of the
global setting following notifications: send
failure event

Copyright © BroadForward BV 2023 Page 180 of 199


BFX User Manual

Field Required Default value Format GUI Item

sctp_ev_remerror No empty, use Text, either true or false Enable the reception of the
global setting following notifications: peer
error event

sctp_ev_shutdown No empty, use Text, either true or false Enable the reception of the
global setting following notifications:
shutdown event

sctp_ev_partialde No empty, use Text, either true or false Enable the reception of the
global setting following notifications: partial
delivery event

sctp_ev_adaptind No empty, use Text, either true or false Enable the reception of the
global setting following notifications:
adaptation layer event

sctp_ev_auth No empty, use Text, either true or false Enable the reception of the
global setting following notifications:
authentication layer event

sctp_ev_senderdry No empty, use Text, either true or false Enable the reception of the
global setting following notifications:
sender dry event

reconnect_to No empty, use Number (1..86400) Association connect timer


global setting

establish_to No empty, use Number (1..86400) Association establishment


global setting timer

connectionidle_to No empty, use Number (0..86400) Association idle timer


global setting

asp_up_to No empty, use Number (1..86400) ASP Up timeout


global setting

asp_down_to No empty, use Number (1..86400) ASP Down timeout


global setting

asp_active_to No empty, use Number (1..86400) ASP Active timeout


global setting

asp_inactive_to No empty, use Number (1..86400) ASP Inactive timeout


global setting

rxbuffer_size No empty, use Number (8 or more) Receive buffer size


global setting

txbuffer_size No empty, use Number (8 or more) Transmit buffer size


global setting

txqueue_size No empty, use Number Transmit queue size


global setting

Copyright © BroadForward BV 2023 Page 181 of 199


BFX User Manual

Field Required Default value Format GUI Item

dest_auditing No empty, use Choice of values: Destination auditing


global setting
Off
Isolation
Periodic
Both

auditing_time No empty, use Number (1 or more) Auditing time


global setting

appl_srvrs No empty, use List of application Application server(s)


global setting servers, separated by ;
Example:
Optionally an OPC can
APSRV1:234;APSRV2:;
be added to the label,
separated by :

network_appear No empty, use List of network contexts Network context(s)


global setting servers, separated by ;
Example:
A network appearance
nc1:45;nc2:46;nc3:47;
parameter can be added
to the label, separated by
:
This network appearance
parameter is mandatory
when two or more
network contexts are
provided

Fields for M3UA ASP/IPSP destinations provisioning:

Field Required Default value Format GUI Item

dest_id Yes N/A Text (max 128 char.) Destination id

description No empty Text (max 128 char.) Description

destgroup No empty Text (max 32 char.) Destination group

disabled No 0 Integer, set to 1 if the Modus of disable/enable


destination should be in button. Disabled
‘disabled’ mode. destinations are configured,
but not active.

network_context No empty Defined network context Network context


identifier

pointcode No empty Number Point code (DPC)

update_dpc No True Text, either true or false Update DPC

label No empty List of labels, separated Routing label(s)


by ;
Example:
Optionally a weight can
label01:4;label02:8;label03;
be added to the label,
separated by :

Copyright © BroadForward BV 2023 Page 182 of 199


BFX User Manual

Field Required Default value Format GUI Item

weight No empty Number (1..100) Load balancing weight

default_gw No false Text, either true or false Default gateway

assocs No empty List of defined Association(s)


association identifiers,
Example:
separated by ;
ASSOC700;ASSOC800

include_in_audit No true Text, either true or false Include in auditing

F.2 M3UA SG provisioning


Fields for M3UA SG application servers provisioning:

Field Required Default value Format GUI Item

applsrv_id Yes N/A Text (max 128 char.) Application server ID

description No empty Text (max 128 char.) Description

applsrvgroup No empty Text (max 32 char.) Application server group

disabled No 0 Integer, set to 1 if the Modus of disable/enable


application server should button. Disabled application
be in 'disabled' mode servers are configured, but
not active.

traffic_mode_type No Loadshare string, for M3UA SG only Traffic mode type


"Loadshare" is supported

routing_context Yes empty Number Routing context

pointcode Yes empty 14 bit number if the Point Code


network context's point
code format is ITU-T-14,
24 bit number if it's ANSI-
24

network_context Yes empty Defined network context Network context


identifier

Fields for M3UA SG association servers provisioning:

Field Required Default value Format GUI Item

assocsrv_id Yes N/A Text (max 128 char.) ID of association server.

description No empty Text (max 128 char.) Description

assocsrvgroup No empty Text (max 32 char.) Association server group.

Copyright © BroadForward BV 2023 Page 183 of 199


BFX User Manual

Field Required Default value Format GUI Item


disabled No 0 Integer, set ot 1 if the Modus of disable/enable
association server should button. Disabled association
be in 'disabled' mode servers are configured, but
not active.

listen_on Yes default IPv4 or IPv6 address, Listen IP(s)


depending on
ip_supported and
ipv6_supported setting

listen_port Yes default Number Listen port

ip_supported No 'on' Text, either true or false IPv4 supported

ipv6_supported No 'on' Text, either true or false IPv6 supported

sctp_nodelay No empty, use Text, either true or false Nagle's Algorithm


global setting

sctp_rcvbufsiz No empty, use Number SCTP receive buffer size


global setting (bytes)

sctp_sndbufsiz No empty, use Number SCTP send buffer size


global setting (bytes)

sctp_numoutstrms No empty, use Number SCTP number outbound


global setting streams

sctp_maxinstreams No empty, use Number SCTP max number inbound


global setting streams

sctp_maxinitatt No empty, use Number SCTP max INIT retransmits


global setting

sctp_maxinitrto No empty, use Number SCTP max INIT RTO (msec)


global setting

sctp_initialrto No empty, use Number SCTP initial RTO (msec)


global setting

sctp_minrto No empty, use Number SCTP min RTO (msec)


global setting

sctp_maxrto No empty, use Number SCTP max RTO (msec)


global setting

sctp_assoccookiel No empty, use Number SCTP cookie lifetime (msec)


global setting

sctp_assocmaxretr No empty, use Number SCTP max assoc retransmits


global setting

sctp_pathmaxretr No empty, use Number SCTP max path retransmits


global setting

sctp_hbenable No empty, use Text, either true or false SCTP heartbeats


global setting

Copyright © BroadForward BV 2023 Page 184 of 199


BFX User Manual

Field Required Default value Format GUI Item

sctp_hbintenable No empty, use Text, either true or false SCTP heartbeat interval
global setting

sctp_hbinterval No empty, use Number SCTP heartbeat interval


global setting (msec)

sctp_pmtudenable No empty, use Text, either true or false SCTP path MTU discovery
global setting

sctp_pathmtu No empty, use Number SCTP fixed path MTU


global setting (bytes)

sctp_sackdelayena No empty, use Text, either true or false SCTP SACK delay
global setting

sctp_sackdelay No empty, use Number SCTP delayed SACK


global setting timeout (msec)

sctp_burstenable No empty, use Text, either true or false SCTP burst mitigation
global setting

sctp_maxburst No empty, use Number SCTP max burst (packets)


global setting

sctp_maxfragsize No empty, use Number SCTP max fragmentation


global setting size (bytes)

sctp_ev_assocchg No empty, use Text, either true or false association event


global setting

sctp_ev_sendfail No empty, use Text, either true or false send failure event
global setting

sctp_ev_remerror No empty, use Text, either true or false peer error event
global setting

sctp_ev_shutdown No empty, use Text, either true or false shutdown event


global setting

sctp_ev_partialde No empty, use Text, either true or false partial delivery event
global setting

sctp_ev_adaptind No empty, use Text, either true or false adaptation layer event
global setting

sctp_ev_auth No empty, use Text, either true or false authentication layer event
global setting

sctp_ev_senderdry No empty, use Text, either true or false sender dry event
global setting

Fields for M3UA SG associations provisioning:

Copyright © BroadForward BV 2023 Page 185 of 199


BFX User Manual

Field Required Default value Format GUI Item

assoc_id Yes N/A Text (max 128 char.) Association id

description No empty Text (max 128 char.) Description

assocgroup No empty Text (max 32 char.) Association group

disabled No 0 Integer, set to 1 if the Modus of disable/enable


association should be in button. Disabled
‘disabled’ mode. associations are configured,
but not active.

role No Client Text, one of "Client" Association Role


(initiate SCTP
association) or "Server"
(accept inbound SCTP
association)

process_role Yes SGP Text, one of "SGP" for Signaling process role
SGP-ASP signaling, or
"IC" for SGP interconnect
(SGP-SGP signaling)

assoc_server Yes empty Text, reference an Association server


existing association
server

local_port No 2905 Number, "Server" role Local port


only

dest_port No 2905 Number, "Server" role Destination port


only

local_addr No empty List of IPv4 or IPv6 Local IP address(es)


addresses, separated by Example:
;. "Server" role only 192.34.45.56;192.34.45.57;

dest_addr No empty List of IPv4 or IPv6 Destination IP address(es)


addresses, separated by Example:
;. "Server" role only 192.34.45.56;192.34.45.57;

remote_port No empty Number, "Client" role Remote port


only

remote_addr No empty List of IPv4 or IPv6 Remote IP address(es)


addresses, separated by Example:
;. "Client" role only 192.34.45.56;192.34.45.57;

ip_supported No true Text, either true or false IPv4 supported

ipv6_supprted No true Text, either true or false IPv6 supported

sctp_nodelay No empty, use Text, either true or false Nagle's Algorithm


global setting

sctp_rcvbufsiz No empty, use Number SCTP max receive buffer


global setting size

Copyright © BroadForward BV 2023 Page 186 of 199


BFX User Manual

Field Required Default value Format GUI Item


sctp_sndbufsiz No empty, use Number SCTP max send buffer size
global setting

sctp_numoutstrms No empty, use Number (0..65535) SCTP number out streams


global setting

sctp_maxinstreams No empty, use Number (0..65535) SCTP max number inbound


global setting streams

sctp_maxinitatt No empty, use Number (0..65535) SCTP max number of


global setting attempts

sctp_maxinitrto No empty, use Number (0..65535) SCTP max initial RTO


global setting

sctp_initialrto No empty, use Number SCTP initial RTO


global setting

sctp_minrto No empty, use Number SCTP min RTO


global setting

sctp_maxrto No empty, use Number SCTP max RTO


global setting

sctp_assoccookiel No empty, use Number SCTP max lifespan of cookie


global setting

sctp_assocmaxretr No empty, use Number (0..65535) SCTP max number peer


global setting retransmissions

sctp_pathmaxretr No empty, use Number (0..65535) SCTP max number


global setting destination retransmissions

sctp_hbenable No empty, use Text, either true or false Enable SCTP heartbeats
global setting

sctp_hbintenable No empty, use Text, either true or false Enable SCTP heartbeat
global setting interval

sctp_hbinterval No empty, use Number SCTP heartbeat interval


global setting

sctp_pmtudenable No empty, use Text, either true or false Enable SCTP path MTU
global setting discovery

sctp_pathmtu No empty, use Number (0 or SCTP fixed path MTU


global setting 512..65535)

sctp_sackdelayena No empty, use Text, either true or false Enable SCTP SACK delay
global setting

sctp_sackdelay No empty, use Number (0..500) Delayed SCTP SACK


global setting timeout

sctp_burstenable No empty, use Text, either true or false Enable SCTP burst
global setting mitigation

Copyright © BroadForward BV 2023 Page 187 of 199


BFX User Manual

Field Required Default value Format GUI Item

sctp_maxburst No empty, use Number (0..65535) SCTP max packets in burst


global setting

sctp_maxfragsize No empty, use Number (0 or 8..65532) SCTP max fragment size


global setting

sctp_ev_assocchg No empty, use Text, either true or false Enable the reception of the
global setting following notifications:
association event

sctp_ev_sendfail No empty, use Text, either true or false Enable the reception of the
global setting following notifications: send
failure event

sctp_ev_remerror No empty, use Text, either true or false Enable the reception of the
global setting following notifications: peer
error event

sctp_ev_shutdown No empty, use Text, either true or false Enable the reception of the
global setting following notifications:
shutdown event

sctp_ev_partialde No empty, use Text, either true or false Enable the reception of the
global setting following notifications: partial
delivery event

sctp_ev_adaptind No empty, use Text, either true or false Enable the reception of the
global setting following notifications:
adaptation layer event

sctp_ev_auth No empty, use Text, either true or false Enable the reception of the
global setting following notifications:
authentication layer event

sctp_ev_senderdry No empty, use Text, either true or false Enable the reception of the
global setting following notifications:
sender dry event

reconnect_to No empty, use Number (1..86400) Association connect timer


global setting (sec)

establish_to No empty, use Number (1..86400) Association establishment


global setting timer (sec)

connectionidle_to No empty, use Number (0..86400) Association idle timer (sec)


global setting

rxbuffer_size No empty, use Number (8 or more) Receive buffer size


global setting

txbuffer_size No empty, use Number (8 or more) Transmit buffer size


global setting

txqueue_size No empty, use Number Transmit queue size


global setting

Copyright © BroadForward BV 2023 Page 188 of 199


BFX User Manual

Field Required Default value Format GUI Item

ssnm_processing No empty, use Text, either true or false SSNM processing


global setting

ssnm_sending No empty, use Text, either true or false SSNM sending


global setting

appl_srvrs No empty List of application Application server(s)


servers, separated by ;
Optionally an OPC can Example:
be added to the label, APSRV1:234;APSRV2:;
separated by :

network_appear No empty List of network contexts Network context(s)


servers, separated by ; A
network appearance Example:
parameter can be added nc1:45;nc2:46;nc3:47;
to the label, separated by
: This network
appearance parameter is
mandatory when two or
more network contexts
are provided

max_egress No empty Number (0..100000) Maximum egress

max_egress_tp No empty Text, one of "TPS", Maximum egress unit


"TPM" or "TPH"

egress_notif No empty, use Text, either true or false Egress limit reached/cleared
global setting

max_ingress No empty Number (0..100000) Maximum ingress

max_ingress_tp No empty Text, one of "TPS", Maximum ingress unit


"TPM" or "TPH"

ingress_notif No empty, use Text, either true or false Ingress limit reached/cleared
global setting

Fields for M3UA SG destinations provisioning:

Field Required Default value Format GUI Item

dest_id Yes N/A Text (max 128 char.) Destination ID

description No empty Text (max 128 char.) Description

destgroup No empty Text (max 32 char.) Destination group

disabled No 0 Integer, set to 1 if the Modus of disable/enable


destination should be in button. Disabled destinations
'disabled' mode. are configured, but not
active.

Copyright © BroadForward BV 2023 Page 189 of 199


BFX User Manual

Field Required Default value Format GUI Item

network_context No empty Defined network context Network context


identifier

pointcode No empty Number, 14 bit number if Point code (DPC)


the network context's
point code format is ITU-
T-14, 24 bit number if it's
ANSI-24

update_dpc No True Text, either true or false Update DPC

label No empty List of labels, separated Routing label(s)


by ;
Optionally a weight can Example:
be added to the label, label01:4;label02:8;label03;
separated by :

weight No empty Number (1..100) Load balancing weight

default_gw No empty Text, either true or false Default gateway

application_server No empty Text (max 256 char.) Association server ID

max_egress No empty Number (0..100000) Maximum egress

max_egress_tp No TPS Text, one of TPS, TPM or Maximum egress unit


TPH

egress_notif No empty, use Text, either empty, true Egress limit reached/cleared
global setting or false

F.3 M2PA provisioning


Fields for M2PA SG Signaling Link Sets provisioning:

Field Required Default value Format GUI Item

sls_id Yes N/A Text (max 128 char.) ID of signaling link set

description No empty Text (max 128 char.) Description

slsgroup No empty Text (max 32 char.) Link set group

disabled No 0 Integer, set to 1 if the link Disabled


set should be in 'disabled'
mode

network_context Yes empty Defined network context Network context


identifier

Copyright © BroadForward BV 2023 Page 190 of 199


BFX User Manual

Field Required Default value Format GUI Item


pointcode Yes empty 14 bit number if the Point Code
network context's point
code format is ITU-T-14,
24 bit number if it's ANSI-
24

enforce_opc No empty 14 bit number if the Enforce OPC


network context's point
code format is ITU-T-14,
24 bit number if it's ANSI-
24

Fields for M2PA SG association servers provisioning:

Field Required Default value Format GUI Item

assocsrv_id Yes N/A Text (max 128 char.) ID of association server.

description No empty Text (max 128 char.) Description

assocsrvgroup No empty Text (max 32 char.) Association server group.

disabled No 0 Integer, set ot 1 if the Modus of disable/enable


association server should button. Disabled association
be in 'disabled' mode servers are configured, but
not active.

listen_on Yes default IPv4 or IPv6 address, Listen IP(s)


depending on
ip_supported and
ipv6_supported setting

listen_port Yes default Number Listen port

ip_supported No 'on' Text, either true or false IPv4 supported

ipv6_supported No 'on' Text, either true or false IPv6 supported

sctp_nodelay No empty, use Text, either true or false Nagle's Algorithm


global setting

sctp_rcvbufsiz No empty, use Number SCTP receive buffer size


global setting (bytes)

sctp_sndbufsiz No empty, use Number SCTP send buffer size


global setting (bytes)

sctp_maxinitatt No empty, use Number SCTP max INIT retransmits


global setting

sctp_maxinitrto No empty, use Number SCTP max INIT RTO (msec)


global setting

sctp_initialrto No empty, use Number SCTP initial RTO (msec)


global setting

Copyright © BroadForward BV 2023 Page 191 of 199


BFX User Manual

Field Required Default value Format GUI Item

sctp_minrto No empty, use Number SCTP min RTO (msec)


global setting

sctp_maxrto No empty, use Number SCTP max RTO (msec)


global setting

sctp_assoccookiel No empty, use Number SCTP cookie lifetime (msec)


global setting

sctp_assocmaxretr No empty, use Number SCTP max assoc retransmits


global setting

sctp_pathmaxretr No empty, use Number SCTP max path retransmits


global setting

sctp_hbenable No empty, use Text, either true or false SCTP heartbeats


global setting

sctp_hbintenable No empty, use Text, either true or false SCTP heartbeat interval
global setting

sctp_hbinterval No empty, use Number SCTP heartbeat interval


global setting (msec)

sctp_pmtudenable No empty, use Text, either true or false SCTP path MTU discovery
global setting

sctp_pathmtu No empty, use Number SCTP fixed path MTU


global setting (bytes)

sctp_sackdelayena No empty, use Text, either true or false SCTP SACK delay
global setting

sctp_sackdelay No empty, use Number SCTP delayed SACK


global setting timeout (msec)

sctp_burstenable No empty, use Text, either true or false SCTP burst mitigation
global setting

sctp_maxburst No empty, use Number SCTP max burst (packets)


global setting

sctp_maxfragsize No empty, use Number SCTP max fragmentation


global setting size (bytes)

sctp_ev_assocchg No empty, use Text, either true or false association event


global setting

sctp_ev_sendfail No empty, use Text, either true or false send failure event
global setting

sctp_ev_remerror No empty, use Text, either true or false peer error event
global setting

sctp_ev_shutdown No empty, use Text, either true or false shutdown event


global setting

Copyright © BroadForward BV 2023 Page 192 of 199


BFX User Manual

Field Required Default value Format GUI Item


sctp_ev_partialde No empty, use Text, either true or false partial delivery event
global setting

sctp_ev_adaptind No empty, use Text, either true or false adaptation layer event
global setting

sctp_ev_auth No empty, use Text, either true or false authentication layer event
global setting

sctp_ev_senderdry No empty, use Text, either true or false sender dry event
global setting

Fields for M2PA SG associations provisioning:

Field Required Default value Format GUI Item

assoc_id Yes N/A Text (max 128 char.) Association id

description No empty Text (max 128 char.) Description

assocgroup No empty Text (max 32 char.) Association group

disabled No 0 Integer, set to 1 if the Modus of disable/enable


association should be in button. Disabled
‘disabled’ mode. associations are configured,
but not active.

role No Client Text, one of "Client" Association Role


(initiate SCTP
association) or "Server"
(accept inbound SCTP
association)

assoc_server Yes empty Text, reference an Association server


existing association
server

assoc_server Yes empty Text, reference an Association server


existing association
server

local_port No 2905 Number, "Server" role Local port


only

dest_port No 2905 Number, "Server" role Destination port


only

local_addr No empty List of IPv4 or IPv6 Local IP address(es)


addresses, separated by Example:
;. "Server" role only 192.34.45.56;192.34.45.57;

dest_addr No empty List of IPv4 or IPv6 Destination IP address(es)


addresses, separated by Example:
;. "Server" role only 192.34.45.56;192.34.45.57;

Copyright © BroadForward BV 2023 Page 193 of 199


BFX User Manual

Field Required Default value Format GUI Item


remote_port No empty Number, "Client" role Remote port
only

remote_addr No empty List of IPv4 or IPv6 Remote IP address(es)


addresses, separated by Example:
;. "Client" role only 192.34.45.56;192.34.45.57;

ip_supported No true Text, either true or false IPv4 supported

ipv6_supprted No true Text, either true or false IPv6 supported

sctp_nodelay No empty, use Text, either true or false Nagle's Algorithm


global setting

sctp_rcvbufsiz No empty, use Number SCTP max receive buffer


global setting size

sctp_sndbufsiz No empty, use Number SCTP max send buffer size


global setting

sctp_maxinitatt No empty, use Number (0..65535) SCTP max number of


global setting attempts

sctp_maxinitrto No empty, use Number (0..65535) SCTP max initial RTO


global setting

sctp_initialrto No empty, use Number SCTP initial RTO


global setting

sctp_minrto No empty, use Number SCTP min RTO


global setting

sctp_maxrto No empty, use Number SCTP max RTO


global setting

sctp_assoccookiel No empty, use Number SCTP max lifespan of cookie


global setting

sctp_assocmaxretr No empty, use Number (0..65535) SCTP max number peer


global setting retransmissions

sctp_pathmaxretr No empty, use Number (0..65535) SCTP max number


global setting destination retransmissions

sctp_hbenable No empty, use Text, either true or false Enable SCTP heartbeats
global setting

sctp_hbintenable No empty, use Text, either true or false Enable SCTP heartbeat
global setting interval

sctp_hbinterval No empty, use Number SCTP heartbeat interval


global setting

sctp_pmtudenable No empty, use Text, either true or false Enable SCTP path MTU
global setting discovery

sctp_pathmtu No empty, use Number (0 or SCTP fixed path MTU


global setting 512..65535)

Copyright © BroadForward BV 2023 Page 194 of 199


BFX User Manual

Field Required Default value Format GUI Item


sctp_sackdelayena No empty, use Text, either true or false Enable SCTP SACK delay
global setting

sctp_sackdelay No empty, use Number (0..500) Delayed SCTP SACK


global setting timeout

sctp_burstenable No empty, use Text, either true or false Enable SCTP burst
global setting mitigation

sctp_maxburst No empty, use Number (0..65535) SCTP max packets in burst


global setting

sctp_maxfragsize No empty, use Number (0 or 8..65532) SCTP max fragment size


global setting

sctp_ev_assocchg No empty, use Text, either true or false Enable the reception of the
global setting following notifications:
association event

sctp_ev_sendfail No empty, use Text, either true or false Enable the reception of the
global setting following notifications: send
failure event

sctp_ev_remerror No empty, use Text, either true or false Enable the reception of the
global setting following notifications: peer
error event

sctp_ev_shutdown No empty, use Text, either true or false Enable the reception of the
global setting following notifications:
shutdown event

sctp_ev_partialde No empty, use Text, either true or false Enable the reception of the
global setting following notifications: partial
delivery event

sctp_ev_adaptind No empty, use Text, either true or false Enable the reception of the
global setting following notifications:
adaptation layer event

sctp_ev_auth No empty, use Text, either true or false Enable the reception of the
global setting following notifications:
authentication layer event

sctp_ev_senderdry No empty, use Text, either true or false Enable the reception of the
global setting following notifications:
sender dry event

reconnect_to No empty, use Number (1..86400) Association connect timer


global setting (sec)

establish_to No empty, use Number (1..86400) Association establishment


global setting timer (sec)

connectionidle_to No empty, use Number (0..86400) Association idle timer (sec)


global setting

Copyright © BroadForward BV 2023 Page 195 of 199


BFX User Manual

Field Required Default value Format GUI Item


alignment_ready_to No empty, use Number (25..600) Alignment ready timeout
global setting (sec)

not_aligned_to No empty, use Number (5..150) Not aligned timeout (sec)


global setting

aligned_to No empty, use Number (1..2) Aligned timeout (sec)


global setting

normal_proving_per No empty, use Number (3..120) Normal proving period (sec)


iod global setting

emergency_proving No empty, use Number (3..120) Emergency proving period


_period global setting (msec)

proving_period No empty, use Text, either Normal, Proving period


global setting Emergency or Basic

proving_interval No empty, use Number (1..1000) Proving interval


global setting

initial_alignment_ret No empty, use Number (800..1500) Initial alignment retry delay


ry_delay global setting (msec)

remote_congestion_ No empty, use Number (3..12) Remote congestion timer


to global setting (sec)

rxbuffer_size No empty, use Number (8 or more) Receive buffer size


global setting

txbuffer_size No empty, use Number (8 or more) Transmit buffer size


global setting

txqueue_size No empty, use Number Transmit queue size


global setting

slset Yes N/A Text, Signaling link set ID Signaling link setr

slcode No 0 Number (0..255) Signaling link code

max_egress No empty Number (0..100000) Maximum egress

max_egress_tp No empty Text, one of "TPS", Maximum egress unit


"TPM" or "TPH"

egress_notif No empty, use Text, either true or false Egress limit reached/cleared
global setting

max_ingress No empty Number (0..100000) Maximum ingress

max_ingress_tp No empty Text, one of "TPS", Maximum ingress unit


"TPM" or "TPH"

ingress_notif No empty, use Text, either true or false Ingress limit reached/cleared
global setting

establish_to No empty, use Number (1..86400) Association establishment


global setting timer (sec)

Copyright © BroadForward BV 2023 Page 196 of 199


BFX User Manual

Field Required Default value Format GUI Item

connectionidle_to No empty, use Number (0..86400) Association idle timer (sec)


global setting

alignment_ready_to No empty, use Number (25..600) Alignment ready timeout


global setting (sec)

not_aligned_to No empty, use Number (5..150) Not aligned timeout (sec)


global setting

aligned_to No empty, use Number (1..2) Aligned timeout (sec)


global setting

normal_proving_per No empty, use Number (3..120) Normal proving period (sec)


iod global setting

emergency_proving No empty, use Number (3..120) Emergency proving period


_period global setting (msec)

proving_period No empty, use Text, either Normal, Proving period


global setting Emergency or Basic

Fields for M2PA SG destinations provisioning:

Field Required Default value Format GUI Item

dest_id Yes N/A Text (max 128 char.) Destination ID

description No empty Text (max 128 char.) Description

destgroup No empty Text (max 32 char.) Destination group

disabled No 0 Integer, set to 1 if the Modus of disable/enable


destination should be in button. Disabled destinations
'disabled' mode. are configured, but not
active.

network_context No empty Defined network context Network context


identifier

pointcode No empty Number, 14 bit number if Point code (DPC)


the network context's
point code format is ITU-
T-14, 24 bit number if it's
ANSI-24

update_dpc No True Text, either true or false Update DPC

label No empty List of labels, separated Routing label(s)


by ;
Optionally a weight can Example:
be added to the label, label01:4;label02:8;label03;
separated by :

weight No empty Number (1..100) Load balancing weight

Copyright © BroadForward BV 2023 Page 197 of 199


BFX User Manual

Field Required Default value Format GUI Item


default_gw No empty Text, either true or false Default gateway

slsets No empty Text, Signaling link set Signaling link set(s)


IDs separated by ; Example:
linkset01;linkset02;linkset03;

max_egress No empty Number (0..100000) Maximum egress

max_egress_tp No TPS Text, one of TPS, TPM or Maximum egress unit


TPH

egress_notif No empty, use Text, either empty, true Egress limit reached/cleared
global setting or false

Copyright © BroadForward BV 2023 Page 198 of 199


BFX User Manual

Copyright © BroadForward B.V. 2023

All rights reserved. This document is protected by international copyright law and may not be reprinted, reproduced, copied
or utilized in whole or in part by any means including electronic, mechanical, or other means without the prior written
consent of BroadForward B.V.

Contact us – Follow us

Phone: +31 85 489 5 689


Email: info@broadforward.com
Website: www.broadforward.com
Twitter: @broadforward

Copyright © BroadForward BV 2023 Page 199 of 199

You might also like