Skip to content

Latest commit

 

History

History
78 lines (57 loc) · 3.51 KB

README.md

File metadata and controls

78 lines (57 loc) · 3.51 KB

PANAPI - Path-aware Networking API

Go Go Report Card Go Reference License

PANAPI is an early research implementation of a next-generation networking API to the transport layer. The latter is currently under development in the IETF TAPS working group. PANAPI is an open-source project that adds support for the SCION network architecture to a general purpose TAPS-like networking API. It is funded by the EU NGI Pointer initiative.

For more details, please check out the following links:

import "panapi" - The PANAPI Library

cmd/daemon - The PANAPI Daemon

Protocol support

  • TCP/IP support
  • QUIC/IP support
  • UDP/IP support
  • QUIC/SCION support
  • UDP/SCION support

Features

Path selection

  • Scriptable path selector, implementing pan.Selector
    • working Lua Data model
    • working path ranking
    • live access to connection preferences like CapacityProfile
  • Central path selection Daemon

Path quality

  • Passive throughput monitoring
  • Exposed to Lua script

Convenience features

  • Different log levels

Other

  • Full test coverage
  • Code Documentation
  • Move scripting selector to /pkg such that it could be used without the rest of PANAPI

Ported Applications

  • spate traffic generator
  • concurrent code example client/server timestamp echoing
  • http
    • server
    • client

Affiliations

OVGU

NGI Pointer

SCION