TeraVM Java Client User Guide
TeraVM Java Client User Guide
TeraVM Java Client User Guide
Version 14.1
Help and Support
Location Email
China TeraVMSupport.CN@viavisolutions.com
EMEA TeraVMSupport.EMEA@viavisolutions.com
Japan TeraVMSupport.JP@viavisolutions.com
Korea TeraVMSupport.KO@viavisolutions.com
India TeraVMSupport.IND@viavisolutions.com
Table of Contents
TeraVM Terminology ................................................................................................................................... xxi
Copyright ..................................................................................................................................................... xxii
TeraVM Terminology
The following terminology is used in TeraVM documents:
• TeraVM Executive: Virtual Machine that provides a number of services in a TeraVM test environment.
These services include a Centralized Test Library, User Authentication, Pool Manager, DHCP
management and License Tracker. Different flavours of the Executive may be configured - Standalone
TeraVM Executive, Local TeraVM Executive or Centralized TeraVM Executive.
• TeraVM Controller (TVM-C): The Controller sets up a TeraVM test, directs TeraVM Test Modules to
generate and receive IP traffic, executes the test and processes results.
• TeraVM Test Module (TVM): Virtual machine that generates and receives IP traffic. It contains one or
multiple Test Agents. Each Test Module has one or more Network Interfaces.
• Standalone TeraVM Executive: The Standalone TeraVM Executive works as a single Executive on
your system. It hosts all Executive services.
• Centralized TeraVM Executive: The Centralized TeraVM Executive hosts central services such as the
Centralized Test Library, License Tracker and User Authentication. It is used together with one or more
Local TeraVM Executives in a TeraVM system.
• Local TeraVM Executive: This hosts a number of local services for TeraVM Controllers and Test
Modules such as the Pool Manager and DHCP management. It accesses centralized services on
the Centralized TeraVM Executive. If you are using a Local TeraVM Executive, it must be used in
conjunction with a Centralized TeraVM Executive.
• Pool Manager: The Pool Manager allocates test interfaces (test modules) to one or multiple TeraVM
controllers. It is one of the services provided by the TeraVM Executive.
• Test Agent: IP traffic generator/receptor. Each Test Module has one or more Test Agents. Each Test
Agent has one or more Test Interfaces, associated with virtual network adapters through which traffic
flows to/from the SUT.
• Test Bed: Logical test structure to test one or more System Under Tests (SUT): consists of one or more
TeraVM Controllers and one or more Test Modules. The TeraVM Executive provides services for the
Test Bed.
• System Under Test (SUT): Device/network/system under test. May be multiple SUTs in one TeraVM
test bed.
• Test Group, Test, Test Case: Test containing multiple entities such as hosts and applications. Only
one instance of a test group can be run by a user at a given time.
Copyright
Copyright © 2018 - Aeroflex Limited. All rights reserved.
All rights reserved, subject to change without notice. The material contained in this document is for general
information purposes only and does not constitute technical or professional advice. All third party trademarks
are acknowledged in this document.
All copyrights in and to the software product are owned by VIAVI Solutions or its licensors. The software is
protected by copyright laws and international copyright treaties, as well as other intellectual property laws
and treaties.
Aeroflex Limited, a VIAVI Solutions Company.
Notice
Every effort was made to ensure that the information in this manual was accurate at the time of printing.
However, information is subject to change without notice, and VIAVI reserves the right to provide an
addendum to this manual with information not available at the time that this manual was created.
Statement
You may have recently heard that VIAVI closed the acquisition of Cobham’s AvComm and Wireless
Validation businesses (formerly known as Aeroflex Test Solutions). These market-leading solutions join an
already powerful VIAVI portfolio of award-winning solutions that can be found in millions of installs around
the world.
An example of a system test using TeraVM is shown below. TeraVM emulates clients connecting to a web
server through a system under test. Equally, TeraVM can be used to connect to 3rd party webservers on the
world wide web.
With TeraVM, you can configure, emulate, gather statistics, analyse and troubleshoot a wide variety of test
scenarios. For example:
• Test a throughput objective and determine the behaviour if the target is reached or not.
• Run an RFC2544-like test in the TeraVM UI to stress your system under test
• TeraVM hosts: These represent layers 2 and 3. A host can be fully emulated in TeraVM or treated as
an external host (part of the system under test).
• TeraVM applications: These represent the traffic protocol (layer 4-7) running on the host, for example
HTTP.
TeraVM provides a completely integrated network services test environment consisting of a multi-user client-
server architecture as shown here.
An example is shown below of a TeraVM system consisting of hosts, applications and the system under test.
The figure below shows a complete architectural view, with multiple test beds connected on the same
physical network, with logical partitioning. In this example, the TeraVM Executive functionality is distributed
between a Centralized TeraVM Executive and Local TeraVM Executives.
Figure 1-4. TeraVM Architecture with Local and Centralized TeraVM Executives
Host Machine
Centralized TeraVM Executive
Host
Machine Mgmt Network
TVM Range:
192.168.240.2 -
192.168.255.162
TVM TVM TVM TVM TVM TVMs
TVM
TVM
TVM
SUT SUTn
Topology 1 Topology n
• The Pool Manager, which delivers TeraVM test module resources to a TeraVM Controller at test run-
time.
• The License Tracker, which tracks TeraVM license usage and generates reports - see the TeraVM
Licensing Guide for more information.
The role of the TeraVM Executive in a TeraVM test bed is illustrated in the diagram below.
Executive services may be provided in a single Standalone TeraVM Executive, or split across a Local
TeraVM Executive and a Centralized TeraVM Executive. This is described in detail in the next section.
The following diagram shows a system with Local and Centralized Executives.
Figure 1-6. TeraVM Architecture with Local and Centralized TeraVM Executives
Host Machine
Centralized TeraVM Executive
Host
Machine Mgmt Network
TVM Range:
192.168.240.2 -
192.168.255.162
TVM TVM TVM TVM TVM TVMs
TVM
TVM
TVM
SUT SUTn
Topology 1 Topology n
1. Standalone TeraVM Executive containing all of the Executive functionality: Centralized Test Library,
License Tracker, User Authentication, Pool Manager and SUT Login functions.
• If a user or group of users are working independently on a single TeraVM test bed, without the
need to share services with other groups of users, a Standalone TeraVM Executive should be
used. This is the default configuration, and no additional configuration is required post-deployment.
2. Centralized TeraVM Executive containing the shared Centralized Test Library, License Tracker and
User Authentication functions AND Local TeraVM Executives (one per testbed), containing Pool
Manager and SUT Login functions.
• If you have different TeraVM test beds that use a central LDAP authentication service, or that will
share user-defined tests in the Centralized Test Libary, a Centralized TeraVM Executive must be
used with Local TeraVM Executives (one per test bed). This means at least two Executives are
deployed and configured post-deployment: a Centralized TeraVM Executive and a Local TeraVM
Executive.
Note
All TeraVM Executives are deployed initially as Standalone TeraVM Executives. You must use a post-
deployment TeraVM Executive configuration step to convert a Standalone Executive to a Centralized
or Local TeraVM Executive.
The figure below shows the different deployment configurations possible for the TeraVM Executive.
• Multiple Local TeraVM Executives cannot share the same TeraVM Comms network (see next section
for description of TeraVM networks).
Standalone Centralized
TeraVM TeraVM
Executive Executive
TeraVM
Comms #1
Local Local
TeraVM TeraVM TeraVM TeraVM
Controller Controller Executive Executive
A test module has two numbers associated with it. For example, TVM-4-005 refers to a test module of type
TVM-4, with an instance number of 005. A Test Module has one or more Network Interfaces.
The type refers to the number of CPU cores it uses. For example, a TVM-5 has five cores. Generally, one
CPU core is used for processing overhead, and the others are allocated to one or more test agents. (A test
agent is architected to run on a single CPU core).
A test agent has one or more test interfaces associated with it. When a TeraVM controller starts a test, it
requests the Pool Manager for required test interfaces. Test Agents are identified by their position on a Test
Module.
Test Interfaces are numbered by using the format <test module instance #>/<test agent #>/<test
interface #>. For example, a TVM-4 is shown below, with instance number of 5. A TVM-4 has three test
agents, the numbered test interfaces below are named (from left to right) 5/1/1, 5/1/2, 5/2/1, 5/2/2, 5/3/1 and
5/3/2 respectively.
The TeraVM internal architecture uses a "discriminator" to route traffic when the number of network
interfaces is not equal to the number of test agents/interfaces.
Logical Ports
vswitch (optional)
Physical Port
TeraVM test modules are managed by the Pool Manager, and allocated to the Controller at test run-time.
This is a significant departure from TeraVM releases pre-12.0 as it decouples the test modules from the
controller.
The Pool Manager resides either on a Standalone TeraVM Executive or a Local TeraVM Executive.
Here you will access most of the set up steps described in the following sections.
The following buttons are also available on the TeraVM Executive screen, the exact buttons depends on
the Executive Configuration, for example, the Pool Manager is not available on a Centralized TeraVM
Executive.
• Library: Centralized Test Library from where you can view uploaded tests.
Note
The tests can only be viewed and not downloaded or configured. You can only do this by
logging into UI from the TeraVM Controller.
• Pool Manager: Pool Manager configuration page from where you can configure test interfaces for
your system (create and assign topologies and categories).
• License: License Tracker where you can configure detailed reporting of your TeraVM license
usage.
•
: User documentation and support information.
Prerequisites
• If you need to reconfigure or add a Centralized TeraVM Executive after deployment, then all users
should logout and login again after configuration.
• A User still has access to his/her tests after a Centralized Executive is configured.
• A User will access the CTL test library on the Centralized Executive rather than on the (what is now)
local Executive.
• If a User checks out a test from the library in the Central Executive, it will be stored in the Users
Workspace as normal.
1. Go to the IP address of the TeraVM Executive you wish to configure as a Centralized TeraVM
Executive, and enter a username and password. Click Sign In.
Note
The first time you log in, any username and password is accepted; once you set up TeraVM to be
used with Microsoft Active Directory, you will need to log in with your Active Directory credentials.
See the section on Setting Up Microsoft Active Directory with TeraVM.
5. Note down the IP address as you will need to enter it when you configure its associated Local TeraVM
Executive(s).
Note
Refer to the chapter Executive Configurations in a TeraVM System for information on the configuration
options for the TeraVM Executive.
1. Login to the TeraVM Executive you wish to configure as a Local TeraVM Executive. Click Utilities in the
TeraVM Executive UI.
2. On the Quick Links Menu, click TeraVM Executive Configuration.
3. In TeraVM Executive Configuration select Local TeraVM Executive (using Centralized TeraVM
Executive Services).
Figure 2-5. Configure Executive as a Local TeraVM Executive (using Centralized TeraVM Executive
Services)
Note
If you do not enter the correct IP address for the Centralized TeraVM Executive, you will get an
error message when you click on the Library tab on the HTML5 UI page of the Controller or Local
TeraVM Executive:
Note
If you have upgraded an existing TeraVM Executive, and now convert it to a Local TeraVM
Executive, you will lose any user-defined tests that were in the Centralized Test Library of the old
Executive. You should re-import user-defined tests into the Centralized Test Library of the new
Centralized TeraVM Executive.
2. Click Admin->Network Configuration. To change the IP address to a statically assigned one, select
Static IP Address in the drop down menu.
3. Enter your new IP address and hostname details, and click Save.
Note
The next time you log into a TeraVM controller which is registered with a Local or Standalone
TeraVM Executive, it will say it cannot find the Executive and prompt you for the new IP address
of the Executive.
Note
If you change the IP address of the Centralized TeraVM Executive, ensure that you update
this in the Executive mode settings for your Local TeraVM Executives. See Configure TeraVM
Executive as a Local TeraVM Executive.
Prerequisites
• If you require Host Mappings to appear in the Pool Manager then this procedure must be done before
deploying TeraVM and RAN VMs.
1. Login to the TeraVM Executive in your system via your web browser and click on the Pool Manager tab
from the UI.
2. Click on the Settings and Configurations tab and enter the new TeraVM Comms Network Subnet
Address ( the subnet mask is not editable). Click Save.
Once you do this, the Comms network will be updated to use the new subnet. The system also restart all
test modules and controllers on the new TeraVM Comms network address. You will get a warning message.
If you want to proceed, click Ok and then Save.
If you return to the Dashboard page now you will see that there are no entries in the Test Module column.
Also, no TeraVM controllers are listed in the Controllers page. After a short time, when the test modules
and controllers have restarted and re-registered with the Pool Manager, you will see these pages populated
again.
Note
Because IP addresses for controllers and test modules may change during the restart process,
any topologies and categories that you had assigned to interfaces will be lost. The topologies and
categories that you had created will still be visible to the Pool Manager (they are still in the Pool
Manager database) but you will need to re-assign them to interfaces.
2. Click on Date/Time Settings and enter the Time Zone, Date and Time for your location. Click Save.
Prerequisites
• If Microsoft Active Directory is a requirement, it should be set up in advance of configuring the TeraVM
Executive. Valid users should be added to this directory.
• Microsoft Active Directory is configured from a Standalone or Centralized TeraVM Executive, not a
Local TeraVM Executive (in this case, the Centralized TeraVM Executive handles authentication and
you will see a message "The Authentication service is currently being provided by the Centralized
TeraVM Executive").
2. If you are using Microsoft Active Directory on your system, you can set it up with TeraVM. Click on
Authentication Settings. Select the Use Microsoft AD check box. This will expand the page for the
Microsoft Active Directory configuration.
3. Enter the IP address, Port number and Domain name, the Domain name is not part of the check status.
4. Click Save. If the configuration is valid, the Microsoft Active Directory Server Status changes to
Connected.
By default, the Pool Manager is set up to work in Classic Mode with one default topology, SUT, and two
default categories, client and server
If you wish to keep these settings, you can proceed directly to using the UI. However if you want to change
them, this section describes how to do so.
1. Log in to the Standalone or Local TeraVM Executive or Controller from your web browser, and click on
Pool Manager.
2. Click OK and permanently accept the Pool Manager security certificate if prompted. This is a certificate
that allows you to use the Pool Manager.
Note
This message will only appear if you have not yet accepted the certificate, for example, the first
time that you open Pool Manager, or if the Pool Manager is not contactable because the the
TeraVM Executive is not available at the relevant IP address. In the latter case, you will not be
prompted to accept the security certificate.
3. The Pool Manager opens up on the Dashboard tab. The following tabs are available:
• Dashboard: Displays available resources (Test Modules) along with their Test Agents and Test
Interfaces. Here you can assign categories and a topology to each test interface.
• Categories: Displays available categories, including the default ones (client and server). You can
manage categories here (add/delete/update).
• Topologies: Displays available topologies, including the default one (SUT). You can manage
topologies here.
Note
If you see red on any test modules, you may need to reset the test module.
• The first list displays active controllers, that is, those currently running a test using test interfaces from
the Pool Manager. The controller IP address, partition number in use and the user that is currently
running a test will be displayed.
• The second list displays inactive controllers, that is, all the controllers that are idle. The only information
displayed in this case is the controller's IP address.
Click a controller from the list to see additional information about the controller. If the controller is active, all
used interfaces will be shown in a separate table, along with their assigned topology and category(s).
2. You will see the pre-defined read-only topology, SUT and any other defined topologies listed on the left.
The interfaces and categories assigned to each topology are listed on the right.
Double-click on a topology to see what interfaces are currently assigned to it. Initially, all interfaces
are assigned to topology SUT. This topology cannot be deleted but interfaces assigned to it can be re-
assigned to another topology.
When you update (rename) a topology, the list of interfaces assigned to that topology will not change.
If you try to rename a topology to a pre-existing name you will receive an error 'Topology 'topology-
name' already exists. It must be unique'.
Important
It is not advisable to change the name of a topology once it is in use. When you rename a
topology, existing test groups will not run because the old topology name is being used in test
groups.
Note
You cannot rename the pre-defined SUT topology and you cannot create a new topology called
sut as it is a reserved name.
Important
It is not advisable to delete a topology once it is in use in a test group.
Note
Interfaces assigned to the deleted topology will be reassigned to the SUT topology.
• Category names are free-form and need only be meaningful to the team using the system. For example,
some interfaces could be designated as suitable for SSL traffic using a name like SSL.
2. You will see the pre-defined read-only categories, client and server and any other defined categories
listed on the left. The interfaces assigned to each category are listed on the right along with the topology
that the category is assigned to.
Double-click on a category to see what interfaces are currently assigned to it. The default category
for odd numbered test modules is client and for even numbered test modules is server. These
two categories cannot be deleted but the interfaces assigned to them can be re-assigned to other
categories.
When you rename a category, the list of interfaces assigned to that category will not change and the
category will remain assigned to any topologies that it was previously assigned to.
If you try to rename a category to a pre-existing name you will receive an error 'Category 'category-
name' already exists. It must be unique'.
Important
It is not advisable to change the name of a category once it is in use in a test group. When you
rename a category, existing test groups will not run because the category name is used in test groups.
Note
You cannot rename the pre-defined categories client and server and you cannot create a new
category called client or server.
Important
It is not advisable to delete a category once it is in use in a test group.
Note
When you delete a category, it will be removed from all Test Interfaces that it was associated
with.
Here you can edit the default topology and category settings which have been assigned on startup.
Note
The first time that you open the Pool Manager page, only the test module column will be populated.
You will have to click on a test module (or click Name at the top to select all test modules) to populate
the other columns.
2. To see the test agents and interfaces for a specific test module:
• First deselect the Name check box in the left table. All test modules listed will be unselected and
the tables containing test agents and test interfaces will be empty.
• Click on the test module that you are interested in. All the test agents from the test module will be
shown in the middle table. All the test interfaces from the selected test agents will be shown in the
right table. All other test agents and interfaces are hidden.
• To see specific test agents for a test module, click on the test agent check boxes (or deselect the
ones that you are not interested in. The test interfaces from the selected test agents will be shown
in the right table.
• Here you can get information on the interface such as the TeraVM Controller that is using the
interface, the topology and categories it is assigned to and how long the interface has been in use
by the current user.
3. If you have a lot of interfaces, you can scroll down the page, and click between pages.
4. Click on the info button next to a test module to see details about the test module. The information
displayed includes the number of CPUs and IP address of the test module. Note: if you have not
deployed RAN VMs then the Host Mapping tab will not be populated with information, this also means
the Host ID value will be empty.
5. You can do advanced filtering on the resources by choosing the required filter in the drop-down menu
above each table. The options available are:
Table 2-3. Filtering Options for Test Module
Filter Value/Description
in the first half None. List half of the registered test modules starting from the
lowest number.
in the second half None. List the second half of the registered test modules up to
the highest number.
greater than Integer. The minimum test module number from where you
want start listing test modules, e.g. entering 5 will list all test
modules from number 5 onwards.
less than Integer. The maximum test module number that you want to list
up to, e.g. entering 5 will list all test modules from 1 to 5.
Filter Value/Description
having cpus with Integer. The number of cores for which you want to list test
modules, e.g. if you enter 5, only test modules with 5 cpus will
be listed.
with status available List all available test modules. A test module can have one of
the following statuses: INUSE, AVAILABLE, UNAVAILABLE,
RESETTING.
reserved for Alphanumeric. List the test modules reserved for this user.
used by user Alphanumeric. List the test modules that this user is using.
Filter Value/Description
all None. List all test agents for the selected test modules.
on odd position None. List all odd numbered test agents for the selected test
modules.
on even position None. List all even numbered test agents for the selected test
modules.
in the first half None. List half of the test agents starting from the lowest
number for the selected test modules.
in the second half None. List the second half of the test agents up to the highest
number for the selected test modules.
greater than Integer. The minimum position number for which you want to
list test agents for the selected test modules.
less than Integer. The maximum position number for which you want to
list test agents for the selected test modules.
Filter Value/Description
all None. List all test interfaces for the selected test modules and
agents.
If you select a filter for which there are no test modules, for example, if you enter a category name that
doesn't exist, the message 'No registered TVMs matching your view criteria' is displayed in the table.
You can select filters on each column to get cascaded results.
Note
You can perform group operations on filtered results, e.g. assigning a specific category to all odd
numbered interfaces.
4. Click Clear to remove a previously assigned category. Ensure that the interface isn't in use when you
do this. If you clear all categories you will see the message 'No categories assigned'.
5. If a category that you want to use does not exist, you can add a new category by clicking + Add
Category, entering a unique name for your new category and clicking Save. You can also perform this
step in the Categories tab (See Managing Categories above).
1. Click the check box next to the test module or that you want to reset.
2. Click on the Reset button. The test module entry will go red indicating that it is no longer registered
with the pool manager. The test module and its test agents and interfaces will be unavailable for use
in test groups while the test module is resetting. If the test module successfully re-registers with the
pool manager it will revert to a blue background and be available for use with its previously assigned
topology and categories.
1. Click the check box next to the test module that you want to reserve.
2. Click on the Reserve button. This is the green open lock symbol indicating that the test module can be
reserved.
3. Enter the User name of the person that you want to reserve the test module for and click the tick button.
The symbol displayed will now be a red closed lock indicating that the test module is reserved for
somebody. This is the Unreserve button. Click this button to unreserve a test module.
4. You can find out who a test module is reserved for by holding the mouse over the Unreserve button or
by clicking the info (...) button on the right of the test module.
Note
A Test Module being used can be reserved only for the current user of it.
1. Click the check box next to the test module that you want to unregister.
2. Click on the Unregister button (red X). The test module entry will no longer be displayed in the test
module column.
3. Click Configure next to Test Group Provisioning Defaults. The Interface Selection Mode shows
Classic Mode as the default mode for any tests you run in the HTML5 UI.
4. If you wish to switch to Pool Manager Mode select it from the drop-down. This mode will now be used
in the HTML5 UI.
Note
In the Java Client, you select the mode when you select a test interface.
5. Click Save.
You will create an emulated HTTP server and client, as shown below.
Note
There are many configuration options with HTTP. This example is very basic and intended to get you
started. For full HTTP details, see the HTTP section of the Applications chapter.
2. Once the installer has downloaded, right-click on it, and select Run as Administrator. The installation
wizard guides you through several configuration steps to complete installation.
WARNING
Make sure you download to a different directory than where the installer is, as both files have the
same name, and the install will fail.
A log file is also available. It is called GuiClient.log and is available in the logs directory of the client
installation directory. This file will provide an indication of the problem experienced.
Attention
Troubleshooting
1. If you try to log on to a partition which is not active, the log on attempt will fail.
2. If running on Linux and a problem occurs communicating with the TeraVM Controller, check
the security settings on the Linux client machine. If the Linux machine is configured with a high
security level, reduce the security level and try again.
3. If attempting to connect to TeraVM through a firewall, it may be necessary to disable or allow TCP
ports higher than 32,000.
4. Problems may be experienced connecting to TeraVM if using a wrongly configured DNS Server.
Prerequisites
• For more information on Test Agents and Test Interfaces, see Chapter 1, Section 1.4.
• For information about resetting, reserving and unregistering test modules, see file:/C:/diversifEye/main/
userdocs/uui/pool_manager/reset-resererve-unreg.dita.
2. On the home page, click Pool Manager. Accept the security certificate if this is the first time you are
opening Pool Manager (You will be prompted by the system).
3. A screen will open showing you the Test Modules (and Test Agents and Test Interfaces) that have
been deployed and that are registered with the Pool Manager. Verify that your deployed test modules
are listed. On the main Pool Manager page, the Test Interfaces are identified by three numbers (for
example 40/1/3), for Test Module Instance Number / Test Agent Number / (Virtual) Test Interface
Number.
Note
If a test module shows a red status, the Pool Manager cannot assign it for tests. Since the Pool
Manager is responsible for interface management, the Local / Standalone TeraVM Executive
must be deployed before your test modules can be verified. Also, the Executive, Controller and
Test Modules must be connected to the TeraVM Comms network.
Procedure
1. In the Test Group tab, right click on Test Group and select "Add Test Group...".
3. Enter http_test_quick as the name, and "Simple http test from client to server" for the description.
4. On the Interfaces tab, select Classic or Pool Manager Mode. Once selected and the test group has
been created, it is not possible to change this setting.
If the operation was successful the new test group will be displayed as shown below.
3. Go to the destination folder you want to copy the Test Group to.
4. Right click and select Paste. If the specific Test Group does not exist it will be created. Otherwise an
error dialog will be displayed indicating the Test Group already exists.
Note: to paste the copied Test Group into the same folder as the original Test Group, right click and
select Paste As, and give the test group a unique name.
Note
If you have pre-existing applications and hosts, they must be loaded before a new host can be
added.
2. Click on the Host tab on the right (in the Display window), and click on the Add Host icon underneath,
as shown below.
Note
When setting up a client/server test, always define the host for the server first, as you will refer to it
when defining the host for the client.
The first thing you do when setting up a host is specify general details, and for a virtual host, its gateway.
1. Configure the host for the HTTP server as follows: (Host fields are fully described in the Hosts
Chapter).
• No. of Hosts: 1. This is the number of emulated devices you want to connect to your network. You
can specify multiple hosts at once.
• Configure As : default
• Name: http_srv
• Type: Virtual Host (the Host is emulated in TeraVM, it is not a real (external to TeraVM) host).
• IP Address: 10.1.1.10/24
3. Leave the other settings as default and click Next to continue with Link Layer Details.
A gateway is used to route the traffic from a virtual host to outside the TeraVM. Every virtual host should
have a gateway. A gateway is itself a TeraVM host, virtual or external.
2. If the gateway host has already been created, you can just select it.
Otherwise, create a new host, and set the fields as shown below. (Note external hosts do not have a
gateway field).
3. Click Next, and Finish to return to the main server host wizard.
Note
The Interface is the test port the host will connect to. This must be entered. If you are in Pool
Manager, you will select the type of interface you want (for example client); in Classic Mode, you will
specify the exact interface, for example 3/1/3. For more details on how interfaces are defined and set
up, see Setting Up the Pool Manager section of the TeraVM User Guide. Interfaces are grouped by
the topology they belong to.
1. Click on the button next to the Interfaces field. An Interface Selection dialog box will open.
2. If you have selected Classic Mode when creating your test group, the Interface Selection dialog box
will look as follows. Select the interface that you want to use (or select a number of interfaces if your
host is a scaled entity) and click OK.
Note
In Classic Mode, all available interfaces are identified by 3 numbers:
Test Module Instance Number / Test Agent Number / (Virtual) TestInterface Number
3. If you have selected Pool Manager Mode when creating your test group, the dialog box will look as
follows:
Figure 3-15. Link Layer Details - Selecting Interfaces - Pool Manager Mode
4. Select New Interfaces from the drop-down menu. If you have configured your host as Single Host per
Row, the Quantity is pre-set to 1. If you have selected Scaled Entity for your host, enter the number of
interfaces that you require here.
5. Click on the Topology drop-down menu and select the topology for the interface.
6. In the Categories list, select the category type(s) for your interface.
Note
• If you choose more than one category type, the interface assigned by the Pool Manager
must have all those categories.
• If you have already configured a number of hosts and interfaces, and want to add another
host to the test group using the same interfaces, select Existing Interfaces from the drop-
down menu and select the interfaces from the list of already configured interfaces for your
test group.
7. Click OK.
Follow the same procedure and settings as for the server host, except:
1. Select the play button (Green Arrowhead) from the main menu to run the test. If you have configured
things correctly, all the hosts will turn green, and you will be able to run a Ping test, as shown in the next
steps. If they do not turn green, go to step 4 for debugging.
2. Click on the client host, and then left mouse click the PING tool button in the hosts tool bar represented
by symbol “)))”. The following window opens.
3. Configure the destination endpoint by selecting Entity type as Host. Next left mouse click the button to
the immediate right of the IP address entry. In the window displayed select the server endpoint as the
target. Select “OK” to begin a simple ping test.
4. If the networking between the endpoints is operational, there will be a reply from the server side. If
the response is Request Timed Out, begin debugging the network. The following are some common
examples of where connectivity issues occur:
• TeraVM Hosts are not properly configured: double check your configuration.
– Check your port configuration. If your test ports are connected directly to physical ports, try
connecting a cable between the two physical SFP ports (back-to-back mode), and rerun the
test. If PING gets a reply, the issue must be external to TeraVM, so check your SUT.
– Check in the hypervisor where the TeraVM physical interfaces are mapped. In the hypervisor
determine if the TeraVM interfaces have connectivity via the virtual switch/router configuration.
Follow the Add Host Wizard as before, except select External Host, and add a Name, Description and IP
address. No additional settings are required.
Tip
To gather the information necessary to configure a test against a real service/server, use a packet
capture tool such as Wireshark running on a local PC. From the packet capture it’s possible to
determine the IP address of the server and also any other necessary configuration parameters such
as HTTP Header details for the HOST, COOKIE, etc.
2. Click on the Applications tab on the right (in the Display window), and click on the Add Application
icon underneath, as shown below.
Note
When setting up a client/server test, always define the application for the server first, as you will refer
to it when defining the application for the client.
The first thing you do when setting up an application is fill in general details.
1. Configure the application for the HTTP server as follows: (application fields are fully described in the
Applications Chapter).
• No. of Applications: 1. This is the number of applications (http servers) you want to emulate. You
can specify multiple applications at once.
• Configure As : default
• Name: http_server
• Host: Left mouse click on the button to immediate right of the text frame. In the window displayed,
left mouse click on the Configure Host item. Select the Server Host you created earlier.
2. In the Resource List window, enter a Name for the resource list, and click Add to add a Resource.
4. Click Next to continue through the wizard, keeping all default values until the application has been
created.
1. Click the (...) button to the right of Server(s) and select the emulated HTTP server you just created.
2. At the next window, add a Name for the Request List, and click the (...) button to the right of Request
List to add a new request (or select one underneath if it's available).
Note
The URI corresponds to the URI set in the HTTP server resource list.
4. Continue through the wizard, accepting defaults until the client has been created.
4. The Console Window with Status Bar (below the console window).
5. There are also various pop up windows to configure different test aspects, for example Properties, Add
HostWizard and so on.
When the Client is opened it will attempt to load your previous test configuration. The first time a user logs
into TeraVM, no such test configuration information will exist and each of the sections will be empty.
Note
It is up to you to load the applications and hosts for your test groups manually. The following message
is displayed on the top of the Display Window. Click on the Load button to load all the applications
and hosts.
Console Window Hides or reveals the Console Window. This window initially contains a "Run Output" tab
where helpful messages are displayed as you use the Java client. It will also contain a tab
every time a test is either Exported to or Imported from XML.
View Test Results This displays the TeraVM Results window. This is where the results of each test are
displayed in a graph and table view format.
Show All Reveals the Ping, Test Results (Statistics) and TraceRoute windows currently open on this
client.
Hide All Hides the Ping, Test Results (Statistics) and TraceRoute windows currently open on this
client.
Shutdown Controller Shut down, or shut down and restart the TeraVM controller.
About Displays version information for the TeraVM Java client (click About and then Info tab).
Test Groups are organised into a tree hierarchy. You can place test groups into Folders. A folder can
contain nested folders or one or more test groups. A test group cannot contain other test groups or folders.
The Interfaces folder lists the interfaces required by the test group (set up when configuring the hosts). The
actual interfaces will be assigned by the Pool Manager when the test runs.
When you right click on a specific item in this window there is an option to Expand All. This will expand and
show all of the tree hierarchy from the selected item.
Clicking on any entry in the tree will display the list of items "beneath" it in the Display Window on the right-
hand side of the client.
Add a new test group. If a folder is selected (highlighted) when this button is pressed, the test group will be created
inside that folder.
Add a new folder. If a folder is highlighted when this button is pressed, the new folder will be nested inside that folder.
Delete the selected test group. All contained configuration information will be deleted if the test group is not running,
provided the test group is not associated with any jobs. It is not possible to delete the currently running test group.
Run the selected test group. A user can only run one test group at a time.
Pause the running test group. A paused test group can be stopped or resumed. The test group is resumed by pressing
this pause button again.
Download MIB files, perform test results analysis and check license information.
• Online Help
1. Select Admin -> Change Administration Password ... from the main menu bar to display the Change
Administration Password dialog.
Current Password Current password for the system. 4 - 12 alphanumeric characters plus the
following characters .><{}[]#@()&*%_-= +
New Password New password for the system. 4 - 12 alphanumeric characters plus the
following characters .><{}[]#@()&*%_-= +
Confirm New Password Re-enter the new password. 4 - 12 alphanumeric characters plus the
following characters .><{}[]#@()&*%_-= +
1. Select the Admin Shutdown Controller option from the main menu bar.
6. Click OK.
Paused Test group is running, but its execution has been paused.
The following buttons are available at the top of the Configuration Display and are used to control the
operation of a test group.
Table 6-2. Test Group Buttons
Run Analysis Runs the Analysis Tool to analyse the results for the Test Group. This button is only available after
the Test Group has finished.
Procedure
1. In the Test Group tab, right click on Test Group, and select "Add Test Group..." menu item. This will
cause the Add Test Group dialog to be displayed. The fields for the test group are shown in the table
below.
3. In the Statistics tab, you can change the sampling interval times for statistics gathered for this test group
(see Using TeraVM Statistics for detailed information on statistics collection).
4. In the Thresholding tab, enable SNMP traps if you wish (see Thresholding Chapter).
5. In the Interfaces tab, select the Interface Selection mode that you want to use and the mode for Shared
Interfaces.
Table 6-3. Add Test Group Dialog Fields
Details Tab
Statistics Tab
Normal Stats Sampling period for normal statistics collection for Five minutes, 1 minute and 30 seconds for
applications/hosts and aggregate groups. Enable/ applications/hosts. Five minutes, 1 minute, 30
disable for Test Agents. seconds, 20 seconds, 10 seconds, 5 seconds for
aggregate groups.
Fine Stats Sampling period for Fine statistics collection for 10, 5 or 1 second.
applications/hosts and aggregate groups. Enable/
disable for Test Agents.
Thresholding Tab
Enable SNMP Enables sending of an SNMP Trap representing a Mandatory. Default is disabled.
Traps For fired Threshold Event in the Test Group.
Threshold
Events
Target IP The IP address to send the SNMP Trap to. Mandatory, if Enable SNMP Traps For Threshold
Address Events is enabled.
Target Port The port to send the SNMP Trap to. Mandatory, if Enable SNMP Traps For Threshold
Events is enabled.
Enable Implicit Enables thresholds for tests when the tests are "in Mandatory. Default is enabled.
In Service for service" (that is, after any configured start delays).
Thresholds
Interface Select Classic or Pool Manager Mode Mandatory. Default is Classic Mode.
Selection Mode
Shared Direct traffic from shared interfaces to test agents Mandatory. Default is VLAN ID.
Interfaces using VLAN ID or MAC only.
Note
The settings here are initially configured in the TeraVM Controller Administration Interface,
Admin/Test Group Provisioning Defaults (defaults here are Classic Mode and VLAN ID). If
you want to change the settings used for each of your test groups, change them in the Interfaces
tab.
6. Click OK .
If the operation was successful then the new Test Group will be displayed below the selected folder as
shown. If a problem occurs, a message will be displayed outlining the reason for the failure to add the
Test Group.
Procedure
1. In the Test Group or Job tab select a test group you wish to view. Right click and select the
"Properties..." menu item from the menu displayed.
2. To modify the properties of the test group, edit the values for the displayed fields as required and click
OK.
Note
Only one Test Group (or Job) can be running at any one time.
Procedure
1. In the Test Group or Job tab right click on the test group you wish to run. Select Run or click Run at
the top of the Configuration display:
Any output generated during the running of the test group will be displayed in the Run Output console
at the bottom of the TeraVM client.
Procedure
1. In the Test Group or Job tab right click on the test group you wish to pause.
2. Select Pause or click on the Pause button at the top of the Configuration display:
Procedure
1. In the Test Group or Job tab right click on the test group you wish to stop.
2. Select stop or click on the stop button at the top of the Configuration display:
Note
A running Test Group must be stopped before you will be allowed to delete it.
Note
Deleting a Test Group will delete all Test Group configuration data and applications contained within.
Procedure
1. In the Test Group or Job tab right click on the test group you wish to delete.
2. Select Delete or click on the Delete button at the top of the Configuration display.
There are two categories of results available for a Test Group. These are:
• Current Results
These results are only available while the Test Group is running.
– Summary Results
Cumulative totals of the statistics collected for each individual test within a test group over the
duration of the test that is, up to the time the request was issued to collect the summary results. For
example, a test group with 10 tests will have a results summary for each of the 10 tests. Each of
these 10 summary results will contain a cumulative total for each statistic; for example a total for
packetsIn, packetsOut and so on.
– Detailed Results
Results collected at each (user specified) collection interval for each test in the test group. For
example, a test group with 10 tests running for 20 minutes with a 5 minute collection interval for
each of the 10 tests. Therefore, each test will have 4 sets of statistics - one for each of the 5 minute
intervals.
• Historical Results
These are available after the test has finished. There are two types:
– Summary Results
Summary results collected. The only difference between the Historical Summary Results and the
Current Summary Results is the duration of the test run.
– Detailed Results
Same as the Current Detailed Results but cover the whole duration of the test group. These
Historical Detailed Results are only available when no other test group is running and only if this
test group was the last executed test group.
Note
A Test Group must be in a paused state before the current summary results can be saved.
Procedure
1. In the Test Group tab select the Test Case whose results you wish to save.
2. Right click and select the type of result you wish to save.
3. In the Save dialog, browse to the location where you wish save the results and enter a name for the
results file.
Results
Note
Historical results are only available for the last executed Test Group.
Procedure
1. You can also analyse the results for a Test Group as follows:
2. In the Test Group tab select the Test Group whose results you wish to analyse.
3. Select the "Results-> Analyse..." menu item to display the analysis dialog.
4. Configure the analysis options. See the Analysing Results chapter for details.
5. Click the "Run" button to perform the analysis. The results will be displayed in the Results Analysis
Window.
Note
If the selected Test Group is already running, the current results will automatically be retrieved.
Otherwise you will have to browse for a previously saved results file for the test group to act as a
source for the analysis.
Note
The Test Case assigned to a Test Group must have its entries loaded before a Test Group can be
exported.
Procedure
1. In the Test Group tab select the Test Group which you wish to export. Right click on the selected item.
2. Select either the "Export to XML.." or the "Export to XML as..." menu item from the sub menu
displayed. If you selected the "Export to XML as..." menu item, enter the export name for the test
group in the dialog provided and click the OK button to proceed.
3. In the Save dialog, browse to the location where you wish the exported file to be created and enter a
name for the file. Click Save.
Procedure
1. In the Test Group tab select the Test Group under which you wish to import the test group, amf right
click.
2. Select "Import from XML..".
3. In the Open dialog, browse for the file you wish to import and click OK.
Results
Any errors that occur during the import will be displayed in a console tab at the bottom of the TeraVM client.
6.12. Folders
You can use folders in the TeraVM client to organise test groups and jobs. A folder name need only be
unique when compared to other folders which exist at the same hierarchical level and with the same parent.
To add, delete, view, modify, export and import folders, follow the same methods as described for Test
Groups.
Chapter 7. Hosts
This chapter introduces TeraVM Hosts. There are two sections:
• Overview of Hosts and Host Types
• Working with Hosts in the Java Client
There are two types of Virtual Hosts. These are described in more detail in the next section.
• Virtual Host
– This is the most commonly used type. It emulates a single Layer 2-3 device.
– These are used for emulating very large scale systems. They emulate subnets.
A network visible host is called a direct virtual host (DVH) and a host that is not network visible is called an
indirect virtual host (IVH). The following diagram illustrates this relationship between indirect virtual hosts,
direct virtual hosts and the SUT (system/network under test).
Note
Certain host-specific, link-local protocols can only be applied to direct virtual hosts. The primary
examples are DHCP and PPPoE. These protocols are both initiated with broadcast Layer 2
addressing by individual hosts, and they require specific services, (DHCP or PPPoE), to be available
on the SUT. Therefore, these configuration options are restricted to direct virtual hosts, because other
host types either cannot access the SUT directly at Layer 2, or they cannot provide the required level
of "individual host" granularity.
Note
AVirtual Scaled Host offers greater visibility, control and functionality for a single IP address than the
Virtual Subnet Host. For instance a Subnet Host can only be assigned a static IP address (cannot
support DHCP).
Direct and Indirect virtual subnet hosts are the subnet equivalent of the virtual hosts described previously.
As stated above, a direct virtual subnet host covers an entire IP address range based on its prefixed IP
Address.
A direct virtual subnet host can have a gateway address that exists within the subnet's IP address range.
In most situations, the default gateway for an individual host would be within the range of its prefixed IP
address. If a virtual subnet host did not allow its gateway address to exist within its prefixed IP address
range, then it would be awkward to configure a default gateway for a virtual subnet host in a real-world test
environment. To overcome this, the virtual subnet host entity makes a specific exception to allow its gateway
address to exist within the range of IP addresses that the subnet is intended to cover. It is important to note
that when a test is configured in this way, the subnet host will handle traffic for all IP addresses except the
gateway address.
Note
Individual direct virtual hosts can be created that exist within the range of a direct virtual subnet host.
In this case, the individual hosts will take precedence over the virtual subnet host for the specific IP
addresses that are covered by individual hosts. This provides a convenient way to isolate statistics
for a handful of hosts within the subnet range, without losing the ability to handle a large range of
addresses via a single subnet host entity.
Similarly to a direct virtual subnet host, individual indirect hosts can be created that exist within the range of
an indirect virtual subnet host. The individual hosts will take precedence over the subnet host for the specific
IP addresses that are covered by individual hosts.
• An External Subnet Host represents a whole subnet of machines or pieces of test equipment
accessible via a single IP address. It is used in large systems where the individual machines in the
represented subnet may each be hosting many "real-world" applications or services that TeraVM
interacts with.
7.1.3. Gateway
A gateway is a a TeraVM host that is visible from the SUT (for destination MAC address reachability).
A virtual host always requires a gateway. It routes packets to remote hosts via its gateway address.
• A router interface or end system host on the SUT (External Host in TeraVM)
• In the case of "loopback" tests between two TeraVM ports, a gateway can be another virtual host on a
different TeraVM port.
Without these routes, IP packets will not be able to reach the indirect virtual hosts from the "outside world",
(the SUT). These routes can either be created automatically, (by having TeraVM "advertise" routes using
RIP or RIPng), or manually, (by programming the routes directly into the participating routers before the
test is started). Since an indirect virtual host must use IP routing to get to the SUT, only applications and
protocols that function at Layer 3, (IP), and above make sense for an indirect virtual host. In other words,
protocols that require Layer 2 (Ethernet) access to the SUT, (like DHCP, PPPoE, ARP and so on.), cannot
be applied to an indirect virtual host.
Note
The gateway for an indirect virtual host cannot be on the same subnet as the host itself. TeraVM
bypasses the normal routing step; packets are forwarded directly through to the next routing IP
interface. If an indirect virtual host routes through several indirect hosts before reaching a direct virtual
host, TeraVM bypasses all the internal routing steps and place the packet directly on the SUT, (taking
the appropriate Time-To-Live adjustment into account). Skipping the internal routing does not impact
the overall outcome in terms of what the SUT sees, but cuts out a lot of packet processing). One side-
effect of this routing shortcut is that traceroutes that trace through TeraVM's internal routing will not
identify the internal path taken; the trace will show the point of entry into TeraVM, and subsequently
report unidentified hops until the final (internal) destination IP address is reached.
It can be of the type IPv4 or IPv6 with manual or dynamic address assignment.
Note
You can emulate both IPv4 and IPv6 enabled endpoints in a single test case.
Default Address
Note
The exception to this is Direct Virtual Hosts with an IP Address Assignment Type of DHCP or
PPPoE/IPCP. In this case, the default address is the "unassigned" (or "empty") address (0.0.0.0).
• A multicast address.
• A loopback address.
Note
"same subnet" includes "contained" or "overlapping" subnets. For example, 1.2.3/24 is contained
within the range of 1.2/16.
In addition:
• Any Indirect Virtual Host cannot be on the same subnet as an Indirect Virtual Host or Indirect Virtual
Subnet Host that access the SUT through a different Direct Virtual Host. (It can be on the same subnet
as a Indirect Virtual Subnet Host that accesses the SUT through the same Direct Virtual Host).
• A Direct Virtual Subnet Host cannot be on the same subnet as a Direct Virtual Subnet Host that is on
a different TeraVM port. (Note:They can be on the same subnet as a Direct Virtual Subnet Host that is
on the same TeraVM port. Also, a Direct Virtual Subnet Host can be created on a different port after the
Direct Virtual Host is created, and that DVSH can be on the same subnet, provided it uses the Direct
Virtual Host as its gateway.)
3. Click on the Add Host icon in the display window. The Add Host Wizard is displayed.
Note
Exiting test groups must be loaded with the Load button before a new host can be added.
The General Details page of the Add New Host wizard is shown below. This can vary depending on the
host type.
Configure the host as described using the settings defined in the following sections.
Figure 7-3. Add New Host Wizard Dialog (Example - External Hosts)
Note
When you create virtual hosts, the Gateway parameter is optional. However, it must be specified if a
host is to be involved in a running test. This is because the gateway specifies the host's default route
to all other subnets. Tests involving direct virtual hosts that do not specify a gateway will not run.
• Configure as set to Scaled Entity and No. of Hosts > 1 creates scaled host entities, one per row. Each
scaled entity contains multiple host entities in TeraVM and their parameters will be set according to
certain parameters. Scaled entity covers the same IP address range as Single Host per row by using an
IP address per host.
Scaling
This is the most common way to build tests. Using Scaling, you can quickly and efficiently run tests with very
large numbers of hosts - millions of them. A single test entity is stored in the test database and shown as
one row in the Host Display Panel, however when the test is run, a host is created for each of the No. of
Hosts hosts.
Bulk-Provisioning
Using Bulk-Provisioning you can create many individual entities at the same time from a single set of
parameters. Each test entity is stored in the test database as a single item, and has its own row in the Host
Display Panel.
By clicking on this icon, a dialog is displayed to enable the relevant provisioning information to be entered.
The parameters affected are:
• Host name
• IP address
• VLAN ID
• Double VLAN IDs
• DHCPv4 and DHCPv6 options
• PPPoE Settings
7.2.1.2. Add Host Wizard Dialog - General Details (All Host Types)
The following General fields are common to all host types.
No. of Hosts Number of hosts to be created. Min value: 1 Max Value: 50,000,000
Configure As Define how hosts are grouped and displayed if you Required.
are provisioning multiple hosts, that is No. of Hosts >1.
If No. of Hosts = 1, the default value is
Choose between Single Host per row (Bulk Provisioning)
Single Host per Row, otherwise it is Scaled
or Scaled Entity. See Section 7.2.1.1 for further
Entity.
information.
Name Unique name identifying host. This should be easily Required. Value between 1 and 250
recognizable in the test results, for example HTTPserver. characters in length. Must be unique within
Type See Section 7.1 for a detailed description. Select from one of the host types. Default
is Virtual Host.
• General Details
• DHCP Details (Displayed only if DHCP is selected for the IP Address Assignment field in the General
Details page)
• PPPoE Details (Displayed only if PPPoE is enabled or IPv4CP is selected as the IP Address
Assignment in the General Details step of the wizard)
• Statistics Settings
• Activity Settings
• Additional Configuration
Warning messages are displayed in red at the bottom of the wizard pages to let you know which fields are
mandatory on the displayed page and to warn you if an incorrect value has been entered in a field.
Network Visible A Host can either be directly visible from the network, Required. Default is clicked.
that is the emulated endpoint can access the network via
its “Gateway”. If unchecked the endpoint is used as the
application layer in a tunneled mode such as a 6rd, DS-
Lite or VPNs
IP Address Assignment Controls how the host is allocated an IP address: statically Default is Static.
or dynamically.
Select EoGRE only if using the GRE Site
For Network Visible Hosts, the dynamic options are to Site VPN application with the host,
and using Ethernet over GRE (not IPv4)
DHCPv4, DHCPv6 or PPPoE/IPv4CP.
encapsulation. (Note setting this option
For non Network Visible Hosts, the dynamic options are requires you to specify Link Layer details).
Dynamic IPv4 or IPv6 Tunnel, or EoGRE Dynamic IPv4
Tunnel.
Gateway Host The host that will act as the gateway for this host. A best Not required at configuration time, but
practice is to create an external host configured with required at runtime unless the IP Address
the gateway address. Select the Gateway Host by right Assignment type is DHCP, PPPoE/IPCP
mouse clicking on the button to the immediate right. (The or AnyConnect IPv4. No default. Cannot
host can either already exist, or you can create it on the be specified if a Network Visible host is
fly). For further information, see Gateway. PPPoE enabled. Otherwise, can be any
External Host, or a Network Visible host
that is not on the same physical port as this
one.
Advertise Routes Advertise all routes behind this host via RIPv2 or RIPng. Disabled, RIPv2 or RIPng. Default is
Disabling require routes to be manually configured in the Disabled. Always disabled for a Scaled
SUT. Host.
Enable PPPoE Check to enable additional PPPoE settings. See PPPoE Details.
Enter values for the PPPoE fields as required. It should be noted the PPPoE Server can timeout causing the
client side to attempt to re-establish the link. This attempt to re-establish the link is not supported.
Table 7-3. PPPoE Settings
PAP Authentication Authenticate the client via PAP. Default is not ticked.
CHAP Authentication Authenticate the client via CHAP. Default is not ticked.
User Name/Peer ID The name of the user/peer for this PPPoE session. 3 - 255 characters for both PAP and
CHAP. Note: If PAP and/or CHAP are
enabled, the user name cannot be empty.
Password/Secret A secret or password authenticating the specified user. 3 -255 characters for both PAP and CHAP.
This password can be empty for either
protocol.
Service Name The name of the Service requested by the Host. Optional Default is blank indicating any service will
field. do. Max size is 1474.
Access Concentrator The device from which the PPPoE client will accept a Optional. Default is blank. Max size is
PPPoE session. 1474.
Retransmit Timer Specifies the interval between retransmissions of LCP Default is 3000ms. Min 1ms, max 1 hour.
"Configure-Request" and "Terminate-Request" packets. The interval can be specified in ms, sec or
min. Default is ms.
MRU The maximum unit of data that the "client" can receive. Default is 1492.
The default is 8 bytes less than the MTU that is, 1492.
Click on Advanced PPPoE to enter more PPPoE and IPCP settings, otherwise click on the Next button to
enter Statistics settings.
Use Host Unique Random unique value included in a Host message that the Enabled or Disabled. Default is enabled.
AC must include in its reply. The client will check that the
AC replies with the correct value.
Use Magic Number Results in the generation of a unique number, (the Enabled or Disabled. Default is enabled.
Magic Number), that can be used to avoid looped back
connections.
Double Retransmit Time Double the time to retransmit Enabled or Disabled. Default is disabled.
Test Request Mode Type of packet to be sent over the LCP link to test/debug None, Echo, Discard. Default is None.
the link.
Test Payload Size Size of the test packet payload. Specific value or a profile. Minimum
value is 0 - this will still send a valid echo
request. The maximum value should be the
value of the local MRU.
Test Interval Frequency with which Test Packets are sent. Max is 1 hour. Default is 30 secs. The
frequency can be specified in ms, sec or
min. Default is sec.
Reconnect After Failure Specifies whether or not the Host should attempt to Enabled or Disabled. Default is enabled.
automatically reconnect failed PPPoE sessions. Only for PPPoE-enabled Hosts.
The IPCP tab enables you to configure if IPv4 PPPoE Hosts can request DNS Primary and Secondary
Server Addresses. When you click on the IPCP tab, the following dialog is displayed:
Request Primary DNS Asks the PPPoE Server to return a Primary DNS Server Default is Disabled. Only available for IPv4
Server Address Address. PPPoE hosts.
Request Secondary DNS Asks the PPPoE Server to return a Secondary DNS Default is Disabled. Only available for
Server Address Server Address. IPv4 PPPoE hosts. Note: You can request
a Secondary DNS without requesting a
Primary DNS.
These properties can be configured by either specifying a value, which will have a numeric incrementing
suffix appended to it, or a operator can configure a list of Strings that will be distributed amongst the created
Hosts, on the appropriate property. The list of Strings can be configured manually, or by importing a list of
Strings from a CSV file.
In order to configure a list of Strings, the Scaler field should be changed to String List Scaler, the dialog will
update automatically to present the String List Scaler view.
1 1496 1488
2 1492 1484
3 1488 1480
4 1484 1476
5 1480 1472
6 1476 1468
• IPv6
• TCP
• SIP
7.2.1.3.2.1. IPv6
The following IPv6 information can be added for the host(s) that you are configuring:
Initial Flow Label A Flow Label of zero is used to indicate packets that are 0 - 1048575
not part of any application. Packet classifiers use the Flow
Label, Source Address, and Destination Address fields to
identify which flow a particular packet belongs to.
MTU Discovery Enables/disables MTU Discovery, which discovers Enabled by ticking the check box.
whether the current path is capable of packet sizes
greater than the current MTU.
7.2.1.3.2.2. TCP
The Advanced TCP Settings can either be configured at this stage of the provisioning process, or previously
configuration options can be selected from the Advanced TCP Settings Selection dialog. TCP Configuration
is dealt with in more detail in the Test Configuration chapter.
TCP Characteristics Parameters and behaviour of the TCP stack. Optional. Refer to TCP Characteristics for
details on adding TCP Characteristics.
Out Bandwidth Rate Limit Host's outbound bandwidth rate limit. Click on the <...> Optional. Refer to Rate Limiting
icon to add these values. Configuration for details on entering values
for the Out Bandwidth Rate Limit.
In Bandwidth Rate Limit Host's inbound bandwidth rate limit. Click on the <...> icon Optional. Refer to Rate Limiting
to add these values. Configuration for details on entering In
Bandwidth Rate Limit
All the Advanced TCP Settings that are configured are displayed in the Configuration Panel in individual
configuration folders for the Test Group that contains this host, as shown:
Click OK to save the settings and return to the General Details page.
Enable VoIP B2BUA Enable SIP B2BUA capabilities for the host. The B2BUA Default is disabled. This option is not
Support allows multiple VoIP UA's to bind to the same SIP port on available if the host is a subnet host.
a host.
B2BUA SIP Port Port number. Only available if the SIP B2BUA capability Default value is 5060
for the host is enabled.
Interface Network Visible hosts only. Test interface(s) for this host. When provisioning more than 1 host, it is
Click on the button on the right of this field to display the possible to select multiple interfaces. The
Interface Selection dialog box. selected interfaces are distributed amongst
the created hosts, and the field will display "<x
• If Pool Manager Mode is being used, select the type of
Interfaces>" where x is the Quantity value that
interface (new or existing), number of interfaces that you
you entered. The interface details will be listed
require and the topology and category(s).
under your test group in the folders section of the
• If Classic Mode is being used, select the actual screen.
interface(s).
Assignment Mode MAC address to be used by packets sent via this host. Only required if the Address Assignment is either
Select from the drop-down menu: DHCP or IPCP (PPPoE).
• Use MAC of Assigned Interface (default): the host MAC
Example MAC address scaling:
address is assigned randomly by TeraVM based on the
interface configured when TeraVM was set up on your Base MAC address: 00:11:22:33:40:FF:FE
hypervisor.
When a single test agent is used, or for
• Use Specific MAC Address: Use (only available) when non-network visible hosts, generated
creating a single host.Seed MAC Address required. MAC values are: 00:11:22:33:40:FF:FF,
00:11:22:33:41:00:00, 00:11:22:33:41:00:01 and
• Auto Generate MAC from Base Value: Only available
so on (each new address value is generated by
when creating multiple hosts. Seed MAC Address
adding 1 to the previous value).
required. Actual MAC addresses based on an offset
from the seed MAC address are assigned at test run When multiple test agent are used for network
time for each host. visible hosts, generated MAC values are:
00:11:22:33:40:FF:FF, 00:11:22:33:50:00:00,
During run time, the Actual MAC Address will be
00:11:22:33:50:00:01 and so on (each new
shown in the host.
address value is generated by adding 1 to the
previous value).
Seed MAC The base MAC address for your host(s). Required for Cannot be a multicast MAC address. It must be
Address deriving the Actual MAC Address for modes Use Specific unique in the pool of hosts, unless the network
MAC Address and Auto Generate MAC from Base Value. visible host is not using DHCP or PPPoE and
unless the MAC address is the default MAC,
(that is, the MAC of the test interface). Must be of
the form xx:xx:xx:xx:xx:xx.
Actual MAC The actual MAC used by the host will be derived from the Non-configurable. Value will be displayed in Host
Address Seed MAC address when the test is running. If the host uses Properties when the test is running and the MAC
an interface that is shared by multiple Test Agents, the fourth address has been assigned.
octet of the actual MAC will be changed as required in order
to ensure that packets are correctly routed to the appropriate
Test Agent.
MTU Maximum Frame size for use for the IP packet. IPv4: 576 - 9216* IPv6 1280 - 9216*. Default is
1500. Jumbo frame sizes may be assigned here,
for example 9600 bytes.
Link Layer Link layer type is used to assign any additional traffic tags. VLAN priority level range is 0 to 7. Default is 0.
• Ethernet (default): No additional tagging required ID range is 0 to 4095.
• Tagged Vlan: Assign a priority level (1 to 7), and enter Number of tags must be between 1 and 6 for all
the VLAN ID network visible hosts, and a maximum of 2 for a
host using EoGRE Dynamic IPv4 Tunneling.
• Double Tagged Vlan: Assign outer and inner VLAN
priorities and IDs
• Multiple Tagged Vlan: Select Number of VLANs and
assign outer and inner VLAN priorities and IDs
• VXLAN: Used for datacenter tunneling.
Auto Adjust MTU Use to enable automatically adjusting MTU size. Select Boolean value. Default is False. When true will
this check box when using VLANs. This option is only add or subtract 4 (Tagged) or 8 (Double Tagged)
available when either of the following is selected for the Link bytes, to the host MTU in order to accommodate
Layer:Tagged Vlan, Double Tagged Vlan. VLAN tagging.
Depending on the tagging type selected in the Link Layer field, the following types of options are included
(Tagged VLAn options are shown here, but Double Tagged and Multiple are similar).
Table 7-11. Iterate on Tagged VLAN Dialog Fields
VLAN ID Starting VLAN ID for the iteration. Min value = 0, max=4095 and default=0.
Increment VLAN ID by Amount by which each VLAN ID is Min value = 0, max = 4094 and default = 0.
incremented If the increment is 0 all hosts will have the
same VLAN ID.
Between VLAN IDs Range of allowable VLAN IDs. Only VLAN The min value for the lower element of the
IDs within this range will be assigned to the range is 0, max value is 4095 and default
Hosts. The VLAN IDs will be controlled by is 0. The min value for the upper element
the starting VLAN ID and the increment. of the range is 0, max value is 4095 and
default is 4095.
Select an option from the drop down list in the Option field, and click on the Add button beside the Value
field. The Add DHCP Option Item dialog is displayed. Enter the appropriate value as required.
Table 7-12. Add DHCPv4 Items
Routers List of IP addresses for routers on the client's subnet. The List of IPv4 Addresses
TeraVM DHCP client accepts the router option from the
server. If the option contains a list, TeraVM will only select
the first IP address in the list. This becomes the client's
gateway, (default route).
Vendor Specific Used by clients and servers to exchange vendor-specific Octet String
information. The definition of this information is vendor
specific.
DHCP Lease Time Used in a client request (DHCPDISCOVER or Value = 1 - Infinity. Unsigned 32-bit Integer
DHCPREQUEST) to allow the client to request a lease
time for the IP address. TeraVM respects the lease time
returned by the server. It is used to set the Renewal and
Rebinding times, (in the absence of explicit options to set
those values). The default requested lease time in the
DHCPDISCOVER is "infinity".
Server Identifier DHCP servers include this option in the DHCPOFFER IPv4 Address
in order to allow the client to distinguish between lease
offers. DHCP clients use the contents of the 'server
identifier' field as the destination address for any DHCP
messages unicast to the DHCP server. DHCP clients also
indicate which of several lease offers is being accepted
by including this option in a DHCPREQUEST message.
TeraVM accepts the Server ID option from the Server and
includes it in the DHCPREQUEST.
DHCP parameter Request This option is used by a DHCP client to request values List of unsigned 8-bit Integers
List for specified configuration parameters. TeraVM sets
the parameter request list in the DHCPDISCOVER and
DHCPREQUEST. The default requested parameters
are: 1 (Subnet), 3 (Router), 6 (DNS), 12 (Hostname), 15
(Domain Name), 26 (Interface MTU). To override these
defaults, explicit options can be specified in the GUI.
Maximum DHCP Message The maximum length DHCP message that it is willing to Unsigned 16-bit Integer
accept.
Renewal Time The time before the host will start to renew it's address Integer
lease with the DHCP Server
Rebinding Time The time before the host will enter a rebinding state if it Integer
has not renewed it's current address lease with the DHCP
Server
Vendor Class Identifier This option is used by DHCP clients to optionally identify Ascii String
the vendor type and configuration of a DHCP client.
Client Identifier This option is used by DHCP clients to specify their unique Octet String
identifier. TeraVM sets the Client ID in DHCPDISCOVER
and DHCPREQUEST messages. The default value is the
client's MAC address.
Relay Agent Information TeraVM does not include relay agent information by • Circuit ID - Octet String
default. An explicit override value can be specified in the
Sub-options: • Remote ID - Octet String
GUI. There is no additional client processing if this option
• Circuit ID is specified.
• Remote ID
Autoconfigure This option code is used to ask whether, and be notified if, Boolean
auto-configuration should be disabled on the local subnet.
This code, along with the IP address assignment, will
Authentication Key The key used to generate "message authentication code" Octet String
in the authentication message
Authentication Key ID The identifier for the key used to generate "message Integer
authentication code" in the authentication message
OptionsTab
Support FORCERENEW The DHCP server can send a unicast FORCERENEW Enabled/Disabled. Default is disabled.
Messages message to the client. Upon receipt of the unicast
FORCERENEW message, the client will change its
state to the RENEW state if the FORCERENEW flag is
checked, and will then try to renew its lease according to
normal DHCP procedures."
Timer Tab
Offer Collection Timer The DHCP client will start a timer as soon as it sends Min=0 secs, Max=3,600 secs.
a DHCP_DISCOVER message. It will then collect
DHCP_OFFER messages received from DHCP Servers in
the SUT until such time as the Initialization Timer expires.
At that time the DHCP client will choose an IP Address
from the list of received DHCP_OFFER messages and will
then be ready to issue a DHCP_REQUEST for the chosen
address. This timer can be configured on a per host basis
via this field.
Lease Time The time that the DHCPv4 lease is valid for 1 - Infinity ms, secs, mins.
Renewal Time When a client is assigned an IP Address, it waits until this 1 - Infinity ms, secs, mins.
timer expires, after which time it will attempt to RENEW it's
IP Address
Identity Association Type Mechanism a DHCPv6 Host will use to get an IP Address Required. The following Identity
from a DHCPv6 Server. There are 3 Identity Association Association Types are supported by
types: TeraVM:
• Non-temporary Address (IA_NA see RFC 3315) • Prefix Delegation
• Temporary Address (IA_TA see RFC 3315) • Non-temporary Address
• Prefix Delegation (IA_PD see RFC 3633)
To configure a value for a DHCPv6 Option, select the option from the drop down list in the Option field,and
double click on the Value field to edit the value (if editable).
Table 7-16. Add DHCPv6 Options
The following options are configured by default based on the value of the Identity Association Type field.
Client Identifier DUID (DHCP Unique Identifier) identifying a client Octet String. This is DHCPv6 option is
between a client and a server. This ensures uniqueness mandatory and is included by default. The
between all DHCPv6 clients. TeraVM always uses the DUID itself is generated based on the Link
DUID for this option. Layer Address Plus Time (DUID-LLT) as
described in Section 9.2 of RFC 3315.
IA for Non-temporary An IA is identified via an IA (Identity Association) ID (IAID) Mandatory DHCPv6 option, when the
Address and refers to an address assigned to a DHCPv6 client. Identity Association Type field is Non-
A DHCPv6 client requests the use of a non-temporary temporary Address, is included by default
address by specifying the Identity Association for Non- and contains the following fields:
temporary Address (IA_NA) option (Option 3) in it's
• IAID: Default is the IAID of the Host,
SOLICIT message.
cannot be empty, cannot be modified
and is automatically generated by
TeraVM.
• T1: The time at which the client
contacts the server from which
the addresses in the IA_NA were
obtained to extend the lifetimes of the
addresses assigned to the IA_NA.
Default is 0, cannot be empty and
cannot be modified.
• T2: The time at which the client
contacts any available server to
extend the lifetimes of the addresses
Elapsed Time A client includes an Elapsed Time option in messages to This is a mandatory DHCPv6 option and is
indicate how long the client has been trying to complete a included by default. TeraVM always uses 0
DHCP message exchange. for this option.
IA for Prefix Delegation The IA_PD option is used to carry a prefix delegation This is a mandatory DHCPv6 option, when
identity association (IA). An IA is identified via an IA ID the Identity Association Type field is Prefix
(IAID) and refers to a collection of addresses assigned Delegation, is included by default and
to a DHCPv6 client. The current release of TeraVM only contains the following fields:
supports one such collection of addresses. A requesting
• IAID: Default is the IAID of the Host,
router requests the use of prefix delegation by specifying
cannot be empty, cannot be modified
the Identity Association for Prefix Delegation (IA_PD)
and is automatically generated by
option (Option 25) in it's SOLICIT message.
TeraVM.
• T1: The time at which the requesting
router should contact the delegating
router from which the prefixes in the
IA_PD were obtained, to extend the
lifetimes of the prefixes delegated to
the IA_PD. Default is 0, cannot be
empty and cannot be modified.
• T2: The time at which the requesting
router should contact any available
delegating router to extend the
lifetimes of the prefixes assigned to
the IA_PD. Default is 0, cannot be
empty and cannot be modified.
• IA_PD_Options: Options associated
with this IA_PD. Default is empty and
cannot be modified.
The following options are not configured by default but can be added by you:
Option Request The Option Request option is used to identify a list of This is not a mandatory option. If specified
options in a message between a client and a server. it must be an integer between 0 and 65535.
Vendor Class This option is used by a client to identify the vendor that Octet String. Default is empty.
manufactured the hardware on which the client is running.
Vendor Specific This option is used by clients and servers to exchange Octet String. Default is empty.
Information vendor-specific information
SIP Server IPv6 Address This option specifies a list of IPv6 addresses indicating Default is empty. Can be modified to
List SIP outbound proxy servers available to the client. This list contain a list of IPv6 addresses.
is generated by the DHCPv6 Server.
DHCP Realm The DHCP realm that identifies the key used to generate Octet String
the "message authentication code" in the authentication
message
Authentication Key The key used to generate "message authentication code" Octet String
in the authentication message
Authentication Key ID The identifier for the key used to generate "message Integer
authentication code" in the authentication message
Enable Reconfigure Enables a client to send a Reconfigure Accept (Option 20) Enabled or Disabled. Default is Disabled.
Accept (option 20) to announce to the server whether the client is willing to
accept Reconfigure messages. A server uses this option
to tell the client whether or not to accept Reconfigure
messages.
Enable Rapid Commit The Rapid Commit option is used to signal the use of the Enabled or Disabled. Default is Disabled.
(option 14) two message exchange for address assignment.
The Identification tab options are automatically generated by TeraVM and cannot be modified.
Max Delay of first Solicit Max delay applied to first SOLICIT message 0 - 65,535,000 (ms). Default is 1000ms.
Initial Solicit Timeout Timeout for the initial SOLICIT message 0 - 65,535,000 (ms). Default is 1000ms.
Max Solicit Timeout Max value for the SOLICIT message timeout 0 - 65,535,000 (ms). Default is 120,000 ms.
0 means no max
Max Solicit Max value for the number of times the SOLICIT message 0 - 65,535. Default is 0.
Retransmission Count will be retransmitted.
Max Solicit Max time for which the SOLICIT message will be 0 - 65,535,000 (ms). Default is 0 ms.
Retransmission Duration retransmitted.
Only two options can be used to control bulk provisioning. These are Option 61 the Client ID and Option 82
the Relay Agent Information.
The Client ID can be set to the MAC Address of the Host or else the Client ID is not used.
For the Relay Agent Information, specific Circuit ID and Remote ID pairs can be imported from a CSV file or
else the Relay Agent Information is not used. There are no other choices.
To add specific Circuit ID and Remote ID pairs, click on the <Add from File> button.
Circuit ID and Remote ID pairs can be removed from the list either individually or in total using the
<Remove> or <Remove All> buttons.
DHCPv6 Options
The button is displayed in the Configure DHCPv6 Authentication dialog of the Configure DHCP Options
step of the host provisioning wizard if multiple hosts are to be provisioned.
DHCPv6 Authentication is enabled and configured by clicking on the Enable Authentication check box in
the Configure DHCP Settings step and clicking on the <Configure> button.
• RADIUS Remote Authentication Dial In User Service for authentication over EAP. To use RADIUS as
the EAP encapsulation method, you must first configure several steps, the host (shown in this Chapter),
the External RADIUS server ( Section 7.2.1.3.5.1) and the Test Agent Configuration using the RADIUS
tab (Chapter 9, Section 9.2.1).
• IEEE 802.1x also known as EAP over LAN (EAPoL). When a test using IEEE 802.1x is closed,
the hosts that use IEEE 802.1x authentication will send an EAP Logoff message. For the stopping
to be staggered, the Host Stop Rate can be configured in the Hosts tab of the TEST AGENT
CONFIGURATION panel.
EAP Method
A number of EAP methods are supported with default settings provided for either of the EAP Encapsulation
methods.
EAP Methods are selected by clicking the option button and selecting the method from the list available,
an example is shown in the following image. PEAP encapsulates the EAP within an encrypted and
authenticated Transport Layer Security (TLS) tunnel, when using PEAP, another authentication method
must also be used.
• the Supplicant if the SUT is the Authenticator using IEEE 802.1 as the EAP method.
• the Authenticator if the SUT is the Authentication Server with RADIUS as the EAP method.
1. Select Enable EAP Authentication in the Configure EAP Settings options in the Add New Host
Wizard.
3. Configure the rest of the details as required, the image below shows how to enter a scalable
Username.
4. You must provision the External RADIUS Server, to do this see Section 7.2.1.3.5.1.
5. When the External RADIUS Server is provisioned, you must then configure the Chapter 9, Section 9.2.1
using the RADIUS tab.
Table 7-20. Configure EAP Settings
Enable EAP Authentication Enables EAP Authentication when selected. Boolean value. Default value false
EAP Encapsulation Method Only available when the Enable EAP Authentication is Enumerated Value. Default value RADIUS.
true (checked). The value can be one of the following:
• RADIUS
• IEEE802.1
EAP Method Select the EAP method to be used. Selector type. Mandatory value. The value
can be selected from the following:
• MD5
• TLS
• TTLS
• MSCHAPv2
• PEAP
• SIM
• LEAP
• AKA
• GTC
• TLV
• TNC
• OTP
• PAX
• SAKE
If EAP Encapsulation method is RADIUS,
default is PEAP, MSCHAPv2.
If EAP Encapsulation method is
IEEE802.1, default is MD5
If you select PEAP, another authentication
method must also be used.
Username User name allows alphanumeric scaling. String value. Mandatory. Default value "".
Length range from 1 to 255. Valid
characters include: 'a-zA-Z0-9 .{}<>[]
()@#&*%_+=!-'
Password Password allows alphanumeric scaling. String value. Mandatory. Default value "".
Length range from 1 to 255. Valid
characters include: 'a-zA-Z0-9 .{}<>[]
()@#&*%_+=!-'
1. In the Java client select the Test Group where you want to create the External RADIUS
Server, and from the Applications tab select RADIUS > External RADIUS Server.
2. In the Configure External RADIUS Server dialog, enter a Name, along with the Host IP Address and the
Port number for the server.
3. Click Finish.
If you wish to add External Properties, click next and enter any additional external properties that you
require, then click Finish.
4. You can now set the Test Agent Configuration settings so that all authentication be done using the
same server. For information on how to set the Test Agent configuration, see Chapter 9, Section 9.2.1.
• Stagger the start and stop time of host(s) : You can add a delay before starting the host, and/or specify
a time period after which the host will stop.
• Rate limit the number of hosts coming online and sending traffic: You can configure cycles of activity/
inactivity using Activity Cycles. By configuring activity cycles, you can create a host session for a
defined period of time, terminate the session and then re-create the session after a specified delay. This
will test the capabilities of the server in the customer network to handle multiple host session creations/
terminations during the lifetime of a test.
Enable Start After Delay Allow the host to start later than the test group. If the test Default is Disabled. (Not available for
group contains a large number of hosts, this should be a external hosts).
profile over a range of time. By staggering host start times,
problems are prevented when interacting with server
hosts.
Start After Delay Time after the test group starts before the host(s) will start. Integer or Max/Min profile. Min is 0, Max
is 1 Hour. Default 0. Supported metrics
are ms (default), sec and min. Required if
Enable Start After Delay is enabled.
Enable Stop After Time Allows the host to stop before the end of the test group. Enabled or Disabled. Default is Disabled.
Required for all Virtual Hosts. Not available
for external hosts.
Stop After Time The Stop After timer starts at the moment the existing Integer or max/min profile Range: min=1
Start After timer expires. When the Stop After timer sec, max=1 year. Supported metrics secs,
expires, any active period present is shortened and mins, hours with default as secs. Required
gracefully terminated. This controls the duration of active/ if Enable Stop After Time is enabled.
inactive cycles.
Click on the Configure Activity Cycles button next to ActivityCycles field to configure activity cycles:
Enable Activity Cycles Enables activity cycles in the lifetime of a host (as Default is Disabled. (Not available for
opposed to continuous activity). external hosts).
Active Duration Length of time that the host will be active for, including any Integer or max/min profile Range: min=1
"set-up" time (such as PPPoE/DHCP configuration). sec, max=1 year. Supported metrics secs
(default), mins, hour. Required if Enable
Activity Cycles is enabled.
Enable Inactive Duration Forces inactivity between periods of activity. Enabled or Disabled. Default is Enabled.
Required if Enable Activity Cycles is
enabled.
Inactive Duration Length of time the host will be inactive for between Integer or max/min profile Range: min=1
periods of activity. This includes any "teardown" time sec, max=1 year. Supported metrics secs
(such as PPPoE/DHCP termination/release). (default), mins, hours. Required if Enable
Inactive Duration is enabled.
Block All Traffic If enabled, blocks all traffic directed to this host. (This acts Enabled by ticking the checkbox. Default is
as a simple "all-or-nothing" firewall. It is typically used disabled.
for preventing "victims" in DDoS tests from becoming
overwhelmed with traffic.)
Note
Hosts (and applications) must be loaded before they can be listed on the Display Panel.
Tick the Allow Sorting check box to sort the listed hosts by any of the configuration field values.
Note
This may have a performance value.
The Service State can only be changed on Virtual, not External Hosts.
When a host is set Out of Service, its row in the table changes colour to indicate its new state, as shown.
The state of a host is indicated in the last column in the table of hosts. You can navigate to the end of the
table, and drag and drop the column to any position between the other columns.
2. A pop-up menu is displayed showing the appropriate Service State options for these hosts:
• If a single selected host is "In Service", the menu option Set Out of Service will be displayed:
• If a single selected host is "Out of Service", the option Set In Service will be displayed.
• If multiple selected hosts are all "In Service", the option Set All Out of Service will be displayed.
• If multiple selected hosts are all "Out of Service", the option Set All In Service will be displayed.
• If the multiple selected hosts have a mixture of service states, the options Set All In Service and
Set All Out of Service are displayed.
• If the selected hosts(single or multiple selection) contains a type of host on which the service state
cannot be changed, then no service state options are displayed.
• If the selected hosts is a Scaled Host it is possible to find a specific host contained within the
Scaled Host and set this host In or Out of Service. There are many criteria for finding such a host
e.g by Name, IP Address, MAC Address or through a selection of other criteria.
1. On the Hosts Display screen, click on the required host to highlight it.
Click on the required tab to edit the properties for this category of host settings. Values for the fields on
these pages are described in earlier sections:
• Host Statistics
Certain options will be greyed out depending on the selected hosts. In this example it is not possible to
configure either DHCP or PPPoE statistics because the selected Hosts are not DHCP or PPPoE enabled
hosts.
Note
When capturing on a VoIP flow the capture is performed by filtering on the UA Client IP Address. This
means that packets will also be captured for any other application with the same IP Address.
3. What appears next depends on whether the host is a single or scaled Host. If it is a Scaled Host it will
be possible to perform a PDU Capture on a host contained within the scaled host by first finding the
Host and then capturing PDUs on the found host. It is possible to find a host by using certain criteria
such as the Host Name, IP Address, MAC Address.
4. If the host is a non-scaled Host or after finding a host within a Scaled host, the Host PDU Capture
Wizard is displayed.
Time Duration How long in seconds the packet capture No default. 0 - 86400 secs or 24 hours.
should last.
Packet Length Number of bytes to capture in each packet. Default is 0 meaning all bytes. Max is
65535.
IP Addresses Source and Destination addresses used Defaults to the "side" selected by you.
to filter packets for this application. Client/
Server will be the proxy if a Proxy is
used in a HTTP application. Destination
will be IGMP Multicast Group for IGMP
application.
When you click on the <Finish> button in the Host PDU Capture Wizard, the PDU Capture Tab screen is
displayed, indicating the progress and result of the capture.
View capture packets. The captured packets can be viewed in a packet inspection tool such as Wireshark. Make sure
Wireshark is on your path. This can also be performed via a right-mouse click on a selected capture.
View video content. If a packet capture contains video, the video itself can be viewed using the View Video Content
option. This option can also be performed via a right-mouse click on a selected capture. Make sure VLC is on your path.
Save the selected capture. This option can also be performed via a right-mouse click on a selected capture.
Delete the selected capture from the list. This option can also be performed via a right-mouse click on a selected
capture. It is not possible to delete the currently running capture.
Cancel the running capture. The Capture Completed icon is displayed beside the capture. This option can also be
performed via a right-mouse click on a selected capture.
Capture completed. This icon is displayed beside a capture that is, completed.
Note
The Ping menu option is only enabled if the test group is running.
Note
The Ping menu option is not available for external hosts.
1. Display all the provisioned hosts in the Display Panel of the screen.
3. Right click on the host and select the Ping From option from the menu. What happens next depends
on if the host is a Scaled Host or a single, non-scaled host. If it is a scaled host it is possible to perform
a ping on a host within the Scaled Host. However first a host must be found and then the ping is
performed on this found host. A host can be found by searching for it based on its Name, IP Address,
MAC Address or other criteria.
When a host is found within a Scaled Host or the selected host is a single, non-scaled host, the Initiate
Ping dialog is displayed:
Note
The source and destination IP addresses must be on different physical interfaces.
Note
The IP version, (v4/v6), of the destination of the Ping must match that of the source Host.
Source EndPoint
Entity Name Selected source host to Cannot be modified. Determined by the Entity Type and IP Address field values.
ping from.
IP Address IP address of the selected Cannot be modified. If the host is a subnet, the first IP address from a list will be
host to ping from. selected by default.
Destination
EndPoint
Entity Name The destination entity to Determined by the Entity Type and IP Address field values.
be pinged.
Entity Type The destination entity type Can be an Application, Host or Valid IP Address which is entered in the following
to be pinged. field.
IP Address The destination IP Enter a valid IP address (this IP address can be any address - it doesn't have to be
address to be pinged. a TeraVM entity) or select from a list of available hosts or applications, depending
on which is selected in the Entity Type field. The IP version, (v4/v6), of the target of
the Ping must match that of the source Host. >Note:The destination address cannot
be; - an unspecified address; - a multicast address; - the broadcast address; - the
network address of the Host that the trace is initiated from; or - a loopback address
If a trace route operation is initiated from a subnet Host or an Application using a
subnet host, the IP address must be a valid address within the range associated with
the subnet host.
By clicking in the Advanced Settings button on this dialog, the following properties can be configured for a
ping:
Packet Size Expressed in bytes, this determines the Mandatory. Default value 64. IPv4: Min
size of each ping packet. It must be a fixed = 16, Max: MTU - 20, (20 = size of IPv4
value. header) IPv6: Min = 16, Max: MTU - 40,
(40 = size of IPv6 header)
Delay between Packets The delay in ms between ping packet Mandatory. Default value 1. Min = 1, Max =
transmissions. 3600000 ms.
Ping Results
A ping operation, once initiated, continuously pings the destination host or application until canceled by the
user or until the test is stopped. When the ping operation is performed, the following Ping Results window is
displayed.
When a ping has been completed, the following summary information is displayed for the ping operation:
• Number of packets sent
• Number of packets received
• Percentage of packets lost
• Min/Max/Avg Round Trip time
The begin and end time for the operation is also displayed in this window.
The following buttons are available in this window to enable the following tasks:
• <Start> - Restart a previously completed/stopped ping operation.
• <Clear> - Clear the ping operation window at any time.
• <Close> -Stop a ping that is, running and close the window.
• <Advanced> - View the Advanced Ping Settings. Refer to the Advanced Ping Settings dialog previously
in this section.
Note
The Trace Route menu option is only enabled if the test group is running.
Note
The Trace Route menu option is not available for external hosts.
1. Display all the provisioned hosts in the Display Panel of the screen.
3. Right click on the host and select the Trace Route From option from the menu. What happens next
depends on if the host is a scaled host or a single, non-scaled host. If it is a Scaled Host it is possible to
perform a traceroute on a host within the Scaled Host. However first a host must be found and then the
traceroute is performed on this found host. A host can be found by searching for it based on its Name,
IP Address, MAC Address or other criteria.
When a host is found within a Scaled Host or the host is a single, non-scaled Host the Initiate Trace
Route dialog is displayed:
Note
The source and destination IP addresses must be on different physical interfaces.
Note
You cannot trace a route between IPv6 and IPv4 addresses. Therefore, every destination IP address
that is, selected must match the IP version of the source IP address.
Source EndPoint
Entity Name The selected source host to trace from. Cannot be modified. Determined by the
Entity Type and IP Address field values.
IP Address IP address of the selected host to trace Cannot be modified. If the host is a subnet,
from. the first IP address from a list will be
selected by default.
Destination EndPoint
Entity Name The destination entity for the trace. Determined by the Entity Type and IP
Address field values.
Entity Type The destination entity type for the trace. Can be an Application, Host or Valid IP
Address which is entered in the following
field.
IP Address* The destination IP address for the trace. Enter a valid IP address (this IP address
can be any address - it doesn't have to be
a TeraVM entity) or select from a list of
available hosts or applications, depending
on which is selected in the Entity Type
field. The IP version, (v4/v6), of the target
of the Trace Route must match that of the
source Host.
Note
The destination IP address must be a valid address within the range associated with the subnet host.
It cannot be:
• an unspecified address
• a multicast address
• the network address of the Host that the trace is initiated from
• a loopback address If a trace route operation is initiated from a subnet Host or an Application
using a subnet host
By clicking in the Advanced Settings button on this dialog, the following properties can be configured for a
Trace Route :
Packet Size Expressed in bytes, this determines the Mandatory. Default value 64. IPv4: Min
size of each Trace Route packet. It must = 16, Max: MTU - 20, (20 = size of IPv4
be a fixed value. header) IPv6: Min = 16, Max: MTU - 40,
(40 = size of IPv6 header)
Delay between Packets The delay in ms between Trace Route Mandatory. Default value 1. Min = 1, Max =
packet transmissions. 3600000 ms.
Maximum Wait Time The maximum time in ms to wait for probe Mandatory. Default value 5000. Min = 1,
responses. Max = 3600000 ms.
Maximum Hop Count The maximum TTL (hop count) allowed. Mandatory. Default value 30. Min = 1, Max
= 255
Initial TTL The initial TTL value. Mandatory. Default value 1. Min = 1, Max =
255.
Note
If the operation reaches the maximum number of hops allowed, it will finish even if the destination host
or application hasn't been reached.
When the Trace Route operation is performed, the following Trace Route Results window is displayed.
When a Trace Route has been completed, the following summary information is displayed for the Trace
Route operation:
• TTL Count
• Gateway IP address
• Round Trip time contacting each host in the route to the destination.
The begin and end time for the operation is also displayed in this window.
The following buttons are available in this window to enable the following tasks:
• <Close> -Stop a Trace Route that is, running and close the window.
• <Advanced> - View the Advanced Trace Route Settings. Refer to the Advanced Trace Route Settings
dialog previously in this section.
2. Right click on the host and select the Delete option from the menu.
Chapter 8. Applications
8.1. Using TeraVM Applications
This chapter shows you how to create and work with TeraVM Applications. The details of the IP applications
supported are in the TeraVM Applications chapter.
Servers
A server application provides a service to other applications.
When a remote application attempts to connect, it accepts the connection and then services requests from
the remote application. The listening connection, (and often even the server itself), is referred to as the
listener, while the remote connections are referred to as the accepted connections.
For example, a web server (emulated as a HTTP server application in TeraVM) will accept connections
from remote clients, and provide them with resources they request using the HTTP protocol. A real-world
resource might typically be a file that is, stored in a directory on the web server. A TeraVM HTTP server can
simulate this, supplying either the actual file data or arbitrary data in place of real file data.
Typically, server applications are "passive" in that they do not initiate communication -- they passively listen
for incoming connections.
Clients
A client application consumes a service provided by a server application.
In the previous example, a web browser that connects to the web server to request a resource is the client
application. In TeraVM, this web browser would be represented as a HTTP client application.
Clients are "active" in that they actively initiate communication with servers. Therefore, client applications
typically "drive" the network activity during a test.
Peers
A peer or peering application is both a provider and a consumer of a service. In most cases, a peer can
be thought of as an application that has both a server and a client component. At any given moment,
a peer could be supplying a service to another peer, (acting as a server), or consuming another peer's
service, (acting as a client). The name "peer" was chosen to get across the idea that peers in a network
are considered equals, since they provide and consume the same, or similar services (though some can be
"more equal" than others).
Some examples of peering are:
• A Peer-to-Peer (P2P) file sharing network consists of a group of peering applications that can request
files from other peers, (acting as clients), or share files with other peers, (acting as servers). In a
real-world P2P network, peers that can store large numbers of files, or that have very fast network
connections, can be "ranked" in such a way that they tend to act more as servers than clients. This is a
good example of a case where the term "peer" can be somewhat of a misnomer, since not all "peers"
are treated as equals.
• Voice over IP (VoIP) is another peering application. A VoIP phone can accept calls from other phones,
and can make calls to other phones. All the phones in a network are typically considered equals
(peers), and each phone can both "provide" and "consume" phone service.
Note
It is still possible to perform actions on individual objects within the scaled entity, for example view
statistics for a particular host or application.
A scaled application contains many applications of the same type. For example, a scaled HTTP client
application represents a number of individual HTTP Client applications - not a mixture of HTTP and other
applications. Each application may have unqiue specific fields. For example the Name field, together with
the scale factor controls the generation of unique names.
When provisioning an application, the Configure As field has an option called Scaled Entity. This option
is automatically selected when you set the Number of Applications being generated at once to greater
than 1. In this scenario, each field that can have a unique value for each entity contained within the Scaled
application, has a visual indicator and clicking this displays a new dialog offering control of the generation of
the unique values for the field.
A typical client can scale the following fields:
• Name
• Hosts
A typical server can scale the following fields:
• Name
• Hosts
• Normal Statistics
• Fine Statistics
If either fine or normal statistics are enabled for a scaled server, you must configure how many of the entities
within the scaled server will have statistics enabled on them.
In the provisioning Wizard, if the 'Configure As' field has a value of 'Scaled Entity', then the Wizard is
configured to a single scaled server and the 'Number of Servers' field represents the scale factor of the
scaled server. If a server is configured as a scaled server, then the scaler editor buttons will appear, where
appropriate, beside the supported scalable properties.
Bulk Provisioning
Here you specify one set of parameters, and multiple, separate objects are created from it. Each object
will differ from the last by changing one or more parameters in a predetermined way, (for example, an IP
Address field might be incremented for each new object). After a "Bulk-Provisioning" operation, each bulk-
provisioned object will be represented in TeraVM, (and in a running test), as a separate item. For example,
if a No. of Rows of 100 is entered, then 100 TeraVM objects will be created, and each of these will in turn
track a corresponding test object when the test is running.
It is possible to bulk provision most types of Client applications but only certain types of Server applications,
these are - HTTP, FTP, SMTP, POP3 and RTSP. When bulk provisioning servers, the number of hosts
selected must equal the number of servers being provisioned.
Bulk and Batch Provisioning of IP client applications (with the exception of Delay Sensitive, P2P, and DDoS
applications) enables you to create a large number of applications at the same time using the Add New
Client Application(s) Wizards for each type of client application. The following fields in the wizard are used
to configure bulk provisioning for applications.
Table 8-1. Bulk Provisioning Client Application parameters
No. of Clients Each application created via this mechanism has a row 1 to 100,000,000.
created in the Display Window for Applications allowing
statistics to be generated for each row.
Name A unique name for the application. If No. of Clients has a value greater than
1, the bulk provisioning button will be
displayed beside this field to enable unique
names to be created for each application.
Refer to the section on Unique Naming for
more details.
Configure As RTSP, HTTP, VoIP, SMTP, POP3 and TCP Playback The options for this field are:
provisioning dialogs can use the Configure As field to
• Single Client Per Row
configure single or multiple clients applications per row
in the Applications Display Window. Sometimes the term • Single Client Per Row - Varied
batch is used to describe a row that represents multiple Address
clients applications.
• Multiple Clients Per Row
Host(s) The host(s) that the client application(s) will bind to. Can be a single host or multiple hosts
equal to the amount of rows specified in
the No. of Rows field.
No. of Clients Per Row (Only available if Multiple Clients Per Row is selected
in the Configure As field) This field enables you to enter
the number of client application to generate for each row
configured in the No. of Rows. For example, if the No. of
Rows value is 100, and the No. of Clients Per Row is 2,
the number of clients generated is 200.
Server(s) HTTP, FTP, POP3, SMTP and RTSP can select multiple
Servers, all other client applications cannot. If multiple
Servers are selected the client will be assigned a Server
in one of two ways - the number of clients is divided by
the number of servers with each server assigned to the
resulting number of clients. Or, each client is assigned a
server linearly from the list of servers.
The No. of Clients entered, are the actual number of client rows that are displayed in the Applications
Display Window. The No. of Clients Per Row is represented by the value in the Represents column of the
Applications Display Window.
In the following example, 'BP Example 1' is configured with a Single Client Per Row whereas 'BP Example
41' is configured with 10 Multiple Clients Per Row.
This dialog enables you to create unique names for all the applications you are configuring. Enter a value
in the Increment by: field to generate unique names containing increments of the entered name value. For
example, App, App1,App2, and so on.
A new Addressing Details step is created in the Add Client Application Wizard for this bulk provisioning
configuration.
The following fields are used to generate a unique IP address for each client row, for each TCP connection.
No. of IP Addresses The number of IP addresses to use within the subnet to Default is 2.
vary the IP addressing for each client.
Start IP Address Within The start IP address to use within the subnet to vary the The IP address configured for the Subnet
Subnet IP addressing for each client. host.
IP Address Within The mode used for assigning IP addresses to the client. Options are Sequential , Random or
Allocation Mode Zipfian Distribution.
Offset between IP If more than one client is using the same subnet host, the Default is 1.
Address Ranges address range used by each client is separated by the
offset value in this field.
For HTTP, SMTP and POP3 clients, it is possible to have finer control on when the IP Address changes that
is, not have it change for each attempted TCP Connection. There are two other control mechanisms:
• Retry After Failure: if a client receives a TCP error, it will retry the connection with the same IP Address.
The retry can happen a configurable number of times with delays between each retry.
• Retry on Success: if a client successfully completes it's work (as determined by its Session Details), it
can repeat itself again using the same IP Address. Like Retry After Failure, the repeat can happen a
number of times with delays between each repeat.
A new Addressing Details step is created in the Add Client Application Wizard for this bulk batched
provisioning configuration.
The following fields are used to generate a unique IP address for each client row, for each TCP connection.
Table 8-3. Addressing Details
No. of Clients Per Row The number of client application to generate for each row Default is 2.
configured in the No. of Rows field in the Application
Details step. For example, if the No. of Rows value is
100, and the No. of Clients Per Row is 2, the number of
clients generated is 200.
Start IP Address Within The start IP address to use within the subnet to vary the The IP address configured for the Subnet
Subnet IP addressing for each client. host.
Offset between IP If more than one client is using the same subnet host, the Default is 1.
Address Ranges address range used by each client is separated by the
offset value in this field.
Batch Provisioning
This is similar to scaling, however unlike scaling, it is not possible to isolate statistics or state for any
individual object within the batch.
Passive Analysis
Passive Analysis analyses the traffic pattern of an incoming stream of packets containing real time media
and computes a score of the user quality of the resulting media. Typically this is a Mean Opinion Score
(MOS) and is in the range 1-5. Passive analysis looks at the received stream for packet loss, jitter etc to
compute these statistics.
Passive Analysis is supported in the following client applications:
1. VoIP Client - Analysis of voice and video streams.
2. IGMP/MLD Client - Analysis of RTP video stream, MPEG2-TS video/audio streams.
3. RTSP Client - Analysis of RTP video/audio streams. If the RTP packet contains MPEG2-TS it is also
possible to analyse the MPEG2-TS video/audio stream.
4. RTP Unicast and Multicast Clients - Analysis of RTP video stream, MPEG2-TS video/audio streams.
The details are explained in the appropriate sections on VoIP, IGMP/MLD, RTSP and RTP. The Passive
Analysis statistics produced by each of the above applications are detailed in the TeraVM Metrics Guide.
However, it should be noted that due to the nature of Codecs the maximum values for Voice MOS scores
are:
• G.711 ulaw: 4.195
• G.711 alaw: 4.195
• G.722: 3.875
• G.723: 3.770
• G.728: 4.035
• G.729: 3.945
• GSM: 3.566
For Video it is the bandwidth of the stream in combination with the video frame size (height/width) that
affects the maximum attainable MoS score. The greater the frame size the more bandwidth required to
deliver a video stream of required quality.
It is not possible to right-click on a Scaled Application and enable or disable Passive Analysis - instead it
must be configured during the provisioning of the scaled application.
Adding an IP Application
A Test Group also contains all applications of a particular type or applications of different types and must
first be created before any applications are add or provisioned. See Adding a Test Group for more
information on how to set up a Test Group.
1. In the Test Group tab in the Configuration Window, select the required IP Test Case for which you
want to create an application.
2. Click on the Application tab in the adjoining display window for this Test Case.
4. Select the required application type from the list in the displayed menu.
or,
1. In the Test Group tab in the Configuration Window, select the required IP Test Case for which you
want to create an application.
4. Select the required application type from the list in the displayed menu.
or,alternatively:
1. In the Test Group tab in the Configuration Window, select the required IP Test Case for which you
want to create an application.
2. In the adjoining display window for this Test Case, list the configured hosts for this Test Case.
3. Right click on a selected host and select the Use with option from the menu.
4. Select the required application type from the list in the displayed menu.
Note
The Test Cases for the selected Test Group must be loaded before a new application can be added
For each application type selected, an appropriate provisioning wizard is displayed. The wizard comprises
of a number of provisioning steps which are listed on the left panel of the wizard dialog box. The specific
configuration fields for each step are displayed on separate pages of the wizard. When the settings for a
provisioning step are entered, click on the<Next>button to move on to the next step. You can also move
backwards to a previous step by clicking on the <Prev> button.
Warning messages are displayed in red at the bottom of the wizard pages to let you know which fields are
mandatory on the displayed page and to warn you if an incorrect value has been entered in a field.
Single Modify
To modify a single application:
1. Double click on the application or right-click and select Properties. This will display a property dialog
similar to the following:
Multi-Modify
To modify multiple (client) applications:
2. Right-click and select Properties. This will display a property dialog similar to the following:
3. If you have highlighted applications of different types you will be asked to select the application type you
wish to modify - it is not possible to modify different types of applications.
Note
The above dialog has a Red border around some fields. This indicates the values contained in
these fields are different from among the selected number of clients (2 in this case).
If a field is greyed out it means it is not possible to change the value - the value will remain
unchanged after the multi-modify operation.
If you do not change the value of a field, the value remains the same after the multi-modify
operation.
In the above example, the Name and Host fields are different but cannot be changed. The ToS/
DiffServ field is different but can be changed.
If a field has an associated Metric and the metrics are different between applications, the
associated Metric drop-down will have a Red border and an empty selection in the drop-down. It
is possible to select a different Metric from the drop-down or leave it empty resulting in no change
to the Metric after the multi-modify operation.
If a checkbox is different between selected applications, it will also have a Red border. Either tick
or un-tick the checkbox to have the change applied to all selected applications. If the checkbox is
left unchanged, the associated field in all applications will remain unchanged.
If a field can have an empty value then you may wish to change all selected applications to have
an empty value. To do this simply type in a value into the field and then delete it.
Note
Hosts and applications must be loaded before they can be listed on the Display Panel.
The Allow Sorting check box can be ticked to enable users to sort the listed applications by any of the
configuration field values.
Note
An application cannot be disabled if the Test Group is currently running.
Note
There are no results/statistics for a disabled application.
Note
A Scaled Application can also be disabled - none of the contained entities will be part of the running
test group.
To enable an application:
1. Select an application or a group of Applications from the list of Applications in the Display Window, and
right click on them.
2. Click on the Enable(for one application) or Enable all (for a group of applications) menu option. This
will change the Admin State from Disabled to Enabled, regardless of the current state of individual
entries. For example, if 1 entry is already enabled it will stay enabled, while any disabled entries will be
enabled.
To disable an application:
1. Select an application or group of Applications from the list of Applications in the Display Window, and
right click on them.
2. Click on the Disable (for one application) or Disable all (for a group of applications) menu item. This
will change the Admin State from Enabled to Disabled, regardless of the current state of individual
entries. For example, if 1 entry is already disabled it will stay disabled, while any enabled entries will be
disabled.
1. Select an application (can be a Scaled Application) or group of Applications from the list of Applications
in the Display Window, and right click on them.
2. Click on the Set Out of Service menu option. If the application is a Scaled application then it is possible
to set all the contained applications Out of Service by selecting Set All Out of Service . It is also
possible set a specific application contained in the Scaled application Out of Service using the option
Set Specific Entity Out of Service . This option provides a mechanism for first finding the required
application for example by Name. Once found it is then set Out of Service.
Note
When capturing on a VoIP flow, the capture is performed by filtering on the UA Client IP Address. This
means that packets will also be captured for any other application with the same IP Address.
Note
It is possible to capture the unencrypted TLS/SSL traffic passing through an AnyConnect Client
application. This allows the contents of the SSL connections used to establish tunnels and transfer
data to be captured in unencrypted format.
Note
It is possible to capture PDUs on an application within a Scaled application. The particuluar application
must first be identified for example by Name.
3. Select whether to capture PDUs on the Client, Server or Both Sides of the traffic flow.
5. If the Application is a Scaled Application you must select an individual application from within the scaled
application. This is done by first finding the application - an application can be found via its Name and
many other criteria. The Capture PDU option is not available on a Scaled Entity if the test group is not
running.
Time Duration How long in seconds the packet capture No default. 0 - 86400 secs or 24 hours.
should last.
Packet Length The number of bytes to capture in each Default is 0 meaning all bytes. Max is
packet. 65535.
When the appropriate information is entered for capturing the PDUs and the <Finish> button is clicked, the
PDU Captures tab is displayed in the Console Window, indicating the progress and result of the capture.
View capture packets. The captured packets can be viewed in a packet inspection tool such as Wireshark. Make sure
Wireshark is on your path. This can also be performed via a right-mouse click on a selected capture.
View video content. If a packet capture contains video, the video itself can be viewed using the View Video Content
option. This option can also be performed via a right-mouse click on a selected capture. Make sure VLC is on your path.
Save the selected capture. This option can also be performed via a right-mouse click on a selected capture.
Delete the selected capture from the list. This option can also be performed via a right-mouse click on a selected
capture. It is not possible to delete the currently running capture.
Cancel the running capture. The Capture Completed icon is displayed beside the capture. This option can also be
performed via a right-mouse click on a selected capture.
Capture completed. This icon is displayed beside a capture that is, completed.
Security Protocols The packets to be decrypted. Defaults to those protocols associated with
the application from where this option was
launched. Currently this is the AnyConnect
and VoIP applications.
Time Duration How long in seconds the packet capture No default. 0 - 86400 secs or 24 hours.
should last.
Packet Length The number of bytes to capture in each Default is 0 meaning all bytes. Max is
packet. 65535.
Note
The Ping menu option is only enabled if the test group is running.
Note
The Ping menu option is not available for external applications.
Note
It is possible to Ping from an application within a Scaled application. The particuluar application must
first be identified for example by Name.
1. Display all the provisioned applications in the Display Panel of the screen.
3. Right click on the application and select the Ping From option from the menu.
4. If the Application is a Scaled Application you must select an individual application from within the scaled
application. This is done by first finding the application - an application can be found via its Name and
many other criteria. The Ping option is not available on a Scaled Entity if the test group is not running.
Source EndPoint
Entity Name The selected source application to ping Cannot be modified. Determined by the
from. Entity Type and IP Address field values.
Destination EndPoint
Entity Name The destination entity to be pinged. Determined by the Entity Type and IP
Address field values.
Entity Type The destination entity type to be pinged. Can be an Application, Host or Valid IP
Address which is entered in the following
field.
IP Address The destination IP address to be pinged. Enter a valid IP address (this IP address
can be any address - it doesn't have to be
a TeraVM entity) or select from a list of
available hosts or applications, depending
on which is selected in the Entity Type
field. N ote:The destination address
cannot be; - an unspecified address;
- a multicast address; - the broadcast
address; - the network address of the
Host that the ping is initiated from; or -
a loopback address If a ping operation
is initiated from a subnet Host or an
Application using a subnet host, the IP
address must be a valid address within
the range associated with the subnet
host. Subnet hosts are used for the for
Multi-row applications and Single Row,
Varied Address applications.
By clicking in the Advanced Settings button on this dialog, the following properties can be configured for a
ping:
Packet Size Expressed in bytes, this determines the Mandatory. Default value 64. IPv4: Min
size of each ping packet. It must be a fixed = 16, Max: MTU - 20, (20 = size of IPv4
value.
Delay between Packets The delay in ms between ping packet Mandatory. Default value 1. Min = 1, Max =
transmissions. 3600000 ms.
Ping Results
A ping operation, once initiated, continuously pings the destination application or host until canceled by the
user or until the test is stopped. When the ping operation is performed, the following Ping Results window is
displayed.
When a ping has been completed, the following summary information is displayed for the ping operation:
• Number of packets sent
• Number of packets received
• Percentage of packets lost
• Min/Max/Avg Round Trip time
The begin and end time for the operation is also displayed in this window.
The following buttons are available in this window to enable the following tasks:
• <Close> -Stop a ping that is, running and close the window.
• <Advanced> - View the Advanced Ping Settings. Refer to the Advanced Ping Settings dialog previously
in this section.
Note
The Trace Route menu option is only enabled if the test group is running.
Note
The Trace Route menu option is not available for external applications.
Note
It is possible to TraceRoute from an application within a Scaled application. The particuluar application
must first be identified for example by Name.
1. Display all the provisioned applications in the Display Panel of the screen.
3. Right click on the application and select the Trace Route From option from the menu.
4. If the Application is a Scaled Application you must select an individual application from within the scaled
application. This is done by first finding the application - an application can be found via its Name and
many other criteria. The Traceroute option is not available on a Scaled Entity if the test group is not
running.
Source EndPoint
Entity Name The selected source application to trace Cannot be modified. Determined by the
from. Entity Type and IP Address field values.
Destination EndPoint
Entity Name The destination entity for the trace. Determined by the Entity Type and IP
Address field values.
Entity Type The destination entity type for the trace. Can be an Application, Host or Valid IP
Address which is entered in the following
field.
IP Address The destination IP address for the trace. Enter a valid IP address (this IP address
can be any address - it doesn't have to be
a TeraVM entity) or select from a list of
available hosts or applications, depending
on which is selected in the Entity Type
field. Note: The destination address cannot
be; - an unspecified address; - a multicast
address; - the broadcast address; - the
network address of the Host that the trace
is initiated from; or - a loopback address
If a trace route operation is initiated from
a subnet Host or an Application using a
subnet host, the IP address must be a valid
address within the range associated with
the subnet host. Subnet hosts are used for
the for Multi-row applications and Single
Row, Varied Address applications.
By clicking in the Advanced Settings button on this dialog, the following properties can be configured for a
Trace Route :
Packet Size Expressed in bytes, this determines the Mandatory. Default value 64. IPv4: Min
size of each Trace Route packet. It must = 16, Max: MTU - 20, (20 = size of IPv4
be a fixed value. header) IPv6: Min = 16, Max: MTU - 40,
(40 = size of IPv6 header)
Delay between Packets The delay in ms between Trace Route Mandatory. Default value 1. Min = 1, Max =
packet transmissions. 3600000 ms.
Maximum Wait Time The maximum time in ms to wait for probe Mandatory. Default value 5000. Min = 1,
responses. Max = 3600000 ms.
Maximum Hop Count The maximum TTL (hop count) allowed. Mandatory. Default value 30. Min = 1, Max
= 255
Initial TTL The initial TTL value. Mandatory. Default value 1. Min = 1, Max =
255.
Note
If the operation reaches the maximum number of hops allowed, it will finish even if the destination
application or host hasn't been reached.
When the Trace Route operation is performed, the following Trace Route Results window is displayed.
When a Trace Route has been completed, the following summary information is displayed for the Trace
Route operation:
• TTL Count
• Gateway IP address
• Round Trip time contacting each application or host in the route to the destination.
The begin and end time for the operation is also displayed in this window.
The following buttons are available in this window to enable the following tasks:
• <Start> - Restart a previously completed/stopped Trace Route operation.
• <Clear> - Clear the Trace Route operation window at any time.
• <Close> -Stop a Trace Route that is, running and close the window.
• <Advanced> - View the Advanced Trace Route Settings. Refer to the Advanced Trace Route Settings
dialog previously in this section.
Note
Raw Port Playback is available in IP Test Cases but it is not a pure IP application - it will replay
anything.
Note
The configuration parameters for statistics are also common for most applications. Details can be
found in the section on Using TeraVM Statistics.
Field Description
Configure As Configures how applications(s) are grouped and displayed if you are provisioning multiple
applications. Choose between
• Single App per row (Bulk Provisioning)
• Scaled Entity (default when number > 1)
• See Chapter 7, Section 7.2.1.1 for further information.
What you choose here has an impact on the statistics (metrics) you can generate and
view. For more details, see the TeraVM metrics guide.
Host(s) All applications must run on a host. Select either a single host or multiple hosts from the list
of the previously configured IP Hosts for this test group. You can also create a host from this
field.
Name Name of the new TCP Characteristics, must be unique 3 - 32 Characters in length
within the TCP Characteristics Configuration Folder.
TCP Parameters
Max. Transmit Buffer Size Maximum size of the Senders Buffer that is, number of 64K - 1GB
segments sent without receiving an ACK. (Optional)
Max. Advertised Receive Maximum size of the Recipients Buffer. (Optional) 2 * MSS to 65525 bytes
Window Size
Initial Retransmission Starting time to wait for an ACK before retransmitting Default 3000 milliseconds. Optional value.
Time-Out SYN. Accepts a value from a range of 1 - 3000
milliseconds.
Maximum Retransmission Configures the Maximum time allowed for a Default 64 seconds. Optional value.
Time-Out(RTO) Retransmission Time Out. This parameter can only be set Accepts a value from a range of 1 - 64
if the (previous parameter) Initial Retransmission Time- seconds.
Out is set.
The Initial Retransmission Timeout must
be specified before this parameter is set,
and the Maximum Retransmission Timeout
must be greater than that specified.
TCP Timer This determines the frequency with which TCP 10 - 5000 milliseconds. Can be a profile.
connections are checked to see if retransmissions are
required.
TCP Behaviour
Emulate Delayed ACKs Emulate ACKs being delayed, either All Segments or for Select from the drop-down combo, All
a maximum of 2 Segments Max. 2 Segments within each Segments, Max 2 Segments or Off.
TCP window or no delayed ACKs, Off. Default is All Segments.
First data segment ACK Emulate sending the first data Segment with the ACK flag On or Off, Default is Off.
can SYN-ACK set to true to acknowledge a SYN ACK.
Final data segment can Emulate sending the last data Segment with the FIN flag On or Off, Default is On.
include FIN set to true.
Final data segment ACK Emulate sending the last data Segment with the FIN and On of Off, Default is On.
can include FIN ACK flag set to true.
TCP Options
Max. Segment Size (MSS) Maximum size of the TCP Data Segment. (Optional). Value in range of 1 - 9176 bytes or a
This value can be calculated as follows: MSS (Bytes) = profile. Note: the maximum MTU size
MTU (bytes) - IP Header Size (e.g. 20 or 40 bytes) - TCP (Maximum MTU) is 9216, the MSS
Header Size (e.g. 20 bytes). considers the TCP/IP Header size of 40/60
bytes.
• A runtime error is displayed if a number
greater than the maximum
allowed is used.
Window Scale The window scale used to extend the original TCP window 0 - 14, default is None. Configuring a
size. (Optional) window scale of 0 means no scaling but
the actual TCP window scale of 0 will be
specified as a TCP option
Use Selected ACK (SACK) TCP will recognise an incoming "SACK permitted" option On or Off, Default is Off.
when permitted in a SYN packet, and subsequently use SACK options to
acknowledge Out of Sequence Data Segments.
Set Selected ACK (SACK) TCP will set the "SACK permitted" option in outgoing SYN On or Off, Default is Off.
permitted packets. Note that the TCP will always interpret incoming
packets that SACK Out of Sequence Data Segments,
even if "SACK permitted" was not set in the initial SYN
packet. The assumption is that the receiving end of a
connection will not use SACK unless the sending end
explicitly permitted it in its SYN packet.
Support Timestamp when Indicates if the receiving end of the TCP will support On or Off, default is Off.
requested Timestamping when requested. (Optional)
Request Timestamp Indicates if the TCP timestamp option will be included in On or Off, default is Off.
the SYN segment of TCP header. (Optional)
Name The unique name for the connection rate limit. 3 - 32 characters.
Rate Limit This is the rate (or conn/second) that can be applied to the 1 - 1000000. The Metric for the Rate Limit
application. value is conn/sec.
Enable Ramping This checkbox indicates if the specified rate limit will be Enabled or disabled. Default is disabled.
achieved over a ramp-up or ramp-down period.
Start From Starting rate limit. If this smaller than Rate Limit then there 1 - 1000000
is a ramp-up affect. If it is greater than the Rate limit, there
is a ramp-down affect.
Period The time in seconds or minutes over which the ramp-up or 0 - 3600 seconds or 0 - 60 minutes.
ramp-down occurs.
Here you can set the start and stop time for an application test.
You can also enable Normal or Fine Statistics, and put the application in an aggregate group for statistics
collection (for more information, see the TeraVM Metrics Guide). Refer to Using TeraVM Statistics for
configuration steps.
Start After Time after which the application will start. Optional. Measured in milliseconds, seconds or
minutes. You can also create a profile. If blank
then TeraVM will work out an appropriate value
based on the number of applications configured
in the test group.
Stop After Duration of time after a task has started, that it will Optional. Can have a value in the range 1 -
run for, before automatically stopping. 86400 (secs). If it is a profile it can have min
and max values within this range. Blank means
it will run forever or until stopped manually.
Default is Blank. Supported metrics are secs,
min and hour with secs as the default.
Enable Normal Statistics TeraVM will gather normal statistics at the Application Default is Normal stats enabled.
sampling interval configured for your Test Group (see
Configuring Statistics General Parameters).
Enable Fine Statistics TeraVM will gather fine statistics at the Application Default is Fine stats disabled.
sampling interval configured for your Test Group (see
Configuring Statistics General Parameters).
Aggregate Group Aggregate Group to which this application belongs Optional. Select a group from the list of
for statistical reporting purposes. See Viewing previously configured groups or add a new
Aggregate Groups. group. "Default" is the test group.
For example, if you are configuring a HTTP client, the client will start after the time specified in Start After.
Once started, it will continuously attempt to open TCP connections to the selected HTTP server and issue
HTTP requests, until such time as the HTTP client is stopped (Stop After).
You can also create a profile for your Start After parameter, for example, if your application uses different
bit rates, as for HTTP Adaptive Bit Rate Client. The profile is used to add a rate limit range to manage the
client requests. For example, if there are 500 application requests with a limit of 100 per second then create
a profile and configure range values of 1 to 5000. Set the Start After time denomination to milliseconds (ms).
Another example may be for 5 application requests at 1 per second. The range values would then be 1 to 5
and the Start After time denomination is seconds (secs). Refer to the TeraVM User Guide for more details
on using profiles.
Configure Passive Allows the configuration of the client for Passive Analysis. Enabled by ticking the checkbox or
Analysis disabled by unticking. Default depends on
the application.
Note
Passive Analysis requires the purchase of a special software licence. If that licence has not been
purchased, and you try to enable the Configure Passive Analysis checkbox, a pop-up dialog
appears to advise you that one is required.
Note
Configure Passive Analysis and Latency Stats (parameter available for some applications) are
mutually exclusive and cannot both be enabled simultaneously on the same user agent.
8.2.2. HTTP
HTTP (HyperText Transfer Protocol) transfers data on TCP/IP networks between a web server and a web
browser (client). For a definition of the HTTP protocol, please refer to RFC 2616. An HTTP server usually
accepts connections from HTTP clients on TCP port 80.
When configuring Cipher Suites on HTTP Applications, the Enable TLS check box must be selected on both
the Client and the Server. You can then add your own Cipher List by selecting a Custom Configuration
option for the TLS Version.
SSLv3 cannot be selected from the Java UI, in order to enable it for HTTP Clients and Servers, see
Section 8.2.2.2.1.1.
• For information on Adding a Cipher Suite, in an HTTP Application, see Section 8.2.2.2.1.2.
DNS Lookup
DNS Lookup on the HTTP Client is disabled by default, and can be enabled. When enabled, the URI must
be in one of the following formats for a DNS lookup to take place on the hostname:
• http://[hostname]/[path]
• https://[hostname]/[path]
An HTTP GET request can then be done on the Hostname. This behaviour can be enabled for HTTP when
provisioning the HTTP Client Application > Server Details, by selecting the check box Resolve Requests
with Test Agent DNS (see Section 8.2.2.2.2). You define the URLs in the HTTP Client Application >
Server Details, in the Resource List. The configuration of the DNS server is done in the Test Agent
Configuration dialog, using the DNS tab, see Chapter 9, Section 9.2.1 for information on configuring the
DNS server.
Examples of how the Hostname and GET request are used can be seen in the following table.
Table 8-16. Hostname and GET Request
When using HTTP/1.1, the Hostname will be added in the GET request as shown in the following example:
• HTTP Client
• HTTP Server
Note
You should set up HTTP Server and Proxy Server applications first, as you will be required to select
these when setting up the client.
Note
TeraVM supports HTTP Versions 0.9, 1.0, 1.1, and 2.0.
Configure As Configures how server(s) are grouped and displayed Required. If Number of Hosts = 1, the
if you are provisioning multiple servers, that is Number default value is "Single App per Row",
of Servers >1. Choose between Single App per row otherwise it is "Scaled Entity".
Name Unique name identifying the HTTP server application. Mandatory. String value between 1 and
255 characters in length.
Description Description for the server application. String value between 1 and 512 characters
in length. No Default. Optional.
Host(s) Select a Host from the list of previously configured IP Mandatory. Either - - Direct Virtual Host or
hosts which the server will use to access the SUT. Indirect Virtual Host can be selected.
Enable TLS This field allows you to enable/disable TLS on the HTTP Mandatory, default is unchecked.
Server.
• If the TCP Port is 80, and this field is
then checked by you, then the TCP
Port will change to 443.
• If the TCP Port is 443, and this field is
then unchecked by you, then the TCP
Port will change to 80.
TCP Port TCP Port on which the server application will listen for Integer value between 0 and 65535.
TCP connections. Default is 80.
ToS/DiffServ Quality of Service metric for the server. Mandatory. Integer value between 0 and
255. Default is 0.
The following information is required to provision the HTTP Server Application - Server Details.
Table 8-18. HTTP Server Application Server Details
Resource Preset Allows you to preset the Resource List None or MPEG-DASH. Default is None.
Resource List List of mappings between URIs and resources available. Max no. of entries is 100. When you
The resource mapping list allows you to configure a user- click on the <...>button beside the
friendly pathname for a resource such as a file. The Resource List field, the Resource List
pathname will be used by the client as part of its URL Selection dialog is displayed. Select from
when requesting data from the Server. The Server will use a previously configured resource list a or
the mapping to identify the resource to be returned to the refer to the section on HTTP Resource
Client. If you select MPEG-DASH in the Resource Preset, Lists in Chapter 8 -Test Case Configuration
a resource list suitable for MPEG-DASH clients is pre- for more details on adding new resource
selected. lists.
• Size-Based Requests
• ACWS Support
• HTTP/2 Settings
Enable Extended Sized- If enabled any URL ending in a numeric value will cause Default is disabled, only URLs of the type /
Based Requests the Server to return that amount of data to the requesting number return the specified amount of
Client. data.
The ACWS Support tab is used to define a domain name for the HTTP server(s).
Table 8-20. ACWS Support
Domain Name Domain Name of the server. Optional. String with length range from
1 to 255. Valid characters: a-zA-Z0-9 .
{}<>[]()@#&*%_+=!- Default value: none.
Scalable.
The OTT Fragment Repeat tab is used to match multiple OTT client requests to a single video fragment, that
is, for every media fragment that a client requests, the HTTP Server replays the same video fragment. This
is used to prevent multiple video file fragments on the HTTP Server.
Table 8-21. OTT Fragment Repeat
URI Substring Each URI is stripped from the start of the entered string Optional. String with length range from 1
value. to 255. Valid characters: a-zA-Z0-9 .{}<>[]
()@#&*%_+=!- Default value: Null.
Dependencies:
• If default MPEG-DASH resource list
is selected, substring '_ffmpeg' is the
default value.
• If another resource list is selected, any
value can be entered.
Frame Size Size of the HTTP/2 frames sent by the server. Optional. Integer or profile with value
between: 1 and (16,777,215). Only
used for HTTP/2.
The HTTP/2 Settings tab is used to set a value or a profile for the size of the frames, the default value will
be (16 MB). Actual frame size will be the lowest between this value, the size advertised by the client in
SETTINGS_MAX_FRAME_SIZE (16 kB by default) and the actual resource size.
Response Delay Delay between when a HTTP requests is received and Optional. ms (default) sec, min. Range
when the HTTP response is sent. 0 ms and 60 secs. Default value: none.
Click ... to Add Profile.
Note
When you set up a HTTP client application, you have to specify the server it links to (in the Server
Details section). For this reason, always set up the server first.
• Application Details
• Addressing Details (Only appears if the Configure As field is set to either "Single Client per Row -
Varied Address" or "Multiple Clients per Row")
• Server Details
• Connection Details
• Additional Configuration
No. of Clients Number of applications to be created at once. Default is 1. 1 - 50,000,000 clients can be
configured per server.
Configure as Configures how applications(s) are grouped and displayed The options for this field are:
if you are provisioning multiple applications, that is No.
• Single App Per Row
of Clients >1. Choose between Single App per row
(Bulk Provisioning) or Scaled Entity. See Chapter 7, • Scaled Entity
Section 7.2.1.1 for further information.
• Single Client Per Row - Varied
Address
When using this option, the No. of
Clients field will represent the No. of
Rows.
• Multiple Clients Per Row
When using this option, the No. of
Clients field will represent the No. of
Rows.
The default value is "Single App per Row",
but when the No. of Clients is greater than
1, the default value is changed to "Scaled
Entity".
Name Unique name identifying the client. Mandatory. String value between 1 and
255 characters in length.
Description Description for the application. String value between 1 and 512 characters
in length. No Default. Optional.
Host(s) Select either a single Host or multiple Hosts from the list of Mandatory. The following types of hosts
the previously configured IP Hosts for this test group. can be selected: - - Direct Virtual Host -
Indirect Virtual Host - Subnet Virtual Host.
Enable TLS Enable/disable TLS on the HTTP Client. Mandatory, default is unchecked.
• If the TCP Port is 80, and this field is
checked then the TCP Port will change
to 443.
• If the TCP Port is 443, and this field
is unchecked then the TCP Port will
change to 80.
TLS Version Select the version of TLS if Enable TLS is selected. Mandatory, if Enable TLS is selected
then the TLS version is required. Select
from versions: TLS 1.0, TLS 1.1, TLS 1.2,
Custom Configuration.
TLS Configuration When Custom Configuration is selected as the TLS This field accepts a Cipher Suite
Version, this field is used to either create, edit or select an configuration item.
existing TLS configuration item.
Mandatory if TLS Version is set to Custom
Configuration.
Certificates Configuration Select the certificates needed for the cipher suite. All Accepts Certificate and Key File.
certificates generated by TeraVM use RSA.
TCP Port Source TCP Port on which the client will bind to its host. If Integer within the range 0 and 65535.
the port is set to the wildcard port (that is, if the Use Next
Available check box is ticked (default)) the application will
bind to the first available, non-privileged port. The HTTP
client binds to a transport port on its TeraVM host and
packets sent from.
ToS/DiffServ As packets are sent they are given a specific Quality Mandatory. Integer value between 0 and
of Service. Set Type of Service (ToS) value or a 255. Default is 0.
Differentiated Service Code Point (DSCP) value for the
client.
1. Login into your TeraVM Controller and select Utilities > Global Settings.
2. From the drop-down box select where you want to set your Global Settings and click Configure.
4. Select the check box for Use SSLv3 for HTTP clients and servers.
Prerequisites
• Ensure that SSLv3 is not enabled in the Global Options, see Enabling SSLv3 on HTTP.
• If you are using DH and ECDH Ciphers then you will need to generate your own certificates. For
information on Generating Server Certificates, see Appendix B.
• For details about each field in the wizard for Applications Details, see Section 8.2.2.2.1.
• For more information on creating a TLS Configuration item, see Chapter 9, Section 9.3.13.
4. From the Choose from Selection field, double-click the Cipher List you want to use for your
configuration. The select TLS Configuration item closes.
5. If there is no Cipher List for you to select, then click Add.... The Add TLS Configuration dialog is
displayed.
6. Under the Cipher Suites tab select the Version required. You can limit the list of Ciphers by entering
text into the Available Cipher Suites search field, the previous figure uses ECDHE as an example.
7. Select the List of Ciphers required from the left side column, use the >> button to move them to the List
of Selected Cipher Suites.
8. Enter the Name of the TLS Configuration. This field can be 1-255 characters long where the valid
characters are from the set: 'a-zA-Z0-9 .{}<>[]()@#&*%_+=!-'
9. Click OK and return to the Add New HTTP Client Wizard dialog.
10. In the Certificates Configuration field, click the […] browse button and locate the required certificate
and key file.
Click on the Add button beside the TCP Characteristics and Connection Rate Limit fields in the
Advanced TCP Settings Selection dialog. TCP and Rate Limiting Configuration is dealt with in more detail
in Chapter 11, Test Case Configurations.
All the Advanced TCP and Rate Limiting Settings that are configured are displayed in the Configuration
Panel in individual configuration folders for the Test Group that contains this HTTP application, as shown:
The HTTP client can switch between TLS and plain HTTP connections, according to the scheme found in
redirections or in the specified Request List. The following examples show the Request List and how the
Request List scheme operates.
You must specify absolute Request-URI in the request list whenever a change from/to HTTP/HTTPS is
required. On requests that do not contain this scheme, the current one will be maintained.
• /page1.html Request would be sent to the host configured for the client, using HTTPS if the client is
configured to do so.
• https://1.2.3.4/page2.html For the second one the client would connect to 1.2.3.4 on standard https
port 443, if not there already.
• http://1.2.3.4/page4.html Fourth request switches the client to using plain HTTP on 1.2.3.4 at port 80.
• Second time the /page1.html request is reached it will go to the plain HTTP port since it is the last one
used and this request contains only a relative URI (a "path").
Note
When reaching the first request (/page1.html) for the second time, there will be a reconnection even if
the scheme/host/port does not change
Server Select a TeraVM External HTTP server or General Required. When provisioning more than
External Application with which the HTTP client will 1 Application, or when the Configure As
communicate. Refer to the section on Provisioning a field is set to "Scaled Entity" more than one
HTTP Server Application. Server can be selected.
Proxy Select an External HTTP Proxy Server Application with When provisioning more than 1
which the HTTP client will communicate with the server. Application, or when the Configure As
Refer to the section on Provisioning an External HTTP field is set to "Scaled Entity" more than
Proxy Server Application. one Proxy can be selected. If any of the
selected HTTP Servers is dynamic, it will
not be possible to set a Proxy and the field
will be grayed out.
HTTP Version Version of HTTP. Either 0.9, 1.0 or 1.1. Default is 1.1
Requested List A list of requests to be sent by the Client to the Server. When you click on the <...>button beside
Each request consists of a Request Method and a URI. the Request List field, the Request List
Selection dialog is displayed, see HTTP
and HTTPS Redirects. Select from a
previously configured request list a or refer
to the section on HTTP Request Lists
in the Test Case Configuration for more
details on adding new request list.
Resolve Requests with Enable check box if DNS queries based on the host name Default value: False. Mandatory.
Test Agent DNS should be performed. The DNS server is configurable
NOTE: When enabled an HTTP server
under the DNS tab in the Chapter 9, Section 9.2.1 Test
still needs to be configured, however, the
Agent Configuration.
requests will be sent to the IP address
obtained from the DNS query.
• Authentication
• Keyword Substitution
• Headers
• ACWS
Username Username to be used if the server requires authentication. String value between 1 and 64 characters
in length.
Password Password to be used if the server requires authentication. Optional. String value between 1 and 64
characters in length.
Use Initial Authentication When disabled, an unauthenticated request will always Default is disabled.
be sent first to the Server. The client will only resend
the request with authentication if the Server replies with
a 401 code. If enabled, the client will always send the
authentication information in the request, regardless of
whether or not the server has requested it.
Keyword Substitution enables special keywords to be substituted in both HTTP Request's URLs and in the
Body of a HTTP Header Field associated with the HTTP Client. The following dialog is displayed when the
Keyword Substitution tab is selected. A definition of all supported keywords is provided in the description
of HTTP Requests in the next topic.
Enable Keyword Enables special keywords in both HTTP Request's URLs Default is disabled.
Substitution and in the Body of HTTP Header Fields associated with
this HTTP Client.
8.2.2.2.2.1.3. Headers
This dialog enables you to add a Header Field List containing a list of HTTP headers used in all client
requests.
Table 8-28. HTTP Client Headers Details
Header Field List A HTTP Header Field list configuration item containing the Optional. Available only for HTTP version
list of HTTP headers used in all the client's requests. > 0.9. When you click on the <...>button
beside the Headers Field List field, the
Header List Selection dialog is displayed.
Select from a previously configured Header
List list or refer to the section on HTTP
Headers Lists in Chapter 11 - Test Case
Configuration for more details.
8.2.2.2.2.1.4. ACWS
At this tab, you can add specific information into a set of headers used in client requests. The information is
part of Anyconnect Web Security support to enable a https connection to a Cisco Cloud Web Service.
Table 8-29. HTTP Client ACWS Headers Details
Enable ACWS Support Enables the Cisco AnyConnect Web Security (ACWS) Deselected by default. If selected, all the
support. other fields are mandatory.
Username Identifies the user in a network. Length range from 1 to 255. Valid
characters: a-zA-Z0-9 .{}<>[]()@#&*%_+=!-
Default: none. Scalable
Usergroup(s) Identifies a group of people within an organization String, with a length range from 1 to 255.
(Windows Domain Name/User-Group). Valid chars: a-zA-Z0-9 .{}<>[]()@#&*%_
+=!- Default value: none. Scalable
License Key Used to encrypt the information into the HTTP Headers. String, with a length range from 1 to 255.
Default value: none
Agent Version Version of the ACWS software being used String, with a length range from 1 to 255.
Valid chars: a-zA-Z0-9 .{}<>[]()@#&*%_
+=!- Default value: none
Note
the fields that are editable depend upon the HTTP Version selected in the previous Server Details
dialog. For example, selecting HTTP/1.1 would allow you to edit all the fields except those options
applicable only to HTTP/2.
No. of Requests Per Number of HTTP requests issued in a Only applicable if the versions are HTTP/1.1 or HTTP/2. Can
Connection single TCP connection. have an integer value in the range 1 - 100. It can also be a
profile with min and max values within this range. Default is 1.
When Resolve Requests with Test
Agent DNS is enabled, the HTTP client
will perform the No. of Requests Per
Delay Between Requests Delay in milliseconds between each Only applicable if the version of HTTP/1.1 or HTTP/2 or and
method issued in a TCP connection. the number of requests is > 1 (since 1.1 is the only version
that supports multiple requests per connection. Can be value
in the range 0 - 600,000 (ms). It can also be a profile with min
and max values within this range. Default is 0 indicating no
delay. Supported metrics are ms, sec and min with ms as the
default.
Delay Between Delay in milliseconds between each Can be value in the range 0 - 600,000 (ms). It can also be a
Connections TCP connection created. profile with min and max values within this range. Default is 0
indicating no delay. Supported metrics are ms, sec and min
with ms as the default.
Connection Close Timer Time to wait before closing the Optional value. Integer or profile. Value checks: between 0
connection after all data has been and 2145600000 ms (596 hours) Default: 0 Dependencies:
received. only if http/1.1 or http/2 is used.
Max Concurrent Streams Maximum number of concurrent Mandatory value. Integer or profile. Default value is 5. Value
streams. Only applicable if HTTP/2 is checks between 1 and 100. Only applicable if HTTP/2 is used.
used.
Stream Weight Weight (or priority) of the stream as Optional value. Integer or profile. Value checks 0 <= weight
defined RFC 7540. Only applicable if <= 255. Default value not set. Only applicable if HTTP/2 is
HTTP/2 is used. used.
Ignore Redirects Allow HTTP redirects to be ignored. Only applicable for HTTP/1.0 and HTTP/1.1. Default is
Disabled..
Close Connection with Terminate the HTTP Connection with a reset. Only applies to HTTP version 1.1. Default is Disabled..
Reset
Enable HTTP Response Collection of the Response Codes. Default is disabled as it takes up valuable
Code Statistics processing time. If required, then only enable for
a small number of applications.
Name Unique name identifying the External HTTP server Mandatory. String value between 1 and
application. 255 characters in length.
Description Description for the external server application. String value between 1 and 512 characters
in length. Optional.
Host(s) Select a host from the list of the previously configured Mandatory. All external applications need
IP hosts which the external server application will use to to use an External Host to communicate
access the SUT. with the SUT.
TCP Port The TCP Port on which the external server application will Integer value between 0 and 65535.
listen for TCP connections Default is 80.
ToS/DiffServ Quality of Service metric for the external server Mandatory. Integer value between 0 and
application. 255. Default is 0.
To enter a Property/Name value pair, click the <Add> button on this page, and the Add Property Value
dialog is displayed:
Follow the exact same procedure in TeraVM as for the External HTTP Server Application. The only
difference in the configuration is the proxy server does not have a ToS/DiffServ parameter.
Note
The request string does not represent the full request sent to the Proxy Server.
8.2.3.1. Overview
TeraVM supports the testing of HTTP adaptive streaming with a dedicated HTTP Adapter Bit Rate Client
application. This application is easily configurable to emulate a range of media devices, enabling you to test
common OTT streaming methods including Adobe’s HTTP Dynamic Streaming (HDS), Microsoft’s Silverlight
(Smooth) and Apple's HTTP Live Streaming (HLS).
Each TeraVM media client can be configured to consume the appropriate Manifest file or Playlist, download
the appropriate media file fragments, report on statistics on a per-flow basis and choose an adaptive
strategy that is, appropriate to specific device types.
Testing OTT video using the TeraVM ‘per flow’ strategy enables you to measure performance of the
incoming content on a per request basis. A range of performance measurements including server timing
responses, accurate playback of the correct video source and download speeds can be accurately analyzed
for OTT adaptive video streams.
The TeraVM HTTP Adaptive Bit Rate Client fully supports the following features:
• Ability to ingest a list of URLs, each of which can be assigned to an individual virtual client or shared.
• Cookie/URL-token-based support
• Support for a range of devices including Android, iPad, iPod, iPhone (IOS), MacBook and Internet
Explorer clients with preconfigured templates.
• Defining the limitations of the server under extreme load conditions will help in planning load capacity
for frame rate switchover requests from the client side end-points.
• Varying the end-point buffer sizes by testing various buffer sizes operators can examine the impact on
quality if the fixed key frame size is to vary from video to video.
• Assess the mitigation functionally. Initial testing will provide an indication to the maximum number of
switchover requests a server may handle. Further security investigations should include generating
multiple switchover requests, from a single end-point, faster than the server can respond to.
• Apple HLS
Apple HLS
TeraVM’s HTTP Adapter Bit Rate Client for HLS is fully compliant to consume any media defined in a
Playlist.
The HLS client player takes the initial URL it is configured to download and attempts to stream HLS media
as follows:
1. The client downloads the Variant Playlist File which will list one or more Playlist files, each for a specific
bandwidth.
2. In the Variant Playlist file, the HLS media client parses each #EXT-X-STREAM-INF: tag to identify the
Playlist file. The URI for that Playlist file is specified on the next line
3. The client then selects an appropriate Playlist file and downloads this file.
4. The client downloads each media segment described in the Playlist file in the order specified.
5. When all media segments are downloaded the media streaming is complete.
Each Variant Playlist and Playlist file must be an Extended M3U Playlist file. If the files do not start with the
#EXTM3U tag, the HLS client will terminate the session.
Both Live Video and Video On Demand (VOD) are supported where the varying quality levels are consumed
by the HLS client by reacting to any network congestion or by defining a Profile of Quality levels. The HLS
client does not decrypt the media.
TeraVM supports Microsoft Smooth streaming in a similar manner to the HLS support as described above.
Adobe HDS
TeraVM supports Adobe HDS streaming for Video On Demand (VOD) content over standard HTTP
connections.
Live delivery is not currently supported as it uses Adobe Flash Media Server streaming workflows supporting
Real Time Messaging Protocol (RTMP).
Stream Description
Lowest Bit Rate The entry with lowest bit rate is selected.
Highest Bit Rate The entry with highest bit rate is selected.
Level Quality The client orders the list based on bit rates and selects that entry from the list. If the
number exceeds the number of entries in the Manifest then the highest bit rate is
selected.
Bit Rate The stream which is closest to that bit rate and bit rate. If none of the advertised bit rates
satisfy that criteria then select the stream with the lowest bit rate.
Session Duration The duration of an OTT session. If not specified the OTT client will not terminate the
session.
Delay between Sessions This is the delay before attempting the next session. Note that this field is not dependent
on Session Duration being enabled. A session can end if no more fragments are
available to stream and this parameter will determine the delay before next OTT session.
The HTTP Adaptive Bit Rate client supports the following methods for monitoring the stream for making
adaptive changes
Table 8-36. Session Duration
Method Description
GET Time The time taken to download a fragment is compared with the duration as configured in
the Manifest or an alternate configuration.
Bit Rate The bit rate for downloading a media segment is compared with the bit rate as configured
in the Manifest.
Quality Level Change List The quality level changes are can be configured in TeraVM.
Both the GET Time and Bit Rate adaptive streaming algorithms will monitor the download of each fragment
and determine if an adaptive streaming change is required once that fragment has been downloaded.
A download percentage is calculated for each media fragment and compared against the Shift UP/DOWN
percentages as follows:
• GET time percentage = (Fragment download GET time/Media Duration as specified in the Playlist) *
100.
• Bit Rate percentage = (Bit rate for downloading Fragment/Bit rate for that Playlist in the Manifest) * 100.
Refer to the section on Streaming Details. All of the streams are ordered within TeraVM on increasing order
of bandwidth. The OTT client will move up or down the streams by requesting fragments from a higher or
lower bit rate. These changes are either the result of user directed changes or a reaction to the download of
a fragment if monitoring the GET Time or Bit rate.
If the download percentage is below the Shift UP percentage then downloading is faster than the video is
being consumed and the client can try to up shift to the next highest stream in the ordered list.
If the download percentage is above the Shift DOWN percentage then the video may not be streaming at a
sufficient rate to maintain the bit rate and will downshift to the next lowest stream.
If there is no higher stream available for up shift, the OTT client continues with the current stream. Similarly
if no lower stream is available for down shift, then the OTT client continues with the current stream.
A list of adaptive changes can be configured along with an interval or list of intervals between each change.
The adaptive changes are configured as follows:
Table 8-37. Adaptive Changes
Lowest Quality Level Select the lowest bit rate that is, available.
Quality Level Select the stream to select based on its bit rate order. If the value exceeds the number
present in the Manifest file then the highest media stream is selected.
Shift Up n Quality Levels Shift up to a higher level stream by the number of steps defined.
Shift Down n Quality Levels Shift down to a lower level stream by the number of steps defined.
Highest Quality Level Select the highest bit rate that is, available.
Each adaptive change will only be made when download of a Media Fragment has completed.
The playout buffer size is specified as a time duration typically in a number of seconds rather than the
number of fragments, as it is not always possible to know the fragment size before the session begins. Also,
ultimately it is the number of seconds delay that a playout buffer introduces that is, of most concern to a
user.
In order to implement the playout buffer, the OTT client must know the media playtime duration of the
downloaded fragment. How this is determined is dependent on the client type. Typically, it is present in the
Manifest but may also be encoded as an attribute in the Fragment itself.
If enabled, the playout buffer first downloads the number of fragments required to fill the buffer. At this point
the buffer is considered to have started playing. The current play time simply advances with elapsed time.
The buffer is considered to be empty if the current playtime exceeds the start play time plus the media
duration of all the currently downloaded fragments. The playout buffer will attempt to keep the buffer full by
downloading fragments as required. that is, , it sets a timer after which the buffer size will drop below the
playout size cushion. At this point it will download a fragment and should keep the buffer full.
• Download fragments at fragment duration intervals. So if fragment contains 10 seconds of media and
downloads in 1 second, the next download will occur at 9 seconds.
The IP address of the HTTP initial request is in the ‘Host’ value in the Header Field list. A DNS Resolver is
configured to resolve any such host names.
TeraVM DNS configuration settings enable you to emulate DNS requests using real applications. TeraVM’s
emulated DNS requests are fully stateful and operate with third party DNS relays.
Typically, fragments are made available at different bit rates. A Manifest file is first downloaded by the
TeraVM HTTP Adaptive Bit Rate Client specifying the bit rates. The client can then select or change the rate
depending on its requirements. This allows a wide range of devices to stream the same media as they can
select or adapt to the bit rate that is appropriate to their circumstances.
The protocols for the delivery of OTT media vary depending on the media vendor. They all follow the
same principals with a client first downloading a Manifest file, selecting a stream and then downloading
the fragments. All three streaming methods supported by TeraVM (HLS, HDS and Smooth) use HTTP
for downloading the manifest files and fragments. They first require the client to download a Manifest
file describing the media. With Smooth, the manifest is an XML file and contains information required to
download the fragments. HLS requires another file specifying the list of fragments to be downloaded.
HDS specifies an MPEG-4 bootstrap file that must be downloaded in order to identify the fragments to
be downloaded. Once the client has the necessary information it can proceed to download the media
fragments.
All of the methods support both live and on-demand streaming. With live streaming new fragments are
constantly being generated and made available for download. With HLS and HDS an updated Manifest
file or Bootstrap file must be re-downloaded in order to identify the new fragments. (Note: Adode HDS live
streaming is not currently supported in TeraVM) With Smooth, timing information in an existing fragment
should allow name of the next fragment to be constructed to allow it be downloaded.
It is not necessary for a client to know if a stream is live or on-demand before it begins streaming. Normally
the client can identify a live stream using attributes in the Manifest file that it downloads from the server.
These attributes are dependent on the streaming method.
Note
It is recommended for OTT that only one IP address is used per application and that no more than 1.2
Gb per packet processor (test card) that the host is assigned to.
This section outlines the steps and procedures required in setting up and executing an OTT test. For a more
detailed description of GUI operation, refer to the TeraVM User Guide. The following steps are required
to set up and execute an OTT test for a single device. All steps are performed in the TeraVM GUI unless
otherwise specified.
• Set up a Test Folder and Test Groups for the OTT tests.
• Configure a TeraVM gateway for the media device to connect to the network. The gateway is the first
hop or entry point of the virtual endpoint into the network.
Note
There is no requirement for an HTTP Adaptive Bit Rate Client Server application as the HTTP
Adaptive Bit Rate Client interacts with HTTP servers.
– If using a third part media streaming , configure an External Gateway host or use the previously
configured external host and use the IP Address of the external server.
– If doing an internal back-to-back test, configure a Virtual Host and a HTTP Server application to run
on this host that holds a media resource file.
• Set up the testing thresholds for Applications, Hosts, Nodes and/or Aggregate Statistics. Thresholds are
monitoring algorithms that can be added to an emulated application flow to allows you to filter out key
information from large amounts of statistical data during live test runs.
• Analyze Performance Results You can review performance on a number of entities at an application
level, host level, or port level during a live test. Results may display with per second granularity.
Figure 8-39. Adaptive Bit Rate Test Configuration with External Streaming
Figure 8-40. Adaptive Bit Rate Test Configuration for Back-to-Back Testing
2. Click on the Add New Host icon. The Add New Host wizard is opened. The following categories of
information are required for host configuration:
• General Detail
• Optional parameters
Figure 8-41. Adaptive Bit Rate Test Configuration for Back-to-Back Testing: Configure an External Host
See General Details - External Host in the User Guide to find out how to configure an external host.
3. Select the HTTP -> External HTTP Server application from the menu.
Figure 8-42. Adaptive Bit Rate Test Configuration for Back-to-Back Testing: Configure an External HTTP
Server Application
The Add New External HTTP Server wizard is opened. The wizard provides the following configuration
dialogs for this application:
• External Properties
Figure 8-43. Adaptive Bit Rate Test Configuration for Back-to-Back Testing: External HTTP Server
Application Configuration Wizard
See IP Applications,Provisioning an External HTTP Server Application in the User Guide to find out
how to configure the External HTTP Server Application.
Figure 8-44. Adaptive Bit Rate Test Configuration: Open the Adaptive Bit Rate Client Application
The New Adaptive Bit Rate Client Application wizard is displayed. The following categories of information
are required for configuring this client application:
• Application Details
• Client
• Streaming
• Session
• Additional
Figure 8-45. Adaptive Bit Rate Test Configuration: HTTP Adaptive Bit Rate Client - Application Details
Field Description
Configure as Select Single App Per Row to set up an initial test. Refer to the section 10.3. Scaled
Provisioning of Client Applications of the User Guide to see details of other options for
scaling test scenarios.
Name Enter a unique name identifying the application, for example, iPhone.
Host Select a previously configured virtual host on which run the application or create a new
host. Refer to the section on Configuring a Virtual Host in the User Guide.
Client Type Select from one of the following types of OTT streaming clients to emulate. Options are:
• Apple HLS
Field Description
• Adobe Flash HDS
• Microsoft Smooth Streaming
ToS/DiffServ Quality of Service metric for the client. Leave blank unless otherwise required.
Advanced settings for TCP can be configured by clicking on the Advanced TCP… button.
Figure 8-46. Adaptive Bit Rate Test Configuration: HTTP Adaptive Bit Rate Client - Application Details: TCP
Settings.
Field Description
Adaptive Bit Rate Test Configuration: HTTP Adaptive Bit Rate Client - Client Details: TCP Settings.
Field Description
HTTP Server Select the HTTP Server from which to start the OTT session. This can be an external
server using the IP address of the gateway when using DNS. This server can be
configured here if not previously configured. (Refer to the section on Configuring an
External HTTP Server Application).
HTTP Version Select the HTTP Version from the following options:
• 1.1
• 1.0
• 0.9
Manifest Request List Select or create a Manifest List which contains a list of paths identifying manifest files
on the third party or HTTP server. These paths are used by the client to request media
streams.
Field Description
To select or create a list, click on the […] button. Refer to the section below on selecting
or creating a Request List.
1. Click on the […] button beside the Manifest Request List field in the Server Details dialog of the HTTP
Adaptive Bit Rate Client Application wizard.
Figure 8-47. Adaptive Bit Rate Test Configuration: HTTP Adaptive Bit Rate Client - Server Details: HTTP
Request List.
2. Select a previously configured list or click on the Add button to create a new one. The Add Request
Dialog is displayed.
Figure 8-48. Adaptive Bit Rate Test Configuration: HTTP Adaptive Bit Rate Client - Server Details: Add
HTTP Request List.
4. Choose the Selection Mode type. (Refer to the TeraVM User Guide for more details in relation to this
setting)
5. Click on the Add button to add requests to the list. The Add Request dialog is displayed.
Figure 8-49. Adaptive Bit Rate Test Configuration: HTTP Adaptive Bit Rate Client - Server Details: Add
Request List - Add Request.
7. Enter a valid URI for the streaming server, for example, /iphone/samples/bipbop/bipbopall.m3u8.
8. To add a set of valid header fields to be used by the client to access the manifest files and content on the
dedicated streaming server, click on the […] button beside the Header Field List field. The Select Header
Field List dialog is displayed.
Figure 8-50. HTTP Adaptive Bit Rate Client - Server Details: Add Request List - New Header Field List
9. Select a header list if one has been previously configured. Otherwise, click on the Add button to create a
new header list.
Figure 8-51. HTTP Adaptive Bit Rate Client - Server Details: Add Request List - Add Header Field
10. Enter the field name or left mouse click on the scroll icon to the right of the field to display a list of field
option.
11. Highlight the required field and click the Select button.
12. Add content for the Field Body, for example, for a Host header, the body content would be a host name
such as devimages.apple.com.
Note
A host name is required if the DNS Resolve Host Header option is enabled in the Advanced HTTP
Configuration for this client. Refer to the following section on Advanced HTTP Configuration.
13. Repeat the header selection until all the required headers are in the list. The header list should include
User-Agent, Accept, Accept-Language, Accept-Charset, Connection, Host, Accept-Encoding.
• DNS
Figure 8-52. HTTP Adaptive Bit Rate Client - Server Details: Advanced HTTP Settings
Keyword Substitution
Table 8-42. HTTP Adaptive Bit Rate Client: Server Details - Advanced HTTP Configuration: Keyword Substitution
Field Description
Enable HTTP Keyword Substitution Enable or disable HTTP Keyword substitution functionality.
HTTP Headers and URLS allow the use of special keywords that are substituted at
runtime by values selected based on the particular keyword definition.
Note: Enabling this feature can have a negative effect on performance.
Headers
Table 8-43. HTTP Adaptive Bit Rate Client: Server Details - Advanced HTTP Configuration: Headers
Field Description
HTTP Header Field List Select or create a list of HTTP Header Fields which are used in requests issued by the
client.
Cookie
Table 8-44. HTTP Adaptive Bit Rate Client: Server Details - Advanced HTTP Configuration: Cookie
Field Description
Field Description
DNS
Table 8-45. HTTP Adaptive Bit Rate Client: Server Details - Advanced HTTP Configuration
Field Description
DNS Resolve Host Header Enable this option to determine the IP address of the HTTP initial request using the value
in the Host field of the Header Field list or the HTTP Request list, if present.
Note: A DNS Resolver must be configured for this functionality to work. Refer to the
section on Configuring a DNS Resolver.
Field Description
Initial Stream Selection Select from the following options how the initial stream is selected from the list presented
in the Manifest:
• Highest Bit Rate
• Lowest Bit Rate
• First in Manifest
• Quality Level
• Bit Rate
Quality Level If Quality Level is selected in the first field, enter or select a quality level for the initial
stream based on its position in the ordered bit rate list. 1 indicates the lowest bit rate.
Field Description
Otherwise create a profile to force the Adaptive Bit Rate Client to change quality levels
as specified in the profile.
Refer to the section on Creating a Quality Level or Bit Rate Profile.
Bit Rate If Bit Rate is selected for the Initial Stream Selection, select the bit rate of the stream
closest to bit rate value and also <= value. This value must be bet ween 1kb/s and 200
mb/s. Default value 900 kb/s.
For Smooth, this value must match exactly what is in the Manifest
Adaptive Streaming Method Select how the client will monitor the stream for adaptive streaming. Options are:
• Monitor Fragment Retrieval Time
• Monitor Fragment Bit Rate
• Quality Level Change List
• None
Adaptive Streaming Shift Up Threshold Required if Adaptive Streaming Method is Monitor Fragment Retrieval Time or
Monitor Fragment Bit Rate.
Enter a threshold value as a % below which the client will shift up to next highest quality
stream if the fragment retrieval time or bit rate drops below this value. Value must be
between 1 and 1000.
Adaptive Streaming Shift Down Required if Adaptive Streaming Method is Monitor Fragment Retrieval Time or
Threshold Monitor Fragment Bit Rate.
Enter a threshold value as a % above which the client will shift down to next lowest
quality stream if the fragment retrieval time or bit rate drops exceeds this value. Value
must be between 1 and 1000 and must be greater than Adaptive Streaming Shift Up
Threshold.
The Adaptive Bit Rate Client typically downloads the media in approximately 2 second
chunks via HTTP. The Manifest file will identify a number of different bitrates at which the
stream can be downloaded.
It is possible to switch between these quality levels during the media stream to adapt to
the network conditions.
The following adaptive streaming methods are supported:
1. Gettime Percentage
2. Bitrate Percentage
Also, an adaptive streaming change can only take place between downloading of media
chunks. An example configuration is as follows:
The Gettime and Bitrate both react by increasing or decreasing the requested level for
quality associated with the stream in response to network conditions. Both methods
calculate a percentage and then will upshift or downshift or make no change.
The Gettime percentage = (Chunk download GET time/Media Duration as specified in
the Manifest) * 100.
The Bitrate percentage = (Bitrate for downloading Chunk/Bitrate for that Quality Level in
the Manifest) * 100.
If this value is below the ‘Shift UP’ percentage, the endpoint is downloading faster
than the video is being consumed. As a result the emulated streaming media client will
attempt to shift to the next highest Quality Level.
Field Description
If this value is above the ‘Shift DOWN’ percentage, the endpoint may not be streaming
the video at a sufficient rate to display. This will result in a downshift to the next lowest
Quality Level.
Example:
A media streaming client downloads a 2 second chunk in 1 second the Gettime
percentage is 1/2*100 = 50%.
If the ‘Shift UP’ percentage is 60%, the media streaming client will attempt to up shift to
the next Quality Level.
If, on the other hand, the bitrate is 1.9Mbs and the bitrate for the Quality Level is 2Mbs,
the Bitrate % is 1900/2000*100 = 95%.
If the ‘Shift DOWN’ percentage is 90 then the Quality Level is decremented.
Quality Level Change List Select or create a list of quality level state changes. Refer to the section on Creating a
Quality Level Change Liston page 41.
Adaptive Change Interval Required if Adaptive Streaming Method is Quality Level Change List.
Specify an interval between adaptive changes in seconds, minutes or hours. Range is 1
sec to 24 hours.
Fragment Download Algorithm Select how the downloading of fragments is implemented by client. Options are:
• Playout Buffer
• No Delay
• Delay between Fragments
• At Fragment Play Rate
Delay Between Fragments Required if Fragment Download Algorithm is Delay Between Fragments. Enter a
delay in msec, secs or, mins between downloading fragments. Range is from 1 msec 60
mins.
Figure 8-54. HTTP Adaptive Bit Rate Client - Streaming Details: Advanced Streaming Details
General
Table 8-47. HTTP Adaptive Bit Rate Client: Streaming Details - Advanced Streaming Details: General Tab
Field Description
Downgrade Fragment Error Limit Required if Adaptive Streaming Method has a value other than None. Enter the
number of fragment retrieval errors before downgrading to a lower stream.
Field Description
Smooth Live Fragment Repeat Smooth Fragments are identified by their durations. This is the length of the repeat
Sequence Length sequence of those durations used in live streaming. This setting allows the client to
identify fragments once the Manifest is exhausted for live stream.
This value, when set, forces the Adaptive Bit Rate Client to change quality level (bands)
a number of times.
1. Click on the […] button beside the Quality Level or Bit Rate field. The Select Profile dialog is displayed.
2. Click on the Add button to add a new profile. The Add Profile (Probability Distribution Function) dialog is
displayed.
Figure 8-56. Creating Quality Level or Bit Rate: Add Profile (Probability Distribution Function)
5. Click the Add button to display the Add Profile Element dialog. This dialog enables you to enter a value
or a range of values associated with a time period.
Figure 8-57. Quality Level or Bit Rate Profile: Add Profile Element
6. Using the slider (or Up, Down keys), select a Time Period percentage value.
7. Enter a single Value or range or values to be associated with this Time Period.
Figure 8-58. Create Quality Level or Bit Rate: Profile Properties (Probability Distribution Function)
9. Add another profile element if 100% of the time period is not complete used in the first element.
Note
The profile must be 100% configured that is, there must be no unused time periods before the profile
can be successfully added.
Figure 8-59. Create Quality Level or Bit Rate Profile: Select Profile
An Adaptive Change Interval or list of intervals must also be configured if using quality level changes.
1. Click on the […] button beside the Quality Level Change List field. The Quality Level Change List
dialog is displayed.
Figure 8-61. Create Quality Level Change List: Add New Quality Level Change List
4. Tick the Repeat the Quality Level Changes once completed box if this option is required.
5. Click on the Add button to add a Quality Level Change to the list. The following dialog is displayed:
Figure 8-62. Create Quality Level Change List: Add Quality Level Change
If you select the Quality Level or Shift Up or Shift Down options, you can enter a numerical value for the
level you require.
TeraVM will normalize the changes so that the levels cannot decrease below 1 and will not exceed the
maximum of Quality Levels identified in the Manifest
Figure 8-63. Create Quality Level Change List: Edit Quality Level Change
8. Repeat this process until you have added all the required changes to the list.
Figure 8-64. Create Quality Level Change List: Select Quality Level Change List
Field Description
Client end session Allows the client to terminate the session before end of stream.
Delay between Sessions Delay between sessions. Applied if session fails, client ends session or server ends
session.
Enable HTTP Response Collection of the Response Codes. Default is disabled as it takes up valuable
Code Statistics processing time. If required, then only enable for
a small number of applications.
See Chapter 9. Hosts: Section 9.4.2. General Details - External Host in the User Guide to find out how
to configure an external host.
2. Use the IP address of the external media streaming server in the IP Address field.
The configured HTTP Adaptive Bit Rate client (see Configuring an Adaptive Bit Rate Client Application
above) requests media files from the external media server.
The New HTTP Server Application wizard is displayed. The following categories of information are required
for configuring this client application:
• Application Details
• Server Details
Field Description
Host Select a previously configured virtual host for this gateway or create a new host.
SeeConfiguring a Virtual Host above.
Enable TLS Leave as disabled that is, port 80 is used unless port 443 is required.
TCP Port Leave the TCP port at the default value of 80.
ToS/DiffServ Leave blank unless otherwise required. Refer to the TeraVM User Guide for more
details of this field.
Contact your VIAVI representative for details of sample streaming files available for OTT testing.
8.2.3.6.6.2.3. Configuring the ‘Media Segment URI strip value for lookup’ setting
This media Segment URI strip value for lookup setting enables you to load a single resource file on the
HTTP Server application to avoid loading all video file fragments onto this server. This will result in the
media streaming client request being truncated to match the resource name.
This setting is configured in the Media Streaming Client Settings section of the TeraVM Global Configuration
site:
http://TeraVM_IPaddress/userconf
/files/clear/ipad/1200/file
the media streaming client request with video fragments would be as follows:
/mediadl/iisnet/smoothmedia/Experience/Shenick_720p.ism/QualityLevels(2750000)/Fragments(video=0)
Therefore, the Media Segment URI strip value for lookup value would be “(“ which truncates each client
sample request to:
/mediadl/iisnet/smoothmedia/Experience/Shenick_720p.ism/QualityLevels
This enables a single file to be returned for all requests as follows:
/mediadl/iisnet/smoothmedia/Experience/Shenick_720p.ism/QualityLevels(2750000)/
Fragments(video=200000000)
/mediadl/iisnet/smoothmedia/Experience/Shenick_720p.ism/QualityLevels(2750000)/
Fragments(video=400000000)
/mediadl/iisnet/smoothmedia/Experience/Shenick_720p.ism/QualityLevels(2750000)/
Fragments(video=600000000)
/mediadl/iisnet/smoothmedia/Experience/Shenick_720p.ism/QualityLevels(2750000)/
Fragments(video=800000000)
This is shown in the following PCAP example:
8.2.4. CoAP
The Constrained Application Protocol (CoAP) is an application layer protocol for use with low-power
devices such as sensors in wireless networks and constrained networks in the Internet of Things. CoAP is a
lightweight protocol that is designed to keep messages compact and resource efficient.
In TeraVM you can create a CoAP Device and a CoAP External Server application, so that the CoAP
application emulates an IoT device sending messages to the IoT Server. The TeraVM CoAP device is
scalable and the messages that are sent between the device and server are configurable within TeraVM.
The TeraVM implementation of the CoAP application supports the following CoAP options:
• Content-Format: Will be included in the initial ‘2.05 Content’ response for the GET request. Can be
present in the POST request from IoT Server to send config to the device endpoint.
• Accept: Can appear in the GET request form the IoT Server to specify the content format supported by
it.
• Observe: Will be received in GET request from the IoT Server. Will also be present in the periodic '2.05
Content' messages to IoT Server.
• Application Details
• General Details
• Traffic Model
• Additional Configuration
To start the Add New CoAP Device Wizard, in the TeraVM GUI:
No. of Clients Each application created via this Default value: 1. An integer range from to 500,000.
mechanism has a row created in
the Display Window for Applications
allowing statistics to be generated for
each row.
Configure As How the CoAP Device Applications will Default value: Scaled Entity. Mandatory. Clients can only be
be provisioned. scaled Entity.
Name Unique name identifying the client. Mandatory. String value between 1 and 255 characters in
length. With the following valid chars: 'a-zA-Z0-9 . {}<>[]
()@#&*%_+=!-'
Description This field allows you to enter a String value between 1 and 512 characters in length. No
description for the application. Default. Optional.
Host(s) The virtual host used by this Default value: none. Mandatory. Value checks for the
application. following:
• Direct/Indirect virtual host
• Address may be assigned dynamically
Port This specifies the port that the server Default value: none. Value checks:
will listen for incoming requests on the
• Mandatory if Use Next Available is false.
client side.
• between 0 and 65535.
Use Next Available Used in conjunction with Port field. Default value: True. Mandatory. Type Boolean.
ToS/DifServ Quality of Service metric for the server Mandatory. Integer value between 0 and 255. Default is 0.
application.
Server Used to assign a TeraVM CoAP Default value: none. Type: CoAP External RD.
External Resource Directory Server.
The Resource directory server is an
external host/application to which the
device node is going to communicate
with.
Device Name Unique name identifying the TeraVM Mandatory. String value between 1 and 63 characters in
CoAP Device application length. With the following valid chars: 'a-zA-Z0-9-._ can be
scaled.
Registration Path The registration URI path at the Default value: "/". Mandatory. Follows the /path format. String
Resource Directory value with the following valid chars: 'a-zA-Z0-9-._
Re-registration Time Determines how frequently the re- Default value: 24 Hrs. Mandatory. Type: Integer or profile with
registration message is sent by the metric. Value checks:
device node
• Metric in [sec, mins, hours]
• Range: 0 secs - 24 hours
Registration Retry Interval Defines the time the device node will Default value: 5 mins. Optional. Type: Integer. Value checks:
wait after a failed registration attempt to
• Metric in [sec, mins, hours]
retry registration.
• Range: 0 secs - 24 hours
DTLS Enabled Check box to indicate if DTLS should Default value: False. True when check box is selected.
be used.
Pre-Shared Key The key used for encryption. Optional. Mandatory if DTLS is Selected. Value must be:
• length between: 1-128 bytes (= 2-256 hex chars)
• valid chars: hex, even length (even number of nibbles)
Default value: none. Scalable Hexadecimal Scaler String
PSK Identity The pre-shared key identity that will be Optional. Mandatory if DTLS is Selected. Value must be:
exchanged.
• length between: 1-128 bytes
• valid chars: ascii
Default value: none. Scalable Alpha Numeric Property Scaler
and String List Scaler.
Profile Configuration
Both Initial Reporting Delay and Reporting Interval fields support Profiles. To select or add a profile, click
the <...> button. The following figure shows the various profile dialog.
Initial Reporting Delay Defines the time for which the device Default value: 0 secs. Optional. Type: Integer or profile
node will wait before sending the first data with metric. Optional. Value checks:
report. This can be configured as a Profile.
• Metric in [secs, mins, hours]
• Range: 0 secs - 24 hours
Reporting Interval Defines the periodicity of sending the Default value: 24 hours. Optional. Type: Integer or profile
data reports. This can be configured as a with metric. Optional. Value checks:
Profile.
• Metric in [secs, mins, hours]
• Range: 0 secs - 24 hours
Reporting Payload Payload included in the periodic reports Default value: none. Optional String value.
sent by the device node.
Payload Format Represents the media type of the payload. Default value: text/plain. Mandatory. Value can the
following possible values:
• text/plain
• application/octet-stream
• External Properties
To start the Add New External CoAP Server Wizard, in the TeraVM GUI:
Name Unique name identifying the TeraVM Mandatory. String value between 1 and 255 characters in
CoAP External Server length. With the following valid chars: 'a-zA-Z0-9 . {}<>[]
()@#&*%_+=!-'
Description This field allows you to enter a description String value between 1 and 512 characters in length. No
for the application. Default. Optional.
Host Select a Host from the list of the previously Mandatory. Direct or Indirect Virtual Host. If Direct, then IP
configured IP hosts which the server will address must be static.
use to access the SUT.
UDP Port The UDP Port number to use Default value: 5683
To enter a Property/Name value pair, click on the Add button on this page, and the Add Property Value
dialog is displayed.
The IP Replay application maps the source destination IP address from the pcap file to the IP addresses
of the client and server hosts. The pcap file is configured as part of a Playback Resource List and can
be replayed over thousands of times with a configurable replay rate. Configuration options exist for both a
single application per row, or for a scaled entity.
Normal and fine statistics can be enabled for an IP Replay application. To gather statistics on an individual
pcap, the Playback Resource List should contain a single pcap. For information on the statistics supported
by this feature, see the TeraVM Metrics Guide.
Figure 8-79. Add New IP Replay Application (Single App per Row)
If the entity is scaled, you will be able to select only a single host or a scaled host. An example of choosing a
single host is shown in the following image.
• Application Details
No. of Apps The number of entries to be created Default value: 1. An integer range from 1 to 1,000,000.
Mandatory.
Configure As How the IP Replay Applications will be Default value: Scaled Entity. Enumerated value with the
provisioned. possible values of:
• Single App per Row
• Scaled Entity
Mandatory.
Description Free form description of the application. Default value: none. Optional String value with the length
range of 1 to 512.
Client Host The client hosts used by this application. Default value: none. Mandatory. A list of Hosts. If Single
App, the list should contain one or more non-scaled
hosts; if Scaled Entity, the list should contain only a
single host scaled or non-scaled. Hosts themselves must
be Direct or Indirect Virtual Hosts which have IP Address
Assignment set as Static, (with IPv4 or IPv6).
Server Host The server hosts used by this application. Default value: none. Mandatory. A list of Hosts. If Single
App, the list should contain one or more non-scaled
hosts; if Scaled Entity, the list should contain only a
single host scaled or non-scaled. Hosts themselves must
be Direct or Indirect Virtual Hosts which have IP Address
Assignment set as Static (with IPv4 or IPv6).
Host Replay Selection for This field will be used in order to clarify why a filter is Default value: Client sends first packet.
Packets needed and how selection of hosts for replay is being
Mandatory enumeration value with values
used.
of:
A filter (represented as an IPv4 or IPv6 address) can • Client sends first packet
be applied for selecting packets to be sent over the
• Server IP Filter
server host. The filter will be available if the Server IP
Filter option is selected.
If Client sends first packet option is selected,
IP Replay application will assume the first time
it encounters an IP address in the source field
that packet originates on the client host. Another
Server IP Filter This IP address must match an IP address in the Default address: none. Value must be a
pCaps to be replayed in order to select packets. valid IPv4 or IPv6 address from pCaps.
Mandatory when Server IP Filter option is
This field will be hidden if Client sends first Packet is
selected.
selected from Host Replay Selection for Packets.
Replay Rate Represents the rate with which the packets are Default value: 1.0. Optional number value
replayed. Controls the time interval between sending with range from 0.1 to 10.0.
packets, the higher the value, the slower the replay
rate. This is on a best effort basis and cannot be
guaranteed.
Delay between Resources Controls the delay between Resources. Mandatory. Default value: 0 ms
Random profile or integer with metric.
Value as metric in [ms, secs], min = 0 ms,
max = 3 600 secs
Delay for ARP Resolution Controls the Delay for ARP Resolution. Optional. Default value: 100 us
Integer with metric. Value as metric in [us,
ms, secs], min = 0 ms, max = 5 secs.
Vary TCP Sequence Number Specifies if Vary TCP Sequence Number is enabled or Mandatory. Boolean value.
not.
Default value: TRUE
Vary Ephemeral TCP/UDP Specifies if Vary Ephemeral TCP/UDP Ports is enabled Mandatory. Boolean value.
Ports or not.
Default value: TRUE
If this field is unchecked, then the field List of
Ephemeral Ports to Exclude will not be visible.
List of Ephemeral Ports to Comma separated list of integers representing a list of Optional.
Exclude ports.
Default value: 5060,8080
If the field Vary Ephemeral TCP/UDP Ports is
A comma separated list of integers
unchecked, then this field will not be visible.
between 1,024 and 65,535. This property
will be set only if Vary Ephemeral TCP/
UDP Ports is true.
The following dialog is displayed when the configuration is for a Scaled Entity.
Start After Controls the delay before starting the application. Optional. Default value: NULL ms
Integer with metric value as [ms, secs,
mins, hrs] range from 0 ms to 168 hours
(10 080 mins / 604 800 secs / 604 800 000
ms).
Stop After Specifies the length of time that the Application should Optional. Default value: NULL secs
run for before stopping.
Default value: Aggregate group. Integer
with metric value as [secs, mins, hrs] range
from 0 secs to 168 hours (10 080 mins /
604 800 secs / 604 800 000 ms).
Enable Normal Statistics Specifies if normal statistics are enabled or not. Mandatory. Default value: TRUE
Boolean value.
Enable Fine Statistics Specifies if fine statistics are enabled or not. Mandatory. Default value: FALSE
Boolean value.
Aggregate group Specifies the aggregate statistics group that this Mandatory.
application should write statistics to.
Default value: Aggregate group
• Version 1
In this version a host joins a group but no specific leave messages are issued. The multicast router
determines if a host is no longer interested in a group; for example if the host does not respond to
a query from the router. If multiple clients on the same Layer 2 Tunnel are concurrently joining the
same multicast group, they may suppress the sending of reports if they see appropriate reports being
generated by another of those clients.
• Version 2
This version supports both join and leave messages/reports. IGMPv2 requires the Router Alert option
(that is, tell the router to inspect the packet) is set in all messages sent from an IGMPv2 client. If
multiple clients on the same Layer 2 Tunnel are concurrently joining the same multicast group, they may
suppress the sending of reports if they see appropriate reports being generated by another of those
clients.
• Version 3
This is an extension to version 2 that supports filter lists: that is, a client can indicate in a report that
it only wants to receive packets from a multicast group where those packets have a specific source
IP Address. IGMPv3 requires the Router Alert option (that is, tell the router to inspect the packet) is
set in all messages sent from an IGMPv3 client. If multiple clients on the same Layer 2 Tunnel are
concurrently joining the same multicast group, each client will always issue its own reports regardless of
reports issues by the other clients.
• Version 1
This version supports both “Join” and “Done” Listener Reports. MLD requires the Router Alert option
(that is, tell the router to inspect the packet) is set in all messages sent from an MLDv1 client. If multiple
clients on the same Layer 2 Tunnel are concurrently joining the same multicast group, then they may
suppress the sending of reports if they see appropriate reports being generated by another of those
clients.
• Version 2
This is an extension to version 1 that supports filter lists that is, a client can indicate in a report that it
only wants to receive packets from a multicast group where those packets have a specific source IP
Address. MLDv2 requires the Router Alert option (that is, tell the router to inspect the packet) is set in
all messages sent from an MLDv2 client. If multiple clients on the same Layer 2 Tunnel are concurrently
joining the same multicast group, each client will always issue it's own reports regardless of reports
issues by the other clients.
• Server Details
• Streamed Contents
• Additional Configuration
Name Unique name identifying the IGMP server application. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct Virtual Host is the only
hosts which the server will use to access the SUT. host type that can be selected.
ToS/DiffServ Quality of Service metric for the server application. Mandatory. Integer value between 0 and
255. Default is 0.
The following details are required for the server step of the IGMP Server provisioning wizard:
Table 8-60. Multicast (IGMP/MLD) Server Application -Server Details
Router Alert Tells the Router to examine this packet more closely. Enabled/Disabled. Default is Enabled.
Multicast Group Selection A drop down to select whether to use a config item or Select from a previously configured group
provided value fields for specific Multicast group the client or add a new group. Refer to the section
is interested in. If 'Group List' is selected browse through in on IGMP Configuration in Chapter 11 -
Interest Group List field button to a config file containing Test Case Configurations for more details
a list of groups which the client is interested in. Each on Multicast Groups. Mandatory. Can be
group can contain up to 100 entries. Each entry in the one of 'Group List' or 'Specific Group'.
list contains the address of the multicast group plus a Default: Group List.
Destination Port and Source Port. If 'Specific Group' is
selected the Mutlicast Group Address, Source Port and
Destination Port fields appear.
Multicast Group Address The Multicast IP address the server will associate to. IP Address. Mandatory if 'Specific Group'
option is selected from the Multicast
Group Selection combo box. Must be
an IPv4 multicast address without a
prefix. IPv4 multicast address range from
224.0.0.0 to 239.255.255.255. Default
value: 239.252.1.1.
The following details are required for the Streamed Content step of the wizard.
Table 8-61. IGMP/MLD Server - Streamed Content
Media Transport Identifies the type of media transport in the outgoing RTP or MPEG2-TS. Default is RTP.
stream.
Stream Content What data the stream is sending that is, from a pcap file or Options are File or Data. Data is the
arbitrary data produced by MLIPS. default.
Payload Size Available if Streamed Content is Data. The size, in bytes, Default is 1316. This field is only available
of the payload portion of each packet to be transferred by if the Streamed Content is Data.
the server host.
Data Rate Available if Stream Content is Data. Rate at which data Default is 1 Mb/Sec. Integer Mb/Sec 1
will be multicast to the specified group in Mb/s, Kb/s, or - 100 (GigE max is 1000) Kbs/Sec 1 -
Packets/s. Only applicable if the data is arbitrary. (that is, 100,000 Pkts/Sec 0 – 200,000 Default 1
not from a pcap file). Stream Content must be Data. Mb/s. Measured in Kb/Sec, Mb/s, or Pkt/s.
Playback Resource Available if Stream Content is File. A list of single pcap An existing list of preconfigured files can
files containing RTP or Non-RTP (MPEG2 TS) packets. be selected from the Playback Resource
List Select Dialog shown below or a new
Playback Resource List can be added from
this dialog. Refer to Chapter 11 for details
of Playback Resource Configuration.
Note
If the Stream Content property in a IGMP/MLD Server is set to “File” and the selected Playback
Resource List consists of resources of type “Capture File”, the Media Transport must match with
the type of conversations present in the first capture file in the selected Playback Resource List. For
example, if the Media Transport is set to “RTP”, then the first capture file in the selected Playback
Resource List must contain UDP/RTP conversations. If the Media Transport is set to “MPEG2-
TS”, then the first resource in the selected Playback Resource List must contain UDP/Unknown
conversations. This will be validated when a test is being started.
If the Stream Content property in a IGMP/MLD Server is set to “File” and the selected Playback
Resource List consists of resources of type “MPEG2-TS File”, then the Media Transport can be set to
either “RTP” or “MPEG2-TS”.
A Playback Resource list can contain multiple resources. However, all resources in a playback
resource list must reference files containing the same data type.
If the resource list is used in an IGMP/MLD Server, only the first resource will be used and the others
will be ignored. If a resource list containing more than one resource is used by an IGMP/MLD Server,
a warning will be generated while the test is starting and this will be displayed in the Run Output
console.
As packets are sent from the IGMP Client application, they will be given a specific Quality of Service. This
will be achieved by allowing the operator configure a Type of Service (ToS) value or a Differentiated Service
Code Point (DSCP) value for the client – the DSCP value is set when configuring the ToS/Diffserv field.
Once started, an IGMP client application will determine which multicast groups it needs to join, what order it
needs to join them in and how long it should remain a member of each of those groups.
• Application Details
• Client Details
• Join Details
• Additional Configuration
No. of Clients Each client to be created has a row created in the Default is 1. 1 - 50,000,000 clients can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. on Bulk and Batch Provisioning for more
details on using this field.
Configure as Configures how the Applications are provisioned, and The options for this field are:
displayed in the Application Display Window.
• Single App per Row
Refer to the sections on Scaled Entity Provisioning and • Scaled Entity
Bulk and Batch Provisioning for more details on using this
The default value is "Single App per Row",
field.
but when the No. of Clients is greater than
1, the default value is changed to "Scaled
Entity".
Name Unique name identifying the client. Mandatory. String value between 1 and
255 characters in length.
Description Description for the application. String value between 1 and 512 characters
in length. No Default. Optional.
Host(s) Select either a single host or multiple hosts from the list of Mandatory. Only a Direct Virtual Host can
the previously configured IP Hosts for this Test Group. be selected for this client.
ToS/DiffServ Quality of Service metric for the client. Mandatory. Integer value between 0 and
255. Default is 0.
Media Transport Identifies the type of media transport in the incoming RTP, MPEG2-TS /RTP or MPEG2-TS
stream. Default is RTP.
IGMP Version IGMP multicast protocol version. Default is V2. Can be IGMP V1, V2 or V3.
Select value from drop down combo-box.
Router Alert Tells the Router to examine this packet more closely. Enabled/Disabled. Default is Enabled.
Interested Group A drop down to select whether to use a config item or Select from a previously configured group
Selection provided value fields for specific Multicast group the client or add a new group. Refer to the section
is interested in. If 'Group List' is selected browse through in on IGMP Configuration in Chapter 11 -
Interest Group List field button to a config file containing Test Case Configurations for more details
a list of groups which the client is interested in. Each on Multicast Groups. Mandatory. Can be
group can contain up to 100 entries. Each entry in the one of 'Group List' or 'Specific Group'.
list contains the address of the multicast group plus a Default: Group List.
Destination Port and Source Port. If 'Specific Group' is
selected the Mutlicast Group Address, Source Port and
Destination Port fields appear.
Mutlicast Group Address The Multicast IP address of the specific group the client is IP Address. Mandatory if 'Specific
interested in. Group' selected in 'Interested Group
Source Port Source port of the specific group. Integer. Mandatory if 'Specific Group'
selected in 'Interested Group Selection'
field. Minimum value = 0, maximum
=65,535. Default value: null. Displayed
only if the Interested Group Selection
is 'Specific Group'. Note: If user selects
'Accept Data from any Source Port'
checkbox, this field is disabled/grayed out.
Destination Port The Destination Port of the specific group. Integer. Mandatory if 'Specific Group'
selected in 'Interested Group Selection'
field. Minimum value = 0, maximum
=65,535. Default value: null. Note: If user
selects 'Accept Data to any Destination
Port' checkbox, this field will be disabled/
grayed out.
Accept data from a Allows the client to override the Source ports for the When the tickbox is checked the client
Source Address multicast groups configured in the multicast group list. will accept data from any group with any
Source port. Default is ticked.
Accept data to any Allows the client to override the Destination ports for the When the tickbox is checked the client
Destination Address multicast groups configured in the multicast group list. will accept data from any group with any
Destination port. Default is ticked.
The Join Details step of the wizard displays the following dialog to configure parameter for joining or leaving
a group.
Join Groups If set to enabled, the client will always automatically Default is Enabled. Enabled/Disabled.
attempt to join the specified group. If set to disabled, the Select value from drop down list.
client will not attempt to join the group, and duration and
delay fields will be grayed out.
Group Strategy If Join is set to enabled and No. of Rows in the Default is Sequential. Sequential/
Application Configuration Step is greater than 1, Group Random/Concurrent. Select value from
Strategy is enabled. It specifies how the clients are to drop down list.
join each group on the server. Sequential, client joins
each group in order. Random, client joins each group at
random. Concurrent, client joins all groups at one time.
Leave Group Controls how a client leaves a group, if ever. After Join Default is After Duration. Never/After
means immediately after Join completes. After Duration Join/After Duration. Select value from
means allow Duration to elapse before leaving. Only drop down list.
available if Join Groups is Enabled.
Duration of Join Time period, in milliseconds, after which the client rejoins Integer 1 to 86400000 (ms) or profile. If it is
the group(s) it is interested in. Applicable only if Leave a profile then the min and max values must
Delay before Rejoin Time period, in milliseconds, after which the client rejoins Integer 1 to 86400000 or profile. If it is a
the group(s) it is interested in. Not applicable if Leave profile then the min and max values must
Group is “Never”.Only available if Join Groups is Enabled. be within this range. Default 1. Allowable
metrics are ms, sec, min and hour with ms
as the default.
Join Report Delay Delay in milliseconds between the issuing of each join Value between 1 – 10 (secs). Default is
membership report. Only available if Join Groups is 1. This will be changed to allow ms in
Enabled. the GUI and change the values to 1 –
3,600,000(ms) with default of 1000. It can
also be a profile with min and max values
in the range 1 – 3,600,000. Measured in
ms, sec and hour with ms as the default.
Join Report Count The number of times to send a join report before Integer 1 to 255. Default is 1.
assuming the associated multicast router is not
responding. Only available if Join Groups is Enabled.
Rejoin After Failure If enabled, and if the client detects that it hasn't received Enabled, Disabled. Default is Disabled.
a packet after a specified time period (the Join Timeout),
then the client will continuously attempt to rejoin the
group, after intervals of the specified time period, until
such time as the rejoin is successful. Only available if Join
Groups is Enabled.
Join Timeout Time in milliseconds after which the client will go into an Integer value or profile. Default is 2
error state if a packet has not been received within this seconds. Min is 1 and max is 3,600,000
time. This is only available if Join Groups is Enabled. ms. Measured in ms, sec and min with sec
as the default.
Unsolicited MR If enabled, the client will periodically send membership Optional. Enabled or Disabled. Default is
(Membership Reports) reports to the all routers group. Only available if Join Disabled.
Groups is Enabled.
Delay Between UMRs Delay in milliseconds between the issuing of each Integer value or profile. 1 – 3,600,000 (ms).
(Unsolicited Membership unsolicited membership report. This is only available if It can also be a profile with min and max
Reports) Unsolicited MRs is Enabled. values in the range 1 – 3,600,000. Default
is 1 if enabled. Measured in ms, sec, min
and hour with ms as the default.
Override Of Max QRT If enabled, the client can specify an override to the default Enabled or Disabled. Default is Disabled.
(Query Response Time) maximum query response time. Only available if Join
Groups is Enabled.
Maximum QRT (Query Maximum time period in milliseconds after which the client Min 1, max 3,600,000 (ms). Default is
Response Time) will respond to a query regarding an interested group, if blank if Override is Disabled – MLIPS
no other client has responded. If the Override flag is set, will default it to between 1 – 10000ms. If
then the client will always ignore a Query's requested Max Override is Enabled the default it cannot
Response Time, and use the configured value (if there is be blank. Can also be a profile with above
one, otherwise the MLIPS default). If the Override flag is min/max. Measured in ms, sec and min.
not set, then the client will only use the configured value if
the Query does not specify a Max Response Time.
Filter If Enabled then the filter is applied, otherwise client Enabled, Disabled (default).
receives all packets
Filter Type Indicates type of filtering. Applicable only if filtering is Default is Include and this is the only
enabled. option currently available.
Filter List List of source IP addresses to be used to filter on packets Select from a list of previously configured
received. Only Applicable for IGMPv3 clients, and only Filter Lists or add a new Filter List. Refer
if filtering is enabled. Only available if Join Groups is to the section on IGMP Configuration in
Enabled. Chapter 11 - Test Case Configurations.
Playout Jitter Buffer Delay Jitter buffer delay before packets are considered played. Integer value in the range 0-65535ms.
If Passive Analysis is enabled, it accepts the an input from Available units are ms, sec. Default is
a Jitter buffer. TeraVM uses a Jitter Buffer Emulator which 300ms. Only available in the following
emulates jitter buffers such as Set Top Boxes used to circumstance: • Media Transport is RTP •
compensate for network jitter. Or Passive Analysis is enabled.
Maximum Jitter Buffer Maximum size of the jitter buffer. Integer value in the range 0 - 65535.
Size. Available units are ms and sec. Default
is 900ms. Only available in the same
circumstances that Playout Jitter can be
configured.
Enable Normal/Fine As described in Settings Common to Multiple Applications, Enabled by ticking the checkbox or
Statistics Additional Configuration. disabled by leaving the checkbox empty.
Default is ticked to enable Normal statistics
and unticked to disable Fine statistics.
Enable Leave Time Indicates the IGMP Client will continue to report leave Enabled by ticking the checkbox or
Statistics statistics after it has left the group. disabled by leaving the checkbox empty.
Default is disabled.
Enable Maximum Leave This field, if enabled, is used to imit the length of time that Enabled or Disabled. Default is Disabled.
Time the client will monitor a group, (collecting leave statistics),
after leaving.
Note: That the client will cease monitoring a group, (that
is, stop collecting leave statistics for that group), when
either of the Maximum Leave Time or Maximum Leave
Timeout conditions is met. In other words, if the Maximum
Leave Time is reached, the client will stop monitoring
the group, regardless of whether or not it is still receiving
packets. Likewise, if a packet does not arrive within the
Maximum Leave Time The maximum amount of time after leaving a group that “Indefinite” or Integer in the range 1 to
the client will monitor that group to measure the leave 3,600,000 ms. (1 hour). Available units
time. are ms and sec. Default is “Indefinite”.
Available only if “Leave Statistics” is
enabled.
Enable Maximum Leave This field, if enabled,is used to imit the length of time that Enabled or Disabled. Default is Disabled.
Timeout the client will monitor a group, (collecting leave statistics),
after leaving. (See note for Enable Maximum Leave
Time field)
Leave Timeout The maximum amount of time that can elapse without “Indefinite” or Integer in the range 1 to
receiving a packet before the client will assume that the 3,600,000 ms. (1 hour). Available units are
leave is complete, (and therefore stop monitoring the ms and sec. Default is 1 sec. Available only
group). if “Leave Statistics” is enabled.
Analyse Video ES If Media Transport contains MPEG2-TS elementary Enabled/Disabled. Default, if available, is
streams then this allows the video elementary stream Enabled.
to be analysed. (Only available if Media Transport is
MPEG2-TS/RTP or MPEG2-TS. At least one of Analyse
Video ES and Analyse Audio ES must also be enabled.)
Video Codec Allows the IGMP client to measure passive quality metrics For all values of Media Transport the
for the incoming stream. If Media Transport is RTP following values are available:
this field is always available. If the Media Transport is
• JPEG
MPEG2-TS/RTP or MPEG2-TS, this property is only
enabled if Analyse Video ES is enabled • MPEG
• H.261
• H.263
• H.263+
Analyse Audio ES If Media Transport contains MPEG2-TS elementary Enabled/Disabled. Default, if available, is
streams then this allows the audio elementary stream to Disabled.
be analysed. (Only available in the if Media Transport is
MPEG2-TS/RTP or MPEG2-TS. At least one of Analyse
Video ES and Analyse Audio ES must also be enabled.)
Audio Codec Used for passive analysis of the audio stream. (Only Allowed values are:
available if Media Transport is MPEG2-TS/RTP or
• MPEG-1 Layer 1
MPEG2-TS.)
• MPEG-1 Layer 2
• MPEG-1 Layer 3
• MPEG-2 AAC
• AC-3
• MPEG-4 AAC
• MPEG-4 Low Delay AAC
• MPEG-4 High Efficiency AAC
Default is MPEG-1 Layer 1. Only available
if Analyse Audio Stream is enabled.
Auto determine ES PID(s) TeraVM will determine the appropriate PID(s) from the Enabled/Disabled. Default is enabled.
incoming stream to analyse. (Only available in the if
Media Transport is MPEG2-TS/RTP or MPEG2-TS. At
least one of Analyse Video ES and Analyse Audio ES
must be also enabled.)
Video ES PID PID of the Video Elementary Stream to be analysed. Integer value. Min is 16 and Max is
This allows the functionality for detecting the PID to be 8192. No Default. Only available if
overridden. (Only available in the if Media Transport is Auto Determine ES PID(s) is disabled.
MPEG2-TS/RTP or MPEG2-TS.) This property is only available if Auto
Determine ES PID(s) is disabled and
Analyse Video ES is enabled. If both
Video ES PID and Audio ES PID are
available they cannot have the same value.
Audio ES PID PID of the Audio Elementary Stream to be analysed. Integer value. Min is 16 and Max is 8192.
This allows the functionality for detecting the PID to be No Default. Only available if Analyse
overridden. (Only available in the if Media Transport is Audio Stream is enabled and Auto
MPEG2-TS/RTP or MPEG2-TS.) determined ES PID(s) is disabled.
If both Video ES PID and Audio ES PID
are available, they cannot have the same
value.
Enable Passive Analysis Configures the collection of Passive Analysis statistics. Enabled by ticking the checkbox or
Statistics disabled by leaving the checkbox empty. N/
A is Passive Analysis is not configured.
Enable Time to First I- Allows the IGMP client to measure the time from the Join Enabled by ticking the checkbox or
Frame Statistics to the first complete I-Frame reception. Note: Qmets disabled by leaving the checkbox empty.
I-Frame statistic can be unreliable when the stream Default is disabled.
is encrypted or the video payload is not supported for
VQmon for decoding.
If Media Transport is RTP then this property is always
available. If Media Transport is MPEG2-TS/RTP or
MPEG2-TS, then is property is only available if Analyse
Video ES is enabled.
Name Unique name identifying the External IGMP server Mandatory. String value between 1 and
application. 255 characters in length.
Description Description for the external server application. String value between 1 and 512 characters
in length. No Default. Optional.
Host(s) Select a host from the list of the previously configured Mandatory. All external applications need
IP hosts which the external server application will use to to use an External Host to communicate
access the SUT. with the SUT.
Multicast Group List List of groups that this server will multicast to. Each Select from a previously configured group
group can contain up to 100 entries. Each entry in the or add a new group. Refer to the section
list contains the address of the multicast group plus a in on IGMP Configuration in Chapter 11 -
Destination Port and Source Port. Test Case Configurations for more details
on Multicast Groups.
The External Properties dialog enables you to configure a list of string parameter/value pairings which
describe how the external server may have been configured to operate. These properties are informational
only and can prove useful as a means of keeping track of the test environment. Some of the information
stored via this property sheet could include, for example:
To enter a property/Name value pair, click on the <Add> button on this page, and the Add Property Value
dialog is displayed:
8.2.7. VoIP
Voice over IP (VoIP) refers to the use of IP networking to deliver telephony services. VoIP call data
uses a packet-switched network for transport, instead of traditional dedicated, circuit-switched telephony
transmission lines. Other terms for VoIP are IP Telephony and Internet telephony. The term VoIP is also
used to describe video telephony. SIP (Session Initiation Protocol) is one of the leading signaling protocols
for VoIP.
– SIP Registration
– SIP Trunking
– Encrypting and authenticating SRTP packets (if this transmission method is chosen). See note.
• TeraVM VoIP User Agent Server (UAS) or External SIP Proxy on the server side
Note
SRTP encryption and authentication is not possible for Dual Hosted or B2B VoIP User Agents.
IMS Functionality
A VoIP UA can operate in a IMS mode when paired with an appropriate RTSP Client application. To achieve
this it is necessary to have the appropriate licence, to enable IMS mode on the Test Agent Configuration and
to ensure both the VoIP UA and RTSP Client use the same username.
SIP Trunking
A SIP trunk is the routing of a large number of SIP calls for different users between a pair of IP addresses.
In a real world environment this emulates the exchange of SIP traffic for a number of users between two
SIP proxies. In TeraVM a group of VoIP UAs can be used to simulate VoIP traffic over a SIP trunk. For
information on the configuration of SIP Trunking, see Section 8.2.7.3.
If you select to add a VoIP User Agent Server, the Add New VoIP UAS Wizard dialog is displayed.
Transport Type Transport protocol that this UAS is configured to use. Can be either UDP or TCP. Default is UDP.
SIP Port Port for UAS to listen for SIP requests. Default is 5060. Value must be between 1
and 65535.
RTP Port Numeric range profile indicating ports to be used for An even Integer between 1 and 65535.
creating RTP media sessions. RTP ports will always be Can also be a profile. Mandatory. No
even. Default.
SIP ToS/DiffServ Quality of Service metric for the SIP messages sent by the Mandatory. Integer value between 0 and
VoIP UAS application. 255. Default is 0.
RTP ToS/DiffServ Quality of Service metric for the media messages sent by Mandatory. Integer value between 0 and
the VoIP UA application. Media messages include RTP or 255. Default is 0.
RTCP messages.
The following information is required to provision the VoIP UAS Application - Server Details.
SIP Username Username to identify this VoIP UAS. String value between 3 and 32 characters
in length. Mandatory. No default.
SIP Domain Name Domain name, for example shenick.com, used to identify String value between 3 and 32 characters
this VoIP UAS. in length. Mandatory. No Default.
Generate RTCP Reports Determines if RTCP Reports will be generated by this Checkbox - default is not ticked.
UAS.
The following information is required to provision the VoIP UAS Application - Call Details.
Table 8-74. VoIP UAS Call Details Fields
Disable RTP Allows for the generation of SIP messages without RTP Checkbox - default is not ticked.
Transmission media.
Enable SRTP Enables the use of SRTP by this UAS. The crypto-suite Checkbox - default is not ticked.
used by the client is automatically detected by the server.
Call Answering Delay Delay in milliseconds before sending a final response Integer between 0 and 30,000. Can also
accepting/rejecting a call. This can be a profile to inject be a profile. Default is 0 meaning no delay.
variability into the delay answering the call. Allowable metrics are ms and sec with ms
as the default.
Busy Ratio Percentage of calls to reject with a busy response. Integer between 0 and 100. Default is 0.
Allow UAS End Call Allows the UAS to terminate the call. Checkbox - default is not ticked.
Average Hold Time The length of time for the call in milliseconds. This relates Minimum value is 0. Maximum is 168 hours
to the media part of the call and excludes time spent on (1 week). Can also be a profile. Default is
signaling to setup and tear down the call. A value of 0 5. N/A if Allow UAS End Call is enabled.
means that the call is terminated immediately after being Metric is ms,sec, min and hours with sec
established and that no RTP media is exchanged. If the as the default.
remote endpoint is a foreign SIP UA it may not be possible
to prevent it sending some RTP traffic before the call is
torn down.
Send 100 Trying If enabled, a 100 TRYING message is sent in response to Enabled/Disabled. Default is Enabled.
an INVITE for a call which is to be accepted.
Use 100rel PRACK The 100rel PRACK is a SIP option defined in RFC 3262. Enabled/Disabled. Default is Disabled.
It is a PRovisional ACKnowledgement by a calling party
to a provisional response. The 100rel PRACK option is
available as an option for the VoIP UA and UAS.
Use Session Timer The session timer is a SIP option defined in RFC 4028. Enabled/Disabled. Default is Disabled.
If enabled, a session timer is negotiated during the call
setup. The session is renewed by either sending a SIP
UPDATE or re-INVITE during the call. Available as an
option for the VoIP UA and UAS.
Session Expires Timer The session expiration time to be proposed by a VoIP UA Integer or profile field with value between
in any call. This field is only available if the Session Timer 1 and 3,600 seconds. Supported units are
option is enabled. seconds and minutes. Default value is 300
with default unit in seconds.
To use a Host in TCP mode, the VoIP UA Application creates a TCP listener on a specified TCP port.
When a TCP connection is received, the server will allocate resources to respond to requests on the new
connection and it will then continue to listen for more new connections. After a connection is established, the
UA will simply monitor that connection and serve out data in response to any incoming requests. Packets
sent from the VoIP UA Application will have the source TCP port set to this port. The VoIP UA Application
must bind to a specific port - it cannot bind to the wildcard port.
A VoIP test has a number of differences from other client/server tests such as HTTP or SMTP. These are:
• VoIP UA is a combined client and server. The UA is capable of both accepting and making calls.
• VoIP UA has two distinct operations. Registration of the UA location with the external server and
initiating calls to other UAs.
• For calls to be completed it is necessary that all UAs have registered their locations with SIP servers.
This allows SIP servers to forward calls to UAs. If UAs have not registered then calls destined for those
UAs cannot be forwarded to them.
• The VoIP UA may establish calls with many different UAs via its external SIP proxy. If the UA is an
external SIP proxy server, this will forward the call on towards the destination UA.
If the UA has a list of URIs to call, each URI should result in a call being established with a different UA.
• Application Details
• Addressing Details (Only available if bulk provisioning is enabled in the Application Details step)
• General Details
• Call Details
• Additional Configuration
Note
The number of VoIP clients (and their associated usernames) should be known before creating a VoIP
Call List to be used by a VoIP application.
SIP Trunking Refer to SIP Trunking for details on this feature and how
to configure it.
Transport Type Transport protocol to be used. UDP, TCP or TLS. Default is UDP. If TCP
is selected, Advanced TCP Characteristics
can be configured by clicking on the
Advanced TCP button in this step.
SIP Port Port for UA to listen for SIP requests. Value must be between 1 and 65535. You
can make the ports scalable by clicking
the scale box and arrow, then entering
Increment by and Every x Entities
values.
The default port depends on the Transport
Type that you select.
• For UDP or TCP, it is 5060.
• For TLS, it is 5061.
RTP Port Numeric range profile indicating ports to be used for Can be a single value if the UA allows
creating RTP media sessions. RTP ports chosen shall maximum of one outstanding VoIP call.
always be even. If RTCP is selected on a call then RTCP Integer between 2 and 65535. Can also be
port is RTP port plus one. If not specified the range is a profile. Mandatory. Default is 16384. If
16384-32767. Can be a single value as the client allows Single value must be unique on the host.
maximum of one outstanding VoIP call. Values in profile
must be between 1 and 65535.
SIP ToS/DiffServ Quality of Service metric for the SIP messages sent by the Integer value between 0 and 255.
VoIP UA application. Mandatory. Default is 0.
RTP ToS/DiffServ Quality of Service metric for the media messages sent by Integer value between 0 and 255.
the VoIP UA application. Media messages include RTP or Mandatory. Default is 0.
RTCP messages.
The following fields are used to generate a unique IP address for each client row, for each TCP/UDP
connection.
Table 8-77. VoIP UA - Addressing Details
No. of Clients Per Row The number of client application to generate for each row Default is 2.
configured in the No. of Rows field in the Application
Details step. For example, if the No. of Rows value is
100, and the No. of Clients Per Row is 2, the number of
clients generated is 200.
Start IP Address Within The start IP address to use within the subnet to vary the The IP address configured for the Subnet
Subnet IP addressing for each client. host.
Note
When Register with Server is enabled and VoLTE-AKA-ESP is selected as authentication algorithm,
Emergency Call and Register with Server fields will not be editable.
Server VoIP UA applications, TeraVM UAS or External Optional. No default. When provisioning more
SIP Proxy with which the VoIP UA Application will than 1 Application, or when the Configure
communicate. As field is set to Scaled Entity more than
one Server can be selected. When selecting
SIP Username Username used in the SIP URI for the calling entity. String value between 1 and 32 characters in
length. Combination with SIP Domain Name
must be unique across VoIP UA Applications
within the test group that have Register with
Server enabled. Mandatory. No default.
SIP Display Name This field forms part of the SIP "From:" field which 1-32 alphanumeric characters plus the
identifies who is originating the call. This field can be following characters -.!%*_+`'~ No default
used as a unique extension number for each UA. value. Optional. The field can be scaled if the
application is configured as a Scaled Entity.
SIP Domain Name The Domain name that is, shenick.com. The UA's IPv4 address or string value between 3 and 32
host IP address can also be used as the host name. characters in length. Combination with SIP User
Name must be unique across VoIP Applications
within the test group that have "Register with
Server" enabled. Mandatory. No Default.
Emergency Call Configures VoIP UA application to make an Boolean. Default value is False.
emergency call.
The field is FALSE when:
• SIP trunking is Use Trunk or Act as
Trunk.
• Server is not selected or any other server
than the SIP Proxy Server/HTTP Server is
selected.
Field will be editable only when:
• SIP Trunking is set to disable.
• Register with Server is editable.
• Server used is SIP Proxy Server or HTTP
Server
When the field is set to TRUE, Register with
Server is set to Enabled then the Emergency
Call field will be non-editable.
SIP Header Field List SIP Header Value - name attribute String value of: 1-1024 characters
Allowed character set:
0..9a..zA..Z-_[space]`!"£$%^&*()_+=|\,./
<>?;'#:@~[]{}
An exampled of this value can be seen when
the Emergency Call check box is selected,
the default VoLTE Emergency call contains the
following SIP Header fields:
Contact: <sip:{user}@{localip}{sos}>{conpms}
Authentication Details Dialog used to configure authorization details used See next section for details on Authentication
during SIP registration. Details.
Register with Server Used to REGISTER with the SIP Server. Available Enabled to allow SIP Register with server, and
only when the SIP Trunking field is set as Act as Disabled to not allow the SIP Register with the
Trunk . Server.
Mandatory if Sip Trunking is set as Act as
Trunk.
Register with Server If enabled, the UA must first register with the SIP Default is Disabled.
Proxy server before starting the test. It is also
possible to indicate support for IMS Multimedia. Not
applicable if the VoIP UA is configured with a TeraVM
VoIP UAS.
Emulate Phone Type TeraVM now supports the emulation of different Mandatory. Default is Generic Phone.
Cisco Phone Types. If the "Generic Phone" value
is selected, then TeraVM will continue to emulate a
generic phone type, otherwise the selected phone
type will be emulated by TeraVM.
Two Authentication Algorithm schemas can be selected in the Authentication Details dialog. The fields that
must be updated in the Authentication Details dialog change depending on the requirements of the selected
algorithm.
1. Digest
2. VoLTE-AKA-ESP
The fields for both algorithm schemas are explained in the tables below.
Figure 8-107. SIP Authentication Details - Using the 'Digest' Authentication Algorithm
The fields described below appear when Digest is selected as the Authentication Algorithm:
Table 8-79. VoIP UA - Authentication Details for 'Digest' Authentication Algorithm
Authentication Algorithm The authentication methods available in TeraVM to Default setting is Digest. Mandatory. There
provide a secure SIP call. are two Authentication Algorithm options
available as authentication methods:
• Digest
• VoLTE-AKA-ESP
Use SIP Username If enabled, then the username entered in the SIP Enabled or disabled. Default is enabled.
Username field is used in the SIP URI for the calling
entity.
Password This password is used to respond to any Digest String value between 3 and 255 characters
challenges for SIP requests from this client. If this is not in length. Optional. No default. The
set, the SIP request immediately fails if the client receives password is scaleable.
a challenge response.
Specify Authorization Determines whether or not the SIP Register message Enabled or Disabled. Default is Disabled.
Username will use the SIP Username in the Authorization field or a
specific Authorization value.
Authorization Username The username to use in the Authorization field if Specify This field can have a specific value or
Authorization Username is enabled. use keywords {user} and {domain}.
Any instance of the {user} keyword will
be replaced with the value of the SIP
Username. Any instance of the {domain}
keyword will be replaced by the value of
the Domain Name field for this UA.
When the Authentication algorithm VoLTE-AKA-ESP is selected in the Authentication Details dialog, the
fields change to allow you to enter the AKA key and the AKA OP.
Figure 8-108. SIP Authentication Details - Using the 'VoLTE-AKA-ESP' Authentication Algorithm
The fields below appear when VoLTE-AKA-ESP is selected as the Authentication Algorithm in the
Authentication Details dialog:
Table 8-80. VoIP UA - Authentication Details for 'VoLTE-AKA-ESP' Authentication Algorithm
Authentication Algorithm The authentication methods available in TeraVM to Mandatory. There are two Authentication
provide a secure SIP call. Algorithm options available as
authentication methods:
• Digest
• VoLTE-AKA-ESP
Default setting is 'Digest'.
Specify Authorization User name to use when authenticating. Optional. If not specified SIP user name
Username will be used.
AKA Key Key to be used for AKA. The key is scalable. Mandatory if VoLTE-AKA-ESP is selected
as the Authentication Algorithm. Value
must be a 32 character Hexadecimal String
i.e 0..9, a..f, A..F. The key is made up of
the ASCII value of the SIP UserName with
appended zeros to make it 32 characters
long.
The key is scalable.
AKA OP AKA Operator ID to be used as input to AKA key Optional. Value must be a 32 character
generation algorithm. When VoIP UA application is scaled, Hexadecimal String i.e 0..9, a..f, A..F.
AKA OP field can also be scaled.
Default value: 32x0 if VoLTE-AKA-ESP is
. selected.
Use AKA OP as the OPc When check box is selected, AKA OP is used as the OPc Optional Boolean value. Default is False.
value. value.
Protected SIP Port Protected SIP port for sending SIP messages via ESP Mandatory if VoLTE-AKA-ESP algorithm
once AKA algorithm has run to agree IPsec SAs. is selected. Value must be an Integer
between 0 and 65535. These must not
match the SIP port Field's value.
Default value: 2468.
ESP Encryption Encryption Algorithm to be used for ESP Select one of three LTE ESP Encryption
methods: aes-cbc (default), des-ede3-cbc
or NULL.
Mandatory if VoLTE-AKA-ESP algorithm
selected.
ESP Authentication Authentication Algorithm to be used for ESP Select one of two ESP Authentication
methods: hmac-md5-96 (default), or
hmac-sha-1-96.
Mandatory if VoLTE-AKA-ESP algorithm
selected.
Note
The parameter settings below are not applicable if the Register with Server setting is disabled.
• Registration Interval
Use Server Interval The UA can choose to use the server registration interval Default is Enabled.
if registration with server is enabled.
Registration Interval Interval between registration attempts by the UA, if Value between 1 ms and 86,400,000
registration with server is enabled. If specified, this defines ms (24 hours). Default is 3,600,000 ms
the expiration interval requested by the UA in the expires (1 hour). N/A if Use Server Interval is
field in the registration request. The requested expiration Enabled. Can be a profile. Allowable
interval will always be 60 seconds greater then the timer metrics are ms, sec, min and hour with min
interval to allow registration to occur if the registration as the default.
occurs again. If not specified the UA will attempt to
register again within the interval returned by the server in
the registration response.
Opening the 3GPP IMS Multimedia tab in the Advanced UA Registration Details dialog provides you with the
option to enable 3GPP IMS Multimedia support.
The fields for 3GPP IMS Multimedia tab are described as follows:
Table 8-82. VoIP UA - 3GPP IMS Multimedia tab
Enable 3GPP IMS Enabling this indicates UA support for 3GPP IMS Default is Enabled.
Multimedia Multimedia in the SIP REGISTER Message.
IMEI International Mobile Station Equipment Identity number to 14 or 15 digit number. If 14 digits are
identify 3GPP, iDEN and some satellite phones. You must entered, the 15th number is scalable. Click
click Enable 3GPP IMS Multimedia before you can enter the arrow button to select scaling method
an IMEI number which is required for IMS registration. (the following field appears).
Emergency Calls
This feature allows the VoIP UA to be configured to make a mix of emergency and non-emergency calls. An
emergency call is configured by configuring the Call URI field to start with the string urn:service:sos. When
this is the case, the "sos" attribute will be added to the Contact of the REGISTER message to indicate this
UA is making an emergency call.
If specifying a Contact field via the SIP Field Settings the following format can be used to preserve values
configured in the UI:
Contact: <sip:{user}@{localip}{sos}>{conpms}
The variables defined in {} will be replaced with values from the UI configured for UA.
Example: Non-Emergency Call
Contact: <sip:bob3@1.1.1.2>;+g.3gpp.icsi-ref="urn%3Aurn-7%3A3gpp-service.ims.icsi.mmtel"
;+g.3gpp.smsip
Contact: <sip:bob2@1.1.1.2;sos>;+g.3gpp.icsi-ref="urn%3Aurn-7%3A3gpp-service.ims.icsi.mm
tel";+g.3gpp.smsip>
Allow UA to Initiate Calls The UA can choose to initiate calls or not. If enabled, this Default is Enabled. Enabled/Disabled.
UA can initiate calls. Specification of other call related properties
are dependent on this setting.
Called Party Selection Allows the user to either select a Configuration Item or to Default is blank.
select a list of Call URI to all.
Call URI Used to add a service to the call. Default is blank. If urn:service:sosis
entered into this field, then the Contact
header of the REGISTER is set to sos,
making it an emergency call. Otherwise,
when blank; a normal call.
Call List The name of a Call List configured in the VoIP Choose from the list.
Configuration folder.
Call Answering Delay Delay in milliseconds before sending a final response Integer between 0 and 30,000. Can also
accepting/rejecting a call. This can be a profile to inject be a profile. Default is 0 meaning no
variability into the delay answering the call. delay. Optional if UA is provisioned along
with an External SIP Proxy. N/A if UA is
provisioned with a TeraVM VoIP UAS.
Allowable metrics are ms and sec with ms
as the default.
Busy Ratio Percentage of calls to reject with a busy response. Integer between 0 and 100. Default is 0.
Optional if UA is provisioned along with an
External SIP Proxy. Not applicable if UA is
provisioned with a TeraVM VoIP UAS.
Allow UA End Call Allows a UA to terminate calls when it is not configured to Enabled/Disabled. Default is disabled.
initiate calls.
Send 100 Trying If enabled, a 100 TRYING message is sent in response to Enabled/Disabled. Default is Enabled.
an INVITE for a call which is to be accepted.
Support for REFER If enabled it indicates to SIP proxy if REFER message is Enabled/Disabled. Default is Disabled.
Request supported and therefore which method can be used to
transfer calls.
The REFER message allows the SIP proxy to transfer an existing call by sending a REFER message
to UA on an existing session. The Refer-To field in the REFER message identifies the target for the UA
to open a new call to. NOTIFY messages must also be generated on the existing session by the UA to
indicate the success/failure of the call transfer. The initial NOTIFY message indicates that the call has
been attempted. The 2nd NOTIFY messages contains the final status code for the transfer call attempt and
therefore indicates if call succeeded or not. The UA will have 2 calls while the initial call and transfer call
exist. It is responsibility of the SIP server sending the REFER to close the original call.
The BHCA (Busy Hour Call Attempts) is an important value for a VoIP application. It controls the call rate
that is, the number of calls attempted per hour. This value is dependent on the number of clients and the
average hold time for a call and you are not allowed to enter a value that cannot be achieved based on the
configured client count and average hold time. A simple formula to help with this is:
(Maximum Average Hold Time rounded up to nearest second + 3 seconds) <= (3600 * client count/ BHCA)
Therefore, a hold time of 0 and a client count of 50 means the maximum value for BHCA is 60,000. If a
BHCA fig of 120,000 is required then the number of clients should be increased to 100.
Note
Clients will not maintain the configured BHCA value if either:
• they are on a call when the next call is to be initiated. This can occur if a client in another test
case entry calls this client.
• the previous call has not completed. A 3 second window should be sufficient. This may be the
case if the call answering delay is configured or SIP packets are dropped.
Stream Profile The name of a Stream Profile configured in the RTP Choose from the list or add a new profile.
Configuration folder. Refer to Chapter on Configuration.
Mandatory if Allow UA to Initiate Calls is
Enabled
Disable RTP Allows for the generation of SIP messages without RTP Checkbox - default is not ticked.
Transmission media.
Enable SRTP Enables the use of SRTP by this UA. Checkbox - default is not ticked.
SRTP Crypto-Suite If Enable SRTP is selected, a list of cipher suites for Choose one cipher suite from
encrypting and authenticating your data is presented: the drop down menu. Default is:
AES_CM_128_HMAC_SHA1_32
• AES_CM_128_HMAC_SHA1_32
• AES_CM_128_HMAC_SHA1_80
• AES_CM_128_NULL_AUTH
• NULL_CIPHER_HMAC_SHA1_80
Generate RTCP Reports Determines if RTCP Reports will be generated by this UA. Checkbox - default is not ticked.
Allow Delay between Calls If selected, then the delay between calls is governed by Default is Enabled. Enabled/Disabled. N/A
the BHCA property. if Initiate Calls is disabled.
BHCA (Busy Hour Call The BHCA is the number of calls to be attempted per Minimum value is the VoIP UA batch count,
Attempts) hour. It is controlled by the number of clients and the or 1 if the UA is not batched. Maximum is
average hold time. This field is enabled only if delays are 1,200,000. N/A if Initiate Calls is disabled.
allowed between calls. N/A if Allow Delay Between Calls is
disabled. Mandatory otherwise.
Average Hold Time The length of time for the call in milliseconds. This relates Minimum value is 0. Maximum is 168 hours
to the media part of the call and excludes time spent on (1 week). Can also be a profile. Default is
signaling to setup and tear down the call. If 0 then this 5. N/A if Initiate Calls is disabled. Metric
value indicates that the call is terminated immediately after is ms,sec, min and hours with sec as the
being established and that no RTP media is exchanged. default. If metric is hours then Allow Delay
If the remote endpoint is a foreign SIP UA it may not be Between Calls should be disabled.
possible to prevent it sending some RTP traffic before the
call is torn down.
Enable AMR Level If enabled, the call will cycle through the Bit Rate Level Enabled/Disabled. Default is Disabled.
Changes List assigned to the Stream Profile, using the order
determined by the following fields.
Change Level Mode Determines how the call will cycle through the list of Bit Either "Level Change List" or "Variable
Rate Levels. Level Change". Default is "Level Change
List".
Level Change List A list of level changes that should be applied to the Bit Mandatory, if Enable AMR Level Changes
Rate Level List during a call. is enabled, and Change Level Mode is
"Level Change List"
Variable Level Change A profile that can be configured to configure the order of Mandatory, if Enable AMR Level Changes
the levels that should be applied to the Bit Rate Level List is enabled, and Change Level Mode is
during a call. "Variable Level Change"
Interval Between Change The Interval between each level change during a call. Can be value in the range 0 - 3,600,000
(ms). It can also be a profile with min and
max values within this range. Default is 40
indicating no delay. Supported metrics are
ms, sec and min with ms as the default.
Use 100rel PRACK The 100rel PRACK is a SIP option defined in RFC 3262. Enabled/Disabled. Default is Disabled.
It is a PRovisional ACKnowledgement by a calling party
to a provisional response. The 100rel PRACK option is
available as an option for the VoIP UA and UAS.
Use Session Timer The session timer is a SIP option defined in RFC 4028. Enabled/Disabled. Default is disabled.
If enabled, a session timer is negotiated during the call
Session Expires Timer The session expiration time to be proposed by a VoIP UA Integer or profile field with value between
in any call. This field is only available if the Session Timer 1 and 3,600 seconds. Supported units are
option is enabled. seconds and minutes. Default value is 300
with default unit in seconds.
Once Generate Events is selected the DTMF tab requires the following information:
Table 8-88. DTMF tab with Generate Events Selected
DTMF Mode Indicates support mode for DTMF. Supported mode Options include: “Not Supported”,
indicate support for DTMF in SIP message but events are “Supported” or “Generate Events” Default:
not sent. Generate Events mode indicates to support and Not Supported.
generate DTMF events in SIP messages.
Initial Delay Initial delay before sending 1st DTMF event on a call. A Mandatory if DTMF Mode is “Generate
longer initial delay is required before 1st event should be Events” Integer with metric. Range from
sent. 100ms to 60 minutes. Default value: 3
seconds
Inter Event Delay Delay between each DTMF Mandatory if DTMF Mode is “Generate
Events”. Integer or Profile with metric.
Range from 100ms to 60 minutes. Default
value: 300m
Event Duration Duration of time to generate RTP DTMF messages for Mandatory if DTMF Mode is “Generate
each DTMF event. Events”. Integer with metric. Range from
100ms to 8 seconds Default value: 300ms.
Event Volume Value for volume field in a DTMF message. Mandatory if DTMF Mode is “Generate
Events”. Integer Range from 0 to 63.
Default value: 2.
Figure 8-116. The DTMF Tab when using a scaled VoIP UA Client:
Figure 8-117. The DTMF Events Scaler dialog with DTMF Events Scaler selected:
This dialog requires the following information when DTMF Events Scaler is selected:
Table 8-89. VoIP UA - Advanced: The DTMF Tab - DTMF Events Scaler dialog with DTMF Events Scaler Selected
Base DTMF Events First DTMF Event upon which values are incremented. Mandatory.
• Each event must be 0-9 and an
optional # at the end.
• A delay value is allowed after an
event as 0{1000}.Any type of brackets
allowed ( '()','[]','{}' ). No delay can be
specified after the last event. Delay
must be between 100 and 3600000
ms
Default value: None
Increment by Value for increment. Value added to base DTMF event for
increment
Every The step for incrementing Incrementing will only occur based on the
set number of entities.
When String List Events Scaler is selected the dialog appears as follows:
Figure 8-118. The DTMF Events Scaler dialog with String List Scaler selected:
This dialog requires the following information when String List Scaler is selected:
Table 8-90. VoIP UA - Advanced: The DTMF Tab - Scaled DMTF Configuration: String List Events Scaler
Import Includes DTMF Event string from an external .csv file. Optional. Click Import… to open import
dialog and browse to .csv file containing
stored DTMF Event strings.
Note: the .csv file must be formatted with
the entity number first followed by the
DTMF Event strings for that entity with
inverted commas around each string.
For example:
Column1
"1,2,2,2{275},4,5{350},7,7{350},8"
"2,2{275},4,5{350},7,7{350},#"
"1,2,2,,4,B{350},7,7,A{350},Flash"
When bulk DTMF Event strings are added through the scaler the DTMF Events field provides the number of
values added. For example, if 10 DTMF Event strings is added the field would say “10 Values”.
In the General tab the SIP update "Disable Call Transfer" is set. This option disables all call transfer
functionality. This dialog requires the following information:
Table 8-91. General tab
Disable Call Transfer Disable all call transfer functionality. Do not follow BYE/ Mandatory. Must select either true or false.
Also and reject received REFER messages. Select true to enable. Default is false.
• None
• Receive SMS
• Send/Receive SMS
SMS Message URI URI for SMS Gateway of the format (sip| Mandatory.
tel):username[@domain]
Characteristics:
• Length range from 5 to 512 characters
• valid chars: a-zA-Z0-9 ._-
• Format: (sip|tel):username[@domain].
• Username portion may start with + but
must be made of digits 0 to 9 including
leasing 0s. Number of digits between 1
and 15.
Default: None
The following fields are used to configure the Send/Receive SMS parameters:
Message Recipient List Selects VoIP Call List for multiple recipients Mandatory. VoIP Call List Configuration
Item
Each user name in call list must conform
to following:
• May start with a +
• Must consist of digits 0..9.
• At least 1 to 15 digits including
leading 0s.
If Allow UA Initiate calls enabled and
Called Party Selection is VoIP Call List
then default value should be the selected
VoIP Call List. Otherwise Null.
Dependencies: Message Recipient
Selection must be Message Recipient
List
SMS Message List List of SMS messages to send. Mandatory. MS Message List. In order
to configure a list of SMS Message,
click on the “...” button after the “SMS
Message List field.
Dependencies: 3GPP SMS Support
must be Send/Receive SMS.
Send SMS messages in Allows a number of messages to be sent in close proximity of Mandatory. Boolean.
Burst each other.
Delay between each SMS. Controls delay between bursts of messages Mandatory. Integer or profile with metric.
Characteristics:
• metric in [ms, secs, minutes]
• value 0 to 60 minutes
Default: 1 sec
Dependencies: option Send SMS
messages in Burst must be enabled
Figure 8-123. VoIP Client Application - SMS Message: Send/Receive SMS - Select SMS List
The Select SMS List dialog box allows you to add, edit and delete lists of SMS messages, as well as create
new lists. All added lists appear in the Choose from Selection section. The names of the SMS lists are
shown in the left-hand column and the number of SMS messages within the list appear in the right-hand
column.
The message type used and the contents of a selected list also appear at the bottom of the dialog in the
Properties of Selected Items: section.
To edit or delete an SMS Message list first select it in the Choose from Selection section and click either
Edit or Delete.
To add a new SMS Message list click the Add button below the Choose from Selection section.
Figure 8-124. VoIP Client Application - SMS Message: Send/Receive SMS - Add SMS Message List
The Add SMS Message List dialog box is used to create or modify an SMS Message List. New SMS
Messages can be added or those that have already been created can be edited or deleted using the Add,
Edit and Delete buttons respectively.
In addition, the order that the message appears in the list can also be changed by selecting the message
and clicking the Move Up and Move Down buttons.
To add a new message click the Add button. This opens the Add SMS Message dialog box:
Figure 8-125. VoIP Client Application - SMS Message: Send/Receive SMS - Add SMS Message
Select the message type from the Type drop-down list. It is Text, by default. Enter the content of the
message in the Text: field. Click OK to confirm the changes and close.
Note
Click on the help button to get information on supported keywords substitution when entering message
content. Also, the title of “Add SMS Message” dialog will be “Edit SMS Message” in edit mode.
Figure 8-126. VoIP Client Application - SMS Message: Send/Receive SMS - Delays between sending
of SMS
To configure a delay between a series of SMS message bursts first select the Send SMS messages in
Burst checkbox. Once selected the new delay properties become visible and configurable.
Figure 8-127. VoIP Client Application - SMS Message: Send/Receive SMS - Send SMS messages in
Burst
Once Send SMS Messages in Burst checkbox is selected the Delay between each SMS field disappears
from the SMS Message step in the VoIP Client Application wizard and three other properties become visible:
Value entered in this field indicates the number of SMS messages in a Burst (A Burst is a group of
SMS Messages within the selected SMS Message List). It is used to introduce granularity in the delays
configuration.
The time between the sending of the last SMS message of a Burst and the sending of the first SMS
message of the next Burst.
In addition to these delays an “Initial SMS Delay” property is configurable in the next step of the Wizard:
“Additional Configuration”.
Initial Call Delay A delay which can be applied before any calls are initiated Optional. Default is 0. Supported metrics
by the UA. are ms, sec, min and hour with ms as the
default. Can also be a profile.
Initial SMS Delay Initial delay before sending 1st SMS message Mandatory. Integer or profile with metric
Characteristics:
• metric in [ms, secs, minutes, hours]
• value 0 to 1 hour
Default: 0 secs
Dependencies: 3GPP SMS Support
must be Send/Receive SMS and IMS
Multimedia. Otherwise option greyed out.
Configure Passive Allows the configuration of the client for Passive Analysis. Enabled by ticking the checkbox or
Analysis Refer to the section on Passive Analysis for more details. disabled by leaving the checkbox empty.
Default is disabled.
Note
Passive Analysis requires the purchase of a special software licence. If that licence has not been
purchased, and you try to enable the Configure Passive Analysis checkbox, a pop-up dialog
appears to advise you that one is required.
Enable Normal/Fine As described in Settings Common to Multiple Applications, Default is Normal statistics enabled and
Statistics Additional Configuration. Fine statistics disabled.
Enable Latency Statistics Indicates the VoIP UA will report Latency statistics. Enabled by ticking the checkbox or
disabled by leaving the checkbox empty.
Default is disabled.
Note
Latency Statistics and Passive Analysis are
mutually exclusive and can't both be enabled
on the same UA.
Analyse Media Type Indicate the type of Media to be Analysed. Select from: voice, video, voice and video.
Default is voice. When voice and video is
selected, the MoS statistics are enabled for
both streams at the same time.
Playout Jitter Buffer Delay The delay before received RTP packets are considered Integer in the range 0 to 65535 ms.
played. If Passive Analysis is enabled, it accepts the an Available units are ms and sec . Default
input from a Jitter buffer. TeraVM uses a Jitter Buffer is 40ms for all media types. Available if
Configure Passive Analysis is enabled.
Maximum Jitter Buffer Maximum size of the jitter buffer. Integer in the range 0 to 65535 ms.
Size. Available units are ms and sec .The value
must be >= to the value of Playout Jitter
Buffer. Default value is 80ms for all media
types.
Video Codec Used to select the expected video codec of the video Must be chosen from one of the following
stream for analysis. There is no validation that the codec's : Static JPEG MPEG H.261 H.263
selected value matches the actual video stream received H.263+ H.264 MPEG-4 VC-1 Available if
or indeed that a video stream will be received. Configure Passive Analysis is enabled
and Analyse Media Type is "Video".
Analyse MPEG2TS ES Allows passive analysis on the MPEG2-TS packets Enabled/Disabled. Default is Disabled.
embedded in the RTP stream. Available if Configure Passive Analysis
is enabled and Analyse Media Type is
"Video".
Auto determine ES PID TeraVM will determine the appropriate PID(s) from the Enabled/Disabled. Default is enabled.
incoming stream to analyze. Available if Analyse MPEG2-TS is
enabled.
Video ES PID PID of the video elementary stream to be analysed. Integer value. Min is 16 and Max is
This allows the functionality for detecting the PID to be 8192. No Default. Only available if Auto
overridden. Determine ES PID is disabled.
Enable Passive Analysis Enables TeraVM to collect passive analysis stats. Enabled/Disabled. Default is enabled. Only
Statistic available if Configure Passive Analysis is
enabled.
i. VoIP UAs can be configured to simulate VoIP traffic over a SIP trunk.
Configuration Overview
• One UA within the group acts as an originating trunk endpoint and will not make calls.
• The other VoIP UAs are configured to route their SIP traffic via the SIP trunk. The RTP traffic originates
and terminates on the host associated with that VoIP UA.
• For SIP-PBX simulation, the SIP Trunking configuration is extended to support registration attributes
for bulk telephone numbers (RFC 6140), and the SIP Register Request-URI is configured so that the
Register message is routed correctly.
The diagrams that follow give a high level overview of SIP emulation in TeraVM. It is possible to support a
number of SIP Trunks in a test. Multiple SIP Trunks may be terminated on the same SIP server.
SIP-PBX emulation in TeraVM is configured so that the SIP messages are registered and as part of the
registration, multiple telephone numbers can be registered.
2. Set up a VoIP UA Application following the steps in the section on Provisioning a VoIP UA Application.
• In the Add New VoIP UA(s) Wizard, Application Details, select Act as Trunk in the drop down
list of SIP Trunking.
Note
This application must be configured as Single App per Row in order to allow it to act as a
trunk.
• Click on Advanced SIP Trunking and if required, specify the parameters as described in the SIP
Trunking Parameters table:
• Select transport type to be UDP, TCP or TLS and enter the SIP Port and SIP ToS/DiffServ. The
RTP fields will not be configurable since this UA will not make or receive calls.
• Click Next and fill in remaining configuration details (General Details, In/Out Call Setup, etc).
4. Next, set up each UA that uses this trunk. For each UA:
• In the Add New VoIP UA(s) Wizard, Application Details, select Use Trunk in the drop down list
of SIP Trunking.
Note
This application can be configured as Multiple Clients per Row/Scaled Entity or Single
App per Row.
• Select the Trunk ID that this UA will use from the drop down list (Trunk ID defined previously).
• Enter the RTP Port (select from drop down list if ports have already been defined) and RTP ToS/
DiffServ. The Transport Type and SIP fields including SIP Trunking will not be configurable.
• Click Next and fill in remaining configuration details (General Details, In/Out Call Setup, and so
on).
5. Continue the Test Group configuration, such as Thresholding and Statistics before executing the SIP
Trunk test.
Table 8-97. SIP Trunking Parameters
SIP Trunking This field allows you to configure the The options are:
VoIP UA to act as a SIP Trunk or User
• Disabled - The UA is not using SIP
Trunking. This is the default setting.
• Act as Trunk - Enable the UA to be
configured as a SIP trunk.
• Use Trunk - Enable the UA to be
configured as a user of a SIP trunk.
SIP Trunk ID If SIP Trunking is configured as Act as String value between 1 and 255
Trunk, create a unique ID for the trunk. characters in length.
If configured as Use Trunk, select a
Valid chars: 'a-zA-Z0-9 .{}<>[]()@#&*%_
previously defined Trunk ID.
+=!-'
Empty by default. Value must be entered
if SIP Trunking is set to Act as Trunk or
Use Trunk.
Specify Parameters If enabled, will allow the user to add an RFC 4904 Trunk Group with the following
parameters for a UA configured as Act as Trunk. The values entered will be added to
the Request URI message. All 4 parameters must be configured.
Specify Parameters is disabled by default.
Originating Trunk Group Specifies the Originating Trunk Group String value between 1 and 255
value characters in length.
Valid chars: 'a-zA-Z0-9.{}<>()@#&*%_
+=!-~'/$'
Empty by default. Value must be entered
if SIP Trunking is set to Act as Trunk and
Specify Parameters is checked.
Originating Trunk Context Specifies the Originating Trunk Context String value between 1 and 255
value characters in length.
Valid chars: 'a-zA-Z0-9.{}<>()@#&*%_
+=!-~'/$'
Empty by default. Value must be entered
if SIP Trunking is set to Act as Trunk and
Specify Parameters is checked.
Terminating Trunk Group Specifies the Terminating Trunk Group String value between 1 and 255
value characters in length.
Terminating Trunk Context Specifies the Terminating Trunk Context String value between 1 and 255
value characters in length.
Valid chars: 'a-zA-Z0-9.{}<>()@#&*%_
+=!-~'/$'
Empty by default. Value must be entered
if SIP Trunking is set to Act as Trunk and
Specify Parameters is checked.
Prerequisites
• SIP Trunking is configured as Act as Trunk as shown in the previous section: Section 8.2.7.3.1.
• This procedure uses the predefined SIP PBX SIP Header Field List, for information on SIP Header Field
List Configuration items, see Chapter 9, Section 9.3.14.3.
1. From the Add New VoIP UA(s) Wizard dialog in the General Details, enter the details of the Server and
those for the UA identification.
2. For the SIP Header Field List click the […] browse button to locate the Configuration item. The Select
SIP Header Field List dialog open.
3. Locate and select the SIP Header Field List with the name SIP PBX. The Header Fields by default are
defined as shown in the following table:
Table 8-98. SIP-PBX Default Values
ALL Allow ACK, BYE, CANCEL, INFO, INVITE, NOTIFY, MESSAGE, SUBSCRIBE, UPDATE,
PRACK, REFER
4. Click Next and fill in the remaining configuration details for this test. For more information on SIP
Header Field List Configuration item, see Chapter 9, Section 9.3.14.3.
SIP Header Field List SIP Header Value - name attribute String value of: 1-1024 characters
Allowed character set:
255 a-zA-Z0-9 .{}<>[]()@#&*%_+=!-
Register with Server Used to REGISTER with the SIP Server. Enabled to allow SIP Register with server, and
Available only when the SIP Trunking field is Disabled to not allow the SIP Register with the
set as Act as Trunk . Server.
VoIP UA (B2B Mode) applications have the same basic functionality as a non-B2B Mode VoIP UA, except
for the following items:
• The SIP Port field is not applicable. This value is set on the host.
• A VoIP UA (B2B Mode) application cannot use TCP as a transport type for SIP calls.
• Selected hosts must have the B2BUA flag enabled and cannot be subnet hosts.
• Only one VoIP UA (B2B Mode) using a given host can perform SIP registration. This will be validated at
runtime.
The following configuration steps are required to provision a VoIP B2B UA:
• Application Details
• General Details
• In/Out Call Setup
• Call Details
• Additional Configuration
• Passive Analysis (Only available if Passive Analysis is enabled)
Note
The number of VoIP clients (and their associated usernames) should be known before creating a VoIP
Call List to be used by a VoIP application.
No. of Clients Each client to be created has a row created in the Default is 1. 1 - 40, 000 clients can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. on Bulk and Batch Provisioning for more
details on using this field.
Configure as Only the single clients per row is supported for B2BUA. The options for this field are:
• Single Client Per Row
Name Unique name identifying the client. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Direct Virtual Host or Indirect Virtual Host.
Hosts for this Test Group. Selected hosts must have the B2BUA
flag enabled and cannot be subnet hosts.
Mandatory. No default.
RTP Port Numeric range profile indicating ports to be used for Can be a single value if the UA allows
creating RTP media sessions. RTP ports chosen shall maximum of one outstanding VoIP call.
always be even. If RTCP is selected on a call then RTCP Integer between 2 and 65535. Can also be
port is RTP port plus one. If not specified the range is a profile. Mandatory. Default is 16384. If
16384-32767. Can be a single value as the client allows Single value, must be unique on the host.
maximum of one outstanding VoIP call. Values in profile
must be between 1 and 65535.
SIP ToS/DSCP Quality of Service metric for the SIP messages sent by the Integer value between 0 and 255.
VoIP UA application Mandatory. Default is 0.
RTP ToS/DSCP Quality of Service metric for the media messages sent by Integer value between 0 and 255.
the VoIP UA application. Media messages include RTP or Mandatory. Default is 0.
RTCP messages.
Server TeraVM UAS or External SIP Proxy with which the VoIP Mandatory. No default.
UA Application will communicate
SIP Username Username used in the SIP URI for the calling entity. This String value between 1 and 32 characters
value will be incremented if either Entry Count or Client in length. Combination with SIP Domain
Count > 1. Name must be unique across VoIP UA
Applications within the test group that have
"Register with Server" enabled. Mandatory.
No default.
SIP Domain Name The Domain name that is, shenick.com. The UA's host IP IPv4 address or string value between 3 and
address can also be used as the host name. 32 characters in length. Combination with
SIP User Name must be unique across
VoIP Applications within the test group
that have "Register with Server" enabled.
Mandatory. No Default..
Use SIP Username If enabled, then the username entered in the SIP Enabled or disabled. Default is enabled.
Username field is used in the SIP URI for the calling
entity.
Password This password is used to respond to any Digest String value between 3 and 32 characters
challenges for SIP requests from this client. If this is not in length. Optional. No default.
set, the SIP request immediately fails if the client receives
a challenge response.
Register with Server If enabled, the UA must first register with the SIP Proxy Default is Disabled. Enabled/Disabled.
server before starting the test. Not applicable if the VoIP
B2B UA is configured with a TeraVM VoIP UAS.
Use Server Interval The UA can choose to use the server registration interval Enabled or Disabled. Default is
if registration with server is enabled. Disabled. N/A if Register With Server is
Disabled.
Registration Interval Interval between registration attempts by the UA, if Minimum value is 1 ms. Maximum value
registration with server is enabled. If specified, this defines is 86,400,000 ms (24 hours). Default is
the expiration interval requested by the UA in the expires 3,600,000 ms (1 hour). N/A if Register
field in the registration request. The requested expiration With Server is Disabled. N/A if Use Server
interval will always be 60 seconds greater then the timer Interval is Enabled. Can be a profile.
interval to allow registration to occur if the registration Allowable metrics are ms, sec, min and
occurs again. If not specified the UA will attempt to hour with min as the default.
register again within the interval returned by the server in
the registration response.
Allow UA to Initiate Calls The UA can choose to initiate calls or not. If enabled, this Default is Enabled. Enabled/Disabled.
UA can initiate calls. Specification of other call related properties
are dependent on this setting.
Call List The name of a Call List configured in the VoIP Choose from the list.
Configuration folder.
Call Answering Delay Delay in milliseconds before sending a final response Integer between 0 and 30,000. Can also
accepting/rejecting a call. This can be a profile to inject be a profile. Default is 0 meaning no
variability into the delay answering the call. delay. Optional if UA is provisioned along
with an External SIP Proxy. N/A if UA is
provisioned with a TeraVM VoIP UAS.
Allowable metrics are ms and sec with ms
as the default.
Busy Ratio Percentage of calls to reject with a busy response. Integer between 0 and 100. Default is 0.
Optional if UA is provisioned along with an
External SIP Proxy. Not applicable if UA is
provisioned with a TeraVM VoIP UAS.
Allow UA End Call Allows a UA to terminate calls when it is not configured to Enabled/Disabled. Default is disabled.
initiate calls.
Send 100 Trying If enabled, a 100 TRYING message is sent in response to Enabled/Disabled. Default is Enabled.
an INVITE for a call which is to be accepted.
Note
Clients will not maintain the configured BHCA value if either:
• they are on a call when the next call is to be initiated. This can occur if a client in another test
case entry calls this client.
• the previous call has not completed. A 3 second window should be sufficient. This may be the
case if the call answering delay is configured or SIP packets are dropped.
Stream Profile The name of a Stream Profile configured in the RTP Choose from the list or add a new profile.
Configuration folder. Refer to Chapter on Configuration.
Mandatory if Allow UA to Initiate Calls is
Enabled.
Disable RTP Allows for the generation of SIP messages without RTP Checkbox - default is not ticked.
Transmission media.
Generate RTCP Reports Enables SRTP to be used by this UA. Checkbox - default is not ticked.
Allow Delay between Calls If selected, then the delay between calls is governed by Default is Enabled. Enabled/Disabled. N/A
the BHCA property. if Initiate Calls is disabled.
BHCA (Busy Hour Call The BHCA is the number of calls to be attempted per Minimum value is the VoIP UA batch count,
Attempts) hour. It is controlled by the number of clients and the or 1 if the UA is not batched. Maximum is
average hold time. This field is enabled only if delays are 1,200,000. N/A if Initiate Calls is disabled.
allowed between calls. N/A if Allow Delay Between Calls is
disabled. Mandatory otherwise.
Average Hold Time The length of time for the call in milliseconds. This relates Minimum value is 0. Maximum is 168 hours
to the media part of the call and excludes time spent on (1 week). Can also be a profile. Default is
signaling to setup and tear down the call. If 0 then this 5. N/A if Initiate Calls is disabled. Metric
value indicates that the call is terminated immediately after is ms,sec, min and hours with sec as the
being established and that no RTP media is exchanged. default.
If the remote endpoint is a foreign SIP UA it may not be
possible to prevent it sending some RTP traffic before the
call is torn down.
Enable AMR Level If enabled, the call will cycle through the Bit Rate Level Enabled/Disabled. Default is Disabled.
Changes List assigned to the Stream Profile, using the order
determined by the following fields.
Change Level Mode Determines how the call will cycle through the list of Bit Either "Level Change List" or "Variable
Rate Levels. Level Change". Default is "Level Change
List".
Level Change List A list of level changes that should happen to the Bit Rate Mandatory, if Enable AMR Level Changes
Level List during a call. is enabled, and Change Level Mode is
"Level Change List"
Variable Level Change A profile that can be configured to configure the order of Mandatory, if Enable AMR Level Changes
the levels that should be applied to the Bit Rate Level List is enabled, and Change Level Mode is
during a call. "Variable Level Change"
Interval Between Change The Interval between each level change during a call. Can be value in the range 0 - 3,600,000
(ms). It can also be a profile with min and
max values within this range. Default is 40
indicating no delay. Supported metrics are
ms, sec and min with ms as the default.
Use 100rel PRACK The 100rel PRACK is a SIP option defined in RFC 3262. Enabled/Disabled. Default is Disabled.
It is a PRovisional ACKnowledgement by a calling party
to a provisional response. The 100rel PRACK option is
available as an option for the VoIP UA and UAS.
Use Session Timer The session timer is a SIP option defined in RFC 4028. Enabled/Disabled. Default is disabled.
If enabled, a session timer is negotiated during the call
setup. The session is renewed by either sending a SIP
UPDATE or re-INVITE during the call. Available as an
option for the VoIP UA and UAS.
Session Expires Timer The session expiration time to be proposed by a VoIP UA Integer or profile field with value between
in any call. This field is only available if the Session Timer 1 and 3,600 seconds. Supported units are
option is enabled. seconds and minutes. Default value is 300
with default unit in seconds.
Initial Call Delay A delay which can be applied before any calls are initiated Optional. Default is 0. Supported metrics
by the UA. are ms, sec, min and hour with ms as the
default. Can also be a profile.
Configure Passive As described in Settings Common to Multiple Applications, Default is Disabled. Configure Passive
Analysis Additional Configuration, Passive Analysis. If enabled, Analysis and Latency Stats are mutually
allows configuration of the following two parameters. exclusive and cannot both be enabled
simultaneously for the same B2B VoIP UA.
Enable Normal/Fine As described in Settings Common to Multiple Applications, Default is Normal statistics enabled and
Statistics Additional Configuration. Fine statistics disabled.
Enable Latency Statistics Specifies whether or not latency statistics are available for Default disabled. Latency statistics may be
this VoIP B2B UA. enabled if all the following are true:
• UA is configured to initiate calls.
• The stream profile must be configured
for RTP receive.
• Passive Analysis is not configured.
Configure Passive Analysis and Latency
Stats are mutually exclusive and cannot
both be enabled simultaneously for the
same VoIP B2B UA
Analyse Media Type Indicate the type of Media to be Analysed. Voice, Video. Default is Voice.
Playout Jitter Buffer Delay The delay before received RTP packets are considered Integer in the range 0 to 65535 ms.
played. If Passive Analysis is enabled, it accepts the an Available units are ms and sec . Default
input from a Jitter buffer. TeraVM uses a Jitter Buffer is 40ms for all media types. Available if
Emulator which emulates jitter buffers such as Set Top Configure Passive Analysis is enabled.
Boxes used to compensate for network jitter.
Maximum Jitter Buffer Maximum size of the jitter buffer. Integer in the range 0 to 65535 ms.
Size. Available units are ms and sec .The value
must be >= to the value of Playout Jitter
Buffer. Default value is 80ms for all media
types.
Video Codec Used to select the expected video codec of the video Must be chosen from one of the following
stream for analysis. There is no validation that the codec's : Static JPEG MPEG H.261 H.263
selected value matches the actual video stream received H.263+ H.264 MPEG-4 VC-1 Available if
or indeed that a video stream will be received. Configure Passive Analysis is enabled
and Analyse Media Type is "Video".
Analyse MPEG2TS ES Allows passive analysis on the MPEG2-TS packets Enabled/Disabled. Default is Disabled.
embedded in the RTP stream. Available if Configure Passive Analysis
is enabled and Analyse Media Type is
"Video.
Auto determine ES PID TeraVM will determine the appropriate PID(s) from the Enabled/Disabled. Default is enabled.
incoming stream to analyze. Available if Analyse MPEG2-TS is
enabled.
Video ES PID PID of the video elementary stream to be analysed. Integer value. Min is 16 and Max is
This allows the functionality for detecting the PID to be 8192. No Default. Only available if Auto
overridden. Determine ES PID is disabled.
Enable Passive Analysis Enables TeraVM to collect passive analysis stats. Enabled/Disabled. Default is enabled. Only
Statistic available if Configure Passive Analysis is
enabled.
Name Unique name identifying the VoIP External SIP Proxy Mandatory. String value between 1 and
application. 255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP External Host. Mandatory. No default.
hosts which the server will use to access the SUT.
SIP Port Well known port for UA to listen for SIP requests. Integer value between 1 and 65535.
Default is 5060.
SIP Domain Name Domain name that is, shenick.com. IPv4 address or string value between 3
and 32 characters in length. Mandatory. No
default.
The External SIP Proxy Properties dialog enables you to configure a list of string parameter/value
pairings which describe how the external server may have been configured to operate. These properties are
informational only and can prove useful as a means of keeping track of the test environment.
To enter a property/Name value pair, click on the <Add> button on this page, and the Add Property Value
dialog is displayed:
Dual Hosted VoIP tests in TeraVM are provided by a TeraVM Dual Hosted VoIP User Agent (UA).
The TeraVM Dual Hosted VoIP UA provides most of the capabilities of a Single Host VoIP UA , including the
following functionality:
• SIP Registration
However, the Dual Hosted VoIP UA differs from the existing VoIP UA in how it delivers this functionality:
• SIP Registration
The Dual Hosted VoIP application allows the possibility of registering with either an IPv4 or an IPv6
external SIP proxy. However, during registration, regardless of the IP version of the external SIP proxy,
both the IPv4 and the IPv6 addresses will be included in the Contact Details registered with the external
SIP proxy. This allows the Dual Hosted VoIP UA accept calls from either IPv4 or IPv6 UA's. Registration
is not optional for the Dual Hosted VoIP UA.
The Dual Hosted VoIP application accepts calls from either IPv4 or IPv6 UA(s), however, as with the
VoIP UA, it will only ever accept or initiate one call at a time.
The Dual Hosted VoIP application allows the initiation of calls via an IPv4 or an IPv6 SIP proxy. The
actual Proxy will be selected within the application. No dependency will exist between the IP version of
the SIP proxy chosen for registration and the IP version of the SIP proxy chosen for initiating calls.
Provisioning an External SIP proxy is described previously in this topic, in Section 16 - VoIP Applications.
Note
Other applications, such as DDoS, are prevented from selecting a Dual Hosted application as a server
or remote application.
Dual Hosted VoIP also supports B2B Mode UA functionality to allows multiple VoIP UA's to initiate or accept
calls as a single VoIP subscriber. If you wish to use VoIP in B2B mode, then you must select a Dual Hosted
VoIP UA (B2B Mode) application.
A single hosted VoIP UA requires a TeraVM VoIP UA Server or an external SIP proxy as its server. If a
TeraVM UA Server is selected, then no registration can take place and the UAS just acts as a termination
point for calls from the UA. If an external SIP proxy is selected, the UA can optionally choose to register with
the selected SIP proxy. The VoIP UA can also be optionally configured to initiate calls.
The Dual Hosted UA differs from the VoIP UA in that it requires an IPv4 and an IPv6 SIP proxy. Either Proxy
can be used for Registration and initiating calls - you specifies which Proxy is to be used for Registration
and which Proxy is to be used for making calls. Note that both IPv4 and IPv6 SIP proxies are required
even if you chooses that both calls and registrations use the same IP version. A Dual Hosted UA requires
compulsory registration, therefore the selection of a VoIP UAS is not required.
The following dialog is displayed when provisioning a Dual Hosted VoIP UA:
The following configuration steps are required to provision a Dual Hosted VoIP UA:
• Application Details
• General Details
• Call Details
• Additional Configuration
Note
The number of Dual Hosted VoIP clients (and their associated usernames) should be known before
creating a VoIP Call List to be used by this application.
Note
The "batching" of Dual Hosted VoIP applications (that is, "Single Client Varied Address" or "Multiple
Clients" modes) is not supported, therefore subnet hosts can not be selected for this application.
No. of Clients Each client to be created has a row created in the Default is 1. 1 - 40, 000 clients can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. on Bulk and Batch Provisioning for more
details on using this field.
Configure As How the Dual Hosted VoIP UA will be provisioned. Default value: Single App per Row.
Enumerated value with the possible values
of:
• Single App per Row
• Scaled Entity - when selected, also allows
scalable fields in the General Details
dialog.
Mandatory
Name Unique name identifying the dual hosted VoIP UA client. Mandatory. String value between 1 and
128 characters in length. No Default.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
IPv4 Host IPv4 host which the application will use to access the Mandatory. Direct Virtual Host, Indirect
SUT for any IPv4 communication. Allows specified scaled Virtual Host. No default. Must be an IPv4
hosts. Host. It can be PPPoE enabled, or DHCP
host. Must be on same card as the IPv6
host.
IPv6 Host IPv6 which the application will use to access the SUT for Mandatory. Direct Virtual Host, Indirect
any IPv6 communication. Allows specified scaled hosts. Virtual Host. No default. Must be an IPv6
host. It can be PPPoE enabled, or DHCP
host. Must be on the same card as the
IPv4 host.
Transport Type Transport protocol to be used. UDP, TCP or TLS. Default is UDP. If TCP
is selected, Advanced TCP Characteristics
can be configured by clicking on the
Advanced TCP button in this step. Refer
to the chapter on TCP Configuration.
• If the SIP Port value is 5060, and this
field is changed to TLS, then the SIP
Port will be changed to 5061.
• If the SIP Port value is 5061, and this
field is changed to either UDP or TCP,
SIP Port Well known port for UA to listen for SIP requests. Default is 5060. Value must be an integer
Enabling/disabling scaling for this field is allowed if the between 1 and 65535. Mandatory.
application is scaled.
RTP Port Numeric range profile indicating ports to be used for Integer between 2 and 65535. Can also
creating RTP media sessions. RTP ports chosen shall be a profile. Mandatory. No Default. If an
always be even. If RTCP is selected on a call then RTCP integer value is supplied then the value
port is RTP port plus one. must be even. A single port value can also
be supplied. At runtime, this port will be
subject to normal port validation rules.
SIP ToS/DSCP Quality of Service metric for the SIP messages sent by the Integer value between 0 and 255.
Dual Hosted VoIP UA application Mandatory. Default is 0.
RTP ToS/DSCP Quality of Service metric for the media messages sent by Integer value between 0 and 255.
the Dual Hosted VoIP UA application. Media messages Mandatory. Default is 0.
include RTP or RTCP messages.
TCP Characteristics TCP characteristics control the use of certain TCP Optional if Transport Type is TCP. N/A
functionality. If specified they override the TCP otherwise.
Characteristics specified for the Host which the Dual
Hosted VoIP UA resides on.
IPv4 SIP Proxy External IPv4 SIP Proxy with which the UA will Mandatory. No default. Must be an external
communicate with for IPv4 Registration and IPv4 calls. IPv4 application.
IPv6 SIP Proxy External IPv6 SIP proxy with which the UA will Mandatory. No Default. Must be an
communicate with for IPv6 Registration and IPv6 calls. external IPv6 application.
SIP Username Username used in the SIP URI for the calling entity. String value between 1 and 32 characters
Allows the enabling/disabling of scaling for this field if the in length. Combination with SIP Domain
application is scaled. Name must be unique across Dual Hosted
VoIP UA Applications and (single hosted)
VoIP UAs configured to register within the
test group. Mandatory. No default. If bulk
provisioning then Bulk Provisioning icon
SIP Display Name SIP Display Name to be used in the "From:" field. Allows Optional. No default, alphanumeric value
the enabling/disabling of scaling for this field if the between 1 and 32 characters in length.
application is scaled. With the following valid chars: "-.!%*_+`'~"
SIP Domain Name The Domain name that is, shenick.com. String value between 3 and 32 characters
in length. Combination with SIP User Name
must be unique across Dual Hosted VoIP
Applications and (single hosted) VoIP UAs
applications configured to register within
the test group. Mandatory. No Default.
Use SIP Username If enabled, the UA can choose to reuse the SIP User Enabled or disabled. Default is enabled.
Name for the password.
SIP Password This password is used to respond to any Digest String value between 3 and 32 characters
challenges for SIP requests from this client. If this is not in length. Optional. No default. If bulk
set, the SIP request immediately fails if the client receives provisioning enabled then the following
a challenge response. options are available:
• Disable iteration, password won't
Enabling/disabling scaling for this field is allowed if the
change across applications.
application is scaled.
• Password is the same as the user
name.
• Iteration with a certain step
• Assigning password from CSV file.
Register with Server If enabled, the UA must first register with the SIP Proxy Default is Disabled. Enabled/Disabled.
server before starting the test.
Registration SIP Proxy Only available when Register with Server is enabled. Default value of Ipv4 SIP Proxy.
Use Server Interval The UA can choose to use the server registration interval Enabled or Disabled. Default is Enabled.
or specify its own interval. N/A if Register With Server is Disabled.
Registration Interval Interval between registration attempts by the UA. If Minimum value is 1 ms. Maximum value
specified, this defines the expiration interval requested by is 86,400,000 ms (24 hours). Default is
the UA in the expires field in the registration request. The 3,600,000 ms (1 hour). N/A if Use Server
requested expiration interval will always be 60 seconds Interval is Enabled. Can be a profile.
greater then the timer interval to allow registration to occur Allowable metrics are ms, sec, min and
if the registration occurs again. If not specified the UA will hour with min as the default.
attempt to register again within the interval returned by the
server in the registration response.
Enable Received RTP If enabled allows Dual Hosted VoIP UA to check for Enabled/Disabled. Default is enabled.
Timeout inactivity on incoming RTP packets.
Received RTP Timeout Amount of time before not receiving RTP packets is Value between 10 and 60000ms. Allowed
considered a Problem state. metrics are ms, secs. Default value is 300
ms,
Table 8-115. Dual Hosted VoIP UA In/Out Call Details Dialog Fields
Allow UA to Initiate Calls The UA can choose to initiate calls or not. If enabled, this Default is Enabled. Enabled/Disabled.
UA can initiate calls. Specification of other call related properties
are dependent on this setting.
Call SIP Proxy Choose the Proxy to be used to initiate calls. N/A if Allow UA to Initiate Calls is
disabled. Select from previously configured
External IPv4 or IPv6 SIP Proxies. Default
is the IPv6 Proxy.
Called Party Selection Indicates if the application will specify the called party Select required mechanism for specifying
using a VoIP Call List configuration item or a URI. the called party. N/A if Allow UA to Initiate
Calls is disabled Can be set to VoIP Call
List or Call URI. Default is Call URI.
Call List The name of a Call List configured in the VoIP Select required VoIP Call List Configuration
Configuration folder. Provides URIs to be called. Item. N/A if Allow UA to Initiate Calls is
disabled or Called Party Selection is a
URI. No default.
Call Answering Delay Delay in milliseconds before sending a final response Integer between 0 and 30,000. Can also
accepting/rejecting a call. This can be a profile to inject be a profile. Default is 0 meaning no delay.
variability into the delay answering the call. Optional if UA is provisioned along with an
External SIP Proxy. Allowable metrics are
ms and sec with ms as the default.
Busy Ratio Percentage of calls to reject with a busy response. Integer between 0 and 100. Default is 0.
Optional if UA is provisioned along with an
External SIP Proxy.
Allow UA End Call The Dual Hosted VoIP UA can be configured to end an Enabled/Disabled. Default is disabled.
incoming call once the Average Hold Time has expired. Mandatory
Send 100 Trying A Dual Hosted VoIP UA Includes this message in the SIP Enabled/Disabled. Default is Enabled.
responses generated for a successful incoming INVITE Mandatory.
request.
Note
Clients will not maintain the configured BHCA value if either:
• they are on a call when the next call is to be initiated. This can occur if a client in another test
case entry calls this client.
• the previous call has not completed. A 3 second window should be sufficient. This may be the
case if the call answering delay is configured or SIP packets are dropped.
Click the Advanced... button to see the Advanced Call Details. For more information about Advanced Call
Details ,see Section 8.2.8.1.4.2.
The following details are required for the Call Details dialog:
Table 8-117. Dual Hosted VoIP UA Call Details Dialog Fields
Stream Profile The name of a Stream Profile configured in the RTP Choose from the list or add a new profile.
Configuration folder. Refer to Chapter on Configuration.
Mandatory if Allow UA to Initiate calls is
Enabled.
Disable RTP Disables the transmission of RTP data by the Dual Hosted Enabled or Disabled. Default is Disabled.
Transmission VoIP UA. Mandatory.
Enable SRTP Enables the use of SRTP by this UA. Enabled or Disabled. Default is Disabled.
Mandatory.
Generate RTCP Reports Enables or disables the periodic generation of RTCP Enabled or Disabled. Default is Disabled.
reports. Mandatory.
Allow Delay between Calls If selected, then the delay between calls is governed by Enabled or Disabled. Default is Enabled. N/
the BHCA property. A if Allow UA to Initiate Calls is disabled.
BHCA (Busy Hour Call The BHCA is the number of calls to be attempted per Minimum value 1. Maximum is 1,200,000.
Attempts) hour. It is controlled by the number of clients and the N/A if Allow UA to Initiate Calls is
average hold time. This field is enabled only if delays are disabled. N/A if Allow Delay Between
allowed between calls. Calls is disabled. Mandatory otherwise.
Validation rule as in VoIP UA, that Max
AHT + 3sec <= 3600/BHCA.
Average Hold Time The length of time for the call in milliseconds. This relates Minimum value is 0. Maximum is 168 hours
to the media part of the call and excludes time spent on (1 week). Can also be a profile. Default
signaling to setup and tear down the call. If 0 then this is 5. N/A if Allow UA to Initiate Calls is
value indicates that the call is terminated immediately after disabled. Metric is ms,sec, min and hours
being established and that no RTP media is exchanged. with sec as the default. Validation rule as
If the remote endpoint is a foreign SIP UA it may not be in VoIP UA, that Max AHT + 3sec <= 3600/
possible to prevent it sending some RTP traffic before the BHCA.
call is torn down.
Enable AMR Level If enabled, the call will cycle through the Bit Rate Level Enabled/Disabled. Default is Disabled.
Changes List assigned to the Stream Profile, using the order
determined by the following fields.
Change Level Mode Determines how the call will cycle through the list of Bit Either "Level Change List" or "Variable
Rate Levels. Level Change". Default is "Level Change
List".
Level Change List A list of level changes that should happen to the Bit Rate Mandatory, if Enable AMR Level Changes
Level List during a call. is enabled, and Change Level Mode is
"Level Change List"
Variable Level Change A profile that can be configured to configure the order of Mandatory, if Enable AMR Level Changes
the levels that should be applied to the Bit Rate Level List is enabled, and Change Level Mode is
during a call. "Variable Level Change"
Interval Between Change The Interval between each level change during a call. Can be value in the range 0 - 3,600,000
(ms). It can also be a profile with min and
max values within this range. Default is 40
indicating no delay. Supported metrics are
ms, sec and min with ms as the default.
The following tables describe the Advanced Call Details dialog options for the SIP and the DTMF tab:
Table 8-119. Dual Hosted VoIP - Advanced SIP Options Dialog Fields
Use 100rel PRACK The 100rel PRACK is a SIP option defined in RFC 3262. Enabled/Disabled. Default is Disabled.
It is a PRovisional ACKnowledgement by a calling party
to a provisional response. The 100rel PRACK option is
available as an option for the Dual Hosted VoIP UA.
Use Session Timer The session timer is a SIP option defined in RFC 4028. Enabled/Disabled. Default is disabled.
If enabled, a session timer is negotiated during the call
setup. The session is renewed by either sending a SIP
UPDATE or re-INVITE during the call. Available as an
option for the Dual Hosted VoIP UA.
Session Expires Timer The session expiration time to be proposed by a VoIP UA Integer or profile field with value between
in any call. This field is only available if the Session Timer 1 and 3,600 seconds. Supported units are
option is enabled. seconds and minutes. Default value is 300
with default unit in seconds.
Once Generate Events is selected the DTMF tab requires the following information:
Table 8-120. Advanced Call Details - DTMF
DTMF Mode The DTMF Mode to be used, as selected Mandatory value The following options are
from the drop-down list box. available:
• Generate Events - select to generate
defined DTMF events.
• Not Supported - select if DTMF is not
being used (default value).
• Supported - select to support but
not to send DTMF events in SIP
messages.
DTMF Events List of DTMF Events. The DTMF Mandatory when DTMF Mode Generate
Events is scalable, for more information events is selected.
about the DTMF Event Scaler, see
Default value: Null.
Section 8.2.7.2.5.2.2.1.
When the DTMF is Not Scaled, the
following value checks are made:
Alphanumeric (0-9,A-D) and the following
characters / "*" / "#" / "Flash". All events
must be comma separated.
When the DTMF is Scaled, the following
value checks are made: 0-9 and a final #.
An optional delay in milliseconds can be
specified between any type of brackets (),
[], {} right after each event.
Initial Delay Initial delay before sending 1st DTMF Mandatory when DTMF Mode Generate
event on a call. A longer initial delay is events is selected. Default value: 3
required before 1st seconds. Numeric value: 100ms - 60
minutes.
event should be sent.
Inter Event Delay Delay between each DTMF Mandatory when DTMF Mode Generate
events is selected. Default value: 300
milliseconds. Numeric value: 100ms - 60
minutes
Event Duration Duration of time to generate RTP DTMF Mandatory when DTMF Mode Generate
messages for each DTMF event. events is selected. Default value: 300
milliseconds. Numeric value: 100ms - 8
seconds.
Event Volume Value for volume field in a DTMF message. Mandatory when DTMF Mode Generate
events is selected. Default value: 2
seconds. Numeric value: 0 - 63
Note
Passive Analysis requires the purchase of a special software licence. If that licence has not been
purchased, and you try to enable the Configure Passive Analysis checkbox, a pop-up dialog
appears to advise you that one is required.
Start After Delay in milliseconds before the SIP UA starts. Once this Optional. Measured in milliseconds,
timer expires the UA is available to accept calls and if seconds or minutes. If blank then TeraVM
configured will attempt to register. Optional. If blank then will work out an appropriate value based
the controller will work out an appropriate value based on on the number of client applications
the number of clients configured in the test group. configured in the test group.
Stop After Number of seconds SIP UA will initiate calls/registrations Optional. Can have a value in the range
or accept incoming calls. 1 - 86400 (secs). If it is a profile it can
have min and max values within this
range. Blank means it will run forever or
until stopped manually. Default is Blank.
Supported metrics are secs, min and hour
with secs as the default.
Initial Call Delay A delay which can be applied before any calls are Optional. Default is 0. Supported metrics
initiated by the UA. This delay is applied once all SIP are ms, sec, min and hour with ms as the
UAs have started and completed a registration attempt, default. Can also be a profile.
thus ensuring that Dual Hosted VoIP Applications have
registered their location, allowing calls to be routed to
them.
Configure Passive Allows the configuration of the client for Passive Analysis. Enabled/Disbaled. Default is disabled.
Analysis Refer to the section on Passive Analysis for more details.
Passive Analysis and Latency Stats are
mutually exclusive and cannot both be
enabled simultaneously for the same Dual
Hosted VoIP UA. Passive Analysis may be
enabled if the following are true:
• The UA is configured to initiate calls
• The stream profile is configured for
RTP receive or full duplex.
Aggregate Group (See The Aggregate Group to which this Dual Hosted VoIP UA Optional. Select a group from the list of
section on Statistical Application belongs for statistical reporting purposes. previously configured groups with which
Grouping) to associate this application or click on the
<Add> button to add a new group. (Refer
to the section on Statistical Grouping in
the Test Results topic for more details.)
Enable Normal/Fine TeraVM will gather normal and/or fine statistics. "Fine" Enabled by ticking the checkbox or
Statistics statistics are collected at very short intervals, (every disabled by leaving the checkbox empty.
second by default, though the interval is configurable) Default is ticked to enable Normal statistics
and can be enabled/disabled while a test is running. and unticked to disable Fine statistics.
Fine statistics can only be enabled on up to 60 entities
at any given time. "Normal" statistics can be enabled
for all Dual Hosted VoIP UA Applications at specified
intervals. Normal statistics will be collected at longer
intervals, (30s, 1m, 5m - 30s by default). Note that Normal
statistics are "all-or-nothing" - either all Dual Hosted VoIP
UA Applications are collecting Normal statistics at the
specified interval, or none are.
Latency Stats Whether or not normal stats are available for this Dual Enabled or Disabled. Default disabled.
Stack VoIP UA Latency stats may be enabled if all the
following are true:
• UA is configured to initiate calls
• The stream profile is configured for
RTP receive.
Passive Analysis and Latency Stats are
mutually exclusive and cannot both be
enabled simultaneously for the same Dual
Hosted VoIP UA.
Analyse Media Type Indicate the type of Media to be Analysed. Select from: voice, video, voice and video.
Default is voice. When voice and video is
selected, the MoS statistics are enabled for
both streams at the same time.
Playout Jitter Buffer Delay The delay before received RTP packets are considered Integer in the range 0 to 65535 ms.
played. If Passive Analysis is enabled, it accepts the an Available units are ms and sec . Default
input from a Jitter buffer. TeraVM uses a Jitter Buffer is 40ms for all media types. Available if
Emulator which emulates jitter buffers such as Set Top Configure Passive Analysis is enabled.
Boxes used to compensate for network jitter.
Maximum Jitter Buffer Maximum size of the jitter buffer. Integer in the range 0 to 65535 ms.
Size. Available units are ms and sec .The value
must be >= to the value of Playout Jitter
Buffer. Default value is 80ms for all media
types.
Video Codec Used to select the expected video codec of the video Must be chosen from one of the following
stream for analysis. There is no validation that the codec's : Static JPEG MPEG H.261 H.263
selected value matches the actual video stream received H.263+ H.264 MPEG-4 VC-1 Available if
or indeed that a video stream will be received. Configure Passive Analysis is enabled
and Analyse Media Type is "Video".
Analyse MPEG2TS ES Allows passive analysis on the MPEG2-TS packets Enabled/Disabled. Default is Disabled.
embedded in the RTP stream. Available if Configure Passive Analysis
is enabled and Analyse Media Type is
"Video".
Auto determine ES PID TeraVM will determine the appropriate PID(s) from the Enabled/Disabled. Default is enabled.
incoming stream to analyze. Available if Analyse MPEG2-TS is
enabled.
Video ES PID PID of the video elementary stream to be analysed. Integer value. Min is 16 and Max is
This allows the functionality for detecting the PID to be 8192. No Default. Only available if Auto
overridden. Determine ES PID is disabled.
Enable Passive Analysis Enables TeraVM to collect passive analysis stats. Enabled/Disabled. Default is enabled. Only
Statistic available if Configure Passive Analysis is
enabled.
• The SIP Port field is not applicable. This value is set on the host.
• A VoIP UA (B2B Mode) application cannot use TCP as a transport type for SIP calls.
• Selected hosts must have the B2BUA flag enabled and cannot be subnet hosts.
• Only one VoIP UA (B2B Mode) using a given host can perform SIP registration. This will be validated at
runtime.
• A Register with Server field is available in Dual Hosted UA (B2B Mode) to allow this application to
enable or disable SIP Registration. In a Dual Hosted UA (B2B Mode), only ONE application among all
bound to the same B2BUA enabled host should be able to send a SIP register. Therefore, the rest need
to have it disabled.
The following dialog is displayed when provisioning a Dual Hosted VoIP B2B UA:
The following configuration steps are required to provision a Dual Hosted VoIP B2B UA:
• Application Details
• General Details
• In/Out Call Setup
• Call Details
• Additional Configuration
• Passive Analysis (Only available if Passive Analysis is enabled)
Note
The number of Dual Hosted B2B VoIP clients (and their associated usernames) should be known
before creating a VoIP Call List to be used by this application.
Note
The "batching" of Dual Hosted VoIP B2B applications (that is, "Single Client Varied Address" or
"Multiple Clients" modes) is not supported, therefore subnet hosts cannot be selected for this
application.
No. of Clients Each client to be created has a row created in the Default is 1. 1 - 40, 000 clients can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. on Bulk and Batch Provisioning for more
details on using this field.
Name Unique name identifying the dual hosted VoIP B2B UA Mandatory. String value between 1 and
client. 128 characters in length. No Default.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
IPv4 Host IPv4 host which the application will use to access the SUT Mandatory. Direct Virtual Host, Indirect
for any IPv4 communication. Virtual Host. No default. Must be an IPv4
Host. It can be PPPoE enabled, or DHCP
host. Must be on same card as the IPv6
host.
IPv6 Host IPv6 which the application will use to access the SUT for Mandatory. Direct Virtual Host, Indirect
any IPv6 communication. Virtual Host. No default. Must be an IPv6
host. It can be PPPoE enabled, or DHCP
host. Must be on the same card as the
IPv4 host.
RTP Port Numeric range profile indicating ports to be used for Integer between 2 and 65535. Can also
creating RTP media sessions. RTP ports chosen shall be a profile. Mandatory. No Default. If an
always be even. If RTCP is selected on a call then RTCP integer value is supplied then the value
port is RTP port plus one. must be even. A single port value can also
be supplied. At runtime, this port will be
subject to normal port validation rules.
SIP ToS/DSCP Quality of Service metric for the SIP messages sent by the Integer value between 0 and 255.
Dual Hosted VoIP UA application Mandatory. Default is 0.
RTP ToS/DSCP Quality of Service metric for the media messages sent by Integer value between 0 and 255.
the Dual Hosted VoIP UA application. Media messages Mandatory. Default is 0.
include RTP or RTCP messages.
IPv4 SIP Proxy External IPv4 SIP Proxy with which the UA will Mandatory. No default. Must be an external
communicate with for IPv4 Registration and IPv4 calls. IPv4 application.
IPv6 SIP Proxy External IPv6 SIP proxy with which the UA will Mandatory. No Default. Must be an
communicate with for IPv6 Registration and IPv6 calls. external IPv6 application.
SIP Username Username used in the SIP URI for the calling entity. String value between 1 and 32 characters
in length. Combination with SIP Domain
Name must be unique across Dual Hosted
VoIP UA Applications and (single hosted)
VoIP UAs configured to register within the
test group. Mandatory. No default. If bulk
provisioning then Bulk Provisioning icon
button will be available offering standard
increment and import from CSV file.
SIP Domain Name The Domain name that is, shenick.com. String value between 3 and 32 characters
in length. Combination with SIP User Name
must be unique across Dual Hosted VoIP
Applications and (single hosted) VoIP UAs
applications configured to register within
the test group. Mandatory. No Default.
Use SIP Username If enabled, the UA can choose to reuse the SIP User Enabled or disabled. Default is enabled.
Name for the password.
Password This password is used to respond to any Digest String value between 3 and 32 characters
challenges for SIP requests from this client. If this is not in length. Optional. No default. If bulk
set, the SIP request immediately fails if the client receives provisioning enabled then the following
a challenge response. options are available:
• Disable iteration, password won't
change across applications.
• Password is the same as the user
name.
• Iteration with a certain step
• Assigning password from CSV file.
Register with Server If enabled, the UA must first register with the SIP Proxy Default is Disabled. Enabled/Disabled.
server before starting the test.
Registration SIP Proxy Only available when Register with Server is enabled. Default value of Ipv4 SIP Proxy.
Use Server Interval The UA can choose to use the server registration interval Enabled or Disabled. Default is Enabled.
or specify its own interval. N/A if Register With Server is Disabled.
Registration Interval Interval between registration attempts by the UA. If Minimum value is 1 ms. Maximum value
specified, this defines the expiration interval requested by is 86,400,000 ms (24 hours). Default is
the UA in the expires field in the registration request. The 3,600,000 ms (1 hour). N/A if Use Server
requested expiration interval will always be 60 seconds Interval is Enabled. Can be a profile.
greater then the timer interval to allow registration to occur Allowable metrics are ms, sec, min and
if the registration occurs again. If not specified the UA will hour with min as the default.
attempt to register again within the interval returned by the
server in the registration response.
Enable Received RTP If enabled allows Dual Hosted VoIP UA to check for Enabled/Disabled. Default is enabled.
Timeout inactivity on incoming RTP packets.
Received RTP Timeout Amount of time before not receiving RTP packets is Value between 10 and 60000ms. Allowed
considered a Problem state. metrics are ms, secs. Default value is 300
ms,
Allow UA to Initiate Calls The UA can choose to initiate calls or not. If enabled, this Default is Enabled. Enabled/Disabled.
UA can initiate calls. Specification of other call related properties
are dependent on this setting.
Call SIP Proxy Choose the Proxy to be used to initiate calls. N/A if Allow UA to Initiate Calls is
disabled. Select from previously configured
External IPv4 or IPv6 SIP Proxies. Default
is the IPv6 Proxy.
Called Party Selection Indicates if the application will specify the called party Select required mechanism for specifying
using a VoIP Call List configuration item or a URI. the called party. N/A if Allow UA to Initiate
Calls is disabled Can be set to VoIP Call
List or Call URI. Default is Call URI.
Call List The name of a Call List configured in the VoIP Select required VoIP Call List Configuration
Configuration folder. Provides URIs to be called. Item. N/A if Allow UA to Initiate Calls is
disabled or Called Party Selection is a
URI. No default.
Call Answering Delay Delay in milliseconds before sending a final response Integer between 0 and 30,000. Can also
accepting/rejecting a call. This can be a profile to inject be a profile. Default is 0 meaning no delay.
variability into the delay answering the call. Optional if UA is provisioned along with an
External SIP Proxy. Allowable metrics are
ms and sec with ms as the default.
Busy Ratio Percentage of calls to reject with a busy response. Integer between 0 and 100. Default is 0.
Optional if UA is provisioned along with an
External SIP Proxy.
Allow UA End Call The Dual Hosted VoIP UA can be configured to end an Enabled/Disabled. Default is disabled.
incoming call once the Average Hold Time has expired. Mandatory
Send 100 Trying A Dual Hosted VoIP UA Includes this message in the SIP Enabled/Disabled. Default is Enabled.
responses generated for a successful incoming INVITE Mandatory.
request.
The BHCA (Busy Hour Call Attempts) is an important value for a VoIP application. It controls the call rate
that is, the number of calls attempted per hour. This value is dependent on the number of clients and the
average hold time for a call and you is not allowed to enter a value that cannot be achieved based on the
configured client count and average hold time. A simple formula to help with this is:
(Maximum Average Hold Time rounded up to nearest second + 3 seconds) <= (3600 * client count/ BHCA)
Therefore, a hold time of 0 and a client count of 50 means the maximum value for BHCA is 60,000. If a
BHCA fig of 120,000 is required then the number of clients should be increased to 100.
Note
Clients will not maintain the configured BHCA value if either:
• they are on a call when the next call is to be initiated. This can occur if a client in another test
case entry calls this client.
• the previous call has not completed. A 3 second window should be sufficient. This may be the
case if the call answering delay is configured or SIP packets are dropped.
Stream Profile The name of a Stream Profile configured in the RTP Choose from the list or add a new profile.
Configuration folder. Refer to Chapter on Configuration.
Mandatory if Allow UA to Initiate Calls.
Disable RTP Disables the transmission of RTP data by the Dual Hosted Enabled or Disabled. Default is Disabled.
Transmission VoIP B2B UA. Mandatory.
Generate RTCP Reports Enables or disables the periodic generation of RTCP Enabled or Disabled. Default is Disabled.
reports. Mandatory.
Allow Delay between Calls If selected, then the delay between calls is governed by Enabled or Disabled. Default is Enabled. N/
the BHCA property. A if Allow UA to Initiate Calls is disabled.
BHCA (Busy Hour Call The BHCA is the number of calls to be attempted per Minimum value 1. Maximum is 1,200,000.
Attempts) hour. It is controlled by the number of clients and the N/A if Allow UA to Initiate Calls is
average hold time. This field is enabled only if delays are disabled. N/A if Allow Delay Between
allowed between calls. Calls is disabled. Mandatory otherwise.
Validation rule as in VoIP UA, that Max
AHT + 3sec <= 3600/BHCA.
Average Hold Time The length of time for the call in milliseconds. This relates Minimum value is 0. Maximum is 168 hours
to the media part of the call and excludes time spent on (1 week). Can also be a profile. Default
signaling to setup and tear down the call. If 0 then this is 5. N/A if Allow UA to Initiate Calls is
value indicates that the call is terminated immediately after disabled. Metric is ms,sec, min and hours
being established and that no RTP media is exchanged. with sec as the default. Validation rule as
If the remote endpoint is a foreign SIP UA it may not be in VoIP UA, that Max AHT + 3sec <= 3600/
possible to prevent it sending some RTP traffic before the BHCA.
call is torn down.
Enable AMR Level If enabled, the call will cycle through the Bit Rate Level Enabled/Disabled. Default is Disabled.
Changes List assigned to the Stream Profile, using the order
determined by the following fields.
Change Level Mode Determines how the call will cycle through the list of Bit Either "Level Change List" or "Variable
Rate Levels. Level Change". Default is "Level Change
List".
Level Change List A list of level changes that should happen to the Bit Rate Mandatory, if Enable AMR Level Changes
Level List during a call. is enabled, and Change Level Mode is
"Level Change List"
Variable Level Change A profile that can be configured to configure the order of Mandatory, if Enable AMR Level Changes
the levels that should be applied to the Bit Rate Level List is enabled, and Change Level Mode is
during a call. "Variable Level Change"
Interval Between Change The Interval between each level change during a call. Can be value in the range 0 - 3,600,000
(ms). It can also be a profile with min and
max values within this range. Default is 40
indicating no delay. Supported metrics are
ms, sec and min with ms as the default.
Table 8-131. Dual Hosted VoIP B2B - Advanced SIP Options Dialog Fields
Use 100rel PRACK The 100rel PRACK is a SIP option defined in RFC 3262. Enabled/Disabled. Default is Disabled.
It is a PRovisional ACKnowledgement by a calling party
to a provisional response. The 100rel PRACK option is
available as an option for the Dual Hosted VoIP UA.
Use Session Timer The session timer is a SIP option defined in RFC 4028. Enabled/Disabled. Default is disabled.
If enabled, a session timer is negotiated during the call
setup. The session is renewed by either sending a SIP
UPDATE or re-INVITE during the call. Available as an
option for the Dual Hosted VoIP UA.
Session Expires Timer The session expiration time to be proposed by a VoIP UA Integer or profile field with value between
in any call. This field is only available if the Session Timer 1 and 3,600 seconds. Supported units are
option is enabled. seconds and minutes. Default value is 300
with default unit in seconds.
Figure 8-164. Dual Hosted VoIP B2B Client Application - Additional Details
Note
Passive Analysis requires the purchase of a special software licence. If that licence has not been
purchased, and you try to enable the Configure Passive Analysis checkbox, a pop-up dialog
appears to advise you that one is required.
Start After Delay in milliseconds before the SIP UA starts. Once this Optional. Measured in milliseconds,
timer expires the UA is available to accept calls and if seconds or minutes. If blank then TeraVM
configured will attempt to register. Optional. If blank then will work out an appropriate value based
the controller will work out an appropriate value based on on the number of client applications
the number of clients configured in the test group. configured in the test group. .
Stop After Number of seconds SIP UA will initiate calls/registrations Optional. Can have a value in the range
or accept incoming calls. 1 - 86400 (secs). If it is a profile it can
have min and max values within this
range. Blank means it will run forever or
until stopped manually. Default is Blank.
Supported metrics are sec, min and hour
with min as the default.
Initial Call Delay A delay which can be applied before any calls are Optional. Default is 0. Supported metrics
initiated by the UA. This delay is applied once all SIP are ms, sec, min and hour with ms as the
UAs have started and completed a registration attempt, default. Can also be a profile.
thus ensuring that Dual Hosted VoIP Applications have
registered their location, allowing calls to be routed to
them.
Configure Passive Allows the configuration of the client for Passive Analysis. Enabled or Disabled. Default is Disabled.
Analysis Refer to the section on Passive Analysis for more details. Configure Passive Analysis and Latency
Stats are mutually exclusive and cannot
both be enabled simultaneously for the
same Dual Hosted B2B VoIP UA.
Aggregate Group (See The Aggregate Group to which this Dual Hosted VoIP UA Optional. Select a group from the list of
section on Statistical Application belongs for statistical reporting purposes. previously configured groups with which
Grouping) to associate this application or click on the
<Add> button to add a new group. (Refer
to the section on Statistical Grouping in
the Test Results topic for more details.)
Table 8-133. Dual Hosted VoIP B2B Application - Advanced Additional Configuration
Enable Normal/Fine TeraVM will gather normal and/or fine statistics. "Fine" Enabled by ticking the checkbox or
Statistics statistics are collected at very short intervals, (every disabled by leaving the checkbox empty.
second by default, though the interval is configurable) Default is ticked to enable Normal statistics
and can be enabled/disabled while a test is running. and unticked to disable Fine statistics.
Fine statistics can only be enabled on up to 60 entities
at any given time. "Normal" statistics can be enabled
for all Dual Hosted VoIP UA Applications at specified
intervals. Normal statistics will be collected at longer
intervals, (30s, 1m, 5m - 30s by default). Note that Normal
statistics are "all-or-nothing" - either all Dual Hosted VoIP
UA Applications are collecting Normal statistics at the
specified interval, or none are.
Latency Stats Whether or not normal stats are available for this Dual Enabled or Disabled. Default disabled.
Hosted B2B VoIP UA Latency statistics may be enabled if all the
following are true:
• 1) UA is configured to initiate calls.
• 2) The stream profile must be
configured for RTP receive.
• 2) The stream profile must be
configured for RTP receive.
Configure Passive Analysis and Latency
Stats are mutually exclusive and cannot
both be enabled simultaneously for the
same Dual Hosted B2B VoIP UA
Analyse Media Type Indicate the type of Media to be Analysed. Voice, Video. Default is Voice.
Playout Jitter Buffer Delay The delay before received RTP packets are considered Integer in the range 0 to 65535 ms.
played. If Passive Analysis is enabled, it accepts the an Available units are ms and sec . Default
Maximum Jitter Buffer Maximum size of the jitter buffer. Integer in the range 0 to 65535 ms.
Size. Available units are ms and sec .The value
must be >= to the value of Playout Jitter
Buffer. Default value is 80ms for all media
types.
Video Codec Used to select the expected video codec of the video Must be chosen from one of the following
stream for analysis. There is no validation that the codec's : Static JPEG MPEG H.261 H.263
selected value matches the actual video stream received H.263+ H.264 MPEG-4 VC-1 Available if
or indeed that a video stream will be received. Configure Passive Analysis is enabled
and Analyse Media Type is "Video".
Analyse MPEG2TS ES Allows passive analysis on the MPEG2-TS packets Enabled/Disabled. Default is Disabled.
embedded in the RTP stream. Available if Configure Passive Analysis
is enabled and Analyse Media Type is
"Video".
Auto determine ES PID TeraVM will determine the appropriate PID(s) from the Enabled/Disabled. Default is enabled.
incoming stream to analyze. Available if Analyse MPEG2-TS is
enabled.
Video ES PID PID of the video elementary stream to be analysed. Integer value. Min is 16 and Max is
This allows the functionality for detecting the PID to be 8192. No Default. Only available if Auto
overridden. Determine ES PID is disabled.
Enable Passive Analysis Enables TeraVM to collect passive analysis stats. Enabled/Disabled. Default is enabled. Only
Statistic available if Configure Passive Analysis is
enabled.
8.2.9. RTSP
The Real Time Streaming Protocol (RTSP) is a standard defined for efficient broadcast of audiovisual data
to large groups. The data can be live video feeds or stored clips. It is a control protocol used to negotiate
such things as the underlying transport mechanism for example UDP (multicast, unicast) or TCP, the
delivery mechanism for example RTP and so on. RTSP does not deliver the data.
RTSP is the signalling protocol used to negotiate the setting up of streams containing the video/audio
between the client and server. Real-time Transport Protocol (RTP) is used to deliver those streams from the
server to the client. The sister protocol of RTP Real-time Control Protocol (RTCP) can be used by the clients
and servers to provide on-going reports on the status of the streams.
An RTSP Client can operate in an IMS mode when paired with an appropriate VoIP UA application.
To achieve this it is necessary to have the appropriate licence, to enable IMS mode on the Test Agent
Configuration and to ensure both the VoIP UA and RTSP Client use the same username.
An RTSP Client can be configured to stream data based on a customer selecting videos via a Verizon FiOS
TV Interactive Media Guide (IMG) service that they can access from their set-top box (STB). The STB uses
HTTP to access the IMG and RTSP to download the media. TeraVM emulates the IMG and the RTSP
applications. TeraVM RTSP records and displays a set of response codes as real-time statistics for session
analysis.
There are four types of RTSP applications which can be provisioned in TeraVM. These are:
• RTSP Client
• RTSP Server
Note
It is recommended that RTSP Server applications are set up first of all, as you will be required to
select these during the RTSP Client application provisioning process.
The RTSP Server will create a TCP listener on a specified TCP port on a host. When a TCP connection is
received, the server will allocate resources to establish an RTSP session. The initial connection is a control
socket. Once an RTSP session is established the RTSP server will respond to requests sent by the RTSP
client This may include the streaming of RTP media packets to the client. The RTP packets can be streamed
either using UDP or over the TCP control socket.
If you select to add an RTSP Server, the Add New RTSP Server Wizard dialog is displayed.
The steps following are required to provision an RTSP Server application are:
• Application Details
• Server Details
• Additional Configuration
Name Unique name identifying the HTTP server application. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct or Indirect Virtual Host. If
hosts which the server will use to access the SUT. Direct, then IP address must be static.
TCP Port The TCP Port on which the server will listen for TCP Integer value between 0 and 65535.
connections. Default is 554. Advanced TCP
Characteristics can be configured by
clicking on the Advanced TCP button in
this step. Refer to the chapter on TCP
Configuration.
Media Port(s) Range indicating ports to be used for UDP unicast media Integer or numeric profile with values
sessions for sending RTP packets. in the range 0-65535. Default is blank.
If an integer value is chosen it must be
even. If a non-zero integer value specified
then this port must be included in runtime
validation for use of the port by other TCP
applications on this host.
ToS/DiffServ Quality of Service metric for the server application. Mandatory. Integer value between 0 and
255. Default is 0.
Media ToS/DiffServ Quality of Service metric for the UDP packets containing Integer value between 0 and 255.
RTP/RTCP generated by the server. Mandatory. Default is 0.
The following information is required to provision the RTSP Server Application - Server Details.
Table 8-136. RTSP Server Application Server Details
Media Content List A list of one or more pathname/multimedia stream profile Select from a previously configured Media
name mappings. Content List.
Media Stream Duration Method of controlling the stream duration for this server. Options are Indefinite, Amount of Data
(default) or Period of Time.
Amount of Data The amount of bytes streamed. Available if Media Stream Integer or number profile with value in
Duration is set to "Amount of Data". the range 1Kbytes and 4,294,967,296
Kbytes(~4 Gb) bytes. Allowable metrics are
Kibytes, Mibytes and Gibytes with Mbytes
as the default. If selected the default value
is 10Mbytes.
Period of Time The stream duration defined by a time period. Available if Integer or numeric profile with value in the
Media Stream Duration is set to "Period of Time". range 0-86,400 seconds. Allowable metrics
are ms, secs, min and hour with secs as
the default. If selected default duration is
900 seconds.
Generate RTCP Reports If enabled, the server will generate periodic RTCP reports Enabled/disabled. Default is enabled.
to the RTSP clients for each RTP stream.
Update RTP Packets with Enable adding RTP latency timestamps to packets. Enabled/disabled. Default is enabled.
Latency Timestamps
Enable Normal/Fine TeraVM will gather normal and/or fine statistics. "Fine" Enabled by ticking the checkbox or disable
Statistics statistics are collected at very short intervals, (every by leaving the checkbox empty. Default
second by default, though the interval is configurable) is ticked to enable Normal statistics and
and can be enabled/disabled while a test is running. Fine unticked to disable Fine statistics.
statistics can only be enabled on up to 60 entities at any
given time. "Normal" statistics can be enabled for all RTSP
Server Applications at specified intervals. Normal statistics
will be collected at longer intervals, (30s, 1m, 5m - 30s by
default). Note that Normal statistics are "all-or-nothing" -
either all RTSP Server Applications are collecting Normal
statistics at the specified interval, or none are.
Aggregate Group (See The Aggregate Group to which this RTSP Server Optional. Select a group from the list of
section on Statistical Application belongs for statistical reporting purposes. previously configured groups with which
Grouping) to associate this application or click on the
TCP Port The TCP Port on which the client will bind to it's host. If Integer with a min and max value between
the port is set to the wildcard port (that is, if the Use Next 0 and 65535.
Available check box is ticked (default)) the application will
bind to the first available, non-privileged port.
Media Stream Method Media Stream Method. The method used to stream the Supported values are UDP (unicast) or
media packets to the client. TCP. Default is UDP (unicast). If TCP is
selected, Advanced TCP Characteristics
can be configured by clicking on the
Advanced TCP button in this step. Refer
to the chapter on TCP Configuration.
Media Port Ports to be used for receiving UDP unicast streams. Integer or numeric profile with values in the
range 0-65535. Can be a profile. Default
is blank. If an integer value is chosen
then the value must be even. Note: If
integer value is selected than only one
RTP stream can be supported. If a non-
zero integer value specified then this port
must be included in runtime validation for
use of the port by other TCP applications
on this host. This field is disabled if the
Media Stream Method is TCP.
ToS/DiffServ Quality of Service metric for the client. Mandatory. Integer value between 0 and
255. Default is 0.
Media ToS/DiffServ Quality of Service metric for the UDP packets containing Integer value between 0 and 255.
RTP/RTCP generated by the server. Mandatory. Default is 0.
Note
Extra configuration is required if you are testing video streaming using an IMG browser. This is
highlighted for the relevant parameters below.
Configure HTTP Configuration parameters if you want to configure an Optional. See RTSP HTTP Configuration.
Server(s)... HTTP request before and after your RTSP session, for
example, if you are using IMG browsing in your RTSP
Client.
Server(s) RTSP server with which the RTSP client will Mandatory if no HTTP server is
communicate. configured. When provisioning more than
1 Application, or when the Configure As
field is set to "Scaled Entity" more than one
Server can be selected.
Proxy Identifies the RTSP proxy server with which the RTSP Required. When provisioning more than
client will communicate. 1 Application, or when the Configure As
field is set to "Scaled Entity" more than one
Proxy can be selected.
Media Resource Lists Requested Media Resource List. Request Keywords can Mandatory field when the Server(s) field
be configured here. has been filled in. No defaults. Select a
Requested Media Resource List from those
available in the Configuration folder. Refer
to Test Configuration for more information
on Media Resource Lists.
Pathnames List List of paths that you selected in Media Resource List. N/A
Selection Mode How the clients iterates through the list of pathnames Sequential or Random. Default is
configured in its Requested Media Resource List. Sequential.
Ignore Redirects Specifies that RTSP should not follow the redirects Enabled, Disabled. Default value is
contained in any 3xx responses to DESCRIBE requests. disabled.
Request Keywords... Configuration parameters if Request keywords will be Optional. See RTSP HTTP Configuration.
used in HTTP and RTSP requests.
1. Login into your TeraVM Controller and select Utilities > Global Settings.
2. From the drop-down box select where you want to set your Global Settings and click Configure.
• For the Configure Server-Specific RTSP Client settings drop-down menu, select Fulcrum
HTTP/Cisco Content.
• select the Use RTSP Client TCP conn rate limit as session rate limit check box.
4. From the Global Settings menu, from the drop-down Categories, select RTSP Server Settings and
ensure that the check box Emulate TandBerg/Cisco CDS Server and Enable default RTSP stream
are selected.
5. In the Java Client either from an existing RTSP Client, or from the Add New RTSP Client(s) Wizard, in
the Client Details panel, select Configure HTTP Server(s). For more details on the Configure HTTP
Server(s) parameters, see the next section.
6. In the Configure HTTP Server(s) panel, select a teardown server and, if required, Enable TLS. If TLS
is enabled, select a TLS version from the drop-down box.
A number of dialog boxes are displayed if these options are selected. The parameters they contain are
described below.
Note
All of these parameters are optional and can be left blank if not required. You can find more details on
these parameters in the Test Configuration chapter under HTTP Configuration.
Server(s) HTTP server in RTSP client for IMG browsing. Select a previously configured HTTP
server or create a new one. See
Provisioning a HTTP Server Application.
Teardown Servers Add another HTTP server for Teardown. Select a previously configured HTTP
server or create a new one. See
Provisioning a HTTP Server Application.
Enable TLS Select check box to choose a version of TLS. Mandatory, if Enable TLS is selected
then the TLS version is required. Select
from versions: TLS 1.0, TLS 1.1, TLS 1.2,
Custom Configuration.
TLS Version Select the TLS Version required. Default value: TLS 1.0. Select from: TLS
1.0; TLS 1.1; TLS 1.2; DTLS 1.0; DTLS
1.2.
Request List HTTP request list that will be sent to HTTP server by the Select from a previously configured
RTSP client. request list or create a new list. See HTTP
Configuration.
Teardown Request List These requests can be sent to an alternate HTTP server if A list of HTTP requests that can be sent
the Teardown Server is configured. Otherwise they will be once the RTSP session has itself been torn
sent to the HTTP Server designated by the Server field. down.
Select from a previously configured request
list or create a new list.
Advanced HTTP... Configuration parameters for DNS and Header Fields. N/A
Select to access the following parameters.
Header Field List List of HTTP Headers included in requests issued by Select from a previously configured header
RTSP client. field list or create a new list. See HTTP
Configuration.
Enable DNS Resolve Host If enabled, use DNS resolution to determine the IP Enable / Disable
Header Field address from the Host header field. Enable this option to
determine the IP address of the HTTP initial request using
the value in the Host field of the Header Field list or the
HTTP Request list, if present. Note: A DNS Resolver must
be configured for this functionality to work. Refer to the
section on Configuring a DNS Resolver.
Request Keywords
You can assign values to keywords that can be placed inside HTTP or RTSP requests. The keywords will be
substituted for their values before a request is sent.
Request keywords can be entered via the Java Client in three locations:
• HTTP Request URI, when configuring the Request List of your HTTP server (see a screenshot
example below)
• RTSP Media Resource List Path, on the main Client Details tab. See note.
Note
To add keywords to RTSP requests, you must
– First select the "Tandberg Setup/Cisco" option for Configure Server-Specific RTSP Client
settings on the RTSP Client Settings category of Global Settings (TeraVM Controller
Administration Interface).
– Next, enable user defined headers by adding the text "UUData" to the end of the RTSP
media resource pathname.
– Finally, add your required keywords after the "UUData" text in the RTSP media resource
pathname
Note
As well as adding keywords, you may require other settings in your RTSP
Media Resource List Path, for example to inhibit ads during video streaming.
Here is an example of an RTSP Media Resource List Path that you can use:
UUData:{SP}Service=OpenStreamSvc;AppReq=Purchase;AssetID=0|
{asset_id};ContextId=1024;FolderId=1;X-AdInhibit:{SP}TRUE;{CRLF}CASystemId:
{SP}4700;
The substitution values for keywords specific to RTSP Client can be configured in the dialog box that opens
when you click Request Keywords.... They are described here:
Table 8-141. Request Keywords Parameters
STB Id Set Top Box identifier for each RTSP client Alphanumeric string value between 1 and
255 characters in length.. This can be
scaled using by default an Alpha Numeric
Scaler or by using a String List Scaler.
Click the Scaling properties button to edit
properties. It is possible to add these
Strings by importing a CSV file with a list of
values. Clicking the "Import..." button in the
Edit Properties dialog will open the "CSV
Import Dialog".
Asset Id Id of the media resource requested from IMG for each As above.
RTSP client
Note
An additional keyword, "TERM_MAC" can be added as part of the HTTP and RTSP request strings,
as shown in the HTTP Request URI screen below. It's values are substituted by the MAC addresses of
the host interfaces.
Username User name to be used if the server requires String value between 1 and 64 characters
authentication. in length. Valid characters are a-z A-Z 0-9.
Password Password to be used if the server requires authentication. String value between 1 and 64 characters
The Password field is optional. in length. Valid characters are a-z A-Z 0-9.
Use Initial Authentication Indicates whether or not to use initial authentication. If Default is disabled. Can only be enabled if
username/password supplied then include authentication userame/password is supplied.
details in initial DESCRIBE request.
Media Transport Protocol used to encapsulate media to be streamed. Options are MPEG2-TS/RTP, MPEG2-TS
and RTP. Default is RTP.
MPEG2-TS is not available when Media
Stream method is TCP.
Generate RTCP Reports If enabled, the server will generate periodic RTCP reports Enabled/disabled. Default is enabled. This
to the RTSP clients for each RTP stream. field is not available if the Media Transport
method is MPEG2-TS.
Media Stream Type Media stream types which are to be streamed from a Valid values are All, Audio Only or Video
received media description. Only. Default is All.
If the Media Transport method is
MPEG2-TS or MPEG2-TS/RTP, this field
can only be All.
Media Inactivity Time-out If no media packets are received on a stream for a period Integer in the range 1-60,000 milliseconds.
in excess of this time-out then the RTSP session is torn Default is 1,000 ms. Allowable metrics are
down. ms and sec with ms as the default.
Media Stream Duration Method of controlling the stream duration for this server. Options are Indefinite, Amount of Data
(default) or Period of Time. Default is
Period of Time. Mandatory
Amount of Data The amount of bytes streamed. Integer or number profile with value in
the range 1Kbytes and 4,294,967,296
Kbytes(~4 Gb) bytes. Allowable metrics are
Kibytes, Mibytes and Gibytes with Mbytes
as the default. If selected the default value
is 10Mbytes.
Only available if Media Stream Duration is
set to Amount of Data.
Period of Time The stream duration defined by a time period. Integer or numeric profile with value in the
range 0-86,400 seconds. Allowable metrics
are ms, secs, min and hour with secs as
the default. If selected default duration is
900 seconds.
Only available if Media Stream Duration is
set to "Period of Time.
Delay Between Sessions Delay in milliseconds between each RTSP session for the Can have an integer value or a profile with
client. max and min values of 3,600,000 (ms) and
0 respectively. Default is 0 that is, no delay
between sessions. Allowable metrics are
ms, sec and min with ms as the default.
Clicking on the Advanced Details button enables you to enter advanced configuration for session
management and interoperability options with other RTSP server.
8.2.9.2.3.1.1. Interoperability
The Interoperability tab in the Advanced Session Details dialog enables you to configure RTSP for
Seachange VoD server interoperability.
Table 8-144. Advanced Session Configuration - Interoperability
Skip DESCRIBE Request Allows RTSP client to skip the RTSP DESCRIBE request Enabled or Disabled. Default is disabled
in the RTSP session. RTSP uses the DESCRIBE request if Media Transport is RTP or MPEG2-
to get a description of the individual streams that make up TS/RTP. Default is enabled if Media
the requested media resource. Transport is MPEG2-TS. This field is not
available if the Media Stream Method is
TCP. Mandatory.
Transport Specifier Transport Specifier attribute for the Transport field in the Optional. Available values are :
RTSP SETUP request.
• RTP/AVP
• RTP/AVP/UDP
• MP2T/AVP/UDP
Transport Attributes Enables you to set additional attributes for the Transport Available values are destination={localip}.
Specifier field in the RTSP SETUP request. Alternatively you can enter your own value
with a string value between 1 and 64
characters. The allowable characters for
this field are A-Za-z0-9,.-[]{}/;:=. Default is
no additional attributes.Optional.
RTSP Headers List of additional RTSP header attributes to be added to The following headers CANNOT be added
RTSP requests. to the list:
• CSeq
• Content-Length
• Transport
• Session
• Authorization
The allowable characters for this field are
a-z A-Z 0-9 .{}<>[]\'@#&*%_+=!-. Space is
allowed. CR or LF are NOT allowed. Each
header field can be between 1 and 512
characters. Default is empty. Optional.
Enable NAT Poke Hole This is the Seachange proprietary protocol. Refer to Enabled or Disabled. Default is Disabled.
section on NAT Poke Hole. Only available if Skip DESCRIBE Request
is enabled. This field is also not available if
the Media Stream Method is TCP.
If NAT Poke Hole is enabled, you can click on the NAT Poke Hole button to configure this protocol. The
Advanced NAT Poke Hole Details dialog is displayed:
NAT Poke Hole Timeout Timeout for NAT poke hole requests. Integer. Units are ms, sec. Default units
are ms. Minimum is 1ms, Maximum
is 60000ms. Default is 2000ms. Only
available if Seachange NAT poke hole
protocol is enabled.
NAT Poke Hole Attempts Number of attempts for NAT poke hole requests if Integer. Minimum is 1. Maximum is 50.
response is not received. Default is 3. Only available if Seachange
NAT poke hole protocol is enabled.
Enable Keep-Alives Indicates whether to send NAT poke hole keepalives. Enabled/Disaabled. Default is Enabled.
Only available if Seachange NAT poke
hole protocol is enabled.
Keep-Alive Interval Interval between NAT poke hole keepalive requests. Integer. Units are ms, sec, minutes. Default
units are sec. Minimum is 1ms. Maximum
is 360000ms. Default is 60s. Only available
if Seachange NAT poke hole protocol is
enabled.
Enable Encryption Allows portions of NAT poke hole protocol to be be Enabled/Disabled. Default is disabled. Only
encrypted to protect some RTSP client details. available if Seachange NAT poke hole
protocol is enabled.
Clicking on the Keep Alive tab in the Advanced Session Details dialog displays the following dialog for
configuring Keep Alive:
Enable Keep-Alive Specifies whether an RTSP client should keep a session Enabled or Disabled. Default is Enabled.
alive. Mandatory.
Keep-Alive Request Method used to keep session alive. Options are PING or GET_PARAMETER.
Default is GET_PARAMETER. Only
available if RTSP Session Keep-Alive is
enabled.
Override Server Session Specifies if the RTSP client should override the Server Enabled or Disabled. Default is disabled.
Timeout supplied timeout value. This includes the server supplying Only available if RTSP Session Keep-Alive
no value. is enabled.
Session Timeout Locally configured value for RTSP session timeout. Integer value or profile. Minimum is 1ms.
Maximum value is 3600000ms (1 hour).
Available units are ms, sec, mins. Default
unit is sec. Only available if Override
Server Session Timeout is available.
Default is 120 seconds.
Keep-Alive Multiplier Multiplier to be applied to Server Timeout value. If Server Number between 0.10 and 10.00. Default
does not specify a timeout then no RTSP keep-alive is 0.7. Only available if Override Server
requests are sent. Session Timeout is NOT enabled.
Mandatory.
Configure Passive Enables passive analysis of video streams received by Default is Disabled. .Passive Analysis
Analysis this client. As described in Settings Common to Multiple is not available if this client represents
Applications, Additional Configuration, Passive Analysis. multiple clients in MLIPS. Passive Analysis
If enabled, allows configuration of the following two is not available if the Media Stream Type
parameters. is "Audio".
Playout Jitter Buffer Delay Jitter buffer delay before packets are considered played. Integer value in the range 0-65535ms.
If Passive Analysis is enabled, it accepts the an input from Available units are ms, sec. Default is
a Jitter buffer. TeraVM uses a Jitter Buffer Emulator which 300ms.
emulates jitter buffers such as Set Top Boxes used to
compensate for network jitter.
Maximum Jitter Buffer Maximum size of the jitter buffer. Integer value in the range 0 - 65535.
Size. Available units are ms and sec. Default is
60,000ms. The maximum jitter buffer must
be >= than the playout jitter buffer size.
Prerequisite
• The RTSP client and server must be on the same Test Agent.
1. On the RTSP Server Application from the Server Details dialog, enable Update RTP Packets with
Latency Timestamp check box.
2. If Passive Analysis is configured on the RTSP Client application, then in the Server Details dialog
ensure Update RTP Packets with Latency Timestamp check box is disabled and enable Generate
RTCP Reports check box. Otherwise go to next step.
3. On the RTSP Client Application from the RTSP Statistics select Enable Latency Statistics check box.
Enable Normal/Fine TeraVM will gather normal and/or fine statistics. "Fine" Enabled by ticking the checkbox or
Statistics statistics are collected at very short intervals, (every disabled by leaving the checkbox empty.
second by default, though the interval is configurable) Default is ticked to enable Normal statistics
and can be enabled/disabled while a test is running. and unticked to disable Fine statistics.
Fine statistics can only be enabled on up to 60 entities
at any given time. "Normal" statistics can be enabled
for all RTSP applications at specified intervals. Normal
statistics will be collected at longer intervals, (30s, 1m,
5m - 30s by default). Note that Normal statistics are "all-
or-nothing" - either all RTSP Applications are collecting
Normal statistics at the specified interval, or none are.
Enable Latency Stats Whether or not normal stats are available for this RTSP Enabled or Disabled. Default disabled.
application. Latency statistics may be enabled if all the
following are true:
TeraVM measures the Latency by of RTP packets
• Can only be set to true if media
sent from RTSP Server to Client by updating the RTP
transport field is RTP or MPEG2-TS/
timestamp field with the transmission time of the packet.
RTP.
On reception this can be compared with reception time
and the latency of the packet can be calculated. Configure Passive Analysis and Latency
Stats can be collected simultaneously
once the RTSP Server has Generate
RTCP Reports option enabled.
Note
When collecting Latency
Statistics, the RTSP client
and server must be on the
same Test Agent so that they
share the same time source.
Note
In addition to a special software licence, for RTSP, passive analysis can only be configured if:
• The RTSP Client uses an external RTSP Server or use own RTSP Server that has been
configured with Stream Profile containing RTP Codec AVP of type "Pcap Replay".
• The client is not configured as "Multiple Clients per Row" in the Application Details step of the
wizard.
Video Codec Allows the RTSP client to measure passive quality metrics Allowed values if media transport is RTP:
for the incoming stream.
• JPEG
• MPEG
• H.261
• H.263
• H.263+
• H.264
• MPEG-4
• VC-1
• Static
Allowed values if media transport is
MPEG2-TS or MPEG2-TS/RTP:
• JPEG
• MPEG
• H.261
• H.263
• H.263+
• H.264
• MPEG-4
• VC-1
Default is MPEG.
Analyse Audio Stream Determines if the audio portion of an incoming stream will Enabled/Disabled. Default is Disabled.
be analysed.
Audio Codec Used for passive analysis of the audio stream. Allowed values are:
• MPEG-1 Layer 1
• MPEG-1 Layer 2
• MPEG-1 Layer 3
• MPEG-2 AAC
• AC-3
• MPEG-4 AAC
• MPEG-4 Low Delay AAC
• MPEG-4 High Efficiency AAC
Default is MPEG-1 Layer 1. Only
applicable if Configure Passive Analysis
is enabled and Analyse Audio Stream is
enabled.
Auto determine ES PID(s) TeraVM will determine the appropriate PID(s) from the Enabled/Disabled. Default is Enabled. Only
incoming stream to analyse. available if Configure Passive Analysis
Video ES PID PID of the Video Elementary Stream to be analysed. Integer value. Min is 16 and Max is 8192.
This allows the functionality for detecting the PID to be It is only available if the Auto determine
overridden. Elementary PID is Disabled and Media
Transport is MPEG2-TS or MPEG2-TS/
RTP. Default is unspecified. Cannot be the
same as the Audio ES PID.
Audio ES PID PID of the Audio Elementary Stream to be analysed. Integer value. Min is 16 and Max is 8192.
This allows the functionality for detecting the PID to be It is only available if the Auto determine
overridden. Elementary PID is Disabled and Media
Transport is MPEG2-TS or MPEG2-
TS/RTP and Analyse Audio Stream is
Enabled. Default is unspecified. Cannot be
the same as the Video ES PID.
Enable Passive Analysis Configures the collection of Passive Analysis statistics. Enabled by ticking the checkbox or
Statistics disabled by leaving the checkbox empty. N/
A if Passive Analysis is not configured.
The following wizard is used to provision the External RTSP Server Application:
Name Unique name identifying the External RTSP server Mandatory. String value between 1 and
application. 255 characters in length.
Description This field allows you to enter a description for the external String value between 1 and 512 characters
server application. in length. No Default. Optional.
Host(s) Select a host from the list of the previously configured Mandatory. All external applications need
IP hosts which the external server application will use to to use an External Host to communicate
access the SUT. with the SUT.
TCP Port The TCP Port on which the external server application will Integer value between 0 and 65535.
on which the server will listen for TCP connections Default is 554.
To enter a Property/Name value pair, click on the <Add> button on this page, and the Add Property Value
dialog is displayed:
The following wizard is used to configure an External RTSP Proxy Server Application.
Name Unique name identifying the External RTSP Proxy server Mandatory. String value between 1 and
application. 255 characters in length.
Description This field allows you to enter a description for the external String value between 1 and 512 characters
proxy server application. in length. No Default. Optional.
Host(s) Select a host from the list of the previously configured Mandatory. All external applications need
IP hosts which the external server application will use to to use an External Host to communicate
access the SUT. with the SUT.
TCP Port The port for accepting RTSP sessions. Integer value between 0 and 65535.
Default is 8554.
Note
The request string does not represent the full request sent to the Proxy Server.
To enter a property/Name value pair, click on the <Add> button on this page, and the Add Property Value
dialog is displayed:
8.2.10. RTP
The Real-time Transport Protocol (RTP) provides end-to-end network transport functions suitable for
applications transmitting real-time data, such as audio, video or simulation data, over multicast or unicast
network services.
RTP was originally designed as a multicast protocol, but has since been applied in many unicast
applications. RTP is closely associated with the RTP control protocol (RTCP). The data transport is
augmented by RTCP to allow monitoring of the data delivery in a manner scalable to large multicast
networks, and to provide minimal control and identification functionality. RTP and RTCP are designed to
be independent of the underlying transport and network layers. The protocol supports the use of RTP-level
translators and mixers.
There are four types of RTP applications which can be provisioned in TeraVM. These are:
• Unicast RTP Client sending/receiving data to/from an External Unicast RTP Client .
• Unicast RTP Client sending/receiving data to/from an TeraVM Unicast RTP Client.
• Multicast RTP Client receiving data from an External Multicast RTP Server.
• Receiving/generating voice data if the incoming data is voice. The RTP Codec AVP is used to identify
the necessary configuration information - including the data. In this case the RTP client simulates a
VoIP User agent application without the SIP signalling protocol.
• Receiving audio and/or video data if the incoming data is Audio, Video or Audio/Video. In this case, the
RTP client simulates a RTSP client application without the RTSP signalling protocol.
• Receiving Audio, Video or Audio/Video data from a multicast group. The Multicast RTP client
application will not join the multicast group. It will simply receive data delivered as a multicast but not
generate data. In this case, the RTP client simulates an IGMP/MLD client application without group
membership functionality.
Note
The UDP port attached to the External Unicast RTP Client is not configured in the wizard for this
application. It is set in the TeraVM RTP Client application, if that application is configured to use an
External Unicast RTP Client application.
If you select to add a RTP Server, the Add New External Unicast RTP Client Wizard dialog is displayed.
The steps following are required to provision an External Unicast RTP Client application are:
• Application Details
• Properties
Name Unique name identifying the application. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host Select a Host from the list of the previously configured IP Mandatory. An External Host must be
hosts which the server will use to access the SUT. selected. No default.
8.2.10.1.2. Properties
The External Properties dialog enables you to configure a list of string parameter/value pairings to which no
intelligence will be applied by TeraVM.
To enter a Property/Name value pair, click on the <Add> button on this page, and the Add Property Value
dialog is displayed:
• Application Details
• Addressing Details (Only appears if the Configure As field is set to either "Single Client per Row " or
"Multiple Clients per Row",. Refer to the section on Bulk and Batch Provisioning for details of this steps)
• Client Details
• Additional Configuration
• Passive Analysis (Only available if passive Analysis is configured in the Additional Configuration step)
No. of Clients Each client to be created has a row created in the Mandatory. Default is 1. 1 - 40, 000 clients
Display Window for Applications allowing statistics to be can be configured in one operation.
generated for each row. Note: Bulk provisioning a Unicast Refer to the section on Bulk and Batch
RTP Client is only feasible if the remote application is an Provisioning for more details on using this
External Unicast RTP Client field.
Configure as Configures how the Applications are provisioned, and Mandatory. The options for this field are:
displayed in the Application Display Window.
• Single Client Per Row
• Multiple Clients Per Row
When using this option, the No. of
Clients field will represent the No. of
Rows.
Refer to the section on Bulk and Batch
Provisioning for more details on using this
field.
Name Unique name identifying the client. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct Virtual Host, Indirect
Hosts for this Test Group. Virtual Host or Subnet Host (Direct or
Indirect) No default.
RTP Port Port to listen for incoming traffic and send traffic from. Mandatory. Integer value between 0 and
65535. Must be even. Default is empty.
Increment RTP Port Option for you to increment RTP Port by specific value. Integer value between 0 and 1000. Default
The bulk provisioning icon is displayed if the No. of Rows is 0., which means do not increment RTP
field is greater than 1. Clicking on this icon displays the Port.
following dialog:
RTP ToS/DiffServ Quality of Service metric for the RTP/RTCP packets. Mandatory. Integer value between 0 and
Media messages include RTP or RTCP messages. 255. Default is 0.
The following fields are used to generate a unique IP address for each client row, for each TCP/UDP
connection.
Table 8-154. Unicast RTP Client - Addressing Details
No. of Clients Per Row The number of client application to generate for each row Default is 2. Integer. Min is 2, max is
configured in the No. of Rows field in the Application dependent on the subnet range of the
Details step. For example, if the No. of Rows value is selected host.
100, and the No. of Clients Per Row is 2, the number of
clients generated is 200.
Start IP Address Within The start IP address to use within the subnet to vary the Defaults to the first IP Address within the
Subnet IP addressing for each client. Host's subnet range. Must be a valid IP
Address within the Host's subnet. This
address must allow the creation of the
specified number of Clients per Row, within
the Host's subnet.
Offset Between IP The offset between IP Address ranges created within the Default is 1. Min is 1, max depends on the
Address Ranges Host's subnet. Only available if the No. of Rows value subnet range of the selected host.
Media Type The type of received media to configure. Select from Audio, Video, Video and
Audio or Voice. Default is Voice.
Mandatory.
Remote Application The application to receive data from and stream data to. TeraVM Unicast RTP Client or External
Unicast RTP Client. Optional. If configured
Remote Port External Unicast RTP Client port. Integer value between 0 and 65535.
Mandatory. Default is left blank. Only
available when Remote Application is
External Unicast RTP Client.
Increment Remote Port Option for you to increment Remote Port by specific value. Integer value between 0 and 1000 and an
(Only available if No. of Rows to create is greater than 1.) even number. Default is 0. 0 means do not
increment Remote Port.
RTP Codec AVP Required RTP Codec AVP Select from list of existing RTP Codec
AVPs or create a new one. Only available
in the following circumstances:
• If Media Type is Voice.
• If Media type is Audio, Video/Audio
or Video and Data Mode is Transmit
Data only or Transmit and Receive
Data only. Media Transport must also
be either MPEG2-TS or RTP/MPEG2-
TS.
Data Mode Determines whether the client will transmit or receive data Select from Receive Data Only (Default),
or both. (Only available if Media Type is Voice.) Transmit Data Only or Receive and
Transmit Data. If set to "Transmit Data
Only" or "Receive and Transmit Data" the
Remote Application cannot use a DHCP or
PPPoE enabled Host.
For Media Types other than Voice, the
following rules apply:
• If the Media Transport is RTP or
MPEG2-TS/RTP then you can select
all the available options.
• If the Media Transport is MPEG2-TS
then you can only select the Receive
Data only option.
If the Media Type is Voice, all values are
available. For voice, the Media Transport
field is fixed at RTP.
Audio Frequency RTP Clock frequency for audio stream. (Only available if Integer value between 1Hz and 300,000
Media Transport is RTP and Media Type is Audio.) Hz. No metrics. Default is 90000 Hz.
Generate RTCP Reports If enabled the client will generate periodic RTCP reports to Enabled or disabled. The default is
sender. RTCP ports are sent from the RTP Port + 1. Only disabled.
available if Media Transport is MPEG2-TS/RTP or RTP.
Enable Received Data Controls Received Data Timeout. Only available if the Default is enabled. If this is disabled, the
Timeout Data Mode is "Receive Data Only" or "Receive and application is always in the UP state.
Transmit Data"
Received Data Timeout Timeout after which the RTP client goes red when no Integer value between 10 and 60,000 ms.
multimedia packets are received. Only available if Enable Metrics are ms, sec. Default is 250 ms.
Received Data Timeout is enabled.
Note
In addition to a special software license, passive analysis for RTP can only be configured if:
• The Data Mode is NOT Transmit Only in the Client Details step of the wizard.
• The client is configured as "Single Client per Row" in the Application Details step of the wizard.
Playout Jitter Buffer Delay Jitter buffer delay before RTP packets are considered Integer value in the range 0-65535ms.
played. If Passive Analysis is enabled, it accepts the an Available units are ms, sec. If Media Type
input from a Jitter buffer. TeraVM uses a Jitter Buffer is Voice, (Client Details step) default is
Emulator which emulates jitter buffers such as Set Top 40ms. Otherwise default is 300ms.
Boxes used to compensate for network jitter.
Maximum Jitter Buffer Maximum size of the jitter buffer. Integer value in the range 0 - 65535.
Size. Available units are ms and sec. If Media
Type is Voice (Client Details step),
default is 80ms. Otherwise default is
900ms.
Enable Passive Analysis Configures the collection of Passive Analysis statistics. Enabled by ticking the checkbox or
Statistics disabled by leaving the checkbox empty. N/
A if Passive Analysis is not configured.
If you select to add a Multicast RTP Server, the Add New External Multicast RTP Server Wizard dialog is
displayed.
The steps following are required to provision an External Multicast RTP Server application are:
• Application Details
• Properties
Name Unique name identifying the application. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. An External Host must be
hosts which the server will use to access the SUT. selected. No default.
Multicast Group The multicast groups that the application will send packets Must be a valid multicast address using the
to. same IP version as the host that this client
uses. Default is empty.
8.2.10.3.2. Properties
The External Properties dialog enables you to configure a list of string parameter/value pairings to which no
intelligence will be applied by TeraVM.
To enter a Property/Name value pair, click on the <Add> button on this page, and the Add Property Value
dialog is displayed:
• Application Details
• Client Details
• Additional Configuration
• Passive Analysis (Only available if passive Analysis is configured in the Additional Configuration step)
No. of Clients Each client to be created has a row created in the Mandatory. Default is 1. 1 - 40, 000 clients
Display Window for Applications allowing statistics to be can be configured in one operation.
generated for each row. Refer to the section on Bulk and Batch
Name Unique name identifying the client. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct Virtual Host, Indirect
Hosts for this Test Group. Virtual Host. No default.
Media Type The type of received media to configure. Select from Audio, Video, Video and Audio
or Voice. Default is Voice. Mandatory.
Remote Application The application to receive data from and stream data to. TeraVM Unicast RTP Client or External
Unicast RTP Client. Optional. If configured
in batch mode, - Multiple Clients per Row
- then the remote application can only
be an External Unicast RTP client. (In
runtime validation a Remote Application is
required)
Multicast Group The multicast group that the data is received from. Mandatory. No Default. Enter a multicast
IP address or browse for External Multicast
RTP Client and it's multicast group will be
assigned.
Increment Multicast Option for you to increment Multicast Group by specific Integer value between 0 and 1000 and an
Group value. (Only available if No. of Rows to create is greater even number. Default is 0. 0 means do not
than 1.) increment Multicast Group
Source Port Source port of multicast media stream. Integer value between 0 and 65534. Must
be an even number. Mandatory. Default
is left blank. Only available if Accept data
from any Source Port is not enabled.
Use Any The client will accept data with any Source Port value. Enabled or disabled. Default is disabled.
Increment Source Port Option for you to increment Source Port by specific value. Integer value between 0 and 1000 and
is an even number. By default is 0. Only
available if No. of Rows to create is more
than 1 and Accept data from any Source
Port is disabled. 0 means do not increment
Source Port.
Destination Port Destination port of multicast media stream. Integer value between 0 and 65535.
Mandatory. Default is blank. Only available
if Accept data from any Destination Port
is not enabled.
Use Any The client will accept data with any Destination Port value. Enabled or disabled. Default is disabled.
Increment Destination Option for you to increment Destination Port by specific Integer value between 0 and 1000 and
Port value. is an even number. By default is 0. Only
available if No. of Rows to create is
more than 1 and Accept data from any
Destination Port is disabled. 0 means do
not increment Source Port.
Audio Frequency RTP Clock frequency for audio stream. (Only available if Integer value between 1Hz and 300,000
Media Transport is RTP and Media Type is Audio.) Hz. No metrics. Default is 90000 Hz.
Enable Received Data Controls Received Data Timeout. Default is enabled. If this is disabled, the
Timeout application is always in the UP state.
Received Data Timeout Timeout after which the RTP client goes red when no Integer value between 10 and 60,000 ms.
multimedia packets are received. Metrics are ms, sec. Default is 250 ms.
Note
In addition to a special software licence, passive analysis for Multicast RTP can only be configured if
the client is configured as "Single Client per Row" in the Application Details step of the wizard.
Playout Jitter Buffer Delay Jitter buffer delay before RTP packets are considered Integer value in the range 0-65535ms.
played. If Passive Analysis is enabled, it accepts the an Available units are ms, sec. Default is
input from a Jitter buffer. TeraVM uses a Jitter Buffer 300ms.
Emulator which emulates jitter buffers such as Set Top
Boxes used to compensate for network jitter.
Maximum Jitter Buffer Maximum size of the jitter buffer. Integer value in the range 0 - 65535.
Size. Available units are ms and sec. The value
must be >= then the value of Playout Jitter
Buffer. Default is 900ms.
Enable Video Codec Enables Video Codec. (Only available if Media Type Enabled or Disabled. Default is Enabled.
is Video or Video and Audio and Media Transport is At least one of Enable Video Codec or
MPEG2-TS or MPEG2-TS/RTP. (Client Details step)) Enable Audio Code settings must be
selected.
Video Codec Used for passive analysis of the video stream. (Only For all values of Media Transport, the
available if Media Type is Video or Video and Audio and following values are available:
Enable Video Codec is enabled.
• Static (if Media Transport is RTP)
• JPEG
• MPEG
• H.261
• H.263
• H.263+
• H.264
• MPEG-4
• VC-1
Default is blank and an option must be
selected from the available list.
Enable Audio Codec Enables Audio Codec. (Only available if Media Type Enabled or Disabled. Default is Enabled.
is Audio or Video and Audio and Media Transport is At least one of Enable Video Codec or
MPEG2-TS or MPEG2-TS/RTP. (Client Details step)) Enable Audio Code settings must be
selected.
Audio Codec Used for passive analysis of the audio stream. (Only Allowed values are:
available if Media Type is Audio or Video and Audio and
• MPEG-1 Layer 1
Enable Audio Codecis enabled.
• MPEG-1 Layer 2
• MPEG-1 Layer 3
• MPEG-2 AAC
• AC-3
• MPEG-4 AAC
• MPEG-4 Low Delay AAC
• MPEG-4 High Efficiency AAC
Default is blank and an option must be
selected from the available list.
Auto determine ES PID(s) TeraVM will determine the appropriate PID(s) from the Enabled/Disabled. Default is Enabled.
incoming stream to analyse. (Only available if Media
Transport is MPEG2-TS or MPEG2-TS/RTP. (Client
Details step))
Video ES PID PID of the Video Elementary Stream to be analysed. Integer value. Min is 16 and Max is 8192.
This allows the functionality for detecting the PID to No Default.
be overridden. (Only available if Auto Determine ES
PID(s) is disabled and Media Transport is MPEG2-TS or
MPEG2-TS/RTP and Enable Video Codec is enabled.
Audio ES PID PID of the Audio Elementary Stream to be analysed. Integer value. Min is 16 and Max is 8192.
This allows the functionality for detecting the PID to be No Default.
overridden.(Only available if Auto Determine ES PID(s) is
disabled and Media Transport is MPEG2-TS or MPEG2-
TS/RTPand Enable Audio Codec is enabled.)
Enable Passive Analysis Configures the collection of Passive Analysis statistics. Enabled by ticking the checkbox or
Statistics disabled by leaving the checkbox empty. N/
A if Passive Analysis is not configured.
8.2.11. FTP
File Transfer Protocol is used to transfer files and share files between hosts. When operating over TCP/IP
networks (the only mechanism supported by TeraVM), an FTP server usually accepts connections from FTP
clients on TCP port 21.
There are three types of FTP applications which can be provisioned in TeraVM. These are:
• FTP Client
• FTP Server
• External FTP Server
Note
It is recommended that FTP Server applications are set up first of all, as you will be required to select
these during the FTP Client application provisioning process.
• cd, ls commands will receive a positive acknowledgement. However the FTP server does not respond
with a full directory listing or maintain a directory structure.
If you select to add an FTP Server, the Add New FTP Server Wizard dialog is displayed.
The steps following are required to provision an FTP Server application are:
• Application Details
• Server Details
• Additional Configuration
Number of Servers A server is created as either an application in a single row Default is 1. When more than 1 is enters
in the Application Display Window or based on scaled the Configure As field changes to Scaled
entity where the Number of Servers is the scale factor for Entity automatically. Refer to the section
the scaled server. on Bulk and Batch Provisioning for more
details on using this field.
Configure As Configures how the server(s) are provisioned. Either as Mandatory. Options: ‘Single App Per Row’
a single application per row in the Application Display and ‘Scaled Entity’. Default: ‘Single App
Window, or as a scaled entity. Refer to the sections Per Row’
on Scaled Entity Provisioning and Bulk and Batch
Provisioning for more details on using this field.
Name Unique name identifying the FTP server application. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct or Indirect Virtual Host. If
hosts which the server will use to access the SUT. Direct, then IP address must be static.
TCP Port The TCP Port on which the server application will on Integer value between 0 and 65535.
which the server will listen for TCP connections. Default is 21. Advanced TCP
Characteristics and Connection Rate
Limits can be configured by clicking on the
Advanced TCP button in this step. Refer
to the chapter on TCP Configuration.
Data Port Indicates range of ports to be used for the creation of data Integer or numeric profile with value in
sockets by the server. the range 0-65535. Default is wildcard
that is, . Use Next Available. If a specific
value then this port must be included in
runtime validation for use of the port by
other TCP applications on this host. If
you only specifies a single nonzero port
the FTP server will only support a single
simultaneous FTP transfer.
ToS/DiffServ Quality of Service metric for the server application. Mandatory. Integer value between 0 and
255. Default is 0.
The following information is required to provision the FTP Server Application - Server Details.
Table 8-164. FTP Server Application Server Details
Resource Lists List of mappings between filenames and resources Optional. Refer to the section on FTP
available on the FTP server. Configuration in Test Configuration chapter
for more details of FTP Resource Lists.
Inactivity Timeout Indicates in seconds how long before an inactive client is Integer or numeric profile with value in the
disconnected by the server. The 0 value indicates infinity range 0-3600. Default is 900. Supported
and inactive clients are never logged out by the server. metrics are sec or min with sec as the
default.
• Application Details
• Addressing Details (Only appears if the Configure As field is set to either "Single Client per Row -
Varied Address" or "Multiple Clients per Row",. Refer to the section on Bulk and Batch Provisioning for
details of this steps)
• Client Details
• Session Details
• Additional Configuration
No. of Clients Each client to be created has a row created in the Default is 1. 1 - 50,000,000 clients can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. on Bulk and Batch Provisioning for more
details on using this field.
Configure as Configures how the Applications are provisioned, and The options for this field are:
displayed in the Application Display Window.
• Single App Per Row
Refer to the sections on Scaled Entity Provisioning and • Scaled Entity
Bulk and Batch Provisioning for more details on using this
• Single Client Per Row - Varied
field.
Address
When using this option, the No. of
Clients field will represent the No. of
Rows.
• Multiple Clients Per Row
When using this option, the No. of
Clients field will represent the No. of
Rows.
The default value is "Single App per Row",
but when the No. of Clients is greater than
1, the default value is changed to "Scaled
Entity".
Name Unique name identifying the client. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct, Indirect or Subnet
Hosts for this Test Group. Virtual Host. Subnet is not allowed if the
FTP active mode is used.
When provisioning more than one
Application, or when the Configure As field
is set to "Scaled Entity", more than 1 host
can be selected.
TCP Port The TCP Port on which the client will bind to it's host. If Integer with a min and max value
the port is set to the wildcard port (that is, if the Use Next between 0 and 65535. Advanced TCP
Available checkbox is ticked (default)) the application will Characteristics can be configured by
bind to the first available, non-privileged port. clicking on the Advanced TCP button in
this step. Refer to the chapter on TCP
Configuration.
Data Ports Port(s) to be used for data connections - either in Active Integer or numeric profile with value in the
or Passive Modes. If value is the wildcard then FTP client range 0-65535. Default is wildcard that
selects the next non privileged port for each data TCP is, . Use Next Available. If a specific value
connection. then this port must be included in runtime
validation for use of the port by other TCP
applications on this host.
ToS/DiffServ Quality of Service metric for the client. Mandatory. Integer value between 0 and
255. Default is 0.
Server FTP TeraVM or External FTP server with which the FTP client Required. When provisioning more than
will communicate. 1 Application, or when the Configure As
field is set to "Scaled Entity" more than one
Server can be selected.
FTP Mode Mode to be used for transfers. Supported values are "Active" or "Passive".
Default is Passive. With an "Active" transfer
the FTP client indicates to the server the
port number to which the server can open
a TCP connection. The server opens the
TCP connection to that client port and the
file is transferred over that connection.
When the transfer is complete the TCP
connection is closed. With a "Passive"
Use Anonymous Login Use anonymous FTP to login to the server. Enabled or disabled. Default is enabled.
User Name User name to be used when opening an FTP session. Not String value between 1 and 64 characters
required if Use Anonymous Login is enabled. in length using the following valid
characters: a-z, A-Z, 0-9, ‘-‘,’_’,!#$%^&* .
Password Password to be used when opening FTP session. String value between 1 and 64 characters
in length using the following valid
characters: a-z, A-Z, 0-9, ‘-‘,’_’,!#$%^&* .
Command List List of FTP commands to be executed on the server Mandatory. "put" commands can only
during each FTP session. reference free text (not a profile) if FTP
client is connecting to an external FTP
server. Select from a previously configured
command list or add a new one. Refer to
Chapter 11 for details of FTP configuration.
Delay Between Delay after each command completes before next Can have an integer value or a profile with
Commands command from command list is started or if command list max and min values of 3,600,000 (ms)
finished session terminated. and 0 respectively. Default is 0 - no delay
between sessions. Allowable metrics are
ms, sec and min with ms as the default.
Delay Between Sessions Delay between each FTP session for the client. Can have an integer value or a profile with
max and min values of 3,600,000 (ms) and
0 respectively. Default is 0 that is, no delay
Session Count Limit Number of requests after which app is stopping request Numeric value. Mandatory. Default is 0
repeat (0 = indefinite repeats). Value is a range
between 0 and 999999.
The following wizard is used to provision the External FTP Server Application:
The following information is required for an External FTP Server Application Details.
Name Unique name identifying the External FTP server Mandatory. String value between 1 and
application. 255 characters in length.
Description This field allows you to enter a description for the external String value between 1 and 512 characters
server application. in length. No Default. Optional.
Host(s) Select a host from the list of the previously configured Mandatory. All external applications need
IP hosts which the external server application will use to to use an External Host to communicate
access the SUT. with the SUT.
TCP Port The TCP Port on which the external server application will Integer value between 0 and 65535.
listen for TCP connections Default is 554.
To enter a Property/Name value pair, click on the <Add> button on this page, and the Add Property Value
dialog is displayed:
There are two types of TCP Playback applications which can be provisioned in TeraVM. These are:
Note
It is recommended that TCP Playback Server applications are set up first of all, as you will be required
to select these during the TCP Playback Client application provisioning process.
The steps following are required to provision an TCP Playback Server application are:
• Application Details
• Server Details
• Additional Configuration
Name Unique name identifying the FTP server application. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct or Indirect Virtual Host. If
hosts which the server will use to access the SUT. Direct, then IP address must be static.
TCP Port The TCP Port on which the server application will on Integer value between 0 and 65535.
which the server will listen for TCP connections. Default is 21. Advanced TCP
Characteristics and Connection Rate
Limits can be configured by clicking on the
ToS/DiffServ Quality of Service metric for the server application. Mandatory. Integer value between 0 and
255. Default is 0.
Resource Lists List of pcap files with TCP conversations Mandatory. Choose an existing resource
list or create one and then choose it. The
selected Resource List must also be used
by the TCP Playback Client. Refer to the
section on Playback Resources in Test
Configuration chapter.
Use Capture Timings If enabled, then the original timings contained within the Mandatory. Enabled or Disabled. Default is
pcap are respected. Otherwise the client application task disabled.
uses its own timings.
• Application Details
• Addressing Details (Only appears if the Configure As field is set to either "Single Client per Row -
Varied Address" or "Multiple Clients per Row",. Refer to the section on Bulk and Batch Provisioning for
details of this steps)
• Client Details
• Additional Configuration
No. of Clients Each client to be created has a row created in the Default is 1. 1 - 50,000,000 clients can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. on Bulk and Batch Provisioning for more
details on using this field.
Configure as Configures how the Applications are provisioned, and The options for this field are:
displayed in the Application Display Window.
• Single Client Per Row
Refer to the sections on Scaled Entity Provisioning and • Scaled Entity
Bulk and Batch Provisioning for more details on using this
• Single Client Per Row - Varied
field.
Address
When using this option, the No. of
Clients field will represent the No. of
Rows.
• Multiple Clients Per Row
When using this option, the No. of
Clients field will represent the No. of
Rows.
The default value is "Single Client per
Row", but when the No. of Clients is
greater than 1, the default value is changed
to "Scaled Entity".
Name Unique name identifying the client. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct, Indirect or Subnet
Hosts for this Test Group. Virtual Host.
TCP Port The TCP Port on which the client will bind to it's host. If Integer with a min and max value
the port is set to the wildcard port (that is, if the Use Next between 0 and 65535. Advanced TCP
Available checkbox is ticked (default)) the application will Characteristics can be configured by
bind to the first available, non-privileged port. clicking on the Advanced TCP button in
this step. Refer to the chapter on TCP
Configuration.
ToS/DiffServ Quality of Service metric for the client. Mandatory. Integer value between 0 and
255. Default is 0.
Server TeraVM TCP Playback server to which the client task Required. When provisioning more than
makes requests. 1 Application, or when the Configure As
field is set to "Scaled Entity" more than one
Server can be selected.
Resource List List of pcap files with TCP conversations. Mandatory field with no defaults. Select
a Resource List from those available in
the Configuration folder. The selected
Resource List must also be used by the
TCP Playback Server. Refer to the chapter
on Test Configuration for more information
on Media Resource Lists.
Specify Number of For CSDB tests, you can specific the number of times that Default is disabled.
Replays you want to replay a threat using TCP Playback. Enabling
allows Number of Replays parameter to be used.
Number of Replays Number of times that you want to replay a threat using Value from 1 to 65535. Default is 1.
TCP Playback.
Delay Between Resources Delay between threats being replayed. Optional. Can have an integer value or a
profile with min and max values of 0 and
60,000 (ms). [Default 0]. Allowable metrics
are ms and sec with ms as the default.
Delay Between Delay between each TCP Connection. For CSDB tests Mandatory. Can have an integer value or
Connections this means delay between streams being replayed. a profile with min and max values of 0 and
60,000 (ms). [Default 0]. Allowable metrics
are ms and sec with ms as the default.
Use Capture Timings If enabled, then the original timings contained within the Mandatory. Enabled or Disabled. Default
pcap are respected. Otherwise the client application task value is disabled.
uses its own timings.
8.2.13. SMTP
Simple Mail Transfer Protocol (SMTP) is the de facto standard for email transmission across the Internet. A
SMTP Transmitter application takes e-mail messages and sends them across the SUT to a SMTP Receiver
application. After receiving the messages the SMTP Receiver application either stores them in a mailbox for
later retrieval or forwards them to the next "hop" in the path to the recipient mailbox.
Note: No messages (data) is "pulled" from either an SMTP Transmitter or Receiver application - the
transmitter connects to a given receiver and sends the messages.
When operating over TCP/IP networks (the only mechanism supported by TeraVM), a SMTP Receiver
usually accepts connections from SMTP Transmitters on TCP port 25.
8.2.13.1. Pipelining
Incoming packets from an SMTP Transmitter will usually contain a single SMTP command to which
the Receiver will respond. However, it is possible that a Transmitter can include several commands in
a packet. This capability is referred to as Pipelining and its use within a connection must be agreed by
both Transmitter and Receiver during the connection establishment phase. The SMTP Receiver can be
configured to support SMTP Pipelining. If configured not to support Pipelining, any incoming requests to
support Pipelining will be rejected.
Number of Servers A server is created as either an application in a single row Default is 1. When more than 1 is entered
in the Application Display Window or based on scaled the Configure As field changes to Scaled
entity where the Number of Servers is the scale factor for Entity automatically. Refer to the section
the scaled server. on Bulk and Batch Provisioning for more
details on using this field.
Configure As Configures how the server(s) are provisioned. Either as Mandatory. Options: ‘Single App Per Row’
a single application per row in the Application Display and ‘Scaled Entity’. Default: ‘Single App
Window, or as a scaled entity. Refer to the sections Per Row’
on Scaled Entity Provisioning and Bulk and Batch
Provisioning for more details on using this field.
Name Unique name identifying the SMTP Receiver Application. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct or Indirect Virtual Host. If
hosts which the server will use to access the SUT. Direct, then IP address must be static.
TCP Port The TCP Port on which the Receiver will listen for TCP Integer value between 0 and 65535.
connections. Default is 25. Advanced TCP
Characteristics and Connection Rate
Limits can be configured by clicking on the
Advanced TCP button in this step. Refer
to the chapter on TCP Configuration.
ToS/DiffServ Quality of Service metric for the receiver application. Mandatory. Integer value between 0 and
255. Default is 0.
The following information is required to provision the SMTP Receiver Application - Server Details.
Domain Name Identifier for the Mail Server to be used by other agents Mandatory. String value. Min is 1 and max
when interacting with it. is 128.
Accepts Pipelining If enabled, TeraVM will allow more than one SMTP Mandatory. Enabled or Disabled. Default is
command to be sent per network packet thus reducing the disabled.
delay introduced in the SMTP dialog by network latency or
congestion.
Enable Fast Messaging The Receiver will not scan the entire message for the Mandatory. Enabled or Disabled. Default is
Parsing terminating sequence. It will only scan the end of each Enabled.
"chunk" of data. This allows the Receiver to process
messages significantly faster than normal.
• Application Details
• Addressing Details (Only appears if the Configure As field is set to either "Single Client per Row -
Varied Address" or "Multiple Clients per Row",. Refer to the section on Bulk and Batch Provisioning for
details of this steps)
• Transmitter Details
• Session Details
• Additional Configuration
No. of Clients Each client to be created has a row created in the Default is 1. 1 - 50,000,000 clients can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. on Bulk and Batch Provisioning for more
details on using this field.
Configure as Configures how the Applications are provisioned, and The options for this field are:
displayed in the Application Display Window.
• Single App Per Row
Refer to the sections on Scaled Entity Provisioning and • Scaled Entity
Bulk and Batch Provisioning for more details on using this
• Single Client Per Row - Varied
field.
Address
When using this option, the No. of
Clients field will represent the No. of
Rows.
• Multiple Clients Per Row
When using this option, the No. of
Clients field will represent the No. of
Rows.
The default value is "Single App per Row",
but when the No. of Clients is greater than
1, the default value is changed to "Scaled
Entity".
Name Unique name identifying the transmitter. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct, Indirect or Subnet
Hosts for this Test Group. Virtual Host.
TCP Port The TCP Port on which the Transmitter will bind to it's Integer with a min and max value between
host. If the port is set to the wildcard port, the application 0 and 65535. Default is the wildcard that
will bind to the first available, non-privileged port. is, Use Next Available. Advanced TCP
Characteristics can be configured by
clicking on the Advanced TCP button in
this step. Refer to the chapter on TCP
Configuration.
ToS/DiffServ Quality of Service metric for the client. Mandatory. Integer value between 0 and
255. Default is 0.
Receiver Reference to the TeraVM SMTP Receiver with which the Optional. Select from the list of previously
Transmitter will communicate. configured SMTP Receiver applications.
Domain Name Identifier for the Mail Server to be used when interacting String value (currently) between 1 and 128
with Receiver applications. characters in length.
Message Content A Message Set that is, a list of messages. It contains Mandatory. Each message can be of type
the content which is to be attached to transmitted mail Text, File Inline, Attachment or Autogen.
messages. The size of a message must be between 1
and 900,000,000 bytes.
Send Order Determines the number of sessions used to transmit mail Options are One to One or One to Many.
messages sent from the specified FROM User List to the Default is One to One.
specified TO User List.
Request Pipelining Allow more than one SMTP command to be sent per Enabled or Disabled. Default is Disabled.
network packet thus reducing the delay introduced in the
SMTP dialog by network latency or congestion
Headers Indicates the configuration status of the SMTP headers. Configured or Unconfigured. To
configure the header fields to include in
SMTP messages and also to define the
content of these header fields, click on the
<...> button, adjacent to the Headers label.
The Mail Headers Dialog is displayed.
This dialog is described in the following
section.
• From
The "From" field specifies the author(s) of the message, that is, , the mailbox(es) of the person(s) or
system(s) responsible for the writing of the message.
• To
The "To:" field contains the address(es) of the primary recipient(s) of the message.
• Cc
The "Cc:" field (where the "Cc" means "Carbon Copy") contains the addresses of others who are to
receive the message, though the content of the message may not be directed at them.
• Bcc
The "Bcc:" field (where the "Bcc" means "Blind Carbon Copy") contains addresses of recipients of the
message whose addresses are not to be revealed to other recipients of the message.
• Reply-To
When the "Reply-To:" field is present, it indicates the mailbox(es) to which the author of the message
suggests that replies be sent.
• Date
Day/Month/Year stamp.
• Message-ID
The "Message-ID:" field provides a unique message identifier that refers to a particular version of a
particular message. The uniqueness of the message identifier is guaranteed by the host that generates
it.
• Subject
The "Subject:" field contains a short string identifying the topic of the message.
• Received
The "Received:" fields is one of the trace fields. It contains a (possibly empty) list of name/value
pairs followed by a semicolon and a date-time specification identifying each hop of the email as it is
transmitted across the Internet.
The content of the mail message is provided via the SMTP mail message set configuration item. This
configuration item allows the configuration of sets of messages. Individual messages can be one of 4 types:
• Mail File
The 'Mail File' type allows arbitrarily complex mail formatting scenarios to be recreated in TeraVM
without requiring detailed knowledge of every possible mail format. When a mail file is selected, the
RFC 2822 header structure found in the file is maintained and used in mail messages generated by
SMTP transmitters using the message set in which this message is contained.
In supporting the ability for you to configure RFC 2822 header fields in the SMTP Transmitter
application, any header fields that actually appear in the header section of the Mail File will be replaced
by values configured in the SMTP Transmitter. If the file does not have a particular header field, then
that field will not appear in the mail, even if it has a corresponding value in the SMTP Transmitter.
Headers fields in the file that do not have corresponding values in the SMTP Transmitter are excluded
from the mail that is, only headers fields that appear in both the selected mail file and the SMTP
Transmitter sending the mail will appear in the mail generated by the SMTP Transmitter.
The "Received" header field is an exception to the above rules. Received header fields are always
stripped from the selected Mail File by MLIPS. Also values specified for the "Received" header by the
SMTP Transmitter sending the mail will always be added before any other header fields that might be
specified in the SMTP Transmitter.
In addition to the "Received" header fields, certain other fields are also removed from the file by MLIPS.
These are: "Delivered-To", "Return-Path", "Status" and "X-Status".
The point of these file processing rules is to allow a mail file to be saved directly from a mail client
and loaded into TeraVM. The path that the original mail took, identified by the "Received" header
field (and certain other fields) that are typically added when a mail finally arrives at its destination, are
stripped from the mail to restore it to how it might have looked prior to delivery. This way, the SMTP
Transmitter's settings can then be used to add a new delivery path, and to replace other header fields in
the mail with operator configured values.
Note that the Mail File requires no validation viz-a-viz the SMTP Transmitter settings. If it does not have
any RFC 2822 header fields, then the mail generated by the SMTP Transmitter will not have any header
fields, regardless of the SMTP Transmitter's settings. The exception to this rule is the "Received"
header fields -- which are always added. If the Mail File has some header fields but not others, this
should not be flagged as a problem either - the missing fields will not be included in that particular
mail, but they may still be valid headers for a different mail that the same SMTP Transmitter might be
sending.
• MIME Attachment
you specifies a file to be attached to the generated file. The specified file acts as the content for the mail
message and will be Base64 encoded and added as a MIME attachment to the generated mail. MLIPS
will come pre-configured with a default RFC 2822 header template. If the SMTP Transmitter specifies
RFC 2822 header fields, this template will be pre-pended to the encoded attachment and the SMTP
Transmitter's RFC 2822 header fields, if specified, will be used to "fill-out" the template. The result will
be a complete RFC-2822 compatible mail that contains a single MIME attachment that holds the file
contents. The order of header fields in the template is as follows:
As previously stated, the Received header is always inserted first. The Reply-To, Cc and Bcc are
inserted after the To header (in this order). If there is no To header specified in the SMTP Transmitter,
these headers come at the end of the headers.
• Auto-Generated
Automatically generates a mail message containing arbitrary content. The size of this content is defined
in bytes and can be specified as a static value or as a random value. As per the other message types,
MLIPS will come pre-configured with a default RFC 2822 header template, and the arbitrary content
will be included as the content of the mail following the mail header. As with an "MIME Attachment", the
SMTP Transmitter's RFC 2822 header fields, if specified, will be used to "fill-out" the template, but note
that a slightly different header template may be required for these text messages Is this something that
needs to be resolved
• Text
The specified text will be the content for the mail message. As per the other message types, MLIPS will
come pre-configured with a default RFC 2822 header template, and the text will be included as the body
of the mail following the header. As with "MIME Attachment" and "Auto-Generated" mails, the SMTP
Transmitter's RFC 2822 header fields, if specified, will be used to "fill-out" the template, Auto-Generated
and Text should be able to share the same header template as they are both "plain text" mails.
It is possible to generate large numbers of unique mail messages during the lifetime of a running test. This
is to be achieved by configuring lists of possible values for each of the supported header fields. When
generating each individual email, values for the header fields are chosen from the list of possible values
configured for each field, in a random or sequential fashion, as indicated by the operator.
Enable Header Field Controls whether or not RFC 2822 Mail Headers are Checkbox. Default is un-ticked that is, not
Processing supported by the SMTP Transmitter supported.
Use Current Date A flag used to control whether or not a unique Date is Checkbox. Default is ticked. If you also
generated and used in the "Date" Mail Header by TeraVM includes a specific Date header, this
as opposed to you manually specifying a date. flag takes precedence.
Use Unique Message-ID A flag used to control whether or not a unique Message ID Checkbox. Default is ticked. If you also
is generated and used in the "Message-ID" Mail Header includes a specific Message-ID header,
by TeraVM as opposed to you manually specifying a this flag takes precedence.
Message-ID.
To add a new header to the list or edit an existing header, click on the <Add> or <Edit> buttons. The Add
Mail Header dialog is displayed:
Enter appropriate information for the following fields for each header field:
Header Field Name A list of Mail Headers that can be configured by the Choose from the available list of: To, From,
operator. Cc, Bcc, Reply-To, Date, Message-ID,
Subject, Received. Note: It is possible to
configure multiple instances of the same
header.
Is Folded. Indicates if the Mail Header is a "folded" header that is, the Checkbox. Default is un-ticked..
field body goes across multiple lines.
Value The value of the Mail Header Body. This can be across 0 - 10240 characters. Unsupported
multiple lines. It can also be empty. characters are Null terminator, ' and "".
Selection The method in which a field value is selected from the list Select either Random or Sequential.
of values.
To add or edit a Mail Header Body value, click on the<Add> or <Edit>buttons. The Add Header Field
Body dialog is displayed.
This dialog enables you to enter individual values in the list of possible values for the field. Note that this
dialog will allow you to insert Carriage Returns (CR) . When you presses the "OK" button, a check will be
performed to see that the CR is followed by a white space (thereby supporting "Folding"). If it is found that
this is not the case, then you will be given the option of proceeding anyway, or of automatically inserting the
white space where required.
It is also valid not to enter anything in this dialog and click the <OK> button. Empty strings can be specified
as a field body and it will pass the validation.
The same applies for an empty line. If you are using multiple lines in a field body, you are allowed to use an
empty line.
Note
The Mail Header field can support Keyword Substution, if enabled. Click on the Information button (
Enable Keyword Enables special keywords in "RCPT TO", "MAIL FROM", Mandatory. Enabled or Disabled. Default
Substitution "domain" and also SMPT mail headers. is disabled.
SMTP Keyword Substitution is similar to HTTP keyword substitution in that it allows for the randomization of
the content of specific fields. In this case, it allows for the randomization of the "RCPT TO", "MAIL FROM"
and "domain" in the SMTP Transmitter application. The keyword syntax is the same as that for HTTP.
Note
Enabling this feature can have a negative effect on performance.
Delay Between Sessions Delay between each SMTP session. Mandatory. Can have a value in the range
0 - 60,000 (ms). It can also be a profile with
min and max values within this range. 0
means no delay. Default is 0. Supported
metrics are ms and sec with ms as the
default.
Start Inactive Period After Number of sessions after which the transmitter will cease Can have an integer value in the range
it's activities, waiting a defined period of time before 0 - 100. 0 means no inactivity will occur.
resuming activity. Default is 0.
Period of Inactivity Period of time during which no activity will take place. This Can have a value in the range 0 -
period of inactivity will begin once the specified number of 3,600,000 (ms). It can also be a profile with
sessions (Start Inactive Period After) have occurred. This min and max values within this range. This
value must be 0 if the Number of Sessions is 0. can be non-zero only when the Number of
Sessions is non-zero. 0 means no inactivity
will occur. Default is 0. Supported metrics
If you select to add an External SMTP Receiver Application, the Add New external SMTP Receiver Wizard
dialog is displayed.
Name Unique name identifying the External SMTP Receiver Mandatory. String value between 1 and
Application. 255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Select from the list of External Hosts.
hosts which the server will use to access the SUT.
TCP Port The TCP Port on which the Receiver will listen for TCP Integer value between 0 and 65535.
connections. Default is 25.
• Mail Server Name: the name of the mail server for the External SMTP Receiver application.
• Pipelining: an indication on whether or not this External SMTP Receiver can support Pipelining.
To enter a Property/Name value pair, click on the <Add> button on this page, and the Add Property Value
dialog is displayed:
If you select to add an External SMTP Transmitter Application, the Add New External SMTP Transmitter
Wizard dialog is displayed.
Name Unique name identifying the External SMTP Receiver Mandatory. String value between 1 and
Application. 255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Select from the list of External Hosts.
hosts which the transmitter will use to access the SUT.
TCP Port The TCP Port on which the external Transmitter binds to Optional. Integer value between 0 and
its host. 65535. Default is 25.
• Mail Server Name: the name of the mail server for the External SMTP Transmitter application.
• Pipelining: an indication on whether or not this External SMTP Transmitter can support Pipelining.
To enter a Property/Name value pair, click on the <Add> button on this page, and the Add Property Value
dialog is displayed:
8.2.14. DDoS
The performance of the Network Under Test (SUT) can be tested in response to a variety of Denial of
Service attacks. Such attacks are malicious and therefore not standardised, but there are many well-
accepted categories of attack that TeraVM can emulate. These are:
• SYN Flood
• RESET Flood
• UDP Flood
• Ping Flood
• ARP Flood
• Ping of Death
• Teardrop Attack
The offset and size of the second fragment is chosen so that the fragment overlaps with the
first fragment, but it does not have enough data to completely overwrite the remainder of the
first fragment. This can cause IP reassembly routines to access protected memory, leading to
problems with the victim's networking modules.
• Reflective SYN Flood - sends a flood of SYN packets (that is, TCP connection requests), using the
victim's IP address as the source of the SYN.
The aim of this attack is to get one or more "legitimate" IP addresses to reply to the victim with TCP
SYN-ACK packets. The hope is that having the packets arrive from legitimate sources will prevent
DDOS mitigation devices from recognizing the attack. Typically, a range of IP addresses are used to
"reflect" the attack back to the victim. By distributing the attack load in this way, the attacker further
hopes that none of the "Reflectors" will recognize that they are participating in a Denial of Service.
• UDP Fragmentation Attack - sends a single IP fragment that contains part of a UDP datagram to the
specified IP Address, (the "victim"). The aim is to exhaust the Victim's resources by forcing it to store
many IP fragments. The format of the fragment is the same as that used for the initial fragment of a
Teardrop Attack, so most of the Teardrop information applies here also.
The provisioning of these attacker applications is almost identical in all cases, therefore this section only
describes the provisioning of the SYN Flood Attacker. Any additional fields that are required in any of these
attacker applications are documented and noted.
The following dialog is displayed for provisioning a SYN Flood Attacker Application:
The steps required to provisioning a SYN Flood Attacker Application are as follows:
• Application Details
• Attacker Details
• Additional Details
Name Unique name identifying the Attacker. Mandatory, No Default. String value
between 1 and 255 characters in length..
Description User-assigned, free-form description of the Attacker. String value between 1 and 512 characters
in length. No Default. Optional.
Host The Host the Attacker will use to access the SUT. Mandatory. No Default. Must be a Direct
Virtual Host or Indirect Virtual Host.
Attack Rate The rate at which attack packets are sent by the attacker Mandatory. Default is 1. Integer . Min=1
to the victim. and max=100,000
Payload Size (UDP or Ping This specifies the payload size for the UDP datagrams or Integer, 1 - (Host MTU - Headers). Default
Attacker Only) Ping Requests. 1316.
Use Random MAC If enabled, the attacker can use an arbitrary (spoofed) Enabled or disabled. Default is Enabled.
MAC address.
MAC Address Only applicable if Use Random MAC is NOT enabled. Optional. Either an actual MAC or leave
Specifies the MAC address for each attack packet. blank . If no MAC Address is entered, the
MAC Address of the Host will be used.
Default is Blank.
Note
The Attacker Details of the Reflective SYN Flood Attackerapplication are detailed separately within
this section.
The Attacker Details step of the wizard displays the following dialog:
Address Type The type of IP address to be used in the attack. The following options are available:
Specific- used in every attack packet.
ANY- each attack packet will use a
randomly chosen IP address. Random
from range - chosen at random from
a subnet range Sequential address
from range - starting from specified IP
address, each attack packet will use the
next sequential IP address in the specified
subnet range.
IP Address IP address to be used in the attack. Valid IPv4 or IPv6 IP address. Not required
for Reflective SYN Flood attack.
Port The TCP or UDP Port which the Attacker will put in the Mandatory. Integer value between 0 and
source port field. If the port is set to the wildcard port (i.e 65535 or a numeric profile within that
Use Next Available) the Attacker will use a random, non- range. Default is Use Any Available.
privileged port.
Target The type of entity targeted by the attack. Select from Application, Host, Port(s)
on a Host. Default is Host. For the Ports
on a Host option, the Ports can be any
port that is, a wildcard. An application can
be a DDOS Listener and must use an
appropriate host for example it cannot use:
- Subnet Host - Host with a dynamically
assigned address.
Target Host The host that will be the target of this attack. Only Select a host, or create a new one. Cannot
available is the selected Target is "Host". be: - Subnet Host (including an External
Subnet Host) - Host with a dynamically
assigned address.
Port(s) The TCP or UDP port(s) that will be used as the target Mandatory. Integer value between 0 and
ports in the attack packets. Only available is the selected 65535 or a numeric profile within that
Target is "Ports on a Host". range. Can also be the wildcard port that
is, Use Next Available. No Default.
Note
This attack can use a host configured with Block All Traffic enabled.
Reflector. The type of entity targeted by the attack. Select from Application, Host, Port(s)
on a Host. Default is Host. For the Ports
on a Host option, the Ports can be any
port that is, a wildcard. An application
can be a DDOS Listener and must use
an appropriate host for example it cannot
use a Host with a dynamically assigned
address.
Reflector Host The Host to which the attacker will direct the SYNs and Any host may be used as a reflector -
which in turn will send the SYN-ACKs to the target. Only DVH, DVSH, IVH, IVSH, external host and
available is the selected Reflector is "Host". also External Subnet Host (which may
only be used as a reflector). Cannot be
a host where the address is dynamically
assigned.
Reflector Port The TCP Port which the Attacker will put in the destination Mandatory. Integer value between 0
port field. If the port is set to the wildcard port the Attacker (random) and 65535 or a numeric profile
will use a random, non privileged port. Only available is within that range. Default is 0. Note that
the selected Reflector is "Ports on a Host". to be effective, the reflector(s) should
have TCP apps/listeners running on these
port(s).
Target The type of entity targeted by the attack. Select from Application, Host, Port(s)
on a Host. Default is Host. For the Ports
Target Host The host that will be the target of this attack. The IP Select a host, or create a new one. Cannot
address of this host will be used as the src addr in the be: - Subnet Host (including an External
attack packets sent to the Reflector. Only available is the Subnet Host) - Host with a dynamically
selected Target is "Host". assigned address.
Port(s) TCP port used as source port in the attack packets. This Mandatory. Integer value between 0 and
is the port on the target host that will be flooded with all 65535 or a numeric profile within that
the ACK replies. Only available is the selected Target is range. Can also be the wildcard port that
"Ports on a Host". is, Use Next Available. No Default.
Name Unique name identifying the DDoS Listener Application. Mandatory. String value between 1 and
255 characters in length.
Description Description of the DDoS Listener application. String value between 1 and 512 characters
in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured Mandatory. Direct or Indirect Virtual Host. If
IP hosts which the DDoS Listener will use to access the Direct, then IP address must be static.
SUT.
TCP Port The TCP Port on which the Listener will listen for TCP Integer value between 0 and 65535. No
connections. Default.
ToS/DiffServ Quality of Service metric for the Listener application. Mandatory. Integer value between 0 and
255. Default is 0.
An important goal in peer-to-peer networks is that all clients provide resources, including bandwidth,
storage space, and computing power. Thus, as peers are added to the network and demand on the system
increases, the total capacity of the system also increases.
• Application Details
• Peer Details
• Additional Configuration
No. of Clients Each Peer to be created has a row created in the Default is 1. 1 - 40, 000 transmitters can be
Display Window for Applications allowing statistics to be configured per provisioning action. Refer to
generated for each row. the section on Bulk and Batch Provisioning
for more details on using this field.
Configure as Configures how the Applications are provisioned, and The only options for this field for P2P is:
displayed in the Application Display Window.
• Single Client Per Row
Refer to the section on Bulk and Batch
Provisioning for more details on using this
field.
Name Unique name identifying the P2P Peer Application. Mandatory. String value between 1 and
255 characters in length.
Description A description for the P2P Peer application. String value between 1 and 512 characters
in length. No Default. Optional.
Host The Host which the Peer will use to access the SUT. Mandatory. Direct or Indirect Virtual Host. If
Direct, then Host IP address must be static.
TCP Port The TCP Port on which the Peer will bind to its host. Mandatory. Integer value between 0 and
65535. Default is the wildcard port that
is, Use Next Available. Advanced TCP
Characteristics can be configured by
clicking on the Advanced TCP button in
this step. Refer to the chapter on TCP
Configuration.
Listener Port The TCP Port on which the Peer will listen for TCP Mandatory. Integer. Min value is 0. Can
connections. also be a profile. Default is 0.
ToS/DSCP Quality of Service metric for the Peer. Integer value between 0 and 255. Default
is 0.
Peer Group A community of peers that will interact with each other, Mandatory. Select from a previously
requesting resources from each other. configured Peer Group or create a
new one. Refer to the section on P2P
Configuration in Chapter 11.
Group Traversal Controls how the peer traverses the group in which it is Mandatory. Options are Random or
contained Ordered. Default is Ordered.
Sharing Indicates the Peer has resources which are being shared. Enabled or disabled. Default is enabled.
Resource List The list of resources configured on the Peer. If Sharing is Resources of type File or arbitrary data of
set to Enabled the Resource List cannot be empty. a specific size. Select from a previously
configured Resource List or create a
new one. Refer to the section on P2P
Configuration in Chapter 12.
Delay Between Transfers Delay between the transfer of each resource. Can be value in the range 0 -600,000 (ms).
It can also be a profile with min and max
values within this range. Max value is 1
hour (3,600,000 ms). Default is 0 indicating
Delay Between Peers Delay after finishing the download of all resources from Can be value in the range 0 -600,000 (ms).
one peer and before moving on to downloading the It can also be a profile with min and max
resources from the next peer values within this range. Max value is 1
hour (3,600,000 ms). Default is 0 indicating
no delay. Available metrics will be ms, sec,
min.
An important goal in peer-to-peer networks is that all clients provide resources, including bandwidth,
storage space, and computing power. Thus, as peers are added to the network and demand on the system
increases, the total capacity of the system also increases.
Each playback peer must belong to a specific "Peer Group" that is, a set of peers that interact with each
other. A Playback Peer will have a configured set of "resources" that are available to other Playback Peers
within the Peer Group. These other Peers can download these resources while this Peer can download the
resources available on the other Peers in the Peer Group. It is the type of these resources that distinguishes
a TCP Playback Peer application from a P2P application. The resources configured on a TCP Playback
Peer must be libpcap or Sun Snoop packet capture files and all playback peers in a Peer Group must have
the exact same Resource List.
The downloading of resources from a P2P TCP Playback Peer is achieved by configuring each Playback
Peer in a Peer Group with the same set of resources. Each peer in a given peer group will read the contents
of the packet capture file (a resource in the resource list), identify any contained TCP connections, open
a TCP connection to another playback peer (thereby "representing" the connection in the capture file)
and, over this new connection, replay the series of exchanges that make up the connection contained
in the capture file. This series of exchanges of information is known as a TCP Conversation. Once the
conversation is complete, the TCP connection will be closed. This procedure will be repeated for each "TCP
Conversation" contained in the capture file. The "other" peer will replay its side of the "conversation" when it
receives packets from the client side peer.
It is important to note that the packet headers contained in the capture file will not be replayed - these
headers are replaced by headers based on the details configured in the Playback Peer. All data in each
packet that follows the TCP header is known as the TCP payload and will be considered part of the TCP
conversation.
As the number of Peers in a Peer Group grows and the number of Peer Groups grows, the amount of
replayed TCP Conversations increases. A P2P TCP Playback Peer Application is capable of acting as a
client, a server or as both a client and server
• Application Details
• Peer Details
• Additional Configuration
No. of Clients Each Peer to be created has a row created in the Default is 1. 1 - 40, 000 transmitters can be
Display Window for Applications allowing statistics to be configured per provisioning action. Refer to
generated for each row. the section on Bulk and Batch Provisioning
for more details on using this field.
Configure as Configures how the Applications are provisioned, and The only options for this field for P2P
displayed in the Application Display Window. Replay is:
• Single Client Per Row
Refer to the section on Bulk and Batch
Provisioning for more details on using this
field.
Name Unique name identifying the P2P Replay Peer Application. Mandatory. String value between 1 and
255 characters in length.
Description A description for the P2P Replay Peer application. String value between 1 and 512 characters
in length. No Default. Optional.
Host The Host which the Replay Peer will use to access the Mandatory. Direct or Indirect Virtual Host. If
SUT. Direct, then Host IP address must be static.
TCP Port The TCP Port on which the Peer will bind to its host. Mandatory. Integer value between 0 and
65535. Default is the wildcard port that
is, Use Next Available. Advanced TCP
Characteristics can be configured by
clicking on the Advanced TCP button in
this step. Refer to the chapter on TCP
Configuration.
Listener Port The TCP Port on which the Replay Peer will listen for TCP Mandatory. Integer. Min value is 0. Can
connections. also be a profile. Default is 0.
ToS/DSCP Quality of Service metric for the Peer. Integer value between 0 and 255. Default
is 0.
Peer Group A community of Replay Peers that will interact with each Mandatory. Select from a previously
other, requesting resources from each other. configured Peer Group or create a
new one. Refer to the section on P2P
Configuration in Chapter 11.
Group Traversal Controls how the Replay Peer traverses the group in Mandatory. Options are Random or
which it is contained Ordered. Default is Ordered.
Playback Resource List The list of resources configured on the Replay Peer. . Resources of type File or arbitrary data of
a specific size. Select from a previously
configured Resource List or create a
new one. Refer to the section on P2P
Configuration in Chapter 12.
Delay Between Delay between the replay of each conversation. Can be value in the range 0 -600,000 (ms).
Conversations It can also be a profile with min and max
values within this range. Max value is 1
hour (3,600,000 ms). Default is 0 indicating
no delay. Available metrics will be ms, sec,
min.
Delay Between Peers Delay after finishing the download of all resources from Can be value in the range 0 -600,000 (ms).
one playback peer and before moving on to downloading It can also be a profile with min and max
the resources from the next Replay Peer values within this range. Max value is 1
hour (3,600,000 ms). Default is 0 indicating
no delay. Available metrics will be ms, sec,
min.
Latency in a packet-switched network is measured either one-way (the time from the source sending a
packet to the destination receiving it), or round-trip (the time from the source sending a packet to the source
receiving a response).
Once started, a Multicast Latency Server will stream data at a constant rate to the specified multicast group.
A Multicast Latency Server is only capable of generating and multicasting UDP packets. The payload of
each packet will be generated from random data, but will also contain a timestamp indicating that time at
which the packet was transmitted. This timestamp will be used by Multicast Latency Clients to determine the
latency for that packets transmission across the network.
The following wizard is displayed for provisioning a Multicast Latency Server application:
Name Unique name identifying the Multicast Latency server Mandatory. String value between 1 and
application. 255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct/Indirect Virtual Host.
hosts which the server will use to access the SUT.
UDP Port The destination port that will be used in all generated Mandatory. Integer 0-65,535. Default is 1.
multicast packets.
ToS/DiffServ Quality of Service metric for the server application. Mandatory. Integer value between 0 and
255. Default is 0.
The following information is required for the Server Details step of the wizard:
Table 8-193. Multicast Latency Server - Server Details
Multicast Group Multicast groups that this server will multicast to. Each Must be a valid multicast address using the
group can contain up to 100 entries. Each entry in the same IP version as the host that this client
list contains the address of the multicast group plus a uses. Defaults to 224.1.1.1 for IPv4 and
Destination Port and Source Port. to FF0E:0:0:0:0:0:0:114 for IPv6. Select
from a previously configured group or add
a new group. Refer to the section in on
IGMP Configuration in Chapter 11 for more
details on creating Multicast Groups.
Latency Interval This is the delay that the server will use between the Allowable values are: 0.01 seconds, 0.02
transmission of each individual packet. seconds, 0.025 seconds, 0.03 seconds,
0.033 seconds, 0.04 seconds, 0.05
seconds, 0.1 seconds, 0.25 seconds,
1 seconds, 2 seconds, 5 seconds, 10
seconds, 30 seconds, 1 minute, 5 minutes.
Default is 0.01 seconds.
Payload Size The size of each payload in a packet. Used with the Mandatory. Integer. 1 to (Host MTU -
Latency Interval this results in a packet rate used to Headers). Default 1316 bytes.
deliver the specified bandwidth per second.
Once started, a Multicast Latency Client will join the specified multicast group and listen for any data
streamed to that group. A Multicast Latency Client is only capable of receiving UDP multicasts. As each
individual packet is received, it will look for a timestamp in the packet and if it finds one, it will determine the
latency of the network by subtracting the value of the timestamp (that is, when the packet was transmitted by
the server) from the current time.
There is no concept of an iteration for a multicast latency client. The client will simply join the multicast
group and from then hence will just listen for incoming packets, calculating the latency as they arrive. It will
continue to perform this action until the task stops. As with most tasks, the client can be scheduled to run for
a set time, or indefinitely, (that is, until you stops the test).
• Application Details
• Additional Configuration
No. of Clients Each client to be created has a row created in the Default is 1. 1 - 40, 000 clients can be
Display Window for Applications allowing statistics to be configured provisioning operation. Refer to
generated for each row. the section on Bulk and Batch Provisioning
for more details on using this field.
Name Unique name identifying the client. Mandatory. String value between 1 and
255 characters in length.
Description Description for the application. String value between 1 and 512 characters
in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Only a Direct Virtual Host can
Hosts for this Client. be selected for this client.
Multicast Group The multicast groups that the client will listen for packets Must be a valid multicast address using
on. the same IP version as the host that this
client uses. Can be selected from existing
groups being multicast to by Multicast
Latency Servers. Refer to the section on
IGMP Configuration in Chapter 11 for more
details on creating Multicast Groups.
The Unicast Latency Server may be run in UDP or TCP mode. If running in TCP mode it will bind to the
specified TCP port. Only one application task can bind to a specific TCP port of a (non subnet) Host. In
either UDP or TCP mode, the Unicast Latency Server will create a listener and listen for incoming requests
on the specified port number.
When a valid request is received, the Unicast Latency Server will stream data to the client as specified by
the request. As each individual packet is transmitted, a timestamp will be inserted into it to enable the client
to determine how long it took the packet to reach him. The streamed data will be transported over the same
protocol as the server is configured to use, either UDP or TCP.
The following wizard is displayed for provisioning a Unicast Latency Server application:
• Application Details
• Additional Details
Name Unique name identifying the Unicast Latency server Mandatory. String value between 1 and
application. 255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct/Indirect Virtual Host.
hosts which the server will use to access the SUT.
Transport Type Specifies the transport protocol that this server is Can be either UDP or TCP. Default is TCP.
configured to use.
TCP/UDP Port This specifies the port that the server will listen for Mandatory. Integer 0-65,535. Default is 1.
incoming requests on.
ToS/DiffServ Quality of Service metric for the server application. Mandatory. Integer value between 0 and
255. Default is 0.
As each individual packet is received, the Unicast Latency Client will determine the latency of the network
by looking at the timestamp in the packet and subtracting the value in the timestamp (that is, when it was
transmitted by the server) from the current time.
There is no concept of an iteration for a Unicast Latency Client. The client will simply make it's request to the
server, and from then hence will just listen for incoming packets, calculating the latency as they arrive. It will
continue to perform this action until the task stops. As with most tasks, the client can be scheduled to run for
a set time, or indefinitely, (that is, until you stops the test).
• Application Details
• Client Details
• Additional Configuration
No. of Clients Each client to be created has a row created in the Default is 1. 1 - 40, 000 clients can be
Display Window for Applications allowing statistics to be configured provisioning operation. Refer to
generated for each row. the section on Bulk and Batch Provisioning
for more details on using this field.
Name Unique name identifying the client. Mandatory. String value between 1 and
255 characters in length.
Description Description for the application. String value between 1 and 512 characters
in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct or Indirect Virtual Host.
Hosts for this Client.
Transport Type Specifies the transport protocol that this server is Can be either UDP or TCP. Default is TCP.
configured to use.
TCP/UDP Port The UDP or TCP Port that the client will initiate its Mandatory. Integer value between 0
requests from. If the port is set to the "wildcard" port and 65,535 or wildcard port (Use next
(Use next Available), the application will bind to the first Available). Default is wildcard.
available, non-privileged port.
Multicast Group The multicast groups that the client will listen for packets Must be a valid multicast address using
on. the same IP version as the host that this
client uses. Can be selected from existing
groups being multicast to by Multicast
Latency Servers. Refer to the section on
IGMP Configuration in Chapter 11 for more
details on creating Multicast Groups.
Server Reference to the Unicast Latency Server with which this Select from the provided list of server
client will communicate. Note: Ensure that the server is applications.
using the same protocol (UDP or TCP) as the client.
Latency Interval This is the delay that the server will use between the Allowable values are: 0.0001 seconds,
transmission of each individual packet. 0.001seconds, 0.01 seconds, 0.02
seconds, 0.025 seconds, 0.03 seconds,
0.033 seconds, 0.04 seconds, 0.05
seconds, 0.1 seconds, 0.25 seconds,
1 seconds, 2 seconds, 5 seconds, 10
seconds, 30 seconds, 1 minute, 5 minutes.
Default is 0.01 seconds.
Payload Size The size of each payload in a packet. Used with the Mandatory. Integer. 1 to (Host MTU -
Latency Interval, this results in a packet rate used to Headers). Default 1316 bytes.
deliver the a variety of bandwidth rates up to and including
80 Mbit/sec per second.
8.2.18. Netflow
NetFlow is a network protocol, introduced by Cisco, that collects statistics on IP network traffic as it enters
or exits an interface. Cisco NetFlow is made up three parts: the Analysis Application, the NetFlow Collector,
and the NetFlow Exporter.
TeraVM Netflow emulates the NetFlow Exporter by creating an application called the Netflow Export Agent.
The Netflow Export Agent produces Netflow packets and sends them to the Netflow Collector, where the
device under test is the Netflow Collector.
TeraVM Netflow emulation can be found under the menus Applications > Netflow with the sub-menus
Netflow Export Agent(s) and External Netflow Collector. The provisioning details are explained in the
sections that follow.
For Netflow back-to-back testing UDP Sink applications can be provisioned. For more information, see
section Section 8.2.25.
Each template is represented by a unique identifier. The following example shows the 18th field from a
template and below it is a description what the information represents:
• Pen provided: if set to yes, this means that the field will also contain the Personal Enterprise Number.
If a you want to use a type that is not defined by the IETF yet, then you must reserve some elements
under their Private Enterprise Number.
• Type 12344: this is the field identifier. Field identifiers can take values between 0 and 32767.
• Length: actual length if the field has a fixed length or 65535 if the length of the field can vary across
netflow packets.
• PEN: if Pen provided was set to "yes", this is the value of the PEN (ciscoSystems in this example).
To generate a generic Netflow report, you should choose the Export Agent Type as IPFix - Generic. The
fields in the generated packets depend on the template uploaded, if a field is entered that is not present in
the template, then that field will ignored.
This section shows the dialog for each step through the wizard for provisioning a Netflow Export Agent. The
provisioning steps are:
• Application Details
• Additional Configuration
No. of Clients Each client to be created has a row created in the Default is 1. 1 - 50,000,000 clients can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. on Bulk and Batch Provisioning for more
details on using this field.
Configure as Configures how the Applications are provisioned, and The options for this field are:
displayed in the Application Display Window. Refer to the
• Single App Per Row
sections on Scaled Entity Provisioning and Bulk and Batch
Provisioning for more details on using this field. • Scaled Entity
The default value is "Scaled Entity". The
"Single App per Row" option can only be
selected by the user.
Name Unique name identifying the NetFlow Client. Mandatory. String value between 1 and
255 characters in length. With the following
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct or Indirect Virtual Host or
Hosts for this Test Group. Subnet Host. A user is not able to choose
multiple hosts for a single application.
UDP Port The Port on which the NetFlow Client will bind to it's host. Default value 4739. Integer with a min and
max value between 0 and 65535.
Use Next Available If the port is set to Use Next Available, the application will Default value is set to false. When the "Use
bind to the first available, non-privileged port. Next Available" option is enabled (set to
TRUE). the numeric input field will become
unavailable.
ToS/DiffServ Quality of Service metric for the client. Mandatory. Integer value between 0 and
255. Default is 0.
When Create Reverse Flows is enabled, the flow direction field (field 61) is set to 0x01 for the egress
flow with the same protocol and application ID as the forward flow. IP addresses, ports and interfaces are
reversed with independent values for the number of packets and bytes.
Table 8-199. Example of Forward Flow and Reverse Flow
Ingress Interface 3 2
Egress Interface 2 3
Netflow Collector Used to select the NetFlow Collector Application that Mandatory. The user can only select one of the
will receive the traffic. following, previously configured, applications:
- External Netflow Collector;
- UDP Sink
Export Agent Type Used to select between the choice of: Mandatory. IPFIX - AnyConnect is the default
setting.
• IPFIX - AnyConnect
• IPFIX - Generic
Template Resource Uses the "resource list" item (like in Add Playback Mandatory. Only capture files are accepted for
resource list) to allow to upload a template file. this field.
A default resource list will be created for ASA
AnyConnect
Template Replay Interval Sets how often the template will be replayed. 1 minute default setting.
Template Indexes Used to select which template within the template Mandatory.
file the NetFlow packets will use. There are four
Enter Index - User can enter a number to
selections to choose from.
identify the template they want to use.
• Enter Index
Enter Index When this value is left in the Template Indexes Must enter a number that corresponds to a valid
drop-down box. You can enter the number of the Index. The test fails if the chosen index is not
Template Index you want to select. valid.
Number of Flows per Test The number of flows allowed per Test Agent. Default value 1000. Value can be in the range of
Agent 1 to 1,000,000.
Create Reverse Flows Check box for the creation of reverse flows, only Boolean value. Default value:
available when Export Agent type is IPFIX -
• True - if Export Agent Type is IPFIX-
Generic.
Generic.
• False - if Export Agent Type is IPFIX-
AnyConnect. (Disabled)
Mandatory.
Flow Records Rate Number of flow records per second. There can be Default value: 1000 seconds. Value checks the
more than one flow record per packet so this does range of 1 - 10000000.
not directly indicate the number of packets.
Mandatory.
Flow Duration Used to define how long a flow will last. Default value: 5 minutes. This value can be
anywhere in the range of 1 second to 24 hours.
When this time period expires, new flows will be
created to replace those that have finished.
Flow Records per Packet Choose if the number of flows per packet should be Default value: Max. Value check for either "Max"
specified or allow as many flows as possible. or "Specify".
Mandatory.
Specify Flows per Packet Maximum number of flows per packet when Flows Default value: none. This value can be anywhere
per Packet is set to Specify. in the range of 1 to 100.
Mandatory.
IP Addresses - IP addresses can be either IPv4 or IPv6. They do not need to be of the same type as the
host.
Application ID/ Selector Selector part of the Application ID field. 1-255 Application ID 95
Value in the range of 0 - 4294967295.
Selector 302
Optional value, if Engine ID is set,
Selector ID must be set as well.
OS Name String List Configuration item. A For example: Win10, Win7 Mac 12334
list of operating system names OS X, iOS, Android, Linux.
to be used for the data packet
generation.
System Manufacturer String List Configuration item. A For example: Manf-1, Manf-2, 12336
list of system manufacturers. Manf-3, Manf-4, Manf-5,
Manf-6, Manf-7, Manf-8,
Manf-9, Manf-10
Process Name String List Configuration item. A For example: firefox.exe, 12340
list of processes names. chrome.exe, ie.exe, safari.exe
Parent Process Name String List Configuration item. A For example: explorer.com 12342
list of parent processes names.
DNS Suffix String List Configuration item. A For example: cisco.com 12344
list of DNS suffix names.
• Application Details
• External Properties
Name A unique identifier for the Netflow collector application. Mandatory. String value between 1 and
255 characters in length.
Description Gives the option to add a description to the Netflow String value between 1 and 512 characters
collector application. in length. No Default.
Optional.
External Host Select an External Host from the list of the previously Select from the list of External Hosts.
configured IP Hosts for this Test Group.
UDP Port Enter UDP Port Number. Default set to 4739. Integer value between
0 and 65535.
To enter a Property/Name value pair, click on the Add button on this page, and the Add Property Value
dialog is displayed.
When operating over a TCP/IP network (the only mechanism supported by TeraVM), a POP3 server usually
accepts connections from POP3 clients on TCP port 110.
A TeraVM server is very basic in that, the server does not store mail on a per user basis. Instead the server
is configured with a fixed number of messages (Message Count) which it returns to any client requesting
mail for any user. The size of the messages returned can be varied by applying a profile to the property
representing the message size (Individual Message Size).
If you select to add an POP3 Server Application, the Add New POP3 Server Wizard dialog is displayed.
• Application Details
• Server Details
• Additional Configuration
Number of Servers A server is created as either an application in a single row Default is 1. When more than 1 is enters
in the Application Display Window or based on scaled the Configure As field changes to Scaled
entity where the Number of Servers is the scale factor for Entity automatically. Refer to the section
the scaled server. on Bulk and Batch Provisioning for more
details on using this field.
Configure As Configures how the server(s) are provisioned. Either as Mandatory. Options: ‘Single App Per Row’
a single application per row in the Application Display and ‘Scaled Entity’. Default: ‘Single App
Window, or as a scaled entity. Refer to the sections Per Row’
on Scaled Entity Provisioning and Bulk and Batch
Provisioning for more details on using this field.
Name Unique name identifying the POP3 Server Application. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct or Indirect Virtual Host. If
hosts which the server will use to access the SUT. Direct, then IP address must be static.
TCP Port The TCP Port on which the POP3 Server will listen for Integer value between 0 and 65535.
TCP connections. Default is 25. Advanced TCP
Characteristics can be configured by
clicking on the Advanced TCP button in
this step. Refer to the chapter on TCP
Configuration.
ToS/DiffServ Quality of Service metric for the POP3 Server application. Mandatory. Integer value between 0 and
255. Default is 0.
The following information is required to provision the POP3 Server Application - Server Details.
Table 8-205. POP3 Server Application Server Details
No. of Messages on each Number of messages available on the server for popping. Mandatory. Integer value. Min of 0 and a
Server max of 10000 with a default of 0.
Size of each Message Size of each message which will be returned during pop. Mandatory. Can have an Integer value or
This must be > 0 if the No. Of Messages on Server is > 0. a profile. Min value of 0 and a max value
of 5000000 (bytes) with a default of 0. If
the message count is 0 then the individual
message size must be 0. Supported
Metrics are KiB and MiB with KiB as the
default.
The destination for the packets sent from the Client will typically be a either a TeraVM POP3 server or
External POP3 server application.
• Application Details
• Addressing Details (Only appears if the Configure As field is set to either "Single Client per Row -
Varied Address" or "Multiple Clients per Row",. Refer to the section on Bulk and Batch Provisioning for
details of this steps)
• Client Details
• Additional Configuration
No. of Clients Each client to be created has a row created in the Default is 1. 1 - 50,000,000 clients can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. on Bulk and Batch Provisioning for more
details on using this field.
Configure as Configures how the Applications are provisioned, and The options for this field are:
displayed in the Application Display Window.
• Single App Per Row
Refer to the sections on Scaled Entity Provisioning and • Scaled Entity
Bulk and Batch Provisioning for more details on using this
• Single Client Per Row - Varied
field.
Address
When using this option, the No. of
Clients field will represent the No. of
Rows.
• Multiple Clients Per Row
When using this option, the No. of
Clients field will represent the No. of
Rows.
The default value is "Single App per Row",
but when the No. of Clients is greater than
1, the default value is changed to "Scaled
Entity".
Name Unique name identifying the POP3 Client. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct or Indirect Virtual Host or
Hosts for this Test Group. Subnet Host.
TCP Port The TCP Port on which the POP3 Client will bind to it's Integer with a min and max value between
host. If the port is set to the wildcard port, the application 0 and 65535. Default is the wildcard that
will bind to the first available, non-privileged port. is, Use Next Available. Advanced TCP and
rate Limit Characteristics can be configured
by clicking on the Advanced TCP button
ToS/DiffServ Quality of Service metric for the client. Mandatory. Integer value between 0 and
255. Default is 0.
Server TeraVM or external server with which the POP3 client will Required. When provisioning more than
communicate. 1 Application, or when the Configure As
field is set to "Scaled Entity" more than one
Server can be selected.
User List Group of users and their passwords to be used when Mandatory. In the format of
retrieving mail from the server. username@domain. Select from a
previously configured User Group List or
create a new one. Refer to the section on
SMPT/POP3 Configuration in Chapter 11.
Delete Messages from If enabled, this field indicates that messages should be Enabled or Disabled. Default is Disabled.
Server deleted from the server after they have been retrieved.
If the client leaves mail on the server, then it will re-read
mail.
Delay Between Sessions Delay between each POP3 session. Mandatory. Can have a value in the range
0 - 60,000 (ms). It can also be a profile with
min and max values within this range. 0
means no delay. Default is 0. Supported
metrics are ms and sec with ms as the
default.
Start Inactive Period After Number of sessions after which the POP3 Client will Can have an integer value in the range
cease it's activities, waiting a defined period of time before 0 - 100. 0 means no inactivity will occur.
resuming activity. Default is 0.
Period of Inactivity Period of time during which no activity will take place. This Can have a value in the range 0 -
period of inactivity will begin once the specified number of 3,600,000 (ms). It can also be a profile with
sessions (Start Inactive Period After) have occurred. This min and max values within this range. This
value must be 0 if the Number of Sessions is 0. can be non-zero only when the Number of
Sessions is non-zero. 0 means no inactivity
will occur. Default is 0. Supported metrics
are ms, sec, min and hour with ms as the
default.
If you select to add an External POP3 Server Application, the Add New External POP3 Server Wizard
dialog is displayed.
Name Unique name identifying the External POP3 Server Mandatory. String value between 1 and
Application. 255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Select from the list of External Hosts.
hosts which the server will use to access the SUT.
TCP Port The TCP Port on which the Receiver will listen for TCP Integer value between 0 and 65535.
connections. Default is 25.
To enter a Property/Name value pair, click on the <Add> button on this page, and the Add Property Value
dialog is displayed:
Raw Port Playback tests are different to other tests in the following ways:
• The application is completely stateless. It simply replays the contents of a capture file (or files) through
a physical port.
The following information is required for the Application Details step of the wizard:
Name Unique name identifying the Raw Port Playback Mandatory. String value between 1 and
application. 255 characters in length.
Description This field allows you to enter a description for the Raw String value between 1 and 512 characters
Port Playback application. in length. No Default. Optional.
Physical Interface The test port out of which the packets will be transmitted. Mandatory. Select from the available list.
This application takes over the port that is, no other
application can run on it.
Playback Resource Lists List of pcap files with TCP conversations Mandatory. Choose an existing resource
list or create one and then choose it. The
selected Resource List must also be used
by the TCP Playback Client. Refer to the
section on Playback Resources in Chapter
11 - Configuration.
Delay Between Resources Delay between finishing sending one resource and Can have an integer value or a profile
starting to send the next. with max and min values of 0 and 60,000
(ms) respectively . Default is 0. Allowable
metrics are ms and sec with ms as the
default.
The Head End Monitor application simply provides the ability to capture the incoming packets on a TeraVM
port.
This application is similar to the Raw Port Playback application, that is, :
The following information is required for the Application Details step of the wizard:
Table 8-210. Head End Monitor Application Fields
Name Unique name identifying the Head End Monitor Mandatory. String value between 1 and
application. 255 characters in length.
Description This field allows you to enter a description for the Head String value between 1 and 512 characters
End Monitor application. in length. No Default. Optional.
Physical Interface The port (interface) on which packets will be captured. Mandatory. Select from the available list.
The TeraVM port cannot be used for anything else.
Frame Rate Integer value that describes the rate at which video frames Mandatory. Allowed values are 1 - 5,000.
will be received. Default 50.
Image Width Integer value that describes the width of the video image. Mandatory. Allowed values are 1 - 5,000.
Default 720.
Image Height Integer value that describes the height of the video image. Mandatory. Allowed values are 1 - 5,000.
Default 576.
Pixel Encoding String value that describes the pixel encoding of the video Mandatory. Default "YUV". Max 50 chars.
image.
Point-to-Point Protocol over Ethernet (PPPoE), is a network protocol which encapsulates Ethernet frames.
Ethernet networks are packet-based and have no concept of a connection or circuit. But using PPPoE,
users can virtually "dial" from one machine to another over an Ethernet network, establish a point to point
connection between them and then transport data packets over the connection.
• Discovery
• Session
When a Host wishes to initiate a PPPoE session, it must first perform Discovery to identify the Ethernet
MAC address of the peer and establish a PPPoE session ID. While PPP defines a peer-to-peer relationship,
Discovery is inherently a client-server relationship. In the discovery process, a Host (the client) discovers
an Access Concentrator (the server). Based on the network topology, there may be more than one access
concentrator that the host can communicate with. The Discovery stage allows the host to discover all Access
Concentrators and then select one. When Discovery completes successfully, both the host and the selected
Access Concentrator have the information they will use to build their point-to-point connection over Ethernet.
1. The host broadcasts the initiation packet, PPPoE Active Discovery Initiation ( PADI).
2. One or more Access Concentrators (servers) send offer packets, PPPoE Active Discover Offer
( PADO), to the host.
3. The host sends the unicast session request packet, PPPoE Active Discovery Request ( PADR), to the
Access Concentrator from which it requests service.
4. The selected Access Concentrator sends the confirmation packet, PPPoE Active Discovery Session-
confirmation (PADS), to the host.
Once in the session stage, PPP data is sent as in any other PPP encapsulation.
To tear down or close the session, either the host or the Access Concentrator sends the termination packet,
PPPoE Active Discovery Terminate (PADT). PPP supports a number of authentication protocols including:
Both of these authentication protocols are used to validate the identity of remote clients. Both utilise user
names and passwords as a means of identification and authentication of the clients.
Internet Protocol Control Protocol (IPCP), is used to establish and configure IPv4 over a PPP link. IPCP is
responsible for configuring, enabling, and disabling the IPv4 protocol modules on both ends of the point-
to-point link. An important feature of IPCP is the ability for an IPCP enabled PPPoE server to assign IPv4
addresses to IPCP enabled clients. It is a requirement that the TeraVM PPPoE server supports IPCP.
The steps following are required to provision an PPPoE Server application are:
• Application Details
• Configure Settings
• IPCP Configuration
Name Unique name identifying the PPPoE Server Application. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct Virtual Host with a
hosts which the server will use to access the SUT. statically assigned IPv4 Address to access
the network. That host must not be PPPoE
Service Name The Service Name to use for the PPPoE session. If more Optional. String value between 0 and 1474
than one TeraVM PPPoE Server replies with a PADO characters in length. Valid characters are
packet, the PPPoE client will select the TeraVM PPPoE alphanumeric characters or .<>{}[]@#()&*
Server for a particular server using the supplied service %_-+= No defaults.
name.
Access Concentrator The Access concentrator name to use for the PPPoE Optional. String value between 0 and 1474
session. If more than one TeraVM PPPoE Server replies characters in length. Valid characters are
with a PADO packet, the PPPoE client will select the
Retransmit Timer This numeric value specifies the delay between Default is 3000ms. Integer value between
retransmission for various PPPoE, PPP and LCP packets. 1000 and 3600000 ms.
MRU Maximum Receive Unit (MRU). This defines the size of Mandatory. Integer value between MTU
the largest PPPoE packet that the PPPoE server can and 9216. Default is 1492.
receive.
Authentication Specifies the type of authentication used by the server None, PAP, CHAP Default: None
to authenticate a user to a remote access server or ISP
using username and password.
Starting Session ID The starting session ID which the PPPoE server will give Default is 1.
out to clients.
By clicking on the Advanced button on this dialog, the Advanced PPPoE Settings dialog is displayed which
enables you to complete all the information related to PPPoE settings that need to be configured.
Use A/C Cookie Option to use the A/C Cookie tag. PPPoE can detect DoS Default is ticked.
attacks using A/C Cookies.
Double Retransmit Time Option to use double the retransmit time for the TeraVM Mandatory. Default is not ticked.
PPPoE Server. It doubles the time to re-transmit the
packets.
Use Magic Number Option to use the magic number. PPP detects looped Mandatory. Default is ticked.
links using magic numbers. LCP message may include
a magic number. If a line is looped, the node receives a
LCP message with its own number, instead of getting a
message with the peer's magic number.
Test Request Mode The type of packet to be sent over the LCP link to test/ None, Echo, Discard. Default is Echo.
debug the link.
Test Payload Size The size of the LCP request/replies tests packets. Specific value or a profile. Integer value
between 0 and 9216. Minimum value is 0
- this will still send a valid echo request.
The maximum value should be the value of
the local MRU. Default is 1492. On some
hardware test packets may not be sent if
the Test Payload Size is greater than 1492.
Test Interval In the LCP echo/discard requests/replies, the delay Integer value between 1000 and 3600000
between these LCP test packets. ms. Default is 30 seconds. The frequency
can be specified in ms, sec or min. Default
is sec.
Starting IP Address/Prefix The starting IP Address used as the base for creating No default.
the previously specified No of IP Addresses. All these
addresses are then available for allocation to PPPoE
enabled clients.
No. of IP Addresses Specifies the number of IP Addresses to be created and Mandatory. Default is 100. Min is 1 and
which are available for allocation to PPPoE Enabled Max is controlled by the specified Start IP
clients. Address and Prefix.
DHCP operations fall into four basic phases. These phases are IP discovery, IP lease offer, IP request, and
IP lease acknowledgement.
When a DHCP-configured client connects to a network, the DHCP client sends a discovery query requesting
necessary information from a DHCP server. DHCP servers manage a set of IP addresses and other
information about client configuration parameters such as the default gateway, the domain name, the DNS
servers, other servers such as time servers, and so forth. Upon receipt of a valid request, the server will
assign the DHCP client an IP address, a lease (the length of time for which the assigned IP address is
valid), and other IP configuration parameters, such as the subnet mask and the default gateway.
DHCP provides three modes for allocating IP addresses. The best-known mode is dynamic, in which
a DHCP client is provided a "lease" on an IP address for a period of time. At any time before the lease
expires, a DHCP client can request a renewal of the lease on its current IP address. A properly functioning
client will use the renewal mechanism to maintain the same IP address throughout its connection to a single
network, otherwise it may risk losing its lease while still connected, thus disrupting network connectivity
while it renegotiates with the server for its original or a new IP address.
The TeraVM DHCP server is an implementation of a DHCPv4 Server and supports most of the functionality
described above. It is capable of providing both DHCPv4 enabled TeraVM hosts and external DHCPv4
clients with IP addresses and other configuration parameters such as default gateway, subnet mask, domain
name, DNS server and lease time. It will allocate IP addresses using only the dynamic allocation mode.
The DHCP Server tracks leases by mapping the leased IP Address to the MAC address of the Host that
holds the lease. Therefore, if two Hosts have the same MAC address, they will look like a single Host to the
DHCP Server. If they both request the same IP Address, the server will assume that these are repeated
DHCP requests from the same Host, (this could legitimately happen when a Host is taken Out of Service
then put back In Service), so it will offer the same address to both. The easiest way to avoid this confusion is
to ensure that DHCP-enabled Hosts have unique MAC addresses.
• Application Details
• IP Address Assignment
• Server Settings
Name Unique name identifying the DHCPv4 Server Application. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct Virtual Host with a
hosts which the server will use to access the SUT. statically assigned IPv4 Address to access
the network. That host must not be PPPoE
enabled. The host must have a Gateway
assigned to pass runtime validation and
only one DHCPv4 Server can be created
on any given combination of interface/vlan.
Subnet The subnet from which the leased IP Addresses are Mandatory, IPv4 address. Cannot be a
taken. loopback or multicast address. Default
value is the subnet the Server's host is in.
Start IP Address within The first IP Address in the range of IP Addresses to lease Mandatory, IP v4 address. Cannot be a
Subnet to clients. loopback or multicast address. Must be
within the specified "Subnet" and different
to the Server's host IP Address. Default
value is the first assignable IP Address in
subnet - unless that address is owned by
the Server's host, in which case the next
address is the default.
No. of IP Addresses This numeric value specifies the number of IP Addresses Default is 1. Integer value between 1 and
available for leasing to clients. the number of addresses in the range.
Gateway IP The IP Address clients should use as their default Mandatory, IPv4 Address. Cannot be a
Gateway. loopback or multicast address. Must be
within the "Subnet" specified but not within
the list of leasable addresses.
DNS Server IP The IP Address of the DNS Server clients should use. Optional, no default. IPv4 Address
Domain The Domain Name clients should use. Optional, no default. String of 1 - 32
characters.
Lease Time The time for which the DHCPv4 Server will lease an IP Mandatory, no default. Can be Infinite or
ddress to the client. a value betweeen 0 and 4294967 secs.
Supported metrics are secs, mins, hrs,
days.
Rebinding Time The time after which the client will attempt to obtain/renew Optional, no default. Can be Infinite or
an IP Address again with any DHCPv4 Server. a value betweeen 0 and 4294967 secs.
Supported metrics are secs, mins, hrs,
days.
Renewal Time The time after which the client will attempt to obtain/renew Optional, no default. Can be Infinite or
an IP Address again with the original DHCPv4 Server from a value betweeen 0 and 4294967 secs.
which it got it's address. Supported metrics are secs, mins, hrs,
days.
Broadcast DHCP Offer If enabled, the Server will deliver broadcast DHCP Offer Optional. Default is Disabled.
Messages Messages.
Include Relay Agent If enabled the Server is "Relay Agent aware" and will echo Optional. Default is Disabled.
Information in Replies Option 82 (Relay Agent Info) in its replies.
8.2.24. TWAMP
TWAMP (Two-Way Active Measurement Protocol) is a "Ping-like" protocol that is, used to measure the
network latency between IP, (v4 or v6), endpoints. TWAMP builds upon OWAMP, (One-Way Active
Measurement Protocol), which is specified in RFC 4656.
2. The Control Client and Server then negotiate test session parameters over this TCP connection.
3. Once the session parameters are agreed by both parties, the Control Client starts a "Session Sender".
The Session Sender sends UDP packets to the Reflector, and the Reflector returns those packets to the
Session Sender, whereupon statistics such as round-trip times, lost packets, jitter, and so on. can be
calculated.
There are three types of TWAMP applications which can be provisioned in TeraVM. These are:
Within TeraVM, the term "Client" will be used in this specification to refer to the combination of "Control
Client/Session Sender", and the term "Server" will be used to refer to the "Server/Reflector".
The current version of TeraVM supports unauthenticated TWAMP. TeraVM TWAMP has support for Scaled
Entities on the TWAMP client and server applications.
Scaled Entities can be edited by clicking the edit scalable properties button. The Name, Host(s), and
Control Port can be configured as Scaled Entities.
The steps following are required to provision a TWAMP Server application are:
• Application Details
• Additional Configuration
The following Application Details are required for provisioning a TWAMP server:
Table 8-220. TWAMP Server Application Fields
No. of Servers The number of entities to be created. Default value: 1. Mandatory. Type Integer.
Value checks: range from 1 to 50, 000,
000.
Configure As How the TWAMP Server Application will be scaled. Default value: Single App per Row.
Mandatory. Value checks:
• Single App per Row
• Scaled Entity
Dependencies:
• When the ‘No. of Servers’ is set to
have a value greater than 1, this field
is automatically set to ‘Scaled Entity’.
• The user will still be able to choose
‘Single App per Row’ when the ‘No. of
Servers’ is set to a value greater than
1.
Name Scalable field. Gives a unique name identifying the client. Mandatory. String value between 1 and
When using the name scaler, it defines how the TWAMP 255 characters in length.
Client Application will be scaled.
This field will be scaled when the No.
of Clients field is greater than 1 or the
Configure As field is set to Scaled Entity.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Scalable field. Defines what hosts will be used by the Default value: none. Mandatory. Value
TWAMP Server Application. checks: The hosts must be Direct Virtual
Host (DVH) or Indirect Virtual Host (IVH).
Dependencies:
• If the Configure As field is set to
Scaled Entity the user is able to
choose one scaled host or a list of
non-scaled hosts.
• If the Configure As field is set to and
the No. of Clients is set to ‘1’ the user
is able to choose only one non-scaled
host.
• If the Configure As field is set to
Scaled Entity or ‘Single App per Row’
then the scale factor of the application
Control Port Scalable field. The TCP Port that the TWAMP Server will Integer in the range 0 to 65535. Default is
listen on for incoming Control Session connections. Note: 861.
The default here is the OWAMP Control Port. This may
change if IANA assign a new port specifically for TWAMP.
Control QoS IP ToS/Diffserv bits for the Server's Control Sessions. Integer value between 0 and 255. Default
is 0.
Session QoS Default IP ToS/Diffserv bits for the Server's Test Sessions. Integer in the range 0 - 255. Default is 0
Note: If this value is 0, the Server will accept the QoS
specified by the connecting client, (if available). If
this value is non-zero, the Server will override any
recommended client value.
Scaled Entities can be edited by clicking the edit scalable properties button. The Name, Host(s), and
Control Port can be configured as Scaled Entities.
The following details are required for the Application Details step of the wizard:
Table 8-221. TWAMP Client Application Fields
No. of Clients The number of entities created. Default value:1. Mandatory. Value checks:
range from 1 to 50, 000, 000.
Configure As How the TWAMP Client Application will be provisioned. Default value: Single App per Row.
Mandatory. Value checks:
• Single App per Row
• Scaled Entity
Dependencies:
• When the No. of Clients is set to have
a value greater than 1, this field is
automatically set to Scaled Entity.
• The user will still be able to choose
Single App per Row when the No. of
Clients is set to a value greater than
1.
Name Scalable field. Gives a unique name identifying the client. Mandatory. String value between 1 and
When using the name scaler, it defines how the TWAMP 255 characters in length.
Client Application will be scaled
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Scalable field that defines how the TWAMP Client Default value: none. Mandatory. Value
Application will be scaled. checks:
• The hosts must be Direct Virtual Host
(DVH) or Indirect Virtual Host (IVH).
Dependencies:
• If the ‘Configure As’ field is set to
Single App per Row and the No. of
Clients is set to ‘1’ the user is able to
choose only one non-scaled host.
• If the Configure As field is set to
Single App per Row and the ‘No. of
Clients is set to a value greater than
‘1’ the user is able to choose one non-
scaled host or a number of non-scaled
hosts equal to the value of the scale
factor of the application.
• If the Configure As field is set to
Scaled Entity then the scale factor of
the application can be greater, equal
or less than the scale factor of the
scaled host.
Control Port Scalable field. The Control port the Client will connect Usual validation for TCP client application
from. If the port is set to the wildcard port, the application ports. Integer value between 0 and 65535.
will bind to the first available, non-privileged port. Default is valedictory port that is, Use Next
Available check box is ticked.
Control QoS IP ToS/Diffserv bits for the Client's Control Sessions. Integer in the range 0 - 255. Default is 0
Server The TWAMP Server that this Client communicates with. A TWAMP Server/Reflector Application -
This can be a TeraVM TWAMP Server or an External either TeraVM or External TWAMP Server
TWAMP Server Application.
Source Port The UDP source port the Client will use for the Test Usual validation for UDP, (for example
Sessions. Note: By default, the TWAMP Client will ask RTP/VoIP), client application ports.
the Server to use the same port as the Client for the Integer value between 0 - 65535.
Test Session. If the Server cannot use that port, it may Mandatory. Default is wildcard port
respond with a suggested alternative port. In this case, that is, Use Next Available checkbox is
the Client will accept the Server-recommended port as the ticked.
destination port for Test Session UDP packets.
Destination Port The UDP destination port the Client will attempt use for Integer value between 0 - 65535, or a
the Test Sessions. Note: If the Use Session Source Port range of values that falls within these limits.
for Destination Port checkbox is ticked, the TWAMP Optional. Default is blank, (unspecified)
Client will ask the Server to use the same port as the
Client source port for the Test Session. In either case, if
the Server cannot use the specified port, it may respond
with a suggested alternative port. If this happens, the
Client will accept the Server-recommended port.
Session QoS IP ToS/Diffserv bits for the Client's Test Sessions. Integer in the range 0 - 255. Default is 0.
Delay between Packets Delay between UDP packets in Test Session. Integer or Profile. Valid values are 1 to
3600000 (ms). Valid units are milliseconds
or seconds. Default is 100 milliseconds
Payload Size UDP Payload Size for Test Session packets. Integer or Profile. Valid values are:
• IPv4: 41 - (MTU - 28)
• IPv6: 41 - (MTU - 48).
Default is 100 bytes.
Session Duration Duration of each Test Session. Note: Currently only one Integer or Profile. Valid values are
Test Session is supported per test run. This limitation is 0 to 3600000 (secs). Valid units are
being imposed so that the statistics collected at the end of milliseconds or seconds. Default is
the test will represent "per-session" stats. 900 seconds, (15 minutes). Note: If the
Indefinite Session Duration Enabled
checkbox is ticked, the session duration is
indefinite.
Session Timeout The number of seconds the Reflector should wait after Integer value between 0 - 3600 (seconds
the Server receives a "Stop Session" command before - that is, Max = 1 hour). Valid units are
ceasing to reflect incoming session packets. Note: The seconds. Default is zero. Mandatory.
Client communicates this value to the Server during
Session Set-Up.
The following wizard is displayed for provisioning an External TWAMP Server application:
Name Unique name identifying the External TWAMP server Mandatory. String value between 1 and
application. 255 characters in length.
Description This field allows you to enter a description for the external String value between 1 and 512 characters
server application. in length. No Default. Optional.
Host(s) Select a host from the list of the previously configured Mandatory. All external applications need
IP hosts which the external server application will use to to use an External Host to communicate
access the SUT. with the SUT.
Control Port The TCP Port that the External TWAMP Server will listen Integer in the range 0 to 65535. Default is
on for incoming Control Session connections. Note: The 861..
default here is the TWAMP Control Port. This may change
if IANA assign a new port specifically for TWAMP.
The External Properties dialog enables you to configure a list of string parameter/value pairings to which no
intelligence will be applied by TeraVM.
o enter a Property/Name value pair, click on the <Add> button on this page, and the Add Property Value
dialog is displayed:
UDP Playback has similar capabilities to TCP Playback except there is no UDP connection (UDP is
connection-less). Instead there is a UDP stream of packets between two endpoints. There is no defined start
or end to the UDP stream that can be identified from the UDP protocol header. UDP streams can only be
identified from the addressing information in the packet capture file - by identifying a stream of packets that
are sent from a specific source IP address and UDP port number to a specific destination IP address and
port number. These “streams” are replayed by the UDP Playback application.
However, there does exist the possibility that a UDP stream selected using this criteria could encompass
multiple UDP streams. For instance there could exist multiple VoIP RTP streams between the same source/
destination IP address and port numbers. It will not be possible to identify such streams. Therefore, all
packets for the same source/destination IP address and port numbers will be assumed to be in the one UDP
stream.
UDP playback will only apply to the contents and timing of the UDP packets. The UDP stream is replayed
as it appears in the pcap file. For example, within a UDP stream it will not be possible to identify any re-
transmitted packets and remove them from the replay of the UDP stream. Also if the captured UDP stream
contains any lost, duplicate or out of order packets, these (errors) will be replicated in the replay.
It will not be possible to identify any UDP protocol interactions between two endpoints and maintain that
relationship in the replayed stream - where A sends B a request and B sends A a response. For UDP replay
these would be split into two separate UDP streams as they have differing source IP addresses. When
replaying these streams there will be no relationship between those two streams.
It is also a requirement to be able to change the rate at which UDP streams are replayed i.e. instead of
replaying the packets at the “rate” found in the pcap file, it will be possible to either increase or decrease the
rate at which the packets are replayed. For example, replay the packets at half or twice the rate in the pcap
There are two types of UDP Playback applications which can be provisioned in TeraVM. These are:
• UDP Playback Source Applications - replays unicast UDP streams from a packet capture file to a
destination UDP sink application.
• UDP Playback Sink Applications - receives UDP packets sent to a specific unicast IP address and port.
It accepts packets from all source IP addresses and ports.
Note
It is recommended that UDP Playback Source applications are set up first, as you will be required to
select these during the UDP Playback Sink application provisioning process.
The steps following are required to provision a UDP Playback Source application are:
• Application Details
• Source Details
• Additional Configuration
No. of Sources Each source to be created has a row created in the Mandatory. Default is 1.
Display Window for Applications allowing statistics to be
generated for each row.
Configure as Configures how the Applications are provisioned, and The options for this field are:
displayed in the Application Display Window.
• Single App Per Row
Name Unique name identifying the UDP Source application. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct or Indirect Virtual Host. If
hosts which the server will use to access the SUT. Direct, then IP address must be static.
UDP Port The UDP port for replaying packets from. Integer value between 0 and 65535.
Select a fixed port number (Use Defined Value) or one of
the following:
If you select a profile (Use Defined Value) or Use Next
Available UDP port, then a new UDP port value is
selected as each new UDP stream is selected. For next
available the application first attempts to use UDP port
1024. If it reaches 65535 in its search it will start again
at port 1024. If you select “Use Original Source Port”,
then the original source port found for each stream in the
playback resource will be used.
ToS/DiffServ Quality of Service metric for the server application. Mandatory. Integer value between 0 and
255. Default is 0.
Sink UDP Sink application where all the packets replayed from
this Replay application will be sent.
Resource Lists List of pcap files with UDP streams. Mandatory. Choose an existing resource
list or create one and then choose it. The
selected Resource List must also be used
by the UDP Playback Sink. Refer to the
section on Playback Resources in Test
Configuration chapter.
Delay Between Streams Delay in between each playback of a UDP stream by the Delay length in ms or sec or profile. Range
UDP Replay application. from 0 to 3600000 ms. Default 0 sec.
Rate Multiplier Allows streams to be sped up or slowed down. By default Value from range 0.1 to 1.0. Default 1.0
streams are replayed at the original rate defined by the
timings in the playback resource. For example, 0.1 means
streams are replayed at 1/10th of the original rate.
ARP/NS Delay Specifies the delay between packets when a replayed Range 0 - 10000 ms. Default 500 ms
packet requires an ARP/NS query. The delay allows time
• Application Details
• Additional Configuration
No. of Sinks Each sink to be created has a row created in the Default is 1. 1 - 50,000,000 sinks can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. on Bulk and Batch Provisioning for more
details on using this field.
Configure as Configures how the Applications are provisioned, and The options for this field are:
displayed in the Application Display Window.
• Single App Per Row
Refer to the sections on Scaled Entity Provisioning and • Scaled Entity
Bulk and Batch Provisioning for more details on using this
Single App Per Row - When using
field.
this option, the No. of Sinks field will
represent the No. of Rows.
Scaled Entity - When using this option,
the No. of Sinks field will represent the
No. of Rows.
The default value is "Single App per Row",
but when the No. of Sinks is greater than
1, the default value is changed to "Scaled
Entity".
Name Unique name identifying the sink. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct, Indirect or Subnet
Hosts for this Test Group. Virtual Host. Host cannot be external and a
static IP address must be used.
Use Custom Port If enabled, enter the UDP port to use for your test Default is disabled.
UDP Port The UDP port at which this applications listens for Integer with a min and max value between
incoming packets. Only selectable if Use Custom Port is 0 and 65535.
selected.
• Cisco CTS-500
Time Duration Specifies the length of time that the capture should last Integer in seconds between 10 - 86,400.
for. Default is 60 seconds.
Output Path Specifies the path to save extracted Media pcap files to. Default is the default location for the user
on the client machine. Mandatory.
Filename Prefix Specifies the prefix to use in the filename when generating String between 1 - 255 characters in
the extracted media files. length. Default is current date+time.
Mandatory.
If the media being captured is from an interaction with a CTS-3000, individual files are generated for left,
center and right positions. To replay them as one individual file a tool such as wireshark should be used to
generate an appropriate pcap file from the individual files.
• Application Details
• General Details
• Call Details
• Additional Configuration
• Passive Analysis
The following details are required for the Application Details step of the wizard:
Table 8-228. TelePresence Endpoint Application Details
No. of Clients Each endpoint to be created has a row created in the Default is 1. 1 - 50,000,000 clients can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. on Bulk and Batch Provisioning for more
details on using this field.
Configure as Configures how the Applications are provisioned, and The only valid option for this field for the
displayed in the Application Display Window. TelePresence Endpoint is:
• Single Client Per Row
Refer to the sections on Scaled Entity Provisioning and
Bulk and Batch Provisioning for more details on using this • Scaled Entity
field.
• Multiple Clients Per Row
When using this option, the No. of
Clients field will represent the No. of
Rows.
Name Unique name identifying the endpoint. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
endpoint. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Direct Virtual Host or Indirect Virtual Host.
Hosts for this Test Group. Mandatory. No default.
SIP Trunking Specifies the applications role in a SIP Trunk (if any). Possible values are Disabled, Act as Trunk
or Use Trunk. Defaults to Disabled. If
Multiple Clients Per Row is selected in
Configure as, SIP Trunking cannot be Act
as Trunk.
SIP Trunk ID Specifies the id for the SIP Trunk. Mandatory and visible only when SIP
Trunking is Act as Trunk or Use Trunk.
MCU Type Indicates which type of Telepresence system is to be Mandatory. Defaults to Cisco
emulated. In this release only Cisco TelePresence is TelePresence which is the only choice.
supported. The details of this MCU Type are described
later.
Transport Type Transport protocol to be used. UDP, TCP or TLS. Default is TCP. If TCP
is selected, Advanced TCP Characteristics
can be configured by clicking on the
Advanced TCP button in this step.
Refer to Chapter 11 for details of TCP
Configuration. Not selectable if SIP
Trunking is Use Trunk.
• If the SIP Port value is 5060, and this
field is changed to TLS, then the SIP
Port will be changed to 5061.
• If the SIP Port value is 5061, and this
field is changed to either UDP or TCP,
then the SIP Port will be changed to
5060.
SIP Port Port for endpoint to listen for SIP requests. Default is 5060. Value must be between
0 and 65535, unless SIP Trunking is Use
Trunk, in that case the field is not editable.
RTP Ports Numeric range profile indicating ports to be used for Can be a single value if the endpoint
creating RTP media sessions. RTP ports chosen shall allows maximum of one outstanding call.
always be even. If RTCP is selected on a call then RTCP Integer between 2 and 65535. Can also
port is RTP port plus one. If not specified the range is be a profile. Mandatory. Default is 16384.
16384-32767. Can be a single value as the endpoint If Single value must be unique on the
SIP ToS/DSCP Quality of Service metric for the SIP messages sent by the Integer value between 0 and 255.
endpoint Mandatory. Default is 0. Is not editable if
SIP Trunking is Use Trunk.
RTP ToS/DSCP Quality of Service metric for the media messages sent Integer value between 0 and 255.
by the endpoint. Media messages include RTP or RTCP Mandatory. Default is 0. Not editable if SIP
messages. Trunking is Act as Trunk.
Pressing the Settings button for the MCU Type displays the following dialog:
Enable CTX Mux Enable the usage of CTS Multiplex Protocol Optional, defaults to checked. Not
selectable if SIP Trunking is Act as Trunk.
CTX Mux The CTS Mux configuration item to be used during the Optional,select from available CTS Mux
mux negotiation Configuration Items. Default is CTS-1000
v1.7. Enable CTS Mux must be checked.
Enable VAD Enables control of the endpoints VAD value. This is Optional, defaults to checked.
provided to allow you setup a test whereby each endpoint
can "take the floor".
VAD Value Control Determines how the setting of the VAD Value is Depends on Enable VAD setting. Defaults
controlled. This can be controlled on a Test Group basis to "Endpoint".
by a VAD Controller or specified by the endpoint itself. If
controlled on a Test Group basis the endpoint must be
configured with a Call URI.
VAD Value Specifies the value of the Audio Activity Metric to be used VAD Control Setting must be set to
by this Endpoint. "Endpoint". Can be an integer in the range
0-100 or a profile. Defaults to 40.
Change VAD After Delay between changes of the VAD value Can only be set if VAD Control Setting is
Endpoint and VAD Value is a profile. Can
be an integer between 1ms and 24 hours
or profile with a metric. Metric can be ms,
secs, mins, hours. No default.
The following information is required for the Auxiliary Feed Control Settings:
Table 8-231. Cisco TelePresence Auxiliary Feed Control MCU Settings
Enable Auxiliary Feed Enables control of the endpoints plug-in/plug-out state. Optional, defaults to checked. Enable CTS
Control Mux Protocol must be checked.
Auxiliary Feed Control Determines how the setting of the Plug-In/Plug-Out state Depends on Enable Auxiliary Feed Control
is controlled. This can be controlled on a Test Group basis setting. Defaults to "Endpoint".
by an Auxiliary Controller or specified by the endpoint
itself. If controlled on a Test Group basis the endpoint
must be configured with a Call URI.
Initial Plug In Delay Delay before an endpoints auxiliary feed goes into a Integer between 0secs - 24hrs. Default
plugged in state. A value of 0 indicates no delay. is 0secs. Can only be specified if Enable
Auxiliary Feed Control is Endpoint.
Plug Out After The Plug Out After delay indicates how long the auxiliary Integer value between 1ms - 24hrs. Default
feed for the endpoint will remain plugged in if the Never value is 20secs. Mandatory if Never Plug
Plug Out option for the endpoint is not ticked. Out is not ticked.
Repeat Plug In/Out Cycle If this option is enabled, then the cycle of setting an Mandatory if Never Plug Out is not ticked.
auxiliary feed to plugged in and then plugged out, will be Default is ticked.
repeated with an optional delay between each repetition.
Delay before Repeat Delay before another plug in/out cycle will begin. Repeat Plug In/Out Cycle must be ticked.
Integer value between 0ms - 24hrs or a
profile. Default value is 20secs.
The following details are required for the General Details step of the wizard:
Table 8-232. Cisco TelePresence Endpoint General Details
Server TeraVM UAS or External SIP Proxy to which SIP Mandatory. No default. Not selectable if
messages will be directed. SIP Trunking is Use Trunk.
SIP Username Username used in the SIP URI for the calling entity. String value between 1 and 32 characters
in length.
SIP Domain Name The Domain Name used in SIP messags. Optional. String value between 1 and 255
characters in length.
Register with Server If enabled, the endpoint must first register with the SIP Default is Enabled when SIP Trunking is
Proxy server before starting the test. Not applicable if the Disabled and Disabled if SIP Trunking is
endpoint is configured with a TeraVM VoIP UAS. Use Trunk.
Emulate Phone Type TeraVM now supports the emulation of different Cisco Default value is "Generic Phone" when SIP
Phone Types. If the "Generic Phone" value is selected, Trunking is set to Disabled or Use Trunk,
then TeraVM will continue to emulate a generic phone and Disabled if SIP Trunking is set to Act
type, otherwise the selected phone type will be emualted as Trunk.
by TeraVM.
Use SIP Username If enabled, then the username entered in the SIP Enabled or disabled. Default is Enabled.
Username field is used in the SIP URI for the calling
entity.
Password This password is used to respond to any Digest String value between 0 and 255 characters
challenges for SIP requests from this client. If this is not in length. Optional. Default is the value of
set, the SIP request immediately fails if the client receives the SIP Username.
a challenge response.
Specify Authorization Determines whether or not the SIP Register message Enabled or Disabled. Default is Disabled.
Username will use the SIP Username in the Authorization field or a
specific Authorization value.
Authorization Username The username to use in the Authorization field if Specify This field can have a specific value or
Authorization Username is enabled. use keywords {user} and {domain}.
Any instance of the {user} keyword will
be replaced with the value of the SIP
Username. Any instance of the {domain}
keyword will be replaced by the value of
the Domain Name field for this UA.
Use Server Interval The Endpoint can choose to use the server registration Enabled or Disabled. Default is Enabled.
interval if registration with server is enabled. N/A if Register With Server is Disabled.
Registration Interval Interval between registration attempts by the endpoint, if Minimum value is 1 ms. Maximum value
registration with server is enabled. If specified, this defines is 86,400,000 ms (24 hours). Default is
the expiration interval requested by the endpoint in the 3,600,000 ms (1 hour). N/A if Register
expires field in the registration request. The requested With Server is Disabled. N/A if Use Server
expiration interval will always be 60 seconds greater Interval is Enabled. Can be a profile.
then the timer interval to allow registration to occur if the Allowable metrics are ms, sec, min and
registration occurs again. If not specified the endpoint will hour with ms as the default.
attempt to register again within the interval returned by the
server in the registration response.
Endpoint is Caller Indicates if this endpoint is making calls or not. Mnadatory. Disabled as default if SIP
Trunking is Act as Trunk, selectable
otherwise. Enabled/Disabled.
Initial Call Delay A delay which can be applied before any calls are initiated Optional. Default is 0. Supported metrics
by the Endpoint. are ms, sec, min and hour with ms as the
default. Can also be a profile.
Call URI Call URI of the conference call this Telepresence endpoint Mandatory if Endpoint is Caller is checked.
application will participate in. No default. Min 1, max 512 characters. Not
editable if SIP Trunking is Act as Trunk.
Delay Between Calls Delay between calls. If 0 is specified as the value then the Mandatory. Integer in the range 0ms - 14
next call will start immediately after the current call ends. days or profile. Supported metrics are ms,
secs, mins, hours, days. Default is 0ms.
Call Answering Delay Delay in milliseconds before sending a final response Integer between 0ms and 30,000ms. Can
accepting/rejecting a call. This can be a profile to inject also be a profile. Default is 0 meaning no
variability into the delay answering the call. delay. Allowable metrics are ms and sec
with ms as the default. Not editable if SIP
Trunking is Act as Trunk.
Busy Ratio Percentage of calls to reject with a 486 Busy Here Mandatory. Integer between 0 and 100.
response. Default is 0. Not editable if SIP Trunking is
Act as Trunk.
Allow Endpoint End Call Allows an endpoint to terminate incoming calls. Mandatory. Default is True. Not editable if
SIP Trunking is Act as Trunk.
Send 100 Trying If enabled, a 100 TRYING message is sent in response to Enabled/Disabled. Default is Enabled.
an INVITE for a call which is to be accepted.
Call Media Media streams to be used on calls. Must be a Telepresence Media Profile
Configuration Item. Mandory. Default is the
Default Telepresence Media Profile.
Average Hold Time The duration of the call, relates to the media part of the Minimum value is 0. Maximum is 168 hours
call and excludes time spent on signaling to setup and (1 week). Can also be a profile. Default
tear down the call. If 0 then this value indicates that the is 300secs. N/A if Endpoint is Caller is
call is terminated immediately after being established and disabled. Metric is ms,sec, min and hours
that no RTP media is exchanged. with sec as the default.
Enable SRTP Enables the use of SRTP by this endpoint. Mandatory - default is not checked.
Generate RTCP Reports Determines if RTCP Reports will be generated by this Mandatory - default is not checked. Not
endpoint. editable if SIP Trunking is Act as Trunk.
Mute Call Disables the transmission of audio to simulate muting the Mandatory - default is not checked. Not
call. editable if SIP Trunking is Act as Trunk.
Call Hold Control Enables control of the endpoints Call Hold settings. Mandatory - default is Disabled. Not
editable if SIP Trunking is Act as Trunk.
The following Call Hold Control options can be configured for an endpoint:
Table 8-238. TelePresence Call Hold Control Settings Dialog Fields
Initial Call Hold Delay Start delay from beginning of a call before an endpoint Mandatory. Integer between 1ms - 24hrs or
goes into a hold state. a profile. Default 20secs.
Resume Call After The Resume Call After delay indicates how long the Mandatory if Never Resume Call is not
endpoints call will remain on hold, if the Never Resume ticked. Integer between 1ms - 24hrs or a
Call option for the endpoint is set not ticked. profile. Default is 20secs.
Repeat Call Hold Cycle If this option is enabled, then the cycle of setting an Mandatory if Never Resume Call is not
endpoint call hold/resume, will be repeated with an ticked. Default is ticked.
optional delay between each repetition.
Delay Before Repeat Delay before another call hold/resume cycle will begin. Repeat Call Hold Cycle must be ticked.
Integer between 1ms - 24hrs or a profile.
Default is 20secs.
Use 100rel PRACK The 100rel PRACK is a SIP option defined in RFC 3262. It Enabled/Disabled. Default is Disabled. Not
is a PRovisional ACKnowledgement by a calling party to a editable if SIP Trunking is Act as Trunk.
provisional response.
Use Session Timer The session timer is a SIP option defined in RFC 4028. Enabled/Disabled. Default is disabled. Not
If enabled, a session timer is negotiated during the call editable if SIP Trunking is Act as Trunk.
setup. The session is renewed by either sending a SIP
UPDATE or re-INVITE during the call.
Session Expires Timer The session expiration time to be proposed by a VoIP UA Integer or profile field with value between
in any call. This field is only available if the Session Timer 1 and 3,600 seconds. Supported units are
option is enabled. seconds and minutes. Default value is 300
with default unit in seconds.
Note
Passive Analysis is not editable if SIP Trunking is Act as Trunk.
Analyse Media Type Indicate the type of Media to be Analysed. Optional. Can be Video, Audio, Video and
Audio. Default is Video and Audio.
Video Codec Codec used for analysing incoming video media stream. Must be chosen from one of the following
codec's : JPEG MPEG H.261 H.263
H.263+ H.264 MPEG-4 VC-1 Available if
Analyse Media Type is Video and Audio
or Video.
Audio Codec Codec used for analysing incoming audio media stream. Must be chosen from one of the following
codec's : AC-3, MPEG 1 Layer1, MPEG
2 Layer 2, MPEG-2 AAC, MPEG-4 AAC,
MPEG-3 Low Delay AAC, MPEG-4 High
Efficiency AAC. Available if Analyse Media
Type is Video and Audio or Video.
Playout Jitter Buffer Delay The delay before received RTP packets are considered Integer in the range 0 to 65535 ms.
played. Available units are ms and sec . Default
is 85ms for all media types. Available if
Configure Passive Analysis is enabled.
Maximum Jitter Buffer Maximum delay for the Jitter Buffer. Integer in the range 0 to 65535 ms.
Size. Available units are ms and sec .The value
must be >= to the value of Playout Jitter
Buffer. Default value is 1 sec for all media
types.
Enable Passive Analysis Enables TeraVM to collect passive analysis stats. Enabled/Disabled. Default is enabled. Only
Statistic available if Configure Passive Analysis is
enabled.
A TeraVM DNS client, once started, will continuously attempt to open UDP connections to the selected DNS
server to stress test it by sending lots of queries. The DNS client can also stress test any device that sits
between TeraVM DNS Clients and external DNS Server(s).
• Application Details
• Addressing Details (Only appears if the Configure As field is set to "Multiple Clients per Row". Refer to
the section on Bulk Provisioning for details of this steps)
• Session Details
• Queries Details
• Additional Configuration
No. of Clients Each client to be created has a row created in the Default is 1. 1 - 50,000,000 clients can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. on Bulk and Batch Provisioning for more
details on using this field.
Configure as Configures how the Applications are provisioned, and The options for this field are:
displayed in the Application Display Window.
• Single Client Per Row
Refer to the sections on Scaled Entity Provisioning and • Scaled Entity
Bulk and Batch Provisioning for more details on using this
• Multiple Clients Per Row
field.
When using this option, the No. of
Clients field will represent the No. of
Rows.
The default value is "Single Client per
Row", but when the No. of Clients is
greater than 1, the default value is changed
to "Scaled Entity".
Name Unique name identifying the DNS Client. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct or Indirect Virtual Host or
Hosts for this Test Group. Subnet Host.
UDP Port The UDP Port on which the DNS Client will bind to it's Integer with a min and max value between
host. If the port is set to the wildcard port, the application 0 and 65535. Default is the wildcard that is,
will bind to the first available, non-privileged port. Use Next Available.
ToS/DiffServ Quality of Service metric for the client. Mandatory. Integer value between 0 and
255. Default is 0.
DNS Server External server with which the DNS client will Mandatory. When provisioning more than
communicate. 1 Application, or when the Configure As
field is set to "Scaled Entity" more than one
Server can be selected.
Query List List of DNS queries to send. Mandatory. The validation of the
configuration item itself applies. Refer to
DNS Query Lists in Chapter 12 -Test Case
Configuration for more details on adding
new DNS Query Lists.
Delay Between Queries Interval between the completion of a query and starting Mandatory. Can have a value in the range
the next. 0 - 60 min. It can also be a profile with min
and max values within this range. 0 means
no delay. Default is 1 sec. Supported
metrics are us, ms, sec, min with sec as
the default.
Enable Keyword Determine whether or not keyword substitution is enabled Enabled or disabled. The default is
Substitution for the domain names configured in the DNS client disabled.
application.
Enable Malformed Specifies if malformed queries will be generated by the Enabled or disabled. The default is
Queries Generation application. disabled. When enabled, the Malformed
Queries Type is selectable.
Malformed Queries Type A list of malformed queries that can be selected if Enable Mandatory when Enabled Malformed
Malformed Queries is true. Queries Generation is enabled. Possible
values are: Empty Query, Corrupt Header,
Corrupt Labels and Random Question
Count.
Enable Recursive Queries Ask the server to recursively perform more queries if Enabled or disabled. The default is
needed and possible. enabled.
Enable Fire and Forget Makes the client faster by not waiting for and silently Enabled or disabled. The default is
Mode dropping any response. This will send one query every disabled.
“Delay Between Requests”.
The following information can be set in the Advanced DNS Queries Configuration dialog:
Table 8-244. DNS Client Application - Advanced DNS Queries Configuration
Field Description Validation
Initial Time-out Delay before a query with no response is re-sent. Mandatory if Fire and Forget is false.
Integer value between 1 and 60 secs.
Default value is 3 secs.
Max no. of Number of retransmissions before reporting a failure, Mandatory if Fire and Forget is false.
Retransmissions waiting for the delay between queries and then sending Integer value between 0 and 15. Default
the next query. value is 2.
Enable Exponential Back- When enabled the backoff factor is 2, 1 when it is Mandatory if Fire and Forget is false.
off disabled. Integer value between 1 and 60 secs.
Name Unique name identifying the External DNS Server Mandatory. String value between 1 and
Application. 255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Select from the list of External Hosts.
hosts which the server will use to access the SUT.
UDP Port The UDP Port on which the server will listen for UDP Integer value between 0 and 65535.
connections. Default is 53.
To enter a Property/Name value pair, click on the Add button on this page, and the Add Property Value
dialog is displayed.
The TeraVM Applications include a generic VPN application, which supports a number of VPN types, and
also specific ones. All are discussed in this section.
Under VPN in the Application menu, you will find the following VPN types. The next section describes how to
provision some of these.
VPN applications are used in conjunction with the following existing TeraVM entities to support the
emulation of a VPN within TeraVM:
• TeraVM Indirect Virtual Host (IVH) - provides access to the virtual interface.
• TeraVM Client Applications - these generate the traffic over the secure connection.
• create a External Secure Gateway - this represents the Secure Gateway and is used by the VPN Client.
• create a VPN Client - this will use the DVH and also can automatically create the required IVH, or it can
use an existing IVH.
• create the required applications - these generate the traffic and each application should use the
previously configured IVH.
Note
PCAPs cannot be gathered directly from running applications due to pcap filtering limitations.
This is because the pcap filter selects based on the TCP/UDP/other information, which is at a
specific offset within the packet. If an encapsulation header is added, the filter will no longer find
what it is looking for at the previously selected offset within the packet.
These two applications are used in conjunction with the following TeraVM entities to support the emulation
of AnyConnect within TeraVM:
• TeraVM Indirect Virtual Host (IVH) - provides access to the virtual interface
• TeraVM Client Applications - these generate the traffic over the secure connection
• create a Cisco AnyConnect Head-End Server - this represents the Secure Gateway and is used by the
Cisco AnyConnect VPN Client
• create a Cisco AnyConnect VPN Client - this will use the DVH and also can automatically create the
required IVH
• create the required applications - these generate the traffic and each application should use the
previously configured IVH
TLS Configuration
Cipher Suites can be configured when provisioning a AnyConnect VPN Client application. For configuring
Cipher Suites, the Tunnel Type must be set to either SSL/TLS or DTLS. You can then add your own Cipher
List by selecting a Custom Configuration option for the TLS or DTLS .
• For information on adding a Cipher Suite to a Cisco AnyConnect VPN Client, see
Section 8.2.28.1.1.1.1.
• Application Details
• Client Details
• Additional Configuration
The choice of Tunnel Type determines the options available when clicking the Settings... button.
The following details are required for the Application Details step of the wizard:
Table 8-246. Cisco AnyConnect VPN Client Application Fields
Field Description Validation
No. of Clients Each client to be created has a row created in the Default is 1. 1 - 50,000,000 clients can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. on Bulk and Batch Provisioning for more
details on using this field.
Configure as Configures how the Applications are provisioned, and The options for this field are:
displayed in the Application Display Window.
• Single Client Per Row
Refer to the sections on Scaled Entity Provisioning and • Scaled Entity
Bulk and Batch Provisioning for more details on using this
field.
Name Unique name identifying the client. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. The hosts must be a Direct
Hosts for this Test Group. Virtual Host with Static or Dynamic address
assignment.
Tunnel Type The type of tunnel used by the AnyConnect client. Mandatory. Options are DTLS, SSL/TLS
and IPSec/IKEv2. Default is DTLS.
VPN Failover Select failover method. Select from: SSL/TLS, DTLS, IKE/IPSec.
ToS/DiffServ IP ToS/Diffserv bits for the Client. Integer in the range 0 - 255. Default is 0
SSL/TLS Settings
1. In the Add AnyConnect Client-Application Details dialog box, select SSL/TLS and click Settings. The
AnyConnect Client - SSL/TLS Settings dialog opens.
2. From the TLS Version drop-down box you can select a TLS version. Or select a Custom
Configuration :
• To do this, click on the [...] browse button. The Select TLS Configuration Item dialog opens.
From the Choose from Selection field, double-click the Cipher list you want to use for your
configuration. The select TLS Configuration item closes.
• If there is no Cipher List for you to select, then click Add.... The Add TLS Configuration dialog is
displayed.
3. Under the Cipher Suites tab select the Version required. You can limit the list of Ciphers by entering
text into the Available Cipher Suites search field, the previous figure uses ECDHE as an example.
Note that the search field is case sensitive.
4. Select the List of Ciphers required from the left side column, use the >> button to move them to the List
of Selected Cipher Suites.
6. Click OK and return to the Add New HTTP Client Wizard dialog.
DTLS Settings
1. In the Add AnyConnect Client- Application Details dialog box, select DTLS and click Settings. The
AnyConnect Client - DTLS Settings dialog opens.
2. Enter the DTLS details using the table that follows. For information on the TLS settings and Custom
Configurations, see the previous procedure for SSL/TLS Settings.
Table 8-247. Cisco AnyConnect VPN Client - DTLS Settings
Enable Timer Controlled Controls whether you specifies timer intervals for fall back/ On or Off, default is Off.
DTLS Fall Back/Forward fall forward from/to the DTLS session.
Fall Back After Specifies the interval after which client stops using DTLS Optional - can be an integer between 1ms
as the IP tunnel. - 14 days or a profile with a metric. Metric
can be ms, secs, hours, days. No default.
Enable Fall Forward Timer Controls whether or not the DTLS Fall Forward Timer is Mandatory - On or Off, default is Off.
enabled.
Fall Forward After Specifies the interval after which client resumes using Optional - can be an integer between 1ms
DTLS as the IP tunnel. If value is not specified then - 14 days or a profile with a metric. Metric
AnyConnect client will never resume using the DTLS can be ms, secs, hours, days. No default.
session.
TLS Version Sets the TLS version the application should use to encrypt Mandatory if TunnelType is “SSL/TLS”.
the tunnel. Select from: TLS 1.0; TLS 1.1; TLS 1.2;
Custom Configuration. Default value: TLS
1.0.
TLS Configuration Specifies the TLS Configuration item. Mandatory if Custom Configuration is
selected for TLS Version.
DTLS Version Sets what DTLS version the application should use to Mandatory if Tunnel Type is set to DTLS.
encrypt the tunnel. Select from: DTLS 1.0; DTLS 1.2, Custom
Configuration. Default: DTLS 1.0.
DTLS Configuration Specifies the DTLS Configuration item. Mandatory if DTLS Version is set to
Custom Configuration.
AnyConnect Secure The AnyConnect Secure Gateway Server that this Client This should be a TeraVM External
Gateway communicates with. AnyConnect Server
Security Gateway Context Name of the context to request in the negotiation of the Optional - string, 1-255 in length. No
tunnel. default.
Authentication Method The type of authentication used by the AnyConnect client. Mandatory. Choice of:
• Username/Password
Machine Certificate Only applicable and visible when Authentication Method Mandatory. Can be of any of the three
Configuration of type Multiple Certificates is selected. Certificate source types. A default
certificate is provided and can be left blank.
User Certificate Only applicable and visible when Authentication Method Mandatory. Can only be configured with
Configuration of type Multiple Certificates is selected. Certificates Source type User Generated.
The Certificate configuration item must not
be same as used in Machine Certificates
Configuration. No default is provided, you
must upload a certificate.
Certificate Configuration Only applicable and visible when Authentication Method Mandatory. Can be of any of the three
of type Certificates is selected. Certificate source types. A default
certificate is provided and can be left blank.
User Name Only applicable and visible when Authentication Method Mandatory. A String value between 1 - 255
of type Username/Password is selected. characters.
The username to be authenticated with the Secure
Gateway Server. If configuring multiple AnyConnect
applications it is possible to configure unique usernames
for each application by controlling the increment
associated with this field.
Password Only applicable and visible when Authentication Method Mandatory. A String value between 1 - 255
of type Username/Password is selected. characters.
The password used to authenticate the username with
the Secure Gateway Server. If configuring multiple
AnyConnect applications it is possible to configure
unique passwords for each application by controlling the
increment associated with this field.
Enable Aggregate Available as an option for SSL/TLS and DTLS. SSL/TLS or DTLS, aggregate
Authentication authentication is optional for Username/
Password and mandatory (non-editable)
for Certificates and Multiple Certificates .
Tunnel Group Is selectable once the Aggregate Authentication has been The tunnel group is a string and has
enabled. to match a tunnel group that has been
configured on the ASA (Secure gateway).
Tunneled Host Controls how the AnyConnect client will be associated Mandatory. Choose from Auto Create
Assignment Method with it's IVH. A specific IVH can be selected or one can be (Dynamic IPv4), Auto Create (Dynamic
created automatically. IPv6) or Explicitly Specify. Default is Auto
Create (Dynamic IPv4).
Tunneled Host The name of the Host. Mandatory if the Tunneled Host
Assignment Method is Explicitly Specify.
Select from existing IVHs with assignment
type of AnyConnect IPv4 or manually
create a new IVH.
Enable Infinite Time Determines if the tunnel stays up indefinitely or gets torn Checkbox, default is ticked.
Duration on Tunnel down on a regular basis.
Delay Between Tunnels The time period between the end of one tunnel and the Integer or Profile. Mandatory if Enable
attempt to establish a new tunnel. Infinite Time Duration on Tunnel is not
ticked. Valid values are 0 to 24 hours. Valid
units are ms, secs, mins and hrs. Default
metric is ms.
DPD Detection Determines if the client is receiving packets in a timely Checkbox, default is not ticked.
fashion.
Close HTTPS Connection Closes the underlying HTTPS connection with a reset. Checkbox, default is not ticked.
with Reset
Name Unique name identifying the Cisco AnyConnect Head-End Mandatory. String value between 1 and
Server application. 255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a host from the list of the previously configured IP Mandatory. All external applications need
hosts which the server application will use to access the to use an External Host to communicate
SUT. with the SUT.
TCP Port The TCP Port that the Server will listen on for incoming Integer in the range 0 to 65535. Default is
connections. 443.
The Properties dialog enables you to configure a list of string parameter/value pairings to which no
intelligence will be applied by TeraVM.
To enter a Property/Name value pair, click on the <Add> button on this page, and the Add Property Value
dialog is displayed:
The TeraVM emulation of a Clientless VPN includes support for the Cisco Clientless VPN TeraVM
application.
The Cisco Clientless VPN application is used in conjunction with the following TeraVM entities to support the
emulation of a clientless VPN within TeraVM:
• TeraVM Client Applications - these generate the traffic over the secure connection.
• create a Direct Virtual Host (DVH). See the section on how to create a Direct Virtual Host.
• create a External Secure Gateway - this represents the Secure Gateway and is used by the VPN Client.
See the section on creating an External Secure Gateway.
• create the required applications - these generate the traffic and each application should use the
previously configured DVH.
• Application Details
• Connection Details
• Additional Configuration
The following details are required for the Application Details step of the wizard:
Table 8-250. Cisco Clientless VPN Application - Application Details Fields
No of Clients Each App to be created has a row created in the Default is 1. 1 - 50,000,000 clients can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. If greater than one it represents on Bulk and Batch Provisioning for more
the scale factor of a scaled client. details on using this field. If value is greater
than 1 the Configure As field changes to
Scaled Entity.
Configure As Configures how the Applications are provisioned, and The options for this field are:
displayed in the Application Display Window. Refer to the
• Single App Per Row
sections on Scaled Entity Provisioning and Bulk and Batch
Provisioning for more details on using this field. • Scaled Entity
The default value is "Single App per Row",
but when the No. of Clients is greater than
Name Unique name identifying the application. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. The hosts must be a Direct
Hosts for this Test Group. Virtual Host with Static or Dynamic address
assignment.
ToS/DiffServ IP ToS/Diffserv bits for the Client. Integer in the range from 0 to 255. Default
is 0
Advanced TCP An option that allows you to modify the characteristics and Optional. Default value: NULL. The
connection rate limit of the TCP. Advanced TCP dialog box contains two
fields: TCP Characteristics and Connection
Rate Limit.
Secure Gateway External Secure Gateway application. This should be a TeraVM External Secure
Gateway
User Name Username for authentication. Mandatory - string value between 1 - 255
characters. Valid characters a-zA-Z0-9 .
{}<>[]()@#&*%_+=!-
Use Client Certificates These are client certificates to be generated for the client Select to activate the client certificates.
when authenticating to a secure gateway. Deselected by default.
Indefinite session Session will not be ended by clientless VPN client This option can be either selected or
duration application. deselected. Selected by default. The
following fields, Session Duration and
Delay between Sessions are not active if it
is selected. Deselecting the option makes
them active.
Session Duration Duration of session. Integer or Profile with metric. Range from
0 ms to 14 days and can be in ms, sec,
mins, hours, and days. Is an active field if
“Indefinite clientless session duration” is
selected.
Delay between Sessions Delay between each session. Integer or Profile with metric. Range from
0 ms and 24 hours and can be in ms,
sec, mins, or hours. Is an active field if
“Indefinite clientless session duration” is
selected.
Table 8-252. Cisco Clientless VPN Application - HTTP Request Details Fields
HTTP Server HTTP Server or External HTTP Server application. If is a HTTP Server and Client Batch Mode
is set to “Scaled Entity”, can be scaled,
otherwise must be a single HTTP Server. If
External HTTP server can not be scaled..
Request List A list of HTTP Requests. Request list becomes active once HTTP
Server is configured. Click ellipsis button to
browse to Request list file.
Enable HTTPS for Selecting this option ensures that requests are to use Option becomes available to select once
forwarded requests HTTPS after being forwarded to the Secured Gateway. the HTTP server is added to the HTTP
Requests will be updated to use https and for port 443 field.
before being mangled. Note that all traffic to the Secure
Gateway is over SSL/TLS regardless of this setting.
Enable pre-mangled URLS Indicates that requests in list may contain URLs that are Option becomes available to select once
pre-mangled. These can be identified in the following field the HTTP server is added to the HTTP
as they start with a specific value and will not be subject to field.
mangling.
Pre-mangle URL Start If Enable Pre-mangled URLs checkbox is selected then String. Active if “Enable Pre-mangled
String any URL which starts with the string entered in this field URLS' is selected. Length range from 1
will not be subject to mangling process before forwarding to 255. Valid characters: a-zA-Z0-9 .{}<>[]
over VPN. ()@#&*%_+=!-/\ . Default value: /+CSCO+
Clicking Advanced the below Pre-mangle URL Start String field displays the following dialog:
Figure 8-294. HTTP Request Details - Advanced Details: open on the Keyword Substitution tab
Enable Keyword HTTP header and urls allow the use of special keywords Optional. Checkbox selection. Selecting
Substitution that are substituted at runtimes by selected values based the checkbox activates keyword
on the particular keyword. substitution. Not selected by default.
Headers A header field list allows the configuration of HTTP Optional. Available only for HTTP version
headers which are then included in requests issued by the > 0.9. When you click on the <...> button
client. beside the Headers Field List field, the
Header List Selection dialog is displayed.
Select from a previously configured Header
List or add a new one. Refer to the section
on HTTP Headers Lists in Application-
Specific Test Configuration for more
details.
Requests per Connection Number of requests to be made over each connection Mandatory if “HTTP Server” field in HTTP
within the clientless VPN session. Request Details step is configured. Integer
or profile. Range from 0 to 100,000. Default
is 0.
Delay between Delay between each connection for sending HTTP Mandatory if “HTTP Server” field in HTTP
Connections requests. Request Details step is configured. Integer
or profile. Metric in ms, sec, mins, hours.
Delay between Requests Delay between HTTP Request being forwarded over Mandatory if “HTTP Server” field in HTTP
secure clientless VPN session. Request Details step is configured. Integer
or profile. Metric in ms, sec, mins, hours.
Ranage from 0 ms to 24 hours. Default:
0ms.
Enable HTTP Response Collection of the Response Codes. Default is disabled as it takes up valuable
Code Statistics processing time. If required, then only enable for
a small number of applications.
The IPSec/IKE application has capabilities similar to the existing VPN client applications. For IKE/IPsec
VPN, however, only the IKE/IPSec Tunnel Type is allowed. IKE/IPSec Policy can be applied to IKE/IPsec
VPN Client and both IKEv1 and IKEv2 are supported.
In addition, the IKE/IPsec VPN application client allows for several types of authentication:
• Pre-Shared Key
• XAUTH
"RSA Signatures (Certificates)” authentication is used in the same way as other VPN Clients. “Pre-Shared
Key” authentication allows you to enter a unique “Pre-Shared Key” in the IPSec/IKE client. This “Pre-
Shared Key” is used to obtain a Pre-Shared Key in support of establishing a VPN connection with the VPN
Gateway.
A value
Once all the details are correct and valid a virtual interface is established on the user's client machine and
an address is allocated to this virtual interface from a pool of addresses configured on the VPN Gateway.
The user then has secure access to systems and services on the “trusted” network.
To add a new IKE/IPsec VPN Client, click the Applications drop-down list button at the top of the
Applications tab and open the VPN category. Select the “IKE/IPsec VPN Client(s)” option from the VPN
category list.
Figure 8-296. Selecting the IKE/IPsec VPN Client(s) Wizard option from the Applications > VPN sub-menu:
No. of Clients Each client to be created has a row created in the Default is 1. 1 - 50,000,000 clients can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. on Bulk and Batch Provisioning for more
details on using this field.
Configure as Configures how the Applications are provisioned, and The options for this field are:
displayed in the Application Display Window.
• Single App Per Row
Refer to the sections on Scaled Entity Provisioning and
• Scaled Entity
Bulk and Batch Provisioning for more details on using this
field. The default value is "Single App per Row",
but when the No. of Clients is greater than
1, the default value is changed to "Scaled
Entity".
Name Unique name identifying the client. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Host must be a direct virtual
Hosts for this Test Group. host with static or dynamic address
assignment. It cannot be an external host
or a subnet host. Host may have IPv4 or
IPv6 address.
Tunnel Type The type of tunnel used by the IKE/IPsec VPN client. Set to IKE/IPsec VPN. No other option is
available.
IKE/IPsec Policy The IKEv1 or IKEv2 policies being used. Refer to IKE/ Click ellipse button then Add to select or
IPsec in the Test Configuration chapter for details on how create a policy.
to create an IKE/IPsec policy.
ToS/DiffServ Quality of Service metric for the client. Integer in the range 0 - 255. Default is 0
TCP Characteristics TCP Characteristics to use. Add through the Advanced TCP dialog.
New characteristics added through the Add
TCP Characteristics.
• Host IP Address or Certificate Distinguished Name, TeraVM will compute the value of the
Identification Data internally.
• Key ID, FQDN or RFC822 Address, you must enter an input value manually for the Identification
Data, this is a scalable value.
The following dialogs show examples of the Identification Type Key ID, the Scalable Identification Edit
Properties dialog, and an RSA Signatures (Certificates) Authentication Method with Certificate Distinguished
Name selected.
Secure Gateway The Secure Gateway Server that this Client communicates This should be a TeraVM External Secure
with. Gateway
Authentication Method The type of authentication used by the VPN client. Mandatory. Four options are available:
- Pre-Shared Key
- RSA Signatures (Certificates)
- XAUTHInitPreShared
- EAP Method
Default is Pre-Shared Key.
User Name The user name used to establish a VPN connection. Mandatory if XAUTH authentication is
selected - string value between 1 - 255
characters. This can be scaled using
by default an Alpha Numeric Scaler
or by using a String List Scaler. Click
the Scaling properties button to edit
properties. It is possible to add these
Strings by importing a CSV file with a list
of values. Clicking the "Import..." button
Password The password used to authenticate the username with the Mandatory - string value between 1 - 255
Secure Gateway when XAUTHInitPreShared is selected characters. This can be scaled using
as the Authenication method. If configuring multiple VPN by default an Alpha Numeric Scaler
applications it is possible to configure unique passwords or by using a String List Scaler. Click
for each application by controlling the increment associated the Scaling properties button to edit
with this field. properties. It is possible to add these
Strings by importing a CSV file with a list
of values. Clicking the "Import..." button
in the Edit Properties dialog will open the
"CSV Import Dialog".
Pre-Shared Key Property needed to obtain a Pre-Shared Key. Pre-Shared Mandatory if “Authentication
Key is the shared secret string used to authenticate the Method” is “Pre-Shared Key” or
client in this particular group. “XAUTHInitPreShared” and if “VPN Client
Type” is “IKE/IPsec". Length range from
1 to 255 valid chars: a-zA-Z0-9 .{}<>[]
()@#&*%_+=!-. This can be scaled using
by default an Alpha Numeric Scaler
or by using a String List Scaler. Click
the Scaling properties button to edit
properties. It is possible to add these
Strings by importing a CSV file with a list
of values. Clicking the "Import..." button
in the Edit Properties dialog will open the
"CSV Import Dialog".
Identification Type Identification types are used by the Secure Gateway to Enumerated value. Mandatory. Default
determine access. value: Host IP Address.
• Host IP Address
• Certificate Distinguished Name*
• Key ID
• FQDN
• RFC822 Address
* Certificate Distinguished Name only
available if authentication method is RSA
Signatures (Certificates).
Identification Data This is a scalable property. This field is shown when the Mandatory. String value.
Identification Type is Key ID, FQDN, RFC822 Address.
Default value: ""
Length range from 1 to 255 characters
valid chars:
'a-zA-Z0-9 .{}<>[]()@#&*%_+=!-'
This can be scaled using by default an
Alpha Numeric Scaler or by using a String
List Scaler. Click the Scaling properties
button to edit properties. It is possible to
add these Strings by importing a CSV file
with a list of values. Clicking the "Import..."
button in the Edit Properties dialog will
open the "CSV Import Dialog".
EAP Method EAP stands for Extensible Authentication Protocol and Mandatory if Authentication Method is
this method identifies the two available subtype EAP EAP. Otherwise the field does not appear.
Authentication Methods used for client authentication.
Choose between two EAP authentication
methods:
- MD5
- MSCHAPv2
Username and Password fields for both
EAP methods are scalable in the same
way they are when using Pre-Shared
Key, RSA Signatures (Certificates) and
XAUTHInitPreShared authentication
methods.
Tunneled Host Controls how the VPN client will be associated with it's Mandatory. Choose from Auto Create
Assignment Method IVH. A specific IVH can be selected or one can be created (Dynamic IPv4), Auto Create (Dynamic
automatically. IPv6) or Explicitly Specify. Default is Auto
Create (Dynamic IPv4).
Tunneled Host The name of the Host. Mandatory if the Tunneled Host
Assignment Method is "Explicitly Specify".
Select from existing IVHs with assignment
type of either Dynamic IPv4 Tunnel,
Dynamic IPv6 Tunnel or manually create a
new IVH.
Enable Infinite Time Determines if the tunnel stays up indefinitely or gets torn Check box, Mandatory when Tunnel Type
Duration on Tunnel down on a regular basis. is not "None - Login Only". Default is
ticked.
Delay Between Tunnels The time period between the end of one tunnel and the Integer or Profile. Mandatory if Enable
attempt to establish a new tunnel. Infinite Time Duration on Tunnel is not
ticked. Valid values are 0 to 24 hours.
Valid units are ms, secs, mins and hrs.
Default metric is ms.
Close HTTPS connection Close the HTTPS connection used to obtain the webvpn Check box. Default is not ticked.
with RESET cookie with a RESET. It is possible to close the HTTPS
session with a RESET, making the client not wait for the
server to close its side in response to the client close.
(SUT). Each tunnel endpoint may have many inner hosts assocated with them, where each inner host
corresponds to a UE (user equipment).
1. IP over GRE.
This is IPv4 in IPv4 GRE encapsulation (statically addressed).
2. Ethernet over GRE, discussed in the next section. (IPv4 is supported).
• the number of failed PING messages before the remote endpoint is deemed to be unavailable
A PING is deemed to have failed if there is no response within the PING time interval.
The system under test (SUT) must provide the GRE headend and a DHCP server (to assign IP addresses to
the TeraVM emulated User Equipment).
GRE Tunnelled
HTTP Client
Host
N:1 GRE GW
GRE Tunnelled
HTTP Client Local Endpoint
Host
GRE Site to
Site VPN Remote Endpoint
TeraVM Application
It is assumed your TeraVM testbed is set up such that the SUT is providing the GRE Site to Site VPN
application tunnel targets (GRE Head End) of the TeraVM GRE client side. To connect this to the client side
emulated in TeraVM, you will need:
• IP Address of the Remote Gateway (Remote Endpoint parameter of TeraVM GRE GW).
• IP address of the external router the TeraVM GRE Gatways connect to.
Note
There is a M:N relationship between TeraVM GRE Gateways and GRE Tunnel Endpoints (M >=N).
An overview of the TeravM set up steps is given below. Refer to the accompanying diagram for Steps (A) to
(D). Use scaled entities where multiple hosts/applications are required.
1. Start the Java Client, and create a new test group for GRE (see the TeraVM Java Client User Guide for
more information).
• The SUT GRE Gateway (remote endpoint), (F), and secondary endpoint if you are using one.
3. (A) Create scaled TeraVM host(s) to act as client side GRE Gateway(s). This is also known as the local
endpoint(s). For complete descriptions of host parameters, see the Hosts chapter.
• Use one or multiple TeraVM test interfaces for each host, depending on the bandwidth you require.
4. (B) Create TeraVM host(s) to emulate the GRE Tunnelled (inner) Hosts, with the following host
configuration parameters.
• Select Virtual Host and leave the Network Visible box unchecked.
– In the IP Assignment field, select EoGRE Dynamic IPv4 Tunnel . IP Address will show
0.0.0.0: it will be generated at run-time from the MAC address.
– Set the gateway to the GRE gateway you created in (A) for the host(s).
– Under Link Layer Details, enter the Base MAC Address value. The actual MAC values will
be derived from this, as described in the Hosts chapter. The IP addresses of the tunnelled
hosts are obtained over DHCP.
– In the IP Address Assignment field, select Static and enter the IP address of the host.
5. (C) Next, create scaled TeraVM GRE Site to Site VPN applications for each GRE Gateway. See
General Application Fields and Site to Site VPN Fields for a complete description of fields.
• Select GRE Site to Site VPN application under the VPN application menu item.
– For number of clients (scaled or single), enter the same value as the number of gateways (A),
a different name and description.
– Choose the external SUT GRE Gateway (F) for the Remote Endpoint. You can also select a
secondary endpoint.
• In the Client Details tab, choose the GRE Protocol Type (Transparent Ethernet Bridging or IPv4),
and set other parameters as shown in the next section.
6. (D) Create the TeraVM applications for the tunnelled hosts, for example HTTP Clients.
An example TeraVM configuration for applications and hosts for EoGRE is shown below, for applications
and hosts. Both encapsulation protocols are shown.
Field Description
GRE Encapsulation Protocol Type Outer protocol used by GRE. Transparent Ethernet Bridging or
IPv4.
Secondary Endpoint Optional (Specify in failover test scenarios): external host (single
or scaled hosts).
Ping Failure Threshold Number of missed responses before switching target endpoints.
UP (Green) The Local Endpoint associated with the Ping requests are being responded to by
application is UP one of the configured remote endpoints
Error (Red) The Local Endpoint associated with the The local Direct Host is in error state or
application is in error state or disabled disabled, or ping requests are no longer
being responded to by the configured
remote endpoints.
This can happen if only a single remote
endpoint is configured, but it is down, or
a primary and secondary endpoint are
configured and both are down
Not Active (Yellow) The initial state is Not Active. Once the This is the initial state and changes to UP
Local Endpoint becomes active, so does if a ping is responded to, or ERROR if no
the application. ping is responded to by any configured
remote endpoint.
• Endpoint Failovers
• Ping Failures
You should check the run output window for any warning messages in case of misconfiguration, for example
of the Number of Clients.
Note
PCAPs cannot be gathered directly from running applications due to pcap filtering limitations. This is
because the pcap filter selects based on the TCP/UDP/other information, which is at a specific offset
within the packet. If an encapsulation header is added, the filter will no longer find what it is looking for
at the previously selected offset within the packet.
The TeraVM emulation of F5 SSL VPN includes support for the following client application:
The F5 SSL VPN application is used in conjunction with the following existing TeraVM entities to support the
emulation of a F5 SSL VPN within TeraVM:
• TeraVM Indirect Virtual Host (IVH) - provides access to the virtual interface.
• TeraVM Client Applications - these generate the traffic over the secure connection.
• create a External Secure Gateway - this represents the Secure Gateway and is used by the F5 SSL
VPN Client.
• create a VPN Client - this uses the DVH and also can automatically create the required IVH, or it can
use an existing IVH.
• create the required applications - these generate the traffic and each application should use the
previously configured IVH
• Application Details
• Client Details
• Additional Configuration
The following details are required for the Application Details step of the wizard:
Table 8-259. F5 SSL VPN Client Application Fields
No. of Clients Each client to be created has a row created in the Default is 1. 1 - 50,000,000 clients can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. on Bulk and Batch Provisioning for more
details on using this field.
Configure as Configures how the Applications are provisioned, and The options for this field are:
displayed in the Application Display Window.
• Single App Per Row
Refer to the sections on Scaled Entity Provisioning and • Scaled Entity
Bulk and Batch Provisioning for more details on using this
The default value is "Single App per Row",
field.
but when the No. of Clients is greater than
1, the default value is changed to "Scaled
Entity".
Name Unique name identifying the client. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Host must be a direct virtual
Hosts for this Test Group. host with static or dynamic address
assignment. It cannot be an external host
or a subnet host. Host may have IPv4 or
IPv6 address.
Tunnel Type The type of tunnel used by the F5 SLL VPN client. Set to SSL/TLS. No other option is
available.
ToS/DiffServ Quality of Service metric for the client. Integer in the range 0 - 255. Default is 0
The following dialog is displayed upon hitting the Advanced TCP button:
TCP Characteristics TCP Characteristics specify the values of various TCP Optional. Refer to section 11.11 for details
stack parameters such as Segment size, transmit and on adding TCP Characteristics.
receivers buffer sizes, time-out values and also the
behaviour of the TCP stack in relation to connection open/
close strategy and the use of Selective ACKing. This will
limit the number of attempted TCP connections on, for
example, a per second basis. A profile can be navigated
to using the browser button, designated with the ellipsis
symbol (...)
Connection Rate Limit Connection Rate Limit is used to control the rate at which Optional - 1 - 50000. The Metric for the
connections are generated by the Client. Rate Limit value is conn/sec. No default.
Secure Gateway The Secure Gateway Server that this Client Mandatory. This should be a TeraVM
communicates with. External Secure Gateway.
Authentication Method The type of authentication used by the F5 SSL VPN client. Mandatory. Username/Password is the
only authentication method available. If
the client is configured to be scaled, the
panel will allow to enable scaling for the
Username, Password and also for the
Initial Request-URI field.
User Name The username to be authenticated with the Secure Mandatory - string value between 1 - 255
Gateway Server. If configuring multiple F5 SSL VPN characters.
applications it is possible to configure unique usernames
Password The password used to authenticate the username with Mandatory - string value between 1 - 255
the Secure Gateway Server. If configuring multiple characters.
AnyConnect applications it is possible to configure
unique passwords for each application by controlling the
increment associated with this field.
Initial Request-URI The Initial Request-URI for the GET Request. Optional. Length range from 1 to 255. Valid
chars: a-zA-Z0-9 .{}<>[]()@#&*%_+=!-/.
Default=null.
Tunneled Host Controls how the client will be associated with it's IVH. Mandatory. Choose from Auto Create
Assignment A specific IVH can be selected or one can be created (Dynamic IPv4), Auto Create (Dynamic
automatically. IPv6) or Explicitly Specify. Default is Auto
Create. Selected host address assignment
of “Dynamic IPv4/IPv6 Tunnel” must not
have a gateway specified. Selected host
can only be referenced by at most one
VPN Client application (For example,
AnyConnect or Fortinet).
Enable Infinite Time Determines if the tunnel stays up indefinitely or gets torn Checkbox, default is ticked.
Duration on Tunnel down on a regular basis.
Delay Between Tunnels The time period between the end of one tunnel and the Integer or Profile. Mandatory if Enable
attempt to establish a new tunnel. Infinite Time Duration on Tunnel is not
ticked. Valid values are 0 to 24 hours. Valid
units are ms, secs, mins and hrs. Default
metric is ms.
Number of Retries Specifies the number of times the application will retry to Mandatory. Integer between 1 and 1000.
connect upon connection failure. Default value = 3
Delay between Retries Specifies how long the application should wait after a retry Mandatory. Integer or profile with metric.
fails to establish a connection. Metric in [ms, secs, minutes, hours ]
Length range from 0 to 1 hours. Default
value: 50 ms .
Backoff Delay Specifies the time to wait before retrying again after the Mandatory. Integer or profile with metric.
max number of retries has been reached. Metric in [ms, secs, minutes, hours].
Length range from 0 to 1 hours. Should be
>= Delay between retries. Default value: 1
min
Close HTTPS Connection Close the HTTPS connection used to obtain the webvpn Mandatory.
with RESET cookie with a RESET.
The teardown feature works by calculating the length of time required to teardown all tunnels and assigning
a random delay to the closure of each tunnel so that all tunnels are closed within the time period calculated.
For example, if you have created 10000 tunnels and entered a teardown rate of 100 tunnels/sec, your
tunnels will all be torn down in approximately 100 seconds from when the test stops. To achieve this, each
of the 10000 tunnels will be assigned a random stop delay value between 0 and 100 seconds, in a manner
that enables a gradual closure of all tunnels within the time period.
1. Add Test Agent Configuration to the Configuration section of your test group. See Test Agent
Configuration for details on how to do this.
2. If Test Agent Configuration has already been added to your test group (for example, if you required it for
a different type of test), click on the existing Test Agent Configuration Folder of your test group. Right
click on Global Configuration and select Properties.
3. On the VPN tab, enter the number of tunnels that you want to teardown per second in the field Tunnel
Teardown Rate and click OK. This teardown rate is applied to all test agents in your test group.
Note
If you add Test Agent Configuration to your test group, Graceful Tunnel Teardown is automatically
enabled and is pre-configured with a teardown rate of 100 tunnels per second to avoid congestion
on your SUT. If you do not want to use the feature and want all of your tunnels to close at once (for
example, if you want to stop your test quickly), enter a null (blank) value for the rate.
Note
Statistics showing information on Tunnel Close Attempts, Successes and Failures per second
are available and will provide information if time durations are set on tunnels or if they are set out
of service. However, there is a limitation on the results for tunnels closed using Graceful Tunnel
Teardown, since the statistics are not updated while the test is stopping.
• Application Details
• Client Details
• Additional Configuration
The following details are required for the Application Details step of the wizard:
Table 8-263. VPN Client - Application Fields
No. of Clients Each client to be created has a row created in the Default is 1. 1 - 50,000,000 clients can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. on Bulk and Batch Provisioning for more
details on using this field.
Configure as Configures how the Applications are provisioned, and The options for this field are:
displayed in the Application Display Window.
• Single Client Per Row
Refer to the sections on Scaled Entity Provisioning and • Scaled Entity
Bulk and Batch Provisioning for more details on using this
The default value is "Single Client per
field.
Row", but when the No. of Clients is
greater than 1, the default value is changed
to "Scaled Entity".
Name Unique name identifying the client. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. The hosts must be a Direct
Hosts for this Test Group. Virtual Host with Static or Dynamic address
assignment.
Tunnel Type The type of tunnel the VPN client will use. Mandatory.
• If the application is a Fortinet VPN
Client then the value must be "SSL/
TLS".
• If the application is a Juniper Network
Connect VPN Client then the value
can be either "NC ESP/SSL" or "None
- Login Only".
• If the application is an AT&T SSLT
VPN Client then the value must be
"SSL/TLS".
• If the application is an Juniper Pulse
VPN Client then the value must be
"Pulse ESP/SSL".
ToS/DiffServ IP ToS/Diffserv bits for the Client. Integer in the range 0 - 255. Default is 0
Secure Gateway The Secure Gateway Server that this Client communicates This should be a TeraVM External Secure
with. Gateway
Authentication Method The type of authentication used by the VPN client. Mandatory. Choice of Username/Password
or Certificates. Default is Username/
Password.
User Name The username to be authenticated with the Secure Mandatory - string value between 1 - 255
Gateway. If configuring multiple VPN applications it characters.
is possible to configure unique usernames for each
application by controlling the increment associated with
this field.
Password The password used to authenticate the username with the Mandatory - string value between 1 - 255
Secure Gateway. If configuring multiple VPN applications characters.
it is possible to configure unique passwords for each
Realm The realm used to identify the access details of the user Mandatory if VPN Client Type is either
when establishing a VPN with a Juniper Gateway. "Juniper Network Connect VPN" or
"Juniper Pulse VPN" - string value
between 1 - 255 characters.
Account The Account used to identify the access details of the user Mandatory if VPN Client Type is "AT&T
when establishing a VPN with a AT&T SIG VPN Gateway. SSLT VPN" - string value between 1 - 255
characters.
Tunneled Host Controls how the VPN client will be associated with it's Mandatory. Choose from Auto Create
Assignment Method IVH. A specific IVH can be selected or one can be created (Dynamic IPv4), Auto Create (Dynamic
automatically. IPv6) or Explicitly Specify. Default is Auto
Create (Dynamic IPv4).
Tunneled Host The name of the Host. Mandatory if the Tunneled Host
Assignment Method is Explicitly Specify.
Select from existing IVHs with assignment
type of either Dynamic IPv4 Tunnel,
Dynamic IPv6 Tunnel or manually create a
new IVH.
Enable Infinite Time Determines if the tunnel stays up indefinitely or gets torn Checkbox, Mandatory when Tunnel Type
Duration on Tunnel down on a regular basis. is not "None - Login Only". Default is
ticked.
Delay Between Tunnels The time period between the end of one tunnel and the Integer or Profile. Mandatory if Enable
attempt to establish a new tunnel. Infinite Time Duration on Tunnel is not
ticked. Valid values are 0 to 24 hours.
Valid units are ms, secs, mins and hrs.
Default metric is ms.
Enable Infinite Login Determines whether or not the client should stay logged Checkbox, Mandatory when the VPN
Duration into to Secure Gateway indefinitely. Client Type is "Juniper Network Connect
VPN" and the Tunnel Type is "None -
Login Only". Default is ticked.
Login Duration Duration of each login session. Integer or Profile. Mandatory if Enable
Infinite Login Duration is not ticked. Valid
values are 0 to 14 days. Valid units are ms,
secs, mins, hrs and days. Default metric is
mins.
Delay Between Logins The time period between the end of one login session and Integer or Profile. Mandatory if Enable
the attempt to establish a new login session. Infinite Login Duration is not ticked. Valid
values are 0 to 24 hours. Valid units are
ms, secs, mins and hrs. Default metric is
ms.
By clicking on the Advanced button in the Client Details step of the wizard, the following dialog is
displayed:
Close HTTPS Connection Closes the underlying HTTPS connection with a reset. Checkbox, default is not ticked.
with Reset
Name Unique name identifying the External Secure Gateway Mandatory. String value between 1 and
application. 255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a host from the list of the previously configured IP Mandatory. All external applications need
hosts which the server application will use to access the to use an External Host to communicate
SUT. with the SUT.
TCP Port The TCP Port that the Server will listen on for incoming Integer in the range 0 to 65535. Default is
connections. 443.
The Properties dialog enables you to configure a list of string parameter/value pairings to which no
intelligence will be applied by TeraVM.
To enter a Property/Name value pair, click on the <Add> button on this page, and the Add Property Value
dialog is displayed.
8.2.29. Ping
Ping is a mechanism used to test the availability of entities within a network, as well as being used to
measure the round trip time between 2 network entities.
Ping works by sending ICMP "echo request" packets from a source network entity to the destination network
entity. The source entity then measures the time it takes from sending the packet to receiving an ICMP
response from the destination entity. The time it takes each ping until the source entity receives a response
is refered to as the Round Trip Time.
• Application Details
• Ping Details
• Additional Configuration
No. of Clients The number of Ping Applications to be created. Mandatory. 1 - 50,000,000 ping
applications can be configured per
provisioning action. Default is 1.
Configure as Configures how the applications are provisioned, and The options for this field are:
displayed in the Application Display Window. Refer to the
• Single Client per Row
section on Scaled Entity Provisioning for more details on
using this field. • Scaled Entity
The default value is "Single Client per
Row", but when the No. of Clients is
greater than 1, the default value is changed
to "Scaled Entity".
Name Unique name identifying the Ping Application. Mandatory. String value between 1 and
255 characters in length. No Default.
Description A description for the Ping application. Optional. String value between 1 and 512
characters in length. No Default.
Host The virtual host use by this Ping Application. When the Mandatory. Direct or Indirect Virtual Host.
Ping Application is running, the IP Address of this host will No Default.
be the source IP Address used.
Ping IP Address The IP Address that will be pinged by this application. Mandatory. Any IPv4 or IPv6 Address. A
user can only enter an IP Address that is,
the same IP version as the Applications
host IP Address. No Default.
Delay Between Pings The delay between the sending of each ping packet from Mandatory. Can be a value in the range 1
this application. - 3,600,000 (ms). It can also be a profile.
Supported metrics are ms and secs.
Default value is 1 secs.
Packet Size The size of each ping packet in Bytes, sent by this Mandatory. Can be a value in the range 16
application. - (MTU - IP Header). Where the size of an
IPv4 Header is 20, and the size of an IPv6
Header is 40. Default value is 64.
No. of Clients Each client to be created has a row created in the Default is 1. 1 - 50,000,000 clients can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row.
Configure as Configures how the Applications are provisioned, and The options for this field are:
displayed in the Application Display Window. Refer to the
• Single App Per Row
sections on Scaled Entity Provisioning and Bulk and Batch
Provisioning for more details on using this field. • Scaled Entity
• Multiple Clients Per Row
When using this option, the No. of
Clients field will represent the No. of
Rows.
The default value is "Single App per Row",
but when the No. of Clients is greater than
1, the default value is changed to "Scaled
Entity".
Name Unique name identifying the TeraFlow Client. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. Direct or Indirect Virtual Host or
Hosts for this Test Group. Subnet Host. When provisioning more than
one Application, or when the Configure As
field is set to "Scaled Entity", more than 1
host can be selected.
Protocol Specifies the transport protocol that this TeraFlow Client is Can be either TCP or UDP. Default is TCP.
configured to use.
Port The Port on which the TeraFlow Client will bind to it's host. Integer with a min and max value between
If the port is set to Use Next Available, the application will 0 and 65535. Default is Use Next
bind to the first available, non-privileged port. Available.
ToS/DiffServ Quality of Service metric for the client. Mandatory. Integer value between 0 and
255. Default is 0.
• Teraflow
Server(s) TeraFlow Server with which the TeraFlow client will Mandatory. When provisioning more than
communicate. 1 Application, or when the Configure As
field is set to "Scaled Entity" more than one
Server can be selected.
Test Mode Test Mode that will be used. Mandatory. Either normal Teraflow or
Ookla Speed Test. Default is Teraflow
mode.
Note
If Test Mode is 'Ookla Speed Test' the
following fields must be NULL
Throughput Amount of data that is, going to be send to the Server(s). Mandatory. Can have a value in the range
1 bit/s - 10 Tbit/s. There is no default value.
Supported metrics are bit/s, kbit/s, Mbit/
Note s, Gbit/s and Tbit/s. The default metric is
The Throughput will be evenly divided among Mbit/s.
all the entities.
Payload Size This is the size of the UDP payload in bytes that will be Mandatory. Default is 1024 for UDP or
transmitted or the amount of data passed to TCP in a 8192 for TCP.
single “write” operation (refers to the size of the data
payload – it does not include headers).
Number of Sessions The number of simultaneous TCP connections or UDP Mandatory. Default is 1. The maximum
streams that the TeraVM client will establish to transmit allowed number of streams is 100,000,000.
data to the server.
Note
The Number of Sessions will be evenly divided
among all the entities.
If Test Mode is changed to Ookla Speed Test, the following dialog is displayed.
Figure 8-319. TeraFlow Client - Client Details - Ookla Speed Test Test Mode
Note
If Test Mode is 'Teraflow' the
following fields must be NULL
Download Test Duration over which to perform download Mandatory. Duration in ms/secs/mins/
tests. hours/days or create/load a Profile.
Range 0ms - 7 days. Default is 10 secs.
If 'Latency Test Duration' or 'Upload Test
Duration' is 0ms cannot have 0ms as
value.
Upload Test Duration over which to perform upload Mandatory. Duration in ms/secs/mins/
tests. hours/days or create/load a Profile.
Range 0ms - 7 days. Default is 10 secs.
If 'Latency Test Duration' or 'Download
Test Duration' is 0ms cannot have 0ms as
value.
Delay Between Latency Tests Interval between each Latency Test. That Mandatory. Duration in ms/secs/mins/
is from the reception of the PONG to hours/days.
sending the next PING.
Range 0ms - 7 days. Default is 5ms.
Download Size Requested Number of Bytes to to request in each Mandatory. Range 10-1000000 bytes.
Download request. Default is 200000 bytes.
Upload Size Requested Number of Bytes to Upload to each Upload Mandatory. Range 10-1000000 bytes.
request. Default is 750000 bytes.
Delay Between Individual Tests Interval between individual tests, that is, Mandatory. Duration in ms/secs/mins/hours
between Latency, Download and Upload or create/load a Profile.
Tests
Range 0ms - 1 hour. Default is 0ms.
Delay Between Test Cycles Interval between each test cycle, that is, Mandatory. Duration in ms/secs/mins/
duration between each cycle of Latency, hours/days or create/load a Profile.
Download and Upload
Range 0ms - 7 days. Default is 1ms
Enable Latency Statistics Latency statistics will only be gathered only if the server is Default is disabled.
configured to send latency reports.
• Application Details
• Server Details
• Additional Configuration
Number of Servers A server is created as either an application in a single row Default is 1. When more than 1 is entered
in the Application Display Window or based on scaled the Configure As field changes to Scaled
entity where the Number of Servers is the scale factor for Entity automatically. Refer to the section
the scaled server. on Bulk and Batch Provisioning for more
details on using this field.
Configure As Configures how the server(s) are provisioned. Either as Mandatory. Options: ‘Single App Per Row’
a single application per row in the Application Display and ‘Scaled Entity’. Default: ‘Single App
Window, or as a scaled entity. Refer to the sections Per Row’.
on Scaled Entity Provisioning and Bulk and Batch
Provisioning for more details on using this field.
Name Unique name identifying the TeraFlow server application. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. The following types of hosts
hosts which the server will use to access the SUT. can be selected: - - Direct Virtual Host or
Indirect Virtual Host.
Protocol Specifies the transport protocol that this TeraFlow Client is Can be either TCP or UDP. Default is TCP.
configured to use.
Port The Port on which the server will listen for sessions. Integer value between 0 and 65535.
Default is 5001.
The following information is required to provision the TeraFlow Server Application - Server Details.
Table 8-274. TeraFlow Server Application Server Details
Enable Bi-directional Specifies whether or not the server will echo received Either enabled or disabled. Default value is
Traffic traffic back to the client. disabled.
Send Latency Reports Specifies whether or not the server will send latency Either enabled or disabled. Default value is
reports to the client. This feature must be enabled in order disabled.
to receive Latency Statistics on client applications
Enable Advanced One- Allows for the collection of specific One-way statistics Enabled/Disabled. Default is Disabled.
way Statistics (Refer to the section on TeraFlow Server in the Test
Results topic for more details).
If you select to add an External TeraFlow Server Application, the Add New External TeraFlow Server
Wizard dialog is displayed.
Name Unique name identifying the External TeraFlow Server Mandatory. String value between 1 and
Application. 255 characters in length.
Description This field allows you to enter a description for the server String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Select from the list of External Hosts.
hosts which the server will use to access the SUT.
Port The Port on which the server will listen for sessions. Integer value between 0 and 65535.
Default is 5001.
To enter a Property/Name value pair, click on the Add button on this page, and the Add Property Value
dialog is displayed.
Server applications, with the exception of the HTTP Server and the TeraFlow Server, cannot use a dynamic
host i.e they must have a statically assigned IP address. Release 10.2 supports the provisioning of HTTP
and TeraFlow Servers with hosts that get their address dynamically e.g via DHCP or PPPoE.
The VNI scopes the inner MAC frame originated by the individual VM. This allows for overlapping MAC
addresses across segments but preventing traffic "cross over" since the traffic is isolated using the VNI
qualifier. This qualifier is in an outer header envelope over the inner MAC frame originated by the VM.
VXLAN could also be termed a tunnelling scheme to overlay Layer 2 networks on top of Layer 3 networks.
The tunnels are stateless, so each frame is encapsulated according to a set of rules. The VXLAN Tunnel
End Point (VTEP) is located within the hypervisor on the server which houses the VM. Thus, the VNI and
VXLAN related tunnel/outer header encapsulation are known only to the VTEP - the VM never sees it.
Note that it is possible that VTEPs could also be on a physical switch or physical server and could be
implemented in software or hardware.
• Application Details
• VTEP Details
The following details are required for the Application Details step of the wizard:
Table 8-277. VTEP Application - Application Details Fields
No. of Apps Each app to be created has a row created in the Default is 1. 1 - 100,000 apps can be
Display Window for Applications allowing statistics to be configured per server. Refer to the section
generated for each row. on Bulk and Batch Provisioning for more
details on using this field.
Configure as Configures how the Applications are provisioned and The options for this field are:
displayed in the Application Display Window.
• Single App Per Row
Refer to the sections on Scaled Entity Provisioning and
• Scaled Entity
Bulk and Batch Provisioning for more details on using this
field. The default value is "Single App per Row",
but when the No. of Apps is greater than
1, the default value is changed to "Scaled
Entity".
Name Unique name identifying the application. Mandatory. String value between 1 and
255 characters in length.
Description This field allows you to enter a description for the String value between 1 and 512 characters
application. in length. No Default. Optional.
Host(s) Select a Host from the list of the previously configured IP Mandatory. The hosts must be a static
Hosts for this Test Group. Direct Virtual Host . If more than one host
is selected all have to be the same type
either IPv4 or IPv6.
Cannot have a VNI associated with the
host. Number of apps should be less than
or equal to the number of selected hosts,
or the number of apps should be less than
or equal to the scale factor of selected
scaled hosts.
UDP Port The UDP Port that the Server will listen on for incoming Integer in the range 0 to 65535. Default is
connections. 4789.
Remote IP Address Destination Address for broadcast or muticast packets, or Mandatory. IP version must match the
for packets where the specific remote VTEP address is version of the host. It must be a multicast
unknown. or unicast address. If the VTEP application
to be provisioned is scaled, the VTEP
Details step provides the possibility of
scaling through the Remote IP Address
field:
Manage All VNIs Whether or not to manage all VNIs in a particular Physical Mandatory. Can be checked or unchecked.
Interface. Default: unchecked. Is used only if the
number of different Physical Interfaces
selected in the Host(s) field is equal or
greater than the number of apps.
VNI(s) One specific VNI or a range of VNIs that the VTEP Mandatory unless the Manage All VNIs
application will manage. option is selected. Each VNI must be
between 0 and 16777215.
Range must be defined using dashes and
the value to the right must be greater than
the value on the left of the dash.
Can only contain a single specific VNI
value if scaling is enabled for VNI(s).
The number of different Physical Interfaces
selected must be equal or greater than the
number of apps unless scaling is enabled
for VNI(s).
Default value: null. If the VTEP application
to be provisioned is scaled, the VTEP
Details step provides the possibility of
scaling through the the VNI(s) field:
Auto Create VNI-tagged Automatically creates the VNI-tagged Hosts whose traffic Mandatory, unless "Manage All VNIs"
Hosts is to be tunneled by this VTEP application. checkbox is selected. Checkbox selected
by default.
Hosts per VNI The number of hosts to be created per VNI. Mandatory if Auto Create VNI-tagged
Hosts option selected. Value: integer
between 1 and 100000. If more than 1 host
is going to be auto created an option to
define scaling for the VNI-tagged Hosts
Base IP Address will show up.
Create separate Scaled Defines whether or not a separate scaled host will be Mandatory if Auto Create VNI-tagged
Hosts per VNI created for each VNI. Hosts option selected or the VNI(s) field
has a specific value and it is not scaled.
Not selected by default.
By clicking on the Scaling Options button after the VNI field of the VTEP Details step, the following dialog is
displayed:
Start VNI Value The VNI value entered in the VNI(s) in the VTEP Details Can only contain a single specific VNI
step of the Add New VTEP Application(s) Wizard. value if scaling is enabled for VNI(s).
VNIs per Extracted App Defines how many VNIs will result in each VTEP Having just one VNIs per Extracted
application managing just one VNI. App will result in each VTEP application
managing just one VNI, but changing this
to a value more than one will result in all
VTEP apps having a range of VNIs.
Increment Size The increment size for the start VNI value. Set to 1 by default. Integer.
Some Configuration details such as Resource Lists for P2P configuration, or User Groups and Message
Sets for POP3/SMTP are application specific. Other Configuration Items such as TCP Characteristics or
Rate Limiting Configuration are generic to a Test Group.
The following application specific configurations are available in TeraVM:
• RTP Codec AVP
• RTP Stream Profile
• Adaptive Bit Rate Level Lists
• Bit Rate Level Change Lists
• HTTP
• IKE/IPsec
• IGMP/MLD
• SMTP/POP3
• VoIP
• RTSP
• FTP
• P2P
• Playback
The following configurations are non-application specific and are available for all Test Groups.
• TCP Characteristics
• Network Characteristics
• Rate Limiting
• Port Level
• Interfaces
• Profiles
Procedure
1. In the Test Group tab create a Test Group (see Add Test Group Section ) and right click on the
Configuration icon.
2. Right click on Add HTTP Configuration menu item, this will create the HTTP Configuration folder,
containing Resource List and Request List Folders.
Note
If a HTTP Configuration already exists, an error message is displayed.
3. Go to the destination folder you want to copy the Test Group to.
4. Right click and select Paste. If the specific Test Group does not exist it will be created. Otherwise an
error dialog will be displayed indicating the Test Group already exists.
Note: to paste the copied Test Group into the same folder as the original Test Group, right click and
select Paste As, and give the test group a unique name.
Note
Exporting a Configuration Folder will export all the associated Configuration Items within this folder.
Procedure
1. In the Test Group tab, select the required Test Group, and right click on <ConfigurationName>
Configuration folder under the Configuration folder.
2. Select Export, followed by Export to XML. This brings up the Save File Dialog where you can select
a directory and file name to save the Configuration Folder details in XML.
Procedure
1. In the Test Group tab, select the required Test Group, and right click on Configuration.
2. Select Import, followed by Import from XML. This brings up the Open File Dialog where you can
select a directory and XML file name to populate the Configuration Folder details.
Note
• The XML file must have <<configurationname>_configuration_folder> as its top-most
element (after <TeraVM>) in order to be a valid import file for the Configuration Folder.
• If the File Sets contained within the XML file match names that already exist they will be
ignored, even if the values are different.
Procedure
1. In the Test Group tab select a Test Group, and select the required Request or Resource List under
the HTTP Configuration folder.
2. Right click on the Request or Resource List you wish to view, and select the Properties option from the
menu. This will display the Request or Resource List Properties dialog. (Refer to the sections on Add
a Resource and Add a Request List for a description of the fields in these dialogs.)
1. Export to XML. This saves the list without changing the list name.
2. Export to XML As. This allows you to save the list details with a different list name.
Procedure
1. In the Test Group tab, select the required Test Group, and go to Resource or Request List under the
HTTP Configuration folder.
2. Right click on the list you wish to export, and select Export, followed by Export to XML. This displays
the Save Dialog where you can select a directory and file name to save your selected list details to.
Procedure
1. In the Test Group tab select a Test Group, and go to Resource or Request List under the HTTP
Configuration folder.
2. Right click on the Resource or Request List you wish to export, and select Export, followed by Export
to XML As. This displays the Export Name As dialog where you can rename the Request or Resource
List.
New Name Name of the new Request or Resource List 3 - 32 Characters in length
3. Clicking OK will display the Save dialog where you can select a directory and file name to save the
renamed Resource or Request List details.
Note
• XML file must have <http_file_set> as it top-most element (after <TeraVM>) in order to be a valid
import file for the Resource or Request List Folder.
• If the file set contained within the XML file matches a Resource or Request List that already exists
it will be ignored, even if the values are different.
Procedure
1. In the Test Group tab select a Test Group, and go to Resource or Request List under the HTTP
Configuration folder.
2. Right click on Resource or Request List and select Import, followed by Import from XML . This
brings up the Open File Dialog where you can select a directory and XML file to add a Resource or
Request List to the Resource or Request List Folder.
Procedure
1. In the Test Group tab, select a Test Group, and go to the Configuration folder.
2. Right click on the Configuration Item you wish to view, and select Delete. This will delete the
Configuration Item.
Note
Many of the parameters contained in Test Agent Configuration are configured with default values.
If you add Test Agent Configuration to your test group, all of these settings will be used and some
features will be automatically enabled (for example VPN Tunnel Teardown). Check all of the settings
and delete any settings that you do not want to use.
Test Agent Configuration is contained within a Test Agent Configuration Folder. Each Test Group can
contain one Test Agent Configuration Folder which contains the Test Agent Configuration for that Test
Group.
1. In the Test Group tab create a Test Group (see Add Test Group Section ) and right click on the
Configuration icon.
2. Right click on Add Test Agent Configuration menu item, this will create an empty Test Agent
Configuration folder.
1. Right click on Test Agent Configuration Folder, and select Add Test Agent Configuration. This
will open the Add Test Agent Configuration dialog, which is divided into tabs for different types of
parameters (TCP, Hosts, and so on).
2. Enter values for the fields displayed as required. See Add Test Agent Configuration Dialog Fields for a
description of the fields.
3. Click the OK button to add the Test Agent Configuration. If the operation was successful then the Test
Agent Configuration will appear below the Test Agent Configuration Folder, otherwise a reason will
be provided for the failure to add the Test Agent Configuration, for example, if you try to add two Test
Agent Configurations to your folder.
CAUTION
Selecting Enable Explicit Host Routes (IPv4) in the Hosts tab can be memory intensive when there
are many hosts, therefore it is best not to enable this option when the gateway addresses refer to valid
IP routers in the system under test.
TCP
TCP Timer Time taken to retransmit packets. 100, 200, 300, 400, 500, 600, 700, 800,
900 or 1000 Milliseconds. Select from drop
down box.
Every Time Interval in which to start creating the number 1, 5, 10, 20, 30, 60 Seconds. Select from
of connections. Optional value but must be set if the drop down box.
Connection Limit value is set.
Ramp-up Period Time Interval in which to perform the number of 1, 5, 10, 20, 30, 60 Seconds. Select from
connections by. Optional value but must be set if the drop down box.
Connection Limit value is set.
TCP Characteristics TCP parameters to be associated with this card. Optional. Select from a previously
configured set of TCP Characteristics or
add a new set. Refer to the section on TCP
Characteristics in this topic.
Hosts
Enable Rate limited Determines if there is to be a rate at which PPPoE or Enabled or Disabled. Default is Disabled.
startup of Hosts DHCP enabled hosts are started.
Rate Limit If Enable Rate limited startup of Hosts is enabled, this 0 - 10,000. Default is 10.
field identifies the actual rate limit to be applied.
Host Stop Rate This value sets the rate of hosts stopping per second. It Optional Number value. Default is blank
applies to all configured hosts in the test group. When which means all the hosts will be stopped
using EAP IEEE802.1 tests, the rate at which the hosts over a period of 2 seconds. If entering
are stopped will also correspond to the amount of EAP a value, then it must be between 1 -
logoff messages sent to the ISE Server. 1000000.
Enable Explicit Host When selected, a test with many hosts on the single Layer Enabled or Disabled. Default is Disabled
Routes (IPv4) 2 network can be configured to route packets between
the hosts without the need for IP-level routing equipment.
When unselected, all IP packets are routed through each
hosts default gateway.
TTL
TTL The Time To Live value to be applied to different packet 1 - 255. Default is 255 for TCP, UDP and
types - TCP, UDP, IGMP and ICMP. ICMP and 1 for IGMP.
IGMP/MLD
Enable Unsolicited If enabled, the IGMP/MLD client will periodically send Enabled or Disabled. Default is Disabled.
Membership Reports membership reports to the all routers group. Only
available if Join Groups is enabled for IGMP/MLD.
Report Interval The interval at which Unsolicited Membership Reports will Integer value or profile. 1 - 3,600,000(ms).
be sent from any IGMP/MLD client using this test agent. It can also be a profile with min and max
This is only available if Unsolicited MRs is Enabled. values in the range 1 - 3,600,000.
Enable Multiple Group Enables MRs to be sent together in a single MR packet, Enabled or Disabled. Default is Disabled
Reports per Report rather a packet per membership report. Used if there is a
requirement to include both the Leave and Join in the one
Membership Report
Call Attempts Rate Limit Metric of the Call Attempts Rate Limit Options are None, BHCA, or CPS. Default
Mode value is None. Mandatory.
Call Attempts Rate Limit The target call rate. Integer number with value in the range
1-10000 if Call Attempts Rate Limit Mode
is CPS, and 1 - 36000000 if Call Attempts
Rate Limit Mode is BHCA. Available only if
Enable Ramping Enables the associated test agent to 'ramp-up' to the Enabled or disabled. Default is disabled.
target call rate (Call Attempts Rate Limit). This ramp-up
is a period of time during which the the system 'ramps up'
to achieve the target call rate.
Start From Starting call rate during the ramp-up period. Integer 1 - 10,000. No default. Mandatory if
'Enable Ramping' is set.
Period The period of time during which the ramp-up will occur Integer 0 - x secs. No default. Mandatory if
'Enable Ramping' is set. Allowable metrics
are Secs and Minutes with secs as the
default.
Enable IMS Mode Indicates if all VoIP and RTSP Clients and Servers on this Enabled or disabled. Default is disabled.
card should operate in IMS mode.
IMS Method The method used to inform the IMS core of the Select from Dynamic Media Path
characteristics of the RTSP TCP Connection and media Reservation (the default) and Pre-Assigned
stream(s). Dynamic Media Path Reservation indicates Media Path Reservation.
the initial SIP INVITE only contains information regarding
the RTSP TCP connection. Pre-Assigned Media Path
Reservation indicates the initial SIP INVITE contains the
complete session description that is, details of the RTSP
TCP connection and all the media streams.
Miscellaneous
Set "Broadcast" bit By default, DHCP messages sent by a Server are unicast Enabled or disabled. Default is disabled.
in DHCP DISCOVER (that is, sent to a specific MAC/IP address). However,
Messages while a DHCP client is acquiring an address, it may not be
possible for it to process unicast packets. This option sets
a "Broadcast" bit in outbound DHCP Discovery messages.
The DHCP Server checks this bit in incoming messages. If
it is set, the server broadcasts its response.
Set "Broadcast" bit Similar to above, this option sets a "Broadcast" bit in Enabled or disabled. Default is disabled
in DHCP REQUEST outbound DHCP Request messages. The DHCP Server
Messages checks this bit in incoming messages. If it is set, the
server broadcasts its response.
Outer VLAN Protocol Tag Allows for the configuration of the Protocol Tag for double Default is 8100.
tagged VLANs. When a Tagged Protocol ID has been
specified, all double-tagged VLANs will use the TPID
value in the Protocol field of the Outer VLAN header.
VPN
Tunnel Teardown Rate Stagger the closing of tunnels while the test is stopping Integer from 1 to 10000 or null. Default is
(known as "Graceful Tunnel Teardown"). The value 100 tunnels/sec.
entered in this field is the number of tunnels per second
that will be torn down. It will be distributed among all the
VPN applications configured in the current test group.
Entering a null value means all tunnels will close at once
(not in a staggered manner). A non-null value enables the
teardown feature.
RADIUS
RADIUS IPv4 Server Reference to an IPv4 External Radius Server External RADIUS Server. Value checks:
RADIUS server host must use IPv4.
RADIUS IPv6 Server Reference to an IPv6 External Radius Server External RADIUS Server. Value checks:
RADIUS server host must use IPv6.
RADIUS Shared Secret RADIUS Shared Secret is only available if Enable EAP String. Default value: "". Value checks:
Authentication is true and EAP Encapsulation method is
• length range from 1 to 255
RADIUS.
• – valid chars: 'a-zA-Z0-9 .{}<>[]
()@#&*%_+=!-'
Mandatory value.
RADIUS Initial Retransmit Time (in milliseconds) after which a RADIUS packet is Integer. Default value: 1000. Value checks:
resent if no response has been received.
• min: 1
• max: 10000
RADIUS: Max Number of Number of retransmits after which the RADIUS connection Integer. Default value: 3. Value checks:
Retransmits is considered to be lost.
• min: 0
• max: 10
DNS
IPv4 DNS Server IPv4 address of DNS Server Default value: none. Type: External DNS
Server Application. Optional.
IPv6 DNS Server IPv6 address of DNS Server. Default value: none. Type: External DNS
Server Application. Optional.
Initial Retransmission Time (in milliseconds) after which a DNS packet is resent Default value: none. Integer in the range of
Timeout if no response has been received. 0-60000. Optional
Maximum Number of Number of retransmits after which the DNS connection is Default value: none. Integer in the range of
Retransmits considered to be lost. 0-10. Optional.
Note
The following rules must be adhered to for VoIP:
Applying an initial call delay to a VoIP UA also impacts the rate limit. The initial call delay determines
when the UA should make its first call. For the rate limit to work that delay needs to be determined
by the rate limit. The rate limit functionality with its ramp up functionality in effect replaces the initial
call delay. If a SIP call rate limit is applied to a card and a UA on that card has an Initial Call Delay, a
warning is issued at runtime indicating a VoIP UA has an Initial Call Delay and the Rate Limit cannot
be applied.
Note
A specific license is required in order to see the IMS tab.
A Test Group can have Port Level Configurations for each TeraVM interface/port.
The table below contains a list of icons used in Port Level Configuration .
Note
Ethernet Port Level Configuration is not currently supported.
1. In the Test Group tab create a Test Group (see Add Test Group Section ) and right click on the
Configuration icon.
2. Right click on Add Port Level Configuration menu item, this will create the empty Port Level
Configuration folder.
1. Right click on Port Level Configuration Folder, and select Add IP Port Level Configuration. This will
cause the Add IP Port Level Configuration dialog to be displayed.
2. Enter values for the fields displayed as required. See Add Peer Group Dialog Fields for a description of
the fields.
3. Click the OK button to add the IP Port Level Configuration. If the operation was successful then the IP
Port Level Configuration will appear below the Port Level Configuration Folder, otherwise a reason will
be provided for the failure to add the IP Port Level Configuration.
Table 9-3. Add IP Port Level Configuration Dialog Fields
Interface Select IP interface using <...> button. Only TeraVM IP Interfaces/ports are
selectable.
Hard Limit This is the rate (or bits/second) that will be put onto a 1 - 1000000 Kbs. 1 - 1000Mbs. Supported
particular packet on the wire. Another packet will not be metrics are KB or MB. Default is KB.
allowed onto the wire until that time has elapsed. The hard
limit ensures that throughput does not exceed the line rate
of a card.
Soft Limit This value is optional. A "soft" limit calculates the overall 1 - 1000000 Kbs. 1 - 1000Mbs. Supported
rate at which packets are being sent on the wire, and tries metrics are KB or MB. Default is KB.
to sustain the specified rate, even if it means the rate
is temporarily exceeded for short bursts of packets. In
other words, the soft limit averages throughput over short
time increments, rather than enforcing a specific interval
between two individual packets.
Enable MUX When selected, packets from different flows will be On or Off. Default is off.
interleaved, rather than having "window sized" bursts
being sent from individual flows.
1. In the Test Group tab create a Test Group (see Add Test Group Section ) and right click on the
Configuration icon.
2. Right click on Add Rate Limiting Configuration menu item, this will create the Rate Limiting
Configuration folder and inside this folder will be a bandwidth and connection folder. These folders are
used to hold specific bandwidth and connection rate limits.
1. Right click on Bandwidth Folder, and select Add Bandwidth Rate Limit. This will display the Add
Bandwidth Rate Limit dialog.
3. Click the OK button to add the Bandwidth Rate Limit. If the operation was successful then the
bandwidth rate limit will appear below the Bandwidth Folder, otherwise a reason will be provided for the
failure to add the rate limit.
Table 9-4. Add Bandwidth Rate Limit Dialog Fields
Name The unique name for the bandwidth rate limit. 3 - 32 characters.
Rate Limit This is the rate (or bits/second) that can be generated by 1 - 1000000 Kbs. 1 - 1000Mbs. Supported
or applied to the host(s). The value is divided among all metrics are Kb/Mb. Select from drop down
the hosts with this rate limit. box. Default is Kb.
Enable Ramping This checkbox indicates if the specified rate limit will be N/A
achieved over a ramp-up or ramp-down period.
Start From Starting rate limit. If this smaller than Rate Limit then there 1 - 1000000 Kbs. 1 - 1000Mbs.
is a ramp-up affect. If it is greater than the Rate limit, there
is a ramp-down affect.
Period The time in seconds over which the ramp-up or ramp- 0 - 3600.
down occurs.
1. Right click on Connection Folder, and select Add Connection Rate Limit. This will display the Add
Connection Rate Limit dialog.
3. Click the OK button to add the Connection Rate Limit. If the operation was successful then the
connection rate limit will appear below the Connection Folder, otherwise a reason will be provided for
the failure to add the rate limit.
Table 9-5. Add Connection Rate Limit Dialog Fields
Name The unique name for the bandwidth rate limit. 3 - 32 characters.
Rate Limit This is the rate (or conn/second) that can be generated by 1 - 50000. The Metric for the Rate Limit
or applied to the application. The value is divided among value is conn/sec.
all the hosts with this rate limit.
Enable Ramping This checkbox indicates if the specified rate limit will be Enabled or disabled. Default is disabled.
achieved over a ramp-up or ramp-down period.
Start From Starting rate limit. If this smaller than Rate Limit then there 1 - 50000
is a ramp-up affect. If it is greater than the Rate limit, there
is a ramp-down affect.
Period The time in seconds over which the ramp-up or ramp- 0 - 3600.
down occurs.
1. In the Test Group tab create a Test Group (see Add Test Group Section ) and right click on the
Playback Configuration icon.
2. Right click on Add Playback Configuration menu item, this will create the Playback Configuration
folder.
Resource List Name Enter a unique name for the playback resource. 3 - 32 characters.
File The name of the current files on the local machine 1 and 125 characters in length. File must
containing the packets to be replayed. also exist and not be empty.
Content A summary of the type of content in the files associated For MPEG2-TS, the content column
with the resource. will always state that the content
is "Media". For Captured Files, the
a. Click the button Add to display the Configure Playback Resource Properties dialog.
b. Select the type of resources that is, Capture File or MPEG2-TS File.
• For Capture files, the file types are: cap, pcap, pkt, snoop, trc
Note
The Playback Resource List must only contain resources of the same type. If an attempt
is made to add a resource to a playback resource list which already contains resources,
then the add dialog will no longer allow you to select the type. In this case, the type will be
defaulted to the type of the previously added resources and it will not be changeable.
d. Click the OK button to add the Playback Resource. If the operation was successful then the
resource will appear in the Playback Resource List Properties table, otherwise a reason will be
provided for the failure to add the resource.
3. Click the OK button to add the Resource List to the configuration. If the operation was successful
then the resource list will appear below the Playback Configuration Folder, otherwise a reason will be
provided for the failure to add the resource list.
This offers the ability to introduce a level of randomness into the traffic that is, transmitted across
applications in a test group. The value for the profile can be defined as:
• A single range.
• A list of ranges.
Profiles are added in the Test Group tab. A profile name need only be unique when compared to other
profiles which exist at the same hierarchical level and with the same parent.
1. In the Test Group tab create a Test Group (see Add Test Group Section ) and right click on the
Configuration icon.
2. Right click on Add Profile Configuration menu item, this will create the Profile Configuration folder.
Add a Profile
1. Right click on Profile Configuration, and select Add Profile. This will cause the Add Profile dialog to
be displayed.
2. Enter values for the fields displayed as required. See Add Profile Dialog Fields for a description of the
fields.
a. Click the status button ... to display the Configure Profile Distribution Function dialog.
b. Click the Add button to display the Add Time Period dialog.
c. Using the slider (or Up, Down keys) select a Time Period percentage value.
d. Select a single value (or range or values) to be associated with this Time Period. See Add Time
Period Dialog Fields for a description of the fields.
Note
The profile must be 100% configured that is, there must be no unused time periods, before the profile
can be successfully added.
If the operation was successful then the profile will appear below the selected item, otherwise a reason will
be provided for the failure to add the profile.
Table 9-7. Add Time Period Dialog Fields
Name Name of the new Profile, must be unique within the Profile 3 - 32 Characters in length
Configuration Folder.
1. In the Test Group tab create a Test Group (see Add Test Group Section ) and right click on the
Configuration icon.
2. Right click on Add String List Configuration menu item, this will create the String List Configuration
folder.
2. Enter values for the fields displayed as required. Use the Add button to add strings to the list. The
Selection Mode controls how words are selected from the string list.
1 4.75
2 5.15
3 5.90
4 6.70
5 7.40
6 7.95
7 10.20
8 12.20
1 6.60
2 8.85
3 12.65
4 14.25
5 15.85
6 18.25
7 19.85
8 23.05
9 23.85
and new bit rate level lists can be added on a per test group basis.
2. Click on Add Adaptive Bit Rate Level List menu item, this will cause the Add Adaptive Bit Rate
Level List dialog to be displayed. Enter values are required.
Table 9-12. Add Adaptive Bit Rate Level List Dialog Fields
Name Name of the Adaptive Bit Rate Level List. It must be 1 - 255 Characters in length
unique within the Test Group. Mandatory field.
Codec Type The type of codec that this list should be allowed on. Mandatory.
Adaptive Bit Rate Levels List of configured bit rate levels, containing the Bit Rate Mandatory. Size must be between 2-50
and pcap file to be used. levels.
Rate The Bit Rate for the level. Mandatory. Valid between 1 kbps to
200,000 kbps.
Data The pcap file to be used for the level. Mandatory. Must be a pcap file, containing
a single RTP stream.
2. Click on Add Bit Rate Level Change List menu item, this will cause the Add Bit Rate Level Change
List dialog to be displayed. Enter values are required.
Table 9-14. Add Bit Rate Level Change List Dialog Fields
Name Name of the Bit Rate Level Change List. It must be 1 - 255 Characters in length
unique within the Test Group. Mandatory field.
Bit Rate Level Changes An ordered list of Bit Rate Level Changes. Mandatory.
Change Type The type of change to be applied. Values include: Mandatory. Default is Highest Bit Rate
Level.
• Highest Bit Rate Level
• Lowest Bit Rate Level
• Bit Rate Level
• Shift Up Bit Rate Levels
• Shift Down Bit Rate Levels
Bit Rate Level A specific bit rate level. Mandatory, only when Change Type is set
to Bit Rate Level.
Bit Rate Levels The number of bit rate levels to shift up or down too. Mandatory, only when Change Type is set
to Shift Up Bit Rate Levels or Shift Down
Bit Rate Levels.
9.3.3. FTP
The FTP configuration folder contains two configuration items:
• Resource List
This is a list of files to be transferred using FTP. Any file type can be used.
• Command List
An FTP Command List is a named list containing one or more commands to be used in the FTP
transfer. An FTP Client MUST specify a FTP Command List to use during test execution. The command
list details the sequence of commands an FTP client runs through during the course of an FTP session
with an FTP server. The commands in turn will dictate the data that is transferred between the FTP
clients and FTP servers..
1. In the Test Group tab create a Test Group (see Add Test Group Section ) and right click on the
Configuration icon.
2. Right click on Add FTP Configuration menu item, this will create the FTP Configuration folder
containing a Call List Folder.
Note
If a FTP Configuration already exists, an error message is displayed.
2. Click on Add Command List menu item, this will cause the Add FTP Command List Dialog to be
displayed.
3. Enter a unique Name to identify this List. This can be a string value between 1 and 255 characters in
length and is mandatory.
List of commands/ The FTP client must be configured with a list of A Command List must have at least
parameters commands to be executed during the FTP session. 1 entry. Number of entries must be
between 1 and 100. See supported
Command List below.
Pathname Pathname to the Command List. The pathname must be a string values
between 1 and 255 characters in length.
These commands have the same format as FTP clients CLI which are installed in Windows and Linux PCs.
The supported commands are:
• get
Retrieve a file/data from the server. This command must specify an argument that identifies what is to
be retrieved from the server. The argument can be a name that identifies a resource on the TeraVM
Server, a Profile name resulting in data of a size controlled by the Profile been returned to the Client, a
specific size or a file on an External Server.
• put
Store a file/data to the server. This must specify an argument which identifies what is put onto the
Server. The argument can be a name that identifies a resource that will stored on the TeraVM controller
or an External Server, a Profile name resulting in data of a size controlled by the Profile been stored to
the Server or a specific size.
• cd
Change directory on the server. This will always work when the Server is a TeraVM Server.
• pwd
Print the current working directory on the server. This will always work when the Server is a TeraVM
Server.
• ls
List directory information. This results in a file transfer from the server to the client. No actual directory
listing is returned to the client. The data contained in the transfer is some text saying the command
worked.
• system
Request the server to indicate system information. This will always work when the Server is a TeraVM
Server.
• bin
set transfer mode to binary. This will always work when the Server is a TeraVM Server.
• ascii
set the transfer mode to ascii. This will always work when the Server is a TeraVM Server.
2. Click on Add FTP Resource List menu item, this will cause the Add FTP resources List Dialog dialog
to be displayed.
3. Enter a unique Name to identify this List. This can be a string value between 1 and 255 characters in
length and is mandatory.
Path The path to where the resource is located. Can be between 1 and 255 characters in
length. Default is empty. Mandatory fie
Type Indicates the type of the Resource - whether it refers to Options are: File Resource, Fixed Size
a File, a specific (fixed) amount of data or an amount of or Range Resource. Default is File
data covering a specific Range. Resource. Mandatory field.
Resource This field is controlled by the Type field. If Type is File Mandatory. Number of entries must be
Resource then a file must be selected. If Type is a between 1 and 100.
Fixed Size then an integer in the range 0 - 100,000,000
is required. If Type is Range Resource then a profile
must be selected.
• HTTP Requests
A HTTP Request consists of a HTTP method, such as Get or PUT, and a URI. A request can also
include parameters, such as as request method types and request/response values. The information in
the request is used to build the HTTP Header that the client will send to the server
HTTP Requests are added to the Request List in the HTTP Configuration. The same URI can appear
multiple times in the list.
• HTTP Resources
A HTTP Resource consists of a URI and the resource available from this URI. The resource can be a
file or specific data for download. It can optionally include a content length.
HTTP Resources are added to the Resource List in the HTTP Configuration.
Note
– A Server can only be associated with one Resource Mapping List.
2. Right click on Add HTTP Configuration and select Add -> HTTP Configuration to add the folder.
Note
If a HTTP Configuration already exists, an error message is displayed.
2. Add a Request List if it does not already exist (note if you are using MPEG-DASH, a default list exists
for that already).
• Select Add Request List. The Add Request List dialog is displayed.
• Enter a unique Name to identify this Request List. This can be a string value between 1 and 255
characters in length and is mandatory.
Name Unique name to identify this list. Can be between 1 and 255 characters in
length. Default is empty. Mandatory.
Requests HTTP Requests consisting of a HTTP "method" and a Click on the <Add> button to add
URI. requests for this list (see next step).
Selection Mode Method used to select Requests (URLs) from the Sequential, Random or Zipfian
Request List Distribution. Default is Sequential.
"Zipfian" ("Zipf's Law" or "Long Tail")
is a power law probability distribution
that favours earlier items in the list over
later items, with the Zipfian Exponent
controlling the bias of the distribution.
Zipfian Exponent Available only if the Selection Mode value is "Zipfian Decimal value in the range 0.01-10.0.
Distribution". Used to control the bias of the Zipfian Default value of 1.0.
distribution.
Min=0.01 is almost equivalent to a random distribution.
Lower exponents would probably be totally random due
to rounding of the tiny differences in probability. Using
a zipfian distribution that is equivalent to a random
distribution would be wasteful from a performance
perspective. Max=10.0 is so biased in favour of the first
value in the list that it will be selected almost 100% of
the time. A few other early values in the list may appear
from time to time, but later items will almost certainly
4. Next, add a HTTP Request to the Request List. Click on the <Add> button shown above.
Request Method Request method to be used by the HTTP Client. Four HTTP
methods are supported, GET, HEAD, POST and PUT. Note
HEAD and POST are not
supported in HTTP 0.9
URI URI for the chosen method. This must be a path and optional Parameters must be in the format
parameters. If the Client is interacting with a TeraVM HTTP of <pm>=<value>&<pm>=<value>
Server, this URI is mapped to a specific resource (for example a and so on, with a max length of 4000
file available on the HTTP Server). If interacting with an External characters. The path can contain
Server, this URI has no such mapping. Mappings are configured keywords to allow the randomization of
in the HTTP Resource Mapping configuration item defined later. the HTTP Request. See below.
A special URI exists for requesting a specific amount of arbitrary
data.
Header Field List List of user-configured HTTP Header fields. Click on the <...> icon to add a header
list. The Header List Selection dialog
is displayed. See Header List section
for details.
Content Type Charset Charset used in the content Only available if Content Type is
application/x-www-form-urlencoded.
Select from the list provided or enter a
specific charset.
The Body Parts field is a list (up to 1000) of parts that compose the body of a multipart/form-data POST
request.
Body Data Type Type of data specified in the body part. Select File or Text from the drop down
list.
Content Actual content of the Body Part. Dependent on the Body Data Type -
enter text or select a file.
Content Type Content type of the header for the Body Part. Select from the list or enter a specific
value.
Content Type Charset Charset used in the content Only available if Body Data Type is
Text. Select from the list provided or
enter a specific charset.
Content Transfer Content transfer encoding header indicating the transfer encoding Select from the list provided.
Encoding to be applied to the Body Part.
Content Disposition Parameters of the content disposition header. It must contain at least the "name"
parameter - even if it has no value. If
the Body Data Type is File, this will
also include the "filename" parameter.
Header Field List List of user configured HTTP Header fields Click on the <...> icon to add a header
list. The Header List Selection dialog
is displayed. Refer to sections 4.3
in this topic for more information on
adding a new Header List.
The following keywords can be used in the HTTP Request List Path and the Header List:
• {NUM} Any instance of this keyword in a URL will be replaced with a random unsigned 32 bit number.
• {NUMX} Any instance of this keyword in a URL will be replaced with a random unsigned 32 bit number,
with leading zero padding up to X digits, where X is in the range 1-9. Note that the range of the selected
number is chosen so that the number will not exceed X digits
• {NUM:profilename} Any instances of this keyword within a URL will be replaced with an unsigned 32 bit
number selected from the specified profile. The user can select an existing numeric profile by specifying
an underscore "_" followed by the profile name for example "_myProfileName" or the description of a
numeric profile for example "1024-2048:.4/2048-4096:.6". To sequentially download a series of files
numbered 1 to 5 the syntax would be: http://www.ireland.com/article{NUM:1-5/i}
• {NUMX:profilename} Any instances of this keyword within a URL will be replaced with an unsigned 32
bit number selected from the specified profile, with leading zero padding to X digits, where X is in the
range 0-9.
• {STR:stringlist} stringlist is the name of a String List Configurtion Item (explained later) containing a list
of words. When this STR keyword is encountered in a URL, TeraVM will select a word from the list of
words in the configuration item named stringlist and replace the keyword in the URL with the selected
word. The order of words within a list is important, as it is possible to specify the order in which words
are selected from the list that is, the {REF} keyword can be used to reuse a previously selected word.
For example consider a sequential string list configuration item named MyList containing the words
Humpty, Dumpty, wall and fall. {STR=w1:MyList} inserts the value Humpty, and assigns this value to the
variable w1. {STR=w1:MyList} {REF=w1} uses the previously assigned word w1 that is, Humpty.
Note
Keywords are not case sensitive. So, for example, {NUM} and {num} are equivalent
Note
Profile names are case sensitive. So, for example, {NUM:_MyProf} and {NUM:_MYPROF} will
select from different profiles
Note
An unrecognised profile name or invalid profile descriptor evaluates to zero
The following details must be supplied for a new Header Field List:
Table 9-22. HTTP Header Field List
Name Unique name identifying HTTP Header List. String value between 3 and 32 characters
in length; valid chars: a-zA-Z0-9 .
{}<>[]@#&*%_+=!- Mandatory. No Default.
Header Fields List of HTTP Header fields. This list must contain at least one HTTP
header field. Mandatory. No Default.
To add a Header Field to the list, click on the Add button on the Add Header Field List dialog. The Add
Header Field dialog is displayed as shown:
Note
If a HTTP header Field list is deleted, then all HTTP Clients and HTTP Request Lists using that HTTP
header field list will also be deleted.
The following details must be entered for each new Header Field:
Table 9-23. HTTP Header Fields
Name Name identifying HTTP Header Field. String value between 1 and 4000
characters in length. Must contain only
You can enter the field name manually or alternatively,
printable US-ASCII characters except ':',
click on the Book icon beside the Field Name field, and
select from a Data Dictionary populated with common
header field names Mandatory, No Default.
Body Text in the body of the HTTP header field. If you click on String value between 1 and 4000
the Help icon beside this field, the Keyword Substitution characters in length. Can contain only
dialog is displayed which contains keyword definitions and printable US-ASCII characters including
examples. [CR/NL]. Spaces will not be validated. This
field allows folding, and displays a warning
when a new line after [CR/NL] doesn't
start with TAB or SPACE. Mandatory. No
Default.
Note
Multiple header fields with the same header field name can be entered more than once in the same
list.
The Data Dictionary dialog is displayed if the Book icon beside the Name field is clicked:
The Keyword Substitution Help dialog is displayed if the Help icon beside the Body field is clicked:
Note
To perform the Byte-Range substitution, the HTTP Client's "Enable Keyword Substitution" checkbox
must be checked (Add HTTP Client Wizard - Server Details).
Note
If multiple "Range" header fields using the {BYTERANGE} keyword in the header field body appear in
the same HTTP request, the range value will only be substituted in the first one.
Note
The same keyword substitution that is, available for URLs, ("NUM" keyword), will also be applied to
HTTP Header fields assuming the "Enable Keyword Substitution" checkbox is checked (Add HTTP
Client Wizard - Server Details)
2. Add a Resource List if it does not already exist (note if you are using MPEG-DASH, a default list exists
for that already).
• Select Add Resource List. The Add Resource List dialog is displayed.
• Enter a unique Name to identify this Resource List. This can be a string value between 1 and 255
characters in length and is mandatory.
3. Next, add a HTTP Resource to the Resource List. Click on the <Add> button shown above.
4. Set the following fields to define the resource, and click OK.
Path URI (path to where the resource is located). 1 and 255 characters in length. Default is
empty. Mandatory.
Type Resource type - File or an amount of data (fixed or File Resource or Random Data(Default).
random).
Resource If Type is File Resource then a file must be selected Mandatory. Number of entries must be
(click on the Add icon (...) to browse). If Type is a Fixed between 1 and 100.
Size then an integer in the range 0 - 100,000,000 is
required. If Type is Range Resource then a profile must
be selected.
9.3.5. IGMP/MLD
IGMP/MLD Configuration consists of:
• Filter Lists
• Resource Playback
A Filter List contain is used by IGMPv3 and MLDv2 applications. An IGMPv3 Membership Report can
include a list of IP Addresses in a Filter List. These filter lists are used to tell an IGMP-enabled router what
packets to forward to IGMP clients. The router will forward packets with a source IP Address from the
supplied INCLUDE filter list to the Client. T
A Multicast Group configuration item is used by both IGMP and MLD clients and servers. Each entry in the
list contains a multi-cast address, source port and destination port.
A Playback Resource List is a list of resources which reference files. The files include packet capture
files containing TCP, UDP or UDP/RTP conversations and also MPEG2-TS files. Refer to section 16.2 for
instructions on adding a Playback Resource List.
1. In the Test Group tab create a Test Group (see Add Test Group Section ) and right click on the
Configuration icon.
2. Right click on Add IGMP Configuration menu item, this will create the IGMP Configuration folder,
containing Filter List and Multicast List Folders.
Note
If an IGMP Configuration already exists, an error message is displayed.
1. Right click on IGMP Configuration folder, and select Add IGMP IP Address Filter List. This will
cause the Add IGMP IP Address Filter List dialog to be displayed.
b. Fill in an IP Address.
c. Click the OK button to add the Address. If the operation was successful then the address will
appear in the Address Filter List table, otherwise a reason will be provided for the failure to add the
address.
4. Click the OK button to add the Filter list. If the operation was successful then the Filter list will appear
below the IGMP Configuration Folder, otherwise a reason will be provided for the failure to add the Filter
list.
Table 9-25. AddIP Address Dialog Fields
Each entry in the list contains the address of the group, the Destination Port which specifies the UDP
destination port in each multicast packet and the Source Port which specifies the UDP source port in each
multicast packet.
Enter a unique Name to identify this Multicast Group List. This can be a string value between 1 and 255
characters in length and is mandatory. Click on the <Add> button to add items for this list.
No. Of Group Items An individual group item containing a multicast address, source 1 - 1000. For values greater than
port and destination port can be added to this group if a value 1 refer to the Bulk Provisioning of
of 1 is entered in this field. By entering a value greater than 1, Multicast Group Items section below.
it is possible to create multiple group items for which the group
address, source port and destination port can be iterated on to
provide a list of unique items.
Source Port Source transport port in the multicast packet sent from the IGMP 0 - 65535. Must be an integer in this
Server and received by the IGMP Client. range. Mandatory. No default.
Destination Port Destination transport port in the multicast packet sent from the 0 - 65535. Must be an integer in this
IGMP Server. For an IGMP Client this is the port on which the range. Mandatory. No default.
client will listen for incoming packets.
An Arrow button is displayed beside the group address, source port and destination port to enable bulk
provisioning of these fields. By clicking on this button, the following Iterate dialogs are displayed.
To iterate on the Group Address, enter a base address into the Group Address field and a value by which
to increment this address in the Increment by field.
To iterate on the Source port, enter a port number into the Source Port field and a value by which to
increment this port ( in the Increment by field.
To iterate on the Source port, enter a port number into the Destination Port field and a value by which to
increment this port ( in the Increment by field.
9.3.6. IKE/IPsec
An IKE/IPsec VPN allows devices in multiple fixed locations to establish secure connections with each other
over a public network such as the Internet. IKE/IPsec VPN is used to extend a company's network securely,
for example, making computer resources from one location available to employees at other locations.
1. In the Test Group tab create a Test Group (see Chapter Test Groups, Section Adding a Test Group)
and right-click on the Configuration icon.
2. Select Add... from the Configuration context menu and choose Add IKE/IPsec Policy Configuration
from the Configuration sub-menu, this will create the empty IKE/IPsec Policy Configuration folder.
This adds the IKE/IPsec Policies configuration folder to the Configuration node:
The following tables provide details on each of the fields in the IKE/IPsec Policy dialog:
Table 9-27. Add New IKE/IPsec Policies - Encryption
Name Name of the new IKE/IPsec Policy must 3 - 512 Characters in length
be unique within the IKE/IPsec Policy
Configuration Folder.
IKE Settings
Product The VPN type used in the creation of the Mandatory. Can be either AnyConnect or IKE/IPsec.
policy
IKE Version The version of IKE being used Options include “IKEv1” or “IKEv2”.
Becomes “IKEv2” if “Product” is “AnyConnect”.
Default is IKEv2
IKE Mode When IKEv1 is selected as the IKE Mandatory. Options include "Main" and "Aggressive".
Version an IKE Mode is visible.
Encryption Specifies the encryption algorithm used in Click ellipsis button (...) beside field to open the
the IKE negotiation, and depending on the Transform Selector dialog. Options include: AES-
algorithm, the size of the encryption key CBC, AES-GCM, 3DES, DES and NULL.
used.
Integrity The authentication algorithm used on the Click ellipsis button (...) beside field to open the
protected traffic. Transform Selector dialog. Options include: SHA1,
SHA2 and MD5.
PRF A pseudo-random function (PRF) used as Click ellipsis button (...) beside field to open the
the algorithm to derive keying material and Transform Selector dialog. Options include: SHA1,
hashing operations. SHA2, MD5 and MSCHAPv2.
DH Group A modulus or Diffie-Hellman Group. Click ellipsis button (...) beside field to open the
Transform Selector dialog.
Encryption Encapsulating Security Payload (ESP) Click ellipsis button (...) beside field to open the
Internet Key Transform Selector dialog. Options include: AES-
CBC, AES-GCM, AES-GMAC, 3DES and DES
encryption types.
Integrity The integrity portion of the hash algorithm Click ellipsis button (...) beside field to open the
used in the IKE proposal. The hash Transform Selector dialog. Algorithm options include:
algorithm creates a message digest, which SHA1, SHA2 and MD5.
is used to ensure message integrity.
IKE Rekeying
Rekeying Intervals Time interval before an IKE rekey is Interval can be specified in secs, mins, hrs, days.
initiated. Can be from 1 sec to 30 days. No default.
IPsec Rekeying
Rekeying Intervals Time interval before an IPsec rekey is Interval can be specified in secs, mins, hrs, days.
initiated. Can be from 1 sec to 30 days. No default.
Rekeying Volume Volume of data before an IPsec rekey is Volume can be specified in Bytes, KiB, MiB, GiB.
initiated. Can be from 1 Bytes to 8589934592 Gig Bytes. No
default.
Initial Retransmission Timeout A retransmission timer to ensure data Value range: 0-60 seconds. Default 2.
delivery in the absence of any feedback
from the remote data receiver. The timeout
value doubles for each subsequent
retransmit of a packet, for example, first
delay is 2 seconds, second delay is 4
seconds, third is 8 seconds, and so on.
Sixty seconds is the maximum delay.
DPD Interval Dead Peer Detection (DPD) is a method Value in seconds. Range 0-60 seconds. No default.
that allows detection of unreachable
Internet Key Exchange (IKE) peers.
Requested MTU The maximum transmission unit (MTU) of a Integer value between 576 and 1500.
network interface is the size of the largest
block of data that can be transmitted as a
single unit. .
NAT-Traversal Used to establish and maintain Internet Options include Detect and Force. Default is Detect.
protocol connections traversing network
address translation (NAT) gateways, which
break end-to-end connectivity.
Fragment IKE Packets After If IKE packets are long, you can split Select checkbox to enable fragmentation then enter
them after a specified maximum length of the maximum number of bytes that your payload can
payload in Bytes. Actual packet fragment be before the packets are fragmented (integer from 1
length will include header and padding as to 2147483647).
well as this maximum payload size. Only
valid for IKEv2.
Use IKE Source Ports Option to use IKE source ports 500/4500 Select checkbox to enable option. Default: Not
for IKE negotiations for devices behind selected.
NAT device.
Enable IKE Redirects Option to use redirect Mechanism for the Select checkbox to enable option. Default: Not
IKEv2. selected.
Note
Additional parameters that affect IKE/IPsec tunnel behaviour can be set in Global Settings in the
TeraVM Controller Administration Interface. They can be found in category IKE Client Settings (there
are also some in Cryptographic Settings). The parameters include:
Maximum number of IKE retransmissions - Number of times an IKE packet will be resent before it
will be considered as lost.
Delay before IKE responses - Adds a delay between messages to ensure the client receives them.
The global setting parameter IKE configuration profile override should be left at default None, if the
IKE policy is added in the Java Client.
9.3.7. P2P
P2P Configuration consists of Peer Groups and Resource Lists.
A peer group is a group of users/clients who can transfer (share) data between each other. A "peering client"
can only be a member of one Peer Group. A Test Group can have many Peer Groups.
A Resource List identifies the data resources which can be shared between peering clients in a Test Group.
The data resources can be libpcap type files that is, those containing pdus that can be replayed between
Replay Peers. A Test Group can have many Resource Lists.
1. In the Test Group tab create a Test Group (see Add Test Group Section ) and right click on the
Configuration icon.
2. Right click on Add P2P Configuration menu item, this will create the P2P Configuration folder
containing empty Peer Groups and Resource List folders.
Note
If a P2P Configuration already exists, an error message is displayed.
• Name. A unique identifier for a specific Peer Group within a Test Group.
2. Enter values for the fields displayed as required. See Add Peer Group Dialog Fields for a description of
the fields.
3. Click the OK button to add the peer group. If the operation was successful then the peer group will
appear below the Peer Groups Folder, otherwise a reason will be provided for the failure to add the
peer group.
Table 9-30. Add Peer Group Dialog Fields
Name Name of the new Peer Group, must be unique within the 3 - 32 Characters in length
Peer Group Folder.
Resource Lists can consist of one or more resources (MB/KB values) which can include P2P Signature
Files.
1. Right click on Resource Lists, and select Add Resource List. This will cause the Add Resource List
dialog to be displayed.
2. Enter a unique Name to identify this List. This can be a string value between 1 and 255 characters in
length and is mandatory.
a. Click the button Add to display the Add P2P Resource dialog.
b. Enter values in the P2P Resource fields to add to this Resource List. See Add P2P Resource
Dialog Fields for a description of the fields.
c. Click the OK button to add the P2P Resource. If the operation was successful then the resource
will appear in the Resource List table, otherwise a reason will be provided for the failure to add the
resource.
Type Specifies whether the P2P Resource will contain a Select appropriate type from the drop-down
P2P Signature File "File", a file containing PDUs to be combo-box. (Size/File/Capture File). A
"replayed" between Replay peers or be a set size "Size". "Capture File" must be a pcap type file.
File Specifies what file the resource will include. Either type in N/A
path and filename or select using browse "..." button. A file
can only be included if the Type is set to "file".
File Size Specifies the size of the selected File (if any) in bytes. N/A
Uneditable
Metric Specifies what metric the resource is to be measured in. Select appropriate type from the drop-down
combo-box. (MB/KB). This is not applicable
if the Type is "Capture File"
Resource Size Specifies how big the resource will be. The size can have 1 - 100,000 for KB, 1 - 100 for MB. A
a numeric value or a profile can be assigned to it. When a Profile name is 3 - 32 characters in length.
file is specified the Resource Size is initially set to the File
Size.
2. Click on Add RTP Configuration menu item, this will create the RTP Configuration folder.
2. Click on Add RTP Codec AVP menu item, this will cause the Add RTP Codec AVP dialog to be
displayed. Enter values are required.
Name Name of the Codec. It must be unique within the Test 3 - 32 Characters in length
Group. Mandatory field.
Encoding Name The name used in signaling protocols to indicate the 3 - 32 Characters in length
use of this codec. Mandatory field.
Media Type The type of media associated with this codec. Default (and only current option) is Audio.
Payload Type Helps to identify the RTP AVP. Mandatory field. 0 - 127. 0 - 96 is defined by IANA.
Payload Size Number of payload octets to be carried in each RTP 1 - (MTU - 40)
packet. Audio codecs almost exclusively use a fixed
size. Mandatory field. Can be a profile.
ms/Packet The number of milliseconds of (for example) voice, Default is 20. 0.1 - 1000.
contained in each packet. Also implies a rate. If packet
contains 20 milliseconds of audio then each packet is
sent at 20 ms intervals. Mandatory field.
Packet Rate Overrides the rate determined from the Default MS per 10 - 1,000,000 microseconds.
packet. If not specified the rate remains unchanged.
It allows you to simulate the presence of jitter on
transmission, or an RTP attack.
Frequency The frequency or clock rate for this codec. Default is 8,000 Hz. 8,000 - 200,000 Hz.
Data Data to be streamed for this codec. If not defined then Must contain enough data to be able to
arbitrary data is streamed over RTP. send at least one RTP packet. So must
contain at least the number of bytes
specified by the size parameter
SDP Attributes A list of SDP attributes used by the Media Stream. Free-form text field. Default is empty.
2. In the Advanced… button specify a profile with a range. If specified this is the actual number of micro-
seconds to be used between each packet
• ms/Packet = 20ms
• Frequency: 8000 Hz
With this configuration each packet should be sent every 20ms. The RTP Timestamp field will increment by
160 to indicate 20ms at 8000Hz. However, the delay between each packet will be chosen from the range
19000-21000 microseconds. Therefore, each packet can be sent with jitter of up to ±1 millisecond from the
expected transmission time.
Note
The above fields are not present for streaming or PCap replay codecs.
3. Click on Add RTP Stream Profile menu item, this will cause the Add RTP Stream Profile dialog to be
displayed. Enter values as required.
Name Name of the RTP Codec used by this Stream Profile. 3 - 32 Characters in length
Mandatory field.
Ignore all configured Override the configured data in all selected Codecs with Default is not to override.
data arbitrary data that is, it ignores any configured data files
in either the RTP Codec AVP or Stream profile.
RTP Data Indicates if RTP data is to be sent/received for this call. Half Duplex Receive, Half Duplex Send,
Full Duplex. Default is Half Duplex
Receive.
Enable RTCP Data Indicates if RTCP is to be enabled for this call. Default is Disabled.
Silence Ratio The percentage time that Silence Suppression should 20% - 80%
be turned on. When silence suppression is turned on
the silence ratio and length is applied to both initiating
side of the call and the terminating end of the call if it
is TeraVM. It is important to note that the call must be
of sufficient length to allow silence ratio to take effect.
For instance if the calls are short it is likely the silence
suppression will not occur or be of the configured ratio.
Silence Length Profile or fixed value indicating the length of silence Default is 3,000ms. 1,000ms - 60,000ms.
suppression intervals in milliseconds. Can only be set if
silence ratio is greater than 0.
Data Data to be streamed for this codec. If not defined then Must contain enough data to be able to
arbitrary data is streamed over RTP. send at least one RTP packet. So must
contain at least the number of bytes
specified by the size parameter
Bit Rate Level List A list of Bit Rate Levels. Optional. Can only be set when an AMR-
WB, AMR-NB or AMR Codec has been
added.
Data The data associated with the selected RTP Codec. If Filename.
not defined as part of the Codec then arbitrary data may
be streamed over RTP.
File The name of a file containing data to be streamed. This Default is not to override.
is used to override the data configured as part of the
selected Codec.
9.3.10. RTSP
The RTSP configuration folder contains two configuration items:
A list of media resources that can be associated with the RTSP Server.
1. In the Test Group tab create a Test Group (see Add Test Group Section ) and right click on the
Configuration icon.
2. Right click on Add RTSP Configuration menu item, this will create the RTSP Configuration folder
containing a Call List Folder.
Note
If a RTSP Configuration already exists, an error message is displayed.
On each iteration the RTSP client chooses a pathname to be used in that RTSP session. If a list is
configured, then a list member can be chosen either sequentially or randomly from the list. Once the RTSP
client has chosen the pathname it can then proceed to create a RTSP media streaming session with its
configured RTSP server.
2. Click on Add RTSP Call List menu item, this will cause the Add RTSP Requested Media Resources
List Dialog dialog to be displayed.
3. Enter a unique Name to identify this List. This can be a string value between 1 and 255 characters in
length and is mandatory.
Pathname List of one or more pathnames. The pathname must be a string values
between 1 and 255 characters in length.
No default. Mandatory. Number of entries
must be between 1 and 100.
3. Enter a unique Name to identify this List. This can be a string value between 1 and 255 characters in
length and is mandatory.
4. Click on the <Add> button to add mappings to this list.
Pathname List of one or more pathnames. The pathname must be a string values
between 1 and 255 characters in length.
No default. Mandatory. Number of entries
must be between 1 and 100.
Stream Profile Add one or more stream profile name pairings. Select from available list of stream
profiles. To add a new Stream profile,
9.3.11. SMTP/POP3
SMTP-POP3 Configuration consists of:
• Message Sets
A Message Set is a list of messages that can be transferred in an SMTP message. Message Sets are
only appropriate for SMTP.
• User Groups
A User Group is a list of users (with domain and password information) that act as the senders/
receivers in both SMTP and POP3 mail messages. User Groups are mandatory for SMTP and POP3
tests.
2. Enter a unique Name to identify this Message Set This can be a string value between 1 and 255
characters in length and is mandatory. Click on the <Add> button to add requests for this list. Enter
values for the fields displayed as required. See Add Message Set Dialog Fields for a description of the
fields.
a. Click the button Add to display the Add Mail Message dialog.
b. Select the type of Mail Message to add to this Message Set. See Add Mail Message Dialog Fields
for a description of the fields.
c. Click the OK button to add the Mail Message. If the operation was successful then the mail
message will appear in the Message Set table, otherwise a reason will be provided for the failure to
add the mail message.
Type Type of message to be included in the mail message. Select appropriate type from the drop-
down list. Options are: an
• Auto-Gen - message can be
automatically generated containing
arbitrary content. .
• Attachment
• Text - a block of text that is,
manually inputted or text from a
file.
• File Inline - File to be added to
mail message as text.
See section 6.2.1. Mail Headers
for more sdetails on header
information for each file type.
Content Editable if type is text. Otherwise it contains the file 1 - 255 bytes for typed text.
name for the file to be attached or included in the
mail message.
4. Click the OK button to add the message set. If the operation was successful then the message set will
appear below the Message Sets Folder, otherwise a reason will be provided for the failure to add the
message set.
• Auto-Generated
The size of the content for auto-generated files is defined in bytes and can be specified as a static
value or as a random value. As with the other message types, MLIPS will come pre-configured with a
default RFC 2822 header template, and the arbitrary content will be included as the content of the mail
following the mail header.
• Attachment
If an Attachment type file is selected, the specified file acts as the content for the mail message and
will be Base64 encoded and added as a MIME attachment to the generated mail. MLIPS will come
pre-configured with a default RFC 2822 header template. If the SMTP Transmitter specifies RFC 2822
header fields, this template will be pre-pended to the encoded attachment and the SMTP Transmitter's
RFC 2822 header fields, if specified, will be used to "fill-out" the template. The result will be a complete
RFC-2822 compatible mail that contains a single MIME attachment that holds the file contents. The
order of header fields in the template is as follows:
– From:
– To:
– Subject:
– Date:
– Message-ID:
The Received header is always inserted first. The Reply-To, Cc and Bcc are inserted after the To
header (in this order). If there is no To header specified in the SMTP Transmitter, these headers come
at the end of the headers.
• Text
As with the other message types, MLIPS will come pre-configured with a default RFC 2822 header
template, and the text will be included as the body of the mail following the header. As with "MIME
Attachment" and "Auto-Generated" mails, the SMTP Transmitter's RFC 2822 header fields, if specified,
will be used to "fill-out" the template, Auto-Generated and Text should be able to share the same
header template as they are both "plain text" mails.
• Mail File
When a mail file is selected, the RFC 2822 header structure found in the file is maintained and used
in mail messages generated by SMTP transmitters using the message set in which this message is
contained. In supporting the ability for the configururation of RFC 2822 header fields in the SMTP
Transmitter application, any header fields that actually appear in the header section of the Mail File will
be replaced by values configured in the SMTP Transmitter.
– If the file does not have a particular header field, then that field will not appear in the mail, even if it
has a corresponding value in the SMTP Transmitter.
– Headers fields in the file that do not have corresponding values in the SMTP Transmitter are
excluded from the mail that is, only headers fields that appear in both the selected mail file and the
SMTP Transmitter sending the mail will appear in the mail generated by the SMTP Transmitter.
The "Received" header field is an exception to the above rules. Received header fields are always
stripped from the selected Mail File by MLIPS. Also values specified for the "Received" header by the
SMTP Transmitter sending the mail will always be added before any other header fields that might be
specified in the SMTP Transmitter. In addition to the "Received" header fields, certain other fields are
also removed from the file by MLIPS. These are: "Delivered-To", "Return-Path", "Status" and "X-Status".
The point of these file processing rules is to allow a mail file to be saved directly from a mail client
and loaded into TeraVM. The path that the original mail took, identified by the "Received" header
field (and certain other fields) that are typically added when a mail finally arrives at its destination, are
stripped from the mail to restore it to how it might have looked prior to delivery. This way, the SMTP
Transmitter's settings can then be used to add a new delivery path, and to replace other header fields in
the mail with operator configured values.
Note that the Mail File requires no validation viz-a-viz the SMTP Transmitter settings. If it does not have
any RFC 2822 header fields, then the mail generated by the SMTP Transmitter will not have any header
fields, regardless of the SMTP Transmitter's settings. The exception to this rule is the "Received"
header fields -- which are always added. If the Mail File has some header fields but not others, this
should not be flagged as a problem either - the missing fields will not be included in that particular
mail, but they may still be valid headers for a different mail that the same SMTP Transmitter might be
sending.
• A User Name.
• A Domain.
• A Password.
The User Group Configuration Folder contains all User Groups created within this test group and needs to
be created before a Mail User can be added.
1. In the Test Group tab create a Test Group (see Add Test Group Section) and right click on the
Configuration icon.
2. Right click on Add SMTP/POP3 Configuration menu item. This will create the SMTP/POP3
Configuration folder which contains the empty User Groups and Message Sets folders.
User Groups can consist of one or more Mail Users. To add a group:
1. Right click on User Groups, and select Add User Group. This will cause the Add User Group dialog
to be displayed.
2. Enter a unique Name to identify this User Group This can be a string value between 1 and 255
characters in length and is mandatory. Click on the <Add> button to add requests for this group.
3. Enter values for the fields displayed as required. See Add User Group Dialog Fields for a description of
the fields.
a. Click the button <Add> to display the Add Mail User dialog.
b. Enter values in the Mail User fields to add to this User Group. See Add Mail User Dialog Fields for
a description of the fields.
c. Click the OK button to add the Mail User. If the operation was successful then the mail user will
appear in the User Group table, otherwise a reason will be provided for the failure to add the mail
user.
Table 9-38. Add Mail User Dialog Fields
Domain The domain to which this user belongs. for example 2 - 255 characters. A complete domain
shenick.com name, (including the dots, and so on.)
should not exceed 255 characters. A
warning is given when these limits are
exceeded.
Note
Username and Domain fields can support Keyword Substution, if enabled. Click on the
5. Click the OK button to add the user group. If the operation was successful then the user group will
appear below the User Groups Folder, otherwise a reason will be provided for the failure to add the user
group.
9.3.12. Telepresence
Telepresence Configuration consists of:
A CTS Mux configuration item configures the options to be negotiated via the CTS Multiplex
protocol. In order to avoid the time consuming task of creating this configuration item and to allow
operators without a detailed knowledge of the CTS Multiplex protocol to be able to easily provision CTS
applications, a number of canned CTS Mux configuration items will be made available.
The CTS VAD Controller is used to configure which Telepresence Endpoint currently has the floor i.e
which Endpoint is determined to be talking to the rest of the participants in the conference call
The CTS Auxiliary Controller is used to configure which Telepresence Endpoint has it's Auxiliary Feed
plugged in. This helps to determine if the endpoint Gets the Auxiliary Floor. The Auxiliary Feed can be
plugged in or plugged out and if an endpoint is plugged-in it may Get the Auxiliary Floor, however it is
possible it may also Lose the Auxiliary Floor.
• Call Media
The Call Media is used to select the media streams that will be configured for use on a call. There a
number of different types - Video, Audio, Auxiliary and Legacy.
1. In the Test Group tab create a Test Group (see Add Test Group Section ) and right click on the
Configuration icon.
2. Right click on Add Telepresence Configuration menu item, this will create the Telepresence
Configuration folder, containing CTS Mux, CTS VAD Controller and Call Media Folders.
Note
If a Telepresence Configuration already exists, an error message is displayed.
CTS-1300, CTS-3000, CTS-3200, CTS-500. An emulated endpoint can use one of these or a new one can
be created.
To add a new CTS Mux item, right click on the CTS Mux Items folder in the Telepresence Configuration
folder and select the Add CTS Mux option from the menu. The Add CTS Mux dialog is displayed.
Name A unique name to identify this item. Can be between 1 and 255 characters in
length. Default is empty. Mandatory fie
CTS Version Version of the CTS Mux protocol to be supported. Mandatory, defaults to 1.7. Options are 1.6
and 1.7.
Description Description of the CTS Mux parameters. Optional, no default when creating a new
item. Can be between 0 - 512 characters in
length.
No. of transmitted Audio Number of multiplexed audio streams that can be Mandatory integer between 0 - 255. Default
Streams transmitted. is 1.
No. of received Audio Number of multiplexed audio streams that can be Mandatory integer between 0 - 255. Default
Streams received. is 1.
No. of Auxiliary Audio Number of audio streams that can be shared. Optional integer between 0 - 255. Default is
Streams 1. CTS Version must be 1.7 or greater.
Transmit Positions Bitmask indicating the transmit positions for audio Mandatory bitmask between 0x0 - 0xFFFF.
Bitmask streams. Default is 0x2.
Receive Positions Bitmask indicating the receive positions for audio streams. Mandatory bitmask between 0x0 - 0xFFFF.
Bitmask Default is 0x2.
Auxiliary Positions Bitmask indicating the auxiliary positions for audio Optional bitmask between 0x0 - 0xFFFF.
Bitmask streams. Default is 0x0. CTS Version must be 1.7 or
greater.
Transmit Media Options Bitmask indicating the audio media options for Mandatory bitmask between 0x0 -
Bitmask transmission. 0xFFFFFFFF. Default is 0x1.
Receive Media Options Bitmask indicating the audio media options for reception. Mandatory bitmask between 0x0 -
Bitmask 0xFFFFFFFF. Default is 0x0.
No. of transmitted Video Number of multiplexed video streams that can be Mandatory integer between 0 - 255. Default
Streams transmitted. is 1.
No. of received Video Number of multiplexed video streams that can be Mandatory integer between 0 - 255. Default
Streams received. is 1.
No. of Auxiliary Video Number of multiplexed video streams that can be shared. Optional integer between 0 - 255. Default is
Streams 1. CTS Version must be 1.7 or greater.
Transmit Positions Bitmask indicating the transmit positions for video Mandatory bitmask between 0x0 - 0xFFFF.
Bitmask streams. Default is 0x2.
Receive Positions Bitmask indicating the receive positions for video streams. Mandatory bitmask between 0x0 - 0xFFFF.
Bitmask Default is 0x2.
Auxiliary Positions Bitmask indicating the auxiliary positions for video Optional bitmask between 0x0 - 0xFFFF.
Bitmask streams. Default is 0x10. CTS Version must be 1.7
or greater.
Transmit Media Options Bitmask indicating the video media options for Mandatory bitmask between 0x0 -
Bitmask transmission. 0xFFFFFFFF. Default is 0x14f.
Receive Media Options Bitmask indicating the video media options for reception. Mandatory bitmask between 0x0 -
Bitmask 0xFFFFFFFF. Default is 0x14f.
Call Grouping Critera How Telepresence endpoints will be grouped into a Mandatory, select from By Test Group
conference call. Endpoints in the same conference call or By unique Call URI. Default is By Test
and configured to have their VAD value managed by the Group.
VAD Controller will be configured to sequentially take the
floor.
Take Floor Value Specifies the VAD value to be used when setting an Mandatory, integer between 1 - 100 or a
Endpoint to take the floor. profile. Default is 75.
Release Floor Value Specifies the VAD value to be used when setting an Mandatory, integer between 0 - 99 or a
Endpoint to release the floor. profile. Default is 45.
Change VAD After Time after which the VAD witll be changed. Mandatory, integer between 1ms - 24
hours. Suppported metrics are ms, secs,
mins, hours.
Start Controller After Delay before the CTS VAD Controller starts to control Optional, integer between 0ms - 15mins.
Endpoints taking the floor. This is to allow the test to start Supported metrics are ms, secs, mins.
and calls to come up.
Call Grouping Critera How Telepresence endpoints will be grouped into a Mandatory, select from By Test Group
conference call for the purpose of determining when/if or By unique Call URI. Default is By Test
endpoints get the Auxiliary Feed floor. Group.
Plugged-In Duration The time period for which each endpoint will have it's Mandatory, integer between 100ms - 24
auxiliary feed set to plugged in. hours. Default is 20secs.
Delay After Plug Out Delay between when a controller sets an endpoints Mandatory, integer between 0mins - 24hrs.
auxiliary feed to plugged out, and when the controller then Default is 0secs.
moves on to setting the auxiliary feed of next endpoint in
the call group to plugged in.
Start Controller After Delay before the CTS Auxiliary Feed Controller starts Optional, integer between 0ms - 15mins.
to control the Auxiliary Feed plugged in status of the Supported metrics are ms, secs, mins.
endpoints. This is to allow the test to start and calls to
come up.
A Call Media configuration item requires a Name and supports the following media types:
• Video
The user is required to select an RTP codec with the Media Type of Video. This will define the video
stream that will be used. This is set to an appropriate codec by default. If the Used for field in the
selected video codec is Pcap Replay, then it is possible to add entries to a list of optional media
formats. Each specific media format will specify a packet capture file containing the media content as
well as the Bit Rate and Frame Rate. The Bit Rate and Frame Rate can be set to custom values or to
values corresponding to canned Quality presets.
• Auxiliary
The auxiliary stream will use the same RTP codec that is, specified for video. The user can also
optionally add entries to a list of optional media formats. Again specific media format will specify a
packet capture file containing the media content as well as the Frame Rate. The Frame Rate can be set
to custom values or to values corresponding to canned Quality presets.
• Audio
The user is required to select an RTP codec with the Media Type of Audio. This will define the audio
stream that will be used. This is set to an appropriate codec by default.
• Legacy
The legacy audio code will always be set to the Default G.711u (PCM) codec. It is not possible to add,
modify or delete the legacy audio codec.
Quality Specifies the quality format presets available to define Mandatory, choose from available options.
preset values. Default is HD, Best Motion, 1080p.
Media Capture Specifies the capture file containing the media to be Mandatory, the specified pcap file must
replayed. contain at least 1 UDP/RTP conversation.
Bit Rate Specifies the Bit Rate that the media is encoded at. Optional integer between 1 - 1000 or can
be a profile. Value dependent on selected
Quality preset.
Frame Rate Specifies the Frame Rate that the media uses. Mandatory integer between 0 - 1000.
Default 30 but can depend on selected the
selected Quality preset.
Quality Specifies the quality format presets available to define Mandatory, choose from available options.
preset values. Default is VGA, 30 FPS.
Media Capture Specifies the capture file containing the media to be Mandatory, the specified pcap file must
replayed. contain at least 1 UDP/RTP conversation.
Frame Rate Specifies the Frame Rate that the media uses. Mandatory integer between 0 - 1000.
Default 30 but can depend on selected the
selected Quality preset.
9.3.13. TLS
Transport Layer Security (TLS) Configuration folders can be added to a Test Group. This allows the
definition of a list of Cipher Suits to be applied. Applications that can have Cipher Suits applied to them
using the TLS configuration item are: HTTP, and AnyConnect TSL and DTSL.
For other Applications that can have Ciphers suite applied, these can be configured using the Global
Settings, see Appendix B.
Prerequisites
• The selectable TLS Versions are: TLS 1.0; TLS 1.1; TLS 1.2; DTLS 1.0; DTLS 1.2.
1. From the TeraVM Java Client under the Test Groups tab, right-click on the Configuration item node,
and select Add > Add TLS Configuration. If you already have a TLS Configuration folder then you do
not need to add another one.
2. Right-click the TLS Configuration folder and select Add TLS Configuration. The Add TLS
Configuration dialog opens.
3. Under the Cipher Suites tab select the Version required. You can limit the list of Ciphers by entering
text into the Available Cipher Suites search field, the previous figure uses ECDHE as an example.
Note that the search field is case sensitive.
4. Select the List of Ciphers required from the left side column, use the >> button to move them to the List
of Selected Cipher Suites.
6. Click OK and return to the Add New HTTP Client Wizard dialog.
Table 9-44. Add TLS Configuration Parameters
Name Name assigned to cipher suit list. Mandatory. This field can be 1-255
characters long where the valid characters
are from the set: 'a-zA-Z0-9 .{}<>[]()@#&*
%_+=!-'
Version Select the TLS Version required. Default value: TLS 1.0. Select from: TLS
1.0; TLS 1.1; TLS 1.2; DTLS 1.0; DTLS 1.2.
Available Cipher Suits Select the Cipher Suits you want to use. List of Cipher Suits. For Supported Cipher
Suit list, see Appendix B.
9.3.14. VoIP
The VoIP configuration folder contains one configuration item, the VoIP Call List. This is a list of one or more
SIP URIs. A VoIP UA takes entries from this list for specifying the callee(s) in VoIP calls.
Note
If a VoIP Configuration already exists, an error message is displayed.
For the call to be successful, each URI in the Call List must exist as a configured VoIP user (in another VoIP
application) for example a Call List with 2 URIs would suggest there are two other VoIP users configured in
the test group.
For example, if VoIP application #1 defines a VoIP user Tom to have a Call List containing SIP URIs
for UserX and UserY, then UserX and UserY should exist as VoIP Users in one or more different VoIP
applications. This ensures that when Tom calls UserX, UserX exists as a VoIP User in his own right and is
able to receive the call.
The "one" can be achieved if this application is configured to have a batch of 2 (Configure As=Multiple
Client Per Row, No. of Clients Per Row=2), with a username of UserX. A batch of 2 results in the creation
of two VoIP users - UserX-1 and UserX-2 within TeraVM when the test is run (not 2 applications) - even
though there is only one application.
Therefore, when creating a Call List it is necessary to know about the configuration of the VoIP applications
that is, how many VoIP applications (and therefore VoIP Users initiating calls) will be configured? Each of
these applications will have a Call List and each URI in a Call List should refer to a VoIP User defined in
another VoIP application. Using the above example, a Call List with 2 URIs is needed as the VoIP user Tom
is calling UserX and UserY.
It is also important to know if the VoIP Users will be provisioned via a batch mode since this affects
the username part of the URI. For example, if a VoIP application is created with a batch of 2, IP
Address of 1.1.1.1, Hostname=shenick.com and Username=joe, the VoIP users created in TeraVM are
sip:joe-1-1@shenick.com with IP Address 1.1.1.1 and sip:joe-1-2@shenick.com with IP Address 1.1.1.2.
The Call List must then be created with SIP URIs matching the above. This can be achieved via a batch size
of 2, Hostname=shenick.com and Username=joe-1.
The above has used usernames as a means of explaining what happens when batch provisioning. It is also
possible to use numbers. If numbers are used then they are incremented when batch provisioning.
The options available when creating Call Lists are described next.
2. Click on Add VoIP Call List menu item, this will cause the Add VoIP Call List dialog to be displayed.
Enter values as required.
Name Unique user-friendly name for the Call List. 3 - 32 Characters in length
URI List List of one or more SIP URIs. The host can be a sip:[user@]host[:port]
domain name or an IPv4/IPv6 address. The port can be
supplied if the ultimate destination of the call is not the
default SIP port of 5060.
3. The Add button allows for the configuration of various URIs - single and multiple URIs in a batched and
non-batched mode.
A batch is the term used to describe where a single application in the GUI represents multiple
users for example one row in the Application Display represents 1,000 VoIP users. These users all
have very similar configurations and may only differ in their SIP URIs and so on. See the section
Creating a VoIP application for more information about "batched" users.
This option creates multiple URIs, incrementing the username based on the batch size.
• Enter appropriate values for Batch Size, Hostname, UserName and Port.
Table 9-47. Add Multiple URIs Using Single Batch to Call List Dialog Fields
li Size The li size used to increment the Base Username. Max value is 100.
In this scenario each URI represents a VoIP User associated with a unique VoIP application for
example where multiple VoIP applications were created in one bulk provisioning action that is, via
No. of Rows > 1 and no batched user.i.e Configure As = Single Client per Row..
• Enter appropriate values for No. Of Clients, Hostname, UserName and Port.
li Size The li size used to increment the Base Username. Max value is 100.
This create Multiple URIs where each URI represents a VoIP User from a "batch" of Users created
behind multiple VoIP applications that is, where the Configure As field is set to "Multiple Clients
Per Row" and No. of Rows is > 1 in the VoIP application.
• Enter appropriate values for No. Of Clients, Batch Size, Hostname and UserName.
Table 9-49. Add Multiple URIs using Multiple Batches Dialog Fields
li Size The li size used to increment the Base Username. Max value is 100.
The details of the default settings available for SIP Header Configurations are in the table that follows.
Table 9-50. Default SIP Header Configurations
{transport};{conuripms}>;{conpms}
1. In the TeraVM Java Client in the Test Groups tab, locate your test group.
2. The SIP Header Field Lists appear automatically under the VoIP Configuration item folder. To
add a VoIP Configuration folder, right-click the Configuration folder and select Add > Add VoIP
Configuration. The Default SIP Header Configurations are created under the SIP Header Fields Lists.
3. To add your own configured list, right-click the SIP Header Field Lists Folder and select Add SIP
Header Field Lists. The Add SIP Header Field List dialog opens.
4. Enter a name for your SIP Header Field List in the Name field.
6. Select the SIP Method from the drop-down options menu: ALL, REGISTER,INVITE, UPDATE,
Response.
7. Enter the Field Name. Click the scroll icon to display a list of commonly used SIP Header Fields to
select from.
8. Enter the Field Body information. You can click the Information icon next to this field to display the list
of variables that can be used for substitution. Variable substitution simplifies configuration by allowing
you to reuse values that are already defined in the VoIP UA configuration. The table Table 9-51contains
the list of Variables that can be substituted and provides each with a description.
10. Click OK to finish defining the SIP Header Field List. Your Header Field List is located under the SIP
Header Field Lists folder.
11. This Configuration item will be available for selection through the browse functionality when configuring
the VoIP UA Application.
Table 9-51. Field Body Variable Substitution
{callparty} Call party for the SIP call. Expands to either "called" or "calling".
Should only be used with INVITE or INVITE responses.
(imei} IMEI
{response=code,code,..} For response headers only specify what responses this header
should be added. Must appear at start of list. For instance
{response=180,200} then header is only added for responses to
180 and 200 SIP responses. If {request=method..} is present then
this must also be true for the header to be included.
SIP Method Drop-down options box containing the SIP Methods All, REGISTER, INVITE, UPDATE,
RESPONSE
Field Name Enter the field name or can be selected from a list of Max 100 characters, allowed characters are
commonly used SIP Field Names. 0..9a..zA..Z-_{}=.
Field Body Enter information for the body of the message. Values max 1024 characters, allowed characters
can be put directly into the message, or choose from a are 0..9a..zA..Z-_[space]`!"£$%^&*()_+=|\,./
list of substitute variables. <>?;'#:@~[]{}
1. In the Test Group tab create a Test Group (see Add Test Group Section ) and right click on the
Configuration icon.
2. Right click on Add TCP Characteristics Configuration menu item, this will create the empty TCP
Characteristics Configuration folder.
1. Right click on TCP Characteristics Configuration, and select Add TCP Characteristics. This will
cause the Add TCP Characteristics dialog to be displayed.
2. Enter values for the fields displayed as required. See Add Peer Group Dialog Fields for a description of
the fields.
3. Click the OK button to add the TCP Characteristics. If the operation was successful then the TCP
characteristics will appear below the TCP Characteristics Configuration Folder, otherwise a reason will
be provided for the failure to add the TCP characteristics.
Note
The Initial Retransmission Timeout (RTO) value always gets rounded down to the nearest multiple of
the TCP timer.
Name Name of the new TCP Characteristics, must be unique 3 - 32 Characters in length
within the TCP Characteristics Configuration Folder.
Max. Transmit Buffer Size Maximum size of the Senders Buffer that is, number of 64K - 1GB
segments sent without receiving an ACK. (Optional)
Max. Advertised Receive Maximum size of the Recipients Buffer. (Optional) 2 * MSS to 65525 bytes
Window Size
Initial Retransmission Starting time to wait for an ACK before retransmitting data. 1 - 600,000 milliseconds.
Time-Out
TCP Timer This determines the frequency with which TCP 10 - 5000 milliseconds. Default is 500ms.
connections are checked to see if retransmissions are Can be a profile.
required.
Emulate Delayed ACKs Emulate ACKs being delayed, either For All Segments or Select from the drop-down combo, For
for a maximum of 2 Segments Max. 2 Segments within All Segments, Max 2 Segments or Off.
each TCP window or no delayed ACKs, Off. Default is For All Segments.
First Data Segment ACK Emulate sending the first data Segment with the ACK flag On or Off, Default is Off.
can SYN-ACK set to true to acknowledge a SYN ACK.
Final Data Segment can Emulate sending the last data Segment with the FIN flag On or Off, Default is On.
Include FIN set to true.
Final Data Segment ACK Emulate sending the last data Segment with the FIN and On of Off, Default is On.
can Include FIN ACK flag set to true.
Max. Segment Size (MSS) Maximum size of the TCP Data Segment. (Optional). Value in range of 1 - 9176 bytes or a
This value can be calculated as follows: MSS (Bytes) = profile. Note: the maximum MTU size
MTU (bytes) - IP Header Size (e.g. 20 or 40 bytes) - TCP (Maximum MTU) is 9216, the MSS
Header Size (e.g. 20 bytes). considers the TCP/IP Header size of 40/60
bytes.
• A runtime error is displayed if a
number greater than the maximum
allowed is used. The maximum value
allowed for the MSS is calculated
based on the following formula: MTU
of the hosts - 40 bytes for IPv4 or MTU
of the hosts -60 bytes for IPv6.
Window Scale The window scale used to extend the original TCP window 0 - 14, default is None. Configuring a
size. (Optional) window scale of 0 means no scaling but
the actual TCP window scale of 0 will be
specified as a TCP option
Use Selected ACK (SACK) TCP will recognise an incoming "SACK permitted" option On or Off, Default is Off.
when permitted in a SYN packet, and subsequently use SACK options to
acknowledge Out of Sequence Data Segments.
Set Selected ACK (SACK) TCP will set the "SACK permitted" option in outgoing SYN On or Off, Default is Off.
permitted packets. Note that the TCP will always interpret incoming
packets that SACK Out of Sequence Data Segments,
even if "SACK permitted" was not set in the initial SYN
packet. The assumption is that the receiving end of a
Support Timestamp when Indicates if the receiving end of the TCP will support On or Off, default is Off.
Requested Timestamping when requested. (Optional)
Request Timestamp Indicates if the TCP timestamp option will be included in On or Off, default is Off.
the SYN segment of the TCP header. (Optional)
1. In the Test Group tab create a Test Group (see Add Test Group Section ) and right click on the
Configuration icon.
2. Right click on Add Network Characteristics Configuration menu item, this will create the empty
Network Characteristics Configuration folder.
• Single Packet Bursts. Packets can be dropped a percentage of the time by setting the Drop Rate.
• Fixed Burst Size. Packets can be dropped in bursts using a default burst length defined in the Drop
Burst Size (lower value) and Drop Rate. For example, setting the Drop Burst Size to 2, and Drop
Rate to 5 would mean dropping 2 packets 5 percent of the time.
• Variable Burst Size. Packets can be dropped in varying bursts using the values defined in the Drop
Burst Size (lower and higher values) and Drop Rate. For example, setting the Drop Burst Size to 2,
the higher Drop Burst Size to 6, and Drop Rate to 5 would mean dropping 2 to 6 packets 5 percent of
the time.
• Variable Burst Times. Dropping packets in bursts can be set to happen periodically by setting the Limit
Bursts value. For example, setting the Drop Burst Size to 2, Drop Rate to 5 and Limit Bursts to
10000 would mean dropping 2 packets 5 percent of the time every 10 seconds.
1. Right click on Network Characteristics Configuration, and select Add Network Characteristics.
This will cause the Add Network Characteristics dialog to be displayed.
2. Enter values for the fields displayed as required. See Add Peer Group Dialog Fields for a description of
the fields.
3. Click the OK button to add the Network Characteristics. If the operation was successful then the TCP
characteristics will appear below the Network Characteristics Configuration Folder, otherwise a reason
will be provided for the failure to add the Network characteristics.
Table 9-54. Add Network Characteristics Dialog Fields
Packet Delay Delay in milliseconds for each inbound packet. 0 - 60,000 Milliseconds. Or select distribution
(Optional) profile.
Clicking the ellipsis button allows you to open a
profile chooser dialog and select a distribution
profile. The “Packet Delay” Text field accepts
both numbers and characters as input. The
numbers will represent a static value for
the Packet Delay field. The characters will
represent the name of a Profile Configuration
Item. See Section 11.21. Profile Configuration
in Chatper 11 Test Case Configuration for more
details.
Drop Burst Size (lower Absolute or minimum number of inbound packets to 0 - 1000 packets.
value) drop in a burst . (Optional)
Drop Burst Size (higher Maximum number of inbound packets to drop in a 0 - 1000 packets.
value) burst. (Optional)
Limit Bursts Time period in milliseconds in which to have bursts. 0 - 60,000 Milliseconds.
(Optional)
If a port used in a application does not have an associated port configuration, a default one is used instead.
1. In the Test Group tab create a Test Group (see Add Test Group Section ) and right click on the
Configuration icon.
2. Right click on Add Interfaces Configuration menu item, this will create the Interface Configuration
folder.
1. Right click on the Interface Configuration folder, and select Add Ethernet Interface Configuration.
This will cause the Add Ethernet Interface Configuration dialog to be displayed.
Enable Auto-Negotiation Indicates if the port will negotiate its settings with the far Default is ticked.
end.
Speed/Duplex Settings The values to be assigned to the Speed and Duplex Defaults are used if auto-negotiation is
parameters. turned on. If auto-negotiation is turned
off then one of the valid settings must be
selected.
Information on statistics collection in the HTML5 UI are found in the TeraVM User Guide.
A detailed description of the types of statistics that you can run (Normal or Fine; Host, Application or
Interface) and on the Metrics possible for the test entities are found in the TeraVM Metrics Guide.
• Configure general statistics collection parameters for your whole test group. These include the sampling
intervals that you require for each type of statistic and the granularity (Normal or Fine) of statistics that
you want to collect at Test Agent level.
Note
Since default collection parameters are already configured for your test group, changing this
configuration is optional.
• For each test entity, specify the statistics granularity that you require or turn off all statistics collection.
• If you want to group your statistics, set up and enable statistics collection in Aggregate Groups.
1. Right-click on your test group in the left hand panel and select Properties. The following dialog window
will open. You will also get this dialog window when creating a new test group.
Note
This figure shows the default settings for statistics collection.
2. Select the Sampling Intervals that you want for your Applications/Hosts and Aggregate Groups and click
OK. These intervals are applied to all applications and aggregate groups at the test group level.
3. For Test Agent statistics, enable or disable Normal and Fine Stats.
Table 10-1. Statistics Configuration for Test Group
Normal Stats Interval at which TeraVM will gather normal statistics for Intervals are: 30s, 1m, 5m. Default is 30s.
any enabled hosts or applications in your test group.
Fine Stats Interval at which TeraVM will gather fine statistics for any Intervals are: 1s, 5s, 10s. Default is 1s.
enabled hosts or applications in your test group. Fine
statistics are collected at very short intervals
Normal Stats As above Intervals are: 30s, 1m, 5m. Default is 30s.
Fine Stats As above Intervals are: 1s, 5s, 10s. Default is 1s.
Card Statistics
Normal Stats Enable or disable normal statistics collection for Test Default is Enabled.
Agents.
Fine Stats Enable or disable fine statistics collection for Test Agents. Default is Disabled.
The steps below guide you through setting up statistics for new and existing hosts and applications.
1. From the Add New Host Wizard, click on the Statistics Settings tab, as shown below.
2. Enable the type of statistics that you want to collect, the granularity of those statistics (normal or fine)
and the aggregate group that you require, as described in the table below:
Enable Normal Statistics TeraVM will gather normal statistics at the Application Default is Normal stats enabled.
sampling interval configured for your Test Group (see
Configuring Statistics General Parameters).
Enable Fine Statistics TeraVM will gather fine statistics at the Application Default is Fine stats disabled.
sampling interval configured for your Test Group (see
Configuring Statistics General Parameters). "Fine"
statistics are collected at very short intervals and can be
enabled/disabled while a test is running. Fine statistics
can only be enabled on up to 500 entities at any given
time.
Connection Statistics Gather statistics related to TCP connections; for Default is enabled.
example, attempted, established, rejected and so on.
Extended TCP Statistics Gather counts for such TCP statistics as SYNs, SYN Default is disabled.
ACKs, ACKs and so on.
DHCP Statistics A variety of statistics are collected if the host gets its Only available if the host gets its address
address via DHCP, including DISCOVERS, OFFERS, via DHCP. Enabled by ticking the
REQUESTS and so on. checkbox. Default is disabled.
PPPoE Statistics A variety of statistics are collected if the host uses Only available if the host uses PPPoE.
PPPoE including PADI/PADO/PADR/PADS packets Enabled by ticking the checkbox. Default
sent/received, Sessions established, terminated/failed is disabled.
and so on.
Aggregate Group Aggregate Group to which this host belongs for Optional. Select a group from the list of
statistical reporting purposes. See Section 10.4.2. previously configured groups or add a
new group. "Default" is the test group.
To configure statistics on an existing host, right-click on the host, click Statistics and enable or disable the
statistics that you require from the options shown.
1. Click on the icon to create a new application, and configure each window. You will see a window similar
to the following on the Additional Configuration tab.
The most common statistics parameters that you will see are described below:
Table 10-3. Add New Application - Additional Configuration - Statistics
Enable Normal Statistics TeraVM will gather normal statistics at the Default is Normal stats enabled.
Application sampling interval configured for your
Test Group (see Configuring Statistics General
Parameters).
Enable Fine Statistics TeraVM will gather fine statistics at the Application Default is Fine stats disabled.
sampling interval configured for your Test Group
(see Configuring Statistics General Parameters).
Aggregate Group Aggregate Group to which this application belongs Optional. Select a group from the list of
for statistical reporting purposes. See Viewing previously configured groups or add a new
Aggregate Groups. group. "Default" is the test group.
Configure Passive Allows the configuration of the client for Passive Enabled by ticking the checkbox or disabled
Analysis Analysis. For further information on setting this by unticking. Default depends on the
parameter refer to Additional Configuration, application.
Passive Analysis.
Note
Other options may be displayed in this dialog window, depending on the application. These are
documented in the Applications chapter for each relevant application.
3. Enter an Aggregate Group or use the Default (your test group). Click Finish.
4. For some applications, statistics configuration may be in a separate window, as shown below:
You can change the statistics configuration on an existing application by right-clicking on the application
and selecting Statistics. Alternatively, click on Properties, then the Additional Configuration tab.
Note
This section creates the aggregate group. You next need to add entities to the Aggregate Group.
1. Click on the test group on the left panel that you want to add the group to, and click the Statistics Group
tab on the right. You can select an existing group here, or to add a new group, click the Add Group icon
at the top left of the tab.
Figure 10-7. Adaptive Bit Rate Client: Additional Configuration - Creating Aggregate Statistics Groups
2. The Add New Aggregate Group dialog is displayed. Enter a Name and Description for the group in
the General tab.
Note
You can also do this in the host or application wizard in the Additional Configuration window by
clicking on the […] button beside the Aggregate Group or Group Name field.
3. Click on the Statistics tab to select the type of statistics that can be collected for the Hosts and
Applications that are contained within this group. These are optional metrics that will only be collected if
these are selected here. For more details on each type, see the Metrics section for hosts or application
of interest.
To view the properties of an aggregate group, right click on the group and select the Properties option from
the menu. The Aggregate Group Properties dialog is displayed. Click on Contributors to see which entities
are in the Aggregate Group. Click on Aggregates to change the level of granularity of the statistics collection
for each entity type, as shown below.
The General and Statistics tabs were described previously in the Adding a New Group section.
Deleting a Group
To delete an aggregate group, right click on the group and select Delete from the menu.
Detailed results and Summary results (on aggregate groups or your total test group) can be viewed. You can
access the summary statistics of the currently executing test group by pausing the test group. The results
can be viewed as both graphical and tabular.
Real-Time statistics are only available while the test is running, and include information such as Rates,
Cumulative Totals and Current Totals.
Fine results can also only be viewed while the test is running.
1. To view results for a host or application, right click on the host or application and select Statistics and
then View options from the menu. The following statistics can be viewed:
2. To view statistics for the whole test group, right click on the test group and select Results, then the
required statistics to view (for example, View Normal Rates Statistics). A Test Results Window is
displayed as shown below.
3. Select the aggregate entity type from the drop-down list in the Item Type field. This will display all the
statistics for this type of entity for example a Host, a HTTP Server, and so on.
4. To pause statistics, save your results and view your results in graphical or tabular format, click on the
appropriate icon below the results, as indicated below. You can also change the the refresh rate of your
statistics results display and the time period displayed.
What is Thresholding?
A threshold is a rule (an expression) you set on one or more target entities, and attributes that control over
when the rule is applied. TeraVM applies the rule to the target entities and if the rule is violated a violation
event is generated.
The rule can be a simple or complex expression. It consists of any number of predicates on statistic columns
connected by boolean values. For example the following rule expression returns true when the incoming bit
rate or outgoing bit rate falls below a limit - (('In Bits/s' < 45.66) || ('Out Bits/s' < 123.34))
Consider the following: you may want to be notified when the MOS score for any of a number of configured
VoIP UA's drops below a minimum value. To do this, configure a threshold to use the VoIP UA MOS score
statistic and then apply this to all of the VoIP UA's in the test. When any of the VoIP UA's MOS score drops
below the minimum value, a threshold violation event will be generated thereby making you aware of the
breach of the threshold.
Note
In order to use the Thresholding functionality within TeraVM a license is required. If a license is
needed then contact VIAVI technical support.
Creating a Threshold
Thresholds can be created from the Thresholds tab in the test group Display Window. The steps required to
create a threshold are:
• General Details
• Advanced Settings
General Details
The following wizard is displayed for provisioning the threshold:
The following details are required for the General Details step of the wizard:
Table 11-1. Add New Threshold - General Details Fields
Name Unique name identifying the Threshold. Mandatory. String value between 1 and
255 characters in length.
Targets The entities to which this Threshold will be applied. Mandatory. Can be one or more
applications or hosts or an aggregate
group, an interface or a test group total.
Rule A boolean expression which can use logical operators Mandatory. The double quote (") is an
and which defines the circumstances when the threshold invalid character.
events should be generated. Use CTRL+Space to get a
list of statistics for use in the Rule.
Statistics Type Type of stats the threshold should be applied to. Mandatory. Choose from FINE or
NORMAL. If FINE, the threshold will be
applied to statistics generated at the Fine
statistics sampling interval - typically
every second. If NORMAL, the threshold
will be applied to statistics generated at
the Normal statistics sampling interval -
typically every 30 seconds.
The following dialog is displayed when selecting targets for the Threshold:
Entity Type The type of entity to which the Threshold will be applied. Mandatory. Choose from Application, Host,
Aggregate Group, Interface or Test Group.
Selection Mode The mechanism by which one or most Applications or Only available if Entity Type is Application
Hosts will be selected. or Host. Choose one of:
• Match Entities by Regular Expression
applied to Name
• By Type
• List of Entities
Regular Expression A regular expression defining the target entities names. Available and mandatory only if the Entity
Type is either Application or Host and
Selection Mode is Match Entities by
Regular Expression Applied to Name.
Must be between 1 - 512 chars in length.
Double quote (") and newline are invalid
characters.
Application Type The type of application on which the Threshold will be Available and mandatory only if the Entity
applied. Type is Application and Selection Mode is
By Type. Choose from the available list of
applications.
Host Type The type of host on which the Threshold will be applied. Available and mandatory only if the Entity
Type is Host and Selection Mode is By
Type. Choose from Virtual Host or Virtual
Subnet Host.
Application List A list of target applications to which the Threshold will be Available and mandatory only if the Entity
applied. Type is Application and the Selection Mode
is List of Entities. Use the Select button to
select one or more applications.
Host List A list of target hosts to which the Threshold will be Available and mandatory only if the Entity
applied. Type is Host and the Selection Mode is
List of Entities. Use the Select button to
select one or more hosts.
Card The name of a Card containing one or more interfaces to Available and mandatory only if the
which the Threshold will be applied. Entity Type is Interface. Choose from the
provided list of cards.
Interface An interface from a specific card to which a Threshold will Available and mandatory only if the Entity
be applied. Type is Interface and a specific card has
been selected. Choose from the list of
available interfaces.
Aggregate Group An aggregate group from which a particular aggregate Available and mandatory only if the Entity
type will be selected. The Threshold will be applied to the Type is Aggregate Group. Choose from the
selected aggregate type. available aggregate groups.
Aggregate Type The type of aggregate to which the Threshold will be Available and mandatory only if the Entity
applied. Type is Aggregate Group and a specific
Aggregate Group has been selected or the
Entity Type is Test Group. Choose from the
available list of aggregate types.
Advanced Settings
The following dialog is displayed for the next step of the wizard:
The following details are required for the Advanced Settings step of the wizard:
Table 11-3. Add New Threshold - Advanced Settings Fields
Start Test Delay A period in seconds or minutes after a test group has Optional. An integer value between 0 -
started, before a threshold is live. 60mins. Available metrics are secs and
mins.
Violation Trigger Sample The number of continuous statistical samples for which Optional. Must be Enabled and if so the
Count the Threshold must be violated before a Threshold min is 1 and max is 10000.
Violation Event is generated.
Clear Trigger Sample The number of continuous statistical samples for which Optional. Must be Enabled and if so the
Count the Threshold must be cleared before a Threshold Clear min is 1 and max is 10000..
Event is generated.
Event Tag An additional description of the threshold which will be Optional. A string between 1 - 256
copied to either a violation or clear event. characters in length.
Delete Threshold
A threshold can be deleted by either highlighting it and pressing the delete icon or right-clicking on the
threshold and selecting the Delete option.
The following rules apply when deleting a threshold:
• Thresholds cannot be deleted while the test group it belongs to is running
• Deletion of a threshold will not cause cascading delete of threshold events associated with it, because
events are, like statistics, considered to be test execution result data
• Thresholds are deleted in a cascade fashion when the test group is deleted
• Thresholds are deleted in a cascade fashion after the target aggregate group is deleted
• Thresholds associated with target applications or hosts using the Selection Mode By List are not
deleted after these entities are deleted – only the association between them is deleted. This may result
in the a threshold with an empty list of target entities
• Thresholds applied to target applications or hosts using the Selection Mode Match Entities By
Regular Expression applied to Name are not affected by the deletion of entities
• Thresholds applied to target applications or hosts using the Selection Mode Entity Type are not
affected by the deletion of entities
• Thresholds are not deleted after the target aggregate is deleted (please note that the aggregate cannot
be deleted manually, deletion of an individual aggregate within an aggregate group occurs automatically
if a given aggregate group has no more contributors to that aggregate)
violation event, the matching clear event for this violation will have its own unique ID value, however the
correlation id will match that of the value assigned to the violation event
• Event Type: this indicates whether or not the event was a violation event or a clear event
• Threshold Name: this identifies which threshold was violated or cleared
• Threshold Rule: the rule associated with the threshold that was violated/cleared causing the event to
occur
• Source: the entity that violated the threshold's rule
• Statistic Type: indicates whether the threshold event occurred on the Fine or Normal stats of the given
entity.
• Threshold Tag: an optional description configured in the Threshold which is copied to any event
generated as a result of the threshold being violated or cleared.
The threshold event listing screen will show all events for the currently executing test group, if the currently
executing test group is owned by the user who is logged in to the GUI.
If a user stops a test group and then starts either another test group or the same test group, then all events
that are currently shown in the event listing screen will be removed, and the event listing screen will now
only show any new events for the newly executing test group.
If a user opens a TeraVM GUI the threshold event listing will not automatically load and show all of the
events that have been generated by the currently executing test group for the logged in user. Instead, a user
will be required to explicitly load all historical events. If a user chooses to load all historical events into the
listing screen, then any new events that are generated for that test group after the historical events have
been loaded, will also be shown in the listing screen
The data shown in the threshold event listing screen is historical data. Therefore the details of the event
should reflect the configuration of the threshold at the time of the event and should not reflect any changes
that may have been made to the source threshold after the event may have occured.
The threshold event listing screen provides the following functionality:
• Filtering: A user will be able to apply a filter to the events being shown in the listing screen.
• Export to XML: A user will be able to export to an XML file, any events currently being shown in the
Threshold event listing screen.
Enable/Disable a Threshold
A Threshold which is enabled can be disabled by right-clicking on it and selecting Disable
A Threshold which is disabled can be enabled by right-clicking on it and selecting Enable
Turning on thresholding ensures threshold rules are applied and therefore events may be generated.
Import/Export Thresholds
Thresholds, as a part of a test group's configuration, will be exported/imported together with the rest of a test
group's configuration in the same fashion as hosts and applications. Threshold events will not be exported
as these are test execution data, like statistics, which are never exported along with a test group.
Note
Access to CLI functionality is only available if you have a license to use the CLI
Note
Access to Thresholding functionality via the CLI is dependent on having a license to use thresholding
Adding a Job
1. In the Job tab select the Jobs item at the top of the tree or alternatively a folder under which you wish
to add a new Job.
3. Select the "Add Job..." menu item from the menu displayed. This will cause the Add Job dialog to be
displayed.
4. Enter values for the fields displayed as required. See Below for a description of the fields
If the operation was successful then the Job will appear below the selected item, otherwise a reason will be
provided for the failure to add the Job.
Table 12-1. Add Job Dialog Fields
Adding a Task
A task is a component of a Job. It defines the test to be carried out within a Job. Configuring a Job with
multiple tasks results in a Job that can run multiple tests for example Multiple test groups. Tasks are
executed sequentially therefore the associated tests are executed sequentially.
• Sleep Task
This task sleeps blocks the execution of its parent job for a specified length of time.
This task runs a specified Test Group for a specified length of time.
This task runs a specified Test Group for a specified number of iterations.
This task performs analysis on the results for specified application Types and interfaces within
a specified Test Group.
3. Select the "Add Task -> Add Sleep Task" menu item from the menu displayed. This will cause the
Add Sleep Task dialog to be displayed.
4. Enter values for the fields displayed as required. See below for a description of the fields
5. Click the OK button to add the job.
If the operation was successful then the Task will appear below the selected item, otherwise a reason will be
provided for the failure to add the Task.
Table 12-2. Add Sleep Task Dialog Fields
Field Description Validation
Sleep How long to sleep. Either a specific number of seconds or Choice of "For Time Duration" or "Until Set
until a specific time. Time".
Time Amount of time in seconds, for which the task should 0 - 125 Characters in length
sleep or the time at which the task should start.
3. Select the "Add Task -> Add Run Test Group (Time) Task" menu item from the menu displayed. This
will cause the Add Run Test Group (Time) Task dialog to be displayed.
4. Enter values for the fields displayed as required. See below for a description of the fields
If the operation was successful then the Task will appear below the selected item, otherwise a reason will be
provided for the failure to add the Task.
Table 12-3. Add Run Test Group (Time) Task Dialog Fields
Test Group Test Group which is to be executed by the task Test Group within the TeraVM system
Unlimited Duration Setting this to Enabled will mean that the task will never Enabled or Disabled
finish, otherwise the task will complete after the time
specified in the duration.
Duration Amount of time in seconds, for which the task should run. 1 to 259200
3. Select the "Add Task -> Add Run Test Group (Iteration) Task" menu item from the menu displayed.
This will cause the Add Run Test Group (Iteration) Task dialog to be displayed.
4. Enter values for the fields displayed as required. See below for a description of the fields
5. Click the OK button to add the job.
If the operation was successful then the Task will appear below the selected item, otherwise a reason will be
provided for the failure to add the Task.
Table 12-4. Add Run Test Group (Iteration) Task Dialog Fields
Test Group Test Group which is to be executed by the task Test Group within the TeraVM system
Unlimited Duration Setting this to Enabled will mean that the task will never Enabled or Disabled
finish, otherwise the task will complete after the Iteration
count specified in the duration.
Duration Amount of iterations for which the test group assigned to 1 to 1000000000
the task should run.
3. Select the "Add Task -> Add Run External Application Task" menu item from the menu displayed.
This will cause the Add Run External Application Task dialog to be displayed.
4. Enter values for the fields displayed as required. See below for a description of the fields
If the operation was successful then the Task will appear below the selected item, otherwise a reason will be
provided for the failure to add the Task.
Table 12-5. Add Run External Application Task Dialog Fields
External App. Path Path to the external application which is to be executed 1 to 125 characters in length
Block Until Completed Setting this to enabled will mean that this task will not Enabled or Disabled
complete until the external application that it executed has
completed. Setting it to disabled means that the task will
execute the external application and then immediately
complete.
3. Select the "Add Task -> Add Run TeraVM Script Task" menu item from the menu displayed. This will
cause the Add Run TeraVM Script Task dialog to be displayed.
4. Enter values for the fields displayed as required. See below for a description of the fields
If the operation was successful then the Task will appear below the selected item, otherwise a reason will be
provided for the failure to add the Task.
Table 12-6. Add Run TeraVM Script Task Dialog Fields
TeraVM Script Hard coded Path to the TeraVM script which is to be 1 to 125 characters in length
executed
Block Until Completed Setting this to enabled will mean that this task will not Enabled or Disabled
complete until the TeraVM script that it executed has
completed. Setting it to disabled means that the task
will execute the TeraVM script and then immediately
complete.
3. Select the "Add Task -> Add Analyse Test Group Results Task" menu item from the menu
displayed. This will cause the Add Analyse Test Group Results Task dialog to be displayed.
4. Enter values for the fields displayed as required. See below for a description of the fields. If the Output
is set to Window, then this analysis task will block until the analysis results window is closed. Therefore,
if running a job with multiple tasks it would be appropriate to set the Output to PDF if one of these tasks
is an analysis task.
If the operation was successful then the Task will appear below the selected item, otherwise a reason will be
provided for the failure to add the Task.
Table 12-7. Add Analyse Test Group Results Task Dialog Fields
Test Group Name of the Test Group from which the results are to be N/A
analysed.
Analysis Tool The tool to be used to analyse the collected statistics. Default is the VIAVI "Default" tool. "Packet
Loss" is also available.
Input Data Type The type of data to be analysed. Defaults to Test Group Results. No other
option is available.
Input Data The data to be analysed. Always the data from the previously
executed test group in the Job.
Sampling Interval The sampling interval of the collected data. Default is Five Minutes. Select from Five
Minutes, One Minute, Thirty Seconds,
Twenty Seconds, Ten Seconds, Five
Seconds, One Second.
Output Path Directory where output from the results analysis is to be N/A
placed.
Option Group Select from the drop down menu which application type N/A
and/or interface results are to be analysed. for example
to include HTTP application results, select HTTP and set
the Include Option to true. Repeat this process for each
application type and interface required. General Options
allow the output format to be chosen, currently only .pdf is
supported.
Running a Job
Note
Only one Test Group/Job can be running at any one time.
To run a Job:
1. In the Job tab select the Job which you wish to run.
Any output generated during the running of the Job will be displayed in the Output console in the bottom of
the TeraVM client.
To modify the properties of the Job, edit the values for the displayed fields as required and click the OK
button to apply the changes.
To modify the properties of the Sleep task, edit the values for the displayed fields as required and click the
OK button to apply the changes.
Table 12-9. Sleep Task Properties Dialog Fields
Sleep How long to sleep. Either a specific number of seconds or Choice of "For Time Duration" or "Until Set
until a specific time. Time".
Duration Amount of time in seconds, for which the task should 0 - 125 Characters in length
sleep or the time at which the task should start.
3. Select the "Properties..." menu item from the menu displayed. This will cause the Run Test Group
(Time) Task Properties dialog to be displayed.
To modify the properties of the Run Test Group (Time) task, edit the values for the displayed fields as
required and click the OK button to apply the changes.
Table 12-10. Run Test Group (Time) Task Dialog Fields
Test Group Test Group which is to be executed by the task Test Group within the TeraVM system
Unlimited Duration Setting this to Enabled will mean that the task will never Enabled or Disabled
finish, otherwise the task will complete after the time
specified in the duration.
Duration Amount of time in seconds, for which the task should run. 1 to 259200
3. Select the "Properties..." menu item from the menu displayed. This will cause the Run Test Group
(Iteration) Task Properties dialog to be displayed.
To modify the properties of the Run Test Group (Iteration) task, edit the values for the displayed fields as
required and click the OK button to apply the changes.
Table 12-11. Run Test Group (Iteration) Task Dialog Fields
Test Group Test Group which is to be executed by the task Test Group within the TeraVM system
Unlimited Duration Setting this to Enabled will mean that the task will never Enabled or Disabled
finish, otherwise the task will complete after the Iteration
count specified in the duration.
Duration Amount of iterations for which the test group assigned to 1 to 1000000000
the task should run.
3. Select the "Properties..." menu item from the menu displayed. This will cause the Run External
Application Task Properties dialog to be displayed.
To modify the properties of the Run External Application task, edit the values for the displayed fields as
required and click the OK button to apply the changes.
Table 12-12. Run External Application Task Dialog Fields
External App. Path Path to the external application which is to be executed 1 to 125 characters in length
Block Until Completed Setting this to enabled will mean that this task will not Enabled or Disabled
complete until the external application that it executed has
completed. Setting it to disabled means that the task will
execute the external application and then immediately
complete.
3. Select the "Properties..." menu item from the menu displayed. This will cause the Run TeraVM Script
Task Properties dialog to be displayed.
To modify the properties of the Run TeraVM Script task, edit the values for the displayed fields as required
and click the OK button to apply the changes.
Table 12-13. Run TeraVM script task Dialog Fields
TeraVM Script Hardcoded Path to the TeraVM script which is to be 1 to 125 characters in length
executed
Block Until Completed Setting this to enabled will mean that this task will not Enabled or Disabled
complete until the TeraVM script that it executed has
completed. Setting it to disabled means that the task
will execute the TeraVM script and then immediately
complete.
3. Select the "Properties..." menu item from the menu displayed. This will cause the Analyse Test
Group Results Task Properties dialog to be displayed.
To modify the properties of the Analyse Test Group Results task, edit the values for the displayed fields as
required and click the OK button to apply the changes.
Table 12-14. Analyse Test Group Results Task Dialog Fields
Test Group Name of the Test Group from which the results are to be N/A
analysed.
Analysis Tool The tool to be used to analyse the collected statistics. Default is the VIAVI "Default" tool. "Packet
Loss" is also available.
Input Data Type The type of data to be analysed. Defaults to Test Group Results. No other
option is available.
Input Data The data to be analysed. Always the data from the previously
executed test group in the Job.
Sampling Interval The sampling interval of the collected data. Default is Five Minutes. Select from Five
Minutes, One Minute, Thirty Seconds,
Twenty Seconds, Ten Seconds, Five
Seconds, One Second.
Output Path Directory where output from the results analysis is to be N/A
placed.
Option Group Select from the drop down menu which application type N/A
and/or interface results are to be analysed. for example
to include HTTP application results, select HTTP and set
the Include Option to true. Repeat this process for each
application type and interface required. General Options
allow the output format to be chosen, currently only .pdf is
supported.
1. In the Job tab select the job for which you wish to save the results.
3. Select "Save Historical Summary Results" to bring up the Historical Summary Results List Dialog.
4. Select the date from which you wish to save the results and press Save.
Enabling-Disabling a Task
To enable/disable a Task:
1. In the Job tab select the task which you wish to enable/disable.
3. If the Task is already enabled, then select the "Disable" menu item to disable the task, otherwise select
the "Enable" menu item to enable the task.
Deleting a Task
Note
A task cannot be deleted if it is part of an active job.
To delete a Task:
1. In the Job tab select the task which you wish to delete.
Deleting a Job
Note
A job cannot be deleted if it is active.
To delete a Job:
1. In the Job tab select the Job which you wish to delete.
4. In the confirmation warning that is, displayed, click the Yes button to proceed with the deletion, or click
the No button to cancel the deletion.
Note
Deleting a Job will delete all tasks contained within.
Exporting a Task
1. In the Job tab select the Task which you wish to export.
4. Select either the "Export to XML.." or the "Export to XML as..." menu item from the sub menu
displayed.
If you selected the "Export to XML as..." menu item then enter the export name for the task in the
dialog provided and click the OK button to proceed.
5. In the Save dialog, browse to the location where you wish the exported file to be created and enter a
name for the file into which the task will be exported.
Importing a Task
1. In the Job tab select a Job under which you wish to import a particular Task.
2. Right click on the selected item.
3. Select the "Import from XML..." menu item from the menu displayed.
4. In the Open dialog, browse for the file represented the exported Task..
5. Click the OK button to proceed with the Import.
Any errors that occur during the import will be displayed in a console tab at the bottom of the TeraVM client.
Copying a Task
1. In the Job tab select a task that you wish to copy.
2. Right-click and select Copy.
3. Select the Job into which you want to copy the task.
4. Right click on the Job and select Paste. If the task already exists an appropriate error message will be
displayed.
Exporting a Job
1. In the Job tab select the Job which you wish to export.
2. Right click on the selected item.
3. Select the "Export" menu item from the menu displayed.
4. Select either the "Export to XML.." or the "Export to XML as..." menu item from the sub menu
displayed.
If you selected the "Export to XML as..." menu item then enter the export name for the job in the dialog
provided and click the OK button to proceed.
5. In the Save dialog, browse to the location where you wish the exported file to be created and enter a
name for the file into which the job will be exported.
Importing a Job
1. In the Job tab select a Folder under which you wish to import a particular Job.
2. Right click on the selected item.
3. Select the "Import from XML..." menu item from the menu displayed.
4. In the Open dialog, browse for the file represented the exported Job..
5. Click the OK button to proceed with the Import.
Any errors that occur during the import will be displayed in a console tab at the bottom of the TeraVM client.
Overview
TeraVM collects and stores a variety of test statistics. These are stored in a database and available for
viewing, saving and analysing. The purpose of analysing the test results is to provide you with an immediate
view of the impact of the test on network and application server performance during the test; for example
TCP retransmits, HTTP Server response times and so on.
The Analyse Results dialog enables you to analyse the results for the following TeraVM items:
• IP Applications
• Test Groups
8. Each service type also has a threshold field. It's use is dependent on the service type. For example, for
HTTP, it is the threshold for HTTP Server response times to client GET requests.
The following table describes the fields in the Analyse Results Dialog:
Table 13-1. Analyse Results Dialog Fields
Analysis Tool The tool used to perform the analysis. This can be Select from the drop-down. Default is
extended by modifying the XML contained in analysis.xml Default .
on the client install directory.
Input Data Type Source of the results to be analysed. Can be either Fine Results for an IP
application or detailed results for a Test
Group.
Output Path The location where the analysis results will be stored. Defaults to a results directory in the client
install directory.
Configuration Options
HTTP Configuration
Include Indicates whether or not the HTTP entry results, if any, True or False
within the results are to be included in the analysis.
Threshold The allowable threshold for HTTP Server response times. Todo
SMTP Configuration
Include Indicates whether or not the SMTP entry results, if any, True or False
within the results are to be included in the analysis.
POP3 Configuration
Include Indicates whether or not the POP3 entry results, if any, True or False
within the results are to be included in the analysis.
P2P Configuration
Include Indicates whether or not the P2P entry results, if any, True or False
within the results are to be included in the analysis.
Multicast Configuration
Include Indicates whether or not the Multicast entry results, if any, True or False
within the results are to be included in the analysis.
Latency Configuration
Include Indicates whether or not the Latency entry results, if any, True or False
within the results are to be included in the analysis.
Interfaces Configuration
Include Indicates whether or not the Interface results, if any, within True or False
the results are to be included in the analysis.
General Options
Configuration
Graphic Output Specifies a destination for the output from the analysis. PDF
Start Time Time in the results data from which analysis will begin. Must be in the form yyyy-MM-dd hh:mm:ss
Interval Count Number of time intervals in the results data, after the start Between 0 and 3600
time, which will be included in the analysis.
Other Browser Command The command used to launch a third party browser. For example, C:/Program Files/Mozilla
Firefox/firefox.exe
Configuration Controls how much test configuration info is output in the Options are:
analysis report.
• Full
Full configuration output.
• Abbreviated
A reduced configuration is output,
based on sample pages for similar
test entities. Please refer to Functional
Spec 22 Analysis Enhancements
Configuration section for more
information on how this works .
• None
Other Browser Command The command used to launch a third party browser. True or False. Default is True
Plotting Configuration
Horizontal Pixels Affects png/jpeg output only and specifies the width of Must be a valid integer.
graph images in pixels analysis.
Vertical Pixels Affects png/jpeg output only and specifies the height of Must be a valid integer.
graph images in pixels.
RemoveMissingSamples If True, unplottable values (NA, Nan, Inf, etc) are removed True or False. Default is False.
before a graph is plotted. This results in a continuous plot
without gaps. If False, there are gaps in the plot where
unplottable values occur.
FileName Configuration
Output Prefix This is prefixed to the base name of the input zipfile and Default is Default.
the result is appended as the last component of "Output
Path" to form the name of the output directory. "Default" is
interpreted as "" (no prefix).
CompanyInformation
Configuration
Name The Company Name. Appears on the PDF title page, and Default is VIAVI
in the header of HTML text pages.
URL The Company URL. Appears as a link on the PDF title Default is www.viavisolutions.com.
page.
LogoImageFile The filename of a png image which appears on the PDF Default is VIAVI logo image file
title page and in the PDF running header. The image is
scaled automatically to fit.
LogoImageFileHtml The filename of a png image which appears in the header Default is VIAVI Logo Image Html file
of HTML text pages. Must be a suitable size as the image
is not scaled for display.
Note
A single "output" directory tree is available to facilitate browsing. The output directory contains both
reports and graphical output. The category tags are used to create a multi-level subdirectory tree in
the output directory for jpeg and png output files as follows: output/<ApplicationType>/<AppName>/
<NumericSortKey>_<GraphTitle>.<Suffix> ( <Suffix> is "jpg" or "png"). Additional categories may
appear immediately after AppName. Each category tag corresponds to a subdirectory level except
NumericSortKey and GraphTitle, which are used to construct the non-directory component of the jpeg/
png file name. This output format is handled naturally by a web browser, and should be suitable for
other possible viewer applications.
The following illustration shows the General Configuration Options of the Analysis Tool.
IP Applications
When an analysis is run for an IP Application, one or more graphs are generated, highlighting key statistics
for a single client within a Test Group. An output log for the analysis is shown in a console in the client.
As part of the process, the test results used in the analysis are stored in the .csv file, whose location is
indicated in the log messages. If the output option of type Window is selected the graphs are displayed in
the Analysis Results window. Each graph is selected by clicking on the appropriate Tab. Depending on the
application selected, different graphs are displayed. For example, for a HTTP client, up to eight graphs are
created.
• A Summary graph which summarizes key statistics for the selected client
• A time view of various statistics (for example TCP Connections per second over time). A time view will
display one, two or three variables over time. Each line in the graph will be in a different colour.
• A Histogram, showing the degree of variation of the stated statistic. If the specified threshold is violated,
the graph is displayed in red, otherwise green.
• Summary
Note
For the analysis to produce meaningful graphs, it is recommended that Normal Statistics and
Response Codes are enabled.
Test Group
When an analysis is run for a Test Group, all statistics for a test group are saved and key test group
statistics are generated. The major difference between application and Test Group analysis is that, in the
latter, the details of each individual client statistic is collected and aggregated to provide an overall view of
performance of all clients. Each type of client (HTTP, Streaming, and so on.) is represented in an individual
group of plots.
An Analysis output log is generated in the console window. As part of the process, the test results used in
the analysis are stored in the .zip file, whose name and location is indicated in the log messages. Hence,
the information can be re-graphed, while the results file is available.
In general four types of graphs are created for a Test Group:
• A Time view of various statistics (for example TCP Connections per second over time). A time view will
graph one, two or three variables over time. Each statistic in the graph will be in a different colour.
• A Histogram, showing the degree of variation of a given test response statistic. If the specified threshold
is violated, the graph is displayed in red, otherwise green.
• A Three Dimensional graph of key statistics all clients performance over time.
• Summary
• Client Statistics
• TCP Connections
• Threshold Violation
Graphs are also saved as the PDF file format by selecting the PDF option in the "Output to" configuration
option. Resulting PDF files are stored in the same directory as the resulting .CSV files.
Note
It is possible the Analyse tool will run out of memory if the TeraVM Controller has limited memory. If
this occurs, reduce the number of clients in the test group and re-run analysis. It is also recommended
that Normal Statistics and Response Codes are enabled for all clients in the test group.
The following information is also displayed in the Test Group Analysis output:
1. Date.
Overview
iTest is an integrated test authoring and execution solution from Fanfare which provides an SDK to enable
3rd parties develop plugins for iTest allowing it to access and control their products.
The objective of this topic is to describe the VIAVI TeraVM plugin and not to describe the characteristics or
capabilities of iTest.
An iTest plugin is available with this release of TeraVM. It is exposed in iTest through the addition of a new
VIAVI TeraVM Session type. The plugin can be installed from the TeraVM box as follows:
• once this is configured, continue with the plugin installation as per normal
Note
A licence is required to install the iTest plugin
The screenshot below shows a sample session profile with the new VIAVI TeraVM option selected.
Session type A list of sessions available to iTest. Select TeraVM from the drop-down.
Session Name The name of the session for this set of configuration Should be a unique, meaningful name.
settings. This session name can be used in other areas of
iTest for example inheritance of session profiles.
User Name The username by which you will access (login to) the No default.
TeraVM chassis. Only tests groups created by the
specified username will be available for use within the
VIAVI TeraVM session.
Config File The location of the TeraVM Java Client property file. Default is blank.
This provides access to the file into which useful debug
information will be logged.
Include Out of Service The statistics properties control the generation of statistics Default is not ticked.
Applications via the show command within iTest. It is possible to
configure the application types for which statistics will
be displayed and also the actual statistics that will be
available for each instance of an application type. If this
checkbox is ticked, any Out of Service applications in the
test group will be included in the list of applications for
which statistics will be available.
Number of Samples to The number of statistical samples that will be shown from Default is 40.
Show each application within the test group.
Include Applications There is a checkbox for each type of application available Ticked or unticked, default is unticked.
within TeraVM. Ticking the checkbox ensures statistics
from applications of this type will be shown, if available, in
the statistical output.
Application Types A list of each type of application with the ability to indicate Identify the statistics of interest for each
the stats from these applications that will be available application type.
when the test group statistics are shown.
• Selecting Applications: TeraVM supports many different application types. These are listed and you
must select the types of applications for which statistics will be shown
• Selecting Statistics: for each application type it is necessary to select the individual statistics that will be
shown. Each application type has a default set of statistics which can be changed by you.
application. Typically green means everything is OK, red means there has been a problem starting
the application and white means the application is stopped (or was not started). When a test group is
running it is possible to access the statistics associated with the test group or a specific application
within the test group.
• Stop a test group. A running test group can be stopped. This terminates all the applications so no more
traffic is sent/received on/from the network.
• Save Normal/Fine Statistics: Save statistics of a test group/application - the statistics will be saved to a
specified location on the client machine.
• Show Normal/Fine Statistics: Show the statistics of a test group/application - the statistics (as controlled
by the session properties) will be shown in the response window of the GUI.
• Enable/Disable All Applications: Set the Admin State of all applications in a test group. If an application
has an Admin State of Disabled it will not be included in the list of applications run when the test group
is next run that is, only Enabled applications are run when a test group is run.
• Enable/Disable Application - Set Admin State of a specific application. This is only available if the test
group is not running.
• Set All Applications In/Out of Service: Set the Service State of all applications in a test group. If an
application has a Service State of Out of Service, it will not send/receive traffic when the test group is
run that is, it is opperationally down. Setting it In Service will allow all the applications to send/receive
traffic.
• Set In/Out of Service - Set the Service State of a specific application. This is only available if the test
group is not running.
• Import a test group. A TeraVM test group can be specified via XML. If a test group is specified in this
way it is possible to import it into the system and have it available for use.
iTest Commands
The real power of the plugin is via the commands available to you. It is these commands that will be used to
meet the automation and integration needs of iTest.
The following are the commands available within the VIAVI iTest plugin:
Table 14-2. TeraVM iTest Commands
importTestGroup Imports a test group defined within a destinationFolderId: folder into which the
specified file to a specified folder test group will be imported; sourceFile: the
file containing the XML too be imported
addTestGroupFolder Add a new folder at a specified location parentFolderId: the folder in which the
with a specified name test group will be created for example //
NewFolder; newName: the name
of the new test group for example
MyNewTestGroup
startTestGroup Starts the specified test group testGroupId: the name of the test
group to start for example //NewFolder/
MyNewTestGroup
stopTestGroup The name of the test group to stop. testGroupId: the name of the test group to
stop
setServiceStateOfApp Sets the service state of a specified applicationId: the application identity for
application to a specified value example //TGName/IP/AppName; state:
the state to which the application will be set
- either In Service or Out of Service
setServiceStateOfApps Sets the service state of one or more appIds: a list of one or more applications
applications to a specified value for example appIds={//TGName/IP/
AppName;//TGName/IP/App}; state: the
state to which the applications will be set -
either In Service or Out of Service
setServiceStateOfAppsMatchingNamePattern
Sets the service state of one or more testGroupId: the name of the test group;
applications, as identified by the pattern, to appNamePattern: the pattern used to
a specified value identify applications within the test group
eg. appNamePattern=Subscriber% will
match all applications starting with the
pattern Subscriber. The % character
matches everything while the _ matches
any single character; state: the state to
which the applications will be set - either In
Service or Out of Service
setServiceStateOfTestGroupApps Sets the service state of all applications testGroupId: the name of the test group;
within a specified test group to a specified state: the state to which the applications
value will be set - either In Service or Out of
Service
setAdminStateOfApp Sets the admin state of a specified applicationId: the application identity for
application to a specified value example //TGName/IP/AppName; state:
the state to which the application will be set
- either Enabled or Disabled
setAdminStateOfApps Sets the admin state of one or more appIds: a list of one or more applications
applications to a specified value for example appIds={//TGName/IP/
AppName;//TGName/IP/App}; state: the
state to which the applications will be set -
either Enabled or Disabled
setAdminStateOfAppsMatchingNamePattern
Sets the admin state of one or more testGroupId: the name of the test group;
applications, as identified by the pattern, to appNamePattern: the pattern used to
a specified value identify applications within the test group
eg. appNamePattern=Subscriber% will
match all applications starting with the
pattern Subscriber. The % character
matches everything while the _ matches
any single character; state: the state to
which the applications will be set - either
Enabled or Disabled
setAdminStateOfTestGroupApps Sets the admin state of all applications testGroupId: the name of the test group;
within a specified test group to a specified state: the state to which the applications
value will be set - either Enabled or Disabled
saveTestGroupStatistics Saves the test group statistics from a testGroupId: the name of the test group;
specified test group to a specified file targetFile: the name of the file where
the stats will be saved for example
targetFile=C:/Results.zip
saveAppStatistics Saves the statistics for a specified appId: the name of the application;
application statisticsType: the type of stats to save -
either Normal or Fine; targetFile: the name
of the file where the stats will be saved for
example targetFile=C:/Results.zip
showAppStatistics Shows an ordered view of the statistics appId: the name of the application;
from a specified application statisticsType: the type of stats to save -
either Normal or Fine
showStatisticsOfAppsMatchingNamePattern
Sows the statistics of one or more testGroupId: the name of the test group;
applications, as identified by the pattern appNamePattern: the pattern used to
identify applications within the test group
eg. appNamePattern=Subscriber% will
match all applications starting with the
pattern Subscriber. The % character
matches everything while the _ matches
any single character
Application Overview
The TeraVM Objective Based Testing UI provides a series of functions which can be accessed by clicking
the icons at the top of the UI.
• Create Objective Based Test: Green plus icon. Click to open the Create Objective Based Test dialog
to create a new objective based test.
• Save Objective Based Test: Floppy disk icon. Click to save the objective based test you created.
• Delete Objective Based Test: Bin icon. Click to delete the objective based test you created.
• View Objective Based Test Statistics: Line Graph icon. Click to reveal options: View Rate Statistics
and View Total Statistics.
• Import Objective Based Test from XML: Arrow pointing into page. Click to import test group
configuration from XML file.
• Export Objective Based Test to XML: Arrow pointing out of page. Click to export test group
configuration to XML file.
• Browse Test Groups: Ellipsis button. Click to browse to configured test groups.
• Switch to full TeraVM UI: Orange revert arrows with user icon. Click to switch to the full TeraVM UI.
To view test types, click the Create Objective Based Test icon on the top-left of the Objective Based Test
GUI:
The following table describes the fields in the Create Objective Based Test dialog:
Table 15-1. TeraVM Create Objective Based Dialog Details
Test Name A unique, meaningful name that can be used to identify Mandatory. String value between 1 and
the test. 255 characters in length.
Folder File path for a TeraVM folder containing test groups. Click '...' to add folders or Test Groups
through the Select Item dialog. In the
Select Item dialog right-click folder icon to
view additional options. See Chapter 6:
Folders and Chapter 7: Test Groups for
more details.
Objective Based Test The list of TeraVM Objective Based Tests Select one of the Objective Based vSwitch
test types and click Create to open the
configuration page for that test.
Each of the vSwitch Objective Based Tests configuration dialog windows contains three tabs:
• Test Properties: This tab is used to configure the number of port groups and whether it is manually
set or from an imported file. You also configure the ICMP settings such the packet rate and size here
and finally, the network settings, including the port group subnet allocation, the subnet address and the
subnet address increment.
• Live Test Results: This tab provides a summary of the status of the test as it is occuring. In conjunction
with the 'Historical Event Log' it can be used to identify potential problem areas in test interfaces, vNICs,
Port Groups or Switch Modules. It is also possible to export the test results from this tab.
• Historical Event Log: For tests that run for a large amount of time, the Historical Event Log tab
provides a log of interesting events that occurred while the test is executing.
The vSwitch Mesh Connectivity objective based test is used to test the connectivity between the various
interfaces assigned to any particular Port Group. The TeraVM Ping application is used for this purpose.
The following table describes the fields in the Test Properties tab of the objective based test vSwitch Mesh
Connectivity:
Table 15-2. vSwitch Mesh Connectivity Test Properties Tab Details
Configuration Mode - Port Allows you to choose between configuring the port groups Two options in combo box drop-down:
Groups manually, or via an imported file. Manual and Imported from a File. If
Manual, Gear cog icon is visible. Clicking
it reveals the Port Group Settings dialog.
Enter Enum values for VLAN Tag (0 <=
value <= 4095), VLAN Tag increment (0
<= value <= 4095), QoS (0 <= value <=
255 - default 1), QoS increment (0 <= value
<= 255 - default 1), and MTU size (value
range between 576 to 9216 for IPv4 and
between 1280 to 9216 for IPv6 - Default:
1500). If Imported from a File is selected,
an Import browse button appears beside
Number of Port Groups The number of port groups that you need for the test. Type: Integer Applicability: Mandatory
if Configuration Mode = 'Manual'. Value
range accepted between 1 and 256.
Default: 1.
ICMP Setting - Packet Number of PING packets per second to be sent Integer. Mandatory. Value range from 0 to
Rate 100. Default: 10
ICMP Settings - Packet Size of a PING packet in bytes Integer. Optional. Click Gear icon to open
Size Advanced dialog window.
Port Groups Subnet Indicates whether a separate subnet will be used per port Mandatory. Choose between 'Shared
Allocation group, or all port groups will share the same subnet. Subnet' or 'Subnet per Port Group' Default:
Subnet per Group.
Subnet Address IP address of the first subnet to be used in the test IP Address. Mandatory. Default:
10.1.0.0/16
Subnet Address Increment size for iterating the subnets. Integer. Mandatory. Value range between 0
Increment and 1000000. Default: 1
The vSwitch Multicast objective based test is used to test Multicast traffic flows correctly between clients
and servers operating over the various interfaces assigned to any particular Port Group. The TeraVM IGMP
(IPv4) and MLD(IPv6) applications are used for this purpose.
The following table describes the fields in the Test Properties tab of the objective based test vSwitch Mesh
Connectivity:
Table 15-3. vSwitch Multicast Test Properties Tab Details
Configuration Mode - Port Allows you to choose between configuring the port groups Two options in combo box drop-down:
Groups manually, or via an imported file. Manual and Imported from a File. If
Manual, Gear cog icon is visible. Clicking
it reveals the Port Group Settings dialog.
Enter Enum values for VLAN Tag (0 <=
value <= 4095), VLAN Tag increment (0
Number of Port Groups The number of port groups that you need for the test. Type: Integer Applicability: Mandatory
if Configuration Mode = 'Manual'. Value
range accepted between 1 and 256.
Default: 1.
Client to Server Indicates how to distribute clients and servers amongst Enum. Mandatory. Options available in
Distribution test interfaces within a single port group. Also defines drop-down combo box: 'One to One' or
how clients are joining multicast groups: 'One to One' or 'Many to One - Single Group for clients' or
'Many to One - Single Group for clients' or Many to One - 'Many to One - separate Group per client'
separate Group per client. Default: One to One.
Multicast Traffic Type Option to select either IGMP or MLD multicast traffic types Enum. Drop-down combo box options:
IGMP or MLD. Mandatory. Default: IGMP.
IGMP/MLD Version IGMP or MLD protocol version to be used. Enum Applicability: Mandatory. If IP
addressing used is IPv4 (Multicast Traffic
Type = IGMP) drop-down options are:
IGMPv1 or IGMPv2 or IMGPv3. Default:
IGMPv2. If IP addressing used is IPv6
(Multicast Traffic Type = MLD) drop-down
options are: MLDv1 or MLDv2. Default:
MLDv1.
Multicast Group Address IP address of the first subnet to be used in the test IP Address. Mandatory. Default:
10.1.0.0/16
Multicast Group Address Increment size for iterating the subnets. Integer. Mandatory. Value range between 0
Increment and 1000000. Default: 1
Port Groups Subnet This property indicates whether a separate subnet will be Enum. Mandatory. Provides two options in
Allocation used per port group, or all port groups will share the same combo-box drop-down: 'Shared Subnet' or
subnet. 'Subnet per Port Group'. Default: Subnet
per Port Group
Subnet Address IP address of the first subnet to be used in the test IPAddress. Mandatory. Default: 10.1.0.0/16
for IGMP and fda6:22a1:da4e:0001::/64 for
MLD
Subnet Address Increment Increment size for iterating the subnets. Integer. Mandatory. Value range 0 to
1000000. Default: 1.
The Advanced Multicast Settings dialog, which appears once click the Gear icon in the Mutisettings section
of the vSwitch Multicast Test has two tabs: Join/Leave which allows you to set the Join/Leave policy for the
clients and Data Rate provides you with control over the server's data rate. The following table describes the
fields in the Join/Leave tab:
Table 15-4. Advanced Multicast Settings: Join/Leave Tab Details
Join/Leave Policy Client's policy to join and leave multicast groups. Enum. Mandatory. Drop-down combo box
options: 'Join and Stay' or 'Join and Leave'
or 'Join and Leave Af-ter Duration'. Default:
Join and Stay.
Duration of Join Indicates for how long client should join a multicast group. Integer. Optional Metric Options:
'Millisecond' or 'Second' or 'Minute' or
'Hour'. If drop-down combo box metric
is Millisecond (ms) then value range is
between 1 and 86400000. If metric is
Second then its between 1 and 86400.
If metric is Hour then between 1 and 24.
Default: 980 Enabled only if Join/Leave
Policy is equal to 'Join and Leave After
Duration'.
Delay before Rejoin Delay after which client will rejoin the multicast group. Integer. Optional. Metric Options:
'Millisecond' or 'Second' or 'Minute' or
'Hour'. If drop-down combo box metric
is Millisecond (ms) then value range is
between 1 and 86400000. If metric is
Second then its between 1 and 86400.
If metric is Hour then between 1 and 24.
Default: 20. Enabled only if Join/Leave
Policy is different than 'Join and Stay'.
The following table describes the fields in the Data Rate tab:
Table 15-5. Advanced Multicast Settings: Data Rate Tab Details
Data Rate Data rate of multicast server Integer. Mandator. If selected metric is Pkt/
s then the allowed range is between 0 and
200000. If metric is Mbits/s then allowed
range is between 1 and 100. If metric is
Kbits/s then allowed range is between 1
and 100000. Default: 1
The vSwitch Throughput objective based test is used to inject a specified throughput of traffic into the
vSwitch over the various interfaces assigned to any particular Port Group and to verify that the traffic flows
as expected. The TeraFlow and HTTP applications will be utilised for this purpose.
The user will have the control over the Traffic Type generated by the test and can choose between
TeraFlow UDP, TeraFlow TCP and HTTP traffic types. The user will also have the ability to indicate a target
Throughput for one of the following:
• Each individual Test Interface, regardless of which Port Group it belongs to.
The following table describes the fields in the vSwitch Throughput Test:
Configuration Mode - Port Allows you to choose between configuring the port groups Two options in combo box drop-down:
Groups manually, or via an imported file. Manual and Imported from a File. If
Manual, Gear cog icon is visible. Clicking
it reveals the Port Group Settings dialog.
Enter Enum values for VLAN Tag (0 <=
value <= 4095), VLAN Tag increment (0
<= value <= 4095), QoS (0 <= value <=
255 - default 1), QoS increment (0 <= value
<= 255 - default 1), and MTU size (value
range between 576 to 9216 for IPv4 and
between 1280 to 9216 for IPv6 - Default:
1500). If Imported from a File is selected,
an Import browse button appears beside
the Configuration Mode field. Default:
Manual.
Number of Port Groups The number of port groups that you need for the test. Type: Integer Applicability: Mandatory
if Configuration Mode = 'Manual'. Value
range accepted between 1 and 256.
Default: 1.
Client to Server Indicates how to distribute clients and servers amongst Enum. Mandatory. Drop-down combo box
Cardinality test interfaces within a single port group. options: 'One to One' or 'Many to One'.
Default: One to One
Traffic Type Type of traffic to be generated by the test entities. Enum. Mandatory. Drop-down combo box
options: 'TeraFlow UDP' or 'TeraFlow TCP'
or 'HTTP'. Default: TeraFlow TCP.
Throughput Objective Indicates for which target the throughput rate is defined. Enum. Mandatory. Drop-down combo
box options: 'Throughput Per Test' or
'Throughput Per Port'. Default: 'Throughput
Per Port'.
Target Throughput Target Throughput to be generated by the test entities. Integer. Mandatory. Value must be greater
than 0. Default: 1. Metric options:'kbit/s' or
'Mbit/s'.
Subnet Address IP address of the first subnet to be used in the test IP Address. Mandatory. Default:
10.1.0.0/16
Subnet Address Increment Increment size for iterating the subnets. Integer. Mandatory. Value range between 0
and 1000000. Default: 1
The OBT vSwitch Live Test Results tab is designed as a snapshot to reflect the current state of the test.
It helps you identify the vNICs, Switch Modules and Port Groups where problems could be occurring .
The statistical content of the Live Test Results tab is based on normal statistical data, and is refreshed
in 30 second intervals. In the tab the user can display the data in either a flat list view or in a hierarchical
tree view. The tree view allows the user to organise the Live Results tab by associated Test Module, by
associated Switch Module and by associated Port Group. The user can also hide/show columns and sort by
column. To export the data, click the Export button to the right of the Live Test Results tab.
The following colour code highlights the test interfaces where there is:
• No Connectivity (red colour): shown when no packets are received via port ("In Packets/s" = 0).
• Intermittent Connectivity (amber colour): shown when there is connectivity on the port, but some
packets are dropped. Dropped packets stats is not provided by all applications.
• No Loss (green colour): shown when there is full connectivity via port, and no packets are dropped.
• Not Active in Test (grey colour): shown when Test Interface's Test Module was not reachable at the
time of test starting, or when no test entity is configured on the Test Interfaces.
The following table describes the table fields in the Live Test Results tab:
Field Description
Application Role Indicates the role that the Application utilising the Test Interface places. Allowed values
include: Cli-ent, Server or N/A.
Associated Switch Module Identifier of the associated Switch Module (if available).
Associated Port Group Identifier of the associated Port Group (if available).
Associated Port Group VLAN Identifier of the associated Port Group VLAN (if available).
Out Packet Rate Packet Rate for outbound packets from the interface.
Outbound Throughput Aggregate Throughput of all application traffic outbound from the interface.
Inbound Throughput Aggregate Throughput of all application traffic in-bound to the interface.
% Packet Loss Percentage Packet Loss for the interface. Only applicable for TeraFlow and Ping and
Multicast Client Applications.
Latency Packet Latency for the interface. Only applicable for TeraFlow UDP Applications. "Mean
One Way Latency CR ms" stats are used.
Jitter Jitter for the interface. Only applicable for Tera-Flow Applications. "One Way Jitter CR"
stat are used.
Retransmission Count Total Retransmission Count for the interface. Only applicable for TCP Applications (that
is, TeraFlow and HTTP apps).
Download Time Download Time for the interface. Only applicable for HTTP Client Applications ("Mean
Get Time ms" are used).
The OBT vSwitch Historical Log tab provides a log of interesting events that occurred while the test is
executing. This tab, in conjunction with the 'Live Test Results' view helps the user identify any potential
problem areas.
• Intermittent Connectivity
• No Connectivity
• Throughput Fall Off (available only for the vSwitch Throughput Test)
The user can enable all, a mix of, or none of, the above event types. Users can specify tolerance levels for
High CPU Load and Throughout Fall Off events. An event, when logged, will identify the target test interface/
vNIC/Port Group and Switch Module. High CPU Load events identify the target card.
• Date/Time
• Test Interface
• vNIC
• Switch Module
• Port Group
The Card events view can also be filtered by:
• Date/Time
• Event Type)
• Card
The same show/hide, sorting and filtering functionality as for the Live Test Results tab is also available in
the Live Test Results tab. In addition the user can enable/disable the type of events that can be logged by
clicking on the gear button located above each table.
1. Find and copy the complete path location where Wireshark is installed.
For example:
C:\Program Files\Wireshark
3. Select the “Path” option under the “System Variables” and select Edit.
4. Go to the end of the line in the Variable Value field and add a semicolon to separate the previous entry
and paste the complete path for Wireshark that you copied earlier.
For example:
“; C:\Program Files\Wireshark”
When using Cipher Suites the server must be configured in such a way that it supports the cipher suite
offered by the client. If the TeraVM HTTP server is used, all encryption and authentication algorithms are
supported.
Prerequisite
• You must use the OpenSSL name of the cipher suite or cipher suite list in the Global Settings.
Examples on how to use the OpenSSL for cipher suite lists follow; for more information on using
OpenSSL names, see the OpenSSL.org website.
• Example: Include only AES256 ciphers and then place RSA ciphers last:
• Example: Include all RC4 ciphers but leave out those without authentication
1. Login into your TeraVM Controller and select Utilities > Global Settings.
2. From the drop-down box select where you want to set your Global Settings and click Configure.
4. Enter the details of the cipher suite or cipher suite list you want to use in the Cipher Suites [See
"OpenSSL Ciphers" for options and format]. See this procedures prerequisites and the Supported
Cipher Suits table Section B.2 for more information.
5. Enter the details for CA certificates. All certificates generated by TeraVM use RSA.
• If you are adding a Cipher Suit to an HTTP Application, see Chapter 8, Section 8.2.2.
• If you are adding a Cipher Suite to any other Application other than HTTP, using the Global Settings
method in this Appendix.
Note: the following algorithms are not currently functional in TeraVM: ADH, SRP, PSK, DSS.
Table B-1. Supported Cipher Suits
ECDHE-RSA-AES256-GCM-SHA384 TLSv1.2
ECDHE-ECDSA-AES256-GCM-SHA384 TLSv1.2
DHE-RSA-AES256-GCM-SHA384 TLSv1.2
ECDHE-ECDSA-CHACHA20-POLY1305 TLSv1.2
ECDHE-RSA-CHACHA20-POLY1305 TLSv1.2
DHE-RSA-CHACHA20-POLY1305 TLSv1.2
ECDHE-ECDSA-AES256-CCM8 TLSv1.2
ECDHE-ECDSA-AES256-CCM TLSv1.2
DHE-RSA-AES256-CCM8 TLSv1.2
DHE-RSA-AES256-CCM TLSv1.2
ADH-AES256-GCM-SHA384 TLSv1.2
ECDHE-ECDSA-AES128-GCM TLSv1.2
ECDHE-RSA-AES128-GCM-SHA256 TLSv1.2
ECDHE-ECDSA-AES128-CCM8 TLS1.2
DHE-RSA-AES128-GCM-SHA256 TLSv1.2
ECDHE-ECDSA-AES128-CCM8 TLSv1.2
ECDHE-ECDSA-AES128-CCM TLSv1.2
ECDHE-ECDSA-AES256-SHA384 TLSv1.2
ECDHE-RSA-AES256-SHA384 TLv1.2
DHE-RSA-AES128-CCM TLSv1.2
DHE-RSA-AES128-SHA256 TLSv1.2
ECDHE-ECDSA-CAMELLIA128-SHA256 TLSv1.2
ADH-AES128-GCM-SHA256 TLSv1.2
ADH-CAMELLIA256-SHA256 TLSv1.2
ECDHE-ECDSA-AES256-SHA TLSv1.2
ECDHE-ECDSA-AES128-SHA256 TLSv1.2
ECDHE-RSA-AES128-SHA256 TLSv1.2
DHE-RSA-AES256-SHA256 TLSv1.2
ECDHE-ECDSA-CAMELLIA256-SHA384 TLSv1.2
ECDHE-RSA-CAMELLIA256-SHA384 TLSv1.2
DHE-RSA-CAMELLIA256-SHA256 TLSv1.2
ADH-AES256-SHA256 TLSv1.2
ADH-CAMELLIA256 TLSv1.2
DHE-RSA-AES128-SHA256 TLSv1.2
ECDHE-ECDSA-CAMELLIA128 TLSv1.2
ECDHE-RSA-CAMELLIA128-SHA256 TLSv1.2
DHE-RSA-CAMELLIA128-SHA256 TLSv1.2
ADH-AES128-SHA256 TLSv1.2
ADH-CAMELLIA128-SHA256 TLSv1.2
ECDHE-ECDSA-AES256-SHA TLSv1.0
ECDHE-RSA-AES256-SHA TLSv1.0
DHE-RSA-AES256-SHA SSLv3
DHE-RSA-CAMELLIA256-SHA SSLv3
AECDH-AES256-SHA TLSv1.0
ADH-AES256-SHA SSLv3
ADH-CAMELLIA256-SHA SSLv3
ECDHE-ECDSA-AES128-SHA TLSv1.0
ECDHE-RSA-AES128-SHA TLSv1.0
DHE-RSA-AES128-SHA SSLv3
DHE-RSA-SEED-SHA SSLv3
DHE-RSA-CAMELLIA128-SHA SSLv3
AECDH-AES128-SHA TLSv1.0
ADH-AES128-SHA SSLv3
ADH-SEED-SHA SSLv3
ADH-CAMELLIA128-SHA SSLv3
ECDHE-ECDSA-RC4-SHA TLSv1.0
ECDHE-RSA-RC4-SHA TLSv1.0
AECDH-RC4-SHA TLSv1.0
ADH-RC4-MD5 SSLv3
ECDHE-RSA-DES-CBC3-SHA TLSv1.0
DHE-RSA-DES-CBC3-SHA SSLv3
AECDH-DES-CBC3-SHA TLSv1.0
ADH-DES-CBC3-SHA SSLv3
AES256-GCM-SHA384 TSLv1.0
AES256-CCM8 TLSv1.2
AES256-CCM TLSv1.2
AES128-GCM-SHA256 TLSv1.2
AES128-CCM8 TLSv1.2
AES128-CCM TLSv1.2
AES256-SHA256 TLSv1.2
CAMELLIA256-SHA256 TLSv1.2
AES128-SHA256 TLSv1.2
CAMELLIA128-SHA256 TLSv1.2
SRP-RSA-AES-256-CBC-SHA SSLv3
SRP-AES-256-CBC-SHA SSLv3
AES256-SHA SSLv3
CAMELLIA256-SHA SSLv3
SRP-RSA-AES-128-CBC-SHA SSLv3
SRP-AES-128-CBC-SHA SSLv3
AES128-SHA SSLv3
SEED-SHA SSLv3
CAMELLIA128-SHA SSLv3
RC4-SHA SSLv3
RC4-MD5 SSLv3
SRP-RSA-3DES-EDE-CBC-SHA SSLv3
SRP-3DES-EDE-CBC-SHA SSLv3
DES-CBC3-SHA SSLv3
ECDHE-ECDSA-NULL-SHA TLSv1.0
ECDHE-RSA-NULL-SHA TLSv1.0
AECDH-NULL-SHA TLSv1.0
NULL-SHA256 TLSv1.2
NULL-SHA SSLv3
NULL-MD5 SSLv3