Скорость загрузки данных через спутниковый Интернет

1. Немного теории
2. Практические результаты
3. Описание тестирования
    3.1 Скоростной запросный канал 
    3.2 Запросный канал GPRS/EDGE 
    3.3 Влияние ошибок в канале

1. Немного теории

Особенностью спутникового канала является довольно большая задержка распространения сигнала. Чтобы пройти от оператора до спутника и от спутника до абонента, радиоволнам нужно около 250 мс. Кроме того, существует задержка в "запросном" (наземном) канале, которая может варьироваться в широких пределах – от нескольких десятков миллисекунд для скоростных наземных подключений до единиц секунд при использовании сильно загруженных сетей GPRS. К этому надо еще добавить задержку передачи информации в самой сети Интернет. В итоге при работе через асимметричный спутниковый интернет задержка практически не бывает меньше 300 мс, а при запросном канале GPRS может варьироваться в пределах от примерно полсекунды до нескольких секунд.

Большинство способов передачи трафика, работающих в Интернет, используют протокол TCP (transmission control protocol, протокол управления передачей). TCP основан на подтверждении приёма информации, и если в заданный интервал времени подтверждения не приходит, то передача замедляется или вовсе прекращается. Настройки протокола TCP в большинстве систем ориентированы на подключения с небольшим временем задержки сигнала. При работе таких систем через спутниковый канал подтверждения протокола TCP не приходят в заданный настройками интервал времени, и передача данных начинает ограничиваться не скоростью спутникового канала, а задержкой распространения.

Увеличить скорость передачи данных можно за счет запуска нескольких одновременных сессий TCP ("потоков закачки") – скорость каждой сессии будет ограничиваться задержкой на канале, но суммарная скорость вырастет. Однако этот способ увеличивает и количество передаваемой служебной информации, как в "прямом" спутниковом канале, так и в "запросном" наземном.

Другой способ – увеличить время ожидания подтверждения. Это время задается так называемым "окном TCP" (TCP Window Size). "Окно TCP" – это количество байт, которое может быть передано до того, как ожидается получение первого подтверждения. Большое "окно TCP" позволяет получить достаточно большие скорости передачи даже на канале со значительно задержкой. Но чем больше "окно", тем медленнее растет скорость передачи до максимального значения. То есть, увеличение "окна TCP" эффективно только при "закачке" достаточно больших объемов информации (файлов). Практические рекомендации по установке "окна TCP" приведены на нашем сайте в разделе "Часто задаваемые вопросы".

Третий способ – применить "акселератор трафика", например Slonax или Globax, который вместо стандартного TCP использует собственный протокол, как правило, на базе UDP, малочувствительный к задержкам на канале. Но это приводит к усложнению настройки системы на стороне клиента, а в случае закачки файлов – часто и к увеличению объемов входящей информации (при экономии объемов "исходящей"). Работа с акселераторами – предмет отдельного изучения и здесь далее не рассматривается.

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

2. Практические результаты

В лаборатории StarBlazer исследовалась зависимость максимально достижимой скорости "закачки" файлов от параметров "запросного" канала и настроек окна TCP на компьютере пользователя. Использовались операционная система Windows XP SP2, плата спутникового приема Technotrend S2-3200, запросные каналы ADSL (скорость "исходящего" трафика 384 кбит/с) и GPRS/EDGE.

Результаты выглядят следующим образом:

Окно TCPЗапросный канал ADSL 384 кбит/сЗапросный канал GPRS/EDGE
1 поток5 потоков8 потоков1 поток5 потоков8 потоков
"по умолчанию"
(16 кбайт)
Максимально достигнутая скорость45 кбайт/с190 кбайт/с270 кбайт/с16 кбайт/с75 кбайт/с100 кбайт/с
Отношение исходящий/входящий*1:951:651:601:1001:801:75
64 кбайтМаксимально достигнутая скорость145 кбайт/с240 кбайт/с430 кбайт/с65 кбайт/с150 кбайт/с170 кбайт/с
Отношение исходящий/входящий*1:1101:701:601:1301:901:90
256 кбайтМаксимально достигнутая скорость180 кбайт/с400 кбайт/с520 кбайт/с75 кбайт/с165 кбайт/с185 кбайт/с
Отношение исходящий/входящий*1:1201:751:651:1201:851:85

