Thanks for the quick response, just as a follow up question:

If I do have a bundle, let's say the received.bundle from local, is there a way to split up its payload into smaller payloads and make each new payload its own bundle?  My objective is to send in a file and then break it up into smaller payloads then choose among them to send to other nodes.

Thanks,
Carson


On Mon, Nov 7, 2011 at 10:47 AM, Johannes Morgenroth <morgenro@ibr.cs.tu-bs.de> wrote:
Hello Carson.

Am 07.11.2011 16:25, schrieb Carson Dunbar:
> I'm fairly new to the IBR-DTN router and was working on creating my
> own routing protocol for it.  I had a couple of questions and Brenton
> Walker suggested that I post them here.
Brenton was right and welcome here. :-)

> 1.  Is there a way to get a block from a received bundle and split it
> up into several smaller blocks that I can then make into new bundles
> with new EIDs?
Each routing module has the ability to load bundle from the storage with
getBundle() and create new bundles. To announce the new bundles you
should inject it like the local apps do this...

dtn::core::BundleGeneratedEvent::raise(bundle);

>
> 2.  How does the bundle filter work?  When we pull bundles out of it
> to transfer, are they removed from the database as well?  I'm working
> on a data dissemination router and if there was a way to prevent that
> and maybe sequentially or randomly pull different data from the
> database as well, that would be useful.
The bundle filter is just a filter for the database. If you query for
some bundles they do not get removed. To get different bundles each time
you query, you should use a BundleList to select/reject offered bundles
in the shouldAdd() function.

Kind regards,
Johannes

--
Johannes Morgenroth     Institut fuer Betriebssysteme und Rechnerverbund
Tel.: +49-531-391-3249                           Muehlenpfordtstrasse 23
Fax.: +49-531-391-5936      TU Braunschweig         D-38106 Braunschweig