Skip to content
This repository has been archived by the owner on Jul 16, 2020. It is now read-only.

SSNTP version checking #14

Open
sameo opened this issue Apr 8, 2016 · 3 comments
Open

SSNTP version checking #14

sameo opened this issue Apr 8, 2016 · 3 comments
Assignees

Comments

@sameo
Copy link

sameo commented Apr 8, 2016

We do not check the SSNTP version for doing backward compatibility.
We need to e.g. keep track of supported commands for a given version.

@dlespiau
Copy link
Contributor

FWIW, there are quite a few options for battle tested messaging/RPC mechanisms. protobuf and gRPC seems to be quality options packed with features including message versioning and optional fields to be able to evolve messages over time keeping backward compatibility.

gRPC uses HTTP2, which could be an opportunity to reduce the number of certificates needed as well (along with all the niceties from HTTP2 and probably a better behaviour with corporation proxies in case clients/servers need to talk across those boundaries).

https://developers.google.com/protocol-buffers/
https://developers.google.com/protocol-buffers/docs/proto3
http://www.grpc.io/

Sorry for the random remark out of nowhere, was just idly looking at the list of issues.

@sameo
Copy link
Author

sameo commented Apr 28, 2016

@dlespiau thanks for the input.
We use Go's gob encoding for the current SSNTP implementation. I'd qualify gob encoding as a Go optimized protobuf even though I assume the Go protobuf bindings may use gob encoding.

We actually do not want to use HTTP (1.1 or 2) for Ciao inter components IPC because we want a fully asynchronous protocol. SSNTP is a very simple application protocol built on top of TLS, so it'll be as good with corporate proxies as any other TLS based protocol (like e.g. HTTPS).

@dlespiau
Copy link
Contributor

Ah! that explains things, I was sure I was missing something. Thanks!

@amyleeland amyleeland added this to the Sprint 2 milestone Jun 9, 2016
@amyleeland amyleeland added ready and removed ready labels Jul 29, 2016
kaccardi added a commit to kaccardi/ciao that referenced this issue Aug 11, 2016
@amyleeland amyleeland removed this from the Sprint 2 milestone Sep 6, 2016
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants