Lecture: 3 hours
Discussion: 1 hour
Prerequisite: Courses ECS 150, ECS 152A
Grading: Letter; homework/projects (33%), midterms/final (67%)
Catalog Description:
TCP/IP protocol suite, network layer protocols, transport layer protocols,
transport layer interfaces, sockets, UNIX network programming, computer
networking applications, remote procedure calls and network management.
Goals:
This course is a follow-up to ECS 152A. While ECS 152A deals with the fundamental
principles of networking and concentrates on the lower layers of the
protocol stack, ECS 152B is devoted to upper-layer protocols, in particular
to the development of software that is used in computer networks. The
course provides the required basics that are needed to develop networking
software along with case studies of several networking applications.
Students can understand how to design and develop networking software
and determine where improvements can be made by critically examining
some existing applications. Through a number of assignments/projects,
students will gain hands-on experience in designing network and transport
layer protocols and computer networking applications and experimentally
evaluate them in the Ethernet network in the Computer Science Department's
Instructional Facility.
Expanded Course Description:
Textbooks:
W. Richard Stevens, UNIX Network Programming, Prentice-Hall, 1990
W. Richard Stevens, TCP/IP Illustrated, Volume 1: The Protocols, Addison Wesley, 1994
References:
D. E. Comer and D. L. Stevens, Internetworking with TCP/IP, Vol. II: Design,
Implementation, and Internals, Second Edition, Prentice-Hall, 1994.
D. E. Comer, Internetworking with TCP/IP, Vol. I: Principles, Protocols, and Architecture, Third Edition, Prentice-Hall, 1995.
W. Stallings, Data and Computer Communications, Fourth Edition, Macmillan, 1994.
Computer Usage:
Students work on UNIX workstations connected by an Ethernet network, as
in the Computer Science Department's Instructional Facility.
Laboratory Projects:
Through a number of assignments/projects (approximately 4-5 over a 10-week
period), students will gain hands-on experience by designing and analyzing
network and transport layer protocols and computer networking applications.
Engineering Design Statement:
The laboratory projects are design-oriented and experimental in nature.
Sample projects include: (1) design and analysis of a reliable transport
protocol over UDP, (2) design and analysis of a distributed database
over a TCP/IP network, and (3) design of a network time protocol using
which clients can synchronize their clocks to a universal time server.
ABET Category Content:
Engineering Science: 1 unit
Engineering Design: 2 units
Goals:
Students will:
Student Outcomes:
Instructors: B. Mukherjee, D. Ghosal, N. Matloff, P. Mohapatra
Prepared by: D. Ghosal (March 2003)
Overlap Statement:
Comparison of this course with other existing courses does not indicate
any overlap.
5/06