Друг, который программирует TCP через AT команды (используя микроконтроллер) сказал что он может получать уведомления об успешной отправке (или что-то близкое к этому).
Почему у нас через сокеты такого нет??? или я просто не нашёл?
(имеется ввиду какое-то уведомление без явной отправки другой(принимающей) стороны)
Здравствуйте, vvv848165@ya.ru, Вы писали:
VYR>Друг, который программирует TCP через AT команды (используя микроконтроллер) сказал что он может получать уведомления об успешной отправке (или что-то близкое к этому). VYR>Почему у нас через сокеты такого нет??? или я просто не нашёл?
А как такое можно с пользой для дела применить?
VYR>(имеется ввиду какое-то уведомление без явной отправки другой(принимающей) стороны)
В зависимости от конкретной реализации, существуют ioctl'ы, позволяющие узнать, сколько в буфере валяется неотправленных данных. Например, для линукса это — SIOCOUTQ (man 7 tcp). Соответственно, все, кроме неотправленного — отправленное
Здравствуйте, vvv848165@ya.ru, Вы писали:
VYR>Друг, который программирует TCP через AT команды (используя микроконтроллер) сказал что он может получать уведомления об успешной отправке (или что-то близкое к этому).
"Программировать TCP через AT команды" это какое-то "огурцы ложкой банка майонеза".
VYR>Почему у нас через сокеты такого нет??? или я просто не нашёл? VYR>(имеется ввиду какое-то уведомление без явной отправки другой(принимающей) стороны)
Ну а что вы получите? Что пришло в ядерный буфер на той стороне? Ну ok. А потом его надо вычитать
уже целевому коду. А потом окажется, что это не целевой код, а один из 20 промежуточных слоёв буферизации,
инкапсуляции/декапсуляции, переформатирования, и прочая и прочая.
Всё (ну, почти всё и почти адекватно), что нужно для контроля доставки, чтобы не терялось и не переполнялось, уже есть. Остальное — дело протокола поверх TCP и программы, что реализует этот протокол.
Здравствуйте, netch80, Вы писали:
VYR>>Друг, который программирует TCP через AT команды (используя микроконтроллер) сказал что он может получать уведомления об успешной отправке (или что-то близкое к этому).
N>"Программировать TCP через AT команды" это какое-то "огурцы ложкой банка майонеза".
Я где-то такое видел. Чуть ли не в документации к GSM-модему, втыкаемому в USB. Телефонисты, они такие выдумщики...
VYR>Друг, который программирует TCP через AT команды (используя микроконтроллер) сказал что он может получать уведомления об успешной отправке (или что-то близкое к этому). VYR>Почему у нас через сокеты такого нет??? или я просто не нашёл?
Потому что в этом нет смысла. "Успешно отправленное" совсем не равно "успешно полученное и обработанное".
Как много веселых ребят, и все делают велосипед...
VYR>Здравствуйте, ononim, Вы писали: O>>Потому что в этом нет смысла. "Успешно отправленное" совсем не равно "успешно полученное и обработанное". VYR>но если это подтверждает успешность доставки до конечного устройства в этом пол смысла есть...
Разве что для точной оптимизации под текущую пропускную способность сети. Типа при передачи realtime видео можно вовремя понизить качество видео, не дожидаясь реальных затыков. Но это крайне редкий, и предложенное тут
Здравствуйте, Mr.Delphist, Вы писали:
MD>Вот только, насколько знаю, SS7 применяют для связи между узлами связи, а не на "последней миле" до абонента/модема (где обычный DTMF).
Здравствуйте, vvv848165@ya.ru, Вы писали:
VYR>Друг, который программирует TCP через AT команды (используя микроконтроллер) сказал что он может получать уведомления об успешной отправке (или что-то близкое к этому). VYR>Почему у нас через сокеты такого нет??? или я просто не нашёл? VYR>(имеется ввиду какое-то уведомление без явной отправки другой(принимающей) стороны)
Есть такие RAW SOCKET, но там придется ручками пакетики стряпать.
Проще поверх TCP свой простейший протокол реализовать, который будет подтверждать, например,
"буфер номер 38743843 получен".