LINUX.ORG.RU

А есть какой-то протокол, полностью аналогичный IBM Aspera, но без энтерпрайз-тупака?

 , , upd


0

1

Приветствую!

Имеется следующая задача:

1. Передача файлов или потоковых данных
2. У клиентов может быть высокий ping и нехилый packet loss (бОльший чем в стандартных проводных сетях, вплоть до 50%)
3. Нужно отправлять данные, при этом как можно сильнее избежать потерю скорости из-за высоких задержек

Существует уже готовое решение, о котором можно подробно прочитать вот тут: https://habr.com/ru/company/ibm/blog/274807/

В чём его проблема?

1. Адская огороженность - типичная для толстенного энтерпрайза
2. Отсутствие библиотеки в свободном доступе (имеется ввиду не свободное ПО, а вообще наличие .so .h где-либо в интернете)
3. Эту технологию IBM вообще убрал из своего сайта. Вместо этого он предлагает какой-то клауд с передачей файлов. Т.е. никакой интеграции и близко нет и не будет.
4. Саппорт IBM - цирк с конями. По поддержке IBM нет общей поддержки, вместо этого предлагают поддержку для кастомеров. Поддержка для кастомеров обычным людям недоступна (нет customer id), нужно создавать тикет и просить чтобы зарегали тебя как кастомера. ШТО?

В общем, всё очень и очень плохо. Их сайт вызывал у меня максимум раздражения и ненависти.

Есть какие-то аналоги? Что тут вообще можно посоветовать?

UPD: Решение найдено - QUIC. А IBM - жадные проприетасты.

★★★★★

Последнее исправление: reprimand (всего исправлений: 1)

BitTorrent пробовал? Конечно, из коробки потоков нет, но при необходимости можно допилить — отдельные клиенты уже имеют фичу «получать части последовательно».

byko3y ★★★★
()

https://habr.com/ru/company/ibm/blog/274807/

Одна маркетинговая вода - какие мы замечательные, но тохда почему ибм это похоронил? А по теме да - в quic/http3 много чего есть и даже больше. https://github.com/litespeedtech/lsquic в докере развернуть и попробовать - 20 минут.

vtVitus ★★★★★
()
Последнее исправление: vtVitus (всего исправлений: 1)

А можно ли сказать про задачу в более общем виде? Это стриминг видео, или что?

SZT ★★★★★
()
Ответ на: комментарий от byko3y

слишком долго битторрент раскочегаривается
У меня хоть и не realime, но ждать доставки файла через 30 секунд - неприемлимо

reprimand ★★★★★
() автор топика
Ответ на: комментарий от token_polyak

Фейсбуковый WDT выглядит неплохо, хотя там ни слова нет про поведение протокола в ситуации когда большой пакетлосс

reprimand ★★★★★
() автор топика
Ответ на: комментарий от reprimand

Вполне вероятно, что всё так, но развитие мало активное. В UFTP, например, есть поддержка ECDSA, но нет Ed25519.

token_polyak ★★★★★
()
Последнее исправление: token_polyak (всего исправлений: 1)
Ответ на: комментарий от vtVitus

Одна маркетинговая вода - какие мы замечательные, но тохда почему ибм это похоронил?

Он не похоронил, он понял что это нужно очень крупным клиентам, которых мало. Также он выделил этот проект в какой-то клауд (не совсем понимаю какой, не вникал)

ЕМНИП mail.ru для видеостриминга у себя использует

А по теме да - в quic/http3 много чего есть и даже больше. https://github.com/litespeedtech/lsquic в докере развернуть и попробовать - 20 минут.

Спасибо, гляну на QUIC

reprimand ★★★★★
() автор топика
Ответ на: комментарий от SZT

Стриминг аудио, но НЕ realtime и НЕ VOIP

Конечному приложению нужно хорошо работать в условиях сети с большой задержкой (типично для 4G/HSDPA/3G), т.е. мы не ждём на каждый пакет ACK. Кроме того мне лично важно как можно более быстро получить первый блок из файла, т.е. bittorrent явно в пролёте

reprimand ★★★★★
() автор топика
Ответ на: комментарий от reprimand

Со временем отшлифуют, это неизбежное будущее, для нового проекта можно на это закладываться.

Legioner ★★★★★
()
Ответ на: комментарий от reprimand

если точек входа для множества слушателей мало - HLS, тебе нужна только реалтайм резалка или предварительная резалка, и отдавать нжинксом. работает поверх хттп, много фич, посмотри возможности.

deep-purple ★★★★★
()

Тут вот например говорят, что fdt может быть вполне альтернативой.

beastie ★★★★★
()
Ответ на: комментарий от reprimand

а у плееров всегда есть предварительный буфер, так, они в запас качают и на несколько сек в прошлом звучат.

deep-purple ★★★★★
()
Ответ на: комментарий от reprimand

Думаю, под такую задачу можно свой протокол попробовать изобрести, как вот тут https://habr.com/ru/company/oleg-bunin/blog/413479/ например описывают.

Можно например предусмотреть, чтобы клиент сообщал серверу о проценте потерянных пакетов, и чтобы сервер как-то при этом менял размеры пакетов и/или добавлял избыточность. Например, может оказаться, что если пакеты размером в 300 байт, то потерь 50% а если размеры 100 байт - 10%, это можно как-то предварительно измерять и выбрать оптимальный размер. И уровень избыточности выбирать исходя из таких-то потерь.

SZT ★★★★★
()
Последнее исправление: SZT (всего исправлений: 1)
Ответ на: комментарий от avicxx

Спасибо за ссылку!

Никоим образом не хочу как-то понизить значимость этой работы или еще что-то подобное, но я по своему опыту нахожу некую корреляцию между:

1. В ридми есть всё кроме самого главного - ЧТО ЭТО ТАКОЕ, зачем оно нужно, и чем оно отличается от других
2. Автору глубоко насрать на свою работу в любом контексте помимо повышения собственного ЧСВ

reprimand ★★★★★
() автор топика
Ответ на: комментарий от reprimand

UPD: А, там китайщина и golang, это сразу 🗑🗑🗑

reprimand ★★★★★
() автор топика
Ответ на: комментарий от reprimand

ЧТО ЭТО ТАКОЕ

Это туннель на базе протокола KCP. Протокол KCP — это надстройка над UDP для работы в совсем уж убогих сетях с большими потерями, типа сотового модема на грани приёма или тропосферной радиорелейной связи. https://habr.com/ru/post/358126/

Трафик через него можно завернуть с помощью Shadowsocks.

avicxx
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.