IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement Discussion :

FAQ Développement Réseau : Participez


Sujet :

Développement

  1. #1
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Points : 9 818
    Points
    9 818
    Par défaut FAQ Développement Réseau : Participez
    Bonjour,

    Nous sommes actuellement en train de travailler sur une FAQ concernant le développement réseau. Afin de faciliter l'enrichissement de celle-ci, ce thread est destiné à être utilisé exclusivement pour poster les différentes Questions Réponses.

    PS : afin de faciliter les lectures et relectures des différentes questions, il serait souhaitable de présenter vos posts comme ceci :

    Q : bla bla bla ....

    R : bla bla bla ...
    De plus, comme la question m'a été posée, merci de m'indiquer en plus des champs cités ci dessus, le nom de l'auteur, si vous désirez un nom différent que votre pseudo du forum.

    Merci à tous.
    Je ne répondrai à aucune question technique en privé

  2. #2
    Membre expérimenté
    Avatar de granquet
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    1 201
    Détails du profil
    Informations personnelles :
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 201
    Points : 1 421
    Points
    1 421
    Par défaut
    1 où trouver des informations sur les protocoles?
    Les RFC (Request For Comments) sont des documents qui spécifient totalement un protocole, vous pouvez les obtenir en tappant simplement RFC + nom_du_protocole dans un moteur de recherche.
    la RFC est un document indispensable pour le développement réseau, c'est le respect de sa spécification qui garantiras le fonctionnement de votre logiciel avec les autres applications implémentant le protocole.

    2 opter pour TCP ou UDP?
    il faut d’abord comprendre la différence entre un protocole orienté connexion et
    un protocole non connecté. Une manière simple de voir le problème pourrait se
    poser sous forme d’une question unique: que doit-il se passer lorsque un paquet
    est perdu/endommagé?
    TCP:
    -le paquet doit-être re-émis automatiquement (ex: les messageries
    instantanées, transfert de fichiers...)
    UDP:
    -le paquet est jeté, ce qui compte c’est le flux de donnée, ce paquet
    perdu est déjà obsolète et ne ferais qu’encombrer la liaison (ex: VoIP,
    flux audio/videos en général, jeux vidéo...)

    3 gérer plusieurs clients?
    il existe plusieurs écoles, chacune avec ses avantages et inconvénients:
    • threading: consiste à créer un thread, voir un processus complet (fork)
    pour chaque nouveau client.

    avantage: simple à coder
    inconvénient: peu performant

    • mode non bloquant: les sockets sont paramétrés en mode non bloquant,
    les opérations de lecture/écriture retournent immédiatement une valeur
    caractéristique pour indiquer qu’elles auraient du bloquer.

    avantage: -
    inconvénient: utilisation CPU élevée.

    • signaux : le signal SIGIO seras levé lorsque qu'un socket seras prêt en lecture/écriture et le flux du processus dérouté sur notre gestionnaire de signaux

    avantage: gestion dynamique des IO.
    inconvénient: programmation interruptible

    • multiplexage: on confie notre ”pool” de sockets à une fonction tel que
    select ou poll qui vont se charger d’indiquer sur quels sockets on est capable d’effectuer une action non-bloquante.

    avantage: centralisation des fonctions bloquantes
    inconvénient: code plus complexe

    dans la plupart des cas, des hybrides mélangeant ces techniques de base sont utilisés.

    pour la FAQ linux? ou mériterais un petit article plus complet?
    4 envois de fichiers en mode Zero Copy
    si vous devez envoyer des fichiers dans un socket, vous pouvez utiliser sous linux
    l’appel système sendfile() qui copie directement d’un descripteur à l’autre. plus
    de buffer à se trimballer et surtout, tout se fait au niveau du kernel, vous ne
    passez plus par l’espace utilisateur. si vous avez besoin d’ajouter une entête au
    fichier (taille,nom,encodage...), utilisez le mode TCP CORK qui permet de ne
    pas envoyer les trames partielles, afin de garantir un meilleur rendement de la
    liaison. exemple de code:
    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    int mf = open ("filename.ext", O_RDONLY);
    off t len = lseek (mf, 0, SEEK_END);
    lseek (mf, 0, SEEK_SET);
    int state = 1;
    setsockopt (client->fd, IPPROTO_TCP, TCP_CORK, &state, sizeof
    (state));
    sendheader(client->fd,"filename.ext",len);
    sendfile(client->fd,mf,NULL,len);
    state = 0;
    setsockopt (client->fd, IPPROTO_TCP, TCP_CORK, &state, sizeof
    (state));
    5 Modèle OSI? couches? Je suis perdu !
    le Modèle OSI as été créé par l’ISO afin de fournir une démarche garantissant
    l’inter-opérabilité des réseaux ouverts entre eux. c’est un modèle très théorique
    et abstrait duquel dérive d’autres modèles.
    les plus connu sont: TCP/IP et ATM
    le modèle OSI ne concerne pas le développeur applicatif qui utilise le réseau de
    manière transparente via des APIs (ex: sockets)

    6 comment débugguer mon application réseau?
    dans le cas d'un protocole texte, netcat est tout indiqué pour faire des tests unitaires de toutes les (séquences d')opérations possibles.
    pour des protocoles plus élaborés, Scapy permettras, à ceux qui auront pris le temps de l'apprivoiser, de forger n'importe quels paquets et de l'envoyer

    pour ceux que Scapy rebutent, wireshark (anciennement ethereal) permet déjà pas mal de choses.
    click my www
    ............|___
    ...................\
    .................._|_
    ..................\ /
    ..................."

  3. #3
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 367
    Points
    50 367
    Par défaut
    Ici, un tuto réseau, n'hésitez pas à taper dedans pour prendre des Questions/Réponses
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  4. #4
    Candidat au Club
    Inscrit en
    Août 2008
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 2
    Points : 2
    Points
    2
    Par défaut preparation certification ccna
    bonjour je souhaites avoir des questionnaires et des travaux pratiques en français de préférence et en anglais si possible pouvant m'aider a préparer ma certification ccna.merci

Discussions similaires

  1. Cours et tutoriels sur le développement Réseau
    Par millie dans le forum Développement
    Réponses: 1
    Dernier message: 20/03/2013, 16h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo