Telechargé par Jean Marc Kalombo Kabalu

Projet gestion bande passante-New-Version

publicité
I. Introduction
1. contexte et justification
Des nos jours toutes les entreprises rencontrent souvent un problème de lenteur d’accès à
l’internet dû à une mauvaise utilisation de la bande passante qui entrave le bon
fonctionnement des services qui sont tributaires de la disponibilité et surtout de la qualité
du service Internet.
Le manque d’une bonne politique de gestion de la bande passante amène souvent les
entreprises à augmenter la bande passante, et dans la plus part de cas changer de
fournisseur d’accès à l’internet afin de résoudre le problème rencontré.
Par ce point de vu les entreprise pensent qu’une bande passante plus importante et le
changement de fournisseur d’accès à l’internet vont améliorer leur confort de travail, mais
ne fait que masquer temporairement les problèmes le plus souvent. Cette attitude
peut masquer d’autres signaux d’alerte qui mériteraient une attention immédiate et
particulière, tel qu’un poste infecté qui essaye de propager un malware saturant ainsi la
bande passante de l’entreprise.
Ainsi à travers ce projet nous voulons montrer comment définir et mettre en œuvre une
bonne politique de gestion de la bande passante qui sera une source d’efficacité et
d’économies substantielles pour les entreprises.
Pour mieux gérer la bande passante dans le cadre de notre projet nous avons catégorisé
les utilisateurs en fonction de leur degré de dépendance à l’utilisation de la connexion
internet, et avons utilisé des fil d’attente par connexion sur un routeur mikrotik en recourant
à la table mangle de son pare-feu.
2. Revue de la littérature
Pour rendre notre projet intelligible et compréhensible nous nous sommes proposé de
définir certains concepts que nous avons utilisés tels que :
2.1. La bande passante
Pour les réseaux informatiques, le terme de bande passante est synonyme de taux de
transfert de données, c'est-à-dire le volume de données pouvant être transporté d'un point
à un autre dans un laps de temps donné (généralement une seconde).
Dans cette acceptation, la bande passante d'un réseau est généralement exprimée en bits
par seconde (bit/s). Sur les réseaux modernes, le débit est mesuré en millions de bits par
seconde (mégabits par seconde, ou Mbit/s) ou en milliards de bits par seconde (gigabits
par seconde, ou Gbit/s). Un test de bande passante permet de mesurer le débit.
La bande passante n'est pas le seul facteur qui affecte les performances du réseau : la
perte de paquets, la latence et la gigue sont d'autres facteurs qui dégradent le débit d'un
réseau et ramènent le fonctionnement d'une liaison au niveau de celle d'une bande
passante inférieure.
2.2. Le routeur mikrotik
Un routeur est un équipement réseau informatique assurant le routage des paquets. Son
rôle est de faire transiter des paquets d'une interface réseau vers une autre, au mieux,
selon un ensemble de règles.
Le routeur Mikrotik est un équipement fabriqué par Mikrotīkls Ltd., dont le système
d'exploitation est bâti sur le kernel Linux.
Ce système permet de transformer un ordinateur personnel en routeur, incluant des
fonctionnalités telles qu'un Pare-Feu, un serveur et un client VPN, contrôler le trafic en
fonction d'une qualité de service (QOS), un accès réseau sans fil.
Le système peut également être utilisé afin de créer un portail captif. Ce système
d'exploitation possède une licence multi-niveaux, chaque niveau offrant davantage de
fonctionnalités.
Les frais de licence seront définis sur le niveau sélectionné. Une interface graphique,
nommé Winbox, est également disponible afin de configurer le système. Enfin, une API
permet de personnaliser le système et le surveiller.
2.3. Le pare-feu et la table mangle
2.3.1. Le pare-feu
A l’Origine du terme et selon le contexte, le terme avait différentes significations :




