|
|
|
Протокол передачи с защитой от потери/ошибки, Существует ли универсальный готовый ? |
|
|
|
Aug 18 2018, 15:30
|
Гуру
Группа: Свой
Сообщений: 2 015
Регистрация: 23-01-07
Из: Москва
Пользователь №: 24 702
|
Допустим, есть два устройства, обменивающиеся данными по какой-то ненадёжной линии: длинные провода / радиоканал / ИК. Нужен протокол, обеспечивающий проверку сохранности и целостности данных. Разумеется, его можно изобрести.
Вопрос: нет ли универсального готового протокола ? В виде аппаратно-независимой библиотеки СИ ? Что бы были целые данные на входе, целые данные на выходе, а между устройствами библиотека как-то сама устанавливает связь и передаёт-проверяет пакеты?
Казалось бы, задача распространённая, много где решается в +- одном и том же виде, может быть есть готовые решения ?
--------------------
Если у Вас нет практического опыта в данной теме- не вступайте в дискуссию и не пишите никаких теоретических рассуждений! Заранее спасибо !
|
|
|
|
|
Aug 18 2018, 18:16
|
Участник
Группа: Участник
Сообщений: 61
Регистрация: 30-06-18
Пользователь №: 105 565
|
Цитата(MiklPolikov @ Aug 18 2018, 18:30) Протокол передачи с защитой от потери/ошибки, Существует ли универсальный готовый ? Допустим, есть два устройства, обменивающиеся данными по какой-то ненадёжной линии: длинные провода / радиоканал / ИК. Нужен протокол, обеспечивающий проверку сохранности и целостности данных. Разумеется, его можно изобрести.
Вопрос: нет ли универсального готового протокола ? В виде аппаратно-независимой библиотеки СИ ? Что бы были целые данные на входе, целые данные на выходе, а между устройствами библиотека как-то сама устанавливает связь и передаёт-проверяет пакеты?
Казалось бы, задача распространённая, много где решается в +- одном и том же виде, может быть есть готовые решения ? Вам нужно просто определять сам факт, что данные покоцались или Вам нужен протокол возможностью исравления ошибок? И того и того полно "стандартного", что юсается уже лет 50
|
|
|
|
|
Aug 19 2018, 14:48
|
Гуру
Группа: Свой
Сообщений: 2 015
Регистрация: 23-01-07
Из: Москва
Пользователь №: 24 702
|
Цитата(uriy @ Aug 18 2018, 20:29) пакетная передача или поточная. Какой размер пакетов. Симплексная или дуплексная передача. Этот вопрос решается на стыке аппаратно-независимой библиотеки с реальным передающим железом. Очевидно, на обеих сторонах какие-то буферы, которые как-то передаются друг в друга. Если кто-то знает готовые решения - покажите пожалуйста. Я понимаю, о чём речь, и что хочу: Собственный протокол я уже делал дважды, оба раза в виде +-библиотеки. И один раз использовал библиотеку коллеги-программиста, которую мы отлаживали совместно. Во всех случаях что-то оставалось недоделано или неидеально - просто из-за ограниченности ресурсов на эту работу. Вот и думаю, что вполне возможно существование готового хорошего решения. Просьба- кто такие протоколы не делал, пожалуйста, не давайте теоретические советы. Это вопрос к людям, которые имеют собственный опыт.
--------------------
Если у Вас нет практического опыта в данной теме- не вступайте в дискуссию и не пишите никаких теоретических рассуждений! Заранее спасибо !
|
|
|
|
|
Aug 19 2018, 21:04
|
Гуру
Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295
|
Есть готовые устройства, называются "модем" Вообще, насколько я знаю, эти протоколы так просто, "с кондачка", не выбирают. Их выбирают или создают, имея в своем распоряжении модель конкретного канала связи. Цитата(MiklPolikov @ Aug 18 2018, 18:30) длинные провода 1. Купите пару телефонных модемов, они должны сейчас копейки стоить, вроде IDC2814 или Zyxel U-1496. Одному подаем команду "ata", другому - "atd", ждем, пока они законнектятся, и дело в шляпе ... Цитата(MiklPolikov @ Aug 18 2018, 18:30) / радиоканал / ИК. 2. Радиомодемы, например, Невод - чем не решение проблемы ? Или вы хотите сделать свой модем ? Как я понял, это именно так. Тогда вот, самое простое, наверное: http://www.ti.com/lit/an/slaa618/slaa618.pdfhttp://www.gaw.ru/html.cgi/txt/app/micros/msp430/slaa037.htm
|
|
|
|
|
Aug 20 2018, 17:56
|
Знающий
Группа: Свой
Сообщений: 633
Регистрация: 21-05-10
Из: Томск
Пользователь №: 57 423
|
Цитата(MiklPolikov @ Aug 21 2018, 00:28) На "С" без "++" ничего подобного нет ? Поиск по гитхабу выдаёт несколько вариантов. Ещё можете посмотреть протокол RUDP.
--------------------
|
|
|
|
|
Aug 20 2018, 18:19
|
Профессионал
Группа: Свой
Сообщений: 1 700
Регистрация: 2-07-12
Из: дефолт-сити
Пользователь №: 72 596
|
Цитата(MiklPolikov @ Aug 20 2018, 20:28) Спасибо ! Оно одно такое ? На "С" без "++" ничего подобного нет ? всмысле без "++"? оно для FPGA на стейт-машинах есть. для high-frequency-trading для связи географически-разнесенных бирж активно используется.
--------------------
провоцируем неудовлетворенных провокаторов с удовольствием.
|
|
|
|
|
|
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|