The classes that DO uses internally are fairly tightly coupled, and there’s a lot of legacy cruft. Implementing a custom NSPort subclass that works with NSConnection is so difficult that I’m only aware of one working example (Secure Distributed Objects, which appears to be a dead project now). This pretty much sinks the idea of using DO for any serious network communication, since DO doesn’t encrypt the transport and it’s not practical to add encryption to it.