Cổng NIC, tốc độ và băng thông PCIe
Mặt trước của một NIC hứa hẹn “2 × 100G”; việc server có thực sự chuyển được 200 Gb/s hay không phụ thuộc vào khe PCIe đằng sau card, còn việc một module cụ thể có hoạt động được hay không phụ thuộc vào cage và bản đồ làn của bộ điều khiển — hệt như trên switch, nhưng với ít cổng hơn và một bus rất dễ bị cấp phát thiếu. Trang này liệt kê các cage và tốc độ có trên NIC, các quy tắc cho cổng hai tốc độ và cáp breakout, phép tính PCIe, form factor OCP 3.0, và các giới hạn công suất, làm mát quan trọng với quang học trên card.
Cage và tốc độ trên NIC
| Cage | Tốc độ thấy trên NIC | Bộ điều khiển điển hình | Ghi chú |
|---|---|---|---|
| SFP+ | 10G (một số có 1G) | Intel X520/X710, Broadcom 5741x | hỗ trợ 1G tùy từng card; kiểm tra thông số kỹ thuật của card |
| SFP28 | 25G, 10G (hiếm khi có 1G) | Intel XXV710/E810-XXV, ConnectX-4 Lx/-6 Lx, Broadcom P225 | 25G cần thống nhất FEC (FEC và AN) |
| SFP56 | 50G, 25G, 10G | ConnectX-6 Lx/Dx (một số) | làn PAM4 |
| QSFP28 | 100G, 4 × 25G, 2 × 50G, 40G, 4 × 10G | Intel E810-CQDA2, ConnectX-5/6, Broadcom P2100 | breakout qua cáp chỉ ở nơi bộ điều khiển cho phép |
| QSFP56 | 200G, 100G, 2 × 100G | ConnectX-6 Dx/-7, Broadcom P2200, Pensando | — |
| QSFP112 | 400G, 200G, 100G, 4 × 100G | ConnectX-7, Broadcom P1400GD | 100G/làn; chấp nhận QSFP28/56 |
| QSFP-DD | 400G, 2 × 200G, 4 × 100G | Broadcom BCM57608 | — |
| OSFP (hai cổng) | 2 × 400G, 800G | ConnectX-7/-8, BlueField-3 | một cage, hai cổng logic trên các thiết kế hai cổng của Nvidia |
| RJ45 | 1G / 10GBASE-T / mGig | X550, X710-T, BCM57416 | không có module, PHY nằm trên card |
Các quy tắc tương thích cage cũng giống như trên switch (Loại cổng và cage).
Cổng hai tốc độ và nhóm tốc độ
- Hầu hết NIC 25G chạy mỗi cổng độc lập ở 10G hoặc 25G — không nhóm bốn — nhưng một số bộ điều khiển hai cổng dùng chung một nhóm SerDes và ép cùng một tốc độ trên cả hai cổng.
- Card 100G thường hỗ trợ module 40G; card 200G/400G hỗ trợ module 100G; hạ xuống hơn một thế hệ (1G trong SFP28, 10G trong QSFP56 qua QSA) hiếm khi được hỗ trợ.
- Tốc độ thường được chọn tự động từ mã tuân thủ của module; cần ép tốc độ (
ethtool -s … speed) khi module có hai tốc độ hoặc không được nhận diện (Công cụ).
Breakout trên NIC
| Trường hợp | Có hoạt động không? |
|---|---|
| Cổng NIC QSFP28 100G → 4 × 25G tới switch (bộ chia DAC) | chỉ khi bộ điều khiển hỗ trợ chế độ “chia cổng 4 × 25G” (nhiều card Nvidia và Broadcom làm được, hầu hết Intel thì không); khi đó card hiển thị 4 netdev |
| Cổng switch 100G → 4 × 25G tới bốn cổng SFP28 của NIC | có — đây là hướng phổ biến; việc chia được cấu hình trên switch (Breakout và đi cáp MPO) |
| OSFP 400G hai cổng → 2 × 400G hoặc 4 × 200G / 8 × 100G | card hai cổng của Nvidia: 2 cổng logic mỗi cage; chia nhỏ hơn nữa tùy vào firmware |
| 2 × 50G từ một cổng QSFP28 | một số bộ điều khiển |
PCIe: tốc độ cổng thực tế
| Thế hệ PCIe | Mỗi làn (thô) | x8 khả dụng (≈) | x16 khả dụng (≈) |
|---|---|---|---|
| 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 |
Thông lượng khả dụng bằng 85–90 % giá trị thô sau khi trừ hao phí mã hóa và gói tin. Khớp cổng với số làn:
| Card | Cổng | Cần |
|---|---|---|
| 2 × 25G | 50 Gb/s | Gen 3 x8 |
| 2 × 100G | 200 Gb/s | Gen 4 x16 (Gen 3 x16 bão hòa ở khoảng 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 (hoặc hai x16 qua “socket direct”/multi-host) |
| 2 × 400G | 800 Gb/s | Gen 6 x16 hoặc hai Gen 5 x16 |
Một card 2 × 100G cắm vào khe Gen 3 x8 vẫn lên liên kết ở 100G trên cả hai cổng nhưng chỉ đạt tổng cộng khoảng 60 Gb/s — quang học không có vấn đề gì, bus mới là vấn đề. Kiểm tra lspci -vv để xem độ rộng và tốc độ liên kết đã đàm phán (LnkSta), cùng cài đặt phân nhánh (bifurcation) trong BIOS.
OCP NIC 3.0
| Mục | SFF (form factor nhỏ) | LFF (lớn) |
|---|---|---|
| Kích thước | 76 × 115 mm | 139 × 115 mm |
| PCIe | tới x16 | tới x32 (hai x16) |
| Công suất | tới 80 W | tới 150 W |
| Cổng | 2–4 × SFP28/QSFP28/QSFP56/QSFP112 | 2 × QSFP-DD/OSFP hoặc nhiều hơn |
| Truy cập quang học | phía trước module, không cần dụng cụ | như trên |
Card OCP nằm ở phía sau server với kênh luồng khí riêng; việc làm mát module thường tốt hơn so với một card PCIe bị chôn giữa các GPU.
Công suất và làm mát cho quang học trên card
| Mục | Giới hạn / quy tắc |
|---|---|
| Công suất khe PCIe | 25 W (x1…x8 low profile), 75 W (x16); card 400G dùng đầu nối phụ trợ 8 chân |
| Ngân sách mỗi cage trên NIC | SFP28: 1,5 W (mức II); QSFP28: 3,5–4,5 W; QSFP56/112: 5–8 W; QSFP-DD/OSFP: 12–20 W — datasheet của card ghi rõ điều này (Công suất và mức tiêu thụ) |
| Luồng khí | 200–300 LFM qua card; quang học trên một card trong server 1U gần khí thoát của CPU chạy nóng — nhiệt độ DDM trên 60 °C là chuyện thường gặp |
| Giảm hiệu năng theo nhiệt | một số bộ điều khiển hạ module về công suất thấp hoặc tắt cổng khi module báo nhiệt độ cao |
| Coherent / ZR trên NIC | không được hỗ trợ trên NIC tiêu chuẩn — hạng 8 vượt quá ngân sách cage |
Multi-host và socket direct
Các card cao cấp có thể tự trình diện với hai socket CPU (hai liên kết x8 hoặc x16) hoặc với nhiều host. Phía quang học không thay đổi; việc chia nằm ở PCIe. Điều này liên quan tới 400G trên nền tảng Gen 4 và các máy chủ GPU, nơi NIC của mỗi GPU phải nằm trên PCIe root riêng của nó.
Checklist trước khi mua NIC cho quang học
- Loại cage và các tốc độ mà bộ điều khiển hỗ trợ tại cage đó.
- Thế hệ PCIe và số làn trong khe mục tiêu so với tổng băng thông cổng.
- Có cần breakout không? Bộ điều khiển phải hỗ trợ chia cổng.
- Chính sách module của driver (Tính tương thích quang học trên NIC).
- Ngân sách công suất cage so với các module dự kiến dùng; có sẵn đầu nối nguồn phụ trợ hay không.
- Luồng khí tại vị trí trong chassis; cân nhắc OCP 3.0 để làm mát tốt hơn.
- Hỗ trợ của hệ điều hành/driver cho các chế độ FEC và ép tốc độ.
Trong CodingBox
Mã tuân thủ và hạng công suất của module cho biết nó có phục vụ được cage và tốc độ của NIC hay không; CodingBox đọc chúng trước khi module được lắp đặt, còn các vấn đề chia cổng và PCIe được giải quyết ở phía server (Check transceiver).