Максимальный блок передачи - Maximum transmission unit
В компьютерная сеть, то максимальная единица передачи (MTU) - размер наибольшего блок данных протокола (PDU), которые могут передаваться в одном сетевой уровень сделка.[1] MTU относится к максимальному, но не идентичен ему. Рамка размер, который можно транспортировать на уровень канала передачи данных, например Кадр Ethernet.
Чем больше MTU, тем меньше накладные расходы. Меньшие значения MTU могут уменьшить сетевая задержка. Во многих случаях MTU зависит от основных возможностей сети и должен регулироваться вручную или автоматически, чтобы не превышать эти возможности. Параметры MTU могут появляться в связи с коммуникационным интерфейсом или стандартом. Некоторые системы могут определять MTU во время подключения.
Применимость
MTU применяются к протоколы связи и сетевые уровни. MTU указывается в байты или же октеты самого большого PDU, который уровень может передать дальше. Параметры MTU обычно появляются в связи с интерфейсом связи (NIC, Серийный порт, так далее.). Стандарты (Ethernet, например) может фиксировать размер MTU; или системы (такие как последовательные соединения точка-точка) могут определять MTU во время соединения.
Лежащий в основе канал передачи данных и физические уровни обычно добавляют служебные данные к передаваемым данным сетевого уровня, поэтому для заданного максимального размера кадра носителя необходимо вычесть объем служебных данных для расчета MTU этого носителя. Например, для Ethernet максимальный размер кадра составляет 1518 байтов, 18 из которых являются служебными (заголовок и последовательность проверки кадра ), в результате чего MTU составляет 1500 байт.
Компромиссы
Чем больше MTU, тем выше эффективность, потому что каждый сетевой пакет переносит больше пользовательских данных, в то время как служебные данные протокола, такие как заголовки или базовые задержки пакетов, остаются фиксированными; в результате более высокая эффективность означает улучшение пропускной способности протокола. Больший MTU также требует обработки меньшего количества пакетов для того же объема данных. В некоторых системах обработка пакетов может быть критическим ограничением производительности.
Однако у этого преимущества есть и обратная сторона. Большие пакеты занимают медленное соединение дольше, чем меньший пакет, вызывая большие задержки для последующих пакетов и увеличивая сетевая задержка и изменение задержки. Например, пакет размером 1500 байт, самый большой, разрешенный Ethernet на сетевом уровне, связывает 14.4k модем примерно на одну секунду.
Большие пакеты также проблематичны при наличии ошибок связи. Если нет упреждающее исправление ошибок Если используется, повреждение одного бита в пакете требует повторной передачи всего пакета, что может быть дорогостоящим. При данном частота ошибок по битам, пакеты большего размера более подвержены повреждению. Их большая полезная нагрузка делает повторную передачу больших пакетов дольше. Несмотря на отрицательное влияние на продолжительность повторной передачи, большие пакеты все же могут иметь чистый положительный эффект на сквозную производительность TCP.[2]
Протокол Интернета
В Набор интернет-протоколов был разработан для работы с множеством различных сетевых технологий, каждая из которых может использовать пакеты разного размера. Хотя хост будет знать MTU своего собственного интерфейса и, возможно, своих одноранговых узлов (из начальных рукопожатий), он изначально не будет знать самый низкий MTU в цепочке ссылок на другие узлы. Другая потенциальная проблема заключается в том, что протоколы более высокого уровня могут создавать пакеты большего размера, чем поддерживает даже локальный канал.
IPv4 позволяет фрагментация что делит дейтаграмма на части, каждая из которых достаточно мала, чтобы учесть заданное ограничение MTU. Этот процесс фрагментации происходит в Интернет-уровень. Фрагментированные пакеты помечаются таким образом, чтобы IP-уровень целевого хоста знал, что он должен повторно собрать пакеты в исходную дейтаграмму.
Чтобы пакет считался принятым, должны прибыть все фрагменты пакета. Если сеть отбрасывает какой-либо фрагмент, весь пакет теряется.
Когда количество пакетов, которые должны быть фрагментированы, или количество фрагментов велико, фрагментация может вызвать неоправданные или ненужные накладные расходы. Например, различные ситуации туннелирования могут очень незначительно превышать MTU, поскольку они добавляют только значение заголовка данных. Добавление небольшое, но теперь каждый пакет нужно отправлять двумя фрагментами, второй из которых несет очень небольшую полезную нагрузку. Перемещается тот же объем полезной нагрузки, но каждый промежуточный маршрутизатор должен переслать вдвое больше пакетов.
Интернет-протокол требует, чтобы хосты могли обрабатывать дейтаграммы IP размером не менее 576 байтов (для IPv4) или 1280 байтов (для IPv6). Однако это не исключает связать слои с MTU меньше этого минимального MTU от передачи IP-данных. Например, согласно спецификации IPv6, если конкретный канальный уровень не может доставить IP-дейтаграмму размером 1280 байт в одном кадре, то канальный уровень должен предоставить свой собственный механизм фрагментации и повторной сборки, отдельный от механизма фрагментации IP, чтобы гарантировать, что IP-дейтаграмма размером 1280 байт может быть доставлена на уровень IP без изменений.
MTU для обычных носителей
В контексте протокол Интернета, MTU означает максимальный размер IP-пакет которые могут быть переданы без фрагментации на данном носителе. Размер IP-пакета включает заголовки IP, но исключает заголовки из уровень связи. В случае Кадр Ethernet это добавляет накладные расходы 18 байтов или 22 байта с IEEE 802.1Q тег для тегирования VLAN или класс обслуживания.
MTU не следует путать с минимальным дейтаграмма размер, который все хосты должны быть готовы принять. Это 576 байт для IPv4[3] и 1280 байт для IPv6.[4]
Медиа для IP транспорта | Максимальный блок передачи (байты) | Примечания |
---|---|---|
Интернет MTU пути IPv4 | Не менее 68,[5] не более 64 КБ[6] | Системы могут использовать Обнаружение MTU пути[7] чтобы найти фактический MTU пути. Маршрутизация от большего MTU к меньшему вызывает причины Фрагментация IP. |
Интернет MTU пути IPv6 | Не менее 1280,[8] не более 64 КиБ, но до 4 ГиБ с дополнительным джумбограмма[9] | Системы должны использовать обнаружение MTU пути[10] чтобы найти фактический MTU пути. |
Ethernet v2 | 1500[11] | Практически все реализации IP over Ethernet используют Формат кадра Ethernet II. |
Ethernet с ООО и ЩЕЛЧОК | 1492[12] | |
Ethernet большие кадры | 1501 – 9202[13] или больше[14] | Лимит зависит от поставщика. Для правильного взаимодействия кадры не должны быть больше максимального размера кадра, поддерживаемого любым устройством на сегмент сети.[15] Jumbo-кадры обычно видны только в специализированных сетях. |
PPPoE v2 | 1492[16] | Ethernet II MTU (1500) без заголовка PPPoE (8) |
DS-Lite через PPPoE | 1452 | MTU Ethernet II (1500) без заголовка PPPoE (8) и заголовка IPv6 (40) |
PPPoE jumbo-кадры | 1493–9190 и более[17] | MTU Ethernet Jumbo Frame (1501 - 9198) без заголовка PPPoE (8) |
IEEE 802.11 Wi-Fi (WLAN) | 2304[18] | Максимум МСДУ размер 2304 до шифрования. WEP добавит 8 байтов, WPA-TKIP 20 байтов и WPA2-CCMP 16 байтов. |
Token Ring (802.5) | 4464 | |
FDDI | 4352[7] |
Максимальный размер кадра Ethernet
Максимальный размер кадра IP MTU и Ethernet настраивается отдельно. В конфигурации коммутатора Ethernet MTU может относиться к максимальному размеру кадра Ethernet. В маршрутизаторах на базе Ethernet MTU обычно означает MTU IP. Если в сети разрешены jumbo-кадры, IP MTU также должен быть увеличен, чтобы воспользоваться этим.
Поскольку IP-пакет переносится кадром Ethernet, кадр Ethernet должен быть больше, чем IP-пакет. При обычных непомеченных кадрах Ethernet в 18 байтов максимальный размер кадра Ethernet составляет 1518 байтов. Если IP-пакет размером 1500 байт должен передаваться по тегированному соединению Ethernet, максимальный размер кадра Ethernet должен быть 1522 из-за большего размера тегированного кадра 802.1Q. 802.3ac увеличивает стандартный максимальный размер кадра Ethernet, чтобы приспособиться к этому.
Обнаружение MTU пути
Интернет-протокол определяет путь MTU пути передачи в Интернете как наименьшее значение MTU, поддерживаемое любым из хмель на пути между источником и местом назначения. Другими словами, MTU пути - это наибольший размер пакета, который может пройти этот путь без фрагментации.
RFC 1191 (IPv4) и RFC 1981 (IPv6) описать Обнаружение MTU пути, метод определения MTU пути между двумя IP-узлами. Он работает, отправляя пакеты с опцией DF (не фрагментировать) в наборе IP-заголовков. Любое устройство на пути, чей MTU меньше, чем пакет, отбрасывает такие пакеты и отправляет обратно Пункт назначения ICMP недоступен (слишком большая датаграмма) сообщение, которое указывает его MTU. Эта информация позволяет хосту-источнику соответствующим образом уменьшить свой предполагаемый MTU пути. Процесс повторяется до тех пор, пока MTU не станет достаточно маленьким, чтобы пройти весь путь без фрагментации.
Стандарт Ethernet поддерживает MTU в 1500 байт и реализацию Ethernet с поддержкой большие кадры, разрешите MTU до 9000 байт. Однако такие пограничные протоколы, как PPPoE уменьшит это. Обнаружение MTU пути показывает разницу между MTU, видимым конечными узлами Ethernet, и MTU пути
К сожалению, все большее количество сетей сбросить ICMP-трафик (например, чтобы предотвратить атаки отказа в обслуживании ), что предотвращает работу определения MTU пути. RFC 4821 Обнаружение MTU пути уровня пакетирования описывает метод обнаружения MTU пути, который более надежно реагирует на фильтрацию ICMP. В IP-сети путь от адреса источника к адресу назначения может изменяться в ответ на различные события (Балансировка нагрузки, скопление, перебои и т. д.), и это может привести к изменению MTU пути (иногда многократно) во время передачи, что может привести к дальнейшим отбрасываниям пакетов до того, как хост найдет новый надежный MTU.
Сбой обнаружения Path MTU может привести к тому, что некоторые сайты будут плохо настроены. брандмауэры недоступен. Соединение с несоответствующим MTU может работать для данных небольшого объема, но терпит неудачу, как только хост отправляет большой блок данных. Например, с Интернет-чат подключающийся клиент может видеть начальные сообщения вплоть до начального пинг (отправляется сервером в качестве меры защиты от спуфинга), но после этого не получает ответа. Это связано с тем, что большой набор приветственных сообщений, отправленных в этот момент, представляет собой пакеты, превышающие MTU пути. Это можно обойти, в зависимости от того, какую часть сети контролирует; например, можно изменить MSS (максимальный размер сегмента ) в исходном пакете, который устанавливает TCP соединение через брандмауэр.
В других контекстах
MTU иногда используется для описания максимальных размеров PDU на уровнях связи, отличных от сетевого.
- Cisco Systems использовать L2 MTU для максимального размера кадра.[19]
- Dell /Force10 использовать MTU для максимального размера кадра.[20]
- Hewlett Packard использовал только что MTU для максимального размера кадра, включая дополнительный IEEE 802.1Q тег.[21]
- Juniper Networks используйте несколько терминов MTU: MTU физического интерфейса (L3 MTU плюс некоторые неуказанные накладные расходы протокола), Логический интерфейс MTU (в соответствии с IETF MTU) и Максимальный MTU (максимальный настраиваемый размер кадра для jumbo-кадров).[22]
Передача пакет в сегменте физической сети, размер которого превышает MTU сегмента, называется болтовня. Это почти всегда вызвано неисправными устройствами.[23] Сетевые коммутаторы и немного ретрансляторы имеют встроенную возможность определять, когда устройство болтает.[24][25]
Рекомендации
- ^ RFC 791. п. 25. Дои:10.17487 / RFC0791.
- ^ Мюррей, Дэвид; Терри Козинец; Кевин Ли; Майкл Диксон (2012). «Большие MTU и производительность в Интернете». 2012 13-я Международная конференция IEEE по высокопроизводительной коммутации и маршрутизации. С. 82–87. Дои:10.1109 / HPSR.2012.6260832. ISBN 978-1-4577-0833-6.
- ^ RFC 791. п. 24. Дои:10.17487 / RFC0791.
Каждое место назначения в Интернете должно иметь возможность получать дейтаграмму из 576 октетов либо целиком, либо фрагментами для повторной сборки.
- ^ RFC 2460. п. 13. Дои:10.17487 / RFC2460.
- ^ RFC 791. п. 24. Дои:10.17487 / RFC0791.
Каждый интернет-модуль должен иметь возможность пересылать датаграмму из 68 октетов без дальнейшей фрагментации.
- ^ RFC 791. п. 12. Дои:10.17487 / RFC0791.
Общая длина - это длина дейтаграммы, измеряемая в октетах, включая Интернет-заголовок и данные. Это поле позволяет иметь длину дейтаграммы до 65 535 октетов.
- ^ а б RFC 1191. Дои:10.17487 / RFC1191.
- ^ RFC 2460
- ^ RFC 2675, п. 1, «Заголовок IPv6 [IPv6] имеет 16-битное поле длины полезной нагрузки и, следовательно, поддерживает полезную нагрузку длиной до 65 535 октетов. В этом документе указывается пошаговая опция IPv6, называемая опцией Jumbo Payload, которая несет Поле длиной 32 бита для передачи пакетов IPv6 с полезной нагрузкой от 65 536 до 4 294 967 295 октетов. Пакеты с такой длинной полезной нагрузкой называются «джумбограммами».
- ^ RFC 6145
- ^ Сетевая рабочая группа IETF, RFC 894: Стандарт для передачи дейтаграмм IP по сетям Ethernet, стр. 1, «Максимальная длина поля данных пакета, отправляемого по Ethernet, составляет 1500 октетов, таким образом, максимальная длина дейтаграммы IP, отправляемой через Ethernet, составляет 1500 октетов. . ", ОШИБКА
- ^ IEEE 802.3[страница нужна ]
- ^ Скотт Хогг (2013-03-06), Jumbo Frames, Сетевой мир, получено 2013-08-05,
Большинство сетевых устройств поддерживают размер jumbo-кадра 9216 байт.
- ^ Juniper Networks (23 марта 2020 г.), Свойства физического интерфейса, получено 2020-05-01
- ^ Джо Сент-Совер (2003-02-04). «Практические вопросы, связанные с 9K MTU» (PDF). uoregon.edu. п. 67. Получено 2016-12-15.
вам по-прежнему необходимо убедиться, что ВСЕ вышестоящие коммутаторы Ethernet, включая любые коммутаторы в ядре кампуса, ТАКЖЕ поддерживают jumbo-кадры
- ^ RFC 2516 со стандартным MTU Ethernet 1500 байт; расширения существуют
- ^ RFC 4638
- ^ 802.11-2012, стр. 413, раздел 8.3.2.1
- ^ «Настройте и проверьте максимальное количество единиц передачи на платформах Cisco Nexus». Cisco. 2016-11-29. Идентификатор документа: 118994. Получено 2017-01-04.
- ^ «Как настроить MTU (максимальный размер передаваемого блока) для кадров большого размера на коммутаторах Dell Networking Force10». Dell. 2016-06-02. Код статьи: HOW10713. Получено 2017-01-06.
- ^ «Джамбо-кадры». Руководство по управлению и настройке коммутаторов HP Networking 2910al. Hewlett Packard. Ноябрь 2011. P / N 5998-2874.
- ^ "Сервисные шлюзы серии SRX для модулей физического интерфейса филиалов Справочная информация: Значения MTU по умолчанию и максимальные значения для модулей физического интерфейса". Можжевельник. 2014-01-03. Получено 2017-01-04.
- ^ болтовня, Сетевая энциклопедия, получено 2016-07-28
- ^ показать интерфейсы, Juniper Networks, получено 2016-07-28
- ^ IEEE 802.3 27.3.1.7 Функциональные требования приема jabber
внешняя ссылка
- Марк Слемко (18 января 1998 г.). "Обнаружение MTU пути и фильтрация ICMP". Архивировано из оригинал 9 августа 2011 г.. Получено 2007-09-02.
- Настройка MTU / RWin для широкополосных пользователей Orange
- Как установить значение TCP MSS с помощью iptables
- mturoute - консольная утилита для устранения проблем с mtu