Develop a client-server application based on the C socket API and TCP connections, according to the following
specifications:
1. The server receives exactly one argument on the command line: the TCP port number to which it listens.
2. The server must be able to serve concurrently several clients (at least 5, but no more than 20).
3. At startup, the server reads a binary file named [login to view URL] in its local directory and stores its contents in memory.
Let us denote k0, k1, ..., kN the bytes of this file. If the file is not found, or if it is too large to be stored in
memory, the server must exit immediately with an error message.
4. When connected to a client, the server receives a stream of bytes C=c0, c1, ... from the client and sends back to
the client another stream of bytes R=r0, r1, ..., computed from C using the formula attached in PDF (number 5)
5. The connection must be closed gracefully in the following way:
a. When the client terminates sending the input stream C, the client closes the client-to-server side of the
connection.
b. When the server detects that the client has closed the client-to-server side of the connection, the server
finishes sending the remaining bytes and then closes the other side of the connection.
6. Client and server must be able to work with input streams of any length.
7. The client receives exactly three command line arguments, exactly in this order: the server name or IP address
in dotted decimal notation, the server port number (as decimal number), and the name of a local file. The client
must send the contents of this file to the server and store the response received from the server in another file,
with a name computed as the concatenation of the original file name and the suffix “_rec”. For example, if the
file name is “[login to view URL]”, the file with the server response must be “test.dat_rec”.
8. The client must try to keep the server as busy as possible, by applying this policy: the client must keep sending
bytes whenever possible and must receive bytes with lower priority (i.e. only when sending more bytes is
impossible).
9. Client and server must be developed for the Linux OS.
10. Design decisions about the implementation of the application are free but must be reasonable
** All payment will be given after completion of project and test
As a Linux Professional with 4+ years of industrial experience with good knowledge in Linux Networking, Linux System programming, Socket programming using C and good understanding of underlying Linux kerne
l provokes me to bid for this project.
I have developed few Client-Server models (long back) and exported those in my github. Please have a look on the same - [login to view URL]
Kindly have a look at my profile as well to clear view about me - [login to view URL]
Thanks in advance for awarding the project.
Thanks,
Parthiban N
UPDATE: You can use the code from my github directly with minor modifications for your requirement.
$30 USD in 1 day
4.8 (3 reviews)
2.8
2.8
13 freelancers are bidding on average $49 USD for this job
Hi Sir,
I would like to work for your project.
Please let me give clear picture about the requirements.
I have already worked C socket programming.
Please initiate communication to discuss further.
thanks
Hi there,
Let me do it for you. I have already working client/server cmdline program, i will do modifications according to your req and then send u. That's it.
Thanks and Regards,
AbbasiTech (IT SOLUTIONZ ISB)
Hi,
I am experienced professional socket communication in windows/Linux with multithreaded application.
I can provide a TCP Client-server application on first day.
3rd day I can provide complete application with source code.
I can also support for another week to modify/add any logic.
Thanks and Regrds
Syam
i'm a college student working on networking in c pogramming.
i've got a good knowledge in socket API and TCP connections.
so you can rely on me and contact me for this project.
Hi i can do it easily.
I have done such kind of task befor
i have good expereince in c / c++ and socket io programming
i have also ready application for your demo also
Wil give u qiality work assured
Thanks
Got 2 years experience in advanced C/C++ programming. Currently working for a Telecom company which extensively used socket programming. Got good understanding of in and outs or sockets.
I already have done a similar project(Concurrent server) in my M Tech. That project I developed in code blocks on Ubuntu(Linux) platform. So if awarded to me then you will get fastest delivery with quality.