Подтвердить что ты не робот

Размер пустых пакетов UDP и TCP?

каков размер пустой UDP-дейтаграммы? И пустой TCP-пакет?

Я могу найти информацию о MTU, но я хочу знать, что такое "базовый" размер, чтобы оценить потребление полосы пропускания для протоколов поверх них.

Заранее спасибо за информацию.

4b9b3361

Ответ 1

Размер кадра Ethernet - 24 байта
Размер заголовка IPv4 (без каких-либо опций) - 20 байт
Размер заголовка TCP (без каких-либо опций) - 20 байт
Таким образом, общий размер пустой TCP-дейтаграммы - 24 + 20 + 20 = 64 байта.

Размер заголовка UDP - 8 байт
Таким образом, общий размер пустой UDP-дейтаграммы - 24 + 20 + 8 = 52 байт

Ответ 2

Ответ на химсанс совершенно правильный.

Что может ввести в заблуждение при взгляде на структуру Ethernet-фрейма [см. дальнейшее чтение], заключается в том, что без полезной нагрузки минимальный размер кадра Ethernet будет 18 байтов: Dst Mac (6) + Src Mac (6) + Длина (2) + Fcs (4), добавляя минимальный размер IPv4 (20) и TCP (20), дает нам всего 58 байтов.

То, что еще не было упомянуто, состоит в том, что минимальная полезная нагрузка кадра ethernet составляет 46 байт, поэтому 20 + 20 байт от IPv4 TCP не хватает полезной нагрузки! Это означает, что должно быть заполнено 6 байтов, из которых исходит общее количество 64 байтов.

18 (минимальные поля заголовка Ethernet) + 6 (дополнение) + 20 (IPv4) + 20 (TCP) = 64 байта

Надеюсь, что это немного облегчит.

Дополнительная литература:

Ответ 3

См. Протокол пользовательских дейтаграмм. Заголовок UDP имеет длину 8 байтов (64 бит).

Минимальный размер голого заголовка TCP - 5 слов (32-битное слово), а максимальный размер заголовка TCP - 15 слов.

С наилучшими пожеланиями, Fabian

Ответ 4

Артелиус и Halfdan верны, но вы что-то упускаете: UDP и TCP работают поверх некоторого физического транспорта. Например, если вы используете UDP через ethernet, вы также должны указать размер ethernet frame

Ответ 5

Если вы планируете рассчитать потребление пропускной способности и относите их к максимальной скорости вашей сети (например, 1 Гбит/с или 10 Гбит/с), необходимо, как указано в Useless, добавить Накладные расходы на фреймворк Ethernet на уровне 1 до чисел, рассчитанных Felix и другими, а именно

  • 7 байт преамбулы
  • 1-байтовый разделитель начала кадра
  • 12-байтовый промежуток между пакетами

то есть. в общей сложности 20 байтов, потребляемых за пакет.