/XSKNet

A custom networking stack using XDP and XSK

Primary LanguageC

XSKNet

Introduction

This project implements Kernel bypass using AF_XDP (XSK) to implement a custom networking stack. It bypasses the traditional kernel stack and achieving superior throughput and low-latency communication. Currently only ICMP responses are implemented

Note that this project is designed for educational purposes and is not intended to be a general purpose networking stack.

Project architecture

XSKNet

Build

Ensure libxdp and libbpf are installed.

make

Progress

  • Redirect packets from PHY to veth
  • Receive packets from veth in user space using AF_XDP
  • Transmit packets from user space to veth using AF_XDP

Usage

Daemon

To run the daemon, you need to specify physical interface and the path to the XDP object file.

sudo bin/daemon --dev wlan0

User client

sudo bin/client -d test