draft-ietf-bmwg-ipv6-meth-01.txt   draft-ietf-bmwg-ipv6-meth-02.txt 
Network Working Group C. Popoviciu Network Working Group C. Popoviciu
Internet-Draft A. Hamza Internet-Draft A. Hamza
Expires: July 5, 2007 G. Van de Velde Expires: January 3, 2008 G. Van de Velde
Cisco Systems Cisco Systems
D. Dugatkin D. Dugatkin
IXIA IXIA
January 2007 July 2, 2007
IPv6 Benchmarking Methodology IPv6 Benchmarking Methodology
<draft-ietf-bmwg-ipv6-meth-01.txt> <draft-ietf-bmwg-ipv6-meth-02.txt>
Status of this Memo Status of this Memo
By submitting this Internet-Draft, each author represents that any By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware 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 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. aware will be disclosed, in accordance with Section 6 of BCP 79.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
skipping to change at page 1, line 37 skipping to change at page 1, line 37
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on July 5, 2007. This Internet-Draft will expire on January 3, 2008.
Copyright Notice Copyright Notice
Copyright (C) The IETF Trust (2007). Copyright (C) The IETF Trust (2007).
Abstract Abstract
The Benchmarking Methodologies defined in RFC2544 [2] are IP version The Benchmarking Methodologies defined in RFC2544 [8] are IP version
independent however, they do not address some of the specificities of independent however, they do not address some of the specificities of
IPv6. This document provides additional benchmarking guidelines IPv6. This document provides additional benchmarking guidelines
which in conjunction with RFC2544 lead to a more complete and which in conjunction with RFC2544 lead to a more complete and
realistic evaluation of the IPv6 performance of network elements. realistic evaluation of the IPv6 performance of network elements.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Existing Definitions . . . . . . . . . . . . . . . . . . . . . 3 2. Existing Definitions . . . . . . . . . . . . . . . . . . . . . 3
3. Tests and Results Evaluation . . . . . . . . . . . . . . . . . 3 3. Tests and Results Evaluation . . . . . . . . . . . . . . . . . 3
4. Test Environment Set Up . . . . . . . . . . . . . . . . . . . 4 4. Test Environment Set Up . . . . . . . . . . . . . . . . . . . 4
5. Test Traffic . . . . . . . . . . . . . . . . . . . . . . . . . 4 5. Test Traffic . . . . . . . . . . . . . . . . . . . . . . . . . 4
5.1. Frame Formats and Sizes . . . . . . . . . . . . . . . . . 4 5.1. Frame Formats and Sizes . . . . . . . . . . . . . . . . . 4
5.1.1. Frame Sizes to be used on Ethernet . . . . . . . . . . 5 5.1.1. Frame Sizes to be used on Ethernet . . . . . . . . . . 5
5.1.2. Frame Sizes to be used on SONET . . . . . . . . . . . 5 5.1.2. Frame Sizes to be used on SONET . . . . . . . . . . . 5
5.2. Protocol Addresses Selection . . . . . . . . . . . . . . . 5 5.2. Protocol Addresses Selection . . . . . . . . . . . . . . . 5
5.2.1. DUT Protocol Addresses . . . . . . . . . . . . . . . . 5 5.2.1. DUT Protocol Addresses . . . . . . . . . . . . . . . . 6
5.2.2. Test Traffic Protocol Addresses . . . . . . . . . . . 6 5.2.2. Test Traffic Protocol Addresses . . . . . . . . . . . 7
5.3. Traffic with Extension Headers . . . . . . . . . . . . . . 7 5.3. Traffic with Extension Headers . . . . . . . . . . . . . . 7
5.4. Traffic set up . . . . . . . . . . . . . . . . . . . . . . 8 5.4. Traffic set up . . . . . . . . . . . . . . . . . . . . . . 9
6. Modifiers . . . . . . . . . . . . . . . . . . . . . . . . . . 9 6. Modifiers . . . . . . . . . . . . . . . . . . . . . . . . . . 9
6.1. Management and Routing Traffic . . . . . . . . . . . . . . 9 6.1. Management and Routing Traffic . . . . . . . . . . . . . . 9
6.2. Filters . . . . . . . . . . . . . . . . . . . . . . . . . 9 6.2. Filters . . . . . . . . . . . . . . . . . . . . . . . . . 9
6.2.1. Filter Format . . . . . . . . . . . . . . . . . . . . 9 6.2.1. Filter Format . . . . . . . . . . . . . . . . . . . . 9
6.2.2. Filter Types . . . . . . . . . . . . . . . . . . . . . 10 6.2.2. Filter Types . . . . . . . . . . . . . . . . . . . . . 10
7. Benchmarking Tests . . . . . . . . . . . . . . . . . . . . . . 11 7. Benchmarking Tests . . . . . . . . . . . . . . . . . . . . . . 11
7.1. Throughput . . . . . . . . . . . . . . . . . . . . . . . . 12 7.1. Throughput . . . . . . . . . . . . . . . . . . . . . . . . 12
7.2. Latency . . . . . . . . . . . . . . . . . . . . . . . . . 12 7.2. Latency . . . . . . . . . . . . . . . . . . . . . . . . . 12
7.3. Frame Loss . . . . . . . . . . . . . . . . . . . . . . . . 12 7.3. Frame Loss . . . . . . . . . . . . . . . . . . . . . . . . 12
7.4. Back-to-Back Frames . . . . . . . . . . . . . . . . . . . 12 7.4. Back-to-Back Frames . . . . . . . . . . . . . . . . . . . 13
7.5. System Recovery . . . . . . . . . . . . . . . . . . . . . 12 7.5. System Recovery . . . . . . . . . . . . . . . . . . . . . 13
7.6. Reset . . . . . . . . . . . . . . . . . . . . . . . . . . 13 7.6. Reset . . . . . . . . . . . . . . . . . . . . . . . . . . 13
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13
9. Security Considerations . . . . . . . . . . . . . . . . . . . 13 9. Security Considerations . . . . . . . . . . . . . . . . . . . 13
10. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . 14 10. Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . 14
11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 14 11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 14
12. References . . . . . . . . . . . . . . . . . . . . . . . . . . 14 12. References . . . . . . . . . . . . . . . . . . . . . . . . . . 15
12.1. Normative References . . . . . . . . . . . . . . . . . . . 14 12.1. Normative References . . . . . . . . . . . . . . . . . . . 15
12.2. Informative References . . . . . . . . . . . . . . . . . . 14 12.2. Informative References . . . . . . . . . . . . . . . . . . 15
Appendix A. Maximum Frame Rates Reference . . . . . . . . . . . . 15 Appendix A. Theoretical Maximum Frame Rates Reference . . . . . . 15
A.1. Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . 15 A.1. Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . 15
A.2. Packet over SONET . . . . . . . . . . . . . . . . . . . . 16 A.2. Packet over SONET . . . . . . . . . . . . . . . . . . . . 16
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 16 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 17
Intellectual Property and Copyright Statements . . . . . . . . . . 18 Intellectual Property and Copyright Statements . . . . . . . . . . 19
1. Introduction 1. Introduction
The benchmarking methodologies defined by RFC2544 [2] are proving to The benchmarking methodologies defined by RFC2544 [8] are proving to
be very useful in consistently evaluating IPv4 forwarding performance be useful in consistently evaluating IPv4 forwarding performance of
of network elements. Adherence to these testing and result analysis network elements. Adherence to these testing and result analysis
procedures facilitates objective comparison of IPv4 performance data procedures facilitates objective comparison of IPv4 performance data
measured on various products and by various individuals. While the measured on various products and by various individuals. While the
principles behind the methodologies introduced in RFC2544 are largely principles behind the methodologies introduced in RFC2544 are largely
IP version independent, the protocol continued to evolve, IP version independent, the protocol continued to evolve,
particularly in its version 6 (IPv6). particularly in its version 6 (IPv6).
This document provides benchmarking methodology recommendations that This document provides benchmarking methodology recommendations that
address IPv6 specific aspects such as evaluating the forwarding address IPv6 specific aspects such as evaluating the forwarding
performance of traffic containing extension headers as defined in performance of traffic containing extension headers as defined in
RFC2460 [5]. These recommendations are defined within the RFC2544 RFC2460 [2]. These recommendations are defined within the RFC2544
framework and are meant to complement the test and result analysis framework and are meant to complement the test and result analysis
procedures as described in RFC2544 and not to replace them. procedures as described in RFC2544 and not replace them.
The terms used in this document remain consistent with those defined The terms used in this document remain consistent with those defined
in "Benchmarking Terminology for Network Interconnect Devices" [3]. in "Benchmarking Terminology for Network Interconnect Devices" [6].
This terminology SHOULD be consulted before using or applying the This terminology SHOULD be consulted before using or applying the
recommendations of this document. recommendations of this document.
Any methodology aspects not covered in this document SHOULD be Any methodology aspects not covered in this document SHOULD be
assumed to be treated based on the RFC2544 recommendations. assumed to be treated based on the RFC2544 recommendations.
2. Existing Definitions 2. Existing Definitions
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
skipping to change at page 4, line 28 skipping to change at page 4, line 28
in understanding traffic processing by each DUT and the resources in understanding traffic processing by each DUT and the resources
that must be allocated for IPv6. It could reveal if the IPv6 traffic that must be allocated for IPv6. It could reveal if the IPv6 traffic
is processed in hardware, by applicable devices, under all test is processed in hardware, by applicable devices, under all test
conditions or it is punted in the software switched path. If such conditions or it is punted in the software switched path. If such
data is considered of interest, it MUST be collected out of band and data is considered of interest, it MUST be collected out of band and
independent of any management data that might be recommended to be independent of any management data that might be recommended to be
collected through the interfaces forwarding the test traffic. collected through the interfaces forwarding the test traffic.
Note: During testing, either static or dynamic options for neighbor Note: During testing, either static or dynamic options for neighbor
discovery can be used. The static option can be used as long as it discovery can be used. The static option can be used as long as it
is supported by the test tool. The dynamic option is preferred if is supported by the test tool. The dynamic option is preferred
the test tool interacts with the DUT for the duration of the test to wherein the test tool interacts with the DUT for the duration of the
maintain the respective neighbor caches in an active state. The test test to maintain the respective neighbor caches in an active state.
scenarios assume the test traffic simulated end points and the IPv6 To avoid neighbor solicitation (NS) and neighbor advertisement (NA)
source and destination addresses are not directly attached to the storms due to the neighbor unreachability detection (NUD) mechanism
DUT, but are seen as one hop beyond, to avoid Neighbor Solicitation [3], the test scenarios assume the test traffic simulates end points
(NS) and Neighbor Advertisement (NA) storms due to the Neighbor and the IPv6 source and destination addresses are one hop beyond the
Unreachability Detection (NUD) mechanism [6]. DUT.
5. Test Traffic 5. Test Traffic
The traffic used for all tests described in this document SHOULD meet The traffic used for all tests described in this document SHOULD meet
the requirements described in this section. These requirements are the requirements described in this section. These requirements are
designed to reflect the characteristics of IPv6 unicast traffic in designed to reflect the characteristics of IPv6 unicast traffic in
all its aspects. Using the recommended IPv6 traffic profile leads to all its aspects. Using the recommended IPv6 traffic profile leads to
a complete evaluation of the network element performance. a complete evaluation of the network element performance.
5.1. Frame Formats and Sizes 5.1. Frame Formats and Sizes
Two types of media are commonly deployed and SHOULD be tested: Two types of media are commonly deployed and each SHOULD be tested if
Ethernet and SONET. This section identifies the frame sizes that the network element supports that type of media: Ethernet and SONET.
SHOULD be used for each media type. Refer to recommendations in This section identifies the frame sizes that SHOULD be used for each
RFC2544 for all other media types. media type. Refer to recommendations in RFC2544 for all other media
types.
Similar to IPv4, small frame sizes help characterize the per-frame Similar to IPv4, small frame sizes help characterize the per-frame
processing overhead of the DUT. Note that the minimum IPv6 packet processing overhead of the DUT. Note that the minimum IPv6 packet
size (40 bytes) is larger than that of an IPv4 packet (20 bytes). size (40 bytes) is larger than that of an IPv4 packet (20 bytes).
Tests should compensate for this difference. Tests should compensate for this difference.
The frame sizes listed for IPv6 include the extension headers used in The frame sizes listed for IPv6 include the extension headers used in
testing (see section 4.3). By definition, extension headers are part testing (see section 4.3). By definition, extension headers are part
of the IPv6 packet payload. Depending on the total length of the of the IPv6 packet payload. Depending on the total length of the
extension headers, their use might not be possible at the smallest extension headers, their use might not be possible at the smallest
frame sizes. frame sizes.
Note: Test tools are commonly using signatures to identify test
traffic packets to verify that there are no packet drops, out of
order packets or to calculate various statistics such as delay and
jitter. This could be the reason why the minimum frame size
selectable through the test tool might not be as low as the
theoretical one presented in this document.
5.1.1. Frame Sizes to be used on Ethernet 5.1.1. Frame Sizes to be used on Ethernet
Ethernet in all its types has become the most commonly deployed Ethernet in all its types has become the most commonly deployed
interface in today's networks. The following frame sizes SHOULD be interface in today's networks. The following frame sizes SHOULD be
used for benchmarking over this media type: 64, 128, 256, 512, 1024, used for benchmarking over this media type: 64, 128, 256, 512, 1024,
1280, 1518 bytes. The 4096, 8192, 9216 bytes long jumbo frame sizes 1280, 1518 bytes. Tests with jumbo frames SHOULD be executed. Frame
SHOULD be used when benchmarking Gigabit Ethernet interfaces. The sizes should be selected based on the values supported by the device
maximum frame rates for each frame size and the various Ethernet under test due to the absence of a common standard defining the jumbo
interface types are provided in Appendix A. frame sizes. Examples of common jumbo frame sizes are: 4096, 8192,
9216 bytes. The maximum frame rates for each frame size and the
various Ethernet interface types are provided in Appendix A.
5.1.2. Frame Sizes to be used on SONET 5.1.2. Frame Sizes to be used on SONET
Packet over SONET (PoS) interfaces are commonly used for edge uplinks Packet over SONET (PoS) interfaces are commonly used for edge uplinks
and high bandwidth core links. Evaluating the forwarding performance and high bandwidth core links. Evaluating the forwarding performance
of PoS interfaces supported by the DUT is recommended. The following of PoS interfaces supported by the DUT is recommended. The following
frame sizes SHOULD be used for this media type: 64, 128, 256, 512, frame sizes SHOULD be used for this media type: 53, 64, 128, 256,
1024, 1280, 1518, 2048, 4096 bytes. The maximum frame rates for each 512, 1024, 1280, 1518, 2048, 4096 bytes. The maximum frame rates for
frame size and the various PoS interface types are provided in each frame size and the various PoS interface types are provided in
Appendix A. Appendix A.
5.2. Protocol Addresses Selection 5.2. Protocol Addresses Selection
There are two aspects of IPv6 benchmarking testing where IP address There are two aspects of IPv6 benchmarking testing where IP address
selection considerations MUST be analyzed: The selection of IP selection considerations MUST be analyzed: The selection of IP
addresses for the DUT and the selection of addresses for the test addresses for the DUT and the selection of addresses for the test
traffic. traffic.
5.2.1. DUT Protocol Addresses 5.2.1. DUT Protocol Addresses
IANA reserved the IPv6 address block xxxxx/48 for use with IPv6 IANA reserved the IPv6 address block xxxxx/48 for use with IPv6
benchmark testing. These addresses MUST not be assumed to be benchmark testing. These addresses MUST be assumed to be not
routable on the Internet and MUST not be used as Internet source or routable on the Internet and MUST not be used as Internet source or
destination addresses. destination addresses.
Note to IANA: Replace "xxxxx" with assigned prefix.
Similar to RFC2544, Appendix C, addresses from the first half of this Similar to RFC2544, Appendix C, addresses from the first half of this
range SHOULD be used for the ports viewed as input and addresses from range SHOULD be used for the ports viewed as input and addresses from
the other half of the range for the output ports. the other half of the range for the output ports.
The prefix length of the IPv6 addresses configured on the DUT The prefix length of the IPv6 addresses configured on the DUT
interfaces MUST fall into either one of the following: interfaces MUST fall into either one of the following:
o Prefix length is /126 which would simulate a point-to-point link o Prefix length is /126 which would simulate a point-to-point link
for a core router. for a core router.
o Prefix length is smaller or equal to /64. o Prefix length is smaller or equal to /64.
No prefix lengths SHOULD be selected in the range between 64 and 128 No prefix lengths SHOULD be selected in the range between 64 and 128
except the 126 value mentioned above. except the 126 value mentioned above.
Note that /126 prefixes might not be always the best choice for Note that /126 prefixes might not be always the best choice for
addressing point-to-point links such as back-to-back Ethernet unless addressing point-to-point links such as back-to-back Ethernet unless
the autoprovisioning mechanism is disabled. Also, not all network the autoprovisioning mechanism is disabled. Also, not all network
elements support this type of addresses. elements support addresses of this prefix length.
While with IPv6, the DUT interfaces can be configured with multiple While with IPv6, the DUT interfaces can be configured with multiple
global unicast addresses, the methodology described in this document global unicast addresses, the methodology described in this document
does not require testing such a scenario. It is not expected that does not require testing such a scenario. It is not expected that
such an evaluation would bring additional data with respect to the such an evaluation would bring additional data with respect to the
performance of the network element. performance of the network element.
The Interface ID portion of the global unicast IPv6 DUT addresses The Interface ID portion of global unicast IPv6 DUT addresses SHOULD
SHOULD be set to ::1. There are no requirements in the selection of be set to ::1. There are no requirements in the selection of the
the Interface ID portion of the link local IPv6 addresses. Interface ID portion of the link local IPv6 addresses.
It is recommended that multiple iterations of the benchmark tests be It is recommended that multiple iterations of the benchmark tests be
conducted using the following lengths: 32, 48, 64, 126 and 128 for conducted using the following prefix lengths: 48, 64, 126 and 128 for
the advertised traffic destination prefix. Other prefix lengths can the advertised traffic destination prefix. Other prefix lengths can
also be used if desired, however the indicated range should be be used. However the indicated range reflects major prefix
sufficient to establish baseline performance metrics. boundaries expected to be present in IPv6 routing tables and they
should be representative to establish baseline performance metrics.
5.2.2. Test Traffic Protocol Addresses 5.2.2. Test Traffic Protocol Addresses
The IPv6 source and destination addresses for the test streams SHOULD The IPv6 source and destination addresses for the test streams SHOULD
belong to the IPv6 range assigned by IANA as discussed in section belong to the IPv6 range assigned by IANA as discussed in section
4.2.1. The source addresses SHOULD belong to one half of the range 5.2.1. The source addresses SHOULD belong to one half of the range
and the destination addresses to the other, reflecting the DUT and the destination addresses to the other, reflecting the DUT
interface IPv6 address selection. interface IPv6 address selection.
Tests SHOULD first be executed with a single stream leveraging a Tests SHOULD first be executed with a single stream leveraging a
single source-destination address pair. The tests SHOULD then be single source-destination address pair. The tests SHOULD then be
repeated with traffic using a random destination address in the repeated with traffic using a random destination address in the
corresponding range. If the network element prefix lookup corresponding range. If the network element prefix lookup
capabilities are evaluated, the tests SHOULD focus on the IPv6 capabilities are evaluated, the tests SHOULD focus on the IPv6
relevant prefix boundaries: 0-64, 126 and 128. relevant prefix boundaries: 0-64, 126 and 128.
Special care needs to be taken about the Neighbor Unreachability Special care needs to be taken about the neighbor unreachability
Detection (NUD) [6] process. The IPv6 prefix reachable time in the detection (NUD) [3] process. The IPv6 prefix reachable time in the
router advertisement SHOULD be set to 30 seconds and allow 50% router advertisement SHOULD be set to 30 seconds and allow 50%
jitter. The IPv6 source and destination addresses SHOULD not appear jitter. The IPv6 source and destination addresses SHOULD not appear
to be directly connected to the DUT to avoid Neighbor Solicitation to be directly connected to the DUT to avoid neighbor solicitation
(NS) and Neighbor Advertisement (NA) storms due to multiple test (NS) and neighbor advertisement (NA) storms due to multiple test
traffic flows. traffic flows.
5.3. Traffic with Extension Headers 5.3. Traffic with Extension Headers
Extension headers are an intrinsic part of the IPv6 architecture [5]. Extension headers are an intrinsic part of the IPv6 architecture [2].
They are used with various types of practical traffic such as: They are used with various types of practical traffic such as:
Fragmented traffic, mobile IP based traffic, authenticated and fragmented traffic, mobile IP based traffic, authenticated and
encrypted traffic. For these reasons, all tests described in this encrypted traffic. For these reasons, all tests described in this
document SHOULD be performed with both traffic that has no extension document SHOULD be performed with both traffic that has no extension
headers and traffic that has a set of extension headers. They can be headers and traffic that has a set of extension headers. They can be
selected from the following list [5] which reflects the recommended selected from the following list [2] which reflects the recommended
order of multiple extension headers in a packet: order of multiple extension headers in a packet:
o Hop-by-hop header o Hop-by-hop header
o Destination options header o Destination options header
o Routing header o Routing header
o Fragment header o Fragment header
o Authentication header o Authentication header
o Encapsulating Security Payload header o Encapsulating Security Payload header
o Destination options header o Destination options header
o Mobility header o Mobility header
Considering the fact that extension headers are an intrinsic part of Considering that extension headers are an intrinsic part of the
the protocol and that they fulfill different roles, benchmarking of protocol and that they fulfill different roles, benchmarking of
traffic containing each extension header SHOULD be executed traffic containing each extension header SHOULD be executed
individually. individually.
The special processing rules for the Hop-by-hop extension header The special processing rules for the Hop-by-hop extension header
require a specific benchmarking approach. Unlike the other extension require a specific benchmarking approach. Unlike the other extension
headers, this header must be processed by each node that forwards the headers, this header must be processed by each node that forwards the
traffic. Tests with traffic containing this extension headers type traffic. Tests with traffic containing these extension header types
will not measure the forwarding performance of the DUT but rather its will not measure the forwarding performance of the DUT but rather its
extension headers processing ability which is dependent on the extension header processing capability, which is dependent on the
information contained in the extension headers. The concern is that information contained in the extension headers. The concern is that
this traffic, at high rates, could have a negative impact on the this traffic, at high rates, could have a negative impact on the
operational resources of the router and could be used as a security operational resources of the router and could be used as a security
threat. When benchmarking with traffic that contains the Hop-by-hop threat. When benchmarking with traffic that contains the Hop-by-hop
extension header, the goal is not to measure throughput [2] as in the extension header, the goal is not to measure throughput [8] as in the
case of the other extension headers but rather to evaluate the impact case of the other extension headers but rather to evaluate the impact
of such traffic on the router. In this case, traffic with the Hop- of such traffic on the router. In this case, traffic with the Hop-
by-hop extension headers should be sent at 1%, 10% and 50% of the by-hop extension headers should be sent at 1%, 10% and 50% of the
interface total bandwidth. Device resources must be monitored at interface total bandwidth. Device resources must be monitored at
each traffic rate to determine the impact. each traffic rate to determine the impact.
The tests with traffic containing each individual extension header The tests with traffic containing each individual extension header
MUST be complemented with tests that contain a chain of two or more MUST be complemented with tests containing a chain of two or more
extension headers (the chain MUST not contain the Hop-by-hop extension headers (the chain MUST not contain the Hop-by-hop
extension header). The chain should also exclude the ESP extension extension header). The chain should also exclude the ESP [5]
header since traffic with an encrypted payload can not be used in extension header since traffic with an encrypted payload can not be
tests with modifiers such as filters based on upper layer information used in tests with modifiers such as filters based on upper layer
(see Section 5). Since the DUT is not analyzing the content of the information (see Section 5). Since the DUT is not analyzing the
extension headers, any combination of extension headers can be used content of the extension headers, any combination of extension
in testing. The extension headers chain recommended to be used in headers can be used in testing. The extension header chain
testing is: recommended to be used in testing is:
o Routing header - 24-32 bytes o Routing header - 24-32 bytes
o Destination options header - 8 bytes o Destination options header - 8 bytes
o Fragment header - 8 bytes o Fragment header - 8 bytes
This is a real life extension headers chain that would be found in an This is a real life extension header chain that would be found in an
IPv6 packet between two mobile nodes exchanged over an optimized path IPv6 packet between two mobile nodes exchanged over an optimized path
that requires fragmentation. The listed extension headers lengths that requires fragmentation. The listed extension headers lengths
represent test tool defaults. The total length of the extension represent test tool defaults. The total length of the extension
headers chain SHOULD be larger than 32 bytes. header chain SHOULD be larger than 32 bytes.
Extension headers add extra bytes to the payload size of the IP Extension headers add extra bytes to the payload size of the IP
packets which MUST be factored in when used in testing at low frame packets which MUST be factored in when used in testing at low frame
sizes. Their presence will modify the minimum packet size used in sizes. Their presence will modify the minimum packet size used in
testing. For direct comparison between the data obtained with testing. For direct comparison between the data obtained with
traffic that has extension headers and with traffic that doesn't have traffic that has extension headers and with traffic that doesn't have
them, at low frame size, a common bottom size SHOULD be selected for them at low frame size, a common value SHOULD be selected for the
both types of traffic. smallest frame size both types of traffic.
For the most cases, the network elements ignore the extension headers For most cases, the network elements ignore the extension headers
when forwarding IPv6 traffic. For these reasons it is most likely when forwarding IPv6 traffic. For these reasons it is likely that
that the extension headers related performance impact will be the extension headers related performance impact will be observed
observed only when testing the DUT with traffic filters that contain only when testing the DUT with traffic filters that contain matching
matching conditions for the upper layer protocol information. In conditions for the upper layer protocol information. In those cases,
those cases, the DUT MUST traverse the chain of extension headers, a the DUT MUST traverse the chain of extension headers, a process that
process that could impact performance. could impact performance.
5.4. Traffic set up 5.4. Traffic set up
All tests recommended in this document SHOULD be performed with bi- All tests recommended in this document SHOULD be performed with bi-
directional traffic. For asymmetric situations, tests MAY be directional traffic. For asymmetric situations, tests MAY be
performed with unidirectional traffic for a more granular performed with unidirectional traffic for a more granular
characterization of the DUT performance. In these cases, the characterization of the DUT performance. In these cases, the
bidirectional traffic testing would reveal only the lowest bidirectional traffic testing would reveal only the lowest
performance between the two directions. performance between the two directions.
skipping to change at page 9, line 32 skipping to change at page 9, line 48
The filters defined in Section 11.4 of RFC2544 apply to IPv6 The filters defined in Section 11.4 of RFC2544 apply to IPv6
benchmarking as well. The filter definitions however must be benchmarking as well. The filter definitions however must be
expanded to include upper layer protocol information matching in expanded to include upper layer protocol information matching in
order to analyze the handling of traffic with extension headers which order to analyze the handling of traffic with extension headers which
are an important architectural component of IPv6. are an important architectural component of IPv6.
6.2.1. Filter Format 6.2.1. Filter Format
The filter format defined in RFC2544 is applicable to IPv6 as well The filter format defined in RFC2544 is applicable to IPv6 as well
except that the Source Addresses (SA) and Destination Addresses (DA) except that the source addresses (SA) and destination addresses (DA)
are IPv6. In addition to these basic filters, the evaluation of IPv6 are IPv6. In addition to these basic filters, the evaluation of IPv6
performance SHOULD analyze the correct filtering and handling of performance SHOULD analyze the correct filtering and handling of
traffic with extension headers. traffic with extension headers.
While the intent is not to evaluate a platform's capability to While the intent is not to evaluate a platform's capability to
process the various extension header types, the goal is to measure process the various extension header types, the goal is to measure
performance impact when the network element must parse through the performance impact when the network element must parse through the
extension headers in order to reach upper layer information. In extension headers in order to reach upper layer information. In
IPv6, routers do not have to parse through the extension headers IPv6, routers do not have to parse through the extension headers
(other than Hop-by-hop) unless, for example, the upper layer (other than Hop-by-hop) unless, for example, the upper layer
skipping to change at page 10, line 4 skipping to change at page 10, line 21
(other than Hop-by-hop) unless, for example, the upper layer (other than Hop-by-hop) unless, for example, the upper layer
information has to be analyzed due to filters. information has to be analyzed due to filters.
For these reasons, to evaluate the network element handling of IPv6 For these reasons, to evaluate the network element handling of IPv6
traffic with extension headers, the definition of the filters must be traffic with extension headers, the definition of the filters must be
extended to include conditions applied to upper layer protocol extended to include conditions applied to upper layer protocol
information. The following filter format SHOULD be used for this information. The following filter format SHOULD be used for this
type of evaluation: type of evaluation:
[permit|deny] [protocol] [SA] [DA] [permit|deny] [protocol] [SA] [DA]
where permit or deny indicates the action to allow or deny a packet where permit or deny indicates the action to allow or deny a packet
through the interface the filter is applied to. The Protocol field through the interface the filter is applied to. The protocol field
is defined as: is defined as:
o ipv6: any IP Version 6 traffic o ipv6: any IP Version 6 traffic
o tcp: Transmission Control Protocol o tcp: Transmission Control Protocol
o udp: User Datagram Protocol o udp: User Datagram Protocol
and SA stands for the Source Address and DA for the Destination and SA stands for the source address and DA for the destination
Address. address. The upper layer protocols listed above are recommended
selection, however they do not represent an all-inclusive list of
upper layer protocols which could be used in defining filters.
6.2.2. Filter Types 6.2.2. Filter Types
Based on the RFC2544 recommendations, two types of tests are executed Based on the RFC2544 recommendations, two types of tests are executed
when evaluating performance in the presence of modifiers. One with a when evaluating performance in the presence of modifiers. One with a
single filter and one with 25 filters. The recommended filters are single filter and one with 25 filters. The recommended filters are
exemplified with the help of the IPv6 documentation prefix [9] 2001: exemplified with the help of the IPv6 documentation prefix [10] 2001:
DB8::. DB8::.
Examples of single filters are: Examples of single filters are:
Filter for TCP traffic - permit tcp 2001:DB8::1 2001:DB8::2 Filter for TCP traffic - permit tcp 2001:DB8::1 2001:DB8::2
Filter for UDP traffic - permit udp 2001:DB8::1 2001:DB8::2 Filter for UDP traffic - permit udp 2001:DB8::1 2001:DB8::2
Filter for IPv6 traffic - permit ipv6 2001:DB8::1 2001:DB8::2 Filter for IPv6 traffic - permit ipv6 2001:DB8::1 2001:DB8::2
The single line filter case SHOULD verify that the network element The single line filter case SHOULD verify that the network element
permits all TCP/UDP/IPv6 traffic with or without any number of permits all TCP/UDP/IPv6 traffic with or without any number of
skipping to change at page 11, line 35 skipping to change at page 12, line 6
to not experience degraded IPv4 performance. Thus, IPv6 benchmarking to not experience degraded IPv4 performance. Thus, IPv6 benchmarking
SHOULD be performed in the context of a stand alone protocol as well SHOULD be performed in the context of a stand alone protocol as well
as in the context of its co-existence with IPv4. as in the context of its co-existence with IPv4.
The modifiers defined are independent of extension header type so The modifiers defined are independent of extension header type so
they can be applied equally to each one of the above tests. they can be applied equally to each one of the above tests.
The benchmarking tests described in this section SHOULD be performed The benchmarking tests described in this section SHOULD be performed
under each of the following conditions: under each of the following conditions:
Extension headers specific conditions: Extension header specific conditions:
i) IPv6 traffic with no extension headers i) IPv6 traffic with no extension headers
ii) IPv6 traffic with one extension header from the list in ii) IPv6 traffic with one extension header from the list in
section 4.3 section 4.3
iii) IPv6 traffic with the chain of extension headers described in iii) IPv6 traffic with the chain of extension headers described in
section 4.3 section 4.3
Co-existence specific conditions: Co-existence specific conditions:
iv) IPv4 ONLY traffic benchmarking iv) IPv4 ONLY traffic benchmarking
v) IPv6 ONLY traffic benchmarking v) IPv6 ONLY traffic benchmarking
vi) IPv4-IPv6 traffic mix with the ratio 90% vs 10% vi) IPv4-IPv6 traffic mix with the ratio 90% vs 10%
skipping to change at page 12, line 43 skipping to change at page 13, line 16
Reporting Format: Same as RFC2544. Reporting Format: Same as RFC2544.
7.4. Back-to-Back Frames 7.4. Back-to-Back Frames
Objective: To characterize the ability of a DUT to process back-to- Objective: To characterize the ability of a DUT to process back-to-
back frames as defined in RFC1242. back frames as defined in RFC1242.
Based on the IPv4 experience, the Back-to-Back frames test is Based on the IPv4 experience, the Back-to-Back frames test is
characterized by significant variance due to short term variations in characterized by significant variance due to short term variations in
the processing flow. For these reasons, this test is not recommended the processing flow. For these reasons, this test is no longer
anymore for IPv6 benchmarking. recommended for IPv6 benchmarking.
7.5. System Recovery 7.5. System Recovery
Objective: To characterize the speed at which a DUT recovers from an Objective: To characterize the speed at which a DUT recovers from an
overload condition. overload condition.
Procedure: Same as RFC2544. Procedure: Same as RFC2544.
Reporting Format: Same as RFC2544. Reporting Format: Same as RFC2544.
skipping to change at page 13, line 18 skipping to change at page 13, line 39
Objective: To characterize the speed at which a DUT recovers from a Objective: To characterize the speed at which a DUT recovers from a
device or software reset. device or software reset.
Procedure: Same as RFC2544. Procedure: Same as RFC2544.
Reporting Format: Same as RFC2544. Reporting Format: Same as RFC2544.
8. IANA Considerations 8. IANA Considerations
IANA reserved prefix xxxx/48 for IPv6 benchmarking similar to IANA reserved prefix xxxxx/48 for IPv6 benchmarking similar to
198.18.0.0/15 in RFC 3330 [8]. This prefix length provides similar 198.18.0.0/15 in RFC 3330 [9]. This prefix length provides similar
flexibility as the range allocated for IPv4 benchmarking and it is flexibility as the range allocated for IPv4 benchmarking and it is
taking into consideration address conservation and simplicity of taking into consideration address conservation and simplicity of
usage concerns. Most network infrastructures are allocated a /48 usage concerns. The requested size meets the requirements for
prefix, hence this range would allow most network administrators to testing large network elements and large emulated networks.
mimic their IPv6 Address Plans when performing IPv6 benchmarking.
Note to IANA: Replace "xxxxx" with assigned prefix.
9. Security Considerations 9. Security Considerations
Benchmarking activities as described in this memo are limited to Benchmarking activities as described in this memo are limited to
technology characterization using controlled stimuli in a laboratory technology characterization using controlled stimuli in a laboratory
environment, with dedicated address space and the constraints environment, with dedicated address space and the constraints
specified in the sections above. specified in the sections above.
The benchmarking network topology will be an independent test setup The benchmarking network topology will be an independent test setup
and MUST NOT be connected to devices that may forward the test and MUST NOT be connected to devices that may forward the test
skipping to change at page 14, line 8 skipping to change at page 14, line 29
networks. networks.
The isolated nature of the benchmarking environments and the fact The isolated nature of the benchmarking environments and the fact
that no special features or capabilities, other than those used in that no special features or capabilities, other than those used in
operational networks, are enabled on the DUT/SUT requires no security operational networks, are enabled on the DUT/SUT requires no security
considerations specific to the benchmarking process. considerations specific to the benchmarking process.
10. Conclusions 10. Conclusions
The Benchmarking Methodology for Network Interconnect Devices The Benchmarking Methodology for Network Interconnect Devices
document, RFC2544 [2], is for the most part applicable to evaluating document, RFC2544 [8], is for the most part applicable to evaluating
the IPv6 performance of network elements. This document is the IPv6 performance of network elements. This document is
addressing the IPv6 specific requirements that MUST be observed when addressing the IPv6 specific requirements that MUST be observed when
applying the recommendations of RFC2544. These additional applying the recommendations of RFC2544. These additional
requirements stem from the architecture characteristics of IPv6. requirements stem from the architecture characteristics of IPv6.
This document is not a replacement of but a complement to RFC2544. This document is not a replacement of but a complement to RFC2544.
11. Acknowledgements 11. Acknowledgements
Scott Bradner provided valuable guidance and recommendations for this Scott Bradner provided valuable guidance and recommendations for this
document. The authors acknowledge the work done by Cynthia Martin document. The authors acknowledge the work done by Cynthia Martin
skipping to change at page 14, line 34 skipping to change at page 15, line 10
helpful feedback. Maryam Hamza inspired the authors in completing helpful feedback. Maryam Hamza inspired the authors in completing
this document. this document.
12. References 12. References
12.1. Normative References 12.1. Normative References
[1] Bradner, S., "Key words for use in RFCs to Indicate Requirement [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels", BCP 14, RFC 2119, March 1997. Levels", BCP 14, RFC 2119, March 1997.
[2] Bradner, S. and J. McQuaid, "Benchmarking Methodology for [2] Deering, S. and R. Hinden, "Internet Protocol, Version 6 (IPv6)
Network Interconnect Devices", RFC 2544, March 1999. Specification", RFC 2460, December 1998.
[3] Narten, T., Nordmark, E., and W. Simpson, "Neighbor Discovery
for IP Version 6 (IPv6)", RFC 2461, December 1998.
[4] Malis, A. and W. Simpson, "PPP over SONET/SDH", RFC 2615,
June 1999.
[5] Kent, S., "IP Encapsulating Security Payload (ESP)", RFC 4303,
December 2005.
12.2. Informative References 12.2. Informative References
[3] Bradner, S., "Benchmarking terminology for network [6] Bradner, S., "Benchmarking terminology for network
interconnection devices", RFC 1242, July 1991. interconnection devices", RFC 1242, July 1991.
[4] Simpson, W., "PPP in HDLC-like Framing", STD 51, RFC 1662, [7] Simpson, W., "PPP in HDLC-like Framing", STD 51, RFC 1662,
July 1994. July 1994.
[5] Deering, S. and R. Hinden, "Internet Protocol, Version 6 (IPv6) [8] Bradner, S. and J. McQuaid, "Benchmarking Methodology for
Specification", RFC 2460, December 1998. Network Interconnect Devices", RFC 2544, March 1999.
[6] Narten, T., Nordmark, E., and W. Simpson, "Neighbor Discovery
for IP Version 6 (IPv6)", RFC 2461, December 1998.
[7] Malis, A. and W. Simpson, "PPP over SONET/SDH", RFC 2615,
June 1999.
[8] IANA, "Special-Use IPv4 Addresses", RFC 3330, September 2002. [9] IANA, "Special-Use IPv4 Addresses", RFC 3330, September 2002.
[9] Huston, G., Lord, A., and P. Smith, "IPv6 Address Prefix [10] Huston, G., Lord, A., and P. Smith, "IPv6 Address Prefix
Reserved for Documentation", RFC 3849, July 2004. Reserved for Documentation", RFC 3849, July 2004.
[10] Newman, D. and T. Player, "Hash and Stuffing: Overlooked [11] Newman, D. and T. Player, "Hash and Stuffing: Overlooked
Factors in Network Device Benchmarking", Factors in Network Device Benchmarking", RFC 4814, March 2007.
(draft-ietf-bmwg-hash-stuffing-08 (work in progress)",
January 2007.
Appendix A. Maximum Frame Rates Reference Appendix A. Theoretical Maximum Frame Rates Reference
This appendix provides the formulas to calculate and the values for This appendix provides the formulas to calculate and the values for
the maximum frame rates for two media types: Ethernet and SONET. the theoretical maximum frame rates for two media types: Ethernet and
SONET.
A.1. Ethernet A.1. Ethernet
The maximum throughput in frames per second (fps) for various The throughput in frames per second (fps) for various Ethernet
Ethernet interface types and for a frame size X can be calculated interface types and for a frame size X can be calculated with the
with the following formula: following formula:
Line Rate (bps) Line Rate (bps)
------------------------------ ------------------------------
(8bits/byte)*(X+20)bytes/frame (8bits/byte)*(X+20)bytes/frame
The 20 bytes in the formula is the sum of the Preamble (8 bytes) and The 20 bytes in the formula is the sum of the preamble (8 bytes) and
the Inter Frame Gap (12 bytes). The maximum throughput for various the inter frame gap (12 bytes). The throughput for various Ethernet
Ethernet interface types and frame sizes: interface types and frame sizes:
Size 10Mb/s 100Mb/s 1000Mb/s 10000Mb/s Size 10Mb/s 100Mb/s 1000Mb/s 10000Mb/s
Bytes pps pps pps pps Bytes pps pps pps pps
64 14881 148810 1488096 14880952 64 14880 148809 1488095 14880952
128 8446 84449 844595 8445946 128 8445 84459 844594 8445945
256 4529 45290 452899 4528986 256 4528 45289 452898 4528985
512 2350 23497 234962 2349625 512 2349 23496 234962 2349624
1024 1198 11973 119731 1197318 1024 1197 11973 119731 1197318
1280 961 9616 96153 961538 1280 961 9615 96153 961538
1518 813 8128 81275 812744 1518 812 8127 81274 812743
4096 303 3036 30369 303692 4096 303 3036 30396 303691
8192 152 1522 15221 152216 8192 152 1522 15221 152216
9216 135 1353 13534 135340 9216 135 1353 13534 135339
Note: Ethernet's maximum frame rates are subject to variances due to
clock slip. The listed rates are theoretical maximums and actual
tests should account for a +/- 100 ppm tolerance.
A.2. Packet over SONET A.2. Packet over SONET
ANSI T1.105 SONET provides the formula for calculating the maximum ANSI T1.105 SONET provides the formula for calculating the maximum
available bandwidth for the various Packet over SONET (PoS) interface available bandwidth for the various Packet over SONET (PoS) interface
types: types:
STS-Nc (N = 3Y, where Y=1,2,3,etc) STS-Nc (N = 3Y, where Y=1,2,3,etc)
[(N*87) - N/3]*(9 rows)*(8 bit/byte)*(8000 frames/sec) [(N*87) - N/3]*(9 rows)*(8 bit/byte)*(8000 frames/sec)
Packets over SONET can use various encapsulations: PPP [7], HDLC [4] Packets over SONET can use various encapsulations: PPP [4], HDLC [7]
and Frame Relay. All these encapsulations use a 4 bytes header, a 2 and Frame Relay. All these encapsulations use a 4-byte header, a 2-
or 4 bytes FCS field and a 1 byte Flag which are all accounted for in or 4-byte FCS field and a 1-byte Flag which are all accounted for in
the overall frame size. The maximum frame rate for various interface the overall frame size. The maximum frame rate for various interface
types can be calculated with the formula (where X represents the types can be calculated with the formula (where X represents the
frame size in bytes): frame size in bytes):
Line Rate (bps) Line Rate (bps)
------------------------------ ------------------------------
(8bits/byte)*(X+1)bytes/frame (8bits/byte)*(X+1)bytes/frame
The maximum throughput for various PoS interface types and frame The maximum throughput for various PoS interface types and frame
sizes: sizes:
Size OC-3c OC-12c OC-48c OC-192c OC-768c Size OC-3c OC-12c OC-48c OC-192c OC-768c
Bytes fps fps fps fps fps Bytes fps fps fps fps fps
53 346,666 1,386,666 5,546,666 22,186,666 88,746,666
64 288,000 1,152,000 4,608,000 18,432,000 73,728,000 64 288,000 1,152,000 4,608,000 18,432,000 73,728,000
128 145,116 580,465 2,321,860 9,287,442 37,149,767 128 145,116 580,465 2,321,860 9,287,441 37,149,767
256 72,840 291,362 1,165,447 4,661,790 18,647,160 256 72,840 291,361 1,165,447 4,661,789 18,647,159
512 36,491 145,965 583,860 2,335,439 9,341,754 512 36,491 145,964 583,859 2,335,438 9,341,754
1024 18,263 73,054 292,215 1,168,859 4,675,434 1024 18,263 73,053 292,214 1,168,858 4,675,434
2048 9,136 36,545 146,179 584,714 2,338,858 2048 9,136 36,544 146,178 584,714 2,338,857
4096 4,569 18,277 73,107 292,429 1,169,714 4096 4,569 18,276 73,107 292,428 1,169,714
It is important to note that throughput test results may vary from It is important to note that throughput test results may vary from
the values presented in appendices A.1 and A.2 due to bit stuffing the values presented in appendices A.1 and A.2 due to bit stuffing
performed by various media types [10]. performed by various media types [11]. The theoretical throughput
numbers were rounded down.
Authors' Addresses Authors' Addresses
Ciprian Popoviciu Ciprian Popoviciu
Cisco Systems Cisco Systems
Kit Creek Road Kit Creek Road
RTP, North Carolina 27709 RTP, North Carolina 27709
USA USA
Phone: 919 787 8162 Phone: 919 787 8162
 End of changes. 68 change blocks. 
140 lines changed or deleted 165 lines changed or added

This html diff was produced by rfcdiff 1.33. The latest version is available from http://tools.ietf.org/tools/rfcdiff/