2015-02-06 2 views
0

В настоящее время в Steam есть множество игр (настольный симулятор, SpeedRunners), который позволяет людям размещать свои собственные многопользовательские матчи/игры в Интернете без необходимости переадресации портов.Разрешить людям размещать собственный мультиплеер без переадресации портов?

Единственное, что я подумал о том, как они это делают, это просто один сервер, который обрабатывает все совпадения в виде отдельных потоков.

Но тогда я начинаю задумываться о том, чтобы получить бутылку с вырезом.

Я слышал, что эти игры просто позволяют TCP-протоколу пропускать через свой NAT, преодолевая необходимость переадресации портов.

Но как сказать, C++, используя winsock, это можно сделать? Или GameMaker: Studio? Или просто любая игра в целом? Как вы разрешаете людям играть без переадресации портов? Каков процесс?

Я вижу, что так много игр на Steam делают это сейчас, это не должно быть слишком сложно.

+0

* «Я вижу, что так много игр в Steam делают это в наши дни, это не должно быть слишком сложно». * Как подразумевается другое? – CoryKramer

ответ

0

Можно использовать UPnP для автоматической настройки маршрутизатора для переадресации портов. Там есть библиотека для этого в http://pupnp.sourceforge.net/

Альтернативный способ заключается в том, чтобы внешний сервер управлял всем трафиком, чтобы все подключались туда, избегая при этом проблем с nat.

+0

Действительно ли игры автоматически настраивают переадресацию портов на маршрутизаторах? Кто-нибудь знает о любых играх, которые делают это, потому что это действительно интересно. Кроме того, для вашего второго варианта не будет ли у внешнего сервера много полосы пропускания, чтобы разместить множество совпадений на одном сервере? –

+0

Также, когда игра настраивает переадресацию портов на вашем маршрутизаторе, постоянно ли она остается? Или это временно во время игры? –

+0

«Действительно ли игры автоматически настраивают переадресацию портов на маршрутизаторах?» - Да, в основном, когда вы принимаете игру. Skype, некоторые торрент-клиенты также являются примерами приложений, использующих эту технологию. – Vitor

Смежные вопросы