This is a self-paced introductory course on computer networking, specifically the Internet. It focuses on explaining how the Internet works, ranging from how bits are modulated on wires and in wireless to application-level protocols like BitTorrent and HTTP. It also explains the principles of how to design networks and network protocols. Participants gain experience reading and understanding RFCs (Internet protocol specifications) as statements of what a system should do. The course grounds many of the concepts in current practice and recent developments, such as net neutrality and DNS security. A textbook is recommended, but not required: you can use either Peterson and Davie or Kurose and Ross, any version in the past 5 years will do.
Students need an introductory course in probability, a strong understanding of bits and bytes, and knowledge of how computers lay out data in memory.
Philip Levis is an Associate Professor of Computer Science and Electrical Engineering at Stanford University. He received his Sc.B. from Brown University in 1999, his M.S. from the University of Colorado at Boulder in 2001, and his Ph.D. from UC Berkeley in 2005. In 2008 he received an NSF CAREER award and a Microsoft Research New Faculty Fellowship. He researches the design and implementation of networked systems, including operating systems and protocols for embedded wireless devices, wireless mesh protocols, network infrastructure for virtual worlds, and energy efficient computing. The results of his research, including the TinyOS operating system, nesC language, Trickle algorithm, and the collection tree protocol (CTP), have been adopted by tens of thousands of users and researchers worldwide. He is a co-founder and the President of Kumu Networks. He really likes excellent engineering and has a self-destructive aversion to low-hanging fruit.
Nick McKeown has been a Professor of Electrical Engineering and Computer Science at Stanford University since 1995. He grew up in the UK and received his BEng from Leeds University in 1986. He moved to the US in 1989 to do an MS and PhD in Electrical Engineering and Computer Science at University of California at Berkeley. His research group works on new Internet architectures, software-defined networks and how to make routers faster. He co-founded several companies based on technology started at Stanford. He is a member of the National Academy of Engineering and recently received the ACM Sigcomm "Lifetime Achievement" Award.