Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

ironcore-dev/dpservice

Open more actions menu

Dataplane Service

REUSE status GitHub License PRs Welcome

Overview

Dataplane Service in short form dpservice is a L3 virtual router with basic L2 capabilites and with IP in IPv6 tunneling for the uplink traffic. It uses SRIOV based Virtual Functions as its virtual ports. A virtual machine or a bare metal machine (In case dpservice running directly on SmartNIC) can be plugged to SRIOV VFs.

  • It can operate in offloaded and non-offloaded mode.

    • Offload mode means first packet of each flow flowing over dpservice will be handled in software and then the flow will be offloaded to the hardware. (Using DPDK rte_flow)
    • Non-offloaded mode handles the whole traffic in software using PMD drivers and dedicated CPU cores.
  • Uses DPDK Graph Framework for the data plane.

  • rte_flow offloading between the Virtual Machines(VMs) on a single hypervisor and ip in ipv6 decap/encap offloading between hypervisors.

  • GRPC support to add virtual network interfaces and routes. There is a C++ based GRPC test client (CLI) which can connect to the GRPC server. See the examples under docs.

  • There is also a golang based GRPC client which is easier to use.

  • A kubernetes controller abstraction on top of the provided GRPC interface is availiable as well. It is called metalnet.

  • DHCPv4, DHCPv6, Neighbour Discovery, ARP protocols supported (Sub-set implementations.).

  • IPv4 and IPv6 overlay support.

  • Virtual IP support for the virtual network interfaces.

  • Loadbalancer support with maglev hashing.

  • Horizantally scalable NAT Gateway support.

  • Automated test support with pytest and scapy.

Installation, using and developing

For more details please refer to documentation folder docs

Contributing

We`d love to get a feedback from you. Please report bugs, suggestions or post question by opening a Github issue

License

Apache License 2.0

About

DPDK based fast Dataplane / L3 router / SDN enabler, installable on compute nodes / SmartNICs

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Morty Proxy This is a proxified and sanitized view of the page, visit original site.