Title: Qualit
1Qualité de servicesur un réseau hybrideet
adaptation de flux hiérarchiquessur un réseau
actif
Laboratoire dInformatique de lUniversité de
Franche-Comté
- David FUIN
-
- http//lifc.univ-fcomte.fr/fuin/
- fuin_at_lifc.univ-fcomte.fr
2Contexte (1/3)
- Intérêt des réseaux actifs
- Différents points de vue
- Déploiement des réseaux actifs
- réseau dexpérimentation
- à petite échelle
- à plus grande échelle ABone
- au sein des réseaux actuels
- ? hétérogénéité accrue des réseaux
3Contexte (2/3)
- la QoS de bout en bout est égal au maillon faible
de la chaîne
A
B
4Contexte (3/3)
- Vidéo à la demande - Stockage des vidéos
- ? codage hiérarchique
- Client léger (PDA, téléphone)
- codec adéquat (-)
- manque de ressources de calcul ()
- ? besoin de transcoder la vidéo
- agrégation distribuée des couches d un flux
vidéo hiérarchique sur un réseau actif
5Plan de lexposé
- Qualité de service dans un réseau hybride
- QoS dans les réseaux  traditionnelsÂ
- QoS dans les réseaux actifs
- Vers une cohérence de la QoS dans les réseaux
hybrides - Adaptation d un flux hiérarchique sur un réseau
actif. - Vidéo à la demande et codage hiérarchique
- Objectifs de notre protocole
- Fonctionnement de notre protocole
- Simulation et premiers résultats.
6Plan de lexposé
- Qualité de service dans un réseau hybride
- QoS dans les réseaux  traditionnelsÂ
- QoS dans les réseaux actifs
- Vers une cohérence de la QoS dans les réseaux
hybrides - Adaptation d un flux hiérarchique sur un réseau
actif. - Vidéo à la demande et codage hiérarchique
- Objectifs de notre protocole
- Fonctionnement de notre protocole
- Simulation et premiers résultats.
7QoS dans les réseaux  traditionnelsÂ
Cisco 1605-R Linux Debian linux v3.0r1 (sid)
kernel 2.4.20
8Architecture d un routeur QoS(1/3)
- ? Classification (IPs, ports, protocoles)
- ? routage vers une interface de sortie
9Architecture d un routeur QoS(2/3)
- ? gestionnaire des files d attente et
ordonnanceur
10Architecture d un routeur QoS(3/3)
- ? sous-files (software)
- ? file principale (hardware)
11Priorité forte PQ / PRIO
- Cisco 4 files
- Linux n files
- Trafic interactif / Urgence
Site
12Partage équitable (W)FQ / SFQ
- Cisco jusquà 4096 files (plus équitable)
- Linux jusquà 1024  files (plus rapide)
- Répartition
13Réservation de bande passante WFQ, RED (RSVP) /
HTB, CBQ
- Vidéo, VoIP...
- WFQ/RSVP (IntServ)
14Réservation de bande passante WFQ, RED (RSVP) /
HTB, CBQ
- Paramétré automatiquement
- RED/RSVP (IntServ) WFQ/RSVP (IntServ)
15Réservation de bande passante WFQ, RED (RSVP) /
HTB, CBQ
- HTB paramètré automatiquement
- CBQ  endort l interface
- Le paramétrage doit être ajusté
16Priorité statistique CQ, WFQ, RED (DiffServ) /
GRED
- Priorité  faibleÂ
- CQ
- byte-count ?  arrondi au paquet près
- résultat dépend de la taille des paquets
- 4 files
- WFQ, RED (DiffServ) automatique
- 8 classes
- GRED
- 16 files peu de différentiation
17Priorité statistique CQ, WFQ, RED (DiffServ) /
GRED
- Priorité maxi vs mini
- WFQ (DiffServ) RED (DiffServ)
- ? mieux pour MPEG ? paramètrable
18Pour aller plus loin SNMPévolution des files
du routeur
FIFO
(W)FQ
19Bilan QoS traditionnel (1/2)
- Cisco
- préconfiguré
- figé
- linux
- plus complexe
- plus configurable
- combinable
20Bilan QoS traditionnel (2/2)
- cohérence
- ? mêmes  type d algorithme
- ? implémentations différentes (nbre de files)
- ? paramétrages différents
- ? comportements différents
21Plan de lexposé
- Qualité de service dans un réseau hybride
- QoS dans les réseaux  traditionnelsÂ
- QoS dans les réseaux actifs
- Vers une cohérence de la QoS dans les réseaux
hybrides - Adaptation d un flux hiérarchique sur un réseau
actif. - Vidéo à la demande et codage hiérarchique
- Objectifs de notre protocole
- Fonctionnement de notre protocole
- Simulation et premiers résultats.
22QoS dans les réseaux actifs
- Au niveau du nœud actif (approche classique)
- modification des nœuds actifs
- un champ à ajouter aux protocoles existants
- Premiers résultats avec ANTS
- Au niveau protocole (approche réseau  actif )
- modification des protocoles
23QoS au niveau nœud actif Priorité forte PQ
 actifÂ
