Featured image of post [Performance 10] Introduction: Low-latency 네트워크 최적화

[Performance 10] Introduction: Low-latency 네트워크 최적화

Low-latency 네트워크 최적화 트랙의 도입 챕터입니다. 네트워크 지연 직관부터 소켓·직렬화·프로토콜·커널 바이패스까지의 진입 순서를 정리하고, RTT·직렬화 비용·처리량을 분리 측정하는 접근을 소개합니다.

이 트랙은 “데이터가 네트워크를 오가는 경로"의 지연시간을 줄이는 영역을 책임집니다. µs 단위에서는 프로토콜 오버헤드, 직렬화 비용, 커널 네트워크 스택 지연이 전체 지연시간의 상당 부분을 차지합니다.

이 트랙이 책임지는 범위

  • 소켓 옵션과 버퍼 튜닝 (TCP_NODELAY, SO_SNDBUF, SO_RCVBUF)
  • 프로토콜 설계 (바이너리 vs 텍스트, 메시지 프레이밍)
  • 직렬화/역직렬화 성능 (Protocol Buffers, FlatBuffers, Cap’n Proto)
  • 커널 바이패스 기법 (DPDK, XDP, eBPF)
  • TCP 혼잡 제어와 튜닝
  • RDMA/InfiniBand 기초

이 트랙이 다루지 않는 것 (경계)

  • 파일 I/O, 디스크 I/O 최적화 (→ I/O 최적화 트랙 Tr.09)
  • C++ 언어 레벨 최적화 상세 (→ C++ 언어 트랙)
  • CPU 파이프라인/캐시의 하드 분석 (→ CPU 트랙)
  • 동시성/멀티스레드 구조 설계 (→ 동시성 트랙)

커리큘럼

난이도 범례: 기초(입문) · 중급(실무 핵심) · 심화(깊은 분석·전문 주제) · 전문(극한·니치). Tr.NNoptimization-NN-* 트랙을 가리킵니다. 심화(본 트랙) 행은 Tr.06의 동일 주제 개요를 이어 받습니다.

이 트랙은 번호 순서대로(01 → 21) 읽으면 됩니다. 01은 RTT·직렬화·대역폭의 기본 직관을 만들고, 02–04는 전송 지연과 소켓 옵션의 바닥을 정리하며, 06과 09는 직렬화와 프로토콜 설계의 핵심 비용 모델을 먼저 잡아 줍니다.

챕터제목난이도핵심 내용
01네트워크 지연 직관기초RTT·대역폭·직렬화 비용이 지연에 미치는 그림 잡기
02네트워크 지연 구조기초네트워크 지연시간 구성 요소 분석
03소켓 옵션 튜닝중급TCP_NODELAY, SO_SNDBUF, 버퍼 최적화
04TCP 성능 최적화중급Nagle 알고리즘, Delayed ACK, 혼잡 제어, BBRv3(IETF 표준화 진행 중)
05UDP 최적화중급UDP 활용과 신뢰성 레이어 설계
06직렬화 성능 비교중급Protocol Buffers, FlatBuffers, Cap’n Proto
07Zero-copy 직렬화심화FlatBuffers, Cap’n Proto zero-copy 활용
08차세대 Zero-copy 직렬화 포맷 동향(YaFF 등)심화Yandex YaFF(2026-06 공개) 등 신흥 zero-copy 포맷과 기존 FlatBuffers/Cap’n Proto 비교 판단 기준
09프로토콜 설계중급저지연 바이너리 프로토콜 설계 원칙
10메시지 프레이밍중급Length-prefix, delimiter, fixed-size 전략
11네트워크 DPDK 심화전문심화(본 트랙); 개요는 Tr.06; NVIDIA BlueField-4 등 최신 SmartNIC/DPU 오프로드 동향 포함
12네트워크 XDP/eBPF전문심화(본 트랙); 개요는 Tr.06
13RDMA 기초심화RDMA/InfiniBand 개념과 활용
14Ultra Ethernet Consortium(UEC)과 차세대 저지연 이더넷전문2025-06 발표된 UEC Specification 1.0, PFC 없는 무손실 저지연 이더넷과 RoCEv2/InfiniBand 대비 위치
15gRPC 최적화중급gRPC 성능 튜닝
16QUIC 프로토콜심화QUIC 성능 특성, 0-RTT 연결, UDP 기반 전송
17TLS/SSL 최적화심화TLS 핸드셰이크 최적화, 세션 재개, 0-RTT, PQC 하이브리드 키교환이 핸드셰이크 지연에 미치는 영향
18Connection Pooling중급연결 풀링 전략, Keep-alive, 연결 재사용
19WebSocket 최적화중급WebSocket 성능 튜닝, 압축, 메시지 배치
20HTTP/2와 HTTP/3심화HTTP/2 멀티플렉싱, HTTP/3 QUIC 기반 성능 비교, WebTransport는 2026-03 Baseline 도달했으나 실무 채택은 준비 단계
21네트워크 압축 전략중급LZ4/zstd/snappy in-transit 압축의 CPU-대역폭 트레이드오프와 선택 기준

