Data Communication Networks
MIT's 6.263J/16.37J covers the fundamentals of data communication networks, focusing on why networks are structured the way they are and the tradeoffs facing designers of next-generation systems. Topics include layered network architecture, Link Layer protocols, high-speed packet switching, queueing theory, Local Area Networks, and Wide Area Networking issues such as routing and flow control. Much of the course centers on network algorithms and their performance analysis, requiring a strong mathematical background and familiarity with probability theory. Materials on MIT OpenCourseWare include lecture notes, problem sets, and exams from the course as taught in MIT's Department of Electrical Engineering and Computer Science. There is no instructor interaction or certificate, but the full set of course materials is freely available for self-study by advanced students already comfortable with probabilistic modeling.