################################################################################ # OpenAirInterface # Copyright(c) 1999 - 2014 Eurecom # # OpenAirInterface is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) anylater version. # # # OpenAirInterface is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with OpenAirInterface.The full GNU General Public License is # included in this distribution in the file called "COPYING". If not, # see <http://www.gnu.org/licenses/>. # # Contact Information # OpenAirInterface Admin: openair_admin@eurecom.fr # OpenAirInterface Tech : openair_tech@eurecom.fr # OpenAirInterface Dev : openair4g-devel@eurecom.fr # # Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE # ################################################################################ # file example_oaisim_enb_ue_mme_virtual.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, 1 ue (NAS still not virtualized in UE) in virtualised mode, 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 --oaisim Configuring the eNB: The default configuration file for the eNB is trunk/targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.generic.oaisim.local_mme.conf Running eNB: yang@yang:~/openair4G/trunk/cmake_targets$ tools/run_enb_ue_virt_s1 -m /tmp -K /tmp/enb_ue_virt_s1_itti.log Putting some IP UL/DL traffic in the bearer: ping -s 1000 -m 1 192.168.12.100 -I oip1 ################ 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)