Resources
Office Hours
Instructor's office hours:
In-person: 16:30 - 17:00 every Thursday
By appointment only: https://hdanny.org/office
Course Assistant (Vaibhav Jain)'s office hours:
By appointment only: https://calendly.com/jainsvaibhav/chat-with-vaibhav
If you have questions on setting up SEED labs, reach out to Vaibhav. All other questions go to Danny.
Online Courses
You are expected to have basic networking knowledge, such as the following:
Ethernet, IP, TCP, UDP, ports
Application protocols, such as HTTP, HTTPS, SSL/TLS, DNS
Although you are not expected to have a detailed understanding of the above (e.g., explaining how the TCP Window works), you should be able to at least describe the concepts at a high level and explain the relationships among the different concepts.
If you are not sure whether you have the prerequisite background knowledge, check out this sample quiz below. If you cannot comfortably answer the questions in the quiz, you are encouraged to take the following online courses for free prior to the start of the semester and learn about the concepts above.
I recommend the following courses:
Google’s Networking Class on Coursera
You can audit the class for free.
Recommended contents from the Coursera course:
Watch all videos under “Week 1”, “Week 2”, “Week 3”, and “Week 4.
Optionally, watch all videos under “Week 5” and “Week 6”.
To complement the Coursea class above, check out the following YouTube videos from Princeton’s Networking Class
Videos 26-32: IP
Videos 33-34: Routing, autonomous systems
Videos 85-89: DNS
Videos 146-151: HTTP
Videos 154-159: CDNs
Textbooks
To supplment the online courses, read the following chapters of the Computer Networks Textbook (5th Edition) by Larry Peterson et al.
Chapter 2.6 - Ethernet
Chapter 3 - Inter-networking
Chapter 4 - Internet routing
Chapter 5.1 and 5.2 - UDP and TCP
Chapter 9.1.2 - HTTP
Chapter 9.3.1 - DNS
Sample Quiz
Here is a sample quiz that tests your understanding of the basic knowledge required for this class. If you think you can comfortably answer all of the questions below, you are likely equipped with the prerequisite knowledge to excel in the class. Otherwise, feel free to take the online courses listed above and/or speak with the instructor.
Your friend, Alex, complains that she cannot access the Internet on her phone.
Let’s say Alex complains to you over the phone. What questions would you ask Alex to help her troubleshoot?
Let’s say you’re in the same room as Alex. You’re both wearing masks. What would you do to help Alex regain Internet connectivity?
On your desktop browser, you type “www.google.com” hit “enter”.
If you are intercepting all packets leaving and entering your computer, what types of packets do you expect to see?
Why do you see such packets?
Hint: Think about DNS, IP, TCP, and HTTP. Bonus points if you can answer with respect to TLS, CDNs, and/or data centers.