<p>One analogy I use in my intro class is transportation. The Internet is the roads, bridges, and highways. The World Wide Web is the cars and trucks that travel along these routes, carrying cargo to/from different places.</p>

CC BY-SA 3.0
2017-07-07T16:27:22.283Z
Yes but the Web is not the only thing that travels on these roads.
ctrl-alt-delor
CC BY-SA 3.0
2017-07-07T15:29:40.240Z
2017-07-07T15:29:40.240Z
Edwin Torres
<p>Since you mentioned that ideally you were looking for a video, a few years ago I used to show a video to my students: <strong><a href="https://www.youtube.com/watch?v=x9XWxD6cJuY" rel="nofollow noreferrer">The Good Warriors of the Net - IP for Peace</a></strong> . It is a bit old, but the main concepts are there.</p>

<p>Another that I used to show my students was: <a href="https://www.youtube.com/watch?v=7_LPdttKXPc" rel="nofollow noreferrer">How the Internet Works in 5 Minutes</a></p>

<p>Grab the popcorns! :)</p>

CC BY-SA 3.0
2017-07-08T16:47:06.803Z
2017-07-08T16:47:06.803Z
Nuno Gil Fonseca
<p>I gave the following EDRi paper to my students, and they found it very clear. I also had them write a 2 page essay explaining how the internet works, and that also helped them digest the paper.</p>

<p><a href="https://edri.org/files/2012EDRiPapers/how_the_internet_works.pdf" rel="nofollow noreferrer">https://edri.org/files/2012EDRiPapers/how_the_internet_works.pdf</a></p>

CC BY-SA 3.0
2017-07-09T06:21:00.530Z
2017-07-09T06:21:00.530Z
David White
<p>The videos on the code.org YouTube channel are some of the most helpful I've found.</p>

<p>For example:
<a href="https://www.youtube.com/playlist?list=PLzdnOPI1iJNfMRZm5DDxco3UdsFegvuB7" rel="nofollow noreferrer">How The Internet Works playlist</a></p>

