Projektets msd (Multi Stream daemon) källtexter har översatts till BSD-licens, och källkoden har publicerats på GitHub. Tidigare spreds endast en förkortad version, msd_lite, medan huvudprodukten var proprietär. Utöver licensändringen har arbete genomförts för att portera till macOS (tidigare stöddes FreeBSD och Linux).
Programmet msd är avsett för att organisera IPTV-strömning över nätverket via HTTP-protokollet. En server kan hantera flera tusen kunder samtidigt. Fokus har lagts på att uppnå maximal prestanda samt på att erbjuda fina inställningar som påverkar hur tjänsten uppfattas av kunderna: hastighet för kanalbytes, motståndskraft mot överföringsfel. Proxytjänst har implementerats i "en till många" läge: data som erhållits via en HTTP-anslutning kan distribueras till ett stort antal anslutna kunder.
Egenskaper
- Stöd för protokoll IPv4 och IPv6.
- MPEG2-TS strömanalysator.
- Automatisk switchover till backup vid avbrott eller fel på den aktuella källan.
- Zero Copy on Send (ZCoS) minskar overheadkostnaderna för att underhålla anslutna kunder, hela arbetsbördan för att skicka data till kunden hanteras av operativsystemets kärna.
- Stöd för "half closed" http-kunder.
- Mottagning av udp-multicast, inklusive rtp, samtidigt från olika gränssnitt.
- Mottagning via tcp-http-get (i en ström och sändning till många kunder).
- Automatisk koppling från källor om det inte finns några anslutna kunder.
- Användning av olika TCP Congestion Control-algoritmer beroende på porten som kunden kom in på och kundens URL-förfrågan.
- "Smart" sändning av MPEG2-TS rubriker till nya kunder.
- Omedelbar sändning av data från ringbufferten till en ny kund för att minimera väntetiden för att börja spela.
- Sända alla ytterligare http-rubriker i förfrågningar och svar.
- Inställningsmallar för Stream Hub och strömkällor.
- Detaljerad statistik för varje TCP-anslutning för att underlätta felsökning på nätverksnivå.
Källa: opennet.ru
