Subject: Re: [dtn-users] Doxygen html
From: Jeff Wilson <[email-masked]>
To: [email-masked]
Date: Wed, 30 Mar 2005 16:33:01 -0600
List-Id: discussion/answers list for users of the dtn reference implementation <dtn-users.mailman.dtnrg.org>

Excellent!  Thanks for pointing that out.  (I've taken down my copy.)

      Regards,
        jw

Date: Wed, 30 Mar 2005 13:35:57 -0800
From: Michael Demmer <[email-masked]>
To: [email-masked]
Subject: Re: [dtn-users] Doxygen html
Sender: [email-masked]
Reply-To: [email-masked]

> Is there a publicly-accessible online posting of the HTML rendering
> of the Doxygen comments from the project?  I'm reading through the
> source code, and getting overwhelmed.

http://www.dtnrg.org/docs/code/DTN2/doc/doxygen/html/index.html

This will be kept up-to-date with the most recent release.

-m

Date: Wed, 30 Mar 2005 15:11:35 -0600
From: Jeff Wilson <[email-masked]>
To: [email-masked]
Subject: [dtn-users] Doxygen html
Sender: [email-masked]
Reply-To: [email-masked]

Hi folks,

Is there a publicly-accessible online posting of the HTML rendering of
the Doxygen comments from the project?  I'm reading through the source
code, and getting overwhelmed.

So rather than curse the darkness, I downloaded the doxygen tarball,
rendered today's CVS version, and posted it to
http://cs.baylor.edu/~wilsonj/research/doxygen/ ... hopefully others
will find it useful too.

Is that OK with the CVS maintainers?  I'll take it down if it's a problem ...

      Regards,
       jw

Date: Wed, 30 Mar 2005 12:52:50 -0800
From: Michael Demmer <[email-masked]>
To: [email-masked]
Subject: Re: [dtn-users] Startup Questions
Sender: [email-masked]
Reply-To: [email-masked]

> Please define/describe the "tuple" syntax.  The on-line

As a caveat, all this naming stuff has been and will continue to be in
flux for some time, so what i will describe is accurate now, but will
likely change in the near future.

> documentation has a link to "Architecture", but that section is
> empty.  I have searched through a lot of material and cannot find
> the basic syntax definition for this.  I take it part of the name is
> "region" and part of the name is "entity", and there are some
> keywords like "bundles" and "internet".  But what part is what and
> what are the rules and choices for constructing this?

The current syntax is: bundles://<region>/<schema>://<admin>

The <region> is an arbitrary string.

The <schema> should (for now) just be "host".

The <admin> should be of the form <hostname/ip>:<port?>/<demux_string>

> In my dtn.conf file, I have the default line:
> route local_tuple "bundles://internet/host://[info hostname]
> 
> This seems to generate verbatum "localhost.localdomain" for the [info 
> hostname] parameter (instead of my local DNS name), which doesn't seem 
> very useful.  Can I substitute my actual hostname (e.g. 
> "sdp.creare.com") for this?  I have tried experimenting with this 
> without much success.

You can put any valid dns name in there. The return from [info
hostname] is based on whatever tcl decides is the host name
configured. Probably the unix 'hostname' command, but I'm not totally
sure. 

What was the problem you ran into when using your real hostname?

> When I run the dtnping and dtnsend/dtnrecv demos, the dtnd console
> will build up pending bundles.  I.e., even though I seem to be able
> to ping and send/receive messages, when I issue the "bundle list"
> command, everything remains pending and isn't cleared from the
> bundles folder.  Is this expected behavior?

Not really, though they could perhaps be left over from a previous
run, since we don't (yet) actually implement bundle expirations. Try
running the daemon with the --tidy option which will clear out the
database and see if you still get bundle buildup.

If so, then post your config and the sequence of commands you use and
I may be able to help out.

-m

To: [email-masked]
From: Matt Miller <[email-masked]>
Date: Wed, 30 Mar 2005 11:52:24 -0500
Subject: [dtn-users] Startup Questions
Sender: [email-masked]
Reply-To: [email-masked]

Hi.

I have the DTN2 up and running.  I have a few basic questions.

Please define/describe the "tuple" syntax.  The on-line documentation 
has a link to "Architecture", but that section is empty.  I have 
searched through a lot of material and cannot find the basic syntax 
definition for this.  I take it part of the name is "region" and part 
of the name is "entity", and there are some keywords like "bundles" and 
"internet".  But what part is what and what are the rules and choices 
for constructing this?

In my dtn.conf file, I have the default line:
route local_tuple "bundles://internet/host://[info hostname]

This seems to generate verbatum "localhost.localdomain" for the [info 
hostname] parameter (instead of my local DNS name), which doesn't seem 
very useful.  Can I substitute my actual hostname (e.g. 
"sdp.creare.com") for this?  I have tried experimenting with this 
without much success.

When I run the dtnping and dtnsend/dtnrecv demos, the dtnd console will 
build up pending bundles.  I.e., even though I seem to be able to ping 
and send/receive messages, when I issue the "bundle list" command, 
everything remains pending and isn't cleared from the bundles folder.  
Is this expected behavior?

Thanks for any help!

Matt Miller
[email-masked]

Cc: "Lawrence C. Freudinger" <[email-masked]>, [email-masked], [email-masked]
From: Matt Miller <[email-masked]>
Date: Tue, 29 Mar 2005 15:57:33 -0500
To: Michael Demmer <[email-masked]>
Subject: [dtn-users] Re: [dtn-interest] Trying to run DTN2 demo
Sender: [email-masked]
Reply-To: [email-masked]

Thanks for the quick response.  I have downloaded the current CVS 
snapshot, and
it now seems to run (up through the dtnping step in the manual).

Next, I will make a first-cut interface to RBNB via mapping the 
dtn/bundles folder
to RBNB via WebDAV, from which the potential synergy can be explored.

- Matt Miller

On Mar 29, 2005, at 3:07 PM, Michael Demmer wrote:

>
> (reply posted to dtn-users and dtn-bugs)
>
> First off -- thanks -- you've caused me to find and fix a rare and
> hard to catch bug that has been popping up every now and then.
>
> The bug is in oasys/util/StringUtils.h, in the StringHash class where
> I accidentally call std::string::data(), not std::string::c_str(),
> which may cause the hash function to go past the end of the allocated
> part of the string.
>
> The current CVS snapshot has been updated with the bug fix, please
> download that (or make the above change) and see if it fixes your
> problem.
>
> And as I said before, please direct future questions like these to
> dtn-users (and sign up to the list if you haven't already).
>
> -mike
>
>> Hi. I working with Larry Freudinger of NASA DFRC.
>> We are trying to get the DTN2 installed and running on a Linux box
>> to evaluate it and possibly link it to our RBNB technology.  I am 
>> having
>> problems getting the DTN2 code running (per the DTN2 Manual).
>>
>> Is there someone who could help get me started?
>> I don't want to inappropriately clutter this forum, so respond 
>> directly
>> to
>> me if that is best. I am probably making a dumb mistake.
>>
>> Thanks!
>> Matt Miller
>> [email-masked]
>>
>>
>> Error printout at startup (it doesn't like udp interface it seems):
>>
>> daemon/dtnd -c /home/mjm/dtn/dtn.conf --init-db
>> [1112106892.145595 /dtnd info] Bundle Daemon Initializing...
>> [1112106892.145630 /dtnd info] random seed is 145629
>> [1112106892.229823 /dtnd info] parsing configuration file
>> /home/mjm/dtn/dtn.conf...
>> [1112106892.230252 /dtnd info] dtnd parsing configuration...
>> [1112106892.231783 /interface info] adding interface tcp
>> host://0.0.0.0:5000/
>> [1112106892.232457 /bundle/tuple error] unknown schema 'host' in admin
>> 'host://0.0.0.0:6000/'
>> [1112106892.232559 /command error] error: line 94: 'invalid interface
>> admin string 'host://0.0.0.0:6000/'':
>> invalid interface admin string 'host://0.0.0.0:6000/'
>>     while executing
>> "interface add udp host://0.0.0.0:6000/"
>>     (file "/home... (truncated)
>>
>> If I comment out the udp line, it successfully initializes the
>> database, and starts the dtnd.
>> But when I try the ping app:
>>
>> DTN2/apps/dtnping/dtnping bundles://internet/host://0.0.0.0:5000
>> source_tuple [internet host://localhost.localdomain/ping.0]
>> replyto_tuple [internet host://localhost.localdomain/ping.0]
>> dtn_register succeeded, regid 0xf
>> checking for bundles already queued...
>> PING [internet host://0.0.0.0:5000]...
>> error sending bundle: 129 (payload too large)
>>
>> The dtnd output for this is:
>> [1112107958.941821 /bundle/tuple error] unknown schema 'host' in admin
>> 'host://localhost.localdomain/ping.0'
>> [1112107958.941843 /bundle/tuple error] no address family for admin in
>> 'bundles://internet/host://localhost.localdomain/ping.0'
>> [1112107958.941860 /bundle/tuple error] invalid admin tuple in
>> 'bundles://internet/host://localhost.localdomain/ping.0'
>> [1112107958.947794 /registration info] adding registration
>> 16/bundles://internet/host://localhost.localdomain/ping.0
>> [1112107958.956081 /bundle/tuple error] unknown schema 'host' in admin
>> 'host://localhost.localdomain/ping.0'
>> [1112107958.956103 /bundle/tuple error] no address family for admin in
>> 'bundles://internet/host://localhost.localdomain/ping.0'
>> [1112107958.956121 /bundle/tuple error] invalid admin tuple in
>> 'bundles://internet/host://localhost.localdomain/ping.0'
>> [1112107958.956136 /apisrv error] invalid replyto tuple [internet
>> host://localhost.localdomain/ping.0]
>>
>> _______________________________________________
>> dtn-interest mailing list
>> [email-masked]
>> http://mailman.dtnrg.org/mailman/listinfo/dtn-interest
>

Date: Tue, 29 Mar 2005 12:07:01 -0800
From: Michael Demmer <[email-masked]>
To: Matt Miller <[email-masked]>
Cc: [email-masked], [email-masked]
Subject: [dtn-users] Re: [dtn-interest] Trying to run DTN2 demo
Sender: [email-masked]
Reply-To: [email-masked]

(reply posted to dtn-users and dtn-bugs)

First off -- thanks -- you've caused me to find and fix a rare and
hard to catch bug that has been popping up every now and then.

The bug is in oasys/util/StringUtils.h, in the StringHash class where
I accidentally call std::string::data(), not std::string::c_str(),
which may cause the hash function to go past the end of the allocated
part of the string.

The current CVS snapshot has been updated with the bug fix, please
download that (or make the above change) and see if it fixes your
problem.

And as I said before, please direct future questions like these to
dtn-users (and sign up to the list if you haven't already).

-mike

> Hi. I working with Larry Freudinger of NASA DFRC.
> We are trying to get the DTN2 installed and running on a Linux box
> to evaluate it and possibly link it to our RBNB technology.  I am having
> problems getting the DTN2 code running (per the DTN2 Manual).
> 
> Is there someone who could help get me started?
> I don't want to inappropriately clutter this forum, so respond directly 
> to
> me if that is best. I am probably making a dumb mistake.
> 
> Thanks!
> Matt Miller
> [email-masked]
> 
> 
> Error printout at startup (it doesn't like udp interface it seems):
> 
> daemon/dtnd -c /home/mjm/dtn/dtn.conf --init-db
> [1112106892.145595 /dtnd info] Bundle Daemon Initializing...
> [1112106892.145630 /dtnd info] random seed is 145629
> [1112106892.229823 /dtnd info] parsing configuration file 
> /home/mjm/dtn/dtn.conf...
> [1112106892.230252 /dtnd info] dtnd parsing configuration...
> [1112106892.231783 /interface info] adding interface tcp 
> host://0.0.0.0:5000/
> [1112106892.232457 /bundle/tuple error] unknown schema 'host' in admin 
> 'host://0.0.0.0:6000/'
> [1112106892.232559 /command error] error: line 94: 'invalid interface 
> admin string 'host://0.0.0.0:6000/'':
> invalid interface admin string 'host://0.0.0.0:6000/'
>     while executing
> "interface add udp host://0.0.0.0:6000/"
>     (file "/home... (truncated)
> 
> If I comment out the udp line, it successfully initializes the 
> database, and starts the dtnd.
> But when I try the ping app:
> 
> DTN2/apps/dtnping/dtnping bundles://internet/host://0.0.0.0:5000
> source_tuple [internet host://localhost.localdomain/ping.0]
> replyto_tuple [internet host://localhost.localdomain/ping.0]
> dtn_register succeeded, regid 0xf
> checking for bundles already queued...
> PING [internet host://0.0.0.0:5000]...
> error sending bundle: 129 (payload too large)
> 
> The dtnd output for this is:
> [1112107958.941821 /bundle/tuple error] unknown schema 'host' in admin 
> 'host://localhost.localdomain/ping.0'
> [1112107958.941843 /bundle/tuple error] no address family for admin in 
> 'bundles://internet/host://localhost.localdomain/ping.0'
> [1112107958.941860 /bundle/tuple error] invalid admin tuple in 
> 'bundles://internet/host://localhost.localdomain/ping.0'
> [1112107958.947794 /registration info] adding registration 
> 16/bundles://internet/host://localhost.localdomain/ping.0
> [1112107958.956081 /bundle/tuple error] unknown schema 'host' in admin 
> 'host://localhost.localdomain/ping.0'
> [1112107958.956103 /bundle/tuple error] no address family for admin in 
> 'bundles://internet/host://localhost.localdomain/ping.0'
> [1112107958.956121 /bundle/tuple error] invalid admin tuple in 
> 'bundles://internet/host://localhost.localdomain/ping.0'
> [1112107958.956136 /apisrv error] invalid replyto tuple [internet 
> host://localhost.localdomain/ping.0]
> 
> _______________________________________________
> dtn-interest mailing list
> [email-masked]
> http://mailman.dtnrg.org/mailman/listinfo/dtn-interest

Date: Mon, 28 Mar 2005 08:43:13 -0800
From: Michael Demmer <[email-masked]>
To: [email-masked]
Subject: Re: [dtn-users] documents from March 2003
Sender: [email-masked]
Reply-To: [email-masked]

> Several weeks ago, I downloaded some documents from dtnrg.org: a PS
> document with the name "Keith Scott" on it, "version 0.2" of the API
> reference for the bundle daemon, dated March 2003; "Bundle Daemon v1";
> and Forrest Warthman's DTN tutorial.  Seems like March 2003 was a
> season for documentation.  Have these documents been revised since
> then?  After 2 years, are any still relevant to the reference
> implementation?

Both of the documents that Keith wrote are at this point woefully out
of date with respect to the second major version of the reference
implementation, as both the internal architecture and the API have
change significantly.

Date: Mon, 28 Mar 2005 10:18:46 -0600
From: Jeff Wilson <[email-masked]>
To: [email-masked]
Subject: [dtn-users] documents from March 2003
Sender: [email-masked]
Reply-To: [email-masked]

Several weeks ago, I downloaded some documents from dtnrg.org: a PS
document with the name "Keith Scott" on it, "version 0.2" of the API
reference for the bundle daemon, dated March 2003; "Bundle Daemon v1";
and Forrest Warthman's DTN tutorial.  Seems like March 2003 was a
season for documentation.  Have these documents been revised since
then?  After 2 years, are any still relevant to the reference
implementation?

I would be interested in bringing these up to date, but I'm just
scratching the surface of this project; are there others who would be
better qualified ... ?

      thanks for your time,
      jw

Date: Thu, 24 Mar 2005 16:04:23 -0800
From: Melissa Ho <[email-masked]>
To: Michael Demmer <[email-masked]>
CC: Darren Long <[email-masked]>, [email-masked], [email-masked]
Subject: [dtn-users] Re: [dtn-interest] Using getaddrinfo() on Mac OS X causes bad name/address lookup in dtnd
Sender: [email-masked]
Reply-To: [email-masked]

Cross-posting to dtn-users list.

Michael Demmer wrote:

>Thanks. I've actually done a better fix that passes the appropriate
>hints to getaddrinfo() to force it to return an IPv4 address, which
>I've tested and works on OS X.
>
>This fix is currently available from the CVS snapshot, and will be
>folded into a bug fix release coming soon.
>
>-m
>
>  
>
>>Hi,
>>
>>I seem to have found an issue with dns lookups in dtnd running on Mac  
>>OS X.
>>
>>With:
>>	 link add tcp0 host://name:5000 ONDEMAND tcp
>>
>>added to my dtn.conf, I got connection attempts to strange IP adresses.  
>> Correct behaviour was observed when I replaced name with the IP  
>>address in the dtn.conf line instead.
>>
>>As this works fine on my intel based Linux box, but not on the PowerPC  
>>based iBook. I dug into the code and found in NetUtils.cc in function:
>>	int gethostbyname(const char* name, in_addr_t* addr)
>>
>>on line number 166:
>>
>>	    err = getaddrinfo(name, 0, 0, &res);
>>
>>the call results in an incorrect address being returned via addr, as  
>>show in context below.
>>
>>/* comment out this block for Mac OS X workaround
>>#elif defined(HAVE_GETADDRINFO)
>>
>>    struct addrinfo *res;
>>    int              err;
>>
>>    err = getaddrinfo(name, 0, 0, &res);
>>    if(err != 0)
>>        return -1;
>>
>>    ASSERT(res != 0);
>>    *addr = ((struct in_addr*) &res->ai_addr)->s_addr;
>>
>>    freeaddrinfo(res);
>>    return 0;
>>
>>*/
>>/* End Mac OS X workaround
>>
>>#elif defined(HAVE_GETHOSTBYNAME)
>>
>>
>>Commenting out the #elif defined(HAVE_GETADDRINFO) block lets the name  
>>lookup processing be handled by the #elif defined(HAVE_GETHOSTBYNAME)  
>>block, resulting in a call to getaaddrinfo() instead.  I'm not sure  
>>what side affects this may have, but for a quick hack it seems to be  
>>successful, and the name lookups now return valid IPv4 addresses.
>>
>>I've noticed that other sites report problems with getaddrinfo on Mac  
>>OS X  
>>(http://www.geektimes.com/macintosh/os/x/10_0/and/ 
>>openssh_install.html).  I'm not sure that I'm best suited to figuring  
>>out a long-term solution.
>>
>>I'm keen to find a way to make better use of dynamic DNS  now.  With a  
>>dyndns.org client running on my iBook, I'd like my server to be able to  
>>find my iBook both on my wireless LAN and when I'm out in the world  
>>using GPRS.  Nicely enough, the dyndns.org client on the iBook results  
>>in the dynamic DNS system reporting my local private IP when I'm on the  
>>wireless LAN, and the ISP assigned one when I get a GPRS connection  
>>through my phone over bluetooth, so the dtnd on my server could  
>>potentially respond to a changing IP address when opening a link.  Is  
>>this feasible?
>>
>>cheers
>>
>>Darren
>>
>>In theory, theory and practice are the same.  In practice, they are not.
>>
>>_______________________________________________
>>dtn-interest mailing list
>>[email-masked]
>>http://mailman.dtnrg.org/mailman/listinfo/dtn-interest
>>    
>>
>_______________________________________________
>dtn-interest mailing list
>[email-masked]
>http://mailman.dtnrg.org/mailman/listinfo/dtn-interest
>
>  
>

Date: Thu, 24 Mar 2005 12:43:00 -0800
From: Michael Demmer <[email-masked]>
To: [email-masked]
Subject: Re: [dtn-users] Polling vs. Callbacks
Sender: [email-masked]
Reply-To: [email-masked]

> Working through the tutorials (DTN2/doc/manual/tutorial*.html), and
> testing delay tolerance with ifconfig up and down, I noticed that
> dtnd polls every so many seconds.  Was there ever any discussion of
> having callbacks registered between the different layers?  Sorry for
> the newbie question, I don't where else to ask ... Thanks for
> hosting this list!

The internal interface from the convergence layer to the daemon is an
event post when the contact comes up / down. For TCP, the
implementation handles this via a keepalive based polling. Other CLs
(if they existed) that had internal mechanisms for detecting
connection disruption could use those mechanisms and then just issue
a callback.

-m

Date: Thu, 24 Mar 2005 14:03:55 -0600
From: Jeff Wilson <[email-masked]>
To: [email-masked]
Subject: [dtn-users] Polling vs. Callbacks
Sender: [email-masked]
Reply-To: [email-masked]

Working through the tutorials (DTN2/doc/manual/tutorial*.html), and
testing delay tolerance with ifconfig up and down, I noticed that dtnd
polls every so many seconds.  Was there ever any discussion of having
callbacks registered between the different layers?  Sorry for the
newbie question, I don't where else to ask ... Thanks for hosting this
list!

Date: Thu, 24 Mar 2005 13:59:59 -0600
From: Jeff Wilson <[email-masked]>
To: [email-masked]
Subject: [dtn-users] Re: first post!
Sender: [email-masked]
Reply-To: [email-masked]

And just like Slashdot, I missed ... Melissa beat me to it!

Sorry for the chatter!  Back to work now ...

On Thu, 24 Mar 2005 13:51:04 -0600, Jeff Wilson <[email-masked]> wrote:
> Sorry, couldn't resist ... welcome to the Slashdot generation :)
>

Date: Thu, 24 Mar 2005 13:51:04 -0600
From: Jeff Wilson <[email-masked]>
To: [email-masked]
Subject: [dtn-users] first post!
Sender: [email-masked]
Reply-To: [email-masked]

Sorry, couldn't resist ... welcome to the Slashdot generation :)

Date: Thu, 24 Mar 2005 11:26:25 -0800
From: Melissa Ho <[email-masked]>
To: [email-masked]
Subject: [dtn-users] test
Sender: [email-masked]
Reply-To: [email-masked]

Test message