OpenAirInterface OAI入门教程 2 (运行模式)
来源:互联网 发布:卫星遥感数据招标公告 编辑:程序博客网 时间:2024/06/05 04:00
OpenAirInterface OAI入门教程 2
最近有不少同学发邮件问我关于OAI的问题,为了方便大家交流,我建立了一个OAI的学生讨论QQ群,群号 512786903。有兴趣的同学欢迎加入交流。
同时,我和同学建立了一个问题交流论坛,http://www.opencenter.cn,欢迎同学们在论坛上面交流问题。
前不久写了一个关于OAI 仿真平台的入门教程,关注的人不少(说实话,其实少得可怜~-~)。现在继续深入,写一些关于OAI SDR实现相关的教程。
OAI主要线程
SDR系统对数据处理的实时性要求非常好,特别是对于LTE这种要求时隙对齐的系统。由于Ubuntu系统不是一个实时操作系统,为了尽量满足OAI的实时性要求,OAI软件必然要采用多线程处理的方式来提高计算机的数据处理能力。
eNB线程
OAI的eNB主要包含3个线程,eNB_thread,eNB_thread_tx 和 eNB_thread_rx。其中eNB_thread 主要负责与射频外设(如USRP)进行数据交互,即把要发送的数据写入USRP,把射频外设接收的数据传输给电脑。eNB_thread_tx,顾名思义,就是处理eNB侧发送数据的线程,其中包含从RRC到PHY层,从PBCH,PSS等到PDSCH各个信道的数据发送处理。对应的,eNB_thread_rx主要负责eNB侧接收信号的线程。
UE线程
OAI UE主要有4个线程,相比OAI eNB多了1个线程。4个线程分别是UE_thread,UE_thread_rx, UE_thread_tx 和UE_thread_sync。类似的,UE_thread负责与射频外设交互数据,UE_thread_tx负责处理UE要发送的基带数据,UE_thread_rx负责处理UE接收到的数据。最后一个线程UE_thread_sync负责与eNB保持同步。有人可能会疑惑,为什么eNB没有同步线程呢?因为在LTE系统里面,eNB只需要一直不停的收发即可,如果UE想要收发数据,就必须乖乖与eNB保持同步。
OAI运行模式
OAI的SDR平台主要可以分为三种模式来运行:
OAI eNB(PHY)+ OAI UE (PHY)
这种模式下,OAI eNB与OAI UE都只起了物理层,即MAC、RLC、PDCP和以上的层都没有。这很适合用来验证和实现物理层的算法。而且,根据笔者的测试,这种模式也是三种模式里面最为稳定的。毕竟,如果物理层都不稳,上层就无从谈起了。
OAI eNB + OAI UE without S1
这种模式下,OAI eNB和OAI UE主要起了PHY,MAC,RLC和PDCP层等功能,RRC和NAS层的功能较少或者没有。这种模式下OAI会在eNB侧和UE侧各启动一个虚拟网卡oai0,可以直接进行业务传输。这种模式非常适合用来做全协议栈的数据传输测试,算法验证等。因为没有EPC的影响,开发起来比较灵活。但是从实测来看,这种模式目前稳定性一般。
OAI EPC + OAI eNB + OAI UE
这种模式下,OAI把LTE的整个协议栈都运行起来了,包括EPC,eNB和UE。当然,我们也可以直接用商用终端接入我们的基站,即我们的手机或者LTE数据卡可以直接接入SDR基站,甚至可以通过EPC的SPGW连接互联网。说白了,这就是一个完整的伪基站。但是从实测结果来看,这套系统不是很稳定,尤其是OAI UE。
此外,上述三个运行模式都可以与其他的SDR平台互相连接。比如我们可以用OAI的UE换成srsUE,或者把OAI的EPC换成Amarisoft MME。
- OpenAirInterface OAI入门教程 2 (运行模式)
- OpenAirInterface OAI 入门教程 1
- OpenAirInterface OAI 入门教程 1
- OpenAirInterface运行OAI eNB和OAI UE without S1 接口
- Ubuntu 17.04 安装 OpenAirInterface (OAI)教程
- OpenAirInterface (OAI) 应用场景
- OpenAirInterface OAI 代码分析
- Ubuntu 17.04 安装 OpenAirInterface (OAI)修订教程
- OpenAirInterface OAI 学生讨论QQ群
- OAI eNB + OAI UE without S1 安装 运行 教程
- OpenAirInterface仿真LTE PHY(物理层)说明
- OAI LTE, open air interface ,成功实现 Open Air Interface (OAI LTE)
- Photoshop入门教程(四):混合模式
- OpenAirInterface 使用USRP时UHD库的问题(备注recover办法)
- OpenAirInterface安装教程
- OpenAirInterface安装说明
- XML入门教程(2)
- JSP入门教程(2)
- JS正则表达式语法详解
- 腾讯云搭建多终端《你画我猜》Socket服务器
- struts2
- python学习笔记,类型转换出错的解决方法!
- 类型信息
- OpenAirInterface OAI入门教程 2 (运行模式)
- TCP、UDP 缓冲区笔记
- 正则表达式
- 设计模式学习--建造者模式
- php 以三维数组里的某个字段(字段是二维的)为键重新组合。
- Java自然语言处理NLP工具包
- Android Orientation Sensor(方向传感器)详解与应用
- MapReduce和HDFS
- Re:从零开始的实习生活04----盘点window对象中location和history