Низкоуровневое взаимодействие по сети.

Вопросы использования сторонних (не входящих в состав FPC и Lazarus) утилит и библиотек.

Модератор: Модераторы

Низкоуровневое взаимодействие по сети.

Сообщение Дож » 03.04.2009 18:37:03

Интересует какая-нибудь библиотека для сетевого взаимодействия с возможностями:
TCP/UDP
NAT или UPnP, ну или вообще возможность создания peer-to-peer соединения
работа под Win32, прочие операционки приветствуются

Можно даже не библиотеку, а просто исходники на паскале, в которых это есть.

Есть такое?
Аватара пользователя
Дож
энтузиаст
 
Сообщения: 899
Зарегистрирован: 12.10.2008 16:14:47

Re: Низкоуровневое взаимодействие по сети.

Сообщение Timid » 03.04.2009 22:10:57

Indy?
Curl?
ICS?
Synapse?

Sockets, в конце концов...
Timid
постоялец
 
Сообщения: 290
Зарегистрирован: 21.11.2007 21:33:15

Re: Низкоуровневое взаимодействие по сети.

Сообщение Дож » 03.04.2009 23:45:36

Curl вроде только по FTP и HTTP умеет?
ICS и Synapse вроде не умеют по UDP?

Indy посмотрю.

И Sockets заодно. Он точно умеет peer-to-peer'иться?
Аватара пользователя
Дож
энтузиаст
 
Сообщения: 899
Зарегистрирован: 12.10.2008 16:14:47

Re: Низкоуровневое взаимодействие по сети.

Сообщение alexs » 04.04.2009 00:01:08

Для совсем низко-уровневого - сокеты однозначно. Простенько и со вкусом :-)
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4060
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: Низкоуровневое взаимодействие по сети.

Сообщение Timid » 05.04.2009 12:03:04

2 Д,
Что значит "Пер-ту-периться"? Нужно знать адреса узлов. И открыть в файрволах соответствующие порты.

Лучший вариант - Synapse (самый стабильный)
Самый понятный - Indy (много оберточного кода написано, нужно написать код двух процедур)
Самый "управляемый" - Сокеты напрямую
Timid
постоялец
 
Сообщения: 290
Зарегистрирован: 21.11.2007 21:33:15

Re: Низкоуровневое взаимодействие по сети.

Сообщение Дож » 05.04.2009 13:22:51

Угу, именно умение открывать порты в файрволах и нужно :) другое дело, что самому мне пока что этого не получилось сделать.
Аватара пользователя
Дож
энтузиаст
 
Сообщения: 899
Зарегистрирован: 12.10.2008 16:14:47

Re: Низкоуровневое взаимодействие по сети.

Сообщение Logo » 05.04.2009 15:56:12

Дож писал(а):Угу, именно умение открывать порты в файрволах и нужно :) другое дело, что самому мне пока что этого не получилось сделать.

Будем надеяться, что и не получится.
Logo
постоялец
 
Сообщения: 464
Зарегистрирован: 20.08.2008 01:00:47

Re: Низкоуровневое взаимодействие по сети.

Сообщение Дож » 05.04.2009 15:59:10

Да ладно вам, я не вирусописец, а игродел :) И хочется, чтобы игра работала по сети...
Аватара пользователя
Дож
энтузиаст
 
Сообщения: 899
Зарегистрирован: 12.10.2008 16:14:47

Re: Низкоуровневое взаимодействие по сети.

Сообщение Timid » 06.04.2009 11:09:27

Тогда используй порт 80 или 443. Они открыты практически всегда.
Используй http-запросы CONNECT для эмуляции постоянного соединения.
Timid
постоялец
 
Сообщения: 290
Зарегистрирован: 21.11.2007 21:33:15

Re: Низкоуровневое взаимодействие по сети.

Сообщение Дож » 06.04.2009 14:57:25

Выглядит по-индусски, но я подумаю над этим.
Аватара пользователя
Дож
энтузиаст
 
Сообщения: 899
Зарегистрирован: 12.10.2008 16:14:47

Re: Низкоуровневое взаимодействие по сети.

Сообщение Timid » 07.04.2009 21:42:27

Хари... Кришна... тебе в помощь :)
Timid
постоялец
 
Сообщения: 290
Зарегистрирован: 21.11.2007 21:33:15

Re: Низкоуровневое взаимодействие по сети.

Сообщение Дож » 07.04.2009 22:36:05

По ходу я чушь сморозил :) мне нужно открытвать порт не столько в файерволле, сколько в роутере. Это уже звучит не так дико?


Ладно, приведу пример. У меня есть программа, написанная на сокетах, она работает по локалке, но не работает через интернет. Есть мнение, что это из-за роутера - пакеты не доходят до не имеющих собственных глобальных ip адресов компов.

А еще у меня есть uTorrent, который через инет работает. Чем же он круче?
Аватара пользователя
Дож
энтузиаст
 
Сообщения: 899
Зарегистрирован: 12.10.2008 16:14:47

Re: Низкоуровневое взаимодействие по сети.

Сообщение Timid » 09.04.2009 12:08:02

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

Попробуй начать с протокола.
Сделай сервер и назначь ему "внешний" Ip (если его дает провайдер). Затем подключись к нему из сети и снаружи. Потом смотри на трансляцию адресов и т.д.
Timid
постоялец
 
Сообщения: 290
Зарегистрирован: 21.11.2007 21:33:15


Вернуться в Сторонние средства

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5

Рейтинг@Mail.ru