참고자료
이 VPP 문서 사이트 전반에서 인용·참고하는 1차 자료를 한 곳에 모은 레퍼런스입니다. FD.io 공식 문서, VPP 소스 트리, 핵심 RFC, 외부 엔진·라이브러리, 성능 벤치마크, Kubernetes 생태계 링크를 정리합니다.
이 페이지의 역할: 이 사이트 전반에서 인용·참고하는 1차 자료를 한 곳에 모은 레퍼런스입니다. 각 기술 문서에도 필요한 부분에 직접 링크가 있으므로, 이 페이지는 전체 자료 목록의 인덱스로 활용하시기 바랍니다.
초보자 권장 읽기 순서
VPP를 처음 접한다면 외부 1차 문서보다 이 사이트의 페이지들을 순서대로 읽는 것이 더 효율적입니다. 외부 자료는 해당 주제를 깊게 파고들 때 참조하시기 바랍니다.
- 튜토리얼 — 설치와 첫 패킷 — VPP 설치, TAP 연결, 기본 CLI
- 기초와 아키텍처 — 벡터 패킷 처리, 그래프 노드 모델
- 데이터 평면 — L2~L4 패킷 경로, FIB, 하드웨어 오프로드
- 운영 — 설정·플러그인·모니터링·트러블슈팅 종합
- API 계층 레퍼런스 — 플러그인 개발 시작점
외부 1차 문서 중 반드시 읽어야 하는 것은 아래에 ★로 표시했습니다.
FD.io · VPP 공식 문서
- fd.io — FD.io 프로젝트 홈 (프로젝트 개요)
- docs.fd.io/vpp — 릴리스별 VPP 공식 문서 (입문용)
- wiki.fd.io/view/VPP — 개발자 위키 (기여·설계 배경)
- ★ s3-docs.fd.io/vpp/26.02 — VPP 26.02 공식 문서 (본 사이트 기준 릴리스, 2026-02-25 — 가장 신뢰도 높은 1차 자료)
- ★ VPP 25.10 릴리스 노트 — sFlow direction/drop-monitoring, pg_create_interface_v3, HTTP/2 확장, Session CA 설정 등 주요 변경
- ★ VPP 26.02 릴리스 노트 — 신규 기능·API 변경·deprecated 목록 (API 마이그레이션 시 필수)
- VPP 26.02 Supported Features — production / experimental 성숙도 (기능 선택 시 참조)
- ★ VPP 26.02 Configuration Reference —
startup.conf전체 옵션 (운영자 필수 참조) - s3-docs.fd.io/vpp/latest — 최신 렌더링된 개발자 가이드 (in-progress, 안정성 미보장)
- LFN 릴리스 발표 — VPP 26.02 / CSIT 2602 (2026-03-11) — 주요 변경 요약 (릴리스 개요 파악용)
- FDio/vpp GitHub Releases — 태그·체인지로그 (버전별 변경 추적)
소스 트리와 기여
- github.com/FDio/vpp — GitHub 미러 (읽기 전용, 소스 탐색에 편리)
- ★ git.fd.io/vpp — 공식 cgit (권위 있는 트리 — 소스 코드 검증 시 이 트리를 기준으로)
- gerrit.fd.io — project:vpp — 리뷰 중인 패치 (최신 변경 추적, 기여자 필수)
src/vlib/— 벡터 처리 엔진 본체src/vnet/— 네트워킹 노드 (L2/L3/L4)src/plugins/— DPDK·ACL·NAT·host stack 등 플러그인src/vpp-api/,src/vlibapi/,src/vlibmemory/— 바이너리 API와 공유 메모리 IPC
핵심 RFC · 표준
전송 · 프로토콜
TLS · QUIC · HTTP
- RFC 8446 — TLS 1.3
- RFC 9000 — QUIC
- RFC 9001 — TLS for QUIC
- RFC 9002 — QUIC Loss Recovery
- RFC 9110 — HTTP Semantics
- RFC 9111 — HTTP Caching
- RFC 9112 — HTTP/1.1
- RFC 9113 — HTTP/2
- RFC 9114 — HTTP/3
- RFC 6455 — WebSocket
보안 · IPsec · NAT
- RFC 4301 — IPsec Security Architecture
- RFC 4303 — ESP
- RFC 7296 — IKEv2
- RFC 4787 — NAT UDP Unicast 요구사항
- RFC 6146 — NAT64
오버레이 · 라우팅
외부 엔진 · 라이브러리
- DPDK — 유저스페이스 패킷 처리 라이브러리
- OpenSSL — TLS 엔진 중 하나
- picotls — 경량 TLS 라이브러리
- quicly — VPP QUIC 플러그인 기본 엔진
- Mbed TLS — 대안 TLS 엔진
- Intel QAT — 암호화·압축 오프로드
성능 · 벤치마크 · 테스트
- csit.fd.io — FD.io 회귀 성능 보고서
- trex-tgn.cisco.com — TRex 트래픽 생성기
- VPP 개발자 빌드·실행·디버그
Kubernetes · 생태계
- projectcalico/vpp-dataplane — Calico/VPP CNI
- prometheus.io — 시계열 모니터링
- grafana.com/docs — 대시보드
커뮤니티 채널 및 기여
VPP 개발에 참여하거나 버그를 보고하려면 아래 공식 채널을 이용합니다.
| 채널 | URL / 주소 | 용도 |
|---|---|---|
| FD.io Gerrit 코드 리뷰 | gerrit.fd.io | 패치 제출 및 코드 리뷰 |
| FD.io Jira 이슈 트래커 | jira.fd.io | 버그 리포트 및 이슈 관리 |
| VPP 메일링 리스트 | vpp-dev@lists.fd.io | 개발 논의 및 질문 |
| #vpp IRC/Slack 채널 | Slack: fd-io.slack.com → #vpp |
실시간 커뮤니티 소통 |
기여 절차 요약
VPP 프로젝트는 GitHub Pull Request 방식이 아닌 Gerrit 기반 코드 리뷰를 사용합니다.
- gerrit change 생성 —
git review명령으로 gerrit.fd.io에 패치를 올립니다. - 코드 리뷰 (review) — 메인테이너와 커뮤니티 멤버가 코드를 검토하고 코멘트를 남깁니다. 필요한 경우 패치를 수정해 같은 change에 새 patchset으로 올립니다.
- CI 통과 (CI) — Jenkins 기반 CI가 자동으로 빌드·테스트를 수행하며, 모든 검사가 통과해야 합니다.
- 머지 (merge) — Verified +1·Code-Review +2 투표를 얻으면 메인테이너가 main 브랜치에 머지합니다.
첫 기여 전 확인: FD.io 개발자 가이드에서
git-review 설정 방법과 커밋 메시지 형식 가이드라인을 확인하시기 바랍니다. Change-Id 훅 설치 없이는 Gerrit에 패치를 올릴 수 없습니다.