Best Practices for Testing Application Performance Over Satellite Networks

Satellite Testing

Satellites are becoming an increasingly important component of global communication both in commercial business and the defense industry.  Over 2,500 satellites are currently orbiting the earth, relaying data for internet connectivity, video conferencing and video streaming, disaster recovery, and defense-related communications to name a few.

But satellite networks pose unique technical challenges, especially when it comes to ensuring application performance and maintaining a good user experience.

Network impairments like latency, packet loss, link flapping, and bandwidth asymmetry are magnified on satellite networks, which can cause applications to slow down or become completely unresponsive.  Additionally, satellites are constantly moving and links often “handover” from one satellite to another which has the potential to cause outages.

So how do you ensure that your critical defense systems or multi-media applications will continue to perform at the highest possible quality despite the adverse conditions of satellite networks?

Certain optimization techniques can help mitigate the impact of poor network quality, but ultimately any new systems, policies, or devices put in place will need to be tested and validated to ensure optimal performance.

Satellite Optimization Techniques

One way to combat poor network quality and ensure better performance is through traffic management. When the network load increases beyond a crucial point, the network buffer overflows, and packets begin to get lost.  This congestion can cause serious delays or even application failure. 

Using traffic management functions such as resource reservation, congestion control, traffic shaping, and buffer management can help maintain a good connection. The goal of these functions is to ensure fairness by distributing resources efficiently.

Some satellite modems also have QoS capabilities. QoS mechanisms provide relief from congestion by determining which traffic should be prioritized. Based on policies set by administrators or service agreements, certain traffic is considered critical and given higher priority over other types of traffic. By identifying the destination, protocols used, packet size, and other factors a satellite modem can determine which traffic should be sent over which paths.

These techniques aim to eliminate bottlenecks and minimize queue delays, but the only way to know if the implementation was successful is through proper testing. However, testing over satellites comes with its own set of challenges.

Should you test over live satellite links?

Sometimes it is necessary to test over the live satellite link, but testing over satellite networks can be challenging.  Not only are you hindered by limited availability and high cost, but also because the test environment cannot be controlled.  

Satellites are continuously moving, and the network conditions are constantly changing depending on a multitude of factors including atmospheric and ground weather. Heavy rain, snow, and thunderstorms can all interfere with sending or receiving satellite signals with varying amounts of disruption.

Using live links means your tests are subject to whatever the current conditions are, so you cannot easily test for worst-case scenarios or isolate individual network impairments.

In order to guarantee deterministic, repeatable results it is more effective to emulate the network in the lab. But replicating the volatile behavior of satellite networks in a lab environment can also prove difficult. 

Satellite Test Components

So how do you measure performance to see ultimately how the network can give the best possible quality of experience to an application, commercial or defense-related?

By introducing equipment like network emulators and traffic generators into your lab to improve the reliability of your test results.

When setting up satellite performance tests, there are two related areas of testing:

  1. Using traffic generation to emulate realistic application traffic and measure network performance
  2. Using network emulation to emulate the dynamic characteristics of a satellite network

These can also be used in conjunction with each other. Satellite characteristics like bandwidth limitations, latency and packet loss can all be replicated using network emulation.  Even the random weather patterns that affect connectivity can be emulated using the “Gilbert Elliot” model to dynamically change network conditions over time.  Traffic generators then replicate the streams of traffic traversing the network such as web browsing, video streaming, or a multitude of specialized applications to help analyze network and application performance.

Satellite Test Configurations

 1. Isolation of satellite modem

In order to isolate the performance of your satellite modem – or other network devices such as firewalls, routers, and switches – you must incorporate both a network emulator and traffic generator into your test set up as shown in the diagram below.  The traffic generator emulates the expected traffic types being sent through the network. Then the network emulator imitates the dynamic conditions of the live satellite link, so that you can accurately measure the performance of the modem or other Device under Test (DUT).

Test Satellite Modem with Network Emulation

