Developpez.com - Rubrique PHP

Le Club des Développeurs et IT Pro

Astuce : Tester l'état d'un réseau d'une ville

Le 2006-08-07 16:35:15, par gael88, Nouveau Candidat au Club
Bonjour à tous,

Je réalise actuellement un projet qui consiste à réaliser un affichage visuel (carte synoptique) affichant l'état du réseau (Internet, TV, téléphonie et radio) d'une ville (Lausanne en Suisse).

Je recherche actuellement des solutions pour détecter d'éventuels pannes dans le réseau (réseau décomposé en 8 sites comportant eux même 70 stations). Je viens de découvrir la librairie PEAR: net_ping qui permet de "pinger" un serveur pour connaitre son état et sa vitesse.
Ceci est une solution, mais elle me permet de connaître uniquement si le serveur répond ou non.

Je recherche donc d'autres solutions qui permettrait par exemple de tester l'état de chaque chaîne TV ou pour savoir si un immeuble (sous-élément d'une stations) est tombé en panne.

Mon problème n'est pas simple et je vous remercie d'y avoir prêté une attention. Si vous avez un élément de réponse, une iddée ou une question n'hésitez pas !

merci
____
Gaël
  Discussion forum
21 commentaires
  • gael88
    Nouveau Candidat au Club
    Help me !! plz !!
  • maximenet
    Membre confirmé
    Envoyé par gael88
    Mon problème n'est pas simple et je vous remercie d'y avoir prêté une attention. Si vous avez un élément de réponse, une iddée ou une question n'hésitez pas !
    Oui ton problème n'est pas simple
    Désolé perso j'aimerai bien mais je pourrai pas t'aider, j'ai jamais rien fait de similaire.
  • gael88
    Nouveau Candidat au Club
    C'est pas grave !
    Merci quand même.

    Personne d'autre ?
  • Amara
    Membre expert
    Moi aussi j'aimerais bien t'aider mais c'est un problème ultra-pointu je vois pas comment on pourrait t'aider, à moins que tu donnes plus de précisions.

    Genre pour ça :
    Je recherche donc d'autres solutions qui permettrait par exemple de tester l'état de chaque chaîne TV ou pour savoir si un immeuble (sous-élément d'une stations) est tombé en panne.
    Comment tu peux savoir qu'une chaîne ou qu'un immeuble est en panne ? C'est quoi ce qui sert de référence ?
  • gael88
    Nouveau Candidat au Club
    Envoyé par JWhite
    Moi aussi j'aimerais bien t'aider mais c'est un problème ultra-pointu je vois pas comment on pourrait t'aider, à moins que tu donnes plus de précisions.

    Genre pour ça :

    Comment tu peux savoir qu'une chaîne ou qu'un immeuble est en panne ?
    C'est quoi ce qui sert de référence ?
    J'ai accès au serveur qui gère la ditribution des services (internet, tv, radio) et actuellement on reçois des alertes par mail qui ressemble à ça:
    _______________________________________________________________
    Summary output :

    Group : docsis6
    Service : modem
    Description : Modems connectes par interface
    Time noticed : Thu Aug 3 08:50:17 2006
    Secs until next alert :
    Members : cw1.mgmt.gnv.ch cw2.mgmt.gnv.ch cw3.mgmt.gnv.ch
    cw4.mgmt.gnv.ch cw5.mgmt.gnv.ch cw6.mgmt.gnv.ch
    cw7.mgmt.gnv.ch cw8.mgmt.gnv.ch cw9.mgmt.gnv.ch
    cw10.mgmt.gnv.ch

    Detailed text (if any) follows:
    -------------------------------
    _______________________________________________________________

    Est-il possible de récupérer les donnée d'un mail en php (par exemple). Ou est-il possible d'interroger directement un serveur pour connaître son état de fonctionnement ?

    PS: la ville est aussi un fournisseur d'accès internet tout public.
  • nako
    Membre éclairé
    Salut,
    j'au une petite question qui me vient à l'esprit là :
    pourquoi choisir PHP pour faire ça ?
    Ton application, c'est du temps réel ? Tu as une panne quelque part, ça déclenche une alerte, et tu dois pouvoir le visualiser sur ton application.
    Perso (mais je suis peuyt-être à côté de la plaque) j'aurais plustôt vu une application non-web. Parce que là, ça va être plutôt :
    le superviseur veut savoir l'état de son réseau à uin instant T, il lance la page web, il voit que tout va bien. Super. Si une panne survient 2 secondes plus tard, il ne sera au courant qu'une fois qu'il aura fait "rafraichir". Même si tu fais rafraichir automatiquement toutes les N secondes, c'est pas top, non ?
    Nako
  • Amara
    Membre expert
    Tu as accès au serveur mais comment tu sais si les services fonctionnent ou pas ? Tu reçois juste des mails pour savoir ça ?

    Pour les mails ça dépend de ta messagerie tu peux regarder la librairie IMAP
    http://fr3.php.net/manual/fr/ref.imap.php
    ou sur Google tu peux trouver des trucs.

    Pour l'état de fonctionnement du serveur je comprends pas tu as dit que tu avais trouvé avec ping comment l'interroger
  • gael88
    Nouveau Candidat au Club
    Hello,

    Oui tu as entièrement raison. C'est pas le top !
    Mais j'ai choisi ce language pour 2 raisons:
    -C'est celui que je maîtrise le mieux
    -L'application sera visible sur des écrans hautes résolutions (2 ou 3 écran) mais l'application sera aussi présente sur les machines des utilisateurs et éventuellement à distance (à domicile via internet).

    Mais c'est surtout pour la raison numéro 1
  • gael88
    Nouveau Candidat au Club
    Envoyé par JWhite
    Tu as accès au serveur mais comment tu sais si les services fonctionnent ou pas ? Tu reçois juste des mails pour savoir ça ?
    Justement je sais pas comment interroger le serveur différement qu'avec net_ping (j'ai rdv avec un spécialiste cet après-midi qui pourra surement m'en dire d'avantage, je vous tiens au courant).

    Envoyé par JWhite
    Pour les mails ça dépend de ta messagerie tu peux regarder la librairie IMAP
    http://fr3.php.net/manual/fr/ref.imap.php
    ou sur Google tu peux trouver des trucs.
    Oki je vais regarder ca !

    Envoyé par JWhite
    Pour l'état de fonctionnement du serveur je comprends pas tu as dit que tu avais trouvé avec ping comment l'interroger
    Oui oui mais net_ping en gros c'est: [ca marche] ou [ca marche po !] mois j'aimerai l'interroger pour savoir pourquoi sa marche pas.

    En tout cas merci beaucoup pour votre aide.
  • ripat
    Membre éprouvé
    Tu devrais te pencher sur le protocole snmp qui est fait pour ce genre de problème de gestion de réseau. Un ping qui réussit ne veut pas nécessairement dire que le serveur ou router fonctionne correctement.

    PHP offre une librairie assez complète pour parler "snmp"
    http://php.net/manual/fr/ref.snmp.php