R-a-dio / Hanyuu-sama

R/a/dio AFK Streamer and IRC Bot
42 stars 11 forks source link

Improve IRC flood protection in 1.3 #74

Open Bevinsky opened 11 years ago

Bevinsky commented 11 years ago

This IRC conversation from #dev highlights the flood protection employed on Rizon. The IRC lib flood protection should be re-engineered to account for this.

[22:58] <Adam>  its sort of complex
[22:58] <Adam>  if the server has more than 2560 bytes in the recv queue for the client it will excess flood it, but the rate at which it reads bytes from the queue depends on how much flood it has been recieving
[22:59] <Vin>   hm.
[22:59] <Adam>  the slowest it will read is ~2 messages per second
[22:59] <Adam>  but until you build up to that point it will process more than 2 per second
[23:00] <Adam>  so the length of the message is a big factor
[23:00] <Vin>   the way we've currently set it up is that the bot can send at most 2500b every 1.3 seconds
[23:01] <Adam>  if you are flooding and only able to send 2 messages/second, large messages will much quickly overflow your queue
[23:03] <Adam>  how many actual messages is that though
[23:03] <Vin>   we don't track that. given what you're saying, that might be a good idea
[23:03] <Adam>  if you are continously > 2 a second then you will eventually flood out
rejalkarim66666 commented 10 years ago

This still happens from time to time by the way