Показать сообщение отдельно
Старый 16.05.2010, 21:29   #14
Damp
Знающий
 
Регистрация: 12.07.2007
Сообщений: 297
Написано 50 полезных сообщений
(для 133 пользователей)
Ответ: Маршрутизация пакетов (UDP)

Можно посмотреть:
http://www.gamedev.ru/code/forum/?id=128784&page=17
там есть рабочий пример на блице соединения nat-nat (используется STUN). Примерно также работают скайп, хамачи и т.д.

Если коротко: клиент1 и клиент2 за натом, им нужно узнать свои внешние ip и порты (для чего есть публичные сервисы STUN) и передать их друг-другу доступным способом (аська, web или др.). Далее клиенты посылают первые "стартовые" пакеты друг-другу, которые не пройдут, но "познакомят" свои наты с нужными ip:port. После чего уже можно слать все что угодно.
Такой канал будет жить до ближайшей паузы 20-30 сек, после такой паузы нат может забрать порт (время таймаута устанавливает провайдер).

Связь удивительно стабильная выходит, ни одного пакета не пропало в тестах, даже на gprs.
(Offline)
 
Ответить с цитированием
Эти 4 пользователя(ей) сказали Спасибо Damp за это полезное сообщение:
BlackOut (19.05.2010), Egor Rezenov (21.05.2011), Tadeus (17.05.2010), ІГРОГРАЙКО (19.08.2010)