103 lines
3.9 KiB
Plaintext
Executable File
103 lines
3.9 KiB
Plaintext
Executable File
#/*
|
|
# * Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
|
|
# * contributor license agreements. See the NOTICE file distributed with
|
|
# * this work for additional information regarding copyright ownership.
|
|
# * The OpenAirInterface Software Alliance licenses this file to You under
|
|
# * the OAI Public License, Version 1.1 (the "License"); you may not use this file
|
|
# * except in compliance with the License.
|
|
# * You may obtain a copy of the License at
|
|
# *
|
|
# * http://www.openairinterface.org/?page_id=698
|
|
# *
|
|
# * Unless required by applicable law or agreed to in writing, software
|
|
# * distributed under the License is distributed on an "AS IS" BASIS,
|
|
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# * See the License for the specific language governing permissions and
|
|
# * limitations under the License.
|
|
# *-------------------------------------------------------------------------------
|
|
# * For more information about the OpenAirInterface (OAI) Software Alliance:
|
|
# * contact@openairinterface.org
|
|
# */
|
|
|
|
# file example_enb_exmimo_mme_hss.txt
|
|
# brief
|
|
# author Lionel Gauthier
|
|
|
|
TODO: a document file, PDF for example, with nice pictures, etc
|
|
This example shows how to generate and launch enb, mme_gw, hss executables on the same host:
|
|
|
|
################
|
|
Configuration
|
|
################
|
|
freediameter 1.2.0 (not 1.1.5, 1.1.6,...) has to be installed and patched (done by check_install_oai_software() calling install_freediameter_from_source() in script build_helper)
|
|
|
|
Config File:
|
|
/etc/hosts must contain the fqdn of the MME and HSS (same since both run on the same host):
|
|
(assuming the realm is openair4G.eur)
|
|
127.0.0.1 localhost
|
|
127.0.1.1 yang.openair4G.eur yang
|
|
...
|
|
|
|
################
|
|
BUILDING, RUNNING
|
|
################
|
|
|
|
Building HSS:
|
|
yang@yang:~/openair4G/trunk/cmake_targets$ tools/build_hss -c --connect-to-mme yang.openair4G.eur -t -T --realm openair4G.eur
|
|
|
|
Configuring the HSS:
|
|
In oai_db (easier for newbies to access HSS database through http://127.0.0.1/phpmyadmin)
|
|
In table mmeidentity, enter the record corresponding to your MME:
|
|
(idmmeidentity, mmehost, mmerealm)
|
|
In table pdn, enter the record allowing an IMSI to connect to an APN
|
|
In table users, enter the record corresponding to your USIM card.
|
|
|
|
Running the HSS:
|
|
yang@yang:~/openair4G/trunk/cmake_targets$ sudo tools/run_hss -g
|
|
|
|
|
|
|
|
Building the MME-GW:
|
|
yang@yang:~/openair4G/trunk/cmake_targets/tools$ ./build_epc -c -d -t -T --s6a-server
|
|
|
|
Configuring the MME-GW:
|
|
You can configure in file openair4G/trunk/cmake_targets/tools/epc.local.enb.conf.in the following parameters:
|
|
MCC/MNC of your network
|
|
SGI interface (outgoing interface of the S/P-GW)
|
|
Integrity algorithms, Ciphering algorithms
|
|
Please note that DNS addresses are hardcoded in source code (TODO in list).
|
|
|
|
Running the MME-GW:
|
|
yang@yang:~/openair4G/trunk/cmake_targets/tools$ sudo ./run_epc -l -g -K
|
|
|
|
|
|
|
|
Building eNB:
|
|
yang@yang:~/openair4G/trunk/cmake_targets$ ./build_oai --eNB
|
|
|
|
Running eNB:
|
|
yang@yang:~/openair4G/trunk/cmake_targets$ sudo tools/run_enb_s1_exmimo -c /home/yang/openair4G/trunk/targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.yang.epc.eurecom.conf -S -K
|
|
|
|
|
|
################
|
|
Tools available:
|
|
###############
|
|
|
|
1) itti_analyser (list messages exchanged between protocol layers)
|
|
2) xforms (Layer 1)
|
|
3) mscgen (under construction, but can give some results now)
|
|
(http://www.mcternan.me.uk/mscgen/)
|
|
We use the software to generate sequence diagrams
|
|
with traces generated during the execution of the eNB.
|
|
After the enb execution:
|
|
yang@yang:...$ cd /tmp
|
|
yang@yang:/tmp$ /home/yang/openair4G/trunk/targets/SCRIPTS/msc_gen.py
|
|
The results are located in the current directory (/tmp in this example) in a folder. The name of the folder
|
|
is the current date (for example: 2015-04-08_20.34.10).
|
|
The results are input files for the mscgen tool containing events or messages and the
|
|
corresponding generated png files.
|
|
4) vcd (timing mesurements)
|
|
|
|
|
|
|