[LTE-Sim]使用小结

软件下载:链接地址

下载下来之后在Linux环境中解压,

然后进入文件是用“make”指令编译,这样LTE-Sim就安装完成了

不过可能安装会不成功,你可以找找看,可能是某些软件没装,有问题可以去Google Group相应的组去问问看,那里有很多使用者(不过可能需要,万恶的GFW)

Google Group地址:https://groups.google.com/forum/#!forum/lte-sim


有关添加LTE下行链路调度算法的方法:

1. 创建两个新的算法文件 (dl-new-ag-packet-scheduler.h 和dl-new-ag-packet-scheduler.cpp) ,然后把他放在\src\protocolStack\mac\packet-scheduler目录并编译。

g++ dl-new-ag-packet-scheduler.cpp(此条要切记不要忘了,否者后续编译不会成功的)

2. 然后在EnodeB.cpp(\src\device)中包含头部
#include "../protocolStack/mac/packet-scheduler/dl-new-ag-packet-scheduler.h"
然后在其内部添加
               ENodeB::SetDLScheduler (ENodeB::DLSchedulerType type)
               {
               EnbMacEntity *mac = (EnbMacEntity*) GetProtocolStack ()->GetMacEntity ();
               PacketScheduler *scheduler;
               switch (type)
               {
                  case ENodeB::DLScheduler_TYPE_NEW_AG:
                          scheduler = new  DL_NEW_AG_PacketScheduler ();
                          scheduler->SetMacEntity (mac);
                           mac->SetDownlinkPacketScheduler (scheduler);
                            break;
               }

3. 然后修改EnodeB.h. In this part:
enum DLSchedulerType
   {
     DLScheduler_TYPE_MAXIMUM_THROUGHPUT,
     DLScheduler_TYPE_PROPORTIONAL_FAIR,
     DLScheduler_TYPE_FLS,
     DLScheduler_TYPE_MLWDF,
     DLScheduler_TYPE_EXP,
     DLScheduler_LOG_RULE,
     DLScheduler_EXP_RULE,
     DLScheduler_TYPE_NEW_AG,
   };
                   
4. 添加新的算法到我想要的场景,我是把他添加到single-cell-with-interference中的
  case 7:
      downlink_scheduler_type = ENodeB::DLScheduler_TYPE_NEW_AG;
      std::cout << "Scheduler EXP_AG "<< std::endl;
      break;

所有都添加完了之后,回到LTE-Sim主目录重新编译

输入如下指令:

make clean

make


之后可以进入运行相应地场景

你可能感兴趣的:(NS3)