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.2.2 (November 29, 2011) * 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 my MAC address should work for all protocols and is still supported. * 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. * 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. Release 5.2.1 (October 12, 2011) * 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). * WanLinks: Fix crash when using WanPath filters on Windows. * Support WiFi station bridge. This allows third party traffic generators to use the LANforge WiFIRE systems to test wireless networks. * 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. * 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. * LANforge GUI and Server Windows uninstallers now ask for confirmation. Each GUI version now installs in it's own directory by default. * Fix OSPF routing convergence bugs that happened in more complex virtual router scenatios. Release 5.1.9 (June 29, 2011) * 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. * Allow playing contents of arbitrary files over various Layer-3 protocol types. * Fix crash due to buffer-overrun when playing pcap files in custom-ethernet endpoints. * Allow file-IO to work on 2.6.34.2 (LANforge 5.1.6 release) kernels. * Fix L3 server-side reporting, had wrong number of columns in .csv. * Support setting and checking UDP checksums in Armageddon. * Support proxy IP:port for Layer3 (UDP, TCP) endpoints. * Support Layer-3 multi-connections on Windows. * 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. * 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. * 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. * Update Live-CD to be based on Ubuntu 11.04. Release 5.1.8 (April 26, 2011) * Fix sleep-time issue when using connection-duration with TCP endpoints. It could cause the main loop to sleep for longer than desired. * Optimize hostapd and wpa_supplicant (wireless processes.) * 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. * 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. * Allow Armageddon to work on Wireless Station interfaces. 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. * 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 * 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 * 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 * 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 * 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.