그만큼 40 아무도 보지 못하는 CPU 낭비 비율
서버가 처리 중입니다 25 네트워크 트래픽 Gbps. CPU는 다음 위치에 있습니다. 60 활용률. 응용 프로그램이 사용 중입니다 20 퍼센트. 다른 40 percent is the kernel\’s network stack — copying packets, 체크섬 계산, TCP 흐름 분할, 및 라우팅 인터럽트 — 이 모든 작업은 최신 NIC가 실리콘에서 수행할 수 있는 작업입니다.. CPU가 수행하는 작업과 어댑터에 위임할 수 있는 작업 간의 차이는 처리하는 서버 간의 차이입니다. 25 Gbps 및 이를 처리하는 것 100 Gbps. 이 문서에서는 네트워크 처리를 CPU에서 NIC로 이동하는 오프로드 기술과 각 기술이 중요한 시점에 대해 설명합니다..
오프로드 기술, 설명됨
| 기술 | 오프로드 대상 | 지원 날짜 | CPU 절약 | 중요한 순간 |
|---|---|---|---|---|
| 체크섬 오프로드 (IP/TCP/UDP) | CPU 대신 NIC에서 IP/TCP/UDP 체크섬을 계산합니다. | 모든 최신 NIC (인텔 X710+, 브로드컴 57412+, 첼시 T6) | 2-5 CPU당 백분율 10 Gbps | 항상 활성화됨. 이후 테이블 스테이크 2005. |
| TSO/GSO (TCP 분할 오프로드) | NIC는 대규모 TCP 세그먼트를 분할합니다. (64KB) MTU 크기의 패킷으로, 하드웨어의 모든 헤더 생성 | 모든 최신 NIC | 10-20 대규모 전송에 대한 CPU 비율 | 빅데이터 전송, 백업, 미디어 스트림, VM 마이그레이션 |
| LRO/GRO (대규모 수신 오프로드) | NIC는 들어오는 세그먼트를 커널이 처리하기 전에 큰 패킷으로 병합합니다., 패킷당 오버헤드 감소 | 모든 최신 NIC | 10-15 수신량이 많은 워크로드를 위한 CPU 비율 | 수신량이 많은: 파일 서버, 웹 서버, 스토리지 대상 |
| RSS (수신측 스케일링) | 5-튜플의 해시를 사용하여 여러 CPU 코어에 수신 패킷을 분산합니다. — 네트워크 처리를 병렬화합니다. | 모든 최신 NIC (여러 번) | 대신 N 코어로 확장 1 | 멀티코어 서버. 단일 코어가 회선 속도를 처리할 수 없는 25GbE+에 중요. |
| RPS/RFS (패킷 조정 수신 / 흐름 조향) | RSS에 대한 소프트웨어 보완. RPS는 코어 전체에 로드 밸런싱을 적용합니다.; RFS는 소비 애플리케이션을 실행하는 코어로 패킷을 조정합니다.. | 리눅스 커널 (모든 NIC에서 작동) | 캐시 지역성 향상, 대기 시간 감소 | 연결 수가 많은 워크로드 (대리, 로드 밸런서, 레디스) |
| 발가락 (TCP 오프로드 엔진) | NIC에서 처리되는 전체 TCP/IP 프로토콜 스택. CPU는 TCP 상태 머신을 볼 수 없습니다. | 첼시 T6만 (및 오래된 독점 스택) | 까지 60 순수 TCP 워크로드에 대한 CPU 절감 비율 | 레거시/틈새. 대부분의 NIC 공급업체는 커널 넷스택 개선으로 인해 TOE를 중단했습니다.. Chelsio는 iWARP를 위해 이를 유지합니다.. |
| VXLAN/GENEVE 오프로드 | NIC는 오버레이 헤더를 추가/제거합니다., 오버레이 체크섬을 계산합니다., 하드웨어에서 UDP 캡슐화를 처리합니다. | 인텔 X710+, E810, 브로드컴 574xx, 첼시 T6, 엔비디아 커넥트X | 10-25 오버레이 네트워크의 CPU 비율 | VXLAN 환경 (구름, SDN, NSX, 오픈스택, Kubernetes CNI 오버레이) |
| SR-IOV (단일 루트 I/O 가상화) | NIC는 가상 기능을 제공합니다. (VF) VM/컨테이너에 직접, bypassing the hypervisor\’s network stack | 인텔, 브로드컴, 멜라녹스, Chelsio — 모든 최신 어댑터 | 까지 80 퍼센트 (VM 네트워킹 우회) | 처리량이 높은 가상화 워크로드, DPDK 애플리케이션, VNF (NFV) |
| ADQ (애플리케이션 장치 대기열) | 애플리케이션당 전용 NIC 대기열, NIC에서 앱 메모리로 제로 카피 전달 | 인텔 E810 (독점적인) | 40-60 P99 대기 시간 감소 비율 | 지연 시간에 민감한 앱: 레디스, 카프카, Intel E810의 데이터베이스 |
워크로드에 실제로 중요한 것은 무엇입니까?
가상화 및 하이퍼바이저
VM웨어 ESXi, Hyper-V, KVM은 무엇보다도 두 가지 오프로드에 의존합니다.: 멀티 코어 병렬 처리를 위한 RSS 및 VM 네트워킹을 위한 SR-IOV. 2개의 25GbE NIC 및 RSS가 활성화된 ESXi 호스트는 전체에 트래픽을 분산합니다. 8+ CPU 코어, 단일 코어 포화 방지. SR-IOV는 가상 기능을 VM에 직접 전달합니다., 하이퍼바이저 패킷 처리 제거 - 차이점 20 Gbps 및 35 Gbps의 VM 처리량 25 Gbps 링크.
스토리지 네트워킹 (iSCSI, NVMe-oF, vSAN)
스토리지 트래픽은 TCP 기반입니다. (iSCSI) 또는 RDMA 기반 (RoCE/iWARP를 통한 NVMe-oF). 체크섬 및 TSO 오프로드는 iSCSI에 필수적입니다. 100 TSO 오프로드 없이 GB 백업 전송에 소비 10-20 애플리케이션을 제공해야 하는 CPU 비율. RDMA를 통한 NVMe-oF는 RDMA 오프로드를 통해 TCP 스택을 완전히 우회합니다., 이것이 바로 RDMA 지원 NIC가 필요한 이유입니다. (인텔 E810, 첼시 T6, 멜라녹스 ConnectX) NVMe-oF의 문제.
연결 수가 많은 애플리케이션 (대리, 로드 밸런서, 레디스, 카프카)
이러한 워크로드는 많은 작은 패킷과 많은 연결을 생성합니다.. RSS + RPS/RFS는 코어 전반에 걸쳐 인터럽트 로드 균형을 유지합니다.. ADQ (인텔 E810) 애플리케이션 간 경합을 제거하는 애플리케이션별 큐로 더 나아갑니다.. 그만큼 40-60 ADQ의 P99 대기 시간 개선 비율은 NIC 기능에서 얻을 수 있는 최대 단일 대기 시간 개선입니다. 2026.
가상화된 네트워크 기능 (NFV, DPDK)
VNF (vRouter, v방화벽, v로드 밸런서) 초당 수백만 개의 패킷을 처리합니다.. SR-IOV는 VF를 VM에 직접 전달합니다., DPDK 폴 모드 드라이버는 커널을 완전히 우회합니다.. ㅏ 25 SR-IOV가 없는 Gbps NFV 워크로드는 ~8Gbps에서 실행됩니다.; SR-IOV 포함 + DPDK가 접근한다 25 Gbps 회선 속도. 이는 NFV 공급업체가 인용하는 3배의 처리량 차이입니다..
오프로드가 해를 끼칠 때 — 직관에 반하는 사례
| 대본 | 고통스러운 오프로드 | 왜 | 고치다 |
|---|---|---|---|
| 단일 큐 VM에서 RSS를 사용하는 VMware ESXi | RSS (잘못 구성된 경우) | 흐름당 RSS 해시. 하나의 큰 흐름 (하나의 VM 백업) RSS에 관계없이 하나의 코어에 착륙. VM당 다중 대기열 필요. | 다중 대기열 virtio/VMXNET3 활성화, 호스트와 VM 측 모두에서 RSS 확인 |
| 대기 시간에 민감한 OLTP의 LRO | LRO/GRO | LRO는 패킷을 병합합니다., 마이크로 버퍼링 대기 시간 추가. OLTP에는 패킷별 전달이 필요합니다.. | 데이터베이스 연결 NIC 포트에서 LRO 비활성화 (백업 포트를 유지하세요) |
| 조각난 패킷이 있는 TSO (TCP를 통한 NFS) | TSO | 조각화된 NFS 쓰기는 TSO별로 분할할 수 없습니다.; NIC는 CPU 분할로 대체됩니다., 혼합 경로는 TSO가 없는 것보다 느립니다.. | TSO를 활성화된 상태로 유지; 대체는 드물다. NIC CPU 사용량 이상 모니터링. |
| 최신 커널을 사용한 TOE (커널 우회) | 발가락 (가능하다면) | 최신 커널에는 최적화된 넷스택이 있습니다.; TOE는 커널 소켓 API 및 방화벽과 충돌합니다.. | RSS 사용 + 체크섬 + 대신 TSO. TOE는 레거시입니다.. |
오프로드가 작동하는지 확인하는 방법
- 리눅스:
ethtool -k eth0현재 오프로드 설정을 보여줍니다.ethtool -S eth0 | grep rssRSS 대기열 분포를 보여줍니다..nstat -azTCP 재전송 및 체크섬 오류 표시 (오프로드 문제의 지표). - 윈도우: Get-NetAdapterAdvancedProperty는 오프로드 설정을 표시합니다.. 성능 모니터: 어댑터당 네트워크 인터페이스 카운터.
- VM웨어 ESXi: esxcli network nic get -n vmnic0은 오프로드 기능을 보여줍니다.. esxtop 네트워크 보기에는 CPU 전반에 걸친 인터럽트 분포가 표시됩니다..
Xincuan을 통해 네트워킹 하드웨어를 소싱하세요
우리는 모든 종류의 NIC를 공급합니다 — Intel X710, E810, 브로드컴 57412, 첼시 T6, Mellanox ConnectX — pre-installed in Dell PowerEdge and xFusion FusionServer servers with competitive pricing, 3-1년 보증, 그리고 글로벌 배송. 당사 엔지니어가 귀하의 워크로드에 맞게 오프로드를 올바르게 구성하도록 도와드릴 수 있습니다..
탐구하다: 인텔 E810 25GbE | 첼시 T6 iWARP | 인텔 X710 10GbE
Xinchuan 서버 | 엔터프라이즈 서버 하드웨어 공급업체