One document matched: draft-trammell-ipfix-biflow-02.txt
Differences from draft-trammell-ipfix-biflow-01.txt
IPFIX Working Group B. Trammell
Internet-Draft CERT/NetSA
Expires: December 21, 2006 E. Boschi
Hitachi Europe
June 19, 2006
Bidirectional Flow Export using IPFIX
draft-trammell-ipfix-biflow-02.txt
Status of this Memo
By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79.
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.
This Internet-Draft will expire on December 21, 2006.
Copyright Notice
Copyright (C) The Internet Society (2006).
Abstract
This document describes an efficient method for exporting
bidirectional flow (Biflow) information using the IP Flow Information
Export (IPFIX) protocol, representing each Biflow using a single Flow
Record. It proposes two alternatives for information model
extensions to support this method, for the consideration of the IPFIX
Working Group.
Trammell & Boschi Expires December 21, 2006 [Page 1]
Internet-Draft IPFIX Biflow Export June 2006
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Biflow Semantics . . . . . . . . . . . . . . . . . . . . . . . 4
4. Existing Biflow Implementation Strategies . . . . . . . . . . 6
4.1. Two-Record Biflow Export using Record Adjacency . . . . . 6
4.2. Record Adjacency Example . . . . . . . . . . . . . . . . . 7
4.3. Key-Value Separation using commonPropertiesId . . . . . . 8
5. Single Record Biflows . . . . . . . . . . . . . . . . . . . . 9
5.1. New Reverse Information Elements . . . . . . . . . . . . . 10
5.2. Reverse Information Element Private Enterprise Number . . 10
5.3. Single Record Biflow Examples . . . . . . . . . . . . . . 12
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 14
7. Security Considerations . . . . . . . . . . . . . . . . . . . 15
8. Open Issues . . . . . . . . . . . . . . . . . . . . . . . . . 15
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 15
10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 15
10.1. Normative References . . . . . . . . . . . . . . . . . . . 15
10.2. Informative References . . . . . . . . . . . . . . . . . . 16
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 17
Intellectual Property and Copyright Statements . . . . . . . . . . 18
Trammell & Boschi Expires December 21, 2006 [Page 2]
Internet-Draft IPFIX Biflow Export June 2006
1. Introduction
Many flow analysis tasks benefit from association of the upstream and
downstream flows of a bidirectional communication, e.g., separating
answered and unanswered TCP requests, calculating round trip times,
etc. Metering processes that are not part of an asymmetric routing
infrastructure, especially those deployed within a single Observation
Domain through which bidirectional traffic flows, are well positioned
to observe bidirectional flows (Biflows). In such topologies, the
total resource requirements for Biflow assembly are often lower if
the Biflows are assembled at the Metering Process as opposed to the
Collecting Process. IPFIX requires only information model extensions
to be complete as a solution for exporting Biflow data.
To that end, we propose a Single Record Biflow export method in
section 5 of this document. This method requires additional
Information Elements to represent the reverse direction of each
biflow; so Section 5 also presents two alternatives for policies that
may be used to allocate these Information Elements. This method is
motivated by an exploration of other possible methods of Biflow
export; indeed, IPFIX may currently be used to export Biflow data
without information model extensions at all, but the methods for
doing so have important drawbacks. We describe these methods, their
advantages, and their disadvantages in section 4.
2. Terminology
The terms in this section are in line with the Terminology section of
the IPFIX Protocol [I-D.ietf-ipfix-protocol].
Flow: A Flow is a set of IP packets passing an Observation Point in
the network during a certain time interval. All packets belonging
to a particular Flow have a set of common properties. Each
property is defined as the result of applying a function to the
values of:
1. One or more packet header fields, transport header fields, or
application header fields.
2. One or more characteristics of the packet itself.
3. One or more fields derived from packet treatment.
A packet is said to belong to a Flow if it completely satisfies
all the defined properties of the Flow. This definition covers
the range from a Flow containing all packets observed at a network
interface to a Flow consisting of just a single packet between two
Trammell & Boschi Expires December 21, 2006 [Page 3]
Internet-Draft IPFIX Biflow Export June 2006
applications. It includes packets selected by a sampling
mechanism.
Flow Key: Each of the fields which
1. Belong to the packet header (e.g. destination IP address)
2. Are a property of the packet itself (e.g. packet length)
3. Are derived from packet treatment (e.g. AS number)
and which are used to define a Flow are termed Flow Keys.
Directional Key Field: A Directional Key Field is a single field in
a Flow Key as defined in the IPFIX Protocol [I-D.ietf-ipfix-
protocol] that is specifically associated with a single endpoint
of the flow. sourceIPv4Address and destinationTransportPort are
example directional key fields.
Non-directional Key Field: A Non-directional Key Field is a single
field within a Flow Key as defined in the IPFIX Protocol
[I-D.ietf-ipfix-protocol] that is not specifically associated with
either endpoint of the flow. protocolIdentifier is an example non-
directional key field.
Uniflow (unidirectional flow): A Uniflow is a Flow, as above,
restricted such that the Flow must be composed only of packets
sent from a single endpoint to another single endpoint.
Biflow (bidirectional flow): A Biflow is a Flow composed of packets
sent in both directions between two endpoints. A Biflow may also
be defined as composed from two Uniflows such that:
1. each Non-directional Key Field of each Uniflow is identical to
its counterpart in the other
2. each Directional Key Field of each Uniflow is identical to its
reverse direction counterpart in the other
3. Biflow Semantics
As stated in the Terminology section above, a Biflow is simply a Flow
representing packets flowing in both directions between two endpoints
on a network. There are compelling reasons to treat Biflows as
single entities within IPFIX. First, as most network communication
is inherently bidirectional, a Biflow-based data model more
accurately represents the behavior of the network, and enables easier
Trammell & Boschi Expires December 21, 2006 [Page 4]
Internet-Draft IPFIX Biflow Export June 2006
application of flow data to answering interesting questions about
network behavior. Second, exporting Biflow data can result in
improved export efficiency, by eliminating the duplication of Flow
Key data in an IPFIX message stream.
Considering Biflows as single entities does introduce some additional
semantic considerations within the IPFIX information model. When
handling Uniflows, the semantics of "source" and "destination"
Information Elements are clearly defined by the semantics of the
underlying packet header data. When grouping Biflows into single
IPFIX Data Records, the definitions of "source" and "destination"
become less clear.
The most basic method for classifying the two addresses in a Biflow
is to define the source and destination addresses of the flow as the
source and destination addresses of the packet initiating the flow,
respectively. This can be roughly approximated by a Metering Process
by simply assuming the first packet seen in a given Biflow is the
packet initiating the flow. Some metering technologies may improve
upon this method using some knowledge of the transport or application
protocols (e.g., TCP flags, DNS question/answer counts) to better
approximate the flow-initiating packet. These techniques are
especially useful when assembling Biflows from lossy packet sources.
Other methods of assigning direction exist. One alternate way to
classify Biflow addresses is by perimeter; in this method, the
Metering Process discriminates between "inside" and "outside" a
network of interest, and defines the source address as the address on
one side of this perimeter (generally the "outside" address; defining
source loosely as "attacker"). This approach is popular in security-
focused flow collection tools.
In any case, the design is the same: one of the Uniflow halves is
assumed to be in the "forward" direction, and one in the "reverse"
direction; which is the "forward" half is selected based upon some
characteristic of the connection itself. Note that as long as these
directions are assigned consistently, and there exists sufficient
information in the flow record for the Collecting Process to make its
own determination as to the flow's direction, the Metering Process'
assignment of flow direction is irrelevant. However, for the sake of
simplicity and consistency, we recommend the flow initiator method of
direction assignment.
Note that, by the definition of Observation Domain in section 2 of
the IPFIX Protocol [I-D.ietf-ipfix-protocol], Biflows may be composed
only of packets observed within the same Observation Domain. This
implies that Metering Processes that build Biflows out of Uniflow
halves must ensure that the two Uniflow halves were observed within
Trammell & Boschi Expires December 21, 2006 [Page 5]
Internet-Draft IPFIX Biflow Export June 2006
the same Observation Domain.
4. Existing Biflow Implementation Strategies
This section describes methods by which Biflow data may be presently
exported using IPFIX, without any IPFIX information model extensions.
We do not recommend these approaches, but present them in order to
explore the advantages and drawbacks of these methods to provide a
motivation for the proposed Single Record Biflow export method.
4.1. Two-Record Biflow Export using Record Adjacency
The simplest presently available way for an Exporting Process that
uses a Biflow-based internal data model to implement flow export
using IPFIX is simply to split the Biflow into two Uniflow records at
export time. The two Uniflow sides of the Biflow can then be placed
adjacent to each other in the IPFIX Message, with the initiating
Uniflow (the first Uniflow seen by the Metering Process) appearing in
the message first. This simple arrangement provides enough
information for a Collecting Process which uses a Biflow-based
internal data model to reassemble the Biflow without requiring any
computationally-intensive flow matching. When using this method the
order of the Uniflow records becomes crucial, and must be maintained
by both the Exporting and Collecting Processes.
This method does have the benefit of extreme simplicity. However, it
also has the disadvantage of extreme simplicity. It is not a
protocol so much as an informal arrangement; Collecting Processes
with Biflow-based internal data models cannot rely on the courtesy of
the Exporting Process to arrange Biflow halves adjacently in the flow
record stream and so must support computationally-intensive flow
matching anyway. No explicit association is made between the two
uniflow half records. It is also record space inefficient in that
every key field in the first Uniflow, whether directional or non-
directional, is duplicated in the second Uniflow record.
Additionally, because UDP and SCTP Unreliable transports may drop
and/or reorder packets, if these transports are used and the
Exporting Process is using record adjacency for biflow export, the
Exporting Process is responsible for ensuring that the two Flow
Records describing the two Uniflow halves are not divided by a
message boundary.
While the Record Adjacency method is simple, and is presently
available, its relative export size inefficiency and lack of any
actual association between Uniflows suggest the need for a better
Biflow export method.
Trammell & Boschi Expires December 21, 2006 [Page 6]
Internet-Draft IPFIX Biflow Export June 2006
4.2. Record Adjacency Example
Assuming that each Uniflow record is described by the following
simple template:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Set ID = 2 | Length = 40 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Template ID >= 256 | Field Count = 8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| flowStartSeconds 150 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| sourceIPv4Address 8 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| destinationIPv4Address 12 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| sourceTransportPort 7 | Field Length = 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| destinationTransportPort 11 | Field Length = 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| protocolIdentifier 4 | Field Length = 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| octetTotalCount 85 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| packetTotalCount 86 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1: Record Adjacency Template Set Example
a two-record adjacent Biflow counting octets and packets in a typical
HTTP transaction might look like the following:
Trammell & Boschi Expires December 21, 2006 [Page 7]
Internet-Draft IPFIX Biflow Export June 2006
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Set ID >= 256 | Length = 54 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 2006-02-01 17:00:00 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 192.0.2.2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 192.0.2.3 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 32770 | 80 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 6 | 18000 . . .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. . . | 65 . . .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. . . | 2006-02-01 17:00:01 . . .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. . . | 192.0.2.3 . . .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. . . | 192.0.2.2 . . .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. . . | 80 | 32770 . . .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. . . | 6 | 128000 . . .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. . . | 110 . . .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. . . |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 2: Record Adjacency Data Set Example
Notice that this trivial example duplicates 13 bytes of key
information per Biflow.
4.3. Key-Value Separation using commonPropertiesId
The method described in Reducing Redundancy in IPFIX and PSAMP
Reports [I-D.boschi-ipfix-reducing-redundancy] can be used to improve
Biflow export bandwidth efficiency over the record adjacency method.
This method separates the export of information common to a set of
flow records from the export of the individual flow records, linking
them with an index, the commonPropertiesID Information Element.
For Biflow export, the Flow Keys and any other fields common to the
Biflow are exported within a data record defined by an Option
Template, containing a commonPropertiesID Information Element as
scope. This commonPropertiesID uniquely identifies that set of
Trammell & Boschi Expires December 21, 2006 [Page 8]
Internet-Draft IPFIX Biflow Export June 2006
properties and hence the Biflow itself. The individual Uniflow
properties are then exported using one Flow Record per direction,
each referencing the Biflow keys by the unique commonPopertiesID.
While this solution has the potential for significant bandwidth
efficiency gains, and is widely applicable to a variety of bandwidth-
reduction use cases, it is not yet an optimal method for Biflow
export. First, the management of the commonPropertiesID for each
biflow requires additional resources at both the Exporting Process
and the Collecting Process. Second, instead of two records per
Biflow as in the Record Adjacency method, the Reducing Redundancy
method requires three. The set headers required to switch between
common properties and specific properties templates also add slight
bandwidth overhead.
5. Single Record Biflows
The most direct method for exporting Biflows using IPFIX is to use a
single Flow Record to represent each Biflow. Each of these Flow
Records will contain the Flow Key fields once, and both forward and
reverse direction information elements for each non-key field. This
proposal requires extending the IPFIX Information Model to provide
for reverse value fields. This extension will cover most or all of
the information model, creating a "reverse" Information Element
counterpart to each presently defined "forward" Information Element,
because any Information Element that may be a non-key field in a
Biflow will require a counterpart.
The semantics of these single-record Biflows are outlined in section
3, above. Metering Process implementations using single-record
biflow export SHOULD assign the forward and reverse direction such
that the forward direction treats the flow initiator as source, to
the best ability of the metering process to determine the flow
initiator.
If a flow has no reverse direction -- that is, it is composed of a
single Uniflow without another Uniflow in response -- it may only be
represented as a single record Biflow if its only reverse value
fields are counters. This is because the IPFIX Information Model
makes no distinction between zeroes and null values. Exporting
processes SHOULD switch to a template containing no reverse
Information Elements when exporting flows without a reverse
direction. Note that Flow Records containing no directional key
fields (e.g., Flow Records representing aggregate octet counts by
protocolIdentifier) cannot, by definition, have a reverse direction.
We have identified two possible methods for extending the information
Trammell & Boschi Expires December 21, 2006 [Page 9]
Internet-Draft IPFIX Biflow Export June 2006
model to include the required reverse Information Elements. The
first and simpler method would be to add one new "reverse"
Information Element to the information model for each Information
Element subject to reversal in a single-record Biflow. The second
and more convenient method would be to assign a special Private
Enterprise Number (PEN) that creates a new reverse information
element number space. Note that the choice between these methods
impacts template representation of information elements only; the
Data Records in which single-record Biflows are exported are
identical with either assignment method. These methods are described
in more detail below. The intent is to select one of these two
methods; we present both here to promote discussion.
5.1. New Reverse Information Elements
As every Information Element in the information model that may appear
as a non-key field in a Flow Record is subject to reversal, and the
information model does not generally restrict Information Elements to
key or non-key roles, single-record biflow export will require a
great number of new reverse information elements. Only certain
identifiers (flowId, templateId, and sourceId, from section 5.1 in
the IPFIX Information Model [I-D.ietf-ipfix-info]), and metering and
export process properties (section 5.2 in the IPFIX Information Model
[I-D.ietf-ipfix-info]) are not subject to reversal.
The IPFIX Information Model has more than adequate number space for
official information element expansion - 32768 IANA-managed
information elements are available, of which less than 250 have been
allocated or reserved. The addition of fewer than 250 new reverse
elements would not place significant strain on available number
space. However, the additional reverse information elements are not
so much a discrete list of new Information Elements as a new
dimension in the information model. This increases the effort
required to manage the future extension of the IPFIX Information
Model, adding a new task to this process: that of evaluating the
reversibility of each new proposed Information Element and ensuring
that every new Information Element that should have a reverse
counterpart does. It also effectively reduces the available IANA-
managed information element number space by half.
A complete list of reverse IEs required to implement this method will
appear in a future revision of this draft if working group consensus
moves toward this method.
5.2. Reverse Information Element Private Enterprise Number
Concerns have been raised in past deliberations of the IPFIX Working
Group about adding information model dimensions; a real solution
Trammell & Boschi Expires December 21, 2006 [Page 10]
Internet-Draft IPFIX Biflow Export June 2006
would probably require protocol changes and hence is outside the
scope of this draft. However, another more elegant short term
solution may be possible by leveraging private enterprise information
elements.
Instead of defining multiple new reverse information elements, it
would also be possible to have IANA assign a single PEN to this
draft, and to define that PEN to signify "IPFIX Reverse Information
Element" (the Reverse PEN). This reverse PEN would serve as a
"reverse direction flag" in the template; each Information Element
number within this PEN space would be assigned to the reverse
counterpart of the corresponding IANA-assigned public Information
Element number. In other words, to generate a reverse information
element in a template corresponding to a given forward information
element, simply set the enterprise bit and define the Information
Element within the Reverse PEN space, as in the figure below.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| flowStartSeconds 150 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
forward |
|
reverse V
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1| reverseFlowStartSeconds 150 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| reverse PEN TBA |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3: Example Mapping between Forward and Reverse IEs using
Reverse PEN
This approach has the advantage of flexibility. It treats a new
number space dimension explicitly as a dimension. New Information
Elements can be added freely to the IANA-managed space without
concern for whether a reverse element should also be added. Aside
from the initial allocation of an enterprise number for this purpose,
there is no additional maintenance overhead for supporting reverse
information elements in the information model. The approach is also
parallel with early proposals to add explicit information model
dimensioning in a future revision of the IPFIX Protocol.
The primary drawback of this method is that it may slightly abuse the
intent of the IANA Enterprise Number registry; this concern is
detailed in the IANA Considerations section below.
Trammell & Boschi Expires December 21, 2006 [Page 11]
Internet-Draft IPFIX Biflow Export June 2006
5.3. Single Record Biflow Examples
The following template describes a simple Biflow record equivalent to
the Record Adjacency example in section 4.2, using new information
elements for the reverse-direction fields; these new information
elements are denoted as TBA, as they have not been assigned by IANA.
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Set ID = 2 | Length = 52 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Template ID >= 256 | Field Count = 11 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| flowStartSeconds 150 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| reverseFlowStartSeconds TBA | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| sourceIPv4Address 8 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| destinationIPv4Address 12 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| sourceTransportPort 7 | Field Length = 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| destinationTransportPort 11 | Field Length = 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| protocolIdentifier 4 | Field Length = 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| octetTotalCount 85 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| reverseOctetTotalCount TBA | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| packetTotalCount 86 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| reversePacketTotalCount TBA | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 4: Single Record Biflow Template Set with New IEs
The following template describes the same data record as the previous
one, but using the "IPFIX Reverse Information Element" PEN assigned
for the purpose of differentiating forward from reverse information
elements. This private enterprise number is denoted as TBA, as it
has not yet been assigned by IANA.
Trammell & Boschi Expires December 21, 2006 [Page 12]
Internet-Draft IPFIX Biflow Export June 2006
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Set ID = 2 | Length = 64 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Template ID >= 256 | Field Count = 11 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| flowStartSeconds 150 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1| reverseFlowStartSeconds 150 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| reverse PEN TBA |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| sourceIPv4Address 8 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| destinationIPv4Address 12 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| sourceTransportPort 7 | Field Length = 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| destinationTransportPort 11 | Field Length = 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| protocolIdentifier 4 | Field Length = 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| octetTotalCount 85 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1| reverseOctetTotalCount 85 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| reverse PEN TBA |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|0| packetTotalCount 86 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1| reversePacketTotalCount 86 | Field Length = 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| reverse PEN TBA |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 5: Single Record Biflow Template Set with Reverse PEN
Whether reverse information elements are assigned directly or
implicitly by private enterprise number, both templates above
describe the example single record Biflow below, which represents the
same typical HTTP transaction as in example 4.2.
Trammell & Boschi Expires December 21, 2006 [Page 13]
Internet-Draft IPFIX Biflow Export June 2006
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Set ID >= 256 | Length = 41 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 2006-02-01 17:00:00 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 2006-02-01 17:00:01 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 192.0.2.2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 192.0.2.3 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 32770 | 80 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 6 | 18000 . . .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. . . | 128000 . . .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. . . | 65 . . .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. . . | 110 . . .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
. . . |
+-+-+-+-+-+-+-+-+
Figure 6: Single Record Biflow Data Set
6. IANA Considerations
As specified in the IPFIX Information Model [I-D.ietf-ipfix-info],
IANA will create a new registry for IPFIX Information Element
Numbers. New assignments for IPFIX Information Elements will be
administered by IANA, on a First Come First Served basis, subject to
Expert Review as per RFC 2434 [RFC2434], i.e. review by one of a
group of expert designated by an IETF Operations and Management Area
Director. The group of experts must double check the Information
Element definitions against Information Elements already defined for
completeness, accuracy, redundancy, and conformance to the naming
conventions in the IPFIX Information Model [I-D.ietf-ipfix-info].
Those experts will initially be drawn from the Working Group Chairs
and document editors of the IPFIX and PSAMP Working Groups, as noted
in the IPFIX Information Model [I-D.ietf-ipfix-info].
This document proposes a set of new IPFIX Information Elements that
extend those already defined in the information model; depending on
the method selected to add these new Information Elements, either
each Information Element or a single Reverse PEN must be assigned by
IANA. Identifiers that have not yet been assigned by IANA are
Trammell & Boschi Expires December 21, 2006 [Page 14]
Internet-Draft IPFIX Biflow Export June 2006
denoted "TBA" (To Be Assigned) in this document.
If the consensus of the Working Group is to assign separate numbers
to each reverse-direction Information Element as in Section 5.1, each
of these reverse information elements will need to be assigned from
the IANA IPFIX Information Element Number registry.
If the consensus of the Working Group is to assign a single Reverse
PEN for reverse-direction Information Elements, this PEN will need to
be assigned from the IANA Enterprise Number registry. The authors
are in contact with IANA on this issue, and plan to have a PEN
assigned to this draft, with the authors themselves as point of
contact. A more definitive statement on the status of this Reverse
PEN will appear in the IANA Considerations section of the next
revision of this draft.
7. Security Considerations
The same security considerations as for the IPFIX Protocol [I-D.ietf-
ipfix-protocol] apply.
8. Open Issues
We must select one policy for allocating reverse information
elements. This single selection will appear in the next revision of
this document [bht, eb].
9. Acknowledgements
We would like to thank Lutz Mark, Juergen Quittek, Andrew Johnson,
Paul Aitken, Benoit Claise, and Carsten Schmoll for their
contributions and comments. Special thanks to Michelle Cotton for
her assistance in navigating the IANA process for enterprise number
assignment.
10. References
10.1. Normative References
[I-D.ietf-ipfix-protocol]
Claise, B., "IPFIX Protocol Specification",
draft-ietf-ipfix-protocol-21 (work in progress),
April 2006.
Trammell & Boschi Expires December 21, 2006 [Page 15]
Internet-Draft IPFIX Biflow Export June 2006
[I-D.ietf-ipfix-info]
Quittek, J., "Information Model for IP Flow Information
Export", draft-ietf-ipfix-info-11 (work in progress),
September 2005.
[I-D.boschi-ipfix-reducing-redundancy]
Boschi, E. and L. Mark, "Reducing redundancy in IPFIX and
PSAMP reports", draft-boschi-ipfix-reducing-redundancy-01
(work in progress), March 2006.
10.2. Informative References
[I-D.ietf-ipfix-reqs]
Quittek, J., "Requirements for IP Flow Information
Export", draft-ietf-ipfix-reqs-16 (work in progress),
June 2004.
[I-D.ietf-ipfix-as]
Zseby, T., "IPFIX Applicability", draft-ietf-ipfix-as-08
(work in progress), June 2006.
[RFC2434] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", BCP 26, RFC 2434,
October 1998.
Trammell & Boschi Expires December 21, 2006 [Page 16]
Internet-Draft IPFIX Biflow Export June 2006
Authors' Addresses
Brian H. Trammell
CERT Network Situational Awareness
Software Engineering Institute
4500 Fifth Avenue
Pittsburgh, PA 15213
US
Phone: +1 412 268 9748
Email: bht@cert.org
Elisa Boschi
Hitachi Europe SAS
Immueble Le Theleme
1503 Route les Dolines
Valbonne 06560
France
Phone: +33 4 89874180
Email: elisa.boschi@hitachi-eu.com
Trammell & Boschi Expires December 21, 2006 [Page 17]
Internet-Draft IPFIX Biflow Export June 2006
Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be
found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at
ietf-ipr@ietf.org.
Disclaimer of Validity
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIM 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.
Copyright Statement
Copyright (C) The Internet Society (2006). This document is subject
to the rights, licenses and restrictions contained in BCP 78, and
except as set forth therein, the authors retain all their rights.
Acknowledgment
Funding for the RFC Editor function is currently provided by the
Internet Society.
Trammell & Boschi Expires December 21, 2006 [Page 18]
| PAFTECH AB 2003-2026 | 2026-04-24 04:30:04 |