Protobuf Overview
NSB uses a single Protobuf message type โ nsbm โ for all communication between the daemon, application clients, and simulator clients.
What nsbm Isโ
Every message that travels across NSB โ INIT handshakes, SEND/FETCH/POST/RECEIVE operations, PING checks, EXIT signals โ is encoded as exactly one Protobuf message type: nsbm. There is no second message format. A single schema, shared between the C++ and Python client libraries, is what makes the two languages fully wire-compatible.
Schema Fileโ
Location: proto/nsb.proto
Compiled outputs:
- C++:
cpp/proto/nsb.pb.ccandnsb.pb.h - Python:
python/proto/proto/nsb_pb2.py(also inrabbit/proto/)
For the complete schema with every field documented, see Protobuf Schema.
Go Deeperโ
- Protobuf Schema โ the full
.protodefinition and field-by-field explanation - Operations Reference โ every
Operation,Originator, andOpCodevalue - Initialization Flow โ all 5 message flows shown with full field values