ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Как же работаю сетевые игры?
  #1  
Старый 30.03.2010, 16:54
НTL
Постоянный
Регистрация: 26.01.2008
Сообщений: 796
Провел на форуме:
5209663

Репутация: 357


Отправить сообщение для НTL с помощью ICQ
По умолчанию Как же работаю сетевые игры?

Недавно задумался как работают игры на UDP протоколе, если UDP не отвечает на пакеты и не устанавливает соединение...
Так же для использование UDP в приложение должна быть серверная часть (как на стороне сервера так и клиента), но компы клиентов могут быть под NAT'ом

Так как работают игры??? или я может быть не так много знаю о UDP
 
Ответить с цитированием

  #2  
Старый 30.03.2010, 18:31
JnK
Участник форума
Регистрация: 30.03.2007
Сообщений: 121
Провел на форуме:
188563

Репутация: 52
По умолчанию

Немного по твоей теме.
http://wiki.minegoboom.com/ (ENG)

Последний раз редактировалось JnK; 30.03.2010 в 18:45..
 
Ответить с цитированием

  #3  
Старый 30.03.2010, 18:42
НTL
Постоянный
Регистрация: 26.01.2008
Сообщений: 796
Провел на форуме:
5209663

Репутация: 357


Отправить сообщение для НTL с помощью ICQ
По умолчанию

То есть игры работает не на чистом UDP, так?
 
Ответить с цитированием

  #4  
Старый 30.03.2010, 18:43
gold-goblin
Познавший АНТИЧАТ
Регистрация: 26.03.2007
Сообщений: 1,095
Провел на форуме:
5265510

Репутация: 455


По умолчанию

Конечно плохое сравнение но все же. Работа игр схожа с асинхронными сокетами..
 
Ответить с цитированием

  #5  
Старый 30.03.2010, 18:57
JnK
Участник форума
Регистрация: 30.03.2007
Сообщений: 121
Провел на форуме:
188563

Репутация: 52
По умолчанию

Если слать UDP пакеты, через нат (от клиента) сервер их получать не будет.
UDP можно использовать только как объявление себя сервером (но всеравно бывают случаи, что не доходят пакеты), остальная часть игры используется в частности TCP протокол.

Вот еще ссылка по этой теме:
UDP протокол для Интернета? (проблемы NAT)

Последний раз редактировалось JnK; 30.03.2010 в 19:07..
 
Ответить с цитированием

  #6  
Старый 30.03.2010, 19:51
Retimiled
Banned
Регистрация: 24.12.2009
Сообщений: 141
Провел на форуме:
487460

Репутация: 45
По умолчанию

НЕ ПАРЬТЕСЬ NAT предназначен как для TCP так и для UDP

они ничем не отличаются .... все так же как с TCP вы прописываете правила NAT SUA и все работает....

для различных типов роутеров может носить названия Port forwarding , Virtual servers итд

вы говорить роутеру что все входящие на данный порт пересылать на следующий внутренний IP!

Другое дело что для UDP нужно настраивать NAT и для клиента(если клиент за NAT) а не только для сервера!
 
Ответить с цитированием

  #7  
Старый 30.03.2010, 20:22
НTL
Постоянный
Регистрация: 26.01.2008
Сообщений: 796
Провел на форуме:
5209663

Репутация: 357


Отправить сообщение для НTL с помощью ICQ
По умолчанию

Цитата:
остальная часть игры используется в частности TCP протокол.
К примеру игра CS реализована полностью на UDP, как же клиенты подключаются и обмениваются информацией в 2 стороны???
 
Ответить с цитированием

  #8  
Старый 30.03.2010, 21:49
slesh
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме:
3288241

Репутация: 3349


Отправить сообщение для slesh с помощью ICQ
По умолчанию

а что тут сложного? Когда кол-во передаваемых данных не большое то всё нормально пашет. Другое дело последовательность пакетов может быть нарушена.
если в TCP за последовательность отвечает драйвер TCP протокола, то тут уже придется тебе самому чтото придумывать.
NAT и UDP спокойно работают вместе. банальный пример - DNS протокол. Он спокойно работает в обе стороны. Фишка в том, что когда ты посылаешь на сервак UDP пакет.
То NAT сервер запоминает адрес и порт отправителя, далее изменяет адрес отправителя и посылает серваку жтот запрос. сервак отвечат. Далее NAT проверят порт кому предназначается пакет, затем по нему определяет кому в сети он предназначался. Система хоть и ненадежная но всёже.
Для игр всё просто. тут.
 
Ответить с цитированием

  #9  
Старый 31.03.2010, 09:52
НTL
Постоянный
Регистрация: 26.01.2008
Сообщений: 796
Провел на форуме:
5209663

Репутация: 357


Отправить сообщение для НTL с помощью ICQ
По умолчанию

slesh, а если за NATом 2 компа, и для сервера их IP будут одинаковы, сервер отправит пакет на этот IP то кому придет этот пакет?
 
Ответить с цитированием

  #10  
Старый 31.03.2010, 11:19
slesh
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме:
3288241

Репутация: 3349


Отправить сообщение для slesh с помощью ICQ
По умолчанию

ну я же говорю - тут по соответствию портов всё идет.
там идет связь исходящего запроса со клиентскими данными.
Образно говоря типа так:
1) Послал клиент запрос на сервак. Данные отправились с IP1:P1
2) Послал другой клиент запрос на сервак. Данные отправились с IP2:P2
3) эти пакеты дошли до NAT сервера. он сделал свой запрос на указанный сервер. Сделав соответствие IP:PORT клиента и порт запроса для сервера.
Когда сервак отвечает, то NAT смотрит к какому его порту было воответствие. После чего пересылает данный пакет нужному клиенту.
Чтобы это всё пахало нормально, клиент должен сам инициализировать первый исходящий пакет для того чтобы NAT смог связывать их.
Мож технически както по другому это устроена но алгоритм примерно такой.
Для TCP - там еще легче. Он просто тупо в запросе поменяет адрес исходящий. А в ответе просто сверяет со своей таблицей соответствия
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Большой архив статей по раскрутке и оптимизации сайтов _-Ramos-_ Статьи 12 13.06.2010 23:56
Халявный интернет или как спрятаться надежнее чем VPN или SSH с цепочкой соксов. kodzero Статьи 16 16.11.2009 20:23
Социальная инженерия. Профессиональное программирование. Последовательный взлом dinar_007 Болталка 15 23.12.2008 12:30
FAQ по выделенным серверам (Dedicated Servers) byte57 Чужие Статьи 4 16.11.2006 22:03



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