This is a special topics course that emphasizes hands-on experience in two of the newest networking technologies: Gigabit Ethernet and Scheduled Transfer. Our goal is to develop a prototype implementation of the Scheduled Transfer Protocol for Linux, using Gigabit Ethernet cards from Essential Communications (an Albuquerque based company).
The Scheduled Transfer Protocol is being developed as part of the HiPPI 6400 standard and is frequently called "OS by-pass." This protocol addresses one of the most nagging problems in high speed networking: the cost of memory copies in the protocol stack. This cost has long been recognized as a significant part of end-end delay in network communications. Scheduled transfer defines receive side structures that permit the transfer of multiple packets directly to user memory space without requiring intervention from the operating system. That is, the transfer "by passes" the operating system and the normal TCP/IP protocol stack.
The Gigabit Ethernet cards developed by Essential Communications have a programmable interface based on a proprietary, MIPS-like, processor. These cards are being made available even before the standard for Gigabit Ethernet is formally adopted. Each card has between one half and one megabyte of local memory which can be used to store a control program, index tables required by the scheduled transfer protocol, and buffers used for temporarily holding data being transferred between the controller and the network.
In our prototype implementation we will develop a Linux kernel module that establishes the protocol control program and provides the OS support needed for this control program. When finished this platform will make an excellent platform prototype for more general high-speed networks research.
There are at least three skills that you will get from this class:
As a minimum, students should have completed a course that surveys operating system design issues and strategies and should have worked on a large individual or group project. Courses in networking and/or compiler construction, although not absolutely required, would be very helpful.
If you would like to learn more about this class, we encourage you to contact either Professor Brayer or Maccabe. If you would like to enroll in this class, please send **email** describing your interest and background (i.e., classes completed and any relevant experience) to **both** Professors Brayer and Maccabe.