Bps CTM Userguide 2.2.3
Bps CTM Userguide 2.2.3
User Guide
Release 2.2.3
Copyright Notice
This document contains information that is the property of BreakingPoint Systems, Inc. This guide may not be copied, reproduced, or transferred in any form for purposes other than its intended use without prior written consent of BreakingPoint Systems, Inc. The information in this guide is subject to change without notice. All information contained within this guide is believed to be accurate but is presented without warranty of any kind, expressed or implied. Notwithstanding any other warranties, all files are provided as is with all faults. BreakingPoint Systems, Inc. disclaims all warranties, expressed or implied, including, without limitation, those of merchantability, fitness for a particular purpose, and non-infringement. In no event shall BreakingPoint Systems, Inc. be liable for any claim, damages, or other liability arising out of the use or inability to use this information contained in this document. BreakingPoint Storm Cyber Tomography Machine (CTM) User Guide, Release 2.2.3 Copyright 2005-2011 BreakingPoint Systems, Inc. All rights reserved.
Table of Contents
Table of Contents
Reporting Questions.............................................................................. ........ xv RFC 2544 Questions............................................................................. ........xvi Security Questions................................................................................ .......xvii Session Questions ................................................................................. ...... xviii SSL Questions ....................................................................................... ........xxi Super Flow Questions........................................................................... ........xxi System Questions................................................................................. .......xxii Tcl Questions ......................................................................................... ......xxiv Test Questions...................................................................................... .......xxv Test Component Questions................................................................... ......xxvi Traffic Questions................................................................................... ......xxvi Update Questions.................................................................................. ..... xxvii
Product Overview
BreakingPoint Storm CTM Hardware Overview.................................... .......... 1 Control Center Overview....................................................................... .......... 4 Features Overview................................................................................ .......... 6
Getting Started
Getting Started Overview...................................................................... .......... 9 Task 1: Accessing the Control Center................................................... .......... 9 Task 2: Creating a User Account .......................................................... ........ 11 . Task 3: Setting the Time and Date........................................................ ........ 12 Task 4: Creating a Device Under Test Profile....................................... ........ 13 Task 5: Creating a Network Neighborhood ............................................ ........ 14 Task 6: Making Port Reservations ......................................................... ........ 18 Task 7: Creating a Test......................................................................... ........ 20
Table of Contents
Administration
Administration Page Overview.............................................................. ........ 25 User Accounts....................................................................................... ........ 27 Routes .................................................................................................. ........ 29 System Updates.................................................................................... ........ 29 ATI Updates ........................................................................................... ........ 31 System Logs.......................................................................................... ........ 32 Database Optimization.......................................................................... ........ 32 My Preferences..................................................................................... ........ 36 System Functions.................................................................................. ........ 37 System Date/Time................................................................................. ........ 39
Network Neighborhood
Network Neighborhood Overview.......................................................... ........ 47 Domains ............................................................................................... ........ 51 Subnets ................................................................................................ ........ 53 Virtual Routers and Hosts ...................................................................... ........ 59 Network Address Translation................................................................ ........ 61 External Interface Addressing............................................................... ........ 64 Test Paths ............................................................................................ ........ 66 Proxy Support........................................................................................ ........ 67 Packet Filter ........................................................................................... ........ 68
Table of Contents
Port Reservations
Device Status........................................................................................ ........ 73 Port Reservations.................................................................................. ........ 75 Port Mapping......................................................................................... ........ 77 Port Notes............................................................................................. ........ 79 Port Information..................................................................................... ........ 82 Resource Allocation ............................................................................... ........ 83 Setting the MTU per Port....................................................................... ........ 84 Packet Export........................................................................................ ........ 85
Strike List
Strike List Overview............................................................................... ........ 89 Strike List .............................................................................................. ........ 89 Evasion Profile Settings ......................................................................... ........ 96 Importing and Exporting a Strike List .................................................... ...... 120 .
Application Manager
Application Manager Overview.............................................................. ...... 121 App Profiles........................................................................................... ...... 125 Token Substitution................................................................................. ...... 129 Super Flows ........................................................................................... ...... 141 Protocol Parameters.............................................................................. ...... 144 Actions and Action Parameters............................................................. ...... 175 Conditional Requests............................................................................ ...... 432
Table of Contents
Load Profiles
Load Profiles .......................................................................................... ...... 437 Load Profile Graph................................................................................ ...... 449
Packet Buffer
Packet Buffer......................................................................................... ...... 451 Exporting a Packet Buffer...................................................................... ...... 451 Canceling a Packet Buffer Export ......................................................... ...... 454 . Traffic Manager Overview..................................................................... ...... 455 Importing a Capture File........................................................................ ...... 457 Packet Filter ........................................................................................... ...... 460
Test Components
Test Components Overview.................................................................. ...... 461 Bit Blaster ............................................................................................. ...... 465 Routing Robot ....................................................................................... ...... 475 . Session Sender..................................................................................... ...... 490 Security................................................................................................. ...... 506 Stack Scrambler.................................................................................... ...... 520 Application Simulator............................................................................. ...... 530 Client Simulator..................................................................................... ...... 553 SMB and SMB2 Settings for Client Simulator....................................... ...... 563 . Recreate .............................................................................................. ...... 566 Presets ................................................................................................. ...... 578
Testing
Tests Overview...................................................................................... ...... 579
Table of Contents
Quick Tests........................................................................................... ...... 579 Tests ..................................................................................................... ...... 581 Test Status ........................................................................................... ...... 586 Test Pass/Fail Criteria........................................................................... ...... 587 Real-Time Statistics ............................................................................... ...... 628 Test Interfaces....................................................................................... ...... 639 Test Series ........................................................................................... ...... 641
Multi-box Testing
Multi-box Testing Overview................................................................... ...... 645 Creating a Multi-box Test...................................................................... ...... 648 Running a Multi-box Test ...................................................................... ...... 650 .
Test Labs
Quick Test - RFC 2544 General Information......................................... ...... 651 Session Sender Lab General Information............................................. ...... 658 Resiliency Score Lab General Information............................................ ...... 664 Lawful Intercept General Information.................................................... ...... 681 Multicast General Information ................................................................ ...... 685 Creating a Multicast Test With the Test Lab .......................................... ...... 690 Manually Creating a Multicast Test....................................................... ...... 692 . Long Term Evolution General Information ............................................. ...... 696 Creating an LTE Test............................................................................ ...... 698
Reporting
Reporting Overview............................................................................... ...... 701 Statistics Reported Per Component...................................................... ...... 701
Table of Contents
Selectable Reporting............................................................................. ...... 707 Emailing Test Results............................................................................ ...... 707 Viewing Reports.................................................................................... ...... 708 Exporting Reports.................................................................................. ...... 709 Deleting Reports.................................................................................... ...... 711
Tcl API
About the Tcl API .................................................................................. ...... 713 . Tcl Commands and Syntax Overview .................................................... ...... 716 Tcl Objects............................................................................................ ...... 731 Connecting to the System..................................................................... ...... 732 Creating the Chassis Object.................................................................. ...... 733 Reserving Ports..................................................................................... ...... 735 Unreserving Ports.................................................................................. ...... 736 Viewing Resource Allocation................................................................. ...... 736 Re-Ordering Ports................................................................................. ...... 737 Exporting the Packet Buffer................................................................... ...... 738 Importing PCAP Files............................................................................ ...... 741 Administering the System...................................................................... ...... 742 Detecting System Errors ........................................................................ ...... 742 Performing a Backup............................................................................. ...... 743 Listing Backup Files ............................................................................... ...... 744 Restoring Backup Files .......................................................................... ...... 745 Listing Network Neighborhoods ............................................................. ...... 746 Creating a Network Neighborhood........................................................ ...... 746 Creating an IPv6 Network Neighborhood.............................................. ...... 747
Table of Contents
Adding Domains to the Network Neighborhood ..................................... ...... 748 Adding Subnets to a Domain................................................................. ...... 749 Adding Subnet Paths to a Network Neighborhood................................ ...... 751 Adding Interfaces to a Network Neighborhood...................................... ...... 752 Saving a Network Neighborhood........................................................... ...... 752 Listing DUT Profiles............................................................................... ...... 753 Listing Strike List................................................................................... ...... 754 Creating a Strike List............................................................................. ...... 755 Saving a Strike List As ........................................................................... ...... 756 Listing Evasion Settings........................................................................ ...... 756 Adding Evasion Settings to a Strike List................................................ ...... 757 Renaming an Evasion Setting............................................................... ...... 757 Searching the Strike List ....................................................................... ...... 758 . Adding Strikes to an Evasion Setting.................................................... ...... 764 Listing Strikes in an Evasion Setting..................................................... ...... 765 Deleting Strikes from an Evasion Setting.............................................. ...... 765 Listing Evasion Options for an Evasion Setting..................................... ...... 766 Modifying Evasion Options for an Evasion Setting................................ ...... 766 Unsetting Overrides for an Evasion Setting ........................................... ...... 767 Deleting the Strike List Object............................................................... ...... 768 Listing App Profiles................................................................................ ...... 769 Creating App Profiles ............................................................................. ...... 770 Saving an App Profile As....................................................................... ...... 771 Deleting an App Profile.......................................................................... ...... 771 Removing the App Profile Object.......................................................... ...... 772 Listing Super Flows............................................................................... ...... 772
Table of Contents
Creating Super Flows............................................................................ ...... 773 Saving the Super Flow As..................................................................... ...... 774 Setting the Weight of a Super Flow....................................................... ...... 775 Adding Super Flows to an App Profile................................................... ...... 775 Listing Super Flows in an App Profile.................................................... ...... 776 Removing a Super Flow from an App Profile ......................................... ...... 777 Deleting a Super Flow from the System................................................ ...... 777 Deleting the Super Flow Object............................................................. ...... 778 Listing Hosts.......................................................................................... ...... 778 Adding Hosts to the Origin Interface ...................................................... ...... 779 Adding Hosts to the Target Interface..................................................... ...... 780 Modifying Hosts..................................................................................... ...... 780 Removing a Host from a Super Flow ..................................................... ...... 781 Listing Protocols.................................................................................... ...... 781 Specifying an Uploaded File in the Super Flow..................................... ...... 782 Finding Flows........................................................................................ ...... 783 Adding Flows......................................................................................... ...... 784 Listing Flow Parameters........................................................................ ...... 784 Removing Flows from Super Flows....................................................... ...... 785 Listing Protocol Parameters for Flows................................................... ...... 786 Configuring Protocol Parameters for Flows........................................... ...... 786 Unsetting Protocol Parameters .............................................................. ...... 787 Listing Actions....................................................................................... ...... 788 Adding Actions to a Super Flow............................................................ ...... 788 Configuring Action Parameters .............................................................. ...... 789 Listing Action Parameters ...................................................................... ...... 790
Table of Contents
Listing Actions in a Super Flow............................................................. ...... 790 Unsetting Action Parameters................................................................. ...... 791 Deleting Actions from a Super Flow...................................................... ...... 792 Adding Conditional Requests to a Super Flow...................................... ...... 793 Adding Match Actions to a Match.......................................................... ...... 794 Viewing Match Action Parameters ......................................................... ...... 794 Adding Goto Actions.............................................................................. ...... 795 Listing Load Profiles.............................................................................. ...... 796 Creating Load Profiles........................................................................... ...... 797 Listing Phases in a Load Profile............................................................ ...... 798 Adding Phases to a Load Profile........................................................... ...... 798 Modifying Phases.................................................................................. ...... 800 Removing Phases from a Load Profile.................................................. ...... 800 Saving a Load Profile As....................................................................... ...... 801 Deleting Load Profiles........................................................................... ...... 802 Deleting the Load Profile Object............................................................ ...... 802 Listing Tests.......................................................................................... ...... 803 Creating Tests....................................................................................... ...... 803 Viewing Test Results............................................................................. ...... 805 Importing Tests...................................................................................... ...... 808 Viewing the DUT Profile for the Test..................................................... ...... 808 Setting the DUT Profile for the Test ...................................................... ...... 809 . Viewing the Network Neighborhood for the Test................................... ...... 810 Setting the Network Neighborhood for the Test.................................... ...... 810 Defining the Test Category.................................................................... ...... 811 Overriding the Seed ............................................................................... ...... 811
Table of Contents
Defining the Test Description................................................................ ...... 813 Creating a Test Component.................................................................. ...... 813 Creating a TCP SYN Flood Packet Template ........................................ ...... 816 Component Shortcut Commands.......................................................... ...... 816 Configuring Test Components............................................................... ...... 859 Running Tests....................................................................................... ...... 916 Starting the Packet Trace...................................................................... ...... 918 Stopping the Packet Trace.................................................................... ...... 919 Setting the Domain for the Client/Server Interfaces.............................. ...... 919 Getting the Domains Used by All Interfaces.......................................... ...... 921 Getting the Domains Used by a Specific Interface................................ ...... 921 Listing the Components in a Test.......................................................... ...... 921 Saving the Test ..................................................................................... ...... 922 . Canceling the Test Run......................................................................... ...... 923 Exporting Test Results.......................................................................... ...... 924 Viewing Aggregate Statistics................................................................. ...... 925 Listing Multi-box Tests........................................................................... ...... 927 Creating a Multi-box Test...................................................................... ...... 928 Configuring the Multi-box Test .............................................................. ...... 929 . Adding Secondary Systems to the Multi-box Test................................. ...... 929 Listing the Tests in a Multi-box Test...................................................... ...... 930 Removing Tests from the Multi-box Test............................................... ...... 931 Viewing the Multibox Configuration....................................................... ...... 931 Reserving Ports for Secondary Systems in a Multi-box Test................ ...... 932 . Running a Multi-box Test ...................................................................... ...... 933 . Canceling a Multi-box Test Run............................................................ ...... 933
Table of Contents
Saving the Multi-box Test...................................................................... ...... 934 Listing Test Series................................................................................. ...... 935 Creating a Test Series........................................................................... ...... 936 Listing Existing Test Series on the System ............................................ ...... 936 Adding Tests to a Test Series............................................................... ...... 937 Removing Tests from a Test Series...................................................... ...... 938 Listing the Tests in a Test Series.......................................................... ...... 938 Running a Test Series........................................................................... ...... 939 Canceling a Test Series Run................................................................. ...... 939 Saving the Test Series.......................................................................... ...... 940 Creating an RFC 2544 Test .................................................................. ...... 940 . Creating a Session Sender Test ........................................................... ...... 944 . Creating a Resiliency Score.................................................................. ...... 949 Creating a Server Resiliency Score ....................................................... ...... 952 Creating a Lawful Intercept Test ........................................................... ...... 954 . Creating a Multicast Test....................................................................... ...... 960 Creating an LTE Test............................................................................ ...... 964 Validating Test Lab Tests...................................................................... ...... 969 Tcl Stats Per Component...................................................................... ...... 969
Appendix
Hardware Specifications........................................................................ ........... I Software Specifications......................................................................... .......... II Light-Emitting Diodes............................................................................ .......... II CLI Commands ...................................................................................... ......... III Global Scripts Templates...................................................................... ..........V
Welcome
Welcome
Welcome to the BreakingPoint Storm CTM User Guide. The BreakingPoint Storm CTM is the industrys first Cyber Tomography Machine. This guide will explain the purpose, audience, and organization of this guide. It also defines conventions used to present instructions and information throughout this guide and includes information on how to get support for issues encountered while using the BreakingPoint Storm CTM.
Target Audience
The intended audience is users of all skill levels.
Organization
This guide system is organized into the following sections: About This Guide Product Overview Getting Started Administration Device Under Test Profiles Network Neighborhood Port Reservations Strike List Application Manager Load Profiles Packet Buffer Test Components Testing Multi-box Testing Test Labs Reporting Tcl API Frequently Asked Questions
Conventions
Conventions
This guide uses the conventions listed in Table I-1 on page ii. Table I-1: Document Conventions Convention Bolded text Courier font Note: Description Commands, keywords, or buttons User input Helpful suggestion or reference to additional information Clickable link that references tables, figures, sections, and cross-references. Example Press the Enter key. Type GET in the Method Request field. Note: Racks must meet standard EIA-310-C requirements. See Table 12 for more information.
Link
Related Documentation
Table I-2 on page ii lists all the documentation related to BreakingPoint products. The latest documentation for each release can be accessed through the Documentation area of Strike Center. Table I-2: Related Documentation Documentation BreakingPoint Storm CTM Installation Guide BreakingPoint Storm CTM User Guide BreakingPoint FireStorm CTM Installation Guide BreakingPoint FireStorm CTM User Guide Description Provides installation instructions and information for the BreakingPoint Storm CTM. Provides information on how to use the Control Center to set up, customize, and run traffic through devices under test. Provides installation instructions and information for the BreakingPoint FireStorm CTM. Provides information on how to use the Control Center to set up, customize, and run traffic through devices under test.
ii
Strike Center
Table I-2: Related Documentation Documentation BreakingPoint FireStorm CTM Migration Guide BreakingPoint CTM Online Help Description Provides an overview of the tasks you must complete in order to migrate from the BreakingPoint Storm CTM to the BreakingPoint FireStorm CTM. Online documentation for both the BreakingPoint Storm CTM and the BreakingPoint FireStorm CTM. Requires Internet Explorer 6.0+ or Firefox 2.0+ for proper viewing.
Strike Center
Strike Center is an online portal for security and firmware updates as well as industry information. You can use Strike Center to: Obtain the latest firmware releases for the BreakingPoint Storm CTM. Download the most up-to-date ATI Updates (formerly known as StrikePacks), which includes the latest Strikes, test capabilities, and application protocols. Download PDFs of documentation. Find contact information for Customer Support, Sales, and corporate facilities. Access blogs and technical articles related to vulnerabilities, exploits, and recent updates to any BPS product.
Support
If a solution to a problem has not been found after consulting the related section in this guide, please contact Customer Support using one of the methods in Table I-3 on page iii. To expedite a support issue, please have the following information available: Customer Number Located on the Customer Support Agreement and on the shipping invoice for the BreakingPoint Storm CTM. Serial Number Located on the shipping invoice for the BreakingPoint Storm CTM. Firmware Versions Located from the Help Menu in the Control Center (select Help > About). Table I-3: Support Methods Method E-mail Telephone Contact Information [email protected] 1-866-352-6691, prompt 4
iii
Documentation Feedback
Documentation Feedback
Please send any feedback or suggestions regarding this documentation to [email protected].
iv
Account Questions
Account Questions
Question: Ive had 4 invalid login attempts to the Control Center, and my account is now locked. How do I unlock my account? Answer: Close the Control Center window and open a new browser window. Question: How do I reset my Control Center account password? Answer: You can have another user log into the Control Center to reset your password; you can log into the BPS Management port to reset the password; or you can telnet to the systems management IP address to reset the password. Question: How do I create a Strike Center account? Answer: Go to Strike Center and click the Register link located under the Account Options area. Enter your customer ID and license key in the corresponding fields, and click Validate. If you dont have your customer ID or license key, please contact the BreakingPoint Systems support team at [email protected] or call 1-866-3526691, prompt 4. The Create Account page will display, which will allow you to create a new Strike Center account. Question: I forgot my Strike Center password. How do I retrieve it? Answer: Go to Strike Center and click the Register link located under the Account Options area. You will need to have your customer ID and license key to log in; if you do not have this information, please contact BreakingPoint Systems support team at [email protected] or call 1-866-352-6691, prompt 4. After you log in, locate your account and click the Reset link located next to it. The Password Reset screen will display, which will allow you to reset your accounts password. Question: Does each user need a Strike Center account? Answer: No. It is not necessary for each user to have a Strike Center account; however, if you have multiple boxes, you may want to create an account for each box.
Addressing Questions
Addressing Questions
Question: How do I configure the system to use one MAC address per host? Answer: If you edit the Network Neighborhood selected for your test, you can select Host as the type for the domain. This will allot one MAC address per host; selecting Virtual Router will use one MAC address total for all traffic from that subnet. Question: Why would I want to use one MAC address for all hosts? Answer: A device has limited memory dedicated to its ARP table. If it takes too long for the ARP table to populate, the device may run out of buffer packets for that host and drop packets. So, you will want to use the Virtual Router option when using more addresses than the devices ARP table is capable of handling. Otherwise, entries will be dropped before they need to be used. Question: Can NAT be used across multiple test components? Answer: No. Only one test component can use a domain that has NAT enabled. Any domain that has NAT enabled cannot be shared between test components. Question: How many subnets can I add to a domain? Answer: The number of subnets that can be added depends on the type of subnet you are defining. Each domain can contain one non-VLAN subnet; each additional subnet must have a VLAN ID assigned to it. So, theoretically, the limit is 4,095 because you can assign VLAN IDs from 1-4,095. Question: How do I assign one IP address per subnet? Answer: If you edit the Network Neighborhood selected for your test, you can enter in the single IP address you want to use in the Minimum Range field. Question: What type of Network Address Translation (NAT) is supported? Answer: Source NAT, also known as Traditional NAT, Outbound NAT, or Unidirectional NAT and Destination NAT (DNAT). Question: How do you enable Destination NAT (DNAT)? Answer: To enable DNAT, you will need to enable NAT on the server-side. Question: How do you enable Source NAT (SNAT)? Answer: To enable SNAT, you will need to enable NAT on the client-side. Question: Can I send and receive traffic on the same interface? Answer: Yes. You can send and receive traffic on the same interface if you assign the interface a domain that has VLAN-tagging enabled. Question: How do I set up a one-arm server? Answer: You will need to enable the server interface, but not the client interface, in a test configuration.
vi
Application Traffic
Question: When would I want to set up a one-arm server? Answer: You will want to set up a one-arm server if you have a client you want to communicate with the BreakingPoint Storm CTM. This is typically a client that is operating independently, or a test set up in which you have a test component communicating with the proxy, and the proxy communicates with the server component on the clients behalf.
Application Traffic
Question: How is application response time defined? Answer: Application response time is time between the start and end of a transaction. For example, in the context of a simple HTTP request, the client request is the start of transaction, the server response is the end of transaction. Often these fit into single packets. In the context of something that is just a bulk file transfer, the transaction ends when the file is transferred. Question: How do transaction flags work? Answer: If you do not manually set the transaction flags for your application flows, they are automatically set to the first and last packet. If there is just an end of transaction flag and no start flag, a start transaction flag is set on the first packet. If there is no end transaction flag, it is set on the last packet. If there is more than one transaction in a flow, and the last one has no end of transaction flag, then the last packet is set as the end of transaction.If a second transaction is nested within an outer transaction, its transaction flag is ignored. Question: How are application successes defined? Answer: Application Success means that a transaction started, and then ended. If a flow is interrupted between the start and end, then it is a failure. For example, if it is a TCP flow, scenarios where the flow closes prematurely (e.g., retries, external RST, etc.) are counted as a failure. If it is a UDP flow, and the flow does not send a packet through, then this is counted as a failure. Generally, if a flow sends the last packet with an end of transaction flag, then it is considered a successful flow. However, if no transaction flags are explicitly set, then Application Success is defined as all the packets in the flow getting sent. Note: Conflicting totals for the number of transactions that are attempted and successful are sometimes displayed in some sections of the Summary tab of the Real-Time Statistics page and in the Application Summary section of the report. Additionally, this issue causes the transactions attempted and successful to total zero (0). When this occurs, manually set the transaction_start flag on the second action in the Super Flow. Question: When should I set the transaction flags? Answer: Transaction flags enable you to put multiple transactions on a single flow (e.g., HTTP 1.1, a database connection, FTP, etc.). This feature enables you to define what a transaction is; if you do not define where your flows start and end, then the system will not count the whole flow as a transaction.
vii
Bandwidth Questions
Note: In some instances, the transaction_end flag is set on the Quit action that is in the "no match" case in the last Conditional Request. When this happens, successful transactions are omitted from the Real-Time Statistics count totals. To correct this error, add a Quit action in the matching pattern on the last Conditional Request and set the transaction_end flag on that action. If a flow does not have any actions with the transaction_end flag set, the Network Processor will set this flag on the last action in the flow. You can choose to manually set the transaction_end flag on an action. If you do this, be aware the Conditional Request action can cause different actions to be taken based on match results. Because of this, there is more than one possible last action in the flow. Make sure that each last action has the desired transaction flag setting.
Bandwidth Questions
Question: How do I define the maximum througphput for each test interface? Answer: The maximum throughput is defined using the Data Rate parameters. This parameter is defined per test component, and it is the upper-bound rate for each interface, which means that the interface will never send more traffic than the value specified. For the session-based components, you can define the scope of the data rate, which enables you to set the maximum data rate per interface, or set the aggregate data rate for the entire test component. Question: What is the maximum throughput for each interface? Answer: The maximum throughput is determined by the link speed of the device connected to the chassis. Question: How do I determine how much bandwidth each test component is using? Answer: The system has a test status verification feature that tells you whether or not the test components have exceeded the maximum allowed bandwidth for each interface. Question: Why is the estimated bandwidth for my Recreate component nearly twice the actual bandwidth estimate for my capture? Answer: The Recreate test component does not determine whether traffic was captured from either the server or client, so it estimates the bandwidth usage based on traffic coming from both interfaces. For example, if you capture 500 Mbps of traffic on Interface 1, then the corresponding Recreate test will estimate that the data rate is 500 Mbps for both the transmitting and receiving interfaces. To set the data rate to be an aggregate sum for the test component, set the Data Rate Scope parameter to Limit Aggregate Throughput. Question: What is the maximum bandwidth usage for a test interface? Answer: For test components that send bidirectional traffic such as Session Sender, Application Simulator, and Recreate the value defined for Frame Rate Distribution sets the upper bound limits for bandwidth usage per interface. However, the aggregate sum of the traffic sent by each interface will fluctuate between the data rate shared between both testing interfaces.
viii
For example, if you have if a Session Sender test that uses 500 Mbps, then the test will never send more than 500 Mbps from an interface; however, the sum of traffic sent by both interfaces will fluctuate between 500 Mbps and 1000 Mbps.
ix
Question: When I import a capture file, I get an error that says, Invalid File Format on Capture Import. What does this mean? Answer: If the import process detects that the capture packets have been truncated, you will get this message. The file format must be a standard PCAP file. You should make sure that the full contents of the packets are captured by setting the -s 0 option (if you are using Tcpdump). Question: How do I modify the payload of captured traffic? Answer: You can use a third party tool to edit your PCAP data. After youve edited the payload, you can import the PCAP into the system. Question: Why is my imported traffic not replaying exactly as it was captured? Answer: The Recreate component does not replicate the IP/TCP/Ethernet headers from the PCAP file, and it does not play back the exact number of flows from the file. Instead, the component will extract the application payloads from the PCAP file and play them back to the device under test. However, the application flows will not be played back in the same order; they will be played back randomly. Question: What is the difference between Use capture file settings and Use userspecified setting? Answer: Use capture file settings essentially lets you replay the PCAP as it is, whereas Use User-specified settings enables you to control how fast or slow the traffic is replayed. For example, Use capture file settings will use the data rate, maximum simultaneous sessions, sessions per second, test duration, inter-packet delays, application payloads, and destination ports from the PCAP file. Whereas Use Userspecified settings will only use the application payload and destination ports from the PCAP file. Question: Are there any limitations on the total number of PCAP files that I can import? Answer: The number of PCAP files you can import with Recreate is limited only by the amount of available disk space. To see how much available disk space you have, go to the System Information section of the Administration page.
Exporting Tests
Exporting Tests
Question: If I export a test that uses imported data, such as certificates and Super Flow files, will that data be bundled with the exported test? Answer: You can elect to have the imported PCAP file bundled with the test when the test is exported. If you do not make this selection, the system will not export the imported data.
IPv6 Questions
Question: Which component can I use to generate IPv6 traffic? Answer: You can use Routing Robot to generate IPv6 traffic. Question: How do I set up a test that generates IPv6 traffic? Answer: First, create a test that uses the Routing Robot test component. Next, go to the Parameters area of the Routing Robot test component. Find the parameter IP Header Version, choose IPv6, and click the Apply Changes button; this will enable IPv6 traffic generation. Next, find the parameters that are tagged with the IPv6 label, and customize the fields to meet your specifications. Once you are done, click the Apply Changes button. Question: Do I have to make any changes in the Network Neighborhood in order to generate IPv6 traffic? Answer: No. The Routing Robot test component will translate the addresses from the Network Neighborhood to IPv6 addresses on the wire. Question: Can I configure the IP address for the system to be an IPv6 address? Answer: Yes. You can configure the IP address for the system to be an IPv6 address through the CLI. When you perform the initial configuration for the system, you will need to assign IPv4 addresses for the systems IP address and gateway. However, after you have performed an initial configuration for the system, you can use the updateNetwork command to configure an IPv6 address for the system.
xi
Load Profiles
Load Profiles
Question: Which test components support Load Profiles? Answer: You can use Load Profiles with Session Sender, Application Simulator, and Recreate. Question: What are Load Profiles? Answer: Load Profiles allow you to customize the behavior of TCP sessions during the different phases of a Session Sender, Application Simulator, or Recreate test.
xii
Question: What are some best practices to use for multi-box testing? Answer: Because all data for a multi-box test is copied from the primary system to the secondary systems, it is recommended that the names for capture files, Strike Lists, App Profiles, DUT Profiles, Network Neighborhoods, and tests on the secondary systems are not the same as the ones on the primary system. Any data on a secondary system that are shares a name with data on the primary system will automatically be overwritten by the data from the primary system. Additionally, all ports on the secondary systems must have the same Active Group assignment as the primary system. For example, Slot 1s ports on the primary system are assigned to Active Group 1, then all ports that will be used on the secondary systems must also be assigned to Active Group 1. Question: Can I administer multiple boxes with a single system? Answer: No. For administrative tasks such as managing user accounts and updating the system you still must log into each individual box to administer the system. Question: Do all systems in a multi-box test have to run the same ATI updates and firmware versions? Answer: Yes. All systems must have the same ATI updates and firmware versions installed. Question: How many tests can I run with a multi-box test? Answer: You can have up to five tests in a mulit-box test: one test for each system in a multi-box set up. This number is limited by the number of systems supported by the multibox feature.
Port Mapping
Question: Can I change the port mappings? Answer: Yes, you can change the port mappings from the Device Status screen. First, select the Active Group whose ports you want to modify, and then click on the Open port mapping options button. From this screen, you use the drop-down buttons located under each interface to change the port/slot mapping.
xiii
Port Reservations
Question: What are port mappings? Answer: Port mappings map ports on the BreakingPoint Storm CTM to an interface in the Network Neighborhood. Question: What is the purpose behind port mappings? Answer: Port mappings allow you to virtually rewire your port connections without having to physically enter the lab to do it yourself.
Port Reservations
Question: Do I have to reserve ports in order to run a test? Answer: Yes. You must have locked port reservations if you want to run a test. If you are running a test that uses a non-VLAN Network Neighborhood, then you must lock at least 2 port reservations. However, if you are running a test that uses a VLAN-enabled Network Neighborhood, then you only need one locked port reservation. Question: What is the difference between a locked port reservation and a regular port reservation? Answer: A locked port reservation provides you with the ability to run tests and export packet buffers from the ports. A regular port reservation simply reserves the port under your account; no other users can use these ports, however, theres not much you can do with these ports until you have locked the reservation on them. To lock a ports reservation, simply click on the port. All ports that have locked reservations under your account will have a key icon displayed over them. Question: Another user has a slot reserved. How can I reserve those ports for myself? Answer: If you click on a reserved port, the system will ask you if you would like to force reserve the port. If you click Yes, the system will reserve all ports on that slot under your account, while lock reserving the port you clicked on. Question: What is the difference between a port that has a lock icon and a port that has a key icon? Answer: A port that has a lock icon has been reserved by another user. A port that has key icon is reserved by you.
Port Settings
Question: For the BPS-10K and BPS-1K, I was able to manually set the port speed. Can I manually set the port speed for the BreakingPoint Storm CTM? Answer: Yes. From the Device Status screen, you can right-click on a port and select Configure Port. From here, you can select a port speed that is available from the Speed Settings drop-down box.
xiv
Recreate Questions
Recreate Questions
Question: How does Recreate estimate its bandwidth usage? Answer: Traffic is captured using a single port; therefore, it is not possible to determine with certainty the direction of individual flows within the capture. When Recreate estimates the bandwidth usage required to generate traffic based on a capture, it does not know in advance if the traffic seen was all from the source interface to the destination interface or vice versa; therefore, it makes a worst-case estimate that the maximum bandwidth seen during the capture could result in transmitted traffic out either interface. For example, if you capture 900 Mbps/second of traffic on port 1, the corresponding Recreate test will estimate a worst-case of 900 Mbps/second on both the source and destination interfaces.
Reporting Questions
Question: How is a flow defined? Answer: A flow includes both UDP and TCP flows. Question: What is the difference between a flow and a connection? Answer: In the report, a flow is counted when a packet is sent on a particular 5-tuple, regardless of whether an actual TCP connection is established or not. A connection, on the other hand, is counted only when a finishing handshake has created a new connection. Question: Do you track UDP connections? Answer: No. Since UDP flows are stateless, only statistics for UDP flows are posted. Question: Can I e-mail test reports to myself? Answer: Yes. If you go to the Administration area and select the My Preferences tab, you will see an option called Email Test Results. If you enable this option and then select a format from the Default Report Format drop-down menu, the system will email the report to you. Question: What is the difference between connections per second (cps) and sessions per second (sps)? Answer: Connections per second refers to only the rate at which sessions are opened. Sessions per second refer to the rate at which sessions are opened, data is sent, and closed. Question: Why does the Traffic Overview section of the report for my RFC 2544 test show that it has received slow start packets at every data rate? Answer: The BreakingPoint Storm CTM will send slow start packets in the reverse direction to the DUT for each iteration, enabling the DUT to identify the MAC addresses used by the BreakingPoint Storm CTM.
xv
Question: I am trying to view several multi-box reports at once; however, after I open five reports, my browser will not load any additional reports. Is there a limitation on the number of reports I can have open? Answer: We do not impose a limitation on the number of reports you can have open; however, the number of reports you can view at a time may be restricted by the Web browser you are using. Therefore, we recommend that you do not open more than five multi-box test reports at a time. If you experience any problems after you have attempted to open multiple reports, you should log out of the Control Center and log back in again. Question: Why is my report is missing the Ethernet Data Rates section? Answer: Either the tests duration was not long enough or there were not enough frames transmitted for the Ethernet Data Rate to be calculated. To get results for the Ethernet Data Rate, try increasing the duration of the test (either in frames or in seconds). Question: What e-mail server is used to send our reports? Answer: The BreakingPoint Storm CTM will act as a mail server. It retrieves the IP address of the SMTP server via DNS. It will use the DNS server and hostname you specified during the initial configuration of the system. To see what your DNS server and hostname settings are, telnet to the chassis. After you log into the box, use the networkInfo command to display the network configuration for the BreakingPoint Storm CTM. To edit the network information, use the updateNetwork command and any of the following options -hostname <dhcp hostname>, -ip <IPaddress>, -netmask <netmask>, -gateway <gateway IP address>, -dns1 <DNS server>, -dns2 <DNS server>, and -dns3 <DNS server>.
xvi
Security Questions
Security Questions
Question: Can I resend the same attacks every test? Answer: Yes. If you set the random seed to a non-zero value, the system will generate static content for each Strike. Question: How long does it take to run the BreakingPoint All Strikes Strike List? Answer: The amount of time it takes to run this Strike List will vary depending on the evasion options that you have set. A Security test running this Strike List can take up to 33 hours to run. Question: Is there a Strike List that contains non-fuzzing Strikes? Answer: Yes. The BreakingPoint Strike Level 5 Strike List contains only non-fuzzing Strikes. Question: What is the random seed? Answer: The random seed generator allows you to either generate dynamic or static content for each Strike. Setting the random seed to 0 will generate random content for each Strike. Any other value defined for the random seed will keep the contents of the Strike static. This is useful in cases where you want to continually resend the same exact Strikes; however, if any settings in the Strike List is changed (e.g., evasion options, adding/removing Strikes, etc.), the seed is modified, or ATI updates have occurred, then the content of the Strikes will not be retained. Question: Can I import my own attacks? Answer: Yes. You can use the import PCAP capture tool to import your own attacks or you can use the Application Manager to create your own. Question: What does Strike Error Count mean in the Security test results? Answer: These are Strikes that encountered an error. For information, please contact our support team at [email protected] or 1-866-352-6691, prompt 4. Question: What does Blocked Open mean in the Security test results? Answer: The Strike was blocked because the session could not be opened. This will happen when a TCP attack is blocked by a firewall rule (e.g., Block all traffic on Port 80). Question: Are your Strikes tested against real servers? Answer: Exploits for high-profile vulnerabilities are validated against real servers before being released in an ATI Update. However, we do not verify every Strike. Question: Can I designate which port a strike is sent on? Answer: Yes. You can designate the port by modifying the Strike options for the Evasion Profile. To set the Strike options, create a new Strike List; add a new Evasion Profile; add your Strikes; open the Strike Options window; and set the destination port. Question: How will I know if an existing Strike has been modified by an ATI Update? Answer: You will need to check the release notes for the ATI Updates to see which Strikes have been modified.
xvii
Session Questions
Question: How do I set evasion techniques? Answer: You can create evasion techniques by modifying the parameters found in the Evasion Profile section of the Security tests Parameters tab. Please note that security overrides from previous versions of the BreakingPoint Storm CTM cannot be migrated to version 1.5.1. Question: Is there an order to how the Security component sends out Strikes? Answer: Yes and no. It depends on whether your Evasion Profile is made up of all individual Strikes or intermixed with StrikeSets. If you have all individual Strikes, then the Strikes will be sent out in the order in which they were added. If Strikesets are included in an Evasion Profile, then the order is random. Question: How do I simulate an ICMP flood? Answer: You can use Bit Blaster to simulate an ICMP flood. First, create a test with Bit Blaster. Next, set the following parameters to these values: Payload.Type = User Defined Advanced Options.Ethernet type value = 0800 Payload.Data = 4500005403f3000080010d690a0a0a4c0a0a0aee080075c98c0d00000e1d1947d5c10e 0008090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223242526272829 2a2b2c2d2e2f3031323334353637 The start of the payload data maps to IIIIIIIIIIIIIIIIIIIICCCCSSSSSSSSDDDDDDDDTTTTTTTTKKKK, where CCCC is the IP header checksum, SSSSSSSS is the source IP address, DDDDDDDD is the destination IP address, and KKKK is the ICMP message checksum.
Session Questions
Question: Im running an Application Simulator test whose ramp-up behavior is Full Open + Data. It looks like the system is only sending DNS queries. Why am I not seeing any TCP packets during ramp up? Answer: During ramp up, the system will be sending DNS flows to the DUT. Using Full Open + Data as the ramp up behavior will cause the system to keep these flows open, so the system will not be able to send TCP packets. Therefore, if you want to be able to send TCP packets during ramp up, you should use the Full Open + Data + Close ramp up behavior. Question: Why cant I reach the number of sessions Ive specified in my Client Simulator or Session Sender test? For session-based tests, the BreakingPoint Storm CTM uses the Network Processor, which has a maximum of 28 workers. Each worker can support up to 26,785 sessions/sec (i.e., 750,000 / 28). The Network Processor cannot allocate a partial worker to a test component, so you may not be able to generate the maximum number of possible sessions supported by the BreakingPoint Storm CTM.
xviii
Session Questions
Question: Can I generate a single high-throughput TCP session? Answer: Yes. You can use the Session Sender component to send a single TCP stream at 1 Gbps. You will need to set the following parameters in your Session Sender test: TCP Session Duration (segments) to 1 and Data Rate.Minimum Data Rate to 1000. When setting the Data Rate, verify that the Data Rate Type is set to Constant. Question: In my Session Sender test, I have the ramp down behavior set to Half Close, which should omit the last ACK. However, I noticed that the client continues to retransmit the final ACK to the server. Why is this happening, and why is the retransmission coming from the client side, instead of the server side? Answer: This is currently how the BreakingPoint Storm CTM is designed. This specific issue should be addressed in a future firmware update. Question: What is the difference between a flow and a connection? Answer: A flow can occur any time a packet is sent. It does not require that a TCP connection be established to be counted as a flow. A connection, on the other hand, requires that the TCP connection be established and finished. Question: How do I simulate a SYN attack? Answer: There are two ways to do this: you can either select the preset SYN Flood for the Session Sender component or you can manually set up a SYN flood using Session Sender. If you are customizing a Session Sender component, select SYN Only for the parameter Session Ramp Up Behavior and then define Session Ramp Distribution / Ramp Up Duration. So, for the time specified for Ramp Up Duration, the system will only send TCP SYN packets. Question: I have a Session Sender test whose ramp down behavior is full close. However, looking at my test results, Ive noticed that the Closed by Reset counter (under the TCP Summary area) has recorded some values. Why is this a non-zero value? Answer: If your test was unable to close all the sessions before the test completed, then you will see these resets recorded in your report. This occurrence typically happens with the Session Sender presets because the ramp down phase was not long enough for the sessions to close. Question: How do I force sessions from entering the TIME-WAIT state? Answer: You should select the Open and Close with Reset Response option for the Steady-State behavior. This will force sessions to wait for the server to end the sessions, and allow the client to respond with a RST. Question: What is the maximum number of sessions the system supports? Answer: The BreakingPoint Storm CTM allows a maximum total of 15,000,000 sessions across all session-based test components this includes Session Sender, Application Simulator, and Recreate in a test. You can use the Maximum Simultaneous Sessions parameter to set the maximum number of sessions allowed per test component. For example, for the BreakingPoint Storm CTM, if Test A contains a Session Sender and an Application Simulator test component and the value defined for Maximum Simultaneous Sessions for the Session Sender test component is 3,000,000, then the
xix
Session Questions
value defined for Maximum Simultaneous Sessions for the Application Simulator test component cannot exceed 4,500,000. Question: Why does the segment size Ive set in the component not match the segment sizes of the traffic on the wire? Answer: When you are running an SSL test, the system will encapsulate the segments; this will increase the segment overhead, which is why you are seeing larger segment sizes on the wire. We typically include an additional 8 or 16 bytes into each segment for these purposes. So, when you are setting the value for the segment size, you should take into consideration that this is the unencrypted size of the segment on the unencrypted side of the SSL proxy. Question: Why is the Client Connection Rate higher than the Server Connection Rate? Answer: The client and server do not open and close TCP sessions at the same time; therefore, a connection can be half-open depending on whether it is on the client-side or on the server-side. This will affect the connection rate on the server-side and client-side. The system calculates the Client Connection Rate and the Server Connection Rate based on the following information: The client connection is established after the client SYN and the server SYN-ACK. The server connection is established after the client ACK. The data is sent after a connection has been established both on the client-side and the server-side. The server-side connection is closed after the client FIN-ACK and the server FIN-ACK. The client-side connection is closed after the client ACK. You can see that the client connection is opened before the server connection, and it is closed after the server connection has closed. Question: Session Sender should be able to open a maximum of 15,000,000 simultaneous sessions; however, after reviewing the test results, it looks like the component never reaches 15,000,000 total sessions. Why is this? Answer: If the test only has one Session Sender component, enough time must be allotted to the ramp up duration for the component to open 15,000,000 sessions. By using the one Session Sender component to open 15,000,000 sessions, it will take the component longer to reach the maximum number of sessions than if multiple components had been used. Since Session Sender can open a maximum of 750,000 sessions per second, the ramp up duration must be set to at least 20 seconds for the component to open a total of 15,000,000 sessions. To calculate the ramp up duration, the following equation was used: 15,000,000 sessions / 750,000 sessions per second = 20 seconds.
xx
SSL Questions
SSL Questions
Question: How do I test SSL/TLS? Answer: You test SSL with either the Application Simulator or Client Simulator component. Question: How do I set up an SSL/TLS test? Answer: Add an Accept TLS and/or Start TLS action to any TCP flow in the Super Flow editor. Question: What versions of SSL/TLS are supported? Answer: Application Simulator and Client Simulator support SSLv3 and TLSv1. Question: Are CA certificate chains supported? Answer: No. Only one certificate per TCP Super Flow is supported. Question: What cipher suites are supported? Answer: The following cipher suites are supported: RSA_RC4_128_MD5, RSA_RC4_128_SHA, RSA_DES_168_SHA, RSA_AES_168_SHA, and RSA_DES_256_SHA. Question: Are proxy certificates supported? Answer: No, proxy certificates are currently not supported. Question: How many SSL handshakes per second are supported? Answer: 43,000 SSL handshakes per second are supported. Question: How many transactions occur per session? Answer: You can edit Super Flows to create your own transactions. Question: Why does the payload size I see on the wire not match the MSS I have specified when SSL is enabled? Answer: When SSL is enabled, the segment size is actually treated as the size of the payload before it is encrypted. Encrypting it makes it a few bytes larger; the data is padded to a multiple of 8 or 16 bytes, depending on the encryption algorithm negotiated.
xxi
System Questions
System Questions
Question: What are the power requirements for the BreakingPoint Storm CTM? Answer: The following are the power requirements for the BreakingPoint Storm CTM: 100-240 VAC, 4 A at 50-60 Hz, and a maximum power consumption of 400 Watts. Question: What are the power requirements for the BreakingPoint FireStorm CTM? Answer: The following are the power requirements for the BreakingPoint FireStorm CTM: 200-240 VAC, 8.5 A at 50-60 Hz, and a maximum power consumption of 1,800 Watts. Question: What is the manufacturer MAC address for the BPS Management port? Answer: 00:1A:C5 Question: Does the system support ephemeral ports or application specification modifications that are required to match the application data to the IP and TCP/UDP headers? Answer: No. This functionality is currently not supported. Question: What is the maximum current available for the DUT power receptacle? Answer: 120 VAC or 8.3A Question: Can multiple users use the system? Answer: Yes. Multiple users can be logged into the system at the same time and multiple tests, Tcl scripts, and packet captures can be run simultaneously. Question: How do I restore factory settings for the BreakingPoint Storm CTM? Answer: There are two ways to restore factory settings: you can do it through the Control Center or you can manually do it from the physical box. To restore settings through the Control Center, navigate to the Administration page. Locate the area labeled System Functions, and click the Factory Revert button. To restore factory settings from the box: First, power cycle the box. Once the Status LED is green, you will need to insert a pin-sized object into the Reset button. Continue to push the Reset button until the Status LED turns red. The Status LED will then turn red and alternatively flash red and green. After this process is done, the chassis will reboot. You will need to configure the chassis after it finishes rebooting. Question: What is the difference between a factory revert and a previous revert? Answer: A factory revert will roll the system back to the build that was initially installed on it (i.e., the factory build) and revert it back to its factory state; therefore, all settings, tests, and data stored on the system will be removed. A previous revert will roll the system back to the build that was previously installed on your system. Question: How do I restore factory settings for the BreakingPoint FireStorm CTM? Answer: The BreakingPoint FireStorm CTM does not have a System Revert feature. BreakingPoint recommends that you save a clean copy of your new installation for future use. To save a clean copy of your new installation, perform a Backup from the
xxii
System Questions
Administration page once you have migrated to the BreakingPoint FireStorm CTM. Be sure to save your clean copy onto an external disk or a network drive. Question: When would I use the Preload for slower connections button on the Login Page? Answer: Use the Preload for slower connections button if your connection is slow. Pressing this button prefetches the application assets and places them into the browser's cache. This reduces the amount of time it takes for the application to load. When you clear your browser's cache, press the Preload for slower connections button again on subsequent logins. Question: What is the difference between a soft reboot and a restart? Answer: A soft reboot will restart the software processes, whereas restart will power-cycle the box. Question: How do I know when an OS update or ATI Update is available? Answer: If you have automatic updates enabled, the system will alert you that an update has been downloaded to your system once you log into the Control Center. However, if you do not have automatic updates enabled, you will need to check Strike Center periodically for new releases. On the Strike Center main page, click the OS Updates link for system updates or click the ATI Updates link for ATI updates. Question: What ports do I need to be open to allow me to manage the system? Answer: You will need to have the following ports available: 80, 8880, and 843. Question: My system status says System Not Operational. What should I do? Answer: There are two cases when this may occur: soon after a system has been rebooted, or after the system has not been rebooted for an extended period of time. Typically, after you reboot your system, you should wait at least 5 minutes before running a test. If you try to run a test before this time, the system may display this error. To resolve this error in either case, select Control Center > Administration from the Menu bar, click the Restart button to reboot your system, and wait at least 5 minutes before using the system. Question: Where is the diagnostics file? Answer: You can download the diagnostics file from the BreakingPoint Storm CTM Start Page. If you click the Diagnostics button, you will be prompted to save a ZIP file to your computer. The zip file contains the diagnostics files for the system. Question: Why does it take so long for my browser to finish loading information? Answer: Occasionally, there may be some lag between loading different screens in the Control Center. We recommend viewing the Control Center with at least 2 Mb of RAM.
xxiii
Tcl Questions
Tcl Questions
Question: I want to run tests that Ive created from the Control Center through the Tcl interface. How do I do this? Answer: You can run tests created from the Control Center through the Tcl interface by using the run command. For example, you can use the following syntax to run a test you have created and given the name appsimTest1:
set bps [bps::connect 10.10.11.219 admin admin] set t [$bps createTest-template appsimTest1] $t run
Question: Do I have to use BreakingPoint Systems Tcl shell? Answer: Our Tcl shells are Standalone Runtime Kits (Starkit), which allow you to wrap an application around it and make it completely self-contained. You can unwrap a Starkit using SDX, which you can get at http://www.equi4.com/starkit/sdx.html. Question: Do I need to download a new Tcl shell each time I update the system? Answer: Yes. Question: Do you support Tcl 8.5? Answer: Yes. Question: How can I determine if there are tests already running on the system? Answer: You can use the chassis object to determine the status of the system. For example, you can use the following syntax::
set bps [bps::connect 10.10.10.10 admin admin -onclose exit] set chassis [$bps getChassis] proc echo {args} { puts $args } $chassis configure -ontestprogress {echo "test is running: "} set slot 1 set port 0 $chassis reservePort $slot $port
xxiv
Test Questions
Question: How do I get a list of available commands from the Tcl interface? Answer: Call the variable you used to store the bps::connect. For example, if you stored the connection in the variable bps, you will need to enter $bps to get a list of available commands. Question: I get the error BPS device is version xxxx, while this shell is version xxxx. Please download a new version of the shell from the device. How do I get the new version of the Tcl shell? Answer: This error will display after you have upgraded your system to a newer OS version, but have not downloaded the latest Tcl shell. You will need to go to the systems Start Page and click the Download Tcl Shell link to download the newest shell. Question: When the system boots up, it notifies that a slot is down, but does not indicate which port. Why does it not specify the port number? Answer: The state change is on the slot itself, not on an individual port. Question: How do I get a list of the parameters and values for a component? Answer: You can use the configure command to return a list of parameters and values for a component. For example, if you have a Routing Robot component called RR1, you can use the following syntax to return the values and parameters for the component:
RR1 configure; returns a list of parameters and values for Routing Robot
Test Questions
Question: Can I edit a BreakingPoint Systems canned test? Answer: Yes. You can edit a canned test; however, you must save the modified version as a new test. Question: How many tests can I concurrently run? Answer: The number of tests that you can run concurrently depends on the number of ports you have on your BreakingPoint Storm CTM. For example, if your BreakingPoint Storm CTM has 8 ports, you can run 8 tests at a time; if you have 16 ports, then 16 tests can run simultaneously. Question: How do I run a test without saving the changes I have made to the test? Answer: You can run a test without saving your changes by select Test > Run from the Menu bar. However, after you run the test, clicking the Edit button on the Real-Time Statistics window will take you back to the saved version of the test. Any changes that you made prior to running the test will be restored to their saved settings. Question: How can I delay the start of a test component? Answer: Each component has a parameter called Delay Start that enables you to delay the start of a test component by the time specified. This parameter is measured in seconds and supports floating values.
xxv
Question: I am trying to run a test, but the run functionality is disabled. Why is this happening? Answer: The ports you are trying to use are in use by another user. You may want to remap your ports on the Device Status page, or wait until the user has finished using the ports. This can also occur if you do not have any ports reserved. Functionality can also become disabled if the test you are attempting to run is invalid due to oversubscribing (for example, if you are attempting to run a 10 Gb test on a 1 Gb blade).
Traffic Questions
Question: How is packet size calculated? Answer: Subtract 18 from the frame size. This will give you the byte size of the packet. Question: How is latency measured? Answer: Session-based components only measure latency on TCP packets using the TCP timestamp field. The Bit Blaster and Routing Robot test components measure interpacket delay, or the amount of time it takes from the last sent packet to the next arriving packet. Question: What is the latency resolution? Answer: Latency calculations are accurate to +/- 1 millisecond. Question: How are packets validated? Answer: The Bit Blaster and Routing Robot test components compare all fields in the header (except values that have been modified due to routing or NATing devices) and all bytes of the payload to identify what was sent and received. Question: Do you support SSL (HTTPS)? Answer: Yes. Any TCP flow can be encrypted with SSL, not just HTTP. Question: Can I send and receive traffic on the same interface? Answer: Yes. You can send and receive traffic on the same interface if the test component has a different VLAN-enabled domain assigned for the server and the client interfaces.
xxvi
Update Questions
Update Questions
Question: I am an existing customer currently operating on Release 1.5 and I would like to upgrade to Release 2.2. Can I do this? Answer: No. You must first upgrade from Release 1.5 to Release 2.0 (or 2.1). Releases prior to Release 2.0 must be upgraded to Release 2.0 (or 2.1) before upgrading to Release 2.2. After you have upgraded to Release 2.0 (or 2.1), you can then upgrade to Release 2.2. Question: I am an existing customer currently operating on Technical Release 2.1.2 and I would like to upgrade to Release 2.2. Can I do this? Answer: No. Upgrading directly from a Technical Release to any subsequent release (including subsequent Technical Releases) is not supported, and may not be possible. In order to upgrade from a technical release to Release 2.2, you must first revert to a prior full release (Release 2.0, for example). After reverting to Release 2.0 or 2.1, you may then upgrade to Release 2.2. Question: Do I need to install the BreakingPoint FireStorm CTM blade into my existing chassis to use Firmware Release 2.2? Answer: No. Firmware Release 2.2 works on both the BreakingPoint Storm CTM and the BreakingPoint FireStorm CTM. Question: I just installed the latest OS update; however, I could not reconnect. What should I do? Answer: Clear the cache on your browser. Question: Where can I download the latest firmware updates and ATI updates? Answer: All updates can be downloaded from Strike Center. Visit http:// strikecenter.bpointsys.com. Question: How will I know an update is available? Answer: If you have automatic updates enabled, the system will alert you that an update file has been downloaded to your box. If you do not have automatic updates enabled, you will have to periodically visit Strike Center to check for new releases. Question: I have automatic updates enabled. Does this install the update for me? Answer: No. Automatic updates will only download the update file. You will need to log into the Control Center to install the update. Question: How do I get a Strike Center account? Answer: Contact our support team at [email protected] or 1-866-352-6691, prompt 4. Question: How are the OS update files named? Answer: Update files use the format X-N.bps. The X refers to the oldest version you can upgrade from, and the N refers to the update files version.
xxvii
Update Questions
Question: Will ATI Updates update my existing Strike List with the latest Strikes? Answer: All ATI Updates will populate Smart Strike Lists with current strikes. Standard Strike Lists must be manually updated after applying any ATI upgrade.
xxviii
1 Product Overview
This section covers: BreakingPoint CTM Overview BreakingPoint Storm CTM Hardware Overview Control Center Overview Features Overview
Callout 1 refers to the removable fan tray that is vertically mounted on the right-side of the chassis.
Callout 2 and Callout 3 refer to the slots dedicated to high-speed data plane processors, or the blades, for the system. When you initially receive the BreakingPoint Storm CTM, these slots will not contain any blades, so you will need to install the blade(s) into the chassis. Each blade provides fiber-optic data ports that support up to 10 Gbps for 10 Gb blades and 1 Gbps for 1 Gb blades. The fiber-optic connections between the ports on your device under test to the test ports on the chassis establish the transmitting and receiving interfaces for your tests. Callout 4 points to the system controller, which holds the BPS management ports, target control ports, a reset button, and an eSATA port. The BPS management ports (serial and Ethernet), located on the system controller, allow you to connect your system to a network and access it through an IP address; the target control ports allow you to automate testing for the device under test; and the reset button restores your system to the default factory settings. Callout 5 refers to the power tray, which contains the power supply for the system.
Front-view
Figure 1-2 on page 2 illustrates the front of the BreakingPoint Storm CTM. Locate the corresponding callout in the table below for more information about each component. Figure 1-2: BreakingPoint Storm CTM Front-view
Callout 1 2 3
Component System Fan Tray Data Ports Target Control Serial Port
Description Holds the fan tray for the system. Transmits and receives traffic to and from the DUT. Used to manage and configure settings for the DUT.
Callout 4 5 6
Component Target Control Ethernet Port BPS Management Serial Port BPS Management Ethernet Port eSATA Port
Description Used to manage and configure settings for the DUT. Manages the BreakingPoint Storm CTM configuration through a serial connection. Manages the BreakingPoint Storm CTM configuration through an Ethernet connection. Provides an eSATA connection for an external memory device. This is currently disabled for the 1.3 Release. Restores the system to factory settings; this process is irreversible and all tests, imported data, and configurations will be permanently removed from the system.
Reset button
Back-view
The power inlet and power switch are located on the back of the chassis, as shown in Figure 1-3 on page 3. Additionally, there are BNC interfaces that you will be able to use in future releases to link together multiple chassis. Figure 1-3: BreakingPoint Storm CTM Back-view
Callout 1
Description Interfaces that are used to connect multiple chassis together (for clock I/O and trigger I/O) Power breaker switch for the BreakingPoint Storm CTM
Power Switch
Callout 3
10 Callout 5 refers to the removable fan tray that is vertically mounted on the right-side of the chassis.
Enabling JavaScript
You must have JavaScript enabled to view the Control Center. To enable JavaScript for Internet Explorer 5, 6, or 7: 1. Open an Internet Explorer browser window. 2. Select Tools > Internet Options from the Menu bar. 3. Select the Security tab. 4. Click the Custom Level button. 5. Scroll down to the Scripting section. 6. Find the category called Active Scripting. 7. Click the Enable button for this category. 8. Click Yes when the confirmation popup window displays. 9. Click the OK button to exit the Internet Options window. To enable JavaScript for Mozilla Firefox 1.5 and 2.0: 1. Open a Mozilla Firefox browser window. 2. Select Tools > Options from the Menu bar. 3. Select the Content button located at the top of the window. 4. Click the Enable JavaScript option. 5. Click the OK button to exit the Options window. To enable JavaScript for Safari: 1. Open a Safari browser window. 2. Select Preferences from the Safari menu. 3. Click the Security option from the top of the window. 4. Select the Enable JavaScript option located under the Web Content section. 5. Close the Security window.
Browser Resources
Please note that if you have several browser windows open simultaneously, or if you have multiple instances of the Control Center open, this may cause lagging or delayed responses from the system. This is normal behavior for the Control Center if multiple browser resources are being used. BreakingPoint recommends clearing your cache and refreshing your browser after upgrading or reverting to any release of the BreakingPoint CTM.
Navigational Overview
This section provides an overview of the navigational areas in the Control Center. The Control Center is divided into two main areas: the menu bar and the navigational buttons. See Figure 1-4 on page 5 for a tour of the interface. Figure 1-4: Control Center Overview
Table 1-1: Control Center Overview Callout 1 2 Menu Bar Device Status Icon Name Description Provides point and click access to the main areas of the user interface. Provides access to the Device Status area so that you can reserve ports while no tests are running or the Real-Time Statistics screen if there is a running test.
Features Overview
Callout 3
Features Overview
Table 1-2 on page 6 lists the features available with the BreakingPoint Storm CTM. Table 1-2: BreakingPoint Storm CTM Features Feature Application Manager Description Create and customize Super Flows and App Profiles that define the characteristics of the application traffic. Use App Profiles to build the layers of application traffic that can be generated by the system. Create custom profiles that contain the connection settings and the interface speeds for a device under test. Send completed test results to your e-mail account. Detect and capture specific information flows out of a large field of untargeted flows. Enables you to easily construct a scenario with configurable traffic (with both random and specific keywords) and realworld background traffic. Allows you to test your LTE devices by emulating a mobile telecommunications environment complete with mobile phone users of various types, connecting cell towers, and a variety of services. Emulate multicast clients and servers for performance testing of external clients, servers, and routers. Use a single management interface to control multiple boxes and share one IP source address pool across multiple boxes. Set up network addressing for test traffic. Run Quick Tests to get an instant snapshot of how well your device performs based on standard industry testing metrics. Get instant feedback on the test progress with interactive and live graphs.
Multi-box Testing
Real-Time Stats
Features Overview
Table 1-2: BreakingPoint Storm CTM Features Feature Recreate Traffic Reports Resiliency Score Test Lab Description Capture live network traffic and replay traffic to the device under test. Export test results in PDF, HTML, RTF, XLS, CSV, and ZIP (CSV). Consists of a set of standardized tests for measuring the resiliency of your network devices, allowing you to determine their true level of security, performance, and stability. Encrypt and/or decrypt any TCP traffic with SSL/ TLS. Access thousands of Strikes and dozens of Strike options from which you can create custom Strike Lists. Import and export Strike List from one system to another. Instantly obtain the latest ATI Updates from Strike Center. Automatically download OS updates from Strike Center. Use the Windows, Linux or Mac OS Tcl shell to automate device testing with Tcl scripting. Use these customizable virtual devices to simulate Layer 2-7 traffic. Define custom pass/fail test criteria. Import tests or export tests and share them with other systems. Tag network traffic with single or double VLAN tags.
Strike List Import and Export ATI Updates System Updates Tcl Interface Test Components Test Pass/Fail Criteria Test Import and Export VLAN Tagging
Features Overview
2 Getting Started
This section covers: Getting Started Overview Task 1: Accessing the Control Center Task 2: Creating a User Account Task 3: Setting the Time and Date Task 4: Creating a Device Under Test Profile Task 5: Creating a Network Neighborhood Task 6: Making Port Reservations Task 7: Creating a Test
You must also have the host address that has been set for the BPS Management Port and the Control Center login information. Note: The chassis must already be installed and configured before the Control Center can be accessed. For more information on installing and configuring the BreakingPoint CTM, see the BreakingPoint Storm CTM Installation Guide . Figure 2-1: BreakingPoint Storm CTM Start Page
To access the Control Center: 1. Open a Web browser. Note: After upgrading or reverting to any release of the BreakingPoint CTM, you must clear your cache and refresh your browser. Note: The default address is http://10.10.10.10; however, the host address may have changed during the initial configuration of the system. You will need to contact the System Administrator for the current host address. 2. Enter the host address for the BPS Management port in the Address bar. 3. Click the Start BreakingPoint Systems Control Center link on the Start Page. Note: A new window will open and display the Control Center login page. 4. Enter the login ID in the Login ID field. 5. Enter the password in the Password field. Note: Passwords are case sensitive. 6. Click the Login button.
10
Note: The system allows three invalid logins. If invalid login information is entered on the fourth attempt, the login window will lock the user out. Users must refresh their browser to unlock their accounts.
To create a user account: 1. Select Control Center > Administration from the Menu bar. 2. Enter the users name in the Full Name field (e.g., Joe Smith). Note: The users name can consist of up to 40 alphanumeric and/or special characters. 3. Enter a login ID in the Login ID field. Note: The login ID must use alphanumeric characters and consist of 1-15 characters. The first character must be a letter. Login IDs cannot solely consist of numbers. Once the login has been created, it cannot be changed. 4. Enter the password for the account in the Password field. Note: The password must consist of 1-15 alphanumeric characters.
11
5. Re-enter the password in the Verify Password field. 6. Enter a valid e-mail address in the Email field. Note: The e-mail address can use the following special characters: underscores, hyphens, periods, and spaces. The system will send completed test results to this address if the auto e-mail option is enabled. 7. Click the Add User (+) button.
To set the time and date: 1. Select Control Center > Administration from the Menu bar. 2. Find the area labeled System Date/Time. 3. Click the calendar icon located under the Date field. 4. Use the arrows to scroll to the desired month, and then select the desired day. 5. Enter the time, in hours and minutes, in the Time field. 6. Click the Time Zone drop-down button to select the time zone. 7. Click the Apply button to save your changes.
12
To create a DUT Profile: 1. Select Control Center > Device Under Test from the Menu bar. 2. Select a profile from the Profile Name list to clone. 3. Click the Clone the selected DUT button. 4. Enter a name for the DUT Profile in the Name field and click the OK button. 5. Click the Device Selection drop-down button and select a device type. (Optional) Note: Each device type has its own set of global commands. Select the device type that best fits your device. 6. Click the Connection Type drop-down button and select Telnet, SNMP, SSH, or Serial.
13
Note: If you have selected Serial, the DUT must be plugged into the chassis through the BPS Management serial port. If you have selected Telnet or SSH, the DUT must be plugged into the chassis through the BPS Management Ethernet port. 7. Define the connection parameters for the DUT under the Connections Settings area. 8. Enable or disable any global commands from the Global Commands list. Note: All cloned DUT Profiles will inherit the active global commands from its parent DUT Profile. 9. Click the Apply button.
14
To create a Network Neighborhood: 1. Select Control Center > Network Neighborhood from the Menu bar. 2. Click the Create a new network neighborhood (+) button located under the Network Neighborhoods list. 3. Enter a name for the Network Neighborhood in the Name field. 4. Click the OK button. Note: Each interface will have a default domain with a pre-configured subnet.
Adding a Domain
This section describes how to add a domain to a test interface.
15
To add a domain to a test interface: 1. Select Control Center > Network Neighborhood from the Menu bar. 2. Select a Network Neighborhood from the Network Neighborhoods list. 3. Click the interface to which you would like to add a domain. Note: The user interface can only show 6 interfaces at a time; therefore, you may need to click the List All Tabs (>>) button to display all the available interfaces. 4. Click the Create a new domain (+) button located under the Domains list. 5. Enter a name for the domain in the Name field and click the OK button. 6. Click the VLAN Ethertype drop-down button and select a TPID for the domain. This will be the outer Qtag for Q-in-Q routing. Note: Skip this step if you are creating a domain for one-arm testing (i.e., SSL testing using the external interface). Now you can modify the default subnet or create additional subnets for the domain. Keep in mind that the number of subnets in a domain depends on whether it enables VLANtagging. A domain can have one subnet that does not have a VLAN ID; however, each additional subnet that is added to the domain must have a VLAN ID assigned to it.
Defining a Subnet
This section describes how to add a subnet to a non-VLAN tagging subnet on a nonexternal interface. For information on external device addressing or VLAN-enabled addressing, see the section External Interface Addressing on page 64.
16
To define a non-VLAN subnet: 1. Select Control Center > Network Neighborhood from the Menu bar. 2. Select a Network Neighborhood from the Network Neighborhoods list. 3. Select a test interface to modify by clicking the Interface tab. 4. Select a domain from the Domains list. 5. Click the Show the create new subnet form (+) button located under the Subnet table. Note: If you are adding a subnet to an empty domain, then you can skip this step. The Subnet form will already be blank and ready for you to input addressing information. 6. Select IPv4 or IPv6. 7. Click the VLAN Tagging drop-down button and select a VLAN tag. 8. Enter a valid VLAN ID in the VLAN ID field(s). 9. Enter an IP address in the Network IP Address field. Use the format x.x.x.x, where x is a number between 0-255. 10. Enter a mask for the network address in the Network Mask field. 11. Enter a gateway address in the Gateway IP Address field. Use the format x.x.x.x, where x is a number between 0-255. 12. Enter an Ethernet Address in the Ethernet Address field. Use the format xx:xx:xx:xx, where x is a valid hexadecimal value. 13. Click the Type drop-down button and do one of the following: Select Host to use one MAC address per host.
17
Select Virtual Router to use one MAC address for all hosts, and enter an IP address for the virtual router in the Router IP Address field. 14. Enter a range of IP addresses using the Minimum IP Address and Maximum IP Address fields. Use the format x.x.x.x, where x is a number between 0-255. 15. Click the Create button. 16. Click the Save Network button.
18
When you click on a port to reserve it, the system will lock the port reservation under your account. Locking a port reservation will also reserve all other ports under your account as well; however, only the ports with locked reservations can be used to run tests. Note: In order to run two tests concurrently, each set of blades must be assigned to a different Active Group. There are three ways to reserve a blade: Reserving an unreserved blade Force reserving a reserved blade Simultaneously reserving or unreserving a blade Reserving an Unreserved Blade Unreserved blades may be reserved simply by selecting the Active Group to which you would like to assign the blade, and then clicking on the port you would like to reserve. This will lock the port reservation, as well as reserve all the ports on the blade under your account. Note: A lock containing the Active Group will appear on all the ports on the blade. An important thing to remember when reserving your ports is the order in which you reserve them. Whenever you reserve a port, the system will automatically map that port to an interface on the chassis. For example, if you reserve ports 0 and 1, then port 0 will map to interface 1 and port 1 will map to interface 2. You can use these interfaces to run tests. If an interface is not mapped to a port, then you cannot use that interface to run tests. If you want to remap the ports to different interfaces, you can click on the Port Mapping options, located on the Device Options screen, and manually remap the ports. Note: Only reserved ports will can be mapped to interfaces. To reserve ports on an unreserved blade: 1. Select Control Center > Device Status from the Menu bar. 2. Click the Active Group drop-down menu. 3. Select the Active Group to which you would like to assign the ports. 4. Click on the port(s) you would like to reserve. Note: A lock will appear over the reserved port. All other ports will be tagged with an icon denoting the ports Active Group. These ports, even though they have not been manually reserved by you, will be reserved under your account. Force Reserving a Blade If another user has reserved the ports on a blade, you can force reserve all the ports on that blade by clicking on any of the ports. During a force reserve, the system will alert you that the ports are reserved by another user and ask if you want to force reserve all the
19
ports on that blade. If you force reserve the port at this point, the system will reserve all the ports on that blade under your account. Note: You cannot force reserve ports if there is a test or system process running on any of the ports on the blade. This system will alert you that there is a process running on that slot. You should check the port notes before you force reserve the port(s) because other system users may not want you to remove their port reservations. If available, the port notes will appear as a yellow note icon located below the port. As a best practice recommendation, you should add a port note to your reserved ports. For example, you may want to note that you will be running tests on these ports everyday between 2 and 4 p.m. This may prevent other users from removing your port reservations. To force reserve ports 1. Select Control Center > Device Status from the Menu bar. 2. Click on the port(s) you would like to reserve. Note: You can only force reserve ports that do not have tests or system processes running on them. 3. Click Yes when the dialog window displays, asking if you would like to force reserve all the ports in the slot. Note: The port(s) that you clicked on will show a locked icon, denoting that this port has been reserved by you. All other ports will be tagged with an icon showing the active group to which the ports belong. Simultaneously Reserve or Unreserve All Ports On A Blade When you right-click on a port, you can conveniently reserve or unreserve all ports on that slot without having to individually select them. To simultaneously reserve or unreserve all ports on a blade: 1. Select Control Center > Device Status from the Menu bar. 2. Click the Active Group that you would like to use from the drop-down menu. 3. Right-click on the slot that has the ports you would like to reserve or unreserve. 4. Select the Reserve/Unreserve all ports on this slot option.
20
To create a test: 1. Select Test > New Test from the Menu bar. 2. Click Select the DUT/Network from the Test Quick Steps menu. 3. Select a DUT Profile from the Device Under Test(s) list. Note: Click the Open device under test screen link to modify the DUT Profile. Once you have made your changes, click the Return button to go back to the DUT and Network Neighborhood selection screen. For more information on DUT Profiles, see the section Task 4: Creating a Device Under Test Profile on page 13. 4. Select a Network Neighborhood from the Network Neighborhood(s) list. Note: Click the Open network neighborhood screen link to modify the Network Neighborhood. Once you have made your changes, click the Return button to go back to the DUT and Network Neighborhood selection screen. For more information on Network Neighborhoods, see the section Task 5: Creating a Network Neighborhood on page 14. 5. Click the Accept button once you have made selections for the DUT Profile and Network Neighborhood. 6. Click Add a test component from the Test Quick Steps menu. 7. Select the test component to be added to the test. 8. Do any of the following: Click the Information tab.
21
n n n n n
Enter a new name for the test component in the Name field. (Optional) Enter a new description for the test component in the Description field. (Optional) Enable or disable the Active check box. (Optional) Enable or disable the Include in Report check box. (Optional) Click the Apply Changes button when done.
Select the interface(s) that will act as the client. The interface(s) you select must be mapped to a port. Select the interface(s) that will act as the server. The interface(s) you select must be mapped to a port. Click the Apply Changes button when done.
Select a Component Preset. Click the Apply Changes button when done.
Adjust any parameters for the test component. Edit the Evasion Profile settings. (Optional, for the Security component only) Click the Apply Changes button when done.
Note: Security overrides from previous versions of the BreakingPoint Storm CTM cannot be migrated to version 1.5.1. 9. Repeat steps 6-8 for each test component you want to add to the test. 10. Enter a value in the Seed Override field. (Optional) Note: Use the Seed Override to modify the seed for Security, Application Simulator, and Stack Scrambler tests. The Seed Override enables you to control whether static or dynamic content will be generated. If you explicitly set the seed, the system will recreate the same application flows each time the Super Flow is run. If you do not explicitly set a seed, the system will automatically randomize a seed for the Super Flow each time it is used. 11. Click the Define Test Criteria from the Test Quick Steps menu and create the pass/fail criteria for the test. For more information on pass/fail criteria, see the section Test Pass/Fail Criteria in the BreakingPoint Storm CTM User Guide . 12. Click the Save As button. 13. Enter a name for the test in the Name field. 14. Click Save and Run from the Test Quick Steps menu to run the test.
Seed Override
The Seed Override is used to modify the seed for the test. The seed is used in Security, Application Simulator, and Stack Scrambler tests whenever there is a value that can be randomized. The purpose of the seed is to provide randomness and/or predictability.
22
Establishing a set value for the seed will give you the ability to create a test with results that are reproducible. From the Test Panel, you can enter a numerical value into the Seed Override field to override the seed.
23
24
3 Administration
This section covers: Administration Page Overview User Accounts Routes System Updates ATI Updates System Logs Database Optimization My Preferences System Functions System Date/Time
25
Callout 1
Description Displays the systems version, product build, Strike build, IP address, and past build history. Provides controls for rebooting and restoring the system and for exporting and importing multiple tests. Sets the time and date for the system. Allows you to manage system users. Allows you to set up static routes for the system. Allows you to update the system to the latest ATI Updates and firmware releases. Stores logs of the systems activity. Reclaims and compresses empty spaces within the database to increase storage space. Allows you to apply user-specific preferences to a user account.
System Functions
3 4 5 6 7 8
System Date and Time System Users Routes System Updates System Logs DB Optimize
My Preferences
26
User Accounts
User Accounts
A user account provides authorized access to the Control Center. Any user can create, modify, and delete user accounts. Multiple users can be logged into the system using the same account at any time. However, as a best practice, we recommend that each user log into the system using their own user account. This will prevent users from overwriting another users settings. For example, if multiple users are logged into the system using the account, then each user may attempt to utilize that accounts port reservations to run tests. This may cause confusion and frustration among other users, so its best for each user to have and use their own accounts.
To create a user account: 1. Select Control Center > Administration from the Menu bar. 2. Click the Systems Users tab. 3. Enter the users name in the Full Name field. 4. Enter a login ID for the user account in the Login ID field.
27
User Accounts
Note: The login ID must use alphanumeric characters and consist of 1-15 characters. The first character of the login ID must be a letter. Login IDs cannot solely consist of numbers and cannot contain any spaces. Once the login ID has been created, it cannot be modified. 5. Enter the account password in the Password field. Note: The password must consist of 1-15 alphanumeric characters. 6. Re-enter the password created in Step 5 in the Verify Password field. 7. Enter the users e-mail address in the E-mail field. Note: The e-mail address can use the following special characters: underscores, hyphens, periods, and spaces. 8. Select the appropriate group for the user being added. 9. Select the appropriate language for the user being added. 10. Click the Add User button.
28
Routes
6. Click the Apply Changes button. Manual Reset Manually resetting an account password requires a serial connection to the system. To manually reset the password: 1. Open a terminal emulation client. 2. Establish a connection to the BreakingPoint Storm CTM. 3. Log into the system using the following information: Login: reset Password: password 4. Select a user from the list of system users. 5. Enter a new password for the user. 6. Verify the password and press the Enter key. 7. Exit the terminal emulation client.
Routes
You can create additional routes to alleviate the need for direct access to the chassis. These routes reflect the layout of the network with which the BPS Management port communicates. Routes can be created per host or for all hosts within an entire network. Note: DHCP must be disabled in order to add additional routes. To disable DHCP, see the BreakingPoint Storm CTM Installation Guide . To configure additional routes: 1. Select Control Center > Administration. 2. Click the Routes tab. 3. Click the Host or Network radio button. 4. Enter a host address in the IP Address field. 5. Enter a mask for the host address in the IP Mask field (if you selected Network in Step 3). 6. Enter a gateway address in the Gateway field. 7. Click the Add Route button.
System Updates
There are two ways to obtain the latest firmware updates from BreakingPoint Systems.You can either go to Strike Center and download the update file (.bps file), or you can enable the system to automatically download the update file and store it on the system.
29
System Updates
Installing Updates
If you do not have automatic updates enabled, you must periodically check Strike Center for the latest releases. If there is a new firmware release, download the update and save it to your computer. Note: Each firmware update will be named using the following format: update-X-N.bps. N represents the updates firmware version, and X represents the oldest firmware version N will work with. For example, update-100-149 means that you can update to version 149 if your system is currently running version 100 or greater. To install a firmware update: 1. Select Control Center > Administration from the Menu bar. 2. Click the System Updates tab. 3. Click the Update button. 4. Click the Yes button when the confirmation window displays. Note: A new window will display. Use this window to upload the latest firmware update file. 5. Click the Browse button. 6. Navigate to the location of the update file. 7. Select the update file. 8. Click the Open button. 9. Click the Upload button.
30
ATI Updates
Note: A pop-up window will display the progress of the update. Once the update finishes, a pop-up window will alert you that the system needs to restart. 10. Click the OK button to restart the system. Note: Restarting the system will take 2-5 minutes. Please clear your browsers cache before opening the Control Center.
ATI Updates
There are two ways to obtain the latest ATI Updates from BreakingPoint Systems.You can either go to Strike Center and download the ATI Updates (.bps file), or you can enable the system to automatically download the ATI Updates and store them on the system.
Automatic Updates
If automatic ATI Updates are enabled, the system will routinely check for new ATI Updates and download them when they are available from BreakingPoint Systems. The system will alert you that there is a new ATI Update available after you log into the Control Center. When you see this alert, you must go to the Administration screen to install the ATI Updates. Note: Enabling automatic ATI updates does not automatically install the ATI Update.You must go to the Administration screen to install the ATI Update. For information on installing the update, see the section Installing ATI Updates on page 31. To enable automatic updates: 1. Select Control Center > Administration from the Menu bar. 2. Click the System Updates tab. 3. Enable the Automatically notify and download ATI Updates option. 4. Enter your StrikeCenter account ID in the StrikeCenter ID field. 5. Enter your StrikeCenter account password in the StrikeCenter Password field. 6. Click the Set Password button. Note: For Strike Center account information, please contact our Support team.
31
System Logs
Note: The ATI Update will be named using the following format: strike-X.bps, where X is the ATI Update version. To install an ATI Update: 1. Select Control Center > Administration from the Menu bar. 2. Click the System Updates tab. 3. Click the Update button. 4. Click the Yes button when the confirmation window displays. Note: A new window will display. Use this window to upload the latest ATI Update. 5. Click the Browse button. 6. Navigate to the location of the ATI Update. 7. Select the ATI Update. 8. Click the Open button. 9. Click the Upload button. Note: A pop-up window will display the progress of the update. Once the update finishes, a pop-up window will alert you that the update has completed. 10. Click the Close button.
System Logs
There are six logs that track the various events and errors that occur on the system: Audit Error Information Message System Web
The information listed in these logs are used for support related issues. Typically, when you make a support request, the BreakingPoint Systems support team will require that you send in the information stored in these logs. To send in a compressed file of these logs, go to the Start Page and click the Diagnostics button. Save the file called diagnostics-xxx.bug to a location on your computer and send that file to the support team. The information stored in the logs are not intended to be deciphered. Any system messages intended for you will automatically display as popup messages.
Database Optimization
A database optimization defragments the systems database to clear up space for capture files and reports. There are two types of database optimization methods:
32
Database Optimization
The main differences between the two methods are: the amount of time it takes to run them and how they optimize free space. The Quick DB Optimize is the fastest way to reclaim disk space in the database. It can take anywhere between a few minutes to a few hours to run. It is recommended that you run the Quick DB Optimize daily for proper maintenance of the database. Therefore, you should enable the automatic optimization feature so that it runs daily. Full DB Optimize should not be run unless your database is nearly full and the Quick DB Optimize is not freeing up enough space in the database. Before running the Full DB Optimize, you should delete any old reports or tests that you no longer need from the system. This may help free up some space on your database and eliminate the need to run the Full DB Optimize. Since the Full DB Optimize can take up to a day to complete, it should only be used as a last resort to free up database space.
33
Database Optimization
See Table 3-1 on page 34 for more information. Table 3-1: Database Optimization Methods Optimize Type Quick DB Optimize Description Generally, when you need to quickly free up some space in the database, you should use the Quick DB Optimize feature. During a Quick DB Optimize, the system will reclaim the empty spaces that are currently available in the database. The Full DB Optimize feature defragments the entire database: it compresses the empty spaces to increase the databases available storage space. It is recommended that you use this feature only when the database is near capacity because it can take up to a day to run a full database optimization. For more information on database space, see the section Viewing Database Space on page 35.
Full DB Optimize
When the database optimization is in progress, you will have limited access to some features in the Control Center this includes running tests and deleting reports. Because of this limited access, you may want to schedule the database optimization to run overnight while the BreakingPoint Storm CTM is not in use, or you can choose to run the database optimization manually when the database optimization is necessary. When the system runs the database optimization, the system will display a yellow progress bar in the lower left corner of the interface stating: DB optimization in progress. Note: System upgrades cannot be performed while the optimization is in progress. Attempting to perform system upgrades while the optimization is in progress will cause the upgrade to fail and will result in system errors. Automatic Optimization The Database Optimize feature can be scheduled to start automatically between certain time intervals. For example, you can set up the optimization to start between 1 a.m. and 3 a.m. If the automatic optimization option is turned on, the system will only run the optimization if there is no test currently running on the system during the times you have scheduled for the optimization. Note: The system uses a 24-hour clock, where 12 a.m. is 0:00, and 11 p.m. is 23:00. Note: While the optimization is in progress, you will not be able to run tests or delete reports. Be aware that if a test is running when a user elects to run a DB Optimization (quick or full), the DB Optimization will automatically begin when the test is completed. If a test
34
Database Optimization
series is running when a user elects to run a DB Optimization, the DB Optimization will be queued to run at the first opportunity in between tests. The next test in the series will not begin until the DB Optimization is complete. Note: If the database is full, the DB Optimization could take a substantial amount of time before it is complete. This could cause a long delay between tests in a test series. To enable automatic database optimization: 1. Select Control Center > Administration from the Menu bar. 2. Click on the DB Optimize tab. 3. Click the Automatic Optimize On option to enable it. 4. Enter an integer value between 0 and 24 in the Start expunging at hour field. 5. Enter an integer value between 0 and 59 in the Start expunging at minute field. 6. Enter an integer value between 0 and 24 in the End expunging by hour field. Note: This value does not represent when the optimization ends, but rather, the latest time in which the optimization can start. 7. Enter an integer value between 0 and 59 in the End expunging by minute field. 8. Click the Time Zone drop-down button. 9. Select a timezone from the Time Zone list. 10. Click the Submit button. Manual Optimization If you do not want to set up automatic optimizations, you will need to manually optimize the system periodically. It is recommended that you check the database space available in order to determine whether or not you need to free up space on the system. For more information on database space, see the section Viewing Database Space on page 35. Note: While the optimization in progress, you will not be able to run tests or delete reports. Also, attempting to perform system upgrades while the optimization is in progress will cause the upgrade to fail and will result in system errors. To manually optimize the database: 1. Select Control Center > Administration from the Menu bar. 2. Click on the DB Optimize tab. 3. Click either the Quick DB Optimize or the Full DB Optimize button. 4. Click Yes at the prompt.
35
My Preferences
Before running an optimization, you should try deleting old reports, tests, and capture files you no longer need from the system. This will help free up space in the database. If this does not reduce enough database space, then you should run the Quick DB Optimize. Finally, if running the Quick DB Optimize does not free up the necessary space, then you should run the Full DB Optimize. The Full DB Optimize should only be run as a last case scenario where neither deleting old files or running the Quick DB Optimize have freed up enough space in the database. However, please note that when you run a database optimization, you will not be able to run tests or delete reports from the system: the system may be unavailable for use for an extended period of time. Figure 3-4: Database Usage
My Preferences
The My Preferences area allows you to personalize settings for each your test environment. Note: The options under this area are specific to each user.
36
System Functions
Note: The available formats are PDF, XLS, HTML, RTF, CSV, and ZIP (CSV). The ZIP file will contain both CSV and text files. The text files contain the titles for each section in the report, and the CSV files contain the actual results from the test. In order to have reports sent via e-mail, the system must have DNS configured so it can look up the MX entry for the domain. During the initial configuration, the DNS server IP addresses and domain name were configured for the system; the configured addresses and domain name must be valid, otherwise, the mail exchanger will not be able to relay where the messages need to go. To ensure that the system can deliver reports via e-mail, you must have: A valid DNS (so that the system can look up the MX entry) A valid domain name (that has a MX record) The mail exchanger configured to relay mail for the system To see what your DNS server IP address(es) and hostname are, telnet to the box. After you log into the box, use the networkInfo command to display the network configuration for the BreakingPoint Storm CTM. To edit the network information, use the updateNetwork command and any of the following options -hostname <dhcp hostname>, -ip <IPaddress>, -netmask <netmask>, -gateway <gateway IP address>, -dns1 <DNS server>, -dns2 <DNS server>, and -dns3 <DNS server>.
System Functions
The Systems Functions area provides controls for rebooting the system and restoring the system to the previous build or to its factory state. The Systems Functions area also provides controls for exporting and importing multiple tests. To access the system functions, select Control Center > Administration from the Menu bar; the Systems Functions area will be located in the upper-right area of the Administration screen. See Figure 3-1. Table 3-2 on page 37 provides a description of each function. Table 3-2: System Functions Function Backup Restore Description Performs a system backup. Restores the original settings on the chassis.
37
System Functions
Table 3-2: System Functions Function Factory Revert Description Restores the original factory settings on the chassis. All user-defined data stored in the system such as users, DUT Profiles, domains, presets, scripts, tests, etc. will be removed from the system. This reversion process cannot be undone. The Reset button on the front-side of the chassis performs the same function. Note: This button will be deactivated when you install a BreakingPoint FireStorm CTM into your chassis. Soft Reboot Restarts the software processes for the system. During this process, the Control Center will close, and you will be logged out of the system. Restores the system to the previous build. All data such as user accounts, domains, tests, etc. created on the newer build will be removed from the system. Only data saved from the previous build will be available from the system. Note: This button will be deactivated when you install a BreakingPoint FireStorm CTM into your chassis. Restart Power cycles the chassis. During this process, the Control Center will close, and you will be logged out of the system. All port reservations will be removed after a system restart. Exports all existing tests. During this process, do not close the browser that is processing this request. Be aware that exporting all existing tests may require a large amount of time to process. Imports all existing tests. During this process, do not close the browser that is processing this request. Be aware that importing all existing tests may require a large amount of time to process. Deletes all report information on previously run tests. Manages licenses.
Previous Revert
Export Tests
Import Tests
Clean DB Licensing *
Note: * BreakingPoint has added a licensing enforcement mechanism to its firmware. This mechanism allows all customers under current ATI maintenance to install new firmware and ATI updates, but prevents new updates from being installed once
38
System Date/Time
current maintenance agreements have expired. Should you encounter any difficulties with licensing during the upgrade process, contact BreakingPoint Support at 1-866-352-6691, prompt 4. If your ATI maintenance agreement has expired, contact your BreakingPoint sales representative.
System Date/Time
You can set the time and date for the BreakingPoint Storm CTM from the Administration page. This information affects the time information listed in the test results and system logs. This information will not be automatically configured for you at installation, so you will need to manually set the time, date, and time zone. Note: The system will not automatically update adjust for Daylight Savings; therefore, you will need to manually update the time on those occasions. Figure 3-5: Setting the Time and Date
To set the time and date for the BreakingPoint Storm CTM: 1. Select Control Center > Administration from the Menu bar. 2. Find the area labeled System Date and Time. 3. Click the calendar icon located under the Date field. A calendar pop-up window will display. 4. Use the arrows to scroll to the correct month, and then select the correct date. 5. Enter the time, in hours and minutes, in the Time field. 6. Click the Time Zone drop-down button and select the time zone. 7. Click the Apply button.
39
System Date/Time
40
DUT Profiles
DUT Profiles
A DUT Profile defines the connection settings for the device under test such as the connection method, connection parameters, interface speed, and global scripts. The BreakingPoint Storm CTM will use these settings to establish a connection to the device under test (DUT) for automation purposes. Note: Each test must have a DUT Profile selected for it; however, if you do not plan on using device automation, you can select the default BreakingPoint Systems DUT Profile.
Parity Data Bits Stop Bits SNMP Host Port Version Login ID Password
41
DUT Profiles
Table 4-1: Connection Parameters Connection Type SSH Parameter Host Port Login ID Local IP Telnet Host Port Local IP Valid Values Server IP address SSH port (default 22) Server login ID BPS Management Port IP address (default mgmt) Server IP address Telnet port (default 23) BPS Management Port IP address (default mgmt)
Note: For telnet, if the local IP is set to mgmt, the BreakingPoint Storm CTM will communicate with the device under test using its management interface. However, if the local IP is set to an IP address, then the BreakingPoint Storm CTM will use the DUTs control interface to communicate with the DUT. In the latter case, you must connect an Ethernet cable between the BPS management port to the DUT, otherwise, the BPS CTM will not have a way to locate a route to the DUT.
42
DUT Profiles
To create a DUT Profile: 1. Select Control Center > Device Under Test from the Menu bar. 2. Select a profile from the Profile Name list. 3. Click the Clone the selected DUT button. Note: Cloned DUT will inherit the parameters and global scripts configured for the parent DUT. 4. Enter a name for the DUT Profile in the Name field, and click the OK button. 5. Click the Device Selection drop-down button and select the type of device you are using. Note: There are six options from the Device Selection drop-down menu: All, Generic, Cisco IOS, Dell PowerConnect 6024, Extreme Summit 7i, and HP ProCurve 3500yl. Each device profile provides a set of command templates for that device. To see a list of templates for the default global scripts, see the section Global Scripts Templates in the Appendix. 6. Click the Connection Type drop-down button and select Telnet, SNMP, SSH, or Serial. Note: The connection type you select depends on how the BreakingPoint Storm CTM will communicate with the DUT. For example, if you have selected a serial connection, the DUT must be plugged into the Target Control serial port on the chassis.
43
Global Scripts
7. Click the Settings tab. 8. Define the values for the parameters listed under the Settings tab. See Table 4-1 on page 41 for valid parameter values. Note: The settings will vary depending on the connection type you have selected. 9. Enable or disable global scripts from the Global Scripts list. Note: All cloned DUT Profiles will inherit the active global commands from its parent DUT Profile. If you need to create additional commands, see the section Global Scripts on page 44. 10. Click the Apply button.
Global Scripts
Global scripts are also known as Expect scripts. These global scripts allow you do things like reboot your device, monitor DUT statistics, and create VLANs via software control. BreakingPoint Systems provides templates from which you can use to base your scripts. Each device type comes with a set of templates that are specific to that device. For a list of templates, see the section Global Scripts Templates in the Appendix. When creating global scripts, keep the following factors in mind: Each global script is specific to the device selection. For example, if you create a global script for the Cisco IOS device type, then only the DUT Profiles using the Cisco IOS device selection can access the global script. There must be a serial or Ethernet connection between the Target Control port and the DUT. For more information on Target Control ports, see the BreakingPoint Storm CTM Installation Guide. Each line in the global script must begin with a command (i.e., expect, send, expectclose, etc.). You must click the Save Script button to save any changes you have made to a global script. Clicking the Save DUT button will not save changes to global scripts. Only one global script can use the On Start option per DUT Profile.
Commands
Table 4-2 on page 44 lists the commands that can be used for creating scripts. Table 4-2: Commands Commands Expect Send Description Waits for a string from a process (e.g., Expect name) Takes a string and sends it to a process (e.g., Send myLoginID\r).
44
Global Scripts
Table 4-2: Commands Commands Expect-Close Wait Power Cycle Description Waits for the server to close the connection. Delays the script from executing for n milliseconds. Restarts the device.
45
Global Scripts
To auto create a global script: 1. Select Control Center > Device Under Test from the Menu bar. 2. Select a DUT Profile from the Profile Name list. 3. Click the Add (+) button located under the Global Scripts area. 4. Enter a name for the script in the Name field. 5. Click the Auto Create button. 6. Type and execute commands in the text console. 7. Type exit in the text console and close the BPS Terminal when you are done. 8. Select when the script should run by doing one of the following: Click the On Start button to run the script at the beginning of the test. Click the After Start radio button to run the script after the test has started and enter the amount of time that should elapse before the script runs. Use the following format: hours: minutes: seconds. Click the Periodical radio button to run the script at certain intervals and enter the amount of time interval at which the script should be executed. Use the following format: hours: minutes: seconds. Click the On Stop radio button to run the script once the test finishes. 9. Click the Save Script button. 10. Click the Test Command button to make sure the test runs as expected. (Optional)
46
5 Network Neighborhood
This section covers: What Is a Network Neighborhood? Domains Subnets Network Address Translation External Interface Addressing Test Paths Proxy Support Packet Filter Impairments
47
The addresses that can be used for the Ethernet, source, and destination IP addresses. After the system looks at the Network Neighborhood you have selected for the test, it will look at the domains that are selected for each interface. These domains contain the subnets that the system will use to derive its addressing. The source and destination IP addresses will be randomly chosen from the selected domain. The test traffic sent to the device under test will appear to come from a host within the subnet defined in the source domain. The traffic will be sent to the subnet defined in the destination domain, using the regular routing rules between those two subnets.
Type
48
Table 5-1: Network Neighborhood Parameters for IPv4 Parameter Ethernet Address Minimum IP Address Maximum IP Address VLAN Tagging Inner VLAN ID Outer VLAN ID VLAN ID VLAN Ethertype Use NAT Description Defines a 48-bit hexadecimal MAC address. Defines the minimum IP address in a logical range of addresses. Defines the maximum IP address in a logical range of addresses. Sets whether the frames are single-tagged, doubletagged, or not included in a VLAN. Defines the inner VLAN ID for frames. (For Q-in-Q routing) Defines the outer VLAN ID for frames. (For Q-in-Q routing) Defines the VLAN ID (1-4,095) for the subnet. (VLAN-enabled subnet only) Sets the outer tags TPID for the entire interface. (For Q-in-Q routing) Enables Network Address Translation (NAT) for the network.
Table 5-2 on page 49 provides descriptions of each Network Neighborhood parameter for IPv6 configurations. You can use these parameters to define the subnet. Table 5-2: Network Neighborhood Parameters for IPv6 Parameter IPv6 Network IP Address Prefix Gateway IP Address Description Manually enables IPv6 addressing. (IPv6 addressing is enabled automatically) Defines a 128-bit base network address. Defines the subnet mask for the Network Address. Defines the access point to the network. The Gateway Address must use the same subnet as the Network Address. Determines how MAC addresses are assigned per host. Selecting Virtual Router will use one MAC address for all hosts. Selecting Host will use one MAC address for each host. Defines the IP address of the virtual router. Defines a 48-bit hexadecimal MAC address.
Type
49
Table 5-2: Network Neighborhood Parameters for IPv6 Parameter Minimum IP Address Maximum IP Address VLAN Tagging Inner VLAN ID Outer VLAN ID VLAN ID VLAN Ethertype Description Defines the minimum IP address in a logical range of addresses. Defines the maximum IP address in a logical range of addresses. Sets whether the frames are single-tagged, doubletagged, or not included in a VLAN. Defines the inner VLAN ID for frames. (For Q-in-Q routing) Defines the outer VLAN ID for frames. (For Q-in-Q routing) Defines the VLAN ID (1-4,095) for the subnet. (VLAN-enabled subnet only) Sets the outer tags TPID for the entire interface. (For Q-in-Q routing)
50
Domains
Now, you can add domains to the Network Neighborhood. For more information on adding domains, see the section Domains on page 51.
Domains
A domain can consist of up to 4,095 subnets; each subnet can be defined as a network within a domain, and it is used to set the guidelines for host addressing. The BreakingPoint Storm CTM allows up to 8 domains per interface, which means that there can be 8 networks per interface per VLAN. Each domain is assigned an Ethertype, which sets the outer tags TPID for the entire interface. Currently, most vendors will use 0x8100; however, the BreakingPoint Storm CTM supports additional Ethertypes for older network devices including 0x88a8, 0x9100, 0x9200, and 0x9300.
51
Domains
Creating a Domain
By default, all Network Neighborhoods will have a default domain. You can customize your own domain by modifying the default domain or creating a new one. The following section will explain how to create a new domain. Note: A domain can contain one non-VLAN subnet; however, each subsequent subnet added to the domain must have a VLAN ID assigned to it. To add a domain: 1. Select Control Center > Network Neighborhood from the Menu bar. 2. Select a Network Neighborhood from the Network Neighborhoods list. 3. Click the Interface tab to which you would like to add a domain. Note: The user interface can only display 6 interfaces at a time; therefore, you may need to click the List All Tabs (>>) button to display all of the available interfaces. 4. Click the Create a new domain (+) button located under the Domains list. A popup window will appear on your screen. 5. Enter a name for the domain in the Name field of the popup window and click OK. Note: Domain names must be alphanumeric. Do not use symbols or special characters. 6. Click the VLAN Ethertype drop-down button and select an Ethertype value from the list. (Optional, for 802.1and Q-in-Q routing) Note: The value set here will set the TPID for all domains on the test interface. You can now define a subnet for the domain. For more information on defining subnets, see the section Subnets on page 53.
Deleting a Domain
Deleting a domain will remove it and its subnet definitions from the Network Neighborhood. To delete a domain: 1. Select Control Center > Network Neighborhood from the Menu bar. 2. Select a Network Neighborhood from the Network Neighborhoods list. 3. Click the Interface tab under which the domain is located. 4. Select the domain you wish to delete from the Domains list. 5. Click the Delete the selected domain button. 6. Click the OK button when the confirmation window displays.
52
Subnets
Subnets
Each domain must contain at least one subnet. The number of subnets that can be added depends on the type of subnet you are defining (i.e., VLAN or non-VLAN subnet). A domain can contain one non-VLAN subnet; each subsequent subnet that you add to the domain must have a VLAN ID assigned to it. Dynamic Subnets Dynamic subnets allow you to use Network Neighborhood parameters to customize the clients and servers for LTE traffic. These parameters allow you define the server and client port numbers and configure additional settings for certain LTE protocols. You can specify whether the devices in your test receive IP addresses from an internal DHCP server, GTP, or SGW. Since the parameters vary for each protocol, you will need to have an understanding of each LTE protocol in order to correctly configure the server and client. When using dynamic subnets in your tests, it is important to remember that the number of sessions generated is directly proportional to the number of UEs per second configured for your test. For instance, if you configure a test to generate 100,000 maximum concurrent sessions and 100,000 sessions per second, you may exect the test to generate a great number of sessions. However, if your test is configured for 1 new UE per second, the sessions per second will be limited to 1 UE per second, until the test reaches the maximum number of simultaneous UEs. Table 5-3 lists the available parameters for the Network Neighborhood subnets. Table 5-3: Subnet Parameters Parameter Accept only BreakingPoint DHCP servers Description Causes the DHCP client to only accept DHCP offers from BreakingPoint DHCP servers. Turning this parameter off causes the DHCP client to accept any offer that it receives. An identifier used by mobile devices when connecting to a GSM carrier. The number of DHCP clients that will be instantiated on the network. The maximum UE attachment rate. This setting helps prevent the device from exceeding the limit of the DUT. The address of the DNS to use when resolving hostnames. The default domain name to use for the given hostname.
53
Subnets
Table 5-3: Subnet Parameters Parameter Enable DHCP Server eNodeB Ethernet Address Gateway IP Address Description Enables a simulated DHCP server on the network. The radio access portion of the LTE system. It is the cell tower that cell phones communicate with. Defines a 48-bit hexadecimal MAC address. Defines the access point to the network. The Gateway Address must use the same subnet as the Network Address. Identifies the SIM card of each device. Enables IPv4 addressing. Enables IPv6 addressing. The number of seconds the DHCP server will advertise an address it gives to a client until the client has to renew it. Address(es) used to simulate an eNodeB on the network. Can be a single IP address or a list of IPs separated by a comma. Address(es) used to simulate a GGSN on the network. Address(es) used to simulate an MME on the network. Address(es) used to simulate an SGSN on the network. Can be a single IP address or a list of IPs separated by a comma. Address(es) used to simulate an SGW on the network. Maximum number of GTP-C v2 sessions supported on the simulated SGW. Each session also supports up to 11 dedicated bearers and the default bearer. For DHCP, this is the pool of IPs that the DHCP server will lease to clients. For GGSN, this is the pool of IPs that the GGSN server will lease to clients as part of thee PDP setup. Defines the maximum IP address in a logical range of addresses. The Mobile Country Code of the device to be tested.
IMSI (International Mobile Subscriber Identity) IPv4 IPv6 Lease Time (seconds)
54
Subnets
Table 5-3: Subnet Parameters Parameter Minimum Client Pool IP Address Description For DHCP, this is the pool of IPs that the DHCP server will lease to clients. For GGSN, this is the pool of IPs that the GGSN server will lease to clients as part of thee PDP setup. Defines the minimum IP address in a logical range of addresses. The Mobile Network Code of the device to be tested. A secondary unique identifier for each device, This number identifies a subscription in the UMTS network. Defines a 32-bit or 128-bit base network address. Defines the subnet mask for the Network Address. The number of dedicated paths over which a UE sends and receives data via the PDN. The total number of devices to simulate. Specifies a unique value originally assigned by the UE manufacturer. The operator variant is usually unique to each brand of UE. The username/password that will be encoded along with the APN in requests from the SGSN to the GGSN to setup new PDPs. Provides connectivity from the UE to external packet data networks. The Quality of Service field that will be encoded with the new PDP requests. Also used in the GGSN replies. The GGSN IP address(s) that the SGSNs will contact. Can be a single IP address or a list of IPs separated by a comma. Remote IP address of the device to be tested. IP address of server that routes and forwards user data. IP address of server. The base value for a secret key that is generated for each UE.
Minimum IP Address MNC (Mobile Network Code) MSISDN (Mobile Subscriber ISDN) Network IP Address Network Mask Number of Dedicated Bearers Number of UEs (User Equipment) Operator Variant
Username/ Password
PGW (PDN Gateway) QoS (Quality of Service) / Hexadecimal Remote GGSN IP(s)
Remote MME IP(s) (Mobility Management Entity) Remote SGW IP(s)(Serving Gateway) Server IP Starting Secret Key
55
Subnets
Table 5-3: Subnet Parameters Parameter Type UE Attaches-Detaches/s (0=UNL) Use NAT Virtual Router IP Address VLAN ID VLAN Tagging Description Determines how MAC addresses are assigned per host. The maximum UE attachment rate. This setting helps prevent the device from exceeding the limit of the DUT. Enables Network Address Translation (NAT) for the network. Defines the IP address of the virtual router. Defines the VLAN ID (1-4,095) for the subnet. (VLANenabled subnet only) Sets whether the frames are single-tagged, doubletagged, or not included in a VLAN.
The following sections will describe how to add a subnet to a domain. These sections will reference several network parameters. For more information on network parameters, see the section Network Neighborhood Parameters on page 48.
56
Subnets
7. Click the Use NAT option to enable Network Address Translation for the subnet. For more information on NAT, see the section Network Address Translation on page 61. 8. Enter a base host address in the Network IP Address field. Use the format: x.x.x.x, where x can be a value between 0-255. 9. Enter a mask for the host address in the Network Mask field. 10. Enter a gateway address in the Gateway IP Address field. Use the format: x.x.x.x, where x can be a value between 0-255. Note: The gateway address must use the same subnet as the host address. 11. Click the Type drop-down button and select Host or Virtual Router. Note: Host will assign one MAC address per host. Virtual Router will assign one MAC address for all traffic. 12. Enter a base MAC address in the Ethernet Address field. Use the following format: xx:xx:xx:xx:xx:xx, where x can be any hexadecimal value. Note: The system will automatically mask off the number of bits necessary to make a unique MAC/IP address pair; therefore the number of MAC addresses available depends on the netmask. 13. Enter a minimum IP address in the Minimum IP Address field and a maximum IP address in the Maximum IP Address field. 14. Click the Create button. 15. Repeat steps 3-14 to add additional subnets. 16. Click the Save Network button when you are done.
57
Subnets
If the domain already contains a subnet definition (e.g., the default domain), click the Show the create a new subnet form (+) button located under the Subnets list. If the domain does not contain any subnet definitions, skip this step. 6. Click the VLAN Tagging drop-down menu and select Single Tag or Double Tag. Note: The Single Tag option will apply one VLAN tag to the frames, and the Double Tag option will apply two VLAN tags to the frames (for Q-in-Q routing). 7. Do one of the following: If you selected Single Tag, enter a VID in the VLAN ID field. If you selected Double Tag, enter a VID in the Inner VLAN ID field and in the Outer VLAN ID field. Note: If you are using a single tag, you must set the minimum packet size to 68. If you are using double tags, you must set the minimum packet size to 72. 8. Click the Use NAT option to enable Network Address Translation for the subnet. For more information on NAT, see the section Network Address Translation on page 61. 9. Enter a base host address in the Network IP Address field. Use the format: x.x.x.x, where x can be a value between 0-255. 10. Enter a mask for the host address in the Network Mask field. 11. Enter a gateway address in the Gateway IP Address field. Use the format: x.x.x.x, where x can be a value between 0-255. Note: The gateway address must use the same subnet as the host address. 12. Click the Type drop-down button and select Host or Virtual Router. Note: Host will assign one MAC address per host. Virtual Router will assign one MAC address for all traffic. 13. Enter a base MAC address in the Ethernet Address field. Use the following format: xx:xx:xx:xx:xx:xx, where x can be any Hex value. Note: The BreakingPoint Storm CTM will automatically mask off the number of bits necessary to make a unique MAC/IP address pair; therefore the number of MAC addresses available depends on the netmask. 14. Enter a minimum IP address in the Minimum IP Address field and a maximum IP address in the Maximum IP Address field. 15. Click the Create button. 16. Repeat steps 3-14 to add additional subnets. 17. Click the Save Network button when you are done.
58
Host Mode
In Host mode, the BreakingPoint Storm CTM simulates a number of hosts on a network. Each IP address configured as a host will respond to ARP requests, and in some cases, ICMP Echo requests. The MAC address is derived from the IP address, where the host address is concatenated with the specified host Ethernet address. Note: The host range must fit within the range of the network and netmask.
59
60
61
The destination addresses are checked against the clients network. If its a local address, the MAC address will be selected with the client. If it is non-local, the BreakingPoint Storm CTM will ARP for the gateways MAC address, where the domain is defined in the client domain. When the BreakingPoint Storm CTM receives the packet on the server side, it will identify it based on the destination address information. When the BreakingPoint Storm CTM creates a response packet, it will take the source address from the original packets header and reuse it as the destination information for the response. The source information in the response will match the destination information in the original packet. After exchanging source and destination information, the reply is sent back to the DUT in the usual manner. The BreakingPoint Storm CTM will store the information for future reference.
62
Security
63
destination is usually a server, and servers have fixed ports, this can greatly reduce the number of theoretical connections When NAT is enabled on the server side (DNAT), the situation is reversed, and the flow is tracked by the source IP and port. Generally, this involves a larger number of ports, since source ports are dynamically generated by the client. So, based on the previous example, the theoretical connection limit is 253 * 32,768, or approximately 8 million connections.
These are the only components that can do one-arm TCP/IP and produce a tangible pass/ fail result. Potentially, any test could target a standalone host, namely Stack Scrambler or Routing Robot; however, these tests rely on receiving their own packets to determine if the test passes or fails, so they will always fail if they target an external host. You can always connect the client interface to your target device if you want to target an external device, but the default test criteria may not provide useful data.
64
Additionally, if the destination IP address is not specified as external explicitly, the BreakingPoint Storm CTM will not ARP for its MAC address, instead it will use the internally generated one. In order to work around this, you will need to enter the DUTs MAC address in the provided field for the subnet and use virtual router mode. This is equivalent to hard coding a MAC address in the ARP table. Note: The BreakingPoint Storm CTM does not check for overlaps between IP addresses in an external interface and IP addresses configured as virtual hosts on other ports. This can lead to some unexpected results, as there will be multiple devices bound to the same IP address if the external and the affected subnet are used in the same test.
65
Test Paths
Test Paths
Typically, when you create a test, you have to specify the client and server interfaces that each component will use to transmit and receive traffic. The BreakingPoint Storm CTM will automatically map these interfaces for you by creating different client and server pairings. For example, if you have selected Interface 1 and 3 as the client interfaces and Interface 2 and 4 as the server interfaces, then you will have the following possible client/server pairings: 1>2 1>4 3>2 3>4
However, there may be cases in which you will want to manually define the client and server pairings. This is where Test Paths are useful. Test Paths enable you to explicitly specify the interfaces with which other interfaces can communicate. This feature becomes extremely useful in cases where you want to ensure that all your connections succeed. Lets reuse the test configuration mentioned in the previous example. Now, lets say that you have loopback cables connected from Interface 1 to 2 and from Interface 3 to 4. In this particular case, the connections between Interfaces 1 and 4 and Interfaces 2 and 3 will fail because there are not any physical connections between those interfaces. Only the connections between Interface 1 and 2 and Interface 3 and 4 will work because they are physically connected. Therefore, to ensure a 100% success rate between all your connections, you will want to explicitly define the valid connections between your interfaces. To define Test Paths: 1. Select Control Center > Network Neighborhood from the menu bar. 2. Select an existing Network Neighborhood from the Network Neighborhoods list or create a new Network Neighborhood. For more information on creating a Network Neighborhood, see the section Creating a Network Neighborhood on page 50. 3. Click on the Test Paths button, located on the lower left corner of the Interface tab. 4. Click the Specifically defined test paths radio button. 5. Select the interfaces that are connected by choosing an interface from each drop-down menu. 6. Click the Add button. 7. Repeat step 5 and Step 6 for each additional Test Path you would like to add. 8. Click the Close button when finished.
66
Proxy Support
Proxy Support
Test Paths are particularly useful for setting up a test environment for proxies, or more specifically, for testing load balancers. However, keep in mind that Test Paths are not used solely for testing proxy support; this is only one instance in which you may want to use Test Paths. In order to configure a load balancer to work with the BreakingPoint Storm CTM, you will need to simulate clients connecting to the virtual server that is represented by the proxy, and you will need to be able to simulate the servers that are in the private pool. To do this, you will need to set up your test configuration so that the BreakingPoint Storm CTMs clients are talking to the load balancer. For example, you may want to connect the public interface to the BreakingPoint Storm CTMs Interface 1 and the private interface to the BreakingPoint Storm CTMs Interface 2. In this case, you will want the BreakingPoint Storm CTMs clients to only communicate with the load balancer, since the private servers are hidden behind the load balancer. For this particular example, you will want to set up a network domain where your clients are specified on Interface 1, your load balancers public IP address is set up on the External interface, and your private servers are specified on Interface 2. After you have done this, you will need to configure the Test Paths so that there is only one connection from the Client to the External interface. Once the network domain has been properly configured, you will need to create your test as normal. On the Interfaces tab of your test, you will need to select Interface 1 as the client, Interface 2 as the server, and External as the server, and you will need to select the domain you configured for proxy support for each interface. This enables the component to make connections from Interface 1 to the External interface, and allow it to still listen for new connections on interface 2, enabling it to act as a one-arm server. To set up proxy support: 1. Open an existing Network Neighborhood or create a new Network Neighborhood. 2. Select an interface to act as the client interface. 3. Select a domain or create a new domain for the client interface. 4. Enter the subnet information for the domain. 5. Apply the changes to the client interface. 6. Select an interface to act as the private server interface. 7. Select a domain or create a new domain for the server interface. 8. Enter the subnet information for the domain. 9. Apply the changes to the private server interface. 10. Click on the External Interface tab. 11. Select a domain or create a new domain for the External Interface. 12. Enter the public IP address for the proxy in the Minimum IP Address field. 13. Click the Add Range button. 14. Click the Test Paths button. 15. Select the Specifically Defined Test Paths option.
67
Packet Filter
16. Select the client interface from the first drop-down field. 17. Select the external interface from the second drop-down field. 18. Click the Add button. 19. Click the Close button. 20. Click the Save Network button. 21. Open an existing test or create a new test. 22. Add the desired test component to the test. 23. Click on Select DUT/Network from the Test Quick Steps menu. 24. Select the Network Neighborhood selected or created in Step 1. 25. Click on the Interfaces tab. 26. Set Interface 1 as the client interface. 27. Select a domain for Interface 1. 28. Set Interface 2 as the private server interface. 29. Select a domain for Interface 2. 30. Set the External interface as the server interface. 31. Select a domain for the External interface; this should be the domain that contains the public IP address for the proxy. 32. Set up the rest of the test configuration by defining any additional parameters, setting up the test criteria, and adding any additional components the test may require. 33. Save and run the test.
Packet Filter
The Packet Filter feature is located at the bottom of the Network Neighborhood, next to the Impairments feature. This feature allows the most efficient usage of the interface cards capture history. Packet Filters are set on a per-port basis, and will process packets as they are received and only capture the packets that you have chosen to capture. This type of filtering can be used to increase the effective depth of the capture memory by only capturing the packets of interest. Editing Packet Filters allows you to select which packets you wish to capture. Note: The Packet Filter feature only captures traffic that is to be received. No transmitted traffic will be captured while the Packet Filter feature is in use. To edit Packet Filters: 1. Select Control Center > Network Neighborhood from the Menu bar. 2. Select a Network Neighborhood from the Network Neighborhoods list. 3. Click Packet Filter located at the bottom of the Interface tab. 4. Select the parameters you want to include. 5. Click Accept.
68
Impairments
Table 5-5 on page 69 provides descriptions of each Packet Filter parameter. Table 5-5: Packet Filter Parameters Parameter Vlan Src Port Dest Port Src IP Dest IP Description Keep any packets matching the given Vlan ID Keep any packets matching the given source port Keep any packets matching the given destination port Keep anything matching the given source IP address Keep anything matching the given destination IP address
Note: Leave the Not check box unchecked to include the corresponding parameter. Place a check in the Not check box to exclude the corresponding parameter.
Impairments
Use the Impairments feature to introduce impairments such as dropped packets, corrupt IP checksum, and corrupted packets in various ranges to your tests. You can also specify what percentage of packets is to be impaired. Note: The component sections related to frames transmitted (Tx) represent the statistics before impairments are introduced. The aggregate statistics (aggstats) section represents the statistics after impairments have been introduced. Any combination of the following list of impairments can be selectively included on a perport basis: Drop packet Frack packet * Corrupt packet in bytes 1-64 Corrupt packet in bytes 65-256 Corrupt packet in bytes 257-end Randomly corrupt packet Corrupt IP checksum
Note: In this context, the term Frack refers to the process of separating a packet into 8byte portions and removing random portions of that packet. Note: The term Corrupted Packets refers to packets corrupted at Layer 3 or above. When using the Corrupt packets in bytes 257-end impairment , it is important to note that packets corrupted at Layer 2 will have a bad frame check sequence (FCS) and will be dropped at the physical layer and counted as dropped packets instead of as Corrupted Packets. To add impairments: 1. Select Control Center > Network Neighborhood from the Menu bar.
69
2. Select a Network Neighborhood from the Network Neighborhoods list. 3. Click Impairments located at the bottom of the Interface tab. 4. Select the Impairments parameters you want to include. 5. Enter the percentage of packets you want to be impaired in the Rate field. For example, to drop 1 packet out of every 10 packets, enter 10 in the Rate field. To drop 1 packet out of every 1000 packets, enter 0.1 in the Rate field. 6. Click Accept. Table 5-6 on page 70 below provides descriptions of each Impairments parameter. Table 5-6: Impairments Parameters Parameter Drop Packet Frack Packet Corrupt Packet in Bytes 1-64 Corrupt Packet in Bytes 65-256 Corrupt Packet in Bytes 257-end Randomly Corrupt Packet Corrupt IP Checksum Drops packets Separates the packet into 8-byte portions and randomly removes portions from the packet Corrupts packets only within the first 64 bytes of the packet Corrupts packets only between the 65th and the 256th byte of the packet Corrupts packets only between the 65th and the 256th byte of the packet Corrupts packets in a random location within the packet Creates an invalid checksum Description
Note: You may receive unexpected results from the MAC when you run tests with Impairments turned on. MAC errors will often be higher than the number of impairments. Note: The term Corrupted Packets refers to packets corrupted at Layer 3 or above. When using the Corrupt packets in bytes 257-end impairment , it is important to note that packets corrupted at Layer 2 will have a bad frame check sequence (FCS) and will be dropped at the physical layer and counted as dropped packets instead of as Corrupted Packets.
70
tuples can be increased by modifying the Network Neighborhood to have a larger range of IP addresses for each client and server interface used in each test. Another disadvantage of tunneling SCTP over UDP is that more protocol header overhead is required, leaving less room available for application payload.
71
72
Device Status
6 Port Reservations
This section covers: Device Status Port Reservations Port Mapping Port Notes Port Information Setting the MTU per Port
Device Status
The Device Status screen provides a graphical representation of the BreakingPoint Storm CTM. It displays the slots (or blades) on the chassis and their ports. This is an interactive screen that enables you to reserve ports, assign Active Groups, export packet buffers, and remap ports. Figure 6-1 shows the Device Status screen and provides callouts for each feature on this screen. The Device Status screen is accessible from any area in the Control Center using the BreakingPoint Storm CTM icon located in the upper-right corner of the Control Center. Clicking on this icon will open a pop-up window displaying the Device Status screen.
73
Device Status
Figure 6-2: Device Status Screen Callout 1 2 Name Active Group Port Mapping Options Description Use this menu to assign an Active Group to a slot. Use the port mapping panel to remap locked ports to different interfaces. The panel will only show the selected Active Groups ports. Use the Port Configuration panel to set the port speed and configure the MTU for each port in your test. Use the Packet Buffer Export feature to export PCAPs from the latest test run. For more information on exporting packet buffers, see the section Exporting a Packet Buffer on page 451. The padlock icon indicates that another user has the port reserved. The icon with a key indicates that the port is reserved by you. The number on the icon indicates the Active Group to which the port belongs.
Port Configuration
Packet Export
5 6
74
Port Reservations
Port Reservations
In order to run tests on the BreakingPoint Storm CTM, you must make port reservations. To reserve a single port, click on the port you want to reserve. To reserve all of the ports on a blade, right-click on one of the ports and select Reserve all ports on this slot. When you lock a port reservation, the system will automatically map the port to the next available test interface. Each test interface references a set of domains in a Network Neighborhood. For more information on Network Neighborhoods, see the section What Is a Network Neighborhood? on page 47. For more information on port mapping, see the section Port Mapping on page 77. The number of tests that you can run concurrently depends on the number of available ports that the BreakingPoint Storm CTM has. For example, a single-blade BreakingPoint Storm CTM with four available ports can only run four tests at a time. A two-blade chassis with sixteen total available ports can run sixteen tests simultaneously. However, in order to run all sixteen tests concurrently, you will need to assign each available port to a different Active Group.
Active Groups
All reserved ports belong to an Active Group. The basic function of an Active Group is to enable you to run multiple tests concurrently. In order to run multiple tests concurrently, each test must be run under a different Active Group. For example, if Slot 1/Ports 0-3 can be assigned to Group 1, and Slot 2/Ports 0-3 can be assigned to Group 2, then you can run two tests simultaneously. However, if all ports across both blades share the same Active Group, then only one test can run at a time. The number of available Active Groups depends on the number of ports you have reserved at the time. For example, if you have no ports reserved, then the Active Group menu will only list Group 1. If you have one port reserved, then you will see Group 1 and Group 2. If you have two ports reserved under two different groups, then you will see Group 1, Group 2, and Group 3. To change an Active Group: 1. Select Control Center > Device Status from the Menu bar. 1. Click the Active Group drop-down menu. 2. Select an Active Group from the drop-down menu. Note: The system will always list one more group than number of groups you are currently using. 3. Click on a port on the slot you would like to reserve. Note: All ports on the slot will be tagged with an icon and a number denoting the ports assigned group.
75
Port Reservations
76
Port Mapping
current status of your tests will be displayed whenever you make a change to your test (such as clicking Save, Update, or Apply). You should check the port notes before you force reserve the port(s) because other system users may not want you to remove their port reservations. If available, the port notes will appear as a yellow note icon located below the port. As a best practice recommendation, you should add a port note to your reserved ports. For example, you may want to note that port 0 and port 1 are connected to ports 5 and 6 on your switch. This lets you know the physical layout of the lab without having to enter it. To force reserve ports 1. Select Control Center > Device Status from the Menu bar. 2. Click on the port(s) you would like to reserve. Note: You can only force reserve ports that do not have tests or system processes running on them. When you attempt to force reserve ports that have tests or system processes running on them, the system will alert you that there is a process running on that slot. 3. Click Yes when the dialog window displays, asking if you would like to force reserve all the ports in the slot. Note: The port(s) that you clicked on will display an icon, denoting that this port has been reserved by you. You can also force reserve ports by right-clicking on one of the ports on a slot and selecting Reserve all ports on this slot. The system will alert you that the ports are reserved by another user and ask if you want to force reserve the port(s).
Port Mapping
The BreakingPoint Storm CTM automatically maps ports to interfaces when you make your port reservations. Port mappings are important because they link a port on the BreakingPoint Storm CTM to an interface in the Network Neighborhood. Each interface references a specific domain in the Network Neighborhood. See Figure 6-3.
77
Port Mapping
For example, if you click on the ports in the following order: Port 0, 1, 2, and 3 on Slot 1 and Port 0, 1, 2, and 3 on Slot 2, then the system will automatically map the ports in the following interfaces: Slot1/Port 0 to Interface 1 Slot1/Port 1 to Interface 2 Slot1/Port 2 to Interface 3 Slot1/Port 3 to Interface 4 Slot2/Port 0 to Interface 5 Slot2/Port 1 to Interface 6 Slot2/Port 2 to Interface 7 Slot2/Port 3 to Interface 8
Unreserving a reserved port will automatically resequence the ports to the preceding interface. For example, if you have all slots and ports mapped according to the previous example, and you unreserve Slot1/Port 0, then the system will automatically resequence the port mappings to the following interfaces: Slot1/Port 0 to Interface 1 Slot1/Port 1 to Interface 2 Slot1/Port 2 to Interface 3 Slot2/Port 0 to Interface 4 Slot2/Port 1 to Interface 5 Slot2/Port 2 to Interface 6 Slot2/Port 3 to Interface 7
You will notice that Slot1/Port1 have been removed from the port mappings; only 7 interfaces are in use; and the port mappings have resequenced to the preceding interface.
78
Port Notes
Note: In order to manually map ports, the Active Group whose ports you want to map must be selected. The interfaces will be labeled using the following format: Slot X:N, where Slot X represents the slot number to which the port belongs, and N represents the port number. To manually map a port: 1. Select Control Center > Device Status from the Menu bar. 2. Verify that the Active Group whose ports you would like to remap is selected. 3. Verify that you have ports reserved under this Active Group. 4. Click the Port Mapping button. Note: You will see all the ports that have locked reservations under the selected Active Group. 5. Click the drop-down button located under each interface. Note: A list of ports with reservations will display. 6. Select a the desired port from the list. 7. Repeat steps 5-6 for each port mapping. 8. Click the Apply button once you are done.
Port Notes
Ports Notes are used to add a note, or comment, to a specific port. When posted, the Port Note will appear as a small yellow note under the port. See Figure 6-4.
79
Port Notes
Port Notes are visible to all users who are logged into the system, so all users can quickly assess a ports availability and/or physical layout. For example, Port Notes can provide descriptions of the test labs layout (e.g., BreakingPoint Storm CTM Slot 1/Port 1 is connected to Port 8 on the Cisco switch), or the Port Note can alert other users that the port will be in use on a specific date and time (e.g., 24 hour test running on 12/3 ending on 12/4). This is extremely useful in cases where you are running a test remotely and do not want to go to the lab to figure out the test setup or when you are running tests over a period of time and do not want other users to reserve the ports.
80
Port Notes
Users can add a Port Note at any time, regardless of whether they have the slot reserved or not. See Figure 6-5. Figure 6-5: Adding Port Notes
To add a Port Note: 1. Select Control Center > Device Status from the Menu bar. 2. Right-click on the port to which you would like to add a Port Note. 3. Select Port Note from the menu. Note: The Note Pad will appear for the Slot/Port you have selected. 4. Enter your note in the space provided. Note: There is a 700 character limit. 5. Click the OK button.
81
Port Information
3. Select Port Note from the menu. 4. Enter your note in the space provided. 5. Click the OK button.
Port Information
If you right-click on any port on the Device Status screen and select Port Information, the system will provide you with the following information about the port: The slot and port number The port state (OK = port is functioning normally) The ports current reservation status (true = reserved; false = unreserved) The user account under which the port is reserved The link status (up or down) The connection media (fiber or copper) The port speed The auto-negotiation setting (true = auto-negotiation is on; false = auto-negotiation is off) Ignore Pause (true/false) The maximum transmission unit (MTU) Port Capabilities
n n n n n n n
10000 Mb full (10 Gbase-SR Short reach fiber XFP) 10 Mb half (1 Gbase-T Standard copper SFP) 10 Mb full (1 Gbase-T Standard copper SFP) 100 Mb half (1 Gbase-T Standard copper SFP) 100 Mb full (1 Gbase-T Standard copper SFP) 1000 Mb half (1 Gbase-T Standard copper SFP) 1000 Mb full (1 Gbase-T Standard copper SFP)
82
Resource Allocation
Resource Allocation
The resources of each blade are allocated in proportion to the number of ports reserved on the blade. In some cases, it may be necessary to reserve additional ports in order to secure enough resources for the test being performed. The sessions and bandwidth available to a test may be insufficient to adequately perform the test if too few ports have been reserved. For example, if you reserve one port on a blade that has four total ports, you will have access to 25% of that blade's total resources. If you reserve three ports on that same blade, you will then have access to 75% of that blade's total resources. To see the resources available to you, the BreakingPoint Storm CTM provides you with a resource allocation chart at the startup screen. This chart will provide you with information on which resources are in use and which resources are available for you to access. This chart will be displayed when you first click on a port if you have not logged in for the past 30 days. You can also view the resource allocation percentage of each port by placing your mouse over the port. Note: Resource allocation can also be impacted when multiple tests are running concurrently.
83
84
Packet Export
Packet Export
From the Device Status screen, there is a Packet Export button that enables you to select the packet buffers you would like to export. Each port has its own packet buffer, so you will need to select the slot(s) and port(s) from which you would like to export content.
85
Packet Export
Table 6-1: Export Packet Buffer Callout 1 2 3 4 5 Parameter Export Packet Buffer Compress Export Start At Transmit Snaplen Description Select packet buffer to export Select to compress (gzip) the export Designate a starting point for the export Select to export transmitted traffic Allows you to limit the amount of data from each frame that is actually captured by the network capturing tool and stored into the capture file Select to start at the frame specified Select to start at the size specified Set filtering with BPF syntax Select to export received traffic Designate a size for the export Allows you to limit the amount of data from each frame that is actually captured by the network capturing tool and stored into the capture file
6 7 8 9 10 11
86
Packet Export
Table 6-1: Export Packet Buffer Callout 12 13 14 Parameter Megabytes Frames BPF Filter Description Express the desired size of the export in Megabytes Express the desired size of the export by using the number of frames preferred Set filtering with BPF syntax
For more information on the Packet Export button, see Exporting a Packet Buffer on page 451.
87
Packet Export
88
7 Strike List
This section covers: Strike List Overview Strike List Evasion Profile Settings Importing and Exporting a Strike List
Strike List
The Strike List is the top-level security group. It contains all of the attacks and evasion options that will be used in a Security test. You can use any default Strike List to exploit vulnerabilities in various hosts and applications; however, if you need more granular control over the attack traffic, you can customize your own attacks through the Strike List. Figure 7-1 on page 90 shows the different elements of the Strike List.
89
Strike List
Table 7-2: Strike List page Callout 1 Search Field Description Conduct a search using a protocol, Strike name, category, ID, keyword, reference, or Strike List. Restricts your search to the items within the Strike List you have selected. Saves your searches so that new strikes that match your search are automatically added to your list via ATI Updates.
When you create a new Strike List, it will have its own set of options that determine which evasion techniques to use in the attack traffic. You can create as many strike lists as you want. Remember that each strike list will have its own set of Strike Options, so you should create a strike list for each unique set of evasion options that you need. Default Strike List By default, the BreakingPoint Storm CTM provides you with a set of default strike lists. These strike lists have been custom designed by the Security team at BreakingPoint Systems to target specific types of security testing whether it be strikes targeting port
90
Strike List
scanning, specific protocols, or unpatched Microsoft Tuesday vulnerabilities. Table 7-3 on page 91 lists the default strike lists that come packaged with the system. Table 7-3: Default Strike List Strike List All Strikes TCP/UDP Ports Backdoor Strikes Clientside Strikes DCERPC Strikes Denial of Service Strikes Exploit Strikes Description Contains all Strikes on the system. This Strike List can take over a day to complete. Contains all Strikes that relate to TCP/UDP port scanning. Contains all Strikes that can simulate trojans and backdoor network activity. Contains all Strikes that can simulate exploit traffic against Web browsers. Contains all Strikes that can simulate exploit traffic against DCERPC applications. Contains all Strikes that can trigger denial of service flaws. Contains all Strikes that can simulate exploits against Web browsers and applications. Contains all Strikes that can simulate exploit traffic against FTP servers. Contains all Strikes that can trigger denial of service flaws in Web browsers. Contains Strikes that can simulate attacks that gather information using the NetBIOS protocol. Contains all Strikes related to protocol fuzzing. Contains all Strikes that can simulate attacks that gather information. This strike exploits a denial of service vulnerability in Microsoft Office XP when processing long links to Word documents. This category includes Strikes that simulate exploit traffic against SunRPC services. This category includes Strikes that send shellcode over the network.
91
Strike List
protocol
keyword
keyword:keyword
keyword:ms_2010-07
direction
direction:direction
direction:c2s
92
Strike List
Table 7-4: Query Strings Query Type name Description Lists strikes that contain the details that you specify. Lists strikes that belong to the category that you specify. Lists strikes that contain the details that you specify. Lists strikes included in the path that you specify. List strikes that contain the reference id number that you specify. Lists strikes associated with the test name that you specify. Query String name:name Example name:ActiveX
category
category:category
categoryid
categoryid:categoryid
pathid
pathid:path
reftype
reftype:reference id number
modelname
modelname:test name
modelname:0-sc
* The internal ID can be found at the end of the test report URL. Example 1 To search for all HTTP attacks, enter the following search operation:
protocol:http
Example 2 To search for all clientside HTTP attacks, enter the following search operation:
protocol:http direction:c2s
93
Strike List
Example 3 To search for all clientside http and ftp attacks: 1. Enter protocol:http direction:c2s in the Search field. 2. Right click Select All. 3. Replace search criteria with protocol:ftp direction:c2s 4. Right click Select All. Runid Query You must always include the runid query in conjuction with the other queries in order to use the other queries to conduct a search on a specific test. For example, if you want to know which strikes were http-based for test 653, enter the following query string into the search field:
runid:653 protocol:http
Search Operators Table 7-5 on page 94 contains the search operators that are currently available for the Strike List. These operators help to enhance the search capabilities of the Strike List page by giving you the ability to narrow your search. You can use one or more of the available search operators in a single search. Table 7-5: Search Operators Available Operator OR Meaning Include any of these items in the search. Example T1 OR T2 would mean search for items including T1 or T2. cve c2s would mean search for items that are cve but not c2s. abc def would mean search for items that contain both abc and def.
Exclude these items from search. Do not place a space after the operator. Doing so will return no results. Search for this exact term.
term
Example To return all strikes that are not malware, enter the following query string into the search field:
$bps searchStrikes -limit 5000 " -strikes/malware"
94
Strike List
To search the Strike List: 1. Select Managers > Strike Lists from the Menu bar. 2. Enter your search criteria into the Search field. Your search criteria can consists of a protocol, strike, Strike List, run ID, model name, keyword, path ID, or a category ID. You can base your search on one, or a combination of any of these items. Note: To find the available keywords, right-click on the search field and select Show Keyword List. You can copy any of the available keywords and paste them into the search field. Note: When using multiple search criteria in a single search, be sure to use one or more of the available search operators. 3. Press the Enter key.
95
5. Enter a name for the Strike List in the Name field. 6. Click OK.
96
COMMAND Settings
Table 7-7 on page 97 lists the Evasion Profile settings for COMMAND. Table 7-6: COMMAND Evasion Profile Settings Option PadCommandWhitespa ce Description Pads the whitespace between commands and arguments using space and tab characters Sends commands that are intended to do nefarious things, such as delete files Ethernet Pads UNIX path names using space and tab characters Valid Values true or false
Malicious
true or false
PadPathSlashes
true or false
DCE/RPC Settings
Table 7-7 on page 97 lists the Evasion Profile settings for DCE/RPC. Table 7-7: DCE/RPC Evasion Profile Settings Option MaxFragmentSize MultiContextBind MultiContextBindHead MultiContextBindTail UseObjectID Description Maximum fragment size for DCE/RPC requests Hides the real bind request between fake UUIDs Number of fake UUIDs that occur before the real UUID Number of fake UUIDs that occur after the real UUID Specifies a fake object ID on all call requests Valid Values 1 65,535 true or false 0 65,535 0 65,535 true or false
97
EMAIL Settings
Table 7-8 on page 98 lists the Evasion Profile settings for EMAIL. All settings defined for EMAIL will affect the following protocols: SMTP, POP3, and IMAP. Table 7-8: EMAIL Evasion Profile Settings Option EnvelopeType Description Determines whether the To and From fields in the header are system generated or userdefined Valid Values User-specified User defines the To/From fields for email headers System-generated System generates random To/From fields for the email header From Defines the From header in email messages if EnvelopeType is Userspecified Defines the To header in email messages if EnvelopeType is User-specified Randomizes the order of headers in this protocol. String value (0 128 character length)
To
ShuffleHeaders
Ethernet Settings
Table 7-9 on page 98 lists the Evasion Profile settings for Ethernet. Table 7-9: Ethernet Evasion Profile Settings Option MTU Description Specifies the Maximum Transmission Unit used to send frames Valid Values 64 9216
98
FILETRANSFER Settings
Table 7-10 on page 99 lists the Evasion Profile settings for FILETRANSFER. Table 7-10: FILETRANSFER Evasion Profile Settings Option Pop3Encoding TransportProtocol Imap4Protocol FtpTransferMethod CompressionMethod Description Encoding for files transported via POP3. Different transport protocols to use when sending files. Encoding for files transported via IMAP4. The FTP method to be used to transfer the file. Different compression methods to use when transferring files. Encoding for files transported via SMTP. Valid Values base64 or quotedprintable FTP, HTTP, IMAP4, POP3, or SMTP base64 or quotedprintable PASV_RETR, RETR, or STOR Gzip, None, Tar, Tgz, or Zip base64, quotedprintable, or uuencode
SmtpEncoding
FTP Settings
Table 7-11 on page 99 lists the Evasion Profile settings for FTP. Table 7-11: FTP Settings Option AuthentificationType Description Determines whether the FTP server authentication is userdefined or system generated Valid Values System Generated System generates the password and username User-specified User defines the password and username
99
Table 7-11: FTP Settings Option EvasionLevel Description Alters the FTP commands with the selected telnet control character option Valid Values 0 No telnet opcode evasion 1 Single telnet opcode placed at the beginning of the command 2 Single telnet opcode that is randomly placed in the command 3 Multiple telnet opcodes placed at the beginning of the command 4 Multiple telnet opcodes that are randomly placed in the command 5 One telnet opcode per word 6 One telnet opcode per character PadCommandWhitespace Pads the whitespace between commands and arguments using space and tab characters 1 Always use whitespace evasion 2 For Evasion Levels higher than zero, use whitespace evasion. Otherwise, do not. 3 Never use whitespace evasion Password Defines the password used for FTP connections if AuthenticationType is Custom Defines the username used for FTP connections if AuthenticationType is Custom String value (0 32 character length)
Username
100
Global Settings
Table 7-12 on page 101 lists the Evasion Profile settings for Global. Table 7-12: Global Evasion Profile Settings Option AllowDeprecated Description Allow deprecated strikes to run Valid Values true or false
HTML Settings
Table 7-13 on page 101 lists the Evasion Profile settings for HTML. Table 7-13: HTML Settings Option HTMLUnicodeEncoding Description Uses Unicode encoding for HTML content Valid Values None UTF-7 UTF-8 UTF-16BE (bigendian) UTF-16LE (littleendian) UTF-32BE (bigendian) UTF-32LE (littleendian) Standard Do not encode alphanumeric characters in accordance with UTF7 encoding All Encode all characters with UTF-7 character encoding
HTMLUnicodeUTF7Enco dingMode
Uses the Unicode UTF-7 character encoding mode for HTML content
101
Table 7-13: HTML Settings Option HTMLUnicodeUTF8Enco dingMode Description Uses the Unicode UTF-7 character encoding mode for HTML content Valid Values Overlong Encode characters using alternate UTF-8 encoding. Invalid Encode invalid characters with alternate UTF-8 invalid overlong encoding. HTMLUnicodeUTF8Enco dingSize Defines the number of alternate whitespace characters to prepend 27
HTTP Settings
Table 7-14 on page 102 lists the Evasion Profile settings for HTTP. Table 7-14: HTTP Settings Option AuthenticationType Description Determines whether the HTTP server authentication is userdefined or system generated Valid Values System-generated authentication System generates the password and username User-specified authentication User defines the password and username Base64EncodePOSTDat a ClientChunkedTransfer ClientChunkedTransferSi ze DirectoryFakeRelative Encode POST data using Base64 encoding Uses chunked transfer-encoding to separate the client requests Defines the maximum chunk size for ClientChunkedTransfer Inserts fake relative directories between path elements true or false true or false 1 4,294,967,295
true or false
102
Table 7-14: HTTP Settings Option DirectorySelfReference EncodeDoubleNibbleHex EncodeDoublePercentHe x EncodeFirstNibbleHex EncodeHexAll EncodeHexRandom EncodeSecondNibbleHex EncodeUnicodeAll EncodeUnicodeBareByte EncodeUnicodeInvalid EncodeUnicodePercentU EncodeUnicodeRandom EndRequestFakeHTTPH eader ForwardToBackSlashes GetParameterRandomPr epend HTTPServerProfile Description Converts all directories to selfreferenced relative directories Encode each hex nibble of URI characters separately Double encode URI characters Double encode the first hex nibble of URI characters Encodes the entire URI in Hex Encodes random parts of the URI in Hex Double encode the second hex nibble of URI characters Encodes the entire URI in Unicode Encodes the entire URI in Unicode Encodes the URI with invalid Unicode Encode the request with 16-bit percent-U unicode Encodes random parts of the URI in hex Encode an HTTP header in the URI Converts all forward slashes to back slashes (Windows only) Prepends random values to the query string Configures evasion options based on HTP server compatibility Uses a random invalid method Uses a random valid method Valid Values true or false true or false true or false true or false true or false true or false true or false true or false true or false true or false true or false true or false true or false true or false true or false none, iis, or apache
MethodRandomInvalid MethodRandomValid
103
Table 7-14: HTTP Settings Option MethodRandomizeCase MethodURINull Description Randomizes the case of the request method Inserts a null character between the method and URI in HTTP requests Insert multiple spaces between the method and URI in HTTP requests Inserts tab characters between the method and URI in HTTP requests Defines the password used for HTTP connections if AuthenticationType is Custom Prepends random values to the POST data Uses the full URL in the request URL Uses chunked transfer-encoding to break up the server response Defines the chunk size for ServerChunkedTransfer Uses compression to encode the server response Appends whitespace characters to the URI Defines the number of whitespace characters to append to the URI if URIAppendAltSpaces is true Prepends random whitespace characters to the URI Defines the number of whitespace characters to prepend to the URI if URIPreprendAltSpaces is true Randomizes the case of the request URI Valid Values true or false true or false
MethodURISpaces
true or false
MethodURITabs
true or false
Password
String value (0 32 character length) true or false true or false true or false 1 4,294,967,295 none, delfate, gzip true or false 0 65,535
URIPrependAltSpaces URIPrependAltSpacesSiz e
URIRandomizeCase
true or false
104
Table 7-14: HTTP Settings Option Username Description Defines the username used for HTTP connections if AuthenticationType is Custom Uses a random string for the HTTP version Randomizes the case of the HTTP version Uses HTTP version 0.9 instead of 1.0 or 1.1 Modifies the type of HTTP host header sent Randomizes the order of headers in this protocol. Defines the HTTP header used if VirtualHostname is set to Custom Valid Values String value (0 32 character length) true or false true or false true or false String value (0 32 character length) true or false 1 System-generated HTTP host header 2 User-specified HTTP host header
105
IMAP4 Settings
Table 7-15 on page 106 lists the Evasion Profile settings for IMAP. Table 7-15: IMAP Settings Option AuthenticationType Description Determines whether the IMAP server authentication is userdefined or system generated Valid Values System-generated authentication System generates the password and username User-specified authentication User defines the password and username Password Defines the password used for IMAP connections if AuthenticationType is Userspecified authentication Defines the username used for IMAP connections if AuthenticationType is Userspecified authentication String value (0 32 character limit)
Username
106
IP Settings
Table 7-16 on page 107 lists the Evasion Profile settings for IP. All settings defined for IP will affect the following protocols: TCP and UDP. Table 7-16: IP Settings Option FragEvasion Description Enables IP evasion using fragmentation Disabled Overlap-Last-New Overlap end fragments, favoring new data (Linux/IOS) Overlap-Last-Old Overlap end fragments, favoring old data (Windows/ Solaris/BSD) Overlap-All-New Overlap all fragments, favoring new data (IOS) Overlap-All-Old Overlap all data, favoring old data (Windows/Solaris/BSD) FragOrder Changes the order in which fragments are sent Determines how IP fragments are reassembled default, random, or reverse Valid Values
FragPolicy
Last Newer fragments always replace older fragments (Cisco IOS) First Older fragments are never replaced by new fragments (SunOS 5.5-5.8, HP-UX 11i) Linux Reassemble the fragments according to Linux/OpenBSD IP stack behavior Bsd Reassemble the fragments according to BSD IP stack behavior (AIX, BSD, or Irix) Bsd-Right Reassemble the fragments according to HP JetDirect IP stack behavior Windows Reassemble the fragments according to Windows IP stack behavior Solaris Reassemble the fragments according to Solaris 9/10 IP stack behavior
107
Table 7-16: IP Settings Option MaxFragSize Description Defines the maximum packet size for all transactions Defines maximum IP packet size for server-to-client transactions Defines the maximum IP packet size for client-to-server transactions Enables RFC3514 compatibility Defines the TOS field for all packets Defines the TTL field for all packets 8 65,535 Valid Values
MaxReadSize
8 65,535
MaxWriteSize
8 65,535
Malware Settings
Table 7-17 on page 108 lists Evasion Profile settings for Malware. Table 7-17: Malware Settings Option CompressionMethod Description Different compress methods to use when sending live malware samples. Valid Values 1 none 2 Gzip 3 Tar 4 Tgz 5 Zip 1 base64 2 quoted-printable 3 uuencode 1 base64 2 quoted-printable 3 uuencode
SmtpEncoding
Encoding for malware transported via SMTP. Encoding for malware transported via IMAP4.
Imap4Encoding
108
Table 7-17: Malware Settings Option TransportProtocol Description Different transport protocols to use when sending live malware samples. Encoding for malware transported via POP3. The FTP method to be used to transfer malware samples. Valid Values 1 HTTP 2 IMAP4 3 POP3 4 SMTP 1 base64 2 quoted-printable 3 uuencode 1 PASV_RETR 2 RETR 3 STOR
Pop3Encoding
FtpTransferMethod
OLE Settings
Table 7-18 on page 109 lists Evasion Profile settings for OLE. Table 7-18: OLE Settings Option OLE.RefragmentData Description Output fragmented OLE documents Valid Values true or false
POP3 Settings
Table 7-19 on page 109 lists Evasion Profile settings for POP3. Table 7-19: POP3 Settings Option AuthenticationType Description Determines whether the IMAP server authentication is userdefined or system generated Valid Values System-generated System generates the password and username User-specified User defines the password and username PadCommandWhitespac e Uses space and tab characters to pad the whitespace between commands and arguments true or false
109
Table 7-19: POP3 Settings Option Password Description Defines the password used for POP3 connections if AuthenticationType is Custom Defines the username used for POP3 connections if AuthenticationType is Custom Valid Values String value (0 32 character length) String value (0 32 character length)
Username
SELF Settings
Table 7-20 on page 110 lists Evasion Profile settings for SELF Table 7-20: SELF Settings Option AS-ID Description Identifies the number used in the BGP protocol to identify an autonomous system Uniform Resource Identifier, or requested address Defines the router id to send in OSPF packets to identify a router The virtual directory to use in IIS unicode execution strikes Valid Values 1 65,535
URI ROUTER-ID
UnicodeTraversalVirtualDire ctory
TraversalVirtualDirectory
The virtual directory to use in an Apache Win32 directory traversal strike The Windows directory to use in IIS unicode execution strikes The iteration of the fuzzing test that signals the end of the test The iteration of the fuzzing test that signals the start of the test
winnt or windows
0 2,147,483,647
StartingFuzzerOffset
0 2,147,483,647
110
Table 7-20: SELF Settings Option Username Description Defines the username to send in connections that require a username Defines the password to send in connections that require a password Specify the maximum amount of time a long-running strike will be run (in seconds) Toggles verbose logging for the Killed ActiveX Instantiation strike, allowing it to report allowed or blocked status on a per-CLSID basis The filename to use in an Apache Win32 directory traversal strike The choice as to whether or not to ping an application The amount of padding to be used with HTML packets Specifies the number of times each subtest within the test is repeated (used with fuzzers) Specifies the number of times the test is to be run (used with single flows) The Windows directory to use in an Apache Win32 directory traversal strike The OSPF Area ID which identifies which area routers belong to A delay in seconds for use in sending flows An AppSim Super Flow Fuzzer that fuzzes various fields in an existing Super Flow Valid Values Any valid string
Password
MaximumRuntime
0 86,400
true or false
TraversalRequestFilename
win.ini or system.ini
Repetitions
0 2,147,483,647
TraversalWindowsDirectory
winnt or windows
AREA-ID
DelaySeconds AppSimSmartflow
111
Table 7-20: SELF Settings Option AppSimSuperflow Description An AppSim Super Flow Fuzzer that runs an existing Super Flow with the user controlling the number of times to repeat, and the time between consecutive runs This parameter defines the Application Profile that the strike will use. Used by strike: /strikes/generic/ appprofileflow/ appprofileflow.xml. Use a new tuple for each Superflow Valid Values Valid Super Flow
AppSimAppProfile
AppSimUseNewTuple
true or false
SHELLCODE Settings
Table 7-21 on page 112 lists the Evasion Profile settings for SHELLCODE. Table 7-21: SHELLCODE Settings Option RandomNops Description Uses random nop-equivalent sequences instead of actual Noop instructions Valid Values true or false
SIP Settings
Table 7-22 on page 112 lists the Evasion Profile settings for SIP. Table 7-22: SIP Settings Option CompactHeaders EnvelopeType Description Uses compact header names instead of full header names Determines whether the To and From fields in the header are system generated or userdefined Valid Values true or false User-specified User defines To/From headers System-generated System generates random To/From fields for the email header
112
Table 7-22: SIP Settings Option From Description Defines the From field in the email header if EnvelopeType is User-specified Pads headers with line breaks Randomizes the order of headers in this protocol. Pads headers with whitespace Randomizes the case of data that is case sensitive Defines the To field in the email header if EnvelopeType is Userspecifed Valid Values String value (0 128 character length) true or false true or false true or false true or false String value (0 128 character length)
SMB Settings
Table 7-23 on page 113 lists the Evasion Profile settings for SMB. Table 7-23: SMB Settings Option AuthenticationType Description Determines whether the SMB server authentication is userdefined or system generated Valid Values System-generated System generates the password and username User-specified User defines the password and username MaxReadSize MaxWriteSize Password Defines the maximum read size for SMB requests Defines the maximum write size for SMB requests Defines the password used for POP3 connections if AuthenticationType is Custom 0 65,535 0 65,535 String value (0 32 character length)
113
Table 7-23: SMB Settings Option RandomPipeOffset Description Uses random file offsets when reading and writing to named pipes Defines the username used for POP3 connections if AuthenticationType is Custom Valid Values true or false
Username
SMTP Settings
Table 7-24 on page 114 lists the Evasion Profile settings for SMTP. Table 7-24: SMTP Settings Option PadCommandWhitespa ce ShuffleHeaders Description Pads the whitespace between commands and arguments with space and tab characters Randomizes the order of headers in this protocol Valid Values true or false
true or false
SSL Settings
Table 7-25 on page 114 lists the Evasion Profile settings for SSL. Table 7-25: SSL Settings Option ClientCertificateFile Description Upload a certificate and select it from here. Client certificates will not be used if this option is not enabled. (OPTIONAL) Upload a private key file and select it from here. Client certificates will not be used if this option is not enabled. Override the normal destination port for sessions using SSL Override the normal destination port for sessions using SSL Enable SSL for every TCP session Valid Values Available file
ClientKeyFile
Available file
114
Table 7-25: SSL Settings Option ServerCertificateFile Description Upload a certificate and select it from here. A default will be chosen if this option is not enabled. Upload a private key file and select it from here. A default will be chosen if this option is not enabled. Valid Values Available file
ServerKeyFile
Available file
SUNRPC Settings
Table 7-26 on page 115 lists the Evasion Profile settings for SUNRPC. Table 7-26: SUNRPC Settings Option NullCredentialPadding Description Pads the SunRPC credential block using a random set of group IDs Defines the number of TCP segments to use for an unfragmented RPC request Valid Values true or false
OneFragmentMultipleT CPSegmentsCount
1 128
115
Table 7-26: SUNRPC Settings Option RPCFragmentTCPSeg mentDistribution Description Determines how RPC fragments are distributed across TCP segments Valid Values AllFragmentsOneTC PSegment Sends all TCP SunRPC fragments in a single TCP segment AllExceptLastFragm entOneTCPSegment Sends all TCP SunRPC fragments, except the last fragment, in a single TCP segment OneFragmentPerTC PSegment Sends one TCP SunRPC fragment per TCP segment OneFragmentMultipl eTCPSegments Sends one TCP fragment in multiple TCP segments TCPFragmentSize Defines the maximum fragment size for TCP SunRPC requests 0 65,535
TCP Settings
Table 7-27 on page 116 lists the Evasion Profile settings for TCP. All settings defined for TCP will affect the following protocols: IMAP4, SMTP, POP3, FTP, SMB, HTTP, and SIP. Table 7-27: TCP Settings Option AcknowledgeAllSegments DestinationPort Description Acknowledges all segments within the TCP window Defines the destination port to use if DestinationPortType is Static Valid Values true or false 0 65,535
116
Table 7-27: TCP Settings Option DestinationPortType Description Determines how TCP destination ports are selected Valid Values Default Each Strike defines its own destination port Static Strikes use a specified destination port Random Strikes use a random destination port DuplicateBadChecksum Inserts duplicate segments with bad TCP checksums and invalid data Inserts duplicate segments with the RST flag and bad sequence numbers Inserts duplicate segments with the RST flag and bad sequence numbers Inserts duplicate segments with bad sequence numbers DuplicateLastSegment DuplicateNullFlags MaxSegmentSize Inserts a duplicate last segment for each write to the stream Inserts duplicate segments with null TCP flags and invalid data Defines the maximum segment size for client-to-server transactions Determines the order in which segments are sent true or false true or false 0 1,460 true or false
DuplicateBadReset
true or false
DuplicateBadSeq
true or false
DuplicateBadSyn
true or false
SegmentOrder
Default Sends segments in the normal order Reverse Reverses the order of all segments Random Randomizes the order of all segments
117
Table 7-27: TCP Settings Option SkipHandshake SourcePort SourcePortType Description Skips the three-way handshake for all connections Defines the source port if SourcePortType is Static Determines how source ports are selected Valid Values true or false 0 65,535 Default Each Strike defines its own source port Static Strikes use a specified source port Random Strikes use a random source port AcknowledgeAllSegments Causes the Security component to send a TCP acknowledgement packet to every TCP packet received. Causes the Security component to perform a 4-way TCP handshake as opposed to the typical 3-way handshake. true or false
SneakAckHandshake
true or false
UDP Settings
Table 7-28 on page 118 lists the Evasion Profile settings for UDP. All settings defined for UDP will affect the following protocols: SIP. Table 7-28: UDP Settings Option DestinationPort DestinationPortType Description Defines the destination port if DestinationPortType is Static Determines how destination ports are selected Valid Values 0 65,535 Default Each Strike defines its own destination port Static Strikes use a specified destination port Random Strikes use a random destination port
118
Table 7-28: UDP Settings Option SourcePort SourcePortType Description Defines the source port if SourcePortType is Static Determines how source ports are selected Valid Values 0 65,535 Default Each Strike defines its own source port Static Strikes use a specified source port Random Strikes use a random source port
UNIX Settings
Table 7-29 on page 119 lists the Evasion Profile settings for UNIX. Table 7-29: UNIX Settings Option PadCommandWhitespa ce PadPathSlashes Description Pads the whitespace in Unix commands with space and tab characters Pads UNIX path names using space and tab characters Valid Values true or false
true or false
4. Under Parameter Label, select Evasion Profile. 5. From the Evasion Profile heading, click Edit. The available Evasion Profiles are displayed. 6. Select the profile you want to edit.
119
7. Click the check box of the parameters you want to change. 8. Make your changes to the selected parameters. 9. Click the Apply Changes button. 10. Click the Save As button. 11. Enter a name for the updated Evasion Profile. 12. Click OK.
120
8 Application Manager
This section covers: Application Manager Overview App Profiles Token Substitution Super Flows Protocol Parameters Actions and Action Parameters Conditional Requests
Actions
Action Parameters
121
Table 8-1: Application Manager Terms Term Weight Definition Determines the frequency in which the Super Flow will occur in the application traffic. Super Flows with higher weights will make up larger portion of the test traffic. The weight can be any value between 1 and 999,999,999. The system uses the seed value to determine whether it generates static or dynamic application flows for the Super Flow. If you do not explicitly set a seed for the Super Flow, then the system will automatically randomize a seed for the Super Flow each time it is used. When you use a randomized seed, the system will dynamically generate new application traffic for the Super Flow. If you explicitly set the seed for the Super Flow, then the system will recreate the same application flows each time the Super Flow is run. Typically, you will want to use the same seed if you want to perform an apples-to-apples comparison between two devices; this enables you to determine how two devices handle the exact same stream of application traffic. % Flows The percentage of total flows that will be dedicated to the Super Flow. This value is affected by the weight that is assigned to the Super Flow; the larger the weight, in comparison to the other Super Flow weight assignments, the higher the % Flows will be. The percentage of bandwidth consumed by the Super Flow. This value is affected by the weight that is assigned to the Super Flow. This value is affected by the weight that is assigned to the Super Flow; the larger the weight, in comparison to the other Super Flow weight assignments, the higher the % Bandwidth will be. The total number of sessions in the Super Flow. The total number of bytes in the Super Flow; this value will fluctuate for each App Profile due to the randomization of action parameters within a flow.
Seed
% Bandwidth
Sessions # Bytes
122
type, and actions that the Super Flow will use. The individual flows can be customized even further with protocol parameters and action parameters. Each flow added to a Super Flow essentially counts as a session. You can have up to 16 flows per Super Flow. This is important because the BreakingPoint Storm CTM allows up to 7.5 million simultaneous sessions at a rate of 750,000 sessions per second on each 10 Gb slot, and it allows up to 5 million simultaneous sessions at a rate of 500,000 sessions per second on each 1 Gb blade. Note: Aggregately, if you have two 10 Gb blades, you can generate up to 30 million simultaneous TCP sessions at a rate of 1.5 million sessions per second. If you have two 1 Gb blades, you can generate up to 10 million simultaneous TCP sessions at a rate of 1 million sessions per second. After you have created your Super Flows, you can create your App Profiles. The App Profiles contain the Super Flows that the Application Simulator test component will use to generate application traffic. Now that you have an overview of the terms related to the Application Manager, the next section will illustrate how all the components of the Application Manager work together. The section will provide you with an example of how you can use the Application Manager to set up a Super Flow based on HTTP.
123
HTTP Super Flow Example The following section provides step-by-step instructions to recreate the example above. To set up the HTTP Super Flow: 1. Select Managers > Application Manager from the Menu bar. 2. Click on the Super Flows tab. 3. Click the Create a new super flow (+) button. 4. Enter a name for the Super Flow in the Name field. 5. Click the OK button. 6. Click the Manage Hosts button. 7. Enter DNS Server in the Host Name field. Note: Hostnames must contain less than 255 characters, start with a letter, and consist of at least one label. Labels can contain 2-62 characters and use alphanumeric characters, dashes, or underscores; however, they cannot start or end with a dash or contain all numbers. Use the string '%n' to assign a unique number for each instance of the host. 8. Click the Interface drop-down button. 9. Select Server from the Interface drop-down menu. 10. Enter dnsserver.bps.int in the Host Nickname field. Note: The name entered here will be viewable from the server-type and client-type drop-down menus. You can use the string '%n' to assign a unique number for each instance of the host. All tokens that are supported in token substitution can be used to create host nicknames. 11. Click the Add Host (+) button. 12. Enter HTTP Server in the Host Name field. Note: Hostnames must contain less than 255 characters, start with a letter, and consist of at least one label. Labels can contain 2-62 characters and use alphanumeric characters, dashes, or underscores; however, they cannot start or end with a dash or contain all numbers. Use the string '%n' to assign a unique number for each instance of the host. 13. Select Server from the Interface drop-down menu. 14. Enter httpserver.bps.int in the Host Nickname field. Note: The name entered here will be viewable from the server-type and client-type drop-down menus. You can use the string '%n' to assign a unique number for each instance of the host. All tokens that are supported in token substitution can be used to create host nicknames. 15. Click the Add Host (+) button. 16. Click the Close button to exit the Create a New Host window. 17. Click the Client drop-down button, located under Create a New Flow. 18. Select Client from the Client drop-down menu. 19. Click the Server drop-down button, located under Create a New Flow.
124
App Profiles
20. Select DNS Server from the Server drop-down menu. 21. Click the Protocol drop-down button. 22. Select DNS from the Protocol drop-down menu. 23. Click the Add Flow (+) button. 24. Click the Client drop-down button. 25. Select Client from the Client drop-down menu. 26. Click the Server drop-down button. 27. Select HTTP Server from the Server drop-down menu. 28. Click the Protocol drop-down button. 29. Select HTTP from the Protocol drop-down menu. 30. Click the Add Flow (+) button. 31. Select the DNS flow from the Flows list, located under the Define Flows area. 32. Click the Action drop-down button, located under the Define Actions area. 33. Select Client: Query from the Action drop-down menu. 34. Click the Add Action (+) button. 35. Click the Edit the selected action parameter button. 36. Click the Host drop-down button. 37. Select HTTP Server from the Host drop-down menu. 38. Click the Apply Changes button. 39. Click the Action drop-down button. 40. Select Server: Response from the Action drop-down menu. 41. Click the Add Action (+) button. 42. Click the Edit the selected action parameter button. 43. Click the Host drop-down button. 44. Select HTTP Server from the Host drop-down menu. 45. Click the Apply Changes button. 46. Select the HTTP flow from the Flows list, located under the Define Flows area. 47. Click the Action drop-down button. 48. Select Client: GET from the Action drop-down menu. 49. Click the Add Action (+) button. 50. Click the Edit the selected action parameter button. 51. Click the Request path check box. 52. Enter /audio.wma in the Request path field. 53. Click the Apply Changes button. 54. Select Server: Response (OK) from the Action drop-down menu. 55. Click the Add Action (+) button. 56. Click the Edit the selected action parameter button. 57. Enter audio/x-ms-wma in the Content Type field. 58. Click the Apply Changes button. 59. Click the Save Super Flow button. Now that the Super Flow has been created, it will be available for you to add to any custom App Profile.
App Profiles
App Profiles contain the set of flow specifications (Super Flows) that the Application Simulator test component will use to generate application traffic.
125
App Profiles
Each Super Flow will be assigned a weight that determines its frequency in the application traffic and a seed that determines whether the Super Flow generates static or dynamic application flows. Super Flows with higher weights will make up larger portion of the test traffic. For more information on Super Flow weight distribution, see the section Super Flow Weight Distribution on page 126.
126
App Profiles
need to set the weight for these two flows at 33% and 66%, respectively. Since one flow has twice the number of flows as the other, you will need to assign a weight that is 1.5 times the weight of the other.
127
App Profiles
Example 1
www.google.com/index.html www.yahoo.com/music.mp3 www.breakingpoint.com/image.jpg www.microsoft.com/manual.pdf
Example 2
www.google.com www.yahoo.com www.breakingpoint.com www.microsoft.com /index.html /music.mp3 /image.jpg /manual.pdf
After creating a file with the list of URLs to include in your test, use the following steps to upload the file and run your test. To test a URL filtering gateway: 1. Select Managers > Application Manager from the Menu bar. 2. Click the Super Flows tab. 3. Select an HTTP-based Super Flow from the Super Flows list. 4. Click the Create a new Super Flow button. 5. Type a name in the Name field and click Ok. 6. In the Create a New Flow section, select HTTP from the Protocol drop-down box. 7. Click the Add Flow button and select the flow you just created.
128
Token Substitution
8. In the Create a New Action section, select the GetURIs action from the Action dropdown box. 9. Click the Add Action button. 10. Click the Edit the selected action parameters icon. 11. Click the File with a list of URIs check box. 12. In the GetURIs dialog box, locate the file to upload by either:
n n
Selecting the filename from the drop-down list Clicking the Import File with a list of URIs link and browsing for the file you created
13. Upload the file you want to use. 14. Click Apply Changes. 15. Click the Save Super Flow button. 16. Add the Super Flow you just created to an Application Profile and use that profile in your test. For information on creating an Application Profile, see Creating an App Profile on page 127.
Token Substitution
Token substitution allows application helpers to insert a token into the data stream. Before the Network Processor sends the data stream, it replaces the inserted token with content based on the token type and the optional format specifier. The maximum number of tokens per packet is 64. The maximum size of the token-replacing content is 512 MB.
Token Format
Use the following format to create a token: ##[type](arguments)##. Note: The presence of a "##foo(5)##" string should not cause an error if there are no "foo" token types. Such invalid expressions should be ignored and treated as literals. The same is true for tokens with invalid arguments. For example, ##int_c(5)## should be ignored, since ##int_c(5,5)## would be the correct method to specify one value for a range of integers.
Random-Character Tokens
This token produces a string composed of random characters. The token type determines the character set from which the string is created. The seed type, which is optional, determines the randomness of the string created by the token. A seed type of seed_random will produce a random string each time the token is used. A seed type of seed_flow will produce the same string each time it is used within a flow. Finally, a seed type of seed_superflow will produce the same string each time it is used within a Super Flow. Syntax Use the following syntax to create valid random-character tokens.
## type([seed type],[log type], min characters,max characters)##
129
Token Substitution
Example
## alpha(5,10)##; Specifies five to ten alpha characters
Table 8-2 on page 130 lists the valid types for creating random-character tokens. Table 8-2: Valid Types for Random-Character Tokens Types alpha num alphanum loweralpha upperalpha punc text non_null byte lowerhex upperhex Seed Type The seed type is optional. The seed type allows you to seed randomly, or use the flow ID to seed. Using the flow ID to seed generates the same value whenever that token is used in a flow. If no value is specified for the seed type, it defaults to seed_random. Table 8-3 on page 130 lists valid seed types. A token may use one of the following seed types. Note: These seed types are not exclusive to any particular type of token. Table 8-3: Valid Seed Types Type seed_random Meaning The value will be random every time the token is used. Example alpha(seed_random,8) Meaning Alpha characters Numeric characters Alphanumeric characters Lowercase alpha characters Uppercase alpha characters Punctuation characters All text characters Non-zero 8-bit value Any 8-bit value Lowercase human-readable hex Uppercase human-readable hex A-Za-z 0-9 A-Za-z0-9 a-z A-Z ~!@#$%^&*()_-+={}|[]\;:,./<>? \x21-\x7e \x01-\xff \x00-\xff 0-9a-f 0-9A-F Example
130
Token Substitution
Table 8-3: Valid Seed Types Type seed_flow seed_superflow Meaning The value will be the same every time the token is used within a flow. The value will be the same every time the token is used within a Super Flow. Example alpha(seed_flow,8) alpha(seed_superflow,8)
Special Seed Types There are two special seed types that can be used to generate sequential values rather than random ones. These special seed types are seeded per Super Flow/flow class. When these special seed types are used, a separate counter per Super Flow is added to the application profile. Table 8-4 lists the available special seed types. Table 8-4: Special Seed Types Type seed_sequential _flow seed_sequential _superflow Meaning Increments the value independently for each flow in a Super Flow each time it is used. Increments the value in a Super Flow each time it is used. Example user##num_range(seed_s equential_flow, 1, 4)## user##num_range(seed_s equential_superflow, 1, 4)##
Random-Number Tokens
This token produces a random number where the token type determines the format of the number. The seed type, which is optional, determines the randomness of the number produced by the token. A seed type of seed_random will produce a random number each time the token is used. A seed type of seed_flow will produce the same number each time it is used within a flow. Finally, a seed type of seed_superflow will produce the same number each time it is used within a Super Flow. The minimum and maximum values must be specified. Syntax Use the following syntax to create valid random-number tokens. Note that both a minimum and a maximum value must be present. The seed type, however, is optional.
## type([seed type],min value,max value)##
131
Token Substitution
Example
## num(1,9)##; Returns a string of random numbers, each having between 1 and 9 digits
Table 8-5 on page 132 lists the valid types for creating random-number tokens. Table 8-5: Valid Types for Random-Number Tokens Types int_C int_c int_N Long Meaning Unsigned character Character Network (big-endian) byte order Example ##int_C(0,256)## ##int_c(0,256)## ##int_N(1,2)## ;produces \x00\x00\x00\x01 or \x00\x00\x00\x02 ##int_n(1,2)## ##int_N(1,2)## ;produces \x01\x00\x00\x00 or \x02\x00\x00\x00
Little-endian byte order int_1 64-bit number (little endian, there is no big-endian 64-bit representation in Ruby. Little-endian 64-bit number (little-endian, there is no big-endian 64-bit representation in Ruby) ##int_n(1,2)## ;produces \x01\x00 or \x02\x00 ##int_q(1,2)## ;produces \x01\x00\x00\x00\x00\x00\x00\x0 0 or \x02\x00\x00\x00\x00\x00\x00\x0 0
int_a
Human-readable ASCII
132
Token Substitution
Syntax Use the following syntax to create valid tokens for the current time.
## type()##
Table 8-6 on page 133 lists the valid types for creating tokens for the current time. Table 8-6: Valid Types for Current Time Tokens Types time time_secs Meaning Formatted time Generates the amount of time that has elapsed (in seconds) since January 01, 1970 up to the current time Generates the amount of time that has elapsed (in seconds) since January 01, 1970 up to the current time Example ##time()## ;produces Thu May 07 14:56:56 -0500 2009 ##time_secs()## ;produces 1256570659 (in ascii)
##time_formatted()##
133
Token Substitution
Example
##ip_addr_cli(text)##
Table 8-7 on page 134 lists the valid types for creating valid tokens for host information. Table 8-7: Valid Types for Host Information Tokens Types ip_addr_cli Meaning Current Client-side IP address Current Server-side IP address Client UDP or TCP port ##port_cli(text,1)## ;can produce 1234 (assuming the client port is 1234) Example ##ip_addr_cli(text,1)## ;will produce 1.0.0.2 (assuming client IP is 1.0.0.2)
ip_addr_srv port_cli
port_srv hostname_cli
Server UDP or TCP port Client hostname ##hostname_cli()## ;will produce: client123 (assuming the hostname is client123)
hostname_srv
Server hostname
Table 8-8 on page 134 lists the valid formats for creating valid tokens for IP address, port, and hostname information. Table 8-8: Valid Formats for IP Addresses, Ports, and Hostnames Format text packed_le Plain text Packed in little-endian format. Long integers represent IP addresses, short integers represent port numbers. Packed in big endian format Comma-delimited octets (For hostnames only) A substituted hostname may be prepended with its binary length by specifying a token format of with_len. "1,2,3,4", or "31,144" \x05host1 Meaning Example 1.2.3.4; or 8080
134
Token Substitution
Flowid Parameter The flowid parameter is 1-based and is valid for port_cli/srv and ip_addr_cli/serv token types. However, the flowid parameter is not valid with hostname_cli or hostname_srv. A flowid of 0 indicates current flowid and is equivalent to not specifying a flowid.
Variable Tokens
The variable tokens provide a means of storing substring results from conditional requests so that those substrings may be used later in the Super Flow. The BreakingPoint Storm CTM supports conditional requests within both the Application Simulator and Client Simulator components. You can use a Perl Compatible Regular Expression (PCRE) within a conditional request to match data that occurs within the Super Flow. The bpsvar token type produces the substring result. The substring number determines which substring the token will produce. The bpsvar_len token type produces the length of the substring result. Also, the substring number determines which substring length the token will produce. Syntax Use the following syntax to create valid tokens for variables. The maximum number of supported substrings is 10. The maximum length of each grabbed substring is 16.
## type(substring number)##
Table 8-9 on page 135 lists the valid types for creating valid tokens for variables. Table 8-9: Valid Types for Variables Types bpsvar bpsvar_len Valid Variable Formats A valid variable format is any substring number between 0 and 9. This number identifies the substring from the most recent successful PCRE match of a Conditional Request. Meaning An ASCII string containing most recent substring result from a Conditional Request The length of the above bpsvar string
Literal Expression
If the application needs to produce what would otherwise be a valid replacement token, the token expression should be encapsulated in a literal expression token. The result of this token is the literal string without substitution.
135
Token Substitution
Syntax Use the following syntax to create valid literal expression tokens.
## literal_bps()##
Example
## literal_bps(##alpha(5,10)##)## ##literal_bps(##port_cli(text)##)##; produces the literal string ##alpha(5,10)## and ##port_cli(text)## without substitution.
Increment Tokens
Increment tokens allows you to incrementally increase a unique value each time the value is encountered. You can specify a register value (0-9) and an initial value. The first time the token is encountered, it will be replaced with the initialize value. The next time the token is encountered within the same Super Flow, it will be replaced with the previously substituted value plus one. Syntax Use the following syntax to create valid increment tokens.
##num_increment([seed_type],[log_type],reg,init)##
Example
##num_increment(0,5)## // initializes register 0 to 5 ##num_increment(1,10)## // initializes register 1 to 10
If the same register is used within the same packet, the values will increase. In previous releases, the value would decrease.
Range Tokens
Range tokens emit a number between the minimum and maximum. They are similar to increment tokens. Syntax Use the following syntax to create valid range tokens.
##num_range([seed_type],[log_type],min,max)##
136
Token Substitution
Table 8-10 on page 137 lists the valid formats for creating valid substituted length tokens. Table 8-10: Valid Types for Substituted Length Tokens Format text text_hex packed_le packed_be packed_le_16 packed_be_16 packed_8 Example Before substitution:
subst_length(text,256,1) ##subst_length(text,256,1)## subst_length(text,256) ##subst_length(text,256)## subst_length(text,256) ##subst_length(text,256)##
Meaning Plain text in decimal format Plain text in hexadecimal format Packed in 32-bit little endian format Packed in 32-bit big endian format Packed in 16-bit little endian format Packed in 16-bit big endian format Packed in 8-bit format
137
Token Substitution
After substitution:
subst_length(text,256,1) 233 subst_length(text,256) 233 subst_length(text,256) 256
Dictionary Tokens
Dictionary elements are currently usable anywhere normal token elements are used. However, the source of the dictionary items itself currently has no way to be specified. The user interface or an app helper needs to define dictionary items before this will work. If you refer to a dictionary that is not defined, the word nodict will be substituted instead. Table 8-11 on page 138 lists the valid formats for creating valid dictionary tokens. Table 8-11: Valid Types for Dictionary Tokens Format dict_flow dict_superflow Meaning Emit a dictionary element from a flow-specific dictionary Emit a dictionary element from a Super Flow-specific dictionary
138
Token Substitution
Table 8-11: Valid Types for Dictionary Tokens Format needle ip_checksum Meaning Synonym for ##dict_superflow(log_unlimited, 0)## Insert an IP checksum on the following bytes after the packet as if they were an IPv4 header.
Dictionary Tokens and Seed Types When using flow dictionary tokens in conjunction with seed types, the seed types will impact the substituted result as follows: seed_random: The token will be substituted with a random value from the dictionary seed_flow: The token will be substituted with the same value from the dictionary every time that it is used within the same flow. seed_superflow: Not entirely useful in the case of flow dictionaries since a flow dictionary is assigned to only one flow. However, if you assign the same dictionary to two or more flows, this option would ensure that the substituted value is the same in those flows. seed_sequential_flow: Iterates through the values in the dictionary with each flow. seed_sequential_superflow: Iterates through the values in the dictionary with each Super Flow.
139
Token Substitution
Table 8-11 on page 138 lists the valid formats for the log_type parameter. Table 8-12: Valid Types for the log_type Parameter Format log_none log_limited Meaning No values are logged (normal/default operation) The first 3000 occurences of this value are logged to control (currently only used for lawful-intercept needles, limited to 5 per second) All occurrences of this value are logged to control (currently only used for lawful-intercept needles, limited to 5 per second)
log_unlimited
Example
alpha(seed_random, log_unlimited, 8)
Note: While the log and seed parameters can be applied to any token, the seed parameter applies only to random tokens.
140
Super Flows
Super Flows
When an Application Simulator test runs, it will first look at the App Profile selected for the test. Then, it will look at the Super Flows that are contained within the App Profile. Each Super Flow contains the protocols that can be used to set up flows; server and client configurations; and the sequence of actions that will occur between the server and the client. For example, you can use the HTTP and DNS protocols to create an HTTP Super Flow. The HTTP Super Flow would define the servers and clients that the protocols can use to simulate its requests and responses. So, in this case, you may want to create an HTTP server and a DNS server. For the HTTP server, you may want to set the HTTP version, server/client port, and client/server type. For the DNS server, you may want to assign the server/client port and the DNS Transaction ID. You can perform any of these customizations by modifying the protocol parameters. After you have created your clients and servers, you will need to set up the actions for the Super Flow. These actions dictate the sequence of client requests and server responses, and the data that is sent during these sequences.
141
Super Flows
Creating a Host
At a minimum, you will need to define least two hosts: one for the server and one for the client. You may need additional hosts depending on the type of flows you are creating. For example, an HTTP Super Flow may need two server-types, one for the DNS server and one for the HTTP server, but an AOL Super Flow may only need one server and one client. The Super Flow must have at least one host defined at all times. The system will display an error if you try to delete all the hosts. If this occurs, just click the Close button on the error message. The following section provides instructions for creating a host. For more information on Super Flows, see the section Super Flows on page 141. To create a host: 1. Select Managers > Application Manager from the Menu bar. 2. Click the Super Flows tab. 3. Click the Manage Hosts button. 4. Enter a host address in the Host Name field. 5. Click the Interface drop-down button and select Client if the host will transmit data or Server if the host will receive data. 6. Enter a name for the host in the Host Nickname field. Note: You can use the string '%n' to assign a unique number for each instance of the host. All tokens that are supported in token substitution can be used to create host nicknames. 7. Click the Add Host (+) button. 8. Repeat steps 3-7 for each additional host. 9. Click the Close button when you are done creating hosts. 10. Click the Close button to exit the Host window.
Deleting a Host
Deleting a host will remove it and all flows that use the host. If you attempt to delete all hosts from the Super Flow, the system will display an error message. To resolve the error message, click the Close button. To delete a host: 1. Select Managers > Application Manager from the Menu bar. 2. Click the Super Flows tab. 3. Click the Manage Hosts button. 4. Select a host from the Host Name list. 5. Click the Delete the selected host button. 6. Click Yes when the confirmation window displays.
142
Super Flows
Creating a Flow
A flow defines the protocol, servers, and clients available for the Super Flow. You create actions based on the flows that are available. The protocol parameters and flow actions that will be configurable for the flow will depend on the protocol that the flow is based on. Note: Before creating a flow, you must have your hosts set up. For more information on creating hosts, see the section Creating a Host on page 142. Note: There can be up to 16 flows per Super Flow. To add a flow to a Super Flow: 1. Select Managers > Application Manager from the Menu bar. 2. Click the Super Flows tab. 3. Click the Client drop-down button. 4. Select a client from the Client drop-down menu. 5. Click the Server drop-down button. 6. Select a server from the Server drop-down menu. 7. Click the Protocol drop-down button. 8. Select a protocol from the Protocol drop-down menu. 9. Click the Add Flow (+) button. 10. Select a flow in the Define Flows section and click the Edit the selected flow protocol parameters button. 11. Enable or disable any parameter options you want to use. 12. Define the values for the protocol parameters that are enabled. For more information on protocol parameters, see the section Protocol Parameters on page 144. 13. Repeat steps 3-11 for each flow youd like to add to the Super Flow.
Deleting a Flow
Deleting a flow will remove the flow and all its actions from the Super Flow. Note: All actions based on the flow will also be removed from the Super Flow. To delete a flow: 1. Select Managers > Application Manager from the Menu bar. 2. Click on the Super Flows tab. 3. Select a Super Flow from the Super Flows list. 4. Select a flow from the Define Flows list. 5. Click the Delete the selected flow button. 6. Click the OK button when the confirmation window displays.
143
Protocol Parameters
To add actions to a Super Flow: 1. Select Managers > Application Manager from the Menu bar. 2. Click on the Super Flows tab. 3. Select a Super Flow from the Super Flows list. 4. Select a flow from the Define Flows list. Note: The protocol used by the flow will determine the actions and action parameters that are available for you to configure. 5. Click the Action drop down button. 6. Select an action from the Action drop-down menu. For descriptions on actions, see the section Actions and Action Parameters on page 175. 7. To edit the action parameters: (optional) Click the Edit the selected action parameter button Define any of the parameters available for the action. For more information on action parameters, see the section Actions and Action Parameters on page 175. Note: If you want to reference a valid file for server responses to URI requests, you must upload the file to the chassis. If uploaded files are supported by the protocol, you will see an option to upload files from the action parameters window. Click the Apply Changes button when done. 8. Repeat steps 3-6 for each action you want to add to the Super Flow. 9. Click the Save Super Flow button.
Protocol Parameters
You can use protocol parameters to customize the clients and servers for a protocol. These protocol parameters allow you define the server and client port numbers and configure additional settings for certain protocols. Since the parameters vary for each protocol, you will need to have an understanding of each protocols design and implementation to configure the server and client.
144
Protocol Parameters
Table 8-13 on page 145 lists the protocol parameters and their descriptions. Table 8-13: Protocol Parameters Protocol AIM Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) AOL L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) User Agent Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Up to 128 alphanumeric and/or special characters can be used to define the user agent. English French German Spanish Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535
Locale
AppleJuice
L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random)
145
Protocol Parameters
Table 8-13: Protocol Parameters Protocol Bearer Independent Call Control Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) BGP L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Client AS ID Server AS ID BitTorrent Peer Source Port (0=random) Destination Port (0=random) Encrypted BitTorrent Tracker Source Port (0=random) Destination Port (0=random) Encrypted Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 N/A N/A 0 65,535 0 65,535 True or False 0 65,535 0 65,535 True or False
146
Protocol Parameters
Table 8-13: Protocol Parameters Protocol Chargen Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Server Profile Chargen Pattern Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Ubuntu, Cygwin, or Custom Up to 128 alphanumeric characters can be specified for the pattern of bytes sent to the client. This field is set only if Server Profile is set to Custom. UDP or TCP Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 03 03 03 03 03
Transport Protocol (Deprecated) Citrix L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Seamless Channel Priority Window Channel Priority Disk IO Channel Priority Print Channel Priority Audio Channel Priority
147
Protocol Parameters
Table 8-13: Protocol Parameters Protocol Classic STUN Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Client External Network Client External CIDR Mask Server Network Server CIDR Mask Transaction ID Daytime L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Transport Protocol (Deprecated) Source Port (0=random) Destination Port (0=random) Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 N/A 0, 8, 16, or 24 N/A 0, 8, 16, or 24 N/A Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 UDP or TCP 0 65,535 0 65,535
148
Protocol Parameters
Table 8-13: Protocol Parameters Protocol DB2 Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Database Name Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Up to 256 alphanumeric and/or special characters can be used to define the database name. Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 0 999 0 999 Raw or SMB Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 0 999 0 999 Raw or SMB
DCE RPC
L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Major Version Minor Version L5 Transport
L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Major Version Minor Version L5 Transport
149
Protocol Parameters
Table 8-13: Protocol Parameters Protocol DCE RPC Exchange Directory Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Major Version Minor Version L5 Transport DCE RPC MAPI L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Major Version Minor Version L5 Transport Discard L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Transport Protocol (Deprecated) Source Port (0=random) Destination Port (0=random) Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 0 999 0 999 Raw or SMB Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 0 999 0 999 Raw or SMB Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 UDP or TCP 0 65,535 0 65,535
150
Protocol Parameters
Table 8-13: Protocol Parameters Protocol DIAMETER Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Protocol Version Application ID DNS L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Ebay L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 0 65,535 0 65,535 Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535
151
Protocol Parameters
Table 8-13: Protocol Parameters Protocol Echo Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) eDonkey L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535
152
Protocol Parameters
Table 8-13: Protocol Parameters Protocol Facebook Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Language API - Application Name Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 English, Deutsch, Espanol, and Francais Up to 256 alphanumeric and/or special characters can be used to define the Application Name. Up to 256 alphanumeric and/or special characters can be used to define the Application URL. Up to 256 alphanumeric and/or special characters can be used to define the Application ID. Up to 256 alphanumeric and/or special characters can be used to define the Application Key. Up to 256 alphanumeric and/or special characters can be used to define the Canvas Name. Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535
API - Application ID
Finger
L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random)
153
Protocol Parameters
Table 8-13: Protocol Parameters Protocol FIX Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Encoding Type Source Port (0=random) Destination Port (0=random) Application Version ID Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 Tag = Value 0 65,535 0 65,535 Up to 50 alphanumeric and/or special characters can be used to define the ApplVerID field. Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 Tag = Value 0 65,535 0 65,535 Up to 128 alphanumeric and/or special characters can be used to define the begin string. Up to 128 alphanumeric and/or special characters can be used to define the username. Up to 128 alphanumeric and/or special characters can be used to define the password. Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32
FIXT
L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Encoding Type Source Port (0=random) Destination Port (0=random) Begin String
Username
Password
FTP
154
Protocol Parameters
Table 8-13: Protocol Parameters Protocol Protocol Parameters Server Profile Server Name Valid Values Internet Information Services 5.0, Pure FTPd, or Custom Up to 128 alphanumeric and/or special characters can be used to define the custom Server Profile. This field is enabled only if Server Profile is set to Custom. Passive Mode (PASV) The FTP server opens a random port, sends the FTP's server's IP address and port number (broken into bytes) to the FTP client, and waits for a connection from the FTP client. The FTP client will bind to the source port to a random port that is greater than 1023. Extended Passive Mode (EPSV) Same as passive mode (PSV), except that it transmits the port number (not broken into bytes), and the client connects to the same IP addresses it was originally connected to. Active Mode (PORT) The FTP client opens a random port (> 1023), sends the FTP server the random port number on which it is listening on, and waits for a connection from the FTP server. The FTP server will bind the source port to port 20 once it initiates a connection to the FTP client. Extended Active Mode (EPRT) Same as active mode, except it allows for the specification of an extended address. The extended address should define the network protocol and the network and transport addresses.
155
Protocol Parameters
Table 8-13: Protocol Parameters Protocol Protocol Parameters Source Port (0=random) Server Data Port Destination Port (0=random) Gmail L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) User Agent 0 65,535 0 65,535 0 65,535 Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Up to 128 alphanumeric and/or special characters can be used to define the user agent. Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Up to 128 alphanumeric and/or special characters can be used to define the user agent. Valid Values
GMX Webmail
L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) User Agent
156
Protocol Parameters
Table 8-13: Protocol Parameters Protocol Gnutella 0.6 Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Protocol Version User Agent Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 0 65,535 Up to 128 alphanumeric and/or special characters can be used to define the user agent. Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535
Gnutella-Leaf
L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random)
Gopher
L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random)
157
Protocol Parameters
Table 8-13: Protocol Parameters Protocol GTalk Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535
158
Protocol Parameters
Table 8-13: Protocol Parameters Protocol HTTP Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Client Profile Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 Android, Apple Safari, BlackBerry, Google Chrome, Internet Explorer 6.0, Internet Explorer 7.0, iPhone, Mozilla Firefox 2.0, Opera Mini/ Mobile, Weighted mixes of all European mobile devices, Weighted mixes of all North American mobile devices, Windows Mobile, or BreakingPoint Default Microsoft IIS 5.0, Apache Server 2.0, or BreakingPoint Default HTTP/1.0, HTTP/1.1 Up to 128 alphanumeric and/or special characters can be used to define the custom Server Profile. This field is enabled only if Server Hostname is set to Custom. on or off 0 4,294,967,295
Default is 0
Min length of each random cookie Max length of each random cookie Random cookie value persistence Source Port (0=random) Destination Port (0=random)
159
Protocol Parameters
Table 8-13: Protocol Parameters Protocol HTTPS Simulated Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535
160
Protocol Parameters
Table 8-13: Protocol Parameters Protocol H.225 Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) H.245 Flow ID Media Flow ID Media Control Flow ID Reference Value Caller Username Caller Product ID Caller Version ID Caller Country Code Caller Country Extension Caller Manufacturer Code Callee Product ID Callee Version ID Callee Country Code Callee Country Extension Callee Manufacturer Code Conference ID Call Identifier H.245 Connect Port Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535
161
Protocol Parameters
Table 8-13: Protocol Parameters Protocol H.225 RAS Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Call Signal Flow ID Gatekeeper Identifier Conference Identifier Endpoint T.35 Country Code Endpoint T.35 Manufacturer Code Endpoint Product Indentifier Endpoint Product Version Endpoint Identifier H323 Identifier Call Identifier Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535
162
Protocol Parameters
Table 8-13: Protocol Parameters Protocol H.245 Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Media Flow ID Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 H.225 RAS:4, H.225:3, H.245:5, H.248:6, Hotmail Attachment:8, Hotmail:7, HTTP:1, HTTPS Simulated:2, IAX2:9, IDENT:10, IEC104:11, IMAPv4-Advanced:12, Informix:13, IPMI:14, IPP:15, or IRC:16 H.225 RAS:4, H.225:3, H.245:5, H.248:6, Hotmail Attachment:8, Hotmail:7, HTTP:1, HTTPS Simulated:2, IAX2:9, IDENT:10, IEC104:11, IMAPv4-Advanced:12, Informix:13, IPMI:14, IPP:15, or IRC:16 Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 H.225 RAS:4, H.225:3, H.245:5, H.248:6, Hotmail Attachment:8, Hotmail:7, HTTP:1, HTTPS Simulated:2, IAX2:9, IDENT:10, IEC104:11, IMAPv4-Advanced:12, Informix:13, IPMI:14, IPP:15, or IRC:16
H.248
L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Audio Flow ID
163
Protocol Parameters
Table 8-13: Protocol Parameters Protocol Hotmail Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) User Agent Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Up to 128 alphanumeric and/or special characters can be used to define the user agent. Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 UDP or TCP
IAX2
L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random)
IDENT
L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random)
IEC104
L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Transport Protocol
164
Protocol Parameters
Table 8-13: Protocol Parameters Protocol IMAPv4Advanced Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Server Name Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Up to 256 alphanumeric and/or special characters can be used to define the IMAP server name. Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Up to 128 alphanumeric and/or special characters can be used to define the database name. Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535
Informix
L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Database Name
IPMI
L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random)
165
Protocol Parameters
Table 8-13: Protocol Parameters Protocol IPP Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) IRC L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Local User Nickname Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Up to 8 alphanumeric and/or special characters can be used to define the local users nickname. Up to 8 alphanumeric and/or special characters can be used to define the local users name. Up to 128 alphanumeric and/or special characters can be used to define the clients host name. Up to 128 alphanumeric and/or special characters can be used to define the IRC node name. Up to 128 alphanumeric and/or special characters can be used to define the IRC central node name.
Local Username
166
Protocol Parameters
Table 8-13: Protocol Parameters Protocol ITCH Protocol Parameters L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Transport Protocol Jabber L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) LDAP L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Transport Protocol (Deprecated) Source Port (0=random) Destination Port (0=random) LDP L4 Transport SCTP Tunneling Port (0=default) SCTP Checksum Type Source Port (0=random) Destination Port (0=random) Valid Values Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 moldUDP or moldUDP64 Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535 Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 UDP or TCP 0 65,535 0 65,535 Default, SCTP, SCTP over UDP, TCP, or UDP 0 65,535 ADLER32 or CRC32 0 65,535 0 65,535
167
Protocol Parameters
Table 8-13: Protocol Parameters Protocol MSN-Dispatch Protocol Parameters Client Port Server Port MSN-Nexus Client Port Server Port MSNNotification MSN-Passport Client Port Server Port Client Port Server Port MSNSwitchboard Client Port Server Port User Name 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 Up to 32 alphanumeric and/or special characters can be used to define the user name. Up to 256 alphanumeric and/or special characters can be used to define the users e-mail address. Up to 32 alphanumeric and/or special characters can be used to define the peers user name. Up to 256 alphanumeric and/or special characters can be used to define the peers e-mail address. 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 Valid Values
Peer Name
MSSQL
Multicast
NetBIOS
NNTP
NTP
168
Protocol Parameters
Table 8-13: Protocol Parameters Protocol Oracle Protocol Parameters Client Port Server Port OWAMP Control OWAMP Test Client Port Server Port Client Port Server Port POP3Advanced PostgreSQL Client Port Server Port Client Port Server Port Quote of the Day L4 Transport 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 Default*, TCP, or UDP
Default allows the protocol helper to automatically select the transport method. For QOTD, default is TCP.
Valid Values
Client Port Server Port Radius Access Client Port Server Port Username
0 65,535 0 65,535 0 65,535 0 65,535 Up to 128 alphanumeric and/or special characters can be used to define the username. x.x.x.x, where x is a value between 0 255 0 256 x.x.x.x, where x is a value between 0 255 x.x.x.x, where x is a value between 0 255
169
Protocol Parameters
Table 8-13: Protocol Parameters Protocol Radius Accounting Protocol Parameters Client Port Server Port Username 0 65,535 0 65,5355 Up to 128 alphanumeric and/or special characters can be used to define the username. x.x.x.x, where x is a value between 0 255 0 256 x.x.x.x, where x is a value between 0 255 x.x.x.x, where x is a value between 0 255 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 100 60,000 0 65,535 0 65,535 Default, TCP, or UDP 0 65,535 0 65,535 Up to 256 alphanumeric and/or special characters can be used to define the version used by RTSP. Valid Values
NAS IP Address NAS Port Framed IP Address Framed Netmask Rlogin Client Port Server Port RPC Bind (Portmap) RPC Mount Client Port Server Port Client Port Server Port RPC NFS Client Port Server Port Rsync Client Port Server Port RTP Stream duration in ms Caller RTP Port Recipient RTP Port RTSP L4 Transport Client Port Server Port Version
170
Protocol Parameters
Table 8-13: Protocol Parameters Protocol SIP Protocol Parameters IP Protocol for SIP Traffic Client User Agent Valid Values UDP or TCP Up to 128 alphanumeric and/or special characters can be used to define the user agent for the client. Up to 128 alphanumeric and/or special characters can be used to define the callers name. String value consisting of up to 32 integers can be used to define the callers phone number. 0 65,535 Up to 128 alphanumeric and/or special characters can be used to define the recipients name. String value consisting of up to 32 integers can be used to define the recipients phone number. 0 65,535 Up to 128 alphanumeric and/or special characters can be used to define the user agent for the recipient.
Caller Name
171
Protocol Parameters
Table 8-13: Protocol Parameters Protocol SMB Protocol Parameters Client Port Client Name 0 65,535 Up to 128 alphanumeric and/or special characters can be used to define the clients name. Up to 128 alphanumeric and/or special characters can be used to define the clients native LM. Up to 128 alphanumeric and/or special characters can be used to define the clients native OS. 0 65,535 Up to 128 alphanumeric and/or special characters can be used to define the servers name. Up to 128 alphanumeric and/or special characters can be used to define the servers domain name. Up to 128 alphanumeric and/or special characters can be used to define the servers GUID. Up to 128 alphanumeric and/or special characters can be used to define the username. Up to 128 alphanumeric and/or special characters can be used to define the password. Valid Values
Client Native LM
Client Native OS
Server Domain
Server GUID
Username
Password
172
Protocol Parameters
Table 8-13: Protocol Parameters Protocol SMTP Protocol Parameters Client Profile Valid Values Internet Explorer 6.0, Internet Explorer 7.0, Mozilla Firefox 2.0, or Custom Up to 128 alphanumeric and/or special characters can be used to define the custom Client Profile. This field is enabled only if Client Profile is set to Custom. Microsoft IIS 5.0, Apache Server 2.0, or Custom Up to 128 alphanumeric and/or special characters can be used to define the custom Server Profile. This field is enabled only if Server Hostname is set to Custom. 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 Up to 128 alphanumeric and/or special characters can be used to define the logical server name. This is the name of the Sybase server. Up to 128 alphanumeric and/or special characters can be used to define the database name. This is the server name in which the authentication occur against.
Client Agent
Client Port Server Port SNMPv1 Client Port Server Port SSH Client Port Server Port Sun RPC Client Port Server Port Sybase Client Port Server Port Logical Server Name
Database Name
173
Protocol Parameters
Table 8-13: Protocol Parameters Protocol Syslog Protocol Parameters Client Port Server Port Hostname 0 65,535 0 65,535 Up to 50 alphanumeric and/or special characters can be used to define the host name. 0 65,535 0 65,535 UDP or TCP 0 65,535 0 65,535 UDP or TCP 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 0 65,535 Up to 256 alphanumeric and/or special characters can be used to define the users login ID or username for their Twitter account. Up to 256 alphanumeric and/or special characters can be used to define the password for the users Twitter account. 0 65,535 0 65,535 Valid Values
Telnet
Time
TFTP
TWAMP Control
TWAMP Test
Twitter Username
Twitter Password
World of Warcraft
174
Table 8-13: Protocol Parameters Protocol YIM (Yahoo Instant Messenger) Protocol Parameters Client Port Server Port Local Username 0 65,535 0 65,535 Up to 32 alphanumeric and/or special characters can be used to define the users login ID or username. Up to 32 alphanumeric and/or special characters can be used to define the users password. Valid Values
Password
Transaction Flags
Most actions have an action parameter called Transaction Flag that enables you to set the first action to Start and the last action to End. All actions that neither denote the start nor end should have the Transaction Flag set to Continue. The application flow begins when the first Start Transaction packet is sent and ends when the End Transaction packet is sent; the period between when these two flags are sent comprise the applications response time.
175
To create a Goto Action Request: 1. Select Managers > Application Manager from the Menu bar. 2. Select the Super Flows tab. 3. Select an existing Super Flow or create a new Super Flow. Note: Only Super Flows based on the HTTP and SMTP protocols currently provide full support for Goto Action Requests. 4. Select a flow from the Step 2 - Define Flows area. 5. Select a flow from the Step 3 - Define Flows area. 6. Click the Action drop-down button, located in the Create a New Action area. 7. Select Client: Goto. 8. Click the Add Action button. 9. Click the Edit the selected action parameters button. Note: A new window will pop-up, enabling you to select the action you want to loop.
n
Click the Transaction Flag check box. Select Start to set the first action to start, or select End to set the last action to end. (optional)
10. Select the action you want to loop from the Goto Action drop-down button. 11. Enter the number of times you want the selected action to loop in the Iterations field. Note: Valid entries for the Iterations field include values ranging from 0 through 1,000,000,000. However, entering a value of zero (0) will result in an infinite loop. BreakingPoint recommends entering values between 1 and 1,000,000,000. 12. Click the Apply Changes button. 13. Click the Save Super Flow button when done.
176
If you do not upload a file for the system to use, then the system will generate random data for the application payload portion of the flow.
07
Start, Continue, End, or Start and End Start, Continue, End, or Start and End 0 1000 Start, Continue, End, or Start and End True or False True or False Start, Continue, End, or Start and End IP address or token 0 65,535 IP address or token 0 65,535 IP address or token 0 65,535
177
Table 8-14: AIM Action Parameters Action Client: Join Chat Client: Chat Description Join a chat session with other peers. This command simulates an AIM conversation between a user and a peer. Action Parameter Transaction Flag Transaction Flag Peer Messages The number of messages the peer will generate during the session. User Messages The number of messages the user will generate during the session. Client: IM: Accept File Transfer Client: Receive File This command signals the acceptance of a file transfer from a peer to the user. Receive a file from a peer. In normal usage, an "Accept File Transfer" action from the AIM6-Switchboard AppSim should precede this action. Transaction Flag Valid Values Start, Continue, End, or Start and End Start, Continue, End, or Start and End 0 Random
0 Random
Transaction Flag Client Username File Name File Minsize File Maxsize File Data
Start, Continue, End, or Start and End String Any available file 0 52,428,800 0 52,428,800 String up to 128 bytes Start, Continue, End, or Start and End
This command signals the initialization a file transfer from the user to a peer. Send a file to a peer.
Transaction Flag
Transaction Flag Client Username File Name File Minsize File Maxsize File Data
Start, Continue, End, or Start and End String up to 16 bytes String up to 63 bytes 0 52,428,800 0 52,428,800 String up to 128 bytes
178
07
179
Table 8-15: AOL Action Parameters Action Client: Send Message Description Send an e-mail message via AOL Web Mail. Action Parameter Transaction Flag From Address To Addresses CC Addresses BCC Addresses Subject Static Message Text File Static Message Text Language Valid Values Start, Continue, End, or Start and End String up to 128 bytes String up to 128 bytes String up to 128 bytes String up to 128 bytes String up to 128 bytes Any available file String up to 4096 bytes Custom, English, French, German, Italian, Spanish Any available file 0 8192 0 8192 String up to 4096 bytes String String Positive integer Positive integer Positive integer Positive integer String up to 128 bytes
Custom Dictionary Message Wordcount Min Message Wordcount Max Keyword List Attachment Filename Static Attachment Number of random attachments Random Attachment File Size Random Attachment Size Min Random Attachment Size Max Attachment MIME Type
180
Table 8-15: AOL Action Parameters Action Client: Open Message Description This action will simulate a client loading a message via the Web interface. Action Parameter Transaction Flag From Address To Addresses CC Addresses BCC Addresses Subject Static Message Text File Static Message Text Language Valid Values Start, Continue, End, or Start and End String up to 128 bytes String up to 128 bytes String up to 128 bytes String up to 128 bytes String up to 128 bytes Any available file String up to 4096 bytes Custom, English, French, German, Italian, Spanish Any available file 0 8192 0 8192 String up to 4096 bytes String String Positive integer Positive integer Positive integer Positive integer String up to 128 bytes
Custom Dictionary Message Wordcount Min Message Wordcount Max Keyword List Attachment Filename Static Attachment Random Attachment File Size Number of random attachments Random Attachment Size Min Random Attachment Size Max Attachment MIME Type
181
Table 8-15: AOL Action Parameters Action Client: Open Attachment Description This action will simulate a client loading an attachment via the Web interface. Action Parameter Transaction Flag Attachment Filename Static Attachment Random Attachment File Size Random Attachment Size Min Random Attachment Size Max Attachment MIME Type Valid Values Start, Continue, End, or Start and End String String Positive integer Positive integer Positive integer String up to 128 bytes
07
182
Table 8-16: AppleJuice Action Parameters Action Server: Server Setup Flow Client: Client/ Server Messages Flow Description Simulation of a Server Accepting a Client Setup action. Simulation of a conversation between Client and Server. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Transaction Flag
183
Enabled Min Version Max Version 1st Cipher 2nd Cipher 3rd Cipher 4th Cipher 5th Cipher Resume Max Reuse Resume Expire (seconds) Handshake Timeout (milliseconds) Client Authentication Enabled Server Certificate
true or false SSLv3 or TLSv1 SSLv3 or TLSv1 An available ciphersuite An available ciphersuite An available ciphersuite An available ciphersuite An available ciphersuite 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295 true or false A file in PEM format containing the server's certificate. A file in PEM format containing the server's private key. The client's common name (CN) as it appears in the client's certificate.
184
Client CA Certificate
A file in PEM format containing the certificate of the Certificate Authority (a.k.a., the CA Cert) used to sign the client's certificate. Allow Untrusted Cert Do Not Check Cert Require Trusted Cert
Decryption Mode
Auto Decrypt Discard/Count Discard/No Count true or false SSLv3 or TLSv1 SSLv3 or TLSv1 An available ciphersuite An available ciphersuite An available ciphersuite An available ciphersuite An available ciphersuite 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295
Enabled Min Version Max Version 1st Cipher 2nd Cipher 3rd Cipher 4th Cipher 5th Cipher Resume Max Reuse Resume Expire (seconds) Handshake Timeout (milliseconds)
185
true or false A file in PEM format containing the client's certificate. A file in PEM format containing the client's private key. The server's common name (CN) as it appears in the server's certificate. A file in PEM format containing the certificate of the Certificate Authority (a.k.a., the CA Cert) used to sign the server's certificate. Allow Untrusted Cert Do Not Check Cert Require Trusted Cert
Server CA Cert
Decryption Mode
Auto Decrypt Discard/Count Discard/No Count true or false true or false true or false
Client: TLS Close Notify Server: TLS Close Notify Client: TLS Discard Encrypted Data
Send a TLS Close Notify alert. Send a TLS Close Notify alert. Allows encrypted data received on this flow to be discarded before decrypting it.
186
Updates bulk decryption statistics if set to true. Pause for a specified amount of time.
true or false
Start, Continue, End, or Start and End 1 1,000,000 1 1,000,000 Start, Continue, End, or Start and End 1 1,000,000 1 1,000,000 Start, Continue, End, or Start and End Enter the string to be used. Select a file to import. Start, Continue, End, or Start and End Enter the string to be used. Select a file to import. Start, Continue, End, or Start and End
Server: Delay
Defines the specific responses you expect to see from the DUT. Matches responses and checks whether response has the pattern in the payload.
187
Select to wait for a response that matches the selected pattern. The pattern you want to match against. Select to match a simple string pattern. Select to match a regular expression pattern. Delay, Raw Message, Update Dest Address, Update Dest Port, Update Receive Window, Verify File, Goto, Close, Fail, Log as Target, Add Flow Dictionary, Add Markov Flow Dictionary, Generate Characters Client or Server 09
Available Action
Updates the destination address in subsequent flows with the value from a previous PCRE match. Updates the destination port of a flow with the value from a previous PCRE match. Updates the receive window with the specified value.
188
Defines the specific responses you expect to see from the DUT. Matches responses and checks whether response has the pattern in the payload.
Start, Continue, End, or Start and End Select to wait for a response that matches the selected pattern. The pattern you want to match against. Select to match a simple string pattern. Select to match a regular expression pattern. Delay, Raw Message, Update Dest Address, Update Dest Port, Update Receive Window, Verify File, Goto, Close, Fail, Log as Target, Add Flow Dictionary, Add Markov Flow Dictionary, Generate Characters Start, Continue, End, or Start and End Available file Available Actions
Available Action
Verifies data coming from the server with a specified resource file. Causes the flow to go to another action
Transaction Flag, Available Actions File to verify Transaction Flag Goto Action Iterations
Client: Goto
Client: Close
Close the connection on the TCP transport level. Close the connection on the TCP transport level.
Transaction Flag, Available Actions FIN or RST Transaction Flag FIN or RST
Start, Continue, End, or Start and End FIN or RST Start, Continue, End, or Start and End FIN or RST
Server: Close
189
N/A N/A For Lawful Intercept tests, this action is used to generate a target Super Flow that does not contain a needle. Including this action results in a Lawful Intercept test logging the presence of the Super Flow as if it contained a needle. Provides the ability to add a dictionary to the flow.
Provides the ability to add a dictionary of Markov text bodies to the flow.
Dictionary ID Quantity Markov Minimum Word Count Markov Maximum Word Count Markov Text Length Markov Keywords Markov Language English French Italian German Spanish Japanese
Markov Database
190
Client: OPEN
Simulates the BGP OPEN message. After a TCP connection is established, the first message sent by each side is an OPEN message.
Transaction Flag My Autonomous System Hold Time BGP Indentifier Multiprotocol Capability
Start, Continue, End, or Start and End 0 1,024 1 65,535 0 1,024 IPv4 Unicast IPv6 Unicast Start, Continue, End, or Start and End 0 1,024 1 65,535 0 1,024 IPv4 Unicast IPv6 Unicast Start, Continue, End, or Start and End
Server: OPEN
Simulates the BGP OPEN message. After a TCP connection is established, the first message sent by each side is an OPEN message.
Transaction Flag My Autonomous System Hold Time BGP Indentifier Multiprotocol Capability
Client: UPDATE
Simulates the BGP UPDATE message. UPDATE messages are used to transfer routing information between BGP peers.
Transaction Flag
Withdrawn Routes Type Withdrawn Routes Minimum Number of Random Withdrawn Routes Maximum Number of Random Withdrawn Routes ORIGIN
1 400
191
AS_PATH Type AS_PATH NEXT_HOP MULTI_EXIT_DISC LOCAL_PREF ATOMIC_AGGREGA TE AGGREGATOR IP AGGREGATOR AS Include MP_REACH_NLRI MP_REACH_NLRI Address Family MP_REACH_NLRI Next Hop Use NLRI in MP_REACH_NLRI Include MP_UNREACH_NLR I MP_UNREACH_NLR I Address Family Use Withdrawn Routes in MP_UNREACH_NLR I Network Layer Reachability Info Type Network Layer Reachability Info Minimum Number of Random NLRI Prefixes
AS_SET AS_SEQUENCE Valid IP addresses Valid IP addresses 1 4,294,967,295 1 4,294,967,295 true or false Valid IP addresses 1 65,535 true or false IPv4 IPv6 Valid IP addresses true or false true or false
192
Maximum Number of Random NLRI Prefixes Server: UPDATE Simulates the BGP UPDATE message. UPDATE messages are used to transfer routing information between BGP peers. Transaction Flag Withdrawn Routes Type Withdrawn Routes Minimum Number of Random Withdrawn Routes Maximum Number of Random Withdrawn Routes ORIGIN
1 400
Start, Continue, End, or Start and End None Manual Random Valid IP addresses 1 400
1 400
EGP IGP INCOMPLETE AS_SET AS_SEQUENCE Valid IP addresses Valid IP addresses 1 4,294,967,295 1 4,294,967,295 true or false Valid IP addresses 1 65,535 true or false IPv4 IPv6 Valid IP addresses
AS_PATH Type AS_PATH NEXT_HOP MULTI_EXIT_DISC LOCAL_PREF ATOMIC_AGGREGA TE AGGREGATOR IP AGGREGATOR AS Include MP_REACH_NLRI MP_REACH_NLRI Address Family MP_REACH_NLRI Next Hop
193
Use NLRI in MP_REACH_NLRI Include MP_UNREACH_NLR I MP_UNREACH_NLR I Address Family Use Withdrawn Routes in MP_UNREACH_NLR I Network Layer Reachability Info Type Network Layer Reachability Info Minimum Number of Random NLRI Prefixes Client: NOTIFICATI ON Simulates the BGP NOTIFICATION message. The error subcodes are divided into groups by error code. Transaction Flag Error Code
Start, Continue, End, or Start and End Cease Finite State Machine Error Hold Timer Expired Message Header Error OPEN Message Error
194
Bad BGP Indentifier Bad Peer AS Deprecated Unacceptable Hold Time Unsupported Optional Parameter Unsupported Version Number
Attribute Flags Error Attribute Length Error Deprecated Invalid Network Field Invalid NEXT-HOP Attribute Invalid ORIGIN Attribute Malformed AS_PATH Malformed Attribute List Missing Well-Known Attribute Optional Attribute Error Unrecognized WellKnown Attribute
195
Server: NOTIFICATI ON
Simulates the BGP NOTIFICATION message. The error subcodes are divided into groups by error code.
Start, Continue, End, or Start and End Cease Finite State Machine Error Hold Timer Expired Message Header Error OPEN Message Error
Bad BGP Indentifier Bad Peer AS Deprecated Unacceptable Hold Time Unsupported Optional Parameter Unsupported Version Number
196
Attribute Flags Error Attribute Length Error Deprecated Invalid Network Field Invalid NEXT-HOP Attribute Invalid ORIGIN Attribute Malformed AS_PATH Malformed Attribute List Missing Well-Known Attribute Optional Attribute Error Unrecognized WellKnown Attribute
Simulates the BGP KEEPALIVE message. Simulates the BGP KEEPALIVE message.
Transaction Flag
Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Transaction Flag
197
If you use the Client: Download File action, you must dedicate an entire Super Flow to it. No other actions can be contained within the Super Flow besides the Client: Download File action. Table 8-18: BitTorrent Action Parameters Action Client: Download Chunk Description Downloads single chunk from a peer. Action Parameter Chunk size (bytes) Response Data File Valid Values 1 1,048,576 Use the Import Specify Chunk Data link to upload the chunk data for which the client will download, and then select the filename from the Specify Chunk Data dropdown menu. 1 4,194,304 1 4,194,304 1 4,194,304 Use the Import Specify File Data link to upload the file data for which the client will download, and then select the filename from the Specify File Data dropdown menu.
Chunk Size (bytes) Random File Min Size (bytes) Random File Max Size (bytes) Specify File Data
198
Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Transaction Flag
Server: Delay
Delays the servers response for the amount of time specified for Number of milliseconds
Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Transaction Flag
Sends a file or string directly without any modification. If both are specified, the file is concatenated to the string.
Start, Continue, End, or Start and End Enter the string to be used. Select a file to import.
String Filename
199
Table 8-20: Chargen Action Parameters Action Server: Raw Message Description Sends a file or string directly without any modification. If both are specified, the file is concatenated to the string. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Enter the string to be used. Select a file to import. Start, Continue, End, or Start and End Select to wait for a response that matches the selected pattern. The pattern you want to match against. Select to match a simple string pattern. Select to match a regular expression pattern. Delay, Raw Message, Update Dest Address, Update Dest Port, Update Receive Window, Verify File, Goto, Close, Fail, Log as Target, Add Flow Dictionary, Add Markov Flow Dictionary, Generate Characters Client or Server 09
String Filename
Defines the specific responses you expect to see from the DUT. Matches responses and checks whether response has the pattern in the payload.
Match
Simple String
Regex
Available Action
Updates the destination address in subsequent flows with the value from a previous PCRE match.
200
Table 8-20: Chargen Action Parameters Action Client: Update Dest Port Description Updates the destination port of a flow with the value from a previous PCRE match. Updates the receive window with the specified value. Defines the specific responses you expect to see from the DUT. Matches responses and checks whether response has the pattern in the payload. Action Parameter Flow ID Match Variable (09) Receive Window Size (bytes) Transaction Flag, Available Actions Wait for Success Start, Continue, End, or Start and End Select to wait for a response that matches the selected pattern. The pattern you want to match against. Select to match a simple string pattern. Select to match a regular expression pattern. Delay, Raw Message, Update Dest Address, Update Dest Port, Update Receive Window, Verify File, Goto, Close, Fail, Log as Target, Add Flow Dictionary, Add Markov Flow Dictionary, Generate Characters Valid Values The ID of the flow to update. 09
Match
Simple String
Regex
Available Action
201
Table 8-20: Chargen Action Parameters Action Client: Verify File Description Verifies data coming from the server with a specified resource file Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Resource file to be used. Available Actions
File to verify Client: Goto Causes the flow to go to another action Transaction Flag Goto Action Iterations Client: Close Close the connection on the TCP transport level. Transaction Flag
Start, Continue, End, or Start and End FIN or RST Start, Continue, End, or Start and End FIN or RST N/A N/A Start, Continue, End, or Start and End
FIN or RST Server: Close Close the connection on the TCP transport level. Transaction Flag
FIN or RST Client: Fail Server: Fail Client: Log as Target N/A N/A For Lawful Intercept tests, this action is used to generate a target Super Flow that does not contain a needle. Including this action results in a Lawful Intercept test logging the presence of the Super Flow as if it contained a needle. Provides the ability to add a dictionary to the flow. N/A N/A Transaction Flag
202
Table 8-20: Chargen Action Parameters Action Client: Add Markov Flow Dictionary Description Provides the ability to add a dictionary of Markov text bodies to the flow. Action Parameter Dictionary ID Quantity Markov Minimum Word Count Markov Maximum Word Count Markov Text Length Markov Keywords Markov Language English French Italian German Spanish Japanese Valid Values
Markov Database Server: Generate Characters Sets the number of bytes to transmit per session and the seed value. The Seed Value sets the starting character of the chargen pattern; if the seed is set to any integer other than 0, the same byte pattern will be used each time the flow is used. Tx Bytes Seed Value 0 65,532 0 999
203
true or false
A file in PEM format containing the server's certificate. A file in PEM format containing the server's private key. The client's common name (CN) as it appears in the client's certificate.
204
Table 8-21: Citrix Action Parameters Action Description Action Parameters Client CA Certificate Valid Values A file in PEM format containing the certificate of the Certificate Authority (a.k.a., the CA Cert) used to sign the client's certificate. Allow Untrusted Cert Do Not Check Cert Require Trusted Cert Decryption Mode Auto Decrypt Discard/Count Discard/No Count true or false SSLv3 or TLSv1 SSLv3 or TLSv1 An available ciphersuite An available ciphersuite An available ciphersuite An available ciphersuite An available ciphersuite 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295
Enabled Min Version Max Version 1st Cipher 2nd Cipher 3rd Cipher 4th Cipher 5th Cipher Resume Max Reuse Resume Expire (seconds) Handshake Timeout (milliseconds)
205
Table 8-21: Citrix Action Parameters Action Description Action Parameters Client Authentication Enabled Client Certificate Valid Values true or false
A file in PEM format containing the client's certificate. A file in PEM format containing the client's private key. The server's common name (CN) as it appears in the server's certificate. A file in PEM format containing the certificate of the Certificate Authority (a.k.a., the CA Cert) used to sign the server's certificate. Allow Untrusted Cert Do Not Check Cert Require Trusted Cert
Server CA Cert
Decryption Mode
Auto Decrypt Discard/Count Discard/No Count true or false true or false true or false
Client: TLS Close Notify Server: TLS Close Notify Client: TLS Discard Encrypted Data
Send a TLS Close Notify alert. Send a TLS Close Notify alert. Allows encrypted data received on this flow to be discarded before decrypting it.
206
Table 8-21: Citrix Action Parameters Action Server: TLS Discard Encrypted Data Client: Delay Description Updates bulk decryption statistics if set to true. Pause for a specified amount of time. Action Parameters Count Discarded Data Valid Values true or false
Start, Continue, End, or Start and End 1 1,000,000 1 1,000,000 Start, Continue, End, or Start and End 1 1,000,000 1 1,000,000 Start, Continue, End, or Start and End Enter the string to be used. Select a file to import. Start, Continue, End, or Start and End Enter the string to be used. Select a file to import. Start, Continue, End, or Start and End
Server: Delay
Defines the specific responses you expect to see from the DUT. Matches responses and checks whether response has the pattern in the payload.
207
Table 8-21: Citrix Action Parameters Action Description Action Parameters Wait for Success Valid Values Select to wait for a response that matches the selected pattern. The pattern you want to match against. Select to match a simple string pattern. Select to match a regular expression pattern. Delay, Raw Message, Update Dest Address, Update Dest Port, Update Receive Window, Verify File, Goto, Close, Fail, Log as Target, Add Flow Dictionary, Add Markov Flow Dictionary, Generate Characters Client or Server 09
Match
Available Action
Updates the destination address in subsequent flows with the value from a previous PCRE match. Updates the destination port of a flow with the value from a previous PCRE match. Updates the receive window with the specified value.
Destination Host Match Variable (09) Flow ID Match Variable (09) Receive Window Size (bytes)
208
Table 8-21: Citrix Action Parameters Action Server: Conditional Request Description Defines the specific responses you expect to see from the DUT. Matches responses and checks whether response has the pattern in the payload. Action Parameters Transaction Flag, Available Actions Wait for Success Valid Values Start, Continue, End, or Start and End Select to wait for a response that matches the selected pattern. The pattern you want to match against. Select to match a simple string pattern. Select to match a regular expression pattern. Delay, Raw Message, Update Dest Address, Update Dest Port, Update Receive Window, Verify File, Goto, Close, Fail, Log as Target, Add Flow Dictionary, Add Markov Flow Dictionary, Generate Characters Start, Continue, End, or Start and End Available file Available Actions
Match
Available Action
Verifies data coming from the server with a specified resource file. Causes the flow to go to another action
Transaction Flag, Available Actions File to verify Transaction Flag Goto Action Iterations
Client: Goto
Client: Close
Close the connection on the TCP transport level. Close the connection on the TCP transport level.
Transaction Flag, Available Actions FIN or RST Transaction Flag FIN or RST
Start, Continue, End, or Start and End FIN or RST Start, Continue, End, or Start and End FIN or RST
Server: Close
209
Table 8-21: Citrix Action Parameters Action Client: Fail Server: Fail Client: Log as Target N/A N/A For Lawful Intercept tests, this action is used to generate a target Super Flow that does not contain a needle. Including this action results in a Lawful Intercept test logging the presence of the Super Flow as if it contained a needle. Provides the ability to add a dictionary to the flow. Description Action Parameters N/A N/A Transaction Flag N/A N/A Start, Continue, End, or Start and End Valid Values
Provides the ability to add a dictionary of Markov text bodies to the flow.
Dictionary ID Quantity Markov Minimum Word Count Markov Maximum Word Count Markov Text Length Markov Keywords Markov Language English French Italian German Spanish Japanese
Markov Database
210
Table 8-21: Citrix Action Parameters Action Client: Seamless Application Client: Window Application Server: Disk IO Server: Print Spooler Server: Audio Event Description Simulates a Seamless Application session. Simulates a Window Application session. Simulates a remote disk IO operation. Simulates a remote printing operation. Simulates a remote audio operation. Action Parameters Transaction Flag Valid Values Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Transaction Flag
Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds.
211
Table 8-22: Daytime Action Parameters Action Server: Delay Description Delays the servers response for the amount of time specified for Number of milliseconds Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 1 1,000,000
Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Date/Time
A date and time in the format of YYYY-MM-DD HH:MM:SS; YYYY can be replaced with a value between 1970 and 2035.
212
Number of Milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Transaction Flag
Server Delay
Delays the servers response for the amount of time specified for Number of milliseconds
Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds.
213
Table 8-23: DB2 Action Parameters Action Client: Login Description Simulates a login to the DB2 database. Action Parameter Database Username Valid Values Up to 255 alphanumeric and/ or special characters can be used to define the database username. Up to 255 alphanumeric and/ or special characters can be used to define the database password. Up to 255 alphanumeric and/ or special characters can be used to define the login username for the client. Up to 255 alphanumeric and/ or special characters can be used to define the host name for the database.
Database Password
Client: Login
Database Hostname
214
Table 8-23: DB2 Action Parameters Action Client: SQL Query Description Simulates an SQL query and response. The values entered for Columns and Rows will determine the number of columns and rows the query will return. If Column Names are specified, then they need to be entered as commadelimited values. Action Parameter SQL Query Valid Values Alphanumeric and/ or special characters can be used to define the SQL query. 0 4,294,967,295 0 4,294,967,295 Alphanumeric and/ or special characters can be used to define the names of the columns from which data will be returned. The information listed here must be comma-delimited format.
Number of Milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds.
215
Table 8-24: DCE RPC Action Parameters Action Server: Delay Description Delays the servers response for the amount of time specified for Number of milliseconds Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 1 1,000,000
Number of Milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Transaction Flag
Client: Request
Performs a Remote Procedure Call request from the client. The Client:Request action utilizes the corresponding action parameters to populate the standard RPC protocol client request.
Start, Continue, End, or Start and End 0 4,294,967,295 0 65,535 0 65,535 0 65,535 Use alphanumeric and/or special characters to define the message payload.
216
Table 8-24: DCE RPC Action Parameters Action Server: Response Description Performs a Remote Procedure Call response from the server. The Server:Response action utilizes the corresponding action parameters to populate the standard RPC protocol server response. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 4,294,967,295 0 65,535 0 65,535 0 255 Use alphanumeric and/or special characters to define the message payload. Start, Continue, End, or Start and End 0 4,294,967,295 0 65,535 0 65,535 0 255 0 4,294,967,295
Server: Fault
Transaction Flag
217
Table 8-24: DCE RPC Action Parameters Action Client: Bind Description Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 4,294,967,295 0 65,535
Call ID Maximum Transmitted Fragments Maximum Received Fragments Assoc Group Context ID Num Trans Items Interface
0 65,535
0 65,535 0 65,535 0 255 Use alphanumeric and/or special characters to define the interface UUID. 0 255 0 255 Use alphanumeric and/or special characters to define the syntax UUID. Use alphanumeric and/or special characters to define the syntax version.
Syntax Version
218
Table 8-24: DCE RPC Action Parameters Action Server: Bind ACK Description Creates the Remote Procedure Call bind acknowledgement. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 4,294,967,295 0 65,535
Call ID Maximum Transmitted Fragments Maximum Received Fragments Assoc Group Secondary Address Acceptance Syntax
0 65,535
0 65,535
Use alphanumeric and/or special characters to define the syntax UUID. Use alphanumeric and/or special characters to define the syntax version.
Syntax Version
219
Table 8-24: DCE RPC Action Parameters Action Client: Auth3 Description Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 4,294,967,295 Use alphanumeric and/or special characters can be used to define the domain name. Use alphanumeric and/or special characters can be used to define the user name. Use alphanumeric and/or special characters can be used to define the host name. N/A
User Name
Host Name
None
220
Number of Milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Transaction Flag
Server: Delay
Delays the servers response for the amount of time specified for Number of milliseconds
Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Transaction Flag
Start, Continue, End, or Start and End Resource file stored on the BPS box
Filename
221
Table 8-26: DNS Action Parameters Action Server: Raw Message Description Reads the contents of a file then sends the file Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Resource file stored on the BPS box Start, Continue, End, or Start and End Select to wait for a response that matches the selected pattern. The pattern you want to match against. Select to match a simple string pattern. Select to match a regular expression pattern. Select to match a predefined pattern. Delay, Raw Message, Verify Rows, Goto, Close, Fail, Login, Login Request, Authenticate, Use Database, Query, Quit Available Actions
Filename Client: Conditional Request Defines the specific responses you expect to see from the DUT. Matches responses and checks whether response has the pattern in the payload. Transaction Flag, Available Actions Wait for Success
Match
Simple String
Regex
Client: Goto
Client: Query
222
Table 8-26: DNS Action Parameters Action Description Action Parameter Query Type Valid Values A or PTR
Client: Resolve
Server: Resolve
Causes the flow to fail Causes the flow to fail Responds with the IP address for the host. Transaction Flag Start, Continue, End, or Start and End 0 4,294,967,295 Any host A or PTR 0 4,294,967,295
*default - 86,400
0 1,000
223
Transaction Flag
Transaction Flag
The server sends the signin page. Sends the username and password to the authentication server via TLS.
Transaction Flag
Transaction Flag
User ID Password
Transaction Flag
224
Table 8-27: Ebay Action Parameters Action Client: Client Search Description Client sends a search term, and/or a category. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End N/A Any available category Start, Continue, End, or Start and End
Query Search Category Server: Search Results The server response to a user search request. Returns a random number of results between 1 and 50. Client request for an item listing. The server response to a user request for a specific item listing. Client request for the My eBay page. The server response to a user request for the My eBay page. Client request to log out of the eBay service. The server response to a user request to log off. Transaction Flag
Client: View Item Server: Send Item Listing Client: My eBay Server: Send My eBay Client: Client Signout Server: Signout Confirmation
Transaction Flag
Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Transaction Flag
Transaction Flag
Transaction Flag
Transaction Flag
Transaction Flag
225
226
Transaction Flag
Transaction Flag
Password
Server: Facebook Authentication Success Client: Facebook News Feed Page Server: Facebook News Feed Page
Server response for authentication. Client request for news feed. Server response with news feed.
Transaction Flag
Transaction Flag
Transaction Flag
227
Table 8-30: Facebook Action Parameters Action Client: Update Status Description Updates the authenticated users status. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Use alphanumeric and/or special characters to define the users status. Start, Continue, End, or Start and End N/A Use alphanumeric and/or special characters to define the message sent from the user to the peer. Start, Continue, End, or Start and End Use alphanumeric and/or special characters to define the users name. N/A Use alphanumeric and/or special characters to define the friends name. N/A Use alphanumeric and/or special characters to define the response sent from the server.
Status
Transaction Flag
Transaction Flag
User Name
228
Table 8-30: Facebook Action Parameters Action Client: Facebook Send Message Description Send a message via Facebook. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End String up to 50 bytes Use alphanumeric and/or special characters to define the subject of the message. Use alphanumeric and/or special characters to define the message sent from the user to the peer. Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Message
Server: Facebook Message Response Client: Facebook Logout Server: Facebook Logout Response
Server response to a user message. Sends logout request. Server response to a user request to logout.
Transaction Flag
Transaction Flag
Transaction Flag
229
Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Transaction Flag
Server: Delay
Delays the servers response for the amount of time specified for Number of milliseconds
Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds.
230
Table 8-31: Finger Action Parameters Action Client: Request Description Sends an empty request to the server, a request that contains a username, or a request that contains a username and the server to which the finger request will be forwarded. Set Send /W to True to generate a random server Sends a response to the client that contains the users information. This information includes the number of users logged into the system (user count) and the contents of the resource file that will be used as the .plan file for the users. Additionally, you can set how the whether the user is valid or invalid by setting User Exists to True or False. If True, then server will return the information for the user; if False, the server will respond with <username>: no such user. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Alphanumeric and/ or special characters can be used to define the username in the request. True or False
Username
Send /W
Server: Response
Transaction Flag
Start, Continue, End, or Start and End 0 4,294,967,295 Alphanumeric and/ or special characters can be used to define the username in the response. Use the Import link to upload the data in which the client will download, and then select the filename from the .plan Resource File drop-down menu. True or False
User Exists
231
Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Transaction Flag
Server: Delay
Delays the servers response for the amount of time specified for Number of milliseconds
Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds.
232
Table 8-32: FIX Action Parameters Action Client: Business Message Reject Message Description Sets up the message that the client sends to the server indicating that it has rejected a message that it had previously received. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 4,294,967,295 Use alphanumeric and/or special characters to provide the message type of the referenced FIX message. 0 4,294,967,295 0 4,294,967,295 Use alphanumeric and/or special characters to provide a reason for rejecting the message.
233
Table 8-32: FIX Action Parameters Action Server: Business Message Reject Message Description Sets up the message that the server sends to the client indicating that it has rejected a message that it had previously received. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 4,294,967,295 Use alphanumeric and/or special characters to provide the message type of the FIX message being referenced. 0 4,294,967,295 0 4,294,967,295 Use alphanumeric and/or special characters to provide a reason for rejecting the message. Start, Continue, End, or Start and End Use alphanumeric and/or special characters to provide the request type of the Network Status Request message. Use alphanumeric and/or special characters to provide the ID string for the Network Status Request message.
Transaction Flag
Network Request ID
234
Table 8-32: FIX Action Parameters Action Server: Network (Counterparty System) Status Request Message Description Requests a Network (counterparty system) Status Response message. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Use alphanumeric and/or special characters to provide the request type of the Network Status Request message. Use alphanumeric and/or special characters to provide the ID string for the Network Status Request message. Start, Continue, End, or Start and End Use alphanumeric and/or special characters to provide the response type of the Network Status Response message. Use alphanumeric and/or special characters to provide the ID string for the Network Status Response message.
Network Request ID
Transaction Flag
Network Response ID
235
Table 8-32: FIX Action Parameters Action Server: Network (Counterparty System) Status Request Message Description Responds to a Network (counterparty system) Status Request message. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Use alphanumeric and/or special characters to provide the response type of the Network Status Response message. Use alphanumeric and/or special characters to provide the ID string for the Network Status Request message to which the server is responding. Use alphanumeric and/or special characters to provide the ID string for the Network Status Response message. Use alphanumeric and/or special characters to provide the ID string for the Last Network Status Response message. This field is used only when the Network Response Type is 2.
Network Request ID
Network Response ID
236
Table 8-32: FIX Action Parameters Action Client: User Request Message Description Requests a User Response message. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Use alphanumeric and/or special characters to provide the Request ID for the User Request message. Use alphanumeric and/or special characters to provide the request type of the User Request message. Use alphanumeric and/or special characters to provide the user name for the User Request message. Use alphanumeric and/or special characters to provide the password for the User Request message. Use alphanumeric and/or special characters to provide a new password for the User Request message. This field is used only if User Request Type is 3.
User Request ID
Username
Password
New Password
237
Table 8-32: FIX Action Parameters Action Server: User Request Message Description Requests a User Response message. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Use alphanumeric and/or special characters to provide the Request ID for the User Request message. Use alphanumeric and/or special characters to provide the request type of the User Request message. Use alphanumeric and/or special characters to provide the user name for the User Request message. Use alphanumeric and/or special characters to provide the password for the User Request message. Use alphanumeric and/or special characters to provide a new password for the User Request message. This field is used only if User Request Type is 3.
User Request ID
Username
Password
New Password
238
Table 8-32: FIX Action Parameters Action Client: User Response Message Description Responds to a user request message. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Use alphanumeric and/or special characters to provide the Request ID of the User Request message to which the client is responding. Use alphanumeric and/or special characters to provide the Username for the User Response message. 0 4,294,967,295 Use alphanumeric and/or special characters to provide the text description associated with the User Status.
User Request ID
Username
239
Table 8-32: FIX Action Parameters Action Server: User Response Message Description Responds to a user request message. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Use alphanumeric and/or special characters to provide the Request ID of the User Request message to which the client is responding. Use alphanumeric and/or special characters to provide the Username for the User Response message. 0 4,294,967,295 Use alphanumeric and/or special characters to provide the text description associated with the User Status.
User Request ID
Username
240
Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Transaction Flag
Server: Delay
Delays the servers response for the amount of time specified for Number of milliseconds
Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds.
241
Table 8-33: FIXT Action Parameters Action Client: Heartbeat Message Description Sends a keep-alive message. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Use alphanumeric and/or special characters to define this field if the heartbeat is sent in response to a Test Request Message. The value input in this field should match the Test Request ID sent in the Test Request Message. Start, Continue, End, or Start and End Use alphanumeric and/or special characters to define this field if the heartbeat is sent in response to a Test Request Message. The value input in this field should the Test Request ID for the Heartbeat Message.
Test Request ID
Transaction Flag
Test Request ID
242
Table 8-33: FIXT Action Parameters Action Client: Test Request Message Description Requests a keepalive response. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Use alphanumeric and/or special characters to define the value that should be echoed in the heartbeat response. The value input in this field should the Test Request ID for the Heartbeat Message. Start, Continue, End, or Start and End Use alphanumeric and/or special characters to define the value that should be echoed in the heartbeat response. The value input in this field should the Test Request ID for the Heartbeat Message.
Test Request ID
Transaction Flag
Test Request ID
243
Table 8-33: FIXT Action Parameters Action Client: Resend Request Message Description Requests a resend of a range of unreceived request messages. Use Begin Sequence Number to set the start of the range and End Sequence Number to denote the end of the range. If the End Sequence Number is set to 0, all messages starting at the Begin Sequence Number to the current message will be sent. Requests a resend of a range of unreceived request messages. Use Begin Sequence Number to set the start of the range and End Sequence Number to denote the end of the range. If the End Sequence Number is set to 0, all messages starting at the Begin Sequence Number to the current message will be sent. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 4,294,967,295 0 4,294,967,295
Transaction Flag
244
Table 8-33: FIXT Action Parameters Action Client: Reject (session-level) Message Description Sends a failure message to the server. If the Referenced Sequence Number field is not set, the system will use the last message sent by the peer. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 4,294,967,295
Referenced Sequence Number (of the rejected message) Reference Tag ID (of the referenced FIX field) Referenced Message Type
0 4,294,967,295
Use alphanumeric and/or special characters to define the message type of the referenced FIX message. 0 4,294,967,295
Sends a failure message to the server. If the Referenced Sequence Number field is not set, the system will use the last message sent by the peer.
Session Reject Reason (to identify reason for a session-level Reject message.) Message Text
Use alphanumeric and/or special characters to define the reason for the sessionlevel rejection.
245
Table 8-33: FIXT Action Parameters Action Server: Reject (session-level) Message Description Sends a failure message to the client. If the Referenced Sequence Number field is not set, the system will use the last message sent by the peer. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 4,294,967,295
Referenced Sequence Number (of the rejected message) Reference Tag ID (of the referenced FIX field) Reference Message Type
0 4,294,967,295
Use alphanumeric and/or special characters to define the message type of the referenced FIX message. 0 4,294,967,295
Session Reject Reason (to identify reason for a session-level Reject message.) Message Text
Use alphanumeric and/or special characters to define the reason for the sessionlevel rejection. Start, Continue, End, or Start and End 0 4,294,967,295 Start, Continue, End, or Start and End 0 4,294,967,295
Transaction Flag
New Sequence Number Server: Sequence Number Reset Message Sends a requests to have reset the sequence number. Transaction Flag
246
Table 8-33: FIXT Action Parameters Action Client: Logout Message Description Sends a message ending the session. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Use alphanumeric and/or special characters to provide the text that will be sent when the session ends. Start, Continue, End, or Start and End Use alphanumeric and/or special characters to provide the text that will be sent when the session ends. Start, Continue, End, or Start and End 0 4,294,967,295
Text
Transaction Flag
Text
Transaction Flag
Heartbeat Interval (seconds between heartbeat messages) Next Expected Message Sequence Number Maximum Message Size Default Application Version ID
0 4,294,967,295
0 4,294,967,295 Use alphanumeric and/or special characters to describe the version of FIX that is being carried over the FIXT session.
247
Table 8-33: FIXT Action Parameters Action Server: Logon Message Description Sends a response to a Logon request. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 4,294,967,295
Heartbeat Interval (seconds between heartbeat messages) Next Expected Message Sequence Number Maximum Message Size Default Application Version ID
0 4,294,967,295
0 4,294,967,295 Use alphanumeric and/or special characters to describe the version of FIX that is being carried over the FIXT session.
Client: Login
Username
Password
248
Table 8-34: FTP Action Parameters Action Client: Directory Listing Client: CWD Description Lists the files in the directory. Performs a change directory command. Action Parameter None N/A Valid Values
New directory
Use up to 256 alphanumeric and/or special characters to define the new directory name. 1 10,000,000 Use the Import Response Data link to upload the data in which the client will download, and then select the filename from the Response Data drop-down menu. 1 10,000,000 Use the Import Response Data link to upload the data in which the client will upload to the server, and then select the filename from the Response Data drop-down menu. N/A
Client: Download
Client: Upload
Client: QUIT
None
249
250
Table 8-35: Gmail Action Parameters Action Client: Send Message Description Send an e-mail message via Google GMail. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End true or false String up to 128 bytes String up to 5 bytes String up to 5 bytes String up to 128 bytes true or false String up to 128 bytes String up to 5 bytes String up to 5 bytes String up to 128 bytes String up to 2048 bytes String up to 2048 bytes String up to 2048 bytes String up to 2048 bytes
Use From Username Range From Username Prefix From Username Range Start From Username Range End From Domain Use To Username Range To Username Prefix To Username Range Start To Username Range End To Domain From Address To Address(es) Cc Address(es) Bcc Address(es)
251
Table 8-35: Gmail Action Parameters Action Description Action Parameter Subject Static Message Text Language Valid Values String up to 2048 bytes String up to 4096 bytes Custom, English, French, German, Italian, Spanish 0 1,048,576 0 1,048,576 String up to 4096 bytes true or false String up to 16 bytes String True or False 0 33,554,432 0 33,554,432 0 33,554,432 String up to 128 bytes Any available file Any available file Any available file Any available file Any available file
Message Wordcount Min Message Wordcount Max Keyword List Keywords in Subject Custom ISO-639 Language Code Attachment Filename Random Attachment Random File Size Random File Size Min Random File Size Max Attachment Content-Type File to load To Address(es) from Static Message Text File Custom Dictionary Static Attachment Static Attachment 2
252
Table 8-35: Gmail Action Parameters Action Client: Receive Message Description Receive an e-mail message via Google GMail. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End true or false String up to 128 bytes String up to 5 bytes String up to 5 bytes String up to 128 bytes true or false String up to 128 bytes String up to 5 bytes String up to 5 bytes String up to 128 bytes String up to 2048 bytes String up to 2048 bytes String up to 2048 bytes String up to 2048 bytes String up to 2048 bytes String up to 2048 bytes
Use From Username Range From Username Prefix From Username Range Start From Username Range End From Domain Use To Username Range To Username Prefix To Username Range Start To Username Range End To Domain From Address To Address(es) Cc Address(es) Bcc Address(es) Subject Static Message Text
253
Table 8-35: Gmail Action Parameters Action Description Action Parameter Language Valid Values Custom, English, French, German, Italian, Spanish 0 1,048,576 0 1,048,576 String up to 4096 bytes true or false String up to 16 bytes Any available file True or False 0 33,554,432 0 33,554,432 0 33,554,432 0 33,554,432 Any available file Any available file Any available file Any available file Any available file
Message Wordcount Min Message Wordcount Max Keyword List Keywords in Subject Custom ISO-639 Language Code Attachment Filename Random Attachment Random File Size Random File Size Min Random File Size Max Attachment Content-Type File to load To Address(es) from Static Message Text File Custom Dictionary Static Attachment Static Attachment 2
254
true or false
A file in PEM format containing the server's certificate. A file in PEM format containing the server's private key. The client's common name (CN) as it appears in the client's certificate.
255
Table 8-36: Gnutella Action Parameters Action Description Action Parameters Client CA Certificate Valid Values A file in PEM format containing the certificate of the Certificate Authority (a.k.a., the CA Cert) used to sign the client's certificate. Allow Untrusted Cert Do Not Check Cert Require Trusted Cert Decryption Mode Auto Decrypt Discard/Count Discard/No Count true or false SSLv3 or TLSv1 SSLv3 or TLSv1 An available ciphersuite An available ciphersuite An available ciphersuite An available ciphersuite An available ciphersuite 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295
Enabled Min Version Max Version 1st Cipher 2nd Cipher 3rd Cipher 4th Cipher 5th Cipher Resume Max Reuse Resume Expire (seconds) Handshake Timeout (milliseconds)
256
Table 8-36: Gnutella Action Parameters Action Description Action Parameters Client Authentication Enabled Client Certificate Valid Values true or false
A file in PEM format containing the client's certificate. A file in PEM format containing the client's private key. The server's common name (CN) as it appears in the server's certificate. A file in PEM format containing the certificate of the Certificate Authority (a.k.a., the CA Cert) used to sign the server's certificate. Allow Untrusted Cert Do Not Check Cert Require Trusted Cert
Server CA Cert
Decryption Mode
Auto Decrypt Discard/Count Discard/No Count true or false true or false true or false
Client: TLS Close Notify Server: TLS Close Notify Client: TLS Discard Encrypted Data
Send a TLS Close Notify alert. Send a TLS Close Notify alert. Allows encrypted data received on this flow to be discarded before decrypting it.
257
Table 8-36: Gnutella Action Parameters Action Server: TLS Discard Encrypted Data Client: Delay Description Updates bulk decryption statistics if set to true. Pause for a specified amount of time. Action Parameters Count Discarded Data Valid Values true or false
Start, Continue, End, or Start and End 1 1,000,000 1 1,000,000 Start, Continue, End, or Start and End 1 1,000,000 1 1,000,000 Start, Continue, End, or Start and End Enter the string to be used. Select a file to import. Start, Continue, End, or Start and End Enter the string to be used. Select a file to import. Start, Continue, End, or Start and End
Server: Delay
Defines the specific responses you expect to see from the DUT. Matches responses and checks whether response has the pattern in the payload.
258
Table 8-36: Gnutella Action Parameters Action Description Action Parameters Wait for Success Valid Values Select to wait for a response that matches the selected pattern. The pattern you want to match against. Select to match a simple string pattern. Select to match a regular expression pattern. Delay, Raw Message, Update Dest Address, Update Dest Port, Update Receive Window, Verify File, Goto, Close, Fail, Log as Target, Add Flow Dictionary, Add Markov Flow Dictionary, Generate Characters Client or Server 09
Match
Available Action
Updates the destination address in subsequent flows with the value from a previous PCRE match. Updates the destination port of a flow with the value from a previous PCRE match. Updates the receive window with the specified value.
Destination Host Match Variable (09) Flow ID Match Variable (09) Receive Window Size (bytes)
259
Table 8-36: Gnutella Action Parameters Action Server: Conditional Request Description Defines the specific responses you expect to see from the DUT. Matches responses and checks whether response has the pattern in the payload. Action Parameters Transaction Flag, Available Actions Wait for Success Valid Values Start, Continue, End, or Start and End Select to wait for a response that matches the selected pattern. The pattern you want to match against. Select to match a simple string pattern. Select to match a regular expression pattern. Delay, Raw Message, Update Dest Address, Update Dest Port, Update Receive Window, Verify File, Goto, Close, Fail, Log as Target, Add Flow Dictionary, Add Markov Flow Dictionary, Generate Characters Start, Continue, End, or Start and End Available file Available Actions
Match
Available Action
Verifies data coming from the server with a specified resource file. Causes the flow to go to another action
Transaction Flag, Available Actions File to verify Transaction Flag Goto Action Iterations
Client: Goto
Client: Close
Close the connection on the TCP transport level. Close the connection on the TCP transport level.
Transaction Flag, Available Actions FIN or RST Transaction Flag FIN or RST
Start, Continue, End, or Start and End FIN or RST Start, Continue, End, or Start and End FIN or RST
Server: Close
260
Table 8-36: Gnutella Action Parameters Action Client: Fail Server: Fail Client: Log as Target N/A N/A For Lawful Intercept tests, this action is used to generate a target Super Flow that does not contain a needle. Including this action results in a Lawful Intercept test logging the presence of the Super Flow as if it contained a needle. Provides the ability to add a dictionary to the flow. Description Action Parameters N/A N/A Transaction Flag N/A N/A Start, Continue, End, or Start and End Valid Values
Provides the ability to add a dictionary of Markov text bodies to the flow.
Dictionary ID Quantity Markov Minimum Word Count Markov Maximum Word Count Markov Text Length Markov Keywords Markov Language English French Italian German Spanish Japanese
Markov Database
261
Table 8-36: Gnutella Action Parameters Action Client: Download Description Simulates a download of a file. Action Parameters Transaction Flag Download Filename File Size in Bytes Download File Client: Connect Simulates a client connecting to the Gnutella network via an Ultrapeer. Simulates a client ping and an accompanying pong. Transaction Flag Valid Values Start, Continue, End, or Start and End Name of the file Size of the file Available file Start, Continue, End, or Start and End
Client: Ping
Start, Continue, End, or Start and End 0 random 0 random Start, Continue, End, or Start and End 0 random 0 random Start, Continue, End, or Start and End alphanumeric characters 0 random
Server: Ping
Client: Query
262
Note: All action parameters that are left blank will generate random values. Table 8-37: Gopher Action Parameters Action Client: Request Description Connects to the Gopher server and sends a request. Sends a response to the client with the specified data. Action Parameters Selector Valid Values Alphanumeric and/or special characters can be used to define the selector. Alphanumeric and/or special characters can be used to define the response data. Use the Import Response Data (Resource) link to upload a resource file, then select the desired file from the Response Data (Resource) dropdown menu. The content of the resource file will be used as the response data. 0 4,294,967,295 0 4,294,967,295
263
true or false
A file in PEM format containing the server's certificate. A file in PEM format containing the server's private key. The client's common name (CN) as it appears in the client's certificate.
264
Table 8-38: GTalk Action Parameters Action Description Action Parameters Client CA Certificate Valid Values A file in PEM format containing the certificate of the Certificate Authority (a.k.a., the CA Cert) used to sign the client's certificate. Allow Untrusted Cert Do Not Check Cert Require Trusted Cert Decryption Mode Auto Decrypt Discard/Count Discard/No Count true or false SSLv3 or TLSv1 SSLv3 or TLSv1 An available ciphersuite An available ciphersuite An available ciphersuite An available ciphersuite An available ciphersuite 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295
Enabled Min Version Max Version 1st Cipher 2nd Cipher 3rd Cipher 4th Cipher 5th Cipher Resume Max Reuse Resume Expire (seconds) Handshake Timeout (milliseconds)
265
Table 8-38: GTalk Action Parameters Action Description Action Parameters Client Authentication Enabled Client Certificate Valid Values true or false
A file in PEM format containing the client's certificate. A file in PEM format containing the client's private key. The server's common name (CN) as it appears in the server's certificate. A file in PEM format containing the certificate of the Certificate Authority (a.k.a., the CA Cert) used to sign the server's certificate. Allow Untrusted Cert Do Not Check Cert Require Trusted Cert
Server CA Cert
Decryption Mode
Auto Decrypt Discard/Count Discard/No Count true or false true or false true or false
Client: TLS Close Notify Server: TLS Close Notify Client: TLS Discard Encrypted Data
Send a TLS Close Notify alert. Send a TLS Close Notify alert. Allows encrypted data received on this flow to be discarded before decrypting it.
266
Table 8-38: GTalk Action Parameters Action Server: TLS Discard Encrypted Data Client: Delay Description Updates bulk decryption statistics if set to true. Pause for a specified amount of time. Action Parameters Count Discarded Data Valid Values true or false
Start, Continue, End, or Start and End 1 1,000,000 1 1,000,000 Start, Continue, End, or Start and End 1 1,000,000 1 1,000,000 Start, Continue, End, or Start and End Enter the string to be used. Select a file to import. Start, Continue, End, or Start and End Enter the string to be used. Select a file to import. Start, Continue, End, or Start and End
Server: Delay
Defines the specific responses you expect to see from the DUT. Matches responses and checks whether response has the pattern in the payload.
267
Table 8-38: GTalk Action Parameters Action Description Action Parameters Wait for Success Valid Values Select to wait for a response that matches the selected pattern. The pattern you want to match against. Select to match a simple string pattern. Select to match a regular expression pattern. Delay, Raw Message, Update Dest Address, Update Dest Port, Update Receive Window, Verify File, Goto, Close, Fail, Log as Target, Add Flow Dictionary, Add Markov Flow Dictionary, Generate Characters Client or Server 09
Match
Available Action
Updates the destination address in subsequent flows with the value from a previous PCRE match. Updates the destination port of a flow with the value from a previous PCRE match. Updates the receive window with the specified value.
Destination Host Match Variable (09) Flow ID Match Variable (09) Receive Window Size (bytes)
268
Table 8-38: GTalk Action Parameters Action Server: Conditional Request Description Defines the specific responses you expect to see from the DUT. Matches responses and checks whether response has the pattern in the payload. Action Parameters Transaction Flag, Available Actions Wait for Success Valid Values Start, Continue, End, or Start and End Select to wait for a response that matches the selected pattern. The pattern you want to match against. Select to match a simple string pattern. Select to match a regular expression pattern. Delay, Raw Message, Update Dest Address, Update Dest Port, Update Receive Window, Verify File, Goto, Close, Fail, Log as Target, Add Flow Dictionary, Add Markov Flow Dictionary, Generate Characters Start, Continue, End, or Start and End Available file Available Actions
Match
Available Action
Verifies data coming from the server with a specified resource file. Causes the flow to go to another action
Transaction Flag, Available Actions File to verify Transaction Flag Goto Action Iterations
Client: Goto
Client: Close
Close the connection on the TCP transport level. Close the connection on the TCP transport level.
Transaction Flag, Available Actions FIN or RST Transaction Flag FIN or RST
Start, Continue, End, or Start and End FIN or RST Start, Continue, End, or Start and End FIN or RST
Server: Close
269
Table 8-38: GTalk Action Parameters Action Client: Fail Server: Fail Client: Log as Target N/A N/A For Lawful Intercept tests, this action is used to generate a target Super Flow that does not contain a needle. Including this action results in a Lawful Intercept test logging the presence of the Super Flow as if it contained a needle. Provides the ability to add a dictionary to the flow. Description Action Parameters N/A N/A Transaction Flag N/A N/A Start, Continue, End, or Start and End Valid Values
Provides the ability to add a dictionary of Markov text bodies to the flow.
Dictionary ID Quantity Markov Minimum Word Count Markov Maximum Word Count Markov Text Length Markov Keywords Markov Language English French Italian German Spanish Japanese
Markov Database Client: Preauth Simulates a GTalk login prior to authorization. Transaction Flag Start, Continue, End, or Start and End
270
Table 8-38: GTalk Action Parameters Action Client: Postauth Client: Chat Description Simulates a GTalk login post-authorization. Simulates a GTalk conversation between a user and a peer. Action Parameters Transaction Flag Transaction Flag Client Messages Peer Messages Client: IM: User Simulates a single instant message from the user to a peer. Transaction Flag Message Transaction Flag Message Transaction Flag Valid Values Start, Continue, End, or Start and End Start, Continue, End, or Start and End 0 Random 0 Random Start, Continue, End, or Start and End Alphanumeric characters Start, Continue, End, or Start and End Alphanumeric characters Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Client: Presence Notification Server: Presence Notification Client: Request cleardot gif
Simulates a single presence notification from user to peer. Simulates a single presence notification from peer to user. Performs an HTTP Get for cleardot.gif.
Transaction Flag
Transaction Flag Header host name used for cleardot.gifHTTP Get User Agent header used for HTTP Get of cleardot.gif URI used for cleardot gif file
271
Table 8-38: GTalk Action Parameters Action Description Action Parameters Content type header returned with HTTP Get of cleardo Client: Create a session with the Google server Issues the HTTP GET for the create_session url. Transaction Flag Email address of GTalk client (voicemail sender). Use Session type header used for HTTP Create Session Get URI used for HTTP Create Session Get User Agent header used for HTTP Create Session Get Host name header used for HTTP Create Session Get Server: Return session information Returns the connection details for the new session. Transaction Flag Server id header returned by HTTP Create Session Get Content type header returned by HTTP Create Session Client: User Send File Client: User Receive File Simulates a single file exchange from user to peer. Simulates a single file exchange from peer to user. Transaction Flag Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Valid Values
Transaction Flag
272
Table 8-38: GTalk Action Parameters Action Client: User Send Voicemail Client: User End Voicemail Description Simulates a single voicemail exchange from user to peer. Simulates a single voicemail final message, postrecording. Simulates a voicecall from user to peer. Simulates a voicecall hangup by user. Receive file data via UDP in file transfer. Put file data via UDP in file transfer. Send voicemail Data. Action Parameters Transaction Flag Valid Values Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Transaction Flag
Client: User to Peer Voicecall Client: User End Voicemail Client: Get File Data Client: Put File Data Client: Put Voicemail Data Client: Voice Data Client: Download
Transaction Flag Transaction Flag Transaction Flag Transaction Flag Transaction Flag
Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Name of the file Size of the file Available file Start, Continue, End, or Start and End
Transaction Flag Transaction Flag Download Filename File Size in Bytes Download File
Client: Connect
Simulates a client connecting to the Gnutella network via an Ultrapeer. Simulates a client ping and an accompanying pong.
Transaction Flag
Client: Ping
273
Table 8-38: GTalk Action Parameters Action Server: Ping Description Simulates a server ping and an accompanying pong. Action Parameters Transaction Flag Files Shared Kbytes Shared Client: Query Simulates a search for a file. Transaction Flag Query Search Term QueryHits Returned Valid Values Start, Continue, End, or Start and End 0 random 0 random Start, Continue, End, or Start and End alphanumeric characters 0 random
Transaction ID Termination ID Type Termination ID (Manual) Termination ID Depth Termination ID Wildcard Bits Context ID Type Context ID (Manual)
274
Table 8-39: H248 Action Parameters Action Server: Notify Reply Description Simulates the response to a notification. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 65,536 or a token Choose, All, Manual, Random choose, all, or manual All Lower Levels, One Level 1 64 Null, Choose, All, Random, Manual 1 4,294,967,294 or a token
Transaction ID Termination ID Type Termination ID (Manual) Termination ID Depth Termination ID Wildcard Bits Context ID Type Context ID (Manual)
275
Table 8-39: H248 Action Parameters Action Server: Signal: CG DT Description Simulates the notification from an MGC to an MG requesting to send dial tone. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 65,536 or a token Choose, All, Manual, Random choose, all, or manual All Lower Levels, One Level 1 64 Null, Choose, All, Random, Manual 1 4,294,967,294 or a token An H248 digit map (see RFC 3015 section 7.1.14.3)
Transaction ID Termination ID Type Termination ID (Manual) Termination ID Depth Termination ID Wildcard Bits Context ID Type Context ID (Manual) Digit Map
276
Table 8-39: H248 Action Parameters Action Client: Modify Reply Description Simulates the response to a termination modify request. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 65,536 or a token Choose, All, Manual, Random choose, all, or manual All Lower Levels, One Level 1 64 Null, Choose, All, Random, Manual 1 4,294,967,294 or a token Start, Continue, End, or Start and End
Transaction ID Termination ID Type Termination ID (Manual) Termination ID Depth Termination ID Wildcard Bits Context ID Type Context ID (Manual) Server: Delay Delays the servers response for the amount of time specified for Number of Milliseconds. Transaction Flag
Number of Milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Maximum Number of Milliseconds
1 1,000,000
1 1,000,000
277
Table 8-39: H248 Action Parameters Action Client: Event: DD CE Description Simulates the notification from an MG to an MGC, reporting a match between collected digits and the supplied dialplan. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 65,536 or a token Choose, All, Manual, Random choose, all, or manual All Lower Levels, One Level 1 64 Null, Choose, All, Random, Manual 1 4,294,967,294 or a token Up to 127 alphanumeric characters, which may contain tokens (example: 91XXXXXXXXXX)
Transaction ID Termination ID Type Termination ID (Manual) Termination ID Depth Termination ID Wildcard Bits Context ID Type Context ID (Manual) Dialed Digits
278
Table 8-39: H248 Action Parameters Action Server: Add Request Description Adds a termination to a context. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 65,536 or a token Choose, All, Manual, Random choose, all, or manual All Lower Levels, One Level 1 64 Null, Choose, All, Random, Manual 1 4,294,967,294 or a token Start, Continue, End, or Start and End 0 65,536 or a token Choose, All, Manual, Random choose, all, or manual All Lower Levels, One Level 1 64 Null, Choose, All, Random, Manual 1 4,294,967,294 or a token
Transaction ID Termination ID Type Termination ID (Manual) Termination ID Depth Termination ID Wildcard Bits Context ID Type Context ID (Manual) Client: Add Reply Simulates the response to a termination addition request. Transaction Flag
Transaction ID Termination ID Type Termination ID (Manual) Termination ID Depth Termination ID Wildcard Bits Context ID Type Context ID (Manual)
279
Table 8-39: H248 Action Parameters Action Server: Add RTP Termination Description Adds a RTP termination to a context. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 65,536 or a token Choose, All, Manual, Random choose, all, or manual All Lower Levels, One Level 1 64 Null, Choose, All, Random, Manual 1 4,294,967,294 or a token Receive, Send, Send and Receive Any available audio codec
Transaction ID Termination ID Type Termination ID (Manual) Termination ID Depth Termination ID Wildcard Bits Context ID Type Context ID (Manual) Stream Mode Audio Data
280
Table 8-39: H248 Action Parameters Action Client: Add RTP Termination Reply Description Simulates the response to a RTP termination addition request. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 65,536 or a token Choose, All, Manual, Random choose, all, or manual All Lower Levels, One Level 1 64 Null, Choose, All, Random, Manual 1 4,294,967,294 or a token Any available audio codec Start, Continue, End, or Start and End 0 65,536 or a token Choose, All, Manual, Random choose, all, or manual All Lower Levels, One Level 1 64 Null, Choose, All, Random, Manual 1 4,294,967,294 or a token
Transaction ID Termination ID Type Termination ID (Manual) Termination ID Depth Termination ID Wildcard Bits Context ID Type Context ID (Manual) Audio Data
Server: Signal: CG RT
Transaction Flag
Transaction ID Termination ID Type Termination ID (Manual) Termination ID Depth Termination ID Wildcard Bits Context ID Type Context ID (Manual)
281
Table 8-39: H248 Action Parameters Action Server: Modify Descriptor Description Simulates a local or remote descriptor modification from a MGC to a MG. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 65,536 or a token Choose, All, Manual, Random choose, all, or manual All Lower Levels, One Level 1 64 Null, Choose, All, Random, Manual 1 4,294,967,294 or a token Local or Remote Any available audio codec
Transaction ID Termination ID Type Termination ID (Manual) Termination ID Depth Termination ID Wildcard Bits Context ID Type Context ID (Manual) Descriptor Type Audio Data
282
Table 8-39: H248 Action Parameters Action Server: Signal: None Description Simulates a modify request from an MGC to a MG, removing all signals from the context. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 65,536 or a token Choose, All, Manual, Random choose, all, or manual All Lower Levels, One Level 1 64 Null, Choose, All, Random, Manual 1 4,294,967,294 or a token Start, Continue, End, or Start and End 0 65,536 or a token Choose, All, Manual, Random choose, all, or manual All Lower Levels, One Level 1 64 Null, Choose, All, Random, Manual 1 4,294,967,294 or a token Receive, Send, Send and Receive
Transaction ID Termination ID Type Termination ID (Manual) Termination ID Depth Termination ID Wildcard Bits Context ID Type Context ID (Manual)
Transaction Flag
Transaction ID Termination ID Type Termination ID (Manual) Termination ID Depth Termination ID Wildcard Bits Context ID Type Context ID (Manual) Stream Mode
283
Table 8-39: H248 Action Parameters Action Client: Bidirectional Stream Description Simulates a bidirectional stream between a client and a server. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Any available payload type 0 65,535 Up to 10 hexadecimal characters (0 9, a - f) True or False Size-based or Time-based 1 600,000 0 255 1 1024 1 1000 Up to 10 hexadecimal characters (0 9, a - f) True or False True or False 2 52,428,800
Payload Type (F) Initial Sequence Number (F) Initial Timestamp (0xHex Format) (F)
Use Payload Type Defaults? Duration Type (F) Stream duration (ms) (F) Timestamp Increment (F) Buffer Size (1024 bytes max) (F) Buffer Latency (1000 ms max) SSRC (0xHex Format) (F)
Mark First Packet? (F) Strip Wave Header? Raw File Size (5242880 bytes max) (F) Payload Type (R)
284
Table 8-39: H248 Action Parameters Action Description Action Parameter Initial Sequence Number (R) Initial Timestamp (0xHex Format) (R) Use Payload Type Defaults? Duration Type (R) Stream duration (ms) (R) Timestamp Increment (R) Buffer Size (1024 bytes max) (R) Buffer Latency (1000 ms max) SSRC (0xHex Format) (R) Valid Values 0 65,535 Up to 10 hexadecimal characters (0 9, a - f) True or False Size-based or Time-based 1 600,000 0 255 1 1024 1 1000 Up to 10 hexadecimal characters (0 9, a - f) True or False True or False 2 52,428,800
Mark First Packet? (R) Strip Wave Header? Raw File Size (5242880 bytes max) (R) Raw File to Stream (F) Raw File to Stream (R)
285
Table 8-39: H248 Action Parameters Action Client: RTCP Report Description Enacts the RTCP sender report, sender description, and bye packet. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Up to 254 characters Start, Continue, End, or Start and End Up to 254 characters Start, Continue, End, or Start and End 0 65,536 or a token Choose, All, Manual, Random choose, all, or manual All Lower Levels, One Level 1 64 Null, Choose, All, Random, Manual 1 4,294,967,294 or a token Start, Continue, End, or Start and End 0 65,536 or a token Choose, All, Manual, Random choose, all, or manual
Enacts the RTCP sender report, sender description, and bye packet.
Client: Event: AL ON
Simulates the notification from an MG to an MGC when an analog endpoint goes on hook.
Transaction ID Termination ID Type Termination ID (Manual) Termination ID Depth Termination ID Wildcard Bits Context ID Type Context ID (Manual)
Transaction Flag
286
Table 8-39: H248 Action Parameters Action Description Action Parameter Termination ID Depth Termination ID Wildcard Bits Context ID Type Context ID (Manual) Client: Subtract Reply Simulates the response to a termination subtraction request. Transaction Flag Valid Values All Lower Levels, One Level 1 64 Null, Choose, All, Random, Manual 1 4,294,967,294 or a token Start, Continue, End, or Start and End 0 65,536 or a token Choose, All, Manual, Random choose, all, or manual All Lower Levels, One Level 1 64 Null, Choose, All, Random, Manual 1 4,294,967,294 or a token
Transaction ID Termination ID Type Termination ID (Manual) Termination ID Depth Termination ID Wildcard Bits Context ID Type Context ID (Manual)
287
Delays the client response for the amount of time specified by Number of Milliseconds
288
Table 8-40: HTTP Action Parameters Action Client: Raw Request Description Sends a request that is downloaded from the specified URI. Action Parameter Request Data Valid Values Use the Import Request Data link to import the file from which the request will be downloaded. Once the file has been uploaded, select the filename from the Request Data drop-down menu. Start, Continue, End, or Start and End Use the Import Response Data link to import the file from which the response will be downloaded. Once the file has been uploaded, select the filename from the Response Data drop-down menu. Start, Continue, End, or Start and End Start, Continue, End, or Start and End on or off Use up to 128 alphanumeric and/or special characters to define the URI that is requested in the HTTP method. true or false
Transaction Flag Server: Raw Response Sends a response that is downloaded from the specified URI. Response Data
Transaction Flag Client: GET Performs a GET request for the specified URI. Transaction Flag
URI escape
289
Table 8-40: HTTP Action Parameters Action Description Action Parameter Enable persistent HTTP sessions Valid Values Set this to on or off to toggle the Keep Alive headers. When performing a Client Simulation test or a 1-arm test with more than one HTTP client action in a flow, be sure to set Enable persistent HTTP sessions of the GET action to on. If this value is set to off, the server will close the TCP connection as soon as it sends the first HTTP response, causing the actions within the Conditional Request to be ignored. The default setting for Enable persistent HTTP sessions of the GET action is set to on. Use up to 128 alphanumeric and/or special characters to define the Accept header. This data will override default values used in the Accept header. Use up to 128 alphanumeric and/or special characters to define the Encoding header. This data will override default values used in the Accept-Encoding HTTP header.
290
Table 8-40: HTTP Action Parameters Action Client: GET Description Performs a GET request for the specified URI. Action Parameter Custom Language header Valid Values Use up to 128 alphanumeric and/or special characters to define the Custom Language header. This data will override default values used in the Accept-Language HTTP header. Use up to 128 alphanumeric and/or special characters to define the UserAgent field. This data will override default values used in the User-Agent HTTP header. Sets the 'If-NoneMatch' header for the server response. Use up to 256 alphanumeric and/or special characters to define the name of the cookie that will be added to the HTTP session. Use up to 1024 alphanumeric and/or special characters to define the value of the cookie session. Use up to 1,024 alphanumeric and/or special characters to define the custom header name.
Custom UserAgent
291
Table 8-40: HTTP Action Parameters Action Description Action Parameter Custom Header Value Valid Values Use up to 1,024 alphanumeric and/or special characters to define the custom header value. Start, Continue, End, or Start and End
Transaction Flag
Digest Authentication Basic Authentication No Authentication Use up to 128 alphanumeric and/or special characters to define the username that will be encoded into the request. Use up to 128 alphanumeric and/or special characters to define the username that will be encoded into the request. Use up to 128 alphanumeric and/or special characters to define the URI that is requested in the HTTP method.
Request path
292
Table 8-40: HTTP Action Parameters Action Description Action Parameter Enable persistent HTTP sessions Valid Values Set this to on to toggle the Keep Alive headers. Set this to off to disable this option. When performing a Client Simulation test or a 1-arm test with more than one HTTP client action in a flow, be sure to set Enable persistent HTTP sessions of the GET action to on. If this value is set to off, the server will close the TCP connection as soon as it sends the first HTTP response, causing the actions within the Conditional Request to be ignored. The default setting for Enable persistent HTTP sessions of the GET action is set to on. Use up to 128 alphanumeric and/or special characters to define the Accept header. This data will override default values used in the Accept HTTP header.
293
Table 8-40: HTTP Action Parameters Action Client: GET Authenticated Description Performs a GET request for the specified URI with authentication. Action Parameter Custom Encoding header Valid Values Use up to 128 alphanumeric and/or special characters to define the Encoding header. This data will override default values used in the Accept-Encoding HTTP header. Use up to 128 alphanumeric and/or special characters to define the Language header. This data will override default values used in the Accept-Language HTTP header. Use up to 128 alphanumeric and/or special characters to define the UserAgent field.This data will override default values used in the User-Agent HTTP header. Use up to 256 alphanumeric and/or special characters to define the name of the cookie that will be added to the HTTP session. Use up to 1,024 alphanumeric and/or special characters to define the value of the cookie session.
Custom UserAgent
294
Table 8-40: HTTP Action Parameters Action Client: GET Authenticated Description Performs a GET request for the specified URI with authentication. Action Parameter Custom Header Name Valid Values Use up to 1,024 alphanumeric and/or special characters to define the custom header name. Use up to 1,024 alphanumeric and/or special characters to define the custom header value. Start, Continue, End, or Start and End The string that will be appended to the response data that is sent. 0 4,294,967,295 0 4,294,967,295
Client: GetURIs
Random response min length Random response max length File Generator URI escape
true or false
295
Table 8-40: HTTP Action Parameters Action Description Action Parameter Enable persistent HTTP sessions Valid Values Set this to on to toggle the Keep Alive headers. Set this to off to disable this option. When performing a Client Simulation test or a 1-arm test with more than one HTTP client action in a flow, be sure to set Enable persistent HTTP sessions of the GET action to on. If this value is set to off, the server will close the TCP connection as soon as it sends the first HTTP response, causing the actions within the Conditional Request to be ignored. The default setting for Enable persistent HTTP sessions of the GET action is set to on. Use up to 128 alphanumeric and/or special characters to define the Accept header. This data will override default values used in the Accept HTTP header. Use up to 128 alphanumeric and/or special characters to define the Encoding header. This data will override default values used in the Accept-Encoding HTTP header.
296
Table 8-40: HTTP Action Parameters Action Description Action Parameter Custom Language Header Valid Values Use up to 128 alphanumeric and/or special characters to define the Language header. This data will override default values used in the Accept-Language HTTP header. Use up to 128 alphanumeric and/or special characters to define the UserAgent field.This data will override default values used in the User-Agent HTTP header.
Custom UserAgent
Custom If-NoneMatch Cookie Name Use up to 256 alphanumeric and/or special characters to define the name of the cookie that will be added to the HTTP session. Use up to 1,024 alphanumeric and/or special characters to define the value of the cookie session. Use up to 256 alphanumeric and/or special characters to define the name of the header that will be added to the HTTP session.
Cookie Value
297
Table 8-40: HTTP Action Parameters Action Description Action Parameter Custom Header Value Valid Values Use up to 1,024 alphanumeric and/or special characters to define the custom header value. N/A N/A N/A
File with a list of URIs File for response data Custom Headers File
298
Table 8-40: HTTP Action Parameters Action Client: POST Description Performs a POST request for the specified URI. Action Parameter Transaction Flag Content-MD5 header Valid Values Start, Continue, End, or Start and End Set this to on to include a header with the MD5 hash of the POST request body data. Set this to off to disable this option. Set this to on to use persistent connections. Set this to off to disable this option. Set this to on to split data up, and send it in chunks. Set this to off to disable this option. 0 4,294,967,295
When the chunk size is set to 0, the BreakingPoint Storm CTM will assume that the userprovided file is already chunk encoded.
Keep Alive
Requested path
Use up to 128 alphanumeric and/or special characters to define the URI that is requested in the HTTP method. Use up to 128 alphanumeric and/or special characters to define the ContentType header.
Content-Type
299
Table 8-40: HTTP Action Parameters Action Client: POST Description Performs a POST request for the specified URI. Action Parameter POST content Valid Values Use alphanumeric and/or special characters to define the data that will be sent with the POST request. Use the Import POST content link to import the file that contains the data that will be sent with the POST request. Once the file has been imported, you can select it from the Post content dropdown menu. Use alphanumeric and/or special characters to define the URI that will be appended to the POST request body. 0 65,535 0 65,535 Use up to 128 alphanumeric and/or special characters to define the Accept header. This data overrides values used in the Accept HTTP header.
POST content
Min amt of random data Max amt of random data Custom Accept header
300
Table 8-40: HTTP Action Parameters Action Client: POST Description Performs a POST request for the specified URI. Action Parameter Custom Encoding header Valid Values Use up to 128 alphanumeric and/or special characters to define the Encoding header. This data overrides values used in the AcceptEncoding HTTP header. Use up to 128 alphanumeric and/or special characters to define the Language header. This data overrides values used in the AcceptLanguage HTTP header. Use up to 128 alphanumeric and/or special characters to define the UserAgent field. This overrides values used in the UserAgent HTTP header. Use up to 256 alphanumeric and/or special characters to define the UserAgent field. name of the cookie that will be added to the HTTP session. Use up to 1,024 alphanumeric and/or special characters to define the value of the cookie session.
Custom UserAgent
301
Table 8-40: HTTP Action Parameters Action Client: POST Description Performs a POST request for the specified URI. Action Parameter Custom Header Name Valid Values Use up to 1,024 alphanumeric and/or special characters to define the custom header name. Use up to 1,024 alphanumeric and/or special characters to define the custom header value. Start, Continue, End, or Start and End Set this to on to include a header with the MD5 hash of the POST request body data. Set this to off to disable this option. Set this to on to use persistent connections. Set this to off to disable this option. Set this to on to split data up, and send it in chunks. Set this to off to disable this option. 0 4,294,967,295
When the chunk size is set to 0, the BreakingPoint Storm CTM will assume that the userprovided file is already chunk encoded.
Client: PUT
Keep Alive
Requested path
Use up to 128 alphanumeric and/or special characters to define the URI that is requested in the HTTP method.
302
Table 8-40: HTTP Action Parameters Action Client: PUT Description Performs a PUT request for the specified URI. Action Parameter Content-Type Valid Values Use up to 128 alphanumeric and/or special characters to define the value of the Content-Type header. Use alphanumeric and/or special characters to define the data that will be sent with the PUT request. Use alphanumeric and/or special characters to define the URI that will be appended to the PUT request body. 0 65,535 0 65,535 Use up to 128 alphanumeric and/or special characters to define the Accept header. This data overrides values used in the Accept HTTP header. Use up to 128 alphanumeric and/or special characters to define the Encoding header. This data overrides values used in the AcceptEncoding HTTP header.
Min amt of random data Max amt of random data Custom Accept header
303
Table 8-40: HTTP Action Parameters Action Client: PUT Description Performs a PUT request for the specified URI. Action Parameter Custom Language Header Valid Values Use up to 128 alphanumeric and/or special characters to define the Language header. This data overrides values used in the AcceptLanguage HTTP header. Use up to 128 alphanumeric and/or special characters to define the UserAgent field. This overrides values used in the UserAgent HTTP header. Use up to 256 alphanumeric and/or special characters to define the UserAgent field. name of the cookie that will be added to the HTTP session. Use up to 1,024 alphanumeric and/or special characters to define the value of the cookie session. Use up to 1,024 alphanumeric and/or special characters to define the custom header name. Use up to 1,024 alphanumeric and/or special characters to define the custom header value.
Custom UserAgent
304
Table 8-40: HTTP Action Parameters Action Client: THINK Description Inserts a delay into the HTTP flow. Used to model client think time, or server response time latency. Returns an HTTP error using the information detailed for the Server Response 200 (OK) options. Action Parameter Think time in milliseconds Valid Values 0 65,535
Select gzip, deflate, or none to compress the response data. Set this to on to include a header with the MD5 hash of the POST request body data. Set this to off to disable this option. Set this to on to use persistent connections. Set this to off to disable this option. Set this to on to split data up, and send it in chunks. Set this to off to disable this option. Use up to 128 alphanumeric and/or special characters to define the value of the Content-Type header. 0 4,294,967,295
When the chunk size is set to 0, the BreakingPoint Storm CTM will assume that the userprovided file is already chunk encoded.
Keep Alive
Content-Type
Use up to 256 alphanumeric and/or special characters to define data sent in the HTTP response.
305
Table 8-40: HTTP Action Parameters Action Server: Response 200 (OK) Description Returns an HTTP error using the information detailed for the Server Response 200 (OK) options. Action Parameter Transaction Flag HTTP Compression Content-MD5 header Valid Values Start, Continue, End, or Start and End Select gzip, deflate, or none to compress the response data. Set this to on to include a header with the MD5 hash of the POST request body data. Set this to off to disable this option. Set this to on to use persistent connections. Set this to off to disable this option. Set this to on to split data up, and send it in chunks. Set this to off to disable this option.
Keep Alive
306
Table 8-40: HTTP Action Parameters Action Server: Response 200 (OK) Description Returns an HTTP error using the information defined for the Server Response 200 (OK) options. Action Parameter Content-Type Valid Values Use up to 128 alphanumeric and/or special characters to define the value of the Content-Type header. 0 4,294,967,295
When the chunk size is set to 0, the BreakingPoint Storm CTM will assume that the userprovided file is already chunk encoded.
Response data
Use up to 128 alphanumeric and/or special characters to define the data returned by the Web server. Click the Import Response data link to import the file that will be used as the response data. 0 4,294,967,295 0 4,294,967,295 Use up to 256 alphanumeric and/or special characters to define the name of the cookie that will be added to the HTTP session. Use up to 1,024 alphanumeric and/or special characters to define the value of the cookie session.
Random response min length Random response max length Name of cookie to save
307
Table 8-40: HTTP Action Parameters Action Server: HTTP 404 Error Description Returns an HTTP error using the information detailed for the Server: HTTP 404 Error options. Action Parameter Transaction Flag Keep Alive Valid Values Start, Continue, End, or Start and End Set this to on to use persistent connections. Set this to off to disable this option. Set this to on to include a header with the MD5 hash of the POST request body data. Set this to off to disable this option. Use up to 128 alphanumeric and/or special characters to define the data returned by the Web server. Click the Import Response data link to import the file that will be used as the response data. 0 65,535 0 65,535 Use up to 256 alphanumeric and/or special characters to define the name of the cookie that will be added to the HTTP session. Use up to 1,024 alphanumeric and/or special characters to define the value of the cookie session.
Response Data
Response Data
Random response min length Random response max length Name of cookie to save
308
Table 8-40: HTTP Action Parameters Action Server: Response 401 Unauthorized Description Returns an error for an unauthorized request from the client. Action Parameter Transaction Flag HTTP Authentication scheme to use Response Data Valid Values Start, Continue, End, or Start and End Digest Authentication Basic Authentication No Authentication Use up to 128 alphanumeric and/or special characters to define the data returned by the Web server. Use the Import Response data link to import the file that will be used as the response data. Once the file has been uploaded, you can select it from the Response Data drop-down menu. 0 65,535 0 65,535 Use up to 256 alphanumeric and/or special characters to define the name of the cookie that will be added to the HTTP session. Use up to 1,024 alphanumeric and/or special characters to define the value of the cookie session.
Response Data
Random response min length Random response max length Name of cookie to save
309
Table 8-40: HTTP Action Parameters Action HTTP Generic Error Description Returns a generic error with a custom code and message. Action Parameter Transaction Flag HTTP status code Valid Values Start, Continue, End, or Start and End A three digit status code (e.g., 200, 404, 503) Use up to 256 alphanumeric and/or special characters to define the status message returned in the error. Set this to on to use persistent connections. Set this to off to disable this option. Set this to on to include a header with the MD5 hash of the POST request body data. Set this to off to disable this option. Use up to 128 alphanumeric and/or special characters to define the data returned by the Web server. Use the Import Response data link to import the file that will be used as the response data. Once the file has been uploaded, you can select it from the Response Data drop-down menu. 0 65,535
Keep Alive
Response Data
310
Table 8-40: HTTP Action Parameters Action HTTP Generic Error Description Returns a generic error with a custom code and message. Action Parameter Random response max length Name of cookie to set Valid Values 0 65,535 Use up to 256 alphanumeric and/or special characters to define the name of the cookie that will be added to the HTTP session. Use up to 1,024 alphanumeric and/or special characters to define the value of the cookie session.
311
Table 8-41: HTTPS Action Parameters Action Server: Server Delay Description Delays the server response for the amount of time specified by Number of Milliseconds Action Parameter Transaction Flag Number of Milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Transaction Flag Valid Values Start, Continue, End, or Start and End 0 4,294,967,295
Initiates a TLS handshake with the SSL server Continues the TLS handshake with the client Sends a list of certificates to the client to authenticate
Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End 1 100 Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Transaction Flag
Server: Hello Done Client: Client Key Exchange Client: Client Change Cipher Spec
Signals the end of the transaction negotiation Sends the premastersecret encrypted with the servers public key Instructs the server that all subsequent data will be encrypted using the connection settings that were negotiated Instructs the client that all subsequent data will be encrypted using the connection settings that were negotiated
Transaction Flag
Transaction Flag
312
Table 8-41: HTTPS Action Parameters Action Client: Client Finished Server: Server Finished Client: Client Alert Description Sends an encrypted hash to verify the new encryption parameters Sends an encrypted hash to verify the new encryption parameters Sends an alert record from the client Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Warning or Fatal Close Notify Unexpected Message Bad Record Mac Decryption Failed Record Overflow Decompression Failure Handshake Failure Bad Certificate Unsupported Certificate Certificate Revoked Certificate Expired Certificate Unknown Illegal Parameter Unknown CA Access Denied Decode Error Decrypt Error Export Restriction Protocol Version Insufficient Security Internal Error User Canceled No Renegotiation
Transaction Flag
313
Table 8-41: HTTPS Action Parameters Action Server: Server Alert Description Sends an alert record from the server Action Parameter Transaction Flag Alert Level Alert Type Valid Values Start, Continue, End, or Start and End Warning or Fatal Close Notify Unexpected Message Bad Record Mac Decryption Failed Record Overflow Decompression Failure Handshake Failure Bad Certificate Unsupported Certificate Certificate Revoked Certificate Expired Certificate Unknown Illegal Parameter Unknown CA Access Denied Decode Error Decrypt Error Export Restriction Protocol Version Insufficient Security Internal Error User Canceled No Renegotiation Start, Continue, End, or Start and End 1 16,383 1 16,383 Start, Continue, End, or Start and End 1 16,383 1 16,383
314
true or false
N/A Do Not Check Cert, Allow Untrusted Cert, or Require Trusted Cert Available PEM formatted cert file Available PEM formatted key file Available PEM formatted cert file Auto Decrypt Discard/Count Discard/NoCount
315
Table 8-42: IAX2 Action Parameters Action Client: Start TLS Description Establish a TLS connection. Action Parameter Enabled Min Version Max Version 1st Cipher 2nd Cipher 3rd Cipher 4th Cipher 5th Cipher Resume Max Reuse Resume Expire (seconds) Handshake Timeout (milliseconds) Valid Values true or false SSLv3 or TLSv1 SSLv3 or TLSv1 An available ciphersuite An available ciphersuite An available ciphersuite An available ciphersuite An available ciphersuite 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295
316
Table 8-42: IAX2 Action Parameters Action Description Action Parameter Client Authentication Enabled Client Certificate Valid Values true or false
A file in PEM format containing the client's certificate. A file in PEM format containing the client's private key. The server's common name (CN) as it appears in the server's certificate. A file in PEM format containing the certificate of the Certificate Authority (a.k.a., the CA Cert) used to sign the server's certificate. Allow Untrusted Cert Do Not Check Cert Require Trusted Cert
Server CA Cert
Decryption Mode
Auto Decrypt Discard/Count Discard/No Count true or false true or false true or false
Client: TLS Close Notify Server: TLS Close Notify Client: Discard Encrypted Data
Send a TLS Close Notify alert. Send a TLS Close Notify alert. An optimization that allows encrypted data received on this flow to be discarded before decrypting it.
317
Table 8-42: IAX2 Action Parameters Action Server: Discard Encrypted Data Client: Delay Description An optimization that allows encrypted data received on this flow to be discarded before decrypting it. Pause for a specified amount of time. Action Parameter Count Discarded Data Valid Values true or false
Start, Continue, End, or Start and End 1 1,000,000 1 1,000,000 Start, Continue, End, or Start and End 1 1,000,000 1 1,000,000
Server: Delay
Start, Continue, End, or Start and End Enter the string to be used. Select a file to import. Start, Continue, End, or Start and End Enter the string to be used. Select a file to import.
318
Table 8-42: IAX2 Action Parameters Action Client: Conditional Request Description Defines the specific responses you expect to see from the DUT. Matches responses and checks whether response has the pattern in the payload. Action Parameter Transaction Flag, Available Actions Valid Values Start, Continue, End, or Start and End
Select to wait for a response that matches the selected pattern. The pattern you want to match against. Select to match a simple string pattern. Select to match a regular expression pattern. Delay, Raw Message, Update Dest Address, Update Dest Port, Update Receive Window, Verify File, Goto, Close, Fail, Log as Target, Add Flow Dictionary, Add Markov Flow Dictionary, Generate Characters Client or Server 09
Available Action
Updates the destination address in subsequent flows with the value from a previous PCRE match. Updates the destination port of a flow with the value from a previous PCRE match.
319
Table 8-42: IAX2 Action Parameters Action Client: Update Receive Window Server: Conditional Request Description Updates the receive window with the specified value. Defines the specific responses you expect to see from the DUT. Matches responses and checks whether response has the pattern in the payload. Action Parameter Receive Window Size (bytes) Valid Values
Start, Continue, End, or Start and End Select to wait for a response that matches the selected pattern. The pattern you want to match against. Select to match a simple string pattern. Select to match a regular expression pattern. Delay, Raw Message, Update Dest Address, Update Dest Port, Update Receive Window, Verify File, Goto, Close, Fail, Log as Target, Add Flow Dictionary, Add Markov Flow Dictionary, Generate Characters Start, Continue, End, or Start and End Available file Available Actions
Available Action
Verifies data coming from the server with a specified resource file. Causes the flow to go to another action
Transaction Flag, Available Actions File to verify Transaction Flag Goto Action Iterations
Client: Goto
Client: Close
320
Table 8-42: IAX2 Action Parameters Action Server: Close Description Close the connection on the TCP transport level. N/A N/A For Lawful Intercept tests, this action is used to generate a target Super Flow that does not contain a needle. Including this action results in a Lawful Intercept test logging the presence of the Super Flow as if it contained a needle. Provides the ability to add a dictionary to the flow. Action Parameter Transaction Flag FIN or RST N/A N/A Transaction Flag Valid Values Start, Continue, End, or Start and End FIN or RST N/A N/A Start, Continue, End, or Start and End
321
Table 8-42: IAX2 Action Parameters Action Client: Add Markov Flow Dictionary Description Provides the ability to add a dictionary of Markov text bodies to the flow. Action Parameter Dictionary ID Quantity Markov Minimum Word Count Markov Maximum Word Count Markov Text Length Markov Keywords Markov Language English French Italian German Spanish Japanese Available file Valid Values
Markov Database
322
Table 8-43: IMAP Action Parameters Action Server: Delay Description Delays the servers response for the amount of time specified for Number of milliseconds Action Parameter Transaction Flag Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Starting Tag Value Username Valid Values Start, Continue, End, or Start and End 1 1,000,000
Client: Login
0 4,294,967,295 Enter up to 128 alphanumeric and/or special characters to define the username used to log into the IMAP server. Enter up to 128 alphanumeric and/or special characters to define the password used to log into the IMAP server. 0 Random
Password
* Client: Logout
323
Table 8-43: IMAP Action Parameters Action Client: Retrieve Mail Description Simulates the retrieval of an e-mail message. Action Parameter Starting Tag Value Raw Message URI Valid Values 0 4,294,967,295 Select a file from the Raw Message URI drop-down menu. The contents of this file will comprise the entire mail message including the headers. If the desired file is not listed on the menu, use the Import Raw Message URI link to upload a file that will be used for the entire URI message.
* When a flow uses the client IMAP Logout action, the external IMAP server will send a logout response and then close the TCP connection. Any actions after the TCP connection starts to close will have inconsistent results. Therefore, no other actions for that flow should come after the IMAP Logout action.
324
Table 8-43: IMAP Action Parameters Action Client: Retrieve Mail Description Simulates the retrieval of an e-mail message. Action Parameter From: Valid Values Enter up to 128 alphanumeric and/or special characters to define the From: field. Enter up to 128 alphanumeric and/or special characters to define the To: field. Enter up to 128 alphanumeric and/or special characters to define the Subject: field. Enter up to 128 alphanumeric and/or special characters to define the body of the message. Select a file from the Attachment URI drop-down menu. This file will be incorporated into the generated mail message. If the desired file is not listed on the menu, use the Import Attachment URI link to upload the attachment file that will be used. Enter up to 256 alphanumeric and/or special characters to define the attachment filename. 0 4,294,967,295 0 4,294,967,295
To:
Subject:
Text:
Attachment URI
Attachment filename
Attachment size Client: Quit Simulates a QUIT command from the IMAP server. Starting Tag Value
325
When a flow uses the client IMAP Logout action, the external IMAP server will send a logout response and then close the TCP connection. Any actions after the TCP connection starts to close will have inconsistent results. Therefore, no other actions for that flow should come after the IMAP Logout action.
Server: Delay
Delays the servers response for the amount of time specified for Number of milliseconds
326
Table 8-44: Informix Action Parameters Action Client: Login Description Simulates a login to the Informix database Action Parameter Database Username Valid Values Enter up to 255 alphanumeric and/or special characters for the username that will be used to log into the database. Enter up to 255 alphanumeric and/or special characters for the password that will be used to log into the database. Enter up to 255 alphanumeric and/or special characters for the databases hostname. Alphanumeric and/or special characters can be used to define the SQL query. 0 4,294,967,295 0 4,294,967,295 Alphanumeric and/or special characters can be used to define the names of the columns from which data will be returned. The information listed here must be comma-delimited format.
Database Password
Database Hostname
Simulates an SQL query and response. The values entered for Columns and Rows will determine the number of columns and rows the query will return. If Column Names are specified, then they need to be entered as commadelimited values.
SQL Query
327
Table 8-45 on page 328 lists the action parameters you can use to set up an IPP flow. Table 8-45: IPP Action Parameters Action Client: Print Description Connects to the IPP server, sends a print request, and receives a response from the server. Action Parameter Print Job Size (bytes) Print Job Data File Valid Values 1 1,048,576 Use the Import Print Job Data File link to upload the content for the print request. Use up to 128 alphanumeric and/or special characters to define the users name who is making the request.
Username
328
Table 8-46: IRC Action Parameters Action Server: Delay Description Delays the servers response for the amount of time specified for Number of milliseconds milliseconds. Action Parameter Transaction Flag Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. None Channel Valid Values Start, Continue, End, or Start and End 1 1,000,000
Simulates a login to the chat application Simulates an IRC channel conversation with multiple virtual peers
N/A Enter up to 31 alphanumeric and/or special characters to define the IRC channel. The value defined for this parameter must begin with #. 0 4,294,967,295 0 4,294,967,295
329
true or false
N/A Do Not Check Cert, Allow Untrusted Cert, or Require Trusted Cert Available PEM formatted cert file Available PEM formatted key file Available PEM formatted cert file Auto Decrypt Discard/Count Discard/NoCount
330
Table 8-47: iTunes Action Parameters Action Client: Start TLS Description Establish a TLS connection. Action Parameters Enabled Min Version Max Version 1st Cipher 2nd Cipher 3rd Cipher 4th Cipher 5th Cipher Resume Max Reuse Resume Expire (seconds) Handshake Timeout (milliseconds) Valid Values true or false SSLv3 or TLSv1 SSLv3 or TLSv1 An available ciphersuite An available ciphersuite An available ciphersuite An available ciphersuite An available ciphersuite 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295
331
Table 8-47: iTunes Action Parameters Action Description Action Parameters Client Authentication Enabled Client Certificate Valid Values true or false
A file in PEM format containing the client's certificate. A file in PEM format containing the client's private key. The server's common name (CN) as it appears in the server's certificate. A file in PEM format containing the certificate of the Certificate Authority (a.k.a., the CA Cert) used to sign the server's certificate. Allow Untrusted Cert Do Not Check Cert Require Trusted Cert
Server CA Cert
Decryption Mode
Auto Decrypt Discard/Count Discard/No Count true or false true or false true or false
Client: TLS Close Notify Server: TLS Close Notify Client: Discard Encrypted Data
Send a TLS Close Notify alert. Send a TLS Close Notify alert. An optimization that allows encrypted data received on this flow to be discarded before decrypting it.
332
Table 8-47: iTunes Action Parameters Action Server: Discard Encrypted Data Client: Delay Description An optimization that allows encrypted data received on this flow to be discarded before decrypting it. Pause for a specified amount of time. Action Parameters Count Discarded Data Valid Values true or false
Start, Continue, End, or Start and End 1 1,000,000 1 1,000,000 Start, Continue, End, or Start and End 1 1,000,000 1 1,000,000
Server: Delay
Start, Continue, End, or Start and End Enter the string to be used. Select a file to import. Start, Continue, End, or Start and End Enter the string to be used. Select a file to import.
333
Table 8-47: iTunes Action Parameters Action Client: Conditional Request Description Defines the specific responses you expect to see from the DUT. Matches responses and checks whether response has the pattern in the payload. Action Parameters Transaction Flag, Available Actions Valid Values Start, Continue, End, or Start and End
Select to wait for a response that matches the selected pattern. The pattern you want to match against. Select to match a simple string pattern. Select to match a regular expression pattern. Delay, Raw Message, Update Dest Address, Update Dest Port, Update Receive Window, Verify File, Goto, Close, Fail, Log as Target, Add Flow Dictionary, Add Markov Flow Dictionary, Generate Characters Client or Server 09
Match
Available Action
Updates the destination address in subsequent flows with the value from a previous PCRE match. Updates the destination port of a flow with the value from a previous PCRE match.
334
Table 8-47: iTunes Action Parameters Action Client: Update Receive Window Server: Conditional Request Description Updates the receive window with the specified value. Defines the specific responses you expect to see from the DUT. Matches responses and checks whether response has the pattern in the payload. Action Parameters Receive Window Size (bytes) Transaction Flag, Available Actions Wait for Success Start, Continue, End, or Start and End Select to wait for a response that matches the selected pattern. The pattern you want to match against. Select to match a simple string pattern. Select to match a regular expression pattern. Delay, Raw Message, Update Dest Address, Update Dest Port, Update Receive Window, Verify File, Goto, Close, Fail, Log as Target, Add Flow Dictionary, Add Markov Flow Dictionary, Generate Characters Start, Continue, End, or Start and End Available file Available Actions Valid Values
Match
Available Action
Verifies data coming from the server with a specified resource file. Causes the flow to go to another action
Transaction Flag, Available Actions File to verify Transaction Flag Goto Action Iterations
Client: Goto
Client: Close
335
Table 8-47: iTunes Action Parameters Action Server: Close Description Close the connection on the TCP transport level. N/A N/A For Lawful Intercept tests, this action is used to generate a target Super Flow that does not contain a needle. Including this action results in a Lawful Intercept test logging the presence of the Super Flow as if it contained a needle. Provides the ability to add a dictionary to the flow. Action Parameters Transaction Flag FIN or RST N/A N/A Transaction Flag Valid Values Start, Continue, End, or Start and End FIN or RST N/A N/A Start, Continue, End, or Start and End
336
Table 8-47: iTunes Action Parameters Action Client: Add Markov Flow Dictionary Description Provides the ability to add a dictionary of Markov text bodies to the flow. Action Parameters Dictionary ID Quantity Markov Minimum Word Count Markov Maximum Word Count Markov Text Length Markov Keywords Markov Language English French Italian German Spanish Japanese Available file Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Up to 256 alphanumeric characters Start, Continue, End, or Start and End Up to 256 alphanumeric characters Start, Continue, End, or Start and End Valid Values
Markov Database Client: Get Bag Server: Send Bag Client: Search Gets the bag file. Sends the bag file. Submits a search query for this flow's media type. Transaction Flag Transaction Flag Transaction Flag Search Terms
Requests an item's iTunes description page from the search results. Sends an item description page for the appropriate media type.
Transaction Flag
Transaction Flag
337
Table 8-47: iTunes Action Parameters Action Client: Purchase Request Server: Purchase Response Client: Download Request Server: Download Response Description Sends a client purchase request. Sends a server Apple WebObjects response for a purchase request. Sends a download request for the flow's media type. Responds to a client Download Request with the appropriate media type. Action Parameters Transaction Flag Valid Values Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Transaction Flag
Transaction Flag
Transaction Flag
338
Table 8-48: Jabber Action Parameters Action Server: Delay Description Delays the servers response for the amount of time specified for Number of milliseconds Action Parameters Transaction Flag Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Jabber Service Valid Values Start, Continue, End, or Start and End 1 1,000,000
Client: Login
Simulates a Jabber login for a specific Jabber Service Provider. Represents the number of Jabber conversations between a user and a peer. Simulates a message from the user to a peer.
Google Talk
Client: Chat
0 4,294,967,295 0 4,294,967,295
Client: IM User
Peer Name
Up to 32 alphanumeric and/or special characters can be defined for the peers name. Use alphanumeric and/or special characters to define the message sent from the user to the peer.
Message
339
Table 8-48: Jabber Action Parameters Action Server: IM: Peer Description Simulates a message from the peer to the user. Action Parameters Peer Name Valid Values Up to 32 alphanumeric and/or special characters can be defined for the peers name. Use alphanumeric and/or special characters to define the message sent from the peer to the user.
Message
340
MSSQL
Table 8-51 on page 341 lists the action and action parameters for MSSQL. Table 8-51: MSSQL Action Parameters Action Client: Delay Description Delays the clients response for the amount of time specified for Number of milliseconds Action Parameters Transaction Flag Valid Values Start, Continue, End, or Start and End 1 1,000,000
Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Transaction Flag
Server: Delay
Delays the servers response for the amount of time specified for Number of milliseconds
Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds.
341
Table 8-51: MSSQL Action Parameters Action Client: Login Description Simulates a login to a Microsoft SQL server. Action Parameters Username Valid Values Enter up to 14 alphanumeric and/or special characters to define the username used to log into the database. Enter up to 14 alphanumeric and/or special characters to define the password used to log into the database. Enter up to 63 alphanumeric and/or special characters to define the server name. Enter up to 63 alphanumeric and/or special characters to define the client name. Enter up to 63 alphanumeric and/or special characters to define the database name.
Password
Server Name
Client Name
Database Name
342
Table 8-51: MSSQL Action Parameters Action Client: Query: Select Description Simulates an SQL query and response. The values entered for Columns and Rows will determine the number of columns and rows the query will return. If Column Names are specified, then they need to be entered as commadelimited values. Action Parameters SQL Query Valid Values Alphanumeric and/ or special characters can be used to define the SQL query. 0 4,294,967,295 0 4,294,967,295 Enter up to 255 alphanumeric and/or special characters to define the names of the columns from which data will be returned. The information listed here must be comma-delimited format.
Multicast
Table 8-52 on page 343 lists the action and action parameters for Multicast. Multicast allows routers to work together to efficiently deliver copies of data to interested receivers. Instead of sending a separate copy of the data to each host, the server sends the data only once. Routers along the pathway to the clients make copies as needed. Table 8-52: Multicast Action Parameters Action Client: Multicast Join Description Causes the flow to request a join to the multicast group defined in the flow settings. Action Parameters Transaction Flag Valid Values Start, Continue, End, or Start and End
343
Table 8-52: Multicast Action Parameters Action Client: Delay Description Pauses the flow for a specified amount of time. Action Parameters Transaction Flag Number of Milliseconds. Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Maximum Number of Milliseconds Client: Multicast Leave Causes the flow to request a join to the multicast group defined in the flow settings. Sends randomized data. Transaction Flag Valid Values Start, Continue, End, or Start and End 1 1,000,000
Client: Goto
Available Actions
MySQL
The MySQL authenticate action expects the first packet received to include the server greeting. This means that the server greeting must be the first action in a flow. When the greeting is not the first flow, MySQL will not proceed to the next action.
344
Table 8-53 on page 345 lists the actions and action parameters for MySQL. Table 8-53: MySQL Action Parameters Action Client: Authenticate Description Simulates a login to the MySQL database. Action Parameters Transaction Flag Valid Values Start, Continue, End, or Start and End Up to 63 alphanumeric and/or special characters can be used to define the database username. Up to 63 alphanumeric and/or special characters can be used to define the database password.
Database Username
Database Password
345
Table 8-53: MySQL Action Parameters Action Client: Conditional Request Description Defines the specific responses you expect to see from the DUT. Matches responses and checks whether response has the pattern in the payload. Action Parameters Transaction Flag Valid Values Start, Continue, End, or Start and End Select to wait for a response that matches the selected pattern. The pattern you want to match against. Select to match a simple string pattern. Select to match a regular expression pattern. Select to match a predefined pattern. Delay, Raw Message, Verify Rows, Goto, Close, Fail, Login, Login Request, Authenticate, Use Database, Query, Quit Start, Continue, End, or Start and End 1 1,000,000
Match
Simple String
Regex
Server: Delay
Delays the clients response for the amount of time specified for Number of milliseconds
Transaction Flag
Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds.
346
Table 8-53: MySQL Action Parameters Action Client: Login Description Simulates a login to a MySQL server. Action Parameters Transaction Flag Valid Values Start, Continue, End, or Start and End
Server Version String Database Username Enter up to 14 alphanumeric and/or special characters to define the username used to log into the database. Enter up to 14 alphanumeric and/or special characters to define the password used to log into the database. Enter up to 63 alphanumeric and/or special characters to define the database name. Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Database Password
Database Name
Executes a use database statement. This action simulates a Quit command from a client to a MySQL server. Queries the MySQL Server for the host
Transaction Flag
Transaction Flag
Client: Query
Transaction Flag
SQL Statement Server: Query Response Sends a response to the client with the specified data. Transaction Flag Start, Continue, End, or Start and End
347
Table 8-53: MySQL Action Parameters Action Description Action Parameters Database Name Valid Values Enter up to 63 alphanumeric and/or special characters to define the database name. Enter up to 255 alphanumeric and/or special characters to define the table name referenced in the SQL query. If the SQL query is random (or left blank), the table name will be consistent with the randomly generated FROM clause of the SQL statement. 0 4,294,967,295 Enter up to 255 alphanumeric and/or special characters to define the names of the columns from which data will be returned. The information listed here must be comma-delimited format. Enter up to 255 alphanumeric and/or special characters to define the names of the columns from which data will be returned. The information listed here must be comma-delimited format. 0 4,294,967,295
Table Name
Max Chars/Column
Rows
348
Table 8-53: MySQL Action Parameters Action Description Action Parameters Column List Valid Values The columns to return, or alternatively, an *. If no value is provided, the system generates a random set of column names.
System Value
Server Name
Server: Positive Session Response Client: Client Session Message Server: Server Session Message
Transaction Flag
Transaction Flag
Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Transaction Flag
349
Server: Delay
Delays the servers response for the amount of time specified for Number of milliseconds
350
Table 8-56: NNTP Action Parameters Action Client: Generic Command Description Sends an NNTP command Action Parameter Transaction Flag Keyword Valid Values Start, Continue, End, or Start and End Alphanumeric and/or special characters can be used to define the Keyword command. Alphanumeric and/or special characters can be used to define the Variant command. Alphanumeric and/or special characters can be used to define the first command argument. Alphanumeric and/or special characters can be used to define the second command argument. Alphanumeric and/or special characters can be used to define the third command argument. Alphanumeric and/or special characters can be used to define the fourth command argument.
Variant
Argument 1
Argument 2
Argument 3
Argument 4
351
Table 8-56: NNTP Action Parameters Action Server: Generic Response Description Sends an NNTP response Action Parameter Transaction Flag Response Code Argument 1 Valid Values Start, Continue, End, or Start and End 0 4,294,967,295 Alphanumeric and/or special characters can be used to define the first command argument. Alphanumeric and/or special characters can be used to define the second command argument. Alphanumeric and/or special characters can be used to define the third command argument. Alphanumeric and/or special characters can be used to define the fourth command argument.
Argument 2
Argument 3
Argument 4
352
Server: Delay
Delays the servers response for the amount of time specified for Number of milliseconds
353
Table 8-58: Oracle Action Parameters Action Client: Login Description Simulates a login to the Oracle database using the values defined for the action parameters. Action Parameters Database Username Valid Values Enter up to 14 alphanumeric and/or special characters to define the username used to log into the Oracle database. Enter up to 14 alphanumeric and/or special characters to define the password used to log into the Oracle database. Enter up to 63 alphanumeric and/or special characters to define the server name for the Oracle database. Enter up to 63 alphanumeric and/or special characters to define the Oracle database name. Enter up to 128 alphanumeric and/or special characters to define the Oracle banner. Enter up to 63 alphanumeric and/or special characters to define the Oracle workstation username. Enter up to 63 alphanumeric and/or special characters to define the Oracle workstation name.
Database Password
Server Name
Database Name
Server Banner
Client Username
Client: Login
Simulates a login to the Oracle database using the values defined for the action parameters.
354
Table 8-58: Oracle Action Parameters Action Client: Query Select Description Simulates an SQL query and response. The values entered for Columns and Rows will determine the number of columns and rows the query will return. If Column Names are specified, then they need to be entered as comma-delimited values. Action Parameters SQL Query Valid Values Alphanumeric and/or special characters can be used to define the SQL query. 0 4,294,967,295 0 4,294,967,295 Enter up to 255 alphanumeric and/or special characters to define the names of the columns from which data will be returned. The information listed here must be commadelimited format.
355
07
true or false
Auth Server, Boss Server, Client, or DNS Server Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Client: Connect (Login Request) Server: Connect Response Client: Sign On Server: Sign On Challenge
Simulates a connect request to an authentication server. Server sign on response. Simulates a logon request to the authentication server. Simulates the reply to the authentication server's challenge by sending the screen name, password hash, and client details.
Transaction Flag
Transaction Flag
Transaction Flag
Transaction Flag
356
Table 8-59: OSCAR Action Parameters Action Client: Sign On Challenge Reply Description Simulates the reply to the authentication server's challenge by sending the screen name, password hash, and client details. Simulates the message that an authentication server provides after a login request occurs. It provides the authentication cookie and the disconnect request in the same message. Client disconnect request. Sends a Binding Request to a STUN server. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End
Transaction Flag
Transaction Flag
Start, Continue, End, or Start and End Start, Continue, End, or Start and End True or False Start, Continue, End, or Start and End String representing IP Address. A token may be used. Values that are not tokens or valid IP addresses will result in a random IP address. String representing port number. A token may be used. Values that are not tokens or valid ports will result in 0.
Transaction Flag
Change IP Flag Server: Binding Response Send a Binding Response to a STUN client. Transaction Flag
Mapped Address
Mapped Port
357
Table 8-59: OSCAR Action Parameters Action Description Action Parameter Source Address Valid Values String representing IP Address. A token may be used. Values that are not tokens or valid IP addresses will result in a random IP address. String representing port number. A token may be used. Values that are not tokens or valid ports will result in 0. String representing IP Address. A token may be used. Values that are not tokens or valid IP addresses will result in a random IP address. String representing port number. A token may be used. Values that are not tokens or valid ports will result in 0.
Source Port
Changed Address
Changed Port
358
Table 8-59: OSCAR Action Parameters Action Server: Accept TLS Description Accept a TLS connection. Action Parameter Enabled Min Version Max Version Cipher Resume Max Reuse Resume Expire (seconds) Handshake Timeout (milliseconds) Client Authentication Enabled Client Common Name Client Cert Verify Mode Valid Values true or false SSLv3 or TLSv1 SSLv3 or TLSv1 Any available ciphersuite 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295
true or false
N/A Do Not Check Cert, Allow Untrusted Cert, or Require Trusted Cert Available PEM formatted cert file Available PEM formatted key file Available PEM formatted cert file
359
Table 8-59: OSCAR Action Parameters Action Client: Start TLS Description Establish a TLS connection. Action Parameter Enabled Min Version Max Version Cipher Resume Max Reuse Resume Expire (seconds) Handshake Timeout (milliseconds) Client Authentication Enabled Server Common Name Server Cert Verify Mode Valid Values true or false SSLv3 or TLSv1 SSLv3 or TLSv1 An available ciphersuite 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295
true or false
N/A Do Not Check Cert, Allow Untrusted Cert, or Require Trusted Cert Available PEM formatted cert file Available PEM formatted key file Available PEM formatted cert file Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Client Certificate Client Private Key Server CA Certificate Client: Connect (Authenticate d) Server: List Services Client: Request ICQ Services Simulates an authenticated connect request to a BOS server. Lists server supported services. Requests ICQ services. Transaction Flag
Transaction Flag
Transaction Flag
360
Table 8-59: OSCAR Action Parameters Action Server: Provide ICQ Services Client: Rate Limit Request Server: Rate Limit Response Client: Rate Limit Acknowledge ment Client: Rights Request Description Provides ICQ services. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End 0 127 Start, Continue, End, or Start and End
Client requests rate limits. Server provides rate limits. Client acknowledges rate limit information received from server. Client rights request. Client provides timestamp of last contact list update. Server rights response. The BOSS server provides the contact list in this response. Informs the server that the client has accepted the SSI information (buddy list, rate limits, capabilities, etc.) and that it is ready to proceed. Enacts the notification that is sent to a client when a buddy comes online or goes offline.
Transaction Flag
Transaction Flag
Transaction Flag
Transaction Flag
Transaction Flag
Transaction Flag
Start, Continue, End, or Start and End 0 127 characters Buddy Offline or Buddy Online
361
Table 8-59: OSCAR Action Parameters Action Server: IM User Description Simulates an incoming message event that is sent from the BOSS server to the OSCAR client. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 127 characters 0 4096 characters Custom, English, French, German, Italian, Spanish 0 1,048,576 0 1,048,576 0 4096 characters true or false Available file Available file
Message Wordcount Min Message Wordcount Max Keyword List Keywords in Subject Static Message Text File Custom Dictionary
362
Table 8-59: OSCAR Action Parameters Action Client: IM Peer Description Simulates an outgoing message event that is sent from the OSCAR client to the BOSS server. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 127 characters 0 4096 characters Custom, English, French, German, Italian, Spanish 0 1,048,576 0 1,048,576 0 4096 characters true or false Available file Available file Start, Continue, End, or Start and End 0 127 characters 0 63 characters Start, Continue, End, or Start and End 0 127 characters
Message Wordcount Min Message Wordcount Max Keyword List Keywords in Subject Static Message Text File Custom Dictionary Client: Send FIle: Peer Simulates a file transfer request that is sent from the OSCAR client to the BOSS server. Transaction Flag
Simulates a file transfer response from the peer, accepting the file transfer.
Transaction Flag
363
Table 8-59: OSCAR Action Parameters Action Client: Send File Description Send a file to a peer. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 16 characters 0 63 characters 0 52,428,800 0 52,428,800 Available file Start, Continue, End, or Start and End 0 127 characters 0 63 characters Start, Continue, End, or Start and End 0 127 characters Start, Continue, End, or Start and End 0 16 characters 0 63 characters 0 52,428,800 0 52,428,800 Available file true or false true or false
Client Username File Name File Minsize File Maxsize File Data Server: Send File: User Simulates a file transfer request that is sent from the BOSS server to the OSCAR client on behalf of the remote chat peer. Simulates a file transfer response from the peer, accepting the file transfer. Transaction Flag
Transaction Flag
Client Username File Name File Minsize File Maxsize File Data Client: TLS Close Notify Server: TLS Close Notify Send a TLS Close Notify alert. Send a TLS Close Notify alert. Enabled Enabled
364
07
true or false
Any host Start, Continue, End, or Start and End 0 48 characters Start, Continue, End, or Start and End Supported Cipher Suite Start, Continue, End, or Start and End Alphanumeric and/ or special characters can be used to define the common name in the certificate.
Session ID Server: Server Hello Continues the TLS handshake with the client. Transaction Flag
Cipher Suite Server: Certificates The server sends a list of certificates for the client to verify. Transaction Flag
365
Table 8-60: Pandora Action Parameters Action Description Action Parameter Subject: Country Code Valid Values Alphanumeric and/ or special characters can be used to define the country code in the certificate. Alphanumeric and/ or special characters can be used to define the state/province in the certificate. Alphanumeric and/ or special characters can be used to define the city/locality in the certificate. Alphanumeric and/ or special characters can be used to define the organization in the certificate. Alphanumeric and/ or special characters can be used to define the common name in the certificate. Alphanumeric and/ or special characters can be used to define the country code in the certificate. Alphanumeric and/ or special characters can be used to define the state/province in the certificate.
Subject: Organization
366
Table 8-60: Pandora Action Parameters Action Description Action Parameter Issuer: City/ Locality Valid Values Alphanumeric and/ or special characters can be used to define the city/locality in the certificate. Alphanumeric and/ or special characters can be used to define the organization in the certificate. 1 100 Any available certificate Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Issuer: Organization
Number of random certificates Upload an x.509 certificate Server: Hello Done Client: Client Key Exchange Client: Client Change Cipher Spec Signals the end of the transaction negotiation Sends the premastersecret encrypted with the servers public key Instructs the server that all subsequent data will be encrypted using the connection settings that were negotiated The client sends a handshake message that occurs after the key exchange has occurred. The server sends a handshake message that occurs after the key exchange has occurred. Transaction Flag
Transaction Flag
Transaction Flag
Client: Client Encrypted Handshake Message Server: Server Encrypted Handshake Message
Transaction Flag
Transaction Flag
367
Table 8-60: Pandora Action Parameters Action Server: Server Change Cipher Spec Description This message instructs the client that all subsequent server data will be encrypted according to the parameters that were negotiated. Sends a block of encrypted data. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End
Transaction Flag
Start, Continue, End, or Start and End 1 16,383 1 16,383 Start, Continue, End, or Start and End 1 16,383 1 16,383 Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Transaction Flag
Client: Get Radio Server: Radio OK Client: Get Friends Server: Friends OK Client: Get Stations
Client requests access to Pandora radio. Server sends an OK response. Client requests a friends list from the server. Server returns a friends list.
Transaction Flag
Transaction Flag
Transaction Flag
Transaction Flag
Transaction Flag
368
Table 8-60: Pandora Action Parameters Action Server: Stations OK Description The server responds with a list of preset stations. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End 0 2048 characters
Seed Artists. A comma-separated list of artists to populate the preset stations with. Client: Switch Station Switch to a different station within Pandora. Transaction Flag
Start, Continue, End, or Start and End 0 1024 characters Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End 0 1024 characters 0 1024 characters 0 1024 characters 0 1024 characters Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Artist. Name of the artist. Server: Switch Station OK Client: Get Fragment Server: Fragment OK Server approves the station change and acknowledges it. Client requests access to song information. Server responds with a fragment. Transaction Flag
Transaction Flag
Transaction Flag
Artist. Name of the artist. Album. Name of the album. Song. Name of the song. Genre. The song's genre. Client: Get Song Server: Song OK Client requests song data. Server responds with song data. Transaction Flag
Transaction Flag
369
370
Table 8-61: POP3 Action Parameters Action Server: Delay Description Delays the servers response for the amount of time specified for Number of milliseconds Action Parameter Transaction Flag Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Username Valid Values Start, Continue, End, or Start and End 1 1,000,000
Client: Login
Enter up to 128 alphanumeric and/or special characters to define the username used to log into the POP3 server. Enter up to 128 alphanumeric and/or special characters to define the password used to log into the POP3 server. Select a file from the Raw Message URI drop-down menu. The contents of this file will comprise the entire mail message including the headers. If the desired file is not listed on the menu, use the Import Raw Message URI link to upload a file that will be used for the entire URI message.
Password
371
Table 8-61: POP3 Action Parameters Action Client: Retrieve Mail Description Simulates the retrieval of an e-mail message. Action Parameter From: Valid Values Enter up to 128 alphanumeric and/or special characters to define the From: field. Enter up to 128 alphanumeric and/or special characters to define the To: field. Enter up to 128 alphanumeric and/or special characters to define the Subject: field. Enter up to 128 alphanumeric and/or special characters to define the body of the message. Select a file from the Attachment URI drop-down menu. This file will be incorporated into the generated mail message. If the desired file is not listed on the menu, use the Import Attachment URI link to upload the attachment file that will be used. Enter up to 256 alphanumeric and/or special characters to define the attachment filename. 0 4,294,967,295
To:
Subject:
Text:
Attachment URI
Attachment filename
Attachment size
372
Server: Delay
Delays the servers response for the amount of time specified for Number of milliseconds
373
Table 8-63: Quote of the Day Action Parameters Action Client: Prompting Message Description Sends a prompting message to start the session Action Parameter Transaction Flag Prompt Valid Values Start, Continue, End, or Start and End Alphanumeric and/or special characters can be used to define the prompting message that is sent at the beginning of a UDP session. Start, Continue, End, or Start and End Alphanumeric and/or special characters can be used to define the quote that is sent by the server.
374
Password Password Type NAS IP Address x.x.x.x, where x is a value between 0 255 0 256 0 253 characters 0 253 characters Start, Continue, End, or Start and End 0 253 characters
NAS Port Calling Station ID Called Station ID Server: Challenge Sends a request for additional information from the user. Transaction Flag Identifier
375
Table 8-64: RADIUS Access Action Parameters Action Server: Accept Description Allows the user access to network resources. Action Parameter Transaction Flag Client Flow Valid Values Start, Continue, End, or Start and End An integer expressing the flow ID as it appears in the Super Flow screen. 0 253 characters Alphanumeric and/or special characters can be used to define the username being accepted. x.x.x.x, where x is a value between 0 255 x.x.x.x, where x is a value between 0 255 Start, Continue, End, or Start and End 0 253 characters Alphanumeric and/or special characters can be used to define the username being rejected.
Indentifier Username
Framed IP Address
Framed Netmask
Server: Reject
376
Password Password Type NAS IP Address x.x.x.x, where x is a value between 0 255 0 256 0 253 characters 0 253 characters Start, Continue, End, or Start and End deflate, gzip, or none on or off on or off on or off N/A N/A N/A N/A
NAS Port Calling Station ID Called Station ID Server: Response Sends the servers response to the client. Transaction Flag HTTP Compression Enable persistent HTTP sessions Enable ContentMD5 Enable chunked encoding HTTP chunk size Content-Type File Generator File Generator Padding
377
Table 8-65: RADIUS Accounting Action Parameters Action Description Action Parameter File Generator Exact Length String for response data Random response min length Random response max length Expires Last-Modified Cache-Control Date ETag Cookie Name Cookie Value Customer Header Name Customer Header Value File for response data Custom Headers File N/A N/A 0 4,294,967,295 0 4,294,967,295 N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A Valid Values
378
Table 8-65: RADIUS Accounting Action Parameters Action Server: Accept Description Allows the user access to network resources. Action Parameter Transaction Flag Client Flow Valid Values Start, Continue, End, or Start and End An integer expressing the flow ID as it appears in the Super Flow screen. 0 253 characters Alphanumeric and/or special characters can be used to define the username being accepted. x.x.x.x, where x is a value between 0 255 x.x.x.x, where x is a value between 0 255
Identifier Username
Framed IP Address
Framed Netmask
379
Table 8-65: RADIUS Accounting Action Parameters Action Client: GET Description Performs a GET request for the specified URI. Action Parameter Transaction Flag Proxy Mode Request path Valid Values Start, Continue, End, or Start and End on or off Use up to 128 alphanumeric and/or special characters to define the URI that is requested in the RADIUS method. true or false on or off Use up to 128 alphanumeric and/or special characters to define the Accept header. This data will override default values used in the Accept header. Use up to 128 alphanumeric and/or special characters to define the Encoding header. This data overrides values used in the AcceptEncoding header.
380
Table 8-65: RADIUS Accounting Action Parameters Action Description Action Parameter Custom Language Header Valid Values Use up to 128 alphanumeric and/or special characters to define the Custom Language header. This data will override default values used in the Accept-Language header. Use up to 128 alphanumeric and/or special characters to define the UserAgent field. This data will override default values used in the User-Agent header. N/A N/A N/A Use up to 1,024 alphanumeric and/or special characters to define the custom header name. Use up to 1,024 alphanumeric and/or special characters to define the custom header value. Any available file
Custom User-Agent
381
382
Table 8-66: RIPv1 Action Parameters Action Server: RIPv1 Response Description Sends an RIPv1 Response. Action Parameter Command Field Value Address Family Field Value Version Field Value IP/Metric Generation Method Comma Separated IP: Metric Valid Values An 8-bit integer value. (1 = Request, 2 = Response) A 16-bit integer value. (2 = IP) An 8-bit integer value Comma Separated, Uploaded File IP addresses in the format: [IP]:[METRIC], [IP]:[METRIC]... Start, Continue, End, or Start and End IP addresses in the format: [IP]:[METRIC] [IP]:[METRIC]
383
Table 8-67: Rlogin Action Parameters Action Server: Delay Description Delays the servers response for the amount of time specified for Number of milliseconds Action Parameter Transaction Flag Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Transaction Flag Local Username Valid Values Start, Continue, End, or Start and End 1 1,000,000
Start, Continue, End, or Start and End Enter alphanumeric and/or special characters to define the username for the client host Enter alphanumeric and/or special characters to define the username for the server host Enter alphanumeric and/or special characters to define the type of terminal that will be used for the connection 0 4,294,967,295 Start, Continue, End, or Start and End
Server Username
Terminal Type
Terminal Speed Server: Server Connection Response Sends a null byte to the client to acknowledge the connection Transaction Flag
384
Table 8-67: Rlogin Action Parameters Action Server: Password Prompt Description Prompts the user for their password Action Parameter Transaction Flag Password Prompt Valid Values Start, Continue, End, or Start and End Enter alphanumeric and/or special characters to define the password prompt displayed to the client Start, Continue, End, or Start and End Enter alphanumeric and/or special characters to define the shell prompt displayed to the client Start, Continue, End, or Start and End Enter alphanumeric and/or special characters to define the shell command sent to the server Start, Continue, End, or Start and End Enter alphanumeric and/or special characters to define the string sent to the remote server Start, Continue, End, or Start and End Enter alphanumeric and/or special characters to define the shell reply sent to the client Start, Continue, End, or Start and End
Issues a command to the server and can be used to send an arbitrary bytestream to the server
Sends a command to the client the remove, or flush all buffered output
Transaction Flag
385
Table 8-67: Rlogin Action Parameters Action Server: Flow Control Command Server: Window Size Command Client: Window Size Response Description Sends a command to the client to stop honoring flow control Sends a request for the clients window size Responds to the servers request for the clients window size Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295
Transaction Flag
RPC Bind
RPC BIND is used to interface with a system's portmapper, so applications can register with the local portmapper to inform it of what port it listens on, and remote systems can query the portmapper to find registered applications.
386
You can use the actions and action parameters listed in Table 8-68 on page 387 to set up an RPC Bind flow. Table 8-68: RPC Bind Action Parameters Action Client: GetAddr Call Description Contacts the server machine to determine the address where RPC requests should be sent. Action Parameters Transaction Flag Program Valid Values Start, Continue, End, or Start and End Enter up to 50 alphanumeric and/or special characters to define the remote program for which a port is being mapped. Enter up to 50 alphanumeric and/or special characters to define the version of the remote program. Enter up to 50 alphanumeric and/or special characters to define the network ID for the network ID. The default value is UDP. Start, Continue, End, or Start and End Enter up to 50 alphanumeric and/or special characters to define the universal address that will be returned by the server.
Program Version
Network ID
387
Server: Delay
Delays the servers response for the amount of time specified for Number of milliseconds
Provides client identification to the server Provides server identification to the client Sends a query for a list of available Rsync modules to the server
Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Transaction Flag
Transaction Flag
388
Table 8-69: Rsync Action Parameters Action Server: Module List Server: Disconnect Description Sends a list of available Rsync modules to the client Disconnects the server from the client Action Parameters Transaction Flag Valid Values Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Transaction Flag
389
Table 8-72: SCCP Action Parameters Action Server: Start tone message Description Starts the tone Action Parameter Transaction Flag Tone. Which tone to play Tone (override). Manual entry for testing undocumented values. Line instance Call identifier Client: Keypad button message The keypad button message. Transaction Flag Keypad button. The button pressed on the phone. Keypad button (override). Manual entry for testing undocumented values. Line instance Call identifier Server: Display text message The display text message. Transaction Flag Display message. The message displayed on the phone. Server: Stop tone message Stop tone message. Transaction Flag Line instance Call identifier Valid Values Start, Continue, End, or Start and End 0 4,294,967,295 0 4,294,967,295
0 4,294,967,295 0 4,294,967,295 Start, Continue, End, or Start and End Choose one of the button types from the drop-down list. 0 4,294,967,295
390
Table 8-72: SCCP Action Parameters Action Client: On hook message Description On hook message. Action Parameter Transaction Flag Line instance Call identifier Valid Values Start, Continue, End, or Start and End 0 4,294,967,295 0 4,294,967,295
Caller Tag
Recipient Tag
391
Table 8-73: SIP Call Action Parameters Action Description Action Parameter Session Stop Valid Values The stop time of the session represented as seconds since 1900 A string describing the type of media A string describing media protocol A string describing the media payload The media clock rate from 1 to 102,400 A CRLF delimited file that contains attributes that are to be appended Start, Continue, End, or Start and End Use up to 1,024 alphanumeric and/or special characters to define the custom header name Use up to 1,024 alphanumeric and/or special characters to define the custom header value Up to 16 alphanumeric and/or special characters Up to 16 alphanumeric and/or special characters
Media Type Media Protocol Media Payload Media Clock Rate Custom SDP Attributes
Caller Tag
Recipient Tag
392
Table 8-73: SIP Call Action Parameters Action Server: Trying Description Sends a TRYING message to acknowledge the call request. Action Parameter Transaction Flag Custom Header Name Valid Values Start, Continue, End, or Start and End Use up to 1,024 alphanumeric and/or special characters to define the custom header name Use up to 1,024 alphanumeric and/or special characters to define the custom header value Up to 16 alphanumeric and/or special characters Up to 16 alphanumeric and/or special characters Start, Continue, End, or Start and End Use up to 1,024 alphanumeric and/or special characters to define the custom header name Use up to 1,024 alphanumeric and/or special characters to define the custom header value Up to 16 alphanumeric and/or special characters Up to 16 alphanumeric and/or special characters
Caller Tag
Recipient Tag
Server: Ringing
Caller Tag
Recipient Tag
393
Table 8-73: SIP Call Action Parameters Action Client: OK Description Sends an OK response. Action Parameter Transaction Flag Custom Header Name Valid Values Start, Continue, End, or Start and End Use up to 1,024 alphanumeric and/or special characters to define the custom header name Use up to 1,024 alphanumeric and/or special characters to define the custom header value Up to 16 alphanumeric and/or special characters Up to 16 alphanumeric and/or special characters Start, Continue, End, or Start and End Use up to 1,024 alphanumeric and/or special characters to define the custom header name Use up to 1,024 alphanumeric and/or special characters to define the custom header value Up to 16 alphanumeric and/or special characters Up to 16 alphanumeric and/or special characters The login of the originating host The name of the session
Caller Tag
Recipient Tag
Server: OK
Sends an OK response.
Caller Tag
Recipient Tag
394
Table 8-73: SIP Call Action Parameters Action Description Action Parameter Session Start Valid Values The start time of the session represented as seconds since 1900 The stop time of the session represented as seconds since 1900 A string describing the type of media A string describing the media protocol A string describing the media payload The media clock rate from 1 to 102,400 A CRLF delimited file that contains attributes that are to be appended Start, Continue, End, or Start and End Use up to 1,024 alphanumeric and/or special characters to define the custom header name Use up to 1,024 alphanumeric and/or special characters to define the custom header value Up to 16 alphanumeric and/or special characters Up to 16 alphanumeric and/or special characters
Session Stop
Media Type Media Protocol Media Payload Media Clock Rate Custom SDP Attributes
Client: ACK
Sends an ACK.
Caller Tag
Recipient Tag
395
Table 8-73: SIP Call Action Parameters Action Server BYE Description Sends a BYE message to end the session. Action Parameter Transaction Flag Custom Header Name Valid Values Start, Continue, End, or Start and End Use up to 1,024 alphanumeric and/or special characters to define the custom header name. Use up to 1,024 alphanumeric and/or special characters to define the custom header value. Up to 16 alphanumeric and/or special characters Up to 16 alphanumeric and/or special characters
Caller Tag
Recipient Tag
Start, Continue, End, or Start and End Start, Continue, End, or Start and End
396
Table 8-74: Skype Call Action Parameters Action Client: Search Description Query the supernode for a list of nodes to query for users. Query nodes in search of Skype users. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Transaction Flag
Server Name
Server: Positive Session Response Client: Negotiate Request Server: Negotiate Response Client: Session Setup Clear Request
Sends an OK response to the client. Sends a request to start an SMB session. Negotiates the protocol used to login into the remote host. Requests that the set up request is accepted.
Transaction Flag
Transaction Flag
Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Transaction Flag
Transaction Flag
397
Table 8-75: SMB Action Parameters Action Client: Session Setup NTLMv1 Request Description Sends a request for NTLMv1 authentication. Action Parameter Transaction Flag Challenge Key Valid Values Start, Continue, End, or Start and End A string value of alphanumeric and/or special characters. Start, Continue, End, or Start and End
Client: Session Setup NTLMv2 Negotiate Request Server: Session Setup NTLMv2 Response Challenge Client: Session Setup NTLMv2 Negotiate Request Authenticate Server: Session Setup NTLMv2 Response Denied Server: Session Setup NTLMv2 Response Success Client: Tree Connect Request
Sends a request for NTLMv2 authentication. Sends a request to the client for additional information. Sends a request for NTLMv2 authentication.
Transaction Flag
Transaction Flag
Transaction Flag
Transaction Flag
Transaction Flag
Start, Continue, End, or Start and End A string value consisting of alphanumeric and/or special characters. A string value consisting of alphanumeric and/or special characters.
Tree Password
398
Table 8-75: SMB Action Parameters Action Server: Tree Connect Response Description Sends a response to the tree connect request. Action Parameter Transaction Flag Service Valid Values Start, Continue, End, or Start and End A string value consisting of alphanumeric and/or special characters. Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295
Client: Find First 2 Request Server: Find First 2 Response Client: Query Path Info Request Server: Query Path Info Response Client: NT Create Request Server: NT Create Response Client: Read Request
Finds the first two requests made by the client Finds the first two responses sent by the server Sends a query to request a path to the tree. Sends a response containing the path to the path request. Sends an NT create request. Sends an NT create response. Sends a READ request.
Transaction Flag
Transaction Flag
Transaction Flag
Transaction Flag
Transaction Flag
Transaction Flag
399
Table 8-75: SMB Action Parameters Action Server: Read Response Description Sends a READ response. Action Parameter Transaction Flag File ID File Bytes Remaining File Read Size Compact Mode Simulation Server File Data URI Client: NULL Session Sends a request for an unauthenticated connection to the SMB server. Transaction Flag Valid Values Start, Continue, End, or Start and End 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295 An uploaded file Start, Continue, End, or Start and End
Transaction Flag
Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Transaction Flag
400
Table 8-75: SMB Action Parameters Action Client: Client File Download Session Description Downloads a file from the specified URI. Action Parameter Transaction Flag Challenge Key Valid Values Start, Continue, End, or Start and End A string value consisting of alphanumeric and/or special characters. A string value consisting of alphanumeric and/or special characters. A string value consisting of alphanumeric and/or special characters. A string value consisting of alphanumeric and/or special characters. 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295 An uploaded file
Tree Name
Tree Password
Service
File ID File Read Size Compact Mode Simulation Server File Data URI
401
Table 8-75: SMB Action Parameters Action Authenticate Description Action Parameter Transaction Flag Protocol Version Share Name Valid Values Start, Continue, End, or Start and End SMB or SMB2 Mandatory Parameter The SMB or SMB2 Share Name to authenticate against. A local User Name on the remote system that has the appropriate permissions to access the SMB or SMB2 Share Name. The password for the local User Name on the remote system that has appropriate permissions to access the SMB or SMB2 Share Name. Start, Continue, End, or Start and End
User Name
Password
Writes the File Name to the SMB or SMB2 Share Name, superseding the file if it already exists.
Transaction Flag
File Name
The File Name to be appended on the SMB or SMB2 Share Name. 1 100,000,000 Random file or a file that you upload.
402
Table 8-75: SMB Action Parameters Action Append to file on share Description Appends the File Contents to the end of File Name on the SMB or SMB2 Share Name, opening the file if it already exists or creating a new file if it does not exist. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End
File Name
The File Name to be appended on the SMB or SMB2 Share Name. 1 100,000,000 Random file or a file that you upload. Start, Continue, End, or Start and End
Minimum Random Filesize Maximum Random Filesize File Contents Verify file from share Verifies the File Contents against data read from File Name on SMB or SMB2 Share Name. Transaction Flag
File Name
The File Name to be appended on the SMB or SMB2 Share Name. Random file or a file that you upload.
File Contents
403
Table 8-75: SMB Action Parameters Action Delete file from share Description Deletes the File Name from the SMB or SMB2 Share Name. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End
File Name
The File Name to be appended on the SMB or SMB2 Share Name. Start, Continue, End, or Start and End
Disconnect
Disconnect from the SMB or SMB2 Share Name and logoff local User Name. This should be the last action.
Transaction Flag
Transaction Flag
404
Table 8-76: SMTP Action Parameters Action Client: Send EHLO Server: Server 250 Hello Client: Send FROM Description Sends an EHLO greeting to the server. Send a 250 Server greeting message. Sends a FROM command to the server. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End Start, Continue, End, or Start and End Start, Continue, End, or Start and End True or False Sender name Domain name True or False Up to 128 alphanumeric and/or special characters Up to 5 alphanumeric and/or special characters Up to 5 alphanumeric and/or special characters Accepted or Unaccepted Start, Continue, End, or Start and End
Transaction Flag Transaction Flag Use AUTH FROM Constant Username Domain Username Range Username Prefix
Username Range Start Username Range End FROM Response Server: Send OK Respond to client FROM message with OK. Transaction Flag
405
Table 8-76: SMTP Action Parameters Action Client: Send RCPT Description Sends an RCPT command to the server. Action Parameter Transaction Flag Coalesce addresses into single RCPT message Constant RCPT Username RCPT Cc Username RCPT Bcc Username Use Local Domain RCPT Domain RCPT Username Range RCPT Username Prefix RCPT Username Range Start RCPT Username Range End RCPT Response Client: Send DATA This action begins a DATA transaction. No message data is passed in this message. See Message Data. Send a 354 START message to the client. Transaction Flag Valid Values Start, Continue, End, or Start and End True or False
Recipient username User who will receive a Carbon Copy of the message User who will receive a Blind Carbon Copy of the message True or False Recipient domain True or False Up to 128 alphanumeric and/or special characters Up to 5 alphanumeric and/or special characters Up to 5 alphanumeric and/or special characters True or False Start, Continue, End, or Start and End
Transaction Flag
406
Table 8-76: SMTP Action Parameters Action Client: Message Data Description The actual body of the message to be sent by the client. Action Parameter Transaction Flag Valid Values Start, Continue, End, or Start and End True or False
DATA Sequence If only partial communication is required, select the appropriate configuration under "DATA Sequence." Use SMTP FROM in Envelope Envelope From Header Use RCPT TO in Envelope Envelop To Header Subject
True or False Up to 256 alphanumeric and/or special characters True or False Recipient address Up to 256 alphanumeric and/or special characters A file that contains the mail message
Mbox Message If an "Mbox Message" resource file is selected, that file will constitute the entire message, including headers.
407
Table 8-76: SMTP Action Parameters Action Description Action Parameter Mbox File If an "Mbox File" is provided, each session will use a message randomly chosen from that mbox file, overriding other options. (Note that mbox files must conform to the "mboxrd" file format standard to be processed correctly.) Text Content-Type If an attachment is selected, or if the "Text ContentType" and "Text Transfer-Encoding" options are selected (as they are by default), then a MIMEEncoded multipart/ mixed message will be generated. Text TransferEncoding If an attachment is selected, or if the "Text ContentType" and "Text Transfer-Encoding" options are selected (as they are by default), then a MIMEEncoded multipart/ mixed message will be generated. Valid Values A file that contains multiple messages
408
Table 8-76: SMTP Action Parameters Action Description Action Parameter Static Message Text File If "Static Message Text File" or "Static Text" is chosen for an email message, choices for keywords and word counts will be ignored. Otherwise, a random message will be generated, using the specified language word list and, if provided, all the words from a comma-delimited list of Keywords. If a Custom Dictionary is selected, the supplied dictionary file should be newline delimited, with one word (or phrase) per line. Valid Values A file containing the data used to generate random text
409
Table 8-76: SMTP Action Parameters Action Description Action Parameter Static Message Text If "Static Message Text File" or "Static Text" is chosen for an email message, choices for keywords and word counts will be ignored. Otherwise, a random message will be generated, using the specified language word list and, if provided, all the words from a comma-delimited list of Keywords. If a Custom Dictionary is selected, the supplied dictionary file should be newline delimited, with one word (or phrase) per line. Language Valid Values A string containing the data used to generate random text
Custom, English, French, German, Italian, Spanish File name Integer Integer String up to 4096 bytes File name True or False True or False
Custom Dictionary Message Wordcount Min Message Wordcount Max Keyword List Attachment Filename Static Attachment Random Attachment
410
Table 8-76: SMTP Action Parameters Action Description Action Parameter Random File Size Controls the size of a randomly generated attachment before it is encoded. Random File Size Min Controls the size of a randomly generated attachment before it is encoded. Random File Size Max Controls the size of a randomly generated attachment before it is encoded. Attachment Content-Type Valid Values 0 52,428,800
Integer
Integer
411
Table 8-76: SMTP Action Parameters Action Client: Conditional Request Description Defines the specific responses you expect to see from the DUT. Matches responses and checks whether response has the pattern in the payload. Action Parameter Transaction Flag, Available Actions Wait for Success Valid Values Start, Continue, End, or Start and End Select to wait for a response that matches the selected pattern. The pattern you want to match against. Select to match a simple string pattern. Select to match a regular expression pattern. Select to match a predefined pattern. Delay, Raw Message, Verify Rows, Goto, Close, Fail, Login, Login Request, Authenticate, Use Database, Query, Quit No Response Start, Continue, End, or Start and End
Sends email. Sends a 250 Queued response. Respond that the transmitted message has been queued. Sends a QUIT message to the server. Sends a 221 BYE response and closes the connection.
Transaction Flag
Start, Continue, End, or Start and End Start, Continue, End, or Start and End
Transaction Flag
412
Specific Trap Type Server: Inform Request Simulates a single inform request. Fields left blank will generate random values. Transaction Flag Community String Request ID Object ID
413
Change IP Flag
414
Table 8-80: Sun RPC Action Parameters Action Server: Reply Description Sends a reply message to the client. Action Parameter Transaction Flag Transaction ID (XID) Reply State Verifier Flavor Verifier Length Accept State Payload Valid Values Start, Continue, End, or Start and End 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295 0 4,294,967,295 Enter up to 50 alphanumeric and/or special characters to define the payload.
415
Table 8-81: Sybase Action Parameters Action Server: Delay Description Delays the servers response for the amount of time specified for Number of milliseconds Action Parameter Transaction Flag Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Database Username Valid Values Start, Continue, End, or Start and End 1 1,000,000
Client: Login
Enter up to 255 alphanumeric and/or special characters for the username that will be used to log into the database. Enter up to 255 alphanumeric and/or special characters for the database users password. Enter up to 255 alphanumeric and/or special characters for the databases hostname.
Database Password
Database Hostname
416
Table 8-81: Sybase Action Parameters Action Client: SQL Query Description Simulates an SQL query and response Action Parameter SQL Query Valid Values Alphanumeric and/or special characters can be used to define the SQL query. 0 4,294,967,295 0 4,294,967,295 Enter up to 255 alphanumeric and/or special characters to define the names of the columns from which data will be returned. If the SQL Query references any column names, then you should enter those column names in this field. The information listed here must be commadelimited format. Enter up to 255 alphanumeric and/pr special characters to define the table name referenced in the SQL query. If the SQL query is random (or left blank), the table name will be consistent with the randomly generated FROM clause of the SQL statement.
Table Name
417
Server: Delay
Delays the servers response for the amount of time specified for Number of milliseconds
418
Table 8-82: Syslog Action Parameters Action Client: Syslog Message Description Sends a Syslog entry to the server Action Parameter Transaction Flag Process ID (PID) Priority Timestamp Valid Values Start, Continue, End, or Start and End 0 4,294,967,295 0 4,294,967,295 Use alphanumeric and/or special characters to define the timestamp for the log entry Use alphanumeric and/or special characters to define the tag for the log entry Use alphanumeric and/or special characters to define the contents of the log entry
Tag
Content
419
Table 8-83: TDS Action Parameters Action Server: Delay Description Delays the servers response for the amount of time specified for Number of milliseconds Action Parameter Transaction Flag Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Username Valid Values Start, Continue, End, or Start and End 1 1,000,000
Client: Login
Enter up to 14 special and/or alphanumeric characters for the username that will be used to log into the Oracle Database Server. Enter up to 14 special and/or alphanumeric characters for the password that will be used to log into the Microsoft SQL Server. Enter up to 63 special and/or alphanumeric characters for the server name. Enter up to 63 special and/or alphanumeric characters for the client name. Enter up to 63 special and/or alphanumeric characters to define the database name.
Password
Server Name
Client Name
Database Name
420
Table 8-83: TDS Action Parameters Action Client: Query: Select Description Executes a SELECT statement. Action Parameter SELECT Modifier SELECT Modifier Value Valid Values True or False Enter up to 127 special and/or alphanumeric characters to define the SELECT modifier that will be used. If no value is supplied, then a SELECT statement will be randomly generated with the modifier of ALL, DISTINCT, or no modifier. Otherwise, the value supplied will immediately follow the SELECT keyword (e.g., This functionality can be used to create union selections or other complex database queries. The columns to return, or alternatively, an *. If no value is provided, the system generates a random set of column names. The table name from which the resultant rows are returned (e.g., CustomerDB, Users). True or False
Column List
WHERE Comparison
421
Table 8-83: TDS Action Parameters Action Client: Query: Select Description Executes a SELECT statement. Action Parameter WHERE Comparison Value Valid Values Enter up to 127 special and/or alphanumeric characters to define the WHERE comparison that will be used. If supplied, the SELECT statement will include a WHERE comparison clause using the value defined here. If no values are given, a random comparison using one of the columns provided in the SELECT statement is generated (e.g., Username IS NOT NULL, LastLogon BETWEEN '01/01/ 2007' AND '12/31/ 2008'). True or False Enter up to 127 special and/or alphanumeric characters to define the ORDER BY expression that will be used. If supplied, the SELECT statement will include an ORDER BY expression. Do not include the ORDER BY keyword in the expression.
422
Telnet
Table 8-84 on page 423 lists the actions and action parameters for Telnet. Table 8-84: Telnet Action Parameters Action Server: Send Flow Description Sends a telnet flow. Action Parameter None N/A Valid Values
423
Table 8-85: TIME Action Parameters Action Server: Delay Description Delays the servers response for the amount of time specified for Number of milliseconds Action Parameter Transaction Flag Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Date/Time Valid Values Start, Continue, End, or Start and End 1 1,000,000
A date and time in the format of YYYY-MMDD HH:MM:SS; YYYY can be replaced with a value between 1970 and 2035.
424
Table 8-86: TNS Action Parameters Action Server: Delay Description Delays the servers response for the amount of time specified for Number of milliseconds Action Parameter Transaction Flag Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Valid Values Start, Continue, End, or Start and End 1 1,000,000
425
Table 8-86: TNS Action Parameters Action Client: Login Description Performs a login to the Oracle Database Server. Action Parameter Database Username Valid Values Enter up to 14 special and/or alphanumeric characters for the username that will be used to log into the Oracle Database Server. Enter up to 14 special and/or alphanumeric characters for the password that will be used to log into the Oracle Database Server. Enter up to 63 special and/or alphanumeric characters for the server name. Enter up to 63 special and/or alphanumeric characters for the database name. Enter up to 63 special and/or alphanumeric characters for the server OS type. Enter up to 128 special and/or alphanumeric characters for the TNS server banner. Enter up to 63 special and/or alphanumeric characters to define the username for the client.
Database Password
Server Name
Database Name
Server OS
Server Banner
Client Username
426
Table 8-86: TNS Action Parameters Action Client: Login Description Performs a login to the Oracle Database Server. Action Parameter Client Machine Name Valid Values Enter up to 32 special and/or alphanumeric characters to define the client machines name. Enter up to 32 special and/or alphanumeric characters to define the client machines operating system. Enter up to 32 special and/or alphanumeric characters to define the client program path. If no values are provided, a random path is generated appropriate to the OS. Otherwise, the values provided are passed as part of the authentication sequence (e.g., /usr/ local/bin/oracle/). Enter up to 32 special and/or alphanumeric characters to define the client program name. If no values are provided, a random program name is generated appropriate to the OS. Otherwise, the values provided are passed as part of the authentication sequence (e.g., isql.exe). Enter up to 32 special and/or alphanumeric characters to define the clients domain.
Client Machine OS
Client Domain
427
Table 8-86: TNS Action Parameters Action Client: Query: Select Description Executes a SELECT statement using the statement modifier values defined for WHERE Comparison and ORDER BY Expression. Action Parameter Column List Valid Values The columns to return, or alternatively, an *. If no value is provided, the system generates a random set of column names. The table name from which the resultant rows are returned (e.g., CustomerDB, Users). True or False Enter up to 127 special and/or alphanumeric characters to define the WHERE comparison that will be used. If supplied, the SELECT statement will include a WHERE comparison clause using the value defined here. If no values are given, a random comparison using one of the columns provided in the SELECT statement is generated (e.g., Username IS NOT NULL, LastLogon BETWEEN '01/01/ 2007' AND '12/31/ 2008').
428
Table 8-86: TNS Action Parameters Action Client: Query: Select Description Executes a SELECT statement using the statement modifier values defined for WHERE Comparison and ORDER BY Expression. Action Parameter ORDER BY Expression ORDER BY Expression Value Valid Values True or False Enter up to 127 special and/or alphanumeric characters to define the ORDER BY expression that will be used. If supplied, the SELECT statement will include an ORDER BY expression. Do not include the ORDER BY keyword in the expression.
World of Warcraft
Table 8-87 on page 429 lists the actions and action parameters for the World of Warcraft. Table 8-87: World of Warcraft Action Parameters Action Client: Delay Description Delays the clients response for the amount of time specified for Number of milliseconds Action Parameter Transaction Flag Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Valid Values Start, Continue, End, or Start and End 1 1,000,000
429
Table 8-87: World of Warcraft Action Parameters Action Server: Delay Description Delays the servers response for the amount of time specified for Number of milliseconds Action Parameter Transaction Flag Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Valid Values Start, Continue, End, or Start and End 1 1,000,000
430
Table 8-88: YIM Action Parameters Action Server: Delay Description Delays the servers response for the amount of time specified for Number of milliseconds Action Parameters Transaction Flag Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Buddy List Valid Values Start, Continue, End, or Start and End 1 1,000,000
Client: Login
A comma-separated list of buddy names can be entered in this field. If this field is defined, the Number of Buddies parameter will be ignored. 0 99 0 4,294,967,295 0 4,294,967,295 Up to 32 alphanumeric and/or special characters can be defined for the peers name. Up to 32 alphanumeric and/or special characters can be defined for the peers name. Use alphanumeric and/or special characters to define the message sent from the user to the peer.
Number of Buddies Client: Chat Simulates a Yahoo IM conversation between a user and a peer. Client Messages Peer Messages Peer Name
Client: IM User
Peer Name
Message
431
Conditional Requests
Table 8-88: YIM Action Parameters Action Server: IM: Peer Description Simulates an instant message from the peer to the user. Action Parameters Peer Name Valid Values Up to 32 alphanumeric and/or special characters can be defined for the peers name. Use alphanumeric and/or special characters to define the message sent from the peer to the user.
Message
Conditional Requests
The Client Simulator component enables you to send a single Super Flow to a server device under test and search for specific responses from the server. In order to do this, you must configure Client Simulator to use a single Super Flow that utilizes Conditional Requests. Conditional Requests enable you to set up three matches for a packet; these matches represent the specific responses (i.e., strings or patterns) that you expect to see from the device under test. The system will process each match listed in the Conditional Request in the order in which it is listed. Additionally, you can define one mismatch for the Conditional Request; this occurs when there is no response from the DUT. It is important to understand the precedence employed by Client Simulator when running Client Simulator tests with Conditional Requests. Conditional Request allows up to three strings to be specified. The first string has precedence over the second string; the second string has precedence over the third string. However, the first packet has precedence over the second packet, and the second packet has precedence over the third packet. Because Client Simulator places packets above strings in the hierarchy, if the third string shows up in the first packet, then that is the match (out of the three) that is counted. Conversely, if the first string shows up in the third packet, that match will not be counted. The first successful string match will increment the appropriate counter. If there is no match in the server response, the no match counter gets incremented. This is true even when you have Wait for Success selected. Exception: if the server response is chunked, that means there are more packets coming from the server. Client Simulator will defer incrementing the no match counter until the last packet in the chunked response is received, or until there is a match.
432
Conditional Requests
When using Conditional Request without Wait for Success being selected, be aware that the Conditional Request will consume the first packet. This results in the first packet being unavailable for other actions such as File Verify. Note: The BreakingPoint Storm CTM does not decode chunked data for Verify actions. Tests that use chunked data will fail if a Verify action is used. The Time out field works in conjunction with the Wait for Success option. When the Wait For Success option is checked, the Time out field indicates the number of seconds that Conditional Request will wait for the next packet. The server will continue to send packets until the timeout period ends, or until a match is found. When the Wait For Success option is not checked, the Time out field indicates the number of seconds that the Conditional Request will wait for the first packet from the server. Once the first packet arrives, the Conditional Request will determine whether that packet is a match or a mismatch. The first packet is the only packet used in this scenario. A zero (0) in the Time out field will cause the Conditional Request to continue to wait (indefinitely) until a packet arrives.
Matches
For each match, you will need to specify the string the system should look for (e.g., 200 OK). If the string matches, then the system will respond with the Action you have specified for that string (e.g., Server: Response 200 (OK)). When specifying the Action for the string match, you can configure the Action Parameters as you normally would. For more information on Action Parameters, see the section Actions and Action Parameters on page 175. The Client Simulator component will track the number of responses from the server that match the string matches defined within the Conditional Requests for the Super Flow. This data will be available in the Response Summary of the test report.
Mismatches
A mismatch occurs when the Conditional Request never receives a response from the DUT. If Client Simulator does not receive a response within the time-out period specified in the Timeout field, then Client Simulator will act as if it has received a response with no match. In the case of a mismatch, Client Simulator will proceed to the action defined for the mismatch. This prevents Client Simulator from remaining in the waiting state. Note: If you specify a timeout value of 0, the component will wait for a response from the DUT.
433
Conditional Requests
Before creating a Conditional Request, please review the following restrictions and guidelines: Only the HTTP and SMTP protocols support Conditional Requests. Currently, several of the protocols list Conditional Requests as an Action, but they are not fully supported by these protocols. Only one Conditional Response Action is supported per Super Flow. The Regex option allows you to use PCRE syntax to perform advanced matching. When using Conditional Request without Wait for Success being selected, be aware that the Conditional Request will consume the first packet. This results in the first packet being unavailable for other actions such as File Verify. When Wait for Success is selected, the Conditional Request will process subsequent packets until it finds a match, or until the timeout period is exceeded. The Conditional Request action should always follow the server action. The Network Processor stops searching for packets once the Conditional Request action has occurred. Placing the Conditional Request before the server action (or the action that generates the data) can cause a no match to erroneously occur. To create a Conditional Request: 1. Select Managers > Application Manager from the Menu bar. 2. Select the Super Flows tab. 3. Select an existing Super Flow or create a new Super Flow. Note: Only Super Flows based on the HTTP and SMTP protocols currently provide full support for Conditional Requests. 4. Select a flow from the Define Flows area. 5. Click the Action drop-down button, located under the Define Actions area. 6. Select Client: Conditional Request. 7. Click the Edit the selected action parameters button. Note: A new window will pop-up, enabling you to define the string matches and/or mismatch for the Super Flow. Select Wait for Success if you want the BreakingPoint Storm CTM to wait for a response that matches the configured patterns. If you do not select this option, the BreakingPoint Storm CTM will examine the first packet in the response. If a match is not found, the BreakingPoint Storm CTM will move on to the next action. 8. Enter the string value you want to match in the Match field. 9. Select Simple String or Regex. 10. Click the Actions drop-down button. 11. Select the action you would like to occur if the string is a match. 12. Click the Edit the selected action parameters button to make any modifications to the Actions parameters. For more information on Action Parameters, see the section Actions and Action Parameters on page 175. 13. Repeat steps 8 through 11 for each additional match you would like to add. 14. Enter the amount of time the system must wait before aborting the Super Flow when it encounters a mismatch in the Timeout field. Note: If 0 is defined, then the Super Flow will not be aborted.
434
Conditional Requests
15. Click the Actions drop-down button. 16. Select the action you would like to occur when a mismatch occurs. 17. Click the Edit the selected action parameters button to make any modifications to the Actions parameters. 18. Click the Apply Changes button when done.
1 - 16 0-9
Verify File
File to verify The resource file specified here will be used to verify the response from the server. Transaction Flag
Log as Target
While configuring a Lawful Intercept test, it may be necessary to generate a target Super Flow that does not contain a needle. Including this action in the Super Flow will cause a Lawful Intercept test to log the presence of the Super Flow as if it contained a needle.
435
Conditional Requests
Table 8-89: Conditional Request Action Parameters Action Add Flow Dictionary Description Provides the ability to add a dictionary to the flow to which it belongs. Parameters Dictionary ID The identifier by which this dictionary is referenced. Dictionary File The name of the file containing entries to choose from. Up to one thousand entries will be read from the specified file. Dictionary Delimiter Type The type of delimiter between entries. Dictionary Custom Delimiter The delimiter for the custom dictionary file. Available file Valid Values
Regular Expression
In addition to simple string matching, the regular expression (Regex) option allows you to match test strings using the advanced capabilities of Perl Compatible Regular Expressions (PCRE). With the Regex option, you can match strings and substrings in data packets as well as capture the data in those packets. Once the data has been captured, it can be placed into a set of token variables that may be reused later within the Super Flow. This allows support for HTTP redirects, persistent cookies, and items that require extracting data from either the server or an inline device. Note: Releases 1.4.1 and higher of the BreakingPoint Storm CTM use PCRE version 7.8 functionality. Please see the latest PCRE documentation for acceptable PCRE syntax patterns.
436
Load Profiles
9 Load Profiles
This section covers: Load Profiles Load Profile Graph
Load Profiles
From the Parameters tab of a Session Sender, Application Simulator, Client Simulator, and Recreate test, you can customize the attributes of the ramp up, steady-state, and ramp down phases that occur during the test. The Parameters tab allows you to set common configurations for the three phases such as the data rate, maximum simultaneous sessions, session rate, and data rate; however, it does not give you granular control over each phase in the test, nor does it provide you with the ability to create multiple phases. For more granular control over each phase, you can use Load Profiles. This feature allows you to set up multiple steady-state phases and control the attributes and behavior of each phase. A Load Profile consists of multiple phases: each phase is based on a phase type, represents a specific time frame, and determines the behavior of the sessions that are opening and/or closing during that time frame. You can further configure each phase by setting the maximum number of sessions, the session rate, and the data rate. All the settings are only applicable for that particular phase. Each Load Profile must have one ramp up, one ramp-down phase, and at least one steady-state phase. By default, all Load Profiles will have a Ramp Up and Ramp Down phase. You can add multiple steady-state phases to the Load Profile; however, there is a 300 phase limit for each Load Profile. The controllable attributes for the phases include the following: phase type, phase duration, session behavior, maximum number of sessions, maximum number of sessions per second, and data rate. The Load Profile parameters you specify will override the configurations on the Parameters tab. See the area called Create New Phase on Figure 9-1 on page 438; this area shows all the configurable parameters for a Load Profile.
437
Load Profiles
The system offers four default Load Profiles you can use if you do not want to create your own. You can use these default Load Profiles as is, or you can tweak the existing settings to match your needs. See Table 9-1 on page 438 for a listing of default Load Profiles and their descriptions. Table 9-1: Default Load Profiles Load Profile BreakingPoint 10K Maximum Megabits per second Description This Load Profile contains 11 phases and is useful if you want to increment the data rate for each phase until it reaches the maximum data rate. The test will ramp up at 1,000 Mbps. During each steady-state, the system will increment 1,000 Mbps until it reaches 10 Gbps, and it will maintain 50,000 sps and 50,000 maximum simultaneous sessions for each phase. During ramp down, the system will drop to 9,000 Mbps. You must use the Small Network or Medium Network preset for the test to get the expected results for this Load Profile. The preset must be selected before you choose this Load Profile for the test. To select the Small Network or Medium Network, go to the Test Edit screen; click the Presets tab; select Small Network or Medium Network; and click the Apply Changes button. After you have done this, you can go to the Parameters tab to choose this Load Profile.
438
Load Profiles
Table 9-1: Default Load Profiles Load Profile BreakingPoint 1K Maximum Megabits per second Description This Load Profile contains 11 phases and is useful if you want to increment the data rate for each phase until it reaches the maximum data rate. The test will ramp up at 100 Mbps. During each steady-state, the system will increment 100 Mbps until it reaches 1 Gbps, and it will maintain 50,000 sps and 50,000 maximum simultaneous sessions for each phase. During ramp down, the system will drop to 900 Mbps. You must use the Small Network or Medium Network preset for the test to get the expected results for this Load Profile. The preset must be selected before you choose this Load Profile for the test. To select the Small Network or Medium Network, go to the Test Edit screen; click the Presets tab; select Small Network or Medium Network; and click the Apply Changes button. After you have done this, you can go to the Parameters tab to choose this Load Profile. BreakingPoint 10K Maximum Simultaneous Sessions This Load Profile contains 152 phases and is useful if you want to gradually increment the maximum number of simultaneous sessions until it reaches 15,000,000. The test will run at 900 Mbps.The system will gradually increment Max Sessions at each steady-state phase until it reaches the maximum number of simultaneous sessions supported by the system. You must use the Small Network or Medium Network preset for the test to get the expected results for this Load Profile. The preset must be selected before you choose this Load Profile for the test. To select the Small Network or Medium Network, go to the Test Edit screen; click the Presets tab; select Small Network or Medium Network; and click the Apply Changes button. After you have done this, you can go to the Parameters tab to choose this Load Profile.
439
Load Profiles
Table 9-1: Default Load Profiles Load Profile BreakingPoint 1K Maximum Simultaneous Sessions Description This Load Profile contains 152 phases and is useful if you want to gradually increment the maximum number of simultaneous sessions until it reaches 5,000,000. The test will run at 900 Mbps.The system will gradually increment Max Sessions at each steady-state phase until it reaches the maximum number of simultaneous sessions supported by the system. You must use the Small Network or Medium Network preset for the test to get the expected results for this Load Profile. The preset must be selected before you choose this Load Profile for the test. To select the Small Network or Medium Network, go to the Test Edit screen; click the Presets tab; select Small Network or Medium Network; and click the Apply Changes button. After you have done this, you can go to the Parameters tab to choose this Load Profile. BreakingPoint Default This Load Profile contains three phases: Ramp Up, Phase 1, and Ramp Down. This Load Profile is useful because it essentially provides a blank template for creating additional phases. The system will transmit traffic at a constant rate of 900 Mbps. When the test ramps up, the system will open 500,000 sessions at a rate of 50,000 sps. Once the system reaches steadystate (Phase 1), it will keep the 50,000 sessions open for 28 seconds. During the ramp down phase, all opened sessions will be closed.
440
Load Profiles
Table 9-1: Default Load Profiles Load Profile BreakingPoint Maximum Sessions per second Description This Load Profile is only available for Session Sender. It contains 153 phases and is useful if you want to gradually increment the session rate until it reaches the maximum session rate supported by the system. The system will transmit traffic at a constant rate of 1,000 Mbps. When the test ramps up, the system will open 50,000 sessions at a rate of 5,000 sps. It will hold the 50,000 simultaneous sessions at 5,000 sps during the first steadystate. After the first steady-state (Phase 1), the system will increment Sessions Per Second by 3,300 for each new steady-state phase. During ramp down, the system will close all open sessions. You must use the Maximum Possible preset for the test to get the expected results for this Load Profile. The preset must be selected before you choose this Load Profile for the test. To select the Maximum Possible preset, go to the Test Edit screen; click the Presets tab; select Maximum Possible; and click the Apply Changes button. Before you can choose the Load Profile, you will need to go to the Parameters tab and set the following parameter configurations: Segment Size Distribution.Distribution type constant Segment Size Distribution.Minimum value 1 Payload Packets Per Session 1 Payload.Type 1
Phases
The previous section discussed the different phases in a Session Sender, Application Simulator, and Recreate test. This section will provide a brief overview of the different phases in a test so that you have a better understanding of how each phase works. Ramp up Phase During the ramp up phase, the system will open as many connections as possible, based on the values input for the phase duration, sessions per second, and maximum number of simultaneous sessions. For the system to open the maximum number of simultaneous sessions, you will need to determine the value to input for session rate and the duration of
441
Load Profiles
the ramp up phase. If you do not allot enough time or set the necessary session rate, the system will not open the maximum number of simultaneous sessions. You can use the following equation to get the maximum number of sessions to open:
Maximum Simultaneous Sessions = Phase Duration x Sessions Per Second
For example, if you want to open 5,000,000 simultaneous sessions at a rate of 500,000 sessions per second, you will need to set the ramp up duration to 10 seconds. Note: Since the system can only have one ramp up phase, you may need to use steadystate phases to replicate ramp up behavior. For example, if you want to increase the number of simultaneous sessions that were opened during the ramp up phase from 1,000,0000 to 2,000,000, you may want to add a steady-state phase ramps up to 2,000,000 sessions, and then add another steady-state phase that maintains those 2,000,000 sessions for the desired amount of time. For more information on steadystate phases, see the section Steady-State Phase on page 442. Steady-State Phase Typically, during the steady-state phase, the system will open and close sessions at the specified session rate, while maintaining the maximum number of sessions opened during the ramp up phase. So, if the system opened 5,000,000 connections during the ramp up phase, the system will open and close sessions so that it maintains that number of connections. With Load Profiles, you can create multiple steady-state phases, so it is possible to have steady-state phases that are maintaining a certain number of sessions and steady-state phases that are ramping up or ramping down to a certain number of sessions. Note: If you need to use steady state phases to replicate ramp up behavior, you will need choose Hold Session Open as the phase behavior. The following example sets up a Load Profile configuration that ramps up to 50,000 sessions, maintains the 50,000 sessions for 10 seconds, and then ramps up to 100,000 sessions. After the test reaches 100,000 sessions, it will keep those sessions open for 10 seconds. Table 9-2: Ramp Up Parameter Duration Max Sessions Sessions Per Second 10 50,000 50,000 Value
442
Load Profiles
Table 9-3: Phase 1 (Steady-State) Parameter Duration Max Sessions Sessions Per Second Table 9-4: Phase 2 (Steady-State) Parameter Duration Max Sessions Sessions Per Second Table 9-5: Phase 3 (Steady-State) Parameter Duration Max Sessions Sessions Per Second Table 9-6: Ramp Down Parameter Duration Max Sessions Sessions Per Second 1 0 50,000 Value 10 100,000 50,000 Value 10 100,000 50,000 Value 10 50,000 50,000 Value
The graph shown in Figure 9-2 on page 444 is generated using these configurations and a constant data rate of 900. As you can see, the graph for Max Sessions looks like a stair case. Whenever you use constant values for the parameters, with one variable value, the graph that tracks the variable value will resemble a staircase.
443
Load Profiles
Ramp Down Phase During the ramp down phase, the system will close all open sessions. No new sessions will be opened.
444
Load Profiles
6. Click the Edit link located below the Load Profile drop-down menu. 7. Select a phase from the Phases list. Note: If you do not select a phase from the Phases list and you are adding a phase, the system will add the phase before the Ramp Down phase. 8. Do one of the following: If you are modifying the Ramp Up phase, do any of the following:
n
Click the Ramp Up Behavior drop-down button and select one of the following: Full Open If you want the full TCP handshake to be performed when sessions
are opened.
Full Open + Data If you want the full TCP handshake to be performed when ses-
sions are opened and want data to be sent once the sessions are opened.
Full Open + Data + Close If you want the full TCP handshake to be performed
when sessions are opened; data to be sent once the sessions are opened; and sessions to be closed as soon they have finished sending data. Half Open If you want the full TCP handshake to be performed when the sessions are opened, but you want to omit the final ACK. SYN Only If you only want to send SYN packets.
n n
Enter an integer between 0 1,000,000 in the Duration field. This represents the dura-
the maximum number of sessions that can be concurrently open at any given time. Please note that the maximum number of sessions supported depends on whether you are using a 1 Gb or 10 Gb blade. Enter an integer between 1 750,000 in the Sessions Per Second field. This represents the rate at which connections are being opened and closed. Please note that the maximum number of sessions supported depends on whether you are using a 1 Gb or 10 Gb blade. Click the Data Rate Scope drop-down button and select one of the following:
Limit Per-Interface Throughput If the client and server interfaces will send and
which means that the total data rate for transmitted and received traffic cannot exceed the defined data rate.
n
Click the Data Rate Unit drop-down button and select one of the following: Megabits per Second Frames per Second
n n
Enter an integer value between 1 10,000 (for Mbps) or 1 148,800,952 (for fps) in
445
Load Profiles
Click the Steady-State Behavior drop-down button and select one of the following: Open and Close Sessions If you want existing sessions to close as soon as they
session after the session has finished sending data. Once the server has closed the session, the client will send a RST.
n n
Enter an integer between 0 1,000,000 in the Duration field. This represents the dura-
the maximum number of sessions that can be concurrently open at any given time. Please note that the maximum number of sessions supported depends on whether you are using a 1 Gb or 10 Gb blade. Enter an integer between 1 750,000 in the Sessions Per Second field. This represents the rate at which connections are being opened and closed. Please note that the maximum number of sessions supported depends on whether you are using a 1 Gb or 10 Gb blade. Click the Data Rate Scope drop-down button and select one of the following:
Limit Per-Interface Throughput If the client and server interfaces will send and
which means that the total data rate for transmitted and received traffic cannot exceed the defined data rate.
n
Click the Data Rate Unit drop-down button and select one of the following: Megabits per Second Frames per Second
n n
Enter an integer value between 1 10,000 (for Mbps) or 1 148,800,952 (for fps) in
Select an existing steady-state phase from the Phases list. Click the Add Phase (+) button located below the Phases list. Click the Steady-State Behavior drop-down button and select one of the following: Open and Close Sessions If you want existing sessions to close as soon as they
session after the session has finished sending data. Once the server has closed the session, the client will send a RST.
446
Load Profiles
n n
Enter an integer between 0 1,000,000 in the Duration field. This represents the dura-
the maximum number of sessions that can be concurrently open at any given time. Please note that the maximum number of sessions supported depends on whether you are using a 1 Gb or 10 Gb blade. Enter an integer between 1 750,000 in the Sessions Per Second field. This represents the rate at which connections are being opened and closed. Please note that the maximum number of sessions supported depends on whether you are using a 1 Gb or 10 Gb blade. Click the Data Rate Scope drop-down button and select one of the following:
Limit Per-Interface Throughput If the client and server interfaces will send and
which means that the total data rate for transmitted and received traffic cannot exceed the defined data rate.
n
Click the Data Rate Unit drop-down button and select one of the following: Megabits per Second Frames per Second
n n
Enter an integer value between 1 10,000 (for Mbps) or 1 148,800,952 (for fps) in the Data Rate field Click the Create button.
Select an existing steady-state phase from the Phases list. Click the Clone Phase button located below the Phases list. Click the Steady-State Behavior drop-down button and select one of the following: Open and Close Sessions If you want existing sessions to close as soon as they
session after the session has finished sending data. Once the server has closed the session, the client will send a RST.
n n
Enter an integer between 0 1,000,000 in the Duration field. This represents the dura-
the maximum number of sessions that can be concurrently open at any given time. Please note that the maximum number of sessions supported depends on whether you are using a 1 Gb or 10 Gb blade. Enter an integer between 1 750,000 in the Sessions Per Second field. This represents the rate at which connections are being opened and closed. Please note that the maximum number of sessions supported depends on whether you are using a 1 Gb or 10 Gb blade.
447
Load Profiles
Click the Data Rate Scope drop-down button and select one of the following: Limit Per-Interface Throughput If the client and server interfaces will send and
which means that the total data rate for transmitted and received traffic cannot exceed the defined data rate.
n
Click the Data Rate Unit drop-down button and select one of the following: Megabits per Second Frames per Second
n n
Enter an integer value between 1 10,000 (for Mbps) or 1 148,800,952 (for fps) in the Data Rate field Click the Apply button.
Click the Ramp Down drop-down button and select one of the following: Full Close If you want the full TCP close to be performed on all sessions. Half Close If you want the full TCP close to be performed on all sessions, but you
Enter an integer between 0 1,000,000 in the Duration field. This represents the dura-
the maximum number of sessions that can be concurrently open at any given time. Please note that the maximum number of sessions supported depends on whether you are using a 1 Gb or 10 Gb blade. Enter an integer between 1 750,000 in the Sessions Per Second field. This represents the rate at which connections are being opened and closed. Please note that the maximum number of sessions supported depends on whether you are using a 1 Gb or 10 Gb blade. Click the Data Rate Scope drop-down button and select one of the following:
Limit Per-Interface Throughput If the client and server interfaces will send and
which means that the total data rate for transmitted and received traffic cannot exceed the defined data rate.
n
Click the Data Rate Unit drop-down button and select one of the following: Megabits per Second Frames per Second
n n
Enter an integer value between 1 10,000 (for Mbps) or 1 148,800,952 (for fps) in
448
9. Repeat steps 7-8 until you have modified and/or added all the desired phases. 10. Click the Save As button to save the Load Profile as a new one. Note: If you were modifying a non-BreakingPoint Load Profile, you can click the Save button; this will override the settings for that particular Load Profile. If you want to save it as a new Load Profile, you should use the Save As button.
As you can see, the blue line tracks the maximum number of simultaneous sessions, the orange line tracks the session rate, and the green line tracks the data rate. When you have a phase selected from the Phases list, you will see red lines displayed on the graph. The red lines will highlight the phase that is currently selected and the graphs that are associated with that phase. If you hover over each graph, a pop-up window will display, showing the information for that stat at that point in time. This information includes the value for the stat and the point in the test in which the test should reach that value. There is a set of numbers on the left and right y-axis of the graph. The set of numbers along the left y-axis correlates to Max Sessions; the set of numbers along the right y-axis correlates to Sessions Per Second (see Figure 9-4 on page 450).
449
Note: If the graph can show the data rate, then the Data Rate graph will use the values along the right y-axis. However, the data rate graph will typically hover near 0, unless the values specified for Max Sessions and Sessions Per Second are close in range to the data rate.
450
Packet Buffer
10 Packet Buffer
This section covers Packet Buffer Exporting a Packet Buffer Canceling a Packet Buffer Export Importing a Capture File Packet Filter
Packet Buffer
The BreakingPoint Storm CTMs packet buffer stores all transmitted and received traffic from the last test run. Each port has its own packet buffer with a 2 GB circular buffer limit . Once the buffer limit is met, the system will overwrite the oldest content on the buffer. Note: Each time a new test is run, the BreakingPoint Storm CTM will overwrite the existing content on the packet buffer with the content from the newest test run. The traffic capture starts when the BreakingPoint Storm CTM begins transmitting traffic. Therefore, slow start packets will not be included in the traffic capture because they are transmitted before the BreakingPoint Storm CTM generates traffic. This affects traffic captures for tests running Bit Blaster and Routing Robot.
451
Table 10-1: Export Packet Buffer Callout 1 2 3 4 5 6 7 8 9 10 11 12 Parameter Export Packet Buffer Compress Export Start At Transmit Snaplen Frames Megabytes BPF Filter Receive Export Size Snaplen Megabytes Description Select packet buffer to export Select to compress (gzip) the export Designate a starting point for the export Select to export transmitted traffic The amount of data for each frame that is actually exported Select to start at the frame specified Select to start at the size specified Set filtering with BPF syntax Select to export received traffic Designate a size for the export The amount of data for each frame that is actually exported Express the desired size of the export in Megabytes
452
Table 10-1: Export Packet Buffer Callout 13 14 Parameter Frames BPF Filter Description Express the desired size of the export by using the number of frames preferred Set filtering with BPF syntax
You can do this from the Export Packet Buffer window. Additionally, from this window, you select whether you want to export transmitted and/or received traffic. Each packet buffer holds up to 2 GB of both transmitted and received traffic, so if you only export transmitted traffic, then the total amount of traffic exported will not be 2 GB; instead, it will only be the portion of the total buffer capacity that is comprised of the transmitted traffic. A capture export is a system process, so only one export can be performed at a time, and you can only export capture files from ports with locked reservations. Note: The Export Packet Buffer parameters determine the type and number of packets that will be included in your flows. The parameters do not affect any of the characteristics of the original PCAP file. The original PCAP file will still be available for raw playback after it has been exported to your disk. To export packet buffers: 1. Select Control Center > Device Status from the Menu bar 2. Verify that the ports you would like to export from have locked reservations. Note: To lock a port reservation, simply click on the port. Ports with locked reservations will display a key icon. 3. Click the Packet Export button. 4. Select the Export Packet Buffer for Slot checkbox of each port you would like to export content from. Note: Only ports with locked reservations will be listed. 5. Click the Advanced arrow and perform any of the following: Select Compress Export if you want to compress the export. Enter a numerical value in the Start At field.
n n
Select Megabytes if you want to start exporting at a specific size. Select Frames if you want to start exporting at a specific point in the flow.
Select Megabytes if you want to express the desired size of the export in Megabytes. Select Frames if you want to express the desired size of the export by using the number of frames preferred.
453
Note: The parameters that you select in the Export Packet Buffer affect the subsequent flows, not the raw PCAP files. Select Transmit if you want to export the traffic transmitted by the BreakingPoint Storm CTM.
n n
Set filtering with Berkeley Packet Filtering (BPF) by entering valid BPF syntax in the BPF Filter field. Enter the number of bytes of a given frame you want to export in the Snaplen field.
Select Receive if you want to export the traffic received by the BreakingPoint Storm CTM.
n n
Set filtering with Berkeley Packet Filtering (BPF) by entering valid BPF syntax in the BPF Filter field. Enter the number of bytes of a given frame you want to export in the Snaplen field.
6. Click the Export button. Note: The system will display a progress icon over the ports for which you are exporting content. When you see this icon, it means that the system is placing the content into a file. The file will contain PCAPs for each of the ports for which you exported data. Once the system is done, a save window will display prompting you to either save or open the file. 7. Click the Save button. 8. Navigate to the location to which to save the exported content. 9. Click the Save button. Note: Packet buffer export operations may be lengthy and export approximately at the rate of between 1.4 MB and 2.3 MB per second. Note: When tests that run for three hours or more do not produce enough traffic to rotate the capture buffer, many of the packets at the end of the capture become disordered and display a negative timestamp value. These timestamp values are used to place the buffer into a PCAP file. Negative timestamp values can cause the packet capture to position the packets incorrectly.
454
Table 10-2: Traffic Manager Callout 1 2 Type Min # of Packets Field Description Allows you to select the type of packets to include in your test Allows you to search for a capture file that contains at least a minimum number of packets to include in your test Allows you to search for a capture file that contains no more than a desired maximum number of packets to include in your test Allows you to determine the minimum size packet to include in your test Allows you to determine the maximum size packet to include in your test Allows you to determine the number of results to display per page
Max # of Packets
4 5 6
455
Table 10-2: Traffic Manager Callout 7 Field The Size in Payload Bytes Description This value refers to the total number of TCP and UDP payload bytes imported in the capture file. This value does not reflect the size of the original capture file. The maximum size of an imported capture file is currently 700MB. When importing a capture file larger than 700MB, it will still be possible to replay the entire capture file without modifying it. The total number of packets processed during the capture file import. The total number of TCP and UDP flows processed during the capture file import. The total duration of the capture file in milliseconds. The percentage of total packets imported that were TCP. The percentage of total packets imported that were UDP. The percentage of total packets imported that were fragmented, truncated, or of an invalid size.
8 9 10 11 12 13
456
To import a capture file: 1. Select Managers > Traffic Manager from the Menu bar. 2. Click the Import Capture button. Note: A new window will display, which will allow you upload a PCAP file. 3. Enter a name in the Capture Name field. Note: This will be the name displayed for the PCAP in the Traffic Manager. Note that capture file names can only contain alphanumeric characters, spaces, and dashes. 4. Click the Browse button.
457
5. Navigate to the location of the PCAP file and select the file. 6. Click the Open button. 7. Select the Allow Overwrite option if you want to overwrite an existing file with the same name (as defined in the Capture Name field). 8. Click the Upload button. Note: Be aware that BreakingPoint pads all frames to 60 bytes. As a result, when you look at a packet capture with Wireshark, a frame that has fewer than 60 bytes will show the original number of bytes as captured while showing 60 bytes on the wire. Table 10-3 on page 458 lists the settings for the Upload Capture File screen. The Upload Capture File screen is displayed when you click on the Import Capture button. Table 10-3: Upload Capture File Screen Settings Setting Capture Name (required) BPF Filter (optional) Description The name of the Capture file that will be referenced in the test in Parameters/Capture File. A Berkeley Packet Filter expression that will be applied to the capture file during import. Only packets that match the filter will be imported into our internal file format. Only packets that are under this limit will be imported into our internal file format. The export size can be limited by the number of frames or megabytes. Overwrites any existing import with the same name. The capture file in tcpdump format (which can also be gzipped) to be imported.
458
To rename a capture file: 1. Select Managers > Traffic Manager from the Menu bar. 2. Select the capture file you would like to rename from the Capture File Name list. 3. Enter the new name in the File Name field. 4. Click the Rename button.
459
Packet Filter
Packet Filter
The Packet Filter feature allows you to selectively export specific packets from the buffer rather than having to export all of the packets in the entire dataset. This feature allows the most efficient usage of the interface cards capture history. Packet Filters are set on a perport basis, and will process packets as they are received and only capture the packets that you have chosen to capture. For more information on Packet Filter, see the section Packet Filter.
460
11 Test Components
This section covers: Test Components Overview Bit Blaster Routing Robot Session Sender Security Stack Scrambler Application Simulator Client Simulator Recreate Presets
461
you will want to use the Bit Blaster test component to send traffic at line-rate speeds. If you are testing a router, you will want to use the Routing Robot test component to send routable traffic. If you are testing an IPS, you will want to use a combination of test components such as the Security and Application Simulator test components to send attacks as well as background application traffic. Which network layers do I want to test my device at? The network layer at which you want to test your device will determine which test component(s) you will want to use. The following test components can be used to generate traffic at different network layers: Layer 2: Bit Blaster Layer 3: Routing Robot Layer 4-7: Session Sender, Application Simulator, Recreate, Client Simulator, and Stack Scrambler You can use a combination of test components in your tests; however, you must take any restrictions regarding each test component into account. For information on restrictions when using test components, see the section Restrictions on page 462. What are the goals of testing my device? Each test component has a set of criteria that determines whether or not the DUT will pass or fail a test. The criteria for each test component will vary depending on the goals of the test component; therefore, it is important that you review each test components default pass/fail criteria to determine which test components goals best match your testing needs. You can set your own test criteria if the default pass/fail criteria do not fit your needs. For more information on creating test criteria, see the section Test Pass/Fail Criteria on page 587.
Restrictions
This section details the restrictions that can limit the number of test components you can use per test interface. These restrictions are based on bandwidth, hardware resources, and maximum sessions. Bandwidth There is a bandwidth limitation for each test interface. The available bandwidth for each interface depends on the DUTs link speed and the type of blade you are using. For example, if you are testing a 10 Gb device and you have a 10 Gb blade, you will have a maximum bandwidth availability of 10,000 Mbps. The available bandwidth resources are used up by two factors: the data rate set for each test component and the test components you are using. The data rate is the maximum speed at which traffic can be transmitted to the device. The value set for this parameter will reduce the available bandwidth by that value. For example, if you are testing a 10 Gb
462
device, and you set the data rate to 1,000 Mbps, you will have 9,000 Mbps left to distribute to the other test components on that interface. Some test components will only require bandwidth on the transmitting interfaces but will not use up any bandwidth on the receiving interfaces. These components are Bit Blaster, Routing Robot, and Stack Scrambler. For more additional on bandwidth limitations, see the section Bandwidth on page 462. Note: If the bandwidth for a test interface is oversubscribed, or using more bandwidth than there is available, check the data rate distribution for each test component on that interface. The sum of the rate distribution values for all test components on the interface should not exceed the bandwidth that is available. Hardware Resources The BreakingPoint Storm CTM allots a subset of its hardware resources to the test components. Each test component belongs to one of these subsets of resources, which determine the number of components you can add to a test. Bit Blaster and Routing Robot Each pair of ports on the BreakingPoint Storm CTM can accomodate up to 2 components. Each BreakingPoint Storm CTM blade can support up to 8 Bit Blaster and/or Routing Robot components per blade, depending on the number of ports on the blade. Table 11-1 lists the maximum number of Bit Blaster and Routing Robot components per BreakingPoint Storm CTM blade. Table 11-1: Maximum Number of Bit Blaster and Routing Robot Components Component Bit Blaster Routing Robot Max Number of Components per 1Gb Blade 8 8 Max Number of Components per 10Gb Blade 4 4
When creating your tests, keep in mind that Bit Blaster and Routing Robot can have one or more transmitting (client) interfaces. In addition, each transmitting (client) interface can be used by one or more Bit Blaster or Routing Robot component. Routing Robot tests that are run with Network Neighborhood configurations have an internal limit of four VLAN tags per test. If you configure your test to run with more than four VLAN tags, only four of the VLAN tags will be recognized by Routing Robot and the results of your test will reflect the packets on those four VLAN tags only. Note: IMIX mode cannot be run concurrently with Routing Robot using VLAN tags. Application Simulator, Client Simulator, Recreate, Stack Scrambler, and Session Sender Regardless of the type of network, each pair of ports on the BreakingPoint Storm CTM can accomodate up to 10 components. Each BreakingPoint Storm CTM blade can support up
463
to 20 Session Sender, Application Simulator, Client Simulator, Stack Scrambler, and/or Recreate components. Dynamic-host networks include those configured with either LTE-, GTP-, DHCP- or Multicast-based subnets. All other networks are consided to be nondynamic-host networks. Table 11-2 lists the maximum number of Application Simulator, Client Simulator, Recreate, Stack Scrambler, and Session Sender components in a dynamic-host network for the BreakingPoint Storm CTM. Table 11-2: Maximum Number of Components In a Dynamic-Host Network Component Application Simulator Client Simulator Recreate Session Sender Stack Scrambler Max Number of Components Per Pair of Ports 10 10 10 10 10 Max Number of Components Per Blade 20 20 20 20 20
Table 11-3 lists the maximum number of Application Simulator, Client Simulator, Recreate, Stack Scrambler, and Session Sender components in a non-dynamic-host network for the BreakingPoint Storm CTM. Table 11-3: Maximum Number of Components In a Non-Dynamic-Host Network Component Application Simulator Client Simulator Recreate Session Sender Stack Scrambler Max Number of Components Per Pair of Ports 10 10 10 10 10 Max Number of Components Per Blade 20 20 20 20 20
However, please note that the number of these components that can be added to a test is restricted by the maximum number of sessions defined for each component. The system allows up to 15,000,000 sessions between these components across all ports on a slot. The number of sessions can be distributed between multiple components as long as they do not exceed 15,000,000 sessions total.
464
Bit Blaster
Security Each pair of ports on the BreakingPoint Storm CTM can accomodate up to 4 Security components. Each BreakingPoint Storm CTM blade can support up to 4 Security components. Table 11-4 lists the maximum number of Security components for each pair of ports and per each BreakingPoint Storm CTM blade. Table 11-4: Max Number of Security and Stack Scrambler Components Component Security Max Number of Components per Pair of Ports 4 Max Number of Components per Blade 4
Delayed Start
Each test component has a parameter called Delay Start that enables you to delay the start of a component by specific amount of time. When the test starts, it will first start the components whose Delay Start values are 0. Then, it will wait for the time defined for Delay Start before running the test component whose Delay Start values are not 0.
Bit Blaster
The Bit Blaster test component analyzes a devices ability to handle high speed traffic by identifying whether or not the DUT receives and sends packets without corrupting or dropping them. The Bit Blaster component only transmits layer 2 frames, which means that it can only be used in a switching environment. If the Bit Blaster component is used in a routing or NAT environment, the component will fail and the resulting report will display an error description stating that the DUT was attempting to execute routable traffic. If you want to generate high-speed, routable traffic, you should use the Routing Robot test component Note: The Bit Blaster component will fail in a routing or NAT Network Neighborhood. Use the Routing Robot test component to generate routable traffic. Note: There can be up to 4 Routing Robot and/or Bit Blaster components per slot. Bit Blaster can have multiple transmitting (client) interfaces. For more information on Bit Blaster component restrictions, see the section Hardware Resources on page 463.
Payload
The data portion of the payload starts after the Ethernet header. The data portion of the payload can be defined by configuring any of the Payload parameters listed under the Parameters area.
465
Bit Blaster
Note: Packets generated by the Bit Blaster test component will reserve the last 16 bytes of the payload for internal use by BreakingPoint Systems. These bytes will not contain the payload value that you have defined, if any.
Slow Start
The Slow Start parameter allows you to specify whether the Bit Blaster test component can send a small amount of traffic to the DUT before reaching the full rate of the test. This ensures that switching devices can identify which port to send traffic on. If the Slow Start parameter is enabled, It will slow start the total number of MAC/IP pairs that are used during the test. This will enable the Bit Blaster test component to support any number of MAC/IP tuples. Note: All slow start packets are counted in the Traffic Overview graph. Note: If the test component measures test duration in frames, or the test component uses a constant data rate and frame size, then the length of the test will be adjusted to account for any slow start packets that were sent.
466
Bit Blaster
will continue to be incremented until it either reaches the maximum frame size of 1,024 bytes or 60 seconds have elapsed. Table 11-5: Incrementing Frame Size Example Parameter Size distribution.Size distribution type Size distribution.Minimum value Size distribution.Maximum value Size distribution.Increment N units Size distribution.Every N seconds Test duration.Test duration measured in seconds Test duration.Test duration measured in frames * Range 64 1,024 10 20 Seconds 1 1,000,000,000 Value
* When specifying durations in frames for Bit Blaster and Routing Robot, the minimum number of frames requested will be honored. At times, however, a small number of frames above the requested value may be sent. In most cases, the number of frames sent will be rounded up to a multiple of four. Table 11-6 on page 467 lists the results for this example. By the end of the test, the frame size has reached 94 bytes. Table 11-6: Results from the Incrementing Frame Size Example Time 0 20 40 60 Frame Size 64 74 84 94
467
Bit Blaster
path. The data rate configured for the component is the limit on each of the data paths. Incrementing Data Rate Example Lets set the Data Rate.Increment N units parameter to 50 Mbps and the Data Rate.Every N seconds parameter to 10 seconds. This means that the data rate will be incremented by 50 Mbps every 10 seconds until the maximum data rate has been met or until the test duration elapses. Table 11-7 on page 468 lists the values we have defined for the parameters used in this example. Weve set the minimum data rate to 100 Mbps bytes and the maximum data rate to 900 Mbps. Every 10 seconds, the rate will be incremented by 50 Mbps. The data will continue to be incremented until it either reaches the maximum data rate of 900 Mbps or 60 seconds have elapsed. Table 11-7: Incrementing Data Rate Example Parameter Data Rate.Data rate type Data Rate.Minimum value Data Rate.Maximum value Data Rate.Increment N units Data Rate.Every N seconds Test duration.Test duration measured in seconds Test duration.Test duration measured in frames * Range 100 900 50 10 Seconds 1 1,000,000,000 Value
* When specifying durations in frames for Bit Blaster and Routing Robot, the minimum number of frames requested will be honored. At times, however, a small number of frames above the requested value may be sent. In most cases, the number of frames sent will be rounded up to a multiple of four. Table 11-8 on page 468 lists the results for this example. By the end of the test, the frame size has reached 400 Mbps. Table 11-8: Results for the Incrementing Data Rate Example Time 0 10 20 30 40 Data Rate 100 150 200 250 300
468
Bit Blaster
Table 11-8: Results for the Incrementing Data Rate Example Time 50 60 Data Rate 350 400
Sets the unit of measurement for the test duration. Delays the start of a test component by the time specified. Floating values are supported. Sets the unit of measurement for the data rate. Sets how the component determines the data rate it will use to send its traffic.
1 1,000,000,000
0 4,294,967,295
Frames/second or Megabits/ second Constant Uses Data Rate.Minimum value as the data rate. Random Selects a random value between Data Rate.Minimum value and Data Rate.Maximum value as the data rate. Range Starts at Data Rate.Minimum value and increments until it reaches Data Rate.Maximum value. Once the maximum value is met, the data rate will restart at minimum value.
469
Bit Blaster
Table 11-9: Bit Blaster Parameters Parameter Data Rate.Minimum value Description Sets the maximum throughput that the test will consume over the transmitting and receiving interfaces, if Data Rate.Data rate type is set to Constant. Otherwise, this is the minimum value used by the test if Data Rate.Data rate type is set to Range or Random. Sets the maximum throughput that the test will consume over the transmitting and receiving interfaces; this parameter is used only if Data Rate.Data rate type is set to Range or Random. Sets the rate at which the data rate will increase or decrease. This parameter is used in conjunction with Data Rate. Every N Seconds. Sets the time increment for increasing or decreasing the data rate. This parameter is used in conjunction with Data Rate. Increment N units. Sets whether Bit Blaster uses frame or packets. Valid Values 1 148,800,952 fps 1 10,000 Mbps
-10,000 to 10,000
1 30
Packet or Frame
470
Bit Blaster
Table 11-9: Bit Blaster Parameters Parameter Size distribution.Size distribution type Description Sets how the component determines the frame/ packet sizes it will use in its traffic. Valid Values Constant Uses Size distribution.Minimum value for the frame/packet size. Random Selects a random value between Size distribution.Minimum value and Size distribution.Maximum value for the frame/packet size. The size of the packet/ frame will be randomly selected for every second of the test. Range Starts at Size distribution.Minimum value and increments until it reaches Size distribution.Maximum value. Once the maximum value is met, the packet/ frame size will restart at the minimum value. Size distribution.Minimum value Sets the minimum frame/ packet size, if Size distribution.Size distribution type is set to Constant. Otherwise, this is the minimum value used if Size distribution.Size distribution type is set to Range or Random. Sets the maximum frame/ packet size; this parameter is used only if Size distribution.Size distribution type is set to Range. 64 9216 bytes (frames) 46 9198 bytes (packets)
471
Bit Blaster
Table 11-9: Bit Blaster Parameters Parameter Size distribution.Increment N units Description Sets the number of bytes to increase or decrease the packet size by; this parameter is used in conjunction with Size distribution.Every N Seconds. Sets the time increment (in seconds) for increasing or decreasing the packet size; this parameter is used in conjunction with Size Distribution.Increment N units. Sets how the component determines the payload it will use for its traffic. Valid Values -128 to 128
1 30
Payload.Type
0 Payload is 0s. 1 Payload is all 1s. Random Payload is defined using random Hex values. Increment Payload is defined using ascending values starting at 0. Decrement Payload is defined using descending values starting at 0xff. User-Defined Payload is defined by the user using standard hexadecimal notation. If the payload is smaller than the packet size, then the Hex value will be repeated until it meets the packet size; however, if the payload is a user-defined Hex value that is greater than the packet size, the value will be truncated.
Payload.Data width
Defines the width of the data (in bits) being inserted into the payload.
8, 16, or 32
472
Bit Blaster
Table 11-9: Bit Blaster Parameters Parameter Payload.Data Description Defines the payload; this parameter is defined only if Payload.Type is set to User Defined. This value is inserted after the Ethernet header. Sets how the component overwrites the existing payload. Valid Values Hex values (numbers: 0 9, letters: a f)
Random Inserts a 1-to-endof-payload sequence of random values. The parameters Payload.UDF data width, Payload.UDF length, and Payload.UDF offset must be defined to use this option. Increment Increments the payload starting at 0. Inserts a 1-to-end-of-payload sequence of incrementing values using an 8, 16, or 32 bit width. The parameters Payload.UDF data width, Payload.UDF length, and Payload.UDF offset must be defined to use this option.
Defines the number of bytes from the beginning of the payload to place the UDF data.
0 9,201
473
Bit Blaster
Table 11-9: Bit Blaster Parameters Parameter Advanced Options Payload.UDF length Advanced Options Payload.UDF data width Advanced Options Ethernet type field Description Defines the UDF length (in bytes). Defines the width of the data (in bits) being incremented or decremented. Sets how the component will define the Ethernet Length Type field. Valid Values 1 9,202 8, 16, or 32
Constant Uses the value defined for Ethernet type value in the Ethernet Length Type field. Length Uses the packet length in the Ethernet length/ type field. Bit Blaster will only substitute the Ethernet length/type field with the packets length if the packet is less than or equal to 1,500 bytes in length and VLAN tagging is not used.
Determines what value will be placed in the Ethernet Length Type field. This is defined only if the Ethernet type field is set to Length. You must only used valid Hex values; do not input VIDs or invalid values, or the system will encounter received frames error counts. Specifies whether the component can send a small amount of traffic to the DUT before ramping up to the full rate of the test. This allows switching devices to identify which port to send test traffic.
Slow Start
Yes or No
* When specifying durations in frames for Bit Blaster and Routing Robot, the minimum number of frames requested will be honored. At times, however, a small number of frames above the requested value may be sent. In most cases, the number of frames sent will be rounded up to a multiple of four.
474
Routing Robot
Routing Robot
The Routing Robot test component determines if a DUT routes traffic properly by sending routable traffic from one interface and monitoring the receiving interface to see if the traffic is successfully received. Note: There can be up to 4 Routing Robot and/or Bit Blaster components used on each slot. Routing Robot can have multiple transmitting (client) interfaces. For more information on Routing Robot component restrictions, see the section Hardware Resources on page 463.
Payload
The Routing Robot test component sends packets with a UDP payload. The data portion of the payload can be defined by configuring any of the Payload parameters listed under the Parameters area. Note: Packets generated by the Routing Robot test component will reserve the last 16 bytes of the payload for internal use by BreakingPoint Systems. These bytes will not contain the payload value that you have defined, if any.
Slow Start
The Slow Start parameter allows you to specify whether the Routing Robot test component can send a small amount of traffic to the DUT before reaching the full rate of the test. This ensures that routing devices can identify which port to send traffic on. If the Slow Start parameter is enabled, and the Routing Robot test component will generate more than 64 packets, the test component will send 64 slow start packets prior to the actual test. This will enable the Routing Robot test component to support 64 MAC/IP tuples. If the Slow Start parameter is enabled, and the Routing Robot test component will generate less than 64 packets, then the test component will not send slow start packets at the beginning of the test. Note: All slow start packets are counted in the Traffic Overview graph. Note: If the test component measures the test duration in frames, or the test component uses a constant data rate and frame size, then the length of the test will be adjusted to account for any slow start packets that were sent.
475
Routing Robot
distribution.Maximum value. The test will start by using the maximum frame size and decrement towards the minimum frame size. Note: Routing Robot is not restricted to transmit from one port to another port. One component can have one or more transmitting ports and can have one or more receiving ports. From any transmitting port to any receiving port, there is a data path. The data rate configured for the component is the limit on each of the data paths. The following section will provide an example of a decrementing frame size. For an example of an incrementing frame size and incrementing data rate, see the section Incrementing the Frame/Packet Size on page 466. Decrementing Frame Size Example Lets set the Size distribution.Increment N units parameter to -10 bytes and the Size distribution.Every N seconds parameter to 20 seconds. This means that the frame size decrement 10 bytes every 20 seconds until the minimum frame size has been met or until the test duration elapses. Table 11-10 on page 476 lists the values for the parameters used in this example. The minimum frame size was set to 64 bytes, and the maximum frame size was set to 1,024 bytes. Every 20 seconds, the frame size will decrement by 10 bytes. The frame size will continue to decrement until it either reaches the minimum frame size of 64 bytes or 60 seconds have elapsed. Table 11-10: Decrementing Frame Size Example Parameter Size distribution.Size distribution type Size distribution.Minimum value Size distribution.Maximum value Size distribution.Increment N units Size distribution.Every N seconds Test duration.Test duration measured in seconds Test duration.Test duration measured in frames * Range 64 1,024 -10 20 Seconds 1 1,000,000,000 Value
* When specifying durations in frames for Bit Blaster and Routing Robot, the minimum number of frames requested will be honored. At times, however, a small number of frames above the requested value may be sent. In most cases, the number of frames sent will be rounded up to a multiple of four.
476
Routing Robot
Table 11-11 on page 477 lists the results for this example. By the end of the test, the frame size has reached 34 bytes. Table 11-11: Results from the Decrementing Frame Size Example Time 0 20 40 60 Frame Size 64 54 44 34
477
Routing Robot
continue to decrement until it either reaches the maximum data rate of 100 Mbps or 60 seconds have elapsed. Table 11-12: Decrementing Data Rate Example Parameter Data Rate.Data rate type Data Rate.Minimum value Data Rate.Maximum value Data Rate.Increment N units Data Rate.Every N seconds Test duration.Test duration measured in seconds Test duration.Test duration measured in frames * Range 100 900 -50 10 Seconds 1 1,000,000,000 Value
* When specifying durations in frames for Bit Blaster and Routing Robot, the minimum number of frames requested will be honored. At times, however, a small number of frames above the requested value may be sent. In most cases, the number of frames sent will be rounded up to a multiple of four. Table 11-13 on page 478 lists the results for this example. By the end of the test, the frame size has reached 200 Mbps. Table 11-13: Results for the Decrementing Data Rate Example Time 0 10 20 30 40 50 60 Data Rate 500 450 400 350 300 250 200
478
Routing Robot
1 1,000,000,000
Delays the start of a test component by the time specified. Sets the unit of measurement for the data rate. Sets how the component determines the data rate it will use to send its traffic.
Frames/second or Megabits/ second Constant Uses Data Rate.Minimum value as the data rate. Random Selects a random value between Data Rate.Minimum value and Data Rate.Maximum value as the data rate. Range Starts at Data Rate.Minimum value and increments until it reaches Data Rate.Maximum value. Once the maximum value is met, the data rate will restart at minimum value.
479
Routing Robot
Table 11-14: Routing Robot Parameters Parameter Data Rate.Minimum Data Rate Description Sets the maximum throughput that the test will consume over the transmitting and receiving interfaces, if Data Rate.Data rate type is set to Constant. Otherwise, this is the minimum value used by the test if Data Rate.Data rate type is set to Range or Random. Sets the maximum throughput that the test will consume over the transmitting and receiving interfaces; this parameter is used only if Data Rate.Data rate type is set to Range or Random. Sets the rate at which the data rate will increase or decrease. This parameter is used in conjunction with Data Rate. Every N Seconds. Sets the time increment for increasing or decreasing the data rate. This parameter is used in conjunction with Data Rate. Increment N units. When Data Rate Type is 'Range', this value indicates what to do when reaching the maximum or minimum range value. Sets whether Routing Robot uses frame or packets. Valid Values 1 148,880,952 fps 1 10,000 Mbps
-10,000 to 10,000
1 30
Wrap or Limit
Packet or Frame
480
Routing Robot
Table 11-14: Routing Robot Parameters Parameter Size Distribution.Size Distribution Type Description Sets how the component determines the frame/ packet sizes it will use for its traffic. Valid Values Constant Uses Size distribution.Minimum value for the frame/packet size. Random Selects a random value between Size distribution.Minimum value and Size distribution.Maximum value for the frame/packet size. The size of the packet/ frame will be randomly selected for every second of the test. Range Starts at Size distribution.Minimum value and increments until it reaches Size distribution.Maximum value. Once the maximum value is met, the packet/ frame size will restart at the minimum value. Size Distribution.Minimum Frame/Packet Size Sets the minimum frame/ packet size, if Size distribution.Size distribution type is set to Constant. Otherwise, this is the minimum value used if Size distribution.Size distribution type is set to Range or Random. Sets the maximum frame/ packet size; this parameter is used only if Size distribution.Size distribution type is set to Range. 64 9216 bytes (frames) 46 9198 bytes (packets)
481
Routing Robot
Table 11-14: Routing Robot Parameters Parameter Size Distribution.Increment N Bytes Description Sets the number of bytes to increase or decrease the packet size by; this parameter is used in conjunction with Size distribution.Every N Seconds. Sets the time increment (in seconds) for increasing or decreasing the packet size; this parameter is used in conjunction with Size Distribution.Increment N units. Sets how the component determines the payload it will use for its traffic. Valid Values -128 to 128
1 3600
Payload.Type
0 Payload is 0s. 1 Payload is all 1s. Random Payload is defined using random Hex values. Increment Payload is defined using ascending values starting at 0. Decrement Payload is defined using descending values starting at 0xff. User-Defined Payload is defined by the user using standard hexadecimal notation. If the payload is smaller than the packet size, then the Hex value will be repeated until it meets the packet size; however, if the payload is a user-defined Hex value that is greater than the packet size, the value will be truncated.
Payload.Data Width
Defines the width of the data (in bits) being inserted into the payload.
8, 16, or 32
482
Routing Robot
Table 11-14: Routing Robot Parameters Parameter Payload.User Defined Data Description Defines the payload; this parameter is defined only if Payload.Type is set to User Defined. This value is inserted after the Ethernet header. Sets how the component will overwrite the existing payload. Valid Values Hex values (numbers: 0 9, letters: a f)
Random Inserts a 1-to-endof-payload sequence of random values. The parameters Payload.UDF data width, Payload.UDF length, and Payload.UDF offset must be defined to use this option.
483
Routing Robot
Table 11-14: Routing Robot Parameters Parameter Advanced Options Payload.UDF offset Description Defines the number of bytes from the beginning of the payload to place the UDF data. Defines the UDF length (in bytes). Defines the width of the data (in bits) being incremented or decremented. Establishes the UDP port from which packets are addressed. Establishes the UDP port to which packets are addressed. Defines how the bits will be masked for each packet. This mask is rightjustified and only applies to UDP source ports. Defines how the bits will be masked for each packet. This mask is rightjustified and only applies to UDP destination ports. Valid Values 0 9,173
1 9,174 8, 16, or 32
Source Port
1 65,535
Destination Port
1 65,535
1 16
1 16
484
Routing Robot
Table 11-14: Routing Robot Parameters Parameter Source Port Modifier Description Determines how the UDP source port is modified. Valid Values Constant Uses the port value defined for Source Port. Random Selects a random port value between 1 and 65,535. Increment Starts at the Source Port value and increments the port value by 1. Decrement Starts at the Source Port value and decrements the port value by 1. Destination Port Modifier Determines how the UDP destination port is modified. Constant Uses the port value defined for Source Port. Random Selects a random port value between 1 and 65,535. Increment Starts at the Destination Port value and increments the port value by 1. Decrement Starts at the Destination Port value and decrements the port value by 1. Advanced Options IPv4.TTL Sets the maximum bound on the number-of-hops that an IP datagram can exist in an internet system before it is dropped. Configures the TOS field used for all IP packets. 0 255
0 ff
485
Routing Robot
Table 11-14: Routing Robot Parameters Parameter Advanced Options IPv4.Length field Description Sets how the component determines Total Length field that will be used in the IP header. Valid Values Actual Uses the correct IP datagram length in the Total Length field of the IP header. Constant Uses IPv4.Length value in the Total Length field of the IP header. Advanced Options IPv4.Length value Defines the Total Length field of the IP header when IPv4.Length field is Constant. Sets how the component determines the Checksum field that is used in the IP header. 0 255
Actual Uses the correct checksum in the Checksum field of the IP header. Constant Uses IPv4.Checksum value in the Checksum field of the IP header.
Defines the Total Length field of the IP header when IPv4.Checksum field is Constant. Allows up to 56 bytes of IP option data to be specified. If this parameter is disabled, the UDP header will follow the IPv4 header. Defines the IPv4 option data, if IPv4.Option header field is Enabled. Sets the maximum bound on the number-of-hops that an IP datagram can exist in an internet system before it is dropped. Defines the Traffic Class field used for all IP packets.
0 FFFF
Enabled or Disabled
0 FF
486
Routing Robot
Table 11-14: Routing Robot Parameters Parameter Advanced Options IPv6.Flow label Description Configures the Flow label field used for all IP packets. Values of 0 through FFFF (hexadecimal) are supported. Sets how the component determines the Payload Length field that is used in the IP header. Valid Values 0 FFFF
Actual Uses the correct IP datagram length in the Packet Length field of the IP header. Constant Uses IPv6.Length value in the Packet Length field of the IP header.
Defines the Packet Length field of the IP header when IPv6.Length field is Constant. Sets the IPv6 address prefix using a hexadecimal value. Allows up to 56 bytes to be specified for the IPv6 extension header(s). If this parameter is enabled, IPv6.Next header and IPv6.Extension header data must be defined. If this parameter is disabled, the UDP header will follow the IPv6 header.
0 65,535
Defines the Next header in the IPv6 header if IPv6.Extension header field is Enabled. This is the extension header that will appear first in the Extension header data. Configure this value to 11 to indicate a UDP payload.
0 ff
487
Routing Robot
Table 11-14: Routing Robot Parameters Parameter Advanced Options IPv6.Extension header data Advanced Options UDP.Length field Description Defines the IPv6 extension header(s), if IPv6.Extension header field is Enabled. Determines the UDP datagram length that is placed in the length field of the UDP header. Valid Values Hexadecimal value (up to 56 bytes of data)
Actual Uses the correct UDP datagram length in the length field of the UDP header. Constant Uses the value defined for UDP. Length value in the length field of the UDP header.
Defines the UDP datagram length that is placed in the length field of the UDP header. This parameter is defined only if UDP.Length field is set to Constant. Determines the value that is placed into the checksum field of the UDP header.
0 65,535
Actual Uses the correct UDP checksum in the checksum field of the UDP header. Constant Uses the value defined for UDP.Checksum value in the checksum field of the UDP header. Using a constant UDP checksum may cause the test results to report invalid IP checksums.
Defines the value that is used in the checksum field of the UDP header. This parameter is defined only if UDP.Checksum field is set to Constant. Originate traffic from both the client and server interfaces.
0 FFFF
Bidirectional
True or False
488
Routing Robot
Table 11-14: Routing Robot Parameters Parameter Advanced Options Enable TCP Description Specifies that pre-defined TCP packets will be generated (instead of UDP packets) during the test. Provides alternative packet definitions to the standard UDP packet that is used by the Routing Robot component. They provide a quick method to generate rate based traffic with several different packet types. Specifies whether the component can send a small amount of traffic to the DUT before ramping up to the full rate of the test. This allows switching devices to identify which port to send test traffic. Sets the rate of the slow rate traffic. The rate specified represents the number of frames to be generated per second. This override parameter sets the minimum and maximum number of streams to use for this component. If requested MAC/IP addresses are not symmetric, the number of streams can exceed the Maximum Stream Count. Valid Values True or False
Packet Templates.Type
ICMP Echo Reply ICMP Echo Request TCP TCP Syn Flood UDP
Slow start
Yes or No
0 1,000,000
1 16,777,216
* When specifying durations in frames for Bit Blaster and Routing Robot, the minimum number of frames requested will be honored. At times, however, a small number of frames above the requested value may be sent. In most cases, the number of frames sent will be rounded up to a multiple of four.
489
Session Sender
Session Sender
The Session Sender test component measures a devices ability to set up and maintain a large number of TCP sessions over a period of time. Each session uses a unique combination of source addresses, destination addresses, source ports, and destination ports; therefore, there must be enough MAC/network address combinations allotted in the domain and enough source/destination port combinations to create that many sessions. To ensure that there are enough addresses, verify that the Ethernet and Host Masks allow for enough addresses to be created. For example, the higher the Ethernet and Network Mask, the lower the number of available addresses there will be; therefore, you should set the Ethernet and Network Mask high enough so that there are enough addresses that the system can select from. With the Session Sender test component, you can control: The maximum number of simultaneous TCP sessions The rate at which sessions are opened The duration of the sessions
490
Session Sender
Ramp Up Phase During the ramp up phase, the system will attempt to open the maximum number of simultaneous sessions in the time allotted to the ramp up phase. There are five parameters specifically used to create the ramp up phase: Session Ramp Distribution.Ramp Up Behavior Session Ramp Distribution.Ramp Up Seconds Ramp Up Profile.Minimum Connection Rate Ramp Up Profile.Maximum Connection Rate Ramp Up Profile.Ramp Up Profile Type
The Ramp Up Behavior parameter determines how the sessions are opened, and the Ramp Up Seconds parameter determines how long the ramp up phase lasts. For example, if Ramp Up Behavior is set to Full Open, Ramp Up Seconds is set to 5 seconds, Ramp Up Minimum Connection Rate is set to 50,000, and the Ramp Up Profile Type is set to Calculated, then Session Sender will attempt to open as many sessions as possible, at the rate of (up to) 50,000 sessions per second for 5 seconds. Since Ramp Up Behavior is set to Full Open, Session Sender will perform the full TCP handshake when a connection is made. Once Session Sender finishes the ramp up phase, it will attempt to maintain the total number of sessions that it was able to open. Note: The value defined for Maximum Simultaneous Sessions is an upper-bound limit on the number of sessions that can be open at any given time during the test;
491
Session Sender
therefore, the number of sessions that Session Sender maintains may be less than the value defined. Ramp Up Rate Session Sender will automatically adjust the ramp up rate so that it works within the tests duration. For example, if you have configured the ramp up duration to 5 seconds and the number of simultaneous sessions to 50 sessions, then the configured ramp up rate will be 10 sessions per second. In instances where the ramp up rate is a decimal value, such as 10.5 sessions per second, Session Sender will round the ramp up rate down the nearest value. Session Sender will automatically round the rate down unless the rate is less than 1 session per second. In those cases, Session Sender will use the configured rate. The only time in which the ramp up rate will be less than 1 is when the number of simultaneous sessions is less than the ramp up duration. For example, if you set the ramp up time to 20 seconds and the number of sessions to be opened to 10, then the ramp up rate is 0.5 sessions per second. In this case, instead of rounding the rate to 0 sessions per second, Session Sender will use 0.5 sessions per second as the ramp up rate. Steady-State Phase During the steady-state phase, the system will open, transmit data, and close sessions (depending on the steady-state behavior) while maintaining the maximum number of sessions. There are two parameters specifically associated with the steady-state phase: Session Ramp Distribution.Steady-State Behavior and Session Ramp Distribution.Steady-State Time. The Steady-State Behavior parameter determines the behavior of the open sessions. The Steady-State Time parameter determines how long the steady-state phase lasts. For example, if Steady-State Behavior is set to Open and Close Sessions, SteadyState Seconds is set to 30 seconds, Maximum Simultaneous Sessions is set to 100,000, and Maximum Sessions Per Second is set to 50,000, then the Session Sender test component will maintain up to 100,000 sessions for 30 seconds, at a rate of (up to) 50,000 sessions per second. Since Steady-State Behavior is set to Open and Close, the sessions will be closed once they finish sending data, and new sessions will be opened in their place. Note: The value defined for Maximum Simultaneous Sessions is an upper-bound limit on the number of sessions that can be open at any given time during the test; therefore, the number of sessions that Session Sender maintains may be less than the value defined. Ramp Down Phase During the ramp down phases, all open sessions will be closed or reset. There are two parameters specifically associated with the ramp down phase: Session Ramp Distribution.Ramp Down Behavior and Session Ramp Distribution.Ramp Down Time. The Ramp Down Behavior parameter determines the behavior of the sessions
492
Session Sender
when they are being closed. The Ramp Down Seconds parameter determines how long the Ramp Down phase lasts. For example, if Ramp Down Behavior is set to Full Close and Ramp Down Seconds is set to 1 second, then the Session Sender test component will perform a complete TCP session close on all open sessions. Note: If your test displays a message that says Failures Due to Ramp Down, make sure that you have configured enough ramp down time for all of the connections to close on their own. Session Sender Test Example To tie together the different ramp phases, take a look at the parameters defined in Table 11-15 on page 493. Table 11-15: Session Sender Test Values Parameter Session Configuration.Maximum Simultaneous Sessions Session Configuration.Maximum Sessions Per Second Session Ramp Distribution.Ramp Up Behavior Session Ramp Distribution.Ramp Up Seconds Session Ramp Distribution.Steady-State Behavior Session Ramp Distribution.Steady-State Time Session Ramp Distribution.Ramp Down Behavior Session Ramp Distribution.Ramp Down Time Session Configuration.Target Minimum Simultaneous Sessions Session Configuration.Target Minimum Sessions Per Second 100,000 50,000 Full Open 5 seconds Open and Close Sessions 30 seconds Full Close 1 second 100 50 Value
Based on the parameters defined in Table 11-15 on page 493, the test will attempt to open 100,000 sessions with the full TCP handshake within the 5 second ramp up phase. Then, the test will try to maintain the maximum number of sessions that it was able to open for the steady-state period of 30 seconds. During the steady-state phase, the test will open new sessions, send data, and then close them. Finally, after the steady-state phase is over, the test will try to close all open sessions. The Target Minimum Simultaneous Sessions and the Target Minimum Sessions Per Second parameters set the pass/fail criteria for the test. If the test meets these target values, then the device will pass the test regardless of whether or not it is able to reach
493
Session Sender
the values defined for maximum simultaneous sessions and maximum sessions per second. Note: To determine how much time to allot to Ramp Up Seconds to open the maximum number of sessions, use the following equation: Maximum Simultaneous Sessions / Target Sessions Per Second = Ramp Up Duration
Additionally, you can set the sizes of the segments being sent during each session (i.e., the segment size distribution type, minimum, and maximum parameters). The segment size distribution parameters are applied only to the first 1,000 packets in the stream. If you have the segment size distribution type set to either random or range, then the sizes are repeated again. Note: Due to the dynamic nature of TCP, you may see the same data segment sent more than once in a session if the device under test drops a packet and the test must retry the send. Additionally, if you do not want to manually configure the parameters for a high throughput session, you can use of the single session high throughput presets available under the Presets tab. To set up a high-throughput single-stream session: 1. Create or open an existing Session Sender test. 2. Click the Parameters tab. 3. Select the Payload Packets Per Session parameter. 4. Enter -1 in the Payload Packets Per Session field. 5. Click the Apply Changes button. 6. Select the Data Rate.Minimum Data Rate parameter. 7. Enter 1000 in the Minimum data rate parameter.
494
Session Sender
Note: Verify that the Data Rate Type parameter is set to Constant. 8. Click the Apply Changes button. 9. Configure any other parameters or components as desired. 10. Save and run the test.
Payload.Type
Sets how the component determines the payload it will use for its traffic.
495
Session Sender
Table 11-16: Session Sender Parameters Parameter Payload.Data Description Defines the payload; this parameter is defined only if Payload.Type is set to User Defined. This value is inserted after the Ethernet header. Sets how the component will define the size of the TCP segment. Valid Values Hex values (numbers: 0 9, letters: a f)
Constant All payloads will use the size defined for Segment Size Distribution.Minimum value (bytes). Range All payloads will use the size defined for Segment Size Distribution.Minimum value (bytes) and will increment to the payload size defined for Segment Size Distribution. Maximum value (bytes). The system uses an algorithm that determines the incremental value that will increase Segment Size Distribution.Minimum value (bytes) until it reaches Segment Size Distribution.Maximum value (bytes). Random All payloads will have sizes that are randomly chosen between Segment Size Distribution. Minimum value (bytes) and Segment Size Distribution. Maximum value (bytes).
496
Session Sender
Table 11-16: Session Sender Parameters Parameter Segment Size Distribution.Minimum value (bytes) Description Sets the minimum TCP segment size that will be sent by the client. This value is used as the segment size if Segment Size Distribution.Distribution type is defined as Constant. Sets the maximum TCP segment size that will be SENT by the client. This parameter is defined only if Segment Size Distribution.Distribution type is set to Range or Random. Specifies how many data packets are sent during an open session. Sets the unit of measurement for the data rate. Sets how the component determines the data rate it will use to send its traffic. Valid Values 0 9,416
0 9,416
1 1,000
Frames/second or Megabits/second Constant Uses Data Rate.Minimum value as the data rate. Random Selects a random value between Data Rate.Minimum value and Data Rate.Maximum value as the data rate. Range Starts at Data Rate.Minimum value and increments until it reaches Data Rate.Maximum value. The system uses an algorithm that determines the incremental value that will increase Data Rate.Maximum value until it reaches Data Rate.Maximum value.
497
Session Sender
Table 11-16: Session Sender Parameters Parameter Data Rate.Minimum value Description Sets the maximum throughput that the test will consume over the transmitting and receiving interfaces, if Data Rate.Data rate type is set to Constant. Otherwise, this is the minimum value used by the test if Data Rate.Data rate type is set to Range or Random. Sets the maximum throughput that the test will consume over the transmitting and receiving interfaces; this parameter is used only if Data Rate.Data rate type is set to Range or Random. Sets how the component will obtain the source port numbers. Valid Values 1 148,800,952 fps 1 10,000 Mbps
Constant Uses Source Port.Minimum port number as the source port. Random Uses random values between Source Port.Minimum port number and Source Port.Maximum port number. Range Increments Source Port.Minimum port number by one until it reaches Source Port.Maximum port number. Once the port number reaches the maximum source port number, it will reset to the minimum source port number.
498
Session Sender
Table 11-16: Session Sender Parameters Parameter Source Port.Minimum port number Description Sets the minimum source port number, if Source Port.Port distribution type is Range or Random. Otherwise, this will be the value used for the source port. Sets the maximum source port number, if Source Port.Port distribution type is Range or Random. Sets how the component will obtain destination ports for TCP connections. Valid Values 0 65,535
0 65,535
Constant Uses Destination Port.Minimum port number as the source port. Random Uses random values between Destination Port.Minimum port number and Destination Port.Maximum port number. Range Increments Destination Port.Minimum port by one until it reaches Destination Port.Maximum port. Once the port number reaches the maximum destination port number, it will reset to the minimum destination port number.
Sets the minimum destination port number, if Destination Port.Port distribution type is Range or Random. Otherwise, this will be the value used for the destination port.
0 65,535
499
Session Sender
Table 11-16: Session Sender Parameters Parameter Destination Port.Maximum port number Description Sets the maximum destination port number, if Destination Port.Port distribution type is Range or Random. Delays the start of a test component by the time specified. Floating values are supported. Sets how the component will open sessions during the ramp up phase. Valid Values 0 65,535
Delay Start
0 4,294,967,295
Full Open The full TCP handshake is performed when sessions are opened. Full Open + Data The full TCP handshake is performed when sessions are opened. Data will be sent once the session opens. Full Open + Data + Close The full TCP handshake is performed when sessions are opened and data will be sent once the session opens. Sessions are closed as they finish sending data and new sessions are opened in their place. Half Open The full TCP handshake is performed when sessions are opened, but the final ACK is omitted.
500
Session Sender
Table 11-16: Session Sender Parameters Parameter Session Ramp Distribution.Ramp Up Behavior Description Sets how the component will open sessions during the ramp up phase. Valid Values SYN Only Only SYN packets are sent. Data Only Only PSH data packets are sent. In this mode, the state machine is bypassed, so no connections are set up; therefore, the ACKs will be be invalid. Use this mode for testing QoS routing, not stateful DUTs. Session Ramp Distribution.Ramp Up Seconds Session Ramp Distribution.Steady-State Behavior Sets the duration for which new sessions can be opened. Sets how the component will handle sessions during the steady-state phase. 0 1,000,000
Open and Close Sessions Sessions are closed as they finish sending data, and new sessions are opened. Open and Close with Reset Response Once a session is closed, the server will respond with a RST and change to the TCP CLOSED state. This option bypasses the TCP TIME_WAIT state. Hold Sessions Open No existing sessions opened during Ramp Up are closed.
Sets the amount of time sessions have to open, send data, and close. The system will have to maintain the number of open session for this time period.
0 1,000,000
501
Session Sender
Table 11-16: Session Sender Parameters Parameter Session Ramp Distribution.Ramp Down Behavior Description Sets how the component will close sessions during the time period specified for Session Ramp Distribution.Ramp Down Time. Valid Values Full Close The full TCP session close is performed. Half Close The full TCP session close is performed, but the final ACK is omitted. Reset Close all sessions by sending TCP RST (reset) packets. Session Ramp Distribution.Ramp Down Time Ramp Up Profile.Ramp Up Profile Type Sets the amount of time open sessions have to close. Determines whether the connection establishment rate is a constant rate or an incremental rate as defined by the user. 0 1,000,000
Calculated The connection establishment rate will be a constant rate. It is calculated by taking the maximum number of sessions divided by the ramp up time. This option allows the component to attempt to reach the maximum number of connections during the ramp up phase. If this option is used, all other parameters listed under the Ramp Up Profile group will be disabled.
502
Session Sender
Table 11-16: Session Sender Parameters Parameter Ramp Up Profile.Ramp Up Profile Type Description Determines whether the connection establishment rate is a constant rate or an incremental rate as defined by the user. Valid Values Stair Step The connection establishment rate is an incremental rate, and it will be determined by the values input for Minimum Connection Rate, Maximum Connection Rate, Increment N connections per second, and Every N seconds. This option sets the minimum connection rate that the system will start with and increment until it reaches the maximum connection rate or until the ramp up phase elapses. If the maximum connection rate is met, the system will hold that rate until the ramp up phase is over. 1 750,000*
Sets the minimum connection establishment rate that will be used to start the ramp up phase. Sets the maximum connection establishment rate that will the system will attempt to reach during the ramp up phase. Once the system reaches this rate, it will continue to hold this rate until the ramp up phase ends. Sets the number of connections that the connection establishment rate will be incremented by for the time specified for Every N seconds.
1 750,000*
1 500,000
503
Session Sender
Table 11-16: Session Sender Parameters Parameter Ramp Up Profile.Every N seconds Description Sets the time interval that Increment N connections per second will use to increment the connection establishment rate. Sets the maximum number of concurrent sessions that can be set up by the system at a given time. This value must be greater than Session Configuration.Target Minimum Simultaneous Sessions. Sets the maximum number of sessions that can occur per second. This value must be greater than Session Configuration.Target Minimum Sessions Per Second. Disables the limit on the close rate. If this option is set to false, then the close rate is limited by the connection establishment rate. If this option is set to true, then the system will close the sessions as quickly as the bandwidth allows; therefore, the number of open sessions will be closer to the maximum number of simultaneous sessions set for the component. The number of sessions that must open to pass the test. This value must be less than Session Configuration.Maximum Simultaneous Sessions. Valid Values 1 1,000,000
1 15,000,000*
1 750,000*
true or false
1 15,000,000*
504
Session Sender
Table 11-16: Session Sender Parameters Parameter Session Configuration.Target Minimum Sessions Per Second Description The number of sessions per second that must be reached to pass the test. This value must be less than Session Configuration.Maximum Sessions Per Second. Sets the maximum bound on the number-of-hops that an IP datagram can exist in an internet system before it is dropped. Configures the TOS field used for all IP packets. Sets the maximum segment size (MSS) that is used during the ramp up phase. MSS is the maximum size that a client advertises it can receive. Sets the amount of time that elapses before a connection is retried. Sets the number of times a connection is attempted before it is canceled. Determines whether or not to delay the ACK of TCP segments. Enable this parameter to send the ACK on the next send, or disable this parameter to send the ACK separately on receive. Sets the size of the initial receive window for a new connection. Valid Values 1 750,000*
IPv4 Configuration.TTL
0 255
0 ff 512 9,146
100 2,000
13
true or false
1 65,535
505
Security
Table 11-16: Session Sender Parameters Parameter TCP Configuration.Add Segment Timestamps Description Allows the size of the TCP header to be expanded by 12-32 bytes. Disable this parameter if you are generating TCP stacks with segment sizes greater than 1,460 and do not want to generate jumbo frames. Sets the Load Profile that will be used by Session Sender. Valid Values true or false
Load Profile
* 1 Gb blades will only support up to 5,000,000 simultaneous sessions at a rate of 500,000 sessions per second.
Security
The Security test component can be used to test network security devices such as IPS, IDS, and firewalls. It measures a devices ability to protect a host by sending Strikes and verifying that the device successfully blocks the attacks. To create a Security test, you will need to select a Strike List and an Evasion Setting. The BreakingPoint Storm CTM offers several default options for Strike Lists and Evasion Settings. For more information on creating Strike Lists, see the section Strike List on page 89. For more information on the configuration of the default Evasion Settings, see the section Evasion Settings on page 510. Additionally, the Security component allows you to edit Evasion Profiles. This allows you to override any evasion options that are configured for an Evasion Setting or configured within the Strike List. Note: Security overrides from previous versions of the BreakingPoint Storm CTM cannot be migrated to version 2.0.
One-Arm Security
One-arm security testing allows you to test the authenticity of the attack traffic generated by the Security component. It targets a specific destination address (or range of addresses) through the test port of the chassis. It is designed to trigger the vulnerabilities in your device, rather than exploit them for access; therefore, this mode will put your device in a crash condition, and it will not result in code execution on the device under test. Currently, the Security component only supports Strikes that result in an attack from a client to a server; client-side attacks are not supported. Other items that are not supported include Layer 2 and Layer 3 evasion options.
506
Security
One-Arm Security Test To set up a one-arm Security test, you will need to enable the External interface for the Security component. Therefore, this requires that you create a Network Neighborhood that has addressing information configured for the specific destination address, or range of addresses, that you are targeting. To create a one-arm Security test: 1. Select Test > New Test from the Menu bar. 2. Click Select the DUT/Network from the Test Quick Steps menu. 3. Select a Network Neighborhood that has addressing information defined for the external interface. For more information the external interface, see the section External Interface Addressing on page 64. 4. Click the Accept button to apply your changes and close the DUT/Network window. 5. Click Add a Test Component from the Test Quick Steps menu. 6. Select Security. 7. Click the Interfaces tab. 8. Enable the interfaces that will act as the client and select a domain for each client. 9. Enable the External interface and select a domain for the External interface. 10. Click the Apply Changes button. 11. Click the Parameters tab and configure any of the parameters for the Security component. For more information on Security parameters, see the section Security Parameters on page 509.
n n n
Adjust any parameters for the test component. Edit the Evasion Profile settings. (Optional) Edit the Concurrent Strikes settings from the Parameter Label section (Optional). The Concurrent Strikes parameter allows you to choose between Single Strike and Default modes. Single Strike mode runs only one strike at a time, while Default mode runs up to five strikes simultaneously.
12. Click the Apply Changes button when done. Note: Security overrides from previous versions of the BreakingPoint Storm CTM cannot be migrated to Release 2.0. 13. Click the Save As button to save the test without running it, or click Save and Run from the Test Quick Steps menu to save and run the test.
507
Security
Security Presets
The BreakingPoint Storm CTM offers five default levels of security testing: Security Level 1 Targets high-risk vulnerabilities in services often exposed to the Internet. This includes approximately 170 Strikes. Security Level 2 Targets all high-risk vulnerabilities. This includes approximately 450 Strikes. Security Level 3 Targets all high-risk vulnerabilities, worms, and backdoors. This includes approximately 500 Strikes. Security Level 4 Targets all vulnerabilities, worms, and backdoors. This includes approximately 750 strikes. Security Level 5 Targets all vulnerabilities, worms, backdoors, probes, and denial of service flaws. This includes approximately 2,800 non-fuzzing Strikes. Note: If you want to run all Strikes that are available on the system, then you can use the All Strikes Strike List. Running this Strike List can take up to 33 hours.
508
Security
Security Parameters
Table 11-18 on page 509 lists the parameters for the Security test component. Table 11-18: Security Parameters Parameter ConcurrentStrikes Description Sets the maximum number of Strikes that will run simultaneously. Valid Values Single Strike Runs one Strike at a time. Default Runs up to five Strikes concurrently. MaxAttacksPerSecond Sets the maximum number of attacks sent every second. Sets the maximum number of packets sent per second. Sets the amount of time the system will wait for a packet to arrive at its destination before resending the attack or determining that the DUT successfully blocked the attack. Sets the number of times to attempt an attack before determining that the DUT successfully blocked the attack. Determines whether the test will generate static or dynamic attacks. 0 will randomize the content of each strike in the strike series. Any other value defined here will keep the strike content static. Delays the start of a test component by the time specified. Floating values are supported. 0 1,000
MaxPacketsPerSecond AttackTimeoutSeconds
0 100,000 0 3,600
AttackRetries
0 100
RandomSeed
0 4,294,967,295
Delay Start
0 4,294,967,295
509
Security
Table 11-18: Security Parameters Parameter Strike List Description Sets the Strike List the Security component will use to derive its attacks. Sets the default evasion options for the Strikes. Valid Values A Strike List
EvasionProfile
An Evasion Profile
Evasion Settings
Table 11-19 on page 510 lists the Evasion Settings and their default configurations. Table 11-19: Evasion Settings Evasion Setting Default evasion settings IP: Ordered 16 byte, overlapping (new) Configuration No evasion options are applied. Splits every IP packet into 16 byte fragments; each fragment is overlapped, and new data is given priority. Includes the following evasion option(s) and value(s): IP:MaxFragSize 16 IP:FragPolicy Last IP:FragEvasion Overlap-all-new IP: Ordered 16 byte, overlapping (old) Splits every IP packet into 16 byte fragments; each fragment is overlapped, and old data is given priority. Includes the following evasion option(s) and value(s): IP:MaxFragSize 16 IP:FragPolicy first IP:FragEvasion Overlap-all-old IP: Ordered 24 byte fragments Splits every IP packet into 24 byte fragments and sends the fragments in order. Includes the following evasion option(s) and value(s): IP:MaxFragSize 24 IP: Ordered 8 byte fragments Splits every IP packet into 8 byte fragments and sends the fragments in order. Includes the following evasion option(s) and value(s): IP:MaxFragSize 8
510
Security
Table 11-19: Evasion Settings Evasion Setting IP: Out-of-order 8 byte fragments Configuration Splits every IP packet into 8 byte fragments and sends the fragments in a random order. Includes the following evasion option(s) and value(s): IP:MaxFragSize 8 IP:FragOrder random IP: Reverse order 8 byte fragments Splits every IP packet into 8 byte fragments and sends the fragments in reverse order. Includes the following evasion option(s) and value(s): IP:MaxFragSize 8 IP:FragOrder reverse TCP: Ordered 1 byte segments Configures the Strikes to segment RPC Strikes into 2-byte TCP segments. Includes the following evasion option(s) and value(s): DCERPC:MaxFragmentSize 2 SUNRPC:TCPFragmentSize 2 TCP: Ordered 1 byte segments, duplicate last packet Splits every TCP packet into 1 byte segments and resends the last packet. Includes the following evasion option(s) and value(s): TCP:MaxSegmentSize 1 TCP:DuplicateLastSegment true TCP: Ordered 1 byte segments, interleaved duplicate segments with invalid TCP checksums Splits every TCP packet into 1 byte segments with invalid TCP checksums. Includes the following evasion option(s) and value(s): TCP:MaxSegmentSize 1 TCP:DuplicateBadChecksum true TCP: Ordered 1 byte segments, interleaved duplicate segments with null TCP control flags Splits every TCP packet into 1 byte segments and sends duplicate segments with null TCP control flags. Includes the following evasion option(s) and value(s): TCP:MaxSegmentSize 1 TCP:DuplicateNullFlags true
511
Security
Table 11-19: Evasion Settings Evasion Setting TCP: Ordered 1 byte segments, interleaved duplicate segments with requests to resync sequence numbers mid-stream Configuration Splits every TCP packet into 1 byte segments. Includes the following evasion option(s) and value(s): TCP:MaxSegmentSize 1 TCP:DuplicateBadSyn true TCP: Ordered 1 byte segments, interleaved duplicate segments with out-of-window sequence numbers Splits every TCP packet into 1 byte segments, and sends 1 packet with an out-of-window sequence number for each real packet. Includes the following evasion option(s) and value(s): TCP:MaxSegmentSize 1 TCP:DuplicateBadSeq true TCP: Out of order 1 byte segments Splits every TCP packet into 1 byte segments, and sends them in a random order. Includes the following evasion option(s) and value(s): TCP:MaxSegmentSize 1 TCP:SegmentOrder random Browser: High Evasion Performs evasion attacks against Web browsers using Unicode UTF-7 character encoding, Gzip encoding, and chunked encoding with very small chunk sizes. Includes the following evasion option(s) and value(s): HTML:HTMLUnicodeEncoding UTF_7 HTML:HTMLUnicodeUTF7EncodingMode standard HTTP:ServerChunkedTransfer true HTTP:ServerChunkedTransferSize 3 HTTP:ServerCompression gzip Browser: Low Evasion Performs evasion attacks against Web browsers using Unicode UTF-7 character encoding. Includes the following evasion option(s) and value(s): HTML:HTMLUnicodeEncoding UTF_7 HTML:HTMLUnicodeUTFEncodingMode standard
512
Security
Table 11-19: Evasion Settings Evasion Setting Browser: Medium Evasion Configuration Performs evasion attacks against Web browsers using Unicode UTF-7 character encoding and chunked encoding. Includes the following evasion option(s) and value(s): HTML:HTMLUnicodeEncoding UTF_7 HTML:HTMLUnicodeUTF7EncodingMode standard HTTP:ServerChunkedTransfer true HTTP:ServerChunkedTransferSize 32 DCERPC: High Evasion Configures Strikes to perform high levels of evasion. Includes the following evasion option(s) and value(s): DCERPC:MaxFragmentSize 2 DCERPC:MultiContextBind true DCERPC:MultiContextHead 20 DCERPC:MultiContextTail 20 SMB:MaxWriteSize 4 SMB:MaxReadSize 4 SMBLRandomPipeOffset true DCERPC: Low Evasion Configures Strikes to perform low levels of evasion. Includes the following evasion option(s) and value(s): DCERPC:MaxFragmentSize 256 DCERPC:MultiContextBind true SMB:MaxWriteSize 512 SMB:MaxReadSize 512 DCERPC: Medium Evasion Configures Strikes to perform medium levels of evasion. Includes the following evasion option(s) and value(s): DCERPC:MaxFragmentSize 128 DCERPC:MultiContextBind true SMB:MaxWriteSize 128 SMB:MaxReadSize 128 SMBLRandomPipeOffset true
513
Security
Table 11-19: Evasion Settings Evasion Setting FTP: Multiple telnet opcodes, beginning of command Configuration Inserts multiple telnet opcodes at the beginning of each client FTP command. Includes the following evasion option(s) and value(s): FTP:PadCommandWhitespace true FTP:FTPEvasionLevel 3 FTP: Multiple telnet opcodes, randomly placed Inserts multiple telnet opcodes at a random location in each client FTP command. Includes the following evasion option(s) and value(s): FTP:PadCommandWhitespace true FTP:FTPEvasionLevel 4 FTP: One telnet opcode per character Inserts a single telnet opcode between each character in each client FTP command. Includes the following evasion option(s) and value(s): FTP:PadCommandWhitespace true FTP:FTPEvasionLevel 6 FTP: One telnet opcode per word Inserts a single telnet opcode between each word in each client FTP command. Includes the following evasion option(s) and value(s): FTP:PadCommandWhitespace true FTP:FTPEvasionLevel 6 FTP: Single telnet opcode, beginning of command Inserts a single telnet opcode at the beginning of each client FTP command. Includes the following evasion option(s) and value(s): FTP:PadCommandWhitespace true FTP:FTPEvasionLevel 1 FTP: SIngle telnet opcode, randomly placed Inserts a single telnet opcode at a random location in each client FTP command. Includes the following evasion option(s) and value(s): FTP:PadCommandWhitespace true FTP:FTPEvasionLevel 2
514
Security
Table 11-19: Evasion Settings Evasion Setting HTML: Unicode UTF16 (Big Endian) Configuration Encodes HTML content using Unicode UTF16 big-endian character encoding. Includes the following evasion option(s) and value(s): HTML:HTMLUnicodeEncoding UTF_16BE HTML: Unicode UTF16 (Little Endian) Encodes HTML content using Unicode UTF16 little-endian character encoding. Includes the following evasion option(s) and value(s): HTML:HTMLUnicodeEncoding UTF_16LE HTML: Unicode UTF32 (Big Endian) Encodes HTML content using Unicode UTF32 big-endian character encoding. Includes the following evasion option(s) and value(s): HTML:HTMLUnicodeEncoding UTF_32BE HTML: Unicode UTF32 (Little Endian) Encodes HTML content using Unicode UTF32 little-endian character encoding. Includes the following evasion option(s) and value(s): HTML:HTMLUnicodeEncoding UTF_32LE HTML: Unicode UTF7 All Encodes HTML content using Unicode UTF-7 character encoding. All characters, including alphanumeric characters, are encoded. Includes the following evasion option(s) and value(s): HTML:HTMLUnicodeEncoding UTF_7 HTML:HTMLUnicodeUTF7EncodingMode all HTML: Unicode UTF7 Standard Encodes HTML content using Unicode UTF-7 character encoding. Alphanumeric characters are not encoded. Includes the following evasion option(s) and value(s): HTML:HTMLUnicodeEncoding UTF_7 HTML:HTMLUnicodeUTF7EncodingMode standard
515
Security
Table 11-19: Evasion Settings Evasion Setting HTML: Unicode UTF8 Overlong Invalid Maximum Size Configuration Encodes HTML content using Unicode UTF-8 invalid character encoding, with a UTF-8 encoding size of 7. Includes the following evasion option(s) and value(s): HTML:HTMLUnicodeEncoding UTF_8 HTML: HTMLUnicodeUTF7EncodingMode invalid HTML:HTMLUnicodeUTF8EncodingSize 7 HTML: Unicode UTF8 Overlong Invalid Minimum Size Encodes HTML content using Unicode UTF-8 overlong invalid character encoding, with a UTF-8 encoding size of 2. Includes the following evasion option(s) and value(s): HTML:HTMLUnicodeEncoding UTF_8 HTML:HTMLUnicodeUTF8EncodingMode invalid HTML:HTMLUnicodeUTF8EncodingSize 2 HTML: Unicode UTF8 Overlong Maximum Size Encodes HTML content using Unicode UTF-8 overlong character encoding, with a UTF-8 encoding size of 7. Includes the following evasion option(s) and value(s): HTML:HTMLUnicodeEncoding UTF_8 HTML:HTMLUnicodeUTF7EncodingMode overlong HTML:HTMLUnicodeUTF8EncodingSize 7 HTML: Unicode UTF8 Overlong Minimum Size Encodes HTML content using Unicode UTF-8 character encoding, with a UTF-8 encoding size of 2. Includes the following evasion option(s) and value(s): HTML:HTMLUnicodeEncoding UTF_8 HTML:HTMLUnicodeUTF7EncodingMode overlong HTML:HTMLUnicodeUTF8EncodingSize 2
516
Security
Table 11-19: Evasion Settings Evasion Setting HTTP: Apache High Evasion Configuration Configures the Strikes to run as if the target Web server is running Apache, with several HTTP-specific evasion options set. Includes the following evasion option(s) and value(s): HTTP:EncodeHexAll true HTTP:EndRequestFakeHTTPHeader true HTTP:DirectoryFakeRelative true HTTP:DirectorySelfReference true HTTP:GetParameterRandomPrepend true HTTP:PostParameterRandomPrepend true HTTP:MethodURITabs true HTTP:VersionRandomizeCase true HTTP:MethodRandomizeCase true HTTP:MethodRandomInvalid true HTTP:URIPrependAltSpaces true HTTP:URIPrependAltSpacesSize 1 HTTP:URIAppendAltSpaces 1 HTTP:URIAppendAltSpacesSize 1 HTTP: Apache Low Evasion Configures the Strikes to run as if the target Web server is running Apache, with several HTTP-specific evasion options set. Includes the following evasion option(s) and value(s): HTTP:EncodeHexRandom true HTTP:DirectorySelfReferece true HTTP:VersionRandomizeCase true HTTP: Apache Medium Evasion Configures the Strikes to run as if the target Web server is running Apache, with several HTTP-specific evasion options set. Includes the following evasion option(s) and value(s): HTTP:EncodeHexRandom true HTTP:DirectoryFakeRelative true HTTP:GetParameterRandomPrepend true HTTP:PostParameterRandomPrepend true HTTP:MethodURITabs true HTTP:VersionRandomizeCase true HTTP: Apache No Evasion Configures the Strikes to run as if the target Web server is running Apache. No evasion options are applied.
517
Security
Table 11-19: Evasion Settings Evasion Setting HTTP: Complete hex encoding Configuration Encodes all characters with Hex encoding. Includes the following evasion option(s) and value(s): HTTP:EncodeHexAll true HTTP: Complete unicode encoding Encodes all characters with Unicode encoding. Includes the following evasion option(s) and value(s): HTTP:HTTP:ServerProfile iis HTTP:EncodeUnicodeAll true HTTP: Covert forward slash to backslash Converts all forward slashes in the URI to back slashes. Includes the following evasion option(s) and value(s): HTTP:HTTPServerProfile iis HTTP:ForwardToBackSlashes true HTTP: Fake relative directory Embeds an encoded HTTP header in the URL. Includes the following evasion option(s) and value(s): HTTP:EndRequestFakeHTTPHeader true HTTP: GET / POST Parameter Random Prepend Generates random variables in GET and POST requests. Includes the following evasion option(s) and value(s): HTTP:GetParameterRandomPrepend true HTTP:PostParameterRandomPrepend true HTTP: IIS High Evasion Configures the Strikes to run as if the target Web server is running IIS, with several HTTPspecific evasion options set. Includes the following evasion option(s) and value(s): HTTP:HTTPServerProfile iis HTTP:EncodeUnicodeAll true HTTP:EndRequestFakeHTTPHeader true HTTP:DirectoryFakeRelative true HTTP:DirectorySelfReference true HTTP:GetParameterRandomPrepend true HTTP:PostParameterRandomPrepend true HTTP:MethodURITabs true HTTP:URIRandomizeCase true HTTP:ForwardToBackSlashes true
518
Security
Table 11-19: Evasion Settings Evasion Setting HTTP: IIS Low Evasion Configuration Configures the Strikes to run as if the target Web server is running IIS, with several HTTPspecific evasion options set. Includes the following evasion option(s) and value(s): HTTP:HTTPServerProfile iis HTTP:EncodeUnicodeRandom true HTTP:DirectorySelfReference true HTTP:MethodURITabs true HTTP:URIRandomizeCase true HTTP: IIS Medium Evasion 1 Configures the Strikes to run as if the target Web server is running IIS, with several HTTPspecific evasion options set. Includes the following evasion option(s) and value(s): HTTP:HTTPServerProfile iis HTTP:EncodeUnicodeRandom true HTTP:DirectoryFakeRelative true HTTP:GetParameterRandomPrepend true HTTP:PostParameterRandomPrepend true HTTP:MethodURITabs true HTTP:URIRandomizeCase true HTTP:ForwardToBackSlashes true HTTP: IIS Medium Evasion 2 Configures the Strikes to run as if the target Web server is running IIS, with several HTTPspecific evasion options set. Includes the following evasion option(s) and value(s): HTTP:HTTPServerProfile iis HTTP:EndRequestFakeHTTPHeader true HTTP:EncodeUnicodeRandom true HTTP:HTTP:DirectoryFakeRelative true HTTP:DirectorySelfReference true HTTP:GetParameterRandomPrepend true HTTP:PostParameterRandomPrepend true HTTP:MethodURITabs true HTTP:URIRandomizeCase true HTTP:ForwardToBackSlashes true HTTP: No Evasion Configures the Strikes to run as if the target Web server is running IIS. No evasion options are applied.
519
Stack Scrambler
Table 11-19: Evasion Settings Evasion Setting HTTP: Random hex encoding Configuration Encodes random characters with hex encoding. Includes the following evasion option(s) and value(s): HTTP:EncodeHexRandom true HTTP: Request fake HTTP header Embeds an encoded HTTP header in the URL. Includes the following evasion option(s) and value(s): HTTP:EndRequestFakeHTTPHeader true HTTP: Self-referential directory Embeds pathnames that reference the current directory. Includes the following evasion option(s) and value(s): HTTP:DirectorySelfReference true HTTP: Self-referential directory and Fake relative Embeds fake pathnames and uses parent paths to go back up the tree and pathnames that reference the current directory. Includes the following evasion option(s) and value(s): HTTP:DirectorySelfReference true HTTP:DirectoryFakeRelative true RPC: 1-byte TCP segments Configures the Strikes to segment RPC Strikes into 1-byte TCP segments. Includes the following evasion option(s) and value(s): DCERPC:MaxFragmentSize 1 SUNRPC:TCPFragmentSize 1 RPC: 2-byte TCP segments Configures the Strikes to segment RPC Strikes into 2-byte TCP segments. Includes the following evasion option(s) and value(s): DCERPC:MaxFragmentSize 2 SUNRPC:TCPFragmentSize 2
Stack Scrambler
The Stack Scrambler test component tests the integrity of different protocol stacks by sending malformed IP, TCP, UDP, ICMP, and Ethernet packets (produced by a fuzzing technique) to the device under test. The fuzzing technique modifies a part of the packet (checksum, protocol options, etc.) to generate the corrupt data.
520
Stack Scrambler
Delays the start of a test component by the time specified. Floating values are supported. Sets how the component determines the payload it will use for its traffic.
0 4,294,967,295
Payload.Type
0 Payload is 0s. 1 Payload is all 1s. Random Payload is defined using random Hex values. User-Defined Payload is defined by the user using standard hexadecimal notation. If the payload is smaller than the packet size, then the Hex value will be repeated until it meets the packet size; however, if the payload is a user-defined Hex value that is greater than the packet size, the value will be truncated.
Payload.Data
Defines the payload; this parameter is defined only if Payload.Type is set to UserDefined. This value is inserted after the Ethernet header.
521
Stack Scrambler
Table 11-20: Stack Scrambler Parameters Parameter Payload.Transport Description Sets the protocol stack to target. TCP UDP ICMP UDP Lossy ALL (Combines TCP, UDP, and ICMP) Constant All payloads will use the size defined for Segment Size Distribution Minimum value (bytes). Segment Size Distribution.Distribution type Sets how the component will define the size of the UDP, or ICMP segment. Range All payloads will use the size defined for Segment Size Distribution.Minimum value (bytes) and will increment to the payload size defined for Segment Size Distribution. Maximum value (bytes). The system uses an algorithm that determines the incremental value that will increase Segment Size Distribution.Minimum value (bytes) until it reaches Segment Size Distribution.Maximum value (bytes). Random All payloads will have sizes that are randomly chosen between Segment Size Distribution. Minimum value (bytes) and Segment Size Distribution. Maximum value (bytes). Segment Size Distribution.Minimum value (bytes) Sets the minimum TCP segment size that will be sent by the client. This value is used as the segment size if Segment Size Distribution.Distribution type is defined as Constant. 0 9,416 Valid Values
522
Stack Scrambler
Table 11-20: Stack Scrambler Parameters Parameter Segment Size Distribution. Maximum value (bytes) Description Sets the maximum TCP segment size that will be SENT by the client. This parameter is defined only if Segment Size Distribution.Distribution type is set to Range or Random. Sets the unit of measurement for the data rate. Sets how the component determines the data rate it will use to send its traffic. Valid Values 0 9,416
Frames/second or Megabits/second Constant Uses Data Rate.Minimum value as the date rate. Random Selects a random value between the Data Rate.Minimum value and Data Rate.Maximum value as the data rate. Range Starts at the Data Rate.Minimum value and increments until it reaches the Data Rate.Maximum value. The system uses an algorithm that determines the incremental value that will increase Data Rate.Minimum value until it reaches Data Rate.Maximum value.
Sets the maximum throughput that the test will consume over the transmitting and receiving interfaces, if Data Rate.Data rate type is set to Constant. Otherwise, this is the minimum value used by the test if Data Rate.Data rate type is set to Range or Random.
523
Stack Scrambler
Table 11-20: Stack Scrambler Parameters Parameter Data Rate.Maximum value Description Sets the maximum throughput that the test will consume over the transmitting and receiving interfaces; this parameter is used only if Data Rate.Data rate type is set to Range or Random. Sets whether Stack Scrambler uses frames or packets. Sets how the component determines the frame/packet sizes it will use for its traffic. Valid Values 1 148,800,952 fps 1 10,000Mbps
Packet or Frame
Constant Uses Size distribution.Minimum value for the frame/packet size. Random Selects a random value between Size distribution.Minimum value and Size distribution.Maximum value for the frame/packet size. The size of the packet/frame will be randomly selected for every second of the test. Range Starts at Size distribution.Minimum value and increments until it reaches Size distribution.Maximum value. The system uses an algorithm that determines the incremental value that will increase Size distribution.Minimum value until it reaches Size distribution.Maximum value.
524
Stack Scrambler
Table 11-20: Stack Scrambler Parameters Parameter Size Distribution.Minimum Frame/Packet Size Description Sets the minimum frame/ packet size, if Size distribution.Size distribution type is set to Constant. Otherwise, this is the minimum value used if Size distribution.Size distribution type is set to Range or Random. Sets the maximum frame/ packet size; this parameter is used only if Size distribution.Size distribution type is set to Range. Sets how the component will obtain the source port numbers. Valid Values 64 9216 bytes (frames) 46 9198 bytes (packets)
Constant Uses Source Port.Minimum port number as the source port. Random Uses random values between Source Port.Minimum port number and Source Port.Maximum port number. Range Increments Source Port.Minimum port number by one until it reaches Source Port.Maximum port number. Once the port number reaches the maximum source port number, it will reset to the minimum source port number.
Sets the minimum source port number, if Source Port.Port distribution type is Range or Random. Otherwise, this will be the value used for the source port.
0 65,535
525
Stack Scrambler
Table 11-20: Stack Scrambler Parameters Parameter Source Port.Maximum port number Description Sets the maximum source port number, if Source Port.Port distribution type is Range or Random. Sets how the component will obtain destination ports for TCP connections. Valid Values 0 65,535
Constant Uses Destination Port.Minimum port number as the source port. Random Uses random values between Destination Port.Minimum port number and Destination Port.Maximum port number. Range Increments Destination Port.Minimum port by one until it reaches Destination Port.Maximum port. Once the port number reaches the maximum destination port number, it will reset to the minimum destination port number.
Sets the minimum destination port number, if Destination Port.Port distribution type is Range or Random. Otherwise, this will be the value used for the destination port. Sets the maximum destination port number, if Destination Port.Port distribution type is Range or Random. Sets a value for the seed generator. This value enables the ability to resend the same data to the device. Setting the random seed to 0 will generate dynamic content.
0 65,535
0 65,535
0 4,294,967,295
526
Stack Scrambler
Table 11-20: Stack Scrambler Parameters Parameter Pseudo-random Number Generator Options.Offset into the Seed Maximum number of simultaneous corruptions Bad Ethernet Type Description Deprecated. Valid Values
Sets the maximum number of corruptions per packet. Sets the maximum possible percentage of Ethernet packets that will have malformed Ethernet Types. The actual percentage could be lower. Sets the maximum possible percentage of IP packets that will have a malformed IP version. The actual percentage could be lower. Sets the maximum possible percentage of IP packets that will have a malformed IP Length set. The actual percentage could be lower. This value is 4 bits in length and specifies the number of 32-bit words in the header. Sets the maximum possible percentage of IPv4 packets that will have malformed IP Differentiated Services Field. The actual percentage could be lower. Sets the percentage of IP packets that will have malformed IP total length Sets the maximum possible percentage of IPv4 packets that will have malformed IP flags. The actual percentage could be lower.
01/05/10
0 100
Bad IP Version
0 100
0 100
0 100
0 100
0 100
527
Stack Scrambler
Table 11-20: Stack Scrambler Parameters Parameter Bad IPv4 Fragment Offset Description Sets the maximum possible percentage of IPv4 packets that will have a malformed Fragment Offset. The actual percentage could be lower. Sets the maximum possible percentage of packets that will have malformed IP protocol set in the IP header. The actual percentage could be lower. This value is 8 bits in length and is labeled Protocol in the IPv4 header and Next Header in the IPv6 header. Sets the maximum percentage of packets that will have a randomized IPv4 checksum set in the IP header. This value is 16 bits in length and is used for error-checking of the header. Sets the maximum possible percentage of TCP packets that will have malformed IP options set in the IP header. The actual percentage could be lower. Sets the maximum possible percentage of packets that will have a malformed urgent pointer. The actual percentage could be lower. Sets the maximum possible percentage of packets that will have a malformed checksum. The actual percentage could be lower. Sets the maximum possible percentage of packets that will have a malformed TCP Flags. The actual percentage could be lower. Valid Values 0 100
Bad IP Protocol
0 100
0 100
0 100
0 100
Bad IP Checksum
0 100
0 100
528
Stack Scrambler
Table 11-20: Stack Scrambler Parameters Parameter Bad TCP Options Description Sets the maximum possible percentage of packets transmitted that will have randomized TCP options set in the TCP header. The actual percentage could be lower. TCP Options are variable in length. Sets the maximum possible percentage of packets that will have a malformed TCP Data Offset. The actual percentage could be lower. Sets the maximum possible percentage of packets that will have a malformed TCP Urgent Pointer. The actual percentage could be lower. Sets the maximum possible percentage of packets that will have a malformed TCP, UDP, or ICMP checksum. The actual percentage could be lower. Sets the maximum possible percentage of packets that will have a malformed ICMP Type (ICMP or All Payload Transport must be chosen for this value to take effect). The actual percentage could be lower. Sets the maximum possible percentage of packets that will have a malformed ICMP Code (ICMP or All Payload Transport must be chosen for this value to take effect). The actual percentage could be lower. Valid Values 0 100
0 100
0 100
Bad L4 Checksum
0 100
0 100
0 100
529
Application Simulator
Table 11-20: Stack Scrambler Parameters Parameter Establish TCP Sessions Description Determines whether the system sends valid handshake packets to establish TCP sessions before fuzzing. Valid Values true or false
* When specifying durations in frames for Bit Blaster and Routing Robot, the minimum number of frames requested will be honored. At times, however, a small number of frames above the requested value may be sent. In most cases, the number of frames sent will be rounded up to a multiple of four.
Application Simulator
The Application Simulator test component allows you to generate application traffic flows. This test component should be used in conjunction with other test components to simulate real world traffic. The Application Simulator test component uses an App Profile to determine what types of application flows to send to the DUT. The App Profile contains a set of flow specifications that defines the protocol, client-type, and server-type the traffic will use. For more information on App Profiles, see the section App Profiles on page 125.
530
Application Simulator
determined by the value defined for Application Ramp Distribution.Steady-State Seconds. Ramp Down Phase During the ramp down phase, no new sessions will be opened, but the Application Simulator test component will finish running all open flows. The duration of the ramp down phase is determined by the value defined for Application Ramp Distribution.Ramp Down Phase.
531
Application Simulator
Table 11-21: Application Simulator Parameters Parameter Data rate distribution.Data rate type Description Sets how the component determines the data rate it will use for its traffic. Valid Values Constant Uses Data Rate.Minimum value as the data rate. Random Selects a random value between Data Rate.Minimum value and Data Rate.Maximum value as the data rate. Range Starts at Data Rate.Minimum value and increments until it reaches Data Rate.Maximum value. The system uses an algorithm that determines the incremental value that will increase Data Rate.Minimum value. until it reaches Data Rate.Maximum value. Data rate distribution.Minimum value Sets the maximum throughput that the test will consume over the transmitting and receiving interfaces, if Data Rate.Data rate type is set to Constant. Otherwise, this is the minimum value used by the test if Data Rate.Data rate type is set to Range or Random. Sets the maximum throughput that the test will consume over the transmitting and receiving interfaces; this parameter is used only if Data Rate.Data rate type is set to Range or Random. Delays the start of a test component by the time specified. Floating values are supported. 1 148,800,952 fps 1 10,000Mbps
Delay Start
0 4,294,967,295
532
Application Simulator
Table 11-21: Application Simulator Parameters Parameter Session Ramp Distribution.Ramp Up Behavior Description Sets how the component will open sessions during the ramp up phase. Valid Values Full Open The full TCP handshake is performed. Full Open + Data The full TCP handshake is performed and DNS flows are kept open. DNS flows will not be closed during ramp up. Full Open + Data + Close The full TCP handshake is performed, and data will be sent once the session options. Sessions are closed as they finish sending data and new sessions are opened. Session Ramp Distribution.Ramp Up Behavior Sets how the component will open sessions during the ramp up phase. Half Open The full TCP handshake is performed when sessions are opened, but the final ACK is omitted. SYN Only Only SYN packets are sent. Data Only Only PSH data packets are sent. In this mode, the state machine is bypassed, so no connections are set up; therefore, the ACKs will be be invalid. Use this mode for testing QoS routing, not stateful DUTs. Session Ramp Distribution.Ramp Up Seconds Sets the duration for which new sessions can be opened. 0 1,000,000
533
Application Simulator
Table 11-21: Application Simulator Parameters Parameter Session Ramp Distribution.Steady-State Behavior Description Sets how the component will handle sessions during the steady-state phase. Valid Values Open and Close Sessions Sessions are closed as they finish sending data, and new sessions are opened. Open and Close with Reset Response Once the session has finished sending data, it will wait for the server to close the session. After the server has closed the session, the client will send a RST. Hold Sessions Open No existing sessions opened during Ramp Up are closed. Session Ramp Distribution.Steady-State Time Sets the amount of time sessions have to open, send data, and close. The system will have to maintain the number of open session for this time period. Sets how the component will close sessions during the time period specified for Session Ramp Distribution.Ramp Down Time. 0 1,000,000
Full Close The full TCP session close is performed. Half Close The full TCP session close is performed, but the final ACK is omitted. Reset Close all sessions by sending TCP RST (reset) packets.
0 1,000,000
534
Application Simulator
Table 11-21: Application Simulator Parameters Parameter Ramp Up Profile.Ramp Up Profile Type Description Determines whether the connection establishment rate is a constant rate or an incremental rate as defined by the user. Valid Values Calculated The connection establishment rate will be a constant rate. It is calculated by taking the maximum number of sessions divided by the ramp up time. This option allows the component to attempt to reach the maximum number of connections during the ramp up phase. If this option is used, all other parameters listed under the Ramp Up Profile group will be disabled. Stair Step The connection establishment rate is an incremental rate, and it will be determined by the values input for Minimum Connection Rate, Maximum Connection Rate, Increment N connections per second, and Every N seconds. This option sets the minimum connection rate that the system will start with and increment until it reaches the maximum connection rate or until the ramp up phase elapses. If the maximum connection rate is met, the system will hold that rate until the ramp up phase is over. Ramp Up Profile. Minimum Connection Rate Sets the minimum connection establishment rate that will be used to start the ramp up phase. 1 750,000*
Determines whether the connection establishment rate is a constant rate or an incremental rate as defined by the user.
535
Application Simulator
Table 11-21: Application Simulator Parameters Parameter Ramp Up Profile.Maximum Connection Rate Description Sets the maximum connection establishment rate that will the system will attempt to reach during the ramp up phase. Once the system reaches this rate, it will continue to hold this rate until the ramp up phase ends. Sets the number of connections that the connection establishment rate will be incremented by for the time specified for Every N seconds. Sets the time interval that Increment N connections per second will use to increment the connection establishment rate. Sets the maximum number of concurrent sessions that can be set up by the system at a given time. This value must be greater than Session Configuration.Target Minimum Simultaneous Sessions. Sets the maximum number of sessions that can occur per second. This value must be greater than Session Configuration.Target Minimum Sessions Per Second. Valid Values 1 750,000*
1 500,000
1 1,000,000
1 15,000,000*
1 750,000*
536
Application Simulator
Table 11-21: Application Simulator Parameters Parameter Session.Configuration.U nlimited Session Close Rate Description Disables the limit on the close rate. If this option is set to false, then the close rate is limited by the connection establishment rate. If this option is set to true, then the system will close the sessions as quickly as the bandwidth allows; therefore, the number of open sessions will be closer to the maximum number of simultaneous sessions set for the component. The number of sessions that must open to pass the test. This value must be less than Session Configuration.Maximum Simultaneous Sessions. The number of sessions per second that must be reached to pass the test. This value must be less than Session Configuration.Maximum Sessions Per Second. Sets the maximum bound on the number-of-hops that an IP datagram can exist in an internet system before it is dropped. Configures the TOS field used for all IP packets. Sets the maximum segment size that is used during the ramp up phase. Sets the amount of time that elapses before a connection is retried. Valid Values true or false
1 15,000,000*
1 750,000*
IPv4 Configuration.TTL
0 255
IPv4 Configuration.TOS/ DSCP TCP Configuration.Maximum Segment Size (MSS) TCP Configuration.Retry Quantum
0 ff 512 9,146
100 2,000
537
Application Simulator
Table 11-21: Application Simulator Parameters Parameter TCP Configuration.Retry Count TCP Configuration.Delay ACKs Description Sets the number of times a connection is attempted before it is canceled. Determines whether or not to delay the ACK of TCP segments. Enable this parameter to send the ACK on the next send, or disable this parameter to send the ACK separately on receive. Sets the size of the initial receive window for a new connection. Allows the size of the TCP header to be expanded by 12 32 bytes. Disable this parameter if you are generating TCP stacks with segment sizes greater than 1,460 and do not want to generate jumbo frames. Determines whether to add Data to the client ACK packet of the TCP handshake. Provides you with granular control over the attributes of the ramp-up, steadystate, and ramp down phases that occur during the test. For each phase, you can set the data rate, session rate, session behavior, and the maximum number of simultaneous sessions. The maximum number of streams that will be instantiated for an individual Super Flow at one time. 13 Valid Values
true or false
1 65,535
true or false
true or false
1 256
538
Application Simulator
Table 11-21: Application Simulator Parameters Parameter App Configuration.Content Fidelity Description Indicates whether applications will generate more complex, dynamic traffic, or will generate simpler, possibly more performant, traffic. This setting may not have an effect for all application protocols and profiles. The application profile determines the mix of applications simulated, as well as the specifics of what the traffic looks like for those applications. Sets the amount of time that elapses before a connection is retried. Valid Values High for more complex/ dynamic traffic Normal for simpler traffic
Application Profile
100 2,000
* 1 Gb blades will only support up to 5,000,000 simultaneous sessions at a rate of 500,000 sessions per second.
SSL/TLS Testing
Secure Sockets Layer (SSL) and Transport Layer Security (TLS) are protocols that provide secure communication between a client and a server. Secure Sockets Layer is the "old" name used for versions 3.0 and earlier, while Transport Layer Security is the "new" name used for versions 3.1 and later. Both SSL and TLS provide confidentiality, message integrity, and endpoint authentication. Typically, only the server endpoint is authenticated, but the protocol also provides mechanisms for client authentication. BreakingPoint CTM SSL/TLS performance highlights: Supports 380,000 one-arm sessions, or 190,000 client/server sessions Supports up to 380,000 endpoints Supports up to 43,000 client handshakes per second (with resume enabled) Supports bulk encryption rates up to 1.25 Gbps
BreakingPoint CTM SSL/TLS features highlights: Supports ciphersuites Supports one-arm clients, one-arm servers, or two-arm clients and servers. Any TCP flow can be tunneled through SSL/TLS simply by adding a few SSL/TLS Super Flow actions to the flow. Support for Close Notify.
539
Application Simulator
Support for resumed sessions on both client and server. Support for client authentication Support up to 4096-bit keys.
SSL Presets
The BreakingPoint Storm CTM contains five presets for initiating SSL testing: SSL HTTPS 1.0
n
Example: one-arm client performance test for measuring SSL/HTTPS handshakes per second.
Example: one-arm client performance test for measuring SSL requests per second.
Supported Cipher Suites The following Cipher Suites are supported: RSA_RC4_128_MD5, RSA_RC4_128_SHA, RSA_DES_168_SHA, RSA_AES_168_SHA, and RSA_DES_256_SHA.
540
Application Simulator
n n
7. Click Apply Changes. 8. Click Save As. At this point, you have created a template for a client/server SSL test where the BreakingPoint Storm CTM will act as both the client and server. You can run this test through a loopback cable. It can be customized as needed to fit your testing needs. To create a one-arm SSL/TLS test: 1. Select Test > New Test from the Menu bar. 2. Click Select the DUT/Network from the Test Quick Steps menu. 3. lick Add a Test Component from the Test Quick Steps menu. 4. Select Application Simulator component. 5. Click the Presets tab. 6. Select one of the following SSL presets:
n n
SSL HTTPS One-arm Client Handshake Performance SSL HTTPS One-arm Client Request Performance
7. Click Apply Changes. 8. Click Save As. At this point, you have created a template for a one-arm SSL test where the BreakingPoint Storm CTM will only act as the client. You will need an external server to run this test. Customizing an SSL/TLS Test To customize your test, edit the SSL-related actions in the Super Flow. The SSL-related actions are Accept TLS, Start TLS, and TLS Close Notify. Note: For a client/server test, the Accept TLS action must appear in the Super Flow before the Start TLS action. Converting an Encrypted Flow Into an Unencrypted Flow This example describes how to convert from HTTPS port 443 to HTTP port 80. You can use the same steps to convert other protocols from an encrypted flow into an unencrypted flow. To convert an encrypted flow into an unencrypted flow: 1. Select Managers > Application Manager from the menu bar. 2. Select the Super Flows tab. 3. Locate and select the Super Flow that you want to edit. 4. Select the appropriate flow in the Define Flows section. 5. Click the Edit the selected flow protocol parameters button. 6. Select the Server Port checkbox if it is not already checked. 7. Change the value in the Server Port field from 443 to 80.
541
Application Simulator
8. Click Apply Changes. Edit the Accept TLS Action 1. Select the flow in the Define Flows section. 2. Click the Add Action button. 3. Select Accept TLS from the Action dropdown menu in the Create a New Action area. 4. Select the Accept TLS action in the Define Actions section. 5. Click the Edit the selected action parameters button.
n n
Make sure that the Enabled checkbox is selected. Make sure that the Enabled field is set to false.
6. Click Apply Changes. Edit the Start TLS Action 1. Select Start TLS from the Action dropdown menu in the Create a New Action area. 2. Click the Add Action button. 3. Select the Start TLS action in the Define Actions section. 4. Click the Edit the selected action parameters button.
n n
Make sure that the Enabled checkbox is selected. Make sure that the Enabled field is set to false.
5. Click Apply Changes. 6. Click the Save Super Flow button. Converting an Unencrypted Flow Into an Encrypted Flow This example describes how to convert from HTTP port 80 to HTTPS port 443. You can use the same steps to convert other protocols from an unencrypted flow to an encrypted flow. To convert an unencrypted flow into an encrypted flow: 1. Select Managers > Application Manager from the menu bar. 2. Select the Super Flows tab. 3. Locate and select the Super Flow that you want to edit. 4. Select the appropriate flow in the Define Flows section. 5. Click the Edit the selected flow protocol parameters button. 6. Select the Server Port checkbox if it is not already checked. 7. Change the value in the Server Port field from 80 to 443. 8. Click Apply Changes. Add or Edit the Accept TLS Action If an Accept TLS action already exists on the flow you have selected, use the steps that follow to edit the action. 1. Select the flow in the Define Flows section. 2. Click the Add Action button. 3. Select Accept TLS from the Action dropdown menu in the Create a New Action area.
542
Application Simulator
4. Select the Accept TLS action in the Define Actions section. 5. Click the Edit the selected action parameters button and make the desired edits to the action.
n n
Make sure that the Enabled checkbox is selected. Make sure that the Enabled field is set to true.
6. Click Apply Changes. Note: If no Accept TLS action exists in the flow, add the action and adjust the parameters as needed. Add or Edit the Start TLS Action If an Start TLS action already exists on the flow you have selected, use the steps that follow to edit the action. 1. Select Start TLS from the Action dropdown menu in the Create a New Action area. 2. Click the Add Action button. 3. Select the Start TLS action in the Define Actions section. 4. Click the Edit the selected action parameters button.
n n
Make sure that the Enabled checkbox is selected. Make sure that the Enabled field is set to false.
5. Click Apply Changes. Note: If no Start TLS action exists in the flow, add the action and adjust the parameters as needed. 6. Click the Save Super Flow button. Creating a One-Arm SSL/TLS Test With Conditional Request Actions This example demonstrates how to create a one-arm (client only) SSL/TLS test with Conditional Request actions. While this example uses the HTTP and HTTPS protocols, you can use the same steps to create one-arm SSL/TLS tests with Conditional Request actions using other protocols. To create a one-arm SSL/TLS test with conditional request actions: 1. Create an HTTP (unencrypted) verision of your test. 2. Verify your test with external HTTP servers. 3. Convert the flows from HTTP to HTTPS. Follow the instructions in the section titled Converting an Unencrypted Flow Into an Encrypted Flow on page 542 to complete this step.
543
Application Simulator
SSL/TLS Parameters
Table 11-22 on page 544 lists the parameters for the Accept TLS action. Table 11-22: Accept TLS Action Parameters Parameter Enabled Description If disabled, then skip the handshake and do not tunnel data through SSL. Note, if you disable this, you may need to change the TCP port number. Sets the minimum protocol version that will be negotiated during the handshake. If the client does not support this version, the session will be terminated. Sets the maximum protocol version that will be negotiated during the handshake. If the client does not request this version or lower, the session will be terminated. Sets the ciphersuite to use for the encrypted session. Valid Values true or false
Min Version
SSLv3 or TLSv1
Max Version
SSLv3 or TLSv1
Cipher
Sets an approximate upper limit on the number of times the server will allow a client to resume an SSL session.
544
Application Simulator
Table 11-22: Accept TLS Action Parameters Parameter Resume Expire Description Sets an approximate upper limit on the length of time (in seconds) an SSL session will be cached and available for resumption. Sets the maximum time period (in milliseconds) between the time the TCP connection is established and the time the SSL handshake is completed. If the handshake does not complete within the specified period, the session is terminated. Valid Values
Handshake Timeout
545
Application Simulator
Table 11-22: Accept TLS Action Parameters Parameter Client Authentication Enabled Description Enable or Disable SSL/ TLS client authentication. For client authentication to succeed, the following parameters must be set in the servers's Accept TLS action: Client Authentication (set to Enabled) Client Common Name (example: clientA_512.client.int) Client CA Certificate (example: BreakingPoint_cacert_clie nt.crt) Client Cert Verify Mode (controls strictness of client authentication) In addition, the following parameters must be set in the client's Start TLS action: Client Authentication (set to Enabled) Client Certificate (example: BreakingPoint_clientA_51 2.crt) Client Private Key (example: BreakingPoint_clientA_51 2.key) The client's common name (CN) as it appears in the client's certificate. Controls how the server handles client certificates. It does not control or enforce the receipt of certificates. It only controls how verification is performed if a certificate is received. Do Not Check Cert Allow Untrusted Cert Require Trusted Cert Valid Values true or false
546
Application Simulator
Table 11-22: Accept TLS Action Parameters Parameter Decryption Mode Description Controls how encrypted application data received by the server side of the SSL connection is handled. Valid Values Decrypt Decrypt all incoming application data. Discard/Count Discard and update bulk decryption statistics. Discard/Nocount Discard without updating bulk decryption statistics. Auto Use Decrypt mode if there is action in this flow that processes the application data (e.g., a Conditional Request action). Otherwise use Discard / Count mode. BreakingPoint_clientA_1024. crt BreakingPoint_clientA_512.c rt BreakingPoint_clientB_1024. crt BreakingPoint_clientB_512.c rt BreakingPoint_serverA_1024 .crt BreakingPoint_serverA_512. crt BreakingPoint_serverB_1024 .crt BreakingPoint_serverB_512. crt
Server Certificate
A file in PEM format containing the server's certificate. This is required since server authentication is always performed during SSL handshakes.
547
Application Simulator
Table 11-22: Accept TLS Action Parameters Parameter Server Private Key Description A file in PEM format containing the server's private key. Valid Values BreakingPoint_clientA_1024. key BreakingPoint_clientA_512.k ey BreakingPoint_clientB_1024. key BreakingPoint_clientB_512.k ey BreakingPoint_serverA_1024 .key BreakingPoint_serverA_512. key BreakingPoint_serverB_1024 .key BreakingPoint_serverB_512. key BreakingPoint_cacert_client. crt BreakingPoint_cacert_server. crt
Client CA Certificate
A file in PEM format containing the certificate of the Certificate Authority that was used to sign the client's certificate. This is only used when client authentication is performed as part of the handshake.
Table 11-23 on page 548 lists the parameters for the Start TLS action. Table 11-23: Start TLS Action Parameters Parameter Enabled Description If disabled, then skip the handshake and do not tunnel data through SSL. Note, if you disable this, you may need to change the TCP port number. Sets the minimum protocol version that will be negotiated during the handshake. If the server does not support this version, the session will be terminated. Valid Values true or false
Min Version
SSLv3 or TLSv1
548
Application Simulator
Table 11-23: Start TLS Action Parameters Parameter Max Version Description Sets the maximum protocol version that will be negotiated during the handshake. If the server does not support this version or lower, the session will be terminated. Sets the ciphersuite to use for the encrypted session. Ciphersuites are not currently supported. Valid Values SSLv3 or TLSv1
Cipher
Sets an approximate upper limit on the number of times a client will try to resume an SSL session. Sets an approximate upper limit on the length of time (in seconds) a client will cache the information needed to resume a particular SSL session. Sets the maximum time period (in milliseconds) between the time the TCP connection is established and the time the SSL handshake is completed. If the handshake is not completed within the specified period, the session is terminated.
Resume Expire
Handshake Timeout
549
Application Simulator
Table 11-23: Start TLS Action Parameters Parameter Client Authentication Enabled Description Enable or Disable SSL/ TLS client authentication. For client authentication to succeed, the following parameters must be set in the servers's Accept TLS action: Client Authentication (set to Enabled) Client Common Name (example: clientA_512.client.int) Client CA Certificate (example: BreakingPoint_cacert_clie nt.crt) Client Cert Verify Mode (controls strictness of client authentication) In addition, the following parameters must be set in the client's Start TLS action: Client Authentication (set to Enabled) Client Certificate (example: BreakingPoint_clientA_51 2.crt) Client Private Key (example: BreakingPoint_clientA_51 2.key) The server's common name (CN) as it appears in the server's certificate. The server's certificate is provided to the client during the handshake. Valid Values true or false
550
Application Simulator
Table 11-23: Start TLS Action Parameters Parameter Server Cert Verify Mode Description Controls how the client handles server certificates. Server authentication, a required part of every SSL handshake, depends on the server certificate presented to the client during the SSL/TLS handshake. Controls how encrypted application data received by the server side of the SSL connection is handled. Valid Values Do Not Check Allow Untrusted Require Trusted
Decryption Mode
Decrypt Decrypt all incoming application data. Discard/Count Discard and update bulk decryption statistics. Discard/Nocount Discard without updating bulk decryption statistics. Auto Use Decrypt mode if there is action in this flow that processes the application data (e.g., a Conditional Request action). Otherwise use Discard / Count mode. BreakingPoint_clientA_1024. crt BreakingPoint_clientA_512.c rt BreakingPoint_clientB_1024. crt BreakingPoint_clientB_512.c rt BreakingPoint_serverA_1024 .crt BreakingPoint_serverA_512. crt BreakingPoint_serverB_1024 .crt BreakingPoint_serverB_512. crt
Client Certificate
A file in PEM format containing the client's certificate. This is only used when client authentication is performed as part of the handshake.
551
Application Simulator
Table 11-23: Start TLS Action Parameters Parameter Client Private Key Description A file in PEM format containing the client's private key. Valid Values BreakingPoint_clientA_1024. key BreakingPoint_clientA_512.k ey BreakingPoint_clientB_1024. key BreakingPoint_clientB_512.k ey BreakingPoint_serverA_1024 .key BreakingPoint_serverA_512. key BreakingPoint_serverB_1024 .key BreakingPoint_serverB_512. key BreakingPoint_cacert_client. crt BreakingPoint_cacert_server. crt
Server CA Cert
A file in PEM format containing the certificate of the CA Certificate Authority (a.k.a., the CA Cert) used to sign the server's certificate.
Table 11-24 lists the parameters for the TLS Close Notify action. Table 11-24: TLS Close Notify Action Parameters Parameter Enabled Description An SSL Alert message with a Warning alert level and an alert code of 0x00. If set to true, a TLS Close Notify message is sent to the peer. Terminating encrypted sessions with Close Notify messages prevents truncation attacks by informing the peer that no more encrypted data will be sent. Valid Values true or false
552
Client Simulator
Table 11-25 lists the parameters for the TLS Discard Encrypted Data action. The TLS Discard Encrypted Data action can be inserted at any point in an SSL/TLS flow to discard encrypted data from that point forward instead of decrypting it. Table 11-25: TLS Discard Encrypted Data Action Parameters Parameter Count Discarded Data Description If set to true, update bulk decryption statistics, otherwise do not update statistics. Valid Values true or false
Client Simulator
Client Simulator enables you to connect the BreakingPoint Storm CTM to a server device under test so the chassis can act as a client generating connections to the server. Client Simulator sends a single Super Flow to the DUT and enables you to search for specific responses from the DUT. In order to use Client Simulator, you will need to create Super Flows that use Conditional Requests. Conditional Requests define the specific responses (i.e., strings or patterns) you expect to see from the DUT. The Client Simulator component will track the number of responses from the server that match the string matches defined within the Conditional Requests for the Super Flow. This data will be available in the Response Summary of the test report.
Limit Per-Interface Throughput Uses the data rate as the limit for the transmitting and receiving interfaces. Limit Aggregate Throughput Uses the data rate as an aggregate limit for the test component.
553
Client Simulator
Table 11-26: Client Simulator Parameters Parameter Data rate.Data rate unit Description Sets the unit of measurement for the data rate. Sets how the component determines the data rate it will use for its traffic. Valid Values Frames/second or Megabits/ second Constant Uses Data Rate.Minimum value as the data rate. Random Selects a random value between Data Rate.Minimum value and Data Rate.Maximum value as the data rate. Range Starts at Data Rate.Minimum value and increments until it reaches Data Rate.Maximum value. The system uses an algorithm that determines the incremental value that will increase Data Rate.Minimum value. until it reaches Data Rate.Maximum value. Data rate.Minimum data rate Sets the maximum throughput that the test will consume over the transmitting and receiving interfaces, if Data Rate.Data rate type is set to Constant. Otherwise, this is the minimum value used by the test if Data Rate.Data rate type is set to Range or Random. Sets the maximum throughput that the test will consume over the transmitting and receiving interfaces; this parameter is used only if Data Rate.Data rate type is set to Range or Random. 1 148,800,952 fps 1 10,000Mbps
554
Client Simulator
Table 11-26: Client Simulator Parameters Parameter Session Ramp Distribution.Ramp Up Behavior Description Sets how the component will open sessions during the ramp up phase. Valid Values Full Open The full TCP handshake is performed on open. Full Open + Data The full TCP handshake is performed and DNS flows are kept open. DNS flows will not be closed during ramp up. Full Open + Data + Full Close The full TCP handshake is performed, and data will be sent once the session opens. Sessions are closed as they finish sending data and new sessions are opened. Full Open + Data+Close with Reset The full TCP handshake is performed and DNS flows are kept open. DNS flows will not be closed during ramp up. Initiates the TCP close with an RST. Half Open The full TCP handshake is performed when sessions are opened, but the final ACK is omitted. SYN Only Only SYN packets are sent. Data Only Only PSH data packets are sent. In this mode, the state machine is bypassed, so no connections are set up; therefore, the ACKs will be be invalid. Use this mode for testing QoS routing, not stateful DUTs.
555
Client Simulator
Table 11-26: Client Simulator Parameters Parameter Session Ramp Distribution.SYN Only Retry Mode Description Defines the behavior of the TCP Retry Mechanism when dealing with the initial SYN packet of a flow. Valid Values Continuous Continue sending SYN packets. Continuous with new session Continue sending SYN packets and change the initial sequence number every "Retry Count" loop(s). Obey Retry - Send no more than Retry Count initial SYN packets. 0 1,000,000
Sets the duration for which new sessions can be opened. Sets how the component will handle sessions during the steady-state phase.
Open and Close Sessions Sessions are closed as they finish sending data, and new sessions are opened. Open and Close with Reset Response Once the session has finished sending data, it will wait for the server to close the session. After the server has closed the session, the client will send a RST. Hold Sessions Open No existing sessions opened during Ramp Up are closed.
Sets the amount of time sessions have to open, send data, and close. The system will have to maintain the number of open session for this time period.
0 1,000,000
556
Client Simulator
Table 11-26: Client Simulator Parameters Parameter Session Ramp Distribution.Ramp Down Behavior Description Sets how the component will close sessions during the time period specified for Session Ramp Distribution.Ramp Down Time. Valid Values Full Close The full TCP session close is performed. Half Close The full TCP session close is performed, but the final ACK is omitted. Reset Close all sessions by sending TCP RST (reset) packets. Session Ramp Distribution.Ramp Down Time Interval Delay Start Sets the amount of time open sessions have to close. Delays the start of a test component by the time specified. Floating values are supported. Determines whether the connection establishment rate is a constant rate or an incremental rate as defined by the user. 0 1,000,000
0 4,294,967,295
Calculated The connection establishment rate will be a constant rate. It is calculated by taking the maximum number of sessions divided by the ramp up time. This option allows the component to attempt to reach the maximum number of connections during the ramp up phase. If this option is used, all other parameters listed under the Ramp Up Profile group will be disabled.
557
Client Simulator
Table 11-26: Client Simulator Parameters Parameter Ramp Up Profile.Ramp Up Profile Type Description Determines whether the connection establishment rate is a constant rate or an incremental rate as defined by the user. Valid Values Stair Step The connection establishment rate is an incremental rate, and it will be determined by the values input for Minimum Connection Rate, Maximum Connection Rate, Increment N connections per second, and Every N seconds. This option sets the minimum connection rate that the system will start with and increment until it reaches the maximum connection rate or until the ramp up phase elapses. If the maximum connection rate is met, the system will hold that rate until the ramp up phase is over. 1 750,000*
Sets the minimum connection establishment rate that will be used to start the ramp up phase. Sets the maximum connection establishment rate that will the system will attempt to reach during the ramp up phase. Once the system reaches this rate, it will continue to hold this rate until the ramp up phase ends. Sets the number of connections that the connection establishment rate will be incremented by for the time specified for Every N seconds. The interval at which connection establishment rate will be changed when not in Calculated mode.
1 750,000*
1 500,000
1 1,000,000
558
Client Simulator
Table 11-26: Client Simulator Parameters Parameter Session/Super Flow Configuration.Maximum Simultaneous Super Flows Description Defines the maximum simultaneous Super Flows that will exist concurrently during the test duration. This value defines a shared resource between different test components. The total maximum simultaneous sessions for all components in a test must be less than or equal to 15,000,000. Defines the maximum number of Super Flows that will be instantiated per second. Determines globally how fast sessions are opened. If set to true, sessions will be opened as fast as possible. Note: this setting may produce session open rates faster than the global limit. Determines how fast sessions are closed. If set to false, session close rate will mirror the session open rate. If set to true, sessions will be closed as fast as possible. Specifies a minimum number of sessions that the test must open in order to pass in the final results. Specifies a minimum number of sessions per second that the test must open in order to pass in the final results. Valid Values 1 15,000,000*
Session/Super Flow Configuration.Maximum Super Flows Per Second Session/Super Flow Configuration.Unlimited Super Flow Open Rate
1 750,000*
true or false
true or false
Session/Super Flow Configuration.Target Minimum Simultaneous Super Flows Session/Super Flow Configuration.Target Minimum Super Flows Per Second
1 15,000,000*
1 750,000*
559
Client Simulator
Table 11-26: Client Simulator Parameters Parameter Session/Super Flow Configuration.Target Number of Successful Matches IPv4 Configuration.TTL Description Specifies the minimum number of successful matches required to pass in the final results. Sets the maximum bound on the number-of-hops that an IP datagram can exist in an internet system before it is dropped. Configures the TOS field used for all IP packets. Helps control the distribution of source ports for TCP connections. N/A Valid Values
0 255
0 ff Random Specifies no ordering. Ports will be chosen randomly between min to max. Constant Specifies that the same port will be used for every flow tuple. Range Specifies that the ports will be used sequentually, from min to max. 0 65,535
Source Port.Minimum Port Number Source Port.Maximum Port Number TCP Configuration.Maximum Segment Size (MSS) TCP Configuration.Aging Time
Helps control the distribution of source ports for TCP connections. Helps control the distribution of source ports for TCP connections. Sets the maximum segment size that is used during the ramp up phase. The time, expressed in seconds, that an activelyclosed TCP connection will remain in the flow table in the TIME_WAIT state after closing. Allows the specification of the TCP flags as bits.
0 65,535
512 9,142
1 120
-1 4095
560
Client Simulator
Table 11-26: Client Simulator Parameters Parameter TCP Configuration.Reset at End Description Indicates whether or not a test should reset all existing TCP connections at the end. If enabled, all TCP connections will reset if the test either ends naturally or is canceled. Sets the amount of time that elapses before a connection is retried. Sets the number of times a connection is attempted before it is canceled. Determines whether or not to delay the ACK of TCP segments. Enable this parameter to send the ACK on the next send, or disable this parameter to send the ACK separately on receive. Sets the size of the initial receive window for a new connection. Allows the size of the TCP header to be expanded by 12 32 bytes. Disable this parameter if you are generating TCP stacks with segment sizes greater than 1,460 and do not want to generate jumbo frames. Determines whether to add Data to the client ACK packet of the TCP handshake. Sets the Load Profile that will be used by Client Simulator. Valid Values true or false
1 2,000
13
true or false
1 65,535
true or false
true or false
561
Client Simulator
Table 11-26: Client Simulator Parameters Parameter App Configuration.Streams Per Super Flow Description The maximum number of streams that will be instantiated for an individual Super Flow at one time. Indicates whether applications will generate more complex, dynamic traffic, or will generate simpler, possibly more performant, traffic. This setting may not have an effect for all application protocols and profiles. Sets the Super Flow that will be used by Client Simulator. This Super Flow must use Conditional Requests. 1 256 Valid Values
High for more complex/ dynamic traffic Normal for simpler traffic
Super Flow
* 1 Gb blades will only support up to 5,000,000 simultaneous sessions at a rate of 500,000 sessions per second.
562
563
Table 11-27: SMB and SMB2 Settings for Client Simulator Setting SMB Write File to Share Description The SMB Write File to Share is the file name to be written to the SMB or SMB2 Share Name. To ensure a unique file name, use the %f parameter to specify the flow and the %g parameter to include a goto iteration in the filename. For example, testfile-%f%g.txt. Valid Options SMB Minimum Random Filesize - When no resource file is specified, this setting determines the minimum possible size of the randomlygenerated file. Setting this parameter will cause the File Contents setting to be ignored. SMB Maximum Random Filesize - When no resource file is specified, this setting determines the maximum possible size of the randomlygenerated file. Setting this parameter will cause the File Contents setting to be ignored. SMB File Contents The imported contents to write to the file name on the SMB or SMB2 Share Name. SMB Append file on share The file name to be appended to the SMB or SMB2 Share Name. To ensure a unique file name, use the %f parameter to specify the flow and the %g parameter to include a goto iteration in the filename. For example, testfile-%f%g.txt. If the file does not already exist, it is created. If the file already exists, it is appended. SMB Minimum Random Filesize - When no resource file is specified, this setting determines the minimum possible size of the randomlygenerated file. Setting this parameter will cause the File Contents setting to be ignored.
SMB Maximum Random Filesize When no resource file is specified, this setting determines the maximum possible size of the randomlygenerated file. Setting this parameter will cause the File Contents setting to be ignored.
564
Table 11-27: SMB and SMB2 Settings for Client Simulator Setting Description Valid Options SMB File Contents The imported contents to Append to the File Name on the SMB or SMB2 Share Name. Verify File from Share The file name from the SMB or SMB2 Share Name to read and compare against File Contents. If there is a data mismatch between the data read back from the SMB or SMB2 File Name on the Share Name and the File Contents, an exception will be displayed. If a Unique File Name using the %f and %g options was used for the Write action, it should also be used in the Verify action. For example, testfile-%f%g.txt. The imported File Contents that will be compared against the data read back from the File Name on the remote SMB or SMB2 Share Name. The same source file should be used as the file contents chosen for the write action. The File Name from the SMB or SMB2 Share Name to read. If a Unique File Name using the %f and %g options was used for the Write action, it should also be used in the Verify action. For example, testfile-%f-%g.txt.
565
Recreate
Table 11-27: SMB and SMB2 Settings for Client Simulator Setting Delete File from Share Description The File Name from the SMB or SMB2 Share Name to delete. If a Unique File Name using the %f and %g options was used for the Write action, it should also be used in the Delete action. For example, testfile-%f-%g.txt. No Parameters. Disconnects from Share name and Logs off User Name. Valid Options
Disconnect
Recreate
The Recreate test component recreates traffic in two different modes: Normal and Raw Playback. In Normal mode, the TCP and UDP payloads from the imported capture file are the only portions that will not be modified. The Recreate test component rewrites the data to match the traffic parameters specified for the domain. Note: Recreate currently supports importing capture files in standard libpcap (used by tools such as tcpdump and Wireshark) and libpcap files compressed with gzip. In Raw mode, the capture file is retransmitted unmodified. This mode is useful for testing Layer 2, Layer 3, and Layer 4 headers. Note: When importing a capture file that contains corrupt Layer 2, 3, or 4 headers like those created by the Stack Scrambler component for replay in the Recreate component, set Replay capture file without modification to true to properly replay the traffic. The BreakingPoint Storm CTM can import a maximum of 500 MB of any imported capture file. When this maximum is reached, the BreakingPoint Storm CTM will stop converting the PCAP file into our internal file format. A copy of the original capture file is also imported into the system. This copy of the original capture file is not modified and is not limited by the Export Size, BPF filter options or the 500 MB limit. This copy of the original capture file is used when the Recreate Replay capture file without modification option is set to true. The Replay capture file without modification option has a runtime BPF filter parameter that can be used to limit which packets are replayed. Note: Replay capture file without modification means that the capture file (in libpcap format) will be recreated on the wire as-is, without modifying or changing any of the L2, L3, L4, or payload information.
566
Recreate
Playback Settings
There are two ways to play back the PCAP file: Use capture file settings Use user-specified settings Using the first setting, Use capture file settings, Recreate in Normal Mode will use the data rate, maximum simultaneous sessions, sessions per second, test duration, interpacket delays, application payloads, and destination ports from the PCAP file. All other fields/parameters will be taken from the Parameters tab. The source port will be randomized. Using the first setting, Use capture file settings, Recreate in Raw Playback Mode will IGNORE the data rate, maximum simultaneous sessions, sessions per second, test duration, inter-packet delays, application payloads, and destination ports from the capture file. The capture file will honor the interpacket delay of the original capture file. A BPF filter can be applied to send only packets that match the filter, and TCP and UDP ports can be changed. Using the first setting, Use capture file settings, Recreate, with the parameter Replay Capture File without Modification set to true, will IGNORE the data rate, maximum simultaneous sessions, sessions per second, test duration, inter-packet delays, application payloads, and destination ports from the capture file. The capture file will honor the interpacket delay of the original capture file. A BPF filter can be applied to send only packets that match the filter, and TCP and UDP ports can be changed. The test will end when all the packets are replayed or the time duration of the test expires, whichever comes first. Note: Note: Use capture file settings do not accept TTL/TOS/DSCP values. Also, this setting does not count the number of times a capture is looped or replayed. Note: When a file is played back in a Recreate component with Replay capture file without modification set to true and Use capture file settings selected, the inner packet delay between packets can differ from the original packet capture due to additional processing overhead. This can cause the resulting Recreate timestamp to appear to be longer than the original PCAP. Using the second setting, Use User-specified settings, Recreate in Normal Mode will only use the application payload and destination ports from the PCAP file. The source ports will be randomized and all other fields/parameters will be taken from the Parameters tab. The interpacket delays will be set to 0. The purpose behind these two settings is to allow you to use the application payload from the PCAP file, but still have some control over how the file is replayed. Use capture file settings essentially lets you replay the PCAP as it is, whereas Use User-specified settings enables you to control how fast or slow the traffic is replayed. If you want your PCAP file replayed as closely to the original as possible, you should use Use capture file settings. If you only want to replay your application payload, and change the speed at which it is replayed, you should use Use User-specified settings.
567
Recreate
With Use User-specified settings, Recreate in Raw Playback Mode will retransmit the capture file as fast as possible. The capture file can be looped multiple times, a BPF filter can be applied to send only packets that match the filter, and TCP and UDP ports can be changed.
568
Recreate
Recreate Parameters
Table 11-28 on page 569 lists the parameters for the Recreate test component. Table 11-28: Recreate Parameters Description Determines whether the Recreate test component uses the data in the capture file or the parameters defined for the component. Valid Values Use capture file settings Uses the settings within the capture file to recreate traffic. This option will force Recreate to use the data rate, maximum simultaneous sessions, sessions per second, test duration, inter-packet delays, application payload(s), and destination ports from the PCAP file. The source ports are randomized and all other settings will be derived from the Parameters tab and Network Neighborhood. Use user-specified settings Uses the Recreate parameters options to recreate traffic. This option will only use the application payload and destination ports from the PCAP file. The source ports and all other parameters and fields will be derived from the Parameters tab and the Network Neighborhood. This option will force Recreate to ignore any inter-packet delays in the PCAP file and set these delays to 0. Session Ramp Distribution.Ramp Up Seconds Sets the duration for which new sessions can be opened. 0 1,000,000
569
Recreate
Table 11-28:
Recreate Parameters Description Sets how the component will handle sessions during the steady-state phase. Valid Values Open and Close Sessions Sessions are closed as they finish sending data, and new sessions are opened. Open and Close with Reset Response Once the session has finished sending data, it will wait for the server to close the session. After the server has closed the session, the client will send a RST. Hold Sessions Open No existing sessions opened during Ramp Up are closed.
Sets the amount of time sessions have to open, send data, and close. The system will have to maintain the number of open session for this time period. Sets how the component will close sessions during the time period specified for Session Ramp Distribution.Ramp Down Time.
0 1,000,000
Full Close The full TCP session close is performed. Half Close The full TCP session close is performed, but the final ACK is omitted. Reset Close all sessions by sending TCP RST (reset) packets.
0 1,000,000
570
Recreate
Table 11-28:
Recreate Parameters Description Determines whether the connection establishment rate is a constant rate or an incremental rate as defined by the user. Valid Values Calculated The connection establishment rate will be a constant rate. It is calculated by taking the maximum number of sessions divided by the ramp up time. This option allows the component to attempt to reach the maximum number of connections during the ramp up phase. If this option is used, all other parameters listed under the Ramp Up Profile group will be disabled. Stair Step The connection establishment rate is an incremental rate, and it will be determined by the values input for Minimum Connection Rate, Maximum Connection Rate, Increment N connections per second, and Every N seconds. This option sets the minimum connection rate that the system will start with and increment until it reaches the maximum connection rate or until the ramp up phase elapses. If the maximum connection rate is met, the system will hold that rate until the ramp up phase is over.
Sets the minimum connection establishment rate that will be used to start the ramp up phase.
1 750,000*
571
Recreate
Table 11-28:
Recreate Parameters Description Sets the maximum connection establishment rate that will the system will attempt to reach during the ramp up phase. Once the system reaches this rate, it will continue to hold this rate until the ramp up phase ends. Sets the number of connections that the connection establishment rate will be incremented by for the time specified for Every N seconds. Sets the time interval that Increment N connections per second will use to increment the connection establishment rate. Sets the maximum number of concurrent sessions that can be set up by the system at a given time. This value must be greater than Session Configuration.Target Minimum Simultaneous Sessions. Sets the maximum number of sessions that can occur per second. This value must be greater than Session Configuration.Target Minimum Sessions Per Second. Valid Values 1 750,000*
1 500,000
1 1,000,000
1 15,000,000*
1 750,000*
572
Recreate
Table 11-28:
Recreate Parameters Description Disables the limit on the close rate. If this option is set to false, then the close rate is limited by the connection establishment rate. If this option is set to true, then the system will close the sessions as quickly as the bandwidth allows; therefore, the number of open sessions will be closer to the maximum number of simultaneous sessions set for the component. The number of sessions that must open to pass the test. This value must be less than Session Configuration.Maximum Simultaneous Sessions. The number of sessions per second that must be reached to pass the test. This value must be less than Session Configuration.Maximum Sessions Per Second. Sets the maximum bound on the number-of-hops that an IP datagram can exist in an internet system before it is dropped. Configures the TOS field used for all IP packets. Sets the maximum segment size that is used during the ramp up phase. Sets the amount of time that elapses before a connection is retried. Valid Values true or false
Session Configuration.Target Minimum Simultaneous Sessions Session Configuration.Target Minimum Sessions Per Second
1 15,000,000* 0 When Modification Options.Replay capture file without modification is set to True 1 750,000*
IPv4 Configuration.TTL
0 255
IPv4 Configuration.TOS/ DSCP TCP Configuration.Maximu m Segment Size (MSS) TCP Configuration.Retry Quantum
0 ff
512 9,146
100 2,000
573
Recreate
Table 11-28:
Recreate Parameters Description Sets the number of times a connection is attempted before it is canceled. Determines whether or not to delay the ACK of TCP segments. Enable this parameter to send the ACK on the next send, or disable this parameter to send the ACK separately on receive. Sets the size of the initial receive window for a new connection. Allows the size of the TCP header to be expanded by 12 32 bytes. Disable this parameter if you are generating TCP stacks with segment sizes greater than 1,460 and do not want to generate jumbo frames. Sets the amount of time that elapses before a connection is retried. Uses the value defined for the data rate as the limit for the transmitting and receiving interfaces or as the aggregate limit for the test component. 13 Valid Values
true or false
1 65,535
true or false
100 2,000
Limit Per-Interface Throughput Uses the data rate as the limit for the transmitting and receiving interfaces. Limit Aggregate Throughput Uses the data rate as an aggregate limit for the test component.
Frames/second or Megabits/second
574
Recreate
Table 11-28:
Recreate Parameters Description Sets how the component determines the data rate it will to send its traffic. Valid Values Constant Uses Data Rate.Minimum value as the data rate. Random Selects a random value between Data Rate.Minimum value and Data Rate.Maximum value as the data rate. Range Starts at Data Rate.Minimum value and increments until it reaches Data Rate.Maximum value. The system uses an algorithm that determines the incremental value that will increase Data Rate.Minimum value. until it reaches Data Rate.Maximum value.
Sets the maximum throughput that the test will consume over the transmitting and receiving interfaces, if Data Rate.Data rate type is set to Constant. Otherwise, this is the minimum value used by the test if Data Rate.Data rate type is set to Range or Random. Sets the maximum throughput that the test will consume over the transmitting and receiving interfaces; this parameter is used only if Data Rate.Data rate type is set to Range or Random. Sets the capture file the component will use to obtain its payloads.
Filename
A PCAP file
575
Recreate
Table 11-28:
Recreate Parameters Description Sets how the component will open sessions during the ramp up phase. Valid Values Full Open The full TCP handshake is performed when sessions are opened. Full Open + Data The full TCP handshake is performed when sessions are opened. Data will be sent once the session opens. Full Open + Data + Close The full TCP handshake is performed, and data will be sent once the session options. Sessions are closed as they finish sending data and new sessions are opened. Half Open The full TCP handshake is performed when sessions are opened, but the final ACK is omitted. SYN Only Only SYN packets are sent. Data Only Only PSH data packets are sent. In this mode, the state machine is bypassed, so no connections are set up; therefore, the ACKs will be be invalid. Use this mode for testing QoS routing, not stateful DUTs.
576
Recreate
Table 11-28:
Recreate Parameters Description This mode replays libpcap formatted capture files without modifying Layer 2 through Layer 7. Recreate will derive all settings and configurations from the PCAP file. When operating in this mode, Recreate will only track the Interface Stats. Also, the capture file can be replayed at a maximum of 200 Mbps, depending on the type of system you are using. Rewrite source and destination ports that match Original Port to New Port. This option can only be used when Replay capture file without modification is set to false. A value or 0 for Original Port or New Port disables this feature. Rewrite source and destination ports that match Original Port to New Port. This option can only be used when Replay capture file without modification is set to false. A value or 0 for Original Port or New Port disables this feature. When set, only matching packets will be played back. This option can only be used when Replay capture file without modification is set to true. The number of times to replay capture file without modification. Sets the Load Profile that will be used by Recreate. Valid Values true or false
0 65535
0 65535
1 10000
577
Presets
Presets
The BreakingPoint Storm CTM offers several default presets for each test component. These have been pre-configured by BreakingPoint Systems; they cannot be modified or deleted; however, you can modify them and save them as new presets. Presets are similar to templates: they contain predefined component configurations that can be reused in other tests. All parameter definitions, interface selections, and descriptions will be stored in the preset. Once you save a component as a preset, it will be listed under the Presets tab for the component type on which it is based. These presets can be treated like any other test component. Presets are particularly useful if you are using the Tcl Interface to test a device. You can create presets that contain the necessary test configuration parameters built into them. Therefore, when you reference the preset from the Tcl interface, you will not need to configure any of the parameters for the component.
Saving Presets
Before saving a preset, make sure that you have configured the test component to your specifications. To save the test component, you must be on the testing interface screen, and the test component you want to save must be viewable from the testing interface screen. To save a custom component: 1. Right-click on the test component you would like to save as a preset. 2. Select Save Component As Preset from the list of options that display. 3. Enter a name for the Preset in the Name field. 4. Click the Save button.
Editing a Preset
If you make changes to a preset after you have saved it, you must save it as a new preset. If you want to reuse the same preset name, you must first delete the preset from the system. After you have removed the preset from the system, you will need to recreate the component and re-save it as a preset.
578
Tests Overview
12 Testing
This section covers: Tests Overview Quick Tests Tests Test Status Real-Time Statistics Test Pass/Fail Criteria Test Interfaces Test Series
Tests Overview
The BreakingPoint Storm CTM offers three methods for testing: Quick Tests: A test based on a single test component that is pre-configured to test industry standard metrics. For more information on Quick Tests, see the section Quick Tests on page 579. Tests: A user-created test configuration made up of one or more test components. For more information on Tests, see the section Tests on page 581. Test Series: A series of one or more tests that execute sequentially. For more information on Test Series, see the section Test Series on page 641.
Quick Tests
Quick Tests provide you with a quick snapshot of how well a device performs under standard testing metrics. These pre-configured tests can be run without any modifications. Six Quick Tests are available from the main Test page: Bit Blaster: The Bit Blaster Quick Test measures the raw throughput capacity of the device under test. It is comprised of a series of Bit Blaster tests and takes about 30 minutes to run. Routing Robot: The Routing Robot Quick Test measures a devices ability to route IP packets correctly by sending data out through various interfaces and verifying that the expected interface receives the data. Session Sender: The Session Sender Quick Test measures the capacity of the device to handle the maximum number of concurrent sessions. Security: The Security Quick Test uses Security Level 1, which targets high-risk vulnerabilities in services that are often exposed to the Internet. Stack Scrambler: The Stack Scrambler Quick Test measures a devices ability to handle invalid IP, TCP, UDP, ICMP, and Ethernet packets by fuzzing the protocols and sending the resulting traffic to the device. Application Simulator: The Application Simulator Quick Test measures the devices ability to handle a realistic mix of application layer traffic flows.
579
Quick Tests
Note: There are several more pre-configured tests available; however, they are all security-based tests. You can view these tests from the Browse Tests page.
Additionally, after you run or cancel a Quick Test, you can edit the test from the Real-Time Statistics screen by clicking the Edit button. The Quick Test will open, and you can edit
580
Tests
any of its settings. Once you are done editing the test, you must save the test with a new name. You cannot overwrite any of the settings configured for a Quick Test.
Tests
The Test Quick Steps menu provides step-by-step instructions that guide you through the testing process. The Quick Steps menu allows you to: 1. Select a DUT profile and a Network Neighborhood. 2. Add test components to the test. 3. Define test criteria. 4. Save and run the test. Figure 12-1 on page 581 shows the test interface and the Test Quick Steps menu. Figure 12-1: Test Interface
Creating a Test
The Test Quick Steps Menu lists the steps that need to be taken to create and run a test. Click on any of the steps listed in the Test Quick Steps Menu to open the screen related to performing the task. To create a test: 1. Select Test > New Test from the Menu bar.
581
Tests
2. Click Select the DUT/Network from the Test Quick Steps menu. 3. Select a DUT Profile from the Device Under Test(s) list. Note: Click the Open device under test screen link to make any connection type or parameter changes to the DUT Profile. For more information on DUT Profiles, see the section DUT Profiles on page 41. 4. Select a Network Neighborhood from the Network Neighborhood(s) list. Note: Click the Open network neighborhood screen link to make any changes to the Network Neighborhoods. For more information on modifying the Network Neighborhood, see the section What Is a Network Neighborhood? on page 47. 5. Click the Accept button after you have made selections for the DUT Profile and Network Neighborhood. 6. Click Add a test component from the Test Quick Steps menu. 7. Click on the test component to be added to the test. The edit screen for the test component will display. 8. Click the Information tab and do the following: Enter a name for the test component in the Name field. (Optional) Replace the description with a customized description of the test component. There is a 500 character limit. This information will display when you hover over the test component on the test rack. (Optional) Change the component by clicking on a different component under the Change this component to... area. If you change the component, all the information that you have already defined for the current component will be removed except for the interface configurations. Select the Active check box to enable the test component for the test or deselect the Active check box to disable the test component for the test. Select the Include in Report check box to include the statistics from the test in the report. Deselect the check box to disable the detailed section of the report for that component. 9. Click the Apply Changes button. 10. Click the Interfaces tab and do the following: Select the interfaces that will act as the Client, then select the domain that will be used for client addressing. Select the interfaces that will act as the Server, then select the domain that will be used for server addressing. Note: You can select up to four interfaces to act as the server and up to four interfaces to act as the client; however, for Routing Robot or Bit Blaster, only one interface can be assigned as the client. Additionally, if you are using the External interface, you cannot assign any other interface as the server. Only the External interface can be used for server addressing. For more information on test interfaces, see the section Test Interfaces on page 639. 11. Click the Apply Changes button.
582
Tests
12. Click the Presets tab and do the following. 13. Select a preset from the Component Presets list. Note: The presets are components that have been pre-configured with default parameter values. You can use the default values, or you can modify any of the existing settings to match your testing needs. 14. Click the Apply Changes button. 15. Click the Parameters tab. 16. Modify any parameters for the test component. For more information on test component parameters, see the section Test Components Overview on page 461.
n n
Adjust any parameters for the test component. Select and edit the Evasion Profile settings from the Parameter Label section. (Optional, for Security component only.) For more information on Evasion Profile settings, see the section Evasion Profile Settings on page 96. Edit the Concurrent Strikes settings from the Parameter Label section. (Optional, for Security component only.) The Concurrent Strikes parameter allows you to choose between Single Strike and Default modes. Single Strike mode runs only one strike at a time, while Default mode runs up to five strikes simultaneously.
17. Click the Apply Changes button when done. 18. Repeat steps 6-18 to add any additional test components. 19. Click Define Test Criteria from the Test Quick Steps menu. 20. Create the pass/fail criteria for your test. For more information on creating test criteria, see the section Test Pass/Fail Criteria on page 587. 21. Click the Close button. 22. Click the Test Status link to verify that the test does not exceed bandwidth and resource limitations. Note: The system will verify that the test will run and the maximum bandwidth for each testing interface is not oversubscribed. For more information on the test status, see the section Test Status on page 586. 23. Click Save and Run from the Test Quick Steps menu. A popup window will display allowing you to save your test. 24. Enter a name for the test. 25. Click the Save button. Note: After clicking Save, the test will run and the Real-Time Statistics screen will display. For more information on Real-Time Statistics, see the Real-Time Statistics on page 628. When the test finishes, a popup window will display whether the test passed or failed. Click the OK button to close the window. On the Real-Time Statistics screen, you can choose to restart the test, view the results for the test, or edit the test.
Running a Test
Before running any tests, verify that the DUT Profile, Network Neighborhood, and component parameters have been defined to your specifications.
583
Tests
To run a test: 1. Select Test > Open Test from the Menu bar. 2. Select a test from the list of tests. Note: You can sort the tests by clicking on any of the column headings (Name, Author, Last Run By, etc.) and scroll through the pages by clicking on the page numbers. 3. Click the Run button. 4. Click the Accept button to run the test. Note: For GTP-based tests, it may take up to 20 minutes to close all of the tunnels used in the test. The user interface will be unavailable during this time. Once the test is complete and the system closes all of the tunnels used in the test, the system will become available.
584
Tests
Exporting a Test
When a test is exported, the test components and the component parameters are saved in a .bpt file, which can be e-mailed or placed in a central location where other system users can access it to import into their systems. Note: Tests created with a newer version of the BreakingPoint Storm CTM will not work on older versions; however, tests created with an older version of the system will migrate to a newer version of the system. To export a test: 1. Select Test > Open Test from the Menu bar. 2. Select the test to be exported. 3. Click the Open button. 4. Select Test > Export Test. 5. Click the Save button when the File Download window displays. 6. Navigate to the location where the exported test will be stored. 7. Click the Save button.
Importing a Test
The BreakingPoint Storm CTM enables you to import tests created on one BreakingPoint Storm CTM System to another. When a test is imported, the test components and their configurations are stored in the system and available to you from the Tests screen. You can open, configure, and run the test just like any other test stored in the system. In addition to importing the components and their configurations, the import test tool will import any DUT Profile, Network Neighborhood, PCAP file, Application Profile, Super Flows, and Strike List the system may need to run the test. Existing items that share the same name as the imported items will be overwritten. The system will not provide a warning when this occurs. If you have the Allow Overwrite option enabled, you can assign the imported test the same name as an existing test in the system. The system will overwrite the existing test with the data from the imported test. If this option is not enabled and you try to assign the imported test the same name as one that exists in the system, the system will alert you that a test of the same name already exists. Note: If you are importing tests created on a BPS 1K or 10K System, you will need to reserve and map your ports before you can run the test. Additionally, you may want to modify the interface mappings for your test if you are using the 1 Gb blade interface since it has 8 ports, thus, 8 possible test interfaces. To import a test: 1. Select Test > Import Test from the Menu bar. The import test screen will open. 2. Enter a name for the test in the Test Name field.
585
Test Status
3. Click the Browse button. 4. Navigate to the location of the test (.bpt file). 5. Select the Allow Overwrite check box if you want to overwrite an existing test with the same name. 6. Click the Upload button.
Opening a Test
There are two ways to open an existing test: either by using the Open Test feature or the Open Recent Tests feature from the Menu bar. If you select Test > Open Test from the Menu bar, the system will display a list of all the available tests on the system this includes all default and user-created tests. The system will categorize the tests by name, author, interfaces used, last date run, bandwidth, and test result. You can click on any of the column headings to sort the tests. If you select Test > Open Recent Tests, the system will display a list of up to 9 of the most recently saved tests. You can select any test from this list to open it.
Deleting a Test
Deleting a test will remove it completely from the system and from any test series that uses it. To delete a test: 1. Select Test > Open Test from the Menu bar. 2. Select the test you want to delete from the list of tests. 3. Click the Delete button. 4. Click Yes when the confirmation window displays.
Test Status
Before running a test, you should verify that your test has not exceeded the available bandwidth limitations and hardware resources. On the test screen, there is a link called Test Status. Next to it, you will see an icon that automatically updates with the tests status each time modify the test. If the icon is green, then the test is ready to run; however, if the icon is yellow, there is an issue with the test configuration. If this happens, you will need to click on the Test Status link to view the issues with the test configuration. The system authenticates the test by: Validating the addressing information provided to the system from the Network Neighborhood. Ensuring that the component parameters use valid values. Checking to see if the total bandwidth used across all test interfaces is supported by the BreakingPoint Storm CTM. Verifying the test interfaces being used are connected to a device under test. Verifying the parameters for the test work with the speed of the connection.
586
Bandwidth Limitations
Bandwidth limitations across all test interfaces depend on the link speed that is available for the DUT. The availability of bandwidth resources depend on the data rate and the subset of hardware resources being used by test components. These factors are used to determine whether or not there is enough bandwidth to execute the test. If the bandwidth for a test interface is oversubscribed, or using more bandwidth than there is available, check the data rate for each test component on that interface. The sum of the data rates for all test components on the interface should not exceed the bandwidth that is available. To determine how much bandwidth is available for an interface, click the Test Status link. You will see all four test interfaces listed on the screen. Each interface will list its maximum bandwidth capacity. Under each interface, you will see which components are utilizing the interfaces resources.
587
If you do not want to use the default test criteria for a test component, you can select any of the default criteria for the component and click the Disable all criteria for this component link. This will disable all default test criteria for that particular component.
588
To create pass/fail test criteria: 1. Select Test > New Test from the Menu bar to create a new test or Test > Open Test from the Menu bar to open an existing test. If you are opening an existing test, skip to Step 5. 2. Click Select DUT/Network from the Test Quick Steps menu to select a DUT Profile and Network Neighborhood for the test. If you are using the default DUT Profile and Network Neighborhood, skip this step. 3. Click the Add a Test Component from the Test Quick Steps menu. 4. Select a test component to add to the test. 5. Repeat steps 3-4 to add additional components to the test. 6. Click Define Test Criteria from the Test Quick Steps menu. 7. Click the Add (+) button. 8. Select the Enable stop on fail for this test option to use Stop on Fail as a test criteria for this test (optional). 9. Enter a name for the criterion in the Name field. Note: The name can consist of alphanumeric characters, spaces, -, and /. 10. Enter a description for the criteria in the Description field. Note: This information will display in the report under the Test Component Criteria section. 11. Enter a description for the test if it fails in the Fail Description field. Note: This information will display in the report under the Test Component Criteria section. 12. Select the statistic to be gathered from the Statistic field. 13. Select an operator from the Operator field. 14. Click the Create Criteria button.
Comparators
The next few sections will provide you with descriptions of all the comparators that are available in the system. These comparators are based on stats that the system collects while it is running the test. Each statistic listed in the Comparator list will be tagged with the components name for which it is associated. For example, if you have an component named Bit Blaster 23, then all stats for that component will be tagged Bit Blaster 23.statName. You can define a test components pass/fail criteria by using these stats to create boolean expressions. If the system finds that the boolean expression is true, then the test will pass; if the expression is false, then the test will fail. When determining the value the system will use for the stat, the system will use the highest value for the comparator found in the test results. For example, lets say you create a criterion that states: the Frame data transmit rate must equal 900 Mbps for the
589
test to pass. If the highest data rate that the test ever reaches is 700, then the system will use 700 as the stats value; therefore, in this case, based on the criterion you created, the test would fail. If a test fails, the system will log the test criteria that were not satisfied in the test results window that displays when the test completes. It will also be listed in the Test Synopsis area of the report as the reason for the test failure. Stats for Bit Blaster Table 12-2 on page 590 lists the stats that are available for the Bit Blaster test component. Table 12-2: Bit Blaster Stats Stat Gateway ARP Response Frames transmitted Description The ARP response sent from the gateway The total number of frames transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, application, and non-system generated traffic. The total number of bytes transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, application, and non-system generated traffic. The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames received by the component The total number of bytes received by the component The total number of transmitted frames that were between 64 127 bytes
Frames transmitted from 64 - 127 bytes Frames transmitted from 128 - 255 bytes Frames transmitted from 256 - 511 bytes Frames transmitted from 512 - 1023 bytes Frames transmitted from 1024 bytes up Frames received Frame bytes received Frames received from 64 - 127 bytes
590
Table 12-2: Bit Blaster Stats Stat Frames received from 128 - 255 bytes Frames received from 256 - 511 bytes Frames received from 512 - 1023 bytes Frames received from 1024 bytes up 0 - 10 us latency 11 - 100 us latency 101 - 1000 us latency 1001 - 10000 us latency over 10000 us latency Cumulative latency of all frames Corrupted frames received Description The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were larger than 1024 bytes The number of frames that had a latency between 0 10 microseconds The number of frames that had a latency between 11 100 microseconds The number of frames that had a latency between 101 1000 microseconds The number of frames that had a latency between 1001 10000 microseconds The number of frames that had a latency of more than 10000 microseconds The total latency for all frames transmitted and received by the component The total numbers of frames that were received by the component; this stat only includes tracks frames that encountered a CRC error. The total number of Out-of-Sequence frames received by the component The total number of frames that were not received on the correct port The total number of duplicate frames The total number of frames received by the component that did not come from the system The total number of slow start frames sent by the component The total number of frames dropped by the DUT
Out-of-sequence frames received Frames not received on the correct port Frames received more than once Frames received that were not testgenerated Slow start frames sent Dropped frames
591
Table 12-2: Bit Blaster Stats Stat Frames received with bad IP checksum Frames received with bad UDP checksum Slow start frames received Frame transmit rate Frame data transmit rate Average transmit frame size Description The total number of frames received by the system that had bad IP checksums The total number of frames received by the system that had bad UDP checksums The total number of slow start frames received by the component The rate at which frames were transmitted (in fps) by the component The rate at which data was transmitted (in Mbps) by the component The average size of frames transmitted by the component (in bytes). This value is computed by taking the transmitting data rate and dividing it by the total number of transmitted frames. The rate at which frames were received (in fps) by the component The rate at which data was received (in Mbps) by the component The average size of frames received by the component (in bytes). This value is computed by taking the receiving data rate and dividing it by the total number of received frames. The average amount of latency for all received frames. This value is computed by adding the latencies for all frames and dividing that number by the total number of frames that use the stats: 0 10 us latency, 11 100 us latency, 1001 10000 us latency, and over 10000 us latency. The maximum rate (in fps) at which frames are transmitted by the component The maximum rate (in Mbps) at which data is transmitted by the component
Frame receive rate Frame data receive rate Average receive frame size
592
Table 12-2: Bit Blaster Stats Stat Maximum frame receive rate Maximum frame data receive rate Description The maximum rate (in fps) at which frames are received by the component The maximum rate (in Mbps) at which data is received by the component
Stats for Routing Robot Table 12-3 on page 593 lists the stats for the Routing Robot test component. Table 12-3: Routing Robot Stats Stat Gateway ARP Response Frames transmitted Description The ARP response sent from the gateway The total number of frames transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, application, and non-system generated traffic. The total number of bytes transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, application, and non-system generated traffic. The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames received by the component The total number of bytes received by the component The total number of transmitted frames that were between 64 127 bytes
Frames transmitted from 64 - 127 bytes Frames transmitted from 128 - 255 bytes Frames transmitted from 256 - 511 bytes Frames transmitted from 512 - 1023 bytes Frames transmitted from 1024 bytes up Frames received Frame bytes received Frames received from 64 - 127 bytes
593
Table 12-3: Routing Robot Stats Stat Frames received from 128 - 255 bytes Frames received from 256 - 511 bytes Frames received from 512 - 1023 bytes Frames received from 1024 bytes up 0 - 10 us latency 11 - 100 us latency 101 - 1000 us latency 1001 - 10000 us latency over 10000 us latency Cumulative latency of all frames Corrupted frames received Description The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were larger than 1024 bytes The number of frames that had a latency between 0 10 microseconds The number of frames that had a latency between 11 100 microseconds The number of frames that had a latency between 101 1000 microseconds The number of frames that had a latency between 1001 10000 microseconds The number of frames that had a latency of more than 10000 microseconds The total latency for all frames received and transmitted by the component The total numbers of frames that were received by the component; this stat only includes tracks frames that encountered a CRC error. The total number of Out-of-Sequence frames received by the component The total number of frames that were not received on the correct port The total number of duplicate frames The total number of frames received by the component that did not come from the component The total number of slow start frames sent by the component The total number of slow start frames received by the component
Out-of-sequence frames received Frames not received on the correct port Frames received more than once Frames received that were not testgenerated Slow start frames sent Slow start frames received
594
Table 12-3: Routing Robot Stats Stat Dropped frames Frames received with bad IP checksum Description The total number of frames dropped by the DUT The total number of frames received by the component that had an altered IP checksum The total number of frames received by the component that had an altered UDP checksum The rate at which frames were transmitted (in fps) by the component The rate at which data was transmitted (in Mbps) by the component The average size of frames transmitted by the component (in bytes). This value is computed by taking the transmitting data rate and dividing it by the total number of transmitted frames. The rate at which frames were received (in fps) by the component The rate at which data was received (in Mbps) by the component The average size of frames received by the component (in bytes). This value is computed by taking the receiving data rate and dividing it by the total number of received frames. The average amount of latency for all received frames. This value is computed by adding the latencies for all frames and dividing that number by the total number of frames that use the stats: 0 10 us latency, 11 100 us latency, 1001 10000 us latency, and over 10000 us latency. The maximum rate (in fps) at which frames are transmitted by the component The maximum rate (in Mbps) at which data is transmitted by the component
Frames received with bad UDP checksum Frame transmit rate Frame data transmit rate Average transmit frame size
Frame receive rate Frame data receive rate Average receive frame size
595
Table 12-3: Routing Robot Stats Stat Maximum frame receive rate Maximum frame data receive rate Description The maximum rate (in fps) at which frames are received by the component The maximum rate (in Mbps) at which data is received by the component
Stats for Session Sender Table 12-4 on page 596 lists the stats for the Session Sender test component. Table 12-4: Session Sender Stats Stat Frames transmitted Description The total number of frames transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, application, and non-system generated traffic. The total number of bytes transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, application, and non-system generated traffic. The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames received by the component The total number of bytes received by the component The total number of frames received by the component but were dropped because they were malformed or misrouted
Frames transmitted from 64 - 127 bytes Frames transmitted from 128 - 255 bytes Frames transmitted from 256 - 511 bytes Frames transmitted from 512 - 1023 bytes Frames transmitted from 1024 bytes up Frames received Frame bytes received Dropped frames
596
Table 12-4: Session Sender Stats Stat Frames received from 64 - 127 bytes Frames received from 128 - 255 bytes Frames received from 256 - 511 bytes Frames received from 512 - 1023 bytes Frames received from 1024 bytes up 0 - 10 us latency 11 - 100 us latency 101 - 1000 us latency 1001 - 10000 us latency over 10000 us latency IP frames transmitted IP frame bytes transmitted Description The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were larger than 1024 bytes The number of frames that had a latency between 0 10 microseconds The number of frames that had a latency between 11 100 microseconds The number of frames that had a latency between 101 1000 microseconds The number of frames that had a latency between 1001 10000 microseconds The number of frames that had a latency of more than 10000 microseconds The total number of IP frames transmitted by the component The total number of bytes transmitted by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap. (IP frames only) The total number of IP frames received by the component The total number of bytes received by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap. (IP frames only) The total number of TCP frames transmitted by the component
597
Table 12-4: Session Sender Stats Stat TCP frame bytes transmitted Description The total number of bytes transmitted by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap. (TCP frames only) The total number of TCP frames received by the component The total number of bytes received by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap. (TCP frames only) The number of TCP sessions that took between 0 10 ms to send the first SYN and establish a connection The number of TCP sessions that took between 11 100 ms to send the first SYN and establish a connection The number of TCP sessions that took between 101 1000 ms to send the first SYN and establish a connection The number of TCP sessions that took between 1001 10000 ms to send the first SYN and establish a connection The number of TCP sessions that took longer than 10000 ms to send the first SYN and establish a connection The number of TCP sessions that took between 0 10 ms to go from the first FINACK to the last ACK The number of TCP sessions that took between 11 100 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took between 101 1000 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took between 1001 10000 ms to go from the first FIN-ACK to the last ACK
598
Table 12-4: Session Sender Stats Stat TCP close taking greater than 10000 ms Description The number of TCP sessions that took longer than 10000 ms to go from the first FIN-ACK to the last ACK The number of sessions that had a duration between 0 10 ms in the ESTABLISHED state The number of sessions that had a duration between 11 100 ms in the ESTABLISHED state The number of sessions that had a duration between 101 1000 ms in the ESTABLISHED state The number of sessions that had a duration between 1001 10000 ms in the ESTABLISHED state The number of sessions that had a duration of more than 10000 ms in the ESTABLISHED state The total number of TCP connections established by the client The total number of TCP connections closed by the client The total number of times that the server sent a TCP Reset (RST) which caused the session to be disconnected The total number of TCP Resets sent by the server The total number of TCP connections concurrently opened by the client The total number of TCP connections attempted by the client The total number of TCP connections established by the server The total number of TCP connections closed by the server The total number of TCP connections closed by the server
Duration 0 - 10 ms
Duration 11 - 100 ms
Client received RST Client concurrent Client attempted Server established Server closed Server concurrent
599
Table 12-4: Session Sender Stats Stat Server closed by reset Description The total number of times that the client sent a TCP Reset (RST) which caused the session to be disconnected The total number of TCP Resets sent by the client The total number of TCP connections on the clients side that were in the LISTEN state The total number of TCP connections on the clients side that were in the SYNSENT state The total number of TCP connections on the clients side that were in the SYNRECEIVED state The total number of TCP connections on the clients side that were in the ESTABLISHED state The total number of TCP connections on the clients side that were in the CLOSEWAIT state The total number of TCP connections on the clients side that were in the FIN-WAIT1 state The total number of TCP connections on the clients side that were in the CLOSING state The total number of TCP connections on the clients side that were in the LAST_ACK state The total number of TCP connections on the clients side that were in the FIN-WAIT2 state The total number of TCP connections on the clients side that were in the TIMEWAIT state The total number of TCP connections on the servers side that were in the LISTEN state
600
Table 12-4: Session Sender Stats Stat Server State "SYN_SENT" Description The total number of TCP connections on the servers side that were in the SYNSENT state The total number of TCP connections on the servers side that were in the SYNRECEIVED state The total number of TCP connections on the servers side that were in the ESTABLISHED state The total number of TCP connections on the servers side that were in the FINWAIT1 state The total number of TCP connections on the servers side that were in the CLOSING state The total number of TCP connections on the servers side that were in the LASTACK state The total number of TCP connections on the servers side that were in the FINWAIT-2 state The total number of TCP connections on the servers side that were in the TIMEWAIT state The maximum number of TCP sessions concurrently opened by the client The maximum number of TCP sessions concurrently opened by the server The rate at which frames were transmitted (in fps) by the component The rate at which data was transmitted (in Mbps) by the component The average size of frames transmitted by the component (in bytes). This value is computed by taking the transmitting data rate and dividing it by the total number of transmitted frames.
Maximum client concurrent Maximum server concurrent Frame transmit rate Frame data transmit rate Average transmit frame size
601
Table 12-4: Session Sender Stats Stat Frame receive rate Frame data receive rate Average receive frame size Description The rate at which frames were received (in fps) by the component The rate at which data was received (in Mbps) by the component The average size of frames received by the component (in bytes). This value is computed by taking the receiving data rate and dividing it by the total number of received frames. The average amount of latency for all received frames. This value is computed by adding the latencies for all frames and dividing that number by the total number of frames that use the stats: 0 10 us latency, 11 100 us latency, 1001 10000 us latency, and over 10000 us latency. The rate (in fps) at which IP frames are transmitted by the component The rate (in Mbps) at which IP data is transmitted by the component The rate (in fps) at which IP frames are received by the component The rate (in fps) at which IP frames are received by the component The rate (in fps) at which TCP frames are transmitted by the component The rate (in Mbps) at which TCP data is transmitted by the component The rate (in fps) at which TCP frames are received by the component The rate (in Mbps) at which TCP data is received by the component
IP frame transmit rate IP data transmit rate IP frame receive rate IP data receive rate TCP frame transmit rate TCP data transmit rate TCP frame receive rate TCP data receive rate
602
Table 12-4: Session Sender Stats Stat Average TCP setup time Description The average amount of time it takes from when the first SYN is sent to when the connection has been established. This value is computed by taking the total amount of set up time for all TCP sessions and dividing it by the total number of TCP sessions that had a set up time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The average amount of time it takes to send the first SYN and to receive a SYNACK. This value is computed by taking the total response time for all TCP sessions and dividing it by the total number of TCP sessions that had a response time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The average amount of time it takes from the first FIN-ACK to the last ACK. This value is computed by taking the total amount of time it takes for all TCP sessions to close time and dividing it by the total number of TCP sessions that had a close time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The average amount of time TCP sessions remained in the ESTABLISHED state. This value is computed by taking the total duration time for all TCP sessions and dividing it by the total number of TCP sessions that had a duration time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The rate at which TCP sessions are established by the client The rate at which TCP sessions are closed by the client The rate at which TCP connections are attempted by the client The rate at which TCP sessions are established by the server
Average duration
Client establish rate Client close rate Client attempt rate Server establish rate
603
Table 12-4: Session Sender Stats Stat Server close rate Maximum frame transmit rate Maximum frame data transmit rate Maximum frame receive rate Maximum frame data receive rate Maximum client establish rate Description The rate at which TCP sessions are closed by the server The maximum rate (in fps) at which frames are transmitted by the component The maximum rate (in Mbps) at which data is transmitted by the component The maximum rate (in fps) at which frames are received by the component The maximum rate (in Mbps) at which data is received by the component The maximum rate at which the client establishes TCP connections
Stats for Security Table 12-5 on page 604 lists the stats for the Security test component. Table 12-5: Security Stats Stat Source Gateway ARP Response Destination Gateway ARP Response Frames transmitted Description The ARP response sent from the source gateway The ARP response sent from the destination gateway The total number of frames transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, application, and non-system generated traffic. The total number of bytes transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, application, and non-system generated traffic. The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes
Frames transmitted from 64 - 127 bytes Frames transmitted from 128 - 255 bytes
604
Table 12-5: Security Stats Stat Frames transmitted from 256 - 511 bytes Frames transmitted from 512 - 1023 bytes Frames transmitted from 1024 bytes up Frames received Frame bytes received Dropped frames Description The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames received by the component The total number of bytes received by the component The total number of frames received by the component but were dropped because they were malformed or misrouted The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were larger than 1024 bytes The number of frames that had a latency between 0 10 microseconds The number of frames that had a latency between 11 100 microseconds The number of frames that had a latency between 101 1000 microseconds The number of frames that had a latency between 1001 10000 microseconds The number of frames that had a latency of more than 10000 microseconds The total latency for all frames transmitted and received by the component
Frames received from 64 - 127 bytes Frames received from 128 - 255 bytes Frames received from 256 - 511 bytes Frames received from 512 - 1023 bytes Frames received from 1024 bytes up 0 - 10 us latency 11 - 100 us latency 101 - 1000 us latency 1001 - 10000 us latency over 10000 us latency Cumulative latency of all frames
605
Table 12-5: Security Stats Stat Strikes Passed Total Strikes allowed Total Strikes blocked Total Strike count Blocked Strike count Strike Error Count Frame transmit rate Frame data transmit rate Average transmit frame size Description The total number of Strikes that were not blocked by the DUT The total number of Strikes not blocked by the DUT The total number of Strikes blocked by the DUT The total number of Strikes sent to the DUT The total number of Strikes blocked by the DUT The total number of Strikes that encountered an error The rate at which frames were transmitted (in fps) by the component The rate at which data was transmitted (in Mbps) by the component The average size of frames transmitted by the component (in bytes). This value is computed by taking the transmitting data rate and dividing it by the total number of transmitted frames. The rate at which frames were received (in fps) by the component The rate at which data was received (in Mbps) by the component The average size of frames received by the component (in bytes). This value is computed by taking the receiving data rate and dividing it by the total number of received frames. The average amount of latency for all received frames. This value is computed by adding the latencies for all frames and dividing that number by the total number of frames that use the stats: 0 10 us latency, 11 100 us latency, 1001 10000 us latency, and over 10000 us latency.
Frame receive rate Frame data receive rate Average receive frame size
606
Table 12-5: Security Stats Stat Maximum frame transmit rate Maximum frame data transmit rate Maximum frame receive rate Maximum frame data receive rate Description The maximum rate (in fps) at which frames are transmitted The maximum rate (in Mbps) at which data is transmitted The maximum rate (in fps) at which frames are received The maximum rate (in Mbps) at which data is received
Stats for Stack Scrambler Table 12-6 on page 607 lists the stats for the Stack Scrambler test component. Table 12-6: Stack Scrambler Stats Stat Source Gateway ARP Response Destination Gateway ARP Response Frames transmitted Description The ARP response sent from the source gateway The ARP response sent from the destination gateway The total number of frames transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, ICMP, application, and non-system generated traffic. The total number of bytes transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, ICMP, application, and non-system generated traffic. The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were between 512 1023 bytes
Frames transmitted from 64 - 127 bytes Frames transmitted from 128 - 255 bytes Frames transmitted from 256 - 511 bytes Frames transmitted from 512 - 1023 bytes
607
Table 12-6: Stack Scrambler Stats Stat Frames transmitted from 1024 bytes up Frames received Frame bytes received Dropped frames Description The total number of transmitted frames that were larger than 1024 bytes The total number of frames received by the component The total number of bytes received by the component The total number of frames received by the component but were dropped because they were malformed or misrouted The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were larger than 1024 bytes The number of frames that had a latency between 0 10 microseconds The number of frames that had a latency between 11 100 microseconds The number of frames that had a latency between 101 1000 microseconds The number of frames that had a latency between 1001 10000 microseconds The number of frames that had a latency of more than 10000 microseconds The total latency for all frames transmitted and received by the component The total number of pings sent by the component The total number of pings received by the component
Frames received from 64 - 127 bytes Frames received from 128 - 255 bytes Frames received from 256 - 511 bytes Frames received from 512 - 1023 bytes Frames received from 1024 bytes up 0 - 10 us latency 11 - 100 us latency 101 - 1000 us latency 1001 - 10000 us latency over 10000 us latency Cumulative latency of all frames Pings sent Pings received
608
Table 12-6: Stack Scrambler Stats Stat Final pings sent Final pings received Frame transmit rate Frame data transmit rate Average transmit frame size Description The number of pings sent at the end of the test by the component The number of final pings that were sent that are received by the component The rate at which frames were transmitted (in fps) by the component The rate at which data was transmitted (in Mbps) by the component The average size of frames transmitted by the component (in bytes). This value is computed by taking the transmitting data rate and dividing it by the total number of transmitted frames. The rate at which frames were received (in fps) by the component The rate at which data was received (in Mbps) by the component The average size of frames received by the component (in bytes). This value is computed by taking the receiving data rate and dividing it by the total number of received frames. The average amount of latency for all received frames. This value is computed by adding the latencies for all frames and dividing that number by the total number of frames that use the stats: 0 10 us latency, 11 100 us latency, 1001 10000 us latency, and over 10000 us latency.
Frame receive rate Frame data receive rate Average receive frame size
Stats for Application Simulator Table 12-7 on page 609 lists the stats for the Application Simulator test component. Table 12-7: Application Simulator Stats Stat Source Gateway ARP Response Destination Gateway ARP Response Description The ARP response sent from the source gateway The ARP response sent from the destination gateway
609
Table 12-7: Application Simulator Stats Stat Frames transmitted Description The total number of frames transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, and non-system generated traffic. The total number of bytes transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, application, and non-system generated traffic. The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames received by the component The total number of bytes received by the component The total number of frames received by the component but were dropped because they were malformed or misrouted The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were larger than 1024 bytes
Frames transmitted from 64 - 127 bytes Frames transmitted from 128 - 255 bytes Frames transmitted from 256 - 511 bytes Frames transmitted from 512 - 1023 bytes Frames transmitted from 1024 bytes up Frames received Frame bytes received Dropped frames
Frames received from 64 - 127 bytes Frames received from 128 - 255 bytes Frames received from 256 - 511 bytes Frames received from 512 - 1023 bytes Frames received from 1024 bytes up
610
Table 12-7: Application Simulator Stats Stat 0 - 10 us latency 11 - 100 us latency 101 - 1000 us latency 1001 - 10000 us latency over 10000 us latency Cumulative latency of all frames TCP frames transmitted TCP frame bytes transmitted Description The number of frames that had a latency between 0 10 microseconds The number of frames that had a latency between 11 100 microseconds The number of frames that had a latency between 101 1000 microseconds The number of frames that had a latency between 1001 10000 microseconds The number of frames that had a latency of more than 10000 microseconds The total latency for all frames transmitted and received by the component The total number of TCP frames transmitted by the component The total number of bytes transmitted by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap. (TCP frames only) The total number of TCP frames received by the component. The total number of bytes received by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap. (TCP frames only) The number of TCP sessions that took between 0 10 ms to send the first SYN and establish a connection The number of TCP sessions that took between 11 100 ms to send the first SYN and establish a connection The number of TCP sessions that took between 101 1000 ms to send the first SYN and establish a connection The number of TCP sessions that took between 1001 10000 ms to send the first SYN and establish a connection
611
Table 12-7: Application Simulator Stats Stat TCP setup taking greater than 10000 ms Description The number of TCP sessions that took longer than 10000 ms to send the first SYN and establish a connection The number of TCP sessions that took between 0 10 ms to go from the first SYN to SYN-ACK The number of TCP sessions that took between 11 100 ms to go from the first SYN to SYN-ACK The number of TCP sessions that took between 101 1000 ms to go from the first SYN to SYN-ACK The number of TCP sessions that took between 1001 10000 ms to go from the first SYN to SYN-ACK The number of TCP sessions that took over 10000 ms to go from the first SYN to SYN-ACK The number of TCP sessions that took between 0 10 ms to go from the first FINACK to the last ACK The number of TCP sessions that took between 11 100 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took between 101 1000 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took between 1001 10000 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took longer than 10000 ms to go from the first FIN-ACK to the last ACK The number of sessions that had a duration between 0 10 ms in the ESTABLISHED state The number of sessions that had a duration between 11 100 ms in the ESTABLISHED state
Duration 0 - 10 ms
Duration 11 - 100 ms
612
Table 12-7: Application Simulator Stats Stat Duration 101 - 1000 ms Description The number of sessions that had a duration between 101 1000 ms in the ESTABLISHED state The number of sessions that had a duration between 1001 10000 ms in the ESTABLISHED state The number of sessions that had a duration of more than 10000 ms in the ESTABLISHED state The total number of TCP connections established by the client The total number of TCP connections closed by the client The total number of times that the server sent a TCP Reset (RST) which caused the session to be disconnected The total number of TCP Resets sent by the server The total number of TCP connections concurrently opened by the client The total number of TCP connections attempted by the client The total number of TCP connections established by the server The total number of TCP connections closed by the server The total number of times that the client sent a TCP Reset (RST) which caused the session to be disconnected The total number of TCP Resets sent by the client The total number of TCP connections closed by the server The total number of TCP connections on the clients side that were in the LISTEN state
Client received RST Client concurrent Client attempted Server established Server closed Server closed by reset
613
Table 12-7: Application Simulator Stats Stat Client State "SYN_SENT" Description The total number of TCP connections on the clients side that were in the SYNSENT state The total number of TCP connections on the clients side that were in the SYNRECEIVED state The total number of TCP connections on the clients side that were in the ESTABLISHED state The total number of TCP connections on the clients side that were in the CLOSEWAIT state The total number of TCP connections on the clients side that were in the FIN-WAIT1 state The total number of TCP connections on the clients side that were in the CLOSING state The total number of TCP connections on the clients side that were in the LAST_ACK state The total number of TCP connections on the clients side that were in the FIN-WAIT2 state The total number of TCP connections on the clients side that were in the TIMEWAIT state The total number of TCP connections on the servers side that were in the LISTEN state The total number of TCP connections on the servers side that were in the SYNSENT state The total number of TCP connections on the servers side that were in the SYNRECEIVED state The total number of TCP connections on the servers side that were in the ESTABLISHED state
614
Table 12-7: Application Simulator Stats Stat Server State "CLOSE_WAIT" Description The total number of TCP connections on the servers side that were in the CLOSEWAIT state The total number of TCP connections on the servers side that were in the FINWAIT1 state The total number of TCP connections on the servers side that were in the CLOSING state The total number of TCP connections on the servers side that were in the LASTACK state The total number of TCP connections on the servers side that were in the FINWAIT-2 state The total number of TCP connections on the servers side that were in the TIMEWAIT state The aggregate total of frames transmitted by the component for all application protocols The aggregate total of bytes transmitted by the component for all application protocols The aggregate total of frames received by the component for all application protocols The aggregate total of bytes received by the component for all application protocols The maximum number of flows concurrently open at any given time The total number of flows opened for all application protocols The total number of application flows attempted The total number of applications flows that were completed The total number of applications flows that did not complete
Application frame bytes transmitted Application frames received Application frame bytes received App concurrent flows Aggregate application flows Application attempted Application successes Application failures
615
Table 12-7: Application Simulator Stats Stat Application responses taking 0 - 10 ms Description The number of transactions that had a response time that lasted between 0 10 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The number of transactions that had a response time that lasted between 11 100 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The number of transactions that had a response time that lasted between 101 1000 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The number of transactions that had a response time that lasted between 1001 10000 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The number of transactions that had a response time that lasted longer than 10000 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The maximum number of TCP sessions concurrently opened by the client The maximum number of TCP sessions concurrently opened by the server The maximum number of concurrent application flows reached by the system The rate at which frames were transmitted (in fps) by the component The rate at which data was transmitted (in Mbps) by the component
Maximum client concurrent Maximum server concurrent Concurrent Network Flows Max Frame transmit rate Frame data transmit rate
616
Table 12-7: Application Simulator Stats Stat Average transmit frame size Description The average size of frames transmitted by the component (in bytes). This value is computed by taking the transmitting data rate and dividing it by the total number of transmitted frames. The rate at which frames were received (in fps) by the component The rate at which data was received (in Mbps) by the component The average size of frames received by the component (in bytes). This value is computed by taking the receiving data rate and dividing it by the total number of received frames. The average amount of latency for all received frames. This value is computed by adding the latencies for all frames and dividing that number by the total number of frames that use the stats: 0 10 us latency, 11 100 us latency, 1001 10000 us latency, and over 10000 us latency. The rate (in fps) at which TCP frames are transmitted by the component The rate (in Mbps) at which TCP data is transmitted by the component The rate (in fps) at which TCP frames are received by the component The rate (in Mbps) at which TCP data is received by the component The average amount of time it takes from when the first SYN is sent to when the connection has been established. This value is computed by taking the total amount of set up time for all TCP sessions and dividing it by the total number of TCP sessions that had a set up time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms.
Frame receive rate Frame data receive rate Average receive frame size
TCP frame transmit rate TCP data transmit rate TCP frame receive rate TCP data receive rate Average TCP setup time
617
Table 12-7: Application Simulator Stats Stat Average TCP response Description The average amount of time it takes to send the first SYN and to receive a SYNACK. This value is computed by taking the total response time for all TCP sessions and dividing it by the total number of TCP sessions that had a response time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The average amount of time it takes from the first FIN-ACK to the last ACK. This value is computed by taking the total amount of time it takes for all TCP sessions to close time and dividing it by the total number of TCP sessions that had a close time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The average amount of time TCP sessions remained in the ESTABLISHED state. This value is computed by taking the total duration time for all TCP sessions and dividing it by the total number of TCP sessions that had a duration time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The rate at which TCP sessions are established by the client The rate at which TCP sessions are closed by the client The rate at which TCP connections are attempted by the client The rate at which TCP sessions are established by the server The rate at which TCP sessions are closed by the server The rate (in fps) at which frames are transmitted by the component; this value only includes application traffic. The rate (in Mbps) at which layer 7 traffic is transmitted by the component; this value only includes application traffic.
Average duration
Client establish rate Client close rate Client attempt rate Server establish rate Server close rate Application frame transmit rate
618
Table 12-7: Application Simulator Stats Stat Application frame receive rate Description The rate (in fps) at which frames are received by the component; this value only includes application traffic. The rate (in Mbps) at which layer 7 traffic is received by the component; this value only includes application traffic. The number of new application flows that are opened per second The number of new application flows that are attempted by the component per second; this value accounts for all flows that have sent a Transaction Start packet. The number of application flows that are successfully established per second; this value accounts for all flows that have sent a Transaction End packet. The rate at which application flows fail; this value accounts for all flows that have sent a Transaction Start packet, but no Transaction End packet. The average response time for an application flow; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The maximum rate (in fps) at which frames are transmitted by the component The maximum rate (in Mbps) at which data is transmitted by the component The maximum rate (in fps) at which frames are received by the component The maximum rate (in Mbps) at which data is received by the component The maximum rate at which the client establishes TCP connections The maximum rate at which application flows were opened
Maximum frame transmit rate Maximum frame data transmit rate Maximum frame receive rate Maximum frame data receive rate Maximum establish client rate Network Flow Rate Max
619
Stats for Recreate Table 12-8 on page 620 lists the stats for the Recreate test component. Table 12-8: Recreate Stats Stat Frames transmitted Frame byte transmitted Frames transmitted from 64 - 127 bytes Frames transmitted from 128 - 255 bytes Frames transmitted from 256 - 511 bytes Frames transmitted from 512 - 1023 bytes Frames transmitted from 1024 bytes up Frames received Frame bytes received Dropped frames Description The total number of frames transmitted by the component The total number of bytes transmitted by the component The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames received by the component The total number of bytes received by the component The total number of frames received by the component but were dropped because they were malformed or misrouted The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were larger than 1024 bytes The number of frames that had a latency between 0 10 microseconds
Frames received from 64 - 127 bytes Frames received from 128 - 255 bytes Frames received from 256 - 511 bytes Frames received from 512 - 1023 bytes Frames received from 1024 bytes up 0 - 10 us latency
620
Table 12-8: Recreate Stats Stat 11 - 100 us latency 101 - 1000 us latency 1001 - 10000 us latency over 10000 us latency TCP frames transmitted TCP frame bytes transmitted Description The number of frames that had a latency between 11 100 microseconds The number of frames that had a latency between 101 1000 microseconds The number of frames that had a latency between 1001 10000 microseconds The number of frames that had a latency of more than 10000 microseconds The total number of TCP frames transmitted by the component The total number of bytes transmitted by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap. (TCP frames only) The total number of TCP frames received by the component. The total number of bytes received by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap. (TCP frames only) The number of TCP sessions that took between 0 10 ms to send the first SYN and establish a connection The number of TCP sessions that took between 11 100 ms to send the first SYN and establish a connection The number of TCP sessions that took between 101 1000 ms to send the first SYN and establish a connection The number of TCP sessions that took between 1001 10000 ms to send the first SYN and establish a connection The number of TCP sessions that took longer than 10000 ms to send the first SYN and establish a connection
621
Table 12-8: Recreate Stats Stat TCP response taking 0 - 10 ms Description The number of TCP sessions that took between 0 10 ms to go from the first SYN to SYN-ACK The number of TCP sessions that took between 11 100 ms to go from the first SYN to SYN-ACK The number of TCP sessions that took between 101 1000 ms to go from the first SYN to SYN-ACK The number of TCP sessions that took between 1001 10000 ms to go from the first SYN to SYN-ACK The number of TCP sessions that took over 10000 ms to go from the first SYN to SYN-ACK The number of TCP sessions that took between 0 10 ms to go from the first FINACK to the last ACK The number of TCP sessions that took between 11 100 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took between 101 1000 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took between 1001 10000 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took longer than 10000 ms to go from the first FIN-ACK to the last ACK The number of sessions that had a duration of 0 10 ms in the ESTABLISHED state The number of sessions that had a duration of 11 100 ms in the ESTABLISHED state The number of sessions that had a duration of 101 1000 ms in the ESTABLISHED state
Duration 0 - 10 ms
Duration 11 - 100 ms
622
Table 12-8: Recreate Stats Stat Duration 1001 - 10000 ms Description The number of sessions that had a duration of 1001 10000 ms in the ESTABLISHED state The number of sessions that had a duration of more than 10000 ms in the ESTABLISHED state The total number of TCP sessions established by the client The total number of TCP sessions closed by the client The total number of times that the server sent a TCP Reset (RST) which caused the session to be disconnected The total number of TCP Resets sent by the server The total number of TCP sessions concurrently opened by the client The total number of TCP connections attempted by the client The total number of TCP sessions established by the server The total number of TCP sessions closed by the server The total number of times that the client sent a TCP Reset (RST) which caused the session to be disconnected The total number of TCP Resets sent by the client The total number of TCP sessions closed by the server The total number of TCP connections on the clients side that were in the LISTEN state The total number of TCP connections on the clients side that were in the SYNSENT state
Client received RST Client concurrent Client attempted Server established Server closed Server closed by reset
623
Table 12-8: Recreate Stats Stat Client State "SYN_RECEIVED" Description The total number of TCP connections on the clients side that were in the SYNRECEIVED state The total number of TCP connections on the clients side that were in the ESTABLISHED state The total number of TCP connections on the clients side that were in the CLOSEWAIT state The total number of TCP connections on the clients side that were in the FIN-WAIT1 state The total number of TCP connections on the clients side that were in the CLOSING state The total number of TCP connections on the clients side that were in the LAST_ACK state The total number of TCP connections on the clients side that were in the FIN-WAIT2 state The total number of TCP connections on the clients side that were in the TIMEWAIT state The total number of TCP connections on the servers side that were in the LISTEN state The total number of TCP connections on the servers side that were in the SYNSENT state The total number of TCP connections on the servers side that were in the SYNRECEIVED state The total number of TCP connections on the servers side that were in the ESTABLISHED state The total number of TCP connections on the servers side that were in the FINWAIT1 state
624
Table 12-8: Recreate Stats Stat Server State "CLOSING" Description The total number of TCP connections on the servers side that were in the CLOSING state The total number of TCP connections on the servers side that were in the LASTACK state The total number of TCP connections on the servers side that were in the FINWAIT-2 state The total number of TCP connections on the servers side that were in the TIMEWAIT state The maximum number of TCP sessions concurrently opened by the client The maximum number of TCP sessions concurrently opened by the server The maximum number of concurrent application flows reached The rate at which frames were transmitted (in fps) by the component The rate at which data was transmitted (in Mbps) by the component The average size of frames transmitted by the component (in bytes). This value is computed by taking the transmitting data rate and dividing it by the total number of transmitted frames. The rate at which frames were received (in fps) by the component The rate at which data was received (in Mbps) by the component The average size of frames received by the component (in bytes). This value is computed by taking the receiving data rate and dividing it by the total number of received frames.
Maximum client concurrent Maximum server concurrent Concurrent network flows max Frame transmit rate Frame data transmit rate Average transmit frame size
Frame receive rate Frame data receive rate Average receive frame size
625
Table 12-8: Recreate Stats Stat Average frame latency Description The average amount of latency for all received frames. This value is computed by adding the latencies for all frames and dividing that number by the total number of frames that use the stats: 0 10 us latency, 11 100 us latency, 1001 10000 us latency, and over 10000 us latency. The rate (in fps) at which TCP frames are transmitted by the component The rate (in Mbps) at which TCP data is transmitted by the component The rate (in fps) at which TCP frames are received by the component The rate (in Mbps) at which TCP data is received by the component The average amount of time it takes from when the first SYN is sent to when the connection has been established. This value is computed by taking the total amount of set up time for all TCP sessions and dividing it by the total number of TCP sessions that had a set up time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The average amount of time it takes to send the first SYN and to receive a SYNACK. This value is computed by taking the total response time for all TCP sessions and dividing it by the total number of TCP sessions that had a response time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The average amount of time it takes from the first FIN-ACK to the last ACK. This value is computed by taking the total amount of time it takes for all TCP sessions to close time and dividing it by the total number of TCP sessions that had a close time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms.
TCP frame transmit rate TCP data transmit rate TCP frame receive rate TCP data receive rate Average TCP setup time
626
Table 12-8: Recreate Stats Stat Average duration Description The average amount of time TCP sessions remained in the ESTABLISHED state. This value is computed by taking the total duration time for all TCP sessions and dividing it by the total number of TCP sessions that had a duration time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The rate at which TCP sessions are established by the client The rate at which TCP sessions are closed by the client The rate at which TCP connections are attempted by the client The rate at which TCP sessions are established by the server The rate at which TCP sessions are closed by the server The rate (in fps) at which frames are transmitted by the component; this value only includes application traffic. The rate (in Mbps) at which layer 7 traffic is transmitted by the component; this value only includes application traffic. The rate (in fps) at which frames are received by the component; this value only includes application traffic. The rate (in Mbps) at which layer 7 traffic is received by the component; this value only includes application traffic. The number of new application flows that are opened per second The number of new application flows that are attempted by the component per second; this value accounts for all flows that have sent a Transaction Start packet.
Client establish rate Client close rate Client attempt rate Server establish rate Server close rate Application frame transmit rate
627
Real-Time Statistics
Table 12-8: Recreate Stats Stat Application success rate Description The number of application flows that are successfully established per second; this value accounts for all flows that have sent a Transaction End packet. The rate at which application flows fail; this value accounts for all flows that have sent a Transaction Start packet, but no Transaction End packet. The average response time for an application flow; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is received. The maximum rate (in fps) at which frames are transmitted by the component The maximum rate (in Mbps) at which data is transmitted by the component The maximum rate (in fps) at which frames are received by the component The maximum rate (in Mbps) at which data is received by the component The maximum rate at which the client establishes TCP connections The maximum rate at which application flows were opened
Maximum frame transmit rate Maximum frame data transmit rate Maximum frame receive rate Maximum frame data receive rate Maximum establish client rate Network Flow Rate Max
Real-Time Statistics
Real-Time Statistics let you instantly see the progress of a running test at any given point in time. This window will be displayed once the test starts. These stats provide the aggregate results for all the test components used in a test. For multi-box tests, these stats show the aggregate results for all the systems used in the test.
628
Real-Time Statistics
The Real-Time Statistics window consists of interactive graphs that instantly update as the test is running. You can control what you see in the Real-Time Statistics window by clicking on any of the tabs at the top of the Real-Time Statistics window. Table 12-9: Real-Time Statistics Tabs Tab Summary Interface TCP Encryption Description Displays the aggregate totals for TCP connections, application traffic, data rate, bandwidth, and transmitted/received frames. Displays the frame rate and data rate for each interface. Displays TCP connection rate for the attempted and successful TCP connections. Displays the rate at which SSL handshakes are started, completed, and aborted as well as the data rate at which they are established. Displays the number of application flows that were attempted, successful, and unsuccessful; the number of transmitted and received bytes; and the data rate at which flows were transmitted and received. Displays the logging results of the application layer. The Exceptions section gives you the ability to compare and verify data bit by bit as it is being transferred. The valid/invalid statistics will increment when data validation is enabled in a Super Flow. The Client tab allows you to monitor TCP and Application level statistics. Displays the number of attacks that were blocked, allowed, and errored, as well as the number of pings that were sent and received by Stack Scrambler. Displays the memory and processor usage and performance of the BreakingPoint Storm CTM allowing you to monitor load in real time.
Application
Client
Attacks
Resources
Figure 12-3 on page 630 displays the Real-Time Statistics window and provides descriptions for each feature on the screen.
629
Real-Time Statistics
Table 12-10: Real-Time Statistics Page Callout 1 2 3 4 Function Test Information Edit Test View Report Stop Capture Description Provides the name, progress, result, and host IP for each test that was run. Enables you to edit the test; this function should only be used once the test has completed. Displays the report for the test. Stops the capture from running. Data will be stored from the beginning of the capture until the capture was stopped. Once you have stopped the capture, you can restart it with this feature. Displays On Demand DUT scripts configured for a test any time during a test. If enabled, this function allows you to follow the live statistics generated by the test. If disabled, you will be able use the Jump To function to view a specific point in time in the test.
5 6
On Demand Follow
630
Real-Time Statistics
Table 12-10: Real-Time Statistics Page Callout 7 Function Jump To Description Enables you to jump to a specific time in test. To use this function, enter the time (in seconds) in the secs field, and click the Jump To button. Zooms in on the current graph(s). Zooms out on the current graph(s). Cancels the test series from running. Cancels the test from running. Provides individual communication errors. Allows you to use address information to filter or find individual errors in the capture buffer. Enables you to compare and verify data bit by bit as it is being transferred. Exceptions are reported relative to when the first datapoint is sent. Therefore, a negative time value indicates that (after the test was initialized) the exception occurred before the first datapoint was sent.
8 9 10 11 12
You can hover over any of the points on the line graphs to obtain its exact value. These values represent the aggregate totals for all the test components in the test. Since the graph will constantly update as the test is running, you can deselect the Follow option, and input a time within the test to go to. This enables you to control which points of the test you want to view. In addition to viewing the values for each statistic, you can control the line graphs that are displayed for each statistic. To do this, simply click on any of the options listed in the legend. Sometimes, graphs will overlap other graphs, making it difficult to see the results; therefore, you may want to reduce the number of line graphs that are displayed so that each graph is more easily visible.
Exceptions
The BreakingPoint Storm CTM emits approximately five flow exceptions per second. Approximately 3,000 exceptions can be reported per component. Exceptions are tracked separately for each component within your test. For example, if you have two Application Simulator components in your test, each one tracks its own limit on flow exceptions. A list of the flow exceptions that could occur includes the following: A flow closed when more data was expected TCP Reset was received An unexpected TCP FIN was received
631
Real-Time Statistics
There were too many retries on a TCP connection A timeout occurred while waiting for a UDP packet The received data for a flow was incomplete A packet was received for a connection that was already closed When doing a token substitution, the data to substitute was too large to fit in the packet, and was truncated A connection was refused Destination was unreachable A gateway was unreachable There was a cryptographic error
This list is provided to let you know the basis on which the list of exceptions is filtered; however, it is not a complete list of all of the exceptions. New flow exceptions will be added periodically. Note: Exceptions are reported relative to when the first datapoint is sent. Therefore, a negative time value indicates that (after the test was initialized) the exception occurred before the first datapoint was sent. Table 12-11 on page 632 lists the statistics for the Summary tab of the Real-Time Statistics page. Table 12-11: Summary Tab Statistics Statistic Application Transaction Rate: Attempted Application Transaction Rate: Successful Application Transaction Rate: Failed Application Transactions: Attempted Application Transactions: Successful Application Transactions: Failed Description Flows that have sent a TRANSACTION_START packet per second, computed as (appAttempted(curr) appAttempted(last)) / (timestamp(curr) - timestamp(last)). Flows that have sent a TRANSACTION_END packet per second, computed as (appSuccessful(curr) appSuccessful(last)) / (timestamp(curr) - timestamp(last)). Flows that have sent a TRANSACTION_START packet but no TRANSACTION_END packet before closing per second, computed as (appUnsuccessful(curr) - appUnsuccessful(last)) / (timestamp(curr) - timestamp(last)). Increments when a packet in a flow marked as TRANSACTION_START is sent. Increments when a packet in a flow marked as TRANSACTION_END is sent. Increments when a flow that has sent a TRANSACTION_START packet is terminated before sending a TRANSACTION_END packet, and the reason is not due to the test ending early.
632
Real-Time Statistics
Table 12-11: Summary Tab Statistics Statistic Concurrent Flows: Superflows Concurrent Flows: TCP Flows Concurrent Flows: UDP Flows TCP Connection Rate: Client (Attempted) TCP Connection Rate: Client (Established) TCP Connection Rate: Client (Closed) TCP Connection Rate: Server (Established) TCP Connection Rate: Server (Closed) Cumulative TCP Connections: Client (Attempted) Cumulative TCP Connections: Client (Established) Cumulative TCP Connections: Client (Closed (FIN)) Cumulative TCP Connections: Server (Close (RST)) Cumulative TCP Connections: Server (Established) Cumulative TCP Connections: Server (Closed (FIN)) Description The number of active superflows. The number of active TCP flows. The number of active UDP flows. The rate at which initial SYN packets are sent for new TCP sessions. This does not count retries. The rate at which final ACK packet of the 3-way handshake are sent for TCP sessions. The rate at which final ACK packet of the 3-way handshake are sent for TCP sessions. Server establish rate.
Client attempted.
Client established.
Client closed.
Server established.
Server closed.
633
Real-Time Statistics
Table 12-11: Summary Tab Statistics Statistic Cumulative TCP Connections: Server (Close (RST)) Average TCP Time (Syn/Ack) Average TCP Time (1st Byte) Server closed by reset. Description
Average time from first SYN to SYN|ACK, only applicable to client-side connections. Computed as tcpResponseTime_total / sum(tcpResponseTime_[10|100|1000|10000|high]). Average TCP setup time. The average time from first SYN to ESTABLISHED, only applicable to client-side connections, computed as tcpSetupTime_total / sum(tcpSetupTime_[10|100|1000|10000|high]). Average TCP time to close. The average time from the first FIN|ACK to the last ACK, only applicable to client-side connections, computed as tcpCloseTime_total / sum(tcpCloseTime_[10|100|1000|10000|high]). Average duration. The average time spent in the ESTABLISHED state, computed as tcpSessionDuration_total / sum(tcpSessionDuration_[10|100|1000|10000|high]). Ethernet transmit rate. Ethernet receive rate. Ethernet frame transmit rate. Ethernet frame receive rate. Ethernet frames transmitted. Ethernet frames received. Total errors.
Average TCP Time (Duration) Interface Stats: Bandwidth (Tx) Interface Stats: Bandwidth (Rx) Interface Stats: Frame Rate (Tx) Interface Stats: Frame Rate (Rx) Cumulative Frames: Tx Cumulative Frames: Rx Ethernet MAC errors
Table 12-12 on page 634 lists the statistics for the Interface tab of the Real-Time Statistics page. Table 12-12: Interface Tab Statistics Statistic Frame Rate (Rx) Frame Rate (Tx) Description Ethernet frame receive rate. Ethernet frame transmit rate.
634
Real-Time Statistics
Table 12-12: Interface Tab Statistics Statistic Data Rate (Rx) Data Rate (Tx) Ethernet receive rate. Ethernet transmit rate. Description
Table 12-13 on page 635 lists the statistics for the TCP tab of the Real-Time Statistics page. Table 12-13: TCP Tab Statistics Statistic TCP Connection Rate: Attempted TCP Connection Rate: Successful TCP State: Syn_Sent (Client) TCP State: Syn_Sent (Server) TCP State: Syn_Received (Client) TCP State: Syn_Received (Server) TCP State: Established (Client) TCP State: Established (Server) TCP State: Concurrent (Client) TCP State: Concurrent (Server) TCP State: FIN_WAIT_1 (Client) TCP State: FIN_WAIT_1 (Server) TCP State: Closing (Client) Description Client attempt rate. The rate at which initial SYN packets are sent for new TCP sessions. This does not count retries. The client establish rate. Client State "SYN_SENT". Server State "SYN_SENT". Client State "SYN_RECEIVED".
Client State "ESTABLISHED". Server State "ESTABLISHED". Client concurrent. Server concurrent. Client State "FIN_WAIT_1". Server State "FIN_WAIT_1". Client State "CLOSING".
635
Real-Time Statistics
Table 12-13: TCP Tab Statistics Statistic TCP State: Closing (Server) TCP State: Close_Wait (Client) TCP State: Close_Wait (Server) TCP State: FIN_WAIT_2 (Client) TCP State: FIN_WAIT_2 (Server) TCP State: Close_Wait (Client) TCP State Close_Wait (Server) TCP State: TIME_WAIT (Client) TCP State: TIME_WAIT (Server) TCP State: LAST_ACK (Client) TCP State: LAST_ACK (Server) TCP State: Close_Wait (Server) Description Server State "CLOSING". Client State "CLOSE_WAIT". Server State "CLOSE_WAIT". Client State "FIN_WAIT_2". Server State "FIN_WAIT_2". Client State "CLOSE_WAIT". Server State "CLOSE_WAIT". Client State "TIME_WAIT". Server State "TIME_WAIT". Client State "LAST_ACK". Server State "LAST_ACK". Server State "CLOSE_WAIT".
Table 12-14 on page 636 lists the statistics for the Encryption tab of the Real-Time Statistics page. Table 12-14: Encryption Tab Statistics Statistic Handshake Rate: Started Handshake Rate: Finished Handshake Rate: Aborted Handshakes Started. Handshakes Finished. Handshakes Aborted. Description
636
Real-Time Statistics
Table 12-14: Encryption Tab Statistics Statistic Encrypted Data Rate Decrypted Data Rate Description Encrypted data transmit rate. Encrypted data receive rate.
Table 12-15 on page 637 lists the statistics for the Application tab of the Real-Time Statistics page. Table 12-15: Application Tab Statistics Statistic Attempted Description Application attempt rate. The flows that have sent a TRANSACTION_START packet per second. Computed as (appAttempted(curr) - appAttempted(last)) / (timestamp(curr) timestamp(last)). Application success rate. The flows that have sent a TRANSACTION_END packet per second, computed as (appSuccessful(curr) - appSuccessful(last)) / (timestamp(curr) - timestamp(last)). Application failure rate. Flows that have sent a TRANSACTION_START packet but no TRANSACTION_END packet before closing per second. Computed as (appUnsuccessful(curr) - appUnsuccessful(last)) / (timestamp(curr) - timestamp(last)). Application frame bytes transmitted. This includes all packet overhead, including l2, l3, l4 headers, ethernet CRC and interpacket gap (20 bytes per frame). Application frame bytes received. This includes all packet overhead, including l2, l3, l4 headers, ethernet CRC and interpacket gap (20 bytes per frame). Application data transmit rate. Application data receive rate.
Successful
Unsuccessful
TX Bytes
RX Bytes
TX Mbps RX Mbps
637
Real-Time Statistics
Table 12-16 on page 638 lists the statistics for the Client tab of the Real-Time Statistics page. Table 12-16: Client Tab Statistics Statistics Client: Attempted Description Application attempt rate. The flows that have sent a TRANSACTION_START packet per second, computed as (appAttempted(curr) - appAttempted(last)) / (timestamp(curr) timestamp(last)). Application success rate. The flows that have sent a TRANSACTION_END packet per second, computed as (appSuccessful(curr) - appSuccessful(last)) / (timestamp(curr) - timestamp(last)). Application failure rate. The flows that have sent a TRANSACTION_START packet but no TRANSACTION_END packet before closing per second, computed as (appUnsuccessful(curr) - appUnsuccessful(last)) / (timestamp(curr) - timestamp(last)). N/A N/A Client attempted. Client established. Client closed.
Client: Successful
Client: Unsuccessful
Client: Valid Client: Invalid TCP Connections: Attempted TCP Connections: Established TCP Connections: Closed
Table 12-17 on page 638 lists the statistics for the Attacks tab of the Real-Time Statistics page. Table 12-17: Attacks Tab Statistics Statistics Cumulative Attacks: Blocked Cumulative Attacks: Allowed Cumulative Attacks: Errored Description The number of security strikes that have been blocked by the DUT during the test. The number of security strikes that have been allowed through the DUT during the test. The number of security strikes that have experienced an error during the test.
638
Test Interfaces
Table 12-17: Attacks Tab Statistics Statistics Pings: Sent Pings: Received Description The number of diagnostic ping packets sent by Stack Scrambler. The number of diagnostic ping packets received by Stack Scrambler. For Stack Scrambler pings, this determines whether the device is dropping data during the test run.
Table 12-18 on page 639 lists the statistics for the Resources tab of the Real-Time Statistics page. Table 12-18: Resources Tab Statistics Statistic Processor Usage: System Controller Processor Usage: Network Processor 1 Processor Usage: Network Processor 2 Memory Usage: System Controller Memory Usage: Network Processor 1 Memory Usage: Network Processor 2 Description Current processor resources used by the System Controller. Current processor resources used by Network Processor 1. Current processor resources used by Network Processor 2. Current memory used by the System Controller. Current memory used by Network Processor 1. Current memory used by Network Processor 2.
Test Interfaces
You can select any combination of interfaces to act as the server and the client. Each component in a test, regardless of the number of server/client interfaces selected, will count as one component. The configuration you have defined for the test component will be used to generate all network traffic transmitted from any of the client interfaces. In any given test, this functionality provides you with up to 16 possible combinations of server/client pairs; however, the maximum number of possible pairs depends on the test component and the Network Neighborhood you are using. If you are using a VLAN-enabled Network Neighborhood, you have up to 16 possible server/client pairs because VLAN-tagging enables you to send and receive traffic on the same interface. If you are not using a VLAN-enabled Network Neighborhood, you have 12 possible server/client pairs.
639
Test Interfaces
The Bit Blaster and Routing Robot test components can only have one transmitting (client) interface assigned per component; however, you can assign up to 4 receiving (server) interfaces, which will give you a total of 4 possible client/server pairs if you are using a VLAN-enabled Network Neighborhood. If you are not using a VLAN-enabled Network Neighborhood, then you will have 3 possible client/server pairs. Note: Routing Robot supports up to four unique VLAN source and destination VLAN tags. Do not to exceed four VLAN source and destination tags when running a Routing Robot test. If you attempt to use more than 4 VLAN tags for a Routing Robot test, you may receive an error message. Note: Only interfaces that use VLAN-enabled domains can transmit and receive on the same interfaces. For example, if you have a Session Sender test component that has Interfaces 1-4 enabled for both the client and the server, and you are using the default BreakingPoint Switching Network Neighborhood, you will have 12 pairs of transmitting and receiving interfaces. See Table 12-19 on page 640 for the different combinations of interfaces. Table 12-19: Interface Pairs Client 1 2 3 4 Servers 2, 3, 4 1, 3, 4 1, 2, 4 1, 2, 3
Network traffic will be transmitted from the interfaces designated as the client and received on the interfaces designated as the server. The system will randomly select the server/client pairs that it will use if you have multiple client and server interfaces selected. If you want to have control over the client/server pairs that are used by the system, you will need to create a separate component for each client/server pair you want. For example, lets say you want a Session Sender component that uses Interface 1 as the client and Interface 2 as the server, but you also want to use Interface 3 as the client and Interface 4 as the server. In this case, you will need two versions of the test component. One Session Sender component will set up Interface 1 as the client and Interface 2 as the server; the second Session Sender component will set up Interface 3 as the client and Interface 4 as the server.
640
Test Series
For this example, you could have used a single Session Sender component, and selected Interface 1 and 3 as the client and Interface 2 and 4 as the server (see Figure 12-4 on page 641); however, this would have given you the following client/server pairs: 1/2, 1/4, 3/2, and 3/4. Using individual Session Sender components in this example allowed you to control the interfaces that are used by the test.
Test Series
A test series is a group of one or more tests that are executed sequentially. You can either create your own test series or use one of the pre-configured test series that come with the BreakingPoint Storm CTM.These default test series cannot be modified, and the tests associated with default test series will be grayed out. The test series will use the pass/fail criteria set for each test to determine whether or not the test series passes or fails. If one test does not meet its pass/fail criteria, then the test series will fail. If none of the default test series meet your testing requirements, you can create custom tests series using user-created tests or default tests. For more information on creating test series, see the section Creating a Test Series on page 641.
641
Test Series
To create a test series: 1. Select Test > Test Series from the Menu bar. 2. Click the Create new test series (+) button located under the Test Series list. 3. Enter a name for the test series in the Name field. 4. Click the OK button. 5. Click the Category drop-down button to select a category for the test series or click the Add Category link to create a category for the test series. (Optional) Note: Categories will only be saved if the test series is saved. To delete the test series category, you must delete all test series that are in that category. 6. Click the Add test(s) (+) button located under the Associated Test(s) list. The edit test series screen will display. 7. Select the test(s) to be added from the Test Name list. Note: Use Ctrl+Shift to select multiple tests. 8. Click the Add the selected test(s) arrow. 9. Repeat steps 7-8 until all the desired tests have been added. Note: The order in which the tests appear in the Associated Tests list determines the order in which the tests are executed. Click and drag each test to place them in the desired order. 10. Click the Associate Test(s) button when all the desired tests have been added and arranged.
642
Test Series
643
Test Series
644
13 Multi-box Testing
This section covers: Multi-box Testing Overview Creating a Multi-box Test Running a Multi-box Test
Multi-box Requirements
When you create a multi-box test, you will need to know the IP addresses of the secondary systems as well as the authentication information for each system. The system will authenticate the login information for each system once you run the multi-box test. Additionally, you must ensure that the Active Group assignments for the ports on the main system match up with the Active Group assignments on the secondary systems. For example, if Slot 1 and its ports on the main system are assigned to Active Group 1, but Slot 1 on the secondary system has its ports assigned to Active Group 2, the multi-box test will not run. Instead, when you attempt to run the test, the system will display an error stating that the secondary systems ports are already in use. If you start a multi-box test while one of the secondary systems is running a test, the multibox test will not run. Before running a multi-box test, check the status of each system to ensure that no other tests are being run. Additionally, if a secondary system loses its connection during a multi-box test run, all multi-box tests will stop running.
645
Expect Scripting
If you plan on using automation through Expect scripting, the DUT must be connected to the Target Control ports on the system. Device automation will be regulated by the main system. You can assign a different DUT Profile for each test; however, the DUT Profiles must be stored on the main system. Note: All systems used in a multi-box test must all use the same firmware and ATI Update versions. The BreakingPoint Storm CTM does not support forward or backwards compatibility for the multi-box functionality.
Static Routes
If you are utilizing systems that are on a different network (e.g., 1.1.0.0 and 192.16.123.0), you will need to disable DHCP for the main system and add a static route for the network outside of the main systems route. To disable DHCP and add a static route: 1. Telnet to the primary system. 2. Enter the authentication information for the system. 3. Enter the command updateNetwork -dhcp no. 4. Enter exit to leave the telnet prompt. 5. Go to the Administration area of the Control Center. 6. Click on the Routes tab. 7. Click the Host radio button.
646
8. Enter the IP address for the secondary system that is located on an outside network in the IP Address field. 9. Enter the gateway address for the network in the Gateway field. 10. Click the Add Route (+) button.
Reports
Once a multi-box test completes, a single report will be generated for all the tests that were run. Each system will store the results for its portion of the test in a single report. This works in the same way as it does for single-box tests. A comprehensive report, or one that contains all the results from the multi-box test, will be stored on the main system. There will not be individual results for the main systems portion of the test results. If the reports related to the multi-box test are deleted from the secondary systems, the report from the main system will not be able to retrieve the data, so it will not be able to generate any results from the multi-box test. Aggregate stats are not compiled for the multi-box test. Instead, only individual test results are reported for each system. Note: You may not be able to view more than five multi-box test reports at a single time. This limitation is a case-by-case situation, and it may be caused by limitations imposed by your browser. Deleting Multi-box Reports If you delete the multi-box report from the main system, the system will attempt to delete the related reports on the secondary systems. The system will attempt to log into the secondary systems using the authentication information stored for each system. If another user is logged directly into the secondary system using that authentication information, they will be logged out of the system. Note: If you have the Email Test Results enabled for one system, but not for the others, you will only receive the email results for the system for which the email option was enabled.
647
If you prefer to use multiple Network Neighborhoods instead, you can assign a different Network Neighborhood to each test in a multi-box test as long as each Network Neighborhood is on the main system. The Network Neighborhoods used in the test will be copied over to the secondary systems, so any Network Neighborhoods that share the same names will automatically be overwritten. Sample Network Neighborhood Configuration Table 13-1 on page 648 provides a sample configuration of multiple Network Neighborhoods for a multi-box test. All of the interfaces use the default domain. Table 13-1: Sample Network Neighborhood Configuration Device P1 Network NN1 Interface 1 1.0.1.0/8 range 1.0.1.1 1.0.1.254 S1 NN2 1.0.5.0/8 range 1.0.5.1 1.0.5.254 S2 NN3 1.0.9.0/8 range 1.0.9.1 1.0.9.254 S3 NN4 1.0.13.0/8 range 1.0.13.1 1.0.13.254 Interface 2 1.0.2.0/8 range 1.0.2.1 1.0.2.254 1.0.6.0/8 range 1.0.6.1 1.0.6.254 1.0.10.0/8 range 1.0.10.1 1.0.10.254 1.0.14.0/8 range 1.0.14.1 1.0.14.254 Interface 3 1.0.3.0/8 range 1.0.3.1 1.0.3.254 1.0.7.0/8 range 1.0.7.1 1.0.7.254 1.0.11.0/8 range 1.0.11.1 1.0.11.254 1.0.15.0/8 range 1.0.15.1 1.0.15.254 Interface 4 1.0.4.0/8 range 1.0.4.1 1.0.4.254 1.0.8.0/8 range 1.0.8.1 1.0.8.254 1.0.12.0/8 range 1.0.12.1 1.0.12.254 1.0.16.0/8 range 1.0.16.1 1.0.16.254
648
Verify that all secondary boxes are connected to a DUT. Verify that all systems have the same ATI Update and firmware versions. To create a multi-box test: 1. Select Test > Multibox Testing from the Menu bar. 2. Click the Create a multi-box test (+) button. 3. Enter a name for the multi-box test in the Name field. 4. Click the OK button. Note: A multi-box test will be created. It will contain a test that has already been set up with authentication and device information for the main system. 5. Select the test from the IP Address/Test list. 6. Click on the Browse for tests button located next to the Test field. 7. Select a test from the Tests list. 8. Click the Accept button. 9. Click the Browse for DUTs and Network Neighborhoods button located next to the DUT field. 10. Select a Network Neighborhood and DUT Profile for the test. Note: If you need to edit or create a Network Neighborhood or DUT Profile, see the sections What Is a Network Neighborhood? on page 47 and DUT Profiles on page 41. 11. Click the Accept button. 12. Click the Apply Changes button. 13. Click the Create a new box (+) button. 14. Click on the Browse for tests button located next to the Test field. 15. Select a test from the Tests list. 16. Click the Accept button. 17. Click the Browse for DUTs and Network Neighborhoods button located next to the DUT field. 18. Select a Network Neighborhood and DUT Profile for the test. Note: All Network Neighborhoods and DUT Profiles that can be selected for the secondary systems must exist on the primary system. 19. Click the Accept button. 20. Enter a login ID for the system in the Login field. 21. Enter the password for the login ID in the Password field. 22. Click the Add Box (+) button. 23. Repeat steps 13-21 for any additional systems you want to add to the multi-box test. Note: You can have up to five boxes in a multi-box test. Since you can only assign one test per box, you can run up to five tests concurrently using the multi-box feature. 24. Click the Save Multibox button to save the test.
649
650
14 Test Labs
This section covers: Quick Test - RFC 2544 General Information Session Sender Lab General Information Resiliency Score Lab General Information Lawful Intercept General Information Multicast General Information Long Term Evolution General Information
Test Set Up
Before running any tests, verify that your test set up matches the specifications laid out by the RFC 2544. If your test setup only utilizes one DUT, then you must: Connect the transmitting ports on the BreakingPoint Storm CTM to the receiving ports on the DUT. Connect the transmitting ports on the DUT to the receiving ports on the BreakingPoint Storm CTM.
651
If you require the connection of two devices to the BreakingPoint Storm CTM, please connect them according to the specifications defined in the RFC 2544. For more information of RFC 2544 testing, visit http://www.faqs.org/rfcs/rfc2544.html.
652
BreakingPoint Storm CTM is using. Therefore, in the Traffic Overview section of the RFC 2544 test report, you will see slow start packets listed for each data rate that was tested.
Test Duration
There are two ways to set the test duration; you can set: 1. The duration for the entire test. 2. The duration for each iteration. Setting the Total Duration for the Test Setting the total duration for the test is a slight misnomer. The value you specify for the total test duration is an estimate of how long the test may last. The test duration is really calculated based on the time per iteration, the initialization time for each iteration, and the total number of iterations for the entire test, or: Total Test Time = (Time Per Iteration + Initialization Time Per Iteration) * Number of Iterations The system will estimate that the total initialization time for each iteration is to be 20 seconds; however, depending on the DUT, this time may vary. The number of iterations and the time per iteration are both values that fluctuate based on the tests configuration, therefore, neither of these values is constant. To set the duration for the test: 1. Enter an integer in the Test Duration field, located under the Test Load Units area of the Quick Test - RFC 2544. 2. Select seconds, minutes, or hours from the drop-down menu located next to the Test Duration field. 3. Click the Total radio button. Setting the Duration for Each Iteration By setting the duration for each iteration, you can better estimate the total duration of the test. As previously mentioned, the test duration is calculated based on the time per iteration, the initialization time for each iteration, and the total number of iterations for the entire test, or: Total Test Time = (Time Per Iteration + Initialization Time Per Iteration) * Number of Iterations The initialization time for each iteration is estimated to be 20 seconds; therefore, if you know how many iterations the test will have, you can estimate the total amount of time the test will take. For example, if you set the time per iteration to 30 seconds, and you know the number of iterations is 12, then: Total Test Time = (30 + 20) * 12
653
Note: To determine the number of iterations per test, see the section Calculating the Number of Iterations on page 654. To set the duration for each iteration: 1. Enter an integer in the Test Duration field, located under the Test Load Units area of the Quick Test - RFC 2544. 2. Select seconds, minutes, or hours from the drop-down menu located next to the Test Duration field. 3. Click the Per Iteration radio button.
To determine the number of iterations, we used the following: Total Iterations = Number of Frame Sizes Tested x Number of Frame Rates Tested In this case, the Rate lower limit of 50% and the Rate higher limit of 100% with a Step Rate of 10% yields 6 frame rates (one at 50%, 60%, 70%, etc.). There are five frame sizes, thus: Total Iterations = 6 x 5
654
Note: Packets generated by this test will reserve the last 16 bytes of the payload for internal use by BreakingPoint Systems. These bytes will not contain the payload value that you have defined, if any. Table 14-1: Payload Fields Field Packet Type Packet Width Description Sets the packet type; packets can be Ethernet, IP, UDP, ICMP, or TCP packets. Defines the width of the data (in bits) being inserted into the payload; the width can be 8, 16, or 32. The payload can be set to be any of the following: 0 Payload is 0s. 1 Payload is all 1s. Random Payload is defined using random Hex values. Increment Payload is defined using ascending values starting at 0. Decrement Payload is defined using descending values starting at 0xff. User-Defined Payload is defined using standard hexadecimal notation. If the payload is smaller than the packet size, then the Hex value will be repeated until it meets the packet size; however, if the payload is a user-defined Hex value that is greater than the packet size, the value will be truncated. User Defined You can use standard hexadecimal notation to define the payload; this information is inserted after the Ethernet header. This field is defined only if you have set the Payload to be User Defined.
Payload
Frame Rate
From the Traffic Load for Throughput Search area of the Quick Test - RFC 2544, you can define the maximum throughput for the test. You can either specify Maximum Possible, which will use the maximum throughput possible for the port, or you can explicitly specify the throughput. To do this, simply deselect the Maximum Possible option, and specify the throughput in Mbps or Gbps.
655
656
During a step search, you will set Rate lower limit, Rate higher limit, and Step Rate; the test will use the Step Rate to increment Rate lower limit until it reaches Rate higher limit. With the binary search, the system starts at a rate that is halfway between the Rate lower limit and the Rate higher limit. If the DUT successfully transmits at that frame rate, then the system will increase the frame rate to be half of the last frame rate and the higher limit. If the DUT does not successfully transmit at that frame rate, then the system will decrease the frame rate to be half of the last frame rate and the lower limit. The test will continue using the binary search until it reaches the Resolution%.
Frame Sizes
Since the RFC 2544 requires that each test condition be tested using five different frame sizes, the BreakingPoint Storm CTM provides the ability to set frame sizes for the test. There are several ways to define the frame sizes: Random The system will randomly select frame sizes that fall between the minimum and maximum frame sizes defined. Step The test will start at the frame size specified, and it will increment the frame size based on the value defined for Interval. RFC 2544 The test will use the frame sizes recommended by the RFC 2544. User Defined The test will use the frame sizes you have defined. You can enter the frame sizes by separating each frame size with a comma (e.g., 64,128,256, etc.). Note: If you define a frame size that is larger than 1,500 bytes, then you must define a MTU for the data ports that supports the specified frame size. For more information on setting the MTU, see the section Setting the MTU for a Data Port on page 657. Setting the MTU for a Data Port The following section provides instructions for setting the MTU for a data port. Instances in which you may want to modify the MTU includes: Changing the MTU to support jumbo frames Changing the MTU to not support jumbo frames
657
To define the MTU for a data port: 1. Select Administration > Device Status from the Menu bar. 2. Right-click on the port for which you would like to modify the MTU. A menu will display, listing the port options. Note: You must have the port reserved in order to configure the port settings. 3. Select Configure Port from the menu. A window will display, enabling you to set the MTU. 4. Enter the MTU in the MTU field. Note: Values of 46 9,198 are supported. 5. Click the Apply button.
658
Network Neighborhood
Limits the payload to transport layer traffic. Selects the method used to determine the maximum TCP connection establishment rate through or with the DUT. Specifies the number of data segments that are sent during each session. Sets the distribution of source ports for TCP connections. It specifies that the ports will be used sequentially, from minimum to maximum Sets the destination port for all TCP/UPD packets. Setting this parameter to 0 will randomize this value.
-1 10000
1024 65,535
0 65,535
659
Table 14-2: Session Sender Lab Parameters Parameter Application Profile Description Sets the Application Profile that determines the mix of applications that will be used in the traffic. Sets the test mode for the test. Valid Values A BreakingPoint Application Profile or a custom Application Profile Maximum Mixed Open/Close Sessions, Maximum Session Open Rate, Maximum Concurrent Sessions 1 750,000
Test Mode
Minimum Rate
Specifies the connection establishment rate to be used at the start of the ramp up phase when not in Calculated mode. Must be less than or equal to Maximum Rate. Limits the maximum connection establishment rate for the ramp up phase when not in Calculated mode. The number of TCP sessions concurrently open at any given time. The number of sessions that must open to pass the test. Sets the maximum number of simultaneous sessions that will exist concurrently during the test duration. Sets the amount of time (in milliseconds) that elapses before a connection is retried. Sets the number of times a connection is attempted before it is canceled.
Maximum Rate
1 750,000
Concurrent
1 15,000,000
1 15,000,000 1 15,000,000
Retry Quantum
100 2,000
Retries
07
660
Table 14-2: Session Sender Lab Parameters Parameter Aging Time Description The time, expressed in seconds, that an activelyclosed TCP connection will remain in the flow table in the TIME_WAIT state after closing. Flows in the TIME_WAIT count against simultaneous sessions, but do not generate any traffic. Setting this to a high value can cause traffic to slow over time. This setting is useful for matching the flow tracking policy of the DUT. Determines how sessions are handled during the steady-state phase. Valid Values 0 120
Open and Close Sessions sessions are closed as they finish sending data and new ones opened in their place. Hold Sessions Open sessions are not closed as they finish sending data. Open and Close with Reset initiate the TCP close with a RST. This bypasses the TCP close state machine. Open and Close with Reset Response respond to a FIN with a RST. This bypasses the TCP TIME_WAIT state. 1 - 100
Step Rate
The test will use this value to increment Rate lower limit until it reaches Rate higher limit. Sets the length of the test.
Test Duration
hh:mm:ss
661
Table 14-2: Session Sender Lab Parameters Parameter Total Per Iteration Description Provides statistics for the total test. Provides statistics for each iteration of the test. Valid Values Check or Uncheck Check or Uncheck
662
16. Click Save to save your test. 17. Click Save and Run to run your test. Note: Because Application protocols can override the close method directly in the Super Flow, depending on the Application Profile that you select, the test may use a close method other than the one you selected.
663
In addition, each device is measured based on its device capacity and its attack survivability. Again, these criteria will affect the tests to which a DUT is subjected. The testing categories are: Throughput Sessions Robustness Security Web Virtual Machines Storage Virtual Machines
664
Database Virtual Machines Email Virtual Machines Each of these categories is composed of a number of subtests. Different tests may be performed at different rates, depending on the device type and capacity.
Device Types
Resiliency Scores are constructed to uniquely evaluate the performance and resilience of a set of network devices. These device types are selectable from the Resiliency Score page. Each DUT category has a specified configuration, embodied in the corresponding Network Neighborhood. The DUT should be configured to match the test. Note: Resiliency Scores are not network protocol compliance or conformance scores. The device types available for Resiliency Score testing include: Switch primarily a Layer 2 and 3 forwarding device, with the same IP network on each interface. Router a networking device that connects and directs packets between different Layer 3 networks Firewall a Layer 3 device that selectively allows or blocks certain traffic; the test methodology will prescribe which ports/services must be allowed by the firewall Proxy a device which terminates a Layer 4 connection on one interfaces and regenerates it on another interface (such as an HTTP proxy) Intrusion Prevention System (IPS) Layer 2 device that connects two segments of a layer 3 network and blocks certain malicious traffic while allowing all non-malicious traffic Unified Threat Management (UTM) a Layer 2 and 3 device combining firewall and Intrusion Prevention System capabilities Application Server A single virtual machine with four available services (mail, Web, SQL, and file sharing) Data Center A collection of virtual machines (VMs), each specialized to run one service per VM
Test Pass/Fail
If a device fails the Resiliency Score while the test is underway, the device will receive a Failed rating. A description of what made the test fail is provided so that corrective action can be taken on the DUT. This information includes, but is not limited to, what test was being conducted when the device stopped responding.
665
When a device receives a Resiliency Score displayed as a hyphen (-), it means that the test has failed and that a score of 0 (zero) has been issued for the device. This can occur if the test was interrupted and unable to be completed. If your device receives a Resiliency Score displayed as a hyphen (-), run the Resiliency Score test again.
Port Reservation
Ports 1 and 2 must be connected to non-Application Server and Data Center DUTs. Only one port connection to Application Server and Data Center DUTs is required. However, all ports on a blade must be reserved for all Resiliency Score testing.
Single-Blade Restriction
To ensure reproducibility, Resiliency Score tests are performed using the interfaces on a single blade. Multi-blade tests are not performed.
666
Table 14-3: Resiliency Scoring IP Addresses Network Device Intrusion Prevention System Unified Threat Manager Application Server Data Center (File Server) Data Center (DB Server) Data Center (Web Server) Data Center (Mail Server) Interface 1 IP Address 10.0.0.1 192.168.50.1 User defined User defined User defined User defined User defined Interface 2 IP Address 10.0.0.1 192.168.51.1 N/A N/A N/A N/A N/A
Test Setup
The DUT will have its interface(s) connected to the BreakingPoint device. These connections will be referred to as Logical Interface 1 and Logical Interface 2 (for those devices requiring two interfaces), based on the interface reservation on the BreakingPoint device. Note: Some devices require only one logical interface.
Network Configuration
In preparation for the test, the DUT must be configured to support the appropriate network configuration for that device. Switch The network configuration used to test a device classified as a switch will be composed of two separate IP ranges within the same subnet, both directly attached to the devices network. Router The network configuration used to test a device classified as a router will be composed of two ranges of hosts in non-local networks. Each will arrive at the DUT via a router attached to a separate local subnet of the DUT. Traffic is expected to be routed through gateway IPs on the device. Firewall The network configuration used to test a device classified as a Firewall will be composed as follows Traffic originates from a network of client addresses in a local subnet.
667
Client requests are handled by a set of hosts that are simulated as a multi-homed host. That is, the set of IP addresses will all originate from a single MAC address, avoiding the possibility of overflowing MAC tables on the device. Server hosts will be listening on a set of hosts on a nonlocal subnet. The server addresses are reachable by the DUT via a router on a local subnet of interface 2. The DUT is expected to translate the source address to one from an unspecified pool, which must be reachable by the server hosts. The specific client addresses are learned as they are observed. Proxy The network configuration used to test a device classified as a Proxy will be composed as follows: Traffic originates from a network of client addresses in a local subnet. Client requests are handled by a set of hosts that are simulated as a multi-homed host. That is, the set of IP addresses will all originate from a single MAC address, avoiding the possibility of overflowing MAC tables on the device. Server hosts will be listening on a set of hosts on a nonlocal subnet. The server addresses are reachable by the DUT via a router on a local subnet of interface 2. The DUT is expected to translate the source address to one from an unspecified pool, which must be reachable by the server hosts. The specific client addresses are learned as they are observed. Intrusion Prevention System The network configuration used to test a device classified as an Intrusion Prevention System will be composed of two separate IP ranges within the same subnet, both directly attached to the devices network. Unified Threat Manager The network configuration used to test a device classified as a Unified Threat Manager will be composed of two ranges of hosts in nonlocal networks. Each will arrive at the DUT via a router attached to a separate local subnet of the DUT. Traffic is expected to be routed through gateway IPs on the device. Application Server The network configuration used to test a device classified as an Application Server will be composed of one IP address attached to the devices network. When creating a network configuration for an Application Server, ensure that the device is connected to the BreakingPoint port reserved as Logical Interface 1 and that the entire blade is reserved. You can create a network configuration for either a VM Application Server or a non-VM Application Server.
668
To create a network configuration for a VM Application Server: 1. Log into the VMware ESXi client vSphere as an account that can import templates, edit configurations, and start VMs. 2. From Strike Center, download the following file to the vSphere client PC: https://strikecenter.bpointsys.com/bps/resiliency/BPSTemplateGenerator.ova 3. From vSphere client, go to Inventory. 4. Go to File in the top menu. 5. Select Deploy OVF Template.... 6. Browse to the path containing the file BPSTemplateGenerator.ova on the vSphere client PC and click Next. 7. Click Next again. In this screen, give this instance a distinct name. 8. Continue clicking Next, accepting the default options. 9. Click Finish to begin the VM import procedure. 10. Select the new VM and click Edit Virtual Machine Settings once the import is complete. 11. Click on Network Adapter 1. Select the network label that can access the VM Management network. 12. Click OK to close the window and accept the new settings. 13. Right-click on the newly created VM and select Open Console. 14. Click Play to start the VM. When the VM has completed it's boot up process, you will see a screen with instructions. Follow the instructuctions on screen to generate an Application Server Deployment. To create a network configuration for an x86-64 non-VM Application Server: Note: BreakingPoint has tested Ubuntu 10.04 running on an x86_64 architecture. While it is possible that Ubuntu 10.04 running on other architectures may work using the instructions in the previous section, BreakingPoint makes no claim to that effect. 1. Install Ubuntu 10.04.2-desktop-amd64.iso. Note: The system you are using should have at least 20 gigabytes of disk space and at least 1 gigabyte of RAM. BreakingPoint also recommends that you dedicate one network interface for management and one for running tests. a. Boot from an ISO or DVD/CDROM. b. At the prompt, click Install Ubuntu 10.04.2 LTS. c. Set your timezone and click Forward. d. Select Suggested option: USA and click Forward. e. Layout your disk and click Forward. f. Enter these settings on the panel: Server Name: resiliency-server Username: testuser Password: testuser g. Click Forward. h. Click Install. i. Click Restart Now when prompted.
669
2. Boot into Ubuntu and log in as testuser. 3. Enter testuser as the password. 4. From the GUI, select Applications > Accessories > Terminal. 5. At the prompt, type su as the root. For example:
testuser@resiliency-server:~$ sudo su [sudo] password for testuser: <testuser> root@resiliency-server:/home/testuser#
670
671
12. Shutdown all new running services. Ignore any errors. For example:
root@resiliency-server:/home/testuser# root@resiliency-server:/home/testuser# root@resiliency-server:/home/testuser# root@resiliency-server:/home/testuser# root@resiliency-server:/home/testuser# /etc/init.d/smbd stop /etc/init.d/nmbd stop /etc/init.d/apache2 stop /etc/init.d/sendmail stop /etc/init.d/mysql stop
672
13. Install the BreakingPoint Resiliency Server Configuration files. For example:
673
root@resiliency-server:/home/testuser# mkdir ResConfig root@resiliency-server:/home/testuser# cd ResConfig To obtain the configuration files, you will need a valid Strike Center login. If you do not have one, please go to https:// strikecenter.bpointsys.com and select "Create Account" directly under the "Log In" button. If you are unable to create an account, contact your Account Manager or Breaking Point Systems Support. Once you have a username and password, replace <USERNAME> and <PASSWORD> in the command below: root@resiliency-server:/home/testuser/ResConfig# wget --no-check-certificate --user=<USERNAME> -password=<PASSWORD> \ https://strikecenter.bpointsys.com/bps/resiliency/ BPSResiliencyConfigFiles.tar root@resiliency-server:/home/testuser/ResConfig# tar xvf BPSResiliencyConfigFiles.tar root@resiliency-server:/home/testuser/ResConfig# mv apache2.tar samba.tar /etc/ root@resiliency-server:/home/testuser/ResConfig# mv sendmail.tar mysql_etc.tar /etc/ root@resiliency-server:/home/testuser/ResConfig# cd /etc/ root@resiliency-server:/etc# rm -fr apache2/ samba/ mail/ mysql/ root@resiliency-server:/etc# tar xvf apache2.tar ; rm apache2.tar root@resiliency-server:/etc# tar xvf samba.tar ; rm samba.tar root@resiliency-server:/etc# tar xvf sendmail.tar ; rm sendmail.tar root@resiliency-server:/etc# tar xvf mysql_etc.tar ; rm mysql_etc.tar root@resiliency-server:/etc# cd root@resiliency-server:/home/testuser/ResConfig# mv www.tar /var/ root@resiliency-server:/home/testuser/ResConfig# cd /var root@resiliency-server:/var# rm -fr www/ root@resiliency-server:/var# tar xvf www.tar; rm www.tar root@resiliency-server:/var# cd root@resiliency-server:/home/testuser/ResConfig# mv mysql.tar samba_var.tar /var/lib root@resiliency-server:/home/testuser/ResConfig# cd /var/lib root@resiliency-server:/var/lib# rm -fr mysql/ samba/ root@resiliency-server:/var/lib# tar xvf mysql.tar ; rm mysql.tar root@resiliency-server:/var/lib# tar xvf samba_var.tar ; rm samba_var.tar root@resiliency-server:/var/lib# cd root@resiliency-server:/home/testuser/ResConfig# mv qpopper.config / root/src/qpopper4.0.19/ root@resiliency-server:/home/testuser/ResConfig# mv BPS_Setup.pl StartupServicesTmp.pl / root@resiliency-server:/home/testuser/ResConfig# mv RESET_SQL SetupResetScript.sh /root/ root@resiliency-server:/home/testuser/ResConfig# mv ResetScriptTmp.c addUsers.pl /root/ root@resiliency-server:/home/testuser/ResConfig# mv dyn_content.c / root/ root@resiliency-server:/home/testuser/ResConfig# cd .. root@resiliency-server:/home/testuser# rm -fr ResConfig root@resiliency-server:/home/testuser# mv /usr/sbin/NetworkManager / usr/sbin/NetworkManager.gone
674
14. Create the path /home/TEST for Samba shares. For example:
root@resiliency-server:/home/testuser# root@resiliency-server:/home/testuser# mkdir /home/TEST chmod 777 /home/TEST
16. Add users for Sendmail and Qpopper. This process may take several hours. For example:
root@resiliency-server:/# perl /root/addUsers.pl *** ADDING USER: user1 *** *** ADDING USER: user2 *** *** ADDING USER: user3 *** *** ADDING USER: user4 *** ... *** ADDING USER: user9998 *** *** ADDING USER: user9999 *** *** ADDING USER: user10000 *** root@resiliency-server:/#
Creating a network configuration for a non-x86-64, non-VM Application Server: Step 13 in the previous section titled Creating a network configuration for a non-x86-64, non-VM Application Server: describes how to use the BPSResiliencyConfigFiles.tar file. You will need this file as it contains the custom configuration and data needed by the services. 1. BreakingPoint recommendeds that you obtain and build the following packages from their source using the following versions: Sendmail: MySQL: Samba: Apache2: QPopper: 8.14.3 5.1.41 3.4.7 2.2.14 4.0.19
675
Pre-built packages may contain customizations from the distrubution that you are using and some of the file formats and file names may differ from how BreakingPoint packages those files in the BPSResiliencyConfigFiles.tar file. Note: Make sure to enable InnoDB when building or installing MySQL. For example, -enable-plugins=all will enable all plugins, including InnoDB, as an argument to / configure). If the services listed above were built and installed from the source, many of the locations defined in step 13 will be similar. For example, if you configure MySQL to use /etc/ mysql/my.cnf as its configuration (contained in mysql_etc.tar), MySQL will use /var/ lib/mysql to find the database files. 2. Copy the appropriate configuration files from the archives (for example: sendmail.tar, apache2.tar, and samba.tar). When installing Apache from source, the configuration file will be named httpd.conf. The archive file apache.tar uses the file apache2.conf as the main configuration file and httpd.conf as the user configuration. 3. Copy apache2.conf to httpd.conf to start Apache. Apache needs the content for the flows that the Resiliency Test will use. They are contained in the www.tar file and need to be copied into the DocumentRoot directory (/ var/www or <ServerRoot>/htdocs, for example). You will need to compile the dyn_content.c file and place it into the cgi-bin directory (<DocumentRoot>/cgi-bin or / usr/lib/cgi-bin, for example). The source installer (make install) will also copy printenv and test-cgi into this directory as well. You will also need to set proper permissions so that the user that is running the server process can run dyn_content (user www, for example). 4. Follow the procedures in step 11 of the previous section to install Qpopper. The -enable-specialauth option is not necessary if your operating system does not use shadow passwords. For example, you will not have an /etc/shadow file. 5. Set the server's hostname to resiliency-server. When you enter the hostname command, the system will reply with resiliency-server and the command domainname will return none. If the server does not queue mail or requests that the client supply a domain name, disable recipient checking in the /etc/mail/sendmail.cf file by commenting out the line that says Scheck_rcpt. For example, change:
# call all necessary rulesets Scheck_rcpt # R$@ required" $#error $@ 5.1.3 $: "553 Recipient address
676
-- to -# call all necessary rulesets #Scheck_rcpt # R$@ required" $#error $@ 5.1.3 $: "553 Recipient address
6. Use inetd or a similar process to allow the reset service to accept connections on port 5555. Use ResetScript.c to manage this process and cleanup and restart services. You may need to modify this file to some degree, depending on how and where your services are installed. 7. Disable DNS by removing dns from /etc/nsswitch.conf. For example:
hosts: dns files -- to -hosts: files
Note: Review the script BPS_Setup.pl as a guide to update configuration files. 9. Add the users for Sendmail and Qpopper using step 16 of the procedure above. Use the addUsers.pl script as a guide. This script uses the adduser utility on Linux and is
677
very specific to that operating system. For BSD operating systems, use this script as an example of the adduser utility. For example:
#!/usr/bin/perl for ( $user = 1; $user <= 10000; $user++ ) { open(OUT, ">/root/TMPL2"); print "*** ADDING USER: user$user ***\n"; print OUT "user$user" . ":::::::" . "/home/user$user:/bin/ sh:user$user\n"; close(OUT); $cmd = "/usr/sbin/adduser -f /root/TMPL2 1> /dev/null 2> / dev/null"; $rc = system("$cmd"); if ( $rc != 0 ) { print "ERROR ADDING user$user!!! [$rc]\n"; exit $rc; } }
Data Center Resiliency The network configuration used to test a device classified as a Data Center will be composed of one IP address attached to the devices network. When creating a network configuration for a Data Center, ensure that the device is connected to the BreakingPoint port reserved as Logical Interface 1 and that the entire blade is reserved. To create a network configuration for a Data Center: 1. Log into the VMware ESXi client vSphere as an account that can import templates, edit configurations, and start VMs. 2. From Strike Center, download the following file to the vSphere client PC: https://strikecenter.bpointsys.com/bps/resiliency/BPSTemplateGenerator.ova 3. From vSphere client, go to Inventory. 4. Go to File in the top menu. 5. Select Deploy OVF Template.... 6. Browse to the path containing the file BPSTemplateGenerator.ova on the vSphere client PC and click Next. 7. Click Next again. In this screen, give this instance a distinct name.
678
8. Continue clicking Next, accepting the default options. 9. Click Finish to begin the VM import procedure. 10. Select the new VM and click Edit Virtual Machine Settings once the import is complete. 11. Click on Network Adapter 1. Select the network label that can access the VM Management network. 12. Click OK to close the window and accept the new settings. 13. Right-click on the newly created VM and select Open Console. 14. Click Play to start the VM. When the VM completes its boot up process, you will see a screen with instructions. Follow the on-screen instructuctions to generate a Data Center Deployment.
679
Table 14-4: Resiliency Score Functions Function Testing Categories Description Full test Allows you to run a full battery of tests, which could potentially take several hours. This test generates an official Resiliency Score for the device when the test is run with all four testing categories selected. If any testing category is deselected, the Full test will not generate a Resiliency Score for the device. Quick test Allows you to run abbreviated versions of the same tests as the Full test option. The purpose of this brief test is to provide you with an indication of how the device will perform. This test does not generate an official Resiliency Score for the device. Throughput Measures the link speed of a device. Sessions Traffic is run using realistic traffic engineered to stress the devices limits with respect to the rate of session churn. Robustness Measures the ability of a device to correctly handle malformed traffic at different IP layers. Security Measures the ability of a device to continue passing traffic when confronted with malicious traffic. Report Name Allows you to specify a name for a particular test. This name will be attached to any subsequent report output. If this name needs to be re-entered subsequently in any screen, it will be available in a drop-down list.
You can select a single testing category or any combination of the available categories. You may not wish to perform all possible tests at any given time; therefore, you can multiselect the subset of tests desired. If you select a subset of tests, you must indicate this in the final report. No final or partial score will be given, and any omitted tests will be indicated as Test Not Completed. Standard test results will still be available. To test the resiliency of a device: 1. Select Test > Resiliency Score from the Menu bar. 2. Select a device from the Select A Device area. Note: The Network Neighborhood interface settings have been pre-configured for each type of network device. Be sure to configure the IP address of the device you are testing to match the corresponding IP address found in Table 14-3 on page 666. 3. Click Choose Your Ports from the Reserve Ports area. 4. Select the ports you want to use in your test. Click Close after you have selected your ports.
680
5. For Application Server and Data Center tests, select an existing network configuration, or create a new network configuration from the Network Configuration area. For all other tests, skip this step and go to step 6. 6. Select the capacity of your device from the Device Capacity area.
n
For Application Server and Data Center tests, also select the type of virtual machines to be included in your test.
Note: For Application Server tests, select At Least to find the limit of a device. When you select At Least, the test runs until it fails, usually within a short period of time. Select Exactly to test the device capacity for a specific number of users. When you select Exactly, the test runs until it is complete. Tests run with an exact number of users tend to run longer than those run with a minimum number of users selected. 7. Select the categories you want to include in your test from the Testing Categories area. For Application Server and Data Center tests, skip this step and go to step 8. Note: If any testing category is deselected, the Full test will not generate a Resiliency Score for the device. The Quick test does not generate an official Resiliency Score for the device. 8. Enter a name for your report in the Report Name field. 9. Click Validate. The Connection Checklist will be displayed. 10. Verify that the ports listed on the Connection Checklist are reserved for your test. Click Continue. The Validation screen will be displayed. 11. Click Run Test once the Validation screen has completed. The progress of your test will be displayed by the device report page. 12. Once the test has completed, the Resiliency Score page will be displayed. Click BLANK to view the report.
Report Generation
When a Resiliency Score is completed, a test report that shows both summary information and more detailed information about subtests is generated. The report includes the OS and ATI in use, and any other information needed for another evaluator to reproduce the test scenario and obtain identical results. The test/report name is included in the report. Note: Sections C and G of the Resililency report run the same test and share the same report.
681
configurable email traffic (with both random and specific keywords) and real-world background traffic.
Data Rate
682
Targeted Flows
A targeted flow represents the flow that contains the item that you want the Lawful Intercept device to search for. The objective of the test is to see whether your lawful intercept device can identify and capture the targeted flow from among a number of untargeted flows. Table 14-6 on page 683 lists the types of triggers (or needles) that can be used in your tests. Table 14-6: List of Triggers Item Phone Number Tax Identification Number Credit Card Number User defined pattern File of user defined entries List of user defined entries Creating a Targeted Flow To create a targeted flow, you will need to identify the target you are looking for. You should also create traffic that is similar to the item you are looking for, along with traffic that is not so similar. To create a targeted flow: 1. Select the Labs button from the Home page. 2. Select the Lawful Intercept button on the Labs dialog box. 3. From the left side of the screen, click the Browse button next to the Device Under Test field and search for the device you want to test. Note: When searching for an item on the Lawful Intercept test editor, type a portion of the name of the item you are searching for into the Search field and click Search. 4. Click the Browse button next to the Network Neighborhood field and search for a Network Neighborhood. 5. Click the Browse button next to the Background Traffic field and search for the Application Profile that has the type of background traffic that you want to appear in your test. 6. Enter the number of Flows Per Second that you want in your test. 7. Enter the number of Concurrent Flows that you want in your test. 8. From the right side of the screen, select the Target 1 check box. 9. Click the Browse button next to the Super Flow field and search for a Super Flow to include in your test. Description Randomly chosen phone numbers Realistic Tax Identification Numbers Realistic Credit Card Numbers Randomly chosen strings matching the given pattern Randomly chosen strings from a file of entries Randomly chosen strings from a list of entries
683
Note: If no Super Flow containing a target (or trigger) is available, you will receive an error message. You will need to go to the Application Manager and build a Super Flow that contains a trigger. 10. Select the type of trigger you want to include in your test by making a selection from the Type drop-down list.
n n
To edit the selected item, click the Edit trigger parameters button (...). After making your required edits, click the Accept button.
11. Select the frequency of how often the target type will occur in your test.
n n n
Select the first Every radio button to enter how frequently the pattern you are searching for appears in your test. Select the second Every radio button to enter the frequency of how often the pattern you are searching for will begin. You can add up to two more targeted flows to search for by performing steps 8 through 11 on the Target 2 and Target 3 panels.
12. Click Save to save your test, or click Save As to save your test under a different name. 13. Click Run to run your test. The Quantity selection is directly related to the Flows Per Second field located on the left side of the screen. A combination resulting in more than 1 flow per second will generate an error message that says, "Error The combination of settings supplied would result in a trigger rate of 10.0 per second for trigger (needle). The maximum is 1 per second." For example, if you enter a value of 100 into the 1 out of __ flows field, and the Flows Per Second value is 100 (resulting in a trigger rate of 10.0 per second), you will receive the error message. Once you have created a test, you can save it for future use. You can recreate identical tests or generate new randomized tests. Customizing a Targeted Flow The BreakingPoint Storm CTM generates random values for each of these targeted flows. However, you have the option of customizing these items to your own specifications. For instance, if you want to include realistic credit card numbers within a specific range as a targeted flow, you can do so by using the User defined pattern option. To include credit card numbers within a specific range as a targeted flow: 1. Select the User defined pattern option in the Type drop-down list. 2. Click the Edit trigger parameters button. 3. From the drop-down list, select the type of credit card you want.
n
4. Type the card number range you want to search for and click Accept.
684
You can also customize your targeted flow using the File of user defined entries option or the List of user defined entries option. When you select the File of user defined entries option, the BreakingPoint Storm CTM will randomly select items from the uploaded file and place them into your test. To use the File of user defined entries option: 1. Select File of user defined entries from the Type drop-down list. 2. Click the Edit trigger parameters button. 3. Browse to the file you want to use and upload it. 4. Click the Accept button. When you select the List of user defined entries option, the BreakingPoint Storm CTM will randomly select items from the list you create in the Custom Triggers dialog box and place them into your test. To use the List of user defined entries option: 1. Select List of user defined entries from the Type drop-down list. 2. Click the Edit trigger parameters button. 3. Type the item you want to use into the Trigger field. 4. Click the add (+) button to add the item to the list. 5. Click the Accept button when you are finished.
685
The ability to measure Join/Leave latency Support for IGMP versions 1, 2, and 3 Interoperating with older versions of IGMP The ability to run most UDP applications over Multicast Working with standard Multicast routing infrastructures such as PIM-DM, PIM-SM, BIDIR-PIM, and SSM
The Multicast Test Lab is designed to simplify the setup of multicast tests. However, there are some configurations that cannot be created using the lab. When these situations occur, you will be required to create the test manually as described in the section titled Manually Creating a Multicast Test.
Each source runs in its own component Sources transmit from 1 to 10,000 Mbps Each source runs the Multicast Lab - Server Super Flow, which has single Raw Multicast flow with the following actions: Send Random Data (min 1000 bytes) Send Random Data (min 1000 bytes) Send Random Data (min 1000 bytes) Goto Action #1
Note: To avoid encountering these restrictions, you can create a multicast test manually by using the instructions described in the section titled Manually Creating a Multicast Test.
686
Multicast Source Fields Table 14-7 lists the fields for the Sources section of the Multicast Test Lab page. Table 14-7: Multicast Sources Fields Field IP Address Multicast Group Rate Network Template Each server runs on a /24 network in its own VLAN. The first server uses VLAN 10, the second uses VLAN 11, and so on. Any /24 network can be used as long as it does not overlap with the client networks. This means that it cannot fall within the range between 10.10.2.1 and 10.10.65.254. The Network Template defines the VLANs and subnets that will be used by the subscribers (clients) in your test. This section has no effect on the sources. Three network templates are available: Small Network Medium Network Large Network The Small Network template uses 16 VLANs beginning with VLAN 102 through VLAN 117. Table 14-8 lists the VLANs and subnets used by the Small Network template. Table 14-8: Small Network Template VLAN 102 103 104 105 ... 116 117 Subnet 10.10.2.0/28 10.10.2.16/28 10.10.2.32/28 10.10.2.48/28 ... 10.10.2.224/28 10.10.2.240/28 10.10.2.226 10.10.2.238 10.10.2.242 10.10.2.254 Host Addresses Used 10.10.2.2 10.10.2.14 10.10.2.18 10.10.2.30 10.10.2.34 10.10.2.46 10.10.2.50 10.10.2.62 The source IP address. The destination IP address of the group to be joined. The transmit rate. Description
687
The Medium Network template uses 256 VLANs beginning with VLAN 102 through VLAN 357. Table 14-9 lists the VLANs and subnets used by the Medium Network template. Table 14-9: Medium Network Template VLAN 102 103 104 105 ... 356 357 Subnet 10.10.2.0/28 10.10.2.16/28 10.10.2.32/28 10.10.2.48/28 ... 10.10.17.224/28 10.10.17.240/28 10.10.2.2 10.10.17.238 10.10.2.2 10.10.17.254 Host Addresses Used 10.10.2.2 10.10.2.14 10.10.2.2 10.10.2.30 10.10.2.2 10.10.2.46 10.10.2.2 10.10.2.62
The Large Network template uses 1024 VLANs beginning with VLAN 102 through VLAN 1125. Table 14-10 lists the VLANs and subnets used by the Large Network template. Table 14-10: Large Network Template VLAN 102 103 104 105 ... 1124 1125 Subnet 10.10.2.0/28 10.10.2.16/28 10.10.2.32/28 10.10.2.48/28 ... 10.10.65.224/28 10.10.65.240/28 10.10.2.2 10.10.65.238 10.10.2.2 10.10.65.254 Host Addresses Used 10.10.2.2 10.10.2.14 10.10.2.2 10.10.2.30 10.10.2.2 10.10.2.46 10.10.2.2 10.10.2.62
Note: The range of addresses between 224.0.0.0 and 224.0.0.255, inclusive, is reserved for the use of routing protocols and other low-level topology discovery or maintenance protocols, such as gateway discovery and group membership reporting. Multicast routers should not forward any multicast datagram with destination addresses in this range, regardless of its TTL. Subscribers The Subscriber section allows you to define the subscriber (client) profiles to be used in your test. The Multicast Lab supports up to 10 subscriber profiles. Each subscriber profile has the following parameters: Max per Subnet allows you to define how many subscribers from this profile will be active on each VLAN/subnet defined in the Network Template.
688
Multicast Group allows you to determine which group these subscribers will try to join. Source Specific allows you to select the source addresses to be used for sourcespecific multicast (leave unchecked for any source). Each subsriber uses the Multicast Lab - Client Super Flow, which has a single Raw Multicast flow with the following actions: Join Delay 15 seconds Leave Delay 30 seconds
All subscriber profiles are run in the same test component with max concurrent sessions and max sessions/sec set to a value that corresponds to the size of the network used in the test. Table 14-11 lists the maximum number of sessions and the maximum sessions per second for each type of network. Table 14-11: Maximum Sessions and Maximum Sessions Per Second Parameter sessions.max sessions.maxPerSecond Multicast Subscriber Fields Table 14-12 lists the fields for the Subscriber section of the Multicast Test Lab page. Table 14-12: Multicast Subscriber Fields Field Max per Subnet Multicast Group Source Specific Max per Subnet Field The Max per Subnet field determines the maximum number of clients that will join to the given group on any VLAN. For exmaple, a test configured with the following two subscribers will have at most 10 joins to group 239.0.0.1 on each VLAN: Subscriber profile 1:
n n n
Description The maximum number of clients issuing join requests. The IP address of the group to be joined. Allows you to define a specific Multicast SSM Source Address.
Subscriber profile 2:
689
n n n
Profile 1 will have between 1 and 5 will be source-specific joins. Profile 2 will have between 1 and 10 source-any joins. For example, one VLAN might have 3 source-specific and 7 source-any joins, while another VLAN might have no source-specific joins and 10 source-any joins. Reset To Defaults Selecting the Reset to defaults option resets all Multicast Test Lab settings to their default values. Test Duration The Test Duration setting allows you to define the duration of a multicast test.
690
Figure 14-1 on page 691 provides an example configuration for a test using the Multicast Test Lab page and lists the test settings. Figure 14-1: Multicast Test Lab Example
Table 14-13 identifies items on the Multicast Test Lab and provides a description of how the settings operate within the structure of a multicast test. Table 14-13: Multicast Test Lab Example Item 1 2 3 The first server component will generate a 2 Mbps UDP stream on VLAN 10 with IP source address 10.1.1.2 and IP destination address 239.0.0.2. The second server component will generate a 3 Mbps UDP stream on VLAN 11 with IP source address 10.1.1.3 and IP destination address 239.0.0.3. The client component will contain two Super Flows. The first client Super Flow will issue source-specific joins to group 239.0.0.2 with source 10.1.1.2. At most, 2 of these joins will be seen on any one VLAN at a time. Since there are 256 available VLANs, you will see 512 active joins from this profile at any point in time. The second client Super Flow will issue source-any joins to group 239.0.0.3. At most, 10 of these joins will be seen on any one VLAN at a time. Since there are 256 available VLANs, you will see 2560 active joins from this profile at any point in time.
691
Multicast Role = Server / Source Multicast Group Address = (this will be the IP destination address) Client Port = 0 (unless you want to configure an explicit UDP destination port) Server Port = 0 (unless you want to configure an explicit UDP source port)
Note: By default, each server flow within this Super Flow will have the same server IP address. 4. If the servers require distinct addresses:
n n n
Click on Manage Hosts Add additional servers Assign the additional servers to the individual flows
5. Add flow actions. The typical Multicast server flow will have one or more Send actions followed by a Goto action to repeat the flow. If there are multiple servers in the flow, be sure to include an explicit Close action for each flow after the Goto action. This prevents the automatic closing of flows that occurs on the last action of a flow.
692
Multicast Role = Client / Subscriber Multicast Group Address = set to the group to be joined Multicast SSM Source Address = Set to a comma-separated list of up to four IP addresses to define a list of source addresses to use as a source include filter. An empty list indicates an Include Any Source filter. (Explicit configuration of exclude filters is not supported.) Multicast Max Clients Per Subnet/VLAN - A convenient way to control the number of clients issuing join requests is to set this value to the number you want on each VLAN and set the component's value of Max Simultaneous Sessions to value higher than the aggregate number of clients in the test. Multicast Max Measurable Leave Latency - Leave latency is measured as the time between a leave request for a given multicast stream and the time the last UDP packet for that stream is received. If accurate measurements for leave latency are required, set this parameter to a value that exceeds the expected latency. Client / Server Ports - These parameters are not used for multicast clients.
Note: By default, each client flow within this Super Flow will have the same client IP address. 4. If the clients require distinct addresses:
n n n
Click on Manage Hosts Add additional clients Assign the additional clients to the individual flows.
5. Add flow actions. The typical Multicast client flow is a loop with delays after each Join and Leave action. The Join and Leave actions do not wait for success, they simply notify the BPS Multicast layer of the request and move on. The delay that follows a join should exceed the expected join latency. Similarly, the delay following a leave should exceed the expected leave latency. If there are multiple clients in one flow, be sure to include an explicit Close action for each flow after the Goto action. This prevents the automatic closing of flows that occurs on the last action of a flow.
693
Table 14-14 on page 694 lists the action and action parameters for Multicast. Table 14-14: Multicast Action Parameters Action Client: Multicast Join Description Causes the flow to request a join to the multicast group defined in the flow settings. Pauses the flow for a specified amount of time. Action Parameters Transaction Flag Valid Values Start, Continue, End, or Start and End
Client: Delay
Transaction Flag Number of Milliseconds. Number of milliseconds. If this check box is left unchecked, or if a value is not specified, the Application Manager will generate a random delay value of between 1000 and 4999 milliseconds. Maximum Number of Milliseconds
Causes the flow to request a join to the multicast group defined in the flow settings. Sends randomized data. Causes the flow to go to another action
Transaction Flag
Transaction Flag
694
The only Real-Time Statistics tabs that show data related to Multicast tests are the Summary Tab and the Interface Tab. Real-Time Statistics Summary Tab Concurrent Super Flows: This counter shows the total number of Super Flows. It should match the number of servers plus the number of VLANs * max clients/VLAN. For example, if you have 2 servers and 8 VLANS with 4 clients per VLAN, the number of Concurrent Super Flows should equal 34. Concurrent UDP flows: This counter displays the total number of server flows. Subtract this value from the number of Concurrent Super Flows to obtain the total number of active clients. Transactions: By default, the transaction data will count the number of UDP packets transmitted by Multicast servers. If you explicitly set the transaction flags on Super Flow server actions, they count operations according to how you set the flags. Transaction flags on client flows are ignored. TCP: Multicast does not use TCP. All TCP counters should equal zero. Interface Stats: These counters show ingress/egress packets and includes all IGMP and UDP packets. Real-Time Statistics Interface Tab Transmit Stats: These counters show server generated UDP packets and client generated IGMP packets. Receive Stats: These counters show IGMP and UDP packets received and are perhaps the most interesting real-time counters for Multicast tests. If the number of IGMP packets is small in comparison to UDP (which is usually the case), these counters show which interfaces are receiving Multicast streams. If client flows are configured to "Join; Delay; Leave; Delay; Repeat;" and if the test and network is setup and running correctly, you will see the receive rates go up and down as clients join and leave Multicast groups. Interpreting Test Results Section by Section Multicast statistics are not presented in consistent manner with regard to clients and servers. The general rules to keep in mind when looking at Multicast test reports are that Multicast server flows: Transmit only UDP packets Record transmit statistics at the Application layer under the Multicast application protocol Record transmit statistics at IP and UDP layers Never receive packets
695
Multicast client flows: Transmit only IGMP packets Do not record statistics at the Application layer Record transmit statistics at IP and IGMP layer
APN
696
Table 14-15: Simulated Elements Fields Field Bandwidth Starting Secret Key Operator Variant Description The amount of bandwidth to be used in the test. The base value for a secret key that is generated for each UE. Specifies a unique value originally assigned by the UE manufacturer. The operator variant is usually unique to each brand of UE. The mix of application traffic used by the UEs in the test. The number of cell towers used in the test. The network address of the subnet where all of the eNodeBs will be located. The netmask address of the subnet where all of the eNodeBs will be located. The default gateway that each eNodeB will be configured with. The first IP address that the eNodeBs will be given. Provides the address of the DNS to use when resolving hostnames. The default domain name to use for the given hostnames.
Application Profile Number of eNodeBs Network Address Netmask Gateway Starting IP DNS Server IP Domain Name Equipment to Test
This area of the LTE Test Lab allows you to add the mobility management entity (MME) that you are testing to the test. Table 14-16 lists the fields for the Equipment to Test area of the LTE Test Lab. Table 14-16: Equipment to Test Fields Field MME Public Land Mobile Network The Public Land Mobile Network (PLMN) is a unique identifier for each cellular network provider. It consists of the Mobile Country Code (MCC) and the Mobile Network Code (MNC). The MCC is determined by the country. For every MCC, each cellular network The device to be tested. Description
697
provider can register for one or more MNC. You can specify an MCC and MNC so that they match the MCC and MNC being used by the device under test. Table 14-17: Public Land Mobile Network Field MCC MNC Services This area of the LTE Test Lab allows you to define the Internet services that will be used in your test. Table 14-18 lists the fields for the Services area of the LTE Test Lab. Table 14-18: Services Fields Field Network Address Netmask Gateway Starting IP Number of Hosts CTM IP Reset To Defaults Selecting the Reset to defaults option resets all LTE Test Lab settings to their default values. Test Duration The Test Duration setting allows you to define the duration of an LTE test. Description The network address of the subnet where the simulated Internet services will be located. The netmask address of the subnet where the simulated Internet services will be located. The default gateway setting for all simulated Internet services. The first IP address that the Internet services will use. The total number of separate simulated hosts that will be used to provide Internet services. The IP address of your BreakingPoint CTM Description The Mobile Country Code of the device to be tested. The Mobile Network Code of the device to be tested.
698
2. Enter the number of UEs to be simulated in the Number of UEs field. 3. Enter the IMSI to begin with in the Starting IMSI field. The IMSIs will be added as subscribers on the HSS to be tested. 4. Enter the MSISDN to begin with in the Starting MSISDN field. The simulated UEs will be assigned a sequential range of MSISDN numbers beginning with the value entered here. 5. Enter the type of network connection to create in the APN field. This value determines the type of network connection will be simulated. 6. Enter the amount of bandwidth to be used. 7. Click Browse to select the Application Profile to be used. When the Browse for App Profiles screen is displayed, enter text in the search field to search for the Application Profile you want to select. 8. Enter the number of cell towers to be used in your test in the Number of eNodeBs field. Note: Each eNodeB is configured to have three cells, each with a unique cell ID and TAC. The three cells within each eNodeB will be numbered sequentially. The maximum number of eNodeBs is 4096. 9. Enter the network address of the subnet where all eNodeBs will be located in the Network Address field. 10. Enter the netmask of the subnet where all of the eNodeBs will be located in the Netmask field. 11. Enter the default gateway that each eNodeB will be configured with in the Gateway field. 12. Enter the IP address to begin with in the Starting IP field. The simulated eNodeBs will be assigned consecutive IP addresses starting with the address entered. 13. If the MME is identified by a hostname, enter the DNS server IP address in the DNS Server IP field. 14. Type the default domain name to use for the given hostname in the Domain Name field. This field is only required if a DNS server IP is used. 15. Type the name of the device to be tested in the MME field. To add more MMEs to the test, click the + in the upper right-hand corner of the area. Click the - next to an MME to remove it from the test. Note: The number of endpoint pairs generated in a test is based on the number of unique eNodeBs and MMEs configured. For example, if a test contains two unique eNodeBs and two unique MMEs, four endpoint pairs will be generated for that test. 16. Enter the subnet address of the Internet services in the Network Address field. 17. Enter the netmask of the subnet of the simulated Internet services in the Netmask field. 18. Enter the default gateway for all of the simulated Internet services in the Gateway field. 19. Enter the IP address to begin with in the Starting IP field. Internet services will use a contiguous set of IP addresses starting with the address entered. 20. Enter the total number of hosts that will be used in the test in the Number of Hosts field. 21. Click Run to run and save the test.
699
Note: For tests measuring the UE attachment and detachment rate, when the rate is not set to 0 (unlimited), the application transaction will begin at the 5 second mark.
700
Reporting Overview
15 Reporting
This section covers: Reporting Overview Statistics Reported Per Component Selectable Reporting Emailing Test Results Viewing Reports Exporting Reports Deleting Reports
Reporting Overview
Reports provide detailed information about the test, such as the components used in a test, the addressing information, the DUT profile configuration, the system versions, and the results of the test. All reports will include an aggregated test results section, which provides the combined statistics for all of the test components. All reports will be automatically generated in HTML and viewable with a Web browser; however, you may export the test results in XLS, HTML, PDF, RTF, CSV, or ZIP (CSV files). For more information on exporting reports, see the section Exporting Reports on page 709. Reports are automatically generated each time a test is run and is viewable from the Reports area in the Control Center. The reports can be sorted by clicking on any of the column headings (Name, Test Type, User, Duration, etc.) to easily locate reports. Note: Reports generated from a test series will be listed under each individual tests name. There is not a consolidated report for a test series. The statistics contained within each report depends on the test components used within the test. For more information on the statistics available for each test component, see the section Statistics Reported Per Component on page 701.
701
702
Table 15-2: Routing Robot Statistics Statistic Transmitted Frames by Size Received Frames by Size Description The size of transmitted frames The size of received frames
TCP Average Time to Open TCP Average Time to Response Packet TCP Average Time to Close Frame Counts Frame Rate Frame Data Frame Data Rate Frame Latency Frame Size Transmitted Frames by Size Received Frames by Size
703
Security Statistics
Table 15-4 on page 704 lists the statistics reported for the Security test component. Table 15-4: Security Statistics Statistic Strike Category Assessment Description The number of Strikes that have been blocked by the device and the number of Strikes that have evaded detection The IP address and port of the Strikes origin and destination
Stack Scrambler
Table 15-5 on page 704 lists the statistics reported for the Stack Scrambler test component. Table 15-5: Stack Scrambler Statistics Statistic Transmitted Frames Pings Description The number of frames transmitted per second The number of pings sent and received
Application Simulator
Table 15-6 on page 704 lists the statistics reported for the Application Simulator test component. Table 15-6: Application Simulator Statistics Statistic App Concurrent Flows App Bytes Transmitted App Bytes Received App Throughput App Transaction Rates Exceptions Frame Counts Description The number of concurrent UDP and TCP flows open at any given time The total number of bytes transmitted per protocol The total number of bytes received per protocol The transmitting and receiving data rate for each protocol The rate at which application transactions are set up Exceptions received The number of frames transmitted and received per second
704
Table 15-6: Application Simulator Statistics Statistic Frame Rate Frame Data Frame Data Rate Frame Latency Frame Size TCP Concurrent Connections TCP Connection Rate TCP Aggregate Connections Description The rate (in fps) at which frames are transmitted and received per second The number of bytes transmitted and received per second The data rate (in Mbps) at which frames are transmitted and received per second The frame latency The average frame size for transmitted and received frames The number of concurrent TCP sessions open at any given time The number of TCP connections attempted and established per second The total number of TCP connections attempted and established per second by the server and the client The average amount of time it takes each TCP connection to set up (in ms) The average amount of time it takes for the response packet to be sent (in ms) The average amount of time it takes for a connection to close The size of transmitted frames The size of received frames The number of packets received after the test has stopped Discarded packets received but not sent to the RX Queue
TCP Average Time to Open TCP Average Time to Response Packet TCP Average Time to Close Transmitted Frames by Size Received Frames by Size Router Discards No RX Queue
705
Recreate
Table 15-7 on page 706 lists the statistics reported for the Recreate test component. Table 15-7: Recreate Statistics Statistic Concurrent Flows Bytes Transmitted Bytes Received Throughput Transaction Rates TCP Concurrent Connections TCP Connection Rate TCP Aggregate Connections Description The number of concurrent UDP and TCP flows open per second The total number of bytes transmitted per protocol The total number of bytes received per protocol The transmitting and receiving data rate for each protocol The rate at which application transactions are set up The number of concurrent TCP connections open at any given time The number of TCP connections attempted and established per second The total number of TCP connections attempted and established per second by the server and the client The average amount of time it takes each TCP connection to set up (in ms) The average amount of time it takes for the response packet to be sent (in ms) The average amount of time it takes for a connection to close The number of frames transmitted and received per second The rate (in fps) at which frames are transmitted and received per second The number of bytes transmitted and received per second The data rate (in Mbps) at which frames are transmitted and received per second The frame latency The average frame size for transmitted and received frames
TCP Average Time to Open TCP Average Time to Response Packet TCP Average Time to Close Frame Counts Frame Rate Frame Data Frame Data Rate Frame Latency Frame Size
706
Selectable Reporting
Table 15-7: Recreate Statistics Statistic Transmitted Frames by Size Received Frames by Size Description The size of transmitted frames The size of received frames
Aggregate Statistics
Table 15-8 on page 707 lists the aggregate statistics for the test. Aggregate statistics will be tagged with the Ethernet label, and they measure the results for traffic across all ports for all test components. Table 15-8: Aggregate Statistics Statistic Ethernet Frames Ethernet Frame Rate Stats Ethernet Data Rate Stats Ethernet Data Ethernet Errors Concurrent Flows Flow Rates Description Total number of frames transmitted and received from of all ports Total frame rate for all network traffic across all ports Total data rate for all network traffic across all ports Total number of bytes transmitted and received Total number of errors for all transmitted and received frames across all ports Total number of concurrent UDP, TCP, and Super Flows open at any given time The total rate at which UDP, TCP, and Super Flows are opened.
Selectable Reporting
An Include in Report check box appears on the information tab of each component in a test setup. Select the check box to include the statistics from the test in the report. Deselect the check box to disable the detailed section of the report for that component. Deselecting the check box not only removes the statistics from the test report, it prevents the test statistics from being captured. This feature helps improve database efficiency by allowing you to prevent nonessential information from consuming space in your database.
707
Viewing Reports
To e-mail test results: 1. Select Control Center > Administration from the Menu bar. 2. Click the My Preferences tab. 3. Click the Email Test Results check box. 4. Select the format you in which you want the system to e-mail the test results. 5. Click the Apply Changes button.
Viewing Reports
Reports provide detailed information about the test such as the components used in a test, the addressing information, the DUT Profile configuration, the system versions, and the results of the test. All reports generated with Version 1.2 will include an aggregated test results section, which provides the combined statistics for all of the test components. All reports will be automatically generated in HTML; however, you may export the test results in XLS, PDF, RTF, CSV, or ZIP (CSV files). Reports are automatically generated each time a test is run and is viewable from the Reports area in the Control Center. The reports can be sorted by clicking on any of the column headings (Name, Test Type, User, Duration, etc.) to easily locate reports. The data contained within each report depends on the test components used within the test. Note: Application Simulator test results will only show a subset of data in its reports. To view the entire report, use the ZIP or XLS formats. The statistics for Concurrent Flows located in the Slot detail section of the report counts the number of concurrently open Super Flows. This represents the maximum number of simultaneous sessions. The statistics for Concurrent Flows located in the Component detail section of the report counts the maximum number of concurrent TCP and UDP flows seen since the last statistics update. Since Super Flows often change states during the time between statistic updates, it is possible for a flow to be counted more than once, causing the total values in this section to be greater than the maximum number of simultaneous sessions. To view a report: 1. Select Test > Reporting from the Menu bar. 2. Select the report you would like to view. Note: You can sort the reports by clicking on any of the column headings and scroll through the pages by clicking on the page numbers. 3. Click the View button. The test results will open in a new Web browser window. Note: When reviewing your report, you will notice that the summaries for Super Flow and Streamcache are no longer in their usual locations. The Super Flow Summary has been moved to section 6.4 of the report. The Streamcache Summary has been deprecated in favor of Exceptions.
708
Exporting Reports
Exporting Reports
By default, the reports will be viewable through a Web browser. If you need to view the report in a different format, you can export the report in any of the following formats: PDF, HTML, RTF, CSV, XLS, BPT, or ZIP (CSV files). To export a report: 1. Open a report. 2. Click the Export drop-down button located in the upper-right side of the report. 3. Select one of the report formats from the menu. 4. Click the Save button when the Save window displays. 5. Browse to the location where the report will be stored. 6. Click the Save button.
XLS Files
A report exported as an Excel (XLS) file can be viewed in Excel 2003 or higher. For XLS files, you will need to use the tabs located on the bottom of the spreadsheet to navigate through the different areas of the report. See Figure 15-1 on page 710.
709
Exporting Reports
CSV Files
A report exported as a CSV file will result in one large spreadsheet, containing all statistics and results from the test.
ZIP Files
ZIP files will contain both text and CSV files; the CSV files will contain the actual test results, and the. text files will contain the section titles from the test report.
710
Deleting Reports
Note: Reports using the XLS format cannot be viewed with Microsoft Excel 2000.
Deleting Reports
Deleting a report will remove it from the system, and it will no longer be viewable from the system. To delete a report: 1. Select Test > Reporting from the menu bar. 2. Select the report to be deleted. 3. Click the Delete button. 4. Click the OK button when the confirmation window displays.
711
Deleting Reports
712
16 Tcl API
This section covers: About the Tcl API Tcl Commands and Syntax Overview Tcl Objects Connecting to the System Creating the Chassis Object Reserving Ports Administering the System Creating a Network Neighborhood Creating a Strike List Creating App Profiles Creating Super Flows Creating Load Profiles Creating Tests Viewing Test Results Creating a Test Component Creating a Multi-box Test Creating a Test Series Creating an RFC 2544 Test Creating a Session Sender Test Creating a Resiliency Score Creating a Server Resiliency Score Creating a Lawful Intercept Test Creating a Multicast Test Creating an LTE Test Tcl Stats Per Component
713
Supported Features
You can automate most of your device testing with the Tcl API. The tasks you can perform with the Tcl API include: Creating a connection object for the system Creating multiple test configurations Creating a Network Neighborhood Selecting a Network Neighborhood for a test context Selecting a DUT Profile Creating App Profiles and Super Flows Creating Strike List Creating Load Profiles Configuring test components Creating tests, test series, and multi-box tests Running tests, test series, and multi-box tests Importing tests Importing PCAP files Viewing, deleting, and exporting test reports Exporting packet buffers Mapping and reserving ports Rebooting the system Performing some administrative tasks such as creating and modifying user accounts, setting user preferences, retrieving build numbers and ATI Update versions, and performing factory and previous reversions on your system.
Unsupported Features
You will need to log into the Control Center to perform tasks that cannot be done through the Tcl interface. These tasks include: Creating DUT Profiles Importing CA certificates, client certificates, and private keys Importing files for URI messages/attachments in flows Importing and exporting Strike List Performing some administrative tasks such as setting the time zone.
714
To download the Tcl shell: 1. Open a Web browser. 2. Enter the IP address for the BreakingPoint Storm CTM in the Address bar and hit Enter. The BreakingPoint Systems Start Page will display. Note: By default, the IP address is http://10.10.10.10; however, this address may have been changed during the initial configuration. Please see your system administrator for the IP address. 3. Click the Download Tcl Shell link. A new browser window will display with links to the executable files. 4. Click one of the following links: Tcl Shell Windows Version Tcl Shell Linux Version Tcl Shell Mac OS X Version 5. Click the Save button. 6. Select the location to store the .exe file. 7. Click the Save button. Note: Double-click the executable file to open the Tcl interface.
For a few extensions (e.g., iTK) you may also have to set an environment variable. In this case, you will want to run the following:
lappend auto_path /System/Library/Tcl set env(ITK_LIBRARY) /System/Library/Tcl/itk3.3 package require Itk package require Iwidgets
If you have TCL extensions installed on UNIX, they are most likely located in /usr/lib/ or /usr/local/lib. You can do the same thing on UNIX or Windows using the correct path for your system.
715
The following lists the shared libraries required to run the BreakingPoint Tcl shell using Linux.
/lib32/libnss_files-2.11.1.so /lib32/libnsl-2.11.1.so/lib32/libc-2.11.1.so /usr/lib32/libgcc_s.so.1/lib32/libm-2.11.1.so /usr/lib32/libstdc++.so.6.0.13/lib32/libpthread-2.11.1.so /lib32/libdl-2.11.1.so/lib32/libutil-2.11.1.so /lib32/libnss_nis-2.11.1.so /lib32/libnss_compat-2.11.1.so/lib32/ld-2.11.1.so
Note: Version numbers and specific location will vary by distribution. Note: If the library you are using is installed on a 64-bit version of Linux, you will need to install and point to your 32-bit compatibility libraries in order to use the BreakingPoint Tcl shell.
716
Note: In previous versions of the BreakingPoint product, parsing command line arguments did not set the $argv argument appropriately. As a workaround, customers were required to strip the first argument of $argv before processing command line arguments. The BreakingPoint Storm CTM now sets the $argv appropriately when parsing command line arguments. You are no longer required to strip the first argument before parsing command line parameters. Manually stripping from $argv will cause the first command line argument to be lost. Note: Previous experience and knowledge of Tcl scripting is required for use of the Tcl interface. Table 16-1: Tcl Commands Command addAction flowID source actionType Description Adds an action to a Super Flow; this is a command of the Super Flow object. flowID should be replaced with the flow ID to which the action will be added; source should be replaced with either client or server; and the actionType should be replaced with the type of action that is being added (e.g., GET, PUT, POST, etc.). Adds a DHCP Client subnet to a domain, places one DHCP onto the subnet, and sets up clients on the subnet; this is a command of the Network Neighborhood object. Adds a domain to an interface; this is a command of the Network Neighborhood object. Adds an eNodeB client to the subnet you created using addENodeBClients; this is a command of the Network Neighborhood object. Adds an LTE eNodeB (Towers) subnet to a domain, places one eNodeB onto the subnet, and sets up clients on the subnet; this is a command of the Network Neighborhood object.
717
Table 16-1: Tcl Commands Command addFlow protocolType host1 host2 Description Adds a flow to a Super Flow; protocolType should be replaced with the protocol on which the flow will be based; host1 should be replaced with the host name that the flow will start from; and host2 should be replaced with the host name where the flow will end (e.g.,$var addFlow pop3 client server). This is a command of the Super Flow object. Adds a GTP GGSN (Gateway GPRS Support Node) client to a subnet; this is a command of the Network Neighborhood object. Adds a group to a Strike List; this is a command of the Strike List object. Adds a host to either the server or client interface. If the host will be on the client-side, then interface should be replaced with origin. If the host will be on the server-side, then interface should be replaced wit target. This is a command of the Super Flow object. Adds a range of host IP addresses availalbe on the network; this is a command of the Network Neighborhood object. Adds impairments to an interface; this is a command of the Network Neighborhood object.
718
Table 16-1: Tcl Commands Command addMatchAction actionID matchID actionMatchid source matchAction Description Adds a match to a Conditional Request. This is a command of the Super Flow object. The actionID represents the action to which you would like to add the Conditional Request; the matchID represents the sequence number at which the match will be added; the actionMatchID represents the sequence number at which the action match (string) will be added; the source can either be client or server; and the matchAction represents the action defined for the match. Adds an eNodeB/MME (Mobility Management Entity) subnet to a domain, places one MME onto the subnet, and sets up clients on the subnet; this is a command of the Network Neighborhood object. Adds a defined path for a subnet.
addPath sourceinterface sourcedomain sourcevlan destinterface destdomain destvlan addSGSN interface domain ?arg arg?
Adds a GTP SGSN (Service GPRS Support Node) client to a subnet; this is a command of the Network Neighborhood object. Adds a GTP SGSN (Service GPRS Support Node) subnet to a domain, places one SGSN onto the subnet, and sets up clients on the subnet; this is a command of the Network Neighborhood object. Adds an LTE SGW/PGW (Server Gateway/PDN Gateway) subnet to a domain, places one SGW onto the subnet, and sets up clients on the subnet; this is a command of the Network Neighborhood object. Adds a Strike to a group; this is a command of the Strike List object.
719
Table 16-1: Tcl Commands Command addSubnet interface domainName subnetName Description Adds a subnet to a domain; this is a command of the Network Neighborhood object. Adds a Super Flow to an App Profile and assigns it a weight; this is a command of the App Profile object. Adds a user to the system. You can also add a user to a group by using the -group attribute. Stores the aggregate statistics for a test in an object. Performs a backup to a USB or an external hard drive. Creates a connection object to the system. Used with the -progress attribute to show the progress of a test while it is executing. You must specify the channel in which the text should be output to; the most common channel is stdout. Cancels a test that has been running with the -async attribute. Retrieves the setting of an option. Clears the stored results of a test context. Sets the value for a parameter. Configures additional test contexts using initContext. Creates an App Profile. Creates a Strike List. Creates a test component. Creates an Evasion Profile Creates an LTE test. Creates a Lawful Intercept test.
aggStats objectName backup location fileName [bps::connect IPaddress user password] bps::textprogress outputChannel
cancel cget -option clearresults context? configure -option? value? configureContext contextName arg? arg? createAppProfile arg? arg? createStrikeList arg? arg? createComponent arg? arg? createEvasionProfile createLTETest arg? arg? createLawfulInterceptTest arg? arg?
720
Table 16-1: Tcl Commands Command createLoadProfile arg? arg? createMultiboxTest arg? arg? createMulticastTest arg? arg? createNeighborhood arg? arg? createRFC2544Test arg? arg? createResiliencyTest arg? arg? createServerResiliencyTest arg? arg? createSessionLabTest ?arg arg? createStrikeList arg? arg? createSuperflow arg? arg? createTest arg? arg? createTestSeries arg? arg? delete deleteAppProfile arg? arg? deleteAttackSeries arg? arg? deleteContext contextName deleteEvasionProfile arg? arg? deleteLoadProfile loadProfileName deleteMultiboxTest testName deleteNeighborhood neighborhoodName deleteStrikeList arg? arg? deleteSuperFlow superflowName deleteTest testName Description Creates a Load Profile. Creates a multi-box test. Creates a Multicast test Creates a Network Neighborhood. Creates the RFC2544 Test. Creates a Resiliency Score Test. Creates a Server Resiliency Score Test. Creates a Session Sender Lab test. Creates a Strike List. Creates a Super Flow. Creates a test. Creates a test series. Deletes the connection. Removes an App Profile from the system. Removes a Strike List from the system. Removes a context from the script. Removes an Evasion Profile from the system. Removes a Load Profile from the system. Removes a multibox test from the system. Removes a Network Neighborhood from the system. Removes a Strike List from the system. Removes a Super Flow from the system. Removes a test from the system.
721
Table 16-1: Tcl Commands Command deleteTestResults arg? arg? deleteTestSeries testseriesName domainNames interface Description Removes test results from the system. Removes a test series from the system. Lists the domain names for an interface; this is a command of the Network Neighborhood object. Exports the report in PDF, XLS, ZIP, or HTML. Exports the packet buffer for the listed slot(s)/port(s) to the specified location. You can indicate the direction of the traffic you want exported by specifying both, tx, or rx. Specifying both will export both transmitted and received traffic, whereas tx will export only transmitted traffic, and rx will export only received traffic. Reverts the system back to factory settings. Returns a list of actions that can be used for a specific flow. This command is part of the Super Flow object. Returns a list of Action Parameters that are available for an action. This command is part of the Super Flow object, and you must specify the action ID to view the Action Parameters. Returns a list of actions that are used within a Super Flow; this is a command of the Super Flow object. Returns the values stored in the object created using the aggStats command. Returns the systems build number. Creates the chassis object.
getActionParameters actionID
getActions
getAggStats objectName
getBuildId getChassis
722
Table 16-1: Tcl Commands Command getComponents getDHCPServer interface domain ?innervlan? ?outervlan? getDut context getFilters getFlows Description Returns a list of logical name/object pairs for the components in the test. Adds a DHCP server to a domain; this is a command of the Network Neighborhood object. Returns the DUT Profile used for the test context. Returns a list of the filter used in your test. Returns a list of flows that are in a Super Flow; this is a command of the Super Flow object. Returns a list of protocol parameters for a specific flow (e.g., http, pop3, dns). Returns a list of Evasion Settings that are in the Strike List; this is a command of the Strike List object. Returns a list of available hosts for a Super Flow; this is a command of the Super Flow object. Returns a list of impairments for an interface; this is a command of the Network Neighborhood object. Returns the Action Parameters that are available for a Match Action. This is a command of the Super Flow object. Returns the Network Neighborhood used for the test context. Retrieves a defined path of a subnet. Returns the information for each port on the BreakingPoint Storm CTM; this includes the ports media type, active group, speed, autonegotiation settings, state, port note, MTU, duplex type, link status, user reservation, and blade model; this is a command of the chassis object.
getFlowParameters flowName
getGroups
getHosts
getImpairments
723
Table 16-1: Tcl Commands Command getStrikeInfo strikeName getStrikepackId getSubnets interface name getSystemGlobal varName getSystemType getTest context getVersion getVlanEtherType interface Description Returns the information for a specific Strike. Returns the ATI Update version. Returns the information for a specific subnet. Sets a global variable. Returns the system type. Returns a list of systems and the tests running on them. Returns the system version (e.g., 1.2.1) Lists the VLAN Ethertype for the interface; this is a command of the Network Neighborhood object. Returns the management IP address for the system. Import an existing PCAP file into the system. Import an existing test into the system. Creates a test context. Installs an ATI Update on the system. Installs an update on the system. Lists the App Profiles that are available. Lists the Strike List that are available. Lists the Evasion Settings that are available. Lists backup files Lists the Evasion Profiles that are available.
host importPcap name arg? arg? importTest testName? arg? arg? initContext contextName arg? arg? installStrikepack -file location installUpdate -url address listAppProfiles arg? arg? listAttackSeries arg? arg? listAttackProfiles arg? arg? listBackups arg? arg? listEvasionProfiles arg? arg?
724
Table 16-1: Tcl Commands Command listDUTs arg? arg? listLoadProfiles arg? arg? listNeighborhoods arg? arg? listProtocols arg? arg? listStrikeKeywords arg? arg? listStrikes arg? arg? listSuperflows arg? arg? listTestResults arg? arg? modifyFlow flowName Description Lists the DUT Profiles that are available. Lists the Load Profiles that are available. Lists the Network Neighborhoods that are available. Lists the protocols that are available. Lists the Strike keywords that are available. Lists the Strikes that are available. Lists the Super Flows that are available. Lists test results and user ID from the system. Modifies a specific flow in a Super Flow; this command allows you to change the hosts specified for the flow and modify the protocol parameters for the flow. Use the attributes -to and -from the modify the hosts for the flow (e.g., $var modifyFlow 1 -from Server -to Client). Modifies an existing group. Use the newid attribute to rename the group. This is a command of the Strike List object. Modifies the host. Use the -iface and -name attributes to change the interface or change the name (e.g., modifyHost DNS -iface target name dnsServer).
modifyHost hostName
725
Table 16-1: Tcl Commands Command modifyMatchAction actionID matchID matchActionID matchAction Description Modifes the existing settings for a match. This is a command of the Super Flow object. The actionID represents the action to which you would like to add the Conditional Request; the matchID represents the sequence number at which the match will be added; the actionMatchID represents the sequence number at which the action match (string) will be added; the source can either be client or server; and the matchAction represents the action defined for the match. Reverts the system back to the previous build. Reboots the system. Removes the DHCP clients from the interface; this is a command of the Network Neighborhood object. Removes the domain from the interface; this is a command of the Network Neighborhood object. When an interface is deleted, the system will automatically resequence the interfaces. The succeeding interfaces (following the deleted interface) will be renumbered to the preceding interfaces value (e.g., 6 will become 5). Removes an LTE eNodeB (Towers) client from a subnet; this is a command of the Network Neighborhood object. Removes an eNodeB subnet from the domain; this is a command of the Network Neighborhood object. Removes a packet filter from your test.
previousRevert reboot removeDHCPClients interface domain ?innervlan? ?outervlan? removeDomain interface domainName
726
Table 16-1: Tcl Commands Command removeFlow flowName Description Removes a flow from a Super Flow; this is a command of the Super Flow object. Removes a GTP GGSN (Service GPRS Support Node) client from a subnet; this is a command of the Network Neighborhood object. Removes a range of host IP addresses from the network; this is a command of the Network Neighborhood object. Removes impairments from an interface; this is a command of the Network Neighborhood object. Removes an action from a match. Removes an LTE eNodeB/MME (Mobility Management Entity) subnet from a domain; this is a command of the Network Neighborhood object. Removes a defined path of a subnet.
removeImpairment interface
removePath sourceinterface sourcedomain sourcevlan destinterface destdomain destvlan removeSGSN interface domain ?arg arg?
Removes a GTP SGSN (Service GPRS Support Node) client from a subnet; this is a command of the Network Neighborhood object. Removes a GTP SGSN (Service GPRS Support Node) subnet from a domain; this is a command of the Network Neighborhood object. Removes an LTE SGW/PGW (Server Gateway/PDN Gateway) subnet from a domain; this is a command of the Network Neighborhood object. Removes a Strike from an Evasion Setting; this is a command of the Strike List object.
727
Table 16-1: Tcl Commands Command removeSubnet interface name ?innervlan? ?outervlan? removeSuperflow superflowName reservePort $slot $port restoreBackup arg? arg? resultId context? run arg? arg? save arg? arg? searchStrikes arg? arg? searchStrikeLists arg? arg? setDHCPServer interface domain ?arg arg? setDut name context? setFilter interface ?arg arg? setNeighborhood neighborhoodName context? setPortOrder $slot $port Description Removes the subnet from a domain. Removes a Super Flow from an App Profile. Reserves the specified slot/port. This is a command of the chassis object. Restores backup file Returns the variable. Runs the test. Saves the current test. Searches the available Strikes. Searches the available Strike Lists. Sets the DHCP server for a test context. Sets the DUT Profile for a test context. Sets up the filter to be used in your test. Sets a Network Neighborhood for a test context. Enables you to arrange the order of the ports. This is a command of the chassis object. Sets the Ethertype for the interface; this is a command of the Network Neighborhood object. Values can be 0x88a8, 0x8100, 0x9100, 0x9200, and 0x9300. Unreserves the specified slot and port. This is a command of the chassis object. Reverts the match action to its default configuration. Reverts the protocol parameter back to its default value.
728
Table 16-1: Tcl Commands Command wait Description Waits for that test to complete before continuing execution. This command is typically used after running a test that uses the -async attribute. Sets whether the weight of a Super Flow determines its proportion in the traffic by flow count, or by bandwidth.
weightType
Optional Arguments
Some Tcl commands have optional attributes that can run with some commands. Table 16-2 on page 729 details these options. Table 16-2: Optional Arguments Optional Arguments -allowMalware Description Allows you to bypass the Malware error message and run a test. This is an atribute to the run command for tests, test labs, test series, and multibox tests. Specified as an attribute to the run command. This attribute runs the test in the background, and executes the command spec. Specified as an attribute of the listTestResults command. Identifies the type of test results to list. Accepted values include single, resiliency, series, or multi. Accepts a list of IPs to add to MME and eNodeB clients. Specified as an attribute to any command that creates or modifies an object (e.g., addGroup, modifyGroup). This attribute allows you to force the system to override the existing object. If you do not specify true or false after the statement, the system will automatically assume that the value is true. Provides the ability to access flow exceptions during test runs. Used with the save or configure command to name or rename an item (e.g., App Profile, Super Flow, test context, etc.).
-async value
-class
729
Table 16-2: Optional Arguments Optional Arguments -newid newGroupName Description Specified as an attribute to the modifyGroup command. This attribute allows you to rename the Evasion Setting. Specified as an attribute to the test context. This attribute allows you to select what happens to after a script completes. The most common value used here is exit. Specified as an attribute to the run command. This attribute lets you specify a TCL script that will be called periodically while the test runs. The test name and a percentage of completion will be appended to the script you provide via the 'concat' command. The default value is the empty string, which means that no command will run to show the test progress. -rtstats -file location Specifies a callback to update your charts with Real-Time statistics. Specified as an attribute to the installStrikepack command. This references the location of the ATI update file. Specified as an attribute to the Network Neighborhood object. Specifies the Mobile Country Code of the device to be tested. Specified as an attribute to the Network Neighborhood object. Specifies the Mobile Network Code of the device to be tested. Specified as an attribute to the chassis object. This calls this attributes callback when someone reserves or unreserves a port. Specified as an attribute to the chassis object.This calls this attributes callback when there is a change in the systems state. You will most likely see this when a blade is offline. Specified as an attribute to the chassis object.This calls this attributes callback when a link on an interface goes up or down.
-onclose value
-progress value
-mcc
-mnc
-onreserve
-onstate
-onlink
730
Tcl Objects
Table 16-2: Optional Arguments Optional Arguments -operator_variant Description Specified as an attribute to the Network Neighborhood object. Specifies a unique value originally assigned by the UE manufacturer. The operator variant is usually unique to each brand of UE. Specified as an attribute to the Network Neighborhood object. The -qci_labels attribute retrieves the qci information for eNodeB and MME clients. Specified as an attribute to the Network Neighborhood object. Specifies the unique identifying number of each UE. Specified as an attribute to the Network Neighborhood object. Enables or disables the tunneling of SCTP over UDP. Specified as an attribute to the Network Neighborhood object. Specified as an attribute to the test context.This attribute enables or disables the test component shortcuts. If enabled, this allows you to use the default test components. The value for this attribute is set to true by default. -url location Specified as an attribute to the installUpdate command. This references the location of the OS update file.
-qci_labels
-secret_key
-sctp_over_udp
Tcl Objects
For most tasks in the Control Center, you will need to create an object for them. The object provides access to a subset of commands, specific to the object that was created. The following tasks will require an object: Creating a chassis object Creating a connection to the system Creating a Network Neighborhood Creating an App Profile Creating Super Flows Creating an Attack Plan Creating a Strike List Creating a Load Profile
731
Creating a Test Creating a Test Series Creating a Multi-box Test Creating a Test Component Returning test results
Deleting Objects
Once you are done with an object, you should remove the object from the system. Before deleting the object from the system, verify that you have saved all the necessary components created from the object such as tests, test series, multi-box tests, Load Profiles, etc.
Syntax
Use the following syntax to delete an object from the system. itcl::delete object objectName
Example
itcl::delete object SS1; #deletes the SS1 object
Syntax
Use the following syntax to connect to the system:
set var [bps::connect host username password -option arg?]
Table 16-3 on page 732 breaks down the elements of connecting to the system. Table 16-3: Connecting to the System Element var bps::connect Description Sets the variable name for the connection The command for creating a connection
732
Table 16-3: Connecting to the System Element host username password Description The management IP address for the system User account login ID User account password
Example
The following example creates a simple connection object to 10.10.10.10.
set bps [bps::connect 10.10.10.10 john passwd -onclose exit -name test1 -shortcuts true]
733
See Table 16-5 on page 734 for a list of attributes and commands available for the chassis object. Table 16-5: Attributes for the Chassis Object Attributes/Command getChassis getState $slot $port Description Creates the chassis object (set chassisObject [$connectionObject getChassis]) . Returns the information for each port on the BreakingPoint Storm CTM; this includes the ports media type, active group, speed, auto-negotiation settings, state, port note, MTU, duplex type, link status, user reservation, and blade model. You can use this command by itself ($chassisObject getState) to return information for all ports on the blade, or you can narrow the results by specifying a slot and port ($chassisObject getState 1 2). Reserves the specified slot and port ($chassisObject reservePort 1 0). Unreserves the specified slot and port ($chassisObject unreservePort 1 0). Sets the order of the ports ($chassisObject setPortOrder 1 0 1 1 1 2 1 3). This command can only be used for ports that have existing reservations. Exports the packet buffer to a specified directory location ($chassisObject exportPacketTrace -progress {bps::textprogress stdout} /tmp 1 0 tx 1 0 rx). Calls the -onstate callback when there is a change in the systems state. Calls the-onreserve callback when someone reserves or unreserves a port. Calls the -online callback when a link on an interface goes up or down.
exportPacktTrace
Syntax
Use the following syntax to create a connection to the system and to create a chassis object: set var [bps::connect host username password -option arg?] set chassisObjectName [$var getChassis]
734
Reserving Ports
Example
This example creates callbacks and a chassis object. The callbacks will be returned if port reservations, link statuses, or the system state are changed during the course of the test.
{{{ # the callback for a state change should accept these arguments proc reportStateChange {slot port state} { puts "slot $slot, port $port is now in state $state" } # the callback for a port reservation should accept these arguments proc reportReservation {slot port reservedBy group} { if {$reservedBy == ""} { puts "slot $slot, port $port has been unreserved" return } puts "slot $slot, port $port is reserved by $reservedBy in group $group" } # the callback for a link change should accept these arguments proc reportLink {slot port link media speed duplex} { puts "link is now $link on slot $slot, port $port" if {$media != ""} { puts "using $media at speed=$speed, duplex=$duplex" } } set c1 [$bps getChassis -onreserve reportReservation \ -onstate reportStateChange \ -onlink reportLink] $c1 reservePort 1 0 -group 1 $c1 reservePort 2 1 -group 2 $c1 unreservePort 2 1 $c1 getState $c1 configurePort 0 0 -auto false -speed 100 -fullduplex false -mtu 12 }}}
Reserving Ports
The chassis object has a command called reservePort that enables you to reserve ports on the BreakingPoint Storm CTM.
735
Unreserving Ports
Syntax
Use the following syntax to reserve ports on the BreakingPoint Storm CTM:
$chassisObject reservePort $slotNumber $portNumber
Example
The following example reserves ports 0 and 1 on slot 1.
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 reservePort 1 0; #reserves ports 0 on slot 1 $c1 reservePort 1 1; #reserves ports 1 on slot 1
Unreserving Ports
The chassis object has a command called unreservePort that enables you to unreserve ports on the BreakingPoint Storm CTM.
Syntax
Use the following syntax to unreserve ports on the BreakingPoint Storm CTM:
$chassisObject unreservePort $slotNumber $portNumber
Example
The following example unreserves port 0 on slot 1.
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 unreservePort 1 0; #unreserves port 0 on slot 1
736
Re-Ordering Ports
Syntax
Use the following syntax to view the availability of the resources of the BreakingPoint Storm CTM.
$chassisObject getResourceAllocation $slotNumber $portNumber
Example
The following example displays the availability of the resources of the BreakingPoint Storm CTM.
set c [$bps getChassis]; # takes a slot as an argument $c getResourceAllocation 1 0 $c reservePort 1 2 $c getResourceAllocation 1 25 $c reservePort 1 3 $c getResourceAllocation 1 50; # also takes an optional group specification $c getResourceAllocation 1 -group 2 $c reservePort 1 0 -group 2 $c getResourceAllocation 1 -group 2 25 $c reservePort 1 1 -group 2 $c getResourceAllocation 1 -group 2 50
Re-Ordering Ports
The chassis object has a command called setPortOrder that enables you to set the order of the ports on the BreakingPoint Storm CTM. When you reserve ports, the system automatically maps the ports to interfaces based on the order in which you reserved the ports. Therefore, this command enables you to change that order. Note: You can only re-order ports for which you have port reservations.
737
Syntax
Use the following syntax to order the ports on the BreakingPoint Storm CTM:
$chassisObject setPortOrder $slotNumber1 $portNumber1 $slotNumber2 $portNumber2 $slotNumber3 $portNumber3 will make $slotNumber1/ $portNumber1 become interface 1 of the group, $slotNumber2/ $portNumber2 become interface 2 of the group, $slotNumber3/ $portNumber3 become interface 3 of the group
Example
The following example reorders the ports.
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 reservePort 1 0; #reserves port 0 on slot 1 $c1 reservePort 1 1; #reserves port 1 on slot 1 $c1 reservePort 1 2; #reserves port 2 on slot 1 $c1 reservePort 1 3; #reserves port 3 slot 1 $c1 setPortOrder 1 0 1 1 1 2 1 3; #reorders the port mappings
738
Syntax
Use the following syntax to export the packet trace for a slot/port on the BreakingPoint Storm CTM:
$chassisObject exportPacketTrace directory? options? $slot $port $direction
See Table 16-6 on page 739 for available options for the exportPacketTrace command. Table 16-6: Available Options for exportPacetTrace Option -async Description Specified as an attribute to the run command. This attribute runs the test in the background, and executes the command specified. Returns the data in Zipped (.gz) compressed pcap format when set to true Specified as an attribute to any command that creates or modifies an object (e.g., addGroup, modifyGroup). This attribute allows you to force the system to override the existing object. If you do not specify true or false after the statement, the system will automatically assume that the value is true. Prints the list of commands with descriptions Specified as an attribute to the run command. This attribute lets you specify a TCL script that will be called periodically while the test runs. The test name and a percentage of completion will be appended to the script you provide via the 'concat' command. The default value is the empty string, which means that no command will run to show the test progress. BPF filter string to limit the data returned for received packets Truncates received packets larger than specified length Specifies the size value of the data to be returned Specifies the size value of the export {megabytes, frames} Designates a starting point for the export Specifies the start value of the export {megabytes, packets} BPF filter string to limit the data returned for transmitted packets
-compress -force
-help -progress
739
Table 16-6: Available Options for exportPacetTrace Option -txsnaplen ? Description Truncates transmitted packets larger than specified length Prints the list of commands with descriptions
Example
The following example exports packet traces from slot 1/port 0, slot 1/port1, and slot 1/port 2.
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 reservePort 1 0; #reserves port 0 on slot 1 $c1 reservePort 1 1; #reserves port 1 on slot 1 $c1 reservePort 1 2; #reserves port 2 on slot 1 $c1 reservePort 1 3; #reserves port 3 slot 1 $c1 exportPacketTrace /tmp 1 0 both; # exports the transmitted and received traffic from the packet buffer on slot 1/port 0 $c1 exportPacketTrace /tmp 1 1 rx; # exports the received traffic from the packet buffer on slot 1/port 1 $c1 exportPacketTrace /tmp 1 2 tx; # exports the transmitted traffic from the packet buffer on slot 1/port 2 $cl exportPacketTrace /tmp -compress true 1 0 both; # returns the data in a compressed pcap file on slot 1/port 0 $cl exportPacketTrace /tmp -compress false 1 0 both; # returns the data in an uncompressed pcap file on slot 1/port 0 $cl exportPacketTrace /tmp -txsnaplen 60 -rxsnaplen 60 1 0 both; # truncates transmitted and received packets that are larger than 60 bytes on slot 1/port 0 $cl exportPacketTrace /tmp -txfilter host 10.1.0.254 1 0 both; # limits the data transmitted to packets returned from specified host on slot 1/port 0 $cl exportPacketTrace /tmp -rxfilter host 10.1.0.254 1 0 both; # limits the data received to packets returned from specified host on slot 1/port 0 $cl exportPacketTrace /tmp -starttype frames -start 1000 -size 3000 1 0 both; # specifies the point and size at which to start capture on slot 1/port 0 proc showProgress { slot interface progressPercentage } { puts $slot $interface $ progressPercentage } $cl exportPacketTrace /tmp -progress showProgress 1 0 both; # shows progress of the capture on slot 1/port 0 proc notifyMeWhenDone {args}{puts I finished!!! $args} $cl exportPacketTrace /tmp -async notifyMeWhenDone 1 0 both; # runs a given script when the export is complete
740
Syntax
Use the following syntax to import a PCAP file from a file location:
$bps importPcap <filename> -file /location/name.pcap -force
Use the following syntax to import a PCAP and force it to overwrite an existing PCAP with the same name. You can set the -force attribute to true to overwrite an existing file, or set it to false if you do not want to overwrite an existing file.
$bps importPcap <filename> -file /location/name.pcap -force true progress "bps::textprogress stdout"
Table 16-7 breaks down the elements of importing a PCAP. Table 16-7: Importing a PCAP Option -file value -url value -force false Description References the name of the update file. References the location of the update file. Allows you to force the system to override the existing object. If you do not specify true or false after the statement, the system will automatically assume that the value is true. BPF formatted filter to apply when importing. Only packets that match the filter will be imported into our internal file format. Designate a size for the export. Only packets that are under this limit will be imported into our internal file format. The export size can be limited by the number of frames or megabytes. The type size limit given in megabytes or frames. The script to run with progress notifications.
741
Example
The following example imports a file called httptraffic.pcap from the temp location. set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts
true]; #creates the connection object $var importPcap httptraffic -file /temp/httptraffic.pcap -force; #imports httptraffic.pcap and overwrites any file with that same name
Example
% $bps installUpdate -slot2 -file /home/kraney/workspace/distro/ packages/updates/update-66329-79167.bps; # Updates firmware on slot 2. If no slot is specified, the system defaults to slot 0.
742
Performing a Backup
Performing a Backup
You can use the backup command to perform a backup of system files. You can backup files to a USB or external hard drive, or to an NFS-based network drive. Note: A system backup may take a long time to execute. Note: BreakingPoint does not support backing up to FAT or NTFS-formatted drives. The drive that you use for your backup must support long file names. BreakingPoint recommends using drives that are FAT32- or EXT3-formatted. Also, the first partition on the drive must be one of our supported file system types. If presented with the option of selecting GUID, Apple, BSD, or Master Boot Record (MBR) as the partition table type, select MBR.
Syntax
Use the following syntax to backup files to a USB or external hard drive.
$connectionObject backup -useExternal
Syntax
Use the following syntax to backup files to an NFS-based partition at a specific IP address.
$connectionObject backup -nfsIP value
Syntax
Use the following syntax to backup files to an NFS-based network drive.
$connectionObject backup -nfsPath value
Table 16-8 breaks down the elements of performing a system backup. Table 16-8: Backing Up System Files Element connectionObject backup -useExternal -nfsIP Description The object created for the connection. The command to create a backup of the files. Backs up files to a USB or an external hard drive. Backs up files to an NFS-based partition located at a given IP address.
743
Table 16-8: Backing Up System Files Element -nfsPath value Description Backs up files to an NFS-based partition located at a given path. The name of the files being backed up.
Syntax
Use the following syntax to list available system backup files on a USB or external hard drive.
$connectionObject listBackups -useExternal
Syntax
Use the following syntax to list available system backup files on an NFS-based partition at a specific IP address.
$connectionObject listBackups -nfsIP value
Syntax
Use the following syntax to list available system backup files on an NFS-based network drive.
$connectionObject listBackups -nfsPath value
744
Syntax
Use the following syntax to restore backup files located on a USB or external hard drive.
$connectionObject restoreBackup -useExternal
Syntax
Use the following syntax to restore backup files located on an NFS-based partition at a specific IP address.
$connectionObject restoreBackup -nfsIP value
Syntax
Use the following syntax to restore backup files located on an NFS-based network drive.
$connectionObject restoreBackup -nfsPath value
745
Syntax
Use the following syntax to view a list of available Network Neighborhoods; this includes all canned and custom Network Neighborhoods.
$connectionObject listNeighborhoods
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object $var listNeighborhoods; #returns a list of all the Network Neighborhoods stored on the system $var listNeighborhoods -userid admin; #returns a list of all Network Neighborhoods created by the admin $var listNeighborhoods -class canned; #returns a list of all default Network Neighborhoods $var listNeighborhoods -timeunit day -timeinterval 2; #returns a list of all Network Neighborhoods created two days ago
746
Syntax
Use the following syntax to create a Network Neighborhood:
set networkObject [$connectionObject createNeighborhood -template existingNeighborhood -name networkName]
Table 16-11 on page 747 breaks down the elements of creating a Network Neighborhood. Table 16-11: Creating a Network Neighborhood Element networkObject createNeighborhood -template existingNeighborhood -name networkName Description A name for the network client object. The command to create a Network Neighborhood. An attribute that allows you to use an existing Network Neighborhood as a template. The name of the Network Neighborhood that you would like to use as a template. An attribute that lets you set the name of the new Network Neighborhood. The name of the Network Neighborhood you are creating.
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set network1 [$var createNeighborhood -template BreakingPoint Switching -name neighborhoodA]; #creates a Network Neighborhood object called network1 and a network neighborhood called neighborhoodA
747
Syntax
Use the following syntax to create an IPv6 Network Neighborhood:
set networkObject [$connectionObject createNeighborhood -template existingNeighborhood -name networkName]
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set nn [$var createNeighborhood ] $nn addDomain 1 default dict dict dict dict dict dict dict dict dict dict set set set set set set set set set set subnet1 subnet1 subnet1 subnet1 subnet1 subnet1 subnet1 subnet1 subnet1 subnet1 netaddr fde0:6477:1e3f:: behind_snapt false type router ip_v 6 ranges {fde0:6477:1e3f::1:1 fde0:6477:1e3f::1:ff} innervlan {} outervlan {} netmask 64 l2 02:1a:c5:01:00:00 router_ip fde0:6477:1e3f::1:0
Syntax
Use the following syntax to add a domain to the Network Neighborhood:
$networkObject addDomain interface domainName
748
Table 16-12 on page 749 breaks down the elements of adding a domain to a Network Neighborhood. Table 16-12: Adding a Domain Element networkObject addDomain interface Description The network client object you created for the Network Neighborhood Adds a domain to the Network Neighborhood Specifies the interface to which the domain will be added; the interface specified will be implicitly created if it does not exist A name for the domain
domainName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set network1 [$var createNeighborhood -template BreakingPoint Switching -name neighborhoodA]; #creates a Network Neighborhood object called network1 and a network neighborhood called neighborhoodA $network1 addDomain 1 domainA; #adds a domain called domainA to interface 1
Syntax
Use the following syntax to add a subnet to a domain. This syntax can be used to create a doman that assigns a MAC address to each host address. This is equivalent to enabling the Host option in the Network Neighborhood.
$networkObject addSubnet interface domainName { netaddr x.x.x.x netmask x gateway x.x.x.x behind_snapt value ranges { {hosts x.x.x.x x.x.x.x xx:xx:xx:xx:xx:xx} } innervlan n outervlan n }
749
Use the following syntax to add a subnet to a domain. This syntax can be used to create a domain that uses one MAC address for all host address. This is equivalent to enabling the Virtual Router option in the Network Neighborhood. If you want to have one IP address for the domain, use the same address for the minimum and maximum IP addresses. For example, if you only want all traffic from the domain to be 1.0.1.3, use the syntax: ranges {{router 1.0.1.3 1.0.1.3 00:00:03:00:00:00}}.
$networkObject addSubnet interface domainName { netaddr x.x.x.x netmask x gateway x.x.x.x behind_snapt value ranges { {router x.x.x.x x.x.x.x xx:xx:xx:xx:xx:xx x.x.x.x} } innervlan n outervlan n }
Table 16-13 on page 750 breaks down the elements of adding a subnet to a domain. Table 16-13: Adding a Subnet Element networkObject addSubnet interface domainName netaddr x.x.x.x netmask n gateway x.x.x.x behind_snapt value Description The object created for the Network Neighborhood. A command that adds a subnet to the specified domain. The interface on which the domain you are adding the subnet to is found. The name of the domain The base network address The netmask for the network address The gateway address Enables or disables Network Address Translation. The value for this attribute can either be true or false. The range of addresses that will be used for host addressing. Sets the host type as hosts. This enables you to use one MAC address for each host address. The first set of IP addresses (x.x.x.x) represents the range of IP addresses for the subnet, and the second address (xx:xx:xx:xx:xx:xx) represent the base MAC address.
750
Table 16-13: Adding a Subnet Element router {x.x.x.x x.x.x.x xx:xx:xx:xx:xx:xx x.x.x.x} Description Sets the host type as virtual router. This enables you to use one MAC address for all host addresses. The first set of IP addresses (x.x.x.x) represent the range of IP addresses for the subnet; the second address (xx:xx:xx:xx:xx:xx) represent the base MAC address; and the last IP address (x.x.x.x) represents the virtual routers address. The inner VLAN ID The outer VLAN ID
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set network1 [$var createNeighborhood -template BreakingPoint Switching -name neighborhoodA]; #creates a Network Neighborhood object called network1 and a network neighbhorhood called neighborhoodA $network1 addDomain 1 domainA; #adds a domain called domainA to interface 1 $network1 addSubnet 1 domainA { netaddr 1.0.1.0 netmask 16 gateway 1.0.0.1 behind_snapt false ranges { {hosts 1.0.1.1 1.0.1.254 00:00:01:00:00:00} } innervlan 4} #creates a n
Syntax
Use the following syntax to add a defined path for a subnet to a domain.
set n [$bps createNeighborhood] $n addPath 1 default "" 2 default "" $n removePath 1 default "" 2 default ""
751
Example
$networkObject addDomain interface domainName
Syntax
Use the following syntax to save the Network Neighborhood:
$networkObject save
752
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set network1 [$var createNeighborhood -template BreakingPoint Switching -name neighborhoodA]; #creates a Network Neighborhood object called network1 and a network neighbhorhood called neighborhoodA $network1 addDomain 1 domainA; #adds a domain called domainA to interface 1 $network1 addSubnet 1 domainA { netaddr 1.0.1.0 netmask 16 gateway 1.0.0.1 behind_snapt false ranges { {hosts 1.0.1.1 1.0.1.254 00:00:01:00:00:00} } innervlan 4} #creates a n $network1 save; #saves the network neighborhood $var setNeighborhood neighborhoodA; #sets the network neighborhood to neighborhood A
Syntax
Use the following syntax to view a list of available DUT Profiles; this includes all canned and custom DUT Profiles.
$connectionObject listDUTs
753
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object $var listDUTs; #returns a list of all the DUT Profiles stored on the system $var listDUTs -userid admin; #returns a list of all DUT Profiles created by the admin $var listDUTs -class canned; #returns a list of all default DUT Profiles $var listDUTs -timeunit day -timeinterval 2; #returns a list of all DUT Profiles created two days ago $var listDUTs -limit 3 -offset 10 admin; #returns a list of no more than 3 DUT Profiles
Syntax
Use the following syntax to view a list of available Strike List; this includes all canned and custom Strike List.
$connectionObject listAttackSeries
754
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object $var listAttackSeries; #returns a list of all the Strike List stored on the system $var listAttackSeries -userid admin; #returns a list of all Strike List created by the admin $var listAttackSeries -class canned; #returns a list of all default Strike List $var listAttackSeries -timeunit day -timeinterval 2; #returns a list of all Strike List created two days ago
Syntax
Use the following syntax to create a Strike List based on a template. set attackSeriesObjectName [$connectionObject createStrikeList -template {AttackSeriesName} -name attackSeriesName
755
Use the following syntax to create an empty Strike List. set attackSeriesObjectName [$connectionObject createStrikeList -name attackSeriesName]
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createStrikeList -name zeroAttacks]; #creates an empty Strike List called zeroAttacks and a Strike List object called x set y [$var createStrikeList -template {FTP Strikes} -name allFTP; #creates a Strike List called allFTP using FTP Strikes as a template $x save; #saves the Strike List for this object $$y save; #saves the Strike List for this object
Syntax
$attackSeriesObjectName configure -name newAttackSeriesName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createStrikeList -name zeroAttacks]; #creates an empty Strike List called zeroAttacks $x configure -name noAttacks; #renames zeroAttacks to noAttacks $x save; #saves the Strike List$
756
Syntax
Use the following syntax to list the Evasion Settings that are in a Strike List. By default, the Strike List will always have at least one Evasion Setting called Strikes.
$attackSeriesObjectName getGroups
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createStrikeList -name zeroAttacks]; #creates an empty Strike List called zeroAttacks $x getGroups; #returns a list of Evasion Settings that are contained within the Strike List object
Syntax
Use the following syntax to add an Evasion Setting to a Strike List.
$attackSeriesObjectName addGroup groupName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createStrikeList -name zeroAttacks]; #creates an empty Strike List called zeroAttacks $x addGroup group1; #adds an Evasion Setting named group1 to the Strike List.
757
Syntax
Use the following syntax to rename an Evasion Setting.
$attackSeriesObjectName modifyGroup groupName -newid newGroupName -
force true
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createStrikeList -name zeroAttacks]; #creates an empty Strike List called zeroAttacks $x addGroup group1; #adds a group called group1 to the Strike List $x modifyGroup group1 -newid firstGroup; #renames the Evasion Setting to firstGroup
758
Table 16-14, Query Strings, contains some of the query strings that can be used to search for specific types of strikes contained in your tests. Enter these query strings to narrow your search. Table 16-14: Query Strings Query Type runid Description Lists strikes that were blocked, errored, or allowed in the specified test. Lists specified strikes contained in the test that include the specifed protocol. Lists strikes that contain the keyword you specify. Lists strikes that contain the directionality (c2s meaning client to server, s2c meaning server to client, etc.) that you specify. Lists strikes that contain the details that you specify. Lists strikes that belong to the category that you specify. Lists strikes that contain the details that you specify. Query String runid:Blocked:internal ID runid:Errored:internal ID runid:Allowed:internal ID* protocol:protocol protocol:http Example runid:Blocked:684
protocol
keyword
keyword:keyword
keyword:ms_2010-07
direction
direction:direction
direction:c2s
name
name:name
name:ActiveX
category
category:category
categoryid
categoryid:categoryid
759
Table 16-14: Query Strings Query Type pathid Description Lists strikes included in the path that you specify. List strikes that contain the reference id number that you specify. Lists strikes associated with the test name that you specify. Query String pathid:path Example pathid:/strikes/denial/ browser/ aol_activex_cookie.x ml reftype:BPS 20100001
reftype
reftype:reference id number
modelname
modelname:test name
modelname:0-sc
* The internal ID can be found at the end of the test report URL.
Keywords
The following list contains all the keywords that you can use to search for Strikes.
0day 1-2-all 2003 3270_mapper 3cdaemon 427bb acal acrobat active_calendar activecampaign activeperl activex activity adminid adnforum adodb empire epolicy escapeshellcmd etherif etherif2 etherstatd event excel exchange exodesk extremeware fcring fin firefox flash flashgamescript macromedia mail.app mailenable mailman mailslot mambo maxdb mazewars mdcommd mdimportserver mdropper mediaplayer mediawiki membremananger memory_corruption mercury pict ping pls png pnp poc pollmentor pop3 poptop popup portscan ppt pptp prescan print printer tfsd tftp thewebforum thunderbird tinyphp tippingpoint tlbinfo tns tomcat top_auction torrent torture traffic traversal trojan tsep
760
ajdating alis altn amiaux amiserv amp ani animatemotion antivirus apache apple apr_psprintf arcserve asf asn1 asp assetman asterisk au auth_bypass auth_ldap autofsd avi awstats axfr axigen b-net backslash backup badblue bakbone benders_calendar bgp bit5blog
flexbb flip4mac fnsypd fopen format_string formatstring foro_domus foxpro fp30reg frame freeftpd frontpage ftp gadget gallery gdi gdi+ geoblog gestart gnuturk grandstream groupwise gssd heap heap_coruption hexamail hostif hostmem hostmem2 hostperf hsc html htr http
messenger metad metamhd metasploit microsoft microsoft-ds minibb minishare mjpeg mjpg moab mobb mod_dav modernbill modified monitor-line monitorline mopb mountd mozilla msagent msdns msdtc mshta msmq mssql msxml mvsmount mynewsgroup myphpim mysql mysql_commander net_monitor netaccess
quicktime rasman rasmp rdesktop real realplayer realsecure realvnc receive_smb_raw recon regex remote_dbx rexd riff rje_mapper rlogin rmoc3260 rpc rpc_metacid rpc_pmfd rpc_pts rpcbind rquotad rras rsa rsh rstad rtf rtsp rusersd sabdrimer sadmind safari saleslogix
tsig ttdbserverd ufsd ultravnc unix unpatched unverified upb upnp url_spoof user_agent utorrent vcal vcard vego venom_board veritas videodb visio vista visualstudio vlc vml vnc voodoo_chat vrfy w3who walld warftp warftpd webbbs webdav webkit webrick
761
blackice blaster bluecoat bnet boite_de_news bootp bootparam browser buffer_overflow bugtraqd cachefsd capicom cattools ccproxy cdt cfnetwork cgi chimera chipmunk chrome cifs cisco cms cmsd code_avalanche codered coldfusion colloquy com comet cookie coppermine core_foundation corehttp
iax2 ibiz ical icc icecast icmp ico icsa_client_2007 icsa_server_2007 ida idq ie ie6 ie7 iexplore iframe igmp iis ilife imail imap imapd informix injection integer_overflow interakt interbase internet_exploiter intouch ioadmd ios iostat iostat2 ip
netbackup netbios netdde netlicense netmail netperformer netscape netterm netvault netware nf_snmd nfs nfs_acl nfs_fwdlnit nfs_fwdtrns nfsauth nhrp nimda nis_cache nis_callback nisd nipasswd nlockmgr nntp nomoketos nosejob novell nsed nsemntd nsiislog nsm_addrand ntdll ntlm null
samba sami sample sans_top20_2006 sap saphire saveweb scalp sccp sched scozbook sdp securelogin securid select_lib selection_svc sender sendmail sentinel serendipity shell shellcode shockwave shoutbox shoutcast showwattrd showfhd sip sipxtapi skinny slammer slimftpd sm_symond smarttag
webstar webstart winamp windows windows_mail wins winzip witty wkssvc wmf wmnews word wordcircle wordpad wordpress works wri wsftp wsftpd wu-ftpd wyciwyg x25 x25_omr xbl xdb xinetd xitami xlatunes xmas xml xmlcore xmlrpc xoops xp
762
cschatrbox csguestbook cslivesupport csnews csrf css cssearch cups cvs cwfm cybozu dameware database database_svc dav db_mgr db_guestbook dcerpc dcom debug_svc delegate denial dhcp diagnostic directory_traversal directx diskinfo divx dmg dninode dns docpile domino dos
iplanet ipp ippath iproutes ipswitch iquery irc isapi iss java javascript jnlp joomla jpeg jpg jrun jumbo kcms_server kerbd keyframe keyserv ktkt_warnd layers layers2 lblog lcdproc ldap link2state linksys livre lizard_cart llockmgr lnk loadimage
nullsoft oaboard ocfserv oes office ogg ole32 onunload oracle osx outlook outlook_express overflow packager pass passwd_auth pcnfsd pct pdf peercast pegasus perl pfs_mountd pheap phf philboard phorecast php php_include php_labs phoadsnew phpauction phpbb2 phpbook
smb smf smserverd smtp snitz snmp snmpv2 snmpxdmid snort solaris sprayd sql sql_injections squid sqwebmail ssa sshd ssl statmon status stfsloader storageworks subversion sunisamd sunlink_mapper sunrpc sunvts surgeldap svg swat swu_svr symantec syn sync
xss xul ypbind yppasswdd ypserv upupdated ypxfrd zebrafeeds zensworks zip zlip zone zorbat zorbstats
763
Syntax
Use the following syntax to view a list of all Strikes available on the system.
$connectionObject searchStrikes
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object $var searchStrikes; #returns a list of all the Strikes stored on the system [$var searchStrikes -limit 10 "protocol:http"]; #returns a list of the Strikes that target HTTP [$var searchStrikes -limit 10 "protocol:http direction:c2s"]; #returns a list of the clientside Strikes that target HTTP
[$var searchStrikes -limit 10 "runid:653protocol:http"]; #returns the Strikes that are http-based for test 653. To search for particular types of strikes within a specific test, always include the runid query in conjuction with the other queries.
Syntax
Use the following syntax to add a Strike to an Evasion Setting.
$attackSeriesObjectName addStrike attackGroupName fullStrikeName
764
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createStrikeList -name Series1]; #creates a Strike List called Series 1 and a Strike List object called x $x addStrike Strikes /strikes/generic/tftp/ tftp_octet_long_put_256.xml; #adds a strike to the Evasion Setting Strikes
Syntax
Use the following syntax to list the Strikes contained within a specific Evasion Setting.
$attackSeriesObjectName getStrikes attackGroupName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createStrikeList -name Series1]; #creates a Strike List called Series 1 and a Strike List object called x $x addStrike Strikes /strikes/generic/tftp/ tftp_octet_long_put_256.xml; #adds a strike to the Evasion Setting Strikes $x getStrikes Strikes; # returns the strikes in the Evasion Setting Strikes
Syntax
Use the following syntax to remove a Strike from an Evasion Setting.
$attackSeriesObjectName removeStrike attackGroupName fullStrikeName
765
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createStrikeList -name Series1]; #creates a Strike List called Series 1 and a Strike List object called x $x addStrike Strikes /strikes/generic/tftp/ tftp_octet_long_put_256.xml; #adds a Strike to the Evasion Setting Strikes; #adds a Strike to the Evasion Setting $x removeStrike Strikes /strikes/generic/tftp/ tftp_octet_long_put_256.xml; #adds a strike to the Evasion Setting Strikes; # removes the Strike from the Evasion Setting
Syntax
Use the following syntax to view the evasion options that are configurable for an Evasion Setting. The system will return a list of Evasion Setting options and their corresponding descriptions.
$attackSeriesObjectName getGroupParameters attackGroupName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createStrikeList -name Series1]; #creates a Strike List called Series 1 and a Strike List object called x $x addStrike Strikes /strikes/generic/tftp/ tftp_octet_long_put_256.xml; #adds a Strike to the Evasion Setting Strikes; #adds a Strike to the Evasion Setting $x getGroupParameters Strikes; #lists the parameters for the Evasion Setting
766
Evasion Setting, use the getGroupParameters command. If you enter an invalid value for the option, the Tcl Interface will alert you of the valid values.
Syntax
Use the following syntax to modify the evasion options for an Evasion Setting.
$attackSeriesObjectName modifyGroup attackGroupName -evasionOption newValue
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createStrikeList -name Series1]; #creates a Strike List called Series 1 and a Strike List object called x $x addStrike Strikes /strikes/generic/tftp/ tftp_octet_long_put_256.xml; #adds a Strike to the Evasion Setting Strikes; #adds a Strike to the Evasion Setting $x getGroupParameters; #lists the configurable Evasion Setting options -UDP.SourcePortType {Determine how UDP source ports are selected} UDP.DestinationPortType {Determine how UDP destination ports are selected} -UDP.DestinationPort {The specific destination port to use} -UDP.SourcePort {The specific source port to use} -Ethernet.MTU {Maximum transmission unit size} -IP.TTL {Maximum IP Time to Live} IP.RFC3514 {Enable RFC3514 compatibility} -IP.TOS {Configure the TOS field used for all IP packets} -IP.MaxFragSize {Maximum IP packet size for all transactions} -IP.FragOrder {Change the order in which fragments are sent} -IP.MaxWriteSize {Maximum IP packet size for client-to-server transactions} -IP.FragPolicy {Specify how IP fragments are reassembled} -IP.FragEvasion {Enable IP evasion using fragmentation} -IP.MaxReadSize {Maximum IP packet size for server-toclient transactions} $x modifyGroup Strikes -IP.TTL 5; #changes the IP.TTL value to 5
767
Syntax
Use the following syntax to reset the value of an Evasion Setting option to its default value.
$attackSeriesObjectName unsetGroupParameter attackGroupName evasionOption
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createStrikeList -name Series1]; #creates a Strike List called Series 1 and a Strike List object called x $x addStrike Strikes /strikes/generic/tftp/ tftp_octet_long_put_256.xml; #adds a Strike to the Evasion Setting Strikes; #adds a Strike to the Evasion Setting $x modifyGroup Strikes -IP.TTL 5; #changes the IP.TTL value to 5 $x unsetGroupParameter Strike -IP.TTL; #sets IP.TTL back to its default value
Syntax
Use the following syntax to delete the Strike List object. itcl::delete object $attackSeriesObjectName
768
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createStrikeList -name Series1]; #creates a Strike List called Series 1 and a Strike List object called x $x save itcl::delete object $x
Syntax
Use the following syntax to view a list of available App Profiles; this includes all canned and custom App Profiles.
$connectionObject listAppProfiles
769
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object $var listAppProfiles; #returns a list of all the App Profiles stored on the system $var listAppProfiles -userid admin; #returns a list of all App Profiles created by the admin $var listAppProfiles -class canned; #returns a list of all default App Profiles $var listAppProfiles-timeunit day -timeinterval 2; #returns a list of all App Profiles created two days ago
Syntax
Use the following syntax to create an App Profile based on a template. set appProfileObjectName [$connectionObject createAppProfile -template {App Profile Name} -name appProfileName Use the following syntax to create an empty App Profile. set appProfileObjectName [$connectionObject createAppProfile -name
appProfileName]
770
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createAppProfile -name httpProfile]; #creates an empty App Profile called httpProfile and an App Profile object called x set y [$var createAppProfile -template {BreakingPoint Enterprise} name enterpriseProfile; #creates an App Profile called enterpriseProfile using a canned App Profile as a template $x save; #saves the App Profile for this object $$y save; #saves the App Profile for this object
Syntax
$appProfileObjectName configure -name newAppProfileName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createAppProfile -name httpProfile]; #creates an empty AppProfile called httpProfile $x configure -name webTraffic; renames httpProfile to webTraffic $x save; saves the App Profile
Syntax
Use the following syntax to delete an App Profile from the system.
$connectionObject deleteAppProfile appProfileName
771
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createAppProfile -name httpProfile]; #creates an empty AppProfile called httpProfile $var deleteAppProfile httpProfile; #removes httpProfile
Syntax
Use the following syntax to delete the App Profile object. itcl::delete object $appProfileObjectName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createAppProfile -name httpProfile]; #creates an App Profile called httpProfile and an App Profile object called x $x save itcl::delete object $x
772
Syntax
Use the following syntax to view a list of available Super Flows; this includes all canned and custom Super Flows.
$connectionObject listSuperflows
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object $var listSuperflows; #returns a list of all the Super Flows stored on the system $var listSuperflows -userid admin; #returns a list of all Super Flows created by the admin $var listSuperflows -class canned; #returns a list of all default Super Flows $var listSuperflows -timeunit day -timeinterval 2; #returns a list of all Super Flows created two days ago $var listSuperflows needle:true; #returns a list of all Super Flows that contain needles
773
Syntax
Use the following syntax to create a Super Flow based on a template.
set superflowObjectName [$connectionObject createSuperflow -template {superFlowName} -name superflowName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name ftpFlow]; #creates an empty Super Flow called ftpFlow and a Super Flow object called x set y [$var createSuperflow -name httpFlow]; #creates an empty Super Flow called httpFlow and a Super Flow object called y $x save; #saves httpTraffic $y save; #saves ftpTraffic
Syntax
$superFlowObjectName configure -name newSuperflowName
774
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createAppProfile -name httpProfile]; #creates an empty AppProfile called httpProfile $x configure -name webTraffic; renames httpProfile to webTraffic $x save; saves the App Profile
Syntax
Use the following syntax to set the weight of a Super Flow.
$a configure -weightType bandwidth, flows
Example
set a [$bps createAppProfile] ::bps::BPSConnection::bPSConnection0::appProfileClient0 $a configure {-name appProfileClient0 appProfileClient0} {-weightType bandwidth bandwidth} $a configure -weightType asdf workingAppProfileModify:weightType:'asdf':must be one of ["bandwidth", "flows"] $a configure -weightType flows $a cget -weightType flows
775
static or dynamic content will be generated. Setting the random seed to 0 will generate dynamic content.
Syntax
Use the following syntax to add a Super Flow to an App Profile.
$appProfileObjectName addSuperflow superflowName weight seed
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createAppProfile -name webTraffic]; #creates an empty App Profile called webTraffic and an App Profile object called x set y [$var createSuperflow -name httpFlow]; #creates an empty Super Flow called httpFlow and a Super Flow object called y $x addSuperflow httpFlow 10 415; #adds httpFlow with a weight of 10 and a random seed of 415 to the webTraffic App Profile
Syntax
Use the following syntax to add a Super Flow to an App Profile.
$appProfileObjectName getSuperFlows
776
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createAppProfile -name webTraffic]; #creates an empty App Profile called webTraffic and an App Profile object called x set y [$var createSuperflow -name httpFlow]; #creates an empty Super Flow called httpFlow and a Super Flow object called y $x addSuperflow httpFlow 10; #adds httpFlow with a weight of 10 to the webTraffic App Profile $x getSuperFlows; # returns a list of Super Flows and their weights and random seeds
Syntax
Use the following syntax to remove a Super Flow from an App Profile.
$appProfileObjectName removeSuperflow superflowName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createAppProfile -name httpTraffic; #creates an App Profile called httpTraffic $x addSuperflow httpFlow 10; #adds a Super Flow with a weight of 10 to the App Profile $x removeSuperFlow httpFlow; #removes the Super Flow from the App Profile
777
Syntax
Use the following syntax to remove a Super Flow from an App Profile.
$connectionObject removeSuperflow superflowName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow; #creates a Super Flow called httpFlow $var deleteSuperflow httpFlow; #removes the Super Flow from the system
Syntax
Use the following syntax to delete the App Profile object. itcl::delete object $appProfileObjectName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x save; #saves the Super Flows in $x itcl::delete object $x; #deletes the Super Flow object
Listing Hosts
Use the getHosts command to get a list of hosts that are available for a Super Flow. Additionally, you can use the Tcl dict command to get more information on a particular host including the hosts interface (target or origin) and DNS name. The system will list this information using the iface and dnsname tags.
778
Syntax
Use the following syntax to get a list of hosts that are available in a Super Flow.
$superflowObjectName getHosts
Use the following syntax to get more information about a particular host. dict get [$superflowObjectName getHosts] hostName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x getHosts; #returns a list of hosts that are available Client {iface origin dnsname client%n} Server {iface target dnsname server%n}; #example of the information the system will return dict get [$x getHosts] Client; #get more information on the Client iface origin dnsname client%n; #example of the dns name and interface information the system returns
Syntax
Use the following syntax to add a host to the Origin interface.
$superflowObjectName addHost hostNickname origin hostName
779
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addHost {DNS Server} origin dns%n; #adds a host called DNS Server that uses the client interface and has a dns name of dns%n to the Super Flow
Syntax
Use the following syntax to add a host to the Target interface.
$superflowObjectName addHost hostNickname target hostName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addHost {DNS Server} target dns%n; #adds a host called DNS Server that uses the server interface and has a dns name of dns%n to the Super Flow
Modifying Hosts
Use the modifyHost command and the -iface and -dnsname attributes to modify a hosts attributes. Note: You cannot modify the hosts nickname.
Syntax
Use the following syntax to modify the interface and host name.
$superflowObjectName modifyHost hostNickname -iface interface -dnsname hostName
780
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addHost {DNS Server} target dns%n; #adds a host called DNS Server that uses the server interface and has a dns name of dns%n to the Super Flow $x modifyHost {DNS Server} -iface origin -dnsname server%n; #changes the interface to origin and the host name to server%n
Syntax
Use the following syntax to delete a host from a Super Flow.
$superflowObjectName removeHost hostNickname
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addHost {DNS Server} target dns%n; #adds a host called DNS Server that uses the server interface and has a dns name of dns%n to the Super Flow $x removeHost {DNS Server}; deletes the DNS Server host from the Super Flow
Listing Protocols
Use the listProtocols command to see a list of all protocols that are available to use for flows.
781
Syntax
Use the following syntax to get a list of the protocols you can use to create flows.
$connectionObject listProtocols
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object $var listProtocols; #returns a list of all protocols
Syntax
Use the following syntax to specify an uploaded file within your HTTP Super Flow.
% dict get [$s getActions]
Example
% set s [$bps createSuperflow];# creates a Super Flow % $s addFlow httpadv Client Server;# adds a flow % $s getActionChoices 1;# returns a list of actions that can be used for the specified flow % $s addAction 1 client post_uri 1 % dict get [$s getActions] 1 post-data-uri % $s getActions % $s getActionParameters 1;# adds the action to get a list of the parameters that it supports % $s modifyAction 1 -post-data-uri cs-smtp-simple-message-body.txt;# adds the path relative to the /resources directory on the machine % dict get [$s getActions] 1 post-data-uri cs-smtp-simple-message-body.txt
Note: If you do not know which values the parameter accepts, try any value. If the value you try is invalid, you will receive an error message that provides you with valid values.
782
Finding Flows
Example
% $s modifyAction 1 -post-data-uri cs-smtp-simple-mes invalid value "cs-smtp-simple-mes" for "post-data-uri", must be one of: cs-smtp-simple-message-body.txt testlink.htm attachment.txt bpshchassis.exe.bak URI.htm Trackweb.asp.htm Network Management Software _ Enterprise Performance NetQoS NetQoS.htm {Network Management Software _ Enterprise Network Performance _ NetQoS NetQoS.htm} it_works.html it_doesnt_work.html page-1.html bigfile.pcap cannedapp.xml
Finding Flows
Use the getFlows command to get a list of flows that are available for a Super Flow. When you use only the getFlows command, and no optional attributes, the system will return the following information: Protocol on which the flow is based The direction of the flow (i.e., from the client to the server) Configurations for the protocol parameters Additionally, you can use the Tcl dict command to retrieve the protocol on which a specific flow is based.
Syntax
Use the following syntax to get a list of flows that are available in a Super Flow.
$superflowObjectName getFlows
Use the following syntax to return the protocol on which the flow is based. dict get [$superflowObjectName getFlows] flowName protocol
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x getFlows; #returns a list of flows that are available dict get [$x getFlows] flow1 protocol; #see what protocol flow1 uses
783
Adding Flows
Adding Flows
Use the addFlow command to add a flow to a Super Flow. When you add a flow, you can specify whether the flow goes from the client to the server, or from the server to the client. Additionally, you can specify the flows protocol parameters when you create it. Note: When you add a flow to a Super Flow, the system will automatically name the flow for you. Each flow will be named based on the order in which it was added. For example, the first flow added to a Super Flow will be called 1; the second flow will be called 2, and so forth. Note: There can be up to 16 flows in a Super Flow.
Syntax
Use the following syntax to add a flow that goes from the client to the server.
$superflowObjectName addFlow protocol Client Server
Use the following syntax to add a flow that goes from the server to the client.
$superflowObjectName addFlow protocol Server Client
Use the following syntax to add a flow that goes from the server to the client and specifies its protocol parameters.
$superflowObjectName addFlow protocol Server Client -protocolParameter
value
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addFlow http Server Client; #adds an http-based flow
784
Syntax
Use the following syntax to return a list of Flow Parameters that are available for a specific flow.
$superflowObjectName getFlowParameters flowID
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addFlow http Server Client; #adds flow 1 to the Super Flow $x getFlowParameters 1; #returns a list of Flow Parameters for flow 1
Syntax
Use the following syntax to remove a flow from a Super Flow.
$superflowObjectName removeFlow flow#
785
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addFlow http Server Client; #adds flow 1 to the Super Flow $x removeFlow 1; #removes flow 1 from the Super Flow
Syntax
Use the following syntax to list the configurable protocol parameters for a flow.
$superflowObjectName getFlowParameters flow#
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addFlow http Server Client; #adds flow 1 to the Super Flow $x getFlowParameters; #returns a list of protocol parameters for the http-based flow
786
Syntax
Use the following syntax to configure the protocol parameters for a flow.
$superflowObjectName modifyFlow flow# -protocolParameter value
Use the following syntax to configure the protocol parameters for a flow and use the -to and -from attributes to set the direction of the flow.
$superflowObjectName modifyFlow flow# -to interfaceName -from intefaceName -protocolParameter value
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addFlow http Server Client; #adds flow 1 to the Super Flow $x getFlowParameters; #returns a list of protocol parameters for the http-based flow $x modifyFlow 1 -to Client -from Server -client-profile ie7; #changes the hosts for the flow and sets the client profile to IE 7
Syntax
Use the following syntax to unset or reset a protocol parameter to its default value.
$superflowObjectName unsetFlowParameter flow# -protcolParameter
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object
787
Listing Actions
set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addFlow http Server Client; #adds flow 1 to the Super Flow $x getFlowParameters; #returns a list of protocol parameters for the http-based flow $x modifyFlow 1 -to Client -from Server -client-profile ie7; #changes the direction of the flow and sets the client profile to IE 7 $x unsetFlowParameter 1 -client-profile; #unsets the client profile protocol parameter
Listing Actions
Use the getActionChoices command to return a list of actions for a specific flow. All actions are listed by flow ID and will include the source (i.e., client or server) and the action type (e.g., GET, PUT, POST, etc.).
Syntax
Use the following syntax to retrieve a list of available actions for the Super Flow.
$superflowObjectName getActionChoices flow#
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpadvFlow]; #creates a Super Flow called httpadvFlow and a Super Flow object called x $x addFlow httpadv Server Client; #adds flow 1 to the Super Flow $x getActionChoices 1; #returns a list of actions that are available for flow 1
788
When you add an action to the Super Flow, you will need to specify the flow ID on which the action will be based, the source of the action (i.e., client or server), the action type (e.g., get, post, put, etc.), and any action parameters that you want to configure. Note: Any action parameters that you do not specify will use the systems default value. If the action parameters default value is blank, then the system will generate a random value for the action parameter. Note: Use the getActionChoices command to display a list of available actions for a specific flow.
Syntax
Use the following syntax to add an action to a Super Flow.
$superflowObjectName addAction flowID source actionType actionParameter value
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addFlow http Server Client; #adds flow 1 to the Super Flow $x getActionChoices 1; #returns a list of actions that are available for flow 1 $x addAction 1 client get -request-size 45; #adds a get request from the client with a request size of 45 bytes
Syntax
Use the following syntax to configure action parameters for a specific action.
$superflowObjectName modifyAction actionID -actionParameter value
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object
789
set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addFlow http Server Client; #adds flow 1 to the Super Flow $x getActionChoices 1; #returns a list of actions that are available for flow 1 $x addAction 1 client get -request-size 45; #adds action 1, which is a get request from the client with a request size of 45 bytes $x modifyAction 1 -request-size 2; #changes the request size for action 1 to 2 bytes
Syntax
Use the following syntax to view a list of actions that are used in a Super Flow.
$superflowObjectName getActionParameters actionID
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addFlow http Server Client; #adds flow 1 to the Super Flow $x addAction 1 client get; #adds the GET action to flow 1, this will be the first action so it will have an action ID of 1 $x getActionParameters 1; returns a list of Action Parameters for the action ID specified
790
Syntax
Use the following syntax to view a list of actions that are used in a Super Flow.
$superflowObjectName getActions
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addFlow http Server Client; #adds flow 1 to the Super Flow $x getActionChoices 1; #returns a list of actions that are available for flow 1 $x addAction 1 client get -request-size 45; #adds a get request from the client with a request size of 45 bytes $x save; #saves the Super Flow $x getActions; #returns a list of actions used by the Super Flow
Syntax
Use the following syntax to unset or reset an action parameter to its default value.
$superflowObjectName unsetActionParameter action# -actionParameter
791
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addFlow http Server Client; #adds flow 1 to the Super Flow $x getActionChoices 1; #returns a list of actions that are available for flow 1 $x addAction 1 client get -request-size 45; #adds a get request from the client with a request size of 45 bytes $x unsetActionParameter 1 -request-size; #resets the request size to its default value
Syntax
Use the following syntax to remove an action from a Super Flow.
$superflowObjectName removeAction action#
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addFlow http Server Client; #adds flow 1 to the Super Flow $x getActionChoices 1; #returns a list of actions that are available for flow 1 $x addAction 1 client get -request-size 45; #adds a get request from the client with a request size of 45 bytes $x removeAction 1; #removes action 1 from the Super Flow
792
Syntax
Use the following syntax to add a Conditional Request to a Super Flow. The value n represents the amount of time that should elapse before a timeout occurs.
$superFlowObjectName addAction flowID source expect -match1 {matchName} -match2 {matchName} -match3 {matchName} -nomatch.timeout n
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addFlow http Server Client; #adds flow 1 to the Super Flow $x addAction $flowid client expect -match1 {200 OK} -match2 {301 Moved} -match3 {404 Not} -nomatch.timeout 3; adds a conditional request that has 3 matches with the specified names as well as a timeout of 3 seconds in cases of mismatches
793
Syntax
Use the following syntax to add a Match Action to a Match.
$superFlowObjectName addMatchAction actionID matchID actionMatchID source matchAction
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x $x addFlow http Server Client; #adds flow 1 to the Super Flow $x addAction $flowid client expect -match1 {200 OK} -match2 {301 Moved} -match3 {404 Not} -nomatch.timeout 3; #adds a conditional request that has 3 matches with the specified names as well as a timeout of 3 seconds in cases of mismatches $x addMatchAction 1 1 1 client get_uri -uri /match1.html
Syntax
Use the following syntax to view the parameters for a Match Action.
$superFlowObjectName getMatchActionParamters actionID matchID matchActionID
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createSuperflow -name httpFlow]; #creates a Super Flow called httpFlow and a Super Flow object called x
794
$x addFlow http Server Client; #adds flow 1 to the Super Flow $x addAction $flowid client expect -match1 {200 OK} -match2 {301 Moved} -match3 {404 Not} -nomatch.timeout 3; adds a conditional request that has 3 matches with the specified names as well as a timeout of 3 seconds in cases of mismatches $x addMatchAction 1 1 1 client get_uri -uri /match1.html; #adds a match action to match 1 $x getMatchActionParameters 1 1 1; #returns a list of action parameters
Syntax
Use the following syntax to activate the Goto action. Note: Before an action is referenced by a goto -actionId, the action must first be defined.
$$sfSQL addMatchAction $act4 1 1 client goto -actionId 5 -loop 0
795
Example
set bps [bps::connect 10.10.11.202 admin admin]; #creates the connection object set sfSQL [$bps createSuperflow -name QA_clientsim_SQL]; # defines the Super Flow $sfSQL removeHost {Server}; # removes the old host $sfSQL addHost {MySQL Server} target server%n; # defines the new host set flowID_1 [$sfSQL addFlow mysql Client {MySQL Server}]; # defines the flow $sfSQL modifyFlow $flowID_1 -client-port 0 -server-port 3306; # modifies the flow set act1 [$sfSQL addAction $flowID_1 client login -transflag startend \-username testuser1 -password password]; # adds actions set act2 [$sfSQL addAction $flowID_1 client expect -match1IsRE true \ -match1 {\x07\x00\x00\x02\x00\x00\x00\x02\x00\x00\x00}] set act3 [$sfSQL addAction $flowID_1 server delay \ -transflag continue -delay 1] set act4 [$sfSQL addAction $flowID_1 client expect -match1IsRE true \ -match1 {[\x20-\x7f]\x05\x00\x00.\xfe\x00\x00.\x00}] set act5 [$sfSQL addAction $flowID_1 client quit -transflag end]; # defines conditional request using expect and regex $sfSQL addMatchAction $act2 none $flowID_1 client goto \ -actionId 5 -loop 0; # a non-match action specified by 'none' that goes to action 5 $sfSQL addMatchAction $act2 1 1 client use_database -database_name mysql $sfSQL addMatchAction $act2 1 1 client query \ -transflag start -sql_statement {select * from user} $sfSQL addMatchAction $act4 1 1 client goto -actionId 5 -loop 0 $sfSQL save -force
796
and you can specify any integer value between 1-500 for -timeinterval. The -limit attribute limits the number of results that are returned.
Syntax
Use the following syntax to display a list of existing Load Profiles.
$connectionObject listLoadProfiles
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object $var listLoadProfiles; #displays a list of Load Profiles on the system
Syntax
Use the following syntax to create a Load Profile. set loadProfileObjectName [$connectionObject createLoadProfile -name loadProfileName -template {Load Profile Name}
797
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set y [$var createLoadProfile -name profile1]; #creates a Load Profile called profile1 set z [$var createLoadProfile -template {BreakingPoint Maximum Sessions per second} -name profile2; #creates a Load Profile called profile 2 based on the BreakingPoint Maximum Sessions per second profile
Syntax
Use the following syntax to display a list of phases in a Load Profile.
$loadProfileObjectName getPhases
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set y [$var createLoadProfile -name profile1]; #creates a Load Profile called profile1 $y getPhases; #displays a list of phases and their configurations
798
To add a phase before the ramp up phase, you can use the special index end (e.g., $loadProfileObjectName addPhase end). This will place the new phase before the ramp up phase. The system will reassign phase IDs to the ramp down phase and the new phase accordingly. Most of the time, you will want to use end to add phases to the Load Profile. This convenient indexer automatically places the phase before the ramp down phase, so you do not have to manually track all the phase IDs. When you add a phase to a Load Profile, each phase will automatically be assigned a phase ID. This value is based on the position at which the phase was added. For example, the first phase will be phase 1, the second phase will be phase 2, and so forth. Note: If you add a phase that uses the same phase ID as an existing phase, then the system will resequence the phase to the following phase ID. For example, if you add phase 3 to a Load Profile, the current phase 3 will be resequenced to phase 4, and so forth. Note: If you remove a phase from a Load Profile, then the flows will be resequenced to the flow ID the preceding phase ID (e.g., phase 3 will become phase 2). When you add a phase to a Load Profile, you can specify the phases parameter configurations. The parameters that you can set for a Load Profile include the phase duration, maximum number of simultaneous sessions, session rate, data rate scope, data rate, and data rate unit. For more information on the Tcl equivalent for these parameters, see the section Session Sender Parameters on page 901. Note: If you do not specify any parameter configurations for a phase, the system will assign the parameters their default values.
Syntax
Use the following syntax to add a phase to a Load Profile.
$loadProfileObjectName addPhase phase# -parameter value
799
Modifying Phases
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set y [$var createLoadProfile -name profile1]; #creates a Load Profile called profile1 $y getPhases; #displays a list of phases and their configurations $y addPhase end; #adds a phase before the ramp down phase $y addPhase 2; #adds phase 2 $y addPhase 3 -rateDist.unit fps; #adds phase 3 and assigns the data rate unit to fps
Modifying Phases
Use the modifyPhase command to modify the parameter configurations for a phase. To see the current values for a phase, use the getPhases command; this will return a list of all phases in a Load Profile, and the parameter configurations for each phase.
Syntax
Use the following syntax to modify a phase.
$loadProfileObjectName modifyPhase phaseID -parameter value
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set y [$var createLoadProfile -name profile1]; #creates a Load Profile called profile1 $y addPhase end -rateDist.unit fps; #adds a phase before the ramp down phase and assigns the data rate unit to fps
800
Syntax
Use the following syntax to remove an phase from a Load Profile.
$loadProfileObjectName removePhase phaseID
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set y [$var createLoadProfile -name profile1]; #creates a Load Profile called profile1 $y addPhase 4 -rateDist.unit fps; #adds phase 4 and assigns the data rate unit to fps $y removePhase 4; #removes phase 4 from the Load Profile
Syntax
$loadProfileObjectName save -name newLoadProfileName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set y [$var createLoadProfile -name profile1]; #creates a Load Profile called profile1 $y addPhase 4 -rateDist.unit fps; #adds phase 4 and assigns the data rate unit to fps $y save; #saves the Load Profile
801
Syntax
Use the following syntax to remove a Load Profile from the system.
$connectionObject deleteLoadProfile loadProfileName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set y [$var createLoadProfile -name profile1]; #creates a Load Profile called profile1 $y addPhase 4 -rateDist.unit fps; #adds phase 4 and assigns the data rate unit to fps $y save; #saves the Load Profile $var deleteLoadProfile profile1; #deletes profile1 from the system
Syntax
Use the following syntax to delete the Load Profile object. itcl::delete object $loadProfileObjectName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set x [$var createLoadProfile -name LP1]; #creates a Load Profile called LP1 and a Load Profile object called x $x save; #saves the Load Profile itcl::delete object $x; #deletes the Load Profile object
802
Listing Tests
Listing Tests
Use the listTests command to display a list of tests currently on the system. This includes all user-created and BreakingPoint supplied tests. The optional attributes you can add to your query include: -userid, -class, -timeunit, timeinterval, and -limit. The -userid attribute allows you to display tests created by a specific user. The -class attribute can either be defined as canned, which will return a list of all BreakingPoint created tests, or custom, which will return a list of all user-created tests. Use the -timeunit and -timeinterval attributes to list tests by the date they were created. You can specify -timeunit as day or week, and you can specify any integer value between 1-500 for -timeinterval. The -limit attribute limits the number of results that are returned. This command also accepts a Google-formatted search string as a final argument.
Syntax
Use the following syntax to list all tests on the system.
$connectionObject listTests
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object $var listTests; #returns a list of tests on the system
Creating Tests
The recommended way to create a test is by creating an object for it. The test object will provide you with the necessary commands to set the Network Neighborhood and DUT Profile, add test components, export reports, and manually stop the packet trace. Using the test object, you can: Set the Network Neighborhood and DUT Profile for the test View the Network Neighborhood, DUT Profile, and test components for the test Add and create components to the test Export test results Stop the packet trace at a defined time Run the test
In order to perform these tasks, the test object provides you with the following commands: cancel: Cancels the test cget -dut: Returns the DUT Profile used by the test
803
Creating Tests
cget -neighborhood: Returns the Network Neighborhood used by the test configure -category: Defines the category for the test configure -description: Defines the description for the test configure -dut: Defines the DUT Profile for the test configure -name: Defines the name for the test configure -neighborhood: Allows you to configure the Network Neighborhood createComponent: Allows you to create a component for the test getAggStats: Returns the Ethernet-related stats from a test report getComponents: Returns the components used by the test run: Runs the test save: Saves the test exportReport -location: Exports the report to the location specified startPacketTrace: Starts the packet capture stopPacketTrace: Stops the packet capture from running
Syntax
Use the following syntax to create a test object and to use the createTest command to create a test. set testObjectName [$connectionObject createTest -template templateName -name testName]
Example 1
The following is a simple example that reserves ports on BreakingPoint Storm CTM and creates a test object.
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 $c1 $c1 $c1 reservePort reservePort reservePort reservePort 1 1 1 1 0; 1; 2; 3; #reserves #reserves #reserves #reserves port port port port 0 1 2 3 on slot 1 on slot 1 on slot 1 slot 1
set test1 [$var createTest -template appsim_enterprise -name myTest; #creates the test object and a test called MyTest based on the AppSim test
Example 2
The following is a more detailed example that creates a complete test set up including setting the Network Neigbhorhood and DUT Profile, defining the test category and
804
description, saving and running the test, and stopping the packet trace at a specified time interval.
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 $c1 $c1 $c1 reservePort reservePort reservePort reservePort 1 1 1 1 0; 1; 2; 3; #reserves #reserves #reserves #reserves port port port port 0 1 2 3 on slot 1 on slot 1 on slot 1 slot 1
set test1 [$var createTest -template appsim_enterprise -name myTest; #creates the test object and a test called MyTest based on the AppSim test $test1 configure -neighborhood Neighborhood1; #sets the Network Neighborhood for the test to be Neighborhood 1 $test1 configure -dut Profile1; #sets the DUT Profile to Profile1 $test1 configure -category layer 7 testing; #sets the test category to state layer 7 testing $test1 configure -description this test is based on the default application simulator quick test; #sets the description for the test $test1 save; #saves the test $test1 run; #runs the test after 2000; #wait 2 seconds $test1 stopPacketTrace; #stops collecting packets
805
Syntax
Use the following syntax to query test results.
set resultObjectName [$testComponentName result] $resultObjectName values; #returns a list of all values $resultObjectName values -interface interfaceNumber; #returns all values for an interface $resultObjectName get statName; #returns the value for a statistic $resultObjectName interfaces; #returns all interfaces used by the component $resultObjectName protocols; #returns a list of protocols for the test component $resultObjectName values -protocol protocolName; #returns all values available for a specific protocol $resultObjectName protocols -name statName; #returns all protocols that are related to a specific result
Table 16-15 on page 806 breaks down the elements for querying test results. Table 16-15: Querying Test Results Element resultObjectName testComponentName result values -interface get statName interfaceNumber -protocol protocolName interfaces protocols Description The name for the results object The name of the test component whose results the object will store The command that returns a components results A command that returns a list of values for an option An argument to the values command that allows you to obtain data about a specific interface A command that can be used to retrieve the value for a statistic. The interface from which you want data An attribute to the values command that allows you to obtain data about a specific protocol The protocol for which you want data A command that returns interfaces related to a specific result type A command that returns protocols related to a specific result type
806
Table 16-15: Querying Test Results Element -name statName Description An attribute that allows you to specify the name of the statistic whose value will be returned The name of the statistic (e.g., txAvgFrameSize or rxAvgFrameSize)
Example
set var [bps::connect 10.10.10.10 joe passwd -shortcuts true -name test1]; #creates a connection to the system and the default test context bitblaster bb1 1 2; #adds a bit blaster component to the default context that transmits from interface 1 to interface 2 bb1 configure -rateDist.min 900 -sizeDist.min 512; #sets the data rate to 900 and the frame size to 512 bytes $var run -progress bps::textprogress stdout; #runs the test set bb1results [bb1 result]; #stores the results in an object called bb1results $bb1results value; #returns a list of avaliable values for the component $bb1results interfaces; #returns the interfaces that were used by the component $bb1results values -interface 1; #returns the results for interface 1 $bb1results protocols; #returns a list of protocols used by the component $bb1results protocols -name txFrameRate; #returns a list of protocols that are related to the txFrameRate result $bb1results interfaces -name txFrameRate; #returns a list of interfaces that are related the txFrameRate result
807
Importing Tests
Importing Tests
Use the importTest command to import a test object and a test into the system. Additionally, you can use the -force attribute to overwrite any test with the same name.
Syntax
Use the following syntax to import a test object and a test from a file location:
$bps importTest <filename> -file /location/
Use the following syntax to import a test and force it to overwrite an existing test with the same name. You can use the -force attribute to overwrite an existing file if you do not want to overwrite an existing file.
$bps importTest <filename> -file /location/0-0-del.bpt -force
Example
The following example imports a file called MyTest.bpt from the temp location. set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts
true]; #creates the connection object $var importTest MyTest -file /temp/0-0-del.bpt -force; #imports MyTest and overwrites any file with that same name
Syntax
Use the following syntax to view the DUT Profile currently selected for the test object.
$testObject cget -dut
808
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 $c1 $c1 $c1 reservePort reservePort reservePort reservePort 1 1 1 1 0; 1; 2; 3; #reserves #reserves #reserves #reserves port port port port 0 1 2 3 on slot 1 on slot 1 on slot 1 slot 1
set test1 [$var createTest -template appsim_enterprise -name myTest; #creates the test object and a test called MyTest based on the AppSim test $test1 cget -dut; #returns the DUT Profile used by the test
Syntax
Use the following syntax to change the DUT Profile for the test.
$testObject configure -dut DUTName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 $c1 $c1 $c1 reservePort reservePort reservePort reservePort 1 1 1 1 0; 1; 2; 3; #reserves #reserves #reserves #reserves port port port port 0 1 2 3 on slot 1 on slot 1 on slot 1 slot 1
set test1 [$var createTest -template appsim_enterprise -name myTest; #creates the test object and a test called MyTest based on the AppSim test $test1 configure -dut Profile1; #sets the DUT Profile to Profile1
809
Syntax
Use the following syntax to view the Network Neighborhood currently selected for the test.
$testObject cget -neighborhood
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 $c1 $c1 $c1 reservePort reservePort reservePort reservePort 1 1 1 1 0; 1; 2; 3; #reserves #reserves #reserves #reserves port port port port 0 1 2 3 on slot 1 on slot 1 on slot 1 slot 1
set test1 [$var createTest -template appsim_enterprise -name myTest; #creates the test object and a test called MyTest based on the AppSim test $test1 cget -neighborhood; #returns the Network Neighborhood
Syntax
Use the following syntax to change the Network Neighborhood for the test.
$testObject configure -neighborhood neighborhoodName
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object
810
1 1 1 1
0; 1; 2; 3;
0 1 2 3
set test1 [$var createTest -template appsim_enterprise -name myTest; #creates the test object and a test called MyTest based on the AppSim test $test1 configure -neighborhood NN1; #sets the Network Neighborhood to NN1
Syntax
Use the following syntax to change the category for the test object.
$testObject configure -category
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 $c1 $c1 $c1 reservePort reservePort reservePort reservePort 1 1 1 1 0; 1; 2; 3; #reserves #reserves #reserves #reserves port port port port 0 1 2 3 on slot 1 on slot 1 on slot 1 slot 1
set test1 [$var createTest -template appsim_enterprise -name myTest; #creates the test object and a test called MyTest based on the AppSim test $test1 configure -category layer 7 testing; #sets the test category
811
Seed Override
You can use configure -seedOverride to modify the seed for Security, Application Simulator, and Stack Scrambler tests.
Syntax
Use the following syntax to change the seed for the test object.
$testObject configure -seedOverride
Example
set t [$bps createTest] $t cget -seedOverride $t configure -seedOverride 0; $t configure -seedOverride {}
812
Syntax
Use the following syntax to change the description for the test.
$testObject configure -description
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 $c1 $c1 $c1 reservePort reservePort reservePort reservePort 1 1 1 1 0; 1; 2; 3; #reserves #reserves #reserves #reserves port port port port 0 1 2 3 on slot 1 on slot 1 on slot 1 slot 1
set test1 [$var createTest -template appsim_enterprise -name myTest; #creates the test object and a test called MyTest based on the AppSim test $test1 configure -description app sim test for switch; #sets the test description
813
Otherwise, you will need to use the setDomains command to configure the domains to something other than the default domain. For more information on setting the domain, see the section Setting the Domain for the Client/Server Interfaces on page 919 for more information. If you are creating a Session Sender component and need to use the external interface, see the section Setting the Domain for the Client/Server Interfaces on page 919 for more information on setting the domain for the external interface. Note: If you use the 'special' name #auto, then a unique name will automatically be generated for the object. Note: It is recommended that you create custom components through the Control Center if you plan on making extensive modifications to a test components parameters.Once you create your custom components through the Control Center, you can simply refer to them in your Tcl scripts.
Syntax
The following syntax uses the createComponent command, which is a command of the test object, to create an object for the component and the component itself. Replace componentName with a component from the list provided in section Test Components List on page 814. set componentObject [$testObject createComponent componentName
clientInterface# serverInterface#]
814
routingrobot_1000 routingrobot_10G routingrobot_5G routingrobot_imix routingrobot_imix_jumbo routingrobot_imix_tcp security security_2 security_3 security_4 security_5 sessionsender sessionsender_http sessionsender_large sessionsender_max sessionsender_max_bandwidth sessionsender_medium sessionsender_single_stream_1G sessionsender_single_stream_5G sessionsender_synflood sessionsender_synflood_1G sessionsender_upd_1000 stackscrambler stackscrambler_tcp stackscrambler_udp
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 $c1 $c1 $c1 reservePort reservePort reservePort reservePort 1 1 1 1 0; 1; 2; 3; #reserves #reserves #reserves #reserves port port port port 0 1 2 3 on slot 1 on slot 1 on slot 1 slot 1
set test1 [$var createTest -name myTest]; #creates the test object and an empty test called MyTest set comp1 [$test1 createComponent appsim #auto 1 2]; #creates a component object called comp1 and an App Sim component which will be named using the auto-naming function. The client interface is 1 and server interface is 2 set comp2 [$test1 createComponent sec #auto 1 2]; #creates a component object called comp1 and a Security component which will be named using the auto-naming function. The client interface is 1 and server interface is 2
815
Example
set bps [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c [$bps createComponent routingrobot #auto 1 2]; #creates a routing robot component object that will be named using the auto-naming function. The client interface is 1 and server interface is 2 $c configure -Templates.TemplateType $c configure -Templates.TemplateType TcpSynFlood $c configure -Templates.TemplateType $c cget -Templates.TemplateType
appsim_Max10K
816
Table 16-16: Shortcut Commands Shortcut Command appsim_ed Description Generates realistic application traffic flows that are representative of a higher education network. For information on appsim_eds parameters, see the section Configuring Test Components on page 859. Generates realistic application traffic flows that are representative of a service provider network. For information on appsim_isps parameters, see the section appsim_isp Default Configuration on page 824. Generates realistic application traffic flows in a distribution representative of a wide-area network of satellite offices. For information on appsim_wanaccs parameters, see the section appsim_wanacc Default Configuration on page 825. Sends 500 Mbps of valid layer 2 Ethernet frames with contrived content. For information on bitblasters parameters, see the section bitblaster Default Configuration on page 829. Sends 10,000 Mbps of valid layer 2 Ethernet frames with contrived content. For more information on bitblaster_10000Gbps parameters, see the section bitblaster_10000Mbps Default Configuration on page 827. Sends 5 Gbps of valid layer 2 ethernet frames with contrived content. For more information on bitblaster_5Gbps, see the section bitblaster_5Gbps Default Configuration on page 828. Sends 1 Gbps of valid layer 2 ethernet frames with contrived content. For information on bitblaster_1Gbps parameters, see the section bitblaster_1Gbps Default Configuration on page 830. Sends layer 4 traffic load that is similar to that of a small office behind router or NAT device. It opens no more than 500 concurrent sessions and is useful for testing small devices with limited memory and processing resources. For more information on clientsimpresets parameters, see the section clientsimpreset Default Configuration on page 831.
appsim_isp
appsim_wanacc
bitblaster
bitblaster_10000Mbps
bitblaster_5Gbps
bitblaster_1Gbps
clientsimpreset
817
Table 16-16: Shortcut Commands Shortcut Command recreate Description Replays captured traffic patterns based on application data from a PCAP file. For information on recreates parameters, see the section recreate Default Configuration on page 834. Sends 500 Mbps of valid IP packets with contrived content. For information on routingrobots parameters, see the section routingrobot Default Configuration on page 835. Sends 10,000 Mbps of valid IP packets with contrived content. For more information on routingrobot_10Gs parameters, see the section routingrobot_10G Default Configuration on page 837. Sends 5,000 Mbps of valid IP packets with contrived content. For more information on routingrobot_5Gs parameters, see the section routingrobot_5G Default Configuration on page 838. Sends 1,000 Mbps of valid IP packets with contrived content. For information on routingrobot_1000s parameters, see the section routingrobot_1000 Default Configuration on page 840. Uses Security Level 1 to target high-risk vulnerabilities in services often exposed to the Internet. This includes approximately 100 Strikes. For information on securitys parameters, see the section security Default Configuration on page 842. Uses Security Level 2 to target all high-risk vulnerabilities. This includes approximately 450 Strikes. For information on security_2s parameters, see the section security_2 Default Configuration on page 842. Uses Security Level 3 to target all high-risk vulnerabilities, worms, and backdoors. This includes approximately 500 Strikes. For information on security_3s parameters, see the section security_3 Default Configuration on page 843. Uses Security Level 4 to target all vulnerabilities, worms, and backdoors. This includes approximately 750 strikes. For information on security_4s parameters, see the section security_4 Default Configuration on page 843.
routingrobot
routingrobot_10G
routingrobot_5G
routingrobot_1000
security
security_2
security_3
security_4
818
Table 16-16: Shortcut Commands Shortcut Command security_5 Description Uses Security Level 5 to target all vulnerabilities, worms, backdoors, probes, and denial of service flaws. This includes approximately 2,800 Strikes. For information on security_5s parameters, see the section security_5 Default Configuration on page 844. Simulates layer 4 traffic loads similar to that of a small office behind router or NAT device. For information on sessionsenders parameters, see the section sessionsender Default Configuration on page 845. Simulates a stateless HTTP client connecting to server port 80. To use this shortcut, you must use the External interface. For more information on sessionsender_https parameters, see the section sessionsender_http Default Configuration on page 846. Simulates layer 4 traffic load similar to that of a large network. For information on sessionsender_larges parameters, see the section sessionsender_large Default Configuration on page 848. Uses the maximum values supported to generate TCP sessions. You can only run one sessionsender_max preset per test. Sessionsender_max is intended to utilize all available resources for session-based components; therefore, if you want to use more than one Session Sender component that uses the sessionsender_max preset, then you must adjust the data rate to account for bandwidth limitations. For information on sessionsender_maxs parameters, see the section sessionsender_max Default Configuration on page 849. Simulates layer 4 traffic load similar to that of a medium-sized network. For information on sessionsender_mediumss parameters, see the section sessionsender_medium Default Configuration on page 851. Simulates a SYN flood for 60 seconds. For information on sessionsender_synfloods parameters, see the section sessionsender_synflood Default Configuration on page 853.
sessionsender
sessionsender_http
sessionsender_large
sessionsender_max
sessionsender_medium
sessionsender_synflood
819
Table 16-16: Shortcut Commands Shortcut Command stackscrambler Description Generates intentionally corrupt packets targeting TCP, UDP, and other IP protocol stacks. For information on stackscramblers parameters, see the section stackscrambler Default Configuration on page 856. Generates intentionally corrupt packets targeting TCP stacks. For information on stackscrambler_tcps parameters, see the section stackscrambler_tcp Default Configuration on page 857. Generates intentionally corrupt packets targeting UDP stacks. For information on stackscrambler_udps parameters, see the section stackscrambler_udp Default Configuration on page 858.
stackscrambler_tcp
stackscrambler_udp
820
Table 16-17: appsim Parameters Parameter rateDist.type rateDist.unit sessions.closeFast sessions.max sessions.maxPerSecond sessions.target sessions.targetPerSecond tcp.add_timestamps tcp.delay_acks tcp.initial_receive_window tcp.mss tcp.retries tcp.retry_quantum_ms
*N/A denotes that no value has been defined for the parameter.
Default Value constant mbps false 3,000,000 75,000 1 1 true false 5,792 1,448 3 250
821
Table 16-18: appsim_Max10K Parameters Parameter rampUpProfile.increment rampUpProfile.interval rampUpProfile.max rampUpProfile.min rampUpProfile.type rateDist.scope rateDist.type rateDist.unit sessions.closeFast sessions.max sessions.maxPerSecond sessions.target sessions.targetPerSecond tcp.add_timestamps tcp.delay_acks tcp.initial_receive_window tcp.mss tcp.retries tcp.retry_quantum_ms
*N/A denotes that no value has been defined for the parameter.
Default Value 0 1 N/A N/A calculated per_if constant mbps false 500,000 500,000 1 1 true false 65,535 1,448 3 250
822
Table 16-19: appsim_ed Parameters Parameter rampDist.down rampDist.downBehavior rampDist.steady rampDist.steadyBehavior rampDist.up rampDist.upBehavior rampUpProfile.increment rampUpProfile.interval rampUpProfile.max rampUpProfile.min rampUpProfile.type rateDist.scope rateDist.type rateDist.unit sessions.closeFast sessions.max sessions.maxPerSecond sessions.target sessions.targetPerSecond tcp.add_timestamps tcp.delay_acks tcp.initial_receive_window tcp.mss tcp.retries tcp.retry_quantum_ms
*N/A denotes that no value has been defined for the parameter.
Default Value 11 full 30 cycle 11 full 0 1 N/A N/A calculated per_if constant mbps false 4,000,000 400,000 1 1 true false 5,792 1,448 3 250
823
824
825
Table 16-21: appsim_wanacc parameters Parameter sessions.maxPerSecond sessions.target sessions.targetPerSecond tcp.add_timestamps tcp.delay_acks tcp.initial_receive_window tcp.mss tcp.retries tcp.retry_quantum_ms
*N/A denotes that no value has been defined for the parameter.
826
Table 16-22: appsim_soho parameters Parameter rampUpProfile.type rateDist.scope rateDist.type rateDist.unit sessions.closeFast sessions.max sessions.maxPerSecond sessions.target sessions.targetPerSecond tcp.add_timestamps tcp.delay_acks tcp.initial_receive_window tcp.mss tcp.retries tcp.retry_quantum_ms calculated per_if constant mbps false 1,250 125 1 1 true false 5,792 1,448 3 250 Default Value
827
Table 16-23: bitblaster_10000Mbps parameters Parameter payloadAdvanced.udfLength payloadAdvanced.udfMode payloadAdvanced.udfOffset rateDist.increment rateDist.rate rateDist.type rateDist.unit sizeDist.increment sizeDist.max sizeDist.min sizeDist.rate sizeDist.type sizeDist.unit slowStart N/A disabled N/A N/A N/A constant mbps N/A N/A 1,024 N/A constant frame true Default Value
828
Table 16-24: bitblaster_5Gbps parameters Parameter payloadAdvanced.udfMode payloadAdvanced.udfOffset rateDist.increment rateDist.rate rateDist.type rateDist.unit sizeDist.increment sizeDist.max sizeDist.min sizeDist.rate sizeDist.type sizeDist.unit slowStart disabled N/A N/A N/A constant mbps N/A N/A 1,024 N/A constant frame true Default Value
829
Table 16-25: bitblaster parameters Parameter payloadAdvanced.udfOffset rateDist.increment rateDist.rate rateDist.type rateDist.unit sizeDist.increment sizeDist.max sizeDist.min sizeDist.rate sizeDist.type sizeDist.unit slowStart
*N/A denotes that no value has been defined for the parameter.
Default Value N/A N/A N/A constant mbps N/A N/A 1,024 N/A constant frame true
830
Table 16-26: bitblaster_1Gbps Parameters Parameters payloadAdvanced.udfOffset rateDist.increment rateDist.rate rateDist.type rateDist.unit sizeDist.increment sizeDist.max sizeDist.min sizeDist.rate sizeDist.type sizeDist.unit slowStart
*N/A denotes that no value has been defined for the parameter.
Default Values N/A N/A N/A constant mbps N/A N/A 1,024 N/A constant frame true
831
Table 16-27: clientsimpreset parameters Parameter rampUpProfile.interval rampUpProfile.max rampUpProfile.min rampUpProfile.type rateDist.scope rateDist.type rateDist.unit sessions.closeFast sessions.max sessions.maxPerSecond sessions.target sessions.targetPerSecond superflow tcp.add_timestamps tcp.delay_acks tcp.initial_receive_window tcp.mss tcp.retries tcp.retry_quantum_ms
*N/A denotes that no value has been defined for the parameter.
Default Value 1 N/A N/A calculated per_if constant mbps false 100 500 1 1 BreakingPoint ClientSim HTTP true false 5,792 1,448 3 250
832
Table 16-28: clientsimpreset parameters Parameter rampDist.down rampDist.downBehavior rampDist.steady rampDist.steadyBehavior rampDist.up rampDist.upBehavior rampUpProfile.increment rampUpProfile.interval rampUpProfile.max rampUpProfile.min rampUpProfile.type rateDist.scope rateDist.type rateDist.unit sessions.closeFast sessions.max sessions.maxPerSecond sessions.target sessions.targetPerSecond superflow tcp.add_timestamps tcp.delay_acks tcp.initial_receive_window tcp.mss tcp.retries tcp.retry_quantum_ms 21 full 60 cycle 11 full 0 1 N/A N/A calculated per_if constant mbps false 200 2000 1 1 BreakingPoint ClientSim HTTP true false 5,792 1,448 3 250 Default Value
833
834
835
Table 16-30: routingrobot parameters Parameter advancedUDP.checksumField advancedUDP.checksumVal advancedUDP.lengthField advancedUDP.lengthVal dstPort duration.durationTime duration.durationFrames payload.data payload.dataWidth payload.type payloadAdvanced.udfDataWidth payloadAdvanced.udfLength payloadAdvanced.udfMode payloadAdvanced.udfOffset rateDist.increment rateDist.rate rateDist.type rateDist.unit sizeDist.increment sizeDist.max sizeDist.min sizeDist.rate sizeDist.type sizeDist.unit slowStart srcPort
*N/A denotes that no value has been defined for the parameter.
Default Value actual N/A actual N/A 1 00:00:30 N/A N/A eight random eight N/A disabled N/A N/A N/A constant mbps N/A N/A 512 N/A constant frame true 1
836
837
Table 16-31: routingrobot_10G parameters Parameter payload.data payload.dataWidth payload.type payloadAdvanced.udfDataWidth payloadAdvanced.udfLength payloadAdvanced.udfMode payloadAdvanced.udfOffset rateDist.increment rateDist.rate rateDist.type rateDist.unit sizeDist.increment sizeDist.max sizeDist.min sizeDist.rate sizeDist.type sizeDist.unit slowStart srcPort N/A eight random eight N/A disabled N/A N/A N/A constant mbps N/A N/A 512 N/A constant frame true 1 Default Value
838
Table 16-32: routingrobot_5G parameters Parameter advancedIPv4.lengthVal advancedIPv4.optionHeaderData advancedIPv4.optionHeaderField advancedIPv4.tos advancedIPv4.ttl advancedIPv6.extensionHeaderData advancedIPv6.extensionHeaderField advancedIPv6.flowLabel advancedIPv6.hopLimit advancedIPv6.lengthField advancedIPv6.lengthVal advancedIPv6.nextHeader advancedIPv6.prefixData advancedIPv6.trafficClass advancedUDP.checksumField advancedUDP.checksumVal advancedUDP.lengthField advancedUDP.lengthVal dstPort duration.durationTime duration.durationFrames payload.data payload.dataWidth payload.type payloadAdvanced.udfDataWidth payloadAdvanced.udfLength payloadAdvanced.udfMode payloadAdvanced.udfOffset N/A N/A disabled 0 32 N/A disabled 0 32 actual 0 0 2001 0 actual N/A actual N/A 1 00:00:30 N/A N/A eight random eight N/A disabled N/A Default Value
839
Table 16-32: routingrobot_5G parameters Parameter rateDist.increment rateDist.rate rateDist.type rateDist.unit sizeDist.increment sizeDist.max sizeDist.min sizeDist.rate sizeDist.type sizeDist.unit slowStart srcPort N/A N/A constant mbps N/A N/A 512 N/A constant frame true 1 Default Value
840
Table 16-33: routingrobot_1000 parameters Parameter advancedIPv6.flowLabel advancedIPv6.hopLimit advancedIPv6.lengthField advancedIPv6.lengthVal advancedIPv6.nextHeader advancedIPv6.prefixData advancedIPv6.trafficClass advancedUDP.checksumField advancedUDP.checksumVal advancedUDP.lengthField advancedUDP.lengthVal dstPort duration.durationTime duration.durationFrames payload.data payload.dataWidth payload.type payloadAdvanced.udfDataWidth payloadAdvanced.udfLength payloadAdvanced.udfMode payloadAdvanced.udfOffset rateDist.increment rateDist.rate rateDist.type rateDist.unit sizeDist.increment sizeDist.max sizeDist.min 0 32 actual 0 0 2001 0 actual N/A actual N/A 1 00:00:30 N/A N/A eight random eight N/A disabled N/A N/A N/A constant mbps N/A N/A 512 Default Value
841
Table 16-33: routingrobot_1000 parameters Parameter sizeDist.rate sizeDist.type sizeDist.unit slowStart srcPort
*N/A denotes that no value has been defined for the parameter.
842
Table 16-35: security_2 Parameters Parameters evasionProfile maxAttacksPerSecond maxPacketsPerSecond paramOverrides randomSeed
*N/A denotes that no value has been defined for the parameter.
843
Table 16-37: security_4 Parameters Parameters attackTimeoutSeconds evasionProfile maxAttacksPerSecond maxPacketsPerSecond paramOverrides randomSeed
*N/A denotes that no value has been defined for the parameter.
844
845
Table 16-39: sessionsender Parameters Parameter rateDist.type rateDist.unit sessions.max sessions.maxPerSecond sessions.target sessions.targetPerSecond sessions.closeFast srcPortDist.max srcPortDist.min srcPortDist.type tcp.add_timestamps tcp.delay_acks tcp.initial_receive_window tcp.mss tcp.retries tcp.retry_quantum_ms
*N/A denotes that no value has been defined for the parameter.
Default Value constant mbps 5000000 500000 1 1 false 61000 32768 random true false 5792 1460 3 250
846
Table 16-40: sessionsender_http parameters Parameter payload.data payload.type payloadSizeDist.max payloadSizeDist.min payloadSizeDist.type rampDist.down rampDist.downBehavior rampDist.steady rampDist.steadyBehavior rampDist.up rampDist.upBehavior rampUpProfile.increment rampUpProfile.interval rampUpProfile.max rampUpProfile.min rampUpProfile.type rateDist.scope rateDist.type rateDist.unit sessions.max sessions.maxPerSecond sessions.target sessions.targetPerSecond srcPortDist.max srcPortDist.min srcPortDist.type tcp.add_timestamps tcp.delay_acks N/A http 1,400 1,400 constant 1 full 28 cycle 1 full N/A N/A N/A N/A calculated per_if constant mbps 500 1,000 1 1 61,000 32,768 random true false Default Value
847
Table 16-40: sessionsender_http parameters Parameter tcp.initial_receive_window tcp.mss tcp.retries tcp.retry_quantum_ms 5,792 1,448 3 250 Default Value
848
Table 16-41: sessionsender_large Parameters Parameter rampUpProfile.max rampUpProfile.min rampUpProfile.type rateDist.scope rateDist.type rateDist.unit sessions.max sessions.maxPerSecond sessions.target sessions.targetPerSecond srcPortDist.max srcPortDist.min srcPortDist.type tcp.add_timestamps tcp.delay_acks tcp.initial_receive_window tcp.mss tcp.retries tcp.retry_quantum_ms
*N/A denotes that no value has been defined for the parameter.
Default Value N/A N/A calculated per_if constant mbps 1,000,000 125,000 1 1 61,000 32,768 random true false 5,792 1,448 3 250
849
Table 16-42: sessionsender_max Parameters Parameter ip.tos ip.ttl packetsPerSession payload.data payload.type payloadSizeDist.max payloadSizeDist.min payloadSizeDist.type rampDist.down rampDist.downBehavior rampDist.steady rampDist.steadyBehavior rampDist.up rampDist.upBehavior rampUpProfile.increment rampUpProfile.interval rampUpProfile.max rampUpProfile.min rampUpProfile.type rateDist.scope rateDist.type rateDist.unit sessions.max sessions.maxPerSecond sessions.target sessions.targetPerSecond srcPortDist.max srcPortDist.min 0 32 20 N/A constant N/A 1,448 random 10 full 40 cycle 10 full N/A N/A N/A N/A calculated per_if constant mbps 15,000,000 750,000 1 1 61,000 32,768 Default Value
850
Table 16-42: sessionsender_max Parameters Parameter srcPortDist.type tcp.add_timestamps tcp.delay_acks tcp.initial_receive_window tcp.mss tcp.retries tcp.retry_quantum_ms
*N/A denotes that no value has been defined for the parameter.
851
Table 16-43: sessionsender_medium Parameters Parameter rampDist.up rampDist.upBehavior rampUpProfile.increment rampUpProfile.interval rampUpProfile.max rampUpProfile.min rampUpProfile.type rateDist.scope rateDist.type rateDist.unit sessions.max sessions.maxPerSecond sessions.target sessions.targetPerSecond srcPortDist.max srcPortDist.min srcPortDist.type tcp.add_timestamps tcp.delay_acks tcp.initial_receive_window tcp.mss tcp.retries tcp.retry_quantum_ms
*N/A denotes that no value has been defined for the parameter.
Default Value 1 full N/A N/A N/A N/A calculated per_if constant mbps 50,000 50,000 1 1 61,000 32,768 random true false 5,792 1,448 3 250
852
853
Table 16-44: sessionsender_synflood Parameters Parameter sessions.max sessions.maxPerSecond sessions.target sessions.targetPerSecond srcPortDist.max srcPortDist.min srcPortDist.type tcp.add_timestamps tcp.delay_acks tcp.initial_receive_window tcp.mss tcp.retries tcp.retry_quantum_ms 500,000 500,000 0 0 61,000 32,768 random true false 5,792 1,448 3 250 Default Value
*N/A denotes that no value has been defined for the parameter.
854
Table 16-45: sessionsender_udp Parameters Parameter rateDist.scope rateDist.unit rateDist.type sessions.max sessions.maxPerSecond sessions.target sessions.targetPerSecond sessions.closeFast ip.ttl ip.tos tcp.mss tcp.retry_quantum_ms tcp.retries tcp.delay_acks tcp.initial_receive_window tcp.add_timestamps rampUpProfile.type rampDist.up rampDist.upBehavior rampDist.steady rampDist.steadyBehavior rampDist.down rampDist.downBehavior packetsPerSession packetsPerSession.enabled packetsPerSession.auth packetsPerSession.min packetsPerSession.max per_if mbps constant 5000000 500000 1 1 false 32 0 1460 250 3 false 5792 true calculated 0 full 60 cycle 0 full 0 false none sslv3 tlsv1 Default Value
855
Table 16-45: sessionsender_udp Parameters Parameter packetsPerSession.clientsessionreuse packetsPerSession.clientsessiontimeout packetsPerSession.cipher loadprofile delayStart 100 300 RSA_AES_128_SHA None 0 Default Value
856
Table 16-46: stackscrambler parameters Parameter sizeDist.unit srcPort targetStack packet 0 All Valid Values
*N/A denotes that no value has been defined for the parameter.
857
Table 16-47: stackscrambler_tcp parameters Parameter srcPort targetStack 0 TCP Valid Values
*N/A denotes that no value has been defined for the parameter.
858
*N/A denotes that no value has been defined for the parameter.
Syntax
$componentName configure -option value
Table 16-49 on page 859 breaks down the elements of configuring test components. Table 16-49: Configuring Test Components Element componentName configure Description The name of the object created for the test component. The command that allows you to configure the parameters for a test component or can be used to return all parameters and their values for a component. The name of the parameter you want to modify. The value you want to set the parameter to.
-option value
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 $c1 $c1 $c1 reservePort reservePort reservePort reservePort 1 1 1 1 0; 1; 2; 3; #reserves #reserves #reserves #reserves port port port port 0 1 2 3 on slot 1 on slot 1 on slot 1 slot 1
set test1 [$var createTest -name myTest]; #creates an empty test $test1 configure -neighborhood Neighborhood1; #sets the Network Neighborhood for the test to be Neighborhood 1 $test1 configure -dut Profile1; #sets the DUT Profile to Profile1
859
set c1 [$test1 createComponent appsim_enterprise #auto 1 2]; # creates an App Sim component with client interface 1 and server interface 2 $c1 configure -rateDist.min 900 -duration.durationFrames 90; # sets the data rate to 900 mbps and the test duration to 90 seconds set c2 [$test1 createComponent security #auto 1 2]; # creates a Security component with client interface 1 and server interface 2 $c2 configure -attackPlan Strike Level 2; sets the Attack Plan to Strike Level 2 $test1 save; #saves the test $test1 run; #runs the test
Component Parameters
The following sections lists the parameters available for each test component. These parameters can be used to configure a test component in a Tcl script.
Example 1
$comp1 configure; returns the parameters and their values for the test component in comp1 {-advanced.ethTypeField constant constant} {-advanced.ethTypeVal FFFF FFFF} {-duration.durationTime seconds seconds} {duration.durationFrames 30 30} {-payload.data {} {}} {payload.dataWidth eight eight} {-payload.type random random} {payloadAdvanced.udfDataWidth eight eight} {-payloadAdvanced.udfLength {} {}} {-payloadAdvanced.udfMode disabled disabled} {payloadAdvanced.udfOffset {} {}} {-rateDist.increment {} {}} {rateDist.max {} {}} {-rateDist.min 500 500} {-rateDist.rate {} {}} {rateDist.type constant constant} {-rateDist.unit mbps mbps} {sizeDist.increment {} {}} {-sizeDist.max {} {}} {-sizeDist.min 1024 1024} {-sizeDist.rate {} {}} {-sizeDist.type constant constant} {sizeDist.unit frame frame} {-slowStart true true}
860
Application Simulator Parameters Table 16-50 on page 861 lists the parameters for Application Simulator and their default configurations. When referencing these options (or parameters) in the Tcl interface, each parameter is preceded with a dash (-). Table 16-50: Application Simulator Parameters Parameter ip.tos Description Sets the maximum bound on the number-of-hops that an IP datagram can exist in an internet system before it is dropped. Sets the maximum bound on the number-of-hops that an IP datagram can exist in an internet system before it is dropped. Sets the Load Profile that will be used for the test. If a Load Profile is selected, then all session-related parameters defined on the Parameters tab will be ignored. 0 ff Valid Values
ip.ttl
0 255
loadprofile
None BreakingPoint 10K Maximum Megabits per second BreakingPoint Maximum Simultaneous Sessions BreakingPoint 1K Maximum Megabits per second BreakingPoint 1K Maximum Simultaneous Sessions BreakingPoint Default BreakingPoint Maximum Sessions per second
profile
Sets the Application Profile that determines the mix of application that will be used in the test traffic.
861
Table 16-50: Application Simulator Parameters Parameter rampDist.down Description Sets the amount of time open sessions have to close. Sets how the component will close sessions during the ramp down phase. Valid Values 0 1,000,000
rampDist.downBehavior
full The full TCP session close is performed. half The full TCP session close is performed, but the final ACK is omitted. rst Close all sessions by sending TCP RST (reset) packets.
rampDist.steady
Sets the amount of time sessions have to open, send data, and close. The system will have to maintain the number of open session for this time period. Determines how sessions are handled during the steady-state phase.
0 1,000,000
rampDist.steadyBehavior
cycle Sessions are closed as they finish sending data, and new sessions are opened. hold No existing sessions opened during Ramp Up are closed. cycle + rst Once the session has finished sending data, it will wait for the server to close the session. After the server has closed the session, the client will send a RST.
rampDist.up
0 1,000,000
862
Table 16-50: Application Simulator Parameters Parameter rampDist.upBehavior Description Determines how sessions are opened during the ramp up phase. Valid Values full The full TCP handshake is performed. full + data The full TCP handshake is performed, and data will be sent once the session opens. full + data + close The full TCP handshake is performed, and data will be sent once the session options. Sessions are closed as they finish sending data and new sessions are opened. half The full TCP handshake is performed, but the final ACK is omitted. syn Only SYN packets are sent. data flood Only PSH data packets are sent. In this mode, the state machine is bypassed, so no connections are set up; therefore, the ACKs will be be invalid. Use this mode for testing QoS routing, not stateful DUTs. rampUpProfile.increment Sets the number of connections that the connection establishment rate will increment by for the time specified for rampUpProfile.interval. 1 500,000
863
Table 16-50: Application Simulator Parameters Parameter rampUpProfile.interval Description Sets the time interval that rampUpProfile.increme nt will use to increment the connection establishment rate. Sets the maximum connection establishment rate that will the system will attempt to reach during the ramp up phase. Once the system reaches this rate, it will continue to hold this rate until the ramp up phase ends. Sets the minimum connection establishment rate that will be used to start the ramp up phase. Valid Values 1 1,000,000
rampUpProfile.max
1 750,000*
rampUpProfile.min
1 750,000*
864
Table 16-50: Application Simulator Parameters Parameter rampUpProfile.type Description Determines whether the connection establishment rate is a constant rate or an incremental rate as defined by the user. Valid Values calculated The connection establishment rate will be a constant rate. It is calculated by taking the maximum number of sessions divided by the ramp up time. This option allows the component to attempt to reach the maximum number of connections during the ramp up phase. If this option is used, all other parameters listed under the Ramp Up Profile group will be disabled. stair step The connection establishment rate is an incremental rate, and it will be determined by the values input for Minimum Connection Rate, Maximum Connection Rate, Increment N connections per second, and Every N seconds. This option sets the minimum connection rate that the system will start with and increment until it reaches the maximum connection rate or until the ramp up phase ends. If the maximum connection rate is met, the system will hold that rate until the ramp up phase is over.
865
Table 16-50: Application Simulator Parameters Parameter rateDist.scope Description Uses the value defined for the data rate as the limit for the transmitting and receiving interfaces or as the aggregate limit for the test component. Valid Values per_if Uses the data rate as the limit for the transmitting and receiving interfaces. aggregate Uses the data rate as an aggregate limit for the test component. Constant Uses rateDist.min as the data rate. Random Selects a random value between rateDist.min and rateDist.max as the data rate. Range Starts at rateDist.min and increments until it reaches rateDist.max. The system uses an algorithm that determines the incremental value that will increase rateDist.min value. until it reaches rateDist.max. rateDist.unit Sets the unit of measurement for the data rate. mbps or fps
rateDist.type
866
Table 16-50: Application Simulator Parameters Parameter sessions.closeFast Description Disables the limit on the close rate. If this option is set to false, then the close rate is limited by the connection establishment rate. If this option is set to true, then the system will close the sessions as quickly as the bandwidth allows; therefore, the number of open sessions will be closer to the maximum number of simultaneous sessions set for the component. Sets the maximum number of concurrent sessions that can be set up by the system at a given time. Sets the maximum number of connections that can occur per second. The number of sessions that must open to pass the test. The number of sessions per second that must be reached to pass the test. Allows the size of the TCP header to be expanded by 12 32 bytes. Disable this parameter if you are generating TCP stacks with segment sizes greater than 1,460 and do not want to generate jumbo frames. Valid Values true or false
sessions.max
1 15,000,000*
sessions.maxPerSecond
1 750,000*
sessions.target
1 15,000,000*
sessions.targetPerSecond
1 750,000*
tcp.add_timestamps
true or false
867
Table 16-50: Application Simulator Parameters Parameter tcp.delay_acks Description Determines whether or not to delay the ACK of TCP segments. Enable this parameter to send the ACK on the next send, or disable this parameter to send the ACK separately on receive. Sets the size of the initial receive window for a new connection. Sets the maximum segment size that is used during the ramp up phase. Sets the number of times a connection is attempted before it is canceled. Sets the amount of time that elapses before a connection is retried. Sets whether applications will generate more complex, dynamic traffic, or will generate simpler, possibly more performant, traffic. Valid Values true or false
tcp.initial_receive_window
1 65,535
tcp.mss
512 9,146
tcp.retries
13
tcp.retry_quantum_ms
100 2,000
app.emphasis
performance or realism
868
Bit Blaster Parameters Table 16-51 on page 869 lists the parameters for Bit Blaster and their default configurations. When referencing these options (or parameters) in the Tcl interface, each parameter is preceded with a dash (-). Table 16-51: Bit Blaster Parameters Parameter advanced.ethTypeField Description Sets how the component will define Ethernet Length Type field for each packet. Valid Values constant Uses the value defined for advanced.ethTypeV al in the Ethernet Length Type field. length Uses the packet length in the Ethernet length/type field. Bit Blaster will only substitute the Ethernet length/type field with the packets length if the packet is less than or equal to 1,500 bytes in length and VLAN tagging is not used. advanced.ethTypeVal Determines the value that will be placed in the Ethernet Length Type field if advanced.ethTypeField is set to length. Sets the duration of the test. Sets the length of the test in frames. Defines the payload; this parameter is defined only if Payload.Type is set to User Defined. This value is inserted after the Ethernet header. Defines the width of the data (in bits) being inserted into the payload. 2E FFFF Values less than 2E will be replaced with 2E. hours, minutes, seconds 0 1,000,000,000 Hex values (numbers: 0 9, letters: a f)
payload.dataWidth
869
Table 16-51: Bit Blaster Parameters Parameter payload.type Description Sets how the payload is determined. Valid Values zeroes Payload is 0s. ones Payload is all 1s. random Payload is defined using random Hex values. increment Payload is defined using ascending values starting at 0. decrement Payload is defined using descending values starting at 0xff. predefined Payload is defined with standard hexadecimal notation. If the payload is smaller than the packet size, the Hex value will be repeated until it meets the packet size; however, if the payload is a userdefined Hex value that is larger than the packet size, the value will be truncated. payloadAdvanced.udfDataWidth Defines the width of the data (in bits) being incremented or decremented. Defines the UDF length (in bytes). eight, sixteen, or thirtytwo
payloadAdvanced.udfLength
1 9,202
870
Table 16-51: Bit Blaster Parameters Parameter payloadAdvanced.udfMode Description Sets how the component will overwrite the existing payload. Valid Values disabled No data or counter is inserted.
*counter Inserts a 1to-4 byte counter that increments every frame. The counter uses the value defined for UDF length. *random Inserts a 1to-end-of-payload sequence of random values. *increment Increments the payload starting at 0. Inserts a 1to-end-of-payload sequence of incrementing values using an 8, 16, or 32 bit width. *decrement Decrements the payload starting at 0xff. Inserts a 1-to-end-of-payload sequence of decrementing values using an 8, 16, or 32 bit width.
*Define payloadAdvanced.udfDataWidth, payloadAdvanced.udfLength , and payloadAdvanced.udfOffset to use this option.
payloadAdvanced.udfOffset
Defines the number of bytes from the beginning of the payload to place the UDF data. Sets the rate at which the data rate will increase or decrease. This parameter is used in conjunction with rateDist.rate.
0 9,201
rateDist.increment
-10,000 to 10,000
871
Table 16-51: Bit Blaster Parameters Parameter rateDist.rate Description Sets the time increment for increasing or decreasing the data rate. This parameter is used in conjunction with rateDist.increment. Sets how data rates are determined. Valid Values 1 30
rateDist.type
constant Uses rateDist.min as the data rate. random Selects a random value between rateDist.min and rateDist.max as the data rate. range Starts at rateDist.min and increments until it reaches rateDist.max. Once the maximum value is met, the data rate will restart at minimum value.
rateDist.unit
Sets the unit of measurement for the data rate. Sets the number of bytes to increase or decrease the packet size by; this parameter is used in conjunction with sizeDist.rate. Sets the maximum frame/ packet size; this parameter is used only if sizeDist.type is set to range.
mbps or fps
sizeDist.increment
-128 to 128
sizeDist.max
872
Table 16-51: Bit Blaster Parameters Parameter sizeDist.min Description Sets the minimum frame/ packet size, if sizeDist.type is set to constant. Otherwise, this is the minimum value used if sizeDist.type is set to range or random. Sets the time increment (in seconds) for increasing or decreasing the packet size; this parameter is used in conjunction with sizeDist.increment. Sets how frame/packet sizes are determined. Valid Values 64 9216 bytes (frames) 46 1500 bytes (packets)
sizeDist.rate
1 30
sizeDist.type
Constant Uses sizeDist.min for the frame/packet size. Random Selects a random value between sizeDist.min and sizeDist.max for the frame/packet size. Range Starts at sizeDist.min and increments until it reaches sizeDist.max. Once the maximum value is met, the packet/frame size will restart at the minimum value.
sizeDist.unit slowStart
Sets whether Bit Blaster uses frame or packets. Specifies whether the component can send a small amount of traffic to the DUT before ramping up to the full rate of the test. This allows switching devices to identify which port to send test traffic.
873
Client Simulator Parameters Table 16-52 on page 874 lists the parameters for Client Simulator and their default configurations. When referencing these options (or parameters) in the Tcl interface, each parameter is preceded with a dash (-). Table 16-52: Client Simulator Parameters Parameter ip.tos Description Sets the maximum bound on the number-of-hops that an IP datagram can exist in an internet system before it is dropped. Sets the maximum bound on the number-of-hops that an IP datagram can exist in an internet system before it is dropped. Sets the Load Profile that will be used for the test. If a Load Profile is selected, then all session-related parameters defined on the Parameters tab will be ignored. 0 ff Valid Values
ip.ttl
0 255
loadprofile
None BreakingPoint 10K Maximum Megabits per second BreakingPoint Maximum Simultaneous Sessions BreakingPoint 1K Maximum Megabits per second BreakingPoint 1K Maximum Simultaneous Sessions BreakingPoint Default BreakingPoint Maximum Sessions per second
superflow
874
Table 16-52: Client Simulator Parameters Parameter profile Description Sets the Application Profile that determines the mix of application that will be used in the test traffic. Sets the amount of time open sessions have to close. Sets how the component will close sessions during the ramp down phase. Valid Values A BreakingPoint Application Profile or a custom Application Profile 0 1,000,000
rampDist.down
rampDist.downBehavior
full The full TCP session close is performed. half The full TCP session close is performed, but the final ACK is omitted. rst Close all sessions by sending TCP RST (reset) packets.
rampDist.steady
Sets the amount of time sessions have to open, send data, and close. The system will have to maintain the number of open session for this time period. Determines how sessions are handled during the steady-state phase.
0 1,000,000
rampDist.steadyBehavior
cycle Sessions are closed as they finish sending data, and new sessions are opened. hold No existing sessions opened during Ramp Up are closed. cycle + rst Once the session has finished sending data, it will wait for the server to close the session. After the server has closed the session, the client will send a RST.
875
Table 16-52: Client Simulator Parameters Parameter rampDist.up Description Sets the duration for which new sessions can be opened. Determines how sessions are opened during the ramp up phase. Valid Values 0 1,000,000
rampDist.upBehavior
full The full TCP handshake is performed. full + data The full TCP handshake is performed, and data will be sent once the session opens. full + data + close The full TCP handshake is performed, and data will be sent once the session options. Sessions are closed as they finish sending data and new sessions are opened. half The full TCP handshake is performed, but the final ACK is omitted. syn Only SYN packets are sent. data flood Only PSH data packets are sent. In this mode, the state machine is bypassed, so no connections are set up; therefore, the ACKs will be be invalid. Use this mode for testing QoS routing, not stateful DUTs.
rampUpProfile.increment
Sets the number of connections that the connection establishment rate will increment by for the time specified for rampUpProfile.interval.
1 500,000
876
Table 16-52: Client Simulator Parameters Parameter rampUpProfile.interval Description Sets the time interval that rampUpProfile.increme nt will use to increment the connection establishment rate. Sets the maximum connection establishment rate that will the system will attempt to reach during the ramp up phase. Once the system reaches this rate, it will continue to hold this rate until the ramp up phase ends. Sets the minimum connection establishment rate that will be used to start the ramp up phase. Valid Values 1 1,000,000
rampUpProfile.max
1 750,000*
rampUpProfile.min
1 750,000*
877
Table 16-52: Client Simulator Parameters Parameter rampUpProfile.type Description Determines whether the connection establishment rate is a constant rate or an incremental rate as defined by the user. Valid Values calculated The connection establishment rate will be a constant rate. It is calculated by taking the maximum number of sessions divided by the ramp up time. This option allows the component to attempt to reach the maximum number of connections during the ramp up phase. If this option is used, all other parameters listed under the Ramp Up Profile group will be disabled. stair step The connection establishment rate is an incremental rate, and it will be determined by the values input for Minimum Connection Rate, Maximum Connection Rate, Increment N connections per second, and Every N seconds. This option sets the minimum connection rate that the system will start with and increment until it reaches the maximum connection rate or until the ramp up phase ends. If the maximum connection rate is met, the system will hold that rate until the ramp up phase is over.
878
Table 16-52: Client Simulator Parameters Parameter rateDist.scope Description Uses the value defined for the data rate as the limit for the transmitting and receiving interfaces or as the aggregate limit for the test component. Valid Values per_if Uses the data rate as the limit for the transmitting and receiving interfaces. aggregate Uses the data rate as an aggregate limit for the test component. Constant Uses rateDist.min as the data rate. Random Selects a random value between rateDist.min and rateDist.max as the data rate. Range Starts at rateDist.min and increments until it reaches rateDist.max. The system uses an algorithm that determines the incremental value that will increase rateDist.min value. until it reaches rateDist.max. rateDist.unit Sets the unit of measurement for the data rate. mbps or fps
rateDist.type
879
Table 16-52: Client Simulator Parameters Parameter sessions.closeFast Description Disables the limit on the close rate. If this option is set to false, then the close rate is limited by the connection establishment rate. If this option is set to true, then the system will close the sessions as quickly as the bandwidth allows; therefore, the number of open sessions will be closer to the maximum number of simultaneous sessions set for the component. Sets the maximum number of concurrent sessions that can be set up by the system at a given time. Sets the maximum number of connections that can occur per second. The number of sessions that must open to pass the test. The number of sessions per second that must be reached to pass the test. Allows the size of the TCP header to be expanded by 12 32 bytes. Disable this parameter if you are generating TCP stacks with segment sizes greater than 1,460 and do not want to generate jumbo frames. Valid Values true or false
sessions.max
1 15,000,000*
sessions.maxPerSecond
1 750,000*
sessions.target
1 15,000,000*
sessions.targetPerSecond
1 750,000*
tcp.add_timestamps
true or false
880
Table 16-52: Client Simulator Parameters Parameter tcp.delay_acks Description Determines whether or not to delay the ACK of TCP segments. Enable this parameter to send the ACK on the next send, or disable this parameter to send the ACK separately on receive. Sets the size of the initial receive window for a new connection. Sets the maximum segment size that is used during the ramp up phase. Sets the number of times a connection is attempted before it is canceled. Sets the amount of time that elapses before a connection is retried. Valid Values true or false
tcp.initial_receive_window
1 65,535
tcp.mss
512 9,146
tcp.retries
13
tcp.retry_quantum_ms
100 2,000
Recreate Parameters
881
Table 16-53 on page 882 lists the parameters for Recreate and their default configurations. When referencing these options (or parameters) in the Tcl interface, each parameter is preceded with a dash (-). Table 16-53: Recreate Parameters Parameter behavior Description Determines whether the Recreate test component uses the data in the capture file or the parameters defined for the component. Valid Values file Uses the settings within the capture file to recreate traffic. user Uses the Recreate parameters options to recreate traffic. Only the payload will be used. PCAP file name
file
The PCAP file the system will use to pull application payloads. Configures the TOS field used for all IP packets Sets the maximum bound on the number-of-hops that an IP datagram can exist in an internet system before it is dropped.
ip.tos ip.ttl
0 ff 0 255
882
Table 16-53: Recreate Parameters Parameter loadprofile Description Sets the Load Profile that will be used for the test. If a Load Profile is selected, then all session-related parameters defined on the Parameters tab will be ignored. Valid Values None BreakingPoint 10K Maximum Megabits per second BreakingPoint Maximum Simultaneous Sessions BreakingPoint 1K Maximum Megabits per second BreakingPoint 1K Maximum Simultaneous Sessions BreakingPoint Default BreakingPoint Maximum Sessions per second rampDist.down Sets the amount of time open sessions have to close. Sets how the component will close sessions during the ramp down phase. 0 1,000,000
rampDist.downBehavior
full The full TCP session close is performed. half The full TCP session close is performed, but the final ACK is omitted. rst Close all sessions by sending TCP RST (reset) packets.
883
Table 16-53: Recreate Parameters Parameter rampDist.steady Description Sets the amount of time sessions have to open, send data, and close. The system will have to maintain the number of open session for this time period. Determines how sessions are handled during the steady-state phase. Valid Values 0 1,000,000
rampDist.steadyBehavior
cycle Sessions are closed as they finish sending data, and new sessions are opened. hold No existing sessions opened during Ramp Up are closed. cycle + rst Once the session has finished sending data, it will wait for the server to close the session. After the server has closed the session, the client will send a RST.
rampDist.up
0 1,000,000
884
Table 16-53: Recreate Parameters Parameter rampDist.upBehavior Description Determines how sessions are opened during the ramp up phase. Valid Values full The full TCP handshake is performed. full + data The full TCP handshake is performed, and data will be sent once the session opens. full + data + close The full TCP handshake is performed, and data will be sent once the session options. Sessions are closed as they finish sending data and new sessions are opened. half The full TCP handshake is performed, but the final ACK is omitted. syn Only SYN packets are sent. data flood Only PSH data packets are sent. In this mode, the state machine is bypassed, so no connections are set up; therefore, the ACKs will be invalid. Use this mode for testing QoS routing, not stateful DUTs. rampUpProfile.increment Sets the number of connections that the connection establishment rate will increment by for the time specified for rampUpProfile.interval. 1 500,000
885
Table 16-53: Recreate Parameters Parameter rampUpProfile.interval Description Sets the time interval that rampUpProfile.increme nt will use to increment the connection establishment rate. Sets the maximum connection establishment rate that will the system will attempt to reach during the ramp up phase. Once the system reaches this rate, it will continue to hold this rate until the ramp up phase ends. Sets the minimum connection establishment rate that will be used to start the ramp up phase. Valid Values 1 1,000,000
rampUpProfile.max
1 750,000*
rampUpProfile.min
1 750,000*
886
Table 16-53: Recreate Parameters Parameter rampUpProfile.type Description Determines whether the connection establishment rate is a constant rate or an incremental rate as defined by the user. Valid Values calculated The connection establishment rate will be a constant rate. It is calculated by taking the maximum number of sessions divided by the ramp up time. This option allows the component to attempt to reach the maximum number of connections during the ramp up phase. stair step The connection establishment rate is an incremental rate, and it will be determined by the values input for Minimum Connection Rate, Maximum Connection Rate, Increment N connections per second, and Every N seconds. This option sets the minimum connection rate that the system will start with and increment until it reaches the maximum connection rate or until the ramp up phase ends. If the maximum connection rate is met, the system will hold that rate until the ramp up phase is over.
887
Table 16-53: Recreate Parameters Parameter rateDist.rate Description Sets the time increment for increasing or decreasing the data rate. This parameter is used in conjunction with rateDist.increment. Sets how data rates are determined. Valid Values 1 30
rateDist.type
constant Uses rateDist.min as the data rate. random Selects a random value between rateDist.min and rateDist.max as the data rate. range Starts at rateDist.min and increments until it reaches rateDist.max. Once the maximum value is met, the data rate will restart at minimum value.
rateDist.unit
Sets the unit of measurement for the data rate. Disables the limit on the close rate. If this option is set to false, then the close rate is limited by the connection establishment rate. If this option is set to true, then the system will close the sessions as quickly as the bandwidth allows; therefore, the number of open sessions will be closer to the maximum number of simultaneous sessions set for the component.
mbps or fps
sessions.closeFast
true or false
888
Table 16-53: Recreate Parameters Parameter sessions.max Description Sets the maximum number of concurrent sessions that can be set up by the system at a given time. Sets the maximum number of sessions that can occur per second. The number of sessions that must open to pass the test. The number of connections per second that must be reached to pass the test. Allows the size of the TCP header to be expanded by 12 32 bytes. Disable this parameter if you are generating TCP stacks with segment sizes greater than 1,460 and do not want to generate jumbo frames. Determines whether or not to delay the ACK of TCP segments. Enable this parameter to send the ACK on the next send, or disable this parameter to send the ACK separately on receive. Sets the size of the initial receive window for a new connection. Sets the maximum segment size that is used during the ramp up phase. Valid Values 1 15,000,000
sessions.maxPerSecond
1 750,000*
sessions.target
1 15,000,000*
sessions.targetPerSecond
1 750,00*0
tcp.add_timestamps
true or false
tcp.delay_acks
true or false
tcp.initial_receive_window
1 65,535
tcp.mss
512 9,146
889
Table 16-53: Recreate Parameters Parameter tcp.retries Description Sets the number of times a connection is attempted before it is canceled. Sets the amount of time that elapses before a connection is retried. Valid Values 13
tcp.retry_quantum_ms
100 2,000
Routing Robot Parameters Table 16-54 on page 890 lists the parameters for Routing Robot and their default configurations. When referencing these options (or parameters) in the Tcl interface, each parameter is preceded with a dash (-). Table 16-54: Routing Robot Parameters Parameter advancedIPVersion advancedIPv4.checksumField Description Enables IPv4 or IPv6 support. Sets how the Checksum field in the IP header is determined. Valid Values IPv4 or IPv6 Actual Uses the correct checksum in the Checksum field of the IP header. Constant Uses advancedIPv4.check sumVal in the Checksum field of the IP header. advancedIPv4.checksumVal Defines the Total Length field of the IP header when advancedIPv4.checksu mField is constant. Sets how the Total Length field in the IP header is determined. 0 FFFF
advancedIPv4.lengthField
actual Uses the correct IP datagram length in the Total Length field of the IP header. constant Uses advancedIPv4.length Val in the Total Length field of the IP header.
890
Table 16-54: Routing Robot Parameters Parameter advancedIPv4.lengthVal Description Defines the Total Length field of the IP header when advancedIPv4.lengthFie ld is constant. Defines the IPv4 option data, if advancedIPv4.optionHe aderField is enabled. Allows up to 56 bytes of IP option data to be specified. If this parameter is disabled, the UDP header will follow the IPv4 header. Configures the TOS field used for all IP packets. Sets the maximum bound on the number-of-hops that an IP datagram can exist in an internet system before it is dropped. Defines the IPv6 extension header(s), if advancedIPv6.extensio nHeaderField is enabled. Allows up to 56 bytes to be specified for the IPv6 extension header(s). If this parameter is enabled, IPv6.Next header and IPv6.Extension header data must be defined. If this parameter is disabled, the UDP header will follow the IPv6 header. Valid Values 0 255
advancedIPv4.optionHeaderDat a
advancedIPv4.optionHeaderFiel d
advancedIPv4.tos advancedIPv4.ttl
0 ff 0 255
advancedIPv6.extensionHeader Data
advancedIPv6.extensionHeader Field
enabled or disabled
891
Table 16-54: Routing Robot Parameters Parameter advancedIPv6.flowLabel Description Configures the Flow label field used for all IP packets. Values of 0 through FFFF (hexadecimal) are supported. Sets the maximum bound on the number-of-hops that an IP datagram can exist in an internet system before it is dropped. Sets how the Payload Length field in the IP header is determined. Valid Values 0 FFFF
advancedIPv6.hopLimit
0 255
advancedIPv6.lengthField
actual Uses the correct IP datagram length in the Packet Length field of the IP header. constant Uses advancedIPv6.length Val in the Packet Length field of the IP header.
advancedIPv6.lengthVal
Defines the Packet Length field of the IP header when advancedIPv6.lengthFie ld is constant. Defines the Next header in the IPv6 header if advancedIPv6.extensio nHeaderField is Enabled. This is the extension header that will appear first in the Extension header data. Configure this value to 11 to indicate a UDP payload.
0 65,535
advancedIPv6.nextHeader
0 ff
advancedIPv6.prefixData
892
Table 16-54: Routing Robot Parameters Parameter advancedIPv6.trafficClass Description Defines the Traffic Class field used for all IP packets Determines the value that is placed into the checksum field of the UDP header. Valid Values 0 FF
advancedUDP.checksumField
actual Uses the correct UDP checksum in the checksum field of the UDP header. constant Uses the value defined for UDP.Checksum value in the checksum field of the UDP header. Using a constant UDP checksum may cause the test results to report invalid IP checksums.
advancedUDP.checksumVal
Defines the value that is used in the checksum field of the UDP header. This parameter is defined only if advancedUDP.lengthFie ld is set to constant. Determines the UDP datagram length that is placed in the length field of the UDP header.
0 FFFF
advancedUDP.lengthField
actual Uses the correct UDP datagram length in the length field of the UDP header. constant Uses the value defined for UDP. Length value in the length field of the UDP header.
893
Table 16-54: Routing Robot Parameters Parameter advancedUDP.lengthVal Description Defines the UDP datagram length that is placed in the length field of the UDP header. This parameter is defined only if advancedUDP.lengthFie ld is set to constant. Establishes the UDP port to which packets are addressed. Defines how the bits will be masked for each packet. This mask is rightjustified and only applies to UDP destination ports. Sets the duration of the test. Sets the length of the test in frames. Defines the payload; this parameter is defined only if payload.type is set to predefined. This value is inserted after the Ethernet header. Defines the width of the data (in bits) being inserted into the payload. Valid Values 0 65,535
dstPort
1 65,535
dstPortMask
1 16
payload.dataWidth
894
Table 16-54: Routing Robot Parameters Parameter payload.type Description Sets how the payload is determined. Valid Values
zeroes Payload is 0s. ones Payload is all 1s. random Payload is defined using random Hex values. increment Payload is defined using ascending values starting at 0. decrement Payload is defined using descending values starting at 0xff. predefined Payload is defined by the user using standard hexadecimal notation. If the payload is smaller than the packet size, then the Hex value will be repeated until it meets the packet size; however, if the payload is a user-defined Hex value that is greater than the packet size, the value will be truncated.
payloadAdvanced.udfDataWidth
Defines the width of the data (in bits) being incremented or decremented. Defines the UDF length (in bytes).
payloadAdvanced.udfLength
1 9,174
895
Table 16-54: Routing Robot Parameters Parameter payloadAdvanced.udfMode Description Sets how the component will overwrite the existing payload. Valid Values disabled No data or counter is inserted.
*counter Inserts a 1to-4 byte counter that increments every frame. The counter uses the value defined for UDF length. *random Inserts a 1to-end-of-payload sequence of random values. *increment Increments the payload starting at 0. Inserts a 1to-end-of-payload sequence of incrementing values using an 8, 16, or 32 bit width. *decrement Decrements the payload starting at 0xff. Inserts a 1-to-end-of-payload sequence of decrementing values using an 8, 16, or 32 bit width.
*Define payloadAdvanced.udfDataWidth, payloadAdvanced.udfLength and payloadAdvanced.udfOffset to use this option.
payloadAdvanced.udfOffset
Defines the number of bytes from the beginning of the payload to place the UDF data. Sets the rate at which the data rate will increase or decrease. This parameter is used in conjunction with rateDist.rate.
0 9,173
rateDist.increment
-10,000 to 10,000
896
Table 16-54: Routing Robot Parameters Parameter rateDist.rate Description Sets the time increment for increasing or decreasing the data rate. This parameter is used in conjunction with rateDist.increment. Sets how data rates are determined. Valid Values 1 30
rateDist.type
constant Uses rateDist.min as the data rate. random Selects a random value between rateDist.min and rateDist.max as the data rate. range Starts at rateDist.min and increments until it reaches rateDist.max. Once the maximum value is met, the data rate will restart at minimum value.
rateDist.unit
Sets the unit of measurement for the data rate. Sets the number of bytes to increase or decrease the packet size by; this parameter is used in conjunction with sizeDist.rate. Sets the maximum frame/ packet size; this parameter is used only if sizeDist.type is set to range.
mbps or fps
sizeDist.increment
-128 to 128
sizeDist.max
897
Table 16-54: Routing Robot Parameters Parameter sizeDist.min Description Sets the minimum frame/ packet size, if sizeDist.type is set to constant. Otherwise, this is the minimum value used if sizeDist.type is set to range or random. Sets the time increment (in seconds) for increasing or decreasing the packet size; this parameter is used in conjunction with sizeDist.increment. Sets how frame/packet sizes are determined. Valid Values 64 9216 bytes (frames) 46 1500 bytes (packets)
sizeDist.rate
1 30
sizeDist.type
Constant Uses sizeDist.min for the frame/packet size. Random Selects a random value between sizeDist.min and sizeDist.max for the frame/packet size. Range Starts at sizeDist.min and increments until it reaches sizeDist.max. Once the maximum value is met, the packet/frame size will restart at the minimum value.
sizeDist.unit slowStart
Sets whether Bit Blaster uses frame or packets. Specifies whether the component can send a small amount of traffic to the DUT before ramping up to the full rate of the test. This allows switching devices to identify which port to send test traffic.
898
Table 16-54: Routing Robot Parameters Parameter srcPort Description Establishes the UDP port from which packets are addressed. Defines how the bits will be masked for each packet. This mask is rightjustified and only applies to UDP source ports. Determines how the UDP destintation port is modified. Valid Values 1 65,535
srcPortMask
1 16
udpDstPortMode
constant Uses the port value defined for Source Port. random Selects a random port value between 1 and 65,535. increment Starts at the Destination Port value and increments the port value by 1. decrement Starts at the Destination Port value and decrements the port value by 1.
udpSrcPortMode
constant Uses the port value defined for Source Port. random Selects a random port value between 1 and 65,535. increment Starts at the Source Port value and increments the port value by 1. decrement Starts at the Source Port value and decrements the port value by 1.
899
Security Parameters Table 16-55 on page 900 lists the parameters for Security and their default configurations. When referencing these options (or parameters) in the Tcl interface, each parameter is preceded with a dash (-). Table 16-55: Security Parameters Parameter attackPlan Description Sets the Strike List the Security component will use to derive its attacks. Sets the number of times to attempt an attack before determining that the DUT successfully blocked the attack Sets the amount of time the system will wait for a packet to arrive at its destination before resending the attack or determining that the DUT successfully blocked the attack. Sets the default evasion options for the Strikes. Sets the maximum number of attacks sent every second. The maximum number of Strikes that will run simultaneously: Single Strike - Will only run one strike at a time. Default - Will run up to five strikes concurrently. Sets the maximum number of packets sent per second Valid Values A Strike List
attackRetries
0 100
attackTimeoutSeconds
0 3,600
evasionProfile maxAttacksPerSecond
maxConcurrAttacks
15
maxPacketsPerSecond
0 1,000
900
Table 16-55: Security Parameters Parameter paramOverrides Description Overrides any of the evasion options set through the Evasion Setting or the Strike List. Determines whether the test will generate static or dynamic attacks. 0 will randomize the content of each strike in the strike series. Any other value defined here will keep the strike content static. N/A Valid Values
randomSeed
0 4,294,967,295
Session Sender Parameters Table 16-56 on page 901 lists the parameters for Session Sender and their default configurations. When referencing these options (or parameters) in the Tcl interface, each parameter is preceded with a dash (-). Table 16-56: Session Sender Parameters Parameter dstPortDist.max Description Sets the maximum destination port number, if dstPortDist.type is Range or Random. Sets the minimum destination port number, if dstPortDist.type is range or random. Otherwise, this will be the value used for the destination port. Valid Values 0 65,535
dstPortDist.min
0 65,535
901
Table 16-56: Session Sender Parameters Parameter dstPortDist.type Description Sets how the component will obtain the destination ports for TCP connections. Valid Values constant Uses dstPortDist.min as the source port. random Uses random values between dstPortDist.min and dstPortDist.max. range Increments dstPortDist.min by one until it reaches dstPortDist.min. Once the port number reaches the maximum destination port number, it will reset to the minimum destination port number. ip.tos ip.ttl Configures the TOS field used for all IP packets. Sets the maximum bound on the number-of-hops that an IP datagram can exist in an internet system before it is dropped. 0 ff 0 255
902
Table 16-56: Session Sender Parameters Parameter loadprofile Description Sets the Load Profile that will be used for the test. If a Load Profile is selected, then all session-related parameters defined on the Parameters tab will be ignored. Valid Values None BreakingPoint 10K Maximum Megabits per second BreakingPoint Maximum Simultaneous Sessions BreakingPoint 1K Maximum Megabits per second BreakingPoint 1K Maximum Simultaneous Sessions BreakingPoint Default BreakingPoint Maximum Sessions per second packetsPerSession Specifies how many data packets are sent during an open session. Defines the payload; this parameter is defined only if payload.type is set to predefined. This value is inserted after the Ethernet header. Sets the protocol for Session Sender 1 1,000
payload.data
payload.transport
TCP UDP ICMP UDP Lossy All (Combines TCP, UDP, and ICMP)
903
Table 16-56: Session Sender Parameters Parameter payload.type Description Sets how the payload is determined. Valid Values zeroes Payload is 0s. ones Payload is all 1s. random Payload is defined using random Hex values. http Payload consists of a simple HTTP 1.0 GET request for the '/' URI, padded to match the payload size distribution. predefined Payload is defined by the user using standard hexadecimal notation. If the payload is smaller than the packet size, then the Hex value will be repeated until it meets the packet size; however, if the payload is a userdefined Hex value that is greater than the packet size, the value will be truncated. payloadSizeDist.max Sets the maximum UDP payload and TCP segment size. Sets the minimum UDP payload and TCP segment size. 0 9,416
payloadSizeDist.min
0 9,416
904
Table 16-56: Session Sender Parameters Parameter payloadSizeDist.type Description Sets how the component will define the UDP payload and the TCP segment size. Valid Values constant All payloads will use the size defined for payloadSizeDist.min. range All payloads will use the size defined for payloadSizeDist.min and increment to the size defined for payloadSizeDist.max. The system uses an algorithm that determines the incremental value that will increase payloadSizeDist.min so that it reaches payloadSizeDist.max. random All payloads will have sizes that are randomly chosen between payloadSizeDist.min and payloadSizeDist.max . rampDist.down Sets the amount of time open sessions have to close. Sets how the component will close sessions during the ramp down phase. 0 1,000,000
rampDist.downBehavior
full The full TCP session close is performed. half The full TCP session close is performed, but the final ACK is omitted. rst Close all sessions by sending TCP RST (reset) packets.
905
Table 16-56: Session Sender Parameters Parameter rampDist.steady Description Sets the amount of time sessions have to open, send data, and close. The system will have to maintain the number of open session for this time period. Determines how sessions are handled during the steady-state phase. Valid Values 0 1,000,000
rampDist.steadyBehavior
cycle Sessions are closed as they finish sending data, and new sessions are opened. hold No sessions opened during Ramp Up are closed. cycle + rst Once a session is closed, the server will respond with a RST and change to the TCP CLOSED state. This option bypasses the TCP TIME_WAIT state.
rampDist.up
0 1,000,000
906
Table 16-56: Session Sender Parameters Parameter rampDist.upBehavior Description Determines how sessions are opened during the ramp up phase. Valid Values full The full TCP handshake is performed. full + data The full TCP handshake is performed, and data will be sent once the session opens. full + data + close The full TCP handshake is performed, and data will be sent once the session options. Sessions are closed as they finish sending data and new sessions are opened. half The full TCP handshake is performed, but the final ACK is omitted. syn Only SYN packets are sent. data flood Only PSH data packets are sent. In this mode, the state machine is bypassed, so no connections are set up; therefore, the ACKs will be invalid. Use this mode for testing QoS routing, not stateful DUTs. rampUpProfile.increment Sets the number of connections that the connection establishment rate will increment by for the time specified for rampUpProfile.interval. 1 500,000
907
Table 16-56: Session Sender Parameters Parameter rampUpProfile.interval Description Sets the time interval that rampUpProfile.increme nt will use to increment the connection establishment rate. Sets the maximum connection establishment rate that will the system will attempt to reach during the ramp up phase. Once the system reaches this rate, it will continue to hold this rate until the ramp up phase ends. Sets the minimum connection establishment rate that will be used to start the ramp up phase. Valid Values 1 1,000,000
rampUpProfile.max
1 750,000*
rampUpProfile.min
1 750,000*
908
Table 16-56: Session Sender Parameters Parameter rampUpProfile.type Description Determines whether the connection establishment rate is a constant rate or an incremental rate as defined by the user. Valid Values calculated The connection establishment rate will be a constant rate. It is calculated by taking the maximum number of sessions divided by the ramp up time. This option allows the component to attempt to reach the maximum number of connections during the ramp up phase. If this option is used, all other parameters listed under the Ramp Up Profile group will be disabled. stair step The connection establishment rate is an incremental rate, and it will be determined by the values input for Minimum Connection Rate, Maximum Connection Rate, Increment N connections per second, and Every N seconds. This option sets the minimum connection rate that the system will start with and increment until it reaches the maximum connection rate or until the ramp up phase ends. If the maximum connection rate is met, the system will hold that rate until the ramp up phase is over.
909
Table 16-56: Session Sender Parameters Parameter rateDist.rate Description Sets the time increment for increasing or decreasing the data rate. This parameter is used in conjunction with rateDist.increment. Sets how data rates are determined. Valid Values 1 30
rateDist.type
constant Uses rateDist.min as the data rate. random Selects a random value between rateDist.min and rateDist.max as the data rate. range Starts at rateDist.min and increments until it reaches rateDist.max. Once the maximum value is met, the data rate will restart at minimum value.
rateDist.unit
Sets the unit of measurement for the data rate. Disables the limit on the close rate. If this option is set to false, then the close rate is limited by the connection establishment rate. If this option is set to true, then the system will close the sessions as quickly as the bandwidth allows; therefore, the number of open sessions will be closer to the maximum number of simultaneous sessions set for the component.
mbps or fps
sessions.closeFast
true or false
910
Table 16-56: Session Sender Parameters Parameter sessions.max Description Sets the maximum number of concurrent sessions that can be set up by the system at a given time. Sets the maximum number of sessions that can occur per second. The number of sessions that must open to pass the test. The number of connections per second that must be reached to pass the test. Sets the maximum source port number, if srcPortDist.type is range or random. Sets the minimum source port number, srcPortDist.type is range or random. Otherwise, this will be the value used for the source port. Valid Values 1 15,000,000
sessions.maxPerSecond
1 750,000*
sessions.target
1 15,000,000*
sessions.targetPerSecond
1 750,000*
srcPortDist.max
0 65,535
srcPortDist.min
0 65,535
911
Table 16-56: Session Sender Parameters Parameter srcPortDist.type Description Determines how port numbers are assigned. Valid Values constant Uses srcPortDist.min as the source port. random Uses random values between srcPortDist.min and srcPortDist.max. range Increments srcPortDist.min by one until it reaches srcPortDist.max. Once the port number reaches the maximum source port number, it will reset to the minimum source port number. tcp.add_timestamps Allows the size of the TCP header to be expanded by 12 32 bytes. Disable this parameter if you are generating TCP stacks with segment sizes greater than 1,460 and do not want to generate jumbo frames. The time, expressed in seconds, that an activelyclosed TCP connection will remain in the flow table in the TIME_WAIT state before closing. Determines whether or not to delay the ACK of TCP segments. Enable this parameter to send the ACK on the next send, or disable this parameter to send the ACK separately on receive. true or false
tcp.aging_time
0 120
tcp.delay_acks
true or false
912
Table 16-56: Session Sender Parameters Parameter tcp.handshake_data Description Determines whether to add data to the client ACK packet of the TCP handshake. Sets the size of the initial receive window for a new connection. Sets the maximum segment size that is used during the ramp up phase. Allows the specification of the TCP flags as bits. Indicates whether or not a test should reset all existing TCP connections at the end. Sets the number of times a connection is attempted before it is canceled. Sets the amount of time that elapses before a connection is retried. Valid Values true or false
tcp.initial_receive_window
1 65,535
tcp.mss
512 9,146
tcp.raw_flags tcp.reset_at_end
tcp.retries
13
tcp.retry_quantum_ms
100 2,000
Stack Scrambler Parameters Table 16-57 on page 913 lists the parameters for Stack Scrambler and their default configurations. When referencing these options (or parameters) in the Tcl interface, each parameter is preceded with a dash (-). Table 16-57: Stack Scrambler Parameters Parameter badChecksum Description Sets the percentage of packets that will have a malformed checksum. Sets the percentage of IP packets that will have malformed IP options. Valid Values 0 100
badIPOptions
0 100
913
Table 16-57: Stack Scrambler Parameters Parameter badIPVersion Description Sets the percentage of IP packets that will have a malformed IP version. Sets the percentage of TCP packets that will have malformed TCP options. Sets the percentage of packets that will have a malformed urgent pointer. Sets the destination port for all TCP/UPD packets. Setting this parameter to 0 will randomize this value. Sets the duration of the test. Sets the length of the test in frames. Sets the percentage of packets that will be fragmented. Determines whether the system sends valid handshake packets to establish TCP sessions before fuzzing. Sets a value for the seed generator. This value enables the ability to resend the same data to the device. Sets the time increment for increasing or decreasing the data rate. This parameter is used in conjunction with rateDist.increment. Valid Values 0 100
badTCPOptions
0 100
badUrgentPointer
0 100
dstPort
0 65,535
handshakeTCP
true or false
prng.seed
0 4,294,967,295
rateDist.rate
1 30
914
Table 16-57: Stack Scrambler Parameters Parameter rateDist.type Description Sets how data rates are determined. Valid Values constant Uses rateDist.min as the data rate. random Selects a random value between rateDist.min and rateDist.max as the data rate. range Starts at rateDist.min and increments until it reaches rateDist.max. Once the maximum value is met, the data rate will restart at minimum value. rateDist.unit Sets the unit of measurement for the data rate. Sets the maximum frame/ packet size; this parameter is used only if sizeDist.type is set to range. Sets the minimum frame/ packet size, if sizeDist.type is set to constant. Otherwise, this is the minimum value used if sizeDist.type is set to range or random. Sets whether Bit Blaster uses frame or packets. Sets the source port for all TCP/UDP packets. Setting this parameter to 0 will randomize this value. Sets the protocol stack to target. mbps or fps
sizeDist.max
64 9216 bytes (frames) 46 1500 bytes (packets) 64 9216 bytes (frames) 46 1500 bytes (packets)
sizeDist.min
sizeDist.unit srcPort
targetStack
915
Running Tests
Running Tests
Use the run command to run your script. If you use the run command without any arguments, the run command will run the test and block control over the script until the test completes. Once the test is done, you can resume control over the Tcl interface. If you do not want control to be blocked, you can use the -async attribute, which will return control to you once a test starts. The test will run in the background, but once it completes, it will run the string asyncCommand as a Tcl script. If you run a test using the -async attribute, you can use the wait command to block control until the test completes. With the run command, you can use the -progress attribute to specify a Tcl script that will be called periodically while the test is running. This will allow you to monitor the progress of the test. The -progress attribute will use the concat command to append two attributes to the script you provide: the tests name and a percentage of completion. If you do not want to provide a script, you can use the bps::textprogress command to show a text-based progress bar. You will need to specify the channel to which the command should output the text (e.g., stdout). When a test completes, it will return a list of the test criteria that failed, as well as a list of pairs (i.e., the failure description and the criteria name). With the run command, you can use the -rtstats attribute to specify a callback to update your charts with Real-Time statistics. The value that you assign to this argument is interpreted as a command that will run when new statistics become available. The following example defines a procedure that prints out the statistics and then runs a test set up to call that procedure.
Example
proc print_rtstats {testid statvals} { dict for {var val} $statvals { puts "$var: $val" } } $t run -rtstats print_rtstats
Note: If the test encounters an error when you attempt to run it, you will see a Tcl exception.
916
Running Tests
Syntax
Use one of the following syntaxes to run a test.
$testObject run; #the simple way to run a test $testObject run -progress bps::textprogress stdout; #runs and outputs the test progress $testObject run -async {puts Test Completed} -progress bps::textprogress stdout; #runs the test in the background
Table 16-58 on page 917 breaks down the elements for running tests. Table 16-58: Running Tests Element run -rtstats Runs the test Calls the -rtstats attribute when there are new RealTime statistics available. This attribute allows you to capture Real-Time statistics at any time during the progress of your test. Allows you to monitor the progress of the test Allows you to output the progress of the test Allows you to run the test in the background while you are doing additional scripting through the Tcl interface Description
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 $c1 $c1 $c1 reservePort reservePort reservePort reservePort 1 1 1 1 0; 1; 2; 3; #reserves #reserves #reserves #reserves port port port port 0 1 2 3 on slot 1 on slot 1 on slot 1 slot 1
set test1 [$var createTest -template appsim_enterprise -name myTest]; #creates the test object and a test called MyTest based on the AppSim test $test1 configure -neighborhood Neighborhood1; #sets the Network Neighborhood for the test to be Neighborhood 1
917
$test1 configure -dut Profile1; #sets the DUT Profile to Profile1 $test1 configure -category layer 7 testing; #sets the test category to state layer 7 testing $test1 configure -description this test is based on the default application simulator quick test; #sets the description for the test $test1 save; #saves the test $test1 run -progress bps::textprogress stdout; #runs the test
Syntax
Use the following syntax to start the packet trace.
$testObject startPacketTrace
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 $c1 $c1 $c1 reservePort reservePort reservePort reservePort 1 1 1 1 0; 1; 2; 3; #reserves #reserves #reserves #reserves port port port port 0 1 2 3 on slot 1 on slot 1 on slot 1 slot 1
set test1 [$var createTest -template appsim_enterprise -name myTest; #creates the test object and a test called MyTest based on the AppSim test $test1 configure -neighborhood Neighborhood1; #sets the Network Neighborhood for the test to be Neighborhood 1 $test1 configure -dut Profile1; #sets the DUT Profile to Profile1 $test1 configure -category layer 7 testing; #sets the test category to state layer 7 testing $test1 configure -description this test is based on the default application simulator quick test; #sets the description for the test $test1 save; #saves the test $test1 run; #runs the test after 2000; #wait 2 seconds
918
Syntax
Use the following syntax to stop the packet trace.
$testObject stopPacketTrace
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 $c1 $c1 $c1 reservePort reservePort reservePort reservePort 1 1 1 1 0; 1; 2; 3; #reserves #reserves #reserves #reserves port port port port 0 1 2 3 on slot 1 on slot 1 on slot 1 slot 1
set test1 [$var createTest -template appsim_enterprise -name myTest; #creates the test object and a test called MyTest based on the AppSim test $test1 configure -neighborhood Neighborhood1; #sets the Network Neighborhood for the test to be Neighborhood 1 $test1 configure -dut Profile1; #sets the DUT Profile to Profile1 $test1 configure -category layer 7 testing; #sets the test category to state layer 7 testing $test1 configure -description this test is based on the default application simulator quick test; #sets the description for the test $test1 save; #saves the test $test1 run; #runs the test after 2000; #wait 2 seconds $test1 stopPacketTrace; #stops collecting packets after 2 seconds
919
do not need to include any additional information other than the interfaces the client and server will use (e.g., set comp1 [$var createComponent appsim #auto 1 2]). The system will automatically assign the default domain to each interface. For more information on creating components, see the section Creating a Test Component on page 813.
Syntax
The following syntax uses the setDomain command to specify the domain for the client interface.
$componentObject setDomain client interface# domainName
The following syntax uses the setDomain command to specify the domain for the server interface.
$componentObject setDomain server interface# domainName
The following syntax uses the setDomain command to specify the domain for the external interface.
$componentObject setDomain external domainName
Example 1
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 $c1 $c1 $c1 reservePort reservePort reservePort reservePort 1 1 1 1 0; 1; 2; 3; #reserves #reserves #reserves #reserves port port port port 0 1 2 3 on slot 1 on slot 1 on slot 1 slot 1
set test1 [$var createTest -name myTest]; #creates the test object and an empty test called MyTest $test1 configure -neighborhood NN1; #sets the Network Neighborhood to NN1 set comp1 [$var createComponent appsim #auto 1 2]; #creates a component object called comp1 and an App Sim component that will be named using the auto-naming function. The client interface is 1 and server interface is 2 $comp1 setDomain server 1 AB; #sets server interface to interface 1 and the domain to AB $comp1 setDomain client 2 AB; #sets client to interface 2 and the domain to AB
920
Example 2
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 $c1 $c1 $c1 reservePort reservePort reservePort reservePort 1 1 1 1 0; 1; 2; 3; #reserves #reserves #reserves #reserves port port port port 0 1 2 3 on slot 1 on slot 1 on slot 1 slot 11
set test1 [$var createTest -name myTest]; #creates the test object and an empty test called MyTest $test1 configure -neighborhood NN1; #sets the Network Neighborhood to NN1 set comp1 [$var createComponent sesssionsender_max #auto 1 2]; #creates a component object called comp1 and a Session Sender component that will be named using the auto-naming function. The client interface is 1 and server interface is 2 $comp1 setDomain server external AB; #sets server interface to interface 1 and the domain to AB
Syntax
Use the following syntax to get a list of domains used by each interface.
$componentObject getDomains
Syntax
Use the following syntax to get a list of domains used by each interface.
$componentObject getDomain client/server interface#
921
You can use getComponents to return a list of all the components used by the test.
Syntax
Use the following syntax to get a list of components used by the test.
$testObject getComponents
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 $c1 $c1 $c1 reservePort reservePort reservePort reservePort 1 1 1 1 0; 1; 2; 3; #reserves #reserves #reserves #reserves port port port port 0 1 2 3 on slot 1 on slot 1 on slot 1 slot 1
set test1 [$var createTest -template appsim_enterprise -name myTest; #creates the test object and a test called MyTest based on the AppSim test $test1 getComponents; #returns a list of components used by the test
Syntax
Use the following syntax to save the test.
$testObject save
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 $c1 $c1 $c1 reservePort reservePort reservePort reservePort 1 1 1 1 0; 1; 2; 3; #reserves #reserves #reserves #reserves port port port port 0 1 2 3 on slot 1 on slot 1 on slot 1 slot 1
922
set test1 [$var createTest -template appsim_enterprise -name myTest; #creates the test object and a test called MyTest based on the AppSim test $test1 configure -neighborhood Neighborhood1; #sets the Network Neighborhood for the test to be Neighborhood 1 $test1 configure -dut Profile1; #sets the DUT Profile to Profile1 $test1 configure -category layer 7 testing; #sets the test category to state layer 7 testing $test1 configure -description this test is based on the default application simulator quick test; #sets the description for the test $test1 save; #saves the test
Syntax
Use the following syntax to cancel the test.
$testObject cancel
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object set c1 [$var getChassis]; #creates the chassis object $c1 $c1 $c1 $c1 reservePort reservePort reservePort reservePort 1 1 1 1 0; 1; 2; 3; #reserves #reserves #reserves #reserves port port port port 0 1 2 3 on slot 1 on slot 1 on slot 1 slot 1
set test1 [$var createTest -template appsim_enterprise -name myTest; #creates the test object and a test called MyTest based on the AppSim test $test1 configure -neighborhood Neighborhood1; #sets the Network Neighborhood for the test to be Neighborhood 1 $test1 configure -dut Profile1; #sets the DUT Profile to Profile1 $test1 configure -category layer 7 testing; #sets the test category to state layer 7 testing $test1 configure -description this test is based on the default application simulator quick test; #sets the description for the test
923
$test1 save; #saves the test $test1 run; #runs the test $test1 cancel; #cancels the test
Syntax
Use the following syntax to export a hard copy of test results.
$testObject exportReport -file /../reportName.pdf
See Table 16-59 on page 924 for available options for the exportReport command. Table 16-59: Available Options for exportReport Option -file value -channel value -format value -help -? output file <> output channel <> Report format {csv, html, pdf, rtf, xls, bpt, zip} <pdf> Prints the list of commands with descriptions Prints the list of commands with descriptions Description
924
Example 1
$testObject exportReport -file /temp/bitblasterresults.pdf
Example 2
set bbresult [open |unzip w] $testobject exportReport -channel $bbresult -format csv; #opens a pipe to the unzip system command and exports the report there directly.
Syntax
Use the following syntax to view the results from the aggregate statistics object.
$resultObjectName values aggStats
Table 16-60 on page 925 lists descriptions for the available aggregate statistics. Table 16-60: Aggregate Statistics Statistic cpu_usage ethAlignmentErrors ethDropEvents ethFCSErrors ethOversizedFrames ethRxErrors ethRxFrameData CPU Usage Ethernet alignment errors Ethernet drop events Ethernet FCS errors Ethernet oversize frames Ethernet receive errors Ethernet bytes received. This includes L7 and all packet overhead, including L2, L3, L4 headers, ethernet CRC, and inter-packet gap (20 bytes per frame). Ethernet receive rate. This includes L7 and all packet overhead, including L2, L3, L4 headers, ethernet CRC, and inter-packet gap (20 bytes per frame). Description
ethRxFrameDataRate
925
Table 16-60: Aggregate Statistics Statistic ethRxFrameRate ethRxFrames ethRxPauseFrames ethTotalErrors ethTxErrors ethTxFrameData Description Ethernet frame receive rate Ethernet frames received Ethernet pause frames received Total Errors Ethernet transmit errors Ethernet bytes transmit. This includes L7 and all packet overhead, including L2, L3, L4 headers, ethernet CRC, and inter-packet gap (20 bytes per frame). Ethernet transmit rate. This includes L7 and all packet overhead, including L2, L3, L4 headers, ethernet CRC, and inter-packet gap (20 bytes per frame). Ethernet frame transmit rate Ethernet frames transmitted Ethernet pause frames transmitted Ethernet undersize frames Free memory on the System Controller Total memory on the System Controller Used memory The percent of disk spaced used on the disk partition Super Flow rate Aggregate Super Flows Concurrent Super Flows TCP Flow rate Aggregate TCP Flows Concurrent TCP Flows The time that the datapoint was taken (refers to the rest of the data that comes with it) UDP Flow rate
ethTxFrameDataRate
ethTxFrameRate ethTxFrames ethTxPauseFrames ethUndersizedFrames linux mem_free_kb mem_total_kb mem_used_kb mount percent_used superFlowRate superFlows superFlowsConcurrent tcpFlowRate tcpFlows tcpFlowsConcurrent timestamp udpFlowRate
926
Table 16-60: Aggregate Statistics Statistic udpFlows udpFlowsConcurrent Description Aggregate UDP Flows Concurrent UDP Flows
Example
The following example displays the aggregate statics for the test.
% set var [bps::connect 10.10.10.10 joe passwd] % set c1 [$var getChassis]; # creates the chassis object % $c1 reservePort 1 0; #reserves ports 0 on slot 1 % $c1 reservePort 1 1; #reserves ports 1 on slot 1 % set t [$var createTest -template AppSim]; # creates a test object based on the AppSim test % set c [$t get aggStats]; # stores the aggregate statistics for a test in an object % $t run; # runs the test % set r [$c result]; # creates the results object % $r values aggStats; # retrieves the avaliable aggregate statistics of the test from the results object
Syntax
Use the following syntax to list all multi-box tests on the system.
$connectionObject listTests
927
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object $var listMultiboxTests; #returns a list of multi-box tests on the system
Syntax
Use the following syntax to create a multi-box test. set multiboxObject [$connectionObject createMultiboxTest -template multiboxTest -name multiBoxTest name]
928
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system set mt1 [$var createMultiboxTest -name MTest1; #creates an empty multibox test called MTest1
Syntax
Use the following syntax to reconfigure a multi-box test. Note: If you are configuring the main system, use localhost in place of an IP address (e.g. $mt1 configureTest localhost -username joe).
$multiboxTestObject configureTest IP -username name -password password -test test
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system set mt1 [$var createMultiboxTest -name MTest1; #creates an empty multibox test called MTest1 $mt1 addTest 10.10.10.11 john pswd BitBlaster BreakingPoint Default BreakingPoint Switching; adds 10.10.10.11 to the multi-box test $mt1 configureTest 10.10.10.11 -name admin -password admin; #changes the authentication information for the system
929
To add secondary systems to the multi-box test, use the syntax and follow the example provided below.
Syntax
Use the following syntax to add tests to a multi-box test.
$multiboxTestObject addTest systemIP userID password test DUT Profile Network Neighborhood
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system set mt1 [$var createMultiboxTest -name MTest1; #creates an empty multibox test called MTest1 $mt1 addTest 10.10.10.11 john pswd AppSim BreakingPoint Default BreakingPoint Routing; #adds 10.10.10.11 to the multi-box test, this system will run the App Sim test and use the default BreakingPoint DUT Profile and BreakingPoint Routing Network Neighborhood $mt1 addTest 10.10.10.12 john pswd SessionSender BreakingPoint Default BreakingPoint Routing; #adds 10.10.10.12 to the multi-box test, this system will run the Session Sender test and use the default BreakingPoint DUT Profile and BreakingPoint Routing Network Neighborhood
Syntax
Use the following syntax to display a list of systems and the tests running on them.
$multiboxTestObject getTests
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system set mt1 [$var createMultiboxTest -name MTest1; #creates an empty multibox test called MTest1
930
$mt1 addTest 10.10.10.11 john pswd AppSim BreakingPoint Default BreakingPoint Routing; #adds 10.10.10.11 to the multi-box test, this system will run the App Sim test and use the default BreakingPoint DUT Profile and BreakingPoint Routing Network Neighborhood $mt1 getTests; #returns a list of systems and the tests running on them
Syntax
Use the following syntax to remove secondary systems from the multi-box test.
$multiboxTestObject removeTest IP
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system set mt1 [$var createMultiboxTest -name MTest1; #creates an empty multibox test called MTest1 $mt1 addTest 10.10.10.11 john pswd AppSim BreakingPoint Default BreakingPoint Routing; #adds 10.10.10.11 to the multi-box test, this system will run the App Sim test and use the default BreakingPoint DUT Profile and BreakingPoint Routing Network Neighborhood $mt1 removeTest 10.10.10.11; #removes this system from the multi-box test
Syntax
Use the following syntax to view the secondary systems and tests associated with the multi-box test.
$multiboxTestObject getTests
931
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system set mt1 [$var createMultiboxTest -name MTest1; #creates an empty multibox test called MTest1 $mt1 addTest 10.10.10.11 john pswd AppSim BreakingPoint Default BreakingPoint Routing; #adds 10.10.10.11 to the multi-box test, this system will run the App Sim test and use the default BreakingPoint DUT Profile and BreakingPoint Routing Network Neighborhood $mt1 addTest 10.10.10.12 john pswd SessionSender BreakingPoint Default BreakingPoint Routing; #adds 10.10.10.12 to the multi-box test, this system will run the Session Sender test and use the default BreakingPoint DUT Profile and BreakingPoint Routing Network Neighborhood
Syntax
Use the following syntax to create a chassis object for the secondary system and to reserve ports. set chassisObject [$connectionObject getChassis IP] $chassisObject reserverPort slot# port#
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system set mt1 [$var createMultiboxTest -name MTest1; #creates an empty multibox test called MTest1 set c1 [$var getChassis]; #creates chassis object for the primary system $c1 reserve 1 0; #reserves slot 1/port 0 on the primary system $c1 reserve 1 1; #reserves slot 1/port 1 on the primary system set c2 [$var getChassis 10.10.10.11]; #creates chassis object for the secondary system $c2 reserve 1 0; #reserves slot 1/port 0 on the secondary system
932
$c2 reserve 1 1; #reserves slot 1/port 1 on the secondary system $mt1 addTest 10.10.10.11 john pswd AppSim BreakingPoint Default BreakingPoint Routing; #adds 10.10.10.11 to the multi-box test, this system will run the App Sim test and use the default BreakingPoint DUT Profile and BreakingPoint Routing Network Neighborhood
Syntax
Use the following syntax to run a multibox test.
$multiboxObject run
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system set mt1 [$var createMultiboxTest -name MTest1; #creates an empty multibox test called MTest1 set c1 [$var getChassis]; #creates chassis object for the primary system $c1 reserve 1 0; #reserves slot 1/port 0 on the primary system $c1 reserve 1 1; #reserves slot 1/port 1 on the primary system set c2 [$var getChassis 10.10.10.11]; #creates chassis object for the secondary system $c2 reserve 1 0; #reserves slot 1/port 0 on the secondary system $c2 reserve 1 1; #reserves slot 1/port 1 on the secondary system $mt1 addTest 10.10.10.11 john pswd AppSim BreakingPoint Default BreakingPoint Routing; #adds 10.10.10.11 to the multi-box test, this system will run the App Sim test and use the default BreakingPoint DUT Profile and BreakingPoint Routing Network Neighborhood $mt1 run; #runs the test
933
Syntax
Use the following syntax to cancel a running multibox test.
$multiboxObject cancel
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system set mt1 [$var createMultiboxTest -name MTest1; #creates an empty multibox test called MTest1 set c1 [$var getChassis]; #creates chassis object for the primary system $c1 reserve 1 0; #reserves slot 1/port 0 on the primary system $c1 reserve 1 1; #reserves slot 1/port 1 on the primary system set c2 [$var getChassis 10.10.10.11]; #creates chassis object for the secondary system $c2 reserve 1 0; #reserves slot 1/port 0 on the secondary system $c2 reserve 1 1; #reserves slot 1/port 1 on the secondary system $mt1 addTest 10.10.10.11 john pswd AppSim BreakingPoint Default BreakingPoint Routing; #adds 10.10.10.11 to the multi-box test, this system will run the App Sim test and use the default BreakingPoint DUT Profile and BreakingPoint Routing Network Neighborhood $mt1 run; #runs the test $mt1 cancel; #cancels the test
Syntax
Use the following syntax to save the multi-box test.
$multiboxTestObject save -force
934
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system set mt1 [$var createMultiboxTest -name MTest1; #creates an empty multibox test called MTest1 $mt1 addTest 10.10.10.11 john pswd AppSim BreakingPoint Default BreakingPoint Routing; #adds 10.10.10.11 to the multi-box test, this system will run the App Sim test and use the default BreakingPoint DUT Profile and BreakingPoint Routing Network Neighborhood $mt1 addTest 10.10.10.12 john pswd SessionSender BreakingPoint Default BreakingPoint Routing; #adds 10.10.10.12 to the multi-box test, this system will run the Session Sender test and use the default BreakingPoint DUT Profile and BreakingPoint Routing Network Neighborhood $mt1 save -force; #saves the test
Syntax
Use the following syntax to list all test series on the system.
$connectionObject listTestSeries
Example
set var [bps::connect 10.10.10.10 john passwd -onclose exit -shortcuts true]; #creates the connection object $var listTestSeries; #returns a list of test series on the system
935
Syntax
Use the following syntax to create a test series. set testSeriesObject [$connectionObject createTestSeries -template
testSeries -name testSeries name]
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system set ts1 [$var createTestSeries -template appTestSeries1 -name appTestSeries2]; #creates a test series based on an existing template
936
Syntax
Use the following syntax to create a test series.
$connectionObject listTestSeries
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system $var listTestSeries; #returns a list of all test series on the system
Syntax
Use the following syntax to add tests to a test series.
$testSeriesObject addTest test
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system set c1 [$var getChassis]; #creates chassis object $c1 reserve 1 0; #reserves slot 1/port 0 $c1 reserve 1 1; #reserves slot 1/port 1 set SS1 [$bps createTestSeries -name Security Tests]; #creates an object called SS1 and a test series called Security Tests $SS1 addTest Security T1; #adds a test to the test series
937
Syntax
Use the following syntax to remove tests from a test series.
$testSeriesComponent removeTest <indexNumber>
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system set c1 [$var getChassis]; #creates chassis object $c1 reserve 1 0; #reserves slot 1/port 0 $c1 reserve 1 1; #reserves slot 1/port 1 set SS1 [$bps createTestSeries -name Security Tests]; #creates an object called SS1 and a test series called Security Tests $SS1 addTest Security T1; #adds a test to the test series $SS! removeTest 2; #removes the second test index from the test series. The numbering here is zero based, so the test with the second test index would be the first test. $SS1 save; #saves the test series
Syntax
Use the following syntax to display a list of tests in a test series.
$testSeriesObject getTests
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system set ts1 [$var createTestSeries -name TSeries1; #creates an empty test series
938
$ts1 addTest AppSim; #adds a test to the test series $ts1 getTests; #returns a list of tests in the test series
Syntax
Use the following syntax to run a test series.
$testSeriesObject run
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system set c1 [$var getChassis]; #creates chassis object $c1 reserve 1 0; #reserves slot 1/port 0 $c1 reserve 1 1; #reserves slot 1/port 1 set SS1 [$bps createTestSeries -name Security Tests]; #creates an object called SS1 and a test series called Security Tests $SS1 addTest Security T1; #adds a test to the test series $SS1 save; #saves the test series $SS1 run; #runs the test series
Syntax
Use the following syntax to cancel a running test series.
$testSeriesObject cancel
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system
939
set c1 [$var getChassis]; #creates chassis object $c1 reserve 1 0; #reserves slot 1/port 0 $c1 reserve 1 1; #reserves slot 1/port 1 set SS1 [$bps createTestSeries -name Security Tests]; #creates an object called SS1 and a test series called Security Tests $SS1 addTest Security T1; #adds a test to the test series $SS1 save; #saves the test series $SS1 run; #runs the test series $SS1 cancel; #cancels the test series
Syntax
Use the following syntax save the test series.
$testSeriesObject save -force
Example
set var [bps::connect 10.10.10.10 john pswd]; #creates a connection to the system set c1 [$var getChassis]; #creates chassis object $c1 reserve 1 0; #reserves slot 1/port 0 $c1 reserve 1 1; #reserves slot 1/port 1 set SS1 [$bps createTestSeries -name Security Tests]; #creates an object called SS1 and a test series called Security Tests $SS1 addTest Security T1; #adds a test to the test series $SS1 save; #saves the test series
940
There is only one copy of the RFC 2544 test; therefore, each time a user modifies and saves the test, it will override the existing copy of the test. The MTU defined for the transmitting and receiving ports on the BreakingPoint Storm CTM must be able to support the frame sizes defined for the RFC 2544 test. You should always check the MTU settings for each port before running the test to ensure that the port supports the frame sizes defined in the test. The system will send slow start packets in the reverse direction to the device under test for each iteration. This enables the DUT to determine the ports of the MAC addresses that the BreakingPoint Storm CTM is using; therefore, in the Traffic Overview section of the RFC 2544 test report, you will see slow start packets listed for each data rate that was tested. The RFC 2544 test utilizes logical interface 1 as the transmitting interface and logical interface 2 as the receiving interface. For more information on the Quick Test - RFC 2544, see the sectionQuick Test - RFC 2544 General Information on page 651.
Syntax
Use the $bps createRFC2544Test command to create the RFC 2544 test, as shown in the following example. Additionally, the example below creates an object for the RFC 2544 test. Please note that for all parameters you do not explicitly define, the test will use the preexisting value defined for that parameter.
set rfcObjectName [$connectionObjectName createRFC2544Test]
941
The configure command will list all parameters available for the RFC 2544 test. Additionally, it will list the default setting and the current setting for each parameter. Table 16-61 on page 942 lists the parameters and their descriptions. Table 16-61: RFC 2544 Parameters Parameter acceptableCorruptFrames Description Defines the percentage of corrupt frames that is acceptable for the iteration to pass. Defines the percentage of frame loss that is acceptable for the iteration to pass. The Rate Lower Limit The Rate Higher Limit The binary resolution This field is defined only if you have set the Payload to be user defined. Defines the frame sizes that will be tested. Defines the DUT Profile that will be used for the RFC 2544 test. Defines the last frame size that will be tested in a step series. Defines the interval at which the frame sizes are incremented; the frame size will start at frameSizeStart, and increment using frameSizeInterval, until it reaches frameSizeEnd. Defines the first frame size that will be tested in a step series. Valid Values 0 100
acceptableFrameLoss
0 100
0 100 0 100 0 100 You can use standard hexadecimal notation to define a custom payload. Enter the frame sizes Any DUT Profile currently stored on the system. 64 9216
customSteps dut
frameSizeEnd
frameSizeInterval
1128
frameSizeStart
64 9216
942
Table 16-61: RFC 2544 Parameters Parameter loadApplication Description Defines the maximum amount of throughput that will be tested. Defines the unit of measurement for the throughput. Defines the mode the test will use to search for the fastest frame rate. Defines the Network Neighborhood will be used for the RFC 2544 test. Sets the packet type for traffic on the wire. Establishes how the payload content is determined. Valid Values 0 10000 or total Total will use the maximum possible throughput mbps or gbps
loadUnits
mode
neighborhood
Any Network Neighborhood currently stored on the system. ethernet, ip, udp, icmp, or tcp 0 Payload is 0s. 1 Payload is all 1s. random Payload is defined using random Hex values. increment Payload is defined using ascending values starting at 0. decrement Payload is defined using descending values starting at 0xff. User-Defined Payload is defined using standard hexadecimal notation. If the payload is smaller than the packet size, then the Hex value will be repeated until it meets the packet size; however, if the payload is a user-defined Hex value that is greater than the packet size, the value will be truncated.
packetType payloadType
943
Table 16-61: RFC 2544 Parameters Parameter payloadWidth Description Defines the width of the data (in bits) being inserted into the payload. Establishes how the frame sizes are determined. Defines the rate at which the data rate is incremented; this value is used only if the mode is set to step. Defines the duration of each iteration. Establishes how the duration for the test is determined; you can either set the duration for each iteration (periteration) or set the duration for the entire test (total). Defines the unit of measurement used for stepduration. Valid Values 8, 16, or 32
seriesType stepRate
stepduration stepdurationApplication
stepdurationunits
Syntax
Use the $bps createSessionLabTest command to create the Session Sender test, as shown in the following example. Additionally, the example below creates an object for the Session Sender test. Please note that for all parameters you do not explicitly define, the test will use the preexisting value defined for that parameter.
set $sessionObjectName [$connectionObjectName createSessionLabTest]
944
Table 16-62 breaks down the elements of creating a Session Sender test. Table 16-62: Creating a Session Sender Test Element $sessionObjectName $connectionObjectName createSessionLabTest Description The object created for the Network Neighborhood. The name of the object created for the connection. The command to create a Session Sender Lab test.
Example
% set s [$bps createSessionLabTest] ::bps::BPSConnection::bPSConnection0::sessionLabClient0 % $s configure {-aging {} {}} {-appProfile {} {}} {-dataType http http} {dstPortDist.max 1024 1024} {-dstPortDist.min 1 1} {-duration 00:01:00 00:01:00} {-dut {BreakingPoint Default} {BreakingPoint Default}} {-flowSize 4096 4096} {maximumConcurrent {} {}} {-maximumConcurrentSession {} {}} {-maximumRate 5000 5000} {-minimumConcurrent {} {}} {-minimumConcurrentSessions {} {}} {minimumRate 10 10} {-neighborhood {BreakingPoint Switching} {BreakingPoint Switching}} {-resetConnectionsBetweenTests {} {}} {-retries {} {}} {-retry_quanta {} {}} {-srcPortDist.max 65535 65535} {-srcPortDist.min 2049 2049} {-steadyBehavior {} {}} {-stepRate.num 10 10} {-stepRate.type percent percent} {-stepdurationApplication periteration periteration} {-testMode maxSustainedRate maxSustainedRate} {-testType layer4 layer4} % $s configure -aging 100 -srcPortDist.min 100 % $s save % $s run
945
$sessionLabObjectName configure -option The configure command will list all parameters available for the Session Sender test. Additionally, it will list the default setting and the current setting for each parameter. Table 16-66 on page 951 lists the parameters and their descriptions. Table 16-63: Session Sender Test Parameters Parameter aging Description The time, expressed in seconds, that an actively-closed TCP connection will remain in the flow table in the TIME_WAIT state after closing. Sets the Application Profile that determines the mix of applications that will be used in the traffic. Selects the method used to determine the maximum TCP connection establishment rate through or with the DUT. Sets the maximum destination port number, if dstPortDist.type is Range or Random. Sets the minimum destination port number, if dstPortDist.type is Range or Random. Otherwise, this will be the value used for the destination port. Valid Values 0 120
appProfile
dataType
dstPortDist.max
0 65,535
dstPortDist.min
0 65,535
946
Table 16-63: Session Sender Test Parameters Parameter duration dut Description Sets the length of the test. Searches for the device to be tested and its corresponding Network Neighborhood. Sets the maximum number of simultaneous sessions that will exist concurrently during the test duration. Limits the maximum connection establishment rate for the ramp up phase when not in Calculated mode. The number of sessions that must open to pass the test. Specifies the connection establishment rate to be used at the start of the ramp up phase when not in Calculated mode. Must be less than or equal to Maximum Rate. Searches for the device to be tested and its corresponding Network Neighborhood. Allows the specification of the TCP flags as bits. Resets connections between test runs. Sets the number of times a connection is attempted before it is canceled. Valid Values 1 120 A BreakingPoint DUT or a custom DUT
maximumConcurrent
maximumRate
minimumConcurrent
1 9, 223, 372, 036, 854, 775, 807 1 9, 223, 372, 036, 854, 775, 807
minimumRate
neighborhood
947
Table 16-63: Session Sender Test Parameters Parameter retry_quanta Description Sets the amount of time that elapses before a connection is retried. Sets the maximum source port number, if srcPortDist.type is range or random. Sets the minimum source port number, if srcPortDist.type is range or random. Otherwise, this will be the value used for the source port. Defines the test behavior during the steady-state phase. Useful for examining connection tracking and timeout behavior of a device under test, as well as maintaining a steady load with a sustained number of simultaneous sessions. Defines the rate at which the data rate is incremented. Defines how the data rate is incremented. Establishes how the duration for the test is determined; you can either set the duration for each iteration (periteration) or set the duration for the entire test (total). Valid Values 100 2,000
srcPortDist.max
0 65,535
srcPortDist.min
0 65,535
steadyBehavior
stepRate.num
1 100
stepRate.type stepdurationApplication
948
Table 16-63: Session Sender Test Parameters Parameter testMode Description The mode of the test being run. The type of test being run. Valid Values maxSessionOpenRate maxSustainedRate maxConcurrentSessions layer2 layer3 layer4 stackscrambler appsim playback security_all aggregate_statistics clientsim sc_aggregate_statistics
testType
Syntax
Use the following syntax to run a Resiliency Score test. Please note that for all parameters you do not explicitly define, the test will use the preexisting value defined for that parameter.
set resiliencyTestObjectName [$connectionObjectName createResiliencyTest]
Table 16-64 breaks down the elements of creating a Resiliency Score test. Table 16-64: Creating a Resiliency Score Test Element resiliencyTestObjectName $connectionObjectName createResiliencyTest Description The name of the Resiliency Test object created for the test. The name of the object created for the connection. The command to create a Resiliency Score test.
949
Example
set t [$bps createResiliencyTest -name MyTest1] $t configure $t configure -deviceType Router $t configure -runSecurity false $t configure -speed 10000; # You can get a Network Neighborhood object, which you can use to query how your device should be set up set n [$t getNeighborhood]; # The run, cancel, and wait commands work just like other tests, except you can also specify -runType to choose between Validate, Quick, or Full. proc echo {args} {puts $args} $t run -runType Validate $t run -progress "bps::textprogress stdout" -runType Quick $t run -rtstats echo -async echo -runType Full # rt stats gives the information shown in the dials of the UI as percentages: # networkInterface deepPacketInspection sessionTable cpu routingEngine # and threatDetectionEngine, as percentages
950
Table 16-65: Resiliency Score Test Commands Command getNeighborhood isPending Description Returns the Network Neighborhood used for the test context. Returns the status of a job started using the -async option. Returns true if job is pending, returns false if job is not pending. Returns the variable. Runs the test. Waits for that test to complete before continuing execution. This command is typically used after running a test that uses the -async attribute.
$resiliencyTestObjectName configure -option The configure command will list all parameters available for the Resiliency Score test. Additionally, it will list the default setting and the current setting for each parameter. Table 16-66 on page 951 lists the parameters and their descriptions. Table 16-66: Resiliency Score Test Parameters Parameter speed Description The target performance of the DUT. Test criteria such as offered bit rate and minimal performance criteria will be scaled automatically based on the claimed performance rate of the device. Measure the ability of the device to correctly handle malformed traffic at different IP layers. Valid Values 100 1,000,000,000
runRobustness
true or false
951
Table 16-66: Resiliency Score Test Parameters Parameter runSessionRate Description Run traffic using realistic traffic engineered to stress the devices limits with respect to the rate of session churn. Measure the ability of a device to correctly block exploit traffic. Specify a name for a particular test. Valid Values true or false
runSecurity
true or false
name
Up to 256 alphanumeric and/or special characters can be used to define the name. true or false Switch, Router, Firewall, Proxy, IPS, or UTM
runThroughput deviceType
Measure the link speed of a device. Set the type of device to be tested.
Syntax
Use the following syntax to run a Server Resiliency Score test. Please note that for all parameters you do not explicitly define, the test will use the preexisting value defined for that parameter.
set serverResiliencyTestObjectName [$connectionObjectName createServerResiliencyTest]
952
Table 16-64 breaks down the elements of creating a Server Resiliency Score test. Table 16-67: Creating a Server Resiliency Score Test Element serverResiliencyTestObjectName $connectionObjectName createServerResiliencyTest Description The name of the Server Resiliency Test object created for the test. The name of the object created for the connection. The command to create a Resiliency Score test.
Example
set t [$bps createServerResiliencyTest -name MyTest1] $t configure {-neighborhood {} {}} {-numFileSystem 1 1} {-name {TCL Server Resiliency Test} MyTest1} {-numUsers 200 200} {-numWeb 1 1} {-numDb 1 1} {-numMail 1 1} {-deviceType {} Server} $t listNeighborhoods $t configure -neighborhood {Default App Server} $t run -runType Validate -progress "bps::textprogress stdout" -async echo $t run -runType AtLeast -progress "bps::textprogress stdout" -rtstats echo -async echo $t run -runType Exactly $t cancel $t wait
953
Table 16-65, Resiliency Score Test Commands, lists the available Resiliency Score test commands and their descriptions. Table 16-68: Server Resiliency Score Test Commands Command cancel cget -option configure ?-option? ?value -option value...? isPending Description Cancels a test that has been running with the -async attribute. Retrieves the setting of an option. Sets the value for a parameter. Returns the status of a job started using the -async option. Returns true if job is pending, returns false if job is not pending. Performs a search for Resiliency compatible neighborhoods. Returns the variable. Runs the test. Waits for that test to complete before continuing execution. This command is typically used after running a test that uses the -async attribute.
954
Syntax
Use the createLawfulInterceptTest command to create a Lawful Intercept test, as shown in the following example. Additionally, the example below creates an object for the Lawful Intercept test. Please note that for all parameters you do not explicitly define, the test will use the preexisting value defined for that parameter.
set lawfulInterceptObjectName [$connectionObjectName createLawfulInterceptTest]
Table 16-69 breaks down the elements of creating a Lawful Intercept test. Table 16-69: Creating a Lawful Intercept Test Element lawfulInterceptObjectName $connectionObjectName createLawfulInterceptTest Description A name for the Lawful Intercept object. The name of the object created for the connection The command to create the Lawful Intercept test.
955
Example
% set t [$bps createLawfulInterceptTest]; #creates the connection object ::bps::BPSConnection::bPSConnection0::lawfulInterceptClient1 % $t configure {-appProfile {BreakingPoint Enterprise} {BreakingPoint Enterprise}} {-concurrentSessions 10000 10000} {-dataRate 200 200} {-duration 00:00:30 00:00:30} {-dut {BreakingPoint Default} {BreakingPoint Default}} {neighborhood {BreakingPoint Switching} {BreakingPoint Switching}} {sessionsPerSecond 1000 1000} {-target1.active true true} {-target1.fieldType phone phone} {-target1.intervalType time time} {-target1.ipTrigger {} {}} {-target1.quantityInterval {} {}} {-target1.superflowName {BreakingPoint Gmail (Lawful Intercept)} {BreakingPoint Gmail (Lawful Intercept)}} {-target1.timeInterval 00:00:30 00:00:30} {-target2.active false false} {-target2.fieldType {} {}} {-target2.intervalType quantity quantity} {-target2.ipTrigger {} {}} {-target2.quantityInterval {} {}} {-target2.superflowName {} {}} {-target2.timeInterval {} {}} {target3.active false false} {-target3.fieldType {} {}} {-target3.intervalType quantity quantity} {-target3.ipTrigger {} {}} {-target3.quantityInterval {} {}} {-target3.superflowName {} {}} {-target3.timeInterval {} {}} % $t configure -target1.active true % $t listSuperflows {BreakingPoint HTTP Request (Lawful Intercept)} {BreakingPoint SMTP Email (Lawful Intercept)} {BreakingPoint IMAPv4-Advanced (Lawful Intercept)} {BreakingPoint SIP/RTP Call (Lawful Intercept)} {BreakingPoint Windows Live Messenger v15 (Lawful Intercept)} {BreakingPoint Gmail (Lawful Intercept)} % $t listSuperflows HTTP {BreakingPoint HTTP Request (Lawful Intercept)} % $t run -progress {bps::textprogress stdout} -rtstats echo -async {echo done}
956
Table 16-70, Lawful Intercept Test Commands, lists the available Lawful Intercept test commands and their descriptions. Table 16-70: Lawful Intercept Test Commands Command cancel cget option clearResults configure ?arg arg ...? exportReport ?arg arg ...? isPending Description Cancels a test that has been running with the -async attribute. Retrieves the setting of an option. Clears the stored results of a test context. Sets the value for a parameter. Exports the report in PDF, XLS, ZIP, or HTML. Returns the status of a job started using the -async option. Returns true if job is pending, returns false if job is not pending. Lists the Super Flows that are available. Returns the variable. Runs the test. Saves the current test. Allows you verify that your test has not exceeded the available bandwidth limitations and hardware resources Waits for that test to complete before continuing execution. This command is typically used after running a test that uses the -async attribute.
listSuperflows ?arg arg? resultId run ?arg arg ...? save ?arg arg ...? validate ?arg arg ...?
wait
957
The configure command will list all parameters available for the Lawful Intercept test. Additionally, it will list the default setting and the current setting for each parameter. Table 16-71 on page 958 lists the parameters and their descriptions. Table 16-71: Lawful Intercept Parameters Parameter appProfile concurrentSessions Description The Application Profile to be used in your test. Sets the number of concurrent flows to be generated in your test. Sets the maximum speed (in Mbps) at which traffic is to be transmitted to the device for both background traffic and targeted Super Flows. Sets the length of the test. The device to be tested. The Network Neighborhood to be used in your test. Sets the number of flows per second for both background traffic and targeted Super Flows. Activates or deactivates target 1. Sets the type of pattern to be searched for in the test. Sets the type of interval to be used for the relative amount. Sets the parameters of the trigger used in your test. Valid Values A valid App Profile 1 15,000,000
dataRate
1 10,000
Valid values in the form of hh:mm:ss A valid device under test A valid Network Neighborhood 1 750,000
sessionsPerSecond
target1.active target1.fieldType
true or false phone, taxid, creditcard, pattern, fileentries, directentries time or quantity
target1intervalType
target1.ipTrigger
958
Table 16-71: Lawful Intercept Parameters Parameter target1.quantityInterval Description Sets how frequently (in time) the pattern you are searching for appears in your test. Sets the name of the Super Flow to be used in your test. Sets how frequently (in the number of flows) the pattern you are searching for appears in your test. Valid Values When intervalType is set to quantity, this value represents the number of flows between instances of the needle. The name of the Super Flow to be used as the needle. When intervalType is set to time, this value represents amount of time between needles. Can either be a number of seconds, or a time of the form hh:mm:ss. true or false phone, taxid, creditcard, pattern, fileentries, directentries time or quantity
target1.superflowName
target1.timeInterval
target2.active target2.fieldType
Activates or deactivates target 2. Sets the type of pattern to be searched for in the test. Sets the type of interval to be used for the relative amount. Sets the parameters of the trigger used in your test. Sets how frequently (in time) the pattern you are searching for appears in your test. Sets the name of the Super Flow to be used in your test. Sets how frequently (in the number of flows) the pattern you are searching for appears in your test.
target2.intervalType
target2.ipTrigger
A domain name on interface 2 of the Network Neighborhood When intervalType is set to quantity, this value represents the number of flows between instances of the needle. The name of the Super Flow to be used as the needle. When intervalType is set to time, this value represents amount of time between needles. Can either be a number of seconds, or a time of the form hh:mm:ss.
target2.quantityInterval
target2.superflowName
target2.timeInterval
959
Table 16-71: Lawful Intercept Parameters Parameter target3.active target3.fieldType Description Activates or deactivates target 3. Sets the type of pattern to be searched for in the test. Sets the type of interval to be used for the relative amount. Sets the parameters of the trigger used in your test. Sets how frequently (in time) the pattern you are searching for appears in your test. Sets the name of the Super Flow to be used in your test. Sets how frequently (in the number of flows) the pattern you are searching for appears in your test. Valid Values true or false phone, taxid, creditcard, pattern, fileentries, directentries time or quantity
target3.intervalType
target3.ipTrigger
A domain name on interface 3 of the Network Neighborhood When intervalType is set to quantity, this value represents the number of flows between instances of the needle. The name of the Super Flow to be used as the needle. When intervalType is set to time, this value represents amount of time between needles. Can either be a number of seconds, or a time of the form hh:mm:ss.
target3.quantityInterval
target3.superflowName
target3.timeInterval
Syntax
Use the $bps createMulticastTest command to create a Multicast test. Additionally, the example below creates an object for the Multicast test.
960
Please note that for all parameters you do not explicitly define, the test will use the preexisting value defined for that parameter.
set multicastObjectName [$connectionObjectName createMulticastTest]
Table 16-72 breaks down the elements of creating a Multicast test. Table 16-72: Creating a Multicast Test Element multicastObjectName $connectionObjectName createMulticastTest Description The name of the Multicast Test object created for the test. The name of the object created for the connection The command to create a Multicast test.
961
Example
% set t [$bps createMulticastTest] ::bps::BPSConnection::bPSConnection0::multicastClient0 % $t networkTypes small {Subscriber IPs range from 10.10.2.1 - 10.10.18.254. Up to 16 simultaneous subscriber subnets will be used using a /24 netmask.} medium {Subscriber IPs range from 10.10.2.1 - 10.10.18.254. Up to 256 simultaneous subscriber subnets will be used using a /28 netmask.} large {Subscriber IPs range from 10.10.2.1 - 10.10.66.254. Up to 1024 simultaneous subscriber subnets will be used using a /28 netmask.} % $t configure {-duration 00:00:30 00:00:30} {-networkType medium medium} % $t configure -networkType small % $t getSources 1 {ipAddress 10.1.1.2 groupAddress 224.0.0.1 rate 100} 2 {ipAddress 10.1.1.3 groupAddress 224.0.0.1 rate 1000} 3 {ipAddress 10.2.1.2 groupAddress 225.0.0.1 rate 10000} % $t addSource -ipAddress 1.0.0.1 -groupAddress 224.0.0.1 -rate 100 4 % $t removeSource 3 % $t getSubscribers 1 {maxSubscribers 100 groupAddress 224.0.0.1 sourceSpecific true sources {10.1.1.2 10.1.1.3}} 2 {maxSubscribers 1000 groupAddress 225.0.0.1 sourceSpecific false sources {}} % $t addSubscribers -maxSubscribers 4 -groupAddress 224.0.0.1 \ -sourceSpecific true -sources { 1.2.3.4 } 3 % $t removeSubscribers 3 % $t run -progress {bps::textprogress stdout} -rtstats echo -async {echo done
962
Table 16-73, Multicast Test Commands, lists the available Multicast Test commands and their descriptions. Table 16-73: Multicast Test Commands Command addSource ?arg arg ...? addSubscribers ?arg arg ...? cancel cget -option clearResults configure ?arg arg ...? exportReport ?arg arg ...? getSources getSubscribers isPending Description Adds a source that will generate UDP multicast data streams to your test. Allows you to define the subscriber (client) profiles to be used in your test. Cancels a test that has been running with the -async attribute. Retrieves the setting of an option. Clears the stored results of a test context. Sets the value for a parameter. Exports the report in PDF, XLS, ZIP, or HTML. Returns a list of sources used in the test. Returns a list of subscriber (client) profiles being used in your test. Returns the status of a job started using the -async option. Returns true if job is pending, returns false if job is not pending. Allows you to get to select a network type. Removes a source that generates UDP multicast data streams from the test. Removes a subscriber (client) profile from your test. Returns the variable. Runs the test. Saves the current test. Allows you verify that your test has not exceeded the available bandwidth limitations and hardware resources. Waits for that test to complete before continuing execution. This command is typically used after running a test that uses the -async attribute.
networkTypes removeSource index removeSubscribers index resultId run ?arg arg ...? save ?arg arg ...? validate ?arg arg ...?
wait
963
$multicastObjectName configure -option The configure command will list all parameters available for the Multicast test. Additionally, it will list the default setting and the current setting for each parameter. Table 16-74 on page 964 lists the parameters and their descriptions. Table 16-74: Multicast Parameters Parameter duration Description Sets the length of the test. Valid Values This time value can either be a number of seconds, or a time of the form hh:mm:ss small medium large
networkType
Syntax
Use the createLTETest command to create an LTE test. Additionally, the example below creates an object for the LTE test. Please note that for all parameters you do not explicitly define, the test will use the preexisting value defined for that parameter.
set LTEObjectName [$connectionObjectName createLTETest]
964
Table 16-75 breaks down the elements of creating an LTE test. Table 16-75: Creating an LTE Test Element LTEObjectName $connectionObjectName createLTETest Description The name of the LTE Test object created for the test. The name of the object created for the connection The command to create an LTE test.
Example
% set t [$bps createLTETest] ::bps::BPSConnection::bPSConnection0::lTEClient0 % $t configure {-alloc_rate 2 2} {-apn internet internet} {-appProfile {BreakingPoint Mobile User} {BreakingPoint Mobile User}} {-dataRate 1000 1000} {dnsServerIP 10.0.1.3 10.0.1.3} {-domainName example.org example.org} {-duration 00:00:30 00:00:30} {-gateway 10.0.1.1 10.0.1.1} {-imsi_base 240011234567000 240011234567000} {-msisdn_base 001123456782319 001123456782319} {-netaddr 10.0.1.0 10.0.1.0} {-netmask 24 24} {numEnodeB 65 65} {-numUE 1 1} {-num_dedicated_bearers 2 2} {operatorVariant 8FB21E23AE9123923AE428F8FB3428EF 8FB21E23AE9123923AE428F8FB3428EF} {-pdn_gateway 10.0.1.1 10.0.1.1} {pdn_netaddr 10.0.1.0 10.0.1.0} {-pdn_netmask 24 24} {-pdn_numHosts 200 200} {-pdn_router 10.0.1.2 10.0.1.2} {-pdn_startingIP 10.0.1.3 10.0.1.3} {-plmn_mcc 111 111} {-plmn_mnc 12 12} {-sctp_over_udp false false} {-sctp_sport 0 0} {-secretKey 12FF98428EF13AE823AE9B23B23428EF 12FF98428EF13AE823AE9B23B23428EF} {-startingIP 10.0.1.18 10.0.1.18} % $t configure -numUE 100 -numEnodeB 4 % $t getMMEs mmepool % $t addMME -hostname foo 2 % $t getMMEs mmepool foo % $t removeMME 2 % $t save % $t run
965
Table 16-76, LTE Test Commands, lists the available LTE test commands and their descriptions. Table 16-76: LTE Test Commands Command addMME ?arg arg ...? cancel cget option clearResults configure ?arg arg ...? exportReport ?arg arg ...? getComponents getMMEs isPending Description Adds an eNodeB/MME (Mobility Management Entity) client to a subnet. Cancels a test that has been running with the -async attribute. Retrieves the setting of an option. Clears the stored results of a test context. Sets the value for a parameter. Exports the report in PDF, XLS, ZIP, or HTML. Returns the components used by the test. Returns the MMEs used by the test. Returns the status of a job started using the -async option. Returns true if job is pending, returns false if job is not pending. Removes an LTE eNodeB/MME (Mobility Management Entity) client from a subnet. Returns the variable. Runs the test. Saves the current test. Allows you verify that your test has not exceeded the available bandwidth limitations and hardware resources Waits for that test to complete before continuing execution. This command is typically used after running a test that uses the -async attribute.
removeMME index resultId run ?arg arg ...? save ?arg arg ...? validate ?arg arg ...?
wait
966
The configure command will list all parameters available for the LTE test. Additionally, it will list the default setting and the current setting for each parameter. Table 16-77 on page 967 lists the parameters and their descriptions. Table 16-77: LTE Parameters Parameter alloc_rate Description Sets the rate at which UE bandwidth is allocated in the test The type of network connection to create This parameter defines the Application Profile that will be used in the test This parameter defines the bandwidth for the UEs in the test The address of the DNS to use when resolving hostnames A name for the domain Valid Values 1 9,223,372,036,854,775,807
apn
Up to 256 alphanumeric and/or special characters can be used to define the apn A valid Application Profile
appProfile
dataRate
1 4,294,967,295
dnsServerIP
domainName
Up to 256 alphanumeric and/or special characters can be used to define the domain name This time value can either be a number of seconds, or a time of the form hh:mm:ss A valid IPv4 address
duration
gateway
The default gateway that each eNodeB will be configured with Identifies the SIM card of each device A secondary unique identifier for each device, This number identifies a subscription in the UMTS network Defines a 32-bit or 128-bit base network address Defines the subnet mask for the Network Address
imsi_base msisdn_base
May be left blank or contain 11 to 15 digits May be left blank or contain 11 to 15 digits
netaddr netmask
967
Table 16-77: LTE Parameters Parameter numEnodeB numUE num_dedicated_b earers operatorVariant Description Sets the number of eNodeB clients to be used in the test. The total number of devices to simulate Specifies the number of UE dedicated bearers to use in the test. Specifies a unique value originally assigned by the UE manufacturer. The operator variant is usually unique to each brand of UE. The point of exit and entry of traffic for the UE The base pdn network address The netmask for the network address The total number of separate simulated hosts that will be used to provide Internet services The PDN IP address of the BreakingPoint CTM The first IP address that the Internet services will use The mobile country code of the PLMN The mobile network code of the PLMN Enables or disables the tunneling of SCTP over UDP. 1 4096 0 6,000,000 0 10 Valid Values
A 32-character hexadecimal
A valid IPv4 address A valid IPv4 address A valid IPv4 address A numeric value that is less than the number of hosts defined by the netmask (256) A valid IPv4 address Must fall within the network defined by the network address and netmask A mobile country code consisting of 3 numeric characters A valid mobile network code consisting of 2 or 3 numeric characters true or false
pdn_router pdn_startingIP
plmn_mcc plmn_mnc
sctp_over_udp
968
Table 16-77: LTE Parameters Parameter secretKey Description The base value for a secret key that is generated for each UE. The first IP address that the eNodeBs will be given. Valid Values A 32-character hexadecimal
startingIP
Syntax
Use the following syntax to validate your test lab tests:
%testObject validate
Example
% set t [$bps createLTETest]; #creates an LTE test object. % $t validate; #validates the LTE test object.
969
Bit Blaster
Table 16-78 on page 970 lists the Bit Blaster statistics that you can query. Table 16-78: Bit Blaster Statistics Statistic avgLatency Description The average latency for all frames transmitted and received by the component over the course of the test The total number of frames received by the component but were dropped because they were malformed or misrouted The number of frames that had a latency between 0 10 microseconds The number of frames that had a latency between 11 100 microseconds The number of frames that had a latency between 101 1000 microseconds The number of frames that had a latency between 1001 10000 microseconds The number of frames that had a latency of more than 10000 microseconds The total latency for all frames transmitted and received by the component
droppedFrames
970
Table 16-78: Bit Blaster Statistics Statistic result rxAvgFrameSize Description The result of the test (i.e., passed or failed) The average size of frames received by the component (in bytes). This value is computed by taking the receiving data rate and dividing it by the total number of received frames. The total number of bytes received by the component The rate at which data was received (in Mbps) by the component The rate at which frames were received (in fps) by the component The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames received by the component The total numbers of frames that were received by the component; this stat only includes tracks frames that encountered a CRC error. The total number of duplicate frames The total number of Out-of-Sequence frames received by the component The total number of slow start frames received by the component The total number of frames received by the component that did not come from the system The total number of frames that were not received on the correct port
rxFrameData rxFrameDataRate rxFrameRate rxFrameSize_1023 rxFrameSize_127 rxFrameSize_255 rxFrameSize_511 rxFrameSize_high rxFrames rxFramesCorrupt
971
Table 16-78: Bit Blaster Statistics Statistic rxMaxFrameDataRate rxMaxFrameRate txAvgFrameSize Description The maximum rate (in Mbps) at which data is received by the component The maximum rate (in fps) at which frames are received by the component The average size of frames transmitted by the component (in bytes). This value is computed by taking the transmitting data rate and dividing it by the total number of transmitted frames. The total number of bytes transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, application, and non-system generated traffic. The rate at which data was transmitted (in Mbps) by the component The rate at which frames were transmitted (in fps) by the component The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, application, and non-system generated traffic. The total number of slow start frames sent by the component The maximum rate (in Mbps) at which data is transmitted by the component The maximum rate (in fps) at which frames are transmitted by the component
txFrameData
972
Routing Robot
Table 16-79 on page 973 lists the Routing Robot statistics that you can query. Table 16-79: Routing Robot Statistics Statistic avgLatency Description The average latency for all frames transmitted and received by the component over the course of the test The total number of frames received by the component but were dropped because they were malformed or misrouted The number of frames that had a latency between 0 10 microseconds The number of frames that had a latency between 11 100 microseconds The number of frames that had a latency between 101 1000 microseconds The number of frames that had a latency between 1001 10000 microseconds The number of frames that had a latency of more than 10000 microseconds The total latency for all frames transmitted and received by the component The result of the test (i.e., passed or failed) The average size of frames received by the component (in bytes). This value is computed by taking the receiving data rate and dividing it by the total number of received frames. The total number of bytes received by the component The rate at which data was received (in Mbps) by the component The rate at which frames were received (in fps) by the component The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were between 64 127 bytes
droppedFrames
973
Table 16-79: Routing Robot Statistics Statistic rxFrameSize_255 rxFrameSize_511 rxFrameSize_high rxFrames rxFramesCorrupt Description The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames received by the component The total numbers of frames that were received by the component; this stat only includes tracks frames that encountered a CRC error. The total number of duplicate frames The total number of Out-of-Sequence frames received by the component The total number of slow start frames received by the component The total number of frames received by the component that did not come from the system The total number of frames that were not received on the correct port The maximum rate (in Mbps) at which data is received by the component The maximum rate (in fps) at which frames are received by the component The average size of frames transmitted by the component (in bytes). This value is computed by taking the transmitting data rate and dividing it by the total number of transmitted frames. The total number of bytes transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, application, and non-system generated traffic. The rate at which data was transmitted (in Mbps) by the component
txFrameData
txFrameDataRate
974
Table 16-79: Routing Robot Statistics Statistic txFrameRate txFrameSize_1023 txFrameSize_127 txFrameSize_255 txFrameSize_511 txFrameSize_high txFrames Description The rate at which frames were transmitted (in fps) by the component The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, application, and non-system generated traffic. The total number of slow start frames sent by the component The maximum rate (in Mbps) at which data is transmitted by the component The maximum rate (in fps) at which frames are transmitted by the component
Session Sender
Table 16-80 on page 975 lists the Session Sender statistics you can query. Table 16-80: Session Sender Statistics Statistic avgLatency Description The average latency for all frames transmitted and received by the component over the course of the test The total number of frames received by the component but were dropped because they were malformed or misrouted
droppedFrames
975
Table 16-80: Session Sender Statistics Statistic ipRxFrameData Description The total number of bytes received by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap. (IP frames only) The rate (Mbps) at which IP bytes are received. The rate (fps) at which IP frames are received. The total number of TCP frames received by the component The total number of bytes transmitted by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap. (IP frames only The rate (Mbps) at which IP bytes are transmitted. The rate (fps) at which IP frames are transmitted. The total number of TCP frames received by the component The number of frames that had a latency between 0 10 microseconds The number of frames that had a latency between 11 100 microseconds The number of frames that had a latency between 101 1000 microseconds The number of frames that had a latency between 1001 10000 microseconds The number of frames that had a latency of more than 10000 microseconds The total latency for all frames transmitted and received by the component The result of the test (i.e., passed or failed) The average size of frames received by the component (in bytes). This value is computed by taking the receiving data rate and dividing it by the total number of received frames.
ipTxFrameDataRate ipTxFrameRate ipTxFrames latency_10 latency_100 latency_1000 latency_10000 latency_high latency_total result rxAvgFrameSize
976
Table 16-80: Session Sender Statistics Statistic rxFrameData rxFrameDataRate rxFrameRate rxFrameSize_1023 rxFrameSize_127 rxFrameSize_255 rxFrameSize_511 rxFrameSize_high rxFrames rxMaxFrameDataRate rxMaxFrameRate tcpAttemptRate tcpAttempted tcpAvgCloseTime Description The total number of bytes received by the component The rate at which data was received (in Mbps) by the component The rate at which frames were received (in fps) by the component The total number of received frames that were between 512 1023 bytes The total number of received frames that were between 64 127 bytes The total number of received frames that were between 128 255 bytes The total number of received frames that were between 256 511 bytes The total number of received frames that were larger than 1024 bytes The total number of frames received by the component The maximum rate (in fps) at which frames are received by the component The maximum rate (in Mbps) at which data is received by the component The maximum number of sessions that were attempted per second The total number of TCP connections attempted by the client The average amount of time it takes from the first FIN-ACK to the last ACK. This value is computed by taking the total amount of time it takes for all TCP sessions to close time and dividing it by the total number of TCP sessions that had a close time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms.
977
Table 16-80: Session Sender Statistics Statistic tcpAvgResponseTime Description The average amount of time it takes to send the first SYN and to receive a SYN-ACK. This value is computed by taking the total response time for all TCP sessions and dividing it by the total number of TCP sessions that had a response time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The average amount of time TCP sessions remained in the ESTABLISHED state. This value is computed by taking the total duration time for all TCP sessions and dividing it by the total number of TCP sessions that had a duration time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The average amount of time it takes from when the first SYN is sent to when the connection has been established. This value is computed by taking the total amount of set up time for all TCP sessions and dividing it by the total number of TCP sessions that had a set up time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The rate at which TCP connections are closed by the client The total number of TCP connections closed by the client The total number of TCP connections concurrently opened by the client The rate at which TCP sessions are established by the client The total number of TCP connections established by the client The total number of TCP connections on the clients side that were in the CLOSE-WAIT state The total number of TCP connections on the clients side that were in the CLOSING state
tcpAvgSessionDuration
tcpAvgSetupTime
tcpClientStateClosing
978
Table 16-80: Session Sender Statistics Statistic tcpClientStateEstablished Description The total number of TCP connections on the clients side that were in the ESTABLISHED state The total number of TCP connections on the clients side that were in the FIN-WAIT1 stat The total number of TCP connections on the clients side that were in the FIN-WAIT2 state The total number of TCP connections on the clients side that were in the LAST_ACK state The total number of TCP connections on the servers side that were in the LISTEN state The total number of TCP connections on the servers side that were in the SYNRECEIVED state The total number of TCP connections on the servers side that were in the SYN-SENT state The total number of TCP connections on the clients side that were in the TIME-WAIT state The total number of sessions that had a close time of 0 10 ms The total number of sessions that had a close time of 11 100 ms The total number of sessions that had a close time of 101 1000 ms The total number of sessions that had a close time of 1001 10000 ms The total number of sessions that had a close time of more than 10000 ms The total number of sessions that had a close time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, and more than 10000 ms The maximum number of TCP flows concurrently open at any given time The maximum number of TCP sessions concurrently opened by the client
tcpClientStateSynSent
tcpFlowsConcurrent tcpMaxClientConcurrent
979
Table 16-80: Session Sender Statistics Statistic tcpMaxClientEstablishRate tcpMaxServerConcurrent tcpResponseTime_10 tcpResponseTime_100 tcpResponseTime_1000 tcpResponseTime_10000 tcpResponseTime_high tcpResponseTime_total Description The maximum rate at which the client establishes TCP connections The maximum number of TCP sessions concurrently opened by the server The total number of sessions that had a response time of 0 10 ms The total number of sessions that had a response time of 11 100 ms The total number of sessions that had a response time of 101 1000 ms The total number of sessions that had a response time of 1001 10000 ms The total number of sessions that had a response time of more than 10000 ms The total number of sessions that had a response time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, and more than 10000 ms The total number of bytes received by the component The maximum rate (in Mbps) at which TCP data is received by the component The rate (in fps) at which TCP frames are received by the component The total number of TCP frames received The rate at which TCP sessions are closed by the server The total number of TCP sessions closed by the server The total number of TCP connections concurrently opened by the server The rate at which TCP sessions are established by the server The total number of TCP connections established by the server
980
Table 16-80: Session Sender Statistics Statistic tcpServerStateCloseWait Description The total number of TCP connections on the servers side that were in the CLOSE-WAIT state The total number of TCP connections on the servers side that were in the CLOSING state The total number of TCP connections on the servers side that were in the ESTABLISHED state The total number of TCP connections on the servers side that were in the FIN-WAIT1 state The total number of TCP connections on the servers side that were in the FIN-WAIT-2 state The total number of TCP connections on the servers side that were in the LAST-ACK state The total number of TCP connections on the servers side that were in the LISTEN state The total number of TCP connections on the servers side that were in the SYNRECEIVED state The total number of TCP connections on the servers side that were in the SYN-SENT state The total number of TCP connections on the servers side that were in the TIME-WAIT state The number of sessions that had a duration between 0 10 ms in the ESTABLISHED state The number of sessions that had a duration between 11 100 ms in the ESTABLISHED state The number of sessions that had a duration between 101 1000 ms in the ESTABLISHED state
tcpServerStateClosing tcpServerStateEstablished
tcpServerStateFinWait1
tcpServerStateFinWait2
tcpServerStateSynSent
tcpServerStateTimeWait
tcpSessionDuration_10
tcpSessionDuration_100
tcpSessionDuration_1000
981
Table 16-80: Session Sender Statistics Statistic tcpSessionDuration_10000 Description The number of sessions that had a duration between 1001 10000 ms in the ESTABLISHED state The number of sessions that had a duration of more than 10000 ms in the ESTABLISHED state The total number of sessions that had session duration of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, and more than 10000 ms The number of sessions that had a duration between 0 10 ms to establish a connection The number of sessions that had a duration between 11 100 ms to establish a connection The number of sessions that had a duration between 101 1000 ms to establish a connection The number of sessions that had a duration between 1001 10000 ms to establish a connection The number of sessions that had a duration of more than 10000 ms to establish a connection The total number of sessions that had setup time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, and more than 10000 ms The rate (in Mbps) at which TCP data is transmitted by the component The rate (in Mbps) at which TCP data is transmitted by the component The rate (in fps) at which TCP frames are transmitted by the component The total number of TCP frames transmitted by the component
tcpSessionDuration_high
tcpSessionDuration_total
tcpSetupTime_10 tcpSetupTime_100
tcpSetupTime_1000
tcpSetupTime_10000
tcpSetupTime_high
tcpSetupTime_total
982
Table 16-80: Session Sender Statistics Statistic txAvgFrameSize Description The average size of frames transmitted by the component (in bytes). This value is computed by taking the transmitting data rate and dividing it by the total number of transmitted frames. The total number of bytes transmitted by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap. The maximum rate at which data was transmitted (in Mbps) by the component The maximum rate at which frames were transmitted (in fps) by the component The total number of transmitted frames that are between 512 1023 bytes The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, application, and non-system generated traffic. The maximum rate (in Mbps) at which data is transmitted by the component The maximum rate (in fps) at which frames are received by the component The maximum number of UDP flows that were open at any given time during the test
txFrameData
983
Application Simulator
Table 16-81 on page 984 lists the Application Simulator stats you can query. Table 16-81: Application Simulator Statistics Statistic aggregateAppFlows appAttempted appAttemptedRate Description The total number of flows opened for all application protocols The total number of application flows attempted The number of new application flows that are attempted by the component per second; this value accounts for all flows that have sent a Transaction Start packet. The average response time for an application flow; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The number of new application flows that are opened per second The number of transactions that had a response time that lasted between 0 10 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The number of transactions that had a response time that lasted between 11 100 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The number of transactions that had a response time that lasted between 101 1000 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The number of transactions that had a response time that lasted between 1001 10000 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent.
appAvgResponseTime
appFlowRate appResponseTime_10
appResponseTime_100
appResponseTime_1000
appResponseTime_10000
984
Table 16-81: Application Simulator Statistics Statistic appResponseTime_high Description The number of transactions that had a response time that lasted longer than 10000 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The total amount of response time across all application protocols The aggregate total of bytes received by the component for all application protocols The rate (in Mbps) at which Layer 7 traffic is received by the component; this value only includes application traffic. The rate (in fps) at which frames are received by the component; this value only includes application traffic. The aggregate total of bytes received by the component for all application protocols The total number of applications flows that were completed The number of application flows that are successfully established per second; this value accounts for all flows that have sent a Transaction End packet. The aggregate total of bytes transmitted by the component for all application protocols The rate (in Mbps) at which Layer 7 traffic is transmitted by the component; this value only includes application traffic. The rate (in fps) at which frames are transmitted by the component; this value only includes application traffic. The aggregate total of frames transmitted by the component for all application protocols The total number of applications flows that did not complete
appRxFrameRate
appTxFrameData appTxFrameDataRate
appTxFrameRate
appTxFrames appUnsuccessful
985
Table 16-81: Application Simulator Statistics Statistic appUnsuccessfulRate Description The rate at which application flows fail; this value accounts for all flows that have sent a Transaction Start packet, but no Transaction End packet. The average amount of latency for all received frames. This value is computed by adding the latencies for all frames and dividing that number by the total number of frames that use the stats: 0 10 us latency, 11 100 us latency, 1001 10000 us latency, and over 10000 us latency. The maximum number of concurrent application flows reached by the system The total number of frames received by the component but were dropped because they were malformed or misrouted The number of frames that had a latency between 0 10 microseconds The number of frames that had a latency between 11 100 microseconds The number of frames that had a latency between 101 1000 microseconds The number of frames that had a latency between 1001 10000 microseconds The number of frames that had a latency of more than 10000 microseconds The total latency for all frames transmitted and received by the component The maximum rate at which application flows were opened The maximum number of concurrent application flows reached by the system The result of the test (i.e., passed or failed) The average size of frames received by the component (in bytes). This value is computed by taking the receiving data rate and dividing it by the total number of received frames.
avgLatency
concurrentAppFlows droppedFrames
latency_10 latency_100 latency_1000 latency_10000 latency_high latency_total maxAppFlowRate maxConcurrentAppFlows result rxAvgFrameSize
986
Table 16-81: Application Simulator Statistics Statistic rxFrameData rxFrameDataRate rxFrameRate rxFrameSize_1023 rxFrameSize_127 rxFrameSize_255 rxFrameSize_511 rxFrameSize_high rxFrames rxMaxFrameDataRate rxMaxFrameRate tcpAttemptRate tcpAttempted tcpAvgCloseTime Description The total number of bytes received by the component The rate at which data was received (in Mbps) by the component The rate at which frames were received (in fps) by the component The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames received by the component The maximum rate (in Mbps) at which data is received by the component The maximum rate (in fps) at which frames are received by the component The rate at which TCP connections are attempted by the client The total number of TCP connections attempted by the client The average amount of time it takes from the first FIN-ACK to the last ACK. This value is computed by taking the total amount of time it takes for all TCP sessions to close time and dividing it by the total number of TCP sessions that had a close time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms.
987
Table 16-81: Application Simulator Statistics Statistic tcpAvgResponseTime Description The average amount of time it takes to send the first SYN and to receive a SYN-ACK. This value is computed by taking the total response time for all TCP sessions and dividing it by the total number of TCP sessions that had a response time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The average amount of time TCP sessions remained in the ESTABLISHED state. This value is computed by taking the total duration time for all TCP sessions and dividing it by the total number of TCP sessions that had a duration time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The average amount of time it takes from when the first SYN is sent to when the connection has been established. This value is computed by taking the total amount of set up time for all TCP sessions and dividing it by the total number of TCP sessions that had a set up time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The rate at which TCP sessions are closed by the client The total number of TCP connections closed by the client The total number of TCP connections concurrently opened by the client The rate at which TCP sessions are established by the client The total number of TCP connections established by the client The total number of TCP connections on the clients side that were in the CLOSE-WAIT state The total number of TCP connections on the clients side that were in the CLOSING state
tcpAvgSessionDuration
tcpAvgSetupTime
tcpClientStateClosing
988
Table 16-81: Application Simulator Statistics Statistic tcpClientStateEstablished Description The total number of TCP connections on the clients side that were in the ESTABLISHED state The total number of TCP connections on the clients side that were in the FIN-WAIT1 state The total number of TCP connections on the clients side that were in the FIN-WAIT2 state The total number of TCP connections on the clients side that were in the LAST_ACK state The total number of TCP connections on the clients side that were in the LISTEN state The total number of TCP connections on the clients side that were in the SYN-RECEIVED state The total number of TCP connections on the clients side that were in the SYN-SENT state The total number of TCP connections on the clients side that were in the TIME-WAIT state The number of TCP sessions that took between 0 10 ms to go from the first FINACK to the last ACK The number of TCP sessions that took between 11 100 ms to go from the first FINACK to the last ACK The number of TCP sessions that took between 101 1000 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took between 1001 10000 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took longer than 10000 ms to go from the first FIN-ACK to the last ACK The maximum number of TCP flows concurrently open at any given time The maximum number of TCP sessions concurrently opened by the client
tcpCloseTime_100
tcpCloseTime_1000
tcpCloseTime_10000
tcpCloseTime_high
tcpFlowsConcurrent tcpMaxClientConcurrent
989
Table 16-81: Application Simulator Statistics Statistic tcpMaxClientEstablishRate tcpMaxServerConcurrent tcpResponseTime_10 Description The maximum rate at which the client establishes TCP connections The maximum number of TCP sessions concurrently opened by the server The number of TCP sessions that took between 0 10 ms to go from the first FINACK to the last ACK The number of TCP sessions that took between 11 100 ms to go from the first FINACK to the last ACK The number of TCP sessions that took between 101 1000 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took between 1001 10000 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took longer than 10000 ms to go from the first FIN-ACK to the last ACK The total number of bytes received by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap. (TCP frames only) The maximum rate (in Mbps) at which TCP data is received by the component The rate (in fps) at which TCP frames are received by the component The total number of TCP frames received by the component The rate at which TCP sessions are closed by the server The total number of TCP connections closed by the server The total number of TCP sessions closed by the server The rate at which TCP sessions are established by the server
tcpResponseTime_100
tcpResponseTime_1000
tcpResponseTime_10000
tcpResponseTime_high
tcpRxFrameData
990
Table 16-81: Application Simulator Statistics Statistic tcpServerEstablished tcpServerStateCloseWait Description The total number of TCP connections established by the server The total number of TCP connections on the servers side that were in the CLOSE-WAIT state The total number of TCP connections on the servers side that were in the CLOSING state The total number of TCP connections on the servers side that were in the ESTABLISHED state The total number of TCP connections on the servers side that were in the FIN-WAIT1 state The total number of TCP connections on the servers side that were in the FIN-WAIT-2 state The total number of TCP connections on the servers side that were in the LAST-ACK state The total number of TCP connections on the servers side that were in the LISTEN state The total number of TCP connections on the servers side that were in the SYNRECEIVED state The total number of TCP connections on the servers side that were in the SYN-SENT state The total number of TCP connections on the clients side that were in the TIME-WAIT state The number of sessions that had a duration between 0 10 ms in the ESTABLISHED state The number of sessions that had a duration between 11 100 ms in the ESTABLISHED state The number of sessions that had a duration between 101 1000 ms in the ESTABLISHED state
tcpServerStateClosing tcpServerStateEstablished
tcpServerStateFinWait1
tcpServerStateFinWait2
tcpServerStateSynSent
tcpServerStateTimeWait tcpSessionDuration_10
tcpSessionDuration_100
tcpSessionDuration_1000
991
Table 16-81: Application Simulator Statistics Statistic tcpSessionDuration_10000 Description The number of sessions that had a duration between 1001 10000 ms in the ESTABLISHED state The number of sessions that had a duration of more than 10000 ms in the ESTABLISHED state The number of TCP sessions that took between 0 10 ms to send the first SYN and establish a connection The number of TCP sessions that took between 11 100 ms to send the first SYN and establish a connection The number of TCP sessions that took between 101 1000 ms to send the first SYN and establish a connection The number of TCP sessions that took between 1001 10000 ms to send the first SYN and establish a connection The number of TCP sessions that took longer than 10000 ms to send the first SYN and establish a connection The rate (in Mbps) at which TCP data is transmitted by the component The rate (in Mbps) at which TCP data is transmitted by the component The rate (in fps) at which TCP frames are received by the component The total number of TCP frames transmitted by the component The average size of frames transmitted by the component (in bytes). This value is computed by taking the transmitting data rate and dividing it by the total number of transmitted frames. The total number of bytes transmitted by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap.
tcpSessionDuration_high
tcpSetupTime_10
tcpSetupTime_100
tcpSetupTime_1000
tcpSetupTime_10000
tcpSetupTime_high
txFrameData
992
Table 16-81: Application Simulator Statistics Statistic txFrameDataRate txFrameRate txFrameSize_1023 txFrameSize_127 txFrameSize_255 txFrameSize_511 txFrameSize_high txFrames txMaxFrameDataRate txMaxFrameRate Description The rate at which data was transmitted (in Mbps) by the component The rate at which frames were transmitted (in fps) by the component The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames transmitted by the component The maximum rate (in Mbps) at which data is transmitted by the component The maximum rate (in fps) at which frames are transmitted by the component
Security
Table 16-82 on page 993 lists the Security stats you can query. Table 16-82: Security Statistics Statistic avgLatency Description The average amount of latency for all received frames. This value is computed by adding the latencies for all frames and dividing that number by the total number of frames that use the stats: 0 10 us latency, 11 100 us latency, 1001 10000 us latency, and over 10000 us latency. The Strike category to which the Strike belongs
category
993
Table 16-82: Security Statistics Statistic droppedFrames Description The total number of frames received by the component but were dropped because they were malformed or misrouted The number of frames that had a latency between 0 10 microseconds The number of frames that had a latency between 11 100 microseconds The number of frames that had a latency between 101 1000 microseconds The number of frames that had a latency between 1001 10000 microseconds The number of frames that had a latency of more than 10000 microseconds The result of the test (i.e., passed or failed) The average size of frames received by the component (in bytes). This value is computed by taking the receiving data rate and dividing it by the total number of received frames. The total number of bytes received by the component The rate at which data was received (in Mbps) by the component The rate at which frames were received (in fps) by the component The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames received by the component
994
Table 16-82: Security Statistics Statistic rxMaxFrameDataRate rxMaxFrameRate strikeresult strike_id strikesBlocked strikesErrored strikesPassed strikesTotal totalAllowed Description The maximum rate (in Mbps) at which data is received by the component The maximum rate (in fps) at which frames are received by the component The result of a Strike (i.e., blocked, passed, errored) A Strikes ID The total number of Strikes blocked by the DUT The total number of Strikes that encountered an error The total number of Strikes that were not blocked by the DUT The total number of Strikes sent to the DUT The aggregate number of Strikes not blocked by the DUT; this stat is measured across all Security components in a test. The aggregate number of Strikes blocked by the DUT; this stat is measured across all Security components in a test. The aggregate number of Strikes that encountered an error; this stat is measured across all Security components in a test. The average size of frames transmitted by the component (in bytes). This value is computed by taking the transmitting data rate and dividing it by the total number of transmitted frames. The total number of bytes transmitted by the component; this is the aggregate total for all types of traffic including IP, TCP, UDP, application, and non-system generated traffic. The rate at which data was transmitted (in Mbps) by the component The rate at which frames were transmitted (in fps) by the component
totalBlocked
totalErrored
txAvgFrameSize
txFrameData
txFrameDataRate txFrameRate
995
Table 16-82: Security Statistics Statistic txFrameSize_1023 txFrameSize_127 txFrameSize_255 txFrameSize_511 txFrameSize_high txFrames txMaxFrameDataRate txMaxFrameRate Description The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames transmitted by the component The maximum rate (in Mbps) at which data is transmitted by the component The maximum rate (in fps) at which frames are transmitted by the component
Stack Scrambler
Table 16-83 on page 996 lists the Stack Scrambler stats you can query. Table 16-83: Stack Scrambler Statistics Statistic avgLatency Description The average amount of latency for all received frames. This value is computed by adding the latencies for all frames and dividing that number by the total number of frames that use the stats: 0 10 us latency, 11 100 us latency, 1001 10000 us latency, and over 10000 us latency. The total number of frames received by the component but were dropped because they were malformed or misrouted The total number of pings received at the end of the test The total number of pings sent at the end of the test
droppedFrames
finalPingsRecv finalPingsSent
996
Table 16-83: Stack Scrambler Statistics Statistic latency_10 latency_100 latency_1000 latency_10000 latency_high pingsReceived pingsSent result rxAvgFrameSize Description The number of frames that had a latency between 0 10 microseconds The number of frames that had a latency between 11 100 microseconds The number of frames that had a latency between 101 1000 microseconds The number of frames that had a latency between 1001 10000 microseconds The number of frames that had a latency of more than 10000 microseconds The total number of pings sent by the component The total number of pings received by the component The result of the test (i.e., passed or failed) The average size of frames received by the component (in bytes). This value is computed by taking the receiving data rate and dividing it by the total number of received frames. The total number of bytes received by the component The rate at which data was received (in Mbps) by the component The rate at which frames were received (in fps) by the component The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were larger than 1024 bytes
997
Table 16-83: Stack Scrambler Statistics Statistic rxFrames txAvgFrameSize Description The total number of frames received by the component The average size of frames transmitted by the component (in bytes). This value is computed by taking the transmitting data rate and dividing it by the total number of transmitted frames. The total number of bytes transmitted by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap. The rate at which data was transmitted (in Mbps) by the component The rate at which frames were transmitted (in fps) by the component The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames transmitted by the component
txFrameData
Client Simulator
Table 16-84 on page 998 lists the Client Simulator stats you can query. Table 16-84: Client Simulator Statistics Statistic aggregateAppFlows appAttempted Description The total number of flows opened for all application protocols The total number of application flows attempted
998
Table 16-84: Client Simulator Statistics Statistic appAttemptedRate Description The number of new application flows that are attempted by the component per second; this value accounts for all flows that have sent a Transaction Start packet. The average response time for an application flow; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The number of new application flows that are opened per second The number of transactions that had a response time that lasted between 0 10 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The number of transactions that had a response time that lasted between 11 100 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The number of transactions that had a response time that lasted between 101 1000 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The number of transactions that had a response time that lasted between 1001 10000 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The number of transactions that had a response time that lasted longer than 10000 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The total amount of response time across all application protocols The aggregate total of bytes received by the component for all application protocols
appAvgResponseTime
appFlowRate appResponseTime_10
appResponseTime_100
appResponseTime_1000
appResponseTime_10000
appResponseTime_high
appResponseTime_total appRxFrameData
999
Table 16-84: Client Simulator Statistics Statistic appRxFrameDataRate Description The rate (in Mbps) at which layer 7 traffic is received by the component; this value only includes application traffic. The rate (in fps) at which frames are received by the component; this value only includes application traffic. The aggregate total of bytes received by the component for all application protocols The total number of applications flows that were completed The number of application flows that are successfully established per second; this value accounts for all flows that have sent a Transaction End packet. The aggregate total of bytes transmitted by the component for all application protocols The rate (in Mbps) at which layer 7 traffic is transmitted by the component; this value only includes application traffic. The rate (in fps) at which frames are transmitted by the component; this value only includes application traffic. The aggregate total of frames transmitted by the component for all application protocols The total number of applications flows that did not complete The rate at which application flows fail; this value accounts for all flows that have sent a Transaction Start packet, but no Transaction End packet. The average amount of latency for all received frames. This value is computed by adding the latencies for all frames and dividing that number by the total number of frames that use the stats: 0 10 us latency, 11 100 us latency, 1001 10000 us latency, and over 10000 us latency. The maximum number of concurrent application flows reached by the system
appRxFrameRate
appTxFrameData appTxFrameDataRate
appTxFrameRate
avgLatency
concurrentAppFlows
1000
Table 16-84: Client Simulator Statistics Statistic droppedFrames Description The total number of frames received by the component but were dropped because they were malformed or misrouted The number of frames that had a latency between 0 10 microseconds The number of frames that had a latency between 11 100 microseconds The number of frames that had a latency between 101 1000 microseconds The number of frames that had a latency between 1001 10000 microseconds The number of frames that had a latency of more than 10000 microseconds The total latency for all frames transmitted and received by the component The maximum rate at which application flows were opened The maximum number of concurrent application flows reached by the system The result of the test (i.e., passed or failed) The average size of frames received by the component (in bytes). This value is computed by taking the receiving data rate and dividing it by the total number of received frames. The total number of bytes received by the component The rate at which data was received (in Mbps) by the component The rate at which frames were received (in fps) by the component The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes
latency_10 latency_100 latency_1000 latency_10000 latency_high latency_total maxAppFlowRate maxConcurrentAppFlows result rxAvgFrameSize
1001
Table 16-84: Client Simulator Statistics Statistic rxFrameSize_511 rxFrameSize_high rxFrames rxMaxFrameDataRate rxMaxFrameRate tcpAttemptRate tcpAttempted tcpAvgCloseTime Description The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames received by the component The maximum rate (in Mbps) at which data is received by the component The maximum rate (in fps) at which frames are received by the component The rate at which TCP connections are attempted by the client The total number of TCP connections attempted by the client The average amount of time it takes from the first FIN-ACK to the last ACK. This value is computed by taking the total amount of time it takes for all TCP sessions to close time and dividing it by the total number of TCP sessions that had a close time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The average amount of time it takes to send the first SYN and to receive a SYN-ACK. This value is computed by taking the total response time for all TCP sessions and dividing it by the total number of TCP sessions that had a response time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The average amount of time TCP sessions remained in the ESTABLISHED state. This value is computed by taking the total duration time for all TCP sessions and dividing it by the total number of TCP sessions that had a duration time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms.
tcpAvgResponseTime
tcpAvgSessionDuration
1002
Table 16-84: Client Simulator Statistics Statistic tcpAvgSetupTime Description The average amount of time it takes from when the first SYN is sent to when the connection has been established. This value is computed by taking the total amount of set up time for all TCP sessions and dividing it by the total number of TCP sessions that had a set up time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The rate at which TCP sessions are closed by the client The total number of TCP connections closed by the client The total number of TCP connections concurrently opened by the client The rate at which TCP sessions are established by the client The total number of TCP connections established by the client The total number of TCP connections on the clients side that were in the CLOSE-WAIT state The total number of TCP connections on the clients side that were in the CLOSING state The total number of TCP connections on the clients side that were in the ESTABLISHED state The total number of TCP connections on the clients side that were in the FIN-WAIT1 state The total number of TCP connections on the clients side that were in the FIN-WAIT2 state The total number of TCP connections on the clients side that were in the LAST_ACK state The total number of TCP connections on the clients side that were in the LISTEN state The total number of TCP connections on the clients side that were in the SYN-RECEIVED state
tcpClientStateClosing tcpClientStateEstablished
1003
Table 16-84: Client Simulator Statistics Statistic tcpClientStateSynSent tcpClientStateTimeWait tcpCloseTime_10 Description The total number of TCP connections on the clients side that were in the SYN-SENT state The total number of TCP connections on the clients side that were in the TIME-WAIT state The number of TCP sessions that took between 0 10 ms to go from the first FINACK to the last ACK The number of TCP sessions that took between 11 100 ms to go from the first FINACK to the last ACK The number of TCP sessions that took between 101 1000 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took between 1001 10000 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took longer than 10000 ms to go from the first FIN-ACK to the last ACK The maximum number of TCP flows concurrently open at any given time The maximum number of TCP sessions concurrently opened by the client The maximum rate at which the client establishes TCP connections The maximum number of TCP sessions concurrently opened by the server The number of TCP sessions that took between 0 10 ms to go from the first FINACK to the last ACK The number of TCP sessions that took between 11 100 ms to go from the first FINACK to the last ACK The number of TCP sessions that took between 101 1000 ms to go from the first FIN-ACK to the last ACK
tcpCloseTime_100
tcpCloseTime_1000
tcpCloseTime_10000
tcpCloseTime_high
tcpResponseTime_100
tcpResponseTime_1000
1004
Table 16-84: Client Simulator Statistics Statistic tcpResponseTime_10000 Description The number of TCP sessions that took between 1001 10000 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took longer than 10000 ms to go from the first FIN-ACK to the last ACK The total number of bytes received by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap. (TCP frames only) The maximum rate (in Mbps) at which TCP data is received by the component The rate (in fps) at which TCP frames are received by the component The total number of TCP frames received by the component The rate at which TCP sessions are closed by the server The total number of TCP connections closed by the server The total number of TCP sessions closed by the server The rate at which TCP sessions are established by the server The total number of TCP connections established by the server The total number of TCP connections on the servers side that were in the CLOSE-WAIT state The total number of TCP connections on the servers side that were in the CLOSING state The total number of TCP connections on the servers side that were in the ESTABLISHED state The total number of TCP connections on the servers side that were in the FIN-WAIT1 state
tcpResponseTime_high
tcpRxFrameData
tcpServerStateClosing tcpServerStateEstablished
tcpServerStateFinWait1
1005
Table 16-84: Client Simulator Statistics Statistic tcpServerStateFinWait2 Description The total number of TCP connections on the servers side that were in the FIN-WAIT-2 state The total number of TCP connections on the servers side that were in the LAST-ACK state The total number of TCP connections on the servers side that were in the LISTEN state The total number of TCP connections on the servers side that were in the SYNRECEIVED state The total number of TCP connections on the servers side that were in the SYN-SENT state The total number of TCP connections on the clients side that were in the TIME-WAIT state The number of sessions that had a duration between 0 10 ms in the ESTABLISHED state The number of sessions that had a duration between 11 100 ms in the ESTABLISHED state The number of sessions that had a duration between 101 1000 ms in the ESTABLISHED state The number of sessions that had a duration between 1001 10000 ms in the ESTABLISHED state The number of sessions that had a duration of more than 10000 ms in the ESTABLISHED state The number of TCP sessions that took between 0 10 ms to send the first SYN and establish a connection The number of TCP sessions that took between 11 100 ms to send the first SYN and establish a connection
tcpServerStateSynSent
tcpServerStateTimeWait tcpSessionDuration_10
tcpSessionDuration_100
tcpSessionDuration_1000
tcpSessionDuration_10000
tcpSessionDuration_high
tcpSetupTime_10
tcpSetupTime_100
1006
Table 16-84: Client Simulator Statistics Statistic tcpSetupTime_1000 Description The number of TCP sessions that took between 101 1000 ms to send the first SYN and establish a connection The number of TCP sessions that took between 1001 10000 ms to send the first SYN and establish a connection The number of TCP sessions that took longer than 10000 ms to send the first SYN and establish a connection The rate (in Mbps) at which TCP data is transmitted by the component The rate (in Mbps) at which TCP data is transmitted by the component The rate (in fps) at which TCP frames are received by the component The total number of TCP frames transmitted by the component The average size of frames transmitted by the component (in bytes). This value is computed by taking the transmitting data rate and dividing it by the total number of transmitted frames. The total number of bytes transmitted by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap. The rate at which data was transmitted (in Mbps) by the component The rate at which frames were transmitted (in fps) by the component The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes
tcpSetupTime_10000
tcpSetupTime_high
txFrameData
1007
Table 16-84: Client Simulator Statistics Statistic txFrameSize_high txFrames txMaxFrameDataRate txMaxFrameRate Description The total number of transmitted frames that were larger than 1024 bytes The total number of frames transmitted by the component The maximum rate (in Mbps) at which data is transmitted by the component The maximum rate (in fps) at which frames are transmitted by the component
Recreate
Table 16-85 on page 1008 lists the Recreate stats you can query. Table 16-85: Recreate Statistics Statistic aggregateAppFlows appAttempted appAttemptedRate Description The total number of flows opened for all application protocols The total number of application flows attempted The number of new application flows that are attempted by the component per second; this value accounts for all flows that have sent a Transaction Start packet. The average response time for an application flow; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The number of new application flows that are opened per second The number of transactions that had a response time that lasted between 0 10 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The number of transactions that had a response time that lasted between 11 100 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent.
appAvgResponseTime
appFlowRate appResponseTime_10
appResponseTime_100
1008
Table 16-85: Recreate Statistics Statistic appResponseTime_1000 Description The number of transactions that had a response time that lasted between 101 1000 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The number of transactions that had a response time that lasted between 1001 10000 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The number of transactions that had a response time that lasted longer than 10000 ms; the response time is measured from when the Transaction Start packet is sent to when the Transaction End packet is sent. The total amount of response time across all application protocols The aggregate total of bytes received by the component for all application protocols The rate (in Mbps) at which layer 7 traffic is received by the component; this value only includes application traffic. The rate (in fps) at which frames are received by the component; this value only includes application traffic. The aggregate total of bytes received by the component for all application protocols The total number of applications flows that were completed The number of application flows that are successfully established per second; this value accounts for all flows that have sent a Transaction End packet. The aggregate total of bytes transmitted by the component for all application protocols The rate (in Mbps) at which layer 7 traffic is transmitted by the component; this value only includes application traffic.
appResponseTime_10000
appResponseTime_high
appRxFrameRate
appTxFrameData appTxFrameDataRate
1009
Table 16-85: Recreate Statistics Statistic appTxFrameRate Description The rate (in fps) at which frames are transmitted by the component; this value only includes application traffic. The aggregate total of frames transmitted by the component for all application protocols The total number of applications flows that did not complete The rate at which application flows fail; this value accounts for all flows that have sent a Transaction Start packet, but no Transaction End packet. The average amount of latency for all received frames. This value is computed by adding the latencies for all frames and dividing that number by the total number of frames that use the stats: 0 10 us latency, 11 100 us latency, 1001 10000 us latency, and over 10000 us latency. The maximum number of concurrent application flows reached by the system The total number of frames received by the component but were dropped because they were malformed or misrouted The number of frames that had a latency between 0 10 microseconds The number of frames that had a latency between 11 100 microseconds The number of frames that had a latency between 101 1000 microseconds The number of frames that had a latency between 1001 10000 microseconds The number of frames that had a latency of more than 10000 microseconds The total latency for all frames transmitted and received by the component The maximum rate at which application flows were opened
avgLatency
concurrentAppFlows droppedFrames
1010
Table 16-85: Recreate Statistics Statistic maxConcurrentAppFlows result rxAvgFrameSize Description The maximum number of concurrent application flows reached by the system The result of the test (i.e., passed or failed) The average size of frames received by the component (in bytes). This value is computed by taking the receiving data rate and dividing it by the total number of received frames. The total number of bytes received by the component The rate at which data was received (in Mbps) by the component The rate at which frames were received (in fps) by the component The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames received by the component The maximum rate (in Mbps) at which data is received by the component The maximum rate (in fps) at which frames are received by the component The rate at which TCP connections are attempted by the client The total number of TCP connections attempted by the client
rxFrameData rxFrameDataRate rxFrameRate rxFrameSize_1023 rxFrameSize_127 rxFrameSize_255 rxFrameSize_511 rxFrameSize_high rxFrames rxMaxFrameDataRate rxMaxFrameRate tcpAttemptRate tcpAttempted
1011
Table 16-85: Recreate Statistics Statistic tcpAvgCloseTime Description The average amount of time it takes from the first FIN-ACK to the last ACK. This value is computed by taking the total amount of time it takes for all TCP sessions to close time and dividing it by the total number of TCP sessions that had a close time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The average amount of time it takes to send the first SYN and to receive a SYN-ACK. This value is computed by taking the total response time for all TCP sessions and dividing it by the total number of TCP sessions that had a response time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The average amount of time TCP sessions remained in the ESTABLISHED state. This value is computed by taking the total duration time for all TCP sessions and dividing it by the total number of TCP sessions that had a duration time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The average amount of time it takes from when the first SYN is sent to when the connection has been established. This value is computed by taking the total amount of set up time for all TCP sessions and dividing it by the total number of TCP sessions that had a set up time of 0 10 ms, 11 100 ms, 101 1000 ms, 1001 10000 ms, or more than 10000 ms. The rate at which TCP sessions are closed by the client The total number of TCP connections closed by the client The total number of TCP connections concurrently opened by the client The rate at which TCP sessions are established by the client
tcpAvgResponseTime
tcpAvgSessionDuration
tcpAvgSetupTime
1012
Table 16-85: Recreate Statistics Statistic tcpClientEstablished tcpClientStateCloseWait Description The total number of TCP connections established by the client The total number of TCP connections on the clients side that were in the CLOSE-WAIT state The total number of TCP connections on the clients side that were in the CLOSING state The total number of TCP connections on the clients side that were in the ESTABLISHED state The total number of TCP connections on the clients side that were in the FIN-WAIT1 state The total number of TCP connections on the clients side that were in the FIN-WAIT2 state The total number of TCP connections on the clients side that were in the LAST_ACK state The total number of TCP connections on the clients side that were in the LISTEN state The total number of TCP connections on the clients side that were in the SYN-RECEIVED state The total number of TCP connections on the clients side that were in the SYN-SENT state The total number of TCP connections on the clients side that were in the TIME-WAIT state The number of TCP sessions that took between 0 10 ms to go from the first FINACK to the last ACK The number of TCP sessions that took between 11 100 ms to go from the first FINACK to the last ACK The number of TCP sessions that took between 101 1000 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took between 1001 10000 ms to go from the first FIN-ACK to the last ACK
tcpClientStateClosing tcpClientStateEstablished
tcpCloseTime_100
tcpCloseTime_1000
tcpCloseTime_10000
1013
Table 16-85: Recreate Statistics Statistic tcpCloseTime_high Description The number of TCP sessions that took longer than 10000 ms to go from the first FIN-ACK to the last ACK The maximum number of TCP flows concurrently open at any given time The maximum number of TCP sessions concurrently opened by the client The maximum rate at which the client establishes TCP connections The maximum number of TCP sessions concurrently opened by the server The number of TCP sessions that took between 0 10 ms to go from the first FINACK to the last ACK The number of TCP sessions that took between 11 100 ms to go from the first FINACK to the last ACK The number of TCP sessions that took between 101 1000 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took between 1001 10000 ms to go from the first FIN-ACK to the last ACK The number of TCP sessions that took longer than 10000 ms to go from the first FIN-ACK to the last ACK The total number of bytes received by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap. (TCP frames only) The maximum rate (in Mbps) at which TCP data is received by the component The rate (in fps) at which TCP frames are received by the component The total number of TCP frames received by the component
tcpResponseTime_100
tcpResponseTime_1000
tcpResponseTime_10000
tcpResponseTime_high
tcpRxFrameData
1014
Table 16-85: Recreate Statistics Statistic tcpServerCloseRate tcpServerClosed tcpServerConcurrent tcpServerEstablishRate tcpServerEstablished tcpServerStateCloseWait Description The rate at which TCP sessions are closed by the server The total number of TCP connections closed by the server The total number of TCP sessions closed by the server The rate at which TCP sessions are established by the server The total number of TCP connections established by the server The total number of TCP connections on the servers side that were in the CLOSE-WAIT state The total number of TCP connections on the servers side that were in the CLOSING state The total number of TCP connections on the servers side that were in the ESTABLISHED state The total number of TCP connections on the servers side that were in the FIN-WAIT1 state The total number of TCP connections on the servers side that were in the FIN-WAIT-2 state The total number of TCP connections on the servers side that were in the LAST-ACK state The total number of TCP connections on the servers side that were in the LISTEN state The total number of TCP connections on the servers side that were in the SYNRECEIVED state The total number of TCP connections on the servers side that were in the SYN-SENT state The total number of TCP connections on the clients side that were in the TIME-WAIT state
tcpServerStateClosing tcpServerStateEstablished
tcpServerStateFinWait1
tcpServerStateFinWait2
tcpServerStateSynSent
tcpServerStateTimeWait
1015
Table 16-85: Recreate Statistics Statistic tcpSessionDuration_10 Description The number of sessions that had a duration between 0 10 ms in the ESTABLISHED state The number of sessions that had a duration between 11 100 ms in the ESTABLISHED state The number of sessions that had a duration between 101 1000 ms in the ESTABLISHED state The number of sessions that had a duration between 1001 10000 ms in the ESTABLISHED state The number of sessions that had a duration of more than 10000 ms in the ESTABLISHED state The number of TCP sessions that took between 0 10 ms to send the first SYN and establish a connection The number of TCP sessions that took between 11 100 ms to send the first SYN and establish a connection The number of TCP sessions that took between 101 1000 ms to send the first SYN and establish a connection The number of TCP sessions that took between 1001 10000 ms to send the first SYN and establish a connection The number of TCP sessions that took longer than 10000 ms to send the first SYN and establish a connection The rate (in Mbps) at which TCP data is transmitted by the component The rate (in Mbps) at which TCP data is transmitted by the component The rate (in fps) at which TCP frames are received by the component The total number of TCP frames transmitted by the component
tcpSessionDuration_100
tcpSessionDuration_1000
tcpSessionDuration_10000
tcpSessionDuration_high
tcpSetupTime_10
tcpSetupTime_100
tcpSetupTime_1000
tcpSetupTime_10000
tcpSetupTime_high
1016
Table 16-85: Recreate Statistics Statistic txAvgFrameSize Description The average size of frames transmitted by the component (in bytes). This value is computed by taking the transmitting data rate and dividing it by the total number of transmitted frames. The total number of bytes transmitted by the component; this includes all packet overhead including L2, L3, and L4 headers, Ethernet CRC, and inter-packet gap. The rate at which data was transmitted (in Mbps) by the component The rate at which frames were transmitted (in fps) by the component The total number of transmitted frames that were between 512 1023 bytes The total number of transmitted frames that were between 64 127 bytes The total number of transmitted frames that were between 128 255 bytes The total number of transmitted frames that were between 256 511 bytes The total number of transmitted frames that were larger than 1024 bytes The total number of frames transmitted by the component The maximum rate (in Mbps) at which data is transmitted by the component The maximum rate (in fps) at which frames are transmitted by the component
txFrameData
txFrameDataRate txFrameRate txFrameSize_1023 txFrameSize_127 txFrameSize_255 txFrameSize_511 txFrameSize_high txFrames txMaxFrameDataRate txMaxFrameRate
1017
1018
Hardware Specifications
Appendix
This section details the hardware and software specifications for the BreakingPoint Storm CTM.
Hardware Specifications
Table A-1 on page I details the hardware specifications for the BreakingPoint Storm CTM. Table A-1: Hardware Specifications Hardware Component Model Dimensions Specification BreakingPoint Storm CTM Height: 5.25 inches (13.3 cm) Width: 17.5 inches (44.4 cm) Depth: 22.4 inches (56.9 cm) Weight: 40 lbs (18.2 kg) 4 - 10 Gigabit SX/LX fiber-optic ports 1 - 10/100/1000 Ethernet interface 1 - DB9 serial interface 1 - 10/100/1000 Ethernet interface 1 - DB9 serial interface 100-240 VAC 4 A at 50-60 Hz Maximum power consumption: 400 Watts Operating: 0 C to 40 C (32 F to 104 F) Non-operating: -20 C to 70 C (-4 F to 158 F) Humidity: 5% to 95% relative humidity, noncondensing No degradation up to 13,000 feet 4 - Multi-mode fiber-optic cables 2 - AC cables 2 - DB9 serial cables 4 - XFP 850 nm optical transceivers 2 - RJ-45 Ethernet cables 1 - Front-side AC adapter (International use only)
Dual Media Test Interfaces Target Control Ports BPS Management Ports Power Requirements
Software Specifications
Software Specifications
Table A-2 on page II details the software specifcations for the BreakingPoint Storm CTM. Table A-2: Software Specifications Software Component Browser Client Specification Supported browsers: Adobe Flash- (Version 10 or higher) enabled browser (Internet Explorer, Mozilla Firefox, and Safari) Not supported: Google Chrome Recommended minimum screen resolution: 1024 x 768 Minimum 2 Gb RAM Telnet Client Serial Client Telnet client running VT100 emulation Serial client running 115200/8/n/l/none
Light-Emitting Diodes
The light-emitting diodes (LEDs) status indicators are located on the front of the chassis. See Table A-3 on page II for descriptions of each LED and what each LED color represents. Table A-3: LED Statuses LED Status LED Color Amber Green Power LED Green Off Data Port Activity LED (bottom) Blinking Green Off Status Boot-up Operational Powered Off Passing traffic No traffic is passing through Description The system is booting up. The system is powered on and operational. The power is on. The power is off. The port is passing traffic. The port is not passing traffic.
II
CLI Commands
Table A-3: LED Statuses LED Data Port Link LED (top) Color Green Status Connected Description The port is connected at 10Gbps and ready to send data. The port is not ready to send data. This color indicates a link fault.
Off Amber
Disconnected Connected
CLI Commands
Table A-4 on page III lists the CLI commands available for the BPS Management port. Table A-4: CLI Commands Command ? ? <cmd> addUser Description Print a list of commands Print help for a command Add a user to the system Add a user to a group ? ? addUser addUser Joe Smith -name Joe email [email protected] addUser Joe Smith -name Joe email [email protected] -group admin exit help help addUser networkInfo passwd Sample Syntax
Exit the shell Print the list of commands with descriptions Print help for a command Retrieve network setup information Change the password for the account logged into the BPS Management port Reboot the system Delete a user account Configure a network interface
reboot removeUser Joe updateNetwork -dhcp yes hostname test.bpointsys.int ip 10.10.10.123 -netmask 24 gw 10.10.10.1
III
CLI Commands
Table A-4: CLI Commands Command updateUser uptime userInfo version Description Modify a user account Display the systems uptime Query a users information Display the firmware version Sample Syntax updateUser joe -name Joseph Smith -email [email protected] uptime userInfo joe version
IV
Table A-5: Dell PowerConnect 6024 Global Scripts Templates Script VLAN Create Template Expect > Send enable\r Expect # Send conf \r Expect # Send vlan database\r Expect # Send vlan 1-12\r Expect # Send exit\r Expect # Send exit\r Expect # Expect > Send enable\r Expect # Send conf \r Expect # Send vlan database\r Expect # Send no vlan 1-12\r Expect # Send exit\r Expect # Send exit\r Expect #
VLAN Delete
VI
Extreme Summit 7i Table A-6 on page VII lists the global scripts for the Extreme Summit 7i device type. Table A-6: Extreme Summit 7i Global Scripts Templates Script VLAN Create Template Send amdin\r Expect password: Send password\r Expect # Send create vlan test\r Expect # Send configure vlan test ipaddress 192.168.1.1/16\r Expect # Send exit\r Expect # Send exit\r Expect # Send amdin\r Expect password: Send password\r Expect # Send delete vlan test\r Expect # Send exit\r Expect # Send exit\r Expect # Send amdin\r Expect password: Send password\r Expect # Send config dot1q ethertype 9100\r Expect # Send config jumbo-frame size 1530\r Expect # Send config vlan test tag 50\r Expect # Send config vlan test add port 1-4 untag\r Expect # Send config vlan test add port 31,32 tagged\r Expect # Send exit\r Expect # Send exit\r Expect #
VLAN Delete
Trunk Create
VII
HP ProCurve 7500yl Table A-7 on page VIII lists the global commands available for the HP ProCurve 7500yl device type. Table A-7: HP ProCurve 7500yl Global Scripts Templates Script VLAN Delete Send r\r Expect Password: Send password\r Expect # Send config t\r Expect # Send no vlan 2\r Expect # Send exit\r Expect # Send exit\r Expect # Send r\r Expect Password: Send password\r Expect # Send config t\r Expect # Send vlan 2\r Expect # Send exit\r Expect # Send exit\r Expect # Template
VLAN Create
VIII
Index
A
AcknowledgeAllSegments 118 AcknowledgementAllSegments 116 Action Parameters 175 Definition 121 Actions 175 Definition 121 Delete 144 Active Mode (PORT) 155 Active Test Criteria 588 addAction 717, 788, 793 addDHCPClients 717 addDomain 748 Tcl command 717 addENodeB 717 addENodeBClients 717 addFlow 718, 784 addGGSN 718 addGroup 718, 757 addHost 718, 779, 780 addHostRange 718 addImpairment 718 addMatchAction 719, 794 addMME 966 addMMEClients 719 addPath 719 addPhase 798, 799 addSGSN 719 addSGSNClients 719 addSGWClients 719 addStrike 719, 764 addSubnet Tcl command 720 addSuperflow 720, 775 addUser 720 Adobe Flash Player 9 aggStats 720 AIM Protocol Parameters 145 AllExceptLastFragmentOneTCPSegment AllFragmentsOneTCPSegment 116 AOL Protocol Parameters 145 App Profile 6
116
Index
Create 127 Definition 121, 125 App Profiles 125 AppleJuice Protocol Parameters 145 Application Manager 6 Application Simulator 530 Data rate distribution.Data rate scope 531 Data rate distribution.Data rate type 532 Data rate distribution.Data rate unit 531 Data rate distribution.Maximum value 532 Data rate distribution.Minimum value 532 Delay Start 532 IPv4 Configuration.TOS/DSCP 537, 560 IPv4 Configuration.TTL 537, 560 Quick Test 580 Ramp Up Profile. Minimum Connection Rate 535 Ramp Up Profile.Every N seconds 536 Ramp Up Profile.Increment N connections per second 536 Ramp Up Profile.Maximum Connection Rate 536 Ramp Up Profile.Ramp Up Profile Type 535 Session Configuration.Maximum Sessions Per Second 536, 559 Session Configuration.Maximum Simultaneous Sessions 536 Session Configuration.Target Minimum Sessions Per Second 537, 559 Session Configuration.Target Minimum Simultaneous Sessions 537, 559 Session Ramp Distribution.Ramp Down Behavior 534 Session Ramp Distribution.Ramp Down Seconds 534 Session Ramp Distribution.Ramp Up Behavior 533 Session Ramp Distribution.Ramp Up Seconds 533 Session Ramp Distribution.Steady-State Behavior 534 Session Ramp Distribution.Steady-State Seconds 534 Session.Configuration.Unlimited Session Close Rate 537 TCP Configuration.Add Segment Timestamps 538 TCP Configuration.Delay ACKs 538, 561 TCP Configuration.Initial Receive Window 538 TCP Configuration.Maximum Segment Size (MSS) 537 TCP Configuration.Retry Count 538 TCP Configuration.Retry Quantum 537, 539 Application Simulator Parameters 531 Application Simulator stats 984 ApplicationPings 111 appsim 816 appsim_ed 817 appsim_isp 817 appsim_Max10K 816 appsim_wanacc 817, 825 AppSimAppProfile 112 AppSimSmartFlow 111 AppSimSuperFlow 112 AppSimUseNewTuple 112 AREA-ID 111
Index
AS-ID 110 ATI Updates xxviii, 7 Installation 31 Attack Profile Options 96 Attack Series Export 120 AuthenticationType 109 Auto-Create Global Scripts 46
B
Backup 37 backup 720 Bandwidth 462 Restrictions 462 Bandwidth Limitations 587 Base64EncodePOSTData 102 Bearer Independent Call Control Protocol Parameters 146 BGP Protocol Parameters 146 BID 96 Bidirectional 488 Bit Blaster Advanced Options - Ethernet type value 474 Advanced Options - Payload.UDF data width 474 Advanced Options - Payload.UDF length 474 Advanced Options - Payload.UDF mode 473 Advanced Options - Payload.UDF offset 473 Data Rate.Data rate type 469 Data Rate.Data rate unit 469 Data Rate.Every N seconds 470 Data Rate.Increment N units 470 Data Rate.Maximum value 470 Data Rate.Minimum value 470 Delay Start 469 Payload 465 Payload.Data 473 Payload.Data width 472 Payload.Type 472 Quick Test 580 Size distribution.Every N seconds 472 Size distribution.Increment N units 472 Size distribution.Maximum value 471 Size distribution.Minimum value 471 Size distribution.Size distribution type 471 Size distribution.Size distribution unit 470 Slow Start 474
Index
Test duration.Test duration measured in frames 469 Test duration.Test duration measured in seconds 469 Bit Blaster Parameters 469 Bit Blaster statistics 970 Bit Torrent Track Register 198 bitblaster 817 bitblaster_10000Mbps 817 bitblaster_1Gbps 817 bitblaster_5Gbps 817 BitTorrent Peer Protocol Parameters 146 BitTorrent Tracker Protocol Parameters 146 Blocked Open xvii BNC Interfaces 3 BNC interfaces 3 bps connect 720, 732 textprogress 720 BPS Management Ethernet Port 3 BPS management ports 2 BPS Management Serial Port 3 Browser High Evasion 512 Low Evasion 512 Medium Evasion 513 Bsd 107 Bsd-Right 107
C
Caller RTP Port 170 Capture File 459 Import 457 Chargen Protocol Parameters 147 Cipher Suites 540 Citrix Protocol Parameters 147 Client Sim Data rate distribution.Maximum data rate Data rate distribution.Minimum data rate Data rate.Data rate scope 553 Data rate.Data rate type 554 Data rate.Data rate unit 554 Data rate.Data rate unlimited 553 Delay Start 557
554 554
Index
Load Profile 561 Ramp Up Profile. Minimum Connection Rate 558 Ramp Up Profile.Every N seconds 558 Ramp Up Profile.Increment N connections per second 558 Ramp Up Profile.Maximum Connection Rate 558 Ramp Up Profile.Ramp Up Profile Type 557, 558 Session Ramp Distribution.Ramp Down Seconds 557 Session Ramp Distribution.Ramp Up Behavior 555 Session Ramp Distribution.Ramp Up Seconds 556 Session Ramp Distribution.Steady-State Behavior 556 Session Ramp Distribution.Steady-State Seconds 556 Session.Configuration.Unlimited Session Close Rate 559 Super Flow 562 TCP Configuration.Add Segment Timestamps 561 TCP Configuration.Initial Receive Window 561 TCP Configuration.Maximum Segment Size (MSS) 560 TCP Configuration.Retry Count 561 TCP Configuration.Retry Quantum 561 Client Simulator 553 Session Configuration.Maximum Simultaneous Super Flows Client Simulator stats 998 ClientChunkedTransfer 102 ClientChunkedTransferSize 102 clientsimpreset 817 clientsimpreset_medium 832 clock I/O 3 Cloned Network Neighborhoods 51 Closed by Reset xix COMMAND Settings 97 CompactHeaders 112 Conditional Requests 793 configure Tcl command 720 configureContext Tcl command 720 configureTest 929 Connection Definition xv connection xix Connection Parameters 41 Connection Type 13 Control Center 4 corrupted frame % 651 createAppProfile 720 createComponent 813 Tcl command 720 createEvasionProfile Tcl command 720 createLawfulInterceptTest 954, 964 Tcl command 720 createLoadProfile 721, 797
559
Index
createLTETest Tcl command 720 createMultiboxTest 721, 928 createMulticastTest 721, 960 Tcl command 721 createNeighborhood 747, 748 Tcl command 721 createResiliencyTest 949, 952 Tcl command 721 createRFC2544Test 940, 941, Tcl command 721 createServerResiliencyTest 721 createSessionLabTest Tcl command 721 createSessionSenderTest 944 createStrikeList 720, 755 Tcl command 721 createSuperflow 721, 773 createTest 721, 804 createTestSeries 721, 936 CSV 924 CSV Files 710 CVE 96
944
D
Data Ports 2 Data Rate Decrement 477 Increment 467 Data Transfer Method 155 date 12 DB Expunge 26 DB2 Protocol Parameters 149 DCE/RPC Options 97 DCERPC High Evasion 513 Low Evasion 513 Medium Evasion 513 Protocol Parameters 149 Default Evasion Settings 510 Delay Start 469, 479, 500, DelaySeconds 111 Delete 459 delete Tcl command 721 deleteAppProfile 721, 771 deleteAttackSeries 721
509,
521,
532,
557
Index
deleteContext Tcl command 721 deleteEvasionProfile Tcl command 721 deleteLoadProfile 721, 802 deleteMultiboxTest 721 deleteNeighborhood Tcl command 721 deleteStrikeList Tcl Command 721 deleteSuperFlow Tcl Command 721 deleteSuperflow 777 deleteTest Tcl command 721 deleteTestResults Tcl Command 722 deleteTestSeries 722 Destination Port Mask 484 Destination Port Modifier 485 Device Selection 13 Device Status 5 DHCP Routes 29 Diagnostics File xxiii DIAMETER Protocol Parameters 151 DirectoryFakeRelative 102 DirectorySelfReference 103 Disabled 107 Discard Protocol Parameters 150 DNS Protocol Parameters 151 dnsname 778 Domain 15, 52 domainNames Tcl command 722 Domains 51 Double Tag 58 DuplicateBadChecksum 117 DuplicateBadReset 117 DuplicateBadSeq 117 DuplicateBadSyn 117 DuplicateLastSegment 117 DuplicateNullFlags 117 DUT Profile 6, 13 DUT Profiles 41
Index
E
Ebay Protocol Parameters 151 Echo Protocol Parameters 152 eDonkey Protocol Parameters 152 EMAIL Options 98 E-mail Server xvi E-mail Test Results 6 Email Test Results xv, 36 EncodeDoubleNibbleHex 103 EncodeDoublePercentHex 103 EncodeFirstNibbleHex 103 EncodeHexAll 103 EncodeHexRandom 103 EncodeSecondNibbleHex 103 EncodeUnicodeAll 103 EncodeUnicodeBareByte 103 EncodeUnicodeInvalid 103 EncodeUnicodePercentU 103 EncodeUnicodeRandom 103 Encoding Type 154 EndingFuzzerOffset 110 EndRequestFakeHTTPHeader 103 EnvelopeType 98 eSATA 2 eSATA Port 3 Ethernet Address 49 Ethernet Settings 98 Evasion Profile Edit 119 Evasion Profile settings 89 Evasion Settings 510 EvasionLevel 100 exceptions 631 Expect 45 Expect Command Expect 44 Expect-Close 45 Power Cycle 45 Send 44 Wait 45 Export Test 585 exportPacketTrace 722, 738 exportPacktTrace 734 exportReport 924 Tcl command 722 Extended Active Mode (EPRT) 155
Index
155
F
factoryRevert 742 Tcl command 722 fan tray 1, 4 FILETRANSFER Settings 99 Finger Protocol Parameters 153 FIX Protocol Parameters 154 FIXT Protocol Parameters 154 Flow Create 143 Definition xv, 121 Delete 143 flow xix flowexceptions 729 flowid 135 force reserve 19 ForwardToBackSlashes 103 FragEvasion 107 FragOrder 107 FragPolicy 107 frame loss % 651 Frame Size Decrement 475 Increment 466 FTP AuthentificationType 99 Directory Listing 249 Multiple telnet opcodes 514 One telnet opcode per character 514 One telnet opcode per word 514 Protocol Parameters 154 SIngle telnet opcode 514 Single telnet opcode 514 Welcome Banner 248 FTP Options 99 full close xix Full DB Expunge 34
G
Gateway 48, 49
Index
Gateway IP Address 17 getActionChoices 722, 788, 789 getActionParameters 722, 790 getActions 722, 790 getAggStats 722 getBuildId 742 Tcl command 722 getChassis 722, 734 getComponents 723, 922 getDHCPServer 723 getDomains 921 getDut 723 getFilters 723 getFlowParameters 723, 786 getFlows 723, 783 getGroupParameters 766, 767 getGroups 723, 756 getHosts 723, 778 getImpairments 723 getMatchActionParameters 723, 794 getMMEs 966 getNeighborhood Tcl command 723 GetParameterRandomPrepend 103 getPaths 723 getPhases 798 getResourceAllocation 736 getState 723, 734 getStrikeInfo 724 getStrikepackId 742 Tcl command 724 getStrikes 765 getSubnets 724 getSuperFlows 776 getSystemGlobal Tcl command 724 getSystemType 742 Tcl command 724 getTest Tcl Command 724 getTests 930, 931, 938 getVersion 724 getVlanEtherType Tcl command 724 Global Script Create 45 Global Scripts 44 Auto Create 46 Global Settings 101 Goto Action 175
Index
H
Host vi Create 142 Delete 142 host Tcl Command 724 HTML 924 Unicode UTF16 (Big Endian 515 Unicode UTF16 (Little Endian) 515 Unicode UTF32 (Big Endian) 515 Unicode UTF32 (Little Endian) 515 Unicode UTF7 All 515 Unicode UTF7 Standard 515 Unicode UTF8 Overlong Maximum Size 516 Overlong Minimum Size 516 Unicode UTF8 Overlong 516 Invalid Minimum Size 516 HTMLPadding 111 HTMLUnicodeEncoding 101 HTMLUnicodeUTF7EncodingMode 101 HTMLUnicodeUTF8EncodingMode 102 HTMLUnicodeUTF8EncodingSize 102 HTTP Apache High Evasion 517 Apache Low Evasion 517 Apache Medium Evasion 517 Apache No Evasion 517 AuthenticationType 102 Complete Hex Encoding 518 Complete Unicode Encoding 518 Covert forward slash to backslash 518 Fake relative directory 518 GET / POST Parameter Random Prepend IIS High Evasion 518 IIS Low Evasion 519 IIS Medium Evasion 1 519 IIS Medium Evasion 2 519 No Evasion 519 Protocol Parameters 159 Random hex encoding 520 Request fake HTTP header 520 Self-referential directory 520 Self-referential directory and Fake relative HTTP 404 Error 308 HTTP Options 102 HTTP-Advanced Content-MD5 header 299 Client Delay 288, 311
518
520
Index
HTTP 404 Error 308 Keep Alive 299 Raw Request 289 Reponse 200 (OK) 305 Server Delay 288, 312 HTTPServerProfile 103
I
IAX2 Protocol Parameters 164 IDENT Protocol Parameters 164 IEC104 Protocol Parameters 164 iface 778 IMAP Protocol Parameters 165 IMAP4 AuthenticationType 106 IMAP4 Options 106 Import Attacks xvii Import Test 585 importPcap 741 Tcl Command 724 importTest 724, 808 Informix Protocol Parameters 165 initContext Tcl command 724 Inner VLAN ID 49, 50, 58 installStrikepack 742 Tcl command 724 installUpdate 742 Tcl command 724 Invalid File Format x IP Ordered 16 byte, overlapping (new) 510 Ordered 16 byte, overlapping (old) 510 Ordered 24 byte fragments 510 Ordered 8 byte fragments 510 Out-of-order 8 byte fragments 511 Reverse order 8 byte fragments 511 IP Options 107 IPMI Protocol Parameters 165 IPv4 48 IPv6 xi, 49
Index
J
Jabber Protocol Parameters JavaScript 4 167
L
Lawful Intercept Test Lab 6 LDAP Protocol Parameters 167 LDP Protocol Parameters 167 listAppProfiles 724, 769 listAttackProfiles 724 listAttackSeries 724, 754 listBackups 724 listDUTs 725, 753, 754 listEvasionProfiles 724 listFlowParameters 784 listLoadProfiles 725, 796 listMultiboxTests 927 listNeigbhorhoods 746 listNeighborhoods 725, 954 listProtocols 725, 781 listStrikeKeywords 725 listStrikes 725 listSuperFlows 772, 773 listSuperflows 725 listTestResults 725 listTests 803, 937 listTestSeries 935, 936 literal expression 135 Load Profile 506, 561, 577 Load Profiles 796 Locked Account v Login ID 11 login ID 10
Index
M
MAC Address vi Malicious 97 Malware Settings 108 Match Action Parameters 794 Match Actions 794 MaxFragmentSize 97 MaxFragSize 108 Maximum Address 49, 50 Maximum IP Address 18 MaximumIterations 111 MaximumRuntime 111 MaxReadSize 108, 113 MaxSegmentSize 117 MaxWriteSize 108, 113 Menu Bar 5 MethodRandomInvalid 103 MethodRandomizeCase 104 MethodRandomValid 103 MethodURINull 104 MethodURISpaces 104 MethodURITabs 104 Minimum Address 49, 50 Minimum IP Address 18 Modification Options 577 New Port replacing Original Port 577 Number of times to loop capture file 577 Original Port to be rewritten as New Port 577 Replay capture file without modification 577 Modification OptionsBPF filter string 577 modifyAction 789 modifyFlow 725, 786 modifyGroup 725, 757, 766 modifyHost 725, 780 modifyMatchAction 726 modifyPhase 800 MSB 96 MSSQL Protocol Parameters 168 Multi-box Testing xii, 6 Multicast Test Lab 6 MultiContextBind 97 MultiContextBindHead 97 MultiContextBindTail 97 My Preferences 26, 36
Index
N
NAS IP Address 169, 170 NAS Port 169, 170 NAT vi, 49 Navigational Buttons 6 NetBIOS-DGM Protocol Parameters 168 Netmask 17, 48 Network Address 48, 49 Network IP Address 17 Network Neighborhood 6, 14 Clone 51 Create 50 Delete 51 Host 48, 49 Parameters 48 Set Up 48 Virtual Router 48, 49 Non-VLAN Subnet 56 NTP Protocol Parameters 168 NullCredentialPadding 115
O
Offset into the Seed 527 One-Arm Security 507 one-arm server vii OneFragmentMultipleTCPSegments 116 OneFragmentMultipleTCPSegmentsCount OneFragmentPerTCPSegment 116 onsystemerror 742 Operator 589 Optional Arguments 729 Outer VLAN ID 49, 50, 58 Overlap-All-New 107 Overlap-All-Old 107 Overlap-Last-New 107 Overlap-Last-Old 107
115
P
Packet Size Decrement 475 Increment 466
Index
Packet Trace 919 PadCommandWhitespace 97, 100, PadHeadersLineBreak 113 PadHeadersWhitespace 113 PadPathSlashes 97, 119 Passive Mode (PSV) 155 Password Reset 28 password 10 Pause Frames 657 PCAP file ix PDF 924 POP3 EnvelopeType 112 Protocol Parameters 169 POP3 Options 109 port notes 20, 77 Port Number Distribution 490 port reservations 18, 75 PostgreSQL Protocol Parameters 169 PostParameterRandomPrepend 104 Power Inlet 4 power inlet 3 Power Switch 3 Prefix 49 Preload for slower connections xxiii Previous Revert 38 previousRevert 742 Tcl command 726 Protocol Parameters 144 Definition 121 Proxy 67
109,
114,
119
Q
Quick DB Expunge Quick Test 579 Run 580 Quick Tests 6 34
R
Radius Access Protocol Parameters Radius Accounting Protocol Parameters 169 170
Index
Ramp 503 Ramp Down Phase 492, 531 Ramp Up Phase 491, 530 Ramp Up Profile.Ramp Up Profile Type 503 Random Seed xvii RandomizeCase 113 RandomNops 112 RandomPipeOffset 114 Rate Higher Limit 656 Rate Lower Limit 656 Real Time Stats 6 Real-Time Statistics 628 Application Tab 629 Attacks Tab 629 Client Tab 629 Encryption Tab 629 Interface Tab 629 Resources Tab 629 Summary Tab 629 TCP Tab 629 reboot 742 Tcl command 726 Recipient RTP Port 170 Recreate 7, 566 Data rate distribution.Data rate scope 574 Data rate distribution.Data rate type 575 Data rate distribution.Data rate unit 574 Data rate distribution.Maximum value 575 Data rate distribution.Minimum value 575 Filename 575 General Behavior 569 IPv4 Configuration.TOS/DSCP 573 IPv4 Configuration.TTL 573 Load Profile 577 Session Configuration.Maximum Sessions Per Second 572 Session Configuration.Maximum Simultaneous Sessions 572 Session Configuration.Target Minimum Sessions Per Second 573 Session Configuration.Target Minimum Simultaneous Sessions 573 TCP Configuration.Add Segment Timestamps 574 TCP Configuration.Delay ACKs 574 TCP Configuration.Initial Receive Window 574 TCP Configuration.Maximum Segment Size (MSS) 573 TCP Configuration.Retry Count 574 TCP Configuration.Retry Quantum 573, 574 recreate 818 Recreate Parameters 569 Recreate stats 1008 removeAction 792 removeDHCPClients 726 removeDomain Tcl command 726
Index
removeENodeB 726 removeENodeBClients 726 removeFilter 726 removeFlow 727, 785 removeGGSN 727 removeHost 781 removeHostRange 727 removeImpairment 727 removeMatchAction 727 removeMME 966 removeMMEClients 727 removePath 727 removePhase 800 removeSGSN 727 removeSGSNClients 727 removeSGWClients 727 removeStrike 727, 765 removeSubnet Tcl command 728 removeSuperflow 728, 777 removeTest 931, 938 Repetitions 111 Reponse 200 (OK) 306 Report Individual CLSIDs 111 Reports 7 RequestFullURL 104 reservePort 728, 734, 735 Reset 3 Password v Resiliency Score Test Lab 7 resolution 656 Restart 38 Restore 37 restoreBackup 728 Restrictions 462 resultId Tcl command 728 RFC 2544 Test 940 RFC3514 108 Router IP Address 18 ROUTER-ID 110 Routes 26, 29 Routing Robot 475 Advanced Options - IPv4.Checksum field 486 Advanced Options - IPv4.Checksum value 486 Advanced Options - IPv4.Length field 486 Advanced Options - IPv4.Length value 486 Advanced Options - IPv4.Option header data 486 Advanced Options - IPv4.Option header field 486 Advanced Options - IPv4.TOS/DSCP 485 Advanced Options - IPv4.TTL 485
Index
Advanced Options - IPv6.Address prefix 487 Advanced Options - IPv6.Extension header data 488 Advanced Options - IPv6.Extension header field 487 Advanced Options - IPv6.Flow label 487 Advanced Options - IPv6.Hop limit 486 Advanced Options - IPv6.Length field 487 Advanced Options - IPv6.Length value 487 Advanced Options - IPv6.Next header 487 Advanced Options - IPv6.Traffic class 486 Advanced Options - Payload.UDF data width 484 Advanced Options - Payload.UDF length 484 Advanced Options - Payload.UDF mode 483 Advanced Options - Payload.UDF offset 484 Advanced Options - UDP.Checksum field 488 Advanced Options - UDP.Checksum value 488 Advanced Options - UDP.Length field 488 Advanced Options - UDP.Length value 488 Advanced Options- Enable TCP 489 Data Rate.Data Rate Ramp 480 Data Rate.Data rate type 479 Data Rate.Data rate unit 479 Data Rate.Every N seconds 480 Data Rate.Increment N Units/Period 480 Data Rate.Maximum Data Rate 480 Data Rate.Minimum value 480 Delay Start 479 Destination Port 484 Maximum Stream Count 489 Payload 475 Payload.Data 483 Payload.Data width 482 Payload.Type 482 Quick Test 580 Size distribution.Every N seconds 482 Size distribution.Increment N units 482 Size distribution.Maximum Frame/Packet Size 481 Size distribution.Minimum Frame/Packet Size 481 Size distribution.Size distribution type 481 Size distribution.Size distribution unit 480 Slow Start 475 Slow start 489 Slow start rate 489 Source Port 484 Test duration.Test duration Measured by a Time Interval Test duration.Test duration Measured in Frames 479 Routing Robot Parameters 479 Routing Robot statistics 973 routingrobot 818 routingrobot_1000 818 routingrobot_10G 818 routingrobot_5G 818
479
Index
RPC 1-byte TCP segments 520 2-byte TCP segments 520 RPCFragmentTCPSegmentDistribution RSA_AES_168_SHA xxi, 540 RSA_DES_168_SHA xxi, 540 RSA_DES_256_SHA xxi, 540 RSA_RC4_128_MD5 xxi, 540 RSA_RC4_128_SHA xxi, 540 RTF 924 RTP Protocol Parameters 170 RTSP Protocol Parameters 170 run 916 Tcl command 728 Run Test 584
116
S
save 728 Searching the Strike List 758 Searching the Strike List page 92 searchStrikeLists Tcl Command 728 searchStrikes 758, 764 Tcl Command 728 Security 506 AttackRetries 509 AttackTimeoutSeconds 509 ConcurrentStrikes 509 Delay Start 509 EvasionProfile 510 MaxAttacksPerSecond 509 MaxPacketsPerSecond 509 Quick Test 580 RandomSeed 509 Strike List 510 security 818 Security Parameters 509 Security stats 993 security_2 818 security_3 818 security_4 818 security_5 819 Seed 122 Seed for the generator 526 SegmentOrder 117 ServerChunkedTransfer 104
Index
ServerChunkedTransferSize 104 ServerCompression 104 Session Sender 490 Data Rate.Data rate type 497 Data Rate.Maximum value 498 Data Rate.Minimum value 498 Delay Start 500 Destination Port.Maximum port number 500 Destination Port.Minimum port number 499 Destination Port.Port distribution type 499 IPv4 Configuration.TOS/DSCP 505 IPv4 Configuration.TTL 505 Load Profile 506 Payload Packets Per Session 497 Payload.Data 496 Payload.Type 495 Quick Test 580 Ramp Up Profile. Minimum Connection Rate 503 Ramp Up Profile.Every N seconds 504 Ramp Up Profile.Increment N connections per second 503 Ramp Up Profile.Maximum Connection Rate 503 Ramp Up Profile.Ramp Up Profile Type 502, 503 Segment Size Distribution. Maximum value (bytes) 497 Segment Size Distribution.Distribution type 496 Segment Size Distribution.Minimum value (bytes) 497 Session Configuration.Maximum Sessions Per Second 504 Session Configuration.Maximum Simultaneous Sessions 504 Session Configuration.Target Minimum Sessions Per Second 505 Session Configuration.Target Minimum Simultaneous Sessions 504 Session Ramp Distribution.Ramp Down Behavior 502, 557, 570 Session Ramp Distribution.Ramp Down Seconds 502, 570 Session Ramp Distribution.Ramp Up Behavior 500, 501, 576 Session Ramp Distribution.Ramp Up Seconds 501, 569 Session Ramp Distribution.Steady-State Behavior 501, 570 Session Ramp Distribution.Steady-State Seconds 501, 570 Session.Configuration.Unlimited Session Close Rate 504 Source Port.Maximum port number 499 Source Port.Minimum port number 499 Source Port.Port distribution type 498 TCP Configuration.Add Segment Timestamps 506 TCP Configuration.Delay ACKs 505 TCP Configuration.Initial Receive Window 505 TCP Configuration.Maximum Segment Size (MSS) 505 TCP Configuration.Retry Count 505 TCP Configuration.Retry Quantum 505 Session Sender statistics 975 Session Sender Test 944, 946, 951, 958, 964, 967 sessionsender 819 sessionsender_http 819 sessionsender_large 819 sessionsender_max 819
Index
sessionsender_medium 819 sessionsender_synflood 819 setDHCPServer 728 setDomain 919 setDut Tcl command 728 setFilter 728 setNeighborhood Tcl command 728 setPortOrder 728, 734, 737 setVlanEtherType Tcl command 728 SHELLCODE Options 112 shortcuts 816 ShuffleHeaders 98, 105, 113, Single Tag 58 SIP Protocol Parameters 171 SIP Settings 112 SkipHandshake 118 Slow Start Bit Blaster 466 Smart Strike List 90 Definition 89 SMB AuthenticationType 113 Protocol Parameters 172 SMTP Protocol Parameters 173 SMTP Options 114 SneakAckHandshake 118 SNMP Protocol Parameters 173 Soft Reboot 38 Source Port Mask 484 Source Port Modifier 485 SourcePort 118 SourcePortType 118 SSH Protocol Parameters 173 SSL 7 SSL Options 114 SSL/TLS 539 Stack Scrambler 520 Bad Checksum 528 Bad Ethernet Type 527 Bad ICMP Code 529 Bad ICMP Type 529 Bad IP Length 527 Bad IP Protocol 528 Bad IP Version 527
114
Index
Bad IPv4 Checksum 528 Bad IPv4 Differentiated Services Field 527 Bad IPv4 Flags 527 Bad IPv4 Fragment Offset 528 Bad IPv4 Options 528 Bad IPv4 or IPv6 Total Length 527 Bad L4 Checksum 529 Bad TCP Flags 528 Bad TCP Options 529 Bad TCP or UDP Header Length 529 Bad TCP Urgent Pointer 529 Bad Urgent Pointer 528 Data Rate.Data rate type 523 Data Rate.Data rate unit 523 Data Rate.Maximum value 524 Data Rate.Minimum value 523 Delay Start 521 Destination Port.Maximum port number 526 Destination Port.Minimum port number 526 Destination Port.Port distribution type 526 Establish TCP sessions 530 Maximum number of simultaneous corruptions 527 Payload.Data 521 Payload.Transport 522 Payload.Type 521 Pseudo-random Number Generator Options Offset into the Seed 527 Seed for the Generator 526 Quick Test 580 Segment Size Distribution. Maximum value (bytes) 523 Segment Size Distribution.Distribution type 522 Segment Size Distribution.Minimum value (bytes) 522 Size distribution.Maximum value 525 Size distribution.Minimum value 525 Size distribution.Size distribution type 524 Size distribution.Size distribution unit 524 Source Port.Maximum port number 526 Source Port.Minimum port number 525 Source Port.Port distribution type 525 Test duration.Test duration measured by a Time Interval 521 Stack Scrambler stats 996 stackscrambler 820 stackscrambler_tcp 820 stackscrambler_udp 820 StandAlone RunTime Kits 713 StartingFuzzerOffset 110 Steady-State Phase 492, 530 stopPacketTrace 919 Strike Definition 89 Strike Center
Index
Account v Password v Strike Error Count xvii Strike List 7, 89 Create 95 Definition 89 Import 120 StrikePack Updates Automatic Updates 31 Subnet 16 SUNRPC Options 115 Super Flow Create 141 Definition 121, 141 Example 123 Super Flow Weight Distribution Super Flows 141 SYN attack xix system controller 2 System Date and Time 26 System Date/Time 39 System Fan Tray 2 System Functions 26, 37 Factory Revert 38 Previous Revert 38 Restart 38 Soft Reboot 38 System Information 26 System Logs 26, 32 System Updates 26, 29 Automatic Updates 30 Installation 30 System Users 26
126
T
Target Control COM/Serial Port 2 Target Control Ethernet Port 3 Tcl 7 Optional Arguments 729 Tcl API 713 Tcl Interface 713 Tcl Shell Download 714 Linux Version 715 Mac OS X Version 715 Windows Version 715 Tcl Stats 969 TCP
Index
Ordered 1 byte segments 511 Out of order 1 byte segments 512 TCP Summary xix TCPFragmentSize 116 Telnet Protocol Parameters 174 Telnet Control Character Option 100 Test 20, 479, 521 Create 581 Export 585 Import 585 Restrictions 462 Run 584 Test Component Definition 461 Test Components 461 Test Criteria 587 test interface 18, 59 Test Models 710 Test Pass/Fail Criteria 587 Test Paths 66 Test Quick Steps Menu 581 Test Series 579, 641 Create 641 Run 643 Test Status 586 Tests 579 time 12 Time and Date 12 TIME-WAIT state xix token substitution 129 TOS 108 Transaction Flag 175 TraversalRequestFilename 111 TraversalVirtualDirectory 110 TraversalWindowsDirectory 111 trigger I/O 3 TTL 108 Type 48, 49
U
UDP Connections xv UDP Flows xv UDP Options 118 UDP Settings 116 UnicodeTraversalVirtualDirectory 110 UnicodeTraversalWindowsDirectory 110 unreservePort 728, 734, 736
Index
unsetActionParameter 728, 791 unsetFlowParameter 728, 787 unsetGroupParameter 767, 768 URI 110 URIAppendAltSpaces 104 URIAppendAltSpacesSize 104 URIPrependAltSpaces 104 URIPrependAltSpacesSize 104 URIRandomizeCase 104 UseObjectID 97 User Account 27 Create 27 Delete 28
V
VersionRandomInvalid 105 VersionRandomizeCase 105 VersionUse0_9 105 Virtual Router vi, 18, 48, 49 Virtual Router Address 48, 49 VirtualHostname 105 VirtualHostnameType 105 VLAN Ethertype 49, 50 VLAN ID 49, 50, 58 VLAN Tagging 7, 17, 49, 50 VLAN-Enabled Subnet 57
W
wait 729 Weight 122 weightType 729
X
XLS 924 XLS Files 709
Z
ZIP 924 ZIP Files 710