프로필사진

Go, Vantage point

가까운 곳을 걷지 않고 서는 먼 곳을 갈 수 없다.


Github | https://github.com/overnew/

Blog | https://everenew.tistory.com/





티스토리 뷰

CS/OS

SR-IOV vs DPDK (+ OVS, PCI Passthrough)

EVEerNew 2025. 3. 4. 15:23
반응형

 

 

DPDK 정리글을 읽고 오면 좋습니다.

DPDK의 원리와 커널 우회(Kernel bypass)

 

DPDK의 원리와 커널 우회(Kernel bypass)

DPDK(Data Plane Development Kit)고속 패킷 처리를 위한 데이터 플레인(data plane) 라이브러리와 네트워크 인터페이스 컨트롤러(NIC) 드라이버의 집합이다.운영체제의 도움을 받지 않고 오버헤드 없이 사

everenew.tistory.com

 

 

 

 

 

 

SR-IOV를 알아보기 전에 OVS에 대해서 알아보자.

 

OVS(OpenvSwitch)

OVS 하이퍼바이저에서 실행되는 멀티 레이어 가상의 스위치이다.

OVS를 통해 다른 VNF끼리의 전송을 간편하게 만들어 준다.

 

https://www.cisco.com/c/ko_kr/support/docs/routers/enterprise-nfv-infrastructure-software/221679-understand-nfvis-virtual-networks-ovs.html

 

단 OVS 구현을 위한 패킷 포워딩 모듈은 커널 영역에 구현된다.

따라서 이전의 DPDK 정리글에서도 확인했듯이, 커널 영역으로의 인터럽트를 발생시켜야 하므로 오버헤드가 발생한다.

 

 

이를 개선하기 위해서 OVS를 DPDK와 함께 사용하여, 가상 스위치를 user space에서 실행해 성능을 높인다.

https://www.cisco.com/c/ko_kr/support/docs/routers/enterprise-nfv-infrastructure-software/221679-understand-nfvis-virtual-networks-ovs.html

 

 

 

 

SR-IOV(Single Root I/O Virtualization)

여기서 확인할 수 있는 문제는 하이퍼 바이저나 커널단을 거치면서 오버헤드가 많이 발생한다는 것이다.

따라서 SR-IOV에서는 하이퍼 바이저나 커널단을 거치지 않고 직접 NIC에 접근한다.

 

출처: https://telcocloudbridge.com/blog/dpdk-vs-sr-iov-for-nfv-why-a-wrong-decision-can-impact-performance/?fbclid=IwAR22Uiqvyg4Dp3Fxz92FG80L__Iw-2tRVSGRH03-PPFHCoTFHbNovz1rJa0

 

 

 

 

이를 위해서 사용되는 기술이 PCI Passthrough 기술이다.

PCI Passthrough 기능은 아래처럼 하이퍼바이저의 도움 없이도 VM이 물리 디바이스에 접근할 수 있게 해 준다.

 

https://www.researchgate.net/figure/Passthrough-within-the-hypervisor_fig2_326504242

 

 

 

단, 이런 경우 VM의 vNIC이 NIC와 1:1로 연결되어야 한다. 따라서 VM만큼 물리 NIC이 필요한 문제가 발생한다.

이 또한 가상화로 해결한다.

 

 

https://telcocloudbridge.com/blog/dpdk-vs-sr-iov-for-nfv-why-a-wrong-decision-can-impact-performance/?fbclid=IwAR22Uiqvyg4Dp3Fxz92FG80L__Iw-2tRVSGRH03-PPFHCoTFHbNovz1rJa0

 

 

SR-IOV는 물리적 네트워크 인터페이스 카드(pNIC)에서 직접 가상 기능(VF)을 생성하여 가상 머신(VM)에 할당한다.

이를 통해 하드웨어 수준에서 패킷 처리를 수행하므로, 낮은 지연 시간과 높은 처리량을 제공한다.

 

 

 

 

 

DPDK vs SR-IOV

DPDK는 east-west 트래픽(동일 하이퍼바이저에서 VM 간 통신)에서는 DPDK의 성능이 더 뛰어나다.

서버 내에서 관리되는 트래픽의 경우 NIC까지 액세스 하지 않기 때문에, SR-IOV가 성능향상을 제공할 수 있는 부분이 없다. 오히려 불필요한 NIC 접근으로 비효율성이 발생할 수도 있다.

 

https://www.cisco.com/c/ko_kr/support/docs/routers/enterprise-nfv-infrastructure-software/221679-understand-nfvis-virtual-networks-ovs.html

 

 

반대로 north-south 트래픽(타 서버 간의 통신)에서는 NIC를 반드시 거쳐야 하므로 SR-IOV가 높은 성능을 발휘할 수 있다.

https://www.cisco.com/c/ko_kr/support/docs/routers/enterprise-nfv-infrastructure-software/221679-understand-nfvis-virtual-networks-ovs.html

 

 

 

 

 

참조

https://jaeho.tistory.com/entry/DPDK-vs-SRIOV

https://computing-jhson.tistory.com/92

https://www.cisco.com/c/ko_kr/support/docs/routers/enterprise-nfv-infrastructure-software/221679-understand-nfvis-virtual-networks-ovs.html

 

 

반응형

'CS > OS' 카테고리의 다른 글

[RHEL9] Lacal & Remote repository 설정하기  (0) 2025.04.05
RDMA와 InfiniBand(인피니밴드)  (0) 2025.03.05
DPDK의 원리와 커널 우회(Kernel bypass)  (0) 2025.03.04
댓글
반응형
인기글
Total
Today
Yesterday
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
글 보관함