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

simulte tutorial
SMART_READER_LITE
LIVE PREVIEW

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


slide-1
SLIDE 1

SimuLTE Tutorial

Antonio Virdis

University of Pisa - Italy

Antonio Virdis - SimuLTE 2016 1

Simulating device-to-device communications in OMNeT++ with SimuLTE: scenarios and configurations

Giovanni Nardini, Antonio Virdis, Giovanni Stea University of Pisa - Italy

slide-2
SLIDE 2

Outline

  • LTE Context
  • Simulator structure
  • Examples
  • LTE
  • LTE-Advanced
  • Towards 5G: D2D

Antonio Virdis - SimuLTE 2016 2

slide-3
SLIDE 3

LTE

Antonio Virdis - SimuLTE 2016

3

UE 1 UE 2 UE 3 eNb

Scheduling Data Req Channel Quality

1ms

slide-4
SLIDE 4

LTE

Antonio Virdis - SimuLTE 2016

4

eNb

slide-5
SLIDE 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

slide-6
SLIDE 6

Nodes

eNB UE

UE

IP UDP TCP UDP apps TCP apps LTE NIC

Antonio Virdis - SimuLTE 2016 6

Standard Hosts

slide-7
SLIDE 7

Layering

PDCP RLC MAC PHY

LTE NIC

PDCP RLC MAC PHY

SimuLTE

Antonio Virdis - SimuLTE 2016 7

UE

IP UDP TCP UDP apps TCP apps LTE NIC

1ms

slide-8
SLIDE 8

Common Structure: Inheritance

Base NIC eNB NIC UE NIC

Base RLC eNB RLC UE RLC Base MAC eNB MAC UE MAC Base PHY eNB PHY UE PHY Antonio Virdis - SimuLTE 2016 8

slide-9
SLIDE 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

slide-10
SLIDE 10

Tx/Rx modeling

Antonio Virdis - SimuLTE 2016 10

UE eNB frequency

1 ms

OFDM

K bit

RB CQI

slide-11
SLIDE 11

Scheduling

AMC User Tx Params Pilot Scheduler Allocator Scheduling Policy

Antonio Virdis - SimuLTE 2016 11

N bit

Available Data UE Reports Schedule List

M bit

slide-12
SLIDE 12

Scheduling Hierarchy

  • Scheduler Type and
  • Scheduling Policy

Antonio Virdis - SimuLTE 2016 12

eNB Scheduler eNB Scheduler UL eNB Scheduler DL Scheduling Policy MAX C/I PF DRR

slide-13
SLIDE 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

slide-14
SLIDE 14

Example 1: ~2010 rel 8-9

**.nic.phy.channelModel = xmldoc("config_channel.xml") **.mac.schedulingDisciplineDl = "MAXCI"

Antonio Virdis - SimuLTE 2016 14

# connect each UE to the eNB **.ue[*].macCellId = 1 **.ue[*].masterId = 1

Association

**.deployer.numRbDl = 6 **.deployer.numRbUl = 6

# Resources

slide-15
SLIDE 15

Custom Scheduling

  • Inherit a scheduling policy (LteScheduler Class)
  • Two stages scheduling
  • Prepare schedule list
  • Commit schedule list

Antonio Virdis - SimuLTE 2016 15

Policy 1 Policy 2 Policy 3 Schedule list

Scheduling Policy MAX C/I PF DRR

slide-16
SLIDE 16

Example 2: ~2013 rel 10-11

  • LTE-advanced
  • Multiple cells
  • CoMP techniques
  • X2 Communication
  • Heterogeneous Networks
  • Dense Networks

Antonio Virdis - SimuLTE 2016 16

slide-17
SLIDE 17

Example 2: ~2013 rel 10-11

<parameter name="multiCell-interference" type="bool" value="true"/>

In config_channel.xml

Antonio Virdis - SimuLTE 2016 17

**.ue1*.macCellId = 1 **.ue1*.masterId = 1 **.ue2*.macCellId = 2 **.ue2*.masterId = 2 **.ue3*.macCellId = 3 **.ue3*.masterId = 3

Association

**.eNodeBTxPower = 40

Transmission Power

Interference? Coordination! (CoMP)

slide-18
SLIDE 18

Allocation Flexibility

Antonio Virdis - SimuLTE 2016 18

Scheduling Policy Allocator

getBlocks(n)

Scheduling Policy Allocator

getBlocks(n,limit)

Joint Scheduler / Allocator

USER FRIENDLY FLEXIBILITY

slide-19
SLIDE 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

