Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

Ответ:

Отправлено vitalyn 13 августа 2008 г. 14:24
В ответ на: Другими словами, если нарушений синхронизации нет, то соединение не рвется,...{+}(+) отправлено <font color=gray>P_Andrey</font> 13 августа 2008 г. 13:43

В TCP соединение может быть оборвано как по инициативе сервера, так и по инициативе клиента. Кто из них обнаружил нарушение структуры передаваемой информации - тот и рвёт соединение.

Да, в Modbus/TCP единственный способ синхронизации - это безошибочно считать количество принятых байт и также безошибочно формировать сообщения. Кстати, нужно ещё учитывать, что TCP гарантирует количество и последовательность передачи байт, но не гарантирует время их поступления, в том числе, соблюдение их нарезки на пакеты. Скажем, если вы посылаете пакеты, например, по 101 байту, никто не гарантирует, что они так и будут приходить именно такими порциями. В любом месте тракта их могут объединить в один пакет или нарезать на более короткие порции. Например, два пакета могут быть ещё на передающей стороне уже склеены в один пакет 202 байта, потом посередине быть порезаны на пакеты по 32 байта и в таком виде поступить на приёмный конец. Так что этот момент приходится учитывать.


Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 76:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru