On Wednesday 14 February 2007 15:31, Philip Levis wrote: > On Wed, 2007-02-14 at 09:50, Steve McKown wrote: > > This setup works great until the receive rate of wireless messages > > exceeds the rate at which the gateway can insert them into the database. > > I tested this scenario by using only 1 wireless node and having it send > > messages to the gateway as fast as it can (still with ack/resend logic). > > In this test, the gateway will frequently show a bad_crc message from the > > c-sdk. At the same time, the gateway loses visibility to dozens of > > messages, based on message sequence #s. > > > > Here's what I think I need to do to extend BaseStation to get better > > message delivery reliability. Any comments or pointers to related > > information would be helpful. > > > > 1. BaseStation should elect to send acks for received messages based upon > > the filled state of the appropriate message queue (readioQueue, > > uartQueue) in addition to the crc check. > > > > 2. BaseStation should use a back-off/resend strategy for any message sent > > over uart or radio for which an ack is not received in a timely fashion. > > > > Am I on the right track? Is BaseStation a good place to start? > > To do this fully and completely, you need end-to-end acknowledgments. > What matters is whether the database has inserted the record or not.
Agreed. > BMAC acknowledgments are only link-layer acks; it may be that the base > station has received the packet fully and successfully over the radio, > but doesn't have space in its queue because the serial link is slower, > or it may be that the packet is not correctly sent over the serial link > (as you describe). > > End-to-end acks will get you reliability. If you also want high > bandwidth, there are lots of techniques for managing when you send ACKs, > how you time data transmissions, etc. You basically want to control the > rate at which source send packets so that they do not overwhelm the base > station. There's a HUGE literature on network rate control and flow > control. Yes, there is a huge body of literature in this area. I was hoping someone might have a few references to work or papers that relate more directly to TinyOS and B-Mac? Maximal bandwidth is tertiary to message reliability and energy conservation. Looks like I need some quality time with my good friend Google. Thanks, Steve _______________________________________________ Tinyos-help mailing list [email protected] https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
