Data Networks, ICS 451
This page is
http://www2.ics.hawaii.edu/~esb/2001fall.ics451/index.html
This is subject to change without notice -- please reload it in your
browser if there is an item that might affect you that may have changed.
Office is in POST 311B, telephone (808)956-3891, e-mail esb@hawaii.edu. Office hours are:
- Electronic: I will do my best to reply to email within 24 hours except
on Sundays and Mondays. During working hours replies will often be
much quicker. You can also call me at +1-808-956-3891. If I don't
answer the phone, please leave a message with your name and return
phone number.
- By appointment: send me email or call me to arrange an
appointment. If you send email, please suggest a time on each of at
least two different dates. I generally try not to schedule
appointments on Mondays.
- Without appointment: if you can find me in POST (my office is now
in POST 311B), I will let you know if I am available to talk at that
time. I am generally reserving Tuesday 1-2pm and Friday 12-1pm as my
official office hours, when you can normally expect to find me in my
office and available to students (I will probably be late on the days
of Faculty meetings, September 18th, October 16th, and November 20th).
If I know in advance that am unable to make these, I will send email
to the mailing list.
Teaching Assistants are Alexandre Guilloux and Yihua Xie.
Alexandre Guilloux has the job of assist students in the class
with programming (for the projects). His assistance is specifically
intended to help students learn -- it is not his job to help students
find all the bugs in their programs. He has posted his office hours.
Yihua Xie has the job of writing test programs for the projects and
using them, and a review of the code, to assign preliminary grades for
the projects. The instructor uses this information in assigning the
final grade for each project.
Goals
In this course, students will:
- learn about computer networking, focusing on the fundamental
design principles of computer networks and protocols.
- study networks of practical importance, including ATM,
the Internet, and TCP/IP.
- learn to write computer programs to work with the network,
specifically implementing clients, servers, and protocols.
Organization
This class has two sections. Section 1 is face-to-face, Section 2 is
entirely on-line and asynchronous (ALN). In this class, both sections
will be treated in the same way. Students in either section are
welcome to attend the lectures (if they can), but the lectures are not
required. The audio and, if possible, the video of each lecture will
also be recorded and made available on-line to anyone who wishes to
access them asynchronously. The lecture is 1:30-4:10pm on Fridays in
MSB 114.
All students are required to join the course mailing list -- to
join, send email to esb@hawaii.edu. Be sure to include
with your name and your email address (which must end in
@hawaii.edu) and the section you are registered for, and to
state that you wish to join (or be removed from) the ICS 451 mailing
list. Only registered students will be allowed to join. All students
are required to read the mailing list at least twice a week. If you
haven't checked the mailing list in a while, be sure to check it
before submitting any assignment. See here if you need
help accessing your email on your hawaii.edu account.
Grades are assigned based on your performance on:
- three major projects, each worth 20% of the grade (total 60%)
- 3 take-home exams, each worth 10% of the grade (total 30%)
- A number of on-line quizzes. You
must master all the quizzes in order to get a passing grade (C
or better) in the course.
- 2 reviews of your colleagues' projects (total 10%).
A cumulative score of 90% will guarantee an A in the course, 80% a
B, 60% a C, and 50% a D. Depending on the performance of the class as
a whole, I may or may not grade more generously.
There is no final exam. Any homeworks will not affect the final
grade, so turning them in is optional. I do, however, recommend that
you do them. Participation (electronic and in class) likewise is
highly recommended but does not affect your grade.
The first project must be done individually. For the second
project, I will assign teams. For the third project, you may
do it individually or in teams of your choosing, up to a maximum
of four students. For the first two projects you must
use the C language, the third project may be in any language
supported by uhunix2. Projects must be posted to a
publicly accessible, stable web page before the project deadline,
and the URL must be sent to the instructor. Each student will
then be assigned a (different) project to review. Any web page
that is not sufficiently stable (i.e., the project disappears before
the instructor can copy it) will not get credit.
The textbook is "Computer
Networks and Internets", by Douglas E. Comer (Prentice-Hall).
Both the second edition (1999) and the third edition (2001) are fine.
The textbook is available from the UH bookstore. Due to popular
demand, I have also selected an optional reference book for sockets programming. This optional book should
also be available from the UH bookstore, though if everyone decides to
buy them, they will run out. It is most likely that these books are
also stocked or can be ordered by your favorite bookstore -- shop
early to be sure to get the textbook(s).
Cheating Policy: any cheating will result in a grade of 0 for the
assignment or exam the first time it is detected, and a grade of F for
the course for any subsequent instance. There is to be no
collaboration whatsoever on homeworks or exams (you may study
together, but anything you turn in, must be entirely your own
intellectual contribution). This applies to the entire group in the
case of group projects.
Tentative Schedule
This schedule is subject to change.
Lectures notes are in HTML. I usually post notes no later than the
day before the lecture.
This schedule is loosely based on the same course taught in the Spring
of 2001. If you wish to look ahead, please refer to that course.
Two lectures in the Spring 2001 course correspond to one date in this
schedule.
- Aug 31. Introduction and overview.
Second edition: Chapters 23, 24, 25, and 29.
Third edition: Chapters 26, 27, 28, and 32 (students with
the third edition will probably benefit from chapter 3 at this point)
Project 1 assigned, due September 28.
Quiz 1 released.
Materials Covered:
- course overview
- what is networking?
- clients and servers
- internet service and sockets
- connection-oriented and connectionless transport
- Sockets API
- HTTP and HTML
- Project 1
Audio for the lecture: part 1 (.wav, 15MB),
and part 2 as either .wav (35MB) or .mp3 (16MB).
- Sep 7. Second edition: Chapters 1, 2, 3, 4.
Third Edition: Chapters 1, 2, 4, 5.
Materials Covered:
- Packet Switching
- Internet history, measuring Internet size
- ping, traceroute, telnet,
round-trip times
- Media:
- Copper
- Fiber
- Wireless and Satellites
- Serial Lines:
- Asynchronous Communication
- Encoding
- Baud Rates, Maximum Data Rates
Audio for the lecture: part 1 (.mp3, 20MB), and
part 2 (.mp3, 46MB).
- Sep 14. Second edition: Chapters 5 and 6.
Third Edition: Chapters 6 and 7.
Materials Covered:
- Carrier Signal
- Modulation
- Modems
- Multiplexing: Frequency Division, Time Division, Spread Spectrum
- TDM for packets
- Packet Framing
- SLIP and Byte Stuffing
- Error Detection:
Audio for the lecture: part 1 (.mp3, 33MB),
and part 2 (.mp3,
19MB), and part 3
(.mp3, 15MB). I have also approximated what I wrote on the blackboard.
- Sep 21. Second edition: Chapters 7, 8, and 9.
Third Edition: Chapters 8, 9, and 10.
Materials Covered:
- LAN Topology: Aloha, Ethernet, Wireless LANs, ATM
- Ethernet: Wiring, Encoding, Frames, Addressing, Interface Hardware,
Frame Types
Audio for the lecture: part 1 (.mp3, 29MB),
and part 2 (.mp3,
11MB), and part 3
(.mp3, 21MB). I have also taken pictures of both the blackboard and
Ethernet equipment.
- Sep 28. Second edition: Chapters 10 and 11.
Third Edition: Chapters 11 and 12.
First take-home exam assigned.
Materials Covered:
- extending LANs: ethernet limitations, repeaters, bridges, switches
- Digital Telephony: Sampling and Quantization, synchronization,
telephone standards
- SONET, ISDN, DSL, cable
Audio for the lecture: part 1 (.mp3, 37MB),
and part 2 (.mp3,
20MB), and part 3
(.mp3, 12MB). I have also made a record of what I wrote on the blackboard.
- Oct 5. ATM and Wan. Second edition: class materials and Chapter 12.
Third Edition: Chapters 13 and 14.
Project 2 assigned, due October 26.
Materials Covered:
- Asynchronous Transfer Mode
- cells
- adaptation layers
- Virtual Circuits:
virtual channels,
virtual paths,
cell switching,
signaling
- Quality of Service
- ATM LANs
- Packet Switches: Addresses, Forwarding, Routing
Audio for the lecture: part 1 (.mp3, 25MB),
and part 2 (.mp3,
23MB), and part 3
(.mp3, 12MB). I have also made a record of what I wrote on the blackboard.
- October 12. Second edition: Chapters 13, 14, and 15.
Third Edition: Chapters 15, 16, and 17.
Materials Covered:
- Routing: Link-State and Distance-Vector
- network performance
- the ISO 7-layer model
- reliable transmission
- flow and congestion control
- universal service
- internetworks
- routers
- protocols: TCP/IP
- IP addresses (start)
Unfortunately, there is no audio for this lecture. I recorded it as
usual, then the batteries were low so I replaced the batteries.
Replacing the batteries, unfortunately, cleared all the recordings.
To make up for that, I have tried to make the blackboard record more comprehensive than
usual. I encourage even the students who were present at the lecture
to review the material.
- Oct 19. Second edition: Chapters 16 and 17.
Third Edition: Chapters 18 and 19.
Materials Covered:
- special IP addresses
- IP addressing examples
- router IP addresses
- IP host routing algorithm
- ARP and Address resolution
- IP header
- IP processing
Audio for the lecture: part 1 (.mp3, 14MB),
and part 2 (.mp3,
37MB). I have also made a record of what I wrote on the blackboard. Part 1 of the audio is
truncated, for technical reasons :-(, and the blackboard section is
correspondingly more detailed.
- Oct 26. Second edition: Chapters 18, 19, 20, and 21.
Third Edition: Chapters 20, 21, 22, and 23 (students with
the third edition may want to also study chapter 25 at this point).
Second take-home exam assigned.
Materials Covered:
- datagram forwarding, subnetting
- IP fragmentation
- IP version 6
- Internet Control Message Protocol
Audio for the lecture: part 1 (.mp3, 29MB),
part 2 (.mp3, 3MB),
and part 3 (.mp3, 29MB).
I have also made a record of what I wrote on the blackboard.
- Nov 2. Second edition: Chapter 22,
Third edition: Chapter 24.
TCP Connection and Congestion Management. UDP.
Review 1 assigned, due November 10th. If you have not gotten
email about this review, please contact the instructor.
Project 3 assigned, due December 9th.
Materials Covered:
- Transmission Control Protocol:
- Sequence and Acknowledgement Numbers
- Reliable Transmission
- Windows
- TCP header
- TCP connection establishment
- TCP connection shutdown
- TCP congestion control
- TCP checksum and pseudo-header
- User Datagram Protocol
Audio for the lecture: part 1 (.mp3, 30MB),
part 2 (.mp3, 24MB),
and part 3 (.mp3, 15MB).
I have also made a record of what I wrote on the blackboard.
- Nov 9. Second edition: Chapters 26 and 27.
Third Edition: Chapters 29 and 30.
Materials Covered:
Audio and blackboard: part 1 (.mp3, 27MB),
part 2 (.mp3, 35MB),
blackboard.
- Nov 16. Second edition: Chapters 31, 32, and 33.
Third Edition: Chapters 34, 35, and 36.
Materials Covered:
- FTP
- NFS
- URLs
- HTML
- CGI
- Applets
- Remote Procedure Calls
- Simple Network Management Protocol
Audio and blackboard: part 1 (.mp3, 36MB),
part 2 (.mp3, 31MB),
blackboard.
- Nov 30. Second edition: Chapters 34 and 35, Third edition:
Chapters 37 and 38. Network performance
metrics. Bandwidth-Delay products. The future.
Materials Covered:
- Network Security
- Configuration
Audio and blackboard: part 1 (.mp3, 35MB),
part 2 (.mp3, 8.8MB),
part 2 (.mp3, 20MB),
blackboard.
- Dec 7. Review of the entire course and discussion of the future.
Course Evaluation Forms (please bring number 2 pencil). Even if
you are in the online section, you must show up in MSB 114 by 3:30 if
you wish to complete the course evaluation form.
Third take-home exam assigned (on Saturday December 8th).
Materials Covered:
- networking overview, sockets API, application-level networking, HTTP
- DNS, SMTP and email, FTP, NFS, SNMP, network security
- physical layer, framing, error detection
- data-link layer, topology, Aloha, Ethernet, public networks, ATM
- IP and network layer, forwarding, routing, addressing, ARP,
fragmentation, IPv6, ICMP
- transport layer, TCP, reliable transmission, windows and flow control,
connection management, congestion control, UDP
- the future (class discussion)
Audio: part 1 (.mp3, 41MB), and
part 2 (.mp3, 26MB)
(the blackboard was not used).