6 CHƯƠNG V I: THIẾT KẾ DỊCH VỤ IPTV
6.1.1 Mô hình SIPServlet
SIP Servlet là một thành phần ứng dụng của Java cơ bản, được quản lý bởi một SIP Servlet container và được thực thi bởi các bản tin SIP. Giống như các thành phần Java cơ bản khác, các servlet là các lớp Java trên nền tảng độc lạp mà nó được biên dịch thành mã máy, các mã máy này có thể được nạp tự động vào và chạy như là một máy chủ ứng dụng SIP. Các container thi thoảng còn được gọi là các phương tiện servlet, là các phần mở rộng của máy chủ cung cấp các chức năng servlet. Servlet tương tác với các client này bằng cách trao đổi các bản tin yêu cầu (request) và hồi đáp (response) thông qua các servlet container.
Servlet container là một bộ phận máy chủ là một bộ phận máy chủ ứng dụng cung cấp dịch vụ mạng thông qua các yêu cầu nhận được và hồi đáp gửi đi. Servlet containter quyết định các ứng dụng nào để gọi và trong lệnh nào. Một servlet container vừa chứa và vừa quản lý các servlet thông qua vòng đời của chúng. Một servlet container có thể được dựng lên bởi một máy chủ SIP, hoặc được cài đặt như là một bộ phận bổ xung tới SIP server thông qua các giao diện lập trình ứng dụng mở rộng riêng của server đó. Một SIP servlet container có thể vừa được dựng lên hoặc có khả năng được cài vào servlet,
SIP theo chiều đến (một điểm lắng nghe được tổ hợp bởi giao thức vận chuyển, địa chỉ IP và số hiệu cổng). Các đặc tính SIP yêu cầu tất cả các nhân tố SIP hỗ trợ cả UDP và TCP, và có thể là TLS, SCTP, và một số các lớp vận chuyển khác. Một servlet container có thể đặt các giới hạn bảo mật ở trên môi trường mà một servlet thực thi. Trong môi trường J2SE 1.2 và J2EE 1.3, các giwosi hạn này nên được đặt bằng cách sử dụng các kiến trúc cho phép định nghĩa Java2 Platform.
SIP Servlet cũng tương tự như HTTP Servlet ngoại trừ việc chúng xử lý các yêu cầu SIP. Chúng thực hiện việc này bày cách định nghĩa các phương thức đặc tả cho mỗi yêu cầu SIP. Ví dụ HTTP Servlet định nghĩa phương thức doPost() viết đè lên phương thức Service() để xử lý yêu cầu Post. Trong khi đó, SIP Servlet sử dụng giao thức doInvite() viết đè lên phương thức Service() để xử lý yêu cầu Invite. SIP servlet và HTTP servlets có thể được đóng gói với nhau với tài nguyên khác nhau như các thư viện và các lớp khác nhau, nội dung tĩnh (tập tin âm thanh, tệp hình ảnh, video,…) và một vài tập tin cấu hình để tạo ra một ứng dụng hội tụ.