دانشنامه ویپ ایران

بزرگترین دانشنامه ویپ فارسی زبان

Arrow
Arrow
Slider
3 minutes reading time (625 words)

حرکت استریسک به سمت پیاده سازی PJSIP

teluu-log_20171202-060455_1

تغییر اساسی در هسته ی برنامه به خودی خود یک کار پیچیده ای است، اگر این برنامه نزدیک به یک و نیم میلیون خط کد و بیش از 15 سال سابقه در بازار راه هم داشته باشد امری تقریبا غیر ممکن است. اما این دقیقا کاری است که تیم برنامه نویسی استریسک پس از انتشار استریسک 12 به آن روی آورده اند. حرکت به سمت نسل جدید سیپ تحت عنوان   pjsip تصمیمی است که استریسکی ها به اندازه ی کافی دلایلش را دارند.

 

استریسک سه سال از زمان فعالیتش می گذشت که پروتکل سیپ معرفی شد و توسعه دهندگان این ابر برنامه تصمیم به استفاده از این پروتکل در برنامه ی خود کردند. اگر آنروزها به هریک از توسعه دهندگان سیپ و استریسک موفقیت چشم گیر 10 ساله شان را برایشان به تصویر می کشیدیم شاید به سختی می توانستند باور کنند اما حالا با گذشت بیش از یک دهه هر دو پروژه جزو بهترین ها به حساب می آیند.

استریسک در فایل chan_sip شروع به استفاده از پروتکل SIP کرد و در طی این سالها با توسعه ی این فایل امکانات محدود تری از سیپ را برای استفاده در نظر گرفت. استریسک کلیه امورات سیپ اعم از پیغام های سیپ. ثبت نام و ارتباط با هسته را در همین فایل گنجاند و همین کار به خودی خود تغییرات ساختاری را بسیار سخت تر می کرد، چرا که با هر تغییری ایرادات ناخواسته زیادی متحمل سیستم می شد.

هرچند از زبان خود برنامه نویسان استریسک شنیده ایم که فایل chan_sip  انرژِی خیلی زیادی را از توسعه دهندگان استریسک می گیرد و اگر این انرژی ذخیره شود می توانند برروی توسعه ی سایر بخش ها تلاش کنند.

 

در دنیای ویپ کسانی که ایراد‌های استریسک را تحت نظر دارند آماری را ارایه کرده اند که در نوع خود بسیار جالب است . این آمار نشان می‌دهد که حدود ۳۰درصد از کل‌ ایراد‌های سیستم به همین فایل بر‌می‌گردد.

 

B2ap3 Large Pjsip1

 

با تکیه بر واقعیت‌ها تیم استریسک دو راه در مقابل خود برای حل این مشکل داشت. اولی تغییرات ساختاری در فایل chan_sip بود که از مزایای این روش آشنایی سایر کدنویسان با نحوه‌ی کدهای این فایل و در نتیجه استفاده از امکانات این سیستم بود و دومی ایجاد یک فایل جدید که شانس تجدید بنا با معماری همگون و مناسب عصر امروز را می داد. استریسکی ها گزینه دوم را انتخاب کردند و در استریسک ۱۲ نشان دادند که به همین سمت حرکت کرده اند.

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

در ورژن ۱۲ با بهره گیری از pjsip استریسکی ها توانستند درایوری را راه اندازی کنند که در آن کلیه ی امورات سیپ به صورت جداگانه در فایل‌های جداگانه نگه داری می شود. به عنوان مثال ایجاد داخلی سیپ و رجیستری سیپ هریک در فایلی جداگانه کد نویسی شده اند و بنابراین برای هرگونه تغییری دست کد نویس کاملا باز است و تغییرات برروی فرایند هریک از این مراحل به فرایند دیگری تاثیر گذار نخواهد بود.

در این ورژن هر یک از درایور ها با کمترین تاثیر بررروی یکدیگر در نظر گرفته شده اند و از بابت نگهداری نیز همین بس که فایل chan_sip دارای ۳۵ هزار خط کد و فایل chan_pjsip تنها حاوی ۲۰۰۰ خط کد است.

 

اگر تا کنون از این پروتکل استفاده کرده اید نظرات خود را با دیگران به اشتراک بگذارید.

ایزابل نسخه 4 RC به همراه استریسک 13 ارائه شد.
ایزابل محبوب ترین سیستم تلفنی ویپ در ایران

مطالب مرتبط

 

نظرات 1

مهمان - مهمان در روز پنج شنبه, 23 آذر 1396 10:42

مطلب آموزنده ای بود

مطلب آموزنده ای بود
Default Avatar
Already Registered? Login Here
مهمان
چهارشنبه, 04 مهر 1397

تصویر امنیتی

/blog?task=captcha.generate&no_html=1&tmpl=component&id=161728

محبوب ترین مقالات - بلاگ

18 دی 1394
استریسک (Asterisk)
  در این مقاله قصد داریم از طریق قابلیت مجازی سازی بر روی روتربرد میکروتیک، اقدام به نصب استریسک نماییم اما در ابتدا به دو پرسش پاسخ دهیم.- میکروتیک چیست؟- استریسک چیست؟...
13 فروردين 1394
الستیکس (Elastix)
    راه اندازی یک سیستم تلفنی با محصولات کدباز یکی از پیچیده ترین کار هایی است که یک متخصص ممکن است انجام دهد، در بحث راه اندازی شما درگیر مفاهیمی از سخت افزار گرفته تا شبکه و نرم افزار...
11 اسفند 1388
الستیکس (Elastix)
الستیکس Elastix یک سیستم تلفنی مبتنی بر Asterisk است و به عنوان محبوب ترین سیستم استرسکی کدباز شناخته می شود.الستیکس چیست؟    سیستم تلفنی الستیکس در ابتدا کار خود را در مارچ 2006 با نوش...
12 شهریور 1396
ایزابل (Issabel)
الستیکس (Elastix)
شرکت شاتل یکی از شرکت های دارنده مجوز FCP است که اقدام به ارائه خطوط ویپ با نام ShatelTalk کرده است، همانطور که بیان شده این شماره های ویپ فقط بر روی نرم افزار شاتل یا همان ShatelTalk قابل استفاده است...