Skip to content

Latest commit

 

History

History
34 lines (26 loc) · 2.65 KB

book-chapter-06.asciidoc

File metadata and controls

34 lines (26 loc) · 2.65 KB
FermatP2P

Chapter 6: Fermat Network and Communication Superlayer

This superlayer provides connectivity between devices by establishing a communication channel between a Plug-in running on a local device which requires to consume certain services from its counterpart (i.e. the Plug-in with the same task) running on a remote device.
This superlayer takes the entire responsibility of maintaining the communication channel "alive" as long as it is required, providing this service as a whole, i.e. offering this channel to the external layers and Plug-ins in a transparent way for them, regardless of the communication technology that the layer uses to build this channel dynamically.
The upper layers should not be aware of the technology in use (wi-fi, NFC, p2p, bluetooth, etc.) also problems related to a connection should be solved by the communication layer without disturbing the clients.
This ensures a safe way to offer network services built on top of this layer, not only for Fermat developers but also to third party.

Communication Layer

This is the only layer in this superlayer which provides the communication services as a whole, i.e. components that need to be communicated interact with the layer interface and not directly to any Plug-in inside. Each one of them implements the communication protocols and interfaces for one of the different communication technologies available.

Cloud Client

This Plug-in manages the requirement of a client Plug-in to establish a connection to a counterpart plug-in running on another device. It transmits the call to the cloud server which "switches on" the communication channel to the destination party.

Cloud Server

For certain basic communication demand, a cloud server is a reasonable good option. At the initialization of Fermat, the cloud server manager receives the initial "log in" signal of each service that is starting, and keeps record of their "on-line" status. Then, when a local network service needs to contact its counterpart , the cloud server has the necessary information to establish the communication channel requested.

FermatCoin

Continue Reading …​