Перейти к содержанию
    

Так ведь и команды подъема соединения совершенно разные, для FTP/HTTP - AT+SAPBR, для TCP - AT+CSTT, AT+CIICR. Это что, внутри SIM800C одно и то же?

Команды разные, в силу того, что в случае для FTP/HTTP вы сообщаете о намерении использовать соответствующий протокол прикладной протокол - SIM800C в этом случае все равно выполняет вначале действия аналогичные для TCP-команд.

Грубо говоря, если Вы вручную реализуете ftp- или http- сервисы посредством команд для TCP, то это и будет тем, что делают

команды для для FTP/HTTP.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Команды разные, в силу того, что в случае для FTP/HTTP вы сообщаете о намерении использовать соответствующий протокол прикладной протокол - SIM800C в этом случае все равно выполняет вначале действия аналогичные для TCP-команд.

Это скорее HTTPINIT.

 

Грубо говоря, если Вы вручную реализуете ftp- или http- сервисы посредством команд для TCP, то это и будет тем, что делают команды для для FTP/HTTP.

 

Не похоже что одно и то же. Если там внтури это одно и то же по сути, то не понимаю почему при варианте реализации HTTP через TCP от SIM800C запрос выполняется почти в два раза быстрее чем при использовании HTTP от SIM800C.

 

HTTP:

+HTTPINIT
+HTTPPARA="CID",1"
+HTTPPARA="URL","..."
+HTTPACTION=0
+HTTPACTION: 0,200,301"
httpRead(expectedDataLen = 301)
+HTTPTERM

Около 2-х сек.

 

TCP:

+CIPSTART="TCP","...",80"...
CONNECT_OK
+CIPSEND=493
>
Send 291+202 byte...
+CIPCLOSE=0

Около 1-й сек.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не похоже что одно и то же. Если там внтури это одно и то же по сути, то не понимаю почему при варианте реализации HTTP через TCP от SIM800C запрос выполняется почти в два раза быстрее чем при использовании HTTP от SIM800C.

Чисто теоретически вариант реализации через TCP будет быстрее варианта HTTP, потому что TCP - это "stream"-сокет, который ретранслирует данные между Вами и конечным адресатом, а HTTP - это такой же "stream"-сокет, возле которого в качестве цензора сидит встроенный HTML-сервис SIM800C. Который забирает на свою работу часть времени и которую Вы в случае реализации через TCP должны выполнять самостоятельно, но уже после остановки секундомера.

А в приведенном Вами коде я не увидел, что запросы идентичны: в случае HTML запись GET с последующим чтением результата, а в случае TCP - только запись.

Изменено пользователем aiwa

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...