Text: The primary text will be An Introduction to Computer Networks (free and online), by me.
Two supplemental resources are:
Grading: There will be a midterm and a final My general
course groundrules are here. Exams will count for between 70% to 80%
of your grade, with homework and programs making up the rest. The final
exam is August 11. The midterm will probably be July 26 or 28.
Class | Readings pre: before class post: after class |
---|---|
Class 1: Jul 5 |
|
Class 2: Jul 7 |
|
Class 3: Jul 12 |
|
Class 4: Jul 14 |
|
Class 5: Jul 19 |
|
Class 6: Jul 21 |
|
Class 7: Jul 26 |
|
Week 8: Jul 28 |
|
Week 9: Aug 2 |
|
Class 10: Aug 4 |
|
Class 11: Aug 9 |
We look at hardware-oriented managment protocols such as SNMP, tools for managing software applications, and policy-based routing protocols such as BGP. We study advanced IP configuration using the linux advanced routing and traffic control toolkit (iproute2 package), and consider how to tune networks for realtime traffic such as RTP and VOIP. Finally, we examine enterprise network-managment tools such as OpenNMS and GroundWork.
There will be a programming project involving development of a network-monitoring tool in java or a suitable scripting language; students should be comfortable with programming at the level of Comp 150.
Here are a few of the poller monitors (from 2006 or so; I'm sticking with these so the line numbers match my notes):
Link to my directoryHere is the LARTC How-To document, by Bert Hubert et al, on linux policy routing and traffic control (iproute2). I recommend reading section 4 (basics of policy routing) and section 9 (basics of queuing and traffic control).
Here is a locally cached copy; lartc.org seems down.
Here is the policy
routing website, with lots more information on linux routing
configuration. Take a look at the online policy-routing book Policy Routing with Linux, by Matthew Marsh.
Other good howtos for Traffic Control:
A Practical Guide to Linux Traffic Control, by Jason Boxman: http://blog.edseek.com/~jasonb/articles/traffic_shaping.
This has good diagrams. See the section blog.edseek.com/~jasonb/articles/traffic_shaping/scenarios.html
for good real-world scenarios.
Traffic Control HOWTO, v 1.0.2 -- Martin Brown: local copy in pdf format.
Here is an example of how to use CBQ queuing to do bandwidth limiting.
See also: http://linux-ip.net/articles/Traffic-Control-HOWTO/classful-qdiscs.html
tldp.org/HOWTO/Adv-Routing-HOWTO/lartc.adv-filter.u32.html:
good article on the sometimes-cryptic u32 classifier.
Finally, here is the iptables man page.
The following web site is a browser for the "official" MIB; that is,
IETF-recognized entries. Note that many of the most important entries are
in fact private (that is, manufacturer-specified).
MIB
Browser, German Institute of Operating Systems & Computer Networks
Here is the set of mibs for net-snmp (formerly ucd-snmp), the open source snmp server most commonly used on linux systems: linuxmib.tgz (tar/gzip version), or linuxmib.zip (zip version).
Here is a selected set of further mib files that are worth looking at to get a sense of the breadth and options available.
The following site contains a nice java SNMP library, and source for the
SNMP Inquisitor tool.
Java
SNMP Package