Catégories
Developpement Open-source Reseau

SJitter disponible dans les PPA

SjitterIl y a quelques temps, j’avais développé un logiciel en ligne de commande permettant de tester les caractéristiques de débit, délais et gigue entre deux points d’un réseau: SJitter. Afin d’en simplifier l’installation sous GNU/Linux Ubuntu, j’ai créer un dépôt PPA.

Ainsi, l’installation de SJitter ce résume aux lignes de commandes suivantes:

sudo add-apt-repository ppa:nicolashennion/ppa

sudo aptitude update

sudo aptitude install sjitter

et voilà le travail:

sjitters -h

usage: sjitters [-i] [-p PORT]

-p PORT: where PORT is the port number (>1024, <65535) [default:9930]

-i : Verbose mode

sjitterc -h

usage: sjitterc -c SERVER [[-n NBPCKT] | [-t SECOND]] [-p PORTNB] [-w SIZE] [-b BITRAT] [-s TOS]

-c SERVER: where SERVER is the server IP address or name

-n NBPCKT: where NCPCKT is the number of datagram (>1 , <65535) [default:100]

-t SECOND: where SECOND is the number of second (>1) [default:10]

-p PORTNB: where PORTNB is the port number (>1024, <65535) [default:9930]

-w SIZE: where SIZE is the application buffer size (bytes) (>128, <8000) [default:1400]

-b BITRATE: where BITRATE is the bitrate (IP level) in Kbps (>10) [default:100]

-s TOS: where TOS is the hexadecimal value for IP header TOS field (>=0x00, <=0xFF) [default:0]

Catégories
Open-source Reseau

SJitter version 0.18

Grâce à la contribution de Thierry Legras, voici une nouvelle version de SJitter, mon outil en ligne de commande permettant de tester un réseau, notamment au niveau débit, délai et gigue. SJitter est disponible sous Linux, BSD, Mac OS X et Windows (via cygwin).

Cette nouvelle version apporte un meilleur control au niveau du tag permettant de faire les tests en IPv6 et surtout la possibilité (via l’option « -s ») de fixer le champs ToS des paquets IPv4 (très utile pour tester votre configuration QoS).

La page officielle de SJitter est ici, la forge .

Catégories
Open-source Reseau

Outil pour la mesure de la QoS sur les réseaux IP

La qualité de service (QoS pour « Quality of service ») est la capacité à véhiculer dans de bonnes conditions un type de trafic donné en termes de disponibilité, débit, délai de transmission, gigue, taux de perte de paquets… (source Wiki)

La notion de qualité de service est une notion subjective, de ressenti utilisateur face à l’utilisation d’un système informatique. Il n’est pas trivial de mesurer cette QoS. Nous allons dans ce billet aborder quelques outils libres permettant d’obtenir des indicateurs chiffrés en nous focalisant sur la problématique des réseaux IP.

Ou faire les mesures ?

Première question à se poser quand on doit faire ce genre de mesure. La réponse dépend bien sûr de votre architecture. Souvent, l’on souhaite vérifier la QoS sur une liaison WAN( par exemple un liaison de type _DSL vers votre FAI). Dans ce cas précis, la mesure pourra être faite sur votre routeur d’accès, c’est à dire juste avant la liaison. En effet, celà permet de prendre en compte tous les flux de votre réseau. Il faut pour celà disposer d’un routeur d’accès sur lequel on peut installer les outils de mesures (par exemple un routeur/firewall basé sous Linux ou FreeBSD). Si ce n’est pas le cas, il est toujours possible de mettre un PC (sous Linux) en coupure entre votre switch réseau et votre routeur/modem.

Quoi mesurer ?

Pour un réseau en fonctionnement (c’est à dire que l’on écarte la disponibilité), on peut distinguer quatres grandes variables:

  • le débit: c’est la bande passante utilisé par un flux. Celle-ci peut être constante ou variable.
  • le délai de transit des paquets IP: dans un réseau IP, les données sont segmentées en paquets. Le délai de transit est le temps mis par uhn paquet pour aller d’un point A vers un point B.
  • la gigue dans un flux de paquets IP: c’est la variation du délai de transit entre plusieurs paquets IP. Ce paramètre est très important pour les applications de voix sur IP (VoIP) car les codecs de compression de la voix sont très sensibles à la gigue.
  • la perte de paquets: c’est le pourcentage de paquets IP perdus sur le réseau.

