Comp 343-001/443-001, Computer Networks, Fall 2023

Peter Dordal, Loyola University Chicago Dept of Computer Science.

Tuesdays 4:15-6:45 in the Institute for Environmental Sustainability room 124 (just across Sheridan from the Mundelein center)

The text will be An Introduction to Computer Networks, second edition, written by myself and available for free online. Note that the book is updated regularly.

My general course groundrules are here. Exams will count for between 60% to 70% of your grade, with homework and programs making up the rest.

The midterm will be the week of October 16, and will be on Sakai (probably Wednesday to Thursday). The final will be during the normal finals week.

Most of the course materials and assignments will be on Sakai.


Study guides and materials


Course calendar

Week 1: Aug 29 (hwk 1 assignment) Week 2: Sep 5
Week 3: Sep 12
Week 4: Sep 19 (hwk 2 assignment) Week 5: Sep 26
Week 6: Oct 3
Oct 10: Fall break
Week 7: Oct 17 (midterm week)         Week 8: Oct 24                    
Week 9: Oct 31
Week 10: Nov 7
Week 11: Nov 14
Week 12: Nov 21
Week 13 Nov 28
Week 14: Dec 5




Java simpletalk examples

TCP: server, clientthreaded server
UDP: server, client


Demos

A viewer for the Internet: http://as2914.net. A galaxy-visualization tool is used to display all ISPs (as stars) and links between them.


Programming Projects

You are to do one of the following:

Option 1: HUMP client. Instructions are in hump.html. This is the programming option.

Option 2: Mininet. Instructions are in mininet_projects.html. This uses python as a configuration language. There's no implementation of algorithms.



Summary of coverage, from An Introduction to Computer Networks

An Overview of Networks
Ethernet
Other LANs: Wi-Fi in particular
Links: briefly
Packets: briefly
Abstract Sliding Windows
IP version 4
IP version 6 (selections)
Routing Update Algorithms
Large-scale IP Routing
UDP
TCP
TCP Reno and Congestion Management
TCP Dynamics
Miscellaneous topics

Learning outcomes

Students will understand how the Internet is constructed, how LANs are built and managed, how data is routed to its destination, how connections are managed and implemented, how congestion is handled, and how security can be addressed.