slide-20
SLIDE 20

Example 2: ~2013 rel 10-11

LTE NIC PHY MAC RLC PDCP X2 Manager

X2 User X2 User

...

to/from IP to/from LteX2App[]

**.x2Enabled = true *.eNodeB*.numX2Apps = 2 *.eNodeB*.x2App[*].server.localPort = 5000 + ancestorIndex(1)

Antonio Virdis - SimuLTE 2016 20

X2

slide-21
SLIDE 21

Example 3: NOW towards 5G

  • Infrastructure vs D2D
  • Multicast or Unicast
  • Scheduling remains under control
  • f the eNB
  • UEs still need to request resources

to the eNB

  • Enables frequency reuse

Internet UE1 UE2 eNodeB UL DL UE3 UE4

Antonio Virdis - SimuLTE 2016 21

slide-22
SLIDE 22

Data Flow

  • Data in the UL direction travels

the whole stack

  • Segmentation/concatenation
  • Error control
  • It follows a reverse path during

reception

  • D2D is given a separated path

Channel Model

PDCP RLC MAC PHY

HARQ HARQ

HARQ UL UL D2D

Antonio Virdis - SimuLTE 2016 22

slide-23
SLIDE 23

D2D: one-2-one

  • Enabling D2D
  • AMC mode: D2D
  • Peering relation
  • Static peering
  • Dynamic peering not available
  • Channel measurement
  • Dynamic
  • Static

1 # enable D2D capabilities 2 *.eNodeB.d2dCapable = true 3 *.ueD2D*[*].d2dCapable = true 4 # select the AMC mode 5 *.eNodeB.nic.mac.amcMode = "D2D" 6 # set peering relationship 7 *.ueD2DTx[0].nic.d2dPeerAddresses= "ueD2DRx[0]" 8 # select the CQI for D2D transmissions 9 *.eNodeB.nic.phy.enableD2DCqiReporting = true 10 **.usePreconfiguredTxParams = false 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

slide-24
SLIDE 24

Simultaneous Transmissions

  • Transmitting UE can reuse the

same frequencies

  • Interference between pairs can
  • ccur
  • Infra or D2D? [Switch?]
  • Decide if 2 pairs can transmit

simultaneously

2 3 4 5 6 7 9 8

Algorithms

Resource Scheduling Mode Selection

?

Antonio Virdis - SimuLTE 2016 24

slide-25
SLIDE 25

Data TX/RX

  • Data is sent in unicast
  • Interference is broadcast
  • Infra: each used RBs is tagged with

the ID of a UE

  • D2D: each RB has a list of the UEs’

IDs

  • SINR is computed taking

interference into account

RBs

UE1 UE4 UE5 UE1 UE5 UE2 UE3

1

2 3 4 5

UE1

Antonio Virdis - SimuLTE 2016 25

slide-26
SLIDE 26

Mode selection: custom algorithms

  • Read status
  • Decides whether to switch or not

D2DModeSelection … doModeSelection()=0 ... D2DModeSelectionBestCqi … doModeSelection() { … } ... ... … doModeSelection() { … } ...

...

Antonio Virdis - SimuLTE 2016 26

slide-27
SLIDE 27

D2D: multicast

  • Predefined CQIs only

<multicast-group hosts="ueD2D[*]" interfaces="wlan" address="224.0.0.10"/> *.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 *.ueD2DTx[0].nic.phy.d2dTxPower = 20 # in dB

eNB

Antonio Virdis - SimuLTE 2016 27

slide-28
SLIDE 28

Controlling the TX Range

UE3 UE4

Antonio Virdis - SimuLTE 2016 28

**.d2dCqi = 7 # set Tx Power *.ueD2DTx[0].nic.phy.ueTxPower = 26 # in dB *.ueD2DTx[0].nic.phy.d2dTxPower = 20 # in dB Larger range Lower data rate Smaller range Higher data rate

slide-29
SLIDE 29

D2D: layering and new modules

  • An additional data path
  • No HARQ
  • Send Broadcast

PDCP RLC MAC PHY

UL D2D D2D MULTI HARQ ChannelModel

sendUnicast() sendBroadcast()

Antonio Virdis - SimuLTE 2016 29

slide-30
SLIDE 30

Further Developments

  • Handover (actually released)
  • Native support to Veins
  • Moving towards 5G
  • CRAN deployments
  • Mobile Edge Computing applications

Antonio Virdis - SimuLTE 2016 30

slide-31
SLIDE 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

slide-32
SLIDE 32

Thanks for your attention

32