Overview

This lesson introduces another high-level protocol of the Internet, HTTP. It begins with a review of the layers of the Internet covered thus far, before transitioning to a video covering high-level protocols of the Internet, most notably HTTP. Students will investigate HTTP traffic generated within their own browser by accessing the browser's developer tools and visiting a variety of websites.

Vocabulary

Goals

Students will be able to:

Purpose

There are two main purposes to this lesson:

First, simply getting a basic understanding of what HTTP is and what it's for. HTTP like DNS is an ASCII-text based protocol - it's just two computers sending text messages to each other. What makes it a protocol are the rules of the "conversation" the two machines are having. In the case of HTTP, it is a call-and-response protocol for a client/server relationship, where a client requests a web page or other content (image, sound, video, etc.) from a server. The server looks for it and sends it back.

Second and perhaps more importantly, is understanding HTTP as a "high level" protocol that sits on top of all the other protocols and internet systems we've learned about in the course. That text message conversation between the computers is being broken up into TCP/IP packets, and all the data gets sent as bits over wires and airwaves, taking different paths, and it gets interpreted reassembled at the end.

We often talk about how the Internet works in "layers" and this is a perfect example of abstraction on the Internet, as one layer makes use of the functionality provided by the layer below it, without worrying about the details of how this functionality is achieved. And HTTP doesn't have to worry about anything other than the text protocol of HTTP works. The network software and devices on your and others' computers handle looking up addresses, breaking down data, packeting, routing, transmission and interpretation and reassembly. It's really amazing.

Resources

Getting Started

Use the resource file to help you undertand how Internet protocols work.

Think of the Internet protocols as working in "layers." Imagine outgoing information going DOWN the stack and incoming information going UP the stack.

All of this happens in the network software on each computer, whether that computer is your phone, a laptop, or a server like a DNS or web server (routers are a special case that only look at the IP layer).

The important takeaway here is that the system was constructed with layers of abstraction where each layer only needs to concern itself with its specific job, and then hands it off to another layer. This makes the very complicated task of digital network communication possible. At the top layer, for example, DNS just thinks it is "speaking DNS" to some other computer - the DNS protocol does not even need to know how the other layers work. It just relies on them doing their jobs.

Where have you seen the letters "HTTP" when using the internet? It is in the URL of web adresses. The rest of this lesson will focus on HTTP, which is a protocol that sits at the same "layer" as DNS - right above TCP.

Pro Tip

It's not important to get too deep into the specifics. If students understand the basic idea of layers of abstraction -- that each layer relies on those below it, but uses them "abstractly" that's enough.

Put differently, higher-level layers depend on the functionality of lower-level layers, without worrying about precisely how those layers work. The Enduring Understanding from the CSP framework states: "6.1 The Internet is a network of autonomous systems." And these layers of abstraction (protocols) is a large part of what that statement is about.

Activity

Before completing the activity on the worksheet, have students watch the "The Internet: HTML and HTTP" video below, either as a class or individually.

Pro Tip

This video includes some content relating to security which will not be covered until later in the course. Rather than focus on every protocol covered, keep the focus on the fact that all of the protocols discussed are text-based and rely on the lower-level protocols already covered in class in order to function.

Now distribute the "HTTP in Action Worksheet" and place students in pairs, if possible. By completing this worksheet, students will access the developer tools of their browser, monitor the HTTP traffic generated by visiting a variety of websites, and record their findings using the "Resource Sheet" as a guide.

Pro Tip

At the beginning of the activity, students will need to gain access to the Developer Tools of their web browser, and more specifically gain access to the "Network" tab of the tools. It is recommended you practice prior to the beginning of the lesson so that you can demonstrate to the class and provide assistance.

If students haven't previously encountered the terms "static" and "dynamic," as used to describe web pages, those concepts should be introduced before they begin the activity. This article gives a good explanation: Wikipedia: Static web page.

Wrap Up

Either as groups or as a class, have students share with others their findings. Use the following questions to guide them.

Assessment

1. Multiple Choice: HTTP is considered to be a high-level protocol because:

2. Choose Two: Choose the two true statements about HTTP:

3. Free Response: The definition of HTTP makes use of the ASCII character set, without reference to how these characters are encoded. Explain why this is an example of abstraction.

Extended Learning


Standards Alignment