On Jul 1, 2009, at 1:57 AM, Michiel Konstapel wrote: > I was recently looking into the (now removed) congestion control > code in > CTP, and the net2 meeting notes > (http://tinyos.stanford.edu:8000/Net2WG/Notes/20080321) mentioned "the > failed attempts at ECN". What was attempted, and how did it fail? > We're > currently looking into implementing some congestion control, by > increasing the delay between packets when your parent is congested, > hoping to prevent nodes from dropping packets due to lack of queue > space. Any thoughts on whether that would work? The other option would > be to switch to network layer acks, but that's a more involved change.
In early versions of CTP, the specification stated what you have to do when the C bit is set (cannot send packets to that destination until you hear the C bit cleared). This turned out to be disastrous. One node marks itself as congested, everyone stops sending to it, they send to other nodes, those nodes become congested, suddenly there are no routes in the network. So we changed it to a more useful specification: you set the C bit when you drop a packet. The specification went from stating what you MUST do when you hear the C bit to a condition under which you MUST set the C bit. This bit of information seems useful for higher-layer transport services, as it warns that a packet was lost. But as the focus for CTP so far has been on agility and low transmissions/delivery, the C bit hasn't been explored much. We didn't explore pausing/adding delay. Phil _______________________________________________ Tinyos-help mailing list [email protected] https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
