|
|
# How to Connect OAI eNB with COTS UE via the OAI RRH GW (USRP-B210)
|
|
|
|
|
|
In this tutorial, we will describe how to connect a commercial off-the-self UE (i.e. smartphone and LTE dongle) with the C-RAN version of the OAI eNB. As it is dictated by the C-RAN concept the radio front end hardware is detached from the eNB and is incorporated to a remote radio head (RRH) instead which is connected to the eNB. Within the framework of OAI this concept is realized as follows:
|
|
|
* the OAI eNB functionality is extented so that OAI eNB is able to interface via Ethernet a RRH
|
|
|
* the OAI eNB functionality is extended so that OAI eNB is able to interface via Ethernet a RRH
|
|
|
* a new software entity is introduced, namely the OAI RRH GW which acts as an abstraction between radio front end equipment (e.g. USRPB210, BLADERF and LMSSDR) and the OAI eNB
|
|
|
|
|
|
The present tutorial describes how to deploy and run OAI EPC, OAI eNB and OAI RRH GW on different hosts as depicted in the following figure:
|
... | ... | @@ -34,7 +34,7 @@ not contain the latest UHD. The OAI build script will try to download the latest |
|
|
automated installation and compilation may fail due to the conflict or missing libraries. So
|
|
|
the simplest way is to uninstall GNURadio and outdated UHD libraries.
|
|
|
|
|
|
The tutorial set up is depicted once more in the following figure, this time containing interconnection information (i.e. IP addesses and Ethernet interface names) that will be used in certain configuration files.
|
|
|
The tutorial set up is depicted once more in the following figure, this time containing interconnection information (i.e. IP addresses and Ethernet interface names) that will be used in certain configuration files.
|
|
|
|
|
|
![topology_wiki_if_info.png](HowToConnectCOTSUEwithOAIeNBviaRRHGW/topology_wiki_if_info.png)
|
|
|
|
... | ... | @@ -85,7 +85,7 @@ Look at [AutoBuild](AutoBuild) for more details. |
|
|
|
|
|
#### Step 1: Edit the EPC configuration file: `~/openair-cn/BUILD/EPC/epc.conf.in`
|
|
|
|
|
|
As depicted in Figure 2 the IP addresse of EPC+HSS is `192.168.12.4` and the Ethernet interface name is `eth0`. Also we assume that the UE that will be used will be configured with the following information ([SIMInfo](SIMInfo)):
|
|
|
As depicted in Figure 2 the IP address of EPC+HSS is `192.168.12.4` and the Ethernet interface name is `eth0`. Also we assume that the UE that will be used will be configured with the following information ([SIMInfo](SIMInfo)):
|
|
|
* MCC (Mobile Country Code): `208`
|
|
|
* MNC (Mobile Network Code): `93`
|
|
|
* TAC (Tracking Area Code): `123`
|
... | ... | @@ -93,7 +93,7 @@ As depicted in Figure 2 the IP addresse of EPC+HSS is `192.168.12.4` and the Eth |
|
|
* Ki: 8BAF473F2F8FD09487CCCBD7097C6862 (32 digits)
|
|
|
* OP (Operator Key): 11111111111111111111111111111111 (32 digits)
|
|
|
|
|
|
Using this information the configuration file of EPC is edidted as follows:
|
|
|
Using this information the configuration file of EPC is edited as follows:
|
|
|
|
|
|
|
|
|
```
|
... | ... | @@ -191,7 +191,7 @@ You can print out the help message to see what these options mean using the comm |
|
|
* --RRH: installs RRH GW, i.e., rrh_gw.
|
|
|
* --install-system-files: installs OAI required files in Linux system.
|
|
|
* -w: adds the hardware support, which is USRP in our case.
|
|
|
* -t: adds fronthaul trasport protocol support (currently only ETHERNET is supported)
|
|
|
* -t: adds fronthaul transport protocol support (currently only ETHERNET is supported)
|
|
|
* --install-optional-packages: Installs optional packages
|
|
|
|
|
|
__Notes:__
|
... | ... | @@ -205,7 +205,7 @@ Look at [AutoBuild](AutoBuild) for more details. |
|
|
#### Step 1: Run RRH GW
|
|
|
|
|
|
All the required configuration for RRH GW is given via input arguments which will be adjusted with respect to the following:
|
|
|
* we assume that `UDP` will be used as the tarsport protocol in the link between RRH GW and eNB
|
|
|
* we assume that `UDP` will be used as the transport protocol in the link between RRH GW and eNB
|
|
|
* only `one` eNB will be connected to RRH GW (see Figure 1)
|
|
|
* RRH GW will have a radio front end equipment (USRPB210) attached to it, so there is `no emulation operation` (see Figure 1)
|
|
|
* the name of the Ethernet interface for RRH GW is `eth0` (see Figure 2).
|
... | ... | @@ -226,16 +226,16 @@ You may print out the help message to see other options. A summary of the above |
|
|
* -m: choose between UDP and RAW version of Ethernet (UDP:0 RAW:1)
|
|
|
* -x: choose between real time or emulated operation (in this case real time operation is used)
|
|
|
|
|
|
__Note__: some other options are very useful for debugging purposes, such as `-v`, which enables VCD and generates a log file (/tmp/openair_dump_rrh.vcd) with a lot of details and `-g9` which sets logging information to debug level. Finally, there is the option `-t`, which prints periodic round trip delay measurements between RRH GW and eNB. Since all three of them consume computing resources (e.g. VCD is heavy on file accesss), you are recommended to disable them for normal use.
|
|
|
__Note__: some other options are very useful for debugging purposes, such as `-v`, which enables VCD and generates a log file (/tmp/openair_dump_rrh.vcd) with a lot of details and `-g9` which sets logging information to debug level. Finally, there is the option `-t`, which prints periodic round trip delay measurements between RRH GW and eNB. Since all three of them consume computing resources (e.g. VCD is heavy on file access), you are recommended to disable them for normal use.
|
|
|
|
|
|
When OAI RRH GW is up waiting for a connection from the eNB, you should see something like the following:
|
|
|
|
|
|
```
|
|
|
...
|
|
|
[RRH][I]eth0: IP address: 192.168.12.1
|
|
|
[RRH][I]UDP mode selected for ethenet.
|
|
|
[RRH][I]UDP mode selected for ethernet.
|
|
|
[ETHERNET]: Initializing openair0_device for RRH ...
|
|
|
[RRH] has loaded ETHERNET trasport protocol.
|
|
|
[RRH] has loaded ETHERNET transport protocol.
|
|
|
[RRH] local ip addr 192.168.12.1 port 50000
|
|
|
[RRH] binding mod_0 to 192.168.12.1:50000
|
|
|
```
|
... | ... | @@ -266,7 +266,7 @@ You can print out the help message to see what these options mean using the comm |
|
|
* -x: adds a software oscilloscope feature to the produced binaries.
|
|
|
* --install-system-files: installs OAI required files in Linux system.
|
|
|
* -w: adds the hardware support, which is None in our case (radio hardware support is associated with RRH GW).
|
|
|
* -t: adds fronthaul trasport protocol support (currently only ETHERNET is supported)
|
|
|
* -t: adds fronthaul transport protocol support (currently only ETHERNET is supported)
|
|
|
* --install-optional-packages: Installs optional packages
|
|
|
|
|
|
__Notes:__
|
... | ... | @@ -277,7 +277,7 @@ Look at [AutoBuild](AutoBuild) for more details. |
|
|
|
|
|
### 3.2 Configuration and execution
|
|
|
|
|
|
#### Step 1: Edit the eNB configuration file (`~/openairinterface5g/targets/PROJECT/GENERIC-LTE-EPC/CONF/enb.band7.tm1.rrh.usrpb210.conf`),
|
|
|
#### Step 1: Edit the eNB configuration file (`~/openairinterface5g/targets/PROJECT/GENERIC-LTE-EPC/CONF/enb.band7.tm1.rrh.usrpb210.conf`)
|
|
|
|
|
|
The file is edited appropriately with respect to Figure 2:
|
|
|
* IP address of EPC/HSS is `192.168.12.4`
|
... | ... | @@ -286,7 +286,7 @@ The file is edited appropriately with respect to Figure 2: |
|
|
* IP address of RRH GW is `192.168.12.1`
|
|
|
* RRH GW will have a `USRPB210` attached to it
|
|
|
|
|
|
It is assumed that `UDP` ETHERNET communication will be used and finally, we again assume that the UE that will be used will be configured with the information mentioned in `Step 1: Edit the EPC configuration file`. Using this information the configuration file of eNB is edidted as follows:
|
|
|
It is assumed that `UDP` ETHERNET communication will be used and finally, we again assume that the UE that will be used will be configured with the information mentioned in `Step 1: Edit the EPC configuration file`. Using this information the configuration file of eNB is edited as follows:
|
|
|
|
|
|
```
|
|
|
tracking_area_code = "1";
|
... | ... | |