Skip to content

BGPView Message Formats

Alistair King edited this page Oct 15, 2015 · 1 revision

BGPView Message Formats

Summary

Type Code # Frames # Bytes Use
READY 0x01 1 1 Signals "Client Connect"
TERM 0x02 1 1 Signals "Client Disconnect"
HEARTBEAT 0x03 1 1 Prevents "Client Disconnect" signal
DATA 0x04 >=3 >=10 Tx data from client to server
REPLY 0x05 3 10 Acks a data/signal message
SIGNAL 0x06 ? ? Tx a signal from the server to client

DATA Message Format

Type Value Length
BGPWATCHER_MSG_TYPE_DATA 0x04 1
Sequence Number 0x???? 8
BGPWATCHER_DATA_MSG_TYPE_XX 0x?? 1
[PAYLOAD] Variable Variable

DATA Sub-message Format

Describes the information found the in the [PAYLOAD] section of a DATA message. Each row is a zframe.

TABLE_BEGIN

Type Value Length Type
BGPWATCHER_TABLE_TYPE_XX 0x01 OR 0x02 1 bgpwatcher_table_type_t
[Table Start Time] Variable 4 uint32_t

TABLE_END

Type Value Length Type
BGPWATCHER_TABLE_TYPE_XX 0x01 OR 0x02 1 bgpwatcher_table_type_t
[Table Start Time] Variable 4 uint32_t

PREFIX_RECORD

Type Value Length Type
Prefix IP Address Variable 4 OR 16 uint32_t OR uint8_t[16]
Prefix Length 0 <= x >= 32 1 uint8_t
Peer IP Address Variable 4 or 16 uint32_t OR uint8_t[16]
Origin ASN Variable (network order) 4 uint32_t
Name Variable Variable char[?]

PEER_RECORD

@@todo Consider merging with PREFIX_RECORD to be generic table row message

REPLY Message Format

Type Value Length
BGPWATCHER_MSG_TYPE_REPLY 0x05 1
SEQ_NUM 0x???????????????? 8
RETURN-CODE 0x00 OR 0xFF 1