Architectures

Simple system

Simple system

Hypothetical interserver Ripple system

Complete system

Distributed architectures comparision: P2P, Clusters ...

See a map of component in complete Ripple system

Legend

Symbol

Description

Implementations

Alice

Alice : User

Node

Alice's node : Node

Server

Server

A Ripple server is an application that stores data for each node and manages interactions between nodes. Users connect to the server to interact with their node. Servers may interact with other servers through Ripple Distributed Protocol (not implemented yet). (e.g. Ripplepay.com)

Client

Client

Client Application: (i.e. facebook, ebay ...)

No client has been created or adapted to communicate with Ripple Servers yet.
A list of potential clients exists.

Communication Protocols

Entities connected by Protocol

Description

Implementations

Direct connection

Direct connection

User - Server
or
User - Client

Direct connection

Implemented via SSL in Ripplesite

Ripple Merchant API

Ripple Merchant API

Client - Server

This protocol allows a Client to access payment services provided by a Ripple Server.

It may be implemented via OpenTransact.

Ripple Client API

Ripple Client API

Client - Server

This protocol allows a Client application to access all functions provided by a Ripple Server:
i.e. Create an account, set credit limits, make a payment, etc...

Partially implemented, here

Ripple-Protocol

Ripple Distributed Protocol

Server - Server

This protocol allows interaction between nodes that are hosted in different servers.

Not implemented, a lot of work done here