Internet and Intranet Protocols and Applications
Computer Science Department
Prof. Arthur P. Goldberg
Courant Institute of Mathematical Sciences
New York University
Revision dates: 12/25/1997, 1/18/1998, 1/20, 1/21
Internet and Intranet Protocols and Applications studies the world's
most widely used application level network protocols and software systems.
They are primarily client/server systems, with modifications and enhancements
to improve performance, such as caching and replication, and security,
such as firewalls.
We study protocols, such as HTTP, NNTP and SMTP. We discuss the design
of client and server software, such as Web browsers and servers. We study
the design of network systems, such as corporate intranets.
In examining these systems, we consider the technical challenges faced
by their designers, including issues such as system performance, and network
architecture and management.
Two programming projects will enhance the learning experience: write
a UDP ECHO client and the core of an HTTP/1.1 server.
Course home page: http://www.cs.nyu.edu/cs/faculty/artg/internet/S98/
Time: Wednesday, 7-9 PM
Place: Room 109, Warren Weaver Hall
Email beacon: email@example.com
Teaching assistants: TBD
Office: 715 Broadway, Room 711
Home page: http://www.cs.nyu.edu/cs/faculty/artg/
Office hour: Meetings by appointment
The weekly syllabus, including lecture topics, pointers to slides on-line,
reading assignments and homework assignments are at http://www.cs.nyu.edu/cs/faculty/artg/internet/S98/syllabus.html.
Tanenbaum, Andrew S., Computer Networks, Prentice Hall, Third Edition,
ISBN 0-13-349945-6, 1996.
Comer, D.E. and Stevens, D.L. Internetworking with TCP/IP: Volume
III: Client-Server Programming and Applications, BSD socket version,
Second Edition, Prentice Hall, ISBN 0-13-260969-X, 1996.
David A. Curry, UNIX Systems Programming for SVR4, O'Reilly and
Associates, 1st Edition, July 1996, ISBN Number: 1-56592-163-1.
Bob Quinn, Dave Shute, Windows Sockets Network Programming, Addison-Wesley
Advanced Windows Series, 1995, ISBN: 0201633728.
Computer accounts and resources
All students must be able to access the Web. Any student can obtain an
account on the Computer Science department Sun workstations which will
provide such access.
We assign a substantial network programming project. Therefore, students
should know two things beforehand. First, students should know how
to design, develop and test substantial programs, at the level of one of
the following graduate courses: C++, Java, Compilers, or Distributed algorithms.
Other courses which make similar demands would meet this prerequesite.
Second, students should know the fundamentals of how networks work, as
taught in a university level networking course. This knowledge could
also be obtained via some other means, such as work experience.
Course email list
I must be able to communicate with all students by email. The CS department
has set up a Majordomo email list server on cs.nyu.edu. (Read
about Majordomo in Liu, et. al., Managing Internet Services, Chaps
24 and 25, if you're interested.)
To register, send an email with the body
To multicast an email to the class, email to firstname.lastname@example.org.
To learn more about majordomo, send email with "help" in the body.
Assignments and Student Evaluation
A student can earn a total of 100 points in this course. Points will be
allocated to assignments as indicated. All assignments should be done individually.
The take-home examination will be handed out the last day of class,
and due one week later.