performance comparison of dtn bundle protocol implementations

17
Performance Comparison of DTN Bundle Protocol Implementations Wolf-Bastian P¨ ottner, Johannes Morgenroth, Sebastian Schildt, Lars Wolf September 23, 2011: CHANTS Workshop, Las Vegas, NV

Upload: others

Post on 30-May-2022

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Performance Comparison of DTN Bundle Protocol Implementations

Performance Comparison of DTN Bundle ProtocolImplementations

Wolf-Bastian Pottner, Johannes Morgenroth, Sebastian Schildt, Lars Wolf

September 23, 2011: CHANTS Workshop, Las Vegas, NV

Page 2: Performance Comparison of DTN Bundle Protocol Implementations

Motivation

Several Bundle Protocol (BP) implementations for Linux exist

DTN2: DTNRG’s reference implementation

IBR-DTN: Implementation for embedded OpenWRT devices

ION: JPL’s implementation for spacecrafts running on RTOS

Postellation: Viagenie’s closed-source (?) BP implementation

Spindle: Closed-source BP implementation by Raytheon BBNTechnologies

Performance?

No quantitative evaluation and comparison has been performed(yet)

Pottner, Morgenroth, Schildt, Wolf | Bundle Protocol Performance | 2

Page 3: Performance Comparison of DTN Bundle Protocol Implementations

Motivation (cont’d)

Why is performance evaluation of BP implementations important?

Contacts are rare and short, communication has to be efficient

Broken interoperability can point out ambiguities in the specs

Goals of this paper

Concentrate on open-source TCPCL implementations for Linux

Quantitative “test bench” performance evaluation

Quantitative opportunistic performance evaluation

Systematic evaluation of interoperability

Pottner, Morgenroth, Schildt, Wolf | Bundle Protocol Performance | 3

Page 4: Performance Comparison of DTN Bundle Protocol Implementations

Metrics

Application Layer Throughput

For different storage backends

Between different implementations

In an opportunistic scenario

Interoperability

Can implementations discover each other?

Throughput between different implementations

Communication Efficiency

In an opportunistic scenario

Pottner, Morgenroth, Schildt, Wolf | Bundle Protocol Performance | 4

Page 5: Performance Comparison of DTN Bundle Protocol Implementations

Experimental Setup

Hardware

Athlon II X4 2.8 GHz CPUs with 4 GiB RAM

1 GBit Ethernet (good for 940 MBit/s TCP goodput with iperf)

Different Ethernet ports for measurement and control traffic

Samsung Spinpoint F3 500GB (HD502HJ) hard drive

Software

Ubuntu Linux 11.04

DTN2 v2.7, IBR-DTN v0.6.3, ION v2.4.0

Connection blocked via iptables (IBR-DTN) or daemon’s controlinterface (DTN2, ION)

Pottner, Morgenroth, Schildt, Wolf | Bundle Protocol Performance | 5

Page 6: Performance Comparison of DTN Bundle Protocol Implementations

Storage Backends: BP Throughput

0

200

400

600

800

1000

1 10 100 1000 10000 100000 1e+06 1e+07

Bu

nd

le T

hro

ug

hp

ut

[MB

it/s

]

Bundle Payload Size [bytes]

DTN2 DiskDTN2 Mem

0

200

400

600

800

1000

1 10 100 1000 10000 100000 1e+06 1e+07

Bu

nd

le T

hro

ug

hp

ut

[MB

it/s

]

Bundle Payload Size [bytes]

DTN2 DiskDTN2 Mem

IBR-DTN DiskIBR-DTN Mem

0

200

400

600

800

1000

1 10 100 1000 10000 100000 1e+06 1e+07

Bu

nd

le T

hro

ug

hp

ut

[MB

it/s

]

Bundle Payload Size [bytes]

DTN2 DiskDTN2 Mem

IBR-DTN DiskIBR-DTN Mem

ION Disk (T)ION Mem (T)

Pottner, Morgenroth, Schildt, Wolf | Bundle Protocol Performance | 6

Page 7: Performance Comparison of DTN Bundle Protocol Implementations

Interoperability: Discovery, Bundle Exchange

Discovery Capabilities

DTN2 uses a “proprietary” discovery beacon format

IBR-DTN supports IPND v0 & v1 and DTN2 discovery format

ION is focussed on scheduled contacts only

Interoperability Evaluation Results

DTN2 and IBR-DTN discover each other just fine

Bundles can be exchanged in both directions

ION exchanges bundles with DTN2 and IBR-DTN

Pottner, Morgenroth, Schildt, Wolf | Bundle Protocol Performance | 7

Page 8: Performance Comparison of DTN Bundle Protocol Implementations

Interoperability: BP Throughput

Throughput (memory storage, 1 MByte payload size)HHHH

HHTX

RXDTN2 IBR-DTN ION

DTN2 687 MBit/s 635 MBit/s 93 MBit/s

IBR-DTN 881 MBit/s 679 MBit/s 90 MBit/s

