Question Reseau - MODEL OSI - TCP/IP/ETHERNET

naskaanaskaa Membre
avril 2010 modifié dans Actualités #1

Bonjour,

Mise en situation :
si j'utilise le logiciel MSN sur deux ordinateurs A et B.
lorsque j'envoie un message de A vers B.
ORDI. A --> Niveau 4 model OSI (TCP) --> lvl 3 (IP) --> Lvl2 et lvl 1 (Ethernet) --> ca passe dans un câble (Ethernet) --> Lvl2 et lvl 1 Ethernet --> lvl 3 (IP) --> Niveau 4 model OSI (TCP) --> ORDI. B

Qstn :
Ce qui navigue entre les niveaux !
1-Est-ce un paquet TCP qui se transforme en paquet IP avec le meme data que celui du paquet TCP et au niveau 2 se transforme en paquet ethernet avec le même data que celui du paquet IP...
ou
2-Est-ce un paquet TCP qui quand il passe dans lvl 3 (Ip) un paquet IP va s'ajouter dans son DATA apres au lvl 2 un paquet ethernet va s'ajouter dans le DATA du paquet Ip

Remarque :
Sur wikipedia on parle de flux et de segment mais pas de paquet TCP, est-ce que cela veut dire que le terme paquet ne s'utilise qu'au niveau 3 ?

  merci

Réponses

  • zoczoc Membre
    18:55 modifié #2
    Principe d'encapsulation: à  chaque couche on rajouter/enlève des trucs (selon que l'on envoie/reçoit) sans toucher à  ce qui vient/va vers la couche supérieure. Concrètement, à  l'envoi on met le "paquet" TCP (Header TCP + Data couche application) dans un paquet IP, puis pareil dans la couche Ethernet. Au final sur le réseau, on a:


    Header Eth + Header IP + Header TCP + UserData

  • naskaanaskaa Membre
    18:55 modifié #3
    Merci
  • naskaanaskaa Membre
    mai 2010 modifié #4
    re,
    J'ai une autre question sur ta réponse.
    Header Eth + Header IP + Header TCP + UserData

    Question 1 :
    Hedear TCP + UserData va s'encapsuler dans le data de IP = Header IP + Header TCP + UserData

    Mise en situation:
    le UserData (Data couche application) qu'est ce qui à  dedans. Par exemple, dans le cas du protocole HTTP de la couche d'application du MODEL OSI. Une requête HTTP part du Browser (Client) vers un serveur.

    Question 2:
    C'est quoi la relation entre cette requête HTTP et le paquet (Header Eth + Header IP + Header TCP + UserData) ??????

    p.s. On a juste traité les 4 couches en bas du OSI :S durant le cours.
  • AliGatorAliGator Membre, Modérateur
    18:55 modifié #5
    Alors HTTP est un protocole de la couche application. Mais comme beaucoup de protocoles de la couche application, il a lui aussi un concept de headers + data (eh oui, encore une couche !!).
    En HTTP/1.0, quand ton navigateur fait une requête GET vers un site, le contenu de la requête ressemble à  ceci :
    GET /path/to/file.html HTTP/1.1<br />Host: www.example.com
    
    Mais il peut avoir d'autres champs, à  la suite du champ "Host", comme Content-Length, Content-Type, User-Agent, ...

    Ces champs, listés les uns derrière les autres, peuvent éventuellement être suivis d'un corps de requête, séparé des headers par une ligne vide. C'est principalement le cas dans les méthodes POST (quand tu soumets un formulaire web, s'il utilise la méthode POST, les données du formulaires sont encapsulées dans ce corps de requête). Pour plus d'exemples et d'infos : HTTP Request examples.


    Ensuite, pour être transmises par TCP/IP, ces données sont encapulées dans un packet TCP (qui n'est autre qu'un header TCP, suivi des données de la couche applicative, donc des données HTTP citées plus haut). Puis à  son tour ce packet TCP est encapsulé dans un packet IP, qui n'est autre qu'un header IP + le packet TCP, etc, etc.


    Si tu veux mieux comprendre tout ça, je te conseille vivement de tester le logiciel Wireshark, qui permet de surveiller le traffic réseau qui passe sur ta carte réseau : il est plutôt bien foutu, et tu pourras y voir tout plein de requêtes (pas que les requêtes TCP d'ailleurs, mais tu peux filtrer si besoin). Tu y verras les différents packets de la couche la plus basse à  la plus haute, puisque tu peux inspecter chaque packet et voir le sous-packet qu'il contient, etc.
  • AliGatorAliGator Membre, Modérateur
    18:55 modifié #6
    Voilà  des captures de ce qu'affiche Wireshark lorsque je le lance en mode capture puis fait une requête vers forum.pommedev.com depuis Safari : parmi les trames réseau qu'il capture, je vois donc passer la trame de cette requête HTTP, qui est affichée ainsi : (j'ai découpé en plusieurs captures avec les divers éléments " correspondant aux diverses couches OSI " déroulés ou non car ça ne tenait pas en un seul écran sinon)
  • PierrePierre Membre
    18:55 modifié #7
    @AliGator : tu as trouvé une version de Wireshark fonctionnel sur Léopard ? J'ai cherché j'ai pas trouvé, je suis preneur d'infos. ;)

    Pierre
  • AliGatorAliGator Membre, Modérateur
    18:55 modifié #8
    dans 1273488091:

    @AliGator : tu as trouvé une version de Wireshark fonctionnel sur Léopard ? J'ai cherché j'ai pas trouvé, je suis preneur d'infos. ;)

    Pierre
    ??? ??? Ben heu oui, sur le site officiel, quoi.
    Suis allé sur wireshark.org, onglet "Downloads", et il m'a proposé direct la version pour Leopard (qui en passant marche très bien sur mon Snow Leopard aussi).
    http://www.wireshark.org/download.html

    C'est une version fonctionnant sous X11 (mais bon ça change rien, ça se lance et s'utilise comme une appli native, avec GUI et tout). Pour pouvoir faire une capture des packets de ta carte réseau, il faut juste donner les droits aux fichiers /dev/bpf*, car sur OSX tu ne les as pas en standard... enfin tout est indiqué dans le ReadMe qui t'indique toutes les étapes à  suivre en détail. Après tu double-cliques sur Wireshark.app et enjoy ;)
Connectez-vous ou Inscrivez-vous pour répondre.