You are on page 1of 8

Appel à contribution: Monitoring du réseau ADSL en Algérie

Appel à contribution:
Monitoring du réseau ADSL en Algérie
Tewfik Jazaïri – tewfik.j@gmail.com
Juillet 2009

1/8
Appel à contribution: Monitoring du réseau ADSL en Algérie

Introduction

La qualité constatée par les clients ADSL en Algérie est souvent sujette à polémique. Afin
de pouvoir évaluer de façon objective les performances, et de constituer une base de
connaissances, je propose qu'un projet open source soit lancé dans ce sens, et votre aide
sera indispensable pour sa réussite. Je vous invite à lire la présente proposition, ou de
sauter vers la section qui vous intéresse dans le texte si vous n'avez pas le temps de tout
lire; vous pourrez reprendre plus tard, à votre aise.

La problématique

Dans l'objectif de mettre en place un projet open source pour le suivi des performances du
réseau ADSL, je propose d'évaluer la proposition suivante, et je vous prie d'apporter vos
commentaires, qui seront plus que bienvenus :

Résumé

Quoi : une méthode pour collecter, analyser et publier les performances des réseaux ADSL
en Algérie

Pourquoi : afin de constituer une base de donnée vivante, sensibiliser les gens, isoler les
problèmes, avoir une influence éventuellement, faire améliorer les choses

Comment : en invitant les gens a donner leurs idées, critiques et suggestions, savoir faire,
expériences

Qui peut contribuer

- utilisateur ADSL : en effectuant des tests (en utilisant le futur logiciel), vous aiderez la
communauté a détecter les défaillances des fournisseurs, les goulots, isoler votre
problème. Vous pouvez aussi contribuer en donnant votre avis sur la question, en
signalant un bug, parler du projet autour de vous. L'outil vous permettra aussi d'identifier
la nature de votre problème, et à terme (pour certains) de les résoudre.

- développeur/chercheur : en écrivant des bouts de codes, des idées techniques, des


analyses éventuellement. Aucun besoin de s'investir lourdement, une fonction ou deux
suffiront pour faire avancer l'ensemble.

2/8
Appel à contribution: Monitoring du réseau ADSL en Algérie

- technicien/commercial chez un fournisseur d'accès : en parlant de ce projet aux


administrateurs de votre entreprise, en lisant la documentation qui l'accompagne, en étant
convaincu que cet outil permettra à votre employeur d'améliorer son service, sans
débourser un centime en R&D

Comment contribuer

En proposant des idées, en parler autour de vous, proposer des fonctionnalités (wishlist),
en débattre sur le forum, donner son avis, ...

Le projet

- L'outil proposé permettra d'afficher les tests en ligne sur un site web, par région,
fournisseur d'accès, qualité
- La récolte des tests est anonyme et ne concerne que les détails techniques
- le rapport est envoyé, et une copie est gardée sur le disque dur de l'utilisateur (qu'il
pourra utiliser pour réclamer auprès de son fournisseur, ou poster sur un forum afin qu'il
soit assisté)
- L'outil proposé permettra aux futurs clients de choisir - selon la région et le fournisseur -
la meilleur configuration selon leurs souhaits
- L'outil proposé permet d'avoir une évaluation indépendante des performances globales
des fournisseurs d'accès à internet en Algérie, constitue une base d'aide à la décision,
enrichie les recherches/rapports/articles dans le domaine.

Les métriques

Les paramètres que je vois intéressants à évaluer, sont à mon avis :

- le débit en download + le temps de latence : le débit uniquement ne suffit pas, car lui
même est affecté par d'autres paramètres (par exemple, la congestion sur le réseau)

- le système d exploitation : étant donné que les performances dépendent beaucoup du


stack tcp/ip qui est embarqué sur le système; il serait intéressant de connaitre la version de
l'OS (les implémentations sur windows par exemple ne sont pas respectueuses des
recommandations)

- le download en bulk et en rafale : le système ayant ses caractéristiques intrinsèques


