Glossary

Batch

A contiguous sequence of one or more Zenoh messages transmitted as a single unit on a transport link. See Batching.

Client

A Zenoh node role that connects to exactly one Router or Peer and delegates all routing. See Roles.

Chunk

A path-like segment of a key expression, delimited by /. See Key Expressions.

Declaration

A control message that announces or retracts an entity (Subscriber, Queryable, Token) or a key expression alias within a session. See Declarations.

Entity

A named protocol role hosted by a Zenoh session: Publisher, Subscriber, Queryable, Storage, or Token. See Entities.

Fragment

A portion of a large Zenoh message that exceeds the transport MTU, split across multiple frames. See Fragmentation.

HLC

Hybrid Logical Clock. A clock algorithm that produces monotonically increasing timestamps combining physical time and a logical counter, used to order Zenoh events globally.

Interest

A session message that requests a snapshot of current matching declarations from a peer, used by late-joining nodes. See Interests.

Key Expression (KE)

A UTF-8 string used to address Zenoh resources, supporting wildcard characters and *. See Key Expressions.

Lease

The maximum duration without receiving any message (including KeepAlive) after which a session is declared dead. See Keep-Alive.

Locator

A network address string of the form <protocol>/<address>:<port> used to establish a transport link.

Peer

A Zenoh node role that may connect to other Peers and Routers and perform limited message forwarding. See Roles.

Publisher

An entity that sends data values or deletions to a key expression. See Entities.

Query

A request for data addressed to a key expression, handled by matching Queryables. See Query (REQUEST / QUERY).

Queryable

An entity that responds to queries with zero or more Reply messages. See Entities.

Reply

A response to a Query, containing a value, an error, or a deletion notification. See Reply (RESPONSE / RESPONSE_FINAL / REPLY / ERR).

Resource

A named datum identified by a concrete key (a key expression without wildcards).

Router

A Zenoh node role that actively routes messages between sessions by maintaining a full routing table. See Roles.

Scouting

The sub-protocol by which Zenoh nodes discover each other on a network. See Scouting.

Session

A logical association between two Zenoh nodes, established over one or more transport links via the INIT/OPEN handshake (unicast) or JOIN (multicast). See Session.

Storage

A special Queryable that also subscribes to and persists published data. See Entities.

Subscriber

An entity that receives data delivered to matching key expressions. See Entities.

Token

An entity that asserts liveliness on a key expression; its presence and disappearance can be observed by other sessions. See Entities.

Transport Link

A point-to-point or multicast communication channel underlying a Zenoh session. See Links.

VLE

Variable-Length Encoding. The compact integer encoding scheme used in the Zenoh binary wire format. See wire:primitives.adoc#vle.

WireExprId

A session-local numeric alias for a key expression, declared to reduce wire overhead on repeated references. See Declarations.

ZenohId

A variable-length (1–16 bytes) opaque unique identifier assigned to each Zenoh node, generated randomly at startup. See ZenohID.

WhatAmI

A 2-bit field indicating the role of a Zenoh node: Router (0b00), Peer (0b01), or Client (0b10). See wire:primitives.adoc#_whatami_node_role.