Network applications implementing client server architecture

Assignment Help Computer Networking
Reference no: EM132857888

Programming

TCP File Server

You are to write two network applications implementing a client server architecture in which client application requests a file from the server application and if the file exists in server's root directory, it is sent to the client using TCP.

Requirements

General Requirements
• The code is to be written in java and must be a console application (GUI not allowed)
• You must implement two different applications (one for client and one for server)
• You can use any IDE but final testing will be conducted through command line only
• You can only use the libraries that are packaged by default with java
• TCP must be used to initiate a connection and transfer of files
• Command line validation must be done thoroughly to check the user inputs

Server Side
• Name the Server application as "FileServer"
• You must specify the port number from the arguments while running the server. Server must print incoming client's information on the screen (IP and PORT) and requested file name.
• There must be at least 5 different files with size ranging from 1 MB to 5 MB in a folder names "Server Files" in the root (you can assume that client knows the name of files. No need to manage and send the list of files across, however, it will be cool to do so....!!!).
• Server must always be running - should not stop after serving a single client request.

Client side
• Name the Client application as "DownloadClient".
• You must specify 3 arguments
Argument 1: Port number on which client is running Argument 2: Port number on which server is running Argument 3: IP address of the server
• You must implement a simple menu on the client side that allows you to request the
server for a file.

• Application must allow to download multiple files in a single Run (program must not stop after successful transfer).
• Downloaded files must be stored in a folder in the root directory of client application with name "Server Downloaded Files"
• Client program should provide status messages that the file is getting downloaded and decrypted and when the connection to server is established or disconnected.

A sample sequence of the program from command line may look like:

Java FileServer 4000
"Server started... Local IP address is 192.168.1.1; Port 4000... waiting for clients"
"Incoming client: IP xxxxxx Port: XXXX"
"File requested: mydoc.pdf.. searching in the root..." "Starting transfer..."
"File transferred successfully!"
"Connection terminated by client"
"Server started... Local IP address is 192.168.1.1; Port 4000... waiting for clients"

Java DownloadClient 4001 4000 192.168.1.1
"Please enter the file name you wish to download: " "mydoc.pdf" "Connecting to server...."
"Connection established successfully" "Requesting the file..."
"File found on server. Starting the download" "File downloaded successfully. "
"You can check the file now." "Closing connection to server." "Successful..."
"Please enter the file name you wish to download: "

Enhancements

In the enhancement part you will send and receive a large file. The server must do the segmentation (break the large file in smaller chunks) required for large files. The received file must be saved in the client directory. The server computer will send an "end of file character" to signify the end of file. When the client detects the end-of-file marker, it will close the file and send back an acknowledgement character to the server to acknowledge receipt of the file which server shows on its screen.

Attachment:- TCP File Server - DCS Assignment.rar

Reference no: EM132857888

Questions Cloud

Treated sample and mean for the original population : A random sample of n 25 individuals is selected from a population with 20, and a treatment is administered to each individual in the sample.
What spiritual considerations surrounding a disaster : What spiritual considerations surrounding a disaster can arise for individuals, communities, and health care providers? Explain your answer in the context
Calculate the variable overhead spending variance : The standard fixed overhead per unit is $10.40 (2 hours at $5.20 per hour). Calculate the variable overhead spending variance
How can mobility promote a healthy lifestyle : How can mobility promote a healthy lifestyle? You are the nurse of an older adult who is being discharged and needs to provide education for the promotion.
Network applications implementing client server architecture : Write network applications implementing a client server architecture in which client application requests a file from the server application
Find probability distribution of x the owner total profit : Assume that firms I and II are actually owned by the same individual. Find the probability distribution of X, the owner's total profit.
Find the probability that a given batch will be rejected : (a) Find the probability that a given batch will be rejected. (b) What is the average number of items inspected per batch?
What diagnostic tests would be appropriate for the patient : Why the contraindication/alteration you identify exists. That is, what would be problematic with the use of this drug in individuals of other ethnicities?
How much of his inheritance must he invest today : Assuming he can earn an interest rate of 5% compounded annually, how much of his inheritance must he invest today

Reviews

Write a Review

Computer Networking Questions & Answers

  Networking and types of networking

This assignment explains the networking features, different kinds of networks and also how they are arranged.

  National and Global economic environment and ICICI Bank

While working in an economy, it has a separate identity but cannot operate insolently.

  Ssh or openssh server services

Write about SSH or OpenSSH server services discussion questions

  Network simulation

Network simulation on Hierarchical Network Rerouting against wormhole attacks

  Small internet works

Prepare a network simulation

  Solidify the concepts of client/server computing

One-way to solidify the concepts of client/server computing and interprocess communication is to develop the requirements for a computer game which plays "Rock, Paper, Scissors" using these techniques.

  Identify the various costs associated with the deployment

Identify the various costs associated with the deployment, operation and maintenance of a mobile-access system. Identify the benefits to the various categories of user, arising from the addition of a mobile-access facility.

  Describe how the modern view of customer service

Describe how the greater reach of telecommunication networks today affects the security of resources which an organisation provides for its employees and customers.

  Technology in improving the relationship building process

Discuss the role of Technology in improving the relationship building process Do you think that the setting of a PR department may be helpful for the ISP provider? Why?

  Remote access networks and vpns

safekeeping posture of enterprise (venture) wired and wireless LANs (WLANs), steps listed in OWASP, Securing User Services, IPV4 ip address, IPV6 address format, V4 address, VPN, Deploying Voice over IP, Remote Management of Applications and Ser..

  Dns

problems of IPV, DNS server software, TCP SYN attack, Ping of Death, Land attack, Teardrop attack, Smurf attack, Fraggle attack

  Outline the difference between an intranet and an extranet

Outline the difference between an intranet and an extranet A programmer is trying to produce an applet with the display shown in Figure 1 below such that whenever one of the checkboxes is selected the label changes to indicate correctly what has..

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd