A mobile channel is a link that provides an asynchronous and anonymous means of communication between components in a distributed system. A channel is called mobile if either of its (channel-)ends can be moved from one component to another without the knowledge of the component at its other end. Such mobility allows dynamic reconfiguration of channel connections among the components in a system, a property that is very useful and even crucial in systems where the components themselves are mobile. In this thesis we present MoCha, a model for distributed Mobile Channels. MoCha describes an efficient and non-trivial implementation of an asynchronous mobile channel in a distributed environment. After presenting an intuitive explanation of MoCha using text and figures, and a simplified version first, we present the full version. Finally, we discuss MoCha, show that it is indeed an efficient and non-trivial implementation, and discuss future work