پروتکل SIP ، یک پروتکل سیگنالینگ مبتنی بر متن در لایه ی کاربرد است که در برقراری ارتباطات بلادرنگ دادههای چندرسانهای مورداستفاده قرا میگیرد. این پروتکل که یکی از استانداردهای تعریفشده در IETF است، کنترل ایجاد، تغییر، اصلاح و خاتمهی نشستهای SIP را انجام میدهد. پروتکل SIP سرویس خاصی ارائه نمیدهد اما مقدماتی را برای استفاده از سایر سرویسها فراهم میکند. معماری پروتکل SIP متشکل از دو نهاد منطقی عامل کاربر و عامل سرور میباشد
Ø INVITE: دعوت کردن از کاربر برای برقراری تماس.
Ø BYE: خاتمه دادن به ارتباط بین دو نقطهی پایانی.
Ø ACK: پاسخی که در تصدیق رسیدن بستههای INVITE ارسال میشود.
Ø OPTIONS: جمعآوری کردن اطلاعات در رابطه با قابلیتهای تماس.
Ø REGISTER: دادن اطلاعات در رابطه با موقعیت کاربر به سرور ثبت SIP.
Ø CANCEL: پایان دادن به جستجوی کاربر.
شکل زیر روند برقراری یک نشست SIP بین دو عامل کاربر آلیس و باب و خاتمهی آن را نشان میدهد.
عامل کاربر آلیس درخواست INVITE را که در جهت برقراری ارتباط با عامل کاربر باب است را به سمت باب ارسال میکند که در مسیر راه از دو پروکسی میگذرد که هرکدام از پروکسیهای SIP تا رسیدن به مقصد پیام TRYING 100 را صادر میکنند که نشاندهندهی سعی آنها بر ایجاد ارتباط است. پس از رسیدن پیام INVITE به باب، پیام RINGING 180 که نشاندهندهی خوردن زنگ در آن مکان است به تماسگیرنده ارسال میشود. سپس باب در جهت اطلاعرسانی برای اعلام موفقیت ارتباط، پیام OK 200 به آلیس ارسال میکند. پیامهای INVITE، TRYING و RINGING، هر سه در مسیر خود از پروکسیها عبور میکنند اما پیام ACK که آلیس در جهت رسید بستههای قبول درخواست به باب میفرستد، مستقیم به خود کاربر باب ارسال میکند. بعد از برقراری نشست SIP بین این دو نقطه ی پایانی (آلیس و باب) داده به صورت نقطه به نقطه و بدون عبور از پروکسیها، بین دو کاربر منتقل میشود و در نهایت پیام bye از سمت یکی از کاربرها ارسال شده که در جهت پایان نشست است