What version of http is the server running how is the


Lab Exercise - HTTP

Objective

HTTP (HyperText Transfer Protocol) is the main protocol underlying the Web. HTTP is covered in Chapter 2 of your text. Review that section before doing this lab.

Requirements

Wireshark: This lab uses Wireshark to capture or examine a packet trace. A packet trace is a record of traffic at some location on the network, as if a snapshot was taken of all the bits that passed across a particular wire.

The packet trace records a timestamp for each packet, along with the bits that make up the packet, from the low-layer headers to the higher-layer contents. Wireshark runs on most operating systems, including Windows, Mac and Linux.

It provides a graphical UI that shows the sequence of pack ets and the meaning of the bits when interpreted as protocol headers and data. The packets are color coded to convey their meaning, and Wireshark includes various ways to filter and analyze them to let you investigate different aspects of behavior. It is widely used to troubleshoot networks. You can down load Wireshark.

telnet: This lab uses telnet to set up an interactive two-way connection to a remote computer. telnet is installed on Window, Linux and Mac operating systems. It may need to be enabled under Windows. Se lect "Control Panel" and "More Settings" (Windows 8) or "Programs and Features" (Windows 7), then "Turn Windows Features on or off".

From the list that is displayed, make sure that "Telnet Client" is
checked. If you cannot see the text you type when in a telnet session, you may need to use a telnet command to set the "local echo" variable. Alternatively, if you are having difficulty enabling or using Windows telnet, you may install the PuTTY client which uses a GUI to launch a telnet session.

Step 1: Manual GET with Telnet

Inspect your request and response to answer the following questions:

1. What version of HTTP is the server running?

2. How is the beginning of the content sent by the server recognized by the client?

3. How does the client know what type of content is returned?

Step 2: Capture a Trace

Capture a trace of your browser making HTTP requests as follows; alternatively, you may use a supplied trace. Now that we seen how a GET works, we will observe your browser as it makes HTTP requests.

Browser behavior can be quite complex, using more HTTP features than the basic exchange, so we will set up a simple scenario. We are assuming that your browser will use HTTP in this simple scenario rather than newer Web protocols such as SPDY, and if this is not the case you will need to disable SPDY.

Step 3: Inspect the Trace

Answer the following questions:

1. What is the format of a header line? Give a simple description that fits the headers you see.

2. What headers are used to indicate the kind and length of content that is returned in a response?

Step 4: Content Caching

Answer the following questions:

3. What is the name of the header the browser sends to let the server work out whether to send fresh content?

4. Where exactly does the timestamp value carried by the header come from?

5. How long did it take to complete this lab? Did you feel this lab was helpful or valuable? Pleaseexplain your answer.

Step 5: Complex Pages

Now let's examine the third fetch at the end of the trace. This fetch was for a more complex web page that will likely have embedded resources. So the browser will download the initial HTML plus all of the embedded resources needed to render the page, plus other resources that are requested during the execution of page scripts. As we'll see, a single page can involve many GETs!

Explore Your Network

We encourage you to explore HTTP on your own once you have finished this lab. Some suggestions:

• Look at how an HTTP POST works. We focused on the GET method above. POST is used to up load information to the server. You can study a POST by finding a simple web page with a form and tracing the form submission.

However, do not study login forms as you want to observe an HTTP POST and not an encrypted HTTPS POST that is more typical when security is needed.

• Study how web pages lead to a pattern of HTTP requests. Many popular web sites have relatively complex pages that require many HTTP requests to build.

Moreover, these pages may continue to issue "asynchronous" HTTP requests once they appear to have loaded, to load interactive displays or prepare for the next page, etc. You will see this activity when you find HTTP requests that continue after a page is loaded.

• Look at how HTTP GETs map to TCP connections once you have also done the TCP lab. With HTTP 1.1, the browser can make one TCP connection to a server and send multiple requests.

Often after a single request the TCP connection will be kept open by the browser for a short while in case another request is coming. The number of concurrent connections and how long they are kept open depends on the browser, so you will discover how your browser behaves.

• Look at video streaming HTTP traffic. We have looked at web HTTP traffic, but other applications make HTTP requests too. It is common for streaming video clients embedded in browsers like Netflix to download content using a HTTP fetches of many small "chunks" of video. If you look at other applications, you may find that many of them use HTTP to shift about content, though often on a port different than port 80.

Attachment:- Lab Exercise - HTTP.rar

Request for Solution File

Ask an Expert for Answer!!
Computer Networking: What version of http is the server running how is the
Reference No:- TGS02629182

Expected delivery within 24 Hours