Partie II:Ordonnancement en OFDMA
Chapitre 6.Contribution pour l'ordonnancement en OFDMA
1.3. État de l'art : ordonnancement en OFDMA
En OFDMA, on distingue deux stratégies d'ordonnancement : un ordonnancement par sous canal et un ordonnancement global.
Dans la première stratégie, les auteurs proposent une règle de priorité qui est appliquée indépendamment sur chaque sous canal. L'utilisateur maximisant la métrique est sélectionné et peut transmettre sur le sous canal. A notre connaissance, les algorithmes de ce type traitent principalement le trafic non temps réel : [KiKim_05], [Wengerter&_05]. Les règles de décisions proposées (cf. annexe 6. D) sont inspirées de celle de l'ordonnancement PF (Proportional Fair, [Jalali&_00]).
Nous nous intéressons à la seconde stratégie consistant en un ordonnancement global. Nous avons constaté que les algorithmes qui supportent à la fois un trafic temps réel et non temps réel, utilisent cette stratégie. Dans une première étape, un ordonnancement global sélectionne les utilisateurs qui vont transmettre. On retrouve dans cette étape certains algorithmes présentés en 1.2.1 et 1.2.2. Puis, une seconde étape décide quelles ressources allouer aux utilisateur.
Dans certaines références ([ShinRyu_04], [Shin&_05]), la seconde étape est imbriquée dans la première. On dira alors qu'il s'agit d'un ordonnancement avec allocation de
ressources « simplifiée ». Dans d'autres références ([ZhangLetaief_04] , [Diao&_04] et
[Jeong&_06]), la seconde partie est clairement séparée et on y retrouve des algorithmes d'optimisation présentés dans la première partie de la thèse (chapitre 2). On dira dans ce cas qu'il s'agit d'un ordonnancement avec allocation de ressources « optimisée ». Cette stratégie peut être plus coûteuse en temps que la première ; la contrepartie serait alors l'obtention d'une meilleure utilisation des ressources grâce à la phase d'optimisation.
1.3.1. Ordonnancement avec allocation de ressources simplifiée
Les auteurs de [ShinRyu_04] proposent le PLFS (Packet Loss Fair Scheduling) pour un trafic temps réel. Dans [Shin&_05], le PLFS est élargi pour traiter deux types de trafic temps réel (ou RT pour real time) et non temps réel (ou NRT pour non real time). Le
PLFS est l'une des références choisies pour évaluer les performances de notre proposition en OFDMA (cf. section 3.3) ; C'est pourquoi nous le détaillons ci-après.
PLFS (Packet Loss Fair Scheduling, [Shin&_05])
La trame est divisée en trois parties (cf. Fig. 6.1) : la première est réservée au trafic RT et la dernière au trafic NRT ; l'affectation de la partie du milieu est variable : elle est en priorité affectée au trafic RT pour respecter les échéances temporelles. Dans chaque région de la trame, les S utilisateurs de plus haute priorité sont sélectionnés pour la transmission et se voient affecter un sous canal en fonction de leur SNR1. Dans le PLFS,
deux règles distinctes sont appliquées pour chaque type de trafic : ut=Ru , nu t Rut PLRut PLRreq , uDmax ,u (6.9) ut=QLut D puHOL Ru , n ut Rut (6.10)
La région RT est affectée en utilisant la métrique (6.9) où PLRu(t) est le taux de paquets
perdus par l'utilisateur u à l'instant t, PLRreq,u est le taux de pertes maximum autorisé et
Dmax,u est le délai maximum d'un paquet. Pour la région NRT, on utilise la métrique
(6.10) où QLu(t) est la longueur de la queue de l'utilisateur u tandis que D(puHOL)est le
délai du paquet de tête de la queue de l'utilisateur u. Une implémentation possible pour ces deux équations est la suivante : Rut est un débit moyenné sur une fenêtre
glissante et sur tous les sous canaux ; Ru ,n ut est le débit sur le meilleur sous canal
de u noté n(u).
Figure 6.1 : Partage de la trame en PLFS
1 Le mécanisme précis n'est pas explicité dans [Shin&_05], mais dans [ShinRyu_04] il mentionné que les utilisateurs sélectionnent leur meilleur sous canal tour à tour et ce en fonction de la priorité obtenue par la métrique.
Temps
Fréquence
Région RT
Région NRT
1.3.2. Ordonnancement avec allocation de ressources optimisée
Dans cette catégorie, [ZhangLetaief_04] traitent les flux NRT : les auteurs appliquent le
Virtual Clock suivi d'une optimisation MA avec l'algorithme de [WongTsui&_99] (cf.
annexe 6. D).
Les contributions [Diao&_04] et [Jeong&_06] traitent les deux types de flux. Ces travaux nous servent de références pour évaluer les performances de notre proposition en OFDMA (cf. section 3.3). C'est pourquoi nous les détaillons ci-après.
CPLD-PGPS ([Diao&_04])
Les auteurs de [Diao&_04] proposent le CPLD-PGPS (Channel-Condition Packet
Length Dependent Packet Generalized Processor Sharing). Les hypothèses sont les
suivantes : modèle d'erreur canal ON-OFF, modulation fixe et puissance également répartie sur les sous porteuses. Les auteurs généralisent le calcul du temps virtuel1 au
contexte de l'OFDM. Les paquets sont marqués avec une étiquette virtuelle de fin de service comme en WFQ. Au moment de l'ordonnancement, les paquets de tête de queue sont parcourus par étiquette de fin de service croissante. Soit H l'ensemble des sous porteuses disponibles, cet ensemble décroît à chaque fois qu'un paquet est sélectionné. Pour chaque paquet, soit :
● Nu (puHOL) le nombre de sous porteuses nécessaires pour traiter le paquet (ce nombre
est calculé grâce à la taille du paquet et la connaissance d'un MCS fixe),
● Ngood,u le nombre de bonnes sous porteuses ( une sous porteuse est soit bonne soit
mauvaise à cause du modèle d'erreur ON-OFF).
Lors du parcours des paquets, on incrémente le facteur d'équité2 G(i) d'un flux i dont le
paquet p n'est pas choisi, s'il existe des paquets d'autres flux qui sont choisis avec des étiquettes de fin de service supérieures à celle de p. La règle de sélection des paquets est la suivante :
● soit Nu (puHOL)<│H│ (il y a assez de sous porteuses disponibles pour traiter le
paquet) et G(u) > Gthreshold (le flux a été différé plusieurs fois),
● soit Nu (puHOL)<│H│ et Ngood,u / Nu (puHOL) > seuil (un flux a beaucoup de bonnes
sous porteuses, cela facilite la résolution des conflits pendant l'étape d'attribution des sous porteuses).
Une fois les paquets choisis, les auteurs appliquent l'algorithme de [WongTsui&_99] (cf. chap. 2).
Practical Cross Layer Ressource Management ([Jeong&_06])
Dans [Jeong&_06], la phase d'ordonnancement détermine les paquets qui seront émis dans la prochaine trame. Pour la transmission des paquets, une phase d'optimisation affecte des unités d'allocation (UA) ; ces dernières sont composées d'un sous canal (sur l'axe fréquentiel) et d'un slot (sur l'axe temporel). L'ordonnancement (décrit ci-après) sélectionne les flux et calcule les débits minimaux à respecter pendant l'optimisation.
1 On reviendra sur ce calcul en 2.2 2 Ce facteur ressemble fort à un retard.
Pour profiter de la diversité multiutilisateur, les auteurs imposent un nombre minimal K d'utilisateurs à choisir pour chaque trame ; S/K est la limite initiale1 sur le nombre d'UA
qu'un utilisateur peut recevoir. Dans la première phase, la priorité est donnée aux paquets RT urgents définis par D pu
k
Dmax , u
(6.11) ; Dmax,u est la contrainte de délai de
l'utilisateur u, D(puk ) est le délai du kième paquet de u et δ est un seuil fixe. Les
utilisateurs qui possèdent des paquets urgents sont considérés par ordre décroissant du rapport maxkD pu
k
Dmax , u
. Pour chacun, on note Σp Lu,p le volume de données urgentes.
Soit Nu1, le nombre d'UA de l'utilisateur u à la première phase :
Nu
1=
min E pLu , p Ru , max
1, S
K ,∣H∣ , (6.12) où E(x) est la partie entière de x, Ru,max est
le nombre maximum de bits que l'utilisateur u peut écouler sur une UA et H est l'ensemble des UA disponibles. S'il reste des UA (│H│>0) après le traitement des données urgentes, une deuxième phase considère les utilisateurs RT et NRT simultanément. Ils sont traités par CgNR moyen décroissant, le CgNR moyen étant calculé sur l'ensemble des UA. Un utilisateur reçoit Nu2 UA supplémentaires2. Enfin, s'il
reste encore des UA, les utilisateurs qui ont été limités à la quantité S/K peuvent reçevoir Nu3 UA supplémentaires selon leurs besoins. Le nombre final d'UA de
l'utilisateur u est Nu = Nu1+ Nu2 + Nu3. Le débit minimal de u pendant la phase
d'optimisation vaut R °u = Nu Ru,max. Pendant cette phase, les UA sont affectées à leur
meilleur utilisateur puis une réaffectation a lieu pour respecter les débits R°u de chacun.
c) Motivations pour une contribution en OFDMA
Dans le contexte de l'ordonnancement PF (trafic NRT), les auteurs de [Anchun&_03] montrent qu'un ordonnancement global vaut mieux que plusieurs indépendants (i.e. un ordonnancement par sous canal) au regard du débit global (throughput). De plus, l'ordonnancement global permet de supporter deux types de trafic. Partant de ces constats, nous proposons une contribution avec un ordonnancement global.
A notre connaissance, il n'y a pas d'algorithmes approximant le modèle GPS qui ait été proposé dans le contexte de l'OFDMA avec modulation adaptative. Il y a certes la contribution de [Diao&_04] mais la modulation est fixe et il n'y a pas de découlage entre débit et délai.
Nous modifions le WFS pour tenir compte d'un grand nombre de canaux multidébits. Nous choisissons le WFS car il peut traiter des flux de QoS différentes grâce à l'existence d'un poids de débit et d'un poids de délai et à la différentiation entre queue de
slots logiques et queue de paquets (cf. section 2.1.2). Deux algorithmes sont proposés
l'EWFS (Enhanced Wireless Fair Service) et l'OWFS (Opportunist Wireless Fair
Service). Notre contribution entre dans la catégorie ordonnancement avec allocation de ressources simplifiée.
1 L'algorithme comporte trois phases, la limite sur le nombre d'UA est utilisée sur les deux premières phases.