Skip to content

Releases

v1.0.0-rc1

v1.0.0-rc1 Pre-release
Pre-release

Choose a tag to compare

@pirog-spb pirog-spb released this 31 Oct 13:03

What's changed

Major release: a new experimental profile-based PFCP architecture, 4G/EPC (Sxa/Sxb) support, observability & management tooling.

Highlights

  • PFCP profile architecture — pluggable per-vendor behaviour via a new pfcp_profile config key (default / vendor profile): NodeID format, URR sequence numbering, OuterHeaderCreation, enterprise-specific IE parsing and vendor IEs are isolated behind a PfcpProfile interface, fully covered by unit tests for both profiles.
  • Vendor core compatibility profile — vendor-specific extensions for enterprise EPC/5GC cores: Metric IE in Heartbeat Request, second F-SEID in Session Establishment Response, IMS SDF filters, SPGW-C FAR composition, vendor NodeID format, per-core map size defaults.
  • 4G/EPC support — optional Sxa/Sxb connections and SPGW-C service support; 4G core sample deployments (Open5GS, docker-compose) added.
  • Session & subscriber tracing — pcap packet dumps with file rotation and size/packet limits, per-direction tracing (in/out/blocked), subscriber signalling trace, configurable via config/API.
  • New CLI (eupf-cli) — inspect associations/sessions with pretty-printed tables, manage runtime config, create and restore backups.
  • PCC (predefined) rules — activation/deactivation of predefined rules from config, variable SDF lists per PDR.
  • SDF match notifications — a perf-event listener notifies on SDF filter matches.
  • Runtime management API — hot config updates, association status monitoring, session deletion endpoint, updated Swagger docs.

PFCP handling

  • (Experimental) Sxa/Sxb connections
  • Association status monitoring and graceful association release via HTTP API and signals
  • Session Release Request support (UPF-initiated release); session deletion via API
  • Usage Reporting: URR entities management, URR reporting on PDR deletion and on PCC URRs;
  • Heartbeat Request carries a vendor Metric IE (vendor profile); heartbeat and association handling fixes
  • FAR/QER/URR rules are deleted by their correct global ids
  • Sessions filterable by network instance
  • PFCP message tracing with per-message dump support

Data plane (eBPF)

  • Combined S/PGW-U: Local processing of inter-UPF packets via tail calls
  • Runtime-controlled GTP-U extension header
  • IPv6 Router Advertisement support
  • Recovery field in the GTP-U header & GTP-U sequence number parsing
  • Route statistics metrics;
  • Advertised N3 address

Stability & fixes

  • TCP header parsing for SDF filters; IPv4/IPv6 SDF matching fixes
  • Nil-pointer crash in resource manager fixed; load-behaviour optimizations;

v0.7.2

Choose a tag to compare

@pirog-spb pirog-spb released this 30 Oct 13:43
758ad14

What's Changed

  • feat: add route stats metrics by @VITEK-THE-BEST in #614
  • feat: add calculate default maps size by session by @VITEK-THE-BEST in #622
  • feat: support GTP-U/UDP/IP(6) value for Outer Header Removal by @s5uishida in #636
  • feat(docker): file capabilities on the eupf binary, so it can run as a non-root user by @martin-mat in #672
  • fix(core): always send PFCP responses; treat datapath delete ENOENT as success by @zhangerfei-dp in #650
  • fix: ebpf program build warnings by @pirog-spb in #619
  • fix: set ebpf map size on startup correctly by @VITEK-THE-BEST in #624
  • fix(docker): move builder to bookworm, bump alpine runtime by @pirog-spb in #652
  • fix(helm): make default values produce a startable pod (#645) by @pirog-spb in #649
  • fix(helm): default to the documented capability set instead of privileged by @martin-mat in #666
  • fix(helm): size the eBPF maps for the chart's default memory limit by @martin-mat in #673
  • fix(helm): run eUPF as a non-root user by default by @martin-mat in #674
  • fix(deps): update golang.org/x/* to close 18 HIGH CVEs, bump Go to 1.26 by @pirog-spb in #654
  • fix(deps): update golang.org/x/net to close CVE-2026-78669 by @pirog-spb in #667
  • fix(deps): build with Go 1.26.10 to close CVE-2026-111943 by @martin-mat in #675
  • fix(trivy): ignore KSV-0118 for the eUPF deployment template by @pirog-spb in #655
  • fix(ci): use the correct needs.<job_id>.result context in scan-result by @pirog-spb in #660
  • chore: use global config for local ip by @pirog-spb in #620
  • ci: fix golangci-lint failing due to Go toolchain mismatch by @pirog-spb in #651
  • ci: update pipeline actions version by @pirog-spb in #653
  • ci(security): consolidate Trivy into manual pre-merge Security scan workflow by @pirog-spb in #656
  • ci(security): scan PRs automatically instead of manual dispatch by @pirog-spb in #659

New Contributors

Full Changelog: v0.7.1...v0.7.2

v0.7.1

Choose a tag to compare

@pirog-spb pirog-spb released this 14 Apr 13:01
faf9396

What's Changed

New Contributors

Full Changelog: v0.7.0...v0.7.1

v0.7.0

Choose a tag to compare

@pirog-spb pirog-spb released this 31 Jan 16:53

What's Changed

  • feat: UP initiated association setup by @kade-ddnkv in #497
  • feat: add PFCP URR entities management by @razor-87 in #568
  • feat: report URR on deleting of PDR by @pirog-spb in #571
  • feat: support configuring local IP address for N9 interface with N3 address by default by @pirog-spb in #585
  • fix: typo in PDR management log message by @pespin in #579
  • fix: wrong UDP checksum in proxied GTPv1U packets by @pespin in #580
  • fix: set message length for GTP Echo with sequence by @pirog-spb in #572
  • fix deploy open5gs-compose #547 by @PapaySail in #548
  • fix: use 1.22.4 golang version by @pirog-spb in #554
  • fix: simple fix for running tests by @razor-87 in #566
  • fix: packet metrics gathering by @pirog-spb in #584
  • deploy: remove fake routes from GnB's NetworkAttachmentDefinition in free5gc deployments by @PapaySail in #551
  • build: bump go version in Dockerfile by @pirog-spb in #569
  • refactor: improve xdp trace output by @pirog-spb in #573
  • docs: ports correction in install.md docker-compose templete by @sofianinho in #550
  • docs: fix wrong xdp mode config value by @pespin in #575
  • docs: fix typo in README.md text by @pespin in #578
  • docs: fix space problem in deployment commands in Readme.md by @piktaka in #559
  • style(docs): fix trailing whitespace in several files by @pespin in #582
  • style: fix trailing whitespace in several files by @pespin in #576

New Contributors

Full Changelog: v0.6.4...v0.7.0

v0.6.4

Choose a tag to compare

@pirog-spb pirog-spb released this 03 May 06:57
0f704de

What's Changed

  • fix: ignore SDF Filter with empty Flow Description by @pirog-spb in #538
  • fix: add NodeID to every Session Establishment/Modification/Deletion Response by @pirog-spb in #541
  • doc: revert GTP path management config description by @pirog-spb in #544
  • doc: deployments localization by @pirog-spb in #545
  • deploy: use new gradiant repo links by @pirog-spb in #546

Full Changelog: v0.6.3...v0.6.4

v0.6.3

Choose a tag to compare

@pirog-spb pirog-spb released this 06 Mar 11:53
741cfdf

What's Changed

  • docs: simplify quickstart command for running eupf and add note about bpffs by @pirog-spb in #533

Full Changelog: v0.6.2...v0.6.3

v0.6.2

Choose a tag to compare

@pirog-spb pirog-spb released this 15 Feb 21:18
b5d4099

What's Changed

Full Changelog: v0.6.1...v0.6.2

v0.6.1

Choose a tag to compare

@pirog-spb pirog-spb released this 25 Jan 09:32

What's Changed

Full Changelog: v0.6.0...v0.6.1

v0.6.0

Choose a tag to compare

@pirog-spb pirog-spb released this 05 Dec 17:51
d3e78b8

What's Changed

Full Changelog: v0.5.2...v0.6.0

v0.5.2

Choose a tag to compare

@pirog-spb pirog-spb released this 01 Nov 13:10
e6521e4

What's Changed

New Contributors

Full Changelog: v0.5.1...v0.5.2