This section mainly focuses on the benchmarking tests with HTTP/1.1 or HTTP/2 traffic, which uses TCP as the transport protocol. In particular, this section does not define specific benchmarking tests for KPIs related to QUIC or HTTP/3. However, the test methodology defined in the benchmarking tests
Section 7.6,
Section 7.8,
Section 7.7, and
Section 7.9 can be used to test KPIs related to QUIC or HTTP/3. The throughput performance test with the application traffic mix defined in
Section 7.1 can be performed with any other application traffic, including HTTP/3.
Using a relevant application traffic mix, determine the sustainable inspected throughput supported by the DUT/SUT.
Based on the test customer's specific use case, testers can choose the relevant application traffic mix for this test. The details about the traffic mix
MUST be documented in the report. At least, the following traffic mix details
MUST be documented and reported together with the test results:
-
Name of applications and layer 7 protocols
-
Percentage of emulated traffic for each application and layer 7 protocol
-
Percentage of encrypted traffic and used cipher suites and keys (the RECOMMENDED ciphers and keys are defined in Section 4.3.1.4)
-
Used object sizes for each application and layer 7 protocols
The testbed setup
MUST be configured as defined in
Section 4. Any benchmarking-test-specific testbed configuration changes
MUST be documented.
In this section, the benchmarking-test-specific parameters are defined.
DUT/SUT parameters
MUST conform to the requirements defined in
Section 4.2. Any configuration changes for this specific benchmarking test
MUST be documented. If the DUT/SUT is configured without TLS inspection, the test report
MUST explain how this impacts the encrypted traffic of the relevant application traffic mix.
Test equipment configuration parameters
MUST conform to the requirements defined in
Section 4.3. The following parameters
MUST be documented for this benchmarking test:
-
Client IP address ranges defined in Section 4.3.1.3
-
Server IP address ranges defined in Section 4.3.2.3
-
Traffic distribution ratio between IPv4 and IPv6 defined in Section 4.3.1.3
-
Target inspected throughput: Aggregated line rate of one or more interfaces used in the DUT/SUT or the value defined based on the requirement for a specific deployment scenario
-
Initial throughput: 10% of the "Target inspected throughput"
Note: Initial throughput is not a KPI to report. This value is configured on the traffic generator and used to perform Step 1 (Test Initialization and Qualification) described in Section 7.1.4.
-
One of the ciphers and keys defined in Section 4.3.1.4 is RECOMMENDED to use for this benchmarking test.
This test
MUST be run with a relevant application traffic mix profile.
The following criteria are the test results validation criteria. The test results validation criteria
MUST be monitored during the whole sustain phase of the traffic load profile.
-
The number of failed application transactions MUST be less than 0.001% (1 out of 100,000 transactions) of the attempted transactions.
-
The number of terminated TCP connections due to unexpected TCP RST sent by the DUT/SUT MUST be less than 0.001% (1 out of 100,000 connections) of the total initiated TCP connections.
-
If HTTP/3 is used, the number of failed QUIC connections due to unexpected HTTP/3 error codes MUST be less than 0.001% (1 out of 100,000 connections) of the total initiated QUIC connections.
The following KPI metrics
MUST be reported for this benchmarking test:
-
Mandatory KPIs (benchmarks): inspected throughput and application transactions per second
Note: The TTLB MUST be reported along with the object size used in the traffic profile.
-
Optional TCP-stack-related KPIs: TCP connections per second, TLS handshake rate, TTFB (minimum, average, and maximum), TTLB (minimum, average, and maximum)
-
Optional QUIC-stack-related KPIs: QUIC connections per second and concurrent QUIC connections
The test procedures are designed to measure the inspected throughput performance of the DUT/SUT at the sustaining period of the traffic load profile. The test procedure consists of three major steps. Step 1 ensures the DUT/SUT is able to reach the performance value (initial throughput) and meets the test results validation criteria when it was very minimally utilized. Step 2 determines whether the DUT/SUT is able to reach the target performance value within the test results validation criteria. Step 3 determines the maximum achievable performance value within the test results validation criteria.
This test procedure
MAY be repeated multiple times with different IP types: IPv4 only, IPv6 only, and IPv4 and IPv6 mixed traffic distribution.
Verify the link status of all connected physical interfaces. All interfaces are expected to be in "UP" status.
Configure the traffic load profile of the test equipment to generate test traffic at the "initial throughput" rate, as described in
Section 7.1.3.2. The test equipment
MUST follow the traffic load profile definition described in
Section 4.3.4. The DUT/SUT
MUST reach the "initial throughput" during the sustain phase. Measure all KPIs, as defined in
Section 7.1.3.5. The measured KPIs during the sustain phase
MUST meet all the test results validation criteria defined in
Section 7.1.3.4.
If the KPI metrics do not meet the test results validation criteria, the test procedure
MUST NOT be continued to Step 2.
Configure test equipment to generate traffic at the "Target inspected throughput" rate defined in
Section 7.1.3.2. The test equipment
MUST follow the traffic load profile definition described in
Section 4.3.4. The test equipment
MUST start to measure and record all specified KPIs. Continue the test until all traffic profile phases are completed.
Within the test results validation criteria, the DUT/SUT is expected to reach the desired value of the target objective ("Target inspected throughput") in the sustain phase. Follow Step 3 if the measured value does not meet the target value or does not fulfill the test results validation criteria.
Determine the achievable average inspected throughput within the test results validation criteria. The final test iteration
MUST be performed for the test duration defined in
Section 4.3.4.
Using HTTP traffic, determine the sustainable TCP connection establishment rate supported by the DUT/SUT under different throughput load conditions.
To measure connections per second, test iterations
MUST use different fixed HTTP response object sizes (the different load conditions) defined in
Section 7.2.3.2.
The testbed setup
MUST be configured as defined in
Section 4. Any specific testbed configuration changes (number of interfaces, interface type, etc.)
MUST be documented.
In this section, benchmarking-test-specific parameters are defined.
DUT/SUT parameters
MUST conform to the requirements defined in
Section 4.2. Any configuration changes for this specific benchmarking test
MUST be documented.
Test equipment configuration parameters
MUST conform to the requirements defined in
Section 4.3. The following parameters
MUST be documented for this benchmarking test:
-
Client IP address ranges defined in Section 4.3.1.3
-
Server IP address ranges defined in Section 4.3.2.3
-
Traffic distribution ratio between IPv4 and IPv6 defined in Section 4.3.1.3
-
Target connections per second: Initial value from the product datasheet or the value defined based on the requirement for a specific deployment scenario
-
Initial connections per second: 10% of "Target connections per second"
Note: Initial connections per second is not a KPI to report. This value is configured on the traffic generator and used to perform Step 1 (Test Initialization and Qualification) described in Section 7.2.4.
-
The RECOMMENDED response object sizes are 1, 2, 4, 16, and 64 KB.
The client
MUST negotiate HTTP and close the connection with FIN immediately after the completion of one transaction. In each test iteration, the client
MUST send a GET request requesting a fixed HTTP response object size.
The following criteria are the test results validation criteria. The test results validation criteria
MUST be monitored during the whole sustain phase of the traffic load profile.
-
The number of failed application transactions (receiving any HTTP response code other than 200 OK) MUST be less than 0.001% (1 out of 100,000 transactions) of the attempted transactions.
-
The number of terminated TCP connections due to unexpected TCP RST sent by the DUT/SUT MUST be less than 0.001% (1 out of 100,000 connections) of the total initiated TCP connections.
-
During the sustain phase, traffic MUST be forwarded at a constant rate (it is considered as a constant rate if any deviation of the traffic forwarding rate is less than 5%).
-
Concurrent TCP connections MUST be constant during steady state, and any deviation of concurrent TCP connections MUST be less than 10%. This confirms the DUT opens and closes TCP connections at approximately the same rate.
TCP connections per second
MUST be reported for each test iteration (for each object size).
The test procedure is designed to measure the DUT/SUT's rate of TCP connections per second during the sustaining period of the traffic load profile. The test procedure consists of three major steps. Step 1 ensures the DUT/SUT is able to reach the performance value (Initial connections per second) and meets the test results validation criteria when it was very minimally utilized. Step 2 determines whether the DUT/SUT is able to reach the target performance value within the test results validation criteria. Step 3 determines the maximum achievable performance value within the test results validation criteria.
This test procedure
MAY be repeated multiple times with different IP types: IPv4 only, IPv6 only, and IPv4 and IPv6 mixed traffic distribution.
Verify the link status of all connected physical interfaces. All interfaces are expected to be in "UP" status.
Configure the traffic load profile of the test equipment to establish "Initial connections per second", as defined in
Section 7.2.3.2. The traffic load profile
MUST be defined as described in
Section 4.3.4.
The DUT/SUT
MUST reach the "Initial connections per second" before the sustain phase. The measured KPIs during the sustain phase
MUST meet all the test results validation criteria defined in
Section 7.2.3.3.
If the KPI metrics do not meet the test results validation criteria, the test procedure
MUST NOT continue to Step 2.
Configure test equipment to establish the target objective ("Target connections per second") defined in
Section 7.2.3.2. The test equipment
MUST follow the traffic load profile definition described in
Section 4.3.4.
During the ramp up and sustain phases of each test iteration, other KPIs, such as inspected throughput, concurrent TCP connections, and application transactions per second,
MUST NOT reach the maximum value the DUT/SUT can support. The test results for specific test iterations
MUST NOT be reported as valid results if the abovementioned KPI (especially inspected throughput) reaches the maximum value. (For example, if the test iteration with 64 KB of HTTP response object size reached the maximum inspected throughput limitation of the DUT/SUT, the test iteration
MAY be interrupted and the result for 64 KB must not be reported.)
The test equipment
MUST start to measure and record all specified KPIs. Continue the test until all traffic profile phases are completed.
Within the test results validation criteria, the DUT/SUT is expected to reach the desired value of the target objective ("Target connections per second") in the sustain phase. Follow Step 3 if the measured value does not meet the target value or does not fulfill the test results validation criteria.
Determine the achievable TCP connections per second within the test results validation criteria.
Determine the sustainable inspected throughput of the DUT/SUT for HTTP transactions varying the HTTP response object size.
The testbed setup
MUST be configured as defined in
Section 4. Any specific testbed configuration changes (number of interfaces, interface type, etc.)
MUST be documented.
In this section, benchmarking-test-specific parameters are defined.
DUT/SUT parameters
MUST conform to the requirements defined in
Section 4.2. Any configuration changes for this specific benchmarking test
MUST be documented.
Test equipment configuration parameters
MUST conform to the requirements defined in
Section 4.3. The following parameters
MUST be documented for this benchmarking test:
-
Client IP address ranges defined in Section 4.3.1.3
-
Server IP address ranges defined in Section 4.3.2.3
-
Traffic distribution ratio between IPv4 and IPv6 defined in Section 4.3.1.3
-
Target inspected throughput: Aggregated line rate of one or more interfaces used in the DUT/SUT or the value defined based on the requirement for a specific deployment scenario
-
Initial throughput: 10% of "Target inspected throughput"
Note: Initial throughput is not a KPI to report. This value is configured on the traffic generator and used to perform Step 1 (Test Initialization and Qualification) described in Section 7.3.4.
-
Number of HTTP response object requests (transactions) per connection: 10
-
RECOMMENDED HTTP response object size: 1, 16, 64, and 256 KB and mixed objects defined in Table 5
Object size (KB) |
Number of requests / Weight |
0.2 |
1 |
6 |
1 |
8 |
1 |
9 |
1 |
10 |
1 |
25 |
1 |
26 |
1 |
35 |
1 |
59 |
1 |
347 |
1 |
Table 5: Mixed Objects
The following criteria are the test results validation criteria. The test results validation criteria
MUST be monitored during the whole sustain phase of the traffic load profile.
-
The number of failed application transactions (receiving any HTTP response code other than 200 OK) MUST be less than 0.001% (1 out of 100,000 transactions) of the total attempted transactions.
-
Traffic MUST be forwarded at a constant rate (it is considered as a constant rate if any deviation of the traffic forwarding rate is less than 5%).
-
Concurrent TCP connections MUST be constant during steady state, and any deviation of concurrent TCP connections MUST be less than 10%. This confirms the DUT opens and closes TCP connections at approximately the same rate.
Inspected throughput and HTTP transactions per second
MUST be reported for each object size.
The test procedure is designed to measure HTTP throughput of the DUT/ SUT. The test procedure consists of three major steps. Step 1 ensures the DUT/SUT is able to reach the performance value (initial throughput) and meets the test results validation criteria when it was very minimally utilized. Step 2 determines whether the DUT/SUT is able to reach the target performance value within the test results validation criteria. Step 3 determines the maximum achievable performance value within the test results validation criteria.
This test procedure
MAY be repeated multiple times with different IPv4 and IPv6 traffic distributions and HTTP response object sizes.
Verify the link status of all connected physical interfaces. All interfaces are expected to be in "UP" status.
Configure the traffic load profile of the test equipment to establish "initial throughput", as defined in
Section 7.3.3.2.
The traffic load profile
MUST be defined as described in
Section 4.3.4. The DUT/SUT
MUST reach the "initial throughput" during the sustain phase. Measure all KPIs, as defined in
Section 7.3.3.4.
The measured KPIs during the sustain phase
MUST meet the test results validation criteria "a" defined in
Section 7.3.3.3. The test results validation criteria "b" and "c" are
OPTIONAL for Step 1.
If the KPI metrics do not meet the test results validation criteria, the test procedure
MUST NOT be continued to Step 2.
Configure test equipment to establish the target objective ("Target inspected throughput") defined in
Section 7.3.3.2. The test equipment
MUST start to measure and record all specified KPIs. Continue the test until all traffic profile phases are completed.
Within the test results validation criteria, the DUT/SUT is expected to reach the desired value of the target objective in the sustain phase. Follow Step 3 if the measured value does not meet the target value or does not fulfill the test results validation criteria.
Determine the achievable inspected throughput within the test results validation criteria and measure the KPI metric transactions per second. The final test iteration
MUST be performed for the test duration defined in
Section 4.3.4.
Using HTTP traffic, determine the HTTP transaction latency when the DUT is running with sustainable HTTP transactions per second supported by the DUT/SUT under different HTTP response object sizes.
Test iterations
MUST be performed with different HTTP response object sizes in two different scenarios: one with a single transaction and the other with multiple transactions within a single TCP connection. For consistency, both the single and multiple transaction tests
MUST be configured with the same HTTP version.
Scenario 1: The client
MUST negotiate HTTP and close the connection with FIN immediately after the completion of a single transaction (GET and RESPONSE).
Scenario 2: The client
MUST negotiate HTTP and close the connection with FIN immediately after the completion of 10 transactions (GET and RESPONSE) within a single TCP connection.
The testbed setup
MUST be configured as defined in
Section 4. Any specific testbed configuration changes (number of interfaces, interface type, etc.)
MUST be documented.
In this section, benchmarking-test-specific parameters are defined.
DUT/SUT parameters
MUST conform to the requirements defined in
Section 4.2. Any configuration changes for this specific benchmarking test
MUST be documented.
Test equipment configuration parameters
MUST conform to the requirements defined in
Section 4.3. The following parameters
MUST be documented for this benchmarking test:
-
Client IP address ranges defined in Section 4.3.1.3
-
Server IP address ranges defined in Section 4.3.2.3
-
Traffic distribution ratio between IPv4 and IPv6 defined in Section 4.3.1.3
-
Target objective for scenario 1: 50% of the connections per second measured in the benchmarking test Section 7.2
-
Target objective for scenario 2: 50% of the inspected throughput measured in the benchmarking test Section 7.3
-
Initial objective for scenario 1: 10% of "Target objective for scenario 1"
-
Initial objective for scenario 2: 10% of "Target objective for scenario 2"
Note: The initial objectives are not KPIs to report. These values are configured on the traffic generator and used to perform Step 1 (Test Initialization and Qualification) described in Section 7.4.4.
-
HTTP transaction per TCP connection: Test scenario 1 with a single transaction and test scenario 2 with 10 transactions
-
HTTP with GET request requesting a single object: The RECOMMENDED object sizes are 1, 16, and 64 KB. For each test iteration, the client MUST request a single HTTP response object size.
The following criteria are the test results validation criteria. The test results validation criteria
MUST be monitored during the whole sustain phase of the traffic load profile.
-
The number of failed application transactions (receiving any HTTP response code other than 200 OK) MUST be less than 0.001% (1 out of 100,000 transactions) of the total attempted transactions.
-
The number of terminated TCP connections due to unexpected TCP RST sent by the DUT/SUT MUST be less than 0.001% (1 out of 100,000 connections) of the total initiated TCP connections.
-
During the sustain phase, traffic MUST be forwarded at a constant rate (it is considered as a constant rate if any deviation of the traffic forwarding rate is less than 5%).
-
Concurrent TCP connections MUST be constant during steady state, and any deviation of concurrent TCP connections MUST be less than 10%. This confirms the DUT opens and closes TCP connections at approximately the same rate.
-
After ramp up, the DUT MUST achieve the target objectives defined in Section 7.4.3.2 and remain in that state for the entire test duration (sustain phase).
The TTFB (minimum, average, and maximum) and TTLB (minimum, average, and maximum)
MUST be reported for each object size.
The test procedure is designed to measure the TTFB or TTLB when the DUT/SUT is operating close to 50% of its maximum achievable connections per second or inspected throughput. The test procedure consists of two major steps. Step 1 ensures the DUT/SUT is able to reach the initial performance values and meets the test results validation criteria when it was very minimally utilized. Step 2 measures the latency values within the test results validation criteria.
This test procedure
MAY be repeated multiple times with different IP types (IPv4 only, IPv6 only, and IPv4 and IPv6 mixed traffic distribution), HTTP response object sizes, and single and multiple transactions per connection scenarios.
Verify the link status of all connected physical interfaces. All interfaces are expected to be in "UP" status.
Configure the traffic load profile of the test equipment to establish the initial objectives, as defined in
Section 7.4.3.2. The traffic load profile
MUST be defined as described in
Section 4.3.4.
The DUT/SUT
MUST reach the initial objectives before the sustain phase. The measured KPIs during the sustain phase
MUST meet all the test results validation criteria defined in
Section 7.4.3.3.
If the KPI metrics do not meet the test results validation criteria, the test procedure
MUST NOT be continued to Step 2.
Configure test equipment to establish the target objectives defined in
Section 7.4.3.2. The test equipment
MUST follow the traffic load profile definition described in
Section 4.3.4.
The test equipment
MUST start to measure and record all specified KPIs. Continue the test until all traffic profile phases are completed.
Within the test results validation criteria, the DUT/SUT
MUST reach the desired value of the target objective in the sustain phase.
Measure the minimum, average, and maximum values of the TTFB and TTLB.
Determine the number of concurrent TCP connections that the DUT/SUT sustains when using HTTP traffic.
The testbed setup
MUST be configured as defined in
Section 4. Any specific testbed configuration changes (number of interfaces, interface type, etc.)
MUST be documented.
In this section, benchmarking-test-specific parameters are defined.
DUT/SUT parameters
MUST conform to the requirements defined in
Section 4.2. Any configuration changes for this specific benchmarking test
MUST be documented.
Test equipment configuration parameters
MUST conform to the requirements defined in
Section 4.3. The following parameters
MUST be noted for this benchmarking test:
-
Client IP address ranges defined in Section 4.3.1.3
-
Server IP address ranges defined in Section 4.3.2.3
-
Traffic distribution ratio between IPv4 and IPv6 defined in Section 4.3.1.3
-
Target concurrent connection: Initial value from the product datasheet or the value defined based on the requirement for a specific deployment scenario
-
Initial concurrent connection: 10% of "Target concurrent connection"
Note: Initial concurrent connection is not a KPI to report. This value is configured on the traffic generator and used to perform Step 1 (Test Initialization and Qualification) described in Section 7.5.4.
-
Maximum connections per second during ramp up phase: 50% of maximum connections per second measured in the benchmarking test Section 7.2
-
Ramp up time (in traffic load profile for "Target concurrent connection"): "Target concurrent connection" / "Maximum connections per second during ramp up phase"
-
Ramp up time (in traffic load profile for "Initial concurrent connection"): "Initial concurrent connection" / "Maximum connections per second during ramp up phase"
The client
MUST negotiate HTTP, and each client
MAY open multiple concurrent TCP connections per server endpoint IP.
Each client sends 10 GET requests requesting 1 KB HTTP response object in the same TCP connection (10 transactions / TCP connections), and the delay (think time) between each transaction
MUST be X seconds, where X is as follows.
X = ("Ramp up time" + "steady state time") / 10
The established connections
MUST remain open until the ramp down phase of the test. During the ramp down phase, all connections
MUST be successfully closed with FIN.
The following criteria are the test results validation criteria. The test results validation criteria
MUST be monitored during the whole sustain phase of the traffic load profile.
-
The number of failed application transactions (receiving any HTTP response code other than 200 OK) MUST be less than 0.001% (1 out of 100,000 transactions) of the total attempted transactions.
-
The number of terminated TCP connections due to unexpected TCP RST sent by the DUT/SUT MUST be less than 0.001% (1 out of 100,000 connections) of the total initiated TCP connections.
-
During the sustain phase, traffic MUST be forwarded at a constant rate (it is considered as a constant rate if any deviation of the traffic forwarding rate is less than 5%).
Average concurrent TCP connections
MUST be reported for this benchmarking test.
The test procedure is designed to measure the concurrent TCP connection capacity of the DUT/SUT at the sustaining period of the traffic load profile. The test procedure consists of three major steps. Step 1 ensures the DUT/SUT is able to reach the performance value (Initial concurrent connection) and meets the test results validation criteria when it was very minimally utilized. Step 2 determines whether the DUT/SUT is able to reach the target performance value within the test results validation criteria. Step 3 determines the maximum achievable performance value within the test results validation criteria.
This test procedure
MAY be repeated multiple times with different IPv4 and IPv6 traffic distributions.
Verify the link status of all connected physical interfaces. All interfaces are expected to be in "UP" status.
Configure test equipment to establish "Initial concurrent connections" defined in
Section 7.5.3.2. Except ramp up time, the traffic load profile
MUST be defined as described in
Section 4.3.4.
During the sustain phase, the DUT/SUT
MUST reach the "Initial concurrent connections". The measured KPIs during the sustain phase
MUST meet all the test results validation criteria defined in
Section 7.5.3.3.
If the KPI metrics do not meet the test results validation criteria, the test procedure
MUST NOT be continued to Step 2.
Configure test equipment to establish the target objective ("Target concurrent TCP connections"). The test equipment
MUST follow the traffic load profile definition (except ramp up time) as described in
Section 4.3.4.
During the ramp up and sustain phases, the other KPIs, such as inspected throughput, TCP connections per second, and application transactions per second,
MUST NOT reach the maximum value the DUT/SUT can support.
The test equipment
MUST start to measure and record KPIs defined in
Section 7.5.3.4. Continue the test until all traffic profile phases are completed.
Within the test results validation criteria, the DUT/SUT is expected to reach the desired value of the target objective in the sustain phase. Follow Step 3 if the measured value does not meet the target value or does not fulfill the test results validation criteria.
Determine the achievable concurrent TCP connections capacity within the test results validation criteria.
Using HTTPS traffic, determine the sustainable TLS session establishment rate supported by the DUT/SUT under different throughput load conditions.
Test iterations
MUST include common cipher suites and key strengths, as well as forward-looking stronger keys. Specific test iterations
MUST include ciphers and keys defined in
Section 7.6.3.2.
For each cipher suite and key strength, test iterations
MUST use a single HTTPS response object size defined in
Section 7.6.3.2 to measure connections per second performance under a variety of DUT/SUT security inspection load conditions.
The testbed setup
MUST be configured as defined in
Section 4. Any specific testbed configuration changes (number of interfaces, interface type, etc.)
MUST be documented.
In this section, benchmarking-test-specific parameters are defined.
DUT/SUT parameters
MUST conform to the requirements defined in
Section 4.2. Any configuration changes for this specific benchmarking test
MUST be documented.
Test equipment configuration parameters
MUST conform to the requirements defined in
Section 4.3. The following parameters
MUST be documented for this benchmarking test:
-
Client IP address ranges defined in Section 4.3.1.3
-
Server IP address ranges defined in Section 4.3.2.3
-
Traffic distribution ratio between IPv4 and IPv6 defined in Section 4.3.1.3
-
Target connections per second: Initial value from the product datasheet or the value defined based on the requirement for a specific deployment scenario
-
Initial connections per second: 10% of "Target connections per second"
Note: Initial connections per second is not a KPI to report. This value is configured on the traffic generator and used to perform Step 1 (Test Initialization and Qualification) described in Section 7.6.4.)
-
RECOMMENDED ciphers and keys defined in Section 4.3.1.4
-
The RECOMMENDED object sizes are 1, 2, 4, 16, and 64 KB.
The client
MUST negotiate HTTPS and close the connection without error immediately after the completion of one transaction. In each test iteration, the client
MUST send a GET request requesting a fixed HTTPS response object size.
The following criteria are the test results validation criteria. The test results validation criteria
MUST be monitored during the whole test duration.
-
The number of failed application transactions (receiving any HTTP response code other than 200 OK) MUST be less than 0.001% (1 out of 100,000 transactions) of the attempted transactions.
-
The number of terminated TCP connections due to unexpected TCP RST sent by the DUT/SUT MUST be less than 0.001% (1 out of 100,000 connections) of the total initiated TCP connections. If HTTP/3 is used, the number of terminated QUIC connections due to unexpected errors MUST be less than 0.001% (1 out of 100,000 connections) of the total initiated QUIC connections.
-
During the sustain phase, traffic MUST be forwarded at a constant rate (it is considered as a constant rate if any deviation of the traffic forwarding rate is less than 5%).
-
The concurrent TCP connections generation rate MUST be constant during steady state, and any deviation of concurrent TCP connections MUST be less than 10%. If HTTP/3 is used, the concurrent QUIC connections generation rate MUST be constant during steady state, and any deviation of concurrent QUIC connections MUST be less than 10%. This confirms the DUT opens and closes connections at approximately the same rate.
If HTTP 1.1 or HTTP/2 is used, TCP connections per second
MUST be reported for each test iteration (for each object size).
If HTTP/3 is used, QUIC connections per second
MUST be measured and reported for each test iteration (for each object size).
The KPI metric TLS handshake rate can be measured in the test using 1 KB object size.
The test procedure is designed to measure the DUT/SUT's rate of TCP or QUIC connections per second during the sustaining period of the traffic load profile. The test procedure consists of three major steps. Step 1 ensures the DUT/SUT is able to reach the performance value (Initial connections per second) and meets the test results validation criteria when it was very minimally utilized. Step 2 determines whether the DUT/SUT is able to reach the target performance value within the test results validation criteria. Step 3 determines the maximum achievable performance value within the test results validation criteria.
This test procedure
MAY be repeated multiple times with different IPv4 and IPv6 traffic distributions.
Verify the link status of all connected physical interfaces. All interfaces are expected to be in "UP" status.
Configure the traffic load profile of the test equipment to establish "Initial connections per second", as defined in
Section 7.6.3.2. The traffic load profile
MUST be defined as described in
Section 4.3.4.
The DUT/SUT
MUST reach the "Initial connections per second" before the sustain phase. The measured KPIs during the sustain phase
MUST meet all the test results validation criteria defined in
Section 7.6.3.3.
If the KPI metrics do not meet the test results validation criteria, the test procedure
MUST NOT be continued to Step 2.
Configure test equipment to establish "Target connections per second", as defined in
Section 7.6.3.2. The test equipment
MUST follow the traffic load profile definition described in
Section 4.3.4.
During the ramp up and sustain phases, other KPIs, such as inspected throughput, concurrent TCP or QUIC connections, and application transactions per second,
MUST NOT reach the maximum value the DUT/SUT can support. The test results for the specific test iteration
MUST NOT be reported as valid results if the abovementioned KPI (especially inspected throughput) reaches the maximum value. (For example, if the test iteration with 64 KB of HTTPS response object size reached the maximum inspected throughput limitation of the DUT, the test iteration
MAY be interrupted, and the result for 64 KB should not be reported).
The test equipment
MUST start to measure and record all specified KPIs. Continue the test until all traffic profile phases are completed.
Within the test results validation criteria, the DUT/SUT is expected to reach the desired value of the target objective ("Target connections per second") in the sustain phase. Follow Step 3 if the measured value does not meet the target value or does not fulfill the test results validation criteria.
Determine the achievable connections per second within the test results validation criteria.
Determine the sustainable inspected throughput of the DUT/SUT for HTTPS transactions by varying the HTTPS response object size.
Test iterations
MUST include common cipher suites and key strengths, as well as forward-looking stronger keys. Specific test iterations
MUST include the ciphers and keys defined in
Section 7.7.3.2.
The testbed setup
MUST be configured as defined in
Section 4. Any specific testbed configuration changes (number of interfaces, interface type, etc.)
MUST be documented.
In this section, benchmarking-test-specific parameters are defined.
DUT/SUT parameters
MUST conform to the requirements defined in
Section 4.2. Any configuration changes for this specific benchmarking test
MUST be documented.
Test equipment configuration parameters
MUST conform to the requirements defined in
Section 4.3. The following parameters
MUST be documented for this benchmarking test:
-
Client IP address ranges defined in Section 4.3.1.3
-
Server IP address ranges defined in Section 4.3.2.3
-
Traffic distribution ratio between IPv4 and IPv6 defined in Section 4.3.1.3
-
Target inspected throughput: Aggregated line rate of one or more interfaces used in the DUT/SUT or the value defined based on the requirement for a specific deployment scenario
-
Initial throughput: 10% of "Target inspected throughput"
Note: Initial throughput is not a KPI to report. This value is configured on the traffic generator and used to perform Step 1 (Test Initialization and Qualification) described in Section 7.7.4.
-
Number of HTTPS response object requests (transactions) per connection: 10
-
RECOMMENDED ciphers and keys defined in Section 4.3.1.4
-
RECOMMENDED HTTPS response object size: 1, 16, 64, and 256 KB and mixed objects defined in Table 5 of Section 7.3.3.2
The following criteria are the test results validation criteria. The test results validation criteria
MUST be monitored during the whole sustain phase of the traffic load profile.
-
The number of failed application transactions (receiving any HTTP response code other than 200 OK) MUST be less than 0.001% (1 out of 100,000 transactions) of the attempted transactions.
-
Traffic MUST be generated at a constant rate (it is considered as a constant rate if any deviation of the traffic forwarding rate is less than 5%).
-
The concurrent generated TCP connections MUST be constant during steady state, and any deviation of concurrent TCP connections MUST be less than 10%. If HTTP/3 is used, the concurrent generated QUIC connections MUST be constant during steady state, and any deviation of concurrent QUIC connections MUST be less than 10%. This confirms the DUT opens and closes connections at approximately the same rate.
Inspected throughput and HTTPS transactions per second
MUST be reported for each object size.
The test procedure consists of three major steps. Step 1 ensures the DUT/SUT is able to reach the performance value (initial throughput) and meets the test results validation criteria when it was very minimally utilized. Step 2 determines whether the DUT/SUT is able to reach the target performance value within the test results validation criteria. Step 3 determines the maximum achievable performance value within the test results validation criteria.
This test procedure
MAY be repeated multiple times with different IPv4 and IPv6 traffic distributions and HTTPS response object sizes.
Verify the link status of all connected physical interfaces. All interfaces are expected to be in "UP" status.
Configure the traffic load profile of the test equipment to establish "initial throughput", as defined in
Section 7.7.3.2.
The traffic load profile
MUST be defined as described in
Section 4.3.4. The DUT/SUT
MUST reach the "initial throughput" during the sustain phase. Measure all KPIs, as defined in
Section 7.7.3.4.
The measured KPIs during the sustain phase
MUST meet the test results validation criteria "a" defined in
Section 7.7.3.3. The test results validation criteria "b" and "c" are
OPTIONAL for Step 1.
If the KPI metrics do not meet the test results validation criteria, the test procedure
MUST NOT be continued to Step 2.
Configure test equipment to establish the target objective ("Target inspected throughput") defined in
Section 7.7.3.2. The test equipment
MUST start to measure and record all specified KPIs. Continue the test until all traffic profile phases are completed.
Within the test results validation criteria, the DUT/SUT is expected to reach the desired value of the target objective in the sustain phase. Follow Step 3 if the measured value does not meet the target value or does not fulfill the test results validation criteria.
Determine the achievable average inspected throughput within the test results validation criteria. The final test iteration
MUST be performed for the test duration defined in
Section 4.3.4.
Using HTTPS traffic, determine the HTTPS transaction latency when the DUT/SUT is running with sustainable HTTPS transactions per second supported by the DUT/SUT under different HTTPS response object sizes.
Scenario 1: The client
MUST negotiate HTTPS and close the connection immediately after the completion of a single transaction (GET and RESPONSE).
Scenario 2: The client
MUST negotiate HTTPS and close the connection immediately after the completion of 10 transactions (GET and RESPONSE) within a single TCP or QUIC connection.
The testbed setup
MUST be configured as defined in
Section 4. Any specific testbed configuration changes (number of interfaces, interface type, etc.)
MUST be documented.
In this section, benchmarking-test-specific parameters are defined.
DUT/SUT parameters
MUST conform to the requirements defined in
Section 4.2. Any configuration changes for this specific benchmarking test
MUST be documented.
Test equipment configuration parameters
MUST conform to the requirements defined in
Section 4.3. The following parameters
MUST be documented for this benchmarking test:
-
Client IP address ranges defined in Section 4.3.1.3
-
Server IP address ranges defined in Section 4.3.2.3
-
Traffic distribution ratio between IPv4 and IPv6 defined in Section 4.3.1.3
-
RECOMMENDED cipher suites and key sizes defined in Section 4.3.1.4
-
Target objective for scenario 1: 50% of the connections per second measured in the benchmarking test Section 7.6
-
Target objective for scenario 2: 50% of the inspected throughput measured in the benchmarking test Section 7.7
-
Initial objective for scenario 1: 10% of "Target objective for scenario 1"
-
Initial objective for scenario 2: 10% of "Target objective for scenario 2"
Note: The initial objectives are not KPIs to report. These values are configured on the traffic generator and used to perform Step 1 (Test Initialization and Qualification) described in Section 7.8.4.
-
HTTPS transaction per TCP or QUIC connection: Test scenario 1 with a single transaction and scenario 2 with 10 transactions
-
HTTPS with GET request requesting a single object: The RECOMMENDED object sizes are 1, 16, and 64 KB. For each test iteration, the client MUST request a single HTTPS response object size.
The following criteria are the test results validation criteria. The test results validation criteria
MUST be monitored during the whole sustain phase of the traffic load profile.
-
The number of failed application transactions (receiving any HTTP response code other than 200 OK) MUST be less than 0.001% (1 out of 100,000 transactions) of the total attempted transactions.
-
The number of terminated TCP connections due to unexpected TCP RST sent by the DUT/SUT MUST be less than 0.001% (1 out of 100,000 connections) of the total initiated TCP connections. If HTTP/3 is used, the number of terminated QUIC connections due to unexpected errors MUST be less than 0.001% (1 out of 100,000 connections) of the total initiated QUIC connections.
-
During the sustain phase, traffic MUST be forwarded at a constant rate (it is considered as a constant rate if any deviation of the traffic forwarding rate is less than 5%).
-
Concurrent TCP or QUIC connections MUST be constant during steady state, and any deviation of concurrent TCP connections MUST be less than 10%. If HTTP/3 is used, the concurrent generated QUIC connections MUST be constant during steady state, and any deviation of concurrent QUIC connections MUST be less than 10%. This confirms the DUT opens and closes connections at approximately the same rate.
-
After ramp up, the DUT/SUT MUST achieve the target objectives defined in the parameters in Section 7.8.3.2 and remain in that state for the entire test duration (sustain phase).
The TTFB (minimum, average, and maximum) and TTLB (minimum, average, and maximum)
MUST be reported for each object size.
The test procedure is designed to measure the TTFB or TTLB when the DUT/SUT is operating close to 50% of its maximum achievable connections per second or inspected throughput. The test procedure consists of two major steps. Step 1 ensures the DUT/SUT is able to reach the initial performance values and meets the test results validation criteria when it is very minimally utilized. Step 2 measures the latency values within the test results validation criteria.
This test procedure
MAY be repeated multiple times with different IP types (IPv4 only, IPv6 only, and IPv4 and IPv6 mixed traffic distribution), HTTPS response object sizes, and single and multiple transactions per connection scenarios.
Verify the link status of all connected physical interfaces. All interfaces are expected to be in "UP" status.
Configure the traffic load profile of the test equipment to establish the initial objectives, as defined in
Section 7.8.3.2. The traffic load profile
MUST be defined as described in
Section 4.3.4.
The DUT/SUT
MUST reach the initial objectives before the sustain phase. The measured KPIs during the sustain phase
MUST meet all the test results validation criteria defined in
Section 7.8.3.3.
If the KPI metrics do not meet the test results validation criteria, the test procedure
MUST NOT be continued to Step 2.
Configure test equipment to establish the target objectives defined in
Section 7.8.3.2. The test equipment
MUST follow the traffic load profile definition described in
Section 4.3.4.
The test equipment
MUST start to measure and record all specified KPIs. Continue the test until all traffic profile phases are completed.
Within the test results validation criteria, the DUT/SUT
MUST reach the desired value of the target objective in the sustain phase.
Measure the minimum, average, and maximum values of the TTFB and TTLB.
Determine the number of concurrent TCP or QUIC connections the DUT/SUT sustains when using HTTPS traffic.
The testbed setup
MUST be configured as defined in
Section 4. Any specific testbed configuration changes (number of interfaces, interface type, etc.)
MUST be documented.
In this section, benchmarking-test-specific parameters are defined.
DUT/SUT parameters
MUST conform to the requirements defined in
Section 4.2. Any configuration changes for this specific benchmarking test
MUST be documented.
Test equipment configuration parameters
MUST conform to the requirements defined in
Section 4.3. The following parameters
MUST be documented for this benchmarking test:
-
Client IP address ranges defined in Section 4.3.1.3
-
Server IP address ranges defined in Section 4.3.2.3
-
Traffic distribution ratio between IPv4 and IPv6 defined in Section 4.3.1.3
-
RECOMMENDED cipher suites and key sizes defined in Section 4.3.1.4
-
Target concurrent connections: Initial value from the product datasheet or the value defined based on the requirement for a specific deployment scenario
-
Initial concurrent connections: 10% of "Target concurrent connections"
Note: Initial concurrent connections is not a KPI to report. This value is configured on the traffic generator and used to perform Step 1 (Test Initialization and Qualification) described in Section 7.9.4.
-
Connections per second during ramp up phase: 50% of maximum connections per second measured in the benchmarking test Section 7.6
-
Ramp up time (in traffic load profile for "Target concurrent connections"): "Target concurrent connections" / "Maximum connections per second during ramp up phase"
-
Ramp up time (in traffic load profile for "Initial concurrent connections"): "Initial concurrent connections" / "Maximum connections per second during ramp up phase"
The client
MUST perform HTTPS transactions with persistence, and each client can open multiple concurrent connections per server endpoint IP.
Each client sends 10 GET requests requesting 1 KB HTTPS response objects in the same TCP or QUIC connections (10 transactions/connections), and the delay (think time) between each transaction
MUST be X seconds, where X is as follows.
X = ("Ramp up time" + "steady state time") / 10
The established connections
MUST remain open until the ramp down phase of the test. During the ramp down phase, all connections
MUST be successfully closed with FIN.
The following criteria are the test results validation criteria. The test results validation criteria
MUST be monitored during the whole sustain phase of the traffic load profile.
-
The number of failed application transactions (receiving any HTTP response code other than 200 OK) MUST be less than 0.001% (1 out of 100,000 transactions) of the total attempted transactions.
-
The number of terminated TCP connections due to unexpected TCP RSTs sent by the DUT/SUT MUST be less than 0.001% (1 out of 100,000 connections) of the total initiated TCP connections. If HTTP/3 is used, the number of terminated QUIC connections due to unexpected errors MUST be less than 0.001% (1 out of 100,000 connections) of the total initiated QUIC connections.
-
During the sustain phase, traffic MUST be forwarded at a constant rate (it is considered as a constant rate if any deviation of the traffic forwarding rate is less than 5%).
Average concurrent TCP or QUIC connections
MUST be reported for this benchmarking test.
The test procedure is designed to measure the concurrent TCP connection capacity of the DUT/SUT at the sustaining period of the traffic load profile. The test procedure consists of three major steps. Step 1 ensures the DUT/SUT is able to reach the performance value (Initial concurrent connection) and meets the test results validation criteria when it was very minimally utilized. Step 2 determines whether the DUT/SUT is able to reach the target performance value within the test results validation criteria. Step 3 determines the maximum achievable performance value within the test results validation criteria.
This test procedure
MAY be repeated multiple times with different IPv4 and IPv6 traffic distributions.
Verify the link status of all connected physical interfaces. All interfaces are expected to be in "UP" status.
Configure test equipment to establish "Initial concurrent connections" defined in
Section 7.9.3.2. Except ramp up time, the traffic load profile
MUST be defined as described in
Section 4.3.4.
During the sustain phase, the DUT/SUT
MUST reach the "Initial concurrent connections". The measured KPIs during the sustain phase
MUST meet the test results validation criteria "a" and "b" defined in
Section 7.9.3.3.
If the KPI metrics do not meet the test results validation criteria, the test procedure
MUST NOT be continued to Step 2.
Configure test equipment to establish the target objective ("Target concurrent connections"). The test equipment
MUST follow the traffic load profile definition (except ramp up time) described in
Section 4.3.4.
During the ramp up and sustain phases, the other KPIs, such as inspected throughput, TCP or QUIC connections per second, and application transactions per second,
MUST NOT reach the maximum value that the DUT/SUT can support.
The test equipment
MUST start to measure and record KPIs defined in
Section 7.9.3.4. Continue the test until all traffic profile phases are completed.
Within the test results validation criteria, the DUT/SUT is expected to reach the desired value of the target objective in the sustain phase. Follow Step 3 if the measured value does not meet the target value or does not fulfill the test results validation criteria.
Determine the achievable concurrent TCP or QUIC connections within the test results validation criteria.