This paper describes our current work on scheduling communicating real-time tasks in a distributed environment. Unique challenges are presented when one tries to build distributed realtime applications using standard off-the-shelf systems which are in common use but are not necessarily designed for real-time systems. In particular, one must deal with (1) mapping application real-time requirements into system schedulable entities, (2) end-to-end scheduling in the face of possible priority inversion, (3) limited real-time scheduling support and limited number of priorities, and (4) integrating real-time and non-real-time tasks in the same platform. Due to space limitations, this paper focuses on solving the first two challenges. The complete solution will be presented in a forthcoming paper. We have implemented these solutions in our network middleware MidART running on PCs with Windows NT operating system over Ethernet LANs.