Как связать два SIM300 через GPRS, если каждому из них мобильный оператор присваивает разный динамический адрес 10.10...? Требуется передавать небольшие файлы друг другу. В принципе можно положить файлы на общественный транзитный ftp-сервер и потихоньку забирать оттуда, но тогда придется сервер постоянно опрашивать, чтобы знать, пришел ли новый файл.
А как люди делают, чтобы связь была непрерывной или почти непрерывной? Насколько скорость передачи уменьшается при этом по сравнению с максимально возможной?
Существуют тарифы со статическм IP-адресом, существует Dynamic DNS. Кроме того, устройство, помещающее файл на FTP, может просто звонить получателю или отправлять SMS.
Аськой никогда что-ли не пользовались?
AlexandrY
Jul 12 2008, 18:59
Используют протокол PPTP и любой VPN сервер в инете.
Какие оператор дал IP адреса вообще не волнует.
Из-за PPTP канал сужается на считанные проценты.
Цитата(rsmsr @ Jul 7 2008, 18:56)

Как связать два SIM300 через GPRS, если каждому из них мобильный оператор присваивает разный динамический адрес 10.10...? Требуется передавать небольшие файлы друг другу. В принципе можно положить файлы на общественный транзитный ftp-сервер и потихоньку забирать оттуда, но тогда придется сервер постоянно опрашивать, чтобы знать, пришел ли новый файл.
А как люди делают, чтобы связь была непрерывной или почти непрерывной? Насколько скорость передачи уменьшается при этом по сравнению с максимально возможной?
относительно pptp не всё так гладко - кто-то из большой тройки режет pptp (вернее не проходит gre, возможно просто не настроена поддержка gre в nat).
надёжнее использовать vpn, основанные на udp (ну или tcp) - вероятность похождения через nat стандартных протоколов существенно выше.
AlexandrY
Jul 14 2008, 20:18
Мда, есть такая неприятная проблема.
Лучший выход это, конечно, держать свой движок.
Как идея использовать халявный движок типа такого
http://www.discountasp.net/signup/special/iis/ Там есть набор компонентов /n software IP*Works! Internet Toolkit NEW .NET Edition v8
Кто юзает Delphi хорошо знает, что на этом наборе можно любой кастомизированный сервак замутить за 5 мин.
Цитата(edo @ Jul 13 2008, 17:19)

относительно pptp не всё так гладко - кто-то из большой тройки режет pptp (вернее не проходит gre, возможно просто не настроена поддержка gre в nat).
надёжнее использовать vpn, основанные на udp (ну или tcp) - вероятность похождения через nat стандартных протоколов существенно выше.
Соединение двух мобильных устройств по каналу GPRS -каналу тема довольно интересная и актуальная... решил попробовать возможно ли это!
Взял два модема на основе SIM300D и SIM300C, запустил на них GPRS от двух разных операторов (Киевстар и МТС). Запустил на одно сервер и определил у обоих модулей ипишники... сделал запрос на установку модема с модемом-сервером... и вот чудо связь установлена... но тут же наблюдаются несколько багов модуль инициатор связи передает информацию только с режима cipccon=1 а модуль сервер только с cipccon=2 (как я понял конект по дате)... причем все сообщения выводятся мсте с командами и другими сообщениями - такая себе "каша"!
... далее оказалось что инициировать соединение можно только на тот модедем-сервер который имеет нормальный (не транслированый NAT) ипишник... в случае плохого ип - конект не устанавливается!
jorikdima
Oct 16 2008, 10:18
Цитата(edo @ Jul 13 2008, 17:49)

надёжнее использовать vpn, основанные на udp (ну или tcp) - вероятность похождения через nat стандартных протоколов существенно выше.
подскажите пример, плиз
slonenok
Oct 16 2008, 13:30
а можно соединить два модема по VPN если у них динамические IP?
или один из модемов должен иметь статический адрес?
Цитата(jorikdima @ Oct 16 2008, 14:18)

подскажите пример, плиз
из того, чем пользоваться приходилось - openvpn, ppp over ssh.
но это всё пожалуй слишком "тяжёлое" для встаиваемых приложений, тут скорее всего будет достаточно ppp over tcp соорудить или вообще что самодельное
Цитата(slonenok @ Oct 16 2008, 17:30)

