Network Interfaces
Network Interface Enrichment Module
The network interface enrichment module provides supplemental information for network
interfaces, such as name (ifName
), description
(ifDescr
), alias (ifAlias
), type
(ifType
), bandwidth (ifSpeed/ifHighSpeed)
,
CIR, user-defined tags, and additional user-defined metadata. These values are
cached for improved performance and flow record throughput.
The following is a example of the network interface enrichment module:
10.0.0.1: 1: ifName: lo ifDescr: lo ifAlias: lo ifType: 24 ifSpeed: 10000000 tags: - router_mgmt metadata: sec.zone.name: network 3: internal: false ifName: eth0 ifDescr: eth0 ifAlias: internet ifType: 6 ifSpeed: 1000000000 cirIn: 200000000 cirOut: 12000000 tags: - verizon metadata: sec.zone.name: internet 10.0.0.2: 501: ifName: vlan ifDescr: vlan ifSpeed: 1000000000 502: ifName: ge-0/0/0 ifDescr: ge-0/0/0 ifSpeed: 1000000000
Metadata Types (Network Interfaces)
The user-defined metadata enricher supports a combination of predefined metadata types as well as the ability to provide custom data as key-value pairs. Table 1 describes the types of metadata you can use for network interfaces.
Attribute | Data Type | Field Populated | Description |
---|---|---|---|
ifName |
string | <object>.netif.name |
The textual name of the interface. The value of this object must match name of the network interface as assigned by the device. |
ifAlias |
string | <object>.netif.alias |
An administratively defined "alias" name for the interface. |
ifType |
unsigned | <object>.netif.type.id ,
<object>.netif.type.name |
The type of interface as specified in IF-MIB
(RFC 2233). Additional
values for ifType are assigned by IANA through updates to the IANAifType
textual convention. |
ifSpeed |
unsigned | <object>.netif.bandwidth.bw |
The interface bandwidth in bps (bits per second). |
cirIn |
unsigned | <object>.netif.bandwidth.prov.in |
The interface ingress provisioned maximum bandwidth in bps. |
internal |
bool | <object>.isInternal |
Specifies whether or not the network interface is connected to a network considered to be internal. |
tags |
array of strings | <object>.netif.tags |
Tags that describe attributes of the network interface. |
metadata |
sequence of attributes | <object><attribute> or
<attribute> |
Key-value pairs added at the network interface
object or record levels. These fields can be either custom fields
specific to the needs of the user, or existing fields from the
Apstra Flow CODEX schema. If you specify CODEX fields, the configured metadata value overrides any values that exist in the record. |
You can specify key names with or without a leading ".
"
- If specified with a leading "
.
" the field is placed within the parent object containing the network interface. - If specified without a leading "
.
" the field is placed at the root of the record.
Consider the network interface from flow.src.ip.addr
:
- If the metadata key is defined as
.circuit.name
, the value is assigned toflow.in.netif.circuit.name
. - If the metadata key is defined as
circuit.name
, the value is assigned directly tocircuit.name
.