|Class Time:||Mon/Wed/Fri 2:30pm-3:20pm|
|Office Hours:||Monday 3:30-4:30pm
or by appointment
ctaylor AT oberlin edu
Please include "cs342" in the subject.
|1||Feb 04||Course Overview, Introduction to the Internet||A simple web client|
|Feb 06||Protocols (Read Sections 1.1, 1.5)|
|Feb 08||Security, Network Applications (Read Sections 1.6, 2.1.0 - 2.1.2)|
|2||Feb 11||HTTP (Read Sections 2.2.0 - 2.2.4)|
|Feb 13||Socket Programming (Beej Guide to Socket Programming: System Calls,Client-Server (streaming))|
|Feb 15||Transport Services, Web Caches (Read Sections 2.1.3 - 2.1.5, 2.2.5)|
|3||Feb 18||Email (Read Sections 2.4.0-2.4.4) (Optional: When is Email 'Delivered')||Multi-threaded web server|
|Feb 20||Structure of Distributed Programs: Multithreading (Posix Threads, Blocking, man page for stat)|
|Feb 22||DNS (Read Section 2.5)|
|4||Feb 25||Peer to Peer (Read Sections 2.6.0-2.6.1)|
|Feb 27||Distributed Hash Tables (Read Section 2.6.2)|
|Mar 01||Transport Layer & Multiplexing & UDP (Read Sections 3.1-3.3)|
|Mar 04||Oberlin Cancels Classes|
|Mar 06||Cynthia at Conference|
|5||Mar 11||DNS Assignment Overview (Read Beej Section 5.8, Beej Section 6.3, Assignment Description and Sample Code)||Talking to DNS|
|Mar 13||Reliable Data Transfer (Read Sections 3.4.0-3.4.1)|
|Mar 15||Midterm Review|
|6||Mar 18||Bittorrent Assignment and Select() (Beej Select - Section 7.2)|
|Mar 20||Midterm Exam|
|Mar 22||Midterm Overview|
|Mar 25||Spring Break|
|7||Apr 01||Pipelining (Read Sections 3.4.2-3.4.4)||Event based bittorrent client|
|Apr 03||TCP (Read Sections 3.5.0 - 3.5.4)|
|Apr 05||BitTorrent Assignment|
|8||Apr 08||Flow Control and Connection Management (Read Sections 3.5.5-3.5.6)|
|Apr 10||Congestion Control (Read Sections 3.6, 3.7(Skip 3.6.2-3.6.3))|
|Apr 12||Network Layer, Circuit vs Datagram (Read Sections 4.1-4.2)|
|9||Apr 15||Routing (Read Sections 4.3 (Skip 4.3.5))||Reliable transport over an unreliable link|
|Apr 17||IP (Read Sections 4.4.0-4.4.2)|
|Apr 19||ICMP, IPv6 (Read Sections 4.4.3 - 4.4.5)|
|10||Apr 22||Routing Algorithms (Read Sections 4.5.0 - 4.5.2)|
|Apr 24||Internet Routing (Read Sections 4.5.3, 4.6)||High performance transport over an unreliable link|
|Apr 26||Multiple Access (Read Sections 5.1, 5.3)|
|11||Apr 29||Ethernet, Error Checking (Read Sections 5.2, 5.4.0-5.4.2)|
|May 01||Switches and VLANS (Read Sections 5.4.2-5.4.4)|
|May 03||Wireless and Mobile (Read Sections 6.1-6.3.5)|
|12||May 06||Mobility Principles, Mobile IP (Read Sections 6.5 - 6.6)||Research paper review|
|May 08||Putting it all together (Read Sections 5.7)|
|May 10||Class Wrap-up & Final Review ATT Hacker
Video Poker Hacking Dismissed
US Government Buying 0 Days
CISPA - Cybersecurity Policy
Warrantless Email Search
|May 18||Final Exam 7-9 pm|
My goals and objectives for students taking this course are as follows:
The text for the course is Computer Networking: A Top-Down Approach, 6th Edition, by Kurose and Ross. It is absolutely required that you have one of these books, as there will be daily quizzes based on the required readings.
Computer Networking by Kurose and Ross
Course grades will be calculated based on the following distribution:
We will be using Peer Instruction, a teaching model which places stronger emphasis on classroom discussion and student interaction. As part of this, you will be assigned an iClicker, which you will need to register. You will be expected to attend all lectures, having completed the assigned reading and ready to discuss with your classmates.
I allow for three missed classes by dropping the three lowest quiz scores. If you attend all the classes, you will be rewarded by having your low grades dropped!
You are expected to complete these labs on your own. However, you are free to discuss them with your fellow students, and encouraged to post questions about them on Blackboard. A good rule of thumb is discuss with your classmates away from your computer, and to wait fifteen or twenty minutes between the discussion and when you make changes to your code. Labs will be due on Sunday at 8 pm.
According to college policy, every assignment must include the following signed statement:
Please include this statement in your lab headers, along with your name.
"I have adhered to the Honor Code in this assignment."
Late assignments will be penalized according to the following chart. Extra credit will not be accepted after the initial deadline.
There is a forum for this class on Blackboard. You are encouraged to use this forum as a vehicle to ask questions about the class and the labs, and to answer each other's questions. If you have a question that is at all general, please ask it on Blackboard rather than via email, as this will allow your fellow students to also benefit from the answer.
If you have a disability that might impact your performance in this course, or requires special accommodation, please contact me as soon as possible so that appropriate arrangements can be made. Support is available through Student Academic Services, specifically Jane Boomer. You will need to contact them to get your disability documented before accommodations can be made.