Computer Science & Engineering Department, SUNY at Buffalo
Brief Course Description

This course introduces basic elements of modern computer and telecommunication networks. A hybrid five-layer reference model resembling the popular TCP/IP model will be discussed. In each layer, the state-of-the-art hardware and software technologies are introduced. These include, for example, Fiber-optic and Mobile/Cellular communications in the Physical Layer; Wavelength/Time Division Multiple Access Protocols in the Data Link Layer; Unicast and Multicast protocols in the Network Layer; TCP/UDP and ATM Adaptation Layer Protocols in the Transport Layer; and Network Security in the Application Layer.

Class Syllabus
Prerequisites: basic C/C++ programming in the Unix environment, elementary probability, statistics, computer architecture, basic knowledge on the Unix operating system (processes, file IO), elementary data structures and algorithms (stacks, queues)
Teaching staff and related info
  • Instructor
    • Dr. Hung Q. Ngo (
    • Office Hours: Tuesdays and Thursdays 10:00-11:00am. 239 Bell Hall. Generally, you could stop by any time if my door is opened. If the door is closed, then either I'm not in or I do not wish to be disturbed. However, please try your best to come during office hours. For questions that other might potentially be interested in, please use the class news group at sunyab.cse.489, it is also more efficient that way.
  • Teaching Assistant 1 (arbitrarily numbered)
    • Ms. Xiang Yu (
    • Office Hours: Tuesday.1:30pm-3:30pm, Trailer A19.
    • Recitation Section: Tuesday 10:00-10:50am
  • Teaching Assistant 2 (arbitrarily numbered)
    • Ms. Zhaofan Ding (
    • Office Hours: Fridays 4-6pm, Trailer B20
    • Recitation Section: Monday 9:00-9:50am
  • Teaching Assistant 3 (arbitrarily numbered)
    • Mr. Jie Xu (
    • Office Hours: Monday 1:00-3:00pm, Trailer A19
    • Recitation Section: Friday 2:00-2:50pm

Place and Time: M W F, 10:00-10:50am, NSC 222

Required Textbook:

James F. F. Kurose and Keith W. Ross, "Computer Networking: A Top-Down Approach Featuring the Internet", 2nd edition, Pearson Education, July 2002, ISBN: 0201976994. 784pp.

Reference books: it would be very helpful for the programming assignments if you have Stevens' "Unix Network Programming".
  • W. Richard Stevens, "UNIX Network Programming : Networking APIs : Sockets and XTI : Volume 1, Second Edition ", Prentice Hall, Oct 1997, ISBN: 013490012X.
  • W. Richard Stevens, "Advanced Programming in the UNIX Evironment," Addison-Wesley, 1992, ISBN 0-201-56317-7.
  • Andrew Tanenbaum, Computer Networks 3rd ed., 848pp, ISBN: 0133499456, Prentice Hall PTR, March 1996.
  • Douglas E. Comer, "Internetworking with TCP/IP, Volume 1: Principles, Protocols, and Architectures, Fourth Edition 4TH ", Prentice Hall, Feb 2000, ISBN: 0130183806
  • Paul Albitz and Cricket Liu, " DNS and BIND " , O'Reilly & Associates, May 2001
  • Simson Garfinkel and Gene Spafford, " Practical UNIX and Internet Security ", O'Reilly & Associates, October 1995
  • Leonard Kleinrock, " Queueing Systems: Theory, Vol. 1 ", Wiley, John & Sons, January 1975
  • Leonard Kleinrock (Editor) " Queueing Systems Volume 2: Computer Applications ", Wiley, John & Sons, April 1976
  • W. Richard Stevens and Gary R. Wright, "The TCP/IP Illustrated, Volume 1: The Protocols", Addison Wesley Longman, Dec 1993, ISBN: 0201633469
  • W. Richard Stevens and Gary R. Wright, "The TCP/IP Illustrated, Volume 2: The Implementation", Addison Wesley Longman, Jan 1995, ISBN: 020163354X

| Schedule | Assignments | Projects | Lecture Notes | Helpful Links