Data Sheet - How To Use PsPing To Test Ping, Latency & Bandwidth Between Blue Prism Components
Data Sheet - How To Use PsPing To Test Ping, Latency & Bandwidth Between Blue Prism Components
PsPing can perform ICMP pings as well as TCP pings. TCP pings are useful if ICMP pings have been blocked by
your Network Team and you can also target a service running on a specific port on a machine. This allows you
to test the same ports that are being used by your Blue Prism components, for example the Runtime Resource
default port of 8181 and the Application Server (App Server) default port of 8199.
You and your infrastructure teams can gain valuable insight into your network performance by running these
tests during times when your Blue Prism systems are both busy and quiet. This will give you a good reference
point when diagnosing and troubleshooting network issues when they arise.
Below is a communication summary diagram showing the different Blue Prism components. PsPing can be
installed on any of these machines for the tests, including the SQL Server database server.
ICMP ping tests can be used just to check that a target machine is “up” and contactable, but TCP ping can be
used to check whether a service on a port can be communicated with, such as the default Runtime Resource
port of 8181.
To execute a TCP connect test, specify the port number. The following example executes connect attempts
against the target IP address and port 8181 as quickly as possible, only printing a summary after 100 iterations
and 1 warmup:
psping -n 100 -i 0 -q 10.44.1.12:8181
Latency Testing
Network latency is a measurement of the time it takes for some data to get to its destination across the
network. It is usually measured as the time taken for information to get to its destination and back again. This
round-trip delay has a key impact on the performance of the network.
You can test the latency between two Blue Prism component machines (e.g. an App Server and a Runtime
Resource) by having PsPing running on each of the components. One machine will listen on a specific port and
the other machine will then be used to target that port.
Please see the example below:
We first start a PsPing ‘listener session’ on the machine and port we want to target from the Runtime Resource
machine:
psping -4 -s 10.44.1.12:8181
This starts up a listener using the specified IP address on TCP port 8181. If the Windows firewall needs opening
use the ‘-f’ switch to do this. Open the ‘CMD’ prompt with Administrator permissions if this is required.
Please note this is not a Blue Prism Runtime Resource listener, it is the PsPing ‘target’ session.
The latency is then tested from another Blue Prism component machine (e.g. the App Server) using the
following command:
psping -4 -h 10 -n 10 -l 1000 10.44.1.12:8181
This uses IPv4, creates a histogram, uses 1000 bytes of payload and targets TCP port 8181 on address
10.44.1.12.
-l Request size. Append 'k' for kilobytes and 'm' for megabytes.
Bandwidth Testing
Bandwidth is a measure of how much data can be transferred between two devices in a given time. This is
typically measured in megabytes per second. Networks with higher bandwidth are able to transfer a greater
number of data packets than those with a low bandwidth. A common analogy is to think of data transfer as
water flowing through a hosepipe - there's a limit to the amount of water that can fit inside the pipe at any
given moment, with larger capacity pipes being able to carry more. The narrower it is, i.e. the smaller
bandwidth, the less data is able to be pushed through it at once and vice-versa.
Like the previous test you should have one machine listening on a TCP port and the other machine can then
‘ping’ this machine with packets of data. After the test is complete the PsPing tool will give you bandwidth
statistics showing how much data was able to be transferred between the two machines.
Please see below for an example of using both the server and client for the bandwidth test.
psping -b -4 -n 4000 -l 5000 10.44.1.12:8181
This starts the bandwidth test using IPv4, with 4000 packets of 5000 bytes in size. Note the bandwidth results
after the test completes.
On the client (target) machine that is ‘listening’ on port 8181 we see the following corresponding display when
the test is ongoing and then completes:
Conclusion
By performing the tests described, it will give you performance metrics by which you and your Network Team
can assess both the impact and help pinpoint possible causes of why your Blue Prism environment appears to
be slower than normal. Having a baseline set of metrics allows you to compare performance when it is slow and
when operating normally.
As an example, when you see ‘ping’ times of 50ms or greater and your baseline is 20ms then this may indicate
some change in network infrastructure such as transmission errors (e.g. dropped packets), different routes
taken for the traffic to get from point A to point B, changes to bridges or switches. Ping times of greater than
20ms can start to affect Interactive Client activity and slow down updates to the interface such as when in
Control Room or when loading/saving processes and objects.
Latency can create bottlenecks within the network and reduces the amount of data which can be transferred
over time. It can be temporary or persistent so testing should be done over a period of time to give a good
sample of performance data.
The examples used in this document were produced in a Virtual Machine environment on one physical
machine. Real world environments using LAN and WAN networks will produce different results. Again,
performing your own tests will help you create a baseline for your own environment.
As an example, if you have a gigabit ethernet card on your Blue Prism machine, your router or switch is gigabit
and the receiving device also has a gigabit ethernet card, your maximum transfer speed will be a theoretical
maximum of 1000 Mbps (1000 megabits per second) or 125 MBps (125 megabytes per second). You are unlikely
to see this theoretical speed, but you will typically get anywhere from 70 to 115 MBps depending on the type of
files you are transferring and your network setup. In the first instance you should work with your Network and
Infrastructure Teams if your network is not performing as normal.
If you are experiencing slow performance across your Blue Prism network, check both the latency and
bandwidth metrics between components and work with your Network Team to help identify the bottlenecks.