Show TODO.txt syntax highlighted
***TODO***
* Set up scripts to easily run canned experiments.
* Why is it that I can only transmit up to 3.8 KB/s? Look at
sim/radio for clues.
* Try to do experiment with Mote radio:
* Can't! When I make the change to my config file, emview no longer
shows traffic information. Why?
* Visualization:
* Long term: Allow gradient / interest info to be gathered at a
single node, either as an interest (like Tiny Diff / ESS?), or on
top of Jeremy's IP connector. As this info is gathered, some how
use Emview to display this info.
* Micro Diffusion currently has a max packet size that reflects the
mote max packet size. Need an easy way to arbitrarily set the max
size.
* What's affected by changing the size?
* There's a variable that holds the number of
attributes. I think it's 8 bits, so that limits us to
255 * sizeof(DiffAttr).
** It is 8 bits. But does this
matter if we're transfering blobs?
** It does if something calculates the size of the
payload based on the number of attributes.
** The DiffMsg_t structure contains length, not
number of attributes. This is encouraging.
** OK. Blob length attribute is 8 bits. I can change
this to 16 bits if I put an 8 bit pad in front to
make sure things remain aligned.
* There's a variable that holds the data length (in
bytes). Find out if it's also an 8 bit number. (Turns
out it's 16 bits.)
* DiffMsg_t contains DiffAttr[MAX_SIZE]. So MAX_SIZE
reflects that static size of DiffMsg_t. How much does
this hurt us?
* Just doing iHandle++ will soon run out of handles. Need to recycle
handles if the application periodically makes new subscriptions.
*** LATER ***
* Better way to set up sink tree. Use something like ETX.
* If data matches multiple gradients to the same src, it gets sent
multiple times. Not good.
* Would be cool to add a tracing feature for packets, messages,
whatever. Say a trace bit or hop-count, and have it desiplayed in
EmView. Could be generic or application specific. Useful for DTN
where we can't easily "see" routes.
***DONE***
IP connector thingy relies on blobs, which is something micro
diffusion is flakey on. Need to fix.
* Test short term solution for "any-to-any":
About 12 nodes.
3 - 4 hops in diameter.
11 sources send about 20 kbs sustained.
1 sink sends about 20 kbs total, distributed over sources.
* Set up docs on how to run canned experiments.
* Visualization:
Short term: Use EmView and expose appropriate state through the
status device of the nodes.
* Look at emview/examples.
* Micro Diffusion currently uses a 16 bit address for Src, Next, Prev,
etc. Need to be able to use 32 bit addresses.
(Works with Stargates (32 bit addresses) as long as all of the
participating nodes have the first 16 bits in common.)
* What's affected by changing this?
* How can we easily switch between 16 and 32 bits?
* Always use 32 bits internally when passing data
around. Compile time use #ifdef to make DiffMsg_t /
IntDiffMsg_t , and conditionally truncate to 16 when
sending.
* We can't put our address into interests/data since
the value is 16 bits.
* We can either split the address into two.
* Expand value to be 32 bits.
See more files for this project here