Computer networks from ISPs to WiFi and cellular networks are a key part
of the information economy. These networks are the foundation for the Web,
and they enable companies such as Google, Facebook and Amazon. This course
introduces the fundamental problems of computer networking, from sending
bits over wires to running distributed applications. For each problem,
we explore the design strategies that have proven valuable in practice.
Topics include error detection and correction, multiple-access, bandwidth
allocation, routing, internetworking, reliability, quality of service,
naming, content delivery, and security. As we cover these topics, you will
learn how the internals of the Internet work to support the Web and other
networked applications. You will develop a detailed understanding of widely-used
networking technologies such as TCP/IP, HTTP, 802.11, Ethernet, and DNS.
Introduction, Protocols and Layering
Physical and Link layers
Retransmissions, Multiple access, Switching
Network layer, Internetworking
Intra- and Inter-domain Routing
Transport layer, Reliability
DNS, Web/HTTP, Content Distribution
Quality of Service and Real-time Apps
David Wetherall, Arvind Krishnamurthy and John Zahorjan
I believe the first running of the class was in late 2012, so the content is still quite current. The course lasts 12 weeks and walks you through a wide range of major topics related computer networks work from the physical layer of sending signals…
I believe the first running of the class was in late 2012, so the content is still quite current. The course lasts 12 weeks and walks you through a wide range of major topics related computer networks work from the physical layer of sending signals on wires or through the air to network security and quality of service. The class provides insight into how many things you likely use every day actually work, like Ethernet, Wifi, routers, switches, hubs, virtual private networks, content distribution network, peer to peer services, and of course, the domain name system and the Internet itself.
The lectures go into a fair bit of technical detail about how different aspects of computer networks function. In some cases, the extra detail is enlightening it can get a bit tedious. Overall, the class was definitely worth taking, even though it does not require any programming. I'd recommend this course to anyone that wants to learn how computers networks work in more depth than you'd gain in your everyday life as a web user.
This is supposed to be an introductory course to computer networks and doesn’t expect much on part of the students. Still, it covers the subject in great depth, from internet history to reference models, from framing techniques to multiple access schemes, routing protocols, congestion control, DNS, CDNs, Quality of Service and Network Security. I think it is a fun and engaging course.
Hi. Computer Networks is an excellent course that helps anyone, even without any prior exposure to Computer science, gain knowledge on how messages are transmitted along links, what are the diverse problems encountered in the process and what are the mechanisms in place to address these issues and keep up the network performance. Dr David Wetherall, with his great teaching skill, presents complex concepts in a very lucid style. I have repeated this course another two times after completing it, in the role of a Community TA. Since the course is rich in content, you gain a lot out of repeating it. Each time the course was repeated, the quizzes and exams have been improved and made challenging. The course demands serious involvement.
Web Demystified: A great series of videos explaining web fundamentals, aimed at complete beginners to web development. Created by Jérémie Patonnier.
The web and web standards: This article provides some useful background on the Web — how it came about, what web standard technologies are, how they work together, why "web developer" is a great career to choose, and what kinds of best practices you'll learn about through the course.