برنامج تدفق msd مفتوح المصدر بموجب ترخيص BSD.

تمت ترجمة الكود المصدري لمشروع msd (Multi Stream daemon) إلى ترخيص BSD، وتم نشر الكود المصدري على GitHub. في السابق، تم توزيع نسخة مختصرة فقط من msd_lite في الكود المصدري، وكان المنتج الرئيسي ملكية خاصة. بالإضافة إلى تغيير الترخيص، تم العمل على نقله إلى منصة macOS (تم دعم FreeBSD وLinux سابقًا).

تم تصميم برنامج msd لتنظيم بث IPTV على الشبكة باستخدام بروتوكول HTTP. خادم واحد قادر على خدمة عدة آلاف من العملاء في وقت واحد. ينصب التركيز الرئيسي على تحقيق أقصى قدر من الأداء، بالإضافة إلى توفير الإعدادات الدقيقة التي تؤثر على جودة تصور العميل للخدمة: سرعة تبديل القنوات، ومقاومة فشل الإرسال. تم تنفيذ الوكيل في وضع "واحد إلى متعدد": يمكن توزيع البيانات المستلمة من خلال اتصال HTTP واحد على العديد من العملاء المتصلين.

ملامح

  • يدعم بروتوكولات IPv4 وIPv6.
  • محلل تيار MPEG2-TS.
  • التحول التلقائي إلى النسخ الاحتياطي في حالة الغياب أو وجود أخطاء في المصدر الحالي.
  • Zero Copy on Send (ZCoS) - يقلل من الحمل الزائد لخدمة العملاء المتصلين؛ حيث تتولى نواة نظام التشغيل كل أعمال إرسال البيانات إلى العميل.
  • دعم لعملاء http "نصف المغلقين".
  • استقبال البث المتعدد UDP، بما في ذلك RTP، في وقت واحد من واجهات مختلفة.
  • الاستقبال عبر tcp-http-get (في دفق واحد والبث لعدة عملاء).
  • قطع الاتصال التلقائي من المصادر في حالة عدم وجود عملاء متصلين.
  • استخدام خوارزميات مختلفة للتحكم في ازدحام TCP اعتمادًا على المنفذ الذي جاء إليه العميل وعنوان URL لطلب العميل
  • إرسال "ذكي" لرؤوس MPEG2-TS إلى العملاء الجدد.
  • قم بإرسال البيانات على الفور من المخزن المؤقت للحلقة إلى العميل الجديد لتقليل وقت الانتظار لبدء التشغيل.
  • إرسال أي رؤوس http إضافية في الطلبات والاستجابات.
  • قوالب الإعدادات لمركز الدفق ومصادر الدفق.
  • إحصائيات مفصلة لكل اتصال TCP لتبسيط البحث عن المشاكل على مستوى الشبكة.

المصدر: opennet.ru

إضافة تعليق