Go, Vantage point
가까운 곳을 걷지 않고 서는 먼 곳을 갈 수 없다.
Github | https://github.com/overnew/
Blog | https://everenew.tistory.com/

RDMA(Remote Direct Memory Access) 일반적인 NIC에서의 데이터 전송 과정은 다음과 같다. 1. user space의 버퍼에서 kernel space의 소켓 버퍼로 데이터를 복사 후, 헤더 추가2. kernel space에서 NIC 버퍼로 복사 후, 수신 측으로 전송3. 수신 측이 패킷을 NIC 버퍼에서 kernel space로 복사4. 데이터가 kernel space에서 user space로 복사5. 컨텍스트 스위칭이 일어나 사용자 응용 프로그램 호출 이러한 과정은 CPU의 복사 작업과 커널 level로 인터럽트를 하는 등의 작업이 필요하므로 부하를 늘린다. 이러한 불필요한 과정을 제거하는 것이 RDMA이다.OS 영향 없이, 네트워크를 통해 다른 시스템으로 데이터를 빠르게 ..

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끼리의 전송을 간편하게 만들어 준다. 단 OVS 구현을 위한 패킷 포워딩 모듈은 커널 영역에 구현된다.따라서 이전의..

DPDK(Data Plane Development Kit)고속 패킷 처리를 위한 데이터 플레인(data plane) 라이브러리와 네트워크 인터페이스 컨트롤러(NIC) 드라이버의 집합이다.운영체제의 도움을 받지 않고 오버헤드 없이 사용자 애플리케이션이 직접 하드웨어를 독점제어할 수 있는 자체 인터페이스를 제공한다.이는 User mode에서 Kernel 모드로의 system call을 호출로 발생하는 지연을 제거하여 달성 가능하다.이를 kernel bypass 기술이라고 한다. Kernel Bypass (커널 우회)https://blog.cloudflare.com/kernel-bypass/ Kernel bypassIn two previous posts we've discussed how to rece..