CAF 0.17.6
|
Contains all classes and functions for the Binary Actor Sytem Protocol. More...
Classes | |
struct | header |
The header of a Binary Actor System Protocol (BASP) message. More... | |
class | instance |
Describes a protocol instance managing multiple connections. More... | |
class | message_queue |
Enforces strict order of message delivery, i.e., deliver messages in the same order as if they were deserialized by a single thread. More... | |
class | routing_table |
Stores routing information for a single broker participating as BASP peer and provides both direct and indirect paths. More... | |
class | worker |
Deserializes payloads for BASP messages asynchronously. More... | |
Typedefs | |
using | buffer_type = std::vector< char > |
Storage type for raw bytes. | |
Enumerations | |
enum | connection_state { await_header , await_payload , close_connection , incompatible_versions , incompatible_application_ids , malformed_basp_message , serializing_basp_payload_failed , redundant_connection , no_route_to_receiving_node } |
Denotes the state of a connection between two BASP nodes. More... | |
enum class | message_type : uint8_t { server_handshake = 0x00 , client_handshake = 0x01 , direct_message = 0x02 , routed_message = 0x03 , monitor_message = 0x04 , down_message = 0x05 , heartbeat = 0x06 } |
Describes the first header field of a BASP message and determines the interpretation of the other header fields. More... | |
Functions | |
bool | is_handshake (const header &hdr) |
Checks whether given header contains a handshake. | |
bool | is_heartbeat (const header &hdr) |
Checks wheter given header contains a heartbeat. | |
Variables | |
constexpr size_t | header_size |
Size of a BASP header in serialized form. | |
constexpr uint64_t | version = 3 |
The current BASP version. Note: BASP is not backwards compatible. | |
Contains all classes and functions for the Binary Actor Sytem Protocol.
Denotes the state of a connection between two BASP nodes.
Overlaps with sec
(these states get converted to an error by the BASP instance).
|
strong |
Describes the first header field of a BASP message and determines the interpretation of the other header fields.
Enumerator | |
---|---|
server_handshake | Send from server, i.e., the node with a published actor, to client, i.e., node that initiates a new connection using remote_actor(). ![]() |
client_handshake | Send from client to server after it has successfully received the server_handshake to establish the connection. ![]() |
direct_message | Transmits a direct message from source to destination. ![]() |
routed_message | Transmits a message from ![]() |
monitor_message | Informs the receiving node that the sending node has created a proxy instance for one of its actors. Causes the receiving node to attach a functor to the actor that triggers a down_message on termination. ![]() |
down_message | Informs the receiving node that it has a proxy for an actor that has been terminated. ![]() |
heartbeat | Used to generate periodic traffic between two nodes in order to detect disconnects. ![]() |