Paging et mécanisme PSM/DRX

Nous allons dans cet article poursuivre l’étude menée dans l’article précédent Allocation de ressources et scheduling en présentant les ressources allouées à l’utilisateur (canal PDCCH et PDSCH) lors d’une procédure de paging. Cet article constitue aussi deux mécanismes de gestion de batterie sur lesquels nous reviendront dans un futur article traitant du MTC (Machine Type Communication).

  1. Introduction au Paging

Un UE présent sur une cellule du réseau cellulaire est en mode de veille lorsqu’il n’a pas de connexion activée avec la station de base (on dit que le mobile est dans l’état RR Idle si l’UE est campé sur le réseau 2G ou RRC Idle dans le cas ou l’UE est campé sur le réseau 3G ou 4G). Ainsi, si l’infrastructure du réseau mobile (2G/3G/4G) souhaite communiquer avec un mobile (appel téléphonique en Commutation de Circuit -2G/3G- ou en commutation de paquet via une requête SIP -4G-, un message court, une authentification, un PUSH Data, une notification d’alerte), elle émet un message de Paging.

Si on se place dans le réseau 4G, le message RRC de paging est transporté par le canal logique PCCH et est transmis sur le canal physique PDSCH. La procédure de Paging s’applique lorsque l’UE est dans l’état EMM-IDLE,  ce qui signifie que l’UE est aussi dans l’état RRC-Idle (se reporter à l’article Etat RRC – EMM). Ainsi, pour que l’UE prenne connaissance de ce message, le réseau transmet l’identifiant P-RNTI sur le canal de contrôle PDCCH. L’identifiant P-RNTI étant commun à tous les UE (la valeur de l’identifiant est fixe : 0xFFFE ; et le P-RNTI est transmis sur l’espace de recherche commun du canal PDCCH), chaque UE doit alors décoder le canal PDSCH. Si l’UE est déjà en connexion RRC

Lors du décodage du message de paging (PDSCH), si l’UE trouve son identité S-TMSI, il est alors le destinataire du message et va prendre connaissance de la raison de la demande de connexion (Paging Cause) afin d’initialiser la procédure appropriée avec le cœur réseau adéquat. Le paging étant déclenché soit par le MME soit par l’eNb, l’UE devra, toutes les 1 ms, scruter l’espace commun du  PDCCH pour prendre connaissance d’un indicateur du message de Paging et décoder le cas échéant le PDSCH.

RRC connected

Figure 1 : Etat du mobile et actions

Afin de réduire la consommation de puissance dans l’état RRC Connected et RRC Idle, il existe un mécanisme propre au LTE consistant à éteindre le module RF de l’UE pour le rallumer périodiquement pour monitorer le canal PDCCH. On appelle cycle DRX (cf. figure 2), une période pendant laquelle le module de transmission est au repos (DRX sleep) alternée d’une période d’activité pendant laquelle l’UE scrute les PDCCH (sleep mode and wake up mode) et effectue les mesures sur les cellules voisines. L’eNb détermine les paramètres du cycle du DRX (2 et 640 ms) avec une période d’activité comprise entre 1 et 200 ms.

fig2Figure 2 : Cycle DRX

2 – DRX : La réception Discontinue

Pendant les périodes de repos (DRX sleep), l’UE se met en sommeil, c’est-à-dire la chaîne de réception RF est éteinte. La durée du cycle est transmise à l’UE via le canal de contrôle BCCH et plus particulièrement par le SIB2,  permettant ainsi la procédure suivante :

  • Le module RF est activé et l’UE décode le PDCCH pendant la durée du Timer OnDurationTimer.
  • Si l’UE ne décode aucune notification sur le PDCCH, le module RF est désactivé jusqu’à la fin du cycle DRX (figure 2).
  • Si l’UE reçoit une notification sur le canal PDCCH, il décode le bloc reçu et déclenche la temporisation d’inactivité DRX. Le compteur d’inactivité DRX-InactivityTimer est ré-initialisé chaque fois que le mobile reçoit une allocation sur le PDCCH. Le rôle de ce temporisateur est de maintenir l’UE en état d’éveil (RRC Connected) pour que l’eNb puisse envoyer des allocations de ressources pour le sens descendant. La valeur du temporisateur peut varier de 1ms à 2,56 s.
    • A la fin de la temporisation, si l’UE ne reçoit aucune notification sur le PDCCH, il revient à l’état de repos et reste dans cet état jusqu’à la fin du cycle DRX
    • Si l’UE reçoit une notification pendant la période DRX-InactivityTimer, le timer est ré-initialisé

