NIC ports, speeds and PCIe bandwidth
A NIC's front panel promises "2 × 100G"; whether the server can actually move 200 Gb/s depends on the PCIe slot behind the card, and whether a given module works depends on the cages and the controller's lane map — exactly as on a switch, but with fewer ports and a bus that is easy to under-provision. This page lists the cages and speeds found on NICs, the rules for dual-rate ports and breakout cables, the PCIe arithmetic, the OCP 3.0 form factor, and the power and cooling limits that matter for optics on cards.
Cages and speeds on NICs
| Cage | Speeds seen on NICs | Typical controllers | Notes |
|---|---|---|---|
| SFP+ | 10G (1G on some) | Intel X520/X710, Broadcom 5741x | 1G support varies; check the card's spec |
| SFP28 | 25G, 10G (1G rare) | Intel XXV710/E810-XXV, ConnectX-4 Lx/-6 Lx, Broadcom P225 | 25G needs FEC agreement (FEC & AN) |
| SFP56 | 50G, 25G, 10G | ConnectX-6 Lx/Dx (some) | PAM4 lanes |
| QSFP28 | 100G, 4 × 25G, 2 × 50G, 40G, 4 × 10G | Intel E810-CQDA2, ConnectX-5/6, Broadcom P2100 | breakout via cable only where the controller allows |
| QSFP56 | 200G, 100G, 2 × 100G | ConnectX-6 Dx/-7, Broadcom P2200, Pensando | — |
| QSFP112 | 400G, 200G, 100G, 4 × 100G | ConnectX-7, Broadcom P1400GD | 100G/lane; accepts QSFP28/56 |
| QSFP-DD | 400G, 2 × 200G, 4 × 100G | Broadcom BCM57608 | — |
| OSFP (twin-port) | 2 × 400G, 800G | ConnectX-7/-8, BlueField-3 | one cage, two logical ports on Nvidia twin-port designs |
| RJ45 | 1G / 10GBASE-T / mGig | X550, X710-T, BCM57416 | no module, PHY on the card |
Cage compatibility rules are the switch ones (Port types & cages).
Dual-rate ports and speed groups
- Most 25G NICs run each port independently at 10G or 25G — no quad grouping — but a few dual-port controllers share a SerDes group and force the same speed on both ports.
- 100G cards often support 40G modules; 200G/400G cards support 100G modules; going down more than one generation (1G in an SFP28, 10G in a QSFP56 via QSA) is rarely supported.
- Speed is usually auto from the module's compliance codes; forcing (
ethtool -s … speed) is needed when the module is dual-rate or unrecognised (Tools).
Breakout on NICs
| Case | Works? |
|---|---|
| 100G QSFP28 NIC port → 4 × 25G to a switch (DAC splitter) | only if the controller supports "4 × 25G port split" mode (many Nvidia and Broadcom cards do, most Intel do not); the card then shows 4 netdevs |
| Switch 100G port → 4 × 25G to four NIC SFP28 ports | yes — this is the common direction; the split is configured on the switch (Breakout & MPO) |
| 400G OSFP twin-port → 2 × 400G or 4 × 200G / 8 × 100G | Nvidia twin-port cards: 2 logical ports per cage; further splitting depends on firmware |
| 2 × 50G from a QSFP28 port | some controllers |
PCIe: the real port speed
| PCIe generation | Per lane (raw) | x8 usable (≈) | x16 usable (≈) |
|---|---|---|---|
| Gen 3 | 8 GT/s | 56–63 Gb/s | 112–126 Gb/s |
| Gen 4 | 16 GT/s | 112–126 Gb/s | 225–252 Gb/s |
| Gen 5 | 32 GT/s | 225–252 Gb/s | 450–504 Gb/s |
| Gen 6 | 64 GT/s | ~450–500 Gb/s | ~900–1 000 Gb/s |
Usable throughput is 85–90 % of raw after encoding and packet overhead. Match ports to lanes:
| Card | Ports | Needs |
|---|---|---|
| 2 × 25G | 50 Gb/s | Gen 3 x8 |
| 2 × 100G | 200 Gb/s | Gen 4 x16 (Gen 3 x16 saturates at ~126) |
| 1 × 200G / 2 × 100G Gen 4 | 200 Gb/s | Gen 4 x16 |
| 2 × 200G | 400 Gb/s | Gen 5 x16 |
| 1 × 400G | 400 Gb/s | Gen 5 x16 (or two x16 via "socket direct"/multi-host) |
| 2 × 400G | 800 Gb/s | Gen 6 x16 or two Gen 5 x16 |
A 2 × 100G card in a Gen 3 x8 slot links at 100G on both ports and delivers ~60 Gb/s total — the optics are fine, the bus is not. Check lspci -vv for the negotiated link width and speed (LnkSta), and BIOS bifurcation settings.
OCP NIC 3.0
| Item | SFF (small form factor) | LFF (large) |
|---|---|---|
| Size | 76 × 115 mm | 139 × 115 mm |
| PCIe | up to x16 | up to x32 (two x16) |
| Power | up to 80 W | up to 150 W |
| Ports | 2–4 × SFP28/QSFP28/QSFP56/QSFP112 | 2 × QSFP-DD/OSFP or more |
| Optics access | front of the module, tool-less | same |
OCP cards sit at the rear of the server with their own airflow channel; module cooling is usually better than on a PCIe card buried between GPUs.
Power and cooling for optics on cards
| Item | Limit / rule |
|---|---|
| PCIe slot power | 25 W (x1…x8 low profile), 75 W (x16); 400G cards use an 8-pin auxiliary connector |
| Per-cage budget on NICs | SFP28: 1.5 W (level II); QSFP28: 3.5–4.5 W; QSFP56/112: 5–8 W; QSFP-DD/OSFP: 12–20 W — the card's datasheet states it (Power & consumption) |
| Airflow | 200–300 LFM across the card; optics on a card in a 1U server near the CPU exhaust run hot — DDM temperature above 60 °C is common |
| Thermal throttling | some controllers lower the module to low power or shut the port when the module reports high temperature |
| Coherent / ZR on NICs | not supported on standard NICs — class 8 exceeds the cage budget |
Multi-host and socket direct
High-end cards can present themselves to two CPU sockets (two x8 or x16 links) or to several hosts. The optical side is unchanged; the split is in PCIe. Relevant for 400G on Gen 4 platforms and for GPU servers where each GPU's NIC must sit on its own PCIe root.
Checklist before buying a NIC for optics
- Cage type and the speeds the controller supports at that cage.
- PCIe generation and lanes in the target slot vs total port bandwidth.
- Breakout needed? Controller must support port split.
- Module policy of the driver (Optics compatibility on NICs).
- Cage power budget vs planned modules; auxiliary power connector present.
- Airflow in the chassis position; consider OCP 3.0 for better cooling.
- OS/driver support for FEC modes and speed forcing.
In CodingBox
The module's compliance codes and power class tell you whether it can serve the NIC's cage and speed; CodingBox reads them before the module is installed, and the port-split and PCIe questions are settled on the server side (Check transceiver).