ILeora Posted January 27, 2015 Share Posted January 27, 2015 Сегодня мы запустили некий экспериментальный код, который работает над решением проблем, вызванных Строгим NAT'ом и над прочими проблемами маршрутизации; он всё ещё требует доработок, но наши предварительные тесты нас очень порадовали. Около 6% наших игроков обладают маршрутизаторами, обладающими Строгим NAT'ом; эти люди получают предупреждающее сообщение при входе в игру такого вида: Эта сетевая проблема, которая затрагивает все игры без исключений, в том числе и консольные; для Warframe необычно то, что мы действительно обнаружили эту проблему и предупредили вас о ней, так что вы сможете с ней справиться. К несчастью, люди, не сильно разбирающиеся в технической части, часто попадают под неверное впечатление о том, что что-то не так с Warframe и это нужно исправлять нам. Некоторые люди, скорее всего, даже не в состоянии исправить свой NAT, но вся прелесть обнаружения этой проблемы в том, что мы сможем корректно избежать большинства с этим связанных проблем. Видите ли, Строгий NAT похож на рецессивный (спящий) ген, который вызывает страшную болезнь - вы можете быть его носителем и он не будет проявлять никаких симптомов; проблемы начнут возникать когда вы попадаете в команду (или сами создадите сессию) к кому-то, кто также является носителем. Из-за того, что Warframe знает у кого Строгий NAT, всем нам нужно стараться избегать попадания таких людей в один отряд, зная, что это может вызвать проблемы с соединением. Всё работает хорошо, пока не происходит: Это происходит лишь в 0.36% случаев от всех приглашений (6% от 6%), но в масштабах такой игры как Warframe этот мизерный процент перерастает в большое количество сердитых людей, которые просто хотят поиграть вместе. Иногда люди оказываются за несколькими "слоями" NAT'а, который становится всё более распространённым вместе с тем, как мир постепенно уходит от IPv4 адресов (по иронии полный переход на IPv6 может привести к ухудшению ситуации, потому как гибрид v4 и v6 добавит ещё один слой NAT'а уже для провайдеров, что приведёт к тому, что вы не сможете использовать UPnP, NAT-PMP или же назначать порты в ручную). В таких случаях как этот, наш анализ сети оказывается обманутым и считает, что всё радужно и всюду единороги, но когда вы пытаетесь присоединиться к другу, то получаете это: Большинство людей, получая это сообщение, думают, что это ошибка в нашем сетевом коде и её нужно исправить; к сожалению, в этом случае мы оказываемся во власти Интернета; взгляните - RFC5128 - как и с NAT'ом, тут есть проблемы с сетью, которые мы просто не в состоянии исправить. Единственное решение заключается в использовании прокси-серверов: если сеть не позволяет P2P подключение, то наш новый код выступит и сработает в качестве посредника. Это увеличит время ожидания (иногда это называют "лагом", задержкой), но в большинстве случаев такие небольшие задержки куда предпочтительнее, чем отсутствие возможность поиграть с вашими друзьями вовсе. На прошлых выходных, с помощью нескольких добровольцев из разных стран, мы протестировали несколько наихудших сценариев; даже с самыми жёсткими лагами система продолжала работать. На самом деле, многие из игр, в которые я играл на тех выходных, использовали прокси-сервер и даже с учётом того, что это добавило не менее 80мс задержки к мой игре, я почти этого не замечал! Сегодня мы провели ещё немного "живых" тестов и после исправления нескольких багов, мы запустили эту функцию в общий доступ и ждали; к нашему облегчению мы увидели, что сервер начал принимать всё больше и больше прокси запросов пока не достиг стабильной нагрузки, которая и близко не стоит с возможностями сервера. Все системы точно были в норме! К слову, это должно решить не только множество Строгих NAT'ов, но и некоторые другие проблемы, которые приводят к провалам присоединения игроков - эта отказоустойчивая система может быть нами использована как крайняя мера в тех случаях, когда всё идёт под откос. На данный момент всё работает так хорошо, что мы собираемся оставить экспериментальный код в работе на некоторое обозримое будущее; нам ещё есть над чем работать, но всё же: следующим шагом станет создание системы распределения нагрузки, таким образом мы сможем создать прокси-сервера в различных местах по всему миру, чтобы минимизировать перегрузки при их использовании (скорость света - суровая госпожа). Мы также хотим оставить предупреждения об анализе сети при входе в игру; конечно, мы можем справиться с большим количеством подобных проблем, но вместе с тем в ваших интересах исправить эту проблему самостоятельно, потому что это даст вам лучший онлайн опыт из возможного. Большинство из вас буду просто рады видеть, что мы трудимся над Строгим NAT'ом даже если это не имеет к вам прямого отношения, а для тех, кто просто хочет TL;DR: Мы рассмотрели решение проблемы со Строгим NAT'ом с помощью прокси-серверов, чтобы те, кто страдает от этого, смогли поиграть в Warframe с другими! - [DE]Glen Оригинал: https://forums.warframe.com/index.php?/topic/391742-strict-nat-improvements-and-testing/ Перевод: She0g0rath Link to comment Share on other sites More sharing options...
Del00 Posted January 28, 2015 Share Posted January 28, 2015 Молодцы! С этой проблемой борюсь как начал играть. Начал осенью 2013 и хоть был сабж про "строгий НАТ", но на деле не мешало соединяться с друзьями. Проблемы начались ближе к зиме когда надпись про НАТ говорила, что нормально подключиться я смогу 50на50 и со многими друзьями не мог законектица с кем до этого не было трабл. Модем настроен как надо, тесты на порты проводились всё открыто. Все игры по инету нормально и только у Варфрейма "строгий НАТ"... Выручал сторонний софт VPN клиента! Link to comment Share on other sites More sharing options...
Good.Devil Posted January 28, 2015 Share Posted January 28, 2015 МолодцыРазвивайте доработки дальше! Link to comment Share on other sites More sharing options...
Coldmood_Viney Posted January 28, 2015 Share Posted January 28, 2015 Круто, только ДЕ так пишут красиво, проблемы больше нет, однако у меня чуть больше 2х лет не было проблем со строгим натом и соединением/подключением... И последние недели я не могу подключиться или создать сессию, ровно после того дня, как классные ДЕ что-то там где-то там сделали... Link to comment Share on other sites More sharing options...
-10no-RedL1ne Posted January 28, 2015 Share Posted January 28, 2015 Бедные ДЕ не могут охватить весь спектр сетевого хулиганства/жадности местных провайдеров. Да и контролировать сетевые проблемы p2p игр гораздо сложнее. Link to comment Share on other sites More sharing options...
Ikotaa Posted January 28, 2015 Share Posted January 28, 2015 (edited) Эта сетевая проблема, которая затрагивает все игры без исключений, в том числе и консольные; Это откровенная неправда (оставим на совести Глена или тех, кто ввел его в заблуждение). Такая проблема только в 1% онлайн играх, в тех, где части из клиентов приходится быть хостами, т.е. должны иметь входящий открытый доступ. В 99% онлайн играх клиенты только лишь сами подключаются к игровым серверам и им не нужен входящий открытый доступ, у них никогда не возникнет проблемы, описанной в данном топике, не важно, за NATом они или нет. Остальное разбирать не буду, влом. А вообще, описание получилось очень даже литературное и не важно, что статья квазинаучная. Особенно улыбнуло сравнение с рецессивным геном :D //edited. Edited January 29, 2015 by Ikotaa Link to comment Share on other sites More sharing options...
-10no-RedL1ne Posted January 29, 2015 Share Posted January 29, 2015 (edited) Ну почему же сразу так. Услуга называется "доступ в интернет", а не "размещение клиентского оборудования в адресном пространстве сети Интернет". Игра словами, это относится к той же категории. А еще любят всем давать "до 100 мбит"... Edited January 30, 2015 by -10no-RedL1ne Link to comment Share on other sites More sharing options...
-10no-RedL1ne Posted January 30, 2015 Share Posted January 30, 2015 В обоих случаях догадки оказались неверными, но не суть. Далеко не во всех договорах детально указаны все подробности. Составлялись они не глупыми людьми для обычных потребителей. В некоторых случаях видел варианты, где в обязанности провайдера вообще не входит предоставление чего либо. Предыдущий месседж пытался донести, что если для одних операторов есть цель донести услугу, которой будут довольны клиенты (в разумных рамках) и не будут прикрываться бумажками, для других же достаточно дать "доступ". Учитывая как все плохо у нас с монополиями от местных до региональных, вторая группа только разрастается. P.S. Юриспруденция и есть ничто иное как игра слов. Обсуждение в очередной раз скатилась в оффтоп( Link to comment Share on other sites More sharing options...
Ikotaa Posted January 30, 2015 Share Posted January 30, 2015 (edited) Юриспруденция и есть ничто иное как игра слов. Обсуждение в очередной раз скатилась в оффтоп( Не не не, уважаемый, юриспруденция это правоведение, а игра слов это уже ближе к демагогии и софистике. По моему, обсуждение как раз очень плотно идет в тему. Услуга называется "доступ в интернет", а не "размещение клиентского оборудования в адресном пространстве сети Интернет". Это самое точное и емкое, как только можно ответить. Действительно, провайдер обычно (по договору) не обязан предоставлять клиенту открытый вход, только лишь доступ до серверов со стороны клиента, но не наоборот. Поэтому клиент может сидеть под любым "уплотнением" и даже не догадываться. Edited January 30, 2015 by Ikotaa Link to comment Share on other sites More sharing options...
Recommended Posts