Version 13 (modified by 7 years ago) ( diff ) | ,
---|
Table of Contents
Evolved Packet Core (ePC)
- Mobility Management Entity (MME)
- Home Subscriber Server (HSS)
- Signaling Gateway Service Node (SGSN)
OpenAirInterface ePC
GENI OAI ePC
The deployment of the BBN GENI ePC was captured to provide an outline of the required installation, configuration and run-time requirements for an ePC/eNobeB setup on a GENI resource. See the OpenAirInterface ePC GENI Site Deployment page for a detailed look at steps required to add ePC/eNobeB resources to the GENI LTE multi-point VLAN and enabling the ability to share your site ePC/eNobeB setup with other GENI sites.
Note: For GENI deployments it is strongly suggested that a dedicate bare metal node be reserved. Testing on VM has consistently shown that VM are not a viable selection for running the OAI ePC software.
Preliminary ePC Installation Guidelines
Instructions below were initially provided as a guide to installing the OAI ePC, for latest verified approach to using GENI ePC see the OpenAirInterface ePC GENI Site Deployment page.
Machine/VM Configuration
The OpenAirInterface ePC should operate on a bare metal PC, VM, or container. Restrictions are due to kernel support, not timing.
OAI Reference Pages
This wiki page expands on the following steps from the eurecom wiki:
Operating system
Testing has been done on Ubuntu 14.04 64 bit and Ubuntu 16.04. However, OAI ePC requires the GTP tunnel module which is available from kernel > 4.8. You can obtain this via the ubuntu HWE kernels.
apt-get install linux-image-generic-hwe-16.04
On GENI xen vm depending on the configuration of the hypervisor, the guest OS may not be able to select a different kernel from that used for provisioning. The reference image was built on a bare-metal pc, and then migrated to a VM successfully.
Configuration
- hostnames
- For this tutorial, we use the hostnames nano and hss, and the dommainname orbit-lab.org
- append the following lines to /etc/hosts:
127.0.1.1 nano.orbit-lab.org nano 127.0.1.1 hss.orbit-lab.org hss
- remove /etc/hostname
- On each boot, you must run
hostnamectl set-hostname nano
- This sets the current short and full hostnames to the correct entry from
/etc/hosts
- This sets the current short and full hostnames to the correct entry from
- logout and back in to use the new hostname
- to check, you must use
getent hosts name
- getent uses gethostbyname, while host and nslookup query DNS directly
- Get sources
- Follow the EPC instructions at https://gitlab.eurecom.fr/oai/openairinterface5g/wikis/GetSources
- EPC config files
- Follow the EPC related steps at https://gitlab.eurecom.fr/oai/openairinterface5g/wikis/HowToConnectCOTSUEwithOAIeNBNew
- On a separate machine/hardware, the eNB steps can be followed to set up an OAI eNB, or a commercial eNB can be pointed to the EPC bind IP
- Follow the steps until configuration files have been copied to
/usr/local/etc/oai
- The following modifications will need to be made to files in that subdirectory
- in mme.conf:
- set realm to the chosen dommainname, in this case
orbit-lab.org
- set hss_hostname to the chosen short hss hostname
hss
- set MCC and MNC in GUMMEI_LIST and TAI_LIST to chosen values
001, 01
- set network interfaces as appropriate. If mme, hss, and spgw are on the same machine, only S1 interface will not be localhost.
- set realm to the chosen dommainname, in this case
- in spgw.conf
- set s12 interface as needed, it will be the same as the s1 interface above.
- set pgw interface for external/ client egress traffic
- enable/disable masquerate and tpc clamping as needed
- If s1 interface MTU is 1500, a maximum MTU of 1488 must be advertised to clients, and MSS clamping enabled to prevent fragmentation. This is due to 12 byte GTP overhead.
- set DNS IP addresses, this will be advertised to clients.
- in freediameter config files
- set identity and realm as appropriate in both hss and mme files.
- in hss.conf
- set mysql username and password
- set OP key used for sim cards. This example uses all 1s, as that is the configuration of the ORBIT sim cards.
- this is used to generate keys for each sim. SIMs can also be configured with hardcoded keys, once the database is set up.
- edit fqdns at bottom of hss.config to enable 001 01 plmn *. fqdn defined in spec, but you can just replace 208 93 with 001 001. #BOTH MUST BE 3 DIGITS
- in mme.conf:
- Follow the EPC related steps at https://gitlab.eurecom.fr/oai/openairinterface5g/wikis/HowToConnectCOTSUEwithOAIeNBNew
- generate FD keys
- in
openair-cn/SCRIPTS
./check_hss_s6a_certificate /usr/local/etc/oai/freeDiameter/ hss.orbit-lab.org
./check_mme_s6a_certificate /usr/local/etc/oai/freeDiameter/ nano.orbit-lab.org
- in
- Compile and install hss, mme, and spgw
cd YOUR_openair-cn_DIRECTORY cd SCRIPTS ./build_mme -I #Need to run only once to install missing packages ./build_hss -I #Need to run only once to install missing packages ./build_spgw -I #Need to run only once
- set up DB for hss
./run_hss -i ~/openair-cn/SRC/OAI_HSS/db/oai_db.sql #Run only once to install database
- you can specify a different database dump, to replicate set ups.
- append info to DB as appropriate, using the file fill_sql.rb
- Adds mme hostname as entry in table mmeidentity
- adds user/sim to users table, and pdn to pdn table
- mmeidentity for user must match index of mme used
- imsi specified for both user and pdn
- specify user key with UNHEX function
Notes and References
- GENI
- EPC URN:
urn:publicid:IDN+instageni.rutgers.edu+image+ch-geni-net:OAIEPCOrbit
- EPC fixed?:
urn:publicid:IDN+instageni.rutgers.edu+image+ch-geni-net:oaiepc477
- newest EPC:
urn:publicid:IDN+instageni.rutgers.edu+image+ch-geni-net:epc447scripted
- URL:
https://www.instageni.rutgers.edu/image_metadata.php?uuid=b300f9dc-0611-11e7-a074-000000000000
- URL:
- eNB
- URN:
urn:publicid:IDN+instageni.rutgers.edu+image+ch-geni-net:OAIeNBRutgers
- URL:
https://www.instageni.rutgers.edu/image_metadata.php?uuid=6844496a-9d2a-11e6-90f4-000000000000
- URN:
- EPC URN:
- RCC/RRU:
- EPC needs link on 10.3, for vlan access
- EPC needs tunnel endpoint on 10.3, or via landing1, for demo sctp
- RCC needs 10.3 link to mme, as well as link to RRU, in this case tunne, 10.10, or 10.40
- RRU needs 10.3 to mme, as well as link to RCC (need to work on this, two tunnels?
- issues:
- Cannot seem to connect to vlan3701, fia-xia, 10.3.x.x
- vlan is now named GENI-LTE-Multipoint
- local connection to vlan 60, grid, 10.10
- need to create connection to vlan 70, outdoor, 10.30
- Cannot seem to connect to vlan3701, fia-xia, 10.3.x.x
- MTU
- up to 12 octets for GTP-U header, advertise mtu 1460-12 = 1448
- 12 octets for l2tp + 20 for ip, 8 for udp, 40 total. tunnel mtu 1460.
- resources
Attachments (2)
-
OAI-ePC.png
(21.6 KB
) - added by 7 years ago.
OAI ePC Architercture
-
fill_sql.rb
(2.0 KB
) - added by 7 years ago.
script to populate database.
Download all attachments as: .zip