Project

General

Profile

Actions

Feature #6319

open

protocol version should have a defined end marker

Added by neels 4 months ago. Updated 4 months ago.

Status:
New
Priority:
Normal
Assignee:
Target version:
-
Start date:
12/25/2023
Due date:
% Done:

0%


Description

in osmo-cc-v0.91.pdf I read:

When a connection is established, both ends send a version string of eight bytes:
“OSMOCCv1” first. (no \0 termination, no line feed, case sensitive) The Version number is
defined by the eighth byte. In this case the protocol version is ‘1’.

I think it would be better to make this more flexible than a single version char.

I was thinking, what happens when we reach "OSMOCCv10"? It cannot be distinguished from "OSMOCCv1" followed by an unrelated "0".

So I guess it should actually be \0 terminated, or it should be in a TLV, or it should be defined that the version string is sent in a single TCP packet where the entire payload is just the version string? Something that allows extending the string in the future.

What do you think?

Actions #1

Updated by jolly 4 months ago

  • Assignee changed from jolly to neels

The version number change is not expected in the future. It is not like MNCC socket interface, which requires version to change on every change of the message structure. Osmo-CC version number is similar to IP version number. It stays the same until there is a complete re-design of the protocol. The Osmo-CC protocol can be extended and still stays compatible with older versions.

Actions

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)