The objective of this example OpenSAND deployment example is to provide a very simple setup, focused on setp-by-step approach. All commands are run manually on the command-line interface, from network configuration to binary startup.
This section will guide you through the steps required:
This is an example of how to setup the network to emulate a simple SATCOM System using OpenSAND. The topology of the considered platform is described in the figure below. It includes a satellite (SAT), a Gateway (GW0) and a Satellite Terminal (ST1). Once this setup is done, refer to IP mode or Ethernet mode following the interconnection method selected.
The OpenSAND network is a overlay network (Platform Network, 192.168.63.0/24) running on top of the Emulation network (192.168.18.0/24). It uses TAP devices to implement the DVB stack over the Emulation network. The Platform network will show characteristics similar to a real SATCOM network using DVB-S2/RCS2 protocols.
It is assumed that the networking configuration for the Emulation Network is already done.
The setup will follow the steps below, on the ST and GW0 entities:
The satellite does not need any specific networking configuration.
Creation of the TAP interface:
$ ip tuntap add mode tap opensand_tap
Create the OpenSAND bridge:
$ ip link add name opensand_br type bridge
Attach the OpenSAND interface to the bridge:
$ ip link set dev opensand_tap master opensand_br
And set interfaces up:
$ ip link set opensand_br up
$ ip link set opensand_tap up
The opensand bridges should have been assigned a MAC address @opensand_br. You can see this address with :
$ ip addr show dev opensand_br
Remember the ST and GW bridges addresses since they will be used in the next configuration step.
Each entity need to access their configurations files in
/etc/opensand so they know which parameters of the simulation they need to load.
In this example, only the necessary modification for a working example are show.
See the configuration manual of OpenSAND files for more detail.
First, get the reference scenario configuration files, located in the folder
Now, several files can be edited :
topology.confto specify how entities are interconnected;
core_global.confto specify generic parameters of the simulation;
For a detailed description of the configuration, go to OpenSAND Configuration.
The example provided emulates a classical DVB-S2/RCS2 setup, and no particular modification of the configuration files is needed. However, the following sections of
topology.conf need to be edited:
First, add the bridge addresses of the terminal (id 1) and gateway (id 0) to the sarp section, replacing with the bridge adresses from the previous section:
<sarp> <!-- The default destination terminal if no one is found, -1 for none --> <default>-1</default> <ethernet> [...] <!-- MAC for terminal --> <terminal_eth mac="00:00:00:00:00:02" tal_id="1"/> <terminal_eth mac="00:00:00:00:00:01" tal_id="0"/> <ethernet> <sarp>
Second, modify the addresses in the sat_carrier section accordingly:
<sat_carrier> <spot id="1" gw="0"> <carriers> <!-- SAT to GW/ST control (CR, TBTP, SoF) --> <carrier id="0" type="ctrl_out" ip_address="22.214.171.124" port="55000" ip_multicast="true"/> <!-- GW/ST to SAT control (CR, TBTP, SoF) --> <carrier id="1" type="ctrl_in" ip_address="192.168.18.15" port="55001" ip_multicast="false"/> <!-- SAT to GW Logon --> <carrier id="2" type="logon_out" ip_address="192.168.18.42" port="55002" ip_multicast="false"/> <!-- ST to SAT Logon --> <carrier id="3" type="logon_in" ip_address="192.168.18.15" port="55003" ip_multicast="false"/> <!-- SAT to ST Data --> <carrier id="4" type="data_out_st" ip_address="126.96.36.199" port="55004" ip_multicast="true"/> <!-- ST to SAT Data --> <carrier id="5" type="data_in_st" ip_address="192.168.18.15" port="55005" ip_multicast="false"/> <!-- SAT to GW Data --> <carrier id="6" type="data_out_gw" ip_address="192.168.18.42" port="55006" ip_multicast="false"/> <!-- GW to SAT Data --> <carrier id="7" type="data_in_gw" ip_address="192.168.18.15" port="55007" ip_multicast="false"/> </carriers> </spot> </sat_carrier>
Now, upload files [TODO].
In this setup, all statistics and logs will be directed to a local directory in
In order to use the opensand collector, see [TODO].
First, start the satellite:
opensand-sat -a 192.168.18.15 -c /etc/opensand
Start the Gateway:
opensand-gw -a 192.168.18.1 -c /etc/opensand -t opensand_tap -i 0 -f ~/opensand_simulation
Start the Satellite Terminal:
opensand-st -a 192.168.18.42 -c /etc/opensand -t opensand_tap -i 1 -f ~/opensand_simulation
In this mode, we will use IP to communicate from gateway to ST. In ordre to do so, we assign IP adresses to the opensand bridges, by issuing the following commands :
$ ip address add 192.168.63.254/24 dev opensand_br
$ ip address add 192.168.63.1/24 dev opensand_br
One can setup routing over the satellite network by configuring routing on ST and GW0, as described in Opensand networking manual.
This is an example of how to setup the network to emulate a simple SATCOM System in Ethernet mode using OpenSAND. The topology of the considered platform is described in the figure below as well as IPv4 addresses. It includes a satellite (SAT), a Gateway (GW0) and a Satellite Terminal (ST1). Work-stations server (SRV) and client (CLT) belonging to distant terrestrial networks, are on the same IP subnet and communicate over satellite segment.
In this setup, additional configuration is needed in
topology.conf since OpenSAND does not implement yet learning of MAC addresses. For each end-user connected behind terminal 1, a sarp must be filled to bind this MAC address with its corresponding terminal ID. This process is needed in order for the satellite carriers to work properly.
<sarp> <!-- The default destination terminal if no one is found, -1 for none --> <default>-1</default> <ethernet> [...] <!-- MAC for terminal --> <terminal_eth mac="01:02:03:00:00:02" tal_id="1"/> <terminal_eth mac="01:02:03:00:00:01" tal_id="1"/> <ethernet> <sarp>
Visit the Easy Minimal CLI OpenSAND setup if you want to easily launch the network commands.