Displaying 1 to 6 from 6 results

cilium - HTTP, gRPC, and Kafka Aware Security and Networking for Containers with BPF and XDP

  •    Go

Cilium is open source software for providing and transparently securing network connectivity and loadbalancing between application workloads such as application containers or processes. Cilium operates at Layer 3/4 to provide traditional networking and security services as well as Layer 7 to protect and secure use of modern application protocols such as HTTP, gRPC and Kafka. Cilium is integrated into common orchestration frameworks such as Kubernetes and Mesos. A new Linux kernel technology called BPF is at the foundation of Cilium. It supports dynamic insertion of BPF bytecode into the Linux kernel at various integration points such as: network IO, application sockets, and tracepoints to implement security, networking and visibility logic. BPF is highly efficient and flexible. To learn more about BPF, read more in our extensive BPF and XDP Reference Guide.

p4c-xdp - Backend for the P4 compiler targeting XDP

  •    C

This work presents a P4 compiler backend targeting XDP, the eXpress Data Path. P4 is a domain-specific language describing how packets are processed by the data plane of a programmable network elements, including network interface cards, appliances, and virtual switches. With P4, programmers focus on defining the protocol parsing, matching, and action executions, instead of the platform-specific language or implementation details.XDP is designed for users who want programmability as well as performance. XDP allows users to write a C-like packet processing program and loads into the device driver's receiving queue. When the device observes an incoming packet, before hanging the packet to the Linux stack, the user-defined XDP program is triggered to execute against the packet payload, making the decision as early as possible.

prototype-kernel - Prototyping kernel development work outside mainline

  •    C

This project and GitHub repository is meant for speeding up Linux Kernel development work, this also includes Documentation. The directory layout tries to keep close to the Kernel directory layout. This helps when/if upstreaming the work. This prototype-kernel was primarily meant for prototyping kernel modules (see blogpost).

xdp-project - XDP project collaboration through a git-repo

  •    CSS

This git repository is a work-in-progress workspace for collaborating on the XDP project. It provides an easy and git-diff trackable way to share notes, benchmarks and work-in-progress items. Since the notes in this repository are kept in Emacs org-mode, spending a bit of time getting familiar with the setup and workflow is probably worthwhile.

xdp-tutorial - XDP tutorial

  •    C

This repository contains a tutorial that aims to introduce you to the basic steps needed to effectively write programs for the eXpress Data Path (XDP) system in the Linux kernel, which offers high-performance programmable packet processing integrated with the kernel. The tutorial is composed of a number of lessons, each of which has its own repository. Start with the lessons starting with “basicXX”, and read the README.org file in each repository for instructions for that lesson.

libkefir - Convert network filtering rules from various formats into BPF programs

  •    C

Libkefir – All your rules in one bottle. Libkefir is a C library designed to turn sets of simple network filtering rules into BPF programs, and to load and attach them to the Linux kernel.