* Приведенное отношение "исходящий/входящий" характерно для использования плат семейства Technotrend S2 с BDA-драйверами для Windows. При использовании других спутниковых плат и других драйверов отношение "исходящий/входящий" может существенно отличаться.

Приведенные результаты были получены в следующих условиях:

  • Асимметричный спутниковый доступ SB hybrid оператора StarBlazer, ограничение скорости на спутниковом канале отключено.
  • Используемый спутник IntelSat 904 (несущая 11526V, 5300 ks/s, DVB-S2, FEC 5/6) Спутниковая антенна – офсетная, диаметром 0.9 метра, марки Супрал.
  • Малошумящий усилитель-конвертер (LNB) – универсальный телевизионный, Ku-диапазона, марки Inverto.
  • Плата спутникового приема – Technotrend S2-3200 (PCI).
  • Место расположения антенны – Подмосковье, уровень сигнала по индикатору S2-3200 – “Signal quality – 100%, Signal level – 80%” (для других плат показания при том же уровне сигнала могут отличаться в любую сторону).
  • Подключение к сети StarBlazer осуществлялось по VPN через узел доступа vpn60ev.starblazer.ru.
  • Измерения скорости проводились путем скачивания по протоколу HTTP файлов размером 6.5 и 25 Мбайт с сервера во внутренней сети StarBlazer. Использовалась программа Download Master 5.5.11.

3. Описание тестирования

Далее приведено подробное описание испытаний, в результате которых были получены вышеприведенные данные.

3.1 Скоростной запросный канал

Первая серия испытаний проводилась со скоростным запросным каналом (подключение к Интернет по ADSL, скорость исходящего трафика до 384 кбит/с). Сходные результаты должны получаться на любом запросном канале стабильного качества и со скоростью исходящего трафика от 100 кбит/с и выше. Параметры канала (запросный + спутниковый) измерены перед началом испытаний и оставались постоянными во время всей серии.

Статистика Ping для 217.150.4.110

  • Пакетов: отправлено = 200, получено = 200, потеряно = 0 (0% потерь)
  • Приблизительное время приема-передачи в мс: минимальное = 308 мсек, максимальное = 489 мсек, среднее = 403 мсек

Первое испытание – окно TCP "по умолчанию"

Настройки "окна TCP" по умолчанию (16 кбайт для Windows XP). Закачка файла размером 6.5 Мбайт в одну сессию TCP.

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в одну сессию TCP

Видно, что максимальная скорость ограничена на уровне примерно 400 кбит/с (скорость закачки файла по данным Download Master – 45 кбайт/с). Отношение исходящий/входящий трафик – 1:95.

Закачка того же файла при пяти одновременных сессиях TCP (в пять потоков).

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в пять потоков

Максимальная скорость около 2 Мбит/с, скорость закачки файла по данным Download Master – 190 кбайт/с. Увеличился как исходящий, так и входящий трафик (служебная информация на открытие и поддержку дополнительных сессий TCP), отношение исходящий/входящий трафик – 1:65.

При закачке в восемь потоков.

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в восемь потоков

Максимальная скорость около 3 Мбит/с, скорость закачки файла по данным Download Master – 270 кбайт/с. Отношение исходящий/входящий трафик – 1:60.

Второе испытание – окно TCP 64 кбайта

"Окно TCP" установлено на значение 64 кбайта. Это максимальный размер, допустимый в "оригинальной" версии протокола TCP, с которым могут работать все сайты в Интернет.

Закачка файла размером 6.5 Мбайт в один поток.

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в одну сессию TCP

Максимальная скорость ограничена на уровне примерно 1.5 Мбит/с (скорость закачки файла по данным Download Master – 145 кбайт/с). Отношение исходящий/входящий трафик – 1:110.

То же самое при закачке в пять потоков.

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в пять потоков

Скорость закачки файла по данным Download Master – 240 кбайт/с. Видно завершение отдельных потоков "закачки" и начало новых, скорость каждого из которых нарастает постепенно. Объем входящей информации увеличился за счет установления новых сессий TCP (потоков закачки). Отношение исходящий/входящий трафик – 1:70.

При закачке в восемь потоков.

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в восемь потоков

Максимальная скорость более 4 Мбит/с, но скорость закачки по данным Download Master – 310 кбайт/с. Файл оказался слишком коротким и закачка закончилась раньше, чем скорость передачи по протоколу TCP успела выйти на "установившийся" уровень.

