Proficient Homework

UDP File Transfer Using Java

You will implement a reliable FTP client-server system.

Provide a simple menu to the user, e.g.

1. GET

2. PUT

3. CD

4. QUIT

Your code must be robust and handle any incorrect user input. Since there

can be

multiple clients querying the server at the same time with each client

being serviced by a

different thread on the server, the server must ensure concurrency

control on the data file

while it is being updated. Thus, only one thread must gain access to the

data file during

writes (hint: use synchronized keyword for the write method in your

code).

Be sure to terminate each thread cleanly after each client request has

been serviced.

Implement the project as described using Java Datagrams (UDP). This will

be a

connectionless client-server system since UDP is connectionless. However,

you will need

to provide reliability in your client-side application code since UDP

does not guarantee

delivery. You may use the CRC32 checksum class available in the

java.util.zip package

in the JDK for this purpose. 

Looking for a Similar Assignment? Our Experts can help. Use the coupon code SAVE30 to get your first order at 30% off!