SIP (Session Initiation Protocol – Giao thức khởi tạo phiên) là một giao thức điều khiển lớp ứng dụng mà có thể thiết lập, chuyển đổi và kết thúc các phiên đa phương tiện như các cuộc gọi điện thoại Internet. SIP cũng có thể mời các thành phần tham gia tới các phiên đang tồn tại, như các cuộc hội thảo multicast. SIP hỗ trợ trong suốt việc ánh xạ tên và tái định hướng các dịch vụ, mà hỗ trợ tính di động của con người. SIP được phát triển bởi IETF, được coi là 1 phần của cấu trúc hội thảo đa phương tiên Internet, được thiết kế để tương thích với các giao thức khác như TCP, UDP, IP, DNS…
Giao thức báo hiệu cho phép hai hay nhiều đầu cuối thiết lập các phiên truyền đa phương tiện. Chức năng chính của giao thức báo hiệu:
• Xác định điểm thiết bị hay ứng dụng đầu cuối
• Liên lạc tới điểm đầu cuối xác định sự sẵn sàng để thiết lập phiên kết nối • Trao đổi các thông tin media để cho phép phiên kết nối được thành lập • Thay đổi các phiên đã tồn tại
SIP cũng có khả năng mở rộng các dịch vụ và cung cấp các thông tin về trạng thái online hoặc offline. Các chức năng đó bao gồm:
• Công khai và upload trạng thái xuất hiện
• Phân phát các yêu cầu về thông tin trạng thái xuất hiện • Truyền các instant messages
Chúng ta có thể thấy được rõ hơn về SIP thông các mô hình kết nối sử dụng giao thức báo hiệu SIP.
Giữa hai thiết bị SIP
Hai thiết bị này có thể là SIPphone, cellphone,…, cả hai thiết bị này sẽ kết nối tới 1 mạng IP như Internet và các thiết bị sẽ biết được địa chỉ IP của nhau
Mô hình giữa hai thiết bị SIP
Theo mô hình, Tesla sẽ bắt đầu kết nối bằng việc gửi bản tin SIP INVITE tới Marconi. Bản tin này chứa các thông tin chi tiết về loại phiên và cuộc gọi. Đó có thể là một phiên thoại bình thường, hoặc một phiên đa phương tiện như video conference, gaming conference. INVITEsip:marconi@radio.orgSIP/2.0 Via:SIP/2.0/UDPlab.high-voltage.org:5060;branch=z9hG4bKfw19 Max-Forwards:70 To:G.Marconi<sip:Marconi@radio.org> From:NikolaTesla<sip:n.tesla@high-voltage.org>;tag=76341 Call-ID:123456789@lab.high-voltage.org CSeq:1INVITE
Subject:AboutThatPowerOutage... Contact:<sip:n.tesla@lab.high-voltage.org> Content-Type:application/sdp Content-Length:158 v=0 o=Tesla28908445262890844526INIP4lab.high-voltage.org s=PhoneCall c=INIP4100.101.102.103 t=00 m=audio49170RTP/AVP0 a=rtpmap:0PCMU/8000 Các tham số SDP
Giữa hai thiết bị SIP thông qua proxy Server
Cuộc gọi SIP với Proxy Server
Như trong mô hình trước, các thiết bị hay ứng dụng phải biết địa chỉ IP của bên mình muốn thiết lập cuộc gọi. Nhưng trên thực tế không phải khi nào cũng biết được địa chỉ IP các thiết bị khác. Địa chỉ IP cũng không thể trở thành số điện thoại và địa chỉ IP của một thiết bị luôn luôn biến đổi, trong một phiên gọi thì địa chỉ IP không thay đổi nhưng trong phiên khác địa chỉ IP sẽ khác. Và nếu dùng địa chỉ IP thì chúng ta cũng không thể liên lạc khi ngồi ở một máy khác.
Trong mô hình này, việc thiết lập phiên của cuộc gọi thông qua Proxy Server. Nó sẽ đóng vai trò như một thiết bị trung gian để thiết lập cuộc gọi. Sau khi cuộc gọi được thiết lập, sẽ tạo ra được một phiên media giữa hai thiết bị SIP, như hình vẽ.