Опубликованы исходные тексты проекта D-Modem, реализующего программный модем для организации передачи данных поверх VoIP-сетей на базе протокола SIP. D-Modem даёт возможность создать канал связи поверх VoIP по аналогии с тем, как традиционные dialup-модемы позволяли передавать данные поверх телефонных сетей. В качестве областей применения проекта можно отметить подключение к существующим dialup-сетям без использования на втором конце телефонной сети, организацию скрытых каналов связи и проведение тестирования безопасности систем, доступных только через dialup. Код проекта написан на языке Си и распространяется под лицензией GPLv2...Подробнее: https://www.opennet.me/opennews/art.shtml?num=56070
> Код проекта написан на языке СиСейчас начнётся горение у любителей переписывать всё подряд на модно-молодёжных языках.
Откуда вы, блин, беретесь?
ммм... финонет через SIP через тырнет через диалап?
В Фидо сидят спощь одни пенсионеры. Общаться с пенсионерами? Нет, спасибо.
Ты так говоришь как будто тут есть кто-то кроме них.
Мне 12
А мне 10
А я так вообще Томат!
В смысле, овощ?
Здесь куча вчерашних и нынешних студентов. Я начал регулярно посещать опеннет где-то в 17-18 лет. А судя по тому, что на лоре не один десяток школьников (а часть из них ещё и не самые глупые), они есть и тут.
Всё бы ничего, но работать оно будет только с такими же модемами over sip. На любом выходе в PSTN jitter и дополнительное преобразование оставит от V.34 рожки и ножки.
авторы честно пишутConnections are unreliable, and it is currently difficult to connect at speeds higher than 14.4kbps or so. It might be possible to improve this by disabling/reconfiguring PJSIP’s jitter buffer.
но учитывая, что им это надо не для скачивания какой-нито r46.sysop.erotic.uue, то и нормально.
Авторы написали зачем им это надо.
Делаем даунгрейд версии протокола и продолжаем работать.
Даешь эмуляцию курьера в платной версии и 36к винмодема в бешплатной.
Зухель более каноничен
Когда сделают зелаксы/паргейны поверх SIP - разбудите меня, пожалуйста.
Скорее FreeBSD на Rust перепишут чем зелагсы сделают через sip
US Robotics?
US Robotics?
Зухель - для нищебpодов. У меня до сих пор на антресолях парочка чёрных курьеров валяется 😁
Одолжил я в детстве козырный курьер, не получил я сети как и с остальными дешовками
Как сейчас помню $499 за модем с сисопской скидкой. Жена чуть не убила, когда узнала, сколько он стоит.
Где A4?
А как провайдеры будут траффик фильтровать согласно судебным решениям?
Ну вот зачем ты им подсказываешь?!
Приложение с большим закрытым блобом??
Не особо такое нужно...
>> Код проекта написан на языке Сине нужно
>> и распространяется под лицензией GPLv2.
дважды не нужно
Вот когда сделают модемный пул для астериска с поддержкой V.90 (чтобы работал с DAHDI), чтобы его можно было использовать вместо Lucent Ascend или 53-ей циски, тогда и поговорим.
Сможете найти того кто будет звонить на этот пул?
Мсье собрался создать сеть по обмену ЦП или подпольную биткоен-биржу?
Гейты из чебурнета
> Гейты из чебурнетаДаже из Китая используют более подходящие для этого технологии
С чего ты взял что у нас будет как в Китае? Все показывает что у нас всегда будет хуже чем в Китае.А вот когда гром грянет можно будет хотя бы через VoIP ходить.
Mesh-тырнет ??
Главное до границы дотянуть
Наивный через 20 минут после включения передатчика у тебя на дому будет представление с масками и изделием "Нежность-2". Погранцы (которые как и положено в составе ФСБ) ещё со времён Союза таким умным ласты заворачивают.
Дыыыы ну ладно, в пограничных районах прекрасно ловятся 3G/2G БС соседней страны.
> Дыыыы ну ладно, в пограничных районах прекрасно ловятся 3G/2G БС соседней страны.Не надо путать две задачи:
1) слушать чужих
2) глушить своих
Там так-то ныне особо уже ничего ценного не послушаешь, ну да ладно.
А как их оплачивать?
Банковские карты давно отменили?
> Дыыыы ну ладно, в пограничных районах прекрасно ловятся 3G/2G БС соседней страны.Наивный чукотский юноша. Ширина пограничной зоны может достигать 60 км. А ширина запретной зоны -- 12 км. Удачи тебе поймать в пограничной зоне на иностранную сим-карту сопределеьную вышку и тем более позвонить на неё.
IEEE 802.11ah завернут?
Какая разница какой протокол?
Излучаешь радиоволны в пограничной зоне без особого разрешения мощностью более 1 Вт? Получи по решению суда конский штраф и предписание о выселении из пограничной зоны.
Никогда. V.90/V.92 требуют линейного PCM на выходе, с типовыми voip кодеками оно не уживётся.
Более того, у V.90 вход от V.34, то есть жопа сразу, а V.92 требует линейного PCM преобразования и на входе тоже. Сразу упреждая: G.711 и прочие имеют нелинейную характеристику преобразования.
Непонятно почему вы пишете про линейный PCM, если в стандарте v.92 написано именно про G.711 кодирование:https://www.itu.int/rec/recommendation.asp?lang=en&parent=T-...
ITU-T V.92
3.1 analogue modem: The analogue modem is the modem of the pair that, when in data mode, receives G.711 signals that have been passed through a G.711 decoder. The modem is typically connected to the PSTN.
3.2 digital modem: The digital modem is the modem of the pair that, when in data mode, generates G.711 signals. The modem is connected to a digital switched network through a digital interface, e.g. a Basic Rate Interface (BRI) or a Primary Rate Interface (PRI).
Нужен новый V.2022
> с типовыми voip кодеками оно не уживётсяСлово "DAHDI" не известно или не понятно?
Facepalm'dДешевле выйдет купить несколько модемов, и не мучать животное.
Пара аналоговых модемов заумела V.90 между собой?
V.90, как таковой, нельзя "заиметь между собой". Он существует только на цифровом даунстриме, аналоговый апстрим аналогового модема - всё тот же V.34, точнее, часть от него.PCM-апстрим туда-сюда - это V.92. С поправкой на аналоговость линии.
Ну и самая мякотка: если с обеих сторон и между ними есть цифровой тракт, достаточный для работы V.92 - нахрена в этом варианте нужен V.92? Особенно если напомнить, что сабж темы - VoIP.
Троллейбус и буханка хлеба.
Может кто-то прокомментировать?Этот проект подойдёт для тех товарищей кто удалённо конфигурирует станции по модемному доступу?
Тоесть на сегодня так получается что железных линий не остаётся как и постепенно вымирающих модемов.
Не знаю о чем ты говоришь, но для VoIP нужны существующие линии и уже настроенный доступ в интернет с двух сторон у «звонящего» и у «адресата». И уже потом можешь между ними обмениваться чем хочешь.
У "железных" атс есть встроенный модем который подключается к обычной телефонной линии и ждёт входящих звонков.
Сидящий удалённо, своим собственным модемом дозванивается на станционный и получает доступ к конфигурированию.Так вот у сидящего удалённо скоро не останется ни модемов ни железной линии кроме воипной.
Но через воип обычный модем не очень с такими станциями.
Хороший повод заменить АТС на что-то другое, менее архаичное.
Ну так замени, Уася!
Тебе о том, что атс с модемом, смотрящим в сразу пустую телефонную лапшу, это 100% рабочий plug and play, который работает сразу и без ничего.Какой-то пориджизм кругом — «давайте заменим».
Что заменить (тут)?
Технологию, которая работает сама без настройки и применяется локально для конфига атс по сырой линии?На что «заменим»?
Нравится сидеть на аналоговой лапше - сиди, кто ж тебе запретит.
У других людей есть выбор из вариантов получше.
На что заменить вариантов достаточно - на wired ethernet с VoIP, wifi с ним же, или хотя бы на ISDN - хоть что-то.
А зачем до сих пор иметь телефонную линию у себя в доме/организации, если у всех давным давно есть оптика или медь для универсального Интернета? Как только появились стабильные 25 МБ от Ростелекома по всей стране, то 12 вольтовый аналоговый телефон должен был умереть. Он остался только у бабок старых, которые и то уже отказываются чтобы не платить по 250 рублей за 5 разговоров в месяц. Потому что всё равно мобилки у всех есть. Так что выкиньте уже ваши АТС на помойку.
В СПб Ростелеком в этом году отказался от уличных телефонных будок, т.к. очень слабо сейчас востребованы - менее 1 минуты разговоров в месяц на одну будку. Обычная телефонная связь по меди постепенно остаётся в прошлом.
> В СПб Ростелеком в этом году отказался от уличных телефонных будок, т.к.
> очень слабо сейчас востребованы - менее 1 минуты разговоров в месяц
> на одну будку. Обычная телефонная связь по меди постепенно остаётся в
> прошлом.предприятиям ето расскажите. какой-нибудь запорожстали, где на территории не везде мобилка и ловит-то.
> всё равно мобилки у всех есть. Так что выкиньте уже ваши
> АТС на помойку.и поднимите у себя в конторе своё персональное 4гэ.
Эти 5 разговоров в месяц выражаются в висении по полчаса на линии поликлиники. Естественно там стоит мини атс из за которой все полчаса тарифицируются. Так же различные аптеки для уведомления о получении льготных лекарств требуют местный номер телефона с физической линией. Городские номера сотовых операторов их не устраивают. Минута разговора при звонках на местные номера(а других у поликлиник нет) у Ростелекома в разы дешевле чем у сотовых операторов. А стоимость повремённого тарифа у Ростелекома чуть выше стоимости городского номера у сотовых операторов.
Билайн кстати недавно выяснил, что его клиенты не нуждаются в звонках на городские номера, поэтому они тарифицируются отдельно. Теле2 выяснил это ещё раньше.
Не знаю в чём там у тебя проблема, но я когда гоняю за лекарствами своим пенсам оставляю мобильный номер телефона. Записывают и перезванивают. Таких инструкций нет и быть не может от Минздрава. Потому что у человека может и не быть стационарного телефона. Московская область, как там эта контора называет, Мособлмедсервис или типа того.
> Как только появились стабильные 25 МБ от Ростелекома по всей странеДержу в курсе - не появились.
Пример: городок в 13к населения, 3 провайдера, но до частников (почти центр) никто не хочет делать линии, единственные варианты это ADSL от ростелека с 7Мбит/c подключенный еще в начале нулевых и мобильный интернет (3g, до вышки на 20 метровой мачте примерно 500 метров) с примерно такой же пропускной способностью но с гораздо меньшей стабильностью.
Другой пример: деревня, час до областного центра, еле дышаший ADSL от ростелека в примерно 3 Мбит/с, примерно час до областного центра, альтернатив нет никаких в принципе (разве что Starlink).
Итого: телефонные линии проведены еще при советской власти, сплиттер и модем поставлены в начале нулевых(еще по остаточной от ельцина волне - тогда еще был другой оператор который что-то делал, потом его слопал ростелик), а 20 лет "счастливой жизни" в никуда.
Skylink наверное. Старлинк это через спутники).Ладно с деревнями. Но в вашем городке как могут аж 3 провайдера не покрыть 13к населения? Конкуренция вот это вот всё, нет не слышали?
ADSL? Даже до VDSL не доползли ещё?)
> Skylink наверное. Старлинк это через спутники).Там только спутники и альтернатива (теоритическая, на практике конечно и их не будет), потому что тянуть кабель в эту деревню никому не нужно.
> Ладно с деревнями. Но в вашем городке как могут аж 3 провайдера
> не покрыть 13к населения? Конкуренция вот это вот всё, нет не
> слышали?Когда-то давно был один нормальный по тем временам провайдер, он собственно и подключил ADSL и инженеры у него были местные и в случае проблем чинили неполадки. Потом его купил ростелек и с тех пор технологических подвижек не было, только цены росли, количество перебоев увеличивалось и время их решения (потому что всех местных инженеров "оптимизировали" и стали присылать бригаду из другого города). Никакие заявки, звонки с целью обновить линию не помогли, даже за наш счет. Заявку якобы принимают, куда-то записывают и уже лет 5 никаких подвижек (первые ~года 3 каждый год названивал).
Несколько лет назад пришел мтс. Проводит оптику в многоэтажки, но в частный сектор ни ногой. Такая же ситуация с заявками - якобы принимают и тишина.
Сейчас пришел уфанет, может с ним что-то сложится, но пока тоже отвечать не торопится.
То есть конкуренция пока и не появилась.> ADSL? Даже до VDSL не доползли ещё?)
Скорее недоползли уже. Ростелеку нет смысла грейдиться, ему в любом случае будут платить 600 рублей хоть за ADSL.
Сочуствую. Наверное, единственное что можно сделать - провести разъяснительную работу, расклеив листовки по городу, в которых призывать писать обращения в голову Ростелекома, федеральные министерства и своим депутатам. Через пару лет может включат в какую-нибудь федеральную программу проведения оптики. Ну или ты понел, да, правильно - валить.
> ADSL? Даже до VDSL не доползли ещё?)ADSL -- хорошая альтернатива dialup-модемам, но вместе с собственно телефонными линиями теряет актуальность и он (практически полностью уже потерял).
Не уверен, что кто-то сейчас производит новое xDSL оборудование.
> ADSL -- хорошая альтернатива dialup-модемамИнтересно, кто-нибудь пробовал сделать программный opensource ADSL модулятор/демодулятор (модем)?
Наверное нет...
Я посмотрю как ты себе вызовешь скорую/полицию/пожарных при очередном блекауте...1. Блекауты - неизбежны. Запасы нефти и т.д. - исчерпаны, альтернативные варианты генерации - нестабильны.
2. Интернет - ложиться сразу, как только полыхает ИБП, к которому подключен твой маршрутизатор. У тебя Антон его нет? Значит просто сразу. И не факт что он есть на дешманском коммутаторе, что поставил в подъезд провайдер.
2. Сотовые станции - держат не более 4х часов. Обычно меньше.
3. Проводные телефоны - держат 8 часов по нормативу. А потом - работают от генераторов
Так ведь сейчас телефоны к шлюзу подключаются, который от розетки работает.
А твоя АТС типа при блэкауте будет работать? Ты уверен? И вообще если ты такой утопист, то живи за городом. Коли дрова и нафиг тебе этот интернет ненужон. 8 солнечных панелей номиналом в 250 Ватт более чем достаточно для одного анона.
Удваиваю анона с призывом к переходу.
Астериск себя прекрасно зарекомендовал с точки зрения надёжности, в том числе и на PRI-каналах. Единственное, с чем его не стОит применять (можно, но лучше не пытаться) - это аналоговые подключения к оператору.
Когда-то поменяют конечно, но здесь и сейчас станции надо работать и даже сама замена не столь быстрый процесс с которым тоже надо всё конфигурить.
скажите, кто вас етому научил? еще лучше дайте его адрес и фото, я перекушу ему шею.нет в атс никаких "встроенных" модемов. модем - такое же абонентское устройство, как телефон. про атс он знает только, что есть команда проскрежетать номер и ждать несущей, или если прилетел звонок, снять трубку и дать несущую.
в случае нс еще проще, просто пара между двумя абонентскими устройствами.
>>>Так вот у сидящего удалённо скоро не останется ни модемов ни железной линии кроме воипной.
чушь собачья. скорее не останется собственно операторской меди в канализации, ее всю окончательно сп*здят. модем - устройство для физической линии, куда он пропадет?
>>>нет в атс никаких "встроенных" модемовСкажите пожалуйста как по вашему называется встроенный модем в panas tes824?
>>>куда он пропадет?
Если сам модем - то умрёт от старости например.
Если про линию, вы правильно начали, например оператор ставит шлюз который на деле гонит всё по воип, хотя у клиента дома/в офисе типа лапшичка для его телефона/модема.Вот по такому воипу ещё существующий модем уже будет плохо работать.
Я после вопроса такого товарища даже попробовал физ модемом на атс по тексту выше через spa шлюз и воип оператора дозваниваться, действительно сработало 1 раз из 10.
>>>>нет в атс никаких "встроенных" модемов
> Скажите пожалуйста как по вашему называется встроенный модем в panas tes824?дешманский модем, засунутый в один корпус с дешманской упатс. чтоб уборщица тряпкой не смахнула, и чтоб состоятельный господин, купивший это г, чуйствовал себя настоящим провайдеромъ.
там у некоторых панасов еще eth порты есть, это повод писать, что в атс есть встроенный езернет свитч.
Посмотри на АТС от Алкатель - там реально встроенные коммутаторы изернета...
> Посмотри на АТС от Алкатель - там реально встроенные коммутаторы изернета...дядька, ты не поверишь - я в цисках встроенные свитчи видел!
> нет в атс никаких "встроенных" модемовНе, часть здоровенных абонентских цифровых АТС реально шла с платами V.90/V.92.
>> нет в атс никаких "встроенных" модемов
> Не, часть здоровенных абонентских цифровых АТС реально шла с платами V.90/V.92.да в упатс вообще могут напихать чего угодно, хоть коллпайлот какой-нибудь, который будет с тобой человеческим голосом разговаривать.
Блин, вся эта устаревшая классификация...
Не, я не про ведомственные.
Я про вполне себе ГАТС (они же ОС/ЦС местами) и МГАТС, те самые "цифровые", которые в конце 90-х - начале 2000-х начали ставить. Там как раз уже штатно шли платы V.90/V.92, что на искрателе, что на алкателе/люценте, что на сименсах.
Может быть интересно для фанатов ретрокомпьютинга. Практической пользы не особо видно.
Модемы, в принципе, много где используются, но не для связи по коммутируемым телефонным линиям с устаревшими протоколами.
Актуальны либо выделенные линии, иногда специфические типа data over powerline, либо радио.
Практическая польза будет тогда, когда чебурнет окончательно окуклится. Ещё раз внимательно читаем, зачем это нужно. Да, прямо в статье, прямо на русском.
> по аналогии с тем, как традиционные dialup-модемы позволяли передавать данные поверх телефонных сетей
> Си
> GPLv2Собрали воедино все древности, которые давно пора закопать, и ещё сверху приправили гнутой лицензией.
Сишка вечна потому-что оптимальна.
> Сишка вечна потому-что оптимальна.Была вечна до появления безопастного языка системного программирования Rust.
Цель распространения раста вовсе не для безопасности.
"Ключевые приоритеты языка: безопасность, скорость и параллелизм. Он рассматривается как перспективный язык для разработки ядер операционных систем. Rust сопоставим по скорости и возможностям с C++/Си, однако даёт большую безопасность при работе с памятью" - вот так вот!
В рекламных буклетах столько муры пишут...
> В рекламных буклетах столько муры пишут...Почему рекламных? А какой по вашему ЯП признал любимым языком программирования подписчиков стек оверфлоу? Тото же! Rust набирает обороты и это факт.
>стек оверфлоуЭто какая-то коммерческая компания?
Понятное дело, что у неё есть определённые интересы, которые возможно идут вразрез с интересами opensource сообществ.
Если язык признан любимым у подписчиков платформы, куда люди бегут когда не могут найти нормальной документации на свой язык, то для меня лично это противоположный положительному показатель. Такая же ситуация с питоном, у которого документация написано просто чтобы быть
На стаке сидят сплошные мухи, которые без этой навозной кучи жить не могут, их мечты о расте ничего не значат.
Вот когда на шитхабе будет так же 100500 полезного софта на ржавчине тогда и поговорим.
Сколько грязных слов а по факту ничего, потому что вы сами прекрасно понимаете что Раст это лудшее в индустрии. И да - не ржавчина а Rust, привыкаем говорить корректно.
Они просто завидуют. Но, справедливости ради, Elm ещё лучще.
Рассматривается как перспективный язык для разработки ядер операционных систем, а пишут хеллоуворлды. Вот ведь незадача.
Это не отменяет тот факт что Rust - современный, безопастный системный язык.
Так напишите на жабоскрипте, кто вам мешает?
Жабаскрипт скоро исчезнет как и большинство ранее мейнстримных ЯП.
Да-да, это безопастттнее Раста даже.
Не безопастнее Раста, однозначно
Уже начал первым делом смотреть, кто запостил новость. Не QwertyReg, ну тогда всё OK, "Код проекта написан на языке Си и распространяется под лицензией GPLv2".
QwertyReg так зашугал опеннетных анонимов, что они теперь постоянно оглядываются по сторонам и пугаются каждого шороха
Просто здравый смысл. Это как увидев странную новость, проверять, а не "ИА Панорама" ли это часом.
В том-то и проблема, снова будет течь и падать, течь и падать. нам в 21 веке этого не нужно.
Ты так говоришь как будто это что-то плохое.
> Ты так говоришь как будто это что-то плохое.Ну не знаю, в Раст Фандейшн другие приоритеты и каждая адекватная личность их поддерживает.
Каждая diversity'вная личность.
>>>Проект в том числе может применяться для подключения к существующим dialup-сетям, в условиях когда отсутствует классический модем (SIP-вызов может перенаправляться в обычную телефонную сеть).good fucking luck
работать ето будет приблизительно как и факс поверх voip, то есть никак.
уже проходили 20 лет назад, в епоху повсеместного внедрения дешевых звонков в зарупеж.
Надо сказать, fucks'ы поверх voip слегонца ходят даже без T.38.
Полный V.32 тоже ходит. Плохо, косо, но ходит.
Просто потому, что цепочка модуляции-эквализации не настолько сложная и чувствительная, как в V.34.
Были бы исходники V.34 возможно получилось бы что-то подтюнить.
В смысле исходники V.34.
V.34 это в т.ч. аппаратный протокол. Включающий методы кодирования _аналогового_ сигнала.
Это вам не лефтпад тюнить :D
А в чём его "аппаратность"? Код реализующий этот протокол выполняется на обычном процессоре (может на DSP, но не обязательно).
Подтюнить можно тайминги - продолжительность различных сигналов. Можно добавить код реализующий алгоритмы автоподстройки под специфичные для VoIP устройств параметры, например такие как дрифт и jitter частоты дискретизации у VoIP-to-analog шлюзов.
Ну если есть исходники кода.
В этом проекте вся интересная начинка в dsplib.o, который поставляется без исходников.
> А в чём его "аппаратность"? Код реализующий этот протокол выполняется на обычном
> процессоре (может на DSP, но не обязательно).
> Подтюнить можно тайминги - продолжительность различных сигналов. Можно добавить код реализующий
> алгоритмы автоподстройки под специфичные для VoIP устройств параметры, например такие
> как дрифт и jitter частоты дискретизации у VoIP-to-analog шлюзов.что ты несешь, аноним? какое отношение v.34 имеет к voip?
Ты название новости хотя бы читал?
"D-Modem - программный модем для передачи данных поверх VoIP"А текст?
"Механизмы обработки сигналов и поддержки AT-команд, а также реализации протоколов V.32bis (14.4kbps) и V.34 (33.6kbps), заимствованы из готового драйвера ядра slmodemd"С пониманием есть сложности?
> Ты название новости хотя бы читал?
> "D-Modem - программный модем для передачи данных поверх VoIP"
> А текст?
> "Механизмы обработки сигналов и поддержки AT-команд, а также реализации протоколов V.32bis
> (14.4kbps) и V.34 (33.6kbps), заимствованы из готового драйвера ядра slmodemd"
> С пониманием есть сложности?какое отношение v.34 имеет к voip?
Не тупи.
Далёкому от обработки сигналов челу будет очень сложно объяснить, почему V.34 не запихать в G.711, и по асинхронному каналу с непредсказуемыми нелинейными характеристиками не передать.
Я думаю про V.34 и G.711 вы заблуждаетесь.
Думай дальше. Нет смысла что-то объяснять :D
Пока что остановимся на
"Connections are unreliable, and it is currently difficult to connect at speeds higher than 14.4kbps or so"
На самом деле из V.32bis можно выжать чуть больше, но на V.34 без шансов.
Unreliable - никуда не денется.
Ой, а это не ты - молодой гений, инкапсулирующий Е1 в IP?
Ты так и не понял почему ты наблюдаешь исключительно Лост оф синк? Даже увольнение по профнепригодности не заставило тебя подумать? Ну значит все правильно сделали... 😁
Да дело-то не в этом.
Реализации V.34 на DSP 100 лет в обед существуют - "исходники" все есть.
Дело в том, что протокол заточен под аналоговую линию, и _ничего_ с этим без потери совместимости не сделать.
>Реализации V.34 на DSP 100 лет в обед существуют - "исходники" все есть.Где их можно посмотреть? Они под свободной лицензией?
>Дело в том, что протокол заточен под аналоговую линию, и _ничего_ с этим без потери совместимости не сделать.
Кто-то не может ничего сделать, а кто-то может и сможет.
>>Реализации V.34 на DSP 100 лет в обед существуют - "исходники" все есть.
> Где их можно посмотреть? Они под свободной лицензией?
>>Дело в том, что протокол заточен под аналоговую линию, и _ничего_ с этим без потери совместимости не сделать.
> Кто-то не может ничего сделать, а кто-то может и сможет.этот кто-то - не ты, анон 28. ты даже поисковиками пользоваться не умеешь.
Покажи как надо.
> Покажи как надо.сто баксов.
а вообще нет, для тебя персонально - $200
надбавка за сочетание неприятного с бесполезным.
> Были бы исходники V.34 возможно получилось бы что-то подтюнить.https://www.itu.int/rec/T-REC-V.34-199802-I/en
тюнь на здоровье.
Открытые исходники модема реализующего этот протокол есть?
https://github.com/geofft/linmodem/blob/master/v34.c
Там только малая часть - код только на передачу (нет на приём/демодуляцию/декодирование) и нет существенных компонентов - echo canceller'а, код для phase2 недописан, для phase3 и phase4 просто отсутствует.Код эпично обрывается буквально на полуслове:
https://github.com/geofft/linmodem/blob/7d5596faf5bd972fe549...
Открытых нет - оно обложено патентами вдоль и поперёк.
Но ты путаешь исходники _модема_ и _протокола_...
Не думаю, что есть какая-то путаница.
Исходники L1 протокола - это его формальное описание. Характеристик сигналов и прочего. Никакого "кода" в них нет. Из них можно собрать код для конкретного DSP - но это уже будет исходник _модема_.
По ссылке нет исходников.
Ты просто плохо себе представляешь, что такое "исходники" для L1 протоколов.
Про soft модемы без DSP процессора вы слышали что-нибудь? А ведь такие выпускались, с полностью программной реализацией v.34/v.90/v.92 для выполнения на x86 процессорах, и ведь всё отлично работало. Но да, код проприетарный закрытый.
Принципиальная возможность успешного запуска всего over VoIP под большим вопросом.Автор D-Modem'а говорит, что даже версия для проводных линий как-то иногда работает.
"In our testing"... "though V.34 (33.6kbps) connections are sometimes successful"Поясните, пожалуйста, почему вы считаете, что для v.34 исходники это не обычный Си код, а какой-то особенный, для L1 протоколов.
Конечно работало. Потому что на выходе - аналоговая линия с её резистансом-импедансом, и подходящий по параметрам кодек, а не типовой VoIP с его адаптированными под голос исключительно кодеками, рандомными задержками и джиттером.
Если проще: L1 - это тот самый _кодек_ собственно и есть.
Потому что L1 протокол - это не код. Это описание характеристик сигнала и принципов формирования и разбора (кодирования-декодирования) такового.
Плюс электрические (или оптические, или whatever) характеристики сигнала, линии, помех, whatever.
Так-то в v.34 не описывается всё это.
Требования к аналоговой телефонной линии - это, например, v.28.
V.34 это в основном про кодер, да, но те же характеристики спектра там есть, плюс оно всё в итоге на характеристики линий завязано. Но не суть. Тот же V.8 в V.34 тоже не описывается, но он нужен для согласования. Отрывать смысла нет.
> Надо сказать, fucks'ы поверх voip слегонца ходят даже без T.38.можно нинада? а то у меня от слова T.38 вьетна^Wкитайские флешбеки начинаются.
Написан на языке Си.. ахахаха
На языке, который ты никогда не осилишь.
А зачем осиливать Си если можно комфортно и с удовольствием писать на современном и безопастном языке системного программирования Rust??
Но ты способен только коменты строчить
Скоро мы и в ядро на Расте будем контробьютить, прогресс не остановить
Прими таблеточки
" безопастном" наглядный пример когда человек не может писать даже на memory safe русском языке ...
Думаю, что проект не может распространяться под GPL, т.к. в его составе проприетарный код (dsplib.o) без исходников.
В новости об этом упоминания нет. Это в первоначальном проекте с модулями ядра, в который смотрели разработчики D-Modem, был. Может, они уже заменили этот блоб открытым кодом?
Нет, ничего не заменили
https://github.com/AonCyberLabs/D-Modem/blob/master/slmodemd...В makefile так и линкуется (не откуда не пересобирается)
https://github.com/AonCyberLabs/D-Modem/blob/master/slmodemd...Я в новость пытался внести правку об этом, но видимо чем-то не устроило апруверов.
dsplib.o может быть под другой лицензией, допускающей линковку с GPL-кодом.
Впервые слышу о том, что можно прилинковать проприетарный код к GPL не нарушая GPL.
И про проприетарные модули ядра ничего не слышали, наверное?
И они прямо статически линкуются в ядро? Вы точно знаете как это работает?
Всё просто.Создаётся цепочка. GPL <---> BSD <---> Proprietary. Поэтому пермиссивки не спсобствуют Свободе. Пермиссивки только помогают проприетарщикам.
С GPL<-->BSD та же проблема, что с GPL<-->Proprietary, на самом-то деле.
GPL запрещает линковать его с проприетарью в качестве части проекта.Но обратное не обязательно, проект под GPL может распространяться под GPL, а проприетарная часть иметь пункт лицензии, допускающий линковку с GPL-проектами. Поскольку правки в исходный код проприетарной части ты внести, имея на руках исходники только GPL-проекта, не можешь, обязанность распространять исходники этой части согласно GPL не наступает.
---
The “System Libraries” of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it.
В принципе библиотека DSP - это Major Component, угу.Кроме того, если у GPL-кода и проприетари один владелец - он вправе добавить исключение, что при распространении исходный код конкретное этой библиотеки - по его, владельца GPL-кода и библиотеки совместно, решению - распространяться не обязан.
Впервые вижу, чтобы так кто-то делал, но по-моему это вполне законно для гпл и всегда было -- открытый код не является обязательным условием, главное чтобы с ним можно было слинковаться. Лицензия там бсд или типа того, и бсд лицензия не обязывает открывать код.
Каналы и сокеты лично Магомет использовать запретил ??
А как тогда оно например под 64 бита компилится?? Или под армами, например? Ведь 32-х битный код не прилинковать.
Known Issues / Future WorkConnections are unreliable, and it is currently difficult to connect at speeds higher than 14.4kbps or so. It might be possible to improve this by disabling/reconfiguring PJSIP’s jitter buffer.
Additional logging/error handling is needed
The serial interface could be replaced with stdio or a socket, and common AT configuration options could be exposed as command line options
There is currently no support for receiving callsчто, в общем, и понятно, учитывая направленность проекта:
Even in 2021, Aon’s Security Testing practice occasionally receives requests from our clients for penetration testing of systems accessible over dialup modem.
Не possible. Ребята похоже взяли библиотечку, и не особо разбирались, почему оно не работает.Проблемы три.
Первая - G.711. Характеристика преобразования уровня в G.711 нелинейна, и поэтому фазовые искажения начинаются уже с кодека, а для QAM фазовые искажения - это 3.14ц.
Вторая - джиттер и расхождения тайминга. Малейшее колебание между кодером и декодером - это уже очередное фазовое искажение. В случае джиттера условно "разовое", в случае погрешностей тайминга - постоянное и разрушающее. Все PSTN'ы не просто так на синхронных каналах с передачей тайминга работают, любой малейший перманентный битслип - и можно с теми же модемами прощаться.
Третья касается только выходов с VOIP на аналог. Погрешности кодера/декодера с аналога для голоса несущественны, а для модема - всё те же фазовые искажения, сдобренные частотными (редко) и нелинейными амплитудными (часто).
Такие дела. Аналоговые протоколы промежуточных (увеличивающих уровень шума) кодеков, а тем более - их нелинейных огрехов - зело не любят.
> Вторая - джиттер и расхождения тайминга. Малейшее колебание между кодером и декодером
> - это уже очередное фазовое искажение. В случае джиттера условно "разовое",
> в случае погрешностей тайминга - постоянное и разрушающее. Все PSTN'ы не
> просто так на синхронных каналах с передачей тайминга работают, любой малейший
> перманентный битслип - и можно с теми же модемами прощаться.^^^ this
остальное уже так, вишенки поверх этого пирога.
но опять же - похоже, connect 9600 их задачи вполне покрывает, есть что показать заказчику ==> PROFIT!!!
СИПоНЕТ однако...
Гипертекстовый, векторный
fghi area:
Чет сложновато. А есть чтоб просто данные через что угодно напрмер ГСМ или радио ?
Есть. IP называется.
А IP занимается во многом лишь путями передачи, а реально - всё на физическом уровне?
На физическом уровне у каждого носителя свои стеки, потому что среды капитально отличаются.
Silver bullet нет.Точнее, условно есть, называется 802.11 и его модификации, но у него свои лимиты по определённым вещам, то есть условно оно будет работать и по проводу, и через радио, и даже на нетрадиционных носителях типа светодиодов или лазера, но, повторюсь, там свои ограничения.
Плюс "радио" - очень широкое понятие. У каждого диапазона и расстояния свои характеристики, в атмосферных условиях одни, в безатмосферных другие, в жидких и твёрдых средах - третьи, и ещё от вещества зависит...
Варений сладкей, сонце теплый, земля вода мороженное. В детсадик ынторнеты провели уже ?
Этот аноним протух, несите следующего.
Получается нет открытого кода способного быть модемом? Вообще?
> Получается нет открытого кода способного быть модемом? Вообще?Есть, но для совсем низких скоростей - 2400 kbit/s (v22bis) и ниже.
https://github.com/proquar/asterisk-Softmodem
spandsp
Мост sip<->skype и врубать на собесе.
Ладно, подытожу, наверное.Вообще в случае SIP например всё это нафиг не нужно, проще использовать RFC4040 (97 - clearmode/8000), если уж совсем без SIP никак не обойтись, и не надо никаких "модемов". Есть мысль, что изначально стоило делать именно это - tty и AT-обвязку поверх clearmode, а не изголяться с проприетарным софтовым DSP.
Везде, где можно добратся до com порта, имеет смысл использовать эмулятор модема вроде TCPSER. Свистеть модемом по SIP-у в 2021 имеет смысл только для ретро-девайсов которые даже разобрать страшно, а их остались единицы. При этом надо учитывать что для "софтмодема" нужна хоть какая-то аналоговая АТС и SIP шлюз с FXO или FXS.
Не, я уже не про свистеть.
Я про то, если хочется отлаживать подобие модема на "типа телефонных вызовах".
Проще всего сэмулировать канал данных через clearmode, но не свистеть, а просто гнать данные поверх RTP, там придётся всего ничего - дописать эмуляцию AT и сделать минималистичную коррекцию при потере пакетов.
Ну, я б не сказал что так мучать SIP это проще. Есть ITU-T Rec. V.150.1 (01/2003) Modem-over-IP networks - но оно так и не взлетело, потому что это изначально плохая идея. TCPSER отлично по ATDT открывает telnet соединение куда надо и от модема его не отличить.
SIP удобен только тем, что есть легкодоступные SIP-шлюзы для аналоговых линий.
Ну давай, открой мне соединение сквозь два сип-шлюза к их локальным сетям :D
С другой стороны я согласен, всё это извращение давно пора закопать и не откапывать.
Попробовал ваш D-Modem + SPA3102 + USR5610, максимум 2400 v22bis.
v32 и выше - нет коннекта.Кто-нибудь здеь ещё пробовал? Какие результаты?
Самое главное - disable echo cancellation. Зафиксировать кодек на g.711 ulaw only (или alaw, тут надо пробовать что лучше заработает). потом можно отключить adaptive jitter buffer.
ах да, самое главное - не запускать в виртуалках или на wifi/usb сетевухах. только железо, только провода, только хардкор. Если появляется jitter на уровне udp пакетов, то всё - модемные штуки очень чувствсительны к таймингу.
Это всё так.
Эхо подавление изначально отключено.
Подстройка jitter буфера думал, что отключена, перепроверил - оказалась, что включена - отключил.
Стало лучше, как ни странно это даже по звуку сразу слышно.
Спасиб.
Иногда, где-то раз из 10 может подключиться на v32bis, но реально остаётся неюзабельно - сразу уходит на серию ретрейнов и отваливается.
Разницы между alaw и ulaw не замечено.Если интересно, так выглядит лог успешного (+/-) подключения:
<051.184042> state STATE_B(1)
<051.184060> state STATE_B(1)
<051.203901> state STATE_B2(2)
<051.643965> v32 Turn Around Delay = 23
<051.643993> state STATE_C(3)
<051.644016> state STATE_D(4)
<051.904461> v32 Turn Around Delay = 23
<051.904490> state STATE_D2(5)
<052.104654> state STATE_E(6)
<052.144370> state STATE_F(7)
<052.244326> state STATE_G(8)
<052.763914> AGC_Freeze
<052.764045> state STATE_H(9)
<052.884094> Decoder Error = 10758
<053.884765> Decoder Error = 9647
<054.884776> Decoder Error = 8382
<055.464163> state STATE_I(10)
<055.464195> state STATE_J(11)
<055.784581> state STATE_K(12)
<055.804462> state STATE_L(13)
<055.884148> Decoder Error = 6201
<055.904394> state STATE_M(14)
<056.324158> state STATE_N(15)
<059.204969> AGC_Release
<059.205014> state STATE_O(16)
<059.304872> sre no carrier
<059.304985> sre no carrier
<059.324065> sre no carrier
<059.484474> state STATE_P(17)
<059.583856> state STATE_Q(18)
<060.084669> AGC_Freeze
<060.084712> state STATE_R(19)
<060.344648> Decoder Error = 1388
<060.843991> state STATE_S(20)
<060.844055> state STATE_T(21)
<060.844165> state STATE_U(22)
<061.084438> state STATE_V(23)
<061.144375> state STATE_V(23)
<061.144420> v32: process: connect 1b.
<061.144443> v32: v32_update connect: tx_rate 14400, rx_rate 14400
<061.144473> slamr0: modem_update_status: 256
<061.144486> slamr0: --> DP LINK
<061.144495> slamr0: modem set state: 2 --> 4...
<061.144508> slamr0: new state: EC_ESTAB
<061.144518> slamr0: modem_update_status: 1024
<061.144536> slamr0: --> PACK LINK
<061.144547> slamr0: modem_update_status: 4096
<061.144557> slamr0: --> EC LINK
<061.144569> slamr0: modem set state: 4 --> 5...
<061.144588> slamr0: new state: MODEM_ONLINE
<061.144599> slamr0: modem report result: 1 (CONNECT)
<061.144629> main: socket_ioctl: cmd 8, arg 0...
<061.344045> Decoder Error = 444
<062.144277> V32STC - SNR drop observed, SNR = 20 < threshold = 24
<062.144312> Dec error = 196 (*64)
<062.144461> V32STC - SNR drop observed, SNR = 20 < threshold = 24
<062.144473> Dec error = 191 (*64)
<062.144592> V32STC - SNR drop observed, SNR = 20 < threshold = 24
<062.144608> Dec error = 186 (*64)
<062.144739> V32STC - SNR drop observed, SNR = 21 < threshold = 24
<062.144753> Dec error = 185 (*64)
<062.164288> V32STC - SNR drop observed, SNR = 21 < threshold = 24
<062.164328> Dec error = 183 (*64)
<062.164502> V32STC - SNR drop observed, SNR = 21 < threshold = 24
<062.164521> Dec error = 181 (*64)
<062.164683> V32STC - SNR drop observed, SNR = 21 < threshold = 24
<062.164701> Dec error = 181 (*64)
<062.164915> V32STC - SNR drop observed, SNR = 21 < threshold = 24
<062.164934> Dec error = 180 (*64)
<062.184157> V32STC - SNR drop observed, SNR = 21 < threshold = 24
<062.184193> Dec error = 178 (*64)
<062.184357> V32STC - SNR drop observed, SNR = 21 < threshold = 24
<062.184369> Dec error = 183 (*64)
<062.184379> 8 coseq SNR drops detected local retrain is initiated
<062.184395> AGC_Release
<062.184405> AGC Sep 22 2005 15:48:18
<062.184418> Reallocating FPM_FSE buffers<062.184444> AGC_Release
<062.184453> AGC Sep 22 2005 15:48:18
<062.184464> V32FP version: Sep 22 2005 15:48:07
<062.184474> V32FP Config: protocol=0,tx_rate=12000,rx_rate=12000,timeout=60000,energy_drop_time=700,tx_scale=17887,options=0x68b,trellis=1
<062.184493> state STATE_B2(2)
<062.604723> v32 Turn Around Delay = 23
<062.604776> state STATE_C(3)
<062.604910> state STATE_D(4)
<062.863974> v32 Turn Around Delay = 23
<062.864004> state STATE_D2(5)
<063.064245> state STATE_E(6)
<063.084495> state STATE_F(7)
<063.184385> state STATE_G(8)Дальше тоже самое с постепенным понижением скорости до 4800 и disconnect.
Если это:
v32 Turn Around Delay = 23в миллисекундах, то ИМХО выглядит неплохо для VoIP.
Когда пишет
V32STC - SNR drop observed, SNR = 20 < threshold = 24То это очень похоже, что так реагирует на ретрейн инициированный железным модемом,
несмотря на то что считает, что локально инициирует:
8 coseq SNR drops detected local retrain is initiated
Неуспешная попытка, когда сразу до CONNECT дело не доходит:<820.159638> state STATE_B2(2)
<820.859904> v32 Turn Around Delay = 23
<820.859939> state STATE_C(3)
<820.859967> state STATE_D(4)
<821.339401> v32 Turn Around Delay = 23
<821.339440> state STATE_D2(5)
<821.779500> state STATE_E(6)
<821.799963> state STATE_F(7)
<821.899548> state STATE_G(8)
<822.280253> Decoder Error = 4636
<822.439718> AGC_Freeze
<822.439752> state STATE_H(9)
<823.280259> Decoder Error = 7794
<824.279561> Decoder Error = 6775
<825.279576> Decoder Error = 6828
<825.779720> TimingVxx: Timing Offset [ppm] = 0
<826.279778> Decoder Error = 3855
<827.280397> Decoder Error = 2169
<827.819755> state STATE_ERROR(33)
<827.819803> v32: process: error.
<827.819869> slamr0: modem_update_status: 512
<827.819904> slamr0: --> FINISH.
<827.819930> slamr0: modem_hup...2
<827.819956> slamr0: modem set state: 2 --> 9...
<827.819980> slamr0: new state: DP_DISC
<827.820018> slamr0: modem_update_status: 512
<827.820032> slamr0: --> FINISH.
<827.820042> slamr0: modem_hup...9
<827.820062> slamr0: modem_stop..
<827.820076> main: socket_stop...
Раз уходит по SNR то попробуйте покрутить FXS Port Input/Output Gain, как в сторону увеличения, так и в сторону уменьшения. Может быть как слишком тихо, так и слишком громко, поэтому сигнал получается искаженный или зашумленный. Если бы был USR Courier, там по ATY16 можно было бы посмотреть АЧХ "линии".
Да, поправьте modem_cmdline.c; там параметр -e криво парсится, нужно указать MANDATORY,STRING в списке.
> Механизмы обработки сигналов и поддержки AT-команд, а также реализации протоколов V.32bis (14.4kbps) и V.34 (33.6kbps), заимствованы из готового драйвера ядра slmodemd, который был дополнен и урезан с учётом специфики проекта. Большая часть кода slmodemd закрыта, исходный код не поставляется, используется BLOB dsplib.o;Жирный минус.