Не смотря на то, что Windows 10 с каждым обновлением становится ближе к играм и Microsoft работают над оптимизацией в этом направлении, некоторые элементы остаются неизменны и их нужно менять, а что-то надо подстраивать под себя. Для настройки нам понадобятся редактор реестра, командная строка и PowerShell
NetworkThrottlingIndex
Следует начать с этого важного параметра производительности сети, т.к. ещё со времён Windows Vista предпочтение отдаётся процессам мультимедиа, а на сеть выделяется 10 тактов за миллисекунду. Чтобы отключить это ограничение нужно в редакторе реестра пойти по пути
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile
и выставить NetworkThrottlingIndex равным FFFFFFFF (шестнадцатеричное)
MTU
Это тема потянет на отдельную статью, так что вот вам инструкция , но если вы подключены к 3G, 4G и т.д. или просто ваш провайдер экономит IP адреса и держит вас за NAT, то этот способ определения может не работать и лучше перепроверить через анализатор.
Стек TCP/IP
Причём тут TCP, если например большинство игр используют UDP? Ну во-первых мы говорим про TCP/IP, а это семейство протоколов, в который входит и UDP. Во-вторых при одновременной работе TCP и UDP первый может мешать работе второго.
Начнём с отключения функции объединения сегментов, которая может вызывать задержки (отключаем через PowerShell):
Set-NetOffloadGlobalSetting -ReceiveSegmentCoalescing Disabled
Отключаем автотюнинг и масштабирование окна TCP(могут быть причиной bufferbloat проверять здесь) :
Set-NetTCPSetting -SettingName InternetCustom -AutoTuningLevelLocal Disabled
Set-NetTCPSetting -SettingName InternetCustom -ForceWS Disabled
Уменьшаем кэш соседей (ставит тот что должен быть по документации):
Set-NetIPv4Protocol -RouteCacheLimitEntries 128
Чтобы отключить дополнительные твики TCP от майкрософта (RACK, TLC, увеличенный ICW ), нужно в командной строке выполнить:
netsh int tcp set supplemental template=compat