PocketOptimizer AdminManual 1.1.1.32

67
PocketOptimizer Software for Quality Analysis in Mobile Radio Networks User's Manual Version 1.1.1.32 for Windows Mobile and Windows-32, 26.Jan.2011 Copyright © 2005-2011 by Ingo Zettl, [email protected]

description

manual for PO

Transcript of PocketOptimizer AdminManual 1.1.1.32

Page 1: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer

Software

for

Quality Analysis in Mobile Radio Networks

User's Manual

Version 1.1.1.32 for Windows Mobile and Windows-32, 26.Jan.2011

Copyright © 2005-2011 by Ingo Zettl, [email protected]

Page 2: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 1 Introduction

Introduction This manual tries to give an introduction to the functionality and the features of the

PocketOptimizer software. You should read this manual carefully if you are not familiar with the tool. If you’re already comfortable with the functionalities and the workflows, you might need the

technical documentation in chapters 4 and 5.

1.1 What is PocketOptimizer PocketOptimizer is a high performance, easy to use software measurement system for quality analysis in packet switched mobile radio networks.

Important features of PocketOptimizer: • PocketOptimizer is available for Win32 and Pocket PC platforms.

o PocketOptimizer on Win32 platforms (Windows 2k/XP/03/Vista) comprises an industry

standard measurement system with extensive computing power for high performance measurements.

o PocketOptimizer on Pocket PC platforms provides a smart measurement system with fast cold boot time and without interfering software such as automatic upgrades, firewalls or

anti virus software for high precision measurements.

• Support for the most important TCP/IP application protocols such as HTTP, FTP, ICMP. In addition, support for real time UDP stream analysis is provided in conjunction with a suitable traffic generator (such as the NDFA server).

• Detailed real time measurements and real time statistics provide extensive performance information.

• A large number of user parameters allow simulation of almost every test case. • Interactive measurements for user defined quality analysis and execution of pre-defined jobs for long term performance monitoring.

• Integrated RAS support to manage establishment and shutdown of dial up network connections.

• Automatic calculation of standard KPIs and integrated reporting via industry standards such as HTTP and XML. The XML tickets are compatible with the QTS system and can directly be stored

in a database with this system.

• Synchronization of configuration files from a user defined standard HTTP server. • Integrated support of NMEA GPS receivers for drive test measurements. • Automatic lookup of test point coordinates from GPS coordinates if required. • Command line interface for semi-automated or unattended operation. • Automatic determination of mobile status such as cell id, signal level, operator…

1.2 Field of application Main field of application is interactive performance analysis in mobile packet switched radio networks. Important key performance indicators such as round trip time and throughput for

different protocols can be tested and interactively analyzed.

Chapter

1

Page 3: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 2 Introduction

1.3 Revision History v1.1.1.32 - 26.Jan.2011

• support for soft stop in parallel tasks (parameter Soft-Stop: true) v1.1.1.31 - 05.Nov.2010

• new metric m.5022: socket connect time • bugfix in HTTP UL metrics v1.1.1.29 - 16.Sep.2010

• support for Windows Vista and 7 improved

v1.1.1.27 - 09.Jul.2010

• support for Huawei NDIS API (prefix HwNd) • new parameters RAS-APN and RAS-DefAPN • support for HTTP POST • support for parallel tasks • new metric m.5021: DNS lookup time v1.1.1.26 - 02.Feb.2010

• workarounds for new TShark bugs in Wireshark 1.2.6 package

v1.1.1.25 - 23.Jan.2010

• registration check in AT command handler changed to require stable reg. for some seconds v1.1.1.24 - 07.Jan.2010

• improvement in network registration handling for some older mobiles v1.1.1.23 - 20.Dec.2009

• additional HTTP error information (number of bytes) v1.1.1.18 - 11.Dec.2009

• support for modem and RAS connections v1.1.1.5 .. 1.1.1.17

• PO/LE test versions v1.1.1.3 - 26.Apr.2009

• support for peak throughput v1.1.1.2 - 20.Apr.2009

• bugfix in ICMP measurement: unhandled exception if no ICMP message received v1.1.1.0 - 18.Apr.2009

• improvements in registration mechanism v1.1.0.4 - 31.Mar.2009

• various improvements in metrics • support for metric remapping and extension output v1.1.0.3 - 18.Mar.2009

• added version info to tickets and /forcereg, /checkreg output v1.1.0.2 - 11.Mar.2009

• bugfix in ICMP measurement: unhandled exception if no ICMP packet received v1.1.0.1 - 08.Mar.2009

• added /nousermetrics argument v1.1.0.0 - 22.Feb.2009

• support for registration server • job file extension changed to .po-job to distinguish from MS scheduler jobs • PocketOptimizer for .Net 2.0 available • support for partial ticket files (XML tickets are written to file system after every task) • new XML ticket fields exec_id, task_id, mf_id • informational metrics changed from 100 to 300 • ICMP metrics changed from 1000 to 2000 • UDP metrics changed from 2000 to 2100 v1.0.7.0 - 21.Aug.2008

• added sniffer support for WM6

• changed useTShark to useAnalyzer parameter • added extended log files for every scenario ID • master log file is created even if /masterlog argument is not specified v1.0.6.0 - 26.Jun.2008

• new text metric 128: systype (UMTS/GSM…) • support for RIL (Radio Interface Layer) on Windows Mobile to query mobile parameters

Page 4: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 3 Introduction

v1.0.5.2 - 24.Jun.2008

• new text metric 127: sysinfo (output of AT^SYSINFO command) • improved HTTP href parsing • removed unit 'dBm' from signal level (text metric 123) v1.0.5.1 - 28.May.2008

• added host name in HTTP GET • added common metrics for RAS connections • fixed byte counters in sniffer analysis v1.0.5.0 - 02.Apr.2008

• changed delays from sec to ms in front end • changed device ID for Windows Mobile 6

v1.0.4.0 - 20.Jan.2008

• bugfix: cmd_autoclose didn't work v1.0.3.0 - 14.Nov.2007

• Sniffer support for Win32: Microsoft's NetCap is supported to record the traffic during

measurements

• decoder support for Win32: TShark.exe is supported to decode netcap/ethereal capture file

during measurements

• new KPIs for TCP sessions: an integrated TCP stream analyzer decodes the capture files and calculates important performance indicators

• reporting/synchronization has been moved to a separate window v1.0.2.4 - 14.Oct.2007

• additional garbage collections during measurement v1.0.2.3 - 03.Oct.2007

• added parameter Report-Oldfiles to global job section to transmit pending reports v1.0.2.2 - 25.Sep.2007

• added parameter Ras-Wait to RAS section (additional delay before RAS)

• added command line arguments for Win32 edition

v1.0.2.1 - 16.Sept.2007 • added periodic garbage collection during ICMP measurements to prevent resource outage due to problems in .NET framework 1.1

v1.0.2.0 - 05.Sept.2007

• added unit information to XML tickets • changed UDP throuput KPI in XML tickets from byte/s to bit/s • added exclusion of packets from ICMP statistics (parameter Ping-DontAverage) • added 10 sec throughput average for HTTP and FTP and RTT average for ICMP in real time status

• added minimum RTT for FTP measurements to log files • changed FTP result user-data-rate to session-data-rate in log files • added FTP measurement timeout (parameter Ftp-Meas-To) • added mobile status information to log files and XML tickets (Win32 only)

• better loop information during job execution • improvements in timeout handling for serial connections v1.0.1.3 - 29.Oct.2006

• Increased timeout from FTP '226 Transfer complete' until sending ABOR to 10 seconds • added new text metrics 104 (IP address) and 105 (job measurement time) • fixed job issue: global parameter Pause was not used up to v1.0.1.2 v1.0.1.2 - 12.Oct.2006

• Modifications in GPS support for Pocket PC • fixed RAS connection issues: don't force RAS disconnection for successive iterations v1.0.1.0 - 4.Oct.2006

• added GPS support • changed reporting of RAS parameters and added new text metrics v1.0.0.8 - 13.June.2006

• changed UDP measurement algorithm • changed FTP thread start to fix asynchronous received issues v1.0.0.7 - 5.May.2006

• improvements in algorithms and log files for UDP measurement • added socket buffer of 512 kB for UDP measurements • fixed access violations in UDP measurement timer routine

Page 5: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 4 Introduction

v1.0.0.6 - 4.May.2006

• close HTTP sockets with keep-alive v1.0.0.5 - 2.May.2006

• support for HTTP connection keep-alive v1.0.0.4 - 10.Apr.2006

• fixed FTP roundtrip time calculation • added follow http image checkbox and Http-Follow parameter v1.0.0.3 - 26.Feb.2006

• changed KPI523 from byte/s to bit/s • occasional access violations in RAS setup fixed v1.0.0.2 - 26.Nov.2005

• Mobilkom Austria maintenance release • support for Pocket PCs without unique id • some minor fixes and improvements v1.0.0.0 - 21.Nov.2005

• Mobilkom Austria final release v0.0.3.0 - 18.Nov.2005

• Mobilkom Austria final acceptance pre-release v0.0.2.8 - 14.Nov.2005

• Mobilkom Austria pre-release

1.4 Known limitations • PocketOptimizer Win32 edition does not work with Kerio Personal Firewall with gateway mode

enabled. There seems to be a problem with the .Net framework and KPF, please deactivate

gateway mode when running PocketOptimizer.

1.5 This manual This manual covers all important aspects of PocketOptimizer.

User’s manual

• Chapter 2 describes the installation and configuration • Chapter 3 contains the operation manual

Administrator’s manual • Chapter 4 contains the administration manual • Chapter 5 contains the technical reference

Page 6: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 5 Installation

Installation This chapter covers the installation of PocketOptimizer on Windows Mobile and Windows 32

platforms.

2.1 System requirements

2.1.1 System requirements for PocketOptimizer Mobil e Edition

• Pocket PC with ARM processor or compatible • min. 128 MB RAM • min. 64 MB flash memory to store log files • Windows Pocket PC 2002 or Mobile 2003 (including 2003 SE)

• .Net Framework 1.1 or .Net Framework 2.0 (depending on PocketOptimizer Version) • fully functional RAS configuration

2.1.2 System requirements for PocketOptimizer Win32 Edition

• Industry compatible personal computer (minimum requirements depending on your operating system)

• min. 512 MB RAM • sufficient hard disk space to store log files (100 MB recommended) • Windows 2000 (SP4), XP (SP1 or SP2), Windows 2003 or Vista

• .Net Framework 1.1 • fully functional RAS configuration

2.2 Removing previous installations It is not required to remove existing versions of PocketOptimizer prior to the installation of a new version. Nevertheless it is possible to remove the software, the uninstall routine will only remove

program and helper files, the log and configuration files will not be touched. Thus you will not loose your configuration data when uninstalling PocketOptimizer.

2.2.1 Removing PocketOptimizer Mobile Edition

The procedure described in this section will be suitable for most versions of Microsoft Windows Mobile though there may be slight variations.

How to remove PocketOptimizer Mobile Edition • Open Windows Settings. You will find it in the Windows Mobile Start Menu/Settings. • Navigate to the sheet System and open Remove Programs. • Select the item PocketOptimizer and press the Button Remove. • PocketOptimizer will be removed from your system.

Please consult the documentation for Microsoft Windows Mobile Edition if you require more

detailed information.

Chapter

2

Page 7: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 6 Installation

2.2.2 Removing PocketOptimizer Win32 Edition

The procedure described in this section will be suitable for most versions of Microsoft Windows

though there may be slight variations.

How to remove PocketOptimizer Win32 Edition • Open the Windows Control Panel. You will find it in the Windows Start Menu. • Open the Control Panel Application Software. • Select the Item PocketOptimizer and press the Button Add/Remove. • PocketOptimizer will be removed from your system.

Please consult the documentation for Microsoft Windows if you require more detailed information.

2.3 Installing PocketOptimizer PocketOptimizer is delivered as a .Net setup package (PocketOptimizer-PPC-ARM-x.x.x.x.cab) for

Windows Mobile Editions and as a solid setup program (PocketOptimizer-Win32-Setup-x.x.x.x.exe) for Windows 32-bit. All you need to do is to run this setup file to start the installation and let the

installation process guide you through setup.

2.3.1 Installing PocketOptimizer Mobile Edition

PocketOptimizer Mobile Edition is delivered as a .Net setup package contained in a native Win32

setup program. The Package includes all required files and scripting information where the files are

to be installed.

How to install PocketOptimizer Mobile Edition with ActiveSync Application Manager The easiest way to install PocketOptimizer is to use the setup application and let it run the CE application manager.

