 |
|
CS 5651 - Computer Networks - Fall 2007
Course Syllabus
Location: HH 302 (Lecture), HH 338 (Lab)
Time: 12:00pm - 12:50pm M/W/F (Lecture), 6:00pm - 7:50pm Th (Lab)
Instructor: Pete Willemsen, TA: Ankur Nepalia
Office Hours: 1:30pm - 3:00pm MW, 331 HH
TA Office Hours: 4:00pm - 5:00pm M, 9:00am - 11:00am F, 338 HH
Class WebDrop
Recent Updates and Information...
Important notices, dates, and other information will be posted here.
Java Info - Professor Shute maintains an excellent page of Java references. See his page if you need additional information on programming with Java.
The Slides used in class along with other information can be found on the Resources Page.
Course Description
This course introduces computer networking and associated software communication protocols. Includes network reference models, layered architectures, network services, and network applications. Design of computer networking software and quality of service concepts are also covered. The goals of this course are: (1) to provide students with a solid understanding of computer network hardware and software;
and (2) to provide students with a practical and theoretical knowledge of network architecture and network performance analysis.
You may also want to look over the Computer Networks (CS 5651) Course Description and Computer Networks (CS 5651) Course Outcomes documents on the CS webserver.
Reading (Required)
Computer Networking: A Top-Down Approach Featuring the Internet, 4th ed., by James F. Kurose and Keith W. Ross
We will definitely cover Chapters 1, 2, 3, 4, and 5. After that, we will likely go through Chapters 6 (Wireless Networks) and 8 (Network Security).
Class Requirements and Grading
There will be both weekly homeworks as well as programming assignments in the course. There is also a weekly lab and three exams (2 mid-terms and final exam).
1. Homework Assignments (10%) - Weekly homework problems will be assigned. These assignments must be turned in before class on the assigned due date.
2. Lab (10%) - Labs will provides hands-on experience with computer network analysis, tool usage, and programming. Labs may also be used to validate your programming assignments or discuss problems with the TA.
3. Programming Assignments (20%) - There will be at most 4 programming assignments over the course of the semester. The last programming assignment will be treated like a project. By that, I mean that students will propose their OWN project related to networking and develop it.
4. Exams (20% each) - There will be three exams over the course of the semester, each worth 20% of your grade. The final exam is one of these exams. The date of the final exam is December 19 from 10:00am-11:55am.
The following provides a guide for how the grades will be distributed once a final percentage is computed:
- 90% results in an A-
- 80% results in a B-
- 70% results in a C-
- 60% results in a D
Policies (by taking the class, it is understood that you have read this section!)
Missed Classes
Students are responsible for what goes on in class, including lecture material, handouts, and turning in assignments. If you are unable to attend class it is your responsibility to obtain copies of class notes and any materials distributed in class. You may turn in copies of assignments early.
Missed Exams
No exam will be given early. Exams can be made up only in the case of emergencies such as severe illness or death in the immediate family. You must contact the instructor 24 hours in advance in order to arrange a makeup.
Assignments
All assignments will be due by email/web drop before the beginning of class on the due date. Late assignments will be penalized 20% of the grade for each working day the assignment is late. To turn in an assignment, send an email with attachments to the instructor, or submit via a web drop (ASCII text, PDF, or Word documents will be accepted).
No Incompletes
I do not give incompletes! All work must be done during this semester.
Cheating
Don't do it! It doesn't provide any benefit to you. Programming and homework assignments must be your own work. You may discuss general, high-level, or conceptual issues with other students, but should not discuss actual code with others. Cheating is considered to be sharing code either by copying, retyping, looking at, or supplying a copy of a file. Cheating is also considered to include the use of code supplied off the Internet. If you use Google or other search engines to look for code to help you with a programming assignment, don't do it! I do expect you to be honest and I will respect you as a colleague until I am proven to be wrong. If you are having problems with an assignment, please come talk to me or send me email.
Student Conduct
The instructor will enforce and students are expected to follow the University's Student Conduct Code (http://www.d.umn.edu/assl/conduct/code). Appropriate classroom conduct promotes an environment of academic achievement and integrity. Disruptive classroom behavior that substantially or repeatedly interrupts either the instructor's ability to teach, or student learning, is prohibited. Disruptive behavior includes inappropriate use of technology in the classroom. Examples include ringing cell phones, text-messaging, watching videos, playing computer games, doing email, or surfing the Internet on your computer instead of note-taking or other instructor-sanctioned activities.
Academic Integrity
Academic dishonesty tarnishes UMD's reputation and discredits the accomplishments of students. UMD is committed to providing students every possible opportunity to grow in mind and spirit. This pledge can only be redeemed in an environment of trust, honesty, and fairness. As a result, academic dishonesty is regarded as a serious offense by all members of the academic community. In keeping with this ideal, this course will adhere to UMD's Student Academic Integrity Policy, which can be found at www.d.umn.edu/assl/conduct/integrity. This policy sanctions students engaging in academic dishonesty with penalties up to and including expulsion from the university for repeat offenders.
Equal Opportunity
As instructor I shall make every attempt to treat all students equally, without regard to race, religion, color, sex, handicap, age, veteran status, or sexual orientation. I encourage you to talk to me about your concerns of equal opportunity in the classroom. To inquire further about the University's policy on equal opportunity, contact the Office of Equal Opportunity (6827), 269-273 DAdB.
Students With Disabilities
If you have any disability (either permanent or temporary) that might affect your ability to perform in this class, please inform me at the start of the semester. I may adapt methods, materials, or testing so that you can participate equitably. To learn about the services that UMD provides to students with disabilities, contact the Access Center (8727), 138 Kirby Plaza, or the Office of Equal Opportunity (8217), 269-273 DAdB.
Course Calendar
week |
date |
|
|
readings |
|
9/5 |
Class Overview, Networking Intro, The Internet, Protocols
|
|
|
|
|
|
|
|
|
|
Circuit & Packet Switching, Delay & Loss, traceroute |
|
|
|
|
traceroute, Layered Architecture |
|
|
|
|
Chapter 2, Application Layer |
|
Ch 2 |
|
|
|
|
|
|
9/14 |
Protocols: HTTP, etc... |
|
|
|
|
FTP, DNS |
|
|
|
|
P2P Applications |
|
|
|
|
|
|
|
|
9/21 |
Socket Programming |
|
|
|
|
Transport Layer |
|
Ch 3 |
|
|
Reliable Data Transfer |
|
|
|
|
|
|
|
|
9/28 |
Go-Back-N, Selected Repeat |
|
|
|
|
TCP |
|
|
|
|
TCP Flow Control, Congestion Control |
|
|
|
|
|
|
|
|
10/5 |
TCP Congestion Control |
|
|
|
|
|
|
|
|
|
Exam Review |
|
|
|
|
No Lab |
|
|
|
10/12 |
Exam 1 |
|
|
|
|
Network Layer |
|
Ch 4 |
|
|
IP |
|
|
|
|
|
|
|
|
10/19 |
No Class |
|
|
|
|
Network Layer, Addresses |
|
|
|
|
IPv6, Routing Algorithms (Link State) |
|
|
|
|
No Lab |
|
|
|
10/26 |
Routing Algorithms (DV, Hierarchical, RIP, OSPF) |
|
|
|
|
Routing Algorithms (BGP) |
|
|
|
|
Internet Routing Protocols, Broadcast/Multicast |
|
|
|
|
|
|
|
|
11/2 |
Link Layer |
|
Ch 5 |
|
|
Link Layer, Multiple Access Protocols |
|
|
|
|
|
|
|
|
|
|
|
|
|
11/9 |
Link Layer MAC Addresses, ARP
|
|
|
|
|
Link Layer |
|
|
|
|
|
|
|
|
|
Lab 9 - Finish work on Pgm 3 |
|
|
|
11/16 |
Exam Review |
|
|
|
|
Exam 2 |
|
|
|
|
|
|
|
|
|
Thanksgiving Break (No Lab) |
|
|
|
11/23 |
Thanksgiving Break (No Class) |
|
|
|
|
Wireless Networks, 802.11 |
|
Ch 6 |
|
|
Cellular Internet, Mobile IP |
|
|
|
|
|
|
|
|
11/30 |
Mobile IP |
|
|
|
|
Network Security, Private Key, Public Key Encryption |
|
Ch 8 |
|
|
Public Key Encryption, Digital Signatures, Key Distribution |
|
|
|
|
|
|
|
|
12/7 |
|
|
|
|
|
Security, Review |
|
|
|
|
Wireless Security |
|
|
|
|
Lab |
|
|
|
12/14 |
|
Final Program Due! |
|
|
|
Final Exam |
10:00am - 11:55am |
|
|