![]() |
SolarCapture C Bindings User Guide
SF-115721-CD
Issue 1
|
Replace packet buffer timestamp with timestamp from Arista 7150 switch.
This node is used with Arista 7150 switches that are able to add hardware timestamps to packets. It replaces the SolarCapture timestamp with the timestamp generated by the switch.
Argument | Optional? | Default | Type | Description |
---|---|---|---|---|
kf_ip_proto | Yes | 253 | SC_PARAM_INT | The IP protocol used to send key frames. |
log_level | Yes | "sync" | SC_PARAM_STR | The logging level of the node, must be set to one of "silent", "errors", "setup", "sync" or "verbose". |
filter_oui | Yes | SC_PARAM_STR | Filter out timestamps with this OUI. | |
kf_device | Yes | SC_PARAM_STR | Filter keyframes by device field. | |
kf_eth_dhost | No | SC_PARAM_STR | Destination MAC address for the keyframes. | |
kf_ip_dest | No | SC_PARAM_STR | Destination IP address for the keyframes. | |
tick_freq | Yes | 350000000 | SC_PARAM_INT | Expected frequency in Hz of the switch tick. |
max_freq_error_ppm | Yes | 20000 | SC_PARAM_INT | Max ppm between expected and observed frequency before entering no sync state. |
lost_sync_ms | Yes | 10000 | SC_PARAM_INT | Time after last keyframe to enter lost sync state. |
no_sync_ms | Yes | 60000 | SC_PARAM_INT | Time after last keyframe to enter no sync state. |
no_sync_drop | Yes | 0 | SC_PARAM_INT | Toggle sync drop, set to 1 for on 0 for off. |
strip_ticks | Yes | 1 | SC_PARAM_INT | Toggle the option for the node to strip switch timestamps. Set to 0 for off and 1 for on. |
has_fcs | Yes | 0 | SC_PARAM_INT | The incoming packets have a trailing FCS, after the ticks. |
None
Link | Default | Description |
---|---|---|
"" | free | Packets with corrected timestamps |
lost_sync | default | Packets with corrected timestamps when no keyframes have been seen for a while |
no_sync | lost_sync or free* | Used when no recent keyframes have been seen |
keyframes | no_sync | Used for keyframes |
lldp | no_sync | Used for LLDP packets |
Keyframes and LLDP packets are treated specially because they are not timestamped by the switch, and so it is not possible to give them timestamps with the same clock as other packets.
(*) no_sync packets go to the same place as lost_sync packets by default. If no_sync_drop=1, then they are freed by default.
Arista timestamp statistics are exposed by the sc_arista_ts node.
Name | Type | Data Type | Description |
---|---|---|---|
max_host_t_delta | double | config | Max delta in seconds the node can compute a tick-delta over. |
max_freq_error | double | config | Max ppm allowed between measured and expected tick frequency before entering no sync state. |
lost_sync_ms | int | config | Time in milliseconds spent in lost sync state. |
no_sync_ms | int | config | Time in milliseconds spent in no sync state. |
exp_tick_freq | int | config | The expected tick frequency in Hz. |
strip_ticks | int | config | 1 if the node is stripping ticks 0 otherwise. |
log_level | int | config | The log level. |
tick_freq | double | magnitude | The measured tick frequency in Hz. |
n_keyframes | uint64_t | pkt_count | Number of keyframes processed by the node. |
n_filtered_oui | uint64_t | pkt_count | Number of packets filtered out by OUI. |
n_filtered_other | uint64_t | pkt_count | Number of packets filtered out for other reasons. |
n_skew_zero_ticks | uint64_t | pkt_count | Number of skew zero packets received. |
n_lost_sync | uint64_t | pkt_count | Number of packets processed whilst in lost sync state. |
n_no_sync | uint64_t | pkt_count | Number of packets processed whilst in no sync state. |
n_kf_len_mismatch | uint64_t | pkt_count | Number of packets received where the keyframe length did not match. |
n_kf_dev_mismatch | uint64_t | pkt_count | Number of packets received where the device field did not match. |
n_kf_bad_fcs_type | uint64_t | pkt_count | Number of keyframes with a bad FCS. |
kf_switch_drops | uint64_t | pkt_count | Number of keyframes dropped by the switch. |
n_kf_big_gap | uint64_t | pkt_count | Number of large gaps between keyframes. |
n_skew | uint64_t | ev_count | Number of skews. |
enter_no_sync | uint64_t | ev_count | Number of times the node has entered no sync state. |
enter_sync1 | uint64_t | ev_count | Number of times the node has entered sync1 state. |
enter_sync2 | uint64_t | ev_count | Number of times the node has entered sync2 state. |
enter_lost_sync | uint64_t | ev_count | Number of times the node has entered lost sync state. |