Binary protocol | Tarantool
Reference Internals Binary protocol

Binary protocol

This section provides information on the Tarantool binary protocol, iproto. The protocol is called “binary” because the database is most frequently accessed via binary code instead of Lua request text. Tarantool experts use it:

  • to write their own connectors
  • to understand network messages
  • to support new features that their favorite connector doesn’t support yet
  • to avoid repetitive parsing by the server

The binary protocol provides complete access to Tarantool functionality, including:

  • request multiplexing, for example ability to issue multiple requests asynchronously via the same connection
  • response format that supports zero-copy writes


Since version 2.11.0, you can use the box.iproto submodule to access IPROTO constants and features from Lua. The submodule enables to send arbitrary IPROTO packets over the session’s socket and override the behavior for all IPROTO request types. Also, IPROTO_UNKNOWN constant is introduced. The constant is used for the box.iproto.override() API, which allows setting a handler for incoming requests with an unknown type.

Found what you were looking for?