for those who know socket programing and have experience in such project type , please read more details below
## Deliverables
Hello :)
Realable IOCP Client/Server Example with the following feature in Vb.net
This project should contain Client side sample / Server side sample / db module + sample / loging /exception crash handling etc?
** Server side should include
1) Code should be written in vb.net and all modules of (DB, socket etc.., should fully support 64bit OS)
2) Stable socket component (use known and stable component form those available online I can candidate 2)
3) Option explicit and option strict should be on in all code module/class's etc..
4) Server connection enabled should contain one time secret key exchange to accept connection
5) Server should offer optional communication encryptions for exchanging data
6) Server should calc memory/cpu and suggests how many competitive threads to open No 1 thread per client and total expected client's server can handle in real-time based on current connected and available memory/CPU. In case of max reached a special procedure should be done in this case.
7) Server will offer simple MySQL DB read/write update insert etc.. (Using 2 type of connection) Read only user name and master user name with deferent connection also will provide real time status of db connection green if active red if lost/slow and perform certain logging in each cases'
8) Server will be stressed using Client side by generating 1000's of random client connections (detect already logged in client before and those ids that newly entered)
9) Server will determine the client ID and insert if new /update login time date if connected before. and when Disconnecting "dealing with DB can happen only when enter and when client DC" .we should know if this id entered before or not and will compare how long time ID stay connected and offer reporting for that today and max # of connections server handled today:-
Example :- Stress Client tools run and 1000+ Random ID's join Server at once Server will offer best way to read write info to DB when user enter and Disconnect and will provide class for users operation to store user info.. What user is doing location etc.. When user DC we update DB ? if same user tried to connect again to Server previous user session should be closed, memory/resources should be freed etc..
10) Server can listen at two or more ports at the same time and Serve request, also Server should offer port 80 tunnel reply in addition to TCP IP connection ports "
11) 2 or more servers can run and talk to each other each via certain port server will inform other one of his status and total clients and if same client entered at both servers will perform remote Disconnect update info to db log that etc...
12) Server will offer disconnect /block certain ip sort online users search edit modify etc?
13) Server will listen to admin command port this command port admin can send certain info and authenticate via this port to perform certain actions etc...
14)Server can Send Message to all Message to certain user(s) schedule message to be sent , special message for those who will login from now and on, message for those ID's who entered for the 1st time etc..
15) Server should have option to stop accepting connection and keep current active etc..
16) Save and disconnect all button / when close / when crash etc..
17) Server will be able to handle each connected client messages and reply to each request
For example (one client can send 1x||something ) other client can send 6b||something something) Server can handle each even if all online clients start sending such ?
18) Server can flag client status (idle , busy , etc..) client now doing 1 2 3 client flag now is ?.
19) Server can send message to certain client with certain flag type etc?
20) other points will be listed latter.
-------
** Client Side:-
1) Vb.net client ?
2) generate random of 1000's ids with certain length
3) Connect ID's randomly/specific # to certain or random servers with one click
4) Disconnect random ids/specific # to server
5) Disconnect all
6) have certain logged in ids send special command and show server reply status.
7) Stress test the server with other deferent scenarios
8) Other commands will be discussed latter
Thanks
Project ID: 2722847
About the project
2 proposals
Remote project
Active 12 yrs ago
Looking to make some money?
Benefits of bidding on Freelancer
Set your budget and timeframe
Get paid for your work
Outline your proposal
It's free to sign up and bid on jobs
2 freelancers are bidding on average $3,500 USD for this job