Skip to content

Notes on ECell Networking

benzrf edited this page Jul 18, 2016 · 1 revision

#WIP ECell's networking is done through ØMQ. As of now, the only major way for a to mesh work is in a type of leader-follower pattern. A leader Piece will bind some ØMQ sockets to a preset IP and ports; follower Pieces connect to the leader. There's limited support for hierarchies where one Piece acts as a leader for some other set of Pieces, but also as a follower of some higher Piece. Most currently-implemented inter-Piece communication goes through the leader - for example, an RPC will be sent to the leader, then from the leader to another Piece. Routing (for RPCs, at least) is accomplished by having each Piece set the identities on its ØMQ sockets to its ID and then using ØMQ's built-in routing. This does not currently work as-is with hierarchies, since a leader can only see sockets connected directly to it.

Clone this wiki locally