There is a new version of the SocketServer up. I added a third handler and some code to select a handler at runtime without editing the source file. The code I used is Macintosh specific, so it won't work on other types of systems. You should study up on the sys.argv function and modify my code to get the same result from a command-line argument. The wire to connect the lab to the rest of the world is in place and has connectors on its ends and is working. The most likely configuration is that there will be two interface cards in the big server (10.0.0.2). The second interface card will have a 153.9.17.x address and be connected to the outside line. All communication with the world will be done by that machine. Anything that needs to be downloaded will come to it and can be further downloaded to other machines in the lab from there. Anybody interested in learning how to build a new kernel for it? There are also two Windows 98 machines with browsers that can be used for surfing when that is the thing to do (i.e. checking for the latest from www/FreeBSD.org. 10.0.0.2 is probably fixed so that it can be an installation server. I don't know what was wrong, but reinstalling FreeBSD 4.2 on it at least lets me connect to it with anonymous ftp from another machine. That's what a remote install does, so it should work. Anybody want to test it? The current version of JDK for Windows is up on this website. Look under JDK in my top-level. The current assignment is broken. We have to do the array thing in the data-link layer first. Mea culpa. There is a new version of jnet.jar on the website. I moved the invocations of the initialize() methods in the layers until after the TimeQueue exists and is ready to start the simulation. I wish somebody with code that needs that would try it. I tried the things that I have, and they all do exactly what they did before, so I don't seem to have broken anything in the process.