I have a C# server application, which provides services based on packets. For example: The client connects, sends a packet named "do X action", and the server elaborates such packet.
The problem is, people can use WPE or packet managers to flood requests to the server and send up to 1000 packets per second, obviously causing the server to crash.
Could someone give me an idea, on how actually I can keep a packet count, maybe based on IP or sessions? For example: more than 30 packets per second, the server disconnects the client.
Is this possible?