측정과 검증 (이 트랙 기준)

  • 네트워크 왕복시간(RTT) 분포 분석 (p50/p95/p99)
  • 처리량(throughput)과 지연시간(latency) trade-off 분석
  • 직렬화/역직렬화 벤치마크 (메시지 크기별)
  • 패킷 캡처를 통한 프로토콜 오버헤드 분석

추천 선행/병행 트랙

  • 선행: Low-latency 프로파일링·성능 분석 (Tr.01), I/O 최적화 (Tr.09)
  • 병행: OS·런타임 (Tr.06), 동시성 (Tr.07)

네트워크 서버·마이크로서비스·분산 시스템·HFT에서 이 트랙이 핵심이 됩니다.

왜 이 트랙인가 (동기)

RTT·직렬화·프로토콜 오버헤드·커널 스택 비용이 겹치면, 애플리케이션 로직만 최적화해도 한계가 빨리 옵니다. Tr.06의 XDP/eBPF·커널 바이패스 개요를 읽은 뒤, 이 트랙에서는 패킷 처리 심화·RDMA·QUIC·TLS까지 확장합니다. Tr.07와 함께 보면 수락 루프·스레드 모델과의 상호작용까지 설계할 수 있습니다.

Phase별 학습 궤적

Phase A — 직관·전송·TCP/UDP (챕터 01–05) 지연의 기본 직관과 구성 요소, 소켓 옵션을 이해합니다.

Phase B — 직렬화·프로토콜 (챕터 06–10, 15, 18–20, 21) 메시지 설계는 CPU(Tr.05), 언어 표현(Tr.02), 할당·레이아웃(Tr.04)과 만나는 지점입니다. 챕터 08의 신흥 zero-copy 포맷 동향은 07의 기존 포맷 비교 감각을 먼저 잡은 뒤 읽으면 판단이 쉬워집니다. 압축(21)까지 포함해 CPU-대역폭 trade-off를 함께 봐야 합니다.

Phase C — 커널 바이패스·고급 전송 (챕터 11–14, 16–17) DPDK·XDP/eBPF 심화(본 트랙)는 Tr.06 개요 위에 실전을 얹습니다. RDMA(13) 직후에 배치한 UEC(14)는 RoCEv2/InfiniBand 대안으로서 같은 맥락에서 비교하며 읽는 편이 좋습니다. QUIC·TLS 0-RTT는 심화–전문에 가깝습니다.

이 트랙을 마친 후 달성할 목표

  • 측정: RTT·처리량·직렬화 비용을 분리해 벤치마크할 수 있다.
  • 설계: 바이너리 프로토콜·프레이밍을 지연 예산에 맞게 선택할 수 있다.
  • 연계: Tr.06 개요와 본 트랙 심화의 역할을 팀에 설명할 수 있다.

평가 기준과 이 장을 읽은 후 확인

  • Tr.06 챕터 07·09(커널 바이패스·XDP/eBPF 개요)와 본 트랙 챕터 11·12(DPDK·XDP/eBPF 심화)의 난이도·목적 차이를 말할 수 있는가?
  • Tr.09 파일 I/O와 네트워크 I/O의 병목 지표가 어떻게 다른지 예시를 들 수 있는가?

범위와 경계

flowchart LR
  subgraph inScope [이 트랙]
    A["소켓·TCP·UDP"]
    B["직렬화·프로토콜"]
    C["DPDK·XDP 심화"]
  end
  subgraph outScope [경계 밖]
    D["디스크 I/O Tr.09"]
    E["동시성 구조 Tr.07"]
    F["CPU 미세 Tr.05"]
  end
  inScope --> outScope

심화·전문가 확장 궤적

DPDK·XDP/eBPF는 운영·보안·배포 정책(Tr.11)과 충돌할 수 있습니다. 전문 난이도 챕터는 스테이징·카나리(Tr.12) 전제를 권장합니다. 중급 실무 확장 후보로는 DNS/service discovery 지연, service mesh 오버헤드, 배치·압축·연결 재사용의 데이터센터 내부 통신 패턴을 이어서 검토할 수 있습니다.

시리즈 전체 로드맵

12개 트랙의 권장 순서·심화 진입 조건은 Low-latency 최적화 시리즈 개요를 참고하세요.

지금 바로 이어 읽을 곳

01 → 02 → 03 → 04 순으로 읽으면 네트워크 지연 직관에서 지연 구조·소켓 옵션·TCP 성능 최적화까지 이어집니다.