This course provides students with a thorough understanding of the basic principles of computer networks, the design philosophy of scalable internetworks, and the details of computer network protocols. Students who complete this course will learn not only how network protocols work but why they are designed the way they are. They will also learn how to implement an event-driven computer network simulator and use it as a tool to study the behavior and performance of network protocols.
Network application and services. Network programming and simulation. Flow and error control. Shared medium access. Packet switching and routing. Internetworking. Multicast. Congestion control. High speed netowrks. Multimedia networking. Network security and management.
Midterm, final exam, and course project.