Trigger Capture

Prev Next

Firmware: 11203+

There are use-cases where starting / stopping a capture based on link activity can automate a data capture process.

Overview

FMADIO Supports Idle capture triggers. This starts a new capture when the link has capture activity. Closing the capture once the link becomes idle.

The State is shown below

Describing the state machine

1) Capture Enable

This is using the GUI or FMADIOCLI to start a capture. This is traditionally what we call start of the capture.

2) Capture in Idle Mode

Here the system is waiting for capture link activity to occur

3) Capture Start

The system detects capture link activity, thus starts the capture

4) Capturing

The system captures as normal

5) Capture Idle

The system detects the capture link has no activity. It waits for a timeout before stopping the capture.

6) Capture Stop

No additional capture data was seen on the link. Thus the idle timeout was reached and the capture is stopped

7) Capture Idle

The system waits for the capture link to become active again.

The system will cycle 2) → 7) continuously until the capture is stopped using the GUI or FMADIOCLI.


Configuration

Currently requires manual editing of

/opt/fmadio/etc/time.lua

Find the Capture section and add the following

(If the fields are not present in the time.lua go to the GUI enable inline mode, then disable inline mode. This updates the time.lua with the new fields)

The default settings for Trigger based capture are shown below.

["Capture"] =
{
.
.
    ["TriggerEnable"]        = true,
    ["TriggerDuration"]      = 10000000000,
    ["TriggerPktCntActive"]  = 10000,
    ["TriggerPktCntIdle"]    = 1000,
    ["DisableCPUPriority"]   = false,
.
.
},

NOTE: to reload the settings after modifying, use fmadiocli per below

fmadiocli config capture restart

TriggerEnable

This enables or disabled the trigger based capture. By default it is false.

TriggerDuration

Nanoseconds

This sets the time duration used to calculate the number of Packets for Active/Idle.

Default is 10e9 (10 seconds)

TriggerPktCntActive

This is the number of packets received during TriggerDuration time period, to trigger the capture to start. This can be tuned, usually the number is higher than TriggerPktCntIdle

Default value is 10,000 packets with default TriggerDuration 10sec. To trigger the start of a capture requires > 10,000 packets over the last 10sec.

TriggerPktCntIdle

For the link to go idle, the number of packets over TriggerDuration must be less than this number.

By default this is 1000 packets over the default TriggerDuration 10sec. For example for the link to be in the Idle state must have less than 1000 packets over the last 10 seconds.


Debugging

Logfile best is

/mnt/store0/log/stream_capture_f100.cur

The specific messages are

Settings are at the top of the file

Trigger start

Trigger Stop