реклама на сайте
подробности

 
 
> TCP соединение через SIM900, производительность передачи данных
Hoodwin
сообщение Sep 5 2012, 10:26
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 881
Регистрация: 21-03-10
Из: _// \\_
Пользователь №: 56 107



Имеем типовую задачку для телеметрии и удаленного обмена данных прибор-сервер. Ранее у нас реализован был вполне развитый протокол управляющих сообщений, бегающих по RS-485. Теперь вот хотим вставить новый кирпичик - GSM-концентратор. Уперлись в следующий вопрос.

Можно ли средствами SIM900 установить TCP соединение с помощью AT команд, после чего перевести все это в прозрачный режим, выбрав конкретное (оно у нас единственное) TCP соединение в качестве терминала? Просто наш собственный протокол и так не очень сложен, и вписывается в подмножество ASCII 32-127. Нам и этого (небольшого впрочем) оверхеда хватит sm.gif

Несколько напрягает алгоритм приема IP-пакетов через AT-команды. Получается, что прием утяжелен оверхедом в виде +CIPRXGET в различных комбинациях, и кушает до 80% трафика. То есть на скорости UART 115200 останется не более 1-2КБ/с, маловато, как мне кажется.

В режиме терминала теоретически можно было бы все 100% трафика по UART использовать, ну или хотя бы близко приблизится к потолку трафика по GPRS (вроде 85.6Кб). Но нас вообще больше закачка на сервер интересует, а там вроде только 42.8Кбит/с обещано. Но это все равно больше, чем получится при возне с АТ командами...

Сообщение отредактировал Hoodwin - Sep 5 2012, 10:31
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Hoodwin
сообщение Sep 10 2012, 18:36
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 881
Регистрация: 21-03-10
Из: _// \\_
Пользователь №: 56 107



Пока еще точных данных мы не получили, так как не прикрутили передачу больших объемов данных. Пока что видно, что сетка дает довольно большую задержку: одиночный запрос-ответ затягивается на 5-7 секунд. Но вот у нас протокол поддерживает конвейерную обработку запросов, поэтому мы пробовали посылать 5 запросов подряд, ну где-то через 100 мс каждый. Запрос и ответ занимают около 20 байт. По логам видно, что тормозят первые, потом начинается некоторое оживление, можно наблюдать интервал прихода ответов около 16 мс. Из чего мы получили грубую оценку 19 байт / 16 мс ~= 1.2 Кб/с. Пока не готов ничего сказать про то, насколько это близко к истине, и что будет при передаче больших объемов данных. По идее, сота отдает приоритет голосовым данным, и поэтому скорости и задержки могут быть нестабильны.

В связи с этими соображениями возник вопрос, можно ли синхронизировать RTC (время) внутри модуля по сети? И с какой точностью это можно сделать? Нам вот хочется с погрешностью не более 0.5с, а лучше 100 мс.
Но при таком routd trip'е что-то не совсем ясно как. Нет никаких гарантий, что время пролета пакета туда равно времени пролета обратно.
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Sep 11 2012, 11:59
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(Hoodwin @ Sep 10 2012, 21:36) *
Пока еще точных данных мы не получили, так как не прикрутили передачу больших объемов данных. Пока что видно, что сетка дает довольно большую задержку: одиночный запрос-ответ затягивается на 5-7 секунд. Но вот у нас протокол поддерживает конвейерную обработку запросов, поэтому мы пробовали посылать 5 запросов подряд, ну где-то через 100 мс каждый. Запрос и ответ занимают около 20 байт. По логам видно, что тормозят первые, потом начинается некоторое оживление, можно наблюдать интервал прихода ответов около 16 мс. Из чего мы получили грубую оценку 19 байт / 16 мс ~= 1.2 Кб/с.

Спасибо.
То есть никаких чудес от использования своего стека TCP (а что за стек кстати?) не получилось - всё те же единицы килобайт в секунду.

Цитата(Hoodwin @ Sep 10 2012, 21:36) *
По логам видно, что тормозят первые, потом начинается некоторое оживление, можно наблюдать интервал прихода ответов около 16 мс. Из чего мы получили грубую оценку 19 байт / 16 мс ~= 1.2 Кб/с.

