| 19 | == Architecture diagram == |
| 20 | |
| 21 | On a abtract level, Synapse tries to split up the Internet application layers in to OSI model layers: |
| 22 | |
| 23 | [[Image(layers.png)]] |
| 24 | |
| 25 | * Modules dont need to be aware of the node on they run on. |
| 26 | * A module can have 1 or more sessions. |
| 27 | * The C++ api is very simple: Just a way to send and receive messages. |
| 28 | * The core keeps track of sessions and knows which module(s) to deliver the message to. |
| 29 | * tcp/json connector: |
| 30 | * A special module to transparantly transport messages to other modules. |
| 31 | * Incomming message src is mapped to local session. |
| 32 | * http/json connector: |
| 33 | * A special module to allow javascript instances in browsers to connect and communicate with eachother. |
| 34 | |
| 35 | |
| 36 | == Other documentation == |
| 37 | |