Introduction to computer networks with a special focus on the Internet architecture. Topics include the layered architecture, addressing, naming, routing, common application protocols (web, email) and security. Students develop a distributed application through low-level socket programming.