Module buf_factory

Source
Expand description

Pooled buffers for zero-copy packet handling.

tokio-quiche maintains multiple buffer_pool::Pool instances for the lifetime of the program. Buffers from those pools are used for received network packets and HTTP/3 data, which is passed directly to users of the crate. Outbound HTTP/3 data (like a message body or a datagram) is provided by users in the same format.

BufFactory provides access to the crate’s pools to create outbound buffers, but users can also use their own custom buffer_pool::Pools. There are two types of built-in pools:

  • The generic buffer pool with very large buffers, which is used for stream data such as HTTP bodies.
  • The datagram pool, which retains buffers the size of a single UDP packet.

Structs§

BufFactory
Handle to the crate’s static buffer pools.
QuicheBuf
A pooled, splittable byte buffer for zero-copy [quiche] calls.

Type Aliases§

PooledBuf
A pooled byte buffer to pass stream data around without copying.
PooledDgram
A pooled byte buffer to pass datagrams around without copying.