nebula.core.network.communications

Contents

nebula.core.network.communications#

Classes#

Module Contents#

class nebula.core.network.communications.CommunicationsManager(engine)#
Parameters:

engine (nebula.core.engine.Engine)

addr#
host#
port#
config#
id#
register_endpoint#
wait_endpoint#
connections_lock#
connections_manager_lock#
connection_attempt_lock_incoming#
connection_attempt_lock_outgoing#
pending_connections#
incoming_connections#
outgoing_connections#
ready_connections#
received_messages_hashes#
receive_messages_lock#
connections_reconnect = []#
max_connections = 1000#
network_engine = None#
stop_network_engine#
property engine#
property connections#
property mm#
property discoverer#
property health#
property forwarder#
property propagator#
property mobility#
async check_federation_ready()#
async add_ready_connection(addr)#
async handle_incoming_message(data, addr_from)#
async handle_discovery_message(source, message)#
async handle_control_message(source, message)#
async handle_federation_message(source, message)#
async handle_model_message(source, message)#
async handle_connection_message(source, message)#
get_connections_lock()#
get_config()#
get_addr()#
get_round()#
async start()#
async deploy_network_engine()#
async handle_connection_wrapper(reader, writer)#
async handle_connection(reader, writer)#
async stop()#
async run_reconnections()#
verify_connections(neighbors)#
async network_wait()#
async deploy_additional_services()#
async include_received_message_hash(hash_message)#
async send_message_to_neighbors(message, neighbors=None, interval=0)#
async send_message(dest_addr, message)#
async send_messages(messages, interval=0)#
async send_model(dest_addr, round, serialized_model, weight=1)#
async send_models(models, round)#
async establish_connection(addr, direct=True, reconnect=False)#
async connect(addr, direct=True)#
async register()#
async wait_for_controller()#
async disconnect(dest_addr, mutual_disconnection=True)#
async get_all_addrs_current_connections(only_direct=False, only_undirected=False)#
async get_addrs_current_connections(only_direct=False, only_undirected=False, myself=False)#
async get_connection_by_addr(addr)#
async get_direct_connections()#
async get_undirect_connections()#
async get_nearest_connections(top=1)#
Parameters:

top (int)

get_ready_connections()#
check_finished_experiment()#