Та же закачка в восемь потоков при окне 64 кбайта, но для файла размером 25 Мбайт.

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в восемь потоков

Скорость закачки файла по данным Download Master – 430кбайт/с. Видно завершение отдельных потоков "закачки" и начало новых. Отношение исходящий/входящий трафик – 1:60.

Третье испытание – окно TCP 256 кбайт

"Окно TCP" установлено на значение 256 кбайт. Поддержка окна размером более 64 кбайт не предусмотрена в оригинальной редакции протокола TCP и введена более поздним стандартом RFC 1323. Чтобы поддержка такого размера окна стала возможной, нужно в реестре Windows добавить параметр Tcp1323Opts типа DWORD и установить его значение в 1 или 3 (значение 3 разрешает механизм "временных меток", используемый для дополнительной оптимизации параметров TCP, но немного увеличивает объем "исходящего" трафика). Дополнительно нужно указать также параметр SackOpts со значением 1, который разрешает механизм Selective Acknowledgment (выборочных подтверждений) для окон большого размера.

Следует иметь в виду, что при установлении сессии TCP происходит согласование параметров между сервером и клиентом. В этом испытании на сервере поддерживались окна TCP большого размера. Если на сервере не поддерживаются опции TCP по стандарту RFC 1323, то максимальный размер окна TCP окажется ограничен значением 64 кбайта, как в предыдущем испытании.

Закачка файла размером 6.5 Мбайт в один поток при окне TCP размером 256кбайт.

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в одну сессию TCP

Максимальная скорость более 2.5 Мбит/с, скорость закачки файла по данным Download Master – 180 кбайт/с (для файла большего размера результирующая скорость была бы несколько выше, следующие измерения проводились с файлом размером 25 Мбайт). Отношение исходящий/входящий трафик – 1:120.

Закачка в пять потоков, для файла размером 25 Мбайт.

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в пять потоков

Скорость закачки файла по данным Download Master – 400кбайт/с. Видно завершение отдельных потоков "закачки" и начало новых. Отношение исходящий/входящий трафик – 1:75.

Закачка в восемь потоков для файла размером 25 Мбайт.

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в восемь потоков

Скорость закачки файла по данным Download Master – 520 кбайт/с. Отношение исходящий/входящий трафик – 1:65.

3.2 Запросный канал GPRS/EDGE

Вторая серия испытаний проводилась с запросным каналом GPRS/EDGE, оператор МТС, для подключения использовался сотовый телефон Nokia 6300. Запросный канал EDGE обеспечивал максимальную скорость исходящего трафика порядка 20 кбит/с. Задержки и потери пакетов канала GPRS/EDGE достаточно быстро меняются в широких пределах и зависят от текущей загрузки сотовой сети голосовыми вызовами, имеющими максимальный приоритет по сравнению с передачей данный.

Параметры канала (запросный GPRS/EDGE + спутниковый) замерены перед началом серии испытаний, во время испытаний заметно менялись. Испытания проводились по возможности в моменты наибольшей стабильности характеристик канала.

Статистика Ping для 217.150.4.110

  • Пакетов: отправлено = 200, получено = 198, потеряно = 2 (1% потерь)
  • Приблизительное время приема-передачи в мс: минимальное = 697 мсек, максимальное = 2778 мсек, среднее = 1002 мсек

Первое испытание – окно TCP "по умолчанию"

Настройки "окна TCP" по умолчанию (16 кбайт для Windows XP). Закачка файла размером 6.5 Мбайт в одну сессию TCP (поток).

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в одну сессию TCP

Максимальная скорость ограничена на уровне примерно 160 – 200 кбит/с. Видно, что в ходе закачки файла происходило ухудшение характеристик канала с потерей пакетов. Скорость сессии TCP при этом падает практически до ноля, после чего плавно пытается подняться до максимального значения, при котором пакеты еще не теряются. В результате скорость закачки файла по данным Download Master – 16 кбайт/с. Отношение исходящий/входящий трафик – 1:100.

Закачка того же файла в пять потоков.

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в пять потоков

Объем входящего и исходящего трафика возрос за счет установления дополнительных сессий. Скорость закачки файла по данным Download Master – 75 кбайт/с. Отношение исходящий/входящий трафик – 1:80.

Закачка того же файла в восемь потоков.

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в восемь потоков

Максимальная скорость – более 1 Мбит/с. Скорость закачки файла по данным Download Master – 100 кбайт/с. Отношение исходящий/входящий трафик – 1:75.

