In a real-time network, it is not practical to have one centralized scheduler manage all the network resources, e.g., the transmission links and buffer space. Instead, each node has its own scheduler which manages the various resources at that node. In an ideal case, the schedulers are completely independent, and the well-known scheduling and analysis techniques developed for single-node systems can be used, thus greatly simplifying the real-time network design. However the use of independent schedulers may lead to buffer overruns or missed deadlines and hence, network failure. This thesis addresses the problems that arise in scheduling real-time messages in a packet-switched network that has multiple schedulers and has limited buffer space. In our development of the schedulers and the mechanisms for synchronization between the schedulers, we address the following issues: the complexity of the scheduler, the complexity of the synchronization mechanism, the scheme for admission control, the achievable utilization of the network, the ability of the scheduler to meet diverse real-time requests, and the robustness of the scheduler under unpredictable conditions such as temporary overload.