如何使用Openair4G的OTG以及进行ping操作

来源:互联网 发布:c语言fopen文件路径 编辑:程序博客网 时间:2024/06/01 10:37

如何使用Openair4G的OTG以及进行ping操作


为了使后续可以把文章所述的内容作为一个有效的参考,我会在文章开头把所使用的svn信息列出来。

=========================================================

URL: http://svn.eurecom.fr/openair4G/trunk

Relative URL: ^/trunk

Repository Root: http://svn.eurecom.fr/openair4G

Repository UUID: 818b1a75-f10b-46b9-bf7c-635c3b92a50f

Revision: 7528

Node Kind: directory

Schedule: normal

Last Changed Author: navid

Last Changed Rev: 7528

Last Changed Date: 2015-06-04 07:45:55 -0700 (Thu, 04 Jun 2015)

=========================================================

1> OTG 

OTG,Openair4G Transmission Generator,传输生成器。现在可以与ITTI结合进行测试仿真。

测试流程如下:

    首先在cmake_targets目录下,执行 ./build_oai --oaisim -c,当然你也可以选择XFORMS或者其他选项进行编译,之后到oaisim_noS1_build_oai/build目录下,
        + 如果与ITTI一起: 执行命令  ./oaisim_nos1 -O ../../../targets/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.generic.oaisim.local_no_mme.conf  -a  -c 5  | grep -i otg
       + 如果不带 ITTI: 需要在../CMakeList.txt文件中修改设置set (  ENABLE_ITTI False ) ,之后进行编译执行即可: cmake ..; make oaisim_nos1 -j6; ./oaisim_nos1 -a -c5 | grep -i otg

       - 其中选项-c 5 指示出选择targets/SIMU/EXAMPLES/OSD/WEBXML/template_5.xml配置文件。


2> Ping 

同时,也可以使用nasmesh驱动,发送IP包(ping, iperf, d-itg, etc)到OAI的协议栈。此时,最好不要使用OTG功能,你可以在xml文件中删除<APPLICATION_CONFIG>。
    - 在oaisim_noS1_build_oai/build目录下,执行 make nasmesh; sudo insmod CMakeFiles/nasmesh/nasmesh.ko (使用dmesg命令查看是否插入相应模块)
    - 在../CMakeList.txt文件中进行如下设置set (  OAI_NW_DRIVER_USE_NETLINK False ), set (  ENABLE_ITTI False ), and set (  OAI_NW_DRIVER_TYPE_ETHERNET False ) ,执行命令cmake ..; make oaisim_nos1 -j6; sudo -E ./oaisim_nos1 -a -l7 | grep -i pdcp ; 
    - 打开另一个终端,执行ifconfig命令,你应该能够看到如下的oai网络接口,针对eNB 和 UE。

oai0      Link encap:AMPR NET/ROM  HWaddr   
          inet addr:10.0.1.1  Bcast:10.0.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

oai1      Link encap:AMPR NET/ROM  HWaddr   
          inet addr:10.0.2.2  Bcast:10.0.2.255  Mask:255.255.255.0
          UP BROADCAST RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100 

          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)


   -之后,执行ping 10.0.1.2 (eNB-> UE) 和 ping 10.0.2.1 (UE->eNB) ,在默认的DRB (DRB 1 )配置下。 这样就可以看到如下的PDCP的log信息。
 
        [PDCP][D][FRAME     0][eNB][NETLINK][IP->PDCP] INST 0: Received socket with length 100 (nlmsg_len = 84) on Rab 1 
    and 
        [PDCP][D]PDCP->IP TTI 0 INST 0: Preparing 84 Bytes of data from rab 1 to Nas_mesh

同样的工作,也可以在lte-softmodem上实现,这需要大家自己去尝试。

0 0
原创粉丝点击