Content uploaded by Scott Burleigh
Author content
All content in this area was uploaded by Scott Burleigh on Aug 10, 2015
Content may be subject to copyright.
Interplanetary Overlay Network
An Implementation of the DTN Bundle Protocol
Scott Burleigh
Jet Pro
p
ulsion Laborator
y
py
California Institute of Technology
Pasadena, California
Scott.Burleigh@jpl.nasa.gov
12 January 2006
1
Back
g
round
g
• Reference implementation for the DTN Bundle
Pt l(BP)iDTN2 iti dtUCBkl
P
ro
t
oco
l (BP) i
s
DTN2
, ma
i
n
t
a
i
ne
d
a
tUCB
er
k
e
l
ey.
– Designed as a research vehicle.
Widely used well supported
–
Widely used
,
well supported
.
• Most DTN researchers are investigating terrestrial
applications for which DTN2 works very well
applications
,
for which DTN2 works very well
.
• Space flight applications impose different constraints,
motivatin
g
develo
p
ment of an alternative BP
gp
implementation for use in space flight missions.
• Interplanetary Overlay Network (ION) is a space flight
implementation of BP, developed at NASA’s Jet
Propulsion Laboratory.
12 January 2006
2
Constraints on a Fli
g
ht Im
p
lementation
gp
• Link constraints
All i ti i l ll l t i
–
All
commun
i
ca
ti
ons are w
i
re
l
ess, genera
ll
y s
l
ow, asymme
t
r
i
c.
• From spacecraft to ground: 256 Kbps to 6 Mbps.
• From ground to spacecraft: 1 to 2 Kbps.
– Links are very expensive, virtually always oversubscribed.
– Fine-grained transmission, small bundle payloads.
•
Immediate delivery of partial data is often OK
Immediate delivery of partial data is often OK
.
• Processor constraints
– Flight processors typically run real-time operating systems
(V W k ® RTEMS™) l ki t t d d l
(V
x
W
or
k
s
®
,
RTEMS™) l
ac
ki
ng pro
t
ec
t
e
d
memory mo
d
e
l
s.
– Robustness is paramount. No malloc and free or standard
new and delete; must not crash other flight software.
– Processing efficiency is important:
• Slow (radiation-hardened) processors.
•
Relatively slow non
-
volatile storage: flash memory.
12 January 2006
3
Relatively slow non
volatile storage: flash memory.
ION’s Diver
g
ence From DTN2
g
Design Element DTN2 ION Rationale
L
C
C
Piffii
L
anguage
C
++
C
P
rocess
i
ng e
ffi
c
i
ency, memory
management visibility.
Memory management new,delete PSM No dynamic system memory
management permitted
management permitted
.
Non-volatile storage
management Berkeley DB,
RDBMS (MySQL) SDR persistent
objects Processing efficiency, footprint.
Locus of processing dtnd daemon
process, separate
routing engine
highly distributed:
forwarders, ducts,
applications, and
admin tools
Robustness (module simplicity,
incremental upgrade; prevent
head-of-line blocking); simplify
flow control.
admin tools
flow control.
Locus of node state (e.g.,
queues) private memory
of dtnd daemon shared memory Support distributed functionality,
limit impact of demand spikes.
Application Programming
remote procedure
shared library
Support real
time operations:
Application Programming
Interface
remote procedure
calls to dtnd
shared library
functions act on
shared memory
Support real
-
time operations:
prevent blocking, support
deterministic execution.
Endpoint IDs in bundle’s only ASCII URIs supports CBHE Bandwidth efficiency.
12 January 2006
4
primary block in dictionary
Implementation Layers
ION
SLit
SDR
ZCO
Operating System
PSM
S
m
Li
s
t
SDR
Platform
Operating System
ION Interplanetar
y
Overla
y
Network libraries and daemons
yy
ZCO zero-copy objects capability: minimize data copying up and down the stack
SDR Spacecraft Data Recorder: persistent object database in shared
memory, using PSM and SMList
SmList linked lists in shared memory using PSM
PSM Personal Space Management: memory management within a
pre-allocated memory partition
Platform common access to O.S.: shared memory, system time, IPC mechanisms
Operating System POSIX thread spawn/destroy, file system, time
12 January 2006
5
Com
p
ressed Bundle Header Encodin
g
pg
• For a CBHE-conformant scheme, every endpoint ID is
scheme name
:
element nbr
service nbr
scheme
_
name
:
element
_
nbr
.
service
_
nbr
– 65,535 schemes supported. Up to 16,777,215 elements (i.e.,
nodes) per scheme. Up to 65,535 services per scheme.
–
Service
~= “
demux token
”
or IP protocol number All administrative
Service demux token or IP protocol number
.
All administrative
bundles are service number zero.
• CBHE limits primary bundle header length to 34 bytes.
–
Dictionary not needed so it
’
s omitted
–
Dictionary not needed
,
so it s omitted
.
Destination offsets Source offsets Report-to offsets Custodian offsets
N
CBHE
Scheme SSP Scheme SSP Scheme SSP Scheme SSP
N
on-
CBHE
Common
Scheme
number
Destination
Element number Source
Element number Report-to
Element number Custodian
Element number
Service
Number
for source &
destination
CBHE
12 January 2006
6
ION Database Structure
inbound
bundles application process
endpoints schemes bundles to
forward
incomplete
(inbound)
bundles
ION database
timeline
inducts
all bundles (waiting
for TTL expiration)
timeline
convergence
layer input
forwarder
CL
protocols
outducts
outbound
bdl
DTN clock
forwarder
outducts
b
un
dl
es
convergence
ltt
12 January 2006
7
l
ayer ou
t
pu
t
Processin
g
Flow
Application
g
send receive
delivery
queue
forwarding
forwarding
queue
Forwarder
transmission
queue
ION database
CLO
local protocol
CLI
local protocol dispatch
12 January 2006
8
Performance
DTN Bandwidth Tests
800
900
600
700
800
b
its/second)
2 nodes DTN2 RAM
3 nodes DTN2 RAM
5120
10240
15360
20480 51200 102400204800
25600
300
400
500
g
e Data Rate (M
b
2 nodes DTN2 disk
3 nodes DTN2 disk
2 nodes ION RAM
3 nodes ION RAM
110 100
500750
1024
0
100
200
Avera
g
1.00E+00 1.00E+01 1.00E+02 1.00E+03 1.00E+04 1.00E+05 1.00E+06
Data Size (Kilobytes)
IONfliht ft f t it b t708kilbt i ldi SDRdtb t t
12 January 2006
9
ION fli
g
ht
so
ft
ware
f
oo
t
pr
i
n
t
: a
b
ou
t 708 kil
o
b
y
t
es
i
nc
l
u
di
ng
SDR d
a
t
a
b
ase managemen
t
sys
t
em.
Evaluation Co
p
ies Distributed To Date
p
• NASA
Goddard Space Flight Center
–
Goddard Space Flight Center
– Marshall Space Flight Center
– Ames Research Center
Gl R h C t
–
Gl
enn
R
esearc
hC
en
t
e
r
– Johnson Space Center
– Constellation project
• Other US
– Johns Hopkins University Applied Physics Laboratory
– Cal Poly San Luis Obispo
– Ohio University
– MITRE Corporation
–
In
te
rf
ace & Co
n
t
r
o
l
Syste
m
s
te ace & Co t o Syste s
• ESA (European Space Agency)
• CNES (French national space agency)
12 January 2006
10
Status of ION
• Conforms to version 4 of the BP specification (August
2006) U d t i 5 (D b 2006) i i
2006)
.
U
pgra
d
e
t
o vers
i
on
5(D
ecem
b
er
2006) i
s
i
n
progress.
Implements c stod transfer stat s reports deli er
•
Implements c
u
stod
y
transfer
,
stat
u
s reports
,
deli
v
er
y
options, priority, reassembly from fragments, flow
control congestion control
control
,
congestion control
.
• Tested in Red Hat Linux 8+, Fedora Core 3+, on 32-
bit and 64-bit
p
rocessors. Also in VxWorks 5.4 on
p
PowerPC 750.
• Interoperability with DTN2 (and other Bundle Protocol
implementations: C# .Net, Symbian) demonstrated at
IETF in San Diego, November 2006.
12 January 2006
11
Summar
y
y
• ION is an implementation of the Delay-Tolerant
Nt ki B dl P t lthti d i df
N
e
t
wor
ki
ng
B
un
dl
e
P
ro
t
oco
lth
a
ti
s
d
es
i
gne
df
or use
in spacecraft flight software.
Testing to date s ggests that it ill be s itable for this
•
Testing to date s
u
ggests that it
w
ill be s
u
itable for this
purpose.
•
Development and evaluation are continuing
•
Development and evaluation are continuing
.
12 January 2006
12
End
of
File