ST2110NicSettings interface

Signature:

export interface ST2110NicSettings

Properties

Property Type Description

address

ST2110DhcpAddress | ST2110StaticAddress

hugeDir?

string

(Optional) Hugetlbfs mount path that this NIC’s DPDK primary should use as --huge-dir. Required when more than one DPDK primary runs in the same norsk instance (e.g. norsk-core’s allocator plus multiple ST 2110 NICs); EAL takes an exclusive flock on the hugetlbfs mount root during init, so each primary needs its own mount. The path must be a hugetlbfs mount provided by the operator at host / container setup time — norsk does not create it.

Leave undefined when this is the only DPDK primary in the container, in which case EAL picks a default mount.

id

string

initialiseTimeoutMs?

number

(Optional) Optional ceiling on how long NorskSystemST2110.nic() waits for the NIC to become usable (MTL_Start complete + all ports' IP addresses known). Defaults to 30000 ms. Override upward for slow-boot deployments where PTP convergence or DHCP takes longer; downward for tight failover scenarios where you’d rather fail fast than block.

nic

Nic

Primary NIC. For a single-port (non-redundant) host this is the only NIC bound. For ST 2022-7 hitless redundancy also set secondaryNic + secondaryAddress.

numRxQueues

number

numTxQueues

number

onClose?

(() ⇒ Promise<void>) | (() ⇒ void)

(Optional)

onError?

(error: Error) ⇒ void

(Optional)

onStageChange?

(event: ST2110NicStageEvent) ⇒ void

(Optional) Called whenever the NIC’s bring-up advances to a new stage. Mirrors the proto ST2110NicStageChanged sequence: "initialising" → "loadingHost" → "waitingMtl" → "ready"; or "failed" with a reason if any phase rejects. The nic() promise still resolves on the legacy mtl_ready signal — this callback is purely for progress reporting (UI status, structured logs).

scheduling

ST2110SchedulingMode

secondaryAddress?

ST2110DhcpAddress | ST2110StaticAddress

(Optional) Optional. Required iff secondaryNic is set — gives the secondary NIC its DHCP / static address. The two NICs typically sit on different subnets (red/blue networks), so the addresses are configured per-port rather than shared.

secondaryNic?

Nic

(Optional) Optional. When set, this MTL instance binds both NICs and every sender / receiver registered on the host gets a redundant outbound (or inbound) path on the second NIC. Requires secondaryAddress to be set alongside it.