This is an old version of this course, from Fall 2014. A newer version is available here.
... with emphasis on the Internet and related protocols, including HTTP, FTP, POP, IMAP, SMTP, DNS, UDP, and TCP/IP with a focus on the application, transport and network layers. The course also introduces the structure, components, and functionality of network architectures including packet switching, error control, flow control, and congestion control. (prereq: CS 2852) (2-2-3)
Basics
- Instructor
- Josiah Yoder
- lıɐɯə
- npǝ˙ǝosɯ@ɹəpoʎ
- Office
- L344 (Library, 3rd floor)
- Office Hours
- See below
- Phone
- ƖƐ96 ᔭᔭᔭ ϛ9ㄥ Google Voice; rings my office, cell-phone, and computer at the same time.
- Textbook
- Computer Networking: A Top-Down Approach, 6th ed., James F Kurose and Keith W Ross, Pearson, 2013
Outcomes
On successful completion of this course, the student will be able to:
- understand what a network protocol is and how it is specified.
- describe the purpose and operation of key application and transport protocols, including HTTP, FTP, POP, IMAP, SMTP, DNS, UDP, and TCP.
- describe the operation of the network layer and IP protocol.
- describe network security concepts, security threats, and risks related to security breaches.
- describe important uses of cryptography in network security.
- write applications using socket connections.
- design and implement a simple web server and email client.
- use a monitoring tool to view and interpret network communication
(These are the official EECS/MSOE outcomes for this class.)
Learning Resources
You can learn by:
- (Supplementary)
- Visiting me in my office or after class
- Studying this site
- (Essential)
- Reading the book
- Watching the course videos
- Participating in in class activities and reviewing your own lecture notes, slides, and code
- Doing & reviewing Labs
- Organizing your notes & writing a summary note-sheet in preparation for quizzes and exams (Exams may not allow the note-sheet)
Me
I want to help you learn. If you have any ideas about how I can improve, please share them with me. This includes changes to the syllabus, class time, lab time, and things I may not have thought of.
I enjoy talking with you. Feel free to drop by my office or email me a time that you would like to meet. You can drop by any time, but I will always be in my office during office hours1.
My Schedule (Office Hours)
Time | Mon | Tue | Wed | Thu | Fri |
---|---|---|---|---|---|
8:00 | Class prep | CS2910 S343 |
Grading | Class prep | Grading |
9:00 | CS2910 S243 |
CS2910 S243 |
|||
10:00 | CS2910 S243 |
CS2910 S343 |
Travel to campus |
CS2910 S243 |
Travel to campus |
11:00 | Class prep | Office Hour |
Office Hour |
Office Hour |
|
12:00 | Lunch | Lunch | Lunch | Lunch | Lunch |
1:00 | Dept Mtg | Class prep | Class prep | Grading | Class prep |
2:00 | SE1011 S359 |
SE1011 S359 |
SE1011 CC53 |
SE1011 S359 |
|
3:00 | Office Hour |
Office Hour |
Admin | ||
4:00 | Admin | Admin | Admin | SE1011 Planning |
The book
(See Textbook in the basics table above.)
This website
These pages are available from the right menu.
Class
This class is being taught "flipped" meaning the non-interactive part of lecture is presented in video, leaving more time for interaction in class. For this to work, it is important that you prepare for class. Each class will have specific preparation requirements (except for the first one). See the online schedule for what is required for each class. Often, taking aon online quiz is an important part of preparing for class. These quizzes are individual. Do not discuss them with your classmates until you have both taken them.
Because this is a flipped class, we will be doing more interactive exercises and much less lecturing during class. I will grade some of the in-class activities to provide you with feedback about your understanding of the material, and will announce which ones are graded at the beginning of the class. In-class activities will be in groups of two or three, and you are welcome to discuss them with your classmates. Feedback on how to make the interactive sessions more helpful is appreciated, especially since this is the first time I am teaching a class this way.
In class, I expect you to focus completely on class material. Instead of checking your email or browsing facebook, participate in the class activities and take notes of what you are learning.
While I don't mind if you have to skip a class, class attendence is essential so you can learn what material I expect you to know, what HW and in-class exercises there will be, etc.
I believe that taking your own organized notes is one of the best things you can do to learn anything (even if you are studying on your own).
If it becomes necessary to consider dropping the class, I am happy to give you advice, but I want you to make the final decision (with the help of your academic advisor). So if you stop coming class, I will not drop you, but instead give you whatever grade you have at the end of the quarter, even if it is an F.
Homework
Some of the in-class activities will be called "Homework." These are graded activities that you will turn in at the end of class.
Labs
This quarter, labs are in groups of two or three.
Labs will be turned in electronically. These are due at 11pm, with a 1 hour grace period. On uploaded PDFs, include your name, date, and the assignment name. Also, please only submit a lab once. Multiple submissions are hard for me to keep track of, especially if I've already started to grade the first one.
Untested code is buggy. I find that if your code doesn't compile or hardly runs, that there are many other errors in it. You can only get partial credit for a lab if it compiles and runs. If it does not compile & run, please fix the lab and submit it later, or drop a feature or two to get it running again (often the best option).
From my experience, turning in all labs on time is the number one indicator that you will pass a class. For every day that goes by beyond the original deadline, it gets much harder to catch up on a lab. As a result, after the deadline, you can receive partial credit for a lab, up to 10% off per day.
At the end of the quarter, all assignments must be turned in by 4:30pm on Friday so that we can wrap things up and I can turn the grades in on time.
Please start early and ask me for help if you get stuck.
Learning Assessment
We will use the following mix of metrics to measure your learning:
Quizzes and class exercises | 20% |
Lab projects | 30% |
Midterm Exam | 25% |
Final Exam | 25% |
Total | 100% |
Although I try my best to avoid it, I sometimes make mistakes in tallying points. If you become aware of an error in grading, please send me an email, and I will fix it and reply by email.
Discussing things in person is a great way to start to resolve an issue. Please also send me the email, to help me keep track of things.
Please maintain your own records of your grades and check them against whatever summaries I send to you, and let me know if I'm missing an assigment that you've turned in, etc. Again, I do my best to not miss anything like this.
Quizzes & Exams
Online quizzes are posted on the class schedule, and need to be completed before class to receive credit. In-class quizzes will be announced in class at least one day in advance.
Because of the difficulty of preparing fair and accurate tests, you cannot retake a quiz or exam if you miss it or do worse than you hoped. I will drop your lowest quiz score, so one 0 should not be a problem. If you need to skip an exam, you should schedule a make-up exam before the missed exam. I don't always give make-up exams, even if students ask in advance. Please don't schedule airline tickets on a class day!
Grade Scale
I use the official MSOE grading scale:
≥93% | ≥89% | ≥85% | ≥81% | ≥77% | ≥74% | ≥70% | <70% |
A | AB | B | BC | C | CD | D | F |
In final grading, I may award a grade higher than the grade scale if I feel it is more accurate than what the "raw numbers" produce.
Integrity
Your integrity is your most valuable academic possession, significantly more valuable than passing a class or getting a high GPA.
Integrity is essentially honesty -- ensuring that everything that it appears you have done or know is true.
It is possible to accidentally give the impression that work is yours, or to accidentally see something on someone else's exam. If something like this happens to you, please let me know. And generally speaking, please do your best to avoid this. Be on the watch! We are very good at fooling ourselves; we can even not "know" that we are cheating when we are!
Because of the importance of maintaining academic integrity, I will report apparent academic dishonesty to the Vice President of Academic Affairs. If this occurs, you will get a copy of the report.
Fine Print
1In rare cases, I may need to reschedule an office hour. I will try to both announce this in class at least a day in advance and email the whole class.
Last modified: Monday, 05-Aug-2013 16:08:01 CDT