-
Notifications
You must be signed in to change notification settings - Fork 6
Table of content
⚠️ TODO: This page needs to be updated.
The Gateway (GW) is one of the three entities that form part of the core of OpenSAND. It not only emulates a satellite gateway, but also other entities, such as a NCC (Network Control Center). It provides the following functionalities:
- Transmission/reception of network packets via the emulated satellite link.
- Simulation of physical layer characteristics: attenuation (loss of packets), and propagation delay.
- Emulation of access layer mechanisms inspired by DVB-RCS2, DVB-RCS and DVB-S2, which include scheduling outgoing packets, RRM (allocation management and processing capacity requests sent from terminals), and processing log on requests from terminals.
- Encapsulation/desencaptulation of network packets to DVB-like frames, using the appropriate protocols (e.g. RLE, GSE).
- QoS on network packets arriving at the LAN interface.
OpenSAND also supports a way of splitting the gateway entity into several hosts (see page opensand:emulated_satcom_features:system:split_gateway:index for more information). So far, the only possibility is to split the GW into two components: a Network&Access Gateway (GW-NET-ACC) and a Physical Gateway (GW-PHY). The former handles the Network and Access layers, whereas the latter handles the Physical Layer and the emulated satellite link. Split GWs implement the same satcom features than a standard GW. TODO link
The GW entity is composed of a stand-alone binary which is launched by the OpenSAND daemon upon the start of a simulation (signalled by an OpenSAND manager). On start, it attaches itself to the emulated interface (either opensand-tun
or opensand-tap
), and begins the emulation of a gateway.
The exact command used by the OpenSAND daemon to launch the binary is transmitted from the Manager, and stored in the file /var/cache/sand-daemon/start.ini
.
Like any OpenSAND entity, the GW is composed of several blocks, each providing functionalities at different levels. The blocks are defined by the opensand:testbed_description:core:real_time:index. TODO link
The GW is composed of the blocks pictured in the image at the right.
The Lan Adaptation block provides an interface between network packets arriving from the LAN, and the DVB block. OpenSAND supports IP and Ethernet network packets.
This block also supports the utilization of plugins, such as ROHC.
The GW shares the same Lan Adaptation Block as the ST. Be careful, any change to this code will affect both entities.
The Encapsulation block implements the encapsulation of packets transmitted by the gateway, and the desencapsulation of received packets. The supported encapsulation protocols are GSE, RLE, although protocols with variable length may be encapsulated in the DVB block (e.g. RLE and GSE). Only the protocols supported by the standard are used.
The GW shares the same Encapsulation Block as the ST. Be careful, any change to this code will affect both entities. Regenerative SATs use a different version of this block.
The DVB block implements DVB-like access layer mechanisms, including:
- handling of DVB-like signaling.
- handling logon requests of associated terminals.
- desencapsulation of received RCS2/RCS-like bursts, and encapsulation of BBFrames.
- encapsulation of variable length protocols (RLE and GSE).
- management of radio resources: carriers, spots and categories.
- handling of capacity requests from terminals (DAMA), and Constant Rate Allocation).
- handling of random multiple Access techniques (Slotted Aloha and CRDSA).
- handling of Fade Mitigation Techniques (e.g. variable MODCOD).
- packet scheduling with QoS functionalities.
The Physical Layer block simulates the physical characteristics of the link between the gateway and the satellite. The physical characteristics simulated in OpenSAND are the propagation delay, and the signal attenuation. On the GW, these characteristics are both simulated just for the link between the satellite and the gateway.
The GW shares the same Physical Layer Block as the GW. Be careful, any change to this code will affect both entities.
The Satellite Carrier block provides an interface between the emulation network, and the OpenSAND core. It is charged of packing and unpacking the emulated satellite frames on UDP datagrams. For more information about how the emulated channels work, refer to the opensand:testbed_description:core:emulated_channel:index. TODO link
The GW shares the same Physical Layer Block as the ST and SAT. Be careful, any change to this code will affect all entities.