اطلاعیه

بستن
هنوز اطلاعیه ای در دست نیست.

Codec (کدک) چیست؟ معرفی انواع پروتکل های Voip مانند SIP, IAX, H323 در Asterisk

بستن
این موضوع بسته شده است.
X
X
 
  • فیلتر کردن
  • زمان
  • نمایش
Clear All
پست های جدید

    Codec (کدک) چیست؟ معرفی انواع پروتکل های Voip مانند SIP, IAX, H323 در Asterisk

    قدمت صنعت مخابرات و ارتباطات از راه دور بالغ بر 100 سال میباشد، استریسک اگر همه تکنولوژی های مورد استفاده در قرن اخیر را در بر نگرفته باشد بخش اعظمی از آن را هم پوشانی نموده است برای کار با استریسک نیاز نیست که شما در تمام بخش های آن متخصص باشید ولی درک خوبی از تفاوت هایی موجود بین انواع کدک ها و پروتکل ها به شما دید بهتری از کل سیستم میدهد.

    در این بخش به توضیح این مفاهیم پرداخته که چگونه شبکه های ویپ متفاوت با شبکه های voice مدار سویچ کار میکنند. هم چنین به بررسی امنیت و توانایی ها این پروتکل در توپولوژی هایی همچون NAT مخفف Network Address Translation می پردازیم.

    در ادامه پروتکل های زیر مورد بحث قرار میگیرد :
    • IAX
    • SIP
    • H.323
    • MGCP
    • Skinny/SCCP
    • UNISTIM




    کدک (Codec) چیست ؟
    کدک تکنولوژیست که با استفاده از آن صداهای آنالوگ به یک سیگنال دیجیتال تبدیل شده و میتواند از طریق اینترنت انتقال یابد. پهنای باند در هر مکانی محدود است و تعداد تماس های همزمان هر ارتباطی مستقیما به نوع کدک مورد استفاده مربوط میباشد.

    در این تاپیک همچنین به تفاوت هایی بین کدک های زیر از لحاظ پهنای باند (سطح فشرده سازی) و کیفیت میپردازیم :
    • G711
    • G726
    • G729A
    • GSM
    • ILBC
    • SPEEX
    • MP3



    نیاز به پروتکل های ویپ :
    بنیاد اساسی ویپ در واقع پکت سازی جریان های صوتی به منظور انتقال از طریق شبکه مبتنی بر پرتکل اینترنت میباشد . چالش های مربوط به پیاده سازی این Packetization به شیوه ای که بشر با یکدیگر ارتباط برقرار میکند بستگی دارد. سیگنالهای دریافتی نه تنها ضرورتا باید به فرمی که ارسال شده باشند بلکه باید در کمتر از 150 میلی ثانیه انتقال یابند. اگر Packet Lost یا Delay داشته باشند در کیفیت ارتباط تنزل ایجاد کرده که به معنای مشکل در ارتباط بین دو نفر میباشد.

    #2
    معرفی پروتکل iax,iax2

    IAX,IAX2
    IAX مخفف Inter Asterisk eXchange میباشد، اگر شما ادعا میکنید که از افرادی هستید که استریسک میدانید شما را باید با تلفظ نام این پروتکل تست کرد . به نظر میرسد که شما بگویید "آی ای ایکس" اما این کلمه به سختی در زبان میچرخد خوشبختانه تلفظ درست در حقیقت "eeks" میباشد . IAX یک پروتکل باز میباشد که به این معنی است که هر کسی میتواند آنرا دانلود و توسعه دهد . در استریسک این پروتکل توسط ماژول chan_iax2.so پشتیبانی میشود.


    تاریخچه :
    پرتکل IAX توسط دیجیوم به منظور برقراری ارتباط با دیگر سرورهای ایجاد گردیده، نکته مهم اینست که این پروتکل تنها به استریسک محدود نمیشود استاندارد آن برای هر کسی قابل استفاده میباشد و توسط دیگر مراکز مخابراتی و سخت افزار های دیگر هم پشتیبانی میشود.

    IAX2 نسخه دوم این پرتکل هست که تفاوتش با نسخه قبلی اینه که IAX2 نویز کمتری نسبت به IAX میگیره.

    IAX یک پروتکل انتقال (بسیار شبیه SIP) میباشد که یک پورت مستقل UDP به شماره 4569 را برای هر دو کانال سیگنالینگ و جریانهای مدیا را استفاده میکند. و این پورت باعث میشود هنگامی که پشت فایروال های NAT شده قرار میگیرد مدیریت آن آسانتر میشود.

    همچنین IAX توانایی منحصر به فردی در ایجاد ترانک بین چندین ارتباط به یک گردش داده میباشد که منجر به افزایش بالای پهنای باند به هنگام ارسال تعداد زیادی کانال هم زمان به یک سرور میشود.

    این پروتکل دارای یک هدر دیتاگرام مجزار میباشد که OverHead مربوط با چنل های مجزا را کاهش میدهد. این اتفاق باعث کاهش تاخیر و قدرت مورد نیاز برای پردازش و پنهای باند را میشود که به پروتکل اجازه میدهد تا چنل های فعال را بسیار بسیار اسانتر هندل کند. اگر شما تعداد زیادی تماس های IP بین دو EndPoint دارید شما باید یک بررسی روی ترانک IAX داشته باشید.


    Future :
    IAX برای انتقال صدا بسیار مطلوب است اما شکایاتی مبتنی بر عدم ساپورت خوب روی ویدئو رسیده است در حقیقت IAX پتانسیل خوبی برای انتقال هر نوع جریان مدیایی میباشد. از آنجایی که IAX یک پروتکل باز میباشد تمامی انواع مدیا های آینده که توسط آن جامعه مورد در خواست باشند مشخصا در این پروتکل گنجانده خواهند شد.


    بررسی های امنیتی :
    IAX به 3 شیوه Authenticate میکند:
    plain text (متن ساده)
    MD5 Hashing

    تبادل RSA Key
    این پروتکل چیزی برای Encrypt کردن مسیر مدیا یا هدرها بین دو EndPoint ندارد. راه حل های زیادی موجود هستند مثل استفاده از اپلیکیشن های VPN یا نرم افزار هایی برای رمز گذاری جریان مدیا در لایه دیگری از تکنولوژی که End Pint ها که باید به گونه ای این تونل ها را از قبل باز و کانفیگ کنند.

    به هر حال در حال حاضر IAX قادر به رمز گذاری جریانهای مدیا بین End Pint ها با تبادل کلید های داینامیک در اجرای تماس میباشد (با استفاده از گزینه Encrption=aes128).


    NAT و IAX :
    پروتکل IAX عمدا به منظور استفاده پشت تجهیزاتی که NAT را اجرا میکنند طراحی گردیده است. استفاده از یک پورت UDP مجزا هر دو نوع مدیا (سیگنالینگ و انتقال) تعداد حفره های مورد نیاز در فایروال شما را به حداقل میرساند. این بررسی ها باعث شده که IAX یکی از آسانترین پروتکل ها برای پیاده سازی در شبکه های امن باشد.
    آخرین ویرایش توسط Habili; در تاریخ/ساعت 02-27-2016, 08:10 PM.

    کامنت


      #3
      معرفی پروتکل sip

      SIP :
      Session Initiation Pratocol یا SIP همچون کولاک صنعت مخابرات و ارتباطات را تحت قبضه خود گرفته، SIP پروتکل H323 را که به عنوان اولین پروتکل ویپ انتخاب میشد خلع رتبه نمود. (قطعا در End Point های شبکه).

      اساس پروتکل SIP اینست که هر سمت یک ارتباط ، در حقیقت یک Peer میباشد و پروتکل توانایی های بین آن دو را تبادل میدهد. آنچه که باعث میشود این پروتکل یک پروتکل فوری فوتی شود این است که پروتکل بسیار ساده با یک ساختار شبیه به پروتکل های اشنای دیگر همانند HTTP و SMTP میباشد. این پروتکل در استریسک توسط ماژول chan_sip.so ساپورت میشود.


      تاریخچه :
      پروتکل SIP در فوریه سال 1996 به عنوان "draft-ietf-mmusic-sip-00" به IETF (یا Internet Engineering Task Force) واگذار شد. پیش نویس اولیه اصلا شبیه این چیزی نبود که ما امروزه به عنوان SIP میشناسیم و تنها شامل یک نوع درخواست مجزا بود.

      درخواست ایجاد یک تماس در مارس سال 1999 بعد از 11 بار تجدید نظر SIP RFC 2543 به وجود آمده است. علت موفقیت این پروتکل به دلیل اینست که به طور ریگان در دسترس میباشد. SIP یک پروتکل سیگنالینگ application-layer میباشد که پورت معروف 5060 را برای ارتباطات خود استفاده میکند. SIP از طریق هر دو پروتکل های transport-layer زیر منتقل میشود :
      (TCP - UDP)

      استریسک در حال حاضر پروتکل TCP را برای انتقال پیام های SIP اجرا نمیکند اما ممکن است در ورژنهای آینده (و یا Pach ها) این پروتکل ساپورت کند. SIP به منظور انتشار، تغییر و اتمام پکت های Multimedia مانند تماس تلفنی اینترنت استفاده میشود.

      SIP، مدیا (مانند صدا) را بین End Point ها انتقال نمیدهد. در عوض پروتکل RTP مخفف Real-Time Transport به این منظور استفاده میشود. RTP پورت های با شماره بالا و غیر ممتاز را در استریسک مورد استفاده قرار میدهد. (به طور پیش فرض از 10000 تا 20000)

      یک توپولوژی معمول برای نمایش SIP و RTP، توپولوژی ذوزنقه SIP میباشد که در شکل B-1 نمایش داده میشود . زمانی که Alice میخواهد به Bob تماس بگیرد، تلفن Alice با سرور پروکسی اش تماس میگیرد و پروکسی تلاش میکند تا Bob را پیدا کند. (اغلب از طریق پروکسی Bob متصل میشود)

      زمانی که تلفن ها شروع به زنگ خوردن میکنند، آنها مستقیما به یکدیگر متصل میشوند (در صورت امکان) به طوریکه Data منابع پروکسی را محدود نمی کنند.

      SIP نه اولین پروتکل بود و نه تنها پروتکل ویپ میباشد (بقیه شامل H323 و MGCP و IAX و ...) اما در حال حاضر به نظر میرسد که بیشترین همخوانی را با انواع سخت افزار ها دارد. فایده این پروتکل در پذیرش وسیع و انعطاف پذیری معماری آن است (که ما از روی عادت به آن سادگی میگوییم)

      برای بزرگتر شدن عکس روی آن کلیک کنید

