One of the features available as part of the Networking Quality of Service (QoS) functions in i5/OS starting in V5R2 is the ability to monitor the bandwidth usage and inbound connection rates of your system's network interfaces.
The QoS Monitor function allows you to display real time bandwidth usage, or you can set it up to periodically take a "snapshot" over time so that you can record how the bandwidth used by your system changes over time.
This is simple to set up and allows you to monitor the current bandwidth usage or record the usage over time.
Why would you use this function?
- You may have complaints from users that a particular connection is slow. You can then look at the instantaneous bandwidth usage and determine if your network connections are overloaded.
- You would like to track your network bandwidth usage over time to determine when is the best time to run applications that require large amounts of bandwidth.
- You want to determine what your maximum bandwidth needs are over time. You might be able to negotiate with your ISP to get lower rates during low usage times.
- You want to monitor connections going to a specific URI and/or server port either instantaneously or over time. Note: This feature is available in V5R3 only.
The instructions given below describe how to set up a simple policy for monitoring your network. If you have any questions you can e-mail me at firstname.lastname@example.org.
Setting up a QoS monitor policy for monitoring your network
Note: These screen shots are from a V5R3 version of the iSeries Navigator. The V5R2 versions will be slightly different.
1. Start up your iSeries Navigator session then select the following:
- Your system
- IP Policies
- Quality of Service
2. Click on the "Configure Quality of Service choice at bottom of screen.
3. In the Quality of Service dialog, expand the "Outbound Bandwidth" line and right-click on "Diffserv".
4. You should get the New Policy Wizard screen shown below.
5. Click on the Next Button to get to the next screen. Fill in the name for your policy and click Next.
6. You should get to the next screen. Select "All IP addresses" and click Next.
7. On the next screen, select "Any token" and click Next.
8. On the Ports screen, select "All ports" and click Next.
9. On this screen you have a choice. You may want to monitor all of your interfaces together or specific interfaces. If you want to monitor all interfaces select "All IP addresses". If you would like to monitor a specific IP address, you can select "IP address" and enter the address of your interface.
For simplicity, the example shown below is for all IP addresses on the machine. If you would like to monitor specific IP addresses (interfaces), you have to repeat this procedure for each interface address.
10. If you already have QoS policies defined on this system, the dialog shown below will come up. Select the "New" button to continue. This will start up the "New Class of Service Wizard". If you do not have any class of service defined, then that wizard should start automatically.
11. The "New Class of Service Wizard" startup screen is shown below. Click Next.
12. Enter a name and description for this class of service, then click Next.
13. If you would like to monitor both connection rates and data rates for your network, select "Both outbound and inbound". If you want to monitor data rates only, select "Outbound only". This example shows "Both inbound and outbound". Click Next.
14. For a "Monitor only" rule we do not want the policy to affect the network handling of data, so we want to select the "Default" DiffServ codepoint. Expand the pull-down menu and find "Default" or codepoint "000000" and select it.
15. This is an important step. You must select traffic metering for the policy monitoring to become active. Select "Yes" and then click Next.
16. On this screen we want to make the data rates as large as possible to make the policy transparent to the network. The numbers shown below seem to work.
Note that the "Average rate limit" of 1024 MB per second is the largest value that can be used in this field.
Enter the numbers and click Next.
17. We do not want the policy to cause any interference with the network, so on this screen we should select "Re-mark with DiffServ codepoint", find the "Default" or 000000 codepoint and then click Next.
18. Since we chose to create both Inbound and Outbound Class of Service, the next screen will ask for the Connection Rate parameters. Again, large numbers here are good. I chose 4096 connections for this example, but the number can be increased if your system typically has more connections. Also choose "Best effort" on the priority to make sure no special handling is done by this policy.
19. For this example I chose not to use URI's. Again this is for simplicity and also because you need to start up the FRCA service to make URI policy function properly.
Select "No" and click Next.
If you would like to monitor URI's, the iSeries Information Center contains information on how to set up and use URI policies.
Note: URI policies are a V5R3-only function.
20. The next two screens show a summary of the Class of Service we have created. The first shows the Inbound parameters, and the second shows the Outbound parameters. Verify that they are set properly and click Finish.
21. This should now bring you back to the "New Quality of Service Policy" wizard below.
22. You can make QoS policies active all the time or on a specific schedule. For a monitor policy, "Active at all times" is probably the best selection.
23. We are finally done. Verify the parameters in the summary below. Note that you may or may not get the "Policy Overlap" warning shown on the screen below if you have other QoS policies defined. This should not be a problem for the Monitor policy.
24. To make the new policy active, you need to either "Update" the QoS server or stop it and restart it. Once you have done that, you can start up the monitor by right-clicking on the QoS server on the Operations Navigator screen and selecting "Monitor".
When the monitor screen comes up, expand the Active policies and select "DiffServ". You should get a screen something like the one shown below. The actual fields shown are configurable using the "View" and then "Customize View" pulldowns. Select what parameters you would like to monitor and customize your screen.
Note that this data is not dynamically updated. You need to use the "View Refresh (F5)" function to update the data. You also need to refresh the view at least once after you start up the monitor for data to show up. That is because the data displayed on this screen is calculated based on the amount of activity since the last screen refresh.
25. If you would like to collect network data over time, you can use the "Start QoS Data Collection" option under the "File" pulldown. This option will cause network data for the policy to be collected periodically and saved for later display. Look at the iSeries Info Center for more information on how to use this facility.
The picture below shows an example of the monitor output from collected data taking samples every five minutes.
About the author:John D. Hall is a retired senior software engineer, iSeries TCP/IP Applications, at IBM's Rochester Programming Lab.