(dépassement (overshoot), temps de montée (rise time), réponse permanente, il faudrait

3/8
Appel à contribution: Monitoring du réseau ADSL en Algérie

différencier ces deux façons d'évaluer le débit. D'ailleurs si vous voulez les 'voir' il suffit de
voir évoluer le graph de emule ou µTorrent : ça commence par monter suivant presque
une sigmoïde, puis redescend, et oscille autour d'une valeur; c'est le comportement
typique, et c'est pour cette raison que le téléchargement d'un fichier de 1Mo est plus
rapide en gros que 10 fichiers de 1024 Ko)

- l'horaire du test : puisque le système dans son ensemble dépend de ceci (heure:minutes)

- pour la région, je pense qu'il est plus intéressant de granulariser en donnant si possible le
rattachement par rapport au dslam (car parfois les goulots, sont à ce niveau la, et le
découpage par dslam est plus logique sur un réseau adsl que le découpage geo.)

Pour les quatre premiers paramètres, leur récolte ne constitue pas de problèmes majeurs,
et une programmation classique est adéquate.

Orientations du projet

Voici les aspects que j'estime nécessaires :

1 - le test devrait être automatisé :

+ pour que l'utilisateur n'ait à intervenir que peu (human factor)

+ pour collecter un plus grand nombre de métriques

+ pour homogénéiser les résultats

+ pour la collecte automatique (ça va de paire)

2 - si le test est automatisé, il doit être :

+ open source (en python, perl, java ou autre)

+ multiplateforme

3 - il doit être open source :

+ pour garantir l'évolution : chacun pourra rajouter ses fonctions dans la base de
données de code

4/8
Appel à contribution: Monitoring du réseau ADSL en Algérie

+ pour assurer la confiance : pas de distribution de logiciels malicieux

+ pour que ce soit une base de connaissances : quelque chose qui marche en
industrie, c est toujours intéressant pour les étudiants/demandeurs de savoir

+ si réussite il y a, c'est un projet qui émule, et qui pousse a voir davantage

4 - le test doit être propagé chez un grand nombre : (le grand nombre garanti la
fiabilité/répétabilité des résultats)

5 - Les résultats doivent être publiques : aucun intérêt pour l'utilisateur final de participer
a un "sondage" automatique s'il n'y a pas de retour d'expérience

Je vois en ça une bonne occasion pour commencer des choses assez sympa autour de
problématiques bien réelles, et des objectifs bien palpables.

Et les tests de débits en ligne ?

Pourquoi les résultats de tests manuels/semi automatiques ne sont pas pertinents (comme
mireadsl, zdnet speedtest, et les autres) :

- le résultat produit n'est pas sous forme traitable (dans un tableur, ou sur une base de
donnée)
- a cause de ça leur richesse est limitée, vous ne pouvez pas faire de statistiques (moyenne,
max, min, déviation)
- pour qu'il soient utilisables, par exemple classer la qualité par région, par dslam, par
débit max, par congestion, ... il faudrait reprendre ces tests et les transcrire en une écriture
traitable. trop contraignant pour un projet qui est basé sur le collectif/collaboratif

Méthodologie

En discutant autour de la meilleur façon de déployer un tel système, j'ai pensé à la


méthodologie suivante :

1 - Le choix des métriques : quels sont les éléments que le programme devrait collecter
chez le client. Bien entendu certains sont évidents, comme le débit en download et le débit
en upload, on devrait aussi en déterminer d'autres; dans ma vision première, je pensais à :

+ le ping : pour quantifier la congestion du réseau

5/8
Appel à contribution: Monitoring du réseau ADSL en Algérie

+ la qualité du dns (temps de réponse, satisfaction des requêtes)


+ le système d'exploitation
+ la date et heure du système
+ l'adresse ip de la passerelle ADSL : pour pouvoir localiser le dslam qui est
responsable du raccordement

Je pense que ces métriques pourrait être déjà un bon début.

