I'm looking for a C# and network programmer guru who has done already or can do it pretty fast a tcp/ip server that would be able to handle 5000 concurrent connection on a decent hardware.
I need the full server functionality, that will handle connection, take care of disconnected connections, refuse to serve connections that send bogus data and such.
For testing purposes the developer will create a sample client application that will run inside 1000 simultaneous connections to the server and will pass back and forth some predefined structures of data.
The communication protocol between server and client must be binary based with a possibility to be send via a custom interface (filter) that may change it (encrypt for example, for this project the interface will compress the data using the Zip functionality from .net). There should be a possibility to easy add new data structures to be send between server and client, thus the serialization used inside must be pretty fast as well (the one that comes with .net must not be used, is slow). You may check this project and used if possible, if not create your own way. (you can use BitConverter object, is fast enough)
To make sure that server is written correctly, I need a sample created that will let clients 1. authenticate 2. subscribe to one or more topics 3. send subscribed topic information to clients. 4. show a list of clients that updates as soon they 5. login/logoff, drop connection. 6. send client an answer in case needed topic is not available. 7. make sure that multiple clients will be able to subscribe to same topic. sample to be written in C# using WinForms. as a topic I mean just a simple keyword, such: Audi, BMW, MB, Porsche, ... once client subscribes to some of the topics send randomly back some information about the topic, but prefixed it with topic title so we know client is receiving what's needed. Please check this requirement and update your bid is necessary. Tx
Dear, I am more than expert in client/server programming in c#. I have developed many servers in c# and also clients. This task is very easy for me.