0

I've written a protocol on top of TCP using C# Sockets class which allows the transfer of files between many clients, and put it on a Windows Server 2008 VPS.

I have then written the client-side stress-test which simulates several clients connecting to the server and transferring files from one to another. It all seems to be working fine, but I still need to see how the server will respond to thousands of client trying to transfer files simultaneously. Will there be memory issues, diminished transfer rate, etc...

My question is, how can I automatically perform such a test? I'm looking for a professional solution. As a newbie to network/server-side programming, what other things should I be looking out for (besides memory issues) before deploying such an application?

Many Thanks!

Daniel
  • 157
  • 1
  • 6
  • 1
    This is very hard to answer. What exactly do you want to measure? And why are you interested in _thousands_ of simultaneous clients? You declare yourself a rank newbie, and are looking for a professional solution, but haven't looked around at what is available at all? – vonbrand Mar 16 '13 at 10:22

2 Answers2

0

The pre-built solutions for this kind of thing assume well known protocols (http for example), but for something custom the pre-built stuff is a lot more spare on the ground. Some products out there allow you to build in a plugin for a custom protocol, but you have to do the building (giving examples of those products is off topic).

A better case here is to do what you're already doing: build your own stress-testing tool.

You know the protocol better than anyone, as well as the likely use-cases.

sysadmin1138
  • 133,124
  • 18
  • 176
  • 300
0

I would recommend using python's scapy for this. You can build up to tcp pretty easy and then your protocol in hexadecimal.

Kveri
  • 161
  • 4