Skip to content
Johannes Morgenroth edited this page Nov 21, 2016 · 33 revisions

This implementation of the bundle protocol RFC5050 is designed for embedded systems like the RouterBoard 532A or Ubiquiti RouterStation Pro and can be used as framework for DTN applications.

The module-based architecture with miscellaneous interfaces, makes it possible to change functionalities like routing or storage of bundle just by inheriting a specific class.



Technical Details and Configuration

Development of Clients/Apps

Development of IBR-DTN daemon


  • Runs on Debian, Ubuntu, Android, MacOS X, Raspberry Pi, BeagleBone
  • Bundle Protocol (RFC5050)
  • Bundle Security Protocol (RFC6257)
  • Socket based API
  • AgeBlock support and bundle age tracking (draft-irtf-dtnrg-bundle-age-block-01)
  • Scope Control Hop Limit Block support
  • Experimental support for compressed bundle payload
  • Bundle-in-Bundle support
  • IPv6 support
  • Applications: dtnsend, dtnrecv, dtntrigger, dtnping, dtntracepath, dtninbox, dtnoutbox, dtnstream
  • Convergence Layer
  • Routing Modules
    • Routing with static connections
    • Forward bundles on discovery
    • Epidemic routing with bloomfilter
    • Flooding routing scheme
    • PRoPHET Routing
  • Storage Modules
    • Memory-based storage
    • Persistent storage in file-system
    • SQLite Storage

Public Node

For participation in the DTN-Bone we setup a special node running our DTN software.

  • Geographic Location: Braunschweig, Germany, OH: 52.27321, 10.52521
  • Node DNS name or IP address: (
    • Buffalo Terastation Pro
    • Implementation: IBR-DTN 0.12
    • EID: dtn://
    • CL: TCP, UDP
    • Ports: 4556/tcp, 4556/udp
  • Applications
    • DTN camera 1: dtn://
    • DTN camera 2: dtn://
    • Send a picture to the cameras and you get a reply with a picture.
You can’t perform that action at this time.