Download - Qualité de Service sur Linux
![Page 1: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/1.jpg)
Qualité de Service sur Linux
Malik GUILLAUD
Nicolas COUTANT
![Page 2: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/2.jpg)
2
Plan
Problématique
La théorie
L’état de l’art
Notre Solution
Conclusion
![Page 3: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/3.jpg)
Problématique
![Page 4: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/4.jpg)
4
CONTEXTE
INTERNET
Passerelle Linux
Sous-réseau 1
Sous-réseau 2
![Page 5: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/5.jpg)
5
Vue générale
Monopolisation de la bande passante– Exemple: upload/download ftp– Handicape fortement tout autre flux
Flux multimédia– VoIP, vidéoconférence, radio, vocal– Débit assuré et faible latence
Protocoles interactifs légers– ssh, telnet, … – http, https, … – Garder une bonne réactivité dans tous les cas
Applications spécifiques– Favoriser / handicaper
![Page 6: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/6.jpg)
6
Vue réseau
Flux parasites– p2p
Gourmand en ressources (nombre de connexions) Gourmand en bande passante
– Spywares, mises à jour intempestives,…
Partage de la bande passante– Équitablement (connexion partagée en résidence)– Selon une stratégie définie
![Page 7: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/7.jpg)
Qualité de Service – La Théorie
![Page 8: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/8.jpg)
8
La Théorie
Définition
Les principaux ordonnanceurs
Les architectures d’ordonnancement
![Page 9: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/9.jpg)
9
Définition
Qualité de service :
L'ensemble des technologies permettant d'assurer la qualité du service réseau, de contrôler la bande passante ou encore d'assigner des priorités aux flux réseau.
La qualité de service désigne avant tout un transfert à débit garanti entre l'émetteur et le récepteur des données, et ce avec des temps d'attente (de latence) réduits au minimum.
![Page 10: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/10.jpg)
10
Définition
Deux approches :
– IntServ (Integrated Services) :Réservation de bout en bout de la bande
passante nécessaire
– DiffServ (Differenciated Services) :Séparation des flux en classes grâce à une
analyse de la trame.
![Page 11: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/11.jpg)
11
Les Ordonnanceurs
![Page 12: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/12.jpg)
12
Les Architectures d’ordonnancement (1/2)
Class Based Queuing– Les différents flux sont divisés en classes avec
des priorités différentes.– Les autres flux sont envoyés en Best-Effort.
![Page 13: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/13.jpg)
13
Les Architectures d’ordonnancement (2/2)
Heriarchical Token Bucket– Même principe que pour CBQ (hiérarchisation
des flux) mais avec un sceau à jeton comme ordonnanceur.
![Page 14: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/14.jpg)
14
La Qualité de Service sous Linux
Les possibilités du noyau Linux 2.6
La commande TC
Les Scripts et Applications existantes
![Page 15: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/15.jpg)
15
Les possibilités du noyau Linux 2.6
Marquage par Netfilter/Iptables :– Grâce à la table MANGLE, qui permet de
marquer n’importe quel paquet grâce à Netfilter.
![Page 16: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/16.jpg)
16
La Commande TC
tc qdisc [ add | change | replace | link ] dev DEV[ parent qdisc-id | root ] [ handle qdisc-id ] qdisc [ qdisc specific parameters ]
tc class [ add | change | replace ] dev DEV parent qdisc-id [ classid class-id ] qdisc [ qdisc specific parameters ]
tc filter [ add | change | replace ] dev DEV [ parent qdisc-id | root ] protocol protocol prio priority filtertype [ filtertype specific parameters ] flowid flow-id
tc [-s | -d ] qdisc show [ dev DEV ] tc [-s | -d ] class show dev DEV tc filter show dev DEV
![Page 17: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/17.jpg)
17
Les Classifieurs
3 classifieurs :– U32
Trouver un champ dans une trame IP
– Fw Suivant le marquage avec Iptables/NetFilter
– Route Suivant le numéro de route dans la table de routage
![Page 18: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/18.jpg)
18
Les Scripts et Applications existants
Les Script de QoS– HTBInit et CBQInit– WonderShaper
Les Applications– TCNG– RCC
![Page 19: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/19.jpg)
19
Les Script de QoS
CBQ.init et HTB.init– Avantage : Puissant, Beaucoup de possibilités– Inconvénient : Complexité de configuration
WonderShaper– Avantage : Simplicité de configuration,
« prioritisation » de flux internet (http,ftp,…)
– Inconvénients : Fonctionnalités limitées
![Page 20: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/20.jpg)
20
Traffic Control Next Generation (1/2)
Génère, à partir d’un pseudo langage du genre C ou Perl et grâce à un compilateur (TCC), plusieurs formes de commandes TC.
Offre aussi la possibilité de simuler différents trafics (TCSIM).
![Page 21: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/21.jpg)
21
Traffic Control Next Generation (2/2)
![Page 22: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/22.jpg)
22
RCC
Très récent (Janvier 2005) Application Client/Serveur écrite en C Configuration Graphique Centralisation des règles de filtrage
![Page 23: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/23.jpg)
Notre Solution
![Page 24: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/24.jpg)
24
CONTRAINTES
Écrire un script bash– Couvrant un maximum de besoins– Simple à configurer (pour un utilisateur de base)– Utilisant les mises à jours du Kernel 2.6
![Page 25: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/25.jpg)
25
PRINCIPE DE NOTRE SOLUTION (1/2)
Réseau découpé en groupes de machines
INTERNET
Passerelle Linux
Sous-réseau 1
Sous-réseau 2
GROUPE 1
GROUPE 2 GROUPE 3
GROUPE 4
![Page 26: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/26.jpg)
26
PRINCIPE DE NOTRE SOLUTION (2/2)
Sous-réseau 1
GROUPE 1Classe mère 1
Classe fille PRIO 1 Classe fille PRIO 2 Classe fille PRIO 3 Classe fille PRIO 4 Classe fille PRIO 5
BANDE PASSANTE:
100 Kbit
Bande passante: 30%
Paquets:dest:tcp/80dest:tcp/110
Bande passante: 20%
Paquets:dest:udp/554
Bande passante: 25%
Paquets:default
Bande passante: 20%
Paquets:icmp
Bande passante: 5%
Paquets:dest:tcp/4661dest:tcp/4662src:tcp/4662
![Page 27: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/27.jpg)
27
CONFIGURATION
Interface & débit montant maximum Configuration de base
– Les classes filles sont configurées par défautPrio1: applications spécifiques à forte prioritéPrio2: ssh, telnetPrio3: http,https,diversPrio4: ftpPrio5: applications spécifiques à faible priorité
– Bande passante repartie équitablement
![Page 28: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/28.jpg)
28
CONFIGURATION
Configuration avancée– Pour chaque classe fille sont configurables:
Le pourcentage de bande passante Les différents trafics (protocole,port,…)
![Page 29: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/29.jpg)
29
CHOIX D’IMPLEMENTATION
Architecture HTB– Permet ce découpage en classe– Implémentation plus puissante que CBQ– Exploite les mises à jour du kernel 2.6
Files d’attente SFQ Classifieur « fw »
– Conjointement avec des règles de filtrage Iptables
![Page 30: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/30.jpg)
Conclusion
![Page 31: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/31.jpg)
31
Conclusion
Bilan– Configuration légère et évolutive– Répond à la plupart des problèmes de QoS
Ce que le projet nous a apporté:– QoS domaine complexe– Compréhension des problèmes liés aux flux
réseaux
![Page 32: Qualité de Service sur Linux](https://reader030.vdocuments.pub/reader030/viewer/2022020801/56813a63550346895da25abf/html5/thumbnails/32.jpg)
MERCI