Randy Appleton's Networking Syllabus
Randy Appleton
JXJ 2214
rappleto@nmu.edu
What
This class covers two topics. The main part of this class covers
networking.
We start at the level of electrons in a wire, and end up with web pages
moving around the globe. This is a technical class, not and
end-user
class. Students should have a reasonable idea how to program, but
need not be experts (yet!). The goals of this class include
teaching
how networks work, what makes them fast or slow, and teaching network
programming.
We use Linux for this class. You will write programs for this
class.
Past classes have written web servers, web clients, mail clients, and
FTP
clones, and networked video games.
Grades
Grades are assigned from programs/labs (35%), a midterm or two (35%),
and
a final(20%), and quizes (10%). There will be a quiz after every
section, so
plan
on that. Hopefully the quizes will let you know how you are doing
while there is still time to change it, and let me know what subject
areas
I need to review. I reserve the right to fudge the percentages
above.
I reserve the right to fail anyone if that person has failed to turn in more
than
one program.
Late Policy
I hate late assignments!!! However, it is much better to turn something
in late rather than not at all. The late penalty is one letter grade
per
two workdays late. If there was some unavoidable reason you could not
turn
a project in on time (i.e. car crash, snow day, etc.) just ask me to
waive
the penalty. I'm pretty lenient.
The Class Web Page
You can find the main page for the class at
http://euclid.nmu.edu/~rappleto/Classes/CS228.
This site contains examples of old tests, class notes and sample
code.
Code!
If you use more than three lines of code from any source, including the
internet, ChatGPT, a friend, or anything else YOU MUST CITE IT IN THE COMMENTS.
Don't mess this up. Seriously.
DISABILITY SERVICES
If you have a need for disability-related accommodations or
services,
please inform the Coordinator of Disability Services in the Disability
Services Office at 1104 of the University Center (227-1700; TTY
227-1543). Reasonable and effective accommodations and services
will be provided to students if requests are made in a timely manner,
with appropriate documentation, in accordance with federal, state and
University guidelines
Outcomes
You should learn the following:
- How networks work in theory, particularly IPv4 based networks using TCP and UDP and DNS.
- How to write servers and clients on networks, particularly using C++ and Linux.
- How particular network protocols work. Examples might include HTTP and SMTP.