Skip to content

Where the buffers live

Clients & servers

So all nodes (dissemination & delivery) knows about all the mem regions of all other nodes.
Clients refer to a remote node. Server refers to this local node.

Buffers

  • Kappa class has list of clients & 1 server.
  • On dissemination role Kappa has list of dissemination workers (one per stream, as one thread). One worker has the buffer for 1 stream disseminate_buffer_.
  • On delivery role Kappa has list of delivery workers. Delivery worker does NOT have the rdma buffer (only the encryption to user buffer). The rdma buffer lives in KappaServer class (video_buffer_memory_ and video_buffer_ fields), and ONLY created in delivery nodes KappaServer::CreateVideoBuffer.