dans le domaine de la lutte contre les incendies de forêt, il se réfère aux
allées pare-feu destinées à contenir l'extension des feux de forêts ;
au théâtre, le déclenchement d'un mécanisme « pare-feu » (ou « coupe-feu »)
permet d'éviter la propagation du feu de la salle vers la scène ;
dans le domaine de l'architecture, il fait référence aux portes coupe-feu ou à tout
autre dispositif constructif destiné à contenir l'extension d'un incendie ;
en informatique, l'usage du terme « pare-feu » est
donc métaphorique. Il représente un mur virtuel qui
bloque tout ce qui tente d'entrer avec l'intention de
nuire dans une machine ou un réseau. Il établit une
barrière de protection contre les intrusions et les
contaminations venant de l’extérieur
De nos jours le terme pare-feu (de l'anglais firewall) désigne un logiciel et/ou
un matériel qui permet de faire respecter la politique de sécurité du réseau, en définissant
quels sont les types de communications autorisés sur ce réseau informatique. l surveille et
Page 2
contrôle les applications et les flux de données (paquets). Un pare-feu est parfois
appelé coupe-feu, garde-barrière, barrière de sécurité, ou encore firewall.
2.3.2. La table mangle
Une table est en fait un ensemble de chaînes, sous forme des règles, qui permettent
d’appliquer la politique de sécurité du réseau. Il existe pour l'instant 3 tables :
Filter, NAT et Mangle
2.3.2.1. La table Filter
Comme son nom l'indique, cette table sert à filtrer les paquets réseaux. C'est à dire que
nous allons pouvoir trier les paquets qui passent à travers le réseau, et supprimer ceux qui
ne nous intéressent pas, ou que nous trouvons dangereux. Pour cela, la table "Filter"
n'utilise que 3 chaînes :
 INPUT : Cette chaîne contrôle les paquets à destination des applications.
 OUTPUT : Elle analyse les paquets qui sortent des applications.
 FORWARD : Elle filtre les paquets qui passent d'une interface réseau à l'autre.
Notez au passage que les paquets de ce type ne passent jamais par les chaînes
INPUT et OUTPUT.
2.3.2.2. La table NAT
La table NAT (Network Adress Translation, ou Traduction d'Adresses Réseau).
Nous avons besoin là encore de 3 chaînes :



PREROUTING : Les paquets vont être modifiés à l'entrée de la pile réseaux, et ce,
qu'ils soient à destination des processus locaux où d'une autre interface.
OUTPUT : Les paquets sortant des processus locaux sont modifiés.
POSTROUTING : les paquets qui sont près à être envoyés aux interfaces réseaux
sont modifiés.
2.3.2.3. La table Mangle utilisée dans le cadre de ce projet
Le rôle principal de cette table devrait être de modifier des paquets. En d'a utres termes,
vous pouvez utiliser en toute liberté les correspondances de la table mangle, qui
permettent de changer les champs de TOS (type de service), et d'autres.
Les cibles suivantes sont valides uniquement dans la table mangle. Elles ne doivent pas
être utilisées en dehors de cette table :





TOS
TTL
MARK
SECMARK
CONNSECMARK
La cible TOS permet de définir et/ou modifier le champ de Type de Service d'un paquet.
C'est utile pour définir des stratégies réseau concernant le choix de routage des
paquets. Sachez que, d'une part ceci n'a pas été perfectionné, d'autre part ce n'est pas
vraiment implémenté sur Internet car la majorité des routeurs ne se préoccupent pas de
ce champ, et quelquefois même, ils adoptent un comportement erroné. Bref, ne
Page 3
configurez pas ce champ sur les paquets qui naviguent sur Internet, sauf si vous
souhaitez leur appliquer des décisions de routage, avec iproute2.
La cible TTL permet de modifier le champ durée de vie ou TTL(Time To Live) d'un
paquet. Il est possible par exemple de spécifier aux paquets d'avoir un
champ TTL spécifique. Ceci peut se justifier lorsque vous ne souhaitez pas être rejeté
par certains Fournisseurs d'Accès à Internet (FAI) trop indiscrets. En effet, il existe des
FAI qui désapprouvent les utilisateurs branchant plusieurs ordinateurs sur une même
connexion, et de fait, quelques-uns de ces FAI sont connus pour vérifier si un même
hôte génère différentes valeurs TTL, supposant ainsi que plusieurs machines sont
branchées sur la même connexion.
La cible MARK permet d'associer des valeurs de marquage particulières aux paquets.
Elles peuvent ensuite être identifiées par les programmes iproute2 pour appliquer un
routage différent en fonction de l'existence ou de l'absence de telle ou telle marque. On
peut ainsi réaliser de la restriction de bande passante et de la gestion de priorité (Class
Based Queuing).
La cible SECMARK peut être utilisée pour placer des marques dans un contexte de
sécurité sur des paquets dans SELinux ou tout autre système de sécurité capable de
gérer ces marques.
CONNSECMARK sert à copier un contexte de sécurité vers ou depuis un simple paquet
ou vers une connexion complète. Elle est utilisée par SELinux ou autre système de
sécurité pour affiner cette sécurité au niveau connexion.
Nous avons besoin là encore de 3 chaînes :





PREROUTING : Les paquets vont être marqués en entrée de la couche réseau,
en fonction de certains critères, de type de service (grâce aux numéros de ports
source et/ou de destination), d'adresses IP de source et/ou de destination, de
taille des paquets, etc. Ces informations seront utilisées par un programme
fonctionnant dans l'espace kernel.
INPUT : Les paquets sont marqués juste avant d'être envoyés aux processus
locaux.
FORWARD : Les paquets passant d'une interface réseau à l'autre sont marqués.
OUTPUT : Là, ce sont les paquets générés par les applications locales (un client
web par exemple) qui vont être marqués, tout comme les paquets entrant dans la
couche réseau.
POSTROUTING : Les paquets prêts à être envoyés sur le réseau sont marqués.
L'utilisation de cette chaîne dans la table Mangle n'est cependant pas très
évidente.
2.4. La file d’attente par connexion
Les files d’attente de stockage d’information en réseau que nous avons utilisées dans ce
projet nous ont permis de de limiter et hiérarchiser le trafic.
L'implémentation des files d’attente (queue) dans MikroTik RouterOS est basée sur
Hierarchical Token Bucket (HTB), qui permet de créer une structure de file d'attente
hiérarchique et de déterminer les relations entre ces files d'attente.
Sous RouterOS, ces structures hiérarchiques peuvent être attachées à deux endroits
Page 4
différents.
Il existe deux manières différentes de configurer les files d’attente dans RouterOS:


Queue simple conçu pour faciliter la configuration de tâches simples et
quotidiennes de mise en file d'attente (telles que la limitation d'envoi /
téléchargement d'un seul client, la limitation de trafic p2p, etc.).
Queue tree (en français arborescence des files d'attente) - pour la mise en
œuvre de tâches de mise en file d'attente avancées (telles que la stratégie de
priorité globale, les limitations du groupe d'utilisateurs) qui requiert des flux de
paquets marqués provenant de / ip firewall mangle facility.
2.4.1. Queue Simple
Le moyen le plus simple de limiter le débit de données d'adresses IP spécifiques et / ou
de sous-réseaux consiste à utiliser des files d'attente simples.
Vous pouvez également utiliser des files d'attente simples pour créer des applications
QoS avancées. Ils ont des fonctionnalités intégrées utiles:




Mise en file d'attente du trafic d'égal à égal
Application de règles de file d'attente sur des intervalles de temps choisis
Les priorités
Mise en forme (planification) du trafic bidirectionnel (une limite pour le total de
téléchargement + téléchargement)
Les files d'attente simples ont un ordre strict: chaque paquet doit passer par chaque file
d'attente jusqu'à atteindre une file d'attente conditionnée par les paramètres de paquet
ou jusqu'à ce que la liste des files d'attente soit atteinte. (Dans le cas de 1000 files
d'attente, le paquet de la dernière file d'attente devra passer par 999 files d'attente avant
d'atteindre la destination).
2.4.2. Queue Tree
Queue Tree (L'arbre de file d'attente en français) crée une seule file d'attente
directionnelle dans l'un des HTB. C'est aussi la seule façon d'ajouter une file d'attente
sur une interface séparée.
De cette façon, il est possible de simplifier la configuration de mangle - vous n'avez pas
besoin de marques distinctes pour le téléchargement et le téléchargement - seul le
téléchargement parviendra à l'interface publique et seul le téléchargement atteindra
l'interface privée.
L'arborescence des files d'attente n'est pas ordonnée - tout le trafic la passe ensemble.
2.4.3. Les types de file d’attente
Les types de file d'attente ou les algorithmes de mise en file d'attente (ordonnancement)
décrivent quel paquet sera transmis ensuite en ligne. Le RouterOS prend en charge
plusieurs algorithmes de mise en file d'attente:


BFIFO, PFIFO, MQ PFIFO
ROUGE
Page 5


SFQ
PCQ
Dans le cadre de ce projet nous allons plus nous focaliser sur l’algorithme PCQ (Per
Connection Queuing) qui est la mise en file d'attente par connexion.
Il est possible de choisir des identifiants de flux (à partir dst-address | dst-port | srcaddress | src-port). Par exemple, si vous classifiez les flux par adresse src sur une
interface locale (interface avec vos clients), chaque sous-flux PCQ correspond au
téléchargement d'un client particulier.
Il est possible d’attribuer une limitation de vitesse aux sous-flux avec l’option pcq-rate. Si
pcq-rate = 0, les sous-flux diviseront le trafic disponible de manière égale.
II. Objectif général
L’objectif général poursuivit par ce projet de la gestion de la bande passante est de
catégoriser les trafic de l’entreprise en fonction des besoins des utilisateurs. Et pour ce
faire, nous avons divisé le trafic en quatre catégories :
1. Basic users : pour les utilisateurs qui se servent juste de l’internet pour envoyer
et recevoir les e-mails et s’informer à travers les moteurs de recherche
2. Standard users : pour les utilisateurs dont leurs activistes professionnelles
dépendent de la qualité de la connexion internet
3. Vip users : pour le staff dirigeant de l’entreprise
4. Vtc users : pour les équipements dédiés à la vidéoconférence.
III. Objectifs spécifiques
Les objectifs spécifiques visé par ce projet peuvent être résumés de la manière
suivante :
1. Catégorisation des utilisateurs et définition de la bande passante par catégorie ;
2. Création des catégories reprises dans le tableau ci-dessus et affectation des
adresses IP à chacune d’elles à travers le firewall address list du routeur ;
3. Marquage des connexions et paquets par catégories et par flux entrée et sortie ;
4. Création des paramètres des bandes passantes pour les files d’attente par
connexion, conformément à la catégorisation faite et par flux entrée et sortie ;
5. Création de l’arbre des files d’attente à partir des files d’attente par catégorie, et
part flux entrée et sortie ;
6. Affectation des bandes passantes à chaque file d’attente par catégorie et par flux
entrée et sortie ;
IV. méthodologie
Pour mener à bon port notre projet nous avons procédé de la manière suivante :
1. Catégorisé les utilisateurs faite en fonction de leur degré de dépendance à
l’utilisation de la connexion internet :
Catégorie
Identifiant
Bande passante en Kbps
Page 6
Catégorie
Identifiant
Bande passante en Kbps
up
Down
Contention
1
Basic
1024
1596
1:1
2
Standard
1596
2304
1:1
3
Vip
2048
2304
1:1
4
Vtc
2048
3092
1:1
2. Création des catégories reprises dans le tableau ci-dessus et affectation des
adresses IP à chacune d’elles à travers le firewall address list du routeur
3. Marquage des connexions et paquets par catégories et par flux entrée et sortie
Page 7
4. Création des paramètres des bandes passantes pour les files d’attente par
connexion, conformément à la catégorisation faite, et par flux entrée et sortie
5. Création de l’arbre des files d’attente à partir des files d’attente par catégorie et
part flux entrée et sortie ;
Page 8
Page 9
6. Affectation des bandes passantes à chaque file d’attente par catégorie et par flux
entrée et sortie
1. Flux d’entré (Download Speed) pour la catégorie Vtc à titre d’exemple
2. Flux de sortie (Upload Speed) pour la catégorie Vtc à titre d’exemple
Page 10
V. Résultats obtenus
La configuration de l‘arbre des files d’attente en fonction de la politique de
gestion de la bande passante nous a permit en utilisant le site
http://speed.test.xfinty.com d’obtenir les résultats suivants par catégorie,
et sur lesquels vous pouvez voir les valeurs de flux d’entré (Download
speed) et de sorti (Upload speed) :
1. Basic users
2. Standard users
Page 11
3. Vip users : pour le staff dirigeant de l’entreprise
4. Vtc user
Des résultats approximatifs peuvent être obtenus en utilisant les sites suivants :
https://www.sfr.fr/mire-test-debit/
https://www.nperf.com/en/
https://www.speedtest.net/
VI. Budget d’acquisition d’un routeur mikrotik pour une petite et moyenne
entreprise
L’acquisition de ce routeur coûte environ 70,00 $ dollars USD.
Page 12
Téléchargement