Re: [IPFIX] templateLifePacket on IPFIX collector
Benoit Claise <[email protected]> Mon, 2 Oct 2017 14:11:49 +0200
| Newsgroups | gmane.ietf.ipfix |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format.
--===============4089365757872754492==
Content-Type: multipart/alternative;
boundary="------------FCAEB6BA4680DF11746B18D4"
Content-Language: en-US
This is a multi-part message in MIME format.
--------------FCAEB6BA4680DF11746B18D4
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
Hi Petr,
> Hi Brian,
>
> I understand that the Exporter is required to export the templates at
> regular intervals. It is not clear, whether "regular intervals" mean
> "time intervals" (as suggested by the templateRefreshTimeout example)
> or if it can mean "packet intervals" as well (as suggested by the RFC
> 6728).
As mentioned, the two options come from NetFlow v9, with UDP.
> Moreover, this discusses only the Exporter Processes. My question was
> primarily about the Collecting Process, where the RFC 7011 specifies
> the following:
>
> In order to minimize resource requirements for Templates that are no
> longer being used by the Exporting Process, the Collecting Process
> MAY associate a lifetime with each Template received in a Transport
> Session. Templates not refreshed by the Exporting Process within the
> lifetime can then be discarded by the Collecting Process. The
> Template lifetime at the Collecting Process MAY be exposed by a
> configuration parameter or MAY be derived from observation of the
> interval of periodic Template retransmissions from the Exporting
> Process. In this latter case, the Template lifetime SHOULD default
> to at least 3 times the observed retransmission rate.
> So the IPFIX configuration model only suggests that the Collecting
> Process can use the *TemplateLifePacket options without actually
> requiring their implementation anywhere. Is that correct?
Not sure I understand.
From RFC7011
Since UDP provides no method for reliable transmission of Templates,
Exporting Processes using UDP as the transport protocol MUST
periodically retransmit each active Template at regular intervals.
The Template retransmission interval MUST be configurable via, for
example, the templateRefreshTimeout and optionsTemplateRefreshTimeout
parameters as defined in [RFC6728 <https://tools.ietf.org/html/rfc6728>]. Default settings for these
values are deployment- and application-specific.
If the collector is the one that configured the templateRefreshTimeout
and optionsTemplateRefreshTimeout for the Exporter, then it knows this
information. Alternatively, it can try to deduce it.
Now, an editorial errata (more for completeness that anything else)
could be that RFC7011 should mention RFC 6728 templateRefreshPacket and
optionsTemplateRefreshPacket.
However, it says "for example, the templateRefreshTimeout and
optionsTemplateRefreshTimeout parameters as defined in [RFC6728
<https://tools.ietf.org/html/rfc6728>]."
So there might be other examples.
>
> On a related note, while reading through the RFC 6728, I've noticed
> that it still references the obsoleted RFC 5101, which is not good,
> especially regarding the template timeout on collecting process. The
> problem is that it forces the configuration of templateLifeTime and
> optionsTemplateLifeTime options per RFC 5101, Section 10.3.7 where it
> states:
> The Collecting Process MUST associate a lifetime with each Template
> (or another definition of an identifier considered unique within the
> Transport Session) received via UDP. Templates (and similar
> definitions) not refreshed by the Exporting Process within the
> lifetime are expired at the Collecting Process.
> However, the RFC 7011 obsoletes this (see my first quote) and changes
> this behaviour to optional. Would it make sense to update the RFC 6728
> to reflect this change?
Maybe.
Regards, Benoit
>
> Cheers,
> Petr
>
> On Mon, Oct 2, 2017 at 10:05 AM, Brian Trammell (IETF)
> <[email protected] <mailto:[email protected]>> wrote:
>
> hi Petr,
>
> This is specified in section 8.4 of RFC 7011 for UDP:
>
> Since UDP provides no method for reliable transmission of
> Templates,
> Exporting Processes using UDP as the transport protocol MUST
> periodically retransmit each active Template at regular intervals.
> The Template retransmission interval MUST be configurable via, for
> example, the templateRefreshTimeout and
> optionsTemplateRefreshTimeout
> parameters as defined in [RFC6728]. Default settings for these
> values are deployment- and application-specific.
>
> For transports with reliable template lifetimes (TCP, SCTP),
> templates require no refresh, since template state remains
> synchronized between exporter and collector.
>
> Cheers,
>
> Brian
>
>
> > On 2 Oct 2017, at 09:37, Petr Velan <[email protected]
> <mailto:[email protected]>> wrote:
> >
> > Hello IPFIX masters,
> >
> > we are implementing an IPFIX collector and a question came up
> whether to support templateLifePacket configuration as specified
> in RFC 6728 (https://tools.ietf.org/html/rfc6728#section-4.5.2
> <https://tools.ietf.org/html/rfc6728#section-4.5.2>). It seems,
> that the *LifePacket options are not mentioned anywhere else in
> the IPFIX related documents and that the IPFIX protocol specifies
> only time based timeout expiration. Therefore, my question is why
> the *LifePacket options are even present in the RFC 6728 and
> whether it is necessary to implement them for the collector (and
> exporter as well) to be compliant with the IPFIX standard.
> >
> > I think that the whole *LifePacket option came from NetFlow v9
> where the informational RFC 3954 states that:
> > On a regular basis, the Exporter MUST send all the Template
> > Records and Options Template Records to refresh the Collector.
> > Template IDs have a limited lifetime at the Collector and
> MUST be
> > periodically refreshed. Two approaches are taken to make sure
> > that Templates get refreshed at the Collector:
> > * Every N number of Export Packets.
> > * On a time basis, so every N number of minutes.
> > Both options MUST be configurable by the user on the Exporter.
> > When one of these expiry conditions is met, the Exporter
> MUST send
> > the Template FlowSet and Options Template.
> >
> >
> > If that is the case, should the IPFIX standard specify something
> similar as well? Otherwise, it would seem that removing the
> *LifePacket options from the RFC 6728 would prevent further confusion.
> >
> > Kind regards,
> > Petr Velan
> >
> > _______________________________________________
> > IPFIX mailing list
> > [email protected] <mailto:[email protected]>
> > https://www.ietf.org/mailman/listinfo/ipfix
> <https://www.ietf.org/mailman/listinfo/ipfix>
>
>
>
>
> _______________________________________________
> IPFIX mailing list
> [email protected]
> https://www.ietf.org/mailman/listinfo/ipfix
--------------FCAEB6BA4680DF11746B18D4
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: 8bit
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">Hi Petr,<br>
</div>
<blockquote type="cite"
cite="mid:CALbOe5PArCC8XMgP6VajWRj=q6U4q9dLi8wqrqWOeGa30Mfyog@mail.gmail.com">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<div dir="ltr">
<div>
<div>
<div>
<div>Hi Brian,<br>
<br>
</div>
I understand that the Exporter is required to export the
templates at regular intervals. It is not clear, whether
"regular intervals" mean "time intervals" (as suggested by
the templateRefreshTimeout example) or if it can mean
"packet intervals" as well (as suggested by the RFC 6728).
</div>
</div>
</div>
</div>
</blockquote>
As mentioned, the two options come from NetFlow v9, with UDP.<br>
<blockquote type="cite"
cite="mid:CALbOe5PArCC8XMgP6VajWRj=q6U4q9dLi8wqrqWOeGa30Mfyog@mail.gmail.com">
<div dir="ltr">
<div>
<div>
<div>Moreover, this discusses only the Exporter Processes.
My question was primarily about the Collecting Process,
where the RFC 7011 specifies the following:<br>
<br>
<pre class="gmail-newpage"> In order to minimize resource requirements for Templates that are no
longer being used by the Exporting Process, the Collecting Process
MAY associate a lifetime with each Template received in a Transport
Session. Templates not refreshed by the Exporting Process within the
lifetime can then be discarded by the Collecting Process. The
Template lifetime at the Collecting Process MAY be exposed by a
configuration parameter or MAY be derived from observation of the
interval of periodic Template retransmissions from the Exporting
Process. In this latter case, the Template lifetime SHOULD default
to at least 3 times the observed retransmission rate.<span style="font-family:arial,helvetica,sans-serif">
</span></pre>
So the IPFIX configuration model only suggests that the
Collecting Process can use the *TemplateLifePacket options
without actually requiring their implementation anywhere.
Is that correct?<br>
</div>
</div>
</div>
</div>
</blockquote>
Not sure I understand.<br>
From RFC7011<br>
<pre class="newpage"> Since UDP provides no method for reliable transmission of Templates,
Exporting Processes using UDP as the transport protocol MUST
periodically retransmit each active Template at regular intervals.
The Template retransmission interval MUST be configurable via, for
example, the templateRefreshTimeout and optionsTemplateRefreshTimeout
parameters as defined in [<a href="https://tools.ietf.org/html/rfc6728" title=""Configuration Data Model for the IP Flow Information Export (IPFIX) and Packet Sampling (PSAMP) Protocols"">RFC6728</a>]. Default settings for these
values are deployment- and application-specific.
</pre>
If the collector is the one that configured the
templateRefreshTimeout and optionsTemplateRefreshTimeout for the
Exporter, then it knows this information. Alternatively, it can try
to deduce it.<br>
<br>
Now, an editorial errata (more for completeness that anything else)
could be that RFC7011 should mention RFC 6728 templateRefreshPacket
and optionsTemplateRefreshPacket.<br>
However, it says "for example, the templateRefreshTimeout and
optionsTemplateRefreshTimeout parameters as defined in [<a
href="https://tools.ietf.org/html/rfc6728"
title=""Configuration Data Model for the IP Flow Information
Export (IPFIX) and Packet Sampling (PSAMP) Protocols"">RFC6728</a>]."<br>
So there might be other examples.<br>
<blockquote type="cite"
cite="mid:CALbOe5PArCC8XMgP6VajWRj=q6U4q9dLi8wqrqWOeGa30Mfyog@mail.gmail.com">
<div dir="ltr">
<div>
<div>
<div><br>
On a related note, while reading through the RFC 6728,
I've noticed that it still references the obsoleted RFC
5101, which is not good, especially regarding the template
timeout on collecting process. The problem is that it
forces the configuration of templateLifeTime and
optionsTemplateLifeTime options per RFC 5101, Section
10.3.7 where it states:<br>
<pre class="gmail-newpage"> The Collecting Process MUST associate a lifetime with each Template
(or another definition of an identifier considered unique within the
Transport Session) received via UDP. Templates (and similar
definitions) not refreshed by the Exporting Process within the
lifetime are expired at the Collecting Process.</pre>
</div>
However, the RFC 7011 obsoletes this (see my first quote)
and changes this behaviour to optional. Would it make sense
to update the RFC 6728 to reflect this change?<br>
</div>
</div>
</div>
</blockquote>
Maybe.<br>
<br>
Regards, Benoit<br>
<blockquote type="cite"
cite="mid:CALbOe5PArCC8XMgP6VajWRj=q6U4q9dLi8wqrqWOeGa30Mfyog@mail.gmail.com">
<div dir="ltr">
<div>
<div><br>
</div>
Cheers,<br>
</div>
Petr<br>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Mon, Oct 2, 2017 at 10:05 AM, Brian
Trammell (IETF) <span dir="ltr"><<a
href="mailto:[email protected]" target="_blank"
moz-do-not-send="true">[email protected]</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">hi Petr,<br>
<br>
This is specified in section 8.4 of RFC 7011 for UDP:<br>
<br>
Since UDP provides no method for reliable transmission of
Templates,<br>
Exporting Processes using UDP as the transport protocol
MUST<br>
periodically retransmit each active Template at regular
intervals.<br>
The Template retransmission interval MUST be configurable
via, for<br>
example, the templateRefreshTimeout and
optionsTemplateRefreshTimeout<br>
parameters as defined in [RFC6728]. Default settings for
these<br>
values are deployment- and application-specific.<br>
<br>
For transports with reliable template lifetimes (TCP, SCTP),
templates require no refresh, since template state remains
synchronized between exporter and collector.<br>
<br>
Cheers,<br>
<br>
Brian<br>
<div>
<div class="h5"><br>
<br>
> On 2 Oct 2017, at 09:37, Petr Velan <<a
href="mailto:[email protected]"
moz-do-not-send="true">[email protected]</a>>
wrote:<br>
><br>
> Hello IPFIX masters,<br>
><br>
> we are implementing an IPFIX collector and a
question came up whether to support templateLifePacket
configuration as specified in RFC 6728 (<a
href="https://tools.ietf.org/html/rfc6728#section-4.5.2"
rel="noreferrer" target="_blank"
moz-do-not-send="true">https://tools.ietf.org/html/<wbr>rfc6728#section-4.5.2</a>).
It seems, that the *LifePacket options are not mentioned
anywhere else in the IPFIX related documents and that
the IPFIX protocol specifies only time based timeout
expiration. Therefore, my question is why the
*LifePacket options are even present in the RFC 6728 and
whether it is necessary to implement them for the
collector (and exporter as well) to be compliant with
the IPFIX standard.<br>
><br>
> I think that the whole *LifePacket option came from
NetFlow v9 where the informational RFC 3954 states that:<br>
> On a regular basis, the Exporter MUST send
all the Template<br>
> Records and Options Template Records to
refresh the Collector.<br>
> Template IDs have a limited lifetime at the
Collector and MUST be<br>
> periodically refreshed. Two approaches are
taken to make sure<br>
> that Templates get refreshed at the
Collector:<br>
> * Every N number of Export Packets.<br>
> * On a time basis, so every N number of
minutes.<br>
> Both options MUST be configurable by the user
on the Exporter.<br>
> When one of these expiry conditions is met,
the Exporter MUST send<br>
> the Template FlowSet and Options Template.<br>
><br>
><br>
> If that is the case, should the IPFIX standard
specify something similar as well? Otherwise, it would
seem that removing the *LifePacket options from the RFC
6728 would prevent further confusion.<br>
><br>
> Kind regards,<br>
> Petr Velan<br>
><br>
</div>
</div>
> ______________________________<wbr>_________________<br>
> IPFIX mailing list<br>
> <a href="mailto:[email protected]" moz-do-not-send="true">[email protected]</a><br>
> <a href="https://www.ietf.org/mailman/listinfo/ipfix"
rel="noreferrer" target="_blank" moz-do-not-send="true">https://www.ietf.org/mailman/<wbr>listinfo/ipfix</a><br>
<br>
</blockquote>
</div>
<br>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
IPFIX mailing list
<a class="moz-txt-link-abbreviated" href="mailto:[email protected]">[email protected]</a>
<a class="moz-txt-link-freetext" href="https://www.ietf.org/mailman/listinfo/ipfix">https://www.ietf.org/mailman/listinfo/ipfix</a>
</pre>
</blockquote>
<br>
</body>
</html>
--------------FCAEB6BA4680DF11746B18D4--
--===============4089365757872754492==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
_______________________________________________
IPFIX mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/ipfix
--===============4089365757872754492==--