L’UE alterne donc entre une phase ou il est en mode RRC-Idle (période d’inactivité) et un mode RRC-Connected. Au cours de l’état RRC-Connected, l’UE va périodiquement scruter les canaux PDCCH et se mettre en état de repos entre deux scrutations (DRX Sleep, DRX On). Le cycle de scrutation (sleep/wake up) est court. Si aucune activité n’est détectée, l’UE va passer sur un cycle de repos plus long comme le montre la figure 3.

DRX

Figure 3 : Cycle Long/Cycle Court

L’avantage du cycle de repos long est que l’UE ne vient pas décoder les PDCCH. Le décodage du PDDCH est une lourde tâche processeur aussi ne pas écouter (et surtout de pas décoder) économise significativement

Cycle Court – Cycle Long

L’eNb peut décider de configurer deux cycles différents, un cycle court (optionnel) et un cycle long.  Les paramètres de configuration sont transmis lors de message de reconfiguration RRC :

fig4Figure 4 : Paramètres DRX

La procédure DRX est la suivante :

  • L’UE se réveille et décode le PDCCH pendant la durée du Timer OnDurationTimer
  • Si l’UE reçoit des données sur le canal PDCCH, il décode le bloc reçu et déclenche la temporisation d’inactivité DRX. Le rôle de ce temporisateur est de maintenir l’UE en état d’éveil pour que l’eNb puisse envoyer des allocations de ressources pour le sens descendant.
  • A la fin de l’expiration du timer DRX-InactivityTimer, l’UE démarre un ou plusieurs cycles DRX court. Le nombre de cycle court consécutif est compris entre 1 et 16. Le cycle court a une durée DRXShortCycle dont la durée varie de 2ms à 640 ms, par conséquent la durée totale des cycles courts s’étend jusqu’au plus 16*640 ms soit 10.24 s. Cette période s’appelle DRXShortCycleTimer. Durant le cycle court, l’UE réalise deux fonctions :
    • Analyse du canal PDCCH sur la durée OnDurationTimer
    • Si l’UE ne décode aucune information sur le PDCCH, il entre en mode de veille jusqu’à la fin du temporisateur DRXShortCycle
  • A la fin du Timer du cycle court (DRXShortCycleTimer), l’UE bascule dans un cycle long

Les figures 5 et 6 présentent un schéma pour lequel le cycle DRXShortCycleTimer se compose de 2 cycles courts.

fig5Figure 5 : Exemple de cycle DRX

Pour illustrer ces propos, nous allons prendre l’exemple de la figure 6 :

fig6Figure 6 : Exemple d’illustration

Initialement, on suppose l’UE dans l’état RRC Connected :

  • L’UE détecte une allocation de ressource sur le lien descendant (canal PDCCH) et récupère des données en réception (canal PDSCH). Le Temporisateur DRX_Inactivity_Timer est réinitialisé : l’UE est en mode RRC_Connected jusqu’à l’expiration du Timer (après éventuellement d’autres ré-initialisation du timer)
  • Le réseau autorise l’UE à transmettre des données (UL Grant sur le canal PDCCH), qu’il va transmettre dans le canal PUSCH 4 TTI plus tard.
  • Le Temporisateur DRX_Inactivity_Timer expire, l’UE n’ayant reçu aucune activité sur le canal PDCCH, il entre dans le cycle DRX court, phase pendant laquelle il scrute périodiquement les canaux PDCCH. Au cours de cette phase, l’UE est RRC Connected, son contexte est sauvegardé au niveau de l’UE et du eNb. Le module RF est éteint sur la période DRX_sleep. On suppose qu’il n’y a aucune notification d’activité correspondant à l’UE. A la fin du cycle DRX court, l’UE entre dans le cycle DRX long.
  • L’UE passe dans l’état RRC_Idle, le cycle DRX est un cycle plus long. Le module RF est éteint sur une longue période et ne sera activée que pour détecter des éventuels paging. On parle de cycle de Paging DRX.

 

3 – La procédure de Paging

