آشنایی با پروتکل SIP یا Session Initiation Protocol در شبکه
پروتکل SIP یا Session Initiation Protocol ، پروتکل سيگنالينگی برای كنترل و برقراری مكالمات و نشست های چندرسانهای در شبكه IP توسط IETF تحت معرفی شده است.
پروتكل SIP به صورت يک ارتباط Client-Server بوده كه در آن پيام ها (پاسخ ها و درخواست ها) به صورت متنی است. SIP يک پروتكل Peer-to-Peer میباشد و پروتكلی لازم برای ايجاد، مديريت و تكميل نشست در شبكه NGN هست. اين نشست میتواند متن، صوت، ويديو يا تركيبی از اين موارد باشد. این پروتکل محل و در دسترس بودن كاربر را تعيين مینمايد. نشست های SIP بنا بر يک نوع Unicast يا Multicast بودن میتواند بين يک يا چند كاربر به اشتراکی گذاری شود.
ترمينال: ارتباط دوطرفه بلادرنگ را با هسته SIP ديگری پشتيبانی مینمايد. هم رسانه و هم سيگنالينگ را پشتيبانی نموده و UAC را نيز شامل میگردد.
Proxy Server: به يک یا چند Client و يا سرورهای Next Hop متصل میشود و درخواست های مكالمات را به سمت جلو عبور میدهد و شامل UAC و UAS نیز میشود.
Server ميانی (Redirect Server): درخواست های SIP را میپذيرد، آدرس ها را داخل آدرس های جديد برگردان (نگاشت) كرده و اين آدرس ها را به Client برمیگرداند. البته Redirect Server درخواستهای SIP را شروع نكرده و مكالمات را نمیپذیرد.
Serverهای مكان یابی (Location): اطلاعاتی در خصوص مكان احتمالی مكالمه كننده برای Server عبوردهنده و Proxy Server تهيه میكند.
چندين Server ديگر وجود دارد كه شامل Server خصوصيات (Feature Server) بوده و برای پشتيبانی قابليتهای كلی و نيازمندیهای توسعه از قبيل سياست ها، احراز هویت (Authentication)، امنيت و ... مورد نياز است.
ساختار پيام پروتکل SIP
هر پيام SIP شامل خط شروع، سرآيند، يک خط خالی و يک بخش اعتباری پيام است.
پيام های اصلی در پروتکل SIP
• درخواست ها (Requests)
از سمت مشتری به سمت سرويس دهنده ارسال میشود.
1. INVITE: از كاربر و يا سرويس دعوت میگردد كه در جلسه شركت كنند.
2. ACK: کلاینت واكنش نهايی به يک درخواست دعوت را دريافت كرده است.
3. OPTION: سرور در خصوص توانايی ها پرسش میكند.
4. BYE: کلاینت به Server آزاد شدن مكالمه را نشان میدهد.
5. CANCEL: درخواست های ناتمام را فسخ میكند.
6. REGISTER: کلاینت توسط يک SIP Server آدرس را ثبت می کنند.
• پاسخ ها (Responses)
از سمت سرويس دهنده به سمت مشتری ارسال میشود.
1. ۱XX: اطلاعاتی – درخواست دريافت شده و فرايند درخواست ادامه میيابد.
2. ۲XX: موفقيت – عمليات با موفقيت دريافت شده و تحليل پذيرفته میشود.
3. ۳XX: تعيين دوباره مسير – عمليات بيشتر برای تكميل درخواست لازم است.
4. ۴XX: خطای Client – درخواست شامل Bad Syntax است و يا توسط Server اجرا نمیشود.
5. ۵XX: خطای Server – سرور، درخواست های ظاهراً معتبر و اجرایی را بايگانی میكند.
6. ۶XX: خطای جهانی – درخواست نمیتواند در هر سروری اجرا شود.
شكل زير تبديل پيام های SIP و CCS7 را نشان میدهد.