allows binary asynchronous message passing between processes. accepts remote commands and more