La durée du cycle Paging DRX est soit définie par la cellule (SIB2) soit imposée par le MME si ce dernier transmet un message NAS (UE specific DRX cycle) à l’UE pour lui indiquer la durée spécifique du cycle DRX. La durée maximum d’inactivité est de 2.56s, valeur maximum du paramètre Long DRX Cycle (figure 4)

Tableau paramètres DRX

Tableau 1 : Paramètres DRX

Ainsi, T=T_UE ou T_C en fonction du choix du cycle DRX. Si Tc=128, alors le cycle DRX est configurée pour 1.28 secondes (1 trame=10 ms).

nB est un paramètre qui définit le nombre de PO (Paging Occasion) par cycle DRX autrement dit le nombre de fois que l’UE écoute le canal PDCCH pour détecter un Paging.

1er cas : nB<T

Si nB=T/32 avec T=128  alors il y aura 4 PO durant le cycle de 1,28s soit un PO toute les T/32 trames. Par conséquent, la trame qui va porter le message de Paging n’est évidemment pas aléatoire. Pour synchroniser l’UE et l’eNB à l’émission/réception d’un message de Paging, le MME transmet à l’eNb le paramètre UE_ID (UE Identity Index Value) via le protocole S1_AP, sachant que UE_ID=IMSI mod 1024. L’UE calcule de son coté la valeur UE_ID.

Numéro des trames SFN portant un Paging = 32*(UE_ID mod 32). Le compteur est remis à 0 à chaque cycle donc :

PFN =SFN modulo 128

Le calcul est différent si nB>T.

2ème cas : nB<T

Si nB=2T, alors on aura 256 PO par cycle DRX (2 PO par trame), 1 PO toutes les 5 ms.

Numéro des trames SFN portant un Paging = 256*(UE_ID mod 128). Le compteur est remis à 0 à chaque cycle donc :

PFN =SFN modulo 128

Formule Générale : On pose N=min(T,nB) :

  • SFN = (T div N)*(UE_ID mod N)
  • PFN = SFN mod N

Il ne reste plus qu’à déterminer la sous trame portant le Paging (PO). On pose Ns=max(1,nB/T)

i_s = floor(UE_ID/N) mod Ns

Application :

1er cas : nB<T :  Ns=1, donc is prend pour valeur 0 ou 1

2ème cas : nB<T  Ns=1, 2 ou 4 donc _s prend pour valeur 0,1 ou 2 ou 3.

La sous trame est définie par le tableau ci-dessous :

Sous trame portant le PO

Tableau 2 : Sous trame portant le PO

4 – Call Flow et étude simplifiée

Le call Flow présenté en figure 1 porte plusieurs informations que nous allons détailler, comme par exemple le mécanisme DRX (Discontinuous Receive cycle) sur lequel se synchronise le cycle de PO (Paging Occasion), le rôle du Timer T3412 et les messages.

Call Flow PagingFigure 9 : Call Flow Paging détectée par l’UE et spécifique à l’UE

II-a) Etat du téléphone

L’état du téléphone ne doit pas vous échapper, vous pouvez revenir sur l’article ETATS RRC – ECM EMM pour plus de détail.

Dans le cas du call flow, l’UE est dans l’état ECM Idle et RRC Idle, cela signifie qu’il n’a pas de connexion radio avec l’eNb.

Le téléphone est enregistré sur le réseau, il existe donc un contexte au niveau du MME, un contexte au niveau du PGW et le HSS connait l’identité du MME sur lequel l’UE est enregistré. En cas de session DATA en provenance du réseau (VoLTE  par exemple), le PGW sera en mesure de router les paquets vers le SGW et ce dernier informera le MME de paquets en attente.

II-b) Première lecture du call flow

Le MME va générer le message S1AP Paging et va ensuite démarrer le timer T3413. Ce Timer a pour rôle de limiter la période pendant laquelle le MME considère le message S1AP valide. Il s’agit donc du temps de réponse maximum autorisé pour que l’UE réponde au message S1AP.

Le message S1AP est transmis à une liste de eNB. Cette liste est connue par le MME car ce dernier maintient le contexte de l’UE (celui est attaché car l’UE est en état MME registered), c’est donc le MME qui connait la position approximative de l’UE (Tracking Area ou TA List). Chaque eNb qui reçoit le message S1AP décode l’identité de l’UE (S-TMSI) et transmet la requête de paging sur l’accès radio.

