aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore2
-rw-r--r--INFO1
-rw-r--r--INFO.yaml4
-rw-r--r--ansible/roles/configure_rabbitmq/tasks/main.yml20
-rw-r--r--ansible/roles/configure_rabbitmq/templates/rabbitmq.config.j25
-rw-r--r--ansible/roles/configure_rabbitmq/templates/user_definitions.json.j223
-rw-r--r--ansible/roles/download_samplevnfs/defaults/main.yml14
-rw-r--r--dashboard/NSB-vEPC-Network-Metrics-1540991445293.json1354
-rw-r--r--dashboard/Prox_Baremetal_L3FWD-4Port_NFVi-1540906828739.json13889
-rw-r--r--docker/Dockerfile.aarch64.patch2
-rw-r--r--docs/conf.py1
-rw-r--r--docs/conf.yaml3
-rw-r--r--docs/index.rst17
-rw-r--r--docs/release/release-notes/release-notes.rst14
-rw-r--r--docs/release/results/euphrates_fraser_comparison.rst10
-rw-r--r--docs/release/results/images/tc014_pod_fraser.png (renamed from docs/release/results/images/tc014_pod_fraseer.png)bin29513 -> 29513 bytes
-rw-r--r--docs/release/results/overview.rst9
-rw-r--r--docs/release/results/results.rst17
-rw-r--r--docs/release/results/yardstick-opnfv-vtc.rst248
-rw-r--r--docs/requirements.txt5
-rw-r--r--docs/templates/test_results_template.rst23
-rwxr-xr-xdocs/testing/developer/devguide/devguide.rst150
-rwxr-xr-xdocs/testing/developer/devguide/devguide_nsb_prox.rst2
-rwxr-xr-xdocs/testing/user/userguide/01-introduction.rst6
-rw-r--r--docs/testing/user/userguide/04-installation.rst120
-rw-r--r--docs/testing/user/userguide/05-operation.rst2
-rw-r--r--docs/testing/user/userguide/08-grafana.rst2
-rw-r--r--docs/testing/user/userguide/09-api.rst2
-rw-r--r--docs/testing/user/userguide/12-nsb-overview.rst2
-rw-r--r--docs/testing/user/userguide/13-nsb-installation.rst108
-rw-r--r--docs/testing/user/userguide/14-nsb-operation.rst8
-rw-r--r--docs/testing/user/userguide/15-list-of-tcs.rst11
-rw-r--r--docs/testing/user/userguide/comp-intro.rst4
-rw-r--r--docs/testing/user/userguide/glossary.rst75
-rw-r--r--docs/testing/user/userguide/nsb/nsb-list-of-tcs.rst5
-rw-r--r--docs/testing/user/userguide/nsb/tc_epc_dedicated_bearer_landslide.rst156
-rw-r--r--docs/testing/user/userguide/nsb/tc_epc_default_bearer_landslide.rst149
-rw-r--r--docs/testing/user/userguide/nsb/tc_epc_network_service_request_landslide.rst159
-rw-r--r--docs/testing/user/userguide/nsb/tc_epc_saegw_tput_relocation_landslide.rst167
-rw-r--r--docs/testing/user/userguide/nsb/tc_epc_ue_service_request_landslide.rst174
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc010.rst3
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc011.rst6
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc012.rst1
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc019.rst22
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc025.rst11
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc027.rst2
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc040.rst2
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc042.rst2
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc050.rst49
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc052.rst19
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc055.rst4
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc057.rst11
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc063.rst1
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc069.rst6
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc073.rst2
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc074.rst21
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc081.rst4
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc084.rst25
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc087.rst11
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc092.rst33
-rw-r--r--docs/testing/user/userguide/opnfv_yardstick_tc093.rst43
-rw-r--r--docs/testing/user/userguide/references.rst22
-rw-r--r--etc/yardstick/nodes/standalone/pod_landslide.yaml130
-rw-r--r--etc/yardstick/nodes/standalone/pod_landslide_network_dedicated.yaml164
-rw-r--r--etc/yardstick/nodes/standalone/pod_vepc_sut.yaml37
-rw-r--r--etc/yardstick/yardstick.conf.sample2
-rw-r--r--samples/vnf_samples/nsut/agnostic/agnostic_vnf_topology_ixia_2ports.yaml49
-rw-r--r--samples/vnf_samples/nsut/agnostic/agnostic_vnf_topology_ixia_4ports.yaml71
-rw-r--r--samples/vnf_samples/nsut/agnostic/agnostic_vnf_topology_trex_2ports.yaml49
-rw-r--r--samples/vnf_samples/nsut/agnostic/tc_baremetal_rfc2544_ipv4_64B_trex.yaml45
-rw-r--r--samples/vnf_samples/nsut/agnostic/tc_baremetal_rfc2544_latency_ipv4_64B_ixia.yaml45
-rw-r--r--samples/vnf_samples/nsut/prox/configs/gen_acl-2.cfg9
-rw-r--r--samples/vnf_samples/nsut/prox/configs/gen_acl-4.cfg17
-rw-r--r--samples/vnf_samples/nsut/prox/configs/handle_l3fwd-2.cfg6
-rw-r--r--samples/vnf_samples/nsut/prox/configs/handle_l3fwd-4.cfg10
-rw-r--r--samples/vnf_samples/nsut/prox/prox-baremetal-2.yaml2
-rw-r--r--samples/vnf_samples/nsut/prox/prox_tg_bm.yaml38
-rw-r--r--samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_l2fwd-2.yaml97
-rw-r--r--samples/vnf_samples/nsut/prox/tc_prox_sriov_l2fwd-2.yaml85
-rw-r--r--samples/vnf_samples/nsut/vepc/landslide_tg_topology.yaml50
-rw-r--r--samples/vnf_samples/nsut/vepc/tc_epc_default_bearer_create_landslide.yaml58
-rw-r--r--samples/vnf_samples/nsut/vepc/tc_epc_default_bearer_create_landslide_multi_dmf.yaml57
-rw-r--r--samples/vnf_samples/nsut/vepc/tc_epc_network_dedicated_bearer_create_landslide.yaml164
-rw-r--r--samples/vnf_samples/nsut/vepc/tc_epc_network_service_request_landslide.yaml67
-rw-r--r--samples/vnf_samples/nsut/vepc/tc_epc_saegw_tput_relocation_landslide.yaml62
-rw-r--r--samples/vnf_samples/nsut/vepc/tc_epc_ue_dedicated_bearer_create_landslide.yaml74
-rw-r--r--samples/vnf_samples/nsut/vepc/tc_epc_ue_service_request_landslide.yaml228
-rw-r--r--samples/vnf_samples/nsut/vepc/vepc_vnf_topology_landslide.yaml50
-rw-r--r--samples/vnf_samples/traffic_profiles/http_tests/HTTP_1b-requests_65000_concurrency.yaml59
-rw-r--r--samples/vnf_samples/traffic_profiles/landslide/landslide_dmf_fb_udp.yaml79
-rw-r--r--samples/vnf_samples/traffic_profiles/landslide/landslide_dmf_fb_udp_tcp.yaml136
-rw-r--r--samples/vnf_samples/traffic_profiles/landslide/landslide_dmf_udp.yaml79
-rw-r--r--samples/vnf_samples/traffic_profiles/landslide/landslide_dmf_udp_tcp.yaml136
-rw-r--r--samples/vnf_samples/traffic_profiles/landslide/landslide_session_default_bearer.yaml147
-rw-r--r--samples/vnf_samples/traffic_profiles/landslide/landslide_session_default_bearer_multi_dmf.yaml150
-rw-r--r--samples/vnf_samples/traffic_profiles/landslide/landslide_session_network_dedicated_bearer.yaml681
-rw-r--r--samples/vnf_samples/traffic_profiles/landslide/landslide_session_network_service_request.yaml341
-rw-r--r--samples/vnf_samples/traffic_profiles/landslide/landslide_session_saegw_relocation.yaml177
-rw-r--r--samples/vnf_samples/traffic_profiles/landslide/landslide_session_ue_dedicated_bearer.yaml353
-rw-r--r--samples/vnf_samples/traffic_profiles/landslide/landslide_session_ue_service_request.yaml378
-rw-r--r--samples/vnf_samples/traffic_profiles/vfw/HTTP-vFW_IPv4_2Ports_Concurrency.rxf24
-rw-r--r--samples/vnf_samples/vnf_descriptors/agnostic_vnf.yaml44
-rw-r--r--samples/vnf_samples/vnf_descriptors/tg_landslide_tpl.yaml38
-rw-r--r--samples/vnf_samples/vnf_descriptors/vepc_vnf.yaml38
-rw-r--r--tests/opnfv/test_cases/opnfv_yardstick_tc074.yaml10
-rw-r--r--tox.ini11
-rw-r--r--yardstick/benchmark/contexts/standalone/model.py2
-rw-r--r--yardstick/benchmark/contexts/standalone/ovs_dpdk.py19
-rw-r--r--yardstick/benchmark/runners/duration.py3
-rw-r--r--yardstick/benchmark/runners/proxduration.py3
-rw-r--r--yardstick/benchmark/scenarios/base.py3
-rw-r--r--yardstick/benchmark/scenarios/networking/vnf_generic.py3
-rw-r--r--yardstick/benchmark/scenarios/parser/parser.py2
-rw-r--r--yardstick/benchmark/scenarios/storage/storperf.py19
-rw-r--r--yardstick/common/exceptions.py16
-rw-r--r--yardstick/network_services/libs/ixia_libs/ixnet/ixnet_api.py335
-rw-r--r--yardstick/network_services/traffic_profile/__init__.py1
-rw-r--r--yardstick/network_services/traffic_profile/base.py3
-rw-r--r--yardstick/network_services/traffic_profile/http.py4
-rw-r--r--yardstick/network_services/traffic_profile/http_ixload.py103
-rw-r--r--yardstick/network_services/traffic_profile/ixia_rfc2544.py145
-rw-r--r--yardstick/network_services/traffic_profile/landslide_profile.py47
-rw-r--r--yardstick/network_services/traffic_profile/prox_binsearch.py9
-rw-r--r--yardstick/network_services/traffic_profile/prox_profile.py5
-rw-r--r--yardstick/network_services/utils.py3
-rw-r--r--yardstick/network_services/vnf_generic/vnf/agnostic_vnf.py46
-rw-r--r--yardstick/network_services/vnf_generic/vnf/epc_vnf.py53
-rw-r--r--yardstick/network_services/vnf_generic/vnf/prox_helpers.py2
-rw-r--r--yardstick/network_services/vnf_generic/vnf/sample_vnf.py18
-rw-r--r--yardstick/network_services/vnf_generic/vnf/tg_ixload.py35
-rw-r--r--yardstick/network_services/vnf_generic/vnf/tg_landslide.py1226
-rw-r--r--yardstick/network_services/vnf_generic/vnf/tg_rfc2544_ixia.py8
-rw-r--r--yardstick/tests/functional/common/test_packages.py9
-rw-r--r--yardstick/tests/unit/benchmark/runner/test_arithmetic.py228
-rw-r--r--yardstick/tests/unit/benchmark/runner/test_duration.py18
-rw-r--r--yardstick/tests/unit/benchmark/runner/test_proxduration.py2
-rw-r--r--yardstick/tests/unit/benchmark/scenarios/compute/test_lmbench.py56
-rw-r--r--yardstick/tests/unit/network_services/libs/ixia_libs/test_ixnet_api.py160
-rw-r--r--yardstick/tests/unit/network_services/traffic_profile/test_http.py10
-rw-r--r--yardstick/tests/unit/network_services/traffic_profile/test_http_ixload.py129
-rw-r--r--yardstick/tests/unit/network_services/traffic_profile/test_ixia_rfc2544.py11
-rw-r--r--yardstick/tests/unit/network_services/traffic_profile/test_landslide_profile.py136
-rw-r--r--yardstick/tests/unit/network_services/traffic_profile/test_prox_profile.py4
-rw-r--r--yardstick/tests/unit/network_services/vnf_generic/vnf/test_agnostic_vnf.py70
-rw-r--r--yardstick/tests/unit/network_services/vnf_generic/vnf/test_epc_vnf.py94
-rw-r--r--yardstick/tests/unit/network_services/vnf_generic/vnf/test_prox_helpers.py6
-rw-r--r--yardstick/tests/unit/network_services/vnf_generic/vnf/test_sample_vnf.py2
-rw-r--r--yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_ixload.py17
-rw-r--r--yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_landslide.py1954
149 files changed, 26060 insertions, 769 deletions
diff --git a/.gitignore b/.gitignore
index 8be48ac62..79e351fce 100644
--- a/.gitignore
+++ b/.gitignore
@@ -33,3 +33,5 @@ cover/
.idea/
# tox virtualenvs
.tox/
+# docs build artifacts
+docs/_build/*
diff --git a/INFO b/INFO
index 63450ce32..8b3da274e 100644
--- a/INFO
+++ b/INFO
@@ -22,6 +22,7 @@ chenjiankun1@huawei.com
rodolfo.alonso.hernandez@intel.com
emma.l.foley@intel.com
abhijit.sinha@intel.com
+volodymyrx.mytnyk@intel.com
Link to TSC approval: http://meetbot.opnfv.org/meetings/
Link to approval of additional submitters:
diff --git a/INFO.yaml b/INFO.yaml
index a3780da61..8776e830e 100644
--- a/INFO.yaml
+++ b/INFO.yaml
@@ -74,6 +74,10 @@ committers:
email: 'ross.b.brattain@intel.com'
id: 'rbbratta'
company: 'intel.com'
+ - name: 'Volodymyr Mytnyk'
+ email: 'volodymyrx.mytnyk@intel.com'
+ id: 'vmytnykx'
+ company: 'intel.com'
tsc:
# yamllint disable rule:line-length
approval: 'http//meetbot.opnfv.org/meetings/'
diff --git a/ansible/roles/configure_rabbitmq/tasks/main.yml b/ansible/roles/configure_rabbitmq/tasks/main.yml
index 3ad60c1ea..4ff4222dc 100644
--- a/ansible/roles/configure_rabbitmq/tasks/main.yml
+++ b/ansible/roles/configure_rabbitmq/tasks/main.yml
@@ -12,6 +12,16 @@
# See the License for the specific language governing permissions and
# limitations under the License.
---
+- name: Create rabbitmq configuration
+ template:
+ src: rabbitmq.config.j2
+ dest: /etc/rabbitmq/rabbitmq.config
+
+- name: Define user definitions file
+ template:
+ src: user_definitions.json.j2
+ dest: /etc/rabbitmq/definitions.json
+
- name: Restart rabbitmq
service:
name: rabbitmq-server
@@ -20,11 +30,5 @@
- name: rabbitmqctl start_app
shell: rabbitmqctl start_app
-- name: Configure rabbitmq
- rabbitmq_user:
- user: yardstick
- password: yardstick
- configure_priv: .*
- read_priv: .*
- write_priv: .*
- state: present
+- name: Enable management plugin
+ shell: rabbitmq-plugins enable rabbitmq_management
diff --git a/ansible/roles/configure_rabbitmq/templates/rabbitmq.config.j2 b/ansible/roles/configure_rabbitmq/templates/rabbitmq.config.j2
new file mode 100644
index 000000000..8f07edf5c
--- /dev/null
+++ b/ansible/roles/configure_rabbitmq/templates/rabbitmq.config.j2
@@ -0,0 +1,5 @@
+ [
+ {rabbitmq_management, [
+ {load_definitions, "/etc/rabbitmq/definitions.json"}
+ ]}
+]. \ No newline at end of file
diff --git a/ansible/roles/configure_rabbitmq/templates/user_definitions.json.j2 b/ansible/roles/configure_rabbitmq/templates/user_definitions.json.j2
new file mode 100644
index 000000000..7c811f16d
--- /dev/null
+++ b/ansible/roles/configure_rabbitmq/templates/user_definitions.json.j2
@@ -0,0 +1,23 @@
+ {
+ "users": [{
+ "name": "yardstick",
+ "password_hash": "XHp9fBOE3vjTEf7ktiUBHqefW2g=",
+ "hashing_algorithm": "rabbit_password_hashing_sha256",
+ "tags": ""
+ }],
+ "vhosts": [{
+ "name": "/"
+ }],
+ "permissions": [{
+ "user": "yardstick",
+ "vhost": "/",
+ "configure": ".*",
+ "write": ".*",
+ "read": ".*"
+ }],
+ "parameters": [],
+ "policies": [],
+ "queues": [],
+ "exchanges": [],
+ "bindings": []
+}
diff --git a/ansible/roles/download_samplevnfs/defaults/main.yml b/ansible/roles/download_samplevnfs/defaults/main.yml
index c5e880e57..104f594f5 100644
--- a/ansible/roles/download_samplevnfs/defaults/main.yml
+++ b/ansible/roles/download_samplevnfs/defaults/main.yml
@@ -1,4 +1,16 @@
---
+# samplevnf_version must be a valid version accepted by "git checkout"
+# It can be either:
+# - a branch name: fetch branch latest commits, as of installation time
+# - a tag name: frozen and reproducible, from stable branches, or
+# - a commit id: frozen and reproducible, from any branch
+# Some examples:
+# - branch name: "master", "stable/gambia", "stable/fraser"
+# - tag name: "opnfv-6.2.0"
+# - commit id: "3afd384b7e68a3cd29f4d2cdf39785f8441d0b6f"
+# Please refer to https://git.opnfv.org/samplevnf for possible values
+# beyond the one specified below
+
samplevnf_url: "https://git.opnfv.org/samplevnf"
samplevnf_dest: "{{ clone_dest }}/samplevnf"
-samplevnf_version: "stable/fraser"
+samplevnf_version: "3afd384b7e68a3cd29f4d2cdf39785f8441d0b6f"
diff --git a/dashboard/NSB-vEPC-Network-Metrics-1540991445293.json b/dashboard/NSB-vEPC-Network-Metrics-1540991445293.json
new file mode 100644
index 000000000..3d75aba91
--- /dev/null
+++ b/dashboard/NSB-vEPC-Network-Metrics-1540991445293.json
@@ -0,0 +1,1354 @@
+{
+ "__inputs": [
+ {
+ "name": "DS_YARDSTICK",
+ "label": "YardStick",
+ "description": "",
+ "type": "datasource",
+ "pluginId": "influxdb",
+ "pluginName": "InfluxDB"
+ },
+ {
+ "name": "DS_COLLECTD",
+ "label": "collectd",
+ "description": "",
+ "type": "datasource",
+ "pluginId": "influxdb",
+ "pluginName": "InfluxDB"
+ },
+ {
+ "name": "VAR_RUN_ID",
+ "type": "constant",
+ "label": "run_id",
+ "value": "45",
+ "description": ""
+ }
+ ],
+ "__requires": [
+ {
+ "type": "grafana",
+ "id": "grafana",
+ "name": "Grafana",
+ "version": "4.6.3"
+ },
+ {
+ "type": "panel",
+ "id": "graph",
+ "name": "Graph",
+ "version": ""
+ },
+ {
+ "type": "datasource",
+ "id": "influxdb",
+ "name": "InfluxDB",
+ "version": "1.0.0"
+ },
+ {
+ "type": "panel",
+ "id": "singlestat",
+ "name": "Singlestat",
+ "version": ""
+ },
+ {
+ "type": "panel",
+ "id": "table",
+ "name": "Table",
+ "version": ""
+ },
+ {
+ "type": "panel",
+ "id": "text",
+ "name": "Text",
+ "version": ""
+ }
+ ],
+ "annotations": {
+ "list": [
+ {
+ "builtIn": 1,
+ "datasource": "-- Grafana --",
+ "enable": true,
+ "hide": true,
+ "iconColor": "rgba(0, 211, 255, 1)",
+ "name": "Annotations & Alerts",
+ "type": "dashboard"
+ }
+ ]
+ },
+ "editable": true,
+ "gnetId": null,
+ "graphTooltip": 0,
+ "hideControls": false,
+ "id": null,
+ "links": [],
+ "refresh": "5s",
+ "rows": [
+ {
+ "collapse": false,
+ "height": 1,
+ "panels": [
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "#299c46",
+ "rgba(237, 129, 40, 0.89)",
+ "#d44a3a"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "180",
+ "id": 6,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Test iterations",
+ "dsType": "influxdb",
+ "groupBy": [],
+ "measurement": "Test session config",
+ "orderByTime": "ASC",
+ "policy": "autogen",
+ "query": "SELECT max(\"tg__0.iteration\") FROM \"tc_epc_default_bearer_create_an_landslide\" WHERE \"tg__0.run_id\" = $run_id ",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "iterations"
+ ],
+ "type": "field"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": "",
+ "title": "Number of test Iterations",
+ "type": "singlestat",
+ "valueFontSize": "80%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "current"
+ },
+ {
+ "content": "<a style=\"font-size: 26px; color=#31A7D3\"><center>NSB vEPC Test : UE default bearer connections/disconnections using Spirent Landslide</center></a>\n<p>Test session details:</p>\n<ul style=\"margin-left: 10px\">\n<li>Spirent testcase covers simulation of UE, ENodeB and MME entities.</li>\n<li>vEPC VNF consists of 3 modules Subscriber Module, Management Module & Content Module.</li>\n<li>Listed below is the tests for <b>Network</b>, <b>NFVi / Platform</b> & <b>VNF</b> Metrics</li></ul>\n<p style=\"margin-left: 10px\">This test session aims to <b>create</b> and later <b>delete</b> a batch of user specified <b>UE sessions</b>. Once all sessions are established a specific data traffic flow should be transferred thru vEPC infrastructure.<p>",
+ "id": 12,
+ "links": [],
+ "mode": "html",
+ "span": 10,
+ "title": "",
+ "type": "text"
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Dashboard Row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": -103,
+ "panels": [],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Dashboard Row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": 35,
+ "panels": [
+ {
+ "content": "<a style=\"font-size: 26px; color=#31A7D3\"><center>Network Metrics </center></a>",
+ "description": "",
+ "id": 33,
+ "links": [],
+ "mode": "html",
+ "span": 12,
+ "title": "",
+ "type": "text"
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Dashboard Row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": "0",
+ "panels": [
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "#299c46",
+ "rgba(237, 129, 40, 0.89)",
+ "#d44a3a"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "30",
+ "id": 3,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 3,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "dsType": "influxdb",
+ "groupBy": [],
+ "measurement": "Test Summary",
+ "orderByTime": "ASC",
+ "policy": "autogen",
+ "query": "SELECT max(\"tg__0.Test Summary::Actual Session Connects\") FROM \"tc_epc_default_bearer_create_an_landslide\" WHERE \"tg__0.run_id\" = $run_id AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "Actual Session Connects"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "max"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "run_id",
+ "operator": "=~",
+ "value": "/^$run_id$/"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "Network | Total created sessions",
+ "type": "singlestat",
+ "valueFontSize": "80%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "#299c46",
+ "rgba(237, 129, 40, 0.89)",
+ "#d44a3a"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "30",
+ "id": 8,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 3,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "dsType": "influxdb",
+ "groupBy": [],
+ "measurement": "Test Summary",
+ "orderByTime": "ASC",
+ "policy": "autogen",
+ "query": "SELECT max(\"tg__0.Test Summary::Actual Connect Rate (Sessions/Second) (P-I)\") FROM \"tc_epc_default_bearer_create_an_landslide\" WHERE \"tg__0.run_id\" = $run_id ",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "Actual Connect Rate (Sessions/Second) (P-I)"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "max"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "run_id",
+ "operator": "=~",
+ "value": "/^$run_id$/"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "Network | Rate of created sessions",
+ "type": "singlestat",
+ "valueFontSize": "80%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "#299c46",
+ "rgba(237, 129, 40, 0.89)",
+ "#d44a3a"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "30",
+ "id": 10,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 3,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "dsType": "influxdb",
+ "groupBy": [],
+ "measurement": "Test Summary",
+ "orderByTime": "ASC",
+ "policy": "autogen",
+ "query": "SELECT max(\"tg__0.Test Summary::Actual Session Disconnects\") FROM \"tc_epc_default_bearer_create_an_landslide\" WHERE \"tg__0.run_id\" = $run_id AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "Actual Session Disconnects"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "max"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "run_id",
+ "operator": "=~",
+ "value": "/^$run_id$/"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "Network | Total disconnected sessions",
+ "type": "singlestat",
+ "valueFontSize": "80%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "#299c46",
+ "rgba(237, 129, 40, 0.89)",
+ "#d44a3a"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "30",
+ "id": 9,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 3,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "dsType": "influxdb",
+ "groupBy": [],
+ "measurement": "Test Summary",
+ "orderByTime": "ASC",
+ "policy": "autogen",
+ "query": "SELECT max(\"tg__0.Test Summary::Actual Disconnect Rate (Sessions/Second) (P-I)\") FROM \"tc_epc_default_bearer_create_an_landslide\" WHERE \"tg__0.run_id\" = $run_id ",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "Actual Disconnect Rate (Sessions/Second) (P-I)"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "max"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "run_id",
+ "operator": "=~",
+ "value": "/^$run_id$/"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "Network | Rate of disconnected sessions",
+ "type": "singlestat",
+ "valueFontSize": "80%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Dashboard Row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": "250",
+ "panels": [
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_YARDSTICK}",
+ "fill": 1,
+ "id": 2,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "show": true,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "Total created sessions",
+ "dsType": "influxdb",
+ "groupBy": [],
+ "measurement": "Test Summary",
+ "orderByTime": "ASC",
+ "policy": "autogen",
+ "query": "SELECT \"tg__0.Test Summary::Actual Session Connects\" FROM \"tc_epc_default_bearer_create_an_landslide\" WHERE \"tg__0.run_id\" = $run_id AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "Actual Session Connects"
+ ],
+ "type": "field"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "run_id",
+ "operator": "=~",
+ "value": "/^$run_id$/"
+ }
+ ]
+ },
+ {
+ "alias": "Total disconnected sessions",
+ "dsType": "influxdb",
+ "groupBy": [],
+ "hide": false,
+ "measurement": "Test Summary",
+ "orderByTime": "ASC",
+ "policy": "autogen",
+ "query": "SELECT \"tg__0.Test Summary::Actual Session Disconnects\" FROM \"tc_epc_default_bearer_create_an_landslide\" WHERE \"tg__0.run_id\" = $run_id AND $timeFilter",
+ "rawQuery": true,
+ "refId": "B",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "Actual Session Disconnects"
+ ],
+ "type": "field"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "run_id",
+ "operator": "=~",
+ "value": "/^$run_id$/"
+ }
+ ]
+ }
+ ],
+ "thresholds": [],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Network | Total UE Sessions created/deleted",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": "Total Sessions",
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_YARDSTICK}",
+ "fill": 1,
+ "id": 7,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "show": true,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 3,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "Rate of sessions creation",
+ "dsType": "influxdb",
+ "groupBy": [],
+ "hide": false,
+ "measurement": "Test Summary",
+ "orderByTime": "ASC",
+ "policy": "autogen",
+ "query": "SELECT \"tg__0.Test Summary::Actual Connect Rate (Sessions/Second) (P-I)\" FROM \"tc_epc_default_bearer_create_an_landslide\" WHERE \"tg__0.run_id\" = $run_id AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "Actual Connect Rate (Sessions/Second) (P-I)"
+ ],
+ "type": "field"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "run_id",
+ "operator": "=~",
+ "value": "/^$run_id$/"
+ }
+ ]
+ },
+ {
+ "alias": "Rate of sessions deletion",
+ "dsType": "influxdb",
+ "groupBy": [],
+ "hide": false,
+ "measurement": "Test Summary",
+ "orderByTime": "ASC",
+ "policy": "autogen",
+ "query": "SELECT \"tg__0.Test Summary::Actual Disconnect Rate (Sessions/Second) (P-I)\" FROM \"tc_epc_default_bearer_create_an_landslide\" WHERE \"tg__0.run_id\" = $run_id AND $timeFilter",
+ "rawQuery": true,
+ "refId": "B",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "Actual Disconnect Rate (Sessions/Second) (P-I)"
+ ],
+ "type": "field"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "run_id",
+ "operator": "=~",
+ "value": "/^$run_id$/"
+ }
+ ]
+ }
+ ],
+ "thresholds": [],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Network | Rate of sessions creation/deletion",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": "Rate, sessions/second",
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Dashboard Row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": 196,
+ "panels": [
+ {
+ "columns": [
+ {
+ "text": "Max",
+ "value": "max"
+ }
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "fontSize": "100%",
+ "id": 5,
+ "links": [],
+ "pageSize": null,
+ "scroll": true,
+ "showHeader": true,
+ "sort": {
+ "col": 0,
+ "desc": true
+ },
+ "span": 4,
+ "styles": [
+ {
+ "alias": "Time",
+ "dateFormat": "YYYY-MM-DD HH:mm:ss",
+ "pattern": "Time",
+ "type": "date"
+ },
+ {
+ "alias": "",
+ "colorMode": null,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "decimals": 2,
+ "pattern": "/.*/",
+ "thresholds": [],
+ "type": "number",
+ "unit": "short"
+ }
+ ],
+ "targets": [
+ {
+ "alias": "at S1-U interface",
+ "dsType": "influxdb",
+ "groupBy": [],
+ "measurement": "MME GTP Node",
+ "orderByTime": "ASC",
+ "policy": "autogen",
+ "query": "SELECT \"tg__0.MME GTP Node::Total Bits Sent/Sec (P-I)\" FROM \"tc_epc_default_bearer_create_an_landslide\" WHERE \"tg__0.run_id\" = $run_id ",
+ "rawQuery": true,
+ "refId": "B",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "Total Bits Sent/Sec (P-I)"
+ ],
+ "type": "field"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "run_id",
+ "operator": "=~",
+ "value": "/^$run_id$/"
+ }
+ ]
+ },
+ {
+ "alias": "at SGi interface",
+ "dsType": "influxdb",
+ "groupBy": [],
+ "measurement": "L3 Client",
+ "orderByTime": "ASC",
+ "policy": "autogen",
+ "query": "SELECT \"tg__0.L3 Client::Total Bits Sent/Sec (P-I)\" FROM \"tc_epc_default_bearer_create_an_landslide\" WHERE \"tg__0.run_id\" = $run_id ",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "Total Bits Sent/Sec (P-I)"
+ ],
+ "type": "field"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "run_id",
+ "operator": "=~",
+ "value": "/^$run_id$/"
+ }
+ ]
+ }
+ ],
+ "title": "Network | Throughput, bps",
+ "transform": "timeseries_aggregations",
+ "type": "table"
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_YARDSTICK}",
+ "fill": 1,
+ "id": 11,
+ "legend": {
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 8,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "S1-U interface",
+ "dsType": "influxdb",
+ "groupBy": [],
+ "measurement": "MME GTP Node",
+ "orderByTime": "ASC",
+ "policy": "autogen",
+ "query": "SELECT \"tg__0.MME GTP Node::Total Bits Sent/Sec (P-I)\" FROM \"tc_epc_default_bearer_create_an_landslide\" WHERE \"tg__0.run_id\" = $run_id AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "Total Bits Sent/Sec (P-I)"
+ ],
+ "type": "field"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "run_id",
+ "operator": "=~",
+ "value": "/^$run_id$/"
+ }
+ ]
+ },
+ {
+ "alias": "SGi interface",
+ "dsType": "influxdb",
+ "groupBy": [],
+ "measurement": "L3 Client",
+ "orderByTime": "ASC",
+ "policy": "autogen",
+ "query": "SELECT \"tg__0.L3 Client::Total Bits Sent/Sec (P-I)\" FROM \"tc_epc_default_bearer_create_an_landslide\" WHERE \"tg__0.run_id\" = $run_id AND $timeFilter",
+ "rawQuery": true,
+ "refId": "B",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "Total Bits Sent/Sec (P-I)"
+ ],
+ "type": "field"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": [],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Network | Throughput, bps",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": "Throughput, bps",
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Dashboard Row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": 250,
+ "panels": [
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_COLLECTD}",
+ "fill": 1,
+ "id": 34,
+ "legend": {
+ "alignAsTable": true,
+ "avg": false,
+ "current": false,
+ "max": false,
+ "min": false,
+ "rightSide": true,
+ "show": true,
+ "total": false,
+ "values": false
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 12,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "CPU Idle Core $tag_instance",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "instance"
+ ],
+ "type": "tag"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "cpu_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "distinct"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=",
+ "value": "00966082-8831-E711-906E-0017A4403562"
+ },
+ {
+ "condition": "AND",
+ "key": "type_instance",
+ "operator": "=",
+ "value": "idle"
+ }
+ ]
+ }
+ ],
+ "thresholds": [],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "CPU | Idle",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "percent",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Dashboard Row",
+ "titleSize": "h6"
+ }
+ ],
+ "schemaVersion": 14,
+ "style": "dark",
+ "tags": [],
+ "templating": {
+ "list": [
+ {
+ "current": {
+ "value": "${VAR_RUN_ID}",
+ "text": "${VAR_RUN_ID}"
+ },
+ "hide": 0,
+ "label": "",
+ "name": "run_id",
+ "options": [
+ {
+ "value": "${VAR_RUN_ID}",
+ "text": "${VAR_RUN_ID}"
+ }
+ ],
+ "query": "${VAR_RUN_ID}",
+ "type": "constant"
+ }
+ ]
+ },
+ "time": {
+ "from": "now/d",
+ "to": "now"
+ },
+ "timepicker": {
+ "refresh_intervals": [
+ "5s",
+ "10s",
+ "30s",
+ "1m",
+ "5m",
+ "15m",
+ "30m",
+ "1h",
+ "2h",
+ "1d"
+ ],
+ "time_options": [
+ "5m",
+ "15m",
+ "1h",
+ "6h",
+ "12h",
+ "24h",
+ "2d",
+ "7d",
+ "30d"
+ ]
+ },
+ "timezone": "",
+ "title": "NSB vEPC Network Metrics Abhijit",
+ "version": 1
+} \ No newline at end of file
diff --git a/dashboard/Prox_Baremetal_L3FWD-4Port_NFVi-1540906828739.json b/dashboard/Prox_Baremetal_L3FWD-4Port_NFVi-1540906828739.json
new file mode 100644
index 000000000..53d8cc2c2
--- /dev/null
+++ b/dashboard/Prox_Baremetal_L3FWD-4Port_NFVi-1540906828739.json
@@ -0,0 +1,13889 @@
+{
+ "__inputs": [
+ {
+ "name": "DS_YARDSTICK",
+ "label": "yardstick",
+ "description": "",
+ "type": "datasource",
+ "pluginId": "influxdb",
+ "pluginName": "InfluxDB"
+ },
+ {
+ "name": "DS_COLLECTD",
+ "label": "collectd",
+ "description": "",
+ "type": "datasource",
+ "pluginId": "influxdb",
+ "pluginName": "InfluxDB"
+ }
+ ],
+ "__requires": [
+ {
+ "type": "panel",
+ "id": "blackmirror1-singlestat-math-panel",
+ "name": "Singlestat Math",
+ "version": "1.1.5"
+ },
+ {
+ "type": "grafana",
+ "id": "grafana",
+ "name": "Grafana",
+ "version": "4.6.3"
+ },
+ {
+ "type": "panel",
+ "id": "graph",
+ "name": "Graph",
+ "version": ""
+ },
+ {
+ "type": "datasource",
+ "id": "influxdb",
+ "name": "InfluxDB",
+ "version": "1.0.0"
+ },
+ {
+ "type": "panel",
+ "id": "singlestat",
+ "name": "Singlestat",
+ "version": ""
+ },
+ {
+ "type": "panel",
+ "id": "text",
+ "name": "Text",
+ "version": ""
+ }
+ ],
+ "annotations": {
+ "list": [
+ {
+ "builtIn": 1,
+ "datasource": "-- Grafana --",
+ "enable": true,
+ "hide": true,
+ "iconColor": "rgba(0, 211, 255, 1)",
+ "name": "Annotations & Alerts",
+ "type": "dashboard"
+ }
+ ]
+ },
+ "editable": true,
+ "gnetId": null,
+ "graphTooltip": 0,
+ "hideControls": false,
+ "id": null,
+ "links": [],
+ "refresh": false,
+ "rows": [
+ {
+ "collapse": false,
+ "height": -6,
+ "panels": [
+ {
+ "content": "<h5 style=\"font-family:Verdana\"> <a style=\"color:#31A7D3\"><a style=\"font: 32px '#31A7D3'\"><center>OPNFV_Yardstick_NSB_PROX_Baremetal_L3FWD_4Port_Test</center> </a></h5>\n<center>\n<p>\n<p style=\"font: 24px '#FF5733'\"> \nThe application does Port forwarding without touching packets. It will take packets in from one port and forward them unmodified to another port \nThe KPI is the number of packets per second for a specified packet size with an accepted minimal packet loss\n</a>\n</p>\n</center>",
+ "editable": true,
+ "error": false,
+ "height": "200px",
+ "id": 3,
+ "links": [],
+ "mode": "html",
+ "span": 8,
+ "title": "",
+ "type": "text"
+ },
+ {
+ "content": "<h5 style=\"font-family:Verdana\"> <a style=\"font: 28px '#31A7D3'\"><center>Test Parameters</center> </a></h5>\n",
+ "editable": true,
+ "error": false,
+ "height": "90px",
+ "id": 124,
+ "links": [],
+ "mode": "html",
+ "span": 4,
+ "title": "",
+ "type": "text"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 125,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.duration"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": "",
+ "title": "Test Interval",
+ "type": "singlestat",
+ "valueFontSize": "80%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 126,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.test_precision"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": "",
+ "title": "Test Precision",
+ "type": "singlestat",
+ "valueFontSize": "80%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 127,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.test_duration"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": "",
+ "title": "Test Duration",
+ "type": "singlestat",
+ "valueFontSize": "80%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 128,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.tolerated_loss"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": "",
+ "title": "Tolerated Loss",
+ "type": "singlestat",
+ "valueFontSize": "80%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": "300",
+ "panels": [
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "fill": 1,
+ "height": "300px",
+ "id": 123,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "show": true,
+ "sortDesc": true,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 12,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "Cumulative Packets Sents",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "vnf__0.packets_fwd"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "custom",
+ "fill": true,
+ "fillColor": "#3f2b5b",
+ "line": true,
+ "lineColor": "rgba(0, 0, 0, 0)",
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Cumulative Load Sent by Generator",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": "Packets Per Second",
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": true,
+ "title": "Cumulative Load Sent by Generator",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": "60",
+ "panels": [
+ {
+ "content": "<h5 style=\"font-family:Verdana\"> <a style=\"color:#31A7D3\"><a style=\"font: 22px '#31A7D3'\"><center>Throughput</center> </a></h5>\n",
+ "editable": true,
+ "error": false,
+ "height": "40",
+ "id": 7,
+ "links": [],
+ "minSpan": 12,
+ "mode": "html",
+ "span": 12,
+ "title": "",
+ "type": "text"
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "editable": true,
+ "error": false,
+ "fill": 1,
+ "grid": {},
+ "height": "300px",
+ "id": 2,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "show": true,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": true,
+ "targets": [
+ {
+ "alias": "Load Requested to Generator",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.RequestedTxThroughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ },
+ {
+ "alias": "Load Generated (by the Generator)",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.TxThroughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ },
+ {
+ "alias": "Load Received (by the Generator)",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "B",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.RxThroughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "custom",
+ "fill": true,
+ "fillColor": "rgba(234, 112, 112, 0.22)",
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Generator stats",
+ "tooltip": {
+ "msResolution": true,
+ "shared": true,
+ "sort": 0,
+ "value_type": "cumulative"
+ },
+ "transparent": false,
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": "Million Packets Per Second",
+ "logBase": 1,
+ "max": null,
+ "min": "0",
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": false
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_YARDSTICK}",
+ "editable": true,
+ "error": false,
+ "fill": 1,
+ "grid": {},
+ "height": "300px",
+ "id": 5,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "show": true,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": true,
+ "targets": [
+ {
+ "alias": "Packet Size",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.PktSize"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "custom",
+ "fill": true,
+ "fillColor": "rgba(234, 112, 112, 0.22)",
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Packet size",
+ "tooltip": {
+ "msResolution": true,
+ "shared": true,
+ "sort": 0,
+ "value_type": "cumulative"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "none",
+ "label": "Packet Size (Bytes)",
+ "logBase": 1,
+ "max": null,
+ "min": "0",
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "New row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": 169,
+ "panels": [
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "editable": true,
+ "error": false,
+ "fill": 1,
+ "grid": {},
+ "height": "300",
+ "id": 4,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "rightSide": false,
+ "show": true,
+ "sortDesc": true,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 1,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": true,
+ "targets": [
+ {
+ "alias": "SUT Packets Received",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$interval"
+ ],
+ "type": "time"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "C",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "vnf__0.curr_packets_in"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ },
+ {
+ "params": [
+ " / 1000000"
+ ],
+ "type": "math"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "custom",
+ "fill": true,
+ "fillColor": "rgba(234, 112, 112, 0.22)",
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "SUT Stats - Load Received By SUT",
+ "tooltip": {
+ "msResolution": true,
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": "Million Packets per Second",
+ "logBase": 1,
+ "max": null,
+ "min": "0",
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": "0",
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "editable": true,
+ "error": false,
+ "fill": 1,
+ "grid": {},
+ "height": "300px",
+ "id": 39,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "rightSide": false,
+ "show": true,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 1,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": true,
+ "targets": [
+ {
+ "alias": "SUT Packets Sent",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "vnf__0.curr_packets_fwd"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ },
+ {
+ "params": [
+ " / 1000000"
+ ],
+ "type": "math"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "custom",
+ "fill": true,
+ "fillColor": "rgba(234, 112, 112, 0.22)",
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "SUT Stats - Load Forwarded By SUT",
+ "tooltip": {
+ "msResolution": true,
+ "shared": true,
+ "sort": 0,
+ "value_type": "cumulative"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": "Million Packets per Second",
+ "logBase": 1,
+ "max": null,
+ "min": "0",
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "content": "<h5 style=\"font-family:Verdana\"> <a style=\"color:#31A7D3\"><a style=\"font: 22px '#31A7D3'\"><center>Prox L3Fwd Traffic Gen stats</center> </a></h5>\n",
+ "editable": true,
+ "error": false,
+ "height": "40",
+ "id": 8,
+ "links": [],
+ "minSpan": 12,
+ "mode": "html",
+ "span": 12,
+ "title": "",
+ "type": "text"
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "editable": true,
+ "error": false,
+ "fill": 1,
+ "grid": {},
+ "height": "300px",
+ "id": 43,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "show": true,
+ "sortDesc": true,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": true,
+ "targets": [
+ {
+ "alias": "TG xe-0 Out packets",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT mean(\"tg__0.collect_stats.xe0.out_packets\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE $timeFilter GROUP BY time($interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.xe0.out_packets"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ },
+ {
+ "alias": "TG xe-1 Out packets",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT mean(\"tg__0.collect_stats.xe1.out_packets\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE $timeFilter GROUP BY time($interval) fill(null)",
+ "rawQuery": true,
+ "refId": "B",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.xe1.out_packets"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ },
+ {
+ "alias": "TG xe-2 Out packets",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT mean(\"tg__0.collect_stats.xe2.out_packets\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE $timeFilter GROUP BY time($interval) fill(null)",
+ "rawQuery": true,
+ "refId": "C",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.xe2.out_packets"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ },
+ {
+ "alias": "TG xe-3 Out packets",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT mean(\"tg__0.collect_stats.xe3.out_packets\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE $timeFilter GROUP BY time($interval) fill(null)",
+ "rawQuery": true,
+ "refId": "D",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.xe3.out_packets"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "custom",
+ "fill": true,
+ "fillColor": "rgba(216, 200, 27, 0.27)",
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Packets Sent by Generator",
+ "tooltip": {
+ "msResolution": true,
+ "shared": true,
+ "sort": 0,
+ "value_type": "cumulative"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": "Packets ",
+ "logBase": 1,
+ "max": null,
+ "min": "0",
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_YARDSTICK}",
+ "editable": true,
+ "error": false,
+ "fill": 1,
+ "grid": {},
+ "height": "300px",
+ "id": 9,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "show": true,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "TG xe-0 in packets",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT mean(\"tg__0.collect_stats.xe0.in_packets\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE $timeFilter GROUP BY time($interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.xe0.in_packets"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ },
+ {
+ "alias": "TG xe-1 in packets",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT mean(\"tg__0.collect_stats.xe1.in_packets\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE $timeFilter GROUP BY time($interval) fill(null)",
+ "rawQuery": true,
+ "refId": "B",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.xe1.in_packets"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ },
+ {
+ "alias": "TG xe-2 in packets",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT mean(\"tg__0.collect_stats.xe2.in_packets\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE $timeFilter GROUP BY time($interval) fill(null)",
+ "rawQuery": true,
+ "refId": "C",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.xe2.in_packets"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ },
+ {
+ "alias": "TG xe-3 in packets",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT mean(\"tg__0.collect_stats.xe3.in_packets\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE $timeFilter GROUP BY time($interval) fill(null)",
+ "rawQuery": true,
+ "refId": "D",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.xe3.in_packets"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "custom",
+ "fill": true,
+ "fillColor": "rgba(216, 200, 27, 0.27)",
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Packets Received by Generator",
+ "tooltip": {
+ "msResolution": true,
+ "shared": true,
+ "sort": 0,
+ "value_type": "cumulative"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": "Packets Per Second",
+ "logBase": 1,
+ "max": null,
+ "min": "0",
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "New row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": "400px",
+ "panels": [
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_YARDSTICK}",
+ "fill": 1,
+ "height": "300px",
+ "id": 10,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "show": true,
+ "sort": null,
+ "sortDesc": null,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "SUCCESS Tx Total",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "none"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT \"tg__0.collect_stats.tx_total\" FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.tx_total\" = 'Success' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": false,
+ "refId": "B",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.tx_total"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.Status",
+ "operator": "=",
+ "value": "Success"
+ }
+ ]
+ },
+ {
+ "alias": "SUCCESS Rx Total",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.rx_total"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.Status",
+ "operator": "=",
+ "value": "Success"
+ }
+ ]
+ },
+ {
+ "alias": "SUCCESS ALLOWABLE LOST PACKETS",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "C",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.can_be_lost"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.Status",
+ "operator": "=",
+ "value": "Success"
+ }
+ ]
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "custom",
+ "fill": true,
+ "fillColor": "rgb(9, 35, 61)",
+ "line": true,
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "SUCCESS CRITERIA: TX Total = Rx Total + Tolerated Loss",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": "Packets Per Second",
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_YARDSTICK}",
+ "fill": 1,
+ "height": "300px",
+ "id": 129,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "show": true,
+ "sortDesc": true,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "MAX Line Rate",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT \"tg__0.collect_stats.tx_total\" FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.tx_total\" = 'Success' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": false,
+ "refId": "B",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.MAX_Rate"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ },
+ {
+ "alias": "MIN Line Rate",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.MIN_Rate"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ },
+ {
+ "alias": "Current Line Rate",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "C",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.Test_Rate"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "custom",
+ "fill": true,
+ "fillColor": "rgb(9, 35, 61)",
+ "line": true,
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Line Rate",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "percent",
+ "label": "Percentage of Line Rate",
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "content": "<h5 style=\"font-family:Verdana\"> <a style=\"color:#31A7D3\"><a style=\"font: 22px '#31A7D3'\"><center>Performance Stats</center> </a></h5>\n",
+ "editable": true,
+ "error": false,
+ "height": "30",
+ "id": 130,
+ "links": [],
+ "minSpan": 12,
+ "mode": "html",
+ "span": 12,
+ "title": "",
+ "type": "text"
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "New row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": 77,
+ "panels": [
+ {
+ "content": "<font size=\"1\"><center>Packet size</center></font>",
+ "height": "100px",
+ "id": 15,
+ "links": [],
+ "mode": "html",
+ "span": 1,
+ "title": "",
+ "type": "text"
+ },
+ {
+ "content": "<font size=\"1\"><center>Theoretical Max Throughput (MPPS)</center></font>",
+ "height": "100px",
+ "id": 16,
+ "links": [],
+ "mode": "html",
+ "span": 1,
+ "title": "",
+ "type": "text"
+ },
+ {
+ "content": "<font size=\"1\"><center>Tx Throughput (MPPS)</center></font>",
+ "height": "100px",
+ "id": 17,
+ "links": [],
+ "mode": "html",
+ "span": 1,
+ "title": "",
+ "type": "text"
+ },
+ {
+ "content": "<font size=\"1\"><center>Rx Throughput (MPPS)</center></font>",
+ "height": "100px",
+ "id": 58,
+ "links": [],
+ "mode": "html",
+ "span": 1,
+ "title": "",
+ "type": "text"
+ },
+ {
+ "content": "<font size=\"1\"><center>Tot Sent </center></font>",
+ "height": "100px",
+ "id": 61,
+ "links": [],
+ "mode": "html",
+ "span": 2,
+ "title": "",
+ "type": "text"
+ },
+ {
+ "content": "<font size=\"1\"><center>Tot Received</center></font>",
+ "height": "100px",
+ "id": 62,
+ "links": [],
+ "mode": "html",
+ "span": 2,
+ "title": "",
+ "type": "text"
+ },
+ {
+ "content": "<font size=\"1\"><center>Tot Dropped</center></font>",
+ "height": "100px",
+ "id": 63,
+ "links": [],
+ "mode": "html",
+ "span": 1,
+ "title": "",
+ "type": "text"
+ },
+ {
+ "content": "<font size=\"1\"><center>Tolerated Loss</center></font>",
+ "height": "100px",
+ "id": 64,
+ "links": [],
+ "mode": "html",
+ "span": 1,
+ "title": "",
+ "type": "text"
+ },
+ {
+ "content": "<font size=\"1\"><center>Rx Throughput (Gbps)</center></font>",
+ "height": "100px",
+ "id": 131,
+ "links": [],
+ "mode": "html",
+ "span": 2,
+ "title": "",
+ "type": "text"
+ },
+ {
+ "content": "",
+ "height": "100px",
+ "id": 133,
+ "links": [],
+ "mode": "html",
+ "span": 0,
+ "title": "",
+ "type": "text"
+ },
+ {
+ "content": "",
+ "height": "100px",
+ "id": 134,
+ "links": [],
+ "mode": "html",
+ "span": 0,
+ "title": "",
+ "type": "text"
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Dashboard Row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": -551,
+ "panels": [
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "hideTimeOverride": false,
+ "id": 18,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "PktSize = 64",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT mean(\"tg__0.collect_stats.PktSize\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 64 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.PktSize"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.PktSize",
+ "operator": "=",
+ "value": "64"
+ },
+ {
+ "condition": "AND",
+ "key": "tg__0.collect_stats.Status",
+ "operator": "=",
+ "value": "Result"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "hideTimeOverride": false,
+ "id": 19,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Theor Max Throughput (Mpps) 64",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.theor_max_throughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 64 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.theor_max_throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 20,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "TxThroughput 64",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.TxThroughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 64 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 69,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "last",
+ "targets": [
+ {
+ "alias": "RxThroughput 64",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "none"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.RxThroughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 64 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.RxThroughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "last"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.pktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 70,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Tot Sent 64",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.tx_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 64 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 71,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Rx Tottal 64",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.rx_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 64 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 72,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "drop total 64",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.drop_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 64 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 73,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Can be lost 64",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.can_be_lost\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 64 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 82,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Rx Throughput Gbps 64",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.RxThroughput_gbps\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 64 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.PktSize"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "hideTimeOverride": false,
+ "id": 136,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "PktSize = 128",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT mean(\"tg__0.collect_stats.PktSize\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 128 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.PktSize"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.PktSize",
+ "operator": "=",
+ "value": "64"
+ },
+ {
+ "condition": "AND",
+ "key": "tg__0.collect_stats.Status",
+ "operator": "=",
+ "value": "Result"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "hideTimeOverride": false,
+ "id": 137,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Theor Max Throughput (Mpps) 128",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.theor_max_throughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 128 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.theor_max_throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 138,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "TxThroughput 128",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.TxThroughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 128 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 139,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "last",
+ "targets": [
+ {
+ "alias": "RxThroughput 128",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "none"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.RxThroughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 128 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.RxThroughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "last"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.pktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 140,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Tot Sent 128",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.tx_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 128 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 141,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Rx Tottal 128",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.rx_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 128 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 142,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "drop total 128",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.drop_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 128 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 143,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Can be lost 128",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.can_be_lost\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 128 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 144,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Rx Throughput Gbps 128",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.RxThroughput_gbps\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 128 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.PktSize"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "hideTimeOverride": false,
+ "id": 146,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "PktSize = 256",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT mean(\"tg__0.collect_stats.PktSize\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 256 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.PktSize"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.PktSize",
+ "operator": "=",
+ "value": "64"
+ },
+ {
+ "condition": "AND",
+ "key": "tg__0.collect_stats.Status",
+ "operator": "=",
+ "value": "Result"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "hideTimeOverride": false,
+ "id": 147,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Theor Max Throughput (Mpps) 256",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.theor_max_throughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 256 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.theor_max_throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 148,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "TxThroughput 256",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.TxThroughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 256 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 149,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "last",
+ "targets": [
+ {
+ "alias": "RxThroughput 256",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "none"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.RxThroughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 256 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.RxThroughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "last"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.pktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 150,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Tot Sent 256",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.tx_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 256 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 151,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Rx Tottal 256",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.rx_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 256 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 152,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "drop total 256",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.drop_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 256 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 153,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Can be lost 256",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.can_be_lost\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 256 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 154,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Rx Throughput Gbps 256",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.RxThroughput_gbps\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 256 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.PktSize"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "hideTimeOverride": false,
+ "id": 156,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "PktSize = 512",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT mean(\"tg__0.collect_stats.PktSize\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 512 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.PktSize"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.PktSize",
+ "operator": "=",
+ "value": "64"
+ },
+ {
+ "condition": "AND",
+ "key": "tg__0.collect_stats.Status",
+ "operator": "=",
+ "value": "Result"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "hideTimeOverride": false,
+ "id": 157,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Theor Max Throughput (Mpps) 512",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.theor_max_throughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 512 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.theor_max_throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 158,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "TxThroughput 512",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.TxThroughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 512 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 159,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "last",
+ "targets": [
+ {
+ "alias": "RxThroughput 512",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "none"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.RxThroughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 512 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.RxThroughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "last"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.pktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 160,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Tot Sent 512",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.tx_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 512 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 161,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Rx Tottal 512",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.rx_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 512 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 162,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "drop total 512",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.drop_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 512 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 163,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Can be lost 512",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.can_be_lost\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 512 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 164,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Rx Throughput Gbps 512",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.RxThroughput_gbps\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 512 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.PktSize"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "hideTimeOverride": false,
+ "id": 166,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "PktSize = 1024",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT mean(\"tg__0.collect_stats.PktSize\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1024 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.PktSize"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.PktSize",
+ "operator": "=",
+ "value": "64"
+ },
+ {
+ "condition": "AND",
+ "key": "tg__0.collect_stats.Status",
+ "operator": "=",
+ "value": "Result"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "hideTimeOverride": false,
+ "id": 167,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Theor Max Throughput (Mpps) 1024",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.theor_max_throughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1024 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.theor_max_throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 168,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "TxThroughput 1024",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.TxThroughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1024 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 169,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "last",
+ "targets": [
+ {
+ "alias": "RxThroughput 1024",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "none"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.RxThroughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1024 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.RxThroughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "last"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.pktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 170,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Tot Sent 1024",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.tx_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1024 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 171,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Rx Tottal 1024",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.rx_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1024 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 172,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "drop total 1024",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.drop_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1024 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 173,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Can be lost 1024",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.can_be_lost\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1024 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 174,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Rx Throughput Gbps 1024",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.RxThroughput_gbps\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1024 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.PktSize"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "hideTimeOverride": false,
+ "id": 176,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "PktSize = 1280",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT mean(\"tg__0.collect_stats.PktSize\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1280 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.PktSize"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.PktSize",
+ "operator": "=",
+ "value": "64"
+ },
+ {
+ "condition": "AND",
+ "key": "tg__0.collect_stats.Status",
+ "operator": "=",
+ "value": "Result"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "hideTimeOverride": false,
+ "id": 177,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Theor Max Throughput (Mpps) 1280",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.theor_max_throughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1280 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.theor_max_throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 178,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "TxThroughput 1280",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.TxThroughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1280 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 179,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "last",
+ "targets": [
+ {
+ "alias": "RxThroughput 1280",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "none"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.RxThroughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1280 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.RxThroughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "last"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.pktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 180,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Tot Sent 1280",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.tx_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1280 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 181,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Rx Tottal 1280",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.rx_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1280 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 182,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "drop total 1280",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.drop_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1280 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 183,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Can be lost 1280",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.can_be_lost\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1280 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 184,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Rx Throughput Gbps 1280",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.RxThroughput_gbps\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1280 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.PktSize"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "hideTimeOverride": false,
+ "id": 186,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "PktSize = 1518",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT mean(\"tg__0.collect_stats.PktSize\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1518 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.PktSize"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.PktSize",
+ "operator": "=",
+ "value": "64"
+ },
+ {
+ "condition": "AND",
+ "key": "tg__0.collect_stats.Status",
+ "operator": "=",
+ "value": "Result"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "hideTimeOverride": false,
+ "id": 187,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Theor Max Throughput (Mpps) 1280",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.theor_max_throughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1518 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.theor_max_throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 188,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "TxThroughput 1518",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.TxThroughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1518 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 189,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "last",
+ "targets": [
+ {
+ "alias": "RxThroughput 1518",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "none"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.RxThroughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1518 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.RxThroughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "last"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.pktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 190,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Tot Sent 1518",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.tx_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1518 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 191,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Rx Tottal 1518",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.rx_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1518 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 192,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "drop total 1518",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.drop_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1518 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 193,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Can be lost 1518",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.can_be_lost\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1518 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 194,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Rx Throughput Gbps 1518",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.RxThroughput_gbps\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 1518 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.PktSize"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "hideTimeOverride": false,
+ "id": 196,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "PktSize = 2048",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT mean(\"tg__0.collect_stats.PktSize\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 2048 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.PktSize"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.PktSize",
+ "operator": "=",
+ "value": "64"
+ },
+ {
+ "condition": "AND",
+ "key": "tg__0.collect_stats.Status",
+ "operator": "=",
+ "value": "Result"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "hideTimeOverride": false,
+ "id": 197,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Theor Max Throughput (Mpps) 2048",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.theor_max_throughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 2048 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.theor_max_throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 198,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "TxThroughput 2048",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.TxThroughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 2048 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(null)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 199,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "last",
+ "targets": [
+ {
+ "alias": "RxThroughput 2048",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "none"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.RxThroughput\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 2048 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.RxThroughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "last"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.collect_stats.pktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 200,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Tot Sent 2048",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.tx_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 2048 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 201,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Rx Tottal 2048",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.rx_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 2048 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 202,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "drop total 2048",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.drop_total\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 2048 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 0,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 203,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 1,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Can be lost 2048",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.can_be_lost\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 2048 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.Success_Throughput"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "cacheTimeout": null,
+ "colorBackground": false,
+ "colorValue": false,
+ "colors": [
+ "rgba(245, 54, 54, 0.9)",
+ "rgba(237, 129, 40, 0.89)",
+ "rgba(50, 172, 45, 0.97)"
+ ],
+ "datasource": "${DS_YARDSTICK}",
+ "decimals": 4,
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "height": "100px",
+ "id": 204,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "Rx Throughput Gbps 2048",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "hide": false,
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"tg__0.collect_stats.RxThroughput_gbps\") FROM \"tc_prox_baremetal_l3fwd-4\" WHERE \"tg__0.collect_stats.PktSize\" = 2048 AND \"tg__0.collect_stats.Status\" = 'Result' AND $timeFilter GROUP BY time($__interval) fill(none)",
+ "rawQuery": true,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.PktSize"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "tg__0.PktSize",
+ "operator": "=",
+ "value": "64"
+ }
+ ]
+ }
+ ],
+ "thresholds": "",
+ "title": "",
+ "type": "singlestat",
+ "valueFontSize": "50%",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "N/A",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Dashboard Row",
+ "titleSize": "h3"
+ },
+ {
+ "collapse": false,
+ "height": "40px",
+ "panels": [
+ {
+ "content": "<h5 style=\"font-family:Verdana\"> <a style=\"color:#31A7D3\"><a style=\"font: 22px '#31A7D3'\"><center>Latency</center> </a></h5>",
+ "height": "40",
+ "id": 41,
+ "links": [],
+ "mode": "html",
+ "span": 12,
+ "title": "",
+ "type": "text"
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Dashboard Row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": 250,
+ "panels": [
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_YARDSTICK}",
+ "fill": 1,
+ "height": "300px",
+ "id": 47,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "show": true,
+ "sortDesc": true,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "xe0 Latency Avg",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "none"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "B",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.LatencyAvg.5"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ },
+ {
+ "alias": "xe0 Latency Max",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.LatencyMax.5"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": [],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "xe0 Latency",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": "usec",
+ "logBase": 1,
+ "max": null,
+ "min": "0",
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": "0",
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_YARDSTICK}",
+ "fill": 1,
+ "height": "300px",
+ "id": 48,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "show": true,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "xe1 Latency Avg",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "none"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "B",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.LatencyAvg.6"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ },
+ {
+ "alias": "xe1 Latency Max",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.LatencyMax.6"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": [],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "xe1 Latency",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": "usec",
+ "logBase": 1,
+ "max": null,
+ "min": "0",
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_YARDSTICK}",
+ "fill": 1,
+ "height": "300px",
+ "id": 49,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "show": true,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "xe2 Latency Avg",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "none"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "B",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.LatencyAvg.7"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ },
+ {
+ "alias": "xe2 Latency Max",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.LatencyMax.7"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": [],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "xe2 Latency",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": "usec",
+ "logBase": 1,
+ "max": null,
+ "min": "0",
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_YARDSTICK}",
+ "fill": 1,
+ "height": "300px",
+ "id": 50,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "show": true,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 2,
+ "links": [],
+ "nullPointMode": "connected",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "xe3 Latency Avg",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "none"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "B",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.LatencyAvg.8"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ },
+ {
+ "alias": "xe3 Latency Max",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "tc_prox_baremetal_l3fwd-4",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "tg__0.collect_stats.LatencyMax.8"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": []
+ }
+ ],
+ "thresholds": [],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "xe3 Latency",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": "usec",
+ "logBase": 1,
+ "max": null,
+ "min": "0",
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Dashboard Row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": -833,
+ "panels": [
+ {
+ "content": "<h5 style=\"font-family:Verdana\"> <a style=\"color:#31A7D3\"><a style=\"font: 22px '#31A7D3'\"><center>NFVi metrics from Platform</center> </a></h5>",
+ "height": "40",
+ "id": 221,
+ "links": [],
+ "mode": "html",
+ "span": 12,
+ "title": "",
+ "type": "text"
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Dashboard Row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": 188,
+ "panels": [
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_COLLECTD}",
+ "fill": 1,
+ "id": 222,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "rightSide": true,
+ "show": true,
+ "sideWidth": 200,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 12,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "CPU Freq Core $tag_type_instance",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "type"
+ ],
+ "type": "tag"
+ },
+ {
+ "params": [
+ "type_instance"
+ ],
+ "type": "tag"
+ }
+ ],
+ "hide": false,
+ "measurement": "cpufreq_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "distinct"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$tg_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type",
+ "operator": "=",
+ "value": "cpufreq"
+ }
+ ]
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "ok",
+ "fill": true,
+ "line": true,
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Traffic Generator: CPU Core Frequency",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "hertz",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_COLLECTD}",
+ "fill": 1,
+ "id": 224,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "rightSide": true,
+ "show": true,
+ "sideWidth": 200,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "CPU Idle % Core $tag_instance",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "type_instance"
+ ],
+ "type": "tag"
+ },
+ {
+ "params": [
+ "instance"
+ ],
+ "type": "tag"
+ }
+ ],
+ "hide": false,
+ "measurement": "cpu_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "distinct"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$tg_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type_instance",
+ "operator": "=",
+ "value": "idle"
+ },
+ {
+ "condition": "AND",
+ "key": "type",
+ "operator": "=",
+ "value": "percent"
+ }
+ ]
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "ok",
+ "fill": true,
+ "line": true,
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Tarffic Generator: CPU Core Idle %",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "percent",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_COLLECTD}",
+ "fill": 1,
+ "id": 225,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "rightSide": true,
+ "show": true,
+ "sideWidth": 200,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "CPU Util % Core $tag_instance",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "type_instance"
+ ],
+ "type": "tag"
+ },
+ {
+ "params": [
+ "instance"
+ ],
+ "type": "tag"
+ }
+ ],
+ "hide": false,
+ "measurement": "cpu_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "distinct"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$tg_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type_instance",
+ "operator": "=",
+ "value": "user"
+ },
+ {
+ "condition": "AND",
+ "key": "type",
+ "operator": "=",
+ "value": "percent"
+ }
+ ]
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "ok",
+ "fill": true,
+ "line": true,
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Traffic Generator - CPU Core Utlization %",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "percent",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_COLLECTD}",
+ "fill": 1,
+ "id": 213,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "rightSide": true,
+ "show": true,
+ "sideWidth": 200,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 12,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "CPU Freq Core $tag_type_instance",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "type"
+ ],
+ "type": "tag"
+ },
+ {
+ "params": [
+ "type_instance"
+ ],
+ "type": "tag"
+ }
+ ],
+ "hide": false,
+ "measurement": "cpufreq_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "distinct"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$sut_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type",
+ "operator": "=",
+ "value": "cpufreq"
+ }
+ ]
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "ok",
+ "fill": true,
+ "line": true,
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "SUT - CPU Core Frequency",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "hertz",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_COLLECTD}",
+ "fill": 1,
+ "id": 218,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "rightSide": true,
+ "show": true,
+ "sideWidth": 200,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "CPU Idle % Core $tag_instance",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "type_instance"
+ ],
+ "type": "tag"
+ },
+ {
+ "params": [
+ "instance"
+ ],
+ "type": "tag"
+ }
+ ],
+ "hide": false,
+ "measurement": "cpu_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "distinct"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$sut_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type_instance",
+ "operator": "=",
+ "value": "idle"
+ },
+ {
+ "condition": "AND",
+ "key": "type",
+ "operator": "=",
+ "value": "percent"
+ }
+ ]
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "ok",
+ "fill": true,
+ "line": true,
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "SUT - CPU Core Idle %",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "percent",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_COLLECTD}",
+ "fill": 1,
+ "id": 219,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "rightSide": true,
+ "show": true,
+ "sideWidth": 200,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "CPU Util % Core $tag_instance",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "type_instance"
+ ],
+ "type": "tag"
+ },
+ {
+ "params": [
+ "instance"
+ ],
+ "type": "tag"
+ }
+ ],
+ "hide": false,
+ "measurement": "cpu_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "distinct"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$sut_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type_instance",
+ "operator": "=",
+ "value": "user"
+ },
+ {
+ "condition": "AND",
+ "key": "type",
+ "operator": "=",
+ "value": "percent"
+ }
+ ]
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "ok",
+ "fill": true,
+ "line": true,
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "SUT - CPU Core Utlization %",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "percent",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "cacheTimeout": null,
+ "circleBackground": false,
+ "colorBackground": true,
+ "colorValue": false,
+ "datasource": "${DS_COLLECTD}",
+ "decimals": 3,
+ "defaultColor": "rgb(117, 117, 117)",
+ "format": "none",
+ "gauge": {
+ "maxValue": 100,
+ "minValue": 0,
+ "show": false,
+ "thresholdLabels": false,
+ "thresholdMarkers": true
+ },
+ "id": 226,
+ "interval": null,
+ "links": [],
+ "mappingType": 1,
+ "mappingTypes": [
+ {
+ "name": "value to text",
+ "value": 1
+ },
+ {
+ "name": "range to text",
+ "value": 2
+ }
+ ],
+ "math": "CPU_INST/CPU_CYCLES",
+ "maxDataPoints": 100,
+ "nullPointMode": "connected",
+ "nullText": null,
+ "postfix": "",
+ "postfixFontSize": "50%",
+ "prefix": "",
+ "prefixFontSize": "50%",
+ "rangeMaps": [
+ {
+ "from": "null",
+ "text": "N/A",
+ "to": "null"
+ }
+ ],
+ "sortOrder": "asc",
+ "sortOrderOptions": [
+ {
+ "text": "Ascending",
+ "value": "asc"
+ },
+ {
+ "text": "Descending",
+ "value": "desc"
+ }
+ ],
+ "span": 2,
+ "sparkline": {
+ "fillColor": "rgba(31, 118, 189, 0.18)",
+ "full": false,
+ "lineColor": "rgb(31, 120, 193)",
+ "show": false
+ },
+ "tableColumn": "",
+ "targets": [
+ {
+ "alias": "CPU_INST",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "intel_pmu_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$sut_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type_instance",
+ "operator": "=",
+ "value": "instructions"
+ }
+ ]
+ },
+ {
+ "alias": "CPU_CYCLES",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "intel_pmu_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "B",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "mean"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$sut_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type_instance",
+ "operator": "=",
+ "value": "cpu-cycles"
+ }
+ ]
+ }
+ ],
+ "thresholds": [
+ {
+ "color": "#2f575e"
+ }
+ ],
+ "title": "IPC from the SUT",
+ "type": "blackmirror1-singlestat-math-panel",
+ "valueFontSize": "80%",
+ "valueMappingColorBackground": "#787879",
+ "valueMaps": [
+ {
+ "op": "=",
+ "text": "No data",
+ "value": "null"
+ }
+ ],
+ "valueName": "avg"
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_COLLECTD}",
+ "fill": 1,
+ "id": 206,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "rightSide": true,
+ "show": true,
+ "sideWidth": 200,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 5,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "CPU $tag_instance",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "instance"
+ ],
+ "type": "tag"
+ }
+ ],
+ "measurement": "intel_pmu_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "query": "SELECT last(\"value\") FROM \"intel_pmu_value\" WHERE (\"host\" = '00128F05-E0B0-E511-906E-0012795D96DD' AND \"type_instance\" = 'cpu-cycles') AND $timeFilter GROUP BY time($__interval), \"instance\" fill(none)",
+ "rawQuery": false,
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "distinct"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$sut_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type_instance",
+ "operator": "=",
+ "value": "cpu-cycles"
+ }
+ ]
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "warning",
+ "fill": true,
+ "line": true,
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Intel® PMU | SUT - CPU Cycles",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_COLLECTD}",
+ "fill": 1,
+ "id": 207,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "rightSide": true,
+ "show": true,
+ "sideWidth": 200,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 5,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "CPU $tag_instance",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "instance"
+ ],
+ "type": "tag"
+ }
+ ],
+ "measurement": "intel_pmu_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "distinct"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$sut_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type_instance",
+ "operator": "=",
+ "value": "instructions"
+ }
+ ]
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "warning",
+ "fill": true,
+ "line": true,
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Intel® PMU | SUT - CPU Instructions",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_COLLECTD}",
+ "fill": 1,
+ "id": 208,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "rightSide": true,
+ "show": true,
+ "sideWidth": 200,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "CPU $tag_instance",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "instance"
+ ],
+ "type": "tag"
+ },
+ {
+ "params": [
+ "none"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "intel_pmu_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "distinct"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$sut_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type_instance",
+ "operator": "=",
+ "value": "cache-references"
+ }
+ ]
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "warning",
+ "fill": true,
+ "line": true,
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Intel® PMU | SUT - Cache references",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_COLLECTD}",
+ "fill": 1,
+ "id": 209,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "rightSide": true,
+ "show": true,
+ "sideWidth": 200,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "CPU $tag_instance",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "instance"
+ ],
+ "type": "tag"
+ },
+ {
+ "params": [
+ "none"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "intel_pmu_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "distinct"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$sut_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type_instance",
+ "operator": "=",
+ "value": "cache-misses"
+ }
+ ]
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "warning",
+ "fill": true,
+ "line": true,
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Intel® PMU | SUT - Cache Misses",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_COLLECTD}",
+ "fill": 1,
+ "id": 210,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "rightSide": true,
+ "show": true,
+ "sideWidth": 200,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "CPU $tag_instance",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "instance"
+ ],
+ "type": "tag"
+ },
+ {
+ "params": [
+ "none"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "intel_pmu_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "distinct"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$sut_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type_instance",
+ "operator": "=",
+ "value": "LLC-load-misses"
+ }
+ ]
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "warning",
+ "fill": true,
+ "line": true,
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Intel® PMU | SUT - LLC Load Misses",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_COLLECTD}",
+ "fill": 1,
+ "id": 211,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "rightSide": true,
+ "show": true,
+ "sideWidth": 200,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 6,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "CPU $tag_instance",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "instance"
+ ],
+ "type": "tag"
+ },
+ {
+ "params": [
+ "none"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "intel_pmu_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "distinct"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$sut_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type_instance",
+ "operator": "=",
+ "value": "LLC-store-misses"
+ }
+ ]
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "warning",
+ "fill": true,
+ "line": true,
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Intel® PMU | SUT - LLC Store Misses",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Dashboard Row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": 276,
+ "panels": [
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_COLLECTD}",
+ "fill": 1,
+ "id": 212,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "show": true,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 12,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "Memory Free",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "memory_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "distinct"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$sut_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type_instance",
+ "operator": "=",
+ "value": "free"
+ }
+ ]
+ },
+ {
+ "alias": "Memory Used",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "memory_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "B",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "distinct"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$sut_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type_instance",
+ "operator": "=",
+ "value": "used"
+ }
+ ]
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "critical",
+ "fill": true,
+ "line": true,
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "SUT - Platform Memory",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "decbits",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Dashboard Row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": -76,
+ "panels": [],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Dashboard Row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": 250,
+ "panels": [
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_COLLECTD}",
+ "fill": 1,
+ "id": 216,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "rightSide": true,
+ "show": true,
+ "sideWidth": 200,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 12,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "Memory BW Remote core $tag_instance",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "instance"
+ ],
+ "type": "tag"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "intel_rdt_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "distinct"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$sut_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type",
+ "operator": "=",
+ "value": "memory_bandwidth"
+ },
+ {
+ "condition": "AND",
+ "key": "type_instance",
+ "operator": "=",
+ "value": "local"
+ }
+ ]
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "custom",
+ "fill": true,
+ "fillColor": "#052b51",
+ "line": true,
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Intel® RDT | SUT - Memory Bandwidth Local",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ },
+ {
+ "aliasColors": {},
+ "bars": false,
+ "dashLength": 10,
+ "dashes": false,
+ "datasource": "${DS_COLLECTD}",
+ "fill": 1,
+ "id": 217,
+ "legend": {
+ "alignAsTable": true,
+ "avg": true,
+ "current": false,
+ "max": true,
+ "min": true,
+ "rightSide": true,
+ "show": true,
+ "sideWidth": 200,
+ "total": false,
+ "values": true
+ },
+ "lines": true,
+ "linewidth": 1,
+ "links": [],
+ "nullPointMode": "null",
+ "percentage": false,
+ "pointradius": 5,
+ "points": false,
+ "renderer": "flot",
+ "seriesOverrides": [],
+ "spaceLength": 10,
+ "span": 12,
+ "stack": false,
+ "steppedLine": false,
+ "targets": [
+ {
+ "alias": "Memory BW Remote core $tag_instance",
+ "dsType": "influxdb",
+ "groupBy": [
+ {
+ "params": [
+ "$__interval"
+ ],
+ "type": "time"
+ },
+ {
+ "params": [
+ "instance"
+ ],
+ "type": "tag"
+ },
+ {
+ "params": [
+ "null"
+ ],
+ "type": "fill"
+ }
+ ],
+ "measurement": "intel_rdt_value",
+ "orderByTime": "ASC",
+ "policy": "default",
+ "refId": "A",
+ "resultFormat": "time_series",
+ "select": [
+ [
+ {
+ "params": [
+ "value"
+ ],
+ "type": "field"
+ },
+ {
+ "params": [],
+ "type": "distinct"
+ }
+ ]
+ ],
+ "tags": [
+ {
+ "key": "host",
+ "operator": "=~",
+ "value": "/^$sut_host$/"
+ },
+ {
+ "condition": "AND",
+ "key": "type",
+ "operator": "=",
+ "value": "memory_bandwidth"
+ },
+ {
+ "condition": "AND",
+ "key": "type_instance",
+ "operator": "=",
+ "value": "remote"
+ }
+ ]
+ }
+ ],
+ "thresholds": [
+ {
+ "colorMode": "custom",
+ "fill": true,
+ "fillColor": "#052b51",
+ "line": true,
+ "op": "gt",
+ "value": 0
+ }
+ ],
+ "timeFrom": null,
+ "timeShift": null,
+ "title": "Intel® RDT | SUT - Memory Bandwidth Remote",
+ "tooltip": {
+ "shared": true,
+ "sort": 0,
+ "value_type": "individual"
+ },
+ "type": "graph",
+ "xaxis": {
+ "buckets": null,
+ "mode": "time",
+ "name": null,
+ "show": true,
+ "values": []
+ },
+ "yaxes": [
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ },
+ {
+ "format": "short",
+ "label": null,
+ "logBase": 1,
+ "max": null,
+ "min": null,
+ "show": true
+ }
+ ]
+ }
+ ],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Dashboard Row",
+ "titleSize": "h6"
+ },
+ {
+ "collapse": false,
+ "height": 199,
+ "panels": [],
+ "repeat": null,
+ "repeatIteration": null,
+ "repeatRowId": null,
+ "showTitle": false,
+ "title": "Dashboard Row",
+ "titleSize": "h6"
+ }
+ ],
+ "schemaVersion": 14,
+ "style": "dark",
+ "tags": [
+ "yardstick",
+ "NSB",
+ "Prox",
+ "L3Fwd",
+ "4Port",
+ "Heat",
+ "nfvi"
+ ],
+ "templating": {
+ "list": [
+ {
+ "allValue": null,
+ "current": {},
+ "datasource": "${DS_COLLECTD}",
+ "hide": 0,
+ "includeAll": false,
+ "label": null,
+ "multi": false,
+ "name": "sut_host",
+ "options": [],
+ "query": "SHOW TAG VALUES WITH KEY=host",
+ "refresh": 1,
+ "regex": "",
+ "sort": 0,
+ "tagValuesQuery": "",
+ "tags": [],
+ "tagsQuery": "",
+ "type": "query",
+ "useTags": false
+ },
+ {
+ "allValue": null,
+ "current": {},
+ "datasource": "${DS_COLLECTD}",
+ "hide": 0,
+ "includeAll": false,
+ "label": null,
+ "multi": false,
+ "name": "tg_host",
+ "options": [],
+ "query": "SHOW TAG VALUES WITH KEY=host",
+ "refresh": 1,
+ "regex": "",
+ "sort": 0,
+ "tagValuesQuery": "",
+ "tags": [],
+ "tagsQuery": "",
+ "type": "query",
+ "useTags": false
+ }
+ ]
+ },
+ "time": {
+ "from": "2018-10-30T13:09:34.877Z",
+ "to": "2018-10-30T13:25:07.189Z"
+ },
+ "timepicker": {
+ "refresh_intervals": [
+ "5s",
+ "10s",
+ "30s",
+ "1m",
+ "5m",
+ "15m",
+ "30m",
+ "1h",
+ "2h",
+ "1d"
+ ],
+ "time_options": [
+ "5m",
+ "15m",
+ "1h",
+ "6h",
+ "12h",
+ "24h",
+ "2d",
+ "7d",
+ "30d"
+ ]
+ },
+ "timezone": "browser",
+ "title": "Prox_Baremetal_L3FWD-4Port_NFVi",
+ "version": 5
+} \ No newline at end of file
diff --git a/docker/Dockerfile.aarch64.patch b/docker/Dockerfile.aarch64.patch
index bad472007..6c32404ca 100644
--- a/docker/Dockerfile.aarch64.patch
+++ b/docker/Dockerfile.aarch64.patch
@@ -38,7 +38,7 @@ index 71ce6b58..fce7c116 100644
RUN git clone --depth 1 -b $BRANCH https://gerrit.opnfv.org/gerrit/storperf ${STORPERF_REPO_DIR}
-RUN ansible-playbook -i ${YARDSTICK_REPO_DIR}/ansible/install-inventory.ini -c local -vvv -e INSTALLATION_MODE="container" ${YARDSTICK_REPO_DIR}/ansible/install.yaml
-+RUN sed -i -e '/- configure_gui/d' ${YARDSTICK_REPO_DIR}/ansible/install.yaml && \
++RUN sed -i -e '/configure_gui/d' ${YARDSTICK_REPO_DIR}/ansible/install.yaml && \
+ ansible-playbook -i ${YARDSTICK_REPO_DIR}/ansible/install-inventory.ini -c local -vvv -e INSTALLATION_MODE="container" ${YARDSTICK_REPO_DIR}/ansible/install.yaml
RUN ${YARDSTICK_REPO_DIR}/docker/supervisor.sh
diff --git a/docs/conf.py b/docs/conf.py
new file mode 100644
index 000000000..86fddf13e
--- /dev/null
+++ b/docs/conf.py
@@ -0,0 +1 @@
+from docs_conf.conf import * # pylint: disable=wildcard-import
diff --git a/docs/conf.yaml b/docs/conf.yaml
new file mode 100644
index 000000000..01e08ec7f
--- /dev/null
+++ b/docs/conf.yaml
@@ -0,0 +1,3 @@
+---
+project_cfg: opnfv
+project: Yardstick
diff --git a/docs/index.rst b/docs/index.rst
new file mode 100644
index 000000000..e1339b0dd
--- /dev/null
+++ b/docs/index.rst
@@ -0,0 +1,17 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. SPDX-License-Identifier: CC-BY-4.0
+.. (c) Open Platform for NFV Project, Inc. and its contributors
+
+.. _yardstick:
+
+=========
+Yardstick
+=========
+
+.. toctree::
+ :numbered:
+ :maxdepth: 2
+
+ release/release-notes/index
+ testing/user/userguide/index
+ testing/developer/devguide/index
diff --git a/docs/release/release-notes/release-notes.rst b/docs/release/release-notes/release-notes.rst
index daa4b8187..457b308ae 100644
--- a/docs/release/release-notes/release-notes.rst
+++ b/docs/release/release-notes/release-notes.rst
@@ -5,7 +5,7 @@ License
OPNFV Fraser release note for Yardstick Docs
are licensed under a Creative Commons Attribution 4.0 International License.
You should have received a copy of the license along with this.
-If not, see <http://creativecommons.org/licenses/by/4.0/>.
+If not, see <https://creativecommons.org/licenses/by/4.0/>.
The *Yardstick framework*, the *Yardstick test cases* are open-source software,
licensed under the terms of the Apache License, Version 2.0.
@@ -17,11 +17,11 @@ OPNFV Fraser Release Note for Yardstick
.. toctree::
:maxdepth: 2
-.. _Yardstick: https://wiki.opnfv.org/yardstick
+.. _Yardstick: https://wiki.opnfv.org/display/yardstick
-.. _Dashboard: http://testresults.opnfv.org/grafana/dashboard/db/yardstick-main
+.. _Dashboard: http://testresults.opnfv.org/grafana/
-.. _NFV-TST001: http://www.etsi.org/deliver/etsi_gs/NFV-TST/001_099/001/01.01.01_60/gs_NFV-TST001v010101p.pdf
+.. _NFV-TST001: https://www.etsi.org/deliver/etsi_gs/NFV-TST/001_099/001/01.01.01_60/gs_NFV-TST001v010101p.pdf
Abstract
@@ -149,9 +149,9 @@ Deliverables
Documents
---------
- - User Guide: http://docs.opnfv.org/en/stable-fraser/submodules/yardstick/docs/testing/user/userguide/index.html
+ - User Guide: :ref:`<yardstick:userguide>`
- - Developer Guide: http://docs.opnfv.org/en/stable-fraser/submodules/yardstick/docs/testing/developer/devguide/index.html
+ - Developer Guide: :ref:`<yardstick:devguide>`
Software Deliverables
@@ -606,7 +606,7 @@ Useful links
- wiki Yardstick Fraser release planing page: https://wiki.opnfv.org/display/yardstick/Release+Fraser
- - Yardstick repo: https://git.opnfv.org/cgit/yardstick
+ - Yardstick repo: https://git.opnfv.org/yardstick
- Yardstick CI dashboard: https://build.opnfv.org/ci/view/yardstick
diff --git a/docs/release/results/euphrates_fraser_comparison.rst b/docs/release/results/euphrates_fraser_comparison.rst
index 53dfb994f..1dd328bb7 100644
--- a/docs/release/results/euphrates_fraser_comparison.rst
+++ b/docs/release/results/euphrates_fraser_comparison.rst
@@ -2,7 +2,15 @@
.. License.
.. http://creativecommons.org/licenses/by/4.0
-=======================================================
+..
+ Convention for heading levels in Yardstick:
+ ======= Heading 0 (reserved for the title in a document)
+ ------- Heading 1
+ ^^^^^^^ Heading 2
+ +++++++ Heading 3
+ ''''''' Heading 4
+ Avoid deeper levels because they do not render well.
+
Test results analysis for Euphrates and Fraser releases
=======================================================
diff --git a/docs/release/results/images/tc014_pod_fraseer.png b/docs/release/results/images/tc014_pod_fraser.png
index 697201d76..697201d76 100644
--- a/docs/release/results/images/tc014_pod_fraseer.png
+++ b/docs/release/results/images/tc014_pod_fraser.png
Binary files differ
diff --git a/docs/release/results/overview.rst b/docs/release/results/overview.rst
index 9fd74797c..b5e6a43a6 100644
--- a/docs/release/results/overview.rst
+++ b/docs/release/results/overview.rst
@@ -3,6 +3,15 @@
.. http://creativecommons.org/licenses/by/4.0
.. (c) OPNFV, Ericsson AB and others.
+..
+ Convention for heading levels in Yardstick:
+ ======= Heading 0 (reserved for the title in a document)
+ ------- Heading 1
+ ^^^^^^^ Heading 2
+ +++++++ Heading 3
+ ''''''' Heading 4
+ Avoid deeper levels because they do not render well.
+
Yardstick test tesult document overview
=======================================
diff --git a/docs/release/results/results.rst b/docs/release/results/results.rst
index 0ed92f867..f0c20360b 100644
--- a/docs/release/results/results.rst
+++ b/docs/release/results/results.rst
@@ -2,8 +2,17 @@
.. License.
.. http://creativecommons.org/licenses/by/4.0
+..
+ Convention for heading levels in Yardstick:
+ ======= Heading 0 (reserved for the title in a document)
+ ------- Heading 1
+ ^^^^^^^ Heading 2
+ +++++++ Heading 3
+ ''''''' Heading 4
+ Avoid deeper levels because they do not render well.
+
Results listed by test cases
-==========================
+----------------------------
.. _TOM: https://wiki.opnfv.org/display/testing/R+post-processing+of+the+Yardstick+results
@@ -14,7 +23,7 @@ the determined state of the specific test case as executed in the Fraser release
process. All test date are analyzed using TOM_ tool.
Scenario Results
-================
+----------------
.. _Dashboard: http://testresults.opnfv.org/grafana/dashboard/db/yardstick-main
.. _Jenkins: https://build.opnfv.org/ci/view/yardstick/
@@ -42,7 +51,7 @@ Test results of executed tests are avilable in Dashboard_ and logs in Jenkins_.
Test results for Fraser release are collected from April 10, 2018 to May 13, 2018.
Feature Test Results
-====================
+--------------------
The following features were verified by Yardstick test cases:
@@ -54,8 +63,6 @@ The following features were verified by Yardstick test cases:
* Parser
- * Virtual Traffic Classifier (see :doc:`yardstick-opnfv-vtc`)
-
* StorPerf
.. note:: The test cases for IPv6 and Parser Projects are included in the
diff --git a/docs/release/results/yardstick-opnfv-vtc.rst b/docs/release/results/yardstick-opnfv-vtc.rst
deleted file mode 100644
index 059b5491f..000000000
--- a/docs/release/results/yardstick-opnfv-vtc.rst
+++ /dev/null
@@ -1,248 +0,0 @@
-.. This work is licensed under a Creative Commons Attribution 4.0 International
-.. License.
-.. http://creativecommons.org/licenses/by/4.0
-
-.. _Dashboard006: http://testresults.opnfv.org/grafana/dashboard/db/yardstick-tc006
-.. _Dashboard007: http://testresults.opnfv.org/grafana/dashboard/db/yardstick-tc007
-.. _Dashboard020: http://testresults.opnfv.org/grafana/dashboard/db/yardstick-tc020
-.. _Dashboard021: http://testresults.opnfv.org/grafana/dashboard/db/yardstick-tc021
-.. _DashboardVTC: http://testresults.opnfv.org/grafana/dashboard/db/vtc-dashboard
-====================================
-Test Results for yardstick-opnfv-vtc
-====================================
-
-.. toctree::
- :maxdepth: 2
-
-
-Details
-=======
-
-.. after this doc is filled, remove all comments and include the scenario in
-.. results.rst by removing the comment on the file name.
-
-
-Overview of test results
-------------------------
-
-.. general on metrics collected, number of iterations
-
-The virtual Traffic Classifier (vtc) Scenario supported by Yardstick is used by 4 Test Cases:
-
-- TC006
-- TC007
-- TC020
-- TC021
-
-
-* TC006
-
-TC006 is the Virtual Traffic Classifier Data Plane Throughput Benchmarking Test.
-It collects measures about the end-to-end throughput supported by the
-virtual Traffic Classifier (vTC).
-Results of the test are shown in the Dashboard006_
-The throughput is expressed as percentage of the available bandwidth on the NIC.
-
-
-* TC007
-
-TC007 is the Virtual Traffic Classifier Data Plane Throughput Benchmarking in presence of
-noisy neighbors Test.
-It collects measures about the end-to-end throughput supported by the
-virtual Traffic Classifier when a user-defined number of noisy neighbors is deployed.
-Results of the test are shown in the Dashboard007_
-The throughput is expressed as percentage of the available bandwidth on the NIC.
-
-
-* TC020
-
-TC020 is the Virtual Traffic Classifier Instantiation Test.
-It verifies that a newly instantiated vTC is alive and functional and its instantiation
-is correctly supported by the underlying infrastructure.
-Results of the test are shown in the Dashboard020_
-
-
-* TC021
-
-TC021 is the Virtual Traffic Classifier Instantiation in presence of noisy neighbors Test.
-It verifies that a newly instantiated vTC is alive and functional and its instantiation
-is correctly supported by the underlying infrastructure when noisy neighbors are present.
-Results of the test are shown in the Dashboard021_
-
-* Generic
-
-In the Generic scenario the Virtual Traffic Classifier is running on a standard Openstack
-setup and traffic is being replayed from a neighbor VM. The traffic sent contains
-various protocols and applications, and the VTC identifies them and exports the data.
-Results of the test are shown in the DashboardVTC.
-
-Detailed test results
----------------------
-
-* TC006
-
-The results for TC006 have been obtained using the following test case
-configuration:
-
-- Context: Dummy
-- Scenario: vtc_throughput
-- Network Techology: SR-IOV
-- vTC Flavor: m1.large
-
-
-* TC007
-
-The results for TC007 have been obtained using the following test case
-configuration:
-
-- Context: Dummy
-- Scenario: vtc_throughput_noisy
-- Network Techology: SR-IOV
-- vTC Flavor: m1.large
-- Number of noisy neighbors: 2
-- Number of cores per neighbor: 2
-- Amount of RAM per neighbor: 1G
-
-
-* TC020
-
-The results for TC020 have been obtained using the following test case
-configuration:
-
-The results listed in previous section have been obtained using the following
-test case configuration:
-
-- Context: Dummy
-- Scenario: vtc_instantiation_validation
-- Network Techology: SR-IOV
-- vTC Flavor: m1.large
-
-
-* TC021
-
-The results listed in previous section have been obtained using the following
-test case configuration:
-
-- Context: Dummy
-- Scenario: vtc_instantiation_validation
-- Network Techology: SR-IOV
-- vTC Flavor: m1.large
-- Number of noisy neighbors: 2
-- Number of cores per neighbor: 2
-- Amount of RAM per neighbor: 1G
-
-
-For all the test cases, the user can specify different values for the parameters.
-
-* Generic
-
-The results listed in the previous section have been obtained, using a
-standard Openstack setup.
-The user can replay his/her own traffic and see the corresponding results.
-
-Rationale for decisions
------------------------
-
-* TC006
-
-The result of the test is a number between 0 and 100 which represents the percentage of bandwidth
-available on the NIC that corresponds to the supported throughput by the vTC.
-
-
-* TC007
-
-The result of the test is a number between 0 and 100 which represents the percentage of bandwidth
-available on the NIC that corresponds to the supported throughput by the vTC.
-
-* TC020
-
-The execution of the test is done as described in the following:
-
-- The vTC is deployed on the OpenStack testbed;
-- Some traffic is sent to the vTC;
-- The vTC changes the header of the packets and sends them back to the packet generator;
-- The packet generator checks that all the packets are received correctly and have been changed
-correctly by the vTC.
-
-The test is declared as PASSED if all the packets are correcly received by the packet generator
-and they have been modified by the virtual Traffic Classifier as required.
-
-
-* TC021
-
-The execution of the test is done as described in the following:
-
-- The vTC is deployed on the OpenStack testbed;
-- The noisy neighbors are deployed as requested by the user;
-- Some traffic is sent to the vTC;
-- The vTC change the header of the packets and sends them back to the packet generator;
-- The packet generator checks that all the packets are received correctly and have been changed
-correctly by the vTC
-
-The test is declared as PASSED if all the packets are correcly received by the packet generator
-and they have been modified by the virtual Traffic Classifier as required.
-
-* Generic
-
-The execution of the test consists of the following actions:
-
-- The vTC is deployed on the OpenStack testbed;
-- The traffic generator VM is deployed on the Openstack Testbed;
-- Traffic data are relevant to the network setup;
-- Traffic is sent to the vTC;
-
-
-
-Conclusions and recommendations
--------------------------------
-
-* TC006
-
-The obtained results show that the virtual Traffic Classifier can support up to 4 Gbps
-(40% of the available bandwidth) correspond to the expected behaviour of the virtual
-Traffic Classifier.
-Using the configuration with SR-IOV and large flavor, the expected throughput should
-generally be in the range between 3 and 4 Gbps.
-
-
-* TC007
-
-These results correspond to the configuration in which the virtual Traffic Classifier uses SR-IOV
-Virtual Functions and the flavor is set to large for the virtual machine.
-The throughput is in the range between 2.5 Gbps and 3.7 Gbps.
-This shows that the effect of 2 noisy neighbors reduces the throughput of
-the service between 10 and 20%.
-Increasing number of neihbours would have a higher impact on the performance.
-
-
-* TC020
-
-The obtained results correspond to the expected behaviour of the virtual Traffic Classifier.
-Using the configuration with SR-IOV and large flavor, the expected result is that the vTC is
-correctly instantiated, it is able to receive and send packets using SR-IOV technology
-and to forward packets back to the packet generator changing the TCP/IP header as required.
-
-
-* TC021
-
-The obtained results correspond to the expected behaviour of the virtual Traffic Classifier.
-Using the configuration with SR-IOV and large flavor, the expected result is that the vTC is
-correctly instantiated, it is able to receive and send packets using SR-IOV technology
-and to forward packets back to the packet generator changing the TCP/IP header as required,
-also in presence of noisy neighbors.
-
-* Generic
-
-The obtained results correspond to the expected behaviour of the virtual Traffic Classifier.
-Using the aforementioned configuration the expected application protocols are identified
-and their traffic statistics are demonstrated in the DashboardVTC, a group of popular
-applications is selected to demonstrate the sound operation of the vTC.
-The demonstrated application protocols are:
-- HTTP
-- Skype
-- Bittorrent
-- Youtube
-- Dropbox
-- Twitter
-- Viber
-- iCloud
diff --git a/docs/requirements.txt b/docs/requirements.txt
new file mode 100644
index 000000000..440843584
--- /dev/null
+++ b/docs/requirements.txt
@@ -0,0 +1,5 @@
+lfdocs-conf
+sphinx_opnfv_theme
+# Uncomment the following line if your project uses Sphinx to document
+# HTTP APIs
+# sphinxcontrib-httpdomain
diff --git a/docs/templates/test_results_template.rst b/docs/templates/test_results_template.rst
index f04b2b2a8..8885588ae 100644
--- a/docs/templates/test_results_template.rst
+++ b/docs/templates/test_results_template.rst
@@ -1,3 +1,18 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International
+.. License.
+.. http://creativecommons.org/licenses/by/4.0
+
+..
+ Convention for heading levels in Yardstick documentation:
+
+ ======= Heading 0 (reserved for the title in a document)
+ ------- Heading 1
+ ~~~~~~~ Heading 2
+ +++++++ Heading 3
+ ''''''' Heading 4
+
+ Avoid deeper levels because they do not render well.
+
=====================
Yardstick Test Report
=====================
@@ -46,16 +61,16 @@ TCXXX
on-demand test cases (HA, KVM, Parser)
* Overview of test results
-.. general on metrics collected, number of iterations
+ .. general on metrics collected, number of iterations
* Detailed test results
-.. info on lab, installer, scenario
+ .. info on lab, installer, scenario
* Rationale for decisions
-.. pass/fail
+ .. pass/fail
* Conclusions and recommendations
-.. did the expected behavior occured?
+ .. did the expected behavior occured?
General
=======
diff --git a/docs/testing/developer/devguide/devguide.rst b/docs/testing/developer/devguide/devguide.rst
index 91f2c2148..76ed7c651 100755
--- a/docs/testing/developer/devguide/devguide.rst
+++ b/docs/testing/developer/devguide/devguide.rst
@@ -47,7 +47,7 @@ your field of interest is.
Where can I find some help to start?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-.. _`user guide`: http://artifacts.opnfv.org/yardstick/danube/1.0/docs/stesting_user_userguide/index.html
+.. _`user guide`: https://artifacts.opnfv.org/yardstick/docs/testing_user_userguide/index.html
.. _`wiki page`: https://wiki.opnfv.org/display/yardstick/
This guide is made for you. You can have a look at the `user guide`_.
@@ -401,7 +401,7 @@ Gerrit & JIRA introduction
++++++++++++++++++++++++++
.. _Gerrit: https://www.gerritcodereview.com/
-.. _`OPNFV Gerrit`: http://gerrit.opnfv.org/
+.. _`OPNFV Gerrit`: http://gerrit.opnfv.org/gerrit
.. _link: https://identity.linuxfoundation.org/
.. _JIRA: https://jira.opnfv.org/secure/Dashboard.jspa
@@ -449,6 +449,10 @@ Verify your patch::
It is used in CI but also by the CLI.
+For more details on ``tox`` and tests, please refer to the `Running tests`_
+and `working with tox`_ sections below, which describe the different available
+environments.
+
Submit the code with Git
++++++++++++++++++++++++
@@ -481,7 +485,7 @@ Git repository::
JIRA: YARDSTICK-XXX
-.. _`this document`: http://chris.beams.io/posts/git-commit/
+.. _`this document`: https://chris.beams.io/posts/git-commit/
The message that is required for the commit should follow a specific set of
rules. This practice allows to standardize the description messages attached
@@ -506,8 +510,8 @@ Yardstick committers and contributors to review your codes.
:alt: Gerrit for code review
You can find a list Yardstick people
-`here <https://wiki.opnfv.org/display/yardstick/People>`_, or use the
-``yardstick-reviewers`` and ``yardstick-committers`` groups in gerrit.
+`here <https://wiki.opnfv.org/display/yardstick/Yardstick+People>`_, or use
+the ``yardstick-reviewers`` and ``yardstick-committers`` groups in gerrit.
Modify the code under review in Gerrit
++++++++++++++++++++++++++++++++++++++
@@ -566,6 +570,142 @@ The process for backporting is as follows:
A backported change needs a ``+1`` and a ``+2`` from a committer who didn’t
propose the change (i.e. minimum 3 people involved).
+Development guidelines
+----------------------
+This section provides guidelines and best practices for feature development
+and bug fixing in Yardstick.
+
+In general, bug fixes should be submitted as a single patch.
+
+When developing larger features, all commits on the local topic branch can be
+submitted together, by running ``git review`` on the tip of the branch. This
+creates a chain of related patches in gerrit.
+
+Each commit should contain one logical change and the author should aim for no
+more than 300 lines of code per commit. This helps to make the changes easier
+to review.
+
+Each feature should have the following:
+
+* Feature/bug fix code
+* Unit tests (both positive and negative)
+* Functional tests (optional)
+* Sample testcases (if applicable)
+* Documentation
+* Update to release notes
+
+Coding style
+~~~~~~~~~~~~
+.. _`OpenStack Style Guidelines`: https://docs.openstack.org/hacking/latest/user/hacking.html
+.. _`OPNFV coding guidelines`: https://wiki.opnfv.org/display/DEV/Contribution+Guidelines
+
+Please follow the `OpenStack Style Guidelines`_ for code contributions (the
+section on Internationalization (i18n) Strings is not applicable).
+
+When writing commit message, the `OPNFV coding guidelines`_ on git commit
+message style should also be used.
+
+Running tests
+~~~~~~~~~~~~~
+Once your patch has been submitted, a number of tests will be run by Jenkins
+CI to verify the patch. Before submitting your patch, you should run these
+tests locally. You can do this using ``tox``, which has a number of different
+test environments defined in ``tox.ini``.
+Calling ``tox`` without any additional arguments runs the default set of
+tests (unit tests, functional tests, coverage and pylint).
+
+If some tests are failing, you can save time and select test environments
+individually, by passing one or more of the following command-line options to
+``tox``:
+
+* ``-e py27``: Unit tests using Python 2.7
+* ``-e py3``: Unit tests using Python 3
+* ``-e pep8``: Linter and style checks on updated files
+* ``-e functional``: Functional tests using Python 2.7
+* ``-e functional-py3``: Functional tests using Python 3
+* ``-e coverage``: Code coverage checks
+
+.. note:: You need to stage your changes prior to running coverage for those
+ changes to be checked.
+
+In addition to the tests run by Jenkins (listed above), there are a number of
+other test environments defined.
+
+* ``-e pep8-full``: Linter and style checks are run on the whole repo (not
+ just on updated files)
+* ``-e os-requirements``: Check that the requirements are compatible with
+ OpenStack requirements.
+
+Working with tox
+++++++++++++++++
+.. _virtualenv: https://virtualenv.pypa.io/en/stable/
+
+``tox`` uses `virtualenv`_ to create isolated Python environments to run the
+tests in. The test environments are located at
+``.tox/<environment_name>`` e.g. ``.tox/py27``.
+
+If requirements are changed, you will need to recreate the tox test
+environment to make sure the new requirements are installed. This is done by
+passing the additional ``-r`` command-line option to ``tox``::
+
+ tox -r -e ...
+
+This can also be achieved by deleting the test environments manually before
+running ``tox``::
+
+ rm -rf .tox/<environment_name>
+ rm -rf .tox/py27
+
+Writing unit tests
+~~~~~~~~~~~~~~~~~~
+For each change submitted, a set of unit tests should be submitted, which
+should include both positive and negative testing.
+
+In order to help identify which tests are needed, follow the guidelines below.
+
+* In general, there should be a separate test for each branching point, return
+ value and input set.
+* Negative tests should be written to make sure exceptions are raised and/or
+ handled appropriately.
+
+The following convention should be used for naming tests::
+
+ test_<method_name>_<some_comment>
+
+The comment gives more information on the nature of the test, the side effect
+being checked, or the parameter being modified::
+
+ test_my_method_runtime_error
+ test_my_method_invalid_credentials
+ test_my_method_param1_none
+
+Mocking
++++++++
+The ``mock`` library is used for unit testing to stub out external libraries.
+
+The following conventions are used in Yardstick:
+
+* Use ``mock.patch.object`` instead of ``mock.patch``.
+
+* When naming mocked classes/functions, use ``mock_<class_and_function_name>``
+ e.g. ``mock_subprocess_call``
+
+* Avoid decorating classes with mocks. Apply the mocking in ``setUp()``::
+
+ @mock.patch.object(ssh, 'SSH')
+ class MyClassTestCase(unittest.TestCase):
+
+ should be::
+
+ class MyClassTestCase(unittest.TestCase):
+ def setUp(self):
+ self._mock_ssh = mock.patch.object(ssh, 'SSH')
+ self.mock_ssh = self._mock_ssh.start()
+
+ self.addCleanup(self._stop_mocks)
+
+ def _stop_mocks(self):
+ self._mock_ssh.stop()
Plugins
-------
diff --git a/docs/testing/developer/devguide/devguide_nsb_prox.rst b/docs/testing/developer/devguide/devguide_nsb_prox.rst
index 79990055a..582668bc5 100755
--- a/docs/testing/developer/devguide/devguide_nsb_prox.rst
+++ b/docs/testing/developer/devguide/devguide_nsb_prox.rst
@@ -15,7 +15,7 @@ Prerequisites
In order to integrate PROX tests into NSB, the following prerequisites are required.
-.. _`dpdk wiki page`: http://dpdk.org/
+.. _`dpdk wiki page`: https://www.dpdk.org/
.. _`yardstick wiki page`: https://wiki.opnfv.org/display/yardstick/
.. _`Prox documentation`: https://01.org/intel-data-plane-performance-demonstrators/documentation/prox-documentation
.. _`openstack wiki page`: https://wiki.openstack.org/wiki/Main_Page
diff --git a/docs/testing/user/userguide/01-introduction.rst b/docs/testing/user/userguide/01-introduction.rst
index 494b1ef3d..74e752d63 100755
--- a/docs/testing/user/userguide/01-introduction.rst
+++ b/docs/testing/user/userguide/01-introduction.rst
@@ -9,8 +9,8 @@ Introduction
**Welcome to Yardstick's documentation !**
-.. _Pharos: https://wiki.opnfv.org/pharos
-.. _Yardstick: https://wiki.opnfv.org/yardstick
+.. _Pharos: https://wiki.opnfv.org/display/pharos
+.. _Yardstick: https://wiki.opnfv.org/display/yardstick
.. _Presentation: https://wiki.opnfv.org/download/attachments/2925202/opnfv_summit_-_yardstick_project.pdf?version=1&modificationDate=1458848320000&api=v2
Yardstick_ is an OPNFV Project.
@@ -70,7 +70,7 @@ This document consists of the following chapters:
Yardstick - Network service benchmarking to test real world usecase for a
given VNF.
-* Chapter :doc:`13-nsb_installation` provides instructions to install
+* Chapter :doc:`13-nsb-installation` provides instructions to install
*Yardstick - Network Service Benchmarking (NSB) testing*.
* Chapter :doc:`14-nsb-operation` provides information on running *NSB*
diff --git a/docs/testing/user/userguide/04-installation.rst b/docs/testing/user/userguide/04-installation.rst
index a4846230e..6b3259299 100644
--- a/docs/testing/user/userguide/04-installation.rst
+++ b/docs/testing/user/userguide/04-installation.rst
@@ -3,6 +3,17 @@
.. http://creativecommons.org/licenses/by/4.0
.. (c) OPNFV, Ericsson AB, Huawei Technologies Co.,Ltd and others.
+..
+ Convention for heading levels in Yardstick documentation:
+
+ ======= Heading 0 (reserved for the title in a document)
+ ------- Heading 1
+ ~~~~~~~ Heading 2
+ +++++++ Heading 3
+ ''''''' Heading 4
+
+ Avoid deeper levels because they do not render well.
+
======================
Yardstick Installation
======================
@@ -444,6 +455,115 @@ These configuration files can be found in the ``samples`` directory.
Default location for the output is ``/tmp/yardstick.out``.
+Automatic installation of Yardstick using ansible
+-------------------------------------------------
+
+Automatic installation can be used as an alternative to the manual.
+Yardstick can be installed on the bare metal and to the container. Yardstick
+container can be either pulled or built.
+
+Bare metal installation
+^^^^^^^^^^^^^^^^^^^^^^^
+
+Use ansible script ``install.yaml`` to install Yardstick on Ubuntu server:
+
+.. code-block:: console
+
+ ansible-playbook -i install-inventory.ini install.yaml \
+ -e YARDSTICK_DIR=<path to Yardstick folder>
+
+.. note:: By default ``INSTALLATION_MODE`` is ``baremetal``.
+
+.. note:: By default Ubuntu 16.04 is chosen (xenial). It can be changed to
+ Ubuntu 18.04 (bionic) by passing ``-e OS_RELEASE=bionic`` parameter.
+
+.. note:: To install Yardstick in virtual environment pass parameter
+ ``-e VIRTUAL_ENVIRONMENT=True``.
+
+To build Yardstick NSB image pass ``IMG_PROPERTY=nsb`` as input parameter:
+
+.. code-block:: console
+
+ ansible-playbook -i install-inventory.ini install.yaml \
+ -e IMAGE_PROPERTY=nsb \
+ -e YARDSTICK_DIR=<path to Yardstick folder>
+
+.. note:: In this ``INSTALLATION_MODE`` mode either Yardstick image or SampleVNF
+ images will be built. Image type is defined by parameter ``IMAGE_PROPERTY``.
+ By default Yardstick image will be built.
+
+Container installation
+^^^^^^^^^^^^^^^^^^^^^^
+
+Use ansible script ``install.yaml`` to pull or build Yardstick
+container. To pull Yardstick image and start container run:
+
+.. code-block:: console
+
+ ansible-playbook -i install-inventory.ini install.yaml \
+ -e YARDSTICK_DIR=<path to Yardstick folder> \
+ -e INSTALLATION_MODE=container_pull
+
+.. note:: In this ``INSTALLATION_MODE`` mode either Yardstick image or SampleVNF
+ images will be built. Image type is defined by variable ``IMG_PROPERTY`` in
+ file ``ansible/group_vars/all.yml``. By default Yardstick image will be
+ built.
+
+.. note:: Open question: How to know if Docker image is built on Ubuntu 16.04 and 18.04?
+ Do we need separate tag to be used?
+
+To build Yardstick image run:
+
+.. code-block:: console
+
+ ansible-playbook -i install-inventory.ini install.yaml \
+ -e YARDSTICK_DIR=<path to Yardstick folder> \
+ -e INSTALLATION_MODE=container
+
+.. note:: In this ``INSTALLATION_MODE`` mode neither Yardstick image nor SampleVNF
+ image will be built.
+
+.. note:: By default Ubuntu 16.04 is chosen (xenial). It can be changed to
+ Ubuntu 18.04 (bionic) by passing ``-e OS_RELEASE=bionic`` parameter.
+
+Parameters for ``install.yaml``
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+Description of the parameters used with ``install.yaml`` script
+
+ +-------------------------+-------------------------------------------------+
+ | Parameters | Detail |
+ +=========================+=================================================+
+ | -i install-inventory.ini| Installs package dependency to remote servers |
+ | | Mandatory parameter |
+ | | By default no remote servers are provided |
+ | | Needed packages will be installed on localhost |
+ +-------------------------+-------------------------------------------------+
+ | -e YARDSTICK_DIR | Path to Yardstick folder |
+ | | Mandatory parameter |
+ +-------------------------+-------------------------------------------------+
+ | -e INSTALLATION_MODE | baremetal: Yardstick is installed to the bare |
+ | | metal |
+ | | Default parameter |
+ | +-------------------------------------------------+
+ | | container: Yardstick is installed in container |
+ | | Container is built from Dockerfile |
+ | +-------------------------------------------------+
+ | | container_pull: Yardstick is installed in |
+ | | container |
+ | | Container is pulled from docker hub |
+ +-------------------------+-------------------------------------------------+
+ | -e OS_RELEASE | xenial or bionic: Ubuntu version to be used |
+ | | Default is Ubuntu 16.04 (xenial) |
+ +-------------------------+-------------------------------------------------+
+ | -e IMAGE_PROPERTY | normal or nsb: Type of the VM image to be built |
+ | | Default image is Yardstick |
+ +-------------------------+-------------------------------------------------+
+ | -e VIRTUAL_ENVIRONMENT | False or True: Whether install in virtualenv |
+ | | Default is False |
+ +-------------------------+-------------------------------------------------+
+
+
Deploy InfluxDB and Grafana using Docker
----------------------------------------
diff --git a/docs/testing/user/userguide/05-operation.rst b/docs/testing/user/userguide/05-operation.rst
index f390d1643..82539c97f 100644
--- a/docs/testing/user/userguide/05-operation.rst
+++ b/docs/testing/user/userguide/05-operation.rst
@@ -183,7 +183,7 @@ Combining these elements together, a sample Heat context config looks like:
.. literalinclude::
../../../../yardstick/tests/integration/dummy-scenario-heat-context.yaml
:start-after: ---
- :empahsise-lines: 14-
+ :emphasize-lines: 14-
Using exisiting HOT Templates
'''''''''''''''''''''''''''''
diff --git a/docs/testing/user/userguide/08-grafana.rst b/docs/testing/user/userguide/08-grafana.rst
index 29bc23a08..020a08a65 100644
--- a/docs/testing/user/userguide/08-grafana.rst
+++ b/docs/testing/user/userguide/08-grafana.rst
@@ -36,7 +36,7 @@ of TC002.
.. image:: images/TC002.png
:width: 800px
- :alt:TC002 dashboard
+ :alt: TC002 dashboard
For each test case dashboard. On the top left, we have a dashboard selection,
you can switch to different test cases using this pull-down menu.
diff --git a/docs/testing/user/userguide/09-api.rst b/docs/testing/user/userguide/09-api.rst
index f0ae3980b..1a896699b 100644
--- a/docs/testing/user/userguide/09-api.rst
+++ b/docs/testing/user/userguide/09-api.rst
@@ -433,7 +433,7 @@ Example::
/api/v2/yardstick/tasks/<task_id>
---------------------------------
+---------------------------------
Description: This API is used to do some work related to yardstick tasks. For Euphrates, it supports:
diff --git a/docs/testing/user/userguide/12-nsb-overview.rst b/docs/testing/user/userguide/12-nsb-overview.rst
index 71a5c1130..7b0d46804 100644
--- a/docs/testing/user/userguide/12-nsb-overview.rst
+++ b/docs/testing/user/userguide/12-nsb-overview.rst
@@ -10,7 +10,7 @@ Network Services Benchmarking (NSB)
Abstract
========
-.. _Yardstick: https://wiki.opnfv.org/yardstick
+.. _Yardstick: https://wiki.opnfv.org/display/yardstick
This chapter provides an overview of the NSB, a contribution to OPNFV
Yardstick_ from Intel.
diff --git a/docs/testing/user/userguide/13-nsb-installation.rst b/docs/testing/user/userguide/13-nsb-installation.rst
index fb68fbf21..363ad4852 100644
--- a/docs/testing/user/userguide/13-nsb-installation.rst
+++ b/docs/testing/user/userguide/13-nsb-installation.rst
@@ -3,12 +3,23 @@
.. http://creativecommons.org/licenses/by/4.0
.. (c) OPNFV, 2016-2017 Intel Corporation.
+..
+ Convention for heading levels in Yardstick documentation:
+
+ ======= Heading 0 (reserved for the title in a document)
+ ------- Heading 1
+ ~~~~~~~ Heading 2
+ +++++++ Heading 3
+ ''''''' Heading 4
+
+ Avoid deeper levels because they do not render well.
+
=====================================
Yardstick - NSB Testing -Installation
=====================================
Abstract
-========
+--------
The Network Service Benchmarking (NSB) extends the yardstick framework to do
VNF characterization and benchmarking in three different execution
@@ -27,7 +38,7 @@ The steps needed to run Yardstick with NSB testing are:
Prerequisites
-=============
+-------------
Refer chapter Yardstick Installation for more information on yardstick
prerequisites
@@ -46,7 +57,7 @@ Several prerequisites are needed for Yardstick (VNF testing):
* intel-cmt-cat
Hardware & Software Ingredients
--------------------------------
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SUT requirements:
@@ -85,7 +96,7 @@ Boot and BIOS settings:
Install Yardstick (NSB Testing)
-===============================
+-------------------------------
Download the source code and install Yardstick from it
@@ -168,8 +179,12 @@ It will also automatically download all the packages needed for NSB Testing
setup. Refer chapter :doc:`04-installation` for more on docker
**Install Yardstick using Docker (recommended)**
-System Topology:
-================
+Another way to execute an installation for a Bare-Metal or a Standalone context
+is to use ansible script ``install.yaml``. Refer chapter :doc:`04-installation`
+for more details.
+
+System Topology
+---------------
.. code-block:: console
@@ -184,10 +199,10 @@ System Topology:
Environment parameters and credentials
-======================================
+--------------------------------------
Config yardstick conf
----------------------
+~~~~~~~~~~~~~~~~~~~~~
If user did not run 'yardstick env influxdb' inside the container, which will
generate correct ``yardstick.conf``, then create the config file manually (run
@@ -218,11 +233,11 @@ Add trex_path, trex_client_lib and bin_path in 'nsb' section.
trex_client_lib=/opt/nsb_bin/trex_client/stl
Run Yardstick - Network Service Testcases
-=========================================
+-----------------------------------------
NS testing - using yardstick CLI
---------------------------------
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
See :doc:`04-installation`
@@ -235,13 +250,13 @@ NS testing - using yardstick CLI
yardstick --debug task start yardstick/samples/vnf_samples/nsut/<vnf>/<test case>
Network Service Benchmarking - Bare-Metal
-=========================================
+-----------------------------------------
Bare-Metal Config pod.yaml describing Topology
-----------------------------------------------
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Bare-Metal 2-Node setup
-^^^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++++
.. code-block:: console
+----------+ +----------+
@@ -254,7 +269,7 @@ Bare-Metal 2-Node setup
trafficgen_1 vnf
Bare-Metal 3-Node setup - Correlated Traffic
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++++++++++++++++++++++++
.. code-block:: console
+----------+ +----------+ +------------+
@@ -269,7 +284,7 @@ Bare-Metal 3-Node setup - Correlated Traffic
Bare-Metal Config pod.yaml
---------------------------
+~~~~~~~~~~~~~~~~~~~~~~~~~~
Before executing Yardstick test cases, make sure that pod.yaml reflects the
topology and update all the required fields.::
@@ -344,13 +359,13 @@ topology and update all the required fields.::
Network Service Benchmarking - Standalone Virtualization
-========================================================
+--------------------------------------------------------
SR-IOV
-------
+~~~~~~
SR-IOV Pre-requisites
-^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++
On Host, where VM is created:
a) Create and configure a bridge named ``br-int`` for VM to connect to external network.
@@ -421,10 +436,10 @@ On Host, where VM is created:
SR-IOV Config pod.yaml describing Topology
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++++++++++++++++++++++
-SR-IOV 2-Node setup:
-^^^^^^^^^^^^^^^^^^^^
+SR-IOV 2-Node setup
++++++++++++++++++++
.. code-block:: console
+--------------------+
@@ -452,7 +467,7 @@ SR-IOV 2-Node setup:
SR-IOV 3-Node setup - Correlated Traffic
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++++++++++++++++++++
.. code-block:: console
+--------------------+
@@ -488,7 +503,7 @@ topology and update all the required fields.
.. note:: Update all the required fields like ip, user, password, pcis, etc...
SR-IOV Config pod_trex.yaml
-^^^^^^^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++++++++
.. code-block:: YAML
@@ -517,7 +532,7 @@ SR-IOV Config pod_trex.yaml
local_mac: "00:00.00:00:00:02"
SR-IOV Config host_sriov.yaml
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++++++++++
.. code-block:: YAML
@@ -533,7 +548,7 @@ SR-IOV testcase update:
``<yardstick>/samples/vnf_samples/nsut/vfw/tc_sriov_rfc2544_ipv4_1rule_1flow_64B_trex.yaml``
Update "contexts" section
-"""""""""""""""""""""""""
+'''''''''''''''''''''''''
.. code-block:: YAML
@@ -578,10 +593,10 @@ Update "contexts" section
OVS-DPDK
---------
+~~~~~~~~
OVS-DPDK Pre-requisites
-^^^^^^^^^^^^^^^^^^^^^^^
+~~~~~~~~~~~~~~~~~~~~~~~
On Host, where VM is created:
a) Create and configure a bridge named ``br-int`` for VM to connect to external network.
@@ -655,11 +670,10 @@ On Host, where VM is created:
OVS-DPDK Config pod.yaml describing Topology
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++++++++++++++++++++++++
OVS-DPDK 2-Node setup
-^^^^^^^^^^^^^^^^^^^^^
-
++++++++++++++++++++++
.. code-block:: console
@@ -689,7 +703,7 @@ OVS-DPDK 2-Node setup
OVS-DPDK 3-Node setup - Correlated Traffic
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++++++++++++++++++++++
.. code-block:: console
@@ -729,7 +743,7 @@ topology and update all the required fields.
.. note:: Update all the required fields like ip, user, password, pcis, etc...
OVS-DPDK Config pod_trex.yaml
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++++++++++
.. code-block:: YAML
@@ -757,7 +771,7 @@ OVS-DPDK Config pod_trex.yaml
local_mac: "00:00.00:00:00:02"
OVS-DPDK Config host_ovs.yaml
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++++++++++
.. code-block:: YAML
@@ -773,7 +787,7 @@ ovs_dpdk testcase update:
``<yardstick>/samples/vnf_samples/nsut/vfw/tc_ovs_rfc2544_ipv4_1rule_1flow_64B_trex.yaml``
Update "contexts" section
-"""""""""""""""""""""""""
+'''''''''''''''''''''''''
.. code-block:: YAML
@@ -828,7 +842,7 @@ Update "contexts" section
Network Service Benchmarking - OpenStack with SR-IOV support
-============================================================
+------------------------------------------------------------
This section describes how to run a Sample VNF test case, using Heat context,
with SR-IOV. It also covers how to install OpenStack in Ubuntu 16.04, using
@@ -836,7 +850,7 @@ DevStack, with SR-IOV support.
Single node OpenStack setup with external TG
---------------------------------------------
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. code-block:: console
@@ -867,7 +881,7 @@ Single node OpenStack setup with external TG
Host pre-configuration
-^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++
.. warning:: The following configuration requires sudo access to the system. Make
sure that your user have the access.
@@ -967,7 +981,7 @@ Setup SR-IOV ports on the host:
DevStack installation
-^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++
Use official `Devstack <https://docs.openstack.org/devstack/pike/>`_
documentation to install OpenStack on a host. Please note, that stable
@@ -989,7 +1003,7 @@ Start the devstack installation on a host.
TG host configuration
-^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++
Yardstick automatically install and configure Trex traffic generator on TG
host based on provided POD file (see below). Anyway, it's recommended to check
@@ -998,7 +1012,7 @@ the manual at https://trex-tgn.cisco.com/trex/doc/trex_manual.html.
Run the Sample VNF test case
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++++++++
There is an example of Sample VNF test case ready to be executed in an
OpenStack environment with SR-IOV support: ``samples/vnf_samples/nsut/vfw/
@@ -1023,7 +1037,7 @@ context using steps described in `NS testing - using yardstick CLI`_ section.
Multi node OpenStack TG and VNF setup (two nodes)
--------------------------------------------------
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. code-block:: console
@@ -1054,14 +1068,14 @@ Multi node OpenStack TG and VNF setup (two nodes)
Controller/Compute pre-configuration
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++++++++++++++++
Pre-configuration of the controller and compute hosts are the same as
described in `Host pre-configuration`_ section. Follow the steps in the section.
DevStack configuration
-^^^^^^^^^^^^^^^^^^^^^^
+++++++++++++++++++++++
Use official `Devstack <https://docs.openstack.org/devstack/pike/>`_
documentation to install OpenStack on a host. Please note, that stable
@@ -1088,7 +1102,7 @@ Start the devstack installation on the controller and compute hosts.
Run the sample vFW TC
-^^^^^^^^^^^^^^^^^^^^^
++++++++++++++++++++++
Install yardstick using `Install Yardstick (NSB Testing)`_ steps for OpenStack
context.
@@ -1105,10 +1119,10 @@ and the following yardtick command line arguments:
Enabling other Traffic generator
-================================
+--------------------------------
IxLoad
-^^^^^^
+~~~~~~
1. Software needed: IxLoadAPI ``<IxLoadTclApi verson>Linux64.bin.tgz`` and
``<IxOS version>Linux64.bin.tar.gz`` (Download from ixia support site)
@@ -1149,7 +1163,7 @@ IxLoad
``<repo>/samples/vnf_samples/nsut/vfw/tc_baremetal_http_ixload_1b_Requests-65000_Concurrency.yaml``
IxNetwork
----------
+~~~~~~~~~
IxNetwork testcases use IxNetwork API Python Bindings module, which is
installed as part of the requirements of the project.
diff --git a/docs/testing/user/userguide/14-nsb-operation.rst b/docs/testing/user/userguide/14-nsb-operation.rst
index a5f3a0cf6..b4adf7855 100644
--- a/docs/testing/user/userguide/14-nsb-operation.rst
+++ b/docs/testing/user/userguide/14-nsb-operation.rst
@@ -256,7 +256,7 @@ to the VNF.
An example scale-up Heat testcase is:
-.. literalinclude:: /submodules/yardstick/samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_scale-up.yaml
+.. literalinclude:: /../samples/vnf_samples/nsut/vfw/tc_heat_rfc2544_ipv4_1rule_1flow_64B_trex_scale-up.yaml
:language: yaml
This testcase template requires specifying the number of VCPUs, Memory and Ports.
@@ -271,7 +271,7 @@ In order to support ports scale-up, traffic and topology templates need to be us
A example topology template is:
-.. literalinclude:: /submodules/yardstick/samples/vnf_samples/nsut/vfw/vfw-tg-topology-scale-up.yaml
+.. literalinclude:: /../samples/vnf_samples/nsut/vfw/vfw-tg-topology-scale-up.yaml
:language: yaml
This template has ``vports`` as an argument. To pass this argument it needs to
@@ -293,7 +293,7 @@ For example:
A example traffic profile template is:
-.. literalinclude:: /submodules/yardstick/samples/vnf_samples/traffic_profiles/ipv4_throughput-scale-up.yaml
+.. literalinclude:: /../samples/vnf_samples/traffic_profiles/ipv4_throughput-scale-up.yaml
:language: yaml
There is an option to provide predefined config for SampleVNFs. Path to config
@@ -457,5 +457,5 @@ Sample test case file
4. Modify ``networks/phy_port`` accordingly to the baremetal setup.
5. Run test from:
-.. literalinclude:: /submodules/yardstick/samples/vnf_samples/nsut/acl/tc_ovs_rfc2544_ipv4_1rule_1flow_64B_trex.yaml
+.. literalinclude:: /../samples/vnf_samples/nsut/acl/tc_ovs_rfc2544_ipv4_1rule_1flow_64B_trex.yaml
:language: yaml
diff --git a/docs/testing/user/userguide/15-list-of-tcs.rst b/docs/testing/user/userguide/15-list-of-tcs.rst
index 0efecebd1..2f0a87144 100644
--- a/docs/testing/user/userguide/15-list-of-tcs.rst
+++ b/docs/testing/user/userguide/15-list-of-tcs.rst
@@ -118,17 +118,6 @@ StorPerf
opnfv_yardstick_tc074.rst
-virtual Traffic Classifier
---------------------------
-
-.. toctree::
- :maxdepth: 1
-
- opnfv_yardstick_tc006.rst
- opnfv_yardstick_tc007.rst
- opnfv_yardstick_tc020.rst
- opnfv_yardstick_tc021.rst
-
Templates
=========
diff --git a/docs/testing/user/userguide/comp-intro.rst b/docs/testing/user/userguide/comp-intro.rst
index ad354b66d..bab6e60da 100644
--- a/docs/testing/user/userguide/comp-intro.rst
+++ b/docs/testing/user/userguide/comp-intro.rst
@@ -7,10 +7,10 @@
Yardstick
=========
-.. _Yardstick: https://wiki.opnfv.org/yardstick
+.. _Yardstick: https://wiki.opnfv.org/display/yardstick
.. _Presentation: https://wiki.opnfv.org/_media/opnfv_summit_-_yardstick_project.pdf
.. _NFV-TST001: https://docbox.etsi.org/ISG/NFV/Open/Drafts/TST001_-_Pre-deployment_Validation/
-.. _Yardsticktst: https://wiki.opnfv.org/_media/opnfv_summit_-_bridging_opnfv_and_etsi.pdf
+.. _Yardsticktst: http://events17.linuxfoundation.org/sites/events/files/slides/OPNFV%20Summit%20-%20bridging_opnfv_and_etsi.pdf
The project's goal is to verify infrastructure compliance, from the perspective
of a Virtual Network Function (VNF).
diff --git a/docs/testing/user/userguide/glossary.rst b/docs/testing/user/userguide/glossary.rst
index be98aa6c0..6a153943c 100644
--- a/docs/testing/user/userguide/glossary.rst
+++ b/docs/testing/user/userguide/glossary.rst
@@ -13,6 +13,11 @@ Glossary
API
Application Programming Interface
+ Docker
+ Docker provisions and manages containers. Yardstick and many other OPNFV
+ projects are deployed in containers. Docker is required to launch the
+ containerized versions of these projects.
+
DPI
Deep Packet Inspection
@@ -27,36 +32,80 @@ Glossary
IOPS
Input/Output Operations Per Second
+ A performance measurement used to benchmark storage devices.
+
+ KPI
+ Key Performance Indicator
+
+ Kubernetes
+ k8s
+ Kubernetes is an open-source container-orchestration system for automating
+ deployment, scaling and management of containerized applications.
+ It is one of the contexts supported in Yardstick.
+
+ NFV
+ Network Function Virtualization
+ NFV is an initiative to take network services which were traditionally run
+ on proprietary, dedicated hardware, and virtualize them to run on general
+ purpose hardware.
+
+ NFVI
+ Network Function Virtualization Infrastructure
+ The servers, routers, switches, etc on which the NFV system runs.
NIC
Network Interface Controller
+ OpenStack
+ OpenStack is a cloud operating system that controls pools of compute,
+ storage, and networking resources. OpenStack is an open source project
+ licensed under the Apache License 2.0.
+
PBFS
Packet Based per Flow State
+ PROX
+ Packet pROcessing eXecution engine
+
QoS
Quality of Service
+ The ability to guarantee certain network or storage requirements to
+ satisfy a Service Level Agreement (SLA) between an application provider
+ and end users.
+ Typically includes performance requirements like networking bandwidth,
+ latency, jitter correction, and reliability as well as storage
+ performance in Input/Output Operations Per Second (IOPS), throttling
+ agreements, and performance expectations at peak load
+
+ SLA
+ Service Level Agreement
+ An SLA is an agreement between a service provider and a customer to
+ provide a certain level of service/performance.
+
+ SR-IOV
+ Single Root IO Virtualization
+ A specification that, when implemented by a physical PCIe
+ device, enables it to appear as multiple separate PCIe devices. This
+ enables multiple virtualized guests to share direct access to the
+ physical device.
+
+ SUT
+ System Under Test
+
+ ToS
+ Type of Service
VLAN
- Virtual LAN
+ Virtual LAN (Local Area Network)
VM
Virtual Machine
+ An operating system instance that runs on top of a hypervisor.
+ Multiple VMs can run at the same time on the same physical
+ host.
VNF
Virtual Network Function
VNFC
Virtual Network Function Component
-
- NFVI
- Network Function Virtualization Infrastructure
-
- SR-IOV
- Single Root IO Virtualization
-
- SUT
- System Under Test
-
- ToS
- Type of Service
diff --git a/docs/testing/user/userguide/nsb/nsb-list-of-tcs.rst b/docs/testing/user/userguide/nsb/nsb-list-of-tcs.rst
index 895837283..f9ca900fd 100644
--- a/docs/testing/user/userguide/nsb/nsb-list-of-tcs.rst
+++ b/docs/testing/user/userguide/nsb/nsb-list-of-tcs.rst
@@ -28,3 +28,8 @@ NSB PROX Test Case Descriptions
tc_prox_context_load_balancer_port
tc_prox_context_vpe_port
tc_prox_context_lw_after_port
+ tc_epc_default_bearer_landslide
+ tc_epc_dedicated_bearer_landslide
+ tc_epc_saegw_tput_relocation_landslide
+ tc_epc_network_service_request_landslide
+ tc_epc_ue_service_request_landslide
diff --git a/docs/testing/user/userguide/nsb/tc_epc_dedicated_bearer_landslide.rst b/docs/testing/user/userguide/nsb/tc_epc_dedicated_bearer_landslide.rst
new file mode 100644
index 000000000..c8865ed93
--- /dev/null
+++ b/docs/testing/user/userguide/nsb/tc_epc_dedicated_bearer_landslide.rst
@@ -0,0 +1,156 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International
+.. License.
+.. http://creativecommons.org/licenses/by/4.0
+.. (c) OPNFV, 2018 Intel Corporation.
+
+*********************************************************
+Yardstick Test Case Description: NSB EPC DEDICATED BEARER
+*********************************************************
+
++-----------------------------------------------------------------------------+
+|NSB EPC dedicated bearer test case |
+| |
++--------------+--------------------------------------------------------------+
+|test case id | tc_epc_{initiator}_dedicated_bearer_landslide |
+| | |
+| | * initiator: dedicated bearer creation initiator side could |
+| | be UE (ue) or Network (network). |
+| | |
++--------------+--------------------------------------------------------------+
+|metric | All metrics provided by Spirent Landslide traffic generator |
+| | |
++--------------+--------------------------------------------------------------+
+|test purpose | The Spirent Landslide product provides one box solution which|
+| | allows to fully emulate all EPC network nodes including |
+| | mobile users, network host and generate control and data |
+| | plane traffic. |
+| | |
+| | This test allows to check processing capability under |
+| | different levels of load (number of subscriber, generated |
+| | traffic throughput, etc.) for case when default and dedicated|
+| | bearers are creating and using for traffic transferring. |
+| | |
+| | It's easy to replace emulated node or multiple nodes in test |
+| | topology with real node or corresponding vEPC VNF as DUT and |
+| | check it's processing capabilities under specific test case |
+| | load conditions. |
+| | |
++--------------+--------------------------------------------------------------+
+|configuration | The EPC dedicated bearer test cases are listed below: |
+| | |
+| | * tc_epc_ue_dedicated_bearer_create_landslide.yaml |
+| | * tc_epc_network_dedicated_bearer_create_landslide.yaml |
+| | |
+| | Test duration: |
+| | |
+| | * is set as 60sec (specified in test session profile); |
+| | |
+| | Traffic type: |
+| | |
+| | * UDP; |
+| | |
+| | Packet sizes: |
+| | |
+| | * 512 bytes; |
+| | |
+| | Traffic transaction rate: |
+| | |
+| | * 5 trans/s.; |
+| | |
+| | Number of mobile subscribers: |
+| | |
+| | * 20000; |
+| | |
+| | Number of default bearers per subscriber: |
+| | |
+| | * 1; |
+| | |
+| | Number of dedicated bearers per default bearer: |
+| | |
+| | * 1. |
+| | |
+| | The above fields and values are the main options used for the|
+| | test case. Other configurable options could be found in test |
+| | session profile yaml file. All these options have default |
+| | values which can be overwritten in test case file. |
+| | |
++--------------+--------------------------------------------------------------+
+|test tool | Spirent Landslide |
+| | |
+| | The Spirent Landslide is a tool for functional and |
+| | performance testing of different types of mobile networks. |
+| | It emulates real-world control and data traffic of mobile |
+| | subscribers moving through virtualized EPC network. |
+| | Detailed description of Spirent Landslide product could be |
+| | found here: https://www.spirent.com/Products/Landslide |
+| | |
++--------------+--------------------------------------------------------------+
+|applicability | This EPC DEDICATED BEARER test cases can be configured with |
+| | different: |
+| | |
+| | * packet sizes; |
+| | * traffic transaction rate; |
+| | * number of subscribers sessions; |
+| | * number of default bearers per subscriber; |
+| | * number of dedicated bearers per default; |
+| | * subscribers connection rate; |
+| | * subscribers disconnection rate; |
+| | * dedicated bearers activation timeout; |
+| | * DMF (traffic profile); |
+| | * enable/disable Fireball DMF threading model that provides |
+| | optimized performance; |
+| | |
+| | Default values exist. |
+| | |
++--------------+--------------------------------------------------------------+
+|references | ETSI-NFV-TST001 |
+| | |
+| | 3GPP TS 32.455 |
+| | |
++--------------+--------------------------------------------------------------+
+| pre-test | * All Spirent Landslide dependencies need to be installed. |
+| conditions | The steps are described in NSB installation chapter for the|
+| | Spirent Landslide vEPC tests; |
+| | |
+| | * The pod.yaml file contains all necessary information (TAS |
+| | VM IP address, NICs, emulated SUTs and Test Nodes |
+| | parameters (names, types, ip addresses, etc.). |
+| | |
++--------------+--------------------------------------------------------------+
+|test sequence | description and expected result |
+| | |
++--------------+--------------------------------------------------------------+
+|step 1 | Spirent Landslide components are running on the hosts |
+| | specified in the pod file. |
+| | |
++--------------+--------------------------------------------------------------+
+|step 2 | Yardstick is connected with Spirent Landslide Test |
+| | Administrator Server (TAS) by TCL and REST API. The test |
+| | will resolve the topology and instantiate all emulated EPC |
+| | network nodes. |
+| | |
++--------------+--------------------------------------------------------------+
+|step 3 | Test scenarios run, which performs the following steps: |
+| | |
+| | * Start the emulated EPC network nodes; |
+| | * Establish the subscribers connections to EPC network |
+| | (default bearers); |
+| | * Establish the number of dedicated bearers as per per |
+| | default bearer for each subscriber; |
+| | * Create the sessions and transmit traffic through EPC |
+| | network nodes during the specified traffic duration time; |
+| | * Disconnect dedicated bearers; |
+| | * Disconnect subscribers at the end of the test. |
+| | |
++--------------+--------------------------------------------------------------+
+|step 4 | During test run, all the metrics provided by Spirent |
+| | Landslide are stored in the yardstick dispatcher. |
+| | |
++--------------+--------------------------------------------------------------+
+|test verdict | The test case will create the test session in Spirent |
+| | Landslide with the test case parameters and store the results|
+| | in the database for benchmarking purposes. The aim is only |
+| | to collect all the metrics that are provided by Spirent |
+| | Landslide product for each test specific scenario. |
+| | |
++--------------+--------------------------------------------------------------+
diff --git a/docs/testing/user/userguide/nsb/tc_epc_default_bearer_landslide.rst b/docs/testing/user/userguide/nsb/tc_epc_default_bearer_landslide.rst
new file mode 100644
index 000000000..9e6d77825
--- /dev/null
+++ b/docs/testing/user/userguide/nsb/tc_epc_default_bearer_landslide.rst
@@ -0,0 +1,149 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International
+.. License.
+.. http://creativecommons.org/licenses/by/4.0
+.. (c) OPNFV, 2018 Intel Corporation.
+
+*******************************************************
+Yardstick Test Case Description: NSB EPC DEFAULT BEARER
+*******************************************************
+
++-----------------------------------------------------------------------------+
+|NSB EPC default bearer test case |
+| |
++--------------+--------------------------------------------------------------+
+|test case id | tc_epc_default_bearer_landslide_{dmf_setup} |
+| | |
+| | * dmf_setup: single or multi dmf test session setup; |
+| | |
++--------------+--------------------------------------------------------------+
+|metric | All metrics provided by Spirent Landslide traffic generator |
+| | |
++--------------+--------------------------------------------------------------+
+|test purpose | The Spirent Landslide product provides one box solution which|
+| | allows to fully emulate all EPC network nodes including |
+| | mobile users, network host and generate control and data |
+| | plane traffic. |
+| | |
+| | This test allows to check processing capability of EPC under |
+| | different levels of load (number of subscriber, generated |
+| | traffic throughput) for case when only one default bearer is |
+| | using for transferring traffic from UE to Network. |
+| | |
+| | It's easy to replace emulated node or multiple nodes in test |
+| | topology with real node or corresponding vEPC VNF as DUT and |
+| | check it's processing capabilities under specific test case |
+| | load conditions. |
+| | |
++--------------+--------------------------------------------------------------+
+|configuration | The EPC default bearer test cases are listed below: |
+| | |
+| | * tc_epc_default_bearer_create_landslide.yaml |
+| | * tc_epc_default_bearer_create_landslide_multi_dmf.yaml |
+| | |
+| | Test duration: |
+| | |
+| | * is set as 60sec (specified in test session profile); |
+| | |
+| | Traffic type: |
+| | |
+| | * UDP - for single DMF test case; |
+| | * UDP and TCP - for multi DMF test case; |
+| | |
+| | Packet sizes: |
+| | |
+| | * 512 bytes for UDP packets; |
+| | * 1518 bytes for TCP packets; |
+| | |
+| | Traffic transaction rate: |
+| | |
+| | * 5 trans/s.; |
+| | |
+| | Number of mobile subscribers: |
+| | |
+| | * 20000; |
+| | |
+| | Number of default bearers per subscriber: |
+| | |
+| | * 1. |
+| | |
+| | The above fields and values are the main options used for the|
+| | test case. Other configurable options could be found in test |
+| | session profile yaml file. All these options have default |
+| | values which can be overwritten in test case file. |
+| | |
++--------------+--------------------------------------------------------------+
+|test tool | Spirent Landslide |
+| | |
+| | The Spirent Landslide is a tool for functional & performance |
+| | testing of different types of mobile networks. It emulates |
+| | real-world control and data traffic of mobile subscribers |
+| | moving through virtualized EPC network. |
+| | Detailed description of Spirent Landslide product could be |
+| | found here: https://www.spirent.com/Products/Landslide |
+| | |
++--------------+--------------------------------------------------------------+
+|applicability | This EPC DEFAULT BEARER test cases can be configured with |
+| | different: |
+| | |
+| | * packet sizes; |
+| | * traffic transaction rate; |
+| | * number of subscribers sessions; |
+| | * number of default bearers per subscriber; |
+| | * subscribers connection rate; |
+| | * subscribers disconnection rate; |
+| | * DMF (traffic profile); |
+| | * enable/disable Fireball DMF threading model that provides |
+| | optimized performance; |
+| | |
+| | Default values exist. |
+| | |
++--------------+--------------------------------------------------------------+
+|references | ETSI-NFV-TST001 |
+| | |
+| | 3GPP TS 32.455 |
+| | |
++--------------+--------------------------------------------------------------+
+| pre-test | * All Spirent Landslide dependencies are installed (detailed |
+| conditions | installation steps are described in Chapter 13- |
+| | nsb-installation.rst and 14-nsb-operation.rst file for NSB |
+| | Spirent Landslide vEPC tests; |
+| | |
+| | * The pod.yaml file contains all necessary information |
+| | (TAS VM IP address, NICs, emulated SUTs and Test Nodes |
+| | parameters (names, types, ip addresses, etc.). |
+| | |
++--------------+--------------------------------------------------------------+
+|test sequence | description and expected result |
+| | |
++--------------+--------------------------------------------------------------+
+|step 1 | Spirent Landslide components are running on the hosts |
+| | specified in the pod file. |
+| | |
++--------------+--------------------------------------------------------------+
+|step 2 | Yardstick is connected with Spirent Landslide Test |
+| | Administration Server (TAS) by TCL and REST API. The test |
+| | will resolve the topology and instantiate all emulated EPC |
+| | network nodes. |
+| | |
++--------------+--------------------------------------------------------------+
+|step 3 | Test scenarios run, which performs the following steps: |
+| | |
+| | * Start emulated EPC network nodes; |
+| | * Establish subscribers connections to EPC network (only |
+| | default bearers are established); |
+| | * Create the sessions and transmit traffic through EPC |
+| | network nodes during the specified traffic duration time; |
+| | * Disconnect subscribers at the end of the test. |
+| | |
++--------------+--------------------------------------------------------------+
+|step 4 | During test run, all the metrics provided by Spirent |
+| | Landslide are stored in the yardstick dispatcher. |
+| | |
++--------------+--------------------------------------------------------------+
+|test verdict | The test case will create the test session in Spirent |
+| | Landslide with the test case parameters and store the |
+| | results in the database for benchmarking purposes. The aim |
+| | is only to collect all the metrics that are provided by |
+| | Spirent Landslide product for each test specific scenario. |
+| | |
++--------------+--------------------------------------------------------------+
diff --git a/docs/testing/user/userguide/nsb/tc_epc_network_service_request_landslide.rst b/docs/testing/user/userguide/nsb/tc_epc_network_service_request_landslide.rst
new file mode 100644
index 000000000..85e6ce11a
--- /dev/null
+++ b/docs/testing/user/userguide/nsb/tc_epc_network_service_request_landslide.rst
@@ -0,0 +1,159 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International
+.. License.
+.. http://creativecommons.org/licenses/by/4.0
+.. (c) OPNFV, 2018 Intel Corporation.
+
+****************************************************************
+Yardstick Test Case Description: NSB EPC NETWORK SERVICE REQUEST
+****************************************************************
+
++-----------------------------------------------------------------------------+
+|NSB EPC network service request test case |
+| |
++--------------+--------------------------------------------------------------+
+|test case id | tc_epc_network_service_request_landslide |
+| | |
+| | * initiator: service request initiator side could be UE (ue) |
+| | or Network (network). |
+| | |
++--------------+--------------------------------------------------------------+
+|metric | All metrics provided by Spirent Landslide traffic generator |
+| | |
++--------------+--------------------------------------------------------------+
+|test purpose | The Spirent Landslide product provides one box solution which|
+| | allows to fully emulate all EPC network nodes including |
+| | mobile users, network host and generate control and data |
+| | plane traffic. |
+| | |
+| | This test covers case of network initiated service request & |
+| | allows to check processing capabilities of EPC handling high |
+| | amount of continuous Downlink Data Notification messages from|
+| | network to UEs which are in Idle state. |
+| | |
+| | It's easy to replace emulated node or multiple nodes in test |
+| | topology with real node or corresponding vEPC VNF as DUT and |
+| | check it's processing capabilities under specific test case |
+| | load conditions. |
+| | |
++--------------+--------------------------------------------------------------+
+|configuration | The EPC network service request test cases are listed below: |
+| | |
+| | * tc_epc_network_service_request_landslide.yaml |
+| | |
+| | Test duration: |
+| | |
+| | * is set as 60sec (specified in test session profile); |
+| | |
+| | Traffic type: |
+| | |
+| | * UDP; |
+| | |
+| | Packet sizes: |
+| | |
+| | * 512 bytes; |
+| | |
+| | Traffic transaction rate: |
+| | |
+| | * 0.1 trans/s.; |
+| | |
+| | Number of mobile subscribers: |
+| | |
+| | * 20000; |
+| | |
+| | Number of default bearers per subscriber: |
+| | |
+| | * 1; |
+| | |
+| | Idle entry time (timeout after which UE goes to Idle state): |
+| | |
+| | * 5s; |
+| | |
+| | Traffic start delay: |
+| | |
+| | * 1000ms. |
+| | |
+| | The above fields and values are the main options used for the|
+| | test case. Other configurable options could be found in test |
+| | session profile yaml file. All these options have default |
+| | values which can be overwritten in test case file. |
+| | |
++--------------+--------------------------------------------------------------+
+|test tool | Spirent Landslide |
+| | |
+| | The Spirent Landslide is a tool for functional & performance |
+| | testing of different types of mobile networks. It emulates |
+| | real-world control and data traffic of mobile subscribers |
+| | moving through virtualized EPC network. |
+| | Detailed description of Spirent Landslide product could be |
+| | found here: https://www.spirent.com/Products/Landslide |
+| | |
++--------------+--------------------------------------------------------------+
+|applicability | This EPC NETWORK SERVICE REQUEST test case can be configured |
+| | with different: |
+| | |
+| | * packet sizes; |
+| | * traffic transaction rate; |
+| | * number of subscribers sessions; |
+| | * number of default bearers per subscriber; |
+| | * subscribers connection rate; |
+| | * subscribers disconnection rate; |
+| | * timeout after which UE goes to Idle state; |
+| | * Traffic start delay; |
+| | |
+| | Default values exist. |
+| | |
++--------------+--------------------------------------------------------------+
+|references | ETSI-NFV-TST001 |
+| | |
+| | 3GPP TS 32.455 |
+| | |
++--------------+--------------------------------------------------------------+
+| pre-test | * All Spirent Landslide dependencies are installed (detailed |
+| conditions | installation steps are described in Chapter 13- |
+| | nsb-installation.rst and 14-nsb-operation.rst file for NSB |
+| | Spirent Landslide vEPC tests; |
+| | |
+| | * The pod.yaml file contains all necessary information |
+| | (TAS VM IP address, NICs, emulated SUTs and Test Nodes |
+| | parameters (names, types, ip addresses, etc.). |
+| | |
++--------------+--------------------------------------------------------------+
+|test sequence | description and expected result |
+| | |
++--------------+--------------------------------------------------------------+
+|step 1 | Spirent Landslide components are running on the hosts |
+| | specified in the pod file. |
+| | |
++--------------+--------------------------------------------------------------+
+|step 2 | Yardstick is connected with Spirent Landslide Test |
+| | Administration Server (TAS) by TCL and REST API. The test |
+| | will resolve the topology and instantiate all emulated EPC |
+| | network nodes. |
+| | |
++--------------+--------------------------------------------------------------+
+|step 3 | Test scenarios run, which performs the following steps: |
+| | |
+| | * Start emulated EPC network nodes; |
+| | * Establish subscribers connections to EPC network (default |
+| | bearers); |
+| | * Switch UE to Idle state after specified in test case |
+| | timeout; |
+| | * Send Downlink Data Notification from network to UE, that |
+| | will return UE to active state. This process is continuous |
+| | and during whole test run UEs will be going to Idle state |
+| | and will be switched back to active state after Downlink |
+| | Data Notification was received; |
+| | * Disconnect subscribers at the end of the test. |
+| | |
++--------------+--------------------------------------------------------------+
+|step 4 | During test run, all the metrics provided by Spirent |
+| | Landslide are stored in the yardstick dispatcher. |
+| | |
++--------------+--------------------------------------------------------------+
+|test verdict | The test case will create the test session in Spirent |
+| | Landslide with the test case parameters and store the |
+| | results in the database for benchmarking purposes. The aim |
+| | is only to collect all the metrics that are provided by |
+| | Spirent Landslide product for each test specific scenario. |
+| | |
++--------------+--------------------------------------------------------------+
diff --git a/docs/testing/user/userguide/nsb/tc_epc_saegw_tput_relocation_landslide.rst b/docs/testing/user/userguide/nsb/tc_epc_saegw_tput_relocation_landslide.rst
new file mode 100644
index 000000000..102517562
--- /dev/null
+++ b/docs/testing/user/userguide/nsb/tc_epc_saegw_tput_relocation_landslide.rst
@@ -0,0 +1,167 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International
+.. License.
+.. http://creativecommons.org/licenses/by/4.0
+.. (c) OPNFV, 2018 Intel Corporation.
+
+*********************************************************
+Yardstick Test Case Description: NSB EPC SAEGW RELOCATION
+*********************************************************
+
++-----------------------------------------------------------------------------+
+|NSB EPC SAEGW throughput with relocation test case |
+| |
++--------------+--------------------------------------------------------------+
+|test case id | tc_epc_saegw_tput_relocation_landslide |
+| | |
+| | |
++--------------+--------------------------------------------------------------+
+|metric | All metrics provided by Spirent Landslide traffic generator |
+| | |
++--------------+--------------------------------------------------------------+
+|test purpose | The Spirent Landslide product provides one box solution which|
+| | allows to fully emulate all EPC network nodes including |
+| | mobile users, network host and generate control and data |
+| | plane traffic. |
+| | |
+| | This test allows to check processing capability of EPC |
+| | handling large amount of subscribers X2 handovers between |
+| | different eNBs while UEs are sending traffic. |
+| | |
+| | It's easy to replace emulated node or multiple nodes in test |
+| | topology with real node or corresponding vEPC VNF as DUT and |
+| | check it's processing capabilities under specific test case |
+| | load conditions. |
+| | |
++--------------+--------------------------------------------------------------+
+|configuration | The EPC SAEGW throughput with relocation tests are listed |
+| | below: |
+| | |
+| | * tc_epc_saegw_tput_relocation_landslide.yaml |
+| | |
+| | Test duration: |
+| | |
+| | * is set as 60sec (specified in test session profile); |
+| | |
+| | Traffic type: |
+| | |
+| | * UDP; |
+| | |
+| | Packet sizes: |
+| | |
+| | * 512 bytes; |
+| | |
+| | Traffic transaction rate: |
+| | |
+| | * 5 trans/s.; |
+| | |
+| | Number of mobile subscribers: |
+| | |
+| | * 20000; |
+| | |
+| | Number of default bearers per subscriber: |
+| | |
+| | * 1; |
+| | |
+| | Handover type: |
+| | |
+| | * X2 handover; |
+| | |
+| | Mobility time (timeout after sessions were established after |
+| | which handover will start): |
+| | |
+| | * 10000ms; |
+| | |
+| | Handover start type: |
+| | |
+| | * When all sessions started; |
+| | |
+| | Mobility mode: |
+| | |
+| | * Single handoff; |
+| | |
+| | Mobility Rate: |
+| | |
+| | * 120 subscribers/s. |
+| | |
+| | The above fields and values are the main options used for the|
+| | test case. Other configurable options could be found in test |
+| | session profile yaml file. All these options have default |
+| | values which can be overwritten in test case file. |
+| | |
++--------------+--------------------------------------------------------------+
+|test tool | Spirent Landslide |
+| | |
+| | The Spirent Landslide is a tool for functional & performance |
+| | testing of different types of mobile networks. It emulates |
+| | real-world control and data traffic of mobile subscribers |
+| | moving through virtualized EPC network. |
+| | Detailed description of Spirent Landslide product could be |
+| | found here: https://www.spirent.com/Products/Landslide |
+| | |
++--------------+--------------------------------------------------------------+
+|applicability | This EPC UE SERVICE REQUEST test cases can be configured with|
+| | different: |
+| | |
+| | * packet sizes; |
+| | * traffic transaction rate; |
+| | * number of subscribers sessions; |
+| | * handover type; |
+| | * mobility rate; |
+| | * mobility time; |
+| | * mobility mode; |
+| | * handover start condition; |
+| | * subscribers disconnection rate; |
+| | |
+| | Default values exist. |
+| | |
++--------------+--------------------------------------------------------------+
+|references | ETSI-NFV-TST001 |
+| | |
+| | 3GPP TS 32.455 |
+| | |
++--------------+--------------------------------------------------------------+
+| pre-test | * All Spirent Landslide dependencies are installed (detailed |
+| conditions | installation steps are described in Chapter 13- |
+| | nsb-installation.rst and 14-nsb-operation.rst file for NSB |
+| | Spirent Landslide vEPC tests; |
+| | |
+| | * The pod.yaml file contains all necessary information |
+| | (TAS VM IP address, NICs, emulated SUTs and Test Nodes |
+| | parameters (names, types, ip addresses, etc.). |
+| | |
++--------------+--------------------------------------------------------------+
+|test sequence | description and expected result |
+| | |
++--------------+--------------------------------------------------------------+
+|step 1 | Spirent Landslide components are running on the hosts |
+| | specified in the pod file. |
+| | |
++--------------+--------------------------------------------------------------+
+|step 2 | Yardstick is connected with Spirent Landslide Test |
+| | Administration Server (TAS) by TCL and REST API. The test |
+| | will resolve the topology and instantiate all emulated EPC |
+| | network nodes. |
+| | |
++--------------+--------------------------------------------------------------+
+|step 3 | Test scenarios run, which performs the following steps: |
+| | |
+| | * Start emulated EPC network nodes; |
+| | * Establish subscribers connections to EPC network (default |
+| | bearers); |
+| | * Start run traffic; |
+| | * After specified in test case mobility timeout, start |
+| | handover process on specified mobility rate; |
+| | * Disconnect subscribers at the end of the test. |
+| | |
++--------------+--------------------------------------------------------------+
+|step 4 | During test run, all the metrics provided by Spirent |
+| | Landslide are stored in the yardstick dispatcher. |
+| | |
++--------------+--------------------------------------------------------------+
+|test verdict | The test case will create the test session in Spirent |
+| | Landslide with the test case parameters and store the |
+| | results in the database for benchmarking purposes. The aim |
+| | is only to collect all the metrics that are provided by |
+| | Spirent Landslide product for each test specific scenario. |
+| | |
++--------------+--------------------------------------------------------------+
diff --git a/docs/testing/user/userguide/nsb/tc_epc_ue_service_request_landslide.rst b/docs/testing/user/userguide/nsb/tc_epc_ue_service_request_landslide.rst
new file mode 100644
index 000000000..0711a0ce3
--- /dev/null
+++ b/docs/testing/user/userguide/nsb/tc_epc_ue_service_request_landslide.rst
@@ -0,0 +1,174 @@
+.. This work is licensed under a Creative Commons Attribution 4.0 International
+.. License.
+.. http://creativecommons.org/licenses/by/4.0
+.. (c) OPNFV, 2018 Intel Corporation.
+
+***********************************************************
+Yardstick Test Case Description: NSB EPC UE SERVICE REQUEST
+***********************************************************
+
++-----------------------------------------------------------------------------+
+|NSB EPC UE service request test case |
+| |
++--------------+--------------------------------------------------------------+
+|test case id | tc_epc_{initiator}_service_request_landslide |
+| | |
+| | * initiator: service request initiator side could be UE (ue) |
+| | or Network (nw). |
+| | |
++--------------+--------------------------------------------------------------+
+|metric | All metrics provided by Spirent Landslide traffic generator |
+| | |
++--------------+--------------------------------------------------------------+
+|test purpose | The Spirent Landslide product provides one box solution which|
+| | allows to fully emulate all EPC network nodes including |
+| | mobile users, network host and generate control and data |
+| | plane traffic. |
+| | |
+| | This test allows to check processing capabilities of EPC |
+| | under high user connections rate and traffic load for case |
+| | when UEs initiates service request (UE initiates bearer |
+| | modification request to provide dedicated bearer for new |
+| | type of traffic) |
+| | |
+| | It's easy to replace emulated node or multiple nodes in test |
+| | topology with real node or corresponding vEPC VNF as DUT and |
+| | check it's processing capabilities under specific test case |
+| | load conditions. |
+| | |
++--------------+--------------------------------------------------------------+
+|configuration | The EPC ue service request test cases are listed below: |
+| | |
+| | * tc_epc_ue_service_request_landslide.yaml |
+| | |
+| | Test duration: |
+| | |
+| | * is set as 60sec (specified in test session profile); |
+| | |
+| | Traffic type: |
+| | |
+| | * UDP; |
+| | |
+| | Packet sizes: |
+| | |
+| | * 512 bytes; |
+| | |
+| | Traffic transaction rate: |
+| | |
+| | * 5 trans/s.; |
+| | |
+| | Number of mobile subscribers: |
+| | |
+| | * 20000; |
+| | |
+| | Number of default bearers per subscriber: |
+| | |
+| | * 1; |
+| | |
+| | Number of dedicated bearers per default bearer: |
+| | |
+| | * 1. |
+| | |
+| | TFT settings for dedicated bearers: |
+| | |
+| | * TFT configured to filter TCP traffic (Protocol ID 6) |
+| | |
+| | Modified TFT settings: |
+| | |
+| | * Create new TFT to filter UDP traffic (Protocol ID 17) from |
+| | 2002 local port and 2003 remote port; |
+| | |
+| | Modified QoS settings: |
+| | |
+| | * Set QCI 5 for dedicated bearers; |
+| | |
+| | The above fields and values are the main options used for the|
+| | test case. Other configurable options could be found in test |
+| | session profile yaml file. All these options have default |
+| | values which can be overwritten in test case file. |
+| | |
++--------------+--------------------------------------------------------------+
+|test tool | Spirent Landslide |
+| | |
+| | The Spirent Landslide is a tool for functional & performance |
+| | testing of different types of mobile networks. It emulates |
+| | real-world control and data traffic of mobile subscribers |
+| | moving through virtualized EPC network. |
+| | Detailed description of Spirent Landslide product could be |
+| | found here: https://www.spirent.com/Products/Landslide |
+| | |
++--------------+--------------------------------------------------------------+
+|applicability | This EPC UE SERVICE REQUEST test case can be configured with |
+| | different: |
+| | |
+| | * packet sizes; |
+| | * traffic transaction rate; |
+| | * number of subscribers sessions; |
+| | * number of default bearers per subscriber; |
+| | * number of dedicated bearers per default; |
+| | * subscribers connection rate; |
+| | * subscribers disconnection rate; |
+| | * dedicated bearers activation timeout; |
+| | * DMF (traffic profile); |
+| | * enable/disable Fireball DMF threading model that provides |
+| | optimized performance; |
+| | * Starting TFT settings for dedicated bearers; |
+| | * Modified TFT settings for dedicated bearers; |
+| | * Modified QoS settings for dedicated bearers; |
+| | |
+| | Default values exist. |
+| | |
++--------------+--------------------------------------------------------------+
+|references | ETSI-NFV-TST001 |
+| | |
+| | 3GPP TS 32.455 |
+| | |
++--------------+--------------------------------------------------------------+
+| pre-test | * All Spirent Landslide dependencies are installed (detailed |
+| conditions | installation steps are described in Chapter 13- |
+| | nsb-installation.rst and 14-nsb-operation.rst file for NSB |
+| | Spirent Landslide vEPC tests; |
+| | |
+| | * The pod.yaml file contains all necessary information |
+| | (TAS VM IP address, NICs, emulated SUTs and Test Nodes |
+| | parameters (names, types, ip addresses, etc.). |
+| | |
++--------------+--------------------------------------------------------------+
+|test sequence | description and expected result |
+| | |
++--------------+--------------------------------------------------------------+
+|step 1 | Spirent Landslide components are running on the hosts |
+| | specified in the pod file. |
+| | |
++--------------+--------------------------------------------------------------+
+|step 2 | Yardstick is connected with Spirent Landslide Test |
+| | Administration Server (TAS) by TCL and REST API. The test |
+| | will resolve the topology and instantiate all emulated EPC |
+| | network nodes. |
+| | |
++--------------+--------------------------------------------------------------+
+|step 3 | Test scenarios run, which performs the following steps: |
+| | |
+| | * Start emulated EPC network nodes; |
+| | * Establish subscribers connections to EPC network (default |
+| | bearers); |
+| | * Establish the number of dedicated bearer as specified in |
+| | the test case as per default bearer for each subscriber; |
+| | * start run users traffic through EPC network nodes; |
+| | * During traffic is running, send bearer modification request|
+| | after specified in test case timeout; |
+| | * Disconnect dedicated bearers; |
+| | * Disconnect subscribers at the end of the test. |
+| | |
++--------------+--------------------------------------------------------------+
+|step 4 | During test run, all the metrics provided by Spirent |
+| | Landslide are stored in the yardstick dispatcher. |
+| | |
++--------------+--------------------------------------------------------------+
+|test verdict | The test case will create the test session in Spirent |
+| | Landslide with the test case parameters and store the |
+| | results in the database for benchmarking purposes. The aim |
+| | is only to collect all the metrics that are provided by |
+| | Spirent Landslide product for each test specific scenario. |
+| | |
++--------------+--------------------------------------------------------------+
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc010.rst b/docs/testing/user/userguide/opnfv_yardstick_tc010.rst
index 202307de6..19cc80e30 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc010.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc010.rst
@@ -34,6 +34,7 @@ Yardstick Test Case Description TC010
| | |
| | Lmbench is a suite of operating system microbenchmarks. This |
| | test uses lat_mem_rd tool from that suite including: |
+| | |
| | * Context switching |
| | * Networking: connection establishment, pipe, TCP, UDP, and |
| | RPC hot potato |
@@ -55,7 +56,7 @@ Yardstick Test Case Description TC010
| | The benchmark runs as two nested loops. The outer loop is |
| | the stride size. The inner loop is the array size. For each |
| | array size, the benchmark creates a ring of pointers that |
-| | point backward one stride.Traversing the array is done by: |
+| | point backward one stride. Traversing the array is done by:: |
| | |
| | p = (char **)*p; |
| | |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc011.rst b/docs/testing/user/userguide/opnfv_yardstick_tc011.rst
index 48bdef497..cbb1db91f 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc011.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc011.rst
@@ -60,14 +60,14 @@ Yardstick Test Case Description TC011
| | |
| | * options: |
| | protocol: udp # The protocol used by iperf3 tools |
-| | bandwidth: 20m # It will send the given number of packets |
-| | without pausing |
+| | # Send the given number of packets without pausing: |
+| | bandwidth: 20m |
| | * runner: |
| | duration: 30 # Total test duration 30 seconds. |
| | |
| | * SLA (optional): |
| | jitter: 10 (ms) # The maximum amount of jitter that is |
-| | accepted. |
+| | accepted. |
| | |
+--------------+--------------------------------------------------------------+
|applicability | Test can be configured with different: |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc012.rst b/docs/testing/user/userguide/opnfv_yardstick_tc012.rst
index b56e829f5..2502f5d94 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc012.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc012.rst
@@ -34,6 +34,7 @@ Yardstick Test Case Description TC012
| | |
| | LMbench is a suite of operating system microbenchmarks. |
| | This test uses bw_mem tool from that suite including: |
+| | |
| | * Cached file read |
| | * Memory copy (bcopy) |
| | * Memory read |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc019.rst b/docs/testing/user/userguide/opnfv_yardstick_tc019.rst
index 8d79e011a..d27b201c5 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc019.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc019.rst
@@ -43,20 +43,24 @@ Yardstick Test Case Description TC019
| | |
+--------------+--------------------------------------------------------------+
|monitors | In this test case, two kinds of monitor are needed: |
+| | |
| | 1. the "openstack-cmd" monitor constantly request a specific |
| | Openstack command, which needs two parameters: |
-| | 1) monitor_type: which is used for finding the monitor class |
-| | and related scritps. It should be always set to |
-| | "openstack-cmd" for this monitor. |
-| | 2) command_name: which is the command name used for request |
+| | |
+| | 1. monitor_type: which is used for finding the monitor |
+| | class and related scritps. It should be always set to |
+| | "openstack-cmd" for this monitor. |
+| | 2. command_name: which is the command name used for |
+| | request |
| | |
| | 2. the "process" monitor check whether a process is running |
| | on a specific node, which needs three parameters: |
-| | 1) monitor_type: which used for finding the monitor class |
-| | and related scritps. It should be always set to "process" |
-| | for this monitor. |
-| | 2) process_name: which is the process name for monitor |
-| | 3) host: which is the name of the node runing the process |
+| | |
+| | 1. monitor_type: which used for finding the monitor class |
+| | and related scritps. It should be always set to |
+| | "process" for this monitor. |
+| | 2. process_name: which is the process name for monitor |
+| | 3. host: which is the name of the node runing the process |
| | |
| | e.g. |
| | monitor1: |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc025.rst b/docs/testing/user/userguide/opnfv_yardstick_tc025.rst
index 0e2e9a5f8..f3f9ea6bf 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc025.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc025.rst
@@ -39,12 +39,15 @@ Yardstick Test Case Description TC025
| | |
+--------------+--------------------------------------------------------------+
|monitors | In this test case, one kind of monitor are needed: |
+| | |
| | 1. the "openstack-cmd" monitor constantly request a specific |
| | Openstack command, which needs two parameters |
-| | 1) monitor_type: which is used for finding the monitor class |
-| | and related scritps. It should be always set to |
-| | "openstack-cmd" for this monitor. |
-| | 2) command_name: which is the command name used for request |
+| | |
+| | 1) monitor_type: which is used for finding the monitor |
+| | class and related scripts. It should be always set to |
+| | "openstack-cmd" for this monitor. |
+| | 2) command_name: which is the command name used for |
+| | request |
| | |
| | There are four instance of the "openstack-cmd" monitor: |
| | monitor1: |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc027.rst b/docs/testing/user/userguide/opnfv_yardstick_tc027.rst
index 125fd59fa..90790e2e3 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc027.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc027.rst
@@ -7,7 +7,7 @@
Yardstick Test Case Description TC027
*************************************
-.. _ipv6: https://wiki.opnfv.org/ipv6_opnfv_project
+.. _ipv6: https://wiki.opnfv.org/display/ipv6
+-----------------------------------------------------------------------------+
|IPv6 connectivity between nodes on the tenant network |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc040.rst b/docs/testing/user/userguide/opnfv_yardstick_tc040.rst
index d62fbf787..4c73c9677 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc040.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc040.rst
@@ -7,7 +7,7 @@
Yardstick Test Case Description TC040
*************************************
-.. _Parser: https://wiki.opnfv.org/parser
+.. _Parser: https://wiki.opnfv.org/display/parser
+-----------------------------------------------------------------------------+
|Verify Parser Yang-to-Tosca |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc042.rst b/docs/testing/user/userguide/opnfv_yardstick_tc042.rst
index a0c487c7b..23b98c8f4 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc042.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc042.rst
@@ -9,7 +9,7 @@ Yardstick Test Case Description TC042
.. _DPDK: http://dpdk.org/doc/guides/index.html
.. _Testpmd: http://dpdk.org/doc/guides/testpmd_app_ug/index.html
-.. _Pktgen-dpdk: http://pktgen.readthedocs.io/en/latest/index.html
+.. _Pktgen-dpdk: https://pktgen-dpdk.readthedocs.io/en/latest/index.html
+-----------------------------------------------------------------------------+
|Network Performance |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc050.rst b/docs/testing/user/userguide/opnfv_yardstick_tc050.rst
index 82a491b72..7d01cb99a 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc050.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc050.rst
@@ -35,18 +35,18 @@ Yardstick Test Case Description TC050
| | 3) interface: the network interface to be turned off. |
| | |
| | The interface to be closed by the attacker can be set by the |
-| | variable of "{{ interface_name }}" |
+| | variable of "{{ interface_name }}":: |
| | |
-| | attackers: |
-| | - |
-| | fault_type: "general-attacker" |
-| | host: {{ attack_host }} |
-| | key: "close-br-public" |
-| | attack_key: "close-interface" |
-| | action_parameter: |
-| | interface: {{ interface_name }} |
-| | rollback_parameter: |
-| | interface: {{ interface_name }} |
+| | attackers: |
+| | - |
+| | fault_type: "general-attacker" |
+| | host: {{ attack_host }} |
+| | key: "close-br-public" |
+| | attack_key: "close-interface" |
+| | action_parameter: |
+| | interface: {{ interface_name }} |
+| | rollback_parameter: |
+| | interface: {{ interface_name }} |
| | |
+--------------+--------------------------------------------------------------+
|monitors | In this test case, the monitor named "openstack-cmd" is |
@@ -56,19 +56,20 @@ Yardstick Test Case Description TC050
| | "openstack-cmd" for this monitor. |
| | 2) command_name: which is the command name used for request |
| | |
-| | There are four instance of the "openstack-cmd" monitor: |
-| | monitor1: |
-| | - monitor_type: "openstack-cmd" |
-| | - command_name: "nova image-list" |
-| | monitor2: |
-| | - monitor_type: "openstack-cmd" |
-| | - command_name: "neutron router-list" |
-| | monitor3: |
-| | - monitor_type: "openstack-cmd" |
-| | - command_name: "heat stack-list" |
-| | monitor4: |
-| | - monitor_type: "openstack-cmd" |
-| | - command_name: "cinder list" |
+| | There are four instance of the "openstack-cmd" monitor:: |
+| | |
+| | monitor1: |
+| | - monitor_type: "openstack-cmd" |
+| | - command_name: "nova image-list" |
+| | monitor2: |
+| | - monitor_type: "openstack-cmd" |
+| | - command_name: "neutron router-list" |
+| | monitor3: |
+| | - monitor_type: "openstack-cmd" |
+| | - command_name: "heat stack-list" |
+| | monitor4: |
+| | - monitor_type: "openstack-cmd" |
+| | - command_name: "cinder list" |
+--------------+--------------------------------------------------------------+
|metrics | In this test case, there is one metric: |
| | 1)service_outage_time: which indicates the maximum outage |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc052.rst b/docs/testing/user/userguide/opnfv_yardstick_tc052.rst
index 9514b6819..7f2be6e7d 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc052.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc052.rst
@@ -65,15 +65,16 @@ Yardstick Test Case Description TC052
| | |
| | In this case, the "operation" adds a flavor and the "result |
| | checker" checks whether ths flavor is created. Their |
-| | parameters show as follows: |
-| | operation: |
-| | -operation_type: "nova-create-flavor" |
-| | -action_parameter: |
-| | flavorconfig: "test-001 test-001 100 1 1" |
-| | result checker: |
-| | -checker_type: "check-flavor" |
-| | -expectedValue: "test-001" |
-| | -condition: "in" |
+| | parameters show as follows:: |
+| | |
+| | operation: |
+| | -operation_type: "nova-create-flavor" |
+| | -action_parameter: |
+| | flavorconfig: "test-001 test-001 100 1 1" |
+| | result checker: |
+| | -checker_type: "check-flavor" |
+| | -expectedValue: "test-001" |
+| | -condition: "in" |
+--------------+--------------------------------------------------------------+
|metrics | In this test case, there is one metric: |
| | 1)service_outage_time: which indicates the maximum outage |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc055.rst b/docs/testing/user/userguide/opnfv_yardstick_tc055.rst
index c861ca90c..25703d3fb 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc055.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc055.rst
@@ -7,7 +7,7 @@
Yardstick Test Case Description TC055
*************************************
-.. _/proc/cpuinfo: http://www.linfo.org/proc_cpuinfo.html
+.. _`/proc/cpuinfo`: http://www.linfo.org/proc_cpuinfo.html
+-----------------------------------------------------------------------------+
|Compute Capacity |
@@ -41,7 +41,7 @@ Yardstick Test Case Description TC055
| | capacity output. |
| | |
+--------------+--------------------------------------------------------------+
-|references | /proc/cpuinfo_ |
+|references | `/proc/cpuinfo`_ |
| | |
| | ETSI-NFV-TST001 |
| | |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc057.rst b/docs/testing/user/userguide/opnfv_yardstick_tc057.rst
index 1bb43c9e7..245a58e08 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc057.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc057.rst
@@ -49,12 +49,15 @@ Yardstick Test Case Description TC057
| | -host: node1 |
+--------------+--------------------------------------------------------------+
|monitors | In this test case, a kind of monitor is needed: |
+| | |
| | 1. the "openstack-cmd" monitor constantly request a specific |
| | Openstack command, which needs two parameters: |
-| | 1) monitor_type: which is used for finding the monitor class |
-| | and related scripts. It should be always set to |
-| | "openstack-cmd" for this monitor. |
-| | 2) command_name: which is the command name used for request |
+| | |
+| | 1. monitor_type: which is used for finding the monitor |
+| | class and related scripts. It should be always set to |
+| | "openstack-cmd" for this monitor. |
+| | 2. command_name: which is the command name used for |
+| | request |
| | |
| | In this case, the command_name of monitor1 should be |
| | services that are managed by the cluster manager. |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc063.rst b/docs/testing/user/userguide/opnfv_yardstick_tc063.rst
index a77653aa5..7b8ee06c7 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc063.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc063.rst
@@ -58,6 +58,7 @@ Yardstick Test Case Description TC063
| | * count: 15 - how many times to stat disk utilization |
| | type: int |
| | unit: na |
+| | |
| | There are default values for each above-mentioned option. |
| | Run in background with other test cases. |
| | |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc069.rst b/docs/testing/user/userguide/opnfv_yardstick_tc069.rst
index af0e64fbf..e1bfd5399 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc069.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc069.rst
@@ -9,9 +9,6 @@ Yardstick Test Case Description TC069
.. _RAMspeed: http://alasir.com/software/ramspeed/
-.. table::
- :class: longtable
-
+-----------------------------------------------------------------------------+
|Memory Bandwidth |
| |
@@ -41,7 +38,8 @@ Yardstick Test Case Description TC069
| | * SLA (optional): 7000 (MBps) min_bandwidth: The minimum |
| | amount of memory bandwidth that is accepted. |
| | * type_id: 1 - runs a specified benchmark |
-| | (by an ID number): |
+| | (by an ID number):: |
+| | |
| | 1 -- INTmark [writing] 4 -- FLOATmark [writing] |
| | 2 -- INTmark [reading] 5 -- FLOATmark [reading] |
| | 3 -- INTmem 6 -- FLOATmem |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc073.rst b/docs/testing/user/userguide/opnfv_yardstick_tc073.rst
index ad4526405..873c5c99e 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc073.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc073.rst
@@ -7,7 +7,7 @@
Yardstick Test Case Description TC073
*************************************
-.. _netperf: http://www.netperf.org/netperf/training/Netperf.html
+.. _netperf: https://hewlettpackard.github.io/netperf/
+-----------------------------------------------------------------------------+
|Throughput per NFVI node test |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc074.rst b/docs/testing/user/userguide/opnfv_yardstick_tc074.rst
index 261a8bd95..8d025eecf 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc074.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc074.rst
@@ -91,12 +91,15 @@ Yardstick Test Case Description TC074
| | * workload=[workload module] |
| | If not specified, the default is to run all workloads. The |
| | workload types are: |
+| | |
| | - rs: 100% Read, sequential data |
| | - ws: 100% Write, sequential data |
| | - rr: 100% Read, random access |
| | - wr: 100% Write, random access |
| | - rw: 70% Read / 30% write, random access |
+| | |
| | measurements. |
+| | |
| | * workloads={json maps} |
| | This parameter supercedes the workload and calls the V2.0 |
| | API in StorPerf. It allows for greater control of the |
@@ -111,6 +114,17 @@ Yardstick Test Case Description TC074
| | Query the status of the supplied job_id and report on |
| | metrics. If a workload is supplied, will report on only |
| | that subset. |
+| | * availability_zone: Specify the availability zone which |
+| | the stack will use to create instances. |
+| | * volume_type: |
+| | Cinder volumes can have different types, for example |
+| | encrypted vs. not encrypted. |
+| | To be able to profile the difference between the two. |
+| | * subnet_CIDR: Specify subnet CIDR of private network |
+| | * stack_name: Specify the name of the stack that will be |
+| | created, the default: "StorperfAgentGroup" |
+| | * volume_count: Specify the number of volumes per |
+| | virtual machines |
| | |
| | There are default values for each above-mentioned option. |
| | |
@@ -120,11 +134,13 @@ Yardstick Test Case Description TC074
| | |
| | Storperf is required to be installed in the environment. |
| | There are two possible methods for Storperf installation: |
-| | Run container on Jump Host |
-| | Run container in a VM |
+| | |
+| | - Run container on Jump Host |
+| | - Run container in a VM |
| | |
| | Running StorPerf on Jump Host |
| | Requirements: |
+| | |
| | - Docker must be installed |
| | - Jump Host must have access to the OpenStack Controller |
| | API |
@@ -135,6 +151,7 @@ Yardstick Test Case Description TC074
| | |
| | Running StorPerf in a VM |
| | Requirements: |
+| | |
| | - VM has docker installed |
| | - VM has OpenStack Controller credentials and can |
| | communicate with the Controller API |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc081.rst b/docs/testing/user/userguide/opnfv_yardstick_tc081.rst
index 793c3fdd5..df2192313 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc081.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc081.rst
@@ -14,8 +14,8 @@ Yardstick Test Case Description TC081
|Network Latency |
| |
+--------------+--------------------------------------------------------------+
-|test case id | OPNFV_YARDSTICK_TC081_NETWORK_LATENCY_BETWEEN_CONTAINER_AND_ |
-| | VM |
+|test case id | OPNFV_YARDSTICK_TC081_NETWORK_LATENCY_BETWEEN_CONTAINER_AND |
+| | _VM |
| | |
+--------------+--------------------------------------------------------------+
|metric | RTT (Round Trip Time) |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc084.rst b/docs/testing/user/userguide/opnfv_yardstick_tc084.rst
index 2e7b28e25..b3d44c4bf 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc084.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc084.rst
@@ -92,18 +92,19 @@ Yardstick Test Case Description TC084
+--------------+--------------------------------------------------------------+
|pre-test | To run and install SPEC CPU 2006, the following are |
|conditions | required: |
-| | * For SPECint 2006: Both C99 and C++98 compilers are |
-| | installed in VM images; |
-| | * For SPECfp 2006: All three of C99, C++98 and Fortran-95 |
-| | compilers installed in VM images; |
-| | * At least 4GB of disk space availabile on VM. |
-| | |
-| | gcc 4.8.* and g++ 4.8.* version have been tested in Ubuntu |
-| | 14.04, Ubuntu 16.04 and Redhat Enterprise Linux 7.4 image. |
-| | Higher gcc and g++ version may cause compiling error. |
-| | |
-| | For more SPEC CPU 2006 dependencies please visit |
-| | (https://www.spec.org/cpu2006/Docs/techsupport.html) |
+| | |
+| | * For SPECint 2006: Both C99 and C++98 compilers are |
+| | installed in VM images; |
+| | * For SPECfp 2006: All three of C99, C++98 and Fortran-95 |
+| | compilers installed in VM images; |
+| | * At least 4GB of disk space availabile on VM. |
+| | |
+| | gcc 4.8.* and g++ 4.8.* version have been tested in Ubuntu |
+| | 14.04, Ubuntu 16.04 and Redhat Enterprise Linux 7.4 image. |
+| | Higher gcc and g++ version may cause compiling error. |
+| | |
+| | For more SPEC CPU 2006 dependencies please visit |
+| | (https://www.spec.org/cpu2006/Docs/techsupport.html) |
| | |
+--------------+--------------------------------------------------------------+
|test sequence | description and expected result |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc087.rst b/docs/testing/user/userguide/opnfv_yardstick_tc087.rst
index 99bfeebfc..c11252606 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc087.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc087.rst
@@ -41,6 +41,7 @@ Yardstick Test Case Description TC087
+--------------+--------------------------------------------------------------+
|attackers | In this test case, an attacker called “kill-process” is |
| | needed. This attacker includes three parameters: |
+| | |
| | 1. fault_type: which is used for finding the attacker's |
| | scripts. It should be set to 'kill-process' in this test |
| | |
@@ -58,6 +59,7 @@ Yardstick Test Case Description TC087
|monitors | This test case utilizes two monitors of type "ip-status" |
| | and one monitor of type "process" to track the following |
| | conditions: |
+| | |
| | 1. "ping_same_network_l2": monitor ICMP traffic between |
| | VMs in the same Neutron network |
| | |
@@ -74,11 +76,13 @@ Yardstick Test Case Description TC087
| | |
+--------------+--------------------------------------------------------------+
|operations | In this test case, the following operations are needed: |
+| | |
| | 1. "nova-create-instance-in_network": create a VM instance |
| | in one of the existing Neutron network. |
| | |
+--------------+--------------------------------------------------------------+
|metrics | In this test case, there are two metrics: |
+| | |
| | 1. process_recover_time: which indicates the maximun |
| | time (seconds) from the process being killed to |
| | recovered |
@@ -95,7 +99,9 @@ Yardstick Test Case Description TC087
| | |
+--------------+--------------------------------------------------------------+
|configuration | This test case needs two configuration files: |
+| | |
| | 1. test case file: opnfv_yardstick_tc087.yaml |
+| | |
| | - Attackers: see above “attackers” discription |
| | - waiting_time: which is the time (seconds) from the |
| | process being killed to stoping monitors the monitors |
@@ -126,7 +132,7 @@ Yardstick Test Case Description TC087
| | Neutron network. |
| | |
| | 2. Check connectivity from one VM to an external host on |
-| | the Internet to verify SNAT functionality.
+| | the Internet to verify SNAT functionality. |
| | |
| | Result: The monitor info will be collected. |
| | |
@@ -171,11 +177,14 @@ Yardstick Test Case Description TC087
|test verdict | This test fails if the SLAs are not met or if there is a |
| | test case execution problem. The SLAs are define as follows |
| | for this test: |
+| | |
| | * SDN Controller recovery |
+| | |
| | * process_recover_time <= 30 sec |
| | |
| | * no impact on data plane connectivity during SDN |
| | controller failure and recovery. |
+| | |
| | * packet_drop == 0 |
| | |
+--------------+--------------------------------------------------------------+
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc092.rst b/docs/testing/user/userguide/opnfv_yardstick_tc092.rst
index 895074a85..9c833fa23 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc092.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc092.rst
@@ -43,6 +43,7 @@ Yardstick Test Case Description TC092
+--------------+--------------------------------------------------------------+
|attackers | In this test case, an attacker called “kill-process” is |
| | needed. This attacker includes three parameters: |
+| | |
| | 1. ``fault_type``: which is used for finding the attacker's |
| | scripts. It should be set to 'kill-process' in this test |
| | |
@@ -92,17 +93,20 @@ Yardstick Test Case Description TC092
| | |
+--------------+--------------------------------------------------------------+
|configuration | This test case needs two configuration files: |
-| | 1. test case file: opnfv_yardstick_tc092.yaml |
-| | - Attackers: see above “attackers” discription |
-| | - Monitors: see above “monitors” discription |
-| | - waiting_time: which is the time (seconds) from the |
-| | process being killed to stoping monitors the |
-| | monitors |
-| | - SLA: see above “metrics” discription |
+| | 1. test case file: opnfv_yardstick_tc092.yaml |
+| | |
+| | - Attackers: see above “attackers” discription |
+| | - Monitors: see above “monitors” discription |
+| | |
+| | - waiting_time: which is the time (seconds) from the |
+| | process being killed to stoping monitors the |
+| | monitors |
| | |
-| | 2. POD file: pod.yaml The POD configuration should record |
-| | on pod.yaml first. the “host” item in this test case |
-| | will use the node name in the pod.yaml. |
+| | - SLA: see above “metrics” discription |
+| | |
+| | 2. POD file: pod.yaml The POD configuration should record |
+| | on pod.yaml first. the “host” item in this test case |
+| | will use the node name in the pod.yaml. |
| | |
+--------------+--------------------------------------------------------------+
|test sequence | Description and expected result |
@@ -168,11 +172,12 @@ Yardstick Test Case Description TC092
| | |
+--------------+--------------------------------------------------------------+
|step 8 | Start IP connectivity monitors for the new VM: |
-| | 1. Check the L2 connectivity from the existing VMs to the |
-| | new VM in the Neutron network. |
| | |
-| | 2. Check connectivity from one VM to an external host on |
-| | the Internet to verify SNAT functionality. |
+| | 1. Check the L2 connectivity from the existing VMs to the |
+| | new VM in the Neutron network. |
+| | |
+| | 2. Check connectivity from one VM to an external host on |
+| | the Internet to verify SNAT functionality. |
| | |
| | Result: The monitor info will be collected. |
| | |
diff --git a/docs/testing/user/userguide/opnfv_yardstick_tc093.rst b/docs/testing/user/userguide/opnfv_yardstick_tc093.rst
index 31fa5d3d3..4e22e8bf3 100644
--- a/docs/testing/user/userguide/opnfv_yardstick_tc093.rst
+++ b/docs/testing/user/userguide/opnfv_yardstick_tc093.rst
@@ -43,14 +43,15 @@ Yardstick Test Case Description TC093
+--------------+--------------------------------------------------------------+
|attackers | In this test case, two attackers called “kill-process” are |
| | needed. These attackers include three parameters: |
-| | 1. fault_type: which is used for finding the attacker's |
-| | scripts. It should be set to 'kill-process' in this test |
| | |
-| | 2. process_name: should be set to the name of the Vswitch |
-| | process |
+| | 1. fault_type: which is used for finding the attacker's |
+| | scripts. It should be set to 'kill-process' in this test |
| | |
-| | 3. host: which is the name of the compute node where the |
-| | Vswitch process is running |
+| | 2. process_name: should be set to the name of the Vswitch |
+| | process |
+| | |
+| | 3. host: which is the name of the compute node where the |
+| | Vswitch process is running |
| | |
| | e.g. -fault_type: "kill-process" |
| | -process_name: "openvswitch" |
@@ -60,16 +61,17 @@ Yardstick Test Case Description TC093
|monitors | This test case utilizes two monitors of type "ip-status" |
| | and one monitor of type "process" to track the following |
| | conditions: |
-| | 1. "ping_same_network_l2": monitor ICMP traffic between |
-| | VMs in the same Neutron network |
| | |
-| | 2. "ping_external_snat": monitor ICMP traffic from VMs to |
-| | an external host on the Internet to verify SNAT |
-| | functionality. |
+| | 1. "ping_same_network_l2": monitor ICMP traffic between |
+| | VMs in the same Neutron network |
+| | |
+| | 2. "ping_external_snat": monitor ICMP traffic from VMs to |
+| | an external host on the Internet to verify SNAT |
+| | functionality. |
| | |
-| | 3. "Vswitch process monitor": a monitor checking the |
-| | state of the specified Vswitch process. It measures |
-| | the recovery time of the given process. |
+| | 3. "Vswitch process monitor": a monitor checking the |
+| | state of the specified Vswitch process. It measures |
+| | the recovery time of the given process. |
| | |
| | Monitors of type "ip-status" use the "ping" utility to |
| | verify reachability of a given target IP. |
@@ -99,6 +101,7 @@ Yardstick Test Case Description TC093
+--------------+--------------------------------------------------------------+
|configuration | This test case needs two configuration files: |
| | 1. test case file: opnfv_yardstick_tc093.yaml |
+| | |
| | - Attackers: see above “attackers” description |
| | - monitor_time: which is the time (seconds) from |
| | starting to stoping the monitors |
@@ -173,12 +176,14 @@ Yardstick Test Case Description TC093
|test verdict | This test fails if the SLAs are not met or if there is a |
| | test case execution problem. The SLAs are define as follows |
| | for this test: |
-| | * SDN Vswitch recovery |
-| | * process_recover_time <= 30 sec |
+| | * SDN Vswitch recovery |
+| | |
+| | * process_recover_time <= 30 sec |
+| | |
+| | * no impact on data plane connectivity during SDN |
+| | Vswitch failure and recovery. |
| | |
-| | * no impact on data plane connectivity during SDN |
-| | Vswitch failure and recovery. |
-| | * packet_drop == 0 |
+| | * packet_drop == 0 |
| | |
+--------------+--------------------------------------------------------------+
diff --git a/docs/testing/user/userguide/references.rst b/docs/testing/user/userguide/references.rst
index 3e18c96e9..e6bc719fd 100644
--- a/docs/testing/user/userguide/references.rst
+++ b/docs/testing/user/userguide/references.rst
@@ -11,12 +11,12 @@ References
OPNFV
=====
-* Parser wiki: https://wiki.opnfv.org/parser
-* Pharos wiki: https://wiki.opnfv.org/pharos
+* Parser wiki: https://wiki.opnfv.org/display/parser
+* Pharos wiki: https://wiki.opnfv.org/display/pharos
* Yardstick CI: https://build.opnfv.org/ci/view/yardstick/
* Yardstick and ETSI TST001 presentation: https://wiki.opnfv.org/display/yardstick/Yardstick?preview=%2F2925202%2F2925205%2Fopnfv_summit_-_bridging_opnfv_and_etsi.pdf
* Yardstick Project presentation: https://wiki.opnfv.org/display/yardstick/Yardstick?preview=%2F2925202%2F2925208%2Fopnfv_summit_-_yardstick_project.pdf
-* Yardstick wiki: https://wiki.opnfv.org/yardstick
+* Yardstick wiki: https://wiki.opnfv.org/display/yardstick
References used in Test Cases
=============================
@@ -25,22 +25,22 @@ References used in Test Cases
* cirros-image: https://download.cirros-cloud.net
* cyclictest: https://rt.wiki.kernel.org/index.php/Cyclictest
* DPDKpktgen: https://github.com/Pktgen/Pktgen-DPDK/
-* DPDK supported NICs: http://dpdk.org/doc/nics
+* DPDK supported NICs: http://core.dpdk.org/supported/
* fdisk: http://www.tldp.org/HOWTO/Partition/fdisk_partitioning.html
-* fio: http://www.bluestop.org/fio/HOWTO.txt
+* fio: https://bluestop.org/files/fio/HOWTO.txt
* free: http://manpages.ubuntu.com/manpages/trusty/en/man1/free.1.html
* iperf3: https://iperf.fr/
-* iostat: http://linux.die.net/man/1/iostat
+* iostat: https://linux.die.net/man/1/iostat
* Lmbench man-pages: http://manpages.ubuntu.com/manpages/trusty/lat_mem_rd.8.html
* Memory bandwidth man-pages: http://manpages.ubuntu.com/manpages/trusty/bw_mem.8.html
* mpstat man-pages: http://manpages.ubuntu.com/manpages/trusty/man1/mpstat.1.html
-* netperf: http://www.netperf.org/netperf/training/Netperf.html
+* netperf: https://hewlettpackard.github.io/netperf/
* pktgen: https://www.kernel.org/doc/Documentation/networking/pktgen.txt
* RAMspeed: http://alasir.com/software/ramspeed/
-* sar: http://linux.die.net/man/1/sar
+* sar: https://linux.die.net/man/1/sar
* SR-IOV: https://wiki.openstack.org/wiki/SR-IOV-Passthrough-For-Networking
* Storperf: https://wiki.opnfv.org/display/storperf/Storperf
-* unixbench: https://github.com/kdlucas/byte-unixbench/blob/master/UnixBench
+* unixbench: https://github.com/kdlucas/byte-unixbench/tree/master/UnixBench
Research
@@ -53,7 +53,7 @@ Research
Standards
=========
-* ETSI NFV: http://www.etsi.org/technologies-clusters/technologies/nfv
-* ETSI GS-NFV TST 001: http://www.etsi.org/deliver/etsi_gs/NFV-TST/001_099/001/01.01.01_60/gs_NFV-TST001v010101p.pdf
+* ETSI NFV: https://www.etsi.org/technologies-clusters/technologies/nfv
+* ETSI GS-NFV TST 001: https://www.etsi.org/deliver/etsi_gs/NFV-TST/001_099/001/01.01.01_60/gs_NFV-TST001v010101p.pdf
* RFC2544: https://www.ietf.org/rfc/rfc2544.txt
diff --git a/etc/yardstick/nodes/standalone/pod_landslide.yaml b/etc/yardstick/nodes/standalone/pod_landslide.yaml
new file mode 100644
index 000000000..c84aed142
--- /dev/null
+++ b/etc/yardstick/nodes/standalone/pod_landslide.yaml
@@ -0,0 +1,130 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+nodes:
+-
+ name: "tg__0"
+ role: tg__0
+ tas_manager:
+ ip: 192.168.122.100
+ super_user: SUPER_USER
+ super_user_password: SUPER_USER_PASSWORD
+ cfguser_password: CFGUSER_PASSWORD
+ test_user: TEST_USER
+ test_user_password: TEST_USER_PASSWORD
+ proto: http
+ license: LICENSE_NUMBER
+ interfaces: # dummy values
+ xe0:
+ vpci: "0000:05:00.0"
+ local_mac: "68:05:ca:30:3d:50"
+ driver: "i40e"
+ local_ip: "152.16.100.19"
+ netmask: "255.255.255.0"
+ xe1:
+ vpci: "0000:05:00.1"
+ local_mac: "68:05:ca:30:3d:51"
+ driver: "i40e"
+ local_ip: "152.16.40.19"
+ netmask: "255.255.255.0"
+ config:
+ - test_server:
+ name: TestServer_1
+ role: SGW_Node
+ ip: 192.168.122.101
+ thread_model: Fireball
+ # override port-subnet and static route reservation information for this
+ # test server within the test session.
+ phySubnets:
+ - base: 10.42.32.100
+ mask: "/24"
+ name: &ts1_port1 eth5
+ numIps: 20
+ - base: 10.42.33.100
+ mask: "/24"
+ name: &ts1_port2 eth6
+ numIps: 20
+ preResolvedArpAddress: # required for testcases with enabled Fireball mode
+ - StartingAddress: 10.42.33.10
+ NumNodes: 1
+ suts:
+ - name: SGW-C TestNode
+ role: SgwControlAddr
+ managementIp: 12.0.1.1
+ phy: *ts1_port1
+ ip: 10.42.32.100
+ # nextHop: ''
+ - name: SGW-U TestNode
+ role: SgwUserAddr
+ managementIp: 12.0.1.2
+ phy: *ts1_port1
+ ip: 10.42.32.101
+ # nextHop: ''
+
+ - test_server:
+ name: TestServer_2
+ role: SGW_Nodal
+ ip: 192.168.122.102
+ thread_model: Fireball
+ # override port-subnet and static route reservation information for this
+ # test server within the test session.
+ phySubnets:
+ - base: 10.42.32.1
+ mask: "/24"
+ name: &ts2_port1 eth5
+ numIps: 100
+ - base: 10.42.33.1
+ mask: "/24"
+ name: &ts2_port2 eth6
+ numIps: 100
+ suts:
+ - name: eNodeB TestNode
+ role: EnbUserAddr
+ managementIp: 12.0.2.1
+ phy: *ts2_port1
+ ip: 10.42.32.2
+ # nextHop: ''
+ - name: Target eNodeB
+ role: MobEnbUserAddr
+ managementIp: 12.0.2.2
+ phy: *ts2_port1
+ ip: 10.42.32.3
+ # nextHop: ''
+ - name: MME TestNode
+ role: MmeControlAddr
+ managementIp: 12.0.3.1
+ phy: *ts2_port1
+ ip: 10.42.32.1
+ # nextHop: ''
+ - name: NetHost TestNode
+ role: NetworkHostAddrLocal
+ managementIp: 12.0.4.1
+ phy: *ts2_port2
+ ip: 10.42.33.10
+ # nextHop: ''
+ - name: PGW SUT
+ role: PgwV4Sut
+ managementIp: 12.0.5.1
+ phy: *ts1_port1
+ ip: 10.42.32.105
+ # nextHop: ''
+ - name: SGW-C SUT
+ role: SgwSut
+ managementIp: 12.0.6.1
+ ip: 10.42.32.100
+ - name: SGW-U SUT
+ role: SgwUserSut
+ managementIp: 12.0.6.2
+ ip: 10.42.32.101
diff --git a/etc/yardstick/nodes/standalone/pod_landslide_network_dedicated.yaml b/etc/yardstick/nodes/standalone/pod_landslide_network_dedicated.yaml
new file mode 100644
index 000000000..6b8db54c2
--- /dev/null
+++ b/etc/yardstick/nodes/standalone/pod_landslide_network_dedicated.yaml
@@ -0,0 +1,164 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+nodes:
+-
+ name: "tg__0"
+ role: tg__0
+ tas_manager:
+ ip: 192.168.122.100
+ super_user: sms
+ super_user_password: a1b2c3d4
+ cfguser_password: cfguser
+ test_user: demoaff
+ test_user_password: demo123
+ proto: http
+ license: 49
+ interfaces: # dummy config
+ xe0:
+ vpci: "0000:05:00.0"
+ local_mac: "68:05:ca:30:3d:50"
+ driver: "i40e"
+ local_ip: "152.16.100.19"
+ netmask: "255.255.255.0"
+ xe1:
+ vpci: "0000:05:00.1"
+ local_mac: "68:05:ca:30:3d:51"
+ driver: "i40e"
+ local_ip: "152.16.40.19"
+ netmask: "255.255.255.0"
+ config:
+ - test_server:
+ name: TestServer_1
+ role: SGW_Node
+ ip: 192.168.122.101
+ # override port-subnet and static route reservation information for this
+ # test server within the test session.
+ thread_model: Fireball
+ phySubnets:
+ - base: 10.42.32.100
+ mask: "/24"
+ name: &ts1_port1 eth5
+ numIps: 20
+ - base: 10.42.33.100
+ mask: "/24"
+ name: &ts1_port2 eth6
+ numIps: 20
+ suts:
+ - name: SGW-C TestNode
+ role: SgwControlAddr
+ managementIp: 12.0.1.1
+ phy: *ts1_port1
+ ip: 10.42.32.100
+ # nextHop: ''
+ - name: SGW-U TestNode
+ role: SgwUserAddr
+ managementIp: 12.0.1.2
+ phy: *ts1_port1
+ ip: 10.42.32.101
+ # nextHop: ''
+ - name: PGW-C SUT
+ role: PgwSut
+ managementIp: 12.0.5.2
+ phy: *ts1_port1
+ ip: 10.42.32.108
+ # nextHop: ''
+
+ - test_server:
+ name: TestServer_1
+ role: PGW_Node
+ ip: 192.168.122.101
+ # override port-subnet and static route reservation information for this
+ # test server within the test session.
+ suts:
+ - name: PDN GW TestNode
+ role: PdnGwAddr
+ managementIp: 12.0.5.1
+ phy: *ts1_port1
+ ip: 10.42.32.103
+ nextHop: ''
+ - name: AGW TestNode
+ role: AgwNodeAddr
+ managementIp: 12.0.7.2
+ phy: *ts1_port1
+ ip: 10.42.32.107
+ nextHop: ''
+ - name: PCRF SUT
+ role: TyCcClnSutPrimarySrv
+ managementIp: 12.0.7.1
+ ip: 10.42.32.95
+
+ - test_server:
+ name: TestServer_2
+ role: SGW_Nodal
+ ip: 192.168.122.102
+ # override port-subnet and static route reservation information for this
+ # test server within the test session.
+ thread_model: Fireball
+ phySubnets:
+ - base: 10.42.32.1
+ mask: "/24"
+ name: &ts2_port1 eth5
+ numIps: 100
+ - base: 10.42.33.1
+ mask: "/24"
+ name: &ts2_port2 eth6
+ numIps: 50
+ suts:
+ - name: eNodeB TestNode
+ role: EnbUserAddr
+ managementIp: 12.0.2.1
+ phy: *ts2_port1
+ ip: 10.42.32.2
+ nextHop: ''
+ - name: MME TestNode
+ role: MmeControlAddr
+ managementIp: 12.0.3.1
+ phy: *ts2_port1
+ ip: 10.42.32.1
+ nextHop: ''
+ - name: NetHost TestNode
+ role: NetworkHostAddrLocal
+ managementIp: 12.0.4.1
+ phy: *ts2_port2
+ ip: 10.42.33.1
+ nextHop: ''
+ - name: PGW-C SUT
+ role: PgwV4Sut
+ managementIp: 12.0.5.1
+ ip: 10.42.32.103
+ - name: SGW-C SUT
+ role: SgwSut
+ managementIp: 12.0.1.1
+ ip: 10.42.32.100
+ - name: SGW-U SUT
+ role: SgwUserSut
+ managementIp: 12.0.1.2
+ ip: 10.42.32.101
+
+ - test_server:
+ name: TestServer_2
+ role: PCRF_Node
+ ip: 192.168.122.102
+ # override port-subnet and static route reservation information for this
+ # test server within the test session.
+ suts:
+ - name: AgwSrvNode TestNode
+ role: AgwSrvNode
+ managementIp: 12.0.7.1
+ phy: *ts2_port1
+ ip: 10.42.32.95
+ nextHop: ''
+
diff --git a/etc/yardstick/nodes/standalone/pod_vepc_sut.yaml b/etc/yardstick/nodes/standalone/pod_vepc_sut.yaml
new file mode 100644
index 000000000..8467303e9
--- /dev/null
+++ b/etc/yardstick/nodes/standalone/pod_vepc_sut.yaml
@@ -0,0 +1,37 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+---
+# Sample config file for fully emulated EPC environment
+
+
+nodes:
+-
+ name: "vnf__0"
+ role: vnf__0
+ ip: 192.168.122.200
+ user: user
+ password: password
+ interfaces: # dummy config
+ xe0:
+ vpci: "0000:05:00.0"
+ local_mac: "68:05:ca:30:3d:50"
+ driver: "i40e"
+ local_ip: "152.16.100.19"
+ netmask: "255.255.255.0"
+ xe1:
+ vpci: "0000:05:00.1"
+ local_mac: "68:05:ca:30:3d:51"
+ driver: "i40e"
+ local_ip: "152.16.40.19"
+ netmask: "255.255.255.0"
diff --git a/etc/yardstick/yardstick.conf.sample b/etc/yardstick/yardstick.conf.sample
index 5675cc3bd..ccfa86d5c 100644
--- a/etc/yardstick/yardstick.conf.sample
+++ b/etc/yardstick/yardstick.conf.sample
@@ -32,3 +32,5 @@ password = root
trex_path=/opt/nsb_bin/trex/scripts
bin_path=/opt/nsb_bin
trex_client_lib=/opt/nsb_bin/trex_client/stl
+# Path to 32-bit Java installation, for Spirent Landslide TG API
+jre_path_i386=/usr/lib/jvm/java-8-openjdk-i386/jre
diff --git a/samples/vnf_samples/nsut/agnostic/agnostic_vnf_topology_ixia_2ports.yaml b/samples/vnf_samples/nsut/agnostic/agnostic_vnf_topology_ixia_2ports.yaml
new file mode 100644
index 000000000..007d16f82
--- /dev/null
+++ b/samples/vnf_samples/nsut/agnostic/agnostic_vnf_topology_ixia_2ports.yaml
@@ -0,0 +1,49 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+nsd:nsd-catalog:
+ nsd:
+ - id: agnostic-topology
+ name: agnostic-topology
+ short-name: agnostic-topology
+ description: agnostic-topology
+ constituent-vnfd:
+ - member-vnf-index: '1'
+ vnfd-id-ref: tg__0
+ VNF model: ../../vnf_descriptors/ixia_rfc2544_tpl.yaml #TG type
+ - member-vnf-index: '2'
+ vnfd-id-ref: vnf__0
+ VNF model: ../../vnf_descriptors/agnostic_vnf.yaml #VNF type
+
+ vld:
+ - id: uplink_0
+ name: tg__0 to vnf__0 link 1
+ type: ELAN
+ vnfd-connection-point-ref:
+ - member-vnf-index-ref: '1'
+ vnfd-connection-point-ref: xe0
+ vnfd-id-ref: tg__0
+ - member-vnf-index-ref: '2'
+ vnfd-connection-point-ref: xe0
+ vnfd-id-ref: vnf__0
+
+ - id: downlink_0
+ name: vnf__0 to tg__0 link 2
+ type: ELAN
+ vnfd-connection-point-ref:
+ - member-vnf-index-ref: '2'
+ vnfd-connection-point-ref: xe1
+ vnfd-id-ref: vnf__0
+ - member-vnf-index-ref: '1'
+ vnfd-connection-point-ref: xe1
+ vnfd-id-ref: tg__0
diff --git a/samples/vnf_samples/nsut/agnostic/agnostic_vnf_topology_ixia_4ports.yaml b/samples/vnf_samples/nsut/agnostic/agnostic_vnf_topology_ixia_4ports.yaml
new file mode 100644
index 000000000..1447faff3
--- /dev/null
+++ b/samples/vnf_samples/nsut/agnostic/agnostic_vnf_topology_ixia_4ports.yaml
@@ -0,0 +1,71 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+nsd:nsd-catalog:
+ nsd:
+ - id: agnostic-topology
+ name: agnostic-topology
+ short-name: agnostic-topology
+ description: agnostic-topology
+ constituent-vnfd:
+ - member-vnf-index: '1'
+ vnfd-id-ref: tg__0
+ VNF model: ../../vnf_descriptors/ixia_rfc2544_tpl.yaml #TG type
+ - member-vnf-index: '2'
+ vnfd-id-ref: vnf__0
+ VNF model: ../../vnf_descriptors/agnostic_vnf.yaml #VNF type
+
+ vld:
+ - id: uplink_0
+ name: tg__0 to vnf__0 link 1
+ type: ELAN
+ vnfd-connection-point-ref:
+ - member-vnf-index-ref: '1'
+ vnfd-connection-point-ref: xe0
+ vnfd-id-ref: tg__0
+ - member-vnf-index-ref: '2'
+ vnfd-connection-point-ref: xe0
+ vnfd-id-ref: vnf__0
+
+ - id: downlink_0
+ name: vnf__0 to tg__0 link 2
+ type: ELAN
+ vnfd-connection-point-ref:
+ - member-vnf-index-ref: '2'
+ vnfd-connection-point-ref: xe1
+ vnfd-id-ref: vnf__0
+ - member-vnf-index-ref: '1'
+ vnfd-connection-point-ref: xe1
+ vnfd-id-ref: tg__0
+
+ - id: uplink_1
+ name: tg__0 to vnf__0 link 3
+ type: ELAN
+ vnfd-connection-point-ref:
+ - member-vnf-index-ref: '1'
+ vnfd-connection-point-ref: xe2
+ vnfd-id-ref: tg__0
+ - member-vnf-index-ref: '2'
+ vnfd-connection-point-ref: xe2
+ vnfd-id-ref: vnf__0
+
+ - id: downlink_1
+ name: vnf__0 to tg__0 link 4
+ type: ELAN
+ vnfd-connection-point-ref:
+ - member-vnf-index-ref: '2'
+ vnfd-connection-point-ref: xe3
+ vnfd-id-ref: vnf__0
+ - member-vnf-index-ref: '1'
+ vnfd-connection-point-ref: xe3
+ vnfd-id-ref: tg__0
diff --git a/samples/vnf_samples/nsut/agnostic/agnostic_vnf_topology_trex_2ports.yaml b/samples/vnf_samples/nsut/agnostic/agnostic_vnf_topology_trex_2ports.yaml
new file mode 100644
index 000000000..173880f08
--- /dev/null
+++ b/samples/vnf_samples/nsut/agnostic/agnostic_vnf_topology_trex_2ports.yaml
@@ -0,0 +1,49 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+nsd:nsd-catalog:
+ nsd:
+ - id: agnostic-topology
+ name: agnostic-topology
+ short-name: agnostic-topology
+ description: agnostic-topology
+ constituent-vnfd:
+ - member-vnf-index: '1'
+ vnfd-id-ref: tg__0
+ VNF model: ../../vnf_descriptors/tg_rfc2544_tpl.yaml #TG type
+ - member-vnf-index: '2'
+ vnfd-id-ref: vnf__0
+ VNF model: ../../vnf_descriptors/agnostic_vnf.yaml #VNF type
+
+ vld:
+ - id: uplink_0
+ name: tg__0 to vnf__0 link 1
+ type: ELAN
+ vnfd-connection-point-ref:
+ - member-vnf-index-ref: '1'
+ vnfd-connection-point-ref: xe0
+ vnfd-id-ref: tg__0
+ - member-vnf-index-ref: '2'
+ vnfd-connection-point-ref: xe0
+ vnfd-id-ref: vnf__0
+
+ - id: downlink_0
+ name: vnf__0 to tg__0 link 2
+ type: ELAN
+ vnfd-connection-point-ref:
+ - member-vnf-index-ref: '2'
+ vnfd-connection-point-ref: xe1
+ vnfd-id-ref: vnf__0
+ - member-vnf-index-ref: '1'
+ vnfd-connection-point-ref: xe1
+ vnfd-id-ref: tg__0 \ No newline at end of file
diff --git a/samples/vnf_samples/nsut/agnostic/tc_baremetal_rfc2544_ipv4_64B_trex.yaml b/samples/vnf_samples/nsut/agnostic/tc_baremetal_rfc2544_ipv4_64B_trex.yaml
new file mode 100644
index 000000000..53935dec2
--- /dev/null
+++ b/samples/vnf_samples/nsut/agnostic/tc_baremetal_rfc2544_ipv4_64B_trex.yaml
@@ -0,0 +1,45 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+schema: yardstick:task:0.1
+scenarios:
+- type: NSPerf
+ traffic_profile: ../../traffic_profiles/ipv4_throughput.yaml
+ topology: agnostic_vnf_topology_trex_2ports.yaml
+ nodes:
+ tg__0: tg_0.yardstick
+ vnf__0: vnf_0.yardstick
+ options:
+ framesize:
+ uplink: {64B: 100}
+ downlink: {64B: 100}
+ flow:
+ src_ip: [{'tg__0': 'xe0'}]
+ dst_ip: [{'tg__0': 'xe1'}]
+ count: 1
+ traffic_type: 4
+ rfc2544:
+ allowed_drop_rate: 0.0001 - 0.0001
+ vnf__0:
+ []
+ runner:
+ type: Iteration
+ iterations: 10
+ interval: 35
+context:
+ type: Node
+ name: yardstick
+ nfvi_type: baremetal
+ file: /etc/yardstick/nodes/pod.yaml
diff --git a/samples/vnf_samples/nsut/agnostic/tc_baremetal_rfc2544_latency_ipv4_64B_ixia.yaml b/samples/vnf_samples/nsut/agnostic/tc_baremetal_rfc2544_latency_ipv4_64B_ixia.yaml
new file mode 100644
index 000000000..c054a985b
--- /dev/null
+++ b/samples/vnf_samples/nsut/agnostic/tc_baremetal_rfc2544_latency_ipv4_64B_ixia.yaml
@@ -0,0 +1,45 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+schema: yardstick:task:0.1
+scenarios:
+- type: NSPerf
+ traffic_profile: ../../traffic_profiles/ixia_ipv4_latency.yaml
+ topology: agnostic_vnf_topology_ixia_2ports.yaml
+ nodes:
+ tg__0: tg_0.yardstick
+ vnf__0: vnf_0.yardstick
+ options:
+ framesize:
+ uplink: {64B: 100}
+ downlink: {64B: 100}
+ flow:
+ src_ip: [{'tg__0': 'xe0'}]
+ dst_ip: [{'tg__0': 'xe1'}]
+ count: 1
+ traffic_type: 4
+ rfc2544:
+ allowed_drop_rate: 0.0001 - 0.0001
+ vnf__0:
+ []
+ runner:
+ type: Iteration
+ iterations: 10
+ interval: 35
+context:
+ type: Node
+ name: yardstick
+ nfvi_type: baremetal
+ file: /etc/yardstick/nodes/pod_ixia.yaml
diff --git a/samples/vnf_samples/nsut/prox/configs/gen_acl-2.cfg b/samples/vnf_samples/nsut/prox/configs/gen_acl-2.cfg
index 816bb3297..bf49cd484 100644
--- a/samples/vnf_samples/nsut/prox/configs/gen_acl-2.cfg
+++ b/samples/vnf_samples/nsut/prox/configs/gen_acl-2.cfg
@@ -38,7 +38,7 @@ $qinq_tag_inline="88 a8"
[global]
start time=5
-name=Basic Gen
+name=Basic ACL Gen x2
[core 0]
mode=master
@@ -50,7 +50,7 @@ mode=gen
tx port=p0
bps=625000000
; Ethernet + QinQ + IP + UDP
-pkt inline=${sut_mac0} 70 00 00 00 00 01 ${qinq_tag_inline} 00 01 81 00 00 01 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 08 7c 21 FFFFFFFF
+pkt inline=${sut_mac0} 70 00 00 00 00 01 ${qinq_tag_inline} 00 01 81 00 00 01 08 00 45 00 00 20 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 0c 7c 21 50 51 52 53
; svlan: [0,1]
random=000000000000000X
rand_offset=14
@@ -72,7 +72,6 @@ random=000000000000XXX00000000XXXXXXXXX
rand_offset=42
lat pos=50
-
[core 2]
name=p1
task=0
@@ -80,7 +79,7 @@ mode=gen
tx port=p1
bps=625000000
; Ethernet + QinQ + IP + UDP
-pkt inline=${sut_mac1} 70 00 00 00 00 02 ${qinq_tag_inline} 00 01 81 00 00 01 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 08 7c 21 FFFFFFFF
+pkt inline=${sut_mac1} 70 00 00 00 00 02 ${qinq_tag_inline} 00 01 81 00 00 01 08 00 45 00 00 20 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 0c 7c 21 50 51 52 53
; svlan: [0,1]
random=000000000000000X
rand_offset=14
@@ -107,10 +106,12 @@ name=rec 0
task=0
mode=lat
rx port=p0
+lat pos=50
[core 4]
name=rec 1
task=0
mode=lat
rx port=p1
+lat pos=50
diff --git a/samples/vnf_samples/nsut/prox/configs/gen_acl-4.cfg b/samples/vnf_samples/nsut/prox/configs/gen_acl-4.cfg
index bcfdb5028..6c5939356 100644
--- a/samples/vnf_samples/nsut/prox/configs/gen_acl-4.cfg
+++ b/samples/vnf_samples/nsut/prox/configs/gen_acl-4.cfg
@@ -62,7 +62,7 @@ mode=gen
tx port=p0
bps=625000000
; Ethernet + QinQ + IP + UDP
-pkt inline=${sut_mac0} 70 00 00 00 00 01 ${qinq_tag_inline} 00 01 81 00 00 01 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 08 7c 21 FFFFFFFF
+pkt inline=${sut_mac0} 70 00 00 00 00 01 ${qinq_tag_inline} 00 01 81 00 00 01 08 00 45 00 00 20 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 0c 7c 21 50 51 52 53
; svlan: [0,1]
random=000000000000000X
rand_offset=14
@@ -82,6 +82,7 @@ rand_offset=23
; dport: [0..511]
random=000000000000XXX00000000XXXXXXXXX
rand_offset=42
+lat pos=50
[core 2]
name=p1
@@ -90,7 +91,7 @@ mode=gen
tx port=p1
bps=625000000
; Ethernet + QinQ + IP + UDP
-pkt inline=${sut_mac1} 70 00 00 00 00 02 ${qinq_tag_inline} 00 01 81 00 00 01 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 08 7c 21 FFFFFFFF
+pkt inline=${sut_mac1} 70 00 00 00 00 02 ${qinq_tag_inline} 00 01 81 00 00 01 08 00 45 00 00 20 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 0c 7c 21 50 51 52 53
; svlan: [0,1]
random=000000000000000X
rand_offset=14
@@ -110,6 +111,7 @@ rand_offset=23
; dport: [0..511]
random=000000000000XXX00000000XXXXXXXXX
rand_offset=42
+lat pos=50
[core 3]
name=p2
@@ -118,7 +120,7 @@ mode=gen
tx port=p2
bps=625000000
; Ethernet + QinQ + IP + UDP
-pkt inline=${sut_mac2} 70 00 00 00 00 02 ${qinq_tag_inline} 00 01 81 00 00 01 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 08 7c 21 FFFFFFFF
+pkt inline=${sut_mac2} 70 00 00 00 00 03 ${qinq_tag_inline} 00 01 81 00 00 01 08 00 45 00 00 20 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 0c 7c 21 50 51 52 53
; svlan: [0,1]
random=000000000000000X
rand_offset=14
@@ -138,6 +140,7 @@ rand_offset=23
; dport: [0..511]
random=000000000000XXX00000000XXXXXXXXX
rand_offset=42
+lat pos=50
[core 4]
name=p3
@@ -146,7 +149,7 @@ mode=gen
tx port=p3
bps=625000000
; Ethernet + QinQ + IP + UDP
-pkt inline=${sut_mac3} 70 00 00 00 00 04 ${qinq_tag_inline} 00 01 81 00 00 01 08 00 45 00 00 1c 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 08 7c 21 FFFFFFFF
+pkt inline=${sut_mac3} 70 00 00 00 00 04 ${qinq_tag_inline} 00 01 81 00 00 01 08 00 45 00 00 20 00 01 00 00 40 11 f7 7d c0 a8 01 01 c0 a8 01 01 00 35 00 35 00 0c 7c 21 50 51 52 53
; svlan: [0,1]
random=000000000000000X
rand_offset=14
@@ -166,27 +169,33 @@ rand_offset=23
; dport: [0..511]
random=000000000000XXX00000000XXXXXXXXX
rand_offset=42
+lat pos=50
[core 5]
name=rec 0
task=0
mode=lat
rx port=p0
+lat pos=50
[core 6]
name=rec 1
task=0
mode=lat
rx port=p1
+lat pos=50
[core 7]
name=rec 2
task=0
mode=lat
rx port=p2
+lat pos=50
[core 8]
name=rec 3
task=0
mode=lat
rx port=p3
+lat pos=50
+
diff --git a/samples/vnf_samples/nsut/prox/configs/handle_l3fwd-2.cfg b/samples/vnf_samples/nsut/prox/configs/handle_l3fwd-2.cfg
index 80b29f349..35f3646e7 100644
--- a/samples/vnf_samples/nsut/prox/configs/handle_l3fwd-2.cfg
+++ b/samples/vnf_samples/nsut/prox/configs/handle_l3fwd-2.cfg
@@ -22,12 +22,16 @@ no-output=no ; disable DPDK debug output
[port 0]
name=if0
mac=hardware
+rx desc=2048
+tx desc=2048
[port 1]
name=if1
mac=hardware
+rx desc=2048
+tx desc=2048
[defaults]
-mempool size=4K
+mempool size=8K
[lua]
lpm4 = dofile("ipv4-2port.lua")
diff --git a/samples/vnf_samples/nsut/prox/configs/handle_l3fwd-4.cfg b/samples/vnf_samples/nsut/prox/configs/handle_l3fwd-4.cfg
index 09adbbe55..bd696c4b0 100644
--- a/samples/vnf_samples/nsut/prox/configs/handle_l3fwd-4.cfg
+++ b/samples/vnf_samples/nsut/prox/configs/handle_l3fwd-4.cfg
@@ -22,18 +22,26 @@ no-output=no ; disable DPDK debug output
[port 0]
name=if0
mac=hardware
+rx desc=2048
+tx desc=2048
[port 1]
name=if1
mac=hardware
+rx desc=2048
+tx desc=2048
[port 2]
name=if2
mac=hardware
+rx desc=2048
+tx desc=2048
[port 3]
name=if3
mac=hardware
+rx desc=2048
+tx desc=2048
[defaults]
-mempool size=4K
+mempool size=8K
[lua]
lpm4 = dofile("ipv4.lua")
diff --git a/samples/vnf_samples/nsut/prox/prox-baremetal-2.yaml b/samples/vnf_samples/nsut/prox/prox-baremetal-2.yaml
index 1390e4a67..dc1df4e57 100644
--- a/samples/vnf_samples/nsut/prox/prox-baremetal-2.yaml
+++ b/samples/vnf_samples/nsut/prox/prox-baremetal-2.yaml
@@ -22,7 +22,6 @@ nodes:
user: "root"
ssh_port: "22"
password: "r00t"
- key_filename: ""
interfaces:
xe0:
vpci: "0000:05:00.0"
@@ -45,7 +44,6 @@ nodes:
user: "root"
ssh_port: "22"
password: "r00t"
- key_filename: ""
interfaces:
xe0:
vpci: "0000:05:00.0"
diff --git a/samples/vnf_samples/nsut/prox/prox_tg_bm.yaml b/samples/vnf_samples/nsut/prox/prox_tg_bm.yaml
new file mode 100644
index 000000000..d08cf0699
--- /dev/null
+++ b/samples/vnf_samples/nsut/prox/prox_tg_bm.yaml
@@ -0,0 +1,38 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+nodes:
+-
+ name: "tg_0"
+ role: TrafficGen
+ ip: 192.168.100.101
+ user: user
+ ssh_port: "22"
+ password: password
+ interfaces:
+ xe0:
+ vpci: "0000:05:00.0"
+ local_mac: "68:05:ca:30:3d:50"
+ driver: "i40e"
+ local_ip: "152.16.100.19"
+ netmask: "255.255.255.0"
+ dpdk_port_num: 0
+ xe1:
+ vpci: "0000:05:00.1"
+ local_mac: "68:05:ca:30:3d:51"
+ driver: "i40e"
+ local_ip: "152.16.40.19"
+ netmask: "255.255.255.0"
+ dpdk_port_num: 1
+
diff --git a/samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_l2fwd-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_l2fwd-2.yaml
new file mode 100644
index 000000000..2f5e6ea27
--- /dev/null
+++ b/samples/vnf_samples/nsut/prox/tc_prox_ovs-dpdk_l2fwd-2.yaml
@@ -0,0 +1,97 @@
+# Copyright (c) 2016-2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+schema: "yardstick:task:0.1"
+
+scenarios:
+-
+ type: NSPerf
+ traffic_profile: ../../traffic_profiles/prox_binsearch.yaml
+ topology: prox-tg-topology-2.yaml
+
+ nodes:
+ tg__0: tg_0.yardstick
+ vnf__0: vnf_0.yardstick
+
+ options:
+ interface_speed_gbps: 10
+
+ vnf__0:
+ prox_path: /opt/nsb_bin/prox
+ prox_config: "configs/handle_l2fwd-2.cfg"
+ prox_args:
+ "-t": ""
+
+ tg__0:
+ prox_path: /opt/nsb_bin/prox
+ prox_config: "configs/gen_l2fwd-2.cfg"
+ prox_args:
+ "-e": ""
+ "-t": ""
+
+ runner:
+ type: Duration
+ # we kill after duration, independent of test duration, so set this high
+ duration: 300
+
+contexts:
+ - name: yardstick
+ type: Node
+ file: prox_tg_bm.yaml
+ - name: yardstick
+ type: StandaloneOvsDpdk
+ file: /etc/yardstick/nodes/standalone/host_ovs.yaml
+ vm_deploy: True
+ ovs_properties:
+ version:
+ ovs: 2.8.0
+ dpdk: 17.05.2
+ pmd_threads: 2
+ ram:
+ socket_0: 2048
+ socket_1: 2048
+ queues: 4
+ vpath: "/usr/local"
+ flavor:
+ images: "/var/lib/libvirt/images/yardstick-nsb-image.img"
+ ram: 16384
+ extra_specs:
+ hw:cpu_sockets: 1
+ hw:cpu_cores: 10
+ hw:cpu_threads: 2
+ user: "root"
+ password: ""
+ servers:
+ vnf_0:
+ network_ports:
+ mgmt:
+ cidr: '172.20.2.7/24'
+ xe0:
+ - uplink_0
+ xe1:
+ - downlink_0
+ networks:
+ uplink_0:
+ port_num: 0
+ phy_port: "0000:af:00.0"
+ vpci: "0000:00:07.0"
+ cidr: '152.16.100.10/24'
+ gateway_ip: '152.16.100.20'
+ downlink_0:
+ port_num: 1
+ phy_port: "0000:af:00.1"
+ vpci: "0000:00:08.0"
+ cidr: '152.16.40.10/24'
+ gateway_ip: '152.16.100.20'
diff --git a/samples/vnf_samples/nsut/prox/tc_prox_sriov_l2fwd-2.yaml b/samples/vnf_samples/nsut/prox/tc_prox_sriov_l2fwd-2.yaml
new file mode 100644
index 000000000..97a3d5af3
--- /dev/null
+++ b/samples/vnf_samples/nsut/prox/tc_prox_sriov_l2fwd-2.yaml
@@ -0,0 +1,85 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+schema: "yardstick:task:0.1"
+
+scenarios:
+-
+ type: NSPerf
+ traffic_profile: ../../traffic_profiles/prox_binsearch.yaml
+ topology: prox-tg-topology-2.yaml
+
+ nodes:
+ tg__0: tg_0.yardstick
+ vnf__0: vnf_0.yardstick
+
+ options:
+ interface_speed_gbps: 10
+
+ vnf__0:
+ prox_path: /opt/nsb_bin/prox
+ prox_config: "configs/handle_l2fwd-2.cfg"
+ prox_args:
+ "-t": ""
+
+ tg__0:
+ prox_path: /opt/nsb_bin/prox
+ prox_config: "configs/gen_l2fwd-2.cfg"
+ prox_args:
+ "-e": ""
+ "-t": ""
+
+ runner:
+ type: Duration
+ # we kill after duration, independent of test duration, so set this high
+ duration: 300
+
+contexts:
+ - name: yardstick
+ type: Node
+ file: prox_tg_bm.yaml
+ - name: yardstick
+ type: StandaloneSriov
+ file: /etc/yardstick/nodes/standalone/host_sriov.yaml
+ vm_deploy: True
+ flavor:
+ images: "/var/lib/libvirt/images/yardstick-nsb-image.img"
+ ram: 16384
+ extra_specs:
+ hw:cpu_sockets: 1
+ hw:cpu_cores: 10
+ hw:cpu_threads: 2
+ user: ""
+ password: ""
+ servers:
+ vnf_0:
+ network_ports:
+ mgmt:
+ cidr: '1.1.1.61/24'
+ xe0:
+ - uplink_0
+ xe1:
+ - downlink_0
+ networks:
+ uplink_0:
+ phy_port: "0000:05:00.0"
+ vpci: "0000:00:0a.0"
+ cidr: '152.16.100.10/24'
+ gateway_ip: '152.16.100.20'
+ downlink_0:
+ phy_port: "0000:05:00.1"
+ vpci: "0000:00:0b.0"
+ cidr: '152.16.40.10/24'
+ gateway_ip: '152.16.100.20'
diff --git a/samples/vnf_samples/nsut/vepc/landslide_tg_topology.yaml b/samples/vnf_samples/nsut/vepc/landslide_tg_topology.yaml
new file mode 100644
index 000000000..ccf496bf9
--- /dev/null
+++ b/samples/vnf_samples/nsut/vepc/landslide_tg_topology.yaml
@@ -0,0 +1,50 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+nsd:nsd-catalog:
+ nsd:
+ - id: landslide-tg-topology
+ name: landslide-tg-topology
+ short-name: landslide-tg-topology
+ description: landslide-tg-topology
+ constituent-vnfd:
+ - member-vnf-index: '1'
+ vnfd-id-ref: tg__0
+ VNF model: ../../vnf_descriptors/tg_landslide_tpl.yaml #TG type
+ - member-vnf-index: '2'
+ vnfd-id-ref: vnf__0
+ VNF model: ../../vnf_descriptors/tg_landslide_tpl.yaml #VNF type: Emulated vEPC
+
+ vld:
+ - id: uplink_0
+ name: tg__0 to vnf__0 link 1
+ type: ELAN
+ vnfd-connection-point-ref:
+ - member-vnf-index-ref: '1'
+ vnfd-connection-point-ref: xe0
+ vnfd-id-ref: tg__0
+ - member-vnf-index-ref: '2'
+ vnfd-connection-point-ref: xe0
+ vnfd-id-ref: vnf__0
+
+ - id: downlink_0
+ name: vnf__0 to tg__0 link 2
+ type: ELAN
+ vnfd-connection-point-ref:
+ - member-vnf-index-ref: '2'
+ vnfd-connection-point-ref: xe1
+ vnfd-id-ref: vnf__0
+ - member-vnf-index-ref: '1'
+ vnfd-connection-point-ref: xe1
+ vnfd-id-ref: tg__0
diff --git a/samples/vnf_samples/nsut/vepc/tc_epc_default_bearer_create_landslide.yaml b/samples/vnf_samples/nsut/vepc/tc_epc_default_bearer_create_landslide.yaml
new file mode 100644
index 000000000..ee17df138
--- /dev/null
+++ b/samples/vnf_samples/nsut/vepc/tc_epc_default_bearer_create_landslide.yaml
@@ -0,0 +1,58 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+schema: yardstick:task:0.1
+description: >
+ UE default bearer creation test case. Measure successful default bearer
+ creation rate, total number of active bearer per server.
+
+scenarios:
+- type: NSPerf
+ traffic_profile: "../../traffic_profiles/landslide/landslide_dmf_udp.yaml"
+ session_profile: "../../traffic_profiles/landslide/landslide_session_default_bearer.yaml"
+ topology: "vepc_vnf_topology_landslide.yaml"
+ nodes:
+ tg__0: tg__0.traffic_gen
+ vnf__0: vnf__0.vnf_epc
+ options:
+ traffic_duration: 70
+ dmf:
+ transactionRate: 5
+ packetSize: 512
+ test_cases: # test case parameters to apply on session profile
+ - type: SGW_Node # test type from test session profile
+ AssociatedPhys: 'eth6' # interface(s) in Node test type to loop traffic back from NetHost
+ BearerAddrPool: 2001::1
+ BearerV4AddrPool: 1.0.0.1
+ FireballEn: 'false'
+ Sessions: '20000'
+ - type: SGW_Nodal # test type from test session profile
+ StartRate: '1000.0'
+ DisconnectRate: '1000.0'
+ FireballEn: 'false'
+ Sessions: '20000'
+
+ runner:
+ type: Duration
+ duration: 200
+ interval: 5
+
+contexts:
+- name: traffic_gen
+ type: Node
+ file: /etc/yardstick/nodes/pod_landslide.yaml
+- name: vnf_epc
+ type: Node
+ file: /etc/yardstick/nodes/pod_vepc_sut.yaml
diff --git a/samples/vnf_samples/nsut/vepc/tc_epc_default_bearer_create_landslide_multi_dmf.yaml b/samples/vnf_samples/nsut/vepc/tc_epc_default_bearer_create_landslide_multi_dmf.yaml
new file mode 100644
index 000000000..76567062a
--- /dev/null
+++ b/samples/vnf_samples/nsut/vepc/tc_epc_default_bearer_create_landslide_multi_dmf.yaml
@@ -0,0 +1,57 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+schema: yardstick:task:0.1
+description: >
+ UE default bearer creation test case. Measure successful default bearer
+ creation rate, total number of active bearer per server.
+
+scenarios:
+- type: NSPerf
+ traffic_profile: "../../traffic_profiles/landslide/landslide_dmf_udp_tcp.yaml"
+ session_profile: "../../traffic_profiles/landslide/landslide_session_default_bearer_multi_dmf.yaml"
+ topology: "vepc_vnf_topology_landslide.yaml"
+ nodes:
+ tg__0: tg__0.traffic_gen
+ vnf__0: vnf__0.vnf_epc
+ options:
+ dmf:
+ - transactionRate: 5
+ packetSize: 512
+ - transactionRate: 5
+ packetSize: 1518
+ test_cases: # test case parameters to apply on session profile
+ - type: SGW_Node # test type from test session profile
+ AssociatedPhys: 'eth6' # interface(s) in Node test type to loop traffic back from NetHost
+ BearerAddrPool: 2001::1
+ BearerV4AddrPool: 1.0.0.1
+ Sessions: '20000'
+ - type: SGW_Nodal # test type from test session profile
+ StartRate: '1000.0'
+ DisconnectRate: '1000.0'
+ Sessions: '20000'
+
+ runner:
+ type: Duration
+ duration: 300
+ interval: 5
+
+contexts:
+- name: traffic_gen
+ type: Node
+ file: /etc/yardstick/nodes/pod_landslide.yaml
+- name: vnf_epc
+ type: Node
+ file: /etc/yardstick/nodes/pod_vepc_sut.yaml
diff --git a/samples/vnf_samples/nsut/vepc/tc_epc_network_dedicated_bearer_create_landslide.yaml b/samples/vnf_samples/nsut/vepc/tc_epc_network_dedicated_bearer_create_landslide.yaml
new file mode 100644
index 000000000..65f58bd0d
--- /dev/null
+++ b/samples/vnf_samples/nsut/vepc/tc_epc_network_dedicated_bearer_create_landslide.yaml
@@ -0,0 +1,164 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+schema: yardstick:task:0.1
+description: >
+ NW triggered dedicated bearer creation test case. Measure successful dedicated bearers
+ creation rate, total number of active bearer per server.
+
+scenarios:
+- type: NSPerf
+ traffic_profile: "../../traffic_profiles/landslide/landslide_dmf_udp.yaml"
+ session_profile: "../../traffic_profiles/landslide/landslide_session_network_dedicated_bearer.yaml"
+ topology: "vepc_vnf_topology_landslide.yaml"
+ nodes:
+ tg__0: tg__0.traffic_gen
+ vnf__0: vnf__0.vnf_epc
+ options:
+ dmf:
+ transactionRate: 5
+ packetSize: 512
+ burstCount: 1 # Applies only to Basic UDP DMF, DataProtocol==udp
+ test_cases: # test case parameters to apply on session profile
+ - type: SGW_Node # test type from test session profile
+ AssociatedPhys: 'eth6' # interface(s) in Node test type to loop traffic back from NetHost
+ BearerAddrPool: 2001::1
+ BearerV4AddrPool: 1.0.0.1
+ Sessions: 50000
+ UeInitBearerEn: 'false'
+ DedicatedsPerDefaultBearer: 1 # number of dedicated bearers per default
+ DefaultBearers: 1 # number of default bearers
+ FireballEn: 'false' # Fireball settings
+
+ # APN settings (number of APNs and APN's names)
+ Gtp2ApnNumSpecifiedApns_0: '1'
+ Gtp2ApnSpecified_0:
+ array: [dummy.an]
+ class: Array
+
+ - type: PGW_Node # test type from test session profile
+ BearerAddrPool: 2001::1
+ BearerV4AddrPool: 1.0.0.1
+ Sessions: 50000
+ DedicatedsPerDefaultBearer: 1 # number of dedicated bearers per default
+ DefaultBearers: 1 # number of default bearers
+ FireballEn: 'false' # Fireball settings
+
+ # APN settings (number of APNs and APN's names)
+ Gtp2ApnNumSpecifiedApns_0: '1'
+ Gtp2ApnSpecified_0:
+ class: Array
+ array: [dummy.an]
+
+ - type: SGW_Nodal # test type from test session profile
+ StartRate: '1000.0'
+ DisconnectRate: '1000.0'
+ Sessions: 50000
+ UeInitBearerEn: 'false'
+ DedicatedsPerDefaultBearer: 1 # number of dedicated bearers per default
+ DefaultBearers: 1 # number of default bearers
+ PgwNodeEn: 'false' # Emulate PGW Node
+ FireballEn: 'false' # Fireball settings
+
+ # APN settings (number of APNs and APN's names)
+ Gtp2ApnNumSpecifiedApns_0: '1'
+ Gtp2ApnSpecified_0:
+ class: Array
+ array: [dummy.an]
+
+ # Creation delay individually for each dedicated bearer
+ # Array items specifies timeout between default and dedicated bearers creation
+ # Array items corresponds to specific dedicated bearer
+ ConnectBearerDelay:
+ class: Array
+ array: ['1']
+
+ - type: PCRF_Node # test type from test session profile
+ Sessions: 50000
+ DisconnectRate: '1000'
+
+ # Starting IP address
+ StartingMsIpAddr: 1.0.0.1
+
+ # APN settings (APN's Names)
+ TyCcSrvApns:
+ class: Array
+ array: [dummy.an]
+
+ # Timer column (in seconds)
+ # Value specifies timeout after which dedicated bearer will be created
+ # None-zero timeout corresponds to dedicated bearer, zero timeout - to default bearer
+ TyCcV4SrvRuleInterval_1: '10' # APN1 dedicated bearer
+ TyCcV4SrvRuleInterval_2: '0' # APN1 default bearer
+
+ # QoS Class ID
+ # Name Pattern: TyCcV4SrvCrQci_<RULE_SET_NUM>_<CHAR_RULE_NUM>_<RULE_DEF_NUM>
+ TyCcV4SrvCrQci_1_1_1: '1' # QCI of dedicated bearer
+
+ # Dedicated bearer Uplink/Downlink Bandwidth settings
+ # Name Pattern: TyCcV4SrvPrMaxUL_<RULE_SET_NUM>_<CHAR_RULE_NUM>_<RULE_DEF_NUM>
+ # Name Pattern: TyCcV4SrvPrGuaranteedUplink_<RULE_SET_NUM>_<CHAR_RULE_NUM>_<RULE_DEF_NUM>
+ TyCcV4SrvPrMaxUL_1_1_1: '300' # Uplink Max Bandwidth
+ TyCcV4SrvPrMaxDL_1_1_1: '300' # Downlink Max Bandwidth
+ TyCcV4SrvPrGuaranteedUplink_1_1_1: '300' # Uplink Guaranteed Bandwidth
+ TyCcV4SrvPrGuaranteedDownlink_1_1_1: '300' # Downlink Guaranteed Bandwidth
+
+ # Dedicated bearer ARP Rules
+ # Name Pattern: TyCcV4SrvPrArpEn_<RULE_SET_NUM>_<CHAR_RULE_NUM>_<RULE_DEF_NUM>
+ # Name Pattern: TyCcV4SrvPrArpValue_<RULE_SET_NUM>_<CHAR_RULE_NUM>_<RULE_DEF_NUM>
+ TyCcV4SrvPrArpEn_1_1_1: 'true' # Enable ARP Rules
+ TyCcV4SrvPrArpValue_1_1_1: '1' # ARP Value
+ TyCcV4SrvPrArpPreemptCapEn_1_1_1: 'true' # Enable Pre-emption Capability
+ TyCcV4SrvPrArpPreemptVulnEn_1_1_1: 'true' # Enable Pre-emption Vulnerability
+
+ # Packet Filter Description
+ # Name Pattern:
+ # TyCcV4SrvCrFilter_<RULE_SET_NUM>_<CHAR_RULE_NUM>_<RULE_DEF_NUM>_<FILTER_NUM>
+ # To explicitly specify protocol number with decimal number, use following naming pattern:
+ # permit in <PROTOCOL_NUMBER> from
+ TyCcV4SrvCrFilter_1_1_1_1: permit in 17 from
+
+ # Packet Filter Destination IP
+ # Name Pattern:
+ # TyCcV4SrvCrFilterDestIp_<RULE_SET_NUM>_<CHAR_RULE_NUM>_<RULE_DEF_NUM>_<FILTER_NUM>
+ # Parameter's value specifies filter's destination IP address and remote port range
+ TyCcV4SrvCrFilterDestIp_1_1_1_1: 0.0.0.0 0-65535
+
+ # Packet Filter IP Ext
+ # Name Pattern:
+ # TyCcV4SrvCrUserIpExt_<RULE_SET_NUM>_<CHAR_RULE_NUM>_<RULE_DEF_NUM>_<FILTER_NUM>
+ # Parameter's value specifies filter's local port range
+ TyCcV4SrvCrUserIpExt_1_1_1_1: 0-65535
+
+ # Packet Filter Flow Direction
+ # Name Pattern:
+ # TyCcV4SrvCrFilterDirection_<RULE_SET_NUM>_<CHAR_RULE_NUM>_<RULE_DEF_NUM>_<FILTER_NUM>
+ TyCcV4SrvCrFilterDirection_1_1_1_1: '3' # Bi-Directional
+
+ # Diameter Transmission Protocol
+ TyCcSrvTcpProtocol: '1' # 0 - TCP, 1 - SCTP
+
+ runner:
+ type: Duration
+ duration: 600
+ interval: 5
+
+contexts:
+- name: traffic_gen
+ type: Node
+ file: /etc/yardstick/nodes/pod_landslide_network_dedicated.yaml
+- name: vnf_epc
+ type: Node
+ file: /etc/yardstick/nodes/pod_vepc_sut.yaml
diff --git a/samples/vnf_samples/nsut/vepc/tc_epc_network_service_request_landslide.yaml b/samples/vnf_samples/nsut/vepc/tc_epc_network_service_request_landslide.yaml
new file mode 100644
index 000000000..55a96f4e4
--- /dev/null
+++ b/samples/vnf_samples/nsut/vepc/tc_epc_network_service_request_landslide.yaml
@@ -0,0 +1,67 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+schema: yardstick:task:0.1
+description: >
+ Downlink Data Notification from Network to UE that are in Idle state.
+
+scenarios:
+- type: NSPerf
+ traffic_profile: "../../traffic_profiles/landslide/landslide_dmf_udp.yaml"
+ session_profile: "../../traffic_profiles/landslide/landslide_session_network_service_request.yaml"
+ topology: "vepc_vnf_topology_landslide.yaml"
+ nodes:
+ tg__0: tg__0.traffic_gen
+ vnf__0: vnf__0.vnf_epc
+ options:
+ dmf:
+ transactionRate: 0.1
+ packetSize: 512
+ burstCount: 1 # Applies only to Basic UDP DMF, DataProtocol==udp
+ test_cases: # test case parameters to apply on session profile
+ - type: SGW_Node # test type from test session profile
+ AssociatedPhys: 'eth6'
+ BearerAddrPool: 2001::1
+ BearerV4AddrPool: 1.0.0.1
+ Sessions: '20000'
+ - type: SGW_Nodal # test type from test session profile
+ StartRate: '1000.0'
+ DisconnectRate: '1000.0'
+ Sessions: '20000'
+
+ # Configurations:
+ # 1. Specify continuous periodical events: UE goes to Idle state -> DL Data Notification
+ # E.g. Set Gtp2IdleEntryTime = 5 - UE goes to idle state after 5 seconds
+ # Set transactionRate = 0.1 - Send traffic periodically every 10 seconds
+ # 2. Set traffic run start delay
+ # E.g. Set Gtp2IdleEntryTime = 5 - UE goes to idle state after 5 seconds
+ # Set TrafficStartDelay with value greater that Gtp2IdleEntryTime
+ Gtp2IdleEntryTime: '5' # Idle Entry Time (s)
+
+ # Downlink Data Notification settings
+ TrafficStartDelay: 1000 # Data Start Delay (ms)
+
+ runner:
+ type: Duration
+ duration: 300
+ interval: 5
+
+contexts:
+- name: traffic_gen
+ type: Node
+ file: /etc/yardstick/nodes/pod_landslide.yaml
+- name: vnf_epc
+ type: Node
+ file: /etc/yardstick/nodes/pod_vepc_sut.yaml
diff --git a/samples/vnf_samples/nsut/vepc/tc_epc_saegw_tput_relocation_landslide.yaml b/samples/vnf_samples/nsut/vepc/tc_epc_saegw_tput_relocation_landslide.yaml
new file mode 100644
index 000000000..cece2a747
--- /dev/null
+++ b/samples/vnf_samples/nsut/vepc/tc_epc_saegw_tput_relocation_landslide.yaml
@@ -0,0 +1,62 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+schema: yardstick:task:0.1
+description: >
+ SAEGW throughput with relocation test case
+
+scenarios:
+- type: NSPerf
+ traffic_profile: "../../traffic_profiles/landslide/landslide_dmf_udp.yaml"
+ session_profile: "../../traffic_profiles/landslide/landslide_session_saegw_relocation.yaml"
+ topology: "vepc_vnf_topology_landslide.yaml"
+ nodes:
+ tg__0: tg__0.traffic_gen
+ vnf__0: vnf__0.vnf_epc
+ options:
+ dmf:
+ transactionRate: 5
+ packetSize: 512
+ test_cases: # test case parameters to apply on session profile
+ - type: SGW_Node # test type from test session profile
+ AssociatedPhys: 'eth6' # interface(s) in Node test type to loop traffic back from NetHost
+ BearerAddrPool: 2001::1
+ BearerV4AddrPool: 1.0.0.1
+ Sessions: '20000'
+ - type: SGW_Nodal # test type from test session profile
+ StartRate: '1000.0'
+ DisconnectRate: '1000.0'
+ Sessions: '20000'
+ # Relocation settings
+ HandoffType: '0' # 0 - X2, 1 - S1, 2 - TAU/RAU
+ MobilityTimeMs: '10000' # Mobility Delay Time (ms)
+ StartType: When All Sessions Started # When All Sessions Started or When Session Started
+ SessionRetries: 'true' # Enable/disable Session Start Retries
+ MobilityRate: '120.0' # Mobility Rate
+ MobilityMode: Single Handoff # Handoff Mode: Single Handoff or Continuous Handoff
+ MobilityIntervalShape: Fixed # Mobility Rate Interval Distribution
+
+ runner:
+ type: Duration
+ duration: 300
+ interval: 5
+
+contexts:
+- name: traffic_gen
+ type: Node
+ file: /etc/yardstick/nodes/pod_landslide.yaml
+- name: vnf_epc
+ type: Node
+ file: /etc/yardstick/nodes/pod_vepc_sut.yaml
diff --git a/samples/vnf_samples/nsut/vepc/tc_epc_ue_dedicated_bearer_create_landslide.yaml b/samples/vnf_samples/nsut/vepc/tc_epc_ue_dedicated_bearer_create_landslide.yaml
new file mode 100644
index 000000000..81a4149f8
--- /dev/null
+++ b/samples/vnf_samples/nsut/vepc/tc_epc_ue_dedicated_bearer_create_landslide.yaml
@@ -0,0 +1,74 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+schema: yardstick:task:0.1
+description: >
+ UE triggered dedicated bearer creation test case. Measure successful dedicated bearers
+ creation rate, total number of active bearer per server.
+
+scenarios:
+- type: NSPerf
+ traffic_profile: "../../traffic_profiles/landslide/landslide_dmf_udp.yaml"
+ session_profile: "../../traffic_profiles/landslide/landslide_session_ue_dedicated_bearer.yaml"
+ topology: "vepc_vnf_topology_landslide.yaml"
+ nodes:
+ tg__0: tg__0.traffic_gen
+ vnf__0: vnf__0.vnf_epc
+ options:
+ dmf:
+ transactionRate: 5
+ packetSize: 512
+ burstCount: 1 # Applies only to Basic UDP DMF, DataProtocol==udp
+ test_cases: # test case parameters to apply on session profile
+ - type: SGW_Node # test type from test session profile
+ AssociatedPhys: 'eth6' # interface(s) in Node test type to loop traffic back from NetHost
+ BearerAddrPool: 2001::1
+ BearerV4AddrPool: 1.0.0.1
+ Sessions: '20000'
+ UeInitBearerEn: 'true'
+ DedicatedsPerDefaultBearer: 1 # number of dedicated bearers per default
+ DefaultBearers: 1 # number of default bearers
+
+ # Fireball settings
+ FireballEn: 'false'
+
+ - type: SGW_Nodal # test type from test session profile
+ StartRate: '1000.0'
+ DisconnectRate: '1000.0'
+ Sessions: '20000'
+ UeInitBearerEn: 'true'
+ DedicatedsPerDefaultBearer: '1' # number of dedicated bearers per default
+ DefaultBearers: '1' # number of default bearers
+
+ # Connection delay individually for each dedicated bearer
+ ConnectBearerDelay:
+ class: Array
+ array: ['5']
+
+ # Fireball settings
+ FireballEn: 'false'
+
+ runner:
+ type: Duration
+ duration: 300
+ interval: 5
+
+contexts:
+- name: traffic_gen
+ type: Node
+ file: /etc/yardstick/nodes/pod_landslide.yaml
+- name: vnf_epc
+ type: Node
+ file: /etc/yardstick/nodes/pod_vepc_sut.yaml
diff --git a/samples/vnf_samples/nsut/vepc/tc_epc_ue_service_request_landslide.yaml b/samples/vnf_samples/nsut/vepc/tc_epc_ue_service_request_landslide.yaml
new file mode 100644
index 000000000..eaf4ae99f
--- /dev/null
+++ b/samples/vnf_samples/nsut/vepc/tc_epc_ue_service_request_landslide.yaml
@@ -0,0 +1,228 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+schema: yardstick:task:0.1
+description: >
+ UE triggered bearer modification request with new QoS and TFT settings
+
+scenarios:
+- type: NSPerf
+ traffic_profile: "../../traffic_profiles/landslide/landslide_dmf_udp.yaml"
+ session_profile: "../../traffic_profiles/landslide/landslide_session_ue_service_request.yaml"
+ topology: "vepc_vnf_topology_landslide.yaml"
+ nodes:
+ tg__0: tg__0.traffic_gen
+ vnf__0: vnf__0.vnf_epc
+ options:
+ dmf:
+ transactionRate: 5
+ packetSize: 512
+ burstCount: 1 # Applies only to Basic UDP DMF, DataProtocol==udp
+ test_cases: # test case parameters to apply on session profile
+ - type: SGW_Node # test type from test session profile
+ AssociatedPhys: 'eth6'
+ BearerAddrPool: 2001::1
+ BearerV4AddrPool: 1.0.0.1
+ Sessions: '20000'
+ UeInitBearerEn: 'true'
+ DedicatedsPerDefaultBearer: 1 # number of dedicated bearers per default
+ DefaultBearers: 1 # number of default bearers
+ FireballEn: 'false' # Fireball settings
+
+ # Number of TFTs
+ # Parameter name pattern: TrafficNumTftsForContext<DEDICATED_BEARER_INDEX>
+ TrafficNumTftsForContext0: '1'
+
+ # TFT Settings
+ # Parameter name(s) depends on number of dedicated bearers and number of TFTs per bearer.
+ # Parameter naming pattern: "TrafficTftForContext<DEDICATED_BEARER_INDEX>_<TFT_INDEX>"
+ # E.g.:
+ # "TrafficTftForContext0_0" - dedicated bearer 1, 1st TFT
+ # "TrafficTftForContext0_1" - dedicated bearer 1, 2nd TFT
+ # "TrafficTftForContext1_0" - dedicated bearer 2, 1st TFT
+ TrafficTftForContext0_0:
+ array:
+ - '255' # Packet Evaluation Precedence
+ - '6' # Protocol Number
+ - ''
+ - '' # Starting Remote Port
+ - '' # Ending Remote Port
+ - '' # Remote Address
+ - '' # Starting Local Port
+ - '' # Ending Local Port
+ - '' # Type of Service
+ - '' # Mask
+ - '' # Security Parameter Index
+ - '' # Flow Label
+ - ''
+ - '' # Include In Bearer Modification Request
+ - '3' # Direction: 0 - Pre Rel 7, 1 - Downlink, 2 - Uplink, 3 - Bi-Directional
+ - ''
+ - ''
+ - ''
+ - ''
+ class: Array
+
+ - type: SGW_Nodal # test type from test session profile
+ StartRate: '1000.0'
+ DisconnectRate: '1000.0'
+ Sessions: '20000'
+ UeInitBearerEn: 'true'
+ DedicatedsPerDefaultBearer: '1' # number of dedicated bearers per default
+ DefaultBearers: '1' # number of default bearers
+ FireballEn: 'false' # Fireball settings
+
+ # Creation delay individually for each dedicated bearer
+ # Array items specifies timeout between default and dedicated bearers creation
+ # Array items corresponds to specific dedicated bearer:
+ # E.g. 1st item - 1st dedicated bearer, 2nd item - 2nd dedicated bearer, etc.
+ ConnectBearerDelay:
+ class: Array
+ array: ['1']
+
+ # Data start delay (ms)
+ TrafficStartDelay: 1000
+
+ # Number of TFTs
+ # Parameter name pattern: TrafficNumTftsForContext<DEDICATED_BEARER_INDEX>
+ TrafficNumTftsForContext0: '1'
+
+ # TFT settings
+ # Parameter name(s) depends on number of dedicated bearers and number of TFTs per bearer.
+ # Parameter naming pattern: "TrafficTftForContext<DEDICATED_BEARER_INDEX>_<TFT_INDEX>"
+ # E.g.:
+ # "TrafficTftForContext0_0" - dedicated bearer 1, 1st TFT
+ # "TrafficTftForContext0_1" - dedicated bearer 1, 2nd TFT
+ # "TrafficTftForContext1_0" - dedicated bearer 2, 1st TFT
+ TrafficTftForContext0_0:
+ array:
+ - '255' # Packet Evaluation Precedence
+ - '6' # Protocol Number
+ - ''
+ - '' # Starting Remote Port
+ - '' # Ending Remote Port
+ - '' # Remote Address
+ - '' # Starting Local Port
+ - '' # Ending Local Port
+ - '' # Type of Service
+ - '' # Mask
+ - '' # Security Parameter Index
+ - '' # Flow Label
+ - ''
+ - '' # Include In Bearer Modification Request
+ - '3' # Direction: 0 - Pre Rel 7, 1 - Downlink, 2 - Uplink, 3 - Bi-Directional
+ - ''
+ - ''
+ - ''
+ - ''
+ class: Array
+
+ # Bearers modification settings
+ # Dedicated bearers modification settings and TFT filters
+ Gtp2BearerModEn: 'true' # Enable/Disable bearer modification
+ Gtp2BearerModInit: 'UE' # Bearer modification initiator
+ Gtp2BearerDelayTime: '5' # Delay time (s)
+ Gtp2IncModQos_2: 'true' # Include QoS IE
+ Gtp2BearerContinuousMod: 'false' # Continuous modifications
+ # Operation code in TFT settings:
+ # Parameter name(s) depends on number of dedicated bearers
+ # Parameter naming pattern: "TrafficOpCodeForContext<DEDICATED_BEARER_INDEX>_2"
+ # E.g.:
+ # TrafficOpCodeForContext0_2 - operation code for 1st dedicated bearer's TFT
+ # TrafficOpCodeForContext1_2 - operation code for 2st dedicated bearer's TFT
+ # 1 - create new TFT
+ # 2 - delete existing TFT
+ # 3 - add packet filters to existing TFT
+ # 4 - replace packet filters in existing TFT
+ # 5 - delete packet filters from existing TFT
+ TrafficOpCodeForContext0_2: '1'
+
+ # Number of TFTs
+ # Parameter name pattern: TrafficNumTftsForContext<DEDICATED_BEARER_INDEX>_2
+ TrafficNumTftsForContext0_2: '1'
+
+ # TFT settings
+ # Parameter name(s) depends on number of dedicated bearers and number of TFTs per bearer.
+ # Parameter naming pattern: "TrafficTftForContext<DEDICATED_BEARER_INDEX>_<TFT_INDEX>_2"
+ # E.g.:
+ # "TrafficTftForContext0_0" - dedicated bearer 1, 1st TFT
+ # "TrafficTftForContext0_1" - dedicated bearer 1, 2nd TFT
+ # "TrafficTftForContext1_0" - dedicated bearer 2, 1st TFT
+ TrafficTftForContext0_0_2:
+ class: Array
+ array:
+ - '255' # Packet Evaluation Precedence
+ - '17' # Protocol Number
+ - ''
+ - '2003' # Starting Remote Port
+ - '2003' # Ending Remote Port
+ - '' # Remote Address
+ - '2002' # Starting Local Port
+ - '2002' # Ending Local Port
+ - '' # Type of Service
+ - '' # Mask
+ - '' # Security Parameter Index
+ - '' # Flow Label
+ - ''
+ - 'true' # Include In Bearer Modification Request
+ - '3' # Direction: 0 - Pre Rel 7, 1 - Downlink, 2 - Uplink, 3 - Bi-Directional
+ - ''
+ - ''
+ - ''
+ - ''
+
+ # Modified bearers QoS settings
+ Gtp2QosDetail_2: Individual # bearers QoS details (Summary, Individual, Per Bearer)
+
+ # Parameter name(s) depends on number of dedicated bearers
+ # Parameter(s) naming pattern: "Gtp2QosClassId_2_<BEARER_INDEX>"
+ # E.g.:
+ # Gtp2QosClassId_2_1 - default bearer class identifier
+ # Gtp2QosClassId_2_2 - 1st dedicated bearer class identifier
+ # Gtp2QosClassId_2_3 - 2st dedicated bearer class identifier
+ # Modified default bearer settings
+ Gtp2QosClassId_2_1: '1' # Bearer class identifier
+ Gtp2QosArpValue_2_1: '1' # Bearer ARP priority level
+ Gtp2QosArpPreemptCapEn_2_1: 'false' # Pre-emption capability
+ Gtp2QosArpPreemptVulnEn_2_1: 'false' # Pre-emption vulnerability
+ Gtp2QosMaxUplink_2_1: '1000' # Uplink maximum bit rates (kb/s)
+ Gtp2QosMaxDownlink_2_1: '1000' # Downlink maximum bit rates (kb/s)
+ Gtp2QosGuarUplink_2_1: '1000' # Uplink guaranteed bit rates (kb/s)
+ Gtp2QosGuarDownlink_2_1: '1000' # Downlink guaranteed bit rates (kb/s)
+
+ # Modified dedicated bearer settings
+ Gtp2QosClassId_2_2: '5' # Bearer class identifier
+ Gtp2QosArpValue_2_2: '1' # Bearer ARP priority level
+ Gtp2QosArpPreemptCapEn_2_2: 'false' # Pre-emption capability
+ Gtp2QosArpPreemptVulnEn_2_2: 'false' # Pre-emption vulnerability
+
+ # Uncomment this settings in case Gtp2QosClassId_2_2 is equal to 1
+ # Gtp2QosMaxUplink_2_2: '1000' # Uplink maximum bit rates (kb/s)
+ # Gtp2QosMaxDownlink_2_2: '1000' # Downlink maximum bit rates (kb/s)
+ # Gtp2QosGuarUplink_2_2: '1000' # Uplink guaranteed bit rates (kb/s)
+ # Gtp2QosGuarDownlink_2_2: '1000' # Downlink guaranteed bit rates (kb/s)
+
+ runner:
+ type: Duration
+ duration: 300
+ interval: 5
+
+contexts:
+- name: traffic_gen
+ type: Node
+ file: /etc/yardstick/nodes/pod_landslide.yaml
+- name: vnf_epc
+ type: Node
+ file: /etc/yardstick/nodes/pod_vepc_sut.yaml
diff --git a/samples/vnf_samples/nsut/vepc/vepc_vnf_topology_landslide.yaml b/samples/vnf_samples/nsut/vepc/vepc_vnf_topology_landslide.yaml
new file mode 100644
index 000000000..f54cdaf81
--- /dev/null
+++ b/samples/vnf_samples/nsut/vepc/vepc_vnf_topology_landslide.yaml
@@ -0,0 +1,50 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+nsd:nsd-catalog:
+ nsd:
+ - id: vEPC
+ name: vEPC
+ short-name: vEPC
+ description: vEPC VNF with Spirent landslide TG
+ constituent-vnfd:
+ - member-vnf-index: '1'
+ vnfd-id-ref: tg__0
+ VNF model: ../../vnf_descriptors/tg_landslide_tpl.yaml #TG type
+ - member-vnf-index: '2'
+ vnfd-id-ref: vnf__0
+ VNF model: ../../vnf_descriptors/vepc_vnf.yaml #VNF type
+
+ vld:
+ - id: uplink_0
+ name: tg__0 to vnf__0 link 1
+ type: ELAN
+ vnfd-connection-point-ref:
+ - member-vnf-index-ref: '1'
+ vnfd-connection-point-ref: xe0
+ vnfd-id-ref: tg__0
+ - member-vnf-index-ref: '2'
+ vnfd-connection-point-ref: xe0
+ vnfd-id-ref: vnf__0
+
+ - id: downlink_0
+ name: vnf__0 to tg__0 link 2
+ type: ELAN
+ vnfd-connection-point-ref:
+ - member-vnf-index-ref: '2'
+ vnfd-connection-point-ref: xe1
+ vnfd-id-ref: vnf__0
+ - member-vnf-index-ref: '1'
+ vnfd-connection-point-ref: xe1
+ vnfd-id-ref: tg__0
diff --git a/samples/vnf_samples/traffic_profiles/http_tests/HTTP_1b-requests_65000_concurrency.yaml b/samples/vnf_samples/traffic_profiles/http_tests/HTTP_1b-requests_65000_concurrency.yaml
index 112836ac9..dcc11d55a 100644
--- a/samples/vnf_samples/traffic_profiles/http_tests/HTTP_1b-requests_65000_concurrency.yaml
+++ b/samples/vnf_samples/traffic_profiles/http_tests/HTTP_1b-requests_65000_concurrency.yaml
@@ -5,37 +5,42 @@ description: Traffic profile to run HTTP test
traffic_profile:
traffic_type: TrafficProfileGenericHTTP
-#http client specific values
uplink_0:
- http_no_requests: "1000" # number of http iterations
- http_concurency: "65000" # number of threads to be run
- http_locator: "/1B.bin" # http locator to be read
- http_peer_address: "152.40.40.20" # address range of the servers
- http_peer_port: "9004" # port range of the server
- http_client_address: "152.16.100.20" # address range of the servers
- private_subnet_mask: "255.255.255.0"
- attacker_tests: "False" # True : If attacker Test, False : Otherwise
+ ip:
+ address: "152.16.100.32" # must be in same subnet with gateway
+ subnet_prefix: 24 # subnet prefix
+ mac: "Auto" # port mac addr or auto to generate automatically
+ gateway: <GATEWAY_ADDR> # will be taken from pod file
+
+ http_client:
+ http_no_requests: "1000" # number of http iterations
+ http_concurency: "65000" # number of threads to be run
+ http_locator: "/1B.bin" # http locator to be read
+ attacker_tests: "False" # True : If attacker Test, False : Otherwise
-#http server side
downlink_0:
- http_locator_image_size: "1B" # image size requested by http client
- http_bind_address: "152.40.40.20" # where address is bound
- http_bind_port: "9004" # when port is bound
- public_subnet_mask: "255.255.255.0"
+ ip:
+ address: "152.40.40.32" # must be in same subnet with gateway
+ subnet_prefix: 24 # subnet prefix
+ mac: "Auto" # port mac addr or auto to generate automatically
+ gateway: <GATEWAY_ADDR> # will be taken from pod file
uplink_1:
- http_no_requests: "1000" # number of http iterations
- http_concurency: "65000" # number of threads to be run
- http_locator: "/1B.bin" # http locator to be read
- http_peer_address: "192.40.40.20" # address range of the servers
- http_peer_port: "9004" # port range of the server
- http_client_address: "152.16.100.20" # address range of the servers
- private_subnet_mask: "255.255.255.0"
- attacker_tests: "False" # True : If attacker Test, False : Otherwise
+ ip:
+ address: "12.12.12.32"
+ subnet_prefix: 24
+ mac: "00:00:00:00:00:01"
+ gateway: <GATEWAY_ADDR>
+
+ http_client:
+ http_no_requests: "1000"
+ http_concurency: "65000"
+ http_locator: "/1B.bin"
+ attacker_tests: "False"
-#http server side
downlink_1:
- http_locator_image_size: "1B" # image size requested by http client
- http_bind_address: "192.40.40.20" # where address is bound
- http_bind_port: "9004" # when port is bound
- public_subnet_mask: "255.255.255.0"
+ ip:
+ address: "13.13.13.32"
+ subnet_prefix: 24
+ mac: "00:00:00:00:00:02"
+ gateway: <GATEWAY_ADDR> \ No newline at end of file
diff --git a/samples/vnf_samples/traffic_profiles/landslide/landslide_dmf_fb_udp.yaml b/samples/vnf_samples/traffic_profiles/landslide/landslide_dmf_fb_udp.yaml
new file mode 100644
index 000000000..f25239f57
--- /dev/null
+++ b/samples/vnf_samples/traffic_profiles/landslide/landslide_dmf_fb_udp.yaml
@@ -0,0 +1,79 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+schema: "nsb:traffic_profile:0.1"
+
+name: LandslideProfile
+description: Spirent Landslide traffic profile (Data Message Flow)
+
+traffic_profile:
+ traffic_type: LandslideProfile
+
+dmf_config:
+ dmf:
+ library: test
+ name: Fireball UDP
+ description: "Basic data flow using UDP/IP (Fireball DMF)"
+ keywords: 'UDP '
+ dataProtocol: fb_udp
+ burstCount: 1 # Applies only to Basic UDP DMF, DataProtocol == (udp or fb_udp)
+ clientPort:
+ clientPort: 2002
+ isClientPortRange: 'false'
+ serverPort: 2003
+ connection:
+ initiatingSide: Client
+ disconnectSide: Client
+ underlyingProtocol: none
+ persistentConnection: 'false'
+ protocolId: 0
+ persistentConnection: 'false'
+ transactionRate: 8.0
+ transactions:
+ totalTransactions: 0
+ retries: 0
+ dataResponseTime: 60000
+ packetSize: 64
+ segment:
+ segmentSize: 64000
+ maxSegmentSize: 0
+ size:
+ sizeDistribution: Fixed
+ sizeDeviation: 10
+ interval:
+ intervalDistribution: Fixed
+ intervalDeviation: 10
+ ipHeader:
+ typeOfService: 0
+ timeToLive: 64
+ tcpConnection:
+ force3Way: 'false'
+ fixedRetryTime: 0
+ maxPacketsToForceAck: 0
+ tcp:
+ windowSize: 32768
+ windowScaling: -1
+ disableFinAckWait: 'false'
+ disconnectType: FIN
+ slowStart: 'false'
+ connectOnly: 'false'
+ vtag:
+ VTagMask: '0x0'
+ VTagValue: '0x0'
+ sctpPayloadProtocolId: 0
+ billingIncludeSyn: true
+ billingIncludeSubflow: true
+ billingRecordPerTransaction: 'false'
+ tcpPush: 'false'
+ hostDataExpansionRatio: 1
diff --git a/samples/vnf_samples/traffic_profiles/landslide/landslide_dmf_fb_udp_tcp.yaml b/samples/vnf_samples/traffic_profiles/landslide/landslide_dmf_fb_udp_tcp.yaml
new file mode 100644
index 000000000..e613f1769
--- /dev/null
+++ b/samples/vnf_samples/traffic_profiles/landslide/landslide_dmf_fb_udp_tcp.yaml
@@ -0,0 +1,136 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+schema: "nsb:traffic_profile:0.1"
+
+name: LandslideProfile
+description: Spirent Landslide traffic profile (Data Message Flow)
+
+traffic_profile:
+ traffic_type: LandslideProfile
+
+dmf_config:
+ -
+ dmf:
+ library: test
+ name: Fireball UDP
+ description: "Basic data flow using UDP/IP"
+ keywords: 'UDP '
+ dataProtocol: fb_udp
+ burstCount: 1 # Applies only to Basic UDP DMF, DataProtocol==(udp or fb_udp)
+ clientPort:
+ clientPort: 2012
+ isClientPortRange: 'false'
+ serverPort: 2013
+ connection:
+ initiatingSide: Client
+ disconnectSide: Client
+ underlyingProtocol: none
+ persistentConnection: 'false'
+ protocolId: 0
+ persistentConnection: 'false'
+ transactionRate: 8.0
+ transactions:
+ totalTransactions: 0
+ retries: 0
+ dataResponseTime: 60000
+ packetSize: 64
+ segment:
+ segmentSize: 64000
+ maxSegmentSize: 0
+ size:
+ sizeDistribution: Fixed
+ sizeDeviation: 10
+ interval:
+ intervalDistribution: Fixed
+ intervalDeviation: 10
+ ipHeader:
+ typeOfService: 0
+ timeToLive: 64
+ tcpConnection:
+ force3Way: 'false'
+ fixedRetryTime: 0
+ maxPacketsToForceAck: 0
+ tcp:
+ windowSize: 32768
+ windowScaling: -1
+ disableFinAckWait: 'false'
+ disconnectType: FIN
+ slowStart: 'false'
+ connectOnly: 'false'
+ vtag:
+ VTagMask: '0x0'
+ VTagValue: '0x0'
+ sctpPayloadProtocolId: 0
+ billingIncludeSyn: true
+ billingIncludeSubflow: true
+ billingRecordPerTransaction: 'false'
+ tcpPush: 'false'
+ hostDataExpansionRatio: 1
+ -
+ dmf:
+ library: test
+ name: Fireball TCP
+ description: "Basic data flow using TCP/IP"
+ keywords: 'TCP '
+ dataProtocol: fb_tcp
+ clientPort:
+ clientPort: 2002
+ isClientPortRange: 'false'
+ serverPort: 2003
+ connection:
+ initiatingSide: Client
+ disconnectSide: Client
+ underlyingProtocol: none
+ persistentConnection: 'false'
+ protocolId: 0
+ persistentConnection: 'false'
+ transactionRate: 8.0
+ transactions:
+ totalTransactions: 0
+ retries: 0
+ dataResponseTime: 60000
+ packetSize: 64
+ segment:
+ segmentSize: 64000
+ maxSegmentSize: 0
+ size:
+ sizeDistribution: Fixed
+ sizeDeviation: 10
+ interval:
+ intervalDistribution: Fixed
+ intervalDeviation: 10
+ ipHeader:
+ typeOfService: 0
+ timeToLive: 64
+ tcpConnection:
+ force3Way: 'false'
+ fixedRetryTime: 0
+ maxPacketsToForceAck: 0
+ tcp:
+ windowSize: 32768
+ windowScaling: -1
+ disableFinAckWait: 'false'
+ disconnectType: FIN
+ slowStart: 'false'
+ connectOnly: 'false'
+ vtag:
+ VTagMask: '0x0'
+ VTagValue: '0x0'
+ sctpPayloadProtocolId: 0
+ billingIncludeSyn: true
+ billingIncludeSubflow: true
+ billingRecordPerTransaction: 'false'
+ tcpPush: 'false'
+ hostDataExpansionRatio: 1
diff --git a/samples/vnf_samples/traffic_profiles/landslide/landslide_dmf_udp.yaml b/samples/vnf_samples/traffic_profiles/landslide/landslide_dmf_udp.yaml
new file mode 100644
index 000000000..c7fabd182
--- /dev/null
+++ b/samples/vnf_samples/traffic_profiles/landslide/landslide_dmf_udp.yaml
@@ -0,0 +1,79 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+schema: "nsb:traffic_profile:0.1"
+
+name: LandslideProfile
+description: Spirent Landslide traffic profile (Data Message Flow)
+
+traffic_profile:
+ traffic_type: LandslideProfile
+
+dmf_config:
+ dmf:
+ library: test
+ name: Basic UDP
+ description: "Basic data flow using UDP/IP"
+ keywords: 'UDP '
+ dataProtocol: udp
+ burstCount: 1 # Applies only to Basic UDP DMF, DataProtocol==udp.
+ clientPort:
+ clientPort: 2002
+ isClientPortRange: 'false'
+ serverPort: 2003
+ connection:
+ initiatingSide: Client
+ disconnectSide: Client
+ underlyingProtocol: none
+ persistentConnection: 'false'
+ protocolId: 0
+ persistentConnection: 'false'
+ transactionRate: 8.0
+ transactions:
+ totalTransactions: 0
+ retries: 0
+ dataResponseTime: 60000
+ packetSize: 64
+ segment:
+ segmentSize: 64000
+ maxSegmentSize: 0
+ size:
+ sizeDistribution: Fixed
+ sizeDeviation: 10
+ interval:
+ intervalDistribution: Fixed
+ intervalDeviation: 10
+ ipHeader:
+ typeOfService: 0
+ timeToLive: 64
+ tcpConnection:
+ force3Way: 'false'
+ fixedRetryTime: 0
+ maxPacketsToForceAck: 0
+ tcp:
+ windowSize: 32768
+ windowScaling: -1
+ disableFinAckWait: 'false'
+ disconnectType: FIN
+ slowStart: 'false'
+ connectOnly: 'false'
+ vtag:
+ VTagMask: '0x0'
+ VTagValue: '0x0'
+ sctpPayloadProtocolId: 0
+ billingIncludeSyn: true
+ billingIncludeSubflow: true
+ billingRecordPerTransaction: 'false'
+ tcpPush: 'false'
+ hostDataExpansionRatio: 1
diff --git a/samples/vnf_samples/traffic_profiles/landslide/landslide_dmf_udp_tcp.yaml b/samples/vnf_samples/traffic_profiles/landslide/landslide_dmf_udp_tcp.yaml
new file mode 100644
index 000000000..80c0db0d0
--- /dev/null
+++ b/samples/vnf_samples/traffic_profiles/landslide/landslide_dmf_udp_tcp.yaml
@@ -0,0 +1,136 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+schema: "nsb:traffic_profile:0.1"
+
+name: LandslideProfile
+description: Spirent Landslide traffic profile (Data Message Flow)
+
+traffic_profile:
+ traffic_type: LandslideProfile
+
+dmf_config:
+ -
+ dmf:
+ library: test
+ name: Basic UDP
+ description: "Basic data flow using UDP/IP"
+ keywords: 'UDP '
+ dataProtocol: udp
+ burstCount: 1 # Applies only to Basic UDP DMF, DataProtocol==(udp or fb_udp)
+ clientPort:
+ clientPort: 2012
+ isClientPortRange: 'false'
+ serverPort: 2013
+ connection:
+ initiatingSide: Client
+ disconnectSide: Client
+ underlyingProtocol: none
+ persistentConnection: 'false'
+ protocolId: 0
+ persistentConnection: 'false'
+ transactionRate: 8.0
+ transactions:
+ totalTransactions: 0
+ retries: 0
+ dataResponseTime: 60000
+ packetSize: 64
+ segment:
+ segmentSize: 64000
+ maxSegmentSize: 0
+ size:
+ sizeDistribution: Fixed
+ sizeDeviation: 10
+ interval:
+ intervalDistribution: Fixed
+ intervalDeviation: 10
+ ipHeader:
+ typeOfService: 0
+ timeToLive: 64
+ tcpConnection:
+ force3Way: 'false'
+ fixedRetryTime: 0
+ maxPacketsToForceAck: 0
+ tcp:
+ windowSize: 32768
+ windowScaling: -1
+ disableFinAckWait: 'false'
+ disconnectType: FIN
+ slowStart: 'false'
+ connectOnly: 'false'
+ vtag:
+ VTagMask: '0x0'
+ VTagValue: '0x0'
+ sctpPayloadProtocolId: 0
+ billingIncludeSyn: 'true'
+ billingIncludeSubflow: 'true'
+ billingRecordPerTransaction: 'false'
+ tcpPush: 'false'
+ hostDataExpansionRatio: 1
+ -
+ dmf:
+ library: test
+ name: Basic TCP
+ description: "Basic data flow using TCP/IP"
+ keywords: 'TCP '
+ dataProtocol: tcp
+ clientPort:
+ clientPort: 2002
+ isClientPortRange: 'false'
+ serverPort: 2003
+ connection:
+ initiatingSide: Client
+ disconnectSide: Client
+ underlyingProtocol: none
+ persistentConnection: 'false'
+ protocolId: 0
+ persistentConnection: 'false'
+ transactionRate: 8.0
+ transactions:
+ totalTransactions: 0
+ retries: 0
+ dataResponseTime: 60000
+ packetSize: 64
+ segment:
+ segmentSize: 64000
+ maxSegmentSize: 0
+ size:
+ sizeDistribution: Fixed
+ sizeDeviation: 10
+ interval:
+ intervalDistribution: Fixed
+ intervalDeviation: 10
+ ipHeader:
+ typeOfService: 0
+ timeToLive: 64
+ tcpConnection:
+ force3Way: 'false'
+ fixedRetryTime: 0
+ maxPacketsToForceAck: 0
+ tcp:
+ windowSize: 32768
+ windowScaling: -1
+ disableFinAckWait: 'false'
+ disconnectType: FIN
+ slowStart: 'false'
+ connectOnly: 'false'
+ vtag:
+ VTagMask: '0x0'
+ VTagValue: '0x0'
+ sctpPayloadProtocolId: 0
+ billingIncludeSyn: 'true'
+ billingIncludeSubflow: 'true'
+ billingRecordPerTransaction: 'false'
+ tcpPush: 'false'
+ hostDataExpansionRatio: 1
diff --git a/samples/vnf_samples/traffic_profiles/landslide/landslide_session_default_bearer.yaml b/samples/vnf_samples/traffic_profiles/landslide/landslide_session_default_bearer.yaml
new file mode 100644
index 000000000..a90d8a189
--- /dev/null
+++ b/samples/vnf_samples/traffic_profiles/landslide/landslide_session_default_bearer.yaml
@@ -0,0 +1,147 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+description: 'UE default bearer creation test case'
+name: default_bearer_capacity
+keywords: ''
+duration: 60
+tsGroups:
+- tsId: SGW_NODE_TS_NAME # SGW-Node test server name placeholder
+ testCases:
+ - name: ''
+ type: SGW_Node
+ AssociatedPhys: ''
+ parameters:
+ BearerAddrPool: 2001::1
+ BearerV4AddrPool: 1.0.0.1
+ DedicatedsPerDefaultBearer: '0'
+ DefaultBearers: '1'
+ FireballEn: 'false'
+ Gtp2Imei: '50502410121507'
+ Gtp2Imsi: '505024101215074'
+ Gtp2Version: 13.6.0
+ PgwNodeEn: 'true'
+ S5Protocol: GTPv2
+ Sessions: '100000'
+ SgiPtpTunnelEn: 'false'
+ SgwControlAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ ip: SGW_CONTROL_IP # SGW-C TestNode IP address placeholder
+ mtu: 1500
+ numLinksOrNodes: 1
+ phy: SGW_CONTROL_PHY
+ SgwUserAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ ip: SGW_USER_IP # SGW-U TestNode IP address placeholder
+ mtu: 1500
+ numLinksOrNodes: 1
+ phy: SGW_USER_PHY
+ TestType: SGW-NODE
+ TrafficMtu: '1500'
+- tsId: SGW_NODAL_TS_NAME # SGW-Nodal test server name placeholder
+ testCases:
+ - name: ''
+ type: SGW_Nodal
+ parameters:
+ DataTraffic: Continuous
+ DataUserCfgFileEn: 'false'
+ DedicatedsPerDefaultBearer: '0'
+ DefaultBearers: '1'
+ DisconnectRate: '1000.0'
+ Dmf:
+ class: Dmf
+ mainflows:
+ - library: TEST_USER
+ name: Basic UDP
+ instanceGroups:
+ - mainflowIdx: 0
+ mixType: ''
+ rate: 0
+ startPaused: 'false'
+ EnbUserAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ ip: ENB_USER_IP # eNodeB TestNode IP address placeholder
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: ENB_USER_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanUserPriority: 0
+ vlanTagType: 0
+ FireballEn: 'false'
+ Gtp2Imei: '50502410121507'
+ Gtp2Imsi: '505024101215074'
+ Gtp2Version: 13.6.0
+ MmeControlAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ ip: MME_CONTROL_IP # MME TestNode IP address placeholder
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: MME_CONTROL_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanUserPriority: 0
+ vlanTagType: 0
+ NetworkHost: Local
+ NetworkHostAddrLocal:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ ip: NET_HOST_IP # NetHost TestNode IP address placeholder
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: NET_HOST_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanUserPriority: 0
+ vlanTagType: 0
+ PgwNodeEn: 'false'
+ PgwUserSutEn: 'false'
+ PgwV4Sut:
+ class: Sut
+ name: PGW_SUT_NAME # PGW TestNode name placeholder
+ S5Protocol: GTPv2
+ Sessions: '100000'
+ SgwSut:
+ class: Sut
+ name: SGW_CONTROL_NAME # SGW-C SUT name placeholder
+ SgwUserSut:
+ class: Sut
+ name: SGW_USER_NAME # SGW-U SUT name placeholder
+ StartRate: '1000.0'
+ TestActivity: Capacity Test
+ TestType: SGW-NODAL
+ TrafficMtu: '1500'
+ TrafficStartType: When All Sessions Established
diff --git a/samples/vnf_samples/traffic_profiles/landslide/landslide_session_default_bearer_multi_dmf.yaml b/samples/vnf_samples/traffic_profiles/landslide/landslide_session_default_bearer_multi_dmf.yaml
new file mode 100644
index 000000000..7b1f50160
--- /dev/null
+++ b/samples/vnf_samples/traffic_profiles/landslide/landslide_session_default_bearer_multi_dmf.yaml
@@ -0,0 +1,150 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+description: 'UE default bearer creation test case'
+name: default_bearer_capacity
+keywords: ''
+duration: 60
+tsGroups:
+- tsId: SGW_NODE_TS_NAME # SGW-Node test server name placeholder
+ testCases:
+ - name: ''
+ type: SGW_Node
+ parameters:
+ BearerAddrPool: 2001::1
+ BearerV4AddrPool: 1.0.0.1
+ DedicatedsPerDefaultBearer: '0'
+ DefaultBearers: '1'
+ Gtp2Imei: '50502410121507'
+ Gtp2Imsi: '505024101215074'
+ Gtp2Version: 13.6.0
+ PgwNodeEn: 'true'
+ S5Protocol: GTPv2
+ Sessions: '100000'
+ SgiPtpTunnelEn: 'false'
+ SgwControlAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ ip: SGW_CONTROL_IP # SGW-C TestNode IP address placeholder
+ mtu: 1500
+ numLinksOrNodes: 1
+ phy: SGW_CONTROL_PHY
+ SgwUserAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ ip: SGW_USER_IP # SGW-U TestNode IP address placeholder
+ mtu: 1500
+ numLinksOrNodes: 1
+ phy: SGW_USER_PHY
+ TestType: SGW-NODE
+ TrafficMtu: '1500'
+- tsId: SGW_NODAL_TS_NAME # SGW-Nodal test server name placeholder
+ testCases:
+ - name: ''
+ type: SGW_Nodal
+ parameters:
+ DataTraffic: Continuous
+ DataUserCfgFileEn: 'false'
+ DedicatedsPerDefaultBearer: '0'
+ DefaultBearers: '1'
+ DisconnectRate: '1000.0'
+ Dmf:
+ class: Dmf
+ mainflows:
+ - library: test
+ name: Basic UDP
+ - library: test
+ name: Basic TCP
+ instanceGroups:
+ - mainflowIdx: 0
+ mixType: ''
+ rate: 0
+ startPaused: 'false'
+ - mainflowIdx: 1
+ mixType: ''
+ rate: 0
+ startPaused: 'false'
+ EnbUserAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ ip: ENB_USER_IP # eNodeB TestNode IP address placeholder
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: ENB_USER_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanUserPriority: 0
+ vlanTagType: 0
+ Gtp2Imei: '50502410121507'
+ Gtp2Imsi: '505024101215074'
+ Gtp2Version: 13.6.0
+ MmeControlAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ ip: MME_CONTROL_IP # MME TestNode IP address placeholder
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: MME_CONTROL_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanUserPriority: 0
+ vlanTagType: 0
+ NetworkHost: Local
+ NetworkHostAddrLocal:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ ip: NET_HOST_IP # NetHost TestNode IP address placeholder
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: NET_HOST_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanUserPriority: 0
+ vlanTagType: 0
+ PgwNodeEn: 'false'
+ PgwUserSutEn: 'false'
+ PgwV4Sut:
+ class: Sut
+ name: PGW_SUT_NAME # PGW TestNode name placeholder
+ S5Protocol: GTPv2
+ Sessions: '100000'
+ SgwSut:
+ class: Sut
+ name: SGW_CONTROL_NAME # SGW-C SUT name placeholder
+ SgwUserSut:
+ class: Sut
+ name: SGW_USER_NAME # SGW-U SUT name placeholder
+ StartRate: '1000.0'
+ TestActivity: Capacity Test
+ TestType: SGW-NODAL
+ TrafficMtu: '1500'
+ TrafficStartType: When All Sessions Established
diff --git a/samples/vnf_samples/traffic_profiles/landslide/landslide_session_network_dedicated_bearer.yaml b/samples/vnf_samples/traffic_profiles/landslide/landslide_session_network_dedicated_bearer.yaml
new file mode 100644
index 000000000..2e79d8d51
--- /dev/null
+++ b/samples/vnf_samples/traffic_profiles/landslide/landslide_session_network_dedicated_bearer.yaml
@@ -0,0 +1,681 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+description: Network initiated dedicated bearer creation test case
+duration: 60
+keywords: ''
+library: test
+name: network_dedicated_bearer_creation
+tsGroups:
+- testCases:
+ - name: ''
+ AssociatedPhys: ''
+ parameters:
+ BillingEn: 'false'
+ DedicatedsPerDefaultBearer: '1'
+ DefaultBearers: '1'
+ FireballEn: 'false'
+ Gtp2AmbrDownlink: '1'
+ Gtp2AmbrUplink: '1'
+ Gtp2ApnNumSpecifiedApns_0: '0'
+ Gtp2ApnRestriction: '0'
+ Gtp2ApnRetries_0: '0'
+ Gtp2ApnSelectMode: '0'
+ Gtp2ApnSpecified_0:
+ array: []
+ class: Array
+ Gtp2ApnTotalApns_0: '1'
+ Gtp2Apn_0: ssenoauth146
+ Gtp2CfgFileEn: 'false'
+ Gtp2Ecgi: '0'
+ Gtp2EcgiSize: '28'
+ Gtp2EchoTimeSec: '0'
+ Gtp2ExtEn: 'false'
+ Gtp2GtpcTunnelEndptId: '1000000'
+ Gtp2GtpuIncludeSeqEn: 'true'
+ Gtp2GtpuTunnelEndptId: '2000000'
+ Gtp2IgnoreRestartCtrEn: 'false'
+ Gtp2Imei: '50502410121507'
+ Gtp2Imsi: '505024101215074'
+ Gtp2IncCgiEn: 'false'
+ Gtp2IncEcgiEn: 'true'
+ Gtp2IncRaiEn: 'false'
+ Gtp2IncSaiEn: 'false'
+ Gtp2IncTaiEn: 'true'
+ Gtp2MacroEnbEn: 'false'
+ Gtp2Mcc: '000'
+ Gtp2Mnc: '000'
+ Gtp2MobGtpuForwardingEndptId: '5000000'
+ Gtp2MsIsdnEn: 'false'
+ Gtp2N3Attempts: '5'
+ Gtp2PagingTimeMs: '0'
+ Gtp2PersistentImsiEn: 'false'
+ Gtp2PiggybackEn_sgw: '0'
+ Gtp2QosArpPreemptCapEn_1: 'false'
+ Gtp2QosArpPreemptVulnEn_1: 'false'
+ Gtp2QosArpValue_1: '1'
+ Gtp2QosClassId_1: '1'
+ Gtp2QosDetail: Summary
+ Gtp2QosGuarDownlink_1: '1'
+ Gtp2QosGuarUplink_1: '1'
+ Gtp2QosMaxDownlink_1: '1'
+ Gtp2QosMaxUplink_1: '1'
+ Gtp2RadioAccessType: '6'
+ Gtp2RestartCnt: '1'
+ Gtp2S5GtpcTunnelEndptId: '3000000'
+ Gtp2S5GtpuTunnelEndptId: '4000000'
+ Gtp2SupportMabrEn: 'false'
+ Gtp2T3Time: '20'
+ Gtp2Tac: '0'
+ Gtp2Version: 15.2.0
+ PgwNodeEn: 'false'
+ PgwNumSutsEn: 'false'
+ PgwSut:
+ class: Sut
+ name: PGW_SUT_NAME
+ PgwUserSutEn: 'false'
+ QciToDscpMarkingsEn: 'false'
+ S5Protocol: GTPv2
+ SeparateS5InterfacesEn: 'false'
+ Sessions: '1'
+ SgwControlAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: SGW_CONTROL_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: SGW_CONTROL_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ SgwControlAddrErrInj: '0'
+ SgwUserAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: SGW_USER_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: SGW_USER_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ SgwUserAddrErrInj: '0'
+ SgwUserDualStackEn: 'false'
+ SxaControlNodeAddrXPort: '8805'
+ SxaUserNodeAddrXPort: '8805'
+ TestType: SGW-NODE
+ TrafficMtu: '1400'
+ type: SGW_Node
+ - name: ''
+ parameters:
+ AgwNodeAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: AGW_NODE_NAME
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: AGW_NODE_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ AgwNodeAddrErrInj: '0'
+ BearerAddrPool: 2001::1
+ BearerV4AddrPool: 1.0.0.1
+ BillingEn: 'false'
+ ConnectBearerDelay:
+ array: []
+ class: Array
+ DataTraffic: Disabled
+ DedicatedsPerDefaultBearer: '1'
+ DefaultBearers: '1'
+ DisconnectDedicatedBearerEn: 'false'
+ FireballEn: 'false'
+ ForwardSessionVLanTag: '0'
+ Gtp2AmbrDownlink: '1'
+ Gtp2AmbrUplink: '1'
+ Gtp2ApnNumSpecifiedApns_0: '0'
+ Gtp2ApnRestriction: '0'
+ Gtp2ApnRetries_0: '0'
+ Gtp2ApnSelectMode: '0'
+ Gtp2ApnSpecified_0:
+ array: []
+ class: Array
+ Gtp2ApnTotalApns_0: '1'
+ Gtp2Apn_0: ssenoauth146
+ Gtp2Ecgi: '0'
+ Gtp2EcgiSize: '28'
+ Gtp2EchoTimeSec: '0'
+ Gtp2ExtEn: 'false'
+ Gtp2GtpcTunnelEndptId: '1000000'
+ Gtp2GtpuIncludeSeqEn: 'true'
+ Gtp2GtpuTunnelEndptId: '2000000'
+ Gtp2IgnoreRestartCtrEn: 'false'
+ Gtp2Imei: '50502410121507'
+ Gtp2Imsi: '505024101215074'
+ Gtp2IncCgiEn: 'false'
+ Gtp2IncEcgiEn: 'true'
+ Gtp2IncRaiEn: 'false'
+ Gtp2IncSaiEn: 'false'
+ Gtp2IncTaiEn: 'true'
+ Gtp2MacroEnbEn: 'false'
+ Gtp2Mcc: '000'
+ Gtp2Mnc: '000'
+ Gtp2MsIsdnEn: 'false'
+ Gtp2MultDedsPerMsgEn: 'false'
+ Gtp2PcoAddEn: 'false'
+ Gtp2PcoIpcpEn: 'false'
+ Gtp2PersistentImsiEn: 'false'
+ Gtp2PiggybackEn_pgw: '0'
+ Gtp2QosArpPreemptCapEn_1: 'false'
+ Gtp2QosArpPreemptVulnEn_1: 'false'
+ Gtp2QosArpValue_1: '1'
+ Gtp2QosClassId_1: '1'
+ Gtp2QosDetail: Summary
+ Gtp2QosGuarDownlink_1: '1'
+ Gtp2QosGuarUplink_1: '1'
+ Gtp2QosMaxDownlink_1: '1'
+ Gtp2QosMaxUplink_1: '1'
+ Gtp2RadioAccessType: '6'
+ Gtp2ResponseDelayEn: 'false'
+ Gtp2RestartCnt: '1'
+ Gtp2RouterAdDelay: '1'
+ Gtp2Tac: '0'
+ Gtp2Version: 15.2.0
+ MobilityType: None
+ OverloadCtlEn: 'false'
+ PcrfClnAgwIf: Gx
+ PdnGwAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: PGW_CONTROL_NAME
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: PGW_CONTROL_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ PdnGwAddrErrInj: '0'
+ PdnGwUsrAddrEn: 'false'
+ PgwDualStackEn: 'false'
+ QciToDscpMarkingsEn: 'false'
+ S5Protocol: GTPv2
+ S6bIfEn: 'false'
+ Sessions: '1'
+ SgiNasIfEn: 'false'
+ SgiNodeEn: 'false'
+ SgiPtpTunnelEn: 'false'
+ TestType: PGW-NODE
+ TrafficMtu: '1400'
+ TrafficNumTftsForContext0: '1'
+ TyCcClnAddFailedAvpEn: 'false'
+ TyCcClnApplicationId: '16777238'
+ TyCcClnAvpCfgFileEn: 'false'
+ TyCcClnConfiguration: Primary Server Only
+ TyCcClnDistributionMode: Dedicated
+ TyCcClnDoNotInitiateDprEn: 'false'
+ TyCcClnDprCause: '2'
+ TyCcClnHostAvpEn: 'true'
+ TyCcClnOriginHost: AGW.Spirent.com
+ TyCcClnOriginRealm: Spirent.com
+ TyCcClnProductName: 'Landslide PCRF'
+ TyCcClnRetryTime: '5000'
+ TyCcClnSctp3SackRuleEn: 'false'
+ TyCcClnSctpAckDelay: '100'
+ TyCcClnSctpSackThreshold: '2'
+ TyCcClnSutPort: '3868'
+ TyCcClnSutPrimaryHost: AGWServer.Spirent.com
+ TyCcClnSutPrimaryRealm: Spirent.com
+ TyCcClnSutPrimarySrv:
+ class: Sut
+ name: PCRF_TESTNODE_NAME
+ TyCcClnTcpProtocol: '1'
+ TyCcClnTcpWinSize: '32768'
+ TyCcClnVendorId: '10415'
+ TyCcClnVsa:
+ attrInfos: []
+ class: Vsa
+ isCriteria: 'false'
+ isGeneric: 'false'
+ protocol: '301'
+ TyCcClnWatchDogTime: '30'
+ UeDhcpV4En: 'false'
+ UeInitBearerEn: 'false'
+ type: PGW_Node
+ tsId: SGW_PGW_NODE_TC_NAME
+- testCases:
+ - name: ''
+ parameters:
+ ApnDnsEn: 'false'
+ ApnToPgwMappingEn: 'false'
+ AutoStopControlLayer: 'false'
+ ConnectBearerDelay:
+ array: []
+ class: Array
+ ContinuousWithVerification: 'false'
+ CpCiotEpsOptimizationEn: 'false'
+ CtlBearerToDscpEn: 'false'
+ DataHostCfgFileEn: 'false'
+ DataResumeRate: '3000'
+ DataTraffic: Continuous
+ DataUserCfgFileEn: 'false'
+ DedicatedBearerConnectRateEn: 'false'
+ DedicatedBearerDisconnectRateEn: 'false'
+ DedicatedsPerDefaultBearer: '1'
+ DefaultBearers: '1'
+ DisconnectDedicatedBearerEn: 'false'
+ DisconnectRate: '1000.0'
+ Dmf:
+ class: Dmf
+ instanceGroups:
+ - mainflowIdx: 0
+ mixType: ''
+ rate: 0.0
+ rows:
+ - clientPort: 0
+ context: 0
+ node: 0
+ overridePort: 'false'
+ ratingGroup: 0
+ role: 0
+ serviceId: 0
+ transport: Any
+ mainflows:
+ - library: test
+ name: Basic UDP
+ DualStackEn: 'false'
+ EDrxValueEn: 'false'
+ EirIfEn: 'false'
+ EmergencyAttachWithImeiEn: 'false'
+ EmergencyAttachWoAuthEn: 'false'
+ EmergencyPdnIndexEn: 'false'
+ EnableExternalData: '0'
+ EnbUserAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: ENB_USER_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: ENB_USER_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ EnbUserAddrErrInj: '0'
+ FireballEn: 'false'
+ Gtp2ActivationDelay: '0'
+ Gtp2AmbrDownlink: '1'
+ Gtp2AmbrUplink: '1'
+ Gtp2ApnNumSpecifiedApns_0: '0'
+ Gtp2ApnNumSpecifiedApns_1: '0'
+ Gtp2ApnRestriction: '0'
+ Gtp2ApnRetries_0: '0'
+ Gtp2ApnRetries_1: '0'
+ Gtp2ApnSelectMode: '0'
+ Gtp2ApnSpecified_0:
+ array: []
+ class: Array
+ Gtp2ApnSpecified_1:
+ array: []
+ class: Array
+ Gtp2ApnTotalApns_0: '1'
+ Gtp2ApnTotalApns_1: '1'
+ Gtp2Apn_0: ssenoauth146
+ Gtp2Apn_1: ssenoauth146
+ Gtp2BearerModEn: 'false'
+ Gtp2CfgFileEn: 'false'
+ Gtp2ChargingChars: '0x0'
+ Gtp2DelayDlPacketNotifReq: '1'
+ Gtp2Ecgi: '0'
+ Gtp2EcgiSize: '28'
+ Gtp2EchoTimeSec: '0'
+ Gtp2EnbUliEn: 'false'
+ Gtp2ExtEn: 'false'
+ Gtp2FwdUplinkDataEcmIdle: 'false'
+ Gtp2GtpcTunnelEndptId: '1000000'
+ Gtp2GtpuIncludeSeqEn: 'true'
+ Gtp2GtpuTunnelEndptId: '2000000'
+ Gtp2IdleEntryTime: '0'
+ Gtp2IgnoreRestartCtrEn: 'false'
+ Gtp2Imei: '50502410121507'
+ Gtp2Imsi: '505024101215074'
+ Gtp2IncCgiEn: 'false'
+ Gtp2IncEcgiEn: 'true'
+ Gtp2IncPcoOpt: none
+ Gtp2IncRaiEn: 'false'
+ Gtp2IncSaiEn: 'false'
+ Gtp2IncTaiEn: 'true'
+ Gtp2MacroEnbEn: 'false'
+ Gtp2MaxWaitTimeEn: 'false'
+ Gtp2Mcc: '000'
+ Gtp2Mnc: '000'
+ Gtp2ModBearerDlDataDelay: '0'
+ Gtp2MsIsdnEn: 'false'
+ Gtp2N3Attempts: '5'
+ Gtp2PagingTimeMs: '0'
+ Gtp2PcoAddEn: 'false'
+ Gtp2PcoIpcpEn: 'false'
+ Gtp2QosArpPreemptCapEn_1: 'false'
+ Gtp2QosArpPreemptVulnEn_1: 'false'
+ Gtp2QosArpValue_1: '1'
+ Gtp2QosClassId_1: '1'
+ Gtp2QosDetail: Summary
+ Gtp2QosGuarDownlink_1: '1'
+ Gtp2QosGuarUplink_1: '1'
+ Gtp2QosMaxDownlink_1: '1'
+ Gtp2QosMaxUplink_1: '1'
+ Gtp2RadioAccessType: '6'
+ Gtp2RejectDedEn: 'false'
+ Gtp2RemoteUeReportTime: '0'
+ Gtp2RestartCnt: '1'
+ Gtp2SupportMabrEn: 'false'
+ Gtp2SwVersionEn: 'false'
+ Gtp2T3Time: '20'
+ Gtp2Tac: '0'
+ Gtp2UeDaySaveTime: '0'
+ Gtp2UeMultPdnConnReqSameApnEn_0: 'false'
+ Gtp2UeTimeZone: '0'
+ Gtp2UliDbCmdCbRspEn: 'true'
+ Gtp2Version: 15.2.0
+ HomeAddrType: '1'
+ HomeAddrTypePerBearerEn: 'false'
+ HssIfEn: 'false'
+ MmeControlAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: MME_CONTROL_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: MME_CONTROL_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ MmeControlAddrErrInj: '0'
+ MultipathTcpEn: 'false'
+ NetworkHost: Local
+ NetworkHostAddrLocal:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: NET_HOST_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: NET_HOST_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ NetworkHostAddrLocalErrInj: '0'
+ NetworkHostNatedTrafficEn: 'false'
+ PgwNodeEn: 'false'
+ PgwUserSutEn: 'false'
+ PgwV4Sut:
+ class: Sut
+ name: PGW_TESTNODE_NAME
+ QciToDscpMarkingsEn: 'false'
+ S5Protocol: GTPv2
+ SecPgwV4SutEn: 'false'
+ SessionIntervalShape: Fixed
+ SessionRetries: 'true'
+ Sessions: '1'
+ SgwNumSutsEn: 'false'
+ SgwSut:
+ class: Sut
+ name: SGW_CONTROL_NAME
+ SgwUserSut:
+ class: Sut
+ name: SGW_USER_NAME
+ StartRate: '1000.0'
+ T3324PwrSavingValueEn: 'false'
+ T3412ExValueEn: 'false'
+ TestActivity: Capacity Test
+ TestType: SGW-NODAL
+ TrafficDontFragIp: '0'
+ TrafficErrorInject: '0'
+ TrafficHostIdleTimeEnabler: 'false'
+ TrafficMtu: '1400'
+ TrafficStartDelay: '1000'
+ TrafficStartType: When All Sessions Established
+ UeDhcpV4En: 'false'
+ UeInitBearerEn: 'false'
+ UseStaticBearerIp: 'false'
+ type: SGW_Nodal
+ - name: ''
+ parameters:
+ AffinityModeEn: 'false'
+ AgwSrvNode:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: PRIMARY_AGW_NAME
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: PRIMARY_AGW_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ AgwSrvNodeErrInj: '0'
+ CommandMode: 'Off'
+ DiaAvpDataSize: '200'
+ DisconnectRate: '1000.0'
+ HomeAddrType: '1'
+ LteVersion: 9.6.0
+ PcrfProtocol: pcrf_gx_srv
+ RoamingEn: 'false'
+ Sessions: '1'
+ StartingMsIpAddr: 1.0.0.1
+ TestType: PCRF-NODE
+ TyCcDsSrvNumRuleSet: '0'
+ TyCcSrvAddFailedAvpEn: 'false'
+ TyCcSrvApnCaseInsensitiveEn: 'true'
+ TyCcSrvApnMapEn: 'true'
+ TyCcSrvApnProfilesEn: 'false'
+ TyCcSrvApns:
+ array: []
+ class: Array
+ TyCcSrvApplicationId: '16777238'
+ TyCcSrvAuthKey: '505024101215074'
+ TyCcSrvAuthKeyType: IMSI
+ TyCcSrvAvpCfgFileEn: 'false'
+ TyCcSrvCcaIDelayEn: 'false'
+ TyCcSrvCcaTDelayEn: 'false'
+ TyCcSrvCcaUDelayEn: 'false'
+ TyCcSrvChargingAvpEn: 'false'
+ TyCcSrvCopyFilterFromRxEn: 'false'
+ TyCcSrvDoNotInitiateDprEn: 'false'
+ TyCcSrvDprCause: '2'
+ TyCcSrvExcludeFlowDirEn: 'false'
+ TyCcSrvImeiSvKeyEn: 'false'
+ TyCcSrvMobSupportEn: 'false'
+ TyCcSrvNumPeers: '1'
+ TyCcSrvOfflineAvpEn: 'false'
+ TyCcSrvOnlineAvpEn: 'false'
+ TyCcSrvOriginHost: AGWServer.Spirent.com
+ TyCcSrvOriginRealm: Spirent.com
+ TyCcSrvPktFltIdAlwaysEn: 'false'
+ TyCcSrvProductName: 'Landslide PCRF'
+ TyCcSrvRetryTime: '5000'
+ TyCcSrvSctp3SackRuleEn: 'false'
+ TyCcSrvSctpAckDelay: '100'
+ TyCcSrvSctpAckEn: 'true'
+ TyCcSrvSctpHeartbeatInterval: '30'
+ TyCcSrvSctpMaxRetransAssoc: '5'
+ TyCcSrvSctpMultiHomedMultiSrcEn: 'false'
+ TyCcSrvSctpSackThreshold: '2'
+ TyCcSrvSecondaryPcrfEn: 'false'
+ TyCcSrvTcpProtocol: '1'
+ TyCcSrvTcpWinSize: '32768'
+ TyCcSrvVendorId: '10415'
+ TyCcSrvVsaDbList: '30'
+ TyCcSrvWatchDogTime: '30'
+ TyCcV41Vsa:
+ attrInfos: []
+ class: Vsa
+ isCriteria: 'false'
+ isGeneric: 'false'
+ protocol: '603'
+ TyCcV42Vsa:
+ attrInfos: []
+ class: Vsa
+ isCriteria: 'false'
+ isGeneric: 'false'
+ protocol: '603'
+ TyCcV4AvpDataSize1: '200'
+ TyCcV4AvpDataSize2: '0'
+ TyCcV4SrvApn_1: '0'
+ TyCcV4SrvApn_2: '0'
+ TyCcV4SrvCrAction_1_1: Install
+ TyCcV4SrvCrAction_2_1: Install
+ TyCcV4SrvCrActivationTimeEn_1_1: 'false'
+ TyCcV4SrvCrActivationTimeEn_2_1: 'false'
+ TyCcV4SrvCrBearerIdEn_1_1: 'false'
+ TyCcV4SrvCrBearerIdEn_2_1: 'false'
+ TyCcV4SrvCrDeactivationTimeEn_1_1: 'false'
+ TyCcV4SrvCrDeactivationTimeEn_2_1: 'false'
+ TyCcV4SrvCrFilterDestIp_1_1_1_1: any
+ TyCcV4SrvCrFilterDirection_1_1_1_1: '3'
+ TyCcV4SrvCrFilterFlowLabel_1_1_1_1: ''
+ TyCcV4SrvCrFilterId_1_1_1_1: Fltr_V4_1_1_1_1
+ TyCcV4SrvCrFilterSpi_1_1_1_1: ''
+ TyCcV4SrvCrFilterTos_1_1_1_1: ''
+ TyCcV4SrvCrFilter_1_1_1_1: permit in ip from
+ TyCcV4SrvCrIpType_1_1_1_1: '0'
+ TyCcV4SrvCrNumBaseName_1_1: '0'
+ TyCcV4SrvCrNumBaseName_2_1: '0'
+ TyCcV4SrvCrNumFilters_1_1_1: '1'
+ TyCcV4SrvCrNumFilters_2_1_1: '0'
+ TyCcV4SrvCrNumRuleDef_1_1: '1'
+ TyCcV4SrvCrNumRuleDef_2_1: '1'
+ TyCcV4SrvCrNumRuleName_1_1: '1'
+ TyCcV4SrvCrNumRuleName_2_1: '1'
+ TyCcV4SrvCrOverwriteSrcIpEn_1_1_1_1: 'false'
+ TyCcV4SrvCrPolRuleEn_1_1_1: 'true'
+ TyCcV4SrvCrPolRuleEn_2_1_1: 'true'
+ TyCcV4SrvCrQciEn_1_1_1: 'true'
+ TyCcV4SrvCrQciEn_2_1_1: 'true'
+ TyCcV4SrvCrQci_1_1_1: '1'
+ TyCcV4SrvCrQci_2_1_1: '1'
+ TyCcV4SrvCrResourceAllocEn_1_1: 'false'
+ TyCcV4SrvCrResourceAllocEn_2_1: 'false'
+ TyCcV4SrvCrRuleDefAfChargIdEn_1_1_1: 'false'
+ TyCcV4SrvCrRuleDefAfChargIdEn_2_1_1: 'false'
+ TyCcV4SrvCrRuleDefAppSvcProvIdEn_1_1_1: 'false'
+ TyCcV4SrvCrRuleDefAppSvcProvIdEn_2_1_1: 'false'
+ TyCcV4SrvCrRuleDefFlowStatusEn_1_1_1: 'false'
+ TyCcV4SrvCrRuleDefFlowStatusEn_2_1_1: 'false'
+ TyCcV4SrvCrRuleDefMcdNumEn_1_1_1: 'false'
+ TyCcV4SrvCrRuleDefMcdNumEn_2_1_1: 'false'
+ TyCcV4SrvCrRuleDefMetMethodEn_1_1_1: 'false'
+ TyCcV4SrvCrRuleDefMetMethodEn_2_1_1: 'false'
+ TyCcV4SrvCrRuleDefName_1_1_1: dedicated_rule_definition
+ TyCcV4SrvCrRuleDefName_2_1_1: default_rule_definition
+ TyCcV4SrvCrRuleDefOfflineAvpEn_1_1_1: 'false'
+ TyCcV4SrvCrRuleDefOfflineAvpEn_2_1_1: 'false'
+ TyCcV4SrvCrRuleDefOnlineAvpEn_1_1_1: 'false'
+ TyCcV4SrvCrRuleDefOnlineAvpEn_2_1_1: 'false'
+ TyCcV4SrvCrRuleDefPrecEn_1_1_1: 'false'
+ TyCcV4SrvCrRuleDefPrecEn_2_1_1: 'false'
+ TyCcV4SrvCrRuleDefRatGrpEn_1_1_1: 'false'
+ TyCcV4SrvCrRuleDefRatGrpEn_2_1_1: 'false'
+ TyCcV4SrvCrRuleDefSponsorIdEn_1_1_1: 'false'
+ TyCcV4SrvCrRuleDefSponsorIdEn_2_1_1: 'false'
+ TyCcV4SrvCrRuleDefSrvIDEn_1_1_1: 'false'
+ TyCcV4SrvCrRuleDefSrvIDEn_2_1_1: 'false'
+ TyCcV4SrvCrRuleName_1_1_1: dedicated_charging_rule
+ TyCcV4SrvCrRuleName_2_1_1: default_charging_rule
+ TyCcV4SrvCrUserIpExt_1_1_1_1: ''
+ TyCcV4SrvNumCr_1: '1'
+ TyCcV4SrvNumCr_2: '1'
+ TyCcV4SrvNumRuleSet: '2'
+ TyCcV4SrvPrArpEn_1_1_1: 'false'
+ TyCcV4SrvPrArpEn_2_1_1: 'false'
+ TyCcV4SrvPrBearerIdEn_1_1_1: 'false'
+ TyCcV4SrvPrBearerIdEn_2_1_1: 'false'
+ TyCcV4SrvPrGuaranteedBwEn_1_1_1: 'true'
+ TyCcV4SrvPrGuaranteedBwEn_2_1_1: 'false'
+ TyCcV4SrvPrGuaranteedDownlink_1_1_1: '100'
+ TyCcV4SrvPrGuaranteedUplink_1_1_1: '100'
+ TyCcV4SrvPrIncPacketFilterUsage_1_1_1: 'false'
+ TyCcV4SrvPrIncPacketFilterUsage_2_1_1: 'false'
+ TyCcV4SrvPrMaxBwEn_1_1_1: 'true'
+ TyCcV4SrvPrMaxBwEn_2_1_1: 'false'
+ TyCcV4SrvPrMaxDL_1_1_1: '100'
+ TyCcV4SrvPrMaxUL_1_1_1: '100'
+ TyCcV4SrvPrUseAssignedEn_1_1_1: 'false'
+ TyCcV4SrvPrUseAssignedEn_2_1_1: 'false'
+ TyCcV4SrvRevalidateEn_1: 'false'
+ TyCcV4SrvRevalidateEn_2: 'false'
+ TyCcV4SrvRuleInterval_1: '10'
+ TyCcV4SrvRuleInterval_2: '0'
+ TyCcV6SrvNumRuleSet: '0'
+ TyCcVsa:
+ attrInfos: []
+ class: Vsa
+ isCriteria: 'false'
+ isGeneric: 'false'
+ protocol: '303'
+ type: PCRF_Node
+ tsId: SGW_NODAL_PCRF_NODE_TS_NAME
diff --git a/samples/vnf_samples/traffic_profiles/landslide/landslide_session_network_service_request.yaml b/samples/vnf_samples/traffic_profiles/landslide/landslide_session_network_service_request.yaml
new file mode 100644
index 000000000..2589a6b47
--- /dev/null
+++ b/samples/vnf_samples/traffic_profiles/landslide/landslide_session_network_service_request.yaml
@@ -0,0 +1,341 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+description: Network triggered service request
+keywords: ''
+duration: 60
+library: test
+name: network_initiated_service_request
+tsGroups:
+- testCases:
+ - name: ''
+ AssociatedPhys: ''
+ parameters:
+ BearerAddrPool: 2001::1
+ BearerV4AddrPool: 1.0.0.1
+ BillingEn: 'false'
+ DedicatedsPerDefaultBearer: '0'
+ DefaultBearers: '1'
+ FireballEn: 'false'
+ Gtp2AmbrDownlink: '1'
+ Gtp2AmbrUplink: '1'
+ Gtp2ApnNumSpecifiedApns_0: '0'
+ Gtp2ApnRestriction: '0'
+ Gtp2ApnRetries_0: '0'
+ Gtp2ApnSelectMode: '0'
+ Gtp2ApnSpecified_0:
+ array: []
+ class: Array
+ Gtp2ApnTotalApns_0: '1'
+ Gtp2Apn_0: ssenoauth146
+ Gtp2CfgFileEn: 'false'
+ Gtp2Ecgi: '0'
+ Gtp2EcgiSize: '28'
+ Gtp2EchoTimeSec: '0'
+ Gtp2ExtEn: 'false'
+ Gtp2GtpcTunnelEndptId: '1000000'
+ Gtp2GtpuIncludeSeqEn: 'true'
+ Gtp2GtpuTunnelEndptId: '2000000'
+ Gtp2IgnoreRestartCtrEn: 'false'
+ Gtp2Imei: '50502410121507'
+ Gtp2Imsi: '505024101215074'
+ Gtp2IncCgiEn: 'false'
+ Gtp2IncEcgiEn: 'true'
+ Gtp2IncRaiEn: 'false'
+ Gtp2IncSaiEn: 'false'
+ Gtp2IncTaiEn: 'true'
+ Gtp2MacroEnbEn: 'false'
+ Gtp2Mcc: '000'
+ Gtp2Mnc: '000'
+ Gtp2MobGtpuForwardingEndptId: '5000000'
+ Gtp2MsIsdnEn: 'false'
+ Gtp2N3Attempts: '5'
+ Gtp2PagingTimeMs: '0'
+ Gtp2PersistentImsiEn: 'false'
+ Gtp2QosArpPreemptCapEn_1: 'false'
+ Gtp2QosArpPreemptVulnEn_1: 'false'
+ Gtp2QosArpValue_1: '1'
+ Gtp2QosClassId_1: '1'
+ Gtp2QosDetail: Summary
+ Gtp2QosGuarDownlink_1: '1'
+ Gtp2QosGuarUplink_1: '1'
+ Gtp2QosMaxDownlink_1: '1'
+ Gtp2QosMaxUplink_1: '1'
+ Gtp2RadioAccessType: '6'
+ Gtp2ResponseDelayEn: 'false'
+ Gtp2RestartCnt: '1'
+ Gtp2RouterAdDelay: '1'
+ Gtp2S5GtpcTunnelEndptId: '3000000'
+ Gtp2S5GtpuTunnelEndptId: '4000000'
+ Gtp2SupportMabrEn: 'false'
+ Gtp2T3Time: '20'
+ Gtp2Tac: '0'
+ Gtp2Version: 15.2.0
+ PgwNodeEn: 'true'
+ QciToDscpMarkingsEn: 'false'
+ S5Protocol: GTPv2
+ Sessions: '1000'
+ SgiPtpTunnelEn: 'false'
+ SgwControlAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: SGW_CONTROL_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: SGW_CONTROL_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ SgwControlAddrErrInj: '0'
+ SgwUserAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: SGW_USER_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: SGW_USER_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ SgwUserAddrErrInj: '0'
+ SgwUserDualStackEn: 'false'
+ TestType: SGW-NODE
+ TrafficMtu: '1400'
+ UeDhcpV4En: 'false'
+ type: SGW_Node
+ tsId: SGW_NODE_TS_NAME
+- testCases:
+ - name: ''
+ parameters:
+ ApnDnsEn: 'false'
+ ApnToPgwMappingEn: 'false'
+ AutoStopControlLayer: 'false'
+ ContinuousWithVerification: 'false'
+ CpCiotEpsOptimizationEn: 'false'
+ CtlBearerToDscpEn: 'false'
+ DataHostCfgFileEn: 'false'
+ DataResumeRate: '3000'
+ DataTraffic: Continuous
+ DataUserCfgFileEn: 'false'
+ DedicatedsPerDefaultBearer: '0'
+ DefaultBearers: '1'
+ DisconnectRate: '1000.0'
+ Dmf:
+ class: Dmf
+ instanceGroups:
+ - mainflowIdx: 0
+ mixType: ''
+ rate: 0.0
+ rows:
+ - clientPort: 0
+ context: 0
+ node: 0
+ overridePort: 'false'
+ ratingGroup: 0
+ role: Server
+ serviceId: 0
+ transport: Any
+ mainflows:
+ - library: test
+ name: Basic UDP
+ DualStackEn: 'false'
+ EDrxValueEn: 'false'
+ EirIfEn: 'false'
+ EmergencyAttachWithImeiEn: 'false'
+ EmergencyAttachWoAuthEn: 'false'
+ EmergencyPdnIndexEn: 'false'
+ EnableExternalData: '0'
+ EnbUserAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: ENB_USER_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: ENB_USER_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ EnbUserAddrErrInj: '0'
+ FireballEn: 'false'
+ Gtp2ActivationDelay: '0'
+ Gtp2AmbrDownlink: '1'
+ Gtp2AmbrUplink: '1'
+ Gtp2ApnNumSpecifiedApns_0: '0'
+ Gtp2ApnNumSpecifiedApns_1: '0'
+ Gtp2ApnRestriction: '0'
+ Gtp2ApnRetries_0: '0'
+ Gtp2ApnRetries_1: '0'
+ Gtp2ApnSelectMode: '0'
+ Gtp2ApnSpecified_0:
+ array: []
+ class: Array
+ Gtp2ApnSpecified_1:
+ array: []
+ class: Array
+ Gtp2ApnTotalApns_0: '1'
+ Gtp2ApnTotalApns_1: '1'
+ Gtp2Apn_0: ssenoauth146
+ Gtp2Apn_1: ssenoauth146
+ Gtp2BearerModEn: 'false'
+ Gtp2CfgFileEn: 'false'
+ Gtp2ChargingChars: '0x0'
+ Gtp2DelayDlPacketNotifReq: '1'
+ Gtp2Ecgi: '0'
+ Gtp2EcgiSize: '28'
+ Gtp2EchoTimeSec: '0'
+ Gtp2EnbUliEn: 'false'
+ Gtp2ExtEn: 'false'
+ Gtp2FwdUplinkDataEcmIdle: 'false'
+ Gtp2GtpcTunnelEndptId: '1000000'
+ Gtp2GtpuIncludeSeqEn: 'true'
+ Gtp2GtpuTunnelEndptId: '2000000'
+ Gtp2IdleEntryTime: '0'
+ Gtp2IgnoreRestartCtrEn: 'false'
+ Gtp2Imei: '50502410121507'
+ Gtp2Imsi: '505024101215074'
+ Gtp2IncCgiEn: 'false'
+ Gtp2IncEcgiEn: 'true'
+ Gtp2IncPcoOpt: none
+ Gtp2IncRaiEn: 'false'
+ Gtp2IncSaiEn: 'false'
+ Gtp2IncTaiEn: 'true'
+ Gtp2MacroEnbEn: 'false'
+ Gtp2MaxWaitTimeEn: 'false'
+ Gtp2Mcc: '000'
+ Gtp2Mnc: '000'
+ Gtp2ModBearerDlDataDelay: '0'
+ Gtp2MsIsdnEn: 'false'
+ Gtp2N3Attempts: '5'
+ Gtp2PagingTimeMs: '0'
+ Gtp2PcoAddEn: 'false'
+ Gtp2PcoIpcpEn: 'false'
+ Gtp2QosArpPreemptCapEn_1: 'false'
+ Gtp2QosArpPreemptVulnEn_1: 'false'
+ Gtp2QosArpValue_1: '1'
+ Gtp2QosClassId_1: '1'
+ Gtp2QosDetail: Summary
+ Gtp2QosGuarDownlink_1: '1'
+ Gtp2QosGuarUplink_1: '1'
+ Gtp2QosMaxDownlink_1: '1'
+ Gtp2QosMaxUplink_1: '1'
+ Gtp2RadioAccessType: '6'
+ Gtp2RejectDedEn: 'false'
+ Gtp2RemoteUeReportTime: '0'
+ Gtp2RestartCnt: '1'
+ Gtp2SupportMabrEn: 'false'
+ Gtp2SwVersionEn: 'false'
+ Gtp2T3Time: '20'
+ Gtp2Tac: '0'
+ Gtp2UeDaySaveTime: '0'
+ Gtp2UeMultPdnConnReqSameApnEn_0: 'false'
+ Gtp2UeTimeZone: '0'
+ Gtp2UliDbCmdCbRspEn: 'true'
+ Gtp2Version: 15.2.0
+ HomeAddrType: '1'
+ HomeAddrTypePerBearerEn: 'false'
+ HssIfEn: 'false'
+ MmeControlAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: MME_CONTROL_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: MME_CONTROL_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ MmeControlAddrErrInj: '0'
+ MultipathTcpEn: 'false'
+ NetworkHost: Local
+ NetworkHostAddrLocal:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: NET_HOST_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: NET_HOST_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ NetworkHostAddrLocalErrInj: '0'
+ NetworkHostNatedTrafficEn: 'false'
+ PgwNodeEn: 'false'
+ PgwUserSutEn: 'false'
+ PgwV4Sut:
+ class: Sut
+ name: PGW_SUT_NAME
+ QciToDscpMarkingsEn: 'false'
+ S5Protocol: GTPv2
+ SecPgwV4SutEn: 'false'
+ SessionIntervalShape: Fixed
+ SessionRetries: 'true'
+ Sessions: '1000'
+ SgwNumSutsEn: 'false'
+ SgwSut:
+ class: Sut
+ name: PGW_SUT_NAME
+ SgwUserSut:
+ class: Sut
+ name: SGW_USER_NAME
+ StartRate: '1000.0'
+ T3324PwrSavingValueEn: 'false'
+ T3412ExValueEn: 'false'
+ TestActivity: Capacity Test
+ TestType: SGW-NODAL
+ TrafficDontFragIp: '0'
+ TrafficErrorInject: '0'
+ TrafficHostIdleTimeEnabler: 'false'
+ TrafficMtu: '1400'
+ TrafficStartDelay: '10000'
+ TrafficStartType: When All Sessions Established
+ UeDhcpV4En: 'false'
+ UseStaticBearerIp: 'false'
+ type: SGW_Nodal
+ tsId: SGW_NODAL_TS_NAME
diff --git a/samples/vnf_samples/traffic_profiles/landslide/landslide_session_saegw_relocation.yaml b/samples/vnf_samples/traffic_profiles/landslide/landslide_session_saegw_relocation.yaml
new file mode 100644
index 000000000..f6daeee40
--- /dev/null
+++ b/samples/vnf_samples/traffic_profiles/landslide/landslide_session_saegw_relocation.yaml
@@ -0,0 +1,177 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+description: SAEGW throughput with relocation test case
+keywords: ''
+duration: 60
+library: test
+name: saegw_relocation
+tsGroups:
+- testCases:
+ - name: ''
+ type: SGW_Node
+ AssociatedPhys: ''
+ parameters:
+ BearerAddrPool: 2001::1
+ BearerV4AddrPool: 1.0.0.1
+ BillingEn: 'false'
+ DedicatedsPerDefaultBearer: '0'
+ DefaultBearers: '1'
+ FireballEn: 'false'
+ Gtp2Imei: '50502410121507'
+ Gtp2Imsi: '505024101215074'
+ Gtp2Version: 15.2.0
+ PgwNodeEn: 'true'
+ QciToDscpMarkingsEn: 'false'
+ S5Protocol: GTPv2
+ Sessions: '20000'
+ SgiPtpTunnelEn: 'false'
+ SgwControlAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: SGW_CONTROL_IP
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ phy: SGW_CONTROL_PHY
+ SgwControlAddrErrInj: '0'
+ SgwUserAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ ip: SGW_USER_IP
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ phy: SGW_USER_PHY
+ SgwUserAddrErrInj: '0'
+ SgwUserDualStackEn: 'false'
+ TestType: SGW-NODE
+ TrafficMtu: '1400'
+ UeDhcpV4En: 'false'
+ tsId: SGW_NODE_TS_NAME
+- testCases:
+ - name: ''
+ type: SGW_Nodal
+ parameters:
+ ApnDnsEn: 'false'
+ ApnToPgwMappingEn: 'false'
+ AutoStopControlLayer: 'false'
+ ContinuousWithVerification: 'false'
+ CtlBearerToDscpEn: 'false'
+ DataHostCfgFileEn: 'false'
+ DataResumeRate: '3000'
+ DataTraffic: Continuous
+ DataUserCfgFileEn: 'false'
+ DedicatedsPerDefaultBearer: '0'
+ DefaultBearers: '1'
+ DisconnectRate: '1000.0'
+ Dmf:
+ class: Dmf
+ instanceGroups:
+ - mainflowIdx: 0
+ mixType: ''
+ rate: 0.0
+ mainflows:
+ - library: test
+ name: Basic UDP
+ DualStackEn: 'false'
+ EnbUserAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: ENB_USER_IP
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ phy: ENB_USER_PHY
+ FireballEn: 'false'
+ Gtp2Imei: '50502410121507'
+ Gtp2Imsi: '505024101215074'
+ Gtp2Version: 15.2.0
+ HandoffType: '0'
+ HomeAddrType: '1'
+ HomeAddrTypePerBearerEn: 'false'
+ HssIfEn: 'false'
+ MmeControlAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: MME_CONTROL_IP
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ phy: MME_CONTROL_PHY
+ MmeControlAddrErrInj: '0'
+ MobEnbUserAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: TARGET_ENB_USER_IP
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ phy: TARGET_ENB_USER_PHY
+ MobEnbUserAddrErrInj: '0'
+ MobilityIntervalShape: Fixed
+ MobilityMode: Single Handoff
+ MobilityRate: '1.0'
+ MobilityTimeMs: '10000'
+ MultipathTcpEn: 'false'
+ NetworkHost: Local
+ NetworkHostAddrLocal:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: NET_HOST_IP
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ phy: NET_HOST_PHY
+ NetworkHostAddrLocalErrInj: '0'
+ NetworkHostNatedTrafficEn: 'false'
+ PgwNodeEn: 'false'
+ PgwUserSutEn: 'false'
+ PgwV4Sut:
+ class: Sut
+ name: PGW_SUT_NAME
+ QciToDscpMarkingsEn: 'false'
+ S5Protocol: GTPv2
+ SecPgwV4SutEn: 'false'
+ SessionIntervalShape: Fixed
+ SessionRetries: 'true'
+ Sessions: '20000'
+ SgwNumSutsEn: 'false'
+ SgwRelocationEn: 'false'
+ SgwSut:
+ class: Sut
+ name: SGW_CONTROL_NAME
+ SgwUserSut:
+ class: Sut
+ name: SGW_USER_NAME
+ StartRate: '1000.0'
+ StartType: When All Sessions Started
+ TestActivity: Intra-MME Mobility
+ TestType: SGW-NODAL
+ TrafficMtu: '1400'
+ TrafficStartDelay: '1000'
+ TrafficStartType: When Session Established
+ tsId: SGW_NODAL_TS_NAME
diff --git a/samples/vnf_samples/traffic_profiles/landslide/landslide_session_ue_dedicated_bearer.yaml b/samples/vnf_samples/traffic_profiles/landslide/landslide_session_ue_dedicated_bearer.yaml
new file mode 100644
index 000000000..ace6e0258
--- /dev/null
+++ b/samples/vnf_samples/traffic_profiles/landslide/landslide_session_ue_dedicated_bearer.yaml
@@ -0,0 +1,353 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+description: 'UE initiated dedicated bearer creation test case'
+duration: 60
+keywords: ''
+library: test
+name: capacity_dedicated_bearer_creation
+tsGroups:
+- testCases:
+ - name: ''
+ AssociatedPhys: ''
+ parameters:
+ BearerAddrPool: 2001::1
+ BearerV4AddrPool: 1.0.0.1
+ BillingEn: 'false'
+ DedicatedsPerDefaultBearer: '1'
+ DefaultBearers: '1'
+ FireballEn: 'false'
+ Gtp2AmbrDownlink: '1'
+ Gtp2AmbrUplink: '1'
+ Gtp2ApnNumSpecifiedApns_0: '0'
+ Gtp2ApnRestriction: '0'
+ Gtp2ApnRetries_0: '0'
+ Gtp2ApnSelectMode: '0'
+ Gtp2ApnSpecified_0:
+ array: []
+ class: Array
+ Gtp2ApnTotalApns_0: '1'
+ Gtp2Apn_0: ssenoauth146
+ Gtp2CfgFileEn: 'false'
+ Gtp2Ecgi: '0'
+ Gtp2EcgiSize: '28'
+ Gtp2EchoTimeSec: '0'
+ Gtp2ExtEn: 'false'
+ Gtp2GtpcTunnelEndptId: '1000000'
+ Gtp2GtpuIncludeSeqEn: 'true'
+ Gtp2GtpuTunnelEndptId: '2000000'
+ Gtp2IgnoreRestartCtrEn: 'false'
+ Gtp2Imei: '50502410121507'
+ Gtp2Imsi: '505024101215074'
+ Gtp2IncCgiEn: 'false'
+ Gtp2IncEcgiEn: 'true'
+ Gtp2IncRaiEn: 'false'
+ Gtp2IncSaiEn: 'false'
+ Gtp2IncTaiEn: 'true'
+ Gtp2MacroEnbEn: 'false'
+ Gtp2Mcc: '000'
+ Gtp2Mnc: '000'
+ Gtp2MobGtpuForwardingEndptId: '5000000'
+ Gtp2MsIsdnEn: 'false'
+ Gtp2N3Attempts: '5'
+ Gtp2PagingTimeMs: '0'
+ Gtp2PersistentImsiEn: 'false'
+ Gtp2PiggybackEn_sgw: '0'
+ Gtp2QosArpPreemptCapEn_1: 'false'
+ Gtp2QosArpPreemptVulnEn_1: 'false'
+ Gtp2QosArpValue_1: '1'
+ Gtp2QosClassId_1: '1'
+ Gtp2QosDetail: Summary
+ Gtp2QosGuarDownlink_1: '1'
+ Gtp2QosGuarUplink_1: '1'
+ Gtp2QosMaxDownlink_1: '1'
+ Gtp2QosMaxUplink_1: '1'
+ Gtp2RadioAccessType: '6'
+ Gtp2ResponseDelayEn: 'false'
+ Gtp2RestartCnt: '1'
+ Gtp2RouterAdDelay: '1'
+ Gtp2S5GtpcTunnelEndptId: '3000000'
+ Gtp2S5GtpuTunnelEndptId: '4000000'
+ Gtp2SupportMabrEn: 'false'
+ Gtp2T3Time: '20'
+ Gtp2Tac: '0'
+ Gtp2Version: 15.2.0
+ PgwNodeEn: 'true'
+ QciToDscpMarkingsEn: 'false'
+ S5Protocol: GTPv2
+ Sessions: '1000'
+ SgiPtpTunnelEn: 'false'
+ SgwControlAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: SGW_CONTROL_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: eth5
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ SgwControlAddrErrInj: '0'
+ SgwUserAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: SGW_USER_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: eth5
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ SgwUserAddrErrInj: '0'
+ SgwUserDualStackEn: 'false'
+ SxaControlNodeAddrXPort: '8805'
+ SxaUserNodeAddrXPort: '8805'
+ TestType: SGW-NODE
+ TrafficMtu: '1400'
+ TrafficNumTftsForContext0: '1'
+ UeDhcpV4En: 'false'
+ UeInitBearerEn: 'false'
+ type: SGW_Node
+ tsId: SGW_NODE_TS_NAME
+- testCases:
+ - name: ''
+ parameters:
+ ApnDnsEn: 'false'
+ ApnToPgwMappingEn: 'false'
+ AutoStopControlLayer: 'false'
+ ContinuousWithVerification: 'false'
+ CpCiotEpsOptimizationEn: 'false'
+ CtlBearerToDscpEn: 'false'
+ DataHostCfgFileEn: 'false'
+ DataResumeRate: '3000'
+ DataTraffic: Continuous
+ DataUserCfgFileEn: 'false'
+ DedBearerConnectDelay: '0'
+ DedBearerDisconnectDelay: '0'
+ DedicatedBearerConnectRateEn: 'false'
+ DedicatedBearerDisconnectRateEn: 'false'
+ DedicatedsPerDefaultBearer: '1'
+ DefaultBearers: '1'
+ DisconnectDedicatedBearerEn: 'false'
+ DisconnectRate: '1000.0'
+ Dmf:
+ class: Dmf
+ instanceGroups:
+ - mainflowIdx: 0
+ mixType: ''
+ rate: 0.0
+ rows:
+ - clientPort: 0
+ context: 0
+ node: 0
+ overridePort: 'false'
+ ratingGroup: 0
+ role: 0
+ serviceId: 0
+ transport: Any
+ mainflows:
+ - library: test
+ name: Basic UDP
+ DualStackEn: 'false'
+ EDrxValueEn: 'false'
+ EirIfEn: 'false'
+ EmergencyAttachWithImeiEn: 'false'
+ EmergencyAttachWoAuthEn: 'false'
+ EmergencyPdnIndexEn: 'false'
+ EnableExternalData: '0'
+ EnbUserAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: ENB_USER_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: eth5
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ EnbUserAddrErrInj: '0'
+ FireballEn: 'false'
+ Gtp2ActivationDelay: '0'
+ Gtp2AmbrDownlink: '1'
+ Gtp2AmbrUplink: '1'
+ Gtp2ApnNumSpecifiedApns_0: '0'
+ Gtp2ApnNumSpecifiedApns_1: '0'
+ Gtp2ApnRestriction: '0'
+ Gtp2ApnRetries_0: '0'
+ Gtp2ApnRetries_1: '0'
+ Gtp2ApnSelectMode: '0'
+ Gtp2ApnSpecified_0:
+ array: []
+ class: Array
+ Gtp2ApnSpecified_1:
+ array: []
+ class: Array
+ Gtp2ApnTotalApns_0: '1'
+ Gtp2ApnTotalApns_1: '1'
+ Gtp2Apn_0: ssenoauth146
+ Gtp2Apn_1: ssenoauth146
+ Gtp2BearerModEn: 'false'
+ Gtp2CfgFileEn: 'false'
+ Gtp2ChargingChars: '0x0'
+ Gtp2DelayDlPacketNotifReq: '1'
+ Gtp2Ecgi: '0'
+ Gtp2EcgiSize: '28'
+ Gtp2EchoTimeSec: '0'
+ Gtp2EnbUliEn: 'false'
+ Gtp2ExtEn: 'false'
+ Gtp2FwdUplinkDataEcmIdle: 'false'
+ Gtp2GtpcTunnelEndptId: '1000000'
+ Gtp2GtpuIncludeSeqEn: 'true'
+ Gtp2GtpuTunnelEndptId: '2000000'
+ Gtp2IdleEntryTime: '0'
+ Gtp2IgnoreRestartCtrEn: 'false'
+ Gtp2Imei: '50502410121507'
+ Gtp2Imsi: '505024101215074'
+ Gtp2IncCgiEn: 'false'
+ Gtp2IncEcgiEn: 'true'
+ Gtp2IncPcoOpt: none
+ Gtp2IncRaiEn: 'false'
+ Gtp2IncSaiEn: 'false'
+ Gtp2IncTaiEn: 'true'
+ Gtp2MacroEnbEn: 'false'
+ Gtp2MaxWaitTimeEn: 'false'
+ Gtp2Mcc: '000'
+ Gtp2Mnc: '000'
+ Gtp2ModBearerDlDataDelay: '0'
+ Gtp2MsIsdnEn: 'false'
+ Gtp2N3Attempts: '5'
+ Gtp2PagingTimeMs: '0'
+ Gtp2PcoAddEn: 'false'
+ Gtp2PcoIpcpEn: 'false'
+ Gtp2QosArpPreemptCapEn_1: 'false'
+ Gtp2QosArpPreemptVulnEn_1: 'false'
+ Gtp2QosArpValue_1: '1'
+ Gtp2QosClassId_1: '1'
+ Gtp2QosDetail: Summary
+ Gtp2QosGuarDownlink_1: '1'
+ Gtp2QosGuarUplink_1: '1'
+ Gtp2QosMaxDownlink_1: '1'
+ Gtp2QosMaxUplink_1: '1'
+ Gtp2RadioAccessType: '6'
+ Gtp2RejectDedEn: 'false'
+ Gtp2RemoteUeReportTime: '0'
+ Gtp2RestartCnt: '1'
+ Gtp2SupportMabrEn: 'false'
+ Gtp2SwVersionEn: 'false'
+ Gtp2T3Time: '20'
+ Gtp2Tac: '0'
+ Gtp2UeDaySaveTime: '0'
+ Gtp2UeMultPdnConnReqSameApnEn_0: 'false'
+ Gtp2UeTimeZone: '0'
+ Gtp2UliDbCmdCbRspEn: 'true'
+ Gtp2Version: 15.2.0
+ HomeAddrType: '1'
+ HomeAddrTypePerBearerEn: 'false'
+ HssIfEn: 'false'
+ MmeControlAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: MME_CONTROL_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: eth5
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ MmeControlAddrErrInj: '0'
+ MultipathTcpEn: 'false'
+ NetworkHost: Local
+ NetworkHostAddrLocal:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: NET_HOST_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: eth5
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ NetworkHostAddrLocalErrInj: '0'
+ NetworkHostNatedTrafficEn: 'false'
+ PgwNodeEn: 'false'
+ PgwUserSutEn: 'false'
+ PgwV4Sut:
+ class: Sut
+ name: PGW_SUT_NAME
+ QciToDscpMarkingsEn: 'false'
+ S5Protocol: GTPv2
+ SecPgwV4SutEn: 'false'
+ SessionIntervalShape: Fixed
+ SessionRetries: 'true'
+ Sessions: '1000'
+ SgwNumSutsEn: 'false'
+ SgwSut:
+ class: Sut
+ name: SGW_CONTROL_NAME
+ SgwUserSut:
+ class: Sut
+ name: SGW_USER_NAME
+ StartRate: '1000.0'
+ T3324PwrSavingValueEn: 'false'
+ T3412ExValueEn: 'false'
+ TestActivity: Capacity Test
+ TestType: SGW-NODAL
+ TrafficDontFragIp: '0'
+ TrafficErrorInject: '0'
+ TrafficHostIdleTimeEnabler: 'false'
+ TrafficMtu: '1400'
+ TrafficNumTftsForContext0: '1'
+ TrafficStartDelay: '1000'
+ TrafficStartType: When All Sessions Established
+ UeDhcpV4En: 'false'
+ UeInitBearerEn: 'true'
+ UseStaticBearerIp: 'false'
+ type: SGW_Nodal
+ tsId: SGW_NODAL_TS_NAME
diff --git a/samples/vnf_samples/traffic_profiles/landslide/landslide_session_ue_service_request.yaml b/samples/vnf_samples/traffic_profiles/landslide/landslide_session_ue_service_request.yaml
new file mode 100644
index 000000000..c4b178558
--- /dev/null
+++ b/samples/vnf_samples/traffic_profiles/landslide/landslide_session_ue_service_request.yaml
@@ -0,0 +1,378 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+---
+description: ue initiates service request test case
+keywords: ''
+duration: 60
+library: test
+name: ue_initiates_service_request
+tsGroups:
+- testCases:
+ - name: ''
+ AssociatedPhys: ''
+ parameters:
+ BearerAddrPool: 2001::1
+ BearerV4AddrPool: 1.0.0.1
+ BillingEn: 'false'
+ DedicatedsPerDefaultBearer: '1'
+ DefaultBearers: '1'
+ FireballEn: 'false'
+ Gtp2AmbrDownlink: '1'
+ Gtp2AmbrUplink: '1'
+ Gtp2ApnNumSpecifiedApns_0: '0'
+ Gtp2ApnRestriction: '0'
+ Gtp2ApnRetries_0: '0'
+ Gtp2ApnSelectMode: '0'
+ Gtp2ApnSpecified_0:
+ array: []
+ class: Array
+ Gtp2ApnTotalApns_0: '1'
+ Gtp2Apn_0: ssenoauth146
+ Gtp2CfgFileEn: 'false'
+ Gtp2Ecgi: '0'
+ Gtp2EcgiSize: '28'
+ Gtp2EchoTimeSec: '0'
+ Gtp2ExtEn: 'false'
+ Gtp2GtpcTunnelEndptId: '1000000'
+ Gtp2GtpuIncludeSeqEn: 'true'
+ Gtp2GtpuTunnelEndptId: '2000000'
+ Gtp2IgnoreRestartCtrEn: 'false'
+ Gtp2Imei: '50502410121507'
+ Gtp2Imsi: '505024101215074'
+ Gtp2IncCgiEn: 'false'
+ Gtp2IncEcgiEn: 'true'
+ Gtp2IncRaiEn: 'false'
+ Gtp2IncSaiEn: 'false'
+ Gtp2IncTaiEn: 'true'
+ Gtp2MacroEnbEn: 'false'
+ Gtp2Mcc: '000'
+ Gtp2Mnc: '000'
+ Gtp2MobGtpuForwardingEndptId: '5000000'
+ Gtp2MsIsdnEn: 'false'
+ Gtp2N3Attempts: '5'
+ Gtp2PagingTimeMs: '0'
+ Gtp2PersistentImsiEn: 'false'
+ Gtp2QosArpPreemptCapEn_1: 'false'
+ Gtp2QosArpPreemptVulnEn_1: 'false'
+ Gtp2QosArpValue_1: '1'
+ Gtp2QosClassId_1: '1'
+ Gtp2QosDetail: Summary
+ Gtp2QosGuarDownlink_1: '150'
+ Gtp2QosGuarUplink_1: '150'
+ Gtp2QosMaxDownlink_1: '200'
+ Gtp2QosMaxUplink_1: '200'
+ Gtp2RadioAccessType: '6'
+ Gtp2ResponseDelayEn: 'false'
+ Gtp2RestartCnt: '1'
+ Gtp2RouterAdDelay: '1'
+ Gtp2S5GtpcTunnelEndptId: '3000000'
+ Gtp2S5GtpuTunnelEndptId: '4000000'
+ Gtp2SupportMabrEn: 'false'
+ Gtp2T3Time: '20'
+ Gtp2Tac: '0'
+ Gtp2Version: 15.2.0
+ PgwNodeEn: 'true'
+ QciToDscpMarkingsEn: 'false'
+ S5Protocol: GTPv2
+ Sessions: '1'
+ SgiPtpTunnelEn: 'false'
+ SgwControlAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: SGW_CONTROL_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: SGW_CONTROL_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ SgwControlAddrErrInj: '0'
+ SgwUserAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: SGW_USER_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: SGW_USER_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ SgwUserAddrErrInj: '0'
+ SgwUserDualStackEn: 'false'
+ TestType: SGW-NODE
+ TrafficMtu: '1400'
+ TrafficNumTftsForContext0: '0'
+ UeDhcpV4En: 'false'
+ UeInitBearerEn: 'true'
+ type: SGW_Node
+ tsId: SGW_NODE_TS_NAME
+- testCases:
+ - name: ''
+ parameters:
+ ApnDnsEn: 'false'
+ ApnToPgwMappingEn: 'false'
+ AutoStopControlLayer: 'false'
+ ContinuousWithVerification: 'false'
+ CpCiotEpsOptimizationEn: 'false'
+ CtlBearerToDscpEn: 'false'
+ DataHostCfgFileEn: 'false'
+ DataResumeRate: '3000'
+ DataTraffic: Continuous
+ DataUserCfgFileEn: 'false'
+ DedBearerConnectDelay: '0'
+ DedBearerDisconnectDelay: '0'
+ DedicatedBearerConnectRateEn: 'false'
+ DedicatedBearerDisconnectRateEn: 'false'
+ DedicatedsPerDefaultBearer: '1'
+ DefaultBearers: '1'
+ DisconnectRate: '1000.0'
+ Dmf:
+ class: Dmf
+ instanceGroups:
+ - mainflowIdx: 0
+ mixType: ''
+ rate: 0.0
+ rows:
+ - clientPort: 0
+ context: 0
+ node: 0
+ overridePort: 'false'
+ ratingGroup: 0
+ role: 0
+ serviceId: 0
+ transport: Any
+ mainflows:
+ - library: test
+ name: Basic UDP
+ DualStackEn: 'false'
+ EDrxValueEn: 'false'
+ EirIfEn: 'false'
+ EmergencyAttachWithImeiEn: 'false'
+ EmergencyAttachWoAuthEn: 'false'
+ EmergencyPdnIndexEn: 'false'
+ EnableExternalData: '0'
+ EnbUserAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: ENB_USER_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: ENB_USER_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ EnbUserAddrErrInj: '0'
+ FireballEn: 'false'
+ Gtp2ActivationDelay: '0'
+ Gtp2AmbrDownlink: '1'
+ Gtp2AmbrUplink: '1'
+ Gtp2ApnNumSpecifiedApns_0: '0'
+ Gtp2ApnNumSpecifiedApns_1: '0'
+ Gtp2ApnRestriction: '0'
+ Gtp2ApnRetries_0: '0'
+ Gtp2ApnRetries_1: '0'
+ Gtp2ApnSelectMode: '0'
+ Gtp2ApnSpecified_0:
+ array: []
+ class: Array
+ Gtp2ApnSpecified_1:
+ array: []
+ class: Array
+ Gtp2ApnTotalApns_0: '1'
+ Gtp2ApnTotalApns_1: '1'
+ Gtp2Apn_0: ssenoauth146
+ Gtp2Apn_1: ssenoauth146
+ Gtp2BearerContinuousMod: 'false'
+ Gtp2BearerDelayTime: '10'
+ Gtp2BearerModEn: 'true'
+ Gtp2BearerModInit: UE
+ Gtp2CfgFileEn: 'false'
+ Gtp2ChargingChars: '0x0'
+ Gtp2DelayDlPacketNotifReq: '1'
+ Gtp2Ecgi: '0'
+ Gtp2EcgiSize: '28'
+ Gtp2EchoTimeSec: '0'
+ Gtp2EnbUliEn: 'false'
+ Gtp2ExtEn: 'false'
+ Gtp2FwdUplinkDataEcmIdle: 'false'
+ Gtp2GtpcTunnelEndptId: '1000000'
+ Gtp2GtpuIncludeSeqEn: 'true'
+ Gtp2GtpuTunnelEndptId: '2000000'
+ Gtp2IdleEntryTime: '0'
+ Gtp2IgnoreRestartCtrEn: 'false'
+ Gtp2Imei: '50502410121507'
+ Gtp2Imsi: '505024101215074'
+ Gtp2IncCgiEn: 'false'
+ Gtp2IncEcgiEn: 'true'
+ Gtp2IncModQos_2: 'true'
+ Gtp2IncPcoOpt: none
+ Gtp2IncRaiEn: 'false'
+ Gtp2IncSaiEn: 'false'
+ Gtp2IncTaiEn: 'true'
+ Gtp2MacroEnbEn: 'false'
+ Gtp2MaxWaitTimeEn: 'false'
+ Gtp2Mcc: '000'
+ Gtp2Mnc: '000'
+ Gtp2ModBearerDlDataDelay: '0'
+ Gtp2MsIsdnEn: 'false'
+ Gtp2N3Attempts: '5'
+ Gtp2PagingTimeMs: '0'
+ Gtp2PcoAddEn: 'false'
+ Gtp2PcoIpcpEn: 'false'
+ Gtp2QosArpPreemptCapEn_1: 'false'
+ Gtp2QosArpPreemptCapEn_2: 'false'
+ Gtp2QosArpPreemptCapEn_2_1: 'false'
+ Gtp2QosArpPreemptCapEn_2_2: 'false'
+ Gtp2QosArpPreemptVulnEn_1: 'false'
+ Gtp2QosArpPreemptVulnEn_2: 'false'
+ Gtp2QosArpPreemptVulnEn_2_1: 'false'
+ Gtp2QosArpPreemptVulnEn_2_2: 'false'
+ Gtp2QosArpValue_1: '1'
+ Gtp2QosArpValue_2: '1'
+ Gtp2QosArpValue_2_1: '1'
+ Gtp2QosArpValue_2_2: '1'
+ Gtp2QosClassId_1: '1'
+ Gtp2QosClassId_2: '1'
+ Gtp2QosClassId_2_1: '1'
+ Gtp2QosClassId_2_2: '5'
+ Gtp2QosDetail: Individual
+ Gtp2QosDetail_2: Individual
+ Gtp2QosGuarDownlink_1: '150'
+ Gtp2QosGuarDownlink_2: '1000'
+ Gtp2QosGuarDownlink_2_1: '150'
+ Gtp2QosGuarUplink_1: '150'
+ Gtp2QosGuarUplink_2: '1000'
+ Gtp2QosGuarUplink_2_1: '150'
+ Gtp2QosMaxDownlink_1: '200'
+ Gtp2QosMaxDownlink_2: '2000'
+ Gtp2QosMaxDownlink_2_1: '250'
+ Gtp2QosMaxUplink_1: '200'
+ Gtp2QosMaxUplink_2: '2000'
+ Gtp2QosMaxUplink_2_1: '250'
+ Gtp2RadioAccessType: '6'
+ Gtp2RejectDedEn: 'false'
+ Gtp2RemoteUeReportTime: '0'
+ Gtp2RestartCnt: '1'
+ Gtp2SupportMabrEn: 'false'
+ Gtp2SwVersionEn: 'false'
+ Gtp2T3Time: '20'
+ Gtp2Tac: '0'
+ Gtp2UeDaySaveTime: '0'
+ Gtp2UeMultPdnConnReqSameApnEn_0: 'false'
+ Gtp2UeTimeZone: '0'
+ Gtp2UliDbCmdCbRspEn: 'true'
+ Gtp2Version: 15.2.0
+ HomeAddrType: '1'
+ HomeAddrTypePerBearerEn: 'false'
+ HssIfEn: 'false'
+ MmeControlAddr:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: MME_CONTROL_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: MME_CONTROL_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ MmeControlAddrErrInj: '0'
+ MultipathTcpEn: 'false'
+ NetworkHost: Local
+ NetworkHostAddrLocal:
+ class: TestNode
+ ethStatsEnabled: 'false'
+ forcedEthInterface: ''
+ innerVlanId: 0
+ ip: NET_HOST_IP
+ mac: ''
+ mtu: 1500
+ nextHop: ''
+ numLinksOrNodes: 1
+ numVlan: 1
+ phy: NET_HOST_PHY
+ uniqueVlanAddr: 'false'
+ vlanDynamic: 0
+ vlanId: 0
+ vlanTagType: 0
+ vlanUserPriority: 0
+ NetworkHostAddrLocalErrInj: '0'
+ NetworkHostNatedTrafficEn: 'false'
+ PgwNodeEn: 'false'
+ PgwUserSutEn: 'false'
+ PgwV4Sut:
+ class: Sut
+ name: PGW_SUT_NAME
+ QciToDscpMarkingsEn: 'false'
+ S5Protocol: GTPv2
+ SecPgwV4SutEn: 'false'
+ SessionIntervalShape: Fixed
+ SessionRetries: 'true'
+ Sessions: '1'
+ SgwNumSutsEn: 'false'
+ SgwSut:
+ class: Sut
+ name: SGW_CONTROL_NAME
+ SgwUserSut:
+ class: Sut
+ name: SGW_USER_NAME
+ StartRate: '1000.0'
+ T3324PwrSavingValueEn: 'false'
+ T3412ExValueEn: 'false'
+ TestActivity: Capacity Test
+ TestType: SGW-NODAL
+ TrafficAutoStartingDestPort: 'false'
+ TrafficAutoStartingDestPort_2: 'false'
+ TrafficDontFragIp: '0'
+ TrafficErrorInject: '0'
+ TrafficHostIdleTimeEnabler: 'false'
+ TrafficMtu: '1400'
+ TrafficNumTftsForContext0: '0'
+ TrafficNumTftsForContext0_2: '0'
+ TrafficOpCodeForContext0_2: '0'
+ TrafficStartDelay: '1000'
+ TrafficStartType: When All Sessions Established
+ UeDhcpV4En: 'false'
+ UeInitBearerEn: 'true'
+ UseStaticBearerIp: 'false'
+ type: SGW_Nodal
+ tsId: SGW_NODAL_TS_NAME
diff --git a/samples/vnf_samples/traffic_profiles/vfw/HTTP-vFW_IPv4_2Ports_Concurrency.rxf b/samples/vnf_samples/traffic_profiles/vfw/HTTP-vFW_IPv4_2Ports_Concurrency.rxf
index f0791fd3b..93b768373 100644
--- a/samples/vnf_samples/traffic_profiles/vfw/HTTP-vFW_IPv4_2Ports_Concurrency.rxf
+++ b/samples/vnf_samples/traffic_profiles/vfw/HTTP-vFW_IPv4_2Ports_Concurrency.rxf
@@ -1,7 +1,7 @@
<?xml version="1.0" ?>
<root ver="[21, [1, [0, [0]]]]" type="ixRepository">
<_smSessionXml ver="[0, [1, [0, [0]]]]" type="ixSMSessionXML">
- <xml type="str">&lt;rpf&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.SMSession type=&quot;Ixia.Aptixia.StackManager.SMSession&quot; objectid=&quot;ccbe6b23-38b0-4060-8a29-49ce17c75bb7&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;doWaitLinkUp type=&quot;Bool&quot;&gt;0&lt;/doWaitLinkUp&gt;&#13;&#10; &lt;doGratArp type=&quot;Bool&quot;&gt;0&lt;/doGratArp&gt;&#13;&#10; &lt;subscribeToGratArpNotifications type=&quot;Bool&quot;&gt;0&lt;/subscribeToGratArpNotifications&gt;&#13;&#10; &lt;doInterfaceCheck type=&quot;Bool&quot;&gt;0&lt;/doInterfaceCheck&gt;&#13;&#10; &lt;rebootPortsBeforeConfigure type=&quot;Bool&quot;&gt;0&lt;/rebootPortsBeforeConfigure&gt;&#13;&#10; &lt;testDuration type=&quot;Int&quot;&gt;10000&lt;/testDuration&gt;&#13;&#10; &lt;checkLinkState type=&quot;Bool&quot;&gt;0&lt;/checkLinkState&gt;&#13;&#10; &lt;portGroupList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.PortGroup type=&quot;Ixia.Aptixia.StackManager.PortGroup&quot; objectid=&quot;865be042-32d5-426a-9e75-0908c943801f&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;client network&lt;/name&gt;&#13;&#10; &lt;category type=&quot;String&quot; /&gt;&#13;&#10; &lt;stack type=&quot;Ixia.Aptixia.StackManager.L1EthernetPlugin&quot; objectid=&quot;1dcd6e1b-17cd-45a1-875a-cbea40d3468c&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;autoNegotiate type=&quot;Bool&quot;&gt;1&lt;/autoNegotiate&gt;&#13;&#10; &lt;speed type=&quot;String&quot;&gt;k100FD&lt;/speed&gt;&#13;&#10; &lt;advertise10Half type=&quot;Bool&quot;&gt;1&lt;/advertise10Half&gt;&#13;&#10; &lt;advertise10Full type=&quot;Bool&quot;&gt;1&lt;/advertise10Full&gt;&#13;&#10; &lt;advertise100Half type=&quot;Bool&quot;&gt;1&lt;/advertise100Half&gt;&#13;&#10; &lt;advertise100Full type=&quot;Bool&quot;&gt;1&lt;/advertise100Full&gt;&#13;&#10; &lt;advertise1000Full type=&quot;Bool&quot;&gt;1&lt;/advertise1000Full&gt;&#13;&#10; &lt;advertise2500Full type=&quot;Bool&quot;&gt;1&lt;/advertise2500Full&gt;&#13;&#10; &lt;advertise5000Full type=&quot;Bool&quot;&gt;1&lt;/advertise5000Full&gt;&#13;&#10; &lt;advertise10000Full type=&quot;Bool&quot;&gt;1&lt;/advertise10000Full&gt;&#13;&#10; &lt;cardDualPhy type=&quot;Ixia.Aptixia.StackManager.DualPhyPlugin&quot; objectid=&quot;b458c333-b4d4-48ef-bd38-3b456f72f8c8&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;medium type=&quot;String&quot;&gt;auto&lt;/medium&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/cardDualPhy&gt;&#13;&#10; &lt;cardElm type=&quot;Ixia.Aptixia.StackManager.EthernetELMPlugin&quot; objectid=&quot;28c0383a-76a7-4750-8162-2ad946ddac97&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;negotiateMasterSlave type=&quot;Bool&quot;&gt;1&lt;/negotiateMasterSlave&gt;&#13;&#10; &lt;negotiationType type=&quot;String&quot;&gt;master&lt;/negotiationType&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/cardElm&gt;&#13;&#10; &lt;enableFlowControl type=&quot;Bool&quot;&gt;0&lt;/enableFlowControl&gt;&#13;&#10; &lt;directedAddress type=&quot;String&quot;&gt;01:80:C2:00:00:01&lt;/directedAddress&gt;&#13;&#10; &lt;dataCenter type=&quot;Ixia.Aptixia.StackManager.DataCenterSettings&quot; objectid=&quot;b9a0be2e-3880-4100-9e29-9b474f9301f4&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;dcSupported type=&quot;Bool&quot;&gt;1&lt;/dcSupported&gt;&#13;&#10; &lt;dcEnabled type=&quot;Bool&quot;&gt;0&lt;/dcEnabled&gt;&#13;&#10; &lt;dcFlowControl type=&quot;Ixia.Aptixia.StackManager.DataCenterSettingsSkeleton+eFlowControlType&quot;&gt;0&lt;/dcFlowControl&gt;&#13;&#10; &lt;dcMode type=&quot;Ixia.Aptixia.StackManager.DataCenterSettingsSkeleton+eDataCenterMode&quot;&gt;2&lt;/dcMode&gt;&#13;&#10; &lt;dcPfcMapping type=&quot;IntList&quot; /&gt;&#13;&#10; &lt;dcPfcPauseEnable type=&quot;Bool&quot;&gt;0&lt;/dcPfcPauseEnable&gt;&#13;&#10; &lt;dcPfcPauseDelay type=&quot;Int&quot;&gt;1&lt;/dcPfcPauseDelay&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/dataCenter&gt;&#13;&#10; &lt;childrenList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.L2EthernetPlugin type=&quot;Ixia.Aptixia.StackManager.L2EthernetPlugin&quot; objectid=&quot;e0232591-010e-492c-8a28-75e436f4adb2&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;macRangeList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.MacRange type=&quot;Ixia.Aptixia.StackManager.MacRange&quot; objectid=&quot;3011c8a8-a9fd-4b76-a27d-91948113ed4f&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;1&lt;/enabled&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;MAC-R1&lt;/name&gt;&#13;&#10; &lt;mac type=&quot;String&quot;&gt;00:0A:00:02:14:00&lt;/mac&gt;&#13;&#10; &lt;incrementBy type=&quot;String&quot;&gt;00:00:00:00:00:01&lt;/incrementBy&gt;&#13;&#10; &lt;mtu type=&quot;Int&quot;&gt;1500&lt;/mtu&gt;&#13;&#10; &lt;count type=&quot;Int&quot;&gt;1&lt;/count&gt;&#13;&#10; &lt;vlanRange type=&quot;Ixia.Aptixia.StackManager.VlanIdRange&quot; objectid=&quot;adb27552-7165-46a3-bc9e-04914adf40ac&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;VLAN-R1&lt;/name&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;0&lt;/enabled&gt;&#13;&#10; &lt;firstId type=&quot;Int&quot;&gt;1&lt;/firstId&gt;&#13;&#10; &lt;incrementStep type=&quot;Int&quot;&gt;100&lt;/incrementStep&gt;&#13;&#10; &lt;increment type=&quot;Int&quot;&gt;1&lt;/increment&gt;&#13;&#10; &lt;uniqueCount type=&quot;Int&quot;&gt;4094&lt;/uniqueCount&gt;&#13;&#10; &lt;priority type=&quot;Int&quot;&gt;0&lt;/priority&gt;&#13;&#10; &lt;tpid type=&quot;String&quot;&gt;0x8100&lt;/tpid&gt;&#13;&#10; &lt;innerEnable type=&quot;Bool&quot;&gt;0&lt;/innerEnable&gt;&#13;&#10; &lt;innerFirstId type=&quot;Int&quot;&gt;1&lt;/innerFirstId&gt;&#13;&#10; &lt;innerIncrementStep type=&quot;Int&quot;&gt;1&lt;/innerIncrementStep&gt;&#13;&#10; &lt;innerIncrement type=&quot;Int&quot;&gt;1&lt;/innerIncrement&gt;&#13;&#10; &lt;innerUniqueCount type=&quot;Int&quot;&gt;4094&lt;/innerUniqueCount&gt;&#13;&#10; &lt;innerPriority type=&quot;Int&quot;&gt;0&lt;/innerPriority&gt;&#13;&#10; &lt;idIncrMode type=&quot;Int&quot;&gt;1&lt;/idIncrMode&gt;&#13;&#10; &lt;innerTpid type=&quot;String&quot;&gt;0x8100&lt;/innerTpid&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/vlanRange&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.MacRange&gt;&#13;&#10; &lt;/macRangeList&gt;&#13;&#10; &lt;vlanRangeList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.VlanIdRange type=&quot;Ixia.Aptixia.StackManager.VlanIdRange&quot; objectid=&quot;adb27552-7165-46a3-bc9e-04914adf40ac&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;/vlanRangeList&gt;&#13;&#10; &lt;childrenList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IpV4V6Plugin type=&quot;Ixia.Aptixia.StackManager.IpV4V6Plugin&quot; objectid=&quot;a916ae0f-0731-405d-ad19-eaade6c515f1&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;rangeList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IpV4V6Range type=&quot;Ixia.Aptixia.StackManager.IpV4V6Range&quot; objectid=&quot;a3559674-8d95-4020-90b3-b42eacaef105&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;1&lt;/enabled&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;IP-R1&lt;/name&gt;&#13;&#10; &lt;ipType type=&quot;String&quot;&gt;IPv4&lt;/ipType&gt;&#13;&#10; &lt;ipAddress type=&quot;String&quot;&gt;10.0.2.20&lt;/ipAddress&gt;&#13;&#10; &lt;prefix type=&quot;Int&quot;&gt;24&lt;/prefix&gt;&#13;&#10; &lt;incrementBy type=&quot;String&quot;&gt;0.0.0.1&lt;/incrementBy&gt;&#13;&#10; &lt;count type=&quot;Int&quot;&gt;1&lt;/count&gt;&#13;&#10; &lt;autoCountEnabled type=&quot;Bool&quot;&gt;0&lt;/autoCountEnabled&gt;&#13;&#10; &lt;gatewayAddress type=&quot;String&quot;&gt;10.0.2.10&lt;/gatewayAddress&gt;&#13;&#10; &lt;gatewayIncrement type=&quot;String&quot;&gt;0.0.0.0&lt;/gatewayIncrement&gt;&#13;&#10; &lt;gatewayIncrementMode type=&quot;String&quot;&gt;perSubnet&lt;/gatewayIncrementMode&gt;&#13;&#10; &lt;enableGatewayArp type=&quot;Bool&quot;&gt;0&lt;/enableGatewayArp&gt;&#13;&#10; &lt;generateStatistics type=&quot;Bool&quot;&gt;0&lt;/generateStatistics&gt;&#13;&#10; &lt;mss type=&quot;Int&quot;&gt;1460&lt;/mss&gt;&#13;&#10; &lt;randomizeAddress type=&quot;Bool&quot;&gt;0&lt;/randomizeAddress&gt;&#13;&#10; &lt;randomizeSeed type=&quot;Int&quot;&gt;2596329041&lt;/randomizeSeed&gt;&#13;&#10; &lt;autoMacGeneration type=&quot;Bool&quot;&gt;1&lt;/autoMacGeneration&gt;&#13;&#10; &lt;macRange type=&quot;Ixia.Aptixia.StackManager.MacRange&quot; objectid=&quot;3011c8a8-a9fd-4b76-a27d-91948113ed4f&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;vlanRange type=&quot;Ixia.Aptixia.StackManager.VlanIdRange&quot; objectid=&quot;adb27552-7165-46a3-bc9e-04914adf40ac&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;atmRange type=&quot;Ixia.Aptixia.StackManager.AtmRange&quot; objectid=&quot;00000000-0000-0000-0000-000000000000&quot; /&gt;&#13;&#10; &lt;pvcRange type=&quot;Ixia.Aptixia.StackManager.PvcRange&quot; objectid=&quot;00000000-0000-0000-0000-000000000000&quot; /&gt;&#13;&#10; &lt;autoIpTypeEnabled type=&quot;Bool&quot;&gt;0&lt;/autoIpTypeEnabled&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IpV4V6Range&gt;&#13;&#10; &lt;/rangeList&gt;&#13;&#10; &lt;rangeGroups type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.RangeGroup type=&quot;Ixia.Aptixia.StackManager.RangeGroup&quot; objectid=&quot;aa33a76b-9c7f-48d9-a537-8d6eeec03662&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;DistGroup1&lt;/name&gt;&#13;&#10; &lt;distribType type=&quot;Ixia.Aptixia.StackManager.RangeGroupSkeleton+eDistributionType&quot;&gt;0&lt;/distribType&gt;&#13;&#10; &lt;rangeList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IpV4V6Range type=&quot;Ixia.Aptixia.StackManager.IpV4V6Range&quot; objectid=&quot;a3559674-8d95-4020-90b3-b42eacaef105&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;/rangeList&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.RangeGroup&gt;&#13;&#10; &lt;/rangeGroups&gt;&#13;&#10; &lt;childrenList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;extensionList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;dscMode type=&quot;Bool&quot;&gt;0&lt;/dscMode&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;IP-1&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;3&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IpV4V6Plugin&gt;&#13;&#10; &lt;/childrenList&gt;&#13;&#10; &lt;extensionList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;dscMode type=&quot;Bool&quot;&gt;0&lt;/dscMode&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;MAC/VLAN-1&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.L2EthernetPlugin&gt;&#13;&#10; &lt;/childrenList&gt;&#13;&#10; &lt;extensionList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;dscMode type=&quot;Bool&quot;&gt;0&lt;/dscMode&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;Ethernet-1&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/stack&gt;&#13;&#10; &lt;globalPluginList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IxLoadSettingsPlugin type=&quot;Ixia.Aptixia.StackManager.IxLoadSettingsPlugin&quot; objectid=&quot;9c6c8594-548e-4ea5-a478-0bfb6252c1ce&quot; version=&quot;1.0.0&quot;&gt;&#13;&#10; &lt;teardownInterfaceWithUser type=&quot;Bool&quot;&gt;0&lt;/teardownInterfaceWithUser&gt;&#13;&#10; &lt;interfaceBehavior type=&quot;Int&quot;&gt;0&lt;/interfaceBehavior&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;Settings-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IxLoadSettingsPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.DnsPlugin type=&quot;Ixia.Aptixia.StackManager.DnsPlugin&quot; objectid=&quot;693c7b7b-327b-4d59-b187-57d7600308e3&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;domain type=&quot;String&quot; /&gt;&#13;&#10; &lt;timeout type=&quot;Int&quot;&gt;30000&lt;/timeout&gt;&#13;&#10; &lt;nameServerList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;searchList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;hostList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;DNS-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.DnsPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.FilterPlugin type=&quot;Ixia.Aptixia.StackManager.FilterPlugin&quot; objectid=&quot;0f6ebdb4-7909-447a-b80a-e132dae33a9b&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;auto type=&quot;Bool&quot;&gt;1&lt;/auto&gt;&#13;&#10; &lt;all type=&quot;Bool&quot;&gt;0&lt;/all&gt;&#13;&#10; &lt;pppoecontrol type=&quot;Bool&quot;&gt;0&lt;/pppoecontrol&gt;&#13;&#10; &lt;pppoenetwork type=&quot;Bool&quot;&gt;0&lt;/pppoenetwork&gt;&#13;&#10; &lt;isis type=&quot;Bool&quot;&gt;0&lt;/isis&gt;&#13;&#10; &lt;ip type=&quot;String&quot; /&gt;&#13;&#10; &lt;tcp type=&quot;String&quot; /&gt;&#13;&#10; &lt;udp type=&quot;String&quot; /&gt;&#13;&#10; &lt;mac type=&quot;String&quot; /&gt;&#13;&#10; &lt;icmp type=&quot;String&quot; /&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;Filter-1&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;3&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.FilterPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.TCPPlugin type=&quot;Ixia.Aptixia.StackManager.TCPPlugin&quot; objectid=&quot;7a893f25-0ac6-41c7-ab5a-511c2068582a&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;bestPerfSettings type=&quot;Bool&quot;&gt;0&lt;/bestPerfSettings&gt;&#13;&#10; &lt;accept_ra_all type=&quot;Bool&quot;&gt;0&lt;/accept_ra_all&gt;&#13;&#10; &lt;tcp_abort_on_overflow type=&quot;Bool&quot;&gt;0&lt;/tcp_abort_on_overflow&gt;&#13;&#10; &lt;tcp_adv_win_scale type=&quot;Int&quot;&gt;2&lt;/tcp_adv_win_scale&gt;&#13;&#10; &lt;tcp_app_win type=&quot;Int&quot;&gt;31&lt;/tcp_app_win&gt;&#13;&#10; &lt;tcp_bic type=&quot;Int&quot;&gt;0&lt;/tcp_bic&gt;&#13;&#10; &lt;tcp_bic_fast_convergence type=&quot;Int&quot;&gt;1&lt;/tcp_bic_fast_convergence&gt;&#13;&#10; &lt;tcp_bic_low_window type=&quot;Int&quot;&gt;14&lt;/tcp_bic_low_window&gt;&#13;&#10; &lt;tcp_dsack type=&quot;Bool&quot;&gt;1&lt;/tcp_dsack&gt;&#13;&#10; &lt;tcp_ecn type=&quot;Bool&quot;&gt;0&lt;/tcp_ecn&gt;&#13;&#10; &lt;tcp_fack type=&quot;Bool&quot;&gt;1&lt;/tcp_fack&gt;&#13;&#10; &lt;tcp_fin_timeout type=&quot;Int&quot;&gt;60&lt;/tcp_fin_timeout&gt;&#13;&#10; &lt;tcp_frto type=&quot;Int&quot;&gt;0&lt;/tcp_frto&gt;&#13;&#10; &lt;tcp_keepalive_intvl type=&quot;Int&quot;&gt;7200&lt;/tcp_keepalive_intvl&gt;&#13;&#10; &lt;tcp_keepalive_probes type=&quot;Int&quot;&gt;75&lt;/tcp_keepalive_probes&gt;&#13;&#10; &lt;tcp_keepalive_time type=&quot;Int&quot;&gt;9&lt;/tcp_keepalive_time&gt;&#13;&#10; &lt;tcp_low_latency type=&quot;Int&quot;&gt;0&lt;/tcp_low_latency&gt;&#13;&#10; &lt;tcp_max_orphans type=&quot;Int&quot;&gt;8192&lt;/tcp_max_orphans&gt;&#13;&#10; &lt;tcp_max_syn_backlog type=&quot;Int&quot;&gt;1024&lt;/tcp_max_syn_backlog&gt;&#13;&#10; &lt;tcp_max_tw_buckets type=&quot;Int&quot;&gt;180000&lt;/tcp_max_tw_buckets&gt;&#13;&#10; &lt;tcp_mem_low type=&quot;Int&quot;&gt;24576&lt;/tcp_mem_low&gt;&#13;&#10; &lt;tcp_mem_pressure type=&quot;Int&quot;&gt;32768&lt;/tcp_mem_pressure&gt;&#13;&#10; &lt;tcp_mem_high type=&quot;Int&quot;&gt;49152&lt;/tcp_mem_high&gt;&#13;&#10; &lt;tcp_moderate_rcvbuf type=&quot;Int&quot;&gt;0&lt;/tcp_moderate_rcvbuf&gt;&#13;&#10; &lt;tcp_no_metrics_save type=&quot;Bool&quot;&gt;0&lt;/tcp_no_metrics_save&gt;&#13;&#10; &lt;tcp_orphan_retries type=&quot;Int&quot;&gt;0&lt;/tcp_orphan_retries&gt;&#13;&#10; &lt;tcp_reordering type=&quot;Int&quot;&gt;3&lt;/tcp_reordering&gt;&#13;&#10; &lt;tcp_retrans_collapse type=&quot;Bool&quot;&gt;1&lt;/tcp_retrans_collapse&gt;&#13;&#10; &lt;tcp_retries1 type=&quot;Int&quot;&gt;3&lt;/tcp_retries1&gt;&#13;&#10; &lt;tcp_retries2 type=&quot;Int&quot;&gt;15&lt;/tcp_retries2&gt;&#13;&#10; &lt;tcp_rfc1337 type=&quot;Bool&quot;&gt;0&lt;/tcp_rfc1337&gt;&#13;&#10; &lt;tcp_rmem_min type=&quot;Int&quot;&gt;4096&lt;/tcp_rmem_min&gt;&#13;&#10; &lt;tcp_rmem_default type=&quot;Int&quot;&gt;1024&lt;/tcp_rmem_default&gt;&#13;&#10; &lt;tcp_rmem_max type=&quot;Int&quot;&gt;262144&lt;/tcp_rmem_max&gt;&#13;&#10; &lt;tcp_sack type=&quot;Bool&quot;&gt;1&lt;/tcp_sack&gt;&#13;&#10; &lt;tcp_stdurg type=&quot;Bool&quot;&gt;0&lt;/tcp_stdurg&gt;&#13;&#10; &lt;tcp_synack_retries type=&quot;Int&quot;&gt;5&lt;/tcp_synack_retries&gt;&#13;&#10; &lt;tcp_syn_retries type=&quot;Int&quot;&gt;5&lt;/tcp_syn_retries&gt;&#13;&#10; &lt;tcp_timestamps type=&quot;Bool&quot;&gt;1&lt;/tcp_timestamps&gt;&#13;&#10; &lt;tcp_tw_recycle type=&quot;Bool&quot;&gt;1&lt;/tcp_tw_recycle&gt;&#13;&#10; &lt;tcp_tw_reuse type=&quot;Bool&quot;&gt;0&lt;/tcp_tw_reuse&gt;&#13;&#10; &lt;tcp_vegas_alpha type=&quot;Int&quot;&gt;2&lt;/tcp_vegas_alpha&gt;&#13;&#10; &lt;tcp_vegas_beta type=&quot;Int&quot;&gt;6&lt;/tcp_vegas_beta&gt;&#13;&#10; &lt;tcp_vegas_cong_avoid type=&quot;Int&quot;&gt;0&lt;/tcp_vegas_cong_avoid&gt;&#13;&#10; &lt;tcp_vegas_gamma type=&quot;Int&quot;&gt;2&lt;/tcp_vegas_gamma&gt;&#13;&#10; &lt;tcp_westwood type=&quot;Int&quot;&gt;0&lt;/tcp_westwood&gt;&#13;&#10; &lt;tcp_window_scaling type=&quot;Bool&quot;&gt;0&lt;/tcp_window_scaling&gt;&#13;&#10; &lt;ip_no_pmtu_disc type=&quot;Bool&quot;&gt;1&lt;/ip_no_pmtu_disc&gt;&#13;&#10; &lt;tcp_wmem_min type=&quot;Int&quot;&gt;4096&lt;/tcp_wmem_min&gt;&#13;&#10; &lt;tcp_wmem_default type=&quot;Int&quot;&gt;1024&lt;/tcp_wmem_default&gt;&#13;&#10; &lt;tcp_wmem_max type=&quot;Int&quot;&gt;262144&lt;/tcp_wmem_max&gt;&#13;&#10; &lt;tcp_ipfrag_time type=&quot;Int&quot;&gt;30&lt;/tcp_ipfrag_time&gt;&#13;&#10; &lt;tcp_port_min type=&quot;Int&quot;&gt;1024&lt;/tcp_port_min&gt;&#13;&#10; &lt;tcp_port_max type=&quot;Int&quot;&gt;65535&lt;/tcp_port_max&gt;&#13;&#10; &lt;tcp_rto_min type=&quot;Int&quot;&gt;1000&lt;/tcp_rto_min&gt;&#13;&#10; &lt;tcp_rto_max type=&quot;Int&quot;&gt;120000&lt;/tcp_rto_max&gt;&#13;&#10; &lt;tcp_tw_rfc1323_strict type=&quot;Bool&quot;&gt;0&lt;/tcp_tw_rfc1323_strict&gt;&#13;&#10; &lt;udp_port_randomization type=&quot;Bool&quot;&gt;0&lt;/udp_port_randomization&gt;&#13;&#10; &lt;disable_min_max_buffer_size type=&quot;Bool&quot;&gt;1&lt;/disable_min_max_buffer_size&gt;&#13;&#10; &lt;llm_hdr_gap type=&quot;Int&quot;&gt;8&lt;/llm_hdr_gap&gt;&#13;&#10; &lt;llm_hdr_gap_ns type=&quot;Int&quot;&gt;10&lt;/llm_hdr_gap_ns&gt;&#13;&#10; &lt;inter_packet_granular_delay type=&quot;Double&quot;&gt;0&lt;/inter_packet_granular_delay&gt;&#13;&#10; &lt;delayed_acks type=&quot;Bool&quot;&gt;1&lt;/delayed_acks&gt;&#13;&#10; &lt;accept_ra_default type=&quot;Bool&quot;&gt;0&lt;/accept_ra_default&gt;&#13;&#10; &lt;rps_needed type=&quot;Bool&quot;&gt;0&lt;/rps_needed&gt;&#13;&#10; &lt;delayed_acks_segments type=&quot;Int&quot;&gt;0&lt;/delayed_acks_segments&gt;&#13;&#10; &lt;delayed_acks_timeout type=&quot;Int&quot;&gt;0&lt;/delayed_acks_timeout&gt;&#13;&#10; &lt;tcp_large_icwnd type=&quot;Int&quot;&gt;0&lt;/tcp_large_icwnd&gt;&#13;&#10; &lt;tcp_mgmt_rmem type=&quot;Int&quot;&gt;87380&lt;/tcp_mgmt_rmem&gt;&#13;&#10; &lt;tcp_mgmt_wmem type=&quot;Int&quot;&gt;32768&lt;/tcp_mgmt_wmem&gt;&#13;&#10; &lt;adjust_tcp_buffers type=&quot;Bool&quot;&gt;1&lt;/adjust_tcp_buffers&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;TCP-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;4&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.TCPPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.GratArpPlugin type=&quot;Ixia.Aptixia.StackManager.GratArpPlugin&quot; objectid=&quot;fc54eec4-41ef-4b6c-9415-bf639013b52d&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;1&lt;/enabled&gt;&#13;&#10; &lt;forwardGratArp type=&quot;Bool&quot;&gt;0&lt;/forwardGratArp&gt;&#13;&#10; &lt;rateControlEnabled type=&quot;Bool&quot;&gt;0&lt;/rateControlEnabled&gt;&#13;&#10; &lt;maxFramesPerSecond type=&quot;Int&quot;&gt;0&lt;/maxFramesPerSecond&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;GratARP-1&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;5&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.GratArpPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.MeshingPlugin type=&quot;Ixia.Aptixia.StackManager.MeshingPlugin&quot; objectid=&quot;b0ccbeae-9db2-4416-bbed-80dcb2a7a9ed&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;trafficMaps type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.MeshingTrafficMap type=&quot;Ixia.Aptixia.StackManager.MeshingTrafficMap&quot; objectid=&quot;6628a634-d6ea-4f86-94a7-816e8fc2917e&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;newClientActivity1!HTTP server_newServerActivity1&lt;/name&gt;&#13;&#10; &lt;configMapFilename type=&quot;String&quot;&gt;newClientActivity1Script.configmap&lt;/configMapFilename&gt;&#13;&#10; &lt;sourceActivityId type=&quot;Int&quot;&gt;0&lt;/sourceActivityId&gt;&#13;&#10; &lt;ipPreference type=&quot;Ixia.Aptixia.StackManager.MeshingTrafficMapSkeleton+eIpPreference&quot;&gt;2&lt;/ipPreference&gt;&#13;&#10; &lt;portRangesString type=&quot;String&quot; /&gt;&#13;&#10; &lt;meshingType type=&quot;Ixia.Aptixia.StackManager.MeshingTrafficMapSkeleton+eMeshingType&quot;&gt;2&lt;/meshingType&gt;&#13;&#10; &lt;destinationActivityId type=&quot;Int&quot;&gt;0&lt;/destinationActivityId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.MeshingTrafficMap&gt;&#13;&#10; &lt;/trafficMaps&gt;&#13;&#10; &lt;activityRangeMapInfoList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;Meshing-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;6&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.MeshingPlugin&gt;&#13;&#10; &lt;/globalPluginList&gt;&#13;&#10; &lt;portList type=&quot;Ixia.RpFramework.Server.Core.ShadowedPropertyStringList&quot; /&gt;&#13;&#10; &lt;typeSpecificData type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IPSecPortGroupData type=&quot;Ixia.Aptixia.StackManager.IPSecPortGroupData&quot; objectid=&quot;df783f7c-615e-47c1-b7f0-1174985ea22e&quot; version=&quot;6.80.2&quot;&gt;&#13;&#10; &lt;role type=&quot;String&quot;&gt;Initiator&lt;/role&gt;&#13;&#10; &lt;associates type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;overrideGlobalOptions type=&quot;Bool&quot;&gt;0&lt;/overrideGlobalOptions&gt;&#13;&#10; &lt;useMaxInitiationRate type=&quot;Bool&quot;&gt;0&lt;/useMaxInitiationRate&gt;&#13;&#10; &lt;maxInitiationRate type=&quot;Int&quot;&gt;50&lt;/maxInitiationRate&gt;&#13;&#10; &lt;useMaxPendingTunnels type=&quot;Bool&quot;&gt;0&lt;/useMaxPendingTunnels&gt;&#13;&#10; &lt;maxPendingTunnels type=&quot;Int&quot;&gt;50&lt;/maxPendingTunnels&gt;&#13;&#10; &lt;teardownRate type=&quot;Int&quot;&gt;10&lt;/teardownRate&gt;&#13;&#10; &lt;enableESPPerStreamStats type=&quot;Bool&quot;&gt;0&lt;/enableESPPerStreamStats&gt;&#13;&#10; &lt;enableESPReplayStats type=&quot;Bool&quot;&gt;0&lt;/enableESPReplayStats&gt;&#13;&#10; &lt;activities type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;pcpuLogLevel type=&quot;String&quot;&gt;0&lt;/pcpuLogLevel&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IPSecPortGroupData&gt;&#13;&#10; &lt;/typeSpecificData&gt;&#13;&#10; &lt;virtualMode type=&quot;Bool&quot;&gt;0&lt;/virtualMode&gt;&#13;&#10; &lt;allowedVirtualModeTypes type=&quot;Ixia.RpFramework.Server.Core.ShadowedPropertyStringList&quot; /&gt;&#13;&#10; &lt;doOwnership type=&quot;Bool&quot;&gt;0&lt;/doOwnership&gt;&#13;&#10; &lt;branchToNicMap type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;cpuAggregation type=&quot;Bool&quot;&gt;0&lt;/cpuAggregation&gt;&#13;&#10; &lt;activePort type=&quot;String&quot; /&gt;&#13;&#10; &lt;networkLayersManager type=&quot;Ixia.Aptixia.StackManager.NetworkLayersManager&quot; objectid=&quot;3d3cf9ef-8aab-4388-9252-4baea80122d3&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;3&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/networkLayersManager&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.PortGroup&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.PortGroup type=&quot;Ixia.Aptixia.StackManager.PortGroup&quot; objectid=&quot;c4ecfc60-64ac-4dc2-9410-e0f58d84f229&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;server network&lt;/name&gt;&#13;&#10; &lt;category type=&quot;String&quot; /&gt;&#13;&#10; &lt;stack type=&quot;Ixia.Aptixia.StackManager.L1EthernetPlugin&quot; objectid=&quot;1bd9f1bc-9959-464e-b1e8-ddb0bb4d0181&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;autoNegotiate type=&quot;Bool&quot;&gt;1&lt;/autoNegotiate&gt;&#13;&#10; &lt;speed type=&quot;String&quot;&gt;k100FD&lt;/speed&gt;&#13;&#10; &lt;advertise10Half type=&quot;Bool&quot;&gt;1&lt;/advertise10Half&gt;&#13;&#10; &lt;advertise10Full type=&quot;Bool&quot;&gt;1&lt;/advertise10Full&gt;&#13;&#10; &lt;advertise100Half type=&quot;Bool&quot;&gt;1&lt;/advertise100Half&gt;&#13;&#10; &lt;advertise100Full type=&quot;Bool&quot;&gt;1&lt;/advertise100Full&gt;&#13;&#10; &lt;advertise1000Full type=&quot;Bool&quot;&gt;1&lt;/advertise1000Full&gt;&#13;&#10; &lt;advertise2500Full type=&quot;Bool&quot;&gt;1&lt;/advertise2500Full&gt;&#13;&#10; &lt;advertise5000Full type=&quot;Bool&quot;&gt;1&lt;/advertise5000Full&gt;&#13;&#10; &lt;advertise10000Full type=&quot;Bool&quot;&gt;1&lt;/advertise10000Full&gt;&#13;&#10; &lt;cardDualPhy type=&quot;Ixia.Aptixia.StackManager.DualPhyPlugin&quot; objectid=&quot;4fe8412b-7d4c-4ebe-a0d4-480a4401b3d0&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;medium type=&quot;String&quot;&gt;auto&lt;/medium&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;4&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/cardDualPhy&gt;&#13;&#10; &lt;cardElm type=&quot;Ixia.Aptixia.StackManager.EthernetELMPlugin&quot; objectid=&quot;4dfec118-30e8-4494-b7c7-e28518e7848a&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;negotiateMasterSlave type=&quot;Bool&quot;&gt;1&lt;/negotiateMasterSlave&gt;&#13;&#10; &lt;negotiationType type=&quot;String&quot;&gt;master&lt;/negotiationType&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;4&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/cardElm&gt;&#13;&#10; &lt;enableFlowControl type=&quot;Bool&quot;&gt;0&lt;/enableFlowControl&gt;&#13;&#10; &lt;directedAddress type=&quot;String&quot;&gt;01:80:C2:00:00:01&lt;/directedAddress&gt;&#13;&#10; &lt;dataCenter type=&quot;Ixia.Aptixia.StackManager.DataCenterSettings&quot; objectid=&quot;123fecc5-cb5e-43e9-92a1-b053dc56d0f3&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;dcSupported type=&quot;Bool&quot;&gt;1&lt;/dcSupported&gt;&#13;&#10; &lt;dcEnabled type=&quot;Bool&quot;&gt;0&lt;/dcEnabled&gt;&#13;&#10; &lt;dcFlowControl type=&quot;Ixia.Aptixia.StackManager.DataCenterSettingsSkeleton+eFlowControlType&quot;&gt;0&lt;/dcFlowControl&gt;&#13;&#10; &lt;dcMode type=&quot;Ixia.Aptixia.StackManager.DataCenterSettingsSkeleton+eDataCenterMode&quot;&gt;2&lt;/dcMode&gt;&#13;&#10; &lt;dcPfcMapping type=&quot;IntList&quot; /&gt;&#13;&#10; &lt;dcPfcPauseEnable type=&quot;Bool&quot;&gt;0&lt;/dcPfcPauseEnable&gt;&#13;&#10; &lt;dcPfcPauseDelay type=&quot;Int&quot;&gt;1&lt;/dcPfcPauseDelay&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;4&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/dataCenter&gt;&#13;&#10; &lt;childrenList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.L2EthernetPlugin type=&quot;Ixia.Aptixia.StackManager.L2EthernetPlugin&quot; objectid=&quot;35ff711b-53f7-4c74-9e8b-98d35adaa6bf&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;macRangeList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.MacRange type=&quot;Ixia.Aptixia.StackManager.MacRange&quot; objectid=&quot;f91c9f52-8150-4d0f-b657-498ed241835c&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;1&lt;/enabled&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;MAC-R2&lt;/name&gt;&#13;&#10; &lt;mac type=&quot;String&quot;&gt;00:0A:00:03:14:00&lt;/mac&gt;&#13;&#10; &lt;incrementBy type=&quot;String&quot;&gt;00:00:00:00:00:01&lt;/incrementBy&gt;&#13;&#10; &lt;mtu type=&quot;Int&quot;&gt;1500&lt;/mtu&gt;&#13;&#10; &lt;count type=&quot;Int&quot;&gt;1&lt;/count&gt;&#13;&#10; &lt;vlanRange type=&quot;Ixia.Aptixia.StackManager.VlanIdRange&quot; objectid=&quot;57fa3f41-7695-42d7-ac26-68924bb1e8bb&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;VLAN-R2&lt;/name&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;0&lt;/enabled&gt;&#13;&#10; &lt;firstId type=&quot;Int&quot;&gt;1&lt;/firstId&gt;&#13;&#10; &lt;incrementStep type=&quot;Int&quot;&gt;32&lt;/incrementStep&gt;&#13;&#10; &lt;increment type=&quot;Int&quot;&gt;1&lt;/increment&gt;&#13;&#10; &lt;uniqueCount type=&quot;Int&quot;&gt;4094&lt;/uniqueCount&gt;&#13;&#10; &lt;priority type=&quot;Int&quot;&gt;0&lt;/priority&gt;&#13;&#10; &lt;tpid type=&quot;String&quot;&gt;0x8100&lt;/tpid&gt;&#13;&#10; &lt;innerEnable type=&quot;Bool&quot;&gt;0&lt;/innerEnable&gt;&#13;&#10; &lt;innerFirstId type=&quot;Int&quot;&gt;1&lt;/innerFirstId&gt;&#13;&#10; &lt;innerIncrementStep type=&quot;Int&quot;&gt;1&lt;/innerIncrementStep&gt;&#13;&#10; &lt;innerIncrement type=&quot;Int&quot;&gt;1&lt;/innerIncrement&gt;&#13;&#10; &lt;innerUniqueCount type=&quot;Int&quot;&gt;4094&lt;/innerUniqueCount&gt;&#13;&#10; &lt;innerPriority type=&quot;Int&quot;&gt;0&lt;/innerPriority&gt;&#13;&#10; &lt;idIncrMode type=&quot;Int&quot;&gt;1&lt;/idIncrMode&gt;&#13;&#10; &lt;innerTpid type=&quot;String&quot;&gt;0x8100&lt;/innerTpid&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/vlanRange&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.MacRange&gt;&#13;&#10; &lt;/macRangeList&gt;&#13;&#10; &lt;vlanRangeList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.VlanIdRange type=&quot;Ixia.Aptixia.StackManager.VlanIdRange&quot; objectid=&quot;57fa3f41-7695-42d7-ac26-68924bb1e8bb&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;/vlanRangeList&gt;&#13;&#10; &lt;childrenList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IpV4V6Plugin type=&quot;Ixia.Aptixia.StackManager.IpV4V6Plugin&quot; objectid=&quot;b85b184d-9bb4-48c2-a029-e633fee7a3c8&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;rangeList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IpV4V6Range type=&quot;Ixia.Aptixia.StackManager.IpV4V6Range&quot; objectid=&quot;1d9bf537-0c3d-4fdf-9b85-0a622cc77649&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;1&lt;/enabled&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;IP-R2&lt;/name&gt;&#13;&#10; &lt;ipType type=&quot;String&quot;&gt;IPv4&lt;/ipType&gt;&#13;&#10; &lt;ipAddress type=&quot;String&quot;&gt;10.0.3.20&lt;/ipAddress&gt;&#13;&#10; &lt;prefix type=&quot;Int&quot;&gt;24&lt;/prefix&gt;&#13;&#10; &lt;incrementBy type=&quot;String&quot;&gt;0.0.0.1&lt;/incrementBy&gt;&#13;&#10; &lt;count type=&quot;Int&quot;&gt;1&lt;/count&gt;&#13;&#10; &lt;autoCountEnabled type=&quot;Bool&quot;&gt;0&lt;/autoCountEnabled&gt;&#13;&#10; &lt;gatewayAddress type=&quot;String&quot;&gt;10.0.3.10&lt;/gatewayAddress&gt;&#13;&#10; &lt;gatewayIncrement type=&quot;String&quot;&gt;0.0.0.0&lt;/gatewayIncrement&gt;&#13;&#10; &lt;gatewayIncrementMode type=&quot;String&quot;&gt;perSubnet&lt;/gatewayIncrementMode&gt;&#13;&#10; &lt;enableGatewayArp type=&quot;Bool&quot;&gt;0&lt;/enableGatewayArp&gt;&#13;&#10; &lt;generateStatistics type=&quot;Bool&quot;&gt;0&lt;/generateStatistics&gt;&#13;&#10; &lt;mss type=&quot;Int&quot;&gt;1460&lt;/mss&gt;&#13;&#10; &lt;randomizeAddress type=&quot;Bool&quot;&gt;0&lt;/randomizeAddress&gt;&#13;&#10; &lt;randomizeSeed type=&quot;Int&quot;&gt;463911585&lt;/randomizeSeed&gt;&#13;&#10; &lt;autoMacGeneration type=&quot;Bool&quot;&gt;1&lt;/autoMacGeneration&gt;&#13;&#10; &lt;macRange type=&quot;Ixia.Aptixia.StackManager.MacRange&quot; objectid=&quot;f91c9f52-8150-4d0f-b657-498ed241835c&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;vlanRange type=&quot;Ixia.Aptixia.StackManager.VlanIdRange&quot; objectid=&quot;57fa3f41-7695-42d7-ac26-68924bb1e8bb&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;atmRange type=&quot;Ixia.Aptixia.StackManager.AtmRange&quot; objectid=&quot;00000000-0000-0000-0000-000000000000&quot; /&gt;&#13;&#10; &lt;pvcRange type=&quot;Ixia.Aptixia.StackManager.PvcRange&quot; objectid=&quot;00000000-0000-0000-0000-000000000000&quot; /&gt;&#13;&#10; &lt;autoIpTypeEnabled type=&quot;Bool&quot;&gt;0&lt;/autoIpTypeEnabled&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IpV4V6Range&gt;&#13;&#10; &lt;/rangeList&gt;&#13;&#10; &lt;rangeGroups type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.RangeGroup type=&quot;Ixia.Aptixia.StackManager.RangeGroup&quot; objectid=&quot;b2c21c73-bfe3-4fbc-9804-b5a8b307d893&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;DistGroup1&lt;/name&gt;&#13;&#10; &lt;distribType type=&quot;Ixia.Aptixia.StackManager.RangeGroupSkeleton+eDistributionType&quot;&gt;0&lt;/distribType&gt;&#13;&#10; &lt;rangeList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IpV4V6Range type=&quot;Ixia.Aptixia.StackManager.IpV4V6Range&quot; objectid=&quot;1d9bf537-0c3d-4fdf-9b85-0a622cc77649&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;/rangeList&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.RangeGroup&gt;&#13;&#10; &lt;/rangeGroups&gt;&#13;&#10; &lt;childrenList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;extensionList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;dscMode type=&quot;Bool&quot;&gt;0&lt;/dscMode&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;IP-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;6&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IpV4V6Plugin&gt;&#13;&#10; &lt;/childrenList&gt;&#13;&#10; &lt;extensionList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;dscMode type=&quot;Bool&quot;&gt;0&lt;/dscMode&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;MAC/VLAN-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;5&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.L2EthernetPlugin&gt;&#13;&#10; &lt;/childrenList&gt;&#13;&#10; &lt;extensionList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;dscMode type=&quot;Bool&quot;&gt;0&lt;/dscMode&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;Ethernet-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;4&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/stack&gt;&#13;&#10; &lt;globalPluginList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IxLoadSettingsPlugin type=&quot;Ixia.Aptixia.StackManager.IxLoadSettingsPlugin&quot; objectid=&quot;993e33c6-e1f7-4967-982e-82a032f8c61a&quot; version=&quot;1.0.0&quot;&gt;&#13;&#10; &lt;teardownInterfaceWithUser type=&quot;Bool&quot;&gt;0&lt;/teardownInterfaceWithUser&gt;&#13;&#10; &lt;interfaceBehavior type=&quot;Int&quot;&gt;0&lt;/interfaceBehavior&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;Settings-4&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;7&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IxLoadSettingsPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.DnsPlugin type=&quot;Ixia.Aptixia.StackManager.DnsPlugin&quot; objectid=&quot;36ca84d7-ff44-45b7-b75d-aec38b753161&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;domain type=&quot;String&quot; /&gt;&#13;&#10; &lt;timeout type=&quot;Int&quot;&gt;30000&lt;/timeout&gt;&#13;&#10; &lt;nameServerList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;searchList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;hostList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;DNS-4&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;8&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.DnsPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.FilterPlugin type=&quot;Ixia.Aptixia.StackManager.FilterPlugin&quot; objectid=&quot;25c5acdd-9dd3-4802-93b6-b10651820b66&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;auto type=&quot;Bool&quot;&gt;1&lt;/auto&gt;&#13;&#10; &lt;all type=&quot;Bool&quot;&gt;0&lt;/all&gt;&#13;&#10; &lt;pppoecontrol type=&quot;Bool&quot;&gt;0&lt;/pppoecontrol&gt;&#13;&#10; &lt;pppoenetwork type=&quot;Bool&quot;&gt;0&lt;/pppoenetwork&gt;&#13;&#10; &lt;isis type=&quot;Bool&quot;&gt;0&lt;/isis&gt;&#13;&#10; &lt;ip type=&quot;String&quot; /&gt;&#13;&#10; &lt;tcp type=&quot;String&quot; /&gt;&#13;&#10; &lt;udp type=&quot;String&quot; /&gt;&#13;&#10; &lt;mac type=&quot;String&quot; /&gt;&#13;&#10; &lt;icmp type=&quot;String&quot; /&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;Filter-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;9&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.FilterPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.TCPPlugin type=&quot;Ixia.Aptixia.StackManager.TCPPlugin&quot; objectid=&quot;6259328b-97c2-4390-8ab1-f16bf3459219&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;bestPerfSettings type=&quot;Bool&quot;&gt;0&lt;/bestPerfSettings&gt;&#13;&#10; &lt;accept_ra_all type=&quot;Bool&quot;&gt;0&lt;/accept_ra_all&gt;&#13;&#10; &lt;tcp_abort_on_overflow type=&quot;Bool&quot;&gt;0&lt;/tcp_abort_on_overflow&gt;&#13;&#10; &lt;tcp_adv_win_scale type=&quot;Int&quot;&gt;2&lt;/tcp_adv_win_scale&gt;&#13;&#10; &lt;tcp_app_win type=&quot;Int&quot;&gt;31&lt;/tcp_app_win&gt;&#13;&#10; &lt;tcp_bic type=&quot;Int&quot;&gt;0&lt;/tcp_bic&gt;&#13;&#10; &lt;tcp_bic_fast_convergence type=&quot;Int&quot;&gt;1&lt;/tcp_bic_fast_convergence&gt;&#13;&#10; &lt;tcp_bic_low_window type=&quot;Int&quot;&gt;14&lt;/tcp_bic_low_window&gt;&#13;&#10; &lt;tcp_dsack type=&quot;Bool&quot;&gt;1&lt;/tcp_dsack&gt;&#13;&#10; &lt;tcp_ecn type=&quot;Bool&quot;&gt;0&lt;/tcp_ecn&gt;&#13;&#10; &lt;tcp_fack type=&quot;Bool&quot;&gt;1&lt;/tcp_fack&gt;&#13;&#10; &lt;tcp_fin_timeout type=&quot;Int&quot;&gt;60&lt;/tcp_fin_timeout&gt;&#13;&#10; &lt;tcp_frto type=&quot;Int&quot;&gt;0&lt;/tcp_frto&gt;&#13;&#10; &lt;tcp_keepalive_intvl type=&quot;Int&quot;&gt;7200&lt;/tcp_keepalive_intvl&gt;&#13;&#10; &lt;tcp_keepalive_probes type=&quot;Int&quot;&gt;75&lt;/tcp_keepalive_probes&gt;&#13;&#10; &lt;tcp_keepalive_time type=&quot;Int&quot;&gt;9&lt;/tcp_keepalive_time&gt;&#13;&#10; &lt;tcp_low_latency type=&quot;Int&quot;&gt;0&lt;/tcp_low_latency&gt;&#13;&#10; &lt;tcp_max_orphans type=&quot;Int&quot;&gt;8192&lt;/tcp_max_orphans&gt;&#13;&#10; &lt;tcp_max_syn_backlog type=&quot;Int&quot;&gt;1024&lt;/tcp_max_syn_backlog&gt;&#13;&#10; &lt;tcp_max_tw_buckets type=&quot;Int&quot;&gt;180000&lt;/tcp_max_tw_buckets&gt;&#13;&#10; &lt;tcp_mem_low type=&quot;Int&quot;&gt;24576&lt;/tcp_mem_low&gt;&#13;&#10; &lt;tcp_mem_pressure type=&quot;Int&quot;&gt;32768&lt;/tcp_mem_pressure&gt;&#13;&#10; &lt;tcp_mem_high type=&quot;Int&quot;&gt;49152&lt;/tcp_mem_high&gt;&#13;&#10; &lt;tcp_moderate_rcvbuf type=&quot;Int&quot;&gt;0&lt;/tcp_moderate_rcvbuf&gt;&#13;&#10; &lt;tcp_no_metrics_save type=&quot;Bool&quot;&gt;0&lt;/tcp_no_metrics_save&gt;&#13;&#10; &lt;tcp_orphan_retries type=&quot;Int&quot;&gt;0&lt;/tcp_orphan_retries&gt;&#13;&#10; &lt;tcp_reordering type=&quot;Int&quot;&gt;3&lt;/tcp_reordering&gt;&#13;&#10; &lt;tcp_retrans_collapse type=&quot;Bool&quot;&gt;1&lt;/tcp_retrans_collapse&gt;&#13;&#10; &lt;tcp_retries1 type=&quot;Int&quot;&gt;3&lt;/tcp_retries1&gt;&#13;&#10; &lt;tcp_retries2 type=&quot;Int&quot;&gt;15&lt;/tcp_retries2&gt;&#13;&#10; &lt;tcp_rfc1337 type=&quot;Bool&quot;&gt;0&lt;/tcp_rfc1337&gt;&#13;&#10; &lt;tcp_rmem_min type=&quot;Int&quot;&gt;4096&lt;/tcp_rmem_min&gt;&#13;&#10; &lt;tcp_rmem_default type=&quot;Int&quot;&gt;1024&lt;/tcp_rmem_default&gt;&#13;&#10; &lt;tcp_rmem_max type=&quot;Int&quot;&gt;262144&lt;/tcp_rmem_max&gt;&#13;&#10; &lt;tcp_sack type=&quot;Bool&quot;&gt;1&lt;/tcp_sack&gt;&#13;&#10; &lt;tcp_stdurg type=&quot;Bool&quot;&gt;0&lt;/tcp_stdurg&gt;&#13;&#10; &lt;tcp_synack_retries type=&quot;Int&quot;&gt;5&lt;/tcp_synack_retries&gt;&#13;&#10; &lt;tcp_syn_retries type=&quot;Int&quot;&gt;5&lt;/tcp_syn_retries&gt;&#13;&#10; &lt;tcp_timestamps type=&quot;Bool&quot;&gt;1&lt;/tcp_timestamps&gt;&#13;&#10; &lt;tcp_tw_recycle type=&quot;Bool&quot;&gt;1&lt;/tcp_tw_recycle&gt;&#13;&#10; &lt;tcp_tw_reuse type=&quot;Bool&quot;&gt;0&lt;/tcp_tw_reuse&gt;&#13;&#10; &lt;tcp_vegas_alpha type=&quot;Int&quot;&gt;2&lt;/tcp_vegas_alpha&gt;&#13;&#10; &lt;tcp_vegas_beta type=&quot;Int&quot;&gt;6&lt;/tcp_vegas_beta&gt;&#13;&#10; &lt;tcp_vegas_cong_avoid type=&quot;Int&quot;&gt;0&lt;/tcp_vegas_cong_avoid&gt;&#13;&#10; &lt;tcp_vegas_gamma type=&quot;Int&quot;&gt;2&lt;/tcp_vegas_gamma&gt;&#13;&#10; &lt;tcp_westwood type=&quot;Int&quot;&gt;0&lt;/tcp_westwood&gt;&#13;&#10; &lt;tcp_window_scaling type=&quot;Bool&quot;&gt;0&lt;/tcp_window_scaling&gt;&#13;&#10; &lt;ip_no_pmtu_disc type=&quot;Bool&quot;&gt;1&lt;/ip_no_pmtu_disc&gt;&#13;&#10; &lt;tcp_wmem_min type=&quot;Int&quot;&gt;4096&lt;/tcp_wmem_min&gt;&#13;&#10; &lt;tcp_wmem_default type=&quot;Int&quot;&gt;1024&lt;/tcp_wmem_default&gt;&#13;&#10; &lt;tcp_wmem_max type=&quot;Int&quot;&gt;262144&lt;/tcp_wmem_max&gt;&#13;&#10; &lt;tcp_ipfrag_time type=&quot;Int&quot;&gt;30&lt;/tcp_ipfrag_time&gt;&#13;&#10; &lt;tcp_port_min type=&quot;Int&quot;&gt;1024&lt;/tcp_port_min&gt;&#13;&#10; &lt;tcp_port_max type=&quot;Int&quot;&gt;65535&lt;/tcp_port_max&gt;&#13;&#10; &lt;tcp_rto_min type=&quot;Int&quot;&gt;1000&lt;/tcp_rto_min&gt;&#13;&#10; &lt;tcp_rto_max type=&quot;Int&quot;&gt;120000&lt;/tcp_rto_max&gt;&#13;&#10; &lt;tcp_tw_rfc1323_strict type=&quot;Bool&quot;&gt;0&lt;/tcp_tw_rfc1323_strict&gt;&#13;&#10; &lt;udp_port_randomization type=&quot;Bool&quot;&gt;0&lt;/udp_port_randomization&gt;&#13;&#10; &lt;disable_min_max_buffer_size type=&quot;Bool&quot;&gt;1&lt;/disable_min_max_buffer_size&gt;&#13;&#10; &lt;llm_hdr_gap type=&quot;Int&quot;&gt;8&lt;/llm_hdr_gap&gt;&#13;&#10; &lt;llm_hdr_gap_ns type=&quot;Int&quot;&gt;10&lt;/llm_hdr_gap_ns&gt;&#13;&#10; &lt;inter_packet_granular_delay type=&quot;Double&quot;&gt;0&lt;/inter_packet_granular_delay&gt;&#13;&#10; &lt;delayed_acks type=&quot;Bool&quot;&gt;1&lt;/delayed_acks&gt;&#13;&#10; &lt;accept_ra_default type=&quot;Bool&quot;&gt;0&lt;/accept_ra_default&gt;&#13;&#10; &lt;rps_needed type=&quot;Bool&quot;&gt;0&lt;/rps_needed&gt;&#13;&#10; &lt;delayed_acks_segments type=&quot;Int&quot;&gt;0&lt;/delayed_acks_segments&gt;&#13;&#10; &lt;delayed_acks_timeout type=&quot;Int&quot;&gt;0&lt;/delayed_acks_timeout&gt;&#13;&#10; &lt;tcp_large_icwnd type=&quot;Int&quot;&gt;0&lt;/tcp_large_icwnd&gt;&#13;&#10; &lt;tcp_mgmt_rmem type=&quot;Int&quot;&gt;87380&lt;/tcp_mgmt_rmem&gt;&#13;&#10; &lt;tcp_mgmt_wmem type=&quot;Int&quot;&gt;32768&lt;/tcp_mgmt_wmem&gt;&#13;&#10; &lt;adjust_tcp_buffers type=&quot;Bool&quot;&gt;1&lt;/adjust_tcp_buffers&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;TCP-4&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;10&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.TCPPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.GratArpPlugin type=&quot;Ixia.Aptixia.StackManager.GratArpPlugin&quot; objectid=&quot;3eedf749-efa4-43a0-87ae-e110a77c88d4&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;1&lt;/enabled&gt;&#13;&#10; &lt;forwardGratArp type=&quot;Bool&quot;&gt;0&lt;/forwardGratArp&gt;&#13;&#10; &lt;rateControlEnabled type=&quot;Bool&quot;&gt;0&lt;/rateControlEnabled&gt;&#13;&#10; &lt;maxFramesPerSecond type=&quot;Int&quot;&gt;0&lt;/maxFramesPerSecond&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;GratARP-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;11&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.GratArpPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.MeshingPlugin type=&quot;Ixia.Aptixia.StackManager.MeshingPlugin&quot; objectid=&quot;284f9992-65d8-4027-a155-709f1965f892&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;trafficMaps type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;activityRangeMapInfoList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;Meshing-1&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;12&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.MeshingPlugin&gt;&#13;&#10; &lt;/globalPluginList&gt;&#13;&#10; &lt;portList type=&quot;Ixia.RpFramework.Server.Core.ShadowedPropertyStringList&quot; /&gt;&#13;&#10; &lt;typeSpecificData type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IPSecPortGroupData type=&quot;Ixia.Aptixia.StackManager.IPSecPortGroupData&quot; objectid=&quot;f65f12f2-018c-46f5-a9c5-a1f6f7151909&quot; version=&quot;6.80.2&quot;&gt;&#13;&#10; &lt;role type=&quot;String&quot;&gt;Initiator&lt;/role&gt;&#13;&#10; &lt;associates type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;overrideGlobalOptions type=&quot;Bool&quot;&gt;0&lt;/overrideGlobalOptions&gt;&#13;&#10; &lt;useMaxInitiationRate type=&quot;Bool&quot;&gt;0&lt;/useMaxInitiationRate&gt;&#13;&#10; &lt;maxInitiationRate type=&quot;Int&quot;&gt;50&lt;/maxInitiationRate&gt;&#13;&#10; &lt;useMaxPendingTunnels type=&quot;Bool&quot;&gt;0&lt;/useMaxPendingTunnels&gt;&#13;&#10; &lt;maxPendingTunnels type=&quot;Int&quot;&gt;50&lt;/maxPendingTunnels&gt;&#13;&#10; &lt;teardownRate type=&quot;Int&quot;&gt;10&lt;/teardownRate&gt;&#13;&#10; &lt;enableESPPerStreamStats type=&quot;Bool&quot;&gt;0&lt;/enableESPPerStreamStats&gt;&#13;&#10; &lt;enableESPReplayStats type=&quot;Bool&quot;&gt;0&lt;/enableESPReplayStats&gt;&#13;&#10; &lt;activities type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;pcpuLogLevel type=&quot;String&quot;&gt;0&lt;/pcpuLogLevel&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IPSecPortGroupData&gt;&#13;&#10; &lt;/typeSpecificData&gt;&#13;&#10; &lt;virtualMode type=&quot;Bool&quot;&gt;0&lt;/virtualMode&gt;&#13;&#10; &lt;allowedVirtualModeTypes type=&quot;Ixia.RpFramework.Server.Core.ShadowedPropertyStringList&quot; /&gt;&#13;&#10; &lt;doOwnership type=&quot;Bool&quot;&gt;0&lt;/doOwnership&gt;&#13;&#10; &lt;branchToNicMap type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;cpuAggregation type=&quot;Bool&quot;&gt;0&lt;/cpuAggregation&gt;&#13;&#10; &lt;activePort type=&quot;String&quot; /&gt;&#13;&#10; &lt;networkLayersManager type=&quot;Ixia.Aptixia.StackManager.NetworkLayersManager&quot; objectid=&quot;60b1273d-78d3-4813-8cea-ec9a7101b8a3&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;4&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/networkLayersManager&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.PortGroup&gt;&#13;&#10; &lt;/portGroupList&gt;&#13;&#10; &lt;externalProperties type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyManager&quot; objectid=&quot;1f2452bf-e52a-4db2-ba47-e5cc8bf61b5e&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;properties type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;145671ff-93a5-4ecc-8c83-59b2c3c67be9&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;IxCatLTEUEUeRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;9f07a941-ad2f-46b0-8c75-911862a21039&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;SixRdRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;a221ab5c-faae-4940-bfad-5d41d44f1427&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;L2tpRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;d811442b-bfb8-42f0-bbf8-6bdb6fc9b66b&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;DHCPServerRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;f252cff3-b919-4e74-9f62-9e9c5ab5d324&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;MobileSubscribersRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;500dfc8b-2e6a-401f-84c0-f6907f60c00e&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPSgsnS3RangeUe&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;693cb176-f3d8-4073-8a02-fabdc0bdd3fb&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPRange_SGW&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;ec983bf9-07f0-46b2-99a0-354114f42501&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EmulatedRouterRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;5d0f0eb8-40af-4292-8ff2-a57e7903601d&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;PppoxRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;653fae09-ba19-443c-8f8b-9483c0b86b9a&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;GTPNGAPRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;c886be8c-c207-4bb4-90d5-17be54556d58&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;IxCatRNCIuPSUeRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;00e75214-5166-406b-90e5-2b83567ae5cf&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;GTPNGUERange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;50d10ee7-45ce-46d2-ae8d-ecd3b1806067&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPUERange_S5S8_SGW&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;c2f310a4-6ea4-4459-be3b-f3b3365c590a&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;GTPGRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;7e458bed-5e36-42d6-812d-3794be52766e&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPPcrfRange_S5S8_PGW&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;7d225fda-6432-4de3-9750-c19bbc957703&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;DSLiteRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;e25dd669-ffc5-493d-a2b5-fd5627bf2ee8&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPSGSNRangeUe&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;7ac0b7d4-6df9-4e1f-86d2-f0a494b3f20b&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;SlaacRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;25699a2c-ab22-417b-9072-894523e98008&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPUERange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;482a10c3-0ac7-44d9-9fa9-b43ba3a9901d&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;DHCPRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;a0f03753-923d-4421-8c4f-0ed78f00fc44&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;AtmRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;fb5cd68e-b4b0-4fd4-ae18-4100c0035642&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;IxCatMMEApnRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;62677b6a-080e-4cc3-919b-71fa90ae410f&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;IxCatENodeBUuApnRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;2e0fd6e3-470e-48df-ab8d-cc21b9d80393&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;GTPSUERange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;175f3104-0d2a-44f9-b712-fed3b170f8cb&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;IpV4V6Range&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;d1f37e1e-db44-4bac-acb8-b242dee8e371&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;MacRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;61ccdebc-84e6-464d-be14-2b3ddedab9d2&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;DualStackIPRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;d0678cd8-998e-42ab-8f0d-bfcb5370eac2&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPUERange_S2a_TWAN&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;d8350364-51c6-4a1b-af9f-72c9c235a636&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;IxCatSGSNIuPSApnRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;613d02a1-db1e-415d-b4bb-8b73b4477cf4&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;IxCatENodeBSimUeRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;9a41f718-b55e-44c7-a0cc-b1fcf8204c20&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;S6dRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;4c26fe62-a63d-4c40-8e15-c58ad8fba8d0&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;UERangeBase&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;5c2ca63f-3335-4ab7-963e-440817448538&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPMmeS10RangeUe&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;51a5eccc-a68d-4730-8a48-32019c547c28&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;S6aRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;3010c4ad-f31e-4676-9e61-bb25cf9c1bbb&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;BmScRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;ef1677e4-f390-4a78-b61a-f7650cf5faea&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;MBmsGwRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;24322b98-7a2a-4d2d-a4ee-4cde0f0e8b64&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;PptpRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;3b7f72db-e223-46ac-b71d-75e47f78e682&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPPMIPHostRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;/properties&gt;&#13;&#10; &lt;values type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalProperty type=&quot;Ixia.Aptixia.StackManager.ExternalProperty&quot; objectid=&quot;6804ae67-3bd7-471b-8796-ee1e4773c2f1&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;target type=&quot;Ixia.Aptixia.StackManager.IpV4V6Range&quot; objectid=&quot;a3559674-8d95-4020-90b3-b42eacaef105&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;value type=&quot;Ixia.Aptixia.StackManager.ExternalValueBoolean&quot; objectid=&quot;7efcd429-2c48-41bd-bdc5-489dbfcfc49a&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;value type=&quot;Bool&quot;&gt;0&lt;/value&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/value&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;1&lt;/enabled&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalProperty&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalProperty type=&quot;Ixia.Aptixia.StackManager.ExternalProperty&quot; objectid=&quot;a63d8276-65bc-4bc2-8202-6461c6399ef9&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;target type=&quot;Ixia.Aptixia.StackManager.IpV4V6Range&quot; objectid=&quot;1d9bf537-0c3d-4fdf-9b85-0a622cc77649&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;value type=&quot;Ixia.Aptixia.StackManager.ExternalValueBoolean&quot; objectid=&quot;09d7b134-2921-4759-bbdb-ff3a5a1966d7&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;value type=&quot;Bool&quot;&gt;0&lt;/value&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/value&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;1&lt;/enabled&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalProperty&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalProperty type=&quot;Ixia.Aptixia.StackManager.ExternalProperty&quot; objectid=&quot;0cd9f099-242e-4b03-965f-d343c60181e6&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;target type=&quot;Ixia.Aptixia.StackManager.MacRange&quot; objectid=&quot;3011c8a8-a9fd-4b76-a27d-91948113ed4f&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;value type=&quot;Ixia.Aptixia.StackManager.ExternalValueBoolean&quot; objectid=&quot;503aa008-2481-419f-a223-c90b2c25c17e&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;value type=&quot;Bool&quot;&gt;0&lt;/value&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;3&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/value&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;0&lt;/enabled&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;3&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalProperty&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalProperty type=&quot;Ixia.Aptixia.StackManager.ExternalProperty&quot; objectid=&quot;0b8d2c01-19ac-4f28-924e-660676d978da&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;target type=&quot;Ixia.Aptixia.StackManager.MacRange&quot; objectid=&quot;f91c9f52-8150-4d0f-b657-498ed241835c&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;value type=&quot;Ixia.Aptixia.StackManager.ExternalValueBoolean&quot; objectid=&quot;41c694b3-bb55-48fe-9604-8b003540242f&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;value type=&quot;Bool&quot;&gt;0&lt;/value&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;4&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/value&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;0&lt;/enabled&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;4&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalProperty&gt;&#13;&#10; &lt;/values&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/externalProperties&gt;&#13;&#10; &lt;availableNetworkTimelines type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;typeSpecificData type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.MacSessionData type=&quot;Ixia.Aptixia.StackManager.MacSessionData&quot; objectid=&quot;a9c7aa59-e015-4ffd-bb82-5d877ae9c1a8&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;duplicateCheckingScope type=&quot;Ixia.Aptixia.StackManager.MacSessionDataSkeleton+eMacValidationOptions&quot;&gt;2&lt;/duplicateCheckingScope&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.MacSessionData&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IpSessionData type=&quot;Ixia.Aptixia.StackManager.IpSessionData&quot; objectid=&quot;34a78d72-1fc5-4875-9fe1-b4db66b1b4c4&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;duplicateCheckingScope type=&quot;Ixia.Aptixia.StackManager.IpSessionDataSkeleton+eIpValidationOptions&quot;&gt;2&lt;/duplicateCheckingScope&gt;&#13;&#10; &lt;enableGatewayArp type=&quot;Bool&quot;&gt;0&lt;/enableGatewayArp&gt;&#13;&#10; &lt;gatewayArpRequestRate type=&quot;Int&quot;&gt;300&lt;/gatewayArpRequestRate&gt;&#13;&#10; &lt;maxOutstandingGatewayArpRequests type=&quot;Int&quot;&gt;300&lt;/maxOutstandingGatewayArpRequests&gt;&#13;&#10; &lt;ignoreUnresolvedIPs type=&quot;Bool&quot;&gt;0&lt;/ignoreUnresolvedIPs&gt;&#13;&#10; &lt;sendAllRequests type=&quot;Bool&quot;&gt;0&lt;/sendAllRequests&gt;&#13;&#10; &lt;individualARPTimeOut type=&quot;Int&quot;&gt;500&lt;/individualARPTimeOut&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IpSessionData&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IxLoadSessionData type=&quot;Ixia.Aptixia.StackManager.IxLoadSessionData&quot; objectid=&quot;1e24447f-69f1-4030-8b2d-25a18c7160ca&quot; version=&quot;1.0.0&quot;&gt;&#13;&#10; &lt;portGroupList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.PortGroup type=&quot;Ixia.Aptixia.StackManager.PortGroup&quot; objectid=&quot;865be042-32d5-426a-9e75-0908c943801f&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.PortGroup type=&quot;Ixia.Aptixia.StackManager.PortGroup&quot; objectid=&quot;c4ecfc60-64ac-4dc2-9410-e0f58d84f229&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;/portGroupList&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IxLoadSessionData&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ImpairSessionData type=&quot;Ixia.Aptixia.StackManager.ImpairSessionData&quot; objectid=&quot;94b53c2c-0747-41c2-838d-0e0e15f31766&quot; version=&quot;6.70.13&quot;&gt;&#13;&#10; &lt;profiles type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ImpairProfile type=&quot;Ixia.Aptixia.StackManager.ImpairProfile&quot; objectid=&quot;90dd3511-93c1-49fa-8e38-db774db9fe17&quot; version=&quot;6.70.13&quot;&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;DefaultProfile&lt;/name&gt;&#13;&#10; &lt;defaultp type=&quot;Bool&quot;&gt;1&lt;/defaultp&gt;&#13;&#10; &lt;seed type=&quot;Int&quot;&gt;0&lt;/seed&gt;&#13;&#10; &lt;addDelay type=&quot;Bool&quot;&gt;1&lt;/addDelay&gt;&#13;&#10; &lt;delay type=&quot;Int&quot;&gt;20&lt;/delay&gt;&#13;&#10; &lt;jitter type=&quot;Int&quot;&gt;0&lt;/jitter&gt;&#13;&#10; &lt;addDrop type=&quot;Bool&quot;&gt;0&lt;/addDrop&gt;&#13;&#10; &lt;drop type=&quot;Double&quot;&gt;10&lt;/drop&gt;&#13;&#10; &lt;addDropSequence type=&quot;Bool&quot;&gt;0&lt;/addDropSequence&gt;&#13;&#10; &lt;dropSequenceSkip type=&quot;Int&quot;&gt;10&lt;/dropSequenceSkip&gt;&#13;&#10; &lt;dropSequenceLength type=&quot;Int&quot;&gt;1&lt;/dropSequenceLength&gt;&#13;&#10; &lt;addReorder type=&quot;Bool&quot;&gt;0&lt;/addReorder&gt;&#13;&#10; &lt;gap type=&quot;Int&quot;&gt;10&lt;/gap&gt;&#13;&#10; &lt;reorder type=&quot;Int&quot;&gt;20&lt;/reorder&gt;&#13;&#10; &lt;reorderLength type=&quot;Int&quot;&gt;1&lt;/reorderLength&gt;&#13;&#10; &lt;addReorderPI type=&quot;Bool&quot;&gt;0&lt;/addReorderPI&gt;&#13;&#10; &lt;reorderPISkip type=&quot;Int&quot;&gt;10&lt;/reorderPISkip&gt;&#13;&#10; &lt;reorderPILength type=&quot;Int&quot;&gt;1&lt;/reorderPILength&gt;&#13;&#10; &lt;reorderPIInterval type=&quot;Int&quot;&gt;1&lt;/reorderPIInterval&gt;&#13;&#10; &lt;reorderPITimeout type=&quot;Int&quot;&gt;1000&lt;/reorderPITimeout&gt;&#13;&#10; &lt;addDuplicate type=&quot;Bool&quot;&gt;0&lt;/addDuplicate&gt;&#13;&#10; &lt;duplicate type=&quot;Double&quot;&gt;10&lt;/duplicate&gt;&#13;&#10; &lt;addFragment type=&quot;Bool&quot;&gt;0&lt;/addFragment&gt;&#13;&#10; &lt;fragment type=&quot;Double&quot;&gt;10&lt;/fragment&gt;&#13;&#10; &lt;mtu type=&quot;Int&quot;&gt;1000&lt;/mtu&gt;&#13;&#10; &lt;addFragmentSequence type=&quot;Bool&quot;&gt;0&lt;/addFragmentSequence&gt;&#13;&#10; &lt;fragmentSequenceSkip type=&quot;Int&quot;&gt;10&lt;/fragmentSequenceSkip&gt;&#13;&#10; &lt;fragmentSequenceLength type=&quot;Int&quot;&gt;1&lt;/fragmentSequenceLength&gt;&#13;&#10; &lt;mtuSequence type=&quot;Int&quot;&gt;1000&lt;/mtuSequence&gt;&#13;&#10; &lt;sendFragmentsInReverseOrder type=&quot;Bool&quot;&gt;0&lt;/sendFragmentsInReverseOrder&gt;&#13;&#10; &lt;sendFirstFragmentOnly type=&quot;Bool&quot;&gt;0&lt;/sendFirstFragmentOnly&gt;&#13;&#10; &lt;sendOverlappingFragments type=&quot;Bool&quot;&gt;0&lt;/sendOverlappingFragments&gt;&#13;&#10; &lt;addBandwidth type=&quot;Bool&quot;&gt;0&lt;/addBandwidth&gt;&#13;&#10; &lt;bandwidth type=&quot;Double&quot;&gt;1&lt;/bandwidth&gt;&#13;&#10; &lt;bandwidthUnits type=&quot;String&quot;&gt;mbps&lt;/bandwidthUnits&gt;&#13;&#10; &lt;addBandwidthIn type=&quot;Bool&quot;&gt;0&lt;/addBandwidthIn&gt;&#13;&#10; &lt;bandwidthIn type=&quot;Double&quot;&gt;1&lt;/bandwidthIn&gt;&#13;&#10; &lt;bandwidthUnitsIn type=&quot;String&quot;&gt;mbps&lt;/bandwidthUnitsIn&gt;&#13;&#10; &lt;destinationIp type=&quot;String&quot;&gt;any&lt;/destinationIp&gt;&#13;&#10; &lt;sourceIp type=&quot;String&quot;&gt;any&lt;/sourceIp&gt;&#13;&#10; &lt;sourcePort type=&quot;Int&quot;&gt;0&lt;/sourcePort&gt;&#13;&#10; &lt;destinationPort type=&quot;Int&quot;&gt;0&lt;/destinationPort&gt;&#13;&#10; &lt;protocol type=&quot;String&quot;&gt;any&lt;/protocol&gt;&#13;&#10; &lt;typeOfService type=&quot;String&quot;&gt;any&lt;/typeOfService&gt;&#13;&#10; &lt;addTcpFlagsFilter type=&quot;Bool&quot;&gt;0&lt;/addTcpFlagsFilter&gt;&#13;&#10; &lt;selectTcpFlags type=&quot;String&quot;&gt;SYN;RST;ACK&lt;/selectTcpFlags&gt;&#13;&#10; &lt;expectTcpFlags type=&quot;String&quot;&gt;SYN&lt;/expectTcpFlags&gt;&#13;&#10; &lt;impairOrder type=&quot;String&quot;&gt;Delay;Drop;DropSeq;Reorder;ReorderPI;Duplicate;Fragment;FragmentSeq;Bandwidth&lt;/impairOrder&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ImpairProfile&gt;&#13;&#10; &lt;/profiles&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ImpairSessionData&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IPSecSessionData type=&quot;Ixia.Aptixia.StackManager.IPSecSessionData&quot; objectid=&quot;bd2f0ea4-4278-49c8-9600-18cd2c8ed639&quot; version=&quot;6.80.2&quot;&gt;&#13;&#10; &lt;ipsecTunnelSetup type=&quot;Ixia.Aptixia.StackManager.IPSecTunnelSetup&quot; objectid=&quot;1bacc8a0-dda0-4e0c-b013-4d8618dc80b6&quot; version=&quot;6.80.2&quot;&gt;&#13;&#10; &lt;tunnelSetupTimeout type=&quot;Int&quot;&gt;30&lt;/tunnelSetupTimeout&gt;&#13;&#10; &lt;tunnelRetransmissionTimeout type=&quot;Int&quot;&gt;30&lt;/tunnelRetransmissionTimeout&gt;&#13;&#10; &lt;numRetries type=&quot;Int&quot;&gt;0&lt;/numRetries&gt;&#13;&#10; &lt;retryInterval type=&quot;Int&quot;&gt;10&lt;/retryInterval&gt;&#13;&#10; &lt;retryDelay type=&quot;Int&quot;&gt;10&lt;/retryDelay&gt;&#13;&#10; &lt;testType type=&quot;String&quot;&gt;P2D&lt;/testType&gt;&#13;&#10; &lt;logLevel type=&quot;String&quot;&gt;3&lt;/logLevel&gt;&#13;&#10; &lt;sendCiscoVid type=&quot;Bool&quot;&gt;0&lt;/sendCiscoVid&gt;&#13;&#10; &lt;useMaxInitiationRate type=&quot;Bool&quot;&gt;0&lt;/useMaxInitiationRate&gt;&#13;&#10; &lt;useMaxPendingTunnels type=&quot;Bool&quot;&gt;0&lt;/useMaxPendingTunnels&gt;&#13;&#10; &lt;enableRekey type=&quot;Bool&quot;&gt;1&lt;/enableRekey&gt;&#13;&#10; &lt;rekeyRetries type=&quot;Int&quot;&gt;3&lt;/rekeyRetries&gt;&#13;&#10; &lt;rekeyFuzzPercentage type=&quot;Int&quot;&gt;0&lt;/rekeyFuzzPercentage&gt;&#13;&#10; &lt;rekeyMargin type=&quot;Int&quot;&gt;10&lt;/rekeyMargin&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/ipsecTunnelSetup&gt;&#13;&#10; &lt;ipsecCertificates type=&quot;Ixia.Aptixia.StackManager.IPSecCertificates&quot; objectid=&quot;2e324324-bf74-4ad3-afbb-62e44f01c31a&quot; version=&quot;6.80.2&quot;&gt;&#13;&#10; &lt;uniqueCert type=&quot;Bool&quot;&gt;0&lt;/uniqueCert&gt;&#13;&#10; &lt;certSource type=&quot;String&quot;&gt;kNewCert&lt;/certSource&gt;&#13;&#10; &lt;caURL type=&quot;String&quot; /&gt;&#13;&#10; &lt;caDN type=&quot;String&quot; /&gt;&#13;&#10; &lt;certSubjectDN type=&quot;String&quot; /&gt;&#13;&#10; &lt;certSubjectAltDN type=&quot;String&quot; /&gt;&#13;&#10; &lt;remoteIkeId type=&quot;String&quot; /&gt;&#13;&#10; &lt;bitSize type=&quot;String&quot;&gt;k512&lt;/bitSize&gt;&#13;&#10; &lt;saveCert type=&quot;Bool&quot;&gt;1&lt;/saveCert&gt;&#13;&#10; &lt;cacheCertFolder type=&quot;String&quot;&gt;C:\Program Files\Ixia\CachedCerts&lt;/cacheCertFolder&gt;&#13;&#10; &lt;certParentFolder type=&quot;String&quot;&gt;C:\Program Files\Ixia\CachedCerts&lt;/certParentFolder&gt;&#13;&#10; &lt;certNumber type=&quot;String&quot; /&gt;&#13;&#10; &lt;caCertNumber type=&quot;String&quot; /&gt;&#13;&#10; &lt;earlyExpDate type=&quot;String&quot; /&gt;&#13;&#10; &lt;lateExpDate type=&quot;String&quot; /&gt;&#13;&#10; &lt;usePerRangeCertNameExp type=&quot;Bool&quot;&gt;0&lt;/usePerRangeCertNameExp&gt;&#13;&#10; &lt;checkCrl type=&quot;Bool&quot;&gt;0&lt;/checkCrl&gt;&#13;&#10; &lt;crlOverrideEnable type=&quot;Bool&quot;&gt;0&lt;/crlOverrideEnable&gt;&#13;&#10; &lt;crlOverrideUrl type=&quot;String&quot; /&gt;&#13;&#10; &lt;checkOcsp type=&quot;Bool&quot;&gt;0&lt;/checkOcsp&gt;&#13;&#10; &lt;ocspOverrideEnable type=&quot;Bool&quot;&gt;0&lt;/ocspOverrideEnable&gt;&#13;&#10; &lt;ocspOverrideUrl type=&quot;String&quot; /&gt;&#13;&#10; &lt;unknownIsRevoked type=&quot;Bool&quot;&gt;0&lt;/unknownIsRevoked&gt;&#13;&#10; &lt;certProto type=&quot;String&quot;&gt;kSCEP&lt;/certProto&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/ipsecCertificates&gt;&#13;&#10; &lt;ipsecCertManager type=&quot;Ixia.Aptixia.StackManager.IPSecCertManager&quot; objectid=&quot;f3dc4ef0-e9a1-48a2-b69f-c5d2b485e897&quot; version=&quot;6.80.2&quot;&gt;&#13;&#10; &lt;caURL type=&quot;String&quot; /&gt;&#13;&#10; &lt;caDN type=&quot;String&quot;&gt;CN=RootCA,C=RO,L=Bucharest,O=Ixia,OU=IxLoad,IP:201.121.87.2,email:ixia@ixiacom.com&lt;/caDN&gt;&#13;&#10; &lt;certSubjectDN type=&quot;String&quot;&gt;CN=IxiaVPN,C=RO,L=Bucharest,O=Ixia&lt;/certSubjectDN&gt;&#13;&#10; &lt;keyGenAlgo type=&quot;String&quot;&gt;kRSA_512&lt;/keyGenAlgo&gt;&#13;&#10; &lt;cacheCertFolder type=&quot;String&quot;&gt;C:\Program Files\Ixia\CachedCerts&lt;/cacheCertFolder&gt;&#13;&#10; &lt;caKeyFile type=&quot;String&quot;&gt;C:\Program Files\Ixia\ca-priv.key&lt;/caKeyFile&gt;&#13;&#10; &lt;caCrtFile type=&quot;String&quot;&gt;C:\Program Files\Ixia\ca-cert.crt&lt;/caCrtFile&gt;&#13;&#10; &lt;certNumber type=&quot;Int&quot;&gt;1&lt;/certNumber&gt;&#13;&#10; &lt;certProto type=&quot;String&quot;&gt;kSCEP&lt;/certProto&gt;&#13;&#10; &lt;createRootCA type=&quot;Bool&quot;&gt;0&lt;/createRootCA&gt;&#13;&#10; &lt;uniqueCert type=&quot;Bool&quot;&gt;0&lt;/uniqueCert&gt;&#13;&#10; &lt;descFilePath type=&quot;String&quot;&gt;C:\Program Files\Ixia\CachedCerts\sample.desc&lt;/descFilePath&gt;&#13;&#10; &lt;useDescFile type=&quot;Bool&quot;&gt;0&lt;/useDescFile&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/ipsecCertManager&gt;&#13;&#10; &lt;eapSimTuples type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;eapAkaTuples type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;maxInitiationRate type=&quot;Int&quot;&gt;50&lt;/maxInitiationRate&gt;&#13;&#10; &lt;maxPendingTunnels type=&quot;Int&quot;&gt;50&lt;/maxPendingTunnels&gt;&#13;&#10; &lt;negotiationStartDelay type=&quot;Int&quot;&gt;0&lt;/negotiationStartDelay&gt;&#13;&#10; &lt;teardownRate type=&quot;Int&quot;&gt;10&lt;/teardownRate&gt;&#13;&#10; &lt;burstInitiation type=&quot;Bool&quot;&gt;0&lt;/burstInitiation&gt;&#13;&#10; &lt;parallelInitiation type=&quot;Bool&quot;&gt;0&lt;/parallelInitiation&gt;&#13;&#10; &lt;enableWildcardTsi type=&quot;Bool&quot;&gt;0&lt;/enableWildcardTsi&gt;&#13;&#10; &lt;enableWildcardTsr type=&quot;Bool&quot;&gt;0&lt;/enableWildcardTsr&gt;&#13;&#10; &lt;enablePlutoWildcardTsi type=&quot;Bool&quot;&gt;0&lt;/enablePlutoWildcardTsi&gt;&#13;&#10; &lt;enablePlutoModeCfgWildcardTsr type=&quot;Bool&quot;&gt;1&lt;/enablePlutoModeCfgWildcardTsr&gt;&#13;&#10; &lt;enablePlutoS2SWildcardTsr type=&quot;Bool&quot;&gt;0&lt;/enablePlutoS2SWildcardTsr&gt;&#13;&#10; &lt;payloadAttrTypes type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IPSecSessionData&gt;&#13;&#10; &lt;/typeSpecificData&gt;&#13;&#10; &lt;statViewManager type=&quot;Ixia.Aptixia.StackManager.StatViewManager&quot; objectid=&quot;7256ce27-286c-475d-b198-09b4ae306f73&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;enableStats type=&quot;Bool&quot;&gt;1&lt;/enableStats&gt;&#13;&#10; &lt;enableOverviewStats type=&quot;Bool&quot;&gt;1&lt;/enableOverviewStats&gt;&#13;&#10; &lt;enablePerSessionStats type=&quot;Bool&quot;&gt;1&lt;/enablePerSessionStats&gt;&#13;&#10; &lt;/statViewManager&gt;&#13;&#10; &lt;waitForLinkUp type=&quot;Bool&quot;&gt;0&lt;/waitForLinkUp&gt;&#13;&#10; &lt;overloadProtection type=&quot;Bool&quot;&gt;1&lt;/overloadProtection&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.SMSession&gt;&#13;&#10;&lt;/rpf&gt;</xml>
+ <xml type="str">&lt;rpf&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.SMSession type=&quot;Ixia.Aptixia.StackManager.SMSession&quot; objectid=&quot;72e85c05-6776-493c-9970-832db25a81b7&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;doWaitLinkUp type=&quot;Bool&quot;&gt;0&lt;/doWaitLinkUp&gt;&#13;&#10; &lt;doGratArp type=&quot;Bool&quot;&gt;0&lt;/doGratArp&gt;&#13;&#10; &lt;subscribeToGratArpNotifications type=&quot;Bool&quot;&gt;0&lt;/subscribeToGratArpNotifications&gt;&#13;&#10; &lt;doInterfaceCheck type=&quot;Bool&quot;&gt;0&lt;/doInterfaceCheck&gt;&#13;&#10; &lt;rebootPortsBeforeConfigure type=&quot;Bool&quot;&gt;0&lt;/rebootPortsBeforeConfigure&gt;&#13;&#10; &lt;testDuration type=&quot;Int&quot;&gt;10000&lt;/testDuration&gt;&#13;&#10; &lt;checkLinkState type=&quot;Bool&quot;&gt;0&lt;/checkLinkState&gt;&#13;&#10; &lt;portGroupList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.PortGroup type=&quot;Ixia.Aptixia.StackManager.PortGroup&quot; objectid=&quot;865be042-32d5-426a-9e75-0908c943801f&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;uplink_0&lt;/name&gt;&#13;&#10; &lt;category type=&quot;String&quot; /&gt;&#13;&#10; &lt;stack type=&quot;Ixia.Aptixia.StackManager.L1EthernetPlugin&quot; objectid=&quot;1dcd6e1b-17cd-45a1-875a-cbea40d3468c&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;autoNegotiate type=&quot;Bool&quot;&gt;1&lt;/autoNegotiate&gt;&#13;&#10; &lt;speed type=&quot;String&quot;&gt;k100FD&lt;/speed&gt;&#13;&#10; &lt;advertise10Half type=&quot;Bool&quot;&gt;1&lt;/advertise10Half&gt;&#13;&#10; &lt;advertise10Full type=&quot;Bool&quot;&gt;1&lt;/advertise10Full&gt;&#13;&#10; &lt;advertise100Half type=&quot;Bool&quot;&gt;1&lt;/advertise100Half&gt;&#13;&#10; &lt;advertise100Full type=&quot;Bool&quot;&gt;1&lt;/advertise100Full&gt;&#13;&#10; &lt;advertise1000Full type=&quot;Bool&quot;&gt;1&lt;/advertise1000Full&gt;&#13;&#10; &lt;advertise2500Full type=&quot;Bool&quot;&gt;1&lt;/advertise2500Full&gt;&#13;&#10; &lt;advertise5000Full type=&quot;Bool&quot;&gt;1&lt;/advertise5000Full&gt;&#13;&#10; &lt;advertise10000Full type=&quot;Bool&quot;&gt;1&lt;/advertise10000Full&gt;&#13;&#10; &lt;cardDualPhy type=&quot;Ixia.Aptixia.StackManager.DualPhyPlugin&quot; objectid=&quot;b458c333-b4d4-48ef-bd38-3b456f72f8c8&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;medium type=&quot;String&quot;&gt;auto&lt;/medium&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/cardDualPhy&gt;&#13;&#10; &lt;cardElm type=&quot;Ixia.Aptixia.StackManager.EthernetELMPlugin&quot; objectid=&quot;28c0383a-76a7-4750-8162-2ad946ddac97&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;negotiateMasterSlave type=&quot;Bool&quot;&gt;1&lt;/negotiateMasterSlave&gt;&#13;&#10; &lt;negotiationType type=&quot;String&quot;&gt;master&lt;/negotiationType&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/cardElm&gt;&#13;&#10; &lt;enableFlowControl type=&quot;Bool&quot;&gt;0&lt;/enableFlowControl&gt;&#13;&#10; &lt;directedAddress type=&quot;String&quot;&gt;01:80:C2:00:00:01&lt;/directedAddress&gt;&#13;&#10; &lt;dataCenter type=&quot;Ixia.Aptixia.StackManager.DataCenterSettings&quot; objectid=&quot;b9a0be2e-3880-4100-9e29-9b474f9301f4&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;dcSupported type=&quot;Bool&quot;&gt;1&lt;/dcSupported&gt;&#13;&#10; &lt;dcEnabled type=&quot;Bool&quot;&gt;0&lt;/dcEnabled&gt;&#13;&#10; &lt;dcFlowControl type=&quot;Ixia.Aptixia.StackManager.DataCenterSettingsSkeleton+eFlowControlType&quot;&gt;0&lt;/dcFlowControl&gt;&#13;&#10; &lt;dcMode type=&quot;Ixia.Aptixia.StackManager.DataCenterSettingsSkeleton+eDataCenterMode&quot;&gt;2&lt;/dcMode&gt;&#13;&#10; &lt;dcPfcMapping type=&quot;IntList&quot; /&gt;&#13;&#10; &lt;dcPfcPauseEnable type=&quot;Bool&quot;&gt;0&lt;/dcPfcPauseEnable&gt;&#13;&#10; &lt;dcPfcPauseDelay type=&quot;Int&quot;&gt;1&lt;/dcPfcPauseDelay&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/dataCenter&gt;&#13;&#10; &lt;childrenList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.L2EthernetPlugin type=&quot;Ixia.Aptixia.StackManager.L2EthernetPlugin&quot; objectid=&quot;e0232591-010e-492c-8a28-75e436f4adb2&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;macRangeList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.MacRange type=&quot;Ixia.Aptixia.StackManager.MacRange&quot; objectid=&quot;3011c8a8-a9fd-4b76-a27d-91948113ed4f&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;1&lt;/enabled&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;MAC-R1&lt;/name&gt;&#13;&#10; &lt;mac type=&quot;String&quot;&gt;00:0A:00:02:14:00&lt;/mac&gt;&#13;&#10; &lt;incrementBy type=&quot;String&quot;&gt;00:00:00:00:00:01&lt;/incrementBy&gt;&#13;&#10; &lt;mtu type=&quot;Int&quot;&gt;1500&lt;/mtu&gt;&#13;&#10; &lt;count type=&quot;Int&quot;&gt;1&lt;/count&gt;&#13;&#10; &lt;vlanRange type=&quot;Ixia.Aptixia.StackManager.VlanIdRange&quot; objectid=&quot;adb27552-7165-46a3-bc9e-04914adf40ac&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;VLAN-R1&lt;/name&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;0&lt;/enabled&gt;&#13;&#10; &lt;firstId type=&quot;Int&quot;&gt;1&lt;/firstId&gt;&#13;&#10; &lt;incrementStep type=&quot;Int&quot;&gt;100&lt;/incrementStep&gt;&#13;&#10; &lt;increment type=&quot;Int&quot;&gt;1&lt;/increment&gt;&#13;&#10; &lt;uniqueCount type=&quot;Int&quot;&gt;4094&lt;/uniqueCount&gt;&#13;&#10; &lt;priority type=&quot;Int&quot;&gt;0&lt;/priority&gt;&#13;&#10; &lt;tpid type=&quot;String&quot;&gt;0x8100&lt;/tpid&gt;&#13;&#10; &lt;innerEnable type=&quot;Bool&quot;&gt;0&lt;/innerEnable&gt;&#13;&#10; &lt;innerFirstId type=&quot;Int&quot;&gt;1&lt;/innerFirstId&gt;&#13;&#10; &lt;innerIncrementStep type=&quot;Int&quot;&gt;1&lt;/innerIncrementStep&gt;&#13;&#10; &lt;innerIncrement type=&quot;Int&quot;&gt;1&lt;/innerIncrement&gt;&#13;&#10; &lt;innerUniqueCount type=&quot;Int&quot;&gt;4094&lt;/innerUniqueCount&gt;&#13;&#10; &lt;innerPriority type=&quot;Int&quot;&gt;0&lt;/innerPriority&gt;&#13;&#10; &lt;idIncrMode type=&quot;Int&quot;&gt;1&lt;/idIncrMode&gt;&#13;&#10; &lt;innerTpid type=&quot;String&quot;&gt;0x8100&lt;/innerTpid&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/vlanRange&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.MacRange&gt;&#13;&#10; &lt;/macRangeList&gt;&#13;&#10; &lt;vlanRangeList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.VlanIdRange type=&quot;Ixia.Aptixia.StackManager.VlanIdRange&quot; objectid=&quot;adb27552-7165-46a3-bc9e-04914adf40ac&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;/vlanRangeList&gt;&#13;&#10; &lt;childrenList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IpV4V6Plugin type=&quot;Ixia.Aptixia.StackManager.IpV4V6Plugin&quot; objectid=&quot;a916ae0f-0731-405d-ad19-eaade6c515f1&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;rangeList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IpV4V6Range type=&quot;Ixia.Aptixia.StackManager.IpV4V6Range&quot; objectid=&quot;a3559674-8d95-4020-90b3-b42eacaef105&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;1&lt;/enabled&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;IP-R1&lt;/name&gt;&#13;&#10; &lt;ipType type=&quot;String&quot;&gt;IPv4&lt;/ipType&gt;&#13;&#10; &lt;ipAddress type=&quot;String&quot;&gt;10.0.2.20&lt;/ipAddress&gt;&#13;&#10; &lt;prefix type=&quot;Int&quot;&gt;24&lt;/prefix&gt;&#13;&#10; &lt;incrementBy type=&quot;String&quot;&gt;0.0.0.1&lt;/incrementBy&gt;&#13;&#10; &lt;count type=&quot;Int&quot;&gt;1&lt;/count&gt;&#13;&#10; &lt;autoCountEnabled type=&quot;Bool&quot;&gt;0&lt;/autoCountEnabled&gt;&#13;&#10; &lt;gatewayAddress type=&quot;String&quot;&gt;10.0.2.10&lt;/gatewayAddress&gt;&#13;&#10; &lt;gatewayIncrement type=&quot;String&quot;&gt;0.0.0.0&lt;/gatewayIncrement&gt;&#13;&#10; &lt;gatewayIncrementMode type=&quot;String&quot;&gt;perSubnet&lt;/gatewayIncrementMode&gt;&#13;&#10; &lt;enableGatewayArp type=&quot;Bool&quot;&gt;0&lt;/enableGatewayArp&gt;&#13;&#10; &lt;generateStatistics type=&quot;Bool&quot;&gt;0&lt;/generateStatistics&gt;&#13;&#10; &lt;mss type=&quot;Int&quot;&gt;1460&lt;/mss&gt;&#13;&#10; &lt;randomizeAddress type=&quot;Bool&quot;&gt;0&lt;/randomizeAddress&gt;&#13;&#10; &lt;randomizeSeed type=&quot;Int&quot;&gt;2596329041&lt;/randomizeSeed&gt;&#13;&#10; &lt;autoMacGeneration type=&quot;Bool&quot;&gt;1&lt;/autoMacGeneration&gt;&#13;&#10; &lt;macRange type=&quot;Ixia.Aptixia.StackManager.MacRange&quot; objectid=&quot;3011c8a8-a9fd-4b76-a27d-91948113ed4f&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;vlanRange type=&quot;Ixia.Aptixia.StackManager.VlanIdRange&quot; objectid=&quot;adb27552-7165-46a3-bc9e-04914adf40ac&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;atmRange type=&quot;Ixia.Aptixia.StackManager.AtmRange&quot; objectid=&quot;00000000-0000-0000-0000-000000000000&quot; /&gt;&#13;&#10; &lt;pvcRange type=&quot;Ixia.Aptixia.StackManager.PvcRange&quot; objectid=&quot;00000000-0000-0000-0000-000000000000&quot; /&gt;&#13;&#10; &lt;autoIpTypeEnabled type=&quot;Bool&quot;&gt;0&lt;/autoIpTypeEnabled&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IpV4V6Range&gt;&#13;&#10; &lt;/rangeList&gt;&#13;&#10; &lt;rangeGroups type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.RangeGroup type=&quot;Ixia.Aptixia.StackManager.RangeGroup&quot; objectid=&quot;aa33a76b-9c7f-48d9-a537-8d6eeec03662&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;DistGroup1&lt;/name&gt;&#13;&#10; &lt;distribType type=&quot;Ixia.Aptixia.StackManager.RangeGroupSkeleton+eDistributionType&quot;&gt;0&lt;/distribType&gt;&#13;&#10; &lt;rangeList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IpV4V6Range type=&quot;Ixia.Aptixia.StackManager.IpV4V6Range&quot; objectid=&quot;a3559674-8d95-4020-90b3-b42eacaef105&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;/rangeList&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.RangeGroup&gt;&#13;&#10; &lt;/rangeGroups&gt;&#13;&#10; &lt;childrenList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;extensionList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;dscMode type=&quot;Bool&quot;&gt;0&lt;/dscMode&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;IP-1&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;3&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IpV4V6Plugin&gt;&#13;&#10; &lt;/childrenList&gt;&#13;&#10; &lt;extensionList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;dscMode type=&quot;Bool&quot;&gt;0&lt;/dscMode&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;MAC/VLAN-1&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.L2EthernetPlugin&gt;&#13;&#10; &lt;/childrenList&gt;&#13;&#10; &lt;extensionList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;dscMode type=&quot;Bool&quot;&gt;0&lt;/dscMode&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;Ethernet-1&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/stack&gt;&#13;&#10; &lt;globalPluginList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IxLoadSettingsPlugin type=&quot;Ixia.Aptixia.StackManager.IxLoadSettingsPlugin&quot; objectid=&quot;9c6c8594-548e-4ea5-a478-0bfb6252c1ce&quot; version=&quot;1.0.0&quot;&gt;&#13;&#10; &lt;teardownInterfaceWithUser type=&quot;Bool&quot;&gt;0&lt;/teardownInterfaceWithUser&gt;&#13;&#10; &lt;interfaceBehavior type=&quot;Int&quot;&gt;0&lt;/interfaceBehavior&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;Settings-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IxLoadSettingsPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.DnsPlugin type=&quot;Ixia.Aptixia.StackManager.DnsPlugin&quot; objectid=&quot;693c7b7b-327b-4d59-b187-57d7600308e3&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;domain type=&quot;String&quot; /&gt;&#13;&#10; &lt;timeout type=&quot;Int&quot;&gt;30000&lt;/timeout&gt;&#13;&#10; &lt;nameServerList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;searchList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;hostList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;DNS-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.DnsPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.FilterPlugin type=&quot;Ixia.Aptixia.StackManager.FilterPlugin&quot; objectid=&quot;0f6ebdb4-7909-447a-b80a-e132dae33a9b&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;auto type=&quot;Bool&quot;&gt;1&lt;/auto&gt;&#13;&#10; &lt;all type=&quot;Bool&quot;&gt;0&lt;/all&gt;&#13;&#10; &lt;pppoecontrol type=&quot;Bool&quot;&gt;0&lt;/pppoecontrol&gt;&#13;&#10; &lt;pppoenetwork type=&quot;Bool&quot;&gt;0&lt;/pppoenetwork&gt;&#13;&#10; &lt;isis type=&quot;Bool&quot;&gt;0&lt;/isis&gt;&#13;&#10; &lt;ip type=&quot;String&quot; /&gt;&#13;&#10; &lt;tcp type=&quot;String&quot; /&gt;&#13;&#10; &lt;udp type=&quot;String&quot; /&gt;&#13;&#10; &lt;mac type=&quot;String&quot; /&gt;&#13;&#10; &lt;icmp type=&quot;String&quot; /&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;Filter-1&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;3&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.FilterPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.TCPPlugin type=&quot;Ixia.Aptixia.StackManager.TCPPlugin&quot; objectid=&quot;7a893f25-0ac6-41c7-ab5a-511c2068582a&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;bestPerfSettings type=&quot;Bool&quot;&gt;0&lt;/bestPerfSettings&gt;&#13;&#10; &lt;accept_ra_all type=&quot;Bool&quot;&gt;0&lt;/accept_ra_all&gt;&#13;&#10; &lt;tcp_abort_on_overflow type=&quot;Bool&quot;&gt;0&lt;/tcp_abort_on_overflow&gt;&#13;&#10; &lt;tcp_adv_win_scale type=&quot;Int&quot;&gt;2&lt;/tcp_adv_win_scale&gt;&#13;&#10; &lt;tcp_app_win type=&quot;Int&quot;&gt;31&lt;/tcp_app_win&gt;&#13;&#10; &lt;tcp_bic type=&quot;Int&quot;&gt;0&lt;/tcp_bic&gt;&#13;&#10; &lt;tcp_bic_fast_convergence type=&quot;Int&quot;&gt;1&lt;/tcp_bic_fast_convergence&gt;&#13;&#10; &lt;tcp_bic_low_window type=&quot;Int&quot;&gt;14&lt;/tcp_bic_low_window&gt;&#13;&#10; &lt;tcp_dsack type=&quot;Bool&quot;&gt;1&lt;/tcp_dsack&gt;&#13;&#10; &lt;tcp_ecn type=&quot;Bool&quot;&gt;0&lt;/tcp_ecn&gt;&#13;&#10; &lt;tcp_fack type=&quot;Bool&quot;&gt;1&lt;/tcp_fack&gt;&#13;&#10; &lt;tcp_fin_timeout type=&quot;Int&quot;&gt;60&lt;/tcp_fin_timeout&gt;&#13;&#10; &lt;tcp_frto type=&quot;Int&quot;&gt;0&lt;/tcp_frto&gt;&#13;&#10; &lt;tcp_keepalive_intvl type=&quot;Int&quot;&gt;7200&lt;/tcp_keepalive_intvl&gt;&#13;&#10; &lt;tcp_keepalive_probes type=&quot;Int&quot;&gt;75&lt;/tcp_keepalive_probes&gt;&#13;&#10; &lt;tcp_keepalive_time type=&quot;Int&quot;&gt;9&lt;/tcp_keepalive_time&gt;&#13;&#10; &lt;tcp_low_latency type=&quot;Int&quot;&gt;0&lt;/tcp_low_latency&gt;&#13;&#10; &lt;tcp_max_orphans type=&quot;Int&quot;&gt;8192&lt;/tcp_max_orphans&gt;&#13;&#10; &lt;tcp_max_syn_backlog type=&quot;Int&quot;&gt;1024&lt;/tcp_max_syn_backlog&gt;&#13;&#10; &lt;tcp_max_tw_buckets type=&quot;Int&quot;&gt;180000&lt;/tcp_max_tw_buckets&gt;&#13;&#10; &lt;tcp_mem_low type=&quot;Int&quot;&gt;24576&lt;/tcp_mem_low&gt;&#13;&#10; &lt;tcp_mem_pressure type=&quot;Int&quot;&gt;32768&lt;/tcp_mem_pressure&gt;&#13;&#10; &lt;tcp_mem_high type=&quot;Int&quot;&gt;49152&lt;/tcp_mem_high&gt;&#13;&#10; &lt;tcp_moderate_rcvbuf type=&quot;Int&quot;&gt;0&lt;/tcp_moderate_rcvbuf&gt;&#13;&#10; &lt;tcp_no_metrics_save type=&quot;Bool&quot;&gt;0&lt;/tcp_no_metrics_save&gt;&#13;&#10; &lt;tcp_orphan_retries type=&quot;Int&quot;&gt;0&lt;/tcp_orphan_retries&gt;&#13;&#10; &lt;tcp_reordering type=&quot;Int&quot;&gt;3&lt;/tcp_reordering&gt;&#13;&#10; &lt;tcp_retrans_collapse type=&quot;Bool&quot;&gt;1&lt;/tcp_retrans_collapse&gt;&#13;&#10; &lt;tcp_retries1 type=&quot;Int&quot;&gt;3&lt;/tcp_retries1&gt;&#13;&#10; &lt;tcp_retries2 type=&quot;Int&quot;&gt;15&lt;/tcp_retries2&gt;&#13;&#10; &lt;tcp_rfc1337 type=&quot;Bool&quot;&gt;0&lt;/tcp_rfc1337&gt;&#13;&#10; &lt;tcp_rmem_min type=&quot;Int&quot;&gt;4096&lt;/tcp_rmem_min&gt;&#13;&#10; &lt;tcp_rmem_default type=&quot;Int&quot;&gt;1024&lt;/tcp_rmem_default&gt;&#13;&#10; &lt;tcp_rmem_max type=&quot;Int&quot;&gt;262144&lt;/tcp_rmem_max&gt;&#13;&#10; &lt;tcp_sack type=&quot;Bool&quot;&gt;1&lt;/tcp_sack&gt;&#13;&#10; &lt;tcp_stdurg type=&quot;Bool&quot;&gt;0&lt;/tcp_stdurg&gt;&#13;&#10; &lt;tcp_synack_retries type=&quot;Int&quot;&gt;5&lt;/tcp_synack_retries&gt;&#13;&#10; &lt;tcp_syn_retries type=&quot;Int&quot;&gt;5&lt;/tcp_syn_retries&gt;&#13;&#10; &lt;tcp_timestamps type=&quot;Bool&quot;&gt;1&lt;/tcp_timestamps&gt;&#13;&#10; &lt;tcp_tw_recycle type=&quot;Bool&quot;&gt;1&lt;/tcp_tw_recycle&gt;&#13;&#10; &lt;tcp_tw_reuse type=&quot;Bool&quot;&gt;0&lt;/tcp_tw_reuse&gt;&#13;&#10; &lt;tcp_vegas_alpha type=&quot;Int&quot;&gt;2&lt;/tcp_vegas_alpha&gt;&#13;&#10; &lt;tcp_vegas_beta type=&quot;Int&quot;&gt;6&lt;/tcp_vegas_beta&gt;&#13;&#10; &lt;tcp_vegas_cong_avoid type=&quot;Int&quot;&gt;0&lt;/tcp_vegas_cong_avoid&gt;&#13;&#10; &lt;tcp_vegas_gamma type=&quot;Int&quot;&gt;2&lt;/tcp_vegas_gamma&gt;&#13;&#10; &lt;tcp_westwood type=&quot;Int&quot;&gt;0&lt;/tcp_westwood&gt;&#13;&#10; &lt;tcp_window_scaling type=&quot;Bool&quot;&gt;0&lt;/tcp_window_scaling&gt;&#13;&#10; &lt;ip_no_pmtu_disc type=&quot;Bool&quot;&gt;1&lt;/ip_no_pmtu_disc&gt;&#13;&#10; &lt;tcp_wmem_min type=&quot;Int&quot;&gt;4096&lt;/tcp_wmem_min&gt;&#13;&#10; &lt;tcp_wmem_default type=&quot;Int&quot;&gt;1024&lt;/tcp_wmem_default&gt;&#13;&#10; &lt;tcp_wmem_max type=&quot;Int&quot;&gt;262144&lt;/tcp_wmem_max&gt;&#13;&#10; &lt;tcp_ipfrag_time type=&quot;Int&quot;&gt;30&lt;/tcp_ipfrag_time&gt;&#13;&#10; &lt;tcp_port_min type=&quot;Int&quot;&gt;1024&lt;/tcp_port_min&gt;&#13;&#10; &lt;tcp_port_max type=&quot;Int&quot;&gt;65535&lt;/tcp_port_max&gt;&#13;&#10; &lt;tcp_rto_min type=&quot;Int&quot;&gt;1000&lt;/tcp_rto_min&gt;&#13;&#10; &lt;tcp_rto_max type=&quot;Int&quot;&gt;120000&lt;/tcp_rto_max&gt;&#13;&#10; &lt;tcp_tw_rfc1323_strict type=&quot;Bool&quot;&gt;0&lt;/tcp_tw_rfc1323_strict&gt;&#13;&#10; &lt;udp_port_randomization type=&quot;Bool&quot;&gt;0&lt;/udp_port_randomization&gt;&#13;&#10; &lt;disable_min_max_buffer_size type=&quot;Bool&quot;&gt;1&lt;/disable_min_max_buffer_size&gt;&#13;&#10; &lt;llm_hdr_gap type=&quot;Int&quot;&gt;8&lt;/llm_hdr_gap&gt;&#13;&#10; &lt;llm_hdr_gap_ns type=&quot;Int&quot;&gt;10&lt;/llm_hdr_gap_ns&gt;&#13;&#10; &lt;inter_packet_granular_delay type=&quot;Double&quot;&gt;0&lt;/inter_packet_granular_delay&gt;&#13;&#10; &lt;delayed_acks type=&quot;Bool&quot;&gt;1&lt;/delayed_acks&gt;&#13;&#10; &lt;accept_ra_default type=&quot;Bool&quot;&gt;0&lt;/accept_ra_default&gt;&#13;&#10; &lt;rps_needed type=&quot;Bool&quot;&gt;0&lt;/rps_needed&gt;&#13;&#10; &lt;delayed_acks_segments type=&quot;Int&quot;&gt;0&lt;/delayed_acks_segments&gt;&#13;&#10; &lt;delayed_acks_timeout type=&quot;Int&quot;&gt;0&lt;/delayed_acks_timeout&gt;&#13;&#10; &lt;tcp_large_icwnd type=&quot;Int&quot;&gt;0&lt;/tcp_large_icwnd&gt;&#13;&#10; &lt;tcp_mgmt_rmem type=&quot;Int&quot;&gt;87380&lt;/tcp_mgmt_rmem&gt;&#13;&#10; &lt;tcp_mgmt_wmem type=&quot;Int&quot;&gt;32768&lt;/tcp_mgmt_wmem&gt;&#13;&#10; &lt;adjust_tcp_buffers type=&quot;Bool&quot;&gt;1&lt;/adjust_tcp_buffers&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;TCP-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;4&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.TCPPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.GratArpPlugin type=&quot;Ixia.Aptixia.StackManager.GratArpPlugin&quot; objectid=&quot;fc54eec4-41ef-4b6c-9415-bf639013b52d&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;1&lt;/enabled&gt;&#13;&#10; &lt;forwardGratArp type=&quot;Bool&quot;&gt;0&lt;/forwardGratArp&gt;&#13;&#10; &lt;rateControlEnabled type=&quot;Bool&quot;&gt;0&lt;/rateControlEnabled&gt;&#13;&#10; &lt;maxFramesPerSecond type=&quot;Int&quot;&gt;0&lt;/maxFramesPerSecond&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;GratARP-1&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;5&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.GratArpPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.MeshingPlugin type=&quot;Ixia.Aptixia.StackManager.MeshingPlugin&quot; objectid=&quot;b0ccbeae-9db2-4416-bbed-80dcb2a7a9ed&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;trafficMaps type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.MeshingTrafficMap type=&quot;Ixia.Aptixia.StackManager.MeshingTrafficMap&quot; objectid=&quot;6628a634-d6ea-4f86-94a7-816e8fc2917e&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;newClientActivity1!HTTP server_newServerActivity1&lt;/name&gt;&#13;&#10; &lt;configMapFilename type=&quot;String&quot;&gt;newClientActivity1Script.configmap&lt;/configMapFilename&gt;&#13;&#10; &lt;sourceActivityId type=&quot;Int&quot;&gt;0&lt;/sourceActivityId&gt;&#13;&#10; &lt;ipPreference type=&quot;Ixia.Aptixia.StackManager.MeshingTrafficMapSkeleton+eIpPreference&quot;&gt;2&lt;/ipPreference&gt;&#13;&#10; &lt;portRangesString type=&quot;String&quot; /&gt;&#13;&#10; &lt;meshingType type=&quot;Ixia.Aptixia.StackManager.MeshingTrafficMapSkeleton+eMeshingType&quot;&gt;2&lt;/meshingType&gt;&#13;&#10; &lt;destinationActivityId type=&quot;Int&quot;&gt;0&lt;/destinationActivityId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.MeshingTrafficMap&gt;&#13;&#10; &lt;/trafficMaps&gt;&#13;&#10; &lt;activityRangeMapInfoList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;Meshing-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;6&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.MeshingPlugin&gt;&#13;&#10; &lt;/globalPluginList&gt;&#13;&#10; &lt;portList type=&quot;Ixia.RpFramework.Server.Core.ShadowedPropertyStringList&quot; /&gt;&#13;&#10; &lt;typeSpecificData type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IPSecPortGroupData type=&quot;Ixia.Aptixia.StackManager.IPSecPortGroupData&quot; objectid=&quot;df783f7c-615e-47c1-b7f0-1174985ea22e&quot; version=&quot;6.80.2&quot;&gt;&#13;&#10; &lt;role type=&quot;String&quot;&gt;Initiator&lt;/role&gt;&#13;&#10; &lt;associates type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;overrideGlobalOptions type=&quot;Bool&quot;&gt;0&lt;/overrideGlobalOptions&gt;&#13;&#10; &lt;useMaxInitiationRate type=&quot;Bool&quot;&gt;0&lt;/useMaxInitiationRate&gt;&#13;&#10; &lt;maxInitiationRate type=&quot;Int&quot;&gt;50&lt;/maxInitiationRate&gt;&#13;&#10; &lt;useMaxPendingTunnels type=&quot;Bool&quot;&gt;0&lt;/useMaxPendingTunnels&gt;&#13;&#10; &lt;maxPendingTunnels type=&quot;Int&quot;&gt;50&lt;/maxPendingTunnels&gt;&#13;&#10; &lt;teardownRate type=&quot;Int&quot;&gt;10&lt;/teardownRate&gt;&#13;&#10; &lt;enableESPPerStreamStats type=&quot;Bool&quot;&gt;0&lt;/enableESPPerStreamStats&gt;&#13;&#10; &lt;enableESPReplayStats type=&quot;Bool&quot;&gt;0&lt;/enableESPReplayStats&gt;&#13;&#10; &lt;activities type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;pcpuLogLevel type=&quot;String&quot;&gt;0&lt;/pcpuLogLevel&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IPSecPortGroupData&gt;&#13;&#10; &lt;/typeSpecificData&gt;&#13;&#10; &lt;virtualMode type=&quot;Bool&quot;&gt;0&lt;/virtualMode&gt;&#13;&#10; &lt;allowedVirtualModeTypes type=&quot;Ixia.RpFramework.Server.Core.ShadowedPropertyStringList&quot; /&gt;&#13;&#10; &lt;doOwnership type=&quot;Bool&quot;&gt;0&lt;/doOwnership&gt;&#13;&#10; &lt;branchToNicMap type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;cpuAggregation type=&quot;Bool&quot;&gt;0&lt;/cpuAggregation&gt;&#13;&#10; &lt;activePort type=&quot;String&quot; /&gt;&#13;&#10; &lt;networkLayersManager type=&quot;Ixia.Aptixia.StackManager.NetworkLayersManager&quot; objectid=&quot;3d3cf9ef-8aab-4388-9252-4baea80122d3&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;3&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/networkLayersManager&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.PortGroup&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.PortGroup type=&quot;Ixia.Aptixia.StackManager.PortGroup&quot; objectid=&quot;c4ecfc60-64ac-4dc2-9410-e0f58d84f229&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;downlink_0&lt;/name&gt;&#13;&#10; &lt;category type=&quot;String&quot; /&gt;&#13;&#10; &lt;stack type=&quot;Ixia.Aptixia.StackManager.L1EthernetPlugin&quot; objectid=&quot;1bd9f1bc-9959-464e-b1e8-ddb0bb4d0181&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;autoNegotiate type=&quot;Bool&quot;&gt;1&lt;/autoNegotiate&gt;&#13;&#10; &lt;speed type=&quot;String&quot;&gt;k100FD&lt;/speed&gt;&#13;&#10; &lt;advertise10Half type=&quot;Bool&quot;&gt;1&lt;/advertise10Half&gt;&#13;&#10; &lt;advertise10Full type=&quot;Bool&quot;&gt;1&lt;/advertise10Full&gt;&#13;&#10; &lt;advertise100Half type=&quot;Bool&quot;&gt;1&lt;/advertise100Half&gt;&#13;&#10; &lt;advertise100Full type=&quot;Bool&quot;&gt;1&lt;/advertise100Full&gt;&#13;&#10; &lt;advertise1000Full type=&quot;Bool&quot;&gt;1&lt;/advertise1000Full&gt;&#13;&#10; &lt;advertise2500Full type=&quot;Bool&quot;&gt;1&lt;/advertise2500Full&gt;&#13;&#10; &lt;advertise5000Full type=&quot;Bool&quot;&gt;1&lt;/advertise5000Full&gt;&#13;&#10; &lt;advertise10000Full type=&quot;Bool&quot;&gt;1&lt;/advertise10000Full&gt;&#13;&#10; &lt;cardDualPhy type=&quot;Ixia.Aptixia.StackManager.DualPhyPlugin&quot; objectid=&quot;4fe8412b-7d4c-4ebe-a0d4-480a4401b3d0&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;medium type=&quot;String&quot;&gt;auto&lt;/medium&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;4&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/cardDualPhy&gt;&#13;&#10; &lt;cardElm type=&quot;Ixia.Aptixia.StackManager.EthernetELMPlugin&quot; objectid=&quot;4dfec118-30e8-4494-b7c7-e28518e7848a&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;negotiateMasterSlave type=&quot;Bool&quot;&gt;1&lt;/negotiateMasterSlave&gt;&#13;&#10; &lt;negotiationType type=&quot;String&quot;&gt;master&lt;/negotiationType&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;4&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/cardElm&gt;&#13;&#10; &lt;enableFlowControl type=&quot;Bool&quot;&gt;0&lt;/enableFlowControl&gt;&#13;&#10; &lt;directedAddress type=&quot;String&quot;&gt;01:80:C2:00:00:01&lt;/directedAddress&gt;&#13;&#10; &lt;dataCenter type=&quot;Ixia.Aptixia.StackManager.DataCenterSettings&quot; objectid=&quot;123fecc5-cb5e-43e9-92a1-b053dc56d0f3&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;dcSupported type=&quot;Bool&quot;&gt;1&lt;/dcSupported&gt;&#13;&#10; &lt;dcEnabled type=&quot;Bool&quot;&gt;0&lt;/dcEnabled&gt;&#13;&#10; &lt;dcFlowControl type=&quot;Ixia.Aptixia.StackManager.DataCenterSettingsSkeleton+eFlowControlType&quot;&gt;0&lt;/dcFlowControl&gt;&#13;&#10; &lt;dcMode type=&quot;Ixia.Aptixia.StackManager.DataCenterSettingsSkeleton+eDataCenterMode&quot;&gt;2&lt;/dcMode&gt;&#13;&#10; &lt;dcPfcMapping type=&quot;IntList&quot; /&gt;&#13;&#10; &lt;dcPfcPauseEnable type=&quot;Bool&quot;&gt;0&lt;/dcPfcPauseEnable&gt;&#13;&#10; &lt;dcPfcPauseDelay type=&quot;Int&quot;&gt;1&lt;/dcPfcPauseDelay&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;4&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/dataCenter&gt;&#13;&#10; &lt;childrenList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.L2EthernetPlugin type=&quot;Ixia.Aptixia.StackManager.L2EthernetPlugin&quot; objectid=&quot;35ff711b-53f7-4c74-9e8b-98d35adaa6bf&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;macRangeList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.MacRange type=&quot;Ixia.Aptixia.StackManager.MacRange&quot; objectid=&quot;f91c9f52-8150-4d0f-b657-498ed241835c&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;1&lt;/enabled&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;MAC-R2&lt;/name&gt;&#13;&#10; &lt;mac type=&quot;String&quot;&gt;00:0A:00:03:14:00&lt;/mac&gt;&#13;&#10; &lt;incrementBy type=&quot;String&quot;&gt;00:00:00:00:00:01&lt;/incrementBy&gt;&#13;&#10; &lt;mtu type=&quot;Int&quot;&gt;1500&lt;/mtu&gt;&#13;&#10; &lt;count type=&quot;Int&quot;&gt;1&lt;/count&gt;&#13;&#10; &lt;vlanRange type=&quot;Ixia.Aptixia.StackManager.VlanIdRange&quot; objectid=&quot;57fa3f41-7695-42d7-ac26-68924bb1e8bb&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;VLAN-R2&lt;/name&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;0&lt;/enabled&gt;&#13;&#10; &lt;firstId type=&quot;Int&quot;&gt;1&lt;/firstId&gt;&#13;&#10; &lt;incrementStep type=&quot;Int&quot;&gt;32&lt;/incrementStep&gt;&#13;&#10; &lt;increment type=&quot;Int&quot;&gt;1&lt;/increment&gt;&#13;&#10; &lt;uniqueCount type=&quot;Int&quot;&gt;4094&lt;/uniqueCount&gt;&#13;&#10; &lt;priority type=&quot;Int&quot;&gt;0&lt;/priority&gt;&#13;&#10; &lt;tpid type=&quot;String&quot;&gt;0x8100&lt;/tpid&gt;&#13;&#10; &lt;innerEnable type=&quot;Bool&quot;&gt;0&lt;/innerEnable&gt;&#13;&#10; &lt;innerFirstId type=&quot;Int&quot;&gt;1&lt;/innerFirstId&gt;&#13;&#10; &lt;innerIncrementStep type=&quot;Int&quot;&gt;1&lt;/innerIncrementStep&gt;&#13;&#10; &lt;innerIncrement type=&quot;Int&quot;&gt;1&lt;/innerIncrement&gt;&#13;&#10; &lt;innerUniqueCount type=&quot;Int&quot;&gt;4094&lt;/innerUniqueCount&gt;&#13;&#10; &lt;innerPriority type=&quot;Int&quot;&gt;0&lt;/innerPriority&gt;&#13;&#10; &lt;idIncrMode type=&quot;Int&quot;&gt;1&lt;/idIncrMode&gt;&#13;&#10; &lt;innerTpid type=&quot;String&quot;&gt;0x8100&lt;/innerTpid&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/vlanRange&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.MacRange&gt;&#13;&#10; &lt;/macRangeList&gt;&#13;&#10; &lt;vlanRangeList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.VlanIdRange type=&quot;Ixia.Aptixia.StackManager.VlanIdRange&quot; objectid=&quot;57fa3f41-7695-42d7-ac26-68924bb1e8bb&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;/vlanRangeList&gt;&#13;&#10; &lt;childrenList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IpV4V6Plugin type=&quot;Ixia.Aptixia.StackManager.IpV4V6Plugin&quot; objectid=&quot;b85b184d-9bb4-48c2-a029-e633fee7a3c8&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;rangeList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IpV4V6Range type=&quot;Ixia.Aptixia.StackManager.IpV4V6Range&quot; objectid=&quot;1d9bf537-0c3d-4fdf-9b85-0a622cc77649&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;1&lt;/enabled&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;IP-R2&lt;/name&gt;&#13;&#10; &lt;ipType type=&quot;String&quot;&gt;IPv4&lt;/ipType&gt;&#13;&#10; &lt;ipAddress type=&quot;String&quot;&gt;10.0.3.20&lt;/ipAddress&gt;&#13;&#10; &lt;prefix type=&quot;Int&quot;&gt;24&lt;/prefix&gt;&#13;&#10; &lt;incrementBy type=&quot;String&quot;&gt;0.0.0.1&lt;/incrementBy&gt;&#13;&#10; &lt;count type=&quot;Int&quot;&gt;1&lt;/count&gt;&#13;&#10; &lt;autoCountEnabled type=&quot;Bool&quot;&gt;0&lt;/autoCountEnabled&gt;&#13;&#10; &lt;gatewayAddress type=&quot;String&quot;&gt;10.0.3.10&lt;/gatewayAddress&gt;&#13;&#10; &lt;gatewayIncrement type=&quot;String&quot;&gt;0.0.0.0&lt;/gatewayIncrement&gt;&#13;&#10; &lt;gatewayIncrementMode type=&quot;String&quot;&gt;perSubnet&lt;/gatewayIncrementMode&gt;&#13;&#10; &lt;enableGatewayArp type=&quot;Bool&quot;&gt;0&lt;/enableGatewayArp&gt;&#13;&#10; &lt;generateStatistics type=&quot;Bool&quot;&gt;0&lt;/generateStatistics&gt;&#13;&#10; &lt;mss type=&quot;Int&quot;&gt;1460&lt;/mss&gt;&#13;&#10; &lt;randomizeAddress type=&quot;Bool&quot;&gt;0&lt;/randomizeAddress&gt;&#13;&#10; &lt;randomizeSeed type=&quot;Int&quot;&gt;463911585&lt;/randomizeSeed&gt;&#13;&#10; &lt;autoMacGeneration type=&quot;Bool&quot;&gt;1&lt;/autoMacGeneration&gt;&#13;&#10; &lt;macRange type=&quot;Ixia.Aptixia.StackManager.MacRange&quot; objectid=&quot;f91c9f52-8150-4d0f-b657-498ed241835c&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;vlanRange type=&quot;Ixia.Aptixia.StackManager.VlanIdRange&quot; objectid=&quot;57fa3f41-7695-42d7-ac26-68924bb1e8bb&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;atmRange type=&quot;Ixia.Aptixia.StackManager.AtmRange&quot; objectid=&quot;00000000-0000-0000-0000-000000000000&quot; /&gt;&#13;&#10; &lt;pvcRange type=&quot;Ixia.Aptixia.StackManager.PvcRange&quot; objectid=&quot;00000000-0000-0000-0000-000000000000&quot; /&gt;&#13;&#10; &lt;autoIpTypeEnabled type=&quot;Bool&quot;&gt;0&lt;/autoIpTypeEnabled&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IpV4V6Range&gt;&#13;&#10; &lt;/rangeList&gt;&#13;&#10; &lt;rangeGroups type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.RangeGroup type=&quot;Ixia.Aptixia.StackManager.RangeGroup&quot; objectid=&quot;b2c21c73-bfe3-4fbc-9804-b5a8b307d893&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;DistGroup1&lt;/name&gt;&#13;&#10; &lt;distribType type=&quot;Ixia.Aptixia.StackManager.RangeGroupSkeleton+eDistributionType&quot;&gt;0&lt;/distribType&gt;&#13;&#10; &lt;rangeList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IpV4V6Range type=&quot;Ixia.Aptixia.StackManager.IpV4V6Range&quot; objectid=&quot;1d9bf537-0c3d-4fdf-9b85-0a622cc77649&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;/rangeList&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.RangeGroup&gt;&#13;&#10; &lt;/rangeGroups&gt;&#13;&#10; &lt;childrenList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;extensionList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;dscMode type=&quot;Bool&quot;&gt;0&lt;/dscMode&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;IP-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;6&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IpV4V6Plugin&gt;&#13;&#10; &lt;/childrenList&gt;&#13;&#10; &lt;extensionList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;dscMode type=&quot;Bool&quot;&gt;0&lt;/dscMode&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;MAC/VLAN-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;5&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.L2EthernetPlugin&gt;&#13;&#10; &lt;/childrenList&gt;&#13;&#10; &lt;extensionList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;dscMode type=&quot;Bool&quot;&gt;0&lt;/dscMode&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;Ethernet-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;4&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/stack&gt;&#13;&#10; &lt;globalPluginList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IxLoadSettingsPlugin type=&quot;Ixia.Aptixia.StackManager.IxLoadSettingsPlugin&quot; objectid=&quot;993e33c6-e1f7-4967-982e-82a032f8c61a&quot; version=&quot;1.0.0&quot;&gt;&#13;&#10; &lt;teardownInterfaceWithUser type=&quot;Bool&quot;&gt;0&lt;/teardownInterfaceWithUser&gt;&#13;&#10; &lt;interfaceBehavior type=&quot;Int&quot;&gt;0&lt;/interfaceBehavior&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;Settings-4&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;7&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IxLoadSettingsPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.DnsPlugin type=&quot;Ixia.Aptixia.StackManager.DnsPlugin&quot; objectid=&quot;36ca84d7-ff44-45b7-b75d-aec38b753161&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;domain type=&quot;String&quot; /&gt;&#13;&#10; &lt;timeout type=&quot;Int&quot;&gt;30000&lt;/timeout&gt;&#13;&#10; &lt;nameServerList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;searchList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;hostList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;DNS-4&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;8&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.DnsPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.FilterPlugin type=&quot;Ixia.Aptixia.StackManager.FilterPlugin&quot; objectid=&quot;25c5acdd-9dd3-4802-93b6-b10651820b66&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;auto type=&quot;Bool&quot;&gt;1&lt;/auto&gt;&#13;&#10; &lt;all type=&quot;Bool&quot;&gt;0&lt;/all&gt;&#13;&#10; &lt;pppoecontrol type=&quot;Bool&quot;&gt;0&lt;/pppoecontrol&gt;&#13;&#10; &lt;pppoenetwork type=&quot;Bool&quot;&gt;0&lt;/pppoenetwork&gt;&#13;&#10; &lt;isis type=&quot;Bool&quot;&gt;0&lt;/isis&gt;&#13;&#10; &lt;ip type=&quot;String&quot; /&gt;&#13;&#10; &lt;tcp type=&quot;String&quot; /&gt;&#13;&#10; &lt;udp type=&quot;String&quot; /&gt;&#13;&#10; &lt;mac type=&quot;String&quot; /&gt;&#13;&#10; &lt;icmp type=&quot;String&quot; /&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;Filter-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;9&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.FilterPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.TCPPlugin type=&quot;Ixia.Aptixia.StackManager.TCPPlugin&quot; objectid=&quot;6259328b-97c2-4390-8ab1-f16bf3459219&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;bestPerfSettings type=&quot;Bool&quot;&gt;0&lt;/bestPerfSettings&gt;&#13;&#10; &lt;accept_ra_all type=&quot;Bool&quot;&gt;0&lt;/accept_ra_all&gt;&#13;&#10; &lt;tcp_abort_on_overflow type=&quot;Bool&quot;&gt;0&lt;/tcp_abort_on_overflow&gt;&#13;&#10; &lt;tcp_adv_win_scale type=&quot;Int&quot;&gt;2&lt;/tcp_adv_win_scale&gt;&#13;&#10; &lt;tcp_app_win type=&quot;Int&quot;&gt;31&lt;/tcp_app_win&gt;&#13;&#10; &lt;tcp_bic type=&quot;Int&quot;&gt;0&lt;/tcp_bic&gt;&#13;&#10; &lt;tcp_bic_fast_convergence type=&quot;Int&quot;&gt;1&lt;/tcp_bic_fast_convergence&gt;&#13;&#10; &lt;tcp_bic_low_window type=&quot;Int&quot;&gt;14&lt;/tcp_bic_low_window&gt;&#13;&#10; &lt;tcp_dsack type=&quot;Bool&quot;&gt;1&lt;/tcp_dsack&gt;&#13;&#10; &lt;tcp_ecn type=&quot;Bool&quot;&gt;0&lt;/tcp_ecn&gt;&#13;&#10; &lt;tcp_fack type=&quot;Bool&quot;&gt;1&lt;/tcp_fack&gt;&#13;&#10; &lt;tcp_fin_timeout type=&quot;Int&quot;&gt;60&lt;/tcp_fin_timeout&gt;&#13;&#10; &lt;tcp_frto type=&quot;Int&quot;&gt;0&lt;/tcp_frto&gt;&#13;&#10; &lt;tcp_keepalive_intvl type=&quot;Int&quot;&gt;7200&lt;/tcp_keepalive_intvl&gt;&#13;&#10; &lt;tcp_keepalive_probes type=&quot;Int&quot;&gt;75&lt;/tcp_keepalive_probes&gt;&#13;&#10; &lt;tcp_keepalive_time type=&quot;Int&quot;&gt;9&lt;/tcp_keepalive_time&gt;&#13;&#10; &lt;tcp_low_latency type=&quot;Int&quot;&gt;0&lt;/tcp_low_latency&gt;&#13;&#10; &lt;tcp_max_orphans type=&quot;Int&quot;&gt;8192&lt;/tcp_max_orphans&gt;&#13;&#10; &lt;tcp_max_syn_backlog type=&quot;Int&quot;&gt;1024&lt;/tcp_max_syn_backlog&gt;&#13;&#10; &lt;tcp_max_tw_buckets type=&quot;Int&quot;&gt;180000&lt;/tcp_max_tw_buckets&gt;&#13;&#10; &lt;tcp_mem_low type=&quot;Int&quot;&gt;24576&lt;/tcp_mem_low&gt;&#13;&#10; &lt;tcp_mem_pressure type=&quot;Int&quot;&gt;32768&lt;/tcp_mem_pressure&gt;&#13;&#10; &lt;tcp_mem_high type=&quot;Int&quot;&gt;49152&lt;/tcp_mem_high&gt;&#13;&#10; &lt;tcp_moderate_rcvbuf type=&quot;Int&quot;&gt;0&lt;/tcp_moderate_rcvbuf&gt;&#13;&#10; &lt;tcp_no_metrics_save type=&quot;Bool&quot;&gt;0&lt;/tcp_no_metrics_save&gt;&#13;&#10; &lt;tcp_orphan_retries type=&quot;Int&quot;&gt;0&lt;/tcp_orphan_retries&gt;&#13;&#10; &lt;tcp_reordering type=&quot;Int&quot;&gt;3&lt;/tcp_reordering&gt;&#13;&#10; &lt;tcp_retrans_collapse type=&quot;Bool&quot;&gt;1&lt;/tcp_retrans_collapse&gt;&#13;&#10; &lt;tcp_retries1 type=&quot;Int&quot;&gt;3&lt;/tcp_retries1&gt;&#13;&#10; &lt;tcp_retries2 type=&quot;Int&quot;&gt;15&lt;/tcp_retries2&gt;&#13;&#10; &lt;tcp_rfc1337 type=&quot;Bool&quot;&gt;0&lt;/tcp_rfc1337&gt;&#13;&#10; &lt;tcp_rmem_min type=&quot;Int&quot;&gt;4096&lt;/tcp_rmem_min&gt;&#13;&#10; &lt;tcp_rmem_default type=&quot;Int&quot;&gt;1024&lt;/tcp_rmem_default&gt;&#13;&#10; &lt;tcp_rmem_max type=&quot;Int&quot;&gt;262144&lt;/tcp_rmem_max&gt;&#13;&#10; &lt;tcp_sack type=&quot;Bool&quot;&gt;1&lt;/tcp_sack&gt;&#13;&#10; &lt;tcp_stdurg type=&quot;Bool&quot;&gt;0&lt;/tcp_stdurg&gt;&#13;&#10; &lt;tcp_synack_retries type=&quot;Int&quot;&gt;5&lt;/tcp_synack_retries&gt;&#13;&#10; &lt;tcp_syn_retries type=&quot;Int&quot;&gt;5&lt;/tcp_syn_retries&gt;&#13;&#10; &lt;tcp_timestamps type=&quot;Bool&quot;&gt;1&lt;/tcp_timestamps&gt;&#13;&#10; &lt;tcp_tw_recycle type=&quot;Bool&quot;&gt;1&lt;/tcp_tw_recycle&gt;&#13;&#10; &lt;tcp_tw_reuse type=&quot;Bool&quot;&gt;0&lt;/tcp_tw_reuse&gt;&#13;&#10; &lt;tcp_vegas_alpha type=&quot;Int&quot;&gt;2&lt;/tcp_vegas_alpha&gt;&#13;&#10; &lt;tcp_vegas_beta type=&quot;Int&quot;&gt;6&lt;/tcp_vegas_beta&gt;&#13;&#10; &lt;tcp_vegas_cong_avoid type=&quot;Int&quot;&gt;0&lt;/tcp_vegas_cong_avoid&gt;&#13;&#10; &lt;tcp_vegas_gamma type=&quot;Int&quot;&gt;2&lt;/tcp_vegas_gamma&gt;&#13;&#10; &lt;tcp_westwood type=&quot;Int&quot;&gt;0&lt;/tcp_westwood&gt;&#13;&#10; &lt;tcp_window_scaling type=&quot;Bool&quot;&gt;0&lt;/tcp_window_scaling&gt;&#13;&#10; &lt;ip_no_pmtu_disc type=&quot;Bool&quot;&gt;1&lt;/ip_no_pmtu_disc&gt;&#13;&#10; &lt;tcp_wmem_min type=&quot;Int&quot;&gt;4096&lt;/tcp_wmem_min&gt;&#13;&#10; &lt;tcp_wmem_default type=&quot;Int&quot;&gt;1024&lt;/tcp_wmem_default&gt;&#13;&#10; &lt;tcp_wmem_max type=&quot;Int&quot;&gt;262144&lt;/tcp_wmem_max&gt;&#13;&#10; &lt;tcp_ipfrag_time type=&quot;Int&quot;&gt;30&lt;/tcp_ipfrag_time&gt;&#13;&#10; &lt;tcp_port_min type=&quot;Int&quot;&gt;1024&lt;/tcp_port_min&gt;&#13;&#10; &lt;tcp_port_max type=&quot;Int&quot;&gt;65535&lt;/tcp_port_max&gt;&#13;&#10; &lt;tcp_rto_min type=&quot;Int&quot;&gt;1000&lt;/tcp_rto_min&gt;&#13;&#10; &lt;tcp_rto_max type=&quot;Int&quot;&gt;120000&lt;/tcp_rto_max&gt;&#13;&#10; &lt;tcp_tw_rfc1323_strict type=&quot;Bool&quot;&gt;0&lt;/tcp_tw_rfc1323_strict&gt;&#13;&#10; &lt;udp_port_randomization type=&quot;Bool&quot;&gt;0&lt;/udp_port_randomization&gt;&#13;&#10; &lt;disable_min_max_buffer_size type=&quot;Bool&quot;&gt;1&lt;/disable_min_max_buffer_size&gt;&#13;&#10; &lt;llm_hdr_gap type=&quot;Int&quot;&gt;8&lt;/llm_hdr_gap&gt;&#13;&#10; &lt;llm_hdr_gap_ns type=&quot;Int&quot;&gt;10&lt;/llm_hdr_gap_ns&gt;&#13;&#10; &lt;inter_packet_granular_delay type=&quot;Double&quot;&gt;0&lt;/inter_packet_granular_delay&gt;&#13;&#10; &lt;delayed_acks type=&quot;Bool&quot;&gt;1&lt;/delayed_acks&gt;&#13;&#10; &lt;accept_ra_default type=&quot;Bool&quot;&gt;0&lt;/accept_ra_default&gt;&#13;&#10; &lt;rps_needed type=&quot;Bool&quot;&gt;0&lt;/rps_needed&gt;&#13;&#10; &lt;delayed_acks_segments type=&quot;Int&quot;&gt;0&lt;/delayed_acks_segments&gt;&#13;&#10; &lt;delayed_acks_timeout type=&quot;Int&quot;&gt;0&lt;/delayed_acks_timeout&gt;&#13;&#10; &lt;tcp_large_icwnd type=&quot;Int&quot;&gt;0&lt;/tcp_large_icwnd&gt;&#13;&#10; &lt;tcp_mgmt_rmem type=&quot;Int&quot;&gt;87380&lt;/tcp_mgmt_rmem&gt;&#13;&#10; &lt;tcp_mgmt_wmem type=&quot;Int&quot;&gt;32768&lt;/tcp_mgmt_wmem&gt;&#13;&#10; &lt;adjust_tcp_buffers type=&quot;Bool&quot;&gt;1&lt;/adjust_tcp_buffers&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;TCP-4&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;10&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.TCPPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.GratArpPlugin type=&quot;Ixia.Aptixia.StackManager.GratArpPlugin&quot; objectid=&quot;3eedf749-efa4-43a0-87ae-e110a77c88d4&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;1&lt;/enabled&gt;&#13;&#10; &lt;forwardGratArp type=&quot;Bool&quot;&gt;0&lt;/forwardGratArp&gt;&#13;&#10; &lt;rateControlEnabled type=&quot;Bool&quot;&gt;0&lt;/rateControlEnabled&gt;&#13;&#10; &lt;maxFramesPerSecond type=&quot;Int&quot;&gt;0&lt;/maxFramesPerSecond&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;GratARP-2&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;11&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.GratArpPlugin&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.MeshingPlugin type=&quot;Ixia.Aptixia.StackManager.MeshingPlugin&quot; objectid=&quot;284f9992-65d8-4027-a155-709f1965f892&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;trafficMaps type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;activityRangeMapInfoList type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;Meshing-1&lt;/name&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;12&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.MeshingPlugin&gt;&#13;&#10; &lt;/globalPluginList&gt;&#13;&#10; &lt;portList type=&quot;Ixia.RpFramework.Server.Core.ShadowedPropertyStringList&quot; /&gt;&#13;&#10; &lt;typeSpecificData type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IPSecPortGroupData type=&quot;Ixia.Aptixia.StackManager.IPSecPortGroupData&quot; objectid=&quot;f65f12f2-018c-46f5-a9c5-a1f6f7151909&quot; version=&quot;6.80.2&quot;&gt;&#13;&#10; &lt;role type=&quot;String&quot;&gt;Initiator&lt;/role&gt;&#13;&#10; &lt;associates type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;overrideGlobalOptions type=&quot;Bool&quot;&gt;0&lt;/overrideGlobalOptions&gt;&#13;&#10; &lt;useMaxInitiationRate type=&quot;Bool&quot;&gt;0&lt;/useMaxInitiationRate&gt;&#13;&#10; &lt;maxInitiationRate type=&quot;Int&quot;&gt;50&lt;/maxInitiationRate&gt;&#13;&#10; &lt;useMaxPendingTunnels type=&quot;Bool&quot;&gt;0&lt;/useMaxPendingTunnels&gt;&#13;&#10; &lt;maxPendingTunnels type=&quot;Int&quot;&gt;50&lt;/maxPendingTunnels&gt;&#13;&#10; &lt;teardownRate type=&quot;Int&quot;&gt;10&lt;/teardownRate&gt;&#13;&#10; &lt;enableESPPerStreamStats type=&quot;Bool&quot;&gt;0&lt;/enableESPPerStreamStats&gt;&#13;&#10; &lt;enableESPReplayStats type=&quot;Bool&quot;&gt;0&lt;/enableESPReplayStats&gt;&#13;&#10; &lt;activities type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;pcpuLogLevel type=&quot;String&quot;&gt;0&lt;/pcpuLogLevel&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IPSecPortGroupData&gt;&#13;&#10; &lt;/typeSpecificData&gt;&#13;&#10; &lt;virtualMode type=&quot;Bool&quot;&gt;0&lt;/virtualMode&gt;&#13;&#10; &lt;allowedVirtualModeTypes type=&quot;Ixia.RpFramework.Server.Core.ShadowedPropertyStringList&quot; /&gt;&#13;&#10; &lt;doOwnership type=&quot;Bool&quot;&gt;0&lt;/doOwnership&gt;&#13;&#10; &lt;branchToNicMap type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;cpuAggregation type=&quot;Bool&quot;&gt;0&lt;/cpuAggregation&gt;&#13;&#10; &lt;activePort type=&quot;String&quot; /&gt;&#13;&#10; &lt;networkLayersManager type=&quot;Ixia.Aptixia.StackManager.NetworkLayersManager&quot; objectid=&quot;60b1273d-78d3-4813-8cea-ec9a7101b8a3&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;4&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/networkLayersManager&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.PortGroup&gt;&#13;&#10; &lt;/portGroupList&gt;&#13;&#10; &lt;externalProperties type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyManager&quot; objectid=&quot;1f2452bf-e52a-4db2-ba47-e5cc8bf61b5e&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;properties type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;145671ff-93a5-4ecc-8c83-59b2c3c67be9&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;IxCatLTEUEUeRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;9f07a941-ad2f-46b0-8c75-911862a21039&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;SixRdRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;a221ab5c-faae-4940-bfad-5d41d44f1427&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;L2tpRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;d811442b-bfb8-42f0-bbf8-6bdb6fc9b66b&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;DHCPServerRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;f252cff3-b919-4e74-9f62-9e9c5ab5d324&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;MobileSubscribersRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;500dfc8b-2e6a-401f-84c0-f6907f60c00e&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPSgsnS3RangeUe&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;693cb176-f3d8-4073-8a02-fabdc0bdd3fb&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPRange_SGW&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;ec983bf9-07f0-46b2-99a0-354114f42501&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EmulatedRouterRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;5d0f0eb8-40af-4292-8ff2-a57e7903601d&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;PppoxRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;653fae09-ba19-443c-8f8b-9483c0b86b9a&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;GTPNGAPRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;c886be8c-c207-4bb4-90d5-17be54556d58&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;IxCatRNCIuPSUeRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;00e75214-5166-406b-90e5-2b83567ae5cf&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;GTPNGUERange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;50d10ee7-45ce-46d2-ae8d-ecd3b1806067&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPUERange_S5S8_SGW&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;c2f310a4-6ea4-4459-be3b-f3b3365c590a&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;GTPGRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;7e458bed-5e36-42d6-812d-3794be52766e&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPPcrfRange_S5S8_PGW&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;7d225fda-6432-4de3-9750-c19bbc957703&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;DSLiteRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;e25dd669-ffc5-493d-a2b5-fd5627bf2ee8&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPSGSNRangeUe&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;7ac0b7d4-6df9-4e1f-86d2-f0a494b3f20b&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;SlaacRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;25699a2c-ab22-417b-9072-894523e98008&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPUERange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;482a10c3-0ac7-44d9-9fa9-b43ba3a9901d&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;DHCPRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;a0f03753-923d-4421-8c4f-0ed78f00fc44&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;AtmRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;fb5cd68e-b4b0-4fd4-ae18-4100c0035642&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;IxCatMMEApnRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;62677b6a-080e-4cc3-919b-71fa90ae410f&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;IxCatENodeBUuApnRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;2e0fd6e3-470e-48df-ab8d-cc21b9d80393&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;GTPSUERange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;175f3104-0d2a-44f9-b712-fed3b170f8cb&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;IpV4V6Range&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;d1f37e1e-db44-4bac-acb8-b242dee8e371&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;MacRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;61ccdebc-84e6-464d-be14-2b3ddedab9d2&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;DualStackIPRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;d0678cd8-998e-42ab-8f0d-bfcb5370eac2&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPUERange_S2a_TWAN&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;d8350364-51c6-4a1b-af9f-72c9c235a636&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;IxCatSGSNIuPSApnRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;613d02a1-db1e-415d-b4bb-8b73b4477cf4&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;IxCatENodeBSimUeRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;9a41f718-b55e-44c7-a0cc-b1fcf8204c20&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;S6dRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;4c26fe62-a63d-4c40-8e15-c58ad8fba8d0&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;UERangeBase&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;5c2ca63f-3335-4ab7-963e-440817448538&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPMmeS10RangeUe&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;51a5eccc-a68d-4730-8a48-32019c547c28&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;S6aRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;3010c4ad-f31e-4676-9e61-bb25cf9c1bbb&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;BmScRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;ef1677e4-f390-4a78-b61a-f7650cf5faea&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;MBmsGwRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;24322b98-7a2a-4d2d-a4ee-4cde0f0e8b64&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;PptpRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalPropertyInfo type=&quot;Ixia.Aptixia.StackManager.ExternalPropertyInfo&quot; objectid=&quot;3b7f72db-e223-46ac-b71d-75e47f78e682&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;targetType type=&quot;String&quot;&gt;EGTPPMIPHostRange&lt;/targetType&gt;&#13;&#10; &lt;valueType type=&quot;String&quot;&gt;ExternalValueBoolean&lt;/valueType&gt;&#13;&#10; &lt;description type=&quot;String&quot;&gt;Enable collection of interface statistics on this range&lt;/description&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalPropertyInfo&gt;&#13;&#10; &lt;/properties&gt;&#13;&#10; &lt;values type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalProperty type=&quot;Ixia.Aptixia.StackManager.ExternalProperty&quot; objectid=&quot;6804ae67-3bd7-471b-8796-ee1e4773c2f1&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;target type=&quot;Ixia.Aptixia.StackManager.IpV4V6Range&quot; objectid=&quot;a3559674-8d95-4020-90b3-b42eacaef105&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;value type=&quot;Ixia.Aptixia.StackManager.ExternalValueBoolean&quot; objectid=&quot;7efcd429-2c48-41bd-bdc5-489dbfcfc49a&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;value type=&quot;Bool&quot;&gt;0&lt;/value&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/value&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;1&lt;/enabled&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalProperty&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalProperty type=&quot;Ixia.Aptixia.StackManager.ExternalProperty&quot; objectid=&quot;a63d8276-65bc-4bc2-8202-6461c6399ef9&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;target type=&quot;Ixia.Aptixia.StackManager.IpV4V6Range&quot; objectid=&quot;1d9bf537-0c3d-4fdf-9b85-0a622cc77649&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;value type=&quot;Ixia.Aptixia.StackManager.ExternalValueBoolean&quot; objectid=&quot;09d7b134-2921-4759-bbdb-ff3a5a1966d7&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;value type=&quot;Bool&quot;&gt;0&lt;/value&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/value&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;1&lt;/enabled&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalProperty&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalProperty type=&quot;Ixia.Aptixia.StackManager.ExternalProperty&quot; objectid=&quot;0cd9f099-242e-4b03-965f-d343c60181e6&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;target type=&quot;Ixia.Aptixia.StackManager.MacRange&quot; objectid=&quot;3011c8a8-a9fd-4b76-a27d-91948113ed4f&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;value type=&quot;Ixia.Aptixia.StackManager.ExternalValueBoolean&quot; objectid=&quot;503aa008-2481-419f-a223-c90b2c25c17e&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;value type=&quot;Bool&quot;&gt;0&lt;/value&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;3&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/value&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;0&lt;/enabled&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;3&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalProperty&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ExternalProperty type=&quot;Ixia.Aptixia.StackManager.ExternalProperty&quot; objectid=&quot;0b8d2c01-19ac-4f28-924e-660676d978da&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;propertyName type=&quot;String&quot;&gt;Publish Statistics&lt;/propertyName&gt;&#13;&#10; &lt;target type=&quot;Ixia.Aptixia.StackManager.MacRange&quot; objectid=&quot;f91c9f52-8150-4d0f-b657-498ed241835c&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;value type=&quot;Ixia.Aptixia.StackManager.ExternalValueBoolean&quot; objectid=&quot;41c694b3-bb55-48fe-9604-8b003540242f&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;value type=&quot;Bool&quot;&gt;0&lt;/value&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;4&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/value&gt;&#13;&#10; &lt;enabled type=&quot;Bool&quot;&gt;0&lt;/enabled&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;4&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ExternalProperty&gt;&#13;&#10; &lt;/values&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/externalProperties&gt;&#13;&#10; &lt;availableNetworkTimelines type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;typeSpecificData type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.MacSessionData type=&quot;Ixia.Aptixia.StackManager.MacSessionData&quot; objectid=&quot;a9c7aa59-e015-4ffd-bb82-5d877ae9c1a8&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;duplicateCheckingScope type=&quot;Ixia.Aptixia.StackManager.MacSessionDataSkeleton+eMacValidationOptions&quot;&gt;2&lt;/duplicateCheckingScope&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.MacSessionData&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IpSessionData type=&quot;Ixia.Aptixia.StackManager.IpSessionData&quot; objectid=&quot;34a78d72-1fc5-4875-9fe1-b4db66b1b4c4&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;duplicateCheckingScope type=&quot;Ixia.Aptixia.StackManager.IpSessionDataSkeleton+eIpValidationOptions&quot;&gt;2&lt;/duplicateCheckingScope&gt;&#13;&#10; &lt;enableGatewayArp type=&quot;Bool&quot;&gt;0&lt;/enableGatewayArp&gt;&#13;&#10; &lt;gatewayArpRequestRate type=&quot;Int&quot;&gt;300&lt;/gatewayArpRequestRate&gt;&#13;&#10; &lt;maxOutstandingGatewayArpRequests type=&quot;Int&quot;&gt;300&lt;/maxOutstandingGatewayArpRequests&gt;&#13;&#10; &lt;ignoreUnresolvedIPs type=&quot;Bool&quot;&gt;0&lt;/ignoreUnresolvedIPs&gt;&#13;&#10; &lt;sendAllRequests type=&quot;Bool&quot;&gt;0&lt;/sendAllRequests&gt;&#13;&#10; &lt;individualARPTimeOut type=&quot;Int&quot;&gt;500&lt;/individualARPTimeOut&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IpSessionData&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IxLoadSessionData type=&quot;Ixia.Aptixia.StackManager.IxLoadSessionData&quot; objectid=&quot;1e24447f-69f1-4030-8b2d-25a18c7160ca&quot; version=&quot;1.0.0&quot;&gt;&#13;&#10; &lt;portGroupList type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.PortGroup type=&quot;Ixia.Aptixia.StackManager.PortGroup&quot; objectid=&quot;c4ecfc60-64ac-4dc2-9410-e0f58d84f229&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.PortGroup type=&quot;Ixia.Aptixia.StackManager.PortGroup&quot; objectid=&quot;865be042-32d5-426a-9e75-0908c943801f&quot; version=&quot;6.70.442&quot; /&gt;&#13;&#10; &lt;/portGroupList&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IxLoadSessionData&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ImpairSessionData type=&quot;Ixia.Aptixia.StackManager.ImpairSessionData&quot; objectid=&quot;94b53c2c-0747-41c2-838d-0e0e15f31766&quot; version=&quot;6.70.13&quot;&gt;&#13;&#10; &lt;profiles type=&quot;ListNode&quot;&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.ImpairProfile type=&quot;Ixia.Aptixia.StackManager.ImpairProfile&quot; objectid=&quot;90dd3511-93c1-49fa-8e38-db774db9fe17&quot; version=&quot;6.70.13&quot;&gt;&#13;&#10; &lt;name type=&quot;String&quot;&gt;DefaultProfile&lt;/name&gt;&#13;&#10; &lt;defaultp type=&quot;Bool&quot;&gt;1&lt;/defaultp&gt;&#13;&#10; &lt;seed type=&quot;Int&quot;&gt;0&lt;/seed&gt;&#13;&#10; &lt;addDelay type=&quot;Bool&quot;&gt;1&lt;/addDelay&gt;&#13;&#10; &lt;delay type=&quot;Int&quot;&gt;20&lt;/delay&gt;&#13;&#10; &lt;jitter type=&quot;Int&quot;&gt;0&lt;/jitter&gt;&#13;&#10; &lt;addDrop type=&quot;Bool&quot;&gt;0&lt;/addDrop&gt;&#13;&#10; &lt;drop type=&quot;Double&quot;&gt;10&lt;/drop&gt;&#13;&#10; &lt;addDropSequence type=&quot;Bool&quot;&gt;0&lt;/addDropSequence&gt;&#13;&#10; &lt;dropSequenceSkip type=&quot;Int&quot;&gt;10&lt;/dropSequenceSkip&gt;&#13;&#10; &lt;dropSequenceLength type=&quot;Int&quot;&gt;1&lt;/dropSequenceLength&gt;&#13;&#10; &lt;addReorder type=&quot;Bool&quot;&gt;0&lt;/addReorder&gt;&#13;&#10; &lt;gap type=&quot;Int&quot;&gt;10&lt;/gap&gt;&#13;&#10; &lt;reorder type=&quot;Int&quot;&gt;20&lt;/reorder&gt;&#13;&#10; &lt;reorderLength type=&quot;Int&quot;&gt;1&lt;/reorderLength&gt;&#13;&#10; &lt;addReorderPI type=&quot;Bool&quot;&gt;0&lt;/addReorderPI&gt;&#13;&#10; &lt;reorderPISkip type=&quot;Int&quot;&gt;10&lt;/reorderPISkip&gt;&#13;&#10; &lt;reorderPILength type=&quot;Int&quot;&gt;1&lt;/reorderPILength&gt;&#13;&#10; &lt;reorderPIInterval type=&quot;Int&quot;&gt;1&lt;/reorderPIInterval&gt;&#13;&#10; &lt;reorderPITimeout type=&quot;Int&quot;&gt;1000&lt;/reorderPITimeout&gt;&#13;&#10; &lt;addDuplicate type=&quot;Bool&quot;&gt;0&lt;/addDuplicate&gt;&#13;&#10; &lt;duplicate type=&quot;Double&quot;&gt;10&lt;/duplicate&gt;&#13;&#10; &lt;addFragment type=&quot;Bool&quot;&gt;0&lt;/addFragment&gt;&#13;&#10; &lt;fragment type=&quot;Double&quot;&gt;10&lt;/fragment&gt;&#13;&#10; &lt;mtu type=&quot;Int&quot;&gt;1000&lt;/mtu&gt;&#13;&#10; &lt;addFragmentSequence type=&quot;Bool&quot;&gt;0&lt;/addFragmentSequence&gt;&#13;&#10; &lt;fragmentSequenceSkip type=&quot;Int&quot;&gt;10&lt;/fragmentSequenceSkip&gt;&#13;&#10; &lt;fragmentSequenceLength type=&quot;Int&quot;&gt;1&lt;/fragmentSequenceLength&gt;&#13;&#10; &lt;mtuSequence type=&quot;Int&quot;&gt;1000&lt;/mtuSequence&gt;&#13;&#10; &lt;sendFragmentsInReverseOrder type=&quot;Bool&quot;&gt;0&lt;/sendFragmentsInReverseOrder&gt;&#13;&#10; &lt;sendFirstFragmentOnly type=&quot;Bool&quot;&gt;0&lt;/sendFirstFragmentOnly&gt;&#13;&#10; &lt;sendOverlappingFragments type=&quot;Bool&quot;&gt;0&lt;/sendOverlappingFragments&gt;&#13;&#10; &lt;addBandwidth type=&quot;Bool&quot;&gt;0&lt;/addBandwidth&gt;&#13;&#10; &lt;bandwidth type=&quot;Double&quot;&gt;1&lt;/bandwidth&gt;&#13;&#10; &lt;bandwidthUnits type=&quot;String&quot;&gt;mbps&lt;/bandwidthUnits&gt;&#13;&#10; &lt;addBandwidthIn type=&quot;Bool&quot;&gt;0&lt;/addBandwidthIn&gt;&#13;&#10; &lt;bandwidthIn type=&quot;Double&quot;&gt;1&lt;/bandwidthIn&gt;&#13;&#10; &lt;bandwidthUnitsIn type=&quot;String&quot;&gt;mbps&lt;/bandwidthUnitsIn&gt;&#13;&#10; &lt;destinationIp type=&quot;String&quot;&gt;any&lt;/destinationIp&gt;&#13;&#10; &lt;sourceIp type=&quot;String&quot;&gt;any&lt;/sourceIp&gt;&#13;&#10; &lt;sourcePort type=&quot;Int&quot;&gt;0&lt;/sourcePort&gt;&#13;&#10; &lt;destinationPort type=&quot;Int&quot;&gt;0&lt;/destinationPort&gt;&#13;&#10; &lt;protocol type=&quot;String&quot;&gt;any&lt;/protocol&gt;&#13;&#10; &lt;typeOfService type=&quot;String&quot;&gt;any&lt;/typeOfService&gt;&#13;&#10; &lt;addTcpFlagsFilter type=&quot;Bool&quot;&gt;0&lt;/addTcpFlagsFilter&gt;&#13;&#10; &lt;selectTcpFlags type=&quot;String&quot;&gt;SYN;RST;ACK&lt;/selectTcpFlags&gt;&#13;&#10; &lt;expectTcpFlags type=&quot;String&quot;&gt;SYN&lt;/expectTcpFlags&gt;&#13;&#10; &lt;impairOrder type=&quot;String&quot;&gt;Delay;Drop;DropSeq;Reorder;ReorderPI;Duplicate;Fragment;FragmentSeq;Bandwidth&lt;/impairOrder&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ImpairProfile&gt;&#13;&#10; &lt;/profiles&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.ImpairSessionData&gt;&#13;&#10; &lt;Ixia.Aptixia.StackManager.IPSecSessionData type=&quot;Ixia.Aptixia.StackManager.IPSecSessionData&quot; objectid=&quot;bd2f0ea4-4278-49c8-9600-18cd2c8ed639&quot; version=&quot;6.80.2&quot;&gt;&#13;&#10; &lt;ipsecTunnelSetup type=&quot;Ixia.Aptixia.StackManager.IPSecTunnelSetup&quot; objectid=&quot;1bacc8a0-dda0-4e0c-b013-4d8618dc80b6&quot; version=&quot;6.80.2&quot;&gt;&#13;&#10; &lt;tunnelSetupTimeout type=&quot;Int&quot;&gt;30&lt;/tunnelSetupTimeout&gt;&#13;&#10; &lt;tunnelRetransmissionTimeout type=&quot;Int&quot;&gt;30&lt;/tunnelRetransmissionTimeout&gt;&#13;&#10; &lt;numRetries type=&quot;Int&quot;&gt;0&lt;/numRetries&gt;&#13;&#10; &lt;retryInterval type=&quot;Int&quot;&gt;10&lt;/retryInterval&gt;&#13;&#10; &lt;retryDelay type=&quot;Int&quot;&gt;10&lt;/retryDelay&gt;&#13;&#10; &lt;testType type=&quot;String&quot;&gt;P2D&lt;/testType&gt;&#13;&#10; &lt;logLevel type=&quot;String&quot;&gt;3&lt;/logLevel&gt;&#13;&#10; &lt;sendCiscoVid type=&quot;Bool&quot;&gt;0&lt;/sendCiscoVid&gt;&#13;&#10; &lt;useMaxInitiationRate type=&quot;Bool&quot;&gt;0&lt;/useMaxInitiationRate&gt;&#13;&#10; &lt;useMaxPendingTunnels type=&quot;Bool&quot;&gt;0&lt;/useMaxPendingTunnels&gt;&#13;&#10; &lt;enableRekey type=&quot;Bool&quot;&gt;1&lt;/enableRekey&gt;&#13;&#10; &lt;rekeyRetries type=&quot;Int&quot;&gt;3&lt;/rekeyRetries&gt;&#13;&#10; &lt;rekeyFuzzPercentage type=&quot;Int&quot;&gt;0&lt;/rekeyFuzzPercentage&gt;&#13;&#10; &lt;rekeyMargin type=&quot;Int&quot;&gt;10&lt;/rekeyMargin&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/ipsecTunnelSetup&gt;&#13;&#10; &lt;ipsecCertificates type=&quot;Ixia.Aptixia.StackManager.IPSecCertificates&quot; objectid=&quot;2e324324-bf74-4ad3-afbb-62e44f01c31a&quot; version=&quot;6.80.2&quot;&gt;&#13;&#10; &lt;uniqueCert type=&quot;Bool&quot;&gt;0&lt;/uniqueCert&gt;&#13;&#10; &lt;certSource type=&quot;String&quot;&gt;kNewCert&lt;/certSource&gt;&#13;&#10; &lt;caURL type=&quot;String&quot; /&gt;&#13;&#10; &lt;caDN type=&quot;String&quot; /&gt;&#13;&#10; &lt;certSubjectDN type=&quot;String&quot; /&gt;&#13;&#10; &lt;certSubjectAltDN type=&quot;String&quot; /&gt;&#13;&#10; &lt;remoteIkeId type=&quot;String&quot; /&gt;&#13;&#10; &lt;bitSize type=&quot;String&quot;&gt;k512&lt;/bitSize&gt;&#13;&#10; &lt;saveCert type=&quot;Bool&quot;&gt;1&lt;/saveCert&gt;&#13;&#10; &lt;cacheCertFolder type=&quot;String&quot;&gt;C:\Program Files\Ixia\CachedCerts&lt;/cacheCertFolder&gt;&#13;&#10; &lt;certParentFolder type=&quot;String&quot;&gt;C:\Program Files\Ixia\CachedCerts&lt;/certParentFolder&gt;&#13;&#10; &lt;certNumber type=&quot;String&quot; /&gt;&#13;&#10; &lt;caCertNumber type=&quot;String&quot; /&gt;&#13;&#10; &lt;earlyExpDate type=&quot;String&quot; /&gt;&#13;&#10; &lt;lateExpDate type=&quot;String&quot; /&gt;&#13;&#10; &lt;usePerRangeCertNameExp type=&quot;Bool&quot;&gt;0&lt;/usePerRangeCertNameExp&gt;&#13;&#10; &lt;checkCrl type=&quot;Bool&quot;&gt;0&lt;/checkCrl&gt;&#13;&#10; &lt;crlOverrideEnable type=&quot;Bool&quot;&gt;0&lt;/crlOverrideEnable&gt;&#13;&#10; &lt;crlOverrideUrl type=&quot;String&quot; /&gt;&#13;&#10; &lt;checkOcsp type=&quot;Bool&quot;&gt;0&lt;/checkOcsp&gt;&#13;&#10; &lt;ocspOverrideEnable type=&quot;Bool&quot;&gt;0&lt;/ocspOverrideEnable&gt;&#13;&#10; &lt;ocspOverrideUrl type=&quot;String&quot; /&gt;&#13;&#10; &lt;unknownIsRevoked type=&quot;Bool&quot;&gt;0&lt;/unknownIsRevoked&gt;&#13;&#10; &lt;certProto type=&quot;String&quot;&gt;kSCEP&lt;/certProto&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/ipsecCertificates&gt;&#13;&#10; &lt;ipsecCertManager type=&quot;Ixia.Aptixia.StackManager.IPSecCertManager&quot; objectid=&quot;f3dc4ef0-e9a1-48a2-b69f-c5d2b485e897&quot; version=&quot;6.80.2&quot;&gt;&#13;&#10; &lt;caURL type=&quot;String&quot; /&gt;&#13;&#10; &lt;caDN type=&quot;String&quot;&gt;CN=RootCA,C=RO,L=Bucharest,O=Ixia,OU=IxLoad,IP:201.121.87.2,email:ixia@ixiacom.com&lt;/caDN&gt;&#13;&#10; &lt;certSubjectDN type=&quot;String&quot;&gt;CN=IxiaVPN,C=RO,L=Bucharest,O=Ixia&lt;/certSubjectDN&gt;&#13;&#10; &lt;keyGenAlgo type=&quot;String&quot;&gt;kRSA_512&lt;/keyGenAlgo&gt;&#13;&#10; &lt;cacheCertFolder type=&quot;String&quot;&gt;C:\Program Files\Ixia\CachedCerts&lt;/cacheCertFolder&gt;&#13;&#10; &lt;caKeyFile type=&quot;String&quot;&gt;C:\Program Files\Ixia\ca-priv.key&lt;/caKeyFile&gt;&#13;&#10; &lt;caCrtFile type=&quot;String&quot;&gt;C:\Program Files\Ixia\ca-cert.crt&lt;/caCrtFile&gt;&#13;&#10; &lt;certNumber type=&quot;Int&quot;&gt;1&lt;/certNumber&gt;&#13;&#10; &lt;certProto type=&quot;String&quot;&gt;kSCEP&lt;/certProto&gt;&#13;&#10; &lt;createRootCA type=&quot;Bool&quot;&gt;0&lt;/createRootCA&gt;&#13;&#10; &lt;uniqueCert type=&quot;Bool&quot;&gt;0&lt;/uniqueCert&gt;&#13;&#10; &lt;descFilePath type=&quot;String&quot;&gt;C:\Program Files\Ixia\CachedCerts\sample.desc&lt;/descFilePath&gt;&#13;&#10; &lt;useDescFile type=&quot;Bool&quot;&gt;0&lt;/useDescFile&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;2&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/ipsecCertManager&gt;&#13;&#10; &lt;eapSimTuples type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;eapAkaTuples type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;maxInitiationRate type=&quot;Int&quot;&gt;50&lt;/maxInitiationRate&gt;&#13;&#10; &lt;maxPendingTunnels type=&quot;Int&quot;&gt;50&lt;/maxPendingTunnels&gt;&#13;&#10; &lt;negotiationStartDelay type=&quot;Int&quot;&gt;0&lt;/negotiationStartDelay&gt;&#13;&#10; &lt;teardownRate type=&quot;Int&quot;&gt;10&lt;/teardownRate&gt;&#13;&#10; &lt;burstInitiation type=&quot;Bool&quot;&gt;0&lt;/burstInitiation&gt;&#13;&#10; &lt;parallelInitiation type=&quot;Bool&quot;&gt;0&lt;/parallelInitiation&gt;&#13;&#10; &lt;enableWildcardTsi type=&quot;Bool&quot;&gt;0&lt;/enableWildcardTsi&gt;&#13;&#10; &lt;enableWildcardTsr type=&quot;Bool&quot;&gt;0&lt;/enableWildcardTsr&gt;&#13;&#10; &lt;enablePlutoWildcardTsi type=&quot;Bool&quot;&gt;0&lt;/enablePlutoWildcardTsi&gt;&#13;&#10; &lt;enablePlutoModeCfgWildcardTsr type=&quot;Bool&quot;&gt;1&lt;/enablePlutoModeCfgWildcardTsr&gt;&#13;&#10; &lt;enablePlutoS2SWildcardTsr type=&quot;Bool&quot;&gt;0&lt;/enablePlutoS2SWildcardTsr&gt;&#13;&#10; &lt;payloadAttrTypes type=&quot;ListNode&quot; /&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.IPSecSessionData&gt;&#13;&#10; &lt;/typeSpecificData&gt;&#13;&#10; &lt;statViewManager type=&quot;Ixia.Aptixia.StackManager.StatViewManager&quot; objectid=&quot;7256ce27-286c-475d-b198-09b4ae306f73&quot; version=&quot;6.70.442&quot;&gt;&#13;&#10; &lt;enableStats type=&quot;Bool&quot;&gt;1&lt;/enableStats&gt;&#13;&#10; &lt;enableOverviewStats type=&quot;Bool&quot;&gt;1&lt;/enableOverviewStats&gt;&#13;&#10; &lt;enablePerSessionStats type=&quot;Bool&quot;&gt;1&lt;/enablePerSessionStats&gt;&#13;&#10; &lt;/statViewManager&gt;&#13;&#10; &lt;waitForLinkUp type=&quot;Bool&quot;&gt;0&lt;/waitForLinkUp&gt;&#13;&#10; &lt;overloadProtection type=&quot;Bool&quot;&gt;1&lt;/overloadProtection&gt;&#13;&#10; &lt;ixLoadRestObjectId type=&quot;Int&quot;&gt;1&lt;/ixLoadRestObjectId&gt;&#13;&#10; &lt;/Ixia.Aptixia.StackManager.SMSession&gt;&#13;&#10;&lt;/rpf&gt;</xml>
</_smSessionXml>
<_composerConfig ver="[0, [1, [0, [0]]]]" type="ixComposerConfig">
<xml type="str"></xml>
@@ -10,11 +10,11 @@
<xml type="str">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-16&quot;?&gt;&#13;&#10;&lt;Config&gt;&#13;&#10; &lt;configs Version=&quot;5.0&quot; /&gt;&#13;&#10;&lt;/Config&gt;</xml>
</_quickTestConfig>
<lastApiUniqueId type="int">15481</lastApiUniqueId>
- <version type="str">8.30.115.50</version>
+ <version type="str">8.30.115.152</version>
<name type="str">HTTP-vFW_IPv4_2Ports_Concurrency.rxf</name>
<comment type="str"></comment>
<path type="str">C:\Results</path>
- <last type="str">HTTP-vFW_IPv4_2Ports.rxf</last>
+ <last type="str">HTTP-vFW_IPv4_2Ports_Concurrency.rxf</last>
<activeTest type="str">Test1</activeTest>
<chassisChain ver="[2, [1, [0, [0]]]]" oid="2" type="ixChassisChain">
<chassisList ver="[0, [3, [0, [0, [0], [0]], [0]]]]" type="ixChassisSequenceContainer" itemtype="ixChassis"/>
@@ -55,7 +55,7 @@
<name type="str">Client</name>
<elementList ver="[0, [0, [3, [0, [0, [0], [0]], [0]]]]]" type="ixScenarioElementList" itemtype="ixScenarioElement">
<item ver="[1, [24, [0, [1, [0, [0]]]]]]" oid="0" type="ixNetTraffic">
- <name type="str">HTTP client@client network</name>
+ <name type="str">HTTP client@uplink_0</name>
<column type="NoneType">None</column>
<scenarioElementType type="str">netTraffic</scenarioElementType>
<enable type="int">1</enable>
@@ -99,7 +99,7 @@
<customPortMap type="NoneType">None</customPortMap>
<sourceCommunity ref="0"/>
<destinationCommunity ver="[1, [24, [0, [1, [0, [0]]]]]]" oid="17" type="ixNetTraffic">
- <name type="str">HTTP server@server network</name>
+ <name type="str">HTTP server@downlink_0</name>
<column type="NoneType">None</column>
<scenarioElementType type="str">netTraffic</scenarioElementType>
<enable type="int">1</enable>
@@ -484,7 +484,7 @@
</traffic>
<network ver="[17, [1, [6, [1, [0, [0]]]]]]" type="ixNetworkGroup">
<resourceSyncTimeStamp type="NoneType">None</resourceSyncTimeStamp>
- <name type="str">server network</name>
+ <name type="str">downlink_0</name>
<role type="str">Server</role>
<networkType type="str">none</networkType>
<aggregation type="int">0</aggregation>
@@ -498,7 +498,7 @@
<networkRangeList ver="[0, [2, [0, [3, [0, [0, [0], [0]], [0]]]]]]" type="ixNetworkRangeListSequenceContainer" itemtype="ixNetworkRange">
<item ver="[13, [1, [1, [1, [0, [0]]]]]]" oid="3" type="ixNetworkRange">
<_smRangeObjectId type="str">1d9bf537-0c3d-4fdf-9b85-0a622cc77649</_smRangeObjectId>
- <name type="str">Network Range IP-R2 in server network (10.0.3.20+1)</name>
+ <name type="str">Network Range IP-R2 in downlink_0 (10.0.3.20+1)</name>
<rangeGroup ver="[3, [0, [1, [0, [0]]]]]" oid="4" type="ixIpDistributionGroup">
<name type="str">DistGroup1</name>
<ipDistributionMethod type="str">consecutiveIps</ipDistributionMethod>
@@ -863,12 +863,16 @@
<ipPreference type="int">2</ipPreference>
<tcpCloseOption type="int">0</tcpCloseOption>
<piggybackAck type="int">1</piggybackAck>
+ <tcpFastOpen type="int">0</tcpFastOpen>
<enableLargeHeader type="int">0</enableLargeHeader>
<maxHeaderLen type="int">1024</maxHeaderLen>
<useAllIPs type="int">0</useAllIPs>
<enableDecompressSupport type="int">0</enableDecompressSupport>
<enableIntegrityCheckSupport type="int">0</enableIntegrityCheckSupport>
<enableCRCCheckSupport type="int">0</enableCRCCheckSupport>
+ <enableAuth type="int">0</enableAuth>
+ <authProfileList ver="[0, [3, [0, [0, [0], [0]], [0]]]]" type="ixAuthProfileList" itemtype="ixAuthProfile"/>
+ <ipMappingList ver="[0, [3, [0, [0, [0], [0]], [0]]]]" type="ixAuthIpMapList" itemtype="ixAuthIpMap"/>
<uniqueID type="int">1</uniqueID>
<disableDnsResolutionCache type="int">0</disableDnsResolutionCache>
<methodProfileList ver="[0, [3, [0, [0, [0], [0]], [0]]]]" type="ixMethodProfileList" itemtype="ixMethodProfile"/>
@@ -890,7 +894,7 @@
</traffic>
<network ver="[17, [1, [6, [1, [0, [0]]]]]]" type="ixNetworkGroup">
<resourceSyncTimeStamp type="NoneType">None</resourceSyncTimeStamp>
- <name type="str">client network</name>
+ <name type="str">uplink_0</name>
<role type="str">Client</role>
<networkType type="str">none</networkType>
<aggregation type="int">0</aggregation>
@@ -904,7 +908,7 @@
<networkRangeList ver="[0, [2, [0, [3, [0, [0, [0], [0]], [0]]]]]]" type="ixNetworkRangeListSequenceContainer" itemtype="ixNetworkRange">
<item ver="[13, [1, [1, [1, [0, [0]]]]]]" oid="11" type="ixNetworkRange">
<_smRangeObjectId type="str">a3559674-8d95-4020-90b3-b42eacaef105</_smRangeObjectId>
- <name type="str">Network Range IP-R1 in client network (10.0.2.20+1)</name>
+ <name type="str">Network Range IP-R1 in uplink_0 (10.0.2.20+1)</name>
<rangeGroup ver="[3, [0, [1, [0, [0]]]]]" oid="12" type="ixIpDistributionGroup">
<name type="str">DistGroup1</name>
<ipDistributionMethod type="str">consecutiveIps</ipDistributionMethod>
@@ -1259,7 +1263,7 @@
<pollingInterval type="int">2</pollingInterval>
<allowCsvLogging type="bool">False</allowCsvLogging>
<enableDataStore type="bool">False</enableDataStore>
- <svConfiguration type="str">begin 666 &lt;data&gt;&#10;M&gt;)RE6&amp;UOXD80_BL6U46M5!N_@ ,.R2D!&lt;D%' %W:=54T6(/Q'?&amp;]JW7O+3J&#10;M?^_LVA@#-HG:#W&gt;L]WGF97=G9V?2^KA9&gt;M(*:.0&amp;_G5%4]3*QYO6A!'VU84U&#10;MT#UD*J:JJ(JAZA4D0,1G^V[$I,^PO:Z0D+D;ERC12@FY1,3 MT')\9XH&quot;1%&quot;&#10;MX?9P,.T.IE+UIC4:=R&lt;XO)WVAH/C[Y=NIS&gt;]O&gt;MW.= &gt;/M[U!MU.9CK*1N]Q&#10;MX,3X3&gt;N&gt;PH\8.5MI1;P8KBMZ11B*5OU@L7#]Q6[^GG@1&quot;&amp;SJ+F&amp;R]&gt;T[&gt;&quot;4K&#10;M-Z [AIJA$2/+&lt;$3!=H5G*6X(O+N@Z S?UNDVA!VF&quot;6R(V^P%Q!G1@('-&lt;K)3&#10;M&amp;L.18P^NXX#/%46G/G9],O.@0QB9L(#&quot;*6&amp;TWYV\'[4BZ;.6T*%AS,*893OY&#10;M&amp;'O,#;WCM0E29_(&amp;[9%L&gt;-A%Z%\[CEBP_(1G]IIQS)W-&gt;]&gt;#$6$9(N9O/: L&#10;MVOU*&amp;--^9&amp;TB][KRREAH5:OK]5I9&amp;TI %U5=5;7J;X_]B?T*2R*[/AX:;D8E&#10;MDW+&gt;EA)&amp;JSNK'9@37)/8I\,O03N$VS1(HX &quot;('KT/2:.&amp;WRB01P&gt; :[/;O16&#10;ME?^TJJ6LMN&gt;&quot;S^X#NHP],@'&amp;,%ZRL_O[XJ=-YPK_N[VZ^!$'[.IK&lt;KF3#ROY&#10;MT91Z,OCUA,T7D'+_V(-_[H?_[(?)E&lt; +,8[]8S\N/'9UD'=VEM5D(&amp;&amp;4! Y*&#10;MI$#,YK)F)N./%PMVE?,,5:56&gt;OX\F !UB&gt;?^1?@5NB.+7&quot;0DXN\.A]23?4R\&#10;M3SYA'?HH2=S+Y0M+=P.CW+7QIH?1,2]A\O4,R!(XRL&lt;:GZSF9XMEVH3!(J!;&#10;MSN!7N/HPG8XRV3QZ*M^&gt;+W87BQ/:UO,8(@S:Z)DKD5?W3R^]T:KVHH\&quot;#'F%&#10;M;N9&quot;\9%8L5] =WX[T7XM^]E3J4XLEBI52^&amp;'=1J[9SB3MSC&lt;C&gt;'L&amp;T^X*XC.&#10;ML1[&lt;Q:N'_U@I*TNKK(&lt;ID[ES%RAGVHY=G\UL1ZZ#/9-K6G,FSW0-9.WR4E5!&#10;M=S3=J(L]*5-P:@IC*!\&gt;^*EI=5,HR4&amp;G&lt;E\BH)-&gt;AX,369/KLJ[)!HKJ]5I3&#10;M4^5&amp;K5%OZEKS4C9JAF[6355KRIJJ&amp;D)S3KC0(XQJRL 9^IRAJ]HEBLIZ;:KK&#10;MEF%8AJX8N':S69/5FJ6J.V&lt;/I$KT!OAR(T/&quot;2VSYKI=&gt;1(;O8GI'2TXD286/&#10;MQ'YU?=CMRN_#)WDXF#SU!GAO&amp;TD,%_'&gt;4'?K./PQYTRMJ2N:V5#JIJ+MI305&#10;M)TVE5E,:^\DY-%3+NG2@81FU&gt;L-JVKIMF=I\_@&amp;SVQ%+JQG$,L%$@EUO6CAI&#10;M?-!S!DY=S_ETZGUO,P&quot;V#NCW7&lt;I'5@.+.07/7ZDGYU'$.:-I#!Z02.Q6;]/'&#10;MXD5J*)HJ=6\/E&gt;5H9Y3E$@]FQ@4E2XDGEDCZ&gt;=,P?WGN86GWG%AYYF[+W5OY&#10;M2^A@2M,.K95GHMYF#&quot;$F+Z&quot;YY1G*)2]JT]M32&quot;E.&quot;%\&gt;)S;QQ*KPBJA95LO-&#10;MGPI.5CGX\PSS/Q&lt;[F&quot;V\ Z+&lt;.8ER(?R&gt;5R7W^B0Y?1CRY[$D4MJ!YV%&amp;Y+6A&#10;M&gt;$B $3P()XFW0ZQ4N ^$^N#P%YGSYKQFS&quot;LXPDOUW'O!6E0Y4:&amp;:0[A4&quot;V96&#10;MSA35)2&gt;*U)%3&lt;XR?4Y3V$^=T'5/*U6&amp;Q']B!U_,QXN;$AF*-A:Q2I&gt;,@9C F&#10;M_J)8VQ%&lt;I&amp;89\C0RS&lt;+E&gt;.N+\+*X/!MO25PZ6Y]'+39Q!6_K &gt;4KKQY/2-G5&#10;M*RD!.3LIU[/6[S]TG5DUS[L&gt;W]N*;XU/]%W_.SC[:G\O4TTC83^*&quot;G'&gt;'=^T&#10;M1&quot;!+/KX_UQ6AK9)KRRN'&gt;-(@5:2 .D!% T5L#(RH#ROP=IUL54A@F^POP_,]&#10;M,A+2ZD,T0KDFF4/MP)^[BYB2?%O*=SU&quot;T$90G$?ZO2(T\3%YF[E\^DH3466=&#10;MOMX.1#9U182D8*Z&amp;1JWXMGGXL.V*.'[:J:&amp;\70=6;PCD&amp;-6\Y_\W-H0X7R?_&#10;*R?YN&lt;O,OFQ*L3@ &#10; &#10;end&#10;</svConfiguration>
+ <svConfiguration type="str">begin 666 &lt;data&gt;&#10;M&gt;)RE6&amp;USXC80_BL&gt;.LVTT_H= R$O-SD@%^9(8#&quot;7ZTS3R0A[(&gt;X9VR?+0-KI&#10;M?^]*-L88FV3:#W?(&gt;IY=K:1'JU4N/VQ7OK0&amp;&amp;GMA&lt;-70%:WQX?K29H0]&gt;K !&#10;MNH=:2DM3-,746@TD0,Q[1U[,I,_P&gt;M4@$?.V'E'BM1)QBYA!X(!2X'VE)$((&#10;MC7OCA]G@82:IUY&gt;3Z&lt;#&amp;YLUL.'XH?S\/^L/9S&lt;?1@ .]\?W'X&lt;.@GP\=YZWW&#10;M!' T^/7E+87O&quot;7)&gt;I37Q$[AJ&amp; TQ4+P&gt;A&lt;NE%RQW_;?$CT%@,V\%]FO@?(07&#10;MLO9&quot;NF-H.1HSLHHF%!Q/1);AIL '2XK!\&amp;6=O4:PPW2!C7&amp;9_9&quot;X$QHR&lt;%C!&#10;M=D83* 5VY[DN!-Q1?!SC(&quot;!S'_J$$9N%%(X)D_WJ%.-H5EF?' D#&amp;B&lt;L2EB^&#10;MDO&gt;)S[S(+\]-D/KV&amp;[1[LN6RBS&amp;^7A*S&lt;/4)]^PEY[1V8]YZ/DP(RQ'1?^,#&#10;M9?'N5T)-!W%W&amp;WM7C1?&amp;HJZJ;C8;96,J(5VJAJ;IZF_W(]MY@161O0 W#1&gt;C&#10;MD5NY;UN)0=7=J'U8$)R36*?#+T$[A'LTS%1 1 M?4^)ZX6?:)A$)&lt; +V+5Q&#10;MJ?*?2[66U?,]&quot;-AM2%&gt;)3VQ@#/62[]W?9S]L^Q?XW\W%V?&lt;D9!&gt;/Z&gt;%./[KI&#10;MCZY8:&gt;/7(S:?0,;]?0_^L6_^LV^F1P(/Q#0)RG&amp;&lt;^&gt;SB(._L1M;2AH0J&quot;5VT&#10;MR(&quot;$+62]E;8_G&quot;W912$R=)6-,@P6H0W4([[W%^%'Z&quot;-9%I20FK];#EDD&gt;TV\&#10;MSSYE'&lt;8H23S*U3/+5@-5[CEXTJ.XS$N9?#X/9 4&lt;Y6V==ZK%WFJ;'F&amp;P#.DK&#10;M9_ CK-[-9I/&lt;MH@&gt;V_&lt;6R]W!XH1&gt;]VD*,8HV?N).Y/7MU^?A9-U\-B8A2OZY&#10;M%P9.0BD_S0K=+L0@)1?5,0+=S&lt;&amp;-]_/:]QY;]1,Q;4FMA&gt;\VF8Y/&lt;.RW.#R,&#10;M\?Q/GGS7$)]BW7G+%Q__L5I6GF+9$-,G\Q8&gt;4,YT7,&gt;:SQU7ML&quot;9RTW]?&quot;[/&#10;M#1UDO=W6-#!&lt;W3 ML29U#HZ'0CT5I8*?NFZUA),&quot;=&amp;SW)09J#_L&lt;M&amp;5=MF1#&#10;MQS&quot;L]GE'-UHMN6U89M.RFJ:L-[5FL],V];;&lt;-*V6EOHNF%?&amp;A!JG#-QQP!F&amp;&#10;MIG=D[5S6M9G&gt;[%I6U]&quot;4\V;3;%FM7S2]JVF[&lt; ^L:OR&amp;&gt;(\C0\(CW0T\/SN6&#10;M#&amp;_)[,36[$F:&amp;.^)\^(%L%L7&gt;SAZG(P&gt;A_:T;VNI'&quot;MY;[B[&lt;5U^M7.FKBF&amp;&#10;MV58,75=TT]S;+:&quot;C=;MFDS2[K8ZI=&lt;G&lt;Q74P.S_JQF$R4^L\'\&lt;PW#X VX3T&#10;MVRZ-(ZN#!9J&quot;$E!TRQ#NJD@G7$W!!Q*+20^W(ZQ(I(ZB:]+@YM!9@7;&quot;62&amp;;&#10;M8+I;4K*2&gt;(:(I9^VG=;/3T.LUY[249YXW/+@1OX2N9BG2J'7IY3A=@H19B2@&#10;MA&gt;F92IM7JE8G\U)!J3[97^YMA_B0[F,FRU+_L:&amp;]+L&quot;?YYC4N=E!;Z6410US&#10;M)%9A_)ZKHG&quot;EI(EZ'/$[KT8JO=#W,;7Q@D_&lt;#L (;H2;&quot;NX0JS4&gt; :$!N/R:&#10;MY;P%+P2+#DIXK9];/]R(TB6N=',(UWK!%,F9HF3D1)$!&quot;F[*^&quot;E'V2/AE*\R&#10;MI=X=5O&quot;A$_K# !6W( Y4&gt;ZQDU3J=A@F#*0F6U=Y*&lt;)6;5&lt;3SR&quot;R72WGIJ_ Z&#10;M79[46ZI+]S7@JL676&lt;4E&gt;4!YY&quot;7A$2D_&gt;C5U'6&gt;G-7C^GOL/3\F\1.=/F&lt;!_&#10;M%=\Z[QAYP3=P]R7\WD;-E+!OQ94X?_)&gt;7PHA2P%&gt;(U&lt;-X:U1&gt;&amp;LW#O'TU=.0&#10;M0NH&quot;%:\BXJ PXA&amp;LP=\]3U5A@6_?8!6=?O@B(2LCQ.NF\/+E$!9P&quot;V^94%)\&#10;M:_)5CQ%T$!3[D7VO&quot;4UC3*]8;I]=MD242\&gt;7L NQ0SVAD PL%,;H%2\W'V^V&#10;D737&amp;=SL;J#BN&quot;^LW# H,M1CY_]6&amp;,.?SY#_Y'T.N_P5*5:-J&#10; &#10;end&#10;</svConfiguration>
<svRestConfiguration type="str">(dp1&#10;S'HTTP Server Per URL'&#10;p2&#10;ccopy_reg&#10;_reconstructor&#10;p3&#10;(cLib.Rest.ixPersistentStatSource&#10;ixConfiguredStatsList&#10;p4&#10;c__builtin__&#10;list&#10;p5&#10;(lp6&#10;g3&#10;(cLib.Rest.ixPersistentStatSource&#10;ixConfiguredStat&#10;p7&#10;c__builtin__&#10;object&#10;p8&#10;NtRp9&#10;(dp10&#10;S'proxyPropertyList'&#10;p11&#10;NsS'_objectID'&#10;p12&#10;I0&#10;sS'enabled'&#10;p13&#10;I01&#10;sS'filterList'&#10;p14&#10;g3&#10;(cLib.Rest.ixPersistentStatSource&#10;ixRestFilters&#10;p15&#10;g8&#10;NtRp16&#10;(dp17&#10;S'cardFilters'&#10;p18&#10;g3&#10;(cLib.Rest.ixPersistentStatSource&#10;ixCardFilterList&#10;p19&#10;g5&#10;(ltRp20&#10;(dp21&#10;g12&#10;I-1&#10;sS'_resourceLocked'&#10;p22&#10;I00&#10;sg11&#10;NsbsS'activityFilters'&#10;p23&#10;g3&#10;(cLib.Rest.ixPersistentStatSource&#10;ixActivityFilterList&#10;p24&#10;g5&#10;(ltRp25&#10;(dp26&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sS'chassisFilters'&#10;p27&#10;g3&#10;(cLib.Rest.ixPersistentStatSource&#10;ixChassisFilterList&#10;p28&#10;g5&#10;(ltRp29&#10;(dp30&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sS'portFilters'&#10;p31&#10;g3&#10;(cLib.Rest.ixPersistentStatSource&#10;ixPortFilterList&#10;p32&#10;g5&#10;(ltRp33&#10;(dp34&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;NsbsbsS'caption'&#10;p35&#10;S'HTTP Requests Received'&#10;p36&#10;sg22&#10;I00&#10;sS'aggregationType'&#10;p37&#10;S'kSum'&#10;p38&#10;sS'statName'&#10;p39&#10;g36&#10;sbag3&#10;(g7&#10;g8&#10;NtRp40&#10;(dp41&#10;g11&#10;Nsg12&#10;I1&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp42&#10;(dp43&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp44&#10;(dp45&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp46&#10;(dp47&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp48&#10;(dp49&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp50&#10;(dp51&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Successful'&#10;p52&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g52&#10;sbag3&#10;(g7&#10;g8&#10;NtRp53&#10;(dp54&#10;g11&#10;Nsg12&#10;I2&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp55&#10;(dp56&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp57&#10;(dp58&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp59&#10;(dp60&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp61&#10;(dp62&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp63&#10;(dp64&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (404)'&#10;p65&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g65&#10;sbag3&#10;(g7&#10;g8&#10;NtRp66&#10;(dp67&#10;g11&#10;Nsg12&#10;I3&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp68&#10;(dp69&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp70&#10;(dp71&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp72&#10;(dp73&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp74&#10;(dp75&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp76&#10;(dp77&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (50x)'&#10;p78&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g78&#10;sbag3&#10;(g7&#10;g8&#10;NtRp79&#10;(dp80&#10;g11&#10;Nsg12&#10;I4&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp81&#10;(dp82&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp83&#10;(dp84&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp85&#10;(dp86&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp87&#10;(dp88&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp89&#10;(dp90&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (Write Error)'&#10;p91&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g91&#10;sbag3&#10;(g7&#10;g8&#10;NtRp92&#10;(dp93&#10;g11&#10;Nsg12&#10;I5&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp94&#10;(dp95&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp96&#10;(dp97&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp98&#10;(dp99&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp100&#10;(dp101&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp102&#10;(dp103&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Responses Sent'&#10;p104&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g104&#10;sbag3&#10;(g7&#10;g8&#10;NtRp105&#10;(dp106&#10;g11&#10;Nsg12&#10;I6&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp107&#10;(dp108&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp109&#10;(dp110&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp111&#10;(dp112&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp113&#10;(dp114&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp115&#10;(dp116&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Responses Sent (1xx)'&#10;p117&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g117&#10;sbag3&#10;(g7&#10;g8&#10;NtRp118&#10;(dp119&#10;g11&#10;Nsg12&#10;I7&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp120&#10;(dp121&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp122&#10;(dp123&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp124&#10;(dp125&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp126&#10;(dp127&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp128&#10;(dp129&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Responses Sent (2xx)'&#10;p130&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g130&#10;sbag3&#10;(g7&#10;g8&#10;NtRp131&#10;(dp132&#10;g11&#10;Nsg12&#10;I8&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp133&#10;(dp134&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp135&#10;(dp136&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp137&#10;(dp138&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp139&#10;(dp140&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp141&#10;(dp142&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Responses Sent (3xx)'&#10;p143&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g143&#10;sbag3&#10;(g7&#10;g8&#10;NtRp144&#10;(dp145&#10;g11&#10;Nsg12&#10;I9&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp146&#10;(dp147&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp148&#10;(dp149&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp150&#10;(dp151&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp152&#10;(dp153&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp154&#10;(dp155&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Responses Sent (4xx)'&#10;p156&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g156&#10;sbag3&#10;(g7&#10;g8&#10;NtRp157&#10;(dp158&#10;g11&#10;Nsg12&#10;I10&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp159&#10;(dp160&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp161&#10;(dp162&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp163&#10;(dp164&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp165&#10;(dp166&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp167&#10;(dp168&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Responses Sent (5xx)'&#10;p169&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g169&#10;sbag3&#10;(g7&#10;g8&#10;NtRp170&#10;(dp171&#10;g11&#10;Nsg12&#10;I11&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp172&#10;(dp173&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp174&#10;(dp175&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp176&#10;(dp177&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp178&#10;(dp179&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp180&#10;(dp181&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Responses Sent (Other)'&#10;p182&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g182&#10;sbag3&#10;(g7&#10;g8&#10;NtRp183&#10;(dp184&#10;g11&#10;Nsg12&#10;I12&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp185&#10;(dp186&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp187&#10;(dp188&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp189&#10;(dp190&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp191&#10;(dp192&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp193&#10;(dp194&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Responses Failed (Write Error)'&#10;p195&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g195&#10;sbag3&#10;(g7&#10;g8&#10;NtRp196&#10;(dp197&#10;g11&#10;Nsg12&#10;I13&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp198&#10;(dp199&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp200&#10;(dp201&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp202&#10;(dp203&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp204&#10;(dp205&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp206&#10;(dp207&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Responses Failed (Aborted)'&#10;p208&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g208&#10;sbag3&#10;(g7&#10;g8&#10;NtRp209&#10;(dp210&#10;g11&#10;Nsg12&#10;I14&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp211&#10;(dp212&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp213&#10;(dp214&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp215&#10;(dp216&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp217&#10;(dp218&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp219&#10;(dp220&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Responses Failed (Other)'&#10;p221&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g221&#10;sbag3&#10;(g7&#10;g8&#10;NtRp222&#10;(dp223&#10;g11&#10;Nsg12&#10;I15&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp224&#10;(dp225&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp226&#10;(dp227&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp228&#10;(dp229&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp230&#10;(dp231&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp232&#10;(dp233&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Chunk Encoded Responses Sent'&#10;p234&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g234&#10;sbag3&#10;(g7&#10;g8&#10;NtRp235&#10;(dp236&#10;g11&#10;Nsg12&#10;I16&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp237&#10;(dp238&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp239&#10;(dp240&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp241&#10;(dp242&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp243&#10;(dp244&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp245&#10;(dp246&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Total Chunks Sent'&#10;p247&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g247&#10;sbag3&#10;(g7&#10;g8&#10;NtRp248&#10;(dp249&#10;g11&#10;Nsg12&#10;I17&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp250&#10;(dp251&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp252&#10;(dp253&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp254&#10;(dp255&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp256&#10;(dp257&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp258&#10;(dp259&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Average Chunk Size'&#10;p260&#10;sg22&#10;I00&#10;sg37&#10;S'kWeightedAverage'&#10;p261&#10;sg39&#10;g260&#10;sbag3&#10;(g7&#10;g8&#10;NtRp262&#10;(dp263&#10;g11&#10;Nsg12&#10;I18&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp264&#10;(dp265&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp266&#10;(dp267&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp268&#10;(dp269&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp270&#10;(dp271&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp272&#10;(dp273&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Average Chunks per Response'&#10;p274&#10;sg22&#10;I00&#10;sg37&#10;g261&#10;sg39&#10;g274&#10;sbag3&#10;(g7&#10;g8&#10;NtRp275&#10;(dp276&#10;g11&#10;Nsg12&#10;I19&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp277&#10;(dp278&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp279&#10;(dp280&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp281&#10;(dp282&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp283&#10;(dp284&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp285&#10;(dp286&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Chunk Encoded Requests Received'&#10;p287&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g287&#10;sbag3&#10;(g7&#10;g8&#10;NtRp288&#10;(dp289&#10;g11&#10;Nsg12&#10;I20&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp290&#10;(dp291&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp292&#10;(dp293&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp294&#10;(dp295&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp296&#10;(dp297&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp298&#10;(dp299&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Total Chunks Received'&#10;p300&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g300&#10;sbag3&#10;(g7&#10;g8&#10;NtRp301&#10;(dp302&#10;g11&#10;Nsg12&#10;I21&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp303&#10;(dp304&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp305&#10;(dp306&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp307&#10;(dp308&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp309&#10;(dp310&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp311&#10;(dp312&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Average Received Chunk Size'&#10;p313&#10;sg22&#10;I00&#10;sg37&#10;g261&#10;sg39&#10;g313&#10;sbag3&#10;(g7&#10;g8&#10;NtRp314&#10;(dp315&#10;g11&#10;Nsg12&#10;I22&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp316&#10;(dp317&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp318&#10;(dp319&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp320&#10;(dp321&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp322&#10;(dp323&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp324&#10;(dp325&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Average Chunks per Request'&#10;p326&#10;sg22&#10;I00&#10;sg37&#10;g261&#10;sg39&#10;g326&#10;sbag3&#10;(g7&#10;g8&#10;NtRp327&#10;(dp328&#10;g11&#10;Nsg12&#10;I23&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp329&#10;(dp330&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp331&#10;(dp332&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp333&#10;(dp334&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp335&#10;(dp336&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp337&#10;(dp338&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Content-MD5 Requests Received'&#10;p339&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g339&#10;sbag3&#10;(g7&#10;g8&#10;NtRp340&#10;(dp341&#10;g11&#10;Nsg12&#10;I24&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp342&#10;(dp343&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp344&#10;(dp345&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp346&#10;(dp347&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp348&#10;(dp349&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp350&#10;(dp351&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Content-MD5 Check Successful'&#10;p352&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g352&#10;sbag3&#10;(g7&#10;g8&#10;NtRp353&#10;(dp354&#10;g11&#10;Nsg12&#10;I25&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp355&#10;(dp356&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp357&#10;(dp358&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp359&#10;(dp360&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp361&#10;(dp362&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp363&#10;(dp364&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Content-MD5 Check Failed'&#10;p365&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g365&#10;sbag3&#10;(g7&#10;g8&#10;NtRp366&#10;(dp367&#10;g11&#10;Nsg12&#10;I26&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp368&#10;(dp369&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp370&#10;(dp371&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp372&#10;(dp373&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp374&#10;(dp375&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp376&#10;(dp377&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP OPTIONS Request Received'&#10;p378&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g378&#10;sbag3&#10;(g7&#10;g8&#10;NtRp379&#10;(dp380&#10;g11&#10;Nsg12&#10;I27&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp381&#10;(dp382&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp383&#10;(dp384&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp385&#10;(dp386&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp387&#10;(dp388&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp389&#10;(dp390&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP OPTIONS Response Sent'&#10;p391&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g391&#10;sbatRp392&#10;(dp393&#10;g12&#10;I27&#10;sg22&#10;I00&#10;sg11&#10;NsbsS'HTTP Server'&#10;p394&#10;g3&#10;(g4&#10;g5&#10;(lp395&#10;g3&#10;(g7&#10;g8&#10;NtRp396&#10;(dp397&#10;g11&#10;Nsg12&#10;I0&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp398&#10;(dp399&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp400&#10;(dp401&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp402&#10;(dp403&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp404&#10;(dp405&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp406&#10;(dp407&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g36&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g36&#10;sbag3&#10;(g7&#10;g8&#10;NtRp408&#10;(dp409&#10;g11&#10;Nsg12&#10;I1&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp410&#10;(dp411&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp412&#10;(dp413&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp414&#10;(dp415&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp416&#10;(dp417&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp418&#10;(dp419&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g52&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g52&#10;sbag3&#10;(g7&#10;g8&#10;NtRp420&#10;(dp421&#10;g11&#10;Nsg12&#10;I2&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp422&#10;(dp423&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp424&#10;(dp425&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp426&#10;(dp427&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp428&#10;(dp429&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp430&#10;(dp431&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed'&#10;p432&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g432&#10;sbag3&#10;(g7&#10;g8&#10;NtRp433&#10;(dp434&#10;g11&#10;Nsg12&#10;I3&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp435&#10;(dp436&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp437&#10;(dp438&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp439&#10;(dp440&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp441&#10;(dp442&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp443&#10;(dp444&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g65&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g65&#10;sbag3&#10;(g7&#10;g8&#10;NtRp445&#10;(dp446&#10;g11&#10;Nsg12&#10;I4&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp447&#10;(dp448&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp449&#10;(dp450&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp451&#10;(dp452&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp453&#10;(dp454&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp455&#10;(dp456&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g78&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g78&#10;sbag3&#10;(g7&#10;g8&#10;NtRp457&#10;(dp458&#10;g11&#10;Nsg12&#10;I5&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp459&#10;(dp460&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp461&#10;(dp462&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp463&#10;(dp464&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp465&#10;(dp466&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp467&#10;(dp468&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g91&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g91&#10;sbag3&#10;(g7&#10;g8&#10;NtRp469&#10;(dp470&#10;g11&#10;Nsg12&#10;I6&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp471&#10;(dp472&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp473&#10;(dp474&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp475&#10;(dp476&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp477&#10;(dp478&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp479&#10;(dp480&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (Aborted)'&#10;p481&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g481&#10;sbag3&#10;(g7&#10;g8&#10;NtRp482&#10;(dp483&#10;g11&#10;Nsg12&#10;I7&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp484&#10;(dp485&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp486&#10;(dp487&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp488&#10;(dp489&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp490&#10;(dp491&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp492&#10;(dp493&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Sessions Rejected (503)'&#10;p494&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g494&#10;sbag3&#10;(g7&#10;g8&#10;NtRp495&#10;(dp496&#10;g11&#10;Nsg12&#10;I8&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp497&#10;(dp498&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp499&#10;(dp500&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp501&#10;(dp502&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp503&#10;(dp504&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp505&#10;(dp506&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Session Timeouts (408)'&#10;p507&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g507&#10;sbag3&#10;(g7&#10;g8&#10;NtRp508&#10;(dp509&#10;g11&#10;Nsg12&#10;I9&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp510&#10;(dp511&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp512&#10;(dp513&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp514&#10;(dp515&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp516&#10;(dp517&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp518&#10;(dp519&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g117&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g117&#10;sbag3&#10;(g7&#10;g8&#10;NtRp520&#10;(dp521&#10;g11&#10;Nsg12&#10;I10&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp522&#10;(dp523&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp524&#10;(dp525&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp526&#10;(dp527&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp528&#10;(dp529&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp530&#10;(dp531&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g130&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g130&#10;sbag3&#10;(g7&#10;g8&#10;NtRp532&#10;(dp533&#10;g11&#10;Nsg12&#10;I11&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp534&#10;(dp535&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp536&#10;(dp537&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp538&#10;(dp539&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp540&#10;(dp541&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp542&#10;(dp543&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g143&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g143&#10;sbag3&#10;(g7&#10;g8&#10;NtRp544&#10;(dp545&#10;g11&#10;Nsg12&#10;I12&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp546&#10;(dp547&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp548&#10;(dp549&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp550&#10;(dp551&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp552&#10;(dp553&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp554&#10;(dp555&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g156&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g156&#10;sbag3&#10;(g7&#10;g8&#10;NtRp556&#10;(dp557&#10;g11&#10;Nsg12&#10;I13&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp558&#10;(dp559&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp560&#10;(dp561&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp562&#10;(dp563&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp564&#10;(dp565&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp566&#10;(dp567&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g169&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g169&#10;sbag3&#10;(g7&#10;g8&#10;NtRp568&#10;(dp569&#10;g11&#10;Nsg12&#10;I14&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp570&#10;(dp571&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp572&#10;(dp573&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp574&#10;(dp575&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp576&#10;(dp577&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp578&#10;(dp579&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g182&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g182&#10;sbag3&#10;(g7&#10;g8&#10;NtRp580&#10;(dp581&#10;g11&#10;Nsg12&#10;I15&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp582&#10;(dp583&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp584&#10;(dp585&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp586&#10;(dp587&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp588&#10;(dp589&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp590&#10;(dp591&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Bytes Received'&#10;p592&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g592&#10;sbag3&#10;(g7&#10;g8&#10;NtRp593&#10;(dp594&#10;g11&#10;Nsg12&#10;I16&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp595&#10;(dp596&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp597&#10;(dp598&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp599&#10;(dp600&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp601&#10;(dp602&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp603&#10;(dp604&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Bytes Sent'&#10;p605&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g605&#10;sbag3&#10;(g7&#10;g8&#10;NtRp606&#10;(dp607&#10;g11&#10;Nsg12&#10;I17&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp608&#10;(dp609&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp610&#10;(dp611&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp612&#10;(dp613&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp614&#10;(dp615&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp616&#10;(dp617&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Content Bytes Received'&#10;p618&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g618&#10;sbag3&#10;(g7&#10;g8&#10;NtRp619&#10;(dp620&#10;g11&#10;Nsg12&#10;I18&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp621&#10;(dp622&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp623&#10;(dp624&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp625&#10;(dp626&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp627&#10;(dp628&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp629&#10;(dp630&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Content Bytes Sent'&#10;p631&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g631&#10;sbag3&#10;(g7&#10;g8&#10;NtRp632&#10;(dp633&#10;g11&#10;Nsg12&#10;I19&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp634&#10;(dp635&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp636&#10;(dp637&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp638&#10;(dp639&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp640&#10;(dp641&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp642&#10;(dp643&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Cookies Received'&#10;p644&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g644&#10;sbag3&#10;(g7&#10;g8&#10;NtRp645&#10;(dp646&#10;g11&#10;Nsg12&#10;I20&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp647&#10;(dp648&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp649&#10;(dp650&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp651&#10;(dp652&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp653&#10;(dp654&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp655&#10;(dp656&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Cookies Sent'&#10;p657&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g657&#10;sbag3&#10;(g7&#10;g8&#10;NtRp658&#10;(dp659&#10;g11&#10;Nsg12&#10;I21&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp660&#10;(dp661&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp662&#10;(dp663&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp664&#10;(dp665&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp666&#10;(dp667&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp668&#10;(dp669&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Cookies Received With Matching ServerID'&#10;p670&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g670&#10;sbag3&#10;(g7&#10;g8&#10;NtRp671&#10;(dp672&#10;g11&#10;Nsg12&#10;I22&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp673&#10;(dp674&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp675&#10;(dp676&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp677&#10;(dp678&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp679&#10;(dp680&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp681&#10;(dp682&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Cookies Received With Non-matching ServerID'&#10;p683&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g683&#10;sbag3&#10;(g7&#10;g8&#10;NtRp684&#10;(dp685&#10;g11&#10;Nsg12&#10;I23&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp686&#10;(dp687&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp688&#10;(dp689&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp690&#10;(dp691&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp692&#10;(dp693&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp694&#10;(dp695&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Chunked Encoded Responses Sent'&#10;p696&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g696&#10;sbag3&#10;(g7&#10;g8&#10;NtRp697&#10;(dp698&#10;g11&#10;Nsg12&#10;I24&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp699&#10;(dp700&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp701&#10;(dp702&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp703&#10;(dp704&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp705&#10;(dp706&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp707&#10;(dp708&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g247&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g247&#10;sbag3&#10;(g7&#10;g8&#10;NtRp709&#10;(dp710&#10;g11&#10;Nsg12&#10;I25&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp711&#10;(dp712&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp713&#10;(dp714&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp715&#10;(dp716&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp717&#10;(dp718&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp719&#10;(dp720&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Chunked Transfer-Encoded Requests Received'&#10;p721&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g721&#10;sbag3&#10;(g7&#10;g8&#10;NtRp722&#10;(dp723&#10;g11&#10;Nsg12&#10;I26&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp724&#10;(dp725&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp726&#10;(dp727&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp728&#10;(dp729&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp730&#10;(dp731&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp732&#10;(dp733&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g300&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g300&#10;sbag3&#10;(g7&#10;g8&#10;NtRp734&#10;(dp735&#10;g11&#10;Nsg12&#10;I27&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp736&#10;(dp737&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp738&#10;(dp739&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp740&#10;(dp741&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp742&#10;(dp743&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp744&#10;(dp745&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g339&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g339&#10;sbag3&#10;(g7&#10;g8&#10;NtRp746&#10;(dp747&#10;g11&#10;Nsg12&#10;I28&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp748&#10;(dp749&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp750&#10;(dp751&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp752&#10;(dp753&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp754&#10;(dp755&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp756&#10;(dp757&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g352&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g352&#10;sbag3&#10;(g7&#10;g8&#10;NtRp758&#10;(dp759&#10;g11&#10;Nsg12&#10;I29&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp760&#10;(dp761&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp762&#10;(dp763&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp764&#10;(dp765&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp766&#10;(dp767&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp768&#10;(dp769&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g365&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g365&#10;sbag3&#10;(g7&#10;g8&#10;NtRp770&#10;(dp771&#10;g11&#10;Nsg12&#10;I30&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp772&#10;(dp773&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp774&#10;(dp775&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp776&#10;(dp777&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp778&#10;(dp779&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp780&#10;(dp781&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g378&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g378&#10;sbag3&#10;(g7&#10;g8&#10;NtRp782&#10;(dp783&#10;g11&#10;Nsg12&#10;I31&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp784&#10;(dp785&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp786&#10;(dp787&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp788&#10;(dp789&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp790&#10;(dp791&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp792&#10;(dp793&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g391&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g391&#10;sbag3&#10;(g7&#10;g8&#10;NtRp794&#10;(dp795&#10;g11&#10;Nsg12&#10;I32&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp796&#10;(dp797&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp798&#10;(dp799&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp800&#10;(dp801&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp802&#10;(dp803&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp804&#10;(dp805&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 DATA Frames Sent'&#10;p806&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g806&#10;sbag3&#10;(g7&#10;g8&#10;NtRp807&#10;(dp808&#10;g11&#10;Nsg12&#10;I33&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp809&#10;(dp810&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp811&#10;(dp812&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp813&#10;(dp814&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp815&#10;(dp816&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp817&#10;(dp818&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 HEADER Frames Sent'&#10;p819&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g819&#10;sbag3&#10;(g7&#10;g8&#10;NtRp820&#10;(dp821&#10;g11&#10;Nsg12&#10;I34&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp822&#10;(dp823&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp824&#10;(dp825&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp826&#10;(dp827&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp828&#10;(dp829&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp830&#10;(dp831&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 PRIORITY Frames Sent'&#10;p832&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g832&#10;sbag3&#10;(g7&#10;g8&#10;NtRp833&#10;(dp834&#10;g11&#10;Nsg12&#10;I35&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp835&#10;(dp836&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp837&#10;(dp838&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp839&#10;(dp840&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp841&#10;(dp842&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp843&#10;(dp844&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 RESETSTREAM Frames Sent'&#10;p845&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g845&#10;sbag3&#10;(g7&#10;g8&#10;NtRp846&#10;(dp847&#10;g11&#10;Nsg12&#10;I36&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp848&#10;(dp849&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp850&#10;(dp851&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp852&#10;(dp853&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp854&#10;(dp855&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp856&#10;(dp857&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 SETTINGS Frames Sent'&#10;p858&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g858&#10;sbag3&#10;(g7&#10;g8&#10;NtRp859&#10;(dp860&#10;g11&#10;Nsg12&#10;I37&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp861&#10;(dp862&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp863&#10;(dp864&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp865&#10;(dp866&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp867&#10;(dp868&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp869&#10;(dp870&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 PUSHPROMISE Frames Sent'&#10;p871&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g871&#10;sbag3&#10;(g7&#10;g8&#10;NtRp872&#10;(dp873&#10;g11&#10;Nsg12&#10;I38&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp874&#10;(dp875&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp876&#10;(dp877&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp878&#10;(dp879&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp880&#10;(dp881&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp882&#10;(dp883&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 PING Frames Sent'&#10;p884&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g884&#10;sbag3&#10;(g7&#10;g8&#10;NtRp885&#10;(dp886&#10;g11&#10;Nsg12&#10;I39&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp887&#10;(dp888&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp889&#10;(dp890&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp891&#10;(dp892&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp893&#10;(dp894&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp895&#10;(dp896&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 GOAWAY Frames Sent'&#10;p897&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g897&#10;sbag3&#10;(g7&#10;g8&#10;NtRp898&#10;(dp899&#10;g11&#10;Nsg12&#10;I40&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp900&#10;(dp901&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp902&#10;(dp903&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp904&#10;(dp905&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp906&#10;(dp907&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp908&#10;(dp909&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 WINDOWUPDATE Frames Sent'&#10;p910&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g910&#10;sbag3&#10;(g7&#10;g8&#10;NtRp911&#10;(dp912&#10;g11&#10;Nsg12&#10;I41&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp913&#10;(dp914&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp915&#10;(dp916&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp917&#10;(dp918&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp919&#10;(dp920&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp921&#10;(dp922&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 CONTINUATION Frames Sent'&#10;p923&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g923&#10;sbag3&#10;(g7&#10;g8&#10;NtRp924&#10;(dp925&#10;g11&#10;Nsg12&#10;I42&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp926&#10;(dp927&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp928&#10;(dp929&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp930&#10;(dp931&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp932&#10;(dp933&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp934&#10;(dp935&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 DATA Frames Received'&#10;p936&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g936&#10;sbag3&#10;(g7&#10;g8&#10;NtRp937&#10;(dp938&#10;g11&#10;Nsg12&#10;I43&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp939&#10;(dp940&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp941&#10;(dp942&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp943&#10;(dp944&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp945&#10;(dp946&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp947&#10;(dp948&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 HEADER Frames Received'&#10;p949&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g949&#10;sbag3&#10;(g7&#10;g8&#10;NtRp950&#10;(dp951&#10;g11&#10;Nsg12&#10;I44&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp952&#10;(dp953&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp954&#10;(dp955&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp956&#10;(dp957&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp958&#10;(dp959&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp960&#10;(dp961&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 PRIORITY Frames Received'&#10;p962&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g962&#10;sbag3&#10;(g7&#10;g8&#10;NtRp963&#10;(dp964&#10;g11&#10;Nsg12&#10;I45&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp965&#10;(dp966&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp967&#10;(dp968&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp969&#10;(dp970&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp971&#10;(dp972&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp973&#10;(dp974&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 RESETSTREAM Frames Received'&#10;p975&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g975&#10;sbag3&#10;(g7&#10;g8&#10;NtRp976&#10;(dp977&#10;g11&#10;Nsg12&#10;I46&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp978&#10;(dp979&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp980&#10;(dp981&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp982&#10;(dp983&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp984&#10;(dp985&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp986&#10;(dp987&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 SETTINGS Frames Received'&#10;p988&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g988&#10;sbag3&#10;(g7&#10;g8&#10;NtRp989&#10;(dp990&#10;g11&#10;Nsg12&#10;I47&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp991&#10;(dp992&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp993&#10;(dp994&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp995&#10;(dp996&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp997&#10;(dp998&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp999&#10;(dp1000&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 PUSHPROMISE Frames Received'&#10;p1001&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1001&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1002&#10;(dp1003&#10;g11&#10;Nsg12&#10;I48&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1004&#10;(dp1005&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1006&#10;(dp1007&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1008&#10;(dp1009&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1010&#10;(dp1011&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1012&#10;(dp1013&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 PING Frames Received'&#10;p1014&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1014&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1015&#10;(dp1016&#10;g11&#10;Nsg12&#10;I49&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1017&#10;(dp1018&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1019&#10;(dp1020&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1021&#10;(dp1022&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1023&#10;(dp1024&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1025&#10;(dp1026&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 GOAWAY Frames Received'&#10;p1027&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1027&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1028&#10;(dp1029&#10;g11&#10;Nsg12&#10;I50&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1030&#10;(dp1031&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1032&#10;(dp1033&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1034&#10;(dp1035&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1036&#10;(dp1037&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1038&#10;(dp1039&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 WINDOWUPDATE Frames Received'&#10;p1040&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1040&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1041&#10;(dp1042&#10;g11&#10;Nsg12&#10;I51&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1043&#10;(dp1044&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1045&#10;(dp1046&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1047&#10;(dp1048&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1049&#10;(dp1050&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1051&#10;(dp1052&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 CONTINUATION Frames Received'&#10;p1053&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1053&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1054&#10;(dp1055&#10;g11&#10;Nsg12&#10;I52&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1056&#10;(dp1057&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1058&#10;(dp1059&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1060&#10;(dp1061&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1062&#10;(dp1063&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1064&#10;(dp1065&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Streams Initiated by Client'&#10;p1066&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1066&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1067&#10;(dp1068&#10;g11&#10;Nsg12&#10;I53&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1069&#10;(dp1070&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1071&#10;(dp1072&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1073&#10;(dp1074&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1075&#10;(dp1076&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1077&#10;(dp1078&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Streams Initiated by Server'&#10;p1079&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1079&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1080&#10;(dp1081&#10;g11&#10;Nsg12&#10;I54&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1082&#10;(dp1083&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1084&#10;(dp1085&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1086&#10;(dp1087&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1088&#10;(dp1089&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1090&#10;(dp1091&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Streams Succeeded Client to Server'&#10;p1092&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1092&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1093&#10;(dp1094&#10;g11&#10;Nsg12&#10;I55&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1095&#10;(dp1096&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1097&#10;(dp1098&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1099&#10;(dp1100&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1101&#10;(dp1102&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1103&#10;(dp1104&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Streams Succeeded Server to Client'&#10;p1105&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1105&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1106&#10;(dp1107&#10;g11&#10;Nsg12&#10;I56&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1108&#10;(dp1109&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1110&#10;(dp1111&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1112&#10;(dp1113&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1114&#10;(dp1115&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1116&#10;(dp1117&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Streams Failed Client to Server'&#10;p1118&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1118&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1119&#10;(dp1120&#10;g11&#10;Nsg12&#10;I57&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1121&#10;(dp1122&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1123&#10;(dp1124&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1125&#10;(dp1126&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1127&#10;(dp1128&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1129&#10;(dp1130&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Streams Failed Server to Client'&#10;p1131&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1131&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1132&#10;(dp1133&#10;g11&#10;Nsg12&#10;I58&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1134&#10;(dp1135&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1136&#10;(dp1137&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1138&#10;(dp1139&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1140&#10;(dp1141&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1142&#10;(dp1143&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Connection Upgrade Succeeded'&#10;p1144&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1144&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1145&#10;(dp1146&#10;g11&#10;Nsg12&#10;I59&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1147&#10;(dp1148&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1149&#10;(dp1150&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1151&#10;(dp1152&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1153&#10;(dp1154&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1155&#10;(dp1156&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Connection Upgrade Failed'&#10;p1157&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1157&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1158&#10;(dp1159&#10;g11&#10;Nsg12&#10;I60&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1160&#10;(dp1161&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1162&#10;(dp1163&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1164&#10;(dp1165&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1166&#10;(dp1167&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1168&#10;(dp1169&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Protocol Error'&#10;p1170&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1170&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1171&#10;(dp1172&#10;g11&#10;Nsg12&#10;I61&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1173&#10;(dp1174&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1175&#10;(dp1176&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1177&#10;(dp1178&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1179&#10;(dp1180&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1181&#10;(dp1182&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Internal Error'&#10;p1183&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1183&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1184&#10;(dp1185&#10;g11&#10;Nsg12&#10;I62&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1186&#10;(dp1187&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1188&#10;(dp1189&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1190&#10;(dp1191&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1192&#10;(dp1193&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1194&#10;(dp1195&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Flow Control Error'&#10;p1196&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1196&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1197&#10;(dp1198&#10;g11&#10;Nsg12&#10;I63&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1199&#10;(dp1200&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1201&#10;(dp1202&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1203&#10;(dp1204&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1205&#10;(dp1206&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1207&#10;(dp1208&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Settings Timeout Error'&#10;p1209&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1209&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1210&#10;(dp1211&#10;g11&#10;Nsg12&#10;I64&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1212&#10;(dp1213&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1214&#10;(dp1215&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1216&#10;(dp1217&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1218&#10;(dp1219&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1220&#10;(dp1221&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Stream Closed Error'&#10;p1222&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1222&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1223&#10;(dp1224&#10;g11&#10;Nsg12&#10;I65&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1225&#10;(dp1226&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1227&#10;(dp1228&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1229&#10;(dp1230&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1231&#10;(dp1232&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1233&#10;(dp1234&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Frame Size Error'&#10;p1235&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1235&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1236&#10;(dp1237&#10;g11&#10;Nsg12&#10;I66&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1238&#10;(dp1239&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1240&#10;(dp1241&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1242&#10;(dp1243&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1244&#10;(dp1245&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1246&#10;(dp1247&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Refused Stream Error'&#10;p1248&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1248&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1249&#10;(dp1250&#10;g11&#10;Nsg12&#10;I67&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1251&#10;(dp1252&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1253&#10;(dp1254&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1255&#10;(dp1256&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1257&#10;(dp1258&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1259&#10;(dp1260&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Stream Cancelled Error'&#10;p1261&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1261&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1262&#10;(dp1263&#10;g11&#10;Nsg12&#10;I68&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1264&#10;(dp1265&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1266&#10;(dp1267&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1268&#10;(dp1269&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1270&#10;(dp1271&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1272&#10;(dp1273&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Compression Error'&#10;p1274&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1274&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1275&#10;(dp1276&#10;g11&#10;Nsg12&#10;I69&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1277&#10;(dp1278&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1279&#10;(dp1280&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1281&#10;(dp1282&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1283&#10;(dp1284&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1285&#10;(dp1286&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Connect Error'&#10;p1287&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1287&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1288&#10;(dp1289&#10;g11&#10;Nsg12&#10;I70&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1290&#10;(dp1291&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1292&#10;(dp1293&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1294&#10;(dp1295&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1296&#10;(dp1297&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1298&#10;(dp1299&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Enhance Calm Error'&#10;p1300&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1300&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1301&#10;(dp1302&#10;g11&#10;Nsg12&#10;I71&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1303&#10;(dp1304&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1305&#10;(dp1306&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1307&#10;(dp1308&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1309&#10;(dp1310&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1311&#10;(dp1312&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 Inadequate Security Error'&#10;p1313&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1313&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1314&#10;(dp1315&#10;g11&#10;Nsg12&#10;I72&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1316&#10;(dp1317&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1318&#10;(dp1319&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1320&#10;(dp1321&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1322&#10;(dp1323&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1324&#10;(dp1325&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP2 HTTP1.1 Required Error'&#10;p1326&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1326&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1327&#10;(dp1328&#10;g11&#10;Nsg12&#10;I73&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1329&#10;(dp1330&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1331&#10;(dp1332&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1333&#10;(dp1334&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1335&#10;(dp1336&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1337&#10;(dp1338&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received'&#10;p1339&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1339&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1340&#10;(dp1341&#10;g11&#10;Nsg12&#10;I74&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1342&#10;(dp1343&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1344&#10;(dp1345&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1346&#10;(dp1347&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1348&#10;(dp1349&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1350&#10;(dp1351&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent'&#10;p1352&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1352&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1353&#10;(dp1354&#10;g11&#10;Nsg12&#10;I75&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1355&#10;(dp1356&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1357&#10;(dp1358&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1359&#10;(dp1360&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1361&#10;(dp1362&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1363&#10;(dp1364&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (close_notify)'&#10;p1365&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1365&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1366&#10;(dp1367&#10;g11&#10;Nsg12&#10;I76&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1368&#10;(dp1369&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1370&#10;(dp1371&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1372&#10;(dp1373&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1374&#10;(dp1375&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1376&#10;(dp1377&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (close_notify)'&#10;p1378&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1378&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1379&#10;(dp1380&#10;g11&#10;Nsg12&#10;I77&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1381&#10;(dp1382&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1383&#10;(dp1384&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1385&#10;(dp1386&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1387&#10;(dp1388&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1389&#10;(dp1390&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (unexpected_message)'&#10;p1391&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1391&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1392&#10;(dp1393&#10;g11&#10;Nsg12&#10;I78&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1394&#10;(dp1395&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1396&#10;(dp1397&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1398&#10;(dp1399&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1400&#10;(dp1401&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1402&#10;(dp1403&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (unexpected_message)'&#10;p1404&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1404&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1405&#10;(dp1406&#10;g11&#10;Nsg12&#10;I79&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1407&#10;(dp1408&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1409&#10;(dp1410&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1411&#10;(dp1412&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1413&#10;(dp1414&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1415&#10;(dp1416&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (bad_record_mac)'&#10;p1417&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1417&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1418&#10;(dp1419&#10;g11&#10;Nsg12&#10;I80&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1420&#10;(dp1421&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1422&#10;(dp1423&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1424&#10;(dp1425&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1426&#10;(dp1427&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1428&#10;(dp1429&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (bad_record_mac)'&#10;p1430&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1430&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1431&#10;(dp1432&#10;g11&#10;Nsg12&#10;I81&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1433&#10;(dp1434&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1435&#10;(dp1436&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1437&#10;(dp1438&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1439&#10;(dp1440&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1441&#10;(dp1442&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (decryption_failed)'&#10;p1443&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1443&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1444&#10;(dp1445&#10;g11&#10;Nsg12&#10;I82&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1446&#10;(dp1447&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1448&#10;(dp1449&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1450&#10;(dp1451&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1452&#10;(dp1453&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1454&#10;(dp1455&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (decryption_failed)'&#10;p1456&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1456&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1457&#10;(dp1458&#10;g11&#10;Nsg12&#10;I83&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1459&#10;(dp1460&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1461&#10;(dp1462&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1463&#10;(dp1464&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1465&#10;(dp1466&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1467&#10;(dp1468&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (record_overflow)'&#10;p1469&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1469&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1470&#10;(dp1471&#10;g11&#10;Nsg12&#10;I84&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1472&#10;(dp1473&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1474&#10;(dp1475&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1476&#10;(dp1477&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1478&#10;(dp1479&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1480&#10;(dp1481&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (record_overflow)'&#10;p1482&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1482&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1483&#10;(dp1484&#10;g11&#10;Nsg12&#10;I85&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1485&#10;(dp1486&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1487&#10;(dp1488&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1489&#10;(dp1490&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1491&#10;(dp1492&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1493&#10;(dp1494&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (decompression_failure)'&#10;p1495&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1495&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1496&#10;(dp1497&#10;g11&#10;Nsg12&#10;I86&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1498&#10;(dp1499&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1500&#10;(dp1501&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1502&#10;(dp1503&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1504&#10;(dp1505&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1506&#10;(dp1507&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (decompression_failure)'&#10;p1508&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1508&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1509&#10;(dp1510&#10;g11&#10;Nsg12&#10;I87&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1511&#10;(dp1512&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1513&#10;(dp1514&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1515&#10;(dp1516&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1517&#10;(dp1518&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1519&#10;(dp1520&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (handshake_failure)'&#10;p1521&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1521&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1522&#10;(dp1523&#10;g11&#10;Nsg12&#10;I88&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1524&#10;(dp1525&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1526&#10;(dp1527&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1528&#10;(dp1529&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1530&#10;(dp1531&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1532&#10;(dp1533&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (handshake_failure)'&#10;p1534&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1534&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1535&#10;(dp1536&#10;g11&#10;Nsg12&#10;I89&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1537&#10;(dp1538&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1539&#10;(dp1540&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1541&#10;(dp1542&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1543&#10;(dp1544&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1545&#10;(dp1546&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (no_certificate)'&#10;p1547&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1547&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1548&#10;(dp1549&#10;g11&#10;Nsg12&#10;I90&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1550&#10;(dp1551&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1552&#10;(dp1553&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1554&#10;(dp1555&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1556&#10;(dp1557&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1558&#10;(dp1559&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (no_certificate)'&#10;p1560&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1560&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1561&#10;(dp1562&#10;g11&#10;Nsg12&#10;I91&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1563&#10;(dp1564&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1565&#10;(dp1566&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1567&#10;(dp1568&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1569&#10;(dp1570&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1571&#10;(dp1572&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (bad_certificate)'&#10;p1573&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1573&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1574&#10;(dp1575&#10;g11&#10;Nsg12&#10;I92&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1576&#10;(dp1577&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1578&#10;(dp1579&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1580&#10;(dp1581&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1582&#10;(dp1583&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1584&#10;(dp1585&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (bad_certificate)'&#10;p1586&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1586&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1587&#10;(dp1588&#10;g11&#10;Nsg12&#10;I93&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1589&#10;(dp1590&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1591&#10;(dp1592&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1593&#10;(dp1594&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1595&#10;(dp1596&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1597&#10;(dp1598&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (unsupported_certificate)'&#10;p1599&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1599&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1600&#10;(dp1601&#10;g11&#10;Nsg12&#10;I94&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1602&#10;(dp1603&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1604&#10;(dp1605&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1606&#10;(dp1607&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1608&#10;(dp1609&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1610&#10;(dp1611&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (unsupported_certificate)'&#10;p1612&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1612&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1613&#10;(dp1614&#10;g11&#10;Nsg12&#10;I95&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1615&#10;(dp1616&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1617&#10;(dp1618&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1619&#10;(dp1620&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1621&#10;(dp1622&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1623&#10;(dp1624&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (certificate_revoked)'&#10;p1625&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1625&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1626&#10;(dp1627&#10;g11&#10;Nsg12&#10;I96&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1628&#10;(dp1629&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1630&#10;(dp1631&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1632&#10;(dp1633&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1634&#10;(dp1635&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1636&#10;(dp1637&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (certificate_revoked)'&#10;p1638&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1638&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1639&#10;(dp1640&#10;g11&#10;Nsg12&#10;I97&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1641&#10;(dp1642&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1643&#10;(dp1644&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1645&#10;(dp1646&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1647&#10;(dp1648&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1649&#10;(dp1650&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (certificate_expired)'&#10;p1651&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1651&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1652&#10;(dp1653&#10;g11&#10;Nsg12&#10;I98&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1654&#10;(dp1655&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1656&#10;(dp1657&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1658&#10;(dp1659&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1660&#10;(dp1661&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1662&#10;(dp1663&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (certificate_expired)'&#10;p1664&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1664&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1665&#10;(dp1666&#10;g11&#10;Nsg12&#10;I99&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1667&#10;(dp1668&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1669&#10;(dp1670&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1671&#10;(dp1672&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1673&#10;(dp1674&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1675&#10;(dp1676&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (certificate_unknown)'&#10;p1677&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1677&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1678&#10;(dp1679&#10;g11&#10;Nsg12&#10;I100&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1680&#10;(dp1681&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1682&#10;(dp1683&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1684&#10;(dp1685&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1686&#10;(dp1687&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1688&#10;(dp1689&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (certificate_unknown)'&#10;p1690&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1690&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1691&#10;(dp1692&#10;g11&#10;Nsg12&#10;I101&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1693&#10;(dp1694&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1695&#10;(dp1696&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1697&#10;(dp1698&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1699&#10;(dp1700&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1701&#10;(dp1702&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (illegal_parameter)'&#10;p1703&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1703&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1704&#10;(dp1705&#10;g11&#10;Nsg12&#10;I102&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1706&#10;(dp1707&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1708&#10;(dp1709&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1710&#10;(dp1711&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1712&#10;(dp1713&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1714&#10;(dp1715&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (illegal_parameter)'&#10;p1716&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1716&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1717&#10;(dp1718&#10;g11&#10;Nsg12&#10;I103&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1719&#10;(dp1720&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1721&#10;(dp1722&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1723&#10;(dp1724&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1725&#10;(dp1726&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1727&#10;(dp1728&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (unknown_ca)'&#10;p1729&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1729&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1730&#10;(dp1731&#10;g11&#10;Nsg12&#10;I104&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1732&#10;(dp1733&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1734&#10;(dp1735&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1736&#10;(dp1737&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1738&#10;(dp1739&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1740&#10;(dp1741&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (unknown_ca)'&#10;p1742&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1742&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1743&#10;(dp1744&#10;g11&#10;Nsg12&#10;I105&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1745&#10;(dp1746&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1747&#10;(dp1748&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1749&#10;(dp1750&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1751&#10;(dp1752&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1753&#10;(dp1754&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (access_denied)'&#10;p1755&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1755&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1756&#10;(dp1757&#10;g11&#10;Nsg12&#10;I106&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1758&#10;(dp1759&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1760&#10;(dp1761&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1762&#10;(dp1763&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1764&#10;(dp1765&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1766&#10;(dp1767&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (access_denied)'&#10;p1768&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1768&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1769&#10;(dp1770&#10;g11&#10;Nsg12&#10;I107&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1771&#10;(dp1772&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1773&#10;(dp1774&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1775&#10;(dp1776&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1777&#10;(dp1778&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1779&#10;(dp1780&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (decode_error)'&#10;p1781&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1781&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1782&#10;(dp1783&#10;g11&#10;Nsg12&#10;I108&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1784&#10;(dp1785&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1786&#10;(dp1787&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1788&#10;(dp1789&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1790&#10;(dp1791&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1792&#10;(dp1793&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (decode_error)'&#10;p1794&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1794&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1795&#10;(dp1796&#10;g11&#10;Nsg12&#10;I109&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1797&#10;(dp1798&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1799&#10;(dp1800&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1801&#10;(dp1802&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1803&#10;(dp1804&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1805&#10;(dp1806&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (decrypt_error)'&#10;p1807&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1807&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1808&#10;(dp1809&#10;g11&#10;Nsg12&#10;I110&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1810&#10;(dp1811&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1812&#10;(dp1813&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1814&#10;(dp1815&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1816&#10;(dp1817&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1818&#10;(dp1819&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (decrypt_error)'&#10;p1820&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1820&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1821&#10;(dp1822&#10;g11&#10;Nsg12&#10;I111&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1823&#10;(dp1824&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1825&#10;(dp1826&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1827&#10;(dp1828&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1829&#10;(dp1830&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1831&#10;(dp1832&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (export_restriction)'&#10;p1833&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1833&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1834&#10;(dp1835&#10;g11&#10;Nsg12&#10;I112&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1836&#10;(dp1837&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1838&#10;(dp1839&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1840&#10;(dp1841&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1842&#10;(dp1843&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1844&#10;(dp1845&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (export_restriction)'&#10;p1846&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1846&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1847&#10;(dp1848&#10;g11&#10;Nsg12&#10;I113&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1849&#10;(dp1850&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1851&#10;(dp1852&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1853&#10;(dp1854&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1855&#10;(dp1856&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1857&#10;(dp1858&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (protocol_version)'&#10;p1859&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1859&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1860&#10;(dp1861&#10;g11&#10;Nsg12&#10;I114&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1862&#10;(dp1863&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1864&#10;(dp1865&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1866&#10;(dp1867&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1868&#10;(dp1869&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1870&#10;(dp1871&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (protocol_version)'&#10;p1872&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1872&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1873&#10;(dp1874&#10;g11&#10;Nsg12&#10;I115&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1875&#10;(dp1876&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1877&#10;(dp1878&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1879&#10;(dp1880&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1881&#10;(dp1882&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1883&#10;(dp1884&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (insufficient_security)'&#10;p1885&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1885&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1886&#10;(dp1887&#10;g11&#10;Nsg12&#10;I116&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1888&#10;(dp1889&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1890&#10;(dp1891&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1892&#10;(dp1893&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1894&#10;(dp1895&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1896&#10;(dp1897&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (insufficient_security)'&#10;p1898&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1898&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1899&#10;(dp1900&#10;g11&#10;Nsg12&#10;I117&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1901&#10;(dp1902&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1903&#10;(dp1904&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1905&#10;(dp1906&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1907&#10;(dp1908&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1909&#10;(dp1910&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (internal_error)'&#10;p1911&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1911&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1912&#10;(dp1913&#10;g11&#10;Nsg12&#10;I118&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1914&#10;(dp1915&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1916&#10;(dp1917&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1918&#10;(dp1919&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1920&#10;(dp1921&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1922&#10;(dp1923&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (internal_error)'&#10;p1924&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1924&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1925&#10;(dp1926&#10;g11&#10;Nsg12&#10;I119&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1927&#10;(dp1928&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1929&#10;(dp1930&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1931&#10;(dp1932&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1933&#10;(dp1934&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1935&#10;(dp1936&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (user_canceled)'&#10;p1937&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1937&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1938&#10;(dp1939&#10;g11&#10;Nsg12&#10;I120&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1940&#10;(dp1941&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1942&#10;(dp1943&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1944&#10;(dp1945&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1946&#10;(dp1947&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1948&#10;(dp1949&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (user_canceled)'&#10;p1950&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1950&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1951&#10;(dp1952&#10;g11&#10;Nsg12&#10;I121&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1953&#10;(dp1954&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1955&#10;(dp1956&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1957&#10;(dp1958&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1959&#10;(dp1960&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1961&#10;(dp1962&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (no_renegotiation)'&#10;p1963&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1963&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1964&#10;(dp1965&#10;g11&#10;Nsg12&#10;I122&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1966&#10;(dp1967&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1968&#10;(dp1969&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1970&#10;(dp1971&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1972&#10;(dp1973&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1974&#10;(dp1975&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (no_renegotiation)'&#10;p1976&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1976&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1977&#10;(dp1978&#10;g11&#10;Nsg12&#10;I123&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1979&#10;(dp1980&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1981&#10;(dp1982&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1983&#10;(dp1984&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1985&#10;(dp1986&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp1987&#10;(dp1988&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Received (undefined error)'&#10;p1989&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g1989&#10;sbag3&#10;(g7&#10;g8&#10;NtRp1990&#10;(dp1991&#10;g11&#10;Nsg12&#10;I124&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp1992&#10;(dp1993&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp1994&#10;(dp1995&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp1996&#10;(dp1997&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp1998&#10;(dp1999&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2000&#10;(dp2001&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Sent (undefined error)'&#10;p2002&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2002&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2003&#10;(dp2004&#10;g11&#10;Nsg12&#10;I125&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2005&#10;(dp2006&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2007&#10;(dp2008&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2009&#10;(dp2010&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2011&#10;(dp2012&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2013&#10;(dp2014&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Received (no cipher)'&#10;p2015&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2015&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2016&#10;(dp2017&#10;g11&#10;Nsg12&#10;I126&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2018&#10;(dp2019&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2020&#10;(dp2021&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2022&#10;(dp2023&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2024&#10;(dp2025&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2026&#10;(dp2027&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Sent (no cipher)'&#10;p2028&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2028&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2029&#10;(dp2030&#10;g11&#10;Nsg12&#10;I127&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2031&#10;(dp2032&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2033&#10;(dp2034&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2035&#10;(dp2036&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2037&#10;(dp2038&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2039&#10;(dp2040&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Received (no certificate)'&#10;p2041&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2041&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2042&#10;(dp2043&#10;g11&#10;Nsg12&#10;I128&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2044&#10;(dp2045&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2046&#10;(dp2047&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2048&#10;(dp2049&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2050&#10;(dp2051&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2052&#10;(dp2053&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Sent (no certificate)'&#10;p2054&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2054&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2055&#10;(dp2056&#10;g11&#10;Nsg12&#10;I129&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2057&#10;(dp2058&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2059&#10;(dp2060&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2061&#10;(dp2062&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2063&#10;(dp2064&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2065&#10;(dp2066&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Received (bad certificate)'&#10;p2067&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2067&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2068&#10;(dp2069&#10;g11&#10;Nsg12&#10;I130&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2070&#10;(dp2071&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2072&#10;(dp2073&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2074&#10;(dp2075&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2076&#10;(dp2077&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2078&#10;(dp2079&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Sent (bad certificate)'&#10;p2080&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2080&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2081&#10;(dp2082&#10;g11&#10;Nsg12&#10;I131&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2083&#10;(dp2084&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2085&#10;(dp2086&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2087&#10;(dp2088&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2089&#10;(dp2090&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2091&#10;(dp2092&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Received (unsupported certificate)'&#10;p2093&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2093&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2094&#10;(dp2095&#10;g11&#10;Nsg12&#10;I132&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2096&#10;(dp2097&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2098&#10;(dp2099&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2100&#10;(dp2101&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2102&#10;(dp2103&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2104&#10;(dp2105&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Sent (unsupported certificate)'&#10;p2106&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2106&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2107&#10;(dp2108&#10;g11&#10;Nsg12&#10;I133&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2109&#10;(dp2110&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2111&#10;(dp2112&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2113&#10;(dp2114&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2115&#10;(dp2116&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2117&#10;(dp2118&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Received'&#10;p2119&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2119&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2120&#10;(dp2121&#10;g11&#10;Nsg12&#10;I134&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2122&#10;(dp2123&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2124&#10;(dp2125&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2126&#10;(dp2127&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2128&#10;(dp2129&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2130&#10;(dp2131&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Sent'&#10;p2132&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2132&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2133&#10;(dp2134&#10;g11&#10;Nsg12&#10;I135&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2135&#10;(dp2136&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2137&#10;(dp2138&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2139&#10;(dp2140&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2141&#10;(dp2142&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2143&#10;(dp2144&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Client Hello Sent'&#10;p2145&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2145&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2146&#10;(dp2147&#10;g11&#10;Nsg12&#10;I136&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2148&#10;(dp2149&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2150&#10;(dp2151&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2152&#10;(dp2153&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2154&#10;(dp2155&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2156&#10;(dp2157&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Client Hello Received'&#10;p2158&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2158&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2159&#10;(dp2160&#10;g11&#10;Nsg12&#10;I137&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2161&#10;(dp2162&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2163&#10;(dp2164&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2165&#10;(dp2166&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2167&#10;(dp2168&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2169&#10;(dp2170&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Server Hello Sent'&#10;p2171&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2171&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2172&#10;(dp2173&#10;g11&#10;Nsg12&#10;I138&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2174&#10;(dp2175&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2176&#10;(dp2177&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2178&#10;(dp2179&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2180&#10;(dp2181&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2182&#10;(dp2183&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Server Hello Received'&#10;p2184&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2184&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2185&#10;(dp2186&#10;g11&#10;Nsg12&#10;I139&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2187&#10;(dp2188&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2189&#10;(dp2190&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2191&#10;(dp2192&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2193&#10;(dp2194&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2195&#10;(dp2196&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Hello Requests Sent'&#10;p2197&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2197&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2198&#10;(dp2199&#10;g11&#10;Nsg12&#10;I140&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2200&#10;(dp2201&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2202&#10;(dp2203&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2204&#10;(dp2205&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2206&#10;(dp2207&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2208&#10;(dp2209&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Hello Requests Received'&#10;p2210&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2210&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2211&#10;(dp2212&#10;g11&#10;Nsg12&#10;I141&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2213&#10;(dp2214&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2215&#10;(dp2216&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2217&#10;(dp2218&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2219&#10;(dp2220&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2221&#10;(dp2222&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Session Reuse Success'&#10;p2223&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2223&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2224&#10;(dp2225&#10;g11&#10;Nsg12&#10;I142&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2226&#10;(dp2227&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2228&#10;(dp2229&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2230&#10;(dp2231&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2232&#10;(dp2233&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2234&#10;(dp2235&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Session Reuse Failed'&#10;p2236&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2236&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2237&#10;(dp2238&#10;g11&#10;Nsg12&#10;I143&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2239&#10;(dp2240&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2241&#10;(dp2242&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2243&#10;(dp2244&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2245&#10;(dp2246&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2247&#10;(dp2248&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Concurrent Sessions'&#10;p2249&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2249&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2250&#10;(dp2251&#10;g11&#10;Nsg12&#10;I144&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2252&#10;(dp2253&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2254&#10;(dp2255&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2256&#10;(dp2257&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2258&#10;(dp2259&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2260&#10;(dp2261&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Bytes Sent'&#10;p2262&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2262&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2263&#10;(dp2264&#10;g11&#10;Nsg12&#10;I145&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2265&#10;(dp2266&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2267&#10;(dp2268&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2269&#10;(dp2270&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2271&#10;(dp2272&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2273&#10;(dp2274&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Bytes Received'&#10;p2275&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2275&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2276&#10;(dp2277&#10;g11&#10;Nsg12&#10;I146&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2278&#10;(dp2279&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2280&#10;(dp2281&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2282&#10;(dp2283&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2284&#10;(dp2285&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2286&#10;(dp2287&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Throughput Bytes'&#10;p2288&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2288&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2289&#10;(dp2290&#10;g11&#10;Nsg12&#10;I147&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2291&#10;(dp2292&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2293&#10;(dp2294&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2295&#10;(dp2296&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2297&#10;(dp2298&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2299&#10;(dp2300&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Application Data Bytes'&#10;p2301&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2301&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2302&#10;(dp2303&#10;g11&#10;Nsg12&#10;I148&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2304&#10;(dp2305&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2306&#10;(dp2307&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2308&#10;(dp2309&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2310&#10;(dp2311&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2312&#10;(dp2313&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Certificate Validation Failure'&#10;p2314&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2314&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2315&#10;(dp2316&#10;g11&#10;Nsg12&#10;I149&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2317&#10;(dp2318&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2319&#10;(dp2320&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2321&#10;(dp2322&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2323&#10;(dp2324&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2325&#10;(dp2326&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Certificate Self Signed'&#10;p2327&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2327&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2328&#10;(dp2329&#10;g11&#10;Nsg12&#10;I150&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2330&#10;(dp2331&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2332&#10;(dp2333&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2334&#10;(dp2335&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2336&#10;(dp2337&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2338&#10;(dp2339&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Certificate CA Signed'&#10;p2340&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2340&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2341&#10;(dp2342&#10;g11&#10;Nsg12&#10;I151&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2343&#10;(dp2344&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2345&#10;(dp2346&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2347&#10;(dp2348&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2349&#10;(dp2350&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2351&#10;(dp2352&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (unrecognized name)'&#10;p2353&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2353&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2354&#10;(dp2355&#10;g11&#10;Nsg12&#10;I152&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2356&#10;(dp2357&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2358&#10;(dp2359&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2360&#10;(dp2361&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2362&#10;(dp2363&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2364&#10;(dp2365&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL SNI extension sent successfully'&#10;p2366&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2366&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2367&#10;(dp2368&#10;g11&#10;Nsg12&#10;I153&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2369&#10;(dp2370&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2371&#10;(dp2372&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2373&#10;(dp2374&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2375&#10;(dp2376&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2377&#10;(dp2378&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL SNI extension mismatch'&#10;p2379&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2379&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2380&#10;(dp2381&#10;g11&#10;Nsg12&#10;I154&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2382&#10;(dp2383&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2384&#10;(dp2385&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2386&#10;(dp2387&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2388&#10;(dp2389&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2390&#10;(dp2391&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL session ticket reuse success'&#10;p2392&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2392&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2393&#10;(dp2394&#10;g11&#10;Nsg12&#10;I155&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2395&#10;(dp2396&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2397&#10;(dp2398&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2399&#10;(dp2400&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2401&#10;(dp2402&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2403&#10;(dp2404&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL session ticket reuse failure'&#10;p2405&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2405&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2406&#10;(dp2407&#10;g11&#10;Nsg12&#10;I156&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2408&#10;(dp2409&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2410&#10;(dp2411&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2412&#10;(dp2413&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2414&#10;(dp2415&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2416&#10;(dp2417&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Negotiation Finished Successfully'&#10;p2418&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2418&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2419&#10;(dp2420&#10;g11&#10;Nsg12&#10;I157&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2421&#10;(dp2422&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2423&#10;(dp2424&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2425&#10;(dp2426&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2427&#10;(dp2428&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2429&#10;(dp2430&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Negotiation Finished Successfuly'&#10;p2431&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2431&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2432&#10;(dp2433&#10;g11&#10;Nsg12&#10;I158&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2434&#10;(dp2435&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2436&#10;(dp2437&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2438&#10;(dp2439&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2440&#10;(dp2441&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2442&#10;(dp2443&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP SYN Sent'&#10;p2444&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2444&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2445&#10;(dp2446&#10;g11&#10;Nsg12&#10;I159&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2447&#10;(dp2448&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2449&#10;(dp2450&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2451&#10;(dp2452&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2453&#10;(dp2454&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2455&#10;(dp2456&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP SYN_SYN-ACK Received'&#10;p2457&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2457&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2458&#10;(dp2459&#10;g11&#10;Nsg12&#10;I160&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2460&#10;(dp2461&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2462&#10;(dp2463&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2464&#10;(dp2465&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2466&#10;(dp2467&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2468&#10;(dp2469&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP SYN Failed'&#10;p2470&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2470&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2471&#10;(dp2472&#10;g11&#10;Nsg12&#10;I161&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2473&#10;(dp2474&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2475&#10;(dp2476&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2477&#10;(dp2478&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2479&#10;(dp2480&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2481&#10;(dp2482&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP SYN-ACK Sent'&#10;p2483&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2483&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2484&#10;(dp2485&#10;g11&#10;Nsg12&#10;I162&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2486&#10;(dp2487&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2488&#10;(dp2489&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2490&#10;(dp2491&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2492&#10;(dp2493&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2494&#10;(dp2495&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connection Requests Failed'&#10;p2496&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2496&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2497&#10;(dp2498&#10;g11&#10;Nsg12&#10;I163&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2499&#10;(dp2500&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2501&#10;(dp2502&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2503&#10;(dp2504&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2505&#10;(dp2506&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2507&#10;(dp2508&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections Established'&#10;p2509&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2509&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2510&#10;(dp2511&#10;g11&#10;Nsg12&#10;I164&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2512&#10;(dp2513&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2514&#10;(dp2515&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2516&#10;(dp2517&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2518&#10;(dp2519&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2520&#10;(dp2521&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP FIN Sent'&#10;p2522&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2522&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2523&#10;(dp2524&#10;g11&#10;Nsg12&#10;I165&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2525&#10;(dp2526&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2527&#10;(dp2528&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2529&#10;(dp2530&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2531&#10;(dp2532&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2533&#10;(dp2534&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP FIN Received'&#10;p2535&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2535&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2536&#10;(dp2537&#10;g11&#10;Nsg12&#10;I166&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2538&#10;(dp2539&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2540&#10;(dp2541&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2542&#10;(dp2543&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2544&#10;(dp2545&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2546&#10;(dp2547&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP FIN-ACK Sent'&#10;p2548&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2548&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2549&#10;(dp2550&#10;g11&#10;Nsg12&#10;I167&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2551&#10;(dp2552&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2553&#10;(dp2554&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2555&#10;(dp2556&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2557&#10;(dp2558&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2559&#10;(dp2560&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP FIN-ACK Received'&#10;p2561&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2561&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2562&#10;(dp2563&#10;g11&#10;Nsg12&#10;I168&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2564&#10;(dp2565&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2566&#10;(dp2567&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2568&#10;(dp2569&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2570&#10;(dp2571&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2572&#10;(dp2573&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Resets Sent'&#10;p2574&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2574&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2575&#10;(dp2576&#10;g11&#10;Nsg12&#10;I169&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2577&#10;(dp2578&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2579&#10;(dp2580&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2581&#10;(dp2582&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2583&#10;(dp2584&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2585&#10;(dp2586&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Resets Received'&#10;p2587&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2587&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2588&#10;(dp2589&#10;g11&#10;Nsg12&#10;I170&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2590&#10;(dp2591&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2592&#10;(dp2593&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2594&#10;(dp2595&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2596&#10;(dp2597&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2598&#10;(dp2599&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Retries'&#10;p2600&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2600&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2601&#10;(dp2602&#10;g11&#10;Nsg12&#10;I171&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2603&#10;(dp2604&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2605&#10;(dp2606&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2607&#10;(dp2608&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2609&#10;(dp2610&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2611&#10;(dp2612&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Timeouts'&#10;p2613&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2613&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2614&#10;(dp2615&#10;g11&#10;Nsg12&#10;I172&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2616&#10;(dp2617&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2618&#10;(dp2619&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2620&#10;(dp2621&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2622&#10;(dp2623&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2624&#10;(dp2625&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Accept Queue Entries'&#10;p2626&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2626&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2627&#10;(dp2628&#10;g11&#10;Nsg12&#10;I173&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2629&#10;(dp2630&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2631&#10;(dp2632&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2633&#10;(dp2634&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2635&#10;(dp2636&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2637&#10;(dp2638&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Listen Queue Drops'&#10;p2639&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2639&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2640&#10;(dp2641&#10;g11&#10;Nsg12&#10;I174&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2642&#10;(dp2643&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2644&#10;(dp2645&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2646&#10;(dp2647&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2648&#10;(dp2649&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2650&#10;(dp2651&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in ESTABLISHED State'&#10;p2652&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2652&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2653&#10;(dp2654&#10;g11&#10;Nsg12&#10;I175&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2655&#10;(dp2656&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2657&#10;(dp2658&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2659&#10;(dp2660&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2661&#10;(dp2662&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2663&#10;(dp2664&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in SYN-SENT State'&#10;p2665&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2665&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2666&#10;(dp2667&#10;g11&#10;Nsg12&#10;I176&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2668&#10;(dp2669&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2670&#10;(dp2671&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2672&#10;(dp2673&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2674&#10;(dp2675&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2676&#10;(dp2677&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in SYN-RECEIVED State'&#10;p2678&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2678&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2679&#10;(dp2680&#10;g11&#10;Nsg12&#10;I177&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2681&#10;(dp2682&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2683&#10;(dp2684&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2685&#10;(dp2686&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2687&#10;(dp2688&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2689&#10;(dp2690&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in FIN-WAIT-1 State'&#10;p2691&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2691&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2692&#10;(dp2693&#10;g11&#10;Nsg12&#10;I178&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2694&#10;(dp2695&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2696&#10;(dp2697&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2698&#10;(dp2699&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2700&#10;(dp2701&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2702&#10;(dp2703&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in FIN-WAIT-2 State'&#10;p2704&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2704&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2705&#10;(dp2706&#10;g11&#10;Nsg12&#10;I179&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2707&#10;(dp2708&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2709&#10;(dp2710&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2711&#10;(dp2712&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2713&#10;(dp2714&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2715&#10;(dp2716&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in TIME-WAIT State'&#10;p2717&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2717&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2718&#10;(dp2719&#10;g11&#10;Nsg12&#10;I180&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2720&#10;(dp2721&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2722&#10;(dp2723&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2724&#10;(dp2725&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2726&#10;(dp2727&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2728&#10;(dp2729&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in CLOSE STATE'&#10;p2730&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2730&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2731&#10;(dp2732&#10;g11&#10;Nsg12&#10;I181&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2733&#10;(dp2734&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2735&#10;(dp2736&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2737&#10;(dp2738&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2739&#10;(dp2740&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2741&#10;(dp2742&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in CLOSE-WAIT State'&#10;p2743&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2743&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2744&#10;(dp2745&#10;g11&#10;Nsg12&#10;I182&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2746&#10;(dp2747&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2748&#10;(dp2749&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2750&#10;(dp2751&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2752&#10;(dp2753&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2754&#10;(dp2755&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in LAST-ACK State'&#10;p2756&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2756&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2757&#10;(dp2758&#10;g11&#10;Nsg12&#10;I183&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2759&#10;(dp2760&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2761&#10;(dp2762&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2763&#10;(dp2764&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2765&#10;(dp2766&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2767&#10;(dp2768&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in LISTENING State'&#10;p2769&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2769&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2770&#10;(dp2771&#10;g11&#10;Nsg12&#10;I184&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2772&#10;(dp2773&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2774&#10;(dp2775&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2776&#10;(dp2777&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2778&#10;(dp2779&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2780&#10;(dp2781&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in CLOSING State'&#10;p2782&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2782&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2783&#10;(dp2784&#10;g11&#10;Nsg12&#10;I185&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2785&#10;(dp2786&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2787&#10;(dp2788&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2789&#10;(dp2790&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2791&#10;(dp2792&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2793&#10;(dp2794&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Internally Aborted Connections'&#10;p2795&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2795&#10;sbatRp2796&#10;(dp2797&#10;g12&#10;I185&#10;sg22&#10;I00&#10;sg11&#10;NsbsS'HTTP Client Per URL'&#10;p2798&#10;g3&#10;(g4&#10;g5&#10;(lp2799&#10;g3&#10;(g7&#10;g8&#10;NtRp2800&#10;(dp2801&#10;g11&#10;Nsg12&#10;I0&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2802&#10;(dp2803&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2804&#10;(dp2805&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2806&#10;(dp2807&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2808&#10;(dp2809&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2810&#10;(dp2811&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Sent'&#10;p2812&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2812&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2813&#10;(dp2814&#10;g11&#10;Nsg12&#10;I1&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2815&#10;(dp2816&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2817&#10;(dp2818&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2819&#10;(dp2820&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2821&#10;(dp2822&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2823&#10;(dp2824&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Successful'&#10;p2825&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2825&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2826&#10;(dp2827&#10;g11&#10;Nsg12&#10;I2&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2828&#10;(dp2829&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2830&#10;(dp2831&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2832&#10;(dp2833&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2834&#10;(dp2835&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2836&#10;(dp2837&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Successful (Provisional)'&#10;p2838&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2838&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2839&#10;(dp2840&#10;g11&#10;Nsg12&#10;I3&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2841&#10;(dp2842&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2843&#10;(dp2844&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2845&#10;(dp2846&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2847&#10;(dp2848&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2849&#10;(dp2850&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed'&#10;p2851&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2851&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2852&#10;(dp2853&#10;g11&#10;Nsg12&#10;I4&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2854&#10;(dp2855&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2856&#10;(dp2857&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2858&#10;(dp2859&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2860&#10;(dp2861&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2862&#10;(dp2863&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (Write)'&#10;p2864&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2864&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2865&#10;(dp2866&#10;g11&#10;Nsg12&#10;I5&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2867&#10;(dp2868&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2869&#10;(dp2870&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2871&#10;(dp2872&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2873&#10;(dp2874&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2875&#10;(dp2876&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (Read)'&#10;p2877&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2877&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2878&#10;(dp2879&#10;g11&#10;Nsg12&#10;I6&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2880&#10;(dp2881&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2882&#10;(dp2883&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2884&#10;(dp2885&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2886&#10;(dp2887&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2888&#10;(dp2889&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (Bad Header)'&#10;p2890&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2890&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2891&#10;(dp2892&#10;g11&#10;Nsg12&#10;I7&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2893&#10;(dp2894&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2895&#10;(dp2896&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2897&#10;(dp2898&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2899&#10;(dp2900&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2901&#10;(dp2902&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (4xx)'&#10;p2903&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2903&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2904&#10;(dp2905&#10;g11&#10;Nsg12&#10;I8&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2906&#10;(dp2907&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2908&#10;(dp2909&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2910&#10;(dp2911&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2912&#10;(dp2913&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2914&#10;(dp2915&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (400)'&#10;p2916&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2916&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2917&#10;(dp2918&#10;g11&#10;Nsg12&#10;I9&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2919&#10;(dp2920&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2921&#10;(dp2922&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2923&#10;(dp2924&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2925&#10;(dp2926&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2927&#10;(dp2928&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (401)'&#10;p2929&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2929&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2930&#10;(dp2931&#10;g11&#10;Nsg12&#10;I10&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2932&#10;(dp2933&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2934&#10;(dp2935&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2936&#10;(dp2937&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2938&#10;(dp2939&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2940&#10;(dp2941&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (403)'&#10;p2942&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2942&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2943&#10;(dp2944&#10;g11&#10;Nsg12&#10;I11&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2945&#10;(dp2946&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2947&#10;(dp2948&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2949&#10;(dp2950&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2951&#10;(dp2952&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2953&#10;(dp2954&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (404)'&#10;p2955&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2955&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2956&#10;(dp2957&#10;g11&#10;Nsg12&#10;I12&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2958&#10;(dp2959&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2960&#10;(dp2961&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2962&#10;(dp2963&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2964&#10;(dp2965&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2966&#10;(dp2967&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (407)'&#10;p2968&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2968&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2969&#10;(dp2970&#10;g11&#10;Nsg12&#10;I13&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2971&#10;(dp2972&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2973&#10;(dp2974&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2975&#10;(dp2976&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2977&#10;(dp2978&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2979&#10;(dp2980&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (408)'&#10;p2981&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2981&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2982&#10;(dp2983&#10;g11&#10;Nsg12&#10;I14&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2984&#10;(dp2985&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2986&#10;(dp2987&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp2988&#10;(dp2989&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp2990&#10;(dp2991&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp2992&#10;(dp2993&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (4xx other)'&#10;p2994&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2994&#10;sbag3&#10;(g7&#10;g8&#10;NtRp2995&#10;(dp2996&#10;g11&#10;Nsg12&#10;I15&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp2997&#10;(dp2998&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp2999&#10;(dp3000&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3001&#10;(dp3002&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3003&#10;(dp3004&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3005&#10;(dp3006&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (5xx)'&#10;p3007&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3007&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3008&#10;(dp3009&#10;g11&#10;Nsg12&#10;I16&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3010&#10;(dp3011&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3012&#10;(dp3013&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3014&#10;(dp3015&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3016&#10;(dp3017&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3018&#10;(dp3019&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (505)'&#10;p3020&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3020&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3021&#10;(dp3022&#10;g11&#10;Nsg12&#10;I17&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3023&#10;(dp3024&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3025&#10;(dp3026&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3027&#10;(dp3028&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3029&#10;(dp3030&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3031&#10;(dp3032&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (5xx other)'&#10;p3033&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3033&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3034&#10;(dp3035&#10;g11&#10;Nsg12&#10;I18&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3036&#10;(dp3037&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3038&#10;(dp3039&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3040&#10;(dp3041&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3042&#10;(dp3043&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3044&#10;(dp3045&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (other)'&#10;p3046&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3046&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3047&#10;(dp3048&#10;g11&#10;Nsg12&#10;I19&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3049&#10;(dp3050&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3051&#10;(dp3052&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3053&#10;(dp3054&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3055&#10;(dp3056&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3057&#10;(dp3058&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (Timeout)'&#10;p3059&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3059&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3060&#10;(dp3061&#10;g11&#10;Nsg12&#10;I20&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3062&#10;(dp3063&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3064&#10;(dp3065&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3066&#10;(dp3067&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3068&#10;(dp3069&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3070&#10;(dp3071&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Failed (Aborted)'&#10;p3072&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3072&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3073&#10;(dp3074&#10;g11&#10;Nsg12&#10;I21&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3075&#10;(dp3076&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3077&#10;(dp3078&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3079&#10;(dp3080&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3081&#10;(dp3082&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3083&#10;(dp3084&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Aborted Before Request'&#10;p3085&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3085&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3086&#10;(dp3087&#10;g11&#10;Nsg12&#10;I22&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3088&#10;(dp3089&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3090&#10;(dp3091&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3092&#10;(dp3093&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3094&#10;(dp3095&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3096&#10;(dp3097&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Aborted After Request'&#10;p3098&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3098&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3099&#10;(dp3100&#10;g11&#10;Nsg12&#10;I23&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3101&#10;(dp3102&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3103&#10;(dp3104&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3105&#10;(dp3106&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3107&#10;(dp3108&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3109&#10;(dp3110&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Responses Received With Match'&#10;p3111&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3111&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3112&#10;(dp3113&#10;g11&#10;Nsg12&#10;I24&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3114&#10;(dp3115&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3116&#10;(dp3117&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3118&#10;(dp3119&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3120&#10;(dp3121&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3122&#10;(dp3123&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Responses Received Without Match'&#10;p3124&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3124&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3125&#10;(dp3126&#10;g11&#10;Nsg12&#10;I25&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3127&#10;(dp3128&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3129&#10;(dp3130&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3131&#10;(dp3132&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3133&#10;(dp3134&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3135&#10;(dp3136&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Intermediate Responses Received (1xx)'&#10;p3137&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3137&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3138&#10;(dp3139&#10;g11&#10;Nsg12&#10;I26&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3140&#10;(dp3141&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3142&#10;(dp3143&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3144&#10;(dp3145&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3146&#10;(dp3147&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3148&#10;(dp3149&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Successful (2xx)'&#10;p3150&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3150&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3151&#10;(dp3152&#10;g11&#10;Nsg12&#10;I27&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3153&#10;(dp3154&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3155&#10;(dp3156&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3157&#10;(dp3158&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3159&#10;(dp3160&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3161&#10;(dp3162&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Successful (3xx)'&#10;p3163&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3163&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3164&#10;(dp3165&#10;g11&#10;Nsg12&#10;I28&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3166&#10;(dp3167&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3168&#10;(dp3169&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3170&#10;(dp3171&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3172&#10;(dp3173&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3174&#10;(dp3175&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Successful (301)'&#10;p3176&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3176&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3177&#10;(dp3178&#10;g11&#10;Nsg12&#10;I29&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3179&#10;(dp3180&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3181&#10;(dp3182&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3183&#10;(dp3184&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3185&#10;(dp3186&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3187&#10;(dp3188&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Successful (302)'&#10;p3189&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3189&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3190&#10;(dp3191&#10;g11&#10;Nsg12&#10;I30&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3192&#10;(dp3193&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3194&#10;(dp3195&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3196&#10;(dp3197&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3198&#10;(dp3199&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3200&#10;(dp3201&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Successful (303)'&#10;p3202&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3202&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3203&#10;(dp3204&#10;g11&#10;Nsg12&#10;I31&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3205&#10;(dp3206&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3207&#10;(dp3208&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3209&#10;(dp3210&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3211&#10;(dp3212&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3213&#10;(dp3214&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Requests Successful (307)'&#10;p3215&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3215&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3216&#10;(dp3217&#10;g11&#10;Nsg12&#10;I32&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3218&#10;(dp3219&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3220&#10;(dp3221&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3222&#10;(dp3223&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3224&#10;(dp3225&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3226&#10;(dp3227&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Content-MD5 Requests Sent'&#10;p3228&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3228&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3229&#10;(dp3230&#10;g11&#10;Nsg12&#10;I33&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3231&#10;(dp3232&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3233&#10;(dp3234&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3235&#10;(dp3236&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3237&#10;(dp3238&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3239&#10;(dp3240&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Chunk Encoded Headers Received'&#10;p3241&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3241&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3242&#10;(dp3243&#10;g11&#10;Nsg12&#10;I34&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3244&#10;(dp3245&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3246&#10;(dp3247&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3248&#10;(dp3249&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3250&#10;(dp3251&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3252&#10;(dp3253&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Chunk Encoded Responses Received'&#10;p3254&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3254&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3255&#10;(dp3256&#10;g11&#10;Nsg12&#10;I35&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3257&#10;(dp3258&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3259&#10;(dp3260&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3261&#10;(dp3262&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3263&#10;(dp3264&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3265&#10;(dp3266&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Chunk Encoded Responses Successful'&#10;p3267&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3267&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3268&#10;(dp3269&#10;g11&#10;Nsg12&#10;I36&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3270&#10;(dp3271&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3272&#10;(dp3273&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3274&#10;(dp3275&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3276&#10;(dp3277&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3278&#10;(dp3279&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Chunk Encoded Responses Failed'&#10;p3280&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3280&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3281&#10;(dp3282&#10;g11&#10;Nsg12&#10;I37&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3283&#10;(dp3284&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3285&#10;(dp3286&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3287&#10;(dp3288&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3289&#10;(dp3290&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3291&#10;(dp3292&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Total Chunks Received'&#10;p3293&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3293&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3294&#10;(dp3295&#10;g11&#10;Nsg12&#10;I38&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3296&#10;(dp3297&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3298&#10;(dp3299&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3300&#10;(dp3301&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3302&#10;(dp3303&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3304&#10;(dp3305&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Average Chunk Size'&#10;p3306&#10;sg22&#10;I00&#10;sg37&#10;g261&#10;sg39&#10;g3306&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3307&#10;(dp3308&#10;g11&#10;Nsg12&#10;I39&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3309&#10;(dp3310&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3311&#10;(dp3312&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3313&#10;(dp3314&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3315&#10;(dp3316&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3317&#10;(dp3318&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Average Chunks per Response'&#10;p3319&#10;sg22&#10;I00&#10;sg37&#10;g261&#10;sg39&#10;g3319&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3320&#10;(dp3321&#10;g11&#10;Nsg12&#10;I40&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3322&#10;(dp3323&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3324&#10;(dp3325&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3326&#10;(dp3327&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3328&#10;(dp3329&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3330&#10;(dp3331&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Chunk Encoded Requests Sent'&#10;p3332&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3332&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3333&#10;(dp3334&#10;g11&#10;Nsg12&#10;I41&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3335&#10;(dp3336&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3337&#10;(dp3338&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3339&#10;(dp3340&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3341&#10;(dp3342&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3343&#10;(dp3344&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Total Chunks Sent'&#10;p3345&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3345&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3346&#10;(dp3347&#10;g11&#10;Nsg12&#10;I42&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3348&#10;(dp3349&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3350&#10;(dp3351&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3352&#10;(dp3353&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3354&#10;(dp3355&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3356&#10;(dp3357&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Average Chunk Size in Request'&#10;p3358&#10;sg22&#10;I00&#10;sg37&#10;g261&#10;sg39&#10;g3358&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3359&#10;(dp3360&#10;g11&#10;Nsg12&#10;I43&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3361&#10;(dp3362&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3363&#10;(dp3364&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3365&#10;(dp3366&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3367&#10;(dp3368&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3369&#10;(dp3370&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Average Chunks per Request'&#10;p3371&#10;sg22&#10;I00&#10;sg37&#10;g261&#10;sg39&#10;g3371&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3372&#10;(dp3373&#10;g11&#10;Nsg12&#10;I44&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3374&#10;(dp3375&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3376&#10;(dp3377&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3378&#10;(dp3379&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3380&#10;(dp3381&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3382&#10;(dp3383&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Name1-Value1'&#10;p3384&#10;sg22&#10;I00&#10;sg37&#10;S'kString'&#10;p3385&#10;sg39&#10;g3384&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3386&#10;(dp3387&#10;g11&#10;Nsg12&#10;I45&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3388&#10;(dp3389&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3390&#10;(dp3391&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3392&#10;(dp3393&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3394&#10;(dp3395&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3396&#10;(dp3397&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Counter1'&#10;p3398&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3398&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3399&#10;(dp3400&#10;g11&#10;Nsg12&#10;I46&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3401&#10;(dp3402&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3403&#10;(dp3404&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3405&#10;(dp3406&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3407&#10;(dp3408&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3409&#10;(dp3410&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Name2-Value2'&#10;p3411&#10;sg22&#10;I00&#10;sg37&#10;g3385&#10;sg39&#10;g3411&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3412&#10;(dp3413&#10;g11&#10;Nsg12&#10;I47&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3414&#10;(dp3415&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3416&#10;(dp3417&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3418&#10;(dp3419&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3420&#10;(dp3421&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3422&#10;(dp3423&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Counter2'&#10;p3424&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3424&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3425&#10;(dp3426&#10;g11&#10;Nsg12&#10;I48&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3427&#10;(dp3428&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3429&#10;(dp3430&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3431&#10;(dp3432&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3433&#10;(dp3434&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3435&#10;(dp3436&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Name3-Value3'&#10;p3437&#10;sg22&#10;I00&#10;sg37&#10;g3385&#10;sg39&#10;g3437&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3438&#10;(dp3439&#10;g11&#10;Nsg12&#10;I49&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3440&#10;(dp3441&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3442&#10;(dp3443&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3444&#10;(dp3445&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3446&#10;(dp3447&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3448&#10;(dp3449&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Counter3'&#10;p3450&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3450&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3451&#10;(dp3452&#10;g11&#10;Nsg12&#10;I50&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3453&#10;(dp3454&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3455&#10;(dp3456&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3457&#10;(dp3458&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3459&#10;(dp3460&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3461&#10;(dp3462&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Name4-Value4'&#10;p3463&#10;sg22&#10;I00&#10;sg37&#10;g3385&#10;sg39&#10;g3463&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3464&#10;(dp3465&#10;g11&#10;Nsg12&#10;I51&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3466&#10;(dp3467&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3468&#10;(dp3469&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3470&#10;(dp3471&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3472&#10;(dp3473&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3474&#10;(dp3475&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Counter4'&#10;p3476&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3476&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3477&#10;(dp3478&#10;g11&#10;Nsg12&#10;I52&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3479&#10;(dp3480&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3481&#10;(dp3482&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3483&#10;(dp3484&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3485&#10;(dp3486&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3487&#10;(dp3488&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Name5-Value5'&#10;p3489&#10;sg22&#10;I00&#10;sg37&#10;g3385&#10;sg39&#10;g3489&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3490&#10;(dp3491&#10;g11&#10;Nsg12&#10;I53&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3492&#10;(dp3493&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3494&#10;(dp3495&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3496&#10;(dp3497&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3498&#10;(dp3499&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3500&#10;(dp3501&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Counter5'&#10;p3502&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3502&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3503&#10;(dp3504&#10;g11&#10;Nsg12&#10;I54&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3505&#10;(dp3506&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3507&#10;(dp3508&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3509&#10;(dp3510&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3511&#10;(dp3512&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3513&#10;(dp3514&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Name6-Value6'&#10;p3515&#10;sg22&#10;I00&#10;sg37&#10;g3385&#10;sg39&#10;g3515&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3516&#10;(dp3517&#10;g11&#10;Nsg12&#10;I55&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3518&#10;(dp3519&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3520&#10;(dp3521&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3522&#10;(dp3523&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3524&#10;(dp3525&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3526&#10;(dp3527&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Counter6'&#10;p3528&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3528&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3529&#10;(dp3530&#10;g11&#10;Nsg12&#10;I56&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3531&#10;(dp3532&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3533&#10;(dp3534&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3535&#10;(dp3536&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3537&#10;(dp3538&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3539&#10;(dp3540&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Name7-Value7'&#10;p3541&#10;sg22&#10;I00&#10;sg37&#10;g3385&#10;sg39&#10;g3541&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3542&#10;(dp3543&#10;g11&#10;Nsg12&#10;I57&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3544&#10;(dp3545&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3546&#10;(dp3547&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3548&#10;(dp3549&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3550&#10;(dp3551&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3552&#10;(dp3553&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Counter7'&#10;p3554&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3554&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3555&#10;(dp3556&#10;g11&#10;Nsg12&#10;I58&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3557&#10;(dp3558&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3559&#10;(dp3560&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3561&#10;(dp3562&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3563&#10;(dp3564&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3565&#10;(dp3566&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Name8-Value8'&#10;p3567&#10;sg22&#10;I00&#10;sg37&#10;g3385&#10;sg39&#10;g3567&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3568&#10;(dp3569&#10;g11&#10;Nsg12&#10;I59&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3570&#10;(dp3571&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3572&#10;(dp3573&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3574&#10;(dp3575&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3576&#10;(dp3577&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3578&#10;(dp3579&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Counter8'&#10;p3580&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3580&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3581&#10;(dp3582&#10;g11&#10;Nsg12&#10;I60&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3583&#10;(dp3584&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3585&#10;(dp3586&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3587&#10;(dp3588&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3589&#10;(dp3590&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3591&#10;(dp3592&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Name9-Value9'&#10;p3593&#10;sg22&#10;I00&#10;sg37&#10;g3385&#10;sg39&#10;g3593&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3594&#10;(dp3595&#10;g11&#10;Nsg12&#10;I61&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3596&#10;(dp3597&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3598&#10;(dp3599&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3600&#10;(dp3601&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3602&#10;(dp3603&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3604&#10;(dp3605&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Counter9'&#10;p3606&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3606&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3607&#10;(dp3608&#10;g11&#10;Nsg12&#10;I62&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3609&#10;(dp3610&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3611&#10;(dp3612&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3613&#10;(dp3614&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3615&#10;(dp3616&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3617&#10;(dp3618&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Name10-Value10'&#10;p3619&#10;sg22&#10;I00&#10;sg37&#10;g3385&#10;sg39&#10;g3619&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3620&#10;(dp3621&#10;g11&#10;Nsg12&#10;I63&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3622&#10;(dp3623&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3624&#10;(dp3625&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3626&#10;(dp3627&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3628&#10;(dp3629&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3630&#10;(dp3631&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Counter10'&#10;p3632&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3632&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3633&#10;(dp3634&#10;g11&#10;Nsg12&#10;I64&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3635&#10;(dp3636&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3637&#10;(dp3638&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3639&#10;(dp3640&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3641&#10;(dp3642&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3643&#10;(dp3644&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Gzip-Encoded Responses Received'&#10;p3645&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3645&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3646&#10;(dp3647&#10;g11&#10;Nsg12&#10;I65&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3648&#10;(dp3649&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3650&#10;(dp3651&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3652&#10;(dp3653&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3654&#10;(dp3655&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3656&#10;(dp3657&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Gzip-Encoded Responses Successful'&#10;p3658&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3658&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3659&#10;(dp3660&#10;g11&#10;Nsg12&#10;I66&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3661&#10;(dp3662&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3663&#10;(dp3664&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3665&#10;(dp3666&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3667&#10;(dp3668&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3669&#10;(dp3670&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Gzip-Encoded Responses Failed'&#10;p3671&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3671&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3672&#10;(dp3673&#10;g11&#10;Nsg12&#10;I67&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3674&#10;(dp3675&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3676&#10;(dp3677&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3678&#10;(dp3679&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3680&#10;(dp3681&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3682&#10;(dp3683&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Deflate-Encoded Responses Received'&#10;p3684&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3684&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3685&#10;(dp3686&#10;g11&#10;Nsg12&#10;I68&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3687&#10;(dp3688&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3689&#10;(dp3690&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3691&#10;(dp3692&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3693&#10;(dp3694&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3695&#10;(dp3696&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Deflate-Encoded Responses Successful'&#10;p3697&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3697&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3698&#10;(dp3699&#10;g11&#10;Nsg12&#10;I69&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3700&#10;(dp3701&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3702&#10;(dp3703&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3704&#10;(dp3705&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3706&#10;(dp3707&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3708&#10;(dp3709&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Deflate-Encoded Responses Failed'&#10;p3710&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3710&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3711&#10;(dp3712&#10;g11&#10;Nsg12&#10;I70&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3713&#10;(dp3714&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3715&#10;(dp3716&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3717&#10;(dp3718&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3719&#10;(dp3720&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3721&#10;(dp3722&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Content-MD5 Responses Received'&#10;p3723&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3723&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3724&#10;(dp3725&#10;g11&#10;Nsg12&#10;I71&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3726&#10;(dp3727&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3728&#10;(dp3729&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3730&#10;(dp3731&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3732&#10;(dp3733&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3734&#10;(dp3735&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Content-MD5 Responses Successful'&#10;p3736&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3736&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3737&#10;(dp3738&#10;g11&#10;Nsg12&#10;I72&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3739&#10;(dp3740&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3741&#10;(dp3742&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3743&#10;(dp3744&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3745&#10;(dp3746&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3747&#10;(dp3748&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Content-MD5 Responses Failed'&#10;p3749&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3749&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3750&#10;(dp3751&#10;g11&#10;Nsg12&#10;I73&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3752&#10;(dp3753&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3754&#10;(dp3755&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3756&#10;(dp3757&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3758&#10;(dp3759&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3760&#10;(dp3761&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Custom MD5 Responses Received'&#10;p3762&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3762&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3763&#10;(dp3764&#10;g11&#10;Nsg12&#10;I74&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3765&#10;(dp3766&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3767&#10;(dp3768&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3769&#10;(dp3770&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3771&#10;(dp3772&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3773&#10;(dp3774&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Custom MD5 Responses Successful'&#10;p3775&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3775&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3776&#10;(dp3777&#10;g11&#10;Nsg12&#10;I75&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3778&#10;(dp3779&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3780&#10;(dp3781&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3782&#10;(dp3783&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3784&#10;(dp3785&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3786&#10;(dp3787&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Custom MD5 Responses Failed'&#10;p3788&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3788&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3789&#10;(dp3790&#10;g11&#10;Nsg12&#10;I76&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3791&#10;(dp3792&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3793&#10;(dp3794&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3795&#10;(dp3796&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3797&#10;(dp3798&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3799&#10;(dp3800&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Average Compression Ratio'&#10;p3801&#10;sg22&#10;I00&#10;sg37&#10;g261&#10;sg39&#10;g3801&#10;sbatRp3802&#10;(dp3803&#10;g12&#10;I76&#10;sg22&#10;I00&#10;sg11&#10;NsbsS'HTTP Client'&#10;p3804&#10;g3&#10;(g4&#10;g5&#10;(lp3805&#10;g3&#10;(g7&#10;g8&#10;NtRp3806&#10;(dp3807&#10;g11&#10;Nsg12&#10;I0&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3808&#10;(dp3809&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3810&#10;(dp3811&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3812&#10;(dp3813&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3814&#10;(dp3815&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3816&#10;(dp3817&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Simulated Users'&#10;p3818&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3818&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3819&#10;(dp3820&#10;g11&#10;Nsg12&#10;I1&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3821&#10;(dp3822&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3823&#10;(dp3824&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3825&#10;(dp3826&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3827&#10;(dp3828&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3829&#10;(dp3830&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Concurrent Connections'&#10;p3831&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3831&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3832&#10;(dp3833&#10;g11&#10;Nsg12&#10;I2&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3834&#10;(dp3835&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3836&#10;(dp3837&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3838&#10;(dp3839&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3840&#10;(dp3841&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3842&#10;(dp3843&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Connections'&#10;p3844&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3844&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3845&#10;(dp3846&#10;g11&#10;Nsg12&#10;I3&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3847&#10;(dp3848&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3849&#10;(dp3850&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3851&#10;(dp3852&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3853&#10;(dp3854&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3855&#10;(dp3856&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Connection Attempts'&#10;p3857&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3857&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3858&#10;(dp3859&#10;g11&#10;Nsg12&#10;I4&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3860&#10;(dp3861&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3862&#10;(dp3863&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3864&#10;(dp3865&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3866&#10;(dp3867&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3868&#10;(dp3869&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Connection Aborts'&#10;p3870&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3870&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3871&#10;(dp3872&#10;g11&#10;Nsg12&#10;I5&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3873&#10;(dp3874&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3875&#10;(dp3876&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3877&#10;(dp3878&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3879&#10;(dp3880&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3881&#10;(dp3882&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Old Session Aborts'&#10;p3883&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3883&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3884&#10;(dp3885&#10;g11&#10;Nsg12&#10;I6&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3886&#10;(dp3887&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3888&#10;(dp3889&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3890&#10;(dp3891&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3892&#10;(dp3893&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3894&#10;(dp3895&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Transactions'&#10;p3896&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3896&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3897&#10;(dp3898&#10;g11&#10;Nsg12&#10;I7&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3899&#10;(dp3900&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3901&#10;(dp3902&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3903&#10;(dp3904&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3905&#10;(dp3906&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3907&#10;(dp3908&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Bytes'&#10;p3909&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3909&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3910&#10;(dp3911&#10;g11&#10;Nsg12&#10;I8&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3912&#10;(dp3913&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3914&#10;(dp3915&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3916&#10;(dp3917&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3918&#10;(dp3919&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3920&#10;(dp3921&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g2812&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2812&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3922&#10;(dp3923&#10;g11&#10;Nsg12&#10;I9&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3924&#10;(dp3925&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3926&#10;(dp3927&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3928&#10;(dp3929&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3930&#10;(dp3931&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3932&#10;(dp3933&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g2825&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2825&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3934&#10;(dp3935&#10;g11&#10;Nsg12&#10;I10&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3936&#10;(dp3937&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3938&#10;(dp3939&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3940&#10;(dp3941&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3942&#10;(dp3943&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3944&#10;(dp3945&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g2838&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2838&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3946&#10;(dp3947&#10;g11&#10;Nsg12&#10;I11&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3948&#10;(dp3949&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3950&#10;(dp3951&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3952&#10;(dp3953&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3954&#10;(dp3955&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3956&#10;(dp3957&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g3137&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3137&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3958&#10;(dp3959&#10;g11&#10;Nsg12&#10;I12&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3960&#10;(dp3961&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3962&#10;(dp3963&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3964&#10;(dp3965&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3966&#10;(dp3967&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3968&#10;(dp3969&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g3150&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3150&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3970&#10;(dp3971&#10;g11&#10;Nsg12&#10;I13&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3972&#10;(dp3973&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3974&#10;(dp3975&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3976&#10;(dp3977&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3978&#10;(dp3979&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3980&#10;(dp3981&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g3163&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3163&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3982&#10;(dp3983&#10;g11&#10;Nsg12&#10;I14&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3984&#10;(dp3985&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3986&#10;(dp3987&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp3988&#10;(dp3989&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp3990&#10;(dp3991&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp3992&#10;(dp3993&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g3176&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3176&#10;sbag3&#10;(g7&#10;g8&#10;NtRp3994&#10;(dp3995&#10;g11&#10;Nsg12&#10;I15&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp3996&#10;(dp3997&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp3998&#10;(dp3999&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4000&#10;(dp4001&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4002&#10;(dp4003&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4004&#10;(dp4005&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g3189&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3189&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4006&#10;(dp4007&#10;g11&#10;Nsg12&#10;I16&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4008&#10;(dp4009&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4010&#10;(dp4011&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4012&#10;(dp4013&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4014&#10;(dp4015&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4016&#10;(dp4017&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g3202&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3202&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4018&#10;(dp4019&#10;g11&#10;Nsg12&#10;I17&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4020&#10;(dp4021&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4022&#10;(dp4023&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4024&#10;(dp4025&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4026&#10;(dp4027&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4028&#10;(dp4029&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g3215&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3215&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4030&#10;(dp4031&#10;g11&#10;Nsg12&#10;I18&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4032&#10;(dp4033&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4034&#10;(dp4035&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4036&#10;(dp4037&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4038&#10;(dp4039&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4040&#10;(dp4041&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g2851&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2851&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4042&#10;(dp4043&#10;g11&#10;Nsg12&#10;I19&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4044&#10;(dp4045&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4046&#10;(dp4047&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4048&#10;(dp4049&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4050&#10;(dp4051&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4052&#10;(dp4053&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g2864&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2864&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4054&#10;(dp4055&#10;g11&#10;Nsg12&#10;I20&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4056&#10;(dp4057&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4058&#10;(dp4059&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4060&#10;(dp4061&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4062&#10;(dp4063&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4064&#10;(dp4065&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g2877&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2877&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4066&#10;(dp4067&#10;g11&#10;Nsg12&#10;I21&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4068&#10;(dp4069&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4070&#10;(dp4071&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4072&#10;(dp4073&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4074&#10;(dp4075&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4076&#10;(dp4077&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g2890&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2890&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4078&#10;(dp4079&#10;g11&#10;Nsg12&#10;I22&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4080&#10;(dp4081&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4082&#10;(dp4083&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4084&#10;(dp4085&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4086&#10;(dp4087&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4088&#10;(dp4089&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g2903&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2903&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4090&#10;(dp4091&#10;g11&#10;Nsg12&#10;I23&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4092&#10;(dp4093&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4094&#10;(dp4095&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4096&#10;(dp4097&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4098&#10;(dp4099&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4100&#10;(dp4101&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g2916&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2916&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4102&#10;(dp4103&#10;g11&#10;Nsg12&#10;I24&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4104&#10;(dp4105&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4106&#10;(dp4107&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4108&#10;(dp4109&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4110&#10;(dp4111&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4112&#10;(dp4113&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g2929&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2929&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4114&#10;(dp4115&#10;g11&#10;Nsg12&#10;I25&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4116&#10;(dp4117&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4118&#10;(dp4119&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4120&#10;(dp4121&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4122&#10;(dp4123&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4124&#10;(dp4125&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g2942&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2942&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4126&#10;(dp4127&#10;g11&#10;Nsg12&#10;I26&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4128&#10;(dp4129&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4130&#10;(dp4131&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4132&#10;(dp4133&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4134&#10;(dp4135&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4136&#10;(dp4137&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g2955&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2955&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4138&#10;(dp4139&#10;g11&#10;Nsg12&#10;I27&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4140&#10;(dp4141&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4142&#10;(dp4143&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4144&#10;(dp4145&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4146&#10;(dp4147&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4148&#10;(dp4149&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g2968&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2968&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4150&#10;(dp4151&#10;g11&#10;Nsg12&#10;I28&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4152&#10;(dp4153&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4154&#10;(dp4155&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4156&#10;(dp4157&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4158&#10;(dp4159&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4160&#10;(dp4161&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g2981&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2981&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4162&#10;(dp4163&#10;g11&#10;Nsg12&#10;I29&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4164&#10;(dp4165&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4166&#10;(dp4167&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4168&#10;(dp4169&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4170&#10;(dp4171&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4172&#10;(dp4173&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g2994&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g2994&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4174&#10;(dp4175&#10;g11&#10;Nsg12&#10;I30&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4176&#10;(dp4177&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4178&#10;(dp4179&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4180&#10;(dp4181&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4182&#10;(dp4183&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4184&#10;(dp4185&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g3007&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3007&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4186&#10;(dp4187&#10;g11&#10;Nsg12&#10;I31&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4188&#10;(dp4189&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4190&#10;(dp4191&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4192&#10;(dp4193&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4194&#10;(dp4195&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4196&#10;(dp4197&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g3020&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3020&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4198&#10;(dp4199&#10;g11&#10;Nsg12&#10;I32&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4200&#10;(dp4201&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4202&#10;(dp4203&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4204&#10;(dp4205&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4206&#10;(dp4207&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4208&#10;(dp4209&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g3033&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3033&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4210&#10;(dp4211&#10;g11&#10;Nsg12&#10;I33&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4212&#10;(dp4213&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4214&#10;(dp4215&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4216&#10;(dp4217&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4218&#10;(dp4219&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4220&#10;(dp4221&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g3046&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3046&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4222&#10;(dp4223&#10;g11&#10;Nsg12&#10;I34&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4224&#10;(dp4225&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4226&#10;(dp4227&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4228&#10;(dp4229&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4230&#10;(dp4231&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4232&#10;(dp4233&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g3059&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3059&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4234&#10;(dp4235&#10;g11&#10;Nsg12&#10;I35&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4236&#10;(dp4237&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4238&#10;(dp4239&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4240&#10;(dp4241&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4242&#10;(dp4243&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4244&#10;(dp4245&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g3072&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3072&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4246&#10;(dp4247&#10;g11&#10;Nsg12&#10;I36&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4248&#10;(dp4249&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4250&#10;(dp4251&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4252&#10;(dp4253&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4254&#10;(dp4255&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4256&#10;(dp4257&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Session Timeouts (408)'&#10;p4258&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4258&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4259&#10;(dp4260&#10;g11&#10;Nsg12&#10;I37&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4261&#10;(dp4262&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4263&#10;(dp4264&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4265&#10;(dp4266&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4267&#10;(dp4268&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4269&#10;(dp4270&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Request Precondition Failed (412)'&#10;p4271&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4271&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4272&#10;(dp4273&#10;g11&#10;Nsg12&#10;I38&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4274&#10;(dp4275&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4276&#10;(dp4277&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4278&#10;(dp4279&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4280&#10;(dp4281&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4282&#10;(dp4283&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Sessions Rejected (503)'&#10;p4284&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4284&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4285&#10;(dp4286&#10;g11&#10;Nsg12&#10;I39&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4287&#10;(dp4288&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4289&#10;(dp4290&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4291&#10;(dp4292&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4293&#10;(dp4294&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4295&#10;(dp4296&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g3085&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3085&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4297&#10;(dp4298&#10;g11&#10;Nsg12&#10;I40&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4299&#10;(dp4300&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4301&#10;(dp4302&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4303&#10;(dp4304&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4305&#10;(dp4306&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4307&#10;(dp4308&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;g3098&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g3098&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4309&#10;(dp4310&#10;g11&#10;Nsg12&#10;I41&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4311&#10;(dp4312&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4313&#10;(dp4314&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4315&#10;(dp4316&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4317&#10;(dp4318&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4319&#10;(dp4320&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Transactions Active'&#10;p4321&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4321&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4322&#10;(dp4323&#10;g11&#10;Nsg12&#10;I42&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4324&#10;(dp4325&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4326&#10;(dp4327&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4328&#10;(dp4329&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4330&#10;(dp4331&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4332&#10;(dp4333&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Users Active'&#10;p4334&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4334&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4335&#10;(dp4336&#10;g11&#10;Nsg12&#10;I43&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4337&#10;(dp4338&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4339&#10;(dp4340&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4341&#10;(dp4342&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4343&#10;(dp4344&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4345&#10;(dp4346&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Content-Encoded Responses Received'&#10;p4347&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4347&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4348&#10;(dp4349&#10;g11&#10;Nsg12&#10;I44&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4350&#10;(dp4351&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4352&#10;(dp4353&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4354&#10;(dp4355&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4356&#10;(dp4357&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4358&#10;(dp4359&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Gzip Content-Encoding Received'&#10;p4360&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4360&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4361&#10;(dp4362&#10;g11&#10;Nsg12&#10;I45&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4363&#10;(dp4364&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4365&#10;(dp4366&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4367&#10;(dp4368&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4369&#10;(dp4370&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4371&#10;(dp4372&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Deflate Content-Encoding Received'&#10;p4373&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4373&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4374&#10;(dp4375&#10;g11&#10;Nsg12&#10;I46&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4376&#10;(dp4377&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4378&#10;(dp4379&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4380&#10;(dp4381&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4382&#10;(dp4383&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4384&#10;(dp4385&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Unrecognized Content-Encoding Received'&#10;p4386&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4386&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4387&#10;(dp4388&#10;g11&#10;Nsg12&#10;I47&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4389&#10;(dp4390&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4391&#10;(dp4392&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4393&#10;(dp4394&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4395&#10;(dp4396&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4397&#10;(dp4398&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Content-Encoded Responses Decode Successful'&#10;p4399&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4399&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4400&#10;(dp4401&#10;g11&#10;Nsg12&#10;I48&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4402&#10;(dp4403&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4404&#10;(dp4405&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4406&#10;(dp4407&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4408&#10;(dp4409&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4410&#10;(dp4411&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Gzip Content-Encoding Decode Successful'&#10;p4412&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4412&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4413&#10;(dp4414&#10;g11&#10;Nsg12&#10;I49&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4415&#10;(dp4416&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4417&#10;(dp4418&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4419&#10;(dp4420&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4421&#10;(dp4422&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4423&#10;(dp4424&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Deflate Content-Encoding Decode Successful'&#10;p4425&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4425&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4426&#10;(dp4427&#10;g11&#10;Nsg12&#10;I50&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4428&#10;(dp4429&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4430&#10;(dp4431&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4432&#10;(dp4433&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4434&#10;(dp4435&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4436&#10;(dp4437&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Content-Encoded Responses Decode Failed'&#10;p4438&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4438&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4439&#10;(dp4440&#10;g11&#10;Nsg12&#10;I51&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4441&#10;(dp4442&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4443&#10;(dp4444&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4445&#10;(dp4446&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4447&#10;(dp4448&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4449&#10;(dp4450&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Gzip Content-Encoding Decode Failed'&#10;p4451&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4451&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4452&#10;(dp4453&#10;g11&#10;Nsg12&#10;I52&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4454&#10;(dp4455&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4456&#10;(dp4457&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4458&#10;(dp4459&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4460&#10;(dp4461&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4462&#10;(dp4463&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Deflate Content-Encoding Decode Failed'&#10;p4464&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4464&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4465&#10;(dp4466&#10;g11&#10;Nsg12&#10;I53&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4467&#10;(dp4468&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4469&#10;(dp4470&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4471&#10;(dp4472&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4473&#10;(dp4474&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4475&#10;(dp4476&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Gzip Content-Encoding Decode Failed - Data Error'&#10;p4477&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4477&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4478&#10;(dp4479&#10;g11&#10;Nsg12&#10;I54&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4480&#10;(dp4481&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4482&#10;(dp4483&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4484&#10;(dp4485&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4486&#10;(dp4487&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4488&#10;(dp4489&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Gzip Content-Encoding Decode Failed - Decoding Error'&#10;p4490&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4490&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4491&#10;(dp4492&#10;g11&#10;Nsg12&#10;I55&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4493&#10;(dp4494&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4495&#10;(dp4496&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4497&#10;(dp4498&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4499&#10;(dp4500&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4501&#10;(dp4502&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Deflate Content-Encoding Decode Failed - Data Error'&#10;p4503&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4503&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4504&#10;(dp4505&#10;g11&#10;Nsg12&#10;I56&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4506&#10;(dp4507&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4508&#10;(dp4509&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4510&#10;(dp4511&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4512&#10;(dp4513&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4514&#10;(dp4515&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Deflate Content-Encoding Decode Failed - Decoding Error'&#10;p4516&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4516&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4517&#10;(dp4518&#10;g11&#10;Nsg12&#10;I57&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4519&#10;(dp4520&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4521&#10;(dp4522&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4523&#10;(dp4524&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4525&#10;(dp4526&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4527&#10;(dp4528&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Chunked Transfer-Encoded Headers Received'&#10;p4529&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4529&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4530&#10;(dp4531&#10;g11&#10;Nsg12&#10;I58&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4532&#10;(dp4533&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4534&#10;(dp4535&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4536&#10;(dp4537&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4538&#10;(dp4539&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4540&#10;(dp4541&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Chunked Transfer-Encoded Responses Received'&#10;p4542&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4542&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4543&#10;(dp4544&#10;g11&#10;Nsg12&#10;I59&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4545&#10;(dp4546&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4547&#10;(dp4548&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4549&#10;(dp4550&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4551&#10;(dp4552&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4553&#10;(dp4554&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Chunked Transfer-Encoding Decode Successful'&#10;p4555&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4555&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4556&#10;(dp4557&#10;g11&#10;Nsg12&#10;I60&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4558&#10;(dp4559&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4560&#10;(dp4561&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4562&#10;(dp4563&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4564&#10;(dp4565&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4566&#10;(dp4567&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Chunked Transfer-Encoding Decode Failed'&#10;p4568&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4568&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4569&#10;(dp4570&#10;g11&#10;Nsg12&#10;I61&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4571&#10;(dp4572&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4573&#10;(dp4574&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4575&#10;(dp4576&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4577&#10;(dp4578&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4579&#10;(dp4580&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Total Chunks Received'&#10;p4581&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4581&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4582&#10;(dp4583&#10;g11&#10;Nsg12&#10;I62&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4584&#10;(dp4585&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4586&#10;(dp4587&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4588&#10;(dp4589&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4590&#10;(dp4591&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4592&#10;(dp4593&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Chunked Transfer-Encoding Headers Sent'&#10;p4594&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4594&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4595&#10;(dp4596&#10;g11&#10;Nsg12&#10;I63&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4597&#10;(dp4598&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4599&#10;(dp4600&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4601&#10;(dp4602&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4603&#10;(dp4604&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4605&#10;(dp4606&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Total Chunks Sent'&#10;p4607&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4607&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4608&#10;(dp4609&#10;g11&#10;Nsg12&#10;I64&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4610&#10;(dp4611&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4612&#10;(dp4613&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4614&#10;(dp4615&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4616&#10;(dp4617&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4618&#10;(dp4619&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Content-MD5 Responses Received'&#10;p4620&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4620&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4621&#10;(dp4622&#10;g11&#10;Nsg12&#10;I65&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4623&#10;(dp4624&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4625&#10;(dp4626&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4627&#10;(dp4628&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4629&#10;(dp4630&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4631&#10;(dp4632&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Content-MD5 Check Successful'&#10;p4633&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4633&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4634&#10;(dp4635&#10;g11&#10;Nsg12&#10;I66&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4636&#10;(dp4637&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4638&#10;(dp4639&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4640&#10;(dp4641&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4642&#10;(dp4643&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4644&#10;(dp4645&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Content-MD5 Check Failed'&#10;p4646&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4646&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4647&#10;(dp4648&#10;g11&#10;Nsg12&#10;I67&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4649&#10;(dp4650&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4651&#10;(dp4652&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4653&#10;(dp4654&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4655&#10;(dp4656&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4657&#10;(dp4658&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Custom-MD5 Responses Received'&#10;p4659&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4659&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4660&#10;(dp4661&#10;g11&#10;Nsg12&#10;I68&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4662&#10;(dp4663&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4664&#10;(dp4665&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4666&#10;(dp4667&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4668&#10;(dp4669&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4670&#10;(dp4671&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Custom-MD5 Check Successful'&#10;p4672&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4672&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4673&#10;(dp4674&#10;g11&#10;Nsg12&#10;I69&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4675&#10;(dp4676&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4677&#10;(dp4678&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4679&#10;(dp4680&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4681&#10;(dp4682&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4683&#10;(dp4684&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Custom-MD5 Check Failed'&#10;p4685&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4685&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4686&#10;(dp4687&#10;g11&#10;Nsg12&#10;I70&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4688&#10;(dp4689&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4690&#10;(dp4691&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4692&#10;(dp4693&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4694&#10;(dp4695&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4696&#10;(dp4697&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Bytes Sent'&#10;p4698&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4698&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4699&#10;(dp4700&#10;g11&#10;Nsg12&#10;I71&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4701&#10;(dp4702&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4703&#10;(dp4704&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4705&#10;(dp4706&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4707&#10;(dp4708&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4709&#10;(dp4710&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Bytes Received'&#10;p4711&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4711&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4712&#10;(dp4713&#10;g11&#10;Nsg12&#10;I72&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4714&#10;(dp4715&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4716&#10;(dp4717&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4718&#10;(dp4719&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4720&#10;(dp4721&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4722&#10;(dp4723&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Content Bytes Sent'&#10;p4724&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4724&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4725&#10;(dp4726&#10;g11&#10;Nsg12&#10;I73&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4727&#10;(dp4728&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4729&#10;(dp4730&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4731&#10;(dp4732&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4733&#10;(dp4734&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4735&#10;(dp4736&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Content Bytes Received'&#10;p4737&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4737&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4738&#10;(dp4739&#10;g11&#10;Nsg12&#10;I74&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4740&#10;(dp4741&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4742&#10;(dp4743&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4744&#10;(dp4745&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4746&#10;(dp4747&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4748&#10;(dp4749&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Decompressed Content Bytes Received'&#10;p4750&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4750&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4751&#10;(dp4752&#10;g11&#10;Nsg12&#10;I75&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4753&#10;(dp4754&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4755&#10;(dp4756&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4757&#10;(dp4758&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4759&#10;(dp4760&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4761&#10;(dp4762&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Cookies Received'&#10;p4763&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4763&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4764&#10;(dp4765&#10;g11&#10;Nsg12&#10;I76&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4766&#10;(dp4767&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4768&#10;(dp4769&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4770&#10;(dp4771&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4772&#10;(dp4773&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4774&#10;(dp4775&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Cookies Sent'&#10;p4776&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4776&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4777&#10;(dp4778&#10;g11&#10;Nsg12&#10;I77&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4779&#10;(dp4780&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4781&#10;(dp4782&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4783&#10;(dp4784&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4785&#10;(dp4786&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4787&#10;(dp4788&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Cookies Rejected'&#10;p4789&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4789&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4790&#10;(dp4791&#10;g11&#10;Nsg12&#10;I78&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4792&#10;(dp4793&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4794&#10;(dp4795&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4796&#10;(dp4797&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4798&#10;(dp4799&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4800&#10;(dp4801&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Cookies Rejected - (Path Match Failed)'&#10;p4802&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4802&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4803&#10;(dp4804&#10;g11&#10;Nsg12&#10;I79&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4805&#10;(dp4806&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4807&#10;(dp4808&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4809&#10;(dp4810&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4811&#10;(dp4812&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4813&#10;(dp4814&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Cookies Rejected - (Domain Match Failed)'&#10;p4815&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4815&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4816&#10;(dp4817&#10;g11&#10;Nsg12&#10;I80&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4818&#10;(dp4819&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4820&#10;(dp4821&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4822&#10;(dp4823&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4824&#10;(dp4825&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4826&#10;(dp4827&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Cookies Rejected - (Cookiejar Overflow)'&#10;p4828&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4828&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4829&#10;(dp4830&#10;g11&#10;Nsg12&#10;I81&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4831&#10;(dp4832&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4833&#10;(dp4834&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4835&#10;(dp4836&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4837&#10;(dp4838&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4839&#10;(dp4840&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Cookies Rejected - (Probabilistic Reject)'&#10;p4841&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4841&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4842&#10;(dp4843&#10;g11&#10;Nsg12&#10;I82&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4844&#10;(dp4845&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4846&#10;(dp4847&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4848&#10;(dp4849&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4850&#10;(dp4851&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4852&#10;(dp4853&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Cookie headers Rejected - (Memory Overflow)'&#10;p4854&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4854&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4855&#10;(dp4856&#10;g11&#10;Nsg12&#10;I83&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4857&#10;(dp4858&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4859&#10;(dp4860&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4861&#10;(dp4862&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4863&#10;(dp4864&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4865&#10;(dp4866&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Connect Time (us)'&#10;p4867&#10;sg22&#10;I00&#10;sg37&#10;g261&#10;sg39&#10;g4867&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4868&#10;(dp4869&#10;g11&#10;Nsg12&#10;I84&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4870&#10;(dp4871&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4872&#10;(dp4873&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4874&#10;(dp4875&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4876&#10;(dp4877&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4878&#10;(dp4879&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Time To First Byte (us)'&#10;p4880&#10;sg22&#10;I00&#10;sg37&#10;g261&#10;sg39&#10;g4880&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4881&#10;(dp4882&#10;g11&#10;Nsg12&#10;I85&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4883&#10;(dp4884&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4885&#10;(dp4886&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4887&#10;(dp4888&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4889&#10;(dp4890&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4891&#10;(dp4892&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Time To Last Byte (us)'&#10;p4893&#10;sg22&#10;I00&#10;sg37&#10;g261&#10;sg39&#10;g4893&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4894&#10;(dp4895&#10;g11&#10;Nsg12&#10;I86&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4896&#10;(dp4897&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4898&#10;(dp4899&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4900&#10;(dp4901&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4902&#10;(dp4903&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4904&#10;(dp4905&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Old Session Abort Delay - Average (us)'&#10;p4906&#10;sg22&#10;I00&#10;sg37&#10;g261&#10;sg39&#10;g4906&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4907&#10;(dp4908&#10;g11&#10;Nsg12&#10;I87&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4909&#10;(dp4910&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4911&#10;(dp4912&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4913&#10;(dp4914&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4915&#10;(dp4916&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4917&#10;(dp4918&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Old Session Abort Delay - Minimum (us)'&#10;p4919&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4919&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4920&#10;(dp4921&#10;g11&#10;Nsg12&#10;I88&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4922&#10;(dp4923&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4924&#10;(dp4925&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4926&#10;(dp4927&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4928&#10;(dp4929&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4930&#10;(dp4931&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Old Session Abort Delay - Maximum (us)'&#10;p4932&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4932&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4933&#10;(dp4934&#10;g11&#10;Nsg12&#10;I89&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4935&#10;(dp4936&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4937&#10;(dp4938&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4939&#10;(dp4940&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4941&#10;(dp4942&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4943&#10;(dp4944&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client Total Data Integrity Check Failed'&#10;p4945&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4945&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4946&#10;(dp4947&#10;g11&#10;Nsg12&#10;I90&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4948&#10;(dp4949&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4950&#10;(dp4951&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4952&#10;(dp4953&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4954&#10;(dp4955&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4956&#10;(dp4957&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client Total Data Integrity Check Succeeded'&#10;p4958&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4958&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4959&#10;(dp4960&#10;g11&#10;Nsg12&#10;I91&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4961&#10;(dp4962&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4963&#10;(dp4964&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4965&#10;(dp4966&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4967&#10;(dp4968&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4969&#10;(dp4970&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Data Frames Received'&#10;p4971&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4971&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4972&#10;(dp4973&#10;g11&#10;Nsg12&#10;I92&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4974&#10;(dp4975&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4976&#10;(dp4977&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4978&#10;(dp4979&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4980&#10;(dp4981&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4982&#10;(dp4983&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Header Frames Received'&#10;p4984&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4984&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4985&#10;(dp4986&#10;g11&#10;Nsg12&#10;I93&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp4987&#10;(dp4988&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp4989&#10;(dp4990&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp4991&#10;(dp4992&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp4993&#10;(dp4994&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp4995&#10;(dp4996&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Priority Frames Received'&#10;p4997&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g4997&#10;sbag3&#10;(g7&#10;g8&#10;NtRp4998&#10;(dp4999&#10;g11&#10;Nsg12&#10;I94&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5000&#10;(dp5001&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5002&#10;(dp5003&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5004&#10;(dp5005&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5006&#10;(dp5007&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5008&#10;(dp5009&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Reset Stream Frames Received'&#10;p5010&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5010&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5011&#10;(dp5012&#10;g11&#10;Nsg12&#10;I95&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5013&#10;(dp5014&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5015&#10;(dp5016&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5017&#10;(dp5018&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5019&#10;(dp5020&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5021&#10;(dp5022&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Settings Frames Received'&#10;p5023&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5023&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5024&#10;(dp5025&#10;g11&#10;Nsg12&#10;I96&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5026&#10;(dp5027&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5028&#10;(dp5029&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5030&#10;(dp5031&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5032&#10;(dp5033&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5034&#10;(dp5035&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Push Promise Frames Received'&#10;p5036&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5036&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5037&#10;(dp5038&#10;g11&#10;Nsg12&#10;I97&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5039&#10;(dp5040&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5041&#10;(dp5042&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5043&#10;(dp5044&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5045&#10;(dp5046&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5047&#10;(dp5048&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Ping Frames Received'&#10;p5049&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5049&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5050&#10;(dp5051&#10;g11&#10;Nsg12&#10;I98&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5052&#10;(dp5053&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5054&#10;(dp5055&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5056&#10;(dp5057&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5058&#10;(dp5059&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5060&#10;(dp5061&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Go Away Frames Received'&#10;p5062&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5062&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5063&#10;(dp5064&#10;g11&#10;Nsg12&#10;I99&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5065&#10;(dp5066&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5067&#10;(dp5068&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5069&#10;(dp5070&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5071&#10;(dp5072&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5073&#10;(dp5074&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Window Update Frames Received'&#10;p5075&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5075&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5076&#10;(dp5077&#10;g11&#10;Nsg12&#10;I100&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5078&#10;(dp5079&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5080&#10;(dp5081&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5082&#10;(dp5083&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5084&#10;(dp5085&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5086&#10;(dp5087&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Continuation Frames Received'&#10;p5088&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5088&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5089&#10;(dp5090&#10;g11&#10;Nsg12&#10;I101&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5091&#10;(dp5092&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5093&#10;(dp5094&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5095&#10;(dp5096&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5097&#10;(dp5098&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5099&#10;(dp5100&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Data Frames Sent'&#10;p5101&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5101&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5102&#10;(dp5103&#10;g11&#10;Nsg12&#10;I102&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5104&#10;(dp5105&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5106&#10;(dp5107&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5108&#10;(dp5109&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5110&#10;(dp5111&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5112&#10;(dp5113&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Header Frames Sent'&#10;p5114&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5114&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5115&#10;(dp5116&#10;g11&#10;Nsg12&#10;I103&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5117&#10;(dp5118&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5119&#10;(dp5120&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5121&#10;(dp5122&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5123&#10;(dp5124&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5125&#10;(dp5126&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Priority Frames Sent'&#10;p5127&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5127&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5128&#10;(dp5129&#10;g11&#10;Nsg12&#10;I104&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5130&#10;(dp5131&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5132&#10;(dp5133&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5134&#10;(dp5135&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5136&#10;(dp5137&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5138&#10;(dp5139&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Reset Stream Frames Sent'&#10;p5140&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5140&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5141&#10;(dp5142&#10;g11&#10;Nsg12&#10;I105&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5143&#10;(dp5144&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5145&#10;(dp5146&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5147&#10;(dp5148&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5149&#10;(dp5150&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5151&#10;(dp5152&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Settings Frames Sent'&#10;p5153&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5153&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5154&#10;(dp5155&#10;g11&#10;Nsg12&#10;I106&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5156&#10;(dp5157&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5158&#10;(dp5159&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5160&#10;(dp5161&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5162&#10;(dp5163&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5164&#10;(dp5165&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Push Promise Frames Sent'&#10;p5166&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5166&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5167&#10;(dp5168&#10;g11&#10;Nsg12&#10;I107&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5169&#10;(dp5170&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5171&#10;(dp5172&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5173&#10;(dp5174&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5175&#10;(dp5176&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5177&#10;(dp5178&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Ping Frames Sent'&#10;p5179&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5179&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5180&#10;(dp5181&#10;g11&#10;Nsg12&#10;I108&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5182&#10;(dp5183&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5184&#10;(dp5185&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5186&#10;(dp5187&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5188&#10;(dp5189&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5190&#10;(dp5191&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Go Away Frames Sent'&#10;p5192&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5192&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5193&#10;(dp5194&#10;g11&#10;Nsg12&#10;I109&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5195&#10;(dp5196&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5197&#10;(dp5198&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5199&#10;(dp5200&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5201&#10;(dp5202&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5203&#10;(dp5204&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Window Update Frames Sent'&#10;p5205&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5205&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5206&#10;(dp5207&#10;g11&#10;Nsg12&#10;I110&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5208&#10;(dp5209&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5210&#10;(dp5211&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5212&#10;(dp5213&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5214&#10;(dp5215&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5216&#10;(dp5217&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Continuation Frames Sent'&#10;p5218&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5218&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5219&#10;(dp5220&#10;g11&#10;Nsg12&#10;I111&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5221&#10;(dp5222&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5223&#10;(dp5224&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5225&#10;(dp5226&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5227&#10;(dp5228&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5229&#10;(dp5230&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Streams Initiated by Client'&#10;p5231&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5231&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5232&#10;(dp5233&#10;g11&#10;Nsg12&#10;I112&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5234&#10;(dp5235&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5236&#10;(dp5237&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5238&#10;(dp5239&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5240&#10;(dp5241&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5242&#10;(dp5243&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Streams Initiated by Server'&#10;p5244&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5244&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5245&#10;(dp5246&#10;g11&#10;Nsg12&#10;I113&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5247&#10;(dp5248&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5249&#10;(dp5250&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5251&#10;(dp5252&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5253&#10;(dp5254&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5255&#10;(dp5256&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Streams Succeeded (Client to Server)'&#10;p5257&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5257&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5258&#10;(dp5259&#10;g11&#10;Nsg12&#10;I114&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5260&#10;(dp5261&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5262&#10;(dp5263&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5264&#10;(dp5265&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5266&#10;(dp5267&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5268&#10;(dp5269&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Streams Succeeded (Server to Client)'&#10;p5270&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5270&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5271&#10;(dp5272&#10;g11&#10;Nsg12&#10;I115&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5273&#10;(dp5274&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5275&#10;(dp5276&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5277&#10;(dp5278&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5279&#10;(dp5280&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5281&#10;(dp5282&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Streams Failed (Client to Server)'&#10;p5283&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5283&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5284&#10;(dp5285&#10;g11&#10;Nsg12&#10;I116&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5286&#10;(dp5287&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5288&#10;(dp5289&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5290&#10;(dp5291&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5292&#10;(dp5293&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5294&#10;(dp5295&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Streams Failed (Server to Client)'&#10;p5296&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5296&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5297&#10;(dp5298&#10;g11&#10;Nsg12&#10;I117&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5299&#10;(dp5300&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5301&#10;(dp5302&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5303&#10;(dp5304&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5305&#10;(dp5306&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5307&#10;(dp5308&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Connection Upgrade Succeeded'&#10;p5309&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5309&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5310&#10;(dp5311&#10;g11&#10;Nsg12&#10;I118&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5312&#10;(dp5313&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5314&#10;(dp5315&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5316&#10;(dp5317&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5318&#10;(dp5319&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5320&#10;(dp5321&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Connection Upgrade Failed'&#10;p5322&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5322&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5323&#10;(dp5324&#10;g11&#10;Nsg12&#10;I119&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5325&#10;(dp5326&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5327&#10;(dp5328&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5329&#10;(dp5330&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5331&#10;(dp5332&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5333&#10;(dp5334&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Protocol Error'&#10;p5335&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5335&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5336&#10;(dp5337&#10;g11&#10;Nsg12&#10;I120&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5338&#10;(dp5339&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5340&#10;(dp5341&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5342&#10;(dp5343&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5344&#10;(dp5345&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5346&#10;(dp5347&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Internal Error'&#10;p5348&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5348&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5349&#10;(dp5350&#10;g11&#10;Nsg12&#10;I121&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5351&#10;(dp5352&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5353&#10;(dp5354&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5355&#10;(dp5356&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5357&#10;(dp5358&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5359&#10;(dp5360&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Flow Control Error'&#10;p5361&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5361&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5362&#10;(dp5363&#10;g11&#10;Nsg12&#10;I122&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5364&#10;(dp5365&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5366&#10;(dp5367&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5368&#10;(dp5369&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5370&#10;(dp5371&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5372&#10;(dp5373&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Settings Timeout Error'&#10;p5374&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5374&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5375&#10;(dp5376&#10;g11&#10;Nsg12&#10;I123&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5377&#10;(dp5378&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5379&#10;(dp5380&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5381&#10;(dp5382&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5383&#10;(dp5384&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5385&#10;(dp5386&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Stream Closed Error'&#10;p5387&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5387&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5388&#10;(dp5389&#10;g11&#10;Nsg12&#10;I124&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5390&#10;(dp5391&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5392&#10;(dp5393&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5394&#10;(dp5395&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5396&#10;(dp5397&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5398&#10;(dp5399&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Frame Size Error'&#10;p5400&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5400&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5401&#10;(dp5402&#10;g11&#10;Nsg12&#10;I125&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5403&#10;(dp5404&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5405&#10;(dp5406&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5407&#10;(dp5408&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5409&#10;(dp5410&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5411&#10;(dp5412&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Refused Stream Error'&#10;p5413&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5413&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5414&#10;(dp5415&#10;g11&#10;Nsg12&#10;I126&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5416&#10;(dp5417&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5418&#10;(dp5419&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5420&#10;(dp5421&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5422&#10;(dp5423&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5424&#10;(dp5425&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Stream Cancelled Error'&#10;p5426&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5426&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5427&#10;(dp5428&#10;g11&#10;Nsg12&#10;I127&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5429&#10;(dp5430&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5431&#10;(dp5432&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5433&#10;(dp5434&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5435&#10;(dp5436&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5437&#10;(dp5438&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Compression Error'&#10;p5439&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5439&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5440&#10;(dp5441&#10;g11&#10;Nsg12&#10;I128&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5442&#10;(dp5443&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5444&#10;(dp5445&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5446&#10;(dp5447&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5448&#10;(dp5449&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5450&#10;(dp5451&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Connect Error'&#10;p5452&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5452&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5453&#10;(dp5454&#10;g11&#10;Nsg12&#10;I129&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5455&#10;(dp5456&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5457&#10;(dp5458&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5459&#10;(dp5460&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5461&#10;(dp5462&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5463&#10;(dp5464&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Enhance Calm Error'&#10;p5465&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5465&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5466&#10;(dp5467&#10;g11&#10;Nsg12&#10;I130&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5468&#10;(dp5469&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5470&#10;(dp5471&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5472&#10;(dp5473&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5474&#10;(dp5475&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5476&#10;(dp5477&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 Inadequate Security Error'&#10;p5478&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5478&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5479&#10;(dp5480&#10;g11&#10;Nsg12&#10;I131&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5481&#10;(dp5482&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5483&#10;(dp5484&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5485&#10;(dp5486&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5487&#10;(dp5488&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5489&#10;(dp5490&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'HTTP Client HTTP2.0 HTTP1_1 Required Error'&#10;p5491&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5491&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5492&#10;(dp5493&#10;g11&#10;Nsg12&#10;I132&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5494&#10;(dp5495&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5496&#10;(dp5497&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5498&#10;(dp5499&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5500&#10;(dp5501&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5502&#10;(dp5503&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received'&#10;p5504&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5504&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5505&#10;(dp5506&#10;g11&#10;Nsg12&#10;I133&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5507&#10;(dp5508&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5509&#10;(dp5510&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5511&#10;(dp5512&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5513&#10;(dp5514&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5515&#10;(dp5516&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent'&#10;p5517&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5517&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5518&#10;(dp5519&#10;g11&#10;Nsg12&#10;I134&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5520&#10;(dp5521&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5522&#10;(dp5523&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5524&#10;(dp5525&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5526&#10;(dp5527&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5528&#10;(dp5529&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (close_notify)'&#10;p5530&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5530&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5531&#10;(dp5532&#10;g11&#10;Nsg12&#10;I135&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5533&#10;(dp5534&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5535&#10;(dp5536&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5537&#10;(dp5538&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5539&#10;(dp5540&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5541&#10;(dp5542&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (close_notify)'&#10;p5543&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5543&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5544&#10;(dp5545&#10;g11&#10;Nsg12&#10;I136&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5546&#10;(dp5547&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5548&#10;(dp5549&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5550&#10;(dp5551&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5552&#10;(dp5553&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5554&#10;(dp5555&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (unexpected_message)'&#10;p5556&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5556&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5557&#10;(dp5558&#10;g11&#10;Nsg12&#10;I137&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5559&#10;(dp5560&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5561&#10;(dp5562&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5563&#10;(dp5564&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5565&#10;(dp5566&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5567&#10;(dp5568&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (unexpected_message)'&#10;p5569&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5569&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5570&#10;(dp5571&#10;g11&#10;Nsg12&#10;I138&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5572&#10;(dp5573&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5574&#10;(dp5575&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5576&#10;(dp5577&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5578&#10;(dp5579&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5580&#10;(dp5581&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (bad_record_mac)'&#10;p5582&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5582&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5583&#10;(dp5584&#10;g11&#10;Nsg12&#10;I139&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5585&#10;(dp5586&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5587&#10;(dp5588&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5589&#10;(dp5590&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5591&#10;(dp5592&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5593&#10;(dp5594&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (bad_record_mac)'&#10;p5595&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5595&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5596&#10;(dp5597&#10;g11&#10;Nsg12&#10;I140&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5598&#10;(dp5599&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5600&#10;(dp5601&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5602&#10;(dp5603&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5604&#10;(dp5605&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5606&#10;(dp5607&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (decryption_failed)'&#10;p5608&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5608&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5609&#10;(dp5610&#10;g11&#10;Nsg12&#10;I141&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5611&#10;(dp5612&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5613&#10;(dp5614&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5615&#10;(dp5616&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5617&#10;(dp5618&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5619&#10;(dp5620&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (decryption_failed)'&#10;p5621&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5621&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5622&#10;(dp5623&#10;g11&#10;Nsg12&#10;I142&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5624&#10;(dp5625&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5626&#10;(dp5627&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5628&#10;(dp5629&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5630&#10;(dp5631&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5632&#10;(dp5633&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (record_overflow)'&#10;p5634&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5634&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5635&#10;(dp5636&#10;g11&#10;Nsg12&#10;I143&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5637&#10;(dp5638&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5639&#10;(dp5640&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5641&#10;(dp5642&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5643&#10;(dp5644&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5645&#10;(dp5646&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (record_overflow)'&#10;p5647&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5647&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5648&#10;(dp5649&#10;g11&#10;Nsg12&#10;I144&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5650&#10;(dp5651&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5652&#10;(dp5653&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5654&#10;(dp5655&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5656&#10;(dp5657&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5658&#10;(dp5659&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (decompression_failure)'&#10;p5660&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5660&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5661&#10;(dp5662&#10;g11&#10;Nsg12&#10;I145&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5663&#10;(dp5664&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5665&#10;(dp5666&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5667&#10;(dp5668&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5669&#10;(dp5670&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5671&#10;(dp5672&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (decompression_failure)'&#10;p5673&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5673&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5674&#10;(dp5675&#10;g11&#10;Nsg12&#10;I146&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5676&#10;(dp5677&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5678&#10;(dp5679&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5680&#10;(dp5681&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5682&#10;(dp5683&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5684&#10;(dp5685&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (handshake_failure)'&#10;p5686&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5686&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5687&#10;(dp5688&#10;g11&#10;Nsg12&#10;I147&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5689&#10;(dp5690&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5691&#10;(dp5692&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5693&#10;(dp5694&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5695&#10;(dp5696&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5697&#10;(dp5698&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (handshake_failure)'&#10;p5699&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5699&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5700&#10;(dp5701&#10;g11&#10;Nsg12&#10;I148&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5702&#10;(dp5703&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5704&#10;(dp5705&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5706&#10;(dp5707&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5708&#10;(dp5709&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5710&#10;(dp5711&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (no_certificate)'&#10;p5712&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5712&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5713&#10;(dp5714&#10;g11&#10;Nsg12&#10;I149&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5715&#10;(dp5716&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5717&#10;(dp5718&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5719&#10;(dp5720&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5721&#10;(dp5722&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5723&#10;(dp5724&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (no_certificate)'&#10;p5725&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5725&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5726&#10;(dp5727&#10;g11&#10;Nsg12&#10;I150&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5728&#10;(dp5729&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5730&#10;(dp5731&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5732&#10;(dp5733&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5734&#10;(dp5735&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5736&#10;(dp5737&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (bad_certificate)'&#10;p5738&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5738&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5739&#10;(dp5740&#10;g11&#10;Nsg12&#10;I151&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5741&#10;(dp5742&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5743&#10;(dp5744&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5745&#10;(dp5746&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5747&#10;(dp5748&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5749&#10;(dp5750&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (bad_certificate)'&#10;p5751&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5751&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5752&#10;(dp5753&#10;g11&#10;Nsg12&#10;I152&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5754&#10;(dp5755&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5756&#10;(dp5757&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5758&#10;(dp5759&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5760&#10;(dp5761&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5762&#10;(dp5763&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (unsupported_certificate)'&#10;p5764&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5764&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5765&#10;(dp5766&#10;g11&#10;Nsg12&#10;I153&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5767&#10;(dp5768&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5769&#10;(dp5770&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5771&#10;(dp5772&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5773&#10;(dp5774&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5775&#10;(dp5776&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (unsupported_certificate)'&#10;p5777&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5777&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5778&#10;(dp5779&#10;g11&#10;Nsg12&#10;I154&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5780&#10;(dp5781&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5782&#10;(dp5783&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5784&#10;(dp5785&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5786&#10;(dp5787&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5788&#10;(dp5789&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (certificate_revoked)'&#10;p5790&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5790&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5791&#10;(dp5792&#10;g11&#10;Nsg12&#10;I155&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5793&#10;(dp5794&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5795&#10;(dp5796&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5797&#10;(dp5798&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5799&#10;(dp5800&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5801&#10;(dp5802&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (certificate_revoked)'&#10;p5803&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5803&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5804&#10;(dp5805&#10;g11&#10;Nsg12&#10;I156&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5806&#10;(dp5807&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5808&#10;(dp5809&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5810&#10;(dp5811&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5812&#10;(dp5813&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5814&#10;(dp5815&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (certificate_expired)'&#10;p5816&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5816&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5817&#10;(dp5818&#10;g11&#10;Nsg12&#10;I157&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5819&#10;(dp5820&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5821&#10;(dp5822&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5823&#10;(dp5824&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5825&#10;(dp5826&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5827&#10;(dp5828&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (certificate_expired)'&#10;p5829&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5829&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5830&#10;(dp5831&#10;g11&#10;Nsg12&#10;I158&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5832&#10;(dp5833&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5834&#10;(dp5835&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5836&#10;(dp5837&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5838&#10;(dp5839&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5840&#10;(dp5841&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (certificate_unknown)'&#10;p5842&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5842&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5843&#10;(dp5844&#10;g11&#10;Nsg12&#10;I159&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5845&#10;(dp5846&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5847&#10;(dp5848&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5849&#10;(dp5850&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5851&#10;(dp5852&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5853&#10;(dp5854&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (certificate_unknown)'&#10;p5855&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5855&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5856&#10;(dp5857&#10;g11&#10;Nsg12&#10;I160&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5858&#10;(dp5859&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5860&#10;(dp5861&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5862&#10;(dp5863&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5864&#10;(dp5865&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5866&#10;(dp5867&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (illegal_parameter)'&#10;p5868&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5868&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5869&#10;(dp5870&#10;g11&#10;Nsg12&#10;I161&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5871&#10;(dp5872&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5873&#10;(dp5874&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5875&#10;(dp5876&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5877&#10;(dp5878&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5879&#10;(dp5880&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (illegal_parameter)'&#10;p5881&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5881&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5882&#10;(dp5883&#10;g11&#10;Nsg12&#10;I162&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5884&#10;(dp5885&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5886&#10;(dp5887&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5888&#10;(dp5889&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5890&#10;(dp5891&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5892&#10;(dp5893&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (unknown_ca)'&#10;p5894&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5894&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5895&#10;(dp5896&#10;g11&#10;Nsg12&#10;I163&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5897&#10;(dp5898&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5899&#10;(dp5900&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5901&#10;(dp5902&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5903&#10;(dp5904&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5905&#10;(dp5906&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (unknown_ca)'&#10;p5907&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5907&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5908&#10;(dp5909&#10;g11&#10;Nsg12&#10;I164&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5910&#10;(dp5911&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5912&#10;(dp5913&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5914&#10;(dp5915&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5916&#10;(dp5917&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5918&#10;(dp5919&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (access_denied)'&#10;p5920&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5920&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5921&#10;(dp5922&#10;g11&#10;Nsg12&#10;I165&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5923&#10;(dp5924&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5925&#10;(dp5926&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5927&#10;(dp5928&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5929&#10;(dp5930&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5931&#10;(dp5932&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (access_denied)'&#10;p5933&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5933&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5934&#10;(dp5935&#10;g11&#10;Nsg12&#10;I166&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5936&#10;(dp5937&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5938&#10;(dp5939&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5940&#10;(dp5941&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5942&#10;(dp5943&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5944&#10;(dp5945&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (decode_error)'&#10;p5946&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5946&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5947&#10;(dp5948&#10;g11&#10;Nsg12&#10;I167&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5949&#10;(dp5950&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5951&#10;(dp5952&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5953&#10;(dp5954&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5955&#10;(dp5956&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5957&#10;(dp5958&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (decode_error)'&#10;p5959&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5959&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5960&#10;(dp5961&#10;g11&#10;Nsg12&#10;I168&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5962&#10;(dp5963&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5964&#10;(dp5965&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5966&#10;(dp5967&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5968&#10;(dp5969&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5970&#10;(dp5971&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (decrypt_error)'&#10;p5972&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5972&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5973&#10;(dp5974&#10;g11&#10;Nsg12&#10;I169&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5975&#10;(dp5976&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5977&#10;(dp5978&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5979&#10;(dp5980&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5981&#10;(dp5982&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5983&#10;(dp5984&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (decrypt_error)'&#10;p5985&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5985&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5986&#10;(dp5987&#10;g11&#10;Nsg12&#10;I170&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp5988&#10;(dp5989&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp5990&#10;(dp5991&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp5992&#10;(dp5993&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp5994&#10;(dp5995&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp5996&#10;(dp5997&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (export_restriction)'&#10;p5998&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g5998&#10;sbag3&#10;(g7&#10;g8&#10;NtRp5999&#10;(dp6000&#10;g11&#10;Nsg12&#10;I171&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6001&#10;(dp6002&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6003&#10;(dp6004&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6005&#10;(dp6006&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6007&#10;(dp6008&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6009&#10;(dp6010&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (export_restriction)'&#10;p6011&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6011&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6012&#10;(dp6013&#10;g11&#10;Nsg12&#10;I172&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6014&#10;(dp6015&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6016&#10;(dp6017&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6018&#10;(dp6019&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6020&#10;(dp6021&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6022&#10;(dp6023&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (protocol_version)'&#10;p6024&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6024&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6025&#10;(dp6026&#10;g11&#10;Nsg12&#10;I173&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6027&#10;(dp6028&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6029&#10;(dp6030&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6031&#10;(dp6032&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6033&#10;(dp6034&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6035&#10;(dp6036&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (protocol_version)'&#10;p6037&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6037&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6038&#10;(dp6039&#10;g11&#10;Nsg12&#10;I174&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6040&#10;(dp6041&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6042&#10;(dp6043&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6044&#10;(dp6045&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6046&#10;(dp6047&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6048&#10;(dp6049&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (insufficient_security)'&#10;p6050&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6050&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6051&#10;(dp6052&#10;g11&#10;Nsg12&#10;I175&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6053&#10;(dp6054&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6055&#10;(dp6056&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6057&#10;(dp6058&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6059&#10;(dp6060&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6061&#10;(dp6062&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (insufficient_security)'&#10;p6063&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6063&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6064&#10;(dp6065&#10;g11&#10;Nsg12&#10;I176&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6066&#10;(dp6067&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6068&#10;(dp6069&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6070&#10;(dp6071&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6072&#10;(dp6073&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6074&#10;(dp6075&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (internal_error)'&#10;p6076&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6076&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6077&#10;(dp6078&#10;g11&#10;Nsg12&#10;I177&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6079&#10;(dp6080&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6081&#10;(dp6082&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6083&#10;(dp6084&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6085&#10;(dp6086&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6087&#10;(dp6088&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (internal_error)'&#10;p6089&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6089&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6090&#10;(dp6091&#10;g11&#10;Nsg12&#10;I178&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6092&#10;(dp6093&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6094&#10;(dp6095&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6096&#10;(dp6097&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6098&#10;(dp6099&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6100&#10;(dp6101&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (user_canceled)'&#10;p6102&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6102&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6103&#10;(dp6104&#10;g11&#10;Nsg12&#10;I179&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6105&#10;(dp6106&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6107&#10;(dp6108&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6109&#10;(dp6110&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6111&#10;(dp6112&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6113&#10;(dp6114&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (user_canceled)'&#10;p6115&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6115&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6116&#10;(dp6117&#10;g11&#10;Nsg12&#10;I180&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6118&#10;(dp6119&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6120&#10;(dp6121&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6122&#10;(dp6123&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6124&#10;(dp6125&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6126&#10;(dp6127&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (no_renegotiation)'&#10;p6128&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6128&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6129&#10;(dp6130&#10;g11&#10;Nsg12&#10;I181&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6131&#10;(dp6132&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6133&#10;(dp6134&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6135&#10;(dp6136&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6137&#10;(dp6138&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6139&#10;(dp6140&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Sent (no_renegotiation)'&#10;p6141&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6141&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6142&#10;(dp6143&#10;g11&#10;Nsg12&#10;I182&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6144&#10;(dp6145&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6146&#10;(dp6147&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6148&#10;(dp6149&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6150&#10;(dp6151&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6152&#10;(dp6153&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Received (undefined error)'&#10;p6154&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6154&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6155&#10;(dp6156&#10;g11&#10;Nsg12&#10;I183&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6157&#10;(dp6158&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6159&#10;(dp6160&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6161&#10;(dp6162&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6163&#10;(dp6164&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6165&#10;(dp6166&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Sent (undefined error)'&#10;p6167&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6167&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6168&#10;(dp6169&#10;g11&#10;Nsg12&#10;I184&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6170&#10;(dp6171&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6172&#10;(dp6173&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6174&#10;(dp6175&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6176&#10;(dp6177&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6178&#10;(dp6179&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Received (no cipher)'&#10;p6180&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6180&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6181&#10;(dp6182&#10;g11&#10;Nsg12&#10;I185&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6183&#10;(dp6184&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6185&#10;(dp6186&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6187&#10;(dp6188&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6189&#10;(dp6190&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6191&#10;(dp6192&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Sent (no cipher)'&#10;p6193&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6193&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6194&#10;(dp6195&#10;g11&#10;Nsg12&#10;I186&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6196&#10;(dp6197&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6198&#10;(dp6199&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6200&#10;(dp6201&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6202&#10;(dp6203&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6204&#10;(dp6205&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Received (no certificate)'&#10;p6206&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6206&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6207&#10;(dp6208&#10;g11&#10;Nsg12&#10;I187&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6209&#10;(dp6210&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6211&#10;(dp6212&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6213&#10;(dp6214&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6215&#10;(dp6216&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6217&#10;(dp6218&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Sent (no certificate)'&#10;p6219&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6219&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6220&#10;(dp6221&#10;g11&#10;Nsg12&#10;I188&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6222&#10;(dp6223&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6224&#10;(dp6225&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6226&#10;(dp6227&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6228&#10;(dp6229&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6230&#10;(dp6231&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Received (bad certificate)'&#10;p6232&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6232&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6233&#10;(dp6234&#10;g11&#10;Nsg12&#10;I189&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6235&#10;(dp6236&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6237&#10;(dp6238&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6239&#10;(dp6240&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6241&#10;(dp6242&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6243&#10;(dp6244&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Sent (bad certificate)'&#10;p6245&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6245&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6246&#10;(dp6247&#10;g11&#10;Nsg12&#10;I190&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6248&#10;(dp6249&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6250&#10;(dp6251&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6252&#10;(dp6253&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6254&#10;(dp6255&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6256&#10;(dp6257&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Received (unsupported certificate)'&#10;p6258&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6258&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6259&#10;(dp6260&#10;g11&#10;Nsg12&#10;I191&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6261&#10;(dp6262&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6263&#10;(dp6264&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6265&#10;(dp6266&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6267&#10;(dp6268&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6269&#10;(dp6270&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Sent (unsupported certificate)'&#10;p6271&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6271&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6272&#10;(dp6273&#10;g11&#10;Nsg12&#10;I192&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6274&#10;(dp6275&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6276&#10;(dp6277&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6278&#10;(dp6279&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6280&#10;(dp6281&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6282&#10;(dp6283&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Received'&#10;p6284&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6284&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6285&#10;(dp6286&#10;g11&#10;Nsg12&#10;I193&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6287&#10;(dp6288&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6289&#10;(dp6290&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6291&#10;(dp6292&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6293&#10;(dp6294&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6295&#10;(dp6296&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Errors Sent'&#10;p6297&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6297&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6298&#10;(dp6299&#10;g11&#10;Nsg12&#10;I194&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6300&#10;(dp6301&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6302&#10;(dp6303&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6304&#10;(dp6305&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6306&#10;(dp6307&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6308&#10;(dp6309&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Client Hello Sent'&#10;p6310&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6310&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6311&#10;(dp6312&#10;g11&#10;Nsg12&#10;I195&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6313&#10;(dp6314&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6315&#10;(dp6316&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6317&#10;(dp6318&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6319&#10;(dp6320&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6321&#10;(dp6322&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Client Hello Received'&#10;p6323&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6323&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6324&#10;(dp6325&#10;g11&#10;Nsg12&#10;I196&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6326&#10;(dp6327&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6328&#10;(dp6329&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6330&#10;(dp6331&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6332&#10;(dp6333&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6334&#10;(dp6335&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Server Hello Sent'&#10;p6336&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6336&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6337&#10;(dp6338&#10;g11&#10;Nsg12&#10;I197&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6339&#10;(dp6340&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6341&#10;(dp6342&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6343&#10;(dp6344&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6345&#10;(dp6346&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6347&#10;(dp6348&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Server Hello Received'&#10;p6349&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6349&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6350&#10;(dp6351&#10;g11&#10;Nsg12&#10;I198&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6352&#10;(dp6353&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6354&#10;(dp6355&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6356&#10;(dp6357&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6358&#10;(dp6359&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6360&#10;(dp6361&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Hello Requests Sent'&#10;p6362&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6362&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6363&#10;(dp6364&#10;g11&#10;Nsg12&#10;I199&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6365&#10;(dp6366&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6367&#10;(dp6368&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6369&#10;(dp6370&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6371&#10;(dp6372&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6373&#10;(dp6374&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'Hello Requests Received'&#10;p6375&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6375&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6376&#10;(dp6377&#10;g11&#10;Nsg12&#10;I200&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6378&#10;(dp6379&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6380&#10;(dp6381&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6382&#10;(dp6383&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6384&#10;(dp6385&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6386&#10;(dp6387&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Session Reuse Success'&#10;p6388&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6388&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6389&#10;(dp6390&#10;g11&#10;Nsg12&#10;I201&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6391&#10;(dp6392&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6393&#10;(dp6394&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6395&#10;(dp6396&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6397&#10;(dp6398&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6399&#10;(dp6400&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Session Reuse Failed'&#10;p6401&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6401&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6402&#10;(dp6403&#10;g11&#10;Nsg12&#10;I202&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6404&#10;(dp6405&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6406&#10;(dp6407&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6408&#10;(dp6409&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6410&#10;(dp6411&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6412&#10;(dp6413&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Concurrent Sessions'&#10;p6414&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6414&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6415&#10;(dp6416&#10;g11&#10;Nsg12&#10;I203&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6417&#10;(dp6418&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6419&#10;(dp6420&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6421&#10;(dp6422&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6423&#10;(dp6424&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6425&#10;(dp6426&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Bytes Sent'&#10;p6427&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6427&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6428&#10;(dp6429&#10;g11&#10;Nsg12&#10;I204&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6430&#10;(dp6431&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6432&#10;(dp6433&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6434&#10;(dp6435&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6436&#10;(dp6437&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6438&#10;(dp6439&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Bytes Received'&#10;p6440&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6440&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6441&#10;(dp6442&#10;g11&#10;Nsg12&#10;I205&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6443&#10;(dp6444&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6445&#10;(dp6446&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6447&#10;(dp6448&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6449&#10;(dp6450&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6451&#10;(dp6452&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Throughput Bytes'&#10;p6453&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6453&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6454&#10;(dp6455&#10;g11&#10;Nsg12&#10;I206&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6456&#10;(dp6457&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6458&#10;(dp6459&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6460&#10;(dp6461&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6462&#10;(dp6463&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6464&#10;(dp6465&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Application Data Bytes'&#10;p6466&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6466&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6467&#10;(dp6468&#10;g11&#10;Nsg12&#10;I207&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6469&#10;(dp6470&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6471&#10;(dp6472&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6473&#10;(dp6474&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6475&#10;(dp6476&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6477&#10;(dp6478&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Certificate Validation Failure'&#10;p6479&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6479&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6480&#10;(dp6481&#10;g11&#10;Nsg12&#10;I208&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6482&#10;(dp6483&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6484&#10;(dp6485&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6486&#10;(dp6487&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6488&#10;(dp6489&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6490&#10;(dp6491&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Certificate Self Signed'&#10;p6492&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6492&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6493&#10;(dp6494&#10;g11&#10;Nsg12&#10;I209&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6495&#10;(dp6496&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6497&#10;(dp6498&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6499&#10;(dp6500&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6501&#10;(dp6502&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6503&#10;(dp6504&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Certificate CA Signed'&#10;p6505&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6505&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6506&#10;(dp6507&#10;g11&#10;Nsg12&#10;I210&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6508&#10;(dp6509&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6510&#10;(dp6511&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6512&#10;(dp6513&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6514&#10;(dp6515&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6516&#10;(dp6517&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Alerts Received (unrecognized name)'&#10;p6518&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6518&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6519&#10;(dp6520&#10;g11&#10;Nsg12&#10;I211&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6521&#10;(dp6522&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6523&#10;(dp6524&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6525&#10;(dp6526&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6527&#10;(dp6528&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6529&#10;(dp6530&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL SNI extension sent successfully'&#10;p6531&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6531&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6532&#10;(dp6533&#10;g11&#10;Nsg12&#10;I212&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6534&#10;(dp6535&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6536&#10;(dp6537&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6538&#10;(dp6539&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6540&#10;(dp6541&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6542&#10;(dp6543&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL SNI extension mismatch'&#10;p6544&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6544&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6545&#10;(dp6546&#10;g11&#10;Nsg12&#10;I213&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6547&#10;(dp6548&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6549&#10;(dp6550&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6551&#10;(dp6552&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6553&#10;(dp6554&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6555&#10;(dp6556&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL session ticket reuse success'&#10;p6557&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6557&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6558&#10;(dp6559&#10;g11&#10;Nsg12&#10;I214&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6560&#10;(dp6561&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6562&#10;(dp6563&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6564&#10;(dp6565&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6566&#10;(dp6567&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6568&#10;(dp6569&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL session ticket reuse failure'&#10;p6570&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6570&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6571&#10;(dp6572&#10;g11&#10;Nsg12&#10;I215&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6573&#10;(dp6574&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6575&#10;(dp6576&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6577&#10;(dp6578&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6579&#10;(dp6580&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6581&#10;(dp6582&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Negotiation Finished Successfully'&#10;p6583&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6583&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6584&#10;(dp6585&#10;g11&#10;Nsg12&#10;I216&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6586&#10;(dp6587&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6588&#10;(dp6589&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6590&#10;(dp6591&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6592&#10;(dp6593&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6594&#10;(dp6595&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'SSL Negotiation Finished Successfuly'&#10;p6596&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6596&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6597&#10;(dp6598&#10;g11&#10;Nsg12&#10;I217&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6599&#10;(dp6600&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6601&#10;(dp6602&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6603&#10;(dp6604&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6605&#10;(dp6606&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6607&#10;(dp6608&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP SYN Sent'&#10;p6609&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6609&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6610&#10;(dp6611&#10;g11&#10;Nsg12&#10;I218&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6612&#10;(dp6613&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6614&#10;(dp6615&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6616&#10;(dp6617&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6618&#10;(dp6619&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6620&#10;(dp6621&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP SYN_SYN-ACK Received'&#10;p6622&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6622&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6623&#10;(dp6624&#10;g11&#10;Nsg12&#10;I219&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6625&#10;(dp6626&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6627&#10;(dp6628&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6629&#10;(dp6630&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6631&#10;(dp6632&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6633&#10;(dp6634&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP SYN Failed'&#10;p6635&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6635&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6636&#10;(dp6637&#10;g11&#10;Nsg12&#10;I220&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6638&#10;(dp6639&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6640&#10;(dp6641&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6642&#10;(dp6643&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6644&#10;(dp6645&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6646&#10;(dp6647&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP SYN-ACK Sent'&#10;p6648&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6648&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6649&#10;(dp6650&#10;g11&#10;Nsg12&#10;I221&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6651&#10;(dp6652&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6653&#10;(dp6654&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6655&#10;(dp6656&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6657&#10;(dp6658&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6659&#10;(dp6660&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connection Requests Failed'&#10;p6661&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6661&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6662&#10;(dp6663&#10;g11&#10;Nsg12&#10;I222&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6664&#10;(dp6665&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6666&#10;(dp6667&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6668&#10;(dp6669&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6670&#10;(dp6671&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6672&#10;(dp6673&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections Established'&#10;p6674&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6674&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6675&#10;(dp6676&#10;g11&#10;Nsg12&#10;I223&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6677&#10;(dp6678&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6679&#10;(dp6680&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6681&#10;(dp6682&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6683&#10;(dp6684&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6685&#10;(dp6686&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP FIN Sent'&#10;p6687&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6687&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6688&#10;(dp6689&#10;g11&#10;Nsg12&#10;I224&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6690&#10;(dp6691&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6692&#10;(dp6693&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6694&#10;(dp6695&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6696&#10;(dp6697&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6698&#10;(dp6699&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP FIN Received'&#10;p6700&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6700&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6701&#10;(dp6702&#10;g11&#10;Nsg12&#10;I225&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6703&#10;(dp6704&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6705&#10;(dp6706&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6707&#10;(dp6708&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6709&#10;(dp6710&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6711&#10;(dp6712&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP FIN-ACK Sent'&#10;p6713&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6713&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6714&#10;(dp6715&#10;g11&#10;Nsg12&#10;I226&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6716&#10;(dp6717&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6718&#10;(dp6719&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6720&#10;(dp6721&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6722&#10;(dp6723&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6724&#10;(dp6725&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP FIN-ACK Received'&#10;p6726&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6726&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6727&#10;(dp6728&#10;g11&#10;Nsg12&#10;I227&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6729&#10;(dp6730&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6731&#10;(dp6732&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6733&#10;(dp6734&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6735&#10;(dp6736&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6737&#10;(dp6738&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Resets Sent'&#10;p6739&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6739&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6740&#10;(dp6741&#10;g11&#10;Nsg12&#10;I228&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6742&#10;(dp6743&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6744&#10;(dp6745&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6746&#10;(dp6747&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6748&#10;(dp6749&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6750&#10;(dp6751&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Resets Received'&#10;p6752&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6752&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6753&#10;(dp6754&#10;g11&#10;Nsg12&#10;I229&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6755&#10;(dp6756&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6757&#10;(dp6758&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6759&#10;(dp6760&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6761&#10;(dp6762&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6763&#10;(dp6764&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Retries'&#10;p6765&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6765&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6766&#10;(dp6767&#10;g11&#10;Nsg12&#10;I230&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6768&#10;(dp6769&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6770&#10;(dp6771&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6772&#10;(dp6773&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6774&#10;(dp6775&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6776&#10;(dp6777&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Timeouts'&#10;p6778&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6778&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6779&#10;(dp6780&#10;g11&#10;Nsg12&#10;I231&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6781&#10;(dp6782&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6783&#10;(dp6784&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6785&#10;(dp6786&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6787&#10;(dp6788&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6789&#10;(dp6790&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Accept Queue Entries'&#10;p6791&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6791&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6792&#10;(dp6793&#10;g11&#10;Nsg12&#10;I232&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6794&#10;(dp6795&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6796&#10;(dp6797&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6798&#10;(dp6799&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6800&#10;(dp6801&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6802&#10;(dp6803&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Listen Queue Drops'&#10;p6804&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6804&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6805&#10;(dp6806&#10;g11&#10;Nsg12&#10;I233&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6807&#10;(dp6808&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6809&#10;(dp6810&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6811&#10;(dp6812&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6813&#10;(dp6814&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6815&#10;(dp6816&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in ESTABLISHED State'&#10;p6817&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6817&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6818&#10;(dp6819&#10;g11&#10;Nsg12&#10;I234&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6820&#10;(dp6821&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6822&#10;(dp6823&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6824&#10;(dp6825&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6826&#10;(dp6827&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6828&#10;(dp6829&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in SYN-SENT State'&#10;p6830&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6830&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6831&#10;(dp6832&#10;g11&#10;Nsg12&#10;I235&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6833&#10;(dp6834&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6835&#10;(dp6836&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6837&#10;(dp6838&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6839&#10;(dp6840&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6841&#10;(dp6842&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in SYN-RECEIVED State'&#10;p6843&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6843&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6844&#10;(dp6845&#10;g11&#10;Nsg12&#10;I236&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6846&#10;(dp6847&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6848&#10;(dp6849&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6850&#10;(dp6851&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6852&#10;(dp6853&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6854&#10;(dp6855&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in FIN-WAIT-1 State'&#10;p6856&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6856&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6857&#10;(dp6858&#10;g11&#10;Nsg12&#10;I237&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6859&#10;(dp6860&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6861&#10;(dp6862&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6863&#10;(dp6864&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6865&#10;(dp6866&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6867&#10;(dp6868&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in FIN-WAIT-2 State'&#10;p6869&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6869&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6870&#10;(dp6871&#10;g11&#10;Nsg12&#10;I238&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6872&#10;(dp6873&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6874&#10;(dp6875&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6876&#10;(dp6877&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6878&#10;(dp6879&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6880&#10;(dp6881&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in TIME-WAIT State'&#10;p6882&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6882&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6883&#10;(dp6884&#10;g11&#10;Nsg12&#10;I239&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6885&#10;(dp6886&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6887&#10;(dp6888&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6889&#10;(dp6890&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6891&#10;(dp6892&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6893&#10;(dp6894&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in CLOSE STATE'&#10;p6895&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6895&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6896&#10;(dp6897&#10;g11&#10;Nsg12&#10;I240&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6898&#10;(dp6899&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6900&#10;(dp6901&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6902&#10;(dp6903&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6904&#10;(dp6905&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6906&#10;(dp6907&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in CLOSE-WAIT State'&#10;p6908&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6908&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6909&#10;(dp6910&#10;g11&#10;Nsg12&#10;I241&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6911&#10;(dp6912&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6913&#10;(dp6914&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6915&#10;(dp6916&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6917&#10;(dp6918&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6919&#10;(dp6920&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in LAST-ACK State'&#10;p6921&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6921&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6922&#10;(dp6923&#10;g11&#10;Nsg12&#10;I242&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6924&#10;(dp6925&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6926&#10;(dp6927&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6928&#10;(dp6929&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6930&#10;(dp6931&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6932&#10;(dp6933&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in LISTENING State'&#10;p6934&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6934&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6935&#10;(dp6936&#10;g11&#10;Nsg12&#10;I243&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6937&#10;(dp6938&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6939&#10;(dp6940&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6941&#10;(dp6942&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6943&#10;(dp6944&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6945&#10;(dp6946&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Connections in CLOSING State'&#10;p6947&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6947&#10;sbag3&#10;(g7&#10;g8&#10;NtRp6948&#10;(dp6949&#10;g11&#10;Nsg12&#10;I244&#10;sg13&#10;I01&#10;sg14&#10;g3&#10;(g15&#10;g8&#10;NtRp6950&#10;(dp6951&#10;g18&#10;g3&#10;(g19&#10;g5&#10;(ltRp6952&#10;(dp6953&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg23&#10;g3&#10;(g24&#10;g5&#10;(ltRp6954&#10;(dp6955&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg11&#10;Nsg12&#10;I-1&#10;sg27&#10;g3&#10;(g28&#10;g5&#10;(ltRp6956&#10;(dp6957&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsg22&#10;I00&#10;sg31&#10;g3&#10;(g32&#10;g5&#10;(ltRp6958&#10;(dp6959&#10;g12&#10;I-1&#10;sg22&#10;I00&#10;sg11&#10;Nsbsbsg35&#10;S'TCP Internally Aborted Connections'&#10;p6960&#10;sg22&#10;I00&#10;sg37&#10;g38&#10;sg39&#10;g6960&#10;sbatRp6961&#10;(dp6962&#10;g12&#10;I244&#10;sg22&#10;I00&#10;sg11&#10;Nsbs.</svRestConfiguration>
</statManagerOptions>
<currentUniqueIDForAgent type="int">2</currentUniqueIDForAgent>
diff --git a/samples/vnf_samples/vnf_descriptors/agnostic_vnf.yaml b/samples/vnf_samples/vnf_descriptors/agnostic_vnf.yaml
new file mode 100644
index 000000000..14a3910e3
--- /dev/null
+++ b/samples/vnf_samples/vnf_descriptors/agnostic_vnf.yaml
@@ -0,0 +1,44 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+vnfd:vnfd-catalog:
+ vnfd:
+ - id: AgnosticVnf
+ name: AgnosticVnf
+ short-name: AgnosticVnf
+ description: 'VNFD for AgnosticVNF which wraps around any unsupported VNF
+ and allows for blackbox testing of the VNF.'
+ mgmt-interface:
+ vdu-id: AgnosticVnf-baremetal
+ {% if user is defined %}
+ user: '{{user}}' # Value filled by vnfdgen
+ {% endif %}
+ {% if password is defined %}
+ password: '{{password}}' # Value filled by vnfdgen
+ {% endif %}
+ {% if ip is defined %}
+ ip: '{{ip}}' # Value filled by vnfdgen
+ {% endif %}
+ {% if key_filename is defined %}
+ key_filename: '{{key_filename}}' # Value filled by vnfdgen
+ {% endif %}
+ vdu:
+ - id: AgnosticVnf-baremetal
+ name: AgnosticVnf-baremetal
+ description: Agnostic vnf
+ routing_table: {{ routing_table }}
+ nd_route_tbl: {{ nd_route_tbl }}
+ benchmark:
+ kpi:
+ [] \ No newline at end of file
diff --git a/samples/vnf_samples/vnf_descriptors/tg_landslide_tpl.yaml b/samples/vnf_samples/vnf_descriptors/tg_landslide_tpl.yaml
new file mode 100644
index 000000000..48963f0a9
--- /dev/null
+++ b/samples/vnf_samples/vnf_descriptors/tg_landslide_tpl.yaml
@@ -0,0 +1,38 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+vnfd:vnfd-catalog:
+ vnfd:
+ - id: LandslideTrafficGen # NSB python class mapping
+ name: LandslideTrafficGen
+ short-name: landslide
+ description: Spirent Landslide traffic generator
+ mgmt-interface:
+ vdu-id: landslide-tas
+ super-user: '{{tas_manager.super_user}}'
+ super-user-password: '{{tas_manager.super_user_password}}'
+ user: '{{tas_manager.test_user}}'
+ password: '{{tas_manager.test_user_password}}'
+ cfguser_password: '{{tas_manager.cfguser_password}}'
+ ip: '{{tas_manager.ip}}'
+ proto: '{{tas_manager.proto}}' # protocol used for REST API- http
+ license: '{{tas_manager.license}}' # Landslide license
+ config: {{config}}
+ vdu:
+ - id: abclient-baremetal
+ name: abclient-baremetal
+ description: AB client interface details
+ benchmark:
+ kpi: []
+
diff --git a/samples/vnf_samples/vnf_descriptors/vepc_vnf.yaml b/samples/vnf_samples/vnf_descriptors/vepc_vnf.yaml
new file mode 100644
index 000000000..73d3468bf
--- /dev/null
+++ b/samples/vnf_samples/vnf_descriptors/vepc_vnf.yaml
@@ -0,0 +1,38 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+vnfd:vnfd-catalog:
+ vnfd:
+ - id: EPCVnf # NSB python class mapping
+ name: EPCVnf
+ short-name: EPCVnf
+ description: EPCVnf
+ mgmt-interface:
+ vdu-id: vepcvnf-baremetal
+ {% if user is defined %}
+ user: '{{user}}' # Value filled by vnfdgen
+ {% endif %}
+ {% if password is defined %}
+ password: '{{password}}' # Value filled by vnfdgen
+ {% endif %}
+ {% if ip is defined %}
+ ip: '{{ip}}' # Value filled by vnfdgen
+ {% endif %}
+ vdu:
+ - id: vepcvnf-baremetal
+ name: vepc-vnf-baremetal
+ description: vEPCVnf workload
+ external-interface: []
+ benchmark:
+ kpi: []
diff --git a/tests/opnfv/test_cases/opnfv_yardstick_tc074.yaml b/tests/opnfv/test_cases/opnfv_yardstick_tc074.yaml
index d08dbaa6e..e4f715c84 100644
--- a/tests/opnfv/test_cases/opnfv_yardstick_tc074.yaml
+++ b/tests/opnfv/test_cases/opnfv_yardstick_tc074.yaml
@@ -22,6 +22,11 @@ description: >
{% set queue_depths = queue_depths or "4" %}
{% set steady_state_samples = steady_state_samples or 10 %}
{% set volume_size = volume_size or 4 %}
+{% set volume_count = volume_count or 1 %}
+{% set volume_type = volume_type or "" %}
+{% set availability_zone = availability_zone or "nova" %}
+{% set subnet_CIDR = subnet_CIDR or "172.16.0.0/16" %}
+{% set stack_name = stack_name or "StorperfAgentGroup" %}
scenarios:
-
type: StorPerf
@@ -39,6 +44,11 @@ scenarios:
workload: {{workload}}
workloads: {{workloads}}
steady_state_samples: {{steady_state_samples}}
+ volume_count: {{volume_count}}
+ volume_type: {{volume_type}}
+ availability_zone: {{availability_zone}}
+ subnet_CIDR: {{subnet_CIDR}}
+ stack_name: {{stack_name}}
runner:
type: Iteration
diff --git a/tox.ini b/tox.ini
index 313f1eca2..016228458 100644
--- a/tox.ini
+++ b/tox.ini
@@ -44,6 +44,17 @@ commands =
basepython = python3
commands = {[testenv:functional]commands}
+[testenv:docs]
+deps = -rdocs/requirements.txt
+commands =
+ sphinx-build -b html -n -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/html
+ echo "Generated docs available in {toxinidir}/docs/_build/html"
+whitelist_externals = echo
+
+[testenv:docs-linkcheck]
+deps = -rdocs/requirements.txt
+commands = sphinx-build -b linkcheck -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/linkcheck
+
[testenv:os-requirements]
commands =
python {toxinidir}/tools/os-requirements-check.py {envdir}
diff --git a/yardstick/benchmark/contexts/standalone/model.py b/yardstick/benchmark/contexts/standalone/model.py
index fa78fc1eb..1004c62d1 100644
--- a/yardstick/benchmark/contexts/standalone/model.py
+++ b/yardstick/benchmark/contexts/standalone/model.py
@@ -564,7 +564,7 @@ class StandaloneContextHelper(object):
key_filename = ''.join(
[constants.YARDSTICK_ROOT_PATH,
'yardstick/resources/files/yardstick_key-',
- id_name])
+ id_name, '-', vm_name])
ssh.SSH.gen_keys(key_filename)
node['key_filename'] = key_filename
# Update image with public key
diff --git a/yardstick/benchmark/contexts/standalone/ovs_dpdk.py b/yardstick/benchmark/contexts/standalone/ovs_dpdk.py
index 73311f0c2..a1af3c72b 100644
--- a/yardstick/benchmark/contexts/standalone/ovs_dpdk.py
+++ b/yardstick/benchmark/contexts/standalone/ovs_dpdk.py
@@ -46,7 +46,8 @@ class OvsDpdkContext(base.Context):
'2.7.0': '16.11.1',
'2.7.1': '16.11.2',
'2.7.2': '16.11.3',
- '2.8.0': '17.05.2'
+ '2.8.0': '17.05.2',
+ '2.8.1': '17.05.2'
}
DEFAULT_OVS = '2.6.0'
@@ -145,8 +146,8 @@ class OvsDpdkContext(base.Context):
cmd_list = [
"mkdir -p /usr/local/var/run/openvswitch",
"mkdir -p {}".format(os.path.dirname(log_path)),
- "ovsdb-server --remote=punix:/{0}/{1} --pidfile --detach".format(vpath,
- ovs_sock_path),
+ ("ovsdb-server --remote=punix:/{0}/{1} --remote=ptcp:6640"
+ " --pidfile --detach").format(vpath, ovs_sock_path),
ovs_other_config.format("--no-wait ", "dpdk-init=true"),
ovs_other_config.format("--no-wait ", "dpdk-socket-mem='%s,%s'" % (socket0, socket1)),
lcore_mask,
@@ -166,8 +167,7 @@ class OvsDpdkContext(base.Context):
version = self.ovs_properties.get('version', {})
ovs_ver = [int(x) for x in version.get('ovs', self.DEFAULT_OVS).split('.')]
ovs_add_port = ('ovs-vsctl add-port {br} {port} -- '
- 'set Interface {port} type={type_}{dpdk_args}')
- ovs_add_queue = 'ovs-vsctl set Interface {port} options:n_rxq={queue}'
+ 'set Interface {port} type={type_}{dpdk_args}{dpdk_rxq}')
chmod_vpath = 'chmod 0777 {0}/var/run/openvswitch/dpdkvhostuser*'
cmd_list = [
@@ -176,6 +176,8 @@ class OvsDpdkContext(base.Context):
'ovs-vsctl add-br {0} -- set bridge {0} datapath_type=netdev'.
format(MAIN_BRIDGE)
]
+ dpdk_rxq = " options:n_rxq={queue}".format(
+ queue=self.ovs_properties.get("queues", 1))
ordered_network = collections.OrderedDict(self.networks)
for index, vnf in enumerate(ordered_network.values()):
@@ -183,10 +185,7 @@ class OvsDpdkContext(base.Context):
dpdk_args = " options:dpdk-devargs=%s" % vnf.get("phy_port")
dpdk_list.append(ovs_add_port.format(
br=MAIN_BRIDGE, port='dpdk%s' % vnf.get("port_num", 0),
- type_='dpdk', dpdk_args=dpdk_args))
- dpdk_list.append(ovs_add_queue.format(
- port='dpdk%s' % vnf.get("port_num", 0),
- queue=self.ovs_properties.get("queues", 1)))
+ type_='dpdk', dpdk_args=dpdk_args, dpdk_rxq=dpdk_rxq))
# Sorting the array to make sure we execute dpdk0... in the order
list.sort(dpdk_list)
@@ -196,7 +195,7 @@ class OvsDpdkContext(base.Context):
for index, _ in enumerate(ordered_network):
cmd_list.append(ovs_add_port.format(
br=MAIN_BRIDGE, port='dpdkvhostuser%s' % index,
- type_='dpdkvhostuser', dpdk_args=""))
+ type_='dpdkvhostuser', dpdk_args="", dpdk_rxq=""))
ovs_flow = ("ovs-ofctl add-flow {0} in_port=%s,action=output:%s".
format(MAIN_BRIDGE))
diff --git a/yardstick/benchmark/runners/duration.py b/yardstick/benchmark/runners/duration.py
index 14fd8bb47..55c3690fd 100644
--- a/yardstick/benchmark/runners/duration.py
+++ b/yardstick/benchmark/runners/duration.py
@@ -106,7 +106,8 @@ def _worker_process(queue, cls, method_name, scenario_cfg,
sequence += 1
- if (errors and sla_action is None) or time.time() > timeout or aborted.is_set():
+ if ((errors and sla_action is None) or time.time() > timeout
+ or aborted.is_set() or benchmark.is_ended()):
LOG.info("Worker END")
break
diff --git a/yardstick/benchmark/runners/proxduration.py b/yardstick/benchmark/runners/proxduration.py
index 61a468fd3..e217904b9 100644
--- a/yardstick/benchmark/runners/proxduration.py
+++ b/yardstick/benchmark/runners/proxduration.py
@@ -112,7 +112,8 @@ def _worker_process(queue, cls, method_name, scenario_cfg,
sequence += 1
- if (errors and sla_action is None) or time.time() > timeout or aborted.is_set():
+ if ((errors and sla_action is None) or time.time() > timeout
+ or aborted.is_set() or benchmark.is_ended()):
LOG.info("Worker END")
break
diff --git a/yardstick/benchmark/scenarios/base.py b/yardstick/benchmark/scenarios/base.py
index 90a87ac29..1737bb942 100644
--- a/yardstick/benchmark/scenarios/base.py
+++ b/yardstick/benchmark/scenarios/base.py
@@ -50,6 +50,9 @@ class Scenario(object):
def run(self, *args):
"""Entry point for scenario classes, called from runner worker"""
+ def is_ended(self):
+ return False
+
def teardown(self):
"""Default teardown implementation for Scenario classes"""
pass
diff --git a/yardstick/benchmark/scenarios/networking/vnf_generic.py b/yardstick/benchmark/scenarios/networking/vnf_generic.py
index 0a06178af..d8f062522 100644
--- a/yardstick/benchmark/scenarios/networking/vnf_generic.py
+++ b/yardstick/benchmark/scenarios/networking/vnf_generic.py
@@ -63,6 +63,9 @@ class NetworkServiceTestCase(scenario_base.Scenario):
self.bin_path = get_nsb_option('bin_path', '')
self._mq_ids = []
+ def is_ended(self):
+ return self.traffic_profile is not None and self.traffic_profile.is_ended()
+
def _get_ip_flow_range(self, ip_start_range):
"""Retrieve a CIDR first and last viable IPs
diff --git a/yardstick/benchmark/scenarios/parser/parser.py b/yardstick/benchmark/scenarios/parser/parser.py
index 5b2b49c2c..a0f8e9e72 100644
--- a/yardstick/benchmark/scenarios/parser/parser.py
+++ b/yardstick/benchmark/scenarios/parser/parser.py
@@ -20,7 +20,7 @@ class Parser(base.Scenario):
"""running Parser Yang-to-Tosca module as a tool
validating output against expected outcome
- more info https://wiki.opnfv.org/parser
+ more info https://wiki.opnfv.org/display/parser
"""
__scenario_type__ = "Parser"
diff --git a/yardstick/benchmark/scenarios/storage/storperf.py b/yardstick/benchmark/scenarios/storage/storperf.py
index 8093cd2d2..e4c72dc8f 100644
--- a/yardstick/benchmark/scenarios/storage/storperf.py
+++ b/yardstick/benchmark/scenarios/storage/storperf.py
@@ -87,7 +87,9 @@ class StorPerf(base.Scenario):
env_args = {}
env_args_payload_list = ["agent_count", "agent_flavor",
"public_network", "agent_image",
- "volume_size"]
+ "volume_size", "volume_type",
+ "volume_count", "availability_zone",
+ "stack_name", "subnet_CIDR"]
for env_argument in env_args_payload_list:
try:
@@ -213,11 +215,20 @@ class StorPerf(base.Scenario):
# else:
# time.sleep(int(esti_time)/2)
- result_res = requests.get('http://%s:5000/api/v1.0/jobs?id=%s' %
- (self.target, job_id))
+ result_res = requests.get('http://%s:5000/api/v1.0/jobs?type='
+ 'metadata&id=%s' % (self.target, job_id))
+ result_res_content = jsonutils.loads(result_res.content)
+ if 'report' in result_res_content and \
+ 'steady_state' in result_res_content['report']['details']:
+ res = result_res_content['report']['details']['steady_state']
+ steady_state = res.values()[0]
+ LOG.info("Job %s completed with steady state %s",
+ job_id, steady_state)
+
+ result_res = requests.get('http://%s:5000/api/v1.0/jobs?'
+ 'type=status&id=%s' % (self.target, job_id))
result_res_content = jsonutils.loads(
result_res.content)
-
result.update(result_res_content)
def initialize_disks(self):
diff --git a/yardstick/common/exceptions.py b/yardstick/common/exceptions.py
index 10c1f3f27..5e0df973a 100644
--- a/yardstick/common/exceptions.py
+++ b/yardstick/common/exceptions.py
@@ -83,6 +83,10 @@ class InvalidType(YardstickException):
message = 'Type "%(type_to_convert)s" is not valid'
+class InvalidRxfFile(YardstickException):
+ message = 'Loaded rxf file has unexpected format'
+
+
class InfluxDBConfigurationMissing(YardstickException):
message = ('InfluxDB configuration is not available. Add "influxdb" as '
'a dispatcher and the configuration section')
@@ -420,3 +424,15 @@ class InvalidMacAddress(YardstickException):
class ValueCheckError(YardstickException):
message = 'Constraint "%(value1)s %(operator)s %(value2)s" does not hold'
+
+
+class RestApiError(RuntimeError):
+ def __init__(self, message):
+ self._message = message
+ super(RestApiError, self).__init__(message)
+
+
+class LandslideTclException(RuntimeError):
+ def __init__(self, message):
+ self._message = message
+ super(LandslideTclException, self).__init__(message)
diff --git a/yardstick/network_services/libs/ixia_libs/ixnet/ixnet_api.py b/yardstick/network_services/libs/ixia_libs/ixnet/ixnet_api.py
index 7548b338a..556682b29 100644
--- a/yardstick/network_services/libs/ixia_libs/ixnet/ixnet_api.py
+++ b/yardstick/network_services/libs/ixia_libs/ixnet/ixnet_api.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2016-2017 Intel Corporation
+# Copyright (c) 2016-2018 Intel Corporation
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -41,15 +41,29 @@ C_VLAN = 1
ETHER_TYPE_802_1ad = '0x88a8'
-IP_VERSION_4_MASK = 24
-IP_VERSION_6_MASK = 64
-
TRAFFIC_STATUS_STARTED = 'started'
TRAFFIC_STATUS_STOPPED = 'stopped'
+PROTOCOL_STATUS_UP = 'up'
+PROTOCOL_STATUS_DOWN = ['down', 'notStarted']
+
SUPPORTED_PROTO = [PROTO_UDP]
+class Vlan(object):
+ def __init__(self,
+ vlan_id, vlan_id_step=None, vlan_id_direction='increment',
+ prio=None, prio_step=None, prio_direction='increment',
+ tp_id=None):
+ self.vlan_id = vlan_id
+ self.vlan_id_step = vlan_id_step
+ self.vlan_id_direction = vlan_id_direction
+ self.prio = prio
+ self.prio_step = prio_step
+ self.prio_direction = prio_direction
+ self.tp_id = tp_id
+
+
# NOTE(ralonsoh): this pragma will be removed in the last patch of this series
class IxNextgen(object): # pragma: no cover
@@ -107,6 +121,11 @@ class IxNextgen(object): # pragma: no cover
return self._ixnet
raise exceptions.IxNetworkClientNotConnected()
+ def get_vports(self):
+ """Return the list of assigned ports (vport objects)"""
+ vports = self.ixnet.getList(self.ixnet.getRoot(), 'vport')
+ return vports
+
def _get_config_element_by_flow_group_name(self, flow_group_name):
"""Get a config element using the flow group name
@@ -161,6 +180,15 @@ class IxNextgen(object): # pragma: no cover
return self.ixnet.getAttribute(self.ixnet.getRoot() + 'traffic',
'-state')
+ def _get_protocol_status(self, proto):
+ """Get protocol status
+
+ :param proto: IxNet protocol str representation, e.g.:
+ '::ixNet::OBJ-/topology:2/deviceGroup:1/ethernet:1/ipv4:L14'
+ :return: (str) protocol status: 'up', 'down' or 'notStarted'
+ """
+ return self.ixnet.getAttribute(proto, '-sessionStatus')[0]
+
def is_traffic_running(self):
"""Returns true if traffic state == TRAFFIC_STATUS_STARTED"""
return self._get_traffic_state() == TRAFFIC_STATUS_STARTED
@@ -169,6 +197,28 @@ class IxNextgen(object): # pragma: no cover
"""Returns true if traffic state == TRAFFIC_STATUS_STOPPED"""
return self._get_traffic_state() == TRAFFIC_STATUS_STOPPED
+ def is_protocols_running(self, protocols):
+ """Returns true if all protocols statuses are PROTOCOL_STATUS_UP
+
+ :param protocols: list of protocols str representations, e.g.:
+ ['::ixNet::OBJ-/topology:2/deviceGroup:1/ethernet:1/ipv4:L14', ...]
+ :return: (bool) True if all protocols status is 'up', False if any
+ protocol status is 'down' or 'notStarted'
+ """
+ return all(self._get_protocol_status(proto) == PROTOCOL_STATUS_UP
+ for proto in protocols)
+
+ def is_protocols_stopped(self, protocols):
+ """Returns true if all protocols statuses are in PROTOCOL_STATUS_DOWN
+
+ :param protocols: list of protocols str representations, e.g.:
+ ['::ixNet::OBJ-/topology:2/deviceGroup:1/ethernet:1/ipv4:L14', ...]
+ :return: (bool) True if all protocols status is 'down' or 'notStarted',
+ False if any protocol status is 'up'
+ """
+ return all(self._get_protocol_status(proto) in PROTOCOL_STATUS_DOWN
+ for proto in protocols)
+
@staticmethod
def _parse_framesize(framesize):
"""Parse "framesize" config param. to return a list of weighted pairs
@@ -225,15 +275,20 @@ class IxNextgen(object): # pragma: no cover
zip(self._cfg['cards'], self._cfg['ports'])]
log.info('Create and assign vports: %s', ports)
- for port in ports:
- vport = self.ixnet.add(self.ixnet.getRoot(), 'vport')
- self.ixnet.commit()
- self.ixnet.execute('assignPorts', [port], [], [vport], True)
+
+ vports = []
+ for _ in ports:
+ vports.append(self.ixnet.add(self.ixnet.getRoot(), 'vport'))
self.ixnet.commit()
+
+ self.ixnet.execute('assignPorts', ports, [], vports, True)
+ self.ixnet.commit()
+
+ for vport in vports:
if self.ixnet.getAttribute(vport, '-state') != 'up':
log.warning('Port %s is down', vport)
- def _create_traffic_item(self):
+ def _create_traffic_item(self, traffic_type='raw'):
"""Create the traffic item to hold the flow groups
The traffic item tracking by "Traffic Item" is enabled to retrieve the
@@ -243,7 +298,7 @@ class IxNextgen(object): # pragma: no cover
traffic_item = self.ixnet.add(self.ixnet.getRoot() + '/traffic',
'trafficItem')
self.ixnet.setMultiAttribute(traffic_item, '-name', 'RFC2544',
- '-trafficType', 'raw')
+ '-trafficType', traffic_type)
self.ixnet.commit()
traffic_item_id = self.ixnet.remapIds(traffic_item)[0]
@@ -251,27 +306,25 @@ class IxNextgen(object): # pragma: no cover
'-trackBy', 'trafficGroupId0')
self.ixnet.commit()
- def _create_flow_groups(self):
- """Create the flow groups between the assigned ports"""
+ def _create_flow_groups(self, uplink, downlink):
+ """Create the flow groups between the endpoints"""
traffic_item_id = self.ixnet.getList(self.ixnet.getRoot() + 'traffic',
'trafficItem')[0]
log.info('Create the flow groups')
- vports = self.ixnet.getList(self.ixnet.getRoot(), 'vport')
- uplink_ports = vports[::2]
- downlink_ports = vports[1::2]
+
index = 0
- for up, down in zip(uplink_ports, downlink_ports):
+ for up, down in zip(uplink, downlink):
log.info('FGs: %s <--> %s', up, down)
endpoint_set_1 = self.ixnet.add(traffic_item_id, 'endpointSet')
endpoint_set_2 = self.ixnet.add(traffic_item_id, 'endpointSet')
self.ixnet.setMultiAttribute(
endpoint_set_1, '-name', str(index + 1),
- '-sources', [up + '/protocols'],
- '-destinations', [down + '/protocols'])
+ '-sources', [up],
+ '-destinations', [down])
self.ixnet.setMultiAttribute(
endpoint_set_2, '-name', str(index + 2),
- '-sources', [down + '/protocols'],
- '-destinations', [up + '/protocols'])
+ '-sources', [down],
+ '-destinations', [up])
self.ixnet.commit()
index += 2
@@ -281,7 +334,7 @@ class IxNextgen(object): # pragma: no cover
'/traffic/protocolTemplate:"{}"'.format(protocol_name))
self.ixnet.execute('append', previous_element, protocol)
- def _setup_config_elements(self):
+ def _setup_config_elements(self, add_default_proto=True):
"""Setup the config elements
The traffic item is configured to allow individual configurations per
@@ -303,12 +356,13 @@ class IxNextgen(object): # pragma: no cover
self.ixnet.setAttribute(config_element + '/frameRateDistribution',
'-streamDistribution', 'splitRateEvenly')
self.ixnet.commit()
- self._append_procotol_to_stack(
- PROTO_UDP, config_element + '/stack:"ethernet-1"')
- self._append_procotol_to_stack(
- PROTO_IPV4, config_element + '/stack:"ethernet-1"')
+ if add_default_proto:
+ self._append_procotol_to_stack(
+ PROTO_UDP, config_element + '/stack:"ethernet-1"')
+ self._append_procotol_to_stack(
+ PROTO_IPV4, config_element + '/stack:"ethernet-1"')
- def create_traffic_model(self):
+ def create_traffic_model(self, uplink_ports, downlink_ports):
"""Create a traffic item and the needed flow groups
Each flow group inside the traffic item (only one is present)
@@ -319,10 +373,27 @@ class IxNextgen(object): # pragma: no cover
FlowGroup3: port3 -> port4
FlowGroup4: port3 <- port4
"""
- self._create_traffic_item()
- self._create_flow_groups()
+ self._create_traffic_item('raw')
+ uplink_endpoints = [port + '/protocols' for port in uplink_ports]
+ downlink_endpoints = [port + '/protocols' for port in downlink_ports]
+ self._create_flow_groups(uplink_endpoints, downlink_endpoints)
self._setup_config_elements()
+ def create_ipv4_traffic_model(self, uplink_topologies, downlink_topologies):
+ """Create a traffic item and the needed flow groups
+
+ Each flow group inside the traffic item (only one is present)
+ represents the traffic between two topologies:
+ (uplink) (downlink)
+ FlowGroup1: uplink1 -> downlink1
+ FlowGroup2: uplink1 <- downlink1
+ FlowGroup3: uplink2 -> downlink2
+ FlowGroup4: uplink2 <- downlink2
+ """
+ self._create_traffic_item('ipv4')
+ self._create_flow_groups(uplink_topologies, downlink_topologies)
+ self._setup_config_elements(False)
+
def _update_frame_mac(self, ethernet_descriptor, field, mac_address):
"""Set the MAC address in a config element stack Ethernet field
@@ -366,16 +437,15 @@ class IxNextgen(object): # pragma: no cover
raise exceptions.IxNetworkFlowNotPresent(flow_group=fg_id)
type = traffic_param.get('traffic_type', 'fixedDuration')
- rate = traffic_param['rate']
rate_unit = (
'framesPerSecond' if traffic_param['rate_unit'] ==
tp_base.TrafficProfileConfig.RATE_FPS else 'percentLineRate')
weighted_range_pairs = self._parse_framesize(
- traffic_param['outer_l2']['framesize'])
- srcmac = str(traffic_param.get('srcmac', '00:00:00:00:00:01'))
- dstmac = str(traffic_param.get('dstmac', '00:00:00:00:00:02'))
+ traffic_param['outer_l2'].get('framesize', {}))
+ srcmac = str(traffic_param['outer_l2'].get('srcmac', '00:00:00:00:00:01'))
+ dstmac = str(traffic_param['outer_l2'].get('dstmac', '00:00:00:00:00:02'))
- if traffic_param['outer_l2']['QinQ']:
+ if traffic_param['outer_l2'].get('QinQ'):
s_vlan = traffic_param['outer_l2']['QinQ']['S-VLAN']
c_vlan = traffic_param['outer_l2']['QinQ']['C-VLAN']
@@ -400,21 +470,27 @@ class IxNextgen(object): # pragma: no cover
self.ixnet.setMultiAttribute(
config_element + '/transmissionControl',
'-type', type, '-duration', duration)
+
self.ixnet.setMultiAttribute(
config_element + '/frameRate',
- '-rate', rate, '-type', rate_unit)
- self.ixnet.setMultiAttribute(
- config_element + '/frameSize',
- '-type', 'weightedPairs',
- '-weightedRangePairs', weighted_range_pairs)
+ '-rate', traffic_param['rate'], '-type', rate_unit)
+
+ if len(weighted_range_pairs):
+ self.ixnet.setMultiAttribute(
+ config_element + '/frameSize',
+ '-type', 'weightedPairs',
+ '-weightedRangePairs', weighted_range_pairs)
+
self.ixnet.commit()
- self._update_frame_mac(
- self._get_stack_item(fg_id, PROTO_ETHERNET)[0],
- 'destinationAddress', dstmac)
- self._update_frame_mac(
- self._get_stack_item(fg_id, PROTO_ETHERNET)[0],
- 'sourceAddress', srcmac)
+ if dstmac:
+ self._update_frame_mac(
+ self._get_stack_item(fg_id, PROTO_ETHERNET)[0],
+ 'destinationAddress', dstmac)
+ if srcmac:
+ self._update_frame_mac(
+ self._get_stack_item(fg_id, PROTO_ETHERNET)[0],
+ 'sourceAddress', srcmac)
def _update_vlan_tag(self, fg_id, params, vlan=0):
field_to_param_map = {
@@ -474,20 +550,24 @@ class IxNextgen(object): # pragma: no cover
if not self._get_config_element_by_flow_group_name(fg_id):
raise exceptions.IxNetworkFlowNotPresent(flow_group=fg_id)
- count = traffic_param['outer_l3']['count']
- srcip = str(traffic_param['outer_l3']['srcip'])
- dstip = str(traffic_param['outer_l3']['dstip'])
- srcseed = traffic_param['outer_l3']['srcseed']
- dstseed = traffic_param['outer_l3']['dstseed']
- srcmask = traffic_param['outer_l3']['srcmask'] or IP_VERSION_4_MASK
- dstmask = traffic_param['outer_l3']['dstmask'] or IP_VERSION_4_MASK
-
- self._update_ipv4_address(
- self._get_stack_item(fg_id, PROTO_IPV4)[0],
- 'srcIp', srcip, srcseed, srcmask, count)
- self._update_ipv4_address(
- self._get_stack_item(fg_id, PROTO_IPV4)[0],
- 'dstIp', dstip, dstseed, dstmask, count)
+ if traffic_param['outer_l3']:
+ count = traffic_param['outer_l3']['count']
+ srcip = traffic_param['outer_l3']['srcip']
+ dstip = traffic_param['outer_l3']['dstip']
+ srcseed = traffic_param['outer_l3']['srcseed']
+ dstseed = traffic_param['outer_l3']['dstseed']
+ srcmask = traffic_param['outer_l3']['srcmask'] \
+ or ipaddress.IPV4LENGTH
+ dstmask = traffic_param['outer_l3']['dstmask'] \
+ or ipaddress.IPV4LENGTH
+ if srcip:
+ self._update_ipv4_address(
+ self._get_stack_item(fg_id, PROTO_IPV4)[0],
+ 'srcIp', str(srcip), srcseed, srcmask, count)
+ if dstip:
+ self._update_ipv4_address(
+ self._get_stack_item(fg_id, PROTO_IPV4)[0],
+ 'dstIp', str(dstip), dstseed, dstmask, count)
def update_l4(self, traffic):
"""Update the L4 headers
@@ -501,7 +581,10 @@ class IxNextgen(object): # pragma: no cover
if not self._get_config_element_by_flow_group_name(fg_id):
raise exceptions.IxNetworkFlowNotPresent(flow_group=fg_id)
- proto = traffic_param['outer_l3']['proto']
+ proto = traffic_param['outer_l3'].get('proto')
+ if not (proto and traffic_param['outer_l4']):
+ continue
+
if proto not in SUPPORTED_PROTO:
raise exceptions.IXIAUnsupportedProtocol(protocol=proto)
@@ -514,12 +597,15 @@ class IxNextgen(object): # pragma: no cover
dstport = traffic_param['outer_l4']['dstport']
dstmask = traffic_param['outer_l4']['dstportmask']
- if proto in SUPPORTED_PROTO:
- self._update_udp_port(self._get_stack_item(fg_id, proto)[0],
- 'srcPort', srcport, seed, srcmask, count)
-
- self._update_udp_port(self._get_stack_item(fg_id, proto)[0],
- 'dstPort', dstport, seed, dstmask, count)
+ if proto == PROTO_UDP:
+ if srcport:
+ self._update_udp_port(
+ self._get_stack_item(fg_id, proto)[0],
+ 'srcPort', srcport, seed, srcmask, count)
+ if dstport:
+ self._update_udp_port(
+ self._get_stack_item(fg_id, proto)[0],
+ 'dstPort', dstport, seed, dstmask, count)
def _update_udp_port(self, descriptor, field, value,
seed=1, mask=0, count=1):
@@ -553,6 +639,39 @@ class IxNextgen(object): # pragma: no cover
'getColumnValues', view_obj, data_ixia)
for data_yardstick, data_ixia in name_map.items()}
+ def _set_egress_flow_tracking(self, encapsulation, offset):
+ """Set egress flow tracking options
+
+ :param encapsulation: encapsulation type
+ :type encapsulation: str, e.g. 'Ethernet'
+ :param offset: offset type
+ :type offset: str, e.g. 'IPv4 TOS Precedence (3 bits)'
+ """
+ traffic_item = self.ixnet.getList(self.ixnet.getRoot() + '/traffic',
+ 'trafficItem')[0]
+ # Enable Egress Tracking
+ self.ixnet.setAttribute(traffic_item, '-egressEnabled', True)
+ self.ixnet.commit()
+
+ # Set encapsulation type
+ enc_obj = self.ixnet.getList(traffic_item, 'egressTracking')[0]
+ self.ixnet.setAttribute(enc_obj, '-encapsulation', encapsulation)
+
+ # Set offset
+ self.ixnet.setAttribute(enc_obj, '-offset', offset)
+ self.ixnet.commit()
+
+ def _set_flow_tracking(self, track_by):
+ """Set flow tracking options
+
+ :param track_by: list of tracking fields
+ :type track_by: list, e.g. ['vlanVlanId0','ipv4Precedence0']
+ """
+ traffic_item = self.ixnet.getList(self.ixnet.getRoot() + '/traffic',
+ 'trafficItem')[0]
+ self.ixnet.setAttribute(traffic_item + '/tracking', '-trackBy', track_by)
+ self.ixnet.commit()
+
def get_statistics(self):
"""Retrieve port and flow statistics
@@ -570,6 +689,12 @@ class IxNextgen(object): # pragma: no cover
self.LATENCY_NAME_MAP))
return stats
+ def start_protocols(self):
+ self.ixnet.execute('startAllProtocols')
+
+ def stop_protocols(self):
+ self.ixnet.execute('stopAllProtocols')
+
def start_traffic(self):
"""Start the traffic injection in the traffic item
@@ -613,6 +738,60 @@ class IxNextgen(object): # pragma: no cover
self.ixnet.commit()
return obj
+ def _create_vlans(self, ethernet, count):
+ self.ixnet.setMultiAttribute(ethernet, '-useVlans', 'true')
+ self.ixnet.setMultiAttribute(ethernet, '-vlanCount', count)
+ self.ixnet.commit()
+
+ def _configure_vlans(self, ethernet, vlans):
+ vlans_obj = self.ixnet.getList(ethernet, 'vlan')
+ for i, vlan_obj in enumerate(vlans_obj):
+ if vlans[i].vlan_id_step is not None:
+ vlan_id_obj = self.ixnet.getAttribute(vlan_obj, '-vlanId')
+ self.ixnet.setMultiAttribute(vlan_id_obj, '-clearOverlays',
+ 'true', '-pattern', 'counter')
+ vlan_id_counter = self.ixnet.add(vlan_id_obj, 'counter')
+ self.ixnet.setMultiAttribute(vlan_id_counter, '-start',
+ vlans[i].vlan_id, '-step',
+ vlans[i].vlan_id_step,
+ '-direction',
+ vlans[i].vlan_id_direction)
+ else:
+ vlan_id_obj = self.ixnet.getAttribute(vlan_obj, '-vlanId')
+ self.ixnet.setMultiAttribute(vlan_id_obj + '/singleValue',
+ '-value', vlans[i].vlan_id)
+
+ if vlans[i].prio_step is not None:
+ prio_obj = self.ixnet.getAttribute(vlan_obj, '-priority')
+ self.ixnet.setMultiAttribute(prio_obj, '-clearOverlays', 'true',
+ '-pattern', 'counter')
+ prio_counter = self.ixnet.add(prio_obj, 'counter')
+ self.ixnet.setMultiAttribute(prio_counter,
+ '-start', vlans[i].prio,
+ '-step', vlans[i].prio_step,
+ '-direction', vlans[i].prio_direction)
+ elif vlans[i].prio is not None:
+ prio_obj = self.ixnet.getAttribute(vlan_obj, '-priority')
+ self.ixnet.setMultiAttribute(prio_obj + '/singleValue',
+ '-value', vlans[i].prio)
+
+ if vlans[i].tp_id is not None:
+ tp_id_obj = self.ixnet.getAttribute(vlan_obj, '-tpid')
+ self.ixnet.setMultiAttribute(tp_id_obj + '/singleValue',
+ '-value', vlans[i].tp_id)
+
+ self.ixnet.commit()
+
+ def add_vlans(self, ethernet, vlans):
+ log.debug("add_vlans: ethernet='%s'", ethernet)
+
+ if vlans is None or len(vlans) == 0:
+ raise RuntimeError(
+ "Invalid 'vlans' argument. Expected list of Vlan instances.")
+
+ self._create_vlans(ethernet, len(vlans))
+ self._configure_vlans(ethernet, vlans)
+
def add_ipv4(self, ethernet, name='',
addr=None, addr_step=None, addr_direction='increment',
prefix=None, prefix_step=None, prefix_direction='increment',
@@ -698,3 +877,29 @@ class IxNextgen(object): # pragma: no cover
self.ixnet.commit()
return obj
+
+ def add_bgp(self, ipv4, dut_ip, local_as, bgp_type=None):
+ """Add BGP protocol"""
+ log.debug("add_bgp: ipv4='%s', dut_ip='%s', local_as='%s'", ipv4,
+ dut_ip, local_as)
+ obj = self.ixnet.add(ipv4, 'bgpIpv4Peer')
+ self.ixnet.commit()
+
+ # Set DUT IP address
+ dut_ip_addr = self.ixnet.getAttribute(obj, '-dutIp')
+ self.ixnet.setAttribute(dut_ip_addr + '/singleValue',
+ '-value', dut_ip)
+
+ # Set local AS number
+ local_as_number = self.ixnet.getAttribute(obj, '-localAs2Bytes')
+ self.ixnet.setAttribute(local_as_number + '/singleValue',
+ '-value', local_as)
+
+ if bgp_type:
+ # Set BGP type. If not specified, default value is using.
+ # Default type is "internal"
+ bgp_type_field = self.ixnet.getAttribute(obj, '-type')
+ self.ixnet.setAttribute(bgp_type_field + '/singleValue',
+ '-value', bgp_type)
+ self.ixnet.commit()
+ return obj
diff --git a/yardstick/network_services/traffic_profile/__init__.py b/yardstick/network_services/traffic_profile/__init__.py
index a1b26a24d..91d8a665f 100644
--- a/yardstick/network_services/traffic_profile/__init__.py
+++ b/yardstick/network_services/traffic_profile/__init__.py
@@ -28,6 +28,7 @@ def register_modules():
'yardstick.network_services.traffic_profile.prox_ramp',
'yardstick.network_services.traffic_profile.rfc2544',
'yardstick.network_services.traffic_profile.pktgen',
+ 'yardstick.network_services.traffic_profile.landslide_profile',
]
for module in modules:
diff --git a/yardstick/network_services/traffic_profile/base.py b/yardstick/network_services/traffic_profile/base.py
index 4fbceea9b..ea3f17874 100644
--- a/yardstick/network_services/traffic_profile/base.py
+++ b/yardstick/network_services/traffic_profile/base.py
@@ -97,6 +97,9 @@ class TrafficProfile(object):
self.params = tp_config
self.config = TrafficProfileConfig(tp_config)
+ def is_ended(self):
+ return False
+
def execute_traffic(self, traffic_generator, **kawrgs):
""" This methods defines the behavior of the traffic generator.
It will be called in a loop until the traffic generator exits.
diff --git a/yardstick/network_services/traffic_profile/http.py b/yardstick/network_services/traffic_profile/http.py
index 2d00fb849..31ab17ef7 100644
--- a/yardstick/network_services/traffic_profile/http.py
+++ b/yardstick/network_services/traffic_profile/http.py
@@ -24,6 +24,10 @@ class TrafficProfileGenericHTTP(TrafficProfile):
def __init__(self, TrafficProfile):
super(TrafficProfileGenericHTTP, self).__init__(TrafficProfile)
+ def get_links_param(self):
+ return {k: v for k, v in self.params.items() if
+ "uplink" in k or "downlink" in k}
+
def execute(self, traffic_generator):
''' send run traffic for a selected traffic generator'''
pass
diff --git a/yardstick/network_services/traffic_profile/http_ixload.py b/yardstick/network_services/traffic_profile/http_ixload.py
index 6cbdb8ab2..3ccec637d 100644
--- a/yardstick/network_services/traffic_profile/http_ixload.py
+++ b/yardstick/network_services/traffic_profile/http_ixload.py
@@ -106,8 +106,10 @@ class IXLOADHttpTest(object):
self.chassis = None
self.card = None
self.ports_to_reassign = None
+ self.links_param = None
self.test_input = jsonutils.loads(test_input)
self.parse_run_test()
+ self.test = None
@staticmethod
def format_ports_for_reassignment(ports):
@@ -171,6 +173,90 @@ class IXLOADHttpTest(object):
LOG.error('Error: IxLoad config file not found: %s', config_file)
raise
+ def update_network_address(self, net_traffic, address, gateway, prefix):
+ """Update ip address and gateway for net_traffic object
+
+ This function update field which configure source addresses for
+ traffic which is described by net_traffic object.
+ Do not return anything
+
+ :param net_traffic: (IxLoadObjectProxy) proxy obj to tcl net_traffic object
+ :param address: (str) Ipv4 range start address
+ :param gateway: (str) Ipv4 address of gateway
+ :param prefix: (int) subnet prefix
+ :return:
+ """
+ try:
+ ethernet = net_traffic.network.getL1Plugin()
+ ix_net_l2_ethernet_plugin = ethernet.childrenList[0]
+ ix_net_ip_v4_v6_plugin = ix_net_l2_ethernet_plugin.childrenList[0]
+ ix_net_ip_v4_v6_range = ix_net_ip_v4_v6_plugin.rangeList[0]
+
+ ix_net_ip_v4_v6_range.config(
+ prefix=prefix,
+ ipAddress=address,
+ gatewayAddress=gateway)
+ except Exception:
+ raise exceptions.InvalidRxfFile
+
+ def update_network_mac_address(self, net_traffic, mac):
+ """Update MACaddress for net_traffic object
+
+ This function update field which configure MACaddresses for
+ traffic which is described by net_traffic object.
+ If mac == "auto" then will be configured auto generated mac
+ Do not return anything.
+
+ :param net_traffic: (IxLoadObjectProxy) proxy obj to tcl net_traffic object
+ :param mac: (str) MAC
+ :return:
+ """
+ try:
+ ethernet = net_traffic.network.getL1Plugin()
+ ix_net_l2_ethernet_plugin = ethernet.childrenList[0]
+ ix_net_ip_v4_v6_plugin = ix_net_l2_ethernet_plugin.childrenList[0]
+ ix_net_ip_v4_v6_range = ix_net_ip_v4_v6_plugin.rangeList[0]
+
+ if str(mac).lower() == "auto":
+ ix_net_ip_v4_v6_range.config(autoMacGeneration=True)
+ else:
+ ix_net_ip_v4_v6_range.config(autoMacGeneration=False)
+ mac_range = ix_net_ip_v4_v6_range.getLowerRelatedRange(
+ "MacRange")
+ mac_range.config(mac=mac)
+ except Exception:
+ raise exceptions.InvalidRxfFile
+
+ def update_network_param(self, net_traffic, param):
+ """Update net_traffic by parameters specified in param"""
+
+ self.update_network_address(net_traffic, param["address"],
+ param["gateway"], param["subnet_prefix"])
+
+ self.update_network_mac_address(net_traffic, param["mac"])
+
+ def update_config(self):
+ """Update some fields by parameters from traffic profile"""
+
+ net_traffics = {}
+ # self.test.communityList is a IxLoadObjectProxy to some tcl object
+ # which contain all net_traffic objects in scenario.
+ # net_traffic item has a name in format "activity_name@item_name"
+ try:
+ for item in self.test.communityList:
+ net_traffics[item.name.split('@')[1]] = item
+ except Exception: # pylint: disable=broad-except
+ pass
+
+ for name, net_traffic in net_traffics.items():
+ try:
+ param = self.links_param[name]
+ except KeyError:
+ LOG.debug('There is no param for net_traffic %s', name)
+ continue
+
+ self.update_network_param(net_traffic, param["ip"])
+
def start_http_test(self):
self.ix_load = IxLoad()
@@ -197,16 +283,18 @@ class IXLOADHttpTest(object):
# Get the first test on the testList
test_name = repository.testList[0].cget("name")
- test = repository.testList.getItem(test_name)
+ self.test = repository.testList.getItem(test_name)
self.set_results_dir(test_controller, self.results_on_windows)
- test.config(statsRequired=1, enableResetPorts=1, csvInterval=2,
- enableForceOwnership=True)
+ self.test.config(statsRequired=1, enableResetPorts=1, csvInterval=2,
+ enableForceOwnership=True)
+
+ self.update_config()
# ---- Remap ports ----
try:
- self.reassign_ports(test, repository, self.ports_to_reassign)
+ self.reassign_ports(self.test, repository, self.ports_to_reassign)
except Exception: # pylint: disable=broad-except
LOG.exception("Exception occurred during reassign_ports")
@@ -246,7 +334,7 @@ class IXLOADHttpTest(object):
self.stat_utils.StartCollector(self.IxL_StatCollectorCommand)
- test_controller.run(test)
+ test_controller.run(self.test)
self.ix_load.waitForTestFinish()
test_controller.releaseConfigWaitFinish()
@@ -258,7 +346,7 @@ class IXLOADHttpTest(object):
test_controller.generateReport(detailedReport=1, format="PDF;HTML")
test_controller.releaseConfigWaitFinish()
- self.ix_load.delete(test)
+ self.ix_load.delete(self.test)
self.ix_load.delete(test_controller)
self.ix_load.delete(logger)
self.ix_load.delete(log_engine)
@@ -296,6 +384,9 @@ class IXLOADHttpTest(object):
LOG.debug("Ports to be reassigned: %s", self.ports_to_reassign)
+ self.links_param = self.test_input["links_param"]
+ LOG.debug("Links param to be applied: %s", self.links_param)
+
def main(args):
# Get the args from cmdline and parse and run the test
diff --git a/yardstick/network_services/traffic_profile/ixia_rfc2544.py b/yardstick/network_services/traffic_profile/ixia_rfc2544.py
index 44bf2eafc..0b7a78c2c 100644
--- a/yardstick/network_services/traffic_profile/ixia_rfc2544.py
+++ b/yardstick/network_services/traffic_profile/ixia_rfc2544.py
@@ -28,6 +28,8 @@ class IXIARFC2544Profile(trex_traffic_profile.TrexProfile):
DOWNLINK = 'downlink'
DROP_PERCENT_ROUND = 6
RATE_ROUND = 5
+ STATUS_SUCCESS = "Success"
+ STATUS_FAIL = "Failure"
def __init__(self, yaml_data):
super(IXIARFC2544Profile, self).__init__(yaml_data)
@@ -56,68 +58,83 @@ class IXIARFC2544Profile(trex_traffic_profile.TrexProfile):
if not traffickey.startswith((self.UPLINK, self.DOWNLINK)):
continue
+ # values should be single-item dict, so just grab the first item
try:
- # values should be single-item dict, so just grab the first item
- try:
- key, value = next(iter(values.items()))
- except StopIteration:
- result[traffickey] = {}
- continue
-
- port_id = value.get('id', 1)
- port_index = port_id - 1
-
- if value.get('outer_l3v4'):
- ip = value['outer_l3v4']
- src_key, dst_key = 'srcip4', 'dstip4'
- else:
- ip = value['outer_l3v6']
- src_key, dst_key = 'srcip6', 'dstip6'
-
- srcip, srcmask = self._get_ip_and_mask(ip[src_key])
- dstip, dstmask = self._get_ip_and_mask(ip[dst_key])
-
- outer_l4 = value.get('outer_l4')
- src_port, src_port_mask = self._get_fixed_and_mask(outer_l4['srcport'])
- dst_port, dst_port_mask = self._get_fixed_and_mask(outer_l4['dstport'])
- result[traffickey] = {
- 'bidir': False,
- 'id': port_id,
- 'rate': self.rate,
- 'rate_unit': self.rate_unit,
- 'outer_l2': {
- 'framesize': value['outer_l2']['framesize'],
- 'framesPerSecond': True,
- 'QinQ': value['outer_l2'].get('QinQ'),
- 'srcmac': mac['src_mac_{}'.format(port_index)],
- 'dstmac': mac['dst_mac_{}'.format(port_index)],
- },
- 'outer_l3': {
- 'count': ip['count'],
- 'dscp': ip['dscp'],
- 'ttl': ip['ttl'],
- 'srcseed': ip.get('srcseed', 1),
- 'dstseed': ip.get('dstseed', 1),
- 'srcip': srcip,
- 'dstip': dstip,
- 'srcmask': srcmask,
- 'dstmask': dstmask,
- 'type': key,
- 'proto': ip['proto'],
- },
- 'outer_l4': {
- 'srcport': src_port,
- 'dstport': dst_port,
- 'srcportmask': src_port_mask,
- 'dstportmask': dst_port_mask,
- 'count': outer_l4['count'],
- 'seed': outer_l4.get('seed', 1)
- }
-
- }
- except KeyError:
+ key, value = next(iter(values.items()))
+ except StopIteration:
+ result[traffickey] = {}
continue
+ port_id = value.get('id', 1)
+ port_index = port_id - 1
+
+ result[traffickey] = {
+ 'bidir': False,
+ 'id': port_id,
+ 'rate': self.rate,
+ 'rate_unit': self.rate_unit,
+ 'outer_l2': {},
+ 'outer_l3': {},
+ 'outer_l4': {},
+ }
+
+ outer_l2 = value.get('outer_l2')
+ if outer_l2:
+ result[traffickey]['outer_l2'].update({
+ 'framesize': outer_l2.get('framesize'),
+ 'framesPerSecond': True,
+ 'QinQ': outer_l2.get('QinQ'),
+ 'srcmac': mac.get('src_mac_{}'.format(port_index)),
+ 'dstmac': mac.get('dst_mac_{}'.format(port_index)),
+ })
+
+ if value.get('outer_l3v4'):
+ outer_l3 = value['outer_l3v4']
+ src_key, dst_key = 'srcip4', 'dstip4'
+ else:
+ outer_l3 = value.get('outer_l3v6')
+ src_key, dst_key = 'srcip6', 'dstip6'
+ if outer_l3:
+ srcip = srcmask = dstip = dstmask = None
+ if outer_l3.get(src_key):
+ srcip, srcmask = self._get_ip_and_mask(outer_l3[src_key])
+ if outer_l3.get(dst_key):
+ dstip, dstmask = self._get_ip_and_mask(outer_l3[dst_key])
+
+ result[traffickey]['outer_l3'].update({
+ 'count': outer_l3.get('count', 1),
+ 'dscp': outer_l3.get('dscp'),
+ 'ttl': outer_l3.get('ttl'),
+ 'srcseed': outer_l3.get('srcseed', 1),
+ 'dstseed': outer_l3.get('dstseed', 1),
+ 'srcip': srcip,
+ 'dstip': dstip,
+ 'srcmask': srcmask,
+ 'dstmask': dstmask,
+ 'type': key,
+ 'proto': outer_l3.get('proto'),
+ })
+
+ outer_l4 = value.get('outer_l4')
+ if outer_l4:
+ src_port = src_port_mask = dst_port = dst_port_mask = None
+ if outer_l4.get('srcport'):
+ src_port, src_port_mask = (
+ self._get_fixed_and_mask(outer_l4['srcport']))
+
+ if outer_l4.get('dstport'):
+ dst_port, dst_port_mask = (
+ self._get_fixed_and_mask(outer_l4['dstport']))
+
+ result[traffickey]['outer_l4'].update({
+ 'srcport': src_port,
+ 'dstport': dst_port,
+ 'srcportmask': src_port_mask,
+ 'dstportmask': dst_port_mask,
+ 'count': outer_l4.get('count', 1),
+ 'seed': outer_l4.get('seed', 1),
+ })
+
return result
def _ixia_traffic_generate(self, traffic, ixia_obj):
@@ -159,7 +176,7 @@ class IXIARFC2544Profile(trex_traffic_profile.TrexProfile):
self._ixia_traffic_generate(traffic, ixia_obj)
return first_run
- def get_drop_percentage(self, samples, tol_min, tolerance,
+ def get_drop_percentage(self, samples, tol_min, tolerance, precision,
first_run=False):
completed = False
drop_percent = 100
@@ -193,6 +210,10 @@ class IXIARFC2544Profile(trex_traffic_profile.TrexProfile):
else:
completed = True
+ LOG.debug("tolerance=%s, tolerance_precision=%s drop_percent=%s "
+ "completed=%s", tolerance, precision, drop_percent,
+ completed)
+
latency_ns_avg = float(
sum([samples[iface]['Store-Forward_Avg_latency_ns']
for iface in samples])) / num_ifaces
@@ -203,6 +224,10 @@ class IXIARFC2544Profile(trex_traffic_profile.TrexProfile):
sum([samples[iface]['Store-Forward_Max_latency_ns']
for iface in samples])) / num_ifaces
+ samples['Status'] = self.STATUS_FAIL
+ if round(drop_percent, precision) <= tolerance:
+ samples['Status'] = self.STATUS_SUCCESS
+
samples['TxThroughput'] = tx_throughput
samples['RxThroughput'] = rx_throughput
samples['DropPercentage'] = drop_percent
diff --git a/yardstick/network_services/traffic_profile/landslide_profile.py b/yardstick/network_services/traffic_profile/landslide_profile.py
new file mode 100644
index 000000000..f79226fb4
--- /dev/null
+++ b/yardstick/network_services/traffic_profile/landslide_profile.py
@@ -0,0 +1,47 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+""" Spirent Landslide traffic profile definitions """
+
+from yardstick.network_services.traffic_profile import base
+
+
+class LandslideProfile(base.TrafficProfile):
+ """
+ This traffic profile handles attributes of Landslide data stream
+ """
+
+ def __init__(self, tp_config):
+ super(LandslideProfile, self).__init__(tp_config)
+
+ # for backward compatibility support dict and list of dicts
+ if isinstance(tp_config["dmf_config"], dict):
+ self.dmf_config = [tp_config["dmf_config"]]
+ else:
+ self.dmf_config = tp_config["dmf_config"]
+
+ def execute(self, traffic_generator):
+ pass
+
+ def update_dmf(self, options):
+ if 'dmf' in options:
+ if isinstance(options['dmf'], dict):
+ _dmfs = [options['dmf']]
+ else:
+ _dmfs = options['dmf']
+
+ for index, _dmf in enumerate(_dmfs):
+ try:
+ self.dmf_config[index].update(_dmf)
+ except IndexError:
+ pass
diff --git a/yardstick/network_services/traffic_profile/prox_binsearch.py b/yardstick/network_services/traffic_profile/prox_binsearch.py
index 16a0411ec..f924cf419 100644
--- a/yardstick/network_services/traffic_profile/prox_binsearch.py
+++ b/yardstick/network_services/traffic_profile/prox_binsearch.py
@@ -66,6 +66,9 @@ class ProxBinSearchProfile(ProxProfile):
yield test_value
test_value = self.mid_point
+ def is_ended(self):
+ return self.done.is_set()
+
def run_test_with_pkt_size(self, traffic_gen, pkt_size, duration):
"""Run the test for a single packet size.
@@ -93,7 +96,7 @@ class ProxBinSearchProfile(ProxProfile):
# success, the binary search will complete on an integer multiple
# of the precision, rather than on a fraction of it.
- theor_max_thruput = 0
+ theor_max_thruput = 0.0
result_samples = {}
@@ -195,9 +198,9 @@ class ProxBinSearchProfile(ProxProfile):
LOG.info(
">>>##>> Result Reached PktSize %s Theor_Max_Thruput %s Actual_throughput %s",
- pkt_size, theor_max_thruput, result_samples.get("RxThroughput", 0))
+ pkt_size, theor_max_thruput, result_samples.get("RxThroughput", 0.0))
result_samples["Status"] = STATUS_RESULT
result_samples["Next_Step"] = ""
- result_samples["Actual_throughput"] = result_samples.get("RxThroughput", 0)
+ result_samples["Actual_throughput"] = result_samples.get("RxThroughput", 0.0)
result_samples["theor_max_throughput"] = theor_max_thruput
self.queue.put(result_samples)
diff --git a/yardstick/network_services/traffic_profile/prox_profile.py b/yardstick/network_services/traffic_profile/prox_profile.py
index 343ef1da2..de4b3f9a0 100644
--- a/yardstick/network_services/traffic_profile/prox_profile.py
+++ b/yardstick/network_services/traffic_profile/prox_profile.py
@@ -16,6 +16,7 @@
from __future__ import absolute_import
import logging
+import multiprocessing
from yardstick.network_services.traffic_profile.base import TrafficProfile
from yardstick.network_services.vnf_generic.vnf.prox_helpers import ProxProfileHelper
@@ -56,7 +57,7 @@ class ProxProfile(TrafficProfile):
def __init__(self, tp_config):
super(ProxProfile, self).__init__(tp_config)
self.queue = None
- self.done = False
+ self.done = multiprocessing.Event()
self.results = []
# TODO: get init values from tp_config
@@ -116,7 +117,7 @@ class ProxProfile(TrafficProfile):
try:
pkt_size = next(self.pkt_size_iterator)
except StopIteration:
- self.done = True
+ self.done.set()
return
# Adjust packet size upwards if it's less than the minimum
diff --git a/yardstick/network_services/utils.py b/yardstick/network_services/utils.py
index 4b987fafe..9c64fecde 100644
--- a/yardstick/network_services/utils.py
+++ b/yardstick/network_services/utils.py
@@ -36,6 +36,9 @@ OPTS = [
cfg.StrOpt('trex_client_lib',
default=os.path.join(NSB_ROOT, 'trex_client/stl'),
help='trex python library path.'),
+ cfg.StrOpt('jre_path_i386',
+ default='',
+ help='path to installation of 32-bit Java 1.7+.'),
]
CONF.register_opts(OPTS, group="nsb")
diff --git a/yardstick/network_services/vnf_generic/vnf/agnostic_vnf.py b/yardstick/network_services/vnf_generic/vnf/agnostic_vnf.py
new file mode 100644
index 000000000..115fddcf0
--- /dev/null
+++ b/yardstick/network_services/vnf_generic/vnf/agnostic_vnf.py
@@ -0,0 +1,46 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import logging
+
+from yardstick.network_services.vnf_generic.vnf import base
+
+LOG = logging.getLogger(__name__)
+
+
+class AgnosticVnf(base.GenericVNF):
+ """ AgnosticVnf implementation. """
+ def __init__(self, name, vnfd, task_id):
+ super(AgnosticVnf, self).__init__(name, vnfd, task_id)
+
+ def instantiate(self, scenario_cfg, context_cfg):
+ pass
+
+ def wait_for_instantiate(self):
+ pass
+
+ def terminate(self):
+ pass
+
+ def scale(self, flavor=""):
+ pass
+
+ def collect_kpi(self):
+ pass
+
+ def start_collect(self):
+ pass
+
+ def stop_collect(self):
+ pass
diff --git a/yardstick/network_services/vnf_generic/vnf/epc_vnf.py b/yardstick/network_services/vnf_generic/vnf/epc_vnf.py
new file mode 100644
index 000000000..66d16d07f
--- /dev/null
+++ b/yardstick/network_services/vnf_generic/vnf/epc_vnf.py
@@ -0,0 +1,53 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import logging
+
+from yardstick.network_services.vnf_generic.vnf import base
+
+LOG = logging.getLogger(__name__)
+
+
+class EPCVnf(base.GenericVNF):
+
+ def __init__(self, name, vnfd, task_id):
+ super(EPCVnf, self).__init__(name, vnfd, task_id)
+
+ def instantiate(self, scenario_cfg, context_cfg):
+ """Prepare VNF for operation and start the VNF process/VM
+
+ :param scenario_cfg: Scenario config
+ :param context_cfg: Context config
+ """
+ pass
+
+ def wait_for_instantiate(self):
+ """Wait for VNF to start"""
+ pass
+
+ def terminate(self):
+ """Kill all VNF processes"""
+ pass
+
+ def scale(self, flavor=""):
+ pass
+
+ def collect_kpi(self):
+ pass
+
+ def start_collect(self):
+ pass
+
+ def stop_collect(self):
+ pass
diff --git a/yardstick/network_services/vnf_generic/vnf/prox_helpers.py b/yardstick/network_services/vnf_generic/vnf/prox_helpers.py
index 3241719e8..321c05779 100644
--- a/yardstick/network_services/vnf_generic/vnf/prox_helpers.py
+++ b/yardstick/network_services/vnf_generic/vnf/prox_helpers.py
@@ -984,7 +984,7 @@ class ProxResourceHelper(ClientResourceHelper):
def _run_traffic_once(self, traffic_profile):
traffic_profile.execute_traffic(self)
- if traffic_profile.done:
+ if traffic_profile.done.is_set():
self._queue.put({'done': True})
LOG.debug("tg_prox done")
self._terminated.value = 1
diff --git a/yardstick/network_services/vnf_generic/vnf/sample_vnf.py b/yardstick/network_services/vnf_generic/vnf/sample_vnf.py
index a09f2a7a9..21719cbf0 100644
--- a/yardstick/network_services/vnf_generic/vnf/sample_vnf.py
+++ b/yardstick/network_services/vnf_generic/vnf/sample_vnf.py
@@ -13,6 +13,7 @@
# limitations under the License.
import logging
+import decimal
from multiprocessing import Queue, Value, Process
import os
import posixpath
@@ -499,6 +500,7 @@ class Rfc2544ResourceHelper(object):
self._rfc2544 = None
self._tolerance_low = None
self._tolerance_high = None
+ self._tolerance_precision = None
@property
def rfc2544(self):
@@ -519,6 +521,12 @@ class Rfc2544ResourceHelper(object):
return self._tolerance_high
@property
+ def tolerance_precision(self):
+ if self._tolerance_precision is None:
+ self.get_rfc_tolerance()
+ return self._tolerance_precision
+
+ @property
def correlated_traffic(self):
if self._correlated_traffic is None:
self._correlated_traffic = \
@@ -537,9 +545,13 @@ class Rfc2544ResourceHelper(object):
def get_rfc_tolerance(self):
tolerance_str = self.get_rfc2544('allowed_drop_rate', self.DEFAULT_TOLERANCE)
- tolerance_iter = iter(sorted(float(t.strip()) for t in tolerance_str.split('-')))
- self._tolerance_low = next(tolerance_iter)
- self._tolerance_high = next(tolerance_iter, self.tolerance_low)
+ tolerance_iter = iter(sorted(
+ decimal.Decimal(t.strip()) for t in tolerance_str.split('-')))
+ tolerance_low = next(tolerance_iter)
+ tolerance_high = next(tolerance_iter, tolerance_low)
+ self._tolerance_precision = abs(tolerance_high.as_tuple().exponent)
+ self._tolerance_high = float(tolerance_high)
+ self._tolerance_low = float(tolerance_low)
class SampleVNFDeployHelper(object):
diff --git a/yardstick/network_services/vnf_generic/vnf/tg_ixload.py b/yardstick/network_services/vnf_generic/vnf/tg_ixload.py
index e0fc47dbf..d25402740 100644
--- a/yardstick/network_services/vnf_generic/vnf/tg_ixload.py
+++ b/yardstick/network_services/vnf_generic/vnf/tg_ixload.py
@@ -20,9 +20,11 @@ import os
import shutil
import subprocess
+from oslo_serialization import jsonutils
+
from yardstick.common import utils
-from yardstick.network_services.vnf_generic.vnf.sample_vnf import SampleVNFTrafficGen
-from yardstick.network_services.vnf_generic.vnf.sample_vnf import ClientResourceHelper
+from yardstick.network_services.vnf_generic.vnf import sample_vnf
+
LOG = logging.getLogger(__name__)
@@ -43,7 +45,8 @@ IXLOAD_CONFIG_TEMPLATE = '''\
},
"remote_server": "%s",
"result_dir": "%s",
- "ixload_cfg": "C:/Results/%s"
+ "ixload_cfg": "C:/Results/%s",
+ "links_param": %s
}'''
IXLOAD_CMD = "{ixloadpy} {http_ixload} {args}"
@@ -59,7 +62,7 @@ class ResourceDataHelper(list):
}
-class IxLoadResourceHelper(ClientResourceHelper):
+class IxLoadResourceHelper(sample_vnf.ClientResourceHelper):
RESULTS_MOUNT = "/mnt/Results"
@@ -121,7 +124,7 @@ class IxLoadResourceHelper(ClientResourceHelper):
LOG.debug(self.result[key])
-class IxLoadTrafficGen(SampleVNFTrafficGen):
+class IxLoadTrafficGen(sample_vnf.SampleVNFTrafficGen):
def __init__(self, name, vnfd, task_id, setup_env_helper_type=None,
resource_helper_type=None):
@@ -132,6 +135,21 @@ class IxLoadTrafficGen(SampleVNFTrafficGen):
name, vnfd, task_id, setup_env_helper_type, resource_helper_type)
self._result = {}
+ def update_gateways(self, links):
+ for name in links:
+ try:
+ gateway = next(intf["virtual-interface"]["dst_ip"] for intf in
+ self.setup_helper.vnfd_helper["vdu"][0][
+ "external-interface"] if
+ intf["virtual-interface"]["vld_id"] == name)
+
+ links[name]["ip"]["gateway"] = gateway
+ except StopIteration:
+ LOG.debug("Cant find gateway for link %s", name)
+ links[name]["ip"]["gateway"] = "0.0.0.0"
+
+ return links
+
def run_traffic(self, traffic_profile):
ports = []
card = None
@@ -143,11 +161,16 @@ class IxLoadTrafficGen(SampleVNFTrafficGen):
for csv_file in glob.iglob(self.ssh_helper.join_bin_path('*.csv')):
os.unlink(csv_file)
+ links_param = self.update_gateways(
+ traffic_profile.get_links_param())
+
ixia_config = self.vnfd_helper.mgmt_interface["tg-config"]
ixload_config = IXLOAD_CONFIG_TEMPLATE % (
ixia_config["ixchassis"], ports, card,
self.vnfd_helper.mgmt_interface["ip"], self.ssh_helper.bin_path,
- os.path.basename(self.resource_helper.resource_file_name))
+ os.path.basename(self.resource_helper.resource_file_name),
+ jsonutils.dumps(links_param)
+ )
http_ixload_path = os.path.join(VNF_PATH, "../../traffic_profile")
diff --git a/yardstick/network_services/vnf_generic/vnf/tg_landslide.py b/yardstick/network_services/vnf_generic/vnf/tg_landslide.py
new file mode 100644
index 000000000..2fba89b22
--- /dev/null
+++ b/yardstick/network_services/vnf_generic/vnf/tg_landslide.py
@@ -0,0 +1,1226 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import collections
+import logging
+import requests
+import six
+import time
+
+from yardstick.common import exceptions
+from yardstick.common import utils as common_utils
+from yardstick.common import yaml_loader
+from yardstick.network_services import utils as net_serv_utils
+from yardstick.network_services.vnf_generic.vnf import sample_vnf
+
+try:
+ from lsapi import LsApi
+except ImportError:
+ LsApi = common_utils.ErrorClass
+
+LOG = logging.getLogger(__name__)
+
+
+class LandslideTrafficGen(sample_vnf.SampleVNFTrafficGen):
+ APP_NAME = 'LandslideTG'
+
+ def __init__(self, name, vnfd, task_id, setup_env_helper_type=None,
+ resource_helper_type=None):
+ if resource_helper_type is None:
+ resource_helper_type = LandslideResourceHelper
+ super(LandslideTrafficGen, self).__init__(name, vnfd, task_id,
+ setup_env_helper_type,
+ resource_helper_type)
+
+ self.bin_path = net_serv_utils.get_nsb_option('bin_path')
+ self.name = name
+ self.runs_traffic = True
+ self.traffic_finished = False
+ self.session_profile = None
+
+ def listen_traffic(self, traffic_profile):
+ pass
+
+ def terminate(self):
+ self.resource_helper.disconnect()
+
+ def instantiate(self, scenario_cfg, context_cfg):
+ super(LandslideTrafficGen, self).instantiate(scenario_cfg, context_cfg)
+ self.resource_helper.connect()
+
+ # Create test servers
+ test_servers = [x['test_server'] for x in self.vnfd_helper['config']]
+ self.resource_helper.create_test_servers(test_servers)
+
+ # Create SUTs
+ [self.resource_helper.create_suts(x['suts']) for x in
+ self.vnfd_helper['config']]
+
+ # Fill in test session based on session profile and test case options
+ self._load_session_profile()
+
+ def run_traffic(self, traffic_profile):
+ self.resource_helper.abort_running_tests()
+ # Update DMF profile with related test case options
+ traffic_profile.update_dmf(self.scenario_helper.all_options)
+ # Create DMF in test user library
+ self.resource_helper.create_dmf(traffic_profile.dmf_config)
+ # Create/update test session in test user library
+ self.resource_helper.create_test_session(self.session_profile)
+ # Start test session
+ self.resource_helper.create_running_tests(self.session_profile['name'])
+
+ def collect_kpi(self):
+ return self.resource_helper.collect_kpi()
+
+ def wait_for_instantiate(self):
+ pass
+
+ @staticmethod
+ def _update_session_suts(suts, testcase):
+ """ Create SUT entry. Update related EPC block in session profile. """
+ for sut in suts:
+ # Update session profile EPC element with SUT info from pod file
+ tc_role = testcase['parameters'].get(sut['role'])
+ if tc_role:
+ _param = {}
+ if tc_role['class'] == 'Sut':
+ _param['name'] = sut['name']
+ elif tc_role['class'] == 'TestNode':
+ _param.update({x: sut[x] for x in {'ip', 'phy', 'nextHop'}
+ if x in sut and sut[x]})
+ testcase['parameters'][sut['role']].update(_param)
+ else:
+ LOG.info('Unexpected SUT role in pod file: "%s".', sut['role'])
+ return testcase
+
+ def _update_session_test_servers(self, test_server, _tsgroup_index):
+ """ Update tsId, reservations, pre-resolved ARP in session profile """
+ # Update test server name
+ test_groups = self.session_profile['tsGroups']
+ test_groups[_tsgroup_index]['tsId'] = test_server['name']
+
+ # Update preResolvedArpAddress
+ arp_key = 'preResolvedArpAddress'
+ _preresolved_arp = test_server.get(arp_key) # list of dicts
+ if _preresolved_arp:
+ test_groups[_tsgroup_index][arp_key] = _preresolved_arp
+
+ # Update reservations
+ if 'phySubnets' in test_server:
+ reservation = {'tsId': test_server['name'],
+ 'tsIndex': _tsgroup_index,
+ 'tsName': test_server['name'],
+ 'phySubnets': test_server['phySubnets']}
+ if 'reservations' in self.session_profile:
+ self.session_profile['reservations'].append(reservation)
+ else:
+ self.session_profile['reservePorts'] = 'true'
+ self.session_profile['reservations'] = [reservation]
+
+ def _update_session_library_name(self, test_session):
+ """Update DMF library name in session profile"""
+ for _ts_group in test_session['tsGroups']:
+ for _tc in _ts_group['testCases']:
+ try:
+ for _mainflow in _tc['parameters']['Dmf']['mainflows']:
+ _mainflow['library'] = \
+ self.vnfd_helper.mgmt_interface['user']
+ except KeyError:
+ pass
+
+ @staticmethod
+ def _update_session_tc_params(tc_options, testcase):
+ for _param_key in tc_options:
+ if _param_key == 'AssociatedPhys':
+ testcase[_param_key] = tc_options[_param_key]
+ continue
+ testcase['parameters'][_param_key] = tc_options[_param_key]
+ return testcase
+
+ def _load_session_profile(self):
+
+ with common_utils.open_relative_file(
+ self.scenario_helper.scenario_cfg['session_profile'],
+ self.scenario_helper.task_path) as stream:
+ self.session_profile = yaml_loader.yaml_load(stream)
+
+ # Raise exception if number of entries differs in following files,
+ _config_files = ['pod file', 'session_profile file', 'test_case file']
+ # Count testcases number in all tsGroups of session profile
+ session_tests_num = [xx for x in self.session_profile['tsGroups']
+ for xx in x['testCases']]
+ # Create a set containing number of list elements in each structure
+ _config_files_blocks_num = [
+ len(x) for x in
+ (self.vnfd_helper['config'], # test_servers and suts info
+ session_tests_num,
+ self.scenario_helper.all_options['test_cases'])] # test case file
+
+ if len(set(_config_files_blocks_num)) != 1:
+ raise RuntimeError('Unequal number of elements. {}'.format(
+ dict(six.moves.zip_longest(_config_files,
+ _config_files_blocks_num))))
+
+ ts_names = set()
+ _tsgroup_idx = -1
+ _testcase_idx = 0
+
+ # Iterate over data structures to overwrite session profile defaults
+ # _config: single list element holding test servers and SUTs info
+ # _tc_options: single test case parameters
+ for _config, tc_options in zip(
+ self.vnfd_helper['config'], # test servers and SUTS
+ self.scenario_helper.all_options['test_cases']): # testcase
+
+ _ts_config = _config['test_server']
+
+ # Calculate test group/test case indexes based on test server name
+ if _ts_config['name'] in ts_names:
+ _testcase_idx += 1
+ else:
+ _tsgroup_idx += 1
+ _testcase_idx = 0
+
+ _testcase = \
+ self.session_profile['tsGroups'][_tsgroup_idx]['testCases'][
+ _testcase_idx]
+
+ if _testcase['type'] != _ts_config['role']:
+ raise RuntimeError(
+ 'Test type mismatch in TC#{} of test server {}'.format(
+ _testcase_idx, _ts_config['name']))
+
+ # Fill session profile with test servers parameters
+ if _ts_config['name'] not in ts_names:
+ self._update_session_test_servers(_ts_config, _tsgroup_idx)
+ ts_names.add(_ts_config['name'])
+
+ # Fill session profile with suts parameters
+ self.session_profile['tsGroups'][_tsgroup_idx]['testCases'][
+ _testcase_idx].update(
+ self._update_session_suts(_config['suts'], _testcase))
+
+ # Update test case parameters
+ self.session_profile['tsGroups'][_tsgroup_idx]['testCases'][
+ _testcase_idx].update(
+ self._update_session_tc_params(tc_options, _testcase))
+
+ self._update_session_library_name(self.session_profile)
+
+
+class LandslideResourceHelper(sample_vnf.ClientResourceHelper):
+ """Landslide TG helper class"""
+
+ REST_STATUS_CODES = {'OK': 200, 'CREATED': 201, 'NO CHANGE': 409}
+ REST_API_CODES = {'NOT MODIFIED': 500810}
+
+ def __init__(self, setup_helper):
+ super(LandslideResourceHelper, self).__init__(setup_helper)
+ self._result = {}
+ self.vnfd_helper = setup_helper.vnfd_helper
+ self.scenario_helper = setup_helper.scenario_helper
+
+ # TAS Manager config initialization
+ self._url = None
+ self._user_id = None
+ self.session = None
+ self.license_data = {}
+
+ # TCL session initialization
+ self._tcl = LandslideTclClient(LsTclHandler(), self)
+
+ self.session = requests.Session()
+ self.running_tests_uri = 'runningTests'
+ self.test_session_uri = 'testSessions'
+ self.test_serv_uri = 'testServers'
+ self.suts_uri = 'suts'
+ self.users_uri = 'users'
+ self.user_lib_uri = None
+ self.run_id = None
+
+ def abort_running_tests(self, timeout=60, delay=5):
+ """ Abort running test sessions, if any """
+ _start_time = time.time()
+ while time.time() < _start_time + timeout:
+ run_tests_states = {x['id']: x['testStateOrStep']
+ for x in self.get_running_tests()}
+ if not set(run_tests_states.values()).difference(
+ {'COMPLETE', 'COMPLETE_ERROR'}):
+ break
+ else:
+ [self.stop_running_tests(running_test_id=_id, force=True)
+ for _id, _state in run_tests_states.items()
+ if 'COMPLETE' not in _state]
+ time.sleep(delay)
+ else:
+ raise RuntimeError(
+ 'Some test runs not stopped during {} seconds'.format(timeout))
+
+ def _build_url(self, resource, action=None):
+ """ Build URL string
+
+ :param resource: REST API resource name
+ :type resource: str
+ :param action: actions name and value
+ :type action: dict('name': <str>, 'value': <str>)
+ :returns str: REST API resource name with optional action info
+ """
+ # Action is optional and accepted only in presence of resource param
+ if action and not resource:
+ raise ValueError("Resource name not provided")
+ # Concatenate actions
+ _action = ''.join(['?{}={}'.format(k, v) for k, v in
+ action.items()]) if action else ''
+
+ return ''.join([self._url, resource, _action])
+
+ def get_response_params(self, method, resource, params=None):
+ """ Retrieve params from JSON response of specific resource URL
+
+ :param method: one of supported REST API methods
+ :type method: str
+ :param resource: URI, requested resource name
+ :type resource: str
+ :param params: attributes to be found in JSON response
+ :type params: list(str)
+ """
+ _res = []
+ params = params if params else []
+ response = self.exec_rest_request(method, resource)
+ # Get substring between last slash sign and question mark (if any)
+ url_last_part = resource.rsplit('/', 1)[-1].rsplit('?', 1)[0]
+ _response_json = response.json()
+ # Expect dict(), if URL last part and top dict key don't match
+ # Else, if they match, expect list()
+ k, v = list(_response_json.items())[0]
+ if k != url_last_part:
+ v = [v] # v: list(dict(str: str))
+ # Extract params, or whole list of dicts (without top level key)
+ for x in v:
+ _res.append({param: x[param] for param in params} if params else x)
+ return _res
+
+ def _create_user(self, auth, level=1):
+ """ Create new user
+
+ :param auth: data to create user account on REST server
+ :type auth: dict
+ :param level: Landslide user permissions level
+ :type level: int
+ :returns int: user id
+ """
+ # Set expiration date in two years since account creation date
+ _exp_date = time.strftime(
+ '{}/%m/%d %H:%M %Z'.format(time.gmtime().tm_year + 2))
+ _username = auth['user']
+ _fields = {"contactInformation": "", "expiresOn": _exp_date,
+ "fullName": "Test User",
+ "isActive": "true", "level": level,
+ "password": auth['password'],
+ "username": _username}
+ _response = self.exec_rest_request('post', self.users_uri,
+ json_data=_fields, raise_exc=False)
+ _resp_json = _response.json()
+ if _response.status_code == self.REST_STATUS_CODES['CREATED']:
+ # New user created
+ _id = _resp_json['id']
+ LOG.info("New user created: username='%s', id='%s'", _username,
+ _id)
+ elif _resp_json.get('apiCode') == self.REST_API_CODES['NOT MODIFIED']:
+ # User already exists
+ LOG.info("Account '%s' already exists.", _username)
+ # Get user id
+ _id = self._modify_user(_username, {"isActive": "true"})['id']
+ else:
+ raise exceptions.RestApiError(
+ 'Error during new user "{}" creation'.format(_username))
+ return _id
+
+ def _modify_user(self, username, fields):
+ """ Modify information about existing user
+
+ :param username: user name of account to be modified
+ :type username: str
+ :param fields: data to modify user account on REST server
+ :type fields: dict
+ :returns dict: user info
+ """
+ _response = self.exec_rest_request('post', self.users_uri,
+ action={'username': username},
+ json_data=fields, raise_exc=False)
+ if _response.status_code == self.REST_STATUS_CODES['OK']:
+ _response = _response.json()
+ else:
+ raise exceptions.RestApiError(
+ 'Error during user "{}" data update: {}'.format(
+ username,
+ _response.status_code))
+ LOG.info("User account '%s' modified: '%s'", username, _response)
+ return _response
+
+ def _delete_user(self, username):
+ """ Delete user account
+
+ :param username: username field
+ :type username: str
+ :returns bool: True if succeeded
+ """
+ self.exec_rest_request('delete', self.users_uri,
+ action={'username': username})
+
+ def _get_users(self, username=None):
+ """ Get user records from REST server
+
+ :param username: username field
+ :type username: None|str
+ :returns list(dict): empty list, or user record, or list of all users
+ """
+ _response = self.get_response_params('get', self.users_uri)
+ _res = [u for u in _response if
+ u['username'] == username] if username else _response
+ return _res
+
+ def exec_rest_request(self, method, resource, action=None, json_data=None,
+ logs=True, raise_exc=True):
+ """ Execute REST API request, return response object
+
+ :param method: one of supported requests ('post', 'get', 'delete')
+ :type method: str
+ :param resource: URL of resource
+ :type resource: str
+ :param action: data used to provide URI located after question mark
+ :type action: dict
+ :param json_data: mandatory only for 'post' method
+ :type json_data: dict
+ :param logs: debug logs display flag
+ :type raise_exc: bool
+ :param raise_exc: if True, raise exception on REST API call error
+ :returns requests.Response(): REST API call response object
+ """
+ json_data = json_data if json_data else {}
+ action = action if action else {}
+ _method = method.upper()
+ method = method.lower()
+ if method not in ('post', 'get', 'delete'):
+ raise ValueError("Method '{}' not supported".format(_method))
+
+ if method == 'post' and not action:
+ if not (json_data and isinstance(json_data, collections.Mapping)):
+ raise ValueError(
+ 'JSON data missing in {} request'.format(_method))
+
+ r = getattr(self.session, method)(self._build_url(resource, action),
+ json=json_data)
+ if raise_exc and not r.ok:
+ msg = 'Failed to "{}" resource "{}". Reason: "{}"'.format(
+ method, self._build_url(resource, action), r.reason)
+ raise exceptions.RestApiError(msg)
+
+ if logs:
+ LOG.debug("RC: %s | Request: %s | URL: %s", r.status_code, method,
+ r.request.url)
+ LOG.debug("Response: %s", r.json())
+ return r
+
+ def connect(self):
+ """Connect to RESTful server using test user account"""
+ tas_info = self.vnfd_helper['mgmt-interface']
+ # Supported REST Server ports: HTTP - 8080, HTTPS - 8181
+ _port = '8080' if tas_info['proto'] == 'http' else '8181'
+ tas_info.update({'port': _port})
+ self._url = '{proto}://{ip}:{port}/api/'.format(**tas_info)
+ self.session.headers.update({'Accept': 'application/json',
+ 'Content-type': 'application/json'})
+ # Login with super user to create test user
+ self.session.auth = (
+ tas_info['super-user'], tas_info['super-user-password'])
+ LOG.info("Connect using superuser: server='%s'", self._url)
+ auth = {x: tas_info[x] for x in ('user', 'password')}
+ self._user_id = self._create_user(auth)
+ # Login with test user
+ self.session.auth = auth['user'], auth['password']
+ # Test user validity
+ self.exec_rest_request('get', '')
+
+ self.user_lib_uri = 'libraries/{{}}/{}'.format(self.test_session_uri)
+ LOG.info("Login with test user: server='%s'", self._url)
+ # Read existing license
+ self.license_data['lic_id'] = tas_info['license']
+
+ # Tcl client init
+ self._tcl.connect(tas_info['ip'], *self.session.auth)
+
+ return self.session
+
+ def disconnect(self):
+ self.session = None
+ self._tcl.disconnect()
+
+ def terminate(self):
+ self._terminated.value = 1
+
+ def create_dmf(self, dmf):
+ if isinstance(dmf, dict):
+ dmf = [dmf]
+ for _dmf in dmf:
+ # Update DMF library name in traffic profile
+ _dmf['dmf'].update(
+ {'library': self.vnfd_helper.mgmt_interface['user']})
+ # Create DMF on Landslide server
+ self._tcl.create_dmf(_dmf)
+
+ def delete_dmf(self, dmf):
+ if isinstance(dmf, list):
+ for _dmf in dmf:
+ self._tcl.delete_dmf(_dmf)
+ else:
+ self._tcl.delete_dmf(dmf)
+
+ def create_suts(self, suts):
+ # Keep only supported keys in suts object
+ for _sut in suts:
+ sut_entry = {k: v for k, v in _sut.items()
+ if k not in {'phy', 'nextHop', 'role'}}
+ _response = self.exec_rest_request(
+ 'post', self.suts_uri, json_data=sut_entry,
+ logs=False, raise_exc=False)
+ if _response.status_code != self.REST_STATUS_CODES['CREATED']:
+ LOG.info(_response.reason) # Failed to create
+ _name = sut_entry.pop('name')
+ # Modify existing SUT
+ self.configure_sut(sut_name=_name, json_data=sut_entry)
+ else:
+ LOG.info("SUT created: %s", sut_entry)
+
+ def get_suts(self, suts_id=None):
+ if suts_id:
+ _suts = self.exec_rest_request(
+ 'get', '{}/{}'.format(self.suts_uri, suts_id)).json()
+ else:
+ _suts = self.get_response_params('get', self.suts_uri)
+
+ return _suts
+
+ def configure_sut(self, sut_name, json_data):
+ """ Modify information of specific SUTs
+
+ :param sut_name: name of existing SUT
+ :type sut_name: str
+ :param json_data: SUT settings
+ :type json_data: dict()
+ """
+ LOG.info("Modifying SUT information...")
+ _response = self.exec_rest_request('post',
+ self.suts_uri,
+ action={'name': sut_name},
+ json_data=json_data,
+ raise_exc=False)
+ if _response.status_code not in {self.REST_STATUS_CODES[x] for x in
+ {'OK', 'NO CHANGE'}}:
+ raise exceptions.RestApiError(_response.reason)
+
+ LOG.info("Modified SUT: %s", sut_name)
+
+ def delete_suts(self, suts_ids=None):
+ if not suts_ids:
+ _curr_suts = self.get_response_params('get', self.suts_uri)
+ suts_ids = [x['id'] for x in _curr_suts]
+ LOG.info("Deleting SUTs with following IDs: %s", suts_ids)
+ for _id in suts_ids:
+ self.exec_rest_request('delete',
+ '{}/{}'.format(self.suts_uri, _id))
+ LOG.info("\tDone for SUT id: %s", _id)
+
+ def _check_test_servers_state(self, test_servers_ids=None, delay=10,
+ timeout=300):
+ LOG.info("Waiting for related test servers state change to READY...")
+ # Wait on state change
+ _start_time = time.time()
+ while time.time() - _start_time < timeout:
+ ts_ids_not_ready = {x['id'] for x in
+ self.get_test_servers(test_servers_ids)
+ if x['state'] != 'READY'}
+ if ts_ids_not_ready == set():
+ break
+ time.sleep(delay)
+ else:
+ raise RuntimeError(
+ 'Test servers not in READY state after {} seconds.'.format(
+ timeout))
+
+ def create_test_servers(self, test_servers):
+ """ Create test servers
+
+ :param test_servers: input data for test servers creation
+ mandatory fields: managementIp
+ optional fields: name
+ :type test_servers: list(dict)
+ """
+ _ts_ids = []
+ for _ts in test_servers:
+ _msg = 'Created test server "%(name)s"'
+ _ts_ids.append(self._tcl.create_test_server(_ts))
+ if _ts.get('thread_model'):
+ _msg += ' in mode: "%(thread_model)s"'
+ LOG.info(_msg, _ts)
+
+ self._check_test_servers_state(_ts_ids)
+
+ def get_test_servers(self, test_server_ids=None):
+ if not test_server_ids: # Get all test servers info
+ _test_servers = self.exec_rest_request(
+ 'get', self.test_serv_uri).json()[self.test_serv_uri]
+ LOG.info("Current test servers configuration: %s", _test_servers)
+ return _test_servers
+
+ _test_servers = []
+ for _id in test_server_ids:
+ _test_servers.append(self.exec_rest_request(
+ 'get', '{}/{}'.format(self.test_serv_uri, _id)).json())
+ LOG.info("Current test servers configuration: %s", _test_servers)
+ return _test_servers
+
+ def configure_test_servers(self, action, json_data=None,
+ test_server_ids=None):
+ if not test_server_ids:
+ test_server_ids = [x['id'] for x in self.get_test_servers()]
+ elif isinstance(test_server_ids, int):
+ test_server_ids = [test_server_ids]
+ for _id in test_server_ids:
+ self.exec_rest_request('post',
+ '{}/{}'.format(self.test_serv_uri, _id),
+ action=action, json_data=json_data)
+ LOG.info("Test server (id: %s) configuration done: %s", _id,
+ action)
+ return test_server_ids
+
+ def delete_test_servers(self, test_servers_ids=None):
+ # Delete test servers
+ for _ts in self.get_test_servers(test_servers_ids):
+ self.exec_rest_request('delete', '{}/{}'.format(self.test_serv_uri,
+ _ts['id']))
+ LOG.info("Deleted test server: %s", _ts['name'])
+
+ def create_test_session(self, test_session):
+ # Use tcl client to create session
+ test_session['library'] = self._user_id
+
+ # If no traffic duration set in test case, use predefined default value
+ # in session profile
+ test_session['duration'] = self.scenario_helper.all_options.get(
+ 'traffic_duration',
+ test_session['duration'])
+
+ LOG.debug("Creating session='%s'", test_session['name'])
+ self._tcl.create_test_session(test_session)
+
+ def get_test_session(self, test_session_name=None):
+ if test_session_name:
+ uri = 'libraries/{}/{}/{}'.format(self._user_id,
+ self.test_session_uri,
+ test_session_name)
+ else:
+ uri = self.user_lib_uri.format(self._user_id)
+ _test_sessions = self.exec_rest_request('get', uri).json()
+ return _test_sessions
+
+ def configure_test_session(self, template_name, test_session):
+ # Override specified test session parameters
+ LOG.info('Update test session parameters: %s', test_session['name'])
+ test_session.update({'library': self._user_id})
+ return self.exec_rest_request(
+ method='post',
+ action={'action': 'overrideAndSaveAs'},
+ json_data=test_session,
+ resource='{}/{}'.format(self.user_lib_uri.format(self._user_id),
+ template_name))
+
+ def delete_test_session(self, test_session):
+ return self.exec_rest_request('delete', '{}/{}'.format(
+ self.user_lib_uri.format(self._user_id), test_session))
+
+ def create_running_tests(self, test_session_name):
+ r = self.exec_rest_request('post',
+ self.running_tests_uri,
+ json_data={'library': self._user_id,
+ 'name': test_session_name})
+ if r.status_code != self.REST_STATUS_CODES['CREATED']:
+ raise exceptions.RestApiError('Failed to start test session.')
+ self.run_id = r.json()['id']
+
+ def get_running_tests(self, running_test_id=None):
+ """Get JSON structure of specified running test entity
+
+ :param running_test_id: ID of created running test entity
+ :type running_test_id: int
+ :returns list: running tests entity
+ """
+ if not running_test_id:
+ running_test_id = ''
+ _res_name = '{}/{}'.format(self.running_tests_uri, running_test_id)
+ _res = self.exec_rest_request('get', _res_name, logs=False).json()
+ # If no run_id specified, skip top level key in response dict.
+ # Else return JSON as list
+ return _res.get('runningTests', [_res])
+
+ def delete_running_tests(self, running_test_id=None):
+ if not running_test_id:
+ running_test_id = ''
+ _res_name = '{}/{}'.format(self.running_tests_uri, running_test_id)
+ self.get_response_params('delete', _res_name)
+ LOG.info("Deleted running test with id: %s", running_test_id)
+
+ def _running_tests_action(self, running_test_id, action, json_data=None):
+ if not json_data:
+ json_data = {}
+ # Supported actions:
+ # 'stop', 'abort', 'continue', 'update', 'sendTcCommand', 'sendOdc'
+ _res_name = '{}/{}'.format(self.running_tests_uri, running_test_id)
+ self.exec_rest_request('post', _res_name, {'action': action},
+ json_data)
+ LOG.debug("Executed action: '%s' on running test id: %s", action,
+ running_test_id)
+
+ def stop_running_tests(self, running_test_id, json_data=None, force=False):
+ _action = 'abort' if force else 'stop'
+ self._running_tests_action(running_test_id, _action,
+ json_data=json_data)
+ LOG.info('Performed action: "%s" to test run with id: %s', _action,
+ running_test_id)
+
+ def check_running_test_state(self, run_id):
+ r = self.exec_rest_request('get',
+ '{}/{}'.format(self.running_tests_uri,
+ run_id))
+ return r.json().get("testStateOrStep")
+
+ def get_running_tests_results(self, run_id):
+ _res = self.exec_rest_request(
+ 'get',
+ '{}/{}/{}'.format(self.running_tests_uri,
+ run_id,
+ 'measurements')).json()
+ return _res
+
+ def _write_results(self, results):
+ # Avoid None value at test session start
+ _elapsed_time = results['elapsedTime'] if results['elapsedTime'] else 0
+
+ _res_tabs = results.get('tabs')
+ # Avoid parsing 'tab' dict key initially (missing or empty)
+ if not _res_tabs:
+ return
+
+ # Flatten nested dict holding Landslide KPIs of current test run
+ flat_kpis_dict = {}
+ for _tab, _kpis in six.iteritems(_res_tabs):
+ for _kpi, _value in six.iteritems(_kpis):
+ # Combine table name and KPI name using delimiter "::"
+ _key = '::'.join([_tab, _kpi])
+ try:
+ # Cast value from str to float
+ # Remove comma and/or measure units, e.g. "us"
+ flat_kpis_dict[_key] = float(
+ _value.split(' ')[0].replace(',', ''))
+ except ValueError: # E.g. if KPI represents datetime
+ pass
+ LOG.info("Polling test results of test run id: %s. Elapsed time: %s "
+ "seconds", self.run_id, _elapsed_time)
+ return flat_kpis_dict
+
+ def collect_kpi(self):
+ if 'COMPLETE' in self.check_running_test_state(self.run_id):
+ self._result.update({'done': True})
+ return self._result
+ _res = self.get_running_tests_results(self.run_id)
+ _kpis = self._write_results(_res)
+ if _kpis:
+ _kpis.update({'run_id': int(self.run_id)})
+ _kpis.update({'iteration': _res['iteration']})
+ self._result.update(_kpis)
+ return self._result
+
+
+class LandslideTclClient(object):
+ """Landslide TG TCL client class"""
+
+ DEFAULT_TEST_NODE = {
+ 'ethStatsEnabled': True,
+ 'forcedEthInterface': '',
+ 'innerVlanId': 0,
+ 'ip': '',
+ 'mac': '',
+ 'mtu': 1500,
+ 'nextHop': '',
+ 'numLinksOrNodes': 1,
+ 'numVlan': 1,
+ 'phy': '',
+ 'uniqueVlanAddr': False,
+ 'vlanDynamic': 0,
+ 'vlanId': 0,
+ 'vlanUserPriority': 0,
+ 'vlanTagType': 0
+ }
+
+ TEST_NODE_CMD = \
+ 'ls::create -TestNode-{} -under $p_ -Type "eth"' \
+ ' -Phy "{phy}" -Ip "{ip}" -NumLinksOrNodes {numLinksOrNodes}' \
+ ' -NextHop "{nextHop}" -Mac "{mac}" -MTU {mtu}' \
+ ' -ForcedEthInterface "{forcedEthInterface}"' \
+ ' -EthStatsEnabled {ethStatsEnabled}' \
+ ' -VlanId {vlanId} -VlanUserPriority {vlanUserPriority}' \
+ ' -NumVlan {numVlan} -UniqueVlanAddr {uniqueVlanAddr}' \
+ ';'
+
+ def __init__(self, tcl_handler, ts_context):
+ self.tcl_server_ip = None
+ self._user = None
+ self._library_id = None
+ self._basic_library_id = None
+ self._tcl = tcl_handler
+ self._ts_context = ts_context
+ self.ts_ids = set()
+
+ # Test types names expected in session profile, test case and pod files
+ self._tc_types = {"SGW_Nodal", "SGW_Node", "MME_Nodal", "PGW_Node",
+ "PCRF_Node"}
+
+ self._class_param_config_handler = {
+ "Array": self._configure_array_param,
+ "TestNode": self._configure_test_node_param,
+ "Sut": self._configure_sut_param,
+ "Dmf": self._configure_dmf_param
+ }
+
+ def connect(self, tcl_server_ip, username, password):
+ """ Connect to TCL server with username and password
+
+ :param tcl_server_ip: TCL server IP address
+ :type tcl_server_ip: str
+ :param username: existing username on TCL server
+ :type username: str
+ :param password: password related to username on TCL server
+ :type password: str
+ """
+ LOG.info("connect: server='%s' user='%s'", tcl_server_ip, username)
+ res = self._tcl.execute(
+ "ls::login {} {} {}".format(tcl_server_ip, username, password))
+ if 'java0x' not in res: # handle assignment reflects login success
+ raise exceptions.LandslideTclException(
+ "connect: login failed ='{}'.".format(res))
+ self._library_id = self._tcl.execute(
+ "ls::get [ls::query LibraryInfo -userLibraryName {}] -Id".format(
+ username))
+ self._basic_library_id = self._get_library_id('Basic')
+ self.tcl_server_ip = tcl_server_ip
+ self._user = username
+ LOG.debug("connect: user='%s' me='%s' basic='%s'", self._user,
+ self._library_id,
+ self._basic_library_id)
+
+ def disconnect(self):
+ """ Disconnect from TCL server. Drop TCL connection configuration """
+ LOG.info("disconnect: server='%s' user='%s'",
+ self.tcl_server_ip, self._user)
+ self._tcl.execute("ls::logout")
+ self.tcl_server_ip = None
+ self._user = None
+ self._library_id = None
+ self._basic_library_id = None
+
+ def _add_test_server(self, name, ip):
+ try:
+ # Check if test server exists with name equal to _ts_name
+ ts_id = int(self.resolve_test_server_name(name))
+ except ValueError:
+ # Such test server does not exist. Attempt to create it
+ ts_id = self._tcl.execute(
+ 'ls::perform AddTs -Name "{}" -Ip "{}"'.format(name, ip))
+ try:
+ int(ts_id)
+ except ValueError:
+ # Failed to create test server, e.g. limit reached
+ raise RuntimeError(
+ 'Failed to create test server: "{}". {}'.format(name,
+ ts_id))
+ return ts_id
+
+ def _update_license(self, name):
+ """ Setup/update test server license
+
+ :param name: test server name
+ :type name: str
+ """
+ # Retrieve current TsInfo configuration, result stored in handle "ts"
+ self._tcl.execute(
+ 'set ts [ls::retrieve TsInfo -Name "{}"]'.format(name))
+
+ # Set license ID, if it differs from current one, update test server
+ _curr_lic_id = self._tcl.execute('ls::get $ts -RequestedLicense')
+ if _curr_lic_id != self._ts_context.license_data['lic_id']:
+ self._tcl.execute('ls::config $ts -RequestedLicense {}'.format(
+ self._ts_context.license_data['lic_id']))
+ self._tcl.execute('ls::perform ModifyTs $ts')
+
+ def _set_thread_model(self, name, thread_model):
+ # Retrieve test server configuration, store it in handle "tsc"
+ _cfguser_password = self._ts_context.vnfd_helper['mgmt-interface'][
+ 'cfguser_password']
+ self._tcl.execute(
+ 'set tsc [ls::perform RetrieveTsConfiguration '
+ '-name "{}" {}]'.format(name, _cfguser_password))
+ # Configure ThreadModel, if it differs from current one
+ thread_model_map = {'Legacy': 'V0',
+ 'Max': 'V1',
+ 'Fireball': 'V1_FB3'}
+ _model = thread_model_map[thread_model]
+ _curr_model = self._tcl.execute('ls::get $tsc -ThreadModel')
+ if _curr_model != _model:
+ self._tcl.execute(
+ 'ls::config $tsc -ThreadModel "{}"'.format(_model))
+ self._tcl.execute(
+ 'ls::perform ApplyTsConfiguration $tsc {}'.format(
+ _cfguser_password))
+
+ def create_test_server(self, test_server):
+ _ts_thread_model = test_server.get('thread_model')
+ _ts_name = test_server['name']
+
+ ts_id = self._add_test_server(_ts_name, test_server['ip'])
+
+ self._update_license(_ts_name)
+
+ # Skip below code modifying thread_model if it is not defined
+ if _ts_thread_model:
+ self._set_thread_model(_ts_name, _ts_thread_model)
+
+ return ts_id
+
+ def create_test_session(self, test_session):
+ """ Create, configure and save Landslide test session object.
+
+ :param test_session: Landslide TestSession object
+ :type test_session: dict
+ """
+ LOG.info("create_test_session: name='%s'", test_session['name'])
+ self._tcl.execute('set test_ [ls::create TestSession]')
+ self._tcl.execute('ls::config $test_ -Library {} -Name "{}"'.format(
+ self._library_id, test_session['name']))
+ self._tcl.execute('ls::config $test_ -Description "{}"'.format(
+ test_session['description']))
+ if 'keywords' in test_session:
+ self._tcl.execute('ls::config $test_ -Keywords "{}"'.format(
+ test_session['keywords']))
+ if 'duration' in test_session:
+ self._tcl.execute('ls::config $test_ -Duration "{}"'.format(
+ test_session['duration']))
+ if 'iterations' in test_session:
+ self._tcl.execute('ls::config $test_ -Iterations "{}"'.format(
+ test_session['iterations']))
+ if 'reservePorts' in test_session:
+ if test_session['reservePorts'] == 'true':
+ self._tcl.execute('ls::config $test_ -Reserve Ports')
+
+ if 'reservations' in test_session:
+ for _reservation in test_session['reservations']:
+ self._configure_reservation(_reservation)
+
+ if 'reportOptions' in test_session:
+ self._configure_report_options(test_session['reportOptions'])
+
+ for _index, _group in enumerate(test_session['tsGroups']):
+ self._configure_ts_group(_group, _index)
+
+ self._save_test_session()
+
+ def create_dmf(self, dmf):
+ """ Create, configure and save Landslide Data Message Flow object.
+
+ :param dmf: Landslide Data Message Flow object
+ :type: dmf: dict
+ """
+ self._tcl.execute('set dmf_ [ls::create Dmf]')
+ _lib_id = self._get_library_id(dmf['dmf']['library'])
+ self._tcl.execute('ls::config $dmf_ -Library {} -Name "{}"'.format(
+ _lib_id,
+ dmf['dmf']['name']))
+ for _param_key in dmf:
+ if _param_key == 'dmf':
+ continue
+ _param_value = dmf[_param_key]
+ if isinstance(_param_value, dict):
+ # Configure complex parameter
+ _tcl_cmd = 'ls::config $dmf_'
+ for _sub_param_key in _param_value:
+ _sub_param_value = _param_value[_sub_param_key]
+ if isinstance(_sub_param_value, str):
+ _tcl_cmd += ' -{} "{}"'.format(_sub_param_key,
+ _sub_param_value)
+ else:
+ _tcl_cmd += ' -{} {}'.format(_sub_param_key,
+ _sub_param_value)
+
+ self._tcl.execute(_tcl_cmd)
+ else:
+ # Configure simple parameter
+ if isinstance(_param_value, str):
+ self._tcl.execute(
+ 'ls::config $dmf_ -{} "{}"'.format(_param_key,
+ _param_value))
+ else:
+ self._tcl.execute(
+ 'ls::config $dmf_ -{} {}'.format(_param_key,
+ _param_value))
+ self._save_dmf()
+
+ def configure_dmf(self, dmf):
+ # Use create to reconfigure and overwrite existing dmf
+ self.create_dmf(dmf)
+
+ def delete_dmf(self, dmf):
+ raise NotImplementedError
+
+ def _save_dmf(self):
+ # Call 'Validate' to set default values for missing parameters
+ res = self._tcl.execute('ls::perform Validate -Dmf $dmf_')
+ if res == 'Invalid':
+ res = self._tcl.execute('ls::get $dmf_ -ErrorsAndWarnings')
+ LOG.error("_save_dmf: %s", res)
+ raise exceptions.LandslideTclException("_save_dmf: {}".format(res))
+ else:
+ res = self._tcl.execute('ls::save $dmf_ -overwrite')
+ LOG.debug("_save_dmf: result (%s)", res)
+
+ def _configure_report_options(self, options):
+ for _option_key in options:
+ _option_value = options[_option_key]
+ if _option_key == 'format':
+ _format = 0
+ if _option_value == 'CSV':
+ _format = 1
+ self._tcl.execute(
+ 'ls::config $test_.ReportOptions -Format {} '
+ '-Ts -3 -Tc -3'.format(_format))
+ else:
+ self._tcl.execute(
+ 'ls::config $test_.ReportOptions -{} {}'.format(
+ _option_key,
+ _option_value))
+
+ def _configure_ts_group(self, ts_group, ts_group_index):
+ try:
+ _ts_id = int(self.resolve_test_server_name(ts_group['tsId']))
+ except ValueError:
+ raise RuntimeError('Test server name "{}" does not exist.'.format(
+ ts_group['tsId']))
+ if _ts_id not in self.ts_ids:
+ self._tcl.execute(
+ 'set tss_ [ls::create TsGroup -under $test_ -tsId {} ]'.format(
+ _ts_id))
+ self.ts_ids.add(_ts_id)
+ for _case in ts_group.get('testCases', []):
+ self._configure_tc_type(_case, ts_group_index)
+
+ self._configure_preresolved_arp(ts_group.get('preResolvedArpAddress'))
+
+ def _configure_tc_type(self, tc, ts_group_index):
+ if tc['type'] not in self._tc_types:
+ raise RuntimeError('Test type {} not supported.'.format(
+ tc['type']))
+ tc['type'] = tc['type'].replace('_', ' ')
+ res = self._tcl.execute(
+ 'set tc_ [ls::retrieve testcase -libraryId {0} "{1}"]'.format(
+ self._basic_library_id, tc['type']))
+ if 'Invalid' in res:
+ raise RuntimeError('Test type {} not found in "Basic" '
+ 'library.'.format(tc['type']))
+ self._tcl.execute(
+ 'ls::config $test_.TsGroup({}) -children-Tc $tc_'.format(
+ ts_group_index))
+ self._tcl.execute('ls::config $tc_ -Library {0} -Name "{1}"'.format(
+ self._basic_library_id, tc['name']))
+ self._tcl.execute(
+ 'ls::config $tc_ -Description "{}"'.format(tc['type']))
+ self._tcl.execute(
+ 'ls::config $tc_ -Keywords "GTP LTE {}"'.format(tc['type']))
+ if 'linked' in tc:
+ self._tcl.execute(
+ 'ls::config $tc_ -Linked {}'.format(tc['linked']))
+ if 'AssociatedPhys' in tc:
+ self._tcl.execute('ls::config $tc_ -AssociatedPhys "{}"'.format(
+ tc['AssociatedPhys']))
+ if 'parameters' in tc:
+ self._configure_parameters(tc['parameters'])
+
+ def _configure_parameters(self, params):
+ self._tcl.execute('set p_ [ls::get $tc_ -children-Parameters(0)]')
+ for _param_key in sorted(params):
+ _param_value = params[_param_key]
+ if isinstance(_param_value, dict):
+ # Configure complex parameter
+ if _param_value['class'] in self._class_param_config_handler:
+ self._class_param_config_handler[_param_value['class']](
+ _param_key,
+ _param_value)
+ else:
+ # Configure simple parameter
+ self._tcl.execute(
+ 'ls::create {} -under $p_ -Value "{}"'.format(
+ _param_key,
+ _param_value))
+
+ def _configure_array_param(self, name, params):
+ self._tcl.execute('ls::create -Array-{} -under $p_ ;'.format(name))
+ for param in params['array']:
+ self._tcl.execute(
+ 'ls::create ArrayItem -under $p_.{} -Value "{}"'.format(name,
+ param))
+
+ def _configure_test_node_param(self, name, params):
+ _params = self.DEFAULT_TEST_NODE
+ _params.update(params)
+
+ # TCL command expects lower case 'true' or 'false'
+ _params['ethStatsEnabled'] = str(_params['ethStatsEnabled']).lower()
+ _params['uniqueVlanAddr'] = str(_params['uniqueVlanAddr']).lower()
+
+ cmd = self.TEST_NODE_CMD.format(name, **_params)
+ self._tcl.execute(cmd)
+
+ def _configure_sut_param(self, name, params):
+ self._tcl.execute(
+ 'ls::create -Sut-{} -under $p_ -Name "{}";'.format(name,
+ params['name']))
+
+ def _configure_dmf_param(self, name, params):
+ self._tcl.execute('ls::create -Dmf-{} -under $p_ ;'.format(name))
+
+ for _flow_index, _flow in enumerate(params['mainflows']):
+ _lib_id = self._get_library_id(_flow['library'])
+ self._tcl.execute(
+ 'ls::perform AddDmfMainflow $p_.Dmf {} "{}"'.format(
+ _lib_id,
+ _flow['name']))
+
+ if not params.get('instanceGroups'):
+ return
+
+ _instance_group = params['instanceGroups'][_flow_index]
+
+ # Traffic Mixer parameters handling
+ for _key in ['mixType', 'rate']:
+ if _key in _instance_group:
+ self._tcl.execute(
+ 'ls::config $p_.Dmf.InstanceGroup({}) -{} {}'.format(
+ _flow_index, _key, _instance_group[_key]))
+
+ # Assignments parameters handling
+ for _row_id, _row in enumerate(_instance_group.get('rows', [])):
+ self._tcl.execute(
+ 'ls::config $p_.Dmf.InstanceGroup({}).Row({}) -Node {} '
+ '-OverridePort {} -ClientPort {} -Context {} -Role {} '
+ '-PreferredTransport {} -RatingGroup {} '
+ '-ServiceID {}'.format(
+ _flow_index, _row_id, _row['node'],
+ _row['overridePort'], _row['clientPort'],
+ _row['context'], _row['role'], _row['transport'],
+ _row['ratingGroup'], _row['serviceId']))
+
+ def _configure_reservation(self, reservation):
+ _ts_id = self.resolve_test_server_name(reservation['tsId'])
+ self._tcl.execute(
+ 'set reservation_ [ls::create Reservation -under $test_]')
+ self._tcl.execute(
+ 'ls::config $reservation_ -TsIndex {} -TsId {} '
+ '-TsName "{}"'.format(reservation['tsIndex'],
+ _ts_id,
+ reservation['tsName']))
+ for _subnet in reservation['phySubnets']:
+ self._tcl.execute(
+ 'set physubnet_ [ls::create PhySubnet -under $reservation_]')
+ self._tcl.execute(
+ 'ls::config $physubnet_ -Name "{}" -Base "{}" -Mask "{}" '
+ '-NumIps {}'.format(_subnet['name'], _subnet['base'],
+ _subnet['mask'], _subnet['numIps']))
+
+ def _configure_preresolved_arp(self, pre_resolved_arp):
+ if not pre_resolved_arp: # Pre-resolved ARP configuration not found
+ return
+ for _entry in pre_resolved_arp:
+ # TsGroup handle name should correspond in _configure_ts_group()
+ self._tcl.execute(
+ 'ls::create PreResolvedArpAddress -under $tss_ '
+ '-StartingAddress "{StartingAddress}" '
+ '-NumNodes {NumNodes}'.format(**_entry))
+
+ def delete_test_session(self, test_session):
+ raise NotImplementedError
+
+ def _save_test_session(self):
+ # Call 'Validate' to set default values for missing parameters
+ res = self._tcl.execute('ls::perform Validate -TestSession $test_')
+ if res == 'Invalid':
+ res = self._tcl.execute('ls::get $test_ -ErrorsAndWarnings')
+ raise exceptions.LandslideTclException(
+ "Test session validation failed. Server response: {}".format(
+ res))
+ else:
+ self._tcl.execute('ls::save $test_ -overwrite')
+ LOG.debug("Test session saved successfully.")
+
+ def _get_library_id(self, library):
+ _library_id = self._tcl.execute(
+ "ls::get [ls::query LibraryInfo -systemLibraryName {}] -Id".format(
+ library))
+ try:
+ int(_library_id)
+ return _library_id
+ except ValueError:
+ pass
+
+ _library_id = self._tcl.execute(
+ "ls::get [ls::query LibraryInfo -userLibraryName {}] -Id".format(
+ library))
+ try:
+ int(_library_id)
+ except ValueError:
+ LOG.error("_get_library_id: library='%s' not found.", library)
+ raise exceptions.LandslideTclException(
+ "_get_library_id: library='{}' not found.".format(
+ library))
+
+ return _library_id
+
+ def resolve_test_server_name(self, ts_name):
+ return self._tcl.execute("ls::query TsId {}".format(ts_name))
+
+
+class LsTclHandler(object):
+ """Landslide TCL Handler class"""
+
+ LS_OK = "ls_ok"
+ JRE_PATH = net_serv_utils.get_nsb_option('jre_path_i386')
+
+ def __init__(self):
+ self.tcl_cmds = {}
+ self._ls = LsApi(jre_path=self.JRE_PATH)
+ self._ls.tcl(
+ "ls::config ApiOptions -NoReturnSuccessResponseString '{}'".format(
+ self.LS_OK))
+
+ def execute(self, command):
+ res = self._ls.tcl(command)
+ self.tcl_cmds[command] = res
+ return res
diff --git a/yardstick/network_services/vnf_generic/vnf/tg_rfc2544_ixia.py b/yardstick/network_services/vnf_generic/vnf/tg_rfc2544_ixia.py
index 94ab06980..89f8194c0 100644
--- a/yardstick/network_services/vnf_generic/vnf/tg_rfc2544_ixia.py
+++ b/yardstick/network_services/vnf_generic/vnf/tg_rfc2544_ixia.py
@@ -96,7 +96,10 @@ class IxiaResourceHelper(ClientResourceHelper):
"""Initialize the IXIA IxNetwork client and configure the server"""
self.client.clear_config()
self.client.assign_ports()
- self.client.create_traffic_model()
+ vports = self.client.get_vports()
+ uplink_vports = vports[::2]
+ downlink_vports = vports[1::2]
+ self.client.create_traffic_model(uplink_vports, downlink_vports)
def run_traffic(self, traffic_profile, *args):
if self._terminated.value:
@@ -104,6 +107,7 @@ class IxiaResourceHelper(ClientResourceHelper):
min_tol = self.rfc_helper.tolerance_low
max_tol = self.rfc_helper.tolerance_high
+ precision = self.rfc_helper.tolerance_precision
default = "00:00:00:00:00:00"
self._build_ports()
@@ -131,7 +135,7 @@ class IxiaResourceHelper(ClientResourceHelper):
traffic_profile.config.duration)
completed, samples = traffic_profile.get_drop_percentage(
- samples, min_tol, max_tol, first_run=first_run)
+ samples, min_tol, max_tol, precision, first_run=first_run)
self._queue.put(samples)
if completed:
diff --git a/yardstick/tests/functional/common/test_packages.py b/yardstick/tests/functional/common/test_packages.py
index 5dead4e55..14de46bcf 100644
--- a/yardstick/tests/functional/common/test_packages.py
+++ b/yardstick/tests/functional/common/test_packages.py
@@ -39,16 +39,21 @@ class PipPackagesTestCase(base.BaseFunctionalTestCase):
utils.execute_command('sudo rm -rf %s' % self.TMP_FOLDER)
def _remove_package(self, package):
- os.system('%s pip uninstall %s -y' % (self.PYTHONPATH, package))
+ os.system('%s python -m pip uninstall %s -y' %
+ (self.PYTHONPATH, package))
def _list_packages(self):
pip_list_regex = re.compile(
r"(?P<name>[\w\.-]+) \((?P<version>[\w\d_\.\-]+),*.*\)")
+ pip_list_regex_18 = re.compile(
+ r"(?P<name>[\w\.-]+)[\s]+(?P<version>[\w\d_\.\-]+),*.*")
pkg_dict = {}
- pkgs = utils.execute_command('pip list',
+ pkgs = utils.execute_command('python -m pip list',
env={'PYTHONPATH': self.TMP_FOLDER})
for line in pkgs:
match = pip_list_regex.match(line)
+ if not match:
+ match = pip_list_regex_18.match(line)
if match and match.group('name'):
pkg_dict[match.group('name')] = match.group('version')
return pkg_dict
diff --git a/yardstick/tests/unit/benchmark/runner/test_arithmetic.py b/yardstick/tests/unit/benchmark/runner/test_arithmetic.py
index 7b1e1e976..35d935cd5 100644
--- a/yardstick/tests/unit/benchmark/runner/test_arithmetic.py
+++ b/yardstick/tests/unit/benchmark/runner/test_arithmetic.py
@@ -14,16 +14,26 @@ import os
import time
from yardstick.benchmark.runners import arithmetic
+from yardstick.common import exceptions as y_exc
class ArithmeticRunnerTest(unittest.TestCase):
class MyMethod(object):
- def __init__(self):
+ SLA_VALIDATION_ERROR_SIDE_EFFECT = 1
+ BROAD_EXCEPTION_SIDE_EFFECT = 2
+
+ def __init__(self, side_effect=0):
self.count = 101
+ self.side_effect = side_effect
def __call__(self, data):
self.count += 1
data['my_key'] = self.count
+ if self.side_effect == self.SLA_VALIDATION_ERROR_SIDE_EFFECT:
+ raise y_exc.SLAValidationError(case_name='My Case',
+ error_msg='my error message')
+ elif self.side_effect == self.BROAD_EXCEPTION_SIDE_EFFECT:
+ raise y_exc.YardstickException
return self.count
def setUp(self):
@@ -218,3 +228,219 @@ class ArithmeticRunnerTest(unittest.TestCase):
self.assertEqual(result['sequence'], count)
self.assertGreater(result['timestamp'], timestamp)
timestamp = result['timestamp']
+
+ def test__worker_process_except_sla_validation_error_no_sla_cfg(self):
+ self.benchmark.my_method = mock.Mock(
+ side_effect=y_exc.SLAValidationError)
+
+ arithmetic._worker_process(mock.Mock(), self.benchmark_cls,
+ 'my_method', self.scenario_cfg, {},
+ multiprocessing.Event(), mock.Mock())
+
+ self._assert_defaults__worker_process_run_setup_and_teardown()
+ self.assertEqual(self.benchmark.my_method.call_count, 8)
+ self.assertDictEqual(self.scenario_cfg['options'],
+ {'stride': 128, 'size': 2000})
+
+ def test__worker_process_output_on_sla_validation_error_no_sla_cfg(self):
+ self.benchmark.my_method = self.MyMethod(
+ side_effect=self.MyMethod.SLA_VALIDATION_ERROR_SIDE_EFFECT)
+
+ queue = multiprocessing.Queue()
+ output_queue = multiprocessing.Queue()
+ timestamp = time.time()
+ arithmetic._worker_process(queue, self.benchmark_cls, 'my_method',
+ self.scenario_cfg, {},
+ multiprocessing.Event(), output_queue)
+ time.sleep(0.01)
+
+ self._assert_defaults__worker_process_run_setup_and_teardown()
+ self.assertEqual(self.benchmark.my_method.count, 109)
+ self.assertDictEqual(self.scenario_cfg['options'],
+ {'stride': 128, 'size': 2000})
+ count = 0
+ while not queue.empty():
+ count += 1
+ result = queue.get()
+ self.assertEqual(result['errors'], '')
+ self.assertEqual(result['data'], {'my_key': count + 101})
+ self.assertEqual(result['sequence'], count)
+ self.assertGreater(result['timestamp'], timestamp)
+ timestamp = result['timestamp']
+ self.assertEqual(count, 8)
+ self.assertTrue(output_queue.empty())
+
+ def test__worker_process_except_sla_validation_error_sla_cfg_monitor(self):
+ self.scenario_cfg['sla'] = {'action': 'monitor'}
+ self.benchmark.my_method = mock.Mock(
+ side_effect=y_exc.SLAValidationError)
+
+ arithmetic._worker_process(mock.Mock(), self.benchmark_cls,
+ 'my_method', self.scenario_cfg, {},
+ multiprocessing.Event(), mock.Mock())
+
+ self._assert_defaults__worker_process_run_setup_and_teardown()
+ self.assertEqual(self.benchmark.my_method.call_count, 8)
+ self.assertDictEqual(self.scenario_cfg['options'],
+ {'stride': 128, 'size': 2000})
+
+ def test__worker_process_output_sla_validation_error_sla_cfg_monitor(self):
+ self.scenario_cfg['sla'] = {'action': 'monitor'}
+ self.benchmark.my_method = self.MyMethod(
+ side_effect=self.MyMethod.SLA_VALIDATION_ERROR_SIDE_EFFECT)
+
+ queue = multiprocessing.Queue()
+ output_queue = multiprocessing.Queue()
+ timestamp = time.time()
+ arithmetic._worker_process(queue, self.benchmark_cls, 'my_method',
+ self.scenario_cfg, {},
+ multiprocessing.Event(), output_queue)
+ time.sleep(0.01)
+
+ self._assert_defaults__worker_process_run_setup_and_teardown()
+ self.assertEqual(self.benchmark.my_method.count, 109)
+ self.assertDictEqual(self.scenario_cfg['options'],
+ {'stride': 128, 'size': 2000})
+ count = 0
+ while not queue.empty():
+ count += 1
+ result = queue.get()
+ self.assertEqual(result['errors'],
+ ('My Case SLA validation failed. '
+ 'Error: my error message',))
+ self.assertEqual(result['data'], {'my_key': count + 101})
+ self.assertEqual(result['sequence'], count)
+ self.assertGreater(result['timestamp'], timestamp)
+ timestamp = result['timestamp']
+ self.assertEqual(count, 8)
+ self.assertTrue(output_queue.empty())
+
+ def test__worker_process_raise_sla_validation_error_sla_cfg_assert(self):
+ self.scenario_cfg['sla'] = {'action': 'assert'}
+ self.benchmark.my_method = mock.Mock(
+ side_effect=y_exc.SLAValidationError)
+
+ with self.assertRaises(y_exc.SLAValidationError):
+ arithmetic._worker_process(mock.Mock(), self.benchmark_cls,
+ 'my_method', self.scenario_cfg, {},
+ multiprocessing.Event(), mock.Mock())
+ self.benchmark_cls.assert_called_once_with(self.scenario_cfg, {})
+ self.benchmark.my_method.assert_called_once()
+ self.benchmark.setup.assert_called_once()
+ self.benchmark.teardown.assert_not_called()
+
+ def test__worker_process_output_sla_validation_error_sla_cfg_assert(self):
+ self.scenario_cfg['sla'] = {'action': 'assert'}
+ self.benchmark.my_method = self.MyMethod(
+ side_effect=self.MyMethod.SLA_VALIDATION_ERROR_SIDE_EFFECT)
+
+ queue = multiprocessing.Queue()
+ output_queue = multiprocessing.Queue()
+ with self.assertRaisesRegexp(
+ y_exc.SLAValidationError,
+ 'My Case SLA validation failed. Error: my error message'):
+ arithmetic._worker_process(queue, self.benchmark_cls, 'my_method',
+ self.scenario_cfg, {},
+ multiprocessing.Event(), output_queue)
+ time.sleep(0.01)
+
+ self.benchmark_cls.assert_called_once_with(self.scenario_cfg, {})
+ self.benchmark.setup.assert_called_once()
+ self.assertEqual(self.benchmark.my_method.count, 102)
+ self.benchmark.teardown.assert_not_called()
+ self.assertTrue(queue.empty())
+ self.assertTrue(output_queue.empty())
+
+ def test__worker_process_broad_exception_no_sla_cfg_early_exit(self):
+ self.benchmark.my_method = mock.Mock(
+ side_effect=y_exc.YardstickException)
+
+ arithmetic._worker_process(mock.Mock(), self.benchmark_cls,
+ 'my_method', self.scenario_cfg, {},
+ multiprocessing.Event(), mock.Mock())
+
+ self._assert_defaults__worker_process_run_setup_and_teardown()
+ self.benchmark.my_method.assert_called_once()
+ self.assertDictEqual(self.scenario_cfg['options'],
+ {'stride': 64, 'size': 500})
+
+ def test__worker_process_output_on_broad_exception_no_sla_cfg(self):
+ self.benchmark.my_method = self.MyMethod(
+ side_effect=self.MyMethod.BROAD_EXCEPTION_SIDE_EFFECT)
+
+ queue = multiprocessing.Queue()
+ output_queue = multiprocessing.Queue()
+ timestamp = time.time()
+ arithmetic._worker_process(queue, self.benchmark_cls, 'my_method',
+ self.scenario_cfg, {},
+ multiprocessing.Event(), output_queue)
+ time.sleep(0.01)
+
+ self._assert_defaults__worker_process_run_setup_and_teardown()
+ self.assertEqual(self.benchmark.my_method.count, 102)
+ self.assertDictEqual(self.scenario_cfg['options'],
+ {'stride': 64, 'size': 500})
+ self.assertEqual(queue.qsize(), 1)
+ result = queue.get()
+ self.assertGreater(result['timestamp'], timestamp)
+ self.assertEqual(result['data'], {'my_key': 102})
+ self.assertRegexpMatches(
+ result['errors'],
+ 'YardstickException: An unknown exception occurred.')
+ self.assertEqual(result['sequence'], 1)
+ self.assertTrue(output_queue.empty())
+
+ def test__worker_process_broad_exception_sla_cfg_not_none(self):
+ self.scenario_cfg['sla'] = {'action': 'some action'}
+ self.benchmark.my_method = mock.Mock(
+ side_effect=y_exc.YardstickException)
+
+ arithmetic._worker_process(mock.Mock(), self.benchmark_cls,
+ 'my_method', self.scenario_cfg, {},
+ multiprocessing.Event(), mock.Mock())
+
+ self._assert_defaults__worker_process_run_setup_and_teardown()
+ self.assertEqual(self.benchmark.my_method.call_count, 8)
+ self.assertDictEqual(self.scenario_cfg['options'],
+ {'stride': 128, 'size': 2000})
+
+ def test__worker_process_output_on_broad_exception_sla_cfg_not_none(self):
+ self.scenario_cfg['sla'] = {'action': 'some action'}
+ self.benchmark.my_method = self.MyMethod(
+ side_effect=self.MyMethod.BROAD_EXCEPTION_SIDE_EFFECT)
+
+ queue = multiprocessing.Queue()
+ output_queue = multiprocessing.Queue()
+ timestamp = time.time()
+ arithmetic._worker_process(queue, self.benchmark_cls, 'my_method',
+ self.scenario_cfg, {},
+ multiprocessing.Event(), output_queue)
+ time.sleep(0.01)
+
+ self._assert_defaults__worker_process_run_setup_and_teardown()
+ self.assertEqual(self.benchmark.my_method.count, 109)
+ self.assertDictEqual(self.scenario_cfg['options'],
+ {'stride': 128, 'size': 2000})
+ self.assertTrue(output_queue.empty())
+ count = 0
+ while not queue.empty():
+ count += 1
+ result = queue.get()
+ self.assertGreater(result['timestamp'], timestamp)
+ self.assertEqual(result['data'], {'my_key': count + 101})
+ self.assertRegexpMatches(
+ result['errors'],
+ 'YardstickException: An unknown exception occurred.')
+ self.assertEqual(result['sequence'], count)
+
+ def test__worker_process_benchmark_teardown_on_broad_exception(self):
+ self.benchmark.teardown = mock.Mock(
+ side_effect=y_exc.YardstickException)
+
+ with self.assertRaises(SystemExit) as raised:
+ arithmetic._worker_process(mock.Mock(), self.benchmark_cls,
+ 'my_method', self.scenario_cfg, {},
+ multiprocessing.Event(), mock.Mock())
+ self.assertEqual(raised.exception.code, 1)
+ self._assert_defaults__worker_process_run_setup_and_teardown()
+ self.assertEqual(self.benchmark.my_method.call_count, 8)
diff --git a/yardstick/tests/unit/benchmark/runner/test_duration.py b/yardstick/tests/unit/benchmark/runner/test_duration.py
index d4801ef2c..fa47e96bf 100644
--- a/yardstick/tests/unit/benchmark/runner/test_duration.py
+++ b/yardstick/tests/unit/benchmark/runner/test_duration.py
@@ -97,9 +97,9 @@ class DurationRunnerTest(unittest.TestCase):
multiprocessing.Event(), mock.Mock())
self._assert_defaults__worker_run_setup_and_teardown()
- self.assertGreater(self.benchmark.pre_run_wait_time.call_count, 2)
- self.assertGreater(self.benchmark.my_method.call_count, 2)
- self.assertGreater(self.benchmark.post_run_wait_time.call_count, 2)
+ self.assertGreater(self.benchmark.pre_run_wait_time.call_count, 0)
+ self.assertGreater(self.benchmark.my_method.call_count, 0)
+ self.assertGreater(self.benchmark.post_run_wait_time.call_count, 0)
def test__worker_process_called_without_cfg(self):
scenario_cfg = {'runner': {}}
@@ -140,9 +140,9 @@ class DurationRunnerTest(unittest.TestCase):
time.sleep(0.1)
self._assert_defaults__worker_run_setup_and_teardown()
- self.assertGreater(self.benchmark.pre_run_wait_time.call_count, 2)
- self.assertGreater(self.benchmark.my_method.count, 103)
- self.assertGreater(self.benchmark.post_run_wait_time.call_count, 2)
+ self.assertGreater(self.benchmark.pre_run_wait_time.call_count, 0)
+ self.assertGreater(self.benchmark.my_method.count, 1)
+ self.assertGreater(self.benchmark.post_run_wait_time.call_count, 0)
count = 101
while not output_queue.empty():
@@ -181,9 +181,9 @@ class DurationRunnerTest(unittest.TestCase):
time.sleep(0.1)
self._assert_defaults__worker_run_setup_and_teardown()
- self.assertGreater(self.benchmark.pre_run_wait_time.call_count, 2)
- self.assertGreater(self.benchmark.my_method.count, 103)
- self.assertGreater(self.benchmark.post_run_wait_time.call_count, 2)
+ self.assertGreater(self.benchmark.pre_run_wait_time.call_count, 0)
+ self.assertGreater(self.benchmark.my_method.count, 1)
+ self.assertGreater(self.benchmark.post_run_wait_time.call_count, 0)
count = 0
while not queue.empty():
diff --git a/yardstick/tests/unit/benchmark/runner/test_proxduration.py b/yardstick/tests/unit/benchmark/runner/test_proxduration.py
index 3299c5b05..056195fd3 100644
--- a/yardstick/tests/unit/benchmark/runner/test_proxduration.py
+++ b/yardstick/tests/unit/benchmark/runner/test_proxduration.py
@@ -97,7 +97,7 @@ class ProxDurationRunnerTest(unittest.TestCase):
{}, multiprocessing.Event(), mock.Mock())
self._assert_defaults__worker_run_setup_and_teardown()
- self.assertGreater(self.benchmark.my_method.call_count, 2)
+ self.assertGreater(self.benchmark.my_method.call_count, 0)
def test__worker_process_called_without_cfg(self):
scenario_cfg = {'runner': {}}
diff --git a/yardstick/tests/unit/benchmark/scenarios/compute/test_lmbench.py b/yardstick/tests/unit/benchmark/scenarios/compute/test_lmbench.py
index c4ac347f4..ba63e5f9e 100644
--- a/yardstick/tests/unit/benchmark/scenarios/compute/test_lmbench.py
+++ b/yardstick/tests/unit/benchmark/scenarios/compute/test_lmbench.py
@@ -6,11 +6,6 @@
# which accompanies this distribution, and is available at
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
-
-# Unittest for yardstick.benchmark.scenarios.compute.lmbench.Lmbench
-
-from __future__ import absolute_import
-
import unittest
import mock
@@ -18,13 +13,9 @@ from oslo_serialization import jsonutils
from yardstick.benchmark.scenarios.compute import lmbench
from yardstick.common import exceptions as y_exc
+from yardstick import ssh
-# pylint: disable=unused-argument
-# disable this for now because I keep forgetting mock patch arg ordering
-
-
-@mock.patch('yardstick.benchmark.scenarios.compute.lmbench.ssh')
class LmbenchTestCase(unittest.TestCase):
def setUp(self):
@@ -38,16 +29,23 @@ class LmbenchTestCase(unittest.TestCase):
self.result = {}
- def test_successful_setup(self, mock_ssh):
+ self._mock_ssh = mock.patch.object(ssh, 'SSH')
+ self.mock_ssh = self._mock_ssh.start()
+ self.addCleanup(self._stop_mocks)
+
+ def _stop_mocks(self):
+ self._mock_ssh.stop()
+
+ def test_successful_setup(self):
l = lmbench.Lmbench({}, self.ctx)
- mock_ssh.SSH.from_node().execute.return_value = (0, '', '')
+ self.mock_ssh.from_node().execute.return_value = (0, '', '')
l.setup()
self.assertIsNotNone(l.client)
self.assertTrue(l.setup_done)
- def test_unsuccessful_unknown_type_run(self, mock_ssh):
+ def test_unsuccessful_unknown_type_run(self):
options = {
"test_type": "foo"
@@ -58,7 +56,7 @@ class LmbenchTestCase(unittest.TestCase):
self.assertRaises(RuntimeError, l.run, self.result)
- def test_successful_latency_run_no_sla(self, mock_ssh):
+ def test_successful_latency_run_no_sla(self):
options = {
"test_type": "latency",
@@ -69,12 +67,12 @@ class LmbenchTestCase(unittest.TestCase):
l = lmbench.Lmbench(args, self.ctx)
sample_output = '[{"latency": 4.944, "size": 0.00049}]'
- mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '')
+ self.mock_ssh.from_node().execute.return_value = (0, sample_output, '')
l.run(self.result)
expected_result = {"latencies0.latency": 4.944, "latencies0.size": 0.00049}
self.assertEqual(self.result, expected_result)
- def test_successful_bandwidth_run_no_sla(self, mock_ssh):
+ def test_successful_bandwidth_run_no_sla(self):
options = {
"test_type": "bandwidth",
@@ -86,12 +84,12 @@ class LmbenchTestCase(unittest.TestCase):
l = lmbench.Lmbench(args, self.ctx)
sample_output = '{"size(MB)": 0.262144, "bandwidth(MBps)": 11025.5}'
- mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '')
+ self.mock_ssh.from_node().execute.return_value = (0, sample_output, '')
l.run(self.result)
expected_result = jsonutils.loads(sample_output)
self.assertEqual(self.result, expected_result)
- def test_successful_latency_run_sla(self, mock_ssh):
+ def test_successful_latency_run_sla(self):
options = {
"test_type": "latency",
@@ -105,12 +103,12 @@ class LmbenchTestCase(unittest.TestCase):
l = lmbench.Lmbench(args, self.ctx)
sample_output = '[{"latency": 4.944, "size": 0.00049}]'
- mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '')
+ self.mock_ssh.from_node().execute.return_value = (0, sample_output, '')
l.run(self.result)
expected_result = {"latencies0.latency": 4.944, "latencies0.size": 0.00049}
self.assertEqual(self.result, expected_result)
- def test_successful_bandwidth_run_sla(self, mock_ssh):
+ def test_successful_bandwidth_run_sla(self):
options = {
"test_type": "bandwidth",
@@ -125,12 +123,12 @@ class LmbenchTestCase(unittest.TestCase):
l = lmbench.Lmbench(args, self.ctx)
sample_output = '{"size(MB)": 0.262144, "bandwidth(MBps)": 11025.5}'
- mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '')
+ self.mock_ssh.from_node().execute.return_value = (0, sample_output, '')
l.run(self.result)
expected_result = jsonutils.loads(sample_output)
self.assertEqual(self.result, expected_result)
- def test_unsuccessful_latency_run_sla(self, mock_ssh):
+ def test_unsuccessful_latency_run_sla(self):
options = {
"test_type": "latency",
@@ -144,10 +142,10 @@ class LmbenchTestCase(unittest.TestCase):
l = lmbench.Lmbench(args, self.ctx)
sample_output = '[{"latency": 37.5, "size": 0.00049}]'
- mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '')
+ self.mock_ssh.from_node().execute.return_value = (0, sample_output, '')
self.assertRaises(y_exc.SLAValidationError, l.run, self.result)
- def test_unsuccessful_bandwidth_run_sla(self, mock_ssh):
+ def test_unsuccessful_bandwidth_run_sla(self):
options = {
"test_type": "bandwidth",
@@ -162,10 +160,10 @@ class LmbenchTestCase(unittest.TestCase):
l = lmbench.Lmbench(args, self.ctx)
sample_output = '{"size(MB)": 0.262144, "bandwidth(MBps)": 9925.5}'
- mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '')
+ self.mock_ssh.from_node().execute.return_value = (0, sample_output, '')
self.assertRaises(y_exc.SLAValidationError, l.run, self.result)
- def test_successful_latency_for_cache_run_sla(self, mock_ssh):
+ def test_successful_latency_for_cache_run_sla(self):
options = {
"test_type": "latency_for_cache",
@@ -179,16 +177,16 @@ class LmbenchTestCase(unittest.TestCase):
l = lmbench.Lmbench(args, self.ctx)
sample_output = "{\"L1cache\": 1.6}"
- mock_ssh.SSH.from_node().execute.return_value = (0, sample_output, '')
+ self.mock_ssh.from_node().execute.return_value = (0, sample_output, '')
l.run(self.result)
expected_result = jsonutils.loads(sample_output)
self.assertEqual(self.result, expected_result)
- def test_unsuccessful_script_error(self, mock_ssh):
+ def test_unsuccessful_script_error(self):
options = {"test_type": "bandwidth"}
args = {"options": options}
l = lmbench.Lmbench(args, self.ctx)
- mock_ssh.SSH.from_node().execute.return_value = (1, '', 'FOOBAR')
+ self.mock_ssh.from_node().execute.return_value = (1, '', 'FOOBAR')
self.assertRaises(RuntimeError, l.run, self.result)
diff --git a/yardstick/tests/unit/network_services/libs/ixia_libs/test_ixnet_api.py b/yardstick/tests/unit/network_services/libs/ixia_libs/test_ixnet_api.py
index d04dfd42b..c80cbbe77 100644
--- a/yardstick/tests/unit/network_services/libs/ixia_libs/test_ixnet_api.py
+++ b/yardstick/tests/unit/network_services/libs/ixia_libs/test_ixnet_api.py
@@ -212,6 +212,47 @@ class TestIxNextgen(unittest.TestCase):
'obj', '-name', 'ethernet 1')
self.ixnet_gen.ixnet.commit.assert_called_once()
+ def test_add_vlans_single(self):
+ obj = 'ethernet'
+ self.ixnet_gen.ixnet.getAttribute.return_value = 'attr'
+ self.ixnet_gen.ixnet.getList.return_value = ['vlan1', 'vlan2']
+ vlan1 = ixnet_api.Vlan(vlan_id=100, tp_id='ethertype88a8', prio=2)
+ vlan2 = ixnet_api.Vlan(vlan_id=101, tp_id='ethertype88a8', prio=3)
+ self.ixnet_gen.add_vlans(obj, [vlan1, vlan2])
+ self.ixnet_gen.ixnet.setMultiAttribute.assert_any_call('ethernet',
+ '-vlanCount', 2)
+ self.ixnet_gen.ixnet.setMultiAttribute.assert_any_call('attr/singleValue',
+ '-value', 100)
+ self.ixnet_gen.ixnet.setMultiAttribute.assert_any_call('attr/singleValue',
+ '-value', 101)
+ self.ixnet_gen.ixnet.setMultiAttribute.assert_any_call('attr/singleValue',
+ '-value', 2)
+ self.ixnet_gen.ixnet.setMultiAttribute.assert_any_call('attr/singleValue',
+ '-value', 3)
+ self.ixnet_gen.ixnet.setMultiAttribute.assert_any_call(
+ 'attr/singleValue', '-value', 'ethertype88a8')
+ self.assertEqual(self.ixnet.commit.call_count, 2)
+
+ def test_add_vlans_increment(self):
+ obj = 'ethernet'
+ self.ixnet_gen.ixnet.add.return_value = 'obj'
+ self.ixnet_gen.ixnet.getAttribute.return_value = 'attr'
+ self.ixnet_gen.ixnet.getList.return_value = ['vlan1']
+ vlan = ixnet_api.Vlan(vlan_id=100, vlan_id_step=1, prio=3, prio_step=2)
+ self.ixnet_gen.add_vlans(obj, [vlan])
+ self.ixnet.setMultiAttribute.assert_any_call('obj', '-start', 100,
+ '-step', 1,
+ '-direction', 'increment')
+ self.ixnet.setMultiAttribute.assert_any_call('obj', '-start', 3,
+ '-step', 2,
+ '-direction', 'increment')
+
+ self.assertEqual(self.ixnet.commit.call_count, 2)
+
+ def test_add_vlans_invalid(self):
+ vlans = []
+ self.assertRaises(RuntimeError, self.ixnet_gen.add_vlans, 'obj', vlans)
+
def test_add_ipv4(self):
self.ixnet_gen.ixnet.add.return_value = 'obj'
self.ixnet_gen.add_ipv4('ethernet 1', name='ipv4 1')
@@ -293,6 +334,21 @@ class TestIxNextgen(unittest.TestCase):
self.ixnet_gen.ixnet.setMultiAttribute.assert_not_called()
+ def test_add_bgp(self):
+ self.ixnet_gen.ixnet.add.return_value = 'obj'
+ self.ixnet_gen.ixnet.getAttribute.return_value = 'attr'
+ self.ixnet_gen.add_bgp(ipv4='ipv4 1',
+ dut_ip='10.0.0.1',
+ local_as=65000,
+ bgp_type='external')
+ self.ixnet_gen.ixnet.add.assert_called_once_with('ipv4 1', 'bgpIpv4Peer')
+ self.ixnet_gen.ixnet.setAttribute.assert_any_call(
+ 'attr/singleValue', '-value', '10.0.0.1')
+ self.ixnet_gen.ixnet.setAttribute.assert_any_call(
+ 'attr/singleValue', '-value', 65000)
+ self.ixnet_gen.ixnet.setAttribute.assert_any_call(
+ 'attr/singleValue', '-value', 'external')
+
@mock.patch.object(IxNetwork, 'IxNet')
def test_connect(self, mock_ixnet):
mock_ixnet.return_value = self.ixnet
@@ -346,8 +402,8 @@ class TestIxNextgen(unittest.TestCase):
self.ixnet_gen._cfg = config
self.assertIsNone(self.ixnet_gen.assign_ports())
- self.assertEqual(self.ixnet.execute.call_count, 2)
- self.assertEqual(self.ixnet.commit.call_count, 4)
+ self.assertEqual(self.ixnet.execute.call_count, 1)
+ self.assertEqual(self.ixnet.commit.call_count, 3)
self.assertEqual(self.ixnet.getAttribute.call_count, 2)
@mock.patch.object(ixnet_api, 'log')
@@ -380,17 +436,24 @@ class TestIxNextgen(unittest.TestCase):
'-trackBy', 'trafficGroupId0')
def test__create_flow_groups(self):
+ uplink_endpoints = ['up_endp1', 'up_endp2']
+ downlink_endpoints = ['down_endp1', 'down_endp2']
self.ixnet_gen.ixnet.getList.side_effect = [['traffic_item'], ['1', '2']]
- self.ixnet_gen.ixnet.add.side_effect = ['endp1', 'endp2']
- self.ixnet_gen._create_flow_groups()
+ self.ixnet_gen.ixnet.add.side_effect = ['endp1', 'endp2', 'endp3',
+ 'endp4']
+ self.ixnet_gen._create_flow_groups(uplink_endpoints, downlink_endpoints)
self.ixnet_gen.ixnet.add.assert_has_calls([
mock.call('traffic_item', 'endpointSet'),
mock.call('traffic_item', 'endpointSet')])
self.ixnet_gen.ixnet.setMultiAttribute.assert_has_calls([
- mock.call('endp1', '-name', '1', '-sources', ['1/protocols'],
- '-destinations', ['2/protocols']),
- mock.call('endp2', '-name', '2', '-sources', ['2/protocols'],
- '-destinations', ['1/protocols'])])
+ mock.call('endp1', '-name', '1', '-sources', ['up_endp1'],
+ '-destinations', ['down_endp1']),
+ mock.call('endp2', '-name', '2', '-sources', ['down_endp1'],
+ '-destinations', ['up_endp1']),
+ mock.call('endp3', '-name', '3', '-sources', ['up_endp2'],
+ '-destinations', ['down_endp2']),
+ mock.call('endp4', '-name', '4', '-sources', ['down_endp2'],
+ '-destinations', ['up_endp2'])])
def test__append_protocol_to_stack(self):
@@ -420,12 +483,31 @@ class TestIxNextgen(unittest.TestCase):
def test_create_traffic_model(self, mock__setup_config_elements,
mock__create_flow_groups,
mock__create_traffic_item):
-
- self.ixnet_gen.create_traffic_model()
- mock__create_traffic_item.assert_called_once()
- mock__create_flow_groups.assert_called_once()
+ uplink_ports = ['port1', 'port3']
+ downlink_ports = ['port2', 'port4']
+ uplink_endpoints = ['port1/protocols', 'port3/protocols']
+ downlink_endpoints = ['port2/protocols', 'port4/protocols']
+ self.ixnet_gen.create_traffic_model(uplink_ports, downlink_ports)
+ mock__create_traffic_item.assert_called_once_with('raw')
+ mock__create_flow_groups.assert_called_once_with(uplink_endpoints,
+ downlink_endpoints)
mock__setup_config_elements.assert_called_once()
+ @mock.patch.object(ixnet_api.IxNextgen, '_create_traffic_item')
+ @mock.patch.object(ixnet_api.IxNextgen, '_create_flow_groups')
+ @mock.patch.object(ixnet_api.IxNextgen, '_setup_config_elements')
+ def test_create_ipv4_traffic_model(self, mock__setup_config_elements,
+ mock__create_flow_groups,
+ mock__create_traffic_item):
+ uplink_topologies = ['up1', 'up3']
+ downlink_topologies = ['down2', 'down4']
+ self.ixnet_gen.create_ipv4_traffic_model(uplink_topologies,
+ downlink_topologies)
+ mock__create_traffic_item.assert_called_once_with('ipv4')
+ mock__create_flow_groups.assert_called_once_with(uplink_topologies,
+ downlink_topologies)
+ mock__setup_config_elements.assert_called_once_with(False)
+
def test__update_frame_mac(self):
with mock.patch.object(self.ixnet_gen, '_get_field_in_stack_item') as \
mock_get_field:
@@ -510,6 +592,26 @@ class TestIxNextgen(unittest.TestCase):
mock.call(port_statistics, self.ixnet_gen.PORT_STATS_NAME_MAP),
mock.call(flow_statistics, self.ixnet_gen.LATENCY_NAME_MAP)])
+ def test__set_flow_tracking(self):
+ self.ixnet_gen._ixnet.getList.return_value = ['traffic_item']
+ self.ixnet_gen._set_flow_tracking(track_by=['vlanVlanId0'])
+ self.ixnet_gen.ixnet.setAttribute.assert_called_once_with(
+ 'traffic_item/tracking', '-trackBy', ['vlanVlanId0'])
+ self.assertEqual(self.ixnet.commit.call_count, 1)
+
+ def test__set_egress_flow_tracking(self):
+ self.ixnet_gen._ixnet.getList.side_effect = [['traffic_item'],
+ ['encapsulation']]
+ self.ixnet_gen._set_egress_flow_tracking(encapsulation='Ethernet',
+ offset='IPv4 TOS Precedence')
+ self.ixnet_gen.ixnet.setAttribute.assert_any_call(
+ 'traffic_item', '-egressEnabled', True)
+ self.ixnet_gen.ixnet.setAttribute.assert_any_call(
+ 'encapsulation', '-encapsulation', 'Ethernet')
+ self.ixnet_gen.ixnet.setAttribute.assert_any_call(
+ 'encapsulation', '-offset', 'IPv4 TOS Precedence')
+ self.assertEqual(self.ixnet.commit.call_count, 2)
+
def test__update_ipv4_address(self):
with mock.patch.object(self.ixnet_gen, '_get_field_in_stack_item',
return_value='field_desc'):
@@ -576,6 +678,9 @@ class TestIxNextgen(unittest.TestCase):
'outer_l3': {
'proto': 'unsupported',
},
+ 'outer_l4': {
+ 'seed': 1
+ }
},
}
with mock.patch.object(self.ixnet_gen,
@@ -631,3 +736,34 @@ class TestIxNextgen(unittest.TestCase):
self.assertIsNone(result)
self.ixnet.getList.assert_called_once()
self.assertEqual(3, self.ixnet_gen._ixnet.execute.call_count)
+
+ def test__get_protocol_status(self):
+ self.ixnet.getAttribute.return_value = ['up']
+ self.ixnet_gen._get_protocol_status('ipv4')
+ self.ixnet.getAttribute.assert_called_once_with('ipv4',
+ '-sessionStatus')
+
+ @mock.patch.object(ixnet_api.IxNextgen, '_get_protocol_status')
+ def test_is_protocols_running(self, mock_ixnextgen_get_protocol_status):
+ mock_ixnextgen_get_protocol_status.return_value = 'up'
+ result = self.ixnet_gen.is_protocols_running(['ethernet', 'ipv4'])
+ self.assertTrue(result)
+
+ @mock.patch.object(ixnet_api.IxNextgen, '_get_protocol_status')
+ def test_is_protocols_stopped(self, mock_ixnextgen_get_protocol_status):
+ mock_ixnextgen_get_protocol_status.return_value = 'down'
+ result = self.ixnet_gen.is_protocols_running(['ethernet', 'ipv4'])
+ self.assertFalse(result)
+
+ def test_start_protocols(self):
+ self.ixnet_gen.start_protocols()
+ self.ixnet.execute.assert_called_once_with('startAllProtocols')
+
+ def test_stop_protocols(self):
+ self.ixnet_gen.stop_protocols()
+ self.ixnet.execute.assert_called_once_with('stopAllProtocols')
+
+ def test_get_vports(self):
+ self.ixnet_gen._ixnet.getRoot.return_value = 'root'
+ self.ixnet_gen.get_vports()
+ self.ixnet.getList.assert_called_once_with('root', 'vport')
diff --git a/yardstick/tests/unit/network_services/traffic_profile/test_http.py b/yardstick/tests/unit/network_services/traffic_profile/test_http.py
index d44fab2b5..874ec37d4 100644
--- a/yardstick/tests/unit/network_services/traffic_profile/test_http.py
+++ b/yardstick/tests/unit/network_services/traffic_profile/test_http.py
@@ -19,13 +19,21 @@ from yardstick.network_services.traffic_profile import http
class TestTrafficProfileGenericHTTP(unittest.TestCase):
- TP_CONFIG = {'traffic_profile': {'duration': 10}}
+ TP_CONFIG = {'traffic_profile': {'duration': 10},
+ "uplink_0": {}, "downlink_0": {}}
def test___init__(self):
tp_generic_http = http.TrafficProfileGenericHTTP(
self.TP_CONFIG)
self.assertIsNotNone(tp_generic_http)
+ def test_get_links_param(self):
+ tp_generic_http = http.TrafficProfileGenericHTTP(
+ self.TP_CONFIG)
+
+ links = tp_generic_http.get_links_param()
+ self.assertEqual({"uplink_0": {}, "downlink_0": {}}, links)
+
def test_execute(self):
tp_generic_http = http.TrafficProfileGenericHTTP(
self.TP_CONFIG)
diff --git a/yardstick/tests/unit/network_services/traffic_profile/test_http_ixload.py b/yardstick/tests/unit/network_services/traffic_profile/test_http_ixload.py
index 57de6602d..1adab48bc 100644
--- a/yardstick/tests/unit/network_services/traffic_profile/test_http_ixload.py
+++ b/yardstick/tests/unit/network_services/traffic_profile/test_http_ixload.py
@@ -17,6 +17,7 @@ import mock
from oslo_serialization import jsonutils
+from yardstick.common import exceptions
from yardstick.network_services.traffic_profile import http_ixload
from yardstick.network_services.traffic_profile.http_ixload import \
join_non_strings, validate_non_string_sequence
@@ -45,6 +46,26 @@ class TestJoinNonStrings(unittest.TestCase):
class TestIxLoadTrafficGen(unittest.TestCase):
+ def setUp(self):
+ ports = [1, 2, 3]
+ self.test_input = {
+ "remote_server": "REMOTE_SERVER",
+ "ixload_cfg": "IXLOAD_CFG",
+ "result_dir": "RESULT_DIR",
+ "ixia_chassis": "IXIA_CHASSIS",
+ "IXIA": {
+ "card": "CARD",
+ "ports": ports,
+ },
+ 'links_param': {
+ "uplink_0": {
+ "ip": {"address": "address",
+ "gateway": "gateway",
+ "subnet_prefix": "subnet_prefix",
+ "mac": "mac"
+ }}}
+ }
+
def test_parse_run_test(self):
ports = [1, 2, 3]
test_input = {
@@ -56,6 +77,7 @@ class TestIxLoadTrafficGen(unittest.TestCase):
"card": "CARD",
"ports": ports,
},
+ 'links_param': {}
}
j = jsonutils.dump_as_bytes(test_input)
ixload = http_ixload.IXLOADHttpTest(j)
@@ -66,6 +88,7 @@ class TestIxLoadTrafficGen(unittest.TestCase):
["IXIA_CHASSIS", "CARD", 2],
["IXIA_CHASSIS", "CARD", 3],
])
+ self.assertEqual({}, ixload.links_param)
def test_format_ports_for_reassignment(self):
ports = [
@@ -91,6 +114,7 @@ class TestIxLoadTrafficGen(unittest.TestCase):
"card": "CARD",
"ports": ports,
},
+ 'links_param': {}
}
j = jsonutils.dump_as_bytes(test_input)
ixload = http_ixload.IXLOADHttpTest(j)
@@ -112,6 +136,7 @@ class TestIxLoadTrafficGen(unittest.TestCase):
"card": "CARD",
"ports": ports,
},
+ 'links_param': {}
}
j = jsonutils.dump_as_bytes(test_input)
ixload = http_ixload.IXLOADHttpTest(j)
@@ -160,6 +185,7 @@ class TestIxLoadTrafficGen(unittest.TestCase):
"card": "CARD",
"ports": ports,
},
+ 'links_param': {}
}
j = jsonutils.dump_as_bytes(test_input)
ixload = http_ixload.IXLOADHttpTest(j)
@@ -178,6 +204,7 @@ class TestIxLoadTrafficGen(unittest.TestCase):
"card": "CARD",
"ports": ports,
},
+ 'links_param': {}
}
j = jsonutils.dump_as_bytes(test_input)
ixload = http_ixload.IXLOADHttpTest(j)
@@ -198,6 +225,7 @@ class TestIxLoadTrafficGen(unittest.TestCase):
"card": "CARD",
"ports": ports,
},
+ 'links_param': {}
}
j = jsonutils.dump_as_bytes(test_input)
@@ -211,6 +239,105 @@ class TestIxLoadTrafficGen(unittest.TestCase):
with self.assertRaises(RuntimeError):
ixload.start_http_test()
+ def test_update_config(self):
+ net_taraffic_0 = mock.Mock()
+ net_taraffic_0.name = "HTTP client@uplink_0"
+ net_taraffic_1 = mock.Mock()
+ net_taraffic_1.name = "HTTP client@uplink_1"
+
+ community_list = [net_taraffic_0, net_taraffic_1, Exception]
+ ixload = http_ixload.IXLOADHttpTest(
+ jsonutils.dump_as_bytes(self.test_input))
+
+ ixload.links_param = {"uplink_0": {"ip": {}}}
+
+ ixload.test = mock.Mock()
+ ixload.test.communityList = community_list
+
+ ixload.update_network_param = mock.Mock()
+
+ ixload.update_config()
+
+ ixload.update_network_param.assert_called_once_with(net_taraffic_0, {})
+
+ def test_update_network_mac_address(self):
+ ethernet = mock.MagicMock()
+ net_traffic = mock.Mock()
+ net_traffic.network.getL1Plugin.return_value = ethernet
+
+ ixload = http_ixload.IXLOADHttpTest(
+ jsonutils.dump_as_bytes(self.test_input))
+
+ ix_net_l2_ethernet_plugin = ethernet.childrenList[0]
+ ix_net_ip_v4_v6_plugin = ix_net_l2_ethernet_plugin.childrenList[0]
+ ix_net_ip_v4_v6_range = ix_net_ip_v4_v6_plugin.rangeList[0]
+
+ ixload.update_network_mac_address(net_traffic, "auto")
+ ix_net_ip_v4_v6_range.config.assert_called_once_with(
+ autoMacGeneration=True)
+
+ ixload.update_network_mac_address(net_traffic, "00:00:00:00:00:01")
+ ix_net_ip_v4_v6_range.config.assert_called_with(
+ autoMacGeneration=False)
+ mac_range = ix_net_ip_v4_v6_range.getLowerRelatedRange("MacRange")
+ mac_range.config.assert_called_once_with(mac="00:00:00:00:00:01")
+
+ net_traffic.network.getL1Plugin.return_value = Exception
+
+ with self.assertRaises(exceptions.InvalidRxfFile):
+ ixload.update_network_mac_address(net_traffic, "auto")
+
+ def test_update_network_address(self):
+ ethernet = mock.MagicMock()
+ net_traffic = mock.Mock()
+ net_traffic.network.getL1Plugin.return_value = ethernet
+
+ ixload = http_ixload.IXLOADHttpTest(
+ jsonutils.dump_as_bytes(self.test_input))
+
+ ix_net_l2_ethernet_plugin = ethernet.childrenList[0]
+ ix_net_ip_v4_v6_plugin = ix_net_l2_ethernet_plugin.childrenList[0]
+ ix_net_ip_v4_v6_range = ix_net_ip_v4_v6_plugin.rangeList[0]
+
+ ixload.update_network_address(net_traffic, "address", "gateway",
+ "prefix")
+ ix_net_ip_v4_v6_range.config.assert_called_once_with(
+ prefix="prefix",
+ ipAddress="address",
+ gatewayAddress="gateway")
+
+ net_traffic.network.getL1Plugin.return_value = Exception
+
+ with self.assertRaises(exceptions.InvalidRxfFile):
+ ixload.update_network_address(net_traffic, "address", "gateway",
+ "prefix")
+
+ def test_update_network_param(self):
+ net_traffic = mock.Mock()
+
+ ixload = http_ixload.IXLOADHttpTest(
+ jsonutils.dump_as_bytes(self.test_input))
+
+ ixload.update_network_address = mock.Mock()
+ ixload.update_network_mac_address = mock.Mock()
+
+ param = {"address": "address",
+ "gateway": "gateway",
+ "subnet_prefix": "subnet_prefix",
+ "mac": "mac"
+ }
+
+ ixload.update_network_param(net_traffic, param)
+
+ ixload.update_network_address.assert_called_once_with(net_traffic,
+ "address",
+ "gateway",
+ "subnet_prefix")
+
+ ixload.update_network_mac_address.assert_called_once_with(
+ net_traffic,
+ "mac")
+
@mock.patch('yardstick.network_services.traffic_profile.http_ixload.IxLoad')
@mock.patch('yardstick.network_services.traffic_profile.http_ixload.StatCollectorUtils')
def test_start_http_test(self, *args):
@@ -224,6 +351,7 @@ class TestIxLoadTrafficGen(unittest.TestCase):
"card": "CARD",
"ports": ports,
},
+ 'links_param': {}
}
j = jsonutils.dump_as_bytes(test_input)
@@ -248,6 +376,7 @@ class TestIxLoadTrafficGen(unittest.TestCase):
"card": "CARD",
"ports": ports,
},
+ 'links_param': {}
}
j = jsonutils.dump_as_bytes(test_input)
diff --git a/yardstick/tests/unit/network_services/traffic_profile/test_ixia_rfc2544.py b/yardstick/tests/unit/network_services/traffic_profile/test_ixia_rfc2544.py
index 0759ecebd..5b39b6cd1 100644
--- a/yardstick/tests/unit/network_services/traffic_profile/test_ixia_rfc2544.py
+++ b/yardstick/tests/unit/network_services/traffic_profile/test_ixia_rfc2544.py
@@ -586,7 +586,8 @@ class TestIXIARFC2544Profile(unittest.TestCase):
'Store-Forward_Max_latency_ns': 28}
}
rfc2544_profile = ixia_rfc2544.IXIARFC2544Profile(self.TRAFFIC_PROFILE)
- completed, samples = rfc2544_profile.get_drop_percentage(samples, 0, 1)
+ completed, samples = rfc2544_profile.get_drop_percentage(
+ samples, 0, 1, 4)
self.assertTrue(completed)
self.assertEqual(66.9, samples['TxThroughput'])
self.assertEqual(66.833, samples['RxThroughput'])
@@ -610,7 +611,7 @@ class TestIXIARFC2544Profile(unittest.TestCase):
rfc2544_profile = ixia_rfc2544.IXIARFC2544Profile(self.TRAFFIC_PROFILE)
rfc2544_profile.rate = 1000
completed, samples = rfc2544_profile.get_drop_percentage(
- samples, 0, 0.05)
+ samples, 0, 0.05, 4)
self.assertFalse(completed)
self.assertEqual(66.9, samples['TxThroughput'])
self.assertEqual(66.833, samples['RxThroughput'])
@@ -632,7 +633,7 @@ class TestIXIARFC2544Profile(unittest.TestCase):
rfc2544_profile = ixia_rfc2544.IXIARFC2544Profile(self.TRAFFIC_PROFILE)
rfc2544_profile.rate = 1000
completed, samples = rfc2544_profile.get_drop_percentage(
- samples, 0.2, 1)
+ samples, 0.2, 1, 4)
self.assertFalse(completed)
self.assertEqual(66.9, samples['TxThroughput'])
self.assertEqual(66.833, samples['RxThroughput'])
@@ -655,7 +656,7 @@ class TestIXIARFC2544Profile(unittest.TestCase):
rfc2544_profile = ixia_rfc2544.IXIARFC2544Profile(self.TRAFFIC_PROFILE)
rfc2544_profile.rate = 1000
completed, samples = rfc2544_profile.get_drop_percentage(
- samples, 0.2, 1)
+ samples, 0.2, 1, 4)
self.assertFalse(completed)
self.assertEqual(0.0, samples['TxThroughput'])
self.assertEqual(66.833, samples['RxThroughput'])
@@ -676,7 +677,7 @@ class TestIXIARFC2544Profile(unittest.TestCase):
}
rfc2544_profile = ixia_rfc2544.IXIARFC2544Profile(self.TRAFFIC_PROFILE)
completed, samples = rfc2544_profile.get_drop_percentage(
- samples, 0, 1, first_run=True)
+ samples, 0, 1, 4, first_run=True)
self.assertTrue(completed)
self.assertEqual(66.9, samples['TxThroughput'])
self.assertEqual(66.833, samples['RxThroughput'])
diff --git a/yardstick/tests/unit/network_services/traffic_profile/test_landslide_profile.py b/yardstick/tests/unit/network_services/traffic_profile/test_landslide_profile.py
new file mode 100644
index 000000000..afd550029
--- /dev/null
+++ b/yardstick/tests/unit/network_services/traffic_profile/test_landslide_profile.py
@@ -0,0 +1,136 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import copy
+import unittest
+
+from yardstick.network_services.traffic_profile import landslide_profile
+
+TP_CONFIG = {
+ 'schema': "nsb:traffic_profile:0.1",
+ 'name': 'LandslideProfile',
+ 'description': 'Spirent Landslide traffic profile (Data Message Flow)',
+ 'traffic_profile': {
+ 'traffic_type': 'LandslideProfile'
+ },
+ 'dmf_config': {
+ 'dmf': {
+ 'library': 'test',
+ 'name': 'Fireball UDP',
+ 'description': "Basic data flow using UDP/IP (Fireball DMF)",
+ 'keywords': 'UDP ',
+ 'dataProtocol': 'fb_udp',
+ 'burstCount': 1,
+ 'clientPort': {
+ 'clientPort': 2002,
+ 'isClientPortRange': 'false'
+ },
+ 'serverPort': 2003,
+ 'connection': {
+ 'initiatingSide': 'Client',
+ 'disconnectSide': 'Client',
+ 'underlyingProtocol': 'none',
+ 'persistentConnection': 'false'
+ },
+ 'protocolId': 0,
+ 'persistentConnection': 'false',
+ 'transactionRate': 8.0,
+ 'transactions': {
+ 'totalTransactions': 0,
+ 'retries': 0,
+ 'dataResponseTime': 60000,
+ 'packetSize': 64
+ },
+ 'segment': {
+ 'segmentSize': 64000,
+ 'maxSegmentSize': 0
+ },
+ 'size': {
+ 'sizeDistribution': 'Fixed',
+ 'sizeDeviation': 10
+ },
+ 'interval': {
+ 'intervalDistribution': 'Fixed',
+ 'intervalDeviation': 10
+ },
+ 'ipHeader': {
+ 'typeOfService': 0,
+ 'timeToLive': 64
+ },
+ 'tcpConnection': {
+ 'force3Way': 'false',
+ 'fixedRetryTime': 0,
+ 'maxPacketsToForceAck': 0
+ },
+ 'tcp': {
+ 'windowSize': 32768,
+ 'windowScaling': -1,
+ 'disableFinAckWait': 'false'
+ },
+ 'disconnectType': 'FIN',
+ 'slowStart': 'false',
+ 'connectOnly': 'false',
+ 'vtag': {
+ 'VTagMask': '0x0',
+ 'VTagValue': '0x0'
+ },
+ 'sctpPayloadProtocolId': 0,
+ 'billingIncludeSyn': 'true',
+ 'billingIncludeSubflow': 'true',
+ 'billingRecordPerTransaction': 'false',
+ 'tcpPush': 'false',
+ 'hostDataExpansionRatio': 1
+ }
+ }
+}
+DMF_OPTIONS = {
+ 'dmf': {
+ 'transactionRate': 5,
+ 'packetSize': 512,
+ 'burstCount': 1
+ }
+}
+
+
+class TestLandslideProfile(unittest.TestCase):
+
+ def test___init__(self):
+ ls_traffic_profile = landslide_profile.LandslideProfile(TP_CONFIG)
+ self.assertListEqual([TP_CONFIG["dmf_config"]],
+ ls_traffic_profile.dmf_config)
+
+ def test___init__config_not_a_dict(self):
+ _tp_config = copy.deepcopy(TP_CONFIG)
+ _tp_config['dmf_config'] = [_tp_config['dmf_config']]
+ ls_traffic_profile = landslide_profile.LandslideProfile(_tp_config)
+ self.assertListEqual(_tp_config['dmf_config'],
+ ls_traffic_profile.dmf_config)
+
+ def test_execute(self):
+ ls_traffic_profile = landslide_profile.LandslideProfile(TP_CONFIG)
+ self.assertIsNone(ls_traffic_profile.execute(None))
+
+ def test_update_dmf_options_dict(self):
+ ls_traffic_profile = landslide_profile.LandslideProfile(TP_CONFIG)
+ ls_traffic_profile.update_dmf(DMF_OPTIONS)
+ self.assertDictContainsSubset(DMF_OPTIONS['dmf'],
+ ls_traffic_profile.dmf_config[0])
+
+ def test_update_dmf_options_list(self):
+ ls_traffic_profile = landslide_profile.LandslideProfile(TP_CONFIG)
+ _dmf_options = copy.deepcopy(DMF_OPTIONS)
+ _dmf_options['dmf'] = [_dmf_options['dmf']]
+ ls_traffic_profile.update_dmf(_dmf_options)
+ self.assertTrue(all([x in ls_traffic_profile.dmf_config[0]
+ for x in DMF_OPTIONS['dmf']]))
diff --git a/yardstick/tests/unit/network_services/traffic_profile/test_prox_profile.py b/yardstick/tests/unit/network_services/traffic_profile/test_prox_profile.py
index cf31cc27c..11bee03a4 100644
--- a/yardstick/tests/unit/network_services/traffic_profile/test_prox_profile.py
+++ b/yardstick/tests/unit/network_services/traffic_profile/test_prox_profile.py
@@ -100,13 +100,13 @@ class TestProxProfile(unittest.TestCase):
profile = ProxProfile(tp_config)
- self.assertFalse(profile.done)
+ self.assertFalse(profile.done.is_set())
for _ in packet_sizes:
with self.assertRaises(NotImplementedError):
profile.execute_traffic(traffic_generator)
self.assertIsNone(profile.execute_traffic(traffic_generator))
- self.assertTrue(profile.done)
+ self.assertTrue(profile.done.is_set())
def test_bounds_iterator(self):
tp_config = {
diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_agnostic_vnf.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_agnostic_vnf.py
new file mode 100644
index 000000000..3374cbe76
--- /dev/null
+++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_agnostic_vnf.py
@@ -0,0 +1,70 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import unittest
+import uuid
+
+from yardstick.network_services.vnf_generic.vnf import agnostic_vnf
+
+NAME = 'vnf__0'
+
+VNFD = {
+ 'vnfd:vnfd-catalog': {
+ 'vnfd': [{
+ 'id': 'AgnosticVnf', # NSB python class mapping
+ 'name': 'AgnosticVnf',
+ 'short-name': 'AgnosticVnf',
+ 'description': 'AgnosticVnf',
+ 'mgmt-interface': {
+ 'vdu-id': 'vepcvnf-baremetal',
+ 'user': 'user',
+ 'password': 'password',
+ 'ip': 'ip'
+ },
+ 'vdu': [{
+ 'id': 'vepcvnf-baremetal',
+ 'name': 'vepc-vnf-baremetal',
+ 'description': 'vAgnosticVnf workload',
+ 'external-interface': []}],
+ 'benchmark': {
+ 'kpi': []}}]}}
+
+
+class TestAgnosticVnf(unittest.TestCase):
+
+ def setUp(self):
+ self._id = uuid.uuid1().int
+ self.vnfd = VNFD['vnfd:vnfd-catalog']['vnfd'][0]
+ self.agnostic_vnf = agnostic_vnf.AgnosticVnf(NAME, self.vnfd, self._id)
+
+ def test_instantiate(self):
+ self.assertIsNone(self.agnostic_vnf.instantiate({}, {}))
+
+ def test_wait_for_instantiate(self):
+ self.assertIsNone(self.agnostic_vnf.wait_for_instantiate())
+
+ def test_terminate(self):
+ self.assertIsNone(self.agnostic_vnf.terminate())
+
+ def test_scale(self):
+ self.assertIsNone(self.agnostic_vnf.scale())
+
+ def test_collect_kpi(self):
+ self.assertIsNone(self.agnostic_vnf.collect_kpi())
+
+ def test_start_collect(self):
+ self.assertIsNone(self.agnostic_vnf.start_collect())
+
+ def test_stop_collect(self):
+ self.assertIsNone(self.agnostic_vnf.stop_collect())
diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_epc_vnf.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_epc_vnf.py
new file mode 100644
index 000000000..6d14ddb54
--- /dev/null
+++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_epc_vnf.py
@@ -0,0 +1,94 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import copy
+import unittest
+import uuid
+
+from yardstick.network_services.vnf_generic.vnf import epc_vnf
+
+NAME = 'vnf__0'
+
+VNFD = {
+ 'vnfd:vnfd-catalog': {
+ 'vnfd': [{
+ 'id': 'EPCVnf', # NSB python class mapping
+ 'name': 'EPCVnf',
+ 'short-name': 'EPCVnf',
+ 'description': 'EPCVnf',
+ 'mgmt-interface': {
+ 'vdu-id': 'vepcvnf-baremetal',
+ 'user': 'user', # Value filled by vnfdgen
+ 'password': 'password', # Value filled by vnfdgen
+ 'ip': 'ip' # Value filled by vnfdgen
+ },
+ 'vdu': [{
+ 'id': 'vepcvnf-baremetal',
+ 'name': 'vepc-vnf-baremetal',
+ 'description': 'vEPCVnf workload',
+ 'external-interface': []}],
+ 'benchmark': {
+ 'kpi': []}}]}}
+
+
+class TestEPCVnf(unittest.TestCase):
+
+ def setUp(self):
+ self._id = uuid.uuid1().int
+ self.vnfd = VNFD['vnfd:vnfd-catalog']['vnfd'][0]
+ self.epc_vnf = epc_vnf.EPCVnf(NAME, self.vnfd, self._id)
+
+ def test___init__(self, *args):
+ _epc_vnf = epc_vnf.EPCVnf(NAME, self.vnfd, self._id)
+ for x in {'user', 'password', 'ip'}:
+ self.assertEqual(self.vnfd['mgmt-interface'][x],
+ _epc_vnf.vnfd_helper.mgmt_interface[x])
+ self.assertEqual(NAME, _epc_vnf.name)
+ self.assertEqual([], _epc_vnf.kpi)
+ self.assertEqual({}, _epc_vnf.config)
+ self.assertFalse(_epc_vnf.runs_traffic)
+
+ def test___init__missing_ip(self, *args):
+ _vnfd = copy.deepcopy(self.vnfd)
+ _vnfd['mgmt-interface'].pop('ip')
+ _epc_vnf = epc_vnf.EPCVnf(NAME, _vnfd, self._id)
+ for x in {'user', 'password'}:
+ self.assertEqual(_vnfd['mgmt-interface'][x],
+ _epc_vnf.vnfd_helper.mgmt_interface[x])
+ self.assertNotIn('ip', _epc_vnf.vnfd_helper.mgmt_interface)
+ self.assertEqual(NAME, _epc_vnf.name)
+ self.assertEqual([], _epc_vnf.kpi)
+ self.assertEqual({}, _epc_vnf.config)
+ self.assertFalse(_epc_vnf.runs_traffic)
+
+ def test_instantiate(self):
+ self.assertIsNone(self.epc_vnf.instantiate({}, {}))
+
+ def test_wait_for_instantiate(self):
+ self.assertIsNone(self.epc_vnf.wait_for_instantiate())
+
+ def test_terminate(self):
+ self.assertIsNone(self.epc_vnf.terminate())
+
+ def test_scale(self):
+ self.assertIsNone(self.epc_vnf.scale())
+
+ def test_collect_kpi(self):
+ self.assertIsNone(self.epc_vnf.collect_kpi())
+
+ def test_start_collect(self):
+ self.assertIsNone(self.epc_vnf.start_collect())
+
+ def test_stop_collect(self):
+ self.assertIsNone(self.epc_vnf.stop_collect())
diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_prox_helpers.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_prox_helpers.py
index 3b095647c..3d6ebb25b 100644
--- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_prox_helpers.py
+++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_prox_helpers.py
@@ -1527,14 +1527,16 @@ class TestProxResourceHelper(unittest.TestCase):
def test_run_traffic(self):
setup_helper = mock.MagicMock()
helper = prox_helpers.ProxResourceHelper(setup_helper)
- traffic_profile = mock.MagicMock(**{"done": True})
+ traffic_profile = mock.MagicMock()
+ traffic_profile.done.is_set.return_value = True
helper.run_traffic(traffic_profile)
self.assertEqual(helper._terminated.value, 1)
def test__run_traffic_once(self):
setup_helper = mock.MagicMock()
helper = prox_helpers.ProxResourceHelper(setup_helper)
- traffic_profile = mock.MagicMock(**{"done": True})
+ traffic_profile = mock.MagicMock()
+ traffic_profile.done.is_set.return_value = True
helper._run_traffic_once(traffic_profile)
self.assertEqual(helper._terminated.value, 1)
diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_sample_vnf.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_sample_vnf.py
index 4a1d8c30e..c9d42fb3e 100644
--- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_sample_vnf.py
+++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_sample_vnf.py
@@ -1206,6 +1206,7 @@ class TestRfc2544ResourceHelper(unittest.TestCase):
self.assertIsNone(rfc2544_resource_helper._tolerance_high)
self.assertEqual(rfc2544_resource_helper.tolerance_high, 0.15)
self.assertEqual(rfc2544_resource_helper._tolerance_high, 0.15)
+ self.assertEqual(rfc2544_resource_helper._tolerance_precision, 2)
scenario_helper.scenario_cfg = {} # ensure that resource_helper caches
self.assertEqual(rfc2544_resource_helper.tolerance_high, 0.15)
@@ -1240,6 +1241,7 @@ class TestRfc2544ResourceHelper(unittest.TestCase):
rfc2544_resource_helper = Rfc2544ResourceHelper(scenario_helper)
self.assertEqual(rfc2544_resource_helper.tolerance_high, 0.2)
+ self.assertEqual(rfc2544_resource_helper._tolerance_precision, 1)
def test_property_tolerance_low_not_range(self):
scenario_helper = ScenarioHelper('name1')
diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_ixload.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_ixload.py
index 53474b96e..e7f6206eb 100644
--- a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_ixload.py
+++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_ixload.py
@@ -57,6 +57,7 @@ class TestIxLoadTrafficGen(ut_base.BaseUnitTestCase):
'external-interface':
[{'virtual-interface':
{'dst_mac': '00:00:00:00:00:04',
+ 'vld_id': 'uplink_0',
'vpci': '0000:05:00.0',
'local_ip': '152.16.100.19',
'type': 'PCI-PASSTHROUGH',
@@ -71,6 +72,7 @@ class TestIxLoadTrafficGen(ut_base.BaseUnitTestCase):
'name': 'xe0'},
{'virtual-interface':
{'dst_mac': '00:00:00:00:00:03',
+ 'vld_id': 'downlink_0',
'vpci': '0000:05:00.1',
'local_ip': '152.16.40.19',
'type': 'PCI-PASSTHROUGH',
@@ -129,6 +131,17 @@ class TestIxLoadTrafficGen(ut_base.BaseUnitTestCase):
ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd, 'task_id')
self.assertIsNone(ixload_traffic_gen.resource_helper.data)
+ def test_update_gateways(self):
+ vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0]
+ ixload_traffic_gen = tg_ixload.IxLoadTrafficGen(NAME, vnfd, 'task_id')
+ links = {'uplink_0': {'ip': {}},
+ 'downlink_1': {'ip': {}}}
+
+ ixload_traffic_gen.update_gateways(links)
+
+ self.assertEqual("152.16.100.20", links["uplink_0"]["ip"]["gateway"])
+ self.assertEqual("0.0.0.0", links["downlink_1"]["ip"]["gateway"])
+
@mock.patch.object(ctx_base.Context, 'get_physical_node_from_server',
return_value='mock_node')
def test_collect_kpi(self, *args):
@@ -189,6 +202,8 @@ class TestIxLoadTrafficGen(ut_base.BaseUnitTestCase):
def test_run_traffic(self, *args):
mock_traffic_profile = mock.Mock(autospec=tp_base.TrafficProfile)
mock_traffic_profile.get_traffic_definition.return_value = '64'
+ mock_traffic_profile.get_links_param.return_value = {
+ 'uplink_0': {'ip': {}}}
mock_traffic_profile.params = self.TRAFFIC_PROFILE
vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0]
vnfd['mgmt-interface'].update({'tg-config': {}})
@@ -208,6 +223,8 @@ class TestIxLoadTrafficGen(ut_base.BaseUnitTestCase):
def test_run_traffic_csv(self, *args):
mock_traffic_profile = mock.Mock(autospec=tp_base.TrafficProfile)
mock_traffic_profile.get_traffic_definition.return_value = '64'
+ mock_traffic_profile.get_links_param.return_value = {
+ 'uplink_0': {'ip': {}}}
mock_traffic_profile.params = self.TRAFFIC_PROFILE
vnfd = self.VNFD['vnfd:vnfd-catalog']['vnfd'][0]
vnfd['mgmt-interface'].update({'tg-config': {}})
diff --git a/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_landslide.py b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_landslide.py
new file mode 100644
index 000000000..1736d0f17
--- /dev/null
+++ b/yardstick/tests/unit/network_services/vnf_generic/vnf/test_tg_landslide.py
@@ -0,0 +1,1954 @@
+# Copyright (c) 2018 Intel Corporation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import copy
+import mock
+import requests
+import time
+import unittest
+import uuid
+
+from yardstick.benchmark.contexts import base as ctx_base
+from yardstick.common import exceptions
+from yardstick.common import utils as common_utils
+from yardstick.common import yaml_loader
+from yardstick.network_services import utils as net_serv_utils
+from yardstick.network_services.traffic_profile import landslide_profile
+from yardstick.network_services.vnf_generic.vnf import sample_vnf
+from yardstick.network_services.vnf_generic.vnf import tg_landslide
+from yardstick.network_services.vnf_generic.vnf import base as vnf_base
+
+NAME = "tg__0"
+
+EXAMPLE_URL = 'http://example.com/'
+TCL_SUCCESS_RESPONSE = 'ls_ok'
+
+TEST_SERVERS = [
+ {'ip': '192.168.122.101',
+ 'phySubnets': [
+ {'mask': '/24',
+ 'base': '10.42.32.100',
+ 'numIps': 20,
+ 'name': 'eth1'}
+ ],
+ 'role': 'SGW_Node',
+ 'name': 'TestServer_1'},
+ {'ip': '192.168.122.102',
+ 'phySubnets': [
+ {'mask': '/24',
+ 'base': '10.42.32.1',
+ 'numIps': 100,
+ 'name': 'eth1'
+ },
+ {'mask': '/24',
+ 'base': '10.42.33.1',
+ 'numIps': 100,
+ 'name': 'eth2'}
+ ],
+ 'preResolvedArpAddress': [
+ {'NumNodes': 1,
+ 'StartingAddress': '10.42.33.5'}
+ ],
+ 'role': 'SGW_Nodal',
+ 'name': 'TestServer_2',
+ 'thread_model': 'Fireball'
+ }
+]
+
+TS1_SUTS = [
+ {'name': 'SGW - C TestNode',
+ 'role': 'SgwControlAddr',
+ 'managementIp': '12.0.1.1',
+ 'ip': '10.42.32.100',
+ 'phy': 'eth5',
+ 'nextHop': '10.42.32.5'
+ },
+ {'name': 'SGW - U TestNode',
+ 'role': 'SgwUserAddr',
+ 'managementIp': '12.0.1.2',
+ 'ip': '10.42.32.101',
+ 'phy': 'eth5',
+ 'nextHop': '10.42.32.5'
+ }
+]
+
+TS2_SUTS = [
+ {'name': 'eNodeB TestNode',
+ 'role': 'EnbUserAddr',
+ 'managementIp': '12.0.2.1',
+ 'ip': '10.42.32.2',
+ 'phy': 'eth5',
+ 'nextHop': '10.42.32.5'
+ },
+ {'name': 'MME TestNode',
+ 'role': 'MmeControlAddr',
+ 'managementIp': '12.0.3.1',
+ 'ip': '10.42.32.1',
+ 'phy': 'eth5',
+ 'nextHop': '10.42.32.5'
+ },
+ {'name': 'NetHost TestNode',
+ 'role': 'NetworkHostAddrLocal',
+ 'managementIp': '12.0.4.1',
+ 'ip': '10.42.33.1',
+ 'phy': 'eth5',
+ 'nextHop': '10.42.32.5'
+ },
+ {'name': 'PGW TestNode',
+ 'role': 'PgwV4Sut',
+ 'managementIp': '12.0.5.1',
+ 'ip': '10.42.32.105',
+ 'phy': 'eth5',
+ 'nextHop': '10.42.32.5'
+ },
+ {'name': 'SGW - C SUT',
+ 'role': 'SgwSut',
+ 'managementIp': '12.0.6.1',
+ 'ip': '10.42.32.100'
+ },
+ {'name': 'SGW - U SUT',
+ 'role': 'SgwUserSut',
+ 'managementIp': '12.0.6.2',
+ 'ip': '10.42.32.101'}
+]
+
+VNFD = {
+ 'vnfd:vnfd-catalog': {
+ 'vnfd': [{
+ 'short-name': 'landslide',
+ 'vdu': [{
+ 'description': 'AB client interface details',
+ 'name': 'abclient-baremetal',
+ 'id': 'abclient-baremetal',
+ 'external-interface': []}],
+ 'description': 'Spirent Landslide traffic generator',
+ 'config': [{'test_server': TEST_SERVERS[0], 'suts': TS1_SUTS},
+ {'test_server': TEST_SERVERS[1], 'suts': TS2_SUTS}],
+ 'mgmt-interface': {
+ 'vdu-id': 'landslide-tas',
+ 'user': 'user',
+ 'password': 'user',
+ 'super-user': 'super-user',
+ 'super-user-password': 'super-user-password',
+ 'cfguser_password': 'cfguser_password',
+ 'license': 48,
+ 'proto': 'http',
+ 'ip': '1.1.1.1'},
+ 'benchmark': {
+ 'kpi': [
+ 'tx_throughput_mbps',
+ 'rx_throughput_mbps',
+ 'in_packets',
+ 'out_packets',
+ 'activation_rate_sessps',
+ 'deactivation_rate_sessps']},
+ 'id': 'LandslideTrafficGen',
+ 'name': 'LandslideTrafficGen'}]}}
+
+TAS_INFO = VNFD['vnfd:vnfd-catalog']['vnfd'][0]['mgmt-interface']
+
+DMF_CFG = {
+ "dmf": {
+ "library": "test",
+ "name": "Basic UDP"
+ },
+ "clientPort": {
+ "clientPort": 2002,
+ "isClientPortRange": "false"
+ },
+ "dataProtocol": "udp",
+ "serverPort": 2003
+}
+
+RESERVATIONS = [
+ {'tsName': TEST_SERVERS[0]['name'],
+ 'phySubnets': TEST_SERVERS[0]['phySubnets'],
+ 'tsId': TEST_SERVERS[0]['name'],
+ 'tsIndex': 0},
+ {'tsName': TEST_SERVERS[1]['name'],
+ 'phySubnets': TEST_SERVERS[1]['phySubnets'],
+ 'tsId': TEST_SERVERS[1]['name'],
+ 'tsIndex': 1}]
+
+SESSION_PROFILE = {
+ 'keywords': '',
+ 'duration': 60,
+ 'iterations': 1,
+ 'description': 'UE default bearer creation test case',
+ 'name': 'default_bearer_capacity',
+ 'reportOptions': {'format': 'CSV'},
+ 'reservePorts': 'false',
+ 'tsGroups': [
+ {
+ 'testCases': [{
+ 'type': 'SGW_Node',
+ 'name': '',
+ 'linked': "false",
+ 'AssociatedPhys': '',
+ 'parameters': {
+ 'SgiPtpTunnelEn': 'false',
+ 'Gtp2Imsi': '505024101215074',
+ 'Sessions': '100000',
+ 'S5Protocol': 'GTPv2',
+ 'TrafficMtu': '1500',
+ 'Gtp2Version': '13.6.0',
+ 'BearerV4AddrPool': '1.0.0.1',
+ 'Gtp2Imei': '50502410121507',
+ 'PgwNodeEn': 'true',
+ 'DedicatedsPerDefaultBearer': '0',
+ 'DefaultBearers': '1',
+ 'SgwUserAddr': {
+ 'numLinksOrNodes': 1,
+ 'phy': 'eth1',
+ 'forcedEthInterface': '',
+ 'ip': 'SGW_USER_IP',
+ 'class': 'TestNode',
+ 'ethStatsEnabled': "false",
+ 'mtu': 1500
+ },
+ 'SgwControlAddr': {
+ 'numLinksOrNodes': 1,
+ 'phy': 'eth1',
+ 'forcedEthInterface': '',
+ 'ip': 'SGW_CONTROL_IP',
+ 'class': 'TestNode',
+ 'ethStatsEnabled': "false",
+ 'mtu': 1500,
+ 'nextHop': 'SGW_CONTROL_NEXT_HOP'
+ },
+ 'BearerAddrPool': '2001::1',
+ 'TestType': 'SGW-NODE'
+ }
+ }],
+ 'tsId': TEST_SERVERS[0]['name']},
+ {
+ 'testCases': [{
+ 'type': 'SGW_Nodal',
+ 'name': '',
+ 'parameters': {
+ 'DataTraffic': 'Continuous',
+ 'TrafficStartType': 'When All Sessions Established',
+ 'NetworkHost': 'Local',
+ 'Gtp2Imsi': '505024101215074',
+ 'Dmf': {
+ 'mainflows': [
+ {
+ 'name': 'Basic UDP',
+ 'library': 'test'
+ }
+ ],
+ 'class': 'Dmf',
+ 'instanceGroups': [
+ {
+ 'startPaused': "false",
+ 'rate': 0,
+ 'mainflowIdx': 0,
+ 'mixType': ''
+ }
+ ]
+ },
+ 'S5Protocol': 'GTPv2',
+ 'DataUserCfgFileEn': 'false',
+ 'PgwUserSutEn': 'false',
+ 'MmeControlAddr': {
+ 'numLinksOrNodes': 1,
+ 'phy': 'eth1',
+ 'forcedEthInterface': '',
+ 'ip': 'MME_CONTROL_IP',
+ 'class': 'TestNode',
+ 'ethStatsEnabled': "false",
+ 'mtu': 1500
+ },
+ 'SgwUserSut': {
+ 'class': 'Sut',
+ 'name': 'SGW_USER_NAME'
+ },
+ 'TestActivity': 'Capacity Test',
+ 'NetworkHostAddrLocal': {
+ 'numLinksOrNodes': 1,
+ 'phy': 'eth2',
+ 'forcedEthInterface': '',
+ 'ip': 'NET_HOST_IP',
+ 'class': 'TestNode',
+ 'ethStatsEnabled': "false",
+ 'mtu': 1500
+ },
+ 'DedicatedsPerDefaultBearer': '0',
+ 'DisconnectRate': '1000.0',
+ 'Sessions': '100000',
+ 'SgwSut': {
+ 'class': 'Sut',
+ 'name': 'SGW_CONTROL_NAME'
+ },
+ 'TrafficMtu': '1500',
+ 'Gtp2Version': '13.6.0',
+ 'Gtp2Imei': '50502410121507',
+ 'PgwNodeEn': 'false',
+ 'StartRate': '1000.0',
+ 'PgwV4Sut': {
+ 'class': 'Sut',
+ 'name': 'PGW_SUT_NAME'
+ },
+ 'DefaultBearers': '1',
+ 'EnbUserAddr': {
+ 'numLinksOrNodes': 1,
+ 'phy': 'eth1',
+ 'forcedEthInterface': '',
+ 'ip': 'ENB_USER_IP',
+ 'class': 'TestNode',
+ 'ethStatsEnabled': "false",
+ 'mtu': 1500
+ },
+ 'TestType': 'SGW-NODAL'
+ }
+ }],
+ 'tsId': TEST_SERVERS[1]['name']
+ }
+ ]
+}
+
+
+class TestLandslideTrafficGen(unittest.TestCase):
+ SCENARIO_CFG = {
+ 'session_profile': '/traffic_profiles/landslide/'
+ 'landslide_session_default_bearer.yaml',
+ 'task_path': '',
+ 'runner': {
+ 'type': 'Iteration',
+ 'iterations': 1
+ },
+ 'nodes': {
+ 'tg__0': 'tg__0.traffic_gen',
+ 'vnf__0': 'vnf__0.vnf_epc'
+ },
+ 'topology': 'landslide_tg_topology.yaml',
+ 'type': 'NSPerf',
+ 'traffic_profile': '../../traffic_profiles/landslide/'
+ 'landslide_dmf_udp.yaml',
+ 'options': {
+ 'traffic_duration': 71,
+ 'test_cases': [
+ {
+ 'BearerAddrPool': '2002::2',
+ 'type': 'SGW_Node',
+ 'BearerV4AddrPool': '2.0.0.2',
+ 'Sessions': '90000'
+ },
+ {
+ 'StartRate': '900.0',
+ 'type': 'SGW_Nodal',
+ 'DisconnectRate': '900.0',
+ 'Sessions': '90000'
+ }
+ ],
+ 'dmf':
+ {
+ 'transactionRate': 1000,
+ 'packetSize': 512
+ }
+ }
+ }
+
+ CONTEXT_CFG = {
+ 'contexts': [
+ {
+ 'type': 'Node',
+ 'name': 'traffic_gen',
+ 'file': '/etc/yardstick/nodes/pod_landslide.yaml'
+ },
+ {
+ 'type': 'Node',
+ 'name': 'vnf_epc',
+ 'file': '/etc/yardstick/nodes/pod_vepc_sut.yaml'
+ }
+ ]
+ }
+
+ TRAFFIC_PROFILE = {
+ "schema": "nsb:traffic_profile:0.1",
+ "name": "LandslideProfile",
+ "description": "Spirent Landslide traffic profile",
+ "traffic_profile": {
+ "traffic_type": "LandslideProfile"
+ },
+ "dmf_config": {
+ "dmf": {
+ "library": "test",
+ "name": "Basic UDP"
+ },
+ "description": "Basic data flow using UDP/IP",
+ "keywords": "UDP",
+ "dataProtocol": "udp"
+ }
+ }
+
+ SUCCESS_CREATED_CODE = 201
+ SUCCESS_OK_CODE = 200
+ SUCCESS_RECORD_ID = 5
+ TEST_USER_ID = 11
+
+ def setUp(self):
+ self._id = uuid.uuid1().int
+
+ self.mock_lsapi = mock.patch.object(tg_landslide, 'LsApi')
+ self.mock_lsapi.start()
+
+ self.mock_ssh_helper = mock.patch.object(sample_vnf, 'VnfSshHelper')
+ self.mock_ssh_helper.start()
+ self.vnfd = VNFD['vnfd:vnfd-catalog']['vnfd'][0]
+ self.ls_tg = tg_landslide.LandslideTrafficGen(
+ NAME, self.vnfd, self._id)
+ self.session_profile = copy.deepcopy(SESSION_PROFILE)
+ self.ls_tg.session_profile = self.session_profile
+
+ self.addCleanup(self._cleanup)
+
+ def _cleanup(self):
+ self.mock_lsapi.stop()
+ self.mock_ssh_helper.stop()
+
+ @mock.patch.object(net_serv_utils, 'get_nsb_option')
+ def test___init__(self, mock_get_nsb_option, *args):
+ _path_to_nsb = 'path/to/nsb'
+ mock_get_nsb_option.return_value = _path_to_nsb
+ ls_tg = tg_landslide.LandslideTrafficGen(NAME, self.vnfd, self._id)
+ self.assertIsInstance(ls_tg.resource_helper,
+ tg_landslide.LandslideResourceHelper)
+ mock_get_nsb_option.assert_called_once_with('bin_path')
+ self.assertEqual(_path_to_nsb, ls_tg.bin_path)
+ self.assertEqual(NAME, ls_tg.name)
+ self.assertTrue(ls_tg.runs_traffic)
+ self.assertFalse(ls_tg.traffic_finished)
+ self.assertIsNone(ls_tg.session_profile)
+
+ def test_listen_traffic(self):
+ _traffic_profile = {}
+ self.assertIsNone(self.ls_tg.listen_traffic(_traffic_profile))
+
+ def test_terminate(self, *args):
+ self.ls_tg.resource_helper._tcl = mock.Mock()
+ self.assertIsNone(self.ls_tg.terminate())
+ self.ls_tg.resource_helper._tcl.disconnect.assert_called_once()
+
+ @mock.patch.object(ctx_base.Context, 'get_context_from_server',
+ return_value='fake_context')
+ def test_instantiate(self, *args):
+ self.ls_tg._tg_process = mock.Mock()
+ self.ls_tg._tg_process.start = mock.Mock()
+ self.ls_tg.resource_helper.connect = mock.Mock()
+ self.ls_tg.resource_helper.create_test_servers = mock.Mock()
+ self.ls_tg.resource_helper.create_suts = mock.Mock()
+ self.ls_tg._load_session_profile = mock.Mock()
+ self.assertIsNone(self.ls_tg.instantiate(self.SCENARIO_CFG,
+ self.CONTEXT_CFG))
+ self.ls_tg.resource_helper.connect.assert_called_once()
+ self.ls_tg.resource_helper.create_test_servers.assert_called_once()
+ _suts_blocks_num = len([item['suts'] for item in self.vnfd['config']])
+ self.assertEqual(_suts_blocks_num,
+ self.ls_tg.resource_helper.create_suts.call_count)
+ self.ls_tg._load_session_profile.assert_called_once()
+
+ @mock.patch.object(tg_landslide.LandslideResourceHelper,
+ 'get_running_tests')
+ def test_run_traffic(self, mock_get_tests, *args):
+ self.ls_tg.resource_helper._url = EXAMPLE_URL
+ self.ls_tg.scenario_helper.scenario_cfg = self.SCENARIO_CFG
+ mock_traffic_profile = mock.Mock(
+ spec=landslide_profile.LandslideProfile)
+ mock_traffic_profile.dmf_config = {
+ 'keywords': 'UDP',
+ 'dataProtocol': 'udp',
+ 'dmf': {'library': 'test', 'name': 'name'}}
+ mock_traffic_profile.params = self.TRAFFIC_PROFILE
+ self.ls_tg.resource_helper._user_id = self.TEST_USER_ID
+ mock_get_tests.return_value = [{'id': self.SUCCESS_RECORD_ID,
+ 'testStateOrStep': 'COMPLETE'}]
+ mock_post = mock.Mock()
+ mock_post.status_code = self.SUCCESS_CREATED_CODE
+ mock_post.json.return_value = {'id': self.SUCCESS_RECORD_ID}
+ mock_session = mock.Mock(spec=requests.Session)
+ mock_session.post.return_value = mock_post
+ self.ls_tg.resource_helper.session = mock_session
+ self.ls_tg.resource_helper._tcl = mock.Mock()
+ _tcl = self.ls_tg.resource_helper._tcl
+ self.assertIsNone(self.ls_tg.run_traffic(mock_traffic_profile))
+ self.assertEqual(self.SUCCESS_RECORD_ID,
+ self.ls_tg.resource_helper.run_id)
+ mock_traffic_profile.update_dmf.assert_called_with(
+ self.ls_tg.scenario_helper.all_options)
+ _tcl.create_dmf.assert_called_with(mock_traffic_profile.dmf_config)
+ _tcl.create_test_session.assert_called_with(self.session_profile)
+
+ @mock.patch.object(tg_landslide.LandslideResourceHelper,
+ 'check_running_test_state')
+ def test_collect_kpi(self, mock_check_running_test_state, *args):
+ self.ls_tg.resource_helper.run_id = self.SUCCESS_RECORD_ID
+ mock_check_running_test_state.return_value = 'COMPLETE'
+ self.assertEqual({'done': True}, self.ls_tg.collect_kpi())
+ mock_check_running_test_state.assert_called_once()
+
+ def test_wait_for_instantiate(self):
+ self.assertIsNone(self.ls_tg.wait_for_instantiate())
+ self.ls_tg.wait_for_instantiate()
+
+ def test__update_session_suts_no_tc_role(self, *args):
+ _suts = [{'role': 'epc_role'}]
+ _testcase = {'parameters': {'diff_epc_role': {'class': 'Sut'}}}
+ res = self.ls_tg._update_session_suts(_suts, _testcase)
+ self.assertEqual(_testcase, res)
+
+ def test__update_session_suts(self, *args):
+
+ def get_testnode_param(role, key, session_prof):
+ """ Get value by key from the deep nested dict to avoid calls like:
+ e.g. session_prof['tsGroups'][0]['testCases'][1]['parameters'][key]
+ """
+ for group in session_prof['tsGroups']:
+ for tc in group['testCases']:
+ tc_params = tc['parameters']
+ if tc_params.get(role):
+ return tc_params[role][key]
+
+ def get_sut_param(role, key, suts):
+ """ Search list of dicts for one with specific role.
+ Return the value of related dict by key. Expect key presence.
+ """
+ for sut in suts:
+ if sut.get('role') == role:
+ return sut[key]
+
+ # TestNode to verify
+ testnode_role = 'SgwControlAddr'
+ # SUT to verify
+ sut_role = 'SgwUserSut'
+
+ config_suts = [config['suts'] for config in self.vnfd['config']]
+ session_tcs = [_tc for _ts_group in self.ls_tg.session_profile['tsGroups']
+ for _tc in _ts_group['testCases']]
+ for suts, tc in zip(config_suts, session_tcs):
+ self.assertEqual(tc, self.ls_tg._update_session_suts(suts, tc))
+
+ # Verify TestNode class objects keys were updated
+ for _key in {'ip', 'phy', 'nextHop'}:
+ self.assertEqual(
+ get_testnode_param(testnode_role, _key, self.ls_tg.session_profile),
+ get_sut_param(testnode_role, _key, TS1_SUTS))
+ # Verify Sut class objects name was updated
+ self.assertEqual(
+ get_testnode_param(sut_role, 'name', self.ls_tg.session_profile),
+ get_sut_param(sut_role, 'name', TS2_SUTS))
+
+ def test__update_session_test_servers(self, *args):
+ for ts_index, ts in enumerate(TEST_SERVERS):
+ self.assertIsNone(
+ self.ls_tg._update_session_test_servers(ts, ts_index))
+ # Verify preResolvedArpAddress key was added
+ self.assertTrue(any(
+ _item.get('preResolvedArpAddress')
+ for _item in self.ls_tg.session_profile['tsGroups']))
+ # Verify reservations key was added to session profile
+ self.assertEqual(RESERVATIONS,
+ self.ls_tg.session_profile.get('reservations'))
+ self.assertEqual('true',
+ self.ls_tg.session_profile.get('reservePorts'))
+
+ def test__update_session_tc_params_assoc_phys(self):
+ _tc_options = {'AssociatedPhys': 'eth1'}
+ _testcase = {}
+ _testcase_orig = copy.deepcopy(_testcase)
+ res = self.ls_tg._update_session_tc_params(_tc_options, _testcase)
+ self.assertNotEqual(_testcase_orig, res)
+ self.assertEqual(_tc_options, _testcase)
+
+ def test__update_session_tc_params(self, *args):
+
+ def get_session_tc_param_value(param, tc_type, session_prof):
+ """ Get param value from the deep nested dict to avoid calls like:
+ session_prof['tsGroups'][0]['testCases'][0]['parameters'][key]
+ """
+ for test_group in session_prof['tsGroups']:
+ session_tc = test_group['testCases'][0]
+ if session_tc['type'] == tc_type:
+ return session_tc['parameters'].get(param)
+
+ session_tcs = [_tc for _ts_group in self.ls_tg.session_profile['tsGroups']
+ for _tc in _ts_group['testCases']]
+ scenario_tcs = [_tc for _tc in
+ self.SCENARIO_CFG['options']['test_cases']]
+ for tc_options, tc in zip(scenario_tcs, session_tcs):
+ self.assertEqual(
+ tc,
+ self.ls_tg._update_session_tc_params(tc_options, tc))
+
+ # Verify that each test case parameter was updated
+ # Params been compared are deeply nested. Using loops to ease access.
+ for _tc in self.SCENARIO_CFG['options']['test_cases']:
+ for _key, _val in _tc.items():
+ if _key != 'type':
+ self.assertEqual(
+ _val,
+ get_session_tc_param_value(_key, _tc.get('type'),
+ self.ls_tg.session_profile))
+
+ def test__update_session_library_name(self, *args):
+ _session = copy.deepcopy(SESSION_PROFILE)
+ _session['tsGroups'].pop(0)
+ self.ls_tg.vnfd_helper = mock.MagicMock()
+ self.ls_tg.vnfd_helper.mgmt_interface.__getitem__.side_effect = {
+ 'user': TAS_INFO['user']}
+ self.ls_tg._update_session_library_name(_session)
+ _dmf = _session['tsGroups'][0]['testCases'][0]['parameters']['Dmf']
+ # Expect DMF library name updated in Nodal test types
+ self.assertEqual(TAS_INFO['user'], _dmf['mainflows'][0]['library'])
+
+ def test__update_session_library_name_wrong_tc_type(self, *args):
+ _session = copy.deepcopy(SESSION_PROFILE)
+ _session['tsGroups'].pop(1)
+ self.ls_tg.vnfd_helper = mock.MagicMock()
+ self.ls_tg.vnfd_helper.mgmt_interface.__getitem__.side_effect = {
+ 'user': TAS_INFO['user']}
+ # Expect DMF library name not updated in Node test types
+ self.assertNotIn('Dmf',
+ _session['tsGroups'][0]['testCases'][0]['parameters'])
+ self.ls_tg._update_session_library_name(_session)
+
+ @mock.patch.object(common_utils, 'open_relative_file')
+ @mock.patch.object(yaml_loader, 'yaml_load')
+ @mock.patch.object(tg_landslide.LandslideTrafficGen,
+ '_update_session_test_servers')
+ @mock.patch.object(tg_landslide.LandslideTrafficGen,
+ '_update_session_suts')
+ @mock.patch.object(tg_landslide.LandslideTrafficGen,
+ '_update_session_tc_params')
+ def test__load_session_profile(self, mock_upd_ses_tc_params,
+ mock_upd_ses_suts, mock_upd_ses_ts,
+ mock_yaml_load, *args):
+ self.ls_tg.scenario_helper.scenario_cfg = \
+ copy.deepcopy(self.SCENARIO_CFG)
+ mock_yaml_load.return_value = copy.deepcopy(SESSION_PROFILE)
+ self.assertIsNone(self.ls_tg._load_session_profile())
+ self.assertIsNotNone(self.ls_tg.session_profile)
+ # Number of blocks in configuration files
+ # Number of test servers, suts and tc params blocks should be equal
+ _config_files_blocks_num = len([item['test_server']
+ for item in self.vnfd['config']])
+ self.assertEqual(_config_files_blocks_num,
+ mock_upd_ses_ts.call_count)
+ self.assertEqual(_config_files_blocks_num,
+ mock_upd_ses_suts.call_count)
+ self.assertEqual(_config_files_blocks_num,
+ mock_upd_ses_tc_params.call_count)
+
+ @mock.patch.object(common_utils, 'open_relative_file')
+ @mock.patch.object(yaml_loader, 'yaml_load')
+ def test__load_session_profile_unequal_num_of_cfg_blocks(
+ self, mock_yaml_load, *args):
+ vnfd = copy.deepcopy(VNFD['vnfd:vnfd-catalog']['vnfd'][0])
+ ls_traffic_gen = tg_landslide.LandslideTrafficGen(NAME, vnfd, self._id)
+ ls_traffic_gen.scenario_helper.scenario_cfg = self.SCENARIO_CFG
+ mock_yaml_load.return_value = copy.deepcopy(SESSION_PROFILE)
+ # Delete test_servers item from pod file to make it not valid
+ ls_traffic_gen.vnfd_helper['config'].pop()
+ with self.assertRaises(RuntimeError):
+ ls_traffic_gen._load_session_profile()
+
+ @mock.patch.object(common_utils, 'open_relative_file')
+ @mock.patch.object(yaml_loader, 'yaml_load')
+ def test__load_session_profile_test_type_mismatch(self, mock_yaml_load,
+ *args):
+ vnfd = copy.deepcopy(VNFD['vnfd:vnfd-catalog']['vnfd'][0])
+ # Swap test servers data in pod file
+ vnfd['config'] = list(reversed(vnfd['config']))
+ ls_tg = tg_landslide.LandslideTrafficGen(NAME, vnfd, self._id)
+ ls_tg.scenario_helper.scenario_cfg = self.SCENARIO_CFG
+ mock_yaml_load.return_value = SESSION_PROFILE
+ with self.assertRaises(RuntimeError):
+ ls_tg._load_session_profile()
+
+
+class TestLandslideResourceHelper(unittest.TestCase):
+
+ PROTO_PORT = 8080
+ EXAMPLE_URL = ''.join([TAS_INFO['proto'], '://', TAS_INFO['ip'], ':',
+ str(PROTO_PORT), '/api/'])
+ SUCCESS_CREATED_CODE = 201
+ SUCCESS_OK_CODE = 200
+ INVALID_REST_CODE = '400'
+ NOT_MODIFIED_CODE = 500810
+ ERROR_CODE = 500800
+ SUCCESS_RECORD_ID = 11
+ EXPIRE_DATE = '2020/01/01 12:00 FLE Standard Time'
+ TEST_USER = 'test'
+ TEST_TERMINATED = 1
+ AUTH_DATA = {'user': TAS_INFO['user'], 'password': TAS_INFO['password']}
+ TEST_SESSION_NAME = 'default_bearer_capacity'
+
+ USERS_DATA = {
+ "users": [{
+ "url": ''.join([EXAMPLE_URL, 'users/', str(SUCCESS_RECORD_ID)]),
+ "id": SUCCESS_RECORD_ID,
+ "level": 1,
+ "username": TEST_USER
+ }]
+ }
+
+ CREATE_USER_DATA = {'username': TAS_INFO['user'],
+ 'expiresOn': EXPIRE_DATE,
+ 'level': 1,
+ 'contactInformation': '',
+ 'fullName': 'Test User',
+ 'password': TAS_INFO['password'],
+ 'isActive': 'true'}
+
+ SUTS_DATA = {
+ "suts": [
+ {
+ "url": ''.join([EXAMPLE_URL, 'suts/', str(SUCCESS_RECORD_ID)]),
+ "id": SUCCESS_RECORD_ID,
+ "name": "10.41.32.1"
+ }]}
+
+ TEST_SERVERS_DATA = {
+ "testServers": [
+ {
+ "url": ''.join([EXAMPLE_URL, "testServers/1"]),
+ "id": 1,
+ "name": TEST_SERVERS[0]['name'],
+ "state": "READY",
+ "version": "16.4.0.10"
+ },
+ {
+ "url": ''.join([EXAMPLE_URL, "testServers/2"]),
+ "id": 2,
+ "name": TEST_SERVERS[1]['name'],
+ "state": "READY",
+ "version": "16.4.0.10"
+ }
+
+ ]
+ }
+
+ RUN_ID = 3
+
+ RUNNING_TESTS_DATA = {
+ "runningTests": [{
+ "url": ''.join([EXAMPLE_URL, "runningTests/{}".format(RUN_ID)]),
+ "measurementsUrl": ''.join(
+ [EXAMPLE_URL,
+ "runningTests/{}/measurements".format(RUN_ID)]),
+ "criteriaUrl": ''.join(
+ [EXAMPLE_URL,
+ "runningTests/{}/criteria".format(RUN_ID)]),
+ "noteToUser": "",
+ "id": RUN_ID,
+ "library": SUCCESS_RECORD_ID,
+ "name": "default_bearer_capacity",
+ "user": TEST_USER,
+ "criteriaStatus": "NA",
+ "testStateOrStep": "COMPLETE"
+ }]}
+
+ TEST_RESULTS_DATA = {
+ "interval": 0,
+ "elapsedTime": 138,
+ "actualTime": 1521548057296,
+ "iteration": 1,
+ "tabs": {
+ "Test Summary": {
+ "Start Time": "Tue Mar 20 07:11:55 CDT 2018",
+ "Actual Dedicated Bearer Session Connects": "100",
+ "Actual Dedicated Bearer Session Disconnects": "100",
+ "Actual Disconnect Rate(Sessions / Second)(P - I)": "164.804",
+ "Average Session Disconnect Time(P - I)": "5.024 s",
+ "Total Data Sent + Received Packets / Sec(P - I)": "1,452.294"
+ }}}
+
+ def setUp(self):
+ self.mock_lsapi = mock.patch.object(tg_landslide, 'LsApi')
+ self.mock_lsapi.start()
+
+ mock_env_helper = mock.Mock()
+ self.res_helper = tg_landslide.LandslideResourceHelper(mock_env_helper)
+ self.res_helper._url = EXAMPLE_URL
+
+ self.addCleanup(self._cleanup)
+
+ def _cleanup(self):
+ self.mock_lsapi.stop()
+ self.res_helper._url = None
+
+ def test___init__(self, *args):
+ self.assertIsInstance(self.res_helper,
+ tg_landslide.LandslideResourceHelper)
+ self.assertEqual({}, self.res_helper._result)
+ self.assertIsNone(self.res_helper.run_id)
+
+ @mock.patch.object(tg_landslide.LandslideResourceHelper,
+ 'stop_running_tests')
+ @mock.patch.object(tg_landslide.LandslideResourceHelper,
+ 'get_running_tests')
+ def test_abort_running_tests_no_running_tests(self, mock_get_tests,
+ mock_stop_tests, *args):
+ tests_data = [{'id': self.SUCCESS_RECORD_ID,
+ 'testStateOrStep': 'COMPLETE'}]
+ mock_get_tests.return_value = tests_data
+ self.assertIsNone(self.res_helper.abort_running_tests())
+ mock_stop_tests.assert_not_called()
+
+ @mock.patch.object(time, 'sleep')
+ @mock.patch.object(tg_landslide.LandslideResourceHelper,
+ 'stop_running_tests')
+ @mock.patch.object(tg_landslide.LandslideResourceHelper,
+ 'get_running_tests')
+ def test_abort_running_tests(self, mock_get_tests, mock_stop_tests, *args):
+ test_states_seq = iter(['RUNNING', 'COMPLETE'])
+
+ def configure_mock(*args):
+ return [{'id': self.SUCCESS_RECORD_ID,
+ 'testStateOrStep': next(test_states_seq)}]
+
+ mock_get_tests.side_effect = configure_mock
+ self.assertIsNone(self.res_helper.abort_running_tests())
+ mock_stop_tests.assert_called_once_with(
+ running_test_id=self.SUCCESS_RECORD_ID,
+ force=True)
+ self.assertEqual(2, mock_get_tests.call_count)
+
+ @mock.patch.object(tg_landslide.LandslideResourceHelper,
+ 'stop_running_tests')
+ @mock.patch.object(tg_landslide.LandslideResourceHelper,
+ 'get_running_tests')
+ def test_abort_running_tests_error(self, mock_get_tests, mock_stop_tests,
+ *args):
+ tests_data = {'id': self.SUCCESS_RECORD_ID,
+ 'testStateOrStep': 'RUNNING'}
+ mock_get_tests.return_value = [tests_data]
+ with self.assertRaises(RuntimeError):
+ self.res_helper.abort_running_tests(timeout=1, delay=1)
+ mock_stop_tests.assert_called_with(
+ running_test_id=self.SUCCESS_RECORD_ID,
+ force=True)
+
+ def test__build_url(self, *args):
+ resource = 'users'
+ action = {'action': 'userCreate'}
+ expected_url = ''.join([EXAMPLE_URL, 'users?action=userCreate'])
+ self.assertEqual(expected_url,
+ self.res_helper._build_url(resource, action))
+
+ def test__build_url_error(self, *args):
+ resource = ''
+ action = {'action': 'userCreate'}
+
+ with self.assertRaises(ValueError):
+ self.res_helper._build_url(resource, action)
+
+ def test_get_response_params(self, *args):
+ method = 'get'
+ resource = 'users'
+ mock_session = mock.Mock(spec=requests.Session)
+ get_resp_data = {'status_code': self.SUCCESS_OK_CODE,
+ 'json.return_value': self.USERS_DATA}
+ mock_session.get.return_value.configure_mock(**get_resp_data)
+ self.res_helper.session = mock_session
+ resp = self.res_helper.get_response_params(method, resource)
+ self.assertTrue(resp)
+
+ @mock.patch.object(tg_landslide.LandslideResourceHelper, '_get_users')
+ @mock.patch.object(time, 'time')
+ def test__create_user(self, mock_time, mock_get_users, *args):
+ mock_time.strftime.return_value = self.EXPIRE_DATE
+ post_resp_data = {'status_code': self.SUCCESS_CREATED_CODE,
+ 'json.return_value': {'id': self.SUCCESS_RECORD_ID}}
+ mock_session = mock.Mock(spec=requests.Session)
+ mock_session.post.return_value.configure_mock(**post_resp_data)
+ self.res_helper.session = mock_session
+ self.assertEqual(self.SUCCESS_RECORD_ID,
+ self.res_helper._create_user(self.AUTH_DATA))
+ mock_get_users.assert_not_called()
+
+ @mock.patch.object(tg_landslide.LandslideResourceHelper, '_modify_user')
+ @mock.patch.object(time, 'time')
+ def test__create_user_username_exists(self, mock_time, mock_modify_user,
+ *args):
+ mock_time.strftime.return_value = self.EXPIRE_DATE
+ mock_modify_user.return_value = {'id': self.SUCCESS_RECORD_ID,
+ 'result': 'No changes requested'}
+ post_resp_data = {
+ 'status_code': self.ERROR_CODE,
+ 'json.return_value': {'id': self.SUCCESS_OK_CODE,
+ 'apiCode': self.NOT_MODIFIED_CODE}}
+ mock_session = mock.Mock(spec=requests.Session)
+ mock_session.post.return_value.configure_mock(**post_resp_data)
+ self.res_helper.session = mock_session
+ res = self.res_helper._create_user(self.AUTH_DATA)
+ mock_modify_user.assert_called_once_with(TAS_INFO['user'],
+ {'isActive': 'true'})
+ self.assertEqual(self.SUCCESS_RECORD_ID, res)
+
+ @mock.patch.object(time, 'time')
+ def test__create_user_error(self, mock_time, *args):
+ mock_time.strftime.return_value = self.EXPIRE_DATE
+ mock_session = mock.Mock(spec=requests.Session)
+ post_resp_data = {'status_code': self.SUCCESS_OK_CODE,
+ 'json.return_value': {'apiCode': self.ERROR_CODE}}
+ mock_session.post.return_value.configure_mock(**post_resp_data)
+ self.res_helper.session = mock_session
+ with self.assertRaises(exceptions.RestApiError):
+ self.res_helper._create_user(self.AUTH_DATA)
+
+ def test__modify_user(self, *args):
+ post_data = {'username': 'test_user'}
+ mock_session = mock.Mock(spec=requests.Session)
+ post_resp_data = {'status_code': self.SUCCESS_OK_CODE,
+ 'json.return_value': {'id': self.SUCCESS_RECORD_ID}}
+ mock_session.post.return_value.configure_mock(**post_resp_data)
+ self.res_helper.session = mock_session
+ res = self.res_helper._modify_user(username=self.TEST_USER,
+ fields=post_data)
+ self.assertEqual(self.SUCCESS_RECORD_ID, res['id'])
+
+ def test__modify_user_rest_resp_fail(self, *args):
+ post_data = {'non-existing-key': ''}
+ mock_session = mock.Mock(spec=requests.Session)
+ mock_session.post.ok = False
+ self.res_helper.session = mock_session
+ self.assertRaises(exceptions.RestApiError,
+ self.res_helper._modify_user,
+ username=self.TEST_USER, fields=post_data)
+ mock_session.post.assert_called_once()
+
+ def test__delete_user(self, *args):
+ mock_session = mock.Mock(spec=requests.Session)
+ self.res_helper.session = mock_session
+ self.assertIsNone(self.res_helper._delete_user(
+ username=self.TEST_USER))
+
+ def test__get_users(self, *args):
+ mock_session = mock.Mock(spec=requests.Session)
+ get_resp_data = {'status_code': self.SUCCESS_OK_CODE,
+ 'json.return_value': self.USERS_DATA}
+ mock_session.get.return_value.configure_mock(**get_resp_data)
+ self.res_helper.session = mock_session
+ self.assertEqual(self.USERS_DATA['users'],
+ self.res_helper._get_users())
+
+ def test_exec_rest_request(self, *args):
+ resource = 'testServers'
+ action = {'action': 'modify'}
+ expected_url = ''.join([EXAMPLE_URL, 'testServers?action=modify'])
+ post_resp_data = {'status_code': self.SUCCESS_CREATED_CODE,
+ 'json.return_value': {'id': self.SUCCESS_RECORD_ID}}
+ mock_session = mock.Mock(spec=requests.Session)
+ mock_session.post.return_value.configure_mock(**post_resp_data)
+ self.res_helper.session = mock_session
+ self.res_helper.exec_rest_request('post', resource, action)
+ self.res_helper.session.post.assert_called_once_with(expected_url,
+ json={})
+
+ def test_exec_rest_request_unsupported_method_error(self, *args):
+ resource = 'testServers'
+ action = {'action': 'modify'}
+ with self.assertRaises(ValueError):
+ self.res_helper.exec_rest_request('patch', resource, action)
+
+ def test_exec_rest_request_missed_action_arg(self, *args):
+ resource = 'testServers'
+ with self.assertRaises(ValueError):
+ self.res_helper.exec_rest_request('post', resource)
+
+ def test_exec_rest_request_raise_exc(self):
+ resource = 'users'
+ action = {'action': 'modify'}
+ post_resp_data = {'status_code': self.ERROR_CODE,
+ 'json.return_value': {
+ 'status_code': self.ERROR_CODE}}
+ mock_session = mock.Mock(spec=requests.Session)
+ mock_session.post.return_value.configure_mock(**post_resp_data)
+ self.assertRaises(exceptions.RestApiError,
+ self.res_helper.exec_rest_request,
+ 'post', resource, action, raise_exc=True)
+
+ @mock.patch.object(time, 'time')
+ def test_connect(self, mock_time, *args):
+ vnfd = VNFD['vnfd:vnfd-catalog']['vnfd'][0]
+ mock_time.strftime.return_value = self.EXPIRE_DATE
+ self.res_helper.vnfd_helper = vnfd
+
+ self.res_helper._tcl = mock.Mock()
+ post_resp_data = {'status_code': self.SUCCESS_CREATED_CODE,
+ 'json.return_value': {'id': self.SUCCESS_RECORD_ID}}
+ mock_session = mock.Mock(spec=requests.Session, headers={})
+ mock_session.post.return_value.configure_mock(**post_resp_data)
+ self.res_helper.session = mock_session
+ self.assertIsInstance(self.res_helper.connect(), requests.Session)
+ self.res_helper._tcl.connect.assert_called_once_with(
+ TAS_INFO['ip'],
+ TAS_INFO['user'],
+ TAS_INFO['password'])
+
+ def test_disconnect(self, *args):
+ self.res_helper._tcl = mock.Mock()
+ self.assertIsNone(self.res_helper.disconnect())
+ self.assertIsNone(self.res_helper.session)
+ self.res_helper._tcl.disconnect.assert_called_once()
+
+ def test_terminate(self, *args):
+ self.assertIsNone(self.res_helper.terminate())
+ self.assertEqual(self.TEST_TERMINATED,
+ self.res_helper._terminated.value)
+
+ def test_create_dmf(self, *args):
+ self.res_helper._tcl = mock.Mock()
+ self.res_helper.vnfd_helper = mock.Mock(spec=vnf_base.VnfdHelper)
+ self.res_helper.vnfd_helper.mgmt_interface = {'user': TAS_INFO['user']}
+ self.assertIsNone(self.res_helper.create_dmf(DMF_CFG))
+ self.res_helper._tcl.create_dmf.assert_called_once_with(DMF_CFG)
+
+ def test_create_dmf_as_list(self, *args):
+ self.res_helper._tcl = mock.Mock()
+ self.res_helper.vnfd_helper = mock.Mock(spec=vnf_base.VnfdHelper)
+ self.res_helper.vnfd_helper.mgmt_interface = {'user': TAS_INFO['user']}
+ self.assertIsNone(self.res_helper.create_dmf([DMF_CFG]))
+ self.res_helper._tcl.create_dmf.assert_called_once_with(DMF_CFG)
+
+ def test_delete_dmf(self, *args):
+ self.res_helper._tcl = mock.Mock()
+ self.assertIsNone(self.res_helper.delete_dmf(DMF_CFG))
+ self.res_helper._tcl.delete_dmf.assert_called_once_with(DMF_CFG)
+
+ def test_delete_dmf_as_list(self, *args):
+ self.res_helper._tcl = mock.Mock()
+ self.assertIsNone(self.res_helper.delete_dmf([DMF_CFG]))
+ self.res_helper._tcl.delete_dmf.assert_called_once_with(DMF_CFG)
+
+ @mock.patch.object(tg_landslide.LandslideResourceHelper, 'configure_sut')
+ def test_create_suts(self, mock_configure_sut, *args):
+ mock_session = mock.Mock(spec=requests.Session)
+ post_resp_data = {'status_code': self.SUCCESS_CREATED_CODE}
+ mock_session.post.return_value.configure_mock(**post_resp_data)
+ self.res_helper.session = mock_session
+ self.assertIsNone(self.res_helper.create_suts(TS1_SUTS))
+ mock_configure_sut.assert_not_called()
+
+ @mock.patch.object(tg_landslide.LandslideResourceHelper, 'configure_sut')
+ def test_create_suts_sut_exists(self, mock_configure_sut, *args):
+ sut_name = 'test_sut'
+ suts = [
+ {'name': sut_name,
+ 'role': 'SgwControlAddr',
+ 'managementIp': '12.0.1.1',
+ 'ip': '10.42.32.100'
+ }
+ ]
+ mock_session = mock.Mock(spec=requests.Session)
+ post_resp_data = {'status_code': self.NOT_MODIFIED_CODE}
+ mock_session.post.return_value.configure_mock(**post_resp_data)
+ self.res_helper.session = mock_session
+ self.assertIsNone(self.res_helper.create_suts(suts))
+ mock_configure_sut.assert_called_once_with(
+ sut_name=sut_name,
+ json_data={k: v for k, v in suts[0].items()
+ if k not in {'phy', 'nextHop', 'role', 'name'}})
+
+ def test_get_suts(self, *args):
+ mock_session = mock.Mock(spec=requests.Session)
+ get_resp_data = {'status_code': self.SUCCESS_OK_CODE,
+ 'json.return_value': self.SUTS_DATA}
+ mock_session.get.return_value.configure_mock(**get_resp_data)
+ self.res_helper.session = mock_session
+ self.assertIsInstance(self.res_helper.get_suts(), list)
+
+ def test_get_suts_single_id(self, *args):
+ mock_session = mock.Mock(spec=requests.Session)
+ get_resp_data = {'status_code': self.SUCCESS_OK_CODE,
+ 'json.return_value': self.SUTS_DATA['suts'][0]}
+ mock_session.get.return_value.configure_mock(**get_resp_data)
+ self.res_helper.session = mock_session
+ self.assertIsInstance(self.res_helper.get_suts(suts_id=2), dict)
+
+ def test_configure_sut(self, *args):
+ post_data = {'managementIp': '2.2.2.2'}
+ mock_session = mock.Mock(spec=requests.Session)
+ post_resp_data = {'status_code': self.SUCCESS_OK_CODE,
+ 'json.return_value': {'id': self.SUCCESS_RECORD_ID}}
+ mock_session.post.return_value.configure_mock(**post_resp_data)
+ self.res_helper.session = mock_session
+ self.assertIsNone(self.res_helper.configure_sut('test_name',
+ post_data))
+ mock_session.post.assert_called_once()
+
+ def test_configure_sut_error(self, *args):
+ post_data = {'managementIp': '2.2.2.2'}
+ mock_session = mock.Mock(spec=requests.Session)
+ post_resp_data = {'status_code': self.NOT_MODIFIED_CODE}
+ mock_session.post.return_value.configure_mock(**post_resp_data)
+ self.res_helper.session = mock_session
+ with self.assertRaises(exceptions.RestApiError):
+ self.res_helper.configure_sut('test_name', post_data)
+
+ def test_delete_suts(self, *args):
+ mock_session = mock.Mock(spec=requests.Session)
+ get_resp_data = {'status_code': self.SUCCESS_OK_CODE,
+ 'json.return_value': self.SUTS_DATA}
+ delete_resp_data = {'status_code': self.SUCCESS_OK_CODE}
+ mock_session.get.return_value.configure_mock(**get_resp_data)
+ mock_session.delete.return_value.configure_mock(**delete_resp_data)
+ self.res_helper.session = mock_session
+ self.assertIsNone(self.res_helper.delete_suts())
+ mock_session.delete.assert_called_once()
+
+ @mock.patch.object(tg_landslide.LandslideResourceHelper,
+ 'get_test_servers')
+ def test__check_test_servers_state(self, mock_get_test_servers, *args):
+ mock_get_test_servers.return_value = \
+ self.TEST_SERVERS_DATA['testServers']
+ self.res_helper._check_test_servers_state()
+ mock_get_test_servers.assert_called_once()
+
+ @mock.patch.object(tg_landslide.LandslideResourceHelper,
+ 'get_test_servers')
+ def test__check_test_servers_state_server_not_ready(
+ self, mock_get_test_servers, *args):
+ test_servers_not_ready = [
+ {
+ "url": ''.join([EXAMPLE_URL, "testServers/1"]),
+ "id": 1,
+ "name": "TestServer_1",
+ "state": "NOT_READY",
+ "version": "16.4.0.10"
+ }
+ ]
+
+ mock_get_test_servers.return_value = test_servers_not_ready
+ with self.assertRaises(RuntimeError):
+ self.res_helper._check_test_servers_state(timeout=1, delay=0)
+
+ @mock.patch.object(tg_landslide.LandslideResourceHelper,
+ '_check_test_servers_state')
+ def test_create_test_servers(self, mock_check_ts_state, *args):
+ test_servers_ids = [
+ ts['id'] for ts in self.TEST_SERVERS_DATA['testServers']]
+
+ self.res_helper.license_data['lic_id'] = TAS_INFO['license']
+ self.res_helper._tcl.create_test_server = mock.Mock()
+ self.res_helper._tcl.create_test_server.side_effect = test_servers_ids
+ self.assertIsNone(self.res_helper.create_test_servers(TEST_SERVERS))
+ mock_check_ts_state.assert_called_once_with(test_servers_ids)
+
+ @mock.patch.object(tg_landslide.LandslideTclClient,
+ 'resolve_test_server_name')
+ @mock.patch.object(tg_landslide.LsTclHandler, 'execute')
+ def test_create_test_servers_error(self, mock_execute,
+ mock_resolve_ts_name, *args):
+ self.res_helper.license_data['lic_id'] = TAS_INFO['license']
+ # Return message for case test server wasn't created
+ mock_execute.return_value = 'TS not found'
+ # Return message for case test server name wasn't resolved
+ mock_resolve_ts_name.return_value = 'TS not found'
+ with self.assertRaises(RuntimeError):
+ self.res_helper.create_test_servers(TEST_SERVERS)
+
+ def test_get_test_servers(self, *args):
+ mock_session = mock.Mock(spec=requests.Session)
+ get_resp_data = {'status_code': self.SUCCESS_OK_CODE,
+ 'json.return_value': self.TEST_SERVERS_DATA}
+ mock_session.get.return_value.configure_mock(**get_resp_data)
+ self.res_helper.session = mock_session
+ res = self.res_helper.get_test_servers()
+ self.assertEqual(self.TEST_SERVERS_DATA['testServers'], res)
+
+ def test_get_test_servers_by_id(self, *args):
+ mock_session = mock.Mock(spec=requests.Session)
+
+ _ts = self.TEST_SERVERS_DATA['testServers'][0]
+ get_resp_data = {'status_code': self.SUCCESS_OK_CODE,
+ 'json.return_value': _ts}
+ mock_session.get.return_value.configure_mock(**get_resp_data)
+ self.res_helper.session = mock_session
+ res = self.res_helper.get_test_servers(test_server_ids=[_ts['id']])
+ self.assertEqual([_ts], res)
+
+ def test_configure_test_servers(self, *args):
+ mock_session = mock.Mock(spec=requests.Session)
+ get_resp_data = {'status_code': self.SUCCESS_OK_CODE,
+ 'json.return_value': self.TEST_SERVERS_DATA}
+ mock_session.get.return_value.configure_mock(**get_resp_data)
+ self.res_helper.session = mock_session
+ res = self.res_helper.configure_test_servers(
+ action={'action': 'recycle'})
+ self.assertEqual(
+ [x['id'] for x in self.TEST_SERVERS_DATA['testServers']],
+ res)
+ self.assertEqual(len(self.TEST_SERVERS_DATA['testServers']),
+ mock_session.post.call_count)
+
+ def test_delete_test_servers(self, *args):
+ mock_session = mock.Mock(spec=requests.Session)
+ get_resp_data = {'status_code': self.SUCCESS_OK_CODE,
+ 'json.return_value': self.TEST_SERVERS_DATA}
+ mock_session.get.return_value.configure_mock(**get_resp_data)
+ self.res_helper.session = mock_session
+ self.assertIsNone(self.res_helper.delete_test_servers())
+ self.assertEqual(len(self.TEST_SERVERS_DATA['testServers']),
+ mock_session.delete.call_count)
+
+ def test_create_test_session_res_helper(self, *args):
+ self.res_helper._user_id = self.SUCCESS_RECORD_ID
+ self.res_helper._tcl = mock.Mock()
+ self.res_helper.scenario_helper.all_options = {'traffic_duration': 71}
+ _session = {'name': 'test', 'duration': 60}
+ self.assertIsNone(self.res_helper.create_test_session(_session))
+ self.res_helper._tcl.create_test_session.assert_called_once_with(
+ {'name': _session['name'],
+ 'duration': 71,
+ 'library': self.SUCCESS_RECORD_ID})
+
+ def test_create_test_session_res_helper_no_traffic_duration(self, *args):
+ self.res_helper._user_id = self.SUCCESS_RECORD_ID
+ self.res_helper._tcl = mock.Mock()
+ self.res_helper.scenario_helper.all_options = {}
+ _session = {'name': 'test', 'duration': 60}
+ self.assertIsNone(self.res_helper.create_test_session(_session))
+ self.res_helper._tcl.create_test_session.assert_called_once_with(
+ {'name': _session['name'],
+ 'duration': 60,
+ 'library': self.SUCCESS_RECORD_ID})
+
+ @mock.patch.object(tg_landslide.LandslideTclClient,
+ 'resolve_test_server_name',
+ return_value='Not Found')
+ def test_create_test_session_ts_name_not_found(self, *args):
+ self.res_helper._user_id = self.SUCCESS_RECORD_ID
+ test_session = {
+ 'duration': 60,
+ 'description': 'UE default bearer creation test case',
+ 'name': 'default_bearer_capacity',
+ 'tsGroups': [{'testCases': [{'type': 'SGW_Node',
+ 'name': ''}],
+ 'tsId': 'TestServer_3'}]
+ }
+ with self.assertRaises(RuntimeError):
+ self.res_helper.create_test_session(test_session)
+
+ def test_get_test_session(self, *args):
+ test_session = {"name": self.TEST_SESSION_NAME}
+ self.res_helper._user_id = self.SUCCESS_RECORD_ID
+ mock_session = mock.Mock(spec=requests.Session)
+ get_resp_data = {'status_code': self.SUCCESS_OK_CODE,
+ 'json.return_value': test_session}
+ mock_session.get.return_value.configure_mock(**get_resp_data)
+ self.res_helper.session = mock_session
+ res = self.res_helper.get_test_session(self.TEST_SESSION_NAME)
+ self.assertEqual(test_session, res)
+
+ def test_configure_test_session(self, *args):
+ test_session = {'name': self.TEST_SESSION_NAME}
+ self.res_helper._user_id = self.SUCCESS_RECORD_ID
+ self.res_helper.user_lib_uri = 'libraries/{{}}/{}'.format(
+ self.res_helper.test_session_uri)
+ mock_session = mock.Mock(spec=requests.Session)
+ self.res_helper.session = mock_session
+ res = self.res_helper.configure_test_session(self.TEST_SESSION_NAME,
+ test_session)
+ self.assertIsNotNone(res)
+ mock_session.post.assert_called_once()
+
+ def test_delete_test_session(self, *args):
+ self.res_helper._user_id = self.SUCCESS_RECORD_ID
+ self.res_helper.user_lib_uri = 'libraries/{{}}/{}'.format(
+ self.res_helper.test_session_uri)
+ mock_session = mock.Mock(spec=requests.Session)
+ self.res_helper.session = mock_session
+ res = self.res_helper.delete_test_session(self.TEST_SESSION_NAME)
+ self.assertIsNotNone(res)
+ mock_session.delete.assert_called_once()
+
+ def test_create_running_tests(self, *args):
+ self.res_helper._user_id = self.SUCCESS_RECORD_ID
+ test_session = {'id': self.SUCCESS_RECORD_ID}
+ mock_session = mock.Mock(spec=requests.Session)
+ post_resp_data = {'status_code': self.SUCCESS_CREATED_CODE,
+ 'json.return_value': test_session}
+ mock_session.post.return_value.configure_mock(**post_resp_data)
+ self.res_helper.session = mock_session
+ self.res_helper.create_running_tests(self.TEST_SESSION_NAME)
+ self.assertEqual(self.SUCCESS_RECORD_ID, self.res_helper.run_id)
+
+ def test_create_running_tests_error(self, *args):
+ self.res_helper._user_id = self.SUCCESS_RECORD_ID
+ mock_session = mock.Mock(spec=requests.Session)
+ post_resp_data = {'status_code': self.NOT_MODIFIED_CODE}
+ mock_session.post.return_value.configure_mock(**post_resp_data)
+ self.res_helper.session = mock_session
+ with self.assertRaises(exceptions.RestApiError):
+ self.res_helper.create_running_tests(self.TEST_SESSION_NAME)
+
+ def test_get_running_tests(self, *args):
+ mock_session = mock.Mock(spec=requests.Session)
+ get_resp_data = {'status_code': self.SUCCESS_OK_CODE,
+ 'json.return_value': self.RUNNING_TESTS_DATA}
+ mock_session.get.return_value.configure_mock(**get_resp_data)
+ self.res_helper.session = mock_session
+ res = self.res_helper.get_running_tests()
+ self.assertEqual(self.RUNNING_TESTS_DATA['runningTests'], res)
+
+ def test_delete_running_tests(self, *args):
+ mock_session = mock.Mock(spec=requests.Session)
+ delete_resp_data = {'status_code': self.SUCCESS_OK_CODE,
+ 'json.return_value': self.RUNNING_TESTS_DATA}
+ mock_session.delete.return_value.configure_mock(**delete_resp_data)
+ self.res_helper.session = mock_session
+ self.assertIsNone(self.res_helper.delete_running_tests())
+
+ def test__running_tests_action(self, *args):
+ action = 'abort'
+ mock_session = mock.Mock(spec=requests.Session)
+ self.res_helper.session = mock_session
+ res = self.res_helper._running_tests_action(self.SUCCESS_RECORD_ID,
+ action)
+ self.assertIsNone(res)
+
+ @mock.patch.object(tg_landslide.LandslideResourceHelper,
+ '_running_tests_action')
+ def test_stop_running_tests(self, mock_tests_action, *args):
+ res = self.res_helper.stop_running_tests(self.SUCCESS_RECORD_ID)
+ self.assertIsNone(res)
+ mock_tests_action.assert_called_once()
+
+ def test_check_running_test_state(self, *args):
+ mock_session = mock.Mock(spec=requests.Session)
+ get_resp_data = {
+ 'status_code': self.SUCCESS_OK_CODE,
+ 'json.return_value': self.RUNNING_TESTS_DATA["runningTests"][0]}
+ mock_session.get.return_value.configure_mock(**get_resp_data)
+ self.res_helper.session = mock_session
+ res = self.res_helper.check_running_test_state(self.SUCCESS_RECORD_ID)
+ self.assertEqual(
+ self.RUNNING_TESTS_DATA["runningTests"][0]['testStateOrStep'],
+ res)
+
+ def test_get_running_tests_results(self, *args):
+ mock_session = mock.Mock(spec=requests.Session)
+ get_resp_data = {'status_code': self.SUCCESS_OK_CODE,
+ 'json.return_value': self.TEST_RESULTS_DATA}
+ mock_session.get.return_value.configure_mock(**get_resp_data)
+ self.res_helper.session = mock_session
+ res = self.res_helper.get_running_tests_results(
+ self.SUCCESS_RECORD_ID)
+ self.assertEqual(self.TEST_RESULTS_DATA, res)
+
+ def test__write_results(self, *args):
+ res = self.res_helper._write_results(self.TEST_RESULTS_DATA)
+ exp_res = {
+ "Test Summary::Actual Dedicated Bearer Session Connects": 100.0,
+ "Test Summary::Actual Dedicated Bearer Session Disconnects": 100.0,
+ "Test Summary::Actual Disconnect Rate(Sessions / Second)(P - I)": 164.804,
+ "Test Summary::Average Session Disconnect Time(P - I)": 5.024,
+ "Test Summary::Total Data Sent + Received Packets / Sec(P - I)": 1452.294
+ }
+ self.assertEqual(exp_res, res)
+
+ def test__write_results_no_tabs(self, *args):
+ _res_data = copy.deepcopy(self.TEST_RESULTS_DATA)
+ del _res_data['tabs']
+ # Return None if tabs not found in test results dict
+ self.assertIsNone(self.res_helper._write_results(_res_data))
+
+ @mock.patch.object(tg_landslide.LandslideResourceHelper,
+ 'check_running_test_state')
+ @mock.patch.object(tg_landslide.LandslideResourceHelper,
+ 'get_running_tests_results')
+ def test_collect_kpi_test_running(self, mock_tests_results,
+ mock_tests_state, *args):
+ self.res_helper.run_id = self.SUCCESS_RECORD_ID
+ mock_tests_state.return_value = 'RUNNING'
+ mock_tests_results.return_value = self.TEST_RESULTS_DATA
+ res = self.res_helper.collect_kpi()
+ self.assertNotIn('done', res)
+ mock_tests_state.assert_called_once_with(self.res_helper.run_id)
+ mock_tests_results.assert_called_once_with(self.res_helper.run_id)
+
+ @mock.patch.object(tg_landslide.LandslideResourceHelper,
+ 'check_running_test_state')
+ @mock.patch.object(tg_landslide.LandslideResourceHelper,
+ 'get_running_tests_results')
+ def test_collect_kpi_test_completed(self, mock_tests_results,
+ mock_tests_state, *args):
+ self.res_helper.run_id = self.SUCCESS_RECORD_ID
+ mock_tests_state.return_value = 'COMPLETE'
+ res = self.res_helper.collect_kpi()
+ self.assertIsNotNone(res)
+ mock_tests_state.assert_called_once_with(self.res_helper.run_id)
+ mock_tests_results.assert_not_called()
+ self.assertDictContainsSubset({'done': True}, res)
+
+
+class TestLandslideTclClient(unittest.TestCase):
+ def setUp(self):
+ self.mock_tcl_handler = mock.Mock(spec=tg_landslide.LsTclHandler)
+ self.ls_res_helper = mock.Mock(
+ spec=tg_landslide.LandslideResourceHelper)
+ self.ls_tcl_client = tg_landslide.LandslideTclClient(
+ self.mock_tcl_handler,
+ self.ls_res_helper)
+
+ def test___init__(self, *args):
+ self.ls_tcl_client = tg_landslide.LandslideTclClient(
+ self.mock_tcl_handler,
+ self.ls_res_helper)
+ self.assertIsNone(self.ls_tcl_client.tcl_server_ip)
+ self.assertIsNone(self.ls_tcl_client._user)
+ self.assertIsNone(self.ls_tcl_client._library_id)
+ self.assertIsNone(self.ls_tcl_client._basic_library_id)
+ self.assertEqual(set(), self.ls_tcl_client.ts_ids)
+ self.assertIsInstance(self.ls_tcl_client._tc_types, set)
+ self.assertIsNotNone(self.ls_tcl_client._tc_types)
+
+ def test_connect_login_success(self, *args):
+ lib_id = '123'
+ exec_responses = ['java0x2', lib_id, lib_id]
+ auth = ('user', 'password')
+ self.mock_tcl_handler.execute.side_effect = exec_responses
+ self.ls_tcl_client.connect(TAS_INFO['ip'], *auth)
+ self.assertEqual(lib_id, self.ls_tcl_client._library_id)
+ self.assertEqual(lib_id, self.ls_tcl_client._basic_library_id)
+ self.assertEqual(TAS_INFO['ip'], self.ls_tcl_client.tcl_server_ip)
+ self.assertEqual(auth[0], self.ls_tcl_client._user)
+ self.assertEqual(len(exec_responses),
+ self.mock_tcl_handler.execute.call_count)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call("ls::login 1.1.1.1 user password"),
+ mock.call("ls::get [ls::query LibraryInfo -userLibraryName user] -Id"),
+ ])
+
+ def test_connect_login_failed(self, *args):
+ exec_responses = ['Login failed']
+ auth = ('user', 'password')
+ self.mock_tcl_handler.execute.side_effect = exec_responses
+ self.assertRaises(exceptions.LandslideTclException,
+ self.ls_tcl_client.connect,
+ TAS_INFO['ip'],
+ *auth)
+ self.assertIsNone(self.ls_tcl_client._library_id)
+ self.assertIsNone(self.ls_tcl_client._basic_library_id)
+ self.assertIsNone(self.ls_tcl_client.tcl_server_ip)
+ self.assertIsNone(self.ls_tcl_client._user)
+ self.assertEqual(len(exec_responses),
+ self.mock_tcl_handler.execute.call_count)
+ self.mock_tcl_handler.execute.assert_called_with(
+ "ls::login 1.1.1.1 user password")
+
+ def test_disconnect(self, *args):
+ self.ls_tcl_client.disconnect()
+ self.mock_tcl_handler.execute.assert_called_once_with("ls::logout")
+ self.assertIsNone(self.ls_tcl_client.tcl_server_ip)
+ self.assertIsNone(self.ls_tcl_client._user)
+ self.assertIsNone(self.ls_tcl_client._library_id)
+ self.assertIsNone(self.ls_tcl_client._basic_library_id)
+
+ def test_create_test_server(self, *args):
+ return_value = '2'
+ self.ls_tcl_client._ts_context.vnfd_helper = \
+ VNFD['vnfd:vnfd-catalog']['vnfd'][0]
+ self.ls_tcl_client._ts_context.license_data = {'lic_id': return_value}
+ self.mock_tcl_handler.execute.return_value = return_value
+ self.ls_tcl_client._set_thread_model = mock.Mock()
+ res = self.ls_tcl_client.create_test_server(TEST_SERVERS[1])
+ self.assertEqual(3, self.mock_tcl_handler.execute.call_count)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('ls::query TsId TestServer_2'),
+ mock.call('set ts [ls::retrieve TsInfo -Name "TestServer_2"]'),
+ mock.call('ls::get $ts -RequestedLicense'),
+ ])
+ self.ls_tcl_client._set_thread_model.assert_called_once_with(
+ TEST_SERVERS[1]['name'],
+ TEST_SERVERS[1]['thread_model'])
+ self.assertEqual(int(return_value), res)
+
+ def test_create_test_server_fail_limit_reach(self, *args):
+ self.mock_tcl_handler.execute.side_effect = ['TS not found',
+ 'Add failed']
+ self.assertRaises(RuntimeError,
+ self.ls_tcl_client.create_test_server,
+ TEST_SERVERS[0])
+ self.assertEqual(2, self.mock_tcl_handler.execute.call_count)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('ls::query TsId TestServer_1'),
+ mock.call('ls::perform AddTs -Name "TestServer_1" '
+ '-Ip "192.168.122.101"'),
+ ])
+
+ def test__add_test_server(self):
+ ts_id = '2'
+ self.mock_tcl_handler.execute.side_effect = ['TS not found', ts_id]
+ self.assertEqual(ts_id,
+ self.ls_tcl_client._add_test_server('name', 'ip'))
+ self.assertEqual(2, self.mock_tcl_handler.execute.call_count)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('ls::query TsId name'),
+ mock.call('ls::perform AddTs -Name "name" -Ip "ip"'),
+ ])
+
+ def test__add_test_server_failed(self):
+ self.mock_tcl_handler.execute.side_effect = ['TS not found',
+ 'Add failed']
+ self.assertRaises(RuntimeError, self.ls_tcl_client._add_test_server,
+ 'name', 'ip')
+ self.assertEqual(2, self.mock_tcl_handler.execute.call_count)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('ls::query TsId name'),
+ mock.call('ls::perform AddTs -Name "name" -Ip "ip"'),
+ ])
+
+ def test__update_license(self):
+ curr_lic_id = '111'
+ new_lic_id = '222'
+ exec_resp = ['java0x4',
+ curr_lic_id,
+ TCL_SUCCESS_RESPONSE,
+ TCL_SUCCESS_RESPONSE]
+ self.ls_tcl_client._ts_context.license_data = {'lic_id': new_lic_id}
+ self.mock_tcl_handler.execute.side_effect = exec_resp
+ self.ls_tcl_client._update_license('name')
+ self.assertEqual(len(exec_resp),
+ self.mock_tcl_handler.execute.call_count)
+
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('set ts [ls::retrieve TsInfo -Name "name"]'),
+ mock.call('ls::get $ts -RequestedLicense'),
+ mock.call('ls::config $ts -RequestedLicense 222'),
+ mock.call('ls::perform ModifyTs $ts'),
+ ])
+
+ def test__update_license_same_as_current(self):
+ curr_lic_id = '111'
+ new_lic_id = '111'
+ exec_resp = ['java0x4', curr_lic_id]
+ self.ls_tcl_client._ts_context.license_data = {'lic_id': new_lic_id}
+ self.mock_tcl_handler.execute.side_effect = exec_resp
+ self.ls_tcl_client._update_license('name')
+ self.assertEqual(len(exec_resp),
+ self.mock_tcl_handler.execute.call_count)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('set ts [ls::retrieve TsInfo -Name "name"]'),
+ mock.call('ls::get $ts -RequestedLicense'),
+ ])
+
+ def test__set_thread_model_update_needed(self):
+ self.ls_tcl_client._ts_context.vnfd_helper = {
+ 'mgmt-interface': {
+ 'cfguser_password': 'cfguser_password'
+ }
+ }
+ exec_resp = ['java0x4', 'V0', '', '']
+ self.mock_tcl_handler.execute.side_effect = exec_resp
+ self.ls_tcl_client._set_thread_model('name', 'Fireball')
+ self.assertEqual(len(exec_resp),
+ self.mock_tcl_handler.execute.call_count)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('set tsc [ls::perform RetrieveTsConfiguration '
+ '-name "name" cfguser_password]'),
+ mock.call('ls::get $tsc -ThreadModel'),
+ mock.call('ls::config $tsc -ThreadModel "V1_FB3"'),
+ mock.call('ls::perform ApplyTsConfiguration $tsc cfguser_password'),
+ ])
+
+ def test__set_thread_model_no_update_needed(self):
+ self.ls_tcl_client._ts_context.vnfd_helper = {
+ 'mgmt-interface': {
+ 'cfguser_password': 'cfguser_password'
+ }
+ }
+ exec_resp = ['java0x4', 'V0']
+ self.mock_tcl_handler.execute.side_effect = exec_resp
+ self.ls_tcl_client._set_thread_model('name', 'Legacy')
+ self.assertEqual(len(exec_resp),
+ self.mock_tcl_handler.execute.call_count)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('set tsc [ls::perform RetrieveTsConfiguration '
+ '-name "name" cfguser_password]'),
+ mock.call('ls::get $tsc -ThreadModel'),
+ ])
+
+ @mock.patch.object(tg_landslide.LandslideTclClient,
+ 'resolve_test_server_name', side_effect=['4', '2'])
+ def test_create_test_session(self, *args):
+ _session_profile = copy.deepcopy(SESSION_PROFILE)
+ _session_profile['reservations'] = RESERVATIONS
+ self.ls_tcl_client._save_test_session = mock.Mock()
+ self.ls_tcl_client._configure_ts_group = mock.Mock()
+ self.ls_tcl_client._library_id = 42
+ self.ls_tcl_client.create_test_session(_session_profile)
+ self.assertEqual(17, self.mock_tcl_handler.execute.call_count)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('set test_ [ls::create TestSession]'),
+ mock.call('ls::config $test_ -Library 42 '
+ '-Name "default_bearer_capacity"'),
+ mock.call('ls::config $test_ -Description ' \
+ '"UE default bearer creation test case"'),
+ mock.call('ls::config $test_ -Keywords ""'),
+ mock.call('ls::config $test_ -Duration "60"'),
+ mock.call('ls::config $test_ -Iterations "1"'),
+ # _configure_reservation
+ mock.call('set reservation_ [ls::create Reservation -under $test_]'),
+ mock.call('ls::config $reservation_ -TsIndex 0 '
+ '-TsId 4 -TsName "TestServer_1"'),
+ mock.call('set physubnet_ [ls::create PhySubnet -under $reservation_]'),
+ mock.call('ls::config $physubnet_ -Name "eth1" -Base "10.42.32.100" '
+ '-Mask "/24" -NumIps 20'),
+ # _configure_reservation
+ mock.call('set reservation_ [ls::create Reservation -under $test_]'),
+ mock.call('ls::config $reservation_ -TsIndex 1 '
+ '-TsId 2 -TsName "TestServer_2"'),
+ mock.call('set physubnet_ [ls::create PhySubnet -under $reservation_]'),
+ mock.call('ls::config $physubnet_ -Name "eth1" -Base "10.42.32.1" '
+ '-Mask "/24" -NumIps 100'),
+ mock.call('set physubnet_ [ls::create PhySubnet -under $reservation_]'),
+ mock.call('ls::config $physubnet_ -Name "eth2" -Base "10.42.33.1" '
+ '-Mask "/24" -NumIps 100'),
+ # _configure_report_options
+ mock.call('ls::config $test_.ReportOptions -Format 1 -Ts -3 -Tc -3'),
+ ])
+
+ def test_create_dmf(self):
+ self.mock_tcl_handler.execute.return_value = '2'
+ self.ls_tcl_client._save_dmf = mock.Mock()
+ self.ls_tcl_client.create_dmf(copy.deepcopy(DMF_CFG))
+ self.assertEqual(6, self.mock_tcl_handler.execute.call_count)
+ # This is needed because the dictionary is unordered and the arguments
+ # can come in either order
+ call1 = mock.call(
+ 'ls::config $dmf_ -clientPort 2002 -isClientPortRange "false"')
+ call2 = mock.call(
+ 'ls::config $dmf_ -isClientPortRange "false" -clientPort 2002')
+ self.assertTrue(
+ call1 in self.mock_tcl_handler.execute.mock_calls or
+ call2 in self.mock_tcl_handler.execute.mock_calls)
+
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('set dmf_ [ls::create Dmf]'),
+ mock.call(
+ 'ls::get [ls::query LibraryInfo -systemLibraryName user] -Id'),
+ mock.call('ls::config $dmf_ -Library 2 -Name "Basic UDP"'),
+ mock.call('ls::config $dmf_ -dataProtocol "udp"'),
+ # mock.call(
+ # 'ls::config $dmf_ -clientPort 2002 -isClientPortRange "false"'),
+ mock.call('ls::config $dmf_ -serverPort 2003'),
+ ], any_order=True)
+
+ def test_configure_dmf(self):
+ self.mock_tcl_handler.execute.return_value = '2'
+ self.ls_tcl_client._save_dmf = mock.Mock()
+ self.ls_tcl_client.configure_dmf(DMF_CFG)
+ self.assertEqual(6, self.mock_tcl_handler.execute.call_count)
+ # This is need because the dictionary is unordered and the arguments
+ # can come in either order
+ call1 = mock.call(
+ 'ls::config $dmf_ -clientPort 2002 -isClientPortRange "false"')
+ call2 = mock.call(
+ 'ls::config $dmf_ -isClientPortRange "false" -clientPort 2002')
+ self.assertTrue(
+ call1 in self.mock_tcl_handler.execute.mock_calls or
+ call2 in self.mock_tcl_handler.execute.mock_calls)
+
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('set dmf_ [ls::create Dmf]'),
+ mock.call(
+ 'ls::get [ls::query LibraryInfo -systemLibraryName user] -Id'),
+ mock.call('ls::config $dmf_ -Library 2 -Name "Basic UDP"'),
+ mock.call('ls::config $dmf_ -dataProtocol "udp"'),
+ # mock.call(
+ # 'ls::config $dmf_ -clientPort 2002 -isClientPortRange "false"'),
+ mock.call('ls::config $dmf_ -serverPort 2003'),
+ ], any_order=True)
+
+ def test_delete_dmf(self):
+ self.assertRaises(NotImplementedError,
+ self.ls_tcl_client.delete_dmf,
+ DMF_CFG)
+
+ def test__save_dmf_valid(self):
+ exec_resp = [TCL_SUCCESS_RESPONSE, TCL_SUCCESS_RESPONSE]
+ self.mock_tcl_handler.execute.side_effect = exec_resp
+ self.ls_tcl_client._save_dmf()
+ self.assertEqual(len(exec_resp),
+ self.mock_tcl_handler.execute.call_count)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('ls::perform Validate -Dmf $dmf_'),
+ mock.call('ls::save $dmf_ -overwrite'),
+ ])
+
+ def test__save_dmf_invalid(self):
+ exec_resp = ['Invalid', 'List of errors and warnings']
+ self.mock_tcl_handler.execute.side_effect = exec_resp
+ self.assertRaises(exceptions.LandslideTclException,
+ self.ls_tcl_client._save_dmf)
+ self.assertEqual(len(exec_resp),
+ self.mock_tcl_handler.execute.call_count)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('ls::perform Validate -Dmf $dmf_'),
+ mock.call('ls::get $dmf_ -ErrorsAndWarnings'),
+ ])
+
+ def test__configure_report_options(self):
+ _options = {'format': 'CSV', 'PerInterval': 'false'}
+ self.ls_tcl_client._configure_report_options(_options)
+ self.assertEqual(2, self.mock_tcl_handler.execute.call_count)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('ls::config $test_.ReportOptions -Format 1 -Ts -3 -Tc -3'),
+ mock.call('ls::config $test_.ReportOptions -PerInterval false'),
+ ],
+ any_order=True)
+
+ def test___configure_ts_group(self, *args):
+ _ts_group = copy.deepcopy(SESSION_PROFILE['tsGroups'][0])
+ self.ls_tcl_client._configure_tc_type = mock.Mock()
+ self.ls_tcl_client._configure_preresolved_arp = mock.Mock()
+ self.ls_tcl_client.resolve_test_server_name = mock.Mock(
+ return_value='2')
+ self.ls_tcl_client._configure_ts_group(_ts_group, 0)
+ self.mock_tcl_handler.execute.assert_called_once_with(
+ 'set tss_ [ls::create TsGroup -under $test_ -tsId 2 ]')
+
+ def test___configure_ts_group_resolve_ts_fail(self, *args):
+ _ts_group = copy.deepcopy(SESSION_PROFILE['tsGroups'][0])
+ self.ls_tcl_client._configure_tc_type = mock.Mock()
+ self.ls_tcl_client._configure_preresolved_arp = mock.Mock()
+ self.ls_tcl_client.resolve_test_server_name = mock.Mock(
+ return_value='TS Not Found')
+ self.assertRaises(RuntimeError, self.ls_tcl_client._configure_ts_group,
+ _ts_group, 0)
+ self.mock_tcl_handler.execute.assert_not_called()
+
+ def test__configure_tc_type(self):
+ _tc = copy.deepcopy(SESSION_PROFILE['tsGroups'][0]['testCases'][0])
+ self.mock_tcl_handler.execute.return_value = TCL_SUCCESS_RESPONSE
+ self.ls_tcl_client._configure_parameters = mock.Mock()
+ self.ls_tcl_client._configure_tc_type(_tc, 0)
+ self.assertEqual(7, self.mock_tcl_handler.execute.call_count)
+
+ def test__configure_tc_type_optional_param_omitted(self):
+ _tc = copy.deepcopy(SESSION_PROFILE['tsGroups'][0]['testCases'][0])
+ del _tc['linked']
+ self.mock_tcl_handler.execute.return_value = TCL_SUCCESS_RESPONSE
+ self.ls_tcl_client._configure_parameters = mock.Mock()
+ self.ls_tcl_client._configure_tc_type(_tc, 0)
+ self.assertEqual(6, self.mock_tcl_handler.execute.call_count)
+
+ def test__configure_tc_type_wrong_type(self):
+ _tc = copy.deepcopy(SESSION_PROFILE['tsGroups'][0]['testCases'][0])
+ _tc['type'] = 'not_supported'
+ self.ls_tcl_client._configure_parameters = mock.Mock()
+ self.assertRaises(RuntimeError,
+ self.ls_tcl_client._configure_tc_type,
+ _tc, 0)
+ self.mock_tcl_handler.assert_not_called()
+
+ def test__configure_tc_type_not_found_basic_lib(self):
+ _tc = copy.deepcopy(SESSION_PROFILE['tsGroups'][0]['testCases'][0])
+ self.ls_tcl_client._configure_parameters = mock.Mock()
+ self.mock_tcl_handler.execute.return_value = 'Invalid'
+ self.assertRaises(RuntimeError,
+ self.ls_tcl_client._configure_tc_type,
+ _tc, 0)
+
+ def test__configure_parameters(self):
+ _params = copy.deepcopy(
+ SESSION_PROFILE['tsGroups'][0]['testCases'][0]['parameters'])
+ self.ls_tcl_client._configure_parameters(_params)
+ self.assertEqual(16, self.mock_tcl_handler.execute.call_count)
+
+ def test__configure_array_param(self):
+ _array = {"class": "Array",
+ "array": ["0"]}
+ self.ls_tcl_client._configure_array_param('name', _array)
+ self.assertEqual(2, self.mock_tcl_handler.execute.call_count)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('ls::create -Array-name -under $p_ ;'),
+ mock.call('ls::create ArrayItem -under $p_.name -Value "0"'),
+ ])
+
+ def test__configure_test_node_param(self):
+ _params = copy.deepcopy(
+ SESSION_PROFILE['tsGroups'][0]['testCases'][0]['parameters'])
+ self.ls_tcl_client._configure_test_node_param('SgwUserAddr',
+ _params['SgwUserAddr'])
+ cmd = ('ls::create -TestNode-SgwUserAddr -under $p_ -Type "eth" '
+ '-Phy "eth1" -Ip "SGW_USER_IP" -NumLinksOrNodes 1 '
+ '-NextHop "SGW_CONTROL_NEXT_HOP" -Mac "" -MTU 1500 '
+ '-ForcedEthInterface "" -EthStatsEnabled false -VlanId 0 '
+ '-VlanUserPriority 0 -NumVlan 1 -UniqueVlanAddr false;')
+ self.mock_tcl_handler.execute.assert_called_once_with(cmd)
+
+ def test__configure_sut_param(self):
+ _params = {'name': 'name'}
+ self.ls_tcl_client._configure_sut_param('name', _params)
+ self.mock_tcl_handler.execute.assert_called_once_with(
+ 'ls::create -Sut-name -under $p_ -Name "name";')
+
+ def test__configure_dmf_param(self):
+ _params = {"mainflows": [{"library": '111',
+ "name": "Basic UDP"}],
+ "instanceGroups": [{
+ "mainflowIdx": 0,
+ "mixType": "",
+ "rate": 0.0,
+ "rows": [{
+ "clientPort": 0,
+ "context": 0,
+ "node": 0,
+ "overridePort": "false",
+ "ratingGroup": 0,
+ "role": 0,
+ "serviceId": 0,
+ "transport": "Any"}]
+ }]}
+ self.ls_tcl_client._get_library_id = mock.Mock(return_value='111')
+ res = self.ls_tcl_client._configure_dmf_param('name', _params)
+ self.assertEqual(5, self.mock_tcl_handler.execute.call_count)
+ self.assertIsNone(res)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('ls::create -Dmf-name -under $p_ ;'),
+ mock.call('ls::perform AddDmfMainflow $p_.Dmf 111 "Basic UDP"'),
+ mock.call('ls::config $p_.Dmf.InstanceGroup(0) -mixType '),
+ mock.call('ls::config $p_.Dmf.InstanceGroup(0) -rate 0.0'),
+ mock.call('ls::config $p_.Dmf.InstanceGroup(0).Row(0) -Node 0 '
+ '-OverridePort false -ClientPort 0 -Context 0 -Role 0 '
+ '-PreferredTransport Any -RatingGroup 0 '
+ '-ServiceID 0'),
+ ])
+
+ def test__configure_dmf_param_no_instance_groups(self):
+ _params = {"mainflows": [{"library": '111',
+ "name": "Basic UDP"}]}
+ self.ls_tcl_client._get_library_id = mock.Mock(return_value='111')
+ res = self.ls_tcl_client._configure_dmf_param('name', _params)
+ self.assertEqual(2, self.mock_tcl_handler.execute.call_count)
+ self.assertIsNone(res)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('ls::create -Dmf-name -under $p_ ;'),
+ mock.call('ls::perform AddDmfMainflow $p_.Dmf 111 "Basic UDP"'),
+ ])
+
+ def test__configure_reservation(self):
+ _reservation = copy.deepcopy(RESERVATIONS[0])
+ self.ls_tcl_client.resolve_test_server_name = mock.Mock(
+ return_value='4')
+ res = self.ls_tcl_client._configure_reservation(_reservation)
+ self.assertIsNone(res)
+ self.assertEqual(4, self.mock_tcl_handler.execute.call_count)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('set reservation_ [ls::create Reservation -under $test_]'),
+ mock.call('ls::config $reservation_ -TsIndex 0 -TsId 4 ' + \
+ '-TsName "TestServer_1"'),
+ mock.call('set physubnet_ [ls::create PhySubnet -under $reservation_]'),
+ mock.call('ls::config $physubnet_ -Name "eth1" ' + \
+ '-Base "10.42.32.100" -Mask "/24" -NumIps 20'),
+ ])
+
+ def test__configure_preresolved_arp(self):
+ _arp = [{'StartingAddress': '10.81.1.10',
+ 'NumNodes': 1}]
+ res = self.ls_tcl_client._configure_preresolved_arp(_arp)
+ self.mock_tcl_handler.execute.assert_called_once()
+ self.assertIsNone(res)
+ self.mock_tcl_handler.execute.assert_called_once_with(
+ 'ls::create PreResolvedArpAddress -under $tss_ ' + \
+ '-StartingAddress "10.81.1.10" -NumNodes 1')
+
+ def test__configure_preresolved_arp_none(self):
+ res = self.ls_tcl_client._configure_preresolved_arp(None)
+ self.assertIsNone(res)
+ self.mock_tcl_handler.execute.assert_not_called()
+
+ def test_delete_test_session(self):
+ self.assertRaises(NotImplementedError,
+ self.ls_tcl_client.delete_test_session, {})
+
+ def test__save_test_session(self):
+ self.mock_tcl_handler.execute.side_effect = [TCL_SUCCESS_RESPONSE,
+ TCL_SUCCESS_RESPONSE]
+ res = self.ls_tcl_client._save_test_session()
+ self.assertEqual(2, self.mock_tcl_handler.execute.call_count)
+ self.assertIsNone(res)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('ls::perform Validate -TestSession $test_'),
+ mock.call('ls::save $test_ -overwrite'),
+ ])
+
+ def test__save_test_session_invalid(self):
+ self.mock_tcl_handler.execute.side_effect = ['Invalid', 'Errors']
+ self.assertRaises(exceptions.LandslideTclException,
+ self.ls_tcl_client._save_test_session)
+ self.assertEqual(2, self.mock_tcl_handler.execute.call_count)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call('ls::perform Validate -TestSession $test_'),
+ mock.call('ls::get $test_ -ErrorsAndWarnings'),
+ ])
+
+ def test__get_library_id_system_lib(self):
+ self.mock_tcl_handler.execute.return_value = '111'
+ res = self.ls_tcl_client._get_library_id('name')
+ self.mock_tcl_handler.execute.assert_called_once()
+ self.assertEqual('111', res)
+ self.mock_tcl_handler.execute.assert_called_with(
+ 'ls::get [ls::query LibraryInfo -systemLibraryName name] -Id')
+
+ def test__get_library_id_user_lib(self):
+ self.mock_tcl_handler.execute.side_effect = ['Not found', '222']
+ res = self.ls_tcl_client._get_library_id('name')
+ self.assertEqual(2, self.mock_tcl_handler.execute.call_count)
+ self.assertEqual('222', res)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call(
+ 'ls::get [ls::query LibraryInfo -systemLibraryName name] -Id'),
+ mock.call(
+ 'ls::get [ls::query LibraryInfo -userLibraryName name] -Id'),
+ ])
+
+ def test__get_library_id_exception(self):
+ self.mock_tcl_handler.execute.side_effect = ['Not found', 'Not found']
+ self.assertRaises(exceptions.LandslideTclException,
+ self.ls_tcl_client._get_library_id,
+ 'name')
+ self.assertEqual(2, self.mock_tcl_handler.execute.call_count)
+ self.mock_tcl_handler.execute.assert_has_calls([
+ mock.call(
+ 'ls::get [ls::query LibraryInfo -systemLibraryName name] -Id'),
+ mock.call(
+ 'ls::get [ls::query LibraryInfo -userLibraryName name] -Id'),
+ ])
+
+
+class TestLsTclHandler(unittest.TestCase):
+
+ def setUp(self):
+ self.mock_lsapi = mock.patch.object(tg_landslide, 'LsApi')
+ self.mock_lsapi.start()
+
+ self.addCleanup(self._cleanup)
+
+ def _cleanup(self):
+ self.mock_lsapi.stop()
+
+ def test___init__(self, *args):
+ self.ls_tcl_handler = tg_landslide.LsTclHandler()
+ self.assertEqual({}, self.ls_tcl_handler.tcl_cmds)
+ self.ls_tcl_handler._ls.tcl.assert_called_once()
+
+ def test_execute(self, *args):
+ self.ls_tcl_handler = tg_landslide.LsTclHandler()
+ self.ls_tcl_handler.execute('command')
+ self.assertIn('command', self.ls_tcl_handler.tcl_cmds)