مقدمه
پروتکل SIP (Session Initiation Protocol) نقش کلیدی در دنیای ارتباطات ایفا میکند. این پروتکل قدرتمند، وظیفه آغاز، مدیریت و خاتمه جلسات چندرسانهای بین افراد مختلف را بر عهده دارد. جلسات SIP معمولا شامل تبادل صدا هستند و در موارد خاص، امکان انتقال تصویر نیز در آنها وجود دارد. SIP بهعنوان پروتکل استاندارد در نرمافزارهای صدا بر روی پروتکل اینترنت (VoIP) و بسترهای ارتباطات یکپارچه شناخته میشود. این پروتکل کارآمد، در حال حاضر بر روی دوربین اکسیس و طیف وسیعی از محصولات شبکهای این کمپانی، از جمله بلندگوی شبکهای مدل AXIS C3003-E و دربازکن تصویری تحت شبکه مدل AXIS I8016-LVE پشتیبانی میگردد و افقهای تازهای را به روی یکپارچهسازی، کنترل و اتصال این محصولات میگشاید.
نحوه عملکرد دوربین اکسیس در پروتکل SIP
سیستم SIP برای برقراری ارتباطات چندرسانهای به حداقل دو "مشتری SIP" نیاز دارد. این مشتریان میتوانند تلفنهای سختافزاری SIP، نرمافزارهای تلفن اینترنتی (softphone)، برنامههای تلفن همراه یا هر محصول شبکهای یا دوربین اکسیس که از SIP پشتیبانی میکند، باشند. مانند آدرس ایمیل، هر مشتری SIP دارای یک آدرس منحصر به فرد است، با این تفاوت که آدرس SIP با پیشوند "sip:" آغاز میشود. بهعنوان مثال، یک آدرس SIP میتواند بهصورت "sip:[email address removed]" نمایش داده شود. این شناسه SIP شبیه به شماره تلفن همراه است که به سیمکارت متصل بوده و میتوان از آن در دستگاههای مختلف استفاده کرد. یک آدرس SIP را میتوان در چندین دستگاه ثبت نمود و از طریق آن برقراری تماس و ارتباط را تسهیل کرد.
- برقراری ارتباط مستقیم در سیستم SIP
سیستم SIP قابلیتهای متنوعی را ارائه میدهد. در سادهترین حالت، این سیستم تنها به دو یا چند "کارگزار کاربر SIP" (SIP User Agent - UA) نیاز دارد تا مستقیما با یکدیگر ارتباط برقرار کنند. این نوع برقراری ارتباط را میتوان ارتباط مستقیم، تماس مستقیم یا تنظیمات محلی نامید. در چنین حالتی، آدرس SIP بهصورت ساده "sip:<آدرس IP محلی>" نمایش داده میشود. برای مثال، "sip:192.168.0.90" یک آدرس SIP معتبر برای برقراری ارتباط مستقیم است.
با نگاهی به یک سناریوی ساده، میتوان دریافت که دوربین اکسیس و سایر محصولات این برند (1, 2) قادرند از طریق SIP برای برقراری ارتباط صوتی و تصویری با سایر دستگاههای مجهز به SIP (3) در همان شبکه استفاده کنند. این ارتباط بدون نیاز به سرور یا سیستم سانترال تلفن (PBX) برقرار میشود. علاوه بر این، دوربین اکسیس، همانند سایر دستگاههای این شرکت، قابلیت اتصال به سیستم مدیریت ویدیو (4) را از طریق رابطهای برنامهنویسی باز (VAPIX) یا استاندارد ONVIF Profile S نیز داراست. این ویژگی انعطافپذیری بالایی را برای کاربران به ارمغان میآورد.
برای برقراری تماس مستقیم با پروتکل SIP بر روی شبکه محلی، تنها به آدرس SIP طرف مقابل نیاز است که حاوی آدرس IP آن دستگاه میباشد. برای مثال، آدرس "sip:192.168.0.100" برای برقراری تماس با دستگاهی با IP مذکور کاربرد دارد. با این حال، لازم به ذکر است که همه "مشتریهای SIP" از قابلیت برقراری تماس مستقیم پشتیبانی نمیکنند. بنابراین پیش از راهاندازی این نوع ارتباط، از سازگاری نرمافزار یا سختافزار SIP مورد نظر خود با تماسهای مستقیم اطمینان حاصل کنید.
دوربین اکسیس
- ارتقاء قابلیتها با سرور SIP (سانترال)
زیرساخت ارتباطی مبتنی بر سیستم SIP از قابلیت ارتقای بالایی برخوردار است. در سناریوی پیچیدهتر، با بهکارگیری یک "ثبتکننده" (registrar)، "سیستم سانترال تلفن" (PBX) یا "سرور SIP" بهعنوان یک مرکز کنترل، امکانات بیشتری در اختیار کاربران قرار میگیرد. در این حالت، "کارگزاران کاربر SIP" (SIP User Agent - UA) خود را در registrar به ثبت میرسانند و سپس میتوانند تنها با شمارهگیری داخلی مربوطه در سیستم سانترال، به یکدیگر متصل شوند. آدرس SIP در این سناریو به صورت "sip:<نام کاربری>@<دامنه>" نمایش داده میشود. همچنین میتوان از آدرس به شکل "sip:<نام کاربری>@<آدرس IP ثبتکننده>" مانند "sip:[email address removed]" استفاده کرد. سیستم سانترال نقشی مشابه با یک اپراتور سنتی ایفا میکند. این سیستم امکان نمایش وضعیت آنلاین کاربران، انتقال تماس، صندوق صوتی، هدایت تماس و بسیاری از قابلیتهای دیگر را ممکن میسازد.
یک سرور SIP معمولا شامل قابلیتهای سرور پروکسی (Proxy)، ثبتکننده (Registrar) و هدایتگر (Redirect) میشود. سرورهای پروکسی، تماسها را مسیریابی میکنند و منطق اضافی را برای تماسهای ورودی اعمال مینمایند. سرورهای ثبتکننده، درخواستهای ثبتنام را میپذیرند و بهعنوان یک سرویس موقعیتیاب برای دامنه تحت پوشش خود عمل میکنند. سرورهای هدایتگر، کاربران را به برقراری تماس با یک آدرس SIP جایگزین هدایت مینمایند.
سرور سیستم SIP را میتوان بهصورت محلی راهاندازی کرد و یا آن را در یک مکان خارج از سایت مستقر نمود. این سرور میتواند بر روی شبکه داخلی (intranet) یا توسط یک شرکت ثالث میزبانی شود. هنگام برقراری تماسهای SIP بین سایتهای مختلف، تماسها بهطور معمول در ابتدا از طریق مجموعهای از سرورهای پروکسی SIP مسیریابی میشوند. این سرورهای پروکسی، موقعیت آدرس SIP که باید به آن دسترسی پیدا شود را استعلام میکنند. با بهکارگیری سرور SIP، دنیایی از امکانات پیشرفته در اختیار شما قرار میگیرد و ارتباطات درون شبکهای را به سطحی فراتر ارتقا میدهد.
دوربین اکسیس و سایر محصولات این شرکت(1, 2) میتوانند به یک "سرور SIP" (3) متصل شوند. این سرور قادر است بهصورت محلی راهاندازی شده و یا توسط یک شرکت ثالث میزبانی گردد. سرور SIP وظیفه برقراری، مدیریت و خاتمه تماسها بین دستگاههای مجهز به SIP را بر عهده دارد. این تماسها میتوانند در شبکه محلی و یا حتی بستر اینترنت برقرار شوند. نکته قابل توجه در این سناریو آن است که "آدرس SIP" هر دستگاه، مستقل از "آدرس IP" آن میباشد. مادامی که دستگاه در سرور SIP به ثبت برسد، این سرور امکان دسترسی به آن را فراهم می سازد. بهعبارتی، سرور SIP نقش یک دفترچه راهنمای هوشمند را ایفا میکند که موقعیت دستگاههای متصل را در شبکه مدیریت مینماید.
برای استفاده از دوربین اکسیس یا سایر محصولات این شرکت با یک سرور SIP، نیازمند ایجاد یک حساب کاربری در این سرور هستید. این حساب کاربری شامل یک شناسهی کاربری (user ID) و رمز عبور اختصاصی میشود. پس از ایجاد حساب، برای ثبت کردن دستگاه خود در سرور SIP، لازم است تا با وارد شدن به تنظیمات دستگاه، آدرس سرور، شناسهی کاربری و رمز عبور را وارد نمایید.
- ارتقا به سطح ارتباطات جهانی با SIP Trunk
با بهکارگیری "SIP Trunk" میتوان "کارگزاران کاربر SIP" (SIP User Agent - UA) را به شبکه تلفن سنتی (PSTN) متصل نمود. این قابلیت، امکان واگذاری یک شماره تلفن سنتی به UA را نیز فراهم میکند. تصور کنید که قادرید با استفاده از یک تلفن IP ساده، به شمارههای تلفن ثابت در سراسر دنیا تماس بگیرید و یا تماسهای ورودی از این خطوط را دریافت نمایید. انعطافپذیری و صرفهجویی در هزینهها، از جمله مزایای بارز استفاده از SIP Trunk هستند.
با استفاده از یک "ترانک SIP" (1) که توسط یک شرکت ارائهدهندهی خدمات (سرویسدهنده) تامین میشود، میتوانید شمارههای تلفن شهری را به دستگاههای تحت شبکهی خود (2، 3) اختصاص دهید. این قابلیت به شما امکان میدهد تا تماسهایی را بین یک بلندگوی تحت شبکه، دوربین اکسیس یا ایستگاه درببازکن تصویری و تلفنهای معمولی (4) برقرار نمایید. بهعنوان مثال، قادرید با استفاده از بلندگوی تحت شبکهی نصبشده در دفتر کار خود، با مشتریانتان تماس بگیرید و یا اینکه تماسهای ورودی آنها را بر روی همین دستگاه دریافت کنید. این سناریو تنها نمونهای از کاربردهای متنوع ترانک SIP به شمار میرود.
در حالت استفاده از SIP Trunk، دوربین اکسیس و سایر تجهیزات شما به همان روشی که پیشتر توضیح داده شد به سرور متصل میشوند. با این تفاوت که برای استفاده از شمارههای تلفن شهری، هزینهی اضافی توسط شرکت ارائهدهندهی خدمات (سرویسدهنده) دریافت خواهد شد. هزینههای مربوط به SIP Trunk، به عوامل مختلفی از جمله تعداد خطوط، میزان مکالمه و تعرفههای شرکت ارائهدهندهی خدمات بستگی دارد. در نهایت، انتخاب راهحل مناسب برای ارتقای سیستم ارتباطی، به نیازها و بودجهی شما وابسته است. SIP Trunk، راهحلی ایدهآل برای کسبوکارهایی است که نیازمند برقراری تماسهای متعدد با تلفنهای ثابت در سراسر دنیا هستند. مزایای قابلتوجهی از جمله صرفهجویی در هزینهها، انعطافپذیری و قابلیت اطمینان بالا، SIP Trunk را به گزینهای محبوب در دنیای ارتباطات نوین تبدیل کرده است.
برقراری یک تماس عادی با سیستم SIP: سفری در دنیای تبادل اطلاعات
برقراری یک تماس SIP "عادی" شامل مراحلی است که در آن تبادلی دقیق از اطلاعات بین دو دستگاه SIP (فرستنده و گیرنده تماس) انجام میشود.
فرایند برقراری یک تماس عادی SIP
هنگام برقراری یک تماس SIP، یک سری پیام رد و بدل میشود تا ارتباط بین دو دستگاه SIP (فرستنده و گیرنده) برقرار گردد. در ادامه، گذری در دنیای این پیامها خواهیم داشت.
- آغازگر تماس (Initiator UA) درخواست خود را ارسال میکند: در ابتدای امر، دستگاه فرستنده تماس، پیامی با عنوان "INVITE" به آدرس SIP دستگاه گیرنده ارسال میکند. این پیام حاوی اطلاعاتی در قالب "پروتکل توصیف جلسه" (SDP) است. اطلاعات SDP شامل فرمتهای رسانهای قابل دسترس (صوتی یا تصویری) و همچنین مشخصات تماس گیرنده میشوند.
- تایید اولیه از سوی گیرنده: بلافاصله پس از دریافت پیام "INVITE"، دستگاه گیرنده با ارسال پاسخی تحت عنوان "100 TRYING" دریافت پیام را تایید میکند. این پیام نشاندهندهی در حال پردازش بودن درخواست تماس است.
- بررسی و آمادهسازی: دستگاه گیرنده، فرمتهای رسانهای پیشنهادی در پیام SDP را با فرمتهای موجود در خود مقایسه میکند. در صورتی که هر دو دستگاه بتوانند روی یک فرمت مشترک توافق کنند، دستگاه گیرنده با اعلان تماس ورودی به کاربر، پاسخی موقت با عنوان "180 RINGING" به دستگاه فرستنده ارسال خواهد کرد.
- برقراری ارتباط: هنگامی که کاربر گیرنده، تماس را پاسخ میدهد، پیامی با عنوان "200 OK" برای دستگاه فرستنده ارسال میشود تا برقراری ارتباط تایید گردد. این پیام حاوی یک “SDP توافقشده” است که فرمتهای رسانهای نهایی و همچنین آدرس ارسال جریانهای رسانهای را به دستگاه فرستنده اعلام میکند.
- انتقال مستقیم جریانهای رسانهای: جریانهای رسانهای توافق شده اکنون با استفاده از "پروتکل انتقال بلادرنگ" (RTP) و بر اساس پارامترهای ذکر شده در SDP راهاندازی میشوند. در این مرحله، تبادل اطلاعات صوتی یا تصویری (بسته به نوع تماس) بهصورت مستقیم بین دو دستگاه انجام میگیرد. دستگاه فرستنده نیز پیامی با عنوان "ACK" از طریق SIP برای تایید راهاندازی جریانهای رسانهای طبق توافق، ارسال میکند.
- نقش SIP پس از برقراری ارتباط: لازم به ذکر است که با برقراری ارتباط، "جلسه SIP" همچنان فعال باقی میماند، اما دیگر نقشی در انتقال مستقیم جریانهای رسانهای ایفا نمیکند. این فرآیند بر عهده پروتکل RTP میباشد.
- پایان بخشیدن به تماس: هنگامی که یکی از طرفین تصمیم به پایان دادن تماس میگیرد، پیامی با عنوان "BYE" ارسال میکند. پس از دریافت پیام "BYE"، طرف مقابل با ارسال پیام "200 OK" دریافت آن را تایید و جریانهای رسانهای RTP متوقف میگردند.
دوربین اکسیس و سایر تجهیزات قادرند از بستر SIP برای برقراری ارتباط با سایر دستگاههای متصل به شبکه، استفاده کنند.
- SDP: مذاکره برای انتخاب فرمت مناسب
"پروتکل توصیف جلسه" (SDP) قالبی برای تعریف پارامترهای راهاندازی جریانهای رسانهای است. بدنهی SDP شامل اطلاعاتی در مورد فرمتهای رسانهای (کدکها) که توسط دوربین اکسیس و سایر دستگاههای SIP پشتیبانی میشوند. همچنین اولویت انتخاب کدک از سوی این دستگاهها میباشد. کدکهای صوتی رایج مورد استفاده در تماسهای SIP عبارتند از PCMU، PCMA، G.722، G.726 و L16، چنانچه چندین کدک مشابه توسط هر دو دستگاه فرستنده و گیرنده پشتیبانی شود، بهطور معمول کدکی با بالاترین اولویت در لیست انتخاب دستگاه گیرنده انتخاب خواهد شد. انتخاب نهایی کدک بر پهنای باند تاثیر میگذارد.
بنابراین برای برقراری ارتباط سازگار با دوربین اکسیس و سایر دستگاههای مبتنی بر سیستم SIP و همچنین حفظ پهنای باند مناسب برای نوع کاربری، باید دقت لازم صورت گیرد. بهعنوان مثال، در یک شبکه محلی که تمام دستگاهها از L16 پشتیبانی میکنند، انتخاب صدای بدون فشرده سازی (L16) عملکرد خوبی خواهد داشت، اما اگر قرار باشد از طریق اینترنت و با استفاده از گوشی تلفن همراه 3G به دستگاه SIP دسترسی پیدا کند، انتخاب کدک PCMU گزینهی مناسبتری به شمار میرود.
- برقراری تماس در زیرساخت پیچیده سیستم SIP
در زیرساختهای پیچیدهتر SIP، برقراری تماس کمی متفاوت بهنظر میرسد. در این سناریوها، "جلسه SIP" بهصورت مرحله به مرحله و برای هر جهش (hop) در شبکه برقرار میشود. هر مرحلهی عبور از یک دستگاه واسطه در شبکه جهش نام دارد. با این حال، پس از راهاندازی کامل "جلسه SIP"، بهطور معمول مسیریابی خاصی برای انتقال اطلاعات صورت نمیگیرد و همانند مثال قبلی، جریان داده بهصورت مستقیم بین طرفین برقرار میشود. به عبارت دیگر، پس از توافق بر روی جزئیات تماس و برقراری ارتباط، تبادل اطلاعات صوتی و تصویری بدون دخالت سرورهای واسطه و به شکل مستقیم بین دو دستگاه SIP انجام میپذیرد.
در زیرساختهای پیچیدهتر SIP، پس از راهاندازی کامل "جلسه SIP" بین دستگاههای فرستنده (2) و گیرنده (3)، جریانهای رسانهای RTP (1) بهصورت مستقیم بین دو طرف برقرار میشوند. در این حالت، برخلاف تماسهای ساده SIP که در آنها سرورهای واسطه نقشی در انتقال اطلاعات صوتی و تصویری ایفا میکنند، جریانهای رسانهای بهطور مستقیم و بدون عبور از سرورها بین دو دستگاه رد و بدل میشوند. این امر به دلیل وجود "جلسه SIP" برقرار شده بین دو دستگاه است که اطلاعات لازم برای مسیریابی مستقیم جریانهای رسانهای را در اختیار آنها قرار میدهد.
ارسال فرمان در تماسهای SIP با DTMF
"فرکانس چندگانه دوگانه" (DTMF) قالبی است که برای ارسال اطلاعات بر روی خطوط تلفن استفاده میشود. سیگنالهای DTMF را میتوان در تماسهای SIP ارسال کرد و از آنها برای صدور دستورات به دستگاههای SIP استفاده نمود. مجموعهی کاراکترهای قابل ارسال با DTMF شامل اعداد 0 تا 9، حروف A تا D و همچنین علامتهای * و # میباشد. بهعنوان مثال، در هنگام برقراری تماس با یک آیفون تصویری مجهز به دوربین اکسیس SIP، میتوان عدد "5" را از صفحهکلید تلفن ارسال کرد. این عدد میتواند توسط دستگاه گیرنده بهعنوان فرمان باز کردن درب تفسیر شود. برای ارسال DTMF در تماسهای SIP سه روش مختلف وجود دارد.
- روش سنتی درون باند (In-band): در این روش، سیگنال DTMF در واقع یک پالس صوتی است که با جریان صدای اصلی ادغام میشود. با این حال، این روش غیرقابل اعتماد است و تنها با کدکهای غیرفشرده کار میکند.
- روش SIP INFO: در این روش، کاراکتر DTMF درون یک پیام SIP در جریان سیگنالینگ ارسال میشود. این روش بسیار قابل اعتماد و برون باند است، اما پشتیبانی محدودی دارد.
- روش RTP (بر اساس استاندارد RFC2833): در این روش، کاراکتر DTMF بهصورت یک بستهی RTP کدگذاری شده و بهشکل برون باند ارسال میشود. این شیوه، روشی استاندارد و دارای پشتیبانی گسترده است.
دوربین اکسیس SIP برای مسیریابی صحیح جریانهای رسانهای و سیگنالینگ به آدرسهای IP و پورتهای منبع صحیح نیاز دارند.
عبور از موانع شبکه با NAT در تماسهای SIP
در محیطهای شبکهی پیچیدهتر، ممکن است نیاز به استفاده از "ترجمه آدرس شبکه" (NAT) باشد. NAT روشی است که برای نمایش عمومی آدرسهای IP واقع در یک شبکهی محلی خصوصی بهکار میرود. این بدان معناست که تمام دستگاههای موجود در یک زیرشبکهی خصوصی، از یک پیشوند آدرس IP مشترک مانند 192.168.1.XXX استفاده میکنند. این آدرس در هنگام برقراری ارتباط داخلی بین این دستگاهها، مورد استفاده قرار میگیرد، اما هنگامی که دستگاههای این زیرشبکه قصد برقراری ارتباط با شبکهی دیگری را دارند، آدرس داخلی آنها توسط روتر به یک آدرس عمومی ترجمه شده و با یک نگاشت پورت همراه میشود.
از آنجایی که جدول ترجمه در روتر ذخیره میگردد، در اکثر موارد امکان شناسایی آدرس یک دستگاه دارای NAT برای کاربران خارجی وجود ندارد. این موضوع میتواند در برقراری تماسهای SIP منجر به مشکلات زیر شود.
- عدم امکان برقراری، بهروزرسانی یا خاتمهی یک ارتباط (یعنی برقراری تماس، نگهداشتن تماس در حالت انتظار و یا قطع تماس)
- عدم وجود جریانهای رسانهای (صوتی یا تصویری)
- وجود جریان رسانهای یک طرفه (تنها صدا یا تصویر از یک طرف قابل دریافت است)
برای رفع این مشکلات و برقراری ارتباط موفق سیستم SIP در شبکههای با NAT، از روشهای مختلفی مانند STUN، ICE و Session Refresh استفاده میشود که در ادامه به آنها خواهیم پرداخت.
در هنگام استفاده از NAT در تماسهای مبتنی بر سیستم SIP، روتر آدرس منبع هر بستهی ارسالی را به یک آدرس IP عمومی به همراه پورتهای منبع متفاوت تغییر میدهد. این امر بهمنظور مخفی کردن آدرسهای IP واقعی دستگاههای موجود در شبکهی خصوصی و نمایش یک آدرس IP واحد به دنیای خارج انجام میگیرد. با این حال، این تغییر آدرس میتواند در برقراری ارتباطات SIP مشکل ایجاد کند، زیرا دستگاههای SIP مانند دوربین اکسیس برای مسیریابی صحیح جریانهای رسانهای و سیگنالینگ به آدرسهای IP و پورتهای منبع صحیح نیاز دارند.
برای رفع این مشکل، از روشهای مختلفی مانند STUN، ICE و Session Refresh استفاده میشود که در ادامه به آنها خواهیم پرداخت.
- STUN (پروتکل کشف آدرس ترجمه شده): در این روش، دستگاه SIP با ارسال درخواست به یک سرور STUN با موقعیت شناخته شده، از آدرس عمومی خود مطلع میشود. سرور STUN در پاسخ، آدرس IP عمومی و نگاشت پورت استفاده شده، برای برقراری درخواست را به دستگاه SIP ارسال میکند. این اطلاعات سپس در فرآیند سیگنالینگ و انتقال جریانهای رسانهای بهکار گرفته میشود و در اکثر موارد عملکرد مناسبی دارد.
- TURN (سرور رله): در روش TURN، تمامی ترافیک ارتباطی از طریق یک سرور شناخته شده به نام سرور TURN رله میگردد. این روش باعث ایجاد اضافه بار میشود زیرا ماشین میزبان سرور TURN باید به اندازهی کافی توانمند باشد تا بتواند کل جریانهای رسانهای برای هر کاربر را که از این سرویس استفاده میکند، مسیریابی نماید. راهاندازی سرور TURN هزینهی بیشتری نسبت به سایر روشها دارد، اما در برخی سناریوها که روش STUN با مشکل مواجه میشود، میتواند راهگشا باشد.
- ICE (پروتکل تطابق کاندیدای اتصال): پروتکل ICE بهدنبال جمعآوری تمامی آدرسهای IP مرتبط با یک دستگاه SIP (فرستنده یا گیرنده) است و سپس تلاش میکند تا مناسبترین آدرس را برای برقراری ارتباط انتخاب کند. استفادهی ترکیبی از STUN و TURN به همراه ICE در هر دو دستگاه SIP فرستنده و گیرنده، بهمیزان قابل توجهی احتمال برقراری موفق تماسهای SIP را افزایش میدهد.
نمایندگی اکسیس با ارائه خدمات راهاندازی، نصب و پشتیبانی سیستم SIP، به شما کمک میکند تا از مزایای این فناوری بهطور کامل بهرهمند شوید. متخصصان نمایندگی Axis با شما مشورت میکنند تا نیازهایتان را بهطور کامل درک کنند و بهترین راهحل SIP را پیشنهاد دهند. همچنین این مرکز طیف گستردهای از دوربین اکسیس، تلفنهای IP، گیتویهای SIP و سایر تجهیزات SIP را ارائه میدهد.