نام:	sip protocol.PNG
نمایش ها:	1
اندازه:	16.8 KB
شناسه:	17284


      آینده :
      SIP به عنوان پروتکل مطلوب و دلخواه جای خودش را در VOIP به دست آورده است. از همه کاربران جدید و محصولات Enterprise انتظار میرود که SIP را ساپورت نمایند و محصولات موجود به سختی فروش خواهد رفت مگر تغییر جهتی به سمت SIP در آنها ارائه گردد. از SIP انتظاراتی فراتر از توانایی های VOIP میرود همچون توانایی انتقال ویدئو ، موزیک و هر نوعی از مولتی مدیا های Real-Time (سریع) .


      بررسی های امنیتی :
      پروتکل SIP برای Authenticate کاربران از یک سیستم پرسش و پاسخ استفاده میکند. دعوت اولیه ای به پروکسی ارسال میشود به همراه وسیله مقصدی که میخواهد ارتباط برقرار کند. سپس پروکسی یک پیام 407 (Proxy Authorization Reqaest) بر میگرداند که شامل یک گروه تصادفی از کاراکتر هاست که Nonce شناخته میشود. این Nonce سازگار با پسورد که توسط یک MD5 Hash تولید شده، مورد استفاده قرار میگیرد که سپس در عودت بعدی برگشت داده میشود. اگر MD5 Hash با چیزی که پروکسی ایجاد میکند یکسان باشد، سپس کلاینت Authenticate میشود.

      حملات DOS (انکار سرویس) شاید رایجترین نوع حمله در ارتباطات Voip میباشد. یک حمله DOS زمانی اتفاق می افتد که تعداد زیادی از درخواست های دعوت غلط (نا معتبر) به یک پروکسی سرور و به منظور به هم ریختن سیستم ارسال میشود. این حملات به سادگی قابل اجرا هستند و تاثیرات آنها روی کاربران سیستم بسیار سریع میباشد. SIP روش های زیادی برای کاهش اثرات این حملات دارد اما در نهایت آنها غیر قابل پیشگیری هستند.

      پروتکل SIP، طرحی را برای ضمانت یک مکانیزم انتقال امن و رمز گذاری شده اعمال میکند به نام TLS مخفف Transport Layer Security یا امنیت لایه انتقال که به منظور انتشار ارتباط بین تماس گیرنده، سرور دریافت کننده تماس مورد استفاده قرار میگیرد.

      علاوه بر آن Request به گونه ای امن برای وسیله مقصد ارسال میشود که بر اساس سیاست های امنیت Local در شبکه میباشد.
      توجه کنید که رمز گذاری مدیا (جریان RTP) فراتر از حوزه خود SIP است و باید به صورت مجزا به بررسی آن پرداخت.


      SIP و NAT :
      شاید بزرگترین مانع تکنیکی که SIP باید بر آن غالب بیاید چالش برای عبور از طریق یک لایه NAT است زیرا SIP اطلاعات آدرس را در فریم های دیتابیس خودش Encapsulate میکند و NAT در یک لایه شبکه پایینی اتفاق می افتد، اطلاعات آدرس دهی به صورت اتوماتیک تغییر نمیکند و در نتیجه جریانهای مدیا، اطلاعات آدرس درستی که برای تکمیل ارتباط در صورت وجود NAT مورد نیاز است را نخواهد داشت.

      علاوه بر آن، عموما فایروال های همراه NAT بررسی ای روی جریان مدیایی ورودی نخواهد داشت که آیا این مدیا بخشی از تراکنش SIP است یا نه و ارتباط را مسدود خواهند کرد.

      فایروال های جدید و SBC ها (Session Border Controller) سازگار با SIP هستند، اما این مقوله هم به تازگی در حال بررسی میباشد و این بدان معنی است که همچنان برای کانکشن های SIP، متخصصان شبکه باید زحمت بکشند.
      آخرین ویرایش توسط Habili; در تاریخ/ساعت 03-20-2016, 10:47 AM.

      کامنت


        #4
        معرفی پروتکل h323

        H323 :
        پروتکل H323 که در واقع پروتکل (ITU) اتحادیه مخابرات بین المللی میباشد به منظور یک مکانیزم انتقال ip برای ویدئو کنفرانس طراحی گردید. این پروتکل در تجهیزات مبتنی بر ip ویدئو کنفرانس به یک استاندار تبدیل شده و از این بهتر اینکه به عنوان یک پروتکل voip مشهور شد در حالی که رقابت بین SIP و H323 و IAX بر سر اینکه کدام یک بر دنیای ویپ در استریسک تسلط پیدا خواهند کرد بسیار داغ بود H323 به نفع IAX و SIP از صفحه کنار رفت.

        این پروتکل در بین کاربران و Enterprise ها موفقیت خود را از دست داد اگر چه که امروزه هنوز یکی از پروتکل های ویپ است که در میان کاربران در سطح وسیعی مورد استفاده قرار میگیرد. هر سه ورژن این پروتکل در استریسک ساپورت میشوند و توسط ماژول های chan_h323.so (که توسط استریسک فراهم آمده)، chan_oh323.so (در دسترس از طریق یک addon رایگان) و chan_ooh323.so (فراهم شده در asterisk-addons) شما ممکن است حتی از این پروتکل استفاده کنید بدون اینکه بدانید. کلاینت Microsoft’s NetMeeting به طور حتم کلاینت وسیعا گسترش یافته H323 میباشد.


        تاریخچه :
        H323 توسط ITU در ماه می سال 1996 و با عنوان انتقال ارتباطات ویدئو، صدا، دیتا و فکس از طریق شبکه مبتنی بر IP گسترش یافت در حالی که با خطوط شهری هم در ارتباط بود. از آن زمان به بعد چندین ورژن و ضمیمه (که قابلیت هایی را به پروتکل اضافه میکرد) هم منتشر شد که استفاده از این پروتکل را در شبکه Voip آسانتر می ساخت.


        آینده :
        آینده این پروتکل هنوز در حاله ای از اشک و ابهام است اینکه مدیا در هر اندازه ای باشد برای H323 خوب نیست. حتی به سختی از آن یاد میشود (قطعا sip اولین انتخاب است اغلب از لحاظ تکنیکی H323 برتر از sip در نظر گرفته میشود اما به ندرت یافت میشود که فاکتوری به عنوان موفقیت در پروژه محسوب شود. یکی از عواملی که باعث میشود H323 منفور و منسوخ شود پیچیدگی آن است (اگر چه از نظر بعضی ها یک sip ساده هم چنین مشکلاتی را در ابتدا داشت)

        اگر چه همچنان بعضی از دست اندرکاران voip هنوز از این پروتکل بهره میجویند اما هر چه قدر که مردم نیازشان به سیستم های سنتی کم و کمتر میشود و به سرور های ویپ رو میآورند پیش بینی در مورد آینده H323 سخت تر میشود. اگر چه در پیاده سازی سرورهای ویپ ممکن است این پروتکل انتخاب نگردد ولی انتظار میرود که شما قطعا زمانی نیاز به H323 داشته باشید.


        بررسی روی امنیت :
        H323 پروتکلی نسبتا امن است و به بررسی های امنیتی که در هر شبکه ای رخ میدهند (با وجود اینترنت) نیاز چندانی ندارد. از آنجایی که H323 از پروتکل RTP برای ارتباطات مدیا استفاده میکند ذاتا نیاز به پشتیبانی از مسیرهای مدیایی رمز گذاری شه ندارد. استفاده از یک VPN یا دیگر تونل های رمز گذاری شده بین EndPoint ها رایج ترین راه امنیت بخشیدن به ارتباطات Encapsule شده می باشد. البته از معایبی که این کار دارد این است که نیاز به انتشار این تونل های بین دو EndPoint میباشد که همیشه کار آسان و یا حتی کار ممکن نیست همانطور که voip رایج تر میشود و در شبکه موسسات مالی مانند بانک ها مورد استفاده قرار میگیرد ما به داخلی هایی نیاز پیدا میکنیم که از پروتکل های Voip استفاده کنید پروتکل هایی با روش های قوی رمز گذاری.


        H323 و NAT :
        استاندار H323 از پروتکل RTP برای انتقال مدیا بین EndPointها استفاده میکند . به همین دلیل H323 هم با شکلی مانند SIP در مقابل با شبکه هایی که شامل توپولوژی های NAT هستند روبه روست. آسانترین روش فوروارد کردن پورت های مناسب از طریق وسیله NAT به کلاینت داخلی تان می باشد.

        برای دریافت تماس شما همیشه نیاز خواهید داشت که پورت TCP به شماره 1720 را به کلاینت فوروارد کنید. به علاوه شما نیاز خواهید داشت که پورت های UDP را برای جریانهای کنترل RTCP و مدیای RTP فوروارد کنید. (دفترچه راهنمای وسیله خود را به منظور رنج پورت مورد نیاز چک کنید)

        کلاینت های قدیمی تر مانند Microsoft Net Meeting هم به پورت های فوروارد شده TCP برای تونل H245 دارند. اگر شما تعداد کلاینت پیش NAT دارید، شما باید از یک Gate Keeper در مد پراکسی استفاده کنید. Gate Keeper به یک اینترفیس به همراه یک subnet private ip و اینترنت public نیاز خواهد داشت. کلاینت های H323 شما روی Subnet Private Ip روی gate keeper ریجیستر خواهد شد که تماس ها را به نفع کلاینت فیلتر خواهد کرد. توجه کنید که هر کلاینت خارجی که میخواهد با شما تماس بگیرد نیاز دارد که در پراکسی سرور ریجیستر شود. در این زمان استریسک نمی تواند مانند یک Gate Keeper H323 عمل کند. شما باید از یک اپلیکیشن مجزا مانند Open Source OpenH323 GateKeeper استفاده کنید.
        آخرین ویرایش توسط Habili; در تاریخ/ساعت 02-27-2016, 07:59 PM.

        کامنت


          #5
          معرفی پروتکل mgcp

          MGCP :
          Media Gateway Control Protocol هم از IETF به وجود آمده است. گسترش این پروتکل شایع تر از ان چیزی است که در ذهن میآید.

          MGCP به سرعت فرصت خود را بین پروتکل های دیگر (SIP و IAX) از دست داد. هنوز هم استریسک به پروتکل هایی که در ابتدا آنها را پشتیبانی میکرد عشق می ورزد. MGCP در RFC343S تعریف شده است این پروتکل برای هر چی آسانتر کردن وسیله های مقصدی چون تلفن ها ایجاد شد و تمامی مراحل پردازش و استدلال تماس توسط گیت وی های مدیا و Call Agent صورت میگیرد.

          مخالف آنچه SIP رفتار میکند در MGCP از یک مدل متمرکز استفاده میشود. (تلفن های MGCP نمیتوانند مستقیما با دیگر تلفن ها MGCP تماس بگیرند) آنها همیشه باید از طریق یکسری از کنترلرها تماس بگیرند.

          استریسک با استفاده از ماژول chan_mgcp.so این پروتکل را پشتیبانی میکند و EndPoint ها باید در فایل کانفیگ mgcp.conf تعریف شوند. از آنجایی که استریسک تنها سرویس ها عامل تماس پایه را فراهم میآورد نمیتواند از یک تلفن MGCP برای ریجیستر در یک MGCP Controller دیگر به عنوان یک عامل کاربری تقلید کند.

          اگر شما تعداد تلفن MGCP دارید شما قادر خواهید بود که در استریسک از آنها استفاده کنید اگر شما میخواهید این تلفن ها را در سیستم استریسک خود استفاده کنید در خاطر داشته باشید که جامعه به سمت پروتکل های معروف و عمومی تر پیش میرود و در نتیجه شما برای پشتیبانی نرم افزاری متعاقبا نیاز به صرف بودجه بیشتری خواهید داشت. اگر ممکن باشد (برای مثال با تلفن های سیسکو) شما باید تلفن های MGCP را به SIP آپگرید کنید.


          پروتکل های اختصاصی
          سرانجام نگاهی به دو پروتکل اختصاصی می اندازیم که در استریسک ساپورت میشوند.
          Skinny/SCCP :

          ادامه دارد ... .
          آخرین ویرایش توسط Habili; در تاریخ/ساعت 02-27-2016, 08:00 PM.

          کامنت

          درباره انجمن منطقه لینوکسی ها

          انجمن منطقه لینوکسی ها با هدف ارتقاء سطح علمی کاربران در سطح جهانی و همچنین کمک به بالا بردن سطح علمی عمومی در زمینه های تخصصی فوق پایه گذاری شده است. انجمن منطقه لینوکسی ها از طریق کارشناسان و متخصصان پاسخگوی سوالات گوناگون کاربران مبتدی یا پیشرفته میباشد تا حد امکان تلاش شده که محیطی متنوع و کاربر پسند و به دور از هرگونه حاشیه جهت فعالیت کاربران در این انجمن ایجاد شود. لذا ما به صورت مستمر برای پیشرفت کمی و کیفی محتوی و اطلاعات انجمنمان میکوشیم که این برای ما ارزشمند و حائز اهمیت است. کلیه حقوق،اطلاعات و مقالات در این انجمن متعلق به سایت منطقه لینوکسی ها میباشد، و هرگونه نسخه برداری بدون ذکر منبع مورد پیگرد قانونی خواهد شد.

          شبکه های اجتماعی
          در حال انجام ...
          X