qualité de service sur linux malik guillaud nicolas coutant

26
Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Upload: internet

Post on 03-Apr-2015

108 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Qualité de Service sur Linux

Malik GUILLAUD

Nicolas COUTANT

Page 2: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Plan

Problématique

Analyse

État de l’art

Nos Propositions

Page 3: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Contexte

Qualité de Service (QoS) ?– Disponibilité– Bande Passante– Latence– Gigue– Pertes

Exemples

Page 4: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Les problèmes concrets (1/2)

Vue générale

gros download/upload ftp (ralentissement général des autres trafics)

les flux multimédia ex : radio, vidéoconférence, vocal, VoIP

favoriser la réactivité des protocoles interactifs légers ex : ssh, telnet, http, …

favoriser/limiter des applications spécifiques ex : son serveur web, un jeu, messagerie instantanée

Page 5: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Les problèmes concrets (2/2)

Vue réseau

limiter les trafics parasites et gourmands

(ex : p2p, recherche de MAJ automatique)

contrôler le partage de la bande passante– control suivant des paramètres précis

(ex : adresse/masque IP, utilisateur)

Page 6: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Analyse

Les principaux ordonnanceurs et les architectures d’ordonnancement

Les possibilités du noyau Linux 2.6

La commande TC

Page 7: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Les Ordonnanceurs

Page 8: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Les Architectures d’ordonnancement (1/2)

Class Based Queuing– Les differents flux sont divisés en classes avec

des priorités différentes.– Les autres flux sont envoyés en Best-Effort.

Page 9: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

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 10: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

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 passant a travers le Netfilter.

Page 11: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

La Commande TC

tc qdisc {add | del} dev INTERFACE

root cbq [avpkt AVPKT] [bandwidth BP]

[cell CELL] [maxburst MAXBURST]

[minburst MINBURST] [minidle MINIDLE]

[mpu MPU] [rate RATE]

Les classificateurs :– Fw (Firewall) : suivant le marquage par NetFilter.

– U32 : peut lire n’importe quel champ d’un paquet IP.

– Route : permet de classer les paquet en fonction de leur numéro de route.

Page 12: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

État de l’Art

Les Script de QoS

TCNG (Traffic Control Next Generation)

Page 13: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

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,

« priorisation » de flux interactifs légers (ssh,telnet,…)

– Inconvénient : Fonctionnalités limitées

Page 14: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

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 15: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Traffic Control Next Generation (2/2)

Page 16: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Nos propositions

Page 17: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Les contraintes

Utilisable par des personnes ayant les connaissances de bases en réseau (port, adresse IP, bande passante)

Relativement simple à configurer

Couvre un maximum de besoin en QoS

Page 18: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Architecture et files

Quelle architecture choisir ? Implémentation HTB de l’architecture CBQ

- la plus performante

- exploite les dernières MAJ du kernel

Quelles files d’attentes ?

htb semble être un bon choix…

Page 19: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Schéma général

CLASSE MEREIntègre des

fonctionnalités communes à tous

CLASSE FILLE 1Configuration pour

le 1er groupe demachines

CLASSE FILLE 2 CLASSE FILLE 3

Page 20: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

La classe mère

Intégration d’une « pré-hiérarchie  des priorités » : - Forte priorité pour les protocoles interactifs légers :

ssh, telnet- Priorité « moyenne » pour http- Priorité « assez faible » pour ftp

Hiérarchie bénéfique dans la très grande majorité des cas

Page 21: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Les classe filles (1/2)

Une classe-fille correspond à un groupe de machines

Pour chacun de ses groupes sont à configurer: les adresses des machines du groupe les applications spécifiques (ports et/ou adresses

destinations) à forte priorité celles à très faible priorité la bande passante affectée à ce groupe éventuellement les attributs unbounded et isolated

(par défaut à faux pour optimiser le réseau)

Page 22: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Les classe filles (2/2)

Répond à la plupart des problèmes pouvant se poser

Évolutivité

Assez léger à configurer (un seul fichier et un nombre de variables raisonnable)

Nécessité de connaître tous les ports/adresses destinations des applications à configurer

Page 23: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Hiérarchie des priorités

Page 24: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Partage de bande passante

Page 25: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

Test du script

pour les priorités, une simple machine sous linux avec accès à internet

pour un 1er test sur les groupes, une passerelle et une machine cliente

tests poussés: hommel ?

Page 26: Qualité de Service sur Linux Malik GUILLAUD Nicolas COUTANT

MERCI