MSD (Multi Stream Daemon) projekti algtekstid on tõlgitud BSD litsentsi alla ja lähtekood on avaldatud GitHubis. Varasemates algtekstides levitati ainult lühendatud versiooni msd_lite, samas kui põhitoode oli patenteeritud. Lisaks litsentsi muudatusele on tehtud töö macOSile portimise nimel (varasemalt toetas FreeBSD ja Linux).
MSD programm on mõeldud IPTV voo edastamise korraldamiseks HTTP protokolli kaudu. Üks server suudab teenindada korraga mitut tuhat klienti. Peamine tähelepanu on suunatud maksimaalse jõudluse saavutamisele ning delikaatsetele seadistustele, mis mõjutavad teenuse kvaliteeti klientide jaoks: kanalite vahetamise kiirus, kaotusteta edastuse usaldusväärsus. Tehtud on ühe-lot-proksi režiimi teostus: ühte HTTP ühenduse kaudu saadud andmeid saab jagada mitmekesistele ühendatud klientidele.
Omadused
- IPv4 ja IPv6 protokolli tugi.
- MPEG2-TS vooanaluja.
- Automaatne üleminek varusüsteemile, kui praeguses allikas ei ole saadaval või ilmnevad vead.
- Zero Copy on Send (ZCoS) — vähendab ühendatud klientide hoolduskulusid, andmete saatmise töö võtab enda peale OS-i tuum.
- Toetab „half closed” http-kliente.
- UDP-multicast vastuvõtt, sealhulgas RTP, samaaegselt erinevatelt liidestelt.
- TCP-HTTP-get vastuvõtt (ühes voos ja saatmine paljudele klientidele).
- Automaatne lahtiühendamine allikatest, kui kliente pole ühendatud.
- Erinevate TCP Congestion Control algoritmide kasutamine sõltuvalt sadamast, kuhu klient tuli, ja kliendi URL-i päringust.
- „Nutikas” MPEG2-TS pealkirjade saatmine uutele klientidele.
- Uuele kliendile andmete kohene saatmine ringpuhverest, et vähendada ooteaega esituse alustamisel.
- Mitsuguste lisateavet HTTP-pealkirjade saatmine päringutes ja vastustes.
- Stream Hub ja voogude allikate seadistusmallid.
- Iga TCP-ühenduse üksikasjalik statistika, et lihtsustada probleemide leidmist võrgu tasemel.
Allikas: opennet.ru
