Re: [IPFIX] timestamps, exporters, and other animals (fwd)

Benoit Claise <[email protected]>
Newsgroups gmane.ietf.ipfix
Message-ID <[email protected]>
Josh, Brian,

Point taken. I created an open issue for the draft.

Regards, Benoit.
>
> Hi Brian;
>
> In summary - yes! I believe you perceive where I'm coming from most 
> accurately. I would be very interested in specific handling of this 
> issue in the next draft.
>
>> Hi, Josh, all,
>>
>> As I read it, one of the wins of MIB Variable Export is that you get 
>> the whole timestamp machinery of IPFIX for free, including absolute 
>> timestamps wherein individual records can have observation timestamps 
>> down to nanosecond precision completely independent of the export 
>> timestamps. Relative timestamps can be expressed either as negative 
>> offsets to the export time (which can be a little tricky to 
>> implement, mind) or as positive offsets to the system initialization 
>> time (itself exported via options)
>>
>> Now, as you'll see elsewhere on the list, the flexible timestamps 
>> need a little work -- the microsecond and nanosecond types in 
>> particular are confusingly defined in a way that has led to 
>> (not-yet-verified) interoperability failures; the discussion about 
>> fixing this in 5101bis/5102bis is elsewhere on the ipfix list.
>>
>> Simply because an exporter has the _tools_ to export accurate 
>> timestamps, of course, does not mean that it can (e.g. due to 
>> implementation constraints) or will (e.g. due to faults or simple 
>> laziness). And system initialization based relative timestamps can 
>> have their own subtle pitfalls as in NetFlow V9 (on which see our 
>> paper in PAM this year, "Peeling Away Timing Error in NetFlow Data", 
>> author copy at 
>> ftp://ftp.tik.ee.ethz.ch/pub/people/martibur/Netflow-Timing-PAM2011.pdf 
>> -- the cyclic error from lost export time precision are V9-specific, 
>> but particularly the drift and delay components of the error there 
>> are universally applicable to any such arrangement, I think)
>>
>> But the protocol here should give you the room to do what you need 
>> with respect to timing at the implementation level... WRT impacts on 
>> documents, would it be helpful to have a more thorough handling of 
>> IPFIX timestamping in the MIB Export draft (i.e., as an introduction 
>> for SNMP people)?
>>
>> Cheers,
>>
>> Brian
>>
>> On Oct 12, 2011, at 9:47 AM, Josh Bailey wrote:
>>
>>>
>>> Hi Juergen;
>>>
>>> I agree with your statement about SNMP not being designed for 
>>> subsecond precision. And I definitely agree that there are things 
>>> you can do to minimise potential delays and that often those delays 
>>> are implementation specific.
>>>
>>> I don't agree though that sysUpTime is when the packet left the 
>>> agent; especially if the agent is running slowly for whatever 
>>> reason, or if the sysUpTime reply happens to be part of a packet 
>>> containing replies for other variables (perhaps from different CPUs 
>>> in a typical distributed CPU router).
>>>
>>> I also don't agree that cycles are usually measured in minutes. In 
>>> my experience cycles are very much shorter on average.
>>>
>>> As you say having a timestamp per counter while costly is ideal in 
>>> some sense. However I am looking to explore different tradeoffs; for 
>>> example, a timestamp followed by a list of OIDs all current at that 
>>> same timestamp.
>>>
>>> I am aware of counter implementations that could do such a 
>>> "snapshot" operation for example.
>>>
>>> Thanks,
>>>
>>>>>
>>>>> Hi Juergen;
>>>>>
>>>>> I assert that polling the sysUpTime does not take care of the core
>>>>> problem, because you cannot know when sysUpTime itself was sampled
>>>>> (eg. you received it after 1.5s because of network delay and because
>>>>> the packet was queued in the control plane kernel because the
>>>>> control plane CPU was busy).
>>>>
>>>> The SNMP agents controls sysUpTime - so sysUpTime is pretty much the
>>>> time the packet left the agent. If you talk about delays in the
>>>> instrumentation, that is the delay to read the register, then you are
>>>> correct. But once again, SNMP polling cycles are usually counted in
>>>> minutes.
>>>>
>>>>> I don't mind so much that the reply was delayed (though I like fast
>>>>> replies!), but I do mind that there can be a very large uncertainty.
>>>>
>>>> Very large is relative to the precision you want. SNMP was not
>>>> designed with subsecond precision in mind.
>>>>
>>>>> There is also the overhead of requesting sysUpTime itself, not to
>>>>> mention when walking a table, you may time slew over the course of
>>>>> walking the table.
>>>>
>>>> For any counter, you need discontinuity detection. The way you walk a
>>>> table has indeed a big impact in terms of data consistency - the
>>>> recommendation here is to use getbulk and to walk the columns of
>>>> interest concurrently.
>>>>
>>>>> I understand definitely re caching hardware counters, etc, and I
>>>>> think that's fine (and necessary in a system with multiple NMSes),
>>>>> and I don't mind that the counters are cached, but I do want to know
>>>>> when they were cached for me to recover maximum temporal
>>>>> information.
>>>>
>>>> SNMP agents typically do not help you with that - caching is rather
>>>> something implementation specific. And yes, operators have complained
>>>> about SNMP counters on some boxes being less "precise" than what the
>>>> CLI shows. I am no way saying SNMP is a model to choose - I just
>>>> wanted to help making it clear what SNMP does and what not.
>>>>
>>>> If you want high accuracy, then every counter reading must be
>>>> timestamped exactly when the counter is read. This of course has a
>>>> price.
>>>>
>>>> /js
>>>>
>>>> -- 
>>>> Juergen Schoenwaelder           Jacobs University Bremen gGmbH
>>>> Phone: +49 421 200 3587         Campus Ring 1, 28759 Bremen, Germany
>>>> Fax:   +49 421 200 3103 <http://www.jacobs-university.de/>
>>>>
>>>>
>>>>
>>>
>>> -- 
>>> Josh Bailey
>>> _______________________________________________
>>> IPFIX mailing list
>>> [email protected]
>>> https://www.ietf.org/mailman/listinfo/ipfix
>>
>>
>>
>
> -- 
> Josh Bailey
> _______________________________________________
> IPFIX mailing list
> [email protected]
> https://www.ietf.org/mailman/listinfo/ipfix
>
>

_______________________________________________
IPFIX mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/ipfix
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.