The goal of this project is to develop and extend our multichannel audio, gesture and data acquisition platform, RB-2, for LAN and WAN applications. The current generation of this device is connected directly via 100-BaseT crossover cable to laptop and desktop computers. In this project we will connect a dozen of these boxes and several dozen computers to a high capacity switch and develop a specialized application level router/server system attached to the Gigabit-Ethernet ports of the switch. The application level router has a lot in common with a VOIP PBX, but the challenging performance requirements of the applications for this platform have not been met in commercial products from the audio, telecommunications or network industries. These challenges, primarily QOS-related include: all data streams have to be clock-synchronous, all delays must be controlled, characterized and very low. Instead of routing on a per packet basis, the application router has to strip streams of data from packets and remultiplex and packetize them. For example, in the case of audio data this may involve mixing computations to merge streams. For gestural data, such as MIDI, time-stamped midi streams will be merged.

The Rimas Box (RB-2) Platform:
The RB-2 is essentially a multiplexor and de-multiplexor for a wide range of serial digital data streams including, 100Base-T Ethernet, MIDI asynchronous serial, ADAT light pipe 8-channel audio, S/PDIF and AES-3 2-channel digital audio, SSI. The only processing engine in the box is a large Xilinx FPGA. We have developed all the VHDL code to handle the serial data from these sources and also assemble and disassemble IP and UDP packets. The use of an FPGA for all processing is unusual but has resulted in good performance and lower development and manufacturing costs. A subgoal of this proposal is to establish the efficacy of this FPGA/VHDL approach as we scale to LAN and WAN applications of the box. New features that we will support include support for automatic discovery protocols, network-wide clock synchronization and delay management, and situations demanding signal processing of the data streams.

The latest incarnation of the RB-2 has two 100Base-T ports. One of these is configured to support the powered ethernet schemes under development as 802.3af. This second port is useful in several application contexts including GMICS, a music network standard under development by Gibson Guitar Inc., and VOIP. For this project we will use the second port for debugging and performance monitoring as it can be easily configured to replicate the other port or exchange "out-of-band" packets.

Application Requirements:
A key feature of CNMAT's application oriented-research facility is that research results are tested through live performance and music production. As a result CNMAT's facility at 1750 Arch Street, Berkeley has a live performance space, main studio, and several project studios. When CNMAT was founded 10 years ago, we expected that all audio and possibly video would be digitally routed around the building. Even now no viable systems are commercially available to meet our requirements which are typical of medium-sized audio, film and video studios. Although bandwidth requirements are modest in these days of Gigabit links, latency must be extremely low and well-controlled and sample clock synchrony must be maintained throughout the system. The biggest challenge for a digital system is reliability. The space-multiplexing analog cable approach we are currently using although expensive, bulky, and hard to configure is extremely reliable. We have no global system failure mechanisms to worry about and most failures are in individual connectors or cable runs which can be substituted for. We have identified the routing/server system itself as the most important

Research Approach:
We have chosen to use an existing network of video cables to distribute an out-of-band "house" synch. to simplify clock rate synchrony. We will depart from the common practice of a simple fixed-frequency clock and instead use an AES-3 signal which allows for absolute time stamps and other information to be broadcast. In-band approaches have not been able to meet the quality requirements of professional audio and introduce latency and jitter.

One of the most unusual features of this project is how we plan to make the application-level router/server reliable. The idea is to use two servers in an "Active-Active" redundant configuration. Because there is no time to support traditional time-out/retransmit failover mechanisms we will instead use a stateless protocol where all packets are processed identically and transmitted reduntantly by two servers. The RB-2's simply pick either packet source to process within a buffer acquisition time window. Although wasteful in bandwidth, this approach makes it unnecessary for the servers to monitor each other or the clients to poll the servers. We will explore several approaches with different cost/reliabilty tradeoffs including one that uses the RB-2's two Ethernet ports and fully replicates everything including the cabling switch and router, and another scenario where only the servers are replicated.