а можно соединить два модема по VPN если у них динамические IP?
или один из модемов должен иметь статический адрес?
статический/динамический - не так важно, проблема динамического адреса решается публичными сервисами типа dyndns.
важно, чтобы хотя бы у одной стороны был белый ip, в общем случае с двумя серыми ip ничего не получится.
вы это имели в виду?
slonenok
Oct 20 2008, 06:51
Спасибо. Наверно да.
Как передать IPшник, я догадывался.
А вот што значит серый или белый, незнаю.
Насколько я знаю ICQ при передачи файлов, передает их напрямую.
А если будет белый с одной стороны а серый с другой, что передача файла не получится?
А как их отличить, какой серый а какой белый?
vladch
Apr 22 2009, 08:58
Поставленна задача огранизовать безпроводную передачу данных в системе точка-многоточка. На данный момент есть верхнее ПО которое устанавливается на ПК и он является инициатором связи. Система благополучно работает по RS-232, RS-485, еще одному хитрому интерфейсу типа RS232. Передаваемые посылки не больше 250 байт. Система должна развертываться сходу, без дополнительных напрягов(сервер, и т.д.). Для решения задачи использую модули SIM300D. Вижу как минимум 3 основных варианта решения задачи:
1. Связь по CSD.
Самый простой и надежный вариант. Дозвонились, законектились, передаем туда-сюда практически без доработок существующего протокола связи(нужно будет с задержками поигратся, и ввести команду для верхнего ПО, чтобы дольше ждало ответ абонента). Проверил скорость передачи реальную(файл 100кБайт за 108 секунд = 7650бит/с) - это нормально, или я чего-то напутал?
2. Связь по GPRS.
Модуль который подключен к ПК конфигурирую как сервер, запрашиваю IP(МТС Украина), потом передаю IP с помощью CSD абоненту, абонент с свою очередь подключается клиентом по этому IP. В принципе немного накручено и не очень быстро, но работает.
Начал проверять скорость передачи и у меня возникли вопросы. Немогу передать больше 1 килобайта информации. Пробовал тремя способами: - окончание передачи по ctrl Z; - передача по длинне сообщения; - передача по таймауту(at+cipats). Даже по таймауту у меня не получилось передать больше 1 килобайта. Вообще какая-то ерунда по этому таймауту получается. У кого как работает? Можно передать больше инфы за один раз чем у меня?
3.Связь по GPRS c ПК с постоянным IP.
Этот вариант еще не проверял, но у него должны быть преимущества(скорость передачи, все абоненты подключены к своим портам и всегда на связи, и т.д.)
Кто видит какие-то корявые моменты? Как у уважаемых форумчан со скоростью по CSD, с обьемом посылки и скоростью по gprs?
Использую внутренний стек TCP/IP и мк ATMEGA162.
Цитата(vladch @ Apr 22 2009, 11:58)

... Немогу передать больше 1 килобайта информации. Пробовал тремя способами: - окончание передачи по ctrl Z; - передача по длинне сообщения; - передача по таймауту(at+cipats). Даже по таймауту у меня не получилось передать больше 1 килобайта. Вообще какая-то ерунда по этому таймауту получается. У кого как работает? Можно передать больше инфы за один раз чем у меня?
У SIM300 размер внутреннего буфера на передачу чуть больше килобайта: раньше писали 1024 байта, сейчас пишут 1460 байт. Так что без управления потоком ничего не получится. Рекомендую аппаратный контроль, по RTS/CTS.
Правда, я сам его не использовал, длинных блоков передавать не приходилось. И еще, на форуме проскальзывали сообщения о проблемах с передачей больших объемов на скорости 115200.
Цитата
3.Связь по GPRS c ПК с постоянным IP.
Этот вариант еще не проверял, но у него должны быть преимущества(скорость передачи, все абоненты подключены к своим портам и всегда на связи, и т.д.)
Вариант хороший, только как же
"Система должна развертываться сходу, без дополнительных напрягов(сервер, и т.д.)"?
ПК с постоянным IP это и есть сервер
vladch
Apr 22 2009, 14:35
Цитата(Baser @ Apr 22 2009, 16:37)

У SIM300 размер внутреннего буфера на передачу чуть больше килобайта: раньше писали 1024 байта, сейчас пишут 1460 байт. Так что без управления потоком ничего не получится. Рекомендую аппаратный контроль, по RTS/CTS.
Правда, я сам его не использовал, длинных блоков передавать не приходилось. И еще, на форуме проскальзывали сообщения о проблемах с передачей больших объемов на скорости 115200.
Вариант хороший, только как же
"Система должна развертываться сходу, без дополнительных напрягов(сервер, и т.д.)"?
ПК с постоянным IP это и есть сервер

А Вы просто отправляете свою посылку в приемник уарта модуля? Хотя пока не будет заполнен внутренний буфер, ничего катострофического не случится. На сколько я себе представляю, если посылки меньше обьема буфера, должно проходить, хотя стремно.
Оно то так, но плюсы такой системы интересны. Но это будет следующим шагом, если варианты выше себя оправдают у потребителя.
CSD Вы пробовали? Как скорость?
Цитата(vladch @ Apr 22 2009, 17:35)

А Вы просто отправляете свою посылку в приемник уарта модуля? Хотя пока не будет заполнен внутренний буфер, ничего катострофического не случится. На сколько я себе представляю, если посылки меньше обьема буфера, должно проходить, хотя стремно.
Да, именно так. Хотя аппаратно все подключено для hardware flow control. Обычное дело - когда писал, оставил на потом, а теперь руки не доходят - оно и так работает
Конечно, это пока связь хорошая. Но посколько все остальные защитные механизмы на месте (контрольные суммы, подтверждения приема, повторные посылки при сбоях, контроль за работой модема и раздача "управляющих пендюлей"), то глобально все работает
Цитата
CSD Вы пробовали? Как скорость?
Не пробовал. Изначально ориентировались на GPRS и клиент-серверную архитектуру.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.