Write your own http client to test your server, Computer Networking

Assignment Help:

- The project should include a web server, and an example webpage
- Webserver should continue to accept multiple requests from client browser
- Webserver should print out logs: how many connections have been established and what is request method (GET or POST).
- The example webpage you include within the webserver should include a welcome page and a small picture.

Exemplary Steps:

1. Make web server program with Python code and compile it (you should learn by yourselves): in this step, you should specify you would like to accept requests from clients.
2. Prepare a simple web page you want to show to the user when the client browserconnects to the server. Put the example web page in the same dictionary of your server program.
3. Using web browser in the same computer, connect to https://localhost:
4. Connect multiple times and check whether your program spawns threads properly.

Report (not more than two pages)
- Briefly introduce how the multi-thread works. DO NOT INCLUDE SOURCE CODE IN YOUR REPORT
- Include output from web server (logs) and one screen shot of web browser when it is connected.

Bonus
Instead of using a browser, write your own HTTP client to test your server. Your client will connect to the server using a TCP connection, send an HTTP request to the server, and display the server response as an output. You can assume that the HTTP request sent is a GET method.

The client should take command line arguments specifying the server IP address or host name, the port at which the server is listening, and the path at which the requested object is stored at the server. The following is an input command format to run the client.

client.py server_hostserver_port filename


Related Discussions:- Write your own http client to test your server

Concept of connection between the pc and the cable modem, Concept of connec...

Concept of connection between the PC and the cable modem Even if downstream channel works at 27 Mbps, user interface is nearly always 10-Mbps Ethernet. There is no way to get b

What is boundary level masking, Q. What is Boundary Level Masking? ...

Q. What is Boundary Level Masking? If mask numbers are either 255 or 0: Bytes in the IP address that correspond to 255 in the mask will be repeated in the subnet ma

Program to use of lastprivate clause, This example illustrate the use of la...

This example illustrate the use of lastprivate clause void for_loop (int n, float *a, float *b) { int i; #pragma omp parallel { #pragma omp for lastprivate(i) for

Differentiate between rarp and arp, TCP/IP Protocol Suite 1. What is th...

TCP/IP Protocol Suite 1. What is the concept of Multi-protocol encapsulation in ATM networks? 2. Differentiate between RARP and ARP. 3. Differentiate TDP and UDP. 4. D

Parallel programming environment characteristics, Parallel Programming Envi...

Parallel Programming Environment Characteristics  The parallel programming environment consists of an debugger, a editor,  performance evaluator and programme visualizer for i

Length- transport layer, Length This is a 16 bit  field  that  defines...

Length This is a 16 bit  field  that  defines  the total  length  of the user  datagram, header  plus data. This 16 bit  can define  a total  length  of a 0 to 65, 535 bytes.

Ajax, Ajax is a relatively new set of techniques that, in a sense, implemen...

Ajax is a relatively new set of techniques that, in a sense, implement some of the functionalities originally provided by RPC. Ajax is primarily used to build web applications with

Show the application layer responsibilities, Q. Show the Application Layer ...

Q. Show the Application Layer Responsibilities? - Make possible user access to the network - User interfaces as well as support for services such as E-Mail File

What is bus topology, Q. What is Bus Topology?  Multipoint configurati...

Q. What is Bus Topology?  Multipoint configuration  One cable acts like a backbone to link all devices   Advantages: Effortlessness of installation and less cabling

What is domain name, Domain Name A domain name is a way to recognize an...

Domain Name A domain name is a way to recognize and locate computers connected to the Internet.  This is a text name of a computer in network or Internet. Domain names are chan

Write Your Message!

Captcha
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