Eu sei que o comprimento do cabeçalho IP é de no mínimo 20 bytes e no máximo 60 bytes. Mas por que? Por que o comprimento do cabeçalho IP é limitado a 60 bytes? Existe alguém aqui que possa me explicar? Obrigado.
ipv4
protocol-theory
ebyrock
fonte
fonte
Respostas:
O protocolo Internet (IP) é definido na RFC 791 . O RFC especifica o formato do cabeçalho IP. No cabeçalho, há o campo IHL ( Internet Header Length ), que tem 4 bits de comprimento e especifica o comprimento do cabeçalho em palavras de 32 bits . O campo IHL pode conter valores de 0 (binário 0000) a 15 (binário 1111).
Portanto, o tamanho mais longo do cabeçalho da Internet (cabeçalho IP) pode ser de 15 * 32 bits = 480 bits = 60 bytes . É por isso que o cabeçalho tem um tamanho máximo de 60 bytes.
O tamanho mais curto do cabeçalho é 20 bytes, onde o campo IHL possui o valor 5 (0101). Isso ocorre porque todos os campos obrigatórios no cabeçalho precisam de 20 bytes de espaço. Portanto, enquanto em teoria você poderia definir o DIH para um valor <5, esse sempre seria um valor incorreto e, portanto, um cabeçalho de pacote inválido.
fonte
De acordo com o RFC 791, onde está definido, consulte a página 12, onde ele discute datagramas:
Basicamente, o comprimento foi definido entre 20 e 60 para permitir diferentes usos de protocolo e ajustar-se ao tamanho de datagrama recomendado.
fonte