IPFIX Working Group Stewart Bryant
Internet Draft Ganesh Sadasivan
Document: <draft-bryant-ipfix-vendor-ie-00.txt> Cisco Systems
Expires: March 2004
October 2003
IPFIX Vendor Specific Information Elements
Status of this Memo
This document is an Internet-Draft and is in full conformance with
all provisions of section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that other
groups may also distribute working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress".
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt The list of
Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
Abstract
Both IPFIX and PSAMP need methods whereby vendors can add proprietary
information elements (IEs) to data flowsets. This draft proposes two
possible methods of providing vendor specific IEs. The extension of
these methods to provide vendor specific scope and options is also
described.
Bryant & Sadasivan. Informational [Page 1]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
Table of Contents
Status of this Memo.......................................... 1
1. Introduction............................................. 3
2. Two Possible Methods..................................... 3
3. Parallel Template Flowset................................ 3
3.1 Parallel Options Template Flowset.................... 6
3.2 Compressed Parallel Template Flowset................. 8
3.3 Strengths and Weaknesses............................. 8
4. VI Qualified Template Flowset............................ 9
4.1 VI Qualified Option Template Flowset................. 11
4.2 Compressed VI Qualified Template Flowset.............. 13
4.3 Compressed VI Qualified Option Template Flowset....... 16
4.3 Strengths and Weaknesses............................. 18
5. Security Considerations.................................. 18
6. IANA Considerations...................................... 18
Bryant & Sadasivan. Informational [Page 2]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
1. Introduction
Both IPFIX and PSAMP need methods whereby vendors can add proprietary
information elements (IEs) to data flowsets, and to options data
flowsets. This may be because they are delivering pre-standards
product, or it may be because the IE is in some way commercially
sensitive or of minority interest.
This draft proposes two possible methods of providing vendor specific
IEs (VSIE).
2. Two Possible Methods
The two methods proposed in this draft are the parallel template
flowset, and extended template flowset. The parallel template
flowset is an addition flowset that complements the information in
the normal template flowset with the vendor identifier (VI) for each
field type. The extended template flowset is a new flowset type that
uses a new field type identifier that contains both the VI and the
field type specified by the vendor.
In both cases backwards compatibility with existing implementations
is achieved by partitioning the field type codepoint into an IANA
allocated range, and a vendor specific range.
3. Parallel Template Flowset
The parallel template flowset is a flowset that complements the
normal template flowset, carrying the VI information.
The normal template flowset is as defined in [IPFIXPROT], and is
reproduced for reference in Figure 1.
Bryant & Sadasivan. Informational [Page 3]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| FlowSet ID = 0 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Template ID 1 | Field Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type 1 | Field Length 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type 2 | Field Length 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... | ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type N | Field Length N |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Template ID 2 | Field Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type 1 | Field Length 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type 2 | Field Length 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... | ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type M | Field Length M |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: Normal Template Flowset
If the normal template flowset only uses IETF defined field types
[IPFIXIM], this template is sufficient to describe the data flowset.
If the template flowset includes a vendor specific field type, then a
VI template flowset is sent qualifying the field type with the
identity of the design authority that defined it. This is shown in
Figure 2. A Flowset ID of 2 is used to identify the Flowset as a VI
template flowset.
Bryant & Sadasivan. Informational [Page 4]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Flowset ID = 2 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Template ID 1 | Field Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI 1.1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI 1.2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... | ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI 1.N |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Template ID 2 | Field Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI 2.1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI 2.2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... | ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI 2.M |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 2: VI Template Flowset
The following are the VI Template Flowset Field Descriptions
Flowset ID
Flowset ID value of 2 is reserved for VI Template Flowset.
Length
Total length of this Flowset.
Template ID
The Template ID of the matching template containing the
matching template record.
Field Count
Number of fields in this template record. This MUST match the
number of fields in the corresponding normal template record.
VI
IANA enterprise number of the authority defining the field
type in this template record.
Bryant & Sadasivan. Informational [Page 5]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
3.1 Parallel Options Template Flowset
A corresponding change must also be made to the options template
flowset to allow vendors to add new scopes and options. Scope will
usually reflext the structure of the system being monitored and hence
may be unique to a particular vendor, for example a white goods
vendor might want to specify the scope as the shelf of their
proverbial internet fridge.
For reference the Options Template FlowSet is shown in Figure 3.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| FlowSet ID = 1 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Template ID | Option Scope Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Option Length | Scope 1 Field Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Scope 1 Field Length | ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Scope N Field Length | Option 1 Field Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Option 1 Field Length | ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Option M Field Length | Padding |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3: Options Template Flowset
The options VI template flowset is shown in Figure 4.
Bryant & Sadasivan. Informational [Page 6]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Flowset ID = 3 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Template ID | Number Scope VI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Number Option VI | Reserved must be zero |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Scope 1 VI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Scope N VI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Option 1 VI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Option N VI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 4: Options VI Template Flowset
The Options VI Template Flowset field definitions are as follows:
Flowset ID = 3
A Flowset ID value of 3 is reserved for an Options VI Template
Flowset
Length
Total length of this Flowset.
Template ID
Template ID of the corresponding Options Template.
Number Scope VI
The number of Scope VIs in the Options VI Template Flowset.
This MUST be half the option scope length in the corresponding
options template flowset.
Number Option VI
The number of Option VIs in the Options VI Template
Flowset. This MUST be half the option length in the
corresponding options template flowset.
Reserved must be zero
Alignment padding
Bryant & Sadasivan. Informational [Page 7]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
Scope VI
IANA enterprise number of the authority defining the
scope type in this template record.
Option VI
IANA enterprise number of the authority defining the
option type in this template record.
3.2 Compressed Parallel Template Flowset
This method is a variation of the parallel template flowset that is
compressed by removing the IETF VI. If a range of Field Type
codepoints is reserved for IETF defined field types, and a different
range of field type codepoints is reserved as private space for
vendors to define their own field types, there is no ambiguity, and
it is possible to eliminate the need to identify IETF Field Types. A
variant of this proposal is therefore to compress the parallel
template flowsets by omitting the IETF VIs from the VI Template
Flowset and from the Options VI Template Flowset. Note that if this
compression is used, the flowset length and field count values in the
VI template flowsets MUST reflect the size of the VI template
flowsets and MAY differ from the values in the normal template
flowsets.
3.3 Strengths and Weaknesses
This approach is backwards compatible with existing Netflow version 9
implementations. A collector receiving a template flowset containing
a mixture of IETF and VSIEs, but which did not understand the VI
Template Flowset would discard the VI Template Flowset and any
information elements in the data flow set that it did not understand.
The weakness of this approach is that it is necessary to marry the
two template flowsets at the collector, rather than present the
collector with a single data structure that describes the flowset.
Bryant & Sadasivan. Informational [Page 8]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
4. VI Qualified Template Flowset
This method uses a new record type in which the Field Type is
qualified with a VI. The VI is the vendor's IANA Enterprise Number.
The format of the VI qualified record type is shown in Figure 5.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type | Field Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 5: VI qualified field type
Template Record Field Descriptions
VI
IANA enterprise number of the authority defining the
field type in this template record.
Field Type
A numeric value that represents the type of the field.
Field Length
The length of the corresponding Field Type, in bytes.
The format of the Template Flowset is shown in Figure 6. A Flowset ID
of 2 is used to distinguish this Template Flowset from a Template
Flowset that exclusively uses IETF defined Field Types and hence does
not need a VI to qualify any of the Field Types.
Bryant & Sadasivan. Informational [Page 9]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Flowset ID = 2 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Template ID 1 | Field Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI 1.1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type 1 | Field Length 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI 1.2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type 2 | Field Length 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... | ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI 1.N |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type N | Field Length N |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Template ID 2 | Field Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI 2.1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type 1 | Field Length 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI 2.2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type 2 | Field Length 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... | ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI 2.M |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type M | Field Length M |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 6: VI Qualified Template Flowset
The VI Qualified Template Flowset field descriptions are as follows:
Flowset ID
Flowset ID value of 2 is reserved for VI Qualified
Template Flowset.
Length
Total length of this Flowset.
Bryant & Sadasivan. Informational [Page 10]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
Template ID
Each of the newly generated Template Records is given a
unique Template ID, as described in [IPFIXPROT]
Field Count
Number of fields in this Template Record.
VI
IANA enterprise number of the authority defining the
field type in this template record. Where the field
type is defined by a IANA a VI of zero is used.
Field Type
A numeric value that represents the type of the field.
Field Length
The length of the corresponding Field Type, in bytes.
4.1 VI Qualified Option Template Flowset
The VI qualified option template flowset would be as shown in Figure
7.
Bryant & Sadasivan. Informational [Page 11]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Flowset ID = 3 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Template ID | Option Scope Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Option Length | Reserved must be zero |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Scope 1 VI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Scope 1 Field Type | Scope 1 Field Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Scope N VI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Scope N Field Type | Scope N Field Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Option 1 VI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Option 1 Field Type | Option 1 Field Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Option N VI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Option N Field Type | Option N Field Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 7: VI Qualified Options Template Flowset
The VI Qualified Options Template Flowset Field Definition are:
Flowset ID = 3
A Flowset ID value of 3 is reserved for a VI Qualified
Options Template.
Length
Total length of this Flowset.
Template ID
Template ID of this Options Template. This value is greater
than 255.
Option Scope Length
The length in bytes of any Scope fields definition contained
in the Options Template Record
Bryant & Sadasivan. Informational [Page 12]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
Option Length
The length (in bytes) of any options field definitions
contained in this Options Template Record.
Reserved must be zero
Alignment padding
Scope 1 Field Type
The relevant portion of the Exporting Process/Metering
Process to which the Options Template Record refers.
Scope 1 Field Length
The length (in bytes) of the scope field, as it would appear
in an Options Data Record.
Option 1 Field Type
A numeric value that represents the type of field that would
appear in the Options Template Record. Refer to the Field
Type Definitions section.
Option 1 Field Length
The length (in bytes) of the Option Field.
4.2 Compressed VI Qualified Template Flowset
This method is a variation of the VI qualified template flowset that
is compressed by removing the IETF VI. If a range of Field Type
codepoints is reserved for IETF defined field types, and a different
range of field type codepoints is reserved as private space for
vendors to define their own field types, there is no ambiguity and it
is possible to eliminate the need to identify IETF Field Types. The
format of IETF defined field remains the same as it exists today.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type | Field Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 8: IETF defined Field Type
Where
Field Type
A numeric value that represents the type of the field
Bryant & Sadasivan. Informational [Page 13]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
Field Length
The length of the corresponding Field Type, in bytes.
The format of the VI qualified template record type is shown in
Figure 9.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type | Field Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 9: VI qualified Field Type
Where
Field Type
A numeric value that represents the type of the field
Field Length
The length of the corresponding Field Type, in bytes.
VI
IANA enterprise number of the authority defining the
field type in this template record.
Note that it is important that the VI be placed after the Field Type,
Field Length pair to avoid any aliasing of IETF defined Field Types
by VIs.
A template can contain a mixture of fields which are IETF defined and
defined by the vendor. Based on the Field Type an interpretation of
the template structure can be made by the collector. The format of
the Template Flowset is shown in Figure 10.
Bryant & Sadasivan. Informational [Page 14]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Flowset ID = 2 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Template ID 1 | Field Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type 1 | Field Length 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI 1.1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type 2 | Field Length 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... | ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type N | Field Length N |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI 2.N |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Template ID 2 | Field Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type 1 | Field Length 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type 2 | Field Length 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI 2.2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... | ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Field Type M | Field Length M |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| VI 2.M |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 10: Compressed VI Qualified Template Flowset
Where:
Flowset ID
Flowset ID value of 2 is reserved for VI Qualified
Template Flowset.
Length
Total length of this Flowset.
Template ID
Each of the newly generated Template Records is given a
unique Template ID, as described in [IPFIXPROT]
Bryant & Sadasivan. Informational [Page 15]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
Field Count
Number of fields in this Template Record.
VI
IANA enterprise number of the authority defining the
field type in this template record.
Field Type
A numeric value that represents the type of the field.
Field Length
The length of the corresponding Field Type, in bytes.
4.3 Compressed VI Qualified Option Template Flowset
The compressed VI qualified option template flowset would be as shown
in Figure 11.
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Flowset ID = 3 | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Template ID | Option Scope Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Option Length | Reserved must be zero |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Scope 1 Field Type | Scope 1 Field Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Scope N Field Type | Scope N Field Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Scope N VI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Option 1 Field Type | Option 1 Field Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Option 1 VI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Option N Field Type | Option N Field Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 11: Compressed VI Qualified Option Template Flowset
The compressed VI qualified option template Flowset field definition
are:
Bryant & Sadasivan. Informational [Page 16]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
Flowset ID = 3
A Flowset ID value of 3 is reserved for a VI Qualified
Options Template.
Length
Total length of this Flowset.
Template ID
Template ID of this Options Template. This value is greater
than 255.
Option Scope Length
The length in bytes of any Scope fields definition contained
in the Options Template Record
Option Length
The length in bytes of any options field definitions
contained in this Options Template Record.
Reserved must be zero
Alignment padding
Scope 1 Field Type
The relevant portion of the Exporting Process/Metering
Process to which the Options Template Record refers.
Scope 1 Field Length
The length, in bytes, of the scope field, as it would appear
in an Options Data Record.
Option 1 Field Type
A numeric value that represents the type of field that would
appear in the Options Template Record. Refer to the Field
Type Definitions section.
Option 1 Field Length
The length (in bytes) of the Option Field.
Bryant & Sadasivan. Informational [Page 17]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
4.3 Strengths and Weaknesses
This approach can seamlessly carry all the information pertinent to a
field type in a template in a single template flowset, removing the
need to combine the template flowset and the VI template flowset.
This is a more natural approach.
The weakness of this approach is that it is not backwards compatible
with existing Netflow version 9 implementations.
5. Security Considerations
The IPFIX collector must note the size and position of any VSIE that
it does not understand and discard the IE from the data flow.
6. IANA Considerations
A Flowset ID (assumed to be a value of 2) must be assigned to the
template flowset used to provide VSIEs.
A Flowset ID (assumed to be a value of 3) must be assigned to the
options template flowset.
Both of the compressed formats require the field type codepoints to
be split into an IETF specified range, allocated by IANA, and a
private range that may be allocated by the vendors. It is suggested
that the range <0..32767> be administered by IANA, and <32768..65535>
be allocated for private use by vendors.
Similarly the scope and option codepoints need to be split between
IANA administered and private ranges.
Both of the uncompressed formats require that an enterprise
identifier be allocated to the IETF. It would be convenient if the
value 0 was used.
Bryant & Sadasivan. Informational [Page 18]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
Normative References
Internet-drafts are works in progress available from
<http://www.ietf.org/internet-drafts/>
[IPFIXPROT] B. Claise et al, IPFIX Protocol Specifications,
<draft-ietf-ipfix-protocol-00.txt>, June 2003,
work in progress.
[IPFIXIM]
Authors' Addresses
Stewart Bryant
Cisco Systems Ltd,
250, Longwater,
Green Park,
Reading, RG2 6GB,
United Kingdom. Email: stbryant@cisco.com
Ganesh Sadasivan
Cisco Systems, Inc.,
170 W. Tasman Dr.,
San Jose, CA 95134,
USA. Email: gsadasiv@cisco.com
Full copyright statement
Copyright (C) The Internet Society (2002).
All Rights Reserved.
This document and translations of it may be copied and
furnished to others, and derivative works that comment
on or otherwise explain it or assist in its implementation
may be prepared, copied, published and distributed, in
whole or in part, without restriction of any kind,
provided that the above copyright notice and this
paragraph are included on all such copies and derivative works.
However, this document itself may not be modified in any way,
such as by removing the copyright notice or references to the
Internet Society or other Internet organizations, except as
needed for the purpose of developing Internet standards in
which case the procedures for copyrights defined in the
Internet Standards process must be followed, or as required to
translate it into languages other than English.
The limited permissions granted above are perpetual and will
Bryant & Sadasivan. Informational [Page 19]
INTERNET DRAFT draft-bryant-ipfix-vendor-ie-00.txt March 2004
not be revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided
on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE
USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS
OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS
FOR A PARTICULAR PURPOSE.
Bryant & Sadasivan. Informational [Page 20]