This document tries to list the various features of Bundle Protocol(BP) (RFC5050, RFC9171) implementations, based on the Delay and Disruptive Tolerant Networking concept. Current work on the Bundle Protocol Suite is done in the IETF DTN working group and CCSDS DTN working group.
This page content is based on reading documentation or information from the developers. When a cell is empty, it means not verified or unknown, maybe not implemented but not confirmed (to be not implemented). There is no guarantee of accuracy. This list is not a comprehensive list of all BP implementations. The criteria to be on this public list is that the software source code is available or a public page listing the features of the software can be referenced.
If you have modifications/additions to suggest, please send a PR or write an issue at the source github repo or send email.
Feature/Stack | Subfeature | ION ION-Core | IONE | HDTN | uD3TN | DTNME | BPLib/CFS | Unibo | IBR | dtn7-rs |
---|---|---|---|---|---|---|---|---|---|---|
BPv6 | Y | Y | Y | Y | Y | Y | N | Y | N | |
TCPCLv3 | Y | Y | Y | Y | Y | N | Y | N | ||
UDPCL | Y | Y | Y | N | Y | N | Y | N | ||
LTPv1 | Y | Y | Y | N | Y | N | N | N | ||
BPSEC | Y | Y | N | N | N | N | Y | N | ||
Custody BPv6 | Y | Y | Y | N | Y | N | N | |||
BPv7 | Y | Y | Y | Y | Y | Y | Y | N | Y | |
TCPCLv3 | Y | Y | Y | Y | Y | Y | N | N | ||
TCPCLv4 | Y | Y | Y | N | Y | N | N | Y | ||
UDPCL | Y | Y | Y | N | Y | N | N | N | ||
LTPv1 | Y | Y | Y | N | Y | Y | N | N | ||
BPSEC | Y | Y | Y | N | N | N | N | N | ||
Custody (with BIBE) | Y | Y | N | Y | N | N | N | |||
RTP | N | N | Y | N | N | N | N | |||
CGR, SABR | Y | Y | Y | N | N | Y | Y | N | ||
CCSDS SPP | N | N | N | Y | N | N | N | N | ||
Bundle Streaming Service Protocol | Y | Y | N | N | N | N | N | N | ||
Asynchronous Message Service | Y | Y | N | N | N | N | N | N | ||
IPv6 (for CLAs) | N | Y | N | Y | N | Y | Y | Y | ||
IPND | Y | Y | N | N | N | N | Y | N | ||
CFDP | Y | Y | N | N | Y | N | N | N | ||
Primary Language | C | C | C++ | C | C++ | C | C++ | C++ | rust |
- DTNME: as of 20231102, many claimed features such as BPv7 are not in the master branch but in v1.2.0_Beta branch.
- IBR: from Lars Wolf: "as with some other university projects, it happens that the software gets outdated and is not well maintained any more."
- dtn7-rs: BPsec implementation not upstream yet, IPND implementation heavily modified to use CBOR similar to BPv7
There are additional BP implementations that are not listed here, because either there are unknown to this site maintainer or because their specifications are not public. The latter includes: ESA, JAXA.
Thanks to Scott Burleigh(ION, IONE), Scott Johnson(IONE), Felix Walter(uD3TN), Joshua Deaton(DTNME), HDTN team, Carlo Caini(Unibo), Lorenzo Persampieri(Unibo), Lars Wolf(IBR), Lars Baumgaertner(dtn7-rs) for providing information on their implementations.