本帖最后由 ynnop 于 2017-4-21 17:53 編輯 1. 硬件要求 (1)當前基于oai軟件建立的eNB和UE是使用Intel架構的PC機,要求支持(SSE, SSE2, SSS3, and SSE4),以下CPU是經過測試驗證通過的: Generation 3/4/5/6 Intel Core i5,i7 Generation 2/3/4 Intel Xeon Intel Atom Rangeley, E38xx, x5-z8300 個人使用了Gigabyte GB-BRIX-7HA-6500微型電腦來部署OAI無線網,因為其BIOS設置C,P狀態較為容易。 (2)對于UE,以下CPU是測試通過的 Intel:registered: Core:tm: i5-6600K CPU @ 3.50GHz × 4 Intel:registered: Core:tm: i5-6600 CPU @ 3.30GHz × 4 (3)支持的RF SDR有如下幾種 USRP B210 http://www./product/details/UB210-KIT USRP X310 http://www./product/details/X310-KIT BladeRF http:/// LimeSDR http:/// EURECOM EXPRESSMIMO2 RF, http://openairinterface. 注:一般不建議使用虛擬機來部署,如果的確要使用,要確保接入到RF硬件被授予透傳以及CPU flag(c,p狀態)設置正確,此外,要求安裝低延遲系統內核和分配足夠的CPU資源。 2. 軟件要求 (1)建議使用Ubuntu Linux 來部署,對于openairinterface5g的master branch分支建議使用low-latency kernel 3.19內核的Ubuntu 14.04 LTS版本,對于develop branch(v5.0以后)分支,可以使用low-latency kernel 3.8內核的Ubuntu 16.04版本。 (2)測試通過的master branch 分支為Ubuntu 14.04.3 LTS/Linux Kernel version 3.19(低延遲內核) ,測試通過的develop branch(v5.0以后)為Ubuntu 16.04.2 LTS/Linux Kernel version 3.8(低延遲內核) 3. 軟件安裝步驟 (1)安裝Ubuntu 14.04.3版本,執行sudo apt-get update更新軟件源(重要),之后可安裝Systemback軟件,該軟件可以實現Ubuntu下還原點的創建,方便后續安裝過程中有問題是可以回退。 (2)安裝低延遲內核 low-latency kernel 3.19 sudo apt-get update sudo apt-get install linux-image-3.19.0-61-lowlatency linux-headers-3.19.0-61-lowlatency 安裝完成后 使用命令 uname –a 查看,應該顯示為: (3)在BIOS里關掉所有功耗管理性能(sleep states, in particular C-states,CPU frequencyscaling (Intel SpeedStep)): (4)在/etc/default/grub 文件中添加如下兩行代碼,關閉系統中的c,p-state狀態 GRUB_CMDLINE_LINUX_DEFAULT='quiet intel_pstate=disable' GRUB_CMDLINE_LINUX_DEFAULT='processor.max_cstate=1 intel_idle.max_cstate=0 idle=poll' 執行:sudo update-grub,更新系統 (5)在/etc/modprobe.d/blacklist.conf 文件末尾(如不存在,自行創建一個)添加如下代碼: blacklist intel_powerclamp (6)關閉CPU超線程(Disable CPU Frequency scaling) Install cpufrequtils: sudo apt-get install cpufrequtils 編輯文件/etc/default/cpufrequtils (如不存在,自行創建一個) sudo gedit /etc/default/cpufrequtils 在文件中添加一行代碼。 GOVERNOR='performance' 執行如下命令,關閉ondemand daemon,防止重啟后被改寫. sudo update-rc.d ondemand disable (6)重啟系統,安裝i7z軟件來進行上述設置的檢查 重啟系統 sudo apt-get update sudo apt-get install i7z sudo i7z 有如下顯示:所有CPU內核要在C0 為100%。 注:Wi-Fi/Bluetooth We have sometimes noticed real time issues while running lte-softmodem with USRP even after following above procedure. If you happen to face similar problems you should turn off Wi-Fi/Bluetooth (or remove respective drivers, if possible). This fixed the issue on some of our machines. (6)下載oai無線網eNB代碼: sudo apt-get update sudo apt-get install git 添加證書(Add a certificate from gitlab. to your Ubuntu 14.04 installation:) echo -n | openssl s_client -showcerts -connect gitlab.:443 2>/dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' | sudo tee -a /etc/ssl/certs/ca-certificates.crt 下載代碼:(master brangch) git clone https://gitlab./oai/openairinterface5g.git (7)運行Auto build腳本安裝缺少的包 cd ~/openairinterface sudo apt-get update source oaienv #非常重要,必須執行這條環境變量設置 cd cmake_targets ./build_oai -I --eNB -x --install-system-files -w USRP #for USRP ./build_oai -I --eNB -x --install-system-files -w EXMIMO #for EXMIMO ./build_oai -I --eNB -x --install-system-files -w BLADERF #for BladeRF ./build_oai -I --eNB -x --install-system-files -w LMSSDR #for LmsSDR ./build_oai –h 為查看安裝幫助文件。 注:如果之前已經存在 OAI build,可用 ./build_oai –c或-C移去已經存在的編譯文件。 -c 代表,--clean,Erase all files to make a rebuild from start 只刪除編譯文件 -C 代表—clean all,Erase all files made by previous compilations, installations將刪除所有的編譯文件以及預安裝的其他文件,包括編譯文件夾 一般可用-c,完全清理可用-C (8)修改eNB配置文件(以USRP B210為例,文件位于 ~/openairinterface5g/targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.conf) tracking_area_code = '1'; mobile_country_code = '208'; mobile_network_code = '93'; ///以上數據要求與核心網保持一致。 ////////// MME parameters: mme_ip_address = ( { ipv4 = '192.168.12.62'; ///mme接口IP地址。 ipv6 = '192:168:30::17'; active = 'yes'; preference = 'ipv4'; } ); NETWORK_INTERFACES : { ENB_INTERFACE_NAME_FOR_S1_MME = 'eth0'; ///eNB本端 s1-C接口網卡名稱。 ENB_IPV4_ADDRESS_FOR_S1_MME = '192.168.12.82/24';///eNB本端 s1-C接口IP地址。 ENB_INTERFACE_NAME_FOR_S1U = 'eth0'; ///eNB本端 s1-U接口網卡名稱。 ENB_IPV4_ADDRESS_FOR_S1U = '192.168.12.82/24'; ///eNB本端 s1-U接口IP地址。 ENB_PORT_FOR_S1U = 2152; # Spec 2152 ///eNB本端 s1-C接口端口號。 }; (8)編譯運行eNB cd ~/openairinterface5g sudo apt-get update source oaienv #非常重要,必須執行這條環境變量設置 ./cmake_targets/build_oai -w USRP -x -c --eNB cd cmake_targets/lte_build_oai/build sudo -E ./lte-softmodem -O $OPENAIR_DIR/targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.conf -d sudo -E ./lte-softmodem -h #(查看安裝幫助文檔) You may print out the help message to see other options. A summary of the above options is given below. · -O: configuration file · -m: set the maximum downluink MCS · -t: set the maximum uplink MCS · -x: set the transmission mode, valid option: 1 · -W: enable L2 Wireshark messages on localhost Note: some other options are very useful for debugging purposes, such as -V, which enables VCD and generates a log file (/tnp/openair_dump_eNB.vcd) with a lot of details, and -d, which enables software oscilloscope with interactive graphic interfaces. Since both consume a lot of computing resources (one is heavy on file access, the other one is heavy on graphics), you are recommended to disable them for normal use. 注:要確保eNB的S1接口連接正常,否則無法運行。 當eNB連接成功后,再Terminal終端應該可以看到如下信息: [SCHED][eNB] Started eNB main thread on CPU 1 TID 5273 eNB_thread: mlockall in ... eNB_thread: mlockall out ... waiting for sync (eNB_thread) TYPE Entering ITTI signals handler |
|