08 December 2009

How the Internet Works (activity for elementary/middle school)

The post is the first installment of a "How the Internet Works" activity which is suitable for upper-elementary and middle school students.

I've been running this activity for the past year or so and have been promising to write it up for a while. With Computer Science Education Week happening this week, it seems like the perfect opportunity to get my act together.

I'll be posting this activity in 4 separate parts:

(1) Overview and setting up
(2) The phone system (switching network)
(3) The internet (routing network)
(4) DNS (Domain Name Server)


This activity is an interactive demonstration of what happens when you type a URL into a browser.

In this activity the students will be guided to act out the various parts of the internet: websites, routers, name servers, ISPs and home computers. In this activity, students will:
  • Learn the difference between a switching (phone system) and routing (internet) network
  • See how packets are routed through the internet
  • See how the internet routes around damage
  • See how domain name servers are used to lookup an IP address
It is designed for 8-13 students, but fewer or more can be accommodated if needed.

Required time

  • 30 minutes printing and creating signs
  • 1 hour room prep (creating network on the floor using tape)
  • plus whatever time you need to familiarize yourself with the material
Activity: 45 minutes

Note: Because of the room preparation required for this activity, you may want to present it multiple times back-to-back to different groups of students.


You will need the following materials:
  • Masking tape/chalk to mark network on floor
    Masking tape is useful indoors, chalk works well on hard surfaces outdoors
    You'll want at least a couple of rolls of masking tape for this
    Alternately, if outdoors, you can use hula hoops and rope to mark the network
    Note that you'll need to attach labels to each rope
  • Rope (50' is more than enough)
    This is used to show the phone switched connection
  • Manilla folders
    Used to label the network nodes
    You can skip this if you have another way of labelling nodes
  • Markers
    To write labels on the masking tape and manilla folders.
  • Print out the following:
    Routing tables
    Website results
  • Scissors (to cut out holes for the “images” from the web page printout)
  • Props (optional):
    Small, personal address book
    City phone book (as thick as possible, perhaps have a few from different cities)

(1) Draw the network map on the floor

Draw the following network map on the floor using masking tape:

You'll want an open space roughly 20'x20' (6m x 6m) in size for this.

If you're outdoors, you can use chalk or you can use anything else convenient: hula hoops connected by rope would also work. The important thing is that you're able to label each node and link in the diagram.

Make each node (circles/boxes) large enough for a student to stand/sit within. Circles are hard to do with masking tape, so squares are fine (the shape of each node does not matter). Each square should be about 3' (1m) on each side. Nodes 10-13 can be a different shape (like a triangle) if desired.

Make sure there's enough space between each node so that the links between them are easy to see. Ideally it should take from 2-3 steps (~5' or ~1.5m) to go from one node to another.

The graph is easier to make if you start with the 3 central nodes (1, 2, and 3) and label them for identification. Add the other nodes to this core network, but don't label them yet (since they will change function during the activity) – you will make signs for these nodes. See the next section (about creating signs) for information about labeling each of the nodes.

Each of the links between the nodes should be labeled so that they are easy to identify. If using masking tape, write the label directly on the tape.
  • Write the label more than once along the tape. At least mark the points closest to each node, but it is preferable to mark all along the tape (separated by ~1' (~30cm)).
  • Note that the students will be walking around and viewing the labels from all angles, so make sure that they are easy to read.
  • We use both upper-case and lower-case letters to label each link (e.g., "Aa"). This is because the labels will be viewed from all angles as the students walk around and using just upper or lower case letters leads to cases where the labels are ambiguous ("p" vs. "d" or "H" vs. capital "I" with serifs) .
The graph can be stretched and distorted to conform to your environment, but do not change the topology (i.e., don't change the connections between the nodes).

(2) Create signs to place on the internet nodes

Only 3 of the nodes that you just created can be labeled permanently (i.e.: for the duration of the activity): “1”, “2” and “3”. You can label these using tape or chalk or whatever is convenient.

Don't give permanent labels to the other 10 nodes because we need to give them more descriptive names during the presentation (and these names will change during the course of the activity). You should create name tags for these nodes - I just use manilla folders and wrote the node names on them, but you can label them however you see fit.

You will need to create the following 10 signs:

For Part II (phone system):
  • “206”
  • “425”
  • “212”
(or you can choose whichever 3 area codes you like. Just remember to adjust the switching tables to be consistent.)

For Part III (internet):
  • “google.com”
  • “wikipedia.org”
  • “ISP”
(or you can replace these with whichever search engine / web resource you prefer. Just remember to adjust the routing table and all the packets to be consistent.)

For Part IV (DNS):
  • “root name server” (rns)
  • “.com name server” (.com ns)
  • “.org name server” (.org ns)
  • “ISP name server” (ISP ns)
(3) Print out the switching/routing tables and internet packets

Print out all of the switching/routing tables and internet packets in the PDF files. They should all be printed single sided.

[Links to these files will be in the following posts.]

(4) Cut out holes for the “images” from webpage in last set of packets

The last set of printouts requires that you cut out the squares where the images should be displayed in the web page.

[to be continued...]


saikiran said...

Great information thank you!
i've learned much about internet from this post


Jim Kidston said...

This is a great activity, even without Part IV, but it would be even better with Part IV. Does Part IV exist, and if so, how can I get it?

Gary Kacmarcik said...

Part IV exists now. Sorry for the delay getting it packaged up and posted.