Is it possible to limit messages per second for each peer?
While doing some stress tests i have figured out that there is pretty big messages per second threshhold. Even if user's client on the other side will return false on each received NetGroup.Posting.Notify it's still eating a lot of CPU power.
Around 20-30% on my netbook. And that's only one PC spammer in the network. What will happen if there will be 10 or more such spammers in the network. How network will react on this?
Is there some limit set between peers?
Can it be somehow controlled?
returning false from an event handler doesn't do anything. there is no way from ActionScript to suppress propagation of others' postings. nor is there a way to rate-limit postings.
P2P groups are cooperative systems. that means the peers have to be cooperating.
posting can be restricted to authorized peers, by setting a posting password and only giving the groupspecWithAuthoriztions to the authorized peer(s). you could funnel postings through an arbiter peer, which could enforce rate limits or any other constraints.
RTMFP tries very hard to deliver postings. postings are sent with partial reliability (although fully congestion controlled) -- each P2P transmission attempt will time out after about 5 seconds, and peers will stop trying to propagate a posting after about two minutes.
I can't find any information regarding arbiter peer. Any documentation available? How to implement it?
Solution with groupspecWithAuthoriztions is not for our application. It's a group, through which all messages are going through.
Any others solutions could be implemented? Any solutions are welcome. Because i need to create a stable, anti-flood network.
I'm thinking of creating client-side in-flash limitation + obfuscation. It seem the only solution for now. How hard to de-obfuscate obfuscated code nowadays in flash? Any tips about obfuscation Michael?