ION 872 MBit/s 926 MBit/s 449 MBit/s

Observations

DTN2 may have a bottleneck in the TX component

IBR-DTN and ION show unclear bottlenecksshows unclearbottlenecks

Fastest result is between ION and IBR-DTN

Pottner, Morgenroth, Schildt, Wolf | Bundle Protocol Performance | 8

Page 9: Performance Comparison of DTN Bundle Protocol Implementations

Opportunistic Scenario: Setup

Scenario

A M B

Memory-based storage backends

A creates bundles for B at constant rate, M commutes from A to B

TCP throughput limited to 12.7 MBit/s (based on measurements)

Cycle: 72 s contact time, 30 s travel, 72 s contact time, 30 s travel

(almost) 9 complete cycles in 30 minutes measurement time

Pottner, Morgenroth, Schildt, Wolf | Bundle Protocol Performance | 9

Page 10: Performance Comparison of DTN Bundle Protocol Implementations

Opportunistic Scenario: Transferred Data

0

200

400

600

800

1000

250000 500000 1e+06 2e+06

Tra

nsf

erre

d D

ata

[MB

]

Bundle Payload Size [bytes]

DTN2IBR-DTN

theoretical Maximum

Pottner, Morgenroth, Schildt, Wolf | Bundle Protocol Performance | 10

Page 11: Performance Comparison of DTN Bundle Protocol Implementations

Opportunistic Scenario: Communication Efficiency

0

20

40

60

80

100

250000 500000 1e+06 2e+06

Co

mm

un

icat

ion

Eff

icie

ncy

[%

]

Bundle Payload Size [bytes]

DTN2IBR-DTN

theoretical Maximum

Pottner, Morgenroth, Schildt, Wolf | Bundle Protocol Performance | 11

Page 12: Performance Comparison of DTN Bundle Protocol Implementations

Conclusions

Motivation

Performance of BP implementations is important!

Comparison of three BP implementations: DTN2, IBR-DTN, ION

Results

All three implementations are interoperable

Performance varies widely and unpredictably

Fastest result between ION and IBR-DTN

Working with the implementations is not easy

More results

More results in our technical report (WiP, look for updates)

Mail me: [email protected]

Pottner, Morgenroth, Schildt, Wolf | Bundle Protocol Performance | 12

Page 13: Performance Comparison of DTN Bundle Protocol Implementations

BACKUP SLIDES

BACKUP SLIDES

Pottner, Morgenroth, Schildt, Wolf | Bundle Protocol Performance | 13

Page 14: Performance Comparison of DTN Bundle Protocol Implementations

Throughput (linear y)

0

200

400

600

800

1000

1 10 100 1000 10000 100000 1e+06 1e+07

Bundle

Thro

ughput

[MB

it/s

]

Bundle Payload Size [bytes]

DTN2 DiskDTN2 Mem

IBR-DTN DiskIBR-DTN Mem

ION Disk (T)ION Mem (T)

Pottner, Morgenroth, Schildt, Wolf | Bundle Protocol Performance | 14

Page 15: Performance Comparison of DTN Bundle Protocol Implementations

Throughput (logarithmic y)

0.001

0.01

0.1

1

10

100

1000

1 10 100 1000 10000 100000 1e+06 1e+07

Bundle

Thro

ughput

[MB

it/s

]

Bundle Payload Size [bytes]

DTN2 DiskDTN2 Mem

IBR-DTN DiskIBR-DTN Mem

ION Disk (T)ION Mem (T)

Pottner, Morgenroth, Schildt, Wolf | Bundle Protocol Performance | 15

Page 16: Performance Comparison of DTN Bundle Protocol Implementations

DTN2 Slowdown

0

50

100

150

200

250

1 2 3 4 5 6 7 8 9 10

Thro

ughput

[MB

it/s

]

Measurement Run

50e+03 Bytes Payload 100e+03 Bytes Payload

500e+03 Bytes Payload1000e+03 Bytes Payload

Pottner, Morgenroth, Schildt, Wolf | Bundle Protocol Performance | 16

Page 17: Performance Comparison of DTN Bundle Protocol Implementations

Interoperability: BP Throughput

Throughput (memory storage, 100 KByte payload size)HH

HHHHTX

RXDTN2 IBR-DTN ION

DTN2 197 MBit/s 193 MBit/s 72 MBit/s

IBR-DTN 677 MBit/s 542 MBit/s 76 MBit/s

ION 455 MBit/s 420 MBit/s 268 MBit/s

Throughput (memory storage, 1 MByte payload size)HHH

HHHTX

RXDTN2 IBR-DTN ION

DTN2 687 MBit/s 635 MBit/s 93 MBit/s

IBR-DTN 881 MBit/s 679 MBit/s 90 MBit/s

ION 872 MBit/s 926 MBit/s 449 MBit/s

Pottner, Morgenroth, Schildt, Wolf | Bundle Protocol Performance | 17