Custom enb Scheduler and lessons learnt from OAI development Mateusz Jemielity m.jemielity@is-wireless.com
LTE enb schedulers: the basics MAC in enb stack contains a scheduler for assigning time/frequency resource blocks to users, in downlink and uplink, compliant with 3GPP specification. It controls and prioritizes bandwidth across users. (source: https://blog.yate.ro/2015/07/30/an-introduction-to-the-lte-mac-scheduler/)
LTE enb schedulers: the baseline The simplest scheduling algorithm is Round Robin. It assigns resource blocks cyclically to all UEs, one after another. It s fair to UEs in the long term, but isn t aware of network conditions (like CQI) or specific UEs needs (like VoLTE). It s regarded as inefficient in terms of cell throughput. Start Schedule first user Schedule next user It provides benchmark baseline. Yes All users scheduled? No
LTE enb schedulers: Proportional Fair Proportional Fair algorithm is an example of achieving good cell throughput while being quite fair. LTE scheduling algorithms spectrum Start Compare CQI Schedule first user fairness RR PF greedy cell throughput efficiency No User with higher CQI? Schedule next user Properties: weighted by CQI maintains UEs throughput history prioritizes UEs with lower throughput cell-edge users aren t neglected What we want: Proportional Fair fairness & efficiency << No our scheduler fairness & efficiency Yes Schedule first user Schedule next user 1st time slot finished? Yes No 2nd time slot finished? Yes
Advanced scheduler Advanced scheduler takes into account more properties. We aim to provide good GBR instead of raw throughput. This should make better use of resources in real-life scenarios.
LTE enb schedulers: implementation Models in + LTE MAC Lab performance estimates. But real world data real enb stack. was a natural choice. We used Small Cell Forum's Femto Application Platform Interface. Now scheduler is pluggable into any compliant stack. FAPI was enhanced to support Carrier Aggregation. EURECOM devs added partial FAPI support to OAI. We implemented Round Robin and Advanced schedulers in ANSI C, as libraries and are integrating them with OAI.
Standard interfaces are a Good Thing (source: Small Cell Forum)
Advanced scheduler: estimates
Advanced scheduler: estimates
Lessons learnt Some after-action thoughts from our devs about working with OAI: setting up development environment for OAI is time consuming and prone to error - needs more automation it s hard for non-linux-savvy devs to get basic usecases working one-click solution would be ideal OAI would benefit from a simpler way to manage its configuration To address those needs we created a new set of productivity tools, which wrap around OAI and allow for rapid deployment of basic usage scenarios, make reconfiguration easy and save a lot of time: alternative.
alternative walkthrough For novices there's interactive GUI.
alternative walkthrough For power users there's script-friendly command line.
alternative walkthrough There can be multiple profiles. Each profile has separate set of configuration files (enb, MME, HSS) and own SIM database. In one place for easy reference. Starting from clean state is as easy as creating new profile.
alternative walkthrough Adding SIMs to HSS is easy.
alternative walkthrough Making OAI's enb and core network work is easy too.
alternative Additionally alternative offers a way to: setup your system for OAI development through a script gather logs and system information in a unified way use its components in your own applications through an API It works on Ubuntu, can be installed and updated easily through its Software Center. We have a lot of plans for extending alternative: support for UEs support for other open source LTE stacks nicer GUI We believe alternative has a lot to offer for OAI community.
THANK YOU
CONTACT DETAILS IS-Wireless ul. Puławska 45b, 05-500 Piaseczno / near Warsaw, Poland, EU phone fax web e-mail +48 22 213 8297 +48 22 213 8298 www.is-wireless.com info@is-wireless.com