simulte tutorial
play

SimuLTE Tutorial Antonio Virdis University of Pisa - Italy - PowerPoint PPT Presentation

SimuLTE Tutorial Antonio Virdis University of Pisa - Italy Simulating device-to-device communications in OMNeT++ with SimuLTE: scenarios and configurations Giovanni Nardini, Antonio Virdis, Giovanni Stea University of Pisa - Italy Antonio


  1. SimuLTE Tutorial Antonio Virdis University of Pisa - Italy Simulating device-to-device communications in OMNeT++ with SimuLTE: scenarios and configurations Giovanni Nardini, Antonio Virdis, Giovanni Stea University of Pisa - Italy Antonio Virdis - SimuLTE 2016 1

  2. Outline • LTE Context • Simulator structure • Examples • LTE • LTE-Advanced • Towards 5G: D2D Antonio Virdis - SimuLTE 2016 2

  3. Data Req LTE Channel Quality Scheduling UE 1 UE 2 eNb 1ms UE 3 Antonio Virdis - SimuLTE 2016 3

  4. LTE eNb Antonio Virdis - SimuLTE 2016 4

  5. SimuLTE • OMNeT-based system-level simulator of LTE networks • Focused on testing algorithms for resource scheduling at large scale • INET based • Built as an additional NIC interface • Follow the evolution of cellular communications Antonio Virdis - SimuLTE 2016 5

  6. UE Nodes UDP TCP apps apps UDP TCP UE IP eNB LTE NIC Standard Hosts Antonio Virdis - SimuLTE 2016 6

  7. UE Layering UDP TCP apps apps UDP TCP SimuLTE IP LTE LTE NIC NIC PDCP PDCP RLC RLC MAC 1ms MAC PHY PHY Antonio Virdis - SimuLTE 2016 7

  8. Common Structure: Inheritance Base NIC eNB NIC UE NIC Base MAC Base RLC Base PHY eNB MAC UE MAC eNB RLC UE RLC eNB PHY UE PHY Antonio Virdis - SimuLTE 2016 8

  9. Goal: algorithms • Aim at implementing and testing resource-scheduling algorithms • Model resources . • Model resource management • Provide an API to users Antonio Virdis - SimuLTE 2016 9

  10. Tx/Rx modeling eNB UE RB OFDM K bit frequency 1 ms CQI Antonio Virdis - SimuLTE 2016 10

  11. Scheduling Available Data Scheduling N bit User Tx Allocator Pilot Policy Params M bit AMC Scheduler Schedule List UE Reports Antonio Virdis - SimuLTE 2016 11

  12. Scheduling Hierarchy • Scheduler Type and eNB Scheduler eNB eNB Scheduler UL Scheduler DL • Scheduling Policy Scheduling Policy MAX C/I PF DRR Antonio Virdis - SimuLTE 2016 12

  13. Example 1: ~2010 rel 8-9 • Simple network • Common parameters • Mobility • Application type • SimuLTE Parameters • Number of RBs • Scheduler type Antonio Virdis - SimuLTE 2016 13

  14. Example 1: ~2010 rel 8-9 # connect each UE to the eNB **.ue[*].macCellId = 1 Association **.ue[*].masterId = 1 **.deployer.numRbDl = 6 # Resources **.deployer.numRbUl = 6 **.nic.phy.channelModel = xmldoc ("config_channel.xml") **.mac.schedulingDisciplineDl = "MAXCI" Antonio Virdis - SimuLTE 2016 14

  15. Custom Scheduling Scheduling Policy • Inherit a scheduling policy (LteScheduler Class) • Two stages scheduling MAX C/I PF DRR • Prepare schedule list • Commit schedule list Policy 1 Policy 2 Policy 3 Schedule list Antonio Virdis - SimuLTE 2016 15

  16. Example 2: ~2013 rel 10-11 • LTE-advanced • Multiple cells • CoMP techniques • X2 Communication • Heterogeneous Networks • Dense Networks Antonio Virdis - SimuLTE 2016 16

  17. Example 2: ~2013 rel 10-11 **.ue1*.macCellId = 1 **.ue1*.masterId = 1 **.ue2*.macCellId = 2 Association **.ue2*.masterId = 2 **.ue3*.macCellId = 3 **.ue3*.masterId = 3 Transmission **.eNodeBTxPower = 40 Power In config_channel.xml <parameter name="multiCell-interference" type="bool" value="true"/> Interference? Coordination! (CoMP) Antonio Virdis - SimuLTE 2016 17

  18. Allocation Flexibility Scheduling getBlocks(n) Allocator Policy FLEXIBILITY USER FRIENDLY Scheduling getBlocks(n, limit ) Allocator Policy Joint Scheduler / Allocator Antonio Virdis - SimuLTE 2016 18

  19. External Cells: lightweight eNBs *.numExtCells = 2 #============= Configuration ============ *.extCell[*].txPower = 20 *.extCell[*].txDirection = "ANISOTROPIC" *.extCell[*].bandAllocationType = "RANDOM_ALLOC" *.extCell[*].bandUtilization = 0.5 #============= Positioning ============ *.extCell[0].position_x = 100m *.extCell[0].position_y = 600m *.extCell[0].txAngle = 315 *.extCell[1].position_x = 600m *.extCell[1].position_y = 600m *.extCell[1].txAngle = 225 Antonio Virdis - SimuLTE 2016 19

  20. Example 2: ~2013 rel 10-11 X2 to/from to/from IP LteX2App[] PDCP X2 RLC Manager MAC ... X2 User X2 User PHY LTE NIC **.x2Enabled = true *.eNodeB*.numX2Apps = 2 *.eNodeB*.x2App[*].server.localPort = 5000 + ancestorIndex(1) Antonio Virdis - SimuLTE 2016 20

  21. Example 3: NOW towards 5G Internet • Infrastructure vs D2D • Multicast or Unicast • Scheduling remains under control DL UL of the eNB eNodeB • UEs still need to request resources to the eNB UE1 UE2 • Enables frequency reuse UE3 UE4 Antonio Virdis - SimuLTE 2016 21

  22. UL Data Flow UL D2D PDCP • Data in the UL direction travels the whole stack RLC • Segmentation/concatenation • Error control • It follows a reverse path during MAC HARQ HARQ HARQ reception • D2D is given a separated path PHY Channel Model Antonio Virdis - SimuLTE 2016 22

  23. D2D: one-2-one 1 # enable D2D capabilities 2 *.eNodeB.d2dCapable = true 3 *.ueD2D*[*].d2dCapable = true • Enabling D2D 4 # select the AMC mode • AMC mode: D2D 5 *.eNodeB.nic.mac.amcMode = "D2D" • Peering relation 6 # set peering relationship • Static peering 7 *.ueD2DTx[0].nic.d2dPeerAddresses= "ueD2DRx[0]" • Dynamic peering not available 8 # select the CQI for D2D transmissions • Channel measurement 9 *.eNodeB.nic.phy.enableD2DCqiReporting = true 10 **.usePreconfiguredTxParams = false • Dynamic • Static 11 # set Tx Power 12 *.ueD2DTx[0].nic.phy.ueTxPower = 26 # in dB 13 *.ueD2DTx[0].nic.phy.d2dTxPower = 20 # in dB Antonio Virdis - SimuLTE 2016 23

  24. Simultaneous Transmissions • Transmitting UE can reuse the same frequencies • Interference between pairs can occur 3 • Infra or D2D? [Switch?] 2 • Decide if 2 pairs can transmit 4 simultaneously 5 6 9 7 Algorithms 8 Resource Scheduling Mode Selection ? Antonio Virdis - SimuLTE 2016 24

  25. Data TX/RX 1 • Data is sent in unicast 4 • Interference is broadcast 3 5 2 • Infra: each used RBs is tagged with the ID of a UE RBs UE1 • D2D: each RB has a list of the UEs’ IDs UE1 UE1 UE2 • SINR is computed taking interference into account UE3 UE4 UE5 UE5 Antonio Virdis - SimuLTE 2016 25

  26. Mode selection: custom algorithms D2DModeSelection … doModeSelection()=0 ... D2DModeSelectionBestCqi ... ... … … doModeSelection() { … } doModeSelection() { … } ... ... • Read status • Decides whether to switch or not Antonio Virdis - SimuLTE 2016 26

  27. D2D: multicast <multicast-group hosts="ueD2D[*]" interfaces="wlan" address="224.0.0.10"/> • Predefined CQIs only *.ueD2D[0].udpApp[*].destAddress = "224.0.0.10" # select the CQI for D2D transmissions *.eNodeB.nic.phy.enableD2DCqiReporting = false **.usePreconfiguredTxParams = true **.d2dCqi = 7 # set Tx Power *.ueD2DTx[0].nic.phy.ueTxPower = 26 # in dB eNB *.ueD2DTx[0].nic.phy.d2dTxPower = 20 # in dB Antonio Virdis - SimuLTE 2016 27

  28. Controlling the TX Range Larger range Lower data rate **.d2dCqi = 7 Smaller range Higher data rate # set Tx Power *.ueD2DTx[0].nic.phy.ueTxPower = 26 # in dB *.ueD2DTx[0].nic.phy.d2dTxPower = 20 # in dB UE3 UE4 Antonio Virdis - SimuLTE 2016 28

  29. D2D: layering and new modules • An additional data path PDCP D2D D2D UL MULTI • No HARQ RLC MAC • Send Broadcast HARQ PHY ChannelModel sendUnicast() sendBroadcast() Antonio Virdis - SimuLTE 2016 29

  30. Further Developments • Handover (actually released) • Native support to Veins • Moving towards 5G • CRAN deployments • Mobile Edge Computing applications Antonio Virdis - SimuLTE 2016 30

  31. Conclusions • SimuLTE: focused on resource scheduling • Modeling • Layering • Resources • Scheduling • Case studies • Simple LTE network • LTE Advanced • D2D communications towards 5G Antonio Virdis - SimuLTE 2016 31

  32. Thanks for your attention 32

Recommend


More recommend