About CS2105

This course aims to provide a broad introduction to computer networks and some appreciations of network application programming. It covers a range of topics including basic data communication and computer network concepts, protocols, networked computing concepts and principles, network applications development and network security.

The emphasis of teaching is on the working principles and application of computer networks, its structure and components, and the various enabling technologies/techniques with virtually no treatment given to the theories governing the various rigorous network controls techniques. As an integral part of the course, tutorials and practical assignments enforcing learning will also be given. These practical assignments enable students to have some early exposures in network application programming; they should be able to complete by using personal computers and the existing network infra-structure in SoC.

  • Modular credits: 4
  • Average Weekly Workload: Lecture (2 Hr), Tutorial (1 Hr), Assignments (3 Hr), Preparation (4 Hr)
  • Prerequisites: (CS1102 or CS1102C or CS1102S) and CS1104
  • Preclusion: IT2001
  • Assessment: Assignments (20%), Mid-Term (20%), Final (60%)

Textbooks

  • Required: [KR] James F. Kurose and Keith W. Ross, "Computer networking: A top-down approach featuring internet," 3rd Edition, Addison Wesley, 2004, ISBN 0-321-26976-4.

Tentative Lesson Plans

  • Week 1-5: Introduction to computer networks, application-layer protocols, and network security.
  • Week 6-9: Transport-layer protocols.
  • Week 10-13: Network-layer, link-layer, and physical-layer protocols.
  • Week 7: Recess week
  • Week 9: Midterm

Stylesheet modified from MovableType "independence" style