[General] output-scalar-file-append = false # Network configuration network = simu5g.simulations.NR.networks.SingleCell_Standalone sim-time-limit = 10s warmup-period = 1s seed-set = ${repetition} # Statistics output-scalar-file = ${resultdir}/${configname}/${repetition}.sca output-vector-file = ${resultdir}/${configname}/${repetition}.vec **.routingRecorder.enabled = false # General parameters **.amcType = "NRAmc" **.targetBler = 0.01 **.blerShift = 5 *.configurator.config = xmldoc("./demo.xml") # Floorplan definition **.mobility.constraintAreaMaxX = 1000m **.mobility.constraintAreaMaxY = 1000m **.mobility.constraintAreaMinX = 0m **.mobility.constraintAreaMinY = 0m **.mobility.constraintAreaMinZ = 0m **.mobility.constraintAreaMaxZ = 0m **.mobility.initFromDisplayString = false # --------------------------------------------------------# # --------------------------------------------------------# # Config "Single-UE" # # Simple scenario with one UE attached to one gNB. A remote # server sends 800 kbps CBR traffic to the UE # [Config Single-UE] # gNodeB position *.gnb.mobility.initialX = 500m *.gnb.mobility.initialY = 500m # UE configuration *.numUe = 1 # UE position (400m far from the gNB) *.ue[*].mobility.initialX = 500m *.ue[*].mobility.initialY = 900m # connect the UE's NIC (NR side) to the corresponding serving gNB *.ue[*].macCellId = 0 *.ue[*].masterId = 0 *.ue[*].nrMacCellId = 1 *.ue[*].nrMasterId = 1 # Application Setup *.ue[*].numApps = 1 *.server.numApps = 1 *.ue[*].app[*].typename = "CbrReceiver" *.ue[*].app[*].localPort = 1000 *.server.app[*].typename = "CbrSender" *.server.app[*].PacketSize = 1000 # send 800 Kb/s *.server.app[*].sampling_time = 0.01s *.server.app[*].destAddress = "ue["+string(ancestorIndex(0))+"]" # obtain the address of the client by reading its index in the array of Apps *.server.app[*].destPort = 1000 *.server.app[*].localPort = 3088+ancestorIndex(0) *.server.app[*].startTime = uniform(0.01s,0.05s) # --------------------------------------------------------# # --------------------------------------------------------# # Config "BgTraffic" # # Add one background cell serving 10 background UEs in order # to generate some inter-cell interfence to the UE served by # the foreground cell. Each background UE generates 800 kbps # CBR traffic # [Config BgTraffic] extends = Single-UE ########## Background cells configuration ############# *.numBgCells = 1 *.bgCell[*].bgScheduler.isNr = true *.bgCell[*].bgScheduler.txPower = 23 # position of the background gNodeB *.bgCell[*].mobility.initialX = 750m *.bgCell[*].mobility.initialY = 1000m # number and position of background UEs in the background cells *.bgCell[*].bgTrafficGenerator.numBgUes = 10 *.bgCell[*].bgTrafficGenerator.bgUE[*].mobility.initialX = uniform(500m,1000m) *.bgCell[*].bgTrafficGenerator.bgUE[*].mobility.initialY = uniform(500m,1000m) # Background traffic in the background cells *.bgCell[*].bgTrafficGenerator.bgUE[*].trafficGeneratorType = "TrafficGeneratorCbr" *.bgCell[*].bgTrafficGenerator.bgUE[*].generator.startTimeDl = uniform(0s,0.05s) *.bgCell[*].bgTrafficGenerator.bgUE[*].generator.packetSizeDl = 1000B *.bgCell[*].bgTrafficGenerator.bgUE[*].generator.periodDl = 0.01s # --------------------------------------------------------# # --------------------------------------------------------# # Config "Multiple-UEs" # # Add a variable number of UEs in the foreground cell. All UEs # receive the same 800 kbps CBR traffic from the remote server # [Config Multiple-UEs] extends = BgTraffic # variable number of UEs *.numUe = ${numUes=1,5,10,15,20} # UEs position *.ue[*].mobility.initialX = uniform(0m,1000m) *.ue[*].mobility.initialY = uniform(0m,1000m) # the server has one app per client *.server.numApps = ${numUes} # include itervars in the output file names output-scalar-file = ${resultdir}/${configname}/${iterationvars}-${repetition}.sca output-vector-file = ${resultdir}/${configname}/${iterationvars}-${repetition}.vec # --------------------------------------------------------# # --------------------------------------------------------# # Config "CarrierAggregation" # # Configure the gNodeBs (both foreground and background) with Carrier Aggregation (CA). # gNodeBs use two Carrier Components (CCs, @2GHz and 6GHz respectively). UEs are # configured to use both CCs. # For the background cell, CA is modeled by adding another background cell in the same # position as the first one, and using different carrier frequency. # [Config CarrierAggregation] extends = Multiple-UEs ############### CA configuration ################ *.carrierAggregation.numComponentCarriers = 2 *.carrierAggregation.componentCarrier[0].carrierFrequency = 2GHz *.carrierAggregation.componentCarrier[0].numBands = 6 *.carrierAggregation.componentCarrier[1].carrierFrequency = 6GHz *.carrierAggregation.componentCarrier[1].numBands = 6 *.gnb.cellularNic.numCarriers = 2 *.gnb.cellularNic.channelModel[0].componentCarrierIndex = 0 *.gnb.cellularNic.channelModel[1].componentCarrierIndex = 1 *.ue[*].cellularNic.numNRCarriers = 2 *.ue[*].cellularNic.nrChannelModel[0].componentCarrierIndex = 0 *.ue[*].cellularNic.nrChannelModel[1].componentCarrierIndex = 1 ############ Background cells configuration ############# *.numBgCells = 2 *.bgCell[0].bgScheduler.carrierFrequency = 2GHz *.bgCell[0].bgScheduler.numBands = 6 *.bgCell[1].bgScheduler.carrierFrequency = 6GHz *.bgCell[1].bgScheduler.numBands = 6 *.bgCell[*].bgScheduler.txPower = 23 # --------------------------------------------------------# # --------------------------------------------------------# # Config "Numerology" # # Configure all the CCs to use variable numerologies # [Config Numerology] extends = CarrierAggregation # configure numerology for all component carriers *.carrierAggregation.componentCarrier[*].numerologyIndex = ${num = 0,2,4} *.bgCell[*].bgScheduler.numerologyIndex = ${num} # --------------------------------------------------------#