Data Networks, ICS 451
This page is
http://www2.ics.hawaii.edu/~esb/2002spring.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:
- Monday and Thursday 11am-12noon in my office, POST 311B, phone
956-3891. If I have to travel or otherwise miss a scheduled office
hour, I will send mail to the mailing list. There are no office hours
on holidays.
- I will do my best to reply to email within 24 hours except
on Fridays and weekends.
- Send me email or call me to arrange an appointment. If you send
email, please suggest a time to meet on each of at least two different
dates.
- If you can find me in my office, ask me if I am busy, and I will
let you know if I am available to talk at that time.
Teaching Assistant is Yihua (Robin) Xie, e-mail
yihua@hawaii.edu. Her office
hours are Monday 1:30-2:30 and Friday 11-12, in POST 327, or by
appointment (send her email to schedule an appointment).
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
Lectures are Tuesdays and Thursdays, 3-4:15 in Kuykendall 301.
This course has homework assignments, projects, quizzes, and exams.
The homeworks are not graded, though you may turn them in if you
wish to have them checked or if you have questions.
All students are required to join the course mailing list -- to
join, send email to esb@hawaii.edu. Be sure to include
both your name and your email address (which must end in
@hawaii.edu), and to state that you wish to join (or be
removed from) the ICS 451 mailing list. Please also include the
password information required for the quizzes. Only registered students will be allowed
to join. See here if you need
help accessing your email on your hawaii.edu account.
I send email to the mailing list with announcements and such. The
mailing list may also be used for class-wide discussion on topics
relevant to the course. You should feel free to initiate such discussion.
Grades are assigned based on your performance on:
- three major projects, each worth 20% of the grade (total 60%)
- 2 exams and a final, 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 (grade on a curve).
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) is likewise highly recommended
but does not affect your grade.
The first project must be done individually. The second and third
project may be done individually or in teams of your choosing, up to a
maximum of three students. For the first two projects you must
use the C language, the third project may be in any language supported
by uhunix2.
The textbook is "Computer
Networks and Internets", by Douglas E. Comer (Prentice-Hall),
third edition (2001). The textbook is available from the UH bookstore.
The second edition (1999) is also acceptable,
but chapter numbers must be obtained by reference to the Fall
2001 class schedule.
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 Fall
of 2001. If you wish to look ahead, please refer to that course.
One lecture in the Fall 2001 course correspond to two lectures in this
schedule.
- Jan 15.
Introduction and Overview, Chapters 3 and 26.
Materials Covered:
- course overview
- what is networking?
- clients and servers
- internet service and sockets
- connection-oriented and connectionless transport
- Jan 17.
Sockets API programming. Chapters 27, 28, and 32.
Materials Covered:
- Sockets API
- HTTP and HTML
- Homework 1
Homework 1 assigned, due January 24th.
- Jan 22.
Packet Switching and the Internet. Byte orderings. Chapters 1 and 2.
Materials Covered:
- Packet Switching
- Internet history, measuring Internet size
- ping, traceroute, telnet, round-trip times
- byte orderings, htons
- Jan 24.
Media and Serial Lines, HTML and HTTP. Chapters 4 and 5.
Materials Covered:
- Media
- Serial Lines
- HTTP and HTML
Project 1 assigned, due February 24th.
- Jan 29.
Carriers, Modulation, and Multiplexing. Chapter 6.
Materials Covered:
- HTTP and HTML
- project 1
- Nyquist and Shannon
- carriers, modulation
- modems
- multiplexing
- spread spectrum
- Jan 31.
Framing and Error Detection. Chapter 7.
Materials Covered:
- TDM for packets
- Packet Framing
- SLIP and Byte Stuffing
- Error Detection:
- Feb 5.
LANs. Chapter 8.
Materials Covered:
- Aloha
- Ethernet
- Wireless LANs
- ATM
- Feb 7.
Ethernet. Chapters 9 and 10.
Materials Covered:
- Ethernet Wiring
- Ethernet Encoding
- Ethernet Frames
- Hardware Addressing
- Ethernet Interface Hardware
- Frame Types
- Feb 12.
LAN Extensions. Chapter 11.
Materials Covered:
- ethernet limitations
- extending Ethernet, repeaters
- bridges
- switches
- Feb 14.
Digital Telephony and Related Technologies. Chapter 12.
Materials Covered:
- Digital Telephony:
- Sampling and Quantization
- synchronization
- telephone standards
- SONET
- ISDN, DSL, cable
- Feb 19.
WAN Technologies. Chapter 13.1 - 13.9.
Materials Covered:
- cable modems
- packet switches
- next-hop forwarding
- hierarchical addresses
- exam review
- Feb 21.
Exam 1, covering all the material up to now.
- Feb 26.
Materials Covered:
Routing. Chapter 13.10-13.18.
- Routing: Link-State and Distance-Vector
- network performance
- the ISO 7-layer model
- reliable transmission
- flow and congestion control
Review 1 assigned, due Mar 5.
Project 2 assigned, due March 24th.
- Feb 28.
ATM. Chapter 14.
Materials Covered:
- Asynchronous Transfer Mode
- cells
- adaptation layers
- Virtual Circuits:
virtual channels,
virtual paths,
cell switching,
signaling
- Quality of Service
- ATM LANs
- Mar 5.
Network Characteristics and Layering. Chapters 15 and 16.
Materials Covered:
- Virtual Circuits:
cell switching,
signaling
- Quality of Service
- ATM LANs
- the ISO 7-layer model
- reliable transmission
- flow and congestion control
- Mar 7.
Internetworking. Chapter 17.
Materials Covered:
- reliable transmission
- flow and congestion control
- universal service
- internetworks
- routers
- protocols: TCP/IP
- IP addresses (start)
- Mar 12.
IP addresses. Chapter 18.
Materials Covered:
- IP address classes
- IP address masks
- special IP addresses
- IP addressing examples
- router IP addresses
- IP host routing algorithm
- Address resolution
- Mar 14.
ARP and IP header. Chapters 19 and 20.
Materials Covered:
- ARP header
- ARP request-reply
- IP header
- Alignment and Endianness
- IP processing
- Mar 19.
Fragmentation and Reassembly, Chapter 21.
Materials Covered:
- subnetting
- IP fragmentation
- ICMP
- Mar 21.
IPv6, ICMP, Internet Routing. Chapters 22, 23, and 25.
Materials Covered:
- IP reassembly
- ICMP
- IPv6
- Internet Routing
- Apr 2.
TCP. Chapter 24.
Materials Covered:
- Sequence and Acknowledgement Numbers
- Reliable Transmission
- Windows
- TCP header
- TCP connection establishment
Project 3 assigned, due April 28th.
Review 2 assigned, due April 7th.
- Apr 4.
TCP Connection and Congestion Management, UDP. Chapter 24.
Materials Covered:
- TCP connection setup
- TCP connection shutdown
- TCP congestion control
- TCP checksum and pseudo-header
- UDP
- Apr 9.
DNS. Chapter 29. Also review Chapters 25-28.
Materials Covered:
- DNS hierarchy
- DNS protocol
- DNS lookup
- DNS encoding
- DNS vs IP
- DNS utilities
- Apr 11.
Exam 2, covering all the material since Exam 1.
Note that April 11th office hours are cancelled due to instructor travel.
- Apr 16.
Network Security. Chapter 37.
Materials Covered:
- overview
- encryption technology
- firewalls and Network Address Translation
- DES
- RSA
- Authentication and Kerberos
- Digital Signatures
- Firewalls
- Network Address Translation
- Apr 18.
Security (continued), Initialization and Configuration. Chapter 38.
Materials Covered:
- RSA
- Authentication and Kerberos
- Digital Signatures
- Firewalls
- Network Address Translation
- Initialization
- Apr 23.
Security (continued), Initialization and Configuration. Chapter 38.
Electronic Mail. Chapter 30.
Materials Covered:
- Firewalls
- Network Address Translation
- Initialization
- addressing
- format
- content encoding: MIME
- Simple Mail Transfer Protocol, SMTP
- access: POP, IMAP
- Apr 25.
FTP, Network File Systems, RPC, SNMP. Chapters 31 and 35.
Materials Covered:
- FTP
- NFS
- Remote Procedure Calls
- Simple Network Management Protocol
- Apr 30.
SNMP, Dynamic Web Page Technologies. Chapters 32, 33, and 34.
Materials Covered:
- Simple Network Management Protocol
- URLs
- HTML
- CGI
- Applets
- May 2.
Review, Part 1.
Materials Covered (any excess will be covered
May 7):
- 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
- projects
- May 7
Review.
Materials Covered
- 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
- projects
- discussion
- course evaluations (please bring a number 2 pencil)
The final exam for this course is Thursday May 16, 2:15-4:15pm. The final
covers the entire course.