Как устранить неполадки фрагментации пакетов TCP / UDP на Android

Все:

Я мало новичок в настройках MTU, и мне интересно, как бороться с фрагментацией, наблюдаемой через TCP / UDP (мы отправляем пакеты по сотовой сети через приложение Android).

Мы наблюдаем частую отправку фрагментации пакетов с устройства Android на сервер. Я хотел бы получить дополнительную информацию по теме:

  1. Что такое MTU?
  2. Какие инструменты мы можем использовать для просмотра или проверки фрагментации пакетов (Wireshark, tcpdump и т. Д.)?
  3. Как мы можем использовать стандартные инструменты, такие как ping / traceroute, с устройства Android (и полезно ли это)?

заранее спасибо


person droigons    schedule 25.02.2012    source источник


Ответы (1)


MTU означает Maximum Transmission Unit - это самый большой размер пакета, который будет передавать собственный канальный уровень. Например, MTU сетей на базе Ethernet обычно составляет 1500 байтов. Когда система желает отправить IP-дейтаграмму, размер которой превышает MTU сети, она должна фрагментировать пакет на части, не превышающие MTU. Обратите внимание, что с TCP фрагментация происходит довольно редко, особенно потому, что большинство реализаций TCP теперь используют обнаружение MTU пути. Фрагментация обычно возникает только тогда, когда UDP используется с необычно большими пакетами.

Вы действительно можете наблюдать фрагментацию пакетов с помощью всевозможных инструментов, которые контролируют необработанную сеть, включая tcpdump, wirehark и т. Д.

Если вы хотите узнать больше о низкоуровневой механике TCP / IP, помимо обычных ресурсов, таких как Википедия, я предлагаю прочитать Стивенса, «TCP / IP Illustrated», том 1.

person Perry    schedule 25.02.2012