Comp 343/443, Computer Networks, Spring 2005
Peter Dordal, Loyola University Chicago Dept of Computer Science.
MWF 2:45-3:35, 25EP-L09.
The text is the third edition of Peterson & Davie's Computer
Networks, A Systems Approach.
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 midterm is tentatively set for Wednesday, March 16.
The final will be Monday, May 9, at 11:00, in our usual classroom.
Spring 2015 office hours:
Other times by appointment.
I recommend calling first if you're coming from Lakeshore.
Study guides and materials
Here is the final exam study guide,
containing a list of material to be covered on the final and some
related exercises from the text.
Answers are now here.
Here is a more accurate diagram of fast recovery.
Here is the midterm study guide.
Answers are here.
Here are my somewhat disorganized notes.
My Ethernet notes
For your project you are to implement a BUMP client in java.
Details can be found here.
Due date is extended to Friday, April 29, due to server downtime.
I have asked you to write the packet DATA portion to System.out,
and all the other messages (including at least one status message
describing every packet received) to System.err. If you run your
program all this output
may appear jumbled together, but running with redirection, as in
java wclient vanilla > v.out
will result in the transferred file saved to v.out while all the
status messages still written to the screen.
Here are the udp simplex-talk programs that might be useful:
- stalkc.java, the simplex-talk client,
illustrating how to look up a host by name and then connect.
- stalks.java, the simplex-talk server.
Here is a story illustrating the importance of KeepAlive mechanisms.
Note that the hacker in question, "bitchchecker", gets disconnected
because he hacked his own IP address.
The material divides naturally into three "tracks" that we will
alternate between, at will.
Here are the tracks:
This looks like the traditional four-layer model (LAN/IP/transit/application),
but we're not really abiding by any strict layering. Here is further information
about what will be covered in each track:
IP and routing (chapters 3 and 4)
TCP and congestion (chapters 5 and 6)
1.3 sockets programming intro
2.1 links basics
2.5 reliable transmission (moved up to accomodate TCP)
3.1 switching and forwarding (moved up to accomodate IP)
2.4 error detection
3.2 bridged Ethernet
IP and routing
4.1 IP basics
4.2 Distance-Vector and Link-State Routing
4.3 Subnets, supernets, BGP, and IPv6; backbone structure; AADS v MAE
TCP and congestion
5.3 Remote Procedure Call (blast/chan v Sun) (not done)
6.1 Congestion issues
6.2 Queuing models
6.3 TCP congestion management: Reno and Tahoe
6.4 DECbit, RED, and TCP Vegas
6.5 Reservation-based approaches to congestion (not done)
The following paper has useful information about TCP/IP security: Security
Problems in the TCP/IP Protocol Suite by Steve Bellovin.