Note: Information on this page is for course instructors. Please do not distribute the link to this page to non-instructors.

This webpage provides new/updated labs for the Internet Lab.

Questions? Contact jorg@ece.utoronto.ca or parviz@cs.umass.edu.


Content

  1. Overview
  2. Physical and virtual versions
  3. Lab instructions
  4. Lecture slides and videos


Overview

The new version of the Internet Lab can be run on a rack with hardware equipment or virtually on a laptop. The lab content has been majorly revised:

The labs have been used since 2020 for instruction at the University of Massachussetts Amherst and the University of Toronto. If you are interested in the genesis and motivation for Version 2.0, please refer to this document.


Physical and virtual versions

Version 2.0 of the Internet Lab Manual can be run in different modes:

Physical labs: The equipment rack for the labs consists of four Cisco routers, four Linux (Ubuntu 20.04 LTS) PCs, four Ethernet switches, a KVM switch, plus a monitor, keyborad, and mouse. There are two versions of the physical labs, which have a different configurations for the Linux PCs.

  1. PC ("bare metal") version: Here, PCs run a native Ubuntu 20.04 installation. At the University of Toronto, the PCs are installed with a LiveCD version of Ubuntu 20.04, which ensures that each reboot of the PC results in a `clean' install.
    Instructions and code for creating a LiveCD are available here.
  2. VM-based ("hybrid") version: Here, the Linux PCs run virtual machines (VMs). For each student, a separate Linux VM is installed on each PC. Students have admin privileges on the Linux VMs, but not on the Linux of the host installation. This version is used at UMass Amherst.

Virtual labs: Here, students install Virtualbox and GNS3 on their laptop. There are two versions of the virtual labs:
  1. GNS3/Docker: Here, a PC is represented by a Docker container, which is based on a Ubuntu 20.04 LTS image.
  2. GNS3/VM: Here, a PC is represented by Ubuntu 20.04 running in Virtualbox VM.
Note: Each new version of Windows and MacOS generally introduces challenges for installing Virtualbox and GNS3. The challenges have been exacerbated with Apple Silicon Macs. Our instructions for virtual labs are from 2020 (Mac OS X 10.15 on Intel processors and Windows 10).


The lab instructions are written so that there are four versions of Lab 1 (one for each of the variants described above). Starting at Lab 2, the same lab instructions apply to both physical and virtual labs. For the virtual lab, there is an additional "Lab 0" with instructions to install necessary software. This results in the lab sequence shown on the right.


Lab instructions

Note that there are solutions available for the labs.

  • Lab 0 - Software installation (needed only for virtual labs)
  • Lab 1 - Introduction to the Internet Lab
  • Lab 2 - Single Subnet
  • Lab 3 - Multiple Subnets, Static Routing
  • Lab 4 - Dynamic Routing Protocols
  • Lab 5 - LAN Switching
  • Lab 6 - Transport Layer Protocols
  • Lab 7 - NAT and DHCP


  • Lecture slides and videos

    Below are the slide decks for a lecture that accompanies the lab sequence. Lecture videos are available on this page. Usage is permitted for noncommercial entities.