2 - Le choix de la façon de distribuer ce software : pour que l'utilisateur soit le plus à l'aise
dans son utilisation, et pour qu'il soit utilisable sur un très grand nombre de plateformes.
est-ce que le programme doit être installable, téléchargeable ? doit-on le distribuer sous
forme de binaire, ou source ? doit-il démarrer sur un page web ?

3 - Le choix du langage de développement : si on utilise un langage populaire, les rajouts


se feront plus naturellement. on m'a conseillé java webstart, pour lancer des applications à
partir de pages web, parait-il. je pensais pour ma part a un programme en python qui
demanderait quand même de télécharger l'interpréteur pour les plateformes qui n'en sont
pas munies, mais l'avantage reste d'avoir du source en main (et donc de la richesse, et un
confort), et une idée derrière la tête celle d'utiliser plus tard l'excellent scapy [1] pour
performer des tests beaucoup plus en profondeur.

4 - La façon de rapporter les données collectées : renvoyer un rapport automatiquement,


ou proposer au client de poster le fichier de rapport lui même ? (moins automatisé), sous
quel format (xml, csv,...) ?

Pourquoi contribuer

Aussi, pour ceux qui ne voient pas encore l'utilité d'un tel outil, je vais tenter d'exposer ce
qui me parait être pertinent :

- Vous êtes manager/vous travaillez dans le domaine des tic : impliquez vos ingénieurs
pour participer à ce projet ne serait-ce que par une ligne de code par jour; votre retour sur
investissement serait de collecter des données réelles sur les comportements d'un réseau
de grande taille; une telle base de données :

+ coute très cher


+ n'est pas accessible légalement (sauf si ce projet aboutit)
+ les fournisseurs d'accès ADSL ne peuvent vous fournir de telles données : trop
stratégiques
+ l'analyse de ces données constitue une richesse

6/8
Appel à contribution: Monitoring du réseau ADSL en Algérie

+ constitue une pub pour vous

- Vous êtes étudiant/chercheur/développeur : idem, les données réelles ne sont presque


jamais publiées, vous pourrez faire valider vos modèles, voir si vos solutions collent à la
réalité, développer des méthodes

– Vous êtes utilisateurs final/futur client : l'analyse de ces données vous permet de savoir
si le problème est isolé ou global, vous permettent d'avoir un avis informé (pour choisir
votre prochain fournisseur selon votre région, vos exigences), vous permet d'avoir de
l'aide rapidement puisque l'ensemble des données utiles est récolté.

Pas encore convaincus ?

Le fournisseur d'accès à internet, et d'une façon générale, le prestataire de service sera


d'une oreille attentive dès que les clients s'expriment collectivement et d'une façon
organisée. Il suffit d'influencer l'évolution du chiffre d'affaire pour que le management
ajuste sa politique. Ce n'est pas la raison la plus parlante, mais elle me semble un
argument de plus pour convaincre du bien fondé de cette démarche.

Les graphs suivants représentent le chiffre d'affaire ainsi que le nombre total des abonnés
particuliers ADSL du fournisseur Eepad pour le mois de mai 2009. Remarquez que
pendant la durée du mois, ainsi que sur certaines portions, le mouvement massif de clients
influe sensiblement sur les performances (baisse de 23.-- % en CA).

Chiffre d'affaire réalisé chez le fournisseur Eepad entre avril 2009 et mai 2009

7/8
Appel à contribution: Monitoring du réseau ADSL en Algérie

Nombre d'abonnés ADSL chez le fournisseur Eepad, et son influence sur le chiffre d'affaire sur la période du
14 au 17 mai 2009

Quelle est la suite ?

Pour le moment, les choix à déterminer sont :

- Que mesurer
- Comment déployer
- Avec quel langage
- Sous quelle forme rapporter les données

Annotations

[1] scapy : logiciel en python pour la manipulation de packets tcp/ip, excellent pour le
debug, l'académique ou l'assessment (de firewall, par exemple)

http://www.secdev.org/projects/scapy/

8/8

You might also like