Comment tester ?

Plusieurs solutions sont possibles. La première consiste à utiliser les logiciels qu l’on souhaites tester sur son réseau. On peut le faire de manière manuelle ou automatique (via des scripts par exemple). L’important est de générer des flux qui soient représentatifs de l’utilisation standard de votre réseau.

Une autre solution est de simuler les flux à l’aide d’un outil comme Iperf qui est capable de générer un flux IP finement paramètrable sur le réseau. Par finement on entend:

  • Protocole: UDP, TCP, ICMP…
  • Port réseau
  • Taille des paquets de données
  • Débit
  • Temps
  • Tag du champ DSCP (dans le cadre d’un réseau compatible Diffserv)

Pour vous aider dans l’utilisation de ce logiciel, vous pouvez lire les billets suivants:

Comment mesurer ?

Iperf permet de générer en sortie un rapport sur quelques uns de ces paramètres, notamment le débit (moyen, minimum et maximum) et le délai. L’idée générale et de faire un plan de test avec les différentes configurations possible en terme d’utilisation et de QoS et de regarder les valeurs obtenues en sorties. En complément de Iperf, vous pouvez utiliser SJitter pour la mesure de la gigue réseau.

En complément de IPerf, il peut être utile d’utiliser un logiciel de capture réseau tel que Wireshark. En effet, grâce à ce dernier, vous pouvez sauvegarder les flux et les filter/analyser avec les nombreux modules disponibles.

Voici un tableau, basée sur mon expérience personnelle, des valeurs à prendre en compte lors de vos mesures.


Et vous quel est votre expérience sur le sujet ? Utiliser vous d’autres logiciels libres pour mesurer les performances de votre réseau ?

Catégories
Open-source Reseau

Sjitter supporte l’IPv6

sjitter.pngPetite amélioration de Sjitter, mon outil pour tester les réseaux (bande passante, délais, gigue) en ligne de commande. Le logiciel a été testé sous GNU/Linux, FreeBSD et Mac OS X.

Je viens de mettre en ligne la version 0.17 qui apporte le support de l’adressage IPv6. Un petit exemple d’utilisation:

Server# sjitters -6

[Client: fe80::21e:bff:fe33:f39b] Init OK (wait 5252 datagrams of 1400 bytes)

[Client: fe80::21e:bff:fe33:f39b] Receive 5252/5252 (100%) datagrams in 60.12 seconds (978 Kbps)

One-way delay summary (ms): Min=0.01 / Max=11.02 / Avg=0.03

Jitter summary (ms) : Min=0.00 / Max=1.27 / Avg=0.02

Client# sjitterc -6 -c fe80::21eb:bff:fe31:f76c -b 1000 -t 60

Send data (5252 datagrams of 1400 bytes / 1000 Kbps) to the [server]:port [fe80::21e:bff:fe33:f39b]:9930

Sending data (estimate time: 60 seconds)…

Summary: 5252 datagrams sent in 60.12 seconds (978 Kbps)

Plus d’information sur Sjitter sur la page officielle ainsi que sur la forge.

Catégories
Reseau

Sjitter – Version pour MacOSX

Je viens de mettre en package la version 0.14b de Sjitter mon outil (en ligne de commande) de mesure de bande passante, de delais de transit et de gigue pour MacOSX.

Le site officiel est ici mais vous pouvez également trouvez le package ici ou la.

A+

Catégories
Reseau

Nouvelle version de SJitter (v0.14)

SJitter est un utilitaire que j’ai développé il y a quelques temps pour tester une liaison réseau. Il fournit notamment des informations sur la bande passante, la gigue (jitter dans la langue de qui vous savez), et les délais de transit.

Il fonctionne sous le principe d’un client/server. Le code est écrit en C sous licence GNU.

Voici la page du projet: http://freshmeat.net/projects/sjitter/

et le site officiel: http://www.nicolargo.com/dev/sjitter/