2. Full end-to-end test of a satellite system over live satellite links

Another scenario involves using a live satellite network for testing. As shown in the diagram below, a traffic generator is used to emulate the devices sending and receiving signals on either end of the network. The traffic generator sends various combinations of traffic streams across the live satellite link to help analyze the network’s performance.

Test Over Live Satellite Link with Traffic Generation

Satellite Test Case Scenarios

Forwarding rate

The forwarding rate is the maximum rate at which a device can process and forward packets.  A satellite must process packets just as a router or switch does, but they typically prefer smaller packets because data sent over satellite links tends to be minimal. Packets that are too large can eat up bandwidth but sending too many small packets can flood the network, get lost in transit, and/or overwhelm the device.

Testing the forwarding rate helps determine the ideal packet size to ensure the best possible performance. Using a traffic generator you can send various packet sizes through the network from just 64 bytes to jumbo frames up to 9K and benchmark classic performance measurements like throughput, latency and packet loss.  You can also send a combination of different packet sizes at once to mimic real-world traffic. IMIX, in particular, is a specific mix of packet sizes that imitates typical internet traffic.  This industry-standard can be used to benchmark the performance of satellite internet. 

QoS Policy Validation

For example, if you want to validate that your QoS mechanisms are functioning correctly, you can isolate the satellite modem’s performance by introducing both a network emulator and traffic generator into your test lab.

The network emulator allows you to mimic the characteristics of a satellite network in a more controlled, repeatable way than using a live link. The traffic generator lets you create multiple streams including web browsing, video streaming, and VoIP traffic. Then, you can analyze the measurements per stream to determine how much packet loss and latency each stream is experiencing. If your traffic management is functioning properly your VoIP call should be prioritized and experience fewer network impairments, but fairness should be delivered to other less critical traffic as well. 

Resilience and Link Outages

Resilience refers to maintaining acceptable service levels despite network disruptions such as bad weather, hardware malfunction, or link outages. Since satellite networks are notoriously volatile it is important to test devices and applications to ensure resiliency. Many satellites are arranged as a part of a constellation network. In this instance, if a link goes down, it may reconnect to another satellite instead of just buffering until it can reconnect. The conditions of the new link may not be the same as the initial connection – similarly to bouncing off various cell towers.

Using network emulation, you can recreate network outage scenarios and build paths with differing network impairments to test resilience.  Introducing traffic generation allows you to send a mix of application traffic to verify that the traffic reaches its destination and the DUT will perform as expected despite the interruption.  You can even validate that QoS and ToS were met by observing whether the critical traffic was given higher priority when the connection was compromised.

Interbeam Satellite Handover

Some Satellites revolve around the earth at high speed and often the vessel communicating with the satellite is moving too.  It is not uncommon that communication will need to switch from one satellite to another as one moves out of range, this change is called an interbeam handover. As the connection switches, even a smooth transition can lead to a spike in packet loss, but you could also experience a small outage and rarely the link could go down altogether. Using network emulation you can recreate the conditions of the handover such as packet loss and intermittent outages in your test lab before you go live. Adding traffic generation allows you to split up network traffic into multiple streams so you can watch the performance of each specific stream to understand where any problems are occurring. You can identify which links are taking too long to recover and how that impacts performance and the end users’ experience.

Trust Apposite Technologies’ Satellite Performance Testing

Whether you are ensuring the performance of mission-critical systems or enterprise applications, testing over satellite networks can present some unique and complex challenges. 

Implementing proper test tools can help mitigate some of the difficulties associated with testing over real satellite links or help provide realism to a lab environment to ensure deterministic results. Using devices like network emulators and traffic generators to test and analyze application performance can help minimize performance degradation, improve quality of experience, reduce the cost of testing and accelerate deployments.

Apposite Technologies has more than a dozen years of experience helping enterprises and defense agencies successfully deploy applications over satellite. Contact us for more information.

Subscribe to our newsletter to get the latest updates from Apposite Technologies