Второе испытание – окно TCP 64 кбайта

"Окно TCP" установлено на значение 64 кбайта. (максимальный размер, допустимый в "оригинальной" версии протокола TCP, с которым могут работать все сайты Интернет).

Закачка файла размером 6.5 Мбайт в одну сессию TCP (поток).

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в одну сессию TCP

Скорость порядка 500 кбит/с, скорость закачки файла по данным Download Master – 65 кбайт/с. Отношение исходящий/входящий трафик – 1:130.

Закачка того же файла в пять потоков.

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в пять потоков

Пиковая скорость – около 2.5 Мбит/с, скорость закачки файла по данным Download Master – 150 кбайт/с. Видно завершение основного количества потоков (сессий TCP) и "докачка" оставшегося объема данных с установлением новых сессий, которые не успевают "разогнаться" до больших скоростей. Отношение исходящий/входящий трафик – 1:90.

Закачка того же файла в восемь потоков.

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в восемь потоков

Скорость закачки файла по данным Download Master – 170 кбайт/с. Существенного "ускорения" по сравнению с пятью потоками не происходит – сказывается ограничение скорости на запросном канале. Объем входящего и исходящего трафика несколько увеличился, отношение исходящий/входящий трафик – 1:90.

Третье испытание – окно TCP 256 кбайт

"Окно TCP" установлено на значение 256 кбайт, установлены параметры Tcp1323Opts и SackOpts. На сервере поддерживались окна TCP большого размера.

Закачка файла размером 6.5 Мбайт в один поток.

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в одну сессию TCP

Скорость закачки файла по данным Download Master – 75 кбайт/с, т.е. уже мало отличается от окна TCP 64 кбайта – сказывается ограничение запросного канала. Отношение исходящий/входящий трафик – 1:120.

Закачка того же файла в пять потоков.

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в пять потоков

Скорость закачки файла по данным Download Master – 165 кбайт/с. Отношение исходящий/входящий трафик – 1:85. Ограничение максимальной скорости связано, возможно, с ухудшением параметров запросного канала в процессе передачи, но суммарная скорость закачки существенно не снизилась.

Закачка того же файла в восемь потоков.

StarBlazer – скорость загрузки данных через спутниковый Интернет, закачка файла в восемь потоков

Скорость закачки файла по данным Download Master – 185 кбайт/с. Видно завершение основного количества потоков (сессий TCP) и "докачка" оставшихся данных с установлением новых сессий, которые не успевают "разогнаться" до больших скоростей. Существенного "ускорения" по сравнению с пятью потоками не происходит – сказывается ограничение скорости на запросном канале. Отношение исходящий/входящий трафик – 1:85.

3.2 Влияние ошибок в канале

Ошибки (пропадание пакетов) как в запросном, так и в спутниковом канале приводят к резкому падению скорости TCP-сессии практически до ноля, после чего скорость медленно поднимается до значений, при которых еще не происходит потеря пакетов (процедура slow-start). При этом происходит увеличение объемов передаваемого трафика и снижение результирующей скорости передачи.

В качестве примера можно взять закачку файла с запросным каналом GPRS/EDGE в момент резкого ухудшения его характеристик. Закачка происходила в пять потоков с окном TCP "по умолчанию".

StarBlazer – скорость загрузки данных через спутниковый Интернет, запросный канал с большим количеством ошибок

Скорость закачки файла по данным Download Master – 45 кбайт/с, соотношение исходящий/входящий – 1:60.

То же самое для стабильного запросного канала GPRS/EDGE.

StarBlazer – скорость загрузки данных через спутниковый Интернет, стабильный запросный канал

Скорость закачки файла по данным Download Master – 75 кбайт/с, т.е. почти вдвое выше, чем при нестабильном канале, соотношение исходящий/входящий также лучше – 1:80.

Если сравнить объемы входящего и исходящего трафика, то видно, что из-за ошибок в запросном канале заметно увеличился объем передаваемых данных и, соответственно, ухудшилось отношение исходящий/входящий.


© Copyright StarBlazer, 2009


Перепечатка статьи, полностью или частично, возможна только с разрешения автора. При размещении на других сайтах ссылка на www.starblazer.ru обязательна. Для получения разрешения напишите письмо по адресу  с указанием сайта, на котором Вы хотите разместить статью.

Новости

в контакте facebook twitter livejournal livejournal