A non-equilibrium analysis and control framework for active queue management
We present a non-equilibrium analysis and control approach for the Active Queue Management (AQM) problem in communication networks. Using simplified fluid models, we carry out a bifurcation study of the complex dynamic queue behavior to show that non-equilibrium methods are essential for analysis and optimization in the AQM problem. We investigate an ergodic theoretic framework for stochastic modeling of the non-equilibrium behavior in deterministic models and use it to identify parameters of a fluid model from packet level simulations. For computational tractability, we use set-oriented numerical methods to construct finite-dimensional Markov models, including control Markov chains and hidden Markov models. Subsequently, we develop and analyze an example AQM algorithm using a Markov Decision Process (MDP) based control framework. The control scheme developed is optimal with respect to a reward function, defined over the queue size and aggregate flow rate. We implement and simulate our illustrative AQM algorithm in the ns-2 network simulator. The results obtained confirm the theoretical analysis and exhibit promising performance when compared with well-known alternative schemes under persistent non-equilibrium queue behavior.

title: Hopf bifurcation and oscillations in a communication network with heterogeneous delays
abstract: In this paper, we investigate stability, bifurcation and oscillations arising in a single-link communication network model with a large number of heterogeneous users adopting a Transmission Control Protocol (TCP)-like rate control scheme with an Active Queue Management (AQM) router. In the system considered, different user delays are known and fixed but taken from a given distribution. It is shown that for any given distribution of delays, there exists a critical amount of feedback (due to AQM) at which the equilibrium loses stability and a limit cycling solution develops via a Hopf bifurcation. The nature (criticality) of the bifurcation is investigated with the aid of Lyapunov-Schmidt perturbation method. The results of the analysis are numerically verified and provide valuable insights into dynamics of the AQM control system.

title: A Mammography Database and View System for the African American Patients
abstract: In this research, we have obtained and scanned mammography films (within the last ten years) of African American women treated at Howard University Hospital Radiology Department, constructed a database using the digitized mammography images, and developed an image viewing system to display these digital mammograms. The images are scanned with the high resolution Kodak LS85 laser scanner. The digital mammography database is powered by MySQL and PHP. It also has a Web-based search engine (with secure access) so that the information can be made accessible to all medical team members. The image viewing software, D-Viewer, is coded in C# and is intended to help medical professionals view and retrieve large data sets in near real time. We have already digitized 260 cases (one case per patient, twenty to forty films per case). We also have developed a MySQL-based image database, and a PHP-based web-search engine to retrieve cases that have masses (benign or malignant) or calcifications (benign or malignant). This database has been evaluated by medical professionals and the experimental results obtained so far are very promising (high image qualities, fast access time). We are currently developing an image content-based retrieval function for the database system in order to provide improved search capability for the medical professionals.

title: Multi-version memory: software cache management for concurrent B-trees
abstract: The authors describe a new concurrent B-tree algorithm. The algorithm is designed to work well in large-scale parallel or distributed systems in which the number of processors sharing the tree is large or the communication delay between processors (or between processors and the global memory for a shared-memory system) is large relative to the speed of local computation. The basis of the algorithm is an abstraction that is similar to coherent shared memory, but provides a weaker semantics; this abstraction is called multiversion memory. Multi-version memory uses caches but weakens the semantics of ordinary shared memory by allowing process reading data to be given an old version of the data. This semantics is adequate for the non-leaf nodes in the B-tree algorithms presented.<<ETX>>

title: Understanding online archiving

title: Pipes: linguistic support for ordered asynchronous invocations
abstract: We describe pipes, a new linguistic mechanism for sequences of ordered asynchronous procedure calls in multiprocessor systems. Pipes allow a sequence of remote invocations to be performed in order, but asynchronously with respect to the calling thread. Using pipes results in programs that are easier to understand and debug than those with explicit synchronization between asynchronous invocations. The semantics of pipes make no assumptions about the underlying architecture, which enhances code portability. However, the implementation of pipes by the language compiler can be optimized so as to take advantage of any underlying message ordering a particular architecture may provide. Pipes also provide application-transparent flow control for asynchronous invocations and are able to throttle invocations from multiple calling threads. We present four implementations of pipes and show that the performance and space overheads associated with pipes are low.

title: Scalable Concurrent B-Trees Using Multi-Version Memory
abstract: We present a new algorithm for implementing a concurrent B-tree on a multiprocessor. The algorithm replicates B-tree nodes on multiple processors (particularly nodes near the root of the tree) to eliminate bottlenecks caused by contention for a single copy of each node. In contrast to other replication or caching strategies that provide some form of coherence, the algorithm uses a novel replication strategy, calledmulti-version memory. Multi-version memory weakens the semantics of coherent caches by allowing readers to access “old versions” of data. As a result, readers can run in parallel with a writer. Using multi-version memory for the internal nodes of a B-tree reduces the synchronization requirements and delays associated with updating the internal nodes. Experiments comparing the B-tree algorithm based on multi-version memory to other algorithms based on coherent replication show that using multi-version memory enhances throughput significantly, even for small numbers of processors, and also allows throughput to scale with increasing numbers of processors long past the point where other algorithms saturate and start to thrash.