L’UE destinataire recevant et décodant le message de paging répond à la requête en faisant une demande d’accès radio (procédure d’accès aléatoire : Random Access Procedure).

5) eDRX et Mode PSM – Power Saving Mode – Extension pour le MTC

eDRX (R.13)

Dans le cas de l’IoT, la durée en mode de veille du cycle long est allongée jusqu’à 44 mn (Trigger eDRX Long Cycle).

fig10Figure 8 :  Extension du timer -eDRX

Le device sera donc en mode de veille et viendra

Les valeurs du trigger TeDRX (mode de repos) et TPTW sont indiquées au device lors de la procédure d’attachement ou de RAU sous le nom respectif T331 et T332 (Information Element lors du message RRC).

PSM (R.12)

Le mode PSM est un mode pour lequel le device s’éteint sans faire la demande de détachement. Pour le mode PSM, le device utilise deux valeurs de triggers (T3324 et T3412) lesquelles lui ont été fournies lors de la procédure d’attachement ou de mise à jour de sa localisation (TAU). La première valeur de timer, le T3324 indique le temps pendant lequel l’UE reste en mode de veille suite à la procédure d’attachement (c’est la durée du mode DRX et est nommée Active Timer) et le deuxième Trigger est le temps pendant lequel le device est endormi avant une mise à jour périodique de sa localisation. Ainsi, la valeur du trigger T3412 correspond toujurs à la durée de la demande de Mise à Jour de localisation Périodique (periodic TAU). Durant cette période, le device reste attaché au réseau mais est non joignable : Il ne lit aucune signalisation, et par conséquent, le MME ne doit envoyer aucun message. Le MME enregistre l’état du device (enregistré et non localisé). La durée maximum du trigger T3412 pour le mode PSM est de 12,1 jours, mais le device peut à tout moment interrompre ce mode en émettant une requête de TAU (Mobile Originated Transaction).

Mode PSM

Figure 9 : Mode PSM

Différence entre PSM et eDRX

Concernant les cycles DRX, l’UE et l’eNb sont synchronisés, autrement dit l’UE connait les instants pendant lesquels l’UE est en écoute (DRX awake). Ainsi, si l’eNb doit adresser un message au mobile (allocation par exemple) sur le PDCCH, il devra attendre la période de réveil pour séquencer l’UE, ce qui introduit un peu de latence. Les transmissions Uplink ne sont pas affectées par le DRX puisque l’UE peut à tout moment activé le module RF pour transmettre une demande d’allocation (Scheduling Request).

 

Les cycles DRX sont émis par le SIB 2, mais la couche MAC de l’eNb peut aussi contrôler les paramètres DRX de l’UE en transmettant des commandes MAC CE DRX.

Commandes MAC CE : MAC Contrôle Element est une structure MAC du LTE qui porte des informations de contrôle spécifiques entre l’eNb et l’UE comme le Timing Advanced, le PHR, les commandes DRX, …

 

Dans le mode PSM, le device fait une demande de TAU périodiquement. Lorsque le mobile est à l’état PSM, toutes ses fonctions non critiques sont désactivées, ce qui permet de consommer encore moins d’energie que l’UE en mode idle, et ceci tant que le Timer n’a pas expiré. En contrepartie l’UE est injoignable pendant toute cette phase. Le PSM est donc réservé uniquement aux UE en commutation de paquet qui n’ont pas à être déclenché.  La durée maximum du Timer T3412 est de 12.1 jours.

Dans le cas eDRX, le device scrute périodiquement le PDCCH sur une courte durée. Par conséquent, les devices susceptibles de recevoir des notifications du réseau (trigger) mais qui sont tolérants au délai seront programmé en mode eDRX devices qui fonctionnent plutôt en transmission de données (originated device) seront plutôt programmés en mode PSM.

fig12
Figure 10 : Comparaison PSM/DRX

Pour aller plus loin : https://www.youtube.com/watch?v=wY7XHrbm1oQ

 

Remerciement :

Merci à André PEREZ d’avoir contribué à la rédaction de l’article. L’article s’appuie sur le livre VoLTE et ViLTE

Merci à Louis Gibault d’avoir relu l’article et annoté des remarques

Related posts:

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *