Telecom and high-performance networking

XDP/eBPF for high-performance telecom GTP-U data planes

Architecture, implementation and optimization of GTP, DPI, UPF/PGW, CGNAT, firewall and other high-load network components.

Problems addressed

When external high-performance networking expertise is needed

The path does not scale

Adding cores does not produce linear throughput because of shared state, atomics and cross-core movement.

NUMA and queues are only superficially configured

RX/TX, memory and workers are placed on different nodes, increasing latency and socket-to-socket traffic.

Performance needs defensible evidence

The team needs a reproducible benchmark, not a single number without a traffic profile and CPU accounting.

Anonymized benchmark

GTP-U data plane: from one port at 16 Gbit/s to four ports at 400 Gbit/s

One server and the same traffic profile; software optimization followed by NUMA-aware scaling across two network adapters.

BEFORE16 Gbit/sone port on the first ConnectX-6
→
AFTER400 Gbit/sfour ports across two adapters
GAIN25×aggregate throughput increase

Test environment

  • x86 server with two NUMA nodes
  • initially one active port on a dual-port Mellanox ConnectX-6
  • after scaling, two dual-port ConnectX-6 adapters, one per NUMA node
  • four 100GbE ports carrying a mobile-core GTP-U user plane

Network layout

  • SR-IOV for data interfaces
  • separate VLAN/VRF paths for S1-U, S5/S8, SGi and Gm
  • control and user planes kept separate
  • static routing in the initial stage

Optimization

  • per-CPU state and removal of shared atomics
  • NUMA-local memory with queues and workers bound to each adapter
  • cache-line separation for mutable structures
  • batching, lock-free exchange and NIC offload
How the result was verified

The same server and GTP-U traffic profile; comparison of application and per-port NIC counters, CPU utilization and NUMA placement; repeated runs after each change set. The baseline used one port at 16 Gbit/s. The final configuration used the second port on the first adapter and both ports on a second adapter installed on the other NUMA node, reaching 400 Gbit/s aggregate.

Scope of responsibility

Scope I can take ownership of

  • XDP/eBPF, AF_XDP, DPDK and libbpf/libxdp
  • GTP-U, TEID routing, UPF/PGW/GGSN, DPI and firewall
  • per-CPU state, cache-line separation, NUMA locality and queue affinity
  • lock-free rings, batch processing and NIC offload
  • profiling, pps/Gbit/s/latency benchmarks and hot-path analysis

First engagement

A practical starting point

3–5 days

Technical assessment

Architecture, risks, bottlenecks and a validation plan.

1–2 weeks

Performance cycle

Baseline, profiling, changes and repeated measurement.

2–4 weeks

Hypothesis validation

A working critical-path prototype and full implementation estimate.

Minimum paid engagement: 3 business days, from RUB 200,000 or the equivalent in another currency. After a short introductory call, scope, deliverables, validation method and price are fixed.

Engagement model

KernelSoft is an independent expert practice

Maxim personally owns architecture, critical code, diagnostics and final technical review. Additional engineers or domain specialists are involved only by customer agreement, with roles and accountability defined in advance.

28+years
60+patents
14years at Acronis
2,400+citations

Discuss the project

Describe the problem, current implementation and target outcome

Include the platform, what already exists, where the problem occurs, the target load and the acceptance criterion. This is enough to choose a sensible first stage and validation method.

Target response time: one business dayNext: a short introduction → an NDA if needed → agreement on the first stage.