XDP(eXpress Data Path) 모드란?

XDP 모드란, eXpress Data Path의 약자로 Linux 커널 네트워크 스택에서 사용되는 고성능 프로그래밍 인터페이스를 말합니다. eBPF Hook 사용하여네트워크 드라이브 동작하여 성능을 높이기 위해 만들어졌습니다.

XDP에서는 네트워크 스택의 높은 실행 과정만큼 높은 속도로 패킷을 수집, 검색, 수정 또는 전달할 수 있습니다. XDP의 주요 특징은 단순히 네트워크 스택 운영이 아니라 패킷 변경을 개발자가 구현할 수 있는 기능입니다. 애플리케이션 개발자는 XDP를 통해 사용자 정의 패킷 처리 로직을 쉽게 구현할 수 있습니다.

Packet RX Hooking 이라고 하기도 합니다.

 

XDP 프로그램은 NIC Driver 단에서 실행이 되어 Packet Drop 경우 커널까지 도달하지 않습니다.

 

XDP 동작 리턴 타입

  • XDP_ABORTED : 패킷을 버리고 xdp_exception을 발생시킴
  • XDP_DROP : 패킷을 버림
  • XDP_PASS : 패킷을 커널로 보냄
  • XDP_TX : 패킷을 수신된 인터페이스로 재전송
  • XDP_REDIRECT : 패킷을 다른 인터페이스로 전달

eBPF Program 리스트

  • socket
  • TC
  • kprobes
  • XDP
  • perfcgroup
  • secdcomp

쉽게 설명하면 Packet Data Path 최적화를 통해서 고성능으로 네트워크 트래픽을 처리하기 위한 모듈이라고 보시면 됩니다.

 

[IT/리눅스(Linux)] - 리눅스 tc Traffic Control 사용 방법 포트 미러링 방법

 

리눅스 tc Traffic Control 사용 방법 포트 미러링 방법

Traffic Control 줄여서 TC는 네트워크 트래픽을 제어하는 유틸리티 패키지입니다. TC는 네트워크 대역폭 제한, 패킷 필터링, 대기 시간 및 패킷 손실 제어 등 다양한 기능을 수행할 수 있습니다. 오늘

coconuts.tistory.com

[IT/네트워크(Network)] - TCP/IP 4계층(Network 4 Layer)

 

TCP/IP 4계층(Network 4 Layer)

컴퓨터끼리 네트워크상으로 의사소통을 하는 약속을 프로토콜 이라고 합니다 그 중 가장 널리 사용되는 프로토콜 종류 중 하나가 tcp/ip 입니다 TCP는 transmission control protocol 과 데이터 통신을 다

coconuts.tistory.com

 

댓글

Designed by JB FACTORY