Назад | Перейти на главную страницу

MTU в мобильных сетях передачи данных

Я нашел разные списки MTU для разных ссылок, но они никогда не содержат UMTS, LTE, EDGE, HSPA, GPRS.

Каковы MTU у вышеупомянутых технологий?

Короткий ответ: это зависит от обстоятельств.

Данные, поступающие от мобильного абонента, инкапсулируются в протокол туннелирования GRPS (сокращенно GTP-U), который в основном представляет собой UDP-поток с заголовком GTP, содержащим IP-адреса конечных точек туннеля (GGSN / PGW и радио станцию, проще говоря) и идентификатор туннеля (TEID).

Заголовок имеет переменную длину и может содержать до 12 октетов.

Итак, возвращаясь к вопросу, это зависит от того, какой собственный MTU используется в транспортной сети мобильной связи (Gn), от радиооборудования до GGSN, где туннель декапсулируется (Gi). Если MTU обратного рейса составляет не менее 1512 байтов, MTU может составлять обычные 1500 байтов.

Тем не менее, я видел клиентов, которые намеренно снижали MTU, объявленное для мобильного оборудования, до 1488 или даже ниже (подумайте о тегах VLAN или MPLS), так что MTU транзитного соединения не нужно менять (это большая работа, когда планирование не учитывало это в первую очередь).

В общем, это не большая проблема, поскольку мобильное оборудование уже использует «правильный» MTU, но может привести к проблемам, если телефон действует как маршрутизатор, который не реализует правильное ограничение PMTU. Кроме того, если MTU слишком мал, фактическая доступная пропускная способность не может быть реально использована в TCP-соединениях; это классический пример проблемы с «длинной жирной трубкой и продуктом задержки полосы пропускания». Под "слишком малым" я подразумеваю "намного меньше 1488".

Если вы хотите узнать собственный MTU вашего текущего соединения, вы можете использовать различные инструменты для обнаружения PMTU. Самый простой способ - это, вероятно, «пинговать», последовательно увеличивая MTU, пока не появится сообщение об ошибке «требуется фрагментация, но установлен DF». Последний рабочий MTU - это собственный для мобильного телефона, собственный MTU для обратного рейса - это MTU плюс накладные расходы заголовка GTP-U. В Linux вы даже можете использовать опцию подсказки, которая упрощает работу. Пример:

alex@xila:~$ ping -c 1 -M do -s 2000 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 2000(2028) bytes of data.
From 93.203.x.y icmp_seq=1 Frag needed and DF set (mtu = 1492)

(классический пример инкапсуляции PPPoE)

Ссылки:

  • Для GTPv0 (2G): «Цифровая сотовая телекоммуникационная система (фаза 2+); общая услуга пакетной радиосвязи (GPRS); протокол туннелирования GPRS (GTP) через интерфейс Gn и Gp (3GPP TS 09.60, версия 7.10.0, выпуск 1998 г.). URL (PDF): http://www.etsi.org/deliver/etsi_TS/101300_101399/101347/07.10.00_60/ts_101347v071000p.pdf
  • Для GTPv1 (2.5G +): «Система цифровой сотовой связи (Фаза 2+); Универсальная система мобильной связи (UMTS); Служба пакетной радиосвязи общего назначения (GPRS); Протокол туннелирования GPRS (GTP) через интерфейс Gn и Gp (3GPP TS 29.060 версия 6.9.0 Release 6) ». URL (PDF): http://www.etsi.org/deliver/etsi_TS/129000_129099/129060/06.09.00_60/ts_129060v060900p.pdf
  • Протокол GTPv2 не содержит изменений в части плоскости пользователя, то есть в туннеле, только в плоскости управления. (GTP-C, не влияет на туннель)