nvflare.private.fed.client.communicator module

class Communicator(ssl_args=None, secure_train=False, client_state_processors: List[Filter] | None = None, compression=None, cell: CoreCell | None = None, client_register_interval=2, timeout=5.0, maint_msg_timeout=5.0)[source]

Bases: object

To init the Communicator.

Parameters:
  • ssl_args – SSL args

  • secure_train – True/False to indicate if secure train

  • client_state_processors – Client state processor filters

  • compression – communicate compression algorithm

client_registration(client_name, project_name, fl_ctx: FLContext)[source]

Client’s metadata used to authenticate and communicate.

Parameters:
  • client_name – client name

  • project_name – FL study project name

  • fl_ctx – FLContext

Returns:

The client’s token

pull_task(project_name, token, ssid, fl_ctx: FLContext, timeout=None)[source]

Get a task from server.

Parameters:
  • project_name – FL study project name

  • token – client token

  • ssid – service session ID

  • fl_ctx – FLContext

  • timeout – how long to wait for response from server

Returns:

A CurrentTask message from server

quit_remote(servers, task_name, token, ssid, fl_ctx: FLContext)[source]

Sending the last message to the server before leaving.

Parameters:
  • servers – FL servers

  • task_name – project name

  • token – FL client token

  • fl_ctx – FLContext

Returns:

server’s reply to the last message

send_heartbeat(servers, task_name, token, ssid, client_name, engine: ClientEngineInternalSpec, interval)[source]
submit_update(project_name, token, ssid, fl_ctx: FLContext, client_name, shareable, execute_task_name, timeout=None)[source]

Submit the task execution result back to the server.

Parameters:
  • project_name – server project name

  • token – client token

  • ssid – service session ID

  • fl_ctx – fl_ctx

  • client_name – client name

  • shareable – execution task result shareable

  • execute_task_name – execution task name

  • timeout – how long to wait for response from server

Returns:

ReturnCode