public DlLoadControlService(int currentTTI, LCThresholdParam lCThresholdParam, SatisficationThParam sfCalThParam) { base.m_CurrentTTI = currentTTI; base.m_LCThresholdParam = lCThresholdParam; base.m_SatisficationThParam = sfCalThParam; this.m_GBRUserlist = new List<ISimulationUser>(); this.m_NonGBRUserlist = new List<ISimulationUser>(); base.grade = new List<priandisEdge>(); base.usersInGradeDic = new Dictionary<priandisEdge, List<ISimulationUser>>(); }
/// <summary> /// 上行准入控制的初始化 /// </summary> /// <param name="iSimulationCarrierList"></param> public void Init(List<ISimulationCarrier> iSimulationCarrierList) { foreach (IAdmissionCarrier carrier in iSimulationCarrierList) { this.InitUserTag(carrier.UlUserList); carrier.AdmissionCarrierTag = new AdmissionCellTag(); } this.m_OfflineThresholdParam = new OfflineThresholdParam(); this.m_LBThresholdParam = new LBThresholdParam(); this.m_LCTHresholdParam = new LCThresholdParam(); this.m_SatisficationThParam = new SatisficationThParam(); this.SetULParam(this.m_OfflineThresholdParam, this.m_LBThresholdParam, this.m_LCTHresholdParam, this.m_SatisficationThParam); }
public void MyTestInitialize() { m_SatisificationCalculate = new SatisficationCalculate(m_currentTTI, m_sfCalTh); m_sfCalTh = new SatisficationThParam(); m_VoiceUserList = new List<ISimulationUser>(); m_UserList = new List<ISimulationUser>(); m_VoiceUser = new SimulationUser(); m_GBRUserList = new List<ISimulationUser>(); m_DataUserList = new List<ISimulationUser>(); m_NonGBRUserList = new List<ISimulationUser>(); m_User = new SimulationUser(); Service serv = new UnionPsService(); m_User.LTEUser = new User(); SimulationUser user1 = new SimulationUser(); SimulationUser user2 = new SimulationUser(); m_GBRUserList.Add(user1); m_GBRUserList.Add(user2); m_UserList.Add(m_User); m_DataUserList.Add(m_User); m_VoiceUserList.Add(m_User); m_User.AdmissionUserTag = new AdmissionControlUserTag(); AdmissionControlUserTag tag2 = m_User.AdmissionUserTag as AdmissionControlUserTag; m_User.LTEUser.Service = serv; m_User.LTEUser.Service = new Huawei.UNet.Traffic.Interface.UnionPsService(); NetworkTerminal networkTerminal = new NetworkTerminal(); ((Huawei.UNet.Traffic.Interface.UnionPsService)(m_User.LTEUser.Service)).PSServiceDic = new Dictionary<Huawei.UNet.Frame.Interface.NetWorkType, Huawei.UNet.Traffic.Interface.Service>(); ((Huawei.UNet.Traffic.Interface.UnionPsService)(m_User.LTEUser.Service)).PSServiceDic.Add(NetWorkType.LTE, new Huawei.UNet.Traffic.LTEModel.LTEService()); m_UlMinThroughputDemand = new UnionPsService(); m_UlTxEff = new UnionPsService(); m_UlOffset = new UnionPsService(); }
/// <summary> /// 设置诸多门限参数 /// </summary> /// <param name="offlineTh"></param> /// <param name="lbTh"></param> /// <param name="lcTh"></param> /// <param name="sfCalTh"></param> private void SetULParam(OfflineThresholdParam offlineTh, LBThresholdParam lbTh, LCThresholdParam lcTh, SatisficationThParam sfCalTh) { offlineTh.DataDropThreshold = SimulationConstant.UL_DATA_DROP_THRESHOLD_NONSERVICED; offlineTh.DataSdThreshold = SimulationConstant.UL_DATA_DROP_SDTHRESHOLD; offlineTh.VoiceDropLossThrshold = SimulationConstant.UL_VOICE_DROP_LOSSCOUNT_THRESHOLD; offlineTh.VoiceDropThreshold = SimulationConstant.UL_VOICE_DROP_THRESHOLD_NONSERVICED; lbTh.LbBalanceTime = SimulationConstant.UL_LoadBalanceTime; lbTh.FirstLbTime = SimulationConstant.MLB_START_TIME; lbTh.LbPeriod = SimulationConstant.MLB_EXECUTE_PERIOD; lbTh.MLBEdgeLoadTh = SimulationConstant.MLBEdgeLoadTh; lbTh.MLBERSRPDiffTh = SimulationConstant.MLBRSRPDiffTh; lbTh.MlbRationTh = SimulationConstant.MLBRatioTh; lbTh.NoMLBRatioTh = SimulationConstant.NoMLBRatioTh; lcTh.FirstLCTime = SimulationConstant.UL_FirstLCTime; lcTh.LcGBRSatisfyTh = SimulationConstant.LCGBRSatisfyTh; lcTh.LcNonGBRSatisfyTh = SimulationConstant.LCNonGBRSatisfyTh; lcTh.LcPeriod = SimulationConstant.LOADCONTROL_EXECUTE_PERIOD; lcTh.LcVoiceSatisfyTh = SimulationConstant.LCVoiceSatisfyTh; lcTh.LcLoadRatioTh = SimulationConstant.LCRatioTh; lcTh.LcGBRRbTh = SimulationConstant.LCGBRRbTh; sfCalTh.VOICE_SD_THRESHOLD = SimulationConstant.VOICEOFFLINE_SD_THRESHOLD; }
public void DlAdmissionControlExecute_Test1() { m_SatisThParam = new SatisficationThParam(); m_SatisCal = new SatisficationCalculate(m_CurrentTTI, m_SatisThParam); DlAdmissionControl m_dladdmissionControl = new DlAdmissionControl(); //m_DlAdmission.Init(); SimulationUser duser1 = new SimulationUser(); m_DlHODataUserList = new List<ISimulationUser>(); m_DlHODataUserList.Add(duser1); m_Carrier.DLHandOverDataUserList = m_DlHODataUserList; m_DlAdmission.Init(m_ISimulationCarrierList); m_DlAdmission.DlAdmissionControlExecute(m_ISimulationCarrierList, m_CurrentTTI); Assert.AreEqual(m_ISimulationCarrierList.Count, 1); }