Answered step by step
Verified Expert Solution
Question
1 Approved Answer
In JAVA: This is all just one part. I'm okay with the other parts that follow after. Any help is appreciated. thanks. Part I Write
In JAVA:
This is all just one part. I'm okay with the other parts that follow after. Any help is appreciated. thanks.
Part I Write a client program and a server program to implement the following simplified HTTP protocol based on TCP service. Please make sure your program supports multiple clients. The webpage file CS3700.htm is provided. You may choose a port like 5678 and hard code it in both client and server programs. (Hints: for testing both programs on the same computer, you may want to put client program and server program at two different directories. Do NOT hard code the file name "CS3700.htm"!) The ending signature of the entity body in the HTTP response message for the case "200 OK": When the HTTP Server program sends a HTTP response message out, it pads four continuous blank lines, i.e., "r ", to the end of the .htm file as the ending signature of the entity body. o When the HTTP Client program read the HTTP response message line by line, it counts the number of continuous lines that are empty strings ***(NOT a null string). Once such number reaches 4, the entity body has been fully received. o It is assumed that the .htm file does not include such ending signature in the real practice, length of the entity body may be included in the head line and used to determine the end of an entity body). HTTP Client Program: 1. Display messages on the standard output to ask the user to input the DNS name/ip of your HTTP server. 2. Buildup the TCP connection to your HTTP server with the Host Name input by User at the given port, and display the RTT of establishing this TCP connection in millisecond (the difference between the moments right before and after creating the socket object). Catch the exception, terminate the program, and display error messages on the standard output if any. 3. Display messages on the standard output to ask the user to input the HTTP method type, name of the htm file requested, HTTP Version, and User-Agent, respectively (separately please!). (hint: all inputs can be strings.) Use the above inputs from user to construct ONE HTTP request message and send it to the HTTP server program over the TCP connection. Your HTTP request message only needs to include the following lines. (Hint: At the end of each line including the last empty line, a " " is needed. The correctness of the format will be checked by the instructor.): The request line (hint: the URL should include a '/' in front of the htm file name) The header line for the field "Host:" The header line for the field "User-Agent:"Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started