[p2p-hackers] infinite loops

Matthew Kaufman matthew at matthew.at
Fri Jun 24 14:45:13 UTC 2005


1. Your approach assumes that you want the message delivered as far as
possible within the network. In some networks this cache technique is used
to reduce looping and redelivery *along with* TTL in order to deliberately
limit the message delivery horizon.

2. Your approach assumes that originators can generate unique message Ids.
This is easy to approximate but non-trivial to guarantee if you're trying to
save memory or computation time. Consider the case of IP... What would you
use as the "unique message ID"?

3. Your approach uses more memory in the client no matter how long the
message ID storage needs to be. The longer the potential message lifetime,
the more memory it uses. The higher the message rate, the more memory it
uses. The longer the message IDs, the more memory it uses. The more complex
the lookup data structure, the more memory it uses. Also, doing that lookup
is more computationally expensive, especially as the memory utilization
grows.

In summary, if you want messages delivered as widely as possible, and the
clients can generate unique message IDs, and the message rate is low enough
that the CPU and memory requirements created at each client are reasonable,
then sure, this works fine.

Matthew Kaufman
matthew at matthew.at
www.amicima.com




More information about the P2p-hackers mailing list