Computer Networks, ICS 651
This page is
http://www2.hawaii.edu/~esb/2018fall.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.
Instructor: Edo Biagioni, esb@hawaii.edu. See here for office hours.
The administrative information for this course is here.
If you have any questions, please contact the instructor.
Schedule
This schedule is subject to change.
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 Spring 2016. If you wish to look
ahead, please refer to that courses, since the broad outline is likely to
be similar. This year's version of the course does present new material
and de-emphasizes or removes material that is no longer relevant.
Section 1
Introduction, APIs, and Applications
Assignments (due Jan 19th): read the
first section of the notes.
Lecture Notes:
- Mon, Aug 20. Course overview, overview of networking,
classes of applications.
Presentation
- introductions
- course overview
Read and do Homework 1.
- Wed, Aug 22. Sockets API.
Presentation
- Sockets API
- reading stream sockets
- Mon, Aug 27. A simple packet network.
Presentation
- implementation strategies
- a simple packet network
- SLIP
- DNS
- homework 2
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
Wednesday September 26th.
- Wed, Aug 29. Domain Name System.
Presentation
- a simple packet network
- DNS
- homework 2
- Internet Protocol
- Wed, Sep 5. The Internet Protocol.
Presentation
- Internet Protocol
- packet forwarding
- IP routing tables
- IP addressing
- local configuration
- Mon, Sep 10. IP addresses and routing.
Presentation
- Project 1
- IP routing tables
- IP addressing
- local configuration
- multiplexed packet networks
- distance-vector routing
- Wed, Sep 12. Routing.
Presentation
- distance-vector routing
- link-state routing
- routing games
- Internet Control Message Protocol
- Mon, Sep 17. IP routing, ICMP.
Presentation
- Wed, Sep 19. Layering, architecture, network devices and device drivers.
Presentation
- Internet checksum
- IP fragmentation
- Layering and architecture
- Network device design
- Device drivers
- Mon, Sep 24. Layering, architecture, network devices and device drivers, multicasting
Presentation
- Layering and Architecture
- Network Device Design
- Device Drivers
- Multicasting Algorithms
- IP Multicasting
- Wed, Sep 26. Exam Review.
Presentation
- packet networking
- Internet Protocol
- routing and project1
- exam
- Mon, Oct 1. 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 October 29th.
- Wed, Oct 3. Introduction to TCP.
Presentation
- Overview of TCP
- TCP connection management
- TCP 3-way handshake
- TCP close
- TCP reset
Links: RFC 793.
- Mon, Oct 8. Reliable Transmission and Sliding Windows.
Nagle algorithm and Bandwidth-Delay product.
Presentation
- Reliable Transmission
- Sliding Window for Flow Control
- Bandwidth-Delay product
- TCP streams and push
- TCP header
- tcpdump and wireshark
Links: RFC 1323.
- Wed, Oct 10. TCP header, network monitoring tools.
Presentation
- TCP header
- TCP options
- different styles of implementation
- tcpdump and wireshark
- Mon, Oct 15. Congestion Control.
Presentation
- congestion collapse
- congestion control: TCP Reno
- congestion control: TCP Vegas
- other ways of detecting congestion
- addressing congestion
- router intervention for congestion
Links: RFC 1122,
RFC 2001,
and RFC 3168
- Wed, Oct 17. Internet Explicit Congestion Notification. Fair Queueing.
UDP.
Presentation
- router intervention for congestion
- Internet Explicit Congestion Notification
- FIFO queueing
- fair queueing
- TCP review
- UDP
- Mon, Oct 22. Additional Transport-Layer Protocols: SCTP, RTP.
Presentation
- Stream Control Transmission Protocol (SCTP)
- Real Time Protocol (RTP) and RTP Control Protocol (RTCP)
Links:
- Wed, Oct 24. Discussion of project 2.
- Mon, Oct 29. RTP, P2P protocols
Presentation
- Real Time Protocol (RTP) and RTP Control Protocol (RTCP)
- peer-to-peer (P2P) networks
- bittorrent
- Distributed Hash Tables, DHTs
- bitcoin
- allnet
- Wed, Oct 31. P2P protocols
Presentation
- Distributed Hash Tables, DHTs
- bitcoin
- allnet
Links:
- Mon, Nov 5. Exam review.
Presentation
- transport layer
- TCP basics
- congestion control
- project 2
- Wed, Nov 7. Exam 2
Section 4
Lower Layer, Wireless, Ethernet, Learning Bridges, Switches.
Assignments: Please read the fourth section
of the notes.
Project 3 assigned,
due Wednesday Dec 5th.
- Wed, Nov 14. Aloha net.
Presentation
- Data Link layer
- Wireless Medium: Broadcast
- Aloha
- 802.11
- Ad-Hoc Wireless networks
- Mobile Ad-Hoc networks (MANets)
- Wireless sensor networks
- Mon, Nov 19. Wireless networks.
Presentation
- 802.11
- Ad-Hoc Wireless networks
- Mobile Ad-Hoc networks (MANets)
- Wireless sensor networks
- Wed, Nov 21. Wireless Networks. Ethernet
Presentation
- Wireless sensor networks
- Ethernet
- ARP
- Ethernet collisions
- Mon, Nov 26. Ethernet. Designing small networks.
Presentation
- Ethernet and IP
- Ethernet NIC
- Hubs
- Learning Bridges and Ethernet Switches
- Ethernet Network Design
- Wed, Nov 28. Ethernet and Application Layer, HTTP and HTTPS.
Presentation
- Ethernet Network Design
- application-level protocol issues
- HTTP
- HTTPS (SSL/TLS)
- Mon, Dec 3. Project 3 presentation for those who have done a
literature survey.
- Wed, Dec 5. 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 December 14th, from 7:30am to 9:30am HST.
The early final exam is scheduled for 12noon-2pm on Friday December
7th. This exam is only available to those who have signed up for it.