Login Page - Create Account

DTC Protocol Discussion Forum


Date/Time: Fri, 29 Nov 2024 14:52:08 +0000



Google Protocol buf message header

View Count: 4233

[2018-04-14 19:46:15]
enemyspy - Posts: 306
According to the documentation here: https://www.dtcprotocol.org/#GoogleProtocolBuffers
each outgoing message needs the s_DTCMessageHeader struct prepend .

I noticed that the above struct is not in the DTCPrococol.proto file found here : http://dtcprotocol.org/DTC_Files/DTCProtocol.proto
The doc string indicates that it should be prepended by a little endian binary:

What is the best solution:
-add the struct to the .proto and recompile?
-prepend a non protobuf binary struct? Does the header need to a have null terminating seperator?
Date Time Of Last Edit: 2018-04-14 19:47:02
[2018-04-14 22:08:56]
enemyspy - Posts: 306
ok sweet finally it working. this should be pretty easy now.

Has anyone posted any benchmarking results detailing the performance difference between binary and the google buffers. I read they can be particularly slow for python.
[2018-04-20 08:01:01]
DTC Engineering - Posts: 320
-prepend a non protobuf binary struct?
Yes. It is fully independent of the protocol buffer encoding and decoding.

Does the header need to a have null terminating seperator?
No.


Has anyone posted any benchmarking results detailing the performance difference between binary and the google buffers. I read they can be particularly slow for python.
This is a good question. Certainly Binary Encoding with Variable Length Strings is going to be the ultimate encoding.

We think using the Google protocol buffer version 3 compiler and library, which is also compatible with version 2 protocol files, and being the DTC Protocol use of Google protocol buffers is straightforward, that it should be quite efficient.
Date Time Of Last Edit: 2018-04-20 08:05:51

To post a message in this thread, you need to log in with your Sierra Chart account:

Login

Login Page - Create Account