home *** CD-ROM | disk | FTP | other *** search
/ Internet Core Protocols / Oreilly-InternetCoreProtocols.iso / RFCs / rfc2647.txt < prev    next >
Encoding:
Text File  |  1999-10-14  |  45.7 KB  |  1,460 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                       D. Newman
  8. Request for Comments: 2647                        Data Communications
  9. Category: Informational                                   August 1999
  10.  
  11.  
  12.            Benchmarking Terminology for Firewall Performance
  13.  
  14. Status of this Memo
  15.  
  16.    This memo provides information for the Internet community.  It does
  17.    not specify an Internet standard of any kind.  Distribution of this
  18.    memo is unlimited.
  19.  
  20. Copyright Notice
  21.  
  22.    Copyright (C) The Internet Society (1999).  All Rights Reserved.
  23.  
  24. Table of Contents
  25.  
  26.    1. Introduction...................................................2
  27.    2. Existing definitions...........................................2
  28.    3. Term definitions...............................................3
  29.    3.1 Allowed traffic...............................................3
  30.    3.2 Application proxy.............................................3
  31.    3.3 Authentication................................................4
  32.    3.4 Bit forwarding rate...........................................5
  33.    3.5 Circuit proxy.................................................6
  34.    3.6 Concurrent connections........................................6
  35.    3.7 Connection....................................................7
  36.    3.8 Connection establishment......................................9
  37.    3.9 Connection establishment time.................................9
  38.    3.10 Connection maintenance......................................10
  39.    3.11 Conection overhead..........................................11
  40.    3.12 Connection teardown.........................................11
  41.    3.13 Connection teardown time....................................12
  42.    3.14 Data source.................................................12
  43.    3.15 Demilitarized zone..........................................13
  44.    3.16 Firewall....................................................13
  45.    3.17 Goodput.....................................................14
  46.    3.18 Homed.......................................................15
  47.    3.19 Illegal traffic.............................................15
  48.    3.20 Logging.....................................................16
  49.    3.21 Network address translation.................................16
  50.    3.22 Packet filtering............................................17
  51.    3.23 Policy......................................................17
  52.    3.24 Protected network...........................................18
  53.    3.25 Proxy.......................................................19
  54.    3.26 Rejected traffic............................................19
  55.  
  56.  
  57.  
  58. Newman                       Informational                      [Page 1]
  59.  
  60. RFC 2647            Firewall Performance Terminology         August 1999
  61.  
  62.  
  63.    3.27 Rule set....................................................20
  64.    3.28 Security association........................................20
  65.    3.29 Stateful packet filtering...................................21
  66.    3.30 Tri-homed...................................................22
  67.    3.31 Unit of transfer............................................22
  68.    3.32 Unprotected network.........................................23
  69.    3.33 User........................................................23
  70.    4. Security considerations.......................................24
  71.    5. References....................................................25
  72.    6. Acknowledgments...............................................25
  73.    7. Contact Information...........................................25
  74.    8. Full Copyright Statement......................................26
  75.  
  76. 1. Introduction
  77.  
  78.    This document defines terms used in measuring the performance of
  79.    firewalls. It extends the terminology already used for benchmarking
  80.    routers and switches with definitions specific to firewalls.
  81.  
  82.    Forwarding rate and connection-oriented measurements are the primary
  83.    metrics used in this document.
  84.  
  85.    Why do we need firewall performance measurements? First, despite the
  86.    rapid rise in firewall deployment, there is no standard method of
  87.    performance measurement. Second, implementations vary widely, making
  88.    it difficult to do direct performance comparisons. Finally, more and
  89.    more organizations are deploying firewalls on internal networks
  90.    operating at relatively high speeds, while most firewall
  91.    implementations remain optimized for use over relatively low-speed
  92.    wide-area connections. As a result, users are often unsure whether
  93.    the products they buy will stand up to relatively heavy loads.
  94.  
  95. 2. Existing definitions
  96.  
  97.    This document uses the conceptual framework established in RFCs 1242
  98.    and 2544 (for routers) and RFC 2285 (for switches). The router and
  99.    switch documents contain discussions of several terms relevant to
  100.    benchmarking the performance of firewalls. Readers should consult the
  101.    router and switch documents before making use of this document.
  102.  
  103.    This document uses the definition format described in RFC 1242,
  104.    Section 2. The sections in each definition are: definition,
  105.    discussion, measurement units (optional), issues (optional), and
  106.    cross-references.
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114. Newman                       Informational                      [Page 2]
  115.  
  116. RFC 2647            Firewall Performance Terminology         August 1999
  117.  
  118.  
  119. 3. Term definitions
  120.  
  121. 3.1 Allowed traffic
  122.  
  123.    Definition:
  124.      Packets forwarded as a result of the rule set of the device under
  125.      test/system under test (DUT/SUT).
  126.  
  127.    Discussion:
  128.      Firewalls typically are configured to forward only those packets
  129.      explicitly permitted in the rule set. Forwarded packets must be
  130.      included in calculating the bit forwarding rate or maximum bit
  131.      forwarding rate of the DUT/SUT. All other packets must not be
  132.      included in bit forwarding rate calculations.
  133.  
  134.      This document assumes 1:1 correspondence of allowed traffic offered
  135.      to the DUT/SUT and forwarded by the DUT/SUT. There are cases where
  136.      the DUT/SUT may forward more traffic than it is offered; for
  137.      example, the DUT/SUT may act as a mail exploder or a multicast
  138.      server. Any attempt to benchmark forwarding rates of such traffic
  139.      must include a description of how much traffic the tester expects
  140.      to be forwarded.
  141.  
  142.    Unit of measurement:
  143.      not applicable
  144.  
  145.    Issues:
  146.  
  147.    See also:
  148.      policy
  149.      rule set
  150.  
  151. 3.2 Application proxy
  152.  
  153.    Definition:
  154.      A proxy service that is set up and torn down in response to a
  155.      client request, rather than existing on a static basis.
  156.  
  157.    Discussion:
  158.      Circuit proxies always forward packets containing a given port
  159.      number if that port number is permitted by the rule set.
  160.      Application proxies, in contrast, forward packets only once a
  161.      connection has been established using some known protocol. When the
  162.      connection closes, a firewall using applicaton proxies rejects
  163.      individual packets, even if they contain port numbers allowed by a
  164.      rule set.
  165.  
  166.  
  167.  
  168.  
  169.  
  170. Newman                       Informational                      [Page 3]
  171.  
  172. RFC 2647            Firewall Performance Terminology         August 1999
  173.  
  174.  
  175.    Unit of measurement:
  176.      not applicable
  177.  
  178.    Issues:
  179.      circuit proxy
  180.      rule sets
  181.  
  182.    See also:
  183.      allowed traffic
  184.      circuit proxy
  185.      proxy
  186.      rejected traffic
  187.      rule set
  188.  
  189. 3.3 Authentication
  190.  
  191.    Definition:
  192.      The process of verifying that a user requesting a network resource
  193.      is who he, she, or it claims to be, and vice versa.
  194.  
  195.    Discussion:
  196.      Trust is a critical concept in network security. Any network
  197.      resource (such as a file server or printer) typically requires
  198.      authentication before granting access.
  199.  
  200.      Authentication takes many forms, including but not limited to IP
  201.      addresses; TCP or UDP port numbers; passwords; external token
  202.      authentication cards; and biometric identification such as
  203.      signature, speech, or retina recognition systems.
  204.  
  205.      The entity being authenticated might be the client machine (for
  206.      example, by proving that a given IP source address really is that
  207.      address, and not a rogue machine spoofing that address) or a user
  208.      (by proving that the user really is who he, she, or it claims to
  209.      be).  Servers might also authenticate themselves to clients.
  210.  
  211.      Testers should be aware that in an increasingly mobile society,
  212.      authentication based on machine-specific criteria such as an IP
  213.      address or port number is not equivalent to verifying that a given
  214.      individual is making an access request. At this writing systems
  215.      that verify the identity of users are typically external to the
  216.      firewall, and may introduce additional latency to the overall SUT.
  217.  
  218.    Unit of measurement:
  219.      not applicable
  220.  
  221.    Issues:
  222.  
  223.  
  224.  
  225.  
  226. Newman                       Informational                      [Page 4]
  227.  
  228. RFC 2647            Firewall Performance Terminology         August 1999
  229.  
  230.  
  231.    See also:
  232.      user
  233.  
  234. 3.4 Bit forwarding rate
  235.  
  236.    Definition:
  237.      The number of bits per second of allowed traffic a DUT/SUT can be
  238.      observed to transmit to the correct destination interface(s) in
  239.      response to a specified offered load.
  240.  
  241.    Discussion:
  242.      This definition differs substantially from section 3.17 of RFC 1242
  243.      and section 3.6.1 of RFC 2285.
  244.  
  245.      Unlike both RFCs 1242 and 2285, this definition introduces the
  246.      notion of different classes of traffic: allowed, illegal, and
  247.      rejected (see definitions for each term). For benchmarking
  248.      purposes, it is assumed that bit forwarding rate measurements
  249.      include only allowed traffic.
  250.  
  251.      Unlike RFC 1242, there is no reference to lost or retransmitted
  252.      data.  Forwarding rate is assumed to be a goodput measurement, in
  253.      that only data successfully forwarded to the destination interface
  254.      is measured.  Bit forwarding rate must be measured in relation to
  255.      the offered load.  Bit forwarding rate may be measured with
  256.      differed load levels, traffic orientation, and traffic
  257.      distribution.
  258.  
  259.      Unlike RFC 2285, this measurement counts bits per second rather
  260.      than frames per second. Testers interested in frame (or frame-like)
  261.      measurements should use units of transfer.
  262.  
  263.    Unit of measurement:
  264.      bits per second
  265.  
  266.    Issues:
  267.      Allowed traffic vs. rejected traffic
  268.  
  269.    See also:
  270.      allowed traffic
  271.      goodput
  272.      illegal traffic
  273.      rejected traffic
  274.      unit of transfer
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282. Newman                       Informational                      [Page 5]
  283.  
  284. RFC 2647            Firewall Performance Terminology         August 1999
  285.  
  286.  
  287. 3.5 Circuit proxy
  288.  
  289.    Definition:
  290.      A proxy service that statically defines which traffic will be
  291.      forwarded.
  292.  
  293.    Discussion:
  294.      The key difference between application and circuit proxies is that
  295.      the latter are static and thus will always set up a connection if
  296.      the DUT/SUT's rule set allows it. For example, if a firewall's rule
  297.      set permits ftp connections, a circuit proxy will always forward
  298.      traffic on TCP port 20 (ftp-data) even if no control connection was
  299.      first established on TCP port 21 (ftp-control).
  300.  
  301.    Unit of measurement:
  302.      not applicable
  303.  
  304.    Issues:
  305.      application proxy
  306.      rule sets
  307.  
  308.    See also:
  309.      allowed traffic
  310.      application proxy
  311.      proxy
  312.      rejected traffic
  313.      rule set
  314.  
  315. 3.6 Concurrent connections
  316.  
  317.    Definition:
  318.      The aggregate number of simultaneous connections between hosts
  319.      across the DUT/SUT, or between hosts and the DUT/SUT.
  320.  
  321.    Discussion:
  322.      The number of concurrent connections a firewall can support is just
  323.      as important a metric for some users as maximum bit forwarding
  324.      rate.
  325.  
  326.      While "connection" describes only a state and not necessarily the
  327.      transfer of data, concurrency assumes that all existing connections
  328.      are in fact capable of transferring data. If a data cannot be sent
  329.      over a connection, that connection should not be counted toward the
  330.      number of concurrent connections.
  331.  
  332.      Further, this definition assumes that the ability (or lack thereof)
  333.      to transfer data on a given connection is solely the responsibility
  334.      of the DUT/SUT. For example, a TCP connection that a DUT/SUT has
  335.  
  336.  
  337.  
  338. Newman                       Informational                      [Page 6]
  339.  
  340. RFC 2647            Firewall Performance Terminology         August 1999
  341.  
  342.  
  343.      left in a FIN_WAIT_2 state clearly should not be counted. But
  344.      another connection that has temporarily stopped transferring data
  345.      because some external device has restricted the flow of data is not
  346.      necessarily defunct. The tester should take measures to isolate
  347.      changes in connection state to those effected by the DUT/SUT.
  348.  
  349.    Unit of measurement:
  350.      Concurrent connections
  351.      Maximum number of concurrent connections
  352.  
  353.    Issues:
  354.  
  355.    See also:
  356.      connections
  357.      connection establishment time
  358.      connection overhead
  359.  
  360. 3.7 Connection
  361.  
  362.    Definition:
  363.      A state in which two hosts, or a host and the DUT/SUT, agree to
  364.      exchange data using a known protocol.
  365.  
  366.    Discussion:
  367.      A connection is an abstraction describing an agreement between two
  368.      nodes: One agrees to send data and the other agrees to receive it.
  369.  
  370.      Connections might use TCP, but they don't have to. Other protocols
  371.      such as ATM also might be used, either instead of or in addition to
  372.      TCP connections.
  373.  
  374.      What constitutes a connection depends on the application. For a
  375.      native ATM application, connections and virtual circuits may be
  376.      synonymous. For TCP/IP applications on ATM networks (where multiple
  377.      TCP connections may ride over a single ATM virtual circuit), the
  378.      number of TCP connections may be the most important consideration.
  379.  
  380.      Additionally, in some cases firewalls may handle a mixture of
  381.      native TCP and native ATM connections. In this situation, the
  382.      wrappers around user data will differ. The most meaningful metric
  383.      describes what an end-user will see.
  384.  
  385.      Data connections describe state, not data transfer. The existence
  386.      of a connection does not imply that data travels on that connection
  387.      at any given time, although if data cannot be forwarded on a
  388.      previously established connection that connection should not be
  389.      considered in any aggregrate connection count (see concurrent
  390.      connections).
  391.  
  392.  
  393.  
  394. Newman                       Informational                      [Page 7]
  395.  
  396. RFC 2647            Firewall Performance Terminology         August 1999
  397.  
  398.  
  399.      A firewall's architecture dictates where a connection terminates.
  400.      In the case of application or circuit proxy firewalls, a connection
  401.      terminates at the DUT/SUT. But firewalls using packet filtering or
  402.      stateful packet filtering designs act only as passthrough devices,
  403.      in that they reside between two connection endpoints. Regardless of
  404.      firewall architecture, the number of data connections is still
  405.      relevant, since all firewalls perform some form of connection
  406.      maintenance; at the  very least, all check connection requests
  407.      against their rule sets.
  408.  
  409.      Further, note that connection is not an atomic unit of measurement
  410.      in that it does not describe the various steps involved in
  411.      connection setup, maintenance, and teardown. Testers may wish to
  412.      take separate measurements of each of these components.
  413.  
  414.      When benchmarking firewall performance, it's important to identify
  415.      the connection establishment and teardown procedures, as these must
  416.      not be included when measuring steady-state forwarding rates.
  417.      Further, forwarding rates must be measured only after any security
  418.      associations have been established.
  419.  
  420.      Though it seems paradoxical, connectionless protocols such as UDP
  421.      may also involve connections, at least for the purposes of firewall
  422.      performance measurement. For example, one host may send UDP packets
  423.      to another across a firewall. If the destination host is listening
  424.      on the correct UDP port, it receives the UDP packets. For the
  425.      purposes of firewall performance measurement, this is considered a
  426.      connection.
  427.  
  428.    Unit of measurement:
  429.      concurrent connections
  430.      connection
  431.      connection establishment time
  432.      maximum number of concurrent connections
  433.      connection teardown time
  434.  
  435.    Issues:
  436.      application proxy vs. stateful packet filtering
  437.      TCP/IP vs. ATM
  438.  
  439.      connection-oriented vs. connectionless
  440.  
  441.    See also:
  442.      data source
  443.      concurrent connections
  444.      connection establishment
  445.  
  446.  
  447.  
  448.  
  449.  
  450. Newman                       Informational                      [Page 8]
  451.  
  452. RFC 2647            Firewall Performance Terminology         August 1999
  453.  
  454.  
  455.      connection establishment time
  456.      connection teardown
  457.      connection teardown time
  458.  
  459. 3.8 Connection establishment
  460.  
  461.    Definition:
  462.      The data exchanged between hosts, or between a host and the
  463.      DUT/SUT, to initiate a connection.
  464.  
  465.    Discussion:
  466.      Connection-oriented protocols like TCP have a proscribed
  467.      handshaking procedure when launching a connection. When
  468.      benchmarking firewall performance, it is import to identify this
  469.      handshaking procedure so that it is not included in measurements of
  470.      bit forwarding rate or UOTs per second.
  471.  
  472.      Testers may also be interested in measurements of connection
  473.      establishment time through or with a given DUT/SUT.
  474.  
  475.    Unit of measurement:
  476.      not applicable
  477.  
  478.    See also:
  479.      connection
  480.      connection establishement time
  481.      connection maintenance
  482.      connection teardown
  483.  
  484.    Issues:
  485.      not applicable
  486.  
  487. 3.9 Connection establishment time
  488.  
  489.    Definition:
  490.      The length of time needed for two hosts, or a host and the DUT/SUT,
  491.      to agree to set up a connection using a known protocol.
  492.  
  493.    Discussion:
  494.      Each connection-oriented protocol has its own defined mechanisms
  495.      for setting up a connection. For purposes of benchmarking firewall
  496.      performance, this shall be the interval between receipt of the
  497.      first bit of the first octet of the packet carrying a connection
  498.      establishment request on a DUT/SUT interface until transmission of
  499.      the last bit of the last octet of the last packet of the connection
  500.      setup traffic headed in the opposite direction.
  501.  
  502.  
  503.  
  504.  
  505.  
  506. Newman                       Informational                      [Page 9]
  507.  
  508. RFC 2647            Firewall Performance Terminology         August 1999
  509.  
  510.  
  511.      This definition applies only to connection-oriented protocols such
  512.      as TCP. For connectionless protocols such as UDP, the notion of
  513.      connection establishment time is not meaningful.
  514.  
  515.    Unit of measurement:
  516.      Connection establishment time
  517.  
  518.    Issues:
  519.  
  520.    See also:
  521.      concurrent connections
  522.      connection
  523.      connection maintenance
  524.  
  525. 3.10 Connection maintenance
  526.  
  527.    Definition:
  528.      The data exchanged between hosts, or between a host and the
  529.      DUT/SUT, to ensure a connection is kept alive.
  530.  
  531.    Discussion:
  532.      Some implementations of TCP and other connection-oriented protocols
  533.      use "keep-alive" data to maintain a connection during periods where
  534.      no user data is exchanged.
  535.  
  536.      When benchmarking firewall performance, it is useful to identfy
  537.      connection maintenance traffic as distinct from UOTs per second.
  538.      Given that maintenance traffic may be characterized by short bursts
  539.      at periodical intervals, it may not be possible to describe a
  540.      steady-state forwarding rate for maintenance traffic. One possible
  541.      approach is to identify the quantity of maintenance traffic, in
  542.      bytes or bits, over a given interval, and divide through to derive
  543.      a measurement of maintenance traffic forwarding rate.
  544.  
  545.    Unit of measurement:
  546.      maintenance traffic
  547.      forwarding rate
  548.  
  549.    See also:
  550.      connection
  551.      connection establishment time
  552.      connection teardown
  553.      connection teardown time
  554.  
  555.    Issues:
  556.      not applicable
  557.  
  558.  
  559.  
  560.  
  561.  
  562. Newman                       Informational                     [Page 10]
  563.  
  564. RFC 2647            Firewall Performance Terminology         August 1999
  565.  
  566.  
  567. 3.11 Connection overhead
  568.  
  569.    Definition:
  570.      The degradation in bit forwarding rate, if any, observed as a
  571.      result of the addition of one connection between two hosts through
  572.      the DUT/SUT, or the addition of one connection from a host to the
  573.      DUT/SUT.
  574.  
  575.    Discussion:
  576.      The memory cost of connection establishment and maintenance is
  577.      highly implementation-specific. This metric is intended to describe
  578.      that cost in a method visible outside the firewall.
  579.  
  580.      It may also be desirable to invert this metric to show the
  581.      performance improvement as a result of tearing down one connection.
  582.  
  583.    Unit of measurement:
  584.      bit forwarding rate
  585.  
  586.    Issues:
  587.  
  588. 3.12 Connection teardown
  589.  
  590.    Definition:
  591.      The data exchanged between hosts, or between a host and the
  592.      DUT/SUT, to close a connection.
  593.  
  594.    Discussion:
  595.      Connection-oriented protocols like TCP follow a stated procedure
  596.      when ending a connection. When benchmarking firewall performance,
  597.      it is important to identify the teardown procedure so that it is
  598.      not included in measurements of bit forwarding rate or UOTs per
  599.      second.
  600.  
  601.      Testers may also be interested in measurements of connection
  602.      teardown time through or with a given DUT/SUT.
  603.  
  604.    Unit of measurement:
  605.      not applicable
  606.  
  607.    See also:
  608.      connection teardown time
  609.  
  610.    Issues:
  611.      not applicable
  612.  
  613.  
  614.  
  615.  
  616.  
  617.  
  618. Newman                       Informational                     [Page 11]
  619.  
  620. RFC 2647            Firewall Performance Terminology         August 1999
  621.  
  622.  
  623. 3.13 Connection teardown time
  624.  
  625.    Definition:
  626.      The length of time needed for two hosts, or a host and the DUT/SUT,
  627.      to agree to tear down a connection using a known protocol.
  628.  
  629.    Discussion:
  630.      Each connection-oriented protocol has its own defined mechanisms
  631.      for dropping a connection. For purposes of benchmarking firewall
  632.      performance, this shall be the interval between receipt of the
  633.      first bit of the first octet of the packet carrying a connection
  634.      teardown request on a DUT/SUT interface until transmission of the
  635.      last bit of the last octet of the last packet of the connection
  636.      teardown traffic headed in the opposite direction.
  637.  
  638.      This definition applies only to connection-oriented protocols such
  639.      as TCP. For connectionless protocols such as UDP, the notion of
  640.      connection teardown time is not meaningful.
  641.  
  642.    Unit of measurement:
  643.      Connection teardown time
  644.  
  645.    Issues:
  646.  
  647.    See also:
  648.      concurrent connections
  649.      connection
  650.      connection maintenance
  651.  
  652. 3.14 Data source
  653.  
  654.    Definition:
  655.      A host capable of generating traffic to the DUT/SUT.
  656.  
  657.    Discussion:
  658.      One data source may emulate multiple users or hosts. In addition,
  659.      one data source may offer traffic to multiple network interfaces on
  660.      the DUT/SUT.
  661.  
  662.      The term "data source" is deliberately independent of any number of
  663.      users. It is useful to think of data sources simply as traffic
  664.      generators, without any correlation to any given number of users.
  665.  
  666.    Unit of measurement:
  667.      not applicable
  668.  
  669.    Issues:
  670.      user
  671.  
  672.  
  673.  
  674. Newman                       Informational                     [Page 12]
  675.  
  676. RFC 2647            Firewall Performance Terminology         August 1999
  677.  
  678.  
  679.    See also:
  680.      connection
  681.      user
  682.  
  683. 3.15 Demilitarized zone
  684.  
  685.    Definition:
  686.      A network segment or segments located between protected and
  687.      unprotected networks.
  688.  
  689.    Discussion:
  690.      As an extra security measure, networks may be designed such that
  691.      protected and unprotected segments are never directly connected.
  692.      Instead, firewalls (and possibly public resources such as HTTP or
  693.      FTP servers) reside on a so-called DMZ network.
  694.  
  695.      DMZ networks are sometimes called perimeter networks.
  696.  
  697.    Unit of measurement:
  698.      not applicable
  699.  
  700.    Issues:
  701.      Homed
  702.  
  703.    See also:
  704.      protected network
  705.      unprotected network
  706.  
  707. 3.16 Firewall
  708.  
  709.    Definition:
  710.      A device or group of devices that enforces an access control policy
  711.      between networks.
  712.  
  713.    Discussion:
  714.      While there are many different ways to accomplish it, all firewalls
  715.      do the same thing: control access between networks.
  716.  
  717.      The most common configuration involves a firewall connecting two
  718.      segments (one protected and one unprotected), but this is not the
  719.      only possible configuration. Many firewalls support tri-homing,
  720.      allowing use of a DMZ network. It is possible for a firewall to
  721.      accommodate more than three interfaces, each attached to a
  722.      different network segment.
  723.  
  724.      The criteria by which access are controlled are not specified here.
  725.      Typically this has been done using network- or transport-layer
  726.      criteria (such as IP subnet or TCP port number), but there is no
  727.  
  728.  
  729.  
  730. Newman                       Informational                     [Page 13]
  731.  
  732. RFC 2647            Firewall Performance Terminology         August 1999
  733.  
  734.  
  735.      reason this must always be so. A growing number of firewalls are
  736.      controlling access at the application layer, using user
  737.      identification as the criterion. And firewalls for ATM networks may
  738.      control access based on data link-layer criteria.
  739.  
  740.    Unit of measurement:
  741.      not applicable
  742.  
  743.    Issues:
  744.  
  745.    See also:
  746.      DMZ
  747.      tri-homed
  748.      user
  749.  
  750. 3.17 Goodput
  751.  
  752.    Definition:
  753.      The number of bits per unit of time forwarded to the correct
  754.      destination interface of the DUT/SUT, minus any bits lost or
  755.      retransmitted.
  756.  
  757.    Discussion:
  758.      Firewalls are generally insensitive to packet loss in the network.
  759.      As such, measurements of gross bit forwarding rates are not
  760.      meaningful since (in the case of proxy-based and stateful packet
  761.      filtering firewalls) a receiving endpoint directly attached to a
  762.      DUT/SUT would not receive any data dropped by the DUT/SUT.
  763.  
  764.      The type of traffic lost or retransmitted is protocol-dependent.
  765.      TCP and ATM, for example, request different types  of
  766.      retransmissions.  Testers must observe retransmitted data for the
  767.      protocol in use, and subtract this quantity from measurements of
  768.      gross bit forwarding rate.
  769.  
  770.    Unit of measurement:
  771.      bits per second
  772.  
  773.    Issues:
  774.      allowed vs. rejected traffic
  775.  
  776.    See also:
  777.      allowed traffic
  778.      bit forwarding rate
  779.      rejected traffic
  780.  
  781.  
  782.  
  783.  
  784.  
  785.  
  786. Newman                       Informational                     [Page 14]
  787.  
  788. RFC 2647            Firewall Performance Terminology         August 1999
  789.  
  790.  
  791. 3.18 Homed
  792.  
  793.    Definition:
  794.      The number of logical interfaces a DUT/SUT contains.
  795.  
  796.    Discussion:
  797.      Firewalls typically contain at least two logical interfaces. In
  798.      network topologies where a DMZ is used, the firewall usually
  799.      contains at least three interfaces and is said to be tri-homed.
  800.      Additional interfaces would make a firewall quad-homed, quint-
  801.      homed, and so on.
  802.  
  803.      It is theoretically possible for a firewall to contain one physical
  804.      interface and multiple logical interfaces. This configuration is
  805.      discouraged for testing purposes because of the difficulty in
  806.      verifying that no leakage occurs between protected and unprotected
  807.      segments.
  808.  
  809.    Unit of measurement:
  810.      not applicable
  811.  
  812.    Issues:
  813.  
  814.    See also:
  815.      tri-homed
  816.  
  817. 3.19 Illegal traffic
  818.  
  819.    Definition:
  820.      Packets specified for rejection in the rule set of the DUT/SUT.
  821.  
  822.    Discussion:
  823.      A buggy or misconfigured firewall might forward packets even though
  824.      its rule set specifies that these packets be dropped. Illegal
  825.      traffic differs from rejected traffic in that it describes all
  826.      traffic specified for rejection by the rule set, while rejected
  827.      traffic specifies only those packets actually dropped by the
  828.      DUT/SUT.
  829.  
  830.    Unit of measurement:
  831.      not applicable
  832.  
  833.    Issues:
  834.  
  835.  
  836.  
  837.  
  838.  
  839.  
  840.  
  841.  
  842. Newman                       Informational                     [Page 15]
  843.  
  844. RFC 2647            Firewall Performance Terminology         August 1999
  845.  
  846.  
  847.    See also:
  848.      accepted traffic
  849.      policy
  850.      rejected traffic
  851.      rule set
  852.  
  853. 3.20 Logging
  854.  
  855.    Definition:
  856.      The recording of user requests made to the firewall.
  857.  
  858.    Discussion:
  859.      Firewalls typically log all requests they handle, both allowed and
  860.      rejected. For many firewall designs, logging requires a significant
  861.      amount of processing overhead, especially when complex rule sets
  862.      are in use.
  863.  
  864.      The type and amount of data logged varies by implementation.
  865.      Testers may find it desirable to log equivalent data when comparing
  866.      different DUT/SUTs.
  867.  
  868.      Some systems allow logging to take place on systems other than the
  869.      DUT/SUT.
  870.  
  871.    Unit of measurement:
  872.      not applicable
  873.  
  874.    Issues:
  875.      rule sets
  876.  
  877.    See also:
  878.      allowed traffic
  879.      connection
  880.      rejected traffic
  881.  
  882. 3.21 Network address translation
  883.  
  884.    Definition:
  885.      A method of mapping one or more private, reserved IP addresses to
  886.      one or more public IP addresses.
  887.  
  888.    Discussion:
  889.      In the interest of conserving the IPv4 address space, RFC 1918
  890.      proposed the use of certain private (reserved) blocks of IP
  891.      addresses. Connections to public networks are made by use of a
  892.      device that translates one or more RFC 1918 addresses to one or
  893.      more public addresses--a network address translator (NAT).
  894.  
  895.  
  896.  
  897.  
  898. Newman                       Informational                     [Page 16]
  899.  
  900. RFC 2647            Firewall Performance Terminology         August 1999
  901.  
  902.  
  903.      The use of private addressing also introduces a security benefit in
  904.      that RFC 1918 addresses are not visible to hosts on the public
  905.      Internet.
  906.  
  907.      Some NAT implementations are computationally intensive, and may
  908.      affect bit forwarding rate.
  909.  
  910.    Unit of measurement:
  911.      not applicable
  912.  
  913.    Issues:
  914.  
  915.    See also:
  916.  
  917. 3.22  Packet filtering
  918.  
  919.    Definition:
  920.      The process of controlling access by examining packets based on the
  921.      content of packet headers.
  922.  
  923.    Discussion:
  924.      Packet-filtering devices forward or deny packets based on
  925.      information in each packet's header, such as IP address or TCP port
  926.      number. A packet-filtering firewall uses a rule set to determine
  927.      which traffic should be forwarded and which should be blocked.
  928.  
  929.    Unit of measurement:
  930.      not applicable
  931.  
  932.    Issues:
  933.      static vs. stateful packet filtering
  934.  
  935.    See also:
  936.      application proxy
  937.      circuit proxy
  938.      proxy
  939.      rule set
  940.      stateful packet filtering
  941.  
  942. 3.23 Policy
  943.  
  944.    Definition:
  945.      A document defining acceptable access to protected, DMZ, and
  946.      unprotected networks.
  947.  
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954. Newman                       Informational                     [Page 17]
  955.  
  956. RFC 2647            Firewall Performance Terminology         August 1999
  957.  
  958.  
  959.    Discussion:
  960.      Security policies generally do not spell out specific
  961.      configurations for firewalls; rather, they set general guidelines
  962.      for what is and is not acceptable network access.
  963.  
  964.      The actual mechanism for controlling access is usually the rule set
  965.      implemented in the DUT/SUT.
  966.  
  967.    Unit of measurement:
  968.      not applicable
  969.  
  970.    Issues:
  971.  
  972.    See also:
  973.      rule set
  974.  
  975. 3.24 Protected network
  976.  
  977.    Definition:
  978.      A network segment or segments to which access is controlled by the
  979.      DUT/SUT.
  980.  
  981.    Discussion:
  982.      Firewalls are intended to prevent unauthorized access either to or
  983.      from the protected network. Depending on the configuration
  984.      specified by the policy and rule set, the DUT/SUT may allow hosts
  985.      on the protected segment to act as clients for servers on either
  986.      the DMZ or the unprotected network, or both.
  987.  
  988.      Protected networks are often called "internal networks." That term
  989.      is not used here because firewalls increasingly are deployed within
  990.      an organization, where all segments are by definition internal.
  991.  
  992.    Unit of measurement:
  993.  
  994.    not applicable
  995.  
  996.    Issues:
  997.  
  998.    See also:
  999.      demilitarized zone (DMZ)
  1000.      unprotected network
  1001.      policy
  1002.      rule set
  1003.      unprotected network
  1004.  
  1005.  
  1006.  
  1007.  
  1008.  
  1009.  
  1010. Newman                       Informational                     [Page 18]
  1011.  
  1012. RFC 2647            Firewall Performance Terminology         August 1999
  1013.  
  1014.  
  1015. 3.25 Proxy
  1016.  
  1017.    Definition:
  1018.      A request for a connection made on behalf of a host.
  1019.  
  1020.    Discussion:
  1021.      Proxy-based firewalls do not allow direct connections between
  1022.      hosts.  Instead, two connections are established: one between the
  1023.      client host and the DUT/SUT, and another between the DUT/SUT and
  1024.      server host.
  1025.  
  1026.      As with packet-filtering firewalls, proxy-based devices use a rule
  1027.      set to determine which traffic should be forwarded and which should
  1028.      be rejected.
  1029.  
  1030.      There are two types of proxies: application proxies and circuit
  1031.      proxies.
  1032.  
  1033.    Unit of measurement:
  1034.      not applicable
  1035.  
  1036.    Issues:
  1037.      application
  1038.  
  1039.    See also:
  1040.      application proxy
  1041.      circuit proxy
  1042.      packet filtering
  1043.      stateful packet filtering
  1044.  
  1045. 3.26 Rejected traffic
  1046.  
  1047.    Definition:
  1048.      Packets dropped as a result of the rule set of the DUT/SUT.
  1049.  
  1050.    Discussion:
  1051.      For purposes of benchmarking firewall performance, it is expected
  1052.      that firewalls will reject all traffic not explicitly permitted in
  1053.      the rule set. Dropped packets must not be included in calculating
  1054.      the bit forwarding rate or maximum bit forwarding rate of the
  1055.      DUT/SUT.
  1056.  
  1057.    Unit of measurement:
  1058.      not applicable
  1059.  
  1060.    Issues:
  1061.  
  1062.  
  1063.  
  1064.  
  1065.  
  1066. Newman                       Informational                     [Page 19]
  1067.  
  1068. RFC 2647            Firewall Performance Terminology         August 1999
  1069.  
  1070.  
  1071.    See also:
  1072.      allowed traffic
  1073.      illegal traffic
  1074.      policy
  1075.      rule set
  1076.  
  1077. 3.27 Rule set
  1078.  
  1079.    Definition:
  1080.      The collection of access control rules that determines which
  1081.      packets the DUT/SUT will forward and which it will reject.
  1082.  
  1083.    Discussion:
  1084.      Rule sets control access to and from the network interfaces of the
  1085.  
  1086.      DUT/SUT. By definition, rule sets do not apply equally to all
  1087.      network interfaces; otherwise there would be no need for the
  1088.      firewall. For benchmarking purposes, a specific rule set is
  1089.      typically applied to each network interface in the DUT/SUT.
  1090.  
  1091.      The tester must describe the complete contents of the rule set of
  1092.      each DUT/SUT.
  1093.  
  1094.      To ensure measurements reflect only traffic forwarded by the
  1095.      DUT/SUT, testers are encouraged to include a rule denying all
  1096.      access except for those packets allowed by the rule set.
  1097.  
  1098.    Unit of measurement:
  1099.      not applicable
  1100.  
  1101.    Issues:
  1102.  
  1103.    See also:
  1104.      allowed traffic
  1105.      demilitarized zone (DMZ)
  1106.      illegal traffic
  1107.      policy
  1108.      protected network
  1109.      rejected traffic
  1110.      unprotected network
  1111.  
  1112. 3.28 Security association
  1113.  
  1114.    Definition:
  1115.      The set of security information relating to a given network
  1116.      connection or set of connections.
  1117.  
  1118.  
  1119.  
  1120.  
  1121.  
  1122. Newman                       Informational                     [Page 20]
  1123.  
  1124. RFC 2647            Firewall Performance Terminology         August 1999
  1125.  
  1126.  
  1127.    Discussion:
  1128.      This definition covers the relationship between policy and
  1129.      connections. Security associations (SAs) are typically set up
  1130.      during connection establishment, and they may be reiterated or
  1131.      revoked during a connection.
  1132.  
  1133.      For purposes of benchmarking firewall performance, measurements of
  1134.      bit forwarding rate or UOTs per second must be taken after all
  1135.      security associations have been established.
  1136.  
  1137.    Unit of measurement:
  1138.      not applicable
  1139.  
  1140.    See also:
  1141.      connection
  1142.      connection establishment
  1143.      policy
  1144.      rule set
  1145.  
  1146. 3.29 Stateful packet filtering
  1147.  
  1148.    Definition:
  1149.      The process of forwarding or rejecting traffic based on the
  1150.      contents of a state table maintained by a firewall.
  1151.  
  1152.    Discussion:
  1153.      Packet filtering and proxy firewalls are essentially static, in
  1154.      that they always forward or reject packets based on the contents of
  1155.      the rule set.
  1156.  
  1157.      In contrast, devices using stateful packet filtering will only
  1158.      forward packets if they correspond with state information
  1159.      maintained by the device about each connection. For example, a
  1160.      stateful packet filtering device will reject a packet on port 20
  1161.      (ftp-data) if no connection has been established over the ftp
  1162.      control port (usually port 21).
  1163.  
  1164.    Unit of measurement:
  1165.      not applicable
  1166.  
  1167.    Issues:
  1168.  
  1169.    See also:
  1170.      applicaton proxy
  1171.      packet filtering
  1172.      proxy
  1173.  
  1174.  
  1175.  
  1176.  
  1177.  
  1178. Newman                       Informational                     [Page 21]
  1179.  
  1180. RFC 2647            Firewall Performance Terminology         August 1999
  1181.  
  1182.  
  1183. 3.30 Tri-homed
  1184.  
  1185.    Definition:
  1186.      A firewall with three network interfaces.
  1187.  
  1188.    Discussion:
  1189.      Tri-homed firewalls connect three network segments with different
  1190.      network addresses. Typically, these would be protected, DMZ, and
  1191.      unprotected segments.
  1192.  
  1193.      A tri-homed firewall may offer some security advantages over
  1194.      firewalls with two interfaces. An attacker on an unprotected
  1195.      network may compromise hosts on the DMZ but still not reach any
  1196.      hosts on the protected network.
  1197.  
  1198.    Unit of measurement:
  1199.      not applicable
  1200.  
  1201.    Issues:
  1202.      Usually the differentiator between one segment and another is its
  1203.      IP address. However, firewalls may connect different networks of
  1204.      other types, such as ATM or Netware segments.
  1205.  
  1206.    See also:
  1207.      homed
  1208.  
  1209. 3.31 Unit of transfer
  1210.  
  1211.    Definition:
  1212.      A discrete collection of bytes comprising at least one header and
  1213.      optional user data.
  1214.  
  1215.    Discussion:
  1216.      This metric is intended for use in describing steady-state
  1217.      forwarding rate of the DUT/SUT.
  1218.  
  1219.      The unit of transfer (UOT) definition is deliberately left open to
  1220.      interpretation, allowing the broadest possible application.
  1221.      Examples of UOTs include TCP segments, IP packets, Ethernet frames,
  1222.      and ATM cells.
  1223.  
  1224.      While the definition is deliberately broad, its interpretation must
  1225.      not be. The tester must describe what type of UOT will be offered
  1226.      to the DUT/SUT, and must offer these UOTs at a consistent rate.
  1227.      Traffic measurement must begin after all connection establishment
  1228.      routines complete and before any connection completion routine
  1229.      begins.  Further, measurements must begin after any security
  1230.      associations (SAs) are established and before any SA is revoked.
  1231.  
  1232.  
  1233.  
  1234. Newman                       Informational                     [Page 22]
  1235.  
  1236. RFC 2647            Firewall Performance Terminology         August 1999
  1237.  
  1238.  
  1239.      Testers also must compare only like UOTs. It is not appropriate,
  1240.      for example, to compare forwarding rates by offering 1,500-byte
  1241.      Ethernet UOTs to one DUT/SUT and 53-byte ATM cells to another.
  1242.  
  1243.    Unit of measurement:
  1244.      Units of transfer
  1245.      Units of transfer per second
  1246.  
  1247.    Issues:
  1248.  
  1249.    See also:
  1250.      bit forwarding rate
  1251.      connection
  1252.  
  1253. 3.32 Unprotected network
  1254.  
  1255.    Definition:
  1256.      A network segment or segments to which access is not controlled by
  1257.      the DUT/SUT.
  1258.  
  1259.    Discussion:
  1260.      Firewalls are deployed between protected and unprotected segments.
  1261.      The unprotected network is not protected by the DUT/SUT.
  1262.  
  1263.      Note that a DUT/SUT's policy may specify hosts on an unprotected
  1264.      network. For example, a user on a protected network may be
  1265.      permitted to access an FTP server on an unprotected network. But
  1266.      the DUT/SUT cannot control access between hosts on the unprotected
  1267.      network.
  1268.  
  1269.    Unit of measurement:
  1270.      not applicable
  1271.  
  1272.    Issues:
  1273.  
  1274.    See also:
  1275.      demilitarized zone (DMZ)
  1276.      policy
  1277.      protected network
  1278.      rule set
  1279.  
  1280. 3.33 User
  1281.  
  1282.    Definition:
  1283.      A person or process requesting access to resources protected by the
  1284.      DUT/SUT.
  1285.  
  1286.  
  1287.  
  1288.  
  1289.  
  1290. Newman                       Informational                     [Page 23]
  1291.  
  1292. RFC 2647            Firewall Performance Terminology         August 1999
  1293.  
  1294.  
  1295.    Discussion:
  1296.      "User" is a problematic term in the context of firewall performance
  1297.      testing, for several reasons. First, a user may in fact be a
  1298.      process or processes requesting services through the DUT/SUT.
  1299.      Second, different "user" requests may require radically different
  1300.      amounts of DUT/SUT resources. Third, traffic profiles vary widely
  1301.      from one organization to another, making it difficult to
  1302.      characterize the load offered by a typical user.
  1303.  
  1304.      For these reasons, testers should not attempt to measure DUT/SUT
  1305.      performance in terms of users supported. Instead, testers should
  1306.      describe performance in terms of maximum bit forwarding rate and
  1307.      maximum number of connections sustained. Further, testers should
  1308.      use the term "data source" rather than user to describe traffic
  1309.      generator(s).
  1310.  
  1311.    Unit of measurement:
  1312.      not applicable
  1313.  
  1314.    Issues:
  1315.  
  1316.    See also:
  1317.      data source
  1318.  
  1319. 4. Security Considerations
  1320.  
  1321.    The primary goal of this memo is to describe terms used in
  1322.    benchmarking firewall performance. However, readers should be aware
  1323.    that there is some overlap between performance and security issues.
  1324.    Specifically, the optimal configuration for firewall performance may
  1325.    not be the most secure, and vice-versa.
  1326.  
  1327.    Further, certain forms of attack may degrade performance. One common
  1328.    form of denial-of-service (DoS) attack bombards a firewall with so
  1329.    much rejected traffic that it cannot forward allowed traffic. DoS
  1330.    attacks do not always involve heavy loads; by definition, DoS
  1331.    describes any state in which a firewall is offered rejected traffic
  1332.    that prohibits it from forwarding some or all allowed traffic. Even a
  1333.    small amount of traffic may significantly degrade firewall
  1334.    performance, or stop the firewall altogether. Further, the safeguards
  1335.    in firewalls to guard against such attacks may have a significant
  1336.    negative impact on performance.
  1337.  
  1338.    Since the library of attacks is constantly expanding, no attempt is
  1339.    made here to define specific attacks that may affect performance.
  1340.    Nonetheless, any reasonable performance benchmark should take into
  1341.  
  1342.  
  1343.  
  1344.  
  1345.  
  1346. Newman                       Informational                     [Page 24]
  1347.  
  1348. RFC 2647            Firewall Performance Terminology         August 1999
  1349.  
  1350.  
  1351.    consideration safeguards against such attacks. Specifically, the same
  1352.    safeguards should be in place when comparing performance of different
  1353.    firewall implementations.
  1354.  
  1355. 5. References
  1356.  
  1357.    Bradner, S., Ed., "Benchmarking Terminology for Network
  1358.            Interconnection Devices", RFC 1242, July 1991.
  1359.  
  1360.    Bradner, S. and J. McQuaid, "Benchmarking Methodology for Network
  1361.            Interconnect Devices", RFC 2544, March 1999.
  1362.  
  1363.    Mandeville, R., "Benchmarking Terminology for LAN Switching Devices",
  1364.            RFC 2285, February 1998.
  1365.  
  1366.    Rekhter, Y., Moskowitz, B., Karrenberg, D., de Groot, G. and E. Lear,
  1367.            "Address Allocation for Private Internets", BCP 5, RFC 1918,
  1368.            February 1996.
  1369.  
  1370. 6. Acknowledgments
  1371.  
  1372.    The author wishes to thank the IETF Benchmarking Working Group for
  1373.    agreeing to review this document. Several other persons offered
  1374.    valuable contributions and critiques during this project: Ted Doty
  1375.    (Internet Security Systems), Kevin Dubray (Ironbridge Networks),
  1376.    Helen Holzbaur, Dale Lancaster, Robert Mandeville, Brent Melson
  1377.    (NSTL), Steve Platt (NSTL), Marcus Ranum (Network Flight Recorder),
  1378.    Greg Shannon, Christoph Schuba (Sun Microsystems), Rick Siebenaler,
  1379.    and Greg Smith (Check Point Software Technologies).
  1380.  
  1381. 7. Contact Information
  1382.  
  1383.    David Newman
  1384.    Data Communications magazine
  1385.    3 Park Ave.
  1386.    31st Floor
  1387.    New York, NY 10016
  1388.    USA
  1389.  
  1390.    Phone: 212-592-8256
  1391.    Fax:   212-592-8265
  1392.    EMail: dnewman@data.com
  1393.  
  1394.  
  1395.  
  1396.  
  1397.  
  1398.  
  1399.  
  1400.  
  1401.  
  1402. Newman                       Informational                     [Page 25]
  1403.  
  1404. RFC 2647            Firewall Performance Terminology         August 1999
  1405.  
  1406.  
  1407. 8.  Full Copyright Statement
  1408.  
  1409.    Copyright (C) The Internet Society (1999).  All Rights Reserved.
  1410.  
  1411.    This document and translations of it may be copied and furnished to
  1412.    others, and derivative works that comment on or otherwise explain it
  1413.    or assist in its implementation may be prepared, copied, published
  1414.    and distributed, in whole or in part, without restriction of any
  1415.    kind, provided that the above copyright notice and this paragraph are
  1416.    included on all such copies and derivative works.  However, this
  1417.    document itself may not be modified in any way, such as by removing
  1418.    the copyright notice or references to the Internet Society or other
  1419.    Internet organizations, except as needed for the purpose of
  1420.    developing Internet standards in which case the procedures for
  1421.    copyrights defined in the Internet Standards process must be
  1422.    followed, or as required to translate it into languages other than
  1423.    English.
  1424.  
  1425.    The limited permissions granted above are perpetual and will not be
  1426.    revoked by the Internet Society or its successors or assigns.
  1427.  
  1428.    This document and the information contained herein is provided on an
  1429.    "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
  1430.    TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
  1431.    BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
  1432.    HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
  1433.    MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
  1434.  
  1435. Acknowledgement
  1436.  
  1437.    Funding for the RFC Editor function is currently provided by the
  1438.    Internet Society.
  1439.  
  1440.  
  1441.  
  1442.  
  1443.  
  1444.  
  1445.  
  1446.  
  1447.  
  1448.  
  1449.  
  1450.  
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456.  
  1457.  
  1458. Newman                       Informational                     [Page 26]
  1459.  
  1460.