Datagramme IP - Excercice
Fermé
prath
-
7 févr. 2008 à 15:59
francisolivier123 Messages postés 2 Date d'inscription vendredi 4 février 2011 Statut Membre Dernière intervention 4 février 2011 - 4 févr. 2011 à 18:51
francisolivier123 Messages postés 2 Date d'inscription vendredi 4 février 2011 Statut Membre Dernière intervention 4 février 2011 - 4 févr. 2011 à 18:51
A voir également:
- Datagramme IP - Excercice
- Ethernet n'a pas de configuration ip valide - Guide
- Télévision ip - Accueil - Streaming
- Comment connaître son adresse ip - Guide
- IPTV illégal : après les pirates, la justice condamne maintenant les clients… jusqu'à la prison ! - Guide
- Comment savoir si quelqu'un utilise mon adresse ip - Guide
2 réponses
brupala
Messages postés
110860
Date d'inscription
lundi 16 juillet 2001
Statut
Membre
Dernière intervention
25 janvier 2025
13 895
7 févr. 2008 à 16:40
7 févr. 2008 à 16:40
Salut,
si tu ne sais pas ce que c'est qu'un octet et que tu essaies de faire de l'analyse de protocole, tu vas avoir du mal .
donc , déjà: https://www.commentcamarche.net/informatique/technologies/24919-code-binaire-principe-codage-regles-symboles/
ensuite , offset: décalage .
ensuite , notre référence: https://www.commentcamarche.net/contents/530-le-protocole-ip
ou bien: https://www.frameip.com/entete-ip/
si on prend ton datagramme tel qu'il est aligné en mémoire:
00: 45 00 00 40 07 20 00 00 02 06 E3 5F 83 FE 3D 0A
10: C0 2C 4D 04 00 0F 00 80 00 00 01 C0 50 00 08 00
20: 50 10 04 00 3E 11
l'octet 0 a pour valeur 45 et l'offset 0
l'octet d'offset 1 a pour valeur 00
l'octet d'offset 3 a pour valeur 40
l'octet d'offset 15 (0F en hexadécimal) a pour valeur 0A
l'octet d'offset 16 (10 en hexa) a pour valeur C0
l'octet 32 (0x20) a pour valeur 50 (80 en décimal) ... jusqu'à l'octet 37 qui vaut 0x11
la longueur de l'entête ip est donc le 5 de 45 (offset 0)
pour les 4 octets:
3.2 - IHL
IHL signifie "Internet header lengh". ce champ est codé sur 4 bits et représente la longueur en mots de 32 bits de l'entête IP. Par défaut, il est égal à 5 (20 octets), cependant, avec les options de l'entête IP, il peut être compris entre 6 et 15.
en fait le 5 signifie 5 fois 32 bits , donc 5 fois 4 octets , un octet étant 8 bits comme nous l'avons vu plus haut .
question 2:
3.4 - Longueur totale
Le champ Longueur totale est codé sur 16 bits et représente la longueur du paquet incluant l'entête IP et les Data associées. La longueur totale est exprimée en octets, ceci permettant de spécifier une taille maximum de 216 = 65535 octets. La longueur des Data est obtenu par la combinaison des champs IHL et Longueur totale :
Longueur_des_data = Longueur_totale - ( IHL * 4 );
donc dans ton cas la longueur des données utiles après l'entête est bien longueur totale du datagramme 0x0040 soit 64 moins 20 (indiqué par IHL) soit 44 octets .
si tu ne sais pas ce que c'est qu'un octet et que tu essaies de faire de l'analyse de protocole, tu vas avoir du mal .
donc , déjà: https://www.commentcamarche.net/informatique/technologies/24919-code-binaire-principe-codage-regles-symboles/
ensuite , offset: décalage .
ensuite , notre référence: https://www.commentcamarche.net/contents/530-le-protocole-ip
ou bien: https://www.frameip.com/entete-ip/
si on prend ton datagramme tel qu'il est aligné en mémoire:
00: 45 00 00 40 07 20 00 00 02 06 E3 5F 83 FE 3D 0A
10: C0 2C 4D 04 00 0F 00 80 00 00 01 C0 50 00 08 00
20: 50 10 04 00 3E 11
l'octet 0 a pour valeur 45 et l'offset 0
l'octet d'offset 1 a pour valeur 00
l'octet d'offset 3 a pour valeur 40
l'octet d'offset 15 (0F en hexadécimal) a pour valeur 0A
l'octet d'offset 16 (10 en hexa) a pour valeur C0
l'octet 32 (0x20) a pour valeur 50 (80 en décimal) ... jusqu'à l'octet 37 qui vaut 0x11
la longueur de l'entête ip est donc le 5 de 45 (offset 0)
pour les 4 octets:
3.2 - IHL
IHL signifie "Internet header lengh". ce champ est codé sur 4 bits et représente la longueur en mots de 32 bits de l'entête IP. Par défaut, il est égal à 5 (20 octets), cependant, avec les options de l'entête IP, il peut être compris entre 6 et 15.
en fait le 5 signifie 5 fois 32 bits , donc 5 fois 4 octets , un octet étant 8 bits comme nous l'avons vu plus haut .
question 2:
3.4 - Longueur totale
Le champ Longueur totale est codé sur 16 bits et représente la longueur du paquet incluant l'entête IP et les Data associées. La longueur totale est exprimée en octets, ceci permettant de spécifier une taille maximum de 216 = 65535 octets. La longueur des Data est obtenu par la combinaison des champs IHL et Longueur totale :
Longueur_des_data = Longueur_totale - ( IHL * 4 );
donc dans ton cas la longueur des données utiles après l'entête est bien longueur totale du datagramme 0x0040 soit 64 moins 20 (indiqué par IHL) soit 44 octets .
Merci pour ton aide.
Encore une question:
comment on sait qu'un datagramme est premier, dernier ou intermédiaire ?
Encore une question:
comment on sait qu'un datagramme est premier, dernier ou intermédiaire ?
brupala
Messages postés
110860
Date d'inscription
lundi 16 juillet 2001
Statut
Membre
Dernière intervention
25 janvier 2025
13 895
8 févr. 2008 à 01:15
8 févr. 2008 à 01:15
3.7 - Position fragment Le champ Position fragment est codé sur 13 bits et indique la position du fragment par rapport à la première trame. Le premier fragment possède donc le champ Position fragment à 0.
à l'offset 6 et 7 .
francisolivier123
Messages postés
2
Date d'inscription
vendredi 4 février 2011
Statut
Membre
Dernière intervention
4 février 2011
4 févr. 2011 à 18:51
4 févr. 2011 à 18:51
Bonjour
J'ai un souci qui est plus ou moins du même ordre que la demande initiale.
Exo:
00: 0800 2018 ba40 0800 0400 1fc8 0800 4500
16: 0028 e903 4000 3f06 ac21 a3ad 2041 a3ad
32: 80d4 0558 0017 088d dee0 ba77 8925 5010
48: 7d78 1972 0000 ...
Q1) - Déterminer l' Offset de Début du Datagramme ?
Q2) - Déterminer l' Offset de la fin de l' entête du Datagramme ?
Q3) - Déterminer l' Offset de la fin de l'entête Transport. ?
J'ai un souci qui est plus ou moins du même ordre que la demande initiale.
Exo:
00: 0800 2018 ba40 0800 0400 1fc8 0800 4500
16: 0028 e903 4000 3f06 ac21 a3ad 2041 a3ad
32: 80d4 0558 0017 088d dee0 ba77 8925 5010
48: 7d78 1972 0000 ...
Q1) - Déterminer l' Offset de Début du Datagramme ?
Q2) - Déterminer l' Offset de la fin de l' entête du Datagramme ?
Q3) - Déterminer l' Offset de la fin de l'entête Transport. ?