# aregm/nff-go

NFF-Go -Network Function Framework for GO (former YANFF)

Repository: https://github.com/aregm/nff-go
Canonical: https://ross.abutalabs.com/products/nff-go
Language: Go
License: BSD-3-Clause
License Family: permissive
Topics: dpdk, golang, networking, vnf, go, linux, containers, intel, network-functions, packet-processing, scalable, ipsec, dpdk-driver, cloud-native, cloud, microservices, scalable-networking, nfv-framework
Last push: 2022-11-22T20:34:23+00:00

## Health v2 (maintenance only)
Score: 23/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 0, release rhythm 8, longevity 100
- inputs: {"age_days": 3444, "days_push": 1380, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1419, forks 160 (observed 2026-08-28T04:04:40.344833+00:00)

## What it is
NFF-Go is a set of Go libraries for building and deploying high-performance, cloud-native network functions (NFs) on top of DPDK and AF_XDP. It provides higher-level abstractions than DPDK, a flow-based programming model, and automatic scaling of packet processing across cores.

## Use cases
- build a high-performance packet-processing firewall in Go
- write network functions without deep DPDK expertise
- implement an ACL-based L3 firewall
- process packets from DPDK PMDs and Linux AF_XDP with one codebase
- auto-scale packet processing based on traffic load
- deploy network functions as cloud-native containers

## When to choose
- you need DPDK-class packet throughput but prefer Go over C
- you want to build NFV/VNF workloads as cloud-native microservices
- you want automatic core scaling of packet pipelines
- you need to handle packets from multiple driver types with a single application

## When to avoid
- you need a framework with active ongoing development and recent community activity
- you target platforms other than Linux
- you need full low-level DPDK control or features not exposed by the framework
- your team is not comfortable with Go

## Facets
- artifact type: framework
- maturity: maintenance
- function: networking, middleware, concurrency, cryptography
- domain: networking, cloud-computing, developer-tools, microservices
- platform: go
- tags: dpdk, nfv, vnf, packet-processing, cloud-native, af-xdp, ipsec, network-functions, linux, docker

## Member repositories
- aregm/nff-go (main) score 23

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:40.344833+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:37:52.136795+00:00, confidence not recorded.
  - readme: https://github.com/aregm/nff-go (fetched 2026-08-28T04:04:40.344833+00:00, sha 0de12bd5e109)
- Data as of 2026-08-30T08:39:29.467469+00:00.
