Ứng dụng gồm 2 phần: client và server.
• Client:
Giao diện Client gồm có 3 form:
¾Form chính Learning English Online: Form này gồm có menu để
tạo form cấu hình, tạo, chỉnh sửa và chấm dứt phiên. Ngoài ra form còn dùng để chọn bài học và một khung để xem nội dung.
¾Form cấu hình: Form này để thiết lập các thông số của ứng dụng
bao gồm địa chỉ IP và port lắng nghe của server.
¾Form tạo và chỉnh sửa phiên: From này dùng để tạo yêu cầu
INVITE với quyền chọn loại media.
Các lớp:
¾Lớp Config: Dùng để lưu giữ và chỉnh sửa thông số server tại
client.
¾Lớp Session: Dùng để tạo và chỉnh sửa phiên.
¾Lớp LEO: dùng để xử lý các response và xem nội dung của các file
media được gửi từ server.
• Server:
Giao diện server gồm có form chính để hiển thị thông tin giao tiếp.
Lớp LEOServer: Dùng để xử lý các request và hiển thị thông tin giao
tiếp từ client.
• Project SIP:
Là thư viện dùng chung cho client và server đã cài đặt như phần 7.1. 7.4. Giao diện người dùng và cấu hình:
7.4.1. Giao diện người dùng:
Client có các form sau:
• Form tạo phiên:
Server có form sau:
7.4.2. Cấu hình:
• Port: Cổng lắng nghe trên server. 7.5. Xử lý logic của ứng dụng:
Do mục đích minh họa. Ứng dụng sẽ thực hiện những chức năng đơn giản như tạo phiên, chỉnh sửa phiên và chấm dứt phiên. Quy trình thực hiện như sau:
• User sẽ cấu hình địa chỉ và port của server.
• Ứng dụng sẽ lưu xuống client để lần sau sử dụng.
• User sẽ tạo phiên với các thông tin như loại media.
• Ứng dụng client sẽ tạo yêu cầu INVITE gửi đến server.
• Server tạo response và gửi lại client.
• User sẽ chọn bài học và xem nội dung.
• User chỉnh sửa phiên.
• User sẽ chọn bài học và xem nội dung.
• User chấm dứt phiên.
• Ứng dụng gửi yêu cầu BYE đến server.
• Server tạo response và gửi đến client.
Nhận xét đánh giá
Giao thức SIP là một giao thức khá mới (bản dự thảo đầu tiên cho giao thức SIP xuất hiện vào tháng 12/1996) nhưng với cú pháp rõ ràng dễ hiểu cũng như vai trò quan trọng của nó mà hiện nay rất nhiều tổ chức đã sử dụng nó như là giao thức tín hiệu chủ yếu. Có thể nói rằng SIP là một giao thức tín hiệu với vai trò khởi tạo, chỉnh sửa và quản lý phiên phổ biến nhất trên thế giới. Sự ra đời của nó không loại bỏ những giao thức khác mà với tính tương thích cao nó sử dụng để hỗ trợ các giao thức khác nhằm đạt kết quả tốt nhất trong truyền thông.
Vì những đặc điểm ưu việt như vậy mà giao thức SIP đã được chuẩn hóa bởi tổ chức IETF (The Internet Engineering Task Force – một tổ chức chịu trách nhiệm chính
với việc định nghĩa các chuẩn Internet) trong RFC 3261. Hiện nay IETF có một đội
ngũ chuyên chỉnh sửa và phát triển SIP là SIP WG(Session Initiation Protocol Working Group).
Trong luận văn này với những hiểu biết cơ bản về giao thức SIP mục tiêu của em chỉ là tìm hiểu giao thức này và cụ thể hóa những hiểu biết của mình về giao thức SIP bằng cách cài đặt thư viện lớp SIP theo những chuẩn hóa của RFC 3261 và viết ứng dụng minh họa hoạt động theo giao thức SIP.
Với một giao thức được chuẩn hóa như vậy thì tương đối là dễ hiểu và thống nhất so với những giao thức chưa được chuẩn hóa, nhưng đối với em nó cũng là mới lạ nên cũng khó tránh khỏi những khó khăn khi tiếp cận với giao thức này. Với phần trình
bày đề tài của mình tuy là chưa đầy đủ toàn bộ về giao thức SIP nhưng nó cũng thể
hiện được một phần hiểu biết của em về giao thức này.
Với những hành trang như vậy trong tương lai em sẽ tìm hiểu sâu hơn về giao thức này vì hiện nay nó khá phổ biến và tương lai có lẽ sẽ sử dụng nó nhiều trong truyền thông.
Tài liệu tham khảo
[1] RFC 2543 SIP: Session Initiation Protocol. M. Handley, H. Schulzrinne, E.
Schooler, J. Rosenberg. March 1999.
[2] RFC 3261 SIP: Session Initiation Protocol. J. Rosenberg, H. Schulzrinne, G.
Camarillo, A. Johnston, J. Peterson, R. Sparks, M. Handley, E. Schooler. June 2002.
[3] www.w3c.org.
[4] JSR 22 JAIN SLEE API specifi cation [5] JSR 32 JAIN SIP API specifi cation
[6] JSR 116 SIP Servlet API
[7] JSR 135 Mobile Media API
[8] JSR 165 SIMPLE Instant Messaging
[9] JSR 180 SIP API for J2ME
[10] JSR 240 JAIN SLEE v 1.1
[11] JSR 289 SIP Servlet v 1.1
[12] JSR 309 Media Server Control API
[13] JSR908 Java Media Framework 2.2.1
[14] SESSION INITIATION PROTOCOL (SIP) Controlling Convergent Networks
Travis Russell.