Twisted

All functionality not directly used to stream, but related to the streams, is written in Python using Twisted. Since processes like session setup, client connection, or authentication are not continuous and relatively light-weight, Python is ideally suited as a language to implement them in.

Furthermore, Twisted, which is a Python framework, provides a very good network abstraction layer as well as a lot of additional functionality. Twisted makes the distribution of components over multiple workers easy.

Every component gets executed as a Twisted process, running from a main loop in an actual process. Currently each component gets its own main loop. Twisted is event-based, and the various components are all written to integrate with the main loop.