Release Notes for LANforge FIRE & ICE Please contact Candela Technologies: support@candelatech.com, or www.candelatech.com for support questions. The software contained in this distribution is property of Candela Technologies, and may only be used with the explicit written permission of Candela Technologies. If you received this software without an attending license, please contact Candela Technologies to remedy the situation. Release 5.4.7 * Support ssl/TLS communication between LANforge manager and resources, Linux only at this time. * Support audio-quality reporting using VOIP and/or Mobile phone calls. Supports bluetooth and audio cable audio transport. Supports Android and IOS phones. * Add wifi-7 support to TR398v4 test cases. * Add DUT RSSI and channel utilization test cases for TR398v4 test. * Support IPv6 option on TR398v4 test case. * Support Intel be200 wifi-7 radio. * Update to 6.7 kernel for latest drivers, features, and bug-fixes. * Improved LANforge support on Windows, Android, MAC-OS. * LANforge is now supported on Apple IOS phones. * Add Continuous RvRvO Throughput test. Quickly test throughput over different turntable rotations. * Improved RADAR Chirp emulation using CT712. * Support generating modulated RF noise with CT712. * Improved GUI support for RADAR and RF visualization tool. * Support IPv6 UDP multicast on Android platforms. * Improve latency reports for wifi-capacity test and some other tests. * Improved python API, including auto-generated .py library for access to LANforge-CLI commands. * Add Web-GUI tool to provide a different way to easily run automated tests, especially on Interop testbeds (beta). * Support per-port DNS settings for many generic endpoints (ping, iperf) using LD_PRELOAD feature. Bug Fixes * Fix bad spam loop when incorrect resource (bad realm, bad version, etc) tries to connect to LANforge Manager process. This was likely root cause of some of the performance bugs previously seen in Interop testbeds. Work-Around is to ensure resources are configured properly before attempting the 'connect_mgr' configuration. * Fix some IPv6 address problems, where 'local' routes were not always added properly. Work-around is to reset the port if routes are not correct. Release 5.4.6 (July 14, 2023) * TR398v2: Improve 'clear-counters' logic: Instead of stopping and starting connections, slow them to 1% of requested traffic, wait 3 seconds, clear counters (slower traffic reduces inaccuracies due to pkts-in-flight), set back to full requested traffic rate. * TR398v2: Support running multiple connections in some tests to allow higher performance by utilizing more CPU cores. * TR398v2: Support configuring a 2.4 and 5g angle to run tests that do not otherwise change the turntable. This lets one run the RvO test, pick the best angle, and then run further tests at that good angle. * TR398v2: Improve reports (add some new graphs, improve layout, etc) * TR398v2: Add multi-band test for Issue-3. * TR398v2: Update to latest attenuation settings for Issue-3 rev-16 document. * Add station-mesh test automation: DUT in this case is phone or similar, LANforge provides mesh APs in bridged as well as routed topologies. Automated mobility implemented by changing attenuators provides throughput over range while roaming. * AP-Auto: Add Channel Switching Test. Verify AP will change channel when co-channel interfering AP + STA are active. * Dataplane: Add latency reports to show latency vs signal and rotation. * Add support for Mac-OS (x86-64 and ARM), including ability to configure wifi, generate layer-3 tcp and udp traffic, layer-4 https traffic, and more. * Add feature to virtual station configuration, allowing user to specify which band the station should prefer using when initially connecting to a network. * Support MTK7916 radio high-band switching between 5GHz and 6GHz, the radio may be used on either 2GHz/5GHz or 2GHz/6GHz. System reboot is required when switching modes. * 'Test Groups' feature renamed to 'Connection Groups'. Functionality has not changed. * TR398v2: Add xlsx spread sheet format report. * Support UDP-GRO layer-3 connections for accelerated UDP traffic generation. * Support automated calling through Bluetooth connection between Android and Apple mobile phones, including ability to receive the call on SIP VOIP endpoint and do POLQA quality scoring. * DFS: Chirp / Sweep modulation support added FCC5 and Japan W53. FCC5 support for trials high, center, low. FCC5 test mode FCC5B to support single burst of a trial. As short as .5 us pulse widths supported. FCC6 support added yet takes longer then 333 ms to complete. ETSI support added with up to 3 pulse repeat frequencies for ETSI5, ETSI6 * Support for OFDM modulated noise using CT712 SDR. * Improve stability and features of LANforge Interop solution on Windows, MacOS, Android. Release 5.4.5 (October 7, 2022) * Support recent 5.19 kernel for updated drivers and latest features, supporting ax210 firmware version 72. * Support MTK7921k tri-band 6E 2x2 wifi radio. Supports 4 virtual stations, has good statistics support. Max of 80Mhz wide (1.2Gbps max encoding rate). * Fix kernel problem with CAC when using AP plus STA on same machine on the same DFS channel. The fix is in kernel 5.17.4 and higher. * Support disabling OFDMA on MTK7915 radio VAPs. * Support enable/disable unicast to multicast on VAPs. * Support managing attenuators over telnet (Ethernet) instead of just USB. * Support up to 12 attenutors per LANforge resource instead of just 8. * Support RvR on two non-wifi ports (for when DUT is an ethernet bridge over wifi). * Add extensive wifi related stats for MTK radios. Including tx/rx mcs, nss, ofdma/mu-mimo stats and more. Supported only on MTK radios for now, and the radios will need to be configured to gather the extra stats. * TR398v2: Add support for Automatic Channel Selection test in TR398 issue 2. This test requires user-interaction (to change AP settings), so it is not fully automated. * TR398v2: Add user-interaction for MU-MIMO test case in TR398 issue 2. * TR398v2: Add user-interaction for AP-COEX test in TR398 issue 2: Supports using a second DUT AP as the interferer. User may still adjust settings to cause fully automated test using LANforge AP as the interferer. * TR398v2: AP-Coex test can now specify LANforge STA and AP radios and txpower. Using the calibration AP (or other radios off of the traffic STA machine) allows less near-field interference that causes the adjacent AP test case to fail. * TR398v2: Work-around issue with MTK7915 radios having trouble transmitting at mcs-11 on 2.4Ghz when fixed-rate settings are applied. Instead, in that configuration, we will let rate-ctrl be active and calculate pass/fail by looking at amount of frames that were transmitted at mcs-11 vs other mcs. * TR398v2: Add new graphs to compare results to pass/fail cutoff, improve report presentation and fix many smaller issues. * TR398v2: Add support for 6E testing in many of the tests. 6.1.1 RX Sensitivity, 6.5.3 mu-mimo, 6.5.2 AP Coexistence, and 6.5.3 Automatic Channel Selection currently do not have any 6E support. * TR398v2: Support all 3 mesh test cases proposed for TR398 Issue-3. * TR398v2: Support calibration logic required for TR398 Issue-3, including auto-calibration of mesh backhaul links. * Support management and discovery of newer LANforge CT714b attenuators over Ethernet. * ath10k cards report 'power average' for RSSI, but other radios report 'ofdm peak power', and it is ofdm peak power than matches user expectations. So, we added code to adjust the RSSI reported by ath10k based on experimental results on a calibrated testbed. This makes RSSI on 5Ghz be reported about 12db stronger vs older releases. And about 4db stronger on 2.4Ghz. This will cause TR398 calibration to change and that will cause worse performance on RvR related tests in TR398. There is an option to change the driver to use the old behavior if the user prefers: echo options ath10k_core ofdm_peak_power_rssi=0 >> /etc/modprobe.d/ath10k.conf reboot * Start integration with Android devices, including ability to install, start, stop the LANforge Interop app. * Scale-Test: Lots of bug fixes and feature improvements. * Enable channel 173 (5.865Ghz center frequency, 20Mhz bandwidt) AP mode (for testing purposes only). Station and Sniffer mode works as well, on radios supporting those features. * Dataplane & Rx-Sens test can now generate traffic between LANforge AP and Interop station device. * Add some additional 802.11k/v flags in STA mode, enables some RRM beacon RSSI query support. * Improved python API libraries and scripts. Bug Fixes * Fix bug that kept RX-Sensitivity test from allowing HE-SU type. * Fix kernel multicast routing bug when using VRF. Work-around for older releases: disable VRF or use a multicast address in the 224.0.0.x/24 subnet. * Use 'ondemand' cpu governor for Linux kernel, or performance if ondemand is not available. Previous builds often used 'userspace', which did not properly ramp up the CPU Mhz to maximum supported frequency. This should help performance on at least some types of LANforge systems. Work-around on older systems: echo performance | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor echo ondemand | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor > /dev/null 2>&1 * Fix ability to control tx-power with the tx-overrides for wave-2 AC radios. This is a firmware fix. * Fix NFSv4 mounts when using multiple interfaces. Similar to how nfsv3 has worked for ages..but at some point we lost the change that made it work for nfsv4. Re-add that logic. * Fix memory corruption (double free) when Intel wifi radio firmware crashes. No work-around, just need to use 5.17.15+ or 5.19.11+ or later kernels. * Fix performance regression in MTK7915 radios (introduced by upstream commits in kernel 5.16). Release 5.4.4 (January 12, 2022) * Support recent 5.15 kernel for updated drivers and latest features. * Support MTK 4x4 AX radios in tr-398 issue 1 (except MU-MIMO test case, which is not currently supported.) * Support MTK 4x4 AX radios in tr-398 issue 2 (except MU-MIMO test case, which is not currently supported.) * Support tx-overrides on MTK 4x4 AX NIC (ability to specify NSS, MCS, bw, guard-interval for transmitted data frames. * Update TR398 issue 2 to support latest proposed test revision. * Improve report content for TR398 and TR398i2. * Add proposed TR398 issue-3 Airtime Fairness (ATF) test case. * Add proposed TR398 issue-3 Quality of Service (QoS) test case. * Add proposed TR398 issue-3 Latency test case. * Add proposed TR398 issue-3 Multicast test case. * Add subtest pass/fail counters to TR398 and TR398i2 KPI reports. * Add pass/fail option for Dataplane and Rate vs Range test. * Add Latency graphs for the AP-Auto multi-station throughput test. * Scale test: Add ping support, improve error checking and feedback to user. * Improve RvR test report and procedure. * Initial support for LANforge pure-java resource on Android phones. Includes TCP, UDP, IPv4, IPv6 and HTTP/HTTPS protocol support for traffic generation. * Improve python scripting support, including auto-generated .py files to support LANforge CLI commands, and lots of cleanup and stability changes for the various automated python tests. Bug Fixes * Tr398: Save calibration results after running calibration test. Otherwise, they would not be saved for next run unless a user then clicked 'start' again. * Fix support for disabling 160Mhz mode. * Fix parsing vlan EidPortAndName objects. * Fix old kernel regression that broke configuring ARP cache. This made LANforge not handle thousands of stations well when it is acting as DHCP server. No work-around on older kernels without recompiling them with the fix, but also, it doesn't affect most use cases. * Fix MTK 4x4 7915 chipset radio to work better when connecting to OFDMA AP when not using virtual stations. * Fix several memory consumption issues in the LANforge-GUI. * Fix some LANforge crashes seen when running scale testbed tests. * Fix AP-Auto Mix-Stability pass/fail problem with endpoints not properly reporting traffic over the last 60 seconds in certain configurations. Known Limitations: * MTK 4x4 7915 chipset radio has problems when using multiple virtual stations when connecting to AP that does OFDMA. Work-arounds include disabling OFDMA on the AP or forcing the virtual stations to support only VHT instead of AX. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Release 5.4.3 (July 8, 2021) * AP-Auto: Fix false-positive in when detecting station connections were not passing traffic. The code did not properly deal with race condition between resetting port and noticing that it was disconnected. * Allow configuring LANforge to not load the default config database on startup. See Resource configuration window in the LANforge GUI. * Scenario test now uses auto-helper to scale better when using lots of connections. * ChamberView: Bind station to DUT bssid if DUT bssid is configured. This should help ensure stations associate to the expected DUT. Mis-configured DUT bssids will now more obviously not work as a side effect. * ChamberView: Support scenario row that uses 'ALL-AX' on a resource. This is a convenient way to configure all AX radios to the same setting on systems with lots of AX radios. * Send discovery message faster during the first minute, to speed up manager <-> resource linkup during initial startup. * Mesh: Allow custom distance orbit paths. Allow custom paths created by user. Allow playing the path multiple times in a loop. * Support DHCP hostname (option-12) in GUI. No longer need to hand-craft custom config files to get this option. * Support 5.12 kernel for latest drivers. * Fix 2.5/5g link rate reporting and setting. * Support ax210 2.4/5/6E tri-band radio (5.12 and higher kernel) * Add 'Day-in-the-Life' automated Scale test. This aims to emulate complex environments that change over time, such as a college campus. * Support forcing ax200, ax210 to VHT mode (disable HE). For some APs, this does not entirely work, both AP and STA seem to ignore the negotiated values and still send MCS-11 traffic. * Support configuring RvRvO and RvOvR mode for dataplane/rx-sens/rvr test. See 'Outer Loop is Attenuation' checkbox on the Advanced Configuration tab. * Support MTK 7915 4x4 /ax radio. 19 Virtual stations supported. More stats and advanced features coming in next release. Requires 5.12 or higher kernel. * GUI: Improve JSON API support, including for chamber-view tests, events, and attenuators. * TR398: Improve calibration step. Our wave-2 radios have a +3db or so pre-amp, or something similar, that starts increasing RSSI at around -35 RSSI. This confused the calibration step. Since we really care about correct RSSI at higher attenuation, then we change the calibration code to calibrate at higher attenuation values in order to skip the pre-amp RSSI dis-continuity. This provides clean passing results for the calibration step, and will generally make higher-attenuation related tests work better. * TR398v2: Add TR398v2 automated test case implementation. This is an upgrade of the original TR398v1 spec, and adds some new tests, improves the original v1 tests, and adds AX test case support. Most tests are implemented, others will be added in the next release. * TR398: Ensure attenuation is set properly on 5Ghz run for the 6.4.1 multi-station test. There was a bug where attenuation on 5Ghz was not set before stations tried to associate, which caused the far stations to often not connect. Bug Fixes * Protect against swap-port recursion that crashed a customer's system. I believe they had set an Alias on one port with name sta1 to wlan1, and that caused some confusion in LANforge. Attempt to fix that by checking for this case. * Auto-Helper: Fix problem with multi-conn > 1 connections, specifically easy to reproduce with wifi-capacity test. Root cause was id-space collision in auto-created endpoint ids in the helper class. Work-around is not to use multi-conn > 1 with auto-helper, but may need to backport this to a 5.4.2.1 stable since this bug is annoying. * Fix regression that caused bad RSSI reporting for wave-1 /AC 3x3 radios. Requires a kernel upgrade to fix this. * Fix AP-Coex test case failure in TR-398 test set. LANforge interferer AP must have DHCP-server set in its profile. This was likely a regressio added in 5.4.2 release timeframe. * Fix second Auto-Helper + Multi-Conn > 1 bug. This was introduced in first fix. Go me! * Fix writing out the firmware config files. Several bugs in the area, would affect ath10k cards. Work-around is to manually edit the fwcfg files. * Fix TR-398 MU-MIMO test. There were regression bugs in the driver reload logic when switching from MU-MIMO to MIMO for this test case. Fixed as of Jan 8, 2021. Release 5.4.2 (August 19, 2020) * Update to 5.4 kernel for latest drivers and bugfixes. * Use per-chain reported noise-floor for RSSI calculations in ath10k wave-1 and wave-2 radios. This improves RSSI reporting. The old logic ignored the real noise floor and also did not sum up secondary frequencies when reporting RSSI. * Fix some bugs with IPSEC usage. * Fix bug with multicast when used with VRF. Work-around for older releases is to make sure that a default gateway is configured, even if it is not actually used. * Improve MESH automated testing: * Better reports * Allow background scanning based on RSSI trigger. * Some TX-MCS were disabled by firmware on the /AC NICs, with goal of improving rate-ctrl. This release adds a new firmware-config option to enable all valid rates. This restriction did NOT apply to the tx-overrides, only to the Station rate-selection configuration. * Enable partial support for TXO support on wave-1 /AC NICs. * Support starting DNS server service (and tftp), using dnsmasq program. * Add Hunt GUI automated test. This will find the best throughput, and then run and additional test to report latency and other values at a configurable percentage of the maximum throughput rate. * Fix bugs with Hotspot 2.0 R2 so that it works again. Still a tricky beast to set up though. * Allow hiding chamber objects in Chamber View. This may help with taking screenshots and mesh test report generation (it automatically takes screen shots of Chamber View). * Allow GUI-CLI option to set chamber position and pause/unpause playing paths. Should aid scripting of the GUI chamber-view scenarios and mesh testing. * Fix CLI parsing bug: If two commands were received at the same time by the LANforge server, and if the first command had a trailing space, then the newline between the two commands was ignored and the second command was effectively ignored. Fix this by improving the parser tokenizer. This fixes problems found when using the lf_associate.pl script. * Improve script library CLI key:value parsing, and add a lf_tos_test.py script that can be used to test Type of Service vs latency. * Improve packet-capture (sniff_port) CLI command to support command-line capture using tshark and dumpcap, a well as automatically saving captures to files for a fixed duration of time. The scripts/lf_sniff.py tool has automation that uses these new features. * Add 'AutoHelper' feature. This flag allows 'multi-conn' 1 or higher processes to be executed inside of helper processes. We currently start 1 helper per CPU core, so this lets us make more efficient use of the CPU cores. * Fix some power-save bugs in wave-1 /AC 3x3 NIC firmware. The stations go into power-save when scanning now, and probably other cases were fixed as well. * Chamber-View scenario: Add support for VOIP, Multicast and HTTP traffic profiles. * AP-Auto: Add support for TCP, UDP, VOIP, Multicast, and HTTP traffic in the stability and port-reset tests. * Script-Automation: Improve GUI scriptability, add scripts/gui directory to hold some GUI automation scripts and example configurations. * Fix some GUI deadlock bugs found while running automated tests for a CI/CD project. * Fix TCP socket leak caused by funky logic triggered when LANforge detects TCP stream corruption. * Fix layer-3 TCP receive logic that caused false stream corruption detection, and could have caused rx bytes to be exaggerated. Part of this was introduced last release with the small tcp payload feature, but the rx bytes count being off may have been around for a long time. The good news is that this was pretty hard to trigger. * Fix WanLink bug where tso/gso was enabled on peer RDD, causing wanlink to receive larger than mtu 'frame'. Automatically disable tso/gso on peer device now. Work-around for older releases is to manually disable the offloads on the Port-Modify window. This may only affect user-space mode WanLinks as well. * AP-Auto: Add support for testing tri-band APs. * AP-Auto: Add support for automated band-steering test. * Enable setting AX200 radio to 1x1 mode (default is 2x2). This requires kernel 5.4 or higher. * Support EAP-PEAP in ChamberView. Release 5.4.1 (Jan 10, 2020) * Add TR-398 automated WiFi test support. * Support /AC on 2.4Ghz on /b/g/n/AC radios (2.4Ghz /AC) * Add support for wired traffic test to the Dataplane scenario test. * Support 5.2 kernel for latest drivers and kernel features. * Support IPSEC interfaces. * Support CT850a 2D attenuator turn-table. * Support ComXim MT series turn-table (for instance: MT200RUWL20) * Fix some bugs with IPv6 auto-conf, especially relating to VRF. * Improve performance of creating virtual stations, tested 500 stations per /n radio. * Fix several bugs with wifi station corruptions. Release 5.3.9 (June 20, 2019) * DFS: Add buttons for ETSI RADAR patterns. Buttons representing patterns with random ranges will not re-calculate random values each time they are clicked. Add tool-tips to document some limitations (no Chirp modulation supported, minimum of 1us pulse width, etc. * DFS: Allow one-burst setting in the RF-Generator RADAR emulator. Also, allow ignoring RADAR events in ath10k drivers and reporting on RADAR events. * Support tx-retry counter for WiFi stations on wave-2 radios. Previous release only supported the wave-1 NIC. * Improve Generic Endpoint builder to more easily generate iperf commands, and improve UI for the ping builder as well. LANforge now ships with an improved iperf3 executable that can properly bind to network devices and so work with VRF. * WiFi: Update to new rebased firmware for wave-2 radios (9984, etc). * WiFi: Support up to 24 vAP on the wave-1 and wave-2 ath10k firmware. * WiFi: Support WPA3 (SAE) encryption. * WiFi: Enable block-ack with PMF for ath10k (/AC) radios. Previously this did not work properly in rx-sw-crypt mode, which is the normal way to use LANforge. * Add Chamber-View feature to allow top-down configuration using profiles. This feature also supports managing RF Chambers and attenuators for automated roaming and other advanced test cases. Bug Fixes: * Fix GUI bug in wifi-capacity plugin when used with test groups. * Fix bug that could crash LANforge processes when using Generic endpoints. * Fix crash bug when using the wifi_cli_cmd CLI command. There is no work-around for this, and it breaks roaming. It will be backported into a 5.3.8.1 bugfix release. This bug was introduced in the 5.3.8 release. * Fix lfping script to support VRF systems. Work-around is to copy a newer lfping script to /home/lanforge/ * Fix regression that broke STA bridging. Release 5.3.8 (November 13, 2018) * Support Virtual Router Function (VRF) in kernel 4.16 and higher. This is a different way to do virtual-routing, and among other things, gives the ability to have multiple interfaces with the same IP address. (File-IO NFS, SMB, CIFS is broken on VRF, most other features work fine.) * Fix token parsing in CLI commands, both external and internal. This fixes trying to set the SSID to my-ssid-' for instance. See CLI user-guide help for details. * Support configuring some resource-wide options, including configuring how to bring up interfaces. * WiFi: Normall LANforge will share scan results among all stations on a radio. This significantly speeds up association time. But, in case someone wants to do a scan-per-station, that option is now available, and configurable on the WiFi Radios. * Support explicitly migrating virtual stations to new radios. Example CLI command: admin req_migrate 1.2.sta30 1.1.wiphy1 Support this in Batch-Modify in the GUI as well. * Support parent-mac patterns in CLI for add_sta, add_vap, set_port and add_mvlan * GUI: REST API support for creating, modifying, deleting and viewing ports and other objects. * GUI: Support -daemon mode so that the GUI can act as a service for REST clients without consuming as much memory and CPU resources. * Attenuators: Improve discovery logic for attenuators. * LANforge-Attenuator: Add 'no_lcd' option to suppress updating LCD when changing the attenuation configuration over the serial interface. This decreases time to change attenuation from about 160ms to about 8ms. This should help those wanting high-speed scripting of the attenuator. * RF-Generator: Support new CT712 RF and RADAR generator. This reliably triggers RADAR detection on modern APs. * WiFi: Allow disabling the operating-class IE in association attempts (this can work around bugs that seem to be in some APs). When enabled, the IE now correctly pays attention to virtual station settings to limit VHT and HT modes, and band restriction. * WiFi: Support up to 32 VAP interfaces on the /a/b/g/n ath9k NIC. * Support AUTO-UDP-NAT option for Layer-3 UDP and UDP-IPV6 connections. This tells LANforge to use the source-address of received frames as the destination, which should allow it to work through NAT networks. * Improve GUI hot-key shortcuts, especially on the port-mgr tab. * Allow GUI to discover LANforge resources as well as managers. * WiFi: Improve transmit performance on the wave-2 4x4 NIC. The firmware rate-control algorithm has been improved to be more efficient. In some cases, throughput is around 50% better. * Beta support for running LANforge on Netgear r7800 systems using OpenWRT. This may be a good low-powered platform for creating large clusters of LANforge systems for MU-MIMO testing and other scenarios that benefit from lots of real radios. Bug Fixes: * Fix problem where bond interfaces were not properly re-created on reboot. * Fix 'bind-mgt' option. No obvious work-around for older broken systems, other than don't use the feature. * Fix memory leaks in the 'gnuserver' helper process, and the GUI. Known Limitations: * VRF and File-IO: The 4.16 kernel supports VRF, but NFS, CIFS, and SMB File-IO traffic types do not support VRF at this time. So, you have to disable VRF to run File-IO: touch /home/lanforge/LF_NO_USE_VRF; reboot Release 5.3.7 (April 11, 2017) * Update to 4.13 kernel for latest drivers and features. * Update libcurl, hostap, supplicant, and many other integrated tools and libraries to the latest. * pcap-replay: Prepend an ethernet header on 'raw-ip' packet captures. This is at least more correct. * Support API Technologies 4205A Attenuator. This is a USB-attached attenuator. To use it with LANforge: connect it to some system, use serial console application to communicate with the unit and set the 'alias' to the serial number printed on the outside of the unit. If the serial number is greater than 65534, then you must pick some other serial number. Then, reconnect unit to LANforge system and click 'Discover' in the Attenuators tab. * Use new kernel feature to improve many tcp connections. Successfully tested 70,000 connections when using a 10G NIC on a system with 16GB RAM. * Improve stats gathering performance for ath10k virtual stations. This significantly improves throughput when you have lots of virtual stations and/or faster reporting times on virtual stations. This primarily effects multi-conn 0 connections, using multi-conn 1 or higher makes this stats slowdown less important. * Improve LANforge-GUI's WiFi Capacity Test with new graphs, more flexibility for upload/download testing, bug fixes, and more. * Support 'SGI' for ath10k. * Support channels 169 and 173 on ath10k and ath9k radios. Requires 'India' regulatory domain, and Fedora 24 or higher. Bug Fixes: * vlan related pcap filters now work on wanpaths. The fix was a combination of newer libpcap and using the filter output from tcpdump -ddd instead of calling pcap compile filter logic directly. * Fix packet-capture replay: Fix replay-too-slow bugs, fix invalid timestamp comparison. * Fix off-channel TX in ath10k driver. This regression was added after the 4.0 kernel (several releases ago), and breaks Hotspot 2.0 when using ath10k. The problem is in the ath10k driver, and only work-around is to install a working driver. * Fix reporting the proper MAC address on reboot. Existing code was reporting all zero's with virtual stations. Work-around is to restart LANforge once server has configured everything already. And, problem does not seem to cause any obvious problem anyway. * Replay-PCAP: Fix packet corruption caused by over-writing the frame to be transmitted in the receive logic. This has been broken a long time, and there is no useful work-around except to upgrade to 5.3.7 or later. * Replay-PCAP: Allow multi-conn 1 to work so that you can have multiple CPU cores replaying files concurrently. * Fix wanlink bit-transpose and bit-flip corruptions. They were corrupting more than the requested number of bits in the target byte. * Fix memory corruption crash caused by auto-payload-size layer-3 connections running in rfc-2544 scripts. Probably there were other ways to hit this problem as well, but it was rare in practice or we would have seen it sooner. * Fix some kernel locking issues and other general stability improvements for both ath9k and ath10k drivers. Release 5.3.6 (August 31, 2017) New Features & Improvements: * Drop support for Fedora-13 systems. Any users of this OS should upgrade to something newer. Contact support@candelatech.com if you need assistance. * WiFi: Support stations dropping a configurable percentage of assoc, deauth, EAPOL 1/4, EAPOL 3/4 and EAPOL 1/2 and other messages. Support corrupting sending 2/4, 4/4, 2/2 EAPOL and other messages. Support delaying processing of EAPOL 1/4, 3/4 and 1/2 and other messages. This effectively delays the response as well. * WiFi: Support IBSS with RSN (wpa2) support on the ath10k 3x3 NIC (at least). * Support create/delete/modify for Bonding devices in Linux. * The WiFi 4x4 9884 chipset NIC now supports 160Mhz channel bandwidh mode (with 2x2 NSS only in 160Mhz mode). * GUI: By default, do not show some tabs if license keys do not support those features. This should make a system configured for only WanLinks less scary to the initial user! * GUI/Scripts: Add Priority for graph data generated by the Hunt, Attenuator and 2544 built-in scripts. The GUI graph generator window now has a slider that uses the priority to adjust the verbosity level of the output. * Properly auto-configure the peer endpoint receive buffer. It was previously only auto-sized based on the transmit speed, and for one-way traffic, that is not sufficient. In addition, assume 1Gbps throughput if a script is active since the script may try to run at high speeds. This may improve performance on some UDP scripted (2544, Hunt) tests. * Script-Hunt: Add 'golden' LANforge and Netgear AP graphs. These were generated in ideal RF environments and may be used for comparison. * WiFi Radios: Allow configuring maximum AMSDU setting for 802.11AC NICs. Increaseing AMSDU from the default of 3 may improve TX performance, especially for small packets, and may be useful for testing in general. This is a firmware configurable. * WiFi-Capacity plugin: Add descriptive text, ability to change verbosity of the report dynamically, and allow multiple upstream network devices. The multiple upstream ports feature can be very useful when running wifi-capacity over a cluster of LANforge machines. * Add new tcp_tsq_limit_output_interval option to the TCP stack in Candela kernels, and set this to 5. This improves ath10k TCP transmit performance, especially on slow systems like the LF0350. * Add lfconfig option to configure the resource-keepalive. This may be useful when using management-over-wifi where the management connection is lost and re-established as a LANforge resource moves around. * Support REST API in LANforge-GUI to allow easier integration with some third-party frameworks. * Support 4.9 kernel for improved driver and stack support. * Script-Hunt: Only consider peer transmit constraints when running in symmetric mode. Otherwise, we tend to get false positives when reporting constraint failures. * Script-Hunt: Retry failure cases a few times so that a temporary problem does not invalidate a test as often. * TCP: When using AUTO payload size, use MTU sized frames if connection is less than 500Kbps of speed. Previously, we used 64k for all connection sizes, but this gives less useful reports when running at lower speeds. * WiFi: Fix regression which caused each virtual station to always scan before connecting. Now, stations can share scan results again. This improves association time and connection stability. * Fix some bugs that kept 64 station vdevs from working properly on the wave-2 (4x4) NICs. * WiFi: Don't start dhcp until after we detect the EAPOL 4-way has completed when stations are using WPA authentication. * Support random packet size in Armageddon. Previously, only linear increase from min to max was supported. * WiFi: Allow enabling power-save mode. Bug Fixes: * Do not clear the tx-tokens-bucket when clearing counters. This fixes an issue where a connection would stall for about 1 packet's worth of time when a user cleared the counters. * Fix data-base reload issue when using aux-mgt interfaces. * Configure WanLink ports to have single rx interrupt queue. This stops packet reordering on some common nics (igb, specifically). Work-around for previous releases: `ethtool -L combined 1` * Fix WiFi regulatory domain on ath10k /AC NICs. The problem is that the /lib/firmware/ath10k/fwcfg* files did not always have their regulatory information set properly. A work-around would be to re-apply the firmware config after changing the country code. * The RF noise generator cannot actually do pulse widths less than about 17us, so remove the radar pulse-width signatures that are less than that. This unfortunately means that the RF Noise generator cannot actually do much radar testing. We will look for a better piece of hardware to support this feature. * Fix creating interfaces admin-down. Release 5.3.5 (January 6, 2017) New Features & Improvements: * Properly create probe-requests in /b mode on the ath10k /AC NICs. Previous releases would advertise /g/a rates when user selected /b mode. * Various fixes and stability improvements for the const-tx RF noise generator based on the carl9170 (Proxim) network adapters and firmware. * Support 4.7 kernel for latest drivers and kernel features. * Support QCA9984 4x4 and QCA9886 2x2 MU-MIMO chipset NICs. QCA9984 supports up to 64 virtual stations. * QCA9980 4x4 now supports up to 48 virtual stations. * Allow disabling HT80 and HT40 when configuring Monitor interfaces for RF sniffing. * Improve 802.11ac 3x3 firmware rate-control logic. This improves wifi capacity and other throughput tests, especially in the upload direction. * Add support for some common ARM processor based systems (Raspberry PI 3, various Odroid platforms, etc). These may be used for low-cost and low-power LANforge systems. * Add support for secondary routes when resetting ports in virtual-routers. This fixes issues with vAP in virtual routers not properly adding additional routes configured in Netsmith. * Fix 20Mhz virtual APs (previously they would fail to start if 'disable ht40' was set. * Allow reporting average RSSI (signal) for virtual APs, and use this in 2544 and Hunt scripts. Bug Fixes: * Fix issue where commands were sent to the Attenuator too fast causing commands to be lost or jumbled. Does not require attenuator firmware, just new LANforge server. * Fix kernel lockup introduced in 4.4 upstream kernel, related to cgroups. * Fix VOIP bug that kept LANforge from being able to register with some newer VOIP gateways. Thanks Brent! * Fix LANforge-GUI WiFi-capacity plugin when used with Layer-4 connection types. Release 5.3.4 (July 22, 2016) New Features & Improvements: * Support RF Pattern generator for RF inteference testing. * Support 4.4 Linux kernel for latest drivers and features. * Support 802.11AC (VHT) on 2.4Ghz band. HT-80 is not supported on 2.4, but HT-40 appears to work as expected. * Update to latest hostap (wpa_supplicant, hostapd) for latest features and bug fixes. * Ensure Layer-4 connections are properly stopped and restarted when their Ports lose and regain IP addresses. * Fix GUI memory leak that was seen when a Port-Modify (or Display) window was left open. * Support 802.11AC 4x4 wave-2 NIC (QCA9980). * Automatically admin-down interfaces that receive a duplicated DHCP address. This can happen when there are multiple DHCP servers giving out the same address range, for instance. LANforge cannot handle duplicated IP addresses on the same machine, so it will now admin down the interfaces, assert an alert so user can know why, as well as generate a warning message to any LANforge GUI users. The user may admin the interfaces back up when DHCP is resolved. * Support 'wget' tool modified to use specified local IP address for DNS requests, and specific DNS servers. This allows one to use wget on virtual stations and other network devices. wget is not integrated into LANforge, but may be used from the command line or with a 'generic' LANforge endpoint. wget is useful for downloading entire web pages in cases where the LANforge layer-4 feature (which can download only single or a series of URLs, instead of automatically grabbing all of a page's images and such). * WiFi: Allow disabling automatic roaming based on scan results. This makes LANforge roaming testing work more often. * WiFi: Fix selection of 1, 2, 3 streams for 802.11AC adapters. Previously, this did not fully work for /AC NICs. Now, VHT-NSS and MCS set is configured properly. * Support configuring ath10k /AC firmware with number of stations, etc. This allows one to tune the firmware accordingly. Defaults should work for most users, but for certain scenarios, it may be nice to tweak the config. * Support additional user-specified IEs for probe requests and association requests. * Support Burst mode in Armageddon. Gives around 50% performance improvement with 10Gbe NIC, sending to itself, maybe more or less in other test cases. * WanLinks: Support > 2GB backlog buffers so that WanLinks can support 10Gbps emulation with 10 second round-trip time (requires 32GB RAM, and assumes mostly MTU sized frames). * WanLinks: Enable memory prefetching to improve performance when using high latency emulation. * Re-work Armageddon CX creation widget in the GUI to make it more like the Layer-3 window (it will hide more esoteric configurables by default). * Fix setting tx-power with ath9k /b/g/n NIC (work-around is to run 'iw' commands manually on the command line. * CLI scripts and related support to automate the GUI's wifi-capacity plugin. Good for automated testing. Other wifi-capacity features such as configurable station bringup amounts included as well. Bug Fixes: * Fix serious bug in LANforge-ICE (WanLink) kernel mode when using some common drivers. The symptom is that slow-speed traffic would tend to be paused for much longer than requested. The bug was caused by the WanLink driver not being properly updated to deal with a new kernel feature. The 3.17 kernel should be fine, but any kernel after that will have trouble without the fixes in the 5.3.4 (and later) releases. * Fix regression that broke WanLink Scripts. Work-around would be to use CLI scripting to accomplish the same task. Release 5.3.3 (Feb 10, 2016) New Features & Improvements: * Support Linux kernel 4.2 (4.0.9+ is still suggested for Wireless systems). * Support management frames over normal packet transport in firmware for the AC (ath10k) chipset (also known as htt-mgt). This improves performance and reliability when using lots of stations and/or using a VAP with many stations associated to it. * Properly support /b mode stations for the /a/b/g/n and /AC WiFi NICs. There were multiple problems, especially with the /AC NIC, but tests now show proper TX rates in the Probe Requests and Association Requests. Requires 4.0 or higher CT kernel. * Support custom 'dhclient' arguments using the LF_DHCLIENT_OPTS file. For instance, add '-p 1068' to this file to have dhclient run on port 1068 instead of the default of 68. * Support locking virtual APs to requested channel instead of allowing them to possibly switch their primary and secondary channels based on scan results. This lets multiple vAP on the same radio work together more reliably. * Better support for /b, /g, and /a mode. Now probe requests and association requests will use the proper rate IEs based on the selected station mode. This works on both /a/b/g/n (ath9k) and /a/b/g/n/AC (ath10k) radios. * Use the 'RENO' TCP congestion control algorithm by default. Previous releases use the 'Cubic' variant, but it has significant performance problems when using the 802.11 AC (ath10k) wifi chipset drivers. User may select from various other congestion algorithms by echoing strings to /proc/sys/net/ipv4/tcp_congestion_control Contact support for more details. This changes brings TCP performance back to rates previously seen in earlier LANforge releases based on the 3.14 kernel (before Cubic was broken on ath10k). * Add support for LANforge Resource on Android (ARM processor only at this time). * WiFi: Support passive scanning for WiFi stations. See the 'Misc Configuration' screen in the Port-Modify GUI for Station devices. * Support Armageddon-TCP connection type. This will frame up TCP frames and send them at very high rates. This is NOT stateful TCP, so it acts a lot like UDP in that it will not back-off, and does not use any real TCP protocol features. * Support automatically configuring TCP-MSS size when using the 2544 and Hunt scripts. This is better for forcing on-the-wire packet size. * Support admin up/down for WiFi Radio devices. Setting radio down will cause all vdevs on that radio to go admin down (until the radio is set back to admin-up). * Add "Table Report Builder" feature to the LANforge GUI. This lets one create reports for a customized list of tables, table columns and table rows. The data set selections can be saved and reloaded to easily generate custom reports. * Add "vAP Stations" tab to LANforge GUI. This shows statistics for all clients (stations) connected to LANforge vAP devices. This is useful when using LANforge as an AP to test client devices. These station objects can also be graphed using the Dynamic Report window. Bug Fixes: * Support ANQP (HS20) on 802.11 AC (ath10k) radios. The bug was that the 5Ghz ANQP messages were going out with CCK rate encoding, which is illegal on the 5Ghz band. The fix was in the ath10k firmware. * The "Skip Portal on Roam" checkbox in the GUI had the exact opposite effect in the LANforge Server. For 5.3.2, work-around is to configure the GUI for the opposite of the desired behaviour. In 5.3.3, the server has been fixed to work as expected. * Fix bug that caused WiFi Capacity to use too-slow TX rate when configured to use the 'Slightly Randomize Rates' checkbox. The work-around is to disable this checkbox or set Multi-Conn to 0 instead of greater than 0 or AUTO. * WiFi: Fix 802.11r when using the 802.11AC (ath10k) NIC. * Fix bug that disabled all network traffic when the management-port was 'lo' and an aux-management port existed. Known Bugs: * The 4.2 kernel with ath10k (802.11AC) radio is less stable than the 4.0 kernel. * LANforge on Windows will crash if you use the Custom Ethernet protocol type. Release 5.3.2 (July 31, 2015) New Features & Improvements: * Layer-3: Support 'AUTO' payload size. This will select MTU sized frames for UDP, and will use 64k payloads for TCP and SCTP. * Update to latest lib-curl and c-ares libraries (Feb 24, 2015) * Update to latest iw, hostap, iproute2, iptables and related tools/libraries. * Support Linux 4.0 kernel for latest drivers and features. * Support Fedora-21 OS for latest applications and bug fixes. * WiFi-HotSpot 2.0-R2: Support OSEN authentication methods. * WiFi-HotSpot 2.0-R2: Support acting as HS20-R2 server-side. This requires Fedora 17 or higher OS, as well as some manual configuration. * WiFi-HotSpot 2.0-R2: Support manual connection to HS20-R2 APs, including OSEN encryption, OSU display and selection, and 802.1x authentication with production AP. * WiFi 802.11AC: Add support for tx/rx bps stats for 802.11AC Radio. Improve stat collection in general to better deal with firmware resetting the stats to zero when firmware restarts. * WiFi 802.11AC: Improve WiFi channel activity reporting (requires 4.0 kernel). * Support running radius server (using hostapd) on non-VAP interfaces. This helps make it easier to have LANforge manage some of the HS20 server side features. The .conf file must be hand-created by the user, and must be named: /home/lanforge/wifi/hostapd_.conf, for instance: /home/lanforge/wifi/hostapd_eth0#0.conf Select the 'RADIUS' service in the Port-Modify to enable. * WiFi: Show 802.11AC and OSEN capabilities in the scan results table. * WiFi: Support ADHOC (IBSS) mode with RSN encryption. Tested in both ath9k a/b/g/n radios and ath10k a/b/g/n/AC radios. * WiFi: Support 801.11AC LANforge vAP in 40Mhz channel mode. For some reason, it often takes a second port reset 10+ seconds after changing after changing the vAP from HT80 to HT40 before the vAP works properly. * WiFi: Fix problem where 802.11AC stations did not properly detect that an AP has become un-available. * WiFi capacity plugin: Support concurrent UDP + TCP connections, add latency report graph, allow hiding most graphs for more concise reports. * NFS: Attempt to cleanup stuck mount points. LANforge will kill any still-alive processes after 30 seconds of stopping the endpoints, and the same check will be made on (re)starting an Endpoint as well. This still does not fix all hangs, but it cleans up some of the problems at least. * File-IO: Support opening files for writing with O_APPEND (instead of always using O_TRUNC). Default is still to use O_TRUNC. * 2544 script: Enable 'pps' rate setting for Layer-3 connections. Previously, these only supported 'bps' rates. Configured speed is 'low-level' and tries to estimate the number of frames sent over the network device. This is often different from the 'PDU per second'. * Layer3 traffic: Fix tx/rx bytes and other counters when an endpoint using multi-conn > 0 is restarted due to network interface restart (or change of IP, etc). * DHCP-Client: Add support for vendor-id (Option 60) for dhcp client requests. Also allow user to create custom dhcp client config files if more flexibility is needed. * WiFi Capacity plugin: Add latency graphs, enable save/restore for configurations, enable UDP + TCP mix, enable 'AUTO' settings for most configurables. * WiFi-Attenuator: Add plugin to programatically change attenuations to emulate a device moving relative to APs (ie, walking down the street). Includes reports from the LANforge AP on the station's signal strength, tx/rx rates, and the configured attenuation. This should be helpful when testing how mobile phones deal with migrating from one AP to another, for instance. Bug Fixes: * Fix UDP connections to properly auto-configure a reasonable sized send/receive buffer when 'OS Default' is selected. This worked long ago, but was broken when the 'Same' option was added for maximum-tx-rate. Tune the settings to work better with today's networks and update GUI mouse-over to explain things better. * Fix ANQP/GAS queries on 802.11ac (ath10k) wifi interfaces. The problem was a bug in the ath10k firmware that has now been fixed. * Fix bug that broke multi-conn Layer-3 connections on the Management port. * Fix Port-Reset plugin in LANforge-GUI * Fix bug where endpoints would not properly quiesce if a GUI was not connected. Endpoints now push a notification to controlling process if they quiesce, so the GUI polling is no longer required to propagate the state. Release 5.3.1 (Feb 20, 2015) New Features & Improvements: * Update to 3.17 kernel for latest drivers and kernel features. * Update to latest networking tools, supplicant, hostapd and other companion programs. * WiFi: Support 802.11h (use of DFS channels) in VAP. * WiFi: Report packet drop percentages in the wifi-capacity GUI plugin. * WiFi: Add ability to run the wifi-capacity GUI plugin in a loop and graph per-loop-instance data. * WiFi: Significantly improve station association times on the ath10k 802.11AC NIC. The old firmware was waiting for 200+ms for no good reason. New association times (WPA2-PSK) are in the range of 7-20ms (in mostly clean RF lab environment). * WiFi: Improve stability of 802.11AC (ath10k) driver when doing testing that often brings down and up interfaces. Previous releases could effectively deadlock the kernel in this scenario. * WiFi 802.11w: Support 802.11w on virtual APs. * WiFi 802.11w: Ensure only 256-bit SHA key management options are enabled by default when user configures IEE80211w to be required. User may still manually over-ride this by specifying the key-management themselves, but this may cause IEEE80211w to not be used. * WiFi: Enable configuring post-ifup-script per network device, and arguments can be configured as well. For instance: ./portal_me.pl -u user -p password ... This takes precedence over the old hard-coded lf_post_ifup, but if lf_post_ifup exists and no per-port configurable is configured, the lf_post_ifup script will be used. So, this feature should be fully backwards compatible. * WiFi: Support managing IBSS (AD-HOC) station interfaces. * WiFi: Improve portal-login support to allow configuring user/password and other configurables on a per-station basis using the GUI and/or CLI. * WiFi: Support doing only a portal login or logout using GUI and/or CLI. This can be a more efficient way to test portal logic instead of doing a full port (driver, supplicant, dhcp) reset each time you want to log in or out of a portal. For CLI, see 'reset_port' command. For GUI, see Batch Modify window or Port Bringup plugin. * WiFi: Add ability to lock LANforge to a specific regulatory domain. This helps when importing products into certain countries. * GUI: Add 'Port Bringup' plugin. This allows user to select a group of ports, and have the plugin admin all ports down (and optionally do portal logout), and then bring groups of ports back up at a specified rate. * VOIP: Add support for g.711a codec. * Add 'user-id' configurable for the GUI. This lets the GUI and its plugins use a particular config for certain customers. Currently, only the 'Port Monitor' plugin pays attention to this. * dhcpv6: Support using Link-Layer (LL) and Link-Layer + Time (LLT) DUID types. For automated testing, LL may be helpful. * dhcp: Allow clearing DHCP lease files for client and server (dhcpd). Due to nate of DHCPv6, this is required to change the DUID. Clearing the lease files automatically stops and restarts dhcp processes if they are running with the request is made. * Report time it takes to receive first packet after starting a Layer-3 endpoint. This may be particularly useful when using multicast receivers since it gives idea of how long it takes to join a multicast address. * IGMP: Implement Source Specific Multicast protocol (SSM). This does not work when LANforge resources run on Windows OS. Works fine on Linux. * Netsmith: Implement static-routes for virtual router protocols (RIP, OSPF, etc.) * Netsmith: Support IPv6 static routes. Bug Fixes: * Remove Delayed-Ack feature set. It never worked reliably on normal networks, and the kernel now has some more standard improvements that should mitigate the need to mess around with the delayed ack logic anyway. * WiFi: Fix 802.11AC driver to properly handle configuring the chainmask to 2x2. Previously, rates would be limited to 1x1 rates in this case. * WiFi: Fix regulatory-domain configuration for /a/b/g/n and AC NICs. This includes user-space changes to help make sure the values are properly configured. In most cases, you should have the same country-code configured on each of the wiphy interfaces. This allows usage of restricted DFS channels. Please be aware that it may be against the law in your area to change to different regions. Use care when using these options, and operate the equipment in an isolated environment if possible. * WiFi: Fix setting /a/b/g rates, help enforce /g and /a rates are not allowed if user selects 802.11b mode. * Netsmith: Fix problem with Virtual-Router and RIP. GUI did not properly support RIP-only VR, and the virtual-router was being configured incorrectly when RIP was enabled. * Netsmith: Fix RIP-ng (RIP for IPv6). The xorp virtual router process would not start if RIP and IPv6 was enabled. * IPv6: Be sure to disable 'accept_ra' on interfaces that are in virtual routers or have been configured with a static IPv6 gateway by the user. Otherwise, on a network with 'radvd' or similar service running the interface would use the auto-configured IPv6 gateway instead. * Secondary-IP: When using linear IP range, multi-conn, 'Concurrent-IP-Addrs', and infinite pkts-to-send and duration, we should restart stopped connections using the same IP address instead of potentially iterating to the next one. The old code was giving up and stopping the connection in this case, and hoping that it would be restarted with a new IP. * DHCP: Ensure dhcp is restarted if MAC address is changed. * Attenuator: Fix GUI bug that allowed the 'Adjust' to go out of range. This was mostly cosmetic since the logic that actually wrote config to the Attenuator checked the bounds and warned. Also, GUI parses values as dB by default now, instead of ddB. Release 5.2.13 (Sept 17, 2014) New Features & Improvements: * WiFi: Enforce licensing for 802.11AC NICs. LANforge will now only allow WiFi stations to be used if there is an 80211AC license key for the wiphy device. Customers that have previously purchased 802.11AC should request a new license from their sales contact before upgrading to LANforge 5.2.13. There will be no charge for the new key in this case. * Improve Layer-3 UDP performance, especially with smaller packets. Testing shows about double the number of packets-per-second when compared to previous LANforge releases. Should be able to generate near Gbps speed with MTU sized PDUs on moderately powerful hardware now. * Add CLI script to stop Layer-4 connections after a number of URL requests or time has elapsed. * Add Rate vs Attenuation graphs to 2544 and Hunt scripts. * 802.11AC: Allow faster connection rate for 802.11AC stations. It was kept slow to work around some crashes seen in earlier kernels/firmware, but these problems are now fixed. * 802.11AC: Ensure we do not pass un-encrypted frames with FCS errors up the stack. This may help with problems where LANforge received corrupted UDP frames and reset the connection, causing throughput glitches. * 802.11AC: Support up to 64 vdevs (virtual stations). If sniffing, a separate monitor interface may be preferred, and in that case only 63 stations can be configured. * Layer-4: Allow explicit enabling and disabling of FTP PASV ane EPSV options. PASV works better through firewalls and NAT than does PORT (which is used if PASV is disabled). * Layer-4: Improve rate-control when using bits-per-second limit. Now, the bits-per-second rate will be adhered to across URLs instead of just when processing a single URL. The rate will be the lesser of the urls-per-second and the bits-per-second configuration. * WiFi: WiFi capacity plugin now supports cloning a Layer-4 (http, ftp, etc) connection in order to do the capacity testing. This should help test scenarios where it is not convenient to have a LANforge machine on the upstream side of the network: Any web/ftp server can now be the upstream side. * Support 4-module Attenuator. * Scripts: Add ability to create, start, stop, and delete multicast endpoints using the lf_firemod.pl script. Add lf_mcast.bash to show how this might be used. * WiFi: Improve RTS Threshold (RTS/CTS) and Fragmentation Threshold support. Values are set properly now, configured on the wiphyX radio devices. Note that even when disabled, RTS/CTS will be used when the network adapter has to retry sending a packet. This is due to an optimization in the Linux rate control algorithm. * WiFi (802.11AC): Add Alert to let user know when the ath10k 802.11AC firmware has crashed and requires reboot to recover. Check the Alerts tab if your 802.11AC system is not able to bring up stations or APs, and reboot the LANforge if the "FW-FAIL" alert is listed. Bug Fixes: * Fix 'radvd' IPv6 router-advertisement daemon usage in Netsmith. This probably doesn't affect anyone or we would have found the problem sooner! * Fix potential kernel corruption related to ARP. * Hunt-Script: Report best rate, not just the last successful rate. * Fix ToS problem in Armageddon feature: Could not set ToS to values less than 0x10 due to kernel bug. * Fix WEP authentication when 802.1x configuration was previously configured for the station. The 802.1x config options are now properly ignored when WEP is enabled. * Fix some issues with DHCPv6. Re-order the dhclient program's socket code a bit to bind to device before binding socket. This appears to fix problem where only the first dhclient process could reliably receive leases from the server. Fix Netsmith problem with saving DHCPv6 client information if DHCPv6 DNS address was not configured. Release 5.2.12 (June 13, 2014) New Features & Improvements: * Support 802.11AC (ath10k) hardware, with customized firmware. This enables basic 802.11AC features with up to 36 stations per NIC. Some instability remains when using this hardware, so reboots may be required to recover. * Improve CLI scripts, especially lf_portmod.pl, lf_firemod.pl and the new NFS testing script: lf_nfs_io.pl * Add 'set_flag stream_events' CLI command to enable CLI to receive events (as seen in GUI Event tab) as they are created. * Add Thresholds for Layer-3 and Armageddon endpoints. Allows user to set min/max tx and rx rate bounds and if the connection throughput is outside of that an alert and/or event will be created. Good for longer term throughput tests. * full support for Layer-3, Armageddon endpoints. * Only tx/rx rate and no-rx-since supported on File-IO endpoints. * Add option to verify file-system remains mounted on expected file-system type for File-IO endpoints. See 'Use FSTATFS' checkbox in the File-IO modify window. * WiFi: Enable support for configuring 802.11w Management Frame Protection for Virtual Station interfaces (ieee80211w in wpa_supplicant). * WiFi: Support 802.11r combined with 802.11u (HS20/Passpoint) * Support Ubuntu 14.04 with automated lf_kinstall.pl script. * Update LANforge Live-CD image to be Lubuntu 14.04 (lightdm desktop Ubuntu) based system. * GUI: Add plugin to automate resetting ports (network interfaces). Bug Fixes: * WiFi: Fix setting regulatory domain so that it works independently of the time-zone configured in the operating system. * Fix issue with configuring randomized MACs when creating interfaces on the Port-Mgr GUI screen, and similar fix to Port batch-modify logic. * Make sure GUI's global-stats never includes stats from stopped endpoints. * Fix memory consumption problem where Layer-3 TCP endpoints would get confused and think they need to buffer up to 16MB before completing the receive of the frame. LANforge now detects the corrupted header and automatically re-starts the connection when this error hits. Root cause of the corruption is not known at this time: It could be kernel and/or ath9k (wifi a/b/g/n) driver related, or could be bug in how LANforge processes the Layer-3 TCP connection logic. It could also be expected behaviour related to LANforge disabling the 'time-wait' state for TCP connections in order to re-use IP ports faster. To date, this has only been reproduced when running stress-tests on Layer-3 connections on ath9k station interfaces. The only work-around for earlier releases is to manually stop, delete, and re-create connections in this state. The root cause will be further investigated. Release 5.2.11 (February 20, 2014) New Features & Improvements: * Estimate and report low level (on the wire) packets and byte counts. For UDP and Ethernet protocols, this will be quite accurate. For TCP, it should be a fairly close estimate. * HuntScript: Add graphs for low-level bits-per-second, improve reports for certain configurations. * Add Port-Monitor plugin for simple graphical view of tx and/or rx rates on network interfaces. This was added at the request of a company needing a nice and simple display for a trade show. * Add cx-detected-dropped packet counter to Layer-3 and Armageddon endpoint CSV files. Requested by Boeing. * GUI: Add right-click option to view logs for selected Layer-3 (multi-conn only), Layer-4, File-IO, and VOIP endpoints. Right-click on Resource tab to view main LANforge server process logs. Right-click click on Port-Mgr tab to view supplicant and hostapd logs for selected wiphy and vap interfaces. * FileIO: Add FORCE and LAZY unmount options. This can help when testing with non-responsive NFS servers. Using the 'soft,timeo=15' option also also helps in this case. * Disable most console logging by default. This significantly improves wifi association times. * Improve 802.11r (roaming) support. The GUI gets a plugin to automate roaming and reporting, and the CLI gets the 'wifi_cli_cmd' option to send commands directly to the supplicant. This is how we tell the suplicant to roam. Tested with Cisco Aeronet APs and 2504 controller configured for 802.11r. * Add CLI script with some examples of wifi station creation and Layer-3 connection creation (/home/lanforge/scripts/lf_associate_ap.pl). * Add option to disable re-acquisition of DHCP lease on wifi (re)connect. This aids wifi roaming tests where the IP addresses do not need to change as stations roam between APs. * Add option to acquire DHCP lease, but only print the info to the LANforge CLI instead of configuring the interface. Can be useful when using LANforge WiFi stations in bridge mode with certain third-part traffic generators. * Remove DHCP client lease files when deleting non-management ports. This ensures a newly created port of the same name will not use an old lease file. * Add option to have LANforge answer ARP for bridged wifi station interfaces. See the part about LF_STA_BR_ANSWER_ARP in the LANforge FAQ. * Support EAP-AKA authentication. Tested with 'hostapd' as the RADIUS server and a third-party RADIUS server. * Compile hostapd and wpa_supplicant with openssl and other options for better authentication support and additional features such as the ability for hostapd to act as a stand-alone RADIUS server. Add hlr_auc_gw program to LANforge-Server package for use as RADIUS authenticator for EAP-AKA. Custom configuration files are needed to enable these features. Bug Fixes: * FileIO: Fix regression that caused FileIO unmounts to hang forever when NFS server died. This is a kernel fix. The problem was introduced in LANforge 5.2.9 with the 3.9.Y kernels. Release 5.2.10 (October 8, 2013) New Features & Improvements: * Improve Layer-3 performance. Optimized stats gathering logic gives around 25% improvement in scenarios involving smaller packets. * Improve performance on E5 and related processors by properly enabling the 'performance' cpu-frequency governor. The OS was defaulting to the 'powersave' governor by default. This gives around 100% performance improvement in tests involving high CPU usage (such as sending smaller sized packets.) * Support concurrent IP address range for Layer-3 connections configured for multi-conn. * Add scripts and documentation for downloading YouTube movies using the LANforge Generic Endpoints. * Support SCTP protocol. Currently only the SOCK_STREAM API is supported. SCTP is only supported on Linux at this time. * Enable automated install script (lf_kinstall.pl) for Ubuntu 12 and Ubuntu 13. * WiFi: Support 802.1x (RADIUS) on LANforge AP interfaces. (Station interfaces have had 802.1x support for a long time.) The lf_kinstall script will automatically install and configure Radius on Fedora OS systems with some default values: identity: testuser password: testpasswd PK Password: lanforge, private key: /home/lanforge/client.p12 CA Cert file: /home/lanforge/ca.pem. The .p12 and .pem files are generated on the RADIUS machine and must be coppied to the LANforge station machine(s). RADIUS server installed on Ubuntu does not work, but you can still have LANforge VAPs on Ubuntu use some other RADIUS server. * WiFi: Support 802.11u (Interworking). Basic AP and Station support is now integrated into LANforge. Tested using EAP-TLS and EAP-TTLS (802.1x RADIUS) authentication. * WiFi: Support HotSpot 2.0 for both AP and Stations. Tested using EAP-TLS and EAP-TTLS (802.1x RADIUS) authentication. * WiFi: Support 802.11r related features: Add FT-PSK key management option, and allow enabling PKC (Opportunistic PMSKA key caching for WPA2). * WiFi: Automatically create Monitor device for sniffing if user clicks 'Sniff Packets' while a WiFi radio device is selected. User should delete the monitor interface when finished using it because it can be a performance drag on a system. * WiFi: Support emulated message loss in AP mode. This allows the AP to drop a percentage of various packets (probe, assoc, auth, reauth), and also corrupt GTK Rekey MIC packets. These errors will be a good test of station's error handling code. * WiFi: Add 'multi-conn' and 'tcp-delack-segs' configurables to the WiFi capacity GUI plugin. Increasing multi-conn improves throughput when using TCP because each individual connection may still make progress if others are temporarily stalled due to re-transmit. TCP Delayed Ack Segments allows tuning the Linux TCP stack to decrease the number of ACKs. This can improve performance significantly, but may not mimic real-world traffic since most applications will not be using this feature. * Support Fedora 19. Fully supported by the automated installation script (lf_kinstall). Uses MATE desktop and the latest utilities. * Support Ubuntu 13.04. The automated installation script (lf_kinstall) now supports installing and upgrading LANforge on Ubuntu 13.04. Candela engineers still have more experience with Fedora, so Fedora 19 is still the suggested OS. * Support LANforge on Android phones. Currently, Layer-3, Layer-4 and VOIP traffic has been tested. Interfaces cannot be configured by LANforge, it just uses whatever the phone automatically selects. Rooted phone with SuperSU gives slightly more features, but it works fine on an non-rooted phone. * WiFi: Ensure EAPOL packets are sent using 'VO' high priority queue. This was a bug in the hostapd project that is bundled with LANforge. Reported by Relay2. * WiFi: Report connection-related timers on Port-Mgr tab (and in CSV report files) This should aid measuring how fast APs can connect stations, but on more heavily loaded LANforge machines a fair bit of delay may be on the LANforge itself. For the most accurate testing, use one LANforge heavily loaded for background, and take detailed measurements on a second lightly loaded LANforge. * Total Connections made so far. * How long it took to acquire DHCP lease. * Duration of last disconnection (how long from last connected to new connection being fully established.) * Duration of last connectiong attempt (from minimum of ANQP query start or Association start through being fully authenticated and connected). * Duration of time to complete ANQP (HotSpot 2.0) query and response. * Duration of time to complete 4-way Handshake. Bug Fixes: * WiFi: Fix station migration when using advanced WiFi authentication methods. * WanLinks: Fix kernel-mode bug that caused checksum errors when using a WanLink between a wired Ethernet port and a pair of redirect devices. This bug only happened on 3.9 and higher kernels, due to upstream kernel changes in the redirect virtual interface code. There is also a manual work-around: ethtool -K rddVR[X] tx off where rddVR[X] is the name of the redirect device that has an IP address associated with it. Most LANforge configurations are not affected by this bug. * Armageddon: When configured to send a specific number of packets, the Armageddon driver was abrubtly stopping the test after sending the correct amount. This meant packets in transit through the NIC buffers and DUT were counted as dropped. Fix this by doing a quiesce logic to disable transmit but leave receive handling enabled for a few seconds after the final packet has been sent. Known Bugs: * SCTP over IPv6 does not work on link-local addresses. It works fine on global scope IPv6 addresses. Release 5.2.9 (July 11, 2013) New Features & Improvements: * Improve WiFi Station performance when using many stations. On the CT520, rx TCP performance with 50 stations went from 70Mbps to around 190Mbps. * Increase CX, Endpoint and other names to a max of 47 characters from 15 in previous releases. * WiFi: Allow stations to migrate between available radios. This can be useful for testing 'code-17' and similar load balancing schemes. * WiFi: Enable scanning hidden SSIDs. For VAPs, this enables hidden SSID mode. * WiFi: Allow creation/deletion of WiFi Monitor interfaces using the Port-Create option in the LANforge-GUI. Monitor interfaces are useful for sniffing low-level wireless network packets, but they will decrease throughput performance on other station interfaces. * WiFi: Allow viewing scrolling logs. Click the 'Logs' button on wiphy interface Port-Modify window to see the logs for all stations on that radio. Click the 'Logs' button on the VAP Port-Modify window to see logs for just that virtual AP interface. Closing the GUI logging window stops logging. Logging will not persist through LANforge restarts, so you would need to manually start it again in that case. * WiFi: Support enabling verbose logs for VAP and Wiphy devices. For VAP, this increases logging for the hostapd process, and for Wiphy devices, this increases verbosity for the wpa_supplicant process that handles all stations for this radio. This is useful when using the scrolling-logs feature above. * WiFi: Allow configuring Channel/Frequency with a single drop-down selection box in the GUI (wiphy-radio devices only). * WiFi: Significantly improve time it takes to associate large numbers of stations. The main fix was to clean up a wpa_supplicant scan delay timer, but other optimizations were added as well. * WiFi: Support portal logout scripts. Available through the 'reset_port' CLI command as well as right-click option on the Port-Mgr tab in the LANforge-GUI. This will cause LANforge to call out to the lf_ifup_post script (if it exists) with a --logout argument prior to resetting the port. The script could be used to log out of a portal, for instance. * Remove support for Fedora Core 8 systems. The latest software libraries have become too difficult to support on such old systems. Contact support for help in upgrading the OS to something more recent with better LANforge support. * Layer-3: Support multi-conn feature for Custom-Ethernet (at least when not replaying pcap files). This helps use the full resources of multi-core processor systems. * Allow Auxiliary management interface. This could be an AP or station, so LANforge can now configure and use it's own WiFi network adapters for management. This is especially useful when using a secondary WiFi adapter such as the TP-Link USB dongle. * VoIP: Support PESQ file reporting in LANforge-GUI HTML reports. This also fixes a regression that broke HTML reporting when PESQ CSV files existed in the report-data directory. * VoIP: Start up to 5 PESQ processes (one per core on first CPU) for additional PESQ processing power. The ports start at 3998 and go down by one for each additional pesq-server started. PESQ is licensed per CPU and with a max of 5 concurrent sessions on a CPU, so that is the reason for the limitations. * GUI: Add groovy plugin script support. See Plugin pull-down menu. Groovy is a java based scripting language that integrates easily with the LANforge GUI code. The plugins can be used to automate LANforge GUI actions, create custom reports, and even add new configuration windows. This can be helpful for customers needing simplified interfaces for specific test cases. Plugins can easily be edited by LANforge users with some programming experience to customize behaviour for specific requirements. Candela Technologies can also help with customizing or creating new plugins. * GUI/WiFi: Add 'WiFi Capacity' plugin script to automatically determine how many stations an AP can associate and it's maximum throughput for various numbers of associated stations. Includes pie-charts to show station throughput distribution and other charts to show total throughput and total number of stations associated. * GUI/WiFi: Add 'Ensure Fairness' plugin to automatically slow down connections until the entire group of connections get their requested throughput. Select connections on the Layer-3 tab, right-click on the table and choose the 'Ensure Fairness' option. * GUI/VoIP: Add 'VoIP Reporting' plugin script to generate some summary reports requested by a LANforge user. Includes charts for PESQ scores, jitter, packet-drop-percent and TX Bps. * GUI/VoIP: Add 'Create Simple VoIP' plugin script to create a VoIP call between two LANforge resources. This hides much of the options normally associated with VoIP call creation for users who can use mostly default configuration values. * GUI: Update to jfreechart-fse for 2D charting support. This code is under more active development than the old jfreechart version. * Windows: Improve IPv6 support for Vista and higher (previous releases only supported IPv6 on XP). * Windows: Upgrade to WinPcap 4.1.3 library. This has support for Windows 8 and various bug fixes. It does require an extra few steps during installation if the system does not already have WinPcap 4.1.3 installed. Bug Fixes: * WiFi: Fix kernel memory leaks related to association. This problem was especially visible when stations are constantly re-connecting to APs (or trying to). * Ensure GRO and other offloads are disabled for parent Ethernet devices when LANforge-ICE (WanLinks) are used on 802.1Q VLANs. Work-around is to manually disable the offloads on the Port-Mgr tab. This primarily affects 'CT-970' type systems. * Fix bug that caused wiphy interfaces to loose their channel configuration during restart of LANforge. This would only happen on systems with more than one wiphy NIC. * Properly disable rp_filter on all network interfaces. Without this fix, multicast send-to-self would not work on normal Ethernet interfaces. Work-around is to manually disable rp_filter on all network interfaces. * GUI: Make Help work when using the LANforge-GUI through Java Webstart (as served from the LANforge server machine). * Limit input buffer size. Naama Socher @ Alvarion found a case where LANforge died from out-of-memory condition when trying to grow it's command input buffer past 1.4GB. There is no need for such a large buffer. Added fix that limits input buffer to 5MB. This will protect from this crash, and will provide backpressure to processes sending the commands. Relase 5.2.8 (March 29, 2013) New Features & Improvements: * Improve dhcp server and client for use in virtual networks in LANforge. Start using the bundled dhcpd server program instead of whatever exists on the OS. * Improve kernel performance related to having lots of WiFi interfaces. * Support scripts on Attenuators so users don't have to create a Cross-Connect in order to script Attenuation values. * Scripts can be looped a defined number of times (previous releases only allowed once or infinite). * Support LANforge-Attenuators on Windows (USB-Serial driver, LANforge-Server integration, etc). * Support HTTP web server (nginx) on LANforge (with full send-to-self capability). See 'Services' option in the Port-Modify window. This allows Layer-4 HTTP connections to use a different interface (port) on the LANforge as the server. Previous releases required an external HTTP server machine. * Support FTP web server (vfstpd) on LANforge (with full send-to-self capability). See 'Services' option in the Port-Modify window. This allows Layer-4 FTP connections to use a different interface (port) on the LANforge as the server. Previous releases required an external FTP server machine. * fileio: Improve performance with lots of interfaces, speed up interface discovery and and configuration, bring up File-IO connections more gracefully. * fileio: Fix kernel limitation for number of concurrent NFSv4 mounts. Should support up to 5000 now (not sure that user-space can handle this many, however...only tested up to 3000 mounts, and that mostly consumes CPU and 16GB RAM on high end system). * Layer-4: Optimize code for use on machines with large numbers of (virtual) interfaces. This greatly improves performance in larger test scenarios. * GUI: Allow downloading configuration database to GUI machine. Upload will be supported in future releases. * Reporting: Re-work the report manager (for CSV files and HTML reports). More usable GUI layout, and significant performance improvements when reading lots of CSV files. * WiFi: Use ath9k-rate-control algorithm instead of minstrel_ht by default. Testing shows better performance for ath9k-rate-control in most cases. * Improve WiFi transmit performance when using lots of virtual stations. There are more improvements needed in this area, and those will be addressed in future releases. Bug Fixes: * The 'Payload' option for Layer-3 was lost in the Create/Modify window in the 5.2.7 release. Re-add this. In 5.2.7, a work-around is to use the create/modify on the L3 Endps tab and use the Payload button there. * The MPLS protocol builder (for Custom Payloads) was not working properly. Fix this to use proper protocol types and restrict upper level protocols to only IPv4 for MPLS (IPv6 is not supported in the protocol builder). * File-IO: Add some fixes for NFS related crashes to the 3.7 and 3.5 kernels. These were found and fixed while testing support for 3000 mounts. * Fix crash introduced in 5.2.7 caused by stopping a TestGroup with no members. * Fix hostapd (virtual AP tool) crash when scan failed. LANforge restarted the application anyway, but it left unsightly core files behind. Should be fixed now. * Fix HTML reporting for NFSv4 and some other File-IO types that were previously broken. * Script-2544 and Script-Hunt will now work better when used on Groups. The main fix was to properly quiesce the 'B' side of the group's connections upon start of the script. * WiFi: Fix several different kernel crash bugs when deleting station interfaces. Some were easily reproduced if the AP was not running when deleting the interfaces, others a bit more difficult to reliably trigger. * WiFi: Add work-around for TX-Hang seen in some interesting setups involving many bridged stations and ever increasing attenuation produced by a programmable attenuator. Known Bugs: * IMAP: In order to get some more important features in this release, the IMAP support was removed. It is expected to be re-added in the following release. Work-around is to use an earlier release. Contact support if you have any questions. Release 5.2.7 (Dec 3, 2012) New Features & Improvements: * Add 'lf_kinstall.pl' script to automatically download and install (or upgrade) LANforge, kernel, and other components needed by LANforge. See: http://www.candelatech.com/lfserver_install.php#auto * Allow constraints on the Script2544 GUI script. This allows one to create simple pass/fail tests. The GUI will show failed tests as red in the Layer-3 and Armageddon tables. * Allow automatic scaling for Y axis in the dynamic reports tool. This is enabled by default, and disabled whenever user manually zooms or unselects the auto-scale checkboxes. * Add Test Group support. This allows the user to create groups of tests that can easily be managed as a single unit (stop, start, dynamic reports, etc). Scripts may run on Test Groups as well. * Add 'Table-Report' option to right-click menus on tables in LANforge. The columns may be configured, and the rows will be those selected in the table. This is used to generate quick reports for a subset of connections. * Add support for programmable LANforge RF Attenuator. The attenuator is used to degrade WiFi signals for various wireless testing scenarios. * Scripts: Support parsing ranges for iteration entries. For example, if you wish to iterate through rates from 1Mbps to 100Mbps in 5Mbps steps, you could enter: 1Mbps..+5Mbps..100Mbps * Optimize TCP reconnect logic, especially when using 'multi-conn' feature. * GUI: Re-work Layer-3 and WanLink creation GUIs to allow hiding the more obscure configuration fields if desired. * TCP: Optimize TCP reconnect logic to use less CPU. Gives 30% improvement in some scenarious (for total of around 20,000 connections per second on higher-end hardware.) * WiFi: Optimize some scanning related issues, and better handle large numbers of virtual stations on congested networks. * WiFi: Add some fair-queueing logic for the external wifi bridge mode. This may help keep one virtual station from hogging all of the available resources on the radio in some cases, but it also can add latency and increase CPU load, so the feature is disabled by default. To enable this feature, run this command on the LANforge linux terminal: touch /home/lanforge/ENABLE_WIFI_BRIDGE_FAIRNESS and restart LANforge. Bug Fixes: * Fix WiFi bridging (external traffic generator mode) related to TCP offload in the NIC. The Ethernet NIC must have LRO and GRO disabled to properly bridge TCP traffic. This was not being enforced by previous builds. On older releases, the work-around is to manually disable LRO and GRO by modifying the Ethernet port in the LANforge GUI. * Installer now copies ./local/sbin/mount.nfs to /sbin/mount.nfs. Otherwise, LANforge NFS File-IO does not work quite right. * Fix Fedora 17 udev rules logic so that it no longer renames virtual wifi station interfaces. It usually didn't rename them anyway, which is why this bug was not found for a while. Not sure what makes it trigger. Work-around is to hand create /etc/udev/rules.d/60-net.rules Ask support for help on contents of this file. * Fix packet packet corruptions when using TCP and multi-conn on heavily loaded systems. This was caused by the attempt to share tx buffer of the master-conn with the child endpoints. Just remove this code. * Fix false report of rx-wrong-dev reports when using LF/Eth protocol on WiFi-enables systems. * WiFi: Fix scaning from Scan Results window when first interface (wlan0, usually) is DOWN. * WiFi: Fix kernel crash when deleting virtual stations. This affected all 3.5.* kernels, and perhaps earlier versions as well. * WiFi: Fix crash/lockup due to improperly calling dev_kfree_skb() when holding irq spinlock. This could be triggered by over-driving a station interface using the Armageddon feature. It likely could not be triggered with normal Layer-3 traffic. Release 5.2.6 (Sept 1, 2012) New Features & Improvements: * Add flag to clear Port stats on Endpoint start. * Add built-in GUI Hunt-Script. This script will find the best transmit speed for various packet sizes based on user-configurable constraints such as packet-loss, latency, jitter, etc. * Support modifying the TCP Delayed-Ack options. This can allow the TCP connections to decrease the number of ACK packets, greatly increasing throughput on half-duplex networks such as WiFi. For example: TCP throughput went from 196Mbps to 231Mbps when MAX-SEGS was set to 1024 (default is 1). Requires LANforge linux kernel. * WiFi: Add support for advanced WPA Supplicant configuration through the LANforge GUI and CLI. This allows users to configure WPA Enterprise and various other WPA-EAP options without having to hand-edit a custom wpa_supplicant config file. * WiFi: Support disabling Short Guard Interval (SGI). * WiFi: Support Antenna diversity on Ath9k (modern 802.11a/b/g/n NICs). * WiFi: Parse and show scan results in a GUI table instead of just having a raw text dump. * GUI: Improve Layer-3 and Port Batch-Modify support. * GUI: Add 2D and 3D graphs to script reports. (2D for HuntScripts, 3D for 2544 scripts, and no graphs for WanLinks at this time). Bug Fixes: * Fix setting of management-port configuration on Ubuntu (live-CD & pendrives). * GUI: Warn users if cannot write out the GUI configuration file. This could happen on Windows 7 if GUI was not run as administrator. Inability to write the file means that reporting configuration will not be saved between GUI restarts, for example. * Fix MAC parsing bug in GUI that would parse 111.111.111.111 as a MAC instead of an IP address. Most critical in the WanPath filter section. Release 5.2.5 (June 4, 2012) New Features & Improvements: * Add Alerts for DHCP problems, such as FAIL (DHCP server out of leases, or no DHCP server available), DHCP Timeouts, and duplicate addresses handed out by DHCP. See the Alerts tab in the LANforge-GUI. * Add Alert for mis-configured WiFi Stations (empty SSID, or no passphrase when encryption is enabled). * If WiFi Station has no SSID configured, do not attempt to bring up interface. If user really wants to use a blank SSID (meaning associate with any available AP), then the user must enter "[BLANK]" as the SSID. This means that the auto-created wlan0 and wlan1 interfaces will not be running until the user properly configures them. * Add example LANforge CLI scripts (written in perl) and the LANforge perl modules to the LANforge-Server install package. The scripts will be in the ./scripts/ directory. * Add kernel optimizations related to WiFi interfaces. Verified UDP thoughput in optimal configurations: CT520: 355Mbps, CT521 (one radio): 345Mbps, CT522: 250Mbps Bug Fixes: * Fix Port stats for ixgbe (10G Ethernet) driver. * Fix USB persistent storage image: Properly unmount the persistent storage file-system so that it comes up cleanly on reboot. * Fix problem where the LANforge-LIVE CD would not always mount USB drives when trying to save or restore the LANforge configuration database and license file. * Fix crash related to probing WiFi interface stats. Bug was introduced in 5.2.4 while optimizing WiFI stat gathering. The bug was a race that could be seen after bouncing wifi interfaces for a while. * Remove potential kernel deadlock related to regulator domain work items. The deadlock was never reproduced in testing, but the kernel lockdep debugging tool flagged the problem and a proposed upstream kernel patch was applied. * Add extra checking so that interfaces using DHCP will not use duplicate IPs, even if the DHCP server(s) give them out. This helps when testing two APs that happen to use the same on the same subnet. * WiFi/Armageddon: Fix kernel crash due to out-of-memory conditions when using Armageddon at high speeds on WiFi interfaces. Release 5.2.4 (May 14, 2012) New Features & Improvements: * Support rx-all and rx-fcs on modern Ethernet drivers. The old feature set had rotted and did not work. Update server and 3.3.0+ kernel to support these features on most 10/100 and 10/100/1000 Intel and Realtek NICs. Rx-all allows the NIC to receive errored frames (such as those with bad Ethernet Frame Checksums) and Rx-fcs allows the NIC to add the Ethernet FCS to the end of the packets. Both of these features are good for sniffing networks. Linux only. * Support sending packets with bad Ethernet Frame Checksums. This is now supported on most 10/100 and 10/100/1000 Intel NICs, and allows generating packets with bad FCS on purpose to verify that equipment under test properly handles the errors. Requires kernel 3.3.0+. Linux only. * Support micro-second (us, 1/1000000 of a second) precision for kernel-mode WanLinks. In reality, accuracy is limitted to around 100-200us at moderate speeds, and around 1-2ms at high speeds. Micro-second precision is only available when running in kernel-mode. Linux only. * Improve Armageddon traffic generation to be slightly less jittery at the micro-second time scale. This gives more accurate timing results as NIC queues are not backed up quite as bad at moderate packet rates. At full line speed, the NICs buffers will still be backed up adding around 1-2ms of delay before the packets hit the wire. Requires 3.3.0 and higher kernels. Linux only. * Support sending DHCP-Release packet when DHCP interface is configured down or converted to using fixed IP addresses. This option can be disabled on a per-port basis. Also, added 'dhhack' tool to send spoofed DHCP-Release packets for any IP/MAC combination. Linux only. * Report RFC 3393 style running jitter (old-jitter * 15/16 + new-jitter * 1/16) for Layer-3 and Armageddon endpoints. * Support callback to external script when an interface connects. This can be used to log into WiFi portals, for instance. See the lf_ifup_post-sample.pl script for an example. * WiFi: Optimize reading wireless interface stats (requires kernels released with LANforge 5.2.4 or later for full optimization.) Linux only. * WiFi: Support management port on WiFi station interface. * DHCP: Support sending DHCP-Release packet on interface shutdown. Linux only. * Stats: When calculating cx-dropped percentage, subtract the rx-dup from the local rx stats: (peer-tx - (local-rx - local-dup)) / peer_tx This way, if your network is dropping and duplicating packets, the cx-dropped logic will provide a more accurate number. * Add Alerts tab to show currently-active alerts. Only a few Alerts are currently supported, but more will be added in upcoming releases. * GUI usability improvements: Add/remove tabs without restarting GUI. More appropriate column selection for Calculations. More Layer-3 and Port batch-modify options. Various other tweaks and small features. * Live-CD: Upgrade to Ubuntu 12.04 Fix Virtual-Router console (Xorp) permissions. Support multi-cast routing in Virtual Routers. No need to remove and re-insert USB storage in order to store/restore LANforge configuration files. NOTE: There are some error messages from Ubiquity and other Ubuntu packages on startup. These do not appear to cause any real harm. Please just close them and continue on to the main desktop. * Persistent-USB image: Provide pre-made persistent USB image based on the LANforge Ubuntu 12.04 live-cd. This fixes some file-system bugs in Ubuntu 12.04 that you may hit if you try to create the USB image directly from the Live-CD yourself. Contact support if you want to create your own image and you will be sent the details on how to do this properly. NOTE: There are some issues with properly un-mounting the persistent storage partition, so please back up the /home/lanforge/DB directory on external storage for extra safety. This bug will be fixed in the next release if possible. Bug Fixes: * Fix nasty TCP socket leak on LANforge/TCP connections. This would cause connections to fail to start a second time in some cases. This bug was introduced in the 5.2.1 release. (Also fixed in release 5.2.3.1.) * Fix harder-to-hit socket leak with UDP and other sockets. This bug only happened when the socket bind() call failed. Multi-conn UDP sockets were a good way to hit this bug. * Fix memory leak and other errors when a resource is configured to connect to a manager on a different realm. With release 5.2.4, the manager will properly disconnect the resource, though the resource will continue to try to reconnect until manually stopped. * Fix crash when configuring DHCP Client on a Virtual AP interface: Just do not allow DHCP Client on a VAP. Linux only. * Fix GUI memory consumption bug where many text errors and events could eventually consume all available memory in the java machine. The display fields are now properly truncated before they get too bit. Known Regression Bugs: * Multi-conn: A bug was found late in regression testing where multi-conn Layer-3 connections with 'forever' duration does not actually spawn multiple connections. Setting duration to anything else seems to work-around the problem. Due to the complex nature of this code, it was decided that LANforge 5.2.4 will ship with this bug and it will be worked on for the 5.2.5 release. * IPv6: Radvd is not properly giving out default-gateway, and/or interfaces are not properly accepting the default IPv6 gateway. Work-around is to specify the IPv6 gateway instead of using Radvd (AUTO). Please contact support if there are any questions or concerns. * The Live-CD has some new errors and warnings on startup, but they do not appear to cause any real troubles. Release 5.2.3.1 (March 12, 2012) Bug Fixes: * Fix nasty TCP socket leak on LANforge/TCP connections. This would cause connections to fail to start a second time in some cases. This bug was introduced in the 5.2.1 release. Only the server needs to be updated (kernel and GUI was not affected.) Release 5.2.3 (February 13, 2012) New Features & Improvements: * Dynamic Reporting improvements: Allow reporting over arbitrary time slices instead of just the last 10 minutes, loading of CSV report files, and many other improvements. * WiFi: Support WPA2 in virtual access points. * WiFi: Support SSIDs up to 32 bytes in length (old max was 15). * WiFi: Support multiple WiFi NICs in the same system. * Don't let users configure invalid MAC addresses (bit 0x01 set in first octet, or all-zero MAC address). * Allow users to configure interfaces to be admin-down. This will cause them to generally be un-used by the OS. For WiFi Station interfaces, they will be un-associated, for instance. * GUI: Allow saving column sizes and positions so that they will be reloaded in that configuration next time the GUI starts. CTRL-S saves, CTRL-M allows adding/deleting columns, and CTRL-O returns the table to the factory defaults. More obviously, right-click menu-items allow the save, reset, and column manipulation. * File-IO: Improve batch-modify functionality: Can change endpoint-type and read/write settings. * Support serving DHCPv6 in virtual routers and using DHCPv6 on interfaces to acquire the global IPv6 address. Bug Fixes: * Check for duplicate link-local and global IPv6 addresses. Warn user and refuse to make the change if users try to configure duplicates. * Fix long-standing CLI parsing bug that could cause partially read commands to be processed. This could be seen when using large numbers of wifi stations with DHCP, for instance. * Change how out-of-order and packet-gaps are calculated. In previous releases, we updated our 'last received pkt sequence number' even if the packet was out of order. With the new change, we only update the sequence number for in order packets. This means that we will not detect drops in sequences of out-of-order packets, but we will more properly count out-of-order packets. * Improve Armageddon rate control algorithm slightly. This smooths out the rate when the user does a 'Clear', and provides small improvements in how long it takes to find the proper rate when running near line speed. * Fix Kernel-Mode WanLink rate limitation bug when configured with zero latency. Symptoms were excessive latency and packet loss when configured for zero latency. Bug was introduced in 5.2.2 when fixing some of the packet-recording bugs. * Fix (very hard to trigger) race in Kernel-Mode WanLinks that could happen when recording files. Reported by Alcatel/Lucent. Release 5.2.2 (November 29, 2011) New Features & Improvements: * Add basic support for GRE tunnels. * WiFi: Support disabling 802.11n features on virtual stations. This allows an 802.11a/b/g/n NIC to mimic an a/b/g NIC. * WiFi: Support disabling HT40 on virtual stations. This allows an 802.11a/b/g/n station to be in HT20 mode even if the AP supports HT40. * WiFi: Support specifying MCS (/n) rates, which also allows specifying the number of spatial streams in use. * WiFi: When a single 802.11a, b, or g mode is selected, the appropriate bandwidths and frequencies are enforced. * WiFi: Support configuring AMPDU size and density for /n stations. * WiFi: Support WiFi bridging based on IP address. This will bridge ARP and IP packets. Other protocols will probably not work correctly. Bridging by MAC address should work for all protocols and is still supported. * DHCP: Support DHCP Client ID option when using DHCP. * FTP: Support binding customized FTP server (vsftpd) to local interface & IP so that one LANforge machine can act as both FTP server and client. Requires editing FTP config files and manually starting the server, but that can be scripted. Contact support if you need this feature. Bug Fixes: * WanLinks: Fix crash and other issues with recording packets with kernel-mode wanlinks (ICE). * WanLinks: Fix hang when enabling/disabling packet capturing. The problem happened because we changed between relative and absolute timestamps without clearing the old timers. Release 5.2.1 (October 12, 2011) New Features & Improvements: * VoIP: Remove OOH323 support from LANforge. This never worked too well, and has become difficult to maintain. Likely can be re-added if anyone actually wants it (contact support if so). * WiFi: Support WiFi station bridge. This allows third party traffic generators to use the LANforge WiFIRE systems to test wireless networks. * WiFi: Support configuring WPA2 on virtual stations in GUI. (Before this, one had to use a custom wpa-config file.) * Support Ethernet Bypass and disconnect on eth0 and eth1 on 6-port Lanner systems (7535 Motherboard). Requires that one bypass port is called eth0, and the other must be eth1. * Layer-3: Support min/max IP Port ranges instead of just a fixed or random port. User can choose to walk this range linearly or randomly. * Layer-3: Support using random or linear IP address ranges if interface is configured with one or more secondary IP addresses. * Layer-3: Support min/max connection duration. On each re-connect a new IP port may be chosen if max port is greater than min port. * Layer-3: Support re-connect logic for UDP. Since UDP is a connectionless protocol, the benefit here is allowing randomized IP ports and/or IP addresses. * Layer-3: Support min/max pause time between reconnect attempts when using connection-duration that is not infinite. * Layer-3 TCP: Support connection-timeout logic in LANforge. If connect attempt is taking too long, it will be restarted an a timeout counter will be incremented. Default is 10 second timeout. * Layer-3 TCP: Support TCP_MAXSEG socket option. This lets one cap the maximum TCP packet size on the wire. Good for effeciently sending lots of small TCP packets. This feature only works on Linux. * LANforge GUI and Server Windows uninstallers now ask for confirmation. Each GUI version now installs in it's own directory by default. Bug Fixes: * WanLinks: Fix crash when using WanPath filters on Windows. * Fix OSPF routing convergence bugs that happened in more complex virtual router scenatios. * Multicast fixes: Fix IPv6 Multicast kernel memory leak. Correctly auto-start LANforge Multicast endpoints. Show Multicast endpoints in Netsmith. Allow IPv6-only multicast virtual-routers to work. Release 5.1.9 (June 29, 2011) New Features & Improvements: * Disable tcp_tw_recycle by default. This is safer, but will decrease maximum connections-per-second to around 2000 per interface. You may run this command to enable tw_recycle: touch LF_USE_TW_RECYCLE in the LANforge install directory, and then restart LANforge. * Support Event Log to help keep track of interesting events. * Layer-3: Allow playing contents of arbitrary files over various Layer-3 protocol types. * File-IO: Allow file-IO to work on 2.6.34.2 (LANforge 5.1.6 release) kernels. * Armageddon: Support setting and checking UDP checksums in Armageddon. * Layer-3: Support proxy IP:port for Layer3 (UDP, TCP) endpoints. * Layer-3/Windows: Support Layer-3 multi-connections on Windows. * WiFi: Support over-riding the reg-domain reported by ath9k (802.11a/b/g/n) NICs. This lets users specify their particular regulatory domain instead of using whatever comes pre-programmed in the NIC. * Update Live-CD to be based on Ubuntu 11.04. Bug Fixes: * Fix crash due to buffer-overrun when playing pcap files in custom-ethernet endpoints. * Fix L3 server-side reporting, had wrong number of columns in .csv. * Fix various subtle and not so subtle bugs relating to multi-connections. * Fix WanLink when used in user-mode, bridging Ethernet ports carrying VLAN traffic, with a VLAN created on one of the Ethernet ports. It is quite unlikely users would have ever hit this particular bug. * Fix kernel-mode WanLink bug that caused packets to be transmitted on the wrong network device sub-queue some of the time. It seems most divers accepted the packets fine, but some versions of the igb 1Gbps driver did not like this at all. * Fix GUI deadlock related to updating GUI widgets on the wrong thread. Reported by THQ. * Fix CIFS deadlock (pushed to upstream kernels as well). * Work around NFS/RPC calldata use-after-free crash bug. This still needs more work, but cannot reproduce it after adding a harmless work-around to clear task memory right before deleting it, so good enough for now. * Add work-around for NFS server crashes due to list element corruption. Not sure if this helps client mode or not, but I suspect it would. Release 5.1.8 (April 26, 2011) New Features & Improvements: * WiFi: Allow Armageddon to work on Wireless Station interfaces. * WiFi: Optimize hostapd and wpa_supplicant (wireless processes.) * WiFi: Optimize wifi logic in the kernel, especially scanning. * Make GUI request detailed probe of wifi results less often. The values are now obtained through dynamic updates and other methods that are much more efficient. * Update kernel to allow user-space WanLinks to bridge 802.1Q VLAN packets. Bug Fixes: * Fix Intel igb Ethernet driver to allow reception of 1500 MTU sized VLAN packets with MTU set to 1500. This allows WanLinks on physical ports to bridge 802.1Q VLANs properly. * Fix TCP receiver so that it will accept any new connection and close the old socket. This helps clean up stale sockets quickly. * Fix sleep-time issue when using connection-duration with TCP endpoints. It could cause the main loop to sleep for longer than desired. Release 5.1.7 (January 18, 2011) New Features & Improvements: * Add checkbox to hide stopped WanLink endpoints in the GUI. * Allow showing WanPaths in WLE table. * Batch-create can now increment Resources. * Support 'bind_mgt' option in lfconfig to make it easier to configure LANforge server processes to listen only on the management device's IP address. This can be used to help secure LANforge. * WanLinks: Max-Lateness, when set to AUTO mode, was based on the 'auto' backlog buffer size. It should instead be based on actual backlog configured and calculated (based on bandwidth + delay). Now, max-lateness in AUTO mode is calculated as maximum time to traverse the emulated link plus the backlog buffer plus 10ms. Users can still set max-lateness to whatever they prefer, and it will take precedence over backlog and serialization-delay induced lateness if configured smaller than those delays. This was a LANforge server issue. * File-IO: Support CIFS on IPv6. Requires Fedora 13 or higher. * File-IO: Support NFSv3 and NFSv4 over IPv6. Tested against OpenSolaris NFS server. * File-IO: Add retry-timer to allow LANforge File-IO endpoints to keep retrying failed IO calls for a period of time before stopping the endpoint. * Display average round-trip latency on L3 CX table and distribution in CSV files (Layer-3 only, currently). * Report distribution for packet-drop amounts, for Thales. * Support up to 511 resources per LANforge manager process. * Kernel is now based on version 2.6.36. * WiFi: Support virtual AP and STAtion interfaces on ath5k (802.11a/b/g) and ath9k (802.11a/b/g/n) in latest 2.6.37+ kernel. * Support thousands of IPv6 addresses and routes (64-bit systems will do better than 32-bit systems). Bug Fixes: * 802.1q VLANs over re-direct (VETH) devices could not handle 1500 byte frames. The problem was that the VETH driver didn't take the extra 4 bytes of the VLAN header into account and thus would just drop any packet that was greater than (MTU - 4) bytes in length. This configuration is often used for 'CT-970' type WAN emulation systems where many 802.1q VLANs are bridged together. A work-around for older kernels is to just set the RDD interface to have larger MTU than the other devices. This bug was introduced in the 2.6.34 kernels shipped with LANforge release 5.1.6. * Lots of IPv6 related fixes and cleanups. * Properly clean-up secondary IPv4 addresses on database load. Release 5.1.6 (August 11, 2010) New Features & Improvements: * Add 2.6.34 kernel support. * Support binding DNS queries to specific network device for Layer-4 endpoints. Also allow manual configuration of the DNS servers to use. * Support using existing/custom Xorp router config files for virtual routers. Router config files are at: ./vr_conf/xorp-vr[vr-rt-num].conf vr-rt-num is virtual router number plus 10,000 * Support IPv6 Multicast routing in Netsmith. * Support creation and management of secondary IP addresses. This allows one to have thousands of IPs on a single interface. Layer-3, Layer-4, and VOIP connections currently support using secondary IPs. * VoIP: Support 32-bit SIP client (gua) on 64-bit OS to allow g.729 codec on 64-bit OS. Bug Fixes: * Fix File-IO read bug that caused LANforge to read 20 more bytes than was requested when endpoint is NOT using CRC. * File-IO: The 2.6.34 kernel fixes some race-condition bugs in CIFS. Release 5.1.5 (May 18, 2010) New Features & Improvements: * Add dynamic-reporting windows to generate real-time graphs for various entities. * Add summary report table to each of the main LANforge-GUI tables. Select rows, right-click -> Calculations * Removed VLC (Streaming Media) support. This was always a bit flakey and maintaining it properly is not worth the effort. Rest in Peace, Henri. * Add VRRP (virtual router redundancy protocol) support in Netsmith. * Layer-4: Remove 'dummy' RX endpoint. It was just wasting resources and doing nothing useful. * Layer-4: Allow some minimal scripting in url-list file: sleep, log, expect, done, system * Layer-4: Support TELNET protocol (must use expect script logic to have it actually do useful things.) * Layer-4: Support SMTP and SMTPS email sending protocols. * Layer-4: Support POP3 email download protocol. * Layer-4: Support IMAP email download protocol. * Scripting: Enable looping WanLink and RFC2544 built-in scripts. * WanPaths: Support clearing counters for a single WanPath. * WanPaths: Support configuring single WanPath without attempting to modify WanLink or other WanPaths. Requested by IP Net Fusion. Bug Fixes: * Fix bug in gnuserver helper process that kept more than 48 FileEndp connections from running. gnuserver had an upper limit of 50 concurrent connections. This bug surfaced because of the re-design to file-io and some other protocols in release 5.1.4. * Fix locking problem with kernel-mode wanlinks: Kernel would sometimes crash when stopping a wanlink that was passing heavy traffic. This bug was introduced in the 5.1.4 release when we made wanlinks multi-threaded. * Fix memory corruption bug caused by buffer-overflow when lots (40+) Wanlinks were configured and some of them were configured on different threads. * Fix busy-spin performance related bug in File-IO endpoints. * Fix problems with File-IO O_DIRECT option: Read and write buffers must be aligned on physical block boundaries. 512b is the alignment for most devices, LANforge uses 4096b alignment to handle newer 4k block devices. * Fix file-descriptor leak in bypass library. Would only be triggered when system contains a bypass NIC. * Fix LANforge password logic: Do not accidentally blank passwords on database startup. * Fix problem where HW-Bypass mode was not properly saved between restarts of LANforge. * Add fix from Intel to fix mac-vlan problem on Intel 10G NICs (ixgbe driver). * Fix radvd on 64-bit systems: Move to version 1.6, and compile it for each target platform. Release 5.1.4 (March 15, 2010) New Features & Improvements: * Optimize memory usage in LANforge-Server. * Allow user to configure multiple TCP connections per LANforge cross-connect. Each endpoint will be a separate process when configured for multiple connections. This allows better use of multi-core systems, and also allows for many more total TCP connections. (30,000+ on high end systems with 12GB RAM). * Add License keys for 10G WanLinks and LANforge-FIRE Cross-Connects. * Support Layer-4 (HTTP, FTP, etc) server-side reporting file creation. * Report first-byte-received and url-completion time distributions for Layer-4 endpoints. * Add 'Display' window for Layer-4 endpoints for live graphs & stats. * Support TFTP protocol on Layer-4 tab: tftp://192.168.100.6/tftpfile * Support rate limitation for L4 protocol tests, not just urls-per-second. * Support multi-threaded kernel-mode WanLinks: Users can now specify on which CPU a particular WanLink will run in order to take better advantage of multi-CPU core architectures. * Support pinning the interrupts for a NIC to a particular set of CPUs. * Warn users if a test is started on an interface without network link detected as active. * Ctrl-C (Copy) on a LANforge-GUI table now stores the table header to the clipboard, and all selected rows. Bug Fixes: * Automatically disable TCP offload and other offload features in NICs when using WanLinks on that interface. This keeps the NICs from automatically combining or splitting packets. * Lots and lots of minor bug fixes, Netsmith cleanups, and small features. * Fix subtle bug that sometimes showed min value of a distribution to be zero when it should have (probably) been larger. * Fix problem that caused 'multi-pkt - 1' drops to be incorrectly counted upon start of Armageddon endpoint when multi-pkt is > 1. * iSCSI: Fix failure to auto-mount iSCSI volume when LUN was not specified. Warn user if iscsiadm tool is not installed. Release 5.1.3.1 (Dec 9, 2009) Bug Fixes * Fix GUI bug that caused decode errors when using WanPaths. * Fix kernel bug when using VLANs and the 'e1000' driver (older Intel 1G pci-x NICs). * Fix problem when lots of VOIP endpoints tried to connect back to the manager at once (ie, when lots were started at once). This was a server-side bug. Release 5.1.3 (November 10, 2009) New Features & Improvements: * Allow 'AUTO' for WanLink lateness configuration. Also re-work the AUTO calculation for backlog buffer so that both are in sync. For slower speeds, a certain number of packets' worth of time and buffers will be used. For speeds of 512 and higher, at least 50 packets will be buffered (to allow a 64k UDP PDU to be buffered, for instance). There will always be at least 10ms of time/buffers available. * Allow WanLink Display widget to show 30 second or 3 second averages. 30-second is much more accurate when over-riding the default wl_probe_timer in lfconfig (for performance reasons when using lots of WanLinks.) * Optimize Xorp to handle 100+ virtual routers much more efficiently by filtering out un-needed route update messages. This is mainly useful to help WISER scale better at higher node counts. Bug Fixes: * Fix Netsmith bug that caused WanLinks to appear to be associated with outside ports instead of the normal 'b' ports. This was a fix in the server component (GUI wasn't actually to blame.) * Fix GUI bugs with Layer-3 endpoint bulk-configuration options. The bug caused custom payload endpoints to loose their payload config among other intersting things. * Fix 5.1.2 regression bug that caused Armageddon to be able to send a 62-byte packet at minimum. Now it can send a 60 byte packet, not counting 4-byte CRC. * Fix tx-byte-accounting bug in Armageddon when scripting. Make changes in pkt size take affect immediately, even when multi-pkt is larger than 1. Release 5.1.2 (October 30, 2009) New Features & Improvements: * Upgrade to 2.6.31 kernel. Start using 'veth' instead of 'redirdev' for virtual Ethernet interface pairs. * Stabilize ath5k WiFi virtual interface drivers. * Support easy automated testing with built-in scripting in the GUI. Current support includes a subset of RFC-2544 testing and automated iteration through WanLink configuration values. * Support ToS settings for Armageddon endpoints. * Support setting/reading TSO and LRO values (tcp offload) for NICs that support these features. LRO is usually disabled by default on LANforge, so re-enabling this adds significant performance improvements on high-speed TCP connections. * File-IO iSCSI endpoints now handle multiple LUNs on a single target. * Add feature to WanLinks to allow user to specify maximum allowed lateness for packets. If the system is overloaded and cannot send the packets before this lateness timer, the packet will be discarded. This helps prevent run-away latencies and memory usage in overload scenarios. Bug Fixes * Fix VOIP registration race. * Fix netlink socket buffer-too-full error when restarting slow-ish systems with lots of virtual interfaces. Release 5.1.1 (July 14, 2009) New Features & Improvements: * Support RIP virtual routers in Netsmith. * Support changing MAC on MACVLANs and WiFi virtual interfaces. * Support replaying packets on single port, with B endpoint un-managed. * Support over-writing the destination MAC when replaying capture files. * Support automated discovery of router's MAC address when using Armageddon to test a routed network. * Improve kernel-mode WanLink performance by 50% or better for 10G Ethernet connections. * Add Batch-Modify feature for Ports: Allow setting MTU and other settings on multiple ports with a single action. * Allow auto-mount for multiple different local mount points on the same server on the same Port. * Support O_LARGEFILE for file-IO files greater than 4GB in size on 32-bit systems. * Support read/write sizes of up to 2000000 bytes for File-IO. Should give better performance at very high speeds. * Allow user to configure file-io to unlink file before attempting to open it for writing. Works around IO error when using O_TRUNC | O_WRONLY | O_CREAT flags to open an existing file for some (broken?) CIFS servers. * Update LANforge-GUI real-time graphs for many widgets to be more precise and flexible in duration time shown. * Allow remote resource to log into a manager. This should help mobile resources and perhaps give some better ability to work though firewalls and NAT. Requested by Men@Net. * Enable server-side report file (CSV) generation for Layer-3, VOIP, and Armageddon endpoints, as well as Ports and Resources. Other endpoint types will be supported if customers request them. Requested by Men@Net. * Disable NAT conversion of the SDP payload for SIP calls by default. Allow user to enable it if desired. * Support OLSR routing protocol in Netsmith via integrated Xorp router daemon. * Default to 2 WanPath licenses instead of 10. Existing customers using the 10 free WanPaths should contact support@candelatech.com for a new license key. * Update LAnforge-GUI to latest Java 1.6.0_14 release. Bug Fixes * Improve ath5k virtual WiFi stability and functionality. * Fix problem with stats initially taking a while to update upon start of File-IO endp. * Fixed crash (SEGV) when doing 'show_cxe' for a CX type that has no rx-endpoint (like File-IO). * Fix GUI sorting issue (caused multiple duplicate rows in the GUI). * Fix SIP attribute list parsing when quoted token contained the delimiter. Specifically, this was failing: qop="auth,auth-init" when trying to authenticate. * Fix problem with PIM (multicast routing) when used with dynamic network applications such as WISER. Release 5.1.0 (April 15, 2009) New Features & Improvements: * Support auto-mounting NFS, NFSv4 and CIFS file systems when using properly configured File-IO endpoints. Added verification of any existing mounts as well. Requires kernel 2.6.29 or greater. * Support iSCSI File-IO, including auto-mount, check-mount, and auto-unmount. LANforge can mount multiple iSCSI volumes concurrently. Requires iscsi-initiator-utils and scsi-target-utils packages on Fedora, similar packages on other distributions. * Support 2.6.29 kernel for increased driver support & all the latest kernel features. Improves performance significantly on some lower-end platforms. * Support batch-creation of Layer-3, Layer-4, VOIP, and File-Endpoints in the LANforge-GUI. Should make firewall testing a lot easier without using scripts. * Support relative time-stamps in the Armageddon traffic generator. Improves performance on some platforms. * Use new ath5k (slightly modified) for virtual wireless Station interfaces. Allows setting MAC address and should yield greater stability going forward. * Support virtual router console (xorpsh) from Netsmith. Requires Xwindows support (Standard on Linux & Solaris, or Windows running cygwin-x.) * Support O_DIRECT flag for File-IO (on Linux). This disables caching and is useful primarily for read testing on network file systems. Bug Fixes * Fix netlink socket buffer overflow that caused LANforge to not detect some IP addresses when creating 1000 virtual interfaces very quickly. * Fix a few GUI usability issues with updating table rows. Known Issues * New WiFi driver & supporting code in 5.1.0. Some instability remains and needs more testing with various APs. Suggest 5.0.9 for virtual WiFi testing at this time. Release 5.0.9 (January 30, 2009) New Features & Improvements: * Support arbitrary packet matching using libpcap filters for WanPaths. Filter syntax is same as that of 'tcpdump'. * LANforge support for Solaris x86: Ethernet, IPv4, IPv6, UDP, TCP, HTTP, FTP, Multicast, LANforge-ICE works. Virtual routers, send-to-self, VOIP, Audio/Visual does not currently work. * Add protocol builders to LANforge-GUI: Supports Ethernet, 802.1Q VLANs, MPLS labels, LLC/SNAP, IPX, IP, TCP, ARP, IP-IP. * Add IPv6 (UDP, TCP) for LANforge on Windows. * Support LANforge-Ethernet and Custom Ethernet for Windows and Solaris. * Add ability to configure the maximum number of packets to be sent before a test is automatically stopped. (For Layer-3 connection types.) * Add support for BGP routers to the Virtual Router logic. * Add zooming and other usability features to the Netsmith tool. * Support GZIP and DEFLATE compression for HTTP connections. * Optimize kernel ARP handling to deal with lots of mac-vlans talking to lots of other mac-vlans. * Add TCP-Retransmit and bit-error graphs to the LANforge-GUI reports. * Improve LANforge-GUI performance: Don't update tables when they are not visible, delay resorting for up to 0.5 seconds so we don't resort too often. * Enable multi-threading support for Armageddon (Linux only). This enables the system to make better use of multiple CPUs. Bug-Fixes * Fix kernel-mode packet logging for WanLinks: It would fail to flush the last buffer of packets in many cases. Use pcap (tcpdump) packet capture format instead of proprietary format. * Upgrade to 2.6.25.20 kernel: Fixes some crashes in IPv6 among other things. * Fix bug that kept mac-vlans from working in OSPF virtual routers. * Fix several issues with sorting and selecting rows in the LANforge-GUI. * Removed 'Brief Snapshot' reporting option: It never worked well and changes in this release broke it entirely. Will try for something new and better in the next release. Release 5.0.8 (August 22, 2008) New Features & Improvements: * Support TCPv6 and UDPv6 traffic generation in LANforge-FIRE. * Support UDPv6 multicast traffic generation in LANforge-FIRE. * Support IPv6 in virtual routers, including OSPFv3. * Support RADVd in IPv6 virtual routers, and AUTO global-scope addresses (configured via radvd) on non-router interfaces. AUTO is also the preferred method for configuring link-local addresses. * Support reporting packet retransmit counter for TCPv6 and TCPv4. This is a good indication of packet loss for TCP connections. * Support hardware bypass NICs for 'fail open' WAN emulation. A watchdog can be set so that if LANforge is unable to function correctly, the pair of adapters will automatically go into bypass mode. The user can also manually enable bypass mode. Requires special NIC hardware. * Support hardware disconnect NICs. This allows the user to use LANforge to cause the NIC to physically disconnect the cable using relays on the NIC. Good for testing link failure scenarios. Requires special NIC hardware. * Support virtual IPv4 multicast routers in Netsmith. * Report management traffic stats for Resources. This helps users who are running traffic over the management interface and want to have a more detailed view of total bandwidth usage. * Support inverse-match for WanPaths (match all _but_ this IP, for instance). * Support PRBS (Pseudo Random Bit Stream) patterns for Layer-3 and File-IO payloads. This is implemented with a linear feedback shift register and is commonly used to test bit error rates (BER) for radio networks. * Support Bit Error counters. This only works for Layer-3 LANforge traffic. To enable BER counters, enable CRC for the endpoints and choose one of these patterns: Increasing, Decreasing, Zeros, Ones, or any of the PRBS patterns. * Support virtual 'loopback' adapter for management interface on Windows. This allows one to not consume a physical interface for management when running LANforge in mode 'both' on a single machine. * If management port does not exist, the loopback adapter will be used as the management device. This makes it harder to mis-configure LANforge so bad it cannot even run. * Deal with no IP on management port when running on Windows: Fake it to 127.0.0.1 for at least minimal functionality. * Add 'show_wanpath' CLI command for better WanPath management and reporting using scripts. * Enable LANforge to open more than 10,000 sockets (provided you have several GB of RAM and a powerful machine.) Bug-Fixes * Upgrade to WIN Pcap OEM 4.0.5. This fixes a problem with restarting LANforge on Windows after it has crashed. * Fix problem where not all ports were properly deleted when loading a new database. * Fix bug saving mac-vlan config information when the LANforge Manager is running on Windows (and managing a Linux system with mac-vlans.) * Fix crash when LANforge opened more than 10,000 sockets. Release 5.0.7 (May 14, 2008) New Features & Improvements: * Trim GUI installer images, removing un-needed web page graphics, libraries, old documentation, etc. * Change from polling to event driven model for determining network device (interface) state. This allows more scalability for virtual interfaces in Linux and less CPU usage even in smaller configurations. * Update to latest winpcap library for improved LANforge-Server compatibility with Windows Vista. * Support parsing percentages for most fields in the GUI (drop-percent for LANforge-ICE WanLinks, for example.) * Support new LANforge-LIVE CD based off of Ubuntu. This provides a modern Live CD with full GUI and install-to-disk (and usb-flash storage devices) options. * Optimize LANforge-ICE kernel-mode emulation to support 2.4Gbps WAN emulations when using appropriate hardware. * Add ability to change the OSPF port cost dynamically via the CLI. Example command: add_vrcx 1 1 Router-1 rddVR5 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 4 NA Requested by Telcordia for the WISER project. Bug-Fixes * Fix performance related bug with replaying files on custom endpoints. As part of this fix, LANforge now reads raw packets and accounts for them. * Fix problem where management IP information became 'FIXED' instead of DHCP. This is most easily caused by loading DBs. * GUI usability fixes and small bug fixes. * Apply dynamic OSPF and other virtual router updates on the resource process instead of the manager process. This would have been a serious bug if doing dynamic VR changes in a clustered environment (but most users would never do this.) * Fix off-by-one bug that affected Layer-3 connections with the minimum packet size (28 bytes). In the old code, the last packet received would be ignored (until an other packet was received). Release 5.0.6 (April 14, 2008) * Add Queue-Disciplines to WanLink emulation to support QoS. Currently supports: FIFO and Weighted Round Robin (WRR). * Enabled 'Simple' LANforge-ICE mode. * Allow parsing of numbers with units (for instance: 2Mbps == 2,000,000) * Let user configure licenses through the GUI and/or CLI. No more editing text files by hand with vi! * Let management port be configured through GUI, including DHCP and fixed IP addressing, Linux only. * Allow Custom LANforge Ethernet endpoints to replay standard PCAP files. * Fixed bug that caused VOIP endpoints to loose their ToS configuration on LANforge restart. * Fix GUI row selection bug that caused mouse drag-select to not work right in some cases. * Fixed long-standing Linux kernel bug that caused dup-ACK storm for certain high-speed TCP connections when sending to/from the same machine. * Fixed off-by-one bug in Armageddon dropped-packet accounting, also pause at start of Armageddon to allow the peer endpoint to start it's receive logic so that a few initial packets are not lost. Release 5.0.5 (January 3, 2008) * Start using Java 1.6.0_3 instead of older 1.5.0_7 for LANforge-GUI. Add 'sed' hack to make Java work on Fedora 8: sed -i 's/XINERAMA/FAKEEXTN/g' jre1.6.0_03/lib/i386/xawt/libmawt.so * Fix bug with GUI detection of kernel-mode WanLink Support. * Fix bug that did not allow a Port's gateway to be modified without also modifying the IP or MASK. * Fix bug that caused cx-drops to not be reported for VOIP/RTP endpoints. * Small optimization to creating large numbers of virtual interfaces. * Other less critical bug fixes. Release 5.0.4 (November 11, 2007) * Support Collision Domains (CDs). CDs are groups of WanLinks that are contending for bandwidth on the same network. This can be used to better emulate wireless networks and other shared-medium networks. Support for military radio emulation (HNW, NCW, terrain emulation, and mobility scenarios are coming soon! Contact your sales representative if you have interest in these features). * Support up to 127 virtual WiFi stations. * Support WPA (wpa_supplicant) for WiFi. * Fix WiFi ath0 lockup due to getting into 'carrier off' state. Thanks to Aplicaziones for helping find this and other wifi & reporting bugs. * Work-around WiFi hang with single slower-speed UDP connection by forcing tx-buffer size to always be large enough to fill the 199 buffers in the wifi driver. * Add Port speed and WiFi status to Port-Mgr table for easier viewing of WiFi state. * Support spanning-tree protocol for bridge devices. * Support OSPF routing protocol using the Xorp router program. To enable, modify the VirtualRouters in Netsmith and select the 'Use-OSPF' checkbox. You should be running the version of Xorp from the Candela downloads page, but the latest Xorp code from their CVS site may also work. * Work on reporting & Rate control: * The old code was off by around 2% for it's rate calculations for some speeds & packet sizes, causing LANforge to generate slightly less than requested. The same general mistake could cause a bit of bursty sends as well. Both problems have been fixed, generally giving accuracy of around 0.1% when the network and hardware can keep up. * Time-stamp report .CSV files with remote LANforge machine's timestamp instead of the GUI machine's timestamp. This increases accuracy of the reports and fixes a few spikes in the generated graphs. * Remove some bogus smoothing logic from the LANforge GUI when generating reports. The new logic is more efficient and does not have the small rounding errors found in the old code. * The server now keeps 3-second running averages for most protocols, and the GUI will graph them for the tx-bits-per-second and rx-bits-per-second graphs. * Add global statistics (packets/bytes read/written, calls in progress, etc. * Fix several problems with VOIP SIP message retransmission. SIP calls should now run much better over poor networks. * Use absolute jitter (instead of allowing negative jitter). Change reporting resulution to 1ms logarithmic scale from 5ms. * There is a bug that affects certain high, but not too high speed, UDP connections on Virtual STA (WiFi) interfaces. Automated workaround added: If the user does not specify a tx-queue size, then it will default to 1,000,000 for UDP connections on STA interfaces. * Added scroll-pane to GUI ReportMgr screen to fix problem where a long file name made buttons inaccessible. Release 5.0.3 (July 28, 2007) * Add licensing restriction so that a LANforge release that was built after the customer's support license has expired will no longer run any tests. Older builds will continue to work even if the support has expired as long as the license keys themselves have not expired. * Fix problem with running Armageddon endpoints on remote machines. * Fix Generic refresh problem seen in the LANforge-GUI (this was actually a server-related bug.) * Support creating/destroying many connections per second with Layer-3 traffic types (TCP, UDP). Part of this feature also involves allowing the user to specify the source IP port as 0 (zero) which means let-the-OS-choose-any-port. * Support NAT (IP Masquerading) in Netsmith (Linux only.) * Support DHCP client and DHCP server (Linux only.) * Support Virtual Wifi Access Points (Linux only.) * Fix TCP kernel bug that caused issues when making lots of rapid connections to the same machine. * Add CLI command to delete wanpaths: rm_wanpath Fix issues with several other wanpath related CLI commands. * Fix un-initialized memory issue that can cause LANforge to hang when first started. The fix for this in 5.0.1 was not quite right. * Fix some reporting bugs, including fairly bad rounding errors under certain conditions and some .csv file format issues (extra , in endpoint reports). Release 5.0.2 (April 12, 2007) * Support Passwords for controlling LANforge: * Default is no passwords..open access. * Passwords, if set, are stored in DB/passwd in plain text. * To clear all passwords, you can stop LANforge, remove this file, and restart LANforge. * Passwords can be set through the GUI's Control->Log-In-As window. * Support Administrator account. * The Administrator user will be created, and may have a password set if desired. * The LANforge-GUI will attempt to log in as the Admin user and will pop up a window requesting login information if the Admin user is configured to use a password. * Certain options, such as saving and loading databases, deleting test managers, and assigning cross-connects to TestManagers is restricted to Administrator users. * Any account can be flagged as having Administrator privileges through the Control->Log-In-As window. * Fix some GUI related bugs in the Netsmith layout window. * On at few newer machines, it appears some NICs/Drivers occasionally send a packet with a corrupted timestamp up the stack. This could effectively hang one side of a kernel-mode WanLink. Added logic to the kernel wanlink driver to work around this problem. * Enable WanPaths to work on Redirect devices in user-space mode (this former lack of support was an over-sight when Redirect devices were first added.) * Fix rare issue triggered by having multiple WanPaths of greater speed than the WanLink, and overdriving all of them at once. This was a kernel-mode only WanPath bug. Release 5.0.1 (March 20, 2007) * Add Virtual-Router technology for LANforge-ICE on Linux. This allows one LANforge system to emulate a network of routers, with unique bandwidth constraints and latency between each router. Subnet routing is currently supported: Multipath and advanced routing protocols may be supported in future releases as customer demand dictates. * Support Linux Bridge devices in LANforge (create, modify, delete, etc.) * Optimize GUI and server to handle at least 2000 virtual interfaces and LANforge connections on high-end machines. * Fix bug that caused 128 WanPaths on a WanLink to fail to report to the GUI or manager process correctly. * Fix rounding error in the serialization delay calculation for WanLinks at lower speeds. This caused too much delay to be added in some cases. * Fix several driver locking issues for WiFIRE (wireless). * Properly support modifying and reporting the country-code for WiFIRE. * Add notification framework for keeping track of support (ASA) expiration so that users are easily aware of their status. * Fix LANforge-server hang due to un-initialized timeout value. * Fix rare linux kernel crash related to UDP multicast packets. * Add ability to print the tables in the LANforge-GUI. * Re-work LANforge-FIRE rate-control logic. This fixes the 'catch-up burst' caused by temporary network outtages. LANforge will now burst for no more than 1 second during catch-up. * Fix Armageddon UDP traffic generator to support NICs that do fragmented buffer receives (some new Intel pro/1000 NICs do this.) * Fix rare divide-by-zero bug in Port logic in LANforge server. * Appliance Image: * Replace Ethereal with Wireshark * Add brctl package. * Don't start sensors package. Release 4.4.12 (December 1, 2006) * Add support for SIP Re-INVITE messages, used by SIP gateways to re-direct RTP streams to flow directly between phones, primarily. * Fix bug in VOIP registration logic that caused LANforge to wait 1000 times longer than correct to re-register. * Add ability to modify the registration timer through the LANforge-GUI. * Add getInRxBps CLI method to get the bits-per-second received over the last 3 seconds. * Fix rare kernel crash related to wanlink locking. The fix also improves performance up to 990Mbps throughput on high end machines. * Support Quiesce logic: Stops transmitter at a good point and gives reader time to read all out-standing packets. For VOIP, a call will be completed if possible, for Layer-4 the current request will be completed, and for File-IO, the next file will be completed. * Allow HTTP endpoints to use cached content from servers such as squid. Default behaviour is still to add the Pragma: no-cache option to the HTTP header. * Fix SIP jitter buffer bugs with reordered packets. Make jitter buffer size configurable. Add more VOIP call, rtp, and jitter buffer stats to the LANforge GUI's display. * Re-work SIP state-machine to better deal with un-expected SIP messages. * Move to linux kernel 2.6.18. Includes a re-merge of the LANforge-Armageddon driver with the kernel's more simplified pktgen module. * Support dropping clusters of packets in LANforge-ICE when the 'drop Xth' periodic drop rate is configured. * Increase user-agent string for Layer-4 connections to a max of 512 bytes. * Remove special handling for ';' characters in the CLI parsing. The old behaviour was to treat them like newlines, but that made it difficult to create valid arguments containing semi-colons. Now, semi-colons are treated as regular characters. Release 4.4.11 (October 18, 2006) * Fix several race conditions in the wanlink kernel module. These bugs could cause fatal kernel crashes. * Fix kernel deadlock when removing a redirect device that was never configured UP. * Fix kernel-mode WanLink deletion logic in LANforge processes. * Allow use of only a single selected codec for SIP VOIP calls. * Allow SIP to Register with a domain (1234@domain.com). Default behaviour is still to register at a particular IP: 1234@192.168.1.5:5060 Release 4.4.10 (October 06, 2006) * Support more than 250 virtual interfaces (there is no hard upper limit now, tested up to 1000 interfaces on a single machine.) * Add reporting feature to LANforge-GUI: Generates graphs of selected Endpoints, Interfaces and Resources. * Fix bug in Layer-4 endpoints that caused them to never make more than one request per second. Can easily get 500 requests per second now. * Fix lots of small bugs and add some enhancements to the GUI. * Fix rare crash bug in LANforge server iohandler code. * Allow stacking MAC-VLANs and 802.1Q VLANs on Redirect devices. Allow stacking 802.1Q VLANs on Virtual STAtion interfaces. * Fix rare crash in WanLink code when removing the interface associated with a kernel-mode WanLink while the WanLink was running. * Allow WanLinks to drop, duplicate, and reorder every Xth packet. The defalt configuration is still to drop, duplicate, and reorder packets in a random distribution. * Add patch to the samba tool to allow binding to local interfaces. This allows LANforge to support multiple unique client connections to SMB (CIFS) file servers. See the FAQ for instructions on how to enable this feature. * Support up to 127 Resources (machines) per virtual shelf. Should allow easier configuration of large clusters of LANforge machines. * HTTP Updates: Support setting 'user-agent' for HTTP connections. Support specifying HTTP and HTTP-Proxy authentication methods. Support multiple HTTP requests per connection. * Add snapshot reporting feature to easily save information from various LANforge-GUI tabs to pdf, html, and other report formats. * Support SIP passwords of up to 31 characters in length. Release 4.4.9 (July 11, 2006) * Fix bug parsing numbers like '08'. This caused actions such as clearing the counters on port 8 and 9 to fail. * Fix kernel crash in pktgen module due to race condition. * Don't attempt to remove WanLinks and WanPaths from the kernel module when they are already (being) deleted. This may fix a hard-to-reproduce kernel crash in the wanlink module. * Fix critical bug in kernel wanlink module, most easily reproduced by changing the port associated with a wanlink endpoint while the wanlink was running. This bug was introduced in 4.4.8. Release 4.4.8 (June 07, 2006) * Support SIP gateway authentication. * Support calling to a specific SIP phone number, instead of automatically using the Peer's number. * Support injection of bit-errors in LANforge-ICE. Up to six errors may be specified. Each error has a min/max offset into the packet. The behaviour can be: byte-overwrite, random-byte-scribble, bit-flip, and bit-transpose. If the packet is UDP or TCP and spans only a single ethernet frame, the IP and TCP or UDP checksums may be re-calculated to make the corruption look authentic to the TCP/IP and UDP/IP stacks. * Support LANforge-WiFire wireless station emulator. Requires Atheros 802.11a/b/g NIC and custom driver from Candela. Supports emulation of up to 31 Virtual Stations (vSTA). 128 bit WEP supported, and all normal LANforge-FIRE protocols supported for each vSTA, including VOIP, UDP, TCP, HTTP, etc. * Fix license related problem with 'switch' for WanLinks. * Enable license keys that are valid forever. * Upgrade to latest PESQ library, should make some PESQ results improve a small bit. * Fix regression bug that caused port aliases to not be displayed correctly. Release 4.4.7 (April 10, 2006) * Add support SIP VOIP on Windows, with the exception of the Speex codec. * Add support for PESQ analysis of H.323 and SIP calls on Windows platform. * Support E1 interfaces for WAN emulation and PPP over E1. * Auto-create a default test-manager to make initial configuration of LANforge simpler. * Fix bug with layer-4 connections on Fedora Core 4 systems. * Package SIP binaries with regular server install, no need for separate builds for different Linux versions now. Release 4.4.6 (March 17, 2006) * Take serialization delay into account when using LANforge-ICE WAN emulator. For instance, on a T1 link, it takes about 8ms to transmit a 1500 byte packet. LANforge-ICE will now add that 8ms to the latency. * Fix small bug in SIP VOIP that caused the received PCM to always be written to disk. Was a drag on performance. * Optimize SIP VOIP to cache RTP encodings to improve performance, especially when using codecs such as g729 which use significant CPU to encode/decode. * Use 64-bit bits-per-second counters and configuration to support 10Gbps ethernet adapters. * Support NFS over virtual interfaces (Linux only). * Improve spread-sheet file generation in the LANforge-GUI. Files use commas instead of tabs to separate the columns now. * Support data-generating interfaces using the same subnet as the management interface. This allows one to use MAC-VLANs to create VOIP calls using in-band management, for instance. * Beta support for LANforge on 64-bit Intel and AMD systems (linux only). Release 4.4.5 (January 24, 2006) * Fix bug that caused duplicate phantom interfaces when creating 802.1Q VLANs. Release 4.4.4 (January 19, 2006) * Add support for T1 (Serial) impairment generator. Currently supports adding latency, bit-flip and bit-transpose errors. * Improve PPP over T1 logic and GUI interface. * Fix divide-by-zero problem in kernel-mode LANforge-ICE. This problem was triggered only with min and max reorder amount were the same, and reordering was enabled. * Fix multicast endpoints so that they correctly show latency statistics. * Fix port-selection widget in the Armageddon creation panel. * Fix test-mgr problem in FileEndp configuration screen. * Fix problem with modifying report timers with the pull-down short-cut on several GUI tabs. * Fix problem with file reads when using File-IO endpoints on Microsoft Windows platforms. * Upgrade to more recent OEM-WinPcap version. Release 4.4.3: * Migrate to OEM WinPcap version: No more external WinPcap dependencies or install needed. * Decrease some verbose logging that hurt performance. * Fix ethernet Link detection on Windows. * Automatically restart LANforge tests that were running upon shutdown when we reboot. Also restart if the network interface goes away and comes back. * LANforge-ICE on Windows now supports replaying ICECap probe files. Release 4.4.2: * Fix regression bug that caused Cross-Connects to stop if modified while running. Release 4.4.1: * WARNING: This release cannot correctly restore settings for ethernet interfaces read from older configuration databases. If re-entering the config information for the interfaces is problematic, please contact support@candelatech.com and we can help automate the procedure. Please make a backup of at least the DB directory before upgrading. * Add support for PPPoE interfaces. * Add initial support for H323 VOIP call generation. * Remove 'last-client' config option. It was never too useful, and was making it difficult to fix bugs with 'dev-ignore'. If you are upgrading, you MUST run the lfconfig tool again to create the correct start scripts. * Re-work Interface configuration and reporting logic to be more robust and stop occasionally loosing the IP config information. * Fix linux kernel bug that caused vlan removal to fail sometimes due to leaked reference count. * Fix LANforge manager crash when more than 65534 cross-connects were created and destroyed. * Fix GUI to behave nicely when more than 32767 endpoints were created and destroyed. * Fix crash in LANforge manager signal handling code. Caused random crashes when a signal arrived at the exact time we are rotating the log file. (Very rare bug.) * Fix crash due to memory corruption in Layer-4 endpoints. Error only showed itself on Fedora Core 4 systems. * Allow WanLinks to be configured to ensure a packet gap between every packet in order to better emulate slower speed networks. Option is in 'Advanced' tab in the WanLink config. Release 4.3.6: * Fix memory corruption bug in Layer-4 endpoints. * Support VAD (Silence Suppression) in LANforge-FIRE VOIP call generator. * Support File-IO endpoints on Windows systems, including local and SMB network file systems. * Add discovery mechanism so that the LANforge-GUI can discover LANforge managers on the local subnets. * Do not allow LANforge to reset PPP links. It can't do it properly anyway. * Add protective code to make it harder to mis-configure PPP connections and Serial Spans (T1s) in LANforge. * Add warning message if ip_tables modules are detected. (ip_tables often interferes with LANforge) Release 4.3.5 * NOTE: This release will not work properly with Candela Linux kernels from earlier releases. Be sure to upgrade kernel, GUI, and server processes to the same release. * Fix problem where a dead LANforge-server data generator process caused the manager process to exit with error when running on Windows. * Allow setting of min and max reorder range for LANforge-ICE connections. * Fix performance related regression bug especially visible with LANforge-ICE in user-space mode. Bug was introduced in 4.3.3. * Allow LANforge-ICE to run at speeds of greater than 1Gbps. Not actually tested on 10GigE networks yet. Release 4.3.4 * Add PESQ voice quality testing to LANforge VOIP/RTP protocol. (Requires purchase of additional PESQ license.) * Modify LANforge clustering logic: If the realm is set to 255 then the system will never cluster with another. This is useful for stand-alone configurations. * Fix problem with starting more than one VOIP connection on the same interface when auto-negotiating the SIP and/or RTP ports. * Support ICE-Cap tool on Windows. Release 4.3.3 * Optimize wanlink kernel module for network adapters with a very few number of TX descriptors (like RealTek 8139 chipset). * Fix kernel-mode wanlink problem when using 802.1Q VLANs on non-accelerated ethernet adapters (such as RealTek 8139). * Set the wanlink kernel module thread to real-time priority: Increases performance on some systems by 10%, increases accuracy as well. * Optimize btserver process to use less CPU. * Remove the MessageBundle*.properties files from the lfgui.jar file. They will be packaged in the LANforge-GUI directory now for easier editing. Release 4.3.2 * Fix crash when set_endp_details is called with a non-existent endpoint name. * Protect against NULL de-reference in wanlink kernel module. * Fix up e100 driver in 2.6 kernel to handle RX-ALL (and RX-CRC) correctly. * Add ability to change the extension of the spread-sheet files created by the LANforge-GUI: Edit the SS_OUTPUT_EXTENSION option in the MessageBundles_en_US.properties file. Default is now .csv * Fix GUI bug that prohibited resetting a port from the port-mgr tab in certain cases. * Fix active-port license key problem that could cause user to be denied the ability to start tests in some cases, and to be able to start too many tests in other cases. Release 4.3.1 * Add initial support for LANforge-ICE on Windows (XP & 2000). * Re-work Windows device naming scheme. This will probably break any existing LANforge configuration databases created on Windows machines. You will have to delete your existing connections and create new ones. * Integrate winpcap library into LANforge. This allows LANforge-ICE to work, but it requires that one install winpcap before using LANforge on Windows. * Add support for HTTP proxy authentication to layer-4 connection type. * Add support for SSL (https://) URLs to layer-4 connection type. * Fix /proc system overflow when more than 23 kernel-mode wanlinks were started on a single machine. This caused kernel memory corruption. * Add tx and rx rate counters to the layer-4 connection display in the LANforge-GUI. Release 4.2.10 * Fix locking problem in WanLink kernel module (don't transmit with IRQs disabled, and be sure to disable/enable BH locks.) * Support LANforge manager mode on Windows. * Add Windows installer for the LANforge servers. * Fix GUI crash related to creating/deleting cross-connects through the CLI. * Fix GUI problems with deleting layer-4 connections and orphan WanLink endpoints. Release 4.2.9 * Add Redirect-Device module. Allows for virtual network setup on a single machine, and more importantly: It will allow LANforge-ICE to effectively add delay to a single physical network interface. This in turn will allow the LANforge-ICE feature to act as a router. * Fix GUI bug with filtering VOIP cross-connects based on the selected test manager. Release 4.2.8 * Fix potential kernel deadlock in kernel WanLink feature. * Add support for IP ToS and packet Priority for Layer-3 and VOIP traffic types. * Re-license the LANforge-GUI under the GNU Public License (GPL). * Fix setting of report-timer (and test manager) for the layer-4 endpoints (GUI bug). * Allow SerialSpans & related objects to be queried even if the machine they are associated with is not running. * Pay attention to link-state flags: Don't set link state on 802.1Q and other virtual interfaces. * Increase internal buffers and optimize some logic to make running many connections (3000+) viable, at least on powerful machines! Release 4.2.7 * Add support for PPP and Multi-Link PPP over T1 interfaces. * Optimize HTTP & FTP traffic generation tool so that it will not busy-spin in certain cases. * Force JVM garbage collector to run more often in the java GUI to keep the amount of cached RAM lower. * Implement right-click and double-click accelerators in the Java GUI. * Fix small memory leak in the btserver process. * Fix ethernet link detection for certain brands of NICs. * Update Java to JVM 1.5 (Java 5) from Sun Microsystems. Release 4.2.6 * Report Tx and Rx rates in the GUI with better precision by using a millisecond timer to calculate how long the test has been running. The old code used a second counter which introduced rounding errors. * Fix accounting bug in LANforge-Ethernet protocol connections that caused the packets dropped due to sequence number to be mis-counted, especially when running over a network that has any significant latency. * Fix bug in GUI's spread-sheet export logic that caused corrupted output files for the Armageddon endpoints. * Show CX-Detected-Dropped counter for Armageddon endpoints in the GUI, CLI, and spread-sheet output. Release 4.2.5 * Fix all known crash bugs in the VOIP code. * Fix audio-playback in VOIP. * Compile VOIP for RedHat 9 to fix library dependency problem for this platform. For Fedora Core 2 and similar distributions, you should use the voip2_FC2.tar.bz2, but for older RedHat 9 and similar distributions, use voip2.tar.bz2 * Add 'leds' to the status panel to show the negotiated link speed and duplexity. Release 4.2.4 * Add ability to make SIP (VOIP) calls without generating RTP traffic. * The VOIP soft-phone code has been re-written to be single threaded. This should enable much greater stability than the old code, and will decrease the memory usage. * Optimize GUI to not request updates for non-running endpoints as often. * Add GUI button to immediately flush spread-sheet reports to the file system. * Add command-line interface to the GUI so that scripts can more easily interact with the GUI. Supported commands are 'help', 'flush_ss', and 'exit' currently. To enable, start the GUI with a command line argument like: lfclient.bash -cli-socket 7777 * Update LANforge-LIVE bootable CDROM to support VOIP and the new 2.6.9 Linux kernel. # Known bugs: VOIP tests may stop if the network-under-test fails while the VOIP call is in progress. Work-around is to just restart the tests. A proper fix will be implemented soon. Release 4.2.3 * Change Armageddon feature to NOT use real-time scheduling by default. RT scheduling can be turned on by creating an empty file called: DOPKTGEN_RT * Fix crash in the packet replay feature. * Update 2.6 kernel to 2.6.9. * Fix bug in Endpoint code that displayed the tx-rate incorrectly when the connection was stopped. Added rx-rate and drop-percentage counters to the CLI's show_endp output. Release 4.2.2.a * GUI only update, will be compatible with the 4.2.2 server release. * Fix drop-% calculation (old code was incorrect for non-symmetric setups). * Add Rx-Rate and Rx-Rate(5) to the Layer-3 Endpoints screen and SpreadSheet output. Release 4.2.2 NOTE: The Armageddon rework included making the kernel thread use real-time scheduling. It may be possible for this to cause a live-lockup due to user-space process starvation. You can disable the real-time scheduling by creating an empty file called "NOPKTGEN_RT" in the /home/lanforge directory. Please report any related issues to support@candelatech.com. * Fix problem with 'Switch' for WanLinks which caused problems when only one WanLink license was available. * Make Armageddon UDP packet generator more efficient, especially at slower speeds. * Allow Armageddon to work properly on MAC-VLAN and 802.1Q VLAN interfaces (kernel and user-space modifications). * Fix problem that caused multiple multicast receivers on the same machine to fail to bind properly. * Update GUI to dump deltas as well as absolute counters when generating Spread-Sheet files for WanLinks. Release 4.2.1 (October, 2004) * Upgraded Linux kernel to 2.4.27 * Beta support for Fedora Core-2, Linux kernel 2.6.7 * Beta support for limited LANforge-FIRE support on Microsoft Windows(tm) operating systems. * Fixed bug that dis-allowed setting Port aliases to strings starting with numbers. * Fix install script to work better with Suse 9.1 * Fix regression bug in the GUI that broke VOIP support for calling 3rd-party phones. * Provide useful error message instead of just asserting when license keys are not correct. * Allow dropping random bursts of packets in LANforge-ICE, instead of just dropping single packets. Release 4.1.12 * Fix bug that allowed the gen_cfg.pl script to modify interfaces that have been configured to be ignored. * Allow display of most numbers with groupings, ie 1,000,000. Can be disabled with -nocomma command-line argument, or by toggling the behaviour in the 'Control' drop-down menu. * Fix bug with VOIP running on machines without a functioning DNS server/setup. * Fix bug with WanLink licenses that made it impossible to change a running WanLink from certain lower speeds to higher speeds while the WanLink was running. * Ensure that the GUI always displays the state of the Originating VOIP endpoint in the Voip/RTP screen. Release 4.1.11 * Many relatively minor fixes to the LANforge-GUI to increase usability and improve error handling. * Add ability to 'switch' to new WanLinks, allowing one to start and stop WanLinks very quickly. * Add wl_icemod.pl script to enable command-line scripts to easily set WanLink values. Updated LANforge Server to make scripting WanLinks easier. Release 4.1.10 (September, 2004) * Officially release LANforge ICEcap feature to probe networks and save results to be replayed later by the LANforge-ICE WAN emulator. * Optimize TCP connections to use less CPU when driving traffic over slower links. * Improve LANforge management protocol enabling over 2000 connections on a high-end LANforge machine. * Allow explicit setting of socket Send and Receive buffer sizes. This allows indirect manipulation of the maximum TCP window sizes. * Display current window size (CWND) for each TCP connection. * Allow generation of Ethernet frames with bad ethernet CRCs * Tweak GUI to clean up some mouse-overs and other usability issues. * Automatically save a backup copy of the database at the end of each day. Release 4.1.9 * Add checks to dis-allow creation of WanPaths with spaces in the name. * Optimize GUI and server communications to allow scaling to more than 1000 simultaneous connections per LANforge machine. * Add initial support for packet logging in kernel-mode wanlink feature. * Fix File-IO endpoints: Allow setting of speed to something other than the defaults. * Fix very rare bug that could cause LANforge TCP streams to drop bytes and then start giving erroneous reports of dropped packets. * Fix mis-reported report-timer setting in Armageddon endpoints. Release 4.1.8 (July, 2004) * Fix LANforge-server crash bug when reordering packets in WanPaths. (Kernel mode was not affected by this bug.) * Fix bug that allowed one to create a test-manager with a space in it's name. The server will reject this faulty request now. * Fix GUI bug that prevented the display of reordered and duplicated packets for WanPaths. * Work-around another VOIP endpoint hang that could be triggered in rare cases. Release 4.1.7 * Add ability to filter WanPaths based on MAC addresses. * Allow adding MAC-VLANs on top of 802.1Q VLANs. * Verify that LANforge-ICE WAN emulation works when bridging 802.1Q devices, as well as regular ethernet devices. * Add file-descriptor-leak work-around to VOIP code, allowing graceful restart of the soft-phone. * Add support for 802.1Q VLANs to the Linux tulip driver. Release 4.1.6 (June, 2004) * Add GUI file selection widget for LANforge-ICE replay files. * Add tools to support DNS and SMTP traffic generation. * Fix kernel crash when using more than one kernel-mode WanLink. * Improve kernel-mode WanLink performance when running near the maximum speed of the network or bus (back off when no useful work can be done.) * Fix race condition in MAC-VLAN kernel module that could cause memory corruption on SMP machines. * Add HZ=1000 patch to the main Candela patch. Release 4.1.5 * Make VoIP RTP stack more tolerant of gaps in the received RTP packet stream. * Fix VoIP problem that caused calls to be unable to restart after the device under test was disabled for some time and then re-enabled. Release 4.1.4 * Fix bug that caused VoIP calls to terminate too soon when min/max call duration is configured and the WAV file is shorter than the specified call duration. * For lack of a comma, a codec was lost (g729a). * Improve Kernel-Mode LANforge-ICE performance and accuracy by using real-time process scheduling. * Fix assert in VoIP RTP stack, triggered when received an off-boundary RTP packet. * Restart VoIP endpoints if they exit abnormally with SIGABRT. Release 4.1.3 * Fix bug that caused any modification of a WanPath to stop the WanPath. Allow WanPaths to be stopped independently of the WanLink (and each other.) * Integrate IceCap WAN capture tool support. * Allow deletion of a VoIP endpoint from the GUI. * Fix display issue with Test Managers and lots of cross-connects. * Show time remaining in the current state for VoIP endpoints. * Add 'Jitter-Frequency' setting to allow jitter to be randomly applied to packets, instead of being applied to every packet as in previous releases. * Fix deadlock in VoIP endpoint when it is configured to not answer calls. Release 4.1.2 * Update VoIP related GUI screens based on customer feedback. * Add support for G729a VoIP codec support. * Add automatic re-start logic to VoIP endpoints. This saves stats and continues the test if the VoIP endpoint process exits abnormally. * Fix bug in install script relating to VoIP that was introduced in release 4.1.1 Release 4.1.1 * Add Accelerated-ICE support, allowing WAN emulation near Gigabit line speed. * Fix long-standing issue with layer-4 (HTTP, ftp) traffic generation: it will now bind to the local interface correctly. * Modify LANforge-ICE licensing scheme. LANforge-ICE is now licensed based on speeds, with performance levels of: 2Mbps, 45Mbps, 155Mbps and 1Gbps. WanPaths are restricted to 10 unless you purchase additional licenses. Existing customers who are upgrading should contact support@candelatech.com for a new license key if needed. Release 4.0.4 * Fixed problem with SIP endpoints registering in non-directed mode. * Add Speex, G726-16, G726-24, G726-32 and G726-40 codec support to VoIP call generator. * Allow NetReplay feature to replay captured files in a loop. Release 4.0.3 * Added WAN replay feature to LANforge-ICE. This allows one to replay an XML file that encodes the characteristics of a WAN or network. * Refined LANforge-ICE bandwidth algorithm to scale down to extremely slow speeds (10bps). This also fixed a problem with a burst of traffic at the beginning of a LANforge-ICE run. * Fixed bug related to saving Port information when no 'alias' was defined. * Ensure that the Armageddon kernel configuration is removed when the Armageddon endpoint is removed. Release 4.0.2 * Make WanLink GUI widget smaller so that it works better on laptops and smaller screens. * Fix WanLink bug relating to stopping and starting WanLinks containing WanPaths while packets are queued for transmit in the WanPaths. Release 4.0.1 * Added support to Linux kernel patches for receiving corrupted Ethernet frames and the Frame Check Sum. Only e100 and e1000 drivers are currently supported. * Several minor tweaks to the LANforge GUI and Server to fix some last minute annoyances. Release 4.0.1 Beta4 * Fix bug with ARP and MAC-VLAN interaction when sending traffic between MAC-VLANs on different physical interfaces on the same machine. * Fix problem with starting TCP connections. Release 4.0.1 Beta3 * Minimum time between VoIP calls for each endpoint is now 3 seconds, which fixes a crash bug in the VoIP/RTP feature. * Support SIP over TCP (UDP is still the default). * Support Ethernet Frame Check Sum (FCS) capture. Requires driver updates, and currently only the e1000 driver is supported. * Fix bugs with Multi-cast TTL. * Fix errors with setting IP ToS bits, clarify the format of the field (it should be in Network-Bit-Order, 0,1...7). * Fix regression bug that disabled Custom Ethernet endpoints. * Support batch VLAN creation in the GUI. Release 4.0.1 Beta2 * GUI fixes and updates to make VoIP/RTP call generation more powerful and less buggy. * Fixed VoIP/RTP bug in beta1 relating to stopped endpoints. * Completed first-pass at VoIP/RTP documentation. * Fixed several crash bugs in the VoIP call generator process. * Fixed regression bug regarding File Endpoints. * RTCP timing bug noted in Beta1 appeared to be caused by clock synchronization problems due to mis-configured ntpd. Known bugs & issues in Beta2 * Occasional crash of VoIP call when stopping it. This does not impact testing, and appears to be an issue with synchronizing thread shutdown on exit. Release 4.0.1 Beta1 * Support SIP VOIP Call generation, including messaging and RTP traffic generation. * Fix bug with setting Ethernet driver rates. * Fix GUI bug with test-managers and 'clients'. Known bugs in 4.0.1 Beta1 * RTCP protocol occasionally reports a strange round-trip time. Have not fully debugged this yet. Work-around is to use the VOIP Endpoint's one-way latency, which is calculated from RTP and has a much larger sample count. * A VOIP cross-connect may show itself as stopped, and yet the endpoints will still be running. This is after starting the cross-connect. Workaround is to start and stop the cx again. * VOIP/RTP Documentation is woefully inadequate at this time. * Please report any other bugs or weird occurrences you find to support@candelatech.com Release 3.7.6 * Ported to YellowDog Linux (Power-PC platform) * Significant re-write to the MAC-VLAN kernel module. It now works on SMP systems and has at least one memory corruption bug fixed. * Fix a file-descriptor leak in LANforge, related to creating new VLAN devices. * Fix LANforge crash due to race between VLAN device discovery and layer-4 endpoint traffic initiation. * Fix routing issue related to deleting and creating VLANs. * Updated lf_macvlan*.pl scripts to be better behaved. Release 3.7.5 * Fix accuracy issue with WanLinks when they were utilized at slow speeds and configured for greater than 10 millisecond delay. Release 3.7.4 * Increase performance of GUI, especially with 1000+ connections. * Updated kernel patch to fix some potential locking bugs. * Many other bug fixes. Release 3.7.3 * Significantly improved performance of LANforge-NetReplay. Can now run at 10Mbps bi-directional, even using a low-end hard-drive for storage. Expect much better performance when using RAID and/or SCSI. * Add lf2pcap tool to convert LANforge-NetReplay capture files to libpcap format files, which can then be operated on by standard programs like tcpdump, ethereal, and mergecap. Release 3.7.2 * Fix packet stream corruption when using LANforge-Ethernet protocol in conjunction with in-band management. * Improve performance for some traffic patterns. * Add LANforge-NetReplay feature. This allows one to capture traffic on a network, and later replay it just as it was captured. This particular feature should be considered beta, and more tools and options will be added to support this feature in the near future. Performance improvements are expected as well. Release 3.7.1 (Official Release) * Fix performance related bug, especially visible when using LANforge-ICE functionality * Minor cleanup and GUI fixes. * Update example kernel configuration file. Release 3.7.3-beta3 * Fix a few crashes. * Add the concept of Realms, which allows one to configure multiple LANforge managers in the same broadcast domain. * Clean up the Multi-cast support to be much more user-friendly, especially in the GUI. * Fix GUI bug relating to setting the report timer. Release 3.7.2-beta2 * Fix problem with installer (localhost would not resolve). * Make MAC-VLANs and their configuration persistent across reboots. * Increase efficiency & throughput of the management path. Fixes various strange issues with many ports and many connections. * Fix performance bug in GUI relating to having a great deal of layer-4 endpoints. Release 3.7.1-beta1 * This is a BETA release. There may be bugs: Please report them if you find them. * Add support for dynamic interfaces (802.1Q VLANs and MAC-based VLANs) MAC-VLANs allow a machine to emulate around 250 Ethernet interfaces on a single physical Ethernet interface. * Add support for IGMP (UDP Multi-cast). * Update perl scripts and libraries to support more of the newer connection types. * Port to RedHat 9 (also works on older systems) * Use latest Java JVM from Sun (1.4.2-beta). Other JVMs do not work on RedHat 9. Release 3.6.1 * Fix a problem in the rate-limiting code for WanPath (introduced earlier in the Beta period.) * Update documentation and added screen-captures of the latest LANforge-GUI features. * Added Ethernet driver info on the Interface Display widget. Release 3.6.1-beta2 * Fix several bugs relating to WanPaths. They more or less work now. * Cleaned up the GUI display a little more, and added some tool-tips to help explain some of the graphs. * Increase LANforge packet sending precision. Release 3.6.4-beta1 * Fix a problem that kept LANforge-ICE from working at speeds of less than 9,600 bps. Also fix packet-dropping problem when speed was too high. * Add many GUI enhancements for LANforge-ICE. * Add support for WanPaths, which are virtual simulated WANs characterized by a source & destination IP address range. ## This code has not been tested yet in this beta release. Release 3.5.5 * Fix several crashes when using un-managed endpoints. * Fix window re-size bug in the GUI. * Add a slightly advanced ping command builder and a ping wrapper called 'lfping' which keeps some long-term statistics on a ping session. Release 3.5.1 * Fixed several performance related bugs. Can now support 85Mbps or faster LANforge-ICE WAN Simulator link, and the LANforge-FIRE traffic generator features also run faster and better. * After tweaking the Linux kernel (patches included), LANforge can now send user-space TCP & UDP packets to itself. This means that a single machine can act as both client and server: You no longer have to have two machines. * Add Armageddon traffic generation type. This feature uses kernel acceleration to generate UDP packets at extreme speeds: 600,000 60-byte packets per second on Gigabit Ethernet, 860Mbps with larger packets. For 100bt networks, LANforge Armageddon can generate 140,000 packets per second, and 97Mbps with larger packets. Armageddon requires the pktgen kernel module patch as found on our web page. Contact Candela for directions on patching your kernel or obtaining a pre-patched kernel from Candela. * Configuration scripts tweaked to work better with RH 7.3 Release 3.0.6 * Fix crash when using the 'nc_show_endp' command on un-managed endpoints. Release 3.0.5 * Fix several performance related bugs. Packet throughput is now much more stable across a range of packet sizes and speeds. Release 3.0.4 * Fix bug that breaks TCP/IP connections when installed in certain configurations. * Add GUI with the 1.4.0 Java Virtual Machine from Sun for Linux. This may fix JVM crashes on some machines. * Don't poll the network device drivers with the MII interface. This decreases the amount of lost packets. The user can still actively probe the devices: it just is not done automatically now. Release 3.0-final * Fix the rate-limiting logic to be much more efficient and to generate a smoother packet stream. * Clean up Distribution GUI display. * Fix some minor install bugs. * Port to StrongARM (CerfCube) platform. Release 3.0-beta2 * Add latency distribution counters to the server, and graphs to the GUI. * Added ability to run traffic over the management connection (port) if desired. This removes the requirement to have at least two ports in your data-generating servers, though that is still suggested for most applications. * Initial support for the Ethtool driver interface, which allows some manageability of drivers such as the e100 from Intel. Release 3.0-beta1 * Added File generation features. (Can be used to test and generate NFS, SAMBA, and iSCSI network traffic.) * Added integration with the bonnie++ file system tester. * Added Layer-4 protocol generation: HTTP download and FTP upload & download. * Added generic endpoint to allow integration with command-line tools like ping and traceroute. Many other possibilities exist and will be documented soon. * Added graphical real-time packet counters to the Layer-3 Cross-Connect display frame. 1) Files found on the distribution CD: a) LANforgeDocs-X.X.X directory: Contains documentation in HTML format. Please read this before you attempt to install or use the LANforge product. b) LANforgeGUI_X.X.X_DOS.zip: This file contains the Windows (32bit) version of the LANforgeGUI. It is identical to the .exe file, except that the .exe file is a self extracting zip file. c) LANforgeGUI_X.X.X_DOS.zip.exe: This is the self-extracting zip file that contains the LANforgeGUI for the Windows Operating System. d) LANforgeGUI_X.X.X_NO_JRE.zip: This contains the LANforgeGUI specific java files, but not the Java Runtime. This file can be used to install on Operating Systems other than Linux and Windows, or any platform upon which you want to run your own JRE. This will help you install LANforge on platforms not specifically supported by LANforge. e) LANforgeGUI_X.X.X_Linux.tar.gz: This file contains the LANforgeGUI distribution for the Linux operating system. (NOT RedHat 7.0, see below.) f) LANforgeGUI_X.X.X_Linux_RH7.tar.gz: This file contains the LANforgeGUI distribution specifically for RedHat 7 Linux. It may work on other platforms as well. The difference is that it uses the IBMJava2-13 JRE, which is the only one that works well on RedHat 7 at this time. g) LANforgeServer-X.X.X_Linux.tar.gz: This file contains the LANforge Server distribution. You may not ever need this file, as the LANforge equipment comes with this software pre-installed, but it can be useful for recovering a broken system. h) contrib: This directory contains third-party tools that are shipped with LANforge to add extra capabilities. Candela Technologies did NOT produce the tools found in the 'contrib' directory. i) tools: This directory contains auxiliary tools that support LANforge in some way. Currently, 'tools' contains the lfplot tool. Candela Technologies did produce these tools, and fully supports them. j) src: This directory contains all GPL'd (Gnu Public Licensed) source code. You may modify and use this code according to the GNU Public License, which is included in the tar.gz files, and called: 'License'. 2) LANforge GUI Performance Notes. a) The faster you tell the endpoints to report to the GUI, the more work the GUI has to do. We suggest that you keep report times at 5 seconds or greater for slower networks and/or slower (Pentium 200) machines. You may also want to make the report timers longer if you are running a large number of cross-connects simultaneously. 3) Dropping connection to the LANforge Server does not always log off the client quickly. This is based on the IP timeout in the OS, which may be 30 minutes or more. However, this should not cause any real problems.