The LANforge-FIRE Cookbook provides a set of high-level examples of how to setup useful test scenarios in LANforge-FIRE for traffic generation. Each example intends to give the reader a brief introduction to the test scenario and a set of step-by-step instructions on how to use the LANforge-GUI to configure the test.
All of the following examples will work on Linux systems running the LANforge software with the LANforge kernel and a sufficient license. If you are running another Linux kernel, you will not be able to exactly duplicate some of the examples, but there are usually work-arounds available to assist you. Please contact us at support@candelatech.com if you have any questions.
If you are using the Windows version of LANforge, you will have to modify ports using the Windows utilities. Everything else should work approximately the same, but the performance is limited to 10Mbps speeds.
Before attempting the examples below, ensure that you have successfully
followed these software installation guides:
It is also recommended that you back up your current running LANforge Server database so that you may safely return to your current operating state.
In this test scenario, LANforge-FIRE is used to generate traffic to a basic router in order to test throughput.
Connect two available data generating ports of your LANforge Server to the DUT, an unmanaged switch.
Setup the LANforge Ports so that they have valid IP addresses.
Go to the Port Manager
Modify port for Endpoint A (eth2)
Modify port for Endpoint B (eth3)
Verify the port configuration
For more information see LANforge User's Guide: Ports (Interfaces)
Create a Layer-3 Connection using the two configured ports.
Go to the Layer-3 tab
Create a new Cross-Connect
Verify the new Cross-Connect
For more information see LANforge User's Guide: Layer-3 Cross-Connects (FIRE)
Run traffic and observe results.
Select the cross-connect on the Layer-3 tab, click Start and then Display
View the Layer-3 cross-connect display
For more information see LANforge User's Guide: Layer-3 Cross-Connect Display
In this case, the overall throughput of the DUT is approximately 76Mbps. The Report Manager can also be used to record the throughput over time.
Select Report Manager from the Reporting pull-down menu
Choose a directory to save raw (.csv) data then click Start Saving. After desired test duration, click Stop Saving and Generate Report. NOTE: Your report will look cleaner if you stop traffic about 2 minutes before you stop saving data.
Choose a directory to save the HTML report, select the entities to be included, then click Generate Report
This window lists all the reports being generated. The last line indicates the location of the HTML report.
View the HTML report
For more information see LANforge User's Guide: Reporting
In this test scenario, LANforge-FIRE is used to generate traffic to a basic router in order to test throughput.
Connect one LANforge-FIRE port to the router's LAN port.
Connect another LANforge-FIRE port to the router's WAN port.
Setup the LANforge Ports so that they have valid IP addresses.
Go to the Port Manager
Modify port for Endpoint A (eth2). Set a valid network IP address and Gateway IP.
Modify port for Endpoint B (eth3). Set a valid network IP address and Gateway IP.
Verify the port configuration
For more information see LANforge User's Guide: Ports(Interfaces)
Create a Layer-3 Connection using the two configured ports.
Go to the Layer-3 tab
Create a new Cross-Connect
Verify the new Cross-Connect
For more information see LANforge User's Guid: Layer-3 Cross-Connects (FIRE)
Run traffic and determine router throughput.
Select the cross-connect on the Layer-3 tab, click Start and then Display
View the Layer-3 cross-connect display
For more information see LANforge User's Guid: Layer-3 Cross-Connect Display
For this example, a low performance router was used to illustrate poor throughput, variable latency, and dropped packets.
Go to the L3 Endps tab
Scroll to the right to view Latency and Dropped Packets
For more information see LANforge User's Guid: Layer-3 Endpoints (FIRE)
In this test scenario, LANforge-FIRE is used to generate traffic to a firewall DUT in order to measure the following benchmarks:
NOTE: If you are attempting to run this test scenario, you will need a LANforge license key that enables the correct number of ports and multi-connections. Please contact us at support@candelatech.com for assistance.
The UDP Throughput test will use a scripted Layer-3 connection to vary the rate and payload size to determine the bi-directional UDP throughput of the DUT across the scripted parameters.
On the Port Manager tab, setup the LANforge ports with valid IP addresses.
On the Layer-3 tab, create a UDP connection.
Set Endpoint Side-A to use the DUT WAN port
Set Endpoint Side-B to use the DUT LAN port
Select CX Type LANforge UDP then select Apply.
Select the Script button to setup the scripting parameters.
Setup the script to iterate over the rates
Specify the payload sizes to be tested.
For more information see LANforge FIRE Cookbook example: Scripted Layer-3 Test
Highlight the connection and select the Start button.
The final test report shows the results of the test run. Here we can see that the DUT has the best bi-directional throughput with 1460Byte payloads at 24.9Mbps.
For more information see Full script report for the UDP test.
The TCP Concurrent Connections test will measure the maximum number of simultaneous TCP connections that the DUT can maintain at once.
On the Port Manager tab, create 5 MAC-VLANs on the LANforge Port connected to the DUT LAN port.
Verify that the MAC-VLANs have correct IP addresses.
Create a Layer-3 connection that has a low-speed rate with Multi-Conn set to 10000 on Endpoint Side-A. Multi-Conn should be set to 1 on Endpoint Side-B.
Side-A will be one of the MAC-VLANs and Side-B will be the port connected to the DUT WAN port. This setup will initiate the TCP sessions from the LAN side of the DUT.
Low-speed depends on the DUT, we could also set the rate to zero which would allow the TCP connections to be setup without payload data to be transmitted, but this would not give an accurate picture of the firewall performance. Here we are using 1Kbps connections with 1KB size payload.
This is an iterative test, the number of TCP connections to use will depend on the DUT capabilities. Modify the number of connections as necessary to find the most accurate measurement.
The DUT should be power-cycled to reset it before each test run.
Select the Batch-Create button to create 4 more copies of this connection each with a new MAC-VLAN port.
Highlight and Start each set of 10000 connections until the target max simultaneous connections are running.
On the Layer-3 Endpoints tab, highlight the Running A-Side Endpoints, then right-click and select Calculations.
The top line, Sum, is what we are interested in for Maximum Concurrent TCP Connections.
Scroll right to the CX Active and CX Established columns and select the Refresh button. This DUT can maintain a maximum of 41,864 simultaneous TCP connections.
CX Active is the metric we are attempting to measure, Maximum Simultaneous TCP Connections. It will fluctuate with the DUT's ability to maintain the number of active TCP connections.
CX Established is the number of TCP connections LANforge has established since the start of the test. It will continue to increase as the DUT closes the TCP connections it cannot maintain.
The TCP Connections per Second test will measure the rate of TCP connections that can be setup through the DUT.
Create a Layer-3 TCP connection with the Duration and IP Port set to zero.
Highlight and Start the connection.
View the Connections/second rate on the Layer-3 Endpoints tab. This DUT can setup about 120 Connections/second.
For more information see LANforge GUI User's Guide
In this test scenario, LANforge-FIRE is used to generate traffic in the form of URL requests in order to determine the maximum number of URLs/second the Web Server can process.
Please note that the Web Server used in this example is an isolated Linux system running Apache.
Connect one LANforge-FIRE port to the Web Server's network.
Setup the LANforge Port so that it has a valid IP address.
Go to the Port Manager
Modify the port connected to the Web Server. Set a valid network IP address and Gateway IP.
Verify the port configuration
For more information see LANforge User's Guide: Ports (Interfaces)
Setup the URL requests.
Go to the Layer-4 tab
Create a Layer-4 Endpoint:
Enter a name and select the port configured in the previous step
URLs per 10m should be set to around 1,200,000 which is 2,000 URLs/second
Leave the SSL Cert alone as we are not using it in this example
UL/DL should be set to Download
URL should be set to the Web Server's IP address and file that you wish to download. In this example, index.php is a small test file.
File is the designated location that the downloaded file will be stored. In this example, we use /dev/null which will essentially throw the file away so that it does not slow down the LANforge system with writing files.
Select the 'Allow-Reuse' checkbox to maximize the number of URL requests LANforge can make per connection
Repeat the above step to make 10 Layer-4 Endpoints:
Each of the 10 Layer-4 Endpoints will attempt to generate 2000 URLs/second, effectively generating 20,000 URLs/second
For more information see LANforge User's Guide: Layer 4-7 Endpoints
Run traffic and determine Web Server performance.
On the Layer-4 tab, select one Layer-4 endpoint, click Start, then repeat for all 10 Layer-4 endpoints:
As each endpoint is started, the rate of URLs/second will start to converge on a rate that the Web Server is capable of providing. Finding the final Web Server performance rate is a matter of adding up the rates of all running Layer-4 endpoints.
Several Layer-4 endpoints (10 in this case) are used so each endpoint can make an independently large number of URL requests without having to wait for too many replies. Each URL request is waiting for a reply from the Web Server, so if only one Layer-4 endpoint was making requests, it would spend too much time waiting for replies instead of generating more requests. Spreading the URL requests over several endpoints allows each LANforge connection to the Web Server to maximize its rate of URL requests.
Layer-4 Endpoint Results:
After starting all 10 endpoints, and letting them run for at least 1 minute, the overall URLs/second rate converges to around 17,000 URLs/second.
For more information see LANforge User's Guide: Layer 4-7 Endpoints
LANforge will serve DHCP and TFTP to the DUT, generate TCP traffic to measure upload and download speeds on each modem, and generate reports. In this example, eth0 is the management port, eth1 is the upstream network port (connects to CMTS), and ports eth2-eth9 are connected to cable modems. Eth2-9 are configured for DHCP, and eth1 is configured with static IP. Eth1 is also configured to serve DHCP requests to the cable modems and other LANforge ports.
Set up the network interfaces.
Configure eth1 to serve DHCP and TFTP.
Go to Status panel in LANforge GUI. Click 'Netsmith' button on the Resource.
Right-Click in empty space and create a new Virtual Router. Use default values and click OK.
Drag eth1 into the virtual router. Then double-click the virtual eth1 icon to configure DHCP. DHCP files for CMTS setups must be hand-written by the user. Configure LANforge to use this custom-dhcp config file.
When Netsmith setup is complete, click Apply on the main Netsmith window to start up the DHCP service, etc. This screenshot was taken after the Layer-3 connections were set up.
Configure eth2-9 to use DHCP
Go to Port-Mgr tab, double-click each port, and make sure the DHCP option is selected. Apply changes.
Set up Layer-3 connections to generate the throughput tests.
Go to the Layer-3 tab, and click Create. Many cable modems are configured to do NAT and/or some firewalling, so normally you will need the connections to be TCP and to originate out from the client-side port. So, choose the LANforge/TCP connection type, and make the 'B' side eth1. Everything else can stay at the default values because we will use a script to automate the settings.
Create 8 similar connections, always with B side port of eth1, and use A side ports eth2-eth9. In the Create/Modify window you can just change the name, change the port, and press apply. This will make copies of the connections.
Create Test-Group to control the 8 Layer-3 TCP connections.
Go to the Test Group tab, and click Create. Select the 8 Layer-3 TCP connections you just created in the previous step and add those to the Test Group. Click Apply and make sure the new group shows up in the Test Group table.
We need to add a script to automate the test. Click the Script button in the Test Group create/modify window. Choose RFC 2544 script type. In this scenario, we want to test each modem one at a time, so we select the Sequential option for Group Action. The rates sections determine the speeds for each iteration. In this case, the first iteration will send from B to A at 35Mbps. This is the download test. The next iteration will upload from A to B at 17Mbps. When the two iterations are complete, the script will repeat on the next Layer-3 connection.
Run the test
To start the test, select the Test Group in the table and click the Start button. You should see a script-report window pop up, and the state should go to running. To see a live report of throughput and other values, right-click on the Test Group table and select the Dynamic Report option
View the individual connectionsTo start the test, select the Test Group in the table and click the Start button. You should see a script-report window pop up, and the state should go to running.
Gather reports
When the script completes, a summary of each iteration will be shown in the Script Report window. The text may be converted to HTML, but for this particular script, the graphs are not useful because we are using Sequential mode, so just saving the text to a file or printing it is probably the best option. Note that some of these tests failed the constraints configured in the Script. In this case, it is because those modems were not capable of the requested speeds.
When the script completes, you could also pause the dynamic report and print it. For an electronic copy, use a PDF printer to create PDF files instead of printing to paper.
The Layer-3 tab will color-code the 8 connections, with red meaning fail, and green meaning pass. You can print the connections you are interested in by selecting them in the table and using right-click → Table Report. This report can be printed or otherwise saved.
Please refer to the diagram in the CT570 link above. In this test scenario, the LANforge-FIRE Core is one interface on a LANforge system. The LANforge-FIRE Edge is another interface on the same LANforge system. The LF Core interface is connected to the upstream DSLAM interface either directly or through a switch. The CPEs are connected to a multi-port VLAN switch which has a VLAN trunk that is connected to the LF Edge. Traffic is sent between the LF Core and the LF Edge to achieve end-to-end network traffic testing of the DSLAM system.
Connect one LANforge-FIRE interface to the DSLAM upstream internet connection. This is the LF Core part of the diagram mentioned above.
Setup the LANforge port so that it has a valid IP address and IP mask.
Go to the Port Manager
Modify the port connected to the DSLAM. Set a valid network IP address and IP mask.
Verify the port configuration
For more information see LANforge User's Guide: Ports (Interfaces)
Setup virtual interfaces.
On the Port Mgr tab, select the port that will connect to the multi-port switch and will also be your VLAN trunk. This is the LF Edge part of the diagram.
Click the Create button:
Select the 802.1Q-VLAN virtual interface type
The VLAN ID should correspond to your multi-port switch VLAN configuration
Enter Quantity (number of virtual interfaces to be created)
Enter the appropriate IP address and IP mask
Click OK or Apply to create the virtual interfaces
Verify that the virtual interfaces are created and have the correct IP assignments
Modify each port's MAC address for each virtual interface so that they are unique
Select the Set MAC checkbox on the left to edit the MAC address field
Scroll to the right to verify that the MAC addresses are unique
For more information see LANforge User's Guide: Creating & Deleting Virtual Interfaces
Create Layer-3 connections.
Go to the Layer-3 tab
Click the Create button
Fill in a connection name, select a connection type and set the report timer
Make endpoint A the DSLAM upstream port or LF Core
Make endpoint B the CPE downstream port or LF Edge
You can make the TX/RX rates asymmetric for the connection to simulate how the connection would be used in a real-world scenario. Here we have about 5Mbps downstream (DSLAM to CPE) and 1Mbps upstream (CPE to DSLAM).
Click Apply to create the connection
Create multiple connections
Change the connection name and endpoint B to the next virtual interface then click Apply to create the next connection.
Repeat until all five connections are created.
For more information see LANforge User's Guide: Layer-3 Endpoints (FIRE)
Run traffic.
Select the connections you want to start
Click the Start button
For more information see LANforge User's Guide: Layer-3 Endpoints (FIRE)
In this example, LANforge-FIRE is used to setup two VoIP test calls that may be used as a basis for VoIP load testing or VoIP Gateway testing.
Setup the LANforge physical connections. The same two ports are used for both tests. Connect eth1 and eth2 from the LANforge-FIRE system to a network switch that is also connected to the VoIP Gateway. This example assumes that your VoIP Gateway is setup properly. If you need assistance, you can contact us at support@candelatech.com or you can find a basic Asterisk setup at this link: LANforge FAQ: How do I configure Asterisk for SIP Phones?
Setup the LANforge ports so that they have valid IP addresses and IP masks.
Go to the Port Manager
Modify eth2 and eth3 to set a valid network IP address and mask
If your network has DHCP service, you can select the 'DHCP-IPv4' checkbox so that each port is a DHCP client and will acquire its IP address from your DHCP server
Verify the port configuration
For more information see LANforge User's Guide: Ports (Interfaces)
Setup Test 1, a Directed VoIP call.
Go to the VoIP/RTP tab
Click the Create button:
Enter test-1 in the CX Name field
Select the Multi-Call and Directed buttons
Endpoint A is on Port eth2 in this example. If you have a PESQ licensed server available, you can select Record and Enable PESQ.
Endpoint B is on Port eth2. If you are using PESQ, be sure to enter a Record file and the IP address and port of your PESQ licensed server. Be sure to select the Rcv Call checkbox for this endpoint to receive the call.
Click OK to create the VoIP Directed call
Verify that the test call is created
For more information see LANforge User's Guide: VoIP Call Generator
Setup Test 2, a Gateway VoIP call.
Go to the VoIP/RTP tab
Click the Create button:
Enter test-2 in the CX Name field
Select the Multi-Call and Use Gateway buttons
Endpoint A is on Port eth1 in this example. Be sure to enter the proper username and password for the endpoint so that it can authenticate with the VoIP Gateway if necessary.
Endpoint B is on Port eth2. Be sure to select the Rcv Call checkbox for this endpoint to receive the call.
Click OK to create the VoIP Gateway call
Verify that the test call is created
For more information see LANforge User's Guide: VoIP Call Generator
Run Test 1 and Test 2 individually.
Select Test-1 and click the Start button
Go to the VoIP/RTP Endps tab to see detailed results:
The PESQ score will be reported after the first successful call is completed and updated after each subsequent call
NOTE: Endpoints are Unregistered while the call is in progress because they are not calling through the VoIP gateway
Stop Test-1, select Test-2 and click Start
Go to the VoIP/RTP Endps tab to see detailed results:
PESQ remains 0: 0 when it is disabled for the call in progress
NOTE: Endpoints are Registered with the VoIP gateway while the call is in progress
Calls Attempted, Calls Completed and Calls Failed can be viewed by scrolling to the right on the VoIP/RTP Endps tab
For more information see LANforge User's Guide: VoIP Call Generator
In this test scenario, LANforge Armageddon is setup to run at about 80,000 packets/second full-duplex to achieve near line-speed 1Gbps traffic generation.
Note: In order to use the LANforge Armageddon feature, your system must have the LANforge kernel patch applied and your system must be properly licensed. Please feel free to contact us at support@candelatech.com if you would like to obtain a demo license for the Armageddon feature.
Configure the physical interfaces.
Go to the Port Manager and select ports eth2 and eth3
Modify ports eth2 and eth3:
In this example, eth2 and eth3 are physically connected with a patch cable
Configure each port with a valid IP address, then click OK
For more information see LANforge User's Guide: Ports (Interfaces)
Create the Armageddon cross-connect.
On the Armageddon tab, click the Create button
Select ports eth2 and eth3 and enter the speed and packet size
For this example, 10000pps at 1514byte packet size should generate about 121Mbps
Click OK when finished
Verify that the Armageddon connection is created
For more information see LANforge User's Guide: Armageddon (Accelerated UDP)
Run the Armageddon cross-connect and view results.
Select the Armageddon connection then click Start
It will take a moment for the Armageddon traffic to stabilize and depending on the hardware, LANforge will settle on an actual rate which may differ from the requested rate
In this example, this server (3.2GHz Xeon with 4-port 10/100/1000 PCI-X) is capable of reaching 81,000pps with 1514byte packets or, an equivalent speed of about 981Mbps bi-directional.
NOTE: Delay for Armageddon connections is measured in microseconds and in this example, the server experiences about 2900us of delay when sending to itself.
For more information see LANforge User's Guide: Armageddon (Accelerated UDP)
In this test scenario, LANforge Armageddon is setup to run with random MAC addresses. This is useful when performance/stress testing network devices that may not be able to keep up with high-speed traffic containing rapidly changing MAC addresses.
Note: In order to use the LANforge Armageddon feature, your system must have the LANforge kernel patch applied and your system must be properly licensed. Please feel free to contact us at support@candelatech.com if you would like to obtain a demo license for the Armageddon feature.
Configure the physical interfaces.
Go to the Port Manager and select ports eth2 and eth3
Modify ports eth2 and eth3
In this example, eth2 and eth3 are connected to another LANforge system running a WanLink so that the Armageddon traffic can be sniffed on the other machine's interface
Configure each port with a valid IP address, then click OK
NOTE: Be sure that both ports are in Promiscuous mode by selecting the Set PROMISC and PROMISC checkboxes
For more information see LANforge User's Guide: Ports (Interfaces)
Create the Armageddon cross-connect.
On the Armageddon tab, click Create
Select ports eth2 and eth3 and enter the speed and packet size
Enter values for the Source and Destination MAC addresses and specify a MAC count
For more information see LANforge User's Guide: Armageddon (Accelerated UDP)
Run the Armageddon cross-connect and verify results with Wireshark.
Select the Armageddon connection then click Start
On the Port Mgr tab of the other LANforge system, select one of the physical interfaces in the Armageddon connection
Click Sniff Packets to launch Wireshark and begin sniffing traffic.
Stop the Wireshark capture after a few seconds via the stop icon or pull-down menu (Capture>Stop)
Select several packets and note their MAC addresses
Verify that the MAC addresses for each packet are different
For more information see LANforge User's Guide: Armageddon (Accelerated UDP)
In this example, LANforge is used to setup a scripted connection that will iterate through a user-defined list of payload sizes and transmission rates. Each iteration will run for a user-defined duration with a user-defined pause between iterations. A summary text report is generated at the conclusion of all iterations.
Create a Layer-3 connection.
For more information see Generating Traffic to a Switched Network
Modify the Layer-3 connection to add the script.
Highlight the Layer-3 connection and select Modify
Select the Script button on Endpoint A.
Select the Script Type, RFC-2544.
Note: A default set of payload sizes are setup based on RFC-2544 but, can be changed by typing over the default values.
Note: For Layer-3 UDP and TCP connections, 'payload size' refers to size of the payload being carried by the protocol and not the ethernet frame size.
Setup script options. For details refer to: LANforge User's Guide: Scripted Cross Connect
Select Symmetric for the script to run both endpoints for a bi-directional traffic test.
Set the Run and Pause Duration.
Note the total number of Script Iterations and Estimated Total Duration to help determine how long it will take to run this script.
Select OK to close the Add/Modify Script window.
The Script Type for Endpoint B is set to NONE because Endpoint A is controlling both ends of the connection in this symmetric script example.
Select OK to close the Create/Modify Cross Connect window.
Start the Scripted Layer-3 Cross Connect.
Highlight the Layer-3 connection and select Start.
A script report window will pop up and show the details of each iteration of the scripted connection as it is run.
At the conclusion of the script, the report window will display a summary of the entire scripted connection results. Full Script Report for this example:
per iteration details
raw CSV data for all iterations
spreadsheet matrices for creating your own 3D graphs
system information
In this example, LANforge is used to setup a scripted connection that will iterate through a user-defined list of payload sizes and transmission rates. Each iteration will run for a user-defined duration with a user-defined pause between iterations. A summary text report is generated at the conclusion of all iterations.
Create an Armageddon connection.
For more information see Armageddon Testing (Accelerated UDP)
Modify the Armageddon connection to add the script.
Highlight the Armageddon connection and select Modify.
Select the Script button on Endpoint A.
Select the Script Type 'RFC-2544'.
Note: A default set of payload sizes are setup based on RFC-2544 but, can be changed by typing over the default values.
Note: For Armageddon UDP connections, 'payload size' refers to size of the ethernet frame size.
For more information see LANforge User's Guide: Scripted Armageddon Cross Connect
Setup script options.
Select Symmetric for the script to run both endpoints for a bi-directional traffic test.
Set the Run and Pause Duration, modify Rates and Payload Sizes as needed.
Note the total number of Script Iterations and Estimated Total Duration to help determine how long it will take to run this script.
Select OK to close the Add/Modify Script window.
The Script Type for Endpoint B is set to NONE because Endpoint A is controlling both ends of the connection in this symmetric script example.
Select OK to close the Create/Modify Cross Connect window.
For more information see LANforge User's Guide: Scripted Armageddon Cross Connect
Start the Scripted Armageddon Cross Connect.
Highlight the Armageddon connection and select Start.
A script report window will pop up and show the details of each iteration of the scripted connection as it is run.
At the conclusion of the script, the report window will display a summary of the entire scripted connection results.
per iteration details
raw CSV data for all iterations
spreadsheet matrices for creating your own 3D graphs
system information
For more information see Full Script Report for this example.
As of LANforge release version 5.1.4, LANforge-FIRE has the capability to create multiple thousands of TCP connections using only two ports on one Layer-3 connection that can all run simultaneously and in a stateful manner. This feature can be used to test connection state aware devices such as firewalls, stateful packet inspection systems and intrusion detection/prevention systems.
The upper limit of the total number of concurrent connections is determined by the processor speed and total memory available on the system running the LANforge software. In addition, the packet rate and payload size of each connection will also affect performance.
NOTE: If you are attempting to run this test scenario, you will need a LANforge license key that enables the correct number of multi-connections. Please contact us at support@candelatech.com for assistance.
For this example, two physical ports on a single LANforge system are connected together.
Setup the LANforge ports so that they have valid IP addresses and IP masks.
Using the LANforge GUI, go to the Port Manager tab.
Assign IP addresses and masks to the two ports.
Verify the port configuration.
For more information see LANforge User's Guide: Ports (Interfaces)
Setup a Layer-3 Multi-Conn TCP connection.
Go to the Layer-3 tab, and select the Create button.
For Endpoint A, type in a name in the CX Name field, choose a CX Type of 'LANforge/TCP', choose the correct ports and set the Report Timer to '1000 ms'.
Set the Min Tx Rate and Max Tx Rate on both Endpoints A and B to '9.6Kbps'.
NOTE: Higher speeds and/or bursty transmit rates will require more memory to process per connection.
Leave the Min Pkt Size and Max Pkt Size on both Endpoints A and B set to '1024B'.
NOTE: Larger packet sizes will use more memory, smaller packet sizes will require more CPU processing time.
Leave the TCP Duration set to Forever, unless you want each of the multiple TCP connections to teardown and restart after a specified duration.
For Endpoint A, set the Multi-Conn to the desired number of multiple TCP connections.
You can type in any value that your license allows here or choose one from the drop down box. The recommended approach is to create a new Multi-Conn connection for every 5000 connections.
For Endpoint B, set the Multi-Conn to one, then select OK to create the connection.
Endpoint B is the 'server' side of the TCP connection, therefore it is only necessary to have one Multi-Conn setup on Endpoint B to reply to all of the Endpoint A TCP SYN packets when the 5000 connections are being established.
For more information see LANforge User's Guide: Creating & Modifying Cross Connects
Create 5 more Layer-3 Multi-Conn TCP connections.
On the Layer-3 tab, highlight the first connection created in the previous step and select Modify.
Select the Batch-Create button.
Set the Quantity to 5, and set Port Increment A and Port Increment B to 0
Select the Apply button.
Verify that six Multi-Conn TCP connections were created.
For more information see LANforge User's Guide: Layer-3 Endpoints (FIRE)
Run traffic and verify results.
Highlight all six connections.
Select the Start button
Go to the L3 Endps tab to verify that all 30,000 connections are running.
Or, go to the Port Mgr tab, and sniff one of the ports while the Multi-Conn TCP connections are running.
NOTE: You will need a lot of memory to run a Wireshark capture on 30,000 connections. It is probably best to stop all connections, set up the Wireshark capture, start all connections and let them run for 30 seconds to 1 minute before stopping them all, then stop the Wireshark capture and wait for it to process all those packets!
After the Wireshark capture is complete, go to Statistics - Conversations to allow Wireshark to analyze the conversations and show that all 30,000 connections were captured. This will take some time to complete depending on the size of the capture.
For more information see LANforge User's Guide: Layer-3 Endpoints (FIRE)
Coming Soon...
In this test scenario, LANforge-FIRE is not used to generate traffic. Instead, the test engineer should realize that all work and no play makes Homer something something.
Please note that this chili recipe is just as quick and dirty as the rest of the examples in this cookbook, but ever more tasty. Feel free to improvise...
Get yourself in a kitchen with some groceries.
Prep some ingredients.
Chop up some onions. One should be good enough.
Chop up some garlic. Just a few cloves.
Cook it all up
Brown some ground beef.
Heat up tomato sauce, kidney beans. 16oz of each is good.
Add garlic, onions, beef and spices such as cayenne, cumin, chili powder, salt and pepper.
Don't forget the beer!
Note: The beer is for you, not the chili...unless of course you are experimenting!
Cornbread is also nice to have.
Enjoy!
Serve with additional chopped onions, corn chips and cheddar cheese.
In this test scenario, the LANforge CT521 is used to simulate 4 virtual wireless stations that associate with a third party access point. Three traffic tests will be configured and run to demonstrate possible wireless access point tests.
Create the virtual wireless stations.
Note: All of its virtual stations will use the same wireless AP in this example, but each station may be configured for a different AP as long as all stations on the same radio use APs on the same channel.
Go to the Port Manager
Select port wiphy0 and click Create
Select the Wifi STA button, then enter MAC, Quantity, STA ID, and SSID. Select the DHCP-IPv4 checkbox:
In this example, all 4 virtual stations will connect to the same access point
If your access point can serve DHCP, you can select the 'DHCP-IPv4' checkbox here to enable each virtual station as a DHCP client
If you choose to enter IP addresses manually, the create function will increment the last octet of the IP address for each virtual station created
Click Apply when finished
Verify that the virtual wireless stations are created
Scroll to the right to view each station's link quality and other interface details
For more information see LANforge User's Guide: Ports (Interfaces)
Create Layer-3 connections between the station interfaces.
Go to the Layer-3 tab and click Create
Create a station-to-station UDP speed test:
Test 1: sta0-sta1, UDP, 100Mbps ↔ 56Kbps
Create a station-to-station TCP speed test:
Test 1: sta0-sta1, TCP, 1.54Mbps bi-directional traffic
For more information see LANforge User's Guide: Layer-3 Cross-Connects (FIRE)
Run traffic tests concurrently, and view results.
The AP in this example has a weak signal strength, so it can do only about 35Mbps total throughput. The round-trip-time (RTT) is reasonable, and there is very little packet loss.
The Layer-3 Endpoints tab has more detail.
Select the cross-connects or endpoints and Right-Click → Dynamic Report on the L3 Endp or Layer-3 table to view a live report of the connections.
For more information see LANforge User's Guide: Layer-3 Endpoints (FIRE)
For more information see LANforge User's Guide: Reporting
In this test scenario, the LANforge CT521 is used to simulate 4 virtual wireless stations on one radio that associate with an access point on the other radio. This allows a single LANforge machine to be a complete WiFi network. Please see the Wifi Testing cookbook example first. These steps assume the configuration from that cookbook is already in place.
Create a virtual AP on wiphy1.
Go to the Port Manager
Select port wiphy1 and click Create
Select the Wifi VAP button, then enter MAC, Quantity, STA ID, and SSID. Enter IPv4 address info:
Configure the radio's channel (which will apply to the VAP that was just created). Select the wiphy1 interface in the Port-Mgr tab and click Modify. Select the channel, and optionally the country-code, and then press Ok.
For more information see LANforge User's Guide: Ports (Interfaces)
Use the Netsmith feature to create a virtual router and configure DHCP for the AP.
Go to the Status tab, and click the Netsmith button for Resource 1.
Drag the existing interfaces into a more pleasing layout.
Right-Click in empty space and create a new Virtual Router. Just click OK, using the default configuration.
Drag the VAP interface into the virtual router and click Apply at the bottom-right of the Netsmith window..
Double-lick the vap0 icon (which should now be green) to bring up the Create/Modify Connection window.
Select the DHCP option, and then fill in the Range Min and Range Max values appropriately.
Apply Netsmith again and the configuration should be done.
Use Batch-Modify to configure all of the existing WiFi stations to talk to the new AP.
Go to the Port-Mgr tab, select sta0, sta1, sta2, and sta3, and then click the Batch Modify button. Configure the SSID to match the AP, and then press OK
The station interfaces should now get DHCP addresses matching the new AP
Create Layer-3 connections between the station interfaces.
Go to the Layer-3 tab. If there are existing connections, stop and/or delete them, and then click Create. Give the test a name, select sta0 and sta1 for ports, set rate to 100M, and set payload size. When complete, press Apply to create the new CX.
Create a second UDP connection on sta2 and sta3 interfaces. Change name, change ports, and press OK.
For more information see LANforge User's Guide: Layer-3 Cross-Connects (FIRE)
Run traffic tests concurrently, and view results.
Select both CXs in the Layer-3 tab, and click the Start button.
Go to the Port-Mgr tab, scroll to the right, and confirm that the Activity for this channel reports a fairly high percentage.
Select the 4 station ports and Right-Click → Dynamic Report on the Port-Mgr table to view a live report of the ports.
For more information see LANforge User's Guide: Reporting
Create a Virtual AP and set it up to bridge with the wired Ethernet port. This example uses the LANforge CT521 but the procedure should work on all CT520, CT521 and CT523 systems.
Create a virtual AP on wiphy1.
Go to the Port Manager
Select port wiphy1 and click Create
Select the Wifi VAP button, then enter MAC, Quantity, STA ID, and SSID:
Configure the radio's channel (which will apply to the VAP that was just created). Select the wiphy1 interface in the Port-Mgr tab and click Modify. Select the channel, and optionally the country-code, and then press Ok.
For more information see LANforge User's Guide: Ports (Interfaces)
Use the Netsmith feature to create a bridge device to hold the VAP and the Ethernet Port.
Go to the Status tab, and click the Netsmith button for Resource 1.
Drag the existing interfaces into a more pleasing layout and click Apply
Right-Click in empty space and chose the New Bridge option.
Enter Quantity 1, and give it a name such as br0, and then click Apply
Click Refresh in the Netsmith window and the br0 interface should appear.
Right-click on the br0 interface and select Modify Port. Add vap0 and eth1 to the bridge, click Apply, and then Sync.
Go back to the Netsmith window, and you should see the br0 device connected to vap0 and eth1 with purple lines. If you do not, try clicking once on the br0 icon to force a re-draw. You now have a VAP in bridge mode. Connect the upstream network to eth1, and stations associated with vap0 will be able to communicate with that upstream network.
Test WiFi station upload throughput with various numbers of stations. This example uses a pair of LANforge CT520 systems, but the procedure should work on all CT520, CT521 and CT523 systems. Encrypted throughput (WPA2) will perform better on the CT521 and CT523 systems because their CPUs are more powerful. This test assumes you have already created a virtual AP on system 1 and configured it to act as a router and give out DHCP.
Test TCP upload throughput with one station (Open)
Go to the Port Manager, select the wlan0 interface on the second system, and click Modify. Set the SSID to match the VAP on system 1.
Go to Layer-3 tab and click Create to build a TCP connection. Select the Protocol, ports, rates, PDU sizes, Send & Receive buffer sizes.
Start the test by selecting the tcp-se row and click Start. Right-click and select Dynamic Report to get a real-time graph of the throughput. We see about 250Mbps of TCP throughput.
Test TCP upload throughput with one station (WPA2)
Modify the VAP to use WPA2 instead of being open. Go to Port-Mgr tab, select vap0, and click Modify
Configure wlan0 to use the same settings so it can connect to the VAP using WPA2 authentication.
Go to the Layer-3 tab, start the tcp-se connection, right-click and select Dynamic Report to get a real-time graph of the throughput. We see about 43Mbps of TCP throughput. LANforge currently does the WPA encryption in software on the CPU, so it is much slower than un-encrypted traffic.
Test TCP throughput with 50 stations (Open)
Go to the Port-Mgr tab, select the existing wlan0 and vap0 interfaces, click Modify, un-select WPA2 on each of them, and click Apply. This changes wlan0 and vap0 back to Open mode.
Go to the Port-Mgr tab, select the wiphy0 interface on the second system, and click Create. Select Wifi STA, enter starting MAC, quantity of 49, select DHCP-IPv4, STA ID of 0, SSID, and Key/Phrase. When properly configured, click Apply
You should now see all 50 stations associated with IP addresses.
Go to the Layer-3 tab, modify the 'tcp-se' connection. Change the name to tcp-se-0001, and change the RX Endpoint side's port from wlan0 to sta0. Click OK to create the new connection.
Now, create 48 more copies. Modify the tcp-se-0001 connection and click Batch-Create. Set quantity to 48, and Port Increment A to 0. Click Apply to create the 48 TCP connections, one on each of the 48 stations.
Select all of the tcp-se connections and click Start. Each of the connections are configured for higher rates than the network can actually handle. This is OK, but it will give un-even throughput results on different stations. So, you may wish to change the rate to something lower. If so, go to the L3 Endps tab, make sure all of the tcp-se endpoints are selected, and click Batch Modify. Select B Only since we want to just modify one side of the connection. Set Min Tx Rate to 5Mbps, and click Apply
Go back to the Layer-3 tab and view the running connections.
Determine total throughput: Select all of the running connections and then Right-Click and select Calculations. In this scenario, we see about 230Mbps of total TCP throughput.
Test TCP upload throughput with 50 stations (WPA2)
Modify the VAP and stations to use WPA2 instead of being open. Go to Port-Mgr tab, select vap0, and all of the stations and click Modify. Change WPA2 to be 'ON' and enter password in the Key/Phrase box. Leave all othe values set to 'NA' so they are not changed.
Go back to the Layer-3 tab, select all of the connections, and click Clear to clear the counters. Right-Click and select Calculations to view the totals. In this scenario, we see about 50Mbps of TCP throughput.
Test TCP upload throughput with 128 stations
Use similar steps to those described above to create 78 more stations. In the Create VLANs window, use STA ID of 49 and Quantity of 78 this time (since stations 0-48 have already been created). When creating more TCP connections, you can click Modify on the tcp-se-0049 connection and click Batch Create.
In this scenario, we see about 36Mbps throughput with TCP in WPA2 mode, and 28Mbps to 40Mbps in Open mode.