Skip to content

Commit 61d1022

Browse files
committed
Minor adjustments to the README.md
1 parent bb484c1 commit 61d1022

File tree

1 file changed

+51
-34
lines changed

1 file changed

+51
-34
lines changed

README.md

Lines changed: 51 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,35 @@
1-
# LTE-based 5G Broadcast Transmitter
2-
3-
This repository holds the standalone LTE-based 5G Broadcast transmitter part of the 5G-MAG Reference Tools
1+
# LTE-based 5G Broadcast Transmitter
42

53
## Introduction
64

7-
[]
5+
This repository holds the standalone LTE-based 5G Broadcast transmitter part of the 5G-MAG Reference Tools.
86

97
### Specifications
108

11-
A list of specification related to this repository is available in the [Standards Wiki](https://github.com/5G-MAG/Standards/wiki/MBMS-&-LTE-based-5G-Broadcast:-Relevant-Specifications).
9+
A list of specification related to this repository is available in
10+
the [Standards Wiki](https://github.com/5G-MAG/Standards/wiki/MBMS-&-LTE-based-5G-Broadcast:-Relevant-Specifications).
1211

1312
### About the implementation
1413

15-
This implementation of an LTE-Based 5G Broadcast transmitter is based on the existing MBMS implementation in [srsRAN_4G](https://github.com/srsran/srsRAN_4G) eNodeB, modified to include a feature set of 3GPP Rel-17 LTE-based 5G Terrestrial Broadcast. It also includes a basic MBMS gateway which creates a virtual network interface sgi_mb which receives IP multimedia traffic. Note that an instance of an EPC is also required to be executed as part of the srsRAN_4G implementation. The eNodeB generates an LTE-based 5G Broadcast radio-frequency signal (I/Q samples) which can then be input to a USRP.
14+
This implementation of an LTE-Based 5G Broadcast transmitter is based on the existing MBMS implementation
15+
in [srsRAN_4G](https://github.com/srsran/srsRAN_4G) eNodeB, modified to include a feature set of 3GPP Rel-17 LTE-based
16+
5G Terrestrial Broadcast. It also includes a basic MBMS gateway which creates a virtual network interface sgi_mb which
17+
receives IP multimedia traffic. Note that an instance of an EPC is also required to be executed as part of the srsRAN_4G
18+
implementation. The eNodeB generates an LTE-based 5G Broadcast radio-frequency signal (I/Q samples) which can then be
19+
input to a USRP.
1620

17-
Note that the implementation lacks an M2 interface, therefore control plane data is obtained from configuration files. Only a single MCH can be transmitted.
21+
Note that the implementation lacks an M2 interface, therefore control plane data is obtained from configuration files.
22+
Only a single MCH can be transmitted.
1823

19-
Additional information can be found in the srsRAN documentation: https://docs.srsran.com/projects/4g/en/latest/app_notes/source/embms/source/index.html
24+
Additional information can be found in the srsRAN
25+
documentation: https://docs.srsran.com/projects/4g/en/latest/app_notes/source/embms/source/index.html
2026

2127
A list of currently supported features is available [here](https://github.com/5G-MAG/rt-mbms-tx/wiki/Features).
2228

2329
## Install dependencies
2430

2531
In Ubuntu:
32+
2633
````
2734
sudo apt-get install build-essential cmake libfftw3-dev libmbedtls-dev libboost-program-options-dev libconfig++-dev libsctp-dev
2835
````
@@ -62,36 +69,46 @@ srsran_install_configs.sh user
6269

6370
## Running
6471

65-
Enter to the build directory and lunch the MBMS gateway, and the srsEPC, in diferent terminals.
66-
72+
Open the `build` directory and launch the MBMS gateway, and the srsEPC, in different terminals.
73+
6774
````
6875
sudo ./srsepc/src/srsmbms
6976
sudo ./srsepc/src/srsepc
7077
````
71-
72-
It could be launch in background appending `` & `` at the end of the command
73-
74-
After running the MBMS gateway, executing `` ip a `` in the terminal we should see a network interface called `` sgi_mb ``. We need now to route the IP traffic to this new interface. Since it's a multicast interface we use smcroutectl.
75-
76-
Restarting the multicast route table:
77-
78-
`` sudo smcroutectl restart ``
79-
80-
Add a rule to redirect the traffic from the physical network interface of the PC with a specific IP address, to the sgi_mb. To know whats the name of the physical network interface run `` ip a `` in the termianl an look for one with a name similar to en0 or enp0.
81-
82-
`` sudo smcroutectl add eno0 239.255.1.1 sgi_mb ``
83-
84-
The IP address is the IP address source of the incoming IP traffic.
85-
86-
If the IP traffic is been generated in the PC using PCAP, ffmpeg or similar, it is recommended to create a rule that avoids the multicast traffic goes to the network where the PC are connected, flooding it with multicast traffic. That can be avoided with the following:
87-
88-
`` sudo route add -net 239.255.1.0 netmask 255.255.255.0 dev sgi_mb ``
89-
90-
At this point we can create an IP transmission from a multimedia file using ffmpeg, from example, with the following command we will transmit a MPEG TS to the transmitter endlessly:
91-
92-
`` while true; do ffmpeg -re -i file.ts -c copy -map 0 -f rtp_mpegts rtp://239.255.1.1:9988; done ``
93-
94-
The last step is to lunch the eNodeB. The eNode needs the conf files where it reads the configuration values. Copy `` the sib.conf.mbsfn `` to the folder `` rt-tx-poc/build/ ``, and enb.conf to `` /root/.config/srsran/enb.conf ``. Lunch the eNB with `` sudo ./srsenb``.
78+
79+
Both can be launched in the background appending `` & `` at the end of the command.
80+
81+
After running the MBMS gateway, executing `` ip a `` in the terminal should show a network interface
82+
called `` sgi_mb ``. The IP traffic needs to be routed to this new interface. Since it's a multicast interface
83+
`smcroutectl` is used.
84+
85+
Run the following command to restart the multicast route table:
86+
87+
`` sudo smcroutectl restart ``
88+
89+
Add a rule to redirect the traffic from the physical network interface of the PC with a specific IP address, to the
90+
sgi_mb. To get the name of the physical network interface run `` ip a `` in the terminal and look for an interface with
91+
a
92+
name similar to en0 or enp0.
93+
94+
`` sudo smcroutectl add eno0 239.255.1.1 sgi_mb ``
95+
96+
The IP address is the source of the incoming IP traffic.
97+
98+
If the IP traffic is been generated on the PC using PCAP, ffmpeg or similar, it is recommended to create a rule that
99+
avoids the multicast traffic to go to the network where the PC is connected to avoid flooding it with multicast traffic.
100+
For that reason run the following command:
101+
102+
`` sudo route add -net 239.255.1.0 netmask 255.255.255.0 dev sgi_mb ``
103+
104+
At this point an IP transmission from a multimedia file using ffmpeg can be created. As an example, execute the following
105+
command to transmit an infinite running MPEG TS to the transmitter:
106+
107+
`` while true; do ffmpeg -re -i file.ts -c copy -map 0 -f rtp_mpegts rtp://239.255.1.1:9988; done ``
108+
109+
The last step is to launch the eNodeB. The eNodeB needs the following configuration files:
110+
Copy `` the sib.conf.mbsfn `` to the folder `` rt-tx-poc/build/ ``, and `enb.conf` to `` /root/.config/srsran/enb.conf ``.
111+
Launch the eNB with `` sudo ./srsenb``.
95112

96113
## Development
97114

0 commit comments

Comments
 (0)