ResNet Online

From Moonlight Design
Revision as of 01:19, 28 October 2007 by Stevenlawrance (talk | contribs)
Jump to navigation Jump to search
ResNet Online's login page, which directs the user to log in using their email username and password

ResNet Online was Bryant University's network registration and information site for computers in the university's residence halls. It has since been superseded by wireless networking and other computer information tracking mechanisms.

Motivation

While I was a junior at Bryant University, I sought to substantially improve the residence hall computer registration process. Previously, registration was a manual process that could take as long as three weeks between the time a student registers a computer and the time that the student's port is enabled. At the end of the Summer of 1999, I designed and implemented an automated process to handle residence hall computer registrations, making the process on-demand for students. My position as a residence hall computer consultant at the university enabled this to happen as I already knew the relevant contacts to make the system official. At the beginning of the Fall semester of 1999, students were able to quickly enable their residence hall Ethernet ports, and the system properly handled the load without failing.

In addition to the registration process, ResNet Online included the following features:

  • Computer moving wizard
  • Student profile update page
  • Integration with Bryant University's DirList2 student database to automatically retrieve student names, email addresses, and phone numbers, simplifying data entry for students
  • FTP-based authentication against Bryant University's IRIX sever for logins
  • Frequently asked questions that linked to each other using a simplified syntax similar to modern wiki software
  • Administrative Ethernet port management that used asynchronous communication with the web server to enable and disable ports. This was years before XMLHttpRequest existed and AJAX was a buzzword
    • This was accomplished by communicating with the server by changing the image location of a progress bar to include the commands and the percentage to display in the URL's query parameters. The PHP script on the server enabled or disabled the requested ports and returned an image of the progress bar. If an error occurred, a HTTP error was returned. JavaScript on the client side handled success and error scenarios
  • Wizards persisted the data entered thus far into a PHPLib session, enabling students to complete a wizard between several sessions without having to re-enter any information during subsequent sessions
  • Traffic graphs from the multi-router traffic grapher (MRTG)
  • Squid proxy server statistics using a customized version of Prostat
    • I customized Prostat to retain its state into a file so that subsequent runs do not need to re-parse the log file parts that the previous run had processed. This substantially increased Prostat's summarization performance as I had it automatically run every 5 minutes for up-to-date statistics
  • DialPad proxy status information for the underlying DialPad proxy that I had set up using ipmasqadm autofw

Please feel free to see the above capabilities in action through the screen shots below.

Port Registration Wizard

When a student logs in, they are asked to select their hall and register their computer through the following sequence of pages. Students do not need to enter all information in one session; a PHPLib session stored any entered information until it was committed to the main database at the end of the wizard. The flow of the wizard largely reveals the database table relationships in ResNet's normalized MySQL database.

Before the wizard begins, students are asked to select their residence hall from an image map. Bryant University has since added several new buildings, making this a historical photograph
Students are asked for their identifying information. If their information was publicly visible in the DirList database, most fields were pre-populated to reduce the amount of data entry required
The pre-release version initially asked for the number of computers to register, but it was decided that the wizard should be limited to just one computer per registration in the first release
Students are asked for the number of operating systems and virus scanners on their computer. Similar to computer counts, network card counts were locked to one for the final release
Students are asked for their network card and virus scanner information. ResNet Online had a database table with a long list of all virus scanners that I could find at the time on Google. The data model allowed students to register computers in other residence halls, though this capability was likely not needed. Instructions for obtaining a media access control (MAC) address were written for all major operating systems, including RedHat Linux
In this final step, students were asked for the wall network port that they plugged their computer into. Some residence halls had stickers with long strings of letters and numbers that did not match the example, so I created a client-side JavaScript-based port wizard that asks for that string along with which side they are plugging into (left or right), and the port wizard then automatically selected the appropriate port from the drop-down list from that information
After the port is activated, the data is committed to the database, and the student is notified. Behind the scenes, this process turned on the port using SNMP and saved the Cisco switch's NVRAM using a quick telnet session

Profile Editing

ResNet-ProfileEditMenu.png

Moving Wizard

ResNet-Move1.png ResNet-Move2.png ResNet-MoveFinished.png ResNet-ErrorHandling.png

Contact Residence Hall Computer Consultant (RCC)

ResNet-ContactRCC.png

Port Editing

ResNet-PortGroup.png ResNet-Ports.png ResNet-PortStack.png

Frequently Asked Questions

ResNet-SOCKS.png

Museum

ResNet-Museum.png

DialPad Status

ResNet-Dialpad.png

Network Traffic Graphs

ResNet-MRTG.png

Web Proxy Statistics