Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вопрос по работе GPRS в SIM508
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Сотовая связь и ее приложения
MaxMatveev
Знающие люди, подскажите механизм работы команд AT+CIPSTART/AT+CIPCLOSE для SIM508-го. Вопрос такой - он каждый раз при CIPSTART начинает новую GPRS сессию а при CIPCLOSE её заканчивает или один раз начав так и держит её открытой?
Если он сессию каждый раз обрывает - есть ли возможность её не обрывать?
На всяки случай, рабтаю так:
at+cdnscfg="xxx.xxx.xxx.xxx","yyy.yyy.yyy.yyy"
at+cdnsorip=1
at+cipcsgp=1,"internet"
потом когда надо что-то отправить
at+cipstart="tcp","xxx.yyy.zzz","pp"
at+cipsend=xx
at+cipclose

Вопрос встал из-за тарификации, а конкретно из-за округления объёма при завершении GPRS сессии.
alexQ
Цитата(MaxMatveev @ Jul 30 2007, 15:28) *
Знающие люди, подскажите механизм работы команд AT+CIPSTART/AT+CIPCLOSE для SIM508-го. Вопрос такой - он каждый раз при CIPSTART начинает новую GPRS сессию а при CIPCLOSE её заканчивает или один раз начав так и держит её открытой?
Если он сессию каждый раз обрывает - есть ли возможность её не обрывать?
На всяки случай, рабтаю так:
at+cdnscfg="xxx.xxx.xxx.xxx","yyy.yyy.yyy.yyy"
at+cdnsorip=1
at+cipcsgp=1,"internet"
потом когда надо что-то отправить
at+cipstart="tcp","xxx.yyy.zzz","pp"
at+cipsend=xx
at+cipclose

Вопрос встал из-за тарификации, а конкретно из-за округления объёма при завершении GPRS сессии.


команда at+cipstart одновременно активирует GPRS и открывает сокет (udp или tcp).
РАЗДЕЛЬНО поднять GPRS одной командой и открыть - закрыть сокет другой, как сделано в многосокетных реализациях TCP/IP, симкомы не умеют. это очень простой односокетный стэк и поэтому это попадалово на тарификацию wassat.gif
MaxMatveev
Цитата(alexQ @ Jul 30 2007, 16:40) *
команда at+cipstart одновременно активирует GPRS и открывает сокет (udp или tcp).
РАЗДЕЛЬНО поднять GPRS одной командой и открыть - закрыть сокет другой, как сделано в многосокетных реализациях TCP/IP, симкомы не умеют. это очень простой односокетный стэк и поэтому это попадалово на тарификацию :wassat:

Уважаемый alexQ! Я думаю тут все видели Ваши многочисленные посты в многочисленных конференциях суть которых сводится или к
а) SIMCOM - г**но а WAVECOMM - рулит
или к
б) лишь бы вставить своё слово, какое угодно, лишь бы было.
Думаете, стоит писать про вещи в которых не разбираетесь?
Путём переговоров с оператором связи выяснил что по комманде AT+CIPCLOSE GPRS сессия не обрывается.
Alechek
Все верно. Для прерывания GPRS сессии есть другие команды.
Уважаемый AlexQ никогда не читал доки от Симкома и тем более
SIM300_ATC_V1.06.pdf
Код
AT+CIPCLOSE -CLOSE TCP OR UDP CONNECTION
AT+CIPSHUT  -DEACTIVATE GPRS PDP CONTEXT
alexQ
Уважаемый,

с каким оператором вы общались? какие условия тарификации у ЭТОГО оператора?
и при чем тут тот или иной производитель?


Цитата(alexQ @ Jul 31 2007, 10:33) *
Уважаемый,

с каким оператором вы общались? какие условия тарификации у ЭТОГО оператора?
и при чем тут тот или иной производитель?


по поводу док и остального,
я в шоке.
ВЫ разницу понимаете между активированием контекста и активированием GPRS сессии????
просто в симкомах для простоты это сделано одной командой, про что я и написал.
MaxMatveev
Цитата(alexQ @ Jul 31 2007, 10:38) *
Уважаемый,

