Flexible router architectures for point-to-point networks.
Stuart W. Daniel, Kang Geun Shin · Deep Blue (University of Michigan) · 1996
Modern parallel and distributed applications have a wide range of communication characteristics and performance requirements. These diverse characteristics affect the performance and suitability of particular routing and switching policies in point-to-point networks. In this thesis, we identify a core set of architectural features necessary for flexible selection and implementation of multiple routing and switching schemes. Using this, we present a flexible router whose routing and switching policies can be tailored to the application, allowing the network to meet these diverse needs. By dedicating a small programmable processor to each incoming link, we can implement wormhole, virtual cut-through, and packet switching, as well as hybrid switching schemes, each under a variety of unicast and multicast routing algorithms. In addition, a flexible router can support several applications or traffic types simultaneously, enabling better support of applications with multiple traffic classes. As part of this work, we have designed and fabricated the Programmable Routing Controller (PRC). Cycle-level simulations of mesh-connected PRCs demonstrate that flexible routing and switching can significantly enhance application performance. We also present and evaluate a new switching scheme called hybrid switching. Hybrid switching dynamically combines both virtual cut-through and wormhole switching to provide higher achievable throughput than wormhole alone, while significantly reducing the buffer space required at intermediate nodes when compared to virtual cut-through. This scheme is motivated by a comparison of virtual cut-through and wormhole switching through cycle-level simulations, and then evaluated using the same methods. Finally, we show that flexible routing and switching can be provided without a performance penalty by developing the z-channel routing engine. This routing engine limits its flexibility in order to match or exceed the performance level of multicomputer routers using fixed network policies.