2016-12-06

От чего зависит скорость TCP/IP соединения

Скорость TCP/IP, от чего зависит?


Привет  всем. В прошлой статье мы рассмотрели что такое TCP/IP соединение,и как можно снять ограничение.Естественно, что не только от одного MTU зависит скорость. Существует еще много составляющих протокола TCP/IP,которые влияют на нее.  Многие из этих параметров легко выставляются с помощью все тех же утилит, что и MTU.MTU — Maximum Transmission Unit. 
В реестре он задается таким образом:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\ Services\Class \NetTrans\000x "MaxMTU"="1500"
Это максимальный размер пакета данных, который может быть передан за один физический кадр по протоколу TCP/IP. Дело в том, что данные от компьютера к компьютеру в Интернете идут не сплошным потоком, а этими самыми кадрами. Кадр — это пакет определенного размера.


-RWIN (receive window, окно приема)размер буфера, в котором накапливается содержимое области данных(MSS) нескольких полученных пакетов, прежде чем передается дальше, например, в браузер. 
При недостаточном размере этого буфера иногда происходит его переполнение, и поступающие пакеты отвергаются и теряются. 
Размер RWIN обязательно должен быть кратен MSS и обычно для лучшей эффективности модемного соединения кратность рекомендуется устанавливать равной 4—8. 
Однако чрезмерно большой размер буфера также нежелателен, особенно на плохих линиях: при потере всего одного пакета в случае сбоя на линии будет повторно затребован не один потерянный пакет, а все пакеты из этого буфера, что займет некоторое время. В реестре тот параметр находится здесь:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\MSTCP
-"DefaultRcvWindow"="Bauie значение" TTL (time to live, время жизни) — количество хопов, т.е промежуточных серверов, через которые может пройти ваш пакет в поисках своего места назначения. Каждый такой сервер добавляет единицу к специальному счетчику в заголовке вашего пакета, и, когда счетчик достигает максимально разрешенного значения, пакет считается заблудившимся и прекращает свое существование.

 По умолчанию TTL равен 32, что сегодня явно недостаточно для разросшегося Интернета: нередки случаи, когда удаленный сервер находится более чем в 32 переходах, поэтому TTL следует увеличить как минимум до 64:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\aervices\VxD\MSTCP "DefaultTTL"="64"-IPMTU (Internet Protocol MTU)в Windows 98, по сути, это то же самое, что и MTU, но применительно только к контроллеру удаленного доступа.

В реестре он упоминается несколько раз:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Net\OOOx"I? MTU"="1500"
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Net\OOOx\Nc i\params\IPMTU-PMTU (Path MTU, путевое значение MTU) ("default"=" 1500" @="1500") -этот параметр разрешает Windows самой определять оптимальное значение MTU при организации соединения с каждым сервером. При этом серверу посылается ряд нефрагментируемых пакетов разного, постепенно уменьшающегося размера, и как только очередной пакет достигнет сервера, его размер считается оптимальным. На эту процедуру, разумеется,
требуется некоторое время, и по умолчанию она включена, в связи с чем часто советуют ее выключить.  
Выключается же этот режим так:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\MSTCP "PMTUDiscovery"="0"

PMTUBlackHole Detect (обнаружение "черных дыр") — установка этого параметра разрешает протоколу TCP пытаться обнаружить никуда не ведущие роутеры и те, что не возвращают ICMP-сообщений о необходимости фрагментации при определении наилучшего MTU. Это так же, как и любая дополнительная процедура, может замедлять работу в Интернете — попробуйте поэкспериментировать с ее отключением:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\MSTCP "PMTUBlackHoleDetect"="0"

Как очистить "хвосты" программы в реестре,после её удаления читайте далее

-SessionKeepAlive (поддержание соединения) — определяет, как часто будут посылаться специальные пакеты информации, предотвращающие отключение вас сервером в случае отсутствия активности в Сети с вашей стороны. Минимум — одна минута, по умолчанию — один час в Windows МЕ/9х и два часа в Windows 2000.
Рекомендуемый интервал — 10 минут, параметр задается в секундах:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\MSTCP "SessionKeepAlive"="600"

SlowNet отключение этой функции может сократить задержки в передаче данных, но визуально это будет не сильно заметно.
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Net\OOOx "SLOWNET"=hex:00

NDI Cache (Network Device Interface Cache) — кэш, в котором хранятся данные о маршрутах движения пакетов,по умолчанию его размер равен нулю. Чтобы его задействовать наиболее оптимально, необходимо установить его размер равным 16 при модемном соединении или 32 при более высоких скоростях подключения:
HKEY_LOCAL__MACHINE\System\CurrentControlSet\Services\VxD\NWLink\Ndi\ paramsXcachesize @="16"

В реестре обычно рекомендуется выставить еще некоторые параметры, влияние которых на качество связи проследить трудно, но попробовать поэкспериментировать с их значениями можно:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\NWLink\Ndi \
params\maxconnect @="64" "max"="128" "min"="2"
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\NWLink\Ndi \params\maxsockets @="255" "тах"="1020" "min"="32"
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\NETBEUI\Ndi\params\ncbs "default"="32" "max"="255" "min"="8"
HKEY_LOCAL__MACHINE\System\Current
ControlSet\Services\VxD\NETBEUI\Ndi\paramsXsessions "default"="32" "max"="117" "min"="4"

Нижеследующие параметры устраняют, по заверениям Microsoft, некоторые ошибки Windows и увеличивают скорость работы вашего браузера:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\MSTCP "BSDUrgent"="l"
"Tcpl3230pts"=dword:00000003 "SackOpts"="l"

Вот так вы увеличите количество одновременных подключений к серверу:

[HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings]
"MaxConnectionsPerl_OServer"=dword:OOOOOOOa=10 "
MaxConnectionsPerServer"=dword:00000008 =8

Оптимизировать интернет-соединения не так легко, как кажется. Наши
провайдеры почти всегда выбирают для себя MTU=1500, а при "пинге" удаленных серверов мы обнаруживаем, что пакет такого размера, проходит чаще всего нефрагментированным.
При этом, чем больше MTU, тем эффективнее используется ваш интернет-доступ.
Поэтому, чтобы настроить вашу систему на максимальную производительность,желательно вам самим:

- выяснить действительное значение MTU своего провайдера;
-выбрав это значение, убедиться, что пакеты такого размера при связи с чаще всего вами посещаемыми серверами не будут фрагментироваться;
-провести эксперименты с загрузкой одного и того же файла при разных значениях MTU;
-проверить, как сказывается изменение MTU на сетевых играх.

Почему постоянно пропадает подключение к локальной сети или к 
интернету читайте далее
Как устранить ошибки в TCP/IP сетях читайте далее
 
Пожалуй на этом мы и разобрались с протоколами TCP/IP.

Введите Ваш E-mail

ВведитеВашEmail:

Понравилась статья? Поделись с друзьями.