Skip to content

Introduce versioning for the Zeek-layer serialization format #340

Description

@J-Gras

As discussed in zeek/zeek#2879 and #331, there is no versioning for the Zeek-layer serialization. While the broker protocol has versioning, this does not extend to the format of entities such as Zeek records or events that are transferred via broker. @ckreibich summarized this:

It seems quite clear to me that we're lacking a versioning concept at the Zeek layer, above Broker. We're still maintaining this as if only the Zeek cluster exists, implying that all nodes run the same version. When establishing a connection in Broker, I'd like to be able to include a key/val table that conveys such things as client name, protocol version, perhaps dialect info, and I'd like to receive one in return. Think HTTP request/response headers. A basic handshake that informs endpoints prior to the exchange of any other message types about how/whether to continue.

I've opened the issue here in the broker repo for now. This might need to move to Zeek itself (e.g., depending on #339).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions