HBSD:
An External Router For DTN2
|
·
Overview
·
Global Architecture and Source Code
·
Implementation
·
Related Dependencies
·
Related Publications
·
Related Talks
·
People Involved
·
Contact
|
Design and Development of HBSD (our optimal joint scheduling and drop
policy for DTN) as an External Router for DTN2
Overview
As described in the papers presented in the
related publications section below, HBSD
(History Based Scheduling and Drop) is an efficient joint scheduling
and drop policy that can optimize different performance metrics in a DTN,
like average delay and delivery probability. We
have implemented HBSD for DTN2.
DTN2 is the current reference implementation
(in C++) for Delay Tolerant Networks
by the DTN Research Group. It acts as an additional networking layer
between the application layer and the transport layer. DTN2 encapsulates
application data into bundles, thus it is often called the "bundle
layer", and calls on the transport layer to forward bundles from one
node to the next. When two nodes are within range and have an established
connection on the transport layer, the "link" between them is
considered "open". While the transport layer, using traditional
networking protocols, ensures delivery of bundle data from one node to the
next, DTN2 is meant to ensure end-to-end delivery of bundles across the
entire network. The decision making aspect of the bundle
layer, which controls what bundles are sent over what links, is called the
router. DTN2 includes a number of internal routers, such as:
DTN2 includes also support for
external routers such as RAPID (developed in Java) and our
HBSD external router (developed in C++).
Global Architecture
& Source Code
As
described in the Figure 1, the HBSD external router run as separate processes
and communicates with DTN2 by sending and receiving XML messages over a
multicast socket. DTN2 sends XML event messages to a multicast socket, from
which the HBSD external router reads. HBSD external router then processes the
message, and may or may not decide to send back an XML request message,
prompting DTN2 to take action.
|