-
Notifications
You must be signed in to change notification settings - Fork 8
link budget
Table of content
OpenSAND implements, in the physical layer, link budget calculations to emulate the loss of packets due to attenuation.
The SNR value is calculated for each leg of the communication (uplink and downlink), where it is affected by attenuation. On reception, the total SNR is calculated, and compared against a reference value, which can depend on the type of MODCOD used. If the total SNR is below the reference, then the packet is considered lost.
Link budget calculation and error emulation in OpenSAND is implemented by four different sub-systems:
- Attenuation: specifies the attenuation for a given link.
- Minimal Condition: specifies the total SNR threshold for QEF communications.
- Error Insertion: specifies the action taken when a packet is below the minimal condition.
- Clear Sky Condition: specifies the clear sky SNR for a given link.
The SNR for each link and for each packet is calculated with the following expression:
And the total link budget:
The obtained
Although the Link Budget calculation is always performed for every packet, it is only relevant when attenuation is enabled.
Link Budget is configured through the different blocks that form part of it:
- Attenuation
- Minimal Condition
- Error Insertion
- Clear Sky Condition
Each of these components can be configured for the uplink and downlink of every ST and GW. Minimal condition and Error Insertion can only be configured for downlinks.
Refer to the attenuation page for more information about the configuration and use of the attenuation.
The Minimal Condition specifies the threshold value that will determine whether a packet is lost or not. Since the total SNR is calculated on reception, this function is only configured for downlinks.
There are two types of minimal condition implemented in OpenSAND: Constant
and ACM-Loop
.
Minimal Condition used by default. It implements a constant Minimal Condition, with default value equal to 0 dB (this means that all packets with SNR < 0 dB will be dropped).
Parameter name | Description | Value type | Range of values | Default value |
---|---|---|---|---|
threshold | Constant threshold value for Quasi-Error Free communications, expressed in dB | double | - | 0 |
When using the ACM Loop minimal condition plugin, the threshold value for QEF communications of the module Minimal Condition varies depending on the MODCOD of the packet received, which is stored in the frame header. The reference values are loaded from the MODCOD definition files used by the DVB layer for FMT simulation.
Each MODCOD has a minimal condition threshold value below which a packet is dropped. A packet is dropped if:
There is no configuration associated with this plugin.
The Error Insertion plugin determines the action to take when the total SNR of a packet is below the threshold level.
For the time being, OpenSAND only implements a single Error Insertion plugin, called Gate
, which drops packets when they are below the minimal condition threshold.
No configuration is needed for this plugin.
Clear sky condition represents the value of the SNR for a link when there is no attenuation. There is no plugin associated to this value.
The parameter clear_sky_conditions
specifies the constant SNR for a given link.
Each of the subsystems provides different probes to keep track of the link budget calculations. These probes are available for all hosts of type ST and GW, under the Phy
section:
-
downlink_attenuation
: stores the value of the attenuation (in dB) on the downlink for this host. -
downlink_clear_sky_condition
: stores the value of the SNR for clear sky conditions (in dB) on the downlink for this host. -
downlink_total_cn
: stores the value of the total SNR (in dB) for this host. -
drops
: stores the number of packets with errors in the interval. -
minimal_condition
: stores the threshold value (in dB) for QEF communications. -
uplink_attenuation
: stores the value of the attenuation (in dB) on the uplink for this host. -
uplink_clear_sky_condition
: stores the value of the SNR for clear sky conditions (in dB) on the uplink for this host.
A simple way to validate the Link Budget feature, is to add an enough attenuation, and to test if packets are lost.
All of the Link Budget subsystems are implemented in the Physical Layer Block. Some features are implemented in the Upward channel, while other on the Downward channel.
All functions related to minimal condition and error insertion, are performed on the Upward channel (receiving side of STs and GWs) of the Physical Layer Block. On the Downward channel, the SNR of packets being sent is calculated. Since all configurations related to attenuation, minimal condition, error insertion, and clear sky condition are performed only on ST and GW hosts, the satellite does not intervene in the calculation of the link budget.
Refer to the attenuation page for more information about the implementation of the attenuation sub-system.