Page tree
Skip to end of metadata
Go to start of metadata

Last updated: Oct 02, 2019 23:11

By Christopher Alton

The purpose of this article is to summarize Perfecto’s cloud lab requirements and best practices for Hybrid Clouds. Perfecto cloud labs use streaming services to give users access to devices from anywhere in the world (similar to Remote Desktop). Streaming services are more sensitive to latency and bandwidth limitations than other types of Internet use, such as web browsing. When you interact with a device in your cloud lab, a short delay of 1 to 1.5 seconds is expected. To prevent greater latency, planning is required.

This article covers hybrid clouds that use the Flash UI for Perfecto users, located at <YourCloud>.perfectomobile.com

In this section:


Important note on Hybrid clouds

Hybrid clouds use an infrastructure where the cloud manager is hosted at Perfecto, while the handset servers and devices are hosted On Premise with the customer. If you are unsure if you have a hybrid cloud, please check with your project manager, or ask your Perfecto customer success representative. This means that the customer whom has the handset servers and devices On Premise in a hybrid cloud, is responsible for any networking and connectivity processes and policies.

Perfecto has no control over the security policies, firewall or proxy rules, of handset servers that are On Premise, in a hybrid cloud.

Please be aware that the requirements for Hybrid clouds may change, as newer architecture is developed for further support of hybrid clouds.

Requirements

TCP ports

This article covers how the mobile lab works, and the requirements for the Flash UI.

How the Perfecto Lab Works - Ports and Protocols

Important note

Hybrid clouds function differently. The streaming services may not be hosted by Perfecto. The streaming services may be hosted On Premise with your handset servers and devices. Please contact your cloud administrator for details.

Bandwidth

For one device, it requires 1.5 megabits per second of bandwidth, per user. For example, if three users connect to the cloud and each opens a single device, the necessary bandwidth would be three devices times the minimum bandwidth.

Example:

1 user and 1 device = 1.5 megabits per second of bandwidth usage 

3 users and 1 device each (3 devices total) = 4.5 megabits per second of bandwidth of usage (3x 1.5 megabits = 4.5 megabits)

If a single user opens more than one device, it takes an additional 256 kilobits of bandwidth per additional device, in the same session.

Example:

1 user and 1 device =

  • 1.5 megabits per second of bandwidth usage

1 user and 3 devices in the same session =

  • 1.5 megabits of bandwidth for the first device (1x 1.5 megabits = 1.5 megabits)
  • 0.5 megabits of bandwidth for the second and third device (2x 256 kilobits = 512 kilobits OR 0.5 megabits)
  • 1 megabits plus 0.5 megabits = 2 megabits per second total usage


2 users and 2 devices (two separate sessions) =

  • 3 megabits per second of bandwidth usage (2 x 1.5 megabits = 3 megabits)

2 users and 6 devices (two sessions, 3 devices each session) = 4 megabits per second of bandwidth usage

  • 1.5 megabits of bandwidth for the first device of each session (2 x 1.5 megabits = 3 megabits)
  • 0.5 megabits of bandwidth for the additional 4 devices in the sessions (4 x 256 kilobits = 1 megabit)
  • 3 megabits plus 1 megabits = 4 megabits per second total usage 

Important bandwidth considerations

While your site may have enough bandwidth, if many users share the same Internet connection as those who need cloud access, this can greatly affect the latency of the video stream. Bandwidth spikes from activities such as large downloads may cause intermittent problems. Many companies throttle bandwidth especially for RTMP video traffic to discourage employees from impacting available bandwidth as well as viewing sites with video such as YouTube, news, and other content that may not be work-related. Your IT department may not know that you need video streaming to use Perfecto clouds. This can cause your cloud to be treated as unwanted video streaming.

Whitelisting (allowing connectivity)

This is a process done by your Infra/Security teams to allow the Perfecto Lab services, to work with your company security. This involves rules and policies put in place to allow connectivity. Perfecto uses the following streaming services that deliver the content of a mobile device or desktop VM, from the cloud lab, to your workstation. These streaming services need to be allowed.

Streaming servers (STS) list

Click this hyperlink to see the flash streaming server list.

Important note

Hybrid clouds function differently. The streaming services may not be hosted by Perfecto. The streaming services may be hosted On Premise with your handset servers and devices. Please contact your cloud administrator for details.

Reasons for slowness, latency, or delays

Streaming services can be slowed down by network appliances and rules/policies. This causes unpleasant delays, sometimes upward of 10 seconds or more, for manual testing.

Problems and solutions

This section describes common problems and their solutions.

Problem 1 | Devices are slow with high response times during manual testing

This happens when the streaming servers are being blocked, redirected, or are under traffic interception/scanning. The root causes can be blocked ports, SSL interception, deep packet scanning and IDS/IPS.

If you see a delay between a manual click (such as on a number button in the calculator) during manual testing, and a response of...

  • Less than 2 seconds, you are getting good performance. Remember, this device may be thousands of miles away. Do not expect performance to be the same as though it's sitting in your hand. Nothing in this article will help you improve interactive latency below 2 seconds.
  • 2 to 3 seconds - Fair performance. You will notice that it is a remote device but you are able to get your work done. It may be possible to improve the performance slightly by applying best practices found in this article.
  • 3 to 4 seconds - Less than optimal. Waiting to see responses is beginning to impact your productivity. Definitely have your IT team look at this article.
  • Greater than 4 seconds - Unacceptable performance. Your network configuration is having a significant impact on your use of the Perfecto platform. Your IT team must provide a solution.

Solution #1: Allow connectivity to the Streaming Services

In a hybrid cloud which uses the Flash UI, it is possible to whitelist both the URL and IP address, if necessary. Please see the link above in regards to the legacy flash STS.

Important note

Hybrid clouds function differently. The streaming services may not be hosted by Perfecto. The streaming services may be hosted On Premise with your handset servers and devices, which requires your local Infra/Security team to address. Please contact your cloud administrator for details.

Solution #2: Allow STS traffic without extra scanning

This solution ties in with Solution #1. Add a rule to allow the STS traffic, to bypass SSL interception, deep packet inspection and IDS/IPS. Removing these additional security layers will help to improve overall manual cloud testing

Problem 2 | Automated testing appears to be slow

This tends to happen when a user first opens a device in session sharing, then runs a test against the device while it is open in the lab view.

Solution #1: Run automation without a lab device open in the lab view

To run true automation, first, do not open a device in the lab and do not share the session. Tests should run without any use of session sharing, or the device lab being open. Check your open device configuration capabilities and adjust as needed.

Solution #2: Check scripts for commands that loop or are unnecessary

We see that in many tests, there are looping commands. For instance, having a find element command loop several times over and over, when it is successful each time, can add delays to your tests. Performing debugging for script optimization

Strategies and practices to improve connectivity

Here are some suggestions on how to improve your connectivity to the cloud lab.

  • Isolate project teams in each location to their own VLANs. This allows bandwidth to be more easily controlled and measured.
  • Have your IT team assign a higher Quality of Service (QoS) priority to traffic from the cloud lab services, to your project team's VLANs.
  • Ensure that your IT department is not throttling bandwidth for the project team.
  • Consider a separate Internet connection for the project teams that will not be impacted by other users. Some customers use dedicated gateways for their testing team on an isolated network as a workaround.

Additional support

If you need additional support, contact the Perfecto Support Team. The Perfecto support team will be glad to assist with any questions or concerns that you may have in regards to delays, latency, etc.