Scheduling real-time traffic in packet-switched networks

Real-time communication is distinguished from general purpose communication by the additional notion of timing correctness. In the non-real-time domain, it is sufficient to verify the functional correctness of a communications solution along with some notion of average throughput and/or delay. In the distributed real-time domain, individual message-level timing correctness is an integral part of the system's requirements. A network offers real-time service if users can specify their timing requirements and receive guarantees that those requirements will be met. Such a network is essential in a distributed real-time system, and is desirable in a system that supports continuous media data-types. Applications that would benefit from real-time communication include distributed control applications, continuous media applications, and network management applications. This thesis develops a unified framework for reasoning about timing correctness of connection-oriented packet-switched networks. The unification is in the form of a set of consistent scheduling models for a variety of network architectures and protocols. The scope of this work spans multi-access communication networks, high-speed switch-based networks, and multi-hop networks built from homogeneous or heterogeneous network types. A scheduling model for the IEEE 802.5 token ring and the ANSI X3T9.5 FDDI protocol is developed which not only analyzes the schedulability of specific message sets, but also guides network designers in setting network and station parameters. The framework is then used to design a reservation-based dual-link network that directly supports our scheduling framework. The concept of coherence is introduced and a theory of coherent dual-link networks is developed. It is shown that a coherent dual-link network can be analyzed as though it is a centralized system. We then consider fast packet-switches and develop an algorithm that sets up a schedule for real-time connections in an input-buffered fast packet-switch. We next demonstrate how the framework extends to multi-hop networks, and develop a routing algorithm to select a path for a new call such that the call's timing requirements are guaranteed, and guarantees to existing calls are not violated. Finally, the problem of jointly scheduling both periodic and aperiodic messages in switch-based networks is addressed.