Привет.
Сетевая подсистема в Windows NT прошла достаточно длительный путь – изначально являясь сетевой операционной системой, NT сразу ставила задачу предоставлять надежные, сбалансированные и эффективные сетевые решения.
Беда в том, что с точки зрения большинства админов под “настройкой сетевых параметров” понимаются видные глазом базовые минимальные пункты – как задание IP-адреса, маски и шлюза, а даже тот факт, что IP-адресов на интерфейсе может быть несколько, уже вызывает удивление.
Фактически же количество сетевых настроек в Windows NT достаточно велико, и, хорошо зная работу сетевой подсистемы, можно ощутимо улучшить работу ОС. И наоборот тоже. Поэтому данная статья обязательна к ознакомлению тем, кто хочет “покрутить параметры”.
Диспозиция
Я предполагаю, что Вы, товарищ читатель, знаете на приемлемом уровне протокол TCP, да и вообще протоколы сетевого и транспортного уровней. Чем лучше знаете – тем больше КПД будет от прочтения данной статьи.
Речь будет идти про настройку для ядра NT 6.1 (Windows 7 и Windows Server 2008 R2). Всякие исторические ссылки будут, но сами настройки и команды будут применимы к указанным ОС, если явно не указано иное.
В тексте будут упоминаться ключи реестра. Некоторые из упоминаемых ключей будут отсутствовать в официальной документации. Это не страшно, но перед любой серьёзной модификацией рабочей системы лучше фиксировать то, что Вы с ней делаете, и всегда иметь возможность удалённого доступа, не зависящую от состояния сетевого интерфейса (например KVM).
Это – первая часть статьи. Потому что настроек достаточно много. В следующей части я расскажу про другие.
Содержание
- Работаем с RSS
- Работаем с CTCP
- Работаем с NetDMA
- Работаем с DCA
- Работаем с ECN
- Работаем с TCP Timestamps
- Работаем с WSH
- Работаем с MPP
Поехали.
Настраиваем RSS в Windows
Аббревиатура RSS обычно ассоциируется совсем с другим, нежели с настройкой TCP. Хотя, в общем, это у всех по-разному – кто-то PHP с ходу расшифровывает как Penultimate Hop Popping, а кто-то думает, что КВД – это НКВД без первой буквы. Все люди разные. Мы будем говорить про тот RSS, который Receive Side Scaling.
Суть технологии RSS достаточно проста – входящий поток данных сетевого уровня разбивается на несколько очередей, обработка каждой из которых (вызов прерываний, копирование информации) производится выделенным виртуальным процессором (т.е. или отдельным физическим, или ядром). То есть в случае наличия нескольких процессоров Вы можете распределить интенсивный сетевой трафик по ним, снизив количество вызовов прерываний, переключений контекста, очистки кэша и прочих неприятностей, которые, если происходят много тысяч раз в секунду, могут ощутимо навредить производительности системы в целом.
Суть-то простая, да вот в реализации столько тонкостей, что можно написать отдельную статью. Пока это не является целью, поэтому постараюсь описать оные тонкости сжато и компактно
Для начала необходимо, чтобы сетевая карта умела формировать вышеупомянутые очереди, и умела делать это хорошо. По сути, эта задача требует от сетевой карты функционала, отдалённо напоминающего CEF (который Cisco Express Forwarding) – коммутации 3го уровня с определением и разделением отдельных потоков пакетов. Давайте попробуем разобраться на примере, как и зачем это может работать.
Допустим, у Вас есть быстрый сетевой адаптер (например, 10Гбит), и по нему к Вам приходит много данных. И эти данные хорошо разделяются на много потоков (например, когда мы ведём вебинары, на каждого слушателя идёт почти по десятку TCP-сессий, а слушателей бывает и 40). По сути, все эти потоки данных выглядят потоками только на транспортном уровне, а на сетевом сливаются в общий поток. Это, в общем, и есть работа протоколов транспортного уровня – мультиплексировать потоки данных от различных приложений на различных хостах. Но от этого нашей принимающей стороне не легче – ведь ей надо из входящего потока сформировать:
- Отдельные сессии TCP – т.е. для каждой поддерживать session state, буферы данных, состояние cwnd/rwnd, состояние sack’ов и ack’ов вообще
- Отдельные буферы для каждого фрагментированного IP-пакета
- Отдельные очереди (ведь трафик может обладать приоритетами)
И практически каждое событие во всей этой пачке сессий – это вызов прерывания и его обработка. Крайне затратно, особенно учитывая, допустим, негативный сценарий (10 гигабит поток, ip-пакеты по 1КБ). Можно даже сказать проще – ощутимое количество процентов мощности процессора (весьма дорогого, заметим) уйдёт на решение этих задач тех.обслуживания. Как с этим бороться? Да просто – пусть адаптер формирует отдельные очереди пакетов – тогда на каждую из них можно “привязать” свой процессор/ядро, и нагрузка в плане прерываний и прочего распределится. Но тут нас поджидает неочевидная проблема.
Дело в том, что просто так распределить не получится. Т.е. если мы придумаем очень простой критерий распределения (например, две очереди, четные пакеты – налево, нечетные – направо), то у нас может получиться следующая ситуация – у потоков данных часть пакетов попадёт в “четную” очередь, а часть – в “нечетную”. А в этом случае мы потеряем все возможные бонусы, возникающие при обработке непрерывного потока пакетов (обычно эти бонусы выглядят как “первый пакет обрабатываем по-полной, кэшируем все возможные результаты обработки, и все последующие пакеты обрабатываем по аналогии”). Т.е. нам надо всячески избегать ситуации, когда одному процессору придётся, обрабатывая, например, поток очень однотипных мультимедийных пакетов (какой-нибудь RTP например), пытаться “сбегать почитать” в соседнюю очередь. Скажем проще – никуда он вообще бегать тогда не будет, а придётся тогда нам выключать всяческие ускорения обработки TCP/UDP/IP-потоков, потому что работать они будут только в случае ситуации, когда весь поток однотипных пакетов обрабатывается одним ядром/процессором. А это приведёт к тому, что на процессоры придётся переводить вообще всю нагрузку по обработке сетевых данных, что с гарантией “убьёт” даже достаточно мощный CPU.
То есть, наша задача-максимум – это распределить входящие данные по нескольким отдельным очередям приёма, да так, чтобы потоки пакетов легли в очереди “целиком”, да и ещё желательно, чтобы заполнились эти очереди равномерно. Тогда мы и распределим нагрузку по процессорным ядрам, и не потеряем другие возможности по ускорению обработки потоков пакетов. Для решения этой задачи нам надо будет действовать сообща – и ОС, и оборудованию.
Хороший RSS начинается с сетевой карты. В сетевых картах, которые умеют RSS (а уже понятно, что это не карты минимального уровня), такой функционал есть – например в очень даже недорогой Intel 82576 (в моём случае – встроена в сервер) есть функционал и включения RSS сразу, и выбора количества очередей – 1, 2, 4 или 8.
Почему же количество очередей RSS будет выбираться из целочисленных степеней двойки? Тут начинается интересное, что будет роднить логику работы RSS и, допустим, логику балансировки у etherchannel.
Дело в том, что для того, чтобы определить “принадлежность” пакета к потоку, RSS использует следующую логику – берутся несколько ключевых полей пакета – SRC IP, DST IP, код протокола L4, SRC PORT, DST PORT – и от них вычисляется хэш, по последним битам которого (соответственно, для 2х очередей достаточно и одного бита, для 4х – двух, для 8 – трёх) и определяется принадлежность пакета к буферу. Соответственно, пакеты одного протокола, идущие с одного фиксированного порта и IP-адреса на другой адрес и порт, будут формировать поток и попадать в одну очередь. Такой подход достаточно быстр и прост с точки зрения балансировщика, но, как понятно, никак не решает ситуацию “Есть два стула две TCP-сессии – одна 1% канала занимает, другая 99%”. И даже не гарантирует, что обе эти сессии не попадут (с вероятностью 1/2) в одну и ту же очередь, что вообще превратит всю задачу в бессмыслицу.
Поэтому, в общем-то, остановимся на следующем факте – если у сетевой карты есть поддержка RSS, то её надо как минимум включить, чтобы первичное разделение входящего трафика на несколько очередей, притом с сохранением потоков, происходило без участия CPU.
Ну а вот дальше – уже задача операционной системы – что есть не один, а несколько потоков, и на каждый надо выделить свой процессор или ядро. Это как раз и будет тот самый RSS, который мы будем включать. Он уже будет создавать в драйвере NDIS отдельные очереди и выделять на каждую из них по процессору/ядру.
Нововведением в Windows Server 2008 R2 является то, что этим можно управлять – правда, только через реестр. В частности, управлению будут поддаваться 2 параметра – стартовое количество процессорных ядер, выделяемое для всех RSS-очередей на адаптере, и максимальное количество ядер для данной задачи. Параметры эти будут находиться по адресу HKLM\SYSTEM\CurrentControlSet\Control\Class\гуид сетевого адаптера\номер сетевого адаптера\
и называться, соответственно, *RssBaseProcNumber
и *MaxRSSProcessors.
Пример использования данных параметров – допустим, у Вас есть сервер с 16 ядрами (2 процессора по 8 ядер или 4 по 4 – не суть). Есть три сетевых адаптера – один используется для управления системой, два других – для привязки к ним виртуальных машин. Вы можете выставить указанные параметры только у двух интерфейсов, на которых будет подразумеваться высокая нагрузка, притом следующим образом – поставить RssBaseProcNumber
равным 2, а MaxRSSProcessors
– например, 12. Тогда тот интерфейс, который будет активнее принимать трафик, сможет “отъесть” до 12 ядер системы на обработку очередей, при этом не надо будет жестко задавать этот параметр вручную (это удобно, если нагрузка переместится на другой интерфейс). Безусловно, в этом примере надо, чтобы сетевые адаптеры тоже поддерживали RSS, и, желательно, хотя бы очередей 8.
Подводя итоги – RSS – это достаточно практичная и нужная технология, требующая поддержку и со стороны оборудования, и со стороны операционной системы. И становящаяся всё более актуальной, так как на данный момент скорости сетевых интерфейсов растут, равно как и количество процессорных ядер, а, следовательно, старый подход, когда одно ядро “разгребает” единую входящую очередь, становится всё менее эффективным.
Как включить RSS в Windows
netsh interface tcp set global rss=enabled
Настраиваем логику алгоритма контроля перегрузки (CTCP) в Windows
Compound TCP – это Microsoft’овский протокол управления “окном перегрузки” (congestion window). Адресно предназначен для форсированного изменения окна при работе в сетевых средах с относительно большой задержкой (например, по WiMax или спутниковым каналам). Соответственно, не сильно полезен в сценарии широкополосного доступа в Интернет или работе по локальной сети.
По сути, всё, что он делает, это форсирует быстрое увеличение окна со стороны отправителя в случае, если обнаруживается, что сеть имеет малое время отклика, и быстро уменьшает окно в случае задержек на канале.
Как включить CTCP в Windows
netsh interface tcp set global congestionprovider=ctcp
Настраиваем использование NetDMA в Windows
NetDMA – достаточно интересная функция. Смысл её применения есть тогда, когда у Вас не поддерживается Chimney Offload и Вы хотите ускорить обработку сетевых подключений. NetDMA позволяет копировать без участия CPU данные (в общем, как и любой DMA-доступ) из приемных буферов сетевого стека сразу в буферы приложений, чем снимает с CPU данную задачу по тупому выполнению чего-то типа rep movsd
.
Говоря проще, если Ваша сетевая плата не может “вытащить” на себя полную обработку TCP-соединений, то NetDMA хотя бы разгрузит процессор от самой унылой части задачи по обслуживанию сетевых соединений – копированию данных между сетевой подсистемой и использующими её приложениями.
Что нужно для включения NetDMA в Windows
Нужно оборудование, которое поддерживает NetDMA – в случае Windows это процессор с поддержкой технологий семейства Intel® I/O Acceleration Technology (I/OAT), которые, в свою очередь, входят в Intel Virtual Technology for Connectivity (VT-c). Включение NetDMA на оборудовании AMD эффекта, увы, не принесёт – не поверив, проверил на домашнем феноме 1055T – действительно, NetDMA не включается.
Как включить NetDMA в Windows
Локально:
netsh interface tcp set global netdma=enabled
Через Group Policy:
Откройте ключ HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\
, создайте в нём параметр EnableTCPA
вида 32bit DWORD
и поставьте его в единицу
Секретный уровень
Если Вы дочитали до этого места, то дальше не читайте – опасно. Но вообще, в том же ключе – HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\
– есть параметр MinPacketSizeToDma
, тоже типа 32bit DWORD
, который, что и логично, исходя из его названия, указывает минимальный размер пакета, для которого имеет смысл инициировать DMA-передачу. Параметр данный выставляется автоматически и его тюнинг имеет слабый практический смысл – т.е. в принципе можно представить ситуацию, когда система поставит слишком малый параметр, и будет слишком часто переключаться на DMA, а Вы это поправите вручную, но очень слабо могу представить себе КПД этой операции – выяснять сие путём достаточно кропотливых синтетических тестов, чтобы выиграть призрачные доли процента на единственной операции в единственной подсистеме, притом доли эти будут укладываться в погрешность измерений, весьма уныло.
Настраиваем использование DCA (прямого доступа к кэшу NetDMA) в Windows
По сути, Direct Cache Access – это дополнение к NetDMA, которое появляется только в NetDMA 2.0 и является опциональным (т.е. факт наличия NetDMA не говорит о том, что DCA будет работать). Задачи, которые решает DCA, просты – он “привязывает” конкретную сетевую сессию к определённому ядру процессора, и позволяет копировать данные не по трассе “сетевой интерфейс”->”оперативная память”->”кэш процессора”, а напрямую с сетевого интерфейса в кэш процессора. В ряде сценариев (быстрая сеть и много сессий и ядер CPU) выигрыш может быть ощутимым – судя по исследованиям IEEE за 2009й год, в случае загруженной на ~80% 10Gbit сети плюс 12ти ядер нагрузка CPU падает примерно на треть.
Технология работоспособна для гигабитных и более быстрых сетевых адаптеров. И, как понятно, имеет смысл только в случае, когда сетевой адаптер не умеет Chimney Offload (что, в общем-то, уже достаточно сложно – в случае наличия нагрузки, при которой DCA эффективен, обычно используются сетевые адаптеры, которые на аппаратном уровне умеют обрабатывать TCP).
Кстати, интересный момент – DCA есть в Windows Server 2008, но не работает в Vista. В NT 6.1 работает везде, включая Windows 7.
Как включить DCA в Windows
Предварительно – обязательно включить NetDMA.
Локально:
netsh interface tcp set global dca=enabled
Через Group Policy:
Откройте ключ HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\
, создайте в нём параметр EnableDCA
вида 32bit DWORD
и поставьте его в единицу
Настраиваем уведомления о перегрузке (ECN’ы) в Windows
Технология ECN в явном виде относится и к IP, а не только к TCP, но все равно про неё стоит тут написать.
Протокол IP изначально не особо любил технологии класса Quality of Service – QOS, поэтому в заголовке IPv4 выделен байт с целью “использовать для целей управления качеством”. Притом этот байт может содержать данные в разных форматах, и то, как его интерпретировать, решает конкретный хост. Используется два возможных формата данного байта – DSCP (он же DiffServ) и IP Precedence. По умолчанию этот байт (называющийся ToS – Type of Service) обрабатывается как IP Precedence и представляет собой копию данных канального уровня (в него копируются три бита от CoS – Class of Service, которые передаются в 802.3 кадре в составе 802.1p компонента заголовка 802.1Q).
Но нас будет интересовать ситуация, когда в заголовке IP-пакета – в поле ToS, разумеется – данные интерпретируются в формате DSCP. В этом случае на номер класса трафика отдаётся 6 бит (что даёт возможность сделать в организации 2^6 = 64 класса трафика и удобно управлять приоритетами), а оставшиеся 2 бита отдаются как раз на сигнализацию о “заторах”.
Говоря проще, если у промежуточного устройства буфер пакетов близок к перегрузке, то оно сигнализирует Вам, отправляя служебный пакет на IP отправителя, что “пакеты скоро будет некуда девать и придётся их выбрасывать, притормози”. Отправляет их, выставляя как раз специфические биты в поле ToS. Соответственно, включая поддержку данной технологии, Вы будете включать и возможность генерации подобных пакетов, и возможность анализа оных.
Простейший пример ситуации, в которой это поможет – на пути Вашего трафика стоит маршрутизатор, который в Вашу сторону смотрит интерфейсом со скоростью 1 Gbit, а дальше – интерфейсом со скоростью 100 Mbit. Если Вы будете отдавать ему трафик с максимально возможной скоростью, то его очередь пакетов, пытающихся “выйти” через интерфейс со скорость 100 Mbit, очень быстро переполнится, и если он не сможет Вам об этом сказать (ну или если Вы не включите со своей стороны возможность услышать эти сообщения от него), то ему придётся просто в определённый момент перестать принимать пакеты, сбрасывая их. А это приведёт к тому, что начнётся потеря данных, которые надо будет восстанавливать – а служебный трафик при восстановлении данных достаточно значителен. Т.е. гораздо проще передать чуть медленнее, чем потерять много пакетов и выяснить это на уровне TCP-подключения, после чего запрашивать их повторно, теряя время и тратя трафик.
Кстати, проверить поддержку ECN ближайшим маршрутизатором можно бесплатной утилитой Internet Connectivity Evaluation Tool.
Как включить ECN в Windows
netsh interface tcp set global ecn=enabled
Настраиваем TCP Timestamps (по RFC 1323) в Windows
TCP Timestamps – базовая низкоуровневая технология, которая позволяет стеку TCP измерять два важных параметра для соединения: RTTM (задержку канала) и PAWS (защита от дублирующихся TCP-сегментов). В случае, если TCP Timestamps не включены хотя бы с одной стороны подключения, оба механизма вычисления этих параметров отключены и система не может высчитать данные значения. Это приводит к тому, что становится невозможным быстро и эффективно менять размер окна TCP (без знания времени задержки на канале-то). Поэтому включать TCP Timestamps в случае работы с большими объёмами данных (например, обращение к быстрому серверу в локальной сети – типовой сценарий корпоративной LAN) необходимо – ведь иначе протокол TCP не сможет быстро “раскачать” окно передачи.
Как включить TCP Timestamps в Windows
netsh interface tcp set global timestamps=enabled
Побочные эффекты включения TCP Timestamps в Windows
Практически не наблюдаются. Рост локальной загрузки CPU отсутствует, т.к. алгоритм достаточно прост, рост объёмов служебного трафика – так же (RTTM высчитывается, исходя из “времени оборота” обычных сегментов TCP, а не каких-то специальных дополнительных).
Настраиваем автоматический подбор размера окна TCP (WSH) в Windows
Данный параметр достаточно прост. Эта настройка – Window Scale Heuristic – говорит о том, будете ли Вы сами выбирать логику поведения протокола TCP для выбора размеров окна, либо отдадите это на усмотрение операционной системе.
То есть при включенном алгоритме WSH вышеупомянутый тюнинг окна TCP – выбор между disabled/highlyrestricted/restricted/normal/experiemental
– будет делаться автоматически и Ваша настройка параметра autotuninglevel
будет просто игнорироваться. При просмотре будет появляться служебное окно с текстом "The above autotuninglevel setting is the result of Windows Scaling heuristics overriding any local/policy configuration on at least one profile"
.
Как включить Window Scaling Heuristic в Windows
netsh interface tcp set heuristics wsh=enabled
Настраиваем базовую безопасность TCP (параметр Memory Pressure Protection) в Windows
Данная функция предназначена для защиты от достаточно известной атаки – локального отказа в обслуживании, вызванного тем, что удалённый атакующий инициирует множество TCP-сессий к нашей системе, система выделяет под каждую сессию буферы и оперативная память, возможно, заканчивается (ну или просто забивается до степени, когда начинается свопинг и производительность ощутимо падает.
Параметр включен по умолчанию в Windows Server 2008 R2, поэтому обычно нет смысла его настраивать, но если что – Вы можете его включить вручную. Более того, Вы можете выбрать, на каких портах эту защиту включать, а на каких – нет. Это имеет смысл, если доступны снаружи лишь некоторые порты, а не все.
Как включить Memory Pressure Protection в Windows
netsh interface tcp set security mpp=enabled
Включение MPP для отдельного порта (например, у нас наружу опубликован веб-сервер)
netsh int tcp set security startport=80 numberofports=1 mpp=enabled
Выключение MPP для всех портов, кроме указанного (например, кроме LDAP)
netsh int tcp set security startport=1 numberofports=65535 mpp=disabled
netsh int tcp set security startport=389 numberofports=1 mpp=enabled
netsh int tcp set security startport=636 numberofports=1 mpp=enabled
Дополнительно
На самом деле, можно включать или выключать MPP для протоколов IP разных версий отдельно, а не глобально для всех. Для этого будут два ключа реестра с предсказуемыми названиями:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\EnableMPP
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters\EnableMPP
Параметр EnableMPP в каждом из случаев имеет тип 32bit DWORD и ставится либо в единицу, либо в нуль.
Вместо заключения
Данный краткий обзор части возможностей настроек сетевой подсистемы Windows имеет собой цель не побудить к немедленной правке всего вышеупомянутого, а показать то, что в данной ОС присутствует достаточно много инструментов тюнинга, хорошее знание которых может очень позитивно повлиять на работу системы. Только надо учитывать, что хорошее знание – это не “какая утилитка какие ключики правит”, а в первую очередь – отличное знание базовых сетевых технологий, которое, увы, сейчас в сообществе специалистов по Windows встречается крайне редко. Но я верю, что у Вас, при надлежащем системном подходе, всё будет хорошо.
UPDATE
Написал вторую часть статьи.
Введение:
Термины:
MTU — Maximum Transmission Unit.
Это максимальный размер пакета данных, который может быть передан за один физический кадр по протоколу TCP/IP. Дело в том, что данные от компьютера к компьютеру в Интернете идут не сплошным потоком, а этими самыми кадрами — пакетами строго определенного размера.
При этом слишком большой пакет в пути, скорее всего, будет фрагментироваться и заполняться «воздухом», «балластом», что негативно скажется на эффективности связи. Так, если ваш провайдер имеет установки MTU=576, а у вас в Windows задано MTU=1500, то каждый ваш пакет будет им разбиваться на три по 576 байт: 576+576+576=1728 — то есть, 228 байт балласта будут добавляться к каждому вашему пакету. Но даже если провайдер тоже имеет MTU=1500, то при связи с удаленным сервером вполне может попасться маршрутизатор с меньшим значением MTU и пакеты опять-таки будут фрагментироваться, замедляя передачу данных.
MSS — Maximum Segment Size — это еще один параметр протокола TCP, определяющий самый большой сегмент данных TCP, которые могут быть переданы за один раз. То есть, MTU = MSS + заголовки TCP/IP. Для заголовка тоже имеется общепринятый размер — это 40 байт (20 байт IP и 20 байт TCP), следовательно, обычно MSS = MTU — 40. Этот параметр не устанавливается, а вычисляется:)
RWIN — Receive Window — окно приема, размер буфера, в котором накапливается содержимое области данных (MSS) нескольких полученных пакетов, прежде чем передается дальше, например, в браузер. При недостаточном размере этого буфера иногда происходит его переполнение, и поступающие пакеты отвергаются и теряются. Размер RWIN обязательно должен быть кратен MSS и обычно для лучшей эффективности модемного соединения рекомендуется его устанавливать равным 4 — 8 MSS. Однако, чрезмерно большой размер буфера также нежелателен, особенно на плохих линиях — при потере всего одного пакета в случае сбоя на линии будет повторно затребован не один потерянный пакет, а все пакеты из этого буфера, что займет некоторое время.
TTL — Time To Live — время жизни — количество хопов, то есть промежуточных серверов, через которые может пройти ваш пакет в поисках своего места назначения. Каждый такой сервер добавляет единицу к специальному счетчику в заголовке вашего пакета, и когда счетчик достигает максимально разрешенного значения, пакет считается заблудившимся и прекращает свое существование. По умолчанию TTL равен 32, что сегодня явно недостаточно для разросшегося Интернета — нередки случаи, когда удаленный сервер находится более чем в 32 переходах, поэтому TTL следует увеличить как минимум до 64.
——————————————————
Таким образом, логично считать, что большие пакеты в итоге все-таки предпочтительнее, и если ваш провайдер настроил свои серверы и маршрутизаторы на большие пакеты, то надо стремиться использовать это на всю катушку.
Итак, надо определить MTU провайдера (оператора). Определяем вручную: Только сначала надо установить MTU равным 1500б. это можно сделать и вручную в реестре, но лучше (чтобы и остальные параметры также править) использовать спец. проги, например
MTUspeed.
После этого мерием MTU прова.
В командной строке:
PING -f -l 1500 ххх.ххх.ххх.ххх, где «ххх.ххх.ххх.ххх» — IP-адрес тестируемого сервера, а «-I» — это буква L, а не единица. -l это размер буфера отправки(1500). -f это флаг запрещающий фрагментацию пакета.
Например, у меня получилось так:
PING -f -l 1472 mail.ru
Обмен пакетами с mail.ru [194.67.57.51] по 1472 байт:
Ответ от 194.67.57.51: число байт=1472 время=3617мс TTL=249
Ответ от 194.67.57.51: число байт=1472 время=3315мс TTL=249
Ответ от 194.67.57.51: число байт=1472 время=3271мс TTL=249
PING -f -l 1473 mail.ru
Обмен пакетами с mail.ru [194.67.57.51] по 1473 байт:
Требуется фрагментация пакета, но установлен запрещающий флаг.
Требуется фрагментация пакета, но установлен запрещающий флаг.
Требуется фрагментация пакета, но установлен запрещающий флаг.
Но это не значит, что MTU прова 1472б. Ping прибавляет к нашим данным заголовок — IP (20 Байтов) и ICMP (8 Байтов). Итак, MTU прова 1500б.
Несмотря на то, что программ, предназначенных якобы для двукратного улучшения связи одним кликом мыши — пруд пруди. И тут, как вы можете сами понять, совсем не факт, что MTU=576, которое везде рекомендуется западными программистами и экспертами, будет оптимальным и для нас в России. Наши провайдеры сплошь и рядом выбирают для себя MTU=1500, а при «пинговании» удаленных серверов мы обнаруживаем, что пакет такого размера, вопреки всем утверждениям, проходит чаще всего нефрагментированным.
Для остальных параметров не считаю нужным ничего писать:) потому что они не так спорны как MTU.
Наличие локальной сети в офисах считается нормой еще со времен первых версий Windows. Внутри же квартир и частных домов сетевые технологии стали распространяться с появлением скоростного интернета. Теперь «по умолчанию» устанавливается роутер с несколькими выходами, а многие пользователи имеют по 2-3 компьютера, принтеры и другие многофункциональные устройства.
Возможности домашней локальной сети в Windows 10
Локальная сеть поддерживается во всех версиях Windows, включая последние релизы «десятки». Различие касается лишь некоторых ограничений, допускаемых для «домашних» версий, но и в них есть решения для подключения сетевого оборудования (по проводам или через Wi-Fi). К домашней сети обычно подключаются как компьютеры, так и смартфоны или планшеты.
Возможности локальной сети:
- Общий доступ со всех устройств к расшаренной папке или внешнему накопителю.
- Совместное использование функционала принтера, сканера, МФУ.
- Подключение к мультимедийным устройствам, настройка сетевых игр.
Как именно использовать возможности сети, зависит от пользователя. Одни закидывают на внешний диск фильмы и смотрят их на телевизоре с Wi-Fi, другие создают резервные копии корпоративных данных или печатают фотографии со смартфонов. Главное – первоначально настроить сеть и добиться видимости нужного оборудования со всех подключенных устройств.
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Подписаться
Выбор статического IP-адреса
Первый шаг к настройке сети – это установка постоянного (статического) IP-адреса для каждого компьютера, который будет подключен к ней. В принципе, большая часть приложений и приборов работает с динамическим адресом, но гарантии стабильного коннекта не будет. Тем более выбор «статики» занимает всего пару минут.
Последовательность действий:
- Через встроенный поиск найти и открыть утилиту «Параметры».
- Выбрать пункт «Сеть и Интернет», зайти в раздел Ethernet или Wi-Fi.
- Щелкнуть на названии текущего сетевого подключения.
- Прокрутить окно вниз до раздела «Параметры IP».
- Изменить значение с «Автоматически (DHCP)» на вручную.
- Включить режим IPv4 или IPv6 в зависимости от задачи.
- Внести IP-адрес, длину префикса подсети и шлюз.
Здесь же возможно указание DNS-сервера (предпочтительного и дополнительного). После нажатия кнопки «Сохранить» рекомендуется перезагрузить компьютер. В качестве IP-адреса выбирается одно значение из диапазона 192.168.0.1-192.168.255.255. Главное, чтобы каждое устройство приобрело уникальный адрес (начиная с роутера, который часто «висит» на 192.168.0.1 или 192.168.1.1).
В поле «Длина префикса подсети» нужно ввести значение 24, а в качестве DNS-адреса служебного хоста или общедоступного сервера от Google – 8.8.8.8 и 8.8.8.4. То же указывается при выборе IPv6, хотя «устаревший» протокол IPv4 остается практически стандартом де-факто. Его гарантированно поддерживает оборудование, приобретенное даже лет 5-10 назад.
Настройка локальной сети Windows 10
Второй шаг, после назначения компьютерам уникального IP, заключается в назначении одной и той же «рабочей группы», а также индивидуального имени, по которому будет проще определять, к какому именно ПК осуществляется доступ. На всех релизах Windows используется следующая команда – sysdm.cpl.
В открывшемся окне нужно нажать кнопку «Изменить» и внести выбранные наименования, а после подтвердить их кликом «ОК» в обеих вкладках. После перезагрузки техника гарантированно войдет в общую рабочую группу и сможет обмениваться файлами, подключаться к сетевым устройствам и использовать их функционал.
Общий доступ к папкам
Пользователь вправе открыть доступ ко всем накопителям, подключенным к компьютеру, но это небезопасно. Оптимально предоставлять общий доступ только к специально созданному каталогу, в котором и хранятся общедоступные файлы. Это особенно важно, если к локальной сети получают доступ «посторонние» – гости, соседи и пр.
Последовательность действий:
- Открыть меню кликом правой кнопкой мышки по «Пуску».
- Выбрать пункт «Сетевые подключения».
- Кликнуть раздел «Центр управления сетями и общим доступом».
- Перейти в подраздел «Изменить дополнительные параметры общего доступа».
- Включить сетевое обнаружение и общий доступ к файлам и принтерам.
- Перейти в раздел «Все сети» и отключить парольную защиту.
Остается нажать на кнопку «Сохранить изменения» и перезагрузить компьютер. Теперь все доступные устройства будут видны в разделе «Сеть» Проводника. Но пока на них ресурсы не «расшарены»: при попытке обращения система выдаст ошибку, и воспользоваться сетевыми функциями не получится. Чтобы активировать тот же принтер, нужно настроить сетевой доступ отдельно для него.
Настройка сетевого принтера
Предварительно печатающее устройство подключается и настраивается на одном из локальных ПК. В идеале это компьютер, который в течение дня включен постоянно, потому что при выключении доступ к сетевому аппарату пропадет. Обращение к нему происходит по ранее заданному IP-адресу со статичным значением.
Последовательность действий:
- Запустить приложение «Принтеры и сканеры».
- Нажать на кнопку «Добавить принтер или сканер».
- Выбрать пункт «Необходимый принтер отсутствует в списке».
- Переключить режим определения в TCP/IP.
- Перейти в следующее окно и внести нужный IP-адрес.
Остается нажать на кнопку «Далее» и дождаться сообщения Windows о завершении процедуры поиска и подключения. Теперь можно распечатать тестовую страницу, чтобы убедиться в качестве работы и соответствии желаемых настроек. Если система не обнаружила принтер автоматически, будет предложен список поддерживаемых моделей для ручного соединения.
Как принудительно отключить сетевое подключение
На практике иногда возникают ситуации, когда приходится экстренно прерывать соединение через локальную сеть. Например, когда соседи начали пользоваться общим диском или принтер «вдруг» начал самопроизвольно печатать. Такое часто происходит в многоквартирных домах, где мощности Wi-Fi роутера часто достаточно для коннекта даже «через этаж».
Варианты:
- Отключить сетевой кабель или питание роутера.
- Произвести «обратную» настройку с отключением доступа.
- Включить парольную защиту для критически важных ресурсов.
Также есть вариант ручного редактирования системного реестра. Это позволит увидеть перечень всех ранее подключенных устройств и вручную удалить ресурсы, к которым хочется заблокировать внешний доступ. Нужно запустить редактор реестра и найти ветку:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Profiles
Типовые проблемы с сетевым подключением
Большая часть неполадок, связанным с сетью, разрешается путем перезагрузки активных устройств (роутера, компьютера, принтера). Но иногда пользователю приходится сталкиваться с проблемами после обновления Windows, подключения нового оборудования в качестве замены сломанного. Наиболее универсальное решение неполадок заключается в полном сбросе настроек.
Последовательность действий:
- Запустить приложение «Параметры».
- Зайти во вкладку «Сеть и Интернет».
- Выбрать пункт «Состояние».
- Прокрутить до «Сброс сети».
- Кликнуть по пункту.
- Подтвердить задачу.
Второй «универсальный» вариант, не требующий квалификации в сетевых настройках, состоит в использовании встроенного в Windows инструмента «Диагностики неполадок». Открывается они при клике правой кнопкой мыши на сетевом подключении. В открывшемся окне выбирается один из адаптеров, по вине которого, как считает пользователь, возникли неполадки.
Система сканирует сетевые устройства и пытается обнаружить техническую проблему, выявить ее причину. По завершении процедуры отображается резюме с рекомендациями или заключение, что никаких неполадок не обнаружено. Если предложенные методики не помогли разрешить ситуацию, придется погружаться в детали. Например, разбираться, как откатить драйвер сетевого адаптера.
Выполняется это в «Диспетчере устройств» – нужно выбрать устройство, кликнуть по нему правой кнопкой мышки и далее по пункту «Свойства». В открывшейся вкладке следует переключиться на блок «Драйвер» и нажать на кнопку «Откатить». Она активна только при наличии в архиве системы старой версии драйвера. Если это так, стоит попробовать кликнуть на «Обновить драйвер».
При отсутствии эффекта от отката/обновления стоит принудительно дезактивировать отключение модуля для экономии энергии. Такой режим часто устанавливается «по умолчанию» при инсталляции или обновлении операционной системы. В большинстве случаев он никак не влияет на стабильность сети, но нельзя исключать вероятность несовместимости с конкретной моделью адаптера.
Выполняется отключение также через «Диспетчер устройств», только во вкладке «Управление электропитанием». Там достаточно снять галочку с «Разрешить отключение этого устройства для экономии энергии» и перезагрузить компьютер. Изменения остальных настроек (вроде включения стандарта FIPS или ручного редактирования системного реестра) лучше избегать.
Настройка локальной сети в офисе Windows 10 специалистами ГК «Интегрус» – гарантия стабильной работы оборудования, быстрый обмен данными и доступ к корпоративным ресурсам. Создание локальных систем основано на опыте, знании технических, технологических нормативов, требованиях клиента. Используем собственные наработки для эффективного, быстрого решения поставленных клиентом задач.
Содержание
- 1 Профессиональная настройка проводной или беспроводной офисной сети Windows
- 2 Выбор, настройка сервера
- 3 Преимущества настройки сети в офисе Windows 10 специалистами ГК «Интегрус»
Профессиональная настройка проводной или беспроводной офисной сети Windows
Настройка офисной сети Windows 10 проводной и беспроводной IT-инфраструктуры отличается. Правильная настройка беспроводной сети Windows 10 избавит от необходимости устанавливать связь с системой при каждом включении компьютера. Это делается путем ввода блока команд.
Кроме знания того, как настроить сеть в офисе между компьютерами Win 10 нужно обеспечить доступ к папкам, дискам. Специалисты компании «Интегрус» могут настроить доступ к файлам локальной сети в зависимости от распределения ролей. Разделение прав доступа дает многочисленные преимущества. Так, оптимизируются организационные, производственные процессы в рамках локальной сети и повышается защищенность корпоративной информации. Снижается влияние человеческого фактора на работу локальной сети, риск непреднамеренного удаления информации. У компании появляется возможность фильтрации трафика и упрощается контроль действий персонала в локальной сети.
Создадим каталог для общедоступных папок, файлов. Это повысит защищенность корпоративной информации. Такое решение актуально, если доступ к локальной сети в компании либо организации имеют третьи лица (партнеры, поставщики).
Пошаговая инструкция о том, как организовать сеть в офисе Windows 10, не заменит практический опыт. Самостоятельная настройка локальной сети приводит к проблемам, которые осложняют работу офиса. Специалисты нашей компании устраняют следующие ошибки и проблемы:
- Виндовс выдает сообщение о невозможности подключения устройства;
- отключаем локальные сети, которые не используются. Это делается через реестр. Если неправильно внести в него изменения, то работа офисного компьютера будет нарушена;
- ошибки присвоения IP-адресов компьютерам;
- система перестала работать после переустановки Windows. Проблема решается полным сбросом настроек системы или с помощью штатного инструмента Windows;
- неправильное подключение кабелей в проводной локальной сети.
Динамические айпи компьютеров – удобное решение, но оно не гарантирует стабильной связи в локальной сети. Правильно настроим статические IP-адреса для локальной сети в офисе. Это обеспечит стабильную работу всех устройств, исключит зависание роутеров.
Выбор, настройка сервера
Настройка сети малого офиса на Windows 2008 может выполняться на базе одного мощного компьютера. Для этого через «Свойства системы» задается имя сервера. Чтобы не путаться, его часто так и называют Server. Затем настройке подлежат маска сети, шлюз, IP, DNS-сервер. Настройки сети проверяются вводом специальной команды. При этом малый бизнес должен учитывать возможность расширения.
По мере роста нагрузки на локальную сеть необходимость быстрой обработки большого объема данных возрастает. Требуется настроить виртуальный или физический сервер для развертывания систем CRM, ERP для комплексного управления ресурсами и производственными процессами. Подключение функциональных сетевых ресурсов обеспечивает размещение сервисов для планирования, многопользовательских приложений, принт-сервисов.
Правильный выбор сервера, профессиональная настройка офисной сети Windows Server 2012 позволяет эффективно решать различные задачи, включая:
- создание приложений, программного софта;
- организация массовой рассылки электронных писем;
- хранение большого массива информации;
- создание единого рабочего пространства в офисе и за его пределами;
- выполнение вычислительных операций.
Windows Server 2008 или 2012 устанавливается на физическое оборудование или на арендованные виртуальные мощности. Для установки физического оборудования при организации локальной сети на базе ОС Windows 10 рекомендуется выделить отдельное помещение. Но это не всегда удобно. Альтернативой станет аренда сервера в дата-центре для развертывания локальной сети компании.
Подберем сервер в соответствии с требованиями клиента, установим ОС Windows 10, выполним подключение, тонкую настройку каждого устройства, обеспечим доступ к папкам, файлам, другим сетевым ресурсам, создадим рабочие группы. Настроим защиту от внешних, внутренних угроз, проверим работоспособность локальной сети.
Преимущества настройки сети в офисе Windows 10 специалистами ГК «Интегрус»
Настройка сети в офисе Windows 7 или Windows 10 специалистами компании ГК «Интегрус» гарантирует следующие преимущества:
- быстрый доступ к сети с каждого рабочего места;
- возможность работать удаленно с домашних ПК, смартфонов, планшетов;
- быстрый доступ к файлам, папкам в рамках должностных обязанностей;
- опыт позволяет организовывать комбинированные сети. Они сочетают различные топологии, сохраняют все преимущества одноранговых систем;
- возможность быстро подключать новые рабочие места. Это касается стационарных ПК, смартфонов, планшетов, ноутбуков. Заложим внушительный ресурс для расширения;
- настройка локальной сети в офисе Windows 7 или Windows 10 позволяет быстро разворачивать сетевые конфигурации 1C;
- надежная защита подключения к сети, передачи данных, файлов, папок;
- возможность быстрого переноса локальной сети в другой офис.
Настройка офисной сети Windows 7 специалистами ГК «Интегрус» обеспечивает простое администрирование рабочих групп. Помимо настройки корпоративной сети, выполняем профессиональное обслуживание устройств, систем. У нас доступная цена создания и настройки на базе ОС Windows 10.