Skip to content

router: Add an underlay implementation that uses AF_XDP. #4734

@jiceathome

Description

@jiceathome

This task aims at obtaining the best network IO performance we can for the router while keeping with the mainstream Linux APIs.

AF_XDP admits several usage mode, depending on driver capabilities; one of which named zero-copy. We shall attempt to use that if available. This is not necessarily as fast as DPDK, which can map the entire device in use space.

The option of adding a DPDK implementation was considered and rejected for the following reasons:

  • XDP is improving and catching up with DPDK, making DPDK obsolete and the efforts wasted.
  • DPDK creates complicated build constraints in terms of available libraries, platforms and devices.
  • Once the router as support for multiple underlay implementations, a vendor desiring to specialize a SCION implementation for a subset of devices via DPDK can implement a new DPDK underlay. It allows vendors to have some proprietary value-add if they so chose.

Metadata

Metadata

Assignees

Labels

workitemSomething needs doing

Type

No type
No fields configured for issues without a type.

Projects

Status

No status

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions