ZeroMQ is more than a messaging library for parallel environments: IPython has moved to using ZeroMQ as its internal messaging infrastructure. In this section, we will provide further details on the operation of IPython in terms of the ZeroMQ mechanisms underlying it.
To do this, we will introduce some additional socket types, describe how they interact to enable some of IPython's parallel components, and finish up with some use cases employing those components. While this section cannot hope to cover all the details of the IPython parallel architecture, it is hoped that these examples will provide the user with a basic understanding of the underlying mechanisms.