[Nfd-dev] Naming conventions for "sequence number"
Burke, Jeff
jburke at remap.ucla.edu
Fri Jul 25 11:24:08 PDT 2014
On 7/24/14, 3:38 PM, "Alex Afanasyev" <alexander.afanasyev at ucla.edu> wrote:
>
>On Jul 24, 2014, at 10:06 AM, Davide Pesavento <davide.pesavento at lip6.fr>
>wrote:
>
>> Hi Alex and all,
>>
>> Some comments from me and Giulio.
>>
>> Segmentation: looks good to us.
>>
>> Versioning: must the version really correspond to the number of
>> millisecs since epoch? I can see a couple of problems with this:
>> 1/ millisecs granularity may not be enough for the application
>> 2/ if accurate clock synchronization is indeed a problem, using
>> timestamps is pointless, but on the other hand there's no defined
>> marker for non-time-based versioning, so what do we do?
>>
>> Maybe the value for the version marker should be defined more broadly
>> as a monotonically increasing nonnegative integer (but not necessarily
>> sequential), leaving the door open to more use cases. On the other
>> hand, one could argue that this new definition isn't much different
>> from a sequence number (it only lacks the sequentiality property),
>> therefore maybe we could merge versioning into sequencing. If needed,
>> applications can still use timestamps in name components, but those
>> components simply won't be marked in any special way.
>
>Hi Davide and Giulio. Thanks for the comments!
>
>The reason I'm tempted to keep the current definition of versioning is a
>little bit to do with application inter-operability in mind. If version
>is defined as increasing number, then there is no clear definition of how
>distributed production of data can be implemented. If producers perform
>some way of version synchronization, then only these producers will be
>able to produce the "correct" version, while third-parties will be
>excluded and not able to produce never version of the data (this is kind
>of a vague argument, but I think there could be use cases for that).
>Giving a flawed, but simple mechanism to generate "correct" time-based
>version is in this sense better.
This argument makes sense to me but is there a way we can make this work
to some arbitrary level of precision, selected by the application, rather
than requiring milliseconds.
>
>As for dealing with applications that needs better granularity... In
>some cases it is possible to cheat, ensuring that "version" is increased
>at least by one for the next generated data.
I think we want to avoid this cheat if possible. Sometimes a millisecond
is relevant, depending on what's being versioned.
> For other cases we definitely need to define some marker or some other
>way to give reasonable understanding for others about the component.
>
>> Conversely, if the majority prefers keeping the proposed timestamp
>> semantics, can we at least call it "timestamping" instead of
>> versioning?
>
>This what Lan was proposing before. Completely replacing versioning with
>timestamping doesn't make sense for me. Probably, we can have such a
>convention, though it should be used just for "timestamping" purposes,
>which not necessarily the same as versioning. Also, if convention for
>timestamping is defined, we need to specify/exemplify how this could be
>used (e.g., by third-parties).
I agree - maybe just a "if you're going to use timestamps for versions,
here's how..." sort of convention?
Jeff
>
>---
>Alex
>
>
>> Thanks,
>> Davide
>>
>> On Thu, Jul 24, 2014 at 2:32 AM, Alex Afanasyev
>> <alexander.afanasyev at ucla.edu> wrote:
>>> Hi guys,
>>>
>>> We need to have an approval for the naming convention spec before we
>>>can proceed with changes to the libraries. Given the testbed
>>>deployment is scheduled this Friday, the spec (at least on conceptual
>>>level, we can correct wordings later) needs to be approved before that
>>>
>>> Just in case, link to the latest version:
>>>http://redmine.named-data.net/attachments/download/102/convention.pdf
>>>
>>> ---
>>> Alex
>>>
>
>
>_______________________________________________
>Nfd-dev mailing list
>Nfd-dev at lists.cs.ucla.edu
>http://www.lists.cs.ucla.edu/mailman/listinfo/nfd-dev
More information about the Nfd-dev
mailing list