Je sais que la longueur de l'en-tête IP est d'un minimum de 20 octets et d'un maximum de 60 octets. Mais pourquoi? Pourquoi la longueur d'en-tête IP est-elle limitée à 60 octets? Y a-t-il quelqu'un ici qui peut me l'expliquer? Je vous remercie.
Je sais que la longueur de l'en-tête IP est d'un minimum de 20 octets et d'un maximum de 60 octets. Mais pourquoi? Pourquoi la longueur d'en-tête IP est-elle limitée à 60 octets? Y a-t-il quelqu'un ici qui peut me l'expliquer? Je vous remercie.
Réponses:
Le protocole Internet (IP) est défini dans la RFC 791 . Le RFC spécifie le format de l'en-tête IP. Dans l'en-tête se trouve le champ IHL ( Internet Header Length ) qui est long de 4 bits et spécifie la longueur d'en-tête en mots de 32 bits . Le champ IHL peut contenir des valeurs comprises entre 0 (binaire 0000) et 15 (binaire 1111).
Ainsi, la taille de l'en- tête Internet (en-tête IP) la plus longue peut être de 15 * 32 bits = 480 bits = 60 octets . C'est pourquoi l'en-tête a une taille maximale de 60 octets.
La taille d'en-tête la plus courte est de 20 octets, où le champ IHL a la valeur 5 (0101). En effet, tous les champs obligatoires de l'en-tête nécessitent 20 octets d'espace. Donc, alors qu'en théorie, vous pouvez définir le DIH sur une valeur <5, ce serait toujours une valeur incorrecte et donc un en-tête de paquet non valide.
Par RFC 791 où il est défini, voir page 12 où il traite des datagrammes:
La longueur totale est la longueur du datagramme, mesurée en octets, y compris l'en-tête Internet et les données. Ce champ permet à la longueur d'un datagramme jusqu'à 65 535 octets. De tels datagrammes longs ne sont pas pratiques pour la plupart des hôtes et des réseaux. Tous les hôtes doivent être prêts à accepter des datagrammes jusqu'à 576 octets (qu'ils arrivent entiers ou en fragments). Il est recommandé que les hôtes n'envoient des datagrammes supérieurs à 576 octets que s'ils ont l'assurance que la destination est prête à accepter les datagrammes plus grands.
Le nombre 576 est sélectionné pour permettre la transmission d'un bloc de données de taille raisonnable en plus des informations d'en-tête requises. Par exemple, cette taille permet à un bloc de données de 512 octets plus 64 octets d'en-tête de tenir dans un datagramme. L'en-tête Internet maximal est de 60 octets, et un en-tête Internet typique est de 20 octets, ce qui permet une marge pour les en-têtes des protocoles de niveau supérieur. "
Fondamentalement, la longueur a été définie entre 20 et 60 pour permettre différentes utilisations de protocole et pour s'adapter à la taille de datagramme recommandée.