- Classe 1 prioritaire sur la classe 2
- paquets reçus paquets perdus
24QoS au niveau nœud actif Partage équitable
FQ Â actifÂ
- Partage équitable entre les 3 flux
- paquets reçus paquets perdus
25QoS au niveau nœud actif Priorité statistique
WFQ Â actifÂ
- Forte congestion
- classe 1 70 classe 2 20 classe 3 10
- paquets reçus paquets perdus
26QoS au niveau protocoleUn exemple (1/2)
- Diffusion de vidéo MPEG sur un réseau actif
(INRIA/LaBRI) - Group of pictures IBBPBBPBBPBBPBB
- Les frames I sont essentielles aux rendus de
toutes les images du GoP - Les frames P ont besoin de la frame I et des
frames P précédentes du GoP - Les frames B sont encore moins importantes
27QoS au niveau protocoleUn exemple (2/2)
- QoS dépendant de la sémantique
- frames I  jamais détruites
- frames P détruites si
- une P précédente a été détruite
- ou forte congestion
- frames B détruites si
- une P précédente a été détruite
- ou congestion plus faible
28QoS dans les réseaux actifsBilan (1/3)
- 2 politiques
- au niveau des nœuds actifs
- premiers résultats (en développement)
- au niveau des protocoles
29QoS dans les réseaux actifsBilan (2/3)
- Au niveau du nœud actif (approche classique)
- ? proche de la QoS des réseaux traditionnels
- ? un champ à ajouter aux protocoles existants
- ? politique  par défaut pour les autres
- ? modification de tous les nœuds
- ? administrateur
30QoS dans les réseaux actifsBilan (3/3)
- Au niveau protocole (approche  active )
- ? définie par lutilisateur
- ? adaptée au contenu
- ? déployée automatiquement sur les nœuds
- ? uniquement les protocoles l implémentant
- ? favorise les autres protocoles
- ? fonctionnement  intelligent très différent
de la QoS dans les réseaux traditionnels
31Plan de lexposé
- Qualité de service dans un réseau hybride
- QoS dans les réseaux  traditionnelsÂ
- QoS dans les réseaux actifs
- Vers une cohérence de la QoS dans les réseaux
hybrides - Adaptation d un flux hiérarchique sur un réseau
actif. - Vidéo à la demande et codage hiérarchique
- Objectifs de notre protocole
- Fonctionnement de notre protocole
- Simulation et premiers résultats.
32Vers une cohérence de la QoS dans les réseaux
hybrides (1/2)
- Comment assurer une QoS de bout en bout?
A
B
33Vers une cohérence de la QoS dans les réseaux
hybrides (2/2)
- Algorithmes similaires
- ? Cisco
- ? Linux
- ? Réseaux actifs  niveau nÅ“udÂ
- ? Réseaux actifs  niveau protocoleÂ
- Besoin d une architecture pour assurer la
cohérence
34Architecture du service QoS
?
?
?
?
35Qualité de service dans un réseau hybride
- Différents algorithmes
- Différents modes de paramétrage
- Différentes efficacités
- Besoin de cohérence
- pour les flux actifs
- pour les flux non actifs
- Service QoS reste à développer
36Plan de lexposé
- Qualité de service dans un réseau hybride
- QoS dans les réseaux  traditionnelsÂ
- QoS dans les réseaux actifs
- Vers une cohérence de la QoS dans les réseaux
hybrides - Adaptation d un flux hiérarchique sur un réseau
actif. - Vidéo à la demande et codage hiérarchique
- Objectifs de notre protocole
- Fonctionnement de notre protocole
- Simulation et premiers résultats.
37Contexte
- Vidéo à la demande - Stockage des vidéos
- ? codage hiérarchique
- Client léger (PDA, téléphone)
- codec adéquat (-)
- manque de ressources de calcul ()
- ? besoin de transcoder la vidéo
38Plan de lexposé
- Qualité de service dans un réseau hybride
- QoS dans les réseaux  traditionnelsÂ
- QoS dans les réseaux actifs
- Vers une cohérence de la QoS dans les réseaux
hybrides - Adaptation d un flux hiérarchique sur un réseau
actif. - Vidéo à la demande et codage hiérarchique
- Objectifs de notre protocole
- Fonctionnement de notre protocole
- Simulation et premiers résultats.
39Vidéo à la demande
- Offre de vidéos (clips, films, journaux
télévisés) - Plusieurs qualités disponibles (satisfaction)
40Codage hiérarchique (1/3)
- Avantages
- plusieurs couches dans un seul fichier
- une couche de base
- n couches d améliorations successives
- ?
- n1 qualités
41Codage hiérarchique (2/3)
42Codage hiérarchique (3/3)
- Avantages (suite)
- plusieurs niveaux de qualités pour un espace de
stockage réduit - multicast adapté aux clients (non traité ici)
- Inconvénients
- utilisation des ressources de calcul importante
() - faible disponibilité de codecs (-)
43Réseaux actifs
- Utilisation dANTS (Active Network Transport
System) - ? Extension des possibilités dANTS
- Mesure
- QoS
- files d attente des routeurs
- utilisation du CPU...
44Plan de lexposé
- Qualité de service dans un réseau hybride
- QoS dans les réseaux  traditionnelsÂ
- QoS dans les réseaux actifs
- Vers une cohérence de la QoS dans les réseaux
hybrides - Adaptation d un flux hiérarchique sur un réseau
actif. - Vidéo à la demande et codage hiérarchique
- Objectifs de notre protocole
- Fonctionnement de notre protocole
- Simulation et premiers résultats.
45Objectifs (1/2)
- Rendre possible l affichage de vidéos
hiérarchiques sur clients légers - Une approche distribuée (vs proxys)
- Utiliser les ressources réseaux pour cette tâche
(nœuds actifs) - Trois opérations
- sélection des couches
- agrégation des couches
- gestion des ressources.
46Objectifs (2/2)
- Plusieurs stratégies possibles
- orientée qualité de vidéo perçue,
- ?orientée économie de bande passante,?
- orientée maximisation du nombre de clients,
- ?orientée client léger,? (minimum de
traitement sur le client) - ?topologie du réseau inconnue?
- ...
47Sélection des couches
- Selon la qualité de la vidéo souhaitée.
- Inutile d envoyer des couches sur le réseau qui
ne seront pas utilisées dans la restitution de la
vidéo. - Il faut filtrer au plus tôt les couches inutiles
48Agrégation des couches
- Agrégation des couches reçues selon la qualité
souhaitée - Les ressources des autres routeurs sont inconnues
- ? Dès quun routeur a suffisamment de
ressources, on y agrège une partie du flux. - (pas d équilibrage de charge)
49Gestion des ressources
- Les traitements ne doivent pas porter atteinte au
fonctionnement des autres flux. - Il faut donc
- partager l utilisation du CPU avec les autres
protocoles (en limitant l utilisation des
ressources de calcul). - partager la bande passante (en diminuant le
nombre de couches du flux en cas de congestion).
50Plan de lexposé
- Qualité de service dans un réseau hybride
- QoS dans les réseaux  traditionnelsÂ
- QoS dans les réseaux actifs
- Vers une cohérence de la QoS dans les réseaux
hybrides - Adaptation d un flux hiérarchique sur un réseau
actif. - Vidéo à la demande et codage hiérarchique
- Objectifs de notre protocole
- Fonctionnement de notre protocole
- Simulation et premiers résultats.
51Fonctionnement (1/5)
- Requête
- vidéo souhaitée
- qualité souhaitée
- caractéristiques (CPU, codecs supportés)
- analyse de la bande passante
- marquage de Rn
Nombre de couches
52boolean evaluate (Node n) if
(n.bandwidthAvailable lt ourBandwidthLimit)
makeServerDecreaseVideoQuality() //
Congestion if (this.alreadyDone) return
n.routeForNode(this,getDst()) // paquet
déjà traité else
// paquet non-traité if (n !
lastNode) if (n.resourcesCPUAvailableltlimi
t) // Pas le dernier nœud return
n.routeForNode(this,getDst()) // CPU trop
chargé else this.AggregateAllLayer
s() // On traite le paquet
this.alreadyDonetrue return
n.routeForNode(this,getDst()) else
if (n.resourcesCPUAvailableltlimit)
// Dernier routeur this.AggregateOnlyBasic
Layer() // Dernier routeur surchargé
this.alreadyDonetrue //
on agrège que la couche de
makeServerDecreaseVideoQuality() // base
return n.routeForNode(this,getDst())
else //
Dernier routeur a this.AggregateAllLayers(
) // suffisamment de ressources
this.alreadyDonetrue //
on agrège donc toutes les return
n.routeForNode(this,getDst()) // couches
53Fonctionnement (3/5)
- Dans les réseaux non-actifs un flux par couche
- Multicast (qualités différentes suivant les
clients). - QoS (type DiffServ) selon la couche.
- ...
54Fonctionnement (4/5)
- localisation de l agrégation? Tampon (délai?)?
55Fonctionnement (5/5)
- traitement des images indépendant si
- 1 image est contenue dans 1 seul paquet ?toutes
les couches utilisent le même flux - (pas de frames P,B seulement des I)
- Les avantages précédents sont conservés
- multicast évolué peut-être reproduit
- QoS adaptée au niveau protocole
56Paquet actif transportant une image encodée
hiérarchiquement
- Un paquet contient toutes les couches d une
image - Exemple d un paquet contenant une image encodée
en 3 couches
57QoS pour flux hiérarchiqueAlgorithme
- S il n y a pas de congestion
- Le paquet est envoyé intact
- S il y a une congestion de  niveau 1
- On supprime 1 couche du paquet
- ...
- S il y a une congestion de  niveau n
- On supprime n couches du paquet
-
- Si la congestion est très forte
- On supprime le paquet
58QoS pour flux hiérarchiqueBilan
- ? QoS permettant un traitement des couches
importantes statistiquement meilleur - ? QoS  intelligente tenant compte de la
sémantique des données - ? Pas de réservation de bande passante possible
- ? Pas encore d expérimentation
59Gestion des ressources (1/3)
- CPU
- si un routeur est surchargé alors il  laisse
passer les paquets - s ils sont tous surchargés, alors ils arrivent
sur Rn non-traités - si Rn n a pas suffisamment de ressources, il
n agrège que ce qu il peut - une couche de moins,
- ...
- la couche de base,
- rejet du paquet.
60Gestion des ressources (2/3)
- CPU
- si la situation persiste, alors, Rn contacte le
filtre du serveur vidéo pour baisser le nombre de
couches - réduction de la qualité
- réduction de la bande passante utilisée
- diminution des traitements sur chaque routeur.
- On aimerait ce fonctionnement au niveau protocole
61Gestion des ressources (3/3)
- Bande passante
- si une file d attente sature, alors on contacte
le filtre du serveur vidéo afin de baisser le
nombre de couches envoyées - réduction de la qualité
- réduction de la bande passante utilisée
- diminution des traitements
- Tous les routeurs précédents sont reconfigurés
afin de quils suppriment une couche sur les
paquets déjà envoyés.
62Plan de lexposé
- Qualité de service dans un réseau hybride
- QoS dans les réseaux  traditionnelsÂ
- QoS dans les réseaux actifs
- Vers une cohérence de la QoS dans les réseaux
hybrides - Adaptation d un flux hiérarchique sur un réseau
actif. - Vidéo à la demande et codage hiérarchique
- Objectifs de notre protocole
- Fonctionnement de notre protocole
- Simulation et premiers résultats.
63Simulation (n3)
- Essai 1 10 flux hiérarchiques
- Essai 2 20 flux
- Essai 3 30 flux?Rn reçoit des paquets
non-traités - Essai 4 30 flux après baisse d une couche
64Développement en cours (1/2)
- Tests des algorithmes de QoS  active dans un
environnement plus réaliste - ? Implantation et tests de la QoS pour les flux
hiérarchiques - Implantation et tests de la gestion du Multicast
(avec des qualités différentes suivant les
clients) - implantation du protocole complet
- ANTS ? Tamanoir?
65Développement en cours (2/2)
- Implanter les autres politiques de distribution
des calculs notamment - permettre le choix des nœuds actifs utilisés en
fonction de  tarifs par exemple, - permettre une répartition plus uniforme de charge
66Limitation de débit GTS / TBF, HTB
- TBF global paramètres à ajuster
- GTS / HTB par classe
- token bucket
67QoS au niveau nœud actif Priorité statistique
WFQ Â actifÂ
- Environnement peu stressé
- classe 1 70 classe 2 20 classe 3 10
- paquets reçus paquets perdus
68QoS au niveau protocole Bilan
- ? Tenant compte de la sémantique des données
- ? QoS Â intelligenteÂ
- ? Approche totalement différente des approches
sur réseaux traditionnels - Un autre exemple plus loin
69Perspectives (1/3)
- Amélioration du simulateur
- plus réaliste
- ? NS2 Panama
- ? JavaSim esib-anet
- prenant en compte la bande passante
- basé sur un modèle de files d attente
70Perspectives (2/3)
- Amélioration de la QoS détection sur chaque
routeur actif du retard des paquets. Deux
politiques possibles - curative suppression des paquets qui devraient
être arrivés, - préventive
- suppression de couches en fonction du retard,
- suppression des paquets estimés en retard (Ã
partir d une estimation du temps restant pour
atteindre le client).
71Perspectives (3/3)
- Gestion de la bande passante.Deux politiques
possibles - curative On attend la perte effective de
paquets et on attend la notification (comme RTCP
de RTP) - préventive On interroge les routeurs sur le
niveau de remplissage de leurs files
d attenteOn peut réagir avant la perte
effective de paquets.