CC BY-SA 3.0
2017-07-09T23:09:03.090Z
Hey, welcome to [cseducators.se]! This answer is a bit of a *stub answer* right now. *(Don't worry; SE is insanely complex, and there is a real learning curve. You are not the first first-time poster to have this problem, I promise)* What you should do is edit your answer and flesh it out with a little more detail. Some possibilities: what in particular is good and useful about the videos? What are their downsides (if any)? Where do they fit into a larger context of learning about the material?
Ben I.
CC BY-SA 3.0
2017-07-10T02:13:01.713Z
To add to what @BenI. said, Stack Exchange tends to frown upon "link only answers" (answers that would be useless without the link). Please try and give enough summary and details from the video that someone could gain from this answer without clicking the link.
thesecretmaster
CC BY-SA 3.0
2017-07-15T22:50:02.370Z
I love those videos and use them all the time. I like how they have diverse presenters who have real and interesting industry jobs. And the explanations are very well done.
Alfred Thompson
CC BY-SA 3.0
2017-07-09T20:52:56.330Z
2017-07-10T02:14:02.533Z
2017-07-10T02:14:02.533Z
Andrew Colley
<p>An analogy which I find useful is <strong>buses</strong>.</p>
<p>One side (server) puts information on a bus and sends the bus to the other side (client\user end). The buses are loaded with data which is a sequence of <code>1</code> and <code>0</code><sup>1</sup>. Each sequence has a passenger before it, and that passenger is used to identify <em>what sort of data</em> was loaded onto the bus.</p>
<p>This passenger says whether the data is for creating an HTML file or a CSS stylesheet etc. Now this bus is loaded with everything the server needs to pass to the client, so the bus departs.</p>
<p>Assuming there's a connection, the bus will reach the desired client, because the driver knows the way. This is important to explain, because that's a way to explain how ip addresses and ports work. The client is the final stop and the address of a stop is the ip for that stop.</p>
<p>When the bus gets to the client, the passengers leave the bus and you can explain here that each message (passenger) knows the order they should be in (like a passenger's id or something similar. This is just to avoid going to deep into synchronization etc.).</p>
<p>The data is then arranged into order and by using the information in the header and the client knows how to parse it (just like a person waiting for someone to get off at a specific stop knows how to greet the person).</p>
<h3>and yet</h3>
<p>This is the kind of explanation one gives to complete novices. It might have inaccuracies or things that are out of date.</p>
<p>Another thing about this analogy is that the bus can be used to explain a protocol if you say that the amount of data is limited, and that the buses have indices but this might be too confusing for people who are completely new to all of this.</p>
<p><strong>Secondly:</strong></p>
<p>Now that the students have an idea of how information is transmitted between two computers, you can go into explaining that the internet is almost the same, but on a <strong>much bigger</strong> scale.</p>
<p>You can explain the various headers that exist in HTTP with <a href="https://en.wikipedia.org/wiki/List_of_HTTP_header_fields" rel="nofollow noreferrer">this list</a>.</p>
<p>Eventually, the every bus that arrives at the client is sent back with a response saying &quot;I arrived at the client...&quot; and the response includes details on the time it took or other things which the client might send to the server.</p>
<hr />
<p><sup>1</sup>Because the students are new to this, you can simply keep it at that, without explaining <em>why</em> those specific numbers or why this is they way it's been done.</p>

CC BY-SA 3.0
2017-07-08T16:14:49.603Z
2017-07-08T16:14:49.603Z
2020-06-18T08:36:57.023Z
ItamarG3
<p>I have been having trouble finding a good resource (ideally a video) or analogy that helps me to explain how the Internet and the World Wide Web work.</p>

<p>It does not need to be too in-depth. Only enough to cover how web pages are made available to the end user, and how HTTP requests work on the surface. Preferably,  something that isn't over 10 minutes long and that the student can understand without prior knowledge of Web Development.</p>

<p>This is for a first lecture at an "Introduction to the Web" course, where students with zero experience in coding are introduced to HTML, CSS, JavaScript, and usability/accessibility topics. Explaining how the Web works in a concise yet effective manner that sticks has been my biggest challenge so far.</p>

<p>Any suggestions?</p>

<hr>

<p><strong>Update</strong>:</p>

<p>For the first lecture, I ended up using a combination of all suggestions. I used Code.org's videos, but they turned to be a bit too lengthy for the attention spans of my students, so in the next opportunity, I will address this a bit differently.</p>

<p>I will not go in depth into how the Internet works and how the data is transferred, but I will use the buses/highways analogy more superficially or even as an add-on explanation instead. I may go into what the DNS is, but that's about it.</p>

<p>In a Front-End Web Development course that only goes as far as using JavaScript with JQuery, potentially touching on a little bit of what is AJAX, the extra details are unnecessary, so rather than focusing on how the Internet works, I can focus on how Web sites work, or more specifically, what happens behind the scenes from the moment you type in "www.google.com" in the web browser, until the web page is rendered and ready to consume.</p>

<p>The most important bit for my students, perhaps, is to be aware that every asset on a page involves a new request, something more that must be downloaded. And that every element in your HTML document must be "translated" and drawn by the browser. Thus, it is all these assets that must be gathered, and the number of elements to draw onto the browser tab or window, that we need to take into account when developing these pages, because the more of them we have, the longer it takes for the browser to load or update the page.</p>

CC BY-SA 3.0
2017-07-07T15:24:22.463Z
Hello Arwyn, and welcome to Computer Science Educators! Glad to see you here =) This question might not be on-topic - try coming over to our [question chatroom](https://chat.stackexchange.com/rooms/60468/the-guidance-office) for help. You can't technically enter because you don't have enough rep, but a mod can invite you in, and I believe one is.
auden
CC BY-SA 3.0
2017-07-07T15:24:28.027Z
How in-depth does the explanation need to be? Do you need to teach TCP/IP in detail, or would it be satisfactory to give a brief overview of the web?
Aurora0001
CC BY-SA 3.0
2017-07-07T17:24:19.830Z
I've invited you to the Guidance Office (our question help room) and given you access because some users would like to discuss the quality of the question with you.
thesecretmaster
<lesson-ideas><teaching-analogy><resource-request>
Explaining how the Internet and the World Wide Web work
# Explaining how the Internet and the World Wide Web work

(Asked by: username_0 on 2017-07-07)

I have been having trouble finding a good resource (ideally a video) or analogy that helps me to explain how the Internet and the World Wide Web work.

It does not need to be too in-depth. Only enough to cover how web pages are made available to the end user, and how HTTP requests work on the surface. Preferably, something that isn't over 10 minutes long and that the student can understand without prior knowledge of Web Development.

This is for a first lecture at an "Introduction to the Web" course, where students with zero experience in coding are introduced to HTML, CSS, JavaScript, and usability/accessibility topics. Explaining how the Web works in a concise yet effective manner that sticks has been my biggest challenge so far.

Any suggestions?

---

**Update**:

For the first lecture, I ended up using a combination of all suggestions. I used Code.org's videos, but they turned to be a bit too lengthy for the attention spans of my students, so in the next opportunity, I will address this a bit differently.

I will not go in depth into how the Internet works and how the data is transferred, but I will use the buses/highways analogy more superficially or even as an add-on explanation instead. I may go into what the DNS is, but that's about it.

In a Front-End Web Development course that only goes as far as using JavaScript with JQuery, potentially touching on a little bit of what is AJAX, the extra details are unnecessary, so rather than focusing on how the Internet works, I can focus on how Web sites work, or more specifically, what happens behind the scenes from the moment you type in "www.google.com" in the web browser, until the web page is rendered and ready to consume.

The most important bit for my students, perhaps, is to be aware that every asset on a page involves a new request, something more that must be downloaded. And that every element in your HTML document must be "translated" and drawn by the browser. Thus, it is all these assets that must be gathered, and the number of elements to draw onto the browser tab or window, that we need to take into account when developing these pages, because the more of them we have, the longer it takes for the browser to load or update the page.

**Tags:** lesson-ideas, teaching-analogy, resource-request

> **Comments:**
> **username_1**: Hello Arwyn, and welcome to Computer Science Educators! Glad to see you here =) This question might not be on-topic - try coming over to our [question chatroom](https://chat.stackexchange.com/rooms/60468/the-guidance-office) for help. You can't technically enter because you don't have enough rep, but a mod can invite you in, and I believe one is.  
> **username_2**: How in-depth does the explanation need to be? Do you need to teach TCP/IP in detail, or would it be satisfactory to give a brief overview of the web?  
> **username_3**: I've invited you to the Guidance Office (our question help room) and given you access because some users would like to discuss the quality of the question with you.  

---

## 5 answers

### Answer by username_11 on 2017-07-08. Score: 2 | Accepted answer

An analogy which I find useful is **buses**.

One side (server) puts information on a bus and sends the bus to the other side (client\user end). The buses are loaded with data which is a sequence of `1` and `0`1. Each sequence has a passenger before it, and that passenger is used to identify *what sort of data* was loaded onto the bus.

This passenger says whether the data is for creating an HTML file or a CSS stylesheet etc. Now this bus is loaded with everything the server needs to pass to the client, so the bus departs.

Assuming there's a connection, the bus will reach the desired client, because the driver knows the way. This is important to explain, because that's a way to explain how ip addresses and ports work. The client is the final stop and the address of a stop is the ip for that stop.

When the bus gets to the client, the passengers leave the bus and you can explain here that each message (passenger) knows the order they should be in (like a passenger's id or something similar. This is just to avoid going to deep into synchronization etc.).

The data is then arranged into order and by using the information in the header and the client knows how to parse it (just like a person waiting for someone to get off at a specific stop knows how to greet the person).

### and yet

This is the kind of explanation one gives to complete novices. It might have inaccuracies or things that are out of date.

Another thing about this analogy is that the bus can be used to explain a protocol if you say that the amount of data is limited, and that the buses have indices but this might be too confusing for people who are completely new to all of this.

**Secondly:**

Now that the students have an idea of how information is transmitted between two computers, you can go into explaining that the internet is almost the same, but on a **much bigger** scale.

You can explain the various headers that exist in HTTP with [this list](https://en.wikipedia.org/wiki/List_of_HTTP_header_fields).

Eventually, the every bus that arrives at the client is sent back with a response saying "I arrived at the client..." and the response includes details on the time it took or other things which the client might send to the server.

---

1Because the students are new to this, you can simply keep it at that, without explaining *why* those specific numbers or why this is they way it's been done.


---

### Answer by username_4 on 2017-07-07. Score: 2

One analogy I use in my intro class is transportation. The Internet is the roads, bridges, and highways. The World Wide Web is the cars and trucks that travel along these routes, carrying cargo to/from different places.

> **Comments:**
> **username_5**: Yes but the Web is not the only thing that travels on these roads.  

---

### Answer by username_6 on 2017-07-08. Score: 2

Since you mentioned that ideally you were looking for a video, a few years ago I used to show a video to my students: **[The Good Warriors of the Net - IP for Peace](https://www.youtube.com/watch?v=x9XWxD6cJuY)** . It is a bit old, but the main concepts are there.

Another that I used to show my students was: [How the Internet Works in 5 Minutes](https://www.youtube.com/watch?v=7_LPdttKXPc)

Grab the popcorns! :)


---

### Answer by username_7 on 2017-07-09. Score: 1

I gave the following EDRi paper to my students, and they found it very clear. I also had them write a 2 page essay explaining how the internet works, and that also helped them digest the paper.

<https://edri.org/files/2012EDRiPapers/how_the_internet_works.pdf>


---

### Answer by username_8 on 2017-07-09. Score: 1

The videos on the code.org YouTube channel are some of the most helpful I've found.

For example:
[How The Internet Works playlist](https://www.youtube.com/playlist?list=PLzdnOPI1iJNfMRZm5DDxco3UdsFegvuB7)

> **Comments:**
> **username_9**: Hey, welcome to [cseducators.se]! This answer is a bit of a *stub answer* right now. *(Don't worry; SE is insanely complex, and there is a real learning curve. You are not the first first-time poster to have this problem, I promise)* What you should do is edit your answer and flesh it out with a little more detail. Some possibilities: what in particular is good and useful about the videos? What are their downsides (if any)? Where do they fit into a larger context of learning about the material?  
> **username_3**: To add to what @BenI. said, Stack Exchange tends to frown upon "link only answers" (answers that would be useless without the link). Please try and give enough summary and details from the video that someone could gain from this answer without clicking the link.  
> **username_10**: I love those videos and use them all the time. I like how they have diverse presenters who have real and interesting industry jobs. And the explanations are very well done.  

---