• Run PocketOptimizer-PPC-ARM-x.x.x.x.exe to start setup. • When prompted to, select Install … with the CE Application Manager. • You should use the standard directory (one of application manager's sub directories). • When prompted by the application manager, answer yes to start setup. • Wait until setup has finished and follow the instructions.

How to install PocketOptimizer Mobile Edition manua lly Alternatively it is possible to use the .cab file to install PocketOptimizer.

• Run PocketOptimizer-PPC-ARM-x.x.x.x.exe to start setup. • When prompted to, select Extract the .cab file for manual installation. • Use any directory you like to extract the .cab file.

• Copy the setup package (PocketOptimizer-PPC-ARM-x.x.x.x.cab) to any location on your Pocket PC.

• Open the Windows File Explorer or any other file manager and locate the .cab file. • Click on the .cab file to start setup. • When prompted, answer yes to start setup. • Wait until setup has finished and follow the instructions.

PocketOptimizer will be installed to the application directory, the location will usually be something like \Program files\PocketOptimizer.

2.3.2 Installing PocketOptimizer Win32 Edition

PocketOptimizer Win32 Edition is delivered as a solid setup program.

How to install PocketOptimizer Win32 Edition • Run PocketOptimizer-Win32-Setup-x.x.x.x.exe to start setup.

• Select the desired destination path for PocketOptimizer and let setup do the installation. • Use the PocketOptimizer icon in the start menu to start the application.

If you do not change the default target directory, the installation directory will be something like

C:\Program files\PocketOptimizer.

Page 8: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 7 Installation

2.3.3 Additional Installation information

• Usually no configuration file will exist in the destination directory, please run PocketOptimizer at least once to create the configuration files before editing them (see section 2.5 for details).

• Using the setup package is the most convenient way to install PocketOptimizer, alternatively it is possible to copy the entire installation directory from another machine. PocketOptimizer will then be fully functional, but some additional features (start menu entry and help file

registration) will be missing.

2.4 Registering PocketOptimizer It is required to register PocketOptimizer for your machine prior to using it. Registration is required to ensure all instances of PocketOptimizer are assigned unique Agent-Ids and to prevent license

misuse.

Different registration schemes are possible depending on the licensed package:

• For non-branded licenses, a license request as to be submitted to the software vendor. You will then be provided the registration data to unlock PocketOptimizer.

• For branded licenses, a special license utility is available for your license administrator. This utility can be used to create the unlock key. Please refer to section 4.1 in the Administrator’s

manual for detailed information.

Registration basics • PocketOptimizer automatically calculates a Machine Id from your machine’s unique data. • This Machine Id has to be submitted to your license server or administrator. • The sales representative or license administrator will assign an Agent Id and generate the Unlocking Code for your combination of Machine Id and Agent Id.

• After entering Agent-Id and Unlocking Code your copy of PocketOptimizer is functional.

2.4.1 Getting the Machine Id

The Machine Id will automatically be calculated by PocketOptimizer every time it is executed. It is derived form your machine’s internal data and is unique for every machine. The Machine-Id can be viewed any time by opening the Registration tab in the main window.

You have to pass the Machine Id either to a license server or to your license administrator. Please

refer to the next chapters for details.

2.4.2 Automatic registration with license server

Hit the button Register... in the main window to open the registration window.

Page 9: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 8 Installation

Entering user information and submitting a license request

To submit or create a registration request, use the function Send a registration request and click Proceed.

Enter your company name and address, user name and e-mail address. An information e-mail will be sent to this address when the registration server's database has been updated to provide you with unlocking data.

Click Proceed to move to the request sheet. This sheet provides some additional input fields that might or might not be applicable for you:

• License: Select Purchased or Evaluation of you have already purchased a license or are requesting an evaluation license.

• Request: This field influences how the registration server will process your request: o Extend active registration ... This is the default value. If an unlock item is existing in the license server's database, you will immediately provided with the unlocking data. Otherwise

the data is forwarded to a sales representative or license administrator. o Manually check my request ... In this case the server does not provide you with unlocking data automatically, instead your request is always forwarded to sales representative or license administrator. Use this function if you changed input fields or need a different

license type.

o Unlock code does not work ... This case is similar to the previous one, but the request is forwarded to our support team.

• Vendor: Enter your vendor code if you purchased the software from a reseller. Otherwise leave the field empty.

• Offer No: Enter your software vendor's offer number if you have received different offers with different software features. Leave the field empty if you only have one offer or are requesting

an evaluation license. • Agent Id: If you want to use a special agent id (e.g. if you want to re-use an Id), enter it here. • Agent Pool: If your company uses different pools of agent Ids (e.g. for different departments), you can enter the required pool name here.

• Message: Use this field to provide a message to your sales representative or license administrator.

Please ensure your machine is connected to the internet and use the button Send requ. to submit the request to the license server. If an existing unlock item is found in the database, you will immediately provided with the unlock data, otherwise you will be informed that the request will be

processed. Usually the unlock information should be available within 15..30 minutes. If required

close PocketOptimizer while waiting for the unlock data, your input will be saved for further use.

If it is not possible to send the data directly, use the button Save... to save the license request to a file and send this file to your sales representative or license administrator via e-mail.

Fetching the unlock data You will be sent an e-mail when your registration has been processed.

To fetch the license data from the server, simply submit the license request again without changing any information on the Licensee sheet. Please ensure that you use the request Extend active registration, otherwise the server will not provide the unlock data.

Page 10: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 9 Installation

If unlock data is available on the server, the unlocking data is automatically inserted into the input fields.

Check the option I accept the license terms if you agree to the license terms and use the button Register to save the registration information.

2.4.3 Manual registration with license server

If automatic submission to a license server is not possible, follow the steps as described in the

previous chapter to enter the required information.

Use the button Save... to save the request into a file and submit this file to your sales representative or license administrator.

You will be provided the unlock data via an e-mail, please save the unlock data into a file and use the button Load... on the Registration sheet to load the file. After accepting the license terms, you will be able to register the application.

2.4.4 Manual registration with license utility (bra nded versions only)

This registration procedure is only available with branded versions that are associated with a customer and thus do not require the extended unlock information.

Please note that manual registration will only work with special unlock codes and with branded versions only.

Getting the Machine Id Copy the Machine Id to the clipboard and pass it to your license administrator.

Entering the Unlock code Usually you will receive Agent Id and Unlock Code per e-mail. Use the button Register... to open the registration wizard. Choose Enter registration information to change to the registration sheet. You only need to enter the last two input fields Agent Id and Unlock. Accept the license terms and use the button Register to register the application.

2.5 Setting up the configuration PocketOptimizer uses three different configuration files to store the application’s configuration data.

• machine.cfg contains machine specific data (directory, registration and sniffer configuration) • system.cfg contains system data, this file contains the measurement parameters and is usually synchronized from a server. Users shouldn’t edit this file manually as the changes will be lost when synchronizing the configuration from a server.

• user.cfg contains the user’s measurement configuration. The file is usually maintained by PocketOptimizer’s profile manager, alternatively changes can be made manually.

The configuration files are either delivered automatically by the setup package or created by PocketOptimizer when run for the first time. Usually you will not be required to maintain these configuration files manually, possible exceptions are:

• If you have to specify a different server for synchronization you have to edit system.cfg. • If you want to specify different directories for the log files you have to edit machine.cfg.

Page 11: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 10 Installation

• To set up the sniffer configuration, you have to modify machine.cfg.

For Pocket PC it’s recommended to use the freeware tool TotalCommander instead of Windows file

explorer as this tool allows to directly open the files with Notepad while file explorer will raise an error due to missing file associations.

2.5.1 Configuration file format

The configuration files are using a format similar to Windows .ini files. The default syntax for parameters is <param>: <value(s)>, leading and trailing white spaces will be dropped, unknown

parameters are ignored. Use semicolons (;) to denote comments. Parameters including leading or trailing white spaces or semicolons need to be quoted with double quotes (").

2.5.2 Setting up a different server for synchronizat ion

The synchronization server is defined in the system configuration file in the section [System]. Locate the identifier Update-Url and enter the proper server and path.

[System] Update-Url: http://www.i-qos.com/config/po /demo

Alternatively it is possible to directly enter the URL before starting the synchronization.

2.5.3 Setting up directories

Several directories can be configured in the machine configuration file in the section [Directories]. The different directories are:

• Log-Path: contains the log files generated by PocketOptimizer. Its up to the user to delete outdated log files.

• Job-Path: contains the job files fetched from the server. You will need to copy the files manually or run job synchronization after changing this value.

• Report-Path: contains the report files not yet sent to the reporting server. These files can be sent manually via the reporting function.

• Archive-Path: contains report files already sent or manually moved to the archive folder. It’s up to the user to delete outdated report files.

• Sniffer-Path: contains the packet sniffer's output and the decoded sniffer files. It's up to the user to delete outdated sniffer files.

[Directories] Log-Path: logs Job-Path: jobs Report-Path: reports Archive-Path: archive Sniffer-Path: sniffer

To change the directories, overwrite the corresponding values. When starting with a backslash, the directories are absolute (e.g. \CF Card\logs) other directories are relative to the installation

directory.

2.5.4 GPS configuration

The tab sheet GPS configuration can be used to configure and check the GPS settings.

The parameter GPS port is used to specify the serial port for the GPS receiver. Both physical and virtual COM ports are supported in the form <port>:<parameters>. Physical ports are usually specified in the form com<n>:<baud rate>,<parity>,<bits>,<stopbits>, e.g. com1:9600,n,8,1. Virtual com ports (e.g. for Bluetooth receivers usually do not require parameters, it might be

required to specify them in the form \\.\com<n>, e.g. \\.\com25.

The parameter GPS operation mode is used to specify when the GPS connection has to be used: • GPS off: the GPS connection will not be used during measurements. It is possible to open the connection with the Start button, but it will be disconnected prior to measurements.

• GPS before job: The GPS connection is opened before executing to the measurement job. As soon as valid GPS coordinates are available or after a timeout, the GPS connection is closed

and the measurement is started. This mode can be used if simultaneous connections of mobile terminal and GPS receiver are not possible or if measurement results shall not be influenced by

the GPS background thread. The GPS location will be stored once in the log files and reported in the measurement ticket.

Page 12: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 11 Installation

• GPS before RAS: The GPS connection is opened prior to the establishment of a RAS connection. This mode is similar to the previous mode, the GPS location will be stored once in

the log files and reported in the measurement ticket.

• GPS continuous: The GPS connection is opened during the measurement. The GPS location will be stored for every record in the log files and reported in the measurement ticket.

The button Start can be used to start the GPS background thread or re-start it with new parameters.

The control GPS status shows GPS information for diagnostic purposes. • the first line displays the current status (either GPS data valid or some error information) • the second line displays the GPS UTC time, latitude, longitude and the number of satellites. • the next three lines contain the last three GPS messages from the receiver.

The main GPS status is displayed in the upper right corner of the GPS and the User data tab sheets.

• A green GPS symbol means that GPS data is valid. • A yellow GPS symbol indicates that GPS data is received but not valid. • A red GPS symbol shows that no GPS data is received or the connection could not be established.

GPS issues on Pocket PC This section describes some special issues for Bluetooth GPS receivers on Windows Mobile 2003. These issues have been noticed with this particular edition of Windows CE but can occur on other

versions, too.

The main problem on this platform is that only one serial port for outgoing serial connections is available and this port is not directly mapped to a device. The port can be determined in the Bluetooth configuration as shown below. If the application connects to the virtual serial port,

Windows CE blocks this call and prompts the user to select the device as shown in the second

screenshot. The background GPS thread is blocked in this situation and PocketOptimizer cannot be terminated. After selecting a device, Windows tries to connect to the device (blocking the GPS

thread). On success the port is opened and the background thread will continue execution. Otherwise an error message as shown in the third screenshot is displayed (again blocking the

background thread).

Page 13: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 12 Installation

If another window or PocketOptimizer is moved to the foreground it might happen that one of the Bluetooth windows is not visible but still blocks the GPS background thread.

In order to use Bluetooth GPS receivers you will have to • manually select the GPS receiver if Windows prompts you.

• manually acknowledge Bluetooth error messages.

If you experience problems with the GPS background thread please • check if background windows are requiring user input. • try to manually connect to the GPS receiver with the Bluetooth manager. • try to disable Bluetooth.

2.5.5 Sniffer configuration

Currently the following packet sniffers are supported by PocketOptimizer:

• Microsoft NetCap is supported by the Win32 edition.

• CEMyNetwork Wireless 1.0 from Epiphan Consulting, Inc. is supported by the Pocket PC

edition.

Please see section 5.4.7 in the Administrator's manual for details or contact your system administrator to provide the required configuration settings.

Page 14: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 13 Operations Manual

Operations Manual This section describes how to use PocketOptimizer.

3.1 PocketOptimizer’s main window Before starting any measurement, additional description data can be entered and the RAS connection has to be selected.

3.1.1 User data and RAS configuration

The first four edit controls are for informational purposes and for reporting only. The information is

stored in the log files and in XML reports but not required by PocketOptimizer. • User name is stored in the log files and reported as text metric (Id 301) in the XML report. • Location is stored in the log files and reported as text metric (Id 302) in the XML report. Alternatively the location can be derived from GPS coordinates (see the /autolocation command

line argument). • Cell ID is stored in the log files and reported as text metric (Id 303) in the XML report • The list of operators is fetched from the system configuration file. The selected value is stored in the log files and reported as text metric 300 in the XML report. Alternatively it can be

derived from the mobile's MSISDN (see the /autooperator command line argument).

Use the combo box to select the RAS connection to be used or select <none> if you want to use a LAN or a user managed RAS connection.

The combo box will contain Huawei NDIS connections in the Win32 edition if the API dll ndisapi.dll

is installed into the application directory (i.e. into the same directory as PocketOptimizer.exe). For legal reasons the file cannot be delivered in the setup package.

3.1.2 Main menu functions

PocketOptimizer offers four different interactive measurements and pre-defined job measurements.

Chapter

3

Page 15: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 14 Operations Manual

The interactive measurements can be accessed via the main menu entry Interactive. • HTTP measurements support downloads from standard HTTP servers. • FTP measurements allow download and upload measurements from/to standard FTP servers. • ICMP measurements allow Ping measurements to any machine answering Ping requests. • UDP measurements can be used for UDP stream analysis with a special UDP data generator (NDFA server).

Job measurements can be accessed via the main menu entry Jobs. • The menu item Jobs contains the functions to execute pre-defined measurement jobs. • The menu item Sync and Reporting contains functions for synchronizing the configuration and jobs from a central server, and to transmit pending reports.

Online help can be accessed in all screens with the menu entry Help.

The menu item Exit terminates the application.

3.2 Interactive measurements Interactive measurements can be parameterized by the user with one or two GUI sheets. In contrast, job measurements are controlled by job files and no additional configuration is possible.

3.2.1 HTTP measurements

HTTP measurements allow downloading any file from a HTTP server featuring integrated real time

performance measurements. If the downloaded file is of content type text/html , embedded

images (specified by <img src> tags) will be additionally downloaded with a user defined number

of concurrent TCP connections. The HTTP client does not support frames or cascaded style sheets

etc, it is designed to provide high quality real time measurement data and does only simplified HTTP parsing. Thus it might be required to provide special, simplified HTTP files for testing instead

of accessing live web sites.

HTTP Configuration This tab sheet allows modification of the HTTP measurement's main parameters.

• Use the profile combo box to select a pre-defined profile either from the system or the user configuration file to load the profile's values.

o The ellipsis button (...) opens the profile manager. Use this function to save your settings to a user defined profile and to manage your profiles.

• Use the custom URL text field to enter a custom URL or use the ellipsis button (...) to view a history of URLs.

• Uncheck the checkbox follow image tags to deactivate the download of embedded image files. • Specify the maximum number of TCP connections for HTML downloads. This parameter will only be used for text/html files containing images (<img src> tags) if follow image tags is enabled.

• A number of repetitions and the pause between those repetitions can be specified with loops and delay.

• The checkbox act/deact RAS connection in every loop specifies if the RAS connection will be closed and re-opened in every loop iteration or if the same RAS connection will be used for all measurements.

Page 16: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 15 Operations Manual

• The checkbox logfile has to be checked if the measurement's log file is to be saved in the log file directory.

• The checkbox sniffer activates a third party packet sniffer.

Hit the button Start to start the measurement or proceed to the next tab sheet to configure advanced parameters.

HTTP Advanced parameters This tab sheet contains some advanced HTTP measurement parameters.

• The checkbox use prelod URL has to be checked if a preload URL has to be downloaded prior to the measurement. The preload URL will be loaded once after a RAS connection has been

established and can be used to initialize a web based accelerator or to acquire a high rate radio access bearer.

• Specify the desired custom preload URL in the text edit control or hit the ellipsis button (...) to pick one of the recent URLs.

• An additional post preload delay can be specified if required. The system will be idle for the specified time after a preload URL has been fetched before starting the measurement.

Navigate back to the tab sheet Config after the data has been configured to start the measurement.

HTTP Status This tab sheet will display the HTTP measurement's status and main results during the measurement.

• The current loop iteration and the status information are displayed on top. • The field bytes received displays the number of bytes successfully received including both HTTP headers and payload (i.e. TCP payload not including TCP and IP headers).

• The average throughput is calculated from the first to the last receive time stamp and can thus be slightly higher than the real throughput.

• The first RTT is calculated from the transmission of the HTTP request to the reception of the HTTP server's response.

• The graph control displays the estimated throughput per one second interval. Usually the display scale is in kByte/s=1000Byte/s, it can be switched to kbit/s=1000bit/s by setting the

parameter GraphModeKBit: True in the user configuration file's [GUI] section.

Page 17: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 16 Operations Manual

Hit the Cancel button to cancel any active measurement.

HTTP Log The log sheet contains the measurement's log. Major events and their time stamps are displayed in the log window for informational and diagnostic purposes.

HTTP Results The results sheet contains the measurement's detailed results. A list of throughput values per one

second interval can be viewed during the measurement by hitting the Update button or is automatically updated at the end of the measurement. This allows to view the data even if it is not

automatically saved to a log file.

3.2.2 FTP measurements

FTP measurements allow downloading or uploading a file from or to an FTP server featuring

integrated real time performance measurements. Both active and passive transfer mode is

supported.

FTP Configuration This tab sheet allows to modify the FTP measurement's main parameters.

• Use the profile combo box to select a pre-defined profile either from the system or the user configuration file to load the profile's values.

o The ellipsis button (...) opens the profile manager. Use this function to save your settings to a user defined profile and to manage your profiles.

• Use the custom URL text field to enter a custom URL or use the ellipsis button (...) to view a history of URLs.

Note: If the URL specifies a directory (i.e. ends with a slash), the agent Id will automatically be used as the filename to avoid problems due to simultaneous uploads of several users.

Alternatively the placeholder %agent% will be replaced by the agent id.

• Specify the direction with the Get and Put radio buttons. • The download data size will be specified by the data file, the data size for uploads can be specified with the data size control.

• Check passive mode if you want to use FTP passive mode. • A number of repetitions and the pause between those repetitions can be specified with loops and delay.

• The checkbox act/deact RAS connection in every loop specifies if the RAS connection will be closed and re-opened in every loop iteration or if the same RAS connection will be used for all measurements.

• The checkbox logfile has to be checked if the measurement's log file is to be saved in the log file directory.

• The checkbox sniffer activates a third party packet sniffer.

Hit the button Start to start the measurement.

Page 18: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 17 Operations Manual

FTP Status This tab sheet will display the FTP measurement's status and main results during the

measurement.

• The current loop iteration and the status information are displayed on top. • The field bytes sent/received displays the number of bytes successfully sent or received on the data connection (TCP payload not including control connection).

• The average throughput is calculated from the first to the last receive timestamp and can thus be slightly higher than the real throughput.

• The first RTT is calculated from the transmission of the FTP USER request to the reception of the FTP server's control connection response.

• The graph control displays the estimated throughput per one second interval. Usually the display scale is in kByte/s=1000Byte/s, it can be switched to kbit/s=1000bit/s by setting the

parameter GraphModeKBit: True in the user configuration file's [GUI] section.

Hit the Cancel button to cancel any active measurement.

FTP Log The log sheet contains the measurement's log. Major events and their time stamps are displayed in the log window for informational and diagnostic purposes.

FTP Results The results sheet contains the measurement's detailed results. A list of throughput values per one second interval can be viewed during the measurement by hitting the Update button or is automatically updated at the end of the measurement. This allows to view the data even if it is not automatically saved to a log file.

3.2.3 ICMP measurements

ICMP measurements allow the evaluation of ICMP/Ping round trip times and packet loss using user defined payloads and transmission timing with real time data analysis.

ICMP Configuration This tab sheet allows to modify the ICMP measurement's main parameters.

Page 19: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 18 Operations Manual

• Use the profile combo box to select a pre-defined profile either from the system or the user configuration file to load the profile's values.

o The ellipsis button (...) opens the profile manager. Use this function to save your settings to a user defined profile and to manage your profiles.

• Use the host text field to enter a custom host or IP address or use the ellipsis button (...) to view a history of hosts.

• Specify the number of packets per block with the corresponding edit control. See the description of the block parameter below, usually you will use one block.

• If you specify Unix mode packets will be transmitted with a constant time increment as specified with the advance parameter (adv ms). In default (Windows) mode, a packet will be

transmitted either after a timeout (to ms) or adv ms after the reception of a packet as specified with the advance parameter.

• The ICMP payload size will directly influence the ICMP and IP packet sizes: ICMP packet size: ICMP payload size + 8 bytes ICMP header

IP packet size: ICMP packet size + 20 bytes IP header • The receive timeout is specified with the parameter to (ms). In Unix mode a packet is always transmitted after adv ms, thus the timeout value is only relevant for the last (lost) packets. In Windows mode a packet is only transmitted after the reception of a packet or after a timeout.

• The timing advance is specified with the adv (ms) parameter. In Unix mode this is the time increment from transmission to transmission, in Windows mode it

specifies the time increment from packet reception to next transmission. • In addition to the loops, it is possible to specify a number of blocks to be transmitted. Every block includes the specified number of packets succeeded by an idle time as specified with

pause. The RAS connection is not disconnected between blocks. • The checkbox act/deact RAS connection in every loop specifies if the RAS connection will be closed and re-opened in every loop iteration or if the same RAS connection will be used for all

measurements.

• The checkbox logfile has to be checked if the measurement's log file is to be saved in the log directory.

• The checkbox sniffer activates a third party packet sniffer.

Hit the button Start to start the measurement.

ICMP Status This tab sheet will display the ICMP measurement's status and main results during the measurement.

• The current loop iteration and the status information are displayed on top. • Block/seq no displays the current block number (starting with 1) and the current sequence number (starting with 1 in the first block). The sequence value displayed at the and of a loop

iteration is thus the # of packets transmitted (packets x blocks). • The Average RTT is calculated on a per block basis. • The number of Packets lost is counted per loop as the sequence number is. If all packets are lost, this value will thus be equal to the sequence number.

• The graph control displays the round trip time on a per packet basis, a green bar is used to show activity (response has not been received but timeout has not expired, yet), a red bar

indicates packet loss (timeout for the packet has expired).

Page 20: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 19 Operations Manual

Hit the Cancel button to cancel any active measurement.

ICMP Log The log sheet contains the measurement's log. Major events and their time stamps are displayed in the log window for informational and diagnostic purposes.

ICMP Results The results sheet contains the measurement's detailed results. A list of tx and rx time stamps and

roundtrip time values (or LOST in case of a packet loss) can be viewed during the measurement by hitting the Update button or is automatically updated at the end of the measurement. This allows to view the data even if it is not automatically saved to a log file.

3.2.4 UDP measurements

UDP measurements allow the analysis of UDP traffic streams with defined uplink and downlink data

rates. The remote endpoint for UDP measurements has to be a traffic generator server supporting

PocketOptimizer’s traffic generator protocol. Currently this is NDFA server 0.40 and above.

The log files created by PocketOptimizer can be opened with NDFA client for further analysis.

UDP Configuration This tab sheet allows modification of the UDP measurement's main parameters.

• Use the profile combo box to select a pre-defined profile either from the system or the user configuration file to load the profile's values.

o The ellipsis button (...) opens the profile manager. Use this function to save your settings to a user defined profile and to manage your profiles.

• Specify uplink and downlink packet size (UDP payload) in the UDP packet size edit controls. UDP packet size: UDP payload size + 8 bytes UDP header

IP packet size: UDP packet size + 20 bytes IP header

• Uplink and downlink packet rates can be specified in UDP packet rate. • Specify the measurement duration in seconds. Packets will be transmitted in both directions until the required data has been committed by the remote side or a timeout has occurred.

• A number of repetitions and the pause between those repetitions can be specified with loops and delay.

• The checkbox act/deact RAS connection in every loop specifies if the RAS connection will be closed and re-opened in every loop iteration or if the same RAS connection will be used for all measurements.

• The checkbox logfile has to be checked if the measurement's log file is to be saved in the log file directory.

• The checkbox sniffer is available on Pocket PC only and activates a third party packet sniffer.

Note: As there are no GUI controls for the server, username and password, be sure to specify proper values in either the [UdpDefaults] section or in the profile you're using.

Hit the button Start to start the measurement.

Page 21: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 20 Operations Manual

UDP Status This tab sheet will display the UDP measurement's status and main results during the

measurement.

• The current loop iteration and the status information are displayed on top. • dl (kbit/s) and ul (kbit/s) show average uplink and downlink data rates calculated from the first to the last received packet.

• dl jtr (ms) and ul jtr (ms) show average effective jitter. • dl loss and ul loss display the total number of packets lost. • The graph control displays the estimated data rates per one second interval in

kByte/s=1000Byte/s, it can be switched to kbit/s=1000bit/s by setting the parameter

GraphModeKBit: True in the user configuration file's [GUI] section. In addition red bars are used

to display the number of lost packets per interval (25% height .. 1 packet lost, 50% .. 2

packets lost, 75% .. 3 packets lost, 100% .. 4 or more packets lost).

Hit the Cancel button to cancel any active measurement.

UDP Log The log sheet contains the measurement's log. Major events and their time stamps are displayed in the log window for informational and diagnostic purposes.

UDP Result The results sheet contains the measurement's detailed results. A detailed list of statistics per on second interval can be viewed during the measurement by hitting the Update button or is automatically updated at the end of the measurement. This allows to view the data even if it is not automatically saved to a log file.

3.2.5 Profile manager

The profile manager can be used to save user defined parameter sets (i.e. profiles) to the user configuration file.

Simply enter a new name in the edit control (to create a new profile) or select an existing name from the list box (to overwrite an existing profile) and hit the Save as button. In addition, existing profiles can be deleted with the Delete button after specifying their name.

Page 22: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 21 Operations Manual

3.3 Job measurements Jobs are pre-defined scripts containing one or more measurement tasks to be executed

subsequently with one or more loop iterations. Jobs are contained in text files in the jobs directory.

3.3.1 Running Jobs

Specify a job file to be executed by selecting it in the combo box. Some additional information

contained in the job file will be displayed to give more detailed information.

Hit the Start button to start the job. During execution the status information sheet will display progress information as well as a graphical overview.

After the measurement is completed, an XML report file is generated. Depending on the specification in the job file this XML ticket can either be stored in a local directory or sent to a

server. If transmission is not possible, the file will be kept in the local directory for later submission.

3.3.2 Creating jobs

Job files are similar to the interactive measurement's task files. Thus you can copy the task's settings from the configuration manager into a job file. Alternatively it is possible to copy a task's

section from the system or user config file. Please refer to the corresponding section in the

Administrator's manual for details.

3.4 Synchronization and reporting

This form contains the following functions: • Synchronization is used to load the system configuration as well as the job files from a pre-defined server.

• Reporting allows to transmit pending result files to a server.

Page 23: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 22 Operations Manual

3.4.1 Synchronization

Simply hit the button Sync to reload the system configuration file (including the system task profiles) and the job files from the measurement server. PocketOptimizer will prompt if to open a RAS connection and load the required files.

If the default synchronization URL is not usable, it is possible to adjust it as required.

Please note that the synchronization URL is stored in the system configuration file and is automatically updated by the synchronization process. The new value will be used when

PocketOptimizer is started the next time.

3.4.2 Reporting

The reporting functionality can be used to submit XML tickets to the ticket receiver, i.e. a HTTP

server accepting HTTP POST requests.

Depending on your job files, reports can either be automatically submitted to the HTTP server or will have to be transferred manually. In the second case or if transmission is not possible in the

first case, the XML report files will be placed in PocketOptimizer's report directory. They can then

be sent manually or moved to the archive folder.

Note: It's up to the user to remove old report files from the archive folder.

Hit the Refresh button to load a list of files ready for transmission, the Select button can be used to toggle the selection in addition to manual file selection by checking or un-checking single items in the list.

Hit the Report button to submit the files to the server or the Archive button to move the files to the archive folder.

Page 24: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 23 Administrator’s Manual

Administrator’s Manual This section contains information for the system and license administrator and is not intended for end

users.

4.1 PocketOptimizer Registration Utility The registration utility is a software application that generates PocketOptimizer’s unlock codes. This

application is only available if you purchased a perpetual, branded company license for an unlimited

number of installations.

The workflow for unlocking PocketOptimizer is described in section 2.4, the main steps are: • The user submits the machine id to the license administrator. • The license administrator chooses a new agent id and generates the unlocking code. • The user enters the unlocking code.

License Generator operation instructions • Enter the user’s machine id or hit the button Load file to load the data from the user’s reginfo.txt file.

• Enter the user’s agent id or assign a new agent id. You should use unique agent ids to ensure proper reporting operation.

• Hit the button Calculate to generate to unlocking code. • Copy the application’s output into the clipboard or save it to a file with the Save file button.

Chapter

4

Page 25: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 24 Administrator’s Manual

4.2 Synchronization server reference A standard HTTP server can be used to synchronize the system configuration file and the job files to

PocketOptimizer installations.

The server is configured in the system configuration file, thus it is possible to change the server with the synchronization function or by installing a new system configuration file.

4.2.1 HTTP server requirements

The HTTP server has to contain at least two public accessible files:

• A file named system.cfg will replace the existing configuration file. Please ensure this file is a valid system configuration file.

• A file named jobs.cfg has to contain a list of job files. The job files can reside in the same directory or in a sub directory.

If Update-URL in the system configuration file is http://www.i-qos.com/config/po/demo, the URLs fetched will be

• http://www.i-qos.com/config/po/demo/system.cfg and • http://www.i-qos.com/config/po/demo/jobs.cfg.

4.2.2 Job configuration requirements

The job configuration file is a text file that has to follow the format <job file> <version>\r\n. • job file is the job’s file name on the HTTP server. If no path is specified, the file has to reside in the directory specified by Update-URL, otherwise a sub directory of this path can be used.

• If the job file name includes blanks, it has to be quoted by double quotes ("). • version is the job file’s version as specified with the parameter Version in the jobfile itself. If the job file does not exist in PocketOptimizer’s local job directory or the version is not equal, the job

file will be updated. • You can specify the keyword delete instead of version to delete the file from PocketOptimizer’s local job directory.

• Any white space except for cr/lf can be used as separator between job file and version. • Any combination of cr/lf can be used to separate different job files.

Note: The version in the job file will not be updated during the download, thus it’s up to the user to ensure these versions are identical to gain synchronization performance by not loading those files

already up to date. On the other hand, it is possible to force downloading all files by entering a version not identical to the job’s file version.

A sample job configuration file is

jobs/test-http.job 0.0.1 jobs/test-ftp.job force jobs/test1.job delete

Note: force is not a special keyword, it’s simply a version different to the version in the job file to force update.

For the Update-URL specified above, the URLs fetched will be • http://www.i-qos.com/config/po/demo/jobs/test-http.job • http://www.i-qos.com/config/po/demo/jobs/test-ftp.job

4.3 Reporting server reference Measurement reports are available for job file execution only and are XML files as described in section

5.3. The job files are transferred via a standard HTTP POST request to the server specified in the system configuration file. The server can be a HTTP server with a suitable CGI script or a special ticket

receiver that will directly insert the measurement data into a database.

A sample http request is

POST / HTTP/1.0 <CRLF> Content-length: 638 <CRLF> <CRLF> <?xml version="1.0" encoding="ISO-8859-1" standalon e="yes" ?> <CRLF> <ticket version="2.0"> <CRLF> <instance>pocketopt</instance> <CRLF> <scenario id="113"> <CRLF> <mtime>2005-11-13T01:33:43+01:00</mtime> <CRLF>

Page 26: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 25 Administrator’s Manual

<agent id="101">PocketOptimizer</agent> <CRLF> <duration>10.222</duration> <CRLF> <comment>loop 1, block 2, loop 1 (icmp)</commen t> <CRLF> <qi>10</qi> <CRLF> <rating>1</rating> <CRLF> <metrics> <CRLF> <metric id="1001" comment="1001-ping-tx-count ">20</metric> <CRLF> <metric id="1002" comment="1002-ping-lost">0< /metric> <CRLF> <metric id="1003" comment="1003-ping-avg-rtt" >0.183</metric> <CRLF> <metric id="100" comment="operator">23201</me tric> <text id="101" comment="user">your user name< /text> <text id="102" comment="location">your locati on</text> <text id="103" comment="cell-id">your cell id </text> <text id="104" comment="IP-addrs">128.130.6.7 </text> <text id="105" comment="jobtime">2006-11-13T0 1:33:42+01:00</text> </metrics> <CRLF> </scenario> <CRLF> </ticket> <CRLF>

Page 27: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 26 Technical Reference

Technical Reference This chapter includes PocketOptimizer's technical specifications.

5.1 Configuration file reference The configuration files described here have to be placed in the installation directory, i.e. the directory where PocketOptimizer.exe resides. Use a standard text editor to edit those files if required.

For Pocket PC it’s recommended to use the freeware tool TotalCommander instead of Windows file explorer as this tool allows to directly open the files with Notepad while file explorer will raise an error

due to missing file associations.

5.1.1 System configuration file

This section describes the system configuration file’s format. The file is named system.cfg and is placed in PocketOptimizer’s installation directory.

Note: The system configuration file should only be modified by the administrator as the file is

automatically synchronized from the configuration server.

Note: The easiest way to create sections in the system configuration file is to enter the required

parameters in an interactive measurement, save the data to a user defined profile and copy the corresponding section from the user configuration file to the system configuration file with a text

editor.

5.1.1.1 Sample system configuration file

[System] Report-Url: http://qts.i-qos.com:8808/ Update-Url: http://www.i-qos.com/config/po/ demo [HttpProfile] Name: i-qos.com 10kB ;Loop-Count: 1 ; ... loop iterations ;Loop-Pause: 1000 ; (ms) pau se between and after last repetition ;Ras-Dial: No ; (No|Auto |Forced|Iterated) ;Ras-Hangup: No ; (No|Yes) Http-Url: http://www.i-qos.com/test/test0 1-00010kB.bin ;Http-Follow: Yes ; follow i mg src tags in html files ;Http-FollowMulti: Yes ; load img src tags multiple even if same URL ;Http-Threads: 1 ; parallel threads for html files ;Http-KeepAlive: Yes ; use keep alive ;Http-UsePreload: Yes ; (No|Yes) ... use preload url ;Http-PreloadUrl: http://www.i-qos.com/test/test 01-00010kB.bin ;Http-PreloadDelay: 2000 ; (ms) ... delay after preload ;Http-Connect-To: 60000 ; (ms) ... socket connect timeout ;Http-Recv-To: 60000 ; (ms) ... socket rx timeout ;Http-Send-To: 60000 ; (ms) ... socket tx timeout ;Http-Master-To: 180000 ; (ms) ... total timeout [HttpProfile] Name: i-qos.com 100kB Http-Url: http://www.i-qos.com/test/test0 1-00100kB.bin [HttpProfile] Name: i-qos.com 1MB

Chapter

5

Page 28: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 27 Technical Reference

Http-Url: http://www.i-qos.com/test/test0 2-001MB.bin [HttpProfile] Name: i-qos.com 10MB Http-Url: http://www.i-qos.com/test/test0 2-010MB.bin [HttpProfile] Name: i-qos.com 100x1kB Http-Url: http://www.i-qos.com/test/test- 100x1kB.html Http-Threads: 10 [HttpProfile] Name: i-qos.com 100x10kB Http-Url: http://www.i-qos.com/test/test- 100x10kB.html Http-Threads: 10 [HttpProfile] Name: GD main Http-Url: http://gd.tuwien.ac.at/ [FtpProfile] Name: i-qos.com 10kB DL ;Loop-Count: 1 ; ... loop iterations ;Loop-Pause: 1000 ; (ms) ... pause between loops ;Ras-Dial: No ; (No|Auto |Forced|Iterated) ;Ras-Hangup. No ; (No|Yes) Ftp-Url: ftp://www.i-qos.com/test/test01 -00010kB.bin Ftp-User: FTPTest ; user if required Ftp-Pass: iFTP17q ; password if required ;Ftp-Direction: Get ; (Get|Put ) ... direction ;Ftp-Passive: Yes ; (No|Yes) ... use pasv mode ;Ftp-DataSize: 1024 ; ... byte s (for upload only) ;Ftp-Connect-To: 60000 ; (ms) ... socket connect timeout ;Ftp-Recv-To: 60000 ; (ms) ... socket rx timeout ;Ftp-Send-To: 60000 ; (ms) ... socket tx timeout ;Ftp-Noop-To: 30000 ; (ms) ... timeout to send Noop command ;Ftp-Master-To: 180000 ; (ms) ... total timeout ;Ftp-Meas-To: 60000 ; (ms) ... stop measurement after timeout ;Ftp-BlockSize: 2048 ; receive/ transmit block size � �(large enough for DL, small enough for UL) [FtpProfile] Name: i-qos.com 100kB DL Ftp-Url: ftp://www.i-qos.com/test/test01 -00010kB.bin Ftp-User: FTPTest ; user if required Ftp-Pass: iFTP17q ; password if required [FtpProfile] Name: i-qos.com 1MB DL Ftp-Url: ftp://www.i-qos.com/test/test02 -001MB.bin Ftp-User: FTPTest ; user if required Ftp-Pass: iFTP17q ; password if required [FtpProfile] Name: i-qos.com 10MB DL Ftp-Url: ftp://www.i-qos.com/test/test02 -010MB.bin Ftp-User: FTPTest ; user if required Ftp-Pass: iFTP17q ; password if required [FtpProfile] Name: i-qos.com 10kB UL Ftp-Url: ftp://www.i-qos.com/test/Upload /test-ul-10kB-%agent%.bin FTP-User: FTPTest FTP-Pass: iFTP17q FTP-DataSize: 10240 FTP-Direction: Put Ftp-BlockSize: 1420 ; receive/t ransmit block size � � (large enough for DL, small enough for UL) ; for 1464 MTU size we use � �1464-20(TCP)-20(IP)-4=1420 bytes to avoid IP fragem entation [FtpProfile] Name: i-qos.com 100kB UL Ftp-Url: ftp://www.i-qos.com/test/Upload /test-ul-100kB-%agent%.bin FTP-User: FTPTest FTP-Pass: iFTP17q FTP-DataSize: 102400 FTP-Direction: Put Ftp-BlockSize: 1420

Page 29: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 28 Technical Reference

[FtpProfile] Name: i-qos.com 1MB UL Ftp-Url: ftp://www.i-qos.com/test/Upload /test-ul-1MB-%agent%.bin FTP-User: FTPTest FTP-Pass: iFTP17q FTP-DataSize: 1048576 FTP-Direction: Put Ftp-BlockSize: 1420 [FtpProfile] Name: GD welcome (small) Ftp-Url: ftp://gd.tuwien.ac.at/welcome.t xt Ftp-User: anonymous ; user if r equired Ftp-Pass: [email protected] ; password if required [PingProfile] Name: i-qos.com (win) ;Loop-Count: 1 ; ... loop iterations ;Loop-Pause: 1000 ; (ms) ... pause between loops ;Ras-Dial: No ; (No|Auto |Forced|Iterated) ;Ras-Hangup. No ; (No|Yes) Ping-Addr: www.i-qos.com ; host name or IP address Ping-Count: 20 ; packets p er block Ping-Size: 0 ; additiona l payload bytes Ping-Unix: No ; (No|Yes) ... unix mode Ping-Advance: 1000 ; (ms) ... tx advance Ping-Timeout: 4000 ; (ms) ... rx timeout Ping-Blocks: 1 ; ... # of blocks Ping-Delay: 5000 ; (ms) ... pause between blocks ;Ping-DontAverage: 0 ; ... # of packets excluded from averaging [PingProfile] Name: i-qos.com (unix) Ping-Addr: www.i-qos.com Ping-Count: 20 Ping-Size: 0 Ping-Unix: True Ping-Advance: 1000 Ping-Timeout: 5000 Ping-Blocks: 1 Ping-Delay: 5000 [PingProfile] Name: i-qos.com (unix fast) Ping-Addr: www.i-qos.com Ping-Count: 20 Ping-Size: 0 Ping-Unix: True Ping-Advance: 200 Ping-Timeout: 5000 Ping-Blocks: 1 Ping-Delay: 5000 [UdpProfile] Name: i-qos.com (2x12.8/16kbit/s) ;Loop-Count: 1 ; ... loop iterations ;Loop-Pause: 1000 ; (ms) ... pause between loops ;Ras-Dial: No ; (No|Auto |Forced|Iterated) ;Ras-Hangup. No ; (No|Yes) Udp-DL-Size: 160 ; (bytes) . .. DL UDP payload size Udp-UL-Size: 160 ; (bytes) . .. UL UDP payload size Udp-DL-Rate: 10 ; (pkts/sec ) ... DL packet rate Udp-UL-Rate: 10 ; (pkts/sec ) ... UL packet rate ; 10/s * 16 0 * 8 = 12800 bit/s (UP payload) ; 10/s * (1 60 + 40) * 8 = 16000 bit/s (IP total) Udp-Duration: 20 ; (sec) ... measureent duration Udp-Server: www.i-qos.com:8888 ; ... serve r name or IP address Udp-User: demo ; ... serve r user name Udp-Pass: ndfademo ; ... serve r password [HttpDefaults] [FtpDefaults] Ftp-User: anonymous Ftp-Pass: [email protected] [PingDefaults] [UdpDefaults]

Page 30: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 29 Technical Reference

[RasDefaults] ;Ras-DontClose: Yes ; (No|Yes) ... don't close RAS after measurment ;Ras-Timeout: 60000 ; (ms) ... ras dial timeout ;Ras-User: ; ... RAS user name ;Ras-Password: ; ... RAS password ;Ras-Retries: 3 ; ... # of retries [Operators] ;Operator01: 23201=A1 ;Operator02: 23203=T-Mobile AT ;Operator03: 23205=Orange AT ;Operator04: 23207=T-Mobile TR AT ;Operator05: 23210=H3G AT ;Operator06: 23211=A1 Bob ;IMSI01: 23201 ;InitStr01: "at+cgdcont=1,""IP"",""A1.net" ""

5.1.1.2 Allowed sections in the system configuratio n file

The system configuration file may contain the following sections:

[System] only once [Help] only once [HttpProfile] any number [HttpDefaults] only once [FtpProfile] any number [FtpDefaults] only once [PingProfile] any number [PingDefaults] only once [UdpProfile] any number [UdpDefaults] only once [RasDefaults] only once [Operators] only once

5.1.1.3 Detailed parameter description for the syst em configuration file

Section [System] The configuration file may include one [System] section.

Known parameters in system config [System]

Report-Url: [http://]<host>[:<port>]/[<pat h>] (string, optional)

Specifies the URL for delivering XML reports. The server has to be a HTTP server or a ticket receiver accepting HTTP POST requests to the specified URL.

Update-Url: [http://]<host>[:<port>]/[<pat h>] (string, optional)

Specifies the URL for getting the configuration files. The server has to be a HTTP server accepting HTTP GET requests, the specified path has to include the system configuration file (system.cfg) and

a job configuration file (jobs.cfg). Job files can be stored in the same path or in subfolders of the specified path.

Section [Help] The configuration file may include a single [Help] section.

Known parameters in system config [Help]

Content: <file> (string, optional)

Specifies an alternate help file name. The file will be opened with a shell execute, all file types

supported by windows can be used.

Section [HttpProfile] The configuration file may include any number of [HttpProfile] sections, every section creates one

entry in the HTTP profile selection combo box.

Parameters not specified in this section will be loaded from the [HttpDefaults] section in the user

configuration file for individual measurements. If not defined there, they will be loaded from the [HttpDefaults] section in the system configuration file. HTTP tasks in job files will only be expanded by

the [HttpDefaults] section in the system configuration file.

Please refer to section 5.2.4.1 for a list of known parameters.

Page 31: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 30 Technical Reference

Section [HttpDefaults] The configuration file may include one [HttpDefaults] section. Values not specified in the [HttpProfile]

section are first searched in the user configuration file’s [HttpDefaults] section (interactive measurements only), then in the system configuration file’s [HttpDefaults] section.

Known parameters in system config [HttpDefaults]

Http-Url: [http://]<host>[:port]/[<path>] (string) Http-Threads: <threads> (integer, optional, default:1) Http-KeepAlive: (No|Yes) (bool, optional, default:Yes) Http-UsePreload: (No|Yes) (bool, optional, default:No) Http-PreloadUrl: [http://]<host>[:port]/[<path>] (string, optional) Http-PreloadDelay: <ms> (integer, optional, def:2000) Http-Connect-To: <ms> (integer, optional, def:60000) Http-Recv-To: <ms> (integer, optional, def:60000) Http-Send-To: <ms> (integer, optional, def:60000) Http-Master-To: <ms> (integer, optional, def:180000)

Section [FtpProfile] The configuration file may include any number of [FtpProfile] sections, every section creates one entry

in the FTP profile selection combo box.

Parameters not specified in this section will be loaded from the [FtpDefaults] section in the user configuration file for individual measurements. If not defined there, they will be loaded from the

[FtpDefaults] section in the system configuration file. FTP tasks in job files will only be expanded by

[FtpDefaults] section in the system configuration file.

Please refer to section 5.2.4.2 for a list of known parameters.

Section [FtpDefaults] The configuration file may include one [FtpDefaults] section. Values not specified in the [FtpProfile] section are first searched in the user configuration file’s [FtpDefaults] section (interactive

measurements only), then in the system configuration file’s [FtpDefaults] section.

Known parameters in system config [FtpDefaults]

Ftp-Url: [http://]<host>[:port]/[<path>] (string) Ftp-User: <user> (string, optional) Ftp-Pass: <password> (string, optional) Ftp-Direction: (Get|Put) (list, optional, default:Get) Ftp-Passive: (Yes|No) (bool, optional, default:Yes) Ftp-DataSize: <bytes> (integer, mandatory for upload) Ftp-Connect-To: <ms> (integer, optional, def:60000) Ftp-Recv-To: <ms> (integer, optional, def:60000) Ftp-Send-To: <ms> (integer, optional, def:60000) Ftp-Noop-To: <ms> (integer, optional, def:30000) Ftp-Master-To: <ms> (integer, optional, def:180000) Ftp-Meas-to: <ms> (integer, optional, def:none)

Section [PingProfile] The configuration file may include any number of [PingProfile] sections, every section creates one

entry in the ICMP profile selection combo box.

Parameters not specified in this section will be loaded from the [PingDefaults] section in the user configuration file for individual measurements. If not defined there, they will be loaded from the

[PingDefaults] section in the system configuration file. ICMP tasks in job files will only be expanded by [PingDefaults] section in the system configuration file.

Please refer to section 5.2.4.3 for a list of known parameters.

Section [PingDefaults] The configuration file may include one [PingDefaults] section. Values not specified in the [PingProfile]

section are first searched in the user configuration file’s [PingDefaults] section (interactive

measurements only), then in the system configuration file’s [PingDefaults] section.

Known parameters in system config [PingDefaults]

Ping-Addr: <host> (string) Ping-Count: <number> (integer, optional, default:10) Ping-Size: <bytes> (integer, optional, default:0) Ping-Unix: (True|False) (bool, optional, default:False) Ping-Advance: <ms> (integer, optional, def:1000) Ping-Timeout: <ms> (integer, optional, def:5000) Ping-Blocks: <number> (integer, optional, def:1) Ping-Delay: <ms> (integer, optional, def:1000)

Page 32: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 31 Technical Reference

Ping-DontAverage: <number> (integer, optional, def:0)

Section [UdpProfile] The configuration file may include any number of [UdpProfile] sections, every section creates one entry in the UDP profile selection combo box.

Parameters not specified in this section will be loaded from the [UdpDefaults] section in the user configuration file for individual measurements. If not defined there, they will be loaded from the

[UdpDefaults] section in the system configuration file. UDP tasks in job files will only be expanded by [UdpDefaults] section in the system configuration file.

Please refer to section 5.2.4.4 for a list of known parameters.

Section [UdpDefaults] The configuration file may include one [UdpDefaults] section. Values not specified in the [UdpProfile]

section are first searched in the user configuration file’s [UdpDefaults] section (interactive

measurements only), then in the system configuration file’s [UdpDefaults] section.

Known parameters in system config [UdpDefaults]

Udp-Server: <host>:<port> (string, mandatory) Udp-User: <user> (string, optional) Udp-Pass: <password> (string, optional) Udp-DL-Size: <bytes> (integer, optional, default:64) Udp-UL-Size: <bytes> (integer, optional, default:64) Udp-DL-Rate: <pkts/sec> (float, optional, default:10) Udp-UL-Rate: <pkts/sec> (float, optional, default:10) Udp-Duration: <seconds> (float, optional, default:30) Udp-Connect-To: <ms> (integer, optional, def:60000) Udp-Recv-To: <ms> (integer, optional, def:60000) Udp-Send-To: <ms> (integer, optional, def:60000) Udp-Master-To: <ms> (integer, optional, def:180000)

Section [RasDefaults] The configuration file may include one [RasDefaults] section. Values are automatically loaded from the

user configuration file (interactive measurements) or the system configuration file for interactive and job measurements.

Please refer to section 5.2.4.5 for a list of known parameters. Please note that [RasDefaults] cannot contain the parameter RAS-Entry as it is provided by the GUI.

Section [Operators] Specifies the operators that can be selected in the user data screen.

Known parameters in system config [Operators]

Operator<nn>: <id>[=description] (string, optional)

Specifies the operator id and an optional description. The selected operator id is reported as metric

100.

Default: <number> (integer, optional)

Specifies the default operator id, if not specified, the first operator is used.

IMSI<nn>: <number>[,<number>...] (integer, optional)

Specifies the IMSI start characters for operator n. Multiple values can be separated by commas. The starting characters are required for the /autooperator and /autoinitstr command line arguments.

InitStr<nn>: <text> (string, optional)

Specifies the modem init string for operator n. The modem init string is required for the /autooperator command line argument.

5.1.2 User configuration file

The user configuration file is similar to the system configuration file. Some additional sections are contained in this file to store the user’s input.

5.1.2.1 Sample user configuration file

[User] Username: your user name Location: your location CellId: your cell id RasEntry: A1.net bluetooth

Page 33: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 32 Technical Reference

[GUI] ;DecimalSeparator: . ;GraphModeKBit: Yes ; No/Yes ... grap h in kBit/s instead of kB/s [FtpHistory] FtpUrl: ftp://194.48.139.238/gprs/200KB [PingHistory] PingAddr: www.tuwien.ac.at PingAddr.0: www.a1.net [HttpHistory] HttpUrl: http://gd.tuwien.ac.at/ HttpUrl.0: http://194.48.139.238/merlin/Po cketOptimizer/120mal1KB.htm [PingProfile] Name: dial Loop-Count: 1 Loop-Pause: 3000 Ras-Dial: Auto Ping-Addr: www.tuwien.ac.at Ping-Count: 9999 Ping-Size: 0 Ping-Unix: True Ping-Advance: 5000 Ping-Timeout: 4000 Ping-Blocks: 1 Ping-Delay: 5000

5.1.2.2 Allowed sections in the user configuration file

The user configuration is similar to the system configuration file but does not contain the [System]

section. Some additional sections contain the user’s input, the file may contain the following sections:

[User] only once [GUI] only once [HttpHistory] only once [FtpHistory] only once [PingHistory] only once [HttpProfile] any number [HttpDefaults] only once [FtpProfile] any number [FtpDefaults] only once [PingProfile] any number [PingDefaults] only once [UdpProfile] any number [UdpDefaults] only once [RasDefaults] only once

5.1.2.3 Detailed parameter description for the user configuration file

Please refer to the definition of the system configuration file’s parameters in section 5.1.1.3 for the

measurement profile sections. The other sections are described below.

Note: The user configuration file is maintained by PocketOptimizer, usually it is not required to

modify the configuration file manually except for the parameters in the [GUI] section.

Section [User] This section contains the user’s input and is automatically maintained.

Known parameters in user config [User]

UserName: <informative user name> (string, optional)

Stores the user name to be dumped to the log files.

Location: <informative location> (string, optional)

Stores the location to be dumped to the log files.

CellId: <informative cell id> (string, optional)

Stores the cell id to be dumped to the log files.

RasEntry: <RAS entry to be used> (string, optional)

Stores the RAS connection to be used for interactive and job measurements.

Section [GUI] This section contains additional configuration parameters and is not maintained by PocketOptimizer

Page 34: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 33 Technical Reference

Known parameters in user config [GUI]

DecimalSeparator: <character> (char, optional)

Specifies the decimal separator for log file output. The default value is the systems decimal separator, for some tasks it may be more convenient to use the dot (.) as decimal separator.

GraphModeKBit: (Yes|No) (bool, optional, default:No)

Specifies that the graph control is to be scaled in kbit/s instead of kByte/s.

Section [HttpHistory] The section contains the custom HTTP URL history. The last 10 values are stored to improve GUI

usability.

Known parameters in user config [HttpHistory]

HttpUrl: <url> (string) HttpUrl.n: <url> (string) HttpPreloadUrl: <url> (string) HttpPreloadUrl.n: <url> (string)

Section [FtpHistory] The section contains the custom FTP URL history. The last 10 values are stored to improve GUI

usability.

Known parameters in user config [FtpHistory]

FtpUrl: <url> (string) FtpUrl.n: <url> (string)

Section [PingHistory] The section contains the ping host history. The last 10 values are stored to improve GUI usability.

Known parameters in user config [PingHistory]

PingAddr: <url> (string) PingAddr.n: <url> (string)

Sections [HttpProfile], [HttpDefaults] Please refer to section 5.2.4.1 for a list of known parameters.

Sections [FtpProfile], [FtpDefaults] Please refer to section 5.2.4.2 for a list of known parameters.

Sections [PingProfile], [PingDefaults] Please refer to section 5.2.4.3 for a list of known parameters.

Sections [UdpProfile], [UdpDefaults] Please refer to section 5.2.4.4 for a list of known parameters.

Section [RasDefaults] Please refer to section 5.2.4.5 for a list of known parameters.

5.1.3 Machine configuration file

The machine configuration file contains information associated to the individual machine. You should not copy this file from one machine to another unless you make sure all the parameters are valid.

5.1.3.1 Sample machine configuration file

[Directories] Log-Path: logs Job-Path: jobs Report-Path: reports Archive-Path: archive [Registration] AgentId: 102 UnlockCode: B516-E7C5-B619-8ECA-6A1B [Sniffer] ;ExeName: "\Programme\CEMyNetwork Wirele ss1.0\cemynetworkw.exe" ;CaptureTo-Folder: SnifferFiles ;CaptureTo-Type: Ethereal, tcpdump (*.cap) ;CaptureTo-Location: "CF Karte" ;DumpFile-Path: "\CF Karte\SnifferFiles\"

Page 35: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 34 Technical Reference

;DumpFile-Ext: .cap ;DontTerminate: True [TShark] ;ExeName: D:\Software\Wireshark\TShark.e xe

5.1.3.2 Allowed sections in the machine configurati on file

The machine configuration file may contain the following sections:

[Directories] only once [Registration] only once [Sniffer] only once [TShark] only once (Win32 only) [RIL] only once (Pocket PC only)

5.1.3.3 Detailed parameter description for machine configuration file

Section [Directories] This section contains the directories for storing job, log and report files. Directories can be relative to the installation directory (i.e. the executable’s directory) or absolute and are created at program start

if not existing.

Known parameters in machine config [Directories]

Log-Path: <path> (string, optional, def:logs)

Specifies the path containing the log files.

Job-Path: <path> (string, optional, def:jobs)

Specifies the path containing job files. The job files synchronized from the server will be placed

there.

Report-Path: <path> (string, optional, def:reports)

Specifies the path for report files that have not been reported to a server.

Archive-Path: <path> (string, optional, def:archive)

Specifies the path for the report file archive.

Sniffer-Path: <path> (string, optional, def:sniffer

Specifies the path for sniffer files.

Section [Registration] This section contains the registration data entered by the user or loaded from the registration data

file. The data is usually maintained by PocketOptimizer.

Known parameters in machine config [Registration]

AgentId: <agent-id> (integer, mandatory)

Stores the agent id as assigned by the license administrator.

UnlockCode: <code> (string, mandatory)

Stores the unlocking code assigned by the license administrator.

Section [Sniffer] This section contains the packet sniffer configuration parameters, see section 5.5.3 and 5.6.2 for

details.

Known parameters in machine config [Sniffer]

ExeName: <file name> (string, optional) CaptureTo-Folder: <dialog folder> (string, optional, PPC only) CaptureTo-Location: <dialog file format> (string, optional, PPC only) CaptureTo-Type: <dialog folder type> (string, optional, PPC only) DumpFile-Path: <sniffer folder> (string, optional, PPC only) DumpFile-Ext: <file extension> (string, optional) DontTerminate: (True|False) (bool, optional, PPC only) SnifferParams: <params> (string, optional, Win32 only) InterfaceName-LAN: <interface> (string, optional, Win32 only) InterfaceName-RAS: <interface> (string, optional, Win32 only)

Section [TShark] This section is only available for the Win32 edition and stores the configuration for the TShark

executable. TShark is used to decode the sniffer files, not for capturing. Please see section 5.6.2 for details.

Known parameters in machine config [TShark]

Page 36: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 35 Technical Reference

ExeName: <file name> (string, optional)

Section [RIL] This section is only available for the Pocket PC edition and stores the configuration for the Radio Interface Layer. This interface allows querying the radio status similar to AT commands. RIL is only

available on Smart Phones (not on Pocket PC without builtin GSM/UMTS phone) and can provide the text metrics 120..128. It has been tested with HTC TyTN II devices.

Known parameters in machine config [RIL]

Ril-Enable: <True|False> (bool, optional, default:True)

Use this parameter to disable RIL if required. RIL availability is checked automatically by PocketOptimizer and usage of RIL functions is disabled if RIL or modem is not available, thus setting

Ril-Enable to false should not be required in most cases.

Ril-RasNameNN: <ras name> (string, optional, PPC only)

The parameters Ril-RasName00 .. Ril-RasName19 can be used to specify the RAS connections using RIL devices. The default configuration is Ril-RasName00: * meaning that all RAS connections use the

device associated with RIL. If you are using both Bluetooth connections (e.g. RAS name UMTS-GPRS-BT, cannot be queried

with RIL) and builtin modem connections (e.g. RAS name UMTS-GPRS-INT, associated with RIL),

the configuration can be Ril-RasName00: UMTS-GPRS-INT . In this case only the RAS connection

UMTS-GPRS-INT will be analyzed with RIL, for all other connections RIL will not be used.

5.1.4 Registration info file

This file is automatically generated by PocketOptimizer and contains the current configuration data.

The file can be used to submit the machine id to the license administrator and to back up your license

data.

Sample file

[PocketRegister] User: test user Machine-Id: A209E0BB-F7877594 Agent-Id: Unlocking-Code:

5.1.5 Registration data file

This file is used to submit the license information from the license manager to the users. The file is no

longer used after loading the data as the registration information is stored in the machine configuration file and can be deleted.

Sample file

[PocketRegister] User: test user Machine-Id: 30351601-4165-7159-F800-0050BF7A682 2 Agent-Id: 101 Unlocking-Code: 2c9e-c68c-d759-dd3f-8ef7

5.1.6 Location data file

A location file is required, if the command line argument /autolocation is used. The location file has to be named locations.csv and needs to be located in the application directory. The file has to be separated with semicolons (;), decimal separator is a dot (.). The column format is

<name>;<gps-lon>;<gps-lat> .

A sample data file is

1;9.7;47.25 2;9.7;47.5

5.2 Job file reference Job files are text files including a sequence of tasks to be executed. A number of main loop iterations can be specified, i.e. the total sequence of tasks can be executed several time. Additionally each task

can include a number of private iterations.

Page 37: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 36 Technical Reference

5.2.1 Sample job file [Global] Description: Test job 1 (HTTP + ICMP) Version: 0.0.1 ; version fo r synchronization Iterations: 1 ; # of main loop iterations Pause: 3000 ; pause in m s Reporting: File ; Off/File/H ttp Report-System: pocketopt ; system for XML reporting WriteLogFile: yes ; save log f iles to log directory [RAS] ;RAS-Timeout: 60 ; RAS connec tion timeout ;RAS-Retries: 3 ; # of RAS r etries ; possible tasks are HTTP, FTP, ICMP, UDP, Parall el, RAS_REPORT, RAS-CONNECT and RAS-HANGUP [TASK] Task-Type: RAS-Connect ; task type Scenario-Id: 110 ; scenario f or XML reporting (RAS KPIs) [TASK] Task-Type: HTTP ; task type Task-Comment: 100k HTTP download ; comment di splayed in status Scenario-Id: 113 ; scenario f or XML reporting Loop-Count: 2 ; # of task iterations Http-Url: http://194.48.139.238/merlin/HT TP_Files/100KB.dl [TASK] Task-Type: ICMP ; task type Task-Comment: 2x10 Pings ; comment di splayed in status Scenario-Id: 114 ; scenario f or XML reporting Loop-Count: 2 ; # of task iterations Ping-Addr: www.mobilkom.at ; host name or IP address Ping-Count: 10 ; # of pings per block Ping-Size: 0 ; payload si ze in bytes Ping-Unix: True ; windows/un ix mode Ping-Advance: 1000 ; increment in ms Ping-Timeout: 5000 ; timeout in ms Ping-Blocks: 2 ; # of block s Ping-Delay: 2000 ; delay betw een blocks in ms [TASK] Task-Type: RAS-Hangup ; task type

The sample job will execute the tasks as shown below:

• RAS-Connect (loop 1, task 1)

• HTTP download (loop 1, task 2, loop 1)

• HTTP download (loop 1, task 2, loop 2)

• PING (loop 1, task 3, loop 1)

• PING (loop 1, task 3, loop 2)

• RAS-Hangup (loop 1, task 4)

• RAS-Connect (loop 2, task 1)

• HTTP download (loop 2, task 2, loop 1)

• HTTP download (loop 2, task 2, loop 2)

• PING (loop 2, task 3, loop 1)

• PING (loop 2, task 3, loop 2)

• RAS-Hangup (loop 2, task 4)

5.2.2 Allowed sections in the job file

The job file may contain the following sections: [Global] only once [RAS] only once [Task] any number

5.2.3 Detailed parameter description for the job fi le

Section [Global] This section contains global job parameters.

Page 38: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 37 Technical Reference

Known parameters in job [Global]

Description: <text> (string, optional)

The description will be displayed when selecting a job. Enter any comment you find useful.

Iterations: <loop count> (integer, optional, default:1)

Specifies the number of main iterations.

Pause: <ms> (integer, optional, default:0)

Specifies the pause after each task in ms. Only used if the task's Loop-Pause is not specified.

Reporting: (Off|File|Http) (list, optional, default:Off)

Specifies the reporting system. o If set to File, the XML report will be saved to a file in the report directory. o If set to Http, the XML report will be saved to a file, if submission via HTTP is successful, the file will automatically be moved to the archive directory.

Report-System: <system> (string, optional)

Specifies the value to be used in the XML ticket's system tag. If using a ticket receiver for reporting, this has to be one of the ticket receiver's system, i.e. database names.

WriteLogFile: (Yes|No) (bool, optional, default:No)

Specifies if log files shall be generated.

UseSniffer: (Yes|No) (bool, optional, default:No)

Specifies if the packet sniffer is to be used (only if a sniffer is supported for the platform).

UseTShark: (Yes|No) (bool, optional, default:No)

Specifies if TShark is used to decode the sniffer files for TCP connections and generate additional KPIs.

Report-OldFiles: <count> (integer, optional)

Specifies the number of report files to be submitted after job execution. If the value is greater than

zero, the specified number of report files from the folder reports will be submitted to a ticket receiver if the reporting mode is http.

Section [RAS] This section can include additional RAS parameters, please refer section 5.2.4.5 for a detailed

specification.

Known parameters in job [RAS]

RAS-User: <user> (string, optional) RAS-Password: <password> (string, optional) RAS-APN: <apn> (string, optional) RAS-DefUser: <user> (string, optional) RAS-DefPassword: <password> (string, optional) RAS-DefAPN: <apn> (string, optional) RAS-DontClose: (Yes|No) (bool, optional, default:No) RAS-Timeout: <ms> (integer, optional, def:60000) RAS-Retries: <number> (integer, optional, default:3) RAS-ModemInfo-Enable: (Yes|No) (bool, optional, default:Yes) RAS-ModemInfo-Timeout: <ms> (integer, optional, def:30000)

Section [Task] This section contains the individual task definitions. Refer to section 5.2.4 for the task's parameters.

Known parameters in job [Task]

Task-Type: (HTTP|FTP|ICMP|UDP|Parallel|RAS -Connect|RAS-Hangup|AT-Command

The description will be displayed in the status window to provide additional information to the user.

You should include information allowing the user to estimate the task's runtime (e.g. # of bytes to be transferred or # of pings to be sent…).

Task-Comment: <text> (string, optional)

The description will be displayed in the status window to provide additional information to the user.

You should include information allowing the user to estimate the task's runtime (e.g. # of bytes to be transferred or # of pings to be sent…).

Scenario-Id: <integer> (integer, optional)

The scenario id is the unique key for XML reporting. Thus you should assign a different scenario id to every task you're using. Otherwise it will not easily be possible to distinguish different

Page 39: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 38 Technical Reference

measurements in the reported data. For example you shouldn't assign the same scenario id to

100kB and 1000kB downloads as some of the KPIs will be very different for those tasks.

Parallel: (No|Yes) (bool, optional, default:No)

Defines if a task shall be executed in parallel with other tasks. Parallel tasks have to be preceded by

a special task with task type Parallel. All tasks following this parallel task with attribute parallel=true will be executed in parallel. Please note that RAS tasks and RAS operations are not possible in

parallel tasks.

The following example demonstrates how to use parallel tasks:

[Task] Task-Type: Parallel [Task] Task-Type: HTTP Parallel: true Http-Url: http://www.i-qos.com/test/test0 2-010MB.bin [Task] Task-Type: HTTP Parallel: true Http-Url: http://www.i-qos.com/uploader/t est01.bin Http-Method: post

Additional known parameters depend on the task type, please refer to section 5.2.4 for the parameter

specification for the individual measurement tasks.

5.2.4 Task parameters

This chapter describes known parameters for different task types. The parameters can be contained in

• job files, i.e. [Task] sections • configuration files, i.e. [<task>Profile], [<task>Defaults]

5.2.4.1 Parameters for HTTP tasks

This section describes known parameters for HTTP tasks.

Known parameters for HTTP tasks

Name: <profile_name> (string)

Specifies the profile name to be displayed in the profile selection combo box. The name should be

unique to allow the user to identify the HTTP profile.

Loop-Count: <count> (integer, optional, default:1)

Specifies the total number of loop iterations for this task (GUI parameter loops).

Loop-Pause: <ms> (integer, optional)

Specifies the pause between loop iterations (GUI parameter loop delay).

Ras-Dial: (No|Auto|Forced|Iterated) (list, optional. default:Auto)

Specifies the RAS connection mode (GUI parameter act/deact RAS conn..), possible values are: No ... The RAS connection will not be established, even if it is not active

Auto ... The RAS connection will only be established if not already active.

Forced ... The RAS connection will be disconnected if active and then re-connected in the

first loop iteration. Subsequent loop iterations will use Auto behavior, i.e. the RAS connection will be re-used if possible, a new connection will be established

if the existing connection got lost.

Iterated ... The RAS connection will be disconnected if active and then re-connected in

every loop iteration. Interactive measurements support Auto and Iterated only, depending on the checkbox act/deact RAS conn. in every loop. All values are supported in job execution, default mode is No.

Ras-Hangup: (No|Yes) (bool, optional, default:No)

Specifies the RAS hang up mode (no GUI parameter available), possible values are:

No ... The RAS connection will not be closed.

Yes ... The RAS connection will be closed in every loop iteration.

This parameter is not used in interactive measurements (RAS-Dial is used instead). The parameter is supported in job execution, default mode is No.

Page 40: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 39 Technical Reference

Note: In addition to these RAS parameters, the parameters in the [RasDefaults] sections are used.

Usually the RAS connection will be closed after a measurement, this behavior can be overruled by

setting Ras-DontClose: True in [RasDefaults].

Ras-Wait: <ms> (integer, optional)

Specifies an additional delay in ms before a RAS connection is established.

Http-Url: [http://]<host>[:port]/[<path>] (string)

The HTTP URL used for download, HTTP protocol specifier and port can be omitted, the default port is 80 (GUI parameter custom-URL). If the content type returned by the server is text/html, embedded images identified by img src tags will be fetched, too.

Http-Follow: <No|Yes> (bool, optional, default:Yes)

Specifies if embedded images are to be loaded (context type text/html only).

Http-Threads: <threads> (integer, optional, default:1)

Specifies the number of threads used for parallel downloads of embedded images (GUI parameter

max. # of parallel TCP connections)

Http-KeepAlive: (No|Yes) (bool, optional, default:Yes)

Specifies if HTTP connection keep-alive is to be used.

Http-UsePreload: (No|Yes) (bool, optional, default:No)

Specifies if a preload URL has to be loaded prior to the measurement (GUI parameter use preload URL).

Http-PreloadUrl: [http://]<host>[:port]/[<path>] (string, optional)

Specifies the preload URL similar to Http-Url (GUI parameter custom preload URL).

Http-PreloadDelay: <ms> (integer, optional, def:2000)

Specifies an additional delay after loading the preload URL (GUI parameter post preload delay).

Http-Connect-To: <ms> (integer, optional, def:60000)

Specifies the timeout interval for establishing the TCP socket connection.

Http-Recv-To: <ms> (integer, optional, def:60000)

Specifies the timeout interval for TCP socket read operations.

Http-Send-To: <ms> (integer, optional, def:60000)

Specifies the timeout interval for TCP socket write operations.

Http-Master-To: <ms> (integer, optional, def:180000)

Specifies the overall timeout for the entire HTTP operation (applied individually for the preload URL

and every main URL loop iteration).

Http-MaxSize: <bytes> (integer, optional, def:8MB)

Defines the maximum allowed size for the HTTP payload returned by the server. Sizes exceeding the allowed maximum will be rejected to prevent denial of service attacks.

Http-Method: (GET|POST) (string, optional, def:GET)

Specifies the HTTP request type. Default is GET, alternatively it is possible to send data to the

server if the POST method is specified. Please note that the data size has to be specified in this

case.

Http-DataSize: <bytes> (integer, optional, def:0)

Specifies the data size in bytes for HTTP POST requests. The parameter is not used in case of get requests.

Http-BlockSize: <bytes> (int, optional, default:~1400)

Block size for HTTP reception and transmission on windows socket level. The block size should be a

tradeoff between measurement accuracy (small blocks) and good performance (large blocks).

Optimum performance can be achieved if the block size is chosen to generate IP packets of the specified MTU size. If for example the MTU size is 1464 bytes, the optimum buffer size is 1424 bytes

(1464 - 20 bytes IP header - 20 bytes TCP header). Good measurement quality requires small blocks, e.g. for GPRS with 100 kbit/s ≈ 15 kB/s with throughput accuracy of 10 %, the buffer size

should be approximately 1500 bytes.

DontUseDefaults: <bool> (bool, optional, default:false)

Do not use parameters in [HttpDefaults] sections.

5.2.4.2 Parameters for FTP tasks

This section describes known parameters for FTP tasks.

Page 41: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 40 Technical Reference

Known parameters for FTP tasks

Name: <profile_name> (string)

Specifies the profile name to be displayed in the profile selection combo box. The name should be

unique to allow the user to identify the FTP profile.

Loop-Count: <count> (integer, optional, default:1)

Specifies the total number of loop iterations for this task (GUI parameter loops).

Loop-Pause: <ms> (integer, optional)

Specifies the pause between loop iterations (GUI parameter loop delay).

Ras-Dial: (No|Auto|Forced|Iterated) (list, optional. default:Auto)

Specifies the RAS connection mode (GUI parameter act/deact RAS conn..), possible values are: No ... The RAS connection will not be established, even if it is not active

Auto ... The RAS connection will only be established if not already active.

Forced ... The RAS connection will be disconnected if active and then re-connected in the

first loop iteration. Subsequent loop iterations will use Auto behavior, i.e. the RAS connection will be re-used if possible, a new connection will be established if the existing connection got lost.

Iterated ... The RAS connection will be disconnected if active and then re-connected in

every loop iteration.

Interactive measurements support Auto and Iterated only, depending on the checkbox act/deact RAS conn. in every loop. All values are supported in job execution, default mode is No.

Ras-Hangup: (No|Yes) (bool, optional, default:No)

Specifies the RAS hang up mode (no GUI parameter available), possible values are:

No ... The RAS connection will not be closed.

Yes ... The RAS connection will be closed in every loop iteration.

This parameter is not used in interactive measurements (RAS-Dial is used instead). The parameter is supported in job execution, default mode is No.

Note: In addition to these RAS parameters, the parameters in the [RasDefaults] sections are used.

Usually the RAS connection will be closed after a measurement, this behavior can be overruled by

setting Ras-DontClose: True in [RasDefaults].

Ras-Wait: <ms> (integer, optional)

Specifies an additional delay in ms before a RAS connection is established.

Ftp-Url: [ftp://]<host>[:port]/[<path>] (string)

Specifies the URL for the FTP transfer (GUI parameter custom URL). If nofile name is given (i.e. the URL ends with a slash), the agent id is used as the file name, otherwise the placeholder %agent% will

be replaced by the agent id.

Ftp-User: <user> (string, optional)

The user name can be specified if required (no GUI parameter available).

Ftp-Pass: <password> (string, optional)

Specifies the FTP password if required (no GUI parameter available).

Ftp-Direction: (Get|Put) (list, optional, default:Get)

Specifies the FTP direction (GUI parameter direction).

Ftp-Passive: (Yes|No) (bool, optional, default:Yes)

Specifies if passive mode is to be used (GUI parameter passive mode).

Ftp-DataSize: <bytes> (integer, mandatory for upload)

Specifies the upload data size in bytes (GUI parameter data size).

Ftp-Connect-To: <ms> (integer, optional, def:60000)

Specifies the timeout interval for establishing the TCP socket connection.

Ftp-Recv-To: <ms> (integer, optional, def:60000)

Specifies the timeout interval for TCP socket read operations.

Ftp-Send-To: <ms> (integer, optional, def:60000)

Specifies the timeout interval for TCP socket write operations.

Page 42: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 41 Technical Reference

Ftp-Noop-To: <ms> (integer, optional, def:30000)

Specifies the timeout interval until NOOP commands are transmitted on the control connection.

Ftp-Master-To: <ms> (integer, optional, def:180000)

Specifies the overall timeout for the entire operation (applied individually for every loop iteration).

Ftp-Meas-To: <ms> (integer, optional, def:none)

Specifies the measurement timeout for the download operation. Even if not all bytes have been

transferred when reaching this timeout, the measurement is gracefully terminated. Use this option to achieve constant measurement duration regardless of the current transfer speed.

Ftp-BlockSize: <bytes> (int, optional, default:~1400)

Block size for FTP reception and transmission on windows socket level. The block size should be a

tradeoff between measurement accuracy (small blocks) and good performance (large blocks). Optimum performance can be achieved if the block size is chosen to generate IP packets of the

specified MTU size. If for example the MTU size is 1464 bytes, the optimum buffer size is 1424 bytes

(1464 - 20 bytes IP header - 20 bytes TCP header). Good measurement quality requires small blocks, e.g. for GPRS with 100 kbit/s ≈ 15 kB/s with throughput accuracy of 10 %, the buffer size

should be approximately 1500 bytes.

DontUseDefaults: <bool> (bool, optional, default:false)

Do not use parameters in [FtpDefaults] sections.

5.2.4.3 Parameters for PING tasks

This section describes known parameters for PING tasks.

Known parameters for PING tasks

Name: <profile_name> (string)

Specifies the profile name to be displayed in the profile selection combo box. The name should be unique to allow the user to identify the ICMP profile.

Loop-Count: <count> (integer, optional, default:1)

Specifies the total number of loop iterations for this task (GUI parameter loops).

Loop-Pause: <ms> (integer, optional)

Specifies the pause between loop iterations (GUI parameter loop delay).

Ras-Dial: (No|Auto|Forced|Iterated) (list, optional. default:Auto)

Specifies the RAS connection mode (GUI parameter act/deact RAS conn..), possible values are: No ... The RAS connection will not be established, even if it is not active

Auto ... The RAS connection will only be established if not already active.

Forced ... The RAS connection will be disconnected if active and then re-connected in the

first loop iteration. Subsequent loop iterations will use Auto behavior, i.e. the RAS connection will be re-used if possible, a new connection will be established

if the existing connection got lost.

Iterated ... The RAS connection will be disconnected if active and then re-connected in

every loop iteration. Interactive measurements support Auto and Iterated only, depending on the checkbox act/deact RAS conn. in every loop. All values are supported in job execution, default mode is No.

Ras-Hangup: (No|Yes) (bool, optional, default:No)

Specifies the RAS hang up mode (no GUI parameter available), possible values are:

No ... The RAS connection will not be closed.

Yes ... The RAS connection will be closed in every loop iteration.

This parameter is not used in interactive measurements (RAS-Dial is used instead). The parameter is supported in job execution, default mode is No.

Note: In addition to these RAS parameters, the parameters in the [RasDefaults] sections are used.

Usually the RAS connection will be closed after a measurement, this behavior can be overruled by

setting Ras-DontClose: True in [RasDefaults].

Ras-Wait: <ms> (integer, optional)

Specifies an additional delay in ms before a RAS connection is established.

Ping-Addr: <host> (string, mandatory)

Specifies the host the packet should be sent to (GUI parameter host). Please be sure the specified host will respond to ICMP ping requests.

Page 43: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 42 Technical Reference

Note: Some personal firewalls don’t accept ping packets with 0 bytes payload, use some payload

bytes if you experience this problem.

Ping-Count: <number> (integer, optional, default:10)

Specifies the number of packets to be transmitted per block (GUI parameter packets).

Ping-Size: <bytes> (integer, optional, default:0)

Specifies the payload size in bytes (GUI parameter payload) and will directly influence the ICMP and IP packet sizes: ICMP packet size: ICMP payload size + 8 bytes ICMP header

IP packet size: ICMP packet size + 20 bytes IP header

Ping-Unix: (True|False) (bool, optional, default:False)

Specifies if windows or unix mode is to be used (GUI parameter unix mode). If you specify Unix mode packets will be transmitted with a constant time increment as specified with the advance parameter (Ping-Advance). In default (Windows) mode, a packet will be transmitted either after

a timeout (Ping-Timeout) or after the reception of a packet as specified with the advance parameter (Ping-Advance).

Ping-Advance: <ms> (integer, optional, def:1000)

Specifies the timing advance parameter (GUI parameter adv). In Unix mode this is the time increment from transmission to transmission, in Windows mode it specifies the time increment from

packet reception to the next transmission.

Ping-Timeout: <ms> (integer, optional, def:5000)

Specifies the receive timeout parameter (GUI parameter to). In Unix mode a packet is always transmitted after Ping-Advance ms, thus the timeout value is only relevant for the last (lost) packets, in Windows mode a packet is transmitted Ping-Advance ms after the reception of a packet or after a timeout.

Ping-Blocks: <number> (integer, optional, default:1)

In addition to the loop iterations, it is possible to specify a number of block iterations (GUI parameter blocks). Every block includes the specified number of packets succeeded by an idle time as specified with Ping-Delay. The RAS connection is not disconnected between blocks.

Ping-Delay: <ms> (integer, optional, def:1000)

Specifies the pause between ping blocks (GUI parameter pause).

Ping-DontAverage: <number> (integer, optional, def:0)

Specifies the number of packets not to be included in average RTT calculation. If Ping-Count is 10 and Ping-DontAverage is 4, only the last 6 packets are included in the average.

DontUseDefaults: <bool> (bool, optional, default:false)

Do not use parameters in [PingDefaults] sections.

5.2.4.4 Parameters for UDP tasks

This section describes known parameters for UDP tasks.

Known parameters for UDP tasks

Name: <profile_name> (string)

Specifies the profile name to be displayed in the profile selection combo box. The name should be unique to allow the user to identify the UDP profile.

Loop-Count: <count> (integer, optional, default:1)

Specifies the total number of loop iterations for this task (GUI parameter loops).

Loop-Pause: <ms> (integer, optional)

Specifies the pause between loop iterations (GUI parameter loop delay).

Ras-Dial: (No|Auto|Forced|Iterated) (list, optional. default:Auto)

Specifies the RAS connection mode (GUI parameter act/deact RAS conn..), possible values are: No ... The RAS connection will not be established, even if it is not active

Auto ... The RAS connection will only be established if not already active.

Forced ... The RAS connection will be disconnected if active and then re-connected in the

first loop iteration. Subsequent loop iterations will use Auto behavior, i.e. the RAS connection will be re-used if possible, a new connection will be established if the existing connection got lost.

Iterated ... The RAS connection will be disconnected if active and then re-connected in

every loop iteration.

Page 44: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 43 Technical Reference

Interactive measurements support Auto and Iterated only, depending on the checkbox act/deact RAS conn. in every loop. All values are supported in job execution, default mode is No.

Ras-Hangup: (No|Yes) (bool, optional, default:No)

Specifies the RAS hang up mode (no GUI parameter available), possible values are:

No ... The RAS connection will not be closed.

Yes ... The RAS connection will be closed in every loop iteration.

This parameter is not used in interactive measurements (RAS-Dial is used instead). The parameter is supported in job execution, default mode is No.

Note: In addition to these RAS parameters, the parameters in the [RasDefaults] sections are used.

Usually the RAS connection will be closed after a measurement, this behavior can be overruled by

setting Ras-DontClose: True in [RasDefaults].

Ras-Wait: <ms> (integer, optional)

Specifies an additional delay in ms before a RAS connection is established.

Udp-Server: <host>:<port> (string, mandatory)

Specifies the traffic server and TCP port to be used (no GUI parameter available). The remote

endpoint for UDP measurements has to be a traffic generator server supporting PocketOptimizer's traffic generator protocol, currently this is NDFA server 0.40 and above.

Udp-User: <user> (string, optional)

Specifies the user name for the traffic generator server (no GUI parameter available).

Udp-Pass: <password> (string, optional)

Specifies the password for the traffic generator server (no GUI parameter available).

Udp-DL-Size: <bytes> (integer, optional, default:64)

Specifies the downlink packet size (GUI parameter DL size).

Udp-UL-Size: <bytes> (integer, optional, default:64)

Specifies the uplink packet size (GUI parameter UL size).

Udp-DL-Rate: <pkts/sec> (float, optional, default:10)

Specifies the downlink packet rate (GUI parameter DL rate).

Udp-UL-Rate: <pkts/sec> (float, optional, default:10)

Specifies the uplink packet rate (GUI parameter UL rate).

Udp-Duration: <seconds> (float, optional, default:30)

Specifies the measurement duration (GUI parameter duration).

Udp-Connect-To: <ms> (integer, optional, def:60000)

Specifies the timeout interval for establishing the TCP control socket connection.

Udp-Recv-To: <ms> (integer, optional, def:60000)

Specifies the timeout interval for socket read operations.

Udp-Send-To: <ms> (integer, optional, def:60000)

Specifies the timeout interval for socket write operations.

Udp-Master-To: <ms> (integer, optional, def:180000)

Specifies the overall timeout for the entire operation (applied individually for every loop iteration).

DontUseDefaults: <bool> (bool, optional, default:false)

Do not use parameters in [UdpDefaults] sections.

5.2.4.5 Parameters for RAS tasks

This chapter defines parameters available for RAS tasks.

Known parameters for RAS tasks

RAS-Enry: RAS:<entry>|HwNd:<device> (string, internal)

The parameter RAS-Entry is an internal parameter that is not available in job or configuration files.

It is automatically provided by the GUI an contains the selected connection.

RAS-User: <user> (string, optional)

Specifies the RAS user name. If user name and password are empty, the RAS entry’s user is used.

RAS-Password: <password> (string, optional)

Specifies the RAS password. If user name and password are empty, the RAS entry’s password is

used.

Page 45: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 44 Technical Reference

RAS-APN: <apn> (string, optional)

Specifies the APN if required by the internet connection. The parameter is not used for RAS

connections but is required for Huawei NDIS connections.

RAS-DefUser: <user> (string, optional)

Specifies the default RAS user name. This user name is only used if RAS-User is empty and the RAS entry does not contain a user name and a password.

RAS-DefPassword: <password> (string, optional)

Specifies the default RAS password. This password is only is only used if RAS-Password is empty and the RAS entry does not contain a user name and a password.

RAS-DefAPN: <apn> (string, optional)

Specifies the default APN if required by the internet connection. The parameter is used if RAS-APN is empty.

RAS-DontClose: (Yes|No) (bool, optional, default:No)

Specifies if the RAS connection is to be kept open after an individual measurement or a job execution. The default behavior is to close any connection established by PocketOptimizer

RAS-Timeout: <ms> (integer, optional, def:60000)

Specifies the timeout for establishing a RAS connection in milliseconds.

RAS-Retries: <number> (integer, optional, default:3)

Specifies the # of retries if a connection attempt failed.

RAS-NoDial: (Yes|No) (bool, internal)

This parameter is not available in job and configuration files. It is set to true if the command line argument /norasdial is specified.

RAS-ModemInfo-Enable: (Yes|NO) (bool, optional, default:yes)

Specifies if the modem and network registration shall be queried (with AT commands or RIL).

RAS-ModemInfo-Timeout: <ms> (integer, optional, def:30000)

Specifies the timeout for querying modem/network information in milliseconds.

5.2.4.6 Parameters for AT-Command tasks

This chapter describes parameters for AT-Command tasks.

Known parameters for AT-Command tasks

RAS-Enry: RAS:<entry>|HwNd:<device> (string, internal)

The parameter RAS-Entry is an internal parameter that is not available in job or configuration files.

It is automatically provided by the GUI and contains the selected connection.

AT-Command-<nn>: <AT command> (string, optional)

Contains commands to be executed, e.g. AT-Command-00, AT-Command-01...

AT-Command-TO: <ms> (integer, optional, def:5000)

Timeout for a single AT command in milliseconds.

AT-Retries: <count> (integer, optional, def:3)

Retries for the entire sequence of AT commands.

AT-Continue: (Yes|No) (bool, optional, def:true)

Defines if the sequence of AT commands shall be continued if an error occurs. Otherwise the

sequence is interrupted and restarted at the first command.

AT-Master-To: <ms> (integer, optional, def:30000)

Total timeout for the task in milliseconds.

AT-Registration-TO: <ms> (integer, otpioanl, def:0)

Timeout to wait for network registration. If the value is set to 0, no registration check is executed.

Otherwise the modem is given the specified time to achieve network registration.

5.2.4.7 Parameters for parallel tasks

Parallel tasks only support a minimum parameter set.

Known parameters in for parallel tasks

Name: <profile_name> (string)

Specifies the profile name to be displayed in the profile selection combo box. The name should be unique to allow the user to identify the HTTP profile.

Page 46: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 45 Technical Reference

Loop-Count: <count> (integer, optional, default:1)

Specifies the total number of loop iterations for this task (GUI parameter loops).

Loop-Pause: <ms> (integer, optional)

Specifies the pause between loop iterations (GUI parameter loop delay).

Soft-Stop: <true/false/yes/no> (bool, optional)

If this parameter is set to true, all parallel tasks are soft stopped as soon as the first parallel task

ends. Soft stop is similar to the measurement timeout, i.e. the task is assumed successful even if not all bytes have been transferred. This feature can be used in parallel up/downloads to ensure the

entire measurement is parallel. Soft stop is supported by FTP tasks only.

5.3 Command line reference The Win32 edition supports several command line arguments to improve PocketOptimizer's usability for measurement campaigns.

Command line arguments

/ras:<ras-name>

Force use of the specified RAS connection, the value overrides the previous input on the tab sheet

user data. An error is generated if the connection does not exist.

/job:<job-name>

Force use of the specified job. The argument has to be the job's file name without path and

extension and overrides the job selection in the job form. An error is generated if the job does not exist.

/initstr:<modem init string>

Force the specified modem init string. This function is only available if /ras is used. The value

overrides the modem settings for the RAS connection's modem in the registry before establishing the connection. Write access to SYSTEM\\CurrentControlSet\\Control\\Class\\{4D36E96D-E325-

11CE-BFC1-08002BE10318} is required.

/masterlog:<file>

Write master log output to the specified file. The absolute file name should be given.

One line per task is appended to the master log file to check job execution. It is recommended to use WinTail or a similar application to watch the output of the master log file during or after a

measurement.

/needgps

Force GPS coordinates. An error will be generated if GPS coordinates are not available after a 30

second timeout.

/needlocation

Force input of a location in the tab sheet user data. If the argument is specified, a previous location is cleared and the user is forced to enter a location before starting a job. Alternatively the location

can be fetched from a configuration file if /autolocation is specified.

/needoperator

Force input of an operator in the tab sheet user data. If the argument is specified, a previous operator is cleared and the user is forced to enter an operator before starting a job. Alternatively

the location can be queried from the RAS connection's associated modem if /autooperator is

specified.

/clearlocation

Clear the content of the location in the tab sheet user data (automatically done if /autolocation is specified).

/clearoperator

Clear the content of the operator in the tab sheet user data (automatically done if /autooperator is specified).

/autoinitstr

Force modem initialization string for current operator. This function is only available if /ras is

specified. PocketOptimizer will try to query the mobile's IMSI and determine the associated operator. If the mobile is associated a modem init string, it will be forced for the RAS connection's

mobile (see /initstr). Please refer to chapter 5.1.2.3, section [Operators] for details on operator configuration.

Page 47: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 46 Technical Reference

/autooperator

Enable automatic operator detection. This function is only available if /ras is specified.

PocketOptimizer will try to query the mobile's IMSI and determine the associated operator. An error will be generated if the operator cannot be determined.

Please refer to section chapter 5.1.2.3, section [Operators] for details on operator configuration.

/autolocation

Enable automatic location determination. PocketOptimizer matches the GPS coordinates to the coordinates in the file coordinates.csv and selects the proper location. An error will be generated if the operator cannot be determined.

Please refer to section 5.1.6 for details on location configuration.

/autorun

Automatically execute the job specified in the /job argument. PocketOptimizer will automatically terminate after the job has finished.

/silent

Prevent modal error messages for unattended operation. If the argument is not specified, a

message box will indicate errors due to command line arguments and block the application until the

user acknowledges it. If the argument is specified, no message box will be displayed, the error will only be written to the master log file. This avoids blocking unattended operation in measurement

scripts.

5.4 KPI and report reference This section describes the KPIs automatically calculated when running job measurements.

5.4.1 Global RAS KPIs

This chapter describes RAS KPIs that are globally calculated for the entire job.

5.4.1.1 KPI definition for global RAS measurements

• Metric 1000: RAS Activation Failure Ratio (PI520c) trigger points: same as in Metric 1003 timeout: defined in job file calculation: # unsuccessful attempts (PDPC) / # total attempts (PDPC)

• Metric 1001: RAS Activation Count (PI520x) trigger points: same as in Metric 1003 timeout: not required calculation: # total attempts (PDPC)

• Metric 1002: RAS Retry Count trigger points: same as in Metric 1003 timeout: not required calculation: # total attempts (PDPC) - 1

• Metric 1003: Last RAS Activation Time (PI521b) start trigger: request for RAS connection stop trigger: successful establishment of RAS connection calculation: t(stop trigger) – t(start trigger) ≈ t(PDPC Accept) - t(PCPC Request)

• Metric 1004: Total RAS Activation Count start trigger: request for RAS connection stop trigger: successful establishment of RAS connection calculation: sum t(stop trigger) – t(start trigger) for all attempts

5.4.1.2 Report/KPI transmission for RAS measurement s

ticket/scenario/metrics/metric.id=1000 m.1000, PDP C Activation Failure [1] ticket/scenario/metrics/metric.id=1001 m.1001, PDP C Activation Count [1] ticket/scenario/metrics/metric.id=1002 m.1002, PDP C Retry Count [1] ticket/scenario/metrics/metric.id=1003 m.1003, las t PDPC Activation Time [seconds] ticket/scenario/metrics/metric.id=1004 m.1004, tot al PDPC Activation Time [seconds]

5.4.1.3 Sample job segment for RAS measurements

Note: The parameter Scenario-Id has to be specified in a RAS-Connect task to enable reporting of RAS KPIs.

... [TASK] Task-Type: RAS-Connect Scenario-Id: 110

Page 48: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 47 Technical Reference

...

5.4.1.4 Sample report file for global RAS measureme nts

<?xml version="1.0" encoding="ISO-8859-1" standalon e="yes" ?> <ticket version="2.0"> <instance>qtstest</instance> ... <scenario id="110"> <mtime>2006-09-30T00:12:03+02:00</mtime> <agent id="102">PocketOptimizer</agent> <metric id="1000" comment="ras-fail-ratio">0. 000</metric> <metric id="1001" comment="ras-total-cnt">1</ metric> <metric id="1002" comment="ras-retry-cnt">0</ metric> <metric id="1003" comment="ras-act-time" unit ="ras-act-time">3.672</metric> <metric id="1004" comment="ras-act-time-total " unit="ras-act-time-total">3.672</metric> </scenario> </ticket>

5.4.2 Common Metrics and Texts for all measurements

This chapter describes the KPIs that are calculated for all tasks in measurement jobs.

5.4.2.1 Metric and text definition for all measurem ents

• Metric 300: Operator id calculation: the operator id selected in the User data tab sheet

• Text 301: User name calculation: the user entered in the User data tab sheet

• Text 302: Location calculation: the location entered in the User data tab sheet

• Text 303: Cell Id calculation: the cell id entered in the User data tab sheet

• Text 304: IP address(es) calculation: the client's IP addresses

• Text 305: Job measurement time calculation: the local time in XML format when the job was started

• Text 306: Machine name calculation: the windows machine name

• Text 307: User name calculation: the windows logon user name

5.4.2.2 Text definition for all measurements (mobil e status for Win32 only)

These texts are only available for the Win32 platform. On the Pocket PC platform it is currently not supported to access the mobile directly, thus the information is not available and the tests are not

created.

• Text 120: IMSI calculation: AT+CIMI sent to mobile or RIL_GetUserIdentity used

• Text 121: IMEI calculation: AT+CGSN sent to mobile or RIL_GetEquipmentInfo used

• Text 123: Signal power in mobile (e.g. -105) calculation: AT+CSQ sent to mobile or RIL_GetSignalQuality used

• Text 124: MCC and MNC (e.g. 232-01) calculation: AT+COPS sent to mobile or RIL_GetCellTowerInfo used

• Text 125: LAC (location area code) in hex format calculation: AT+CREG sent to mobile or RIL_GetCellTowerInfo (not all mobiles support extended network info)

• Text 126: CI (cell id) in hex format calculation: AT+CREG sent to mobile or RIL_GetCellTowerInfo (not all mobiles support extended network info)

• Text 127: SysInfo (e.g. 2,3,0,5,1,,4) calculation: AT^SYSINFO sent to mobile (not all mobiles support extended network registration info), not available with RIL

• Text 128: SysType (e.g. UMTS) calculation: AT^SYSINFO decoded or RIL_GetCurrentSystemType used possible values: AT. AMPS, CDMA, GSM, HDR, UMTS, GPS, NONE, N/A RIL: IS95A, IS95B, CDMA, GSM, GPRS, EDGE, EVDO, EVDV, UMTS, HSPA, NONE, N/A

• Text 129: CGI calculation: cell global identifier CCC-NNN-LLLLL-IIIII, e.g. 232-001-17003-30900

Page 49: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 48 Technical Reference

5.4.2.3 Report/KPI transmission for all measurement s

ticket/scenario/metrics/metric.id= 300 Operator Id [1] ticket/scenario/metrics/text.id= 301 User name ticket/scenario/metrics/text.id= 302 Location ticket/scenario/metrics/text.id= 303 Cell Id ticket/scenario/metrics/text.id= 304 IP Address( es) ticket/scenario/metrics/text.id= 305 Job time ticket/scenario/metrics/text.id= 120 IMSI ticket/scenario/metrics/text.id= 121 IMEI ticket/scenario/metrics/text.id= 123 signal leve l ticket/scenario/metrics/text.id= 124 MCC-MNC ticket/scenario/metrics/text.id= 125 LAC ticket/scenario/metrics/text.id= 126 CI ticket/scenario/metrics/text.id= 127 SysInfo ticket/scenario/metrics/text.id= 128 SysType ticket/scenario/metrics/text.id= 129 CGI

5.4.2.4 Sample job file for common metrics and text s

N/A

5.4.2.5 Sample report file for common metrics and t exts

<?xml version="1.0" encoding="ISO-8859-1" standalon e="yes" ?> <ticket version="2.0"> <instance>pocketopt</instance> <scenario id="111"> <mtime>2005-11-13T01:23:28+01:00</mtime> <agent id="101">PocketOptimizer</agent> ... <metrics> ... <metric id="300" comment="operator">23201</me tric> <text id="301" comment="user">your user name< /text> <text id="302" comment="location">your locati on</text> <text id="303" comment="cell-id">your cell id </text> <text id="304" comment="IP-addrs">128.130.6.7 </text> <text id="305" comment="jobtime">2005-11-13T0 1:23:28+01:00</text> <text id="306" comment="machine">CURSA</text> <text id="307" comment="username">test</text> <text id="120" comment="imsi">232014520069421 </text> <text id="121" comment="imei">359298010236203 </text> <text id="124" comment="mcc_mnc">232-01</text > <text id="125" comment="creg_lac">426B</text> <text id="126" comment="creg_ci">278B4</text> <text id="127" comment="sysinfo">2,3,0,5,1,,4 </text> <text id="128" comment="systype">UMTS</text> <text id="129" comment="cgi">232-001-17003-30 900</text> </metrics> </scenario> </ticket>

5.4.3 KPIs for HTTP measurements

This chapter describes the KPIs that are calculated for HTTP tasks in measurement jobs.

5.4.3.1 KPI definition for HTTP measurements

• KPI520: Service Non Accessibility calculation: 1 - (1-PI520c)(1-PI520d)

• KPI521: Service Access Time calculation: PI521b + PI521c

• KPI522: Data Transfer Cut-off Ratio trigger points: as in PI523a timeout: defined in job file calculation: # incomplete transfers (timeout) / # total transfers

• KPI523: Mean User Data Rate calculation: TCP data bytes including HTTP header / PI523a . 8 bits/byte

• KPI524: Session Failure Ratio calculation: 1 – (1-PI520d)(1-KPI522)

• KPI525: Session Time calculation: PI521c + PI523a

• PI520d: IP Service Access Failure Ratio start trigger: initiation of socket connect() to HTTP server stop trigger: reception of first socket data byte (HTTP … 200 OK)

Page 50: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 49 Technical Reference

calculation: # unsuccessful attempts (SVC) / # total attempts (SVC)

• PI521c: IP Service Access Time trigger points: same as in PI520d calculation: t(stop trigger) – t(start trigger) = t(first response) - t(first request)

• PI523a: Data Transfer Time start trigger: reception of first socket data byte (HTTP… 200 OK) stop trigger: reception of last socket data byte calculation: t(stop trigger) - t(start trigger) = t(last rx packet) – t(first rx packet)

• Metric 5012: Peak Throughput (2s) start trigger: same PI523a stop trigger: same PI523a calculation: please refer to chapter 5.4.8.1

• Metric 5021: DNS lookup time start trigger: before DNS lookup (i.e. gethostbyname() API call) stop trigger: after DNS lookup (i.e. gethostbyname() API call) calculation: t(stop trigger) – t(start trigger)

• Metric 5022: TCP connect time start trigger: before TCP connect (i.e. connect() API call, i.e. before TCP SYN packet) stop trigger: after TCP lookup (i.e. connect() API call, i.e. after TCP SYN/ACK response) calculation: t(stop trigger) – t(start trigger)

Note: Time consumption and data transferred for fetching preload-URLs will not be considered in KPI

calculation.

Note: In addition to the HTTP KPIs described here, TCP KPIs can be generated if the NetCap sniffer

and TShark decoding is used (Win32 only).

5.4.3.2 Report/KPI transmission for HTTP measuremen ts

ticket/scenario/qi: 10 on succe ss, 0 otherwise [1] ticket/scenario/rating: always 1 [1] ticket/scenario/metrics/metric.id=5204 PI520d, IP Service Access Failure Ratio [1] ticket/scenario/metrics/metric.id=5213 PI521c, IP Service Access Time [seconds] ticket/scenario/metrics/metric.id=5200 KPI520, Ser vice Non Accessibility [1] ticket/scenario/metrics/metric.id=5210 KPI521, Ser vice Access Time [seconds] ticket/scenario/metrics/metric.id=5220 KPI522, Dat a Transfer Cut-off Ratio [1] ticket/scenario/metrics/metric.id=5231 PI523a, Dat a Transfer Time [seconds] ticket/scenario/metrics/metric.id=5230 KPI523, Mea n User Data Rate, [bit/s] ticket/scenario/metrics/metric.id=5239 PI523x, Dat a Byte Count [bytes] ticket/scenario/metrics/metric.id=5240 KPI524, Ses sion Failure Ratio [1] ticket/scenario/metrics/metric.id=5250 KPI525, Ses sion Time [seconds] ticket/scenario/metrics/metric.id=5012 M.5012, Pea k Throughput (2s) [bit/s]

5.4.3.3 Sample job file for HTTP measurements

[Global] Description: Test job HTTP Version: 0.0.1 Iterations: 1 Reporting: File ; Off/File/Http Report-System: pocketopt WriteLogFile: yes [TASK] Task-Type: RAS-Connect [TASK] Task-Type: HTTP Task-Comment: 100kB HTTP download Scenario-Id: 111 Loop-Count: 1 Http-Url: http://194.48.139.238/merlin/HT TP_Files/100KB.dl [TASK] Task-Type: RAS-Hangup

5.4.3.4 Sample report file for HTTP measurements

<?xml version="1.0" encoding="ISO-8859-1" standalon e="yes" ?> <ticket version="2.0"> <instance>pocketopt</instance> <scenario id="111"> <mtime>2005-11-13T01:23:28+01:00</mtime> <agent id="101">PocketOptimizer</agent> <location id="" type="WGS84"> <longitude>48.22765</longitude> <latitude>16.39849</latitude>

Page 51: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 50 Technical Reference

</location> <duration>7.076</duration> <comment>loop 1, block 2, loop 1 (http)</commen t> <qi>10</qi> <rating>1</rating> <metrics> <metric id="5204" comment="520d-ipsvc-acc-fai l-ratio" unit="">0</metric> <metric id="5213" comment="521c-ipsvc-acc-tim e" unit="sec">0.784</metric> <metric id="5200" comment="520-svc-non-acc-ra tio" unit="">0</metric> <metric id="5210" comment="521-svc-acc-time" unit="sec">0.784</metric> <metric id="5220" comment="522-data-xfer-cuto ff-ratio" unit="">0</metric> <metric id="5231" comment="523a-data-xfer-tim e" unit="sec">6.174</metric> <metric id="5230" comment="523-mean-data-rate " unit="bit/s">16630.0</metric> <metric id="5239" comment="523x-data-bytes" u nit="bytes">102674</metric> <metric id="5240" comment="524-session-fail-r atio" unit="">0</metric> <metric id="5250" comment="525-session-time" unit="sec">6.958</metric> <metric id="5012" comment="peak_thput_2s" uni t="bit/s">18234.0</metric> <metric id="300" comment="operator">23201</me tric> <text id="301" comment="user">your user name< /text> <text id="302" comment="location">your locati on</text> <text id="303" comment="cell-id">your cell id </text> <text id="304" comment="IP-addrs">128.130.6.7 </text> <text id="305" comment="jobtime">2005-11-13T0 1:23:28+01:00</text> <text id="120" comment="imsi">232014520069332 </text> <text id="121" comment="imei">356936000650783 ,NZ2A5BP032</text> <text id="123" comment="signal_dbm">-105 dBm< /text> <text id="124" comment="mcc_mnc">232-01</text > <text id="125" comment="creg_lac">0002</text> <text id="126" comment="creg_ci">5803</text> </metrics> </scenario> </ticket>

5.4.4 KPIs for FTP measurements

This chapter describes the KPIs that are calculated for FTP tasks in measurement jobs.

5.4.4.1 KPI definition for FTP measurements

• KPI520: Service Non Accessibility calculation: 1 - (1-PI520c)(1-PI520d)

• KPI521: Service Access Time calculation: PI521b + PI521c

• KPI522: Data Transfer Cut-off Ratio trigger points: as in PI523a timeout: defined in job file calculation: # incomplete transfers (timeout) / # total transfers

• KPI523: Mean User Data Rate [bits/s] calculation: data file size / PI523a · 8 bits/byte

• KPI524: Session Failure Ratio calculation: 1 – (1-PI520d)(1-KPI522)

• KPI525: Session Time [s] calculation: PI521c + PI523a

• PI520d: IP Service Access Failure Ratio start trigger DL: initiation of socket connect() to FTP server (control connection) stop trigger DL: reception of first socket data byte (data connection) start trigger UL: initiation of socket connect() to FTP server (control connection) stop trigger UL: transmission of first socket data byte (data connection) calculation: # unsuccessful attempts (SVC) / # total attempts (SVC)

• PI521c: IP Service Access Time [s] trigger points: same as in PI520d calculation: t(stop trigger) – t(start trigger) = t(first response) - t(first request)

• PI523a: Data Transfer Time [s] start trigger DL: reception of first socket data byte (data connection) stop trigger DL: reception of last socket data byte (data connection) start trigger UL: transmission of first socket data byte (data connection) stop trigger UL: socket tx buffer empty and successfully transmitted (data connection) calculation: t(stop trigger) - t(start trigger) = t(last rx packet) – t(first rx packet)

• Metric 5012: Peak Throughput (2s) start trigger: same PI523a stop trigger: same PI523a calculation: please refer to chapter 5.4.8.1

• Metric 5021: DNS lookup time start trigger: before DNS lookup (i.e. gethostbyname() API call)

Page 52: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 51 Technical Reference

stop trigger: after DNS lookup (i.e. gethostbyname() API call) calculation: t(stop trigger) – t(start trigger)

• Metric 5022: TCP connect time start trigger: before TCP connect (i.e. connect() API call, i.e. before TCP SYN packet) stop trigger: after TCP lookup (i.e. connect() API call, i.e. after TCP SYN/ACK response) calculation: t(stop trigger) – t(start trigger)

Note: In addition to the FTP KPIs described here, TCP KPIs can be generated if the NetCap sniffer and TShark decoding is used (Win32 only).

5.4.4.2 Report/KPI transmission for FTP measurement s

ticket/scenario/qi: 10 on succe ss, 0 otherwise [1] ticket/scenario/rating: always 1 [1] ticket/scenario/metrics/metric.id=5204 PI520d, IP Service Access Failure Ratio [1] ticket/scenario/metrics/metric.id=5213 PI521c, IP Service Access Time [seconds] ticket/scenario/metrics/metric.id=5200 KPI520, Ser vice Non Accessibility [1] ticket/scenario/metrics/metric.id=5210 KPI521, Ser vice Access Time [seconds] ticket/scenario/metrics/metric.id=5220 KPI522, Dat a Transfer Cut-off Ratio [1] ticket/scenario/metrics/metric.id=5231 PI523a, Dat a Transfer Time [seconds] ticket/scenario/metrics/metric.id=5230 KPI523, Mea n User Data Rate [bit/s] ticket/scenario/metrics/metric.id=5239 PI523x, Dat a Byte Count [bytes] ticket/scenario/metrics/metric.id=5240 KPI524, Ses sion Failure Ratio [1] ticket/scenario/metrics/metric.id=5250 KPI525, Ses sion Time [seconds] ticket/scenario/metrics/metric.id=5012 M.5012, Pea k Throughput (2s) [bit/s]

5.4.4.3 Sample job file for FTP measurements

[Global] Description: Test job HTTP Version: 0.0.1 Iterations: 1 Reporting: File ; Off/File/Http Report-System: pocketopt WriteLogFile: yes [TASK] Task-Type: RAS-Connect [TASK] Task-Type: FTP Task-Comment: 100kB FTP upload Scenario-Id: 112 Loop-Count: 1 Ftp-Url: ftp://merlin.mobilkom.at/upload .txt Ftp-DataSize: 102400 Ftp-Direction: Put Ftp-User: user Ftp-Pass: pass [TASK] Task-Type: RAS-Hangup

5.4.4.4 Sample report file for FTP measurements

<?xml version="1.0" encoding="ISO-8859-1" standalon e="yes" ?> <ticket version="2.0"> <instance>pocketopt</instance> <scenario id="112"> <mtime>2005-11-13T01:31:20+01:00</mtime> <agent id="101">PocketOptimizer</agent> <location id="" type="WGS84"> <longitude>48.22765</longitude> <latitude>16.39849</latitude> </location> <duration>47.070</duration> <comment>loop 1, block 2, loop 1 (ftp)</comment > <qi>10</qi> <rating>1</rating> <metrics> <metric id="5204" comment="520d-ipsvc-acc-fai l-ratio" unit="">0</metric> <metric id="5213" comment="521c-ipsvc-acc-tim e" unit="sec">4.656</metric> <metric id="5200" comment="520-svc-non-acc-ra tio" unit="">0</metric> <metric id="5210" comment="521-svc-acc-time" unit="sec">4.656</metric> <metric id="5220" comment="522-data-xfer-cuto ff-ratio" unit="">0</metric> <metric id="5231" comment="523a-data-xfer-tim e" unit="sec">31.172</metric> <metric id="5230" comment="523-mean-data-rate " unit="bit/s">2627999.487</metric> <metric id="5239" comment="523x-data-bytes" u nit="bytes">10240000</metric> <metric id="5240" comment="524-session-fail-r atio" unit="">0</metric>

Page 53: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 52 Technical Reference

<metric id="5250" comment="525-session-time" unit="sec">35.828</metric> <metric id="5012" comment="peak_thput_2s" uni t="bit/s">2813234</metric> <metric id="300" comment="operator">23201</me tric> <text id="301" comment="user">your user name< /text> <text id="302" comment="location">your locati on</text> <text id="303" comment="cell-id">your cell id </text> <text id="304" comment="IP-addrs">128.130.6.7 </text> <text id="305" comment="jobtime">2005-11-13T0 1:31:20+01:00</text> <text id="120" comment="imsi">232014520069332 </text> <text id="121" comment="imei">356936000650783 ,NZ2A5BP032</text> <text id="123" comment="signal_dbm">-105 dBm< /text> <text id="124" comment="mcc_mnc">232-01</text > <text id="125" comment="creg_lac">0002</text> <text id="126" comment="creg_ci">5803</text> </metrics> </scenario> </ticket>

5.4.5 KPIs for ICMP measurements

This chapter describes the KPIs that are calculated for ICMP tasks in measurement jobs.

5.4.5.1 KPI definition for ICMP measurements

• Metric 2001: ping tx count # of ping requests transmitted

• Metric 2002: ping packets lost # of ping responses lost

• Metric 2003: ping average RTT average round trip time

• Metric 2004: ping min RTT minimum round trip time

• Metric 2005: ping max RTT maximum round trip time

5.4.5.2 Report/KPI transmission for ICMP measuremen ts

ticket/scenario/qi: 10 * packet s_rx / packets_tx ticket/scenario/rating: always 1 [1] ticket/scenario/metrics/metric.id=2001 ping tx cou nt [pkts] ticket/scenario/metrics/metric.id=2002 ping packet s lost [pkts] ticket/scenario/metrics/metric.id=2003 ping avg RT T [seconds] ticket/scenario/metrics/metric.id=2004 ping min RT T [seconds] ticket/scenario/metrics/metric.id=2005 ping max RT T [seconds]

5.4.5.3 Sample job file for ICMP measurements

[Global] Description: Test job HTTP Version: 0.0.1 Iterations: 1 Reporting: File ; Off/File/Http Report-System: pocketopt WriteLogFile: yes [TASK] Task-Type: RAS-Connect [TASK] Task-Type: ICMP Task-Comment: 20 pings Scenario-Id: 113 Loop-Count: 1 Loop-Pause: 1000 Ras-Dial: Auto Ping-Addr: www.mobilkom.at Ping-Count: 20 Ping-Size: 0 Ping-Unix: True Ping-Advance: 500 Ping-Timeout: 4000 Ping-Blocks: 1 Ping-Delay: 5000 [TASK] Task-Type: RAS-Hangup

5.4.5.4 Sample report file for ICMP measurements

<?xml version="1.0" encoding="ISO-8859-1" standalon e="yes" ?> <ticket version="2.0"> <instance>pocketopt</instance>

Page 54: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 53 Technical Reference

<scenario id="113"> <mtime>2005-11-13T01:33:43+01:00</mtime> <agent id="101">PocketOptimizer</agent> <location id="" type="WGS84"> <longitude>48.22765</longitude> <latitude>16.39849</latitude> </location> <duration>10.222</duration> <comment>loop 1, block 2, loop 1 (icmp)</commen t> <qi>10</qi> <rating>1</rating> <metrics> <metric id="2001" comment="2001-ping-tx-count " unit="">20</metric> <metric id="2002" comment="2002-ping-lost" un it="">0</metric> <metric id="2003" comment="2003-ping-avg-rtt" unit="sec">0.183</metric> <metric id="2004" comment="2004-ping-min-rtt" unit="sec">0.181</metric> <metric id="2005" comment="2005-ping-max-rtt" unit="sec">0.187</metric> <metric id="300" comment="operator">23201</me tric> <text id="301" comment="user">your user name< /text> <text id="302" comment="location">your locati on</text> <text id="303" comment="cell-id">your cell id </text> <text id="304" comment="IP-addrs">128.130.6.7 </text> <text id="305" comment="jobtime">2005-11-13T0 1:33:43+01:00</text> <text id="120" comment="imsi">232014520069332 </text> <text id="121" comment="imei">356936000650783 ,NZ2A5BP032</text> <text id="123" comment="signal_dbm">-105 dBm< /text> <text id="124" comment="mcc_mnc">232-01</text > <text id="125" comment="creg_lac">0002</text> <text id="126" comment="creg_ci">5803</text> </metrics> </scenario> </ticket>

5.4.6 KPIs for UDP measurements

This chapter describes the KPIs that are calculated for UDP tasks in measurement jobs.

5.4.6.1 KPI definition for UDP measurements

• PIx11: UDP DL packet count calculation: # of downlink packets (nominal value: DL packet rate . duration)

• PIx12: UDP DL packet loss calculation: # of downlink packets lost

• PIx13: UDP DL throughput average downlink throughput [bits/s] start trigger: reception of first packet on client stop trigger: reception of last packet on client calculation: DL rx_packet_cnt * DL packet size / (t(stop trigger) – t(start trigger) + 1 / dl_packet_rate) · 8 bits/byte

• PIx14: UDP DL jitter average downlink jitter [s] calculation: sqrt( sum( (rx_stamp_i - rx_stamp_i-1) - (tx_stamp_i - tx_stamp_i-1) ) / (1-rx_packet_cnt) )

• PIx15: UDP DL RTT average downlink round trip time calculation: avg( ( (ul_rx_stamp - ul_tx_stamp) + (dl_rx_stamp - dl_tx_stamp) )

• PIx21: UDP UL packet count # of uplink packets (UL rate . duration) calculation:

• PIx22: UDP UL packet loss # of uplink packets lost calculation:

• PIx23: UDP UL throughput average uplink throughput [bits/s] start trigger: reception of first packet on server stop trigger: reception of last packet on server calculation: UL RX packet count * DL packet size / (t(stop trigger) – t(start trigger) + 1 / ul_packet_rate) · 8 bits/byte

• PIx24: UDP UL jitter average uplink jitter [s] calculation: sqrt( sum( (rx_stamp_i - rx_stamp_i-1) - (tx_stamp_i - tx_stamp_i-1) ) / (1-rx_packet_cnt) )

• PIx25: UDP DL RTT average uplink round trip time [s] calculation: avg( ( (dl_rx_stamp - dl_tx_stamp) + (ul_rx_stamp - ul_tx_stamp) )

5.4.6.2 Report/KPI transmission for UDP measurement s

ticket/scenario/qi: 10 * packet s_rx / packets_tx ticket/scenario/rating: always 1 [1] ticket/scenario/metrics/metric.id=2111 UDP DL pack et count [pkts] ticket/scenario/metrics/metric.id=2112 UDP DL pack et loss [pkts] ticket/scenario/metrics/metric.id=2113 UDP DL thro ughput [bits/s] ticket/scenario/metrics/metric.id=2114 UDP DL jitt er [seconds] ticket/scenario/metrics/metric.id=2115 UDP DL RTT [seconds] ticket/scenario/metrics/metric.id=2121 UDP UL pack et count [pkts] ticket/scenario/metrics/metric.id=2122 UDP UL pack et loss [pkts]

Page 55: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 54 Technical Reference

ticket/scenario/metrics/metric.id=2123 UDP UL thro ughput [bits/s] ticket/scenario/metrics/metric.id=2124 UDP UL jitt er [seconds] ticket/scenario/metrics/metric.id=2125 UDP UL RTT [seconds]

5.4.6.3 Sample job file for UDP measurements

[Global] Description: Test job HTTP Version: 0.0.1 Iterations: 1 Reporting: File ; Off/File/Http Report-System: pocketopt WriteLogFile: yes [TASK] Task-Type: RAS-Connect [TASK] Task-Type: UDP Task-Comment: 10 sec UDP test Scenario-Id: 114 Loop-Count: 1 Udp-DL-Size: 64 Udp-UL-Size: 64 Udp-DL-Rate: 10 Udp-UL-Rate: 10 Udp-Duration: 10 Udp-Server: merlin.mobilkom.at:8877 Udp-User: user Udp-Pass: pass [TASK] Task-Type: RAS-Hangup

5.4.6.4 Sample report file for UDP measurements

<?xml version="1.0" encoding="ISO-8859-1" standalon e="yes" ?> <ticket version="2.0"> <instance>pocketopt</instance> <scenario id="114"> <mtime>2005-11-13T01:50:06+01:00</mtime> <agent id="101">PocketOptimizer</agent> <location id="" type="WGS84"> <longitude>48.22765</longitude> <latitude>16.39849</latitude> </location> <duration>27.403</duration> <comment>loop 1, block 2, loop 1 (udp)</comment > <qi>10</qi> <rating>1</rating> <metrics> <metric id="2011" comment="2111-udp-dl-cnt-fu ll" unit="pkts">100</metric> <metric id="2012" comment="2112-udp-dl-loss" unit="pkts">0</metric> <metric id="2013" comment="2113-udp-dl-thput" unit="bits/s">645.480</metric> <metric id="2014" comment="2114-udp-dl-jitter " unit="sec">0.047</metric> <metric id="2015" comment="2115-udp-dl-rtt" u nit="sec">0.206</metric> <metric id="2021" comment="2121-udp-ul-cnt-fu ll" unit="pkts">100</metric> <metric id="2022" comment="2122-udp-ul-loss" unit="pkts">0</metric> <metric id="2023" comment="2123-udp-ul-thput" unit="bits/s">646.523</metric> <metric id="2024" comment="2124-udp-ul-jitter " unit="sec">0.013</metric> <metric id="2025" comment="2125-udp-ul-rtt" u nit="sec">0.196</metric> <metric id="300" comment="operator">23201</me tric> <text id="301" comment="user">your user name< /text> <text id="302" comment="location">your locati on</text> <text id="303" comment="cell-id">your cell id </text> <text id="304" comment="IP-addrs">128.130.6.7 </text> <text id="305" comment="jobtime">2005-11-13T0 1:50:06+01:00</text> <text id="120" comment="imsi">232014520069332 </text> <text id="121" comment="imei">356936000650783 ,NZ2A5BP032</text> <text id="123" comment="signal_dbm">-105 dBm< /text> <text id="124" comment="mcc_mnc">232-01</text > <text id="125" comment="creg_lac">0002</text> <text id="126" comment="creg_ci">5803</text> </metrics> </scenario> </ticket>

Page 56: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 55 Technical Reference

5.4.7 KPIs for TCP connections

These KPIs are only available for the Win32 edition if UseSniffer and UseTShark are enabled.

5.4.7.1 Handling of TCP connections

All TCP connections are analyzed individually, the KPIs are calculated for both directions

independently. PocketOptimizer reports a maximum of 2 different connections types with 2 directions each:

• primary connection(s): these are the main data connections, i.e. the FTP data connections and the HTTP connections)

• secondary connection(s): these are additional connections, for example the FTP control connection

The connection assignment is:

• HTTP measurements KPI 61xx: average for all HTTP connections - DL (main data flow) KPI 62xx: average for all HTTP connections - UL

• FTP DL measurements KPI 61xx: FTP data connection - DL (main data flow) KPI 62xx: FTP data connection - UL

KPI 63xx: FTP control connection - DL

KPI 64xx: FTP control connection - UL • FTP UL measurements KPI 61xx: FTP data connection - UL (main data flow)

KPI 62xx: FTP data connection - DL KPI 63xx: FTP control connection - DL

KPI 64xx: FTP control connection - UL

5.4.7.2 KPI definition for UDP measurements

• KPI 6x01: average IP packet length description: average of all IP packet sizes for the analyzed TCP stream in one direction

• KPI 6x02: maximum IP packet length description: maximum of all IP packet sizes for the analyzed TCP stream in one direction

• KPI 6x03: fraction of packets with maximum IP packet length description: fraction of packets utilizing the maximum packet size calculation: # of packets with IP size = max IP packet size / # of packets total

• KPI 6x11: number of data packets description: # of packets not including the first SYN packets and the packets from RST or FIN if the connection is terminated with RST pending retransmissions for data before the sequence number at the occurrence of RST are included in the evaluation, all other

• KPI 6x12: number of re-transmitted data packets description: # of packets with SEQ out of order packets are selected as for KPI 6x11

• KPI 6x13: fraction of re-transmitted data packets description: the fraction of re-transmitted data packets over the number of data packets packets are selected as for KPI 6x11 calculation: KPI 6x13 / KPI 6x12

• KPI 6x14: fraction of re-transmitted or lost data bytes description: the fraction of re-transmitted or lost data bytes this value includes lost packets that are not re-transmitted and cannot be determined in KPI 6x13 packets are selected as for KPI 6x11 calculation: max(KPI613, # re-transmitted or lost TCP payload bytes / # TCP data bytes)

• KPI 6x21: maximum TCP window size description: the maximum TCP window size for the data direction (that is indicated in the reverse direction) packets are selected as for KPI 6x11

• KPI 6x22: average TCP window size description: the average TCP window size for the data direction (that is indicated in the reverse direction) packets are selected as for KPI 6x11

• KPI 6x23: average remaining TCP window size description: the average TCP window size for re-transmitted packets (that is indicated in the reverse direction)

• KPI 6x31: average inter-packet time description: average inter-packet (send or arrival) time

• KPI 6x32: standard deviation of inter-packet time description: standard deviation of inter-packet (send or arrival) time

• KPI 6x41: re-transmission delay lower bound (DL only) description: average delay from packet loss (if detected) to retransmission (lower bound)

Page 57: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 56 Technical Reference

the time is calculated from the packet following the packet loss to the re-transmitted packet

• KPI 6x42: re-transmission delay upper bound (DL only) description: average delay from packet loss (if detected) to retransmission (upper bound) the time is calculated from the packet preceeding the packet loss to the re-transmitted packet

5.4.7.3 Report/KPI transmission for UDP measurement s

KPIs can be transmitted in four groups depending on the measurement task

• 61xx: primary connection(s), main direction • 62xx: primary connection(s), reverse direction • 63xx: secondary connection(s), DL • 64xx: secondary connection(s), UL

ticket/scenario/metrics/text.id=6x00 description of connection(s) ticket/scenario/metrics/metric.id=6x01 avg. IP pac ket len [bytes] ticket/scenario/metrics/metric.id=6x02 max. IP pac ket len [bytes] ticket/scenario/metrics/metric.id=6x03 frac. of pa ckets with max. IP packet len [1] ticket/scenario/metrics/metric.id=6x11 number of p ackets [pkts] ticket/scenario/metrics/metric.id=6x12 number of r e-transmitted packets [pkts] ticket/scenario/metrics/metric.id=6x13 frac. of re transmitted packets [1] ticket/scenario/metrics/metric.id=6x14 frac. of re transmitted/lost bytes [1] ticket/scenario/metrics/metric.id=6x21 max. TCP wi ndow size [bytes] ticket/scenario/metrics/metric.id=6x22 avg. TCP wi ndow size [bytes] ticket/scenario/metrics/metric.id=6x23 avg. rem. T CP window size [bytes] ticket/scenario/metrics/metric.id=6x31 avg. inter- packet time [s] ticket/scenario/metrics/metric.id=6x32 stddev. int er-packet time [s] ticket/scenario/metrics/metric.id=6x41 retransmiss ion delay (lower bound) [s] ticket/scenario/metrics/metric.id=6x42 retransmiss ion delay (upper bound) [s]

5.4.8 Special metrics

This chapter describes special metrics generated by one or several tasks.

5.4.8.1 Peak throughput (HTTP, FTP)

Peak throughput is calculated with the following filter algorithm. The algorithm is required to remove e.g. bursts in TCP payload caused by packet loss and retransmissions.

• Throughputs are calculated as TCP payloads as delivered by the IP stack. No packet sniffer is used, i.e. the throughput does not contain retransmissions, just the TCP payload bytes.

• The received/transmitted bytes per direction are summarized in buffers of 1 second duration. • If the throughput per second is more than 5% larger than the throughput in the previous second,

the excessive throughput is divided onto all previous intervals with a flooding algorithm.

• The largest 2-second average is used as peak throughput. • If the average throughput is larger than the peak throughput, this value is used.

5.5 Pocket PC packet sniffer reference PocketOptimizer Pocket PC edition provides integrated support for controlling a packet sniffer. Currently only one product is supported:

• CEMyNetwork Wireless 1.0 (Epiphan Consulting, Inc., www.epiphan.com)

similar versions named CeNiffer might work but have not been tested

5.5.1 Packet sniffer requirements

• A supported packet sniffer version has to be installed on the system. • The job file parameter UseSniffer has to be enabled for packet sniffer support when executing jobs.

5.5.2 Packet sniffer limitations

• It might happen that the packet sniffer stops capturing packets if it is closed and started again. PocketOptimizer avoids this if the parameter DontTerminate is set to true. If you experience this situation, it might be required to reboot your Pocket PC.

5.5.3 Packet sniffer configuration

A sample configuration file (for the german localization of Windows Mobile 2003 SE) is shown below:

[Sniffer]

Page 58: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 57 Technical Reference

ExeName: "\Programme\CEMyNetwork Wireles s1.0\cemynetworkw.exe" CaptureTo-Folder: SnifferFiles CaptureTo-Type: Ethereal, tcpdump (*.cap) CaptureTo-Location: "CF Karte" DumpFile-Path: "\CF Karte\SnifferFiles\" DumpFile-Ext: .cap DontTerminate: True

Follow the steps described below to set up the sniffer configuration. • Start the sniffer application and execute the menu command Tools/CaptureTo... The Save to dialog window will open.

• Select proper values from the combo boxes and remember these values. In the example below, the destination directory shall be \CF Karte\SnifferFiles, thus the selections are folder: SnifferFiles and location: CF Karte. The file type will be Ethereal, thus the file extension is .cap.

Note: It's important to enter the exact characters into the configuration file! • Edit the machine configuration file and enter the values as gathered from the dialog window.

ExeName: the sniffer's executeable file name

CaptureTo-Folder: the folder name as selected in the Capture To... dialog CaptureTo-Type: the file type as selected in the Capture To... dialog CaptureTo-Location: the location as Capture To... dialog DumpFile-Path: this is the full path given by CaptureTo-Location and CaptureTo-Folder DumpFile-Ext: the extension as specified by CaptureTo-Type DontTerminate: set this parameter to true to avoid termination of the sniffer application

Note: DumpFile-Path and DumpFile-Ext are required to copy the sniffer file to PocketOptimizer's log directory. If these parameters are not correct, PocketOptimizer will not be able to locate the sniffer file

in the file system and copy it to the log directory.

5.6 Win32 edition packet sniffer reference PocketOptimizer Win32 edition provides integrated support for controlling a packet sniffer. Currently

only one product is supported:

• Microsoft NetCap as contained in the Windows 2000 or XP resource kit

5.6.1 Packet sniffer requirements

• A supported packet sniffer version has to be installed on the system. • The job file parameter UseSniffer has to be enabled for packet sniffer support when executing jobs.

5.6.2 Packet sniffer configuration

A sample configuration file is shown below:

[Sniffer] ExeName: "C:\Program Files\SupportToolsX P\NetCap.exe" DumpFile-Ext: .cap ;SnifferParams: ;InterfaceName: InterfaceName-LAN: "LAN-Verbindung" InterfaceName-RAS: "WAN (PPP/SLIP) Interface"

Follow the steps described below to set up the sniffer configuration.

Page 59: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 58 Technical Reference

• Install NetCap on your machine or copy it to your local hard drive. • Ensure you have proper access rights to execute NetCap. • run NetCap with the argument /? from a command line, the output should be similar to

Microsoft Network Monitor capture utility Usage: NetCap.exe [/B:#] [/T <Type> <Buffer> <HexO ffset> <HexPattern>] [/F:<filterfile.cf>] [/C:<captur e file>] [/N:#] [/L:HH:MM:SS] [/TCF:<Folder Name >] ... Use the following index numbers for these adapters: (default) 0 = ETHERNET (001C23909C84) LAN-Verbindu ng (Onboard) 1 = ETHERNET (001B77C35942) Drahtlose Ne tzwerkverbindung 2 = ETHERNET (00507F0495FB) DrayTek Virt ure Interface 3 = ETHERNET (EAFB20524153) WAN (PPP/SLI P) Interface 4 = IP/1394 (000000000000)

• Look up the desired LAN interface if required and the desired RAS interface • Edit the machine configuration file and enter the values as gathered from the dialog window.

ExeName: the sniffer's executeable file name

DumpFile-Ext: the file extension, usually .cap SnifferParams: additional parameters to the sniffer if required

InterfaceName: name of interface to be used, better use InterfaceName-LAN or RAS

instead

InterfaceName-LAN: interface name if no RAS connection is used

InterfaceName-RAS: interface name if a RAS connection is used

5.6.3 Sniffer operation

The sniffer platform is automatically executed twice on the Win32 platform:

• a first call to NetCap is executed to search the list of interfaces for the provided name and get the interface number

• a second call to NetCap is executed with the arguments /B:100 /N:x /C:<file>. Other arguments can be specified in SnifferParams including different values for /B.

5.7 TShark reference WireShark's TShark can be used in the Win32 edition to decode captured TCP connections. To avoid

performance problems, TShark and the analysis module are executed when all measurement tasks are done but before finishing the report file. Please note that TShark support is only available if capturing

is enabled and UseTShark is enabled.

5.7.1 TShark requirements

• Wireshark/TShark needs to be installed on the system.

• A special output mode of TShark is required (/Tfields). At least version 0.99.6 is required to support this mode.

• The job file parameter UseTShark has to be enabled for packet sniffer support when executing jobs.

5.7.2 TShark operation

TShark is automatically executed for every FTP or HTTP measurement task with the necessary

parameters, for example TShark -r <file.cap> -n -R "<filter>" -Tfields -E header=y -e packet.number… > <file.cap.txt>

The output file generated by TShark is a TAB separated text files and will be kept for further analysis.

5.7.3 TCP stream analyzer operation

If TShark output could be generated successfully, the file is processed for every TCP connection

individually.

The TCP stream analyzer loads the data file, applies the filter for the TCP connection, analyzes uplink and downlink connections and adds two additional data fields:

• dir … data direction (UL or DL)

• tcp.decode.info … stream analyzer's decoding information

Page 60: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 59 Technical Reference

Possible values for the decode information are: • snew=<bytes> … shifted new bytes: if a packet contains re-transmitted and new bytes,

this indicates the new information (= not re-transmitted bytes)

• loss=<bytes> … a loss has been detected (DL only)

• pend=<bytes> … number of bytes pending for re-transmission (DL only)

• retr=<bytes> … packet is a re-transmission

• rnew=<bytes> … the number of bytes containing new information (i.e. not re-transmitted)

• rw=<bytes> … remaining window size

• dly=<sec> … re-transmission delay

5.8 Log file reference All relevant data will be written to log files if the GUI check box logfile is checked for interactive measurements or the job file parameter WriteLogFile is true.

5.8.1 Log file basics

All log files names are starting with a time stamp in format yyyymmdd-hhnnss , followed by a sequence

number and an additional description.

A simple measurement job with 2 iterations will generate the log files

• 20051113-131339-0000-job-params.txt … contains the job’s measurement parameters

• 20051113-131339-0000-job-log.txt … contains the main job log with time stamps

• 20051113-131339-0001-http-params.txt … the first task’s parameters (http, 1st iteration)

• 20051113-131339-0001-http-0000.txt … the first task’s data log

• 20051113-131339-0002-http-params.txt … the second task’s parameters (http, 2nd iteration)

• 20051113-131339-0002-http-0000.txt … the second task’s data log

One exception to this schema are UDP log files following the NDFA server’s naming convention. The log files are starting with a time stamp, too, but these are generated by the server and may thus slightly differ from the local time.

5.8.2 Job log files

Two job log files are generated for every job.

The parameter file named yyyymmdd-hhnnss-0000-job-params.txt contains the measurement

parameters, i.e. the job file plus some internal parameters. Important values logged here are: • user name • location • cell id • RAS connection to be used • the configuration parameters from the job file

The log file named yyyymmdd-hhnnss-0000-job-log.txt contains the measurement log as it is displayed

in the GUI’s log memo. This file includes

• important time stamps and progress information • warnings and error messages

5.8.3 HTTP log files

Two HTTP log files are generated for every HTTP task (individually for each master loop iteration).

The parameter file named yyyymmdd-hhnnss-qqqq-http-params.txt contains the measurement

parameters for this task. It has the same format as a job file with some extra parameters in it.

The data file named yyyymmdd-hhnnss-qqqq-http-0000.txt contains the measurement results i.e. the

statistics per one second interval.

The file format is <loop>\t<seq>\t<thput>\r\n , field separator is the tab character, records are

separated by cr/lf characters. The decimal separator can be specified in the user configuration file. Lines starting with a semicolon are comments.

• loop is the inner loop as specified by the Loop-Count parameter. • seq is the interval’s sequence number, i.e. the relative time in seconds. • thput contains the measurement value in kBytes/s = 1000Bytes/s.

Page 61: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 60 Technical Reference

Sample log file ;http ;start 28.09.2006 22:23:15 ;operator 23201=A1 ;mobile_status: success ;mobile_initstring: at+cgdcont=1,"IP","A1.net" ;mobile_stamp: 04.09.2007 22:36:02 ;mobile_imsi: 232012520003849 ;mobile_imei: 354652010110203 ;mobile_mobile: Manufacturer: huawei, Model: E270, Revision: 11.303.06.00.00 ;mobile_cpin: +CPIN: READY ;mobile_csq: +CSQ: 15,99 ;mobile_signal_dbm: -83 dBm ;mobile_cops: +COPS: 0,2,"23201",2 ;mobile_mcc_mnc: 232-01 ;mobile_creg: +CREG: 0,1 ;mobile_creg_lac: N/A ;mobile_creg_ci: N/A ;mobile_cgatt: +CGATT: 1 ;mobile_sysinfo: ^SYSINFO:2,3,0,5,1,,4 ;gps 48,22748 16,39883 20:22:57 loop seq thput gps_lat gps_lon gps_time 0 0 8,76 48,22747 16,39884 20:22:59 0 1 8,76 48,22745 16,39884 20:23:01 0 2 8,76 48,22745 16,39884 20:23:02 0 3 17,52 48,22745 16,39884 20:23:02 0 4 13,14 48,22744 16,39885 20:23:03 0 5 45,76 48,22743 16,39885 20:23:04 ;meas-time: 8312 ms ;ip-addresses: 192.168.1.61 10.248.40.73 ;http-success: ok ;dns-lookup-time: 10 ms ;tcp-conn-time: 320 ms ;first-tx-delay: 10 ms ;first-rtt: 1783 ms ;data-xfer-time: 5938 ms ;shutdown-time: 50 ms ;session-time: 8111 ms ;rx-bytes: 102698 ;num-sockets: 1 ;num-threads: 1 ;num-files-ok: 1 ;num-files-err: 0 ;num-files-warn: 0 ;content-length: 102400 ;mean-data-rate: 17,30 kB/s = 138,36 kbit/s (PL) ~ 142,19 kbit/s (IP) ;user-data-rate: 12,62 kB/s = 101,00 kbit/s (PL) ~ 103,80 kbit/s (IP)

5.8.4 FTP log files

Two FTP log files are generated for every FTP task (individually for each master loop iteration).

The parameter file named yyyymmdd-hhnnss-qqqq-ftp-params.txt contains the measurement

parameters for this task.

The data file named yyyymmdd-hhnnss-qqqq-ftp-0000.txt contains the measurement results i.e. the

statistics per one second interval.

The file format is <loop>\t<seq>\t<thput>\r\n , field separator is the tab character, records are

separated by cr/lf characters. The decimal separator can be specified in the user configuration file.

Lines starting with a semicolon are comments.

• loop is the inner loop as specified by the Loop-Count parameter. • seq is the interval’s sequence number, i.e. the relative time in seconds. • thput contains the measurement value in kBytes/s = 1000Bytes/s.

Sample log file ;ftp-get ;start 28.09.2006 22:38:21 ;operator 23201=A1 ;mobile_status: success ;mobile_initstring: at+cgdcont=1,"IP","A1.net" ;mobile_stamp: 04.09.2007 22:36:02 ;mobile_imsi: 232012520003849 ;mobile_imei: 354652010110203 ;mobile_mobile: Manufacturer: huawei, Model: E270, Revision: 11.303.06.00.00 ;mobile_cpin: +CPIN: READY ;mobile_csq: +CSQ: 15,99

Page 62: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 61 Technical Reference

;mobile_signal_dbm: -83 dBm ;mobile_cops: +COPS: 0,2,"23201",2 ;mobile_mcc_mnc: 232-01 ;mobile_creg: +CREG: 0,1 ;mobile_creg_lac: N/A ;mobile_creg_ci: N/A ;mobile_cgatt: +CGATT: 1 ;mobile_sysinfo: ^SYSINFO:2,3,0,5,1,,4 ;gps 48,22758 16,39877 20:38:02 ;loop seq thput gps_lat gps_lon gps_time 0 0 8,76 48,22753 16,39878 20:38:09 0 1 8,76 48,22753 16,39880 20:38:10 0 2 8,76 48,22754 16,39881 20:38:11 0 3 13,14 48,22753 16,39881 20:38:12 0 4 17,52 48,22752 16,39881 20:38:13 0 5 13,14 48,22752 16,39881 20:38:14 0 6 17,52 48,22751 16,39881 20:38:15 0 7 35,04 48,22750 16,39881 20:38:16 0 8 48,18 48,22749 16,39881 20:38:17 0 9 33,98 48,22749 16,39881 20:38:18 ;ras-setup-time: 3385 ms ;meas-time: 15512 ms ;ip-addresses: 192.168.1.61 10.248.40.74 ;ftp-success: ok ;init-time: 0 ms (1..2) ;dns-lookup-time: 40 ms (2..3) ;tcp-conn-time: 3264 ms (3..4) ;ftp-setup-time: 1073 ms (4..5) ;ftp-cmd-time: 800 ms (5..6) ;data-xfer-time: 9794 ms (6..7, PI523a) ;shutdown-time: 271 ms (7..8) ;destruct-time: 113 ms (8..9) ;meas-time: 15355 ms (1..9) ;session-time: 15242 ms (2..8) ;first-resp-delay: 10 ms ;first-rtt: 161 ms ;data-bytes: 204800 ;mean-data-rate: 20,91 kB/s (KPI523) = 167,29 b it/s (PL) ~ 171,89 kbit/s (IP +40/1460) ;session-data-rate: 13,44 kB/s = 107,49 b it/s (PL) ~ 110,45 kbit/s (IP +40/1460)

5.8.5 ICMP log files

Two ICMP log files are generated for every ICMP task (individually for each master loop iteration).

The parameter file named yyyymmdd-hhnnss-qqqq-http-params.txt contains the measurement

parameters for this task.

The data file named yyyymmdd-hhnnss-qqqq-http-0000.txt contains the measurement results i.e. the

packet’s time stamps and the round trip time.

The file format is <loop>\t<seq>\t<start>\t<stop>\t<rtt>\r\n , field separator is the tab character,

records are separated by cr/lf characters. The decimal separator can be specified in the user configuration file. Lines starting with a semicolon are comments.

• loop is the inner loop as specified by the Loop-Count parameter. • seq is the interval’s sequence number, i.e. the relative time in seconds. • start is the tx time stamp in ms relative to the task start stamp. • stop is the rx time stamp in ms. • rtt is the round trip time in ms.

Sample log file ;icmp ;start 28.09.2006 22:39:43 ;operator 23201=A1 ;mobile_status: success ;mobile_initstring: at+cgdcont=1,"IP","A1.net" ;mobile_stamp: 04.09.2007 22:36:02 ;mobile_imsi: 232012520003849 ;mobile_imei: 354652010110203 ;mobile_mobile: Manufacturer: huawei, Model: E270, Revision: 11.303.06.00.00 ;mobile_cpin: +CPIN: READY ;mobile_csq: +CSQ: 15,99 ;mobile_signal_dbm: -83 dBm ;mobile_cops: +COPS: 0,2,"23201",2 ;mobile_mcc_mnc: 232-01 ;mobile_creg: +CREG: 0,1 ;mobile_creg_lac: N/A

Page 63: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 62 Technical Reference

;mobile_creg_ci: N/A ;mobile_cgatt: +CGATT: 1 ;mobile_sysinfo: ^SYSINFO:2,3,0,5,1,,4 ;gps 48,22754 16,39879 20:39:24 ;loop seq start stop rtt gps_lat gps_lon gps_time 0 0 120 270 145 48,22754 16,39879 20:39:24 0 1 1091 1211 123 48,22754 16,39879 20:39:25 0 2 2093 2213 121 48,22754 16,39879 20:39:26 0 3 3094 3214 116 48,22754 16,39879 20:39:27 0 4 4096 4216 117 48,22753 16,39879 20:39:28 0 5 5097 5207 115 48,22753 16,39879 20:39:29 0 6 6098 6429 334 48,22753 16,39879 20:39:30 0 7 7090 7230 140 48,22753 16,39879 20:39:31 0 8 8091 8231 142 48,22753 16,39879 20:39:32 0 9 9093 9213 119 48,22753 16,39880 20:39:33 0 10 10094 10214 117 48,22752 16,39880 20:39:34 0 11 11096 11216 117 48,22752 16,39880 20:39:35 0 12 12097 12207 115 48,22751 16,39881 20:39:36 0 13 13098 13209 114 48,22750 16,39881 20:39:37 0 14 14090 14210 122 48,22749 16,39881 20:39:38 0 15 15091 15212 121 48,22748 16,39881 20:39:39 0 16 16093 16213 119 48,22748 16,39881 20:39:40 0 17 17094 17234 138 48,22747 16,39881 20:39:41 0 18 18096 18216 115 48,22746 16,39881 20:39:42 0 19 19097 19227 135 48,22746 16,39882 20:39:43 ;ras-setup-time: 3475 ms ;meas-time: 20099 ms ;ip-addresses: 192.168.1.61 10.248.40.78 ;icmp-tx-count: 20 ;icmp-loss: 0 (0,0 %) ;average-rtt: 134,3 ms ;min-rtt: 114 ms ;max-rtt: 334 ms

5.8.6 UDP log files

Two http log files are generated for every HTTP task (individually for each master loop iteration).

The parameter file named yyyymmdd-hhnnss-qqqq-http-params.txt contains the measurement

parameters for this task.

The data file named yyyymmdd-hhnnss-qqqq-http-0000.txt contains the measurement results i.e. the

statistics per one second interval.

The file format is <loop>\t<seq>\t<dl_thput>\t<ul_thput>\r\n , field separator is the tab character,

records are separated by cr/lf characters. The decimal separator can be specified in the user configuration file. Lines starting with a semicolon are comments.

• loop is the inner loop as specified by the Loop-Count parameter. • seq is the interval’s sequence number, i.e. the relative time in seconds. • dl_thput contains the downlink throughput in kBytes/s = 1000Bytes/s. • ul_thput contains the uplink throughput in kBytes/s = 1000Bytes/s.

Sample log file ;udp ;start 28.09.2006 23:03:32 ;operator 23201=A1 ;mobile_status: success ;mobile_initstring: at+cgdcont=1,"IP","A1.net" ;mobile_stamp: 04.09.2007 22:36:02 ;mobile_imsi: 232012520003849 ;mobile_imei: 354652010110203 ;mobile_mobile: Manufacturer: huawei, Model: E270, Revision: 11.303.06.00.00 ;mobile_cpin: +CPIN: READY ;mobile_csq: +CSQ: 15,99 ;mobile_signal_dbm: -83 dBm ;mobile_cops: +COPS: 0,2,"23201",2 ;mobile_mcc_mnc: 232-01 ;mobile_creg: +CREG: 0,1 ;mobile_creg_lac: N/A ;mobile_creg_ci: N/A ;mobile_cgatt: +CGATT: 1 ;mobile_sysinfo: ^SYSINFO:2,3,0,5,1,,4 ;gps 48.22792 16.39857 21:03:13 ;loop seq dl_thput ul_thput dl_thput ul_thput dl_rt t ul_rtt dl_jtr ul_jtr dl_loss ul_loss � � gps_lat gps_lon gps_time ; kByte/s kByte/s kbit/s kbit/s m s ms ms ms pkts pkts �

Page 64: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 63 Technical Reference

� deg deg 0 0 0.661 0.687 5.288 5.496 128. 6 148.3 16.3 30.0 0 0 � � 48.22785 16.39859 21:03:26 0 1 0.639 0.626 5.112 5.008 134. 3 140.4 8.1 11.0 0 0 � � 48.22786 16.39859 21:03:28 0 2 0.639 0.639 5.112 5.112 136. 6 138.1 10.8 13.1 0 0 � � 48.22786 16.39859 21:03:28 ... ;ras-setup-time: 3274 ms ;meas-time: 28711 ms ;ip-addresses: 192.168.1.61 10.248.40.80 ;dl-pkt-count: 150 ;dl-pkt-loss: 0 ;dl-thput: 0.65 kB/s = 5.16 kbit/s (PL) ~ 7.42 kbit/s (IP) ;dl-jitter: 37.8 ms ;dl-rtt: 139.7 ms ;ul-pkt-count: 150 ;ul-pkt-loss: 0 ;ul-thput: 0.65 kB/s = 5.16 kbit/s (PL) ~ 7.42 kbit/s (IP) ;ul-jitter: 14.4 ms ;ul-rtt: 136.2 ms

Additional log files containing the packet’s individual time stamps are automatically generated according to the NDFA file format specification.

5.9 Metric mapping If required, the default metrics can be mapped to different metrics or extensions. A mapping file can

be specified with the command line argument /mappingfile , otherwise the default file mapping.cfg in the PocketOptimizer application directory is used if existing.

5.9.1 Mapping specification

The mapping file has to be a sectioned configuration file as shown in the next section. Comments are

started with the semicolon (;)

The PocketOptimizer mapping file can contain several sections for different measurement formats. A

default section can be defined with the name default. Every section can include one mfid parameter and metric parameters as required.

Known measurement formats are: • PO.HTTP • PO.FTP.DL • PO.FTP.UL • PO.ICMP • PO.UDP • PO.RAS

The parameter mfid defines the target measurement format as reported in the QTS ticket. The measurement format can be used by the dashboard or reporting tool to look up the correct metric

descriptions. If the parameter is not specified, the metric Id *.User will be used (where * is the original metric format).

Text and numeric metrics can be remapped with the arguments x.nnnn and m.nnnn. Every metric can be mapped to 0, 1 or several destination metrics. If no destination is specified, the metric is removed

from the ticket. In addition to x.nnnn and m.nnnn metrics, extensions can be specified with e.<id>.<field> where id is the extension id (as defined in the QTS database table d_extensions) and field is the column name in the QTS extension table.

Please note that it will not be possible to map text metrics to numeric metrics due to data conversion problems and that the extension columns have to match the data in the ticket.

5.9.2 Sample mapping file

The content of a sample mapping file is:

[default] ; default mapping for all measurements ; the destination measurement format in the QTS tic ket will be *.user (e.g. PO.HTTP.User) ; note: metrics can be mapped to no, one or several other metrics mfid: *.user

Page 65: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 64 Technical Reference

m.5230: m.5230,e.ext1.thput [PO.RAS] mfid: PO.RAS.User m.2003: m.2003,e.ext2.min_rtt

Page 66: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 65 Contents

Contents

Introduction................................................................................................................................................1

1.1 What is PocketOptimizer......................................................................................................................1

1.2 Field of application ..............................................................................................................................1 1.3 Revision History ..................................................................................................................................2

1.4 Known limitations................................................................................................................................4 1.5 This manual........................................................................................................................................4

Installation .................................................................................................................................................5 2.1 System requirements...........................................................................................................................5

2.1.1 System requirements for PocketOptimizer Mobile Edition.................................................................5

2.1.2 System requirements for PocketOptimizer Win32 Edition .................................................................5 2.2 Removing previous installations ...........................................................................................................5

2.2.1 Removing PocketOptimizer Mobile Edition ......................................................................................5 2.2.2 Removing PocketOptimizer Win32 Edition.......................................................................................6

2.3 Installing PocketOptimizer ...................................................................................................................6

2.3.1 Installing PocketOptimizer Mobile Edition........................................................................................6 2.3.2 Installing PocketOptimizer Win32 Edition........................................................................................6

2.3.3 Additional Installation information..................................................................................................7 2.4 Registering PocketOptimizer ................................................................................................................7

2.4.1 Getting the Machine Id..................................................................................................................7

2.4.2 Automatic registration with license server.......................................................................................7 2.4.3 Manual registration with license server ...........................................................................................9

2.4.4 Manual registration with license utility (branded versions only) ........................................................9 2.5 Setting up the configuration.................................................................................................................9

2.5.1 Configuration file format.............................................................................................................. 10 2.5.2 Setting up a different server for synchronization ........................................................................... 10

2.5.3 Setting up directories .................................................................................................................. 10

2.5.4 GPS configuration ....................................................................................................................... 10 2.5.5 Sniffer configuration.................................................................................................................... 12

Operations Manual .................................................................................................................................... 13 3.1 PocketOptimizer’s main window ......................................................................................................... 13

3.1.1 User data and RAS configuration.................................................................................................. 13

3.1.2 Main menu functions................................................................................................................... 13 3.2 Interactive measurements ................................................................................................................. 14

3.2.1 HTTP measurements................................................................................................................... 14 3.2.2 FTP measurements ..................................................................................................................... 16

3.2.3 ICMP measurements ................................................................................................................... 17 3.2.4 UDP measurements .................................................................................................................... 19

3.2.5 Profile manager .......................................................................................................................... 20

3.3 Job measurements ............................................................................................................................ 21 3.3.1 Running Jobs.............................................................................................................................. 21

3.3.2 Creating jobs .............................................................................................................................. 21 3.4 Synchronization and reporting............................................................................................................ 21

3.4.1 Synchronization .......................................................................................................................... 22

3.4.2 Reporting ................................................................................................................................... 22 Administrator’s Manual .............................................................................................................................. 23

4.1 PocketOptimizer Registration Utility .................................................................................................... 23 4.2 Synchronization server reference ....................................................................................................... 24

4.2.1 HTTP server requirements ........................................................................................................... 24

4.2.2 Job configuration requirements.................................................................................................... 24 4.3 Reporting server reference ................................................................................................................ 24

Technical Reference .................................................................................................................................. 26 5.1 Configuration file reference................................................................................................................ 26

5.1.1 System configuration file ............................................................................................................. 26 5.1.2 User configuration file ................................................................................................................. 31

5.1.3 Machine configuration file............................................................................................................ 33

5.1.4 Registration info file .................................................................................................................... 35

Page 67: PocketOptimizer AdminManual 1.1.1.32

PocketOptimizer 1.1.1.32 26.Jan.2011 66 Contents

5.1.5 Registration data file ................................................................................................................... 35

5.1.6 Location data file ........................................................................................................................ 35

5.2 Job file reference .............................................................................................................................. 35 5.2.1 Sample job file............................................................................................................................ 36

5.2.2 Allowed sections in the job file..................................................................................................... 36 5.2.3 Detailed parameter description for the job file .............................................................................. 36

5.2.4 Task parameters ......................................................................................................................... 38

5.3 Command line reference.................................................................................................................... 45 5.4 KPI and report reference ................................................................................................................... 46

5.4.1 Global RAS KPIs.......................................................................................................................... 46 5.4.2 Common Metrics and Texts for all measurements ......................................................................... 47

5.4.3 KPIs for HTTP measurements ...................................................................................................... 48

5.4.4 KPIs for FTP measurements......................................................................................................... 50 5.4.5 KPIs for ICMP measurements ...................................................................................................... 52

5.4.6 KPIs for UDP measurements........................................................................................................ 53 5.4.7 KPIs for TCP connections............................................................................................................. 55

5.4.8 Special metrics ........................................................................................................................... 56 5.5 Pocket PC packet sniffer reference ..................................................................................................... 56

5.5.1 Packet sniffer requirements ......................................................................................................... 56

5.5.2 Packet sniffer limitations.............................................................................................................. 56 5.5.3 Packet sniffer configuration ......................................................................................................... 56

5.6 Win32 edition packet sniffer reference................................................................................................ 57 5.6.1 Packet sniffer requirements ......................................................................................................... 57

5.6.2 Packet sniffer configuration ......................................................................................................... 57

5.6.3 Sniffer operation ......................................................................................................................... 58 5.7 TShark reference .............................................................................................................................. 58

5.7.1 TShark requirements................................................................................................................... 58 5.7.2 TShark operation ........................................................................................................................ 58

5.7.3 TCP stream analyzer operation .................................................................................................... 58 5.8 Log file reference .............................................................................................................................. 59

5.8.1 Log file basics............................................................................................................................. 59

5.8.2 Job log files ................................................................................................................................ 59 5.8.3 HTTP log files ............................................................................................................................. 59

5.8.4 FTP log files................................................................................................................................ 60 5.8.5 ICMP log files ............................................................................................................................. 61

5.8.6 UDP log files............................................................................................................................... 62

5.9 Metric mapping ................................................................................................................................. 63 5.9.1 Mapping specification.................................................................................................................. 63

5.9.2 Sample mapping file.................................................................................................................... 63 Contents................................................................................................................................................... 65