Тоже недавно пробовал закачивать данные на модуль (использовал стек sim900) с ПК (передавал пакетами ~530 байт): получилось 2-3 пакета в секунду, что соответствует 1-2 кБ/сек.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Hoodwin   TCP соединение через SIM900   Sep 5 2012, 10:26
- - _Артём_   Цитата(Hoodwin @ Sep 5 2012, 13:26) там в...   Sep 5 2012, 10:50
- - Aner   Да, это проблема и она не одна, из-за которой, нап...   Sep 5 2012, 11:12
|- - _Артём_   Цитата(Aner @ Sep 5 2012, 14:12) Да, это ...   Sep 5 2012, 11:15
- - MKdemiurg   А что прозрачный режим не катит?   Sep 5 2012, 11:17
- - Hoodwin   Да я и спрашиваю про прозрачный режим, как его вкл...   Sep 5 2012, 11:29
|- - _Артём_   Цитата(Hoodwin @ Sep 5 2012, 14:29) Да я ...   Sep 5 2012, 11:38
- - Hoodwin   Ага, спасибо. Пну программистов, чтоб попробовали....   Sep 5 2012, 11:48
- - MKdemiurg   Цитата(Hoodwin @ Sep 5 2012, 14:48) Ага, ...   Sep 6 2012, 08:01
|- - =F8=   Цитата(MKdemiurg @ Sep 6 2012, 11:01) Чо ...   Sep 7 2012, 14:51
|- - _Артём_   Любопытно узнать, какой скорости приёма/передачи у...   Sep 10 2012, 16:02
- - CADiLO   Это да - аппаратно через DTR лучше работает чем ++...   Sep 6 2012, 08:15
- - Hoodwin   Верю, что нога DTR лучше. Но в design guide про не...   Sep 6 2012, 09:31
- - CADiLO   >>> Но в design guide про нее написано то...   Sep 6 2012, 10:03
- - Hoodwin   Да, действительно, есть такие документы Почитаем,...   Sep 6 2012, 11:03
|- - Baser   Цитата(Hoodwin @ Sep 6 2012, 14:03) Я не ...   Sep 6 2012, 13:48
- - CADiLO   Поверьте это еще хорошие доки. Если бы вы Modulest...   Sep 6 2012, 11:46
- - Hoodwin   Ну, я привык к градациям док от TI. У них доки, в ...   Sep 6 2012, 12:38
- - MKdemiurg   Пффф.... Я тут начал чехлить bluetooth модули от к...   Sep 6 2012, 16:21
|- - alx125   Цитата(MKdemiurg @ Sep 6 2012, 20:21) Пфф...   Sep 11 2012, 00:38
- - iMeter   Всем привет. Тема интересная. Возьмите МС52i и выш...   Sep 6 2012, 18:28
- - CADiLO   >>>По идее, сота отдает приоритет голосов...   Sep 10 2012, 18:42
- - Hoodwin   Нет-нет, мы никакой стек не изобретали. Сначала де...   Sep 11 2012, 16:09
|- - _Артём_   Цитата(Hoodwin @ Sep 11 2012, 19:09) Нет-...   Sep 12 2012, 11:48
- - vintick   Если я хочу проключить http-server с мк, то я прав...   Dec 4 2012, 08:22
|- - GeGeL   Цитата(vintick @ Dec 4 2012, 11:22) Если ...   Dec 4 2012, 11:05
- - vintick   А вот интересно, что я получу на входе, если буду ...   Dec 4 2012, 11:51
- - GeGeL   Запустите снифер и посмотрите, что происходит при ...   Dec 4 2012, 17:14
|- - vintick   Цитата(GeGeL @ Dec 4 2012, 20:14) Запусти...   Dec 5 2012, 07:06
- - andrewlekar   Зачем так сложно? В природе существуют веб-серверы...   Dec 5 2012, 05:14
|- - GeGeL   Цитата(andrewlekar @ Dec 5 2012, 08:14) З...   Dec 5 2012, 06:51
- - zebrox   Такой вопрос. Задержки жуткие в жпрс. Запрос от с...   Dec 10 2012, 19:33
- - rx3apf   И сеть вносит, и сам модем. Особенно в прозрачном ...   Dec 10 2012, 21:21
- - zebrox   +CIPCCFG: 5,2,1024,1 2*200мс будет ждать перед отп...   Dec 10 2012, 21:55


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 26th June 2025 - 21:23
Рейтинг@Mail.ru


Страница сгенерированна за 0.01366 секунд с 7
ELECTRONIX ©2004-2016