• Welcome to Valhalla Legends Archive.
 

Battle.net Too Slow?

Started by Yegg, January 20, 2005, 04:33 PM

Previous topic - Next topic

Yegg

I've come to the conclusion that battle.net is too slow to comprehend a floodbot spamming 4 messages at an extremely fast rate while someone else is trying to "do" something to that account (ban, ignore, etc.). If a floodbot (MiscFlood for example) isn't using proxies, it sent for messages in 300ms, I used my bot (which is written in Python) and it sent 4 messages in 180ms. I'm sure its fast enough to ban/ignore a floodbot, but it can't. It's only done so once and it was becuase I sent the ban message before the floodbot connected. Any thoughts on this?

Blaze

Are the messages received from bnet at 180ms or are they sent at that speed?
Quote
Mitosis: Haha, Im great arent I!
hismajesty[yL]: No

Yegg

Within 180ms, my bot was able to send 4 messages to battle.net.

UserLoser.

Battle.net isn't slow.  This has been covered numerous times and if it's taking 180ms to execute all that code to send messages to Battle.net, fix your client.  I guess I'll shorten it up since you and many others obviously did/do not search:

You can't just do a = gettick, sendbanmsgcode, b = gettick, print "we took b - a ms".
You obviously did not consider the time it takes to send a message from your computer through up to a dozens of different routers across the world (run trace route) and the time it takes for Battle.net to handle the message

Kp

As Userloser hinted, there's a nice long technical discussion about this in one of the older threads.  I recommend you read it before making further comments here.
[19:20:23] (BotNet) <[vL]Kp> Any idiot can make a bot with CSB, and many do!

Ban

A QueryPerformanceFrequency + QueryPerformanceCounter is auctually *much* more accurate than a GetTickCount. I beleive GTC has a resolution of 4ms (correct me if im wrong), but QueryPerformanceCounter has a resolution that is equal to QueryPerformanceFrequency (often < 1/10000 of a second on my box)

Eric

#6
Quote from: Ban on January 21, 2005, 07:06 AM
A QueryPerformanceFrequency + QueryPerformanceCounter is auctually *much* more accurate than a GetTickCount. I beleive GTC has a resolution of 4ms (correct me if im wrong), but QueryPerformanceCounter has a resolution that is equal to QueryPerformanceFrequency (often < 1/10000 of a second on my box)

It's not a question of inaccurate timing, it's a question of unaccounted for internet transfer speeds and since there's no way to determine when a stream reached it's destination, it would be impossible to accurately time.

It takes x ms for you to receive user join event, y ms for you to process the packet and determine if the user is to be banned, x ms to send the ban to Battle.net, and z ms for it to be processed and attempt to ban the user.  Generally, an approximate value of x can be determined by dividing your latency by 2.

Once a floodbot is connected to the server, it can send it's final packets to Battle.net and immediately close the socket which is a process that can usally be acheived in much less time than above.

To sum up the previously mentioned threads: there's not a whole lot you can do to keep a floodbot out of your channel, so consider using or creating a bot with a properly designed spam filter.