CY350 Computer Networks

This course provides an introduction to computer networks from both a theoretical and software design perspective. The goal is to provide the basic concepts necessary to understand the design and operation of computer networks and gain experience writing programs that use the network. Each level of the TCP/IP protocol stack is examined in detail with a heavy emphasis on socket programming, theoretical foundations, and cybersecurity implications.

Course Content

Lesson Slides

Course Resources

All the resources listed below are considered common knowledge and do not need to be cited.

Where to get the textbook

Textbook Assistance Websites

Guides and Documentation

Course Schedule

Lesson Day1 Day2 Assigned Due Date
1- Introduction to Networking 07 Jan 06 Jan Usage Agreement 11 Jan
2- Protocols, Layers, and Abstraction 09 Jan 08 Jan Problem Set 1 18 Jan
3- Assessing Terrain Conditions: Network Metrics 12 Jan 13 Jan Problem Set 2 25 Jan
4- Application Layer 14 Jan 15 Jan
5- HTTP and the Web 20 Jan 21 Jan
6- DNS and Email 30 Jan 27 Jan Problem Set 3 08 Feb
7- Socket Programming Lab 04 Feb 05 Feb Problem Set 4 15 Feb
8- Transport Layer 09 Feb 10 Feb⚡ Problem Set 5 22 Feb
9- Reliable Data Transfer 11 Feb 12 Feb
10- Transmission Control Protocol 18 Feb 17 Feb Problem Set 6 01 Mar
11- Flow and Congestion Control 20 Feb 19 Feb
12- UDP and QUIC —☃ — 24 Feb
WPR1 Review 25 Feb 26 Feb
WPR1 02 Mar 03 Mar
13- Network Layer 04 Mar 05 Mar Project 1 24 Mar
14- Internet Protocol v4 09 Mar 10 Mar Problem Set 7 20 Mar
15- Internet Protocol v6 11 Mar 12 Mar
16- Routing Protocols- Link State, Distance Vector 16 Mar 17 Mar Problem Set 8 29 Mar
17- Control Plane 18 Mar 19 Mar
18- Link Layer 23 Mar 24 Mar
19- Multiple Access Protocols & Switched LANs 25 Mar 26 Mar
SPRING BREAK 🌿 🏖️ Problem Set 9 12 Apr
SPRING BREAK 🏝️ 🌴 Project 2 19 Apr
20- WiFi, Bluetooth & Cellular Networks 07 Apr 08 Apr
21- Network Security Basics 09 Apr 10 Apr
22- VPNs and Wireless Network Security 13 Apr 14 Apr Project 3 10 May
23- Transport Layer Security 15 Apr 16 Apr
24- In-Class Lab 20 Apr 21 Apr Problem Set 10 03 May
WPR2 Review 27 Apr 28 Apr
WPR2 29 Apr 30 Apr
25- Network Security Appliances 04 May 05 May
26- In-Class Lab 06 May 07 May