с каким оператором вы общались? какие условия тарификации у ЭТОГО оператора?
и при чем тут тот или иной производитель?
по поводу док и остального,
я в шоке.
ВЫ разницу понимаете между активированием контекста и активированием GPRS сессии????
просто в симкомах для простоты это сделано одной командой, про что я и написал.

Общался с МТСом. Суть общения состояла в следующем - оператор мне дал список когда были начаты и закончены ГПРС сессии за последние сутки.
Не знаю что понимаете под началом и окончанием сессии Вы - но я, ровно как и оператор связи, под началом сессии понимаю логин с последующим выделением ИП-адреса, под окончанием - логофф с освобождением указанного адреса.
Так вот, за указанные сутки сессия была начата 4 раза, закончена 3. А устройство выполняет последовательнось команд +CIPSTART/+CIPSEND/+CIPCLOSE 2 раза в минуту. Так что эти команды с завершением сессии никак не связаны, Вы неправы. С началом - да, CIPSTART при необходимости открывает сессию.
По поводу док я никакого шока не испытываю, хотя это первый мой опыт работы и с микроконтроллером и с GSM/GPRS модулем. Всё сделал по документации, вопросов/разночтений не возникло, всё сразу заработало. Видимо, шок возникает у тех кто читать плохо умеет, других вариантов я не вижу. Действительно, что кроме шока можно испытать открыв документ с неизвестными симовлами (буквами большей частью).
Если бы Вы не пытались быть в каждой дырке затычкой, Вы бы обратили внимание на то что в первом посте топика я попросил именно ЗНАЮЩИХ людей ответить, а не таких как Вы.
Robin
А зачем постоянно проделывать CIPSTART - CIPCLOSE ? Я единажды открыв сокет не закрываю его, просто перед отсылкой данных проверяю есть ли соединение и все, cipstart больше не дергаю
MaxMatveev
Цитата(Robin @ Jul 31 2007, 13:47) *
А зачем постоянно проделывать CIPSTART - CIPCLOSE ? Я единажды открыв сокет не закрываю его, просто перед отсылкой данных проверяю есть ли соединение и все, cipstart больше не дергаю

Сервер так написан. В рамках именно моей задачи так логичнее. А в общем - разницы особой нет. Не думаю что на открытие сокета какое-то ощутимое количество трафика уходит.
Alechek
Цитата(alexQ @ Jul 31 2007, 12:38) *
ВЫ разницу понимаете между активированием контекста и активированием GPRS сессии????
просто в симкомах для простоты это сделано одной командой, про что я и написал.

Я тоже в шоке! Не знаю, что понимаете вы под GPRS сессией, но по всей видимости я и операторы связи под ней понимают время от активации контекста, до его деактивации.
alexQ
На SGSN могут происходить четыре события от MS при активации-деактивации GPRS сервиса:
PDP attach
PDP activate
PDP deactivate
PDP deattach
и соответственно на MS также.

шок прошел?
Alechek
Не понял, что вы этим хотели сказать...
Код
AT+CGATT ATTACH/DETACH FROM GPRS SERVICE
AT+CGACT PDP CONTEXT ACTIVATE OR DEACTIVATE

и
Код
AT+CGCOUNT GPRS packet counters
indicates the state of the GPRS counters
1 – periodic. The <period> will then also be displayed
2 – on GPRS [b]context deactivation[/b]. <period> is N/A in this case


И для тех кто в танке, еще раз: IPCLOSE закрывает TCP соединение, а IPSHUT закрывает PDP (Packet Data Protocol) сессию

И для тех кто любит закрывать TCP соединения:
заголовок TCP имеет размер 6*DWORD = 24 байт
при установлении TCP канала по сети пролетает минимум 3 пакета (без данных). При закрытии - минимум 4. Итого 24*(3+4) = 168 байт не считая потерь на IP заголовки
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.