Summary: | 碩士 === 國立清華大學 === 通訊工程研究所 === 94 === One of the most popular approaches for the constructions of optical buffers needed for optical packet switching is to use Switched Delay Lines (SDL). Recent advances in the literature have shown that there exist systematic SDL construction theories for various types of optical buffers, including First In First Out (FIFO) multiplexers, FIFO queues, priority queues, linear compressors, non-overtaking
delay lines, and flexible delay lines. As parallel FIFO queues with a shared buffer are widely used in many switch architectures, e.g., input-buffered switches and load-balanced Birkhoff-von Neumann switches, in this paper we propose a new SDL construction for such queues. The key idea of our construction for parallel FIFO queues with a shared buffer is {\em two-level caching}, where we construct
a dual-port random request queue in the upper level (as a high speed storage device) and a system of scaled parallel FIFO queues in the lower level (as a low speed storage device). By determining appropriate dumping thresholds and retrieving thresholds, we prove that the two-level cache can be operated as a system of parallel FIFO queues with a shared buffer. Moreover, such a two-level construction can be recursively expanded to an $n$-level construction, where we show that the number of $2 \times 2$ switches needed to construct a system of $N$ parallel FIFO queues with a shared buffer $B$ is $O(N \log N \log (B/N\log N))$ for $N >>1$. For the case with $N=1$, i.e., a single FIFO queue with buffer $B$, the number of $2 \times 2$ switches needed is $O(\log B)$. This is of the same order as that previously obtained by Chang \emph{et al}. We also show that our two-level recursive construction can be extended to construct a system of $N$ parallel Last In First Out
(LIFO) queues with a shared buffer by using the same number of $2\times 2$ switches, i.e., $O(N \log N \log (B/N\log N))$ for $N>>1$ and $O(\log B)$ for $N=1$. Finally, we show that a great advantage of our construction is its fault tolerant capability. The reliability of our construction can be increased by simply adding extra optical memory cells (the basic elements in our construction) in each level so that our construction still works even when some of the optical memory cells do not function properly.
|