This page will be removed on August 6th 2026. Please update your links to refer to https://esb.ics.hawaii.edu/2022spring.ics651/index.html instead.
Computer Networks, ICS 651
This page is
http://www2.hawaii.edu/~esb/2022spring.ics651/index.html
This page is subject to change without notice -- please reload it
in your browser if an item that might affect you may have changed.
Covid-19 notice:
In-person attendance at this semester's ICS 651 is
currently (01/05) scheduled to begin on January 24th. Until then, ICS
651 will be synchronous online on zoom. Zoom access information is in
the resources on Laulima.
Office hours and contact information for the instructor are available
in the Resources on Laulima.
Instructor:
Edo Biagioni,
esb@hawaii.edu.
The administrative information for this course is here.
If you have any questions, please contact the instructor.
Schedule
Synchronous student attendance is highly recommended.
Presentation outlines are in pdf. I usually post these
no later than the day before the lecture. Course notes are in HTML.
This schedule is loosely based on the same course taught in the Fall 2020. If you wish to look ahead,
please refer to that courses, since the broad outline is likely to be
similar. Note that some of the projects will be different, and this
year's version of the course does present new material and de-emphasizes
or removes material that is no longer as relevant.
Section 1
Introduction, APIs, and Applications
Assignment (due Jan 19th): read the
first section of the notes.
- Mon, Jan 10. Course overview, overview of networking,
classes of applications.
Presentation
- introductions
- client-server networking
- course overview
Read and do Homework 1.
- Wed, Jan 12. Sockets API.
Presentation
- Sockets API
- receiving from stream sockets
- Mon, Jan 17 is a holiday, Martin Luther King day.
- Wed, Jan 19.
A simple packet network.
Presentation
- receiving from stream sockets
- implementation strategies
- a simple packet network
- SLIP
- homework 2
- DNS
Read and do Homework 2.
Section 2
Internet Protocol. Routing. Protocol Implementation.
Assignments: Please read the second section
of the notes.
Project 1 assigned, due Friday February 21st.
- Mon, Jan 24. Domain Name System.
Presentation
- a simple packet network
- DNS
- homework 2
- Internet Protocol
- Wed, Jan 26. The Internet Protocol.
Presentation
- homework 2
- Internet Protocol
- packet forwarding
- IP routing tables
- IP addressing
- local configuration
- Mon, Jan 31. The Internet Protocol.
Presentation
- Project 1
- Internet Protocol
- packet forwarding
- IP routing tables
- IP addressing
- local configuration
- Wed, Feb 2. Routing.
Presentation
- IP addressing
- local configuration
- multiplexed packet networks
- distance-vector routing
- Project 1
- Mon, Feb 7. IP routing, ICMP.
Presentation
- RIP
- BGP
- link-state routing
- OSPF
- Internet Control Message Protocol, ICMP
Links:
- Wed, Feb 9. IP routing, ICMP.
Presentation
- Internet Control Message Protocol, ICMP
- IP fragmentation
- Path MTU discovery
- Internet checksum
- Mon, Feb 14. Layering, architecture, network devices and device drivers, multicasting
Presentation
- Layering and Architecture
- Network Device Design
- Device Drivers
- Multicasting Algorithms
- IP Multicasting
- Wed, Feb 16. Exam Review.
Presentation
- packet networking
- Internet Protocol
- routing and project1
- exam
- Mon, Feb 21 is a holiday, Presidents' day.
- Wed, Feb 23. Midterm Exam 1
Section 3
Transport layer, Transmission Control Protocol, Error
Detection and Retransmission, Flow and Congestion Control
Assignments: Please read the third section
of the notes.
Project 2 assigned, due Monday March 21st.
- Mon, Feb 28. Introduction to TCP. TCP connections.
Presentation
- Overview of TCP
- TCP connection management
- TCP 3-way handshake
- TCP close
- TCP reset
Links: RFC 793.
- Wed, Mar 2. TCP connections, Reliable Transmission, Sliding Windows,
Nagle algorithm.
Presentation
- Reliable Transmission
- Sliding Window for Flow Control
- Mon, Mar 7. Bandwidth-Delay product, TCP header,
network monitoring tools.
Presentation
- TCP delayed acks
- Bandwidth-Delay product
- TCP streams and push
- TCP header
- TCP options
- tcpdump and wireshark
Links: RFC 1323.
- Wed, Mar 9. Congestion Control.
Presentation
- congestion collapse
- congestion control: TCP Reno
- congestion control: TCP Vegas
- congestion control: TCP Cubic
- other ways of detecting congestion
- addressing congestion
- router intervention for congestion
Links: RFC 1122,
RFC 2001,
RFC 3168,
and the TCP cubic paper
- March 14-18 is spring recess.
- Mon, Mar 21. Exam Review.
Presentation
- transport layer
- TCP
- project 2
- Wed, Mar 23. Midterm Exam 2
- Mon Mar 28. Discussion of midterm exam 2 and project 2.
Fair Queueing, other transport-layer protocols.
Presentation
- FIFO queueing
- fair queueing
- Stream Control Transmission Protocol (SCTP)
- Real Time Protocol (RTP) and RTP Control Protocol (RTCP), Session Initiation Protocol (SIP)
Links:
- Wed, Mar 30. P2P protocols.
Presentation
- peer-to-peer (P2P) networks
- bittorrent
- Distributed Hash Tables, DHTs
- bitcoin
- allnet
Links:
Project 3 assigned, due Monday April 18th.
- Mon, Apr 4. P2P protocols
Presentation
Links:
- Wed, Apr 6. In-class discussion of network security.
Section 4
Lower Layer, Wireless, Ethernet, Learning Bridges, Switches.
Assignments: Please read the fourth section
of the notes.
- Mon, Apr 11. Aloha net.
Presentation
- Data Link Layer
- Wireless Medium
- Aloha Net
- 802.11
- Wed, Apr 13. Wireless networks.
Presentation
- 802.11
- Ad-Hoc Wireless networks
- Mobile Ad-Hoc networks (MANets)
- Wireless sensor networks
- Mon, Apr 18. Ethernet
Presentation
- Mobile Ad-Hoc networks (MANets)
- Wireless sensor networks
- Carrier Sense Multiple Access
- Frame Format
- Ethernet address
- Address Resolution Protocol
- Collision Detection and Random Binary Backoff
- Then and now: coaxial to hubs, 3Mb/s to Gigabit and 10G
The optional Project 4 assigned, due
Wed May 4th.
- Wed, Apr 20. Ethernet Switching. Designing small networks.
Presentation
- Frame Format
- Ethernet address
- Address Resolution Protocol
- Collision Detection and Random Binary Backoff
- Then and now: coaxial to hubs, 3Mb/s to Gigabit and 10G
- Ethernet and IP
- Ethernet NIC
- Hubs
- Learning Bridges and Ethernet Switches
- Mon, Apr 25. Ethernet and Application Layer, HTTP and HTTPS.
Presentation
- Layers and Device Names
- NAT and Firewall
- DHCP
- IPv6 autoconfiguration
- home network design
- larger Ethernet network design
- security considerations
Section 5
Application Layer.
- Wed, Apr 27. Application layer, HTTP and HTTPS. Network security.
Presentation
- application-level protocol issues
- HTTP
- HTTPS
- HTTP authentication
- network security
- Mon, May 2. In-Class discussion, about TOR and the dark web, and also other networking subjects of interest to the class.
- Wed, May 4. Final Review.
Overview
- IP, routing, protocol implementation
- transport layer, TCP, reliable transmission, flow and congestion control
- lower layers, including wireless and Aloha, Ethernet, learning bridges, switches
- basic issues
The final exam for this class is
scheduled for Friday May 13th, from 9:45am to 11:45am HST.
The early final exam is scheduled for 10:30am-12:30pm on
Saturday May 7th. This exam is only available to those who have signed
up for it.