<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">

<?rfc toc="yes"?>
<?rfc compact="yes" ?>
<?rfc subcompact="no" ?>
<?rfc strict="no" ?>
<?rfc symrefs="yes" ?>

<rfc category="info" ipr="trust200811" docName="draft-coene-rserpool-applic-ipfix-07.txt">

<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>


<front>

<title abbrev="RSerPool Applicability for IPFIX">
Reliable Server Pooling Applicability for IP Flow Information Exchange
</title>

<author initials="T." surname="Dreibholz" fullname="Thomas Dreibholz">
<organization abbrev="University of Duisburg-Essen">University of Duisburg-Essen, Institute for Experimental Mathematics</organization>
<address>
<postal>
   <street>Ellernstrasse 29</street>
   <city>45326 Essen</city>
   <region>Nordrhein-Westfalen</region>
   <country>Germany</country>
</postal>
<phone>+49-201-1837637</phone>
<facsimile>+49-201-1837673</facsimile>
<email>dreibh@iem.uni-due.de</email>
<uri>http://www.iem.uni-due.de/~dreibh/</uri>
</address>
</author>

<author initials="L." surname="Coene" fullname="Lode Coene">
<organization>Nokia Siemens Networks</organization>
<address>
<postal>
   <street>Atealaan 32</street>
   <city>Herentals</city>
   <code>2200</code>
   <country>Belgium</country>
</postal>
<phone>+32-14-252081</phone>
<email>lode.coene@nsn.com</email>
</address>
</author>

<author initials="P." surname="Conrad" fullname="Phillip Conrad">
<organization>University of Delaware</organization>
<address>
   <postal>
   <street>103 Smith Hall</street>
   <city>Newark</city>
   <code>DE 19716</code>
   <country>USA</country>
   </postal>
   <phone>+1 302 831 8622</phone>
   <email>conrad@acm.org</email>
</address>
</author>


<date day="7" month="January" year="2009" />
<keyword>Internet-Draft</keyword>

<abstract>
   <t>This document describes the applicability of the Reliable Server
    Pooling architecture to the IP Flow Information Exchange using the
    Aggregate Server Access Protocol (ASAP) functionality of RSerPool only. Data
    exchange in IPFIX between the router and the data collector can be provided
    by a limited retransmission protocol.</t>
</abstract>


</front>

<middle>


<section title="Introduction">
<t> Reliable Server Pooling provides protocols for providing highly
    available services. The services are located in a pool of redundant
    servers and if a server fails, another server will take over. The
    only requirement put on these servers belonging to the pool is that if
    state is maintained by the server, this state must be transferred
    to the other server taking over.</t>

<t> The goal is to provide server-based redundancy. Transport and
    network level redundancy are handle by the transport and network layer
    protcols.</t>

<t> The application may choose to distribute its traffic over the servers
    of the pool conforming to a certain policy.</t>

<t> The application wishing to make use of RSerPool protocols may use
    different transport layers (such as UDP, TCP and SCTP). However, some
    transport layers may have restrictions build in in the way they
    might be operating in the RSerPool architecture and its protocols.</t>

<section title="Scope">
<t> The scope of this document is to explain the way that a minimal
    version of Reliable Server Pooling protocols have to be used in order
    to provide a highly available service towards IP Flow Information
    Exchange (IPFIX) protocols.</t>

</section>


<section title="Terminology">
<t> The terms are commonly identified in related work and can be found
    in the Aggregate Server Access Protocol and Endpoint Handlespace Redundancy
    Protocol Common Parameters document
    <xref target="RFC5354" />
    </t>
</section>
</section>


<section title="IPFIX using RSerPool">

<section title="Architecture">

<t> IP flow information is exchanged between observation points and
    collector points. The observation points may try to find out via the
    Aggregate Server Access Protocol
    (ASAP, see <xref target="RFC5352" />)
    which collector point(s) are
    active. Both the observation and the collector point may have
    limitations for exchanging the information (observation point may
    have limited buffer space and collectors points may be overburdened
    with receiving lots of flow information from different observation
    points).</t>

<t> The observation point will query the ENRP server for resolution of a
    particular collector pool name and the ENRP server will return
    a list of one or more collector points to the observation point.</t>

<t> The observation point will use its own transport protocols (TCP, UDP,
    SCTP, SCTP with PR-SCTP extension) for exchanging the IPFIX data
    between the observation point and the collector point.
    If a collector point would fail, then the observation point will
    send its data towards a different collector point,
    belonging to the same collector pool.</t>

<t> Collector points will announce themselves to the ENRP server and
    will be monitored for their availability. The observation point will
    only query the ENRP server for server pool name resolution.</t>

</section>
</section>


<section title="Transport protocols suitable for IPFIX">

<t> The exchange of IP flow information data between an observation point
    and a collection point consists of massive amounts of data.</t>

<t> One collection point can service many observation points, therefore
    transport protocols must do congestion control (example: modifying
    the receive buffer space, thus reducing the incoming flow of data),
    so that the collection point is not overburdened by its observation
    points. Some data must arrive at the collector while other data
    might arrive (if it gets lost: no problem). The choice of reliable
    or partial reliable delivery has to be made by the observation
    point
    These requirements demand a protocol which provides variable
    transport reliability of its data: it should be able to chose
    the reliability by the IPFIX protocols on a a per-message base.</t>

   <t>SCTP <xref target="RFC4960" /> with PR-SCTP extension
    <xref target="RFC3758" /> is the only know protocol which
    allows the choice of full, partial or unreliable delivery of
    the message to its peer node. TCP will only allow fully reliable
    delivery, while UDP only provides unreliable delivery and
    NO congestion control.</t>
</section>


<section title="Security considerations">

<t> The protocols used in the Reliable Server Pooling architecture only
    try to increase the availability of the servers in the
    network. RSerPool protocols do not contain any protocol mechanisms
    which are directly related to user message authentication, integrity
    and confidentiality functions. For such features, it depends on the
    IPSEC protocols or on Transport Layer Security (TLS) protocols for
    its own security and on the architecture and/or security features
    of its user protocols.</t>

<t> The RSerPool architecture allows the use of different transport
    protocols for its application and control data exchange. These
    transport protocols may have mechanisms for reducing the risk of
    blind denial-of-service attacks and/or masquerade attacks. If such
    measures are required by the applications, then it is advised to
    check the SCTP applicability statement
    <xref target="RFC3257">RFC2057</xref> for guidance on this issue.</t>

</section>


<section title="Reference Implementation">
<t>The RSerPool reference implementation RSPLIB can be found at
<xref target="RSerPoolPage" />. It supports the functionalities
defined by
<xref target="RFC5351" />,
<xref target="RFC5352" />,
<xref target="RFC5353" />,
<xref target="RFC5354" /> and
<xref target="RFC5356" /> as well as the options
<xref target="I-D.dreibholz-rserpool-asap-hropt" />,
<xref target="I-D.dreibholz-rserpool-enrp-takeover" /> and
<xref target="I-D.dreibholz-rserpool-delay" />.
An introduction to this implementation is provided in
<xref target="Dre2006" />.</t>
</section>


<section title="Security Considerations">
<t>Security considerations for RSerPool systems are described by
<xref target="RFC5355" />.</t>
</section>


<section title="IANA Considerations">
<t>This document introduces no additional considerations for IANA.</t>
</section>


<section title="Acknowledgments">
<t>The authors wish to thank Maureen Stillman and many others
   for their invaluable comments.</t>
</section>


</middle>


<back>

<references title='Normative References'>
 <?rfc include="reference.RFC.5351" ?>
 <?rfc include="reference.RFC.5352" ?>
 <?rfc include="reference.RFC.5353" ?>
 <?rfc include="reference.RFC.5354" ?>
 <?rfc include="reference.RFC.5355" ?>
 <?rfc include="reference.RFC.5356" ?>

 <?rfc include="reference.RFC.3257" ?>
 <?rfc include="reference.RFC.3758" ?>
 <?rfc include="reference.RFC.4960" ?>
</references>

<references title='Informative References'>
 <?rfc include="reference.RSerPoolPage" ?>
 <?rfc include="reference.Dre2006" ?>
 <?rfc include="reference.I-D.dreibholz-rserpool-asap-hropt" ?>
 <?rfc include="reference.I-D.dreibholz-rserpool-enrp-takeover" ?>
 <?rfc include="reference.I-D.dreibholz-rserpool-delay" ?>
</references>

</back>


</rfc>
