example_oaisim_enb_ue_mme_virtual.txt 4.17 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
#/*
# * 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.0  (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
# */

gauthier's avatar
gauthier committed
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
# 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:
gauthier's avatar
gauthier committed
76
yang@yang:~/openair4G/trunk/cmake_targets$ ./build_oai --oaisim
gauthier's avatar
gauthier committed
77 78 79 80 81

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:
gauthier's avatar
gauthier committed
82
yang@yang:~/openair4G/trunk/cmake_targets$ tools/run_enb_ue_virt_s1 -m /tmp -K /tmp/enb_ue_virt_s1_itti.log
gauthier's avatar
gauthier committed
83 84


gauthier's avatar
gauthier committed
85 86 87
Putting some IP UL/DL traffic in the bearer:
ping -s 1000 -m 1 192.168.12.100 -I oip1
 
gauthier's avatar
gauthier committed
88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109

################
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)