Đăng ký Đăng nhập
Trang chủ Xây dựng ứng dụng lớp học từ xa với giao thức sip...

Tài liệu Xây dựng ứng dụng lớp học từ xa với giao thức sip

.PDF
119
489
115

Mô tả:

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC MỞ THÀNH PHỐ HỒ CHÍ MINH KHOA CÔNG NGHỆ THÔNG TIN -----o0o----- KHÓA LUẬN TỐT NGHIỆP NGÀNH: KHOA HỌC MÁY TÍNH Xây Dựng Ứng Dụng "Lớp Học Từ Xa" Với Giao Thức SIP Nhóm SV thực hiện : Nguyễn Hữu Nguyên Khoa – 10701062 Châu Bội Lương - 10761242 Chuyên ngành: Mạng máy tính GVHD : Ths. Huỳnh Minh Quang Thành phố Hồ Chí Minh – năm 2011 Lời Cảm Ơn Trước hết, chúng em xin cảm ơn thầy Huỳnh Minh Quang đã giới thiệu công nghệ, trực tiếp hướng dẫn và cung cấp tài liệu giúp chúng em hoàn thành khóa luận tốt nghiệp. Chúng em xin chân thành cảm ơn khoa công nghệ thông tin, trường đại học Mở thành phố Hồ Chí Minh đã tạo điều kiện tốt cho chúng em thực hiện khóa luận này, cùng quý thầy cô trong khoa đã tận tình giảng dạy, trang bị cho chúng em những kiến thức quý báu trong những năm học vừa qua. Cuối cùng, xin cảm ơn những bạn học đã ủng hộ, giúp đỡ và đóng góp ý kiến cho chúng tôi trong thời gian học tập và thực hiện khóa luận. Mặc dù chúng em đã cố gắng thực hiện đồ án trong khả năng và phạm vi cho phép nhưng chắc chắn sẽ không thể tránh khỏi những thiếu sót. Chúng em kính mong nhận được sự cảm thông và tận tình chỉ bảo của quý thầy cô. Nhóm sinh viên thực hiện Nguyễn Hữu Nguyên Khoa - Châu Bội Lương Thành phố Hồ Chí Minh, ngày 20 tháng 09 năm 2011 2 Nhận xét của giảng viên hướng dẫn ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... 3 Nhận xét của giảng viên phản biện ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... ........................................................................................................................................................... 4 MỤC LỤC DANH MỤC BẢNG .....................................................................................................................................7 DANH MỤC HÌNH ......................................................................................................................................8 PHẦN I: TỔNG QUAN......................................................................................................................11 1. 2. 3. Giới thiệu ........................................................................................................................................12 Phạm vi và mục tiêu của khóa luận .................................................................................................12 Nội dung khóa luận .........................................................................................................................12 PHẦN II: CƠ SỞ LÝ THUYẾT .....................................................................................................14 CHƯƠNG 1: TỔNG QUAN VỀ SIP ........................................................................................................15 1. Khái niệm SIP .................................................................................................................................15 1.1. SIP: ............................................................................................................................................ 15 1.2. Tại sao dùng SIP? ...................................................................................................................... 15 1.3. Địa chỉ SIP: ............................................................................................................................... 16 2. Chức năng: ......................................................................................................................................17 2.1. Khởi tạo, hiệu chỉnh và kết thúc phiên: ..................................................................................... 17 2.2. Xác định vị trí của người dùng: ................................................................................................. 17 3. Các thực thể: ...................................................................................................................................18 3.1. User Agent:................................................................................................................................ 18 3.2. Registrar: ................................................................................................................................... 19 3.3. Proxy: ........................................................................................................................................ 20 3.4. Back-to-back User Agent: ......................................................................................................... 21 CHƯƠNG 2: PHƯƠNG THỨC HOẠT ĐỘNG SIP ...............................................................................23 1. SIP Message: ...................................................................................................................................23 2. SIP request: .....................................................................................................................................23 2.1. Các Sip Request cơ bản : ........................................................................................................... 24 2.2. Các Sip Request mở rộng .......................................................................................................... 28 3. SIP response: ...................................................................................................................................29 4. SIP Header: .....................................................................................................................................30 CHƯƠNG 3: CẤU TRÚC SIP ..................................................................................................................32 1. Tổng quan: ......................................................................................................................................32 2. SIP Core sublayer:...........................................................................................................................33 2.1. Transaction sublayer: ................................................................................................................ 34 2.2. Transport sublayer: .................................................................................................................... 35 CHƯƠNG 4: SESSION DESCRIPTION PROTOCOL .........................................................................37 1. Nguồn gốc: ......................................................................................................................................37 2. Tổng quan: ......................................................................................................................................37 3. Các dòng mô tả quan trọng: ............................................................................................................39 CHƯƠNG 5: GIAO DIỆN JAIN SIP .......................................................................................................41 1. Khái niệm Jain SIP: .........................................................................................................................41 2. Kiến trúc Jain SIP: ..........................................................................................................................41 2.1. Peer-provider pattern : ............................................................................................................... 41 2.2. Factory pattern:.......................................................................................................................... 43 2.3. Event-listener pattern : .............................................................................................................. 47 5 CHƯƠNG 6: JAVA MEDIA FRAMEWORK API ................................................................................49 1. Tổng quan .......................................................................................................................................49 2. Luồng dữ liệu đa phương tiện: ........................................................................................................50 3. Các đối tượng trong JMF ................................................................................................................50 3.1. Manager:.................................................................................................................................... 50 3.2. Data Source ............................................................................................................................... 51 3.3. Player:........................................................................................................................................ 51 3.4. Processor: .................................................................................................................................. 52 3.5. Data Sink: .................................................................................................................................. 53 3.6. SessionManager: ....................................................................................................................... 53 4. Kiến trúc JMF: ................................................................................................................................54 4.1. Mô hình thời gian (Time Model):.............................................................................................. 54 4.2. Mô hình sự kiện (Event Model) ................................................................................................ 56 4.3. Mô hình dữ liệu (Data Model)................................................................................................... 56 PHẦN III: THIẾT KẾ ỨNG DỤNG .............................................................................................59 1. 2. 3. Giới thiệu: .......................................................................................................................................60 Chức năng: ......................................................................................................................................60 Website: ..........................................................................................................................................61 3.1. Mô hình ý niệm: ........................................................................................................................ 61 3.2. Sơ đồ lớp: .................................................................................................................................. 61 3.3. Chi tiết website: ......................................................................................................................... 63 4. Ứng dụng: .......................................................................................................................................83 4.1. Hoạt động Client-Server:........................................................................................................... 83 4.2. Client: ........................................................................................................................................ 90 4.3. Server: ..................................................................................................................................... 105 PHẦN IV: TỔNG KẾT ....................................................................................................................117 1. 2. 3. 4. Nhận xét: .......................................................................................................................................117 Kết quả hiện thực ứng dụng: .........................................................................................................118 Hạn chế : .......................................................................................................................................118 Hướng phát triển: ..........................................................................................................................118 TÀI LIỆU THAM KHẢO .......................................................................................................................118 6 DANH MỤC BẢNG Bảng 1.1: So sánh giữa SIP và H.323............................................................................................ 16 Bảng 2.1 Phân loại các trả lời ........................................................................................................ 30 Bảng 4.1: Các dòng mô tả cấp phiên ............................................................................................. 38 Bảng 4.2: Các dòng mô tả cấp thời gian........................................................................................ 38 Bảng 4.3: Các dòng mô tả cấp media ............................................................................................ 39 7 DANH MỤC HÌNH Một số hình ảnh minh họa được trích từ [3]. Hình 1.1: User Agent ...................................................................................................................................19 Hình 1.2: Hoạt động của Registrar và Location Service ..............................................................................20 Hình 1.3: Back-to-back user agent ...............................................................................................................22 Hình 2.1: Cấu trúc thông điệp SIP ...............................................................................................................23 Hình 2.2: Hoạt động đăng ký .......................................................................................................................25 Hình 2.3: Hoạt động khởi tạo phiên truyền thông ........................................................................................26 Hình 2.4: Hủy lời mời ..................................................................................................................................27 Hình 2.5: Kết thúc phiên ..............................................................................................................................28 Hình 3.1: Mô hình theo lớp của SIP .............................................................................................................33 Hình 3.2: Các SIP core sublayer ..................................................................................................................34 Hình 3.3: Hoạt động giữa các lớp trong UA ................................................................................................35 Hình 5.1: Mô hình phân lớp trong giao thức SIP .........................................................................................41 Hình 5.2: Mô hình peer-provider trong JAIN SIP........................................................................................42 Hình 5.3: Sử dụng mô hình Factory .............................................................................................................44 Hình 5.4: Mô hình thông điệp SIP trong JAIN SIP......................................................................................44 Hình 5.5: Mô hình Address trong JAIN SIP ................................................................................................46 Hình 5.6: Mô hình Header trong JAIN SIP ..................................................................................................47 Hình 5.7: Mô hình sự kiện ...........................................................................................................................47 Hình 5.8: Đối tượng sự kiện trong JAIN SIP ...............................................................................................48 Hình 6.1: Mô hình xử lý dữ liệu của JMF ....................................................................................................49 Hình 6.2: Data source ở các giai đoạn khác nhau ........................................................................................51 Hình 6.3: Player trong JMF ..........................................................................................................................51 Hình 6.4: Trạng thái của Player ...................................................................................................................52 Hình 6.5: Processor trong JMF ....................................................................................................................52 Hình 6.6: Trạng thái của Processor ..............................................................................................................53 Hình 6.7: Datasink trong JMF ......................................................................................................................53 Hình 6.8: Session Manager trong JMF.........................................................................................................54 Hình 6.9: JMF time model ...........................................................................................................................55 Hình 6.10: JMF event model ........................................................................................................................56 Hình 6.11: JMF data model ..........................................................................................................................57 Hình 6.12: Định dạng media trong JMF ......................................................................................................58 Hình III.1: Mô hình ý niệm website ILearning ............................................................................................61 Hình III.2: Sơ đồ thiết kế lớp website Ilearning ...........................................................................................62 8 Hình III.3: Trang đăng nhập .........................................................................................................................63 Hình III.4: Lưu đồ xử lý đăng nhập ............................................................................................................64 Hình III.5: Xử lý đăng nhập .........................................................................................................................65 Hình III.6: Trang quản lý thông tin cá nhân .................................................................................................65 Hình III.7: Lưu đồ cập nhật thông tin user ...................................................................................................66 Hình III.8: Xử lý cập nhật thông tin .............................................................................................................67 Hình III.9: Lưu đồ xử lý đổi mật khẩu ........................................................................................................68 Hình III.10: Xử lý đổi mật khẩu ...................................................................................................................69 Hình III.11: Trang quản lý lớp học đã đăng ký ............................................................................................70 Hình III.12: Lưu đồ xử lý tìm kiếm..............................................................................................................70 Hình III.13: Xử lý tìm kiếm lớp học đã đăng ký ..........................................................................................71 Hình III.14: Xử lý xóa lớp đã đăng ký .........................................................................................................71 Hình III.15: Trang thông tin lớp học ...........................................................................................................72 Hình III.16: Trang đăng ký lớp học .............................................................................................................73 Hình III.17: Lưu đồ xử lý đăng ký lớp học ..................................................................................................74 Hình III.18: Xử lý đăng ký lớp học ..............................................................................................................75 Hình III.19: Trang lịch giảng dạy.................................................................................................................76 Hình III.20: Trang chi tiết lớp học ...............................................................................................................76 Hình III.21: Trang quản lý user ....................................................................................................................77 Hình III.22: Xử lý tìm kiếm user..................................................................................................................78 Hình III.23: Xử lý cập nhật quyền user ........................................................................................................78 Hình III.24: Xử lý xóa user ..........................................................................................................................79 Hình III.25: Trang quản lý lớp học ..............................................................................................................79 Hình III.26: Xử lý xóa lớp học .....................................................................................................................80 Hình III.27: Trang tạo lớp học .....................................................................................................................81 Hình III.28: Lưu đồ xử lý tạo lớp học ..........................................................................................................82 Hình III.29: Xử lý tạo lớp học ......................................................................................................................83 Hình III.30: Hoạt động đăng nhập ...............................................................................................................84 Hình III.31: Hoạt động đăng xuất ................................................................................................................85 Hình III.32: Hoạt động gửi lời mời thiết lập phiên ......................................................................................86 Hình III.33: Hoạt động tham gia vào lớp học ..............................................................................................87 Hình III.34: Hoạt động gửi thông điệp chat .................................................................................................88 Hình III.35: Hoạt động gửi thông điệp chat trong lớp .................................................................................88 Hình III.36: Hoạt động rời khỏi lớp học ......................................................................................................89 Hình III.37: Bộ máy trạng thái của ứng dụng phía client .............................................................................90 Hình III.38: Mô hình sử dụng ứng dụng ILearning......................................................................................91 9 Hình III.39: Lưu đồ xử lý đăng nhập ...........................................................................................................92 Hình III.40: Sơ đồ lớp xử lý đăng nhập .......................................................................................................93 Hình III.41: Lưu đồ xử lý thay đổi trạng thái ...............................................................................................93 Hình III.42: Lưu đồ xử lý thêm bạn ............................................................................................................94 Hình III.43: Lưu đồ xử lý xóa bạn ...............................................................................................................95 Hình III.44: Lưu đồ xử lý chat text .............................................................................................................96 Hình III.45: Sơ đồ lớp xử lý chat text ..........................................................................................................96 Hình III.46: Lưu đồ xử lý chat voice/video..................................................................................................97 Hình III.47: Sơ đồ lớp xử lý chat voice/video ..............................................................................................98 Hình III.48: Lưu đồ xử lý tham gia lớp học .................................................................................................99 Hình III.49: Sơ đồ lớp xử lý tham gia lớp học ...........................................................................................100 Hình III.50: Lưu đồ xử lý rời khỏi lớp học ................................................................................................100 Hình III.51: Sơ đồ lớp xử lý rời khỏi lớp học ............................................................................................101 Hình III.52: Lưu đồ xử lý giảng viên bắt đầu lớp học................................................................................102 Hình III.53: Sơ đồ lớp xử lý giảng vien bắt đầu lớp học............................................................................102 Hình III.54: Lưu đồ xử lý giảng viên kết thúc lớp học ..............................................................................103 Hình III.55: Sơ đồ lớp xử lý giảng viên kết thúc lớp học...........................................................................103 Hình III.56: Lưu đồ xử lý chia sẻ tập tin ....................................................................................................104 Hình III.57: Lưu đồ xử lý thông điệp gửi đến server .................................................................................105 Hình III.58: Lưu đồ xử lý thông điệp REGISTER .....................................................................................106 Hình III.59: Sơ đồ lớp xử lý thông điệp REGISTER khi user đăng nhập .................................................107 Hình III.60: Sơ đồ lớp xử lý thông điệp REGISTER khi user đăng xuất.................................................108 Hình III.61: Lưu đồ xử lý thông điệp INVITE ...........................................................................................109 Hình III.62: Sơ đồ lớp xử lý INVITE gửi đến một user khác ....................................................................110 Hình III.63: Sơ đồ lớp xử lý INVITE vào lớp học .....................................................................................111 Hình III.64: Lưu đồ xử lý bắt đầu học ......................................................................................................112 Hình III.65: Sơ đồ lớp xử lý bắt đầu học....................................................................................................112 Hình III.66: Lưu đồ xử lý thông điệp MESSAGE .....................................................................................113 Hình III.67: Sơ đồ lớp xử lý thông điệp MESSAGE .................................................................................114 Hình III.68: Lưu đồ xử lý thông điệp BYE ................................................................................................115 Hình III.69: Sơ đồ lớp xử lý thông điệp BYE ............................................................................................116 10 PHẦN I: TỔNG QUAN 11 1. Giới thiệu Ngày nay, chúng ta đang sống trong một thế giới mà mạng Internet và email phát triển rộng khắp. Và hai giao thức mạng được sử dụng phổ biến là: Giao thức truyền tải siêu văn bản (Hypertext Transfer Protocol) và giao thức truyền tải thư đơn giản (Simple Mail Transfer Protocol). Tuy nhiên, nhu cầu về truyền thông đa phương tiện, nhu cầu liên lạc trực tiếp với mọi người ngày càng cao, dẫn đến sự cần thiết phải có một giao thức để đáp ứng các yêu cầu trên. Và giao thức khởi tạo phiên (Session Initiation Protocol - SIP) đã quyết được vấn đề. 2. Phạm vi và mục tiêu của khóa luận Giao thức SIP xuất hiện vào cuối những năm 1990 và nhanh chóng phát triển. SIP được cài đặt trong các phần cứng, ứng dụng, điện thoại thông minh và các dịch vụ trực tuyến. Tuy nhiên, SIP không phải là giải pháp cho mọi vấn đề giao tiếp truyền thông. Cho nên để có thể triển khai, cài đặt mạng lưới dùng SIP trước tiên cần hiểu được bản chất của giao thức. Khóa luận tập trung vào tìm hiểu và phân tích giao thức SIP để làm rõ các khái niệm nền tảng, hoạt động, nguyên lý và chức năng của SIP. Ngoài ra, khóa luận còn đề cập đến một vài giao thức thường được sử dụng cùng với giao thức SIP. Trên cơ sở nhận thức được bản chất, hoạt động của giao thức, chúng em sẽ xây dựng ứng dụng lớp học từ xa có cài đặt giao thức SIP để nắm vững và hiểu rõ hơn các vấn đề của giao thức. 3. Nội dung khóa luận Khóa luận gồm 4 phần: - Phần I: Tổng quan. Giới thiệu về đề tài, phạm vi và mục tiêu của khóa luận. - Phần II: Cơ sở lý thuyết. Tìm hiểu các vấn đề của giao thức SIP và một số giao thức liên quan. Phần này gồm 6 chương: o Chương 1: Tổng quan SIP. Giới thiệu về khái niệm, các thực thể và chức năng của giao thức SIP. o Chương 2: Phương thức hoạt động. Chương này đi sâu vào tìm hiểu các thông điệp, các header và phân tích một số kịch bản để hiểu rõ hoạt động của giao thức. 12 o Chương 3: Cấu trúc. Phân tích mô hình của giao thức SIP, các lớp trong mô hình của giao thức. o Chương 4: Session Description Protocol. Giới thiệu về giao thức mô tả phiên. o Chương 5: JAIN SIP API. Giới thiệu tổng quan về giao diện lập trình ứng dụng JAIN SIP. o Chương 6: Java Media Framework API. Giới thiệu về giao diện lập trình ứng dụng JMF, được dùng để xây dựng các chức năng đa phương tiện. - Phần III: Thiết kế, xây dựng hệ thống ứng dụng lớp học từ xa. - Phần IV: Tổng kết. Tổng kết, đánh giá và đề nghị các hướng nghiên cứu, phát triển trong tương lai. 13 PHẦN II: CƠ SỞ LÝ THUYẾT 14 CHƯƠNG 1: TỔNG QUAN VỀ SIP 1. Khái niệm SIP 1.1. SIP Giao thức khởi tạo phiên - Session Initiation Protocol (SIP) là giao thức báo hiệu (signaling protocol) được định nghĩa bởi IETF (Internet Engineering Task Force) và đặc tả trong [8]. SIP được sử dụng rộng rãi để thiết lập và điều khiển các phiên truyền qua giao thức Internet (IP). Một phiên truyền thông là sự trao đổi dữ liệu giữa các bên tham gia phiên truyền thông [8]. SIP có thể được sử dụng để tạo, sửa đổi và kết thúc các phiên truyền thông đơn bá (unicast) hoặc quảng bá (multicast) tương ứng với cuộc gọi điểm tới điểm và cuộc gọi đa điểm. SIP là giao thức lớp ứng dụng được thiết kế để làm việc độc lập với tầng transport bên dưới nên nó có thể chạy trên các giao thức TCP, UDP, hoặc SCTP. SIP là giao thức dạng chữ và sử dụng nhiều thành phần tương tự như trong giao thức HTTP và SMTP. SIP được dùng trong giao tiếp ngang hàng (peer-to-peer) tuy nhiên SIP sử dụng mô hình client-server tương tự giao thức HTTP. SIP client tạo và gửi các yêu cầu đến SIP server. SIP server tạo và gửi các trả lời tương ứng cho client. Giao thức báo hiệu không phải là giao thức truyền tải nội dung truyền thông nên SIP được dùng kết hợp với một số giao thức lớp ứng dụng khác để cung cấp các dịch vụ khác nhau như: Real-time Transport Protocol (RTP), Real-Time Streaming Protocol (RTSP), Media Gateway Control Protocol (MEGACO), và Session Description Protocol (SDP), v.v... Tuy nhiên chức năng và hoạt động cơ bản của SIP không phụ thuộc vào các giao thức trên [8]. 1.2. Tại sao dùng SIP? Trong thực tế đã có một giao thức có chức năng khởi tạo phiên tương tự giao thức SIP và được phổ biến khá rộng rãi là giao thức H.323. H.323 nổi bật về chức năng thoại qua mạng (VOIP) và hội nghị video. Tuy nhiên, SIP vẫn có những ưu điểm vượt trội so với H.323 và 15 các ứng dụng đang dần chuyển sang sử dụng SIP. Bảng 1.1 so sánh giữa giao thức SIP và H323. SIP H.323 Phát triển bởi IETF Phát triển bởi ITU Tính đơn giản và mở Phức tạp và cứng nhắc Sử dụng các đối tượng mạng có sẵn như URL, Tự đặc tả tất cả các đối tượng nó sử dụng kể cả MIME, DNS, v.v… bộ codec cho media và việc truyền gói RTP. Định dạng chữ đọc được Định dạng chuỗi nhị phân Độ trễ nhỏ Độ trễ có thể đến 7-8 giây CPU xử lý thông điệp nhẹ hơn CPU xử lý nhiều Xử lý nhiều phiên hơn Xử lý ít phiên hơn Hỗ trợ điều khiển bên thứ 3 (Third-party Không hỗ trợ Control) Thuật toán chống lặp hiệu quả hơn Thuật toán chống lặp đơn giản trong phiên bản 3. Phiên bản 1 và 2 không hỗ trợ. Bảng 1.1: So sánh giữa SIP và H.323 1.3. Địa chỉ SIP: Trong kiến trúc SIP, user thường được xác định bằng cách sử dụng một địa chỉ SIP gọi là SIP URI (Universal Resource Identifier). SIP URI xác định các nguồn tài nguyên truyền thông. Ví dụ: sip:[email protected] Một SIP URI bắt đầu bằng cụm “sip:” hoặc “sips:” và theo sau là 2 thành phần được ngăn cách bởi dấu ‘@’. Phần trước dấu ‘@’, là phần người sử dụng tùy chọn, trong đó xác định tài nguyên nào đó tại máy chủ đang làm việc. Phần còn lại là phần host và port, xác định nguồn cung cấp tài nguyên. Có thể là một tên miền đầy đủ (FQDN) hoặc một địa chỉ IP và 16 port. Ngoài ra, SIP URI có thể chứa một số tham số có ảnh hưởng đến các yêu cầu. Các tham số được thêm vào sau phần host và port, và được ngăn cách bởi dấu chấm phẩy. Cụ thể một SIP URI có cấu trúc như sau: sip:user:password@host:port;uri-parameters?headers Phần thông tin user và password có thể trống khi host đích không có user hoặc chính host đó là tài nguyên được xác định và khi đó cũng không có dâu “@”. Password là mật khẩu của user tương ứng. Tuy nhiên, không nên sử dụng mật khẩu trong SIP URI bởi vì password sẽ xuất hiện dưới dạng văn bản đọc được do đó sẽ là một lỗ hổng bảo mật [8]. Headers là các header gửi kèm theo yêu cầu. Được phân cách với phần host và port bằng dấu “?” SIP có thể sử dụng các URI khác để xác định tài nguyên là một đặc điểm mạnh mẽ của SIP bởi vì nó sẽ cho phép kết hợp các dịch vụ Internet khác như email hay web, với các dịch vụ truyền thông SIP. 2. Chức năng: Như đã nói, SIP là giao thức truyền tín hiệu và chức năng của SIP tập trung vào hai khía cạnh: Một là, các vấn đề về điều khiển phiên như khởi tạo, hiệu chỉnh và kết thúc phiên. Hai là, vấn đề về xác định vị trí của người dùng. 2.1. Khởi tạo, hiệu chỉnh và kết thúc phiên: Như tên gọi của giao thức – Giao thức khởi tạo phiên – chức năng chính của giao thức là khởi tạo các phiên truyền thông đa phương tiện. Người dùng có thể gửi yêu cầu mời tham gia phiên truyền thông và ngược lại nhận lời mời bằng cách gửi trả lời chấp nhận. SIP còn được sử dụng để hiệu chỉnh, thay đổi các tham số của phiên đang hoạt động. ví dụ, để thêm một thành phần media mới vào trong phiên. Cuối cùng là kết thúc phiên. Người dùng gửi yêu cầu kết thúc phiên và xác nhận kết thúc phiên bằng trả lời chấp nhận. 2.2. Xác định vị trí của người dùng: Trong mạng IP, các gói tin được định tuyến nhờ vào địa chỉ IP. Tuy nhiên, người sử dụng SIP không biết địa chỉ IP của đối phương mà chỉ biết địa chỉ public dưới dạng SIP URI “luận lý”. Người sử dụng SIP có thể dùng ứng dụng SIP trên nhiều loại thiết bị khác nhau như PC, laptop , hoặc điện thoại di động,… Mỗi thiết bị có một địa chỉ IP khác nhau. 17 Do đó, cần có một hệ thống có thể lần theo địa chỉ IP của người dùng, ánh xạ nó vào địa chỉ public, và lưu trữ thông tin đó vào một bảng. Trong quá trình thiết lập phiên, cần truy vấn đến bảng thông tin đó để lấy địa chỉ IP đúng để gửi các gói tin đến. Với mục đích đó, SIP định nghĩa một thủ tục gọi là thủ tục đăng kí. Mỗi đầu cuối muốn nhận các cuộc gọi đa phương tiện phải đăng kí trước. Nghĩa là, nó phải gửi địa chỉ IP hiện thời và địa chỉ public đến SIP server (còn gọi là Registrar) của nó và server này sẽ cập nhật địa chỉ vào bảng cơ sở dữ liệu. 3. Các thực thể: SIP network bao gồm bốn loại thực thể SIP luận lí. Mỗi thực thể có các chức năng cụ thể và tham gia vào phiên truyền thông SIP như một client (gởi yêu cầu), một server (đáp ứng yêu cầu), hoặc vừa là client vừa là server. Một thiết bị vật lý có thể có một hoặc nhiều chức năng của thực thể SIP. Ví dụ, một server làm việc như một proxy server cũng có thể có chức năng như một Registrar. Các thực thể đó là: − User Agent (UA) − Registrar − Proxy − Back-to-Back User Agents (B2BUA) 3.1. User Agent: Trong SIP, User Agent (UA) là thực thể đầu cuối. UA tạo và hủy các phiên làm việc bằng cách trao đổi yêu cầu và trà lời. Một SIP UA có hai thành phần: một User Agent Client (UAC) và một User Agent Server (UAS). UAC có trách nhiệm tạo yêu cầu SIP và nhận các trả lời tương ứng. UAS có trách nhiệm nhận yêu cầu và tạo ra các trả lời thích hợp. 18 Hình 1.1: User Agent 3.2. Registrar: Registar là server nhận yêu cầu đăng ký từ các UA. SIP UA gửi vị trí hiện tại của mình cùng với địa chỉ public đến registrar server. Một UA phải được đăng ký trước khi nó có thể nhận cuộc gọi đa phương tiện. Khi Registar nhận yêu cầu đăng ký và lưu các thông tin nhận được vào cơ sở dữ liệu được gọi là Location Service. Location Service: − Location Service không phải là một thực thể SIP. Location Service là một cơ sở dữ liệu chứa danh sách các ánh xạ giữa Address of Record (AORs), thể hiện địa chỉ SIP public và Contact Address (Đại diện cho vị trí user). Cả AORs và Contact Address được thể hiện dưới dạng SIP URI. Khi registrar nhận được yêu cầu đăng ký từ một UA, nó cập nhật Location Service với các thông tin nhận được. − Location Service này cũng được truy vấn bởi các proxy server của một miền để có được thông tin về các địa chỉ có thể có của người sử dụng. − Trong nhiều hiện thức cài đặt, Location Service và SIP server được đặt trên cùng một hệ thống. 19 Hình 1.2: Hoạt động của Registrar và Location Service 3.3. Proxy: Proxy là một thực thể trung gian vừa hoạt động như client vừa hoạt động như server. Nó chủ yếu đóng vai trò như một router, công việc của nó là gửi các yêu cầu đến đích hoặc đến các proxy khác gần đích hơn. Proxy cũng làm nhiệm vụ áp đặt chính sách (Ví dụ, cho phép ai được thực hiện cuộc gọi). Proxy thông dịch và thay đổi một số phần của yêu cầu trước khi forward nếu cần thiết. Có thể có nhiều Proxy giữa UAC và UAS để định tuyến các thông điệp SIP. Phân loại theo chức năng thì có hai loại SIP Proxy là outbound proxy và inbound proxy: − Outbound Proxy: giúp các UA định tuyến các yêu cầu đi ra. Các UA thường được cấu hình để định tuyến tất cả các yêu cầu đến outbound proxy. − Inbound Proxy: là một proxy server xử lý các yêu cầu đi vào miền mà nó quản lý. Cơ bản là nó giúp định tuyến các yêu cầu vào nó đến các UA tương ứng trong miền. Khi một inbound proxy nhận một yêu cầu đến user nằm trong miền nó quản lý, proxy sẽ truy vấn Location Service, lấy địa chỉ của UA đó và forward yêu cầu đến địa chỉ đó. 20
- Xem thêm -

Tài liệu liên quan