pS-Performance Toolkit FAQs
- What is the pS-Performance Toolkit and where do the tools come from? The pS-Performance Toolkit ISO image is derived from the standard Knoppix v5.0.1 Live-CD ISO image. Using the re-mastering instructions provided by Knoppix, the kernel was replaced with a Web100-enhanced version (currently Linux 2.6.20.10). Then, performance tools developed by Internet2 staff, Pittsburgh Supercomputer Center (PSC) researchers, and Stanford Linear Accelerator Center (SLAC) researchers were added to the image. The pS-Performance Toolkit is available at: http://www.internet2.edu/performance/node/.
- How do I run the NPAD system? The NPAD (Network Path and Application Diagnosis) is a client/server program developed by the network research group at Pittsburgh Supercomputer Center (PSC). At boot time, the pS-Performance Toolkit starts the NPAD server process and leaves it listening on TCP port 8200. To use this server, a user starts a Java-enabled web browser and points it at the pS-Performance Toolkit server (http://HOST:8200). The server automatically downloads a Java applet to the client. Then the user runs a test to begin the diagnostic process. Once the test has been completed, the server displays a results page on the clients browser. The user may examine these results and follow the recommendations to resolve problems. If the user is unable to repair a reported problem, the results page URL can be emailed to the appropriate system administrator or NOC operator. The server retains a complete record of the test results and the raw data used to derive these results. This allows post-processing of interesting results to determine what went wrong and to improve the reporting capabilities of the NPAD server.
- How do I use BWCTL? BWCTL (Bandwidth Test Controller) is a client/server program developed to simplify Iperf, thrulay, and nuttcp testing between hosts. At boot time, the NPTookit starts a BWCTL server process and leaves it listening on TCP port 4823. This server may then be accessed by remote BWCTL clients. Additionally, the disk contains BWCTL client applications that can be used to test to remote instances. The BWCTL server allows TCP tests with a maximum duration of 60 seconds. To run a test to a remote BWCTL server:
- Logon to the pS-Performance Toolkit server using the knoppix or other valid userid
- Identify the remote server
- Run bwctl -s remote-bwctl-server command to stream data for 10 seconds from the locally instance to the remote BWCTL server. Results are displayed on our console or terminal window.
- How do I run the NDT system? The NDT (Network Diagnostic Tool) is a client/server program developed to simplify testing to desktop/laptop computers. At boot time, the pS-Performance Toolkit starts a pair of NDT server processes and leaves them listening on TCP ports 7123 and 3001. To use this server, a client starts a Java-enabled web browser and points it at the pS-Performance Toolkit server (http://HOST:7123). The server automatically downloads a Java applet to the client. The end-user can run a test to begin the diagnostic process. Once the test has been completed, the server displays a results page on the clients browser. The end-user may examine these results and follow the recommendations to resolve problems. If the end-user is unable to repair a reported problem, the user may click the Report Problems button to generate an email that will be addressed to the appropriate pS-Performance Toolkit administrator. The server retains a record of the test results to allow the post-processing of interesting results to determine what went wrong and to improve the reporting capabilities of the NDT server.
- What is NTP? NTP (Network Time Protocol) is a program that synchronizes a computers clock to a global time source. An accurate clock is essential for running many of the measurement tests including BWCTL and OWAMP. The NTP daemon must connect to several, at least four (4), remote time servers to obtain accurately set the local clock. By default the pS-Performance Toolkit server will synchronize to both Internet2 and public time sources. See Step 7 - NTP for information regarding changing the default time sources.
- How do I use OWAMP? OWAMP (One-Way Ping) is a client server program that was developed to provide delay and jitter measurements between two target computers. At boot time, the pS-Performance Toolkit starts an OWAMP server process and leaves it listening on TCP port 861. This server may then be used by remote clients. Additionally, the disk contains OWAMP client applications that can be used to test to remote instances (including a Java client and a console based application). By default, the OWAMP server sends a low-level data stream in each direction and measures the one-way delay and jitter between the two hosts. Separate measurements, one for each direction, are reported to the user at the end of the test. To run a test to a remote OWAMP server:
- Logon to the pS-Performance Toolkit server using the knoppix or other valid userid.
- Identify the remote server.
- Run the owping remote-owamp-server command to make a pair of 10 second delay measurements (one in each direction) between remote OWAMP server and the local instance. Results are displayed on the console or terminal window.
- Where can I ask questions or report bugs?
- For questions, email to performance-node-users at internet2 dot edu. You may also join the mailing list by visiting https://mail.internet2.edu/wws/subrequest/performance-node-users
- For bugs, report at http://code.google.com/p/perfsonar-ps/issues/list . Label the bug as Component-NPToolkit, or state in the bug description the issue involves the pS-Performance Toolkit.
- I get an error similar to DBD::mysql::db selectrow_array failed: Table 'pingerMA.data_XXXXXX' doesn't exist at /some/path/to/Base.pm line XXX. What should I do? Ignore this. Depending on OS scheduling, PingER might try to use a table before creation. It should only happen occasionally.
- Can I Use a Firewall? Yes. To enable, first add all the desired rules to the firewall then run the command "/etc/init.d/iptables save". The firewall should then automatically come up on the next boot. Note that there are some caveats to enabling a firewall, namely the amount of holes that must exist for the measurement tools included on the disk:
- SNMP MA -- open port tcp/8065
- PingER -- open port tcp/8075
- perfSONAR-BUOY -- open port tcp/8085
- Lookup Service -- open port tcp/8095
- bwctl -- open port tcp/4823, edit /usr/local/etc/bwctld.conf, set peer_port to a value, open the tcp port for that value, and
edit /usr/local/etc/bwctld.conf, set iperf_port, thrulay_port and nuttcp_port to a specific range, and open the tcp/udp ports for those ranges.
- owamp -- open port tcp/861, edit /usr/local/etc/owampd.conf, set testports to range, open the udp ports for that range
- NDT -- open port tcp/3001, open port tcp/3002, open port tcp/3003, open port tcp/7123
- NPAD -- open port tcp/8100, open port tcp/8200
- Apache HTTP Server -- open port tcp/80, open port tcp/443
- SSH -- open port tcp/22
- I'd like to PXE boot the pS-Performance Toolkit. Is that possible? Not currently, but this is a consideration of future releases.
- When I boot, it gives me the following error Can't find knoppix file system, sorry. Dropping you to a very limited shell ....
This can be attributed to a bad CD burn or a bad ISO image. Check the MD5 sum of the ISO and match this to the posted MD5 value.
- What should I enter for the Communities of interest configuration question?
- This question can be confusing to answer for new users. The goal is to associate some loosely coupled labels to the data that the pS-Performance Toolkit disk will be making available to the larger world. Think of this step similar to assigning labels to photos or music. Some examples of valid answers are:
- Internet2 - The data made available somehow connects the Internet2 backbone
- LHC (CMS, ATLAS, etc.) - The disk is part of the LHC deployment structure
- eVLBI - The disk is a part of the larger telescope community
- MAX - A connector of member of the MAX gigapop
- Use as many